]> git.ipfire.org Git - thirdparty/gcc.git/blame - libgomp/ChangeLog
RISC-V: Bugfix for RVV integer reduction in ZVE32/64.
[thirdparty/gcc.git] / libgomp / ChangeLog
CommitLineData
7ff79341
GA
12023-06-15 Tobias Burnus <tobias@codesourcery.com>
2
3 * env.c (gomp_def_allocator_envvar): New var.
4 (parse_allocator): Handle OpenMP 5.1 syntax.
5 (cleanup_env): New.
6 (omp_display_env): Output gomp_def_allocator_envvar
7 for an allocator with traits.
8 * libgomp.texi (OMP_ALLOCATOR, OMP_AFFINITY_FORMAT,
9 OMP_DISPLAY_AFFINITY): New.
10 * testsuite/libgomp.c/allocator-1.c: New test.
11 * testsuite/libgomp.c/allocator-2.c: New test.
12 * testsuite/libgomp.c/allocator-3.c: New test.
13 * testsuite/libgomp.c/allocator-4.c: New test.
14 * testsuite/libgomp.c/allocator-5.c: New test.
15 * testsuite/libgomp.c/allocator-6.c: New test.
16
c1c5edef
GA
172023-06-14 Thomas Schwinge <thomas@codesourcery.com>
18
19 * target.c (resolve_device): Align a
20 'OMP_TARGET_OFFLOAD=mandatory' diagnostic with others.
21 * testsuite/libgomp.c/target-51.c: Adjust.
22
232023-06-14 Thomas Schwinge <thomas@codesourcery.com>
24
25 * testsuite/libgomp.fortran/fortran.exp (lang_link_flags): Don't
26 set.
27 * testsuite/libgomp.oacc-fortran/fortran.exp (lang_link_flags):
28 Likewise.
29 * testsuite/libgomp.c/simd-math-1.c: Remove
30 '-foffload-options=-lm'.
31 * testsuite/libgomp.fortran/fortran-torture_execute_math.f90:
32 Likewise.
33 * testsuite/libgomp.oacc-fortran/fortran-torture_execute_math.f90:
34 Likewise.
35
362023-06-14 Thomas Schwinge <thomas@codesourcery.com>
37
38 * testsuite/libgomp.fortran/fortran-torture_execute_math.f90: New.
39 * testsuite/libgomp.oacc-fortran/fortran-torture_execute_math.f90:
40 Likewise.
41
422023-06-14 Thomas Schwinge <thomas@codesourcery.com>
43
44 * testsuite/libgomp.c/target-51.c: Fix typo.
45
462023-06-14 Tobias Burnus <tobias@codesourcery.com>
47
48 * env.c (gomp_default_icv_values): Init default_device_var to
49 an nonconforming value - INT_MIN.
50 (initialize_env): After env-var parsing, set default_device_var to
51 device 0 unless OMP_TARGET_OFFLOAD=mandatory.
52 (omp_display_env): If default_device_var is INT_MIN, call
53 gomp_init_targets_once.
54 * icv-device.c (omp_get_default_device): Likewise.
55 * libgomp.texi (OMP_DEFAULT_DEVICE): Update init description.
56 (OpenMP 5.2 Impl. Status): Mark OMP_TARGET_OFFLOAD=mandatory as 'Y'.
57 * target.c (resolve_device): Improve error message device-num < 0
58 with 'mandatory' and no no-host devices available.
59 (gomp_target_init): Set default-device-var if INT_MIN.
60 * testsuite/libgomp.c/target-48.c: New test.
61 * testsuite/libgomp.c/target-49.c: New test.
62 * testsuite/libgomp.c/target-50.c: New test.
63 * testsuite/libgomp.c/target-50a.c: New test.
64 * testsuite/libgomp.c/target-51.c: New test.
65 * testsuite/libgomp.c/target-52.c: New test.
66 * testsuite/libgomp.c/target-53.c: New test.
67 * testsuite/libgomp.c/target-54.c: New test.
68
532fb120
GA
692023-06-13 Tobias Burnus <tobias@codesourcery.com>
70
71 PR libgomp/109837
72 * testsuite/libgomp.c-c++-common/requires-unified-addr-1.c: New test.
73 * testsuite/libgomp.fortran/requires-unified-addr-1.f90: New test.
74
9d250bdb
GA
752023-06-12 Tobias Burnus <tobias@codesourcery.com>
76
77 * target.c (gomp_to_device_kind_p, gomp_map_vars_internal): Replace
78 GOMP_MAP_PRESENT_{FROM,TO,TOFROM,ACLLOC} by GOMP_MAP_FORCE_PRESENT.
79 (gomp_map_vars_internal, gomp_update): Likewise; unify and improve
80 error message.
81 * testsuite/libgomp.c-c++-common/target-present-2.c: Update for
82 changed error message.
83 * testsuite/libgomp.fortran/target-present-1.f90: Likewise.
84 * testsuite/libgomp.fortran/target-present-2.f90: Likewise.
85 * testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise.
86 * testsuite/libgomp.c-c++-common/target-present-1.c: Likewise and
87 extend testcase to check that data is copied when needed.
88 * testsuite/libgomp.c-c++-common/target-present-3.c: Likewise.
89 * testsuite/libgomp.fortran/target-present-3.f90: Likewise.
90
8c5b1365
GA
912023-06-07 Thomas Schwinge <thomas@codesourcery.com>
92 Tobias Burnus <tobias@codesourcery.com>
93
94 * testsuite/libgomp.c-c++-common/target-present-1.c: Run code
95 also for non-offload_device targets; check that it runs
96 successfully for those and for all until a checkpoint for all
97 * testsuite/libgomp.c-c++-common/target-present-2.c: Likewise.
98 * testsuite/libgomp.c-c++-common/target-present-3.c: Likewise.
99 * testsuite/libgomp.fortran/target-present-1.f90: Likewise.
100 * testsuite/libgomp.fortran/target-present-3.f90: Likewise.
101 * testsuite/libgomp.fortran/target-present-2.f90: Likewise;
102 add missing vars to map clause.
103
4f0d4825
GA
1042023-06-06 Tobias Burnus <tobias@codesourcery.com>
105
106 * plugin/plugin-gcn.c (GOMP_OFFLOAD_get_num_devices): Regard
107 unified_address requirement as supported.
108 * libgomp.texi (OpenMP 5.0, AMD Radeon, nvptx): Remove
109 'unified_address' from the not-supported requirements.
110
1112023-06-06 Kwok Cheung Yeung <kcy@codesourcery.com>
112 Tobias Burnus <tobias@codesourcery.com>
113
114 * libgomp.texi (OpenMP 5.1 Impl. status): Set 'present' support for
115 defaultmap to 'Y', add 'Y' entry for 'present' on to/from/map clauses.
116 * target.c (gomp_to_device_kind_p): Add map kinds with 'present'
117 modifier.
118 (gomp_map_vars_existing): Use new GOMP_MAP_FORCE_P macro.
119 (gomp_map_vars_internal, gomp_update, gomp_target_rev):
120 Emit runtime error if memory region not present.
121 * testsuite/libgomp.c-c++-common/target-present-1.c: New test.
122 * testsuite/libgomp.c-c++-common/target-present-2.c: New test.
123 * testsuite/libgomp.c-c++-common/target-present-3.c: New test.
124 * testsuite/libgomp.fortran/target-present-1.f90: New test.
125 * testsuite/libgomp.fortran/target-present-2.f90: New test.
126 * testsuite/libgomp.fortran/target-present-3.f90: New test.
127
829d5975
GA
1282023-06-02 Thomas Schwinge <thomas@codesourcery.com>
129
130 PR testsuite/66005
131 * testsuite/lib/libgomp.exp: 'flock' through stdout.
132 * testsuite/flock: New.
133 * configure.ac (FLOCK): Point to that if no 'flock' available, but
134 'perl' is.
135 * configure: Regenerate.
136
1372023-06-02 Thomas Schwinge <thomas@codesourcery.com>
138
139 * configure.ac (PERL): Remove.
140 * configure: Regenerate.
141 * Makefile.in: Likewise.
142 * testsuite/Makefile.in: Likewise.
143
84749914
GA
1442023-06-01 Tobias Burnus <tobias@codesourcery.com>
145
146 * libgomp.texi (OpenMP 5.2): Mark pure-directive handling as 'Y'.
147
6e6bb373
GA
1482023-05-26 Tobias Burnus <tobias@codesourcery.com>
149
150 * testsuite/libgomp.fortran/allocate-4.f90: Update dg-error.
151
4579954f
GA
1522023-05-21 Tobias Burnus <tobias@codesourcery.com>
153
154 PR libgomp/109875
155 * config/gcn/target.c (GOMP_teams4): Honor nteams-var ICV.
156 * config/nvptx/target.c (GOMP_teams4): Likewise.
157 * testsuite/libgomp.c-c++-common/teams-nteams-icv-1.c: New test.
158 * testsuite/libgomp.c-c++-common/teams-nteams-icv-2.c: New test.
159 * testsuite/libgomp.c-c++-common/teams-nteams-icv-3.c: New test.
160 * testsuite/libgomp.c-c++-common/teams-nteams-icv-4.c: New test.
161
5df01f89
GA
1622023-05-19 Jakub Jelinek <jakub@redhat.com>
163
164 PR libgomp/109904
165 * configure.ac (link_gomp): Include also $DL_LIBS.
166 * configure: Regenerated.
167
ff2dcddf
GA
1682023-05-17 Tobias Burnus <tobias@codesourcery.com>
169
170 * testsuite/libgomp.fortran/target-enter-data-3.f90: Uncomment
171 'target exit data'.
172 * testsuite/libgomp.fortran/target-enter-data-4.f90: New test.
173 * testsuite/libgomp.fortran/target-enter-data-5.f90: New test.
174 * testsuite/libgomp.fortran/target-enter-data-6.f90: New test.
175 * testsuite/libgomp.fortran/target-enter-data-7.f90: New test.
176
3427b51b
GA
1772023-05-15 Thomas Schwinge <thomas@codesourcery.com>
178
179 PR testsuite/66005
180 * configure.ac: Look for 'flock'.
181 * testsuite/Makefile.am (gcc_test_parallel_slots): Enable parallel testing.
182 * testsuite/config/default.exp: Don't 'load_lib "standard.exp"' here...
183 * testsuite/lib/libgomp.exp: ... but here, instead.
184 (libgomp_load): Override for parallel testing.
185 * testsuite/libgomp-site-extra.exp.in (FLOCK): Set.
186 * configure: Regenerate.
187 * Makefile.in: Regenerate.
188 * testsuite/Makefile.in: Regenerate.
189
1902023-05-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
191 Thomas Schwinge <thomas@codesourcery.com>
192
193 PR testsuite/66005
194 * testsuite/Makefile.am (PWD_COMMAND): New variable.
195 (%/site.exp): New target.
196 (check_p_numbers0, check_p_numbers1, check_p_numbers2)
197 (check_p_numbers3, check_p_numbers4, check_p_numbers5)
198 (check_p_numbers6, check_p_numbers, gcc_test_parallel_slots)
199 (check_p_subdirs)
200 (check_DEJAGNU_libgomp_targets): New variables.
201 ($(check_DEJAGNU_libgomp_targets)): New target.
202 ($(check_DEJAGNU_libgomp_targets)): New dependency.
203 (check-DEJAGNU $(check_DEJAGNU_libgomp_targets)): New targets.
204 * testsuite/Makefile.in: Regenerate.
205 * testsuite/lib/libgomp.exp: For parallel testing,
206 'load_file ../libgomp-test-support.exp'.
207
2082023-05-15 Thomas Schwinge <thomas@codesourcery.com>
209
210 PR testsuite/91884
211 * configure.ac: 'AC_SUBST(CXX)'.
212 * configure: Regenerate.
213 * Makefile.in: Likewise.
214 * testsuite/Makefile.in: Likewise.
215 * testsuite/libgomp-site-extra.exp.in (GXX_UNDER_TEST)
216 (GFORTRAN_UNDER_TEST): Set.
217 * testsuite/lib/libgomp.exp (libgomp_init): Adjust.
218 * testsuite/libgomp.c++/c++.exp: Use 'GXX_UNDER_TEST'.
219 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
220 * testsuite/libgomp.fortran/fortran.exp: Use
221 'GFORTRAN_UNDER_TEST'.
222 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
223
2242023-05-15 Thomas Schwinge <thomas@codesourcery.com>
225
226 PR testsuite/91884
227 * testsuite/lib/libgomp.exp (libgomp_target_compile): Don't
228 specify compiler.
229 * testsuite/libgomp.c++/c++.exp (ALWAYS_CFLAGS): Specify compiler.
230 * testsuite/libgomp.c/c.exp (ALWAYS_CFLAGS): Likewise.
231 * testsuite/libgomp.fortran/fortran.exp (ALWAYS_CFLAGS): Likewise.
232 * testsuite/libgomp.graphite/graphite.exp (ALWAYS_CFLAGS):
233 Likewise.
234 * testsuite/libgomp.oacc-c++/c++.exp (ALWAYS_CFLAGS): Likewise.
235 * testsuite/libgomp.oacc-c/c.exp (ALWAYS_CFLAGS): Likewise.
236 * testsuite/libgomp.oacc-fortran/fortran.exp (ALWAYS_CFLAGS):
237 Likewise.
238
20ca33db
GA
2392023-05-12 Tobias Burnus <tobias@codesourcery.com>
240
241 PR libstdc++/109816
242 * testsuite/libgomp.c++/target-map-class-1.C: New test.
243 * testsuite/libgomp.c++/target-map-class-2.C: New test.
244
2452023-05-12 Thomas Schwinge <thomas@codesourcery.com>
246
247 * testsuite/lib/libgomp.exp (libgomp_target_compile): Generalize
248 'lang_library_path' into a list of 'lang_library_paths'.
249 * testsuite/libgomp.c++/c++.exp: Adjust.
250 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
251 * testsuite/libgomp.fortran/fortran.exp: Adjust. Use that for
252 libquadmath, too.
253 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
254
2552023-05-12 Thomas Schwinge <thomas@codesourcery.com>
256
257 * testsuite/lib/libgomp.exp (libgomp_target_compile): Don't look
258 at 'lang_test_file_found'.
259 * testsuite/libgomp.c++/c++.exp: Don't set and use it, and instead
260 'return' early if not able to test. Simplify 'ld_library_path' setup.
261 * testsuite/libgomp.fortran/fortran.exp: Likewise.
262 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
263 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
264
2652023-05-12 Thomas Schwinge <thomas@codesourcery.com>
266
267 * testsuite/libgomp.c++/c++.exp: Resolve 'lang_test_file_found'
268 first.
269 * testsuite/libgomp.fortran/fortran.exp: Likewise.
270 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
271 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
272
2732023-05-12 Thomas Schwinge <thomas@codesourcery.com>
274
275 * testsuite/libgomp.c++/c++.exp: Localize 'lang_[...]' etc.
276 * testsuite/libgomp.c/c.exp: Likewise.
277 * testsuite/libgomp.fortran/fortran.exp: Likewise.
278 * testsuite/libgomp.graphite/graphite.exp: Likewise.
279 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
280 * testsuite/libgomp.oacc-c/c.exp: Likewise.
281 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
282
35e324da
GA
2832023-05-09 Thomas Schwinge <thomas@codesourcery.com>
284
285 * testsuite/libgomp.c++/c++.exp: Don't set 'lang_test_file'.
286 * testsuite/libgomp.fortran/fortran.exp: Likewise.
287 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
288 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
289 * testsuite/libgomp.c/c.exp: Unset 'lang_test_file_found' instead of
290 'lang_test_file'.
291 * testsuite/libgomp.oacc-c/c.exp: Likewise.
292 * testsuite/libgomp.graphite/graphite.exp: Likewise.
293 * testsuite/lib/libgomp.exp (libgomp_target_compile): Look for
294 'lang_test_file_found' instead of 'lang_test_file'.
295
2962023-05-09 Thomas Schwinge <thomas@codesourcery.com>
297
298 * testsuite/lib/libgomp.exp (libgomp_init): Only use 'blddir' if
299 set.
300 * testsuite/libgomp.c++/c++.exp: Likewise.
301 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
302
3032023-05-09 Thomas Schwinge <thomas@codesourcery.com>
304
305 * testsuite/libgomp.c++/c++.exp (blddir): Don't set.
306 * testsuite/libgomp.oacc-c++/c++.exp (blddir): Likewise.
307
212905a4
GA
3082023-05-08 Thomas Schwinge <thomas@codesourcery.com>
309
310 * testsuite/libgomp.c++/c++.exp: Use 'lang_include_flags' instead
311 of 'libstdcxx_includes'.
312 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
313
3142023-05-08 Thomas Schwinge <thomas@codesourcery.com>
315
316 * target.c (gomp_target_rev): Instead of 'dev_to_host_cpy',
317 'host_to_dev_cpy', 'token', take a single 'goacc_asyncqueue'.
318 * libgomp.h (gomp_target_rev): Adjust.
319 * libgomp-plugin.c (GOMP_PLUGIN_target_rev): Adjust.
320 * libgomp-plugin.h (GOMP_PLUGIN_target_rev): Adjust.
321 * plugin/plugin-gcn.c (process_reverse_offload): Adjust.
322 * plugin/plugin-nvptx.c (rev_off_dev_to_host_cpy)
323 (rev_off_host_to_dev_cpy): Remove.
324 (GOMP_OFFLOAD_run): Adjust.
325
fde093b7
GA
3262023-05-04 Julian Brown <julian@codesourcery.com>
327
328 PR fortran/109622
329 * testsuite/libgomp.fortran/pr109622.f90: Move test...
330 * testsuite/libgomp.oacc-fortran/pr109622.f90: ...to here. Ignore
331 vector length warning.
332 * testsuite/libgomp.fortran/pr109622-2.f90: Move test...
333 * testsuite/libgomp.oacc-fortran/pr109622-2.f90: ...to here. Add
334 missing copyin/copyout variable. Ignore vector length warnings.
335 * testsuite/libgomp.fortran/pr109622-3.f90: Move test...
336 * testsuite/libgomp.oacc-fortran/pr109622-3.f90: ...to here. Ignore
337 vector length warnings.
338 * testsuite/libgomp.oacc-fortran/pr109622-4.f90: New test.
339
50205195
GA
3402023-04-28 Julian Brown <julian@codesourcery.com>
341
342 PR fortran/109622
343 * testsuite/libgomp.fortran/pr109622.f90: New test.
344 * testsuite/libgomp.fortran/pr109622-2.f90: New test.
345 * testsuite/libgomp.fortran/pr109622-3.f90: New test.
346
49cea02d
GA
3472023-04-25 Tobias Burnus <tobias@codesourcery.com>
348
349 * testsuite/libgomp.c-c++-common/scan-1.c: New test.
350 * testsuite/libgomp.c/scan-23.c: New test.
351 * testsuite/libgomp.fortran/scan-2.f90: New test.
352
579cdc1e
GA
3532023-03-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
354
355 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-2.c: Add
356 weak_undefined options.
357
13ec81eb
GA
3582023-03-24 Tobias Burnus <tobias@codesourcery.com>
359
360 * libgomp.texi (Offload-Target Specifics): Grammar fix.
361
3622023-03-24 Thomas Schwinge <thomas@codesourcery.com>
363
364 PR fortran/104949
365 * target.c (gomp_map_vars_internal) <GOMP_MAP_FIRSTPRIVATE>: Add
366 caveat/safeguard.
367
c8065441
GA
3682023-03-10 Thomas Schwinge <thomas@codesourcery.com>
369
370 PR libgomp/90596
371 * target.c (gomp_map_vars_internal): Allow for
372 'param_kind == GOMP_MAP_VARS_OPENACC | GOMP_MAP_VARS_TARGET'.
373 * oacc-parallel.c (GOACC_parallel_keyed): Pass
374 'GOMP_MAP_VARS_TARGET' to 'goacc_map_vars'.
375 * plugin/plugin-gcn.c (alloc_by_agent, gcn_exec)
376 (GOMP_OFFLOAD_openacc_exec, GOMP_OFFLOAD_openacc_async_exec):
377 Adjust, simplify.
378 (gomp_offload_free): Remove.
379 * plugin/plugin-nvptx.c (nvptx_exec, GOMP_OFFLOAD_openacc_exec)
380 (GOMP_OFFLOAD_openacc_async_exec): Adjust, simplify.
381 (cuda_free_argmem): Remove.
382 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c:
383 Adjust.
384
3852023-03-10 Thomas Schwinge <thomas@codesourcery.com>
386
387 * target.c (gomp_copy_host2dev, gomp_map_vars_internal): Allow
388 libgomp 'cbuf' buffering with OpenACC 'async' for 'ephemeral'
389 data.
390
3912023-03-10 Thomas Schwinge <thomas@codesourcery.com>
392
393 * target.c (gomp_map_vars_internal): Use 'OFFSET_INLINED' for
394 'GOMP_MAP_IF_PRESENT'.
395 * plugin/plugin-gcn.c (gcn_exec, GOMP_OFFLOAD_openacc_exec)
396 (GOMP_OFFLOAD_openacc_async_exec): Adjust.
397 * plugin/plugin-nvptx.c (nvptx_exec, GOMP_OFFLOAD_openacc_exec)
398 (GOMP_OFFLOAD_openacc_async_exec): Likewise.
399 * testsuite/libgomp.oacc-c-c++-common/no_create-1.c: Add 'async'
400 testing.
401 * testsuite/libgomp.oacc-c-c++-common/no_create-2.c: Likewise.
402
4032023-03-10 Thomas Schwinge <thomas@codesourcery.com>
404
405 * oacc-async.c (goacc_wait): Remove 'acc_async_test' -> skip
406 shortcut.
407
4082023-03-10 Thomas Schwinge <thomas@codesourcery.com>
409
410 * testsuite/libgomp.oacc-c-c++-common/data-3.c: Document/verify
411 another aspect of OpenACC 'async' semantics.
412
4132023-03-10 Thomas Schwinge <thomas@codesourcery.com>
414
415 * plugin/plugin-gcn.c (gcn_exec): Fix 'acc_ev_enqueue_launch_end'
416 position.
417 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c:
418 Verify 'acc_ev_alloc', 'acc_ev_free'.
419
da2b9c6e
GA
4202023-03-09 Hongyu Wang <hongyu.wang@intel.com>
421
422 PR libgomp/109062
423 * env.c (wait_policy): Initialize to -1.
424 (initialize_icvs): Initialize icvs->wait_policy to -1.
425 * testsuite/libgomp.c-c++-common/pr109062.c: New test.
426
6a87fdd3
GA
4272023-03-08 Tobias Burnus <tobias@codesourcery.com>
428
429 * libgomp.texi (Offload-Target Specifics): Mention GCN_STACK_SIZE.
430
14db9ed5
GA
4312023-03-02 Kwok Cheung Yeung <kcy@codesourcery.com>
432 Paul-Antoine Arras <pa@codesourcery.com>
433
434 * testsuite/libgomp.c/simd-math-1.c: New testcase.
435
c88a7c63
GA
4362023-03-01 Tobias Burnus <tobias@codesourcery.com>
437
438 PR middle-end/108546
439 * testsuite/libgomp.fortran/is_device_ptr-3.f90: New test.
440 * testsuite/libgomp.fortran/use_device_ptr-optional-4.f90: New test.
441
b6f98991
GA
4422023-02-22 Thomas Schwinge <thomas@codesourcery.com>
443
444 * testsuite/libgomp.fortran/alloc-10.f90: Use
445 '-Wno-complain-wrong-lang'.
446 * testsuite/libgomp.fortran/alloc-11.f90: Likewise.
447 * testsuite/libgomp.fortran/alloc-7.f90: Likewise.
448 * testsuite/libgomp.fortran/alloc-9.f90: Likewise.
449 * testsuite/libgomp.fortran/allocate-1.f90: Likewise.
450 * testsuite/libgomp.fortran/depend-4.f90: Likewise.
451 * testsuite/libgomp.fortran/depend-5.f90: Likewise.
452 * testsuite/libgomp.fortran/depend-6.f90: Likewise.
453 * testsuite/libgomp.fortran/depend-7.f90: Likewise.
454 * testsuite/libgomp.fortran/depend-inoutset-1.f90: Likewise.
455 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90:
456 Likewise.
457 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90:
458 Likewise.
459 * testsuite/libgomp.fortran/order-reproducible-1.f90: Likewise.
460 * testsuite/libgomp.fortran/order-reproducible-2.f90: Likewise.
461 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
462 * testsuite/libgomp.fortran/task-detach-6.f90: Remove left-over
463 'dg-prune-output'.
464
88cc4495
GA
4652023-02-16 Jakub Jelinek <jakub@redhat.com>
466
467 * libgomp.texi: Fix typos - theads -> threads.
468
4692023-02-16 Jakub Jelinek <jakub@redhat.com>
470
471 * testsuite/libgomp.fortran/target-nowait-array-section.f90: Fix
472 comment typo and improve its wording.
473
29a35391
GA
4742023-02-15 Tobias Burnus <tobias@codesourcery.com>
475
476 * target.c (gomp_target_rev): Dereference ptr
477 to get device address.
478 * testsuite/libgomp.fortran/reverse-offload-5.f90: Add test
479 for unallocated allocatable.
480
4812023-02-15 Tobias Burnus <tobias@codesourcery.com>
482
483 * target.c (gomp_map_vars_internal): Add 'i > 0' before doing a
484 kind check.
485 (GOMP_target_enter_exit_data): If the next map item is
486 GOMP_MAP_ALWAYS_POINTER map it together with the current item.
487 * testsuite/libgomp.fortran/target-enter-data-3.f90: New test.
488
e92e2c96
GA
4892023-02-09 Tobias Burnus <tobias@codesourcery.com>
490
491 PR fortran/107424
492 * testsuite/libgomp.fortran/non-rectangular-loop-1.f90: New test.
493 * testsuite/libgomp.fortran/non-rectangular-loop-1a.f90: New test.
494 * testsuite/libgomp.fortran/non-rectangular-loop-2.f90: New test.
495 * testsuite/libgomp.fortran/non-rectangular-loop-3.f90: New test.
496 * testsuite/libgomp.fortran/non-rectangular-loop-4.f90: New test.
497 * testsuite/libgomp.fortran/non-rectangular-loop-5.f90: New test.
498
8f3b85ef
GA
4992023-02-07 Thomas Schwinge <thomas@codesourcery.com>
500
501 * testsuite/libgomp.fortran/reverse-offload-6.f90: Fix nvptx
502 offloading compilation.
503
49e52115
GA
5042023-02-03 Tobias Burnus <tobias@codesourcery.com>
505
506 * target.c (gomp_target_rev): Handle mapnum == 0 and avoid
507 freeing not allocated memory.
508 * testsuite/libgomp.fortran/reverse-offload-6.f90: New test.
509
5102023-02-03 Tobias Burnus <tobias@codesourcery.com>
511
512 * libgomp.texi (5.0 Impl. Status, gcn specifics): Update for
513 reverse offload.
514 * plugin/plugin-gcn.c (GOMP_OFFLOAD_get_num_devices): Accept
515 reverse-offload requirement.
516
a37a0cb3
GA
5172023-02-02 Andrew Stubbs <ams@codesourcery.com>
518
519 * config/gcn/libgomp-gcn.h (DEFAULT_GCN_STACK_SIZE): New define.
520 (DEFAULT_TEAM_ARENA_SIZE): New define.
521 (struct heap): Move to this file.
522 (struct kernargs_abi): Likewise.
523 * config/gcn/team.c (gomp_gcn_enter_kernel): Use team arena size from
524 the kernargs.
525 * libgomp.h: Include libgomp-gcn.h.
526 (TEAM_ARENA_SIZE): Remove.
527 (team_malloc): Update the error message.
528 * plugin/plugin-gcn.c (struct kernargs): Move common content to
529 struct kernargs_abi.
530 (struct agent_info): Rename team arenas to ephemeral memories.
531 (struct team_arena_list): Rename ....
532 (struct ephemeral_memories_list): to this.
533 (struct heap): Delete.
534 (team_arena_size): New variable.
535 (stack_size): New variable.
536 (print_kernel_dispatch): Update debug messages.
537 (init_environment_variables): Read GCN_TEAM_ARENA_SIZE.
538 Read GCN_STACK_SIZE.
539 (get_team_arena): Rename ...
540 (configure_ephemeral_memories): ... to this, and set up stacks.
541 (release_team_arena): Rename ...
542 (release_ephemeral_memories): ... to this.
543 (destroy_team_arenas): Rename ...
544 (destroy_ephemeral_memories): ... to this.
545 (create_kernel_dispatch): Add num_threads parameter.
546 Adjust for kernargs_abi refactor and ephemeral memories.
547 (release_kernel_dispatch): Adjust for ephemeral memories.
548 (run_kernel): Pass thread-count to create_kernel_dispatch.
549 (GOMP_OFFLOAD_init_device): Adjust for ephemeral memories.
550 (GOMP_OFFLOAD_fini_device): Adjust for ephemeral memories.
551
5522023-02-02 Tobias Burnus <tobias@codesourcery.com>
553
554 * libgomp.texi (OpenMP TR11): Fix item for 'strict' modifier.
555
0a251e74
GA
5562023-02-01 Tobias Burnus <tobias@codesourcery.com>
557
558 * testsuite/libgomp.fortran/allocate-3.f90: Fix ALIGN
559 usage, remove unused -fdump-tree-original.
560 * testsuite/libgomp.fortran/allocate-4.f90: New.
561
5622023-02-01 Tobias Burnus <tobias@codesourcery.com>
563
564 * libgomp.texi (5.0 Impl. Status): Update 'requires' and 'ancestor'.
565 (GCN): Add item about 'omp requires'.
566 (nvptx): Likewise; add item about reverse offload.
567
338eb0f0
GA
5682023-01-27 Tobias Burnus <tobias@codesourcery.com>
569
570 PR fortran/108558
571 * testsuite/libgomp.fortran/has_device_addr.f90: New test.
572
607f278a
GA
5732023-01-23 Tobias Burnus <tobias@codesourcery.com>
574
575 * libgomp.texi (OpenMP 5.0): Set non-rectangular
576 loop nest back to 'P' as Fortran support is incomplete.
577
0846336d
GA
5782023-01-19 Jakub Jelinek <jakub@redhat.com>
579
580 PR middle-end/108459
581 * testsuite/libgomp.c/pr108459.c: New test.
582
8d07b193
GA
5832023-01-17 Martin Liska <mliska@suse.cz>
584
585 * Makefile.in: Regenerate.
586 * configure: Regenerate.
587
d901bf8a
GA
5882023-01-07 LIU Hao <lh_mouse@126.com>
589
590 PR middle-end/108300
591 * config/mingw32/proc.c: Define `WIN32_LEAN_AND_MEAN` before
592 <windows.h>.
593
53ef7c1d
GA
5942023-01-05 Jakub Jelinek <jakub@redhat.com>
595
596 PR c++/108286
597 * testsuite/libgomp.c++/pr108286.C: New test.
598
fee53a31
GA
5992023-01-02 Jakub Jelinek <jakub@redhat.com>
600
601 * libgomp.texi: Bump @copying's copyright year.
602
de282a20
GA
6032022-12-21 Chung-Lin Tang <cltang@codesourcery.com>
604
605 PR target/99555
606 * config/nvptx/bar.c (generation_to_barrier): Remove.
607 (futex_wait,futex_wake,do_spin,do_wait): Remove.
608 (GOMP_WAIT_H): Remove.
609 (#include "../linux/bar.c"): Remove.
610 (gomp_barrier_wait_end): New function.
611 (gomp_barrier_wait): Likewise.
612 (gomp_barrier_wait_last): Likewise.
613 (gomp_team_barrier_wait_end): Likewise.
614 (gomp_team_barrier_wait): Likewise.
615 (gomp_team_barrier_wait_final): Likewise.
616 (gomp_team_barrier_wait_cancel_end): Likewise.
617 (gomp_team_barrier_wait_cancel): Likewise.
618 (gomp_team_barrier_cancel): Likewise.
619 * config/nvptx/bar.h (gomp_barrier_t): Remove waiters, lock fields.
620 (gomp_barrier_init): Remove init of waiters, lock fields.
621 (gomp_team_barrier_wake): Remove prototype, add new static inline
622 function.
623
6242022-12-21 Jakub Jelinek <jakub@redhat.com>
625
626 PR c++/108180
627 * testsuite/libgomp.c++/pr108180.C: New test.
628
5fb1e674
GA
6292022-12-16 Tobias Burnus <tobias@codesourcery.com>
630
631 PR libfortran/108056
632 * testsuite/libgomp.fortran/allocate-4.f90: Remove
633 accidentally added file.
634
c8f767b2
GA
6352022-12-15 Tobias Burnus <tobias@codesourcery.com>
636
637 PR libfortran/108056
638 * testsuite/libgomp.fortran/allocate-4.f90: New file.
639
26f4aefa
GA
6402022-12-14 Julian Brown <julian@codesourcery.com>
641
642 * testsuite/libgomp.fortran/combined-directive-splitting-1.f90: New
643 test.
644
c6b12b80
GA
6452022-12-10 Tobias Burnus <tobias@codesourcery.com>
646
647 * libgomp.h (struct target_mem_desc): Predeclare; move
648 below after 'reverse_splay_tree_node' and add rev_array
649 member.
650 (struct reverse_splay_tree_key_s, reverse_splay_compare): New.
651 (reverse_splay_tree_node, reverse_splay_tree,
652 reverse_splay_tree_key): New typedef.
653 (struct gomp_device_descr): Add mem_map_rev member.
654 * oacc-host.c (host_dispatch): NULL init .mem_map_rev.
655 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_get_num_devices): Claim
656 support for GOMP_REQUIRES_REVERSE_OFFLOAD.
657 * splay-tree.h (splay_tree_callback_stop): New typedef; like
658 splay_tree_callback but returning int not void.
659 (splay_tree_foreach_lazy): Define; like splay_tree_foreach but
660 taking splay_tree_callback_stop as argument.
661 * splay-tree.c (splay_tree_foreach_internal_lazy,
662 splay_tree_foreach_lazy): New; but early exit if callback returns
663 nonzero.
664 * target.c: Instatiate splay_tree_c with splay_tree_prefix 'reverse'.
665 (gomp_map_lookup_rev): New.
666 (gomp_load_image_to_device): Handle reverse-offload function
667 lookup table.
668 (gomp_unload_image_from_device): Free devicep->mem_map_rev.
669 (struct gomp_splay_tree_rev_lookup_data, gomp_splay_tree_rev_lookup,
670 gomp_map_rev_lookup, struct cpy_data, gomp_map_cdata_lookup_int,
671 gomp_map_cdata_lookup): New auxiliary structs and functions for
672 gomp_target_rev.
673 (gomp_target_rev): Implement reverse offloading and its mapping.
674 (gomp_target_init): Init current_device.mem_map_rev.root.
675 * testsuite/libgomp.fortran/reverse-offload-2.f90: New test.
676 * testsuite/libgomp.fortran/reverse-offload-3.f90: New test.
677 * testsuite/libgomp.fortran/reverse-offload-4.f90: New test.
678 * testsuite/libgomp.fortran/reverse-offload-5.f90: New test.
679 * testsuite/libgomp.fortran/reverse-offload-5a.f90: New test without
680 mapping of on-device allocated variables.
681
40ce6485
GA
6822022-12-09 Tobias Burnus <tobias@codesourcery.com>
683
684 * libgomp.texi (5.1 Impl. Status): Split allocate clause/directive
685 item about 'align'; mark clause as 'Y' and directive as 'N'.
686 * testsuite/libgomp.fortran/allocate-2.f90: New test.
687 * testsuite/libgomp.fortran/allocate-3.f90: New test.
688
3fe66f7f
GA
6892022-12-06 Marcel Vollweiler <marcel@codesourcery.com>
690
691 * config/gcn/icv-device.c (omp_get_teams_thread_limit): Added to
692 allow processing of device-specific values.
693 (omp_set_teams_thread_limit): Likewise.
694 (ialias): Likewise.
695 * config/nvptx/icv-device.c (omp_get_teams_thread_limit): Likewise.
696 (omp_set_teams_thread_limit): Likewise.
697 (ialias): Likewise.
698 * icv-device.c (omp_get_teams_thread_limit): Likewise.
699 (ialias): Likewise.
700 (omp_set_teams_thread_limit): Likewise.
701 * icv.c (omp_set_teams_thread_limit): Removed.
702 (omp_get_teams_thread_limit): Likewise.
703 (ialias): Likewise.
704 * libgomp.texi: Updated documentation for nvptx and gcn corresponding
705 to the limitation of the number of teams.
706 * plugin/plugin-gcn.c (limit_teams): New helper function that limits
707 the number of teams by twice the number of compute units.
708 (parse_target_attributes): Limit the number of teams on gcn offload
709 devices.
710 * target.c (get_gomp_offload_icvs): Added teams_thread_limit_var
711 handling.
712 (gomp_load_image_to_device): Added a size check for the ICVs struct
713 variable.
714 (gomp_copy_back_icvs): New function that is used in GOMP_target_ext to
715 copy back the ICV values from device to host.
716 (GOMP_target_ext): Update the number of teams and threads in the kernel
717 args also considering device-specific values.
718 * testsuite/libgomp.c-c++-common/icv-4.c: Fixed an error in the reading
719 of OMP_TEAMS_THREAD_LIMIT from the environment.
720 * testsuite/libgomp.c-c++-common/icv-5.c: Extended.
721 * testsuite/libgomp.c-c++-common/icv-6.c: Extended.
722 * testsuite/libgomp.c-c++-common/icv-7.c: Extended.
723 * testsuite/libgomp.c-c++-common/icv-9.c: New test.
724 * testsuite/libgomp.fortran/icv-5.f90: New test.
725 * testsuite/libgomp.fortran/icv-6.f90: New test.
726
7272022-12-06 Tobias Burnus <tobias@codesourcery.com>
728
729 * libgomp.texi (OpenMP 5.2): Add missing 'the'.
730 (TR11): Add missing '@tab N @tab'.
731
6eea85a9
GA
7322022-11-30 Tobias Burnus <tobias@codesourcery.com>
733
734 * libgomp.texi (OpenMP Context Selectors): Add 'gfx803' to gcn's isa.
735
7362022-11-30 Paul-Antoine Arras <pa@codesourcery.com>
737
738 * testsuite/libgomp.c/declare-variant-4-fiji.c: New test.
739 * testsuite/libgomp.c/declare-variant-4-gfx803.c: New test.
740 * testsuite/libgomp.c/declare-variant-4-gfx900.c: New test.
741 * testsuite/libgomp.c/declare-variant-4-gfx906.c: New test.
742 * testsuite/libgomp.c/declare-variant-4-gfx908.c: New test.
743 * testsuite/libgomp.c/declare-variant-4-gfx90a.c: New test.
744 * testsuite/libgomp.c/declare-variant-4.h: New header file.
745
b7748535
GA
7462022-11-28 Tobias Burnus <tobias@codesourcery.com>
747
748 * libgomp.texi (OpenMP 5.2): Mark end-directive as Y.
749
d769c504
GA
7502022-11-25 Sandra Loosemore <sandra@codesourcery.com>
751
752 * testsuite/lib/libgomp.exp: Load scanoffloadipa.exp library.
753 * testsuite/libgomp.c/target-simd-clone-1.c: New.
754 * testsuite/libgomp.c/target-simd-clone-2.c: New.
755 * testsuite/libgomp.c/target-simd-clone-3.c: New.
756
7572022-11-25 Tobias Burnus <tobias@codesourcery.com>
758
759 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_load_image): Use unsigned int
760 for 'i' to match 'fn_entries'; regard absent GOMP_REV_OFFLOAD_VAR
761 as valid and the code having no reverse-offload code.
762 * testsuite/libgomp.c-c++-common/reverse-offload-2.c: New test.
763
7642022-11-25 Tobias Burnus <tobias@codesourcery.com>
765
766 * libgomp.texi (OpenMP Implementation Status): Add three 5.1 items
767 and status for Technical Report (TR) 11.
768
8b7fee1d
GA
7692022-11-21 Tobias Burnus <tobias@codesourcery.com>
770
771 * config/gcn/libgomp-gcn.h (struct output):
772 Remove 'msg_u64' from the union, change
773 value_u64[2] to value_u64[6].
774 * config/gcn/target.c (GOMP_target_ext): Update accordingly.
775 * plugin/plugin-gcn.c (process_reverse_offload, console_output):
776 Likewise.
777
fb98ede8
GA
7782022-11-19 Tobias Burnus <tobias@codesourcery.com>
779
780 * config/gcn/libgomp-gcn.h: New file; contains
781 struct output, declared previously in plugin-gcn.c.
782 * config/gcn/target.c: Include it.
783 (GOMP_ADDITIONAL_ICVS): Declare as extern var.
784 (GOMP_target_ext): Handle reverse offload.
785 * plugin/plugin-gcn.c: Include libgomp-gcn.h.
786 (struct kernargs): Replace struct def by the one
787 from libgomp-gcn.h for output_data.
788 (process_reverse_offload): New.
789 (console_output): Call it.
790
80909529
GA
7912022-11-16 Tobias Burnus <tobias@codesourcery.com>
792 Andrew Stubbs <ams@codesourcery.com>
793
794 * config/gcn/team.c (gomp_gcn_enter_kernel): Use
795 __builtin_gcn_kernarg_ptr instead of asm ("s8").
796
83d400bd
GA
7972022-11-14 Martin Liska <mliska@suse.cz>
798
799 Revert:
800 2022-11-14 Martin Liska <mliska@suse.cz>
801
802 * doc/amd-radeon-gcn.rst: New file.
803 * doc/conf.py: New file.
804 * doc/copyright.rst: New file.
805 * doc/cuda-streams-usage.rst: New file.
806 * doc/enabling-openacc.rst: New file.
807 * doc/enabling-openmp.rst: New file.
808 * doc/first-invocation-nvidia-cublas-library-api.rst: New file.
809 * doc/first-invocation-openacc-library-api.rst: New file.
810 * doc/funding.rst: New file.
811 * doc/general-public-license-3.rst: New file.
812 * doc/gnu-free-documentation-license.rst: New file.
813 * doc/implementation-status-and-implementation-defined-behavior.rst: New file.
814 * doc/index.rst: New file.
815 * doc/indices-and-tables.rst: New file.
816 * doc/introduction.rst: New file.
817 * doc/memory-allocation-with-libmemkind.rst: New file.
818 * doc/nvptx.rst: New file.
819 * doc/offload-target-specifics.rst: New file.
820 * doc/openacc-environment-variables.rst: New file.
821 * doc/openacc-environment-variables/accdevicenum.rst: New file.
822 * doc/openacc-environment-variables/accdevicetype.rst: New file.
823 * doc/openacc-environment-variables/accproflib.rst: New file.
824 * doc/openacc-environment-variables/gccaccnotify.rst: New file.
825 * doc/openacc-introduction.rst: New file.
826 * doc/openacc-library-and-environment-variables.rst: New file.
827 * doc/openacc-library-interoperability.rst: New file.
828 * doc/openacc-profiling-interface.rst: New file.
829 * doc/openacc-runtime-library-routines.rst: New file.
830 * doc/openacc-runtime-library-routines/accasynctest.rst: New file.
831 * doc/openacc-runtime-library-routines/accasynctestall.rst: New file.
832 * doc/openacc-runtime-library-routines/accattach.rst: New file.
833 * doc/openacc-runtime-library-routines/acccopyin.rst: New file.
834 * doc/openacc-runtime-library-routines/acccopyout.rst: New file.
835 * doc/openacc-runtime-library-routines/acccreate.rst: New file.
836 * doc/openacc-runtime-library-routines/accdelete.rst: New file.
837 * doc/openacc-runtime-library-routines/accdetach.rst: New file.
838 * doc/openacc-runtime-library-routines/accdeviceptr.rst: New file.
839 * doc/openacc-runtime-library-routines/accfree.rst: New file.
840 * doc/openacc-runtime-library-routines/accgetcudastream.rst: New file.
841 * doc/openacc-runtime-library-routines/accgetcurrentcudacontext.rst: New file.
842 * doc/openacc-runtime-library-routines/accgetcurrentcudadevice.rst: New file.
843 * doc/openacc-runtime-library-routines/accgetdevicenum.rst: New file.
844 * doc/openacc-runtime-library-routines/accgetdevicetype.rst: New file.
845 * doc/openacc-runtime-library-routines/accgetnumdevices.rst: New file.
846 * doc/openacc-runtime-library-routines/accgetproperty.rst: New file.
847 * doc/openacc-runtime-library-routines/acchostptr.rst: New file.
848 * doc/openacc-runtime-library-routines/accinit.rst: New file.
849 * doc/openacc-runtime-library-routines/accispresent.rst: New file.
850 * doc/openacc-runtime-library-routines/accmalloc.rst: New file.
851 * doc/openacc-runtime-library-routines/accmapdata.rst: New file.
852 * doc/openacc-runtime-library-routines/accmemcpyfromdevice.rst: New file.
853 * doc/openacc-runtime-library-routines/accmemcpytodevice.rst: New file.
854 * doc/openacc-runtime-library-routines/accondevice.rst: New file.
855 * doc/openacc-runtime-library-routines/accpresentorcopyin.rst: New file.
856 * doc/openacc-runtime-library-routines/accpresentorcreate.rst: New file.
857 * doc/openacc-runtime-library-routines/accproflookup.rst: New file.
858 * doc/openacc-runtime-library-routines/accprofregister.rst: New file.
859 * doc/openacc-runtime-library-routines/accprofunregister.rst: New file.
860 * doc/openacc-runtime-library-routines/accregisterlibrary.rst: New file.
861 * doc/openacc-runtime-library-routines/accsetcudastream.rst: New file.
862 * doc/openacc-runtime-library-routines/accsetdevicenum.rst: New file.
863 * doc/openacc-runtime-library-routines/accsetdevicetype.rst: New file.
864 * doc/openacc-runtime-library-routines/accshutdown.rst: New file.
865 * doc/openacc-runtime-library-routines/accunmapdata.rst: New file.
866 * doc/openacc-runtime-library-routines/accupdatedevice.rst: New file.
867 * doc/openacc-runtime-library-routines/accupdateself.rst: New file.
868 * doc/openacc-runtime-library-routines/accwait.rst: New file.
869 * doc/openacc-runtime-library-routines/accwaitall.rst: New file.
870 * doc/openacc-runtime-library-routines/accwaitallasync.rst: New file.
871 * doc/openacc-runtime-library-routines/accwaitasync.rst: New file.
872 * doc/openmp-context-selectors.rst: New file.
873 * doc/openmp-environment-variables.rst: New file.
874 * doc/openmp-environment-variables/gompcpuaffinity.rst: New file.
875 * doc/openmp-environment-variables/gompdebug.rst: New file.
876 * doc/openmp-environment-variables/gomprtemsthreadpools.rst: New file.
877 * doc/openmp-environment-variables/gompspincount.rst: New file.
878 * doc/openmp-environment-variables/gompstacksize.rst: New file.
879 * doc/openmp-environment-variables/ompcancellation.rst: New file.
880 * doc/openmp-environment-variables/ompdefaultdevice.rst: New file.
881 * doc/openmp-environment-variables/ompdisplayenv.rst: New file.
882 * doc/openmp-environment-variables/ompdynamic.rst: New file.
883 * doc/openmp-environment-variables/ompmaxactivelevels.rst: New file.
884 * doc/openmp-environment-variables/ompmaxtaskpriority.rst: New file.
885 * doc/openmp-environment-variables/ompnested.rst: New file.
886 * doc/openmp-environment-variables/ompnumteams.rst: New file.
887 * doc/openmp-environment-variables/ompnumthreads.rst: New file.
888 * doc/openmp-environment-variables/ompplaces.rst: New file.
889 * doc/openmp-environment-variables/ompprocbind.rst: New file.
890 * doc/openmp-environment-variables/ompschedule.rst: New file.
891 * doc/openmp-environment-variables/ompstacksize.rst: New file.
892 * doc/openmp-environment-variables/omptargetoffload.rst: New file.
893 * doc/openmp-environment-variables/ompteamsthreadlimit.rst: New file.
894 * doc/openmp-environment-variables/ompthreadlimit.rst: New file.
895 * doc/openmp-environment-variables/ompwaitpolicy.rst: New file.
896 * doc/openmp-implementation-specifics.rst: New file.
897 * doc/openmp-implementation-status.rst: New file.
898 * doc/openmp-implementation-status/openmp-45.rst: New file.
899 * doc/openmp-implementation-status/openmp-50.rst: New file.
900 * doc/openmp-implementation-status/openmp-51.rst: New file.
901 * doc/openmp-implementation-status/openmp-52.rst: New file.
902 * doc/openmp-runtime-library-routines.rst: New file.
903 * doc/openmp-runtime-library-routines/ompdestroylock.rst: New file.
904 * doc/openmp-runtime-library-routines/ompdestroynestlock.rst: New file.
905 * doc/openmp-runtime-library-routines/ompfulfillevent.rst: New file.
906 * doc/openmp-runtime-library-routines/ompgetactivelevel.rst: New file.
907 * doc/openmp-runtime-library-routines/ompgetancestorthreadnum.rst: New file.
908 * doc/openmp-runtime-library-routines/ompgetcancellation.rst: New file.
909 * doc/openmp-runtime-library-routines/ompgetdefaultdevice.rst: New file.
910 * doc/openmp-runtime-library-routines/ompgetdevicenum.rst: New file.
911 * doc/openmp-runtime-library-routines/ompgetdynamic.rst: New file.
912 * doc/openmp-runtime-library-routines/ompgetinitialdevice.rst: New file.
913 * doc/openmp-runtime-library-routines/ompgetlevel.rst: New file.
914 * doc/openmp-runtime-library-routines/ompgetmaxactivelevels.rst: New file.
915 * doc/openmp-runtime-library-routines/ompgetmaxtaskpriority.rst: New file.
916 * doc/openmp-runtime-library-routines/ompgetmaxteams.rst: New file.
917 * doc/openmp-runtime-library-routines/ompgetmaxthreads.rst: New file.
918 * doc/openmp-runtime-library-routines/ompgetnested.rst: New file.
919 * doc/openmp-runtime-library-routines/ompgetnumdevices.rst: New file.
920 * doc/openmp-runtime-library-routines/ompgetnumprocs.rst: New file.
921 * doc/openmp-runtime-library-routines/ompgetnumteams.rst: New file.
922 * doc/openmp-runtime-library-routines/ompgetnumthreads.rst: New file.
923 * doc/openmp-runtime-library-routines/ompgetprocbind.rst: New file.
924 * doc/openmp-runtime-library-routines/ompgetschedule.rst: New file.
925 * doc/openmp-runtime-library-routines/ompgetsupportedactivelevels.rst: New file.
926 * doc/openmp-runtime-library-routines/ompgetteamnum.rst: New file.
927 * doc/openmp-runtime-library-routines/ompgetteamsize.rst: New file.
928 * doc/openmp-runtime-library-routines/ompgetteamsthreadlimit.rst: New file.
929 * doc/openmp-runtime-library-routines/ompgetthreadlimit.rst: New file.
930 * doc/openmp-runtime-library-routines/ompgetthreadnum.rst: New file.
931 * doc/openmp-runtime-library-routines/ompgetwtick.rst: New file.
932 * doc/openmp-runtime-library-routines/ompgetwtime.rst: New file.
933 * doc/openmp-runtime-library-routines/ompinfinal.rst: New file.
934 * doc/openmp-runtime-library-routines/ompinitlock.rst: New file.
935 * doc/openmp-runtime-library-routines/ompinitnestlock.rst: New file.
936 * doc/openmp-runtime-library-routines/ompinparallel.rst: New file.
937 * doc/openmp-runtime-library-routines/ompisinitialdevice.rst: New file.
938 * doc/openmp-runtime-library-routines/ompsetdefaultdevice.rst: New file.
939 * doc/openmp-runtime-library-routines/ompsetdynamic.rst: New file.
940 * doc/openmp-runtime-library-routines/ompsetlock.rst: New file.
941 * doc/openmp-runtime-library-routines/ompsetmaxactivelevels.rst: New file.
942 * doc/openmp-runtime-library-routines/ompsetnested.rst: New file.
943 * doc/openmp-runtime-library-routines/ompsetnestlock.rst: New file.
944 * doc/openmp-runtime-library-routines/ompsetnumteams.rst: New file.
945 * doc/openmp-runtime-library-routines/ompsetnumthreads.rst: New file.
946 * doc/openmp-runtime-library-routines/ompsetschedule.rst: New file.
947 * doc/openmp-runtime-library-routines/ompsetteamsthreadlimit.rst: New file.
948 * doc/openmp-runtime-library-routines/omptestlock.rst: New file.
949 * doc/openmp-runtime-library-routines/omptestnestlock.rst: New file.
950 * doc/openmp-runtime-library-routines/ompunsetlock.rst: New file.
951 * doc/openmp-runtime-library-routines/ompunsetnestlock.rst: New file.
952 * doc/reporting-bugs.rst: New file.
953 * doc/the-libgomp-abi.rst: New file.
954 * doc/the-libgomp-abi/implementing-atomic-construct.rst: New file.
955 * doc/the-libgomp-abi/implementing-barrier-construct.rst: New file.
956 * doc/the-libgomp-abi/implementing-critical-construct.rst: New file.
957 * doc/the-libgomp-abi/implementing-firstprivate-lastprivate-copyin-and-copyprivate-clauses.rst:
958 New file.
959 * doc/the-libgomp-abi/implementing-flush-construct.rst: New file.
960 * doc/the-libgomp-abi/implementing-for-construct.rst: New file.
961 * doc/the-libgomp-abi/implementing-master-construct.rst: New file.
962 * doc/the-libgomp-abi/implementing-openaccs-parallel-construct.rst: New file.
963 * doc/the-libgomp-abi/implementing-ordered-construct.rst: New file.
964 * doc/the-libgomp-abi/implementing-parallel-construct.rst: New file.
965 * doc/the-libgomp-abi/implementing-private-clause.rst: New file.
966 * doc/the-libgomp-abi/implementing-reduction-clause.rst: New file.
967 * doc/the-libgomp-abi/implementing-sections-construct.rst: New file.
968 * doc/the-libgomp-abi/implementing-single-construct.rst: New file.
969 * doc/the-libgomp-abi/implementing-threadprivate-construct.rst: New file.
970
9712022-11-14 Martin Liska <mliska@suse.cz>
972
973 Revert:
974 2022-11-14 Martin Liska <mliska@suse.cz>
975
976 * Makefile.in: Support Sphinx based documentation.
977
9782022-11-14 Martin Liska <mliska@suse.cz>
979
980 Revert:
981 2022-11-14 Martin Liska <mliska@suse.cz>
982
983 * libgomp.texi: Removed.
984
9852022-11-14 Martin Liska <mliska@suse.cz>
986
987 Revert:
988 2022-11-14 Martin Liska <mliska@suse.cz>
989
990 * Makefile.in: Support --with-sphinx-build.
991 * configure.ac: Likewise..
992 * configure: Regenerate.
993
9942022-11-14 Martin Liska <mliska@suse.cz>
995
996 Revert:
997 2022-11-09 Martin Liska <mliska@suse.cz>
998
999 * Makefile.in: Build info pages conditionally.
1000
10012022-11-14 Martin Liska <mliska@suse.cz>
1002
1003 Revert:
1004 2022-11-14 Martin Liska <mliska@suse.cz>
1005
1006 * doc/amd-radeon-gcn.rst:
3d3b561f 1007 Add trailing newline.
83d400bd 1008 * doc/copyright.rst:
3d3b561f 1009 Add trailing newline.
83d400bd 1010 * doc/cuda-streams-usage.rst:
3d3b561f 1011 Add trailing newline.
83d400bd 1012 * doc/enabling-openacc.rst:
3d3b561f 1013 Add trailing newline.
83d400bd 1014 * doc/enabling-openmp.rst:
3d3b561f 1015 Add trailing newline.
83d400bd 1016 * doc/first-invocation-nvidia-cublas-library-api.rst:
3d3b561f 1017 Add trailing newline.
83d400bd 1018 * doc/first-invocation-openacc-library-api.rst:
3d3b561f 1019 Add trailing newline.
83d400bd 1020 * doc/funding.rst:
3d3b561f 1021 Add trailing newline.
83d400bd 1022 * doc/general-public-license-3.rst:
3d3b561f 1023 Add trailing newline.
83d400bd 1024 * doc/gnu-free-documentation-license.rst:
3d3b561f 1025 Add trailing newline.
83d400bd 1026 * doc/implementation-status-and-implementation-defined-behavior.rst:
3d3b561f 1027 Add trailing newline.
83d400bd 1028 * doc/index.rst:
3d3b561f 1029 Add trailing newline.
83d400bd 1030 * doc/indices-and-tables.rst:
3d3b561f 1031 Add trailing newline.
83d400bd 1032 * doc/introduction.rst:
3d3b561f 1033 Add trailing newline.
83d400bd 1034 * doc/memory-allocation-with-libmemkind.rst:
3d3b561f 1035 Add trailing newline.
83d400bd 1036 * doc/nvptx.rst:
3d3b561f 1037 Add trailing newline.
83d400bd 1038 * doc/offload-target-specifics.rst:
3d3b561f 1039 Add trailing newline.
83d400bd 1040 * doc/openacc-environment-variables.rst:
3d3b561f 1041 Add trailing newline.
83d400bd 1042 * doc/openacc-environment-variables/accdevicenum.rst:
3d3b561f 1043 Add trailing newline.
83d400bd 1044 * doc/openacc-environment-variables/accdevicetype.rst:
3d3b561f 1045 Add trailing newline.
83d400bd 1046 * doc/openacc-environment-variables/accproflib.rst:
3d3b561f 1047 Add trailing newline.
83d400bd 1048 * doc/openacc-environment-variables/gccaccnotify.rst:
3d3b561f 1049 Add trailing newline.
83d400bd 1050 * doc/openacc-introduction.rst:
3d3b561f 1051 Add trailing newline.
83d400bd 1052 * doc/openacc-library-and-environment-variables.rst:
3d3b561f 1053 Add trailing newline.
83d400bd 1054 * doc/openacc-library-interoperability.rst:
3d3b561f 1055 Add trailing newline.
83d400bd 1056 * doc/openacc-profiling-interface.rst:
3d3b561f 1057 Add trailing newline.
83d400bd 1058 * doc/openacc-runtime-library-routines.rst:
3d3b561f 1059 Add trailing newline.
83d400bd 1060 * doc/openacc-runtime-library-routines/accasynctest.rst:
3d3b561f 1061 Add trailing newline.
83d400bd 1062 * doc/openacc-runtime-library-routines/accasynctestall.rst:
3d3b561f 1063 Add trailing newline.
83d400bd 1064 * doc/openacc-runtime-library-routines/accattach.rst:
3d3b561f 1065 Add trailing newline.
83d400bd 1066 * doc/openacc-runtime-library-routines/acccopyin.rst:
3d3b561f 1067 Add trailing newline.
83d400bd 1068 * doc/openacc-runtime-library-routines/acccopyout.rst:
3d3b561f 1069 Add trailing newline.
83d400bd 1070 * doc/openacc-runtime-library-routines/acccreate.rst:
3d3b561f 1071 Add trailing newline.
83d400bd 1072 * doc/openacc-runtime-library-routines/accdelete.rst:
3d3b561f 1073 Add trailing newline.
83d400bd 1074 * doc/openacc-runtime-library-routines/accdetach.rst:
3d3b561f 1075 Add trailing newline.
83d400bd 1076 * doc/openacc-runtime-library-routines/accdeviceptr.rst:
3d3b561f 1077 Add trailing newline.
83d400bd 1078 * doc/openacc-runtime-library-routines/accfree.rst:
3d3b561f 1079 Add trailing newline.
83d400bd 1080 * doc/openacc-runtime-library-routines/accgetcudastream.rst:
3d3b561f 1081 Add trailing newline.
83d400bd 1082 * doc/openacc-runtime-library-routines/accgetcurrentcudacontext.rst:
3d3b561f 1083 Add trailing newline.
83d400bd 1084 * doc/openacc-runtime-library-routines/accgetcurrentcudadevice.rst:
3d3b561f 1085 Add trailing newline.
83d400bd 1086 * doc/openacc-runtime-library-routines/accgetdevicenum.rst:
3d3b561f 1087 Add trailing newline.
83d400bd 1088 * doc/openacc-runtime-library-routines/accgetdevicetype.rst:
3d3b561f 1089 Add trailing newline.
83d400bd 1090 * doc/openacc-runtime-library-routines/accgetnumdevices.rst:
3d3b561f 1091 Add trailing newline.
83d400bd 1092 * doc/openacc-runtime-library-routines/accgetproperty.rst:
3d3b561f 1093 Add trailing newline.
83d400bd 1094 * doc/openacc-runtime-library-routines/acchostptr.rst:
3d3b561f 1095 Add trailing newline.
83d400bd 1096 * doc/openacc-runtime-library-routines/accinit.rst:
3d3b561f 1097 Add trailing newline.
83d400bd 1098 * doc/openacc-runtime-library-routines/accispresent.rst:
3d3b561f 1099 Add trailing newline.
83d400bd 1100 * doc/openacc-runtime-library-routines/accmalloc.rst:
3d3b561f 1101 Add trailing newline.
83d400bd 1102 * doc/openacc-runtime-library-routines/accmapdata.rst:
3d3b561f 1103 Add trailing newline.
83d400bd 1104 * doc/openacc-runtime-library-routines/accmemcpyfromdevice.rst:
3d3b561f 1105 Add trailing newline.
83d400bd 1106 * doc/openacc-runtime-library-routines/accmemcpytodevice.rst:
3d3b561f 1107 Add trailing newline.
83d400bd 1108 * doc/openacc-runtime-library-routines/accondevice.rst:
3d3b561f 1109 Add trailing newline.
83d400bd 1110 * doc/openacc-runtime-library-routines/accpresentorcopyin.rst:
3d3b561f 1111 Add trailing newline.
83d400bd 1112 * doc/openacc-runtime-library-routines/accpresentorcreate.rst:
3d3b561f 1113 Add trailing newline.
83d400bd 1114 * doc/openacc-runtime-library-routines/accproflookup.rst:
3d3b561f 1115 Add trailing newline.
83d400bd 1116 * doc/openacc-runtime-library-routines/accprofregister.rst:
3d3b561f 1117 Add trailing newline.
83d400bd 1118 * doc/openacc-runtime-library-routines/accprofunregister.rst:
3d3b561f 1119 Add trailing newline.
83d400bd 1120 * doc/openacc-runtime-library-routines/accregisterlibrary.rst:
3d3b561f 1121 Add trailing newline.
83d400bd 1122 * doc/openacc-runtime-library-routines/accsetcudastream.rst:
3d3b561f 1123 Add trailing newline.
83d400bd 1124 * doc/openacc-runtime-library-routines/accsetdevicenum.rst:
3d3b561f 1125 Add trailing newline.
83d400bd 1126 * doc/openacc-runtime-library-routines/accsetdevicetype.rst:
3d3b561f 1127 Add trailing newline.
83d400bd 1128 * doc/openacc-runtime-library-routines/accshutdown.rst:
3d3b561f 1129 Add trailing newline.
83d400bd 1130 * doc/openacc-runtime-library-routines/accunmapdata.rst:
3d3b561f 1131 Add trailing newline.
83d400bd 1132 * doc/openacc-runtime-library-routines/accupdatedevice.rst:
3d3b561f 1133 Add trailing newline.
83d400bd 1134 * doc/openacc-runtime-library-routines/accupdateself.rst:
3d3b561f 1135 Add trailing newline.
83d400bd 1136 * doc/openacc-runtime-library-routines/accwait.rst:
3d3b561f 1137 Add trailing newline.
83d400bd 1138 * doc/openacc-runtime-library-routines/accwaitall.rst:
3d3b561f 1139 Add trailing newline.
83d400bd 1140 * doc/openacc-runtime-library-routines/accwaitallasync.rst:
3d3b561f 1141 Add trailing newline.
83d400bd 1142 * doc/openacc-runtime-library-routines/accwaitasync.rst:
3d3b561f 1143 Add trailing newline.
83d400bd 1144 * doc/openmp-context-selectors.rst:
3d3b561f 1145 Add trailing newline.
83d400bd 1146 * doc/openmp-environment-variables.rst:
3d3b561f 1147 Add trailing newline.
83d400bd 1148 * doc/openmp-environment-variables/gompcpuaffinity.rst:
3d3b561f 1149 Add trailing newline.
83d400bd 1150 * doc/openmp-environment-variables/gompdebug.rst:
3d3b561f 1151 Add trailing newline.
83d400bd 1152 * doc/openmp-environment-variables/gomprtemsthreadpools.rst:
3d3b561f 1153 Add trailing newline.
83d400bd 1154 * doc/openmp-environment-variables/gompspincount.rst:
3d3b561f 1155 Add trailing newline.
83d400bd 1156 * doc/openmp-environment-variables/gompstacksize.rst:
3d3b561f 1157 Add trailing newline.
83d400bd 1158 * doc/openmp-environment-variables/ompcancellation.rst:
3d3b561f 1159 Add trailing newline.
83d400bd 1160 * doc/openmp-environment-variables/ompdefaultdevice.rst:
3d3b561f 1161 Add trailing newline.
83d400bd 1162 * doc/openmp-environment-variables/ompdisplayenv.rst:
3d3b561f 1163 Add trailing newline.
83d400bd 1164 * doc/openmp-environment-variables/ompdynamic.rst:
3d3b561f 1165 Add trailing newline.
83d400bd 1166 * doc/openmp-environment-variables/ompmaxactivelevels.rst:
3d3b561f 1167 Add trailing newline.
83d400bd 1168 * doc/openmp-environment-variables/ompmaxtaskpriority.rst:
3d3b561f 1169 Add trailing newline.
83d400bd 1170 * doc/openmp-environment-variables/ompnested.rst:
3d3b561f 1171 Add trailing newline.
83d400bd 1172 * doc/openmp-environment-variables/ompnumteams.rst:
3d3b561f 1173 Add trailing newline.
83d400bd 1174 * doc/openmp-environment-variables/ompnumthreads.rst:
3d3b561f 1175 Add trailing newline.
83d400bd 1176 * doc/openmp-environment-variables/ompplaces.rst:
3d3b561f 1177 Add trailing newline.
83d400bd 1178 * doc/openmp-environment-variables/ompprocbind.rst:
3d3b561f 1179 Add trailing newline.
83d400bd 1180 * doc/openmp-environment-variables/ompschedule.rst:
3d3b561f 1181 Add trailing newline.
83d400bd 1182 * doc/openmp-environment-variables/ompstacksize.rst:
3d3b561f 1183 Add trailing newline.
83d400bd 1184 * doc/openmp-environment-variables/omptargetoffload.rst:
3d3b561f 1185 Add trailing newline.
83d400bd 1186 * doc/openmp-environment-variables/ompteamsthreadlimit.rst:
3d3b561f 1187 Add trailing newline.
83d400bd 1188 * doc/openmp-environment-variables/ompthreadlimit.rst:
3d3b561f 1189 Add trailing newline.
83d400bd 1190 * doc/openmp-environment-variables/ompwaitpolicy.rst:
3d3b561f 1191 Add trailing newline.
83d400bd 1192 * doc/openmp-implementation-specifics.rst:
3d3b561f 1193 Add trailing newline.
83d400bd 1194 * doc/openmp-implementation-status.rst:
3d3b561f 1195 Add trailing newline.
83d400bd 1196 * doc/openmp-implementation-status/openmp-45.rst:
3d3b561f 1197 Add trailing newline.
83d400bd 1198 * doc/openmp-implementation-status/openmp-50.rst:
3d3b561f 1199 Add trailing newline.
83d400bd 1200 * doc/openmp-implementation-status/openmp-51.rst:
3d3b561f 1201 Add trailing newline.
83d400bd 1202 * doc/openmp-implementation-status/openmp-52.rst:
3d3b561f 1203 Add trailing newline.
83d400bd 1204 * doc/openmp-runtime-library-routines.rst:
3d3b561f 1205 Add trailing newline.
83d400bd 1206 * doc/openmp-runtime-library-routines/ompdestroylock.rst:
3d3b561f 1207 Add trailing newline.
83d400bd 1208 * doc/openmp-runtime-library-routines/ompdestroynestlock.rst:
3d3b561f 1209 Add trailing newline.
83d400bd 1210 * doc/openmp-runtime-library-routines/ompfulfillevent.rst:
3d3b561f 1211 Add trailing newline.
83d400bd 1212 * doc/openmp-runtime-library-routines/ompgetactivelevel.rst:
3d3b561f 1213 Add trailing newline.
83d400bd 1214 * doc/openmp-runtime-library-routines/ompgetancestorthreadnum.rst:
3d3b561f 1215 Add trailing newline.
83d400bd 1216 * doc/openmp-runtime-library-routines/ompgetcancellation.rst:
3d3b561f 1217 Add trailing newline.
83d400bd 1218 * doc/openmp-runtime-library-routines/ompgetdefaultdevice.rst:
3d3b561f 1219 Add trailing newline.
83d400bd 1220 * doc/openmp-runtime-library-routines/ompgetdevicenum.rst:
3d3b561f 1221 Add trailing newline.
83d400bd 1222 * doc/openmp-runtime-library-routines/ompgetdynamic.rst:
3d3b561f 1223 Add trailing newline.
83d400bd 1224 * doc/openmp-runtime-library-routines/ompgetinitialdevice.rst:
3d3b561f 1225 Add trailing newline.
83d400bd 1226 * doc/openmp-runtime-library-routines/ompgetlevel.rst:
3d3b561f 1227 Add trailing newline.
83d400bd 1228 * doc/openmp-runtime-library-routines/ompgetmaxactivelevels.rst:
3d3b561f 1229 Add trailing newline.
83d400bd 1230 * doc/openmp-runtime-library-routines/ompgetmaxtaskpriority.rst:
3d3b561f 1231 Add trailing newline.
83d400bd 1232 * doc/openmp-runtime-library-routines/ompgetmaxteams.rst:
3d3b561f 1233 Add trailing newline.
83d400bd 1234 * doc/openmp-runtime-library-routines/ompgetmaxthreads.rst:
3d3b561f 1235 Add trailing newline.
83d400bd 1236 * doc/openmp-runtime-library-routines/ompgetnested.rst:
3d3b561f 1237 Add trailing newline.
83d400bd 1238 * doc/openmp-runtime-library-routines/ompgetnumdevices.rst:
3d3b561f 1239 Add trailing newline.
83d400bd 1240 * doc/openmp-runtime-library-routines/ompgetnumprocs.rst:
3d3b561f 1241 Add trailing newline.
83d400bd 1242 * doc/openmp-runtime-library-routines/ompgetnumteams.rst:
3d3b561f 1243 Add trailing newline.
83d400bd 1244 * doc/openmp-runtime-library-routines/ompgetnumthreads.rst:
3d3b561f 1245 Add trailing newline.
83d400bd 1246 * doc/openmp-runtime-library-routines/ompgetprocbind.rst:
3d3b561f 1247 Add trailing newline.
83d400bd 1248 * doc/openmp-runtime-library-routines/ompgetschedule.rst:
3d3b561f 1249 Add trailing newline.
83d400bd 1250 * doc/openmp-runtime-library-routines/ompgetsupportedactivelevels.rst:
3d3b561f 1251 Add trailing newline.
83d400bd 1252 * doc/openmp-runtime-library-routines/ompgetteamnum.rst:
3d3b561f 1253 Add trailing newline.
83d400bd 1254 * doc/openmp-runtime-library-routines/ompgetteamsize.rst:
3d3b561f 1255 Add trailing newline.
83d400bd 1256 * doc/openmp-runtime-library-routines/ompgetteamsthreadlimit.rst:
3d3b561f 1257 Add trailing newline.
83d400bd 1258 * doc/openmp-runtime-library-routines/ompgetthreadlimit.rst:
3d3b561f 1259 Add trailing newline.
83d400bd 1260 * doc/openmp-runtime-library-routines/ompgetthreadnum.rst:
3d3b561f 1261 Add trailing newline.
83d400bd 1262 * doc/openmp-runtime-library-routines/ompgetwtick.rst:
3d3b561f 1263 Add trailing newline.
83d400bd 1264 * doc/openmp-runtime-library-routines/ompgetwtime.rst:
3d3b561f 1265 Add trailing newline.
83d400bd 1266 * doc/openmp-runtime-library-routines/ompinfinal.rst:
3d3b561f 1267 Add trailing newline.
83d400bd 1268 * doc/openmp-runtime-library-routines/ompinitlock.rst:
3d3b561f 1269 Add trailing newline.
83d400bd 1270 * doc/openmp-runtime-library-routines/ompinitnestlock.rst:
3d3b561f 1271 Add trailing newline.
83d400bd 1272 * doc/openmp-runtime-library-routines/ompinparallel.rst:
3d3b561f 1273 Add trailing newline.
83d400bd 1274 * doc/openmp-runtime-library-routines/ompisinitialdevice.rst:
3d3b561f 1275 Add trailing newline.
83d400bd 1276 * doc/openmp-runtime-library-routines/ompsetdefaultdevice.rst:
3d3b561f 1277 Add trailing newline.
83d400bd 1278 * doc/openmp-runtime-library-routines/ompsetdynamic.rst:
3d3b561f 1279 Add trailing newline.
83d400bd 1280 * doc/openmp-runtime-library-routines/ompsetlock.rst:
3d3b561f 1281 Add trailing newline.
83d400bd 1282 * doc/openmp-runtime-library-routines/ompsetmaxactivelevels.rst:
3d3b561f 1283 Add trailing newline.
83d400bd 1284 * doc/openmp-runtime-library-routines/ompsetnested.rst:
3d3b561f 1285 Add trailing newline.
83d400bd 1286 * doc/openmp-runtime-library-routines/ompsetnestlock.rst:
3d3b561f 1287 Add trailing newline.
83d400bd 1288 * doc/openmp-runtime-library-routines/ompsetnumteams.rst:
3d3b561f 1289 Add trailing newline.
83d400bd 1290 * doc/openmp-runtime-library-routines/ompsetnumthreads.rst:
3d3b561f 1291 Add trailing newline.
83d400bd 1292 * doc/openmp-runtime-library-routines/ompsetschedule.rst:
3d3b561f 1293 Add trailing newline.
83d400bd 1294 * doc/openmp-runtime-library-routines/ompsetteamsthreadlimit.rst:
3d3b561f 1295 Add trailing newline.
83d400bd 1296 * doc/openmp-runtime-library-routines/omptestlock.rst:
3d3b561f 1297 Add trailing newline.
83d400bd 1298 * doc/openmp-runtime-library-routines/omptestnestlock.rst:
3d3b561f 1299 Add trailing newline.
83d400bd 1300 * doc/openmp-runtime-library-routines/ompunsetlock.rst:
3d3b561f 1301 Add trailing newline.
83d400bd 1302 * doc/openmp-runtime-library-routines/ompunsetnestlock.rst:
3d3b561f 1303 Add trailing newline.
83d400bd 1304 * doc/reporting-bugs.rst:
3d3b561f 1305 Add trailing newline.
83d400bd 1306 * doc/the-libgomp-abi.rst:
3d3b561f 1307 Add trailing newline.
83d400bd 1308 * doc/the-libgomp-abi/implementing-atomic-construct.rst:
3d3b561f 1309 Add trailing newline.
83d400bd 1310 * doc/the-libgomp-abi/implementing-barrier-construct.rst:
3d3b561f 1311 Add trailing newline.
83d400bd 1312 * doc/the-libgomp-abi/implementing-critical-construct.rst:
3d3b561f 1313 Add trailing newline.
83d400bd 1314 * doc/the-libgomp-abi/implementing-firstprivate-lastprivate-copyin-and-copyprivate-clauses.rst:
3d3b561f 1315 Add trailing newline.
83d400bd 1316 * doc/the-libgomp-abi/implementing-flush-construct.rst:
3d3b561f 1317 Add trailing newline.
83d400bd 1318 * doc/the-libgomp-abi/implementing-for-construct.rst:
3d3b561f 1319 Add trailing newline.
83d400bd 1320 * doc/the-libgomp-abi/implementing-master-construct.rst:
3d3b561f 1321 Add trailing newline.
83d400bd 1322 * doc/the-libgomp-abi/implementing-openaccs-parallel-construct.rst:
3d3b561f 1323 Add trailing newline.
83d400bd 1324 * doc/the-libgomp-abi/implementing-ordered-construct.rst:
3d3b561f 1325 Add trailing newline.
83d400bd 1326 * doc/the-libgomp-abi/implementing-parallel-construct.rst:
3d3b561f 1327 Add trailing newline.
83d400bd 1328 * doc/the-libgomp-abi/implementing-private-clause.rst:
3d3b561f 1329 Add trailing newline.
83d400bd 1330 * doc/the-libgomp-abi/implementing-reduction-clause.rst:
3d3b561f 1331 Add trailing newline.
83d400bd 1332 * doc/the-libgomp-abi/implementing-sections-construct.rst:
3d3b561f 1333 Add trailing newline.
83d400bd 1334 * doc/the-libgomp-abi/implementing-single-construct.rst:
3d3b561f 1335 Add trailing newline.
83d400bd 1336 * doc/the-libgomp-abi/implementing-threadprivate-construct.rst:
3d3b561f 1337 Add trailing newline.
83d400bd
GA
1338
13392022-11-14 Martin Liska <mliska@suse.cz>
1340
1341 Revert:
1342 2022-11-09 Martin Liska <mliska@suse.cz>
1343
1344 * Makefile.in: Add missing HAS_SPHINX_BUILD.
1345
13462022-11-14 Martin Liska <mliska@suse.cz>
1347
1348 Revert:
1349 2022-11-14 Martin Liska <mliska@suse.cz>
1350
1351 * doc/conf.py: Add newline at last line.
1352
13532022-11-14 Martin Liska <mliska@suse.cz>
1354
1355 Revert:
1356 2022-11-14 Martin Liska <mliska@suse.cz>
1357
1358 PR other/107620
1359 * configure: Regenerate.
1360 * configure.ac: Always set sphinx-build.
1361
eefbfbc7
GA
13622022-11-13 Martin Liska <mliska@suse.cz>
1363
1364 PR other/107620
1365 * configure: Regenerate.
1366 * configure.ac: Always set sphinx-build.
1367
30d77d49
GA
13682022-11-12 Jakub Jelinek <jakub@redhat.com>
1369
1370 PR libgomp/107641
1371 * env.c (parse_unsigned_long): Cast params[2] to uintptr_t rather than
1372 unsigned long. Change type of upper from unsigned to unsigned long.
1373
f225b813
GA
13742022-11-10 Martin Liska <mliska@suse.cz>
1375
1376 * doc/conf.py: Add newline at last line.
1377
1cdfd0e5
GA
13782022-11-09 Martin Liska <mliska@suse.cz>
1379
1380 * Makefile.in: Add missing HAS_SPHINX_BUILD.
1381
13822022-11-09 Martin Liska <mliska@suse.cz>
1383
1384 * doc/amd-radeon-gcn.rst:
3d3b561f 1385 Add trailing newline.
1cdfd0e5 1386 * doc/copyright.rst:
3d3b561f 1387 Add trailing newline.
1cdfd0e5 1388 * doc/cuda-streams-usage.rst:
3d3b561f 1389 Add trailing newline.
1cdfd0e5 1390 * doc/enabling-openacc.rst:
3d3b561f 1391 Add trailing newline.
1cdfd0e5 1392 * doc/enabling-openmp.rst:
3d3b561f 1393 Add trailing newline.
1cdfd0e5 1394 * doc/first-invocation-nvidia-cublas-library-api.rst:
3d3b561f 1395 Add trailing newline.
1cdfd0e5 1396 * doc/first-invocation-openacc-library-api.rst:
3d3b561f 1397 Add trailing newline.
1cdfd0e5 1398 * doc/funding.rst:
3d3b561f 1399 Add trailing newline.
1cdfd0e5 1400 * doc/general-public-license-3.rst:
3d3b561f 1401 Add trailing newline.
1cdfd0e5 1402 * doc/gnu-free-documentation-license.rst:
3d3b561f 1403 Add trailing newline.
1cdfd0e5 1404 * doc/implementation-status-and-implementation-defined-behavior.rst:
3d3b561f 1405 Add trailing newline.
1cdfd0e5 1406 * doc/index.rst:
3d3b561f 1407 Add trailing newline.
1cdfd0e5 1408 * doc/indices-and-tables.rst:
3d3b561f 1409 Add trailing newline.
1cdfd0e5 1410 * doc/introduction.rst:
3d3b561f 1411 Add trailing newline.
1cdfd0e5 1412 * doc/memory-allocation-with-libmemkind.rst:
3d3b561f 1413 Add trailing newline.
1cdfd0e5 1414 * doc/nvptx.rst:
3d3b561f 1415 Add trailing newline.
1cdfd0e5 1416 * doc/offload-target-specifics.rst:
3d3b561f 1417 Add trailing newline.
1cdfd0e5 1418 * doc/openacc-environment-variables.rst:
3d3b561f 1419 Add trailing newline.
1cdfd0e5 1420 * doc/openacc-environment-variables/accdevicenum.rst:
3d3b561f 1421 Add trailing newline.
1cdfd0e5 1422 * doc/openacc-environment-variables/accdevicetype.rst:
3d3b561f 1423 Add trailing newline.
1cdfd0e5 1424 * doc/openacc-environment-variables/accproflib.rst:
3d3b561f 1425 Add trailing newline.
1cdfd0e5 1426 * doc/openacc-environment-variables/gccaccnotify.rst:
3d3b561f 1427 Add trailing newline.
1cdfd0e5 1428 * doc/openacc-introduction.rst:
3d3b561f 1429 Add trailing newline.
1cdfd0e5 1430 * doc/openacc-library-and-environment-variables.rst:
3d3b561f 1431 Add trailing newline.
1cdfd0e5 1432 * doc/openacc-library-interoperability.rst:
3d3b561f 1433 Add trailing newline.
1cdfd0e5 1434 * doc/openacc-profiling-interface.rst:
3d3b561f 1435 Add trailing newline.
1cdfd0e5 1436 * doc/openacc-runtime-library-routines.rst:
3d3b561f 1437 Add trailing newline.
1cdfd0e5 1438 * doc/openacc-runtime-library-routines/accasynctest.rst:
3d3b561f 1439 Add trailing newline.
1cdfd0e5 1440 * doc/openacc-runtime-library-routines/accasynctestall.rst:
3d3b561f 1441 Add trailing newline.
1cdfd0e5 1442 * doc/openacc-runtime-library-routines/accattach.rst:
3d3b561f 1443 Add trailing newline.
1cdfd0e5 1444 * doc/openacc-runtime-library-routines/acccopyin.rst:
3d3b561f 1445 Add trailing newline.
1cdfd0e5 1446 * doc/openacc-runtime-library-routines/acccopyout.rst:
3d3b561f 1447 Add trailing newline.
1cdfd0e5 1448 * doc/openacc-runtime-library-routines/acccreate.rst:
3d3b561f 1449 Add trailing newline.
1cdfd0e5 1450 * doc/openacc-runtime-library-routines/accdelete.rst:
3d3b561f 1451 Add trailing newline.
1cdfd0e5 1452 * doc/openacc-runtime-library-routines/accdetach.rst:
3d3b561f 1453 Add trailing newline.
1cdfd0e5 1454 * doc/openacc-runtime-library-routines/accdeviceptr.rst:
3d3b561f 1455 Add trailing newline.
1cdfd0e5 1456 * doc/openacc-runtime-library-routines/accfree.rst:
3d3b561f 1457 Add trailing newline.
1cdfd0e5 1458 * doc/openacc-runtime-library-routines/accgetcudastream.rst:
3d3b561f 1459 Add trailing newline.
1cdfd0e5 1460 * doc/openacc-runtime-library-routines/accgetcurrentcudacontext.rst:
3d3b561f 1461 Add trailing newline.
1cdfd0e5 1462 * doc/openacc-runtime-library-routines/accgetcurrentcudadevice.rst:
3d3b561f 1463 Add trailing newline.
1cdfd0e5 1464 * doc/openacc-runtime-library-routines/accgetdevicenum.rst:
3d3b561f 1465 Add trailing newline.
1cdfd0e5 1466 * doc/openacc-runtime-library-routines/accgetdevicetype.rst:
3d3b561f 1467 Add trailing newline.
1cdfd0e5 1468 * doc/openacc-runtime-library-routines/accgetnumdevices.rst:
3d3b561f 1469 Add trailing newline.
1cdfd0e5 1470 * doc/openacc-runtime-library-routines/accgetproperty.rst:
3d3b561f 1471 Add trailing newline.
1cdfd0e5 1472 * doc/openacc-runtime-library-routines/acchostptr.rst:
3d3b561f 1473 Add trailing newline.
1cdfd0e5 1474 * doc/openacc-runtime-library-routines/accinit.rst:
3d3b561f 1475 Add trailing newline.
1cdfd0e5 1476 * doc/openacc-runtime-library-routines/accispresent.rst:
3d3b561f 1477 Add trailing newline.
1cdfd0e5 1478 * doc/openacc-runtime-library-routines/accmalloc.rst:
3d3b561f 1479 Add trailing newline.
1cdfd0e5 1480 * doc/openacc-runtime-library-routines/accmapdata.rst:
3d3b561f 1481 Add trailing newline.
1cdfd0e5 1482 * doc/openacc-runtime-library-routines/accmemcpyfromdevice.rst:
3d3b561f 1483 Add trailing newline.
1cdfd0e5 1484 * doc/openacc-runtime-library-routines/accmemcpytodevice.rst:
3d3b561f 1485 Add trailing newline.
1cdfd0e5 1486 * doc/openacc-runtime-library-routines/accondevice.rst:
3d3b561f 1487 Add trailing newline.
1cdfd0e5 1488 * doc/openacc-runtime-library-routines/accpresentorcopyin.rst:
3d3b561f 1489 Add trailing newline.
1cdfd0e5 1490 * doc/openacc-runtime-library-routines/accpresentorcreate.rst:
3d3b561f 1491 Add trailing newline.
1cdfd0e5 1492 * doc/openacc-runtime-library-routines/accproflookup.rst:
3d3b561f 1493 Add trailing newline.
1cdfd0e5 1494 * doc/openacc-runtime-library-routines/accprofregister.rst:
3d3b561f 1495 Add trailing newline.
1cdfd0e5 1496 * doc/openacc-runtime-library-routines/accprofunregister.rst:
3d3b561f 1497 Add trailing newline.
1cdfd0e5 1498 * doc/openacc-runtime-library-routines/accregisterlibrary.rst:
3d3b561f 1499 Add trailing newline.
1cdfd0e5 1500 * doc/openacc-runtime-library-routines/accsetcudastream.rst:
3d3b561f 1501 Add trailing newline.
1cdfd0e5 1502 * doc/openacc-runtime-library-routines/accsetdevicenum.rst:
3d3b561f 1503 Add trailing newline.
1cdfd0e5 1504 * doc/openacc-runtime-library-routines/accsetdevicetype.rst:
3d3b561f 1505 Add trailing newline.
1cdfd0e5 1506 * doc/openacc-runtime-library-routines/accshutdown.rst:
3d3b561f 1507 Add trailing newline.
1cdfd0e5 1508 * doc/openacc-runtime-library-routines/accunmapdata.rst:
3d3b561f 1509 Add trailing newline.
1cdfd0e5 1510 * doc/openacc-runtime-library-routines/accupdatedevice.rst:
3d3b561f 1511 Add trailing newline.
1cdfd0e5 1512 * doc/openacc-runtime-library-routines/accupdateself.rst:
3d3b561f 1513 Add trailing newline.
1cdfd0e5 1514 * doc/openacc-runtime-library-routines/accwait.rst:
3d3b561f 1515 Add trailing newline.
1cdfd0e5 1516 * doc/openacc-runtime-library-routines/accwaitall.rst:
3d3b561f 1517 Add trailing newline.
1cdfd0e5 1518 * doc/openacc-runtime-library-routines/accwaitallasync.rst:
3d3b561f 1519 Add trailing newline.
1cdfd0e5 1520 * doc/openacc-runtime-library-routines/accwaitasync.rst:
3d3b561f 1521 Add trailing newline.
1cdfd0e5 1522 * doc/openmp-context-selectors.rst:
3d3b561f 1523 Add trailing newline.
1cdfd0e5 1524 * doc/openmp-environment-variables.rst:
3d3b561f 1525 Add trailing newline.
1cdfd0e5 1526 * doc/openmp-environment-variables/gompcpuaffinity.rst:
3d3b561f 1527 Add trailing newline.
1cdfd0e5 1528 * doc/openmp-environment-variables/gompdebug.rst:
3d3b561f 1529 Add trailing newline.
1cdfd0e5 1530 * doc/openmp-environment-variables/gomprtemsthreadpools.rst:
3d3b561f 1531 Add trailing newline.
1cdfd0e5 1532 * doc/openmp-environment-variables/gompspincount.rst:
3d3b561f 1533 Add trailing newline.
1cdfd0e5 1534 * doc/openmp-environment-variables/gompstacksize.rst:
3d3b561f 1535 Add trailing newline.
1cdfd0e5 1536 * doc/openmp-environment-variables/ompcancellation.rst:
3d3b561f 1537 Add trailing newline.
1cdfd0e5 1538 * doc/openmp-environment-variables/ompdefaultdevice.rst:
3d3b561f 1539 Add trailing newline.
1cdfd0e5 1540 * doc/openmp-environment-variables/ompdisplayenv.rst:
3d3b561f 1541 Add trailing newline.
1cdfd0e5 1542 * doc/openmp-environment-variables/ompdynamic.rst:
3d3b561f 1543 Add trailing newline.
1cdfd0e5 1544 * doc/openmp-environment-variables/ompmaxactivelevels.rst:
3d3b561f 1545 Add trailing newline.
1cdfd0e5 1546 * doc/openmp-environment-variables/ompmaxtaskpriority.rst:
3d3b561f 1547 Add trailing newline.
1cdfd0e5 1548 * doc/openmp-environment-variables/ompnested.rst:
3d3b561f 1549 Add trailing newline.
1cdfd0e5 1550 * doc/openmp-environment-variables/ompnumteams.rst:
3d3b561f 1551 Add trailing newline.
1cdfd0e5 1552 * doc/openmp-environment-variables/ompnumthreads.rst:
3d3b561f 1553 Add trailing newline.
1cdfd0e5 1554 * doc/openmp-environment-variables/ompplaces.rst:
3d3b561f 1555 Add trailing newline.
1cdfd0e5 1556 * doc/openmp-environment-variables/ompprocbind.rst:
3d3b561f 1557 Add trailing newline.
1cdfd0e5 1558 * doc/openmp-environment-variables/ompschedule.rst:
3d3b561f 1559 Add trailing newline.
1cdfd0e5 1560 * doc/openmp-environment-variables/ompstacksize.rst:
3d3b561f 1561 Add trailing newline.
1cdfd0e5 1562 * doc/openmp-environment-variables/omptargetoffload.rst:
3d3b561f 1563 Add trailing newline.
1cdfd0e5 1564 * doc/openmp-environment-variables/ompteamsthreadlimit.rst:
3d3b561f 1565 Add trailing newline.
1cdfd0e5 1566 * doc/openmp-environment-variables/ompthreadlimit.rst:
3d3b561f 1567 Add trailing newline.
1cdfd0e5 1568 * doc/openmp-environment-variables/ompwaitpolicy.rst:
3d3b561f 1569 Add trailing newline.
1cdfd0e5 1570 * doc/openmp-implementation-specifics.rst:
3d3b561f 1571 Add trailing newline.
1cdfd0e5 1572 * doc/openmp-implementation-status.rst:
3d3b561f 1573 Add trailing newline.
1cdfd0e5 1574 * doc/openmp-implementation-status/openmp-45.rst:
3d3b561f 1575 Add trailing newline.
1cdfd0e5 1576 * doc/openmp-implementation-status/openmp-50.rst:
3d3b561f 1577 Add trailing newline.
1cdfd0e5 1578 * doc/openmp-implementation-status/openmp-51.rst:
3d3b561f 1579 Add trailing newline.
1cdfd0e5 1580 * doc/openmp-implementation-status/openmp-52.rst:
3d3b561f 1581 Add trailing newline.
1cdfd0e5 1582 * doc/openmp-runtime-library-routines.rst:
3d3b561f 1583 Add trailing newline.
1cdfd0e5 1584 * doc/openmp-runtime-library-routines/ompdestroylock.rst:
3d3b561f 1585 Add trailing newline.
1cdfd0e5 1586 * doc/openmp-runtime-library-routines/ompdestroynestlock.rst:
3d3b561f 1587 Add trailing newline.
1cdfd0e5 1588 * doc/openmp-runtime-library-routines/ompfulfillevent.rst:
3d3b561f 1589 Add trailing newline.
1cdfd0e5 1590 * doc/openmp-runtime-library-routines/ompgetactivelevel.rst:
3d3b561f 1591 Add trailing newline.
1cdfd0e5 1592 * doc/openmp-runtime-library-routines/ompgetancestorthreadnum.rst:
3d3b561f 1593 Add trailing newline.
1cdfd0e5 1594 * doc/openmp-runtime-library-routines/ompgetcancellation.rst:
3d3b561f 1595 Add trailing newline.
1cdfd0e5 1596 * doc/openmp-runtime-library-routines/ompgetdefaultdevice.rst:
3d3b561f 1597 Add trailing newline.
1cdfd0e5 1598 * doc/openmp-runtime-library-routines/ompgetdevicenum.rst:
3d3b561f 1599 Add trailing newline.
1cdfd0e5 1600 * doc/openmp-runtime-library-routines/ompgetdynamic.rst:
3d3b561f 1601 Add trailing newline.
1cdfd0e5 1602 * doc/openmp-runtime-library-routines/ompgetinitialdevice.rst:
3d3b561f 1603 Add trailing newline.
1cdfd0e5 1604 * doc/openmp-runtime-library-routines/ompgetlevel.rst:
3d3b561f 1605 Add trailing newline.
1cdfd0e5 1606 * doc/openmp-runtime-library-routines/ompgetmaxactivelevels.rst:
3d3b561f 1607 Add trailing newline.
1cdfd0e5 1608 * doc/openmp-runtime-library-routines/ompgetmaxtaskpriority.rst:
3d3b561f 1609 Add trailing newline.
1cdfd0e5 1610 * doc/openmp-runtime-library-routines/ompgetmaxteams.rst:
3d3b561f 1611 Add trailing newline.
1cdfd0e5 1612 * doc/openmp-runtime-library-routines/ompgetmaxthreads.rst:
3d3b561f 1613 Add trailing newline.
1cdfd0e5 1614 * doc/openmp-runtime-library-routines/ompgetnested.rst:
3d3b561f 1615 Add trailing newline.
1cdfd0e5 1616 * doc/openmp-runtime-library-routines/ompgetnumdevices.rst:
3d3b561f 1617 Add trailing newline.
1cdfd0e5 1618 * doc/openmp-runtime-library-routines/ompgetnumprocs.rst:
3d3b561f 1619 Add trailing newline.
1cdfd0e5 1620 * doc/openmp-runtime-library-routines/ompgetnumteams.rst:
3d3b561f 1621 Add trailing newline.
1cdfd0e5 1622 * doc/openmp-runtime-library-routines/ompgetnumthreads.rst:
3d3b561f 1623 Add trailing newline.
1cdfd0e5 1624 * doc/openmp-runtime-library-routines/ompgetprocbind.rst:
3d3b561f 1625 Add trailing newline.
1cdfd0e5 1626 * doc/openmp-runtime-library-routines/ompgetschedule.rst:
3d3b561f 1627 Add trailing newline.
1cdfd0e5 1628 * doc/openmp-runtime-library-routines/ompgetsupportedactivelevels.rst:
3d3b561f 1629 Add trailing newline.
1cdfd0e5 1630 * doc/openmp-runtime-library-routines/ompgetteamnum.rst:
3d3b561f 1631 Add trailing newline.
1cdfd0e5 1632 * doc/openmp-runtime-library-routines/ompgetteamsize.rst:
3d3b561f 1633 Add trailing newline.
1cdfd0e5 1634 * doc/openmp-runtime-library-routines/ompgetteamsthreadlimit.rst:
3d3b561f 1635 Add trailing newline.
1cdfd0e5 1636 * doc/openmp-runtime-library-routines/ompgetthreadlimit.rst:
3d3b561f 1637 Add trailing newline.
1cdfd0e5 1638 * doc/openmp-runtime-library-routines/ompgetthreadnum.rst:
3d3b561f 1639 Add trailing newline.
1cdfd0e5 1640 * doc/openmp-runtime-library-routines/ompgetwtick.rst:
3d3b561f 1641 Add trailing newline.
1cdfd0e5 1642 * doc/openmp-runtime-library-routines/ompgetwtime.rst:
3d3b561f 1643 Add trailing newline.
1cdfd0e5 1644 * doc/openmp-runtime-library-routines/ompinfinal.rst:
3d3b561f 1645 Add trailing newline.
1cdfd0e5 1646 * doc/openmp-runtime-library-routines/ompinitlock.rst:
3d3b561f 1647 Add trailing newline.
1cdfd0e5 1648 * doc/openmp-runtime-library-routines/ompinitnestlock.rst:
3d3b561f 1649 Add trailing newline.
1cdfd0e5 1650 * doc/openmp-runtime-library-routines/ompinparallel.rst:
3d3b561f 1651 Add trailing newline.
1cdfd0e5 1652 * doc/openmp-runtime-library-routines/ompisinitialdevice.rst:
3d3b561f 1653 Add trailing newline.
1cdfd0e5 1654 * doc/openmp-runtime-library-routines/ompsetdefaultdevice.rst:
3d3b561f 1655 Add trailing newline.
1cdfd0e5 1656 * doc/openmp-runtime-library-routines/ompsetdynamic.rst:
3d3b561f 1657 Add trailing newline.
1cdfd0e5 1658 * doc/openmp-runtime-library-routines/ompsetlock.rst:
3d3b561f 1659 Add trailing newline.
1cdfd0e5 1660 * doc/openmp-runtime-library-routines/ompsetmaxactivelevels.rst:
3d3b561f 1661 Add trailing newline.
1cdfd0e5 1662 * doc/openmp-runtime-library-routines/ompsetnested.rst:
3d3b561f 1663 Add trailing newline.
1cdfd0e5 1664 * doc/openmp-runtime-library-routines/ompsetnestlock.rst:
3d3b561f 1665 Add trailing newline.
1cdfd0e5 1666 * doc/openmp-runtime-library-routines/ompsetnumteams.rst:
3d3b561f 1667 Add trailing newline.
1cdfd0e5 1668 * doc/openmp-runtime-library-routines/ompsetnumthreads.rst:
3d3b561f 1669 Add trailing newline.
1cdfd0e5 1670 * doc/openmp-runtime-library-routines/ompsetschedule.rst:
3d3b561f 1671 Add trailing newline.
1cdfd0e5 1672 * doc/openmp-runtime-library-routines/ompsetteamsthreadlimit.rst:
3d3b561f 1673 Add trailing newline.
1cdfd0e5 1674 * doc/openmp-runtime-library-routines/omptestlock.rst:
3d3b561f 1675 Add trailing newline.
1cdfd0e5 1676 * doc/openmp-runtime-library-routines/omptestnestlock.rst:
3d3b561f 1677 Add trailing newline.
1cdfd0e5 1678 * doc/openmp-runtime-library-routines/ompunsetlock.rst:
3d3b561f 1679 Add trailing newline.
1cdfd0e5 1680 * doc/openmp-runtime-library-routines/ompunsetnestlock.rst:
3d3b561f 1681 Add trailing newline.
1cdfd0e5 1682 * doc/reporting-bugs.rst:
3d3b561f 1683 Add trailing newline.
1cdfd0e5 1684 * doc/the-libgomp-abi.rst:
3d3b561f 1685 Add trailing newline.
1cdfd0e5 1686 * doc/the-libgomp-abi/implementing-atomic-construct.rst:
3d3b561f 1687 Add trailing newline.
1cdfd0e5 1688 * doc/the-libgomp-abi/implementing-barrier-construct.rst:
3d3b561f 1689 Add trailing newline.
1cdfd0e5 1690 * doc/the-libgomp-abi/implementing-critical-construct.rst:
3d3b561f 1691 Add trailing newline.
1cdfd0e5 1692 * doc/the-libgomp-abi/implementing-firstprivate-lastprivate-copyin-and-copyprivate-clauses.rst:
3d3b561f 1693 Add trailing newline.
1cdfd0e5 1694 * doc/the-libgomp-abi/implementing-flush-construct.rst:
3d3b561f 1695 Add trailing newline.
1cdfd0e5 1696 * doc/the-libgomp-abi/implementing-for-construct.rst:
3d3b561f 1697 Add trailing newline.
1cdfd0e5 1698 * doc/the-libgomp-abi/implementing-master-construct.rst:
3d3b561f 1699 Add trailing newline.
1cdfd0e5 1700 * doc/the-libgomp-abi/implementing-openaccs-parallel-construct.rst:
3d3b561f 1701 Add trailing newline.
1cdfd0e5 1702 * doc/the-libgomp-abi/implementing-ordered-construct.rst:
3d3b561f 1703 Add trailing newline.
1cdfd0e5 1704 * doc/the-libgomp-abi/implementing-parallel-construct.rst:
3d3b561f 1705 Add trailing newline.
1cdfd0e5 1706 * doc/the-libgomp-abi/implementing-private-clause.rst:
3d3b561f 1707 Add trailing newline.
1cdfd0e5 1708 * doc/the-libgomp-abi/implementing-reduction-clause.rst:
3d3b561f 1709 Add trailing newline.
1cdfd0e5 1710 * doc/the-libgomp-abi/implementing-sections-construct.rst:
3d3b561f 1711 Add trailing newline.
1cdfd0e5 1712 * doc/the-libgomp-abi/implementing-single-construct.rst:
3d3b561f 1713 Add trailing newline.
1cdfd0e5 1714 * doc/the-libgomp-abi/implementing-threadprivate-construct.rst:
3d3b561f 1715 Add trailing newline.
1cdfd0e5
GA
1716
17172022-11-09 Martin Liska <mliska@suse.cz>
1718
1719 * Makefile.in: Build info pages conditionally.
1720
17212022-11-09 Martin Liska <mliska@suse.cz>
1722
1723 * Makefile.in: Support --with-sphinx-build.
1724 * configure.ac: Likewise..
1725 * configure: Regenerate.
1726
17272022-11-09 Martin Liska <mliska@suse.cz>
1728
1729 * libgomp.texi: Removed.
1730
17312022-11-09 Martin Liska <mliska@suse.cz>
1732
1733 * Makefile.in: Support Sphinx based documentation.
1734
17352022-11-09 Martin Liska <mliska@suse.cz>
1736
1737 * doc/amd-radeon-gcn.rst: New file.
1738 * doc/conf.py: New file.
1739 * doc/copyright.rst: New file.
1740 * doc/cuda-streams-usage.rst: New file.
1741 * doc/enabling-openacc.rst: New file.
1742 * doc/enabling-openmp.rst: New file.
1743 * doc/first-invocation-nvidia-cublas-library-api.rst: New file.
1744 * doc/first-invocation-openacc-library-api.rst: New file.
1745 * doc/funding.rst: New file.
1746 * doc/general-public-license-3.rst: New file.
1747 * doc/gnu-free-documentation-license.rst: New file.
1748 * doc/implementation-status-and-implementation-defined-behavior.rst: New file.
1749 * doc/index.rst: New file.
1750 * doc/indices-and-tables.rst: New file.
1751 * doc/introduction.rst: New file.
1752 * doc/memory-allocation-with-libmemkind.rst: New file.
1753 * doc/nvptx.rst: New file.
1754 * doc/offload-target-specifics.rst: New file.
1755 * doc/openacc-environment-variables.rst: New file.
1756 * doc/openacc-environment-variables/accdevicenum.rst: New file.
1757 * doc/openacc-environment-variables/accdevicetype.rst: New file.
1758 * doc/openacc-environment-variables/accproflib.rst: New file.
1759 * doc/openacc-environment-variables/gccaccnotify.rst: New file.
1760 * doc/openacc-introduction.rst: New file.
1761 * doc/openacc-library-and-environment-variables.rst: New file.
1762 * doc/openacc-library-interoperability.rst: New file.
1763 * doc/openacc-profiling-interface.rst: New file.
1764 * doc/openacc-runtime-library-routines.rst: New file.
1765 * doc/openacc-runtime-library-routines/accasynctest.rst: New file.
1766 * doc/openacc-runtime-library-routines/accasynctestall.rst: New file.
1767 * doc/openacc-runtime-library-routines/accattach.rst: New file.
1768 * doc/openacc-runtime-library-routines/acccopyin.rst: New file.
1769 * doc/openacc-runtime-library-routines/acccopyout.rst: New file.
1770 * doc/openacc-runtime-library-routines/acccreate.rst: New file.
1771 * doc/openacc-runtime-library-routines/accdelete.rst: New file.
1772 * doc/openacc-runtime-library-routines/accdetach.rst: New file.
1773 * doc/openacc-runtime-library-routines/accdeviceptr.rst: New file.
1774 * doc/openacc-runtime-library-routines/accfree.rst: New file.
1775 * doc/openacc-runtime-library-routines/accgetcudastream.rst: New file.
1776 * doc/openacc-runtime-library-routines/accgetcurrentcudacontext.rst: New file.
1777 * doc/openacc-runtime-library-routines/accgetcurrentcudadevice.rst: New file.
1778 * doc/openacc-runtime-library-routines/accgetdevicenum.rst: New file.
1779 * doc/openacc-runtime-library-routines/accgetdevicetype.rst: New file.
1780 * doc/openacc-runtime-library-routines/accgetnumdevices.rst: New file.
1781 * doc/openacc-runtime-library-routines/accgetproperty.rst: New file.
1782 * doc/openacc-runtime-library-routines/acchostptr.rst: New file.
1783 * doc/openacc-runtime-library-routines/accinit.rst: New file.
1784 * doc/openacc-runtime-library-routines/accispresent.rst: New file.
1785 * doc/openacc-runtime-library-routines/accmalloc.rst: New file.
1786 * doc/openacc-runtime-library-routines/accmapdata.rst: New file.
1787 * doc/openacc-runtime-library-routines/accmemcpyfromdevice.rst: New file.
1788 * doc/openacc-runtime-library-routines/accmemcpytodevice.rst: New file.
1789 * doc/openacc-runtime-library-routines/accondevice.rst: New file.
1790 * doc/openacc-runtime-library-routines/accpresentorcopyin.rst: New file.
1791 * doc/openacc-runtime-library-routines/accpresentorcreate.rst: New file.
1792 * doc/openacc-runtime-library-routines/accproflookup.rst: New file.
1793 * doc/openacc-runtime-library-routines/accprofregister.rst: New file.
1794 * doc/openacc-runtime-library-routines/accprofunregister.rst: New file.
1795 * doc/openacc-runtime-library-routines/accregisterlibrary.rst: New file.
1796 * doc/openacc-runtime-library-routines/accsetcudastream.rst: New file.
1797 * doc/openacc-runtime-library-routines/accsetdevicenum.rst: New file.
1798 * doc/openacc-runtime-library-routines/accsetdevicetype.rst: New file.
1799 * doc/openacc-runtime-library-routines/accshutdown.rst: New file.
1800 * doc/openacc-runtime-library-routines/accunmapdata.rst: New file.
1801 * doc/openacc-runtime-library-routines/accupdatedevice.rst: New file.
1802 * doc/openacc-runtime-library-routines/accupdateself.rst: New file.
1803 * doc/openacc-runtime-library-routines/accwait.rst: New file.
1804 * doc/openacc-runtime-library-routines/accwaitall.rst: New file.
1805 * doc/openacc-runtime-library-routines/accwaitallasync.rst: New file.
1806 * doc/openacc-runtime-library-routines/accwaitasync.rst: New file.
1807 * doc/openmp-context-selectors.rst: New file.
1808 * doc/openmp-environment-variables.rst: New file.
1809 * doc/openmp-environment-variables/gompcpuaffinity.rst: New file.
1810 * doc/openmp-environment-variables/gompdebug.rst: New file.
1811 * doc/openmp-environment-variables/gomprtemsthreadpools.rst: New file.
1812 * doc/openmp-environment-variables/gompspincount.rst: New file.
1813 * doc/openmp-environment-variables/gompstacksize.rst: New file.
1814 * doc/openmp-environment-variables/ompcancellation.rst: New file.
1815 * doc/openmp-environment-variables/ompdefaultdevice.rst: New file.
1816 * doc/openmp-environment-variables/ompdisplayenv.rst: New file.
1817 * doc/openmp-environment-variables/ompdynamic.rst: New file.
1818 * doc/openmp-environment-variables/ompmaxactivelevels.rst: New file.
1819 * doc/openmp-environment-variables/ompmaxtaskpriority.rst: New file.
1820 * doc/openmp-environment-variables/ompnested.rst: New file.
1821 * doc/openmp-environment-variables/ompnumteams.rst: New file.
1822 * doc/openmp-environment-variables/ompnumthreads.rst: New file.
1823 * doc/openmp-environment-variables/ompplaces.rst: New file.
1824 * doc/openmp-environment-variables/ompprocbind.rst: New file.
1825 * doc/openmp-environment-variables/ompschedule.rst: New file.
1826 * doc/openmp-environment-variables/ompstacksize.rst: New file.
1827 * doc/openmp-environment-variables/omptargetoffload.rst: New file.
1828 * doc/openmp-environment-variables/ompteamsthreadlimit.rst: New file.
1829 * doc/openmp-environment-variables/ompthreadlimit.rst: New file.
1830 * doc/openmp-environment-variables/ompwaitpolicy.rst: New file.
1831 * doc/openmp-implementation-specifics.rst: New file.
1832 * doc/openmp-implementation-status.rst: New file.
1833 * doc/openmp-implementation-status/openmp-45.rst: New file.
1834 * doc/openmp-implementation-status/openmp-50.rst: New file.
1835 * doc/openmp-implementation-status/openmp-51.rst: New file.
1836 * doc/openmp-implementation-status/openmp-52.rst: New file.
1837 * doc/openmp-runtime-library-routines.rst: New file.
1838 * doc/openmp-runtime-library-routines/ompdestroylock.rst: New file.
1839 * doc/openmp-runtime-library-routines/ompdestroynestlock.rst: New file.
1840 * doc/openmp-runtime-library-routines/ompfulfillevent.rst: New file.
1841 * doc/openmp-runtime-library-routines/ompgetactivelevel.rst: New file.
1842 * doc/openmp-runtime-library-routines/ompgetancestorthreadnum.rst: New file.
1843 * doc/openmp-runtime-library-routines/ompgetcancellation.rst: New file.
1844 * doc/openmp-runtime-library-routines/ompgetdefaultdevice.rst: New file.
1845 * doc/openmp-runtime-library-routines/ompgetdevicenum.rst: New file.
1846 * doc/openmp-runtime-library-routines/ompgetdynamic.rst: New file.
1847 * doc/openmp-runtime-library-routines/ompgetinitialdevice.rst: New file.
1848 * doc/openmp-runtime-library-routines/ompgetlevel.rst: New file.
1849 * doc/openmp-runtime-library-routines/ompgetmaxactivelevels.rst: New file.
1850 * doc/openmp-runtime-library-routines/ompgetmaxtaskpriority.rst: New file.
1851 * doc/openmp-runtime-library-routines/ompgetmaxteams.rst: New file.
1852 * doc/openmp-runtime-library-routines/ompgetmaxthreads.rst: New file.
1853 * doc/openmp-runtime-library-routines/ompgetnested.rst: New file.
1854 * doc/openmp-runtime-library-routines/ompgetnumdevices.rst: New file.
1855 * doc/openmp-runtime-library-routines/ompgetnumprocs.rst: New file.
1856 * doc/openmp-runtime-library-routines/ompgetnumteams.rst: New file.
1857 * doc/openmp-runtime-library-routines/ompgetnumthreads.rst: New file.
1858 * doc/openmp-runtime-library-routines/ompgetprocbind.rst: New file.
1859 * doc/openmp-runtime-library-routines/ompgetschedule.rst: New file.
1860 * doc/openmp-runtime-library-routines/ompgetsupportedactivelevels.rst: New file.
1861 * doc/openmp-runtime-library-routines/ompgetteamnum.rst: New file.
1862 * doc/openmp-runtime-library-routines/ompgetteamsize.rst: New file.
1863 * doc/openmp-runtime-library-routines/ompgetteamsthreadlimit.rst: New file.
1864 * doc/openmp-runtime-library-routines/ompgetthreadlimit.rst: New file.
1865 * doc/openmp-runtime-library-routines/ompgetthreadnum.rst: New file.
1866 * doc/openmp-runtime-library-routines/ompgetwtick.rst: New file.
1867 * doc/openmp-runtime-library-routines/ompgetwtime.rst: New file.
1868 * doc/openmp-runtime-library-routines/ompinfinal.rst: New file.
1869 * doc/openmp-runtime-library-routines/ompinitlock.rst: New file.
1870 * doc/openmp-runtime-library-routines/ompinitnestlock.rst: New file.
1871 * doc/openmp-runtime-library-routines/ompinparallel.rst: New file.
1872 * doc/openmp-runtime-library-routines/ompisinitialdevice.rst: New file.
1873 * doc/openmp-runtime-library-routines/ompsetdefaultdevice.rst: New file.
1874 * doc/openmp-runtime-library-routines/ompsetdynamic.rst: New file.
1875 * doc/openmp-runtime-library-routines/ompsetlock.rst: New file.
1876 * doc/openmp-runtime-library-routines/ompsetmaxactivelevels.rst: New file.
1877 * doc/openmp-runtime-library-routines/ompsetnested.rst: New file.
1878 * doc/openmp-runtime-library-routines/ompsetnestlock.rst: New file.
1879 * doc/openmp-runtime-library-routines/ompsetnumteams.rst: New file.
1880 * doc/openmp-runtime-library-routines/ompsetnumthreads.rst: New file.
1881 * doc/openmp-runtime-library-routines/ompsetschedule.rst: New file.
1882 * doc/openmp-runtime-library-routines/ompsetteamsthreadlimit.rst: New file.
1883 * doc/openmp-runtime-library-routines/omptestlock.rst: New file.
1884 * doc/openmp-runtime-library-routines/omptestnestlock.rst: New file.
1885 * doc/openmp-runtime-library-routines/ompunsetlock.rst: New file.
1886 * doc/openmp-runtime-library-routines/ompunsetnestlock.rst: New file.
1887 * doc/reporting-bugs.rst: New file.
1888 * doc/the-libgomp-abi.rst: New file.
1889 * doc/the-libgomp-abi/implementing-atomic-construct.rst: New file.
1890 * doc/the-libgomp-abi/implementing-barrier-construct.rst: New file.
1891 * doc/the-libgomp-abi/implementing-critical-construct.rst: New file.
1892 * doc/the-libgomp-abi/implementing-firstprivate-lastprivate-copyin-and-copyprivate-clauses.rst:
1893 New file.
1894 * doc/the-libgomp-abi/implementing-flush-construct.rst: New file.
1895 * doc/the-libgomp-abi/implementing-for-construct.rst: New file.
1896 * doc/the-libgomp-abi/implementing-master-construct.rst: New file.
1897 * doc/the-libgomp-abi/implementing-openaccs-parallel-construct.rst: New file.
1898 * doc/the-libgomp-abi/implementing-ordered-construct.rst: New file.
1899 * doc/the-libgomp-abi/implementing-parallel-construct.rst: New file.
1900 * doc/the-libgomp-abi/implementing-private-clause.rst: New file.
1901 * doc/the-libgomp-abi/implementing-reduction-clause.rst: New file.
1902 * doc/the-libgomp-abi/implementing-sections-construct.rst: New file.
1903 * doc/the-libgomp-abi/implementing-single-construct.rst: New file.
1904 * doc/the-libgomp-abi/implementing-threadprivate-construct.rst: New file.
1905
89d0a14a
JJ
19062022-11-04 Thomas Schwinge <thomas@codesourcery.com>
1907
1908 * libgomp-plugin.h (OFFLOAD_TARGET_TYPE_INTEL_MIC): Remove.
1909 * libgomp.texi (OpenMP Context Selectors): Remove Intel MIC
1910 documentation.
1911 * plugin/configfrag.ac <enable_offload_targets>
1912 [*-intelmic-* | *-intelmicemul-*]: Remove.
1913 * configure: Regenerate.
1914 * testsuite/lib/libgomp.exp (libgomp_init): Remove 'liboffloadmic'
1915 handling.
1916 (offload_target_to_openacc_device_type)
1917 [$offload_target = *-intelmic*]: Remove.
1918 (check_effective_target_offload_device_intel_mic)
1919 (check_effective_target_offload_device_any_intel_mic): Remove.
1920 * testsuite/libgomp.c-c++-common/on_device_arch.h
1921 (device_arch_intel_mic, on_device_arch_intel_mic, any_device_arch)
1922 (any_device_arch_intel_mic): Remove.
1923 * testsuite/libgomp.c-c++-common/target-45.c: Remove
1924 'offload_device_any_intel_mic' XFAIL.
1925 * testsuite/libgomp.fortran/target10.f90: Likewise.
1926
d29260ce
GA
19272022-11-03 Tobias Burnus <tobias@codesourcery.com>
1928
1929 * testsuite/libgomp.fortran/target-11.f90: New test.
1930 * testsuite/libgomp.fortran/target-13.f90: New test.
1931
58035eee
GA
19322022-11-02 Thomas Schwinge <thomas@codesourcery.com>
1933
1934 PR libgomp/106643
1935 PR fortran/96668
1936 * oacc-mem.c (goacc_enter_data_internal): Support
1937 OpenACC 'declare create' with Fortran allocatable arrays, part II.
1938 * testsuite/libgomp.oacc-fortran/declare-allocatable-array_descriptor-1-directive.f90:
1939 Adjust.
1940 * testsuite/libgomp.oacc-fortran/pr106643-1.f90: New.
1941
19422022-11-02 Thomas Schwinge <thomas@codesourcery.com>
1943
1944 PR libgomp/106643
1945 * oacc-mem.c (goacc_enter_data_internal): Support
1946 OpenACC 'declare create' with Fortran allocatable arrays, part I.
1947 * testsuite/libgomp.oacc-fortran/declare-allocatable-1-directive.f90:
1948 New.
1949 * testsuite/libgomp.oacc-fortran/declare-allocatable-array_descriptor-1-directive.f90:
1950 New.
1951
19522022-11-02 Thomas Schwinge <thomas@codesourcery.com>
1953
1954 * testsuite/libgomp.oacc-fortran/declare-allocatable-array_descriptor-1-runtime.f90:
1955 New.
1956
19572022-11-02 Thomas Schwinge <thomas@codesourcery.com>
1958
1959 * testsuite/libgomp.oacc-fortran/declare-allocatable-1-runtime.f90:
1960 New.
1961
19622022-11-02 Cesar Philippidis <cesar@codesourcery.com>
1963 Thomas Schwinge <thomas@codesourcery.com>
1964
1965 * testsuite/libgomp.oacc-fortran/declare-allocatable-1.f90: New.
1966
3055829a
GA
19672022-10-28 Julian Brown <julian@codesourcery.com>
1968 Thomas Schwinge <thomas@codesourcery.com>
1969
1970 PR middle-end/90115
1971 * testsuite/libgomp.oacc-fortran/declare-1.f90: Adjust scan output.
1972 * testsuite/libgomp.oacc-fortran/host_data-5.F90: Likewise.
1973 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
1974 * testsuite/libgomp.oacc-fortran/print-1.f90: Likewise.
1975 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
1976
4e939ae1
GA
19772022-10-24 Thomas Schwinge <thomas@codesourcery.com>
1978
1979 * plugin/plugin-nvptx.c (nvptx_open_device): Initialize
1980 'ptx_dev->rev_data'.
1981
19822022-10-24 Tobias Burnus <tobias@codesourcery.com>
1983
1984 * config/nvptx/icv-device.c (GOMP_DEVICE_NUM_VAR): Remove
1985 'static' for this variable.
1986 * config/nvptx/libgomp-nvptx.h: New file.
1987 * config/nvptx/target.c: Include it.
1988 (GOMP_ADDITIONAL_ICVS): Declare extern var.
1989 (GOMP_REV_OFFLOAD_VAR): Declare var.
1990 (GOMP_target_ext): Handle reverse offload.
1991 * libgomp-plugin.h (GOMP_PLUGIN_target_rev): New prototype.
1992 * libgomp-plugin.c (GOMP_PLUGIN_target_rev): New, call ...
1993 * target.c (gomp_target_rev): ... this new stub function.
1994 * libgomp.h (gomp_target_rev): Declare.
1995 * libgomp.map (GOMP_PLUGIN_1.4): New; add GOMP_PLUGIN_target_rev.
1996 * plugin/cuda-lib.def (cuMemHostAlloc): Add.
1997 * plugin/plugin-nvptx.c: Include libgomp-nvptx.h.
1998 (struct ptx_device): Add rev_data member.
1999 (nvptx_open_device): Remove async_engines query, last used in
2000 r10-304-g1f4c5b9b; add unified-address assert check.
2001 (GOMP_OFFLOAD_get_num_devices): Claim unified address
2002 support.
2003 (GOMP_OFFLOAD_load_image): Free rev_fn_table if no
2004 offload functions exist. Make offload var available
2005 on host and device.
2006 (rev_off_dev_to_host_cpy, rev_off_host_to_dev_cpy): New.
2007 (GOMP_OFFLOAD_run): Handle reverse offload.
2008
10439719
GA
20092022-10-21 Thomas Schwinge <thomas@codesourcery.com>
2010
2011 PR tree-optimization/107195
2012 PR target/107344
2013 * testsuite/libgomp.oacc-c-c++-common/nvptx-sese-1.c: Restore SESE
2014 regions checking.
2015
47a6ae56
GA
20162022-10-20 Tobias Burnus <tobias@codesourcery.com>
2017
2018 * testsuite/lib/libgomp.exp (check_effective_target_offload_device_gcn):
2019 New.
2020 * testsuite/libgomp.c-c++-common/on_device_arch.h (device_arch_gcn,
2021 on_device_arch_gcn): New.
2022 * testsuite/libgomp.c-c++-common/requires-4a.c: New test; copied from
2023 requires-4.c but using heap-allocated memory.
2024
20252022-10-20 Thomas Schwinge <thomas@codesourcery.com>
2026
2027 PR target/105421
2028 * testsuite/libgomp.oacc-c-c++-common/private-big-1.c: New.
2029
6237663c
GA
20302022-10-17 Thomas Schwinge <thomas@codesourcery.com>
2031
2032 * testsuite/libgomp.c/reverse-offload-sm30.c: Fix nvptx-specific
2033 '-foffload-options' syntax.
2034
621a911d
GA
20352022-10-13 Tobias Burnus <tobias@codesourcery.com>
2036
2037 * testsuite/libgomp.fortran/task-7.f90: New test.
2038 * testsuite/libgomp.fortran/task-8.f90: New test.
2039 * testsuite/libgomp.fortran/task-in-explicit-1.f90: New test.
2040 * testsuite/libgomp.fortran/task-in-explicit-2.f90: New test.
2041 * testsuite/libgomp.fortran/task-in-explicit-3.f90: New test.
2042 * testsuite/libgomp.fortran/task-reduction-17.f90: New test.
2043 * testsuite/libgomp.fortran/task-reduction-18.f90: New test.
2044
781f477a
GA
20452022-10-12 Jakub Jelinek <jakub@redhat.com>
2046
2047 * libgomp.texi (OpenMP 5.2): Fix up allocator -> allocate directive
2048 in deprecation bullet.
2049
20502022-10-12 Jakub Jelinek <jakub@redhat.com>
2051
2052 * omp.h.in (omp_in_explicit_task): Declare.
2053 * omp_lib.h.in (omp_in_explicit_task): Likewise.
2054 * omp_lib.f90.in (omp_in_explicit_task): New interface.
2055 * libgomp.map (OMP_5.2): New symbol version, export
2056 omp_in_explicit_task and omp_in_explicit_task_.
2057 * task.c (omp_in_explicit_task): New function.
2058 * fortran.c (omp_in_explicit_task): Add ialias_redirect.
2059 (omp_in_explicit_task_): New function.
2060 * libgomp.texi (OpenMP 5.2): Mark omp_in_explicit_task as implemented.
2061 * testsuite/libgomp.c-c++-common/task-in-explicit-1.c: New test.
2062 * testsuite/libgomp.c-c++-common/task-in-explicit-2.c: New test.
2063 * testsuite/libgomp.c-c++-common/task-in-explicit-3.c: New test.
2064
20652022-10-12 Jakub Jelinek <jakub@redhat.com>
2066
2067 * task.c (gomp_create_artificial_team): Fix up handling of invocations
2068 from within explicit task.
2069 * target.c (GOMP_target_ext): Likewise.
2070 * testsuite/libgomp.c/task-7.c: New test.
2071 * testsuite/libgomp.c/task-8.c: New test.
2072 * testsuite/libgomp.c-c++-common/task-reduction-17.c: New test.
2073 * testsuite/libgomp.c-c++-common/task-reduction-18.c: New test.
2074
20752022-10-12 Martin Liska <mliska@suse.cz>
2076
2077 * configure: Regenerate.
2078
ab332cd7
GA
20792022-10-11 Olivier Hainque <hainque@adacore.com>
2080 Olivier Hainque <hainque@adacore.com>
2081
2082 * configure: Regenerate.
2083
966010b2
GA
20842022-10-05 Tobias Burnus <tobias@codesourcery.com>
2085
2086 * libgomp.texi (OpenMP 5.1 Impl. Status): Mark 'assume' as 'Y'.
2087
85872a69
GA
20882022-10-04 Jakub Jelinek <jakub@redhat.com>
2089
2090 * libgomp.texi (Support begin/end declare target syntax in C/C++):
2091 Mark as implemented.
2092
3a221b73
GA
20932022-09-30 Tobias Burnus <tobias@codesourcery.com>
2094
2095 PR fortran/105318
2096 * testsuite/libgomp.fortran/is_device_ptr-2.f90: New test.
2097
9e79a25b
GA
20982022-09-28 Tobias Burnus <tobias@codesourcery.com>
2099
2100 * libgomp.texi (OpenMP 5.1): Mark 'assume' as implemented
2101 for C/C++. Remove duplicated 'begin declare target' entry.
2102
28a61ecd
GA
21032022-09-24 Jakub Jelinek <jakub@redhat.com>
2104
2105 PR c/106981
2106 * testsuite/libgomp.c-c++-common/pr106981.c: New test.
2107
ff822367
GA
21082022-09-14 Julian Brown <julian@codesourcery.com>
2109
2110 * testsuite/libgomp.oacc-c-c++-common/deep-copy-15.c: New test.
2111 * testsuite/libgomp.oacc-c-c++-common/deep-copy-16.c: New test.
2112 * testsuite/libgomp.oacc-c++/deep-copy-17.C: New test.
2113 * testsuite/libgomp.oacc-c-c++-common/deep-copy-arrayofstruct.c: Move
2114 test to here, make "run" test.
2115
1995a022
GA
21162022-09-13 Jakub Jelinek <jakub@redhat.com>
2117
2118 PR libgomp/106906
2119 * env.c (get_icv_member_addr): Cast false to void * before assigning
2120 it to icv_addr[1], and comment the whole assignment out.
2121
21222022-09-13 Tobias Burnus <tobias@codesourcery.com>
2123
2124 * libgomp.texi (gcn): Move misplaced -march=sm_30 remark to ...
2125 (nvptx): ... here.
2126
b5f09bd7
GA
21272022-09-12 Tobias Burnus <tobias@codesourcery.com>
2128
2129 * libgomp.texi (Offload-Target Specifics: nvptx): Document
2130 that reverse offload requires >= -march=sm_35.
2131 * testsuite/libgomp.c-c++-common/requires-4.c: Build for nvptx
2132 with -misa=sm_35.
2133 * testsuite/libgomp.c-c++-common/requires-5.c: Likewise.
2134 * testsuite/libgomp.c-c++-common/requires-6.c: Likewise.
2135 * testsuite/libgomp.c-c++-common/reverse-offload-1.c: Likewise.
2136 * testsuite/libgomp.fortran/reverse-offload-1.f90: Likewise.
2137 * testsuite/libgomp.c/reverse-offload-sm30.c: New test.
2138
21392022-09-12 Tobias Burnus <tobias@codesourcery.com>
2140
2141 * libgomp.texi (OpenMP 5.1 Impl. Status): Add two new minor items.
2142 (OpenMP 5.2 Impl. Status): Improve omp/omx/ompx wording.
2143
21442022-09-12 Jakub Jelinek <jakub@redhat.com>
2145
2146 PR libgomp/106894
2147 * testsuite/libgomp.c-c++-common/icv-6.c: Include string.h.
2148 (main): Avoid tests for which corresponding non-_ALL suffixed variable
2149 is in the environment, or for OMP_NUM_TEAMS on the device
2150 OMP_NUM_TEAMS_DEV_?.
2151
5b3496e2
GA
21522022-09-10 Iain Sandoe <iain@sandoe.co.uk>
2153
2154 * env.c (initialize_env): Include libiberty environ.h.
2155
861d1a11
GA
21562022-09-09 Tobias Burnus <tobias@codesourcery.com>
2157
2158 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_load_image): Read offload
2159 function address table '$offload_func_table' if rev_fn_table
2160 is not NULL.
2161
21622022-09-09 Tobias Burnus <tobias@codesourcery.com>
2163
2164 * plugin/plugin-gcn.c (GOMP_OFFLOAD_load_image): Read
2165 .offload_func_table to populate rev_fn_table when requested.
2166
21672022-09-09 Tobias Burnus <tobias@codesourcery.com>
2168
2169 * libgomp-plugin.h (GOMP_OFFLOAD_load_image): Add
2170 'uint64_t **rev_fn_table' argument.
2171 * oacc-host.c (host_load_image): Likewise.
2172 * plugin/plugin-gcn.c (GOMP_OFFLOAD_load_image): Likewise;
2173 currently unused.
2174 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_load_image): Likewise.
2175 * target.c (gomp_load_image_to_device): Update call but pass
2176 NULL for now.
2177
21782022-09-09 Jakub Jelinek <jakub@redhat.com>
2179
2180 PR libgomp/106894
2181 * env.c (initialize_env) <case PARSE_BIND>: Use char ** instead of
2182 char * for dest[1] initialization from params[1]. Formatting fixes.
2183
2e7ad70c
GA
21842022-09-08 Tobias Burnus <tobias@codesourcery.com>
2185
2186 PR fortran/106670
2187 * libgomp.texi (OpenMP 5.2): Add comment to ompx/omx entry.
2188
21892022-09-08 Tobias Burnus <tobias@codesourcery.com>
2190
2191 * libgomp.texi (OpenMP-Implementation Specifics): New; add libmemkind
2192 section; move OpenMP Context Selectors from ...
2193 (Offload-Target Specifics): ... here; add 'AMD Radeo (GCN)' and
2194 'nvptx' sections.
2195
21962022-09-08 Marcel Vollweiler <marcel@codesourcery.com>
2197
2198 * config/gcn/icv-device.c (omp_get_default_device): Return device-
2199 specific ICV.
2200 (omp_get_max_teams): Added for GCN devices.
2201 (omp_set_num_teams): Likewise.
2202 (ialias): Likewise.
2203 * config/nvptx/icv-device.c (omp_get_default_device): Return device-
2204 specific ICV.
2205 (omp_get_max_teams): Added for NVPTX devices.
2206 (omp_set_num_teams): Likewise.
2207 (ialias): Likewise.
2208 * env.c (struct gomp_icv_list): New struct to store entries of initial
2209 ICV values.
2210 (struct gomp_offload_icv_list): New struct to store entries of device-
2211 specific ICV values that are copied to the device and back.
2212 (struct gomp_default_icv_values): New struct to store default values of
2213 ICVs according to the OpenMP standard.
2214 (parse_schedule): Generalized for different variants of OMP_SCHEDULE.
2215 (print_env_var_error): Function that prints an error for invalid values
2216 for ICVs.
2217 (parse_unsigned_long_1): Removed getenv. Generalized.
2218 (parse_unsigned_long): Likewise.
2219 (parse_int_1): Likewise.
2220 (parse_int): Likewise.
2221 (parse_int_secure): Likewise.
2222 (parse_unsigned_long_list): Likewise.
2223 (parse_target_offload): Likewise.
2224 (parse_bind_var): Likewise.
2225 (parse_stacksize): Likewise.
2226 (parse_boolean): Likewise.
2227 (parse_wait_policy): Likewise.
2228 (parse_allocator): Likewise.
2229 (omp_display_env): Extended to output different variants of environment
2230 variables.
2231 (print_schedule): New helper function for omp_display_env which prints
2232 the values of run_sched_var.
2233 (print_proc_bind): New helper function for omp_display_env which prints
2234 the values of proc_bind_var.
2235 (enum gomp_parse_type): Collection of types used for parsing environment
2236 variables.
2237 (ENTRY): Preprocess string lengths of environment variables.
2238 (OMP_VAR_CNT): Preprocess table size.
2239 (OMP_HOST_VAR_CNT): Likewise.
2240 (INT_MAX_STR_LEN): Constant for the maximal number of digits of a device
2241 number.
2242 (gomp_get_icv_flag): Returns if a flag for a particular ICV is set.
2243 (gomp_set_icv_flag): Sets a flag for a particular ICV.
2244 (print_device_specific_icvs): New helper function for omp_display_env to
2245 print device specific ICV values.
2246 (get_device_num): New helper function for parse_device_specific.
2247 Extracts the device number from an environment variable name.
2248 (get_icv_member_addr): Gets the memory address for a particular member
2249 of an ICV struct.
2250 (gomp_get_initial_icv_item): Get a list item of gomp_initial_icv_list.
2251 (initialize_icvs): New function to initialize a gomp_initial_icvs
2252 struct.
2253 (add_initial_icv_to_list): Adds an ICV struct to gomp_initial_icv_list.
2254 (startswith): Checks if a string starts with a given prefix.
2255 (initialize_env): Extended to parse the new syntax of environment
2256 variables.
2257 * icv-device.c (omp_get_max_teams): Added.
2258 (ialias): Likewise.
2259 (omp_set_num_teams): Likewise.
2260 * icv.c (omp_set_num_teams): Moved to icv-device.c.
2261 (omp_get_max_teams): Likewise.
2262 (ialias): Likewise.
2263 * libgomp-plugin.h (GOMP_DEVICE_NUM_VAR): Removed.
2264 (GOMP_ADDITIONAL_ICVS): New target-side struct that
2265 holds the designated ICVs of the target device.
2266 * libgomp.h (enum gomp_icvs): Collection of ICVs.
2267 (enum gomp_device_num): Definition of device numbers for _ALL, _DEV, and
2268 no suffix.
2269 (enum gomp_env_suffix): Collection of possible suffixes of environment
2270 variables.
2271 (struct gomp_initial_icvs): Contains all ICVs for which we need to store
2272 initial values.
2273 (struct gomp_default_icv):New struct to hold ICVs for which we need
2274 to store initial values.
2275 (struct gomp_icv_list): Definition of a linked list that is used for
2276 storing ICVs for the devices and also for _DEV, _ALL, and without
2277 suffix.
2278 (struct gomp_offload_icvs): New struct to hold ICVs that are copied to
2279 a device.
2280 (struct gomp_offload_icv_list): Definition of a linked list that holds
2281 device-specific ICVs that are copied to devices.
2282 (gomp_get_initial_icv_item): Get a list item of gomp_initial_icv_list.
2283 (gomp_get_icv_flag): Returns if a flag for a particular ICV is set.
2284 * libgomp.texi: Updated.
2285 * plugin/plugin-gcn.c (GOMP_OFFLOAD_load_image): Extended to read
2286 further ICVs from the offload image.
2287 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_load_image): Likewise.
2288 * target.c (gomp_get_offload_icv_item): Get a list item of
2289 gomp_offload_icv_list.
2290 (get_gomp_offload_icvs): New. Returns the ICV values
2291 depending on the device num and the variable hierarchy.
2292 (gomp_load_image_to_device): Extended to copy further ICVs to a device.
2293 * testsuite/libgomp.c-c++-common/icv-5.c: New test.
2294 * testsuite/libgomp.c-c++-common/icv-6.c: New test.
2295 * testsuite/libgomp.c-c++-common/icv-7.c: New test.
2296 * testsuite/libgomp.c-c++-common/icv-8.c: New test.
2297 * testsuite/libgomp.c-c++-common/omp-display-env-1.c: New test.
2298 * testsuite/libgomp.c-c++-common/omp-display-env-2.c: New test.
2299
23002022-09-08 Jakub Jelinek <jakub@redhat.com>
2301
2302 * libgomp.texi (OpenMP 5.2): Mention that omp_cur_iteration is now
2303 fully supported.
2304 * testsuite/libgomp.c/doacross-4.c: New test.
2305 * testsuite/libgomp.c/doacross-5.c: New test.
2306 * testsuite/libgomp.c/doacross-6.c: New test.
2307 * testsuite/libgomp.c/doacross-7.c: New test.
2308
47d2dcd1
GA
23092022-09-05 Tobias Burnus <tobias@codesourcery.com>
2310
2311 * libgomp.texi (OpenMP 5.2): Update doacross/omp_cur_iteration status.
2312
16f542d6
GA
23132022-08-26 Tobias Burnus <tobias@codesourcery.com>
2314
2315 * libgomp.texi (OpenMP 5.0): Mark 'ancestor' as implemented but
2316 refer to 'requires'.
2317 * testsuite/libgomp.c-c++-common/reverse-offload-1-aux.c: New test.
2318 * testsuite/libgomp.c-c++-common/reverse-offload-1.c: New test.
2319 * testsuite/libgomp.fortran/reverse-offload-1-aux.f90: New test.
2320 * testsuite/libgomp.fortran/reverse-offload-1.f90: New test.
2321
0342f034
GA
23222022-08-17 Tobias Burnus <tobias@codesourcery.com>
2323
2324 PR middle-end/106548
2325 * testsuite/libgomp.c/linear-2.c: New test.
2326
23272022-08-17 Tobias Burnus <tobias@codesourcery.com>
2328
2329 * splay-tree.h: Fix splay_* macro unsetting if
2330 splay_tree_prefix is defined.
2331
b2bf0473
GA
23322022-07-29 Tobias Burnus <tobias@codesourcery.com>
2333
2334 * testsuite/libgomp.c-c++-common/pr106449-2.c: New test.
2335
23362022-07-29 Jakub Jelinek <jakub@redhat.com>
2337
2338 PR middle-end/106449
2339 * testsuite/libgomp.c-c++-common/pr106449.c: New test.
2340
43997608
GA
23412022-07-12 Tobias Burnus <tobias@codesourcery.com>
2342
2343 * target.c (gomp_target_init): Added tailing '\n' to gomp_debug.
2344
23452022-07-12 Thomas Schwinge <thomas@codesourcery.com>
2346
2347 PR middle-end/101551
2348 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: XFAIL
2349 'offloading_enabled' diagnostics issue.
2350
c72d4714
GA
23512022-07-11 Thomas Schwinge <thomas@codesourcery.com>
2352
2353 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Enhance
2354 '_Pragma' diagnostics verification.
2355
b53ebbc5
GA
23562022-07-10 Lewis Hyatt <lhyatt@gmail.com>
2357
2358 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Adapt for
2359 improved warning locations.
2360 * testsuite/libgomp.oacc-c-c++-common/vred2d-128.c: Likewise.
2361
0fe604a2
GA
23622022-07-08 Thomas Schwinge <thomas@codesourcery.com>
2363
2364 * testsuite/libgomp.c-c++-common/requires-1.c: Add 'dg-note's.
2365 * testsuite/libgomp.c-c++-common/requires-2.c: Likewise.
2366 * testsuite/libgomp.c-c++-common/requires-3.c: Likewise.
2367 * testsuite/libgomp.c-c++-common/requires-7.c: Likewise.
2368 * testsuite/libgomp.fortran/requires-1.f90: Likewise.
2369
6345c414
GA
23702022-07-07 Thomas Schwinge <thomas@codesourcery.com>
2371
2372 * target.c (GOMP_offload_register, GOMP_offload_unregister):
2373 Denote as legacy entry points.
2374 * testsuite/lib/libgomp.exp
2375 (check_effective_target_offload_target_any): New proc.
2376 * testsuite/libgomp.c-c++-common/requires-1.c: Enable for
2377 'offload_target_any'.
2378 * testsuite/libgomp.c-c++-common/requires-3.c: Likewise.
2379 * testsuite/libgomp.c-c++-common/requires-7.c: Likewise.
2380 * testsuite/libgomp.fortran/requires-1.f90: Likewise.
2381
23822022-07-07 Thomas Schwinge <thomas@codesourcery.com>
2383
2384 * testsuite/libgomp.c-c++-common/requires-4.c: Enhance testing.
2385 * testsuite/libgomp.c-c++-common/requires-5.c: Likewise.
2386
23872022-07-07 Thomas Schwinge <thomas@codesourcery.com>
2388
2389 * testsuite/libgomp.c-c++-common/requires-3.c: Adjust.
2390
4bc92c3b
GA
23912022-07-06 Thomas Schwinge <thomas@codesourcery.com>
2392
2393 * target.c (GOMP_offload_register_ver): Clarify 'target_data' ->
2394 'data'.
2395 (GOMP_offload_unregister_ver): Likewise. Fix up 'target_data'.
2396
8467574d
GA
23972022-07-04 Tobias Burnus <tobias@codesourcery.com>
2398 Jakub Jelinek <jakub@redhat.com>
2399
2400 * libgomp.texi (OpenMP 5.2): Mark linear-clause change as 'Y'.
2401
24022022-07-04 Tobias Burnus <tobias@codesourcery.com>
2403 Chung-Lin Tang <cltang@codesourcery.com>
2404 Thomas Schwinge <thomas@codesourcery.com>
2405
2406 * libgomp-plugin.h (GOMP_OFFLOAD_get_num_devices): Add
2407 omp_requires_mask arg.
2408 * plugin/plugin-gcn.c (GOMP_OFFLOAD_get_num_devices): Likewise;
2409 return -1 when device available but omp_requires_mask != 0.
2410 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_get_num_devices): Likewise.
2411 * oacc-host.c (host_get_num_devices, host_openacc_get_property):
2412 Update call.
2413 * oacc-init.c (resolve_device, acc_init_1, acc_shutdown_1,
2414 goacc_attach_host_thread_to_device, acc_get_num_devices,
2415 acc_set_device_num, get_property_any): Likewise.
2416 * target.c (omp_requires_mask): New global var.
2417 (gomp_requires_to_name): New.
2418 (GOMP_offload_register_ver): Handle passed omp_requires_mask.
2419 (gomp_target_init): Handle omp_requires_mask.
2420 * libgomp.texi (OpenMP 5.0): Update requires impl. status.
2421 (OpenMP 5.1): Add a missed item.
2422 (OpenMP 5.2): Mark linear-clause change as supported in C/C++.
2423 * testsuite/libgomp.c-c++-common/requires-1-aux.c: New test.
2424 * testsuite/libgomp.c-c++-common/requires-1.c: New test.
2425 * testsuite/libgomp.c-c++-common/requires-2-aux.c: New test.
2426 * testsuite/libgomp.c-c++-common/requires-2.c: New test.
2427 * testsuite/libgomp.c-c++-common/requires-3-aux.c: New test.
2428 * testsuite/libgomp.c-c++-common/requires-3.c: New test.
2429 * testsuite/libgomp.c-c++-common/requires-4-aux.c: New test.
2430 * testsuite/libgomp.c-c++-common/requires-4.c: New test.
2431 * testsuite/libgomp.c-c++-common/requires-5-aux.c: New test.
2432 * testsuite/libgomp.c-c++-common/requires-5.c: New test.
2433 * testsuite/libgomp.c-c++-common/requires-6.c: New test.
2434 * testsuite/libgomp.c-c++-common/requires-7-aux.c: New test.
2435 * testsuite/libgomp.c-c++-common/requires-7.c: New test.
2436 * testsuite/libgomp.fortran/requires-1-aux.f90: New test.
2437 * testsuite/libgomp.fortran/requires-1.f90: New test.
2438
ed974488
GA
24392022-07-01 Tobias Burnus <tobias@codesourcery.com>
2440
2441 * libgomp.texi (OpenMP 5.2): Mark target enter/exit data
2442 with fromto as implemented.
2443
fb29fdea
GA
24442022-06-28 Martin Liska <mliska@suse.cz>
2445
2446 * acinclude.m4: Fix typo in mold linker detection.
2447 * Makefile.in: Regenerate.
2448 * configure: Regenerate.
2449
de89b078
GA
24502022-06-21 Jakub Jelinek <jakub@redhat.com>
2451 Paul Iannetta <piannetta@kalrayinc.com>
2452
2453 PR libgomp/106045
2454 * testsuite/libgomp.c/target-31.c: Add private (i) clause.
2455
5a66d7dd
GA
24562022-06-17 Martin Liska <mliska@suse.cz>
2457
2458 * libgomp.texi: Add table header for new features of
2459 OpenMP 5.2.
2460
499b9c5f
GA
24612022-06-15 Jakub Jelinek <jakub@redhat.com>
2462
2463 * testsuite/libgomp.c-c++-common/get-mapped-ptr-1.c (main): Initialize
2464 q to ddress of an automatic variable. Use -5 instead of -1 in
2465 omp_get_mapped_ptr call. Add test with omp_initial_device.
2466 * testsuite/libgomp.fortran/get-mapped-ptr-1.f90 (main): Use -5 instead
2467 of -1 in omp_get_mapped_ptr call. Add test with omp_initial_device.
2468 Renumber stop arguments afterwards.
2469
c3642271
GA
24702022-06-13 Jakub Jelinek <jakub@redhat.com>
2471
2472 * omp.h.in (omp_initial_device, omp_invalid_device): New enumerators.
2473 * omp_lib.f90.in (omp_initial_device, omp_invalid_device): New
2474 parameters.
2475 * omp_lib.h.in (omp_initial_device, omp_invalid_device): Likewise.
2476 * target.c (resolve_device): Add remapped argument, handle
2477 GOMP_DEVICE_ICV only if remapped is true (and clear remapped),
2478 for negative values, treat GOMP_DEVICE_FALLBACK as fallback only
2479 if remapped, otherwise treat omp_initial_device that way. For
2480 omp_invalid_device, always emit gomp_fatal, even when
2481 OMP_TARGET_OFFLOAD isn't mandatory.
2482 (GOMP_target, GOMP_target_ext, GOMP_target_data, GOMP_target_data_ext,
2483 GOMP_target_update, GOMP_target_update_ext,
2484 GOMP_target_enter_exit_data): Pass true as remapped argument to
2485 resolve_device.
2486 (omp_target_alloc, omp_target_free, omp_target_is_present,
2487 omp_target_memcpy_check, omp_target_associate_ptr,
2488 omp_target_disassociate_ptr, omp_get_mapped_ptr,
2489 omp_target_is_accessible): Pass false as remapped argument to
2490 resolve_device. Treat omp_initial_device the same as
2491 gomp_get_num_devices (). Don't bypass resolve_device calls if
2492 device_num is negative.
2493 (omp_pause_resource): Treat omp_initial_device the same as
2494 gomp_get_num_devices (). Call resolve_device.
2495 * icv-device.c (omp_set_default_device): Always set to device_num
2496 even when it is negative.
2497 * libgomp.texi: Document that Conforming device numbers,
2498 omp_initial_device and omp_invalid_device is implemented.
2499 * testsuite/libgomp.c/target-41.c (main): Add test with
2500 omp_initial_device.
2501 * testsuite/libgomp.c/target-45.c: New test.
2502 * testsuite/libgomp.c/target-46.c: New test.
2503 * testsuite/libgomp.c/target-47.c: New test.
2504 * testsuite/libgomp.c-c++-common/target-is-accessible-1.c (main): Add
2505 test with omp_initial_device. Use -5 instead of -1 for negative value
2506 test.
2507 * testsuite/libgomp.fortran/target-is-accessible-1.f90 (main):
2508 Likewise. Reorder stop numbers.
2509
ef1e4d80
GA
25102022-06-10 Jakub Jelinek <jakub@redhat.com>
2511
2512 * allocator.c (gomp_init_memkind): Call dlopen with "libmemkind.so.0"
2513 rather than "libmemkind.so".
2514
25152022-06-10 Thomas Schwinge <thomas@codesourcery.com>
2516
2517 * plugin/Makefrag.am: Evaluate 'if PLUGIN_NVPTX_DYNAMIC' to true.
2518 * plugin/configfrag.ac (--with-cuda-driver)
2519 (--with-cuda-driver-include, --with-cuda-driver-lib)
2520 (CUDA_DRIVER_INCLUDE, CUDA_DRIVER_LIB, PLUGIN_NVPTX_CPPFLAGS)
2521 (PLUGIN_NVPTX_LDFLAGS, PLUGIN_NVPTX_LIBS, PLUGIN_NVPTX_DYNAMIC):
2522 Remove.
2523 * testsuite/libgomp-test-support.exp.in (cuda_driver_include)
2524 (cuda_driver_lib): Remove.
2525 * testsuite/lib/libgomp.exp (libgomp_init): Don't consider these.
2526 * Makefile.in: Regenerate.
2527 * configure: Likewise.
2528 * testsuite/Makefile.in: Likewise.
2529
e3bba42f
GA
25302022-06-09 Jakub Jelinek <jakub@redhat.com>
2531
2532 * config/linux/allocator.c: Fix up #include directive.
2533
25342022-06-09 Jakub Jelinek <jakub@redhat.com>
2535
2536 * allocator.c: Include dlfcn.h if LIBGOMP_USE_MEMKIND is defined.
2537 (enum gomp_memkind_kind): New type.
2538 (struct omp_allocator_data): Add memkind field if LIBGOMP_USE_MEMKIND
2539 is defined.
2540 (struct gomp_memkind_data): New type.
2541 (memkind_data, memkind_data_once): New variables.
2542 (gomp_init_memkind, gomp_get_memkind): New functions.
2543 (omp_init_allocator): Initialize data.memkind, don't fail for
2544 omp_high_bw_mem_space if libmemkind supports it.
2545 (omp_aligned_alloc, omp_free, omp_aligned_calloc, omp_realloc): Add
2546 memkind support of LIBGOMP_USE_MEMKIND is defined.
2547 * config/linux/allocator.c: New file.
2548
58b67140
GA
25492022-06-03 Tobias Burnus <tobias@codesourcery.com>
2550
2551 * libgomp.texi (OpenMP 5.2): Mark scope w/ firstprivate/allocate as Y.
2552 * testsuite/libgomp.fortran/scope-2.f90: New test.
2553
b168441c
GA
25542022-06-02 David Malcolm <dmalcolm@redhat.com>
2555
2556 * testsuite/lib/libgomp.exp: Add load_gcc_lib of scansarif.exp.
2557
820ead45
GA
25582022-05-31 Jakub Jelinek <jakub@redhat.com>
2559
2560 * testsuite/libgomp.c-c++-common/allocate-1.c (foo): Add testcase for
2561 scope construct with allocate clause.
2562 * testsuite/libgomp.c-c++-common/allocate-3.c (foo): Likewise.
2563 * testsuite/libgomp.c-c++-common/scope-2.c: New test.
2564
37b3b5da
GA
25652022-05-28 Tobias Burnus <tobias@codesourcery.com>
2566
2567 * libgomp.texi (OpenMP 5.2): Mark 'enter' clause as supported.
2568 * testsuite/libgomp.fortran/declare-target-1.f90: Extend to test
2569 explicit 'to' and 'enter' clause.
2570 * testsuite/libgomp.fortran/declare-target-2.f90: Update accordingly.
2571
25722022-05-28 Jakub Jelinek <jakub@redhat.com>
2573
2574 PR libgomp/105745
2575 * libgomp.h (GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC): Don't define for
2576 defined(HAVE__ALIGNED_MALLOC) case.
2577 * alloc.c (gomp_aligned_alloc): Move defined(HAVE__ALIGNED_MALLOC)
2578 handling as last option before fallback instead of first.
2579 (gomp_aligned_free): For defined(HAVE__ALIGNED_MALLOC) call
2580 _aligned_free.
2581
d9176e64
GA
25822022-05-27 Jakub Jelinek <jakub@redhat.com>
2583
2584 * testsuite/libgomp.c-c++-common/target-40.c: Modify some existing to
2585 clauses to enter.
2586 * testsuite/libgomp.c/target-41.c: Likewise.
2587
25882022-05-27 Tobias Burnus <tobias@codesourcery.com>
2589
2590 * libgomp.texi (Other new OpenMP 5.1 features): Add
2591 'begin declare target'.
2592 (Other new OpenMP 5.2 features): New.
2593
3dff965c
GA
25942022-05-25 Jakub Jelinek <jakub@redhat.com>
2595
2596 * task.c (gomp_task_run_post_handle_dependers): If empty_task
2597 is the last task taskwait depend depends on, wake it up.
2598 Similarly if it is the last child of a taskgroup, use atomic
2599 store instead of decrement and awak taskgroup wait if any.
2600 * testsuite/libgomp.c-c++-common/taskwait-depend-nowait-2.c: New test.
2601
768f49a2
GA
26022022-05-24 Andrew Stubbs <ams@codesourcery.com>
2603
2604 * plugin/plugin-gcn.c (EF_AMDGPU_MACH): Add
2605 EF_AMDGPU_MACH_AMDGCN_GFX90a.
2606 (gcn_gfx90a_s): New.
2607 (isa_hsa_name): Support gfx90a.
2608 (isa_code): Likewise.
2609
26102022-05-24 Tobias Burnus <tobias@codesourcery.com>
2611
2612 PR c/105378
2613 * libgomp.texi (OpenMP 5.1): Set 'taskwait nowait' to 'Y'.
2614 * testsuite/libgomp.fortran/taskwait-depend-nowait-1.f90: New.
2615
26162022-05-24 Jakub Jelinek <jakub@redhat.com>
2617
2618 PR c/105378
2619 * libgomp_g.h (GOMP_taskwait_depend_nowait): Declare.
2620 * libgomp.map (GOMP_taskwait_depend_nowait): Export at GOMP_5.1.1.
2621 * task.c (empty_task): New function.
2622 (gomp_task_run_post_handle_depend_hash): Declare earlier.
2623 (gomp_task_run_post_handle_depend): Declare.
2624 (GOMP_task): Optimize fn == empty_task if there is nothing to wait
2625 for.
2626 (gomp_task_run_post_handle_dependers): Optimize task->fn == empty_task.
2627 (GOMP_taskwait_depend_nowait): New function.
2628 * testsuite/libgomp.c-c++-common/taskwait-depend-nowait-1.c: New test.
2629
168fc8bd
GA
26302022-05-23 Tobias Burnus <tobias@codesourcery.com>
2631
2632 PR fortran/104949
2633 * target.c (gomp_map_vars_internal, copy_firstprivate_data):
2634 Support attach for GOMP_MAP_FIRSTPRIVATE.
2635 * testsuite/libgomp.fortran/target-firstprivate-1.f90: New test.
2636 * testsuite/libgomp.fortran/target-firstprivate-2.f90: New test.
2637 * testsuite/libgomp.fortran/target-firstprivate-3.f90: New test.
2638
57f2ce6a
GA
26392022-05-20 Marcel Vollweiler <marcel@codesourcery.com>
2640
2641 * libgomp.map: Added omp_target_memcpy_async and
2642 omp_target_memcpy_rect_async.
2643 * libgomp.texi: Both functions are now supported.
2644 * omp.h.in: Added omp_target_memcpy_async and
2645 omp_target_memcpy_rect_async.
2646 * omp_lib.f90.in: Added interfaces for both new functions.
2647 * omp_lib.h.in: Likewise.
2648 * target.c (ialias_redirect): Added for GOMP_task.
2649 (omp_target_memcpy): Restructured into check and copy part.
2650 (omp_target_memcpy_check): New helper function for omp_target_memcpy and
2651 omp_target_memcpy_async that checks requirements.
2652 (omp_target_memcpy_copy): New helper function for omp_target_memcpy and
2653 omp_target_memcpy_async that performs the memcpy.
2654 (omp_target_memcpy_async_helper): New helper function that is used in
2655 omp_target_memcpy_async for the asynchronous task.
2656 (omp_target_memcpy_async): Added.
2657 (omp_target_memcpy_rect): Restructured into check and copy part.
2658 (omp_target_memcpy_rect_check): New helper function for
2659 omp_target_memcpy_rect and omp_target_memcpy_rect_async that checks
2660 requirements.
2661 (omp_target_memcpy_rect_copy): New helper function for
2662 omp_target_memcpy_rect and omp_target_memcpy_rect_async that performs
2663 the memcpy.
2664 (omp_target_memcpy_rect_async_helper): New helper function that is used
2665 in omp_target_memcpy_rect_async for the asynchronous task.
2666 (omp_target_memcpy_rect_async): Added.
2667 * task.c (ialias): Added for GOMP_task.
2668 * testsuite/libgomp.c-c++-common/target-memcpy-async-1.c: New test.
2669 * testsuite/libgomp.c-c++-common/target-memcpy-async-2.c: New test.
2670 * testsuite/libgomp.c-c++-common/target-memcpy-rect-async-1.c: New test.
2671 * testsuite/libgomp.c-c++-common/target-memcpy-rect-async-2.c: New test.
2672 * testsuite/libgomp.fortran/target-memcpy-async-1.f90: New test.
2673 * testsuite/libgomp.fortran/target-memcpy-async-2.f90: New test.
2674 * testsuite/libgomp.fortran/target-memcpy-rect-async-1.f90: New test.
2675 * testsuite/libgomp.fortran/target-memcpy-rect-async-2.f90: New test.
2676
1cda629f
GA
26772022-05-18 Tobias Burnus <tobias@codesourcery.com>
2678
2679 * libgomp.texi (OpenMP 5.1): Set 'inoutset' to Y.
2680 (OpenMP Context Selectors): Add missing comma.
2681 * testsuite/libgomp.fortran/depend-5.f90: Add inoutset test.
2682 * testsuite/libgomp.fortran/depend-6.f90: Likewise.
2683 * testsuite/libgomp.fortran/depend-7.f90: Likewise.
2684 * testsuite/libgomp.fortran/depend-inoutset-1.f90: New test.
2685
3d9439b1
GA
26862022-05-17 Jakub Jelinek <jakub@redhat.com>
2687
2688 * libgomp.texi (OpenMP 5.1): Remove "Not inside target regions"
2689 comment for omp_display_env feature.
2690
26912022-05-17 Tobias Burnus <tobias@codesourcery.com>
2692
2693 * libgomp.texi (Offload-Target Specifics): New chapter; add section
2694 to document OpenMP context selectors.
2695
26962022-05-17 Jakub Jelinek <jakub@redhat.com>
2697
2698 * libgomp.h (struct gomp_task_depend_entry): Change is_in type
2699 from bool to unsigned char.
2700 * task.c (gomp_task_handle_depend): Handle GOMP_DEPEND_INOUTSET.
2701 Ignore dependencies where
2702 task->depend[i].is_in && task->depend[i].is_in == ent->is_in
2703 rather than just task->depend[i].is_in && ent->is_in. Remember
2704 whether GOMP_DEPEND_IN loop is needed and guard the loop with that
2705 conditional.
2706 (gomp_task_maybe_wait_for_dependencies): Handle GOMP_DEPEND_INOUTSET.
2707 Ignore dependencies where elem.is_in && elem.is_in == ent->is_in
2708 rather than just elem.is_in && ent->is_in.
2709 * testsuite/libgomp.c-c++-common/depend-1.c (test): Add task with
2710 inoutset depend-kind.
2711 * testsuite/libgomp.c-c++-common/depend-2.c (test): Likewise.
2712 * testsuite/libgomp.c-c++-common/depend-3.c (test): Likewise.
2713 * testsuite/libgomp.c-c++-common/depend-inoutset-1.c: New test.
2714
27152022-05-17 Tobias Burnus <tobias@codesourcery.com>
2716
2717 * libgomp.texi (OpenMP Implementation Status): Add 5.2 table.
2718
27192022-05-17 Tobias Burnus <tobias@codesourcery.com>
2720
2721 * libgomp.texi (OpenMP 5.1): Set omp_all_memory to 'Y'.
2722 * testsuite/libgomp.fortran/depend-5.f90: New test.
2723 * testsuite/libgomp.fortran/depend-6.f90: New test.
2724 * testsuite/libgomp.fortran/depend-7.f90: New test.
2725
702bd11f
GA
27262022-05-16 Marcel Vollweiler <marcel@codesourcery.com>
2727
2728 * testsuite/libgomp.c++/target-has-device-addr-7.C: New test.
2729 * testsuite/libgomp.c++/target-has-device-addr-8.C: New test.
2730 * testsuite/libgomp.c++/target-has-device-addr-9.C: New test.
2731
9df4ffe4
GA
27322022-05-13 Tobias Burnus <tobias@codesourcery.com>
2733
2734 * testsuite/libgomp.fortran/target-nowait-array-section.f90: New test.
2735
27362022-05-13 Tobias Burnus <tobias@codesourcery.com>
2737
2738 * testsuite/libgomp.fortran/target-nowait-array-section.f90: New test.
2739
27402022-05-13 Thomas Schwinge <thomas@codesourcery.com>
2741
2742 * plugin/Makefrag.am (libgomp_plugin_nvptx_la_CPPFLAGS)
2743 [PLUGIN_NVPTX_DYNAMIC]: Don't append '$(PLUGIN_NVPTX_CPPFLAGS)'.
2744 (libgomp_plugin_nvptx_la_LDFLAGS) [PLUGIN_NVPTX_DYNAMIC]: Don't
2745 append '$(PLUGIN_NVPTX_LDFLAGS)'.
2746 * Makefile.in: Regenerate.
2747
49ace834
GA
27482022-05-12 Thomas Schwinge <thomas@codesourcery.com>
2749
2750 * Makefile.am (libgomp_la_LIBADD): Initialize.
2751 * plugin/configfrag.ac (DL_LIBS): New.
2752 (PLUGIN_GCN_LIBS): Remove.
2753 (PLUGIN_NVPTX_LIBS): Don't set in the 'PLUGIN_NVPTX_DYNAMIC' case.
2754 * plugin/Makefrag.am (libgomp_la_LIBADD)
2755 (libgomp_plugin_gcn_la_LIBADD): Consider '$(DL_LIBS)'.
2756 (libgomp_plugin_nvptx_la_LIBADD) <PLUGIN_NVPTX_DYNAMIC>: Likewise.
2757 * Makefile.in: Regenerate.
2758 * config.h.in: Likewise.
2759 * configure: Likewise.
2760 * testsuite/Makefile.in: Likewise.
2761
27622022-05-12 Thomas Schwinge <thomas@codesourcery.com>
2763
2764 * plugin/Makefrag.am: Handle 'PLUGIN_NVPTX_DYNAMIC'.
2765 * plugin/configfrag.ac (PLUGIN_NVPTX_DYNAMIC): Change
2766 'AC_DEFINE_UNQUOTED' into 'AM_CONDITIONAL'.
2767 * plugin/plugin-nvptx.c: Split 'PLUGIN_NVPTX_DYNAMIC' into
2768 'PLUGIN_NVPTX_INCLUDE_SYSTEM_CUDA_H' and
2769 'PLUGIN_NVPTX_LINK_LIBCUDA'.
2770 * Makefile.in: Regenerate.
2771 * config.h.in: Likewise.
2772 * configure: Likewise.
2773
27742022-05-12 Thomas Schwinge <thomas@codesourcery.com>
2775
2776 * plugin/configfrag.ac: Don't 'AC_SUBST' and 'AC_DEFINE_UNQUOTED'
2777 for 'PLUGIN_GCN', 'PLUGIN_NVPTX'.
2778 * Makefile.in: Regenerate.
2779 * config.h.in: Likewise.
2780 * configure: Likewise.
2781 * testsuite/Makefile.in: Likewise.
2782
27832022-05-12 Jakub Jelinek <jakub@redhat.com>
2784
2785 * libgomp.h (struct gomp_task): Add depend_all_memory member.
2786 * task.c (gomp_init_task): Initialize depend_all_memory.
2787 (gomp_task_handle_depend): Handle omp_all_memory.
2788 (gomp_task_run_post_handle_depend_hash): Clear
2789 parent->depend_all_memory if equal to current task.
2790 (gomp_task_maybe_wait_for_dependencies): Handle omp_all_memory.
2791 * testsuite/libgomp.c-c++-common/depend-1.c: New test.
2792 * testsuite/libgomp.c-c++-common/depend-2.c: New test.
2793 * testsuite/libgomp.c-c++-common/depend-3.c: New test.
2794
d0d513b5
GA
27952022-05-11 Thomas Schwinge <thomas@codesourcery.com>
2796
2797 * plugin/configfrag.ac: Remove '--with-hsa-runtime',
2798 '--with-hsa-runtime-include', '--with-hsa-runtime-lib' processing.
2799 * Makefile.in: Regenerate.
2800 * configure: Likewise.
2801 * testsuite/Makefile.in: Likewise.
2802
28032022-05-11 Thomas Schwinge <thomas@codesourcery.com>
2804
2805 * plugin/Makefrag.am (libgomp_plugin_gcn_la_CPPFLAGS): Don't
2806 consider 'PLUGIN_GCN_CPPFLAGS'.
2807 (libgomp_plugin_gcn_la_LDFLAGS): Don't consider
2808 'PLUGIN_GCN_LDFLAGS'.
2809 * plugin/configfrag.ac (PLUGIN_GCN_CPPFLAGS, PLUGIN_GCN_LDFLAGS):
2810 Remove.
2811 * Makefile.in: Regenerate.
2812 * configure: Likewise.
2813 * testsuite/Makefile.in: Likewise.
2814
28152022-05-11 Thomas Schwinge <thomas@codesourcery.com>
2816
2817 * plugin/configfrag.ac (HSA_RUNTIME_CPPFLAGS)
2818 (HSA_RUNTIME_LDFLAGS): Remove.
2819 * configure: Regenerate.
2820
28212022-05-11 Thomas Schwinge <thomas@codesourcery.com>
2822
2823 * testsuite/lib/libgomp.exp (libgomp_init): Don't
2824 'append always_ld_library_path ":$hsa_runtime_lib"'.
2825 * testsuite/libgomp-test-support.exp.in (hsa_runtime_lib): Don't set.
2826
e8778989
GA
28272022-05-10 Thomas Schwinge <thomas@codesourcery.com>
2828
2829 * testsuite/libgomp.fortran/use_device_addr-5.f90: Fix up
2830 multi-device testing.
2831
ea3fbfda
GA
28322022-05-06 Marcel Vollweiler <marcel@codesourcery.com>
2833
2834 * libgomp.map: Added omp_target_is_accessible.
2835 * libgomp.texi: Tagged omp_target_is_accessible as supported.
2836 * omp.h.in: Added omp_target_is_accessible.
2837 * omp_lib.f90.in: Added interface for omp_target_is_accessible.
2838 * omp_lib.h.in: Likewise.
2839 * target.c (omp_target_is_accessible): Added implementation of
2840 omp_target_is_accessible.
2841 * testsuite/libgomp.c-c++-common/target-is-accessible-1.c: New test.
2842 * testsuite/libgomp.fortran/target-is-accessible-1.f90: New test.
2843
ab869e7f
GA
28442022-05-05 Sandra Loosemore <sandra@codesourcery.com>
2845
2846 * libgomp.texi (OpenMP 5.0): Feature is now fully supported.
2847
3e7db517
GA
28482022-05-04 Tobias Burnus <tobias@codesourcery.com>
2849
2850 * plugin/plugin-gcn.c (isa_matches_agent): Suggest -foffload-options.
2851
28522022-05-04 Tobias Burnus <tobias@codesourcery.com>
2853
2854 * testsuite/libgomp.fortran/use_device_addr-5.f90: New test.
2855
e66af28d
GA
28562022-05-03 Marcel Vollweiler <marcel@codesourcery.com>
2857
2858 * libgomp.map: Added omp_get_mapped_ptr.
2859 * libgomp.texi: Tagged omp_get_mapped_ptr as supported.
2860 * omp.h.in: Added omp_get_mapped_ptr.
2861 * omp_lib.f90.in: Added interface for omp_get_mapped_ptr.
2862 * omp_lib.h.in: Likewise.
2863 * target.c (omp_get_mapped_ptr): Added implementation of
2864 omp_get_mapped_ptr.
2865 * testsuite/libgomp.c-c++-common/get-mapped-ptr-1.c: New test.
2866 * testsuite/libgomp.c-c++-common/get-mapped-ptr-2.c: New test.
2867 * testsuite/libgomp.c-c++-common/get-mapped-ptr-3.c: New test.
2868 * testsuite/libgomp.c-c++-common/get-mapped-ptr-4.c: New test.
2869 * testsuite/libgomp.fortran/get-mapped-ptr-1.f90: New test.
2870 * testsuite/libgomp.fortran/get-mapped-ptr-2.f90: New test.
2871 * testsuite/libgomp.fortran/get-mapped-ptr-3.f90: New test.
2872 * testsuite/libgomp.fortran/get-mapped-ptr-4.f90: New test.
2873
6b6f53d8
GA
28742022-04-28 Thomas Schwinge <thomas@codesourcery.com>
2875
2876 PR fortran/104717
2877 * testsuite/libgomp.oacc-fortran/print-1.f90: Add OpenACC
2878 privatization scanning. For GCN offloading compilation, raise
2879 '-mgang-private-size'.
2880
01ad093b
GA
28812022-04-26 Jakub Jelinek <jakub@redhat.com>
2882
2883 PR libgomp/105358
2884 * work.c (gomp_init_work_share): Don't mask of adjustment for
2885 dynamic long long realignment if struct gomp_work_share has smaller
2886 alignof than long long.
2887 * loop.c (GOMP_loop_start): Don't use inline_ordered_team_ids if
2888 struct gomp_work_share has smaller alignof than long long or if
2889 sizeof (struct gomp_work_share) is smaller than
2890 INLINE_ORDERED_TEAM_IDS_OFF.
2891 * loop_ull.c (GOMP_loop_ull_start): Likewise.
2892 * sections.c (GOMP_sections2_start): Likewise.
2893
98de0da6
GA
28942022-04-25 Jakub Jelinek <jakub@redhat.com>
2895 Thomas Schwinge <thomas@codesourcery.com>
2896
2897 PR fortran/104717
2898 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Adjust.
2899
247bbed1
GA
29002022-04-13 Jakub Jelinek <jakub@redhat.com>
2901
2902 * libgomp.texi: Fix a typo - mutexinouset -> mutexinoutset.
2903
80eb8ec6
GA
29042022-04-06 Thomas Schwinge <thomas@codesourcery.com>
2905
2906 * plugin/cuda/cuda.h: Remove file.
2907 * plugin/plugin-nvptx.c [PLUGIN_NVPTX_DYNAMIC]: Include
2908 "cuda/cuda.h" instead of <cuda.h>.
2909 * plugin/configfrag.ac <PLUGIN_NVPTX_DYNAMIC>: Don't set
2910 'PLUGIN_NVPTX_CPPFLAGS'.
2911 * configure: Regenerate.
2912
9d84ed68
GA
29132022-04-05 Chung-Lin Tang <cltang@codesourcery.com>
2914
2915 * testsuite/libgomp.fortran/use_device_ptr-4.f90: New testcase.
2916
5e09bb1b
GA
29172022-04-04 Tom de Vries <tdevries@suse.de>
2918
2919 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Use
2920 on_device_arch_nvptx instead of offload_target_nvptx.
2921 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Same.
2922
8af4270d
GA
29232022-04-01 Tom de Vries <tdevries@suse.de>
2924
2925 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Define
2926 and use REC_DEPTH.
2927 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Same.
2928
29292022-04-01 Tom de Vries <tdevries@suse.de>
2930
2931 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-7.c: Fix
2932 num_workers check.
2933
9f774626
GA
29342022-03-29 Chenghua Xu <xuchenghua@loongson.cn>
2935 Lulu Cheng <chenglulu@loongson.cn>
2936
2937 * configure.tgt: Add LoongArch triplet.
2938
aab0127d
GA
29392022-03-28 Tom de Vries <tdevries@suse.de>
2940
2941 * plugin/configfrag.ac: Use /$(libexecdir:\$(exec_prefix)/%=%)/
2942 instead of /libexec/.
2943 * configure: Regenerate.
2944
31e989a2
GA
29452022-03-25 Tom de Vries <tdevries@suse.de>
2946
2947 PR libgomp/105042
2948 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Reduce
2949 execution time.
2950 * testsuite/libgomp.oacc-c-c++-common/vred2d-128.c: Same.
2951 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Same.
2952
d1ca63a1
GA
29532022-03-23 Tobias Burnus <tobias@codesourcery.com>
2954
2955 PR middle-end/104285
2956 * testsuite/libgomp.c++/target-same-name-2-a.C: New test.
2957 * testsuite/libgomp.c++/target-same-name-2-b.C: New test.
2958 * testsuite/libgomp.c++/target-same-name-2.C: New test.
2959 * testsuite/libgomp.c-c++-common/target-same-name-1-a.c: New test.
2960 * testsuite/libgomp.c-c++-common/target-same-name-1-b.c: New test.
2961 * testsuite/libgomp.c-c++-common/target-same-name-1.c: New test.
2962
a2287813
GA
29632022-03-22 Tom de Vries <tdevries@suse.de>
2964
2965 PR target/104916
2966 PR target/104783
2967 * testsuite/libgomp.c/pr104783-2.c: New test.
2968
8ca61ad1
GA
29692022-03-18 Tobias Burnus <tobias@codesourcery.com>
2970
2971 PR fortran/103039
2972 * testsuite/libgomp.fortran/associate4.f90: New test.
2973
29742022-03-18 Tom de Vries <tdevries@suse.de>
2975
2976 PR target/104952
2977 * testsuite/libgomp.c/pr104952-1.c: New test.
2978 * testsuite/libgomp.c/pr104952-2.c: New test.
2979
29802022-03-18 Jakub Jelinek <jakub@redhat.com>
2981
2982 * config/linux/affinity.c (gomp_affinity_init_numa_domains): Move seen
2983 variable next to pl variable.
2984
e9ea3016
GA
29852022-03-17 Thomas Schwinge <thomas@codesourcery.com>
2986
2987 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c:
2988 Enhance.
2989 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-g.c: Likewise.
2990 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
2991
29922022-03-17 Thomas Schwinge <thomas@codesourcery.com>
2993
2994 PR middle-end/90115
2995 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Enhance.
2996 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
2997
9fc8f278
GA
29982022-03-16 Marcel Vollweiler <marcel@codesourcery.com>
2999
3000 * fortran.c (omp_set_num_teams_8_): Call omp_set_num_teams instead of
3001 omp_set_max_active_levels.
3002 * testsuite/libgomp.fortran/icv-8.f90: New test.
3003
30042022-03-16 Thomas Schwinge <thomas@codesourcery.com>
3005
3006 PR testsuite/102841
3007 * testsuite/libgomp.oacc-c-c++-common/host_data-7.c: Adjust.
3008
b9756c08
GA
30092022-03-13 Tobias Burnus <tobias@codesourcery.com>
3010
3011 * libgomp.texi: Fix typo.
3012
57eeedda
GA
30132022-03-12 Thomas Schwinge <thomas@codesourcery.com>
3014
3015 PR middle-end/100280
3016 PR middle-end/104892
3017 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Adjust.
3018 * testsuite/libgomp.oacc-c-c++-common/default-1.c: Likewise.
3019 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
3020 Likewise.
3021 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction-1.c:
3022 Likewise.
3023 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
3024 * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
3025 * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90:
3026 Likewise.
3027
30282022-03-12 Thomas Schwinge <thomas@codesourcery.com>
3029
3030 PR middle-end/104892
3031 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c: Point
3032 to PR104892.
3033 * testsuite/libgomp.oacc-c-c++-common/default-1.c: Likewise,
3034 enable '--param=openacc-kernels=decompose' and adjust.
3035 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction-1.c:
3036 Likewise.
3037 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
3038 * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90:
3039 Likewise.
3040
30412022-03-12 Thomas Schwinge <thomas@codesourcery.com>
3042
3043 PR middle-end/90115
3044 * testsuite/libgomp.oacc-c-c++-common/default-1.c: Enhance.
3045 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction-1.c: Likewise.
3046 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
3047 * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90: Likewise.
3048
30492022-03-12 Thomas Schwinge <thomas@codesourcery.com>
3050
3051 PR middle-end/100280
3052 PR middle-end/104086
3053 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
3054 Merge this...
3055 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose.c:
3056 ..., and this...
3057 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: ... into
3058 this, and adjust.
3059 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
3060 Extend.
3061
5e28be89
GA
30622022-03-10 Hafiz Abid Qadeer <abidh@codesourcery.com>
3063
3064 * testsuite/libgomp.fortran/allocate-1.f90: Remove pool_size
3065 trait. Test last index in w and v array. Remove redundant
3066 assignment to V(1). Move alignment checks at the end of
3067 parallel region.
3068
30692022-03-10 Tom de Vries <tdevries@suse.de>
3070
3071 * testsuite/libgomp.c/pr104783.c: New test.
3072
30732022-03-10 Thomas Schwinge <thomas@codesourcery.com>
3074
3075 PR middle-end/90115
3076 PR middle-end/102330
3077 PR middle-end/104774
3078 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
3079 Enhance.
3080 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
3081 Adjust.
3082 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
3083 Likewise.
3084 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
3085 Likewise.
3086 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
3087 Likewise.
3088 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
3089 Likewise.
3090 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
3091 Likewise.
3092 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
3093 Likewise.
3094 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
3095 Likewise.
3096 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
3097 Likewise.
3098 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
3099 Likewise.
3100 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
3101 Likewise.
3102 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
3103 Likewise.
3104 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
3105 Likewise.
3106 * testsuite/libgomp.oacc-fortran/optional-private.f90: Likewise.
3107 * testsuite/libgomp.oacc-fortran/privatized-ref-1.f95: Likewise.
3108 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
3109
31102022-03-10 Thomas Schwinge <thomas@codesourcery.com>
3111
3112 PR middle-end/90115
3113 * testsuite/libgomp.oacc-fortran/routine-1.f90: Enhance.
3114 * testsuite/libgomp.oacc-fortran/routine-2.f90: Likewise.
3115 * testsuite/libgomp.oacc-fortran/routine-3.f90: Likewise.
3116 * testsuite/libgomp.oacc-fortran/routine-9.f90: Likewise.
3117
8d96e14c
GA
31182022-03-04 Thomas Schwinge <thomas@codesourcery.com>
3119
3120 PR testsuite/104791
3121 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c: Fix
3122 expected diagnostics.
3123
31242022-03-04 Thomas Schwinge <thomas@codesourcery.com>
3125
3126 PR middle-end/104784
3127 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
3128 Test with '--param=openacc-kernels=decompose'.
3129 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
3130 Likewise.
3131 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
3132 Likewise.
3133 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
3134 Likewise.
3135 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
3136 Likewise.
3137 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-1.c:
3138 Likewise.
3139 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-2.c:
3140 Likewise.
3141 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-3.c:
3142 Likewise.
3143 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-4.c:
3144 Likewise.
3145 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-5.c:
3146 Likewise.
3147 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-6.c:
3148 Likewise.
3149 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
3150 Likewise.
3151 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
3152 Likewise.
3153 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-1.c:
3154 Likewise.
3155 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
3156 Likewise.
3157 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
3158 Likewise.
3159 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
3160 Likewise.
3161 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
3162 Likewise.
3163 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
3164 Likewise.
3165 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
3166 Likewise.
3167 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
3168 Likewise.
3169 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
3170 Likewise.
3171 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
3172 Likewise.
3173 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
3174 Likewise.
3175 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-1.f90:
3176 Likewise.
3177 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-2.f90:
3178 Likewise.
3179 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-1.f90:
3180 Likewise.
3181 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-2.f90:
3182 Likewise.
3183 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-3.f90:
3184 Likewise.
3185 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-4.f90:
3186 Likewise.
3187 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-5.f90:
3188 Likewise.
3189 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-6.f90:
3190 Likewise.
3191 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-7.f90:
3192 Likewise.
3193
31942022-03-04 Thomas Schwinge <thomas@codesourcery.com>
3195
3196 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
3197 Test '-fopt-info-omp-all'.
3198 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
3199 Likewise.
3200 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
3201 Likewise.
3202 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
3203 Likewise.
3204 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
3205 Likewise.
3206 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-1.c:
3207 Likewise.
3208 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-2.c:
3209 Likewise.
3210 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-3.c:
3211 Likewise.
3212 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-4.c:
3213 Likewise.
3214 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-5.c:
3215 Likewise.
3216 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-6.c:
3217 Likewise.
3218 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
3219 Likewise.
3220 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
3221 Likewise.
3222 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-1.c:
3223 Likewise.
3224 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
3225 Likewise.
3226 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
3227 Likewise.
3228 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
3229 Likewise.
3230 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
3231 Likewise.
3232 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
3233 Likewise.
3234 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
3235 Likewise.
3236 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
3237 Likewise.
3238 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
3239 Likewise.
3240 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
3241 Likewise.
3242 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
3243 Likewise.
3244 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-1.f90:
3245 Likewise.
3246 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-2.f90:
3247 Likewise.
3248 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-1.f90:
3249 Likewise.
3250 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-2.f90:
3251 Likewise.
3252 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-3.f90:
3253 Likewise.
3254 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-4.f90:
3255 Likewise.
3256 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-5.f90:
3257 Likewise.
3258 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-6.f90:
3259 Likewise.
3260 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-7.f90:
3261 Likewise.
3262
32632022-03-04 Thomas Schwinge <thomas@codesourcery.com>
3264
3265 PR middle-end/100280
3266 PR middle-end/104132
3267 PR middle-end/104133
3268 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
3269 Extend.
3270
32712022-03-04 Thomas Schwinge <thomas@codesourcery.com>
3272
3273 PR middle-end/100280
3274 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: Adjust.
3275 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
3276 Likewise.
3277
32782022-03-04 Thomas Schwinge <thomas@codesourcery.com>
3279
3280 PR middle-end/100280
3281 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: Adjust.
3282 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
3283 Likewise.
3284
a35f1697
GA
32852022-02-28 Tom de Vries <tdevries@suse.de>
3286
3287 * testsuite/libgomp.c/declare-variant-3-sm30.c: Add -foffload=-mptx=_.
3288 * testsuite/libgomp.c/declare-variant-3-sm35.c: Same.
3289 * testsuite/libgomp.c/declare-variant-3-sm53.c: Same.
3290 * testsuite/libgomp.c/declare-variant-3-sm70.c: Same.
3291 * testsuite/libgomp.c/declare-variant-3-sm75.c: Same.
3292 * testsuite/libgomp.c/declare-variant-3-sm80.c: Same.
3293
756a6185
GA
32942022-02-24 Tom de Vries <tdevries@suse.de>
3295
3296 * testsuite/libgomp.c/declare-variant-3-sm30.c: New test.
3297 * testsuite/libgomp.c/declare-variant-3-sm35.c: New test.
3298 * testsuite/libgomp.c/declare-variant-3-sm53.c: New test.
3299 * testsuite/libgomp.c/declare-variant-3-sm70.c: New test.
3300 * testsuite/libgomp.c/declare-variant-3-sm75.c: New test.
3301 * testsuite/libgomp.c/declare-variant-3-sm80.c: New test.
3302 * testsuite/libgomp.c/declare-variant-3.h: New header file.
3303
2cfb33fc
GA
33042022-02-22 Thomas Schwinge <thomas@codesourcery.com>
3305
3306 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Fix OpenACC
3307 gang-redundant execution.
3308
33092022-02-22 Tom de Vries <tdevries@suse.de>
3310
3311 PR target/99555
3312 * config/nvptx/bar.c (generation_to_barrier): New function, copied
3313 from config/rtems/bar.c.
3314 (futex_wait, futex_wake): New function.
3315 (do_spin, do_wait): New function, copied from config/linux/wait.h.
3316 (gomp_barrier_wait_end, gomp_barrier_wait_last)
3317 (gomp_team_barrier_wake, gomp_team_barrier_wait_end):
3318 (gomp_team_barrier_wait_cancel_end, gomp_team_barrier_cancel): Remove
3319 and replace with include of config/linux/bar.c.
3320 * config/nvptx/bar.h (gomp_barrier_t): Add fields waiters and lock.
3321 (gomp_barrier_init): Init new fields.
3322 * testsuite/libgomp.c-c++-common/task-detach-6.c: Remove nvptx-specific
3323 workarounds.
3324 * testsuite/libgomp.c/pr99555-1.c: Same.
3325 * testsuite/libgomp.fortran/task-detach-6.f90: Same.
3326
33272022-02-22 Tom de Vries <tdevries@suse.de>
3328
3329 PR testsuite/104146
3330 * testsuite/libgomp.c++/pr96390.C: Add additional-option
3331 -foffload=-Wa,--verify for nvptx.
3332 * testsuite/libgomp.c-c++-common/pr96390.c: Same.
3333
875e493b
GA
33342022-02-15 Tobias Burnus <tobias@codesourcery.com>
3335
3336 * testsuite/libgomp.fortran/depend-4.f90: New test.
3337
a645583d
GA
33382022-02-10 Tobias Burnus <tobias@codesourcery.com>
3339
3340 PR c++/102204
3341 * testsuite/libgomp.c++/target-virtual-1.C: New test.
3342
33432022-02-10 Marcel Vollweiler <marcel@codesourcery.com>
3344
3345 * libgomp.texi: Updated entry for HAS_DEVICE_ADDR.
3346 * target.c (copy_firstprivate_data): Copy only if host address is not
3347 NULL.
3348 * testsuite/libgomp.c++/target-has-device-addr-2.C: New test.
3349 * testsuite/libgomp.c++/target-has-device-addr-4.C: New test.
3350 * testsuite/libgomp.c++/target-has-device-addr-5.C: New test.
3351 * testsuite/libgomp.c++/target-has-device-addr-6.C: New test.
3352 * testsuite/libgomp.c-c++-common/target-has-device-addr-1.c: New test.
3353 * testsuite/libgomp.c/target-has-device-addr-3.c: New test.
3354 * testsuite/libgomp.fortran/target-has-device-addr-1.f90: New test.
3355 * testsuite/libgomp.fortran/target-has-device-addr-2.f90: New test.
3356 * testsuite/libgomp.fortran/target-has-device-addr-3.f90: New test.
3357 * testsuite/libgomp.fortran/target-has-device-addr-4.f90: New test.
3358
2a2fda2d
GA
33592022-02-08 Jakub Jelinek <jakub@redhat.com>
3360
3361 PR libgomp/104385
3362 * task.c (gomp_task_run_post_handle_dependers): If parent is NULL,
3363 clear task->parent.
3364 * testsuite/libgomp.c/pr104385.c: New test.
3365
3c1cbde1
GA
33662022-02-04 Tobias Burnus <tobias@codesourcery.com>
3367
3368 * testsuite/libgomp.fortran/allocate-1.f90: Remove spurious
3369 STOP of previous commit.
3370
33712022-02-04 Tobias Burnus <tobias@codesourcery.com>
3372
3373 * testsuite/libgomp.fortran/allocate-1.c (is_64bit_aligned): Renamed
3374 from is_64bit_aligned_.
3375 * testsuite/libgomp.fortran/allocate-1.f90: Fix interface decl
3376 and use it, more implicit none, remove unused argument.
3377
682ede39
GA
33782022-02-03 David Seifert <soap@gentoo.org>
3379 Jakub Jelinek <jakub@redhat.com>
3380
3381 * configure.ac: Support --disable-werror.
3382 * configure: Regenerate.
3383
ae7e4af9
GA
33842022-02-01 Tom de Vries <tdevries@suse.de>
3385
3386 * testsuite/libgomp.oacc-c-c++-common/private-atomic-1.c: Remove
3387 PR83812 workaround.
3388 * testsuite/libgomp.oacc-fortran/private-atomic-1-vector.f90: Same.
3389 * testsuite/libgomp.oacc-fortran/private-atomic-1-worker.f90: Same.
3390
33912022-02-01 Tom de Vries <tdevries@suse.de>
3392
3393 * testsuite/libgomp.oacc-c-c++-common/broadcast-many.c: Reduce
3394 num_workers for nvidia accelerator to fix libgomp error 'insufficient
3395 resources'.
3396 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c:
3397 Same.
3398 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: Same.
3399
34002022-02-01 Tom de Vries <tdevries@suse.de>
3401
3402 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Reduce
3403 recursion depth.
3404 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Same.
3405
1bb52662
GA
34062022-01-31 Martin Liska <mliska@suse.cz>
3407
3408 * acinclude.m4: Detect *_ld_is_mold and use it.
3409 * configure: Regenerate.
3410
99f17e99
GA
34112022-01-27 Tobias Burnus <tobias@codesourcery.com>
3412
3413 * libgomp.texi (OpenMP 5.0): Update implementation status.
3414
9dd44357
GA
34152022-01-21 Thomas Schwinge <thomas@codesourcery.com>
3416
3417 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Strengthen.
3418 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-2.c: Likewise.
3419 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
3420 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
3421 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Likewise.
3422 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
3423 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
3424 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Likewise.
3425 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Likewise.
3426 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
3427 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Likewise.
3428 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: Likewise.
3429 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: Likewise.
3430 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Likewise.
3431 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: Likewise.
3432
fe1ad141
GA
34332022-01-19 Marcel Vollweiler <marcel@codesourcery.com>
3434
3435 * config/gcn/icv-device.c: Make GOMP_DEVICE_NUM_VAR public (remove
3436 "static") to make the device num available in the offload image.
3437
34382022-01-19 Martin Liska <mliska@suse.cz>
3439 Thomas Schwinge <thomas@codesourcery.com>
3440
3441 * testsuite/libgomp.oacc-c++/privatized-ref-2.C: Update scanning
3442 patterns.
3443 * testsuite/libgomp.oacc-c++/privatized-ref-3.C: Likewise.
3444 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c:
3445 Likewise.
3446 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: Likewise.
3447 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
3448 * testsuite/libgomp.oacc-c-c++-common/pr85486.c: Likewise.
3449 * testsuite/libgomp.oacc-c-c++-common/pr95270-1.c: Likewise.
3450 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-2.c:
3451 Likewise.
3452 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-1.c:
3453 Likewise.
3454 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-2.c:
3455 Likewise.
3456 * testsuite/libgomp.oacc-c-c++-common/vector-length-64-1.c:
3457 Likewise.
3458 * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90:
3459 Likewise.
3460 * testsuite/libgomp.oacc-fortran/derivedtypes-arrays-1.f90:
3461 Likewise.
3462 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Likewise.
3463 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
3464 * testsuite/libgomp.oacc-fortran/privatized-ref-1.f95: Likewise.
3465
7a761ae6
GA
34662022-01-18 Martin Liska <mliska@suse.cz>
3467
3468 * testsuite/libgomp.oacc-c++/privatized-ref-2.C: Update keyword
3469 in dg-warning.
3470 * testsuite/libgomp.oacc-c++/privatized-ref-3.C: Likewise.
3471 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Likewise.
3472 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: Likewise.
3473 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
3474 * testsuite/libgomp.oacc-c-c++-common/pr85486.c: Likewise.
3475 * testsuite/libgomp.oacc-c-c++-common/pr95270-1.c: Likewise.
3476 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-2.c: Likewise.
3477 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-1.c: Likewise.
3478 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-2.c: Likewise.
3479 * testsuite/libgomp.oacc-c-c++-common/vector-length-64-1.c: Likewise.
3480 * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90: Likewise.
3481 * testsuite/libgomp.oacc-fortran/derivedtypes-arrays-1.f90: Likewise.
3482 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Likewise.
3483 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
3484 * testsuite/libgomp.oacc-fortran/privatized-ref-1.f95: Likewise.
3485
fc829782
GA
34862022-01-17 Thomas Schwinge <thomas@codesourcery.com>
3487
3488 * testsuite/libgomp.oacc-c++/privatized-ref-2.C: Extend.
3489 * testsuite/libgomp.oacc-c++/privatized-ref-3.C: Likewise.
3490 * testsuite/libgomp.oacc-fortran/privatized-ref-1.f95: Likewise.
3491
34922022-01-17 Julian Brown <julian@codesourcery.com>
3493 Thomas Schwinge <thomas@codesourcery.com>
3494
3495 * testsuite/libgomp.oacc-fortran/privatized-ref-1.f95: New test.
3496 * testsuite/libgomp.oacc-c++/privatized-ref-2.C: New test.
3497 * testsuite/libgomp.oacc-c++/privatized-ref-3.C: New test.
3498
1e942d7c
GA
34992022-01-16 Kwok Cheung Yeung <kcy@codesourcery.com>
3500 Andrew Stubbs <ams@codesourcery.com>
3501
3502 * plugin/plugin-gcn.c (parse_target_attributes): Automatically set
3503 the number of teams and threads if necessary.
3504 (gcn_exec): Automatically set the number of gangs and workers if
3505 necessary.
3506
ad3f0d08
GA
35072022-01-13 Hafiz Abid Qadeer <abidh@codesourcery.com>
3508
3509 * testsuite/libgomp.fortran/allocate-1.c: New test.
3510 * testsuite/libgomp.fortran/allocate-1.f90: New test.
3511 * libgomp.texi: Remove string that says that allocate clause
3512 support is for C/C++ only.
3513
35142022-01-13 Thomas Schwinge <thomas@codesourcery.com>
3515
3516 * testsuite/libgomp.c-c++-common/on_device_arch.h
3517 (any_device_arch, any_device_arch_intel_mic): New.
3518 * testsuite/lib/libgomp.exp
3519 (check_effective_target_offload_device_any_intel_mic): New.
3520 * testsuite/libgomp.c-c++-common/target-45.c: Use it.
3521 * testsuite/libgomp.fortran/target10.f90: Likewise.
3522
35232022-01-13 Thomas Schwinge <thomas@codesourcery.com>
3524
3525 PR tree-optimization/102192
3526 * testsuite/libgomp.oacc-fortran/routine-10.f90: Document current
3527 '-Wuninitialized' diagnostics.
3528
35292022-01-13 Thomas Schwinge <thomas@codesourcery.com>
3530
3531 * testsuite/libgomp.oacc-c-c++-common/vred2d-128.c: Document
3532 current '-Wuninitialized' diagnostics.
3533 * testsuite/libgomp.oacc-fortran/data-5.f90: Likewise.
3534 * testsuite/libgomp.oacc-fortran/gemm-2.f90: Likewise.
3535 * testsuite/libgomp.oacc-fortran/gemm.f90: Likewise.
3536 * testsuite/libgomp.oacc-fortran/optional-reduction.f90: Likewise.
3537 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
3538 * testsuite/libgomp.oacc-fortran/pr70643.f90: Likewise.
3539 * testsuite/libgomp.oacc-fortran/pr96628-part1.f90: Likewise.
3540 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
3541 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
3542 * testsuite/libgomp.oacc-fortran/reduction-7.f90: Likewise.
3543 * testsuite/libgomp.oacc-fortran/reference-reductions.f90:
3544 Likewise.
3545
35462022-01-13 Thomas Schwinge <thomas@codesourcery.com>
3547
3548 * testsuite/libgomp.c/address-space-1.c: Remove 'dg-xfail-run-if'
3549 for 'offload_device_intel_mic'.
3550
35512022-01-13 Julian Brown <julian@codesourcery.com>
3552 Thomas Schwinge <thomas@codesourcery.com>
3553
3554 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: Remove GCN
3555 offloading execution XFAIL.
3556
35572022-01-13 Thomas Schwinge <thomas@codesourcery.com>
3558
3559 PR middle-end/100280
3560 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
3561 Update.
3562 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: Likewise.
3563 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
3564 Likewise.
3565
35662022-01-13 Thomas Schwinge <thomas@codesourcery.com>
3567
3568 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
3569 Enhance.
3570 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose.c:
3571 Likewise.
3572 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Likewise.
3573 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: Likewise.
3574 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-2.c: Likewise.
3575 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-3.c: Likewise.
3576 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
3577 Likewise.
3578 * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
3579 * testsuite/libgomp.oacc-fortran/asyncwait-2.f90: Likewise.
3580 * testsuite/libgomp.oacc-fortran/asyncwait-3.f90: Likewise.
3581 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Likewise.
3582
7d11b64b
GA
35832022-01-04 Tobias Burnus <tobias@codesourcery.com>
3584
3585 * testsuite/libgomp.c-c++-common/target-45.c: Iterate over all devices.
3586 * testsuite/libgomp.fortran/target10.f90: Likewise.
3587
35882022-01-04 Chung-Lin Tang <cltang@codesourcery.com>
3589
3590 * plugin/plugin-gcn.c (GOMP_OFFLOAD_load_image): Change uses of STRINGX
3591 into XSTRING when looking for GOMP_DEVICE_NUM_VAR in offload image.
3592 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_load_image): Likewise.
3593
a4ae8c37
GA
35942022-01-03 Jakub Jelinek <jakub@redhat.com>
3595
3596 * libgomp.texi: Bump @copying's copyright year.
3597
7f1239cb
GA
35982021-12-13 Tobias Burnus <tobias@codesourcery.com>
3599
3600 * libgomp.texi (OpenMP 5.1): Set Fortran support for atomic to 'Y'.
3601 * testsuite/libgomp.fortran/atomic-19.f90: New test.
3602
0bceef16
GA
36032021-12-10 Andrew Stubbs <ams@codesourcery.com>
3604
3605 * plugin/plugin-gcn.c (struct gcn_image_desc): Remove global_variables.
3606 (GOMP_OFFLOAD_load_image): Locate the offload variables via the
3607 table, not individual symbols.
3608
4b4839e3
GA
36092021-12-09 Chung-Lin Tang <cltang@codesourcery.com>
3610
3611 * testsuite/libgomp.c++/target-lambda-1.C: Only run under
3612 "target offload_device_nonshared_as"
3613 * testsuite/libgomp.c++/target-this-3.C: Likewise.
3614 * testsuite/libgomp.c++/target-this-4.C: Likewise.
3615
641ff219
GA
36162021-12-08 Chung-Lin Tang <cltang@codesourcery.com>
3617
3618 * target.c (gomp_map_vars_existing): Make sure attached pointer is
3619 not overwritten during cross-host/device copying.
3620 (gomp_update): Likewise.
3621 (gomp_exit_data): Likewise.
3622 * testsuite/libgomp.c++/target-11.C: Adjust testcase.
3623 * testsuite/libgomp.c++/target-12.C: Likewise.
3624 * testsuite/libgomp.c++/target-15.C: Likewise.
3625 * testsuite/libgomp.c++/target-16.C: Likewise.
3626 * testsuite/libgomp.c++/target-17.C: Likewise.
3627 * testsuite/libgomp.c++/target-21.C: Likewise.
3628 * testsuite/libgomp.c++/target-23.C: Likewise.
3629 * testsuite/libgomp.c/target-23.c: Likewise.
3630 * testsuite/libgomp.c/target-29.c: Likewise.
3631 * testsuite/libgomp.c-c++-common/target-implicit-map-2.c: New testcase.
3632
36332021-12-08 Chung-Lin Tang <cltang@codesourcery.com>
3634
3635 PR middle-end/92120
3636 * libgomp.h (gomp_attach_pointer): Add bool parameter.
3637 * oacc-mem.c (acc_attach_async): Update call to gomp_attach_pointer.
3638 (goacc_enter_data_internal): Likewise.
3639 * target.c (gomp_map_vars_existing): Update assert condition to
3640 include GOMP_MAP_ATTACH_ZERO_LENGTH_ARRAY_SECTION.
3641 (gomp_map_pointer): Add 'bool allow_zero_length_array_sections'
3642 parameter, add support for mapping a pointer with NULL target.
3643 (gomp_attach_pointer): Add 'bool allow_zero_length_array_sections'
3644 parameter, add support for attaching a pointer with NULL target.
3645 (gomp_map_vars_internal): Update calls to gomp_map_pointer and
3646 gomp_attach_pointer, add handling for
3647 GOMP_MAP_ATTACH_ZERO_LENGTH_ARRAY_SECTION, and
3648 GOMP_MAP_POINTER_TO_ZERO_LENGTH_ARRAY_SECTION cases.
3649 * testsuite/libgomp.c++/target-23.C: New testcase.
3650 * testsuite/libgomp.c++/target-lambda-1.C: New testcase.
3651 * testsuite/libgomp.c++/target-lambda-2.C: New testcase.
3652 * testsuite/libgomp.c++/target-this-1.C: New testcase.
3653 * testsuite/libgomp.c++/target-this-2.C: New testcase.
3654 * testsuite/libgomp.c++/target-this-3.C: New testcase.
3655 * testsuite/libgomp.c++/target-this-4.C: New testcase.
3656 * testsuite/libgomp.c++/target-this-5.C: New testcase.
3657
70e4cb66
GA
36582021-12-04 Tobias Burnus <tobias@codesourcery.com>
3659
3660 * libgomp.texi (OpenMP 5.1): Update status.
3661
36622021-12-04 Tobias Burnus <tobias@codesourcery.com>
3663
3664 * libgomp.texi (OMP_PLACES): Extend description for OMP 5.1 changes.
3665
ea6ef320
GA
36662021-12-02 Chung-Lin Tang <cltang@codesourcery.com>
3667
3668 PR fortran/90030
3669 * testsuite/libgomp.oacc-fortran/pr90030.f90: New test.
3670 * testsuite/libgomp.fortran/pr90030.f90: New test.
3671
c177e806
GA
36722021-11-30 Kwok Cheung Yeung <kcy@codesourcery.com>
3673 Thomas Schwinge <thomas@codesourcery.com>
3674
3675 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Remove
3676 temporary skip.
3677
36782021-11-30 Cesar Philippidis <cesar@codesourcery.com>
3679 Thomas Schwinge <thomas@codesourcery.com>
3680
3681 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Temporarily
3682 skip.
3683
87cd82c8
GA
36842021-11-29 Richard Biener <rguenther@suse.de>
3685
3686 * oacc-plugin.c (GOMP_PLUGIN_acc_default_dim): Remove unreachable
3687 return.
3688
d9ca4b45
GA
36892021-11-24 Jakub Jelinek <jakub@redhat.com>
3690
3691 PR middle-end/103384
3692 * testsuite/libgomp.c/declare-variant-2.c: New test.
3693
483092d3
GA
36942021-11-18 David Edelsohn <dje.gcc@gmail.com>
3695
3696 * alloc.c (gomp_aligned_alloc): Fix typo.
3697
36982021-11-18 Jakub Jelinek <jakub@redhat.com>
3699
3700 PR libgomp/102838
3701 * libgomp.h (GOMP_USE_ALIGNED_WORK_SHARES): Define if
3702 GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC is defined and __AMDGCN__ is not.
3703 (struct gomp_work_share): Use GOMP_USE_ALIGNED_WORK_SHARES instead of
3704 GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC.
3705 * work.c (alloc_work_share, gomp_work_share_start): Likewise.
3706 * team.c (gomp_new_team): If GOMP_USE_ALIGNED_WORK_SHARES, use
3707 gomp_aligned_alloc instead of team_malloc.
3708
37092021-11-18 Jakub Jelinek <jakub@redhat.com>
3710
3711 PR libgomp/102838
3712 * alloc.c (gomp_aligned_alloc): Prefer _aligned_alloc over
3713 memalign over posix_memalign over aligned_alloc over fallback
3714 with malloc instead of aligned_alloc over _aligned_alloc over
3715 posix_memalign over memalign over fallback with malloc. For
3716 aligned_alloc, round up size up to multiple of al.
3717
6b1695f4
GA
37182021-11-16 Jakub Jelinek <jakub@redhat.com>
3719
3720 * libgomp.texi (OpenMP 5.1): Mark thread_limit clause to target
3721 construct as implemented.
3722
e2b57363
GA
37232021-11-15 Tobias Burnus <tobias@codesourcery.com>
3724
3725 * testsuite/libgomp.fortran/thread-limit-1.f90: New test.
3726
37272021-11-15 Jakub Jelinek <jakub@redhat.com>
3728
3729 * task.c (gomp_create_target_task): Copy args array as well.
3730 * target.c (gomp_target_fallback): Add args argument.
3731 Set gomp_icv (true)->thread_limit_var if thread_limit is present.
3732 (GOMP_target): Adjust gomp_target_fallback caller.
3733 (GOMP_target_ext): Likewise.
3734 (gomp_target_task_fn): Likewise.
3735 * config/nvptx/team.c (gomp_nvptx_main): Set
3736 gomp_global_icv.thread_limit_var.
3737 * testsuite/libgomp.c-c++-common/thread-limit-1.c: New test.
3738
37392021-11-15 Jakub Jelinek <jakub@redhat.com>
3740
3741 * config/nvptx/team.c (__gomp_team_num): Define as
3742 __attribute__((shared)) var.
3743 (gomp_nvptx_main): Initialize __gomp_team_num to 0.
3744 * config/nvptx/target.c (__gomp_team_num): Declare as
3745 extern __attribute__((shared)) var.
3746 (GOMP_teams4): Use __gomp_team_num as the team number instead of
3747 %ctaid.x. If first, initialize it to %ctaid.x. If num_teams_lower
3748 is bigger than num_blocks, use num_teams_lower teams and arrange for
3749 bumping of __gomp_team_num if !first and returning false once we run
3750 out of teams.
3751 * config/nvptx/teams.c (__gomp_team_num): Declare as
3752 extern __attribute__((shared)) var.
3753 (omp_get_team_num): Return __gomp_team_num value instead of %ctaid.x.
3754
37552021-11-15 Jakub Jelinek <jakub@redhat.com>
3756
3757 * testsuite/libgomp.c/teams-5.c: New test.
3758
af2852b9
GA
37592021-11-12 Jakub Jelinek <jakub@redhat.com>
3760
3761 PR target/103201
3762 * config/gcn/icv-device.c (omp_get_num_teams, omp_get_team_num): Move
3763 to ...
3764 * config/gcn/teams.c: ... here. New file.
3765
37662021-11-12 Chung-Lin Tang <cltang@codesourcery.com>
3767
3768 * target.c (gomp_map_vars_existing): Add 'bool implicit' parameter, add
3769 implicit map handling to allow a "superset" existing map as valid case.
3770 (get_kind): Adjust to filter out GOMP_MAP_IMPLICIT bits in return value.
3771 (get_implicit): New function to extract implicit status.
3772 (gomp_map_fields_existing): Adjust arguments in calls to
3773 gomp_map_vars_existing, and add uses of get_implicit.
3774 (gomp_map_vars_internal): Likewise.
3775 * testsuite/libgomp.c-c++-common/target-implicit-map-1.c: New test.
3776
37772021-11-12 Jakub Jelinek <jakub@redhat.com>
3778
3779 * libgomp_g.h (GOMP_teams4): Declare.
3780 * libgomp.map (GOMP_5.1): Export GOMP_teams4.
3781 * target.c (GOMP_teams4): New function.
3782 * config/nvptx/target.c (GOMP_teams): Remove.
3783 (GOMP_teams4): New function.
3784 * config/gcn/target.c (GOMP_teams): Remove.
3785 (GOMP_teams4): New function.
3786 * testsuite/libgomp.c/teams-4.c (main): Expect exactly 2
3787 teams instead of <= 2.
3788 * testsuite/libgomp.c-c++-common/teams-2.c: New test.
3789
b39265d4
GA
37902021-11-11 Tobias Burnus <tobias@codesourcery.com>
3791
3792 * testsuite/libgomp.fortran/teams-1.f90: New test.
3793
37942021-11-11 Jakub Jelinek <jakub@redhat.com>
3795
3796 * libgomp.h (struct gomp_thread): Add num_teams and team_num members.
3797 * team.c (struct gomp_thread_start_data): Likewise.
3798 (gomp_thread_start): Initialize thr->num_teams and thr->team_num.
3799 (gomp_team_start): Initialize start_data->num_teams and
3800 start_data->team_num. Update nthr->num_teams and nthr->team_num.
3801 * teams.c (gomp_num_teams, gomp_team_num): Remove.
3802 (GOMP_teams_reg): Set and restore thr->num_teams and thr->team_num
3803 instead of gomp_num_teams and gomp_team_num.
3804 (omp_get_num_teams): Use thr->num_teams + 1 instead of gomp_num_teams.
3805 (omp_get_team_num): Use thr->team_num instead of gomp_team_num.
3806 * testsuite/libgomp.c/teams-4.c: New test.
3807
38082021-11-11 Jakub Jelinek <jakub@redhat.com>
3809
3810 * testsuite/libgomp.c-c++-common/teams-1.c: New test.
3811
c9b1334e
GA
38122021-11-09 Thomas Schwinge <thomas@codesourcery.com>
3813
3814 * env.c (parse_gomp_openacc_dim): Restore parsing.
3815
0ef94462
GA
38162021-10-30 Tobias Burnus <tobias@codesourcery.com>
3817
3818 PR middle-end/102972
3819 * testsuite/libgomp.c-c++-common/icv-3.c: Nest API calls inside
3820 parallel construct.
3821 * testsuite/libgomp.c-c++-common/icv-4.c: Likewise.
3822 * testsuite/libgomp.c/target-3.c: Likewise.
3823 * testsuite/libgomp.c/target-5.c: Likewise.
3824 * testsuite/libgomp.c/target-6.c: Likewise.
3825 * testsuite/libgomp.c/target-teams-1.c: Likewise.
3826 * testsuite/libgomp.c/teams-1.c: Likewise.
3827 * testsuite/libgomp.c/thread-limit-2.c: Likewise.
3828 * testsuite/libgomp.c/thread-limit-3.c: Likewise.
3829 * testsuite/libgomp.c/thread-limit-4.c: Likewise.
3830 * testsuite/libgomp.c/thread-limit-5.c: Likewise.
3831 * testsuite/libgomp.fortran/icv-3.f90: Likewise.
3832 * testsuite/libgomp.fortran/icv-4.f90: Likewise.
3833 * testsuite/libgomp.fortran/teams1.f90: Likewise.
3834
4c61300f
GA
38352021-10-29 Aldy Hernandez <aldyh@redhat.com>
3836
3837 * testsuite/libgomp.graphite/force-parallel-4.c: Adjust for threading changes.
3838 * testsuite/libgomp.graphite/force-parallel-8.c: Same.
3839
04a2cf3f
GA
38402021-10-27 Jakub Jelinek <jakub@redhat.com>
3841
3842 * libgomp.texi (OpenMP 5.0): Mention that Non-rectangular loop nests
3843 aren't implemented for Fortran yet.
3844
38452021-10-27 Jakub Jelinek <jakub@redhat.com>
3846
3847 * testsuite/libgomp.c/loop-26.c: New test.
3848 * testsuite/libgomp.c/loop-27.c: New test.
3849
b621508d
GA
38502021-10-25 Tobias Burnus <tobias@codesourcery.com>
3851
3852 PR testsuite/102910
3853 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-2.c: Use __builtin_alloca
3854 instead of #include <alloca.h> + alloca.
3855
ae5c5406
GA
38562021-10-21 Chung-Lin Tang <cltang@codesourcery.com>
3857
3858 * libgomp.texi (Support of strictly structured blocks in Fortran):
3859 Adjust to 'Y'.
3860 * testsuite/libgomp.fortran/task-reduction-16.f90: Adjust testcase.
3861
674dda6b
GA
38622021-10-20 Chung-Lin Tang <cltang@codesourcery.com>
3863
3864 * testsuite/libgomp.fortran/target-in-reduction-1.f90: New test.
3865 * testsuite/libgomp.fortran/target-in-reduction-2.f90: New test.
3866
38672021-10-20 Jakub Jelinek <jakub@redhat.com>
3868
3869 PR libgomp/102838
3870 * libgomp.h (struct gomp_work_share_1st_cacheline): New type.
3871 (struct gomp_work_share): Only use aligned(64) attribute if
3872 GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC is defined, otherwise just
3873 add padding before lock to ensure lock is at offset 64 bytes
3874 into the structure.
3875 (gomp_workshare_struct_check1, gomp_workshare_struct_check2):
3876 New poor man's static assertions.
3877 * work.c (gomp_work_share_start): Use gomp_aligned_alloc instead of
3878 gomp_malloc if GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC.
3879
38802021-10-20 Aldy Hernandez <aldyh@redhat.com>
3881 Richard Biener <rguenther@suse.de>
3882
3883 * testsuite/libgomp.graphite/force-parallel-5.c: Remove xfail.
3884
ce4d1f63
GA
38852021-10-18 Jakub Jelinek <jakub@redhat.com>
3886
3887 * config/linux/affinity.c (gomp_affinity_init_numa_domains): Add
3888 && gomp_places_list_len < count after nfirst <= nlast loop condition.
3889
38902021-10-18 Tobias Burnus <tobias@codesourcery.com>
3891
3892 PR fortran/102086
3893 PR fortran/92189
3894 PR fortran/92621
3895 PR fortran/101308
3896 PR fortran/101309
3897 PR fortran/101635
3898 PR fortran/92482
3899 * testsuite/libgomp.fortran/optional-bind-c.f90: New test.
3900
93d183a5
GA
39012021-10-15 Jakub Jelinek <jakub@redhat.com>
3902
3903 * testsuite/libgomp.c/affinity-1.c (struct places): Change name field
3904 type from char [50] to const char *.
3905 (places_array): Add a testcase for simplified syntax place followed
3906 by length or length and stride.
3907
39082021-10-15 Jakub Jelinek <jakub@redhat.com>
3909
3910 * env.c (parse_one_place): Handle non-negative-number the same
3911 as { non-negative-number }. Reject even !number:1 and
3912 !number:1:stride or !place:1 or !place:1:stride instead of just
3913 length other than 1.
3914 * libgomp.texi (OpenMP 5.1): Document OMP_PLACES syntax extensions
3915 and OMP_NUM_TEAMS/OMP_TEAMS_THREAD_LIMIT and
3916 omp_{set_num,get_max}_teams/omp_{s,g}et_teams_thread_limit features
3917 as implemented.
3918 * testsuite/libgomp.c/affinity-1.c: Add a test for the 5.1 place
3919 simplified syntax.
3920
39212021-10-15 Jakub Jelinek <jakub@redhat.com>
3922
3923 * env.c (parse_schedule): For strtoul or strtoull calls which don't
3924 clearly reject return value 0 as invalid handle the case where end
3925 pointer is the same as first argument as invalid.
3926 (parse_unsigned_long_1): Likewise.
3927 (parse_one_place): Likewise.
3928 (parse_places_var): Likewise.
3929 (parse_stacksize): Likewise.
3930 (parse_spincount): Likewise.
3931 (parse_affinity): Likewise.
3932 (parse_gomp_openacc_dim): Likewise. Avoid strict aliasing violation.
3933 Make code valid C89.
3934 * config/linux/affinity.c (gomp_affinity_find_last_cache_level):
3935 For strtoul calls which don't clearly reject return value 0 as
3936 invalid handle the case where end pointer is the same as first
3937 argument as invalid.
3938 (gomp_affinity_init_level_1): Likewise.
3939 (gomp_affinity_init_numa_domains): Likewise.
3940 * config/rtems/proc.c (parse_thread_pools): Likewise.
3941
39422021-10-15 Jakub Jelinek <jakub@redhat.com>
3943
3944 * config/linux/affinity.c (gomp_affinity_init_level_1): For level 1
3945 after creating count places clean up and return immediately.
3946 * testsuite/libgomp.c/places-6.c: New test.
3947 * testsuite/libgomp.c/places-7.c: New test.
3948 * testsuite/libgomp.c/places-8.c: New test.
3949 * testsuite/libgomp.c/places-9.c: New test.
3950 * testsuite/libgomp.c/places-10.c: New test.
3951
39522021-10-15 Jakub Jelinek <jakub@redhat.com>
3953
3954 * env.c (parse_places_var): Handle numa_domains as level 5.
3955 * config/linux/affinity.c (gomp_affinity_init_numa_domains): New
3956 function.
3957 (gomp_affinity_init_level): Use it instead of
3958 gomp_affinity_init_level_1 for level == 5.
3959 * testsuite/libgomp.c/places-5.c: New test.
3960
39612021-10-15 Jakub Jelinek <jakub@redhat.com>
3962
3963 * env.c (parse_places_var): Handle ll_caches as level 4.
3964 * config/linux/affinity.c (gomp_affinity_find_last_cache_level): New
3965 function.
3966 (gomp_affinity_init_level_1): Handle level 4 as logical cpus sharing
3967 last level cache.
3968 (gomp_affinity_init_level): Likewise.
3969 * testsuite/libgomp.c/places-1.c: New test.
3970 * testsuite/libgomp.c/places-2.c: New test.
3971 * testsuite/libgomp.c/places-3.c: New test.
3972 * testsuite/libgomp.c/places-4.c: New test.
3973
5d5885c9
GA
39742021-10-14 Kwok Cheung Yeung <kcy@codesourcery.com>
3975
3976 * libgomp.texi (OpenMP 5.0): Update entry for declare variant
3977 directive.
3978
39792021-10-14 Kwok Cheung Yeung <kcy@codesourcery.com>
3980
3981 * testsuite/libgomp.fortran/declare-variant-1.f90: New test.
3982
52055987
GA
39832021-10-12 Julian Brown <julian@codesourcery.com>
3984
3985 * target.c (gomp_copy_host2dev): Release device lock on cbuf
3986 error path.
3987
39882021-10-12 Tobias Burnus <tobias@codesourcery.com>
3989
3990 * testsuite/libgomp.fortran/icv-3.f90: New.
3991 * testsuite/libgomp.fortran/icv-4.f90: New.
3992
39932021-10-12 Jakub Jelinek <jakub@redhat.com>
3994
3995 * libgomp.texi (omp_get_max_teams, omp_get_teams_thread_limit,
3996 omp_set_num_teams, omp_set_teams_thread_limit, OMP_NUM_TEAMS,
3997 OMP_TEAMS_THREAD_LIMIT): Document.
3998
39992021-10-12 Jakub Jelinek <jakub@redhat.com>
4000
4001 * libgomp.texi (omp_get_device_num): Move @node before omp_get_dynamic
4002 to avoid makeinfo warnings.
4003
40042021-10-12 Jakub Jelinek <jakub@redhat.com>
4005
4006 * testsuite/libgomp.c-c++-common/icv-3.c: New test.
4007 * testsuite/libgomp.c-c++-common/icv-4.c: New test.
4008
40092021-10-12 Jakub Jelinek <jakub@redhat.com>
4010
4011 PR libgomp/102628
4012 PR libgomp/102668
4013 * testsuite/libgomp.c-c++-common/alloc-9.c (main): Decrease
4014 allocation sizes from 420 to 320 and from 768 to 568.
4015 * testsuite/libgomp.fortran/alloc-11.f90: Likewise.
4016 * testsuite/libgomp.fortran/alloc-1.F90: Change expected alignment
4017 for cr from 16 to 4.
4018
40192021-10-12 Jakub Jelinek <jakub@redhat.com>
4020
4021 * testsuite/libgomp.c/scan-11.c: Remove option -fvect-cost-model=cheap.
4022 * testsuite/libgomp.c/scan-12.c: Likewise.
4023 * testsuite/libgomp.c/scan-13.c: Likewise.
4024 * testsuite/libgomp.c/scan-14.c: Likewise.
4025 * testsuite/libgomp.c/scan-15.c: Likewise.
4026 * testsuite/libgomp.c/scan-16.c: Likewise.
4027 * testsuite/libgomp.c/scan-17.c: Likewise.
4028 * testsuite/libgomp.c/scan-18.c: Likewise.
4029 * testsuite/libgomp.c/scan-19.c: Likewise.
4030 * testsuite/libgomp.c/scan-20.c: Likewise.
4031 * testsuite/libgomp.c/scan-21.c: Likewise.
4032 * testsuite/libgomp.c/scan-22.c: Likewise.
4033 * testsuite/libgomp.c++/scan-9.C: Likewise.
4034 * testsuite/libgomp.c++/scan-10.C: Likewise.
4035 * testsuite/libgomp.c++/scan-11.C: Likewise.
4036 * testsuite/libgomp.c++/scan-12.C: Likewise.
4037 * testsuite/libgomp.c++/scan-13.C: Likewise.
4038 * testsuite/libgomp.c++/scan-14.C: Likewise.
4039 * testsuite/libgomp.c++/scan-15.C: Likewise.
4040 * testsuite/libgomp.c++/scan-16.C: Likewise.
4041
40422021-10-12 Kewen Lin <linkw@linux.ibm.com>
4043
4044 * testsuite/libgomp.graphite/force-parallel-8.c: Add --param max-stores-to-sink=0.
4045
732d7638
GA
40462021-10-11 Marcel Vollweiler <marcel@codesourcery.com>
4047
4048 * allocator.c (omp_init_allocator): Replace omp_atv_sequential with
4049 omp_atv_serialized.
4050 * omp.h.in: Add deprecated flag for omp_atv_sequential.
4051 * omp_lib.f90.in: Add deprecated flag for omp_atv_sequential.
4052 * testsuite/libgomp.c-c++-common/alloc-10.c: New test.
4053 * testsuite/libgomp.fortran/alloc-12.f90: New test.
4054
40552021-10-11 Jakub Jelinek <jakub@redhat.com>
4056
4057 * omp.h.in (omp_set_num_teams, omp_get_max_teams,
4058 omp_set_teams_thread_limit, omp_get_teams_thread_limit): Declare.
4059 * omp_lib.f90.in (omp_set_num_teams, omp_get_max_teams,
4060 omp_set_teams_thread_limit, omp_get_teams_thread_limit): Declare.
4061 * omp_lib.h.in (omp_set_num_teams, omp_get_max_teams,
4062 omp_set_teams_thread_limit, omp_get_teams_thread_limit): Declare.
4063 * libgomp.h (gomp_nteams_var, gomp_teams_thread_limit_var): Declare.
4064 * libgomp.map (OMP_5.1): Export omp_get_max_teams{,_},
4065 omp_get_teams_thread_limit{,_}, omp_set_num_teams{,_,_8_} and
4066 omp_set_teams_thread_limit{,_,_8_}.
4067 * icv.c (omp_set_num_teams, omp_get_max_teams,
4068 omp_set_teams_thread_limit, omp_get_teams_thread_limit): New
4069 functions.
4070 * env.c (gomp_nteams_var, gomp_teams_thread_limit_var): Define.
4071 (omp_display_env): Print OMP_NUM_TEAMS and OMP_TEAMS_THREAD_LIMIT.
4072 (initialize_env): Handle OMP_NUM_TEAMS and OMP_TEAMS_THREAD_LIMIT env
4073 vars.
4074 * teams.c (GOMP_teams_reg): If thread_limit is not specified, use
4075 gomp_teams_thread_limit_var as fallback if not zero. If num_teams
4076 is not specified, use gomp_nteams_var.
4077 * fortran.c (omp_set_num_teams, omp_get_max_teams,
4078 omp_set_teams_thread_limit, omp_get_teams_thread_limit): Add
4079 ialias_redirect.
4080 (omp_set_num_teams_, omp_set_num_teams_8_, omp_get_max_teams_,
4081 omp_set_teams_thread_limit_, omp_set_teams_thread_limit_8_,
4082 omp_get_teams_thread_limit_): New functions.
4083
c9db17b8
GA
40842021-10-09 liuhongt <hongtao.liu@intel.com>
4085
4086 * testsuite/libgomp.c++/scan-10.C: Add option -fvect-cost-model=cheap.
4087 * testsuite/libgomp.c++/scan-11.C: Ditto.
4088 * testsuite/libgomp.c++/scan-12.C: Ditto.
4089 * testsuite/libgomp.c++/scan-13.C: Ditto.
4090 * testsuite/libgomp.c++/scan-14.C: Ditto.
4091 * testsuite/libgomp.c++/scan-15.C: Ditto.
4092 * testsuite/libgomp.c++/scan-16.C: Ditto.
4093 * testsuite/libgomp.c++/scan-9.C: Ditto.
4094 * testsuite/libgomp.c-c++-common/lastprivate-conditional-7.c: Ditto.
4095 * testsuite/libgomp.c-c++-common/lastprivate-conditional-8.c: Ditto.
4096 * testsuite/libgomp.c/scan-11.c: Ditto.
4097 * testsuite/libgomp.c/scan-12.c: Ditto.
4098 * testsuite/libgomp.c/scan-13.c: Ditto.
4099 * testsuite/libgomp.c/scan-14.c: Ditto.
4100 * testsuite/libgomp.c/scan-15.c: Ditto.
4101 * testsuite/libgomp.c/scan-16.c: Ditto.
4102 * testsuite/libgomp.c/scan-17.c: Ditto.
4103 * testsuite/libgomp.c/scan-18.c: Ditto.
4104 * testsuite/libgomp.c/scan-19.c: Ditto.
4105 * testsuite/libgomp.c/scan-20.c: Ditto.
4106 * testsuite/libgomp.c/scan-21.c: Ditto.
4107 * testsuite/libgomp.c/scan-22.c: Ditto.
4108
41092021-10-09 Jakub Jelinek <jakub@redhat.com>
4110
4111 * libgomp.texi (OpenMP 5.1): Mention implemented support for
4112 structured block sequences in C/C++. Mention support for
4113 unconstrained/reproducible modifiers on order clause.
4114 Mention partial (C/C++ only) support of extentensions to atomics
4115 construct. Mention partial (C/C++ on clause only) support of
4116 align/allocator modifiers on allocate clause.
4117
e3e07b89
GA
41182021-10-02 Tobias Burnus <tobias@codesourcery.com>
4119
4120 * testsuite/libgomp.fortran/order-reproducible-1.f90: New test
4121 based on libgomp.c-c++-common/order-reproducible-1.c.
4122 * testsuite/libgomp.fortran/order-reproducible-2.f90: Likewise.
4123 * testsuite/libgomp.fortran/my-usleep.c: New test.
4124
9d116bcc
GA
41252021-10-01 Tobias Burnus <tobias@codesourcery.com>
4126
4127 * testsuite/libgomp.fortran/alloc-10.f90: Fix alignment check.
4128 * testsuite/libgomp.fortran/alloc-7.f90: Fix array access.
4129 * testsuite/libgomp.fortran/alloc-8.f90: Likewise.
4130 * testsuite/libgomp.fortran/alloc-11.f90: New test for omp_realloc,
4131 based on libgomp.c-c++-common/alloc-9.c.
4132
41332021-10-01 Jakub Jelinek <jakub@redhat.com>
4134
4135 * testsuite/libgomp.c-c++-common/order-reproducible-1.c: New test.
4136 * testsuite/libgomp.c-c++-common/order-reproducible-2.c: New test.
4137
41382021-10-01 Jakub Jelinek <jakub@redhat.com>
4139
4140 * affinity-fmt.c (omp_get_team_num, omp_get_num_teams): Add
4141 ialias_redirect.
4142 * env.c (handle_omp_display_env): Use ialias_call.
4143 * icv-device.c: Move ialias right below each function.
4144 (omp_get_device_num): Use ialias_call.
4145 * fortran.c (omp_fulfill_event): Add ialias_redirect.
4146 * icv.c (omp_get_active_level): Add ialias_redirect.
4147
41482021-10-01 Jakub Jelinek <jakub@redhat.com>
4149
4150 * omp.h.in (omp_aligned_alloc, omp_aligned_calloc): Add
4151 __alloc_align__ (1) attribute.
4152 * testsuite/libgomp.c-c++-common/alloc-9.c: New test.
4153
24679983
GA
41542021-09-30 Tobias Burnus <tobias@codesourcery.com>
4155
4156 * testsuite/libgomp.fortran/alloc-7.f90: Add dg-prune-output
4157 for -fintrinsic-modules-path= warning of the C compiler.
4158 * testsuite/libgomp.fortran/alloc-9.f90: Likewise.
4159 * testsuite/libgomp.fortran/alloc-10.f90: Likewise.
4160
41612021-09-30 Tobias Burnus <tobias@codesourcery.com>
4162
4163 * libgomp.texi (OpenMP 5.1): Set implementation status to Y for
4164 omp_aligned_{,c}alloc and omp_{c,re}alloc routines.
4165 * omp_lib.f90.in (omp_aligned_alloc, omp_aligned_calloc, omp_calloc,
4166 omp_realloc): Add.
4167 * omp_lib.h.in (omp_aligned_alloc, omp_aligned_calloc, omp_calloc,
4168 omp_realloc): Add.
4169 * testsuite/libgomp.fortran/alloc-10.f90: New test.
4170 * testsuite/libgomp.fortran/alloc-6.f90: New test.
4171 * testsuite/libgomp.fortran/alloc-7.c: New test.
4172 * testsuite/libgomp.fortran/alloc-7.f90: New test.
4173 * testsuite/libgomp.fortran/alloc-8.f90: New test.
4174 * testsuite/libgomp.fortran/alloc-9.f90: New test.
4175
41762021-09-30 Jakub Jelinek <jakub@redhat.com>
4177
4178 * omp.h.in (omp_aligned_alloc, omp_calloc, omp_aligned_calloc,
4179 omp_realloc): New prototypes.
4180 (omp_alloc): Move after omp_free prototype, add __malloc__ (omp_free)
4181 attribute.
4182 * allocator.c: Include string.h.
4183 (omp_aligned_alloc): No longer static, add ialias. Add new_alignment
4184 variable and use it instead of alignment so that when retrying the old
4185 alignment is used again. Don't retry if new alignment is the same
4186 as old alignment, unless allocator had pool size.
4187 (omp_alloc, GOMP_alloc, GOMP_free): Use ialias_call.
4188 (omp_aligned_calloc, omp_calloc, omp_realloc): New functions.
4189 * libgomp.map (OMP_5.0.2): Export omp_aligned_alloc, omp_calloc,
4190 omp_aligned_calloc and omp_realloc.
4191 * testsuite/libgomp.c-c++-common/alloc-4.c (main): Add
4192 omp_aligned_alloc, omp_calloc and omp_aligned_calloc tests.
4193 * testsuite/libgomp.c-c++-common/alloc-5.c: New test.
4194 * testsuite/libgomp.c-c++-common/alloc-6.c: New test.
4195 * testsuite/libgomp.c-c++-common/alloc-7.c: New test.
4196 * testsuite/libgomp.c-c++-common/alloc-8.c: New test.
4197
fd133479
GA
41982021-09-28 Tobias Burnus <tobias@codesourcery.com>
4199
4200 PR libgomp/96661
4201 * configure.ac: Only check for int-type = 2*size_t support when
4202 building with Fortran support.
4203 * configure: Regenerate.
4204
42052021-09-28 Thomas Schwinge <thomas@codesourcery.com>
4206
4207 * testsuite/libgomp.oacc-fortran/if-1.f90: Adjust.
4208 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
4209
cf966403
GA
42102021-09-27 Aldy Hernandez <aldyh@redhat.com>
4211
4212 * team.c: Initialize start_data.
4213 * testsuite/libgomp.graphite/force-parallel-4.c: Adjust.
4214 * testsuite/libgomp.graphite/force-parallel-8.c: Adjust.
4215
42162021-09-27 Tobias Burnus <tobias@codesourcery.com>
4217
4218 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Change
4219 dg-message back to dg-note.
4220
42212021-09-27 Tobias Burnus <tobias@codesourcery.com>
4222
4223 PR fortran/94070
4224 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Update
4225 expected dg-note output.
4226
e4777439
GA
42272021-09-22 Tobias Burnus <tobias@codesourcery.com>
4228
4229 PR fortran/55534
4230 * testsuite/libgomp.fortran/fortran.exp (ALWAYS_CFLAGS): Revert
4231 r12-3722 by removing -Wno-missing-include-dirs.
4232 * testsuite/libgomp.oacc-fortran/fortran.exp (ALWAYS_CFLAGS): Likewise.
4233
42342021-09-22 Jakub Jelinek <jakub@redhat.com>
4235
4236 * testsuite/libgomp.c-c++-common/allocate-2.c: New test.
4237 * testsuite/libgomp.c-c++-common/allocate-3.c: New test.
4238
2c41dd82
GA
42392021-09-21 Tobias Burnus <tobias@codesourcery.com>
4240
4241 PR fortran/55534
4242 * testsuite/libgomp.fortran/fortran.exp: Add -Wno-missing-include-dirs
4243 to ALWAYS_CFLAGS.
4244 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
4245
cf74e7b5
GA
42462021-09-18 Jakub Jelinek <jakub@redhat.com>
4247
4248 * testsuite/libgomp.c++/default-1.C: New test.
4249 * testsuite/libgomp.c-c++-common/default-1.c: New test.
4250 * libgomp.texi (OpenMP 5.1): Mark "private and firstprivate argument
4251 to default clause in C and C++" as implemented.
4252
0a4cb439
GA
42532021-09-17 Julian Brown <julian@codesourcery.com>
4254
4255 * testsuite/libgomp.oacc-c-c++-common/broadcast-many.c: Update.
4256
42572021-09-17 Julian Brown <julian@codesourcery.com>
4258
4259 * testsuite/libgomp.oacc-c-c++-common/broadcast-many.c: New test.
4260
42612021-09-17 Jakub Jelinek <jakub@redhat.com>
4262
4263 * libgomp.texi (OpenMP 5.1): Spelling fix,
4264 declare variante -> declare variant.
4265
42662021-09-17 Jakub Jelinek <jakub@redhat.com>
4267
4268 * testsuite/libgomp.c-c++-common/atomic-19.c: Drop c effective target.
4269 Use /* */ comments instead of //.
4270 * testsuite/libgomp.c-c++-common/atomic-20.c: Likewise.
4271 * testsuite/libgomp.c-c++-common/atomic-21.c: Likewise.
4272 * testsuite/libgomp.c++/atomic-16.C: New test.
4273 * testsuite/libgomp.c++/atomic-17.C: New test.
4274
a26206ec
GA
42752021-09-10 Jakub Jelinek <jakub@redhat.com>
4276
4277 * testsuite/libgomp.c-c++-common/atomic-19.c: New test.
4278 * testsuite/libgomp.c-c++-common/atomic-20.c: New test.
4279 * testsuite/libgomp.c-c++-common/atomic-21.c: New test.
4280
b2748138
GA
42812021-09-07 Tobias Burnus <tobias@codesourcery.com>
4282
4283 * libgomp.texi (OpenMP Implementation Status): Extend
4284 OpenMP 5.0 section.
4285 (OpenACC Profiling Interface): Fix typo.
4286
42872021-09-07 Tobias Burnus <tobias@codesourcery.com>
4288
4289 * libgomp.texi (Enabling OpenMP): Refer to OMP spec in general
4290 not to 4.5; link to new section.
4291 (OpenMP Implementation Status): New.
4292
9f99555f
GA
42932021-09-06 Thomas Schwinge <thomas@codesourcery.com>
4294
4295 * testsuite/libgomp.c/target-43.c: '-latomic' for nvptx offloading.
4296
7b739540
GA
42972021-09-03 Tobias Burnus <tobias@codesourcery.com>
4298
4299 * testsuite/libgomp.c-c++-common/error-1.c: Use \r\n not \n\r in
4300 dg-output.
4301 * testsuite/libgomp.fortran/error-1.f90: Likewise.
4302
38b19c5b
GA
43032021-08-23 Thomas Schwinge <thomas@codesourcery.com>
4304 Jakub Jelinek <jakub@redhat.com>
4305
4306 * testsuite/libgomp.c/address-space-1.c: New file.
4307
43082021-08-23 Thomas Schwinge <thomas@codesourcery.com>
4309
4310 * testsuite/lib/libgomp.exp
4311 (check_effective_target_offload_target_intelmic): Remove 'proc'.
4312 (check_effective_target_offload_device_intel_mic): New 'proc'.
4313 * testsuite/libgomp.c-c++-common/on_device_arch.h
4314 (device_arch_intel_mic, on_device_arch_intel_mic): New.
4315 * testsuite/libgomp.c-c++-common/target-45.c: Use that for
4316 'dg-xfail-run-if'.
4317 * testsuite/libgomp.fortran/target10.f90: Likewise.
4318
43192021-08-23 Tobias Burnus <tobias@codesourcery.com>
4320
4321 * testsuite/libgomp.fortran/taskloop-4-a.f90: New test.
4322 * testsuite/libgomp.fortran/taskloop-4.f90: New test.
4323 * testsuite/libgomp.fortran/taskloop-5-a.f90: New test.
4324 * testsuite/libgomp.fortran/taskloop-5.f90: New test.
4325
43262021-08-23 Jakub Jelinek <jakub@redhat.com>
4327
4328 * taskloop.c (GOMP_taskloop): Handle GOMP_TASK_FLAG_STRICT.
4329 * testsuite/libgomp.c-c++-common/taskloop-4.c (main): Fix up comment.
4330 * testsuite/libgomp.c-c++-common/taskloop-5.c: New test.
4331
5b2876f9
GA
43322021-08-22 Thomas Schwinge <thomas@codesourcery.com>
4333
4334 * config/nvptx/error.c (fwrite, exit): Override, too.
4335 * testsuite/libgomp.c-c++-common/error-1.c: Add a minimum amount
4336 of offloading testing.
4337 * testsuite/libgomp.fortran/error-1.f90: Likewise.
4338
7c9e1645
GA
43392021-08-20 Tobias Burnus <tobias@codesourcery.com>
4340
4341 * testsuite/libgomp.fortran/error-1.f90: New test.
4342
43432021-08-20 Jakub Jelinek <jakub@redhat.com>
4344
4345 * libgomp.map (GOMP_5.1): Add GOMP_error and GOMP_warning.
4346 * libgomp_g.h (GOMP_warning, GOMP_error): Declare.
4347 * error.c (GOMP_warning, GOMP_error): New functions.
4348 * testsuite/libgomp.c-c++-common/error-1.c: New test.
4349
6e529985
GA
43502021-08-18 Tobias Burnus <tobias@codesourcery.com>
4351
4352 * omp_lib.f90.in (omp_alloc, omp_free, omp_target_alloc,
4353 omp_target_free. omp_target_is_present, omp_target_memcpy,
4354 omp_target_memcpy_rect, omp_target_associate_ptr,
4355 omp_target_disassociate_ptr): Add interface.
4356 * omp_lib.h.in (omp_alloc, omp_free, omp_target_alloc,
4357 omp_target_free. omp_target_is_present, omp_target_memcpy,
4358 omp_target_memcpy_rect, omp_target_associate_ptr,
4359 omp_target_disassociate_ptr): Add interface.
4360 * testsuite/libgomp.fortran/alloc-1.F90: Remove local
4361 interface block for omp_alloc + omp_free.
4362 * testsuite/libgomp.fortran/alloc-4.f90: Likewise.
4363 * testsuite/libgomp.fortran/refcount-1.f90: New test.
4364 * testsuite/libgomp.fortran/target-12.f90: New test.
4365
43662021-08-18 Jakub Jelinek <jakub@redhat.com>
4367
4368 * testsuite/libgomp.c-c++-common/nothing-1.c: New test.
4369
2d14d64b
GA
43702021-08-17 Tobias Burnus <tobias@codesourcery.com>
4371
4372 * testsuite/libgomp.fortran/scope-1.f90: New test.
4373 * testsuite/libgomp.fortran/task-reduction-16.f90: New test.
4374
43752021-08-17 Jakub Jelinek <jakub@redhat.com>
4376
4377 * Makefile.am (libgomp_la_SOURCES): Add scope.c
4378 * Makefile.in: Regenerated.
4379 * libgomp_g.h (GOMP_scope_start): Declare.
4380 * libgomp.map: Add GOMP_scope_start@@GOMP_5.1.
4381 * scope.c: New file.
4382 * testsuite/libgomp.c-c++-common/scope-1.c: New test.
4383 * testsuite/libgomp.c-c++-common/task-reduction-16.c: New test.
4384
9d1d9fc8
GA
43852021-08-16 Thomas Schwinge <thomas@codesourcery.com>
4386
4387 * testsuite/libgomp.oacc-c-c++-common/mode-transitions.c: Address
4388 '?:' issues.
4389
43902021-08-16 Tobias Burnus <tobias@codesourcery.com>
4391
4392 * testsuite/libgomp.fortran/masked-1.f90: New test.
4393
261512fa
GA
43942021-08-13 Thomas Schwinge <thomas@codesourcery.com>
4395
4396 * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c: Adjust.
4397
72be20e2
GA
43982021-08-12 Jakub Jelinek <jakub@redhat.com>
4399
4400 * testsuite/libgomp.c-c++-common/masked-1.c: New test.
4401
44022021-08-12 Tobias Burnus <tobias@codesourcery.com>
4403
4404 * env.c (parse_bind_var): Accept 'primary' as alias for
4405 'master'.
4406 (omp_display_env): Add TODO comment to
4407 change 'master' to 'primary' in proc_bind for OpenMP 5.1.
4408 * libgomp.texi: Change 'master thread' to 'primary thread'
4409 in line with OpenMP 5.1.
4410 (omp_get_proc_bind): Add omp_proc_bind_primary and note that
4411 omp_proc_bind_master is an alias of it.
4412 (OMP_PROC_BIND): Mention 'PRIMARY'.
4413 * omp.h.in (__GOMP_DEPRECATED_5_1): Define.
4414 (omp_proc_bind_primary): Add.
4415 (omp_proc_bind_master): Deprecate for OpenMP 5.1.
4416 * omp_lib.f90.in (omp_proc_bind_primary): Add.
4417 (omp_proc_bind_master): Deprecate for OpenMP 5.1.
4418 * omp_lib.h.in (omp_proc_bind_primary): Add.
4419 * testsuite/libgomp.c/affinity-1.c: Check that
4420 'primary' works and is identical to 'master'.
4421
37768150
GA
44222021-08-09 Julian Brown <julian@codesourcery.com>
4423 Kwok Cheung Yeung <kcy@codesourcery.com>
4424 Thomas Schwinge <thomas@codesourcery.com>
4425
4426 * plugin/plugin-gcn.c (gcn_exec): Change default number of workers to
4427 16.
4428 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c
4429 [acc_device_radeon]: Update.
4430 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c
4431 [ACC_DEVICE_TYPE_radeon]: Likewise.
4432 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c
4433 [acc_device_radeon]: Likewise.
4434 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c
4435 [ACC_DEVICE_TYPE_radeon]: Likewise.
4436 * testsuite/libgomp.oacc-fortran/optional-reduction.f90: XFAIL for
4437 'openacc_radeon_accel_selected' and '-O0'.
4438 * testsuite/libgomp.oacc-fortran/reduction-7.f90: Likewise.
4439
8ebf4fb5
GA
44402021-08-05 Chung-Lin Tang <cltang@codesourcery.com>
4441
4442 * icv-device.c (omp_get_device_num): New API function, host side.
4443 * fortran.c (omp_get_device_num_): New interface function.
4444 * libgomp-plugin.h (GOMP_DEVICE_NUM_VAR): Define macro symbol.
4445 * libgomp.map (OMP_5.0.2): New version space with omp_get_device_num,
4446 omp_get_device_num_.
4447 * libgomp.texi (omp_get_device_num): Add documentation for new API
4448 function.
4449 * omp.h.in (omp_get_device_num): Add declaration.
4450 * omp_lib.f90.in (omp_get_device_num): Likewise.
4451 * omp_lib.h.in (omp_get_device_num): Likewise.
4452 * target.c (gomp_load_image_to_device): If additional entry for device
4453 number exists at end of returned entries from 'load_image_func' hook,
4454 copy the assigned device number over to the device variable.
4455 * config/gcn/icv-device.c (GOMP_DEVICE_NUM_VAR): Define static global.
4456 (omp_get_device_num): New API function, device side.
4457 * plugin/plugin-gcn.c ("symcat.h"): Add include.
4458 (GOMP_OFFLOAD_load_image): Add addresses of device GOMP_DEVICE_NUM_VAR
4459 at end of returned 'target_table' entries.
4460 * config/nvptx/icv-device.c (GOMP_DEVICE_NUM_VAR): Define static global.
4461 (omp_get_device_num): New API function, device side.
4462 * plugin/plugin-nvptx.c ("symcat.h"): Add include.
4463 (GOMP_OFFLOAD_load_image): Add addresses of device GOMP_DEVICE_NUM_VAR
4464 at end of returned 'target_table' entries.
4465 * testsuite/lib/libgomp.exp
4466 (check_effective_target_offload_target_intelmic): New function for
4467 testing for intelmic offloading.
4468 * testsuite/libgomp.c-c++-common/target-45.c: New test.
4469 * testsuite/libgomp.fortran/target10.f90: New test.
4470
4d17ca1b
GA
44712021-07-30 Thomas Schwinge <thomas@codesourcery.com>
4472 Ulrich Drepper <drepper@redhat.com>
4473
4474 * fortran.c (omp_display_env_, omp_display_env_8_): Only
4475 '#ifndef LIBGOMP_OFFLOADED_ONLY'.
4476
44772021-07-29 Thomas Schwinge <thomas@codesourcery.com>
4478 Julian Brown <julian@codesourcery.com>
4479 Kwok Cheung Yeung <kcy@codesourcery.com>
4480
4481 * testsuite/libgomp.oacc-c-c++-common/pr85486-2.c:
4482 's%oaccdevlow%oaccloops%g'.
4483 * testsuite/libgomp.oacc-c-c++-common/pr85486-3.c: Likewise.
4484 * testsuite/libgomp.oacc-c-c++-common/pr85486.c: Likewise.
4485 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-1.c:
4486 Likewise.
4487 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-1.c:
4488 Likewise.
4489 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-2.c:
4490 Likewise.
4491 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-3.c:
4492 Likewise.
4493 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-4.c:
4494 Likewise.
4495 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-5.c:
4496 Likewise.
4497 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-6.c:
4498 Likewise.
4499 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-7.c:
4500 Likewise.
4501 * testsuite/libgomp.oacc-fortran/routine-nohost-1.f90: Likewise.
4502
872c1a56
ML
45032021-07-29 Aldy Hernandez <aldyh@redhat.com>
4504
4505 * testsuite/libgomp.graphite/force-parallel-4.c: Adjust for
4506 threader.
4507 * testsuite/libgomp.graphite/force-parallel-8.c: Same.
4508
af3f12e6
GA
45092021-07-27 Ulrich Drepper <drepper@gmail.com>
4510
4511 * env.c (wait_policy, stacksize): New static variables,
4512 move out of handle_omp_display_env.
4513 (omp_display_env): New function. The meat of the old
4514 handle_omp_display_env function.
4515 (handle_omp_display_env): Change to not take parameters
4516 and instead use the global variables. Only perform
4517 parsing, defer to omp_display_env for the implementation.
4518 (initialize_env): Remove local variables wait_policy and
4519 stacksize. Don't pass parameters to handle_omp_display_env.
4520 * fortran.c: Add ialias_redirect for omp_display_env.
4521 (omp_display_env_, omp_display_env_8_): New functions.
4522 * libgomp.map (OMP_5.1): New version. Add omp_display_env,
4523 omp_display_env_, and omp_display_env_8_.
4524 * omp.h.in: Declare omp_display_env.
4525 * omp_lib.f90.in: Likewise.
4526 * omp_lib.h.in: Likewise.
4527
45282021-07-27 Thomas Schwinge <thomas@codesourcery.com>
4529 Julian Brown <julian@codesourcery.com>
4530
4531 * target.c (gomp_coalesce_buf_add): Update comment.
4532 (gomp_copy_host2dev, gomp_map_vars_internal): Don't expect to see
4533 'aq && cbuf'.
4534 (gomp_map_vars_internal): Only 'if (!aq)', do
4535 'gomp_coalesce_buf_add'.
4536 * testsuite/libgomp.oacc-c-c++-common/async-data-1-2.c: Remove
4537 XFAIL.
4538
45392021-07-27 Julian Brown <julian@codesourcery.com>
4540 Thomas Schwinge <thomas@codesourcery.com>
4541
4542 * libgomp.h (gomp_copy_host2dev): Update prototype.
4543 * oacc-mem.c (memcpy_tofrom_device, update_dev_host): Add new
4544 argument to gomp_copy_host2dev (false).
4545 * plugin/plugin-gcn.c (struct copy_data): Remove free_src field.
4546 (copy_data): Don't free src.
4547 (queue_push_copy): Remove free_src handling.
4548 (GOMP_OFFLOAD_dev2dev): Update call to queue_push_copy.
4549 (GOMP_OFFLOAD_openacc_async_host2dev): Remove source-data
4550 snapshotting.
4551 (GOMP_OFFLOAD_openacc_async_dev2host): Update call to
4552 queue_push_copy.
4553 * target.c (goacc_device_copy_async): Add SRCADDR_ORIG parameter.
4554 (gomp_copy_host2dev): Add EPHEMERAL parameter. Snapshot source
4555 data when true, and set up deferred freeing of temporary buffer.
4556 (gomp_copy_dev2host): Update call to goacc_device_copy_async.
4557 (gomp_map_vars_existing, gomp_map_pointer, gomp_attach_pointer)
4558 (gomp_detach_pointer, gomp_map_vars_internal, gomp_update): Update
4559 calls to gomp_copy_host2dev with appropriate ephemeral argument.
4560 * testsuite/libgomp.oacc-c-c++-common/async-data-1-1.c: Remove
4561 XFAIL.
4562
45632021-07-27 Thomas Schwinge <thomas@codesourcery.com>
4564 Tom de Vries <tom@codesourcery.com>
4565
4566 * testsuite/libgomp.oacc-c-c++-common/async-data-1-1.c: New file.
4567 * testsuite/libgomp.oacc-c-c++-common/async-data-1-2.c: Likewise.
4568
45692021-07-27 Thomas Schwinge <thomas@codesourcery.com>
4570
4571 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c: Clarify
4572 sequencing of 'async' data copying vs. profiling events.
4573 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c:
4574 Likewise.
4575
45762021-07-27 Thomas Schwinge <thomas@codesourcery.com>
4577 Julian Brown <julian@codesourcery.com>
4578
4579 * testsuite/libgomp.oacc-c-c++-common/lib-94.c: Fix OpenACC
4580 'async'/'wait' issue.
4581 * testsuite/libgomp.oacc-c-c++-common/lib-95.c: Likewise.
4582 * testsuite/libgomp.oacc-fortran/lib-16-2.f90: Likewise.
4583 * testsuite/libgomp.oacc-fortran/lib-16.f90: Likewise.
4584
419c6c68
GA
45852021-07-21 Thomas Schwinge <thomas@codesourcery.com>
4586 Joseph Myers <joseph@codesourcery.com>
4587 Cesar Philippidis <cesar@codesourcery.com>
4588
4589 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-1.c: New
4590 file.
4591 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-2.c:
4592 Likewise.
4593 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-2_2.c:
4594 Likewise.
4595 * testsuite/libgomp.oacc-fortran/routine-nohost-1.f90: Likewise.
4596
92d45509
GA
45972021-07-20 Thomas Schwinge <thomas@codesourcery.com>
4598
4599 PR target/101484
4600 * configure.tgt [amdgcn*-*-*] (XCFLAGS): Add
4601 '-Wno-error=array-bounds'.
4602 * config/gcn/team.c: Remove '-Werror=array-bounds' work-around.
4603 * libgomp.h [__AMDGCN__]: Likewise.
4604
21ea2f93
GA
46052021-07-19 Thomas Schwinge <thomas@codesourcery.com>
4606
4607 PR target/101484
4608 * config/gcn/team.c: Apply '-Werror=array-bounds' work-around.
4609 * libgomp.h [__AMDGCN__]: Likewise.
4610
0e775456
GA
46112021-07-13 Jakub Jelinek <jakub@redhat.com>
4612 Florian Weimer <fweimer@redhat.com>
4613
4614 * config/linux/sem.h: Don't include limits.h.
4615 (SEM_WAIT): Define to -__INT_MAX__ - 1 instead of INT_MIN.
4616 * config/linux/affinity.c: Include limits.h.
4617
bea7c16a
GA
46182021-07-01 Jakub Jelinek <jakub@redhat.com>
4619
4620 PR middle-end/94366
4621 * testsuite/libgomp.c-c++-common/pr94366.c: New test.
4622
6bc18203
GA
46232021-06-29 Tobias Burnus <tobias@codesourcery.com>
4624
4625 PR other/67300
4626 * testsuite/libgomp.c-c++-common/reduction-16.c: Replace
4627 -foffload=nvptx-none= by -foffload-options=nvptx-none= to
4628 avoid disabling other offload targets.
4629 * testsuite/libgomp.c-c++-common/reduction-5.c: Likewise.
4630 * testsuite/libgomp.c-c++-common/reduction-6.c: Likewise.
4631 * testsuite/libgomp.c/target-44.c: Likewise.
4632
46332021-06-29 Tobias Burnus <tobias@codesourcery.com>
4634
4635 * testsuite/libgomp.fortran/defaultmap-8.f90 (bar): Determine whether
4636 target has shared memory and disable some scalar pointer/allocatable
4637 checks if not as firstprivate does not work.
4638
90708f87
GA
46392021-06-25 Chung-Lin Tang <cltang@codesourcery.com>
4640
4641 PR testsuite/101114
4642 * testsuite/libgomp.c-c++-common/struct-elem-5.c:
4643 Add "target offload_device_nonshared_as" condition for enabling test.
4644
9aa8327e
GA
46452021-06-24 Jakub Jelinek <jakub@redhat.com>
4646
4647 * testsuite/libgomp.c-c++-common/target-in-reduction-1.c: New test.
4648 * testsuite/libgomp.c-c++-common/target-in-reduction-2.c: New test.
4649 * testsuite/libgomp.c++/target-in-reduction-1.C: New test.
4650 * testsuite/libgomp.c++/target-in-reduction-2.C: New test.
4651
fcf617f0
GA
46522021-06-23 Jakub Jelinek <jakub@redhat.com>
4653
4654 PR middle-end/101167
4655 * testsuite/libgomp.c-c++-common/task-reduction-15.c: New test.
4656
688359a2
GA
46572021-06-17 Chung-Lin Tang <cltang@codesourcery.com>
4658
4659 * hashtab.h (htab_clear): New function with initialization code
4660 factored out from...
4661 (htab_create): ...here, adjust to use htab_clear function.
4662 * libgomp.h (REFCOUNT_SPECIAL): New symbol to denote range of
4663 special refcount values, add comments.
4664 (REFCOUNT_INFINITY): Adjust definition to use REFCOUNT_SPECIAL.
4665 (REFCOUNT_LINK): Likewise.
4666 (REFCOUNT_STRUCTELEM): New special refcount range for structure
4667 element siblings.
4668 (REFCOUNT_STRUCTELEM_P): Macro for testing for structure element
4669 sibling maps.
4670 (REFCOUNT_STRUCTELEM_FLAG_FIRST): Flag to indicate first sibling.
4671 (REFCOUNT_STRUCTELEM_FLAG_LAST): Flag to indicate last sibling.
4672 (REFCOUNT_STRUCTELEM_FIRST_P): Macro to test _FIRST flag.
4673 (REFCOUNT_STRUCTELEM_LAST_P): Macro to test _LAST flag.
4674 (struct splay_tree_key_s): Add structelem_refcount and
4675 structelem_refcount_ptr fields into a union with dynamic_refcount.
4676 Add comments.
4677 (gomp_map_vars): Delete declaration.
4678 (gomp_map_vars_async): Likewise.
4679 (gomp_unmap_vars): Likewise.
4680 (gomp_unmap_vars_async): Likewise.
4681 (goacc_map_vars): New declaration.
4682 (goacc_unmap_vars): Likewise.
4683 * oacc-mem.c (acc_map_data): Adjust to use goacc_map_vars.
4684 (goacc_enter_datum): Likewise.
4685 (goacc_enter_data_internal): Likewise.
4686 * oacc-parallel.c (GOACC_parallel_keyed): Adjust to use goacc_map_vars
4687 and goacc_unmap_vars.
4688 (GOACC_data_start): Adjust to use goacc_map_vars.
4689 (GOACC_data_end): Adjust to use goacc_unmap_vars.
4690 * target.c (hash_entry_type): New typedef.
4691 (htab_alloc): New function hook for hashtab.h.
4692 (htab_free): Likewise.
4693 (htab_hash): Likewise.
4694 (htab_eq): Likewise.
4695 (hashtab.h): Add file include.
4696 (gomp_increment_refcount): New function.
4697 (gomp_decrement_refcount): Likewise.
4698 (gomp_map_vars_existing): Add refcount_set parameter, adjust to use
4699 gomp_increment_refcount.
4700 (gomp_map_fields_existing): Add refcount_set parameter, adjust calls
4701 to gomp_map_vars_existing.
4702 (gomp_map_vars_internal): Add refcount_set parameter, add local openmp_p
4703 variable to guard OpenMP specific paths, adjust calls to
4704 gomp_map_vars_existing, add structure element sibling splay_tree_key
4705 sequence creation code, adjust Fortran map case to avoid increment
4706 under OpenMP.
4707 (gomp_map_vars): Adjust to static, add refcount_set parameter, manage
4708 local refcount_set if caller passed in NULL, adjust call to
4709 gomp_map_vars_internal.
4710 (gomp_map_vars_async): Adjust and rename into...
4711 (goacc_map_vars): ...this new function, adjust call to
4712 gomp_map_vars_internal.
4713 (gomp_remove_splay_tree_key): New function with code factored out from
4714 gomp_remove_var_internal.
4715 (gomp_remove_var_internal): Add code to handle removing multiple
4716 splay_tree_key sequence for structure elements, adjust code to use
4717 gomp_remove_splay_tree_key for splay-tree key removal.
4718 (gomp_unmap_vars_internal): Add refcount_set parameter, adjust to use
4719 gomp_decrement_refcount.
4720 (gomp_unmap_vars): Adjust to static, add refcount_set parameter, manage
4721 local refcount_set if caller passed in NULL, adjust call to
4722 gomp_unmap_vars_internal.
4723 (gomp_unmap_vars_async): Adjust and rename into...
4724 (goacc_unmap_vars): ...this new function, adjust call to
4725 gomp_unmap_vars_internal.
4726 (GOMP_target): Manage refcount_set and adjust calls to gomp_map_vars and
4727 gomp_unmap_vars.
4728 (GOMP_target_ext): Likewise.
4729 (gomp_target_data_fallback): Adjust call to gomp_map_vars.
4730 (GOMP_target_data): Likewise.
4731 (GOMP_target_data_ext): Likewise.
4732 (GOMP_target_end_data): Adjust call to gomp_unmap_vars.
4733 (gomp_exit_data): Add refcount_set parameter, adjust to use
4734 gomp_decrement_refcount, adjust to queue splay-tree keys for removal
4735 after main loop.
4736 (GOMP_target_enter_exit_data): Manage refcount_set and adjust calls to
4737 gomp_map_vars and gomp_exit_data.
4738 (gomp_target_task_fn): Likewise.
4739 * testsuite/libgomp.c-c++-common/refcount-1.c: New testcase.
4740 * testsuite/libgomp.c-c++-common/struct-elem-1.c: New testcase.
4741 * testsuite/libgomp.c-c++-common/struct-elem-2.c: New testcase.
4742 * testsuite/libgomp.c-c++-common/struct-elem-3.c: New testcase.
4743 * testsuite/libgomp.c-c++-common/struct-elem-4.c: New testcase.
4744 * testsuite/libgomp.c-c++-common/struct-elem-5.c: New testcase.
4745
ede6c356
GA
47462021-06-15 Tobias Burnus <tobias@codesourcery.com>
4747
4748 PR fortran/92568
4749 * testsuite/libgomp.fortran/defaultmap-8.f90: New test.
4750
43c35d0d
GA
47512021-06-10 Andrew Stubbs <ams@codesourcery.com>
4752 Thomas Schwinge <thomas@codesourcery.com>
4753
4754 * libgomp.map (GOACC_2.0.2): New symbol version.
4755 * libgomp_g.h (GOACC_enter_data, GOACC_exit_data) New prototypes.
4756 * oacc-mem.c (GOACC_enter_data, GOACC_exit_data) New functions.
4757
47582021-06-10 Thomas Schwinge <thomas@codesourcery.com>
4759 Andrew Stubbs <ams@codesourcery.com>
4760
4761 * oacc-mem.c (goacc_enter_exit_data_internal): New function,
4762 extracted from...
4763 (GOACC_enter_exit_data): ... here.
4764 (GOACC_declare): Use it.
4765
47662021-06-10 Thomas Schwinge <thomas@codesourcery.com>
4767
4768 * oacc-parallel.c (GOACC_declare): Move...
4769 * oacc-mem.c: ... here.
4770 * libgomp_g.h: Adjust.
4771
47722021-06-10 Andrew Stubbs <ams@codesourcery.com>
4773 Thomas Schwinge <thomas@codesourcery.com>
4774
4775 * oacc-parallel.c (GOACC_declare): Clean up 'GOMP_MAP_POINTER'
4776 handling.
4777
47782021-06-10 Jakub Jelinek <jakub@redhat.com>
4779
4780 PR tree-optimization/100981
4781 * testsuite/libgomp.fortran/pr100981-2.f90 (cdcdot): Initialize
4782 dsdotr and dsdoti to 0.
4783
4f625f47
GA
47842021-06-09 H.J. Lu <hjl.tools@gmail.com>
4785
4786 * testsuite/lib/libgomp.exp (libgomp_init): Don't add -march=i486
4787 if atomic compare-and-swap is supported on 'int'.
4788
47892021-06-09 Richard Biener <rguenther@suse.de>
4790
4791 PR tree-optimization/100981
4792 * testsuite/libgomp.fortran/pr100981-2.f90: New testcase.
4793
c6038721
GA
47942021-06-08 Thomas Schwinge <thomas@codesourcery.com>
4795
4796 * plugin/plugin-gcn.c (gcn_exec): Force 'num_workers (1)'
4797 unconditionally.
4798 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c:
4799 Update.
4800 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
4801 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Likewise.
4802
48032021-06-08 Thomas Schwinge <thomas@codesourcery.com>
4804
4805 * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Enable for all but
4806 '-DACC_MEM_SHARED=0'.
4807 * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Likewise.
4808 * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
4809 * testsuite/libgomp.oacc-c-c++-common/lib-15.c: Likewise.
4810 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
4811 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
4812 * testsuite/libgomp.oacc-c-c++-common/lib-24.c: Likewise.
4813 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
4814 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
4815 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
4816 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
4817 * testsuite/libgomp.oacc-c-c++-common/lib-88.c: Likewise.
4818 * testsuite/libgomp.oacc-c-c++-common/lib-89.c: Likewise.
4819 * testsuite/libgomp.oacc-c-c++-common/lib-92.c: Likewise.
4820 * testsuite/libgomp.oacc-fortran/lib-14.f90: Likewise.
4821 * testsuite/libgomp.oacc-c-c++-common/lib-5.c: Add
4822 'acc_device_radeon' testing.
4823 * testsuite/libgomp.oacc-c-c++-common/lib-6.c: Likewise.
4824 * testsuite/libgomp.oacc-fortran/lib-5.f90: Likewise.
4825 * testsuite/libgomp.oacc-fortran/lib-7.f90: Likewise.
4826 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Enable for all.
4827 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
4828 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
4829 * testsuite/libgomp.oacc-c-c++-common/lib-86.c: Likewise.
4830 * testsuite/libgomp.oacc-c-c++-common/lib-87.c: Likewise.
4831 * testsuite/libgomp.oacc-fortran/lib-10.f90: Likewise.
4832 * testsuite/libgomp.oacc-fortran/lib-8.f90: Likewise.
4833 * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Improve checking
4834 for non-'openacc_nvidia_accel_selected'.
4835 * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
4836 * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Clarify that "Not
4837 all implement this checking".
4838 * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
4839 * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
4840 * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
4841 * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
4842 * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
4843
48442021-06-08 Thomas Schwinge <thomas@codesourcery.com>
4845
4846 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Simplify.
4847 * testsuite/libgomp.oacc-fortran/parallel-dims-aux.c: Update.
4848
48492021-06-08 Thomas Schwinge <thomas@codesourcery.com>
4850
4851 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Fix
4852 for 'acc_device_radeon'.
4853
48542021-06-08 Thomas Schwinge <thomas@codesourcery.com>
4855
4856 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Enhance
4857 for non-'acc_device_nvidia'.
4858
48592021-06-08 Thomas Schwinge <thomas@codesourcery.com>
4860
4861 * testsuite/libgomp.oacc-c-c++-common/acc_on_device-1.c: Add
4862 'acc_device_radeon' testing.
4863 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
4864 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
4865 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
4866
48672021-06-08 Thomas Schwinge <thomas@codesourcery.com>
4868
4869 * testsuite/libgomp.oacc-c-c++-common/async_queue-1.c: Don't
4870 require 'openacc_nvidia_accel_selected'. Fix up for
4871 'ACC_DEVICE_TYPE_radeon'.
4872
48732021-06-08 Thomas Schwinge <thomas@codesourcery.com>
4874
4875 * testsuite/libgomp.oacc-c++/declare-1.C: Don't require
4876 'openacc_nvidia_accel_selected'.
4877 * testsuite/libgomp.oacc-c-c++-common/declare-3.c: Likewise.
4878
48792021-06-08 Thomas Schwinge <thomas@codesourcery.com>
4880
4881 * testsuite/lib/libgomp.exp
4882 (check_effective_target_openacc_radeon_accel_selected):
4883 Streamline.
4884
48852021-06-08 Thomas Schwinge <thomas@codesourcery.com>
4886
4887 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Revert
4888 PR80547 workaround.
4889
48902021-06-08 Thomas Schwinge <thomas@codesourcery.com>
4891
4892 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c
4893 <acc_device_nvidia>: Update comment.
4894
48166757
GA
48952021-05-28 Tobias Burnus <tobias@codesourcery.com>
4896
4897 * testsuite/libgomp.fortran/depend-iterator-2.f90: New test.
4898
cd62d089
GA
48992021-05-27 Jakub Jelinek <jakub@redhat.com>
4900
4901 * testsuite/lib/libgomp.exp (check_effective_target_openacc_cuda,
4902 check_effective_target_openacc_cublas,
4903 check_effective_target_openacc_cudart): New.
4904 * testsuite/libgomp.oacc-fortran/host_data-4.f90: Require effective
4905 target openacc_cublas.
4906 * testsuite/libgomp.oacc-fortran/host_data-2.f90: Likewise.
4907 * testsuite/libgomp.oacc-fortran/host_data-3.f: Likewise.
4908 * testsuite/libgomp.oacc-c-c++-common/lib-91.c: Require effective
4909 target openacc_cuda.
4910 * testsuite/libgomp.oacc-c-c++-common/lib-70.c: Likewise.
4911 * testsuite/libgomp.oacc-c-c++-common/lib-90.c: Likewise.
4912 * testsuite/libgomp.oacc-c-c++-common/lib-75.c: Likewise.
4913 * testsuite/libgomp.oacc-c-c++-common/lib-69.c: Likewise.
4914 * testsuite/libgomp.oacc-c-c++-common/lib-74.c: Likewise.
4915 * testsuite/libgomp.oacc-c-c++-common/lib-81.c: Likewise.
4916 * testsuite/libgomp.oacc-c-c++-common/lib-72.c: Likewise.
4917 * testsuite/libgomp.oacc-c-c++-common/lib-85.c: Likewise.
4918 * testsuite/libgomp.oacc-c-c++-common/pr87835.c: Likewise.
4919 * testsuite/libgomp.oacc-c-c++-common/lib-82.c: Likewise.
4920 * testsuite/libgomp.oacc-c-c++-common/lib-73.c: Likewise.
4921 * testsuite/libgomp.oacc-c-c++-common/lib-83.c: Likewise.
4922 * testsuite/libgomp.oacc-c-c++-common/lib-78.c: Likewise.
4923 * testsuite/libgomp.oacc-c-c++-common/lib-76.c: Likewise.
4924 * testsuite/libgomp.oacc-c-c++-common/lib-84.c: Likewise.
4925 * testsuite/libgomp.oacc-c-c++-common/lib-79.c: Likewise.
4926 * testsuite/libgomp.oacc-c-c++-common/host_data-1.c: Require effective
4927 targets openacc_cublas and openacc_cudart.
4928 * testsuite/libgomp.oacc-c-c++-common/context-1.c: Likewise.
4929 * testsuite/libgomp.oacc-c-c++-common/context-2.c: Likewise.
4930 * testsuite/libgomp.oacc-c-c++-common/context-3.c: Likewise.
4931 * testsuite/libgomp.oacc-c-c++-common/context-4.c: Likewise.
4932 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-nvptx.c:
4933 Require effective target openacc_cudart.
4934 * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Add -DUSE_CUDA_H
4935 for effective target openacc_cuda and add && defined USE_CUDA_H to
4936 preprocessor conditionals. Guard -lcuda also on openacc_cuda
4937 effective target.
4938
01c59ef2
GA
49392021-05-26 Jakub Jelinek <jakub@redhat.com>
4940
4941 PR libgomp/100573
4942 * config/nvptx/target.c (GOMP_target_ext, GOMP_target_data_ext,
4943 GOMP_target_end_data, GOMP_target_update_ext,
4944 GOMP_target_enter_exit_data): New dummy entrypoints.
4945 * config/gcn/target.c (GOMP_target_ext, GOMP_target_data_ext,
4946 GOMP_target_end_data, GOMP_target_update_ext,
4947 GOMP_target_enter_exit_data): Likewise.
4948 * testsuite/libgomp.c-c++-common/for-3.c (DO_PRAGMA, OMPTEAMS,
4949 OMPFROM, OMPTO): Define.
4950 (main): Remove #pragma omp target teams around all the tests.
4951 * testsuite/libgomp.c-c++-common/target-41.c: New test.
4952 * testsuite/libgomp.c-c++-common/target-42.c: New test.
4953
2bc6dace
GA
49542021-05-25 Jakub Jelinek <jakub@redhat.com>
4955
4956 PR middle-end/99928
4957 * testsuite/libgomp.c-c++-common/reduction-17.c: New test.
4958
637569df
GA
49592021-05-24 Tobias Burnus <tobias@codesourcery.com>
4960
4961 PR fortran/86470
4962 * testsuite/libgomp.fortran/class-firstprivate-1.f90: New test.
4963 * testsuite/libgomp.fortran/class-firstprivate-2.f90: New test.
4964 * testsuite/libgomp.fortran/class-firstprivate-3.f90: New test.
4965
15d30d2f
GA
49662021-05-22 Thomas Schwinge <thomas@codesourcery.com>
4967
4968 PR testsuite/90115
4969 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Prune
4970 uninteresting/varying diagnostics.
4971
2832d51b
GA
49722021-05-21 Thomas Schwinge <thomas@codesourcery.com>
4973
4974 PR middle-end/90115
4975 * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c: Update.
4976 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
4977
49782021-05-21 Thomas Schwinge <thomas@codesourcery.com>
4979
4980 PR middle-end/90115
4981 * testsuite/libgomp.oacc-fortran/private-atomic-1-vector.f90: New
4982 file.
4983 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Update.
4984 * testsuite/libgomp.oacc-c-c++-common/host_data-7.c: Likewise.
4985 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
4986 Likewise.
4987 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
4988 Likewise.
4989 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
4990 Likewise.
4991 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
4992 Likewise.
4993 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
4994 Likewise.
4995 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
4996 Likewise.
4997 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-1.c:
4998 Likewise.
4999 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-2.c:
5000 Likewise.
5001 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-3.c:
5002 Likewise.
5003 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-4.c:
5004 Likewise.
5005 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-5.c:
5006 Likewise.
5007 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-6.c:
5008 Likewise.
5009 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
5010 Likewise.
5011 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
5012 Likewise.
5013 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-1.c:
5014 Likewise.
5015 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
5016 Likewise.
5017 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
5018 Likewise.
5019 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
5020 Likewise.
5021 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
5022 Likewise.
5023 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
5024 Likewise.
5025 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
5026 Likewise.
5027 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: Likewise.
5028 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: Likewise.
5029 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Likewise.
5030 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-2.c: Likewise.
5031 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
5032 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
5033 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
5034 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Likewise.
5035 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
5036 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
5037 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Likewise.
5038 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Likewise.
5039 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
5040 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Likewise.
5041 * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c:
5042 Likewise.
5043 * testsuite/libgomp.oacc-c-c++-common/private-atomic-1-gang.c:
5044 Likewise.
5045 * testsuite/libgomp.oacc-c-c++-common/private-atomic-1.c:
5046 Likewise.
5047 * testsuite/libgomp.oacc-c-c++-common/private-variables.c:
5048 Likewise.
5049 * testsuite/libgomp.oacc-c-c++-common/routine-4.c: Likewise.
5050 * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c:
5051 Likewise.
5052 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
5053 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
5054 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
5055 * testsuite/libgomp.oacc-fortran/declare-1.f90: Likewise.
5056 * testsuite/libgomp.oacc-fortran/host_data-5.F90: Likewise.
5057 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
5058 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
5059 Likewise.
5060 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
5061 Likewise.
5062 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
5063 Likewise.
5064 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
5065 Likewise.
5066 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-1.f90:
5067 Likewise.
5068 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-2.f90:
5069 Likewise.
5070 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-1.f90:
5071 Likewise.
5072 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-2.f90:
5073 Likewise.
5074 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-3.f90:
5075 Likewise.
5076 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-4.f90:
5077 Likewise.
5078 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-5.f90:
5079 Likewise.
5080 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-6.f90:
5081 Likewise.
5082 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-7.f90:
5083 Likewise.
5084 * testsuite/libgomp.oacc-fortran/optional-private.f90: Likewise.
5085 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
5086 * testsuite/libgomp.oacc-fortran/private-atomic-1-gang.f90:
5087 Likewise.
5088 * testsuite/libgomp.oacc-fortran/private-atomic-1-worker.f90:
5089 Likewise.
5090 * testsuite/libgomp.oacc-fortran/private-variables.f90: Likewise.
5091 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
5092 * testsuite/libgomp.oacc-fortran/routine-7.f90: Likewise.
5093
50942021-05-21 Julian Brown <julian@codesourcery.com>
5095 Chung-Lin Tang <cltang@codesourcery.com>
5096 Thomas Schwinge <thomas@codesourcery.com>
5097
5098 PR middle-end/90115
5099 * testsuite/libgomp.oacc-c-c++-common/private-atomic-1-gang.c: New
5100 test.
5101 * testsuite/libgomp.oacc-fortran/private-atomic-1-gang.f90:
5102 Likewise.
5103 * testsuite/libgomp.oacc-fortran/private-atomic-1-worker.f90:
5104 Likewise.
5105
51062021-05-21 Thomas Schwinge <thomas@codesourcery.com>
5107
5108 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Don't skip
5109 for nvptx offloading.
5110
51112021-05-21 Tobias Burnus <tobias@codesourcery.com>
5112
5113 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: New.
5114
65f32e5d
GA
51152021-05-19 Thomas Schwinge <thomas@codesourcery.com>
5116
5117 PR target/83812
5118 * testsuite/libgomp.oacc-c-c++-common/private-atomic-1.c: New.
5119
51202021-05-19 Julian Brown <julian@codesourcery.com>
5121
5122 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-2.c: New.
5123
a8daf9a1
GA
51242021-05-18 Thomas Schwinge <thomas@codesourcery.com>
5125
5126 * testsuite/lib/libgomp.exp
5127 (check_effective_target_offload_target_nvptx): Don't shadow global
5128 'offload_targets' variable.
5129
51302021-05-18 Thomas Schwinge <thomas@codesourcery.com>
5131
5132 * testsuite/libgomp.c-c++-common/reduction-5.c: Restrict
5133 '-latomic' to nvptx offloading compilation.
5134 * testsuite/libgomp.c-c++-common/reduction-6.c: Likewise.
5135
51362021-05-18 Thomas Schwinge <thomas@codesourcery.com>
5137
5138 * testsuite/libgomp.c/target-44.c: Restrict '-latomic' to nvptx
5139 offloading compilation.
5140
a7ffc1ef
GA
51412021-05-17 Kwok Cheung Yeung <kcy@codesourcery.com>
5142
5143 * task.c (omp_fulfill_event): Call gomp_team_barrier_set_task_pending
5144 if new tasks generated.
5145 * testsuite/libgomp.c-c++-common/task-detach-13.c: New.
5146
87a7d10c
GA
51472021-05-14 Tobias Burnus <tobias@codesourcery.com>
5148
5149 * testsuite/libgomp.fortran/parallel-master.f90: New test.
5150
f9af11c7
GA
51512021-05-13 Martin Liska <mliska@suse.cz>
5152
5153 PR testsuite/100569
5154 * testsuite/libgomp.c/omp-nested-3.c: Prune new LTO warning.
5155 * testsuite/libgomp.c/pr46032-2.c: Likewise.
5156 * testsuite/libgomp.oacc-c-c++-common/data-clauses-kernels-ipa-pta.c: Likewise.
5157 * testsuite/libgomp.oacc-c-c++-common/data-clauses-parallel-ipa-pta.c: Likewise.
5158
0ff3a0f2
GA
51592021-05-12 Tobias Burnus <tobias@codesourcery.com>
5160
5161 * testsuite/libgomp.c-c++-common/task-detach-12.c: New test.
5162 * testsuite/libgomp.fortran/task-detach-12.f90: New test.
5163
037e3661
GA
51642021-05-11 Jakub Jelinek <jakub@redhat.com>
5165
5166 PR middle-end/100471
5167 * taskloop.c (GOMP_taskloop): If GOMP_TASK_FLAG_REDUCTION and not
5168 GOMP_TASK_FLAG_NOGROUP, when doing early return clear the task
5169 reduction pointer.
5170 * testsuite/libgomp.c/task-reduction-4.c: New test.
5171
62d87a32
GA
51722021-05-07 Tobias Burnus <tobias@codesourcery.com>
5173 Tom de Vries <tdevries@suse.de>
5174
5175 * testsuite/libgomp.c-c++-common/reduction-5.c: New test, testing
5176 complex/floating-point || + && reduction with 'omp target'.
5177 * testsuite/libgomp.c-c++-common/reduction-6.c: Likewise.
5178
99e8df7a
GA
51792021-05-04 Tobias Burnus <tobias@codesourcery.com>
5180
5181 * testsuite/libgomp.c-c++-common/reduction-1.c: New test.
5182 * testsuite/libgomp.c-c++-common/reduction-2.c: New test.
5183 * testsuite/libgomp.c-c++-common/reduction-3.c: New test.
5184 * testsuite/libgomp.c-c++-common/reduction-4.c: New file.
5185
51862021-05-04 Tobias Burnus <tobias@codesourcery.com>
5187
5188 PR testsuite/100397
5189 * testsuite/libgomp.fortran/depobj-1.f90 (dep2, dep3): Move var
5190 declaration to scope of non-'depend'-guarded assignment to avoid races.
5191
e690396d
GA
51922021-05-03 Tom de Vries <tdevries@suse.de>
5193
5194 PR target/100321
5195 * testsuite/libgomp.c/target-44.c: New test.
5196
9326049e
GA
51972021-04-30 Roman Zhuykov <zhroma@ispras.ru>
5198
5199 * testsuite/libgomp.oacc-c-c++-common/atomic_capture-3.c: New test.
5200
3c8e539d
GA
52012021-04-29 Tom de Vries <tdevries@suse.de>
5202
5203 * testsuite/libgomp.c/pr81778.c: New test.
5204
52052021-04-29 Tom de Vries <tdevries@suse.de>
5206
5207 PR target/100232
5208 * testsuite/libgomp.c/target-43.c: New file.
5209
e4ff4ffb
GA
52102021-04-28 Jakub Jelinek <jakub@redhat.com>
5211 Tobias Burnus <tobias@codesourcery.com>
5212
5213 * configure.ac (OFFLOAD_DEFAULTED): AC_DEFINE if offload-defaulted.
5214 * target.c (gomp_load_plugin_for_device): If set and if a plugin
5215 can't be dlopened, silently assume it has no devices.
5216 * Makefile.in: Regenerate.
5217 * config.h.in: Regenerate.
5218 * configure: Regenerate.
5219
c0fa3f2f
GA
52202021-04-26 Tobias Burnus <tobias@codesourcery.com>
5221
5222 * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f:
5223 Use [Ww]arning in dg-bogus as FE diagnostic and default
5224 diagnostic differ and the result depends on ENABLE_OFFLOAD.
5225 * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
5226 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
5227 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
5228
52292021-04-26 Tobias Burnus <tobias@codesourcery.com>
5230
5231 * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f:
5232 Correct spelling in dg-bogus to match -Wopenacc-parallelism.
5233 * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
5234 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
5235 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
5236
52372021-04-26 Thomas Schwinge <thomas@codesourcery.com>
5238 Nathan Sidwell <nathan@codesourcery.com>
5239 Tom de Vries <vries@codesourcery.com>
5240 Julian Brown <julian@codesourcery.com>
5241 Kwok Cheung Yeung <kcy@codesourcery.com>
5242
5243 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Specify
5244 '-Wopenacc-parallelism', and match diagnostics, as appropriate.
5245 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Likewise.
5246 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
5247 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
5248 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
5249 * testsuite/libgomp.oacc-c-c++-common/mode-transitions.c:
5250 Likewise.
5251 * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Likewise.
5252 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
5253 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
5254 * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c:
5255 Likewise.
5256 * testsuite/libgomp.oacc-c-c++-common/pr85381-3.c: Likewise.
5257 * testsuite/libgomp.oacc-c-c++-common/private-variables.c:
5258 Likewise.
5259 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
5260 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: Likewise.
5261 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: Likewise.
5262 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Likewise.
5263 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Likewise.
5264 * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c:
5265 Likewise.
5266 * testsuite/libgomp.oacc-fortran/optional-private.f90: Likewise.
5267 * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f: Likewise.
5268 * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
5269 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
5270 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
5271 * testsuite/libgomp.oacc-fortran/pr84028.f90: Likewise.
5272 * testsuite/libgomp.oacc-fortran/private-variables.f90: Likewise.
5273 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Likewise.
5274 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
5275 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
5276 * testsuite/libgomp.oacc-fortran/routine-7.f90: Likewise.
5277
52782021-04-26 Thomas Schwinge <thomas@codesourcery.com>
5279
5280 * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Don't
5281 compile with '-w'.
5282 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
5283 * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c:
5284 Likewise.
5285 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
5286 * testsuite/libgomp.oacc-c-c++-common/reduction-6.c: Likewise.
5287 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
5288 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Likewise.
5289 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
5290 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
5291 * testsuite/libgomp.oacc-fortran/reduction-7.f90: Likewise.
5292
e3948473
GA
52932021-04-22 Richard Biener <rguenther@suse.de>
5294
5295 * testsuite/libgomp.c-c++-common/reduction-16.c: Use -latomic
5296 only on nvptx-none.
5297
c1ef0c92
GA
52982021-04-21 Tobias Burnus <tobias@codesourcery.com>
5299
5300 * testsuite/libgomp.fortran/depobj-1.f90: Use omp_lib's
5301 omp_depend_kind instead of defining it as 16.
5302
53032021-04-21 Tobias Burnus <tobias@codesourcery.com>
5304
5305 * testsuite/lib/libgomp.exp (offload_target_to_openacc_device_type):
5306 New, based on check_effective_target_offload_target_nvptx.
5307 (check_effective_target_offload_target_nvptx): Call it.
5308 (check_effective_target_offload_target_amdgcn): New.
5309 * testsuite/libgomp.c-c++-common/function-not-offloaded.c:
5310 Require target offload_target_nvptx || offload_target_amdgcn.
5311 * testsuite/libgomp.c-c++-common/variable-not-offloaded.c: Likewise.
5312 * testsuite/libgomp.c/pr86416-1.c: Likewise.
5313 * testsuite/libgomp.c/pr86416-2.c: Likewise.
5314
53152021-04-21 Tobias Burnus <tobias@codesourcery.com>
5316
5317 * testsuite/libgomp.fortran/depobj-1.f90: New test.
5318
6e81e015
GA
53192021-04-19 Thomas Schwinge <thomas@codesourcery.com>
5320
5321 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
5322 '-fopenacc-kernels=[...]' -> '--param=openacc-kernels=[...]'.
5323 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose.c:
5324 Likewise.
5325 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
5326 Likewise.
5327 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Likewise.
5328
ee351f7f
GA
53292021-04-15 Thomas Schwinge <thomas@codesourcery.com>
5330
5331 PR target/99555
5332 * testsuite/lib/libgomp.exp
5333 (check_effective_target_offload_device_nvptx): New.
5334 * testsuite/libgomp.c/pr99555-1.c <nvptx offload device>: Until
5335 resolved, make sure that we exit quickly, with error status,
5336 XFAILed.
5337 * testsuite/libgomp.c-c++-common/task-detach-6.c: Likewise.
5338 * testsuite/libgomp.fortran/task-detach-6.f90: Likewise.
5339
df3b1289
GA
53402021-04-14 Jakub Jelinek <jakub@redhat.com>
5341
5342 PR testsuite/100071
5343 * testsuite/libgomp.fortran/alloc-1.F90: Call c_f_pointer after last
5344 cp = omp_alloc with cp, p arguments instead of cq, q and call
5345 c_f_pointer after last cq = omp_alloc with cq, q.
5346
a0ecde22
GA
53472021-04-11 Hafiz Abid Qadeer <abidh@codesourcery.com>
5348
5349 PR middle-end/98088
5350 * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Add check
5351 for loop with GT/GE condition.
5352 * testsuite/libgomp.oacc-c-c++-common/collapse-3.c: Likewise.
5353
3115aba8
GA
53542021-04-09 Thomas Schwinge <thomas@codesourcery.com>
5355
5356 PR middle-end/84991
5357 PR middle-end/84992
5358 PR middle-end/90779
5359 * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c: New.
5360
53612021-04-09 Jakub Jelinek <jakub@redhat.com>
5362
5363 PR libgomp/99984
5364 * team.c (gomp_thread_start): Call pthread_setspecific for
5365 !(defined HAVE_TLS || defined USE_EMUTLS) only after local_thr
5366 has been initialized to avoid false positive warning.
5367
65374af2
GA
53682021-03-29 Tobias Burnus <tobias@codesourcery.com>
5369
5370 PR target/99555
5371 * testsuite/lib/on_device_arch.c: Move to ...
5372 * testsuite/libgomp.c-c++-common/on_device_arch.h: ... here.
5373 * testsuite/libgomp.fortran/on_device_arch.c: New file;
5374 #include on_device_arch.h.
5375 * testsuite/libgomp.c-c++-common/task-detach-6.c: #include
5376 on_device_arch.h instead of using dg-additional-source.
5377 * testsuite/libgomp.c/pr99555-1.c: Likewise.
5378 * testsuite/libgomp.fortran/task-detach-6.f90: Update to use
5379 on_device_arch.c without relative paths.
5380
4493b1c1
GA
53812021-03-25 Thomas Schwinge <thomas@codesourcery.com>
5382
5383 * plugin/plugin-gcn.c (init_environment_variables): Don't prepend
5384 the 'HSA_RUNTIME_LIB' path to 'libhsa-runtime64.so'.
5385 * plugin/configfrag.ac (HSA_RUNTIME_LIB): Clean up.
5386 * config.h.in: Regenerate.
5387 * configure: Likewise.
5388
53892021-03-25 Thomas Schwinge <thomas@codesourcery.com>
5390
5391 PR target/99555
5392 * testsuite/lib/on_device_arch.c: New file.
5393 * testsuite/libgomp.c/pr99555-1.c: Likewise.
5394 * testsuite/libgomp.c-c++-common/task-detach-6.c: Until resolved,
5395 skip for nvptx offloading, with error status.
5396 * testsuite/libgomp.fortran/task-detach-6.f90: Likewise.
5397
53982021-03-25 Thomas Schwinge <thomas@codesourcery.com>
5399
5400 * testsuite/libgomp.oacc-fortran/derivedtypes-arrays-1.f90:
5401 OpenACC 'serial' construct diagnostic for nvptx offloading.
5402
3c5b6d24
GA
54032021-03-15 Tobias Burnus <tobias@codesourcery.com>
5404
5405 PR c++/99509
5406 * testsuite/libgomp.c-c++-common/declare_target-1.c: New test.
5407
6da2762a
GA
54082021-03-12 Tobias Burnus <tobias@codesourcery.com>
5409
5410 PR fortran/98858
5411 * testsuite/libgomp.fortran/use_device_ptr-3.f90: New test.
5412
67f10d28
GA
54132021-03-04 Jakub Jelinek <jakub@redhat.com>
5414
5415 * configure.ac: Add AC_CHECK_SIZEOF([void *]).
5416 * plugin/configfrag.ac: Check $ac_cv_sizeof_void_p value instead of
5417 checking of -m32 or -mx32 options on the command line.
5418 * config.h.in: Regenerated.
5419 * configure: Regenerated.
5420
ec9dc4fa
GA
54212021-02-27 Iain Sandoe <iain@sandoe.co.uk>
5422
5423 * testsuite/libgomp.c-c++-common/pr96390.c: Require alias
5424 support from the target.
5425
daa68844
GA
54262021-02-25 Kwok Cheung Yeung <kcy@codesourcery.com>
5427 Jakub Jelinek <jakub@redhat.com>
5428
5429 PR libgomp/98738
5430 * libgomp.h (enum gomp_task_kind): Add GOMP_TASK_DETACHED.
5431 (struct gomp_task): Replace detach and completion_sem fields with
5432 union containing completion_sem and detach_team. Add deferred_p
5433 field.
5434 (struct gomp_team): Remove task_detach_queue.
5435 * task.c: Include assert.h.
5436 (gomp_init_task): Initialize deferred_p and completion_sem fields.
5437 Rearrange initialization order of fields.
5438 (task_fulfilled_p): Delete.
5439 (GOMP_task): Use address of task as the event handle. Remove
5440 initialization of detach field. Initialize deferred_p field.
5441 Use automatic local for completion_sem. Initialize detach_team field
5442 for deferred tasks.
5443 (gomp_barrier_handle_tasks): Remove handling of task_detach_queue.
5444 Set kind of suspended detach task to GOMP_TASK_DETACHED and
5445 decrement task_running_count. Move finish_cancelled block out of
5446 else branch. Relocate call to gomp_team_barrier_done.
5447 (GOMP_taskwait): Handle tasks with completion events that have not
5448 been fulfilled.
5449 (GOMP_taskgroup_end): Likewise.
5450 (omp_fulfill_event): Use address of task as event handle. Post to
5451 completion_sem for undeferred tasks. Clear detach_team if task
5452 has not finished. For finished tasks, handle post-execution tasks,
5453 call gomp_team_barrier_wake if necessary, and free task.
5454 * team.c (gomp_new_team): Remove initialization of task_detach_queue.
5455 (free_team): Remove free of task_detach_queue.
5456 * testsuite/libgomp.c-c++-common/task-detach-1.c: Fix formatting.
5457 * testsuite/libgomp.c-c++-common/task-detach-2.c: Fix formatting.
5458 * testsuite/libgomp.c-c++-common/task-detach-3.c: Fix formatting.
5459 * testsuite/libgomp.c-c++-common/task-detach-4.c: Fix formatting.
5460 * testsuite/libgomp.c-c++-common/task-detach-5.c: Fix formatting.
5461 Change data-sharing of detach events on enclosing parallel to private.
5462 * testsuite/libgomp.c-c++-common/task-detach-6.c: Likewise. Remove
5463 taskwait directive.
5464 * testsuite/libgomp.c-c++-common/task-detach-7.c: New.
5465 * testsuite/libgomp.c-c++-common/task-detach-8.c: New.
5466 * testsuite/libgomp.c-c++-common/task-detach-9.c: New.
5467 * testsuite/libgomp.c-c++-common/task-detach-10.c: New.
5468 * testsuite/libgomp.c-c++-common/task-detach-11.c: New.
5469 * testsuite/libgomp.fortran/task-detach-1.f90: Fix formatting.
5470 * testsuite/libgomp.fortran/task-detach-2.f90: Fix formatting.
5471 * testsuite/libgomp.fortran/task-detach-3.f90: Fix formatting.
5472 * testsuite/libgomp.fortran/task-detach-4.f90: Fix formatting.
5473 * testsuite/libgomp.fortran/task-detach-5.f90: Fix formatting.
5474 Change data-sharing of detach events on enclosing parallel to private.
5475 * testsuite/libgomp.fortran/task-detach-6.f90: Likewise. Remove
5476 taskwait directive.
5477 * testsuite/libgomp.fortran/task-detach-7.f90: New.
5478 * testsuite/libgomp.fortran/task-detach-8.f90: New.
5479 * testsuite/libgomp.fortran/task-detach-9.f90: New.
5480 * testsuite/libgomp.fortran/task-detach-10.f90: New.
5481 * testsuite/libgomp.fortran/task-detach-11.f90: New.
5482
2f5765cf
GA
54832021-02-22 Tobias Burnus <tobias@codesourcery.com>
5484
5485 PR fortran/99171
5486 * testsuite/libgomp.fortran/dummy-procs-1.f90: New test.
5487
acc0ee5c
GA
54882021-02-17 Julian Brown <julian@codesourcery.com>
5489
5490 * testsuite/libgomp.oacc-fortran/array-stride-dt-1.f90: Remove
5491 expected errors.
5492
54932021-02-17 Julian Brown <julian@codesourcery.com>
5494
5495 * testsuite/libgomp.oacc-fortran/derivedtypes-arrays-1.f90: New test.
5496 * testsuite/libgomp.oacc-fortran/update-dt-array.f90: Likewise.
5497
0c5cdb31
GA
54982021-02-11 Uroš Bizjak <ubizjak@gmail.com>
5499
5500 * config/linux/x86/futex.h (__futex_wait):
5501 Revert output type back to long.
5502 (__futex_wake): Ditto.
5503 (futex_wait): Update for revert.
5504 (futex_wake): Ditto.
5505
55062021-02-11 Uroš Bizjak <ubizjak@gmail.com>
5507
5508 * config/linux/x86/futex.h (__futex_wait): New static inline
5509 wrapper function. Correct output type to int and
5510 timeout type to void *.
5511 (__futex_wake): New static inline wrapper function.
5512 Correct output type to int.
5513 (futex_wait): Use __futex_wait.
5514 (futex_wake): Use __futex_wake.
5515
4b37c3ea
GA
55162021-02-10 Julian Brown <julian@codesourcery.com>
5517
5518 PR fortran/98979
5519 * testsuite/libgomp.oacc-fortran/array-stride-dt-1.f90: Add expected
5520 errors.
5521
a19dd5e6
GA
55222021-02-04 Julian Brown <julian@codesourcery.com>
5523
5524 * testsuite/libgomp.oacc-fortran/array-stride-dt-1.f90: New test.
5525
9faaa807
GA
55262021-02-03 Andrew Stubbs <ams@codesourcery.com>
5527
5528 * plugin/plugin-gcn.c (EF_AMDGPU_MACH): Add
5529 EF_AMDGPU_MACH_AMDGCN_GFX908.
5530 (gcn_gfx908_s): New constant string.
5531 (isa_hsa_name): Add gfx908.
5532 (isa_code): Add gfx908.
5533
161e4c08
GA
55342021-01-25 Kwok Cheung Yeung <kcy@codesourcery.com>
5535
5536 * libgomp.texi (omp_fulfill_event): New entry.
5537
b93d0e36
GA
55382021-01-20 Jakub Jelinek <jakub@redhat.com>
5539
5540 * task.c (GOMP_task): Rename priority argument to priority_arg,
5541 add priority automatic variable and modify that variable. Instead of
5542 clearing detach argument when GOMP_TASK_FLAG_DETACH bit is not set,
5543 check flags for that bit.
5544
f35a4f96
GA
55452021-01-19 Tobias Burnus <tobias@codesourcery.com>
5546
5547 PR fortran/98476
5548 * testsuite/libgomp.fortran/is_device_ptr-1.f90: New test.
5549
ef1f8ee6
GA
55502021-01-18 Andreas Schwab <schwab@suse.de>
5551
5552 * configure.tgt (riscv64*-*-linux*): Add linux to config_path.
5553
55542021-01-18 Sebastian Huber <sebastian.huber@embedded-brains.de>
5555
5556 * config/rtems/sem.h (gomp_sem_getcount): New function.
5557
55582021-01-18 Jakub Jelinek <jakub@redhat.com>
5559
5560 * config/linux/sem.h (gomp_sem_getcount): New function.
5561 * config/posix/sem.h (gomp_sem_getcount): New function.
5562 * config/posix/sem.c (gomp_sem_getcount): New function.
5563 * config/accel/sem.h (gomp_sem_getcount): New function.
5564 * task.c (task_fulfilled_p): Use gomp_sem_getcount.
5565 (omp_fulfill_event): Likewise.
5566
59cf67d1
GA
55672021-01-16 Kwok Cheung Yeung <kcy@codesourcery.com>
5568
5569 * fortran.c (omp_fulfill_event_): New.
5570 * libgomp.h (struct gomp_task): Add detach and completion_sem fields.
5571 (struct gomp_team): Add task_detach_queue and task_detach_count
5572 fields.
5573 * libgomp.map (OMP_5.0.1): Add omp_fulfill_event and omp_fulfill_event_.
5574 * libgomp_g.h (GOMP_task): Add extra argument.
5575 * omp.h.in (enum omp_event_handle_t): New.
5576 (omp_fulfill_event): New.
5577 * omp_lib.f90.in (omp_event_handle_kind): New.
5578 (omp_fulfill_event): New.
5579 * omp_lib.h.in (omp_event_handle_kind): New.
5580 (omp_fulfill_event): Declare.
5581 * priority_queue.c (priority_tree_find): New.
5582 (priority_list_find): New.
5583 (priority_queue_find): New.
5584 * priority_queue.h (priority_queue_predicate): New.
5585 (priority_queue_find): New.
5586 * task.c (gomp_init_task): Initialize detach field.
5587 (task_fulfilled_p): New.
5588 (GOMP_task): Add detach argument. Ignore detach argument if
5589 GOMP_TASK_FLAG_DETACH not set in flags. Initialize completion_sem
5590 field. Copy address of completion_sem into detach argument and
5591 into the start of the data record. Wait for detach event if task
5592 not deferred.
5593 (gomp_barrier_handle_tasks): Queue tasks with unfulfilled events.
5594 Remove completed tasks and requeue dependent tasks.
5595 (omp_fulfill_event): New.
5596 * team.c (gomp_new_team): Initialize task_detach_queue and
5597 task_detach_count fields.
5598 (free_team): Free task_detach_queue field.
5599 * testsuite/libgomp.c-c++-common/task-detach-1.c: New testcase.
5600 * testsuite/libgomp.c-c++-common/task-detach-2.c: New testcase.
5601 * testsuite/libgomp.c-c++-common/task-detach-3.c: New testcase.
5602 * testsuite/libgomp.c-c++-common/task-detach-4.c: New testcase.
5603 * testsuite/libgomp.c-c++-common/task-detach-5.c: New testcase.
5604 * testsuite/libgomp.c-c++-common/task-detach-6.c: New testcase.
5605 * testsuite/libgomp.fortran/task-detach-1.f90: New testcase.
5606 * testsuite/libgomp.fortran/task-detach-2.f90: New testcase.
5607 * testsuite/libgomp.fortran/task-detach-3.f90: New testcase.
5608 * testsuite/libgomp.fortran/task-detach-4.f90: New testcase.
5609 * testsuite/libgomp.fortran/task-detach-5.f90: New testcase.
5610 * testsuite/libgomp.fortran/task-detach-6.f90: New testcase.
5611
2f7f0d32
GA
56122021-01-15 Jakub Jelinek <jakub@redhat.com>
5613
5614 PR target/70454
5615 * configure.tgt: For i?86 and x86_64 determine if -march=i486 needs to
5616 be added through preprocessor check on
5617 __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4.
5618
5fff80fd
GA
56192021-01-14 Thomas Schwinge <thomas@codesourcery.com>
5620
5621 PR libgomp/65099
5622 * plugin/configfrag.ac (PLUGIN_NVPTX): Restrict to supported
5623 configurations.
5624 * configure: Regenerate.
5625 * plugin/plugin-nvptx.c (nvptx_get_num_devices): Remove 64-bit
5626 check.
5627
651b8a50
GA
56282021-01-05 Samuel Thibault <samuel.thibault@ens-lyon.org>
5629
5630 * configure: Re-generate.
5631
56322021-01-05 Samuel Thibault <samuel.thibault@ens-lyon.org>
5633
5634 * configure: Re-generate.
5635
56362021-01-05 Julian Brown <julian@codesourcery.com>
5637
5638 * plugin/plugin-nvptx.c (SOFTSTACK_CACHE_LIMIT): New define.
5639 (struct ptx_device): Add omp_stacks struct.
5640 (nvptx_open_device): Initialise cached-stacks housekeeping info.
5641 (nvptx_close_device): Free cached stacks block and mutex.
5642 (nvptx_stacks_free): New function.
5643 (nvptx_alloc): Add SUPPRESS_ERRORS parameter.
5644 (GOMP_OFFLOAD_alloc): Add strategies for freeing soft-stacks block.
5645 (nvptx_stacks_alloc): Rename to...
5646 (nvptx_stacks_acquire): This. Cache stacks block between runs if same
5647 size or smaller is required.
5648 (nvptx_stacks_free): Remove.
5649 (GOMP_OFFLOAD_run): Call nvptx_stacks_acquire and lock stacks block
5650 during kernel execution.
5651
b6dd195a
GA
56522021-01-01 Jakub Jelinek <jakub@redhat.com>
5653
5654 * libgomp.texi: Bump @copying's copyright year.
5655
2d3425a5
GA
56562020-12-28 Gerald Pfeifer <gerald@pfeifer.com>
5657
5658 * libgomp.texi (Top): Avoid bad "up" link.
5659
b1a2242e
GA
56602020-12-18 Jakub Jelinek <jakub@redhat.com>
5661
5662 * testsuite/libgomp.c/task-6.c: New test.
5663
ca2bd949
GA
56642020-12-09 Andrew Stubbs <ams@codesourcery.com>
5665
5666 * plugin/plugin-gcn.c: Include hsa_ext_amd.h.
5667 (HSA_AMD_AGENT_INFO_COMPUTE_UNIT_COUNT): Delete redundant definition.
5668
f6e8e279
GA
56692020-12-08 Tobias Burnus <tobias@codesourcery.com>
5670
5671 * testsuite/libgomp.fortran/scan-1.f90: New test.
5672
6e1edf48
GA
56732020-12-05 Iain Sandoe <iain@sandoe.co.uk>
5674
5675 PR target/97865
5676 * configure: Regenerate.
5677
a9625c50
GA
56782020-11-29 John David Anglin <danglin@gcc.gnu.org>
5679
5680 * configure: Regenerate.
5681
360258da
GA
56822020-11-25 Thomas Schwinge <thomas@codesourcery.com>
5683
5684 * testsuite/libgomp.oacc-c++/cache-1.C: New.
5685 * testsuite/libgomp.oacc-c-c++-common/cache-1.c: Update.
5686
56872020-11-25 Andrew Stubbs <ams@codesourcery.com>
5688
5689 * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90 (main): Adjust
5690 expected results.
5691
1e2c9a27
GA
56922020-11-24 Andrew Stubbs <ams@codesourcery.com>
5693
5694 * plugin/plugin-gcn.c: Don't redefine relocations if elf.h has them.
5695 (reserved): Delete unused define.
5696
56972020-11-24 Thomas Schwinge <thomas@codesourcery.com>
5698
5699 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c: Avoid
5700 Tcl 8.5-specific behavior.
5701 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Likewise.
5702
25bb75f8
GA
57032020-11-18 Kwok Cheung Yeung <kcy@codesourcery.com>
5704
5705 * env.c (gomp_global_icv): Remove nest_var field. Add
5706 max_active_levels_var field.
5707 (gomp_max_active_levels_var): Remove.
5708 (parse_boolean): Return true on success.
5709 (handle_omp_display_env): Express OMP_NESTED in terms of
5710 max_active_levels_var. Change format specifier for
5711 max_active_levels_var.
5712 (initialize_env): Set max_active_levels_var from
5713 OMP_MAX_ACTIVE_LEVELS, OMP_NESTED, OMP_NUM_THREADS and
5714 OMP_PROC_BIND.
5715 * icv.c (omp_set_nested): Express in terms of
5716 max_active_levels_var.
5717 (omp_get_nested): Likewise.
5718 (omp_set_max_active_levels): Use max_active_levels_var field instead
5719 of gomp_max_active_levels_var.
5720 (omp_get_max_active_levels): Likewise.
5721 * libgomp.h (struct gomp_task_icv): Remove nest_var field. Add
5722 max_active_levels_var field.
5723 (gomp_supported_active_levels): Set to UCHAR_MAX.
5724 (gomp_max_active_levels_var): Delete.
5725 * libgomp.texi (omp_get_nested): Update documentation.
5726 (omp_set_nested): Likewise.
5727 (OMP_MAX_ACTIVE_LEVELS): Likewise.
5728 (OMP_NESTED): Likewise.
5729 (OMP_NUM_THREADS): Likewise.
5730 (OMP_PROC_BIND): Likewise.
5731 * parallel.c (gomp_resolve_num_threads): Replace reference
5732 to nest_var with max_active_levels_var. Use max_active_levels_var
5733 field instead of gomp_max_active_levels_var.
5734
57352020-11-18 Tobias Burnus <tobias@codesourcery.com>
5736
5737 * testsuite/libgomp.c/usleep.h (fallback_usleep): Renamed from
5738 nvptx_usleep; use also for device={arch(gcn)}.
5739
faab61b5
GA
57402020-11-14 Jakub Jelinek <jakub@redhat.com>
5741
5742 * testsuite/libgomp.c-c++-common/allocate-1.c (struct S): New type.
5743 (foo): Add tests for non-VLA private and firstprivate clauses on
5744 omp task.
5745 (bar): Likewise. Remove taking of address from private/firstprivate
5746 variables.
5747 * testsuite/libgomp.c++/allocate-1.C (struct S): New type.
5748 (foo): Add p, q, px and s arguments. Add tests for array reductions
5749 and for non-VLA private and firstprivate clauses on omp task.
5750 (bar): Removed.
5751 (main): Adjust foo caller. Don't call bar.
5752
77f67db2
GA
57532020-11-13 Gergö Barany <gergo@codesourcery.com>
5754 Thomas Schwinge <thomas@codesourcery.com>
5755
5756 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
5757 New.
5758 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose.c:
5759 Likewise.
5760 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
5761 Likewise.
5762 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Adjust.
5763 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Likewise.
5764
57652020-11-13 Gergö Barany <gergo@codesourcery.com>
5766 Thomas Schwinge <thomas@codesourcery.com>
5767
5768 PR fortran/94358
5769 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: New.
5770
57712020-11-13 Jakub Jelinek <jakub@redhat.com>
5772
5773 * testsuite/libgomp.c-c++-common/allocate-1.c (foo): Add tests
5774 for array reductions.
5775 (main): Adjust foo callers.
5776
a5a11525
GA
57772020-11-12 Jakub Jelinek <jakub@redhat.com>
5778
5779 * libgomp.map (GOMP_alloc, GOMP_free): Export at GOMP_5.0.1.
5780 * omp.h.in (omp_alloc): Add malloc and alloc_size attributes.
5781 * libgomp_g.h (GOMP_alloc, GOMP_free): Declare.
5782 * allocator.c (omp_aligned_alloc): New for now static function,
5783 add alignment argument and handle it.
5784 (omp_alloc): Reimplement using omp_aligned_alloc.
5785 (GOMP_alloc, GOMP_free): New functions.
5786 (omp_free): Add ialias.
5787 * testsuite/libgomp.c-c++-common/allocate-1.c: New test.
5788 * testsuite/libgomp.c++/allocate-1.C: New test.
5789
57902020-11-12 Thomas Schwinge <thomas@codesourcery.com>
5791
5792 PR fortran/97782
5793 * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90: Adjust.
5794
bb622641
GA
57952020-11-10 Chung-Lin Tang <cltang@codesourcery.com>
5796
5797 * libgomp.h (enum gomp_map_vars_kind): Adjust enum values to be bit-flag
5798 usable.
5799 * oacc-mem.c (acc_map_data): Adjust gomp_map_vars argument flags to
5800 'GOMP_MAP_VARS_OPENACC | GOMP_MAP_VARS_ENTER_DATA'.
5801 (goacc_enter_datum): Likewise for call to gomp_map_vars_async.
5802 (goacc_enter_data_internal): Likewise.
5803 * target.c (gomp_map_vars_internal):
5804 Change checks of GOMP_MAP_VARS_ENTER_DATA to use bit-and (&). Adjust use
5805 of gomp_attach_pointer for OpenMP cases.
5806 (gomp_exit_data): Add handling of GOMP_MAP_DETACH.
5807 (GOMP_target_enter_exit_data): Add handling of GOMP_MAP_ATTACH.
5808 * testsuite/libgomp.c-c++-common/ptr-attach-1.c: New testcase.
5809
0cfd9109
GA
58102020-11-05 Ulrich Drepper <drepper@redhat.com>
5811 Kwok Cheung Yeung <kcy@codesourcery.com>
5812
5813 * Makefile.am (%.mod): Add -cpp and -fopenmp to compile flags.
5814 * Makefile.in: Regenerate.
5815 * fortran.c: Wrap uses of omp_set_nested and omp_get_nested with
5816 pragmas to ignore -Wdeprecated-declarations warnings.
5817 * icv.c: Likewise.
5818 * omp.h.in (__GOMP_DEPRECATED_5_0): Define.
5819 Mark omp_lock_hint_* enum values, omp_lock_hint_t, omp_set_nested,
5820 and omp_get_nested with __GOMP_DEPRECATED_5_0.
5821 * omp_lib.f90.in: Mark omp_get_nested and omp_set_nested as
5822 deprecated.
5823 * testsuite/libgomp.c++/affinity-1.C: Add -Wno-deprecated-declarations
5824 to test options.
5825 * testsuite/libgomp.c/affinity-1.c: Likewise.
5826 * testsuite/libgomp.c/affinity-2.c: Likewise.
5827 * testsuite/libgomp.c/appendix-a/a.15.1.c: Likewise.
5828 * testsuite/libgomp.c/lib-1.c: Likewise.
5829 * testsuite/libgomp.c/nested-1.c: Likewise.
5830 * testsuite/libgomp.c/nested-2.c: Likewise.
5831 * testsuite/libgomp.c/nested-3.c: Likewise.
5832 * testsuite/libgomp.c/pr32362-1.c: Likewise.
5833 * testsuite/libgomp.c/pr32362-2.c: Likewise.
5834 * testsuite/libgomp.c/pr32362-3.c: Likewise.
5835 * testsuite/libgomp.c/pr35549.c: Likewise.
5836 * testsuite/libgomp.c/pr42942.c: Likewise.
5837 * testsuite/libgomp.c/pr61200.c: Likewise.
5838 * testsuite/libgomp.c/sort-1.c: Likewise.
5839 * testsuite/libgomp.c/target-5.c: Likewise.
5840 * testsuite/libgomp.c/target-6.c: Likewise.
5841 * testsuite/libgomp.c/teams-1.c: Likewise.
5842 * testsuite/libgomp.c/thread-limit-1.c: Likewise.
5843 * testsuite/libgomp.c/thread-limit-2.c: Likewise.
5844 * testsuite/libgomp.c/thread-limit-4.c: Likewise.
5845 * testsuite/libgomp.fortran/affinity1.f90: Likewise.
5846 * testsuite/libgomp.fortran/lib1.f90: Likewise.
5847 * testsuite/libgomp.fortran/lib2.f: Likewise.
5848 * testsuite/libgomp.fortran/nested1.f90: Likewise.
5849 * testsuite/libgomp.fortran/teams1.f90: Likewise.
5850
88ce3d5f
GA
58512020-11-02 Thomas Schwinge <thomas@codesourcery.com>
5852
5853 PR target/85486
5854 * testsuite/libgomp.oacc-c-c++-common/pr85486-2.c: Simplify and enhance.
5855 * testsuite/libgomp.oacc-c-c++-common/pr85486-3.c: Likewise.
5856 * testsuite/libgomp.oacc-c-c++-common/pr85486.c: Likewise.
5857
58582020-11-02 Thomas Schwinge <thomas@codesourcery.com>
5859
5860 PR testsuite/80219
5861 PR testsuite/85303
5862 * testsuite/lib/libgomp.exp (libgomp_init): Set
5863 'gcc_warning_prefix', 'gcc_error_prefix'.
5864
58652020-10-30 Jakub Jelinek <jakub@redhat.com>
5866
5867 * target.c (gomp_map_vars_internal): Use FIELD_TGT_EMPTY macro
5868 even in field_tgt_clear initializer.
5869
e93aae4a
GA
58702020-10-28 Jakub Jelinek <jakub@redhat.com>
5871
5872 * testsuite/libgomp.c/target-42.c: New test.
5873
58742020-10-28 Jakub Jelinek <jakub@redhat.com>
5875 Tom de Vries <tdevries@suse.de>
5876
5877 PR testsuite/81690
5878 * testsuite/libgomp.c/usleep.h: New file.
5879 * testsuite/libgomp.c/target-32.c: Include usleep.h.
5880 (main): Use tgt_usleep instead of usleep.
5881 * testsuite/libgomp.c/thread-limit-2.c: Include usleep.h.
5882 (main): Use tgt_usleep instead of usleep.
5883
58842020-10-28 Jakub Jelinek <jakub@redhat.com>
5885
5886 PR lto/96680
5887 * testsuite/libgomp.c/declare-variant-1.c: New test.
5888
56ddd5e2
GA
58892020-10-22 Jakub Jelinek <jakub@redhat.com>
5890
5891 * testsuite/libgomp.c/target-41.c: New test.
5892
58932020-10-22 Jakub Jelinek <jakub@redhat.com>
5894
5895 * icv.c (omp_get_initial_device): Remove including corresponding
5896 ialias.
5897 * icv-device.c (omp_get_initial_device): New function. Return
5898 gomp_get_num_devices (). Add ialias.
5899 * target.c (resolve_device): Don't fail with
5900 OMP_TARGET_OFFLOAD=mandatory if device_id is equal to
5901 gomp_get_num_devices ().
5902 (omp_target_alloc, omp_target_free, omp_target_is_present,
5903 omp_target_memcpy, omp_target_memcpy_rect, omp_target_associate_ptr,
5904 omp_target_disassociate_ptr, omp_pause_resource): Use
5905 gomp_get_num_devices () instead of GOMP_DEVICE_HOST_FALLBACK on the
5906 first use in the functions, in uses dominated by the
5907 gomp_get_num_devices call use num_devices_openmp instead.
5908 * libgomp.texi (omp_get_initial_device): Document.
5909 * config/gcn/icv-device.c (omp_get_initial_device): New function.
5910 Add ialias.
5911 * config/nvptx/icv-device.c (omp_get_initial_device): Likewise.
5912 * testsuite/libgomp.c/target-40.c: New test.
5913
59142020-10-21 Jakub Jelinek <jakub@redhat.com>
5915
5916 * env.c (parse_target_offload): Change new_offload var type to int,
5917 preinitialize to -1, remove found var and test new_offload != -1
5918 instead of found.
5919
e2e04288
GA
59202020-10-20 Jakub Jelinek <jakub@redhat.com>
5921
5922 * target.c (gomp_target_init): Inside of the function, use automatic
5923 variables corresponding to num_devices, num_devices_openmp and devices
5924 global variables and update the globals only at the end of the
5925 function.
5926
59272020-10-20 Kwok Cheung Yeung <kcy@codesourcery.com>
5928
5929 * env.c (gomp_target_offload_var): New.
5930 (parse_target_offload): New.
5931 (handle_omp_display_env): Print value of OMP_TARGET_OFFLOAD.
5932 (initialize_env): Parse OMP_TARGET_OFFLOAD.
5933 * libgomp.h (gomp_target_offload_t): New.
5934 (gomp_target_offload_var): New.
5935 * libgomp.texi (OMP_TARGET_OFFLOAD): New section.
5936 * target.c (resolve_device): Generate error if device not found and
5937 offloading is mandatory.
5938 (gomp_target_fallback): Generate error if offloading is mandatory.
5939 (GOMP_target): Add argument in call to gomp_target_fallback.
5940 (GOMP_target_ext): Likewise.
5941 (gomp_target_data_fallback): Generate error if offloading is mandatory.
5942 (GOMP_target_data): Add argument in call to gomp_target_data_fallback.
5943 (GOMP_target_data_ext): Likewise.
5944 (gomp_target_task_fn): Add argument in call to gomp_target_fallback.
5945 (gomp_target_init): Return early if offloading is disabled.
5946
b85d5dc5
GA
59472020-10-15 Kwok Cheung Yeung <kcy@codesourcery.com>
5948
5949 * libgomp.texi (omp_get_max_active_levels): Modify description.
5950 (omp_get_supported_active_levels): Make descriptions consistent.
5951
b2698c21
GA
59522020-10-14 Jakub Jelinek <jakub@redhat.com>
5953
5954 * libgomp.texi (omp_get_supported_active_levels): Fix a typo.
5955
bdd74cc2
GA
59562020-10-13 Kwok Cheung Yeung <kcy@codesourcery.com>
5957
5958 * env.c (gomp_max_active_levels_var): Initialize to
5959 gomp_supported_active_levels.
5960 (initialize_env): Limit gomp_max_active_levels_var to be at most
5961 equal to gomp_supported_active_levels.
5962 * fortran.c (omp_get_supported_active_levels): Add ialias_redirect.
5963 (omp_get_supported_active_levels_): New.
5964 * icv.c (omp_set_max_active_levels): Limit gomp_max_active_levels_var
5965 to at most equal to gomp_supported_active_levels.
5966 (omp_get_supported_active_levels): New.
5967 * libgomp.h (gomp_supported_active_levels): New.
5968 * libgomp.map (OMP_5.0.1): Add omp_get_supported_active_levels and
5969 omp_get_supported_active_levels_.
5970 * libgomp.texi (omp_get_supported_active_levels): New.
5971 (omp_set_max_active_levels): Update. Add reference to
5972 omp_get_supported_active_levels.
5973 * omp.h.in (omp_get_supported_active_levels): New.
5974 * omp_lib.f90.in (omp_get_supported_active_levels): New.
5975 * omp_lib.h.in (omp_get_supported_active_levels): New.
5976 * testsuite/libgomp.c/lib-2.c (main): Check omp_get_max_active_levels
5977 against omp_get_supported_active_levels.
5978 * testsuite/libgomp.fortran/lib4.f90 (lib4): Likewise.
5979
2baa36d4
GA
59802020-10-11 Clement Chigot <clement.chigot@atos.net>
5981
5982 * config/t-aix: Delete and recreate libgomp before creating
5983 FAT library.
5984
da9df699
GA
59852020-10-08 Tom de Vries <tdevries@suse.de>
5986
5987 PR libgomp/81802
5988 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_run): Report launch
5989 dimensions.
5990
8e97b905
GA
59912020-10-06 Tom de Vries <tdevries@suse.de>
5992
5993 * testsuite/libgomp.oacc-fortran/declare-5.f90: Add xfail for PR92790.
5994
59952020-10-06 Tom de Vries <tdevries@suse.de>
5996
5997 PR middle-end/90861
5998 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Remove xfail.
5999
7e9282ae
GA
60002020-10-05 Tom de Vries <tdevries@suse.de>
6001
6002 PR fortran/95654
6003 * testsuite/libgomp.fortran/pr95654.f90: New test.
6004
b0b9b8f0
GA
60052020-10-02 Tobias Burnus <tobias@codesourcery.com>
6006
6007 * Makefile.in: Regenerate with automake 1.15.1.
6008 * aclocal.m4: Likewise.
6009 * configure: Likewise.
6010 * testsuite/Makefile.in: Likewise.
6011
660bfe61
GA
60122020-09-30 Andrew Stubbs <ams@codesourcery.com>
6013
6014 * parallel.c (gomp_resolve_num_threads): Ignore nest_var on nvptx
6015 and amdgcn targets.
6016
60172020-09-30 Tobias Burnus <tobias@codesourcery.com>
6018
6019 * testsuite/libgomp.fortran/declare-target-3.f90: New test.
6020
93bca37c
GA
60212020-09-29 Andrew Stubbs <ams@codesourcery.com>
6022
6023 * config/gcn/bar.c (gomp_barrier_wait_end): Skip the barrier if the
6024 total number of threads is one.
6025 (gomp_team_barrier_wake): Likewise.
6026 (gomp_team_barrier_wait_end): Likewise.
6027 (gomp_team_barrier_wait_cancel_end): Likewise.
6028 * config/nvptx/bar.c (gomp_barrier_wait_end): Likewise.
6029 (gomp_team_barrier_wake): Likewise.
6030 (gomp_team_barrier_wait_end): Likewise.
6031 (gomp_team_barrier_wait_cancel_end): Likewise.
6032 * testsuite/libgomp.c-c++-common/nested-parallel-unbalanced.c: New test.
6033
e84761c6
GA
60342020-09-28 Tobias Burnus <tobias@codesourcery.com>
6035
6036 PR middle-end/96390
6037 * testsuite/libgomp.c++/pr96390.C: New test.
6038 * testsuite/libgomp.c-c++-common/pr96390.c: New test.
6039
4383c595
GA
60402020-09-27 Clement Chigot <clement.chigot@atos.net>
6041
6042 * config/t-aix: Use $(AR) without -X32_64.
6043
cdd8f031
GA
60442020-09-25 Jakub Jelinek <jakub@redhat.com>
6045
6046 * testsuite/libgomp.c/loop-25.c: New test.
6047
521d2711
GA
60482020-09-22 Tobias Burnus <tobias@codesourcery.com>
6049
6050 PR fortran/95654
6051 * testsuite/libgomp.fortran/pr66199-5.f90: Make stop codes unique.
6052
60532020-09-22 Tom de Vries <tdevries@suse.de>
6054
6055 * plugin/plugin-nvptx.c (link_ptx): Print elog if cuLinkComplete call
6056 fails.
6057
ecde1b0a
GA
60582020-09-16 Nathan Sidwell <nathan@acm.org>
6059
6060 * testsuite/libgomp.c++/udr-3.C: Add missing ctor.
6061
9f7ab8c5
GA
60622020-09-15 Tobias Burnus <tobias@codesourcery.com>
6063
6064 PR fortran/96668
6065 * target.c (gomp_map_vars_internal): Initialize has_nullptr.
6066
60672020-09-15 Tobias Burnus <tobias@codesourcery.com>
6068
6069 PR fortran/96668
6070 * libgomp.h (struct target_var_desc): Add has_null_ptr_assoc member.
6071 * target.c (gomp_map_vars_existing): Add always_to_flag flag.
6072 (gomp_map_vars_existing): Update call to it.
6073 (gomp_map_fields_existing): Likewise
6074 (gomp_map_vars_internal): Update PSET handling such that if a nullptr is
6075 now allocated or if GOMP_MAP_POINTER is used PSET is updated and pointer
6076 remapped.
6077 (GOMP_target_enter_exit_data): Hanlde GOMP_MAP_ALWAYS_POINTER like
6078 GOMP_MAP_POINTER.
6079 * testsuite/libgomp.fortran/map-alloc-ptr-1.f90: New test.
6080 * testsuite/libgomp.fortran/map-alloc-ptr-2.f90: New test.
6081
50a71cd0
GA
60822020-09-14 Tom de Vries <tdevries@suse.de>
6083
6084 * config/nvptx/atomic.c: New file. Add
6085 __sync_val_compare_and_swap_16.
6086 * testsuite/libgomp.c-c++-common/reduction-16.c: Add -latomic for
6087 target offload_target_nvptx.
6088
31a05046
GA
60892020-09-08 Julian Brown <julian@codesourcery.com>
6090
6091 * testsuite/libgomp.oacc-c-c++-common/atomic_capture-2.c: Remove
6092 iteration-ordering assumptions.
6093
60942020-09-08 Julian Brown <julian@codesourcery.com>
6095
6096 * testsuite/libgomp.oacc-fortran/collapse-1.f90: Fix race condition.
6097 * testsuite/libgomp.oacc-fortran/collapse-2.f90: Likewise.
6098
5b9a3d2a
GA
60992020-08-20 Chung-Lin Tang <cltang@codesourcery.com>
6100
6101 * plugin/plugin-nvptx.c (nvptx_free):
6102 Change "GOMP_PLUGIN_acc_thread () == NULL" test into check of
6103 CUDA_ERROR_NOT_PERMITTED status for cuMemGetAddressRange. Adjust
6104 comments.
6105
61062020-08-20 Tobias Burnus <tobias@codesourcery.com>
6107
6108 * testsuite/libgomp.fortran/lastprivate-conditional-10.f90: New test.
6109
b3cb5606
GA
61102020-08-13 Kwok Cheung Yeung <kcy@codesourcery.com>
6111
6112 * testsuite/libgomp.c-c++-common/reduction-16.c: New.
6113
61142020-08-13 Jakub Jelinek <jakub@redhat.com>
6115
6116 * testsuite/libgomp.c/loop-22.c (main): Add some further tests.
6117 * testsuite/libgomp.c/loop-23.c (main): Likewise.
6118 * testsuite/libgomp.c/loop-24.c: New test.
6119
bc0ca715
GA
61202020-08-08 Jakub Jelinek <jakub@redhat.com>
6121 Tobias Burnus <tobias@codesourcery.com>
6122
6123 PR fortran/93553
6124 * testsuite/libgomp.fortran/pr93553.f90: New test.
6125
aa5ea20c
GA
61262020-08-05 Jakub Jelinek <jakub@redhat.com>
6127
6128 * testsuite/libgomp.c/loop-22.c: New test.
6129 * testsuite/libgomp.c/loop-23.c: New test.
6130
61312020-08-05 Jakub Jelinek <jakub@redhat.com>
6132
6133 PR middle-end/96459
6134 * testsuite/libgomp.c/teams-3.c: New test.
6135 * testsuite/libgomp.c-c++-common/for-2.h (OMPTEAMS): Define to nothing
6136 if not defined yet.
6137 (N(test)): Use it before all N(f*) calls.
6138 * testsuite/libgomp.c-c++-common/for-14.c (DO_PRAGMA, OMPTEAMS): Define.
6139 (main): Don't call all test_* functions from within
6140 #pragma omp teams reduction(|:err), call them directly.
6141
abba2591
GA
61422020-08-04 Tom de Vries <tdevries@suse.de>
6143
6144 PR target/96428
6145 * testsuite/libgomp.oacc-fortran/pr96628-part1.f90: New test.
6146 * testsuite/libgomp.oacc-fortran/pr96628-part2.f90: New test.
6147
6a1ad710
GA
61482020-08-03 Julian Brown <julian@codesourcery.com>
6149 Thomas Schwinge <thomas@codesourcery.com>
6150
6151 * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90: Don't run for
6152 shared-memory devices. Extend with further checking.
6153
61542020-08-03 Martin Jambor <mjambor@suse.cz>
6155
6156 * plugin/Makefrag.am: Remove configuration of HSA plugin.
6157 * aclocal.m4: Regenerated.
6158 * Makefile.in: Regenerated.
6159 * config.h.in: Regenerated.
6160 * configure: Regenerated.
6161 * plugin/configfrag.ac: Likewise.
6162 * plugin/hsa_ext_finalize.h: Removed.
6163 * plugin/plugin-hsa.c: Likewise.
6164 * testsuite/Makefile.in: Regenerated.
6165 * testsuite/lib/libgomp.exp
6166 (offload_target_to_openacc_device_type): Remove hsa case.
6167 (check_effective_target_hsa_offloading_selected_nocache): Removed
6168 (check_effective_target_hsa_offloading_selected): Likewise.
6169 (libgomp_init): Do not add -Wno-hsa to additional_flags.
6170 * testsuite/libgomp.hsa.c/alloca-1.c: Removed test.
6171 * testsuite/libgomp.hsa.c/bitfield-1.c: Likewise.
6172 * testsuite/libgomp.hsa.c/bits-insns.c: Likewise.
6173 * testsuite/libgomp.hsa.c/builtins-1.c: Likewise.
6174 * testsuite/libgomp.hsa.c/c.exp: Likewise.
6175 * testsuite/libgomp.hsa.c/complex-1.c: Likewise.
6176 * testsuite/libgomp.hsa.c/complex-align-2.c: Likewise.
6177 * testsuite/libgomp.hsa.c/formal-actual-args-1.c: Likewise.
6178 * testsuite/libgomp.hsa.c/function-call-1.c: Likewise.
6179 * testsuite/libgomp.hsa.c/get-level-1.c: Likewise.
6180 * testsuite/libgomp.hsa.c/gridify-1.c: Likewise.
6181 * testsuite/libgomp.hsa.c/gridify-2.c: Likewise.
6182 * testsuite/libgomp.hsa.c/gridify-3.c: Likewise.
6183 * testsuite/libgomp.hsa.c/gridify-4.c: Likewise.
6184 * testsuite/libgomp.hsa.c/memory-operations-1.c: Likewise.
6185 * testsuite/libgomp.hsa.c/pr69568.c: Likewise.
6186 * testsuite/libgomp.hsa.c/pr82416.c: Likewise.
6187 * testsuite/libgomp.hsa.c/rotate-1.c: Likewise.
6188 * testsuite/libgomp.hsa.c/staticvar.c: Likewise.
6189 * testsuite/libgomp.hsa.c/switch-1.c: Likewise.
6190 * testsuite/libgomp.hsa.c/switch-branch-1.c: Likewise.
6191 * testsuite/libgomp.hsa.c/switch-sbr-2.c: Likewise.
6192 * testsuite/libgomp.hsa.c/tiling-1.c: Likewise.
6193 * testsuite/libgomp.hsa.c/tiling-2.c: Likewise.
6194
e71dab87
GA
61952020-07-27 Julian Brown <julian@codesourcery.com>
6196 Thomas Schwinge <thomas@codesourcery.com>
6197
6198 * libgomp.h (struct target_var_desc): Rename do_detach field to
6199 is_attach.
6200 * oacc-mem.c (goacc_exit_datum_1): Add assert. Don't set finalize for
6201 GOMP_MAP_FORCE_DETACH. Update checking to use is_attach field.
6202 (goacc_enter_data_internal): Don't affect reference counts
6203 for attach mappings.
6204 (goacc_exit_data_internal): Don't affect reference counts for detach
6205 mappings.
6206 * target.c (gomp_map_vars_existing): Don't affect reference counts for
6207 attach mappings.
6208 (gomp_map_vars_internal): Set renamed is_attach flag unconditionally to
6209 mark attach mappings.
6210 (gomp_unmap_vars_internal): Use is_attach flag to prevent affecting
6211 reference count for attach mappings.
6212 * testsuite/libgomp.oacc-c-c++-common/mdc-refcount-1.c: New test.
6213 * testsuite/libgomp.oacc-c-c++-common/mdc-refcount-2.c: New test.
6214 * testsuite/libgomp.oacc-c-c++-common/mdc-refcount-2.c: New test.
6215 * testsuite/libgomp.oacc-fortran/deep-copy-6-no_finalize.F90: Mark
6216 test as shouldfail.
6217 * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: Adjust to fail
6218 gracefully in no-finalize mode.
6219 * testsuite/libgomp.oacc-c-c++-common/mdc-refcount-3.c: New file.
6220
53256ee3
GA
62212020-07-24 Thomas Schwinge <thomas@codesourcery.com>
6222
6223 * testsuite/libgomp.oacc-c++/c++.exp: Unset 'offload_target' after
6224 use.
6225 * testsuite/libgomp.oacc-c/c.exp: Likewise.
6226 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
6227
9bb403dc
GA
62282020-07-23 Julian Brown <julian@codesourcery.com>
6229 Thomas Schwinge <thomas@codesourcery.com>
6230
6231 * target.c (gomp_unmap_vars_internal): Remove unnecessary forcing of
6232 finalization for detach operation.
6233 * testsuite/libgomp.oacc-c-c++-common/structured-detach-underflow.c:
6234 New test.
6235
62362020-07-23 Tobias Burnus <tobias@codesourcery.com>
6237
6238 * configure.ac: Add OMP_DEPEND_KIND and OMP_INT128_SIZE.
6239 * libgomp_f.h.in (omp_check_defines): Check whether
6240 sizeof of determined Fortran kind and C typedef match.
6241 * omp_lib.f90.in: Add omp_depened_kind.
6242 * omp_lib.h.in: Likewise; fix omp_alloctrait_key_kind.
6243 * configure: Regenerate.
6244 * Makefile.in: Regenerate.
6245 * testsuite/Makefile.in: Regenerate.
6246
3ea9abca
GA
62472020-07-22 Tobias Burnus <tobias@codesourcery.com>
6248
6249 * testsuite/libgomp.c-c++-common/critical-hint-1.c: New; moved from
6250 gcc/testsuite/c-c++-common/gomp/.
6251 * testsuite/libgomp.c-c++-common/critical-hint-2.c: Likewise.
6252 * testsuite/libgomp.fortran/critical-hint-1.f90: New; moved
6253 from gcc/testsuite/gfortran.dg/gomp/.
6254 * testsuite/libgomp.fortran/critical-hint-2.f90: Likewise.
6255
62562020-07-22 Tobias Burnus <tobias@codesourcery.com>
6257
6258 * omp_lib.f90.in: Add omp_sync_hint_* and omp_sync_hint_kind.
6259 * omp_lib.h.in: Likewise.
6260
aeb34e15
GA
62612020-07-18 H.J. Lu <hjl.tools@gmail.com>
6262
6263 PR target/95620
6264 * testsuite/libgomp.c/pr95620.c: New test.
6265
96686b3f
GA
62662020-07-16 Julian Brown <julian@codesourcery.com>
6267 Thomas Schwinge <thomas@codesourcery.com>
6268
6269 * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90: New test.
6270 * testsuite/libgomp.oacc-fortran/attach-descriptor-2.f90: New test.
6271
fe8185b5
GA
62722020-07-15 Tobias Burnus <tobias@codesourcery.com>
6273
6274 * testsuite/libgomp.fortran/alloc-1.F90: Use c_size_t to
6275 avoid conversion on 32bit systems from 32bit to 64bit due
6276 to -fdefault-integer-8.
6277
62782020-07-15 Tobias Burnus <tobias@codesourcery.com>
6279
6280 * testsuite/libgomp.fortran/struct-elem-map-1.f90: Remove unused
6281 variables; add character(kind=4) tests; update TODO comment.
6282
62832020-07-15 Tobias Burnus <tobias@codesourcery.com>
6284
6285 * allocator.c: Add ialias for omp_init_allocator and
6286 omp_destroy_allocator.
6287 * configure.ac: Set INTPTR_T_KIND.
6288 * configure: Regenerate.
6289 * Makefile.in: Regenerate.
6290 * testsuite/Makefile.in: Regenerate.
6291 * fortran.c (omp_init_allocator_, omp_destroy_allocator_,
6292 omp_set_default_allocator_, omp_get_default_allocator_): New
6293 functions and ialias_redirect.
6294 * icv.c: Add ialias for omp_set_default_allocator and
6295 omp_get_default_allocator.
6296 * libgomp.map (OMP_5.0.1): Add omp_init_allocator_,
6297 omp_destroy_allocator_, omp_set_default_allocator_ and
6298 omp_get_default_allocator_.
6299 * omp_lib.f90.in: Add allocator traits parameters, declare
6300 allocator routines and add related kind parameters.
6301 * omp_lib.h.in: Likewise.
6302 * testsuite/libgomp.c-c++-common/alloc-2.c: Fix sizeof.
6303 * testsuite/libgomp.fortran/alloc-1.F90: New test.
6304 * testsuite/libgomp.fortran/alloc-2.F90: New test.
6305 * testsuite/libgomp.fortran/alloc-3.F: New test.
6306 * testsuite/libgomp.fortran/alloc-4.f90: New test.
6307 * testsuite/libgomp.fortran/alloc-5.f90: New test.
6308
8ca07a30
GA
63092020-07-14 Tom de Vries <tom@codesourcery.com>
6310 Cesar Philippidis <cesar@codesourcery.com>
6311 Thomas Schwinge <thomas@codesourcery.com>
6312 Kwok Cheung Yeung <kcy@codesourcery.com>
6313
6314 * oacc-init.c (acc_init_state_lock, acc_init_state, acc_init_thread):
6315 New variable.
6316 (acc_init_1): Set acc_init_thread to pthread_self (). Set
6317 acc_init_state to initializing at the start, and to initialized at the
6318 end.
6319 (self_initializing_p): New function.
6320 (acc_get_device_type): Return acc_device_none if called by thread that
6321 is currently executing acc_init_1.
6322 * libgomp.texi (acc_get_device_type): Update documentation.
6323 (Implementation Status and Implementation-Defined Behavior): Likewise.
6324 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-2.c: New.
6325
63262020-07-14 David Edelsohn <dje.gcc@gmail.com>
6327
6328 * config/t-aix: Set BITS from compiler cpp macro.
6329
63302020-07-14 Tobias Burnus <tobias@codesourcery.com>
6331
6332 * testsuite/libgomp.fortran/struct-elem-map-1.f90: New test.
6333
63342020-07-14 Tobias Burnus <tobias@codesourcery.com>
6335
6336 PR fortran/67311
6337 * testsuite/libgomp.fortran/target-map-1.f90: New test.
6338
63392020-07-14 Jakub Jelinek <jakub@redhat.com>
6340
6341 * testsuite/libgomp.c/loop-21.c: New test.
6342
ea69fcf9
GA
63432020-07-13 Julian Brown <julian@codesourcery.com>
6344 Thomas Schwinge <thomas@codesourcery.com>
6345
6346 * testsuite/libgomp.oacc-fortran/dynamic-pointer-1.f90: New test.
6347
86536295
GA
63482020-07-10 Julian Brown <julian@codesourcery.com>
6349 Thomas Schwinge <thomas@codesourcery.com>
6350
6351 * libgomp.h (struct splay_tree_key_s): Change virtual_refcount to
6352 dynamic_refcount.
6353 (struct gomp_device_descr): Remove GOMP_MAP_VARS_OPENACC_ENTER_DATA.
6354 * oacc-mem.c (acc_map_data): Substitute virtual_refcount for
6355 dynamic_refcount.
6356 (acc_unmap_data): Update comment.
6357 (goacc_map_var_existing, goacc_enter_datum): Adjust for
6358 dynamic_refcount semantics.
6359 (goacc_exit_datum_1, goacc_exit_datum): Re-add some error checking.
6360 Adjust for dynamic_refcount semantics.
6361 (goacc_enter_data_internal): Implement "present" case of dynamic
6362 memory-map handling here. Update "non-present" case for
6363 dynamic_refcount semantics.
6364 (goacc_exit_data_internal): Use goacc_exit_datum_1.
6365 * target.c (gomp_map_vars_internal): Remove
6366 GOMP_MAP_VARS_OPENACC_ENTER_DATA handling. Update for dynamic_refcount
6367 handling.
6368 (gomp_unmap_vars_internal): Remove virtual_refcount handling.
6369 (gomp_load_image_to_device): Substitute dynamic_refcount for
6370 virtual_refcount.
6371 * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: Remove XFAILs.
6372 * testsuite/libgomp.oacc-c-c++-common/refcounting-1.c: New test.
6373 * testsuite/libgomp.oacc-c-c++-common/refcounting-2.c: New test.
6374 * testsuite/libgomp.oacc-c-c++-common/struct-3-1-1.c: New test.
6375 * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: Remove XFAILs and
6376 trace output.
6377 * testsuite/libgomp.oacc-fortran/deep-copy-6-no_finalize.F90: Remove
6378 trace output.
6379 * testsuite/libgomp.oacc-fortran/dynamic-incr-structural-1.f90: New
6380 test.
6381 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-4.c:
6382 Remove stale comment.
6383 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-1.f90: Remove XFAILs.
6384 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-2.F90: Likewise.
6385 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-1.f90: Likewise.
6386 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-2.f90: Likewise.
6387 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-3-1.f90: Likewise.
6388 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-4-1.f90: Adjust XFAIL.
6389
63902020-07-10 Julian Brown <julian@codesourcery.com>
6391 Thomas Schwinge <thomas@codesourcery.com>
6392
6393 * oacc-mem.c (goacc_map_var_existing): New function.
6394 (goacc_enter_datum): Use above function.
6395 (goacc_exit_datum_1): New function.
6396 (goacc_exit_datum): Use above function.
6397
3f8ca9cb
GA
63982020-07-09 Julian Brown <julian@codesourcery.com>
6399 Thomas Schwinge <thomas@codesourcery.com>
6400
6401 PR middle-end/95270
6402 * testsuite/libgomp.oacc-c-c++-common/pr95270-1.c: New test.
6403 * testsuite/libgomp.oacc-c-c++-common/pr95270-2.c: New test.
6404
64052020-07-09 Julian Brown <julian@codesourcery.com>
6406
6407 * oacc-mem.c (find_group_last): Group data-movement clauses
6408 (GOMP_MAP_TO_PSET, GOMP_MAP_TO, etc.) together with a subsequent
6409 GOMP_MAP_ATTACH. Allow standalone GOMP_MAP_ATTACH also.
6410
64112020-07-09 Jakub Jelinek <jakub@redhat.com>
6412
6413 * testsuite/libgomp.c/loop-19.c: New test.
6414 * testsuite/libgomp.c/loop-20.c: New test.
6415
64162020-07-09 Jakub Jelinek <jakub@redhat.com>
6417
6418 * omp.h.in (omp_alloctrait_value_t): Change omp_atv_default from
6419 2 to -1. Add omp_atv_serialized and define omp_atv_sequential using
6420 it. Remove __omp_alloctrait_value_max__.
6421 * allocator.c (omp_init_allocator): Handle omp_atv_default for
6422 omp_atk_alignment and omp_atk_pool_size.
6423
b991c834
GA
64242020-07-03 Thomas Schwinge <thomas@codesourcery.com>
6425
6426 * oacc-mem.c (goacc_exit_data_internal): Revert always-copyfrom
6427 behavior for 'GOMP_MAP_FORCE_FROM'.
6428 * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: Adjust XFAIL.
6429
64302020-07-03 Thomas Schwinge <thomas@codesourcery.com>
6431
6432 * oacc-mem.c (goacc_exit_data_internal): Remove
6433 'GOMP_MAP_ALWAYS_FROM' handling.
6434
46fbb6c6
GA
64352020-06-30 Thomas Schwinge <thomas@codesourcery.com>
6436
6437 * testsuite/libgomp.oacc-c-c++-common/pr85381-2.c: Replace fragile
6438 'scan-assembler' with 'scan-offload-rtl'.
6439 * testsuite/libgomp.oacc-c-c++-common/pr85381-3.c: Likewise.
6440 * testsuite/libgomp.oacc-c-c++-common/pr85381-4.c: Likewise.
6441 * testsuite/libgomp.oacc-c-c++-common/pr85381-5.c: Likewise.
6442 * testsuite/libgomp.oacc-c-c++-common/pr85381.c: Likewise.
6443
64442020-06-30 Thomas Schwinge <thomas@codesourcery.com>
6445
6446 * target.c (gomp_map_vars_existing): Assert 'kind !=
6447 GOMP_MAP_ATTACH'.
6448 (gomp_map_vars_internal): Clean up.
6449
9a33c41f
GA
64502020-06-27 Jakub Jelinek <jakub@redhat.com>
6451
6452 * testsuite/libgomp.c/loop-17.c: New test.
6453 * testsuite/libgomp.c/loop-18.c: New test.
6454
c9c05f73
GA
64552020-06-26 Marek Polacek <polacek@redhat.com>
6456
6457 * testsuite/libgomp.c++/atomic-3.C: Use -std=gnu++14.
6458
4543acc8
GA
64592020-06-23 Alexandre Oliva <oliva@adacore.com>
6460
6461 * testsuite/lib/libgomp.exp: Load gcc lib scanoffload.exp.
6462 * testsuite/lib/libgomp-dg.exp: Drop now-obsolete -save-temps.
6463
605a8f3b
GA
64642020-06-22 David Edelsohn <dje.gcc@gmail.com>
6465
6466 * Makefile.am: Use -include.
6467 * Makefile.in: Regenerate.
6468
f86e11a2
GA
64692020-06-21 David Edelsohn <dje.gcc@gmail.com>
6470
6471 * Makefile.am (tmake_file): Build and install AIX-style FAT libraries.
6472 * Makefile.in: Regenerate
6473 * configure.ac (tmake_file): Substitute.
6474 * configure: Regenerate.
6475 * configure.tgt (powerpc-ibm-aix*): Define tmake_file.
6476 * config/t-aix: New file.
6477
aff95ee7
GA
64782020-06-17 Thomas Schwinge <thomas@codesourcery.com>
6479
6480 PR lto/94848
6481 * testsuite/libgomp.fortran/use_device_ptr-optional-3.f90: Add
6482 'dg-do run'.
6483
64842020-06-17 Andrew Stubbs <ams@codesourcery.com>
6485
6486 * plugin/plugin-gcn.c (init_environment_variables): Use ".so.1"
6487 variant for HSA_RUNTIME_LIB name.
6488 (find_executable_symbol_1): Delete.
6489 (find_executable_symbol): Delete.
6490 (init_kernel_properties): Add ".kd" suffix to symbol names.
6491 (find_load_offset): Delete.
6492 (create_and_finalize_hsa_program): Remove relocation handling.
6493
56638b9b
GA
64942020-06-16 Tobias Burnus <tobias@codesourcery.com>
6495
6496 * testsuite/libgomp.oacc-fortran/routine-10.f90: New test.
6497
2c455ae0
GA
64982020-06-08 Tobias Burnus <tobias@codesourcery.com>
6499
6500 PR lto/94848
6501 PR middle-end/95551
6502 * testsuite/libgomp.fortran/target-var.f90: New test.
6503
1a59f3db
GA
65042020-06-05 Thomas Schwinge <thomas@codesourcery.com>
6505 Julian Brown <julian@codesourcery.com>
6506
6507 * oacc-mem.c (goacc_exit_data_internal) <GOMP_MAP_STRUCT>: Explain
6508 special handling.
6509
65102020-06-05 Thomas Schwinge <thomas@codesourcery.com>
6511 Julian Brown <julian@codesourcery.com>
6512
6513 * oacc-mem.c (goacc_exit_data_internal) <GOMP_MAP_STRUCT>:
6514 Simplify.
6515
65162020-06-05 Julian Brown <julian@codesourcery.com>
6517
6518 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-1.c: New test.
6519 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-2.c: New test.
6520
3add3425
GA
65212020-06-04 Thomas Schwinge <thomas@codesourcery.com>
6522
6523 * oacc-mem.c (goacc_exit_data_internal) <GOMP_MAP_STRUCT>:
6524 Evaluate 'copyfrom' individually for each entry.
6525 * testsuite/libgomp.oacc-c-c++-common/struct-1.c: Update.
6526
65272020-06-04 Thomas Schwinge <thomas@codesourcery.com>
6528
6529 * oacc-mem.c (goacc_exit_data_internal) <GOMP_MAP_STRUCT>:
6530 Evaluate 'finalize' individually for each entry.
6531 * testsuite/libgomp.oacc-c-c++-common/struct-1.c: New file.
6532 * testsuite/libgomp.oacc-c-c++-common/struct-refcount-1.c: Remove
6533 file.
6534
65352020-06-04 Thomas Schwinge <thomas@codesourcery.com>
6536
6537 * testsuite/libgomp.oacc-c-c++-common/deep-copy-7.c: Fix 'sizeof'
6538 usage.
6539 * testsuite/libgomp.oacc-c-c++-common/deep-copy-8.c: Likewise.
6540
65412020-06-04 Thomas Schwinge <thomas@codesourcery.com>
6542 Julian Brown <julian@codesourcery.com>
6543
6544 * oacc-mem.c (goacc_exit_datum): Repair 'is_tgt_unmapped'
6545 checking.
6546 (acc_unmap_data, goacc_exit_data_internal): Restore
6547 'is_tgt_unmapped' checking.
6548 * testsuite/libgomp.oacc-c-c++-common/struct-refcount-1.c: New
6549 file.
6550 * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: Adjust.
6551 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-1.f90: Likewise.
6552 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-1.f90: Likewise.
6553 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-2.f90: Likewise.
6554 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-3-1.f90: Likewise.
6555 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-4-1.f90: Likewise.
6556
65572020-06-04 Thomas Schwinge <thomas@codesourcery.com>
6558 Julian Brown <julian@codesourcery.com>
6559
6560 * oacc-mem.c (acc_unmap_data): Don't open-code 'gomp_remove_var'.
6561
65622020-06-04 Thomas Schwinge <thomas@codesourcery.com>
6563
6564 PR libgomp/92854
6565 * oacc-mem.c (acc_unmap_data): Remove 'tgt' reference counting.
6566
65672020-06-04 Thomas Schwinge <thomas@codesourcery.com>
6568
6569 PR libgomp/92854
6570 * testsuite/libgomp.oacc-c-c++-common/pr92854-1.c: Extend some
6571 more.
6572
65732020-06-04 Thomas Schwinge <thomas@codesourcery.com>
6574 Julian Brown <julian@codesourcery.com>
6575
6576 * oacc-mem.c (goacc_enter_datum): Use 'tgt' returned from
6577 'gomp_map_vars'.
3d3b561f 6578 (acc_map_data): Clean up accordingly.
3add3425
GA
6579
65802020-06-04 Thomas Schwinge <thomas@codesourcery.com>
6581
6582 * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: XFAIL behavior
6583 of over-eager 'finalize' clause.
6584 * testsuite/libgomp.oacc-fortran/deep-copy-6-no_finalize.F90: New
6585 file.
6586 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-1.f90: Likewise.
6587 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-2.F90: Likewise.
6588 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-1.f90: Likewise.
6589 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-2.f90: Likewise.
6590 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-3-1.f90: Likewise.
6591 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-3-2.f90: Likewise.
6592 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-4-1.f90: Likewise.
6593 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-4-2.f90: Likewise.
6594
65952020-06-04 Thomas Schwinge <thomas@codesourcery.com>
6596
6597 * oacc-mem.c (goacc_exit_data_internal): Unlock on error path.
6598
65992020-06-04 Julian Brown <julian@codesourcery.com>
6600
6601 * oacc-mem.c (acc_attach_async): Add missing gomp_mutex_unlock on
6602 error path.
6603 (goacc_detach_internal): Likewise.
6604
66052020-06-04 Thomas Schwinge <thomas@codesourcery.com>
6606
6607 * testsuite/libgomp.oacc-fortran/error_stop-1.f: Initialize before
6608 the checkpoint.
6609 * testsuite/libgomp.oacc-fortran/error_stop-2.f: Likewise.
6610 * testsuite/libgomp.oacc-fortran/error_stop-3.f: Likewise.
6611 * testsuite/libgomp.oacc-fortran/stop-1.f: Likewise.
6612 * testsuite/libgomp.oacc-fortran/stop-2.f: Likewise.
6613 * testsuite/libgomp.oacc-fortran/stop-3.f: Likewise.
6614
a9312a79
GA
66152020-06-02 Jakub Jelinek <jakub@redhat.com>
6616
6617 * allocator.c (omp_free): Fix up build if HAVE_SYNC_BUILTINS is not
6618 defined.
6619
945b53cc
GA
66202020-05-30 Jakub Jelinek <jakub@redhat.com>
6621
6622 * testsuite/libgomp.c-c++-common/alloc-4.c: New test.
6623
66242020-05-30 Jakub Jelinek <jakub@redhat.com>
6625
6626 * allocator.c (omp_alloc): For size == 0, return NULL early.
6627
885ef72f
GA
66282020-05-29 H.J. Lu <hjl.tools@gmail.com>
6629
6630 PR bootstrap/95413
6631 * configure: Regenerated.
6632
8df7ee67
TK
66332020-05-23 Thomas Koenig <tkoenig@gcc.gnu.org>
6634
6635 PR libfortran/95191
6636 * testsuite/libgomp.fortran/async_io_9.f90: New test.
6637
800bcc8c
JJ
66382020-05-19 Jakub Jelinek <jakub@redhat.com>
6639
6640 * omp.h.in (omp_uintptr_t): New typedef.
6641 (__GOMP_UINTPTR_T_ENUM): Define.
6642 (omp_memspace_handle_t, omp_allocator_handle_t, omp_alloctrait_key_t,
6643 omp_alloctrait_value_t, omp_alloctrait_t): New typedefs.
6644 (__GOMP_DEFAULT_NULL_ALLOCATOR): Define.
6645 (omp_init_allocator, omp_destroy_allocator, omp_set_default_allocator,
6646 omp_get_default_allocator, omp_alloc, omp_free): Declare.
6647 * libgomp.h (struct gomp_team_state): Add def_allocator field.
6648 (gomp_def_allocator): Declare.
6649 * libgomp.map (OMP_5.0.1): Export omp_set_default_allocator,
6650 omp_get_default_allocator, omp_init_allocator, omp_destroy_allocator,
6651 omp_alloc and omp_free.
6652 * team.c (gomp_team_start): Copy over ts.def_allocator.
6653 * env.c (gomp_def_allocator): New variable.
6654 (parse_wait_policy): Adjust function comment.
6655 (parse_allocator): New function.
6656 (handle_omp_display_env): Print OMP_ALLOCATOR.
6657 (initialize_env): Call parse_allocator.
6658 * Makefile.am (libgomp_la_SOURCES): Add allocator.c.
6659 * allocator.c: New file.
6660 * icv.c (omp_set_default_allocator, omp_get_default_allocator): New
6661 functions.
6662 * testsuite/libgomp.c-c++-common/alloc-1.c: New test.
6663 * testsuite/libgomp.c-c++-common/alloc-2.c: New test.
6664 * testsuite/libgomp.c-c++-common/alloc-3.c: New test.
6665 * Makefile.in: Regenerated.
6666
4c1a5d8b
L
66672020-05-15 H.J. Lu <hongjiu.lu@intel.com>
6668
6669 PR bootstrap/95147
6670 * configure: Regenerated.
6671
cdc34b50
TK
66722020-05-14 Thomas Koenig <tkoenig@gcc.gnu.org>
6673
6674 PR libfortran/95119
6675 * testsuite/libgomp.fortran/close_errors_1.f90: New test.
6676
66772020-05-14 H.J. Lu <hongjiu.lu@intel.com>
6678
6679 * configure: Regenerated.
6680
66812020-05-14 Jakub Jelinek <jakub@redhat.com>
6682
6683 * testsuite/libgomp.c-c++-common/target-40.c: New test.
6684
f884bef2
TB
66852020-05-13 Tobias Burnus <tobias@codesourcery.com>
6686
6687 PR fortran/94690
6688 * testsuite/libgomp.fortran/pr66199-3.f90: New.
6689 * testsuite/libgomp.fortran/pr66199-4.f90: New.
6690 * testsuite/libgomp.fortran/pr66199-5.f90: New.
6691 * testsuite/libgomp.fortran/pr66199-6.f90: New.
6692 * testsuite/libgomp.fortran/pr66199-7.f90: New.
6693 * testsuite/libgomp.fortran/pr66199-8.f90: New.
6694 * testsuite/libgomp.fortran/pr66199-9.f90: New.
6695
dc703151
JJ
66962020-05-12 Jakub Jelinek <jakub@redhat.com>
6697
6698 * testsuite/libgomp.c/target-39.c: New test.
6699
b9dc11b6
TS
67002020-04-29 Thomas Schwinge <thomas@codesourcery.com>
6701
a5d0bc12
TS
6702 * config/accel/openacc.f90 (acc_device_current): Set to '-1'.
6703 * openacc.f90 (acc_device_current): Likewise.
6704 * openacc.h (acc_device_current): Likewise.
6705 * openacc_lib.h (acc_device_current): Likewise.
6706
7f198924
TS
6707 PR target/94282
6708 * testsuite/libgomp.c-c++-common/function-not-offloaded.c: Remove
6709 'dg-allow-blank-lines-in-output'.
6710
4912a04f
TS
6711 * oacc-init.c (get_openacc_name): Handle 'gcn'.
6712 * testsuite/lib/libgomp.exp
6713 (offload_target_to_openacc_device_type) [amdgcn*]: Return
6714 'radeon'. Adjust all users.
6715 (check_effective_target_openacc_amdgcn_accel_present): Rename
6716 to...
6717 (check_effective_target_openacc_radeon_accel_present): ... this.
6718 Adjust all users.
6719 (check_effective_target_openacc_amdgcn_accel_selected): Rename to...
6720 (check_effective_target_openacc_radeon_accel_selected): ... this.
6721 Adjust all users.
6722
b9dc11b6
TS
6723 * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: Add
6724 'dg-do run'.
6725
966de09b
AS
67262020-04-23 Andrew Stubbs <ams@codesourcery.com>
6727
6728 PR other/94629
6729
6730 * plugin/plugin-gcn.c (init_hsa_context): Check return value from
6731 hsa_iterate_agents.
6732 (GOMP_OFFLOAD_init_device): Check return values from both calls to
6733 hsa_agent_iterate_regions.
6734
3f5d94c1
TS
67352020-04-20 Thomas Schwinge <thomas@codesourcery.com>
6736
6737 PR middle-end/94635
6738 * testsuite/libgomp.fortran/target-enter-data-2.F90: Add 'dg-do
6739 run'.
6740
85d8c05a
TB
67412020-04-20 Tobias Burnus <tobias@codesourcery.com>
6742
6743 PR middle-end/94120
6744 * testsuite/libgomp.oacc-c++/declare-pr94120.C: Fix 'declare copy(out)'
6745 test case.
6746
af557050
TB
67472020-04-17 Tobias Burnus <tobias@codesourcery.com>
6748
6749 PR middle-end/94635
6750 * testsuite/libgomp.fortran/target-enter-data-2.F90: New.
6751
af4c9257
TS
67522020-04-13 Thomas Schwinge <thomas@codesourcery.com>
6753
6754 PR libgomp/92843
6755 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-1-lib.c:
6756 Rename to...
6757 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-1-lib.c:
6758 ... this.
6759 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-1.c:
6760 Rename to...
6761 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-1.c:
6762 ... this.
6763 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-2-lib.c:
6764 Rename to...
6765 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-2-lib.c:
6766 ... this.
6767 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-2.c:
6768 Rename to...
6769 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-2.c:
6770 ... this.
6771 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-3-lib.c:
6772 Rename to...
6773 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-3-lib.c:
6774 ... this.
6775 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-3.c:
6776 Rename to...
6777 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-3.c:
6778 ... this.
6779 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-4-lib.c:
6780 Rename to...
6781 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-4-lib.c:
6782 ... this.
6783 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-4.c:
6784 Rename to...
6785 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-4.c:
6786 ... this.
6787 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-5-lib.c:
6788 Rename to...
6789 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-5-lib.c:
6790 ... this.
6791 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-5.c:
6792 Rename to...
6793 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-5.c:
6794 ... this.
6795 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-6-lib.c:
6796 Rename to...
6797 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-6-lib.c:
6798 ... this.
6799 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-6.c:
6800 Rename to...
6801 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-6.c:
6802 ... this.
6803 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-7-lib.c:
6804 Rename to...
6805 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-7-lib.c:
6806 ... this.
6807 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-7.c:
6808 Rename to...
6809 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-7.c:
6810 ... this.
6811 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-8-lib.c:
6812 Rename to...
6813 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-8-lib.c:
6814 ... this.
6815 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-8.c::
6816 Rename to...
6817 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-8.c:
6818 ... this.
6819
be9862dd
JB
68202020-04-10 Julian Brown <julian@codesourcery.com>
6821 Thomas Schwinge <thomas@codesourcery.com>
6822
6823 PR libgomp/92843
6824 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-1-lib.c:
6825 New file.
6826 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-1.c:
6827 Likewise.
6828 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-2-lib.c:
6829 Likewise.
6830 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-2.c:
6831 Likewise.
6832 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-3-lib.c:
6833 Likewise.
6834 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-3.c:
6835 Likewise.
6836 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-4-lib.c:
6837 Likewise.
6838 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-4.c:
6839 Likewise.
6840 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-5-lib.c:
6841 Likewise.
6842 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-5.c:
6843 Likewise.
6844 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-6-lib.c:
6845 Likewise.
6846 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-6.c:
6847 Likewise.
6848 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-7-lib.c:
6849 Likewise.
6850 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-7.c:
6851 Likewise.
6852 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-8-lib.c:
6853 Likewise.
6854 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-8.c:
6855 Likewise.
6856
6b816a5f
TS
68572020-04-10 Thomas Schwinge <thomas@codesourcery.com>
6858
6859 * testsuite/libgomp.fortran/target-enter-data-1.f90: Add 'dg-do
6860 run'.
6861
13e41d8b
TB
68622020-04-08 Tobias Burnus <tobias@codesourcery.com>
6863
6864 PR middle-end/94120
6865 * libgomp.oacc-c++/declare-pr94120.C: New.
6866
749bd22d
MR
68672020-04-06 Maciej W. Rozycki <macro@wdc.com>
6868
6869 * configure.ac: Add testsuite/libgomp-site-extra.exp to output
6870 files.
6871 * configure: Regenerate.
6872 * testsuite/libgomp-site-extra.exp.in: New file.
6873 * testsuite/libgomp-test-support.exp.in (GCC_UNDER_TEST): Remove
6874 variable.
6875 * testsuite/Makefile.am (EXTRA_DEJAGNU_SITE_CONFIG): New
6876 variable.
6877 * testsuite/Makefile.in: Regenerate.
6878
2b1e849b
TS
68792020-04-03 Thomas Schwinge <thomas@codesourcery.com>
6880
6881 PR tree-optimization/89713
6882 PR c/94392
6883 * testsuite/libgomp.oacc-c-c++-common/pr85381-2.c: Again expect
6884 'bar.sync'.
6885 * testsuite/libgomp.oacc-c-c++-common/pr85381-4.c: Likewise.
6886
689418b9
TB
68872020-03-31 Tobias Burnus <tobias@codesourcery.com>
6888
6889 * target.c (GOMP_target_enter_exit_data): Handle PSET/MAP_POINTER.
6890 * testsuite/libgomp.fortran/target-enter-data-1.f90: New.
6891
c2211a60
TB
68922020-03-24 Tobias Burnus <tobias@codesourcery.com>
6893
6894 PR libgomp/81689
6895 * testsuite/libgomp.c/target-link-1.c: Remove xfail.
6896
4897bb00
TB
68972020-03-20 Tobias Burnus <tobias@codesourcery.com>
6898
6899 PR libgomp/94251
6900 * target.c (gomp_load_image_to_device): Fix link
6901 variable handling.
6902
02f7334a
JJ
69032020-03-19 Jakub Jelinek <jakub@redhat.com>
6904
6905 PR c++/93931
6906 * testsuite/libgomp.c++/pr93931.C: New test.
6907
bb83e069
TB
69082020-03-19 Tobias Burnus <tobias@codesourcery.com>
6909
6910 * testsuite/libgomp.c-c++-common/function-not-offloaded.c: Add
6911 dg-allow-blank-lines-in-output.
6912
26cbcfe5
TB
69132020-03-18 Julian Brown <julian@codesourcery.com>
6914 Tobias Burnus <tobias@codesourcery.com>
6915
6916 * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90: Really make
6917 it work concurrently.
6918
4da92887
TB
69192020-03-18 Tobias Burnus <tobias@codesourcery.com>
6920
6921 * testsuite/libgomp.oacc-c++/firstprivate-mappings-1.C: Add
6922 #define DO_LONG_DOUBLE; set to 1, except for nvidia + gcn.
6923 * libgomp.oacc-c-c++-common/firstprivate-mappings-1.c: Likewise.
6924
9c3cdb43
JJ
69252020-03-14 Jakub Jelinek <jakub@redhat.com>
6926
6927 PR middle-end/93566
6928 * testsuite/libgomp.c/pr93566.c: New test.
6929
83d45e1d
FH
69302020-02-21 Frederik Harwath <frederik@codesourcery.com>
6931
6932 * testsuite/libgomp.oacc-fortran/acc_get_property.f90: Adapt to
6933 changes from 2020-02-19, i.e. use integer(c_size_t) instead of
6934 integer(acc_device_property) for the type of the return value of
6935 acc_get_property.
6936
8d1a1cb1
TB
69372020-02-19 Tobias Burnus <tobias@codesourcery.com>
6938
6939 * .gitattributes: New; whitespace handling for Fortran's openacc_lib.h.
6940 * config/accel/openacc.f90 (openacc_kinds): Add acc_device_current.
6941 (openacc_internal, acc_on_device_h): Fix argument name; minor cleanup.
6942 * libgomp.texi (Enabling OpenACC): No longer mark as experimental.
6943 (acc_set_device_num): Fix Fortran argument name, use same name for C.
6944 (acc_get_property): Update Fortran interface to post-OpenACC 3.0
6945 corrections; add note about the previous interface and named constant.
6946 (OpenACC library and environment variables): Fix two typos.
6947 * openacc.f90: Use for all procedures the argument names from the spec
6948 as for …_h they are user visible.
6949 (openacc_kinds): Rename acc_device_property to
6950 acc_device_property_kinds and change value to int32 ; and update users.
6951 Re-add acc_device_property for for backward compatibility.
6952 (acc_get_property_string_h): Clean up as acc_device_property_kind
6953 changed.
6954 (acc_get_property_h): Likewise and return c_size_t instead of
6955 acc_device_property.
6956 (openacc): Also export acc_device_property_kinds.
6957 (acc_async_test_h, acc_async_test_all_h, acc_on_device_h,
6958 acc_is_present_32_h, acc_is_present_64_h): Simplify logical-return-value
6959 handling; check against /= 0 instead of == 1 to match C.
6960 * openacc_lib.h: Use for all procedures the argument names from the spec
6961 as for …_h they are user visible. Place !GCC$ into the first column to
6962 be active also for fixed-form souce form.
6963 (acc_device_current, acc_device_property_kind, acc_device_property,
6964 acc_property_memory, acc_property_free_memory, acc_property_name,
6965 acc_property_vendor, acc_property_driver): New named constants.
6966 (acc_get_property, acc_get_property_string): New generic interface.
6967
2d9eb4e4
FH
69682020-02-13 Frederik Harwath <frederik@codesourcery.com>
6969
6970 PR libgomp/93481
6971 * plugin/plugin-nvptx.c: Remove GOMP_OFFLOAD_async_run stub.
6972 * target.c (gomp_load_plugin_for_device): Make "async_run" loading
6973 optional.
6974 (gomp_target_task_fn): Assert "devicep->async_run_func".
6975 (clear_unsupported_flags): New function to remove unsupported flags
6976 (right now only GOMP_TARGET_FLAG_NOWAIT) that can be be ignored.
6977 (GOMP_target_ext): Apply clear_unsupported_flags to flags.
6978 * testsuite/libgomp.c/target-33.c:
6979 Remove xfail for offload_target_nvptx.
6980 * testsuite/libgomp.c/target-34.c: Likewise.
fd789c81
FH
6981
69822020-02-10 Frederik Harwath <frederik@codesourcery.com>
6983
6984 * testsuite/libgomp.c/target-33.c: Add xfail for execution on
6985 offload_target_nvptx, cf. https://gcc.gnu.org/PR81688.
6986 * testsuite/libgomp.c/target-34.c: Likewise.
6987 * testsuite/libgomp.c/target-link-1.c: Add xfail for
6988 offload_target_nvptx, cf. https://gcc.gnu.org/PR81689.
6989
9bc3b95d
JJ
69902020-02-09 Jakub Jelinek <jakub@redhat.com>
6991
6992 * testsuite/libgomp.c/target-38.c: New test.
6993
cb3f0648
JJ
69942020-02-06 Jakub Jelinek <jakub@redhat.com>
6995
6996 PR libgomp/93515
6997 * testsuite/libgomp.c-c++-common/pr93515.c: New test.
6998
91bc3c98
TB
69992020-02-05 Tobias Burnus <tobias@codesourcery.com>
7000
7001 * testsuite/lib/libgomp.exp
7002 (check_effective_target_offload_target_nvptx): Pass flags as 'options'
7003 and not as 'source' argument to libgomp_target_compile.
7004
591f869a
AS
70052020-02-03 Andrew Stubbs <ams@codesourcery.com>
7006
7007 * plugin/plugin-gcn.c (EF_AMDGPU_MACH_AMDGCN_GFX801): Remove.
7008 (gcn_gfx801_s): Remove.
7009 (isa_hsa_name): Remove gfx801.
7010 (isa_gcc_name): Remove gfx801/carizzo.
7011 (isa_code): Remove gfx801.
7012
e464fc90
TB
70132020-02-03 Julian Brown <julian@codesourcery.com>
7014 Tobias Burnus <tobias@codesourcery.com>
7015
7016 * libgomp.texi (OpenACC Runtime Library Routines): Document *_async
7017 and *_finalize variants; document acc_attach and acc_detach; update
7018 references from OpenACC 2.0 to 2.6.
7019 * openacc.f90 (openacc_version): Update to 201711.
7020 * openacc_lib.h (openacc_version): Update to 201711.
7021 * testsuite/libgomp.oacc-fortran/openacc_version-1.f: Update expected
7022 openacc_version to 201711.
7023 * testsuite/libgomp.oacc-fortran/openacc_version-2.f90: Likewise.
7024
5a28e272
KCY
70252020-01-31 Kwok Cheung Yeung <kcy@codesourcery.com>
7026
7027 * plugin/plugin-gcn.c (struct hsa_kernel_description): Add sgpr_count
7028 and vgpr_count fields.
7029 (struct kernel_info): Add a field for a hsa_kernel_description.
7030 (run_kernel): Reduce the number of threads/workers if the requested
7031 number would require too many VGPRs.
7032 (init_basic_kernel_info): Initialize description field with
7033 the hsa_kernel_description entry for the kernel.
7034
5ab5d81b
TB
70352020-01-29 Tobias Burnus <tobias@codesourcery.com>
7036
7037 PR bootstrap/93409
7038 * plugin/configfrag.ac (enable_offload_targets): Skip
7039 HSA and GCN plugin besides -m32 also for -mx32.
7040 * configure: Regenerate.
7041
989a5fb3
FH
70422020-01-29 Frederik Harwath <frederik@codesourcery.com>
7043
7044 * oacc-init.c (name_of_acc_device_t): Handle acc_device_radeon.
2e5ea579
FH
7045
70462020-01-29 Frederik Harwath <frederik@codesourcery.com>
7047
7048 * plugin-gcn.c (struct agent_info): Add fields "name" and
7049 "vendor_name" ...
7050 (GOMP_OFFLOAD_init_device): ... and init from here.
7051 (struct hsa_context_info): Add field "driver_version_s" ...
7052 (init_hsa_contest): ... and init from here.
7053 (GOMP_OFFLOAD_openacc_get_property): Replace stub with a proper
7054 implementation.
7055 * testsuite/libgomp.oacc-c-c++-common/acc_get_property.c:
7056 Enable test execution for amdgcn and host offloading targets.
7057 * testsuite/libgomp.oacc-fortran/acc_get_property.f90: Likewise.
7058 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-aux.c
7059 (expect_device_properties): Split function into ...
7060 (expect_device_string_properties): ... this new function ...
7061 (expect_device_memory): ... and this new function.
7062 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-gcn.c:
7063 Add test.
7064
278c3214
JB
70652020-01-28 Julian Brown <julian@codesourcery.com>
7066
7067 * testsuite/libgomp.oacc-fortran/deep-copy-2.f90: Remove test from here.
7068 * testsuite/libgomp.oacc-fortran/deep-copy-3.f90: Don't use mixed
7069 component/non-component variable refs in a single directive.
7070 * testsuite/libgomp.oacc-fortran/classtypes-1.f95: Likewise.
7071
e8e66971
MR
70722020-01-24 Maciej W. Rozycki <macro@wdc.com>
7073
7074 * configure.ac: Handle `--with-toolexeclibdir='.
7075 * Makefile.in: Regenerate.
7076 * aclocal.m4: Regenerate.
7077 * configure: Regenerate.
7078 * testsuite/Makefile.in: Regenerate.
7079
9e424d97
FH
70802020-01-24 Frederik Harwath <frederik@codesourcery.com>
7081
7082 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-aux.c
7083 (expect_device_properties): Remove "expected_free_mem" argument,
7084 change "expected_total_mem" argument type to size_t;
7085 change types of acc_get_property results to size_t,
7086 adapt format strings.
7087 * testsuite/libgomp.oacc-c-c++-common/acc_get_property.c:
7088 Use %zu instead of %zd to print size_t values.
7089 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-2.c: Adapt and
7090 rename to ...
7091 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-nvptx.c: ... this.
7092 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-3.c: Adapt and
7093 rename to ...
7094 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-host.c: ... this.
7095
14e5e746
AS
70962020-01-23 Andrew Stubbs <ams@codesourcery.com>
7097
7098 * plugin/plugin-gcn.c (parse_target_attributes): Use correct mask for
7099 the device id.
7100
09e0ad62
AS
71012020-01-20 Andrew Stubbs <ams@codesourcery.com>
7102
7103 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Skip test on gcn.
7104 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c (main):
7105 Adjust test dimensions for amdgcn.
7106 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c (main): Adjust
7107 gang/worker/vector expectations dynamically.
7108 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c
7109 (main): Likewise.
7110 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c (main): Likewise.
7111 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c (main): Likewise.
7112 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c (main): Likewise.
7113 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c (main): Likewise.
7114 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c (main): Likewise.
7115 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c (main): Likewise.
7116 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c (main): Likewise.
7117 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c (main): Likewise.
7118 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c
7119 (acc_gang): Recognise acc_device_radeon.
7120 (acc_worker): Likewise.
7121 (acc_vector): Likewise.
7122 (main): Set expectations for amdgcn.
7123 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c
7124 (main): Adjust gang/worker/vector expectations dynamically.
7125 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c (main): Likewise.
7126 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c (main): Likewise.
7127 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c (main): Likewise.
7128 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Set expectations
7129 for amdgcn.
7130
6687d13a
AS
71312020-01-17 Andrew Stubbs <ams@codesourcery.com>
7132
7133 * config/accel/openacc.f90 (openacc_kinds): Rename acc_device_gcn to
7134 acc_device_radeon.
7135 (openacc): Likewise.
7136 * openacc.f90 (openacc_kinds): Likewise.
7137 (openacc): Likewise.
7138 * openacc.h (acc_device_t): Likewise.
7139 * openacc_lib.h: Likewise.
7140 * testsuite/lib/libgomp.exp
7141 (check_effective_target_openacc_amdgcn_accel_present): Likewise.
7142 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c
7143 (cb_compute_construct_end): Likewise.
7144 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c
7145 (cb_enqueue_launch_start): Likewise.
7146 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c
7147 (cb_enter_data_end): Likewise.
7148 (cb_exit_data_start): Likewise.
7149 (cb_exit_data_end): Likewise.
7150 (cb_compute_construct_end): Likewise.
7151 (cb_enqueue_launch_start): Likewise.
7152 (cb_enqueue_launch_end): Likewise.
7153 * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c
7154 (main): Likewise.
7155
b3b75e66
TS
71562020-01-10 Thomas Schwinge <thomas@codesourcery.com>
7157
6fc0385c
TS
7158 * libgomp-plugin.h (enum goacc_property): New. Adjust all users
7159 to use this instead of 'enum gomp_device_property'.
7160 (GOMP_OFFLOAD_get_property): Rename to...
7161 (GOMP_OFFLOAD_openacc_get_property): ... this. Adjust all users.
7162 * libgomp.h (struct gomp_device_descr): Move
7163 'GOMP_OFFLOAD_openacc_get_property'...
7164 (struct acc_dispatch_t): ... here. Adjust all users.
7165 * plugin/plugin-hsa.c (GOMP_OFFLOAD_get_property): Remove.
7166
b3b75e66
TS
7167 * target.c (gomp_map_vars_internal)
7168 <GOMP_MAP_USE_DEVICE_PTR_IF_PRESENT>: Clean up/elaborate code
7169 paths.
7170
91df4397
JJ
71712020-01-10 Jakub Jelinek <jakub@redhat.com>
7172
7173 PR libgomp/93219
7174 * libgomp.h (gomp_print_string): Change return type from void to int.
7175 * affinity-fmt.c (gomp_print_string): Likewise. Return true if
7176 not all characters have been written.
7177
df2c0d36
TB
71782020-01-08 Tobias Burnus <tobias@codesourcery.com>
7179
7180 * libgomp.texi: Fix typos, use https.
7181
f760c0c7
TB
71822020-01-03 Tobias Burnus <tobias@codesourcery.com>
7183
7184 * testsuite/libgomp.fortran/optional-map.f90: Add test for
7185 unallocated/disassociated actual arguments to nonallocatable/nonpointer
7186 dummy arguments; those are/shall be regarded as absent arguments.
7187 * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: Ditto.
7188 * testsuite/libgomp.fortran/use_device_ptr-optional-3.f90: New.
7189
7e7065b9
JJ
71902020-01-01 Jakub Jelinek <jakub@redhat.com>
7191
8d9254fc
JJ
7192 Update copyright years.
7193
7e7065b9
JJ
7194 * libgomp.texi: Bump @copying's copyright year.
7195
2c829799
AM
71962019-12-31 Ayush Mittal <ayush.m@samsung.com>
7197
7198 PR libgomp/93065
7199 * oacc-init.c (goacc_runtime_deinitialize): New function.
7200
e9dcb75e
JJ
72012019-12-28 Jakub Jelinek <jakub@redhat.com>
7202
7203 PR bootstrap/93074
7204 * plugin/cuda/cuda.h (cuDeviceGetName, cuDriverGetVersion): Declare.
7205 (cuDeviceTotalMem, cuMemGetInfo): Likewise. Define to *_v2.
7206
6c84c8bf
MR
72072019-12-22 Maciej W. Rozycki <macro@codesourcery.com>
7208 Frederik Harwath <frederik@codesourcery.com>
7209 Thomas Schwinge <tschwinge@codesourcery.com>
7210
7211 * libgomp.h (gomp_device_descr): Add `get_property_func' member.
7212 * libgomp-plugin.h (gomp_device_property_value): New union.
7213 (gomp_device_property_value): New prototype.
7214 * openacc.h (acc_device_t): Add `acc_device_current' enumeration
7215 constant.
7216 (acc_device_property_t): New enum.
7217 (acc_get_property, acc_get_property_string): New prototypes.
7218 * oacc-init.c (acc_get_device_type): Also assert that result
7219 is not `acc_device_current'.
7220 (get_property_any, acc_get_property, acc_get_property_string):
7221 New functions.
7222 * openacc.f90 (openacc_kinds): Add `acc_device_current' and
7223 `acc_property_memory', `acc_property_free_memory',
7224 `acc_property_name', `acc_property_vendor' and
7225 `acc_property_driver' constants. Add `acc_device_property' data
7226 type.
7227 (openacc_internal): Add `acc_get_property' and
7228 `acc_get_property_string' interfaces. Add `acc_get_property_h',
7229 `acc_get_property_string_h', `acc_get_property_l' and
7230 `acc_get_property_string_l'.
7231 * oacc-host.c (host_get_property): New function.
7232 (host_dispatch): Wire it.
7233 * target.c (gomp_load_plugin_for_device): Handle `get_property'.
7234 * libgomp.map (OACC_2.6): Add `acc_get_property', `acc_get_property_h_',
7235 `acc_get_property_string' and `acc_get_property_string_h_' symbols.
7236 * libgomp.texi (OpenACC Runtime Library Routines): Add
7237 `acc_get_property'.
7238 (acc_get_property): New node.
7239 * plugin/plugin-gcn.c (GOMP_OFFLOAD_get_property): New
7240 function (stub).
7241 * plugin/plugin-hsa.c (GOMP_OFFLOAD_get_property): New function.
7242 * plugin/plugin-nvptx.c (CUDA_CALLS): Add `cuDeviceGetName',
7243 `cuDeviceTotalMem', `cuDriverGetVersion' and `cuMemGetInfo'
7244 calls.
7245 (GOMP_OFFLOAD_get_property): New function.
7246 (struct ptx_device): Add new field "name".
7247 (cuda_driver_version_s): Add new static variable ...
7248 (nvptx_init): ... and init from here.
7249
7250 * testsuite/libgomp.oacc-c-c++-common/acc_get_property.c: New test.
7251 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-2.c: New test.
7252 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-3.c: New test.
7253 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-aux.c: New file
7254 with test helper functions.
7255
7256 * testsuite/libgomp.oacc-fortran/acc_get_property.f90: New test.
7257
c8e759b4
MR
72582019-12-22 Maciej W. Rozycki <macro@wdc.com>
7259
7260 * testsuite/libgomp-test-support.exp.in (GCC_UNDER_TEST): New
7261 variable.
7262
b092fb3b
TS
72632019-12-21 Thomas Schwinge <thomas@codesourcery.com>
7264
7265 * target.c (gomp_map_vars_internal): Restore 'omp declare target
7266 link' handling.
7267
9be3ac5d
JB
72682019-12-19 Julian Brown <julian@codesourcery.com>
7269
7270 * testsuite/libgomp.oacc-fortran/class-ptr-param.f95: New test.
7271 * testsuite/libgomp.oacc-fortran/classtypes-1.f95: New test.
7272 * testsuite/libgomp.oacc-fortran/classtypes-2.f95: New test.
7273
02817027
JB
72742019-12-19 Julian Brown <julian@codesourcery.com>
7275 Cesar Philippidis <cesar@codesourcery.com>
7276
7277 * testsuite/libgomp.oacc-fortran/deep-copy-1.f90: New test.
7278 * testsuite/libgomp.oacc-fortran/deep-copy-2.f90: New test.
7279 * testsuite/libgomp.oacc-fortran/deep-copy-3.f90: New test.
7280 * testsuite/libgomp.oacc-fortran/deep-copy-4.f90: New test.
7281 * testsuite/libgomp.oacc-fortran/deep-copy-5.f90: New test.
7282 * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: New test.
7283 * testsuite/libgomp.oacc-fortran/deep-copy-7.f90: New test.
7284 * testsuite/libgomp.oacc-fortran/deep-copy-8.f90: New test.
7285 * testsuite/libgomp.oacc-fortran/derived-type-1.f90: New test.
7286 * testsuite/libgomp.oacc-fortran/derivedtype-1.f95: New test.
7287 * testsuite/libgomp.oacc-fortran/derivedtype-2.f95: New test.
7288 * testsuite/libgomp.oacc-fortran/multidim-slice.f95: New test.
7289 * testsuite/libgomp.oacc-fortran/update-2.f90: New test.
7290
c2eb021f
JB
72912019-12-19 Julian Brown <julian@codesourcery.com>
7292
7293 * testsuite/libgomp.oacc-c-c++-common/deep-copy-1.c: New test.
7294 * testsuite/libgomp.oacc-c-c++-common/deep-copy-2.c: New test.
7295 * testsuite/libgomp.oacc-c-c++-common/deep-copy-4.c: New test.
7296 * testsuite/libgomp.oacc-c-c++-common/deep-copy-6.c: New test.
7297 * testsuite/libgomp.oacc-c-c++-common/deep-copy-7.c: New test.
7298 * testsuite/libgomp.oacc-c-c++-common/deep-copy-8.c: New test.
7299 * testsuite/libgomp.oacc-c-c++-common/deep-copy-9.c: New test.
7300 * testsuite/libgomp.oacc-c-c++-common/deep-copy-10.c: New test.
7301 * testsuite/libgomp.oacc-c-c++-common/deep-copy-11.c: New test.
7302 * testsuite/libgomp.oacc-c-c++-common/deep-copy-14.c: New test.
7303 * testsuite/libgomp.oacc-c++/deep-copy-12.C: New test.
7304 * testsuite/libgomp.oacc-c++/deep-copy-13.C: New test.
7305
8e7e71ff
JB
73062019-12-19 Julian Brown <julian@codesourcery.com>
7307
7308 * libgomp.h (struct target_var_desc): Add do_detach flag.
7309 * oacc-init.c (acc_shutdown_1): Free aux block if present.
7310 * oacc-mem.c (find_group_last): Add SIZES parameter. Support
7311 struct components. Tidy up and add some new checks.
7312 (goacc_enter_data_internal): Update call to find_group_last.
7313 (goacc_exit_data_internal): Support detach operations and
7314 GOMP_MAP_STRUCT.
7315 (GOACC_enter_exit_data): Handle initial GOMP_MAP_STRUCT or
7316 GOMP_MAP_FORCE_PRESENT in finalization detection code. Handle
7317 attach/detach in enter/exit data detection code.
7318 * target.c (gomp_map_vars_existing): Initialise do_detach field of
7319 tgt_var_desc.
7320 (gomp_map_vars_internal): Support attach.
7321 (gomp_unmap_vars_internal): Support detach.
7322
5d5be7bf
JB
73232019-12-19 Julian Brown <julian@codesourcery.com>
7324 Thomas Schwinge <thomas@codesourcery.com>
7325
7326 * libgomp.h (struct splay_tree_aux): Add attach_count field.
7327 (gomp_attach_pointer, gomp_detach_pointer): Add prototypes.
7328 * libgomp.map (OACC_2.6): New section. Add acc_attach,
7329 acc_attach_async, acc_detach, acc_detach_async, acc_detach_finalize,
7330 acc_detach_finalize_async.
7331 * oacc-mem.c (acc_attach_async, acc_attach, goacc_detach_internal,
7332 acc_detach, acc_detach_async, acc_detach_finalize,
7333 acc_detach_finalize_async): New functions.
7334 * openacc.h (acc_attach, acc_attach_async, acc_detach,
7335 (acc_detach_async, acc_detach_finalize, acc_detach_finalize_async): Add
7336 prototypes.
7337 * target.c (gomp_attach_pointer, gomp_detach_pointer): New functions.
7338 (gomp_remove_var_internal): Free attachment counts if present.
7339 * testsuite/libgomp.oacc-c-c++-common/deep-copy-3.c: New test.
7340 * testsuite/libgomp.oacc-c-c++-common/deep-copy-5.c: New test.
7341
5bcd470b
JB
73422019-12-19 Julian Brown <julian@codesourcery.com>
7343 Cesar Philippidis <cesar@codesourcery.com>
7344
7345 * libgomp.h (gomp_map_val): Add prototype.
7346 * oacc-parallel.c (GOACC_parallel_keyed): Use gomp_map_val instead of
7347 open-coding device-address calculation.
7348 * target.c (gomp_map_val): Make global. Use OFFSET_POINTER in
7349 non-present case.
7350
378da98f
JB
73512019-12-19 Julian Brown <julian@codesourcery.com>
7352
7353 * libgomp.h (struct splay_tree_key_s): Substitute dynamic_refcount
7354 field for virtual_refcount.
7355 (enum gomp_map_vars_kind): Add GOMP_MAP_VARS_OPENACC_ENTER_DATA.
7356 (gomp_free_memmap): Remove prototype.
7357 * oacc-init.c (acc_shutdown_1): Iteratively call gomp_remove_var
7358 instead of calling gomp_free_memmap.
7359 * oacc-mem.c (acc_map_data): Use virtual_refcount instead of
7360 dynamic_refcount.
7361 (acc_unmap_data): Open code instead of forcing target_mem_desc's
7362 to_free field to NULL then calling gomp_unmap_vars. Handle
7363 REFCOUNT_INFINITY on target blocks.
7364 (goacc_enter_data): Rename to...
7365 (goacc_enter_datum): ...this. Remove MAPNUM parameter and special
7366 handling for mapping groups. Use virtual_refcount instead of
7367 dynamic_refcount. Use GOMP_MAP_VARS_OPENACC_ENTER_DATA for
7368 map_map_vars_async call. Re-do lookup for target pointer return value.
7369 (acc_create, acc_create_async, acc_copyin, acc_copyin_async): Call
7370 renamed goacc_enter_datum function.
7371 (goacc_exit_data): Rename to...
7372 (goacc_exit_datum): ...this. Update for virtual_refcount semantics.
7373 (acc_delete, acc_delete_async, acc_delete_finalize,
7374 acc_delete_finalize_async, acc_copyout, acc_copyout_async,
7375 acc_copyout_finalize, acc_copyout_finalize_async): Call renamed
7376 goacc_exit_datum function.
7377 (gomp_acc_remove_pointer, find_pointer): Remove functions.
7378 (find_group_last, goacc_enter_data_internal, goacc_exit_data_internal):
7379 New functions.
7380 (GOACC_enter_exit_data): Use goacc_enter_data_internal and
7381 goacc_exit_data_internal helper functions.
7382 * target.c (gomp_map_vars_internal): Handle
7383 GOMP_MAP_VARS_OPENACC_ENTER_DATA. Update for virtual_refcount
7384 semantics.
7385 (gomp_unmap_vars_internal): Update for virtual_refcount semantics.
7386 (gomp_load_image_to_device, omp_target_associate_ptr): Zero-initialise
7387 virtual_refcount field instead of dynamic_refcount.
7388 (gomp_free_memmap): Remove function.
7389 * testsuite/libgomp.oacc-c-c++-common/unmap-infinity-1.c: New test.
7390 * testsuite/libgomp.c-c++-common/unmap-infinity-2.c: New test.
7391 * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: Add XFAIL.
7392
2a656a93
JB
73932019-12-19 Julian Brown <julian@codesourcery.com>
7394 Thomas Schwinge <thomas@codesourcery.com>
7395
7396 * libgomp.h (struct splay_tree_aux): New.
7397 (struct splay_tree_key_s): Replace link_key field with aux pointer.
7398 * target.c (gomp_map_vars_internal): Adjust for link_key being moved
7399 to aux struct.
7400 (gomp_remove_var_internal): Free aux block if present.
7401 (gomp_load_image_to_device): Zero-initialise aux field instead of
7402 link_key field.
7403 (omp_target_associate_pointer): Zero-initialise aux field.
7404
601399c0
JJ
74052019-12-18 Jakub Jelinek <jakub@redhat.com>
7406
7407 PR middle-end/86416
7408 * testsuite/libgomp.c/pr86416-1.c (main): Use L suffixes rather than
7409 q or none.
7410 * testsuite/libgomp.c/pr86416-2.c (main): Use Q suffixes rather than
7411 L or none.
7412
a6163563
JB
74132019-12-19 Julian Brown <julian@codesourcery.com>
7414 Maciej W. Rozycki <macro@codesourcery.com>
7415 Tobias Burnus <tobias@codesourcery.com>
7416 Thomas Schwinge <thomas@codesourcery.com>
7417
7418 * target.c (gomp_map_vars_async): Support GOMP_MAP_NO_ALLOC.
7419 * testsuite/libgomp.oacc-c-c++-common/no_create-1.c: New test.
7420 * testsuite/libgomp.oacc-c-c++-common/no_create-2.c: New test.
7421 * testsuite/libgomp.oacc-c-c++-common/no_create-3.c: New test.
7422 * testsuite/libgomp.oacc-c-c++-common/no_create-4.c: New test.
7423 * testsuite/libgomp.oacc-c-c++-common/no_create-5.c: New test.
7424 * testsuite/libgomp.oacc-fortran/no_create-1.f90: New test.
7425 * testsuite/libgomp.oacc-fortran/no_create-2.f90: New test.
7426 * testsuite/libgomp.oacc-fortran/no_create-3.F90: New test.
7427
6278b549
TS
74282019-12-18 Thomas Schwinge <thomas@codesourcery.com>
7429
77ce5555
TS
7430 * oacc-mem.c (goacc_enter_data): Refactor, so that it can be
7431 called...
7432 (goacc_insert_pointer): ... from here, "present" case.
7433 (goacc_insert_pointer): Inline function into...
7434 (GOACC_enter_exit_data): ... here, and simplify.
7435
9444a299
TS
7436 * oacc-mem.c (goacc_enter_data): Refactor, so that it can be
7437 called...
7438 (goacc_insert_pointer): ... from here, "not present" case.
7439
5031b619
TS
7440 * oacc-mem.c (goacc_remove_pointer): Refactor interface. Adjust
7441 all users.
7442
1a79b578
TS
7443 * oacc-mem.c (GOACC_enter_exit_data): Refactor code to call
7444 'goacc_enter_data', 'goacc_exit_data'.
7445
34cfe31e
TS
7446 * oacc-mem.c (delete_copyout): Refactor into...
7447 (goacc_exit_data): ... this. Adjust all users.
7448
aaf0e9d7
TS
7449 * oacc-mem.c (present_create_copy): Refactor into...
7450 (goacc_enter_data): ... this. Adjust all users.
7451
83d1d065
TS
7452 * target.c (gomp_unmap_vars_internal): Add a safeguard to
7453 'gomp_remove_var'.
7454
cc3f11f5
TS
7455 * target.c (gomp_to_device_kind_p): Handle 'GOMP_MAP_FORCE_FROM'
7456 like 'GOMP_MAP_FROM'.
7457
ddb25eb9
TS
7458 PR libgomp/92726
7459 PR libgomp/92970
7460 PR libgomp/92984
7461 * oacc-mem.c (delete_copyout): No-op behavior if 'lookup_host'
7462 fails.
7463 (GOACC_enter_exit_data): Simplify accordingly.
7464 * testsuite/libgomp.oacc-c-c++-common/pr92970-1.c: New file,
7465 subsuming...
7466 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: ... this file...
7467 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: ..., and this
7468 file.
7469 * testsuite/libgomp.oacc-c-c++-common/pr92984-1.c: New file,
7470 subsuming...
7471 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: ... this file...
7472 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: ..., and this
7473 file.
7474 * testsuite/libgomp.oacc-c-c++-common/pr92726-1.c: New file,
7475 subsuming...
7476 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: ... this file.
7477
32128577
TS
7478 * oacc-mem.c (GOACC_enter_exit_data): Simplify 'exit data'
7479 'finalize' handling.
7480
ba40277f
TS
7481 PR libgomp/92848
7482 * oacc-mem.c (acc_map_data, present_create_copy)
7483 (goacc_insert_pointer): Use 'GOMP_MAP_VARS_ENTER_DATA'.
7484 (acc_unmap_data, delete_copyout, goacc_remove_pointer): Adjust.
7485 * testsuite/libgomp.oacc-c-c++-common/lib-50.c: Remove.
7486 * testsuite/libgomp.oacc-c-c++-common/pr92848-1-d-a.c: New file
7487 * testsuite/libgomp.oacc-c-c++-common/pr92848-1-d-p.c: Likewise.
7488 * testsuite/libgomp.oacc-c-c++-common/pr92848-1-r-a.c: Likewise.
7489 * testsuite/libgomp.oacc-c-c++-common/pr92848-1-r-p.c: Likewise.
7490 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-r-p.c:
7491 Remove "XFAIL"s.
7492
6278b549
TS
7493 * target.c (gomp_unmap_tgt): Make it 'static'.
7494 * libgomp.h (gomp_unmap_tgt): Remove.
7495
c80c9e26
TB
74962019-12-18 Tobias Burnus <tobias@codesourcery.com>
7497
7498 PR middle-end/86416
7499 * testsuite/libgomp.c/pr86416-1.c: New.
7500 * testsuite/libgomp.c/pr86416-2.c: New.
7501
0b8499a4
TB
75022019-12-17 Tobias Burnus <tobias@codesourcery.com>
7503
7504 * config/accel/openacc.f90 (module openacc_kinds): Use 'PUBLIC' to mark
7505 all symbols as public except for the 'use …, only' imported symbol,
7506 which is private.
7507 (module openacc): Default to 'PRIVATE' to exclude openacc_internal; mark
7508 all symbols from module openacc_kinds as PUBLIC
7509 * openacc.f90: Add comment with crossref to that file and openmp_lib.h;
7510 fix comment typo.
7511 * openacc_lib.h (acc_device_gcn): Add this PARAMETER.
7512
1cbd94e8
JB
75132019-12-13 Julian Brown <julian@codesourcery.com>
7514
7515 PR libgomp/92881
7516
7517 * libgomp.h (gomp_remove_var_async): Add prototype.
7518 * oacc-mem.c (delete_copyout): Call gomp_remove_var_async instead of
7519 gomp_remove_var.
7520 * target.c (gomp_unref_tgt): Change return type to bool, indicating
7521 whether target_mem_desc was unmapped.
7522 (gomp_unref_tgt_void): New.
7523 (gomp_remove_var): Reimplement in terms of...
7524 (gomp_remove_var_internal): ...this new helper function.
7525 (gomp_remove_var_async): New, implemented using above helper function.
7526 (gomp_unmap_vars_internal): Use gomp_unref_tgt_void instead of
7527 gomp_unref_tgt.
7528
26b74ed0
AS
75292019-12-13 Andrew Stubbs <ams@codesourcery.com>
7530
7531 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c: Handle gcn.
7532 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Likewise.
7533 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c: Likewise.
7534 * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c: Likewise.
7535 * testsuite/libgomp.oacc-c-c++-common/function-not-offloaded.c:
7536 Likewise.
7537 * testsuite/libgomp.oacc-c-c++-common/async_queue-1.c: Disable on GCN.
7538 * testsuite/libgomp.oacc-c-c++-common/tile-1.c: Likewise.
7539
7858bb96
TB
75402019-12-13 Tobias Burnus <tobias@codesourcery.com>
7541
7542 * openacc.f90 (module openacc_kinds): Use 'PUBLIC' to mark all symbols
7543 as public except for the 'use …, only' imported symbol, which is
7544 private.
7545 (module openacc): Default to 'PRIVATE' to exclude openacc_internal; mark
7546 all symbols from module openacc_kinds as PUBLIC; add missing PUBLIC
7547 attributes for acc_copyout_finalize and acc_delete_finalize.
7548
f8ac7d8f
JJ
75492019-12-11 Jakub Jelinek <jakub@redhat.com>
7550
7551 PR fortran/92899
7552 * testsuite/libgomp.fortran/atomic1.f90: New test.
7553
3d1b5e71
TS
75542019-12-11 Thomas Schwinge <thomas@codesourcery.com>
7555
d6e8c01c
TS
7556 PR libgomp/92843
7557 * oacc-mem.c (present_create_copy, delete_copyout): Fix dynamic
7558 reference counting for structured 'REFCOUNT_INFINITY'. Add some
7559 assertions.
7560 (goacc_insert_pointer, goacc_remove_pointer): Adjust accordingly.
7561 * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: New file.
7562 * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Fix OpenACC.
7563 * testsuite/libgomp.oacc-c-c++-common/lib-82.c: Likewise.
7564 * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Likewise.
7565
57963e39
TS
7566 * oacc-parallel.c (find_pointer, GOACC_enter_exit_data): Move...
7567 * oacc-mem.c: ... here.
7568 (gomp_acc_insert_pointer, gomp_acc_remove_pointer): Rename to
7569 'goacc_insert_pointer', 'goacc_remove_pointer', and make 'static'.
7570 * libgomp.h (gomp_acc_insert_pointer, gomp_acc_remove_pointer):
7571 Remove.
7572 * libgomp_g.h: Update.
7573
c5578b56
TS
7574 * oacc-parallel.c (GOACC_wait, goacc_wait): Move...
7575 * oacc-async.c: ... here.
7576 * oacc-int.h (goacc_wait): Declare.
7577 * libgomp_g.h: Update
7578
3d1b5e71
TS
7579 PR libgomp/92854
7580 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-device_already-1.c:
7581 New file.
7582 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-device_already-2.c:
7583 Likewise.
7584 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-device_already-3.c:
7585 Likewise.
7586 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-host_already-1.c:
7587 Likewise.
7588 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-host_already-2.c:
7589 Likewise.
7590 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-host_already-3.c:
7591 Likewise.
7592
5e939438
TS
75932019-12-11 Thomas Schwinge <thomas@codesourcery.com>
7594 Julian Brown <julian@codesourcery.com>
7595
7596 * target.c (gomp_load_image_to_device, omp_target_associate_ptr):
7597 Initialize 'dynamic_refcount' whenever we initialize 'refcount'.
7598
93d90219
TB
75992019-12-11 Tobias Burnus <tobias@codesourcery.com>
7600
7601 * omp_lib.h.in: Fix spelling of function declaration
7602 omp_get_cancell(l)ation.
7603 * libgomp.texi (acc_is_present, acc_async_test, acc_async_test_all):
7604 Fix typos.
7605 * env.c: Fix comment typos.
7606 * oacc-host.c: Likewise.
7607 * ordered.c: Likewise.
7608 * task.c: Likewise.
7609 * team.c: Likewise.
7610 * config/gcn/task.c: Likewise.
7611 * config/gcn/team.c: Likewise.
7612 * config/nvptx/task.c: Likewise.
7613 * config/nvptx/team.c: Likewise.
7614 * plugin/plugin-gcn.c: Likewise.
7615 * testsuite/libgomp.fortran/jacobi.f: Likewise.
7616 * testsuite/libgomp.hsa.c/tiling-2.c: Likewise.
7617 * testsuite/libgomp.oacc-c-c++-common/enter_exit-lib.c: Likewise.
7618
a0221aee
TB
76192019-12-11 Tobias Burnus <tobias@codesourcery.com>
7620
7621 * testsuite/libgomp.oacc-fortran/optional-cache.f95: Add 'dg-do run'.
7622 * testsuite/libgomp.oacc-fortran/optional-reduction.f90: Remove
7623 unnecessary 'dg-additional-options "-w"'.
7624
47afc7b4
TS
76252019-12-09 Thomas Schwinge <thomas@codesourcery.com>
7626 Julian Brown <julian@codesourcery.com>
7627
7628 PR libgomp/92116
7629 PR libgomp/92877
7630
7631 * oacc-mem.c (lookup_dev): Reimplement. Adjust all users.
7632 * libgomp.h (struct acc_dispatch_t): Remove 'data_environ' member.
7633 Adjust all users.
7634 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4-2.c:
7635 Remove XFAIL.
7636 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4.c:
7637 Likewise.
7638 * testsuite/libgomp.oacc-c-c++-common/pr92877-1.c: New file.
7639
b5859e40
TS
76402019-12-09 Thomas Schwinge <thomas@codesourcery.com>
7641
cec41816
TS
7642 PR libgomp/92503
7643 * oacc-mem.c (acc_free): Error out instead of 'acc_unmap_data'.
7644 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-1.c: New
7645 file.
7646 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-2.c:
7647 Likewise.
7648 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-3-2.c:
7649 Likewise.
7650 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-3.c:
7651 Likewise.
7652 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4-2.c:
7653 Likewise.
7654 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4.c:
7655 Likewise.
7656 * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Adjust.
7657 * testsuite/libgomp.oacc-c-c++-common/context-1.c: Likewise.
7658 * testsuite/libgomp.oacc-c-c++-common/context-2.c: Likewise.
7659 * testsuite/libgomp.oacc-c-c++-common/context-3.c: Likewise.
7660 * testsuite/libgomp.oacc-c-c++-common/context-4.c: Likewise.
7661 * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Likewise.
7662 * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
7663 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
7664 * testsuite/libgomp.oacc-c-c++-common/lib-91.c: Likewise.
7665 * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Likewise.
7666
e103542b
TS
7667 PR libgomp/92840
7668 * oacc-mem.c (acc_map_data): Clarify reference counting behavior.
7669 (acc_unmap_data): Add error case for 'REFCOUNT_INFINITY'.
7670 * testsuite/libgomp.oacc-c-c++-common/acc_unmap_data-pr92840-1.c:
7671 New file.
7672 * testsuite/libgomp.oacc-c-c++-common/acc_unmap_data-pr92840-2.c:
7673 Likewise.
7674 * testsuite/libgomp.oacc-c-c++-common/acc_unmap_data-pr92840-3.c:
7675 Likewise.
7676 * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Adjust.
7677 * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Adjust.
7678
41f36f22
TS
7679 PR libgomp/92511
7680 * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-1.c: Remove
7681 this file...
7682 * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-2.c: ..., and
7683 this file...
7684 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: ..., and this
7685 file...
7686 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: ..., and this
7687 file...
7688 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-r-p.c:
7689 ... with their content moved into, and extended in this new file.
7690 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-d-a.c:
7691 New file.
7692 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-d-p.c:
7693 Likewise.
7694 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-r-a.c:
7695 Likewise.
7696 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-2.c:
7697 Likewise.
7698
6effebe1
TS
7699 * testsuite/libgomp.oacc-c-c++-common/map-data-1.c: New file.
7700
7d020473
TS
7701 PR libgomp/92854
7702 * testsuite/libgomp.oacc-c-c++-common/pr92854-1.c: New file.
7703
1e1fb715
TS
7704 * testsuite/libgomp.oacc-c-c++-common/host_data-6.c: New file.
7705
b5859e40
TS
7706 * target.c (gomp_exit_data): Use 'gomp_remove_var'.
7707
11586ed9
TB
77082019-12-09 Tobias Burnus <tobias@codesourcery.com>
7709
7710 * testsuite/libgomp.fortran/use_device_addr-3.f90: Make 'stop' codes
7711 unique.
7712 * testsuite/libgomp.fortran/use_device_addr-4.f90: Ditto.
7713 * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: Ditto.
7714 * testsuite/libgomp.oacc-fortran/declare-5.f90: Ditto.
7715 * testsuite/libgomp.oacc-fortran/optional-data-copyin-by-value.f90:
7716 Ditto.
7717 * testsuite/libgomp.oacc-fortran/optional-firstprivate.f90: Ditto.
7718 * testsuite/libgomp.oacc-fortran/optional-update-host.f90: Ditto.
7719
3ad4a03a
KCY
77202019-12-06 Kwok Cheung Yeung <kcy@codesourcery.com>
7721
7722 * config/accel/proc.c (omp_get_num_procs): Apply ialias macro.
7723
6e4d01d6
TB
77242019-12-06 Tobias Burnus <tobias@codesourcery.com>
7725 Kwok Cheung Yeung <kcy@codesourcery.com>
7726
7727 * oacc-mem.c (update_dev_host, gomp_acc_insert_pointer): Just return
7728 if input it a NULL pointer.
7729 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Remove; dependent on
7730 diagnostic of NULL pointer.
7731 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Ditto.
7732 * testsuite/libgomp.fortran/optional-map.f90: New.
7733 * testsuite/libgomp.fortran/use_device_addr-1.f90
7734 (test_dummy_opt_callee_1_absent): New.
7735 (test_dummy_opt_call_1): Call it.
7736 * testsuite/libgomp.fortran/use_device_addr-2.f90: Likewise.
7737 * testsuite/libgomp.fortran/use_device_addr-3.f90: Likewise.
7738 * testsuite/libgomp.fortran/use_device_addr-4.f90: Likewise.
7739 * testsuite/libgomp.oacc-fortran/optional-cache.f95: New.
7740 * testsuite/libgomp.oacc-fortran/optional-data-copyin-by-value.f90: New.
7741 * testsuite/libgomp.oacc-fortran/optional-data-copyin.f90: New.
7742 * testsuite/libgomp.oacc-fortran/optional-data-copyout.f90: New.
7743 * testsuite/libgomp.oacc-fortran/optional-data-enter-exit.f90: New.
7744 * testsuite/libgomp.oacc-fortran/optional-declare.f90: New.
7745 * testsuite/libgomp.oacc-fortran/optional-firstprivate.f90: New.
7746 * testsuite/libgomp.oacc-fortran/optional-host_data.f90: New.
7747 * testsuite/libgomp.oacc-fortran/optional-nested-calls.f90: New.
7748 * testsuite/libgomp.oacc-fortran/optional-private.f90: New.
7749 * testsuite/libgomp.oacc-fortran/optional-reduction.f90: New.
7750 * testsuite/libgomp.oacc-fortran/optional-update-device.f90: New.
7751 * testsuite/libgomp.oacc-fortran/optional-update-host.f90: New.
7752
ad80ec46
TB
77532019-12-05 Tobias Burnus <tobias@codesourcery.com>
7754
7755 * testsuite/libgomp.oacc-fortran/error_stop-1.f: Also don't
7756 expect dg-output of 'Error termination.' for GCN.
7757 * testsuite/libgomp.oacc-fortran/error_stop-2.f: Likewise.
7758 * testsuite/libgomp.oacc-fortran/error_stop-3.f: Likewise.
7759
a8a5f4cc
JJ
77602019-12-04 Jakub Jelinek <jakub@redhat.com>
7761
7762 PR fortran/92756
7763 * testsuite/libgomp.fortran/teams1.f90: New test.
7764 * testsuite/libgomp.fortran/teams2.f90: New test.
7765
d8f0024b
FH
77662019-12-03 Frederik Harwath <frederik@codesourcery.com>
7767
7768 * oacc-init.c (acc_known_device_type): Add function.
7769 (unknown_device_type_error): Add function.
7770 (name_of_acc_device_t): Change to call unknown_device_type_error
7771 on unknown type.
7772 (resolve_device): Use acc_known_device_type.
7773 (acc_init): Fail if acc_device_t argument is not valid.
7774 (acc_shutdown): Likewise.
7775 (acc_get_num_devices): Likewise.
7776 (acc_set_device_type): Likewise.
7777 (acc_get_device_num): Likewise.
7778 (acc_set_device_num): Likewise.
7779 (acc_on_device): Add comment that argument validity is not checked.
7780
83caa34e
AS
77812019-12-03 Andrew Stubbs <ams@codesourcery.com>
7782
7783 * testsuite/lib/libgomp.exp (offload_target_to_openacc_device_type):
7784 Recognize amdgcn.
7785 (check_effective_target_openacc_amdgcn_accel_present): New proc.
7786 (check_effective_target_openacc_amdgcn_accel_selected): New proc.
7787 * testsuite/libgomp.oacc-c++/c++.exp: Add support for amdgcn.
7788 * testsuite/libgomp.oacc-c/c.exp: Likewise.
7789 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
7790
00484365
SN
77912019-12-03 Szabolcs Nagy <szabolcs.nagy@arm.com>
7792
7793 PR libgomp/91938
7794 * configure.tgt: Avoid IE tls on *-*-musl*.
7795
9909a059
TB
77962019-11-29 Tobias Burnus <tobias@codesourcery.com>
7797
7798 * testsuite/libgomp.oacc-fortran/declare-5.f90: Extend by
7799 adding a common-block test case.
7800
b3f44388
JJ
78012019-11-29 Jakub Jelinek <jakub@redhat.com>
7802
7803 PR c++/60228
7804 * testsuite/libgomp.c++/udr-20.C: New test.
7805 * testsuite/libgomp.c++/udr-21.C: New test.
7806
b1a73b48
TS
78072019-11-27 Thomas Schwinge <thomas@codesourcery.com>
7808
7809 * testsuite/lib/libgomp.exp
7810 (check_effective_target_offload_target_nvptx): New proc.
7811 * testsuite/libgomp.fortran/target-print-1.f90: Use it with
7812 'dg-skip-if'.
7813 * testsuite/libgomp.oacc-fortran/print-1.f90: Likewise.
7814 * testsuite/libgomp.fortran/target-print-1-nvptx.f90: New file.
7815 * testsuite/libgomp.oacc-fortran/print-1-nvptx.f90: Likewise.
7816
b8e72446
RO
78172019-11-21 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
7818
7819 * testsuite/libgomp.c/pr39591-1.c: Rename err to e.
7820 * testsuite/libgomp.c/pr39591-2.c: Likewise.
7821 * testsuite/libgomp.c/pr39591-3.c: Likewise.
7822 * testsuite/libgomp.c/private-1.c: Likewise.
7823 * testsuite/libgomp.c/task-1.c: Likewise.
7824 * testsuite/libgomp.c/task-5.c: Renamed err to serr.
7825
d88b27da
JB
78262019-11-20 Julian Brown <julian@codesourcery.com>
7827
7828 * plugin/plugin-gcn.c (wait_for_queue_nonfull): Don't lock/unlock
7829 aq->mutex here.
7830 (queue_push_launch): Lock aq->mutex before calling
7831 wait_for_queue_nonfull.
7832 (queue_push_callback): Likewise.
7833 (queue_push_asyncwait): Likewise.
7834 (queue_push_placeholder): Likewise.
7835
8d2f4ddf
JB
78362019-11-20 Julian Brown <julian@codesourcery.com>
7837
7838 * plugin/plugin-gcn.c (hsa_memory_copy_wrapper): New.
7839 (copy_data, GOMP_OFFLOAD_host2dev): Use above function.
7840 (GOMP_OFFLOAD_dev2host, GOMP_OFFLOAD_dev2dev): Check hsa_memory_copy
7841 return code.
7842
e307b05f
JB
78432019-11-20 Julian Brown <julian@codesourcery.com>
7844
7845 PR libgomp/92511
7846
7847 * oacc-mem.c (present_create_copy): Fix device pointer return value in
7848 case of "present" subarray. Use tgt->tgt_start instead of tgt->to_free
7849 in non-present/create case.
7850 (delete_copyout): Change error condition to fail only on copies outside
7851 of mapped block. Adjust error message accordingly.
7852 * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-1.c: New test.
7853 * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-2.c: New test.
7854 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Adjust expected error
7855 message.
7856 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
7857 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Allow test to pass now.
7858 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
7859
83115e9e
MR
78602019-11-20 Maciej W. Rozycki <macro@wdc.com>
7861
7862 * testsuite/lib/libgomp.exp (libgomp_init): Add flags to find
7863 libatomic in build-tree testing.
7864
a1289887
MR
78652019-11-18 Maciej W. Rozycki <macro@wdc.com>
7866
7867 * testsuite/Makefile.in: Regenerate.
7868
8916ba87
AS
78692019-11-15 Andrew Stubbs <ams@codesourcery.com>
7870
7871 * testsuite/libgomp.c/target-print-1.c: New file.
7872 * testsuite/libgomp.fortran/target-print-1.f90: New file.
7873 * testsuite/libgomp.oacc-c/print-1.c: New file.
7874 * testsuite/libgomp.oacc-fortran/print-1.f90: New file.
7875
237957cc
AS
78762019-11-13 Andrew Stubbs <ams@codesourcery.com>
7877 Kwok Cheung Yeung <kcy@codesourcery.com>
7878 Julian Brown <julian@codesourcery.com>
7879 Tom de Vries <tom@codesourcery.com>
7880
7881 * plugin/Makefrag.am: Add amdgcn plugin support.
7882 * plugin/configfrag.ac: Likewise.
7883 * plugin/plugin-gcn.c: New file.
7884 * configure: Regenerate.
7885 * Makefile.in: Regenerate.
7886 * testsuite/Makefile.in: Regenerate.
7887
cee16451
AS
78882019-11-13 Andrew Stubbs <ams@codesourcery.com>
7889
7890 * config/gcn/team.c (gomp_gcn_enter_kernel): Set up the team arena
7891 and use team_malloc variants.
7892 (gomp_gcn_exit_kernel): Use team_free.
7893 * libgomp.h (TEAM_ARENA_SIZE): Define.
7894 (TEAM_ARENA_START): Define.
7895 (TEAM_ARENA_FREE): Define.
7896 (TEAM_ARENA_END): Define.
7897 (team_malloc): New function.
7898 (team_malloc_cleared): New function.
7899 (team_free): New function.
7900 * team.c (gomp_new_team): Initialize and use team_malloc.
7901 (free_team): Use team_free.
7902 (gomp_free_thread): Use team_free.
7903 (gomp_pause_host): Use team_free.
7904 * work.c (gomp_init_work_share): Use team_malloc.
7905 (gomp_fini_work_share): Use team_free.
7906
fa499995
AS
79072019-11-13 Andrew Stubbs <ams@codesourcery.com>
7908 Kwok Cheung Yeung <kcy@codesourcery.com>
7909 Julian Brown <julian@codesourcery.com>
7910 Tom de Vries <tom@codesourcery.com>
7911
7912 * Makefile.am (libgomp_la_SOURCES): Add oacc-target.c.
7913 * Makefile.in: Regenerate.
7914 * config.h.in (PLUGIN_GCN): Add new undef.
7915 * config/accel/openacc.f90 (acc_device_gcn): New parameter.
7916 * config/gcn/affinity-fmt.c: New file.
7917 * config/gcn/bar.c: New file.
7918 * config/gcn/bar.h: New file.
7919 * config/gcn/doacross.h: New file.
7920 * config/gcn/icv-device.c: New file.
7921 * config/gcn/oacc-target.c: New file.
7922 * config/gcn/simple-bar.h: New file.
7923 * config/gcn/target.c: New file.
7924 * config/gcn/task.c: New file.
7925 * config/gcn/team.c: New file.
7926 * config/gcn/time.c: New file.
7927 * configure.ac: Add amdgcn*-*-*.
7928 * configure: Regenerate.
7929 * configure.tgt: Add amdgcn*-*-*.
7930 * libgomp-plugin.h (offload_target_type): Add OFFLOAD_TARGET_TYPE_GCN.
7931 * libgomp.h (gcn_thrs): Add amdgcn variant.
7932 (set_gcn_thrs): Likewise.
7933 (gomp_thread): Likewise.
7934 * oacc-int.h (goacc_thread): Likewise.
7935 * oacc-target.c: New file.
7936 * openacc.f90 (acc_device_gcn): New parameter.
7937 * openacc.h (acc_device_t): Add acc_device_gcn.
7938 * team.c (gomp_free_pool_helper): Add amdgcn support.
7939
d2903ce0
AS
79402019-11-13 Andrew Stubbs <ams@codesourcery.com>
7941 Julian Brown <julian@codesourcery.com>
7942
7943 * libgomp-plugin.h (GOMP_OFFLOAD_openacc_async_construct): Add int
7944 parameter.
7945 * oacc-async.c (lookup_goacc_asyncqueue): Pass device number to the
7946 queue constructor.
7947 * oacc-host.c (host_openacc_async_construct): Add device parameter.
7948 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_openacc_async_construct): Add
7949 device parameter.
7950
b3d14b3a
AS
79512019-11-13 Andrew Stubbs <ams@codesourcery.com>
7952
7953 * configure.tgt (nvptx*-*-*): Add "accel" directory.
7954 * config/nvptx/libgomp-plugin.c: Move ...
7955 * config/accel/libgomp-plugin.c: ... to here.
7956 * config/nvptx/lock.c: Move ...
7957 * config/accel/lock.c: ... to here.
7958 * config/nvptx/mutex.c: Move ...
7959 * config/accel/mutex.c: ... to here.
7960 * config/nvptx/mutex.h: Move ...
7961 * config/accel/mutex.h: ... to here.
7962 * config/nvptx/oacc-async.c: Move ...
7963 * config/accel/oacc-async.c: ... to here.
7964 * config/nvptx/oacc-cuda.c: Move ...
7965 * config/accel/oacc-cuda.c: ... to here.
7966 * config/nvptx/oacc-host.c: Move ...
7967 * config/accel/oacc-host.c: ... to here.
7968 * config/nvptx/oacc-init.c: Move ...
7969 * config/accel/oacc-init.c: ... to here.
7970 * config/nvptx/oacc-mem.c: Move ...
7971 * config/accel/oacc-mem.c: ... to here.
7972 * config/nvptx/oacc-plugin.c: Move ...
7973 * config/accel/oacc-plugin.c: ... to here.
7974 * config/nvptx/omp-lock.h: Move ...
7975 * config/accel/omp-lock.h: ... to here.
7976 * config/nvptx/openacc.f90: Move ...
7977 * config/accel/openacc.f90: ... to here.
7978 * config/nvptx/pool.h: Move ...
7979 * config/accel/pool.h: ... to here.
7980 * config/nvptx/proc.c: Move ...
7981 * config/accel/proc.c: ... to here.
7982 * config/nvptx/ptrlock.c: Move ...
7983 * config/accel/ptrlock.c: ... to here.
7984 * config/nvptx/ptrlock.h: Move ...
7985 * config/accel/ptrlock.h: ... to here.
7986 * config/nvptx/sem.c: Move ...
7987 * config/accel/sem.c: ... to here.
7988 * config/nvptx/sem.h: Move ...
7989 * config/accel/sem.h: ... to here.
7990 * config/nvptx/thread-stacksize.h: Move ...
7991 * config/accel/thread-stacksize.h: ... to here.
7992
62aee289
MR
79932019-11-12 Maciej W. Rozycki <macro@codesourcery.com>
7994 Tobias Burnus <tobias@codesourcery.com>
7995 Frederik Harwath <frederik@codesourcery.com>
7996 Thomas Schwinge <thomas@codesourcery.com>
7997
7998 libgomp/
7999 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: New test.
8000 * testsuite/libgomp.oacc-fortran/parallel-dims-aux.c: New test.
8001 * testsuite/libgomp.oacc-fortran/parallel-dims.f89: New test.
8002
a2c26c50
TB
80032019-11-11 Tobias Burnus <tobias@codesourcery.com>
8004 Kwok Cheung Yeung <kcy@codesourcery.com>
8005
8006 * testsuite/libgomp.fortran/use_device_ptr-optional-1.f90: Extend.
8007 * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: New.
8008
6d4868f3
TS
80092019-11-11 Thomas Schwinge <thomas@codesourcery.com>
8010
bfa1837b
TS
8011 * testsuite/libgomp.fortran/target9.f90: Specify 'dg-do run'.
8012
6d4868f3
TS
8013 * testsuite/libgomp.fortran/use_device_addr-3.f90: Specify 'dg-do
8014 run'.
8015 * testsuite/libgomp.fortran/use_device_addr-4.f90: Likewise.
8016 * testsuite/libgomp.fortran/use_device_ptr-1.f90: Likewise.
8017
5d183d17
FH
80182019-11-06 Thomas Schwinge <thomas@codesourcery.com>
8019
8020 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-1.c:
8021 Add expected warnings about missing reduction clauses.
8022 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-2.c:
8023 Likewise.
8024 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-3.c:
8025 Likewise.
8026 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c:
8027 Likewise.
8028
d8f03b03
TB
80292019-11-04 Tobias Burnus <tobias@codesourcery.com>
8030
8031 * testsuite/libgomp.fortran/pr66199-1.f90: Remove
8032 'dg-do run' (implies torture test) as 'dg-options "O2"' is used.
8033 * testsuite/libgomp.fortran/pr66199-2.f90: Ditto.
8034 * testsuite/libgomp.fortran/taskloop2.f90: Ditto.
8035 * testsuite/libgomp.fortran/taskloop3.f90: Ditto.
8036 * testsuite/libgomp.fortran/taskloop4.f90: Ditto.
8037
12fd2ec5
TB
80382019-11-04 Tobias Burnus <tobias@codesourcery.com>
8039
8040 PR fortran/92305
8041 * testsuite/libgomp.fortran/allocatable2.f90: Use
8042 unique numbers with 'stop'.
8043 * testsuite/libgomp.fortran/use_device_addr-1.f90: Ditto.
8044 * testsuite/libgomp.fortran/use_device_addr-2.f90: Ditto.
8045 * testsuite/libgomp.fortran/use_device_ptr-1.f90: Ditto.
8046 * testsuite/libgomp.oacc-fortran/lib-15.f90: Ditto.
8047 * testsuite/libgomp.oacc-fortran/pset-1.f90: Ditto.
8048
92e63bd2
TB
80492019-11-01 Tobias Burnus <tobias@codesourcery.com>
8050
8051 * testsuite/libgomp.fortran/use_device_addr-1.f90 (test_nullptr_1,
8052 test_dummy_opt_nullptr_callee_1): Add present but unallocated test.
8053 * testsuite/libgomp.fortran/use_device_addr-2.f90: Likewise.
8054 * testsuite/libgomp.fortran/use_device_addr-3.f90: New.
8055 * testsuite/libgomp.fortran/use_device_addr-4.f90: New.
8056 * testsuite/testsuite/libgomp.fortran/use_device_ptr-1.f90: New.
8057
91ae0a46
TB
80582019-10-30 Tobias Burnus <tobias@codesourcery.com>
8059
8060 * testsuite/libgomp.fortran/target9.f90: New.
8061
c425e66b
TB
80622019-10-30 Tobias Burnus <tobias@codesourcery.com>
8063
8064 * testsuite/libgomp.fortran/aligned1.f03: Replace 'STOP' by 'stop'.
8065 * testsuite/libgomp.fortran/alloc-comp-1.f90: Ditto.
8066 * testsuite/libgomp.fortran/alloc-comp-2.f90: Ditto.
8067 * testsuite/libgomp.fortran/alloc-comp-3.f90: Ditto.
8068 * testsuite/libgomp.fortran/allocatable1.f90: Ditto.
8069 * testsuite/libgomp.fortran/allocatable10.f90: Ditto.
8070 * testsuite/libgomp.fortran/allocatable11.f90: Ditto.
8071 * testsuite/libgomp.fortran/allocatable12.f90: Ditto.
8072 * testsuite/libgomp.fortran/allocatable2.f90: Ditto.
8073 * testsuite/libgomp.fortran/allocatable3.f90: Ditto.
8074 * testsuite/libgomp.fortran/allocatable4.f90: Ditto.
8075 * testsuite/libgomp.fortran/allocatable5.f90: Ditto.
8076 * testsuite/libgomp.fortran/allocatable6.f90: Ditto.
8077 * testsuite/libgomp.fortran/allocatable7.f90: Ditto.
8078 * testsuite/libgomp.fortran/allocatable8.f90: Ditto.
8079 * testsuite/libgomp.fortran/allocatable9.f90: Ditto.
8080 * testsuite/libgomp.fortran/associate1.f90: Ditto.
8081 * testsuite/libgomp.fortran/associate2.f90: Ditto.
8082 * testsuite/libgomp.fortran/associate3.f90: Ditto.
8083 * testsuite/libgomp.fortran/async_io_4.f90: Ditto.
8084 * testsuite/libgomp.fortran/async_io_5.f90: Ditto.
8085 * testsuite/libgomp.fortran/async_io_6.f90: Ditto.
8086 * testsuite/libgomp.fortran/async_io_7.f90: Ditto.
8087 * testsuite/libgomp.fortran/cancel-do-1.f90: Ditto.
8088 * testsuite/libgomp.fortran/cancel-do-2.f90: Ditto.
8089 * testsuite/libgomp.fortran/cancel-parallel-1.f90: Ditto.
8090 * testsuite/libgomp.fortran/cancel-sections-1.f90: Ditto.
8091 * testsuite/libgomp.fortran/cancel-taskgroup-2.f90: Ditto.
8092 * testsuite/libgomp.fortran/character1.f90: Ditto.
8093 * testsuite/libgomp.fortran/character2.f90: Ditto.
8094 * testsuite/libgomp.fortran/collapse1.f90: Ditto.
8095 * testsuite/libgomp.fortran/collapse2.f90: Ditto.
8096 * testsuite/libgomp.fortran/collapse3.f90: Ditto.
8097 * testsuite/libgomp.fortran/collapse4.f90: Ditto.
8098 * testsuite/libgomp.fortran/crayptr1.f90: Ditto.
8099 * testsuite/libgomp.fortran/crayptr2.f90: Ditto.
8100 * testsuite/libgomp.fortran/crayptr3.f90: Ditto.
8101 * testsuite/libgomp.fortran/declare-simd-1.f90: Ditto.
8102 * testsuite/libgomp.fortran/declare-simd-3.f90: Ditto.
8103 * testsuite/libgomp.fortran/declare-target-2.f90: Ditto.
8104 * testsuite/libgomp.fortran/depend-1.f90: Ditto.
8105 * testsuite/libgomp.fortran/depend-2.f90: Ditto.
8106 * testsuite/libgomp.fortran/depend-3.f90: Ditto.
8107 * testsuite/libgomp.fortran/do1.f90: Ditto.
8108 * testsuite/libgomp.fortran/do2.f90: Ditto.
8109 * testsuite/libgomp.fortran/do_concurrent_5.f90: Ditto.
8110 * testsuite/libgomp.fortran/doacross1.f90: Ditto.
8111 * testsuite/libgomp.fortran/doacross2.f90: Ditto.
8112 * testsuite/libgomp.fortran/doacross3.f90: Ditto.
8113 * testsuite/libgomp.fortran/examples-4/array_sections-3.f90: Ditto.
8114 * testsuite/libgomp.fortran/examples-4/array_sections-4.f90: Ditto.
8115 * testsuite/libgomp.fortran/examples-4/async_target-1.f90: Ditto.
8116 * testsuite/libgomp.fortran/examples-4/async_target-2.f90: Ditto.
8117 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Ditto.
8118 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Ditto.
8119 * testsuite/libgomp.fortran/examples-4/declare_target-3.f90: Ditto.
8120 * testsuite/libgomp.fortran/examples-4/declare_target-4.f90: Ditto.
8121 * testsuite/libgomp.fortran/examples-4/declare_target-5.f90: Ditto.
8122 * testsuite/libgomp.fortran/examples-4/device-1.f90: Ditto.
8123 * testsuite/libgomp.fortran/examples-4/device-2.f90: Ditto.
8124 * testsuite/libgomp.fortran/examples-4/device-3.f90: Ditto.
8125 * testsuite/libgomp.fortran/examples-4/simd-1.f90: Ditto.
8126 * testsuite/libgomp.fortran/examples-4/simd-2.f90: Ditto.
8127 * testsuite/libgomp.fortran/examples-4/simd-3.f90: Ditto.
8128 * testsuite/libgomp.fortran/examples-4/simd-4.f90: Ditto.
8129 * testsuite/libgomp.fortran/examples-4/simd-5.f90: Ditto.
8130 * testsuite/libgomp.fortran/examples-4/simd-6.f90: Ditto.
8131 * testsuite/libgomp.fortran/examples-4/simd-7.f90: Ditto.
8132 * testsuite/libgomp.fortran/examples-4/simd-8.f90: Ditto.
8133 * testsuite/libgomp.fortran/examples-4/target-1.f90: Ditto.
8134 * testsuite/libgomp.fortran/examples-4/target-2.f90: Ditto.
8135 * testsuite/libgomp.fortran/examples-4/target-3.f90: Ditto.
8136 * testsuite/libgomp.fortran/examples-4/target-4.f90: Ditto.
8137 * testsuite/libgomp.fortran/examples-4/target-5.f90: Ditto.
8138 * testsuite/libgomp.fortran/examples-4/target_data-1.f90: Ditto.
8139 * testsuite/libgomp.fortran/examples-4/target_data-2.f90: Ditto.
8140 * testsuite/libgomp.fortran/examples-4/target_data-3.f90: Ditto.
8141 * testsuite/libgomp.fortran/examples-4/target_data-4.f90: Ditto.
8142 * testsuite/libgomp.fortran/examples-4/target_data-5.f90: Ditto.
8143 * testsuite/libgomp.fortran/examples-4/target_data-6.f90: Ditto.
8144 * testsuite/libgomp.fortran/examples-4/target_data-7.f90: Ditto.
8145 * testsuite/libgomp.fortran/examples-4/target_update-1.f90: Ditto.
8146 * testsuite/libgomp.fortran/examples-4/target_update-2.f90: Ditto.
8147 * testsuite/libgomp.fortran/examples-4/task_dep-1.f90: Ditto.
8148 * testsuite/libgomp.fortran/examples-4/task_dep-2.f90: Ditto.
8149 * testsuite/libgomp.fortran/examples-4/task_dep-3.f90: Ditto.
8150 * testsuite/libgomp.fortran/examples-4/task_dep-4.f90: Ditto.
8151 * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: Ditto.
8152 * testsuite/libgomp.fortran/examples-4/teams-2.f90: Ditto.
8153 * testsuite/libgomp.fortran/examples-4/teams-3.f90: Ditto.
8154 * testsuite/libgomp.fortran/examples-4/teams-4.f90: Ditto.
8155 * testsuite/libgomp.fortran/examples-4/teams-5.f90: Ditto.
8156 * testsuite/libgomp.fortran/examples-4/teams-6.f90: Ditto.
8157 * testsuite/libgomp.fortran/lastprivate1.f90: Ditto.
8158 * testsuite/libgomp.fortran/lastprivate2.f90: Ditto.
8159 * testsuite/libgomp.fortran/lib1.f90: Ditto.
8160 * testsuite/libgomp.fortran/lib4.f90: Ditto.
8161 * testsuite/libgomp.fortran/lock-1.f90: Ditto.
8162 * testsuite/libgomp.fortran/lock-2.f90: Ditto.
8163 * testsuite/libgomp.fortran/nested1.f90: Ditto.
8164 * testsuite/libgomp.fortran/nestedfn1.f90: Ditto.
8165 * testsuite/libgomp.fortran/nestedfn2.f90: Ditto.
8166 * testsuite/libgomp.fortran/nestedfn3.f90: Ditto.
8167 * testsuite/libgomp.fortran/nestedfn4.f90: Ditto.
8168 * testsuite/libgomp.fortran/nestedfn5.f90: Ditto.
8169 * testsuite/libgomp.fortran/omp_atomic1.f90: Ditto.
8170 * testsuite/libgomp.fortran/omp_atomic2.f90: Ditto.
8171 * testsuite/libgomp.fortran/omp_atomic3.f90: Ditto.
8172 * testsuite/libgomp.fortran/omp_atomic4.f90: Ditto.
8173 * testsuite/libgomp.fortran/omp_atomic5.f90: Ditto.
8174 * testsuite/libgomp.fortran/omp_cond1.f: Ditto.
8175 * testsuite/libgomp.fortran/omp_cond2.f: Ditto.
8176 * testsuite/libgomp.fortran/omp_cond3.F90: Ditto.
8177 * testsuite/libgomp.fortran/omp_cond4.F90: Ditto.
8178 * testsuite/libgomp.fortran/omp_parse1.f90: Ditto.
8179 * testsuite/libgomp.fortran/omp_parse2.f90: Ditto.
8180 * testsuite/libgomp.fortran/omp_parse3.f90: Ditto.
8181 * testsuite/libgomp.fortran/omp_parse4.f90: Ditto.
8182 * testsuite/libgomp.fortran/openmp_version-1.f: Ditto.
8183 * testsuite/libgomp.fortran/openmp_version-2.f90: Ditto.
8184 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt-2.f95: Ditto.
8185 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt.f95: Ditto.
8186 * testsuite/libgomp.fortran/pointer1.f90: Ditto.
8187 * testsuite/libgomp.fortran/pointer2.f90: Ditto.
8188 * testsuite/libgomp.fortran/pr25219.f90: Ditto.
8189 * testsuite/libgomp.fortran/pr27395-1.f90: Ditto.
8190 * testsuite/libgomp.fortran/pr27395-2.f90: Ditto.
8191 * testsuite/libgomp.fortran/pr27416-1.f90: Ditto.
8192 * testsuite/libgomp.fortran/pr27916-1.f90: Ditto.
8193 * testsuite/libgomp.fortran/pr27916-2.f90: Ditto.
8194 * testsuite/libgomp.fortran/pr28390.f: Ditto.
8195 * testsuite/libgomp.fortran/pr29629.f90: Ditto.
8196 * testsuite/libgomp.fortran/pr32550.f90: Ditto.
8197 * testsuite/libgomp.fortran/pr33880.f90: Ditto.
8198 * testsuite/libgomp.fortran/pr34020.f90: Ditto.
8199 * testsuite/libgomp.fortran/pr35130.f90: Ditto.
8200 * testsuite/libgomp.fortran/pr42162.f90: Ditto.
8201 * testsuite/libgomp.fortran/pr46753.f90: Ditto.
8202 * testsuite/libgomp.fortran/pr48894.f90: Ditto.
8203 * testsuite/libgomp.fortran/pr49792-1.f90: Ditto.
8204 * testsuite/libgomp.fortran/pr49792-2.f90: Ditto.
8205 * testsuite/libgomp.fortran/pr63938-1.f90: Ditto.
8206 * testsuite/libgomp.fortran/pr63938-2.f90: Ditto.
8207 * testsuite/libgomp.fortran/pr65597.f90: Ditto.
8208 * testsuite/libgomp.fortran/pr66199-1.f90: Ditto.
8209 * testsuite/libgomp.fortran/pr71014.f90: Ditto.
8210 * testsuite/libgomp.fortran/pr81304.f90: Ditto.
8211 * testsuite/libgomp.fortran/pr81841.f90: Ditto.
8212 * testsuite/libgomp.fortran/pr84418-1.f90: Ditto.
8213 * testsuite/libgomp.fortran/pr84418-2.f90: Ditto.
8214 * testsuite/libgomp.fortran/procptr1.f90: Ditto.
8215 * testsuite/libgomp.fortran/recursion1.f90: Ditto.
8216 * testsuite/libgomp.fortran/reduction1.f90: Ditto.
8217 * testsuite/libgomp.fortran/reduction2.f90: Ditto.
8218 * testsuite/libgomp.fortran/reduction3.f90: Ditto.
8219 * testsuite/libgomp.fortran/reduction4.f90: Ditto.
8220 * testsuite/libgomp.fortran/reduction5.f90: Ditto.
8221 * testsuite/libgomp.fortran/reduction6.f90: Ditto.
8222 * testsuite/libgomp.fortran/reference1.f90: Ditto.
8223 * testsuite/libgomp.fortran/reference2.f90: Ditto.
8224 * testsuite/libgomp.fortran/retval1.f90: Ditto.
8225 * testsuite/libgomp.fortran/retval2.f90: Ditto.
8226 * testsuite/libgomp.fortran/sharing1.f90: Ditto.
8227 * testsuite/libgomp.fortran/sharing2.f90: Ditto.
8228 * testsuite/libgomp.fortran/simd1.f90: Ditto.
8229 * testsuite/libgomp.fortran/simd2.f90: Ditto.
8230 * testsuite/libgomp.fortran/simd3.f90: Ditto.
8231 * testsuite/libgomp.fortran/simd4.f90: Ditto.
8232 * testsuite/libgomp.fortran/simd5.f90: Ditto.
8233 * testsuite/libgomp.fortran/simd6.f90: Ditto.
8234 * testsuite/libgomp.fortran/simd7.f90: Ditto.
8235 * testsuite/libgomp.fortran/stack.f90: Ditto.
8236 * testsuite/libgomp.fortran/strassen.f90: Ditto.
8237 * testsuite/libgomp.fortran/tabs1.f90: Ditto.
8238 * testsuite/libgomp.fortran/tabs2.f: Ditto.
8239 * testsuite/libgomp.fortran/target1.f90: Ditto.
8240 * testsuite/libgomp.fortran/target2.f90: Ditto.
8241 * testsuite/libgomp.fortran/target3.f90: Ditto.
8242 * testsuite/libgomp.fortran/target4.f90: Ditto.
8243 * testsuite/libgomp.fortran/target5.f90: Ditto.
8244 * testsuite/libgomp.fortran/target6.f90: Ditto.
8245 * testsuite/libgomp.fortran/target7.f90: Ditto.
8246 * testsuite/libgomp.fortran/target8.f90: Ditto.
8247 * testsuite/libgomp.fortran/task1.f90: Ditto.
8248 * testsuite/libgomp.fortran/task2.f90: Ditto.
8249 * testsuite/libgomp.fortran/task3.f90: Ditto.
8250 * testsuite/libgomp.fortran/task4.f90: Ditto.
8251 * testsuite/libgomp.fortran/taskgroup1.f90: Ditto.
8252 * testsuite/libgomp.fortran/taskloop1.f90: Ditto.
8253 * testsuite/libgomp.fortran/taskloop2.f90: Ditto.
8254 * testsuite/libgomp.fortran/taskloop3.f90: Ditto.
8255 * testsuite/libgomp.fortran/taskloop4.f90: Ditto.
8256 * testsuite/libgomp.fortran/threadprivate1.f90: Ditto.
8257 * testsuite/libgomp.fortran/threadprivate2.f90: Ditto.
8258 * testsuite/libgomp.fortran/threadprivate3.f90: Ditto.
8259 * testsuite/libgomp.fortran/threadprivate4.f90: Ditto.
8260 * testsuite/libgomp.fortran/udr1.f90: Ditto.
8261 * testsuite/libgomp.fortran/udr10.f90: Ditto.
8262 * testsuite/libgomp.fortran/udr11.f90: Ditto.
8263 * testsuite/libgomp.fortran/udr12.f90: Ditto.
8264 * testsuite/libgomp.fortran/udr13.f90: Ditto.
8265 * testsuite/libgomp.fortran/udr14.f90: Ditto.
8266 * testsuite/libgomp.fortran/udr15.f90: Ditto.
8267 * testsuite/libgomp.fortran/udr2.f90: Ditto.
8268 * testsuite/libgomp.fortran/udr3.f90: Ditto.
8269 * testsuite/libgomp.fortran/udr4.f90: Ditto.
8270 * testsuite/libgomp.fortran/udr5.f90: Ditto.
8271 * testsuite/libgomp.fortran/udr6.f90: Ditto.
8272 * testsuite/libgomp.fortran/udr7.f90: Ditto.
8273 * testsuite/libgomp.fortran/udr8.f90: Ditto.
8274 * testsuite/libgomp.fortran/udr9.f90: Ditto.
8275 * testsuite/libgomp.fortran/vla1.f90: Ditto.
8276 * testsuite/libgomp.fortran/vla2.f90: Ditto.
8277 * testsuite/libgomp.fortran/vla3.f90: Ditto.
8278 * testsuite/libgomp.fortran/vla4.f90: Ditto.
8279 * testsuite/libgomp.fortran/vla5.f90: Ditto.
8280 * testsuite/libgomp.fortran/vla6.f90: Ditto.
8281 * testsuite/libgomp.fortran/vla7.f90: Ditto.
8282 * testsuite/libgomp.fortran/vla8.f90: Ditto.
8283 * testsuite/libgomp.fortran/workshare1.f90: Ditto.
8284 * testsuite/libgomp.fortran/workshare2.f90: Ditto.
8285
01509e2f
TB
82862019-10-30 Tobias Burnus <tobias@codesourcery.com>
8287
8288 * testsuite/libgomp.fortran/target-simd.f90: Use stop not abort.
8289 * testsuite/libgomp.fortran/use_device_ptr-optional-1.f90:
8290 Ditto; add 'dg-do run' for torture testing.
8291 * testsuite/libgomp.fortran/lastprivate1.f90: Add 'dg-do run'.
8292 * testsuite/libgomp.fortran/lastprivate2.f90: Ditto.
8293 * testsuite/libgomp.fortran/nestedfn4.f90: Ditto.
8294 * testsuite/libgomp.fortran/pr25219.f90: Ditto.
8295 * testsuite/libgomp.fortran/pr28390.f: Ditto.
8296 * testsuite/libgomp.fortran/pr35130.f90: Ditto.
8297 * testsuite/libgomp.fortran/pr90779.f90: Ditto.
8298 * testsuite/libgomp.fortran/task2.f90: Ditto.
8299 * testsuite/libgomp.fortran/taskgroup1.f90: Ditto.
8300 * testsuite/libgomp.fortran/taskloop1.f90: Ditto.
8301 * testsuite/libgomp.fortran/use_device_addr-1.f90: Ditto.
8302 * testsuite/libgomp.fortran/use_device_addr-2.f90: Ditto.
8303 * testsuite/libgomp.fortran/workshare1.f90: Ditto.
8304 * testsuite/libgomp.fortran/workshare2.f90: Ditto.
8305
ffbdd78a
TB
83062019-10-28 Tobias Burnus <tobias@codesourcery.com>
8307
8308 * testsuite/libgomp.oacc-fortran/abort-1.f90: Add 'dg-do run'.
8309 * testsuite/libgomp.oacc-fortran/abort-2.f90: Ditto.
8310 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Ditto.
8311 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f90: Ditto.
8312 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f90: Ditto.
8313 * testsuite/libgomp.oacc-fortran/lib-1.f90: Ditto.
8314 * testsuite/libgomp.oacc-fortran/common-block-1.f90:
8315 Use 'stop' not abort().
8316 * testsuite/libgomp.oacc-fortran/common-block-2.f90: Ditto.
8317 * testsuite/libgomp.oacc-fortran/common-block-3.f90: Ditto.
8318 * testsuite/libgomp.oacc-fortran/data-1.f90: Ditto.
8319 * testsuite/libgomp.oacc-fortran/data-2.f90: Ditto.
8320 * testsuite/libgomp.oacc-fortran/data-5.f90: Ditto.
8321 * testsuite/libgomp.oacc-fortran/dummy-array.f90: Ditto.
8322 * testsuite/libgomp.oacc-fortran/gemm-2.f90: Ditto.
8323 * testsuite/libgomp.oacc-fortran/gemm.f90: Ditto.
8324 * testsuite/libgomp.oacc-fortran/host_data-2.f90: Ditto.
8325 * testsuite/libgomp.oacc-fortran/host_data-3.f90: Ditto.
8326 * testsuite/libgomp.oacc-fortran/host_data-4.f90: Ditto.
8327 * testsuite/libgomp.oacc-fortran/kernels-collapse-3.f90: Ditto.
8328 * testsuite/libgomp.oacc-fortran/kernels-collapse-4.f90: Ditto.
8329 * testsuite/libgomp.oacc-fortran/kernels-independent.f90: Ditto.
8330 * testsuite/libgomp.oacc-fortran/kernels-loop-1.f90: Ditto.
8331 * testsuite/libgomp.oacc-fortran/kernels-map-1.f90: Ditto.
8332 * testsuite/libgomp.oacc-fortran/kernels-parallel-loop-data-enter-exit.f95:
8333 Ditto.
8334 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
8335 Ditto.
8336 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
8337 Ditto.
8338 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
8339 Ditto.
8340 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
8341 Ditto.
8342 * testsuite/libgomp.oacc-fortran/kernels-private-vars-vector-1.f90:
8343 Ditto.
8344 * testsuite/libgomp.oacc-fortran/kernels-private-vars-vector-2.f90:
8345 Ditto.
8346 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-1.f90:
8347 Ditto.
8348 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-2.f90:
8349 Ditto.
8350 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-3.f90:
8351 Ditto.
8352 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-4.f90:
8353 Ditto.
8354 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-5.f90:
8355 Ditto.
8356 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-6.f90:
8357 Ditto.
8358 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-7.f90:
8359 Ditto.
8360 * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90: Ditto.
8361 * testsuite/libgomp.oacc-fortran/lib-12.f90: Ditto.
8362 * testsuite/libgomp.oacc-fortran/lib-13.f90: Ditto.
8363 * testsuite/libgomp.oacc-fortran/lib-14.f90: Ditto.
8364 * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction-2.f90:
8365 Likewise and also add 'dg-do run'.
8366 * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction.f90:
8367 Ditto.
8368
ec084613
CP
83692019-10-25 Cesar Philippidis <cesar@codesourcery.com>
8370 Tobias Burnus <tobias@codesourcery.com>
8371
8372 * testsuite/libgomp.oacc-fortran/common-block-1.f90: New test.
8373 * testsuite/libgomp.oacc-fortran/common-block-2.f90: New test.
8374 * testsuite/libgomp.oacc-fortran/common-block-3.f90: New test.
8375
77ef3394
JJ
83762019-10-14 Jakub Jelinek <jakub@redhat.com>
8377
8378 PR libgomp/92081
8379 * testsuite/libgomp.fortran/target-simd.f90: Iterate from 1 rather
8380 than 0.
8381
08c14aaa
TB
83822019-10-11 Tobias Burnus <tobias@codesourcery.com>
8383
8384 * testsuite/libgomp.fortran/use_device_addr-1.f90: New.
8385 * testsuite/libgomp.fortran/use_device_addr-2.f90: New.
8386
6bbead0c
TS
83872019-10-09 Thomas Schwinge <thomas@codesourcery.com>
8388
8389 PR middle-end/92036
8390 * testsuite/libgomp.oacc-c-c++-common/data-firstprivate-1.c: New
8391 file.
8392
eba3dee8
TB
83932019-10-09 Tobias Burnus <tobias@codesourcery.com>
8394
8395 PR testsuite/91884
8396 * testsuite/libgomp.fortran/fortran.exp: Conditionally
8397 add -lquadmath.
8398 * testsuite/libgomp.oacc-fortran/fortran.exp: Ditto.
8399
7d48e14f
JJ
84002019-10-09 Jakub Jelinek <jakub@redhat.com>
8401
8402 PR libgomp/92028
8403 * target.c (gomp_map_vars_internal): Readd the previous
8404 GOMP_MAP_USE_DEVICE_PTR handling code in the first loop,
8405 though do that just in the !not_found_cnt case.
8406
65b67cf3
TB
84072019-10-08 Tobias Burnus <tobias@codesourcery.com>
8408
8409 * gfortran.dg/gomp/target-simd.f90: New.
8410
6c7e076b
JB
84112019-10-02 Julian Brown <julian@codesourcery.com>
8412 Cesar Philippidis <cesar@codesourcery.com>
8413
8414 * libgomp.h (OFFSET_INLINED, OFFSET_POINTER, OFFSET_STRUCT): Define.
8415 * target.c (FIELD_TGT_EMPTY): Define.
8416 (gomp_map_val): Use OFFSET_* macros instead of magic constants. Write
8417 as switch instead of list of ifs.
8418 (gomp_map_vars_internal): Use OFFSET_* and FIELD_TGT_EMPTY macros.
8419
d61bff85
AT
84202019-10-02 Andreas Tobler <andreast@gcc.gnu.org>
8421
8422 * testsuite/libgomp.oacc-c-c++-common/loop-default.h: Remove alloca.h
8423 include. Replace alloca () with __builtin_alloca ().
8424 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Likewise.
8425
810f316d
JJ
84262019-10-01 Jakub Jelinek <jakub@redhat.com>
8427
8428 * configure.ac: Remove GCC_HEADER_STDINT(gstdint.h).
8429 * libgomp.h: Include <stdint.h> instead of "gstdint.h".
8430 * oacc-parallel.c: Don't include "libgomp_g.h".
8431 * plugin/plugin-hsa.c: Include <stdint.h> instead of "gstdint.h".
8432 * plugin/plugin-nvptx.c: Don't include "gstdint.h".
8433 * aclocal.m4: Regenerated.
8434 * config.h.in: Regenerated.
8435 * configure: Regenerated.
8436 * Makefile.in: Regenerated.
8437
d7f9ee98
KCY
84382019-09-30 Kwok Cheung Yeung <kcy@codesourcery.com>
8439
8440 * libgomp_g.h: Include stdint.h instead of gstdint.h.
8441
e9085da5
MR
84422019-09-27 Maciej W. Rozycki <macro@wdc.com>
8443
8444 * configure: Regenerate.
8445
c28712be
TB
84462019-09-13 Tobias Burnus <tobias@codesourcery.com>
8447
8448 * plugin/plugin-hsa.c (hsa_warn, hsa_fatal, hsa_error): Ensure
8449 string is initialized.
8450
3c086f8d
FW
84512019-09-06 Florian Weimer <fweimer@redhat.com>
8452
8453 * configure: Regenerate.
8454
c6c2d1bc
CLT
84552019-09-03 Chung-Lin Tang <cltang@codesourcery.com>
8456
8457 PR other/79543
8458 * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Fix GNU ld --version
8459 scanning to conform to the GNU Coding Standards.
8460 * configure: Regenerate.
8461
5cb72d83
JJ
84622019-08-28 Jakub Jelinek <jakub@redhat.com>
8463
8464 PR libgomp/91530
8465 * testsuite/libgomp.c/scan-21.c: New test.
8466 * testsuite/libgomp.c/scan-22.c: New test.
8467
0ad7981c
JJ
84682019-08-27 Jakub Jelinek <jakub@redhat.com>
8469
8470 PR libgomp/91530
8471 * testsuite/libgomp.c/scan-11.c: Add -msse2 option for sse2_runtime
8472 targets.
8473 * testsuite/libgomp.c/scan-12.c: Likewise.
8474 * testsuite/libgomp.c/scan-13.c: Likewise.
8475 * testsuite/libgomp.c/scan-14.c: Likewise.
8476 * testsuite/libgomp.c/scan-15.c: Likewise.
8477 * testsuite/libgomp.c/scan-16.c: Likewise.
8478 * testsuite/libgomp.c/scan-17.c: Likewise.
8479 * testsuite/libgomp.c/scan-18.c: Likewise.
8480 * testsuite/libgomp.c/scan-19.c: Likewise.
8481 * testsuite/libgomp.c/scan-20.c: Likewise.
8482 * testsuite/libgomp.c++/scan-9.C: Likewise.
8483 * testsuite/libgomp.c++/scan-10.C: Likewise.
8484 * testsuite/libgomp.c++/scan-11.C: Likewise.
8485 * testsuite/libgomp.c++/scan-12.C: Likewise.
8486 * testsuite/libgomp.c++/scan-14.C: Likewise.
8487 * testsuite/libgomp.c++/scan-15.C: Likewise.
8488 * testsuite/libgomp.c++/scan-13.C: Likewise. Use sse2_runtime
8489 instead of i?86-*-* x86_64-*-* as target for scan-tree-dump-times.
8490 * testsuite/libgomp.c++/scan-16.C: Likewise.
8491
1e67491a
TK
84922019-08-17 Thomas Koenig <tkoenig@gcc.gnu.org>
8493
8494 PR fortran/91473
8495 * testsuite/libgomp.fortran/appendix-a/a.28.5.f90: Add
8496 -std=legacy so invalid code in the test case is accepted.
8497
393fdeb1
TK
84982019-08-12 Thomas Koenig <tkoenig@gcc.gnu.org>
8499
8500 PR fortran/91422
8501 * testsuite/libgomp.oacc-fortran/routine-7.f90: Correct array
8502 dimension.
8503
8860d270
JJ
85042019-08-08 Jakub Jelinek <jakub@redhat.com>
8505
8506 * target.c (gomp_map_vars_internal): For GOMP_MAP_USE_DEVICE_PTR
8507 perform the lookup in the first loop only if !not_found_cnt, otherwise
8508 perform lookups for it in the second loop guarded with
8509 if (not_found_cnt || has_firstprivate).
8510 * testsuite/libgomp.c/target-37.c: New test.
8511 * testsuite/libgomp.c++/target-22.C: New test.
8512
398e3feb
JJ
85132019-08-07 Jakub Jelinek <jakub@redhat.com>
8514
8515 * testsuite/libgomp.c/target-18.c (struct S): New type.
8516 (foo): Use use_device_addr clause instead of use_device_ptr clause
8517 where required by OpenMP 5.0, add further tests for both use_device_ptr
8518 and use_device_addr clauses.
8519 * testsuite/libgomp.c++/target-9.C (struct S): New type.
8520 (foo): Use use_device_addr clause instead of use_device_ptr clause
8521 where required by OpenMP 5.0, add further tests for both use_device_ptr
8522 and use_device_addr clauses. Add t and u arguments.
8523 (main): Adjust caller.
8524
d81ab49d
JJ
85252019-08-06 Jakub Jelinek <jakub@redhat.com>
8526
8527 * testsuite/libgomp.c++/loop-13.C: New test.
8528 * testsuite/libgomp.c++/loop-14.C: New test.
8529 * testsuite/libgomp.c++/loop-15.C: New test.
8530
c3ac76aa
JJ
85312019-07-31 Jakub Jelinek <jakub@redhat.com>
8532
8533 PR middle-end/91301
8534 * testsuite/libgomp.c++/for-27.C: New test.
8535
8dc63166
SK
85362019-07-23 Steven G. Kargl <kargl@gcc.gnu.org>
8537
393fdeb1 8538 * testsuite/libgomp.fortran/reduction4.f90: Update BOZ usage.
8dc63166 8539 * testsuite/libgomp.fortran/reduction5.f90: Ditto.
393fdeb1 8540
554a530f
JJ
85412019-07-20 Jakub Jelinek <jakub@redhat.com>
8542
8543 * testsuite/libgomp.c-c++-common/loop-1.c: New test.
8544
6cda84b5
JJ
85452019-07-08 Jakub Jelinek <jakub@redhat.com>
8546
8547 * testsuite/libgomp.c++/scan-13.C: Replace xfail with target x86.
8548 * testsuite/libgomp.c++/scan-16.C: Likewise.
8549
1f52d1a8
JJ
85502019-07-06 Jakub Jelinek <jakub@redhat.com>
8551
6f67abcd
JJ
8552 * testsuite/libgomp.c/scan-19.c: New test.
8553 * testsuite/libgomp.c/scan-20.c: New test.
8554
1f52d1a8
JJ
8555 * testsuite/libgomp.c/scan-11.c: New test.
8556 * testsuite/libgomp.c/scan-12.c: New test.
8557 * testsuite/libgomp.c/scan-13.c: New test.
8558 * testsuite/libgomp.c/scan-14.c: New test.
8559 * testsuite/libgomp.c/scan-15.c: New test.
8560 * testsuite/libgomp.c/scan-16.c: New test.
8561 * testsuite/libgomp.c/scan-17.c: New test.
8562 * testsuite/libgomp.c/scan-18.c: New test.
8563 * testsuite/libgomp.c++/scan-9.C: New test.
8564 * testsuite/libgomp.c++/scan-10.C: New test.
8565 * testsuite/libgomp.c++/scan-11.C: New test.
8566 * testsuite/libgomp.c++/scan-12.C: New test.
8567 * testsuite/libgomp.c++/scan-13.C: New test.
8568 * testsuite/libgomp.c++/scan-14.C: New test.
8569 * testsuite/libgomp.c++/scan-15.C: New test.
8570 * testsuite/libgomp.c++/scan-16.C: New test.
8571
2f03073f
JJ
85722019-07-04 Jakub Jelinek <jakub@redhat.com>
8573
8574 * testsuite/libgomp.c/scan-9.c: New test.
8575 * testsuite/libgomp.c/scan-10.c: New test.
8576
2f6bb511
JJ
85772019-07-03 Jakub Jelinek <jakub@redhat.com>
8578
8579 * testsuite/libgomp.c++/scan-1.C: New test.
8580 * testsuite/libgomp.c++/scan-2.C: New test.
8581 * testsuite/libgomp.c++/scan-3.C: New test.
8582 * testsuite/libgomp.c++/scan-4.C: New test.
8583 * testsuite/libgomp.c++/scan-5.C: New test.
8584 * testsuite/libgomp.c++/scan-6.C: New test.
8585 * testsuite/libgomp.c++/scan-7.C: New test.
8586 * testsuite/libgomp.c++/scan-8.C: New test.
8587 * testsuite/libgomp.c/scan-1.c: New test.
8588 * testsuite/libgomp.c/scan-2.c: New test.
8589 * testsuite/libgomp.c/scan-3.c: New test.
8590 * testsuite/libgomp.c/scan-4.c: New test.
8591 * testsuite/libgomp.c/scan-5.c: New test.
8592 * testsuite/libgomp.c/scan-6.c: New test.
8593 * testsuite/libgomp.c/scan-7.c: New test.
8594 * testsuite/libgomp.c/scan-8.c: New test.
8595
bd194a51
TS
85962019-06-18 Thomas Schwinge <thomas@codesourcery.com>
8597
85fca03a
TS
8598 * testsuite/libgomp.oacc-c++/firstprivate-mappings-1.C: New file.
8599 * testsuite/libgomp.oacc-c-c++-common/firstprivate-mappings-1.c:
8600 Likewise.
8601
bd194a51
TS
8602 * testsuite/libgomp.fortran/allocatable3.f90: Add missing results
8603 check.
8604
6652161e
CP
86052019-06-18 Cesar Philippidis <cesar@codesourcery.com>
8606
8607 * testsuite/libgomp.oacc-fortran/allocatable-array-1.f90: New
8608 file.
8609
3a37d6f6
TS
86102019-06-18 Thomas Schwinge <thomas@codesourcery.com>
8611
4017da8d
TS
8612 PR fortran/90743
8613 * oacc-parallel.c (GOACC_parallel_keyed): Handle NULL mapping
8614 case.
8615 * testsuite/libgomp.fortran/target-allocatable-1-1.f90: New file.
8616 * testsuite/libgomp.fortran/target-allocatable-1-2.f90: Likewise.
8617 * testsuite/libgomp.oacc-fortran/allocatable-1-1.f90: Likewise.
8618 * testsuite/libgomp.oacc-fortran/allocatable-1-2.f90: Likewise.
8619
6f7c1f65
TS
8620 PR testsuite/90861
8621 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Update.
8622
3a37d6f6
TS
8623 PR middle-end/90862
8624 * testsuite/libgomp.oacc-c-c++-common/declare-1.c: Update.
8625
f45ce17d
TV
86262019-06-16 Tom de Vries <tdevries@suse.de>
8627
8628 PR tree-optimization/89376
8629 * testsuite/libgomp.oacc-c-c++-common/pr89376.c: New test.
8630
00908992
TV
86312019-06-15 Tom de Vries <tdevries@suse.de>
8632
8633 PR tree-optimization/89713
8634 * testsuite/libgomp.oacc-c-c++-common/pr85381-2.c: Expect no bar.sync.
8635 * testsuite/libgomp.oacc-c-c++-common/pr85381-4.c: Same.
8636
211b7533
JJ
86372019-06-15 Jakub Jelinek <jakub@redhat.com>
8638
8639 PR middle-end/90779
8640 * testsuite/libgomp.c/pr90779.c: New test.
8641 * testsuite/libgomp.fortran/pr90779.f90: New test.
8642
120a01d1
TV
86432019-06-15 Tom de Vries <tdevries@suse.de>
8644
8645 PR tree-optimization/90009
8646 * testsuite/libgomp.oacc-c-c++-common/pr90009.c: New test.
8647
c29c92c7
FX
86482019-06-13 Feng Xue <fxue@os.amperecomputing.com>
8649
8650 PR tree-optimization/89713
8651 * testsuite/libgomp.oacc-c-c++-common/pr84955-1.c: New test.
8652
ce9c4ec3
JJ
86532019-06-11 Jakub Jelinek <jakub@redhat.com>
8654
8655 PR target/90811
8656 * testsuite/libgomp.c/pr90811.c: New test.
8657
28b3a77c
JJ
86582019-06-05 Jakub Jelinek <jakub@redhat.com>
8659
8660 * testsuite/libgomp.c++/lastprivate-conditional-1.C: New test.
8661 * testsuite/libgomp.c++/lastprivate-conditional-2.C: New test.
8662
7855700e
JJ
86632019-06-04 Jakub Jelinek <jakub@redhat.com>
8664
8665 * testsuite/libgomp.c-c++-common/lastprivate-conditional-7.c: New test.
8666 * testsuite/libgomp.c-c++-common/lastprivate-conditional-8.c: New test.
8667 * testsuite/libgomp.c-c++-common/lastprivate-conditional-9.c: New test.
8668 * testsuite/libgomp.c-c++-common/lastprivate-conditional-10.c: New test.
8669
a7155c2e
RO
86702019-05-30 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
8671
8672 * configure.ac: Call AX_COUNT_CPUS.
8673 Substitute CPU_COUNT.
8674 * testsuite/Makefile.am (check-am): Use CPU_COUNT as processor
8675 count fallback.
8676 * aclocal.m4: Regenerate.
8677 * configure: Regenerate.
8678 * Makefile.in, testsuite/Makefile.in: Regenerate.
8679
7e47198b
JJ
86802019-05-29 Jakub Jelinek <jakub@redhat.com>
8681
8682 * testsuite/libgomp.c-c++-common/lastprivate_conditional_4.c: Rename
8683 to ...
8684 * testsuite/libgomp.c-c++-common/lastprivate-conditional-4.c: ... this.
8685 * testsuite/libgomp.c-c++-common/lastprivate-conditional-5.c: New test.
8686 * testsuite/libgomp.c-c++-common/lastprivate-conditional-6.c: New test.
8687
fcfb8032
JJ
86882019-05-27 Jakub Jelinek <jakub@redhat.com>
8689
8e7757ba
JJ
8690 * testsuite/libgomp.c-c++-common/lastprivate_conditional_4.c: New test.
8691
36c7a3ff
JJ
8692 * testsuite/libgomp.c-c++-common/lastprivate-conditional-3.c: New test.
8693
fcfb8032
JJ
8694 PR libgomp/90641
8695 * work.c (gomp_init_work_share): Instead of aligning final ordered
8696 value to multiples of long long alignment, align to that the
8697 first part (ordered team ids) and if inline_ordered_team_ids
8698 is not on a long long alignment boundary within the structure,
8699 use __alignof__ (long long) - 1 pad size always.
8700 * loop.c (GOMP_loop_start): Fix *mem computation if
8701 inline_ordered_team_ids is not aligned on long long alignment boundary
8702 within the structure.
8703 * loop-ull.c (GOMP_loop_ull_start): Likewise.
8704 * sections.c (GOMP_sections2_start): Likewise.
8705
b5c26449
JJ
87062019-05-24 Jakub Jelinek <jakub@redhat.com>
8707
6c7ae8c5
JJ
8708 * testsuite/libgomp.c-c++-common/lastprivate-conditional-1.c: New test.
8709 * testsuite/libgomp.c-c++-common/lastprivate-conditional-2.c: New test.
8710
b5c26449
JJ
8711 PR libgomp/90585
8712 * plugin/plugin-hsa.c: Include gstdint.h. Include inttypes.h only if
8713 HAVE_INTTYPES_H is defined.
8714 (print_uint64_t): New typedef.
8715 (PRIu64): Define if HAVE_INTTYPES_H is not defined.
8716 (print_kernel_dispatch, run_kernel): Use PRIu64 macro instead of
8717 "lu", cast uint64_t HSA_DEBUG and fprintf arguments to print_uint64_t.
8718 (release_kernel_dispatch): Likewise. Cast shadow->debug to uintptr_t
8719 before casting to void *.
8720 * plugin/plugin-nvptx.c: Include gstdint.h instead of stdint.h.
8721 * oacc-mem.c: Don't include config.h nor stdint.h.
8722 * target.c: Don't include config.h.
8723 * oacc-cuda.c: Likewise.
8724 * oacc-host.c: Don't include stdint.h.
8725
3e03ed66
JJ
87262019-05-20 Jakub Jelinek <jakub@redhat.com>
8727
8728 PR libgomp/90527
8729 * alloc.c (_GNU_SOURCE): Define.
8730
5fae049d
TS
87312019-05-17 Thomas Schwinge <thomas@codesourcery.com>
8732
8733 * acc_prof.h: New file.
8734 * oacc-profiling.c: Likewise.
8735 * Makefile.am (nodist_libsubinclude_HEADERS, libgomp_la_SOURCES):
8736 Add these, respectively.
8737 * Makefile.in: Regenerate.
8738 * env.c (initialize_env): Call goacc_profiling_initialize.
8739 * oacc-plugin.c (GOMP_PLUGIN_goacc_thread)
8740 (GOMP_PLUGIN_goacc_profiling_dispatch): New functions.
8741 * oacc-plugin.h (GOMP_PLUGIN_goacc_thread)
8742 (GOMP_PLUGIN_goacc_profiling_dispatch): Declare.
8743 * libgomp.map (OACC_2.5.1): Add acc_prof_lookup,
8744 acc_prof_register, acc_prof_unregister, and acc_register_library.
8745 (GOMP_PLUGIN_1.3): Add GOMP_PLUGIN_goacc_profiling_dispatch, and
8746 GOMP_PLUGIN_goacc_thread.
8747 * oacc-int.h (struct goacc_thread): Add prof_info, api_info,
8748 prof_callbacks_enabled members.
8749 (goacc_prof_enabled, goacc_profiling_initialize)
8750 (_goacc_profiling_dispatch_p, _goacc_profiling_setup_p)
8751 (goacc_profiling_dispatch): Declare.
8752 (GOACC_PROF_ENABLED, GOACC_PROFILING_DISPATCH_P)
8753 (GOACC_PROFILING_SETUP_P): Define.
8754 * oacc-async.c (acc_async_test, acc_async_test_all, acc_wait)
8755 (acc_wait_async, acc_wait_all, acc_wait_all_async): Update for
8756 OpenACC Profiling Interface.
8757 * oacc-cuda.c (acc_get_current_cuda_device)
8758 (acc_get_current_cuda_context, acc_get_cuda_stream)
8759 (acc_set_cuda_stream): Likewise.
8760 * oacc-init.c (acc_init_1, goacc_attach_host_thread_to_device)
8761 (acc_init, acc_set_device_type, acc_get_device_type)
8762 (acc_get_device_num, goacc_lazy_initialize): Likewise.
8763 * oacc-mem.c (acc_malloc, acc_free, memcpy_tofrom_device)
8764 (acc_deviceptr, acc_hostptr, acc_is_present, acc_map_data)
8765 (acc_unmap_data, present_create_copy, delete_copyout)
8766 (update_dev_host): Likewise.
8767 * oacc-parallel.c (GOACC_parallel_keyed, GOACC_data_start)
8768 (GOACC_data_end, GOACC_enter_exit_data, GOACC_update, GOACC_wait):
8769 Likewise.
8770 * plugin/plugin-nvptx.c (nvptx_exec, nvptx_alloc, nvptx_free)
8771 (GOMP_OFFLOAD_openacc_exec, GOMP_OFFLOAD_openacc_async_exec):
8772 Likewise.
8773 * libgomp.texi: Update.
8774 * testsuite/libgomp.oacc-c-c++-common/acc_prof-dispatch-1.c: New
8775 file.
8776 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c: Likewise.
8777 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c:
8778 Likewise.
8779 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c:
8780 Likewise.
8781 * testsuite/libgomp.oacc-c-c++-common/acc_prof-valid_bytes-1.c:
8782 Likewise.
8783 * testsuite/libgomp.oacc-c-c++-common/acc_prof-version-1.c:
8784 Likewise.
8785
1f4c5b9b
CLT
87862019-05-13 Chung-Lin Tang <cltang@codesourcery.com>
8787
8788 * libgomp-plugin.h (struct goacc_asyncqueue): Declare.
8789 (struct goacc_asyncqueue_list): Likewise.
8790 (goacc_aq): Likewise.
8791 (goacc_aq_list): Likewise.
8792 (GOMP_OFFLOAD_openacc_register_async_cleanup): Remove.
8793 (GOMP_OFFLOAD_openacc_async_test): Remove.
8794 (GOMP_OFFLOAD_openacc_async_test_all): Remove.
8795 (GOMP_OFFLOAD_openacc_async_wait): Remove.
8796 (GOMP_OFFLOAD_openacc_async_wait_async): Remove.
8797 (GOMP_OFFLOAD_openacc_async_wait_all): Remove.
8798 (GOMP_OFFLOAD_openacc_async_wait_all_async): Remove.
8799 (GOMP_OFFLOAD_openacc_async_set_async): Remove.
8800 (GOMP_OFFLOAD_openacc_exec): Adjust declaration.
8801 (GOMP_OFFLOAD_openacc_cuda_get_stream): Likewise.
8802 (GOMP_OFFLOAD_openacc_cuda_set_stream): Likewise.
8803 (GOMP_OFFLOAD_openacc_async_exec): Declare.
8804 (GOMP_OFFLOAD_openacc_async_construct): Declare.
8805 (GOMP_OFFLOAD_openacc_async_destruct): Declare.
8806 (GOMP_OFFLOAD_openacc_async_test): Declare.
8807 (GOMP_OFFLOAD_openacc_async_synchronize): Declare.
8808 (GOMP_OFFLOAD_openacc_async_serialize): Declare.
8809 (GOMP_OFFLOAD_openacc_async_queue_callback): Declare.
8810 (GOMP_OFFLOAD_openacc_async_host2dev): Declare.
8811 (GOMP_OFFLOAD_openacc_async_dev2host): Declare.
8812
8813 * libgomp.h (struct acc_dispatch_t): Define 'async' sub-struct.
8814 (gomp_acc_insert_pointer): Adjust declaration.
8815 (gomp_copy_host2dev): New declaration.
8816 (gomp_copy_dev2host): Likewise.
8817 (gomp_map_vars_async): Likewise.
8818 (gomp_unmap_tgt): Likewise.
8819 (gomp_unmap_vars_async): Likewise.
8820 (gomp_fini_device): Likewise.
8821
8822 * oacc-async.c (get_goacc_thread): New function.
8823 (get_goacc_thread_device): New function.
8824 (lookup_goacc_asyncqueue): New function.
8825 (get_goacc_asyncqueue): New function.
8826 (acc_async_test): Adjust code to use new async design.
8827 (acc_async_test_all): Likewise.
8828 (acc_wait): Likewise.
8829 (acc_wait_async): Likewise.
8830 (acc_wait_all): Likewise.
8831 (acc_wait_all_async): Likewise.
8832 (goacc_async_free): New function.
8833 (goacc_init_asyncqueues): Likewise.
8834 (goacc_fini_asyncqueues): Likewise.
8835 * oacc-cuda.c (acc_get_cuda_stream): Adjust code to use new async
8836 design.
8837 (acc_set_cuda_stream): Likewise.
8838 * oacc-host.c (host_openacc_exec): Adjust parameters, remove 'async'.
8839 (host_openacc_register_async_cleanup): Remove.
8840 (host_openacc_async_exec): New function.
8841 (host_openacc_async_test): Adjust parameters.
8842 (host_openacc_async_test_all): Remove.
8843 (host_openacc_async_wait): Remove.
8844 (host_openacc_async_wait_async): Remove.
8845 (host_openacc_async_wait_all): Remove.
8846 (host_openacc_async_wait_all_async): Remove.
8847 (host_openacc_async_set_async): Remove.
8848 (host_openacc_async_synchronize): New function.
8849 (host_openacc_async_serialize): New function.
8850 (host_openacc_async_host2dev): New function.
8851 (host_openacc_async_dev2host): New function.
8852 (host_openacc_async_queue_callback): New function.
8853 (host_openacc_async_construct): New function.
8854 (host_openacc_async_destruct): New function.
8855 (struct gomp_device_descr host_dispatch): Remove initialization of old
93d90219 8856 interface, add initialization of new async sub-struct.
1f4c5b9b
CLT
8857 * oacc-init.c (acc_shutdown_1): Adjust to use gomp_fini_device.
8858 (goacc_attach_host_thread_to_device): Remove old async code usage.
8859 * oacc-int.h (goacc_init_asyncqueues): New declaration.
8860 (goacc_fini_asyncqueues): Likewise.
8861 (goacc_async_copyout_unmap_vars): Likewise.
8862 (goacc_async_free): Likewise.
8863 (get_goacc_asyncqueue): Likewise.
8864 (lookup_goacc_asyncqueue): Likewise.
8865 * oacc-mem.c (memcpy_tofrom_device): Adjust code to use new async
8866 design.
8867 (present_create_copy): Adjust code to use new async design.
8868 (delete_copyout): Likewise.
8869 (update_dev_host): Likewise.
8870 (gomp_acc_insert_pointer): Add async parameter, adjust code to use new
8871 async design.
8872 (gomp_acc_remove_pointer): Adjust code to use new async design.
8873 * oacc-parallel.c (GOACC_parallel_keyed): Adjust code to use new async
8874 design.
8875 (GOACC_enter_exit_data): Likewise.
8876 (goacc_wait): Likewise.
8877 (GOACC_update): Likewise.
8878 * oacc-plugin.c (GOMP_PLUGIN_async_unmap_vars): Change to assert fail
8879 when called, warn as obsolete in comment.
8880 * target.c (goacc_device_copy_async): New function.
8881 (gomp_copy_host2dev): Remove 'static', add goacc_asyncqueue parameter,
8882 add goacc_device_copy_async case.
8883 (gomp_copy_dev2host): Likewise.
8884 (gomp_map_vars_existing): Add goacc_asyncqueue parameter, adjust code.
8885 (gomp_map_pointer): Likewise.
8886 (gomp_map_fields_existing): Likewise.
8887 (gomp_map_vars_internal): New always_inline function, renamed from
8888 gomp_map_vars.
8889 (gomp_map_vars): Implement by calling gomp_map_vars_internal.
8890 (gomp_map_vars_async): Implement by calling gomp_map_vars_internal,
8891 passing goacc_asyncqueue argument.
8892 (gomp_unmap_tgt): Remove static, add attribute_hidden.
8893 (gomp_unref_tgt): New function.
8894 (gomp_unmap_vars_internal): New always_inline function, renamed from
8895 gomp_unmap_vars.
8896 (gomp_unmap_vars): Implement by calling gomp_unmap_vars_internal.
8897 (gomp_unmap_vars_async): Implement by calling
8898 gomp_unmap_vars_internal, passing goacc_asyncqueue argument.
8899 (gomp_fini_device): New function.
8900 (gomp_exit_data): Adjust gomp_copy_dev2host call.
8901 (gomp_load_plugin_for_device): Remove old interface, adjust to load
8902 new async interface.
8903 (gomp_target_fini): Adjust code to call gomp_fini_device.
8904
8905 * plugin/plugin-nvptx.c (struct cuda_map): Remove.
8906 (struct ptx_stream): Remove.
8907 (struct nvptx_thread): Remove current_stream field.
8908 (cuda_map_create): Remove.
8909 (cuda_map_destroy): Remove.
8910 (map_init): Remove.
8911 (map_fini): Remove.
8912 (map_pop): Remove.
8913 (map_push): Remove.
8914 (struct goacc_asyncqueue): Define.
8915 (struct nvptx_callback): Define.
8916 (struct ptx_free_block): Define.
8917 (struct ptx_device): Remove null_stream, active_streams, async_streams,
8918 stream_lock, and next fields.
8919 (enum ptx_event_type): Remove.
8920 (struct ptx_event): Remove.
8921 (ptx_event_lock): Remove.
8922 (ptx_events): Remove.
8923 (init_streams_for_device): Remove.
8924 (fini_streams_for_device): Remove.
8925 (select_stream_for_async): Remove.
8926 (nvptx_init): Remove ptx_events and ptx_event_lock references.
8927 (nvptx_attach_host_thread_to_device): Remove CUDA_ERROR_NOT_PERMITTED
8928 case.
8929 (nvptx_open_device): Add free_blocks initialization, remove
8930 init_streams_for_device call.
8931 (nvptx_close_device): Remove fini_streams_for_device call, add
8932 free_blocks destruct code.
8933 (event_gc): Remove.
8934 (event_add): Remove.
8935 (nvptx_exec): Adjust parameters and code.
8936 (nvptx_free): Likewise.
8937 (nvptx_host2dev): Remove.
8938 (nvptx_dev2host): Remove.
8939 (nvptx_set_async): Remove.
8940 (nvptx_async_test): Remove.
8941 (nvptx_async_test_all): Remove.
8942 (nvptx_wait): Remove.
8943 (nvptx_wait_async): Remove.
8944 (nvptx_wait_all): Remove.
8945 (nvptx_wait_all_async): Remove.
8946 (nvptx_get_cuda_stream): Remove.
8947 (nvptx_set_cuda_stream): Remove.
8948 (GOMP_OFFLOAD_alloc): Adjust code.
8949 (GOMP_OFFLOAD_free): Likewise.
8950 (GOMP_OFFLOAD_openacc_register_async_cleanup): Remove.
8951 (GOMP_OFFLOAD_openacc_exec): Adjust parameters and code.
8952 (GOMP_OFFLOAD_openacc_async_test_all): Remove.
8953 (GOMP_OFFLOAD_openacc_async_wait): Remove.
8954 (GOMP_OFFLOAD_openacc_async_wait_async): Remove.
8955 (GOMP_OFFLOAD_openacc_async_wait_all): Remove.
8956 (GOMP_OFFLOAD_openacc_async_wait_all_async): Remove.
8957 (GOMP_OFFLOAD_openacc_async_set_async): Remove.
8958 (cuda_free_argmem): New function.
8959 (GOMP_OFFLOAD_openacc_async_exec): New plugin hook function.
8960 (GOMP_OFFLOAD_openacc_create_thread_data): Adjust code.
8961 (GOMP_OFFLOAD_openacc_cuda_get_stream): Adjust code.
8962 (GOMP_OFFLOAD_openacc_cuda_set_stream): Adjust code.
8963 (GOMP_OFFLOAD_openacc_async_construct): New plugin hook function.
8964 (GOMP_OFFLOAD_openacc_async_destruct): New plugin hook function.
8965 (GOMP_OFFLOAD_openacc_async_test): Remove and re-implement.
8966 (GOMP_OFFLOAD_openacc_async_synchronize): New plugin hook function.
8967 (GOMP_OFFLOAD_openacc_async_serialize): New plugin hook function.
8968 (GOMP_OFFLOAD_openacc_async_queue_callback): New plugin hook function.
8969 (cuda_callback_wrapper): New function.
8970 (cuda_memcpy_sanity_check): New function.
8971 (GOMP_OFFLOAD_host2dev): Remove and re-implement.
8972 (GOMP_OFFLOAD_dev2host): Remove and re-implement.
8973 (GOMP_OFFLOAD_openacc_async_host2dev): New plugin hook function.
8974 (GOMP_OFFLOAD_openacc_async_dev2host): New plugin hook function.
8975
da2d30c1
TS
89762019-05-07 Thomas Schwinge <thomas@codesourcery.com>
8977
8978 PR target/87835
8979 * testsuite/libgomp.oacc-c-c++-common/pr87835.c: Update.
8980
2bbbfa4e
TS
89812019-05-06 Thomas Schwinge <thomas@codesourcery.com>
8982
8983 * oacc-parallel.c: Add comments to legacy entry points (GCC 5).
8984
bbf1efe1
KB
89852019-03-27 Kevin Buettner <kevinb@redhat.com>
8986
8987 * team.c (gomp_team_start): Initialize pool->threads[0].
8988
1241136c
TS
89892019-02-22 Thomas Schwinge <thomas@codesourcery.com>
8990
b03d721a
TS
8991 * testsuite/libgomp.oacc-c++/c++.exp: Specify
8992 "-foffload=$offload_target".
8993 * testsuite/libgomp.oacc-c/c.exp: Likewise.
8994 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
8995 * testsuite/lib/libgomp.exp
8996 (check_effective_target_openacc_nvidia_accel_configured): Remove,
8997 as (conceptually) merged into
8998 check_effective_target_openacc_nvidia_accel_selected. Adjust all
8999 users.
9000
0a0384b4
TS
9001 * plugin/configfrag.ac: Populate and AC_SUBST offload_targets.
9002 * testsuite/libgomp-test-support.exp.in: Adjust.
9003 * testsuite/lib/libgomp.exp: Likewise. Don't populate
9004 openacc_device_types_s.
9005 (offload_target_to_openacc_device_type): New proc.
9006 * testsuite/libgomp.oacc-c++/c++.exp: Adjust.
9007 * testsuite/libgomp.oacc-c/c.exp: Likewise.
9008 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
9009 * Makefile.in: Regenerate.
9010 * configure: Likewise.
9011 * testsuite/Makefile.in: Likewise.
9012
ee332b4a
TS
9013 * plugin/configfrag.ac: Populate and AC_SUBST offload_plugins
9014 instead of offload_targets, and AC_DEFINE_UNQUOTED OFFLOAD_PLUGINS
9015 instead of OFFLOAD_TARGETS.
9016 * target.c (gomp_target_init): Adjust.
9017 * testsuite/libgomp-test-support.exp.in: Likewise.
9018 * testsuite/lib/libgomp.exp: Likewise. Populate
9019 openacc_device_types_s instead of offload_targets_s_openacc.
9020 (check_effective_target_openacc_nvidia_accel_selected)
9021 (check_effective_target_openacc_host_selected): Adjust.
9022 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
9023 * testsuite/libgomp.oacc-c/c.exp: Likewise.
9024 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
9025 * Makefile.in: Regenerate.
9026 * config.h.in: Likewise.
9027 * configure: Likewise.
9028 * testsuite/Makefile.in: Likewise.
9029
1241136c
TS
9030 * testsuite/lib/libgomp.exp: Error out for unknown offload target.
9031 * testsuite/libgomp.oacc-c++/c++.exp: Likewise. Report if
9032 "offloading: supported, but hardware not accessible".
9033 * testsuite/libgomp.oacc-c/c.exp: Likewise.
9034 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
9035
19695f4d
CLT
90362019-02-19 Chung-Lin Tang <cltang@codesourcery.com>
9037
9038 PR c/87924
9039 * oacc-parallel.c (GOACC_parallel_keyed): Remove condition on call to
9040 goacc_wait().
9041 (goacc_wait): Handle ACC_ASYNC_NOVAL case, remove goacc_thread() call
9042 and related adjustment.
9043
8b44f8ec
JJ
90442019-01-30 Jakub Jelinek <jakub@redhat.com>
9045
9046 PR c++/88988
9047 * testsuite/libgomp.c++/pr88988.C: New test.
9048
be3a87e7
JJ
90492019-01-28 Jakub Jelinek <jakub@redhat.com>
9050
9051 PR middle-end/89002
9052 * testsuite/libgomp.c/pr89002.c: New test.
9053
497ef4d7
RB
90542019-01-28 Richard Biener <rguenther@suse.de>
9055
9056 PR testsuite/89064
9057 PR tree-optimization/86865
9058 * testsuite/libgomp.graphite/force-parallel-5.c: XFAIL.
9059
738c56d4
TV
90602019-01-24 Tom de Vries <tdevries@suse.de>
9061
9062 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_fini_device): Free ptx_devices
9063 once instantiated_devices drops to 0.
9064
4a75460b
TV
90652019-01-23 Tom de Vries <tdevries@suse.de>
9066
9067 PR target/PR88946
9068 * plugin/plugin-nvptx.c (cuda_map_destroy): Use CUDA_CALL_NOCHECK for
9069 cuMemFree.
9070 (nvptx_exec): Don't call map_push if mapnum == 0.
9071 * testsuite/libgomp.oacc-c-c++-common/pr88946.c: New test.
9072
4fef8e4d
TV
90732019-01-23 Tom de Vries <tdevries@suse.de>
9074
9075 PR target/88941
9076 PR target/88939
9077 * plugin/plugin-nvptx.c (cuda_map_destroy): Handle map->active case.
9078 (map_fini): Remove "assert (!s->map->active)".
9079 * testsuite/libgomp.oacc-c-c++-common/pr88941.c: New test.
9080
2ee6cb22
TV
90812019-01-23 Tom de Vries <tdevries@suse.de>
9082
9083 PR target/87835
9084 * plugin/plugin-nvptx.c (map_push): Fix adding of allocated element.
9085 * testsuite/libgomp.oacc-c-c++-common/pr87835.c: New test.
9086
d41d952c
TV
90872019-01-15 Tom de Vries <tdevries@suse.de>
9088
9089 PR target/80547
9090 * testsuite/libgomp.oacc-c-c++-common/gang-reduction-var-assignment.c:
9091 New test.
9092
efb56ae8
TV
90932019-01-12 Tom de Vries <tdevries@suse.de>
9094
9095 * testsuite/libgomp.oacc-c-c++-common/pr85486-2.c: New test.
9096 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-2.c: New test.
9097 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-5.c: New test.
9098 * testsuite/libgomp.oacc-fortran/gemm-2.f90: New test.
9099
2c2ff168
TV
91002019-01-12 Tom de Vries <tdevries@suse.de>
9101
9102 * plugin/plugin-nvptx.c (nvptx_exec): Update error message.
9103
a1057758
TV
91042019-01-12 Tom de Vries <tdevries@suse.de>
9105
9106 * testsuite/libgomp.oacc-c-c++-common/vector-length-64-1.c: New test.
9107 * testsuite/libgomp.oacc-c-c++-common/vector-length-64-2.c: New test.
9108 * testsuite/libgomp.oacc-c-c++-common/vector-length-64-3.c: New test.
9109
56314b77
TV
91102019-01-12 Tom de Vries <tdevries@suse.de>
9111
9112 PR target/85486
9113 * testsuite/libgomp.oacc-c-c++-common/pr85486-3.c: New test.
9114 * testsuite/libgomp.oacc-c-c++-common/pr85486.c: New test.
9115
b39e4366
TV
91162019-01-12 Tom de Vries <tdevries@suse.de>
9117
9118 PR target/85381
9119 * testsuite/libgomp.oacc-c-c++-common/pr85381-5.c: New test.
9120 * testsuite/libgomp.oacc-c-c++-common/pr85381.c: New test.
9121
2cb7a501
TV
91222019-01-12 Tom de Vries <tdevries@suse.de>
9123
9124 * testsuite/libgomp.oacc-c-c++-common/vred2d-128.c: New test.
9125 * testsuite/libgomp.oacc-fortran/gemm.f90: New test.
9126 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-10.c: New test.
9127
8e77f71e
TV
91282019-01-12 Tom de Vries <tdevries@suse.de>
9129
9130 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-7.c: New test.
9131 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-4.c: New test.
9132 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-6.c: New test.
9133
52d22ece
TV
91342019-01-12 Tom de Vries <tdevries@suse.de>
9135
9136 * plugin/plugin-nvptx.c (nvptx_exec): Update insufficient hardware
9137 resources diagnostic.
9138
2b9d9e39
TV
91392019-01-12 Tom de Vries <tdevries@suse.de>
9140
9141 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-1.c: Expect
9142 vector length to be 128.
9143 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Expect vector
9144 length 2097152 to be reduced to 1024 instead of 32.
9145
4102bda6
TS
91462019-01-11 Thomas Schwinge <thomas@codesourcery.com>
9147 James Norris <jnorris@codesourcery.com>
9148
9149 * libgomp.texi: Better distinguish OpenACC and OpenMP "Runtime
9150 Library Routines", and "Environment Variables".
9151
052aaace
TV
91522019-01-11 Tom de Vries <tdevries@suse.de>
9153
9154 * plugin/plugin-nvptx.c (nvptx_exec): Prevent vector_length 64 and
9155 num_workers 16.
9156
9390f916
TV
91572019-01-11 Tom de Vries <tdevries@suse.de>
9158
9159 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Remove
9160 -foffload=-w.
9161 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Same.
9162 * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Same.
9163 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Same.
9164 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Same.
9165
2c3e7ad2
TV
91662019-01-11 Tom de Vries <tdevries@suse.de>
9167
9168 * testsuite/libgomp.oacc-c-c++-common/insufficient-resources.c: New
9169 test.
9170
e222497d
NS
91712019-01-10 Nathan Sidwell <nathan@acm.org>
9172 Julian Brown <julian@codesourcery.com>
9173
9174 PR lto/71959
9175 * testsuite/libgomp.oacc-c++/pr71959-aux.cc: New.
9176 * testsuite/libgomp.oacc-c++/pr71959.C: New.
9177
cb87fec3
SH
91782019-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de>
9179
9180 * config/rtems/bar.c: Include "../linux/bar.c" and delete copy
9181 and paste code.
9182
30b4d0d0
SH
91832019-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de>
9184
9185 * config/rtems/affinity-fmt.c: New file. Include affinity-fmt.c,
9186 undefining HAVE_GETPID and HAVE_GETHOSTNAME, and mapping fwrite to
9187 write.
9188
5d0bc70a
TV
91892019-01-09 Tom de Vries <tdevries@suse.de>
9190
9191 PR target/88756
9192 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c (ng, nw, vl): Use
9193 #define instead of "const int".
9194 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c (ng, nw, vl): Same.
9195 * testsuite/libgomp.oacc-c-c++-common/reduction-3.c (ng, nw, vl): Same.
9196 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c (ng, nw, vl): Same.
9197 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c (ng, nw, vl): Same.
9198
2c372e81
TV
91992019-01-09 Tom de Vries <tdevries@suse.de>
9200
9201 * plugin/plugin-nvptx.c (nvptx_exec): Make sure to launch with at least
9202 one worker.
9203
43493c97
TV
92042019-01-07 Tom de Vries <tdevries@suse.de>
9205
9206 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-3.c: Fix
9207 GOMP_OPENACC_DIM argument.
9208
5c571497
TV
92092019-01-03 Tom de Vries <tdevries@suse.de>
9210
9211 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-1.c: New test.
9212 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-3.c: New test.
9213
a5544970
JJ
92142019-01-01 Jakub Jelinek <jakub@redhat.com>
9215
9216 Update copyright years.
9217
3f27508c
JJ
92182019-01-01 Jakub Jelinek <jakub@redhat.com>
9219
9220 * libgomp.texi: Bump @copying's copyright year.
9221
59d5960c
TS
92222018-12-28 Thomas Schwinge <thomas@codesourcery.com>
9223
9224 * oacc-parallel.c (GOACC_parallel_keyed, GOACC_parallel)
9225 (GOACC_data_start, GOACC_enter_exit_data, GOACC_update)
9226 (GOACC_declare): Redefine the "device" argument to "flags".
9227
a44c1790
TS
92282018-12-28 Thomas Schwinge <thomas@codesourcery.com>
9229 Cesar Philippidis <cesar@codesourcery.com>
9230
9231 * target.c (struct gomp_coalesce_chunk): New structure.
9232 (struct gomp_coalesce_buf): Update the chunks member to use that
9233 type. Adjust all users.
9234
a152954e
TV
92352018-12-19 Tom de Vries <tdevries@suse.de>
9236
9237 * testsuite/libgomp.oacc-c-c++-common/pr85381-2.c: New test.
9238 * testsuite/libgomp.oacc-c-c++-common/pr85381-3.c: New test.
9239 * testsuite/libgomp.oacc-c-c++-common/pr85381-4.c: New test.
9240
49188cd1
TV
92412018-12-19 Tom de Vries <tdevries@suse.de>
9242
9243 * testsuite/lib/libgomp.exp: Add load_lib of scanoffloadrtl.exp.
9244 * testsuite/libgomp.oacc-c-c++-common/nvptx-merged-loop.c: Move from
9245 gcc/testsuite/gcc.dg/goacc.
9246 * testsuite/libgomp.oacc-c-c++-common/nvptx-sese-1.c: Same.
9247
c759830b
TS
92482018-12-14 Thomas Schwinge <thomas@codesourcery.com>
9249 Chung-Lin Tang <cltang@codesourcery.com>
9250
9251 * oacc-mem.c (acc_present_or_create): Remove definition and change
9252 to alias of acc_create.
9253 (acc_present_or_copyin): Remove definition and change to alias of
9254 acc_copyin.
9255 * oacc-parallel.c (GOACC_enter_exit_data): Call acc_create instead
9256 of acc_present_or_create.
9257 * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Remove.
9258 * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
9259 * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise.
9260 * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise.
9261 * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise.
9262 * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise.
9263 * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise.
9264 * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
9265 * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
9266 * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
9267 * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise.
9268 * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise.
9269 * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise.
9270 * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise.
9271 * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise.
9272 * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
9273
7de562ee
TS
92742018-12-14 Thomas Schwinge <thomas@codesourcery.com>
9275
f847198e
TS
9276 PR libgomp/88495
9277 * plugin/plugin-nvptx.c (nvptx_wait_async): Don't refuse
9278 "identical parameters".
9279 * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c: Update.
9280 * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Remove.
9281
c8ab8aab
TS
9282 PR libgomp/88484
9283 * oacc-parallel.c (GOACC_wait): Correct handling for "async >= 0".
9284 * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c: New file.
9285
1404af62
TS
9286 PR libgomp/88407
9287 * plugin/plugin-nvptx.c (nvptx_async_test, nvptx_wait)
9288 (nvptx_wait_async): Unseen async-argument is a no-op.
9289 * testsuite/libgomp.oacc-c-c++-common/async_queue-1.c: Update.
9290 * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: Likewise.
9291 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Likewise.
9292 * testsuite/libgomp.oacc-c-c++-common/lib-79.c: Likewise.
9293 * testsuite/libgomp.oacc-fortran/lib-12.f90: Likewise.
9294 * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Merge into...
9295 * testsuite/libgomp.oacc-c-c++-common/lib-69.c: ... this. Update.
9296 * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Merge into...
9297 * testsuite/libgomp.oacc-c-c++-common/lib-74.c: ... this. Update
9298
7de562ee
TS
9299 * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: Revise.
9300 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Likewise.
9301
17469af7
CLT
93022018-12-14 Chung-Lin Tang <cltang@codesourcery.com>
9303
9304 * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: Adjust.
9305 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Likewise.
9306 * testsuite/libgomp.oacc-c-c++-common/data-3.c: Likewise.
9307
18c247cc
TS
93082018-12-14 Thomas Schwinge <thomas@codesourcery.com>
9309
9310 PR libgomp/88370
9311 * libgomp.texi (acc_get_current_cuda_context, acc_get_cuda_stream)
9312 (acc_set_cuda_stream): Clarify.
9313 * oacc-cuda.c (acc_get_cuda_stream, acc_set_cuda_stream): Use
9314 "async_valid_p".
9315 * plugin/plugin-nvptx.c (nvptx_set_cuda_stream): Refuse "async ==
9316 acc_async_sync".
9317 * testsuite/libgomp.oacc-c-c++-common/acc_set_cuda_stream-1.c: New file.
9318 * testsuite/libgomp.oacc-c-c++-common/async_queue-1.c: Likewise.
9319 * testsuite/libgomp.oacc-c-c++-common/lib-84.c: Update.
9320 * testsuite/libgomp.oacc-c-c++-common/lib-85.c: Likewise.
9321
b0aba46c
TV
93222018-12-14 Tom de Vries <tdevries@suse.de>
9323
9324 * testsuite/libgomp.c-c++-common/function-not-offloaded-aux.c: New test.
9325 * testsuite/libgomp.c-c++-common/function-not-offloaded.c: New test.
9326 * testsuite/libgomp.c-c++-common/variable-not-offloaded.c: New test.
9327 * testsuite/libgomp.oacc-c-c++-common/function-not-offloaded.c: New test.
9328 * testsuite/libgomp.oacc-c-c++-common/variable-not-offloaded.c: New test.
9329
fe0827ee
TV
93302018-12-13 Tom de Vries <tdevries@suse.de>
9331
9332 * affinity-fmt.c (gomp_print_string): New function, factored out of ...
9333 (omp_display_affinity, gomp_display_affinity_thread): ... here, and ...
9334 * fortran.c (omp_display_affinity_): ... here.
9335 * libgomp.h (gomp_print_string): Declare.
9336 * config/nvptx/affinity-fmt.c: New file. Include affinity-fmt.c,
9337 undefining HAVE_GETPID and HAVE_GETHOSTNAME, and mapping fwrite to
9338 write.
9339
a51f8c92
JJ
93402018-12-13 Jakub Jelinek <jakub@redhat.com>
9341
9342 PR libgomp/88460
9343 * testsuite/libgomp.c++/for-24.C (results): Include it in
9344 omp declare target region.
9345 (main): Use map (always, tofrom: results) instead of
9346 map (tofrom: results).
9347
a6ef2ac9
JJ
93482018-12-12 Jakub Jelinek <jakub@redhat.com>
9349
7a289b7d
JJ
9350 PR fortran/88463
9351 * testsuite/libgomp.fortran/pr88463-1.f90: New test.
9352 * testsuite/libgomp.fortran/pr88463-2.f90: New test.
9353
a6ef2ac9
JJ
9354 * testsuite/libgomp.c-c++-common/for-16.c: New test.
9355
9c47a019
AS
93562018-12-12 Andreas Schwab <schwab@suse.de>
9357
9358 * config/linux/ia64/futex.h (sys_futex0): Don't mark r12 as
9359 clobbered.
9360
d0cbb206
TK
93612018-12-09 Thomas Koenig <tkoenig@gcc.gnu.org>
9362
9363 PR fortran/88411
9364 * testsuite/libgomp.fortran/async_io_8.f90: New test.
9365
84ca08d2
TS
93662018-12-09 Thomas Schwinge <thomas@codesourcery.com>
9367 Jakub Jelinek <jakub@redhat.com>
9368
9369 * target.c (gomp_map_vars): Call gomp_copy_host2dev instead of
9370 devicep->host2dev_func.
9371
6997628d
JJ
93722018-12-08 Jakub Jelinek <jakub@redhat.com>
9373
9374 PR libgomp/87995
9375 * testsuite/libgomp.c-c++-common/cancel-taskgroup-3.c: Require
9376 tls_runtime effective target.
9377 (t): New threadprivate variable.
9378 (main): Set t in threads which execute iterations of the worksharing
9379 loop. Propagate that to the task after the loop and don't abort
9380 if the current taskgroup hasn't been cancelled.
9381
daa8c1d7
JJ
93822018-12-02 Jakub Jelinek <jakub@redhat.com>
9383
4a82df9a
JJ
9384 * testsuite/libgomp.c/task-reduction-3.c: New test.
9385
daa8c1d7
JJ
9386 * testsuite/libgomp.c-c++-common/cancel-taskgroup-4.c: New test.
9387
fe570ff8
CP
93882018-11-30 Cesar Philippidis <cesar@codesourcery.com>
9389
9390 PR libgomp/88288
9391 * oacc-parallel.c (GOACC_parallel_keyed): Add offset to devaddrs.
9392 * testsuite/libgomp.oacc-c-c++-common/pr88288.c: New test.
9393
c223608f
TS
93942018-11-30 Thomas Schwinge <thomas@codesourcery.com>
9395
9396 * testsuite/libgomp.oacc-fortran/lib-16-2.f90: New file.
9397
fc60283c
RB
93982018-10-19 Richard Biener <rguenther@suse.de>
9399
9400 PR tree-optimization/88182
9401 * testsuite/libgomp.c++/pr88182.C: Move to g++.dg/gomp.
9402
ffcf3b79
JJ
94032018-11-26 Jakub Jelinek <jakub@redhat.com>
9404
9405 * testsuite/Makefile.am (AUTOMAKE_OPTIONS): Drop dejagnu.
9406 (RUNTEST): Don't define.
9407 (RUNTESTDEFAULTFLAGS): Add.
9408 (check-DEJAGNU, site.exp, distclean-DEJAGNU): New goals.
9409 (distclean-am): Depend on distclean-DEJAGNU.
9410 (check-am): If -j% option is present in MFLAGS and if
9411 `getconf _NPROCESSORS_ONLN` is more than 8, export OMP_NUM_THREADS=8.
9412 (.PHONY): Add check-DEJAGNU and distclean-DEJAGNU.
9413 * testsuite/Makefile.in: Regenerated.
9414
ef6e6914
RB
94152018-11-26 Richard Biener <rguenther@suse.de>
9416
9417 PR tree-optimization/88182
9418 * testsuite/libgomp.c++/pr88182.C: New testcase.
9419
72d3bb76
JJ
94202018-11-20 Jakub Jelinek <jakub@redhat.com>
9421
9422 PR bootstrap/88106
9423 * config/mingw32/affinity-fmt.c: New file.
9424
207286c3
JJ
94252018-11-09 Jakub Jelinek <jakub@redhat.com>
9426
9666c522
JJ
9427 * affinity-fmt.c: Include inttypes.h if HAVE_INTTYPES_H.
9428 (gomp_display_affinity): Use __builtin_choose_expr to handle
9429 properly handle argument having integral, or pointer or some other
9430 type. If inttypes.h is available and PRIx64 is defined, use PRIx64
9431 with uint64_t type instead of %llx and unsigned long long.
9432
207286c3
JJ
9433 * testsuite/libgomp.c-c++-common/task-reduction-13.c: New test.
9434 * testsuite/libgomp.c-c++-common/task-reduction-14.c: New test.
9435
2033f45b
RO
94362018-11-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
9437
9438 * affinity.c: Include <string.h>, <stdio.h>.
9439 (gomp_display_affinity_place): Remove cpusetp.
9440 * teams.c: Include <limits.h>.
9441
28567c40
JJ
94422018-11-08 Jakub Jelinek <jakub@redhat.com>
9443
8991d779
JJ
9444 * testsuite/libgomp.c-c++-common/task-reduction-8.c (bar): Add
9445 in_reduction clause for s[0].
9446
28567c40
JJ
9447 * affinity.c (gomp_display_affinity_place): New function.
9448 * affinity-fmt.c: New file.
9449 * alloc.c (gomp_aligned_alloc, gomp_aligned_free): New functions.
9450 * config/linux/affinity.c (gomp_display_affinity_place): New function.
9451 * config/nvptx/icv-device.c (omp_get_num_teams, omp_get_team_num):
9452 Move these functions to ...
9453 * config/nvptx/teams.c: ... here. New file.
9454 * config/nvptx/target.c (omp_pause_resource, omp_pause_resource_all):
9455 New functions.
9456 * config/nvptx/team.c (gomp_team_start, gomp_pause_host): New
9457 functions.
9458 * configure.ac: Check for aligned_alloc, posix_memalign, memalign
9459 and _aligned_malloc.
9460 (HAVE_UNAME, HAVE_GETHOSTNAME, HAVE_GETPID): Add new tests.
9461 * configure.tgt: Add -DUSING_INITIAL_EXEC_TLS to XCFLAGS for Linux.
9462 * env.c (gomp_display_affinity_var, gomp_affinity_format_var,
9463 gomp_affinity_format_len): New variables.
9464 (parse_schedule): Parse monotonic and nonmonotonic modifiers in
9465 OMP_SCHEDULE variable. Set GFS_MONOTONIC for monotonic schedules.
9466 (handle_omp_display_env): Display monotonic/nonmonotonic schedule
9467 modifiers. Display (non-default) chunk sizes. Print
9468 OMP_DISPLAY_AFFINITY and OMP_AFFINITY_FORMAT.
9469 (initialize_env): Don't call pthread_attr_setdetachstate. Handle
9470 OMP_DISPLAY_AFFINITY and OMP_AFFINITY_FORMAT env vars.
9471 * fortran.c: Include stdio.h and string.h.
9472 (omp_pause_resource, omp_pause_resource_all): Add ialias_redirect.
9473 (omp_get_schedule_, omp_get_schedule_8_): Mask off GFS_MONOTONIC bit.
9474 (omp_set_affinity_format_, omp_get_affinity_format_,
9475 omp_display_affinity_, omp_capture_affinity_, omp_pause_resource_,
9476 omp_pause_resource_all_): New functions.
9477 * icv.c (omp_set_schedule): Mask off omp_sched_monotonic bit in
9478 switch.
9479 * icv-device.c (omp_get_num_teams, omp_get_team_num): Move these
9480 functions to ...
9481 * teams.c: ... here. New file.
9482 * libgomp_g.h: Include gstdint.h.
9483 (GOMP_loop_nonmonotonic_runtime_start,
9484 GOMP_loop_maybe_nonmonotonic_runtime_start, GOMP_loop_start,
9485 GOMP_loop_ordered_start, GOMP_loop_nonmonotonic_runtime_next,
9486 GOMP_loop_maybe_nonmonotonic_runtime_next, GOMP_loop_doacross_start,
9487 GOMP_parallel_loop_nonmonotonic_runtime,
9488 GOMP_parallel_loop_maybe_nonmonotonic_runtime,
9489 GOMP_loop_ull_nonmonotonic_runtime_start,
9490 GOMP_loop_ull_maybe_nonmonotonic_runtime_start, GOMP_loop_ull_start,
9491 GOMP_loop_ull_ordered_start, GOMP_loop_ull_nonmonotonic_runtime_next,
9492 GOMP_loop_ull_maybe_nonmonotonic_runtime_next,
9493 GOMP_loop_ull_doacross_start, GOMP_parallel_reductions,
9494 GOMP_taskwait_depend, GOMP_taskgroup_reduction_register,
9495 GOMP_taskgroup_reduction_unregister, GOMP_task_reduction_remap,
9496 GOMP_workshare_task_reduction_unregister, GOMP_sections2_start,
9497 GOMP_teams_reg): Declare.
9498 * libgomp.h (GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC): Define unless
9499 gomp_aligned_alloc uses fallback implementation.
9500 (gomp_aligned_alloc, gomp_aligned_free): Declare.
9501 (enum gomp_schedule_type): Add GFS_MONOTONIC.
9502 (struct gomp_doacross_work_share): Add extra field.
9503 (struct gomp_work_share): Add task_reductions field.
9504 (struct gomp_taskgroup): Add workshare and reductions fields.
9505 (GOMP_NEEDS_THREAD_HANDLE): Define if needed.
9506 (gomp_thread_handle): New typedef.
9507 (gomp_display_affinity_place, gomp_set_affinity_format,
9508 gomp_display_string, gomp_display_affinity,
9509 gomp_display_affinity_thread): Declare.
9510 (gomp_doacross_init, gomp_doacross_ull_init): Add size_t argument.
9511 (gomp_parallel_reduction_register, gomp_workshare_taskgroup_start,
9512 gomp_workshare_task_reduction_register): Declare.
9513 (gomp_team_start): Add taskgroup argument.
9514 (gomp_pause_host): Declare.
9515 (gomp_init_work_share, gomp_work_share_start): Change bool argument
9516 to size_t.
9517 (gomp_thread_self, gomp_thread_to_pthread_t): New inline functions.
9518 * libgomp.map (GOMP_5.0): Export GOMP_loop_start,
9519 GOMP_loop_ordered_start, GOMP_loop_doacross_start,
9520 GOMP_loop_ull_start, GOMP_loop_ull_ordered_start,
9521 GOMP_loop_ull_doacross_start,
9522 GOMP_workshare_task_reduction_unregister, GOMP_sections2_start,
9523 GOMP_loop_maybe_nonmonotonic_runtime_next,
9524 GOMP_loop_maybe_nonmonotonic_runtime_start,
9525 GOMP_loop_nonmonotonic_runtime_next,
9526 GOMP_loop_nonmonotonic_runtime_start,
9527 GOMP_loop_ull_maybe_nonmonotonic_runtime_next,
9528 GOMP_loop_ull_maybe_nonmonotonic_runtime_start,
9529 GOMP_loop_ull_nonmonotonic_runtime_next,
9530 GOMP_loop_ull_nonmonotonic_runtime_start,
9531 GOMP_parallel_loop_maybe_nonmonotonic_runtime,
9532 GOMP_parallel_loop_nonmonotonic_runtime, GOMP_parallel_reductions,
9533 GOMP_taskgroup_reduction_register,
9534 GOMP_taskgroup_reduction_unregister, GOMP_task_reduction_remap,
9535 GOMP_teams_reg and GOMP_taskwait_depend.
9536 (OMP_5.0): Export omp_pause_resource{,_all}{,_},
9537 omp_{capture,display}_affinity{,_}, and
9538 omp_[gs]et_affinity_format{,_}.
9539 * loop.c: Include string.h.
9540 (GOMP_loop_runtime_next): Add ialias.
9541 (GOMP_taskgroup_reduction_register): Add ialias_redirect.
9542 (gomp_loop_static_start, gomp_loop_dynamic_start,
9543 gomp_loop_guided_start, gomp_loop_ordered_static_start,
9544 gomp_loop_ordered_dynamic_start, gomp_loop_ordered_guided_start,
9545 gomp_loop_doacross_static_start, gomp_loop_doacross_dynamic_start,
9546 gomp_loop_doacross_guided_start): Adjust gomp_work_share_start
9547 or gomp_doacross_init callers.
9548 (gomp_adjust_sched, GOMP_loop_start, GOMP_loop_ordered_start,
9549 GOMP_loop_doacross_start): New functions.
9550 (GOMP_loop_runtime_start, GOMP_loop_ordered_runtime_start,
9551 GOMP_loop_doacross_runtime_start, GOMP_parallel_loop_runtime_start):
9552 Mask off GFS_MONOTONIC bit.
9553 (GOMP_loop_maybe_nonmonotonic_runtime_next,
9554 GOMP_loop_maybe_nonmonotonic_runtime_start,
9555 GOMP_loop_nonmonotonic_runtime_next,
9556 GOMP_loop_nonmonotonic_runtime_start,
9557 GOMP_parallel_loop_maybe_nonmonotonic_runtime,
9558 GOMP_parallel_loop_nonmonotonic_runtime): New aliases or wrapper
9559 functions.
9560 (gomp_parallel_loop_start): Pass NULL as taskgroup to
9561 gomp_team_start.
9562 * loop_ull.c: Include string.h.
9563 (GOMP_loop_ull_runtime_next): Add ialias.
9564 (GOMP_taskgroup_reduction_register): Add ialias_redirect.
9565 (gomp_loop_ull_static_start, gomp_loop_ull_dynamic_start,
9566 gomp_loop_ull_guided_start, gomp_loop_ull_ordered_static_start,
9567 gomp_loop_ull_ordered_dynamic_start,
9568 gomp_loop_ull_ordered_guided_start,
9569 gomp_loop_ull_doacross_static_start,
9570 gomp_loop_ull_doacross_dynamic_start,
9571 gomp_loop_ull_doacross_guided_start): Adjust gomp_work_share_start
9572 and gomp_doacross_ull_init callers.
9573 (gomp_adjust_sched, GOMP_loop_ull_start, GOMP_loop_ull_ordered_start,
9574 GOMP_loop_ull_doacross_start): New functions.
9575 (GOMP_loop_ull_runtime_start,
9576 GOMP_loop_ull_ordered_runtime_start,
9577 GOMP_loop_ull_doacross_runtime_start): Mask off GFS_MONOTONIC bit.
9578 (GOMP_loop_ull_maybe_nonmonotonic_runtime_next,
9579 GOMP_loop_ull_maybe_nonmonotonic_runtime_start,
9580 GOMP_loop_ull_nonmonotonic_runtime_next,
9581 GOMP_loop_ull_nonmonotonic_runtime_start): Likewise.
9582 * Makefile.am (libgomp_la_SOURCES): Add teams.c and affinity-fmt.c.
9583 * omp.h.in (enum omp_sched_t): Add omp_sched_monotonic.
9584 (omp_pause_resource_t, omp_depend_t): New typedefs.
9585 (enum omp_lock_hint_t): Renamed to ...
9586 (enum omp_sync_hint_t): ... this. Define omp_sync_hint_*
9587 enumerators using numbers and omp_lock_hint_* as their aliases.
9588 (omp_lock_hint_t): New typedef. Rename to ...
9589 (omp_sync_hint_t): ... this.
9590 (omp_init_lock_with_hint, omp_init_nest_lock_with_hint): Use
9591 omp_sync_hint_t instead of omp_lock_hint_t.
9592 (omp_pause_resource, omp_pause_resource_all, omp_set_affinity_format,
9593 omp_get_affinity_format, omp_display_affinity, omp_capture_affinity):
9594 Declare.
9595 (omp_target_is_present, omp_target_disassociate_ptr):
9596 Change first argument from void * to const void *.
9597 (omp_target_memcpy, omp_target_memcpy_rect): Change second argument
9598 from void * to const void *.
9599 (omp_target_associate_ptr): Change first and second arguments from
9600 void * to const void *.
9601 * omp_lib.f90.in (omp_pause_resource_kind, omp_pause_soft,
9602 omp_pause_hard): New parameters.
9603 (omp_pause_resource, omp_pause_resource_all, omp_set_affinity_format,
9604 omp_get_affinity_format, omp_display_affinity, omp_capture_affinity):
9605 New interfaces.
9606 * omp_lib.h.in (omp_pause_resource_kind, omp_pause_soft,
9607 omp_pause_hard): New parameters.
9608 (omp_pause_resource, omp_pause_resource_all, omp_set_affinity_format,
9609 omp_get_affinity_format, omp_display_affinity, omp_capture_affinity):
9610 New externals.
9611 * ordered.c (gomp_doacross_init, gomp_doacross_ull_init): Add
9612 EXTRA argument. If not needed to prepare array, if extra is 0,
9613 clear ws->doacross, otherwise allocate just doacross structure and
9614 extra payload. If array is needed, allocate also extra payload.
9615 (GOMP_doacross_post, GOMP_doacross_wait, GOMP_doacross_ull_post,
9616 GOMP_doacross_ull_wait): Handle doacross->array == NULL like
9617 doacross == NULL.
9618 * parallel.c (GOMP_parallel_start): Pass NULL as taskgroup to
9619 gomp_team_start.
9620 (GOMP_parallel): Likewise. Formatting fix.
9621 (GOMP_parallel_reductions): New function.
9622 (GOMP_cancellation_point): If taskgroup has workshare
9623 flag set, check cancelled of prev taskgroup if any.
9624 (GOMP_cancel): If taskgroup has workshare flag set, set cancelled
9625 on prev taskgroup if any.
9626 * sections.c: Include string.h.
9627 (GOMP_taskgroup_reduction_register): Add ialias_redirect.
9628 (GOMP_sections_start): Adjust gomp_work_share_start caller.
9629 (GOMP_sections2_start): New function.
9630 (GOMP_parallel_sections_start, GOMP_parallel_sections):
9631 Pass NULL as taskgroup to gomp_team_start.
9632 * single.c (GOMP_single_start, GOMP_single_copy_start): Adjust
9633 gomp_work_share_start callers.
9634 * target.c (GOMP_target_update_ext, GOMP_target_enter_exit_data):
9635 If taskgroup has workshare flag set, check cancelled on prev
9636 taskgroup if any. Guard all cancellation tests with
9637 gomp_cancel_var test.
9638 (omp_target_is_present, omp_target_disassociate_ptr):
9639 Change ptr argument from void * to const void *.
9640 (omp_target_memcpy): Change src argument from void * to const void *.
9641 (omp_target_memcpy_rect): Likewise.
9642 (omp_target_memcpy_rect_worker): Likewise. Use const char * casts
9643 instead of char * where needed.
9644 (omp_target_associate_ptr): Change host_ptr and device_ptr arguments
9645 from void * to const void *.
9646 (omp_pause_resource, omp_pause_resource_all): New functions.
9647 * task.c (gomp_task_handle_depend): Handle new depend array format
9648 in addition to the old. Handle mutexinoutset kinds the same as
9649 inout for now, handle unspecified kinds.
9650 (gomp_create_target_task): If taskgroup has workshare flag set, check
9651 cancelled on prev taskgroup if any. Guard all cancellation tests with
9652 gomp_cancel_var test. Handle new depend array format count in
9653 addition to the old.
9654 (GOMP_task): Likewise. Adjust function comment.
9655 (gomp_task_run_pre): If taskgroup has workshare flag set, check
9656 cancelled on prev taskgroup if any. Guard all cancellation tests with
9657 gomp_cancel_var test.
9658 (GOMP_taskwait_depend): New function.
9659 (gomp_task_maybe_wait_for_dependencies): Handle new depend array
9660 format in addition to the old. Handle mutexinoutset kinds the same as
9661 inout for now, handle unspecified kinds. Fix a function comment typo.
9662 (gomp_taskgroup_init): New function.
9663 (GOMP_taskgroup_start): Use it.
9664 (gomp_reduction_register, gomp_create_artificial_team,
9665 GOMP_taskgroup_reduction_register,
9666 GOMP_taskgroup_reduction_unregister, GOMP_task_reduction_remap,
9667 gomp_parallel_reduction_register,
9668 gomp_workshare_task_reduction_register,
9669 gomp_workshare_taskgroup_start,
9670 GOMP_workshare_task_reduction_unregister): New functions.
9671 * taskloop.c (GOMP_taskloop): If taskgroup has workshare flag set,
9672 check cancelled on prev taskgroup if any. Guard all cancellation
9673 tests with gomp_cancel_var test. Handle GOMP_TASK_FLAG_REDUCTION flag
9674 by calling GOMP_taskgroup_reduction_register.
9675 * team.c (gomp_thread_attr): Remove comment.
9676 (struct gomp_thread_start_data): Add handle field.
9677 (gomp_thread_start): Call pthread_detach.
9678 (gomp_new_team): Adjust gomp_init_work_share caller.
9679 (gomp_free_pool_helper): Call pthread_detach.
9680 (gomp_team_start): Add taskgroup argument, initialize implicit
9681 tasks' taskgroup field to that. Don't call
9682 pthread_attr_setdetachstate. Handle OMP_DISPLAY_AFFINITY env var.
9683 (gomp_team_end): Determine nesting by thr->ts.level != 0
9684 rather than thr->ts.team != NULL.
9685 (gomp_pause_pool_helper, gomp_pause_host): New functions.
9686 * work.c (alloc_work_share): Use gomp_aligned_alloc instead of
9687 gomp_malloc if GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC is defined.
9688 (gomp_init_work_share): Change ORDERED argument from bool to size_t,
9689 if more than 1 allocate also extra payload at the end of array. Never
9690 keep ordered_team_ids NULL, set it to inline_ordered_team_ids instead.
9691 (gomp_work_share_start): Change ORDERED argument from bool to size_t,
9692 return true instead of ws.
9693 * Makefile.in: Regenerated.
9694 * configure: Regenerated.
9695 * config.h.in: Regenerated.
9696 * testsuite/libgomp.c/cancel-for-2.c (foo): Use cancel modifier
9697 in some cases.
9698 * testsuite/libgomp.c-c++-common/cancel-parallel-1.c: New test.
9699 * testsuite/libgomp.c-c++-common/cancel-taskgroup-3.c: New test.
9700 * testsuite/libgomp.c-c++-common/depend-iterator-1.c: New test.
9701 * testsuite/libgomp.c-c++-common/depend-iterator-2.c: New test.
9702 * testsuite/libgomp.c-c++-common/depend-mutexinout-1.c: New test.
9703 * testsuite/libgomp.c-c++-common/depend-mutexinout-2.c: New test.
9704 * testsuite/libgomp.c-c++-common/depobj-1.c: New test.
9705 * testsuite/libgomp.c-c++-common/display-affinity-1.c: New test.
9706 * testsuite/libgomp.c-c++-common/for-10.c: New test.
9707 * testsuite/libgomp.c-c++-common/for-11.c: New test.
9708 * testsuite/libgomp.c-c++-common/for-12.c: New test.
9709 * testsuite/libgomp.c-c++-common/for-13.c: New test.
9710 * testsuite/libgomp.c-c++-common/for-14.c: New test.
9711 * testsuite/libgomp.c-c++-common/for-15.c: New test.
9712 * testsuite/libgomp.c-c++-common/for-2.h: If CONDNE macro is defined,
9713 define a different N(test), don't define N(f0) to N(f14), but instead
9714 define N(f20) to N(f34) using != comparisons.
9715 * testsuite/libgomp.c-c++-common/for-7.c: New test.
9716 * testsuite/libgomp.c-c++-common/for-8.c: New test.
9717 * testsuite/libgomp.c-c++-common/for-9.c: New test.
9718 * testsuite/libgomp.c-c++-common/master-combined-1.c: New test.
9719 * testsuite/libgomp.c-c++-common/pause-1.c: New test.
9720 * testsuite/libgomp.c-c++-common/pause-2.c: New test.
9721 * testsuite/libgomp.c-c++-common/pr66199-10.c: New test.
9722 * testsuite/libgomp.c-c++-common/pr66199-11.c: New test.
9723 * testsuite/libgomp.c-c++-common/pr66199-12.c: New test.
9724 * testsuite/libgomp.c-c++-common/pr66199-13.c: New test.
9725 * testsuite/libgomp.c-c++-common/pr66199-14.c: New test.
9726 * testsuite/libgomp.c-c++-common/simd-1.c: New test.
9727 * testsuite/libgomp.c-c++-common/taskloop-reduction-1.c: New test.
9728 * testsuite/libgomp.c-c++-common/taskloop-reduction-2.c: New test.
9729 * testsuite/libgomp.c-c++-common/taskloop-reduction-3.c: New test.
9730 * testsuite/libgomp.c-c++-common/taskloop-reduction-4.c: New test.
9731 * testsuite/libgomp.c-c++-common/task-reduction-11.c: New test.
9732 * testsuite/libgomp.c-c++-common/task-reduction-12.c: New test.
9733 * testsuite/libgomp.c-c++-common/task-reduction-1.c: New test.
9734 * testsuite/libgomp.c-c++-common/task-reduction-2.c: New test.
9735 * testsuite/libgomp.c-c++-common/task-reduction-3.c: New test.
9736 * testsuite/libgomp.c-c++-common/task-reduction-4.c: New test.
9737 * testsuite/libgomp.c-c++-common/task-reduction-5.c: New test.
9738 * testsuite/libgomp.c-c++-common/task-reduction-6.c: New test.
9739 * testsuite/libgomp.c-c++-common/task-reduction-7.c: New test.
9740 * testsuite/libgomp.c-c++-common/task-reduction-8.c: New test.
9741 * testsuite/libgomp.c-c++-common/task-reduction-9.c: New test.
9742 * testsuite/libgomp.c-c++-common/taskwait-depend-1.c: New test.
9743 * testsuite/libgomp.c++/depend-1.C: New test.
9744 * testsuite/libgomp.c++/depend-iterator-1.C: New test.
9745 * testsuite/libgomp.c++/depobj-1.C: New test.
9746 * testsuite/libgomp.c++/for-16.C: New test.
9747 * testsuite/libgomp.c++/for-21.C: New test.
9748 * testsuite/libgomp.c++/for-22.C: New test.
9749 * testsuite/libgomp.c++/for-23.C: New test.
9750 * testsuite/libgomp.c++/for-24.C: New test.
9751 * testsuite/libgomp.c++/for-25.C: New test.
9752 * testsuite/libgomp.c++/for-26.C: New test.
9753 * testsuite/libgomp.c++/taskloop-reduction-1.C: New test.
9754 * testsuite/libgomp.c++/taskloop-reduction-2.C: New test.
9755 * testsuite/libgomp.c++/taskloop-reduction-3.C: New test.
9756 * testsuite/libgomp.c++/taskloop-reduction-4.C: New test.
9757 * testsuite/libgomp.c++/task-reduction-10.C: New test.
9758 * testsuite/libgomp.c++/task-reduction-11.C: New test.
9759 * testsuite/libgomp.c++/task-reduction-12.C: New test.
9760 * testsuite/libgomp.c++/task-reduction-13.C: New test.
9761 * testsuite/libgomp.c++/task-reduction-14.C: New test.
9762 * testsuite/libgomp.c++/task-reduction-15.C: New test.
9763 * testsuite/libgomp.c++/task-reduction-16.C: New test.
9764 * testsuite/libgomp.c++/task-reduction-17.C: New test.
9765 * testsuite/libgomp.c++/task-reduction-18.C: New test.
9766 * testsuite/libgomp.c++/task-reduction-19.C: New test.
9767 * testsuite/libgomp.c/task-reduction-1.c: New test.
9768 * testsuite/libgomp.c++/task-reduction-1.C: New test.
9769 * testsuite/libgomp.c/task-reduction-2.c: New test.
9770 * testsuite/libgomp.c++/task-reduction-2.C: New test.
9771 * testsuite/libgomp.c++/task-reduction-3.C: New test.
9772 * testsuite/libgomp.c++/task-reduction-4.C: New test.
9773 * testsuite/libgomp.c++/task-reduction-5.C: New test.
9774 * testsuite/libgomp.c++/task-reduction-6.C: New test.
9775 * testsuite/libgomp.c++/task-reduction-7.C: New test.
9776 * testsuite/libgomp.c++/task-reduction-8.C: New test.
9777 * testsuite/libgomp.c++/task-reduction-9.C: New test.
9778 * testsuite/libgomp.c/teams-1.c: New test.
9779 * testsuite/libgomp.c/teams-2.c: New test.
9780 * testsuite/libgomp.c/thread-limit-4.c: New test.
9781 * testsuite/libgomp.c/thread-limit-5.c: New test.
9782 * testsuite/libgomp.fortran/display-affinity-1.f90: New test.
9783
58168bbf
CLT
97842018-11-06 Chung-Lin Tang <cltang@codesourcery.com>
9785
9786 * oacc-mem.c (memcpy_tofrom_device): New function, combined from
9787 acc_memcpy_to/from_device functions, now with async parameter.
9788 (acc_memcpy_to_device): Modify to use memcpy_tofrom_device.
9789 (acc_memcpy_from_device): Likewise.
9790 (acc_memcpy_to_device_async): New API function.
9791 (acc_memcpy_from_device_async): Likewise.
9792 (present_create_copy): Add async parameter and async setting/unsetting.
9793 (acc_create): Adjust present_create_copy call.
9794 (acc_copyin): Likewise.
9795 (acc_present_or_create): Likewise.
9796 (acc_present_or_copyin): Likewise.
9797 (acc_create_async): New API function.
9798 (acc_copyin_async): New API function.
9799 (delete_copyout): Add async parameter and async setting/unsetting.
9800 (acc_delete): Adjust delete_copyout call.
9801 (acc_copyout): Likewise.
9802 (acc_delete_async): New API function.
9803 (acc_copyout_async): Likewise.
9804 (update_dev_host): Add async parameter and async setting/unsetting.
9805 (acc_update_device): Adjust update_dev_host call.
9806 (acc_update_self): Likewise.
9807 (acc_update_device_async): New API function.
9808 (acc_update_self_async): Likewise.
9809 * openacc.h (acc_copyin_async): Declare new API function.
9810 (acc_create_async): Likewise.
9811 (acc_copyout_async): Likewise.
9812 (acc_delete_async): Likewise.
9813 (acc_update_device_async): Likewise.
9814 (acc_update_self_async): Likewise.
9815 (acc_memcpy_to_device_async): Likewise.
9816 (acc_memcpy_from_device_async): Likewise.
9817 * openacc_lib.h (acc_copyin_async_32_h): New subroutine.
9818 (acc_copyin_async_64_h): New subroutine.
9819 (acc_copyin_async_array_h): New subroutine.
9820 (acc_create_async_32_h): New subroutine.
9821 (acc_create_async_64_h): New subroutine.
9822 (acc_create_async_array_h): New subroutine.
9823 (acc_copyout_async_32_h): New subroutine.
9824 (acc_copyout_async_64_h): New subroutine.
9825 (acc_copyout_async_array_h): New subroutine.
9826 (acc_delete_async_32_h): New subroutine.
9827 (acc_delete_async_64_h): New subroutine.
9828 (acc_delete_async_array_h): New subroutine.
9829 (acc_update_device_async_32_h): New subroutine.
9830 (acc_update_device_async_64_h): New subroutine.
9831 (acc_update_device_async_array_h): New subroutine.
9832 (acc_update_self_async_32_h): New subroutine.
9833 (acc_update_self_async_64_h): New subroutine.
9834 (acc_update_self_async_array_h): New subroutine.
9835 * openacc.f90 (acc_copyin_async_32_h): New subroutine.
9836 (acc_copyin_async_64_h): New subroutine.
9837 (acc_copyin_async_array_h): New subroutine.
9838 (acc_create_async_32_h): New subroutine.
9839 (acc_create_async_64_h): New subroutine.
9840 (acc_create_async_array_h): New subroutine.
9841 (acc_copyout_async_32_h): New subroutine.
9842 (acc_copyout_async_64_h): New subroutine.
9843 (acc_copyout_async_array_h): New subroutine.
9844 (acc_delete_async_32_h): New subroutine.
9845 (acc_delete_async_64_h): New subroutine.
9846 (acc_delete_async_array_h): New subroutine.
9847 (acc_update_device_async_32_h): New subroutine.
9848 (acc_update_device_async_64_h): New subroutine.
9849 (acc_update_device_async_array_h): New subroutine.
9850 (acc_update_self_async_32_h): New subroutine.
9851 (acc_update_self_async_64_h): New subroutine.
9852 (acc_update_self_async_array_h): New subroutine.
9853 * libgomp.map (OACC_2.5): Add acc_copyin_async*, acc_copyout_async*,
9854 acc_copyout_finalize_async*, acc_create_async*, acc_delete_async*,
9855 acc_delete_finalize_async*, acc_memcpy_from_device_async*,
9856 acc_memcpy_to_device_async*, acc_update_device_async*, and
9857 acc_update_self_async* entries.
9858 * testsuite/libgomp.oacc-c-c++-common/lib-94.c: New test.
9859 * testsuite/libgomp.oacc-c-c++-common/lib-95.c: New test.
9860 * testsuite/libgomp.oacc-fortran/lib-16.f90: New test.
9861
22e05272
JM
98622018-10-31 Joseph Myers <joseph@codesourcery.com>
9863
9864 PR bootstrap/82856
9865 * Makefile.am: Include multilib.am
9866 (AUTOMAKE_OPTIONS): Add info-in-builddir.
9867 (CLEANFILES): Remove libgomp.info.
9868 * configure.ac: Remove AC_PREREQ.
9869 * testsuite/Makefile.am (RUNTEST): Remove quotes.
9870 * Makefile.in, aclocal.m4, configure, testsuite/Makefile.in:
9871 Regenerate.
9872
87a5ccfb
JM
98732018-10-29 Joseph Myers <joseph@codesourcery.com>
9874 Julian Brown <julian@codesourcery.com>
9875
9876 * testsuite/libgomp.oacc-c++/this.C: New.
9877
2049befd
CP
98782018-09-18 Cesar Philippidis <cesar@codesourcery.com>
9879
9880 * plugin/plugin-nvptx.c (struct cuda_map): New.
9881 (struct ptx_stream): Replace d, h, h_begin, h_end, h_next, h_prev,
9882 h_tail with (cuda_map *) map.
9883 (cuda_map_create): New function.
9884 (cuda_map_destroy): New function.
9885 (map_init): Update to use a linked list of cuda_map objects.
9886 (map_fini): Likewise.
9887 (map_pop): Likewise.
9888 (map_push): Likewise. Return CUdeviceptr instead of void.
9889 (init_streams_for_device): Remove stales references to ptx_stream
9890 members.
9891 (select_stream_for_async): Likewise.
9892 (nvptx_exec): Update call to map_init.
9893
8e36332c
CP
98942018-09-09 Cesar Philippidis <cesar@codesourcery.com>
9895 Julian Brown <julian@codesourcery.com>
9896
9897 PR middle-end/86336
9898 * testsuite/libgomp.oacc-c++/non-scalar-data.C: Remove XFAIL.
9899
2b4c9065
NK
99002018-08-21 Nicolas Koenig <koenigni@gcc.gnu.org>
9901 Thomas Koenig <tkoenig@gcc.gnu.org>
9902
9903 PR fortran/25829
9904 * testsuite/libgomp.fortran/async_io_1.f90: New test.
9905 * testsuite/libgomp.fortran/async_io_2.f90: New test.
9906 * testsuite/libgomp.fortran/async_io_3.f90: New test.
9907 * testsuite/libgomp.fortran/async_io_4.f90: New test.
9908 * testsuite/libgomp.fortran/async_io_5.f90: New test.
9909 * testsuite/libgomp.fortran/async_io_6.f90: New test.
9910 * testsuite/libgomp.fortran/async_io_7.f90: New test.
9911
bd9b3d3d
CP
99122018-08-13 Cesar Philippidis <cesar@codesourcery.com>
9913 Tom de Vries <tdevries@suse.de>
9914
9915 PR target/85590
9916 * plugin/cuda/cuda.h (CUoccupancyB2DSize): New typedef.
9917 (cuOccupancyMaxPotentialBlockSize): Declare.
9918 * plugin/cuda-lib.def (cuOccupancyMaxPotentialBlockSize): New
9919 CUDA_ONE_CALL_MAYBE_NULL.
9920 * plugin/plugin-nvptx.c (CUDA_VERSION < 6050): Define
9921 CUoccupancyB2DSize and declare
9922 cuOccupancyMaxPotentialBlockSize.
9923 (nvptx_exec): Use cuOccupancyMaxPotentialBlockSize to set the
9924 default num_gangs and num_workers when the driver supports it.
9925
8e09a12f
TV
99262018-08-08 Tom de Vries <tdevries@suse.de>
9927
9928 * plugin/cuda-lib.def (cuLinkAddData_v2, cuLinkCreate_v2): Declare using
9929 CUDA_ONE_CALL_MAYBE_NULL.
9930 * plugin/plugin-nvptx.c (cuLinkAddData, cuLinkCreate): Undef and declare.
9931 (cuLinkAddData_v2, cuLinkCreate_v2): Declare.
9932 (link_ptx): Fall back to cuLinkAddData/cuLinkCreate if the _v2 versions
9933 are not found.
9934
cedd9bd0
TV
99352018-08-08 Tom de Vries <tdevries@suse.de>
9936
9937 * plugin/cuda-lib.def (cuGetErrorString): Use CUDA_ONE_CALL_MAYBE_NULL.
9938 * plugin/plugin-nvptx.c (cuda_error): Handle if cuGetErrorString is not
9939 present.
9940
b113af95
TV
99412018-08-08 Tom de Vries <tdevries@suse.de>
9942
9943 * plugin/plugin-nvptx.c
9944 (CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_MULTIPROCESSOR): Define.
9945 (nvptx_open_device): Use
9946 CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_MULTIPROCESSOR.
9947
94767dac
TV
99482018-08-08 Tom de Vries <tdevries@suse.de>
9949
9950 * plugin/plugin-nvptx.c (cuda_error): Move declaration of cuGetErrorString ...
9951 (cuGetErrorString): ... here. Guard with CUDA_VERSION < 6000.
9952
02150de8
TV
99532018-08-07 Tom de Vries <tdevries@suse.de>
9954
9955 * plugin/plugin-nvptx.c (DO_PRAGMA): Define.
9956 (struct cuda_lib_s): Add def/undef of CUDA_ONE_CALL_MAYBE_NULL.
9957 (init_cuda_lib): Add new param to CUDA_ONE_CALL_1. Add arg to
9958 corresponding call in CUDA_ONE_CALL. Add def/undef of
9959 CUDA_ONE_CALL_MAYBE_NULL.
9960 (CUDA_CALL_EXISTS): Define.
9961
9e28b107
TV
99622018-08-07 Tom de Vries <tdevries@suse.de>
9963
9964 * plugin/plugin-nvptx.c (struct cuda_lib_s, init_cuda_lib): Put
9965 CUDA_ONE_CALL defines right before the cuda-lib.def include, and the
9966 corresponding undefs right after.
9967
09940090
TV
99682018-08-04 Tom de Vries <tdevries@suse.de>
9969
9970 * plugin/configfrag.ac: For --without-cuda-driver, set
9971 CUDA_DRIVER_INCLUDE and CUDA_DRIVER_LIB to no. Handle
9972 CUDA_DRIVER_INCLUDE == no and CUDA_DRIVER_LIB == no.
9973 * configure: Regenerate.
9974
77e0a97a
TV
99752018-08-02 Tom de Vries <tdevries@suse.de>
9976
9977 PR target/86660
9978 * testsuite/libgomp.oacc-c++/routine-1-auto.C: Remove -fno-exceptions.
9979 * testsuite/libgomp.oacc-c++/routine-1-template-auto.C: Same.
9980 * testsuite/libgomp.oacc-c++/routine-1-template-trailing-return-type.C:
9981 Same.
9982 * testsuite/libgomp.oacc-c++/routine-1-template.C: Same.
9983 * testsuite/libgomp.oacc-c++/routine-1-trailing-return-type.C: Same.
9984 * testsuite/libgomp.oacc-c-c++-common/routine-1.c: Same.
9985
701d080a
CP
99862018-08-01 Cesar Philippidis <cesar@codesourcery.com>
9987 Thomas Schwinge <thomas@codesourcery.com>
9988
9989 * config/nvptx/oacc-parallel.c: Truncate.
9990
094db6be
CP
99912018-08-01 Cesar Philippidis <cesar@codesourcery.com>
9992 James Norris <jnorris@codesourcery.com>
9993
9994 * plugin/plugin-nvptx.c (struct map): Removed.
701d080a
CP
9995 (map_init, map_pop): Remove use of struct map.
9996 (map_push): Likewise and change argument list.
094db6be
CP
9997 * testsuite/libgomp.oacc-c-c++-common/mapping-1.c: New
9998
8c6310a2
TV
99992018-08-01 Tom de Vries <tdevries@suse.de>
10000
10001 * plugin/cuda-lib.def: New file. Factor out of ...
10002 * plugin/plugin-nvptx.c (CUDA_CALLS): ... here.
10003 (struct cuda_lib_s, init_cuda_lib): Include cuda-lib.def instead of
10004 using CUDA_CALLS.
10005
1d4a51cf
AV
100062018-07-31 Andre Vieira <andre.simoesdiasvieira@arm.com>
10007
10008 Revert 'AsyncI/O patch committed'.
10009 2018-07-25 Nicolas Koenig <koenigni@gcc.gnu.org>
10010 Thomas Koenig <tkoenig@gcc.gnu.org>
10011
10012 PR fortran/25829
10013 * testsuite/libgomp.fortran/async_io_1.f90: New test.
10014 * testsuite/libgomp.fortran/async_io_2.f90: New test.
10015 * testsuite/libgomp.fortran/async_io_3.f90: New test.
10016 * testsuite/libgomp.fortran/async_io_4.f90: New test.
10017 * testsuite/libgomp.fortran/async_io_5.f90: New test.
10018 * testsuite/libgomp.fortran/async_io_6.f90: New test.
10019 * testsuite/libgomp.fortran/async_io_7.f90: New test.
10020
4cdfee3f
TV
100212018-07-30 Tom de Vries <tdevries@suse.de>
10022
10023 * plugin/plugin-nvptx.c (MIN, MAX): Redefine.
10024 (nvptx_exec): Ensure worker and vector default dims don't exceed
10025 targ_fn->max_threads_per_block.
10026
0b210c43
TV
100272018-07-30 Tom de Vries <tdevries@suse.de>
10028
10029 * plugin/plugin-nvptx.c (struct ptx_device): Add default_dims field.
10030 (nvptx_open_device): Init default_dims for device.
10031 (nvptx_exec): Use default_dims from device.
10032
5883c5cc
JJ
100332018-07-26 Jakub Jelinek <jakub@redhat.com>
10034
5d36384c
JJ
10035 PR testsuite/86660
10036 * testsuite/libgomp.c++/for-15.C (results): Include it in
10037 omp declare target region.
10038 (main): Use map (always, tofrom: results) instead of
10039 map (tofrom: results).
10040
5883c5cc
JJ
10041 PR middle-end/86660
10042 * testsuite/libgomp.c/pr86660.c: New test.
10043
88a4654d
CP
100442018-07-26 Cesar Philippidis <cesar@codesourcery.com>
10045 Tom de Vries <tdevries@suse.de>
10046
10047 * plugin/plugin-nvptx.c (nvptx_exec): Error if the hardware doesn't have
10048 sufficient resources to launch a kernel, and give a hint on how to fix
10049 it.
10050
0c6c2f5f
CP
100512018-07-26 Cesar Philippidis <cesar@codesourcery.com>
10052 Tom de Vries <tdevries@suse.de>
10053
10054 * plugin/plugin-nvptx.c (struct ptx_device): Add warp_size,
10055 max_threads_per_block and max_threads_per_multiprocessor fields.
10056 (nvptx_open_device): Initialize new fields.
10057 (nvptx_exec): Use num_sms, and new fields.
10058
6dd58010
TV
100592018-07-26 Tom de Vries <tdevries@suse.de>
10060
10061 * testsuite/libgomp.oacc-fortran/lib-12.f90: Move acc_async_test calls
10062 to correct locations. Remove xfail.
10063
b2eb1779
TV
100642018-07-26 Tom de Vries <tdevries@suse.de>
10065
10066 * testsuite/libgomp.oacc-fortran/lib-13.f90: Replace acc_wait_all with
10067 acc_wait. Move acc_async_test calls to correct locations. Remove
10068 xfail.
10069
b1f45884
NK
100702018-07-25 Nicolas Koenig <koenigni@gcc.gnu.org>
10071 Thomas Koenig <tkoenig@gcc.gnu.org>
10072
10073 PR fortran/25829
10074 * testsuite/libgomp.fortran/async_io_1.f90: New test.
10075 * testsuite/libgomp.fortran/async_io_2.f90: New test.
10076 * testsuite/libgomp.fortran/async_io_3.f90: New test.
10077 * testsuite/libgomp.fortran/async_io_4.f90: New test.
10078 * testsuite/libgomp.fortran/async_io_5.f90: New test.
10079 * testsuite/libgomp.fortran/async_io_6.f90: New test.
10080 * testsuite/libgomp.fortran/async_io_7.f90: New test.
10081
3a106211
JJ
100822018-07-17 Jakub Jelinek <jakub@redhat.com>
10083
a3bccfa1
JJ
10084 PR middle-end/86542
10085 * testsuite/libgomp.c++/pr86542.C: New test.
10086
3a106211
JJ
10087 PR middle-end/86539
10088 * testsuite/libgomp.c++/pr86539.C: New test.
10089
2bae8b2f
JJ
100902018-07-11 Jakub Jelinek <jakub@redhat.com>
10091
10092 PR c++/86443
10093 * testsuite/libgomp.c++/for-15.C (a): Remove unused variable.
10094 (results): Make sure the variable is not inside declare target region.
10095 (qux): Remove unused function.
10096
0b27c3ed
JJ
100972018-07-10 Jakub Jelinek <jakub@redhat.com>
10098
10099 PR c++/86443
10100 * testsuite/libgomp.c++/for-15.C: New test.
10101
f0391511
JJ
101022018-06-26 Jakub Jelinek <jakub@redhat.com>
10103
10104 PR c++/86291
10105 * testsuite/libgomp.c++/pr86291.C: New test.
10106
1a6d1d24
GP
101072018-06-24 Gerald Pfeifer <gerald@pfeifer.com>
10108
10109 * libgomp.texi (Top): Move www.openmp.org to https.
10110 (Enabling OpenMP): Ditto.
10111 (omp_get_active_level): Ditto.
10112 (omp_get_ancestor_thread_num): Ditto.
10113 (omp_get_cancellation): Ditto.
10114 (omp_get_default_device): Ditto.
10115 (omp_get_dynamic): Ditto.
10116 (omp_get_level): Ditto.
10117 (omp_get_max_active_levels): Ditto.
10118 (omp_get_max_task_priority): Ditto.
10119 (omp_get_max_threads): Ditto.
10120 (omp_get_nested): Ditto.
10121 (omp_get_num_devices): Ditto.
10122 (omp_get_num_procs): Ditto.
10123 (omp_get_num_teams): Ditto.
10124 (omp_get_num_threads): Ditto.
10125 (omp_get_proc_bind): Ditto.
10126 (omp_get_schedule): Ditto.
10127 (omp_get_team_num): Ditto.
10128 (omp_get_team_size): Ditto.
10129 (omp_get_thread_limit): Ditto.
10130 (omp_get_thread_num): Ditto.
10131 (omp_in_parallel): Ditto.
10132 (omp_in_final): Ditto.
10133 (omp_is_initial_device): Ditto.
10134 (omp_set_default_device): Ditto.
10135 (omp_set_dynamic): Ditto.
10136 (omp_set_max_active_levels): Ditto.
10137 (omp_set_nested): Ditto.
10138 (omp_set_num_threads): Ditto.
10139 (omp_set_schedule): Ditto.
10140 (omp_init_lock): Ditto.
10141 (omp_set_lock): Ditto.
10142 (omp_test_lock): Ditto.
10143 (omp_unset_lock): Ditto.
10144 (omp_destroy_lock): Ditto.
10145 (omp_init_nest_lock): Ditto.
10146 (omp_set_nest_lock): Ditto.
10147 (omp_test_nest_lock): Ditto.
10148 (omp_unset_nest_lock): Ditto.
10149 (omp_destroy_nest_lock): Ditto.
10150 (omp_get_wtick): Ditto.
10151 (omp_get_wtime): Ditto.
10152 (OMP_CANCELLATION): Ditto.
10153 (OMP_DISPLAY_ENV): Ditto.
10154 (OMP_DEFAULT_DEVICE): Ditto.
10155 (OMP_DYNAMIC): Ditto.
10156 (OMP_MAX_ACTIVE_LEVELS): Ditto.
10157 (OMP_MAX_TASK_PRIORITY): Ditto.
10158 (OMP_NESTED): Ditto.
10159 (OMP_NUM_THREADS): Ditto.
10160 (OMP_PROC_BIND): Ditto.
10161 (OMP_PLACES): Ditto.
10162 (OMP_STACKSIZE): Ditto.
10163 (OMP_SCHEDULE): Ditto.
10164 (OMP_THREAD_LIMIT): Ditto.
10165 (OMP_WAIT_POLICY): Ditto.
10166
31dd69b7
CP
101672018-06-22 Cesar Philippidis <cesar@codesourcery.com>
10168 James Norris <jnorris@codesourcery.com>
10169 Julian Brown <julian@codesourcery.com>
10170 Thomas Schwinge <thomas@codesourcery.com>
10171 Tom de Vries <tom@codesourcery.com>
10172
10173 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Don't force "-O2".
10174 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Update.
10175 * testsuite/libgomp.oacc-c-c++-common/host_data-1.c: Likewise.
10176 * testsuite/libgomp.oacc-c-c++-common/mode-transitions.c: Likewise.
10177 * testsuite/libgomp.oacc-fortran/data-1.f90: Likewise.
10178 * testsuite/libgomp.oacc-fortran/data-2.f90: Likewise.
10179 * testsuite/libgomp.oacc-c++/non-scalar-data.C: New file.
10180 * testsuite/libgomp.oacc-c-c++-common/declare-3.c: Likewise.
10181 * testsuite/libgomp.oacc-c-c++-common/enter-data.c: Likewise.
10182 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-2.c:
10183 Likewise.
10184 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit-2.c:
10185 Likewise.
10186 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit.c:
10187 Likewise.
10188 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-update.c:
10189 Likewise.
10190 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data.c:
10191 Likewise.
10192 * testsuite/libgomp.oacc-c-c++-common/kernels-parallel-loop-data-enter-exit.c:
10193 Likewise.
10194 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
10195 Likewise.
10196 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
10197 Likewise.
10198 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
10199 Likewise.
10200 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
10201 Likewise.
10202 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
10203 Likewise.
10204 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-1.c:
10205 Likewise.
10206 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-2.c:
10207 Likewise.
10208 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-3.c:
10209 Likewise.
10210 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-4.c:
10211 Likewise.
10212 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-5.c:
10213 Likewise.
10214 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-6.c:
10215 Likewise.
10216 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
10217 Likewise.
10218 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
10219 Likewise.
10220 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-1.c:
10221 Likewise.
10222 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
10223 Likewise.
10224 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
10225 Likewise.
10226 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
10227 Likewise.
10228 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
10229 Likewise.
10230 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
10231 Likewise.
10232 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
10233 Likewise.
10234 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction-1.c:
10235 Likewise.
10236 * testsuite/libgomp.oacc-c-c++-common/parallel-loop-1.c: Likewise.
10237 * testsuite/libgomp.oacc-c-c++-common/parallel-loop-1.h: Likewise.
10238 * testsuite/libgomp.oacc-c-c++-common/parallel-loop-2.h: Likewise.
10239 * testsuite/libgomp.oacc-fortran/cublas-fixed.h: Likewise.
10240 * testsuite/libgomp.oacc-fortran/dummy-array.f90: Likewise.
10241 * testsuite/libgomp.oacc-fortran/host_data-2.f90: Likewise.
10242 * testsuite/libgomp.oacc-fortran/host_data-3.f: Likewise.
10243 * testsuite/libgomp.oacc-fortran/host_data-4.f90: Likewise.
10244 * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction-2.f90:
10245 Likewise.
10246 * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction.f90:
10247 Likewise.
10248 * testsuite/libgomp.oacc-fortran/kernels-collapse-3.f90: Likewise.
10249 * testsuite/libgomp.oacc-fortran/kernels-collapse-4.f90: Likewise.
10250 * testsuite/libgomp.oacc-fortran/kernels-independent.f90:
10251 Likewise.
10252 * testsuite/libgomp.oacc-fortran/kernels-loop-1.f90: Likewise.
10253 * testsuite/libgomp.oacc-fortran/kernels-map-1.f90: Likewise.
10254 * testsuite/libgomp.oacc-fortran/kernels-parallel-loop-data-enter-exit.f95:
10255 Likewise.
10256 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
10257 Likewise.
10258 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
10259 Likewise.
10260 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
10261 Likewise.
10262 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
10263 Likewise.
10264 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-1.f90:
10265 Likewise.
10266 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-2.f90:
10267 Likewise.
10268 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-1.f90:
10269 Likewise.
10270 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-2.f90:
10271 Likewise.
10272 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-3.f90:
10273 Likewise.
10274 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-4.f90:
10275 Likewise.
10276 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-5.f90:
10277 Likewise.
10278 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-6.f90:
10279 Likewise.
10280 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-7.f90:
10281 Likewise.
10282 * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90:
10283 Likewise.
10284 * testsuite/libgomp.oacc-fortran/lib-12.f90: Likewise.
10285 * testsuite/libgomp.oacc-fortran/lib-13.f90: Likewise.
10286 * testsuite/libgomp.oacc-fortran/lib-14.f90: Likewise.
10287 * testsuite/libgomp.oacc-fortran/lib-15.f90: Likewise.
10288 * testsuite/libgomp.oacc-fortran/parallel-loop-1.f90: Likewise.
10289 * testsuite/libgomp.oacc-fortran/reference-reductions.f90: Likewise.
10290 * testsuite/libgomp.oacc-fortran/vector-routine.f90: Likewise.
10291
829c6349
CLT
102922018-06-20 Chung-Lin Tang <cltang@codesourcery.com>
10293 Thomas Schwinge <thomas@codesourcery.com>
10294 Cesar Philippidis <cesar@codesourcery.com>
10295
10296 * libgomp.h (struct splay_tree_key_s): Add dynamic_refcount member.
10297 (gomp_acc_remove_pointer): Update declaration.
10298 (gomp_acc_declare_allocate): Declare.
10299 (gomp_remove_var): Declare.
10300 * libgomp.map (OACC_2.5): Define.
10301 * oacc-mem.c (acc_map_data): Update refcount.
10302 (acc_unmap_data): Likewise.
10303 (present_create_copy): Likewise.
10304 (acc_create): Add FLAG_PRESENT when calling present_create_copy.
10305 (acc_copyin): Likewise.
10306 (FLAG_FINALIZE): Define.
10307 (delete_copyout): Update dynamic refcounts, add support for FINALIZE.
10308 (acc_delete_finalize): New function.
10309 (acc_delete_finalize_async): New function.
10310 (acc_copyout_finalize): New function.
10311 (acc_copyout_finalize_async): New function.
10312 (gomp_acc_insert_pointer): Update refcounts.
10313 (gomp_acc_remove_pointer): Return if data is not present on the
10314 accelerator.
10315 * oacc-parallel.c (find_pset): Rename to find_pointer.
10316 (find_pointer): Add support for GOMP_MAP_POINTER.
10317 (handle_ftn_pointers): New function.
10318 (GOACC_parallel_keyed): Update refcounts of variables.
10319 (GOACC_enter_exit_data): Add support for finalized data mappings.
10320 Add support for GOMP_MAP_{TO,ALLOC,RELESE,FROM}. Update handling
10321 of fortran arrays.
10322 (GOACC_update): Add support for GOMP_MAP_{ALWAYS_POINTER,TO,FROM}.
10323 (GOACC_declare): Add support for GOMP_MAP_RELEASE, remove support
10324 for GOMP_MAP_FORCE_FROM.
10325 * openacc.f90 (module openacc_internal): Add
10326 acc_copyout_finalize_{32_h,64_h,array_h,_l}, and
10327 acc_delete_finalize_{32_h,64_h,array_h,_l}. Add interfaces for
10328 acc_copyout_finalize and acc_delete_finalize.
10329 (acc_copyout_finalize_32_h): New subroutine.
10330 (acc_copyout_finalize_64_h): New subroutine.
10331 (acc_copyout_finalize_array_h): New subroutine.
10332 (acc_delete_finalize_32_h): New subroutine.
10333 (acc_delete_finalize_64_h): New subroutine.
10334 (acc_delete_finalize_array_h): New subroutine.
10335 * openacc.h (acc_copyout_finalize): Declare.
10336 (acc_copyout_finalize_async): Declare.
10337 (acc_delete_finalize): Declare.
10338 (acc_delete_finalize_async): Declare.
10339 * openacc_lib.h (acc_copyout_finalize): New interface.
10340 (acc_delete_finalize): New interface.
10341 * target.c (gomp_map_vars): Update dynamic_refcount.
10342 (gomp_remove_var): New function.
10343 (gomp_unmap_vars): Use it.
10344 (gomp_unload_image_from_device): Likewise.
10345 * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Update test
10346 case to utilize OpenACC 2.5 data clause semantics.
10347 * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
10348 * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise.
10349 * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise.
10350 * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise.
10351 * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise.
10352 * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise.
10353 * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
10354 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
10355 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
10356 * testsuite/libgomp.oacc-c-c++-common/lib-32.c: Likewise.
10357 * testsuite/libgomp.oacc-c-c++-common/lib-83.c: Likewise.
10358 * testsuite/libgomp.oacc-fortran/data-5.f90: New test.
10359 * testsuite/libgomp.oacc-fortran/data-already-1.f: Update test case to
10360 utilize OpenACC 2.5 data clause semantics.
10361 * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
10362 * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise.
10363 * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise.
10364 * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise.
10365 * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise.
10366 * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise.
10367 * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
10368 * testsuite/libgomp.oacc-fortran/lib-32-1.f: Likewise.
10369 * testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
10370
4358400b
JW
103712018-05-21 Janus Weil <janus@gcc.gnu.org>
10372
10373 PR fortran/85841
10374 PR testsuite/85865
10375 * testsuite/libgomp.fortran/collapse2.f90: Add option "-std=legacy".
10376 * testsuite/libgomp.fortran/omp_atomic2.f90: Ditto.
10377 * testsuite/libgomp.fortran/omp_parse1.f90: Ditto.
10378 * testsuite/libgomp.fortran/omp_parse3.f90: Ditto.
10379 * testsuite/libgomp.fortran/task2.f90: Ditto.
10380 * testsuite/libgomp.fortran/vla1.f90: Ditto.
10381 * testsuite/libgomp.fortran/vla2.f90: Ditto.
10382 * testsuite/libgomp.fortran/vla3.f90: Ditto.
10383 * testsuite/libgomp.fortran/vla4.f90: Ditto.
10384 * testsuite/libgomp.fortran/vla5.f90: Ditto.
10385 * testsuite/libgomp.fortran/vla6.f90: Ditto.
10386 * testsuite/libgomp.fortran/vla8.f90: Ditto.
10387 * testsuite/libgomp.oacc-fortran/collapse-2.f90: Ditto.
10388 * testsuite/libgomp.oacc-fortran/nested-function-1.f90: Ditto.
10389
950ad0ba
CP
103902018-05-18 Cesar Philippidis <cesar@codesourcery.com>
10391
10392 PR c++/85782
10393 * testsuite/libgomp.oacc-c-c++-common/pr85782.c: New test.
10394
f5ad16f1
TV
103952018-05-09 Tom de Vries <tom@codesourcery.com>
10396
10397 PR libgomp/82901
10398 * oacc-parallel.c (GOACC_declare): Use GOMP_ASYNC_SYNC as async argument
10399 to GOACC_enter_exit_data.
10400
edbd038a
TV
104012018-05-09 Tom de Vries <tom@codesourcery.com>
10402
10403 PR libgomp/83792
10404 * oacc-int.h (async_valid_stream_id_p, async_valid_p)
10405 (async_synchronous_p): New function.
10406 * oacc-async.c (acc_async_test, acc_wait, acc_wait_all_async): Use
10407 async_valid_p.
10408 * oacc-cuda.c (acc_get_cuda_stream, acc_set_cuda_stream): Use
10409 async_valid_stream_id_p.
10410 * oacc-mem.c (gomp_acc_remove_pointer): Use async_synchronous_p.
10411 * oacc-parallel.c (GOACC_parallel_keyed): Same.
10412
37d6c719
TV
104132018-05-07 Tom de Vries <tom@codesourcery.com>
10414
10415 PR testsuite/85677
10416 * testsuite/lib/libgomp.exp (libgomp_init): Move inclusion of top-level
10417 include directory in ALWAYS_CFLAGS out of $blddir != "" condition.
10418
63f12215
TV
104192018-05-03 Tom de Vries <tom@codesourcery.com>
10420
10421 PR testsuite/85106
10422 * testsuite/lib/libgomp-dg.exp (libgomp-dg-test): Add save-temps to
10423 extra_tool_flags if it contains an -foffload=-fdump-* flag.
10424 * testsuite/lib/libgomp.exp: Include scanoffloadtree.exp.
10425 * testsuite/libgomp.oacc-c/vec.c: Use scan-offload-tree-dump.
10426
ec00d3fa
TV
104272018-05-02 Tom de Vries <tom@codesourcery.com>
10428
10429 PR libgomp/85411
10430 * plugin/plugin-nvptx.c (nvptx_exec): Move parsing of
10431 GOMP_OPENACC_DIM ...
10432 * env.c (parse_gomp_openacc_dim): ... here. New function.
10433 (initialize_env): Call parse_gomp_openacc_dim.
10434 (goacc_default_dims): Define.
10435 * libgomp.h (goacc_default_dims): Declare.
10436 * oacc-plugin.c (GOMP_PLUGIN_acc_default_dim): New function.
10437 * oacc-plugin.h (GOMP_PLUGIN_acc_default_dim): Declare.
10438 * libgomp.map: New version "GOMP_PLUGIN_1.2". Add
10439 GOMP_PLUGIN_acc_default_dim.
10440 * testsuite/libgomp.oacc-c-c++-common/loop-default-runtime.c: New test.
10441 * testsuite/libgomp.oacc-c-c++-common/loop-default.h: New test.
10442
92243e7c
TV
104432018-05-02 Tom de Vries <tom@codesourcery.com>
10444
10445 PR testsuite/83791
10446 * testsuite/libgomp.c++/udr-9.C: Update.
10447 * testsuite/libgomp.c++/atomic-16.C: Remove.
10448 * testsuite/libgomp.c++/cancel-taskgroup-2.C: Remove.
10449 * testsuite/libgomp.c++/loop-13.C: Remove.
10450 * testsuite/libgomp.c++/loop-14.C: Remove.
10451 * testsuite/libgomp.c++/loop-15.C: Remove.
10452 * testsuite/libgomp.c++/monotonic-1.C: Remove.
10453 * testsuite/libgomp.c++/monotonic-2.C: Remove.
10454 * testsuite/libgomp.c++/nonmonotonic-1.C: Remove.
10455 * testsuite/libgomp.c++/nonmonotonic-2.C: Remove.
10456 * testsuite/libgomp.c++/ordered-1.C: Remove.
10457 * testsuite/libgomp.c++/pr45784.C: Remove.
10458 * testsuite/libgomp.c++/pr64824.C: Remove.
10459 * testsuite/libgomp.c++/pr64868.C: Remove.
10460 * testsuite/libgomp.c++/pr66199-1.C: Remove.
10461 * testsuite/libgomp.c++/pr66199-2.C: Remove.
10462 * testsuite/libgomp.c++/pr66199-3.C: Remove.
10463 * testsuite/libgomp.c++/pr66199-4.C: Remove.
10464 * testsuite/libgomp.c++/pr66199-5.C: Remove.
10465 * testsuite/libgomp.c++/pr66199-6.C: Remove.
10466 * testsuite/libgomp.c++/pr66199-7.C: Remove.
10467 * testsuite/libgomp.c++/pr66199-8.C: Remove.
10468 * testsuite/libgomp.c++/pr66199-9.C: Remove.
10469 * testsuite/libgomp.c++/pr69389.C: Remove.
10470 * testsuite/libgomp.c++/simd10.C: Remove.
10471 * testsuite/libgomp.c++/simd11.C: Remove.
10472 * testsuite/libgomp.c++/simd12.C: Remove.
10473 * testsuite/libgomp.c++/simd13.C: Remove.
10474 * testsuite/libgomp.c++/target-1.C: Remove.
10475 * testsuite/libgomp.c++/target-3.C: Remove.
10476 * testsuite/libgomp.c++/target-4.C: Remove.
10477 * testsuite/libgomp.c++/target-5.C: Remove.
10478 * testsuite/libgomp.c++/taskgroup-1.C: Remove.
10479 * testsuite/libgomp.c++/taskloop-1.C: Remove.
10480 * testsuite/libgomp.c++/taskloop-2.C: Remove.
10481 * testsuite/libgomp.c++/taskloop-3.C: Remove.
10482 * testsuite/libgomp.c++/taskloop-4.C: Remove.
10483 * testsuite/libgomp.c++/udr-9.C: Remove.
10484 * testsuite/libgomp.c++/for-10.C: Remove.
10485 * testsuite/libgomp.c++/for-11.C: Remove.
10486 * testsuite/libgomp.c++/for-12.C: Remove.
10487 * testsuite/libgomp.c++/for-13.C: Remove.
10488 * testsuite/libgomp.c++/for-14.C: Remove.
10489 * testsuite/libgomp.c++/for-9.C: Remove.
10490 * testsuite/libgomp.c/atomic-18.c: Move ...
10491 * testsuite/libgomp.c-c++-common/atomic-18.c: ... here.
10492 * testsuite/libgomp.c/cancel-taskgroup-2.c: Move ...
10493 * testsuite/libgomp.c-c++-common/cancel-taskgroup-2.c: here.
10494 * testsuite/libgomp.c/loop-13.c: Move ...
10495 * testsuite/libgomp.c-c++-common/loop-13.c: ... here.
10496 * testsuite/libgomp.c/loop-14.c: Move ...
10497 * testsuite/libgomp.c-c++-common/loop-14.c: ... here.
10498 * testsuite/libgomp.c/loop-15.c: Remove.
10499 * testsuite/libgomp.c-c++-common/loop-15.c: New test.
10500 * testsuite/libgomp.c/monotonic-1.c: Move ...
10501 * testsuite/libgomp.c-c++-common/monotonic-1.c: ... here.
10502 * testsuite/libgomp.c/monotonic-2.c: Move ...
10503 * testsuite/libgomp.c-c++-common/monotonic-2.c: ... here.
10504 * testsuite/libgomp.c/nonmonotonic-1.c: Move ...
10505 * testsuite/libgomp.c-c++-common/nonmonotonic-1.c: ... here.
10506 * testsuite/libgomp.c/nonmonotonic-2.c: Move ...
10507 * testsuite/libgomp.c-c++-common/nonmonotonic-2.c: ... here.
10508 * testsuite/libgomp.c/ordered-4.c: Move ...
10509 * testsuite/libgomp.c-c++-common/ordered-4.c: ... here.
10510 * testsuite/libgomp.c/pr45784.c: Move ...
10511 * testsuite/libgomp.c-c++-common/pr45784.c: ... here.
10512 * testsuite/libgomp.c/pr64824.c: Move ...
10513 * testsuite/libgomp.c-c++-common/pr64824.c: ... here.
10514 * testsuite/libgomp.c/pr64868.c: Move ...
10515 * testsuite/libgomp.c-c++-common/pr64868.c: ... here.
10516 * testsuite/libgomp.c/pr66199-1.c: Move ...
10517 * testsuite/libgomp.c-c++-common/pr66199-1.c: ... here.
10518 * testsuite/libgomp.c/pr66199-2.c: Move ...
10519 * testsuite/libgomp.c-c++-common/pr66199-2.c: ... here.
10520 * testsuite/libgomp.c/pr66199-3.c: Move ...
10521 * testsuite/libgomp.c-c++-common/pr66199-3.c: ... here.
10522 * testsuite/libgomp.c/pr66199-4.c: Move ...
10523 * testsuite/libgomp.c-c++-common/pr66199-4.c: ... here.
10524 * testsuite/libgomp.c/pr66199-5.c: Move ...
10525 * testsuite/libgomp.c-c++-common/pr66199-5.c: ... here.
10526 * testsuite/libgomp.c/pr66199-6.c: Move ...
10527 * testsuite/libgomp.c-c++-common/pr66199-6.c: ... here.
10528 * testsuite/libgomp.c/pr66199-7.c: Move ...
10529 * testsuite/libgomp.c-c++-common/pr66199-7.c: ... here.
10530 * testsuite/libgomp.c/pr66199-8.c: Move ...
10531 * testsuite/libgomp.c-c++-common/pr66199-8.c: ... here.
10532 * testsuite/libgomp.c/pr66199-9.c: Move ...
10533 * testsuite/libgomp.c-c++-common/pr66199-9.c: ... here.
10534 * testsuite/libgomp.c/pr69389.c: Move ...
10535 * testsuite/libgomp.c-c++-common/pr69389.c: ... here.
10536 * testsuite/libgomp.c/simd-14.c: Move ...
10537 * testsuite/libgomp.c-c++-common/simd-14.c: ... here.
10538 * testsuite/libgomp.c/simd-15.c: Move ...
10539 * testsuite/libgomp.c-c++-common/simd-15.c: ... here.
10540 * testsuite/libgomp.c/simd-16.c: Move ...
10541 * testsuite/libgomp.c-c++-common/simd-16.c: ... here.
10542 * testsuite/libgomp.c/simd-17.c: Move ...
10543 * testsuite/libgomp.c-c++-common/simd-17.c: ... here.
10544 * testsuite/libgomp.c/target-1.c: Move ...
10545 * testsuite/libgomp.c-c++-common/target-1.c: ... here.
10546 * testsuite/libgomp.c/target-10.c: Move ...
10547 * testsuite/libgomp.c-c++-common/target-10.c: ... here.
10548 * testsuite/libgomp.c/target-13.c: Move ...
10549 * testsuite/libgomp.c-c++-common/target-13.c: ... here.
10550 * testsuite/libgomp.c/target-2.c: Move ...
10551 * testsuite/libgomp.c-c++-common/target-2.c: ... here.
10552 * testsuite/libgomp.c/taskgroup-1.c: Move ...
10553 * testsuite/libgomp.c-c++-common/taskgroup-1.c: ... here.
10554 * testsuite/libgomp.c/taskloop-1.c: Move ...
10555 * testsuite/libgomp.c-c++-common/taskloop-1.c: ... here.
10556 * testsuite/libgomp.c/taskloop-2.c: Move ...
10557 * testsuite/libgomp.c-c++-common/taskloop-2.c: ... here.
10558 * testsuite/libgomp.c/taskloop-3.c: Move ...
10559 * testsuite/libgomp.c-c++-common/taskloop-3.c: ... here.
10560 * testsuite/libgomp.c/taskloop-4.c: Move ...
10561 * testsuite/libgomp.c-c++-common/taskloop-4.c: ... here.
10562 * testsuite/libgomp.c/udr-1.c: Move ...
10563 * testsuite/libgomp.c-c++-common/udr-1.c: ... here.
10564 * testsuite/libgomp.c/for-1.c: Move ...
10565 * testsuite/libgomp.c-c++-common/for-1.c: ... here.
10566 * testsuite/libgomp.c/for-1.h: Move ...
10567 * testsuite/libgomp.c-c++-common/for-1.h: ... here.
10568 * testsuite/libgomp.c/for-2.c: Move ...
10569 * testsuite/libgomp.c-c++-common/for-2.c: ... here.
10570 * testsuite/libgomp.c/for-2.h: Move ...
10571 * testsuite/libgomp.c-c++-common/for-2.h: ... here.
10572 * testsuite/libgomp.c/for-3.c: Move ...
10573 * testsuite/libgomp.c-c++-common/for-3.c: ... here.
10574 * testsuite/libgomp.c/for-4.c: Move ...
10575 * testsuite/libgomp.c-c++-common/for-4.c: ... here.
10576 * testsuite/libgomp.c/for-5.c: Move ...
10577 * testsuite/libgomp.c-c++-common/for-5.c: ... here.
10578 * testsuite/libgomp.c/for-6.c: Move ...
10579 * testsuite/libgomp.c-c++-common/for-6.c: ... here.
10580
1f62d637
TV
105812018-05-02 Tom de Vries <tom@codesourcery.com>
10582
10583 PR libgomp/82428
10584 * testsuite/libgomp.oacc-c-c++-common/gang-static-2.c: Use
10585 __builtin_goacc_parlevel_{id,size}.
10586 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Same.
10587 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Same.
10588 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: Same.
10589 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: Same.
10590 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Same.
10591 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Same.
10592 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Same.
10593 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Same.
10594 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Same.
10595 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Same.
10596 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Same.
10597 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Same.
10598 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Same.
10599 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Same.
10600 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Same.
10601 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Same.
10602 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: Same.
10603 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: Same.
10604 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: Same.
10605 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Same.
10606 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: Same.
10607 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Same.
10608 * testsuite/libgomp.oacc-c-c++-common/tile-1.c: Same.
10609
9220b511
TV
106102018-05-02 Tom de Vries <tom@codesourcery.com>
10611
10612 PR testsuite/85106
10613 * testsuite/lib/libgomp.exp: Include scanltranstree.exp.
10614
6c3c13c1
TV
106152018-05-02 Tom de Vries <tom@codesourcery.com>
10616
10617 PR testsuite/85106
10618 * testsuite/lib/libgomp.exp: Include scanwpaipa.exp.
10619
8d70b61e
JB
106202018-04-29 Julian Brown <julian@codesourcery.com>
10621 Tom de Vries <tom@codesourcery.com>
10622
10623 PR testsuite/85527
10624 * testsuite/libgomp.oacc-c-c++-common/atomic_capture-1.c: Allow
10625 arbitrary order for iterations of atomic subtract check.
10626
4a57a4b6
TV
106272018-04-28 Tom de Vries <tom@codesourcery.com>
10628
10629 PR testsuite/85527
10630 * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90 (main): Store
10631 atomic capture results obtained in parallel loop to an array, instead of
10632 to a scalar.
10633
df36a3d3
TV
106342018-04-26 Tom de Vries <tom@codesourcery.com>
10635
10636 PR libgomp/84020
10637 * plugin/cuda/cuda.h (CUjit_option): Add CU_JIT_OPTIMIZATION_LEVEL.
10638 * plugin/plugin-nvptx.c (_GNU_SOURCE): Define.
10639 (process_GOMP_NVPTX_JIT): New function.
10640 (link_ptx): Use process_GOMP_NVPTX_JIT.
10641
d160ae78
RB
106422018-04-26 Richard Biener <rguenther@suse.de>
10643 Tom de Vries <tom@codesourcery.com>
10644
10645 PR lto/85422
10646 * testsuite/libgomp.oacc-c-c++-common/pr85422.c: New test.
10647
ca9dc642
TV
106482018-04-26 Tom de Vries <tom@codesourcery.com>
10649
10650 PR target/85519
10651 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Reduce
10652 recursion depth from 25 to 23.
10653 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Same.
10654
7b47ecf2
L
106552018-04-24 H.J. Lu <hongjiu.lu@intel.com>
10656
10657 * configure: Regenerated.
10658
e91eba31
NS
106592018-04-20 Nathan Sidwell <nathan@codesourcery.com>
10660 Tom de Vries <tom@codesourcery.com>
10661
10662 PR target/85445
10663 * testsuite/libgomp.oacc-c++/ref-1.C: New.
10664
6e0d40b6
TS
106652018-04-19 Thomas Schwinge <thomas@codesourcery.com>
10666
10667 PR libgomp/85463
10668 * testsuite/libgomp.oacc-fortran/error_stop-1.f: New file.
10669 * testsuite/libgomp.oacc-fortran/error_stop-2.f: Likewise.
10670 * testsuite/libgomp.oacc-fortran/error_stop-3.f: Likewise.
10671 * testsuite/libgomp.oacc-fortran/stop-1.f: Likewise.
10672 * testsuite/libgomp.oacc-fortran/stop-2.f: Likewise.
10673 * testsuite/libgomp.oacc-fortran/stop-3.f: Likewise.
10674
10675 PR libfortran/85166
10676 * testsuite/libgomp.oacc-fortran/abort-1.f90: Switch back to "call
10677 abort".
10678 * testsuite/libgomp.oacc-fortran/abort-2.f90: Likewise.
10679
a0e1df88
JJ
106802018-04-19 Jakub Jelinek <jakub@redhat.com>
10681
10682 * configure: Regenerated.
10683
001ddaa8
DM
106842018-04-18 David Malcolm <dmalcolm@redhat.com>
10685
10686 PR jit/85384
10687 * configure: Regenerate.
10688
05e0af43
CP
106892018-04-16 Cesar Philippidis <cesar@codesourcery.com>
10690 Tom de Vries <tom@codesourcery.com>
10691
10692 PR middle-end/84955
10693 * testsuite/libgomp.oacc-c-c++-common/pr84955.c: New test.
10694 * testsuite/libgomp.oacc-fortran/pr84955.f90: New test.
10695
bc436e10
TK
106962018-04-12 Thomas Koenig <tkoenig@gcc.gnu.org>
10697
10698 PR fortran/83064
10699 PR testsuite/85346
10700 * testsuite/libgomp.fortran/do_concurrent_5.f90: Move modified
10701 test from gfortran.dg to here.
10702
ffb164c7
JJ
107032018-04-12 Cesar Philippidis <cesar@codesourcery.com>
10704
10705 * testsuite/libgomp.oacc-c-c++-common/pr84955.c: Revert 259346.
10706 * testsuite/libgomp.oacc-fortran/pr84955.f90: Likewise.
10707
107082018-04-12 Cesar Philippidis <cesar@codesourcery.com>
10709
10710 PR middle-end/84955
10711 * testsuite/libgomp.oacc-c-c++-common/pr84955.c: New test.
10712 * testsuite/libgomp.oacc-fortran/pr84955.f90: New test.
10713
2ba16fd2
TV
107142018-04-05 Tom de Vries <tom@codesourcery.com>
10715
10716 PR target/85204
10717 * testsuite/libgomp.oacc-c-c++-common/broadcast-1.c: New test.
10718
46dbeb40
TV
107192018-03-26 Tom de Vries <tom@codesourcery.com>
10720
10721 PR tree-optimization/85063
10722 * testsuite/libgomp.c/switch-conversion-2.c: New test.
10723 * testsuite/libgomp.c/switch-conversion.c: New test.
10724 * testsuite/libgomp.oacc-c-c++-common/switch-conversion-2.c: New test.
10725 * testsuite/libgomp.oacc-c-c++-common/switch-conversion.c: New test.
10726
bfc24e32
TK
107272018-03-25 Thomas Koenig <tkoenig@gcc.gnu.org>
10728
10729 PR fortran/84381
10730 * testsuite/libgomp.fortran/aligned1.f03: Replace non-standard
10731 call abort by STOP n.
10732 * testsuite/libgomp.fortran/alloc-comp-1.f90: Likewise.
10733 * testsuite/libgomp.fortran/alloc-comp-2.f90: Likewise.
10734 * testsuite/libgomp.fortran/alloc-comp-3.f90: Likewise.
10735 * testsuite/libgomp.fortran/allocatable1.f90: Likewise.
10736 * testsuite/libgomp.fortran/allocatable10.f90: Likewise.
10737 * testsuite/libgomp.fortran/allocatable11.f90: Likewise.
10738 * testsuite/libgomp.fortran/allocatable12.f90: Likewise.
10739 * testsuite/libgomp.fortran/allocatable2.f90: Likewise.
10740 * testsuite/libgomp.fortran/allocatable3.f90: Likewise.
10741 * testsuite/libgomp.fortran/allocatable4.f90: Likewise.
10742 * testsuite/libgomp.fortran/allocatable5.f90: Likewise.
10743 * testsuite/libgomp.fortran/allocatable6.f90: Likewise.
10744 * testsuite/libgomp.fortran/allocatable7.f90: Likewise.
10745 * testsuite/libgomp.fortran/allocatable8.f90: Likewise.
10746 * testsuite/libgomp.fortran/allocatable9.f90: Likewise.
10747 * testsuite/libgomp.fortran/appendix-a/a.18.1.f90: Likewise.
10748 * testsuite/libgomp.fortran/appendix-a/a.19.1.f90: Likewise.
10749 * testsuite/libgomp.fortran/associate1.f90: Likewise.
10750 * testsuite/libgomp.fortran/associate2.f90: Likewise.
10751 * testsuite/libgomp.fortran/associate3.f90: Likewise.
10752 * testsuite/libgomp.fortran/cancel-do-1.f90: Likewise.
10753 * testsuite/libgomp.fortran/cancel-do-2.f90: Likewise.
10754 * testsuite/libgomp.fortran/cancel-parallel-1.f90: Likewise.
10755 * testsuite/libgomp.fortran/cancel-sections-1.f90: Likewise.
10756 * testsuite/libgomp.fortran/cancel-taskgroup-2.f90: Likewise.
10757 * testsuite/libgomp.fortran/character1.f90: Likewise.
10758 * testsuite/libgomp.fortran/character2.f90: Likewise.
10759 * testsuite/libgomp.fortran/collapse1.f90: Likewise.
10760 * testsuite/libgomp.fortran/collapse2.f90: Likewise.
10761 * testsuite/libgomp.fortran/collapse3.f90: Likewise.
10762 * testsuite/libgomp.fortran/collapse4.f90: Likewise.
10763 * testsuite/libgomp.fortran/crayptr1.f90: Likewise.
10764 * testsuite/libgomp.fortran/crayptr2.f90: Likewise.
10765 * testsuite/libgomp.fortran/crayptr3.f90: Likewise.
10766 * testsuite/libgomp.fortran/declare-simd-1.f90: Likewise.
10767 * testsuite/libgomp.fortran/declare-simd-3.f90: Likewise.
10768 * testsuite/libgomp.fortran/declare-target-2.f90: Likewise.
10769 * testsuite/libgomp.fortran/depend-1.f90: Likewise.
10770 * testsuite/libgomp.fortran/depend-2.f90: Likewise.
10771 * testsuite/libgomp.fortran/depend-3.f90: Likewise.
10772 * testsuite/libgomp.fortran/do1.f90: Likewise.
10773 * testsuite/libgomp.fortran/do2.f90: Likewise.
10774 * testsuite/libgomp.fortran/doacross1.f90: Likewise.
10775 * testsuite/libgomp.fortran/doacross2.f90: Likewise.
10776 * testsuite/libgomp.fortran/doacross3.f90: Likewise.
10777 * testsuite/libgomp.fortran/examples-4/array_sections-3.f90: Likewise.
10778 * testsuite/libgomp.fortran/examples-4/array_sections-4.f90: Likewise.
10779 * testsuite/libgomp.fortran/examples-4/async_target-1.f90: Likewise.
10780 * testsuite/libgomp.fortran/examples-4/async_target-2.f90: Likewise.
10781 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Likewise.
10782 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Likewise.
10783 * testsuite/libgomp.fortran/examples-4/declare_target-3.f90: Likewise.
10784 * testsuite/libgomp.fortran/examples-4/declare_target-4.f90: Likewise.
10785 * testsuite/libgomp.fortran/examples-4/declare_target-5.f90: Likewise.
10786 * testsuite/libgomp.fortran/examples-4/device-1.f90: Likewise.
10787 * testsuite/libgomp.fortran/examples-4/device-2.f90: Likewise.
10788 * testsuite/libgomp.fortran/examples-4/device-3.f90: Likewise.
10789 * testsuite/libgomp.fortran/examples-4/simd-1.f90: Likewise.
10790 * testsuite/libgomp.fortran/examples-4/simd-2.f90: Likewise.
10791 * testsuite/libgomp.fortran/examples-4/simd-3.f90: Likewise.
10792 * testsuite/libgomp.fortran/examples-4/simd-4.f90: Likewise.
10793 * testsuite/libgomp.fortran/examples-4/simd-5.f90: Likewise.
10794 * testsuite/libgomp.fortran/examples-4/simd-6.f90: Likewise.
10795 * testsuite/libgomp.fortran/examples-4/simd-7.f90: Likewise.
10796 * testsuite/libgomp.fortran/examples-4/simd-8.f90: Likewise.
10797 * testsuite/libgomp.fortran/examples-4/target-1.f90: Likewise.
10798 * testsuite/libgomp.fortran/examples-4/target-2.f90: Likewise.
10799 * testsuite/libgomp.fortran/examples-4/target-3.f90: Likewise.
10800 * testsuite/libgomp.fortran/examples-4/target-4.f90: Likewise.
10801 * testsuite/libgomp.fortran/examples-4/target-5.f90: Likewise.
10802 * testsuite/libgomp.fortran/examples-4/target_data-1.f90: Likewise.
10803 * testsuite/libgomp.fortran/examples-4/target_data-2.f90: Likewise.
10804 * testsuite/libgomp.fortran/examples-4/target_data-3.f90: Likewise.
10805 * testsuite/libgomp.fortran/examples-4/target_data-4.f90: Likewise.
10806 * testsuite/libgomp.fortran/examples-4/target_data-5.f90: Likewise.
10807 * testsuite/libgomp.fortran/examples-4/target_data-6.f90: Likewise.
10808 * testsuite/libgomp.fortran/examples-4/target_data-7.f90: Likewise.
10809 * testsuite/libgomp.fortran/examples-4/target_update-1.f90: Likewise.
10810 * testsuite/libgomp.fortran/examples-4/target_update-2.f90: Likewise.
10811 * testsuite/libgomp.fortran/examples-4/task_dep-1.f90: Likewise.
10812 * testsuite/libgomp.fortran/examples-4/task_dep-2.f90: Likewise.
10813 * testsuite/libgomp.fortran/examples-4/task_dep-3.f90: Likewise.
10814 * testsuite/libgomp.fortran/examples-4/task_dep-4.f90: Likewise.
10815 * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: Likewise.
10816 * testsuite/libgomp.fortran/examples-4/teams-2.f90: Likewise.
10817 * testsuite/libgomp.fortran/examples-4/teams-3.f90: Likewise.
10818 * testsuite/libgomp.fortran/examples-4/teams-4.f90: Likewise.
10819 * testsuite/libgomp.fortran/examples-4/teams-5.f90: Likewise.
10820 * testsuite/libgomp.fortran/examples-4/teams-6.f90: Likewise.
10821 * testsuite/libgomp.fortran/lastprivate1.f90: Likewise.
10822 * testsuite/libgomp.fortran/lastprivate2.f90: Likewise.
10823 * testsuite/libgomp.fortran/lib1.f90: Likewise.
10824 * testsuite/libgomp.fortran/lib2.f: Likewise.
10825 * testsuite/libgomp.fortran/lib3.f: Likewise.
10826 * testsuite/libgomp.fortran/lib4.f90: Likewise.
10827 * testsuite/libgomp.fortran/lock-1.f90: Likewise.
10828 * testsuite/libgomp.fortran/lock-2.f90: Likewise.
10829 * testsuite/libgomp.fortran/nested1.f90: Likewise.
10830 * testsuite/libgomp.fortran/nestedfn1.f90: Likewise.
10831 * testsuite/libgomp.fortran/nestedfn2.f90: Likewise.
10832 * testsuite/libgomp.fortran/nestedfn3.f90: Likewise.
10833 * testsuite/libgomp.fortran/nestedfn4.f90: Likewise.
10834 * testsuite/libgomp.fortran/nestedfn5.f90: Likewise.
10835 * testsuite/libgomp.fortran/omp_atomic1.f90: Likewise.
10836 * testsuite/libgomp.fortran/omp_atomic2.f90: Likewise.
10837 * testsuite/libgomp.fortran/omp_atomic3.f90: Likewise.
10838 * testsuite/libgomp.fortran/omp_atomic4.f90: Likewise.
10839 * testsuite/libgomp.fortran/omp_atomic5.f90: Likewise.
10840 * testsuite/libgomp.fortran/omp_cond1.f: Likewise.
10841 * testsuite/libgomp.fortran/omp_cond2.f: Likewise.
10842 * testsuite/libgomp.fortran/omp_cond3.F90: Likewise.
10843 * testsuite/libgomp.fortran/omp_cond4.F90: Likewise.
10844 * testsuite/libgomp.fortran/omp_parse1.f90: Likewise.
10845 * testsuite/libgomp.fortran/omp_parse2.f90: Likewise.
10846 * testsuite/libgomp.fortran/omp_parse3.f90: Likewise.
10847 * testsuite/libgomp.fortran/omp_parse4.f90: Likewise.
10848 * testsuite/libgomp.fortran/openmp_version-1.f: Likewise.
10849 * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
10850 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt-2.f95: Likewise.
10851 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt.f95: Likewise.
10852 * testsuite/libgomp.fortran/pointer1.f90: Likewise.
10853 * testsuite/libgomp.fortran/pointer2.f90: Likewise.
10854 * testsuite/libgomp.fortran/pr25162.f: Likewise.
10855 * testsuite/libgomp.fortran/pr25219.f90: Likewise.
10856 * testsuite/libgomp.fortran/pr27395-1.f90: Likewise.
10857 * testsuite/libgomp.fortran/pr27395-2.f90: Likewise.
10858 * testsuite/libgomp.fortran/pr27416-1.f90: Likewise.
10859 * testsuite/libgomp.fortran/pr27916-1.f90: Likewise.
10860 * testsuite/libgomp.fortran/pr27916-2.f90: Likewise.
10861 * testsuite/libgomp.fortran/pr28390.f: Likewise.
10862 * testsuite/libgomp.fortran/pr29629.f90: Likewise.
10863 * testsuite/libgomp.fortran/pr32550.f90: Likewise.
10864 * testsuite/libgomp.fortran/pr33880.f90: Likewise.
10865 * testsuite/libgomp.fortran/pr34020.f90: Likewise.
10866 * testsuite/libgomp.fortran/pr35130.f90: Likewise.
10867 * testsuite/libgomp.fortran/pr42162.f90: Likewise.
10868 * testsuite/libgomp.fortran/pr46753.f90: Likewise.
10869 * testsuite/libgomp.fortran/pr48894.f90: Likewise.
10870 * testsuite/libgomp.fortran/pr49792-1.f90: Likewise.
10871 * testsuite/libgomp.fortran/pr49792-2.f90: Likewise.
10872 * testsuite/libgomp.fortran/pr63938-1.f90: Likewise.
10873 * testsuite/libgomp.fortran/pr63938-2.f90: Likewise.
10874 * testsuite/libgomp.fortran/pr65597.f90: Likewise.
10875 * testsuite/libgomp.fortran/pr66199-1.f90: Likewise.
10876 * testsuite/libgomp.fortran/pr71014.f90: Likewise.
10877 * testsuite/libgomp.fortran/pr81304.f90: Likewise.
10878 * testsuite/libgomp.fortran/pr81841.f90: Likewise.
10879 * testsuite/libgomp.fortran/pr84418-1.f90: Likewise.
10880 * testsuite/libgomp.fortran/pr84418-2.f90: Likewise.
10881 * testsuite/libgomp.fortran/procptr1.f90: Likewise.
10882 * testsuite/libgomp.fortran/recursion1.f90: Likewise.
10883 * testsuite/libgomp.fortran/reduction1.f90: Likewise.
10884 * testsuite/libgomp.fortran/reduction2.f90: Likewise.
10885 * testsuite/libgomp.fortran/reduction3.f90: Likewise.
10886 * testsuite/libgomp.fortran/reduction4.f90: Likewise.
10887 * testsuite/libgomp.fortran/reduction5.f90: Likewise.
10888 * testsuite/libgomp.fortran/reduction6.f90: Likewise.
10889 * testsuite/libgomp.fortran/reference1.f90: Likewise.
10890 * testsuite/libgomp.fortran/reference2.f90: Likewise.
10891 * testsuite/libgomp.fortran/retval1.f90: Likewise.
10892 * testsuite/libgomp.fortran/retval2.f90: Likewise.
10893 * testsuite/libgomp.fortran/sharing1.f90: Likewise.
10894 * testsuite/libgomp.fortran/sharing2.f90: Likewise.
10895 * testsuite/libgomp.fortran/simd1.f90: Likewise.
10896 * testsuite/libgomp.fortran/simd2.f90: Likewise.
10897 * testsuite/libgomp.fortran/simd3.f90: Likewise.
10898 * testsuite/libgomp.fortran/simd4.f90: Likewise.
10899 * testsuite/libgomp.fortran/simd5.f90: Likewise.
10900 * testsuite/libgomp.fortran/simd6.f90: Likewise.
10901 * testsuite/libgomp.fortran/simd7.f90: Likewise.
10902 * testsuite/libgomp.fortran/stack.f90: Likewise.
10903 * testsuite/libgomp.fortran/strassen.f90: Likewise.
10904 * testsuite/libgomp.fortran/tabs1.f90: Likewise.
10905 * testsuite/libgomp.fortran/tabs2.f: Likewise.
10906 * testsuite/libgomp.fortran/target1.f90: Likewise.
10907 * testsuite/libgomp.fortran/target2.f90: Likewise.
10908 * testsuite/libgomp.fortran/target3.f90: Likewise.
10909 * testsuite/libgomp.fortran/target4.f90: Likewise.
10910 * testsuite/libgomp.fortran/target5.f90: Likewise.
10911 * testsuite/libgomp.fortran/target6.f90: Likewise.
10912 * testsuite/libgomp.fortran/target7.f90: Likewise.
10913 * testsuite/libgomp.fortran/target8.f90: Likewise.
10914 * testsuite/libgomp.fortran/task1.f90: Likewise.
10915 * testsuite/libgomp.fortran/task2.f90: Likewise.
10916 * testsuite/libgomp.fortran/task3.f90: Likewise.
10917 * testsuite/libgomp.fortran/task4.f90: Likewise.
10918 * testsuite/libgomp.fortran/taskgroup1.f90: Likewise.
10919 * testsuite/libgomp.fortran/taskloop1.f90: Likewise.
10920 * testsuite/libgomp.fortran/taskloop2.f90: Likewise.
10921 * testsuite/libgomp.fortran/taskloop3.f90: Likewise.
10922 * testsuite/libgomp.fortran/taskloop4.f90: Likewise.
10923 * testsuite/libgomp.fortran/threadprivate1.f90: Likewise.
10924 * testsuite/libgomp.fortran/threadprivate2.f90: Likewise.
10925 * testsuite/libgomp.fortran/threadprivate3.f90: Likewise.
10926 * testsuite/libgomp.fortran/threadprivate4.f90: Likewise.
10927 * testsuite/libgomp.fortran/udr1.f90: Likewise.
10928 * testsuite/libgomp.fortran/udr10.f90: Likewise.
10929 * testsuite/libgomp.fortran/udr11.f90: Likewise.
10930 * testsuite/libgomp.fortran/udr12.f90: Likewise.
10931 * testsuite/libgomp.fortran/udr13.f90: Likewise.
10932 * testsuite/libgomp.fortran/udr14.f90: Likewise.
10933 * testsuite/libgomp.fortran/udr15.f90: Likewise.
10934 * testsuite/libgomp.fortran/udr2.f90: Likewise.
10935 * testsuite/libgomp.fortran/udr3.f90: Likewise.
10936 * testsuite/libgomp.fortran/udr4.f90: Likewise.
10937 * testsuite/libgomp.fortran/udr5.f90: Likewise.
10938 * testsuite/libgomp.fortran/udr6.f90: Likewise.
10939 * testsuite/libgomp.fortran/udr7.f90: Likewise.
10940 * testsuite/libgomp.fortran/udr8.f90: Likewise.
10941 * testsuite/libgomp.fortran/udr9.f90: Likewise.
10942 * testsuite/libgomp.fortran/vla1.f90: Likewise.
10943 * testsuite/libgomp.fortran/vla2.f90: Likewise.
10944 * testsuite/libgomp.fortran/vla3.f90: Likewise.
10945 * testsuite/libgomp.fortran/vla4.f90: Likewise.
10946 * testsuite/libgomp.fortran/vla5.f90: Likewise.
10947 * testsuite/libgomp.fortran/vla6.f90: Likewise.
10948 * testsuite/libgomp.fortran/vla7.f90: Likewise.
10949 * testsuite/libgomp.fortran/vla8.f90: Likewise.
10950 * testsuite/libgomp.fortran/workshare1.f90: Likewise.
10951 * testsuite/libgomp.fortran/workshare2.f90: Likewise.
10952 * testsuite/libgomp.oacc-fortran/abort-1.f90: Likewise.
10953 * testsuite/libgomp.oacc-fortran/abort-2.f90: Likewise.
10954 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
10955 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
10956 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
10957 * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
10958 * testsuite/libgomp.oacc-fortran/asyncwait-2.f90: Likewise.
10959 * testsuite/libgomp.oacc-fortran/asyncwait-3.f90: Likewise.
10960 * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90: Likewise.
10961 * testsuite/libgomp.oacc-fortran/atomic_rw-1.f90: Likewise.
10962 * testsuite/libgomp.oacc-fortran/atomic_update-1.f90: Likewise.
10963 * testsuite/libgomp.oacc-fortran/c2.pl: Likewise.
10964 * testsuite/libgomp.oacc-fortran/clauses-1.f90: Likewise.
10965 * testsuite/libgomp.oacc-fortran/collapse-1.f90: Likewise.
10966 * testsuite/libgomp.oacc-fortran/collapse-2.f90: Likewise.
10967 * testsuite/libgomp.oacc-fortran/collapse-3.f90: Likewise.
10968 * testsuite/libgomp.oacc-fortran/collapse-4.f90: Likewise.
10969 * testsuite/libgomp.oacc-fortran/collapse-5.f90: Likewise.
10970 * testsuite/libgomp.oacc-fortran/collapse-6.f90: Likewise.
10971 * testsuite/libgomp.oacc-fortran/collapse-7.f90: Likewise.
10972 * testsuite/libgomp.oacc-fortran/collapse-8.f90: Likewise.
10973 * testsuite/libgomp.oacc-fortran/combined-directives-1.f90: Likewise.
10974 * testsuite/libgomp.oacc-fortran/combined-reduction.f90: Likewise.
10975 * testsuite/libgomp.oacc-fortran/data-1.f90: Likewise.
10976 * testsuite/libgomp.oacc-fortran/data-2.f90: Likewise.
10977 * testsuite/libgomp.oacc-fortran/data-3.f90: Likewise.
10978 * testsuite/libgomp.oacc-fortran/data-4-2.f90: Likewise.
10979 * testsuite/libgomp.oacc-fortran/data-4.f90: Likewise.
10980 * testsuite/libgomp.oacc-fortran/declare-1.f90: Likewise.
10981 * testsuite/libgomp.oacc-fortran/declare-2.f90: Likewise.
10982 * testsuite/libgomp.oacc-fortran/declare-3.f90: Likewise.
10983 * testsuite/libgomp.oacc-fortran/declare-4.f90: Likewise.
10984 * testsuite/libgomp.oacc-fortran/declare-5.f90: Likewise.
10985 * testsuite/libgomp.oacc-fortran/default-1.f90: Likewise.
10986 * testsuite/libgomp.oacc-fortran/firstprivate-1.f90: Likewise.
10987 * testsuite/libgomp.oacc-fortran/gang-static-1.f90: Likewise.
10988 * testsuite/libgomp.oacc-fortran/host_data-1.f90: Likewise.
10989 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
10990 * testsuite/libgomp.oacc-fortran/implicit-firstprivate-ref.f90: Likewise.
10991 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Likewise.
10992 * testsuite/libgomp.oacc-fortran/kernels-loop-data-2.f95: Likewise.
10993 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit-2.f95: Likewise.
10994 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit.f95: Likewise.
10995 * testsuite/libgomp.oacc-fortran/kernels-loop-data-update.f95: Likewise.
10996 * testsuite/libgomp.oacc-fortran/kernels-loop-data.f95: Likewise.
10997 * testsuite/libgomp.oacc-fortran/kernels-loop.f95: Likewise.
10998 * testsuite/libgomp.oacc-fortran/lib-1.f90: Likewise.
10999 * testsuite/libgomp.oacc-fortran/lib-10.f90: Likewise.
11000 * testsuite/libgomp.oacc-fortran/lib-2.f: Likewise.
11001 * testsuite/libgomp.oacc-fortran/lib-3.f: Likewise.
11002 * testsuite/libgomp.oacc-fortran/lib-32-1.f: Likewise.
11003 * testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
11004 * testsuite/libgomp.oacc-fortran/lib-4.f90: Likewise.
11005 * testsuite/libgomp.oacc-fortran/lib-5.f90: Likewise.
11006 * testsuite/libgomp.oacc-fortran/lib-6.f90: Likewise.
11007 * testsuite/libgomp.oacc-fortran/lib-7.f90: Likewise.
11008 * testsuite/libgomp.oacc-fortran/lib-8.f90: Likewise.
11009 * testsuite/libgomp.oacc-fortran/map-1.f90: Likewise.
11010 * testsuite/libgomp.oacc-fortran/nested-function-1.f90: Likewise.
11011 * testsuite/libgomp.oacc-fortran/nested-function-2.f90: Likewise.
11012 * testsuite/libgomp.oacc-fortran/nested-function-3.f90: Likewise.
11013 * testsuite/libgomp.oacc-fortran/non-scalar-data.f90: Likewise.
11014 * testsuite/libgomp.oacc-fortran/openacc_version-1.f: Likewise.
11015 * testsuite/libgomp.oacc-fortran/openacc_version-2.f90: Likewise.
11016 * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f: Likewise.
11017 * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
11018 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
11019 * testsuite/libgomp.oacc-fortran/pointer-align-1.f90: Likewise.
11020 * testsuite/libgomp.oacc-fortran/pr70643.f90: Likewise.
11021 * testsuite/libgomp.oacc-fortran/pr81352.f90: Likewise.
11022 * testsuite/libgomp.oacc-fortran/pr83920.f90: Likewise.
11023 * testsuite/libgomp.oacc-fortran/pr84028.f90: Likewise.
11024 * testsuite/libgomp.oacc-fortran/private-variables.f90: Likewise.
11025 * testsuite/libgomp.oacc-fortran/pset-1.f90: Likewise.
11026 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Likewise.
11027 * testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
11028 * testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
11029 * testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
11030 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
11031 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
11032 * testsuite/libgomp.oacc-fortran/reduction-7.f90: Likewise.
11033 * testsuite/libgomp.oacc-fortran/reduction-8.f90: Likewise.
11034 * testsuite/libgomp.oacc-fortran/routine-1.f90: Likewise.
11035 * testsuite/libgomp.oacc-fortran/routine-2.f90: Likewise.
11036 * testsuite/libgomp.oacc-fortran/routine-3.f90: Likewise.
11037 * testsuite/libgomp.oacc-fortran/routine-4.f90: Likewise.
11038 * testsuite/libgomp.oacc-fortran/routine-5.f90: Likewise.
11039 * testsuite/libgomp.oacc-fortran/routine-7.f90: Likewise.
11040 * testsuite/libgomp.oacc-fortran/routine-9.f90: Likewise.
11041 * testsuite/libgomp.oacc-fortran/subarrays-1.f90: Likewise.
11042 * testsuite/libgomp.oacc-fortran/subarrays-2.f90: Likewise.
11043 * testsuite/libgomp.oacc-fortran/update-1.f90: Likewise.
11044
79cf14ae
RB
110452018-03-20 Richard Biener <rguenther@suse.de>
11046
11047 * testsuite/libgomp.graphite/force-parallel-4.c: XFAIL one
11048 parallelizable loop.
11049
14e335ed
IT
110502018-02-19 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
11051
11052 PR target/84148
11053 * configure: Regenerate.
11054
83d9be55
JJ
110552018-02-16 Jakub Jelinek <jakub@redhat.com>
11056
11057 PR fortran/84418
11058 * libgomp.fortran/pr84418-1.f90: New test.
11059 * libgomp.fortran/pr84418-2.f90: New test.
11060
d1fe6124
JJ
110612018-02-14 Jakub Jelinek <jakub@redhat.com>
11062
11063 PR fortran/84313
11064 * testsuite/libgomp.fortran/threadprivate4.f90: Add
11065 -std=f2003 -fall-intrinsics into dg-additional-options.
11066
3d224921
MJ
110672018-02-08 Martin Jambor <mjambor@suse.cz>
11068
11069 * testsuite/libgomp.hsa.c/pr82416.c: Make the function with target
11070 clonable.
11071
c7c30edd
MJ
110722018-02-08 Martin Jambor <mjambor@suse.cz>
11073
11074 * testsuite/libgomp.hsa.c/staticvar.c: New test.
11075
f320fdfd
RO
110762018-02-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
11077
11078 * testsuite/libgomp.oacc-c-c++-common/pr84217.c (abort)
11079 [__cplusplus]: Declare extern "C".
11080
c31bc4ac
TV
110812018-02-07 Tom de Vries <tom@codesourcery.com>
11082
11083 PR libgomp/84217
11084 * testsuite/libgomp.oacc-c-c++-common/pr84217.c: New test.
11085
99ae7ce5
CS
110862018-01-29 Christoph Spiel <cspiel@freenet.de>
11087 Jakub Jelinek <jakub@redhat.com>
11088
11089 PR libgomp/84096
11090 * omp.h.in (omp_init_nest_lock_with_hint): Use omp_nest_lock_t
11091 instead of omp_lock_t.
11092
e77a1236
TV
110932018-01-25 Tom de Vries <tom@codesourcery.com>
11094
11095 PR target/84028
11096 * testsuite/libgomp.oacc-fortran/pr84028.f90: New test.
11097
3dede32b
TV
110982018-01-24 Tom de Vries <tom@codesourcery.com>
11099
11100 PR target/83589
11101 * testsuite/libgomp.oacc-c-c++-common/pr83589.c: New test.
11102
be606483
TV
111032018-01-24 Tom de Vries <tom@codesourcery.com>
11104
11105 PR target/81352
11106 * testsuite/libgomp.oacc-fortran/pr81352.f90: New test.
11107
8c8e9a6b
TV
111082018-01-19 Tom de Vries <tom@codesourcery.com>
11109 Cesar Philippidis <cesar@codesourcery.com>
11110
11111 PR target/83920
11112 * testsuite/libgomp.oacc-c-c++-common/pr83920.c: New test.
11113 * testsuite/libgomp.oacc-fortran/pr83920.f90: New test.
11114
65e6aea3
JJ
111152018-01-03 Jakub Jelinek <jakub@redhat.com>
11116
85ec4feb
JJ
11117 Update copyright years.
11118
65e6aea3
JJ
11119 * libgomp.texi: Bump @copying's copyright year.
11120
60bf575c
TV
111212017-12-30 Tom de Vries <tom@codesourcery.com>
11122
11123 PR libgomp/83046
11124 * testsuite/libgomp.oacc-c-c++-common/pr83046.c: New test.
11125 * testsuite/libgomp.c-c++-common/pr83046.c: New test.
11126
7ec16b79
TV
111272017-12-27 Tom de Vries <tom@codesourcery.com>
11128
11129 PR c++/83046
11130 * testsuite/libgomp.oacc-c-c++-common/gang-static-2.c (test_static)
11131 (test_nonstatic): Fix return type to workaround PR83046.
11132
ac550b9a
JJ
111332017-12-05 Jakub Jelinek <jakub@redhat.com>
11134
11135 PR testsuite/83281
11136 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c (main): Use
11137 j suffix instead of i.
11138 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c (main):
11139 Likewise.
11140
ebdc83f0
CP
111412017-12-01 Cesar Philippidis <cesar@codesourcery.com>
11142
11143 * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: Add missing
11144 call to acc_wait (1).
11145
3b3e6283
JJ
111462017-11-24 Jakub Jelinek <jakub@redhat.com>
11147
11148 PR fortran/81304
11149 * testsuite/libgomp.fortran/pr81304.f90: New test.
11150
3b575376
JJ
111512017-11-23 Jakub Jelinek <jakub@redhat.com>
11152
11153 PR fortran/81841
11154 * libgomp.fortran/pr81841.f90: New test.
11155
b13547d8
JJ
111562017-11-22 Jakub Jelinek <jakub@redhat.com>
11157
11158 PR libgomp/83106
11159 * target.c (gomp_target_init): Compute lengths just once and
11160 use them in both malloc size and subsequent copying.
11161
efe33ced
IT
111622017-11-17 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
11163
11164 * configure.ac: Set CET_FLAGS, update XCFLAGS and FCFLAGS.
11165 * acinclude.m4: Add cet.m4.
11166 * configure: Regenerate.
11167 * Makefile.in: Likewise.
11168 * testsuite/Makefile.in: Likewise.
11169
a7cf2612
TV
111702017-11-15 Tom de Vries <tom@codesourcery.com>
11171
11172 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: New test, copied
11173 from asyncwait-1.f90. Rewrite into C. Rewrite from float to int.
11174 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-2.c: New test, copied
11175 from asyncwait-2.f90. Rewrite into C. Rewrite from float to int.
11176 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-3.c: New test, copied
11177 from asyncwait-3.f90. Rewrite into C. Rewrite from float to int.
11178
dde76623
TV
111792017-11-14 Tom de Vries <tom@codesourcery.com>
11180
11181 * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Allow to run for
11182 non-nvidia devices.
11183
4dbeb716
JJ
111842017-11-07 Jakub Jelinek <jakub@redhat.com>
11185
11186 PR c++/82835
11187 * testsuite/libgomp.c++/pr82835.C: New test.
11188
454f8b2b
ML
111892017-11-06 Martin Liska <mliska@suse.cz>
11190
11191 * testsuite/libgomp.c++/loop-2.C: Return a value
11192 for functions with non-void return type, or change type to void,
11193 or add -Wno-return-type for test.
11194 * testsuite/libgomp.c++/loop-4.C: Likewise.
11195 * testsuite/libgomp.c++/parallel-1.C: Likewise.
11196 * testsuite/libgomp.c++/shared-1.C: Likewise.
11197 * testsuite/libgomp.c++/single-1.C: Likewise.
11198 * testsuite/libgomp.c++/single-2.C: Likewise.
11199
12e9c8ce
TV
112002017-10-31 Tom de Vries <tom@codesourcery.com>
11201
11202 * plugin/plugin-hsa.c (HSA_LOG): Remove semicolon after
11203 "do {} while (false)".
11204 (init_single_kernel, GOMP_OFFLOAD_async_run): Add missing semicolon
11205 after HSA_DEBUG call.
11206
7324369a
JJ
112072017-10-28 Jakub Jelinek <jakub@redhat.com>
11208
11209 * target.c (struct gomp_coalesce_buf): New type.
11210 (MAX_COALESCE_BUF_SIZE, MAX_COALESCE_BUF_GAP): Define.
11211 (gomp_coalesce_buf_add, gomp_to_device_kind_p): New functions.
11212 (gomp_copy_host2dev): Add CBUF argument, if copying into
11213 the cached ranges, memcpy into buffer instead of copying
11214 into device.
11215 (gomp_map_vars_existing, gomp_map_pointer, gomp_map_fields_existing):
11216 Add CBUF argument, pass it through to other calls.
11217 (gomp_map_vars): Aggregate copies from host to device if small enough
11218 and with small enough gaps in between into memcpy into a buffer and
11219 fewer host to device copies from the buffer.
11220 (gomp_update): Adjust gomp_copy_host2dev caller.
11221
933ab0e6
TS
112222017-10-17 Thomas Schwinge <thomas@codesourcery.com>
11223
11224 * testsuite/libgomp.oacc-fortran/declare-1.f90: Restore "dg-do
11225 run" directive.
11226 * testsuite/libgomp.oacc-fortran/declare-2.f90: Likewise.
11227 * testsuite/libgomp.oacc-fortran/declare-3.f90: Likewise.
11228 * testsuite/libgomp.oacc-fortran/declare-4.f90: Likewise.
11229 * testsuite/libgomp.oacc-fortran/declare-5.f90: Likewise.
11230
92d5d01a
TV
112312017-10-16 Tom de Vries <tom@codesourcery.com>
11232
11233 * testsuite/libgomp.oacc-c-c++-common/declare-1.c: Don't require
11234 openacc_nvidia_accel_selected.
11235 * testsuite/libgomp.oacc-c-c++-common/declare-2.c: Same.
11236 * testsuite/libgomp.oacc-c-c++-common/declare-4.c: Same.
11237 * testsuite/libgomp.oacc-fortran/declare-2.f90: Same.
11238 * testsuite/libgomp.oacc-fortran/declare-4.f90: Same
11239 * testsuite/libgomp.oacc-fortran/declare-5.f90: Same.
11240 * testsuite/libgomp.oacc-c-c++-common/declare-5.c: Don't require
11241 openacc_nvidia_accel_selected. Skip for shared memory device.
11242 * testsuite/libgomp.oacc-fortran/declare-1.f90: Same.
11243 * testsuite/libgomp.oacc-fortran/declare-3.f90: Same.
11244
191411e4
MJ
112452017-10-09 Martin Jambor <mjambor@suse.cz>
11246
11247 PR hsa/82416
11248 * testsuite/libgomp.hsa.c/pr82416.c: New test.
11249
e923330e
TV
112502017-10-07 Tom de Vries <tom@codesourcery.com>
11251
11252 * testsuite/libgomp.oacc-fortran/firstprivate-1.f90 (firstprivate):
11253 Remove acc_device_nvidia references.
11254 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90 (reduction):
11255 Same.
11256
8fe3ed4c
TV
112572017-10-05 Tom de Vries <tom@codesourcery.com>
11258
11259 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c (main): Remove
11260 vector_length(32) clause from acc parallel directive.
11261 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c (main): Same.
11262
26596ee5
TV
112632017-10-04 Tom de Vries <tom@codesourcery.com>
11264
11265 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-3.c
11266 (main): Reduce sum of arr elements. Assert that hres is exactly
11267 representable in 32-bit floating point.
11268 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c
11269 (main): Reduce sum of arr elements. Assert that hres and hmres are
11270 exactly representable in 32-bit floating point.
11271 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c (gwv_np_4): Same.
11272
5c561fa9
TV
112732017-09-28 Tom de Vries <tom@codesourcery.com>
11274
11275 * testsuite/libgomp.c++/for-12.C: Remove superfluous -fopenmp option
11276 setting.
11277 * testsuite/libgomp.c++/pr69393.C: Same.
11278 * testsuite/libgomp.c++/taskloop-1.C: Same.
11279 * testsuite/libgomp.c++/taskloop-3.C: Same.
11280 * testsuite/libgomp.c++/taskloop-4.C: Same.
11281 * testsuite/libgomp.c/for-4.c: Same.
11282 * testsuite/libgomp.c/pr66199-3.c: Same.
11283 * testsuite/libgomp.c/pr66199-4.c: Same.
11284 * testsuite/libgomp.c/pr66199-6.c: Same.
11285 * testsuite/libgomp.c/taskloop-1.c: Same.
11286 * testsuite/libgomp.c/taskloop-3.c: Same.
11287 * testsuite/libgomp.c/taskloop-4.c: Same.
11288 * testsuite/libgomp.fortran/aligned1.f03: Same.
11289 * testsuite/libgomp.fortran/condinc1.f: Same.
11290 * testsuite/libgomp.fortran/condinc3.f90: Same.
11291 * testsuite/libgomp.fortran/crayptr1.f90: Same.
11292 * testsuite/libgomp.fortran/crayptr2.f90: Same.
11293 * testsuite/libgomp.fortran/crayptr3.f90: Same.
11294 * testsuite/libgomp.fortran/omp_cond1.f: Same.
11295 * testsuite/libgomp.fortran/omp_cond3.F90: Same.
11296 * testsuite/libgomp.fortran/pr66199-1.f90: Same.
11297 * testsuite/libgomp.fortran/pr66199-2.f90: Same.
11298 * testsuite/libgomp.fortran/recursion1.f90: Same.
11299 * testsuite/libgomp.fortran/target2.f90: Same.
11300 * testsuite/libgomp.fortran/target5.f90: Same.
11301 * testsuite/libgomp.fortran/task3.f90: Same.
11302
7d6206fe
TV
113032017-09-28 Tom de Vries <tom@codesourcery.com>
11304
11305 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c (main): Remove
11306 vector_length(32) clause from acc parallel directive.
11307 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c (main): Same.
11308
84c8627c
TV
113092017-09-27 Tom de Vries <tom@codesourcery.com>
11310
11311 * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c (main):
11312 Remove acc_device_nvidia references.
11313
ebc6a85e
TV
113142017-09-16 Tom de Vries <tom@codesourcery.com>
11315
11316 PR c/81875
11317 * testsuite/libgomp.c-c++-common/pr81875.c: New test.
11318
82419efb
TV
113192017-09-14 Tom de Vries <tom@codesourcery.com>
11320
11321 * testsuite/libgomp.c++/cancel-taskgroup-1.C: Remove.
11322 * testsuite/libgomp.c/cancel-taskgroup-1.c: Move to ...
11323 * testsuite/libgomp.c-c++-common/cancel-taskgroup-1.c: ... here.
11324 * testsuite/libgomp.c/c.exp: Include test-cases from
11325 libgomp.c-c++-common.
11326 * testsuite/libgomp.c++/c++.exp: Same. Force c++-mode compilation of .c
11327 files.
11328
8b586510
JJ
113292017-09-14 Jakub Jelinek <jakub@redhat.com>
11330
11331 PR c++/81314
11332 * testsuite/libgomp.c++/pr81314.C: New test.
11333
9651fbaf
GP
113342017-09-03 Gerald Pfeifer <gerald@pfeifer.com>
11335
11336 * libgomp.texi (Top): www.openacc.org now uses https.
11337 (Enabling OpenACC): Ditto.
11338 (acc_get_num_devices): Ditto.
11339 (acc_set_device_type): Ditto.
11340 (acc_get_device_type): Ditto.
11341 (acc_set_device_num): Ditto.
11342 (acc_get_device_num): Ditto.
11343 (acc_async_test): Ditto.
11344 (acc_async_test_all): Ditto.
11345 (acc_wait): Ditto.
11346 (acc_wait_all): Ditto.
11347 (acc_wait_all_async): Ditto.
11348 (acc_wait_async): Ditto.
11349 (acc_init): Ditto.
11350 (acc_shutdown): Ditto.
11351 (acc_on_device): Ditto.
11352 (acc_malloc): Ditto.
11353 (acc_free): Ditto.
11354 (acc_copyin): Ditto.
11355 (acc_present_or_copyin): Ditto.
11356 (acc_create): Ditto.
11357 (acc_present_or_create): Ditto.
11358 (acc_copyout): Ditto.
11359 (acc_delete): Ditto.
11360 (acc_update_device): Ditto.
11361 (acc_update_self): Ditto.
11362 (acc_map_data): Ditto.
11363 (acc_unmap_data): Ditto.
11364 (acc_deviceptr): Ditto.
11365 (acc_hostptr): Ditto.
11366 (acc_is_present): Ditto.
11367 (acc_memcpy_to_device): Ditto.
11368 (acc_memcpy_from_device): Ditto.
11369 (acc_get_current_cuda_device): Ditto.
11370 (acc_get_current_cuda_context): Ditto.
11371 (acc_get_cuda_stream): Ditto.
11372 (acc_set_cuda_stream): Ditto.
11373 (ACC_DEVICE_TYPE): Ditto.
11374 (ACC_DEVICE_NUM): Ditto.
11375 (OpenACC Library Interoperability): Ditto.
11376
50aa16c3
JJ
113772017-08-09 Jakub Jelinek <jakub@redhat.com>
11378
11379 PR c/81687
11380 * testsuite/libgomp.c/pr81687-1.c: New test.
11381 * testsuite/libgomp.c/pr81687-2.c: New test.
11382
56b5041c
JJ
113832017-08-07 Jakub Jelinek <jakub@redhat.com>
11384
11385 PR c/69389
11386 * testsuite/libgomp.c/pr69389.c: New test.
11387 * testsuite/libgomp.c++/pr69389.C: New test.
11388
f4c222c0
TV
113892017-08-07 Tom de Vries <tom@codesourcery.com>
11390
11391 PR middle-end/78266
11392 * testsuite/libgomp.oacc-c-c++-common/vprop-2.c: New test.
11393 * testsuite/libgomp.oacc-c-c++-common/vprop.c: Remove xfail.
11394
a40ff0ae
JJ
113952017-07-27 Jakub Jelinek <jakub@redhat.com>
11396
11397 PR c/45784
11398 * testsuite/libgomp.c/pr45784.c: New test.
11399 * testsuite/libgomp.c++/pr45784.C: New test.
11400
3717fbe3
TV
114012017-07-19 Tom de Vries <tom@codesourcery.com>
11402
11403 * testsuite/libgomp.oacc-c/vec.c: New test.
11404
9607b014
TV
114052017-07-03 Tom de Vries <tom@codesourcery.com>
11406
11407 * plugin/plugin-hsa.c: Fix secure_getenv.h include.
11408
dfb15f6b
TV
114092017-06-27 Tom de Vries <tom@codesourcery.com>
11410
11411 * plugin/plugin-nvptx.c (notify_var): New function.
11412 (nvptx_exec): Use notify_var for GOMP_OPENACC_DIM.
11413
22f1a037
TV
114142017-06-27 Tom de Vries <tom@codesourcery.com>
11415
11416 * env.c (parse_unsigned_long_1): Factor out of ...
11417 (parse_unsigned_long): ... here.
11418 (parse_int_1): Factor out of ...
11419 (parse_int): ... here.
11420 (parse_int_secure): New function.
11421 (initialize_env): Use parse_int_secure for GOMP_DEBUG.
11422 * secure_getenv.h: Factor out of ...
11423 * plugin/plugin-hsa.c: ... here.
11424 * testsuite/libgomp.oacc-c-c++-common/gomp-debug-env.c: New test.
11425
d54d1fc3
JJ
114262017-06-21 Jakub Jelinek <jakub@redhat.com>
11427
11428 PR c++/81130
11429 * testsuite/libgomp.c++/pr81130.C: New test.
11430
4f4b0ab8
RO
114312017-06-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
11432
11433 * testsuite/libgomp.fortran/strassen.f90: Remove dg-skip-if
11434 default args.
11435 * testsuite/libgomp.oacc-c-c++-common/vprop.c: Remove
11436 dg-xfail-run-if default args.
11437
40ffd95f
BE
114382017-06-02 Bernd Edlinger <bernd.edlinger@hotmail.de>
11439
11440 * testsuite/libgomp.c/pr39591-2.c: Fix test case.
11441 * testsuite/libgomp.c/pr39591-3.c: Likewise.
11442
01275e1e
JJ
114432017-05-30 Jakub Jelinek <jakub@redhat.com>
11444
11445 PR libgomp/80822
11446 * config/linux/affinity.c (gomp_affinity_init_level_1): New function.
11447 (gomp_affinity_init_level): Use it. Always analyze the core and thread
11448 sibling lists, depending on level just pick up what CPUs to put
11449 together into a place vs. whether add multiple ordered places.
11450
78672bd8
TS
114512017-05-24 Thomas Schwinge <thomas@codesourcery.com>
11452
7ce64403
TS
11453 * openacc.h (acc_async_wait, acc_async_wait_all): New prototypes.
11454 * libgomp.map (OACC_2.0.1): Add these.
11455 * oacc-async.c (acc_async_wait, acc_async_wait_all): New aliases
11456 for "acc_wait", and "acc_wait_all", respectively.
11457 * openacc.f90 (acc_async_wait, acc_async_wait_all): New interfaces
11458 for "acc_wait", and "acc_wait_all", respectively.
11459 * openacc_lib.h (acc_async_wait, acc_async_wait_all): Likewise.
11460 * libgomp.texi (acc_wait, acc_wait_all): Update.
11461 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Update.
11462 * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f: New file.
11463 * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
11464
318686c2
TS
11465 * openacc_lib.h (acc_pcopyin, acc_pcreate): Route to
11466 acc_present_or_copyin and acc_present_or_create procedures,
11467 respectively.
11468 * testsuite/libgomp.oacc-fortran/lib-32-1.f: Exercise these, and
11469 generally different variants of OpenACC Runtime Library functions.
11470 * testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
11471
a6745534
TS
11472 * testsuite/libgomp.oacc-fortran/lib-32-1.f: New file.
11473 * testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
11474
9b94fbc7
TS
11475 * openacc.h (acc_pcopyin, acc_pcreate): Provide prototypes instead
11476 of preprocessor definitions.
11477 * libgomp.h (strong_alias): Guard by "#ifdef
11478 HAVE_ATTRIBUTE_ALIAS".
11479 * oacc-mem.c: Provide "acc_pcreate" as alias for
11480 "acc_present_or_create", and "acc_pcopyin" as alias for
11481 "acc_present_or_copyin".
11482 * libgomp.map: New version "OACC_2.0.1".
11483 (OACC_2.0.1): Add "acc_pcopyin", and "acc_pcreate".
11484 * testsuite/libgomp.oacc-c-c++-common/lib-38.c: Remove, merging
11485 its content into...
11486 * testsuite/libgomp.oacc-c-c++-common/lib-32.c: ... this file.
11487 Extend testing.
11488
78672bd8
TS
11489 * plugin/plugin-nvptx.c (nvptx_get_num_devices): Debugging output
11490 when disabling nvptx offloading.
11491
0c36d0d5
TS
114922017-05-23 Thomas Schwinge <thomas@codesourcery.com>
11493
fd71a9a2
TS
11494 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: Update.
11495 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
11496 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Likewise.
11497
0c36d0d5
TS
11498 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Rewrite.
11499 * testsuite/lib/libgomp.exp
11500 (check_effective_target_openacc_nvidia_accel_configured): New
11501 proc.
11502 * testsuite/libgomp.oacc-c++/c++.exp (check_effective_target_c)
11503 (check_effective_target_c++): New procs.
11504 * testsuite/libgomp.oacc-c/c.exp (check_effective_target_c)
11505 (check_effective_target_c++): Likewise.
11506
c24783c4
JJ
115072017-05-22 Jakub Jelinek <jakub@redhat.com>
11508
655e5265
JJ
11509 PR middle-end/80809
11510 * testsuite/libgomp.c/pr80809-2.c: New test.
11511 * testsuite/libgomp.c/pr80809-3.c: New test.
11512
e9e2ef9f
JJ
11513 PR middle-end/80809
11514 * testsuite/libgomp.c/pr80809-1.c: New test.
11515
c24783c4
JJ
11516 PR middle-end/80853
11517 * testsuite/libgomp.c/pr80853.c: New test.
11518
0da2f96a
TS
115192017-05-19 Thomas Schwinge <thomas@codesourcery.com>
11520
7fd549d2
TS
11521 * testsuite/libgomp.oacc-c++/template-reduction.C: Update.
11522 * testsuite/libgomp.oacc-c-c++-common/nested-2.c: Update.
11523 * testsuite/libgomp.oacc-fortran/data-4-2.f90: Likewise.
11524 * testsuite/libgomp.oacc-fortran/default-1.f90: Likewise.
11525 * testsuite/libgomp.oacc-fortran/non-scalar-data.f90: Likewise.
11526
0da2f96a
TS
11527 * plugin/plugin-hsa.c (DLSYM_FN, init_hsa_runtime_functions):
11528 Debug output for failure.
11529
62ffe920
RO
115302017-05-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
11531
11532 * testsuite/lib/libgomp.exp: Load scanlang.exp.
11533
f49215b1
JJ
115342017-04-27 Jakub Jelinek <jakub@redhat.com>
11535
11536 PR bootstrap/80531
11537 * configure.tgt (*-*-aix*): Add -frandom-seed=$@ to XCFLAGS to avoid
11538 bootstrap compare failures.
11539
2260d19d
AM
115402017-04-20 Alexander Monakov <amonakov@ispras.ru>
11541
11542 * testsuite/libgomp.c/target-36.c: New testcase.
11543
19929ba9
JJ
115442017-04-13 Jakub Jelinek <jakub@redhat.com>
11545
11546 * plugin/plugin-nvptx.c (cuda_lib_inited): Use signed char type
11547 instead of char.
11548
fbc698e0
JJ
115492017-04-11 Jakub Jelinek <jakub@redhat.com>
11550
11551 PR libgomp/80394
11552 * testsuite/libgomp.c/pr80394.c: New test.
11553
c4060df4
JJ
115542017-04-04 Jakub Jelinek <jakub@redhat.com>
11555
11556 PR libgomp/79876
11557 * config/posix/thread-stacksize.h: New file.
11558 * config/darwin/thread-stacksize.h: New file.
11559 * config/nvptx/thread-stacksize.h: New file.
11560 * env.c: Include thread-stacksize.h.
11561 (initialize_env): Initialize stacksize to GOMP_DEFAULT_STACKSIZE
11562 instead of 0. Call pthread_attr_setstacksize even if
11563 GOMP_DEFAULT_STACKSIZE is non-zero.
11564
e02d868a
JJ
115652017-03-30 Jakub Jelinek <jakub@redhat.com>
11566
11567 * env.c (initialize_env): Initialize stacksize to 0.
11568
7ba8651e
CP
115692017-03-22 Cesar Philippidis <cesar@codesourcery.com>
11570
11571 PR c++/80029
11572 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: New test.
11573
eebc5e2d
JJ
115742017-03-08 Jakub Jelinek <jakub@redhat.com>
11575
11576 PR c/79940
11577 * testsuite/libgomp.c/pr79940.c: New test.
11578
1eb08f52
RO
115792017-02-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
11580
11581 * testsuite/libgomp.c/pr48591.c: Enable on all __float128
11582 targets.
11583 Add __float128 options.
11584
b0f78ff3
JDA
115852017-02-11 John David Anglin <danglin@gcc.gnu.org>
11586
11587 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Remove
11588 hppa*-*-* dg-skip-if directive.
11589
1bbe0d8f
JJ
115902017-02-09 Jakub Jelinek <jakub@redhat.com>
11591
11592 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Move
11593 dg-skip-if directive into a comment.
11594
02889d23
CLT
115952017-02-09 Nathan Sidwell <nathan@codesourcery.com>
11596 Chung-Lin Tang <cltang@codesourcery.com>
11597
11598 * testsuite/libgomp.oacc-c-c++-common/tile-1.c: New.
11599 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Adjust and
11600 add additional case.
11601 * testsuite/libgomp.oacc-c-c++-common/vprop.c: XFAIL under
11602 "openacc_nvidia_accel_selected".
11603 * libgomp.oacc-fortran/nested-function-1.f90 (test2):
11604 Add num_workers(8) clause.
11605
5896a41d
JDA
116062017-02-08 John David Anglin <danglin@gcc.gnu.org>
11607
11608 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Skip on
11609 hppa*-*-*.
11610 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Don't
11611 include complex.h on hppa*-*-hpux*.
11612 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Likewise.
11613
345a8c17
TS
116142017-02-02 Thomas Schwinge <thomas@codesourcery.com>
11615
e70ab10d
TS
11616 * plugin/plugin-nvptx.c (nvptx_exec): Make it static.
11617
345a8c17
TS
11618 * libgomp-plugin.h (GOMP_OFFLOAD_openacc_parallel): Rename to
11619 GOMP_OFFLOAD_openacc_exec. Adjust all users.
11620 (GOMP_OFFLOAD_openacc_get_current_cuda_device): Rename to
11621 GOMP_OFFLOAD_openacc_cuda_get_current_device. Adjust all users.
11622 (GOMP_OFFLOAD_openacc_get_current_cuda_context): Rename to
11623 GOMP_OFFLOAD_openacc_cuda_get_current_context. Adjust all users.
11624 (GOMP_OFFLOAD_openacc_get_cuda_stream): Rename to
11625 GOMP_OFFLOAD_openacc_cuda_get_stream. Adjust all users.
11626 (GOMP_OFFLOAD_openacc_set_cuda_stream): Rename to
11627 GOMP_OFFLOAD_openacc_cuda_set_stream. Adjust all users.
11628
dced339c
TS
116292017-01-31 Thomas Schwinge <thomas@codesourcery.com>
11630
11631 * libgomp-plugin.h: #include <stdbool.h>.
11632 (GOMP_OFFLOAD_get_name, GOMP_OFFLOAD_get_caps)
11633 (GOMP_OFFLOAD_get_type, GOMP_OFFLOAD_get_num_devices)
11634 (GOMP_OFFLOAD_init_device, GOMP_OFFLOAD_fini_device)
11635 (GOMP_OFFLOAD_version, GOMP_OFFLOAD_load_image)
11636 (GOMP_OFFLOAD_unload_image, GOMP_OFFLOAD_alloc, GOMP_OFFLOAD_free)
11637 (GOMP_OFFLOAD_dev2host, GOMP_OFFLOAD_host2dev)
11638 (GOMP_OFFLOAD_dev2dev, GOMP_OFFLOAD_can_run, GOMP_OFFLOAD_run)
11639 (GOMP_OFFLOAD_async_run, GOMP_OFFLOAD_openacc_parallel)
11640 (GOMP_OFFLOAD_openacc_register_async_cleanup)
11641 (GOMP_OFFLOAD_openacc_async_test)
11642 (GOMP_OFFLOAD_openacc_async_test_all)
11643 (GOMP_OFFLOAD_openacc_async_wait)
11644 (GOMP_OFFLOAD_openacc_async_wait_async)
11645 (GOMP_OFFLOAD_openacc_async_wait_all)
11646 (GOMP_OFFLOAD_openacc_async_wait_all_async)
11647 (GOMP_OFFLOAD_openacc_async_set_async)
11648 (GOMP_OFFLOAD_openacc_create_thread_data)
11649 (GOMP_OFFLOAD_openacc_destroy_thread_data)
11650 (GOMP_OFFLOAD_openacc_get_current_cuda_device)
11651 (GOMP_OFFLOAD_openacc_get_current_cuda_context)
11652 (GOMP_OFFLOAD_openacc_get_cuda_stream)
11653 (GOMP_OFFLOAD_openacc_set_cuda_stream): New prototypes.
11654 * libgomp.h (struct acc_dispatch_t, struct gomp_device_descr): Use
11655 these.
11656 * plugin/plugin-hsa.c (GOMP_OFFLOAD_load_image)
11657 (GOMP_OFFLOAD_unload_image): Fix argument types.
11658
23749904
JJ
116592017-01-26 Jakub Jelinek <jakub@redhat.com>
11660
c1cadde1
JJ
11661 * testsuite/lib/libgomp.exp
11662 (check_effective_target_hsa_offloading_selected_nocache): Fix up
11663 check_compile invocation. Fix up removal of executable. Drop
11664 bogus "2>&1" argument.
11665
23749904
JJ
11666 * testsuite/libgomp.fortran/declare-simd-4.f90: Add cleanup-modules
11667 directive.
11668
116692017-01-24 Pekka Jääskeläinen <pekka@parmance.com>
5fd1486c
PJ
11670 Martin Jambor <mjambor@suse.cz>
11671
11672 * plugin/hsa.h: Moved to top level include.
11673 * plugin/plugin-hsa.c: Chanfgd include of hsa.h accordingly.
11674
73aa401e
JJ
116752017-01-21 Jakub Jelinek <jakub@redhat.com>
11676
11677 PR other/79046
11678 * testsuite/Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead
11679 of cat to get version from BASE-VER file.
11680 * testsuite/Makefile.in: Regenerated.
11681
b32e85fa
JJ
116822017-01-19 Jakub Jelinek <jakub@redhat.com>
11683
11684 * plugin/cuda/cuda.h (CUdeviceptr): Typedef to unsigned long long even
11685 for _WIN64.
11686
3c36aa6b
JJ
116872017-01-17 Jakub Jelinek <jakub@redhat.com>
11688
d190d5c0
JJ
11689 * plugin/hsa.h: Add GCC runtime library exception.
11690 * plugin/hsa_ext_finalize.h: Likewise.
11691
2393d337
JJ
11692 * plugin/configfrag.ac: For --without-cuda-driver don't initialize
11693 CUDA_DRIVER_INCLUDE nor CUDA_DRIVER_LIB. If both
11694 CUDA_DRIVER_INCLUDE and CUDA_DRIVER_LIB are empty and linking small
11695 cuda program fails, define PLUGIN_NVPTX_DYNAMIC to 1 and use
11696 plugin/include/cuda as include dir and -ldl instead of -lcuda as
11697 library to link ptx plugin against.
11698 * plugin/plugin-nvptx.c: Include dlfcn.h if PLUGIN_NVPTX_DYNAMIC.
11699 (CUDA_CALLS): Define.
11700 (cuda_lib, cuda_lib_inited): New variables.
11701 (init_cuda_lib): New function.
11702 (CUDA_CALL_PREFIX): Define.
11703 (CUDA_CALL_ERET, CUDA_CALL_ASSERT): Use CUDA_CALL_PREFIX.
11704 (CUDA_CALL): Use FN instead of (FN).
11705 (CUDA_CALL_NOCHECK): Define.
11706 (cuda_error, fini_streams_for_device, select_stream_for_async,
11707 nvptx_attach_host_thread_to_device, nvptx_open_device, link_ptx,
11708 event_gc, nvptx_exec, nvptx_async_test, nvptx_async_test_all,
11709 nvptx_wait_all, nvptx_set_clocktick, GOMP_OFFLOAD_unload_image,
11710 nvptx_stacks_alloc, nvptx_stacks_free, GOMP_OFFLOAD_run): Use
11711 CUDA_CALL_NOCHECK.
11712 (nvptx_init): Call init_cuda_lib, if it fails, return false. Use
11713 CUDA_CALL_NOCHECK.
11714 (nvptx_get_num_devices): Call init_cuda_lib, if it fails, return 0.
11715 Use CUDA_CALL_NOCHECK.
11716 * plugin/cuda/cuda.h: New file.
11717 * config.h.in: Regenerated.
11718 * configure: Regenerated.
11719
3c36aa6b
JJ
11720 PR other/79046
11721 * configure.ac: Add GCC_BASE_VER.
11722 * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
11723 get version from BASE-VER file.
11724 * testsuite/Makefile.in: Regenerated.
11725 * configure: Regenerated.
11726 * Makefile.in: Regenerated.
11727
c508bc2d
FXC
117282017-01-09 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
11729
11730 PR libgomp/60670
11731 * Makefile.am: Make fincludedir multilib-aware.
11732 * Makefile.in: Regenerate.
11733
c1a9c369
JJ
117342017-01-01 Jakub Jelinek <jakub@redhat.com>
11735
cbe34bb5
JJ
11736 Update copyright years.
11737
c1a9c369
JJ
11738 * libgomp.texi: Bump @copying's copyright year.
11739
e7a7f4be
SH
117402016-12-02 Sebastian Huber <sebastian.huber@embedded-brains.de>
11741
11742 * libgomp/config/rtems/pool.h (gomp_thread_pool_reservoir): Use
11743 pthread_spinlock_t instead of gomp_mutex_t lock.
11744 (gomp_get_thread_pool): Likewise.
11745 (gomp_release_thread_pool): Likewise.
11746 * libgomp/config/rtems/proc.c (allocate_thread_pool_reservoir):
11747 Likewise.
11748
d313d52c
SH
117492016-12-02 Sebastian Huber <sebastian.huber@embedded-brains.de>
11750
11751 * config/rtems/pool.h (gomp_get_thread_pool): Return proper
11752 thread pool in case nthreads == 1.
11753
630e3c3a
AM
117542016-11-30 Alexander Monakov <amonakov@ispras.ru>
11755
11756 * config/nvptx/env.c: Delete.
11757 * icv.c: Move definitions of ICV variables back ...
11758 * env.c: ...here. Do not compile environment-related functionality if
11759 LIBGOMP_OFFLOADED_ONLY is set.
11760
9e38af5c
AM
117612016-11-30 Alexander Monakov <amonakov@ispras.ru>
11762
11763 * configure.ac [nvptx*-*-*] (libgomp_offloaded_only): Set and use it...
11764 (LIBGOMP_OFFLOADED_ONLY): ...here; new define.
11765 * configure: Regenerate.
11766 * config.h.in: Likewise.
11767
f96b7f1f
AM
117682016-11-30 Alexander Monakov <amonakov@ispras.ru>
11769
11770 * Makefile.in: Regenerate with automake-1.11.6.
11771 * aclocal.m4: Likewise.
11772 * configure: Likewise.
11773 * testsuite/Makefile.in: Likewise.
11774
6a6951b1
AM
117752016-11-28 Alexander Monakov <amonakov@ispras.ru>
11776
11777 * config/nvptx/critical.c: Delete to use generic implementation.
11778
c7ac071f
JH
117792016-11-28 Jonas Hahnfeld <Hahnfeld@itc.rwth-aachen.de>
11780
11781 * config/linux/affinity.c [!HAVE_PTHREAD_AFFINITY_NP]: Include
11782 ../../affinity.c as fallback.
11783 * config/nvptx/affinity.c: Delete to use fallback implementation.
11784
6103184e 117852016-11-23 Alexander Monakov <amonakov@ispras.ru>
92a285c1 11786 Jakub Jelinek <jakub@redhat.com>
6103184e
AM
11787 Dmitry Melnik <dm@ispras.ru>
11788
11789 * Makefile.am (libgomp_la_SOURCES): Add atomic.c, icv.c, icv-device.c.
11790 * Makefile.in. Regenerate.
11791 * configure.ac [nvptx*-*-*] (libgomp_use_pthreads): Set and use it...
11792 (LIBGOMP_USE_PTHREADS): ...here; new define.
11793 * configure: Regenerate.
11794 * config.h.in: Likewise.
11795 * config/posix/affinity.c: Move to...
11796 * affinity.c: ...here (new file). Guard use of Pthreads-specific
11797 interface by LIBGOMP_USE_PTHREADS.
11798 * critical.c: Split out GOMP_atomic_{start,end} into...
11799 * atomic.c: ...here (new file).
11800 * env.c: Split out ICV definitions into...
11801 * icv.c: ...here (new file) and...
11802 * icv-device.c: ...here. New file.
11803 * config/linux/lock.c (gomp_init_lock_30): Move to generic lock.c.
11804 (gomp_destroy_lock_30): Ditto.
11805 (gomp_set_lock_30): Ditto.
11806 (gomp_unset_lock_30): Ditto.
11807 (gomp_test_lock_30): Ditto.
11808 (gomp_init_nest_lock_30): Ditto.
11809 (gomp_destroy_nest_lock_30): Ditto.
11810 (gomp_set_nest_lock_30): Ditto.
11811 (gomp_unset_nest_lock_30): Ditto.
11812 (gomp_test_nest_lock_30): Ditto.
11813 * lock.c: New.
11814 * config/nvptx/lock.c: New.
11815 * config/nvptx/bar.c: New.
11816 * config/nvptx/bar.h: New.
11817 * config/nvptx/doacross.h: New.
11818 * config/nvptx/error.c: New.
11819 * config/nvptx/icv-device.c: New.
11820 * config/nvptx/mutex.h: New.
11821 * config/nvptx/pool.h: New.
11822 * config/nvptx/proc.c: New.
11823 * config/nvptx/ptrlock.h: New.
11824 * config/nvptx/sem.h: New.
11825 * config/nvptx/simple-bar.h: New.
11826 * config/nvptx/target.c: New.
11827 * config/nvptx/task.c: New.
11828 * config/nvptx/team.c: New.
11829 * config/nvptx/time.c: New.
11830 * config/posix/simple-bar.h: New.
11831 * libgomp.h: Guard pthread.h inclusion. Include simple-bar.h.
11832 (gomp_num_teams_var): Declare.
11833 (struct gomp_thread_pool): Change threads_dock member to
11834 gomp_simple_barrier_t.
11835 [__nvptx__] (gomp_thread): New implementation.
11836 (gomp_thread_attr): Guard by LIBGOMP_USE_PTHREADS.
11837 (gomp_thread_destructor): Ditto.
11838 (gomp_init_thread_affinity): Ditto.
11839 * team.c: Guard uses of Pthreads-specific interfaces by
11840 LIBGOMP_USE_PTHREADS. Adjust all uses of threads_dock.
11841 (gomp_free_thread) [__nvptx__]: Do not call 'free'.
11842 * config/nvptx/alloc.c: Delete.
11843 * config/nvptx/barrier.c: Ditto.
11844 * config/nvptx/fortran.c: Ditto.
11845 * config/nvptx/iter.c: Ditto.
11846 * config/nvptx/iter_ull.c: Ditto.
11847 * config/nvptx/loop.c: Ditto.
11848 * config/nvptx/loop_ull.c: Ditto.
11849 * config/nvptx/ordered.c: Ditto.
11850 * config/nvptx/parallel.c: Ditto.
11851 * config/nvptx/priority_queue.c: Ditto.
11852 * config/nvptx/sections.c: Ditto.
11853 * config/nvptx/single.c: Ditto.
11854 * config/nvptx/splay-tree.c: Ditto.
11855 * config/nvptx/work.c: Ditto.
11856 * testsuite/libgomp.fortran/fortran.exp (lang_link_flags): Pass
11857 -foffload=-lgfortran in addition to -lgfortran.
11858 * testsuite/libgomp.oacc-fortran/fortran.exp (lang_link_flags): Ditto.
11859 * plugin/plugin-nvptx.c: Include <limits.h>.
11860 (struct targ_fn_descriptor): Add new fields.
11861 (struct ptx_device): Ditto. Set them...
11862 (nvptx_open_device): ...here.
11863 (nvptx_adjust_launch_bounds): New.
11864 (nvptx_host2dev): Allow NULL 'nvthd'.
11865 (nvptx_dev2host): Ditto.
11866 (GOMP_OFFLOAD_get_caps): Add GOMP_OFFLOAD_CAP_OPENMP_400.
11867 (link_ptx): Adjust log sizes.
11868 (nvptx_host2dev): Allow NULL 'nvthd'.
11869 (nvptx_dev2host): Ditto.
11870 (nvptx_set_clocktick): New. Use it...
11871 (GOMP_OFFLOAD_load_image): ...here. Set new targ_fn_descriptor
11872 fields.
11873 (GOMP_OFFLOAD_dev2dev): New.
11874 (nvptx_adjust_launch_bounds): New.
11875 (nvptx_stacks_size): New.
11876 (nvptx_stacks_alloc): New.
11877 (nvptx_stacks_free): New.
11878 (GOMP_OFFLOAD_run): New.
11879 (GOMP_OFFLOAD_async_run): New (stub).
11880
56b1c60e
MJ
118812016-11-23 Martin Jambor <mjambor@suse.cz>
11882
11883 * testsuite/libgomp.hsa.c/bits-insns.c: New test.
11884 * testsuite/libgomp.hsa.c/tiling-1.c: Likewise.
11885 * testsuite/libgomp.hsa.c/tiling-2.c: Likewise.
11886
b8d89b03 118872016-11-23 Martin Liska <mliska@suse.cz>
92a285c1 11888 Martin Jambor <mjambor@suse.cz>
b8d89b03
ML
11889
11890 * plugin/hsa.h: New file.
11891 * plugin/hsa_ext_finalize.h: New file.
11892 * plugin/configfrag.ac: Remove hsa-kmt-lib test. Added checks for
11893 header file unistd.h, and functions secure_getenv, __secure_getenv,
11894 getuid, geteuid, getgid and getegid.
11895 * plugin/Makefrag.am (libgomp_plugin_hsa_la_CPPFLAGS): Added
11896 -D_GNU_SOURCE.
11897 * plugin/plugin-hsa.c: Include config.h, inttypes.h and stdbool.h.
11898 Handle various cases of secure_getenv presence, add an implementation
11899 when we can test effective UID and GID.
11900 (struct hsa_runtime_fn_info): New structure.
11901 (hsa_runtime_fn_info hsa_fns): New variable.
11902 (hsa_runtime_lib): Likewise.
11903 (support_cpu_devices): Likewise.
11904 (init_enviroment_variables): Load newly introduced ENV
11905 variables.
11906 (hsa_warn): Call hsa run-time functions via hsa_fns structure.
11907 (hsa_fatal): Likewise.
11908 (DLSYM_FN): New macro.
11909 (init_hsa_runtime_functions): New function.
11910 (suitable_hsa_agent_p): Call hsa run-time functions via hsa_fns
11911 structure. Depending on environment, also allow CPU devices.
11912 (init_hsa_context): Call hsa run-time functions via hsa_fns structure.
11913 (get_kernarg_memory_region): Likewise.
11914 (GOMP_OFFLOAD_init_device): Likewise.
11915 (destroy_hsa_program): Likewise.
11916 (init_basic_kernel_info): New function.
11917 (GOMP_OFFLOAD_load_image): Use it.
11918 (create_and_finalize_hsa_program): Call hsa run-time functions via
11919 hsa_fns structure.
11920 (create_single_kernel_dispatch): Likewise.
11921 (release_kernel_dispatch): Likewise.
11922 (init_single_kernel): Likewise.
11923 (parse_target_attributes): Allow up multiple HSA grid dimensions.
11924 (get_group_size): New function.
11925 (run_kernel): Likewise.
11926 (GOMP_OFFLOAD_run): Outline most functionality to run_kernel.
11927 (GOMP_OFFLOAD_fini_device): Call hsa run-time functions via hsa_fns
11928 structure.
11929 * testsuite/lib/libgomp.exp: Remove hsa_kmt_lib support.
11930 * testsuite/libgomp-test-support.exp.in: Likewise.
11931 * Makefile.in: Regenerated.
11932 * aclocal.m4: Likewise.
11933 * config.h.in: Likewise.
11934 * configure: Likewise.
11935 * testsuite/Makefile.in: Likewise.
11936
18d2ada8 119372016-11-15 Martin Jambor <mjambor@suse.cz>
92a285c1 11938 Alexander Monakov <amonakov@ispras.ru>
18d2ada8
MJ
11939
11940 * testsuite/libgomp.fortran/examples-4/device-1.f90 (e_57_1): Add
11941 mapping clauses to target constructs.
11942 * testsuite/libgomp.fortran/examples-4/device-3.f90 (e_57_3): Ditto.
11943
84c1b9d3
MK
119442016-11-15 Matthias Klose <doko@ubuntu.com>
11945
11946 * configure: Regenerate.
11947
b4c3a85b
JJ
119482016-11-10 Jakub Jelinek <jakub@redhat.com>
11949
8ebd1b31
JJ
11950 * omp_lib.f90.in (openmp_version): Change to 201511 from 201307.
11951 * omp_lib.h.in (openmp_version): Likewise.
11952 * testsuite/libgomp.fortran/openmp_version-1.f: Expect 201511 instead
11953 of 201307.
11954 * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
11955
b4c3a85b
JJ
11956 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90
11957 (fib_wrapper): Add map(from: x) clause.
11958 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90
11959 (e_53_2): Likewise.
11960 * testsuite/libgomp.fortran/examples-4/declare_target-4.f90
11961 (accum): Add map(tmp) clause.
11962 * testsuite/libgomp.fortran/examples-4/declare_target-5.f90
11963 (accum): Add map(tofrom: tmp) clause.
11964 * testsuite/libgomp.fortran/examples-4/target_data-3.f90
11965 (gramSchmidt): Likewise.
11966 * testsuite/libgomp.fortran/examples-4/teams-2.f90 (dotprod): Add
11967 map(tofrom: sum) clause.
11968 * testsuite/libgomp.fortran/nestedfn5.f90 (foo): Add twice
11969 map (alloc: a, l) clause. Add defaultmap(tofrom: scalar) clause.
11970 * testsuite/libgomp.fortran/pr66199-2.f90: Adjust for linear clause
11971 only allowed on the loop iterator.
11972 * testsuite/libgomp.fortran/target4.f90 (foo): Add map(t) clause.
11973 * testsuite/libgomp.fortran/taskloop2.f90: New test.
11974 * testsuite/libgomp.fortran/taskloop4.f90: New test.
11975 * testsuite/libgomp.fortran/doacross1.f90: New test.
11976 * testsuite/libgomp.fortran/doacross3.f90: New test.
11977 * testsuite/libgomp.fortran/taskloop1.f90: New test.
11978 * testsuite/libgomp.fortran/taskloop3.f90: New test.
11979 * testsuite/libgomp.fortran/doacross2.f90: New test.
11980 * testsuite/libgomp.c/doacross-1.c (main): Add missing
11981 #pragma omp atomic read.
11982 * testsuite/libgomp.c/doacross-2.c (main): Likewise.
11983 * testsuite/libgomp.c/doacross-3.c (main): Likewise.
11984
6668eb45
CP
119852016-11-02 Cesar Philippidis <cesar@codesourcery.com>
11986 Nathan Sidwell <nathan@acm.org>
11987
11988 * plugin/plugin-nvptx.c (nvptx_exec): Interrogate board attributes
11989 to determine default geometry.
11990 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Set gang
11991 dimension.
11992
f10e37a1
JJ
119932016-11-01 Jakub Jelinek <jakub@redhat.com>
11994
11995 * hashtab.h: Use standard GPLv3 with runtime exception
11996 boilerplate.
11997
015c7760
AH
119982016-10-27 Aldy Hernandez <aldyh@redhat.com>
11999
12000 * oacc-init.c (goacc_new_thread): Use sizeof of the appropriate
12001 size when allocating new thread.
12002
20a1e5b8
MP
120032016-09-14 Marek Polacek <polacek@redhat.com>
12004
12005 * testsuite/libgomp.c++/atomic-3.C: Use -Wno-deprecated.
12006
1cad9284
JJ
120072016-08-19 Jakub Jelinek <jakub@redhat.com>
12008
12009 PR fortran/71014
12010 * testsuite/libgomp.fortran/pr71014.f90: New test.
12011
2c71d454
CLT
120122016-08-18 Chung-Lin Tang <cltang@codesourcery.com>
12013
12014 PR middle-end/70895
12015 * testsuite/libgomp.oacc-fortran/reduction-7.f90: Add explicit
12016 firstprivate clauses.
12017 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Remove explicit
12018 copy clauses.
12019 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: Likewise.
12020 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Likewise.
12021 * testsuite/libgomp.oacc-c-c++-common/reduction-flt.c: Likewise.
12022 * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Likewise.
12023 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Likewise.
12024 * testsuite/libgomp.oacc-c-c++-common/collapse-4.c: Likewise.
12025 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
12026 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Likewise.
12027 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
12028 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
12029 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
12030 * testsuite/libgomp.oacc-c-c++-common/reduction-dbl.c: Likewise.
12031
7c713714
CLT
120322016-08-14 Chung-Lin Tang <cltang@codesourcery.com>
12033
12034 PR fortran/70598
12035 * testsuite/libgomp.oacc-fortran/host_data-1.f90: New test.
12036
5c934396
JJ
120372016-08-08 Jakub Jelinek <jakub@redhat.com>
12038
12039 PR c++/58706
12040 * testsuite/libgomp.c++/pr58706.C: New test.
12041
9ef64248
TS
120422016-08-04 Thomas Schwinge <thomas@codesourcery.com>
12043
bbc79c0e
TS
12044 * testsuite/libgomp.oacc-c++/routine-1-auto.C: New file.
12045 * testsuite/libgomp.oacc-c++/routine-1-template-auto.C: Likewise.
12046 * testsuite/libgomp.oacc-c++/routine-1-template-trailing-return-type.C:
12047 Likewise.
12048 * testsuite/libgomp.oacc-c++/routine-1-template.C: Likewise.
12049 * testsuite/libgomp.oacc-c++/routine-1-trailing-return-type.C:
12050 Likewise.
12051 * testsuite/libgomp.oacc-c-c++-common/routine-1.c: Adjust.
12052
9ef64248
TS
12053 * testsuite/libgomp.oacc-c-c++-common/crash-1.c: Make it a "link"
12054 test, and don't hardcode -O0.
12055
c1311c86
NS
120562016-08-03 Nathan Sidwell <nathan@codesourcery.com>
12057
12058 * testsuite/libgomp.oacc-c-c++-common/crash-1.c: New.
12059
b1c9c068
CP
120602016-07-15 Cesar Philippidis <cesar@codesourcery.com>
12061
12062 * testsuite/libgomp.oacc-c-c++-common/zero_length_subarrays.c: New
12063 test.
12064
b4410f63
L
120652016-07-03 H.J. Lu <hongjiu.lu@intel.com>
12066
12067 PR middle-end/71734
12068 * testsuite/libgomp.fortran/pr71734-1.f90: New test.
12069 * testsuite/libgomp.fortran/pr71734-2.f90: Likewise.
12070
a8dbab92
JJ
120712016-07-01 Jakub Jelinek <jakub@redhat.com>
12072
12073 PR fortran/71717
12074 * testsuite/libgomp.fortran/associate3.f90: New test.
12075
9b6a8d0f
JJ
120762016-06-17 Jakub Jelinek <jakub@redhat.com>
12077
12078 * testsuite/libgomp.c++/target-21.C: New test.
12079
283635f9
JJ
120802016-06-16 Jakub Jelinek <jakub@redhat.com>
12081
12082 * testsuite/libgomp.c++/target-20.C: New test.
12083
27d6ba88
TS
120842016-06-10 Thomas Schwinge <thomas@codesourcery.com>
12085 Cesar Philippidis <cesar@codesourcery.com>
12086
12087 PR middle-end/71373
12088 * libgomp.oacc-c/nested-function-1.c: New file.
12089 * libgomp.oacc-c/nested-function-2.c: Likewise.
12090 * libgomp.oacc-fortran/nested-function-1.f90: Likewise.
12091 * libgomp.oacc-fortran/nested-function-2.f90: Likewise.
12092 * libgomp.oacc-fortran/nested-function-3.f90: Likewise.
12093
4b1ffdb1
TS
120942016-06-10 Thomas Schwinge <thomas@codesourcery.com>
12095
12096 PR c/71381
12097 * testsuite/libgomp.oacc-c-c++-common/cache-1.c: #include
12098 "../../../gcc/testsuite/c-c++-common/goacc/cache-1.c".
12099 * testsuite/libgomp.oacc-fortran/cache-1.f95: New file.
12100
d821b794
CLT
121012016-06-03 Chung-Lin Tang <cltang@codesourcery.com>
12102
12103 * testsuite/libgomp.oacc-fortran/reduction-8.f90: New testcase.
12104 * testsuite/libgomp.oacc-c-c++-common/reduction-8.c: New testcase.
12105
3616a8c5
CP
121062016-06-01 Cesar Philippidis <cesar@codesourcery.com>
12107
12108 PR c/70688
5eed9a88 12109 * testsuite/libgomp.oacc-c-c++-common/pr70688.c: New file.
3616a8c5 12110
7211a097
JJ
121112016-05-26 Jakub Jelinek <jakub@redhat.com>
12112
12113 * testsuite/libgomp.c/doacross-1.c (main): Use schedule(static)
12114 instead of invalid schedule(static, 0).
12115 * testsuite/libgomp.c/doacross-2.c (main): Likewise.
12116
b4557008
CLT
121172016-05-26 Chung-Lin Tang <cltang@codesourcery.com>
12118
12119 * oacc-plugin.h (GOMP_PLUGIN_async_unmap_vars): Add int parameter.
12120 * oacc-plugin.c (GOMP_PLUGIN_async_unmap_vars): Add 'int async'
12121 parameter, use to set async stream around call to gomp_unmap_vars,
12122 call gomp_unmap_vars() with 'do_copyfrom' set to true.
12123 * plugin/plugin-nvptx.c (struct ptx_event): Add 'int val' field.
12124 (event_gc): Adjust event handling loop, collect PTX_EVT_ASYNC_CLEANUP
12125 events and call GOMP_PLUGIN_async_unmap_vars() for each of them.
12126 (event_add): Add int parameter, initialize 'val' field when
12127 adding new ptx_event struct.
12128 (nvptx_evec): Adjust event_add() call arguments.
12129 (nvptx_host2dev): Likewise.
12130 (nvptx_dev2host): Likewise.
12131 (nvptx_wait_async): Likewise.
12132 (nvptx_wait_all_async): Likewise.
12133 (GOMP_OFFLOAD_openacc_register_async_cleanup): Add async parameter,
12134 pass to event_add() call.
12135 * oacc-host.c (host_openacc_register_async_cleanup): Add 'int async'
12136 parameter.
12137 * oacc-mem.c (gomp_acc_remove_pointer): Adjust async case to
12138 call openacc.register_async_cleanup_func() hook.
12139 * oacc-parallel.c (GOACC_parallel_keyed): Likewise.
12140 * target.c (gomp_copy_from_async): Delete function.
12141 (gomp_map_vars): Remove async_refcount.
12142 (gomp_unmap_vars): Likewise.
12143 (gomp_load_image_to_device): Likewise.
12144 (omp_target_associate_ptr): Likewise.
12145 * libgomp.h (struct splay_tree_key_s): Remove async_refcount.
12146 (acc_dispatch_t.register_async_cleanup_func): Add int parameter.
12147 (gomp_copy_from_async): Remove.
12148
6ce13072
CLT
121492016-05-26 Chung-Lin Tang <cltang@codesourcery.com>
12150
12151 * target.c (gomp_device_copy): New function.
12152 (gomp_copy_host2dev): Likewise.
12153 (gomp_copy_dev2host): Likewise.
12154 (gomp_free_device_memory): Likewise.
12155 (gomp_map_vars_existing): Adjust to call gomp_copy_host2dev.
12156 (gomp_map_pointer): Likewise.
12157 (gomp_map_vars): Adjust to call gomp_copy_host2dev, handle
12158 NULL value from alloc_func plugin hook.
12159 (gomp_unmap_tgt): Adjust to call gomp_free_device_memory.
12160 (gomp_copy_from_async): Adjust to call gomp_copy_dev2host.
12161 (gomp_unmap_vars): Likewise.
12162 (gomp_update): Adjust to call gomp_copy_dev2host and
12163 gomp_copy_host2dev functions.
12164 (gomp_unload_image_from_device): Handle false value from
12165 unload_image_func plugin hook.
12166 (gomp_init_device): Handle false value from init_device_func
12167 plugin hook.
12168 (gomp_exit_data): Adjust to call gomp_copy_dev2host.
12169 (omp_target_free): Adjust to call gomp_free_device_memory.
12170 (omp_target_memcpy): Handle return values from host2dev_func,
12171 dev2host_func, and dev2dev_func plugin hooks.
12172 (omp_target_memcpy_rect_worker): Likewise.
12173 (gomp_target_fini): Handle false value from fini_device_func
12174 plugin hook.
12175 * libgomp.h (struct gomp_device_descr): Adjust return type of
12176 init_device_func, fini_device_func, unload_image_func, free_func,
12177 dev2host_func,host2dev_func, and dev2dev_func plugin hooks to 'bool'.
12178 * oacc-init.c (acc_shutdown_1): Handle false value from
12179 fini_device_func plugin hook.
12180 * oacc-host.c (host_init_device): Change return type to bool.
12181 (host_fini_device): Likewise.
12182 (host_unload_image): Likewise.
12183 (host_free): Likewise.
12184 (host_dev2host): Likewise.
12185 (host_host2dev): Likewise.
12186 * oacc-mem.c (acc_free): Handle plugin hook fatal error case.
12187 (acc_memcpy_to_device): Likewise.
12188 (acc_memcpy_from_device): Likewise.
12189 (delete_copyout): Add libfnname parameter, handle free_func
12190 hook fatal error case.
12191 (acc_delete): Adjust delete_copyout call.
12192 (acc_copyout): Likewise.
12193 (update_dev_host): Move gomp_mutex_unlock to after
12194 host2dev/dev2host hook calls.
12195
12196 * plugin/plugin-hsa.c (hsa_warn): Adjust 'hsa_error' local variable
12197 to 'hsa_error_msg', for clarity.
12198 (hsa_fatal): Likewise.
12199 (hsa_error): New function.
12200 (init_hsa_context): Change return type to bool, adjust to return
12201 false on error.
12202 (GOMP_OFFLOAD_get_num_devices): Adjust to handle init_hsa_context
12203 return value.
12204 (GOMP_OFFLOAD_init_device): Change return type to bool, adjust to
12205 return false on error.
12206 (get_agent_info): Adjust to return NULL on error.
12207 (destroy_hsa_program): Change return type to bool, adjust to
12208 return false on error.
12209 (GOMP_OFFLOAD_load_image): Adjust to return -1 on error.
12210 (destroy_module): Change return type to bool, adjust to
12211 return false on error.
12212 (GOMP_OFFLOAD_unload_image): Likewise.
12213 (GOMP_OFFLOAD_fini_device): Likewise.
12214 (GOMP_OFFLOAD_alloc): Change to return NULL when called.
12215 (GOMP_OFFLOAD_free): Change to return false when called.
12216 (GOMP_OFFLOAD_dev2host): Likewise.
12217 (GOMP_OFFLOAD_host2dev): Likewise.
12218 (GOMP_OFFLOAD_dev2dev): Likewise.
12219
12220 * plugin/plugin-nvptx.c (CUDA_CALL_ERET): New convenience macro.
12221 (CUDA_CALL): Likewise.
12222 (CUDA_CALL_ASSERT): Likewise.
12223 (map_init): Change return type to bool, use CUDA_CALL* macros.
12224 (map_fini): Likewise.
12225 (init_streams_for_device): Change return type to bool, adjust
12226 call to map_init.
12227 (fini_streams_for_device): Change return type to bool, adjust
12228 call to map_fini.
12229 (select_stream_for_async): Release stream_lock before calls to
12230 GOMP_PLUGIN_fatal, adjust call to map_init.
12231 (nvptx_init): Use CUDA_CALL* macros.
12232 (nvptx_attach_host_thread_to_device): Change return type to bool,
12233 use CUDA_CALL* macros.
12234 (nvptx_open_device): Use CUDA_CALL* macros.
12235 (nvptx_close_device): Change return type to bool, use CUDA_CALL*
12236 macros.
12237 (nvptx_get_num_devices): Use CUDA_CALL* macros.
12238 (link_ptx): Change return type to bool, use CUDA_CALL* macros.
12239 (nvptx_exec): Use CUDA_CALL* macros.
12240 (nvptx_alloc): Use CUDA_CALL* macros.
12241 (nvptx_free): Change return type to bool, use CUDA_CALL* macros.
12242 (nvptx_host2dev): Likewise.
12243 (nvptx_dev2host): Likewise.
12244 (nvptx_wait): Use CUDA_CALL* macros.
12245 (nvptx_wait_async): Likewise.
12246 (nvptx_wait_all): Likewise.
12247 (nvptx_wait_all_async): Likewise.
12248 (nvptx_set_cuda_stream): Adjust order of stream_lock acquire,
12249 use CUDA_CALL* macros, adjust call to map_fini.
12250 (GOMP_OFFLOAD_init_device): Change return type to bool,
12251 adjust code accordingly.
12252 (GOMP_OFFLOAD_fini_device): Likewise.
12253 (GOMP_OFFLOAD_load_image): Adjust calls to
12254 nvptx_attach_host_thread_to_device/link_ptx to handle errors,
12255 use CUDA_CALL* macros.
12256 (GOMP_OFFLOAD_unload_image): Change return type to bool, adjust
12257 return code.
12258 (GOMP_OFFLOAD_alloc): Adjust calls to code to handle error return.
12259 (GOMP_OFFLOAD_free): Change return type to bool, adjust calls to
12260 handle error return.
12261 (GOMP_OFFLOAD_dev2host): Likewise.
12262 (GOMP_OFFLOAD_host2dev): Likewise.
12263 (GOMP_OFFLOAD_openacc_register_async_cleanup): Use CUDA_CALL* macros.
12264 (GOMP_OFFLOAD_openacc_create_thread_data): Likewise.
12265
e46c7770
CP
122662016-05-24 Cesar Philippidis <cesar@codesourcery.com>
12267
12268 * oacc-mem.c (acc_malloc): Update handling of shared-memory targets.
12269 (acc_free): Likewise.
12270 (acc_memcpy_to_device): Likewise.
12271 (acc_memcpy_from_device): Likewise.
12272 (acc_deviceptr): Likewise.
12273 (acc_hostptr): Likewise.
12274 (acc_is_present): Likewise.
12275 (acc_map_data): Likewise.
12276 (acc_unmap_data): Likewise.
12277 (present_create_copy): Likewise.
12278 (delete_copyout): Likewise.
12279 (update_dev_host): Likewise.
12280 * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Remove xfail.
12281 * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: New test.
12282 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Adjust test.
12283 * testsuite/libgomp.oacc-c-c++-common/data-3.c: Likewise.
12284 * testsuite/libgomp.oacc-c-c++-common/enter_exit-lib.c: New test.
12285 * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Adjust test so that
12286 it only runs on nvptx targets.
12287 * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
12288 * testsuite/libgomp.oacc-c-c++-common/lib-15.c: Likewise.
12289 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
12290 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
12291 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
12292 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
12293 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
12294 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
12295 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
12296 * testsuite/libgomp.oacc-c-c++-common/lib-24.c: Likewise.
12297 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
12298 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
12299 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
12300 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
12301 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
12302 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
12303 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
12304 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
12305 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
12306 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
12307 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
12308 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
12309 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
12310
a5057543
MJ
123112016-05-23 Martin Jambor <mjambor@suse.cz>
12312
12313 * testsuite/libgomp.hsa.c/switch-sbr-2.c: New test.
12314
e37288a6
CLT
123152016-05-17 Chung-Lin Tang <cltang@codesourcery.com>
12316
12317 * oacc-init.c (acc_init): Remove !cached_base_dev condition on call
12318 to gomp_init_targets_once.
12319 (acc_set_device_type): Remove !cached_base_dev condition on call to
12320 gomp_init_targets_once, move call to before acc_device_lock acquire,
12321 to avoid deadlock.
12322 (acc_get_device_num): Remove !cached_base_dev condition on call to
12323 gomp_init_targets_once.
12324 (acc_set_device_num): Likewise.
12325
51d9ed48
MJ
123262016-05-16 Martin Jambor <mjambor@suse.cz>
12327
92a285c1 12328 * testsuite/libgomp.hsa.c/complex-align-2.c: New test.
51d9ed48 12329
5b37e866
NS
123302016-05-02 Nathan Sidwell <nathan@codesourcery.com>
12331
12332 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Adjust
12333 expected partitioning.
12334
e7ff0319
CP
123352016-04-29 Cesar Philippidis <cesar@codesourcery.com>
12336
12337 PR middle-end/70626
12338 * testsuite/libgomp.oacc-c++/template-reduction.C: Adjust test.
12339 * testsuite/libgomp.oacc-c-c++-common/combined-reduction.c: New test.
12340 * testsuite/libgomp.oacc-fortran/combined-reduction.f90: New test.
12341
c2bd3b69
AM
123422016-04-21 Alexander Monakov <amonakov@ispras.ru>
12343
12344 * plugin/plugin-nvptx.c (map_fini): Make cuMemFreeHost error
12345 non-fatal.
12346
84311083
JJ
123472016-04-19 Jakub Jelinek <jakub@redhat.com>
12348
12349 PR middle-end/70680
12350 * testsuite/libgomp.c/pr70680-1.c: New test.
12351 * testsuite/libgomp.c/pr70680-2.c: New test.
12352
aadc043f
CP
123532016-04-14 Cesar Philippidis <cesar@codesourcery.com>
12354
12355 * testsuite/libgomp.oacc-fortran/non-scalar-data.f90: Don't
12356 pass parameter variables to subroutines.
12357
e387fc64
CP
123582016-04-14 Cesar Philippidis <cesar@codesourcery.com>
12359
12360 PR middle-end/70643
12361 * testsuite/libgomp.oacc-fortran/pr70643.f90: New test.
12362
10c3c424
CP
123632016-04-13 Cesar Philippidis <cesar@codesourcery.com>
12364
12365 PR testsuite/68242
12366 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Adjust test.
12367 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
12368
27f9add3
TS
123692016-04-12 Thomas Schwinge <thomas@codesourcery.com>
12370
58d32aeb
TS
12371 * libgomp_g.h: Rename GOACC_parallel_keyd prototype to
12372 GOACC_parallel_keyed, restore GOACC_parallel prototype, new
12373 GOACC_declare prototype.
12374
d97633ef
TS
12375 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gang-np-1.c:
12376 Merge this file, and...
12377 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gv-np-1.c:
12378 ... this file, and...
12379 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gw-np-1.c:
12380 ... this file, and...
12381 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-1.c:
12382 ... this file, and...
12383 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-2.c:
12384 ... this file, and...
12385 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-3.c:
12386 ... this file, and...
12387 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-4.c:
12388 ... this file, and...
12389 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-1.c:
12390 ... this file, and...
12391 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-2.c:
12392 ... this file, and...
12393 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-worker-p-1.c:
12394 ... this file, and...
12395 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-1.c:
12396 ... this file, and...
12397 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-2.c:
12398 ... this file, and...
12399 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-3.c:
12400 ... this file into...
12401 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: ... this
12402 file.
12403
27f9add3
TS
12404 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-2.c:
12405 Make failure observable.
12406
21f3a236
JJ
124072016-04-12 Jakub Jelinek <jakub@redhat.com>
12408
12409 * libgomp.h (struct gomp_target_task): Remove firstprivate_copies
12410 field.
12411 * target.c (gomp_target_fallback_firstprivate,
12412 gomp_target_unshare_firstprivate): Removed.
12413 (GOMP_target_ext): Copy firstprivate vars into gomp_allocaed memory
12414 before waiting for dependencies.
12415 (gomp_target_task_fn): Don't copy firstprivate vars here.
12416 * task.c (GOMP_PLUGIN_target_task_completion): Don't free
12417 firstprivate_copies here.
12418 (gomp_create_target_task): Don't initialize firstprivate_copies field.
12419 * testsuite/libgomp.c/target-25.c (main): Use map (to:) instead of
12420 explicit/implicit firstprivate.
12421
c42cfb5c
CP
124222016-04-08 Cesar Philippidis <cesar@codesourcery.com>
12423
12424 PR lto/70289
12425 PR ipa/70348
12426 PR tree-optimization/70373
12427 PR middle-end/70533
12428 PR middle-end/70534
12429 PR middle-end/70535
12430 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gang-np-1.c: New
12431 test.
12432 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gw-np-1.c: New
12433 test.
12434 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-1.c: New
12435 test.
12436 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-2.c: New
12437 test.
12438 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-3.c: New
12439 test.
12440 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-4.c: New
12441 test.
12442 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-1.c: New
12443 test.
12444 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-2.c: New
12445 test.
12446 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-worker-p-1.c: New
12447 test.
12448 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-1.c: New test.
12449 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-2.c: New test.
12450 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-3.c: New test.
12451 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-1.c: New
12452 test.
12453 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-2.c: New
12454 test.
12455 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-3.c: New
12456 test.
12457 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c: New
12458 test.
12459 * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Add test
12460 coverage.
12461 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
12462 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
12463 * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c: New test.
12464 * testsuite/libgomp.oacc-c-c++-common/pr70289.c: New test.
12465 * testsuite/libgomp.oacc-c-c++-common/pr70373.c: New test.
12466 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Add test
12467 coverage.
12468 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
12469 * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
12470 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
12471 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
12472 * testsuite/libgomp.oacc-c-c++-common/reduction-6.c: New test.
12473 * testsuite/libgomp.oacc-c-c++-common/reduction.h: New test.
12474 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: New test.
12475 * testsuite/libgomp.oacc-fortran/pr70289.f90: New test.
12476 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Add test coverage.
12477 * testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
12478 * testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
12479 * testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
12480 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
12481 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
12482 * testsuite/libgomp.oacc-fortran/reduction-7.f90: New test.
12483
2620c80d
TS
124842016-03-30 Thomas Schwinge <thomas@codesourcery.com>
12485 James Norris <jnorris@codesourcery.com>
12486 Nathan Sidwell <nathan@codesourcery.com>
12487 Julian Brown <julian@codesourcery.com>
12488 Cesar Philippidis <cesar@codesourcery.com>
12489 Chung-Lin Tang <cltang@codesourcery.com>
12490 Tom de Vries <tom@codesourcery.com>
12491
12492 * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Update.
12493 * testsuite/libgomp.oacc-c-c++-common/deviceptr-1.c: Likewise.
12494 * testsuite/libgomp.oacc-c-c++-common/if-1.c: Likewise.
12495 * testsuite/libgomp.oacc-c-c++-common/vector-loop.c: Likewise.
12496 * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
12497 * testsuite/libgomp.oacc-fortran/asyncwait-2.f90: Likewise.
12498 * testsuite/libgomp.oacc-fortran/asyncwait-3.f90: Likewise.
12499 * testsuite/libgomp.oacc-fortran/declare-1.f90: Likewise.
12500 * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Likewise.
12501 XFAIL.
12502 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Update.
12503 Incorporate...
12504 * testsuite/libgomp.oacc-c-c++-common/firstprivate-2.c: ... this
12505 file.
12506 * testsuite/libgomp.oacc-c++/template-reduction.C: New file.
12507 * testsuite/libgomp.oacc-c-c++-common/gang-static-1.c: Likewise.
12508 * testsuite/libgomp.oacc-c-c++-common/gang-static-2.c: Likewise.
12509 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-clauses.c:
12510 Likewise.
12511 * testsuite/libgomp.oacc-c-c++-common/private-variables.c:
12512 Likewise.
12513 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: Likewise.
12514 * testsuite/libgomp.oacc-c-c++-common/routine-1.c: Likewise.
12515 * testsuite/libgomp.oacc-c-c++-common/routine-4.c: Likewise.
12516 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Likewise.
12517 * testsuite/libgomp.oacc-fortran/clauses-1.f90: Likewise.
12518 * testsuite/libgomp.oacc-fortran/default-1.f90: Likewise.
12519 * testsuite/libgomp.oacc-fortran/firstprivate-1.f90: Likewise.
12520 * testsuite/libgomp.oacc-fortran/gang-static-1.f90: Likewise.
12521 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
12522 * testsuite/libgomp.oacc-fortran/implicit-firstprivate-ref.f90:
12523 Likewise.
12524 * testsuite/libgomp.oacc-fortran/pr68813.f90: Likewise.
12525 * testsuite/libgomp.oacc-fortran/private-variables.f90: Likewise.
12526 * testsuite/libgomp.oacc-c-c++-common/kernels-1.c: Merge this
12527 file...
12528 * testsuite/libgomp.oacc-c-c++-common/parallel-1.c: ..., and this
12529 file into...
12530 * testsuite/libgomp.oacc-c-c++-common/data-clauses.h: ... this new
12531 file. Update.
12532 * testsuite/libgomp.oacc-c-c++-common/data-clauses-kernels.c: New
12533 file.
12534 * testsuite/libgomp.oacc-c-c++-common/data-clauses-parallel.c:
12535 Likewise.
12536 * testsuite/libgomp.oacc-c-c++-common/kernels-2.c: Rename to...
12537 * testsuite/libgomp.oacc-c-c++-common/data-clauses-kernels-ipa-pta.c:
12538 ... this new file. Update.
12539 * testsuite/libgomp.oacc-c-c++-common/parallel-2.c: Rename to...
12540 * testsuite/libgomp.oacc-c-c++-common/data-clauses-parallel-ipa-pta.c:
12541 ... this new file. Update.
12542 * testsuite/libgomp.oacc-c-c++-common/mode-transitions.c: New
12543 file. Incorporate...
12544 * testsuite/libgomp.oacc-c-c++-common/worker-single-1a.c: ... this
12545 file, and...
12546 * testsuite/libgomp.oacc-c-c++-common/worker-single-4.c: ... this
12547 file, and...
12548 * testsuite/libgomp.oacc-c-c++-common/worker-single-6.c: ... this
12549 file.
12550 * testsuite/libgomp.oacc-c-c++-common/update-1-2.c: Remove file.
12551
ce83104b
TS
125522016-03-29 Thomas Schwinge <thomas@codesourcery.com>
12553
12554 * testsuite/libgomp.oacc-c++/c++.exp [!lang_test_file_found]: Call
12555 set-torture-options.
12556
6e0df3b7
TS
125572016-03-24 Thomas Schwinge <thomas@codesourcery.com>
12558
12559 * testsuite/libgomp.oacc-c++/c++.exp: Set up torture testing, use
12560 gcc-dg-runtest.
12561 * testsuite/libgomp.oacc-c/c.exp: Likewise.
12562 * testsuite/libgomp.oacc-c-c++-common/acc-on-device-2.c: Specify
12563 -fno-builtin-acc_on_device instead of -O0.
12564 * testsuite/libgomp.oacc-c-c++-common/acc-on-device.c: Skip for
12565 -O0.
12566 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Likewise.
12567 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c:
12568 Likewise.
12569 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: Likewise.
12570 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: Likewise.
12571 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Likewise.
12572 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
12573 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
12574 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
12575 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Likewise.
12576 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
12577 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
12578 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Likewise.
12579 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
12580 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Likewise.
12581 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: Likewise.
12582 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: Likewise.
12583 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: Likewise.
12584 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Likewise.
12585 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: Likewise.
12586 * testsuite/libgomp.oacc-c-c++-common/kernels-alias-ipa-pta-2.c:
12587 Don't specify -O2.
12588 * testsuite/libgomp.oacc-c-c++-common/kernels-alias-ipa-pta-3.c:
12589 Likewise.
12590 * testsuite/libgomp.oacc-c-c++-common/kernels-alias-ipa-pta.c:
12591 Likewise.
12592
f9c8babb
ML
125932016-03-24 Martin Liska <mliska@suse.cz>
12594
12595 * plugin/plugin-hsa.c (packet_store_release): New function
12596 that is taken from the HSA runtime manual.
12597 (GOMP_OFFLOAD_run): Use the function.
12598
04833609
JJ
125992016-03-23 Jakub Jelinek <jakub@redhat.com>
12600
12601 PR c++/70376
12602 * testsuite/libgomp.c++/pr70376.C: New test.
12603
d79ee524
TV
126042016-03-23 Tom de Vries <tom@codesourcery.com>
12605
12606 * testsuite/libgomp.oacc-fortran/reduction-2.f90: Add missing
12607 initialization of lresult and lvresult.
12608 * testsuite/libgomp.oacc-fortran/reduction-3.f90: Same.
12609
b6d1f2b5
JN
126102016-03-23 James Norris <jnorris@codesourcery.com>
12611 Daichi Fukuoka <dc-fukuoka@sgi.com>
12612
12613 PR libgomp/69414
12614 * oacc-mem.c (delete_copyout, update_dev_host): Fix device address.
12615 * testsuite/libgomp.oacc-c-c++-common/update-1.c: Additional tests.
12616 * testsuite/libgomp.oacc-c-c++-common/update-1-2.c: Likewise.
12617 * testsuite/libgomp.oacc-fortran/update-1.f90: New file.
12618
7397fce2
ML
126192016-03-23 Martin Liska <mliska@suse.cz>
12620
12621 PR hsa/70337
12622 * plugin/plugin-hsa.c (GOMP_OFFLOAD_run): Copy shadow
12623 argument just in case a dispatched kernel uses that argument.
12624
ee2e7d51
TS
126252016-03-16 Thomas Schwinge <thomas@codesourcery.com>
12626
12627 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Adjust to
12628 -ftree-parallelize-loops/-fopenacc changes.
12629 * testsuite/libgomp.oacc-fortran/kernels-loop-data-2.f95:
12630 Likewise.
12631 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit-2.f95:
12632 Likewise.
12633 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit.f95:
12634 Likewise.
12635 * testsuite/libgomp.oacc-fortran/kernels-loop-data-update.f95:
12636 Likewise.
12637 * testsuite/libgomp.oacc-fortran/kernels-loop-data.f95: Likewise.
12638 * testsuite/libgomp.oacc-fortran/kernels-loop.f95: Likewise.
12639
be9f7143
TS
126402016-03-13 Thomas Schwinge <thomas@codesourcery.com>
12641
12642 * testsuite/lib/libgomp.exp (libgomp_init): Potentially append to
12643 always_ld_library_path the path to libgcc_s.
12644
f6c1032d
CP
126452016-03-10 Cesar Philippidis <cesar@codesourcery.com>
12646
12647 PR testsuite/70009
12648 * testsuite/libgomp.oacc-c-c++-common/vprop.c: Make test data signed.
12649
5a6452e6
TV
126502016-03-09 Tom de Vries <tom@codesourcery.com>
12651
12652 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: New test.
12653 * testsuite/libgomp.oacc-fortran/kernels-loop-data-2.f95: Same.
12654 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit-2.f95:
12655 Same.
12656 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit.f95: Same.
12657 * testsuite/libgomp.oacc-fortran/kernels-loop-data-update.f95: Same.
12658 * testsuite/libgomp.oacc-fortran/kernels-loop-data.f95: Same.
12659 * testsuite/libgomp.oacc-fortran/kernels-loop.f95: Same.
12660
96a71bd5
MJ
126612016-03-07 Martin Jambor <mjambor@suse.cz>
12662
12663 * testsuite/lib/libgomp.exp
12664 (check_effective_target_hsa_offloading_selected_nocache): New.
12665 (check_effective_target_hsa_offloading_selected): Likewise.
12666 * testsuite/libgomp.hsa.c/c.exp: Likewise.
12667 * testsuite/libgomp.hsa.c/alloca-1.c: Likewise.
12668 * testsuite/libgomp.hsa.c/bitfield-1.c: Likewise.
12669 * testsuite/libgomp.hsa.c/builtins-1.c: Likewise.
12670 * testsuite/libgomp.hsa.c/complex-1.c: Likewise.
12671 * testsuite/libgomp.hsa.c/formal-actual-args-1.c: Likewise.
12672 * testsuite/libgomp.hsa.c/function-call-1.c: Likewise.
12673 * testsuite/libgomp.hsa.c/get-level-1.c: Likewise.
12674 * testsuite/libgomp.hsa.c/gridify-1.c: Likewise.
12675 * testsuite/libgomp.hsa.c/gridify-2.c: Likewise.
12676 * testsuite/libgomp.hsa.c/gridify-3.c: Likewise.
12677 * testsuite/libgomp.hsa.c/gridify-4.c: Likewise.
12678 * testsuite/libgomp.hsa.c/memory-operations-1.c: Likewise.
12679 * testsuite/libgomp.hsa.c/pr69568.c: Likewise.
12680 * testsuite/libgomp.hsa.c/rotate-1.c: Likewise.
12681 * testsuite/libgomp.hsa.c/switch-1.c: Likewise.
12682 * testsuite/libgomp.hsa.c/switch-branch-1.c: Likewise.
12683
02e0b5b2
MJ
126842016-03-07 Martin Jambor <mjambor@suse.cz>
12685
12686 * testsuite/libgomp.c/examples-4/async_target-2.c: Only run on
12687 non-shared memory accelerators.
12688 * testsuite/libgomp.c/examples-4/device-1.c: Likewise.
12689 * testsuite/libgomp.c/examples-4/target-5.c: Likewise.
12690 * testsuite/libgomp.c/examples-4/target_data-6.c: Likewise.
12691 * testsuite/libgomp.c/examples-4/target_data-7.c: Likewise.
12692 * testsuite/libgomp.fortran/examples-4/async_target-2.f90: Likewise.
12693 * testsuite/libgomp.fortran/examples-4/device-1.f90: Likewise.
12694 * testsuite/libgomp.fortran/examples-4/target-5.f90: Likewise.
12695 * testsuite/libgomp.fortran/examples-4/target_data-6.f90: Likewise.
12696 * testsuite/libgomp.fortran/examples-4/target_data-7.f90: Likewise.
12697
45548f30
MJ
126982016-03-07 Martin Jambor <mjambor@suse.cz>
12699
12700 * testsuite/lib/libgomp.exp (libgomp_init): Append -Wno-hsa to
12701 ALWAYS_CFLAGS.
12702
da3d46cb
JJ
127032016-03-02 Jakub Jelinek <jakub@redhat.com>
12704
12705 PR libgomp/69555
12706 * testsuite/libgomp.c++/pr69555-1.C: New test.
12707 * testsuite/libgomp.c++/pr69555-2.C: New test.
12708
622174b2
KM
127092016-02-26 Keith McDaniel <k.allen.mcdaniel@gmail.com>
12710 Martin Jambor <mjambor@suse.cz>
12711
12712 * testsuite/lib/libgomp.exp
12713 (check_effective_target_offload_device_shared_as): New proc.
12714 * testsuite/libgomp.c++/declare_target-1.C: New test.
12715
e6861a99
IV
127162016-02-25 Ilya Verbin <ilya.verbin@intel.com>
12717
12718 PR driver/68463
12719 * testsuite/libgomp.oacc-c-c++-common/parallel-dims-2.c: Remove.
12720
f99c3557
TS
127212016-02-23 Thomas Schwinge <thomas@codesourcery.com>
12722
12723 * oacc-parallel.c (GOACC_parallel_keyed): Initialize dims.
12724 * plugin/plugin-nvptx.c (nvptx_exec): Provide default values for
12725 dims.
12726 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: Adjust to
12727 -ftree-parallelize-loops/-fopenacc changes.
12728 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-3.c: Likewise.
12729 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-2.c:
12730 Likewise.
12731 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-3.c:
12732 Likewise.
12733 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-4.c:
12734 Likewise.
12735 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-5.c:
12736 Likewise.
12737 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-6.c:
12738 Likewise.
12739 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq.c:
12740 Likewise.
12741 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-collapse.c:
12742 Likewise.
12743 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-g.c: Likewise.
12744 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-mod-not-zero.c:
12745 Likewise.
12746 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-n.c: Likewise.
12747 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-nest.c:
12748 Likewise.
12749 * testsuite/libgomp.oacc-c-c++-common/kernels-loop.c: Likewise.
12750 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction.c:
12751 Likewise.
12752
d5ace3b5
CP
127532016-02-22 Cesar Philippidis <cesar@codesourcery.com>
12754
12755 * testsuite/libgomp.oacc-c-c++-common/vprop.c: New test.
12756
f3609a89
JJ
127572016-02-19 Jakub Jelinek <jakub@redhat.com>
12758
12759 PR driver/69805
12760 * testsuite/libgomp.c/pr69805.c: New test.
12761
2175df99
TV
127622016-02-16 Tom de Vries <tom@codesourcery.com>
12763
12764 PR lto/67709
12765 * testsuite/libgomp.fortran/declare-simd-4.f90: New test.
12766
17b6426c
TV
127672016-02-09 Tom de Vries <tom@codesourcery.com>
12768
12769 PR tree-optimization/69599
12770 * testsuite/libgomp.c/omp-nested-3.c: New test.
12771 * testsuite/libgomp.c/pr46032-2.c: New test.
12772 * testsuite/libgomp.oacc-c-c++-common/kernels-2.c: New test.
12773 * testsuite/libgomp.oacc-c-c++-common/parallel-2.c: New test.
12774
34df756c
TV
127752016-02-09 Tom de Vries <tom@codesourcery.com>
12776
12777 PR lto/69707
12778 * testsuite/libgomp.oacc-c-c++-common/parallel-dims-2.c: New test.
12779
5854ee30
AM
127802016-02-02 Alexander Monakov <amonakov@ispras.ru>
12781
12782 * testsuite/libgomp.c/target-31.c: Fix testcase.
12783
e70b6ad7
AM
127842016-02-02 Alexander Monakov <amonakov@ispras.ru>
12785
12786 * testsuite/libgomp.c/examples-4/teams-3.c: Add missing reduction
12787 clause.
12788 * testsuite/libgomp.c/examples-4/teams-4.c: Likewise.
12789 * testsuite/libgomp.fortran/examples-4/teams-3.f90: Add missing
12790 reduction and map clauses.
12791 * testsuite/libgomp.fortran/examples-4/teams-4.f90: Likewise.
12792
bd78a45f
JN
127932016-02-02 James Norris <jnorris@codesourcery.com>
12794
12795 * testsuite/libgomp.oacc-c-c++-common/declare-4.c: Fix clause.
12796
41d809d3
TS
127972016-02-02 Thomas Schwinge <thomas@codesourcery.com>
12798
18f60146
TS
12799 * libgomp.map (GOACC_2.0): Remove GOACC_host_data.
12800 * oacc-parallel.c (GOACC_host_data): Remove function definition.
12801
1a06f5e6
TS
12802 * testsuite/lib/libgomp.exp: Skip hsa offloading for OpenACC test
12803 cases.
12804
033ff3d1
TS
12805 * plugin/configfrag.ac (HSA_KMT_LIB, HSA_KMT_LDFLAGS): New
12806 variables.
12807 * testsuite/libgomp-test-support.exp.in (hsa_runtime_lib)
12808 (hsa_kmt_lib): Set variables.
12809 * testsuite/lib/libgomp.exp (libgomp_init): Use them to amend
12810 always_ld_library_path.
12811 * Makefile.in: Regenerate.
12812 * configure: Likewise.
12813 * testsuite/Makefile.in: Likewise.
12814
4a88d9b7
TS
12815 * plugin/configfrag.ac (offload_additional_options)
12816 (offload_additional_lib_paths): Don't amend for hsa offloading.
12817 * configure: Regenerate.
12818
41d809d3
TS
12819 * plugin/configfrag.ac: Don't configure for offloading target if
12820 we don't build the corresponding plugin.
12821 * configure: Regenerate.
12822
b6adbb9f
NS
128232016-02-01 Nathan Sidwell <nathan@codesourcery.com>
12824
12825 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: New.
12826 * testsuite/libgomp.oacc-fortran/routine-7.f90: Serialize loop.
12827
8dfdb419
TV
128282016-01-26 Tom de Vries <tom@codesourcery.com>
12829
12830 PR tree-optimization/69110
12831 * testsuite/libgomp.c/pr69110.c: New test.
12832
02ef53f2
RB
128332016-01-25 Richard Biener <rguenther@suse.de>
12834
12835 PR lto/69393
12836 * testsuite/libgomp.c++/pr69393.C: New testcase.
12837
eb4048f2
IV
128382016-01-22 Ilya Verbin <ilya.verbin@intel.com>
12839
12840 * target.c (gomp_get_target_fn_addr): Allow host fallback if target
12841 function wasn't mapped to the device with non-shared memory.
12842
b235cdd5
IV
128432016-01-20 Ilya Verbin <ilya.verbin@intel.com>
12844
12845 * task.c (gomp_create_target_task): Set firstprivate_copies to NULL.
12846
b2b40051
MJ
128472016-01-19 Martin Jambor <mjambor@suse.cz>
12848 Martin Liska <mliska@suse.cz>
12849
12850 * plugin/Makefrag.am: Add HSA plugin requirements.
12851 * plugin/configfrag.ac (HSA_RUNTIME_INCLUDE): New variable.
12852 (HSA_RUNTIME_LIB): Likewise.
12853 (HSA_RUNTIME_CPPFLAGS): Likewise.
12854 (HSA_RUNTIME_INCLUDE): New substitution.
12855 (HSA_RUNTIME_LIB): Likewise.
12856 (HSA_RUNTIME_LDFLAGS): Likewise.
12857 (hsa-runtime): New configure option.
12858 (hsa-runtime-include): Likewise.
12859 (hsa-runtime-lib): Likewise.
12860 (PLUGIN_HSA): New substitution variable.
12861 Fill HSA_RUNTIME_INCLUDE and HSA_RUNTIME_LIB according to the new
12862 configure options.
12863 (PLUGIN_HSA_CPPFLAGS): Likewise.
12864 (PLUGIN_HSA_LDFLAGS): Likewise.
12865 (PLUGIN_HSA_LIBS): Likewise.
12866 Check that we have access to HSA run-time.
12867 * libgomp-plugin.h (offload_target_type): New element
12868 OFFLOAD_TARGET_TYPE_HSA.
12869 * libgomp.h (gomp_target_task): New fields firstprivate_copies and
12870 args.
12871 (bool gomp_create_target_task): Updated.
12872 (gomp_device_descr): Extra parameter of run_func and async_run_func,
12873 new field can_run_func.
12874 * libgomp_g.h (GOMP_target_ext): Update prototype.
12875 * oacc-host.c (host_run): Added a new parameter args.
12876 * target.c (calculate_firstprivate_requirements): New function.
12877 (copy_firstprivate_data): Likewise.
12878 (gomp_target_fallback_firstprivate): Use them.
12879 (gomp_target_unshare_firstprivate): New function.
12880 (gomp_get_target_fn_addr): Allow returning NULL for shared memory
12881 devices.
12882 (GOMP_target): Do host fallback for all shared memory devices. Do not
12883 pass any args to plugins.
12884 (GOMP_target_ext): Introduce device-specific argument parameter args.
12885 Allow host fallback if device shares memory. Do not remap data if
12886 device has shared memory.
12887 (gomp_target_task_fn): Likewise. Also treat shared memory devices
12888 like host fallback for mappings.
12889 (GOMP_target_data): Treat shared memory devices like host fallback.
12890 (GOMP_target_data_ext): Likewise.
12891 (GOMP_target_update): Likewise.
12892 (GOMP_target_update_ext): Likewise. Also pass NULL as args to
12893 gomp_create_target_task.
12894 (GOMP_target_enter_exit_data): Likewise.
12895 (omp_target_alloc): Treat shared memory devices like host fallback.
12896 (omp_target_free): Likewise.
12897 (omp_target_is_present): Likewise.
12898 (omp_target_memcpy): Likewise.
12899 (omp_target_memcpy_rect): Likewise.
12900 (omp_target_associate_ptr): Likewise.
12901 (gomp_load_plugin_for_device): Also load can_run.
12902 * task.c (GOMP_PLUGIN_target_task_completion): Free
12903 firstprivate_copies.
12904 (gomp_create_target_task): Accept new argument args and store it to
12905 ttask.
12906 * plugin/plugin-hsa.c: New file.
12907
5d7804a9
TV
129082016-01-18 Tom de Vries <tom@codesourcery.com>
12909
12910 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: New test.
12911 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-3.c: Same.
12912 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-2.c: Same.
12913 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-3.c: Same.
12914 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-4.c: Same.
12915 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-5.c: Same.
12916 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-6.c: Same.
12917 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq.c: Same.
12918 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-collapse.c: Same.
12919 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-2.c: Same.
12920 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit-2.c:
12921 Same.
12922 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit.c:
12923 Same.
12924 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-update.c: Same.
12925 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data.c: Same.
12926 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-g.c: Same.
12927 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-mod-not-zero.c: Same.
12928 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-n.c: Same.
12929 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-nest.c: Same.
12930 * testsuite/libgomp.oacc-c-c++-common/kernels-loop.c: Same.
12931 * testsuite/libgomp.oacc-c-c++-common/kernels-parallel-loop-data-enter-exit.c:
12932 Same.
12933 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction.c: Same.
12934
cb11f3cf
JJ
129352016-01-15 Jakub Jelinek <jakub@redhat.com>
12936
12937 * task.c (GOMP_PLUGIN_target_task_completion): Add missing return.
12938
33a126a6
CP
129392016-01-15 Cesar Philippidis <cesar@codesourcery.com>
12940
12941 * testsuite/libgomp.oacc-fortran/kernels-data.f90: New test.
12942
cdf6119d
JN
129432016-01-12 James Norris <jnorris@codesourcery.com>
12944
12945 * libgomp.texi: Updates for OpenACC.
12946
0d58938e
AM
129472016-01-11 Alexander Monakov <amonakov@ispras.ru>
12948
12949 * plugin/plugin-nvptx.c (link_ptx): Do not set CU_JIT_TARGET.
12950
95918b49
L
129512016-01-07 H.J. Lu <hongjiu.lu@intel.com>
12952
12953 PR fortran/66680
12954 * testsuite/libgomp.fortran/pr66680.f90: New test.
12955
8fc708b7
JJ
129562016-01-07 Jakub Jelinek <jakub@redhat.com>
12957
12958 PR middle-end/68960
12959 * testsuite/libgomp.c/pr68960.c: New test.
12960
e9b596c1
NS
129612016-01-06 Nathan Sidwell <nathan@acm.org>
12962
1a14faf2 12963 * openacc.h (acc_on_device): Add routine pragma for C++ wrapper.
e9b596c1
NS
12964 * testsuite/libgomp.oacc-c-c++-common/acc-on-device-2.c: New.
12965
21fa2a29
JJ
129662016-01-04 Jakub Jelinek <jakub@redhat.com>
12967
818ab71a
JJ
12968 Update copyright years.
12969
21fa2a29
JJ
12970 * libgomp.texi: Bump @copying's copyright year.
12971
9310efbc
NS
129722015-12-31 Nathan Sidwell <nathan@acm.org>
12973
12974 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Correct
12975 dg-additional-options syntax.
12976 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Likewise.
12977 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Likewise.
12978 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: Likewise.
12979 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
12980 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: Likewise.
12981 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: Likewise.
12982 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Likewise.
12983 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Likewise.
12984 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Likewise.
12985 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: Likewise.
12986 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
12987 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: Likewise.
12988 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
12989 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Likewise.
12990 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Likewise.
12991 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: Likewise.
12992 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
12993 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
12994
4a38b02b
IV
129952015-12-15 Ilya Verbin <ilya.verbin@intel.com>
12996
12997 * libgomp.h (REFCOUNT_LINK): Define.
12998 (struct splay_tree_key_s): Add link_key.
12999 * target.c (gomp_map_vars): Treat REFCOUNT_LINK objects as not mapped.
13000 Replace target address of the pointer with target address of newly
13001 mapped object in the splay tree. Set link pointer on target to the
13002 device address of the mapped object.
13003 (gomp_unmap_vars): Restore target address of the pointer in the splay
13004 tree for REFCOUNT_LINK objects after unmapping.
13005 (gomp_load_image_to_device): Set refcount to REFCOUNT_LINK for "omp
13006 declare target link" objects.
13007 (gomp_unload_image_from_device): Replace j with i. Force unmap of all
13008 "omp declare target link" objects, which were mapped for the image.
13009 (gomp_exit_data): Restore target address of the pointer in the splay
13010 tree for REFCOUNT_LINK objects after unmapping.
13011 * testsuite/libgomp.c/target-link-1.c: New file.
13012
d84ffc0a
IV
130132015-12-14 Ilya Verbin <ilya.verbin@intel.com>
13014
13015 * libgomp.h (gomp_device_state): New enum.
13016 (struct gomp_device_descr): Replace is_initialized with state.
13017 (gomp_fini_device): Remove declaration.
13018 * oacc-host.c (host_dispatch): Use state instead of is_initialized.
13019 * oacc-init.c (acc_init_1): Use state instead of is_initialized.
13020 (acc_shutdown_1): Likewise. Inline gomp_fini_device.
13021 (acc_set_device_type): Use state instead of is_initialized.
13022 (acc_set_device_num): Likewise.
13023 * target.c (resolve_device): Use state instead of is_initialized.
13024 Do not initialize finalized device.
13025 (gomp_map_vars): Do nothing if device is finalized.
13026 (gomp_unmap_vars): Likewise.
13027 (gomp_update): Likewise.
13028 (GOMP_offload_register_ver): Use state instead of is_initialized.
13029 (GOMP_offload_unregister_ver): Likewise.
13030 (gomp_init_device): Likewise.
13031 (gomp_unload_device): Likewise.
13032 (gomp_fini_device): Remove.
13033 (gomp_get_target_fn_addr): Do nothing if device is finalized.
13034 (GOMP_target): Go to host fallback if device is finalized.
13035 (GOMP_target_ext): Likewise.
13036 (gomp_exit_data): Do nothing if device is finalized.
13037 (gomp_target_task_fn): Go to host fallback if device is finalized.
13038 (gomp_target_fini): New static function.
13039 (gomp_target_init): Use state instead of is_initialized.
13040 Call gomp_target_fini at exit.
13041
76680678
TV
130422015-12-09 Tom de Vries <tom@codesourcery.com>
13043
13044 PR tree-optimization/68716
13045 * testsuite/libgomp.c/omp-nested-2.c: New test.
13046
ff7a55bf
TS
130472015-12-02 Thomas Schwinge <thomas@codesourcery.com>
13048
13049 * testsuite/libgomp.oacc-c-c++-common/host_data-2.c: Restrict to
13050 target openacc_nvidia_accel_selected.
13051 * testsuite/libgomp.oacc-c-c++-common/host_data-4.c: Likewise.
13052 * testsuite/libgomp.oacc-c-c++-common/host_data-5.c: Likewise.
13053 * testsuite/libgomp.oacc-c-c++-common/host_data-3.c: Remove file.
13054 * testsuite/libgomp.oacc-c-c++-common/host_data-6.c: Remove file.
13055
37d5ad46
JB
130562015-12-01 Julian Brown <julian@codesourcery.com>
13057 James Norris <James_Norris@mentor.com>
13058
13059 * oacc-parallel.c (GOACC_host_data): New function.
13060 * libgomp.map (GOACC_host_data): Add to GOACC_2.0.1.
13061 * testsuite/libgomp.oacc-c-c++-common/host_data-1.c: New test.
13062 * testsuite/libgomp.oacc-c-c++-common/host_data-2.c: New test.
13063 * testsuite/libgomp.oacc-c-c++-common/host_data-3.c: New test.
13064 * testsuite/libgomp.oacc-c-c++-common/host_data-4.c: New test.
13065 * testsuite/libgomp.oacc-c-c++-common/host_data-5.c: New test.
13066 * testsuite/libgomp.oacc-c-c++-common/host_data-6.c: New test.
13067
db941d7e
CP
130682015-11-30 James Norris <jnorris@codesourcery.com>
13069 Cesar Philippidis <cesar@codesourcery.com>
13070
13071 libgomp/
13072 * libgomp.oacc-fortran/routine-5.f90: New test.
13073 * libgomp.oacc-fortran/routine-7.f90: New test.
13074 * libgomp.oacc-fortran/routine-9.f90: New test.
13075
e0ca27c5
TV
130762015-11-30 Tom de Vries <tom@codesourcery.com>
13077
13078 PR tree-optimization/46032
13079 * testsuite/libgomp.c/pr46032.c: New test.
13080
aec17bfe
JJ
130812015-11-27 Jakub Jelinek <jakub@redhat.com>
13082
8e4e4719
JJ
13083 PR libgomp/68579
13084 * task.c (gomp_task_run_post_handle_depend_hash): New forward decl.
13085 (gomp_create_target_task): Call it before freeing
13086 GOMP_TARGET_TASK_DATA tasks.
13087
aec17bfe
JJ
13088 PR c/63326
13089 * testsuite/libgomp.c/cancel-parallel-2.c (foo): Add semicolon
13090 in between case label and OpenMP standalone directives.
13091 * testsuite/libgomp.c++/cancel-parallel-2.C (foo): Likewise.
13092
6cfe90e6
DE
130932015-11-26 David Edelsohn <dje.gcc@gmail.com>
13094
13095 * configure: Regenerate.
13096
0e65fd7d
JJ
130972015-11-26 Jakub Jelinek <jakub@redhat.com>
13098
13099 * testsuite/libgomp.c/target-35.c: New test.
13100
dc7a8b4b
JN
131012015-11-22 James Norris <jnorris@codesourcery.com>
13102 Cesar Philippidis <cesar@codesourcery.com>
13103
13104 * testsuite/libgomp.oacc-fortran/declare-1.f90: New test.
13105 * testsuite/libgomp.oacc-fortran/declare-2.f90: Likewise.
13106 * testsuite/libgomp.oacc-fortran/declare-3.f90: Likewise.
13107 * testsuite/libgomp.oacc-fortran/declare-4.f90: Likewise.
13108 * testsuite/libgomp.oacc-fortran/declare-5.f90: Likewise.
13109
48a78aee
JJ
131102015-11-20 Jakub Jelinek <jakub@redhat.com>
13111
13112 PR middle-end/68221
13113 * testsuite/libgomp.c/reduction-11.c: Remove xfail.
13114 * testsuite/libgomp.c/reduction-12.c: Likewise.
13115 * testsuite/libgomp.c++/reduction-11.C: Likewise.
13116 * testsuite/libgomp.c++/reduction-12.C: Likewise.
13117
2d256816
NS
131182015-11-19 Nathan Sidwell <nathan@codesourcery.com>
13119
13120 * libgomp.oacc-c-c++-common/reduction-dbl.c: New.
13121 * libgomp.oacc-c-c++-common/reduction-flt.c: New.
13122 * libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Use typedef.
13123 * libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Use typedef.
13124 * libgomp.oacc-c-c++-common/reduction-2.c: Uncomment broken tests
13125 and fix.
13126 * libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
13127 * libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
13128
33f47f42
NS
131292015-11-18 Nathan Sidwell <nathan@codesourcery.com>
13130
13131 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Add
13132 worker & gang cases.
13133 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Likewise.
13134
3d7bfee0
CP
131352015-11-17 Cesar Philippidis <cesar@codesourcery.com>
13136
13137 * config/nvptx/priority_queue.c: New file.
13138
00b9bd52
JJ
131392015-11-14 Jakub Jelinek <jakub@redhat.com>
13140
13141 * libgomp.texi: Update references from OpenMP 4.0 to OpenMP 4.5
13142 sections.
13143
e4606348
JJ
131442015-11-14 Jakub Jelinek <jakub@redhat.com>
13145 Aldy Hernandez <aldyh@redhat.com>
13146 Ilya Verbin <ilya.verbin@intel.com>
13147
13148 * ordered.c (gomp_doacross_init, GOMP_doacross_post,
13149 GOMP_doacross_wait, gomp_doacross_ull_init, GOMP_doacross_ull_post,
13150 GOMP_doacross_ull_wait): For GFS_GUIDED don't divide number of
13151 iterators or IV by chunk size.
13152 * parallel.c (gomp_resolve_num_threads): Don't assume that
13153 if thr->ts.team is non-NULL, then pool must be non-NULL.
13154 * libgomp-plugin.h (GOMP_PLUGIN_target_task_completion): Declare.
13155 * libgomp.map (GOMP_PLUGIN_1.1): New symbol version, export
13156 GOMP_PLUGIN_target_task_completion.
13157 * Makefile.am (libgomp_la_SOURCES): Add priority_queue.c.
13158 * Makefile.in: Regenerate.
13159 * libgomp.h: Shuffle prototypes and forward definitions around so
13160 priority queues can be defined.
13161 (enum gomp_task_kind): Add GOMP_TASK_ASYNC_RUNNING.
13162 (enum gomp_target_task_state): New enum.
13163 (struct gomp_target_task): Add state, tgt, task and team fields.
13164 (gomp_create_target_task): Change return type to bool, add
13165 state argument.
13166 (gomp_target_task_fn): Change return type to bool.
13167 (struct gomp_device_descr): Add async_run_func.
13168 (struct gomp_task): Remove children, next_child, prev_child,
13169 next_queue, prev_queue, next_taskgroup, prev_taskgroup.
13170 Add pnode field.
13171 (struct gomp_taskgroup): Remove children.
13172 Add taskgroup_queue.
13173 (struct gomp_team): Change task_queue type to a priority queue.
13174 (splay_compare): Define inline.
13175 (priority_queue_offset): New.
13176 (priority_node_to_task): New.
13177 (task_to_priority_node): New.
13178 * oacc-mem.c: Do not include splay-tree.h.
13179 * priority_queue.c: New file.
13180 * priority_queue.h: New file.
13181 * splay-tree.c: Do not include splay-tree.h.
13182 (splay_tree_foreach_internal): New.
13183 (splay_tree_foreach): New.
13184 * splay-tree.h: Become re-entrant if splay_tree_prefix is defined.
13185 (splay_tree_callback): Define typedef.
13186 * target.c (splay_compare): Move to libgomp.h.
13187 (GOMP_target): Don't adjust *thr in any way around running offloaded
13188 task.
13189 (GOMP_target_ext): Likewise. Handle target nowait.
13190 (GOMP_target_update_ext, GOMP_target_enter_exit_data): Check
13191 return value from gomp_create_target_task, if false, fallthrough
13192 as if no dependencies exist.
13193 (gomp_target_task_fn): Change return type to bool, return true
13194 if the task should have another part scheduled later. Handle
13195 target nowait.
13196 (gomp_load_plugin_for_device): Initialize async_run.
13197 * task.c (gomp_init_task): Initialize children_queue.
13198 (gomp_clear_parent_in_list): New.
13199 (gomp_clear_parent_in_tree): New.
13200 (gomp_clear_parent): Handle priorities.
13201 (GOMP_task): Likewise.
13202 (priority_queue_move_task_first,
13203 gomp_target_task_completion, GOMP_PLUGIN_target_task_completion):
13204 New functions.
13205 (gomp_create_target_task): Use priority queues. Change return type
13206 to bool, add state argument, return false if for async
13207 {{enter,exit} data,update} constructs no dependencies need to be
13208 waited for, handle target nowait. Set task->fn to NULL instead of
13209 gomp_target_task_fn.
13210 (verify_children_queue): Remove.
13211 (priority_list_upgrade_task): New.
13212 (priority_queue_upgrade_task): New.
13213 (verify_task_queue): Remove.
13214 (priority_list_downgrade_task): New.
13215 (priority_queue_downgrade_task): New.
13216 (gomp_task_run_pre): Use priority queues.
13217 Abstract code out to priority_queue_downgrade_task.
13218 (gomp_task_run_post_handle_dependers): Use priority queues.
13219 (gomp_task_run_post_remove_parent): Likewise.
13220 (gomp_task_run_post_remove_taskgroup): Likewise.
13221 (gomp_barrier_handle_tasks): Likewise. Handle target nowait target
13222 tasks specially.
13223 (GOMP_taskwait): Likewise.
13224 (gomp_task_maybe_wait_for_dependencies): Likewise. Abstract code to
13225 priority-queue_upgrade_task.
13226 (GOMP_taskgroup_start): Use priority queues.
13227 (GOMP_taskgroup_end): Likewise. Handle target nowait target tasks
13228 specially. If taskgroup is NULL, and thr->ts.level is 0, act as a
13229 barrier.
13230 * taskloop.c (GOMP_taskloop): Handle priorities.
13231 * team.c (gomp_new_team): Call priority_queue_init.
13232 (free_team): Call priority_queue_free.
13233 (gomp_free_thread): Call gomp_team_end if thr->ts.team is artificial
13234 team created for target nowait in implicit parallel region.
13235 (gomp_team_start): For nested check, test thr->ts.level instead of
13236 thr->ts.team != NULL.
13237 * testsuite/libgomp.c/doacross-3.c: New test.
13238 * testsuite/libgomp.c/ordered-5.c: New test.
13239 * testsuite/libgomp.c/priority.c: New test.
13240 * testsuite/libgomp.c/target-31.c: New test.
13241 * testsuite/libgomp.c/target-32.c: New test.
13242 * testsuite/libgomp.c/target-33.c: New test.
13243 * testsuite/libgomp.c/target-34.c: New test.
13244
1d1ab74f
NS
132452015-11-13 Nathan Sidwell <nathan@codesourcery.com>
13246
c5a64cfe
NS
13247 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: New.
13248
1d1ab74f
NS
13249 * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Sequential
13250 loop is sequential.
13251
dd3c1b14
NS
132522015-11-13 Nathan Sidwell <nathan@codesourcery.com>
13253
13254 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: New.
13255 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: New.
13256
6e232ba4
JN
132572015-11-12 James Norris <jnorris@codesourcery.com>
13258 Joseph Myers <joseph@codesourcery.com>
13259
13260 * libgomp.map (GOACC_2.0.1): Export GOACC_declare.
13261 * oacc-parallel.c (GOACC_declare): New function.
13262 * testsuite/libgomp.oacc-c-c++-common/declare-1.c: New test.
13263 * testsuite/libgomp.oacc-c-c++-common/declare-2.c: Likewise.
13264 * testsuite/libgomp.oacc-c-c++-common/declare-4.c: Likewise.
13265 * testsuite/libgomp.oacc-c-c++-common/declare-5.c: Likewise.
13266 * testsuite/libgomp.oacc-c++/declare-1.C: Likewise.
13267
fffeedeb
NS
132682015-11-12 Nathan Sidwell <nathan@codesourcery.com>
13269
13270 * testsuite/libgomp.oacc-c-c++-common/default-1.c: New.
13271
182190f2
NS
132722015-11-1 Nathan Sidwell <nathan@codesourcery.com>
13273
13274 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: New.
13275 * testsuite/libgomp.oacc-c-c++-common/firstprivate-2.c: New.
13276
36fa0f5f
NS
132772015-11-09 Nathan Sidwell <nathan@codesourcery.com>
13278
d350c40c
NS
13279 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Remove
13280 inadvertent commit.
13281
132822015-11-09 Nathan Sidwell <nathan@codesourcery.com>
13283
36fa0f5f
NS
13284 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: New.
13285 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: New.
13286 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: New.
13287 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: New.
13288 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: New.
13289
66a5f0b4
TS
132902015-11-06 Thomas Schwinge <thomas@codesourcery.com>
13291
13292 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: XFAIL.
13293 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
13294
e01d41e5
JJ
132952015-11-05 Jakub Jelinek <jakub@redhat.com>
13296 Ilya Verbin <ilya.verbin@intel.com>
13297
13298 * libgomp_g.h (GOMP_loop_nonmonotonic_dynamic_next,
13299 GOMP_loop_nonmonotonic_dynamic_start,
13300 GOMP_loop_nonmonotonic_guided_next,
13301 GOMP_loop_nonmonotonic_guided_start,
13302 GOMP_loop_ull_nonmonotonic_dynamic_next,
13303 GOMP_loop_ull_nonmonotonic_dynamic_start,
13304 GOMP_loop_ull_nonmonotonic_guided_next,
13305 GOMP_loop_ull_nonmonotonic_guided_start,
13306 GOMP_parallel_loop_nonmonotonic_dynamic,
13307 GOMP_parallel_loop_nonmonotonic_guided): New prototypes.
13308 (GOMP_target_41): Renamed to ...
13309 (GOMP_target_ext): ... this. Add num_teams and thread_limit
13310 arguments.
13311 (GOMP_target_data_41): Renamed to ...
13312 (GOMP_target_data_ext): ... this.
13313 (GOMP_target_update_41): Renamed to ...
13314 (GOMP_target_update_ext): ... this.
13315 * libgomp.map (GOMP_4.5): Export GOMP_target_ext,
13316 GOMP_target_data_ext and GOMP_target_update_ext instead of
13317 GOMP_target_41, GOMP_target_data_41 and GOMP_target_update_41.
13318 Export GOMP_loop_nonmonotonic_dynamic_next,
13319 GOMP_loop_nonmonotonic_dynamic_start,
13320 GOMP_loop_nonmonotonic_guided_next,
13321 GOMP_loop_nonmonotonic_guided_start,
13322 GOMP_loop_ull_nonmonotonic_dynamic_next,
13323 GOMP_loop_ull_nonmonotonic_dynamic_start,
13324 GOMP_loop_ull_nonmonotonic_guided_next,
13325 GOMP_loop_ull_nonmonotonic_guided_start,
13326 GOMP_parallel_loop_nonmonotonic_dynamic and
13327 GOMP_parallel_loop_nonmonotonic_guided.
13328 * loop.c (GOMP_parallel_loop_nonmonotonic_dynamic,
13329 GOMP_parallel_loop_nonmonotonic_guided,
13330 GOMP_loop_nonmonotonic_dynamic_start,
13331 GOMP_loop_nonmonotonic_guided_start,
13332 GOMP_loop_nonmonotonic_dynamic_next,
13333 GOMP_loop_nonmonotonic_guided_next): New aliases or functions.
13334 * loop_ull.c (GOMP_loop_ull_nonmonotonic_dynamic_start,
13335 GOMP_loop_ull_nonmonotonic_guided_start,
13336 GOMP_loop_ull_nonmonotonic_dynamic_next,
13337 GOMP_loop_ull_nonmonotonic_guided_next): Likewise.
13338 * target.c (gomp_map_0len_lookup, gomp_map_val): New inline
13339 functions.
13340 (gomp_map_vars): Handle GOMP_MAP_ALWAYS_POINTER. For
13341 GOMP_MAP_ZERO_LEN_ARRAY_SECTION use gomp_map_0len_lookup.
13342 Use gomp_map_val function.
13343 (gomp_target_fallback_firstprivate): New static function.
13344 (GOMP_target_41): Renamed to ...
13345 (GOMP_target_ext): ... this. Add num_teams and thread_limit
13346 arguments. Move firstprivate fallback handling into a new
13347 function.
13348 (GOMP_target_data_41): Renamed to ...
13349 (GOMP_target_data_ext): ... this.
13350 (GOMP_target_update_41): Renamed to ...
13351 (GOMP_target_update_ext): ... this.
13352 (gomp_exit_data): For GOMP_MAP_*ZERO_LEN* use
13353 gomp_map_0len_lookup instead of gomp_map_lookup.
13354 (omp_target_is_present): Use gomp_map_0len_lookup instead of
13355 gomp_map_lookup.
13356 * testsuite/libgomp.c/target-28.c: Likewise.
13357 * testsuite/libgomp.c/monotonic-1.c: New test.
13358 * testsuite/libgomp.c/monotonic-2.c: New test.
13359 * testsuite/libgomp.c/nonmonotonic-1.c: New test.
13360 * testsuite/libgomp.c/nonmonotonic-2.c: New test.
13361 * testsuite/libgomp.c/pr66199-5.c: New test.
13362 * testsuite/libgomp.c/pr66199-6.c: New test.
13363 * testsuite/libgomp.c/pr66199-7.c: New test.
13364 * testsuite/libgomp.c/pr66199-8.c: New test.
13365 * testsuite/libgomp.c/pr66199-9.c: New test.
13366 * testsuite/libgomp.c/reduction-11.c: New test.
13367 * testsuite/libgomp.c/reduction-12.c: New test.
13368 * testsuite/libgomp.c/reduction-13.c: New test.
13369 * testsuite/libgomp.c/reduction-14.c: New test.
13370 * testsuite/libgomp.c/reduction-15.c: New test.
13371 * testsuite/libgomp.c/target-12.c (main): Adjust for
13372 omp_target_is_present change for one-past-last element.
13373 * testsuite/libgomp.c/target-17.c (foo): Drop tests where
13374 the same var is both mapped and privatized.
13375 * testsuite/libgomp.c/target-19.c (foo): Adjust for different
13376 handling of zero-length array sections.
13377 * testsuite/libgomp.c/target-28.c: New test.
13378 * testsuite/libgomp.c/target-29.c: New test.
13379 * testsuite/libgomp.c/target-30.c: New test.
13380 * testsuite/libgomp.c/target-teams-1.c: New test.
13381 * testsuite/libgomp.c++/member-6.C: New test.
13382 * testsuite/libgomp.c++/member-7.C: New test.
13383 * testsuite/libgomp.c++/monotonic-1.C: New test.
13384 * testsuite/libgomp.c++/monotonic-2.C: New test.
13385 * testsuite/libgomp.c++/nonmonotonic-1.C: New test.
13386 * testsuite/libgomp.c++/nonmonotonic-2.C: New test.
13387 * testsuite/libgomp.c++/pr66199-3.C: New test.
13388 * testsuite/libgomp.c++/pr66199-4.C: New test.
13389 * testsuite/libgomp.c++/pr66199-5.C: New test.
13390 * testsuite/libgomp.c++/pr66199-6.C: New test.
13391 * testsuite/libgomp.c++/pr66199-7.C: New test.
13392 * testsuite/libgomp.c++/pr66199-8.C: New test.
13393 * testsuite/libgomp.c++/pr66199-9.C: New test.
13394 * testsuite/libgomp.c++/reduction-11.C: New test.
13395 * testsuite/libgomp.c++/reduction-12.C: New test.
13396 * testsuite/libgomp.c++/target-13.C: New test.
13397 * testsuite/libgomp.c++/target-14.C: New test.
13398 * testsuite/libgomp.c++/target-15.C: New test.
13399 * testsuite/libgomp.c++/target-16.C: New test.
13400 * testsuite/libgomp.c++/target-17.C: New test.
13401 * testsuite/libgomp.c++/target-18.C: New test.
13402 * testsuite/libgomp.c++/target-19.C: New test.
13403
ccc8282b
NS
134042015-11-04 Nathan Sidwell <nathan@codesourcery.com>
13405
13406 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Fix dimensions
13407 and reduction copy.
13408 * testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
13409 * testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
13410 * testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
13411 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
13412 * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Likewise.
13413 * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
13414 * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Likewise.
13415 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
13416 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
13417 * testsuite/libgomp.oacc-c-c++-common/reduction-initial-1.c: Likewise.
13418 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Likewise.
13419 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
13420 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
13421 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: New.
13422
5d6823a2
NS
134232015-11-04 Nathan Sidwell <nathan@codesourcery.com>
13424
13425 * libgomp.oacc-c-c++-common/loop-red-g-1.c: New.
13426 * libgomp.oacc-c-c++-common/loop-red-gwv-1.c: New.
13427 * libgomp.oacc-c-c++-common/loop-red-v-1.c: New.
13428 * libgomp.oacc-c-c++-common/loop-red-v-2.c: New.
13429 * libgomp.oacc-c-c++-common/loop-red-w-1.c: New.
13430 * libgomp.oacc-c-c++-common/loop-red-w-2.c: New.
13431 * libgomp.oacc-c-c++-common/loop-red-wv-1.c: New.
13432 * libgomp.oacc-fortran/reduction-5.f90: Avoid reference var.
13433
5c06742f
NS
134342015-11-03 Nathan Sidwell <nathan@codesourcery.com>
13435
13436 * libgomp.h (struct acc_dispatch_t): Remove args from exec_func.
13437 * plugin/plugin-nvptx.c (nvptx_exec): Remove sizes & kinds arg.
13438 (GOMP_OFFLOAD_openacc_parallel): Likewise.
13439 * oacc-host.c (host_openacc_exec): Likewise.
13440 * oacc-parallel.c (GOACC_parallel_keyed): Adjust exec_func call.
13441
4bf9e5a8
TS
134422015-11-03 Julian Brown <julian@codesourcery.com>
13443 Thomas Schwinge <thomas@codesourcery.com>
13444
13445 * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: New file.
13446 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
13447 * testsuite/libgomp.oacc-c-c++-common/worker-single-1a.c:
13448 Likewise.
13449 * testsuite/libgomp.oacc-c-c++-common/worker-single-4.c: Likewise.
13450 * testsuite/libgomp.oacc-c-c++-common/worker-single-6.c: Likewise.
13451
134522015-11-03 James Norris <jnorris@codesourcery.com>
13453
13454 * testsuite/libgomp.oacc-c-c++-common/atomic_capture-1.c: New
13455 file.
13456 * testsuite/libgomp.oacc-c-c++-common/atomic_capture-2.c:
13457 Likewise.
13458 * testsuite/libgomp.oacc-c-c++-common/atomic_rw-1.c: Likewise.
13459 * testsuite/libgomp.oacc-c-c++-common/atomic_update-1.c: Likewise.
13460 * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90: Likewise.
13461 * testsuite/libgomp.oacc-fortran/atomic_rw-1.f90: New file.
13462 * testsuite/libgomp.oacc-fortran/atomic_update-1.f90: Likewise.
13463
a0e701d8
NS
134642015-10-29 Nathan Sidwell <nathan@codesourcery.com>
13465
13466 * openacc.h (enum acc_device_t): Reformat. Ensure layout
13467 compatibility.
13468 (enum acc_async_t): Reformat.
13469 (acc_on_device): Declare compatible with builtin and provide C++
13470 wrapper.
13471 * testsuite/libgomp.oacc-c-c++-common/acc-on-device.c: New.
13472
41e977ac
TS
134732015-10-29 Thomas Schwinge <thomas@codesourcery.com>
13474 Cesar Philippidis <cesar@codesourcery.com>
13475
13476 * testsuite/libgomp.oacc-c-c++-common/combdir-1.c: Rename to...
13477 * testsuite/libgomp.oacc-c-c++-common/combined-directives-1.c:
13478 ... this. Add a description of the test at the top of the file.
13479 * testsuite/libgomp.oacc-fortran/combdir-1.f90: Rename file to...
13480 * testsuite/libgomp.oacc-fortran/combined-directives-1.f90:
13481 ... this. Add a description of the test at the top of the file.
13482
e3091406
NS
134832015-10-28 Nathan Sidwell <nathan@codesourcery.com>
13484
13485 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: New.
13486 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: New.
13487 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: New.
13488 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: New.
13489 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: New.
13490 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: New.
13491
a1c1908b
NS
134922015-10-27 Nathan Sidwell <nathan@codesourcery.com>
13493
13494 * plugin/plugin-nvptx.c (nvptx_exec): Remove check on compute
13495 dimensions.
13496
b3962a4a
TS
134972015-10-27 Thomas Schwinge <thomas@codesourcery.com>
13498
13499 PR testsuite/68063
13500 * testsuite/libgomp.c++/member-1.C (A::m1): Add missing private clause.
13501
88bae6f4
TS
135022015-10-27 James Norris <jnorris@codesourcery.com>
13503
13504 * testsuite/libgomp.oacc-c-c++-common/combdir-1.c: New file.
13505 * testsuite/libgomp.oacc-fortran/combdir-1.f90: Likewise.
13506
8baa7864
TS
135072015-10-26 Thomas Schwinge <thomas@codesourcery.com>
13508
bdeb752c
TS
13509 * testsuite/libgomp.oacc-c-c++-common/abort-1.c: Print to stderr.
13510 * testsuite/libgomp.oacc-c-c++-common/abort-3.c: Likewise.
13511
ecd4fd43
TS
13512 * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Remove explicit
13513 acc_device_nvidia usage.
13514 * testsuite/libgomp.oacc-c-c++-common/lib-10.c: Likewise.
13515 * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
13516 * testsuite/libgomp.oacc-c-c++-common/lib-9.c: Likewise.
13517
aa8b7d30
TS
13518 * oacc-init.c (acc_shutdown): Call gomp_init_targets_once.
13519 * testsuite/libgomp.oacc-c-c++-common/lib-8.c: New file.
13520
7c8f138d
TS
13521 PR libgomp/66518
13522 * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Resolve XFAIL.
13523
8baa7864
TS
13524 PR libgomp/65437
13525 PR libgomp/66518
13526 * oacc-mem.c (update_dev_host): Call goacc_lazy_initialize.
13527 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Remove XFAIL.
13528
88ebcde5
TV
135292015-10-23 Tom de Vries <tom@codesourcery.com>
13530
13531 PR testsuite/68063
13532 * testsuite/libgomp.c++/member-2.C (A::m1): Add missing private clause.
13533
9ef83c04
NS
135342015-10-20 Nathan Sidwell <nathan@codesourcery.com>
13535
13536 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Set sane
13537 vector_length.
13538 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
13539
3837c6d6
IV
135402015-10-14 Ilya Verbin <ilya.verbin@intel.com>
13541 Aleksander Ivanushenko <aleksander.ivanushenko@intel.com>
13542
13543 * target.c (gomp_map_vars): Initialize tgt->tgt_start and tgt->tgt_end
13544 to 0 when mapnum is 0.
13545
ac8a1965
SH
135462015-10-14 Sebastian Huber <sebastian.huber@embedded-brains.de>
13547
13548 * fortran.c (omp_get_place_proc_ids_, omp_get_partition_place_nums_):
13549 Cast to int from int32_t.
13550
d9a6bd32
JJ
135512015-10-13 Jakub Jelinek <jakub@redhat.com>
13552 Aldy Hernandez <aldyh@redhat.com>
13553 Ilya Verbin <ilya.verbin@intel.com>
13554
13555 * config/linux/affinity.c (omp_get_place_num_procs,
13556 omp_get_place_proc_ids, gomp_get_place_proc_ids_8): New functions.
13557 * config/linux/doacross.h: New file.
13558 * config/posix/affinity.c (omp_get_place_num_procs,
13559 omp_get_place_proc_ids, gomp_get_place_proc_ids_8): New functions.
13560 * config/posix/doacross.h: New file.
13561 * env.c: Include gomp-constants.h.
13562 (struct gomp_task_icv): Rename run_sched_modifier to
13563 run_sched_chunk_size.
13564 (gomp_max_task_priority_var): New variable.
13565 (parse_schedule): Rename run_sched_modifier to run_sched_chunk_size.
13566 (handle_omp_display_env): Change _OPENMP value from 201307 to
13567 201511. Print OMP_MAX_TASK_PRIORITY.
13568 (initialize_env): Parse OMP_MAX_TASK_PRIORITY.
13569 (omp_set_schedule, omp_get_schedule): Rename modifier argument to
13570 chunk_size and run_sched_modifier to run_sched_chunk_size.
13571 (omp_get_max_task_priority, omp_get_initial_device,
13572 omp_get_num_places, omp_get_place_num, omp_get_partition_num_places,
13573 omp_get_partition_place_nums): New functions.
13574 * fortran.c (omp_set_schedule_, omp_set_schedule_8_,
13575 omp_get_schedule_, omp_get_schedule_8_): Rename modifier argument
13576 to chunk_size.
13577 (omp_get_num_places_, omp_get_place_num_procs_,
13578 omp_get_place_num_procs_8_, omp_get_place_proc_ids_,
13579 omp_get_place_proc_ids_8_, omp_get_place_num_,
13580 omp_get_partition_num_places_, omp_get_partition_place_nums_,
13581 omp_get_partition_place_nums_8_, omp_get_initial_device_,
13582 omp_get_max_task_priority_): New functions.
13583 * libgomp_g.h (GOMP_loop_doacross_static_start,
13584 GOMP_loop_doacross_dynamic_start, GOMP_loop_doacross_guided_start,
13585 GOMP_loop_doacross_runtime_start, GOMP_loop_ull_doacross_static_start,
13586 GOMP_loop_ull_doacross_dynamic_start,
13587 GOMP_loop_ull_doacross_guided_start,
13588 GOMP_loop_ull_doacross_runtime_start, GOMP_doacross_post,
13589 GOMP_doacross_wait, GOMP_doacross_ull_post, GOMP_doacross_wait,
13590 GOMP_taskloop, GOMP_taskloop_ull, GOMP_target_41,
13591 GOMP_target_data_41, GOMP_target_update_41,
13592 GOMP_target_enter_exit_data): New prototypes.
13593 (GOMP_task): Add prototype argument.
13594 * libgomp.h (_LIBGOMP_CHECKING_): Define to 0 if not yet defined.
13595 (struct gomp_doacross_work_share): New type.
13596 (struct gomp_work_share): Add doacross field.
13597 (struct gomp_task_icv): Rename run_sched_modifier to
13598 run_sched_chunk_size.
13599 (enum gomp_task_kind): Rename GOMP_TASK_IFFALSE to
13600 GOMP_TASK_UNDEFERRED. Add comments.
13601 (struct gomp_task_depend_entry): Add comments.
13602 (struct gomp_task): Likewise.
13603 (struct gomp_taskgroup): Likewise.
13604 (struct gomp_target_task): New type.
13605 (struct gomp_team): Add comment.
13606 (gomp_get_place_proc_ids_8, gomp_doacross_init,
13607 gomp_doacross_ull_init, gomp_task_maybe_wait_for_dependencies,
13608 gomp_create_target_task, gomp_target_task_fn): New prototypes.
13609 (struct target_var_desc): New type.
13610 (struct target_mem_desc): Adjust comment. Use struct
13611 target_var_desc instead of splay_tree_key for list.
13612 (REFCOUNT_INFINITY): Define.
13613 (struct splay_tree_key_s): Remove copy_from field.
13614 (struct gomp_device_descr): Add dev2dev_func field.
13615 (enum gomp_map_vars_kind): New enum.
13616 (gomp_map_vars): Add one argument.
13617 * libgomp.map (OMP_4.5): Export omp_get_max_task_priority,
13618 omp_get_max_task_priority_, omp_get_num_places, omp_get_num_places_,
13619 omp_get_place_num_procs, omp_get_place_num_procs_,
13620 omp_get_place_num_procs_8_, omp_get_place_proc_ids,
13621 omp_get_place_proc_ids_, omp_get_place_proc_ids_8_, omp_get_place_num,
13622 omp_get_place_num_, omp_get_partition_num_places,
13623 omp_get_partition_num_places_, omp_get_partition_place_nums,
13624 omp_get_partition_place_nums_, omp_get_partition_place_nums_8_,
13625 omp_get_initial_device, omp_get_initial_device_, omp_target_alloc,
13626 omp_target_free, omp_target_is_present, omp_target_memcpy,
13627 omp_target_memcpy_rect, omp_target_associate_ptr and
13628 omp_target_disassociate_ptr.
13629 (GOMP_4.0.2): Renamed to ...
13630 (GOMP_4.5): ... this. Export GOMP_target_41, GOMP_target_data_41,
13631 GOMP_target_update_41, GOMP_target_enter_exit_data, GOMP_taskloop,
13632 GOMP_taskloop_ull, GOMP_loop_doacross_dynamic_start,
13633 GOMP_loop_doacross_guided_start, GOMP_loop_doacross_runtime_start,
13634 GOMP_loop_doacross_static_start, GOMP_doacross_post,
13635 GOMP_doacross_wait, GOMP_loop_ull_doacross_dynamic_start,
13636 GOMP_loop_ull_doacross_guided_start,
13637 GOMP_loop_ull_doacross_runtime_start,
13638 GOMP_loop_ull_doacross_static_start, GOMP_doacross_ull_post and
13639 GOMP_doacross_ull_wait.
13640 * libgomp.texi: Document omp_get_max_task_priority.
13641 Rename modifier argument to chunk_size for omp_set_schedule and
13642 omp_get_schedule. Document OMP_MAX_TASK_PRIORITY env var.
13643 * loop.c (GOMP_loop_runtime_start): Adjust for run_sched_modifier
13644 to run_sched_chunk_size renaming.
13645 (GOMP_loop_ordered_runtime_start): Likewise.
13646 (gomp_loop_doacross_static_start, gomp_loop_doacross_dynamic_start,
13647 gomp_loop_doacross_guided_start, GOMP_loop_doacross_runtime_start,
13648 GOMP_parallel_loop_runtime_start): New functions.
13649 (GOMP_parallel_loop_runtime): Adjust for run_sched_modifier
13650 to run_sched_chunk_size renaming.
13651 (GOMP_loop_doacross_static_start, GOMP_loop_doacross_dynamic_start,
13652 GOMP_loop_doacross_guided_start): New functions or aliases.
13653 * loop_ull.c (GOMP_loop_ull_runtime_start): Adjust for
13654 run_sched_modifier to run_sched_chunk_size renaming.
13655 (GOMP_loop_ull_ordered_runtime_start): Likewise.
13656 (gomp_loop_ull_doacross_static_start,
13657 gomp_loop_ull_doacross_dynamic_start,
13658 gomp_loop_ull_doacross_guided_start,
13659 GOMP_loop_ull_doacross_runtime_start): New functions.
13660 (GOMP_loop_ull_doacross_static_start,
13661 GOMP_loop_ull_doacross_dynamic_start,
13662 GOMP_loop_ull_doacross_guided_start): New functions or aliases.
13663 * oacc-mem.c (acc_map_data, present_create_copy,
13664 gomp_acc_insert_pointer): Pass GOMP_MAP_VARS_OPENACC instead of false
13665 to gomp_map_vars.
13666 (gomp_acc_remove_pointer): Use copy_from from target_var_desc.
13667 * oacc-parallel.c (GOACC_data_start): Pass GOMP_MAP_VARS_OPENACC
13668 instead of false to gomp_map_vars.
13669 (GOACC_parallel_keyed): Likewise. Use copy_from from target_var_desc.
13670 * omp.h.in (omp_lock_hint_t): New type.
13671 (omp_init_lock_with_hint, omp_init_nest_lock_with_hint,
13672 omp_get_num_places, omp_get_place_num_procs, omp_get_place_proc_ids,
13673 omp_get_place_num, omp_get_partition_num_places,
13674 omp_get_partition_place_nums, omp_get_initial_device,
13675 omp_get_max_task_priority, omp_target_alloc, omp_target_free,
13676 omp_target_is_present, omp_target_memcpy, omp_target_memcpy_rect,
13677 omp_target_associate_ptr, omp_target_disassociate_ptr): New
13678 prototypes.
13679 * omp_lib.f90.in (omp_lock_hint_kind): New parameter.
13680 (omp_lock_hint_none, omp_lock_hint_uncontended,
13681 omp_lock_hint_contended, omp_lock_hint_nonspeculative,
13682 omp_lock_hint_speculative): New parameters.
13683 (omp_init_lock_with_hint, omp_init_nest_lock_with_hint,
13684 omp_get_num_places, omp_get_place_num_procs, omp_get_place_proc_ids,
13685 omp_get_place_num, omp_get_partition_num_places,
13686 omp_get_partition_place_nums, omp_get_initial_device,
13687 omp_get_max_task_priority): New interfaces.
13688 (omp_set_schedule, omp_get_schedule): Rename modifier argument
13689 to chunk_size.
13690 * omp_lib.h.in (omp_lock_hint_kind): New parameter.
13691 (omp_lock_hint_none, omp_lock_hint_uncontended,
13692 omp_lock_hint_contended, omp_lock_hint_nonspeculative,
13693 omp_lock_hint_speculative): New parameters.
13694 (omp_init_lock_with_hint, omp_init_nest_lock_with_hint,
13695 omp_get_num_places, omp_get_place_num_procs, omp_get_place_proc_ids,
13696 omp_get_place_num, omp_get_partition_num_places,
13697 omp_get_partition_place_nums, omp_get_initial_device,
13698 omp_get_max_task_priority): New functions and subroutines.
13699 * ordered.c: Include stdarg.h and string.h.
13700 (MAX_COLLAPSED_BITS): Define.
13701 (gomp_doacross_init, GOMP_doacross_post, GOMP_doacross_wait,
13702 gomp_doacross_ull_init, GOMP_doacross_ull_post,
13703 GOMP_doacross_ull_wait): New functions.
13704 * target.c: Include errno.h.
13705 (resolve_device): If device is not initialized, call
13706 gomp_init_device on it.
13707 (gomp_map_lookup): New function.
13708 (gomp_map_vars_existing): Add tgt_var argument, fill it in.
13709 Don't bump refcount if REFCOUNT_INFINITY. Handle
13710 GOMP_MAP_ALWAYS_TO_P.
13711 (get_kind): Rename is_openacc argument to short_mapkind.
13712 (gomp_map_pointer): Use gomp_map_lookup.
13713 (gomp_map_fields_existing): New function.
13714 (gomp_map_vars): Rename is_openacc argument to short_mapkind
13715 and is_target to pragma_kind. Handle GOMP_MAP_VARS_ENTER_DATA,
13716 handle GOMP_MAP_FIRSTPRIVATE_INT, GOMP_MAP_STRUCT,
13717 GOMP_MAP_USE_DEVICE_PTR, GOMP_MAP_ZERO_LEN_ARRAY_SECTION.
13718 Adjust for tgt->list changed type and copy_from living in there.
13719 (gomp_copy_from_async): Adjust for tgt->list changed type and
13720 copy_from living in there.
13721 (gomp_unmap_vars): Likewise.
13722 (gomp_update): Likewise. Rename is_openacc argument to
13723 short_mapkind. Don't fail if object is not mapped.
13724 (gomp_load_image_to_device): Initialize refcount to
13725 REFCOUNT_INFINITY.
13726 (gomp_target_fallback): New function.
13727 (gomp_get_target_fn_addr): Likewise.
13728 (GOMP_target): Adjust gomp_map_vars caller, use
13729 gomp_get_target_fn_addr and gomp_target_fallback.
13730 (GOMP_target_41): New function.
13731 (gomp_target_data_fallback): New function.
13732 (GOMP_target_data): Use it, adjust gomp_map_vars caller.
13733 (GOMP_target_data_41): New function.
13734 (GOMP_target_update): Adjust gomp_update caller.
13735 (GOMP_target_update_41): New function.
13736 (gomp_exit_data, GOMP_target_enter_exit_data,
13737 gomp_target_task_fn, omp_target_alloc, omp_target_free,
13738 omp_target_is_present, omp_target_memcpy,
13739 omp_target_memcpy_rect_worker, omp_target_memcpy_rect,
13740 omp_target_associate_ptr, omp_target_disassociate_ptr,
13741 gomp_load_plugin_for_device): New functions.
13742 * task.c: Include gomp-constants.h. Include taskloop.c
13743 twice to get GOMP_taskloop and GOMP_taskloop_ull definitions.
13744 (gomp_task_handle_depend): New function.
13745 (GOMP_task): Use it. Add priority argument. Use
13746 gomp-constant.h constants instead of hardcoded numbers.
13747 Rename GOMP_TASK_IFFALSE to GOMP_TASK_UNDEFERRED.
13748 (gomp_create_target_task): New function.
13749 (verify_children_queue, verify_taskgroup_queue,
13750 verify_task_queue): New functions.
13751 (gomp_task_run_pre): Call verify_*_queue functions.
13752 If an upcoming tied task is about to leave the sibling or
13753 taskgroup queues in an invalid state, adjust appropriately.
13754 Remove taskgroup argument. Add comments.
13755 (gomp_task_run_post_handle_dependers): Add comments.
13756 (gomp_task_run_post_remove_parent): Likewise.
13757 (gomp_barrier_handle_tasks): Adjust gomp_task_run_pre caller.
13758 (GOMP_taskwait): Likewise. Add comments.
13759 (gomp_task_maybe_wait_for_dependencies): Fix scheduling
13760 problem such that the first non parent_depends_on task does not
13761 end up at the end of the children queue.
13762 (GOMP_taskgroup_start): Rename GOMP_TASK_IFFALSE to
13763 GOMP_TASK_UNDEFERRED.
13764 (GOMP_taskgroup_end): Adjust gomp_task_run_pre caller.
13765 * taskloop.c: New file.
13766 * testsuite/lib/libgomp.exp
13767 (check_effective_target_offload_device_nonshared_as): New proc.
13768 * testsuite/libgomp.c/affinity-2.c: New test.
13769 * testsuite/libgomp.c/doacross-1.c: New test.
13770 * testsuite/libgomp.c/doacross-2.c: New test.
13771 * testsuite/libgomp.c/examples-4/declare_target-1.c (fib_wrapper):
13772 Add map clause to target.
13773 * testsuite/libgomp.c/examples-4/declare_target-4.c (accum): Likewise.
13774 * testsuite/libgomp.c/examples-4/declare_target-5.c (accum): Likewise.
13775 * testsuite/libgomp.c/examples-4/device-1.c (main): Likewise.
13776 * testsuite/libgomp.c/examples-4/device-3.c (main): Likewise.
13777 * testsuite/libgomp.c/examples-4/target_data-3.c (gramSchmidt):
13778 Likewise.
13779 * testsuite/libgomp.c/examples-4/teams-2.c (dotprod): Likewise.
13780 * testsuite/libgomp.c/examples-4/teams-3.c (dotprod): Likewise.
13781 * testsuite/libgomp.c/examples-4/teams-4.c (dotprod): Likewise.
13782 * testsuite/libgomp.c/for-2.h (OMPTGT, OMPTO, OMPFROM): Define if
13783 not defined. Use those where needed.
13784 * testsuite/libgomp.c/for-4.c: New test.
13785 * testsuite/libgomp.c/for-5.c: New test.
13786 * testsuite/libgomp.c/for-6.c: New test.
13787 * testsuite/libgomp.c/linear-1.c: New test.
13788 * testsuite/libgomp.c/ordered-4.c: New test.
13789 * testsuite/libgomp.c/pr66199-2.c (f2): Adjust for linear clause
13790 only allowed on the loop iterator.
13791 * testsuite/libgomp.c/pr66199-3.c: New test.
13792 * testsuite/libgomp.c/pr66199-4.c: New test.
13793 * testsuite/libgomp.c/reduction-7.c: New test.
13794 * testsuite/libgomp.c/reduction-8.c: New test.
13795 * testsuite/libgomp.c/reduction-9.c: New test.
13796 * testsuite/libgomp.c/reduction-10.c: New test.
13797 * testsuite/libgomp.c/target-1.c (fn2, fn3, fn4): Add
13798 map(tofrom:s).
13799 * testsuite/libgomp.c/target-2.c (fn2, fn3, fn4): Likewise.
13800 * testsuite/libgomp.c/target-7.c (foo): Add map(h) where needed.
13801 * testsuite/libgomp.c/target-11.c: New test.
13802 * testsuite/libgomp.c/target-12.c: New test.
13803 * testsuite/libgomp.c/target-13.c: New test.
13804 * testsuite/libgomp.c/target-14.c: New test.
13805 * testsuite/libgomp.c/target-15.c: New test.
13806 * testsuite/libgomp.c/target-16.c: New test.
13807 * testsuite/libgomp.c/target-17.c: New test.
13808 * testsuite/libgomp.c/target-18.c: New test.
13809 * testsuite/libgomp.c/target-19.c: New test.
13810 * testsuite/libgomp.c/target-20.c: New test.
13811 * testsuite/libgomp.c/target-21.c: New test.
13812 * testsuite/libgomp.c/target-22.c: New test.
13813 * testsuite/libgomp.c/target-23.c: New test.
13814 * testsuite/libgomp.c/target-24.c: New test.
13815 * testsuite/libgomp.c/target-25.c: New test.
13816 * testsuite/libgomp.c/target-26.c: New test.
13817 * testsuite/libgomp.c/target-27.c: New test.
13818 * testsuite/libgomp.c/taskloop-1.c: New test.
13819 * testsuite/libgomp.c/taskloop-2.c: New test.
13820 * testsuite/libgomp.c/taskloop-3.c: New test.
13821 * testsuite/libgomp.c/taskloop-4.c: New test.
13822 * testsuite/libgomp.c++/ctor-13.C: New test.
13823 * testsuite/libgomp.c++/doacross-1.C: New test.
13824 * testsuite/libgomp.c++/examples-4/declare_target-2.C:
13825 Replace offload_device with offload_device_nonshared_as.
13826 * testsuite/libgomp.c++/for-12.C: New test.
13827 * testsuite/libgomp.c++/for-13.C: New test.
13828 * testsuite/libgomp.c++/for-14.C: New test.
13829 * testsuite/libgomp.c++/linear-1.C: New test.
13830 * testsuite/libgomp.c++/member-1.C: New test.
13831 * testsuite/libgomp.c++/member-2.C: New test.
13832 * testsuite/libgomp.c++/member-3.C: New test.
13833 * testsuite/libgomp.c++/member-4.C: New test.
13834 * testsuite/libgomp.c++/member-5.C: New test.
13835 * testsuite/libgomp.c++/ordered-1.C: New test.
13836 * testsuite/libgomp.c++/reduction-5.C: New test.
13837 * testsuite/libgomp.c++/reduction-6.C: New test.
13838 * testsuite/libgomp.c++/reduction-7.C: New test.
13839 * testsuite/libgomp.c++/reduction-8.C: New test.
13840 * testsuite/libgomp.c++/reduction-9.C: New test.
13841 * testsuite/libgomp.c++/reduction-10.C: New test.
13842 * testsuite/libgomp.c++/reference-1.C: New test.
13843 * testsuite/libgomp.c++/simd14.C: New test.
13844 * testsuite/libgomp.c++/target-2.C (fn2): Add map(tofrom: s) clause.
13845 * testsuite/libgomp.c++/target-5.C: New test.
13846 * testsuite/libgomp.c++/target-6.C: New test.
13847 * testsuite/libgomp.c++/target-7.C: New test.
13848 * testsuite/libgomp.c++/target-8.C: New test.
13849 * testsuite/libgomp.c++/target-9.C: New test.
13850 * testsuite/libgomp.c++/target-10.C: New test.
13851 * testsuite/libgomp.c++/target-11.C: New test.
13852 * testsuite/libgomp.c++/target-12.C: New test.
13853 * testsuite/libgomp.c++/taskloop-1.C: New test.
13854 * testsuite/libgomp.c++/taskloop-2.C: New test.
13855 * testsuite/libgomp.c++/taskloop-3.C: New test.
13856 * testsuite/libgomp.c++/taskloop-4.C: New test.
13857 * testsuite/libgomp.c++/taskloop-5.C: New test.
13858 * testsuite/libgomp.c++/taskloop-6.C: New test.
13859 * testsuite/libgomp.c++/taskloop-7.C: New test.
13860 * testsuite/libgomp.c++/taskloop-8.C: New test.
13861 * testsuite/libgomp.c++/taskloop-9.C: New test.
13862 * testsuite/libgomp.fortran/affinity1.f90: New test.
13863 * testsuite/libgomp.fortran/affinity2.f90: New test.
13864
1f600fea
TV
138652015-10-13 Tom de Vries <tom@codesourcery.com>
13866
13867 PR tree-optimization/67476
13868 * testsuite/libgomp.c/autopar-3.c: New test.
13869 * testsuite/libgomp.c/autopar-4.c: New test.
13870 * testsuite/libgomp.c/autopar-5.c: New test.
13871 * testsuite/libgomp.c/autopar-6.c: New test.
13872 * testsuite/libgomp.c/autopar-7.c: New test.
13873 * testsuite/libgomp.c/autopar-8.c: New test.
13874
058a654b
JN
138752015-10-12 James Norris <jnorris@codesourcery.com>
13876
13877 * testsuite/libgomp.oacc-c-c++-common/vector-loop.c: Fix loop
13878 initializer.
13879
9e531d37
DM
138802015-10-09 David Malcolm <dmalcolm@redhat.com>
13881
13882 * testsuite/lib/libgomp.exp: Load multiline.exp before prune.exp,
13883 using load_gcc_lib.
13884
113020dc
TS
138852015-10-02 Thomas Schwinge <thomas@codesourcery.com>
13886
13887 * oacc-ptx.h: Remove file, moving its content into...
13888 * config/nvptx/fortran.c: ... here...
13889 * config/nvptx/oacc-init.c: ..., here...
13890 * config/nvptx/oacc-parallel.c: ..., and here.
13891 * config/nvptx/openacc.f90: New file.
13892 * plugin/plugin-nvptx.c: Don't include "oacc-ptx.h".
13893 (link_ptx): Don't link in predefined bits of PTX code.
13894
cc3cd79b
NS
138952015-09-30 Nathan Sidwell <nathan@codesourcery.com>
13896 Bernd Schmidt <bernds@codesourcery.com>
13897
13898 * plugin/plugin-nvptx.c (targ_fn_launch): Use GOMP_DIM_MAX.
13899 (struct targ_ptx_obj): New.
13900 (nvptx_tdata): Move earlier, change data format.
13901 (link_ptx): Take targ_ptx_obj ptr and count. Allow multiple
13902 objects.
13903 (GOMP_OFFLOAD_load_image): Adjust.
13904
4e2a5450
TS
139052015-09-30 Thomas Schwinge <thomas@codesourcery.com>
13906
13907 * testsuite/libgomp.oacc-c-c++-common/abort-1.c: Add checkpoint.
13908 * testsuite/libgomp.oacc-c-c++-common/abort-3.c: Likewise.
13909 * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: Likewise.
13910 * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Likewise.
13911 * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
13912 * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise.
13913 * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise.
13914 * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise.
13915 * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise.
13916 * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise.
13917 * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
13918 * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Likewise.
13919 * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Likewise.
13920 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
13921 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
13922 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
13923 * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
13924 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
13925 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
13926 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
13927 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
13928 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
13929 * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
13930 * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
13931 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
13932 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
13933 * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Likewise.
13934 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
13935 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
13936 * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
13937 * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
13938 * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
13939 * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Likewise.
13940 * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
13941 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
13942 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
13943 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
13944 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
13945 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
13946 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
13947 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
13948 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
13949 * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
13950 * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
13951 * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Likewise.
13952 * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
13953 * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
13954 * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
13955 * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
13956 * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
13957 * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Likewise.
13958 * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Likewise.
13959 * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Likewise.
13960 * testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise.
13961 * testsuite/libgomp.oacc-fortran/abort-1.f90: Likewise.
13962 * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
13963 * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
13964 * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise.
13965 * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise.
13966 * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise.
13967 * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise.
13968 * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise.
13969 * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
13970
164453bb
NS
139712015-09-29 Nathan Sidwell <nathan@codesourcery.com>
13972
13973 * oacc-init.c (acc_on_device): Force optimization level.
13974
a12a0437
NS
139752015-09-29 Nathan Sidwell <nathan@codesourcery.com>
13976
13977 * plugin/plugin-nvptx.c (ARRAYSIZE): Delete.
13978 (cuda_errlist): Delete.
13979 (cuda_error): Reimplement.
13980
3e32ee19
NS
139812015-09-28 Nathan Sidwell <nathan@codesourcery.com>
13982
13983 * libgomp.h (acc_dispatch_t): Replace separate geometry args with
13984 array.
13985 * libgomp.map (GOACC_parallel_keyed): New.
13986 * oacc-parallel.c (goacc_wait): Take pointer to va_list. Adjust
13987 all callers.
13988 (GOACC_parallel_keyed): New interface. Lose geometry arguments
13989 and take keyed varargs list. Adjust call to exec_func.
13990 (GOACC_parallel): Force host fallback.
13991 * libgomp_g.h (GOACC_parallel): Remove.
13992 (GOACC_parallel_keyed): Declare.
13993 * plugin/plugin-nvptx.c (struct targ_fn_launch): New struct.
93d90219 13994 (struct targ_gn_descriptor): Replace name field with launch field.
3e32ee19
NS
13995 (nvptx_exec): Lose separate geometry args, take array. Process
13996 dynamic dimensions and adjust.
13997 (struct nvptx_tdata): Replace fn_names field with fn_descs.
13998 (GOMP_OFFLOAD_load_image): Adjust for change in function table
13999 data.
14000 (GOMP_OFFLOAD_openacc_parallel): Adjust for change in dimension
14001 passing.
14002 * oacc-host.c (host_openacc_exec): Adjust for change in dimension
14003 passing.
14004
6bb4c3e2
CLT
140052015-09-22 Chung-Lin Tang <cltang@codesourcery.com>
14006
14007 PR libgomp/67141
14008 * oacc-int.h (goacc_host_init): Add declaration.
14009 * oacc-host.c (goacc_host_init): Remove static and constructor attribute.
14010 * oacc-init.c (goacc_runtime_initialize): Call goacc_host_init() at end.
14011
74032f47 140122015-09-08 Aditya Kumar <hiraditya@msn.com>
34b18169 14013 Sebastian Pop <s.pop@samsung.com>
74032f47 14014
93d90219 14015 * testsuite/libgomp.graphite/bounds.c (int foo): Modified test case to
74032f47
AK
14016 match o/p.
14017 * testsuite/libgomp.graphite/force-parallel-1.c (void parloop): Same.
14018 * testsuite/libgomp.graphite/force-parallel-4.c: Same.
14019 * testsuite/libgomp.graphite/force-parallel-5.c: Same.
14020 * testsuite/libgomp.graphite/force-parallel-7.c: Same.
14021 * testsuite/libgomp.graphite/force-parallel-8.c: Same.
14022
97875f4a
JJ
140232015-09-03 Jakub Jelinek <jakub@redhat.com>
14024
14025 * configure.tgt: Add missing ;; in between nvptx and rtems
14026 snippets.
14027
06441dd5
SH
140282015-09-03 Sebastian Huber <sebastian.huber@embedded-brains.de>
14029
14030 * config/posix/pool.h (gomp_adjust_thread_attr): New.
14031 * config/rtems/pool.h (gomp_adjust_thread_attr): Likewise.
14032 (gomp_thread_pool_reservoir): Add priority member.
14033 * confi/rtems/proc.c (allocate_thread_pool_reservoir): Add
14034 priority.
14035 (parse_thread_pools): Likewise.
14036 * team.c (gomp_team_start): Call configuration provided
14037 gomp_adjust_thread_attr(). Destroy thread attributes if
14038 necessary.
14039 * libgomp.texi: Document GOMP_RTEMS_THREAD_POOLS.
14040
66c59f92
SH
140412015-09-03 Sebastian Huber <sebastian.huber@embedded-brains.de>
14042
14043 * config/posix/pool.h: New.
14044 * config/rtems/pool.h: Likewise.
14045 * config/rtems/proc.c: Likewise.
14046 * libgomp.h (gomp_thread_destructor): Declare.
14047 * team.c: Include configuration provided "pool.h".
14048 (gomp_get_thread_pool): Define in configuration.
14049 (gomp_team_end): Call configuration defined
14050 gomp_release_thread_pool().
14051
13c41b2e
SH
140522015-09-03 Sebastian Huber <sebastian.huber@embedded-brains.de>
14053
14054 * config/rtems/bar.c: New.
14055 * config/rtems/bar.h: Likewise.
14056 * config/rtems/mutex.c: Likewise.
14057 * config/rtems/mutex.h: Likewise.
14058 * config/rtems/sem.c: Likewise.
14059 * config/rtems/sem.h: Likewise.
14060 * configure.ac (*-*-rtems*): Check that Newlib provides a proper
14061 <sys/lock.h> header file.
14062 * configure.tgt (*-*-rtems*): Enable RTEMS configuration if
14063 supported by Newlib.
14064 * configure: Regenerate.
14065
7892ec67
SH
140662015-09-03 Sebastian Huber <sebastian.huber@embedded-brains.de>
14067
14068 * team.c (gomp_new_thread_pool): Delete and move content to ...
14069 (gomp_get_thread_pool): ... new function. Allocate and
14070 initialize thread pool on demand.
14071 (get_last_team): Use gomp_get_thread_pool().
14072 (gomp_team_start): Delete thread pool initialization.
14073
1b96e9a4
TV
140742015-09-03 Tom de Vries <tom@codesourcery.com>
14075
14076 PR tree-optimization/65637
14077 * testsuite/libgomp.c/autopar-2.c: New test.
14078
3ff2d74e
TV
140792015-08-29 Tom de Vries <tom@codesourcery.com>
14080
14081 PR tree-optimization/46193
14082 * testsuite/libgomp.c/pr46193.c: New test.
14083
2a21ff19
NS
140842015-08-24 Nathan Sidwell <nathan@codesourcery.com>
14085
14086 libgomp/
14087 * libgomp.map: Add 4.0.2 version.
14088 * target.c (offload_image_descr): Add version field.
14089 (gomp_load_image_to_device): Add version argument. Adjust plugin
14090 call. Improve load mismatch diagnostic.
14091 (gomp_unload_image_from_device): Add version argument. Adjust plugin
14092 call.
14093 (GOMP_offload_regster): Make stub function, move bulk to ...
14094 (GOMP_offload_register_ver): ... here. Process version argument.
14095 (GOMP_offload_unregister): Make stub function, move bulk to ...
14096 (GOMP_offload_unregister_ver): ... here. Process version argument.
14097 (gomp_init_device): Process version field.
14098 (gomp_unload_device): Process version field.
14099 (gomp_load_plugin_for_device): Reimplement DLSYM & DLSYM_OPT
14100 macros. Check plugin version.
14101 * libgomp.h (gomp_device_descr): Add version function field. Adjust
14102 loader and unloader types.
14103 * oacc-host.c: Include gomp-constants.h.
14104 (host_version): New.
14105 (host_load_image, host_unload_image): Adjust.
14106 (host_dispatch): Add host_version.
14107 * plugin/plugin-nvptx.c: Include gomp-constants.h.
14108 (GOMP_OFFLOAD_version): New.
14109 (GOMP_OFFLOAD_load_image): Add version arg and check it.
14110 (GOMP_OFFLOAD_unload_image): Likewise.
14111 * plugin/plugin-host.c: Include gomp-constants.h.
14112 (GOMP_OFFLOAD_version): New.
14113 (GOMP_OFFLOAD_load_image): Add version arg.
14114 (GOMP_OFFLOAD_unload_image): Likewise.
14115
1358a747
TV
141162015-08-24 Tom de Vries <tom@codesourcery.com>
14117
14118 PR tree-optimization/65468
14119 * testsuite/libgomp.oacc-c-c++-common/vector-loop.c: New test.
14120
6be5c241
TV
141212015-08-24 Tom de Vries <tom@codesourcery.com>
14122
14123 PR tree-optimization/65468
14124 * testsuite/libgomp.c/static-chunk-size-one.c: New test.
14125
bfe7ac89
JV
141262015-08-24 Joost VandeVondele <vondele@gnu.gcc.org>
14127
14128 PR libgomp/66761
14129 PR libgomp/67303
14130 * iter.c (gomp_iter_dynamic_next): Employ an atomic load.
14131 (gomp_iter_guided_next): Idem.
14132 * iter_ull.c (gomp_iter_ull_dynamic_next): Idem.
14133 (gomp_iter_ull_guided_next): Idem.
14134 * config/linux/wait.h (do_spin): Idem.
14135
b97e78b7
TS
141362015-08-10 Thomas Schwinge <thomas@codesourcery.com>
14137
14138 * libgomp-plugin.h (enum offload_target_type): Remove
14139 OFFLOAD_TARGET_TYPE_HOST_NONSHM.
14140 * openacc.f90 (openacc_kinds): Remove acc_device_host_nonshm.
14141 * openacc.h (enum acc_device_t): Likewise.
14142 * openacc_lib.h: Likewise.
14143 * oacc-init.c (name_of_acc_device_t): Don't handle it.
14144 (acc_on_device): Just use __builtin_acc_on_device.
14145 * testsuite/libgomp.oacc-c-c++-common/if-1.c: Don't forbid usage
14146 of acc_on_device builtin.
14147 * plugin/plugin-host.h: Remove file.
14148 * plugin/plugin-host.c: Likewise, but salvage some content into...
14149 * oacc-host.c: ... this file.
14150 * plugin/Makefrag.am: Don't build libgomp-plugin-host_nonshm.la.
14151 * plugin/configfrag.ac (offload_targets): Don't add host_nonshm.
14152 * Makefile.in: Regenerate.
14153 * configure: Likewise.
14154 * testsuite/lib/libgomp.exp
14155 (check_effective_target_openacc_host_nonshm_selected): Remove.
14156 * testsuite/libgomp.oacc-c++/c++.exp: Don't handle
14157 ACC_DEVICE_TYPE=host_nonshm.
14158 * testsuite/libgomp.oacc-c/c.exp: Likewise.
14159 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
14160 * testsuite/libgomp.oacc-c-c++-common/acc_on_device-1.c: Likewise.
14161 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
14162 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
14163 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
14164
44a7d18d
TS
141652015-08-10 Thomas Schwinge <thomas@codesourcery.com>
14166 Jakub Jelinek <jakub@redhat.com>
14167
14168 * config/nvptx/affinity.c: New file.
14169 * config/nvptx/alloc.c: Likewise.
14170 * config/nvptx/bar.c: Likewise.
14171 * config/nvptx/barrier.c: Likewise.
14172 * config/nvptx/critical.c: Likewise.
14173 * config/nvptx/env.c: Likewise.
14174 * config/nvptx/error.c: Likewise.
14175 * config/nvptx/fortran.c: Likewise.
14176 * config/nvptx/iter.c: Likewise.
14177 * config/nvptx/iter_ull.c: Likewise.
14178 * config/nvptx/libgomp-plugin.c: Likewise.
14179 * config/nvptx/lock.c: Likewise.
14180 * config/nvptx/loop.c: Likewise.
14181 * config/nvptx/loop_ull.c: Likewise.
14182 * config/nvptx/mutex.c: Likewise.
14183 * config/nvptx/oacc-async.c: Likewise.
14184 * config/nvptx/oacc-cuda.c: Likewise.
14185 * config/nvptx/oacc-host.c: Likewise.
14186 * config/nvptx/oacc-init.c: Likewise.
14187 * config/nvptx/oacc-mem.c: Likewise.
14188 * config/nvptx/oacc-parallel.c: Likewise.
14189 * config/nvptx/oacc-plugin.c: Likewise.
14190 * config/nvptx/omp-lock.h: Likewise.
14191 * config/nvptx/ordered.c: Likewise.
14192 * config/nvptx/parallel.c: Likewise.
14193 * config/nvptx/proc.c: Likewise.
14194 * config/nvptx/ptrlock.c: Likewise.
14195 * config/nvptx/sections.c: Likewise.
14196 * config/nvptx/sem.c: Likewise.
14197 * config/nvptx/single.c: Likewise.
14198 * config/nvptx/splay-tree.c: Likewise.
14199 * config/nvptx/target.c: Likewise.
14200 * config/nvptx/task.c: Likewise.
14201 * config/nvptx/team.c: Likewise.
14202 * config/nvptx/time.c: Likewise.
14203 * config/nvptx/work.c: Likewise.
14204 * configure.ac: Don't probe pthreads support for host nvptx*-*-*.
14205 * configure: Regenerate.
14206 * configure.tgt (config_path): Set to "nvptx" for target
14207 nvptx*-*-*.
14208
96a2d174
TS
142092015-08-10 Thomas Schwinge <thomas@codesourcery.com>
14210
14211 * testsuite/libgomp.oacc-c-c++-common/vector-type-1.c: New file.
14212
9ebddeb0
NS
142132015-08-03 Nathan Sidwell <nathan@codesourcery.com>
14214
14215 * plugin/plugin-nvptx.c: Don't include dlfcn.h.
14216 (cuda_errlist): Constify.
14217 (errmsg): Move into ...
14218 (cuda_error): ... here. Make smaller.
14219 (_XSTR, _STR): Delete.
14220 (cuda_synames): Delete.
14221 (verify_device_library): Delete.
14222 (nvptx_init): Don't call it.
14223
12efb1d7
TV
142242015-07-28 Tom de Vries <tom@codesourcery.com>
14225
14226 * testsuite/libgomp.c/uns-outer-4.c: New test.
14227
710ee218
CP
142282015-07-24 Cesar Philippidis <cesar@codesourcery.com>
14229
14230 * testsuite/libgomp.c/pr66714.c: New test.
14231
27c4ac7d
MB
142322015-07-22 Maxim Blumenthal <maxim.blumenthal@intel.com>
14233
14234 PR libgomp/66950
14235 * testsuite/libgomp.c/examples-4/simd-7.c (N): Change to 30 from 45.
14236 (fib_ref): New function.
14237 (fib): Correct corner cases in the recursion.
14238 (main): Replace the non-simd loop with fib_ref call.
14239 * testsuite/libgomp.fortran/examples-4/simd-7.f90: (fib_ref): New
14240 subroutine.
14241 (fibonacci): Lower the parameter N to 30. Correct accordingly check
14242 for the last array element value. Replace the non-simd loop with
14243 fib_ref call. Remove redundant b_ref array. Remove the comparison
14244 of the last array element with according Fibonacci sequence element.
14245 (fib): Correct corner cases in the recursion.
14246
22be2349
NS
142472015-07-21 Nathan Sidwell <nathan@codesourcery.com>
14248
14249 * target.c (gomp_offload_image_to_device): Rename to ...
14250 (gomp_load_image_to_device): ... here.
14251 (GOMP_offload_register): Adjust call.
14252 (gomp_init_device): Likewise.
14253 (gomp_unload_image_from_device): New. Broken out of ...
14254 (GOMP_offload_unregister): ... here. Call it.
14255 (gomp_unload_device): New.
14256 * libgomp.h (gomp_unload_device): Declare.
14257 * oacc-init.c (acc_shutdown_1): Unload from device before deleting
14258 mem maps.
14259
f3e9a059
NS
142602015-07-20 Nathan Sidwell <nathan@codesourcery.com>
14261
a091118d
NS
14262 * oacc-parallel.c (GOACC_parallel): Move variadic handling into
14263 wait=-specific if.
14264 (GOACC_enter_exit_data, GOACC_update): Use consistent num_waits
14265 !=0 condition.
14266 (goacc_waits): Move !num_waits handling to ...
14267 (GOACC_wait): ... here, the only caller that might have zero waits.
14268
f3e9a059
NS
14269 * plugin/plugin-nvptx.c (struct targ_fn_descriptor): Move later.
14270 (struct ptx_image_data): Move earlier, add fns field.
14271 (struct ptx_device): Add images and image_lock fields.
14272 (ptx_images, ptx_image_lock): Delete.
14273 (nvptx_open_device): Initialize images and image_lock fields.
14274 (nvptx_close_device): Destroy image_lock.
14275 (GOMP_OFFLOAD_load_image): Register image to device-specific fields.
14276 (GOMP_OFFLOAD_unload_image): Unregister image from device-specific
14277 fields.
14278
afb2d80b
NS
142792015-07-17 Nathan Sidwell <nathan@codesourcery.com>
14280
896c28a7
NS
14281 * target.c (GOMP_offload_register): Use int for device type arg.
14282 (GOMP_offload_unregister): Likewise.
14283
ebe4a560
NS
14284 * target.c (struct_offload_image_descr): Constify host_table.
14285 (gomp_offload_image_to_device): Likewise.
14286 (GOMP_offload_register, GOMP_offload_unregister): Likewise.
14287
afb2d80b
NS
14288 * libgomp.h (gomp_device_descr): Constify target data arguments.
14289 * target.c (struct offload_image_descr): Constify target_data.
14290 (gomp_offload_image_to_device): Likewise.
14291 (GOMP_offload_register): Likewise.
93d90219 14292 (GOMP_offload_unregister): Likewise.
afb2d80b
NS
14293 * plugin/plugin-host.c (GOMP_OFFLOAD_load_image,
14294 GOMP_OFFLOAD_unload_image): Constify target data.
14295 * plugin/plugin-nvptx.c (struct ptx_image_data): Constify target data.
14296 (GOMP_OFFLOAD_load_image, GOMP_OFFLOAD_unload_image): Likewise.
14297
a4cb876d
NS
142982015-07-16 Nathan Sidwell <nathan@codesourcery.com>
14299
14300 * plugin/plugin-nvptx.c (link_ptx): Constify string argument.
14301 Workaround driver library const error.
14302 (struct nvptx_tdata, nvptx_tdata_t): New.
14303 (GOMP_OFFLOAD_load_image): Use struct for target_data's real
14304 type.
14305
28ef6a27
MB
143062015-07-15 Maxim Blumenthal <maxim.blumenthal@intel.com>
14307
14308 * testsuite/libgomp.fortran/examples-4/simd-8.f90: (main): Change type
14309 of EPS parameter from integer to real.
14310 * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: (check): Change
14311 type of EPS parameter from integer to real.
14312
6dba0113
SH
143132015-07-15 Sebastian Huber <sebastian.huber@embedded-brains.de>
14314
14315 * team.c (get_last_team): New.
14316 (gomp_new_team): Recycle last non-nested team if possible.
14317 (gomp_team_end): Move team work share list free lock destruction
14318 to ...
14319 (free_team): ... here.
14320
4c1cb4da
MB
143212015-07-14 Maxim Blumenthal <maxim.blumenthal@intel.com>
14322
14323 * testsuite/libgomp.c/examples-4/simd-3.c: (main): Change type of res
14324 and ref from int to double. Replaced their comparison with
14325 an inequality of their difference and EPS.
14326 * testsuite/libgomp.c/examples-4/simd-8.c: (main): Replace the
14327 comparison of pri and a reference number with an inequality of their
14328 difference and EPS.
14329 * testsuite/libgomp.fortran/examples-4/simd-3.f90: (main): Replaced
14330 the comparison of sum and sum_ref with an inequality of their
14331 difference and EPS.
14332 * testsuite/libgomp.fortran/examples-4/simd-8.f90: (main): Replace
14333 the comparison of pri and a reference number with an inequality of
14334 their difference and EPS.
14335
343587dc
MB
143362015-07-13 Maxim Blumenthal <maxim.blumenthal@intel.com>
14337
14338 * testsuite/libgomp.c++/examples-4/e.53.2.C: Renamed to...
14339 * testsuite/libgomp.c++/examples-4/declare_target-2.C: ...this.
14340 * testsuite/libgomp.c++/examples-4/e.51.5.C: Renamed to...
14341 * testsuite/libgomp.c++/examples-4/target_data-5.C: ...this.
14342 * testsuite/libgomp.c/examples-4/e.56.3.c: Renamed to...
14343 * testsuite/libgomp.c/examples-4/array_sections-3.c: ...this.
14344 * testsuite/libgomp.c/examples-4/e.56.4.c: Renamed to...
14345 * testsuite/libgomp.c/examples-4/array_sections-4.c: ...this.
14346 * testsuite/libgomp.c/examples-4/e.55.1.c: Renamed to...
14347 * testsuite/libgomp.c/examples-4/async_target-1.c: ...this.
14348 * testsuite/libgomp.c/examples-4/e.55.2.c: Renamed to...
14349 * testsuite/libgomp.c/examples-4/async_target-2.c: ...this.
14350 (vec_mult_ref): Remove v1 and v2 arguments, turn them into local
14351 variables.
14352 (vec_mult): Likewise. Add #pragma omp taskwait.
14353 (main): Adjust caller.
14354 * testsuite/libgomp.c/examples-4/e.53.1.c: Renamed to...
14355 * testsuite/libgomp.c/examples-4/declare_target-1.c: ...this.
14356 * testsuite/libgomp.c/examples-4/e.53.3.c: Renamed to...
14357 * testsuite/libgomp.c/examples-4/declare_target-3.c: ...this.
14358 * testsuite/libgomp.c/examples-4/e.53.4.c: Renamed to...
14359 * testsuite/libgomp.c/examples-4/declare_target-4.c: ...this.
14360 * testsuite/libgomp.c/examples-4/e.53.5.c: Renamed to...
14361 * testsuite/libgomp.c/examples-4/declare_target-5.c: ...this.
14362 * testsuite/libgomp.c/examples-4/e.57.1.c: Renamed to...
14363 * testsuite/libgomp.c/examples-4/device-1.c: ...this.
14364 * testsuite/libgomp.c/examples-4/e.57.2.c: Renamed to...
14365 * testsuite/libgomp.c/examples-4/device-2.c: ...this.
14366 * testsuite/libgomp.c/examples-4/e.57.3.c: Renamed to...
14367 * testsuite/libgomp.c/examples-4/device-3.c: ...this.
14368 * testsuite/libgomp.c/examples-4/simd-1.c: New file.
14369 * testsuite/libgomp.c/examples-4/simd-2.c: New file.
14370 * testsuite/libgomp.c/examples-4/simd-3.c: New file.
14371 * testsuite/libgomp.c/examples-4/simd-4.c: New file.
14372 * testsuite/libgomp.c/examples-4/simd-5.c: New file.
14373 * testsuite/libgomp.c/examples-4/simd-6.c: New file.
14374 * testsuite/libgomp.c/examples-4/simd-7.c: New file.
14375 * testsuite/libgomp.c/examples-4/simd-8.c: New file.
14376 * testsuite/libgomp.c/examples-4/e.50.1.c: Renamed to...
14377 * testsuite/libgomp.c/examples-4/target-1.c: ...this.
14378 * testsuite/libgomp.c/examples-4/e.50.2.c: Renamed to...
14379 * testsuite/libgomp.c/examples-4/target-2.c: ...this.
14380 * testsuite/libgomp.c/examples-4/e.50.3.c: Renamed to...
14381 * testsuite/libgomp.c/examples-4/target-3.c: ...this.
14382 * testsuite/libgomp.c/examples-4/e.50.4.c: Renamed to...
14383 * testsuite/libgomp.c/examples-4/target-4.c: ...this.
14384 * testsuite/libgomp.c/examples-4/e.50.5.c: Renamed to...
14385 * testsuite/libgomp.c/examples-4/target-5.c: ...this.
14386 * testsuite/libgomp.c/examples-4/e.51.1.c: Renamed to...
14387 * testsuite/libgomp.c/examples-4/target_data-1.c: ...this.
14388 * testsuite/libgomp.c/examples-4/e.51.2.c: Renamed to...
14389 * testsuite/libgomp.c/examples-4/target_data-2.c: ...this.
14390 * testsuite/libgomp.c/examples-4/e.51.3.c: Renamed to...
14391 * testsuite/libgomp.c/examples-4/target_data-3.c: ...this.
14392 * testsuite/libgomp.c/examples-4/e.51.4.c: Renamed to...
14393 * testsuite/libgomp.c/examples-4/target_data-4.c: ...this.
14394 * testsuite/libgomp.c/examples-4/e.51.6.c: Renamed to...
14395 * testsuite/libgomp.c/examples-4/target_data-6.c: ...this.
14396 * testsuite/libgomp.c/examples-4/e.51.7.c: Renamed to...
14397 * testsuite/libgomp.c/examples-4/target_data-7.c: ...this.
14398 * testsuite/libgomp.c/examples-4/e.52.1.c: Renamed to...
14399 * testsuite/libgomp.c/examples-4/target_update-1.c: ...this.
14400 * testsuite/libgomp.c/examples-4/e.52.2.c: Renamed to...
14401 * testsuite/libgomp.c/examples-4/target_update-2.c: ...this.
14402 * testsuite/libgomp.c/examples-4/task_dep-1.c: New file.
14403 * testsuite/libgomp.c/examples-4/task_dep-2.c: New file.
14404 * testsuite/libgomp.c/examples-4/task_dep-3.c: New file.
14405 * testsuite/libgomp.c/examples-4/task_dep-4.c: New file.
14406 * testsuite/libgomp.c/examples-4/task_dep-5.c: New file.
14407 * testsuite/libgomp.c/examples-4/e.54.2.c: Renamed to...
14408 * testsuite/libgomp.c/examples-4/teams-2.c: ...this.
14409 * testsuite/libgomp.c/examples-4/e.54.3.c: Renamed to...
14410 * testsuite/libgomp.c/examples-4/teams-3.c: ...this.
14411 * testsuite/libgomp.c/examples-4/e.54.4.c: Renamed to...
14412 * testsuite/libgomp.c/examples-4/teams-4.c: ...this.
14413 * testsuite/libgomp.c/examples-4/e.54.5.c: Renamed to...
14414 * testsuite/libgomp.c/examples-4/teams-5.c: ...this.
14415 * testsuite/libgomp.c/examples-4/e.54.6.c: Renamed to...
14416 * testsuite/libgomp.c/examples-4/teams-6.c: ...this.
14417 * testsuite/libgomp.fortran/examples-4/e.56.3.f90: Renamed to...
14418 * testsuite/libgomp.fortran/examples-4/array_sections-3.f90: ...this.
14419 * testsuite/libgomp.fortran/examples-4/e.56.4.f90: Renamed to...
14420 * testsuite/libgomp.fortran/examples-4/array_sections-4.f90: ...this.
14421 * testsuite/libgomp.fortran/examples-4/e.55.1.f90: Renamed to...
14422 * testsuite/libgomp.fortran/examples-4/async_target-1.f90: ...this.
14423 * testsuite/libgomp.fortran/examples-4/e.55.2.f90: Renamed to...
14424 * testsuite/libgomp.fortran/examples-4/async_target-2.f90: ...this.
14425 (vec_mult): Add !$omp taskwait.
14426 * testsuite/libgomp.fortran/examples-4/e.53.1.f90: Renamed to...
14427 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: ...this.
14428 * testsuite/libgomp.fortran/examples-4/e.53.2.f90: Renamed to...
14429 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: ...this.
14430 * testsuite/libgomp.fortran/examples-4/e.53.3.f90: Renamed to...
14431 * testsuite/libgomp.fortran/examples-4/declare_target-3.f90: ...this.
14432 * testsuite/libgomp.fortran/examples-4/e.53.4.f90: Renamed to...
14433 * testsuite/libgomp.fortran/examples-4/declare_target-4.f90: ...this.
14434 * testsuite/libgomp.fortran/examples-4/e.53.5.f90: Renamed to...
14435 * testsuite/libgomp.fortran/examples-4/declare_target-5.f90: ...this.
14436 * testsuite/libgomp.fortran/examples-4/e.57.1.f90: Renamed to...
14437 * testsuite/libgomp.fortran/examples-4/device-1.f90: ...this.
14438 * testsuite/libgomp.fortran/examples-4/e.57.2.f90: Renamed to...
14439 * testsuite/libgomp.fortran/examples-4/device-2.f90: ...this.
14440 * testsuite/libgomp.fortran/examples-4/e.57.3.f90: Renamed to...
14441 * testsuite/libgomp.fortran/examples-4/device-3.f90: ...this.
14442 * testsuite/libgomp.fortran/examples-4/simd-1.f90: New file.
14443 * testsuite/libgomp.fortran/examples-4/simd-2.f90: New file.
14444 * testsuite/libgomp.fortran/examples-4/simd-3.f90: New file.
14445 * testsuite/libgomp.fortran/examples-4/simd-4.f90: New file.
14446 * testsuite/libgomp.fortran/examples-4/simd-5.f90: New file.
14447 * testsuite/libgomp.fortran/examples-4/simd-6.f90: New file.
14448 * testsuite/libgomp.fortran/examples-4/simd-7.f90: New file.
14449 * testsuite/libgomp.fortran/examples-4/simd-8.f90: New file.
14450 * testsuite/libgomp.fortran/examples-4/e.50.1.f90: Renamed to...
14451 * testsuite/libgomp.fortran/examples-4/target-1.f90: ...this.
14452 * testsuite/libgomp.fortran/examples-4/e.50.2.f90: Renamed to...
14453 * testsuite/libgomp.fortran/examples-4/target-2.f90: ...this.
14454 * testsuite/libgomp.fortran/examples-4/e.50.3.f90: Renamed to...
14455 * testsuite/libgomp.fortran/examples-4/target-3.f90: ...this.
14456 * testsuite/libgomp.fortran/examples-4/e.50.4.f90: Renamed to...
14457 * testsuite/libgomp.fortran/examples-4/target-4.f90: ...this.
14458 * testsuite/libgomp.fortran/examples-4/e.50.5.f90: Renamed to...
14459 * testsuite/libgomp.fortran/examples-4/target-5.f90: ...this.
14460 * testsuite/libgomp.fortran/examples-4/e.51.1.f90: Renamed to...
14461 * testsuite/libgomp.fortran/examples-4/target_data-1.f90: ...this.
14462 * testsuite/libgomp.fortran/examples-4/e.51.2.f90: Renamed to...
14463 * testsuite/libgomp.fortran/examples-4/target_data-2.f90: ...this.
14464 * testsuite/libgomp.fortran/examples-4/e.51.3.f90: Renamed to...
14465 * testsuite/libgomp.fortran/examples-4/target_data-3.f90: ...this.
14466 * testsuite/libgomp.fortran/examples-4/e.51.4.f90: Renamed to...
14467 * testsuite/libgomp.fortran/examples-4/target_data-4.f90: ...this.
14468 * testsuite/libgomp.fortran/examples-4/e.51.5.f90: Renamed to...
14469 * testsuite/libgomp.fortran/examples-4/target_data-5.f90: ...this.
14470 * testsuite/libgomp.fortran/examples-4/e.51.6.f90: Renamed to...
14471 * testsuite/libgomp.fortran/examples-4/target_data-6.f90: ...this.
14472 * testsuite/libgomp.fortran/examples-4/e.51.7.f90: Renamed to...
14473 * testsuite/libgomp.fortran/examples-4/target_data-7.f90: ...this.
14474 * testsuite/libgomp.fortran/examples-4/e.52.1.f90: Renamed to...
14475 * testsuite/libgomp.fortran/examples-4/target_update-1.f90: ...this.
14476 * testsuite/libgomp.fortran/examples-4/e.52.2.f90: Renamed to...
14477 * testsuite/libgomp.fortran/examples-4/target_update-2.f90: ...this.
14478 * testsuite/libgomp.fortran/examples-4/task_dep-1.f90: New file.
14479 * testsuite/libgomp.fortran/examples-4/task_dep-2.f90: New file.
14480 * testsuite/libgomp.fortran/examples-4/task_dep-3.f90: New file.
14481 * testsuite/libgomp.fortran/examples-4/task_dep-4.f90: New file.
14482 * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: New file.
14483 * testsuite/libgomp.fortran/examples-4/e.54.2.f90: Renamed to...
14484 * testsuite/libgomp.fortran/examples-4/teams-2.f90: ...this.
14485 * testsuite/libgomp.fortran/examples-4/e.54.3.f90: Renamed to...
14486 * testsuite/libgomp.fortran/examples-4/teams-3.f90: ...this.
14487 * testsuite/libgomp.fortran/examples-4/e.54.4.f90: Renamed to...
14488 * testsuite/libgomp.fortran/examples-4/teams-4.f90: ...this.
14489 * testsuite/libgomp.fortran/examples-4/e.54.5.f90: Renamed to...
14490 * testsuite/libgomp.fortran/examples-4/teams-5.f90: ...this.
14491 * testsuite/libgomp.fortran/examples-4/e.54.6.f90: Renamed to...
14492 * testsuite/libgomp.fortran/examples-4/teams-6.f90: ...this.
14493
9f620bf1
TV
144942015-07-10 Tom de Vries <tom@codesourcery.com>
14495
14496 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt-2.f95: New test.
14497 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt.f95: New test.
14498
a92defda
TS
144992015-07-08 Thomas Schwinge <thomas@codesourcery.com>
14500
14501 PR libgomp/65099
14502 * plugin/plugin-nvptx.c (nvptx_get_num_devices): Return 0 if not
14503 in a 64-bit configuration.
14504 * testsuite/libgomp.oacc-c++/c++.exp: Don't attempt nvidia
14505 offloading testing if no such device is available.
14506 * testsuite/libgomp.oacc-c/c.exp: Likewise.
14507 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
14508
cadb53a5
TV
145092015-07-08 Tom de Vries <tom@codesourcery.com>
14510
14511 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (main): Fix
14512 second call to f.
14513 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
14514
712cb0bb
TV
145152015-07-07 Tom de Vries <tom@codesourcery.com>
14516
14517 PR tree-optimization/66642
14518 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (main): Test low
14519 iteration count case.
14520 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c (init): New
14521 function, factor out of ...
14522 (main): ... here. Test low iteration count case.
14523
e5210c77
SH
145242015-07-06 Sebastian Huber <sebastian.huber@embedded-brains.de>
14525
14526 * libgomp.h (gomp_thread_pool): Comment last_team field.
14527
f70360e7
UB
145282015-07-02 Uros Bizjak <ubizjak@gmail.com>
14529
14530 * testsuite/libgomp.c++/pr66702-1.C: Require
14531 vect_simd_clones effective target.
14532 * testsuite/libgomp.c++/pr66702-2.C: Ditto.
14533
b451c271
TV
145342015-06-30 Tom de Vries <tom@codesourcery.com>
14535
14536 * testsuite/libgomp.oacc-c++/c++.exp: Set DEFAULT_CFLAGS to -O2 if not
14537 already set. Use DEFAULT_CFLAGS in dg-runtest.
14538 * testsuite/libgomp.oacc-c-c++-common/collapse-3.c: Remove dg-options
14539 "-O2".
14540
f8e89d9f
TV
145412015-06-30 Tom de Vries <tom@codesourcery.com>
14542
14543 * testsuite/libgomp.c++/c++.exp: Set DEFAULT_CFLAGS to -O2 if not
14544 already set. Use DEFAULT_CFLAGS in dg-runtest.
14545 * testsuite/libgomp.c++/atomic-16.C: Remove dg-options "-O2 -fopenmp".
14546 * testsuite/libgomp.c++/pr64824.C: Same.
14547 * testsuite/libgomp.c++/pr64868.C: Same.
14548 * testsuite/libgomp.c++/pr66199-1.C: Same.
14549 * testsuite/libgomp.c++/pr66199-2.C: Same.
14550 * testsuite/libgomp.c++/target-2.C: Same.
14551 * testsuite/libgomp.c++/for-7.C: Use dg-additional-options for
14552 -std=<standard> option.
14553 * testsuite/libgomp.c++/udr-11.C: Same.
14554 * testsuite/libgomp.c++/udr-12.C: Same.
14555 * testsuite/libgomp.c++/udr-13.C: Same.
14556 * testsuite/libgomp.c++/udr-14.C: Same.
14557 * testsuite/libgomp.c++/udr-15.C: Same.
14558 * testsuite/libgomp.c++/udr-16.C: Same.
14559 * testsuite/libgomp.c++/udr-17.C: Same.
14560 * testsuite/libgomp.c++/udr-18.C: Same.
14561 * testsuite/libgomp.c++/udr-19.C: Same.
14562 * testsuite/libgomp.c++/atomic-1.C: Remove dg-options "-O2".
14563 * testsuite/libgomp.c++/simd-1.C: Same.
14564 * testsuite/libgomp.c++/simd-2.C: Same.
14565 * testsuite/libgomp.c++/simd-3.C: Same.
14566 * testsuite/libgomp.c++/simd-4.C: Same.
14567 * testsuite/libgomp.c++/simd-5.C: Same.
14568 * testsuite/libgomp.c++/simd-6.C: Same.
14569 * testsuite/libgomp.c++/simd-7.C: Same.
14570 * testsuite/libgomp.c++/simd-8.C: Same.
14571 * testsuite/libgomp.c++/simd-9.C: Same.
14572 * testsuite/libgomp.c++/simd10.C: Same.
14573 * testsuite/libgomp.c++/simd11.C: Same.
14574 * testsuite/libgomp.c++/simd12.C: Same.
14575 * testsuite/libgomp.c++/simd13.C: Same.
14576
3446fe48
JJ
145772015-06-30 Jakub Jelinek <jakub@redhat.com>
14578
14579 PR middle-end/66702
14580 * testsuite/libgomp.c++/pr66702-1.C: New test.
14581 * testsuite/libgomp.c++/pr66702-2.C: New test.
14582
8a36714a
TV
145832015-06-30 Tom de Vries <tom@codesourcery.com>
14584
14585 * testsuite/libgomp.c/parloops-exit-first-loop-alt-5.c: New test.
14586 * testsuite/libgomp.c/parloops-exit-first-loop-alt-6.c: New test.
14587 * testsuite/libgomp.c/parloops-exit-first-loop-alt-7.c: New test.
14588 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Update comment.
14589
4f75d608
TV
145902015-06-30 Tom de Vries <tom@codesourcery.com>
14591
14592 PR tree-optimization/66652
14593 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (f): Rewrite
14594 using restrict pointers.
14595 (main): Add arguments to calls to f.
14596 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
14597
6d9d1eeb
AT
145982015-06-23 Andreas Tobler <andreast@gcc.gnu.org>
14599
14600 * configure.ac: Fix check for header <sys/sysctl.h>.
14601 * configure: Regenerate.
14602 * config.h.in: Likewise.
14603
1222f22b
TV
146042015-06-23 Tom de Vries <tom@codesourcery.com>
14605
14606 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (main): Use
14607 abort.
14608 * testsuite/libgomp.c/parloops-exit-first-loop-alt-4.c (main): Same.
14609
d7efbbf6
TS
146102015-06-19 Thomas Schwinge <thomas@codesourcery.com>
14611
bfcd036f
TS
14612 * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Only consider for
14613 acc_device_nvidia.
14614
d7efbbf6
TS
14615 PR libgomp/66518
14616 * testsuite/libgomp.oacc-c-c++-common/lib-3.c: XFAIL.
14617 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
14618
d7bfc710
TV
146192015-06-15 Tom de Vries <tom@codesourcery.com>
14620
14621 * testsuite/libgomp.c/atomic-1.c: Remove dg-options "-O2". Use
14622 dg-additional-options for any remaining options.
14623 * testsuite/libgomp.c/atomic-2.c: Same.
14624 * testsuite/libgomp.c/atomic-4.c: Same.
14625 * testsuite/libgomp.c/atomic-5.c: Same.
14626 * testsuite/libgomp.c/atomic-6.c: Same.
14627 * testsuite/libgomp.c/autopar-1.c: Same.
14628 * testsuite/libgomp.c/copyin-1.c: Same.
14629 * testsuite/libgomp.c/copyin-2.c: Same.
14630 * testsuite/libgomp.c/copyin-3.c: Same.
14631 * testsuite/libgomp.c/examples-4/e.53.5.c: Same.
14632 * testsuite/libgomp.c/nestedfn-5.c: Same.
14633 * testsuite/libgomp.c/parloops-exit-first-loop-alt-2.c: Same.
14634 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c: Same.
14635 * testsuite/libgomp.c/parloops-exit-first-loop-alt-4.c: Same.
14636 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
14637 * testsuite/libgomp.c/pr32362-1.c: Same.
14638 * testsuite/libgomp.c/pr32362-2.c: Same.
14639 * testsuite/libgomp.c/pr32362-3.c: Same.
14640 * testsuite/libgomp.c/pr39591-1.c: Same.
14641 * testsuite/libgomp.c/pr39591-2.c: Same.
14642 * testsuite/libgomp.c/pr39591-3.c: Same.
14643 * testsuite/libgomp.c/pr58392.c: Same.
14644 * testsuite/libgomp.c/pr58756.c: Same.
14645 * testsuite/libgomp.c/simd-1.c: Same.
14646 * testsuite/libgomp.c/simd-10.c: Same.
14647 * testsuite/libgomp.c/simd-11.c: Same.
14648 * testsuite/libgomp.c/simd-12.c: Same.
14649 * testsuite/libgomp.c/simd-13.c: Same.
14650 * testsuite/libgomp.c/simd-14.c: Same.
14651 * testsuite/libgomp.c/simd-15.c: Same.
14652 * testsuite/libgomp.c/simd-2.c: Same.
14653 * testsuite/libgomp.c/simd-3.c: Same.
14654 * testsuite/libgomp.c/simd-4.c: Same.
14655 * testsuite/libgomp.c/simd-5.c: Same.
14656 * testsuite/libgomp.c/simd-6.c: Same.
14657 * testsuite/libgomp.c/simd-7.c: Same.
14658 * testsuite/libgomp.c/simd-8.c: Same.
14659 * testsuite/libgomp.c/simd-9.c: Same.
14660
fb5b5352
TV
146612015-06-15 Tom de Vries <tom@codesourcery.com>
14662
14663 * testsuite/libgomp.c/pr35625.c: Fix typo.
14664
ca431bef
TV
146652015-06-15 Tom de Vries <tom@codesourcery.com>
14666
14667 * testsuite/libgomp.c/atomic-18.c: Remove superfluous -fopenmp setting
14668 in dg-options.
14669 * testsuite/libgomp.c/atomic-3.c: Same.
14670 * testsuite/libgomp.c/debug-1.c: Same.
14671 * testsuite/libgomp.c/nqueens-1.c: Same.
14672 * testsuite/libgomp.c/pr26171.c: Same.
14673 * testsuite/libgomp.c/pr48591.c: Same.
14674 * testsuite/libgomp.c/pr64824.c: Same.
14675 * testsuite/libgomp.c/pr64868.c: Same.
14676 * testsuite/libgomp.c/pr66133.c: Same.
14677 * testsuite/libgomp.c/pr66199-1.c: Same.
14678 * testsuite/libgomp.c/pr66199-2.c: Same.
14679 * testsuite/libgomp.c/target-8.c: Same.
14680
0d8a9e20
TV
146812015-06-15 Tom de Vries <tom@codesourcery.com>
14682
14683 * testsuite/libgomp.c/collapse-3.c: Use dg-additional-options for
14684 -std={gnu99,c99}.
14685 * testsuite/libgomp.c/for-1.c: Same.
14686 * testsuite/libgomp.c/for-2.c: Same.
14687 * testsuite/libgomp.c/for-3.c: Same.
14688 * testsuite/libgomp.c/pr35625.c: Same.
14689 * testsuite/libgomp.c/pr39154.c: Same.
14690 * testsuite/libgomp.c/simd-16.c: Same.
14691 * testsuite/libgomp.c/simd-17.c: Same.
14692
a6860be9
TV
146932015-06-13 Tom de Vries <tom@codesourcery.com>
14694
14695 * testsuite/libgomp.c/parloops-exit-first-loop-alt-4.c: New test.
14696
ab3306d2
TV
146972015-06-13 Tom de Vries <tom@codesourcery.com>
14698
14699 * testsuite/libgomp.c/parloops-exit-first-loop-alt-2.c: Add comment.
14700 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
14701 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c: Add comment.
14702 (N): Define.
14703 (main): Use N instead of hardcoded constants.
14704
7c82d827
TV
147052015-06-05 Tom de Vries <tom@codesourcery.com>
14706
14707 merge from gomp4 branch:
14708 2015-05-28 Tom de Vries <tom@codesourcery.com>
14709
14710 PR tree-optimization/65443
14711 * testsuite/libgomp.c/parloops-exit-first-loop-alt-2.c: New test.
14712 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c: New test.
14713 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: New test.
14714
c469078d
BRF
147152015-05-29 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
14716
14717 * testsuite/libgomp.graphite/bounds.c: Adjust for
14718 cleanup-tree-dump removal.
14719 * testsuite/libgomp.graphite/force-parallel-1.c: Likewise.
14720 * testsuite/libgomp.graphite/force-parallel-2.c: Likewise.
14721 * testsuite/libgomp.graphite/force-parallel-3.c: Likewise.
14722 * testsuite/libgomp.graphite/force-parallel-4.c: Likewise.
14723 * testsuite/libgomp.graphite/force-parallel-5.c: Likewise.
14724 * testsuite/libgomp.graphite/force-parallel-6.c: Likewise.
14725 * testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
14726 * testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
14727 * testsuite/libgomp.graphite/force-parallel-9.c: Likewise.
14728 * testsuite/libgomp.graphite/pr41118.c: Likewise.
14729
bb3caa35
UB
147302015-05-28 Uros Bizjak <ubizjak@gmail.com>
14731
14732 * config/linux/x86/futex.h (sys_futex0) [!__x86_64__]: Remove function.
14733 (futex_wait) [!__x86_64__]: Use __asm operand instead of sys_futex0.
14734 (futex_wake) [!__x86_64__]: Ditto.
14735
9fb5fd44
JB
147362015-05-28 Julian Brown <julian@codesourcery.com>
14737
14738 * oacc-init.c (resolve_device): Add FAIL_IS_ERROR argument. Update
14739 function comment. Only call gomp_fatal if new argument is true.
14740 (acc_dev_num_out_of_range): New function.
14741 (acc_init_1, acc_shutdown_1): Update call to resolve_device. Call
14742 acc_dev_num_out_of_range as appropriate.
14743 (acc_get_num_devices, acc_set_device_type, acc_get_device_type)
bb3caa35
UB
14744 (acc_get_device_num, acc_set_device_num): Update calls to
14745 resolve_device.
9fb5fd44
JB
14746 * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Update expected test
14747 output.
14748
32eaed93
JB
147492015-05-28 Julian Brown <julian@codesourcery.com>
14750
14751 PR libgomp/65742
32eaed93
JB
14752 * oacc-init.c (plugin/plugin-host.h): Include.
14753 (acc_on_device): Check whether we're in an offloaded region for
14754 host_nonshm
14755 plugin. Don't use __builtin_acc_on_device.
14756 * plugin/plugin-host.c (GOMP_OFFLOAD_openacc_parallel): Set
14757 nonshm_exec flag in thread-local data.
14758 (GOMP_OFFLOAD_openacc_create_thread_data): Allocate thread-local
14759 data for host_nonshm plugin.
14760 (GOMP_OFFLOAD_openacc_destroy_thread_data): Free thread-local data
14761 for host_nonshm plugin.
14762 * plugin/plugin-host.h: New.
14763
ea023bcf
UB
147642015-05-27 Uros Bizjak <ubizjak@gmail.com>
14765
8ed501f1
UB
14766 * config/linux/ia64/futex.h (sys_futex0) Change operand "op" to int.
14767
147682015-05-27 Uros Bizjak <ubizjak@gmail.com>
14769
14770 * config/linux/wait.h (gomp_futex_wait, gomp_futex_wake):
14771 Declare as int.
14772 (FUTEX_PRIVATE_FLAG): Remove L suffix.
14773 * config/linux/mutex.c (gomp_futex_wait, gomp_futex_wake):
14774 Declare as int.
14775
147762015-05-27 Uros Bizjak <ubizjak@gmail.com>
14777
bb3caa35 14778 * config/linux/x86/futex.h (sys_futex0) [__PIC__]: Remove function.
ea023bcf 14779
1716efeb
CLT
147802015-05-27 Chung-Lin Tang <cltang@codesourcery.com>
14781
14782 * target.c (gomp_map_pointer): New function abstracting out
14783 GOMP_MAP_POINTER handling.
14784 (gomp_map_vars): Remove GOMP_MAP_POINTER handling code and use
14785 gomp_map_pointer().
14786
41b37d5e
JJ
147872015-05-19 Jakub Jelinek <jakub@redhat.com>
14788
14789 PR middle-end/66199
14790 * testsuite/libgomp.c/pr66199-1.c: New test.
14791 * testsuite/libgomp.c/pr66199-2.c: New test.
14792 * testsuite/libgomp.c++/pr66199-1.C: New test.
14793 * testsuite/libgomp.c++/pr66199-2.C: New test.
14794 * testsuite/libgomp.fortran/pr66199-1.f90: New test.
14795 * testsuite/libgomp.fortran/pr66199-2.f90: New test.
14796
c8319826
JB
147972015-05-19 Julian Brown <julian@codesourcery.com>
14798
14799 * plugin/plugin-nvptx.c (nvptx_get_num_devices): Return zero
14800 on cuInit failure.
14801
b37dddbc
JJ
148022015-05-13 Jakub Jelinek <jakub@redhat.com>
14803
14804 PR middle-end/66133
14805 * testsuite/libgomp.c/pr66133.c: New test.
14806
55fba601
MH
148072015-05-13 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
14808
14809 * Makefile.in: Regenerated with automake-1.11.6.
14810 * aclocal.m4: Likewise.
14811 * config.h.in: Likewise.
14812 * configure: Likewise.
14813 * testsuite/Makefile.in: Likewise.
14814
1be0899d
JM
148152015-05-08 Jason Merrill <jason@redhat.com>
14816
14817 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c (main): Use
14818 _Complex.
14819
14820 * openacc.h (__GOACC_NOTHROW): Fix noexcept syntax.
14821
d2463960
JB
148222015-05-06 Julian Brown <julian@codesourcery.com>
14823
14824 * oacc-init.c (acc_device_lock): Add explanatory comment.
14825 (resolve_device): Add comment about locking requirement.
14826 (acc_init_1, acc_shutdown_1): Likewise. Add locking around
14827 gomp_init_device and gomp_fini_device calls.
14828 (acc_get_num_devices, acc_set_device_type, acc_get_device_type)
14829 (acc_get_device_num, acc_set_device_num): Add locking around
14830 resolve_device and gomp_init_device calls.
14831
e38fdba4
JB
148322015-05-06 Julian Brown <julian@codesourcery.com>
14833
14834 * oacc-init.c (acc_shutdown_1): Call gomp_mutex_unlock for
14835 goacc_thread_lock on error paths.
14836 * oacc-mem.c (lookup_host): Remove locking from function. Note
14837 locking requirement for caller in function comment.
14838 (lookup_dev): Likewise.
14839 (acc_free, acc_deviceptr, acc_hostptr, acc_is_present)
14840 (acc_map_data, acc_unmap_data, present_create_copy, delete_copyout)
14841 (update_dev_host, gomp_acc_insert_pointer, gomp_acc_remove_pointer):
14842 Add locking.
14843
ae8ffbbb
TS
148442015-05-05 Thomas Schwinge <thomas@codesourcery.com>
14845
14846 PR testsuite/65205
14847 PR libgomp/65993
14848 * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: In dg-output,
14849 don't expect "0x" prefix for "%p" format specifier, don't expect
14850 "(nil)" for NULL pointer.
14851 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
14852 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
14853 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
14854 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
14855 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
14856 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
14857 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
14858 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
14859 * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
14860 * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
14861 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
14862 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
14863 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
14864 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
14865 * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
14866 * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
14867 * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
14868 * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
14869 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
14870 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
14871 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
14872 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
14873 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
14874 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
14875 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
14876 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
14877 * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
14878 * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
14879 * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: More
14880 accurately specify what we're looking for.
14881 * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
14882 * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
14883 * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
14884 * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
14885 * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
14886
1309f1d2
JN
148872015-04-30 James Norris <jnorris@codesourcery.com>
14888
14889 PR testsuite/65205
14890 * testsuite/lib/libgomp.exp
14891 (check_effective_target_openacc_host_selected)
14892 (check_effective_target_openacc_host_nonshm_selected): New
14893 procedures.
14894 * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: Fix misuse of
14895 dg-shouldfail.
14896 * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Likewise.
14897 * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Likewise.
14898 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
14899 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
14900 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
14901 * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
14902 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
14903 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
14904 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
14905 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
14906 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
14907 * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
14908 * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
14909 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
14910 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
14911 * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Likewise.
14912 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
14913 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
14914 * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
14915 * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
14916 * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
14917 * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Likewise.
14918 * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
14919 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
14920 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
14921 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
14922 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
14923 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
14924 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
14925 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
14926 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
14927 * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
14928 * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
14929 * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Likewise.
14930 * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
14931 * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
14932 * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
14933 * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
14934 * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
14935 * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Likewise.
14936 * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Likewise.
14937 * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Likewise.
14938 * testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise.
14939
d93bdab5
JB
149402015-04-08 Julian Brown <julian@codesourcery.com>
14941
14942 * libgomp.h (target_mem_desc: Remove mem_map field.
14943 (acc_dispatch_t): Remove open_device_func, close_device_func,
14944 get_device_num_func, set_device_num_func, target_data members.
14945 Change create_thread_data_func argument to device number instead of
14946 generic pointer.
14947 * oacc-async.c (assert.h): Include.
14948 (acc_async_test, acc_async_test_all, acc_wait, acc_wait_async)
14949 (acc_wait_all, acc_wait_all_async): Use current host thread's
14950 active device, not base_dev.
14951 * oacc-cuda.c (acc_get_current_cuda_device)
14952 (acc_get_current_cuda_context, acc_get_cuda_stream)
14953 (acc_set_cuda_stream): Likewise.
14954 * oacc-host.c (host_dispatch): Don't set open_device_func,
14955 close_device_func, get_device_num_func or set_device_num_func.
14956 * oacc-init.c (base_dev, init_key): Remove.
14957 (cached_base_dev): New.
14958 (name_of_acc_device_t): New.
14959 (acc_init_1): Initialise default-numbered device, not zeroth.
14960 (acc_shutdown_1): Close all devices of a given type.
14961 (goacc_destroy_thread): Don't use base_dev.
14962 (lazy_open, lazy_init, lazy_init_and_open): Remove.
14963 (goacc_attach_host_thread_to_device): New.
14964 (acc_init): Reimplement with goacc_attach_host_thread_to_device.
14965 (acc_get_num_devices): Don't use base_dev.
14966 (acc_set_device_type): Reimplement.
14967 (acc_get_device_type): Don't use base_dev.
14968 (acc_get_device_num): Tweak logic.
14969 (acc_set_device_num): Likewise.
14970 (acc_on_device): Use acc_get_device_type.
14971 (goacc_runtime_initialize): Initialize cached_base_dev not base_dev.
14972 (goacc_lazy_initialize): Reimplement with acc_init and
14973 goacc_attach_host_thread_to_device.
14974 * oacc-int.h (goacc_thread): Add base_dev field.
14975 (base_dev): Remove extern declaration.
14976 (goacc_attach_host_thread_to_device): Add prototype.
14977 * oacc-mem.c (acc_malloc): Use current thread's device instead of
14978 base_dev.
14979 (acc_free): Likewise.
14980 (acc_memcpy_to_device): Likewise.
14981 (acc_memcpy_from_device): Likewise.
14982 * oacc-parallel.c (select_acc_device): Remove. Replace calls with
14983 goacc_lazy_initialize (throughout).
14984 (GOACC_parallel): Use tgt_offset to locate target functions.
14985 * target.c (gomp_map_vars): Don't set tgt->mem_map.
14986 (gomp_unmap_vars): Use devicep->mem_map pointer not tgt->mem_map.
14987 (gomp_load_plugin_for_device): Remove open_device, close_device,
14988 get_device_num, set_device_num openacc hook initialisation. Don't set
14989 openacc.target_data.
14990 * plugin/plugin-host.c (GOMP_OFFLOAD_openacc_open_device)
14991 (GOMP_OFFLOAD_openacc_close_device)
14992 (GOMP_OFFLOAD_openacc_get_device_num)
14993 (GOMP_OFFLOAD_openacc_set_device_num): Remove.
14994 (GOMP_OFFLOAD_openacc_create_thread_data): Change (unused) argument
14995 to int.
14996 * plugin/plugin-nvptx.c (ptx_inited): Remove.
14997 (instantiated_devices, ptx_dev_lock): New.
14998 (struct ptx_image_data): New.
14999 (ptx_devices, ptx_images, ptx_image_lock): New.
15000 (fini_streams_for_device): Reorder cuStreamDestroy call.
15001 (nvptx_get_num_devices): Remove forward declaration.
15002 (nvptx_init): Change return type to bool.
15003 (nvptx_fini): Remove.
15004 (nvptx_attach_host_thread_to_device): New.
15005 (nvptx_open_device): Return struct ptx_device* instead of void*.
15006 (nvptx_close_device): Change argument type to struct ptx_device*,
15007 return type to void.
15008 (nvptx_get_num_devices): Use instantiated_devices not ptx_inited.
15009 (kernel_target_data, kernel_host_table): Remove static globals.
15010 (GOMP_OFFLOAD_register_image, GOMP_OFFLOAD_get_table): Remove.
15011 (GOMP_OFFLOAD_init_device): Reimplement.
15012 (GOMP_OFFLOAD_fini_device): Likewise.
15013 (GOMP_OFFLOAD_load_image, GOMP_OFFLOAD_unload_image): New.
15014 (GOMP_OFFLOAD_alloc, GOMP_OFFLOAD_free, GOMP_OFFLOAD_dev2host)
15015 (GOMP_OFFLOAD_host2dev): Use ORD argument.
15016 (GOMP_OFFLOAD_openacc_open_device)
15017 (GOMP_OFFLOAD_openacc_close_device)
15018 (GOMP_OFFLOAD_openacc_set_device_num)
15019 (GOMP_OFFLOAD_openacc_get_device_num): Remove.
15020 (GOMP_OFFLOAD_openacc_create_thread_data): Change argument to int
15021 (device number).
15022
15023 testsuite/
15024 * libgomp.oacc-c-c++-common/lib-9.c: Fix devnum check in test.
15025
a51df54e
IV
150262015-04-06 Ilya Verbin <ilya.verbin@intel.com>
15027
15028 * libgomp-plugin.h (struct mapping_table): Replace with addr_pair.
15029 * libgomp.h (struct gomp_memory_mapping): Remove.
15030 (struct target_mem_desc): Change type of mem_map from
15031 gomp_memory_mapping * to splay_tree_s *.
15032 (struct gomp_device_descr): Remove register_image_func, get_table_func.
15033 Add load_image_func, unload_image_func.
15034 Change type of mem_map from gomp_memory_mapping to splay_tree_s.
15035 Remove offload_regions_registered.
15036 (gomp_init_tables): Remove.
15037 (gomp_free_memmap): Change type of argument from gomp_memory_mapping *
15038 to splay_tree_s *.
15039 * libgomp.map (GOMP_4.0.1): Add GOMP_offload_unregister.
15040 * oacc-host.c (host_dispatch): Do not initialize register_image_func,
15041 get_table_func, mem_map.is_initialized, mem_map.splay_tree.root,
15042 offload_regions_registered.
15043 Initialize load_image_func, unload_image_func, mem_map.root.
15044 (goacc_host_init): Do not initialize host_dispatch.mem_map.lock.
15045 * oacc-init.c (lazy_open): Don't call gomp_init_tables.
15046 (acc_shutdown_1): Use dev's lock and splay_tree instead of mem_map's.
15047 * oacc-mem.c (lookup_host): Get gomp_device_descr *dev instead of
15048 gomp_memory_mapping *. Use dev's lock and splay_tree.
15049 (lookup_dev): Use dev's lock.
15050 (acc_deviceptr): Pass dev to lookup_host instead of mem_map.
15051 (acc_is_present): Likewise.
15052 (acc_map_data): Likewise.
15053 (acc_unmap_data): Likewise. Use dev's lock.
15054 (present_create_copy): Likewise.
15055 (delete_copyout): Pass dev to lookup_host instead of mem_map.
15056 (update_dev_host): Likewise.
15057 (gomp_acc_remove_pointer): Likewise. Use dev's lock.
15058 * oacc-parallel.c (GOACC_parallel): Use dev's lock and splay_tree.
15059 * plugin/plugin-host.c (GOMP_OFFLOAD_register_image): Remove.
15060 (GOMP_OFFLOAD_get_table): Remove
15061 (GOMP_OFFLOAD_load_image): New function.
15062 (GOMP_OFFLOAD_unload_image): New function.
15063 * target.c (register_lock): New mutex for offload image registration.
15064 (num_devices): Do not guard with PLUGIN_SUPPORT.
15065 (gomp_realloc_unlock): New static function.
15066 (gomp_map_vars_existing): Add device descriptor argument. Unlock mutex
15067 before gomp_fatal.
15068 (gomp_map_vars): Use dev's lock and splay_tree instead of mem_map's.
15069 Pass devicep to gomp_map_vars_existing. Unlock mutex before gomp_fatal.
15070 (gomp_copy_from_async): Use dev's lock and splay_tree instead of
15071 mem_map's.
15072 (gomp_unmap_vars): Likewise.
15073 (gomp_update): Remove gomp_memory_mapping argument. Use dev's lock and
15074 splay_tree instead of mm's. Unlock mutex before gomp_fatal.
15075 (gomp_offload_image_to_device): New static function.
15076 (GOMP_offload_register): Add mutex lock.
15077 Call gomp_offload_image_to_device for all initialized devices.
15078 Replace gomp_realloc with gomp_realloc_unlock.
15079 (GOMP_offload_unregister): New function.
15080 (gomp_init_tables): Replace with gomp_init_device. Replace a call to
15081 get_table_func from the plugin with calls to init_device_func and
15082 gomp_offload_image_to_device.
15083 (gomp_free_memmap): Change type of argument from gomp_memory_mapping *
15084 to splay_tree_s *.
15085 (GOMP_target): Do not call gomp_init_tables. Use dev's lock and
15086 splay_tree instead of mem_map's. Unlock mutex before gomp_fatal.
15087 (GOMP_target_data): Do not call gomp_init_tables.
15088 (GOMP_target_update): Likewise. Remove argument from gomp_update.
15089 (gomp_load_plugin_for_device): Replace register_image and get_table
15090 with load_image and unload_image in DLSYM ().
15091 (gomp_register_images_for_device): Remove function.
15092 (gomp_target_init): Do not initialize current_device.mem_map.*,
15093 current_device.offload_regions_registered.
15094 Remove call to gomp_register_images_for_device.
15095 Do not free offload_images and num_offload_images.
15096
6c384511
JJ
150972015-03-30 Jakub Jelinek <jakub@redhat.com>
15098
15099 PR fortran/65597
15100 * testsuite/libgomp.fortran/pr65597.f90: New test.
15101
3e8165a5
TV
151022015-03-27 Tom de Vries <tom@codesourcery.com>
15103
15104 PR testsuite/65594
15105 * testsuite/libgomp.graphite/force-parallel-6.c (abort): Declare.
15106 (init, check): New function.
15107 (foo): Change return type to void.
15108 (main): Call init and check.
15109
4d688c9a
TV
151102015-03-27 Tom de Vries <tom@codesourcery.com>
15111
15112 PR testsuite/65594
15113 * testsuite/libgomp.graphite/force-parallel-6.c (M): Define.
15114 (foo): Use M for non-inner loops to scale down test-case.
15115
01c0b3b0
KT
151162015-03-25 Kai Tietz <ktietz@redhat.com>
15117
15118 PR libgomp/64972
15119 * oacc-parallel.c (GOACC_parallel): Use PRIu64 if available.
15120 (GOACC_data_start): Likewise.
15121 * target.c (gomp_map_vars): Likewise.
15122
844d9a76
JDA
151232015-03-21 John David Anglin <danglin@gcc.gnu.org>
15124
15125 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Don't run on
15126 hppa*-*-hpux*.
15127
9b65e171
JJ
151282015-03-19 Jakub Jelinek <jakub@redhat.com>
15129
15130 * testsuite/libgomp.c/target-10.c: New test.
15131 * testsuite/libgomp.c++/target-4.C: New test.
15132
db397e2e
IV
151332015-03-13 Ilya Verbin <ilya.verbin@intel.com>
15134
15135 * testsuite/libgomp.fortran/declare-target-1.f90: New test.
15136 * testsuite/libgomp.fortran/declare-target-2.f90: New file.
15137
cd93945d
SH
151382015-03-13 Sebastian Huber <sebastian.huber@embedded-brains.de>
15139
15140 * configure.tgt (*-*-rtems*): Use local-exec TLS model.
15141 * configure.ac (*-*-rtems*): Assume Pthread is supported.
15142 (pthread.h): Check for this header file.
15143 * configure: Regenerate.
15144
05deba9f
TV
151452015-02-25 Tom de Vries <tom@codesourcery.com>
15146
15147 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c (DO_PRAGMA)
15148 (check_reduction_op, check_reduction_macro, max, min):
15149 Declare.
15150 (test_reductions_int, test_reductions_minmax, test_reductions_bool): New
15151 function.
15152 (main): Use new functions.
15153
196904d8
IT
151542015-02-18 Ilya Tocar <ilya.tocar@intel.com>
15155
15156 * target.c (gomp_load_plugin_for_device): Use const char * instead of
15157 char * for variables holding dlerror return values.
15158 (DLSYM_OPT): Ditto.
15159
a2818955
TS
151602015-02-17 Thomas Schwinge <thomas@codesourcery.com>
15161
15162 * libgomp-plugin.c (GOMP_PLUGIN_debug): Fix typo.
15163
26f93312
TS
151642015-02-17 Thomas Schwinge <thomas@codesourcery.com>
15165 Cesar Philippidis <cesar@codesourcery.com>
15166
15167 * oacc-ptx.h (GOACC_INTERNAL_PTX): Add GOACC_tid, GOACC_ntid,
15168 GOACC_ctaid, and GOACC_nctaid routines.
15169
fa01ffcc
JJ
151702015-02-11 Jakub Jelinek <jakub@redhat.com>
15171
15172 PR c/64824
15173 * testsuite/libgomp.c/atomic-18.c: New test.
15174 * testsuite/libgomp.c++/atomic-16.C: New test.
15175
4886ec8e
JJ
151762015-02-04 Jakub Jelinek <jakub@redhat.com>
15177
15178 PR c/64824
15179 PR c/64868
15180 * testsuite/libgomp.c/pr64824.c: New test.
15181 * testsuite/libgomp.c/pr64868.c: New test.
15182 * testsuite/libgomp.c++/pr64824.C: New test.
15183 * testsuite/libgomp.c++/pr64868.C: New test.
15184
02d3e45e
DE
151852015-02-01 David Edelsohn <dje.gcc@gmail.com>
15186
15187 PR libgomp/64635
15188 * configure.tgt (*-*-aix*): Use standard posix plugin-suffix.h.
15189 Link with -lpthread.
15190 * config/aix/plugin-suffix.h: Delete.
15191
b5f7a6ca
JH
151922015-01-28 Jack Howarth <howarth.at.gcc@gmail.com>
15193
15194 PR libgomp/64635
15195 * configure.tgt (*-*-aix*): Use config_path "aix posix".
15196 (*-*-darwin*): Use config_path "bsd darwin posix".
15197 (*-*-hpux*): Use config_path "hpux posix".
15198 * target.c: Add include of plugin-suffix.h and use
15199 SONAME_SUFFIX macro.
15200 * config/aix/plugin-suffix.h: New file.
15201 * config/darwin/plugin-suffix.h: New file.
15202 * config/hpux/plugin-suffix.h: New file.
15203 * config/posix/plugin-suffix.h: New file.
15204
b8910447
JJ
152052015-01-23 Jakub Jelinek <jakub@redhat.com>
15206
15207 PR middle-end/64734
15208 * libgomp.c/pr64734.c: New test.
15209
a0c88d06
TV
152102015-01-23 Tom de Vries <tom@codesourcery.com>
15211
15212 PR libgomp/64672
15213 * testsuite/libgomp.oacc-c-c++-common/abort-5.c: New test.
15214
1506ae0e
TV
152152015-01-23 Tom de Vries <tom@codesourcery.com>
15216
15217 PR libgomp/64707
15218 * testsuite/libgomp.c/target-9.c: Add -ftree-parallelize-loops=0 to
15219 dg-options.
15220
128b26dc
TS
152212015-01-19 Thomas Schwinge <thomas@codesourcery.com>
15222
bed62c21 15223 PR libgomp/64625
128b26dc
TS
15224 * libgomp_g.h (GOACC_data_start, GOACC_enter_exit_data)
15225 (GOACC_parallel, GOACC_update): Remove const_void *offload_table
15226 formal parameter. Update all users.
15227 * target.c (GOMP_target, GOMP_target_data, GOMP_target_update):
15228 Document unused formal parameter.
15229
6e36114c
TS
152302015-01-16 Thomas Schwinge <thomas@codesourcery.com>
15231
15232 * oacc-parallel.c: Don't include <alloca.h>.
15233 (GOACC_parallel): Use gomp_alloca instead of alloca.
15234
973e9808
GP
152352015-01-16 Gerald Pfeifer <gerald@pfeifer.com>
15236
15237 * target.c (num_devices): Guard with PLUGIN_SUPPORT.
15238
41dbbb37
TS
152392015-01-15 Thomas Schwinge <thomas@codesourcery.com>
15240 James Norris <jnorris@codesourcery.com>
15241 Tom de Vries <tom@codesourcery.com>
15242 Julian Brown <julian@codesourcery.com>
15243 Cesar Philippidis <cesar@codesourcery.com>
15244 Nathan Sidwell <nathan@codesourcery.com>
15245 Tobias Burnus <burnus@net-b.de>
15246
15247 * Makefile.am (search_path): Add $(top_srcdir)/../include.
15248 (libgomp_la_SOURCES): Add splay-tree.c, libgomp-plugin.c,
15249 oacc-parallel.c, oacc-host.c, oacc-init.c, oacc-mem.c,
15250 oacc-async.c, oacc-plugin.c, oacc-cuda.c.
15251 [USE_FORTRAN] (libgomp_la_SOURCES): Add openacc.f90.
15252 Include $(top_srcdir)/plugin/Makefrag.am.
15253 (nodist_libsubinclude_HEADERS): Add openacc.h.
15254 [USE_FORTRAN] (nodist_finclude_HEADERS): Add openacc_lib.h,
15255 openacc.f90, openacc.mod, openacc_kinds.mod.
15256 (omp_lib.mod): Generalize into...
15257 (%.mod): ... this new rule.
15258 (openacc_kinds.mod, openacc.mod): New rules.
15259 * plugin/configfrag.ac: New file.
15260 * configure.ac: Move plugin/offloading support into it. Include
15261 it. Instantiate testsuite/libgomp-test-support.pt.exp.
15262 * plugin/Makefrag.am: New file.
15263 * testsuite/Makefile.am (OFFLOAD_TARGETS)
15264 (OFFLOAD_ADDITIONAL_OPTIONS, OFFLOAD_ADDITIONAL_LIB_PATHS): Don't
15265 export.
15266 (libgomp-test-support.exp): New rule.
15267 (all-local): Depend on it.
15268 * Makefile.in: Regenerate.
15269 * testsuite/Makefile.in: Regenerate.
15270 * config.h.in: Likewise.
15271 * configure: Likewise.
15272 * configure.tgt: Harden shell syntax.
15273 * env.c: Include "oacc-int.h".
15274 (parse_acc_device_type): New function.
15275 (gomp_debug_var, goacc_device_type, goacc_device_num): New
15276 variables.
15277 (initialize_env): Initialize those. Call
15278 goacc_runtime_initialize.
15279 * error.c (gomp_vdebug, gomp_debug, gomp_vfatal): New functions.
15280 (gomp_fatal): Call gomp_vfatal.
15281 * libgomp.h: Include "libgomp-plugin.h" and <stdarg.h>.
15282 (gomp_debug_var, goacc_device_type, goacc_device_num, gomp_vdebug)
15283 (gomp_debug, gomp_verror, gomp_vfatal, gomp_init_targets_once)
15284 (splay_tree_node, splay_tree, splay_tree_key)
15285 (struct target_mem_desc, struct splay_tree_key_s)
15286 (struct gomp_memory_mapping, struct acc_dispatch_t)
15287 (struct gomp_device_descr, gomp_acc_insert_pointer)
15288 (gomp_acc_remove_pointer, target_mem_desc, gomp_copy_from_async)
15289 (gomp_unmap_vars, gomp_init_device, gomp_init_tables)
15290 (gomp_free_memmap, gomp_fini_device): New declarations.
15291 (gomp_vdebug, gomp_debug): New macros.
15292 Include "splay-tree.h".
15293 * libgomp.map (OACC_2.0): New symbol version. Use for
15294 acc_get_num_devices, acc_get_num_devices_h_, acc_set_device_type,
15295 acc_set_device_type_h_, acc_get_device_type,
15296 acc_get_device_type_h_, acc_set_device_num, acc_set_device_num_h_,
15297 acc_get_device_num, acc_get_device_num_h_, acc_async_test,
15298 acc_async_test_h_, acc_async_test_all, acc_async_test_all_h_,
15299 acc_wait, acc_wait_h_, acc_wait_async, acc_wait_async_h_,
15300 acc_wait_all, acc_wait_all_h_, acc_wait_all_async,
15301 acc_wait_all_async_h_, acc_init, acc_init_h_, acc_shutdown,
15302 acc_shutdown_h_, acc_on_device, acc_on_device_h_, acc_malloc,
15303 acc_free, acc_copyin, acc_copyin_32_h_, acc_copyin_64_h_,
15304 acc_copyin_array_h_, acc_present_or_copyin,
15305 acc_present_or_copyin_32_h_, acc_present_or_copyin_64_h_,
15306 acc_present_or_copyin_array_h_, acc_create, acc_create_32_h_,
15307 acc_create_64_h_, acc_create_array_h_, acc_present_or_create,
15308 acc_present_or_create_32_h_, acc_present_or_create_64_h_,
15309 acc_present_or_create_array_h_, acc_copyout, acc_copyout_32_h_,
15310 acc_copyout_64_h_, acc_copyout_array_h_, acc_delete,
15311 acc_delete_32_h_, acc_delete_64_h_, acc_delete_array_h_,
15312 acc_update_device, acc_update_device_32_h_,
15313 acc_update_device_64_h_, acc_update_device_array_h_,
15314 acc_update_self, acc_update_self_32_h_, acc_update_self_64_h_,
15315 acc_update_self_array_h_, acc_map_data, acc_unmap_data,
15316 acc_deviceptr, acc_hostptr, acc_is_present, acc_is_present_32_h_,
15317 acc_is_present_64_h_, acc_is_present_array_h_,
15318 acc_memcpy_to_device, acc_memcpy_from_device,
15319 acc_get_current_cuda_device, acc_get_current_cuda_context,
15320 acc_get_cuda_stream, acc_set_cuda_stream.
15321 (GOACC_2.0): New symbol version. Use for GOACC_data_end,
15322 GOACC_data_start, GOACC_enter_exit_data, GOACC_parallel,
15323 GOACC_update, GOACC_wait, GOACC_get_thread_num,
15324 GOACC_get_num_threads.
15325 (GOMP_PLUGIN_1.0): New symbol version. Use for
15326 GOMP_PLUGIN_malloc, GOMP_PLUGIN_malloc_cleared,
15327 GOMP_PLUGIN_realloc, GOMP_PLUGIN_debug, GOMP_PLUGIN_error,
15328 GOMP_PLUGIN_fatal, GOMP_PLUGIN_async_unmap_vars,
15329 GOMP_PLUGIN_acc_thread.
15330 * libgomp.texi: Update for OpenACC changes, and GOMP_DEBUG
15331 environment variable.
15332 * libgomp_g.h (GOACC_data_start, GOACC_data_end)
15333 (GOACC_enter_exit_data, GOACC_parallel, GOACC_update, GOACC_wait)
15334 (GOACC_get_num_threads, GOACC_get_thread_num): New declarations.
15335 * splay-tree.h (splay_tree_lookup, splay_tree_insert)
15336 (splay_tree_remove): New declarations.
15337 (rotate_left, rotate_right, splay_tree_splay, splay_tree_insert)
15338 (splay_tree_remove, splay_tree_lookup): Move into...
15339 * splay-tree.c: ... this new file.
15340 * target.c: Include "oacc-plugin.h", "oacc-int.h", <assert.h>.
15341 (splay_tree_node, splay_tree, splay_tree_key)
15342 (struct target_mem_desc, struct splay_tree_key_s)
15343 (struct gomp_device_descr): Don't declare.
15344 (num_devices_openmp): New variable.
15345 (gomp_get_num_devices ): Use it.
15346 (gomp_init_targets_once): New function.
15347 (gomp_get_num_devices ): Use it.
15348 (get_kind, gomp_copy_from_async, gomp_free_memmap)
15349 (gomp_fini_device, gomp_register_image_for_device): New functions.
15350 (gomp_map_vars): Add devaddrs parameter.
15351 (gomp_update): Add mm parameter.
15352 (gomp_init_device): Move most of it into...
15353 (gomp_init_tables): ... this new function.
15354 (gomp_register_images_for_device): Remove function.
15355 (splay_compare, gomp_map_vars, gomp_unmap_vars, gomp_init_device):
15356 Make them hidden instead of static.
15357 (gomp_map_vars_existing, gomp_map_vars, gomp_unmap_vars)
15358 (gomp_update, gomp_init_device, GOMP_target, GOMP_target_data)
15359 (GOMP_target_end_data, GOMP_target_update)
15360 (gomp_load_plugin_for_device, gomp_target_init): Update for
15361 OpenACC changes.
15362 * oacc-async.c: New file.
15363 * oacc-cuda.c: Likewise.
15364 * oacc-host.c: Likewise.
15365 * oacc-init.c: Likewise.
15366 * oacc-int.h: Likewise.
15367 * oacc-mem.c: Likewise.
15368 * oacc-parallel.c: Likewise.
15369 * oacc-plugin.c: Likewise.
15370 * oacc-plugin.h: Likewise.
15371 * oacc-ptx.h: Likewise.
15372 * openacc.f90: Likewise.
15373 * openacc.h: Likewise.
15374 * openacc_lib.h: Likewise.
15375 * plugin/plugin-host.c: Likewise.
15376 * plugin/plugin-nvptx.c: Likewise.
15377 * libgomp-plugin.c: Likewise.
15378 * libgomp-plugin.h: Likewise.
15379 * libgomp_target.h: Remove file after merging content into the
15380 former file. Update all users.
15381 * testsuite/lib/libgomp.exp: Load libgomp-test-support.exp.
15382 (offload_targets_s, offload_targets_s_openacc): New variables.
15383 (check_effective_target_openacc_nvidia_accel_present)
15384 (check_effective_target_openacc_nvidia_accel_selected): New
15385 procedures.
15386 (libgomp_init): Update for OpenACC changes.
15387 * testsuite/libgomp-test-support.exp.in: New file.
15388 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
15389 * testsuite/libgomp.oacc-c/c.exp: Likewise.
15390 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
15391 * testsuite/libgomp.oacc-c-c++-common/abort-1.c: Likewise.
15392 * testsuite/libgomp.oacc-c-c++-common/abort-2.c: Likewise.
15393 * testsuite/libgomp.oacc-c-c++-common/abort-3.c: Likewise.
15394 * testsuite/libgomp.oacc-c-c++-common/abort-4.c: Likewise.
15395 * testsuite/libgomp.oacc-c-c++-common/acc_on_device-1.c: Likewise.
15396 * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Likewise.
15397 * testsuite/libgomp.oacc-c-c++-common/cache-1.c: Likewise.
15398 * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Likewise.
15399 * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: Likewise.
15400 * testsuite/libgomp.oacc-c-c++-common/collapse-1.c: Likewise.
15401 * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Likewise.
15402 * testsuite/libgomp.oacc-c-c++-common/collapse-3.c: Likewise.
15403 * testsuite/libgomp.oacc-c-c++-common/collapse-4.c: Likewise.
15404 * testsuite/libgomp.oacc-c-c++-common/context-1.c: Likewise.
15405 * testsuite/libgomp.oacc-c-c++-common/context-2.c: Likewise.
15406 * testsuite/libgomp.oacc-c-c++-common/context-3.c: Likewise.
15407 * testsuite/libgomp.oacc-c-c++-common/context-4.c: Likewise.
15408 * testsuite/libgomp.oacc-c-c++-common/data-1.c: Likewise.
15409 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Likewise.
15410 * testsuite/libgomp.oacc-c-c++-common/data-3.c: Likewise.
15411 * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Likewise.
15412 * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
15413 * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise.
15414 * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise.
15415 * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise.
15416 * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise.
15417 * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise.
15418 * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
15419 * testsuite/libgomp.oacc-c-c++-common/deviceptr-1.c: Likewise.
15420 * testsuite/libgomp.oacc-c-c++-common/if-1.c: Likewise.
15421 * testsuite/libgomp.oacc-c-c++-common/kernels-1.c: Likewise.
15422 * testsuite/libgomp.oacc-c-c++-common/kernels-empty.c: Likewise.
15423 * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Likewise.
15424 * testsuite/libgomp.oacc-c-c++-common/lib-10.c: Likewise.
15425 * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Likewise.
15426 * testsuite/libgomp.oacc-c-c++-common/lib-12.c: Likewise.
15427 * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Likewise.
15428 * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
15429 * testsuite/libgomp.oacc-c-c++-common/lib-15.c: Likewise.
15430 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
15431 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
15432 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
15433 * testsuite/libgomp.oacc-c-c++-common/lib-19.c: Likewise.
15434 * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
15435 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
15436 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
15437 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
15438 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
15439 * testsuite/libgomp.oacc-c-c++-common/lib-24.c: Likewise.
15440 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
15441 * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
15442 * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
15443 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
15444 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
15445 * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Likewise.
15446 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
15447 * testsuite/libgomp.oacc-c-c++-common/lib-31.c: Likewise.
15448 * testsuite/libgomp.oacc-c-c++-common/lib-32.c: Likewise.
15449 * testsuite/libgomp.oacc-c-c++-common/lib-33.c: Likewise.
15450 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
15451 * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
15452 * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
15453 * testsuite/libgomp.oacc-c-c++-common/lib-37.c: Likewise.
15454 * testsuite/libgomp.oacc-c-c++-common/lib-38.c: Likewise.
15455 * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
15456 * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Likewise.
15457 * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
15458 * testsuite/libgomp.oacc-c-c++-common/lib-41.c: Likewise.
15459 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
15460 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
15461 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
15462 * testsuite/libgomp.oacc-c-c++-common/lib-45.c: Likewise.
15463 * testsuite/libgomp.oacc-c-c++-common/lib-46.c: Likewise.
15464 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
15465 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
15466 * testsuite/libgomp.oacc-c-c++-common/lib-49.c: Likewise.
15467 * testsuite/libgomp.oacc-c-c++-common/lib-5.c: Likewise.
15468 * testsuite/libgomp.oacc-c-c++-common/lib-50.c: Likewise.
15469 * testsuite/libgomp.oacc-c-c++-common/lib-51.c: Likewise.
15470 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
15471 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
15472 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
15473 * testsuite/libgomp.oacc-c-c++-common/lib-55.c: Likewise.
15474 * testsuite/libgomp.oacc-c-c++-common/lib-56.c: Likewise.
15475 * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
15476 * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
15477 * testsuite/libgomp.oacc-c-c++-common/lib-59.c: Likewise.
15478 * testsuite/libgomp.oacc-c-c++-common/lib-6.c: Likewise.
15479 * testsuite/libgomp.oacc-c-c++-common/lib-60.c: Likewise.
15480 * testsuite/libgomp.oacc-c-c++-common/lib-61.c: Likewise.
15481 * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Likewise.
15482 * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
15483 * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
15484 * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
15485 * testsuite/libgomp.oacc-c-c++-common/lib-66.c: Likewise.
15486 * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
15487 * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
15488 * testsuite/libgomp.oacc-c-c++-common/lib-69.c: Likewise.
15489 * testsuite/libgomp.oacc-c-c++-common/lib-7.c: Likewise.
15490 * testsuite/libgomp.oacc-c-c++-common/lib-70.c: Likewise.
15491 * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Likewise.
15492 * testsuite/libgomp.oacc-c-c++-common/lib-72.c: Likewise.
15493 * testsuite/libgomp.oacc-c-c++-common/lib-73.c: Likewise.
15494 * testsuite/libgomp.oacc-c-c++-common/lib-74.c: Likewise.
15495 * testsuite/libgomp.oacc-c-c++-common/lib-75.c: Likewise.
15496 * testsuite/libgomp.oacc-c-c++-common/lib-76.c: Likewise.
15497 * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Likewise.
15498 * testsuite/libgomp.oacc-c-c++-common/lib-78.c: Likewise.
15499 * testsuite/libgomp.oacc-c-c++-common/lib-79.c: Likewise.
15500 * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Likewise.
15501 * testsuite/libgomp.oacc-c-c++-common/lib-81.c: Likewise.
15502 * testsuite/libgomp.oacc-c-c++-common/lib-82.c: Likewise.
15503 * testsuite/libgomp.oacc-c-c++-common/lib-83.c: Likewise.
15504 * testsuite/libgomp.oacc-c-c++-common/lib-84.c: Likewise.
15505 * testsuite/libgomp.oacc-c-c++-common/lib-85.c: Likewise.
15506 * testsuite/libgomp.oacc-c-c++-common/lib-86.c: Likewise.
15507 * testsuite/libgomp.oacc-c-c++-common/lib-87.c: Likewise.
15508 * testsuite/libgomp.oacc-c-c++-common/lib-88.c: Likewise.
15509 * testsuite/libgomp.oacc-c-c++-common/lib-89.c: Likewise.
15510 * testsuite/libgomp.oacc-c-c++-common/lib-9.c: Likewise.
15511 * testsuite/libgomp.oacc-c-c++-common/lib-90.c: Likewise.
15512 * testsuite/libgomp.oacc-c-c++-common/lib-91.c: Likewise.
15513 * testsuite/libgomp.oacc-c-c++-common/lib-92.c: Likewise.
15514 * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Likewise.
15515 * testsuite/libgomp.oacc-c-c++-common/nested-2.c: Likewise.
15516 * testsuite/libgomp.oacc-c-c++-common/offset-1.c: Likewise.
15517 * testsuite/libgomp.oacc-c-c++-common/parallel-1.c: Likewise.
15518 * testsuite/libgomp.oacc-c-c++-common/parallel-empty.c: Likewise.
15519 * testsuite/libgomp.oacc-c-c++-common/pointer-align-1.c: Likewise.
15520 * testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise.
15521 * testsuite/libgomp.oacc-c-c++-common/present-2.c: Likewise.
15522 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Likewise.
15523 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
15524 * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
15525 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
15526 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
15527 * testsuite/libgomp.oacc-c-c++-common/reduction-initial-1.c:
15528 Likewise.
15529 * testsuite/libgomp.oacc-c-c++-common/subr.h: Likewise.
15530 * testsuite/libgomp.oacc-c-c++-common/subr.ptx: Likewise.
15531 * testsuite/libgomp.oacc-c-c++-common/timer.h: Likewise.
15532 * testsuite/libgomp.oacc-c-c++-common/update-1-2.c: Likewise.
15533 * testsuite/libgomp.oacc-c-c++-common/update-1.c: Likewise.
15534 * testsuite/libgomp.oacc-fortran/abort-1.f90: Likewise.
15535 * testsuite/libgomp.oacc-fortran/abort-2.f90: Likewise.
15536 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
15537 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
15538 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
15539 * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
15540 * testsuite/libgomp.oacc-fortran/asyncwait-2.f90: Likewise.
15541 * testsuite/libgomp.oacc-fortran/asyncwait-3.f90: Likewise.
15542 * testsuite/libgomp.oacc-fortran/collapse-1.f90: Likewise.
15543 * testsuite/libgomp.oacc-fortran/collapse-2.f90: Likewise.
15544 * testsuite/libgomp.oacc-fortran/collapse-3.f90: Likewise.
15545 * testsuite/libgomp.oacc-fortran/collapse-4.f90: Likewise.
15546 * testsuite/libgomp.oacc-fortran/collapse-5.f90: Likewise.
15547 * testsuite/libgomp.oacc-fortran/collapse-6.f90: Likewise.
15548 * testsuite/libgomp.oacc-fortran/collapse-7.f90: Likewise.
15549 * testsuite/libgomp.oacc-fortran/collapse-8.f90: Likewise.
15550 * testsuite/libgomp.oacc-fortran/data-1.f90: Likewise.
15551 * testsuite/libgomp.oacc-fortran/data-2.f90: Likewise.
15552 * testsuite/libgomp.oacc-fortran/data-3.f90: Likewise.
15553 * testsuite/libgomp.oacc-fortran/data-4-2.f90: Likewise.
15554 * testsuite/libgomp.oacc-fortran/data-4.f90: Likewise.
15555 * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
15556 * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
15557 * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise.
15558 * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise.
15559 * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise.
15560 * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise.
15561 * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise.
15562 * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
15563 * testsuite/libgomp.oacc-fortran/lib-1.f90: Likewise.
15564 * testsuite/libgomp.oacc-fortran/lib-10.f90: Likewise.
15565 * testsuite/libgomp.oacc-fortran/lib-2.f: Likewise.
15566 * testsuite/libgomp.oacc-fortran/lib-3.f: Likewise.
15567 * testsuite/libgomp.oacc-fortran/lib-4.f90: Likewise.
15568 * testsuite/libgomp.oacc-fortran/lib-5.f90: Likewise.
15569 * testsuite/libgomp.oacc-fortran/lib-6.f90: Likewise.
15570 * testsuite/libgomp.oacc-fortran/lib-7.f90: Likewise.
15571 * testsuite/libgomp.oacc-fortran/lib-8.f90: Likewise.
15572 * testsuite/libgomp.oacc-fortran/map-1.f90: Likewise.
15573 * testsuite/libgomp.oacc-fortran/openacc_version-1.f: Likewise.
15574 * testsuite/libgomp.oacc-fortran/openacc_version-2.f90: Likewise.
15575 * testsuite/libgomp.oacc-fortran/pointer-align-1.f90: Likewise.
15576 * testsuite/libgomp.oacc-fortran/pset-1.f90: Likewise.
15577 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Likewise.
15578 * testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
15579 * testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
15580 * testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
15581 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
15582 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
15583 * testsuite/libgomp.oacc-fortran/routine-1.f90: Likewise.
15584 * testsuite/libgomp.oacc-fortran/routine-2.f90: Likewise.
15585 * testsuite/libgomp.oacc-fortran/routine-3.f90: Likewise.
15586 * testsuite/libgomp.oacc-fortran/routine-4.f90: Likewise.
15587 * testsuite/libgomp.oacc-fortran/subarrays-1.f90: Likewise.
15588 * testsuite/libgomp.oacc-fortran/subarrays-2.f90: Likewise.
15589
f1f3453e
TS
155902015-01-10 Thomas Schwinge <thomas@codesourcery.com>
15591 Julian Brown <julian@codesourcery.com>
15592 David Malcolm <dmalcolm@redhat.com>
15593
15594 * configure.ac: Rename libgomp from "GNU OpenMP Runtime Library"
15595 to "GNU Offloading and Multi Processing Runtime Library". Change
15596 all users.
15597 * configure: Regenerate.
15598 * libgomp.texi: Update.
15599
f9a0eca4
TS
156002015-01-08 Thomas Schwinge <thomas@codesourcery.com>
15601
b335ef4e
TS
15602 * configure.ac [tgt_dir] (offload_additional_lib_paths): Also add
15603 "$tgt_dir/lib32".
15604 * configure: Regenerate.
15605
f9a0eca4
TS
15606 * testsuite/lib/libgomp.exp (libgomp_init): Correctly match
15607 "intelmic" in $offload_targets.
15608
b67cd4e3
JJ
156092015-01-05 Jakub Jelinek <jakub@redhat.com>
15610
5624e564
JJ
15611 Update copyright years.
15612
b67cd4e3
JJ
15613 * libgomp.texi: Bump @copying's copyright year.
15614
3b41b583
KT
156152014-12-12 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
15616
15617 * testsuite/lib/libgomp.exp: Load target-utils.exp.
93d90219 15618 Move load of target-supports.exp earlier.
3b41b583 15619
2354caec
IV
156202014-12-10 Ilya Verbin <ilya.verbin@intel.com>
15621
15622 * testsuite/libgomp.c/target-9.c: New test.
15623
f50eecba
VR
156242014-12-09 Varvara Rainchik <varvara.rainchik@intel.com>
15625
15626 * config.h.in: Regenerate.
15627 * configure: Regenerate.
15628 * configure.ac: Add GCC_CHECK_EMUTLS.
15629 * libgomp.h: Add check for USE_EMUTLS: this case
15630 is equal to HAVE_TLS.
15631 * team.c: Likewise.
15632
68bc9270
UB
156332014-12-03 Uros Bizjak <ubizjak@gmail.com>
15634
15635 * configure.tgt (x86_64-*-linux*): Tune -m32 multilib to generic.
15636
476ff787
AT
156372014-11-28 Andrey Turetskiy <andrey.turetskiy@intel.com>
15638 Ilya Verbin <ilya.verbin@intel.com>
15639
15640 * testsuite/libgomp.c/target-critical-1.c: New test.
15641
31a30e62
JJ
156422014-11-26 Jakub Jelinek <jakub@redhat.com>
15643
15644 * testsuite/libgomp.c/examples-4/e.53.4.c: Add -DITESTITERS=20
68bc9270 15645 to dg-options unless expensive testing is on.
31a30e62
JJ
15646 (TESTITERS): Define to N if not defined.
15647 (main): Use TESTITERS instead of N.
15648 * testsuite/libgomp.c/examples-4/e.55.1.c: Define CHUNKSZ from
15649 dg-additional-options depending on whether expensive testing is on.
15650 * testsuite/libgomp.fortran/examples-4/e.55.1.f90 (e_55_1_mod):
15651 Decrease N to 100000 and CHUNKSZ to 10000.
15652
3f9e8f13
JJ
156532014-11-24 Jakub Jelinek <jakub@redhat.com>
15654
15655 PR fortran/63938
31a30e62
JJ
15656 * testsuite/libgomp.fortran/pr63938-1.f90: New test.
15657 * testsuite/libgomp.fortran/pr63938-2.f90: New test.
3f9e8f13 15658
c8451a46
SE
156592014-11-21 Steve Ellcey <sellcey@imgtec.com>
15660
15661 * config/linux/mips/futex.h (SYS_futex): Define if not already done.
15662
a699d672
L
156632014-11-21 H.J. Lu <hongjiu.lu@intel.com>
15664
15665 PR bootstrap/63784
15666 * configure: Regenerated.
15667
4a19f719
UB
156682014-11-19 Uros Bizjak <ubizjak@gmail.com>
15669
15670 * testsuite/libgomp.c/examples-4/e.53.5.c: Require
15671 vect_simd_clones effective target.
15672 * testsuite/libgomp.fortran/examples-4/e.53.5.f90: Ditto.
15673
b1bf6c52
JJ
156742014-11-14 Jakub Jelinek <jakub@redhat.com>
15675
15676 * libgomp.c/examples-4/e.54.2.c (main): Use N / 8 instead
15677 of 32 as block_size.
15678 * libgomp.fortran/examples-4/e.54.2.f90 (e_54_1): Use n / 8
15679 instead of 32 as block_size.
15680
d64ae614
AT
156812014-11-13 Andrey Turetskiy <andrey.turetskiy@intel.com>
15682 Ilya Verbin <ilya.verbin@intel.com>
15683
15684 * Makefile.in: Regenerate.
15685 * configure: Regenerate.
15686 * configure.ac: Set up offload_additional_options,
15687 offload_additional_lib_paths and offload_targets.
15688 * testsuite/Makefile.am: Export environment variables: OFFLOAD_TARGETS,
15689 OFFLOAD_ADDITIONAL_OPTIONS, OFFLOAD_ADDITIONAL_LIB_PATHS.
15690 * testsuite/Makefile.in: Regenerate.
15691 * testsuite/lib/libgomp.exp (libgomp_init): Append
15692 offload_additional_lib_paths to LD_LIBRARY_PATH. Append
15693 offload_additional_options to ALWAYS_CFLAGS. Append liboffloadmic
15694 build directory to LD_LIBRARY_PATH for intelmic offload targets.
15695
122d7303
AT
156962014-11-13 Andrey Turetskiy <andrey.turetskiy@intel.com>
15697 Ilya Verbin <ilya.verbin@intel.com>
15698 Kirill Yukhin <kirill.yukhin@intel.com>
15699 Ilya Tocar <ilya.tocar@intel.com>
15700
15701 * testsuite/lib/libgomp.exp
15702 (check_effective_target_offload_device): New.
15703 * testsuite/libgomp.c++/c++.exp: Include tests from subdirectories.
15704 * testsuite/libgomp.c++/examples-4/e.51.5.C: New test.
15705 * testsuite/libgomp.c++/examples-4/e.53.2.C: Ditto.
15706 * testsuite/libgomp.c/examples-4/e.50.1.c: Ditto.
15707 * testsuite/libgomp.c/examples-4/e.50.2.c: Ditto.
15708 * testsuite/libgomp.c/examples-4/e.50.3.c: Ditto.
15709 * testsuite/libgomp.c/examples-4/e.50.4.c: Ditto.
15710 * testsuite/libgomp.c/examples-4/e.50.5.c: Ditto.
15711 * testsuite/libgomp.c/examples-4/e.51.1.c: Ditto.
15712 * testsuite/libgomp.c/examples-4/e.51.2.c: Ditto.
15713 * testsuite/libgomp.c/examples-4/e.51.3.c: Ditto.
15714 * testsuite/libgomp.c/examples-4/e.51.4.c: Ditto.
15715 * testsuite/libgomp.c/examples-4/e.51.6.c: Ditto.
15716 * testsuite/libgomp.c/examples-4/e.51.7.c: Ditto.
15717 * testsuite/libgomp.c/examples-4/e.52.1.c: Ditto.
15718 * testsuite/libgomp.c/examples-4/e.52.2.c: Ditto.
15719 * testsuite/libgomp.c/examples-4/e.53.1.c: Ditto.
15720 * testsuite/libgomp.c/examples-4/e.53.3.c: Ditto.
15721 * testsuite/libgomp.c/examples-4/e.53.4.c: Ditto.
15722 * testsuite/libgomp.c/examples-4/e.53.5.c: Ditto.
15723 * testsuite/libgomp.c/examples-4/e.54.2.c: Ditto.
15724 * testsuite/libgomp.c/examples-4/e.54.3.c: Ditto.
15725 * testsuite/libgomp.c/examples-4/e.54.4.c: Ditto.
15726 * testsuite/libgomp.c/examples-4/e.54.5.c: Ditto.
15727 * testsuite/libgomp.c/examples-4/e.54.6.c: Ditto.
15728 * testsuite/libgomp.c/examples-4/e.55.1.c: Ditto.
15729 * testsuite/libgomp.c/examples-4/e.55.2.c: Ditto.
15730 * testsuite/libgomp.c/examples-4/e.56.3.c: Ditto.
15731 * testsuite/libgomp.c/examples-4/e.56.4.c: Ditto.
15732 * testsuite/libgomp.c/examples-4/e.57.1.c: Ditto.
15733 * testsuite/libgomp.c/examples-4/e.57.2.c: Ditto.
15734 * testsuite/libgomp.c/examples-4/e.57.3.c: Ditto.
15735 * testsuite/libgomp.c/target-7.c: Fix test.
15736 * testsuite/libgomp.fortran/examples-4/e.50.1.f90: New test.
15737 * testsuite/libgomp.fortran/examples-4/e.50.2.f90: Ditto.
15738 * testsuite/libgomp.fortran/examples-4/e.50.3.f90: Ditto.
15739 * testsuite/libgomp.fortran/examples-4/e.50.4.f90: Ditto.
15740 * testsuite/libgomp.fortran/examples-4/e.50.5.f90: Ditto.
15741 * testsuite/libgomp.fortran/examples-4/e.51.1.f90: Ditto.
15742 * testsuite/libgomp.fortran/examples-4/e.51.2.f90: Ditto.
15743 * testsuite/libgomp.fortran/examples-4/e.51.3.f90: Ditto.
15744 * testsuite/libgomp.fortran/examples-4/e.51.4.f90: Ditto.
15745 * testsuite/libgomp.fortran/examples-4/e.51.5.f90: Ditto.
15746 * testsuite/libgomp.fortran/examples-4/e.51.6.f90: Ditto.
15747 * testsuite/libgomp.fortran/examples-4/e.51.7.f90: Ditto.
15748 * testsuite/libgomp.fortran/examples-4/e.52.1.f90: Ditto.
15749 * testsuite/libgomp.fortran/examples-4/e.52.2.f90: Ditto.
15750 * testsuite/libgomp.fortran/examples-4/e.53.1.f90: Ditto.
15751 * testsuite/libgomp.fortran/examples-4/e.53.2.f90: Ditto.
15752 * testsuite/libgomp.fortran/examples-4/e.53.3.f90: Ditto.
15753 * testsuite/libgomp.fortran/examples-4/e.53.4.f90: Ditto.
15754 * testsuite/libgomp.fortran/examples-4/e.53.5.f90: Ditto.
15755 * testsuite/libgomp.fortran/examples-4/e.54.2.f90: Ditto.
15756 * testsuite/libgomp.fortran/examples-4/e.54.3.f90: Ditto.
15757 * testsuite/libgomp.fortran/examples-4/e.54.4.f90: Ditto.
15758 * testsuite/libgomp.fortran/examples-4/e.54.5.f90: Ditto.
15759 * testsuite/libgomp.fortran/examples-4/e.54.6.f90: Ditto.
15760 * testsuite/libgomp.fortran/examples-4/e.55.1.f90: Ditto.
15761 * testsuite/libgomp.fortran/examples-4/e.55.2.f90: Ditto.
15762 * testsuite/libgomp.fortran/examples-4/e.56.3.f90: Ditto.
15763 * testsuite/libgomp.fortran/examples-4/e.56.4.f90: Ditto.
15764 * testsuite/libgomp.fortran/examples-4/e.57.1.f90: Ditto.
15765 * testsuite/libgomp.fortran/examples-4/e.57.2.f90: Ditto.
15766 * testsuite/libgomp.fortran/examples-4/e.57.3.f90: Ditto.
15767
1df3f842
JJ
157682014-11-13 Jakub Jelinek <jakub@redhat.com>
15769 Ilya Verbin <ilya.verbin@intel.com>
15770 Thomas Schwinge <thomas@codesourcery.com>
15771 Andrey Turetskiy <andrey.turetskiy@intel.com>
15772
15773 * libgomp.map (GOMP_4.0.1): New symbol version.
15774 Add GOMP_offload_register.
15775 * libgomp_target.h: New file.
15776 * splay-tree.h: New file.
15777 * target.c: Include config.h, libgomp_target.h, dlfcn.h, splay-tree.h.
15778 (gomp_target_init): New forward declaration.
15779 (gomp_is_initialized): New static variable.
15780 (splay_tree_node, splay_tree, splay_tree_key): New typedefs.
15781 (struct target_mem_desc, struct splay_tree_key_s, offload_image_descr):
15782 New structures.
15783 (offload_images, num_offload_images, devices, num_devices): New static
15784 variables.
15785 (splay_compare): New static function.
15786 (struct gomp_device_descr): New structure.
15787 (gomp_get_num_devices): Call gomp_target_init.
15788 (resolve_device, gomp_map_vars_existing, gomp_map_vars, gomp_unmap_tgt)
15789 (gomp_unmap_vars, gomp_update, gomp_init_device): New static functions.
15790 (GOMP_offload_register): New function.
15791 (GOMP_target): Arrange for host callback to be performed in a separate
15792 initial thread and contention group, inheriting ICVs from
15793 gomp_global_icv etc. Call gomp_map_vars and gomp_unmap_vars.
15794 Add device initialization and lookup for target function in splay tree.
15795 (GOMP_target_data): Add device initialization and call gomp_map_vars.
15796 (GOMP_target_end_data): Call gomp_unmap_vars.
15797 (GOMP_target_update): Add device initialization and call gomp_update.
15798 (gomp_load_plugin_for_device, gomp_register_images_for_device)
15799 (gomp_target_init): New static functions.
15800
85c64bbe
BS
158012014-11-13 Bernd Schmidt <bernds@codesourcery.com>
15802 Thomas Schwinge <thomas@codesourcery.com>
15803 Ilya Verbin <ilya.verbin@intel.com>
15804 Andrey Turetskiy <andrey.turetskiy@intel.com>
15805
15806 * config.h.in: Regenerate.
15807 * configure: Regenerate.
15808 * configure.ac: Check for libdl, required for plugin support.
15809 (PLUGIN_SUPPORT): Define if plugins are supported.
15810 (enable_offload_targets): Support Intel MIC targets.
15811 (OFFLOAD_TARGETS): List of target names suitable for offloading.
15812
ebf6d33b
FXC
158132014-11-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
15814
15815 PR target/63610
15816 * configure: Regenerate.
15817
8c768629
RO
158182014-11-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
15819
15820 * config/posix/lock.c (_XOPEN_SOURCE) Define as 600.
15821
c1d62412
MP
158222014-10-06 Marek Polacek <polacek@redhat.com>
15823
15824 * testsuite/libgomp.c/affinity-1.c: Include <sys/wait.h>.
15825 * testsuite/libgomp.c/nqueens-1.c: Include <stdlib.h>.
15826 * testsuite/libgomp.c/thread-limit-1.c: Include <omp.h>
15827 * testsuite/libgomp.c/thread-limit-2.c: Likewise.
15828
44a0c6cb
MP
158292014-10-06 Marek Polacek <polacek@redhat.com>
15830
15831 * testsuite/libgomp.c/affinity-1.c: Fix implicit declarations.
15832 * testsuite/libgomp.c/nqueens-1.c: Likewise.
15833 * testsuite/libgomp.c/pr26943-3.c: Likewise.
15834 * testsuite/libgomp.c/pr26943-4.c: Likewise.
15835 * testsuite/libgomp.c/pr36802-2.c: Likewise.
15836 * testsuite/libgomp.c/pr36802-3.c: Likewise.
15837 * testsuite/libgomp.c/thread-limit-1.c: Likewise.
15838 * testsuite/libgomp.c/thread-limit-2.c: Likewise.
15839 * testsuite/libgomp.c/appendix-a/a.15.1.c: Include <omp.h>.
15840 * testsuite/libgomp.c/omp-loop02.c: Fix defaulting to int.
15841 * testsuite/libgomp.c/omp-parallel-for.c: Likewise.
15842 * testsuite/libgomp.c/omp-parallel-if.c: Likewise.
15843 * testsuite/libgomp.c/omp-single-1.c: Likewise.
15844 * testsuite/libgomp.c/omp-single-2.c: Likewise.
15845 * testsuite/libgomp.c/omp_matvec.c: Likewise.
15846 * testsuite/libgomp.c/omp_workshare3.c: Likewise.
15847 * testsuite/libgomp.c/omp_workshare4.c: Likewise.
15848 * testsuite/libgomp.c/shared-1.c: Fix defaulting to int. Fix implicit
15849 declarations.
15850
5771c391
JJ
158512014-10-03 Jakub Jelinek <jakub@redhat.com>
15852
15853 PR libgomp/61200
15854 * testsuite/libgomp.c/pr61200.c: New test.
15855
bce16b88
JJ
158562014-09-18 Jakub Jelinek <jakub@redhat.com>
15857
15858 PR c++/63248
15859 * testsuite/libgomp.c++/pr63248.C: New test.
15860
3696163c
JJ
158612014-08-04 Jakub Jelinek <jakub@redhat.com>
15862
15863 * task.c (GOMP_taskgroup_end): If taskgroup->num_children
15864 is not zero, but taskgroup->children is NULL and there are
15865 any task->children, schedule those instead of waiting.
15866 * testsuite/libgomp.c/depend-6.c: New test.
15867 * testsuite/libgomp.c/depend-7.c: New test.
15868 * testsuite/libgomp.c/depend-8.c: New test.
15869 * testsuite/libgomp.c/depend-9.c: New test.
15870 * testsuite/libgomp.c/depend-10.c: New test.
15871
0494285a
JJ
158722014-08-01 Jakub Jelinek <jakub@redhat.com>
15873
15874 * libgomp.h (struct gomp_task_depend_entry): Add redundant_out field.
15875 (struct gomp_taskwait): New type.
15876 (struct gomp_task): Add taskwait and parent_depends_on, remove
15877 in_taskwait and taskwait_sem fields.
15878 (gomp_finish_task): Don't destroy taskwait_sem.
15879 * task.c (gomp_init_task): Don't init in_taskwait, instead init
15880 taskwait and parent_depends_on.
15881 (GOMP_task): For if (0) tasks with depend clause that depend on
15882 earlier tasks don't defer them, instead call
15883 gomp_task_maybe_wait_for_dependencies to wait for the dependencies.
15884 Initialize redundant_out field, for redundant out entries just
15885 move them at the end of linked list instead of removing them
15886 completely, and set redundant_out flag instead of redundant.
15887 (gomp_task_run_pre): Update last_parent_depends_on if scheduling
15888 that task.
15889 (gomp_task_run_post_handle_dependers): If parent is in
15890 gomp_task_maybe_wait_for_dependencies and newly runnable task
15891 is not parent_depends_on, queue it in parent->children linked
15892 list after all runnable tasks with parent_depends_on set.
15893 Adjust for addition of taskwait indirection.
15894 (gomp_task_run_post_remove_parent): If parent is in
15895 gomp_task_maybe_wait_for_dependencies and task to be removed
15896 is parent_depends_on, decrement n_depend and if needed awake
15897 parent. Adjust for addition of taskwait indirection.
15898 (GOMP_taskwait): Adjust for addition of taskwait indirection.
15899 (gomp_task_maybe_wait_for_dependencies): New function.
15900 * testsuite/libgomp.c/depend-5.c: New test.
15901
60ab4b44
TB
159022014-07-13 Tobias Burnus <burnus@net-b.de>
15903
15904 * testsuite/libgomp.fortran/pr34020.f90: Make compile
0494285a 15905 with TS 18508/Fortran 2015.
60ab4b44 15906
773ec47f
MP
159072014-07-06 Marek Polacek <polacek@redhat.com>
15908
15909 PR c/6940
15910 * testsuite/libgomp.c/appendix-a/a.29.1.c (f): Add dg-warnings.
15911
f707da16
JJ
159122014-07-03 Jakub Jelinek <jakub@redhat.com>
15913
15914 * testsuite/lib/libgomp.exp (libgomp_target_compile): If $source
15915 matches regex $lang_source_re, add $lang_include_flags to options.
15916 * testsuite/libgomp.c/c.exp: Unset lang_include_flags.
15917 * testsuite/libgomp.c++/c++.exp: Likewise.
15918 * testsuite/libgomp.fortran/fortran.exp: Likewise. Set lang_source_re
15919 and lang_include_flags instead of adding -fintrinsic-modules-path= to
15920 ALWAYS_CFLAGS.
15921 * testsuite/libgomp.graphite/graphite.exp: Unset lang_include_flags.
15922
07b6c044
TS
159232014-07-03 Thomas Schwinge <thomas@codesourcery.com>
15924
15925 * testsuite/libgomp.fortran/fortran.exp: Explain
15926 gfortran-dg-runtest usage.
15927
da6f124d
JJ
159282014-06-25 Jakub Jelinek <jakub@redhat.com>
15929
15930 * testsuite/libgomp.fortran/simd5.f90: New test.
15931 * testsuite/libgomp.fortran/simd6.f90: New test.
15932 * testsuite/libgomp.fortran/simd7.f90: New test.
15933
b46ebd6c
JJ
159342014-06-24 Jakub Jelinek <jakub@redhat.com>
15935
56ad0e38
JJ
15936 * testsuite/libgomp.c/for-2.c: Define SC to static for
15937 #pragma omp for simd testing.
15938 * testsuite/libgomp.c/for-2.h (SC): Define if not defined.
15939 (N(f5), N(f6), N(f7), N(f8), N(f10), N(f12), N(f14)): Use
15940 SC macro.
15941 * testsuite/libgomp.c/simd-14.c: New test.
15942 * testsuite/libgomp.c/simd-15.c: New test.
15943 * testsuite/libgomp.c/simd-16.c: New test.
15944 * testsuite/libgomp.c/simd-17.c: New test.
15945 * testsuite/libgomp.c++/for-10.C: Define SC to static for
15946 #pragma omp for simd testing.
15947 * testsuite/libgomp.c++/simd10.C: New test.
15948 * testsuite/libgomp.c++/simd11.C: New test.
15949 * testsuite/libgomp.c++/simd12.C: New test.
15950 * testsuite/libgomp.c++/simd13.C: New test.
15951
b46ebd6c
JJ
15952 * testsuite/libgomp.fortran/aligned1.f03: New test.
15953 * testsuite/libgomp.fortran/nestedfn5.f90: New test.
15954 * testsuite/libgomp.fortran/target7.f90: Surround loop spawning
15955 tasks with !$omp parallel !$omp single.
15956 * testsuite/libgomp.fortran/target8.f90: New test.
15957 * testsuite/libgomp.fortran/udr4.f90 (foo UDR, bar UDR): Adjust
15958 not to use trim in the combiner, instead call elemental function.
15959 (fn): New elemental function.
15960 * testsuite/libgomp.fortran/udr6.f90 (do_add, dp_add, dp_init):
15961 Make elemental.
15962 * testsuite/libgomp.fortran/udr7.f90 (omp_priv, omp_orig, omp_out,
15963 omp_in): Likewise.
15964 * testsuite/libgomp.fortran/udr12.f90: New test.
15965 * testsuite/libgomp.fortran/udr13.f90: New test.
15966 * testsuite/libgomp.fortran/udr14.f90: New test.
15967 * testsuite/libgomp.fortran/udr15.f90: New test.
15968
f014c653
JJ
159692014-06-18 Jakub Jelinek <jakub@redhat.com>
15970
15971 * omp_lib.f90.in (openmp_version): Set to 201307.
15972 * omp_lib.h.in (openmp_version): Likewise.
15973 * testsuite/libgomp.c/target-8.c: New test.
15974 * testsuite/libgomp.fortran/declare-simd-1.f90: Add notinbranch
15975 and inbranch clauses.
15976 * testsuite/libgomp.fortran/depend-3.f90: New test.
15977 * testsuite/libgomp.fortran/openmp_version-1.f: Adjust for new
15978 openmp_version.
15979 * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
15980 * testsuite/libgomp.fortran/target1.f90: New test.
15981 * testsuite/libgomp.fortran/target2.f90: New test.
15982 * testsuite/libgomp.fortran/target3.f90: New test.
15983 * testsuite/libgomp.fortran/target4.f90: New test.
15984 * testsuite/libgomp.fortran/target5.f90: New test.
15985 * testsuite/libgomp.fortran/target6.f90: New test.
15986 * testsuite/libgomp.fortran/target7.f90: New test.
15987
92d28cbb
JJ
159882014-06-10 Jakub Jelinek <jakub@redhat.com>
15989
15990 PR fortran/60928
15991 * testsuite/libgomp.fortran/allocatable9.f90: New test.
15992 * testsuite/libgomp.fortran/allocatable10.f90: New test.
15993 * testsuite/libgomp.fortran/allocatable11.f90: New test.
15994 * testsuite/libgomp.fortran/allocatable12.f90: New test.
15995 * testsuite/libgomp.fortran/alloc-comp-1.f90: New test.
15996 * testsuite/libgomp.fortran/alloc-comp-2.f90: New test.
15997 * testsuite/libgomp.fortran/alloc-comp-3.f90: New test.
15998 * testsuite/libgomp.fortran/associate1.f90: New test.
15999 * testsuite/libgomp.fortran/associate2.f90: New test.
16000 * testsuite/libgomp.fortran/procptr1.f90: New test.
16001
5f23671d
JJ
160022014-06-06 Jakub Jelinek <jakub@redhat.com>
16003
16004 * testsuite/libgomp.fortran/simd1.f90: New test.
16005 * testsuite/libgomp.fortran/udr1.f90: New test.
16006 * testsuite/libgomp.fortran/udr2.f90: New test.
16007 * testsuite/libgomp.fortran/udr3.f90: New test.
16008 * testsuite/libgomp.fortran/udr4.f90: New test.
16009 * testsuite/libgomp.fortran/udr5.f90: New test.
16010 * testsuite/libgomp.fortran/udr6.f90: New test.
16011 * testsuite/libgomp.fortran/udr7.f90: New test.
16012 * testsuite/libgomp.fortran/udr8.f90: New test.
16013 * testsuite/libgomp.fortran/udr9.f90: New test.
16014 * testsuite/libgomp.fortran/udr10.f90: New test.
16015 * testsuite/libgomp.fortran/udr11.f90: New test.
16016
0389fbb5
UB
160172014-05-27 Uros Bizjak <ubizjak@gmail.com>
16018
16019 * testsuite/libgomp.fortran/declare-simd-1.f90: Require
16020 vect_simd_clones effective target.
16021 * testsuite/libgomp.fortran/declare-simd-2.f90: Ditto.
16022
decaaec8
JJ
160232014-05-21 Jakub Jelinek <jakub@redhat.com>
16024
16025 PR middle-end/61252
16026 * testsuite/libgomp.c++/simd-9.C: New test.
16027
72832460
UB
160282014-05-18 Uros Bizjak <ubizjak@gmail.com>
16029
16030 * libgomp.texi (Runitme Library Routines): Remove multiple @menu.
16031 (Environment Variables) Move OMP_PROC_BIND and OMP_STACKSIZE node
16032 texts according to their @menu entry positions.
16033
dd2fc525
JJ
160342014-05-11 Jakub Jelinek <jakub@redhat.com>
16035
16036 * testsuite/libgomp.fortran/cancel-do-1.f90: New test.
16037 * testsuite/libgomp.fortran/cancel-do-2.f90: New test.
16038 * testsuite/libgomp.fortran/cancel-parallel-1.f90: New test.
16039 * testsuite/libgomp.fortran/cancel-parallel-3.f90: New test.
16040 * testsuite/libgomp.fortran/cancel-sections-1.f90: New test.
16041 * testsuite/libgomp.fortran/cancel-taskgroup-2.f90: New test.
16042 * testsuite/libgomp.fortran/declare-simd-1.f90: New test.
16043 * testsuite/libgomp.fortran/declare-simd-2.f90: New test.
16044 * testsuite/libgomp.fortran/declare-simd-3.f90: New test.
16045 * testsuite/libgomp.fortran/depend-1.f90: New test.
16046 * testsuite/libgomp.fortran/depend-2.f90: New test.
16047 * testsuite/libgomp.fortran/omp_atomic5.f90: New test.
16048 * testsuite/libgomp.fortran/simd1.f90: New test.
16049 * testsuite/libgomp.fortran/simd2.f90: New test.
16050 * testsuite/libgomp.fortran/simd3.f90: New test.
16051 * testsuite/libgomp.fortran/simd4.f90: New test.
16052 * testsuite/libgomp.fortran/taskgroup1.f90: New test.
16053
95782571
JJ
160542014-05-02 Jakub Jelinek <jakub@redhat.com>
16055
16056 * testsuite/libgomp.c/simd-10.c: New test.
16057 * testsuite/libgomp.c/simd-11.c: New test.
16058 * testsuite/libgomp.c/simd-12.c: New test.
16059 * testsuite/libgomp.c/simd-13.c: New test.
16060
f7468577
JJ
160612014-04-24 Jakub Jelinek <jakub@redhat.com>
16062
42056eac
JJ
16063 * testsuite/libgomp.c++/atomic-14.C: Allow seq_cst and
16064 atomic type clauses in any order and optional comma in between.
16065 * testsuite/libgomp.c++/atomic-15.C: Likewise.
16066 * testsuite/libgomp.c/atomic-17.c: Likewise.
16067
f7468577
JJ
16068 * testsuite/libgomp.c/simd-7.c: New test.
16069 * testsuite/libgomp.c/simd-8.c: New test.
16070 * testsuite/libgomp.c/simd-9.c: New test.
16071 * testsuite/libgomp.c/loop-16.c: New test.
16072
ab18f2f5
RH
160732014-04-02 Richard Henderson <rth@redhat.com>
16074
16075 * config/linux/futex.h (futex_wait): Get error value from errno.
16076 (futex_wake): Likewise.
16077
8bcc90b0
JJ
160782014-03-25 Jakub Jelinek <jakub@redhat.com>
16079
16080 PR c++/60331
16081 * testsuite/libgomp.c++/udr-11.C: New test.
16082 * testsuite/libgomp.c++/udr-12.C: New test.
16083 * testsuite/libgomp.c++/udr-13.C: New test.
16084 * testsuite/libgomp.c++/udr-14.C: New test.
16085 * testsuite/libgomp.c++/udr-15.C: New test.
16086 * testsuite/libgomp.c++/udr-16.C: New test.
16087 * testsuite/libgomp.c++/udr-17.C: New test.
16088 * testsuite/libgomp.c++/udr-18.C: New test.
16089 * testsuite/libgomp.c++/udr-19.C: New test.
16090
18d73c7f
RS
160912014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
16092
16093 Update copyright years
16094
f9030485
RS
160952014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
16096
16097 * hashtab.h: Use the standard form for the copyright notice.
16098
98db73df
TB
160992014-01-02 Tobias Burnus <burnus@net-b.de>
16100
16101 * libgomp.texi: Bump @copying's copyright year.
16102
ae246f7f
AT
161032013-12-17 Andreas Tobler <andreast@gcc.gnu.org>
16104
93d90219 16105 * testsuite/libgomp.c/affinity-1.c: Remove alloca.h include. Replace
ae246f7f
AT
16106 alloca () with __builtin_alloca ().
16107 * testsuite/libgomp.c/icv-2.c: Add FreeBSD coverage.
16108 * testsuite/libgomp.c/lock-3.c: Likewise.
16109 * testsuite/libgomp.c/pr48591.c: Likewise.
16110
fa00a5fe
JJ
161112013-12-17 Jakub Jelinek <jakub@redhat.com>
16112
16113 PR testsuite/59534
16114 * testsuite/libgomp.fortran/retval1.f90 (e5): Avoid non-shortcircuited
16115 comparisons.
16116
e9792e1d
JJ
161172013-12-16 Jakub Jelinek <jakub@redhat.com>
16118
16119 PR libgomp/58756
16120 * testsuite/libgomp.c/pr58756.c: New test.
16121
cab37c89
JJ
161222013-12-12 Jakub Jelinek <jakub@redhat.com>
16123
16124 PR libgomp/59467
16125 * testsuite/libgomp.fortran/crayptr2.f90: Add private (d) clause to
16126 !$omp parallel.
16127
de14871c
TS
161282013-11-07 Thomas Schwinge <thomas@codesourcery.com>
16129
1707a5de
TS
16130 * testsuite/lib/libgomp.exp (libgomp_init): Don't add -fopenmp to
16131 ALWAYS_CFLAGS.
16132 * testsuite/libgomp.c++/c++.exp (ALWAYS_CFLAGS): Add -fopenmp.
16133 * testsuite/libgomp.c/c.exp (ALWAYS_CFLAGS): Likewise.
16134 * testsuite/libgomp.fortran/fortran.exp (ALWAYS_CFLAGS): Likewise.
16135 * testsuite/libgomp.graphite/graphite.exp (ALWAYS_CFLAGS):
16136 Likewise.
16137
70f05c43
TS
16138 * libgomp_g.h: Include <stddef.h> for size_t.
16139
de14871c
TS
16140 * libgomp.spec.in: Update comment about libgomp's dependencies.
16141 * configure.ac: Likewise.
16142 * configure: Regenerate.
16143
83fd6c5b
TB
161442013-10-16 Tobias Burnus <burnus@net-b.de>
16145
16146 * libgomp.texi: (Runtime Library Routines): Update references for
16147 OpenMP 4.0. Add omp_get_cancellation, omp_get_default_device,
16148 omp_get_num_devices, omp_get_num_teams, omp_get_proc_bind,
16149 omp_get_team_num, omp_is_initial_device, omp_set_default_device.
16150 (Environment Variables): Update references for OpenMP 4.0. Add
16151 OMP_CANCELLATION, OMP_DEFAULT_DEVICE, OMP_PLACES.
16152 Move OMP_DISPLAY_ENV and OMP_PROC_BIND up to be in alphabetical
16153 order.
16154
c8673881
JJ
161552013-10-14 Jakub Jelinek <jakub@redhat.com>
16156
16157 * env.c (parse_bind_var): Initialize value to avoid
16158 (false positive) warning.
16159
f89163fd
JJ
161602013-10-12 Jakub Jelinek <jakub@redhat.com>
16161
16162 PR libgomp/58691
16163 * config/linux/proc.c (gomp_cpuset_popcount): Add unused attribute
16164 to check variable.
16165 (gomp_init_num_threads): Move i variable declaration into
16166 #ifdef CPU_ALLOC_SIZE block.
16167 * config/linux/affinity.c (gomp_affinity_init_level): Test
16168 gomp_places_list_len == 0 rather than gomp_places_list == 0
16169 when checking for topology reading error.
16170 * team.c (gomp_team_start): Don't handle bind == omp_proc_bind_false.
16171 * env.c (parse_affinity): Add ignore argument, if true, don't populate
16172 gomp_places_list, only parse env var and always return false.
16173 (parse_places_var): Likewise. Don't check gomp_global_icv.bind_var.
16174 (initialize_env): Always parse OMP_PLACES and GOMP_CPU_AFFINITY env
16175 vars, default to OMP_PROC_BIND=true if OMP_PROC_BIND wasn't specified
16176 and either of these variables were parsed correctly into a places
16177 list.
16178
1d340638
TS
161792013-10-11 Thomas Schwinge <thomas@codesourcery.com>
16180 Jakub Jelinek <jakub@redhat.com>
16181
16182 * testsuite/libgomp.graphite/force-parallel-1.c: Expect 4 instead
16183 of 5 loopfn matches.
16184 * testsuite/libgomp.graphite/force-parallel-2.c: Likewise.
16185 * testsuite/libgomp.graphite/force-parallel-3.c: Likewise.
16186 * testsuite/libgomp.graphite/force-parallel-4.c: Likewise.
16187 * testsuite/libgomp.graphite/force-parallel-5.c: Likewise.
16188 * testsuite/libgomp.graphite/force-parallel-6.c: Likewise.
16189 * testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
16190 * testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
16191 * testsuite/libgomp.graphite/force-parallel-9.c: Likewise.
16192
71a81c21
TS
161932013-10-11 Thomas Schwinge <thomas@codesourcery.com>
16194
bd87f731
TS
16195 * Makefile.am (omp_lib.mod): Streamline rule.
16196 * Makefile.in: Regenerate.
16197
f5745bed
TS
16198 * libgomp.texi (Runtime Library Routines): C linkage, don't throw
16199 exceptions.
16200
b5512c66
TS
16201 * testsuite/libgomp.c/lib-1.c (main): Add missing error check.
16202 * testsuite/libgomp.fortran/lib1.f90: Likewise.
16203 * testsuite/libgomp.fortran/lib2.f: Likewise.
16204 * testsuite/libgomp.fortran/lib3.f: Likewise.
16205
451c19c4
TS
16206 * configure.ac: Typo fix.
16207 * configure: Regenerate.
16208
86a6016d
TS
16209 * testsuite/libgomp.fortran/openmp_version-1.f: New file.
16210 * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
16211
71a81c21
TS
16212 * omp.h.in: Don't touch the user's namespace.
16213
acf0174b
JJ
162142013-10-11 Jakub Jelinek <jakub@redhat.com>
16215 Tobias Burnus <burnus@net-b.de>
16216 Richard Henderson <rth@redhat.com>
16217
16218 * target.c: New file.
16219 * Makefile.am (libgomp_la_SOURCES): Add target.c.
16220 * Makefile.in: Regenerated.
16221 * libgomp_g.h (GOMP_task): Add depend argument.
16222 (GOMP_barrier_cancel, GOMP_loop_end_cancel,
16223 GOMP_sections_end_cancel, GOMP_target, GOMP_target_data,
16224 GOMP_target_end_data, GOMP_target_update, GOMP_teams,
16225 GOMP_parallel_loop_static, GOMP_parallel_loop_dynamic,
16226 GOMP_parallel_loop_guided, GOMP_parallel_loop_runtime,
16227 GOMP_parallel, GOMP_cancel, GOMP_cancellation_point,
16228 GOMP_taskgroup_start, GOMP_taskgroup_end,
16229 GOMP_parallel_sections): New prototypes.
16230 * fortran.c (omp_is_initial_device): Add ialias_redirect.
16231 (omp_is_initial_device_): New function.
16232 (ULP, STR1, STR2, ialias_redirect): Removed.
16233 (omp_get_cancellation_, omp_get_proc_bind_, omp_set_default_device_,
16234 omp_set_default_device_8_, omp_get_default_device_,
16235 omp_get_num_devices_, omp_get_num_teams_, omp_get_team_num_): New
16236 functions.
16237 * libgomp.map (GOMP_barrier_cancel, GOMP_loop_end_cancel,
16238 GOMP_sections_end_cancel, GOMP_target, GOMP_target_data,
16239 GOMP_target_end_data, GOMP_target_update, GOMP_teams): Export
16240 @@GOMP_4.0.
16241 (omp_is_initial_device, omp_is_initial_device_, omp_get_cancellation,
16242 omp_get_cancellation_, omp_get_proc_bind, omp_get_proc_bind_,
16243 omp_set_default_device, omp_set_default_device_,
16244 omp_set_default_device_8_, omp_get_default_device,
16245 omp_get_default_device_, omp_get_num_devices, omp_get_num_devices_,
16246 omp_get_num_teams, omp_get_num_teams_, omp_get_team_num,
16247 omp_get_team_num_): Export @@OMP_4.0.
16248 * team.c (struct gomp_thread_start_data): Add place field.
16249 (gomp_thread_start): Clear thr->thread_pool and
16250 thr->task before returning. Use gomp_team_barrier_wait_final
16251 instead of gomp_team_barrier_wait. Initialize thr->place.
16252 (gomp_new_team): Initialize work_shares_to_free, work_share_cancelled,
16253 team_cancelled and task_queued_count fields.
16254 (gomp_free_pool_helper): Clear thr->thread_pool and thr->task
16255 before calling pthread_exit.
16256 (gomp_free_thread): No longer static. Use
16257 gomp_managed_threads_lock instead of gomp_remaining_threads_lock.
16258 (gomp_team_start): Add flags argument. Set
16259 thr->thread_pool->threads_busy to nthreads immediately after creating
16260 new pool. Use gomp_managed_threads_lock instead of
16261 gomp_remaining_threads_lock. Handle OpenMP 4.0 affinity.
16262 (gomp_team_end): Use gomp_managed_threads_lock instead of
16263 gomp_remaining_threads_lock. Use gomp_team_barrier_wait_final instead
16264 of gomp_team_barrier_wait. If team->team_cancelled, call
93d90219 16265 gomp_fini_workshare on ws chain starting at team->work_shares_to_free
acf0174b
JJ
16266 rather than thr->ts.work_share.
16267 (initialize_team): Don't call gomp_sem_init here.
16268 * sections.c (GOMP_parallel_sections_start): Adjust gomp_team_start
16269 caller.
16270 (GOMP_parallel_sections, GOMP_sections_end_cancel): New functions.
16271 * env.c (gomp_global_icv): Add default_device_var, target_data and
16272 bind_var initializers.
16273 (gomp_cpu_affinity, gomp_cpu_affinity_len): Remove.
16274 (gomp_bind_var_list, gomp_bind_var_list_len, gomp_places_list,
16275 gomp_places_list_len): New variables.
16276 (parse_bind_var, parse_one_place, parse_places_var): New functions.
16277 (parse_affinity): Rewritten to construct OMP_PLACES list with unit
16278 sized places.
16279 (gomp_cancel_var): New global variable.
16280 (parse_int): New function.
16281 (handle_omp_display_env): New function.
16282 (initialize_env): Use it. Initialize default_device_var.
16283 Parse OMP_CANCELLATION env var. Use parse_bind_var to parse
16284 OMP_PROC_BIND instead of parse_boolean. Use parse_places_var for
16285 OMP_PLACES parsing. Don't call parse_affinity if OMP_PLACES has
16286 been successfully parsed (and call gomp_init_affinity in that case).
16287 (omp_get_cancellation, omp_get_proc_bind, omp_set_default_device,
16288 omp_get_default_device, omp_get_num_devices, omp_get_num_teams,
16289 omp_get_team_num, omp_is_initial_device): New functions.
16290 * libgomp.h: Include stdlib.h.
16291 (ialias_ulp, ialias_str1, ialias_str2, ialias_redirect, ialias_call):
16292 Define.
16293 (struct target_mem_desc): Forward declare.
16294 (struct gomp_task_icv): Add default_device_var, target_data, bind_var
16295 and thread_limit_var fields.
16296 (gomp_get_num_devices): New prototype.
16297 (gomp_cancel_var): New extern decl.
16298 (struct gomp_team): Add work_shares_to_free, work_share_cancelled,
16299 team_cancelled and task_queued_count fields. Add comments about
16300 task_{,queued_,running_}count.
16301 (gomp_cancel_kind): New enum.
16302 (gomp_work_share_end_cancel): New prototype.
16303 (struct gomp_task): Add next_taskgroup, prev_taskgroup, taskgroup,
16304 copy_ctors_done, dependers, depend_hash, depend_count, num_dependees
16305 and depend fields.
16306 (struct gomp_taskgroup): New type.
16307 (struct gomp_task_depend_entry,
16308 struct gomp_dependers_vec): New types.
16309 (gomp_finish_task): Free depend_hash if non-NULL.
16310 (struct gomp_team_state): Add place_partition_off
16311 and place_partition_len fields.
16312 (gomp_bind_var_list, gomp_bind_var_list_len, gomp_places_list,
16313 gomp_places_list_len): New extern decls.
16314 (struct gomp_thread): Add place field.
16315 (gomp_cpu_affinity, gomp_cpu_affinity_len): Remove.
16316 (gomp_init_thread_affinity): Add place argument.
16317 (gomp_affinity_alloc, gomp_affinity_init_place, gomp_affinity_add_cpus,
16318 gomp_affinity_remove_cpu, gomp_affinity_copy_place,
16319 gomp_affinity_same_place, gomp_affinity_finalize_place_list,
16320 gomp_affinity_init_level, gomp_affinity_print_place): New
16321 prototypes.
16322 (gomp_team_start): Add flags argument.
16323 (gomp_thread_limit_var, gomp_remaining_threads_count,
16324 gomp_remaining_threads_lock): Remove.
16325 (gomp_managed_threads_lock): New variable.
16326 (struct gomp_thread_pool): Add threads_busy field.
16327 (gomp_free_thread): New prototype.
16328 * task.c: Include hashtab.h.
16329 (hash_entry_type): New typedef.
16330 (htab_alloc, htab_free, htab_hash, htab_eq): New inlines.
16331 (gomp_init_task): Clear dependers, depend_hash, depend_count,
16332 copy_ctors_done and taskgroup fields.
16333 (GOMP_task): Add depend argument, handle depend clauses. If
16334 gomp_team_barrier_cancelled or if it's taskgroup has been
16335 cancelled, don't queue or start new tasks. Set copy_ctors_done
16336 field if needed. Initialize taskgroup field. If copy_ctors_done
16337 and already cancelled, don't discard the task. If taskgroup is
16338 non-NULL, enqueue the task into taskgroup queue. Increment
16339 num_children field in taskgroup. Increment task_queued_count.
16340 (gomp_task_run_pre, gomp_task_run_post_remove_parent,
16341 gomp_task_run_post_remove_taskgroup): New inline functions.
16342 (gomp_task_run_post_handle_depend_hash,
16343 gomp_task_run_post_handle_dependers,
16344 gomp_task_run_post_handle_depend): New functions.
16345 (GOMP_taskwait): Use them. If more than one new tasks
16346 have been queued, wake other threads if needed.
16347 (gomp_barrier_handle_tasks): Likewise. If
16348 gomp_team_barrier_cancelled, don't start any new tasks, just free
16349 all tasks.
16350 (GOMP_taskgroup_start, GOMP_taskgroup_end): New functions.
16351 * omp_lib.f90.in
16352 (omp_proc_bind_kind, omp_proc_bind_false,
16353 omp_proc_bind_true, omp_proc_bind_master, omp_proc_bind_close,
16354 omp_proc_bind_spread): New params.
16355 (omp_get_cancellation, omp_get_proc_bind, omp_set_default_device,
16356 omp_get_default_device, omp_get_num_devices, omp_get_num_teams,
16357 omp_get_team_num, omp_is_initial_device): New interfaces.
16358 (omp_get_dynamic, omp_get_nested, omp_in_parallel,
16359 omp_get_max_threads, omp_get_num_procs, omp_get_num_threads,
16360 omp_get_thread_num, omp_get_thread_limit, omp_set_max_active_levels,
16361 omp_get_max_active_levels, omp_get_level, omp_get_ancestor_thread_num,
16362 omp_get_team_size, omp_get_active_level, omp_in_final): Remove
16363 useless use omp_lib_kinds.
16364 * omp.h.in (omp_proc_bind_t): New typedef.
16365 (omp_get_cancellation, omp_get_proc_bind, omp_set_default_device,
16366 omp_get_default_device, omp_get_num_devices, omp_get_num_teams,
16367 omp_get_team_num, omp_is_initial_device): New prototypes.
16368 * loop.c (gomp_parallel_loop_start): Add flags argument, pass it
16369 through to gomp_team_start.
16370 (GOMP_parallel_loop_static_start, GOMP_parallel_loop_dynamic_start,
16371 GOMP_parallel_loop_guided_start, GOMP_parallel_loop_runtime_start):
16372 Adjust gomp_parallel_loop_start callers.
16373 (GOMP_parallel_loop_static, GOMP_parallel_loop_dynamic,
16374 GOMP_parallel_loop_guided, GOMP_parallel_loop_runtime,
16375 GOMP_loop_end_cancel): New functions.
16376 (GOMP_parallel_end): Add ialias_redirect.
16377 * hashtab.h: New file.
16378 * libgomp.texi (Environment Variables): Minor cleanup,
16379 update section refs to OpenMP 4.0rc2.
16380 (OMP_DISPLAY_ENV, GOMP_SPINCOUNT): Document these
16381 environment variables.
16382 * work.c (gomp_work_share_end, gomp_work_share_end_nowait): Set
16383 team->work_shares_to_free to thr->ts.work_share before calling
16384 free_work_share.
16385 (gomp_work_share_end_cancel): New function.
16386 * config/linux/proc.c: Include errno.h.
16387 (gomp_get_cpuset_size, gomp_cpuset_size, gomp_cpusetp): New variables.
16388 (gomp_cpuset_popcount): Add cpusetsize argument, use it instead of
16389 sizeof (cpu_set_t) to determine number of iterations. Fix up check
16390 extern decl. Use CPU_COUNT_S if available, or CPU_COUNT if
16391 gomp_cpuset_size is sizeof (cpu_set_t).
16392 (gomp_init_num_threads): Initialize gomp_cpuset_size,
16393 gomp_get_cpuset_size and gomp_cpusetp here, use gomp_cpusetp instead
16394 of &cpuset and pass gomp_cpuset_size instead of sizeof (cpu_set_t)
16395 to pthread_getaffinity_np. Free and clear gomp_cpusetp if it didn't
16396 contain any logical CPUs.
16397 (get_num_procs): Don't call pthread_getaffinity_np if gomp_cpusetp
16398 is NULL. Use gomp_cpusetp instead of &cpuset and pass
16399 gomp_get_cpuset_size instead of sizeof (cpu_set_t) to
16400 pthread_getaffinity_np. Check gomp_places_list instead of
16401 gomp_cpu_affinity. Adjust gomp_cpuset_popcount caller.
16402 * config/linux/bar.c (gomp_barrier_wait_end,
16403 gomp_barrier_wait_last): Use BAR_* defines.
16404 (gomp_team_barrier_wait_end): Likewise. Clear BAR_CANCELLED
16405 from state where needed. Set work_share_cancelled to 0 on last
16406 thread.
16407 (gomp_team_barrier_wait_final, gomp_team_barrier_wait_cancel_end,
16408 gomp_team_barrier_wait_cancel, gomp_team_barrier_cancel): New
16409 functions.
16410 * config/linux/proc.h (gomp_cpuset_popcount): Add attribute_hidden.
16411 Add cpusetsize argument.
16412 (gomp_cpuset_size, gomp_cpusetp): Declare.
16413 * config/linux/affinity.c: Include errno.h, stdio.h and string.h.
16414 (affinity_counter): Remove.
16415 (CPU_ISSET_S, CPU_ZERO_S, CPU_SET_S, CPU_CLR_S): Define
16416 if CPU_ALLOC_SIZE isn't defined.
16417 (gomp_init_affinity): Rewritten, if gomp_places_list is NULL, try
16418 silently create OMP_PLACES=threads, if it is non-NULL afterwards,
16419 bind current thread to the first place.
16420 (gomp_init_thread_affinity): Rewritten. Add place argument, just
16421 pthread_setaffinity_np to gomp_places_list[place].
16422 (gomp_affinity_alloc, gomp_affinity_init_place, gomp_affinity_add_cpus,
16423 gomp_affinity_remove_cpu, gomp_affinity_copy_place,
16424 gomp_affinity_same_place, gomp_affinity_finalize_place_list,
16425 gomp_affinity_init_level, gomp_affinity_print_place): New functions.
16426 * config/linux/bar.h (BAR_TASK_PENDING, BAR_WAS_LAST,
16427 BAR_WAITING_FOR_TASK, BAR_INCR, BAR_CANCELLED): Define.
16428 (gomp_barrier_t): Add awaited_final field.
16429 (gomp_barrier_init): Initialize awaited_final field.
16430 (gomp_team_barrier_wait_final, gomp_team_barrier_wait_cancel,
16431 gomp_team_barrier_wait_cancel_end, gomp_team_barrier_cancel): New
16432 prototypes.
16433 (gomp_barrier_wait_start): Preserve BAR_CANCELLED bit. Use BAR_*
16434 defines.
16435 (gomp_barrier_wait_cancel_start, gomp_team_barrier_wait_final_start,
16436 gomp_team_barrier_cancelled): New inline functions.
16437 (gomp_barrier_last_thread,
16438 gomp_team_barrier_set_task_pending,
16439 gomp_team_barrier_clear_task_pending,
16440 gomp_team_barrier_set_waiting_for_tasks,
16441 gomp_team_barrier_waiting_for_tasks,
16442 gomp_team_barrier_done): Use BAR_* defines.
16443 * config/posix/bar.c (gomp_barrier_init): Clear cancellable field.
16444 (gomp_barrier_wait_end): Use BAR_* defines.
16445 (gomp_team_barrier_wait_end): Clear BAR_CANCELLED from state.
16446 Set work_share_cancelled to 0 on last thread, use __atomic_load_n.
16447 Use BAR_* defines.
16448 (gomp_team_barrier_wait_cancel_end, gomp_team_barrier_wait_cancel,
16449 gomp_team_barrier_cancel): New functions.
16450 * config/posix/affinity.c (gomp_init_thread_affinity): Add place
16451 argument.
16452 (gomp_affinity_alloc, gomp_affinity_init_place, gomp_affinity_add_cpus,
16453 gomp_affinity_remove_cpu, gomp_affinity_copy_place,
16454 gomp_affinity_same_place, gomp_affinity_finalize_place_list,
16455 gomp_affinity_init_level, gomp_affinity_print_place): New stubs.
16456 * config/posix/bar.h (BAR_TASK_PENDING, BAR_WAS_LAST,
16457 BAR_WAITING_FOR_TASK, BAR_INCR, BAR_CANCELLED): Define.
16458 (gomp_barrier_t): Add cancellable field.
16459 (gomp_team_barrier_wait_cancel, gomp_team_barrier_wait_cancel_end,
16460 gomp_team_barrier_cancel): New prototypes.
16461 (gomp_barrier_wait_start): Preserve BAR_CANCELLED bit.
16462 (gomp_barrier_wait_cancel_start, gomp_team_barrier_wait_final,
16463 gomp_team_barrier_cancelled): New inline functions.
16464 (gomp_barrier_wait_start, gomp_barrier_last_thread,
16465 gomp_team_barrier_set_task_pending,
16466 gomp_team_barrier_clear_task_pending,
16467 gomp_team_barrier_set_waiting_for_tasks,
16468 gomp_team_barrier_waiting_for_tasks,
16469 gomp_team_barrier_done): Use BAR_* defines.
16470 * barrier.c (GOMP_barrier_cancel): New function.
16471 * omp_lib.h.in (omp_proc_bind_kind, omp_proc_bind_false,
16472 omp_proc_bind_true, omp_proc_bind_master, omp_proc_bind_close,
16473 omp_proc_bind_spread): New params.
16474 (omp_get_cancellation, omp_get_proc_bind, omp_set_default_device,
16475 omp_get_default_device, omp_get_num_devices, omp_get_num_teams,
16476 omp_get_team_num, omp_is_initial_device): New externals.
16477 * parallel.c (GOMP_parallel, GOMP_cancel, GOMP_cancellation_point):
16478 New functions.
16479 (gomp_resolve_num_threads): Adjust for thread_limit now being in
16480 icv->thread_limit_var. Use UINT_MAX instead of ULONG_MAX as
16481 infinity. If not nested, just return minimum of max_num_threads
16482 and icv->thread_limit_var and if thr->thread_pool, set threads_busy
16483 to the returned value. Otherwise, don't update atomically
16484 gomp_remaining_threads_count, but instead thr->thread_pool->threads_busy.
16485 (GOMP_parallel_end): Adjust for thread_limit now being in
16486 icv->thread_limit_var. Use UINT_MAX instead of ULONG_MAX as
16487 infinity. Adjust threads_busy in the pool rather than
16488 gomp_remaining_threads_count. Remember team->nthreads and call
16489 gomp_team_end before adjusting threads_busy, if not nested
16490 afterwards, just set it to 1 non-atomically. Add ialias.
16491 (GOMP_parallel_start): Adjust gomp_team_start caller.
16492 * testsuite/libgomp.c/atomic-14.c: Add parens to make it valid.
16493 * testsuite/libgomp.c/affinity-1.c: New test.
16494 * testsuite/libgomp.c/atomic-15.c: New test.
16495 * testsuite/libgomp.c/atomic-16.c: New test.
16496 * testsuite/libgomp.c/atomic-17.c: New test.
16497 * testsuite/libgomp.c/cancel-for-1.c: New test.
16498 * testsuite/libgomp.c/cancel-for-2.c: New test.
16499 * testsuite/libgomp.c/cancel-parallel-1.c: New test.
16500 * testsuite/libgomp.c/cancel-parallel-2.c: New test.
16501 * testsuite/libgomp.c/cancel-parallel-3.c: New test.
16502 * testsuite/libgomp.c/cancel-sections-1.c: New test.
16503 * testsuite/libgomp.c/cancel-taskgroup-1.c: New test.
16504 * testsuite/libgomp.c/cancel-taskgroup-2.c: New test.
16505 * testsuite/libgomp.c/depend-1.c: New test.
16506 * testsuite/libgomp.c/depend-2.c: New test.
16507 * testsuite/libgomp.c/depend-3.c: New test.
16508 * testsuite/libgomp.c/depend-4.c: New test.
16509 * testsuite/libgomp.c/for-1.c: New test.
16510 * testsuite/libgomp.c/for-1.h: New file.
16511 * testsuite/libgomp.c/for-2.c: New test.
16512 * testsuite/libgomp.c/for-2.h: New file.
16513 * testsuite/libgomp.c/for-3.c: New test.
16514 * testsuite/libgomp.c/pr58392.c: New test.
16515 * testsuite/libgomp.c/simd-1.c: New test.
16516 * testsuite/libgomp.c/simd-2.c: New test.
16517 * testsuite/libgomp.c/simd-3.c: New test.
16518 * testsuite/libgomp.c/simd-4.c: New test.
16519 * testsuite/libgomp.c/simd-5.c: New test.
16520 * testsuite/libgomp.c/simd-6.c: New test.
16521 * testsuite/libgomp.c/target-1.c: New test.
16522 * testsuite/libgomp.c/target-2.c: New test.
16523 * testsuite/libgomp.c/target-3.c: New test.
16524 * testsuite/libgomp.c/target-4.c: New test.
16525 * testsuite/libgomp.c/target-5.c: New test.
16526 * testsuite/libgomp.c/target-6.c: New test.
16527 * testsuite/libgomp.c/target-7.c: New test.
16528 * testsuite/libgomp.c/taskgroup-1.c: New test.
16529 * testsuite/libgomp.c/thread-limit-1.c: New test.
16530 * testsuite/libgomp.c/thread-limit-2.c: New test.
16531 * testsuite/libgomp.c/thread-limit-3.c: New test.
16532 * testsuite/libgomp.c/udr-1.c: New test.
16533 * testsuite/libgomp.c/udr-2.c: New test.
16534 * testsuite/libgomp.c/udr-3.c: New test.
16535 * testsuite/libgomp.c++/affinity-1.C: New test.
16536 * testsuite/libgomp.c++/atomic-10.C: New test.
16537 * testsuite/libgomp.c++/atomic-11.C: New test.
16538 * testsuite/libgomp.c++/atomic-12.C: New test.
16539 * testsuite/libgomp.c++/atomic-13.C: New test.
16540 * testsuite/libgomp.c++/atomic-14.C: New test.
16541 * testsuite/libgomp.c++/atomic-15.C: New test.
16542 * testsuite/libgomp.c++/cancel-for-1.C: New test.
16543 * testsuite/libgomp.c++/cancel-for-2.C: New test.
16544 * testsuite/libgomp.c++/cancel-parallel-1.C: New test.
16545 * testsuite/libgomp.c++/cancel-parallel-2.C: New test.
16546 * testsuite/libgomp.c++/cancel-parallel-3.C: New test.
16547 * testsuite/libgomp.c++/cancel-sections-1.C: New test.
16548 * testsuite/libgomp.c++/cancel-taskgroup-1.C: New test.
16549 * testsuite/libgomp.c++/cancel-taskgroup-2.C: New test.
16550 * testsuite/libgomp.c++/cancel-taskgroup-3.C: New test.
16551 * testsuite/libgomp.c++/cancel-test.h: New file.
16552 * testsuite/libgomp.c++/for-9.C: New test.
16553 * testsuite/libgomp.c++/for-10.C: New test.
16554 * testsuite/libgomp.c++/for-11.C: New test.
16555 * testsuite/libgomp.c++/simd-1.C: New test.
16556 * testsuite/libgomp.c++/simd-2.C: New test.
16557 * testsuite/libgomp.c++/simd-3.C: New test.
16558 * testsuite/libgomp.c++/simd-4.C: New test.
16559 * testsuite/libgomp.c++/simd-5.C: New test.
16560 * testsuite/libgomp.c++/simd-6.C: New test.
16561 * testsuite/libgomp.c++/simd-7.C: New test.
16562 * testsuite/libgomp.c++/simd-8.C: New test.
16563 * testsuite/libgomp.c++/target-1.C: New test.
16564 * testsuite/libgomp.c++/target-2.C: New test.
16565 * testsuite/libgomp.c++/target-2-aux.cc: New file.
16566 * testsuite/libgomp.c++/target-3.C: New test.
16567 * testsuite/libgomp.c++/taskgroup-1.C: New test.
16568 * testsuite/libgomp.c++/udr-1.C: New test.
16569 * testsuite/libgomp.c++/udr-2.C: New test.
16570 * testsuite/libgomp.c++/udr-3.C: New test.
16571 * testsuite/libgomp.c++/udr-4.C: New test.
16572 * testsuite/libgomp.c++/udr-5.C: New test.
16573 * testsuite/libgomp.c++/udr-6.C: New test.
16574 * testsuite/libgomp.c++/udr-7.C: New test.
16575 * testsuite/libgomp.c++/udr-8.C: New test.
16576 * testsuite/libgomp.c++/udr-9.C: New test.
16577
bd599dea
JJ
165782013-09-20 Jakub Jelinek <jakub@redhat.com>
16579
16580 PR testsuite/57605
16581 * testsuite/lib/libgomp.exp: Add -fdiagnostics-color=never to
16582 ALWAYS_CFLAGS.
16583
3cbe17f7
AM
165842013-09-20 Alan Modra <amodra@gmail.com>
16585
16586 * configure: Regenerate.
16587
4befd127
JJ
165882013-09-19 Jakub Jelinek <jakub@redhat.com>
16589
16590 * testsuite/libgomp.c/sections-2.c: New test.
16591
946c8f7b
MS
165922013-06-28 Marcus Shawcroft <marcus.shawcroft@arm.com>
16593
16594 * testsuite/libgomp.fortran/strassen.f90:
16595 Add dg-skip-if aarch64_tiny.
16596
1ef3b58e
IS
165972013-06-20 Iain Sandoe <iain@codesourcery.com>
16598 Cesar Philippidis <cesar@codesourcery.com>
16599
16600 * testsuite/lib/libgomp.exp: Reorder lib loads into dependency order.
16601 Do not load_gcc_lib gcc-dg.exp and add a comment as to why.
16602 * testsuite/libgomp.c/c.exp: load_gcc_lib gcc-dg.exp.
16603 * testsuite/libgomp.fortran/fortran.exp: Likewise.
16604 * testsuite/libgomp.graphite/graphite.exp: Likewise.
16605 * testsuite/libgomp.c++/c++.exp: load_gcc_lib gcc-dg.exp.
16606 Use dg-runtest rather than gfortran-dg-runtest.
16607
9275f73a
TS
166082013-06-10 Thomas Schwinge <thomas@codesourcery.com>
16609
16610 * testsuite/libgomp.c/icv-2.c: Extend current handling of
16611 Linux-based x86 systems to cover all GNU systems.
16612 * testsuite/libgomp.c/lock-3.c: Likewise.
16613 * testsuite/libgomp.c/pr48591.c: Likewise.
16614
492992e2
TS
166152013-06-06 Thomas Schwinge <thomas@codesourcery.com>
16616
48df3acb
TS
16617 * configure.tgt (XCFLAGS): Add -ftls-model=initial-exec for
16618 GNU/Hurd, as done for Linux-based systems.
16619
492992e2
TS
16620 * config/posix/ptrlock.h: Fix comment.
16621
4fed6b25
TB
166222013-05-27 Tobias Burnus <burnus@net-b.de>
16623
16624 PR fortran/57423
16625 * libgomp.texi (omp_set_dynamic, omp_set_nested, omp_set_nested,
16626 omp_set_num_threads, omp_init_lock, omp_set_lock, omp_test_lock,
16627 omp_unset_lock, omp_destroy_lock, omp_init_nest_lock,
16628 omp_set_nest_lock, omp_test_nest_lock, omp_unset_nest_lock,
16629 omp_destroy_nest_lock): Correct arguments to match the one in
16630 the OpenMP spec.
16631 * omp_lib.f90.in (omp_init_lock, omp_init_nest_lock, omp_destroy_lock
16632 omp_destroy_nest_lock, omp_set_lock, omp_set_nest_lock, omp_unset_lock,
16633 omp_unset_nest_lock, omp_set_dynamic, omp_set_nested,
16634 omp_set_num_threads, omp_test_lock, omp_test_nest_lock): Ditto.
16635
5a0f4dd3
JJ
166362013-05-16 Jakub Jelinek <jakub@redhat.com>
16637
16638 * testsuite/libgomp.c/loop-13.c: New test.
16639 * testsuite/libgomp.c/loop-14.c: New test.
16640 * testsuite/libgomp.c/loop-15.c: New test.
16641 * testsuite/libgomp.c++/loop-13.C: New test.
16642 * testsuite/libgomp.c++/loop-14.C: New test.
16643 * testsuite/libgomp.c++/loop-15.C: New test.
16644
6d840d99
JJ
166452013-02-06 Jakub Jelinek <jakub@redhat.com>
16646
16647 PR middle-end/56217
16648 * testsuite/libgomp.c++/pr56217.C: New test.
16649
bed8d8a6
AM
166502013-02-01 Alan Modra <amodra@gmail.com>
16651
16652 * task.c (GOMP_task, GOMP_taskwait): Comment.
16653
3b35cd04
DV
166542013-01-31 Dmitry Vyukov <dvyukov@gcc.gnu.org>
16655 Joost VandeVondele <Joost.VandeVondele@mat.ethz.ch>
16656
16657 PR libgomp/55561
16658 * config/linux/wait.h (do_spin): Use atomic load for addr.
16659 * config/linux/ptrlock.c (gomp_ptrlock_get_slow): Use atomic
16660 for intptr and ptrlock.
16661 * config/linux/ptrlock.h (gomp_ptrlock_get): Use atomic load
16662 for ptrlock.
16663
9a647288
AM
166642013-01-22 Alan Modra <amodra@gmail.com>
16665
16666 PR libgomp/51376
16667 PR libgomp/56073
16668 * task.c (GOMP_task): Revert 2011-12-09 change.
16669 (GOMP_taskwait): Likewise. Instead use atomic load with acquire
16670 barrier to read task->children..
16671 (gomp_barrier_handle_tasks): ..and matching atomic store with
16672 release barrier here when setting parent->children to NULL.
16673
f34dea03
JJ
166742013-01-16 Jakub Jelinek <jakub@redhat.com>
16675 Tobias Burnus <burnus@net-b.de>
16676
16677 PR driver/55884
16678 * testsuite/libgomp.fortran/fortran.exp: Use
16679 -fintrinsic-modules-path= instead of
16680 -fintrinsic-modules-path.
16681
8129609c
RS
166822013-01-14 Richard Sandiford <rdsandiford@googlemail.com>
16683
16684 Update copyright years.
16685
aa86bf1e
TB
166862012-12-19 Tobias Burnus <burnus@net-b.de>
16687
16688 * testsuite/libgomp.fortran/fortran.exp: Set
16689 -fintrinsic-modules-path.
16690
2865ea66
TB
166912012-12-19 Tobias Burnus <burnus@net-b.de>
16692
16693 * testsuite/libgomp.fortran/use_intrinsic_1.f90: New; moved
16694 from gcc/testsuite/gfortran.dg/gomp/use_intrinsic_1.f90.
16695
4c5ba8d0
JJ
166962012-11-21 Jakub Jelinek <jakub@redhat.com>
16697
16698 PR libgomp/55411
16699 * team.c (gomp_free_thread): Decrease gomp_managed_threads
16700 if pool had any threads_used.
16701
e9f958c2
JH
167022012-11-07 Jack Howarth <howarth@bromo.med.uc.edu>
16703
16704 * testsuite/libgomp.c++/pr24455.C: Use
16705 -Wl,-undefined,dynamic_lookup on darwin.
16706
a57d75dc
DE
167072012-11-07 David Edelsohn <dje.gcc@gmail.com>
16708
16709 * testsuite/libgomp.c++/pr24455.C: Use -Wl,-G on AIX.
16710
c6c08485
DH
167112012-10-24 Dominique d'Humieres <dominiq@lps.ens.fr>
16712
16713 * testsuite/libgomp.graphite/force-parallel-6.c: Adjust the loops.
16714
c1f37c00
IB
167152012-10-23 Ian Bolton <ian.bolton@arm.com>
16716 Jim MacArthur <jim.macarthur@arm.com>
16717 Marcus Shawcroft <marcus.shawcroft@arm.com>
16718 Nigel Stephens <nigel.stephens@arm.com>
16719 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
16720 Richard Earnshaw <rearnsha@arm.com>
16721 Sofiane Naci <sofiane.naci@arm.com>
16722 Stephen Thomas <stephen.thomas@arm.com>
16723 Tejas Belagod <tejas.belagod@arm.com>
16724 Yufeng Zhang <yufeng.zhang@arm.com>
16725
16726 * configure.tgt: Add AArch64.
16727
7c424acd
JM
167282012-10-04 Jason Merrill <jason@redhat.com>
16729
16730 * testsuite/libgomp.c++/tls-init1.C: New.
16731
6608378b
DE
167322012-09-14 David Edelsohn <dje.gcc@gmail.com>
16733
16734 * configure: Regenerated.
16735
c24dbebb
CLT
167362012-08-29 Chung-Lin Tang <cltang@codesourcery.com>
16737
16738 * config/linux/mips/futex.h (sys_futex0): Change to static
16739 function with noinline, nomips16 attributes under MIPS16. Adjust
16740 asm statement to place 'li v0,SYS_futex' immediately before
16741 syscall insn.
16742
3d3949df
SL
167432012-07-04 Sandra Loosemore <sandra@codesourcery.com>
16744
16745 * libgomp.texi (Library Index): Renamed from "Index" to prevent
16746 conflict with index.html on case-insensitive file systems.
16747
68a12ef3
UB
167482012-07-03 Uros Bizjak <ubizjak@gmail.com>
16749
16750 * config/linux/x86/futex.h (cpu_relax): Use __builtin_ia32_pause.
16751 * testsuite/libgomp.c/sort-1.c (busy_wait): Ditto.
16752
33ad93b9 167532012-07-02 Richard Guenther <rguenther@suse.de>
68a12ef3
UB
16754 Michael Matz <matz@suse.de>
16755 Tobias Grosser <tobias@grosser.es>
16756 Sebastian Pop <sebpop@gmail.com>
33ad93b9
RG
16757
16758 * testsuite/libgomp.graphite/force-parallel-4.c: Adjust.
16759 * testsuite/libgomp.graphite/force-parallel-5.c: Likewise.
16760 * testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
16761 * testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
16762
e6fdc918
AS
167632012-06-28 Andreas Schwab <schwab@linux-m68k.org>
16764
16765 * libgomp.texi: Include gpl_v3.texi instead of gpl.texi.
16766
62e0a1ed
RG
167672012-06-22 Richard Guenther <rguenther@suse.de>
16768
16769 Merge from graphite branch
16770 2012-01-13 Tobias Grosser <tobias@grosser.es>
16771
16772 * testsuite/libgomp.graphite/force-parallel-1.c: Adjust.
16773 * testsuite/libgomp.graphite/force-parallel-2.c: Likewise.
16774
26127932
JJ
167752012-06-07 Jakub Jelinek <jakub@redhat.com>
16776
16777 PR middle-end/53580
16778 * testsuite/libgomp.c/pr26943-2.c: Remove #pragma omp barrier,
16779 use GOMP_barrier () call instead.
16780 * testsuite/libgomp.c/pr26943-3.c: Likewise.
16781 * testsuite/libgomp.c/pr26943-4.c: Likewise.
16782 * testsuite/libgomp.fortran/vla4.f90: Remove !$omp barrier,
16783 call GOMP_barrier instead.
16784 * testsuite/libgomp.fortran/vla5.f90: Likewise.
16785
43fa5db5
JJ
167862012-06-06 Jakub Jelinek <jakub@redhat.com>
16787
16788 PR libgomp/52993
16789 * config/linux/lock.c (gomp_init_nest_lock_25): Fix up last
16790 argument to memset call.
16791
e6d5f8c9
L
167922012-05-16 H.J. Lu <hongjiu.lu@intel.com>
16793
16794 * configure: Regenerated.
16795
559d990c
MLI
167962012-04-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
16797
16798 * testsuite/lib/libgomp.exp: Add -fno-diagnostics-show-caret.
16799
b9c23a61
L
168002012-03-31 H.J. Lu <hongjiu.lu@intel.com>
16801
16802 PR bootstrap/52812
16803 * configure.tgt (i[456]86-*-linux*): Handle -mx32 like -m64.
16804
c140ddf3
JJ
168052012-03-22 Jakub Jelinek <jakub@redhat.com>
16806
16807 PR middle-end/52547
16808 * testsuite/libgomp.c/pr52547.c: New test.
16809
6a26a74d
BRF
168102012-03-16 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
16811
16812 * testsuite/lib/libgomp.exp: load fortran-modules.exp
16813
b24513a1
RO
168142012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
16815
16816 * configure.tgt (mips-sgi-irix6*): Remove.
16817
5c30094f
RO
168182012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
16819
16820 * configure.tgt (alpha*-dec-osf*): Remove.
16821
16822 * config/osf/sem.h: Remove.
16823 * config/posix/lock.c (_XOPEN_SOURCE): Define unconditionally.
16824
a339c9d6
EB
168252012-02-29 Eric Botcazou <ebotcazou@adacore.com>
16826
16827 * config/linux/sparc/futex.h (cpu_relax): Read from CC register.
16828
cc2de92d
RO
168292012-02-27 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
16830
16831 PR libstdc++/52188
16832 * acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Remove symvers_renaming.
16833 Remove ENABLE_SYMVERS_SOL2.
16834 * configure: Regenerate.
16835 * Makefile.am [LIBGOMP_BUILD_VERSIONED_SHLIB] (comma): New variable.
16836 (PREPROCESS): New variable.
16837 (libgomp.ver): New target.
16838 [LIBGOMP_BUILD_VERSIONED_SHLIB &&
16839 LIBGOMP_BUILD_VERSIONED_SHLIB_GNU]: Remove
16840 LIBGOMP_BUILD_VERSIONED_SHLIB_SOL2 handling.
16841 Use libgomp.ver.
16842 [LIBGOMP_BUILD_VERSIONED_SHLIB_SUN]: Use libgomp.ver, libgomp.ver-sun.
16843 * Makefile.in: Regenerate.
16844
dd552284
WL
168452012-02-14 Walter Lee <walt@tilera.com>
16846
16847 * configure.tgt: Handle tilegx and tilepro.
16848 * config/linux/tile/futex.h: New file.
16849
31432e21
RG
168502012-02-08 Richard Guenther <rguenther@suse.de>
16851
16852 PR tree-optimization/46886
16853 * testsuite/libgomp.c/pr46886.c: New testcase.
16854
b9264b5f
MK
168552012-01-25 Matthias Klose <doko@ubuntu.com>
16856
16857 * config/linux/arm: Remove empty directory.
16858 * configure.tgt (config_path): Remove linux-arm for arm*-*-linux*.
16859
fbf7be80
AM
168602011-12-09 Alan Modra <amodra@gmail.com>
16861
16862 PR libgomp/51376
16863 * task.c (GOMP_taskwait): Don't access task->children outside of
16864 task_lock mutex region.
16865 (GOMP_task): Likewise.
16866
5de62d00
JJ
168672011-12-06 Jakub Jelinek <jakub@redhat.com>
16868
16869 PR libgomp/51132
16870 * testsuite/libgomp.graphite/force-parallel-1.c: Move large arrays
16871 to file scope.
16872 * testsuite/libgomp.graphite/force-parallel-3.c: Likewise.
16873 * testsuite/libgomp.graphite/force-parallel-6.c: Likewise.
16874 * testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
16875 * testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
16876 * testsuite/libgomp.graphite/force-parallel-9.c: Likewise.
16877
45608a43
AM
168782011-12-02 Alan Modra <amodra@gmail.com>
16879
16880 * config/linux/affinity.c: Use atomic rather than sync builtin.
16881 * config/linux/lock.c: Likewise.
16882 * config/linux/ptrlock.h: Likewise.
16883 * config/linux/ptrlock.c: Likewise.
16884 * config/linux/ptrlock.h (gomp_ptrlock_set): Always write here..
16885 * config/linux/ptrlock.c (gomp_ptrlock_set_slow): ..not here.
16886 * config/linux/futex.h (atomic_write_barrier): Delete unused function.
16887 * config/linux/alpha/futex.h (atomic_write_barrier): Likewise.
16888 * config/linux/ia64/futex.h (atomic_write_barrier): Likewise.
16889 * config/linux/mips/futex.h (atomic_write_barrier): Likewise.
16890 * config/linux/powerpc/futex.h (atomic_write_barrier): Likewise.
16891 * config/linux/s390/futex.h (atomic_write_barrier): Likewise.
16892 * config/linux/sparc/futex.h (atomic_write_barrier): Likewise.
16893 * config/linux/x86/futex.h (atomic_write_barrier): Likewise.
16894
ab6dd406
AM
168952011-11-30 Alan Modra <amodra@gmail.com>
16896
16897 PR libgomp/51298
16898 * config/linux/bar.h: Use atomic rather than sync builtins.
16899 * config/linux/bar.c: Likewise. Add missing acquire
16900 synchronisation on generation field.
16901 * task.c (gomp_barrier_handle_tasks): Regain lock so as to not
16902 double unlock.
16903
b40c885f
AM
169042011-11-30 Alan Modra <amodra@gmail.com>
16905
16906 * ordered.c (gomp_ordered_sync): Add MEMMODEL_ACQ_REL fence.
16907 * critical.c (GOMP_critical_start): Add MEMMODEL_RELEASE fence.
16908 * config/linux/mutex.h: Use atomic rather than sync builtins.
16909 * config/linux/mutex.c: Likewise. Comment. Use -1 for waiting state.
16910 * config/linux/omp-lock.h: Comment fix.
16911 * config/linux/arm/mutex.h: Delete.
16912 * config/linux/powerpc/mutex.h: Delete.
16913 * config/linux/ia64/mutex.h: Delete.
16914 * config/linux/mips/mutex.h: Delete.
16915
3e348fcc
AM
169162011-11-30 Alan Modra <amodra@gmail.com>
16917
16918 PR libgomp/51249
16919 * config/linux/sem.h: Rewrite.
16920 * config/linux/sem.c: Rewrite.
16921
cef86eb2
RH
169222011-11-28 Richard Henderson <rth@redhat.com>
16923
16924 * libgomp.h (enum memmodel): New.
16925
c6084f68
AT
169262011-11-21 Andreas Tobler <andreast@fgznet.ch>
16927
16928 * configure: Regenerate.
16929
06fe026c
MK
169302011-10-10 Matthias Klose <doko@ubuntu.com>
16931
16932 * config/posix95: Remove empty directory.
16933
a6c975bd
JJ
169342011-08-26 Jakub Jelinek <jakub@redhat.com>
16935
16936 * testsuite/libgomp.fortran/threadprivate4.f90: New test.
16937
c26dffff
JJ
169382011-08-19 Jakub Jelinek <jakub@redhat.com>
16939
16940 PR fortran/49792
16941 * testsuite/libgomp.fortran/pr49792-1.f90: New test.
16942 * testsuite/libgomp.fortran/pr49792-2.f90: New test.
16943
ddaad3c8
RO
169442011-08-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
16945
16946 * config/posix95/lock.c, posix95/omp-lock.h: Remove.
16947
98d03683
RO
169482011-08-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
16949
16950 PR libgomp/49965
16951 * testsuite/libgomp.c++/task-8.C: Replaced err by errval.
16952
e0b23d9f
UB
169532011-08-03 Uros Bizjak <ubizjak@gmail.com>
16954
16955 * config/linux/proc.h: New.
16956 * config/linux/proc.c: Include "proc.h". Do not include <sched.h>.
16957 (gomp_cpuset_popcount): Rename from cpuset_popcount. No more static.
16958 (gomp_init_num_threads): Update call to cpuset_popcount.
16959 (get_num_procs): Ditto.
16960 * config/linux/affinity.c (gomp_init_affinity): Call
16961 gomp_cpuset_popcount.
16962
20906c66
JJ
169632011-08-02 Jakub Jelinek <jakub@redhat.com>
16964
16965 PR fortran/42041
16966 PR fortran/46752
16967 * omp.h.in (omp_in_final): New prototype.
16968 * omp_lib.f90.in (omp_in_final): New interface.
16969 (omp_integer_kind, omp_logical_kind): Remove
16970 and replace all its uses in the module with 4.
16971 (openmp_version): Change to 201107.
16972 * omp_lib.h.in (omp_sched_static, omp_sched_dynamic,
16973 omp_sched_guided, omp_sched_auto): Use omp_sched_kind
16974 kind for the parameters.
16975 (omp_in_final): New external.
16976 (openmp_version): Change to 201107.
16977 * task.c (omp_in_final): New function.
16978 (gomp_init_task): Initialize final_task.
16979 (GOMP_task): Remove unused attribute from flags. Handle final
16980 tasks.
16981 (GOMP_taskyield): New function.
16982 (omp_in_final): Return true if if (false) or final (true) task
16983 or descendant of final (true).
16984 * fortran.c (omp_in_final_): New function.
16985 * libgomp.map (OMP_3.1): Export omp_in_final and omp_in_final_.
16986 (GOMP_3.0): Export GOMP_taskyield.
16987 * env.c (gomp_nthreads_var_list, gomp_nthreads_var_list_len): New
16988 variables.
16989 (parse_unsigned_long_list): New function.
16990 (initialize_env): Use it for OMP_NUM_THREADS. Call parse_boolean
16991 with "OMP_PROC_BIND". If OMP_PROC_BIND=true, call gomp_init_affinity
16992 even if parse_affinity returned false.
16993 * config/linux/affinity.c (gomp_init_affinity): Handle
16994 gomp_cpu_affinity_len == 0.
16995 * libgomp_g.h (GOMP_taskyield): New prototype.
16996 * libgomp.h (struct gomp_task): Add final_task field.
16997 (gomp_nthreads_var_list, gomp_nthreads_var_list_len): New externs.
16998 * team.c (gomp_team_start): Override new task's nthreads_var icv
16999 if list form OMP_NUM_THREADS has been used and it has value for
17000 the new nesting level.
17001
17002 * testsuite/libgomp.c/atomic-11.c: New test.
17003 * testsuite/libgomp.c/atomic-12.c: New test.
17004 * testsuite/libgomp.c/atomic-13.c: New test.
17005 * testsuite/libgomp.c/atomic-14.c: New test.
17006 * testsuite/libgomp.c/reduction-6.c: New test.
17007 * testsuite/libgomp.c/task-5.c: New test.
17008 * testsuite/libgomp.c++/atomic-2.C: New test.
17009 * testsuite/libgomp.c++/atomic-3.C: New test.
17010 * testsuite/libgomp.c++/atomic-4.C: New test.
17011 * testsuite/libgomp.c++/atomic-5.C: New test.
17012 * testsuite/libgomp.c++/atomic-6.C: New test.
17013 * testsuite/libgomp.c++/atomic-7.C: New test.
17014 * testsuite/libgomp.c++/atomic-8.C: New test.
17015 * testsuite/libgomp.c++/atomic-9.C: New test.
17016 * testsuite/libgomp.c++/task-8.C: New test.
17017 * testsuite/libgomp.c++/reduction-4.C: New test.
17018 * testsuite/libgomp.fortran/allocatable7.f90: New test.
17019 * testsuite/libgomp.fortran/allocatable8.f90: New test.
17020 * testsuite/libgomp.fortran/crayptr3.f90: New test.
17021 * testsuite/libgomp.fortran/omp_atomic3.f90: New test.
17022 * testsuite/libgomp.fortran/omp_atomic4.f90: New test.
17023 * testsuite/libgomp.fortran/pointer1.f90: New test.
17024 * testsuite/libgomp.fortran/pointer2.f90: New test.
17025 * testsuite/libgomp.fortran/task4.f90: New test.
17026
170272011-08-02 Tobias Burnus <burnus@net-b.de>
17028
17029 * libgomp.texi: Update OpenMP spec references to 3.1.
17030 (omp_in_final,OMP_PROC_BIND): New sections.
17031 (OMP_NUM_THREADS): Document that the value can be now a list.
17032 (GOMP_STACKSIZE,GOMP_CPU_AFFINITY): Update @ref.
17033
c01ecafc
L
170342011-08-02 H.J. Lu <hongjiu.lu@intel.com>
17035
17036 * config/linux/x86/futex.h: Check __x86_64__ instead of
17037 __LP64__.
17038
25142650
JJ
170392011-07-29 Jakub Jelinek <jakub@redhat.com>
17040
17041 PR middle-end/49897
17042 PR middle-end/49898
17043 * testsuite/libgomp.c/pr49897-1.c: New test.
17044 * testsuite/libgomp.c/pr49897-2.c: New test.
17045 * testsuite/libgomp.c/pr49898-1.c: New test.
17046 * testsuite/libgomp.c/pr49898-2.c: New test.
17047
f53d712f
L
170482011-07-28 H.J. Lu <hongjiu.lu@intel.com>
17049
17050 * testsuite/lib/libgomp.exp (libgomp_init): Add -march=i486
17051 for ia32 instead of ilp32.
17052
17053 * testsuite/libgomp.c/atomic-1.c: Require ia32 instead of ilp32.
17054 * testsuite/libgomp.c/atomic-6.c: Likewise.
17055
3689198d
SP
170562011-07-23 Sebastian Pop <sebastian.pop@amd.com>
17057
17058 * testsuite/libgomp.graphite/force-parallel-1.c: Un-xfail.
17059 * testsuite/libgomp.graphite/force-parallel-2.c: Adjust pattern.
17060
1a79cb73
RO
170612011-07-25 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
17062
17063 PR libgomp/45351
17064 * config/osf/sem.h: New file.
17065 * configure.tgt (alpha*-dec-osf*): Prepend osf to config_path.
17066
c1f51484
RO
170672011-07-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
17068
17069 PR target/49541
17070 * testsuite/lib/libgomp.exp (libgomp_init): Don't add -lgomp to
17071 ldflags.
17072
bfee0724
JJ
170732011-07-15 Jakub Jelinek <jakub@redhat.com>
17074
17075 * config/linux/wait.h (do_spin): New inline, largely copied
17076 from do_wait, just don't do futex_wait here, instead return true if
17077 it should be done.
17078 (do_wait): Implement using do_spin.
17079 * config/linux/mutex.h (gomp_mutex_lock_slow): Add an int argument
17080 to prototype.
17081 (gomp_mutex_lock): Use __sync_val_compare_and_swap instead of
17082 __sync_bool_compare_and_swap, pass the oldval to
17083 gomp_mutex_lock_slow.
17084 * config/linux/mutex.c (gomp_mutex_lock_slow): Add oldval argument.
17085 If all mutex contenders are just spinning and not sleeping, don't
17086 change state to 2 unnecessarily. Optimize the loop when state has
17087 already become 2 to use just one atomic operation per loop instead
17088 of two.
17089 * config/linux/ia64/mutex.h (gomp_mutex_lock_slow): Add an int argument
17090 to prototype.
17091 (gomp_mutex_lock): Use __sync_val_compare_and_swap instead of
17092 __sync_bool_compare_and_swap, pass the oldval to
17093 gomp_mutex_lock_slow.
17094
fb79f500
JJ
170952011-06-22 Jakub Jelinek <jakub@redhat.com>
17096
17097 PR libgomp/49490
17098 * iter.c (gomp_iter_static_next): For chunk size 0
17099 only use n ceil/ nthreads size for the first
17100 n % nthreads threads in the team instead of
17101 all threads except for the last few ones which
17102 get less work or none at all.
17103 * iter_ull.c (gomp_iter_ull_static_next): Likewise.
17104 * env.c (parse_schedule): If OMP_SCHEDULE doesn't have
17105 chunk argument, set run_sched_modifier to 0 for static
17106 resp. 1 for other kinds. If chunk argument is 0
17107 and not static, set value to 1.
17108
4577f730
JJ
171092011-05-19 Jakub Jelinek <jakub@redhat.com>
17110
ea93a47b
JJ
17111 PR c++/49043
17112 * testsuite/libgomp.c++/pr49043.C: New test.
17113
4577f730
JJ
17114 PR c++/48869
17115 * testsuite/libgomp.c++/pr48869.C: New test.
17116
e7385332
JJ
171172011-05-06 Jakub Jelinek <jakub@redhat.com>
17118
17119 PR fortran/48894
17120 * fortran.c: Include limits.h.
17121 (TO_INT): Define.
17122 (omp_set_dynamic_8_, omp_set_num_threads_8_): Use !!*set instead of
17123 *set.
17124 (omp_set_num_threads_8_, omp_set_schedule_8_,
17125 omp_set_max_active_levels_8_, omp_get_ancestor_thread_num_8_,
17126 omp_get_team_size_8_): Use TO_INT macro.
17127 * testsuite/libgomp.fortran/pr48894.f90: New test.
17128
20790697
JJ
171292011-04-13 Jakub Jelinek <jakub@redhat.com>
17130
17131 PR middle-end/48591
17132 * testsuite/libgomp.c/pr48591.c: New test.
17133
bf382f5f
RO
171342011-03-21 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
17135
17136 PR bootstrap/48135
17137 * acinclude.m4 (enable_symvers): Handle --disable-symvers.
17138 * configure: Regenerate.
17139
113a53c1
JJ
171402011-02-27 Jakub Jelinek <jakub@redhat.com>
17141
17142 PR fortran/47886
17143 * testsuite/libgomp.fortran/task3.f90: New test.
17144
0024f1af
TB
171452011-02-24 Tobias Burnus <burnus@net-b.de>
17146
17147 * libgomp.texi (GOMP_STACKSIZE): Fix @ref to OMP_STACKSIZE.
17148
21e1e594
JJ
171492011-02-23 Jakub Jelinek <jakub@redhat.com>
17150
17151 PR libgomp/47854
17152 * libgomp.texi (omp_get_wtime): Don't say time in the past
17153 must be Unix Epoch.
17154
67962076
JJ
171552011-02-18 Jakub Jelinek <jakub@redhat.com>
17156
17157 PR libgomp/47804
17158 * testsuite/libgomp.fortran/fortran.exp: Check for both
17159 libquadmath.a and libquadmath.${shlib_ext}. If neither exists,
17160 but $blddir != "", still append ${blddir}/${lang_library_path}
17161 to ld_library_path.
17162
3808007c
TB
171632011-02-16 Tobias Burnus <burnus@net-b.de>
17164
17165 PR libgomp/47758
17166 * testsuite/libgomp.fortran/fortran.exp: Check for the existence
17167 of libquadmath.a before adding its libpath to ldflags.
17168
53b4d41d
JJ
171692011-02-14 Jakub Jelinek <jakub@redhat.com>
17170
17171 PR libgomp/47731
17172 * config/linux/futex.h (futex_wait): Pass NULL as timeout argument
17173 to FUTEX_WAIT futex syscall.
17174 * config/linux/wait.h: Include <futex.h> instead of "futex.h".
17175
029c8f3e
RW
171762011-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17177
17178 * configure: Regenerate.
17179
bddd6626
BK
171802011-01-20 Benjamin Kosnik <bkoz@redhat.com>
17181
17182 PR libstdc++/36104
17183 * acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Accept gnu variants.
17184
f1d4ab26
GP
171852011-01-16 Gerald Pfeifer
17186
17187 * configure.tgt (*-*-freebsd*): Add -lpthread to XLDFLAGS.
17188
2b503136
JJ
171892010-12-14 Jakub Jelinek <jakub@redhat.com>
17190
17191 PR fortran/46874
17192 * libgomp.fortran/allocatable6.f90: New test.
17193
c0f9d583
RO
171942010-12-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
17195
17196 * acinclude.m4 (symvers_renaming): Also set if enable_symvers = no.
17197 * configure: Regenerate.
17198
7de6ba7a
DK
171992010-12-06 Dave Korn <dave.korn.cygwin@gmail.com>
17200
17201 PR target/40125
17202 PR lto/46695
17203 * configure.ac: Invoke ACX_LT_HOST_FLAGS.
17204 * Makefile.am (libgomp_la_LDFLAGS): Use lt_host_flags.
17205 * aclocal.m4: Regenerate.
17206 * configure: Regenerate.
17207 * Makefile.in: Regenerate.
17208 * testsuite/Makefile.in: Regenerate.
17209
b7516041
JJ
172102010-12-02 Jakub Jelinek <jakub@redhat.com>
17211
edaadf74
JJ
17212 PR fortran/46753
17213 * libgomp.fortran/pr46753.f90: New test.
17214
4c698cf8
JJ
17215 PR libgomp/43706
17216 * env.c (initialize_env): Default to spin count 300000
17217 instead of 20000000 if neither OMP_WAIT_POLICY nor GOMP_SPINCOUNT
17218 is specified.
17219
b7516041
JJ
17220 PR libgomp/45240
17221 * parallel.c (GOMP_parallel_end): Unlock gomp_remaining_threads_lock
17222 at the end if sync builtins aren't supported.
17223
6b43a34c
RO
172242010-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
17225
17226 * configure.tgt (mips-sgi-irix6*): Add -lpthread to XLDFLAGS.
17227
950691fa
RO
172282010-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
17229
17230 * testsuite/libgomp.fortran/vla8.f90: Use dg-timeout-factor 2.0.
17231
fb9041ea
IS
172322010-11-24 Iain Sandoe <iains@gcc.gnu.org>
17233
17234 * testsuite/libgomp.fortran/fortran.exp: Add paths for libquadmath.
17235
1ec601bf
FXC
172362010-11-16 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
17237 Tobias Burnus <burnus@net-b.de>
17238
17239 PR fortran/32049
3e348fcc 17240 * configure.ac:
1ec601bf
FXC
17241 * configure: Regenerate.
17242
d213e92e
MS
172432010-10-06 Marcus Shawcroft <marcus.shawcroft@arm.com>
17244
17245 * config/linux/futex.h: New.
17246 * config/linux/arm/mutex.h: New.
17247 * configure.tgt (arm*-*-linux*): Add config path.
17248
89d5c66f
SP
172492010-09-30 Sebastian Pop <sebastian.pop@amd.com>
17250
17251 * testsuite/libgomp.graphite/force-parallel-1.c: Adjust.
17252
87350d4a
TB
172532010-09-23 Tobias Burnus <burnus@net-b.de>
17254
17255 * libgomp.texi (omp_get_nested, omp_set_nested, omp_set_dynamic):
17256 Change Fortran datatype to LOGICAL.
17257 (omp_set_lock, omp_test_lock, omp_unset_lock, omp_set_nested_lock,
17258 omp_unset_nested_lock): Use intent(inout) instead of intent(out).
17259
75bc9e5e
RW
172602010-08-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17261
17262 * configure: Regenerate.
17263
acb5c916
JJ
172642010-07-26 Jakub Jelinek <jakub@redhat.com>
17265
17266 * libgomp.texi: Add function keyword to a couple of Fortran
17267 interfaces, use integer instead of int for Fortran.
17268
6a2ba183
AH
172692010-07-26 Aldy Hernandez <aldyh@redhat.com>
17270
17271 * libgomp.texi: Fix spelling and pasto problems throughout.
17272 Adjust prototypes to match code.
17273
df161b69
TB
172742010-07-24 Tobias Burnus <burnus@net-b.de>
17275
17276 * testsuite/libgomp.fortran/appendix-a/a.28.5.f90: Add -w to
17277 silence -fwhole-file warning.
17278
16c9d3b1
RO
172792010-07-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
17280
17281 * configure.tgt (*-*-solaris2.[56]*): Removed.
17282
6d28b933
RO
172832010-07-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
17284
17285 * acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Handle sun style.
17286 Define LIBGOMP_BUILD_VERSIONED_SHLIB_GNU,
17287 LIBGOMP_BUILD_VERSIONED_SHLIB_SUN automake conditionals.
17288 (HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT): Define unless
17289 targetting solaris2*.
17290 * configure: Regenerate.
17291 * config.h.in: Regenerate.
17292
17293 * Makefile.am [LIBGOMP_BUILD_VERSIONED_SHLIB]: Protect
17294 libgomp_version_script with LIBGOMP_BUILD_VERSIONED_SHLIB_GNU.
17295 Add libgomp_version_dep.
17296 [LIBGOMP_BUILD_VERSIONED_SHLIB_SUN]: Handle Sun symbol
17297 versioning.
17298 [!LIBGOMP_BUILD_VERSIONED_SHLIB]: Add libgomp_version_dep.
17299 (libgomp_la_DEPENDENCIES): Set to $(libgomp_version_dep).
17300 * Makefile.in: Regenerate.
17301
17302 * libgomp.h (LIBGOMP_GNU_SYMBOL_VERSIONING): Undef unless
17303 HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT.
17304 * libgomp.map (OMP_1.0): Move symbols both in OMP_1.0 and OMP_3.0
17305 to common block, protected by
17306 HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT.
17307
07a67d6a
GP
173082010-06-10 Gerald Pfeifer <gerald@pfeifer.com>
17309
17310 * libgomp.texi: Move to GFDL version 1.3. Update copyright years.
17311
dbd34b89
IS
173122010-06-09 Iain Sandoe <iains@gcc.gnu.org>
17313
17314 PR bootstrap/43170
17315 * configure: Regenerate.
17316
13917ae3
RW
173172010-05-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17318
17319 PR other/43620
17320 * configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
17321 * configure: Regenerate.
17322 * Makefile.in: Regenerate.
17323 * testsuite/Makefile.in: Regenerate.
17324
b83a701b
JJ
173252010-04-26 Jakub Jelinek <jakub@redhat.com>
17326
17327 PR c/43893
17328 * testsuite/libgomp.c/pr43893.c: New test.
17329 * testsuite/libgomp.c++/pr43893.C: New test.
17330
78db7d92
JJ
173312010-04-21 Jakub Jelinek <jakub@redhat.com>
17332
17333 PR middle-end/43570
17334 * testsuite/libgomp.fortran/vla8.f90: New test.
17335
5221d7a9
JJ
173362010-04-20 Jakub Jelinek <jakub@redhat.com>
17337
e4ba7a60
JJ
17338 PR libgomp/43706
17339 * config/linux/affinity.c (gomp_init_affinity): Decrease
17340 gomp_available_cpus if affinity mask confines the process to fewer
17341 CPUs.
17342 * config/linux/proc.c (get_num_procs): If gomp_cpu_affinity is
17343 non-NULL, just return gomp_available_cpus.
17344
5221d7a9
JJ
17345 PR libgomp/43569
17346 * sections.c (gomp_sections_init): Initialize ws->mode.
17347
289a9f86
UB
173482010-04-14 Uros Bizjak <ubizjak@gmail.com>
17349
17350 * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Remove set but
17351 not unused bar variable.
17352 * configure: Regenerate.
17353
4d9e8446
RW
173542010-04-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17355
17356 * Makefile.in: Regenerate.
17357 * aclocal.m4: Regenerate.
17358 * testsuite/Makefile.in: Regenerate.
17359
80f046cc
JJ
173602010-03-22 Jakub Jelinek <jakub@redhat.com>
17361
17362 PR libgomp/42942
17363 * env.c (parse_unsigned_long): Add ALLOW_ZERO argument.
17364 (initialize_env): Adjust callers.
17365 (omp_set_max_active_levels): Set gomp_max_active_levels_var even
17366 when the argument is 0.
17367
17368 * testsuite/libgomp.c/pr42942.c: New test.
17369
b58543c3
SP
173702010-03-08 Tobias Grosser <grosser@fim.uni-passau.de>
17371
17372 PR middle-end/42644
17373 PR middle-end/42130
17374 * testsuite/libgomp.graphite/force-parallel-1.c: Adjust.
17375 * testsuite/libgomp.graphite/force-parallel-2.c: Adjust.
17376
41d1138f
RO
173772010-01-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
17378
17379 * testsuite/libgomp.c++/task-1.C: Renamed err to e.
17380 * testsuite/libgomp.c++/task-6.C: Likewise.
17381
6684eb28
SE
173822010-01-28 Steve Ellcey <sje@cup.hp.com>
17383
17384 * configure.tgt (*-*-hpux*): Add -frandom-seed flag.
17385
2122aa97
PB
173862010-01-26 Paolo Bonzini <bonzini@gnu.org>
17387
17388 * configure.ac: Test for executability of _the first word_ of GFORTRAN.
17389 * configure: Regenerate.
17390
057dd91d
JJ
173912010-01-26 Jakub Jelinek <jakub@redhat.com>
17392
17393 PR fortran/42866
17394 * testsuite/libgomp.fortran/allocatable5.f90: New test.
17395
d0709b6a
PB
173962010-01-20 Paolo Bonzini <bonzini@gnu.org>
17397
17398 * configure.ac: Test for executability of GFORTRAN.
17399 * configure: Regenerate.
17400
b9497ab5
RO
174012010-01-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
17402
17403 * configure: Regenerate.
17404
45de5648
L
174052010-01-04 H.J. Lu <hongjiu.lu@intel.com>
17406
17407 PR libgomp/42602
17408 * libgomp.fortran/recursion1.f90 (sub): Make 's' atomic.
17409
e74003a1
RG
174102010-01-03 Richard Guenther <rguenther@suse.de>
17411
17412 * testsuite/libgomp.fortran/recursion1.f90: New testcase.
17413
1b3abda8
SP
174142009-12-23 Sebastian Pop <sebpop@gmail.com>
17415
17416 * testsuite/libgomp.graphite/pr4118.c: New.
17417
e19977d3
IS
174182009-12-22 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
17419
17420 * testsuite/libgomp.fortran/crayptr2.f90: Remove forced static linkage
17421 for darwin, protect the test with require-effective-target tls_runtime.
17422 * testsuite/libgomp.fortran/pr32550.f90: Ditto.
17423
1d32a772
IS
174242009-12-22 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
17425
17426 PR target/41605
17427 * testsuite/lib/libgomp.exp: Provide -B options to allow for
17428 link spec %s substitutions for static libraries.
17429
deb109b2
JH
174302009-12-18 Jack Howarth <howarth@bromo.med.uc.edu>
17431
17432 PR testsuite/42135
17433 * libgomp.graphite/force-parallel-2.c: Reduce array size.
17434
43e02a8a
RW
174352009-12-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17436
17437 * Makefile.in: Regenerate.
17438 * configure: Regenerate.
17439 * testsuite/Makefile.in: Regenerate.
17440
17f35e23
DK
174412009-11-30 Dave Korn <dave.korn.cygwin@gmail.com>
17442
17443 * testsuite/lib/libgomp.exp (libgomp_init): Add host-dependent
17444 settings for LC_ALL and LANG.
17445
281e33e1
JJ
174462009-11-25 Jakub Jelinek <jakub@redhat.com>
17447
17448 PR fortran/42162
17449 * testsuite/libgomp.fortran/pr42162.f90: New test.
17450
2b32c27d
JJ
174512009-11-13 Jakub Jelinek <jakub@redhat.com>
17452
17453 PR middle-end/42029
281e33e1 17454 * testsuite/libgomp.c/pr42029.c: New test.
2b32c27d 17455
89c74f4a
JJ
174562009-10-26 Jakub Jelinek <jakub@redhat.com>
17457
17458 * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Avoid using too many
17459 *s. Accept ld version without text in ()s.
17460 * configure: Regenerated.
17461
7e06c3d6
EB
174622009-10-22 Razya Ladelsky <razya@il.ibm.com>
17463
17464 * testsuite/libgomp.graphite/force-parallel-2.c: Adjust scan.
17465
0046b1a7
RW
174662009-10-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17467
17468 PR libgomp/41418
17469 * configure.ac: Set FC to "no" if $GFORTRAN starts with "no"
17470 or a hyphen (happens with fortran language disabled).
17471 * configure: Regenerate.
17472
c82852f7
RW
174732009-09-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17474
17475 * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Avoid 'head',
17476 use sed script portable to Solaris /bin/sed for extracting ld
17477 version.
17478 * configure: Regenerate.
17479
98f3eb1f
AM
174802009-09-17 Alexander Monakov <amonakov@ispras.ru>
17481
17482 * testsuite/libgomp.graphite/bounds.c: New test.
17483
878f62e5
RW
174842009-09-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17485
17486 * Makefile.am (libgomp_la_LINK): New.
17487 * Makefile.in: Regenerate.
17488
df58e648
RW
174892009-08-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17490
17491 * configure.ac (AC_PREREQ): Bump to 2.64.
17492
5213506e
RW
174932009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17494
70fa0efa
RW
17495 * Makefile.am (install-html, install-pdf): Remove.
17496 * Makefile.in: Regenerate.
17497
5213506e
RW
17498 * Makefile.in: Regenerate.
17499 * aclocal.m4: Regenerate.
17500 * config.h.in: Regenerate.
17501 * configure: Regenerate.
17502 * testsuite/Makefile.in: Regenerate.
17503
84fec8a5
RW
175042009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17505
17506 * Makefile.am (LINK): Add $(AM_LIBTOOLFLAGS) and $(LIBTOOLFLAGS).
17507 * Makefile.in: Regenerate.
17508
197c68cc
DK
175092009-08-20 Dave Korn <dave.korn.cygwin@gmail.com>
17510
17511 * Makefile.am (libgomp_la_LDFLAGS): Add -bindir flag.
17512 * Makefile.in: Regenerate.
17513
693d54f2
TB
175142009-08-19 Tobias Burnus <burnus@net-b.de>
17515
17516 PR fortran/41102
17517 omp_lib.h.in: Fix -std=f95 errors.
17518
8cac884c
DE
175192009-08-14 David Edelsohn <edelsohn@gnu.org>
17520
17521 * testsuite/libgomp.graphite: Move from gcc.dg/graphite.
17522 * testsuite/libgomp.graphite/graphite_autopar.exp: Delete.
17523 * testsuite/libgomp.graphite/graphite.exp: New.
17524
78729ee2
AT
175252009-08-05 Andreas Tobler <a.tobler@schweiz.org>
17526
17527 * testsuite/libgomp.fortran/fortran.exp: Add flags in case of shared
17528 only build.
17529
b13b7f39
DD
175302009-08-04 David Daney <ddaney@caviumnetworks.com>
17531
17532 * config/linux/mutex.h (gomp_mutex_unlock): Add comment about
17533 needed memory barrier semantics.
17534 * config/linux/mips/mutex.h: New file.
17535
1b3b24c2
RW
175362009-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17537
17538 * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.
17539
396b7fa4
JM
175402009-07-16 Joseph Myers <joseph@codesourcery.com>
17541
17542 * configure: Regenerate.
17543
33cde516
RS
175442009-07-11 Richard Sandiford <rdsandiford@googlemail.com>
17545
17546 PR testsuite/40699
17547 PR testsuite/40707
17548 PR testsuite/40709
17549 * testsuite/lib/libgomp.exp: Revert 2009-07-02 and 2009-06-30 commits.
17550 * testsuite/libgomp.c/c.exp, testsuite/libgomp.c++/c++.exp,
17551 testsuite/libgomp.fortran/fortran.exp: Revert 2009-06-30 commits.
17552
bc21bfa5
RS
175532009-07-02 Richard Sandiford <r.sandiford@uk.ibm.com>
17554
17555 * testsuite/lib/libgomp.exp (libgomp_init): Use the ALWAYS_CFLAGS
17556 options when choosing a multilib.
17557
b30bfd40
RS
175582009-06-30 Richard Sandiford <r.sandiford@uk.ibm.com>
17559
17560 * testsuite/lib/libgomp.exp (libgomp_init): Don't add "." to
17561 ld_library_path. Use add_path. Add just find_libgcc_s to
17562 ld_library_path, not every libgcc multilib directory.
17563 * testsuite/libgomp.c/c.exp (ld_library_path): Don't call
17564 gcc-set-multilib-library-path; rely on $always_ld_library_path instead.
17565 * testsuite/libgomp.c++/c++.exp (ld_library_path): Likewise.
17566 Use add_path.
17567 * testsuite/libgomp.fortran/fortran.exp (ld_library_path): Likewise.
17568
479c15c2
NF
175692009-06-09 Nathan Froyd <froydnj@codesourcery.com>
17570
17571 * Makefile.am (LTLDFLAGS): Define.
17572 (LINK): Define.
17573 * Makefile.in: Regenerate.
17574
667e6f89
JB
175752009-05-27 Janne Blomqvist <jb@gcc.gnu.org>
17576
17577 PR fortran/39718
17578 * testsuite/libgomp.fortran/fortran.exp: Don't link with
17579 libgfortranbegin, check existence of libgfortran.a instead of
17580 libgfortranbegin.a.
17581
6dea8e99
JJ
175822009-05-20 Jakub Jelinek <jakub@redhat.com>
17583
17584 PR libgomp/40174
17585 * team.c (gomp_thread_start): Destroy thr->release semaphore.
17586 (gomp_free_pool_helper): Likewise.
17587
34d01e1d
VL
175882009-04-20 Vasilis Liaskovitis <vliaskov@gmail.com>
17589 Jakub Jelinek <jakub@redhat.com>
17590
17591 PR fortran/35423
17592 * testsuite/libgomp.fortran/workshare2.f90: New test.
17593
748086b7
JJ
175942009-04-09 Nick Clifton <nickc@redhat.com>
17595
17596 * iter.c: Change copyright header to refer to version 3 of the
17597 GNU General Public License with version 3.1 of the GCC Runtime
17598 Library Exception and to point readers at the COPYING3 and
17599 COPYING3.RUNTIME files and the FSF's license web page.
17600 * alloc.c: Likewise.
17601 * barrier.c: Likewise.
17602 * config/bsd/proc.c: Likewise.
17603 * config/linux/affinity.c: Likewise.
17604 * config/linux/alpha/futex.h: Likewise.
17605 * config/linux/bar.c: Likewise.
17606 * config/linux/bar.h: Likewise.
17607 * config/linux/ia64/futex.h: Likewise.
17608 * config/linux/ia64/mutex.h: Likewise.
17609 * config/linux/lock.c: Likewise.
17610 * config/linux/mips/futex.h: Likewise.
17611 * config/linux/mutex.c: Likewise.
17612 * config/linux/mutex.h: Likewise.
17613 * config/linux/powerpc/futex.h: Likewise.
17614 * config/linux/proc.c: Likewise.
17615 * config/linux/ptrlock.c: Likewise.
17616 * config/linux/ptrlock.h: Likewise.
17617 * config/linux/s390/futex.h: Likewise.
17618 * config/linux/sem.c: Likewise.
17619 * config/linux/sem.h: Likewise.
17620 * config/linux/sparc/futex.h: Likewise.
17621 * config/linux/wait.h: Likewise.
17622 * config/linux/x86/futex.h: Likewise.
17623 * config/mingw32/proc.c: Likewise.
17624 * config/mingw32/time.c: Likewise.
17625 * config/posix/affinity.c: Likewise.
17626 * config/posix/bar.c: Likewise.
17627 * config/posix/bar.h: Likewise.
17628 * config/posix/lock.c: Likewise.
17629 * config/posix/mutex.h: Likewise.
17630 * config/posix/proc.c: Likewise.
17631 * config/posix/ptrlock.h: Likewise.
17632 * config/posix/sem.c: Likewise.
17633 * config/posix/sem.h: Likewise.
17634 * config/posix/time.c: Likewise.
17635 * config/posix95/lock.c: Likewise.
17636 * critical.c: Likewise.
17637 * env.c: Likewise.
17638 * error.c: Likewise.
17639 * fortran.c: Likewise.
17640 * iter_ull.c: Likewise.
17641 * libgomp.h: Likewise.
17642 * libgomp_f.h.in: Likewise.
17643 * libgomp_g.h: Likewise.
17644 * loop.c: Likewise.
17645 * loop_ull.c: Likewise.
17646 * omp.h.in: Likewise.
17647 * omp_lib.f90.in: Likewise.
17648 * omp_lib.h.in: Likewise.
17649 * ordered.c: Likewise.
17650 * parallel.c: Likewise.
17651 * sections.c: Likewise.
17652 * single.c: Likewise.
17653 * task.c: Likewise.
17654 * team.c: Likewise.
17655 * work.c: Likewise.
17656
176572009-04-09 Jakub Jelinek <jakub@redhat.com>
17658
17659 * testsuite/config/default.exp: Change copyright header to refer to
17660 version 3 of the GNU General Public License and to point readers
17661 at the COPYING3 file and the FSF's license web page.
17662
4f0ae266
JJ
176632009-04-08 Jakub Jelinek <jakub@redhat.com>
17664
17665 PR middle-end/39573
17666 * libgomp.c++/pr39573.C: New test.
17667
03742a9b
JJ
176682009-04-01 Jakub Jelinek <jakub@redhat.com>
17669
17670 PR other/39591
17671 * testsuite/libgomp.c/pr39591-1.c: New test.
17672 * testsuite/libgomp.c/pr39591-2.c: New test.
17673 * testsuite/libgomp.c/pr39591-3.c: New test.
17674
e50ea10b
UB
176752009-03-25 Uros Bizjak <ubizjak@gmail.com>
17676
17677 * testsuite/libgomp.c/atomic-5.c: Cleanup cpuid usage.
17678 * testsuite/libgomp.c/atomic-6.c: Ditto.
17679
c5cdb03f
JJ
176802009-03-23 Jakub Jelinek <jakub@redhat.com>
17681
17682 PR c/39495
17683 * testsuite/libgomp.c/loop-12.c: New test.
17684 * testsuite/libgomp.c/loop-11.c: New test.
17685 * testsuite/libgomp.c++/loop-11.C: New test.
17686 * testsuite/libgomp.c++/loop-12.C: New test.
17687 * testsuite/libgomp.c++/for-8.C: New test.
17688
7a9d3fe8
RW
176892009-03-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17690
17691 * configure: Regenerate.
17692
3ad6b266
JJ
176932009-02-11 Jakub Jelinek <jakub@redhat.com>
17694
17695 PR middle-end/39154
17696 * testsuite/libgomp.c/pr39154.c: New test.
17697
b39dea08
ILT
176982009-01-30 Ian Lance Taylor <iant@google.com>
17699
17700 * acinclude.m4 (LIBCOMP_CHECK_LINKER_FEATURES): Set
17701 libgomp_ld_is_gold. Get gold version number.
17702 (LIBGOMP_ENABLE_SYMVERS): Gold always support symbol versioning.
17703 * configure: Rebuild.
17704
72c66596
IS
177052009-01-19 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
17706
e50ea10b 17707 * testsuite/lib/libgomp.exp: Add -B option for targets that
72c66596
IS
17708 use libgfortran.a%s in their specs.
17709
876080ff
JJ
177102009-01-07 Jakub Jelinek <jakub@redhat.com>
17711
17712 PR libgomp/38086
17713 * acinclude.m4 (HAVE_AS_SYMVER_DIRECTIVE): New check.
17714 * libgomp.h (LIBGOMP_GNU_SYMBOL_VERSIONING): Undefine if
17715 HAVE_AS_SYMVER_DIRECTIVE is not defined.
17716 * configure: Regenerated.
17717 * config.h.in: Likewise.
17718
e4ebaef3
JJ
177192008-12-28 Jakub Jelinek <jakub@redhat.com>
17720
17721 PR c++/38650
17722 * testsuite/libgomp.c/pr38650.c: New test.
17723 * testsuite/libgomp.c++/pr38650.C: New test.
17724
382017a6
JJ
177252008-12-27 Jakub Jelinek <jakub@redhat.com>
17726
17727 * testsuite/libgomp.c/collapse-1.c (main): Add private(k) clause.
17728
79644b27
UB
177292008-12-26 Uros Bizjak <ubizjak@gmail.com>
17730
17731 * testsuite/libgomp.c/atomic-6.c: Add -mieee for alpha*-*-* targets.
17732
baafc534
RW
177332008-12-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17734
17735 * configure: Regenerate.
17736
d9c194cb
JJ
177372008-12-08 Jakub Jelinek <jakub@redhat.com>
17738
17739 PR middle-end/36802
17740 * testsuite/libgomp.c/pr36802-1.c: New test.
17741 * testsuite/libgomp.c/pr36802-2.c: New test.
17742 * testsuite/libgomp.c/pr36802-3.c: New test.
17743
86a182bf
JJ
177442008-12-01 Janis Johnson <janis187@us.ibm.com>
17745
17746 PR libgomp/38270
17747 * config/linux/powerpc/mutex.h: New.
17748
956adfaf
JJ
177492008-12-01 Jakub Jelinek <jakub@redhat.com>
17750
a2d4cdc9
JJ
17751 PR c++/38257
17752 * testsuite/libgomp.c++/for-7.C: New test.
17753
956adfaf
JJ
17754 PR c++/38348
17755 * testsuite/libgomp.c++/for-6.C: New test.
17756
d4038ca2
JJ
177572008-11-26 Janis Johnson <janis187@us.ibm.com>
17758
17759 PR testsuite/28870
17760 * testsuite/lib/libgomp.exp: Include new timeout library files.
17761 (libgomp_target_compile): Set timeout value from new proc.
17762
8b159eea
SE
177632008-11-13 Steve Ellcey <sje@cup.hp.com>
17764
17765 PR libgomp/37938
17766 * config/linux/ia64/mutex.h: New.
17767
5c6ed53a
TB
177682008-11-04 Tobias Burnus <burnus@net-b.de>
17769
17770 PR libgomp/37935
17771 * libgomp.texi (Runtime library routines, environment variables):
17772 Update for OpenMP version 3.0.
17773
6b4a97ed
PG
177742008-09-26 Peter O'Gorman <pogma@thewrittenword.com>
17775 Steve Ellcey <sje@cup.hp.com>
17776
17777 * configure: Regenerate for new libtool.
17778 * Makefile.in: Ditto.
17779 * testsuite/Makefile.in: Ditto.
17780
e2b34106
JJ
177812008-09-19 Jakub Jelinek <jakub@redhat.com>
17782 Andreas Tobler <a.tobler@schweiz.org>
17783
17784 * config/bsd/proc.c: New file.
8c3b3600 17785 * configure.tgt (*-*-darwin*): Use config_path "bsd posix".
e2b34106
JJ
17786 * configure.ac: Check for header <sys/sysctl.h>
17787 * configure: Regenerate.
17788 * config.h.in: Likewise.
17789
3606b8bf
JJ
177902008-09-05 Janis Johnson <janis187@us.ibm.com>
17791
17792 * testsuite/ligbomp.c/c.exp: Unset lang_test_file only if it exists.
17793
6528b88d
AL
177942008-08-31 Aaron W. LaFramboise <aaronavay62@aaronwl.com>
17795
17796 * Makefile.am (libgomp_la_LDFLAGS): Add -no-undefined.
17797 * Makefile.in: Regenerated.
17798 * testsuite/Makefile.in: Regenerated.
17799
d9b14b12 178002008-08-21 Nathan Froyd <froydnj@codesourcery.com>
8c9570df 17801
a16b68bb 17802 * testsuite/lib/libgomp.exp (libgomp_init): Only set things that
8c9570df
NF
17803 depend on blddir if blddir exists.
17804 (libgomp_target_compile): Likewise.
17805 * testsuite/libgomp.c++/c++.exp: Likewise.
17806 * testsuite/libgomp.fortran/fortran.exp: Likewise.
17807
70b1e376
RW
178082008-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17809
17810 * libgomp.texi: Update to GFDL 1.2. Update copyright years.
17811 Do not list GPL as Invariant Section.
17812
318e8c3f
IG
178132008-07-28 Ilie Garbacea <ilie@mips.com>
17814 Chao-ying Fu <fu@mips.com>
17815
17816 * configure.tgt: Enable futex for MIPS.
17817 * config/linux/mips/futex.h: New file.
17818
4db72361
JJ
178192008-07-16 Jakub Jelinek <jakub@redhat.com>
17820
17821 * team.c (gomp_team_end): Free team immediately if it has
17822 just one thread.
17823
87bd23b8
DE
178242008-07-08 David Edelsohn <edelsohn@gnu.org>
17825
17826 * testsuite/libgomp.c++/c++.exp: Append multilib library path.
17827 * testsuite/libgomp.fortran/fortran.exp: Same.
17828 * testsuite/libgomp.c/c.exp: Same.
17829 * testsuite/lib/libgomp.exp: Append AIX libgcc pthread multilib
17830 directory to library path first.
17831
323ff903
KW
178322008-06-29 Krister Walfridsson <krister.walfridsson@gmail.com>
17833
17834 * env.c (parse_stacksize): Add cast to avoid warning.
17835 (parse_spincount): Likewise.
17836
b357f682
JJ
178372008-06-27 Jakub Jelinek <jakub@redhat.com>
17838
ca2b1311
JJ
17839 * testsuite/libgomp.c/loop-10.c: New test.
17840 * libgomp.c/loop-3.c (main): Add lastprivate clause.
17841 * libgomp.c++/loop-6.C (main): Likewise.
17842
b357f682
JJ
17843 PR debug/36617
17844 * testsuite/libgomp.c/debug-1.c: New test.
17845
09a46078
JJ
178462008-06-19 Jakub Jelinek <jakub@redhat.com>
17847
17848 * testsuite/libgomp.c/nqueens-1.c: New test.
17849
2368a460
JJ
17850 PR c++/36523
17851 * testsuite/libgomp.c++/task-7.C: New function.
17852
18c04407
RW
178532008-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17854
17855 * configure: Regenerate.
17856
9c4e59e0
JDA
178572008-06-15 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
17858
17859 * env.c (initialize_env): Always initialize gomp_remaining_threads_lock
17860 mutex when HAVE_SYNC_BUILTINS isn't defined.
17861
6ccde948
RW
178622008-06-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17863
17864 * libgomp.texi (omp_test_lock): Fix typo.
17865
b896f9fd
TB
178662008-06-12 Tobias Burnus <burnus@net-b.de>
17867
17868 * omp_lib.f90.in: Add "implicit none".
17869
c34938a8
JJ
178702008-06-12 Jakub Jelinek <jakub@redhat.com>
17871
17872 PR middle-end/36506
17873 * testsuite/libgomp.c/reduction-5.c: New test.
17874
976e44e3
JJ
178752008-06-11 Jakub Jelinek <jakub@redhat.com>
17876
5f836cbb
JJ
17877 * libgomp.h (struct gomp_task): Add in_tied_task field.
17878 * task.c (gomp_init_task): Initialize it.
17879 (GOMP_task): Likewise. Call gomp_team_barrier_set_task_pending
17880 unconditionally. Don't call gomp_team_barrier_wake if
17881 current task is implicit or if(0) from implicit and number of
17882 running tasks is equal to nthreads - 1.
17883
01501fc8
JJ
17884 PR libgomp/36471
17885 * omp_lib.f90.in (omp_get_ancestor_thread_num_8,
17886 omp_get_team_size_8): Fix pastos.
17887
976e44e3
JJ
17888 PR libgomp/36469
17889 * configure.ac: Add AC_CHECK_FUNCS (strtoull).
17890 * configure: Regenerated.
17891 * config.h.in: Regenerated.
17892 * env.c (strtoull): Define to strtoul if HAVE_STRTOULL is not
17893 defined.
17894
e919209b
AT
178952008-06-06 Andreas Tobler <a.tobler@schweiz.org>
17896
17897 PR bootstrap/36452
17898 * loop_ull.c (GOMP_loop_ull_static_start): Adjust API.
17899 (GOMP_loop_ull_dynamic_start): Likewise.
17900 (GOMP_loop_ull_guided_start): Likewise.
17901 (GOMP_loop_ull_ordered_static_start): Likewise.
17902 (GOMP_loop_ull_ordered_dynamic_start): Likewise.
17903 (GOMP_loop_ull_ordered_guided_start): Likewise.
17904
a68ab351
JJ
179052008-06-06 Jakub Jelinek <jakub@redhat.com>
17906 Richard Henderson <rth@redhat.com>
17907 Ulrich Drepper <drepper@redhat.com>
17908 Jakob Blomer <jakob.blomer@ira.uka.de>
17909
17910 * configure.ac (LIBGOMP_GNU_SYMBOL_VERSIONING): New AC_DEFINE.
17911 Substitute also OMP_*LOCK_25*.
17912 * configure: Regenerated.
17913 * config.h.in: Regenerated.
17914 * Makefile.am (libgomp_la_SOURCES): Add loop_ull.c, iter_ull.c,
17915 ptrlock.c and task.c.
17916 * Makefile.in: Regenerated.
17917 * testsuite/Makefile.in: Regenerated.
17918 * task.c: New file.
17919 * loop_ull.c: New file.
17920 * iter_ull.c: New file.
17921 * libgomp.h: Include ptrlock.h.
17922 (enum gomp_task_kind): New type.
17923 (struct gomp_team): Add task_lock, task_queue, task_count,
17924 task_running_count, single_count fields. Add
17925 work_share_list_free_lock ifndef HAVE_SYNC_BUILTINS.
17926 Remove work_share_lock, generation_mask,
17927 oldest_live_gen, num_live_gen and init_work_shares fields, add
17928 work work_share_list_alloc, work_share_list_free and work_share_chunk
17929 fields. Change work_shares from pointer to pointers into an array.
17930 Change ordered_release field into gomp_sem_t ** from flexible array
17931 member. Add implicit_task and initial_work_shares fields.
17932 Move close to the end of the struct.
17933 (struct gomp_team_state): Add single_count, last_work_share,
17934 active_level and level fields, remove work_share_generation.
17935 (gomp_barrier_handle_tasks): New prototype.
17936 (gomp_finish_task): New inline function.
17937 (struct gomp_work_share): Move chunk_size, end, incr into
17938 transparent union/struct, add chunk_size_ull, end_ll, incr_ll and
17939 next_ll fields. Reshuffle fields. Add next_alloc,
17940 next_ws, next_free and inline_ordered_team_ids fields, change
17941 ordered_team_ids into pointer from flexible array member.
17942 Add mode field. Put lock and next into a different cache line
17943 from most of the write-once fields.
17944 (gomp_iter_ull_static_next, gomp_iter_ull_dynamic_next_locked,
17945 gomp_iter_ull_guided_next_locked, gomp_iter_ull_dynamic_next,
17946 gomp_iter_ull_guided_next): New prototypes.
17947 (gomp_new_icv): New prototype.
17948 (struct gomp_thread): Add thread_pool and task fields.
17949 (struct gomp_thread_pool): New type.
17950 (gomp_new_team): New prototype.
17951 (gomp_team_start): Change type of last argument.
17952 (gomp_new_work_share): Removed.
17953 (gomp_init_work_share, gomp_fini_work_share): New prototypes.
17954 (gomp_work_share_init_done): New static inline.
17955 (gomp_throttled_spin_count_var, gomp_available_cpus,
17956 gomp_managed_threads): New extern decls.
17957 (gomp_init_task): New prototype.
17958 (gomp_spin_count_var): New extern var decl.
17959 (LIBGOMP_GNU_SYMBOL_VERSIONING): Undef if no visibility
17960 or no alias support, or if not PIC.
17961 (gomp_init_lock_30, gomp_destroy_lock_30, gomp_set_lock_30,
17962 gomp_unset_lock_30, gomp_test_lock_30, gomp_init_nest_lock_30,
17963 gomp_destroy_nest_lock_30, gomp_set_nest_lock_30,
17964 gomp_unset_nest_lock_30, gomp_test_nest_lock_30, gomp_init_lock_25,
17965 gomp_destroy_lock_25, gomp_set_lock_25, gomp_unset_lock_25,
17966 gomp_test_lock_25, gomp_init_nest_lock_25, gomp_destroy_nest_lock_25,
17967 gomp_set_nest_lock_25, gomp_unset_nest_lock_25,
17968 gomp_test_nest_lock_25): New prototypes.
17969 (omp_lock_symver, strong_alias): Define.
17970 (gomp_remaining_threads_count, gomp_remaining_threads_lock): New
17971 decls.
17972 (gomp_end_task): New.
17973 (struct gomp_task_icv, gomp_global_icv): New.
17974 (gomp_thread_limit_var, gomp_max_active_levels_var): New.
17975 (struct gomp_task): New.
17976 (gomp_nthreads_var, gomp_dyn_var, gomp_nest_var,
17977 gomp_run_sched_var, gomp_run_sched_chunk): Remove.
17978 (gomp_icv): New.
17979 (gomp_schedule_type): Reorder enum to match
17980 omp_sched_t.
17981 * team.c (struct gomp_thread_start_data): Add thread_pool and task
17982 fields.
17983 (gomp_thread_start): Add gomp_team_barrier_wait call.
17984 For non-nested case remove clearing of docked thread thr fields.
17985 Use pool fields instead of global gomp_* variables. Use
17986 gomp_barrier_wait_last when needed. Initialize ts.active_level.
17987 Create tasks for each member thread.
17988 (free_team): Only destroy team barrier, task_lock here and free it.
17989 (gomp_free_thread): Free last_team if non-NULL.
17990 (gomp_team_end): Call gomp_team_barrier_wait instead of
17991 gomp_barrier_wait. For nested case call one extra
17992 gomp_barrier_wait. Move here some destruction from free_team.
17993 Call free_team on pool->last_team if any, rather than freeing
17994 current team. Destroy work_share_list_free_lock ifndef
17995 HAVE_SYNC_BUILTINS.
17996 (gomp_new_icv): New function.
17997 (gomp_threads, gomp_threads_size, gomp_threads_used,
17998 gomp_threads_dock): Removed.
17999 (gomp_thread_destructor): New variable.
18000 (gomp_new_thread_pool, gomp_free_pool_helper, gomp_free_thread): New
18001 functions.
18002 (gomp_team_start): Create new pool if current thread doesn't have
3e348fcc 18003 one. Use pool fields instead of global gomp_* variables.
a68ab351
JJ
18004 Initialize thread_pool field for new threads. Clear single_count.
18005 Change last argument from ws to team, don't create
18006 new team, set ts.work_share to &team->work_shares[0] and clear
18007 ts.last_work_share. Don't clear ts.work_share_generation.
18008 If number of threads changed, adjust atomically gomp_managed_threads.
18009 Use gomp_init_task instead of gomp_new_task,
18010 set thr->task to the corresponding implicit_task array entry.
18011 Create tasks for each member thread. Initialize ts.level.
18012 (initialize_team): Call pthread_key_create on
18013 gomp_thread_destructor.
18014 (team_destructor): New function.
18015 (new_team): Removed.
18016 (gomp_new_team): New function.
18017 (free_team): Free gomp_work_share blocks chained through next_alloc,
18018 instead of freeing work_shares and destroying work_share_lock.
18019 (gomp_team_end): Call gomp_fini_work_share. If number of threads
18020 changed, adjust atomically gomp_managed_threads. Use gomp_end_task.
18021 * barrier.c (GOMP_barrier): Call gomp_team_barrier_wait instead
18022 of gomp_barrier_wait.
18023 * single.c (GOMP_single_copy_start): Call gomp_team_barrier_wait
18024 instead of gomp_barrier_wait. Call gomp_work_share_init_done
18025 if gomp_work_share_start returned true. Don't unlock ws->lock.
18026 (GOMP_single_copy_end): Call gomp_team_barrier_wait instead
18027 of gomp_barrier_wait.
18028 (GOMP_single_start): Rewritten if HAVE_SYNC_BUILTINS. Call
18029 gomp_work_share_init_done if gomp_work_share_start returned true.
18030 Don't unlock ws->lock.
18031 * work.c: Include stddef.h.
18032 (free_work_share): Use work_share_list_free_lock instead
18033 of atomic chaining ifndef HAVE_SYNC_BUILTINS. Add team argument.
18034 Call gomp_fini_work_share and then either free ws if orphaned, or
18035 put it into work_share_list_free list of the current team.
18036 (alloc_work_share, gomp_init_work_share, gomp_fini_work_share): New
18037 functions.
18038 (gomp_work_share_start, gomp_work_share_end,
18039 gomp_work_share_end_nowait): Rewritten.
18040 * omp_lib.f90.in Change some tabs to spaces to prevent warnings.
18041 (openmp_version): Set to 200805.
18042 (omp_sched_kind, omp_sched_static, omp_sched_dynamic,
18043 omp_sched_guided, omp_sched_auto): New parameters.
18044 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
18045 omp_set_max_active_levels, omp_get_max_active_levels,
18046 omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
18047 omp_get_active_level): New interfaces.
18048 * omp_lib.h.in (openmp_version): Set to 200805.
18049 (omp_sched_kind, omp_sched_static, omp_sched_dynamic,
18050 omp_sched_guided, omp_sched_auto): New parameters.
18051 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
18052 omp_set_max_active_levels, omp_get_max_active_levels,
18053 omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
18054 omp_get_active_level): New externals.
18055 * loop.c: Include limits.h.
18056 (GOMP_loop_runtime_next, GOMP_loop_ordered_runtime_next): Handle
18057 GFS_AUTO.
18058 (GOMP_loop_runtime_start, GOMP_loop_ordered_runtime_start):
18059 Likewise. Use gomp_icv.
18060 (gomp_loop_static_start, gomp_loop_dynamic_start): Clear
18061 ts.static_trip here.
18062 (gomp_loop_static_start, gomp_loop_ordered_static_start): Call
18063 gomp_work_share_init_done after gomp_loop_init. Don't unlock ws->lock.
18064 (gomp_loop_dynamic_start, gomp_loop_guided_start): Call
18065 gomp_work_share_init_done after gomp_loop_init. If HAVE_SYNC_BUILTINS,
18066 don't unlock ws->lock, otherwise lock it.
18067 (gomp_loop_ordered_dynamic_start, gomp_loop_ordered_guided_start): Call
18068 gomp_work_share_init_done after gomp_loop_init. Lock ws->lock.
18069 (gomp_parallel_loop_start): Call gomp_new_team instead of
18070 gomp_new_work_share. Call gomp_loop_init on &team->work_shares[0].
18071 Adjust gomp_team_start caller. Pass 0 as second argument to
18072 gomp_resolve_num_threads.
18073 (gomp_loop_init): For GFS_DYNAMIC, multiply ws->chunk_size by incr.
18074 If adding ws->chunk_size nthreads + 1 times after end won't
18075 overflow, set ws->mode to 1.
18076 * libgomp_g.h (GOMP_loop_ull_static_start, GOMP_loop_ull_dynamic_start,
18077 GOMP_loop_ull_guided_start, GOMP_loop_ull_runtime_start,
18078 GOMP_loop_ull_ordered_static_start,
18079 GOMP_loop_ull_ordered_dynamic_start,
18080 GOMP_loop_ull_ordered_guided_start,
18081 GOMP_loop_ull_ordered_runtime_start, GOMP_loop_ull_static_next,
18082 GOMP_loop_ull_dynamic_next, GOMP_loop_ull_guided_next,
18083 GOMP_loop_ull_runtime_next, GOMP_loop_ull_ordered_static_next,
18084 GOMP_loop_ull_ordered_dynamic_next, GOMP_loop_ull_ordered_guided_next,
18085 GOMP_loop_ull_ordered_runtime_next, GOMP_task, GOMP_taskwait): New
18086 prototypes.
18087 * libgomp.map: Export lock routines also @@OMP_2.0.
18088 (GOMP_loop_ordered_dynamic_first,
18089 GOMP_loop_ordered_guided_first, GOMP_loop_ordered_runtime_first,
18090 GOMP_loop_ordered_static_first): Remove.
18091 (GOMP_loop_ull_dynamic_next, GOMP_loop_ull_dynamic_start,
18092 GOMP_loop_ull_guided_next, GOMP_loop_ull_guided_start,
18093 GOMP_loop_ull_ordered_dynamic_next,
18094 GOMP_loop_ull_ordered_dynamic_start,
18095 GOMP_loop_ull_ordered_guided_next,
18096 GOMP_loop_ull_ordered_guided_start,
18097 GOMP_loop_ull_ordered_runtime_next,
18098 GOMP_loop_ull_ordered_runtime_start,
18099 GOMP_loop_ull_ordered_static_next,
18100 GOMP_loop_ull_ordered_static_start,
18101 GOMP_loop_ull_runtime_next, GOMP_loop_ull_runtime_start,
18102 GOMP_loop_ull_static_next, GOMP_loop_ull_static_start,
18103 GOMP_task, GOMP_taskwait): Export @@GOMP_2.0.
18104 (omp_set_schedule, omp_get_schedule,
18105 omp_get_thread_limit, omp_set_max_active_levels,
18106 omp_get_max_active_levels, omp_get_level,
18107 omp_get_ancestor_thread_num, omp_get_team_size, omp_get_active_level,
18108 omp_set_schedule_, omp_set_schedule_8_,
18109 omp_get_schedule_, omp_get_schedule_8_, omp_get_thread_limit_,
18110 omp_set_max_active_levels_, omp_set_max_active_levels_8_,
18111 omp_get_max_active_levels_, omp_get_level_,
18112 omp_get_ancestor_thread_num_, omp_get_ancestor_thread_num_8_,
18113 omp_get_team_size_, omp_get_team_size_8_, omp_get_active_level_):
18114 New exports @@OMP_3.0.
18115 * omp.h.in (omp_sched_t): New type.
18116 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
18117 omp_set_max_active_levels, omp_get_max_active_levels,
18118 omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
18119 omp_get_active_level): New prototypes.
18120 * env.c (gomp_spin_count_var, gomp_throttled_spin_count_var,
18121 gomp_available_cpus, gomp_managed_threads, gomp_max_active_levels_var,
18122 gomp_thread_limit_var, gomp_remaining_threads_count,
18123 gomp_remaining_threads_lock): New variables.
18124 (parse_spincount): New function.
18125 (initialize_env): Call gomp_init_num_threads unconditionally.
18126 Initialize gomp_available_cpus. Call parse_spincount,
18127 initialize gomp_{,throttled_}spin_count_var
18128 depending on presence and value of OMP_WAIT_POLICY and
18129 GOMP_SPINCOUNT env vars. Handle GOMP_BLOCKTIME env var.
18130 Handle OMP_WAIT_POLICY, OMP_MAX_ACTIVE_LEVELS,
18131 OMP_THREAD_LIMIT, OMP_STACKSIZE env vars. Handle unit specification
18132 for GOMP_STACKSIZE. Initialize gomp_remaining_threads_count and
18133 gomp_remaining_threads_lock if needed. Use gomp_global_icv.
18134 (gomp_nthreads_var, gomp_dyn_var, gomp_nest_var,
18135 gomp_run_sched_var, gomp_run_sched_chunk): Remove.
18136 (gomp_global_icv): New.
18137 (parse_schedule): Use it. Parse "auto".
18138 (omp_set_num_threads): Use gomp_icv.
18139 (omp_set_dynamic, omp_get_dynamic, omp_set_nested, omp_get_nested):
18140 Likewise.
18141 (omp_get_max_threads): Move from parallel.c.
18142 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
18143 omp_set_max_active_levels, omp_get_max_active_levels): New functions,
18144 add ialias.
18145 (parse_stacksize, parse_wait_policy): New functions.
18146 * fortran.c: Rewrite lock wrappers, if symbol versioning provide
18147 both wrappers for compatibility and new locks.
18148 (omp_set_schedule, omp_get_schedule,
18149 omp_get_thread_limit, omp_set_max_active_levels,
18150 omp_get_max_active_levels, omp_get_level,
18151 omp_get_ancestor_thread_num, omp_get_team_size,
18152 omp_get_active_level): New ialias_redirect.
18153 (omp_set_schedule_, omp_set_schedule_8_,
18154 omp_get_schedule_, omp_get_schedule_8_, omp_get_thread_limit_,
18155 omp_set_max_active_levels_, omp_set_max_active_levels_8_,
18156 omp_get_max_active_levels_, omp_get_level_,
18157 omp_get_ancestor_thread_num_, omp_get_ancestor_thread_num_8_,
18158 omp_get_team_size_, omp_get_team_size_8_, omp_get_active_level_):
18159 New functions.
18160 * parallel.c: Include limits.h.
18161 (gomp_resolve_num_threads): Add count argument. Rewritten.
18162 (GOMP_parallel_start): Call gomp_new_team and pass that as last
18163 argument to gomp_team_start. Pass 0 as second argument to
18164 gomp_resolve_num_threads.
18165 (GOMP_parallel_end): Decrease gomp_remaining_threads_count
18166 if gomp_thread_limit_var != ULONG_MAX.
18167 (omp_in_parallel): Implement using ts.active_level.
18168 (omp_get_max_threads): Move to env.c.
18169 (omp_get_level, omp_get_ancestor_thread_num,
18170 omp_get_team_size, omp_get_active_level): New functions,
18171 add ialias.
18172 * sections.c (GOMP_sections_start): Call gomp_work_share_init_done
18173 after gomp_sections_init. If HAVE_SYNC_BUILTINS, call
18174 gomp_iter_dynamic_next instead of the _locked variant and don't take
18175 lock around it, otherwise acquire it before calling
18176 gomp_iter_dynamic_next_locked.
18177 (GOMP_sections_next): If HAVE_SYNC_BUILTINS, call
18178 gomp_iter_dynamic_next instead of the _locked variant and don't take
18179 lock around it.
18180 (GOMP_parallel_sections_start): Call gomp_new_team instead of
18181 gomp_new_work_share. Call gomp_sections_init on &team->work_shares[0].
18182 Adjust gomp_team_start caller. Pass count as second argument to
18183 gomp_resolve_num_threads, don't adjust num_threads after the call.
18184 Use gomp_icv.
18185 * iter.c (gomp_iter_dynamic_next_locked): Don't multiply
18186 ws->chunk_size by incr.
18187 (gomp_iter_dynamic_next): Likewise. If ws->mode, use more efficient
18188 code.
18189 * libgomp_f.h.in (omp_lock_25_arg_t, omp_nest_lock_25_arg_t): New
18190 types.
18191 (omp_lock_25_arg, omp_nest_lock_25_arg): New macros.
18192 (omp_check_defines): Check even the compat defines.
18193 * config/linux/ptrlock.c: New file.
18194 * config/linux/ptrlock.h: New file.
18195 * config/linux/wait.h: New file.
18196 * config/posix/ptrlock.c: New file.
18197 * config/posix/ptrlock.h: New file.
18198 * config/linux/bar.h (gomp_team_barrier_wait,
18199 gomp_team_barrier_wait_end, gomp_team_barrier_wake): New prototypes.
18200 (gomp_team_barrier_set_task_pending,
18201 gomp_team_barrier_clear_task_pending,
18202 gomp_team_barrier_set_waiting_for_tasks,
18203 gomp_team_barrier_waiting_for_tasks,
18204 gomp_team_barrier_done): New inlines.
18205 (gomp_barrier_t): Rewritten.
18206 (gomp_barrier_state_t): New typedef.
18207 (gomp_barrier_init, gomp_barrier_reinit, gomp_barrier_destroy,
18208 gomp_barrier_wait_start): Rewritten.
18209 (gomp_barrier_wait_end): Change second argument to
18210 gomp_barrier_state_t.
18211 (gomp_barrier_last_thread, gomp_barrier_wait_last): New static
18212 inlines.
18213 * config/linux/bar.c: Include wait.h instead of libgomp.h and
18214 futex.h.
18215 (gomp_barrier_wait_end): Rewritten.
18216 (gomp_team_barrier_wait, gomp_team_barrier_wait_end,
18217 gomp_team_barrier_wake, gomp_barrier_wait_last): New functions.
18218 * config/posix/bar.h (gomp_barrier_t): Add generation field.
18219 (gomp_barrier_state_t): New typedef.
18220 (gomp_team_barrier_wait,
18221 gomp_team_barrier_wait_end, gomp_team_barrier_wake): New prototypes.
18222 (gomp_barrier_wait_start): Or all but low 2 bits from generation
18223 into the return value. Return gomp_barrier_state_t.
18224 (gomp_team_barrier_set_task_pending,
18225 gomp_team_barrier_clear_task_pending,
18226 gomp_team_barrier_set_waiting_for_tasks,
18227 gomp_team_barrier_waiting_for_tasks,
18228 gomp_team_barrier_done): New inlines.
18229 (gomp_barrier_wait_end): Change second argument to
18230 gomp_barrier_state_t.
18231 (gomp_barrier_last_thread, gomp_barrier_wait_last): New static
18232 inlines.
18233 * config/posix/bar.c (gomp_barrier_init): Clear generation field.
18234 (gomp_barrier_wait_end): Change second argument to
3e348fcc 18235 gomp_barrier_state_t.
a68ab351
JJ
18236 (gomp_team_barrier_wait, gomp_team_barrier_wait_end,
18237 gomp_team_barrier_wake): New functions.
18238 * config/linux/mutex.c: Include wait.h instead of libgomp.h and
18239 futex.h.
18240 (gomp_futex_wake, gomp_futex_wait): New variables.
18241 (gomp_mutex_lock_slow): Call do_wait instead of futex_wait.
18242 * config/linux/lock.c: Rewrite to make locks task owned,
18243 for backwards compatibility provide the old entrypoints
18244 if symbol versioning. Include wait.h instead of libgomp.h and
18245 futex.h.
18246 (gomp_set_nest_lock_25): Call do_wait instead of futex_wait.
18247 * config/posix95/lock.c: Rewrite to make locks task owned,
18248 for backwards compatibility provide the old entrypoints
18249 if symbol versioning.
18250 * config/posix/lock.c: Rewrite to make locks task owned,
18251 for backwards compatibility provide the old entrypoints
18252 if symbol versioning.
18253 * config/linux/proc.c (gomp_init_num_threads): Use gomp_global_icv.
18254 (get_num_procs, gomp_dynamic_max_threads): Use gomp_icv.
18255 * config/posix/proc.c, config/mingw32/proc.c: Similarly.
18256 * config/linux/powerpc/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
18257 (sys_futex0): Return error code.
18258 (futex_wake, futex_wait): If ENOSYS was returned, clear
18259 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
18260 (cpu_relax, atomic_write_barrier): New static inlines.
18261 * config/linux/alpha/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
18262 (futex_wake, futex_wait): If ENOSYS was returned, clear
18263 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
18264 (cpu_relax, atomic_write_barrier): New static inlines.
18265 * config/linux/x86/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
18266 (sys_futex0): Return error code.
18267 (futex_wake, futex_wait): If ENOSYS was returned, clear
18268 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
18269 (cpu_relax, atomic_write_barrier): New static inlines.
18270 * config/linux/s390/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
18271 (sys_futex0): Return error code.
18272 (futex_wake, futex_wait): If ENOSYS was returned, clear
18273 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
18274 (cpu_relax, atomic_write_barrier): New static inlines.
18275 * config/linux/ia64/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
18276 (sys_futex0): Return error code.
18277 (futex_wake, futex_wait): If ENOSYS was returned, clear
18278 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
18279 (cpu_relax, atomic_write_barrier): New static inlines.
18280 * config/linux/sparc/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
18281 (sys_futex0): Return error code.
18282 (futex_wake, futex_wait): If ENOSYS was returned, clear
18283 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
18284 (cpu_relax, atomic_write_barrier): New static inlines.
18285 * config/linux/sem.c: Include wait.h instead of libgomp.h and
18286 futex.h.
18287 (gomp_sem_wait_slow): Call do_wait instead of futex_wait.
18288 * config/linux/affinity.c: Assume HAVE_SYNC_BUILTINS.
18289 * config/linux/omp-lock.h (omp_lock_25_t, omp_nest_lock_25_t): New
18290 types.
18291 (omp_nest_lock_t): Change owner into void *, add lock field.
18292 * config/posix95/omp-lock.h: Include semaphore.h.
18293 (omp_lock_25_t, omp_nest_lock_25_t): New types.
18294 (omp_lock_t): Use sem_t instead of mutex if semaphores
18295 aren't broken.
18296 (omp_nest_lock_t): Likewise. Change owner to void *.
18297 * config/posix/omp-lock.h: Include semaphore.h.
18298 (omp_lock_25_t, omp_nest_lock_25_t): New types.
18299 (omp_lock_t): Use sem_t instead of mutex if semaphores
18300 aren't broken.
18301 (omp_nest_lock_t): Likewise. Add owner field.
18302
183032008-06-06 Jakub Jelinek <jakub@redhat.com>
18304
18305 * testsuite/libgomp.c/collapse-1.c: New test.
18306 * testsuite/libgomp.c/collapse-2.c: New test.
18307 * testsuite/libgomp.c/collapse-3.c: New test.
18308 * testsuite/libgomp.c/icv-1.c: New test.
18309 * testsuite/libgomp.c/icv-2.c: New test.
18310 * testsuite/libgomp.c/lib-2.c: New test.
18311 * testsuite/libgomp.c/lock-1.c: New test.
18312 * testsuite/libgomp.c/lock-2.c: New test.
18313 * testsuite/libgomp.c/lock-3.c: New test.
18314 * testsuite/libgomp.c/loop-4.c: New test.
18315 * testsuite/libgomp.c/loop-5.c: New test.
18316 * testsuite/libgomp.c/loop-6.c: New test.
18317 * testsuite/libgomp.c/loop-7.c: New test.
18318 * testsuite/libgomp.c/loop-8.c: New test.
18319 * testsuite/libgomp.c/loop-9.c: New test.
18320 * testsuite/libgomp.c/nested-3.c: New test.
18321 * testsuite/libgomp.c/nestedfn-6.c: New test.
18322 * testsuite/libgomp.c/sort-1.c: New test.
18323 * testsuite/libgomp.c/task-1.c: New test.
18324 * testsuite/libgomp.c/task-2.c: New test.
18325 * testsuite/libgomp.c/task-3.c: New test.
18326 * testsuite/libgomp.c/task-4.c: New test.
18327 * testsuite/libgomp.c++/c++.exp: Add libstdc++-v3 build includes
18328 to C++ testsuite default compiler options.
18329 * testsuite/libgomp.c++/collapse-1.C: New test.
18330 * testsuite/libgomp.c++/collapse-2.C: New test.
18331 * testsuite/libgomp.c++/ctor-10.C: New test.
18332 * testsuite/libgomp.c++/for-1.C: New test.
18333 * testsuite/libgomp.c++/for-2.C: New test.
18334 * testsuite/libgomp.c++/for-3.C: New test.
18335 * testsuite/libgomp.c++/for-4.C: New test.
18336 * testsuite/libgomp.c++/for-5.C: New test.
18337 * testsuite/libgomp.c++/loop-8.C: New test.
18338 * testsuite/libgomp.c++/loop-9.C: New test.
18339 * testsuite/libgomp.c++/loop-10.C: New test.
18340 * testsuite/libgomp.c++/task-1.C: New test.
18341 * testsuite/libgomp.c++/task-2.C: New test.
18342 * testsuite/libgomp.c++/task-3.C: New test.
18343 * testsuite/libgomp.c++/task-4.C: New test.
18344 * testsuite/libgomp.c++/task-5.C: New test.
18345 * testsuite/libgomp.c++/task-6.C: New test.
18346 * testsuite/libgomp.fortran/allocatable1.f90: New test.
18347 * testsuite/libgomp.fortran/allocatable2.f90: New test.
18348 * testsuite/libgomp.fortran/allocatable3.f90: New test.
18349 * testsuite/libgomp.fortran/allocatable4.f90: New test.
18350 * testsuite/libgomp.fortran/collapse1.f90: New test.
18351 * testsuite/libgomp.fortran/collapse2.f90: New test.
18352 * testsuite/libgomp.fortran/collapse3.f90: New test.
18353 * testsuite/libgomp.fortran/collapse4.f90: New test.
18354 * testsuite/libgomp.fortran/lastprivate1.f90: New test.
18355 * testsuite/libgomp.fortran/lastprivate2.f90: New test.
18356 * testsuite/libgomp.fortran/lib4.f90: New test.
18357 * testsuite/libgomp.fortran/lock-1.f90: New test.
18358 * testsuite/libgomp.fortran/lock-2.f90: New test.
18359 * testsuite/libgomp.fortran/nested1.f90: New test.
18360 * testsuite/libgomp.fortran/nestedfn4.f90: New test.
18361 * testsuite/libgomp.fortran/strassen.f90: New test.
18362 * testsuite/libgomp.fortran/tabs1.f90: New test.
18363 * testsuite/libgomp.fortran/tabs2.f: New test.
18364 * testsuite/libgomp.fortran/task1.f90: New test.
18365 * testsuite/libgomp.fortran/task2.f90: New test.
18366 * testsuite/libgomp.fortran/vla4.f90: Add dg-warning.
18367 * testsuite/libgomp.fortran/vla5.f90: Likewise.
18368 * testsuite/libgomp.c/pr26943-2.c: Likewise.
18369 * testsuite/libgomp.c/pr26943-3.c: Likewise.
18370 * testsuite/libgomp.c/pr26943-4.c: Likewise.
18371
7a0112e7
JJ
183722008-05-23 Jakub Jelinek <jakub@redhat.com>
18373
18374 PR c++/36308
18375 * testsuite/libgomp.c++/ctor-11.C: New test.
18376 * testsuite/libgomp.c++/ctor-12.C: New test.
18377
91a5b394
JJ
183782008-05-15 Janis Johnson <janis187@us.ibm.com>
18379
18380 * testsuite/lib/libgomp.exp: Load torture-options.exp from gcc lib.
18381
c18c98c0
JJ
183822008-05-07 Jakub Jelinek <jakub@redhat.com>
18383
18384 PR middle-end/36106
18385 * testsuite/libgomp.c/atomic-5.c: New test.
18386 * testsuite/libgomp.c/atomic-6.c: New test.
18387 * testsuite/libgomp.c/autopar-1.c: New test.
18388
6d26724a
RW
183892008-04-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18390
18391 * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS)
18392 (LIBGOMP_CHECK_ATTRIBUTE_VISIBILITY)
18393 (LIBGOMP_CHECK_ATTRIBUTE_DLLEXPORT)
18394 (LIBGOMP_CHECK_ATTRIBUTE_ALIAS): Fix cache variable names.
18395 * configure: Regenerate.
18396 * Makefile.in, testsuite/Makefile.in: Likewise.
18397
deb984e6
PB
183982008-04-18 Paolo Bonzini <bonzini@gnu.org>
18399
18400 PR bootstrap/35457
18401 * aclocal.m4: Regenerate.
18402 * configure: Regenerate.
18403
9e775963
JJ
184042008-03-18 Jakub Jelinek <jakub@redhat.com>
18405
8119fc93
JJ
18406 PR middle-end/35611
18407 * testsuite/libgomp.c/atomic-4.c: New test.
18408
9e775963
JJ
18409 PR libgomp/35625
18410 * iter.c (gomp_iter_guided_next_locked): If q > n, set end to ws->end.
18411 (gomp_iter_guided_next): Likewise.
18412 * testsuite/libgomp.c/pr35625.c: New test.
18413
38d24731
RW
184142008-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18415
18416 * aclocal.m4: Regenerate.
18417 * configure: Likewise.
18418 * Makefile.in: Likewise.
18419 * testsuite/Makefile.in: Likewise.
18420
d0fb20be
JJ
184212008-03-13 Jakub Jelinek <jakub@redhat.com>
18422
18423 PR middle-end/35185
18424 * testsuite/libgomp.c++/pr35185.C: New test.
18425
7c8f7639
JJ
184262008-03-12 Jakub Jelinek <jakub@redhat.com>
18427
18428 PR middle-end/35549
18429 * testsuite/libgomp.c/pr35549.c: New test.
18430
251923f5
JJ
184312008-03-06 Jakub Jelinek <jakub@redhat.com>
18432
18433 * testsuite/libgomp.c/atomic-3.c: New test.
18434
f489fba1
FXC
184352008-03-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
18436
18437 PR fortran/33197
251923f5 18438 * testsuite/libgomp.fortran/fortran.exp: Add .f08 and
f489fba1
FXC
18439 .F08 file suffixes.
18440
a1b25e49
PG
184412008-03-03 Peter O'Gorman <pogma@thewrittenword.com>
18442
18443 PR libgomp/33131
18444 * configure.ac: Add ACX_HEADER_STRING.
18445 * env.c: Include strings.h.
18446 * aclocal.m4: Regenerate.
18447 * config.h.in: Regenerate.
18448 * configure: Regenerate.
18449 * Makefile.in: Regenerate.
18450 * testsuite/Makefile.in: Regenerate.
18451
6837b3b8
JJ
184522008-02-15 Jakub Jelinek <jakub@redhat.com>
18453
ac84c062
JJ
18454 PR middle-end/35196
18455 * testsuite/libgomp.c/pr35196.c: New test.
18456
6837b3b8
JJ
18457 PR middle-end/35130
18458 * testsuite/libgomp.fortran/pr35130.f90: New test.
18459 * testsuite/libgomp.c/pr35130.c: New test.
18460
c256730c
JJ
184612008-01-25 Jakub Jelinek <jakub@redhat.com>
18462
18463 PR middle-end/33880
18464 * testsuite/libgomp.c/pr33880.c: New test.
18465 * testsuite/libgomp.fortran/pr33880.f90: New test.
18466
c8e95542 184672008-01-24 David Edelsohn <edelsohn@gnu.org>
d653fdfb
DE
18468
18469 * configure: Regenerate.
18470
0f3e711e
JJ
184712008-01-08 Jakub Jelinek <jakub@redhat.com>
18472
18473 * configure.ac: Move futex checking into ../config/futex.m4.
18474 * configure: Rebuilt.
18475 * aclocal.m4: Rebuilt.
18476 * Makefile.in: Rebuilt.
18477
18478 * configure.tgt: Rename have_tls to gcc_cv_have_tls to match
18479 2007-10-15 ../config/tls.m4 change.
18480
5259c813
JJ
184812007-12-19 Jakub Jelinek <jakub@redhat.com>
18482
18483 PR c++/34513
18484 * testsuite/libgomp.c/pr34513.c: New test.
18485 * testsuite/libgomp.c++/pr34513.C: New test.
18486
ae8d8879
JH
184872007-12-17 Jack Howarth <howarth@bromo.med.uc.edu>
18488
18489 PR target/32765
18490 * testsuite/libgomp.fortran/crayptr2.f90: Move dg-options for darwin.
18491
2b4cf991
JJ
184922007-12-04 Jakub Jelinek <jakub@redhat.com>
18493
18494 * omp.h.in (__GOMP_NOTHROW): Define. Use it on omp_* prototypes.
18495
d2dda7fe
JJ
184962007-12-03 Jakub Jelinek <jakub@redhat.com>
18497
18498 * testsuite/libgomp.c/private-1.c: New test.
18499
d683ec81
PB
185002007-11-29 Andris Pavenis <andris.pavenis@iki.fi>
18501 Paolo Bonzini <bonzini@gnu.org>
18502
18503 * Makefile.am: Use space as vpath separator. Use 'vpath %'
18504 instead of 'VPATH ='.
18505 * Makefile.in: Regenerate.
18506
a7415017
MK
185072007-11-23 Matthias Klose <doko@ubuntu.com>
18508
18509 * configure.ac: Adjust makeinfo version check.
18510 * configure: Regenerate.
18511
78e47463
JJ
185122007-11-10 Jakub Jelinek <jakub@redhat.com>
18513
18514 PR fortran/34020
18515 * testsuite/libgomp.fortran/pr34020.f90: New test.
18516
239371f9
JJ
185172007-11-06 Jakub Jelinek <jakub@redhat.com>
18518
18519 PR c++/33894
18520 * testsuite/libgomp.c++/atomic-1.C: New test.
18521
98a5fa94
JJ
185222007-10-25 Jakub Jelinek <jakub@redhat.com>
18523
18524 PR libgomp/33275
18525 * testsuite/libgomp.fortran/omp_parse3.f90 (test_threadprivate):
18526 Make x and y integers rather than (implicit) reals. Add private (j)
18527 clause to the last omp parallel.
18528
3afcaaf4
MR
185292007-10-15 Maciej W. Rozycki <macro@linux-mips.org>
18530
18531 * configure: Regenerate following changes to ../config/tls.m4.
18532
bd69daef
JJ
185332007-09-28 Jakub Jelinek <jakub@redhat.com>
18534
18535 * testsuite/libgomp.fortran/stack.f90: New test.
18536
1d0bd356
DS
185372007-09-10 Danny Smith <dannysmith@users.sourceforge.net>
18538
18539 * config/mingw32/proc.c: New file.
18540
b3172cab
UB
185412007-09-05 Uros Bizjak <ubizjak@gmail.com>
18542
18543 * testsuite/libgomp.c/atomic-1.c: Include cpuid.h for i386 targets.
18544 (main): Use __get_cpuid to get i386 target fetaures.
18545 * testsuite/libgomp.c/atomic-2.c: Include cpuid.h for x86_64 targets.
18546 (main): Use __get_cpuid to get x86_64 target fetaures.
18547
6da17392
JH
185482007-08-15 Jack Howarth <howarth@bromo.med.uc.edu>
18549
18550 PR target/32765
18551 * testsuite/libgomp.fortran/pr32550.f90: Use -static-libgcc on Darwin.
18552 * testsuite/libgomp.fortran/crayptr2.f90: Likwise.
18553
e1c82219
JJ
185542007-07-12 Jakub Jelinek <jakub@redhat.com>
18555
18556 PR fortran/32550
18557 * testsuite/libgomp.fortran/pr32550.f90: New test.
18558 * testsuite/libgomp.fortran/crayptr2.f90: New test.
18559
12a27363
L
185602007-07-05 H.J. Lu <hongjiu.lu@intel.com>
18561
18562 * aclocal.m4: Regenerated.
18563
5349080d
TB
185642007-07-05 Tobias Burnus <burnus@net-b.de>
18565
18566 PR fortran/32359
18567 * testsuite/libgomp.fortran/pr32359.f90: New.
18568
4f9c450c
JJ
185692007-07-02 Jakub Jelinek <jakub@redhat.com>
18570
18571 PR libgomp/32468
18572 * sections.c (GOMP_parallel_sections_start): Only decrease
18573 number of threads to COUNT if dyn_var is true.
18574 * testsuite/libgomp.c/pr32468.c: New test.
18575
28c67ed7
RO
185762007-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
18577
18578 PR libgomp/26308
18579 * config/posix/lock.c (_XOPEN_SOURCE): Don't define on Tru64 UNIX.
18580
64964499
JJ
185812007-06-21 Jakub Jelinek <jakub@redhat.com>
18582
18583 PR middle-end/32362
18584 * testsuite/libgomp.c/pr32362-1.c: New test.
18585 * testsuite/libgomp.c/pr32362-2.c: New test.
18586 * testsuite/libgomp.c/pr32362-3.c: New test.
18587
46d8fbd1
JJ
185882007-06-07 Jakub Jelinek <jakub@redhat.com>
18589
18590 * team.c (gomp_team_start): Fix setting up thread_attr
18591 stack size.
18592
82a6cadf
PB
185932007-06-02 Paolo Bonzini <bonzini@gnu.org>
18594
18595 * configure: Regenerate.
18596
1cf3d07d
SE
185972007-05-23 Steve Ellcey <sje@cup.hp.com>
18598
18599 * Makefile.in: Regenerate.
18600 * configure: Regenerate.
18601 * aclocal.m4: Regenerate.
18602 * testsuite/Makefile.in: Regenerate.
18603
12aac30b
JJ
186042007-05-04 Jakub Jelinek <jakub@redhat.com>
18605
18606 * config/linux/proc.c: New file.
18607
f1028b02
JJ
18608 PR libgomp/28482
18609 * configure.tgt: Don't link with -Wl,-z,nodlopen even on Linux.
18610
06785a48
DF
186112007-04-19 Daniel Franke <franke.daniel@gmail.com>
18612
18613 * libgomp.texi (GOMP_CPU_AFFINITY): Updated.
18614
b3b08ba0
MK
186152007-04-16 Matthias Klose <doko@debian.org>
18616
18617 * configure.tgt (i[456]86-*-linux*): Only add ia32 specific
18618 flags if not building with -m64.
18619 * testsuite/lib/libgomp-dg.exp (libgomp_init): Don't add -march
18620 flag for i?86-*-* targets, if current target matches -m64.
18621
6b2c5ce0
SE
186222007-04-14 Steve Ellcey <sje@cup.hp.com>
18623
18624 * Makefile.am: Add -I .. to ACLOCAL_AMFLAGS.
18625 * Makefile.in: Regenerate.
18626
dd56fe7c
JDA
186272007-04-07 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
18628
18629 PR testsuite/31369
18630 * testsuite/libgomp.c++/c++.exp: Don't use concat when setting
18631 ld_library_path.
18632 * testsuite/libgomp.fortran/fortran.exp: Likewise.
18633
a0884cf0
JJ
186342007-04-04 Jakub Jelinek <jakub@redhat.com>
18635
18636 * libgomp.h (gomp_cpu_affinity, gomp_cpu_affinity_len): New extern
18637 decls.
18638 (gomp_init_affinity, gomp_init_thread_affinity): New prototypes.
18639 * env.c (gomp_cpu_affinity, gomp_cpu_affinity_len): New variables.
18640 (parse_affinity): New function.
18641 (initialize_env): Call it and gomp_init_affinity.
18642 * team.c (gomp_team_start): If gomp_cpu_affinity != NULL,
18643 create new pthread_attr_t and call gomp_init_thread_affinity
18644 on it for each thread before passing the attribute to pthread_create.
18645 * config/linux/affinity.c: New file.
18646 * config/posix/affinity.c: New file.
18647 * configure.ac (HAVE_PTHREAD_AFFINITY_NP): New test.
18648 * configure: Rebuilt.
18649 * config.h.in: Rebuilt.
18650 * Makefile.am (libgomp_la_SOURCES): Add affinity.c.
18651 * Makefile.in: Rebuilt.
18652
1850744b
AT
186532007-03-23 Andreas Tobler <a.tobler@schweiz.org>
18654
18655 * testsuite/lib/libgomp.exp (libgomp_init): Add -shared-libgcc for
18656 *-*-darwin*.
18657 * testsuite/libgomp.c++/c++.exp: Look for shared libstdc++ library
18658 and use it if found.
18659
516f1ed8
UB
186602007-03-18 Uros Bizjak <ubizjak@gmail.com>
18661
18662 * testsuite/config/default.exp: New file.
18663 * testsuite/lib/libgomp.exp: New file.
18664 * testsuite/lib/libgomp.dg (load_gcc_lib, libgomp_init,
18665 libgomp_target_compile, libgomp_option_help, libgomp_option_proc,
18666 load_lib *, load_gcc_lib *): Move to libgomp.exp.
18667 (libgomp_load): Remove.
18668 * testsuite/lib/libgomp.exp (libgomp_init): Compute
18669 always_ld_library_path, not ld_library_path. Set additional_flags
18670 to -march=i486 for ilp32 x86_64-*-* and i386-*-* targets.
18671 (target_compile): Do not call libgomp_init. Append lang_library_path
18672 and lang_link_flags to options.
18673 * testsuite/libgomp.c/c.exp: Set DEFAULT_FLAGS to -O2. Set
18674 ld_library_path from always_ld_library_path. Set LD_LIBRARY_PATH
18675 here.
18676 * testsuite/libgomp.c++/c++.exp: Set ld_library_path from
18677 always_ld_library_path. Set LD_LIBRARY_PATH here.
18678 * testsuite/libgomp.fortran/fortran.exp: Ditto.
18679 * testsuite/libgomp.c/atomic-1.c: Set dg-options to
18680 "-O2 -march=pentium" for ilp32 x86 targets. Simplify check for
18681 CX8 flag.
18682 * testsuite/libgomp.c/atomic-2.c: Set dg-options to "-O2 -mcx16" for
18683 lp64 x86 targets. Do not check for SSE3 bit. Do not define bit_SSE3.
18684 * testsuite/libgomp.c/pr29947-1.c: Remove default dg-options.
18685 * testsuite/libgomp.c/pr29947-1.c: Ditto.
18686 * testsuite/libgomp.c/atomic-10.c: Ditto.
18687
2ada56f5
JJ
186882007-03-21 Jakub Jelinek <jakub@redhat.com>
18689
18690 * testsuite/libgomp.fortran/appendix-a/a.22.8.f90: Add
18691 dg-final cleanup-modules line.
18692 * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: Likewise.
18693 * testsuite/libgomp.fortran/appendix-a/a.31.5.f90: Likewise.
18694 * testsuite/libgomp.fortran/appendix-a/a.31.4.f90: Likewise.
18695 * testsuite/libgomp.fortran/threadprivate2.f90: Likewise.
18696 * testsuite/libgomp.fortran/reduction5.f90: Likewise.
18697 * testsuite/libgomp.fortran/threadprivate3.f90: Likewise.
18698 * testsuite/libgomp.fortran/threadprivate1.f90: Likewise.
18699
f210f1cd
AS
187002007-03-18 Andreas Schwab <schwab@suse.de>
18701
18702 * acinclude.m4: Adjust regular expression for ld version
18703 extraction.
18704 * configure: Regenerate.
18705
c4dc950d
BM
187062007-03-01 Brooks Moses <brooks.moses@codesourcery.com>
18707
18708 * Makefile.am: Add install-pdf target as copied from
18709 automake v1.10 rules.
18710 * Makefile.in: Regenerate
18711
e02a048f
JJ
187122007-02-07 Jakub Jelinek <jakub@redhat.com>
18713
78e075d4
JJ
18714 PR libgomp/28486
18715 * configure: Regenerate.
18716
e02a048f
JJ
18717 PR c++/30703
18718 * testsuite/libgomp.c++/pr30703.C: New test.
18719
60def7ed
JJ
187202007-02-02 Jakub Jelinek <jakub@redhat.com>
18721
18722 Revert:
18723 2006-07-05 Eric Christopher <echristo@apple.com>
18724 * configure.ac: Depend addition of -pthread on host OS.
18725 * configure: Regenerate.
18726
f1b0882e
RW
187272007-01-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18728
18729 * libgomp.texi: Fix spacing after abbreviations.
18730
748b9d7c
DF
187312007-01-31 Daniel Franke <franke.daniel@gmail.com>
18732
18733 PR libgomp/30546
18734 * configure.ac: Add check for makeinfo
18735 * Makefile.am: Redefined target libgomp.info, build libgomp.info only
a0221aee 18736 if an appropriate version of makeinfo is found.
748b9d7c
DF
18737 * aclocal.m4: Regenerated.
18738 * configure: Regenerated.
18739 * Makefile.in: Regenerated.
18740 * testsuite/Makefile.in: Regenerated.
18741
14734fc7
DF
187422007-01-29 Daniel Franke <franke.daniel@gmail.com>
18743
18744 PR libgomp/30540
18745 * libgomp.texi: More about implementation-dependent settings.
18746
7befd5d2
TB
187472007-01-26 Tobias Burnus <burnus@net-b.de>
18748
18749 * testsuite/libgomp.fortran/fortran.exp: Support .f03 extension.
18750
4288fea2
JJ
187512007-01-24 Jakub Jelinek <jakub@redhat.com>
18752
18753 PR middle-end/30494
18754 * testsuite/libgomp.c/pr30494.c: New test.
18755
627ab4b8
TT
187562007-01-15 Tom Tromey <tromey@redhat.com>
18757
18758 * configure: Rebuilt.
18759 * configure.ac: Fixed comment.
18760
7c2b7f45
DF
187612007-01-14 Daniel Franke <franke.daniel@gmail.com>
18762
18763 * libgomp.texi: Document implementation specific default values of
18764 environment variables.
18765
3721b9e1
DF
187662006-12-21 Daniel Franke <franke.daniel@gmail.com>
18767
18768 PR libgomp/28209
18769 * libgomp.texi: New file.
18770 * configure.ac: Add --enable-generated-files-in-srcdir option.
18771 * Makefile.am: Add info, dvi, pdf, html targets. On request, copy
18772 files to srcdir.
18773 * Makefile.in: Regenerated.
18774 * config.h.in: Regenerated.
18775 * testsuite/Makefile.in: Regenerated.
18776 * NOTES: Removed.
18777
62bd6216
DF
187782006-12-04 Daniel Franke <franke.daniel@gmail.com>
18779
18780 PR libgomp/29949
18781 * env.c (omp_set_num_threads): Set illegal thread count to 1.
18782
aad741f4
EB
187832006-12-04 Eric Botcazou <ebotcazou@libertysurf.fr>
18784
18785 * configure: Regenerate.
18786
22568cc6
JJ
187872006-12-04 Jakub Jelinek <jakub@redhat.com>
18788
18789 PR libgomp/29947
18790 * loop.c (gomp_loop_init): Make parameters signed. Set ws->end to
18791 start if there shouldn't be any loop iterations.
18792 (gomp_loop_ordered_static_start): Remove start == end test.
18793 * testsuite/libgomp.c/pr29947-1.c: New test.
18794 * testsuite/libgomp.c/pr29947-2.c: New test.
18795
a9690009
EB
187962006-12-02 Eric Botcazou <ebotcazou@libertysurf.fr>
18797
18798 * configure.tgt: Force initial-exec TLS model on Linux only.
18799
597c25e6
DJ
188002006-11-13 Daniel Jacobowitz <dan@codesourcery.com>
18801
18802 * configure: Regenerated.
18803
6acf0b38
UB
188042006-11-09 Uros Bizjak <ubizjak@gmail.com>
18805
18806 * env.c (parse_schedule): Reject out of range values.
18807 (parse_unsigned_long): Reject out of range, negative or zero values.
18808
a7a53ca5
JJ
188092006-10-29 Jakub Jelinek <jakub@redhat.com>
18810
18811 PR fortran/29629
18812 * testsuite/libgomp.fortran/pr29629.f90: New test.
18813
6d4d216a
EB
188142006-10-24 Eric Botcazou <ebotcazou@libertysurf.fr>
18815
18816 PR libgomp/29494
18817 * configure.tgt: Use posix95 configuration for Solaris 2.5.1 and 2.6.
18818 * config/posix95: New directory.
18819 * config/posix95/omp-lock.h: New file.
18820 * config/posix95/lock.c: Likewise.
18821
5b043f08
GK
188222006-10-14 Geoffrey Keating <geoffk@apple.com>
18823
18824 * aclocal.m4: Regenerate.
18825 * configure: Regenerate.
18826
b50019f0
DS
188272006-10-05 Danny Smith <dannysmith@users.sourceforge.net>
18828
18829 * testsuite/libgomp.c/barrier-1.c: Change timestamp tests from
18830 '<' to '<='.
18831
8887708e
DS
188322006-10-05 Danny Smith <dannysmith@users.sourceforge.net>
18833
18834 * acinclude.m4 (HAVE_ATTRIBUTE_ALIAS): Remove __USER_LABEL_PREFIX__ from
18835 test.
18836 * configure: Regenerate.
18837 * fortran.c (ialias_redirect): Add __USER_LABEL_PREFIX__ to alias.
18838
9b9e4cd6
JJ
188392006-09-26 Jakub Jelinek <jakub@redhat.com>
18840
a70ad3bb
JJ
18841 PR middle-end/25261
18842 PR middle-end/28790
18843 * testsuite/libgomp.c/nestedfn-4.c: New test.
18844 * testsuite/libgomp.c/nestedfn-5.c: New test.
18845 * testsuite/libgomp.fortran/nestedfn3.f90: New test.
18846
9b9e4cd6
JJ
18847 PR fortran/29097
18848 * testsuite/libgomp.fortran/condinc1.f: New test.
18849 * testsuite/libgomp.fortran/condinc2.f: New test.
18850 * testsuite/libgomp.fortran/condinc3.f90: New test.
18851 * testsuite/libgomp.fortran/condinc4.f90: New test.
18852 * testsuite/libgomp.fortran/condinc1.inc: New file.
18853
2fb31455
TT
188542006-09-18 Tom Tromey <tromey@redhat.com>
18855
18856 * configure: Rebuilt.
18857
c663e301
JM
188582006-09-13 Joseph S. Myers <joseph@codesourcery.com>
18859
18860 PR c/28768
18861 PR preprocessor/14634
18862 * configure.ac (HAVE_CLOCK_GETTIME): Add missing second argument
18863 to AC_DEFINE.
18864 * configure: Regenerate.
18865
38371be9
SK
188662006-09-08 Steven G. Kargl <kargl@gcc.gnu.org>
18867
18868 * testsuite/libgomp.fortran/reduction3.f90: Change
18869 -2147483648 to -huge(i)-1 to avoid overflow.
18870 * testsuite/libgomp.fortran/reduction4.f90: Change
18871 Z'ffffffff' to not(0) to avoid overflow.
18872
571d5ac5
JM
188732006-08-26 Joseph S. Myers <joseph@codesourcery.com>
18874
18875 PR libgomp/25938
18876 * Makefile.am (libsubincludedir): New.
18877 (nodist_include_HEADERS): Rename to nodist_libsubinclude_HEADERS.
18878 * Makefile.in: Regenerate.
18879
89b3e3cd
JJ
188802006-08-17 Jakub Jelinek <jakub@redhat.com>
18881
18882 PR libgomp/28725
18883 * env.c: Include ctype.h.
18884 (parse_schedule, parse_unsigned_long, parse_boolean): Allow
18885 leading and/or trailing whitespace and compare strings case
18886 insensitively.
18887
742fae05
JJ
188882006-07-16 Jakub Jelinek <jakub@redhat.com>
18889
18890 PR fortran/28390
18891 * testsuite/libgomp.fortran/pr28390.f: New test.
18892
a1daed2d
EC
188932006-07-05 Eric Christopher <echristo@apple.com>
18894
18895 * configure.ac: Depend addition of -pthread on host OS.
18896 * configure: Regenerate.
18897
5d7b5199
JJ
188982006-06-21 Jakub Jelinek <jakub@redhat.com>
18899
18900 * critical.c (GOMP_critical_name_start): Fix *pptr initialization
18901 when gomp_mutex_t is larger than pointer and HAVE_SYNC_BUILTINS is
18902 defined.
18903
fe5568e9
JJ
189042006-06-20 Jakub Jelinek <jakub@redhat.com>
18905
18906 PR libgomp/26175
18907 PR libgomp/26477
18908 * configure.ac: If neither --enable-linux-futex nor
18909 --disable-linux-futex is passed, determine the default by checking
18910 for compiling and/or running against NPTL. With --enable-linux-futex,
18911 check if SYS_gettid and SYS_futex are defined.
18912 * configure: Rebuilt.
18913
c3b11a40
RH
189142006-06-14 Richard Henderson <rth@redhat.com>
18915
18916 PR libgomp/28008
18917 * env.c (initialize_env): Avoid using PTHREAD_STACK_MIN when
18918 undefined. Use GOMP_STACKSIZE not OMP_STACKSIZE for environment.
18919
d0d1b24d
RH
189202006-06-09 Richard Henderson <rth@redhat.com>
18921
18922 * env.c (gomp_nthreads_var): Change to unsigned long.
18923 (gomp_run_sched_chunk): Likewise.
18924 (parse_unsigned_long): Rename from parse_num_threads and generalize.
18925 (initialize_env): Initialize gomp_thread_attr.
18926 * libgomp.h (gomp_nthreads_var): Update decl.
18927 (gomp_run_sched_chunk): Likewise.
18928 (gomp_thread_attr): Declare.
18929 * team.c (gomp_thread_attr): Export.
18930 (initialize_team): Don't initialize it.
18931
cd75853e
JJ
189322006-06-09 Jakub Jelinek <jakub@redhat.com>
18933
18934 PR fortran/27916
18935 * testsuite/libgomp.fortran/pr27916-1.f90: New test.
18936 * testsuite/libgomp.fortran/pr27916-2.f90: New test.
18937
33815e0c
FXC
189382006-06-06 Francois-Xavier Coudert <coudert@clipper.ens.fr>
18939
18940 * config/mingw32/time.c: New file.
18941 * configure.tgt: Use it.
18942
6667de0d
CD
189432006-05-23 Carlos O'Donell <carlos@codesourcery.com>
18944
18945 * Makefile.am: Add install-html target. Add install-html to .PHONY
18946 * Makefile.in: Regenerate.
18947
e962c46b
JDA
189482006-05-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
18949
18950 PR libgomp/27612
18951 * testsuite/libgomp.c/sections-1.c: Require sync_int_long.
18952 * testsuite/libgomp.c/critical-1.c: Likewise.
18953 * testsuite/libgomp.c/loop-1.c: Likewise.
18954 * testsuite/libgomp.c/loop-2.c: Likewise.
18955 * testsuite/libgomp.c/single-1.c: Likewise.
18956 * testsuite/libgomp.c/ordered-1.c: Likewise.
18957 * testsuite/libgomp.c/ordered-2.c: Likewise.
18958
eeb1d9e0
JJ
189592006-05-15 Jakub Jelinek <jakub@redhat.com>
18960
18961 PR middle-end/27416
18962 * libgomp.fortran/pr27416-1.f90: New test.
18963
693d710f
JJ
189642006-05-03 Jakub Jelinek <jakub@redhat.com>
18965
18966 PR fortran/27395
18967 * testsuite/libgomp.fortran/pr27395-1.f90: New test.
18968 * testsuite/libgomp.fortran/pr27395-2.f90: New test.
18969
8ca5b2a2
JJ
189702006-05-02 Jakub Jelinek <jakub@redhat.com>
18971
18972 PR c++/26943
18973 * testsuite/libgomp.c/pr26943-1.c: New test.
18974 * testsuite/libgomp.c/pr26943-2.c: New test.
18975 * testsuite/libgomp.c/pr26943-3.c: New test.
18976 * testsuite/libgomp.c/pr26943-4.c: New test.
18977 * testsuite/libgomp.c++/pr27337.C: Remove barrier.
18978 * testsuite/libgomp.c++/pr26943.C: New test.
18979
077b0dfb
JJ
189802006-05-02 Jakub Jelinek <jakub@redhat.com>
18981
18982 PR middle-end/27337
18983 * testsuite/libgomp.c++/pr27337.C: New test.
18984
91b6c26d
JJ
189852006-04-26 Jakub Jelinek <jakub@redhat.com>
18986
18987 PR c/26171
18988 * testsuite/libgomp.c/pr26171.c: New test.
18989
60e1758f
RH
189902006-04-25 Richard Henderson <rth@redhat.com>
18991
18992 PR libgomp/25865
18993 * configure.ac: Use GCC_CHECK_TLS.
18994 * acinclude.m4 (LIBGOMP_CHECK_TLS): Remove.
18995 * Makefile.in, aclocal.m4, configure: Regenerate.
18996
615baed7
MK
189972006-04-10 Matthias Klose <doko@debian.org>
18998
18999 * testsuite/lib/libgomp.exp (libgomp_init): Recognize multilib
19000 directory names containing underscores.
19001
fae2b46b
JJ
190022006-03-21 Jakub Jelinek <jakub@redhat.com>
19003
19004 PR c++/26691
19005 * testsuite/libgomp.c++/pr26691.C: New test.
19006
11a5f608
JJ
190072006-03-13 Jakub Jelinek <jakub@redhat.com>
19008
19009 * testsuite/libgomp.fortran/retval2.f90: New test.
19010
1799e5d5
RH
190112006-03-09 Diego Novillo <dnovillo@redhat.com>
19012
19013 * testsuite/libgomp.c++: New directory.
19014
d349482e
AT
190152006-02-25 Shantonu Sen <ssen@opendarwin.org>
19016
19017 * config/posix/sem.h: Define BROKEN_POSIX_SEMAPHORES functions.
19018 * config/posix/sem.c: Implement the above.
19019
190202006-02-25 Andreas Tobler <a.tobler@schweiz.ch>
19021
19022 * configure.ac (HAVE_BROKEN_POSIX_SEMAPHORES): Check for darwin and
19023 define HAVE_BROKEN_POSIX_SEMAPHORES.
19024 * configure: Rebuilt.
19025 * config.h.in: Rebuilt.
19026
124452c9
FXC
190272006-02-17 Francois-Xavier Coudert <coudert@clipper.ens.fr>
19028
19029 PR bootstrap/26161
19030 * configure.ac: Remove AC_CHECK_HEADER for pthread.h. Add comment
19031 for the other pthread check.
19032 * configure: Regenerate.
19033 * config.h.in: Regenerate.
19034
dd8d6dfe
JJ
190352006-02-15 Jakub Jelinek <jakub@redhat.com>
19036
19037 PR libgomp/25938
19038 PR libgomp/25984
19039 * Makefile.am (fincludedir): New variable.
19040 (nodist_include_HEADERS): Remove Fortran files.
19041 (nodist_finclude_HEADERS): New variable.
19042 * Makefile.in: Regenerated.
19043
6c7a4dfd
JJ
190442006-02-13 Jakub Jelinek <jakub@redhat.com>
19045
19046 * testsuite/libgomp.fortran/vla7.f90: Add -w to options.
19047 Remove tests for returning assumed character length arrays.
19048
5142e08b
RS
190492006-02-12 Roger Sayle <roger@eyesopen.com>
19050 John David Anglin <dave@hiauly1.hia.nrc.ca>
19051
19052 PR libgomp/25936
19053 * configure.tgt: Link against -lrt for sem_init on HPUX v11 systems.
a1daed2d 19054
5821fba8
UW
190552006-02-08 Ulrich Weigand <uweigand@de.ibm.com>
19056
19057 * testsuite/lib/libgomp-dg.exp: Load scanrtl.exp library.
19058
cb2bbc67
EB
190592006-02-07 Eric Botcazou <ebotcazou@libertysurf.fr>
19060
19061 * testsuite/lib/libgomp-dg.exp (libgomp_init): Compute multilib related
19062 part of LD_LIBRARY_PATH manually.
19063
f05ee80c
L
190642006-02-03 H.J. Lu <hongjiu.lu@intel.com>
19065
19066 PR libgomp/25852
19067 * testsuite/lib/libgomp-dg.exp (blddir): Set it in
19068 libgomp_init.
19069
03b8fe49
PB
190702005-01-25 Paolo Bonzini <bonzini@gnu.org>
19071
19072 PR libgomp/25884
f05ee80c
L
19073 * Makefile.am (omp.h, omp_lib.h, omp_lib.f90, libgomp_f.h): Remove.
19074 * configure.ac (PERL): Don't set.
19075 (gstdint.h, omp.h, omp_lib.h, omp_lib.f90, libgomp_f.h): Create here.
19076 (OMP_LOCK_SIZE, OMP_LOCK_ALIGN, OMP_LOCK_KIND, OMP_NEST_LOCK_SIZE,
19077 OMP_NEST_LOCK_ALIGN, OMP_NEST_LOCK_KIND): New substitutions.
19078 * omp.h.in: Wrap the new configure substitutions with @ characters.
19079 * omp_lib.h.in, omp_lib.f90.in, libgomp_f.h.in: Likewise.
19080 * aclocal.m4, configure, Makefile.in: Regenerate.
19081 * mkomp_h.pl: Delete.
03b8fe49 19082
18cbfd85
PB
190832005-01-24 Paolo Bonzini <bonzini@gnu.org>
19084
19085 PR libgomp/25259
19086 * configure.ac: Use GCC_HEADER_STDINT.
19087 * libgomp.h: Include gstdint.h.
19088 * libgomp_f.h.in: Don't include stdint.h or inttypes.h.
19089 * configure, Makefile.in, testsuite/Makefile.in, aclocal.m4: Rebuild.
19090
c41303c6
RH
190912006-01-24 Richard Henderson <rth@redhat.com>
19092
19093 PR libgomp/25942
19094 * configure.ac: Add AM_MAINTAINER_MODE.
19095 * Makefile.in, aclocal.m4, configure, testsuite/Makefile.in: Rebuild.
19096
149b9553
DN
190972006-01-24 Diego Novillo <dnovillo@redhat.com>
19098
19099 * Makefile.in: Regenerate.
19100 * testsuite/Makefile.in: Regenerate.
19101 * aclocal.m4: Regenerate.
19102
192a50ad
AT
191032006-01-23 Andreas Tobler <a.tobler@schweiz.ch>
19104
19105 * config/posix/proc.c: Conditional include of sys/loadavg.h for
19106 Solaris.
19107 * configure.ac: Add check for loadavg.h.
19108 (link_gomp): Adjust comment.
19109 * configure: Regenerate.
19110 * config.h.in: Regenerate.
19111
a55b8e18
SE
191122006-01-21 Steve Ellcey <sje@cup.hp.com>
19113
19114 PR libgomp/25877
19115 * configure.ac: Remove check for alloca.h.
19116 * configure: Regenerate.
19117 * config.h.in: Regenerate.
19118 * libgomp.h: define gomp_alloca to be __builtin_alloca.
19119 * team.c: Remove use of alloca.h.
19120 Call gomp_alloca instead of alloca.
19121
692eeb34
SE
191222006-01-20 Steve Ellcey <sje@cup.hp.com>
19123
19124 PR libgomp/25877
19125 * team.c: Add include of alloca.h.
19126 * configure.ac: Add check for alloca.h.
19127 * configure: Regenerate.
19128 * config.h.in: Regenerate.
19129
953ff289
DN
191302006-01-17 Jakub Jelinek <jakub@redhat.com>
19131
19132 PR fortran/25219
19133 * testsuite/libgomp.fortran/pr25219.f90: New test.
19134
191352005-12-05 Uros Bizjak <uros@kss-loka.si>
19136
19137 * testsuite/libgomp.c/pr24455.c, testsuite/libgomp.c/copyin-1.c,
19138 testsuite/libgomp.c/copyin-2.c, testsuite/libgomp.c/copyin-3.c,
19139 testsuite/libgomp.c++/copyin-1.C, testsuite/libgomp.c++/copyin-2.C,
19140 testsuite/libgomp.c++/ctor-5.C, testsuite/libgomp.c++/ctor-8.C,
19141 testsuite/libgomp.c++/ctor-9.C, testsuite/libgomp.c++/pr24455.C,
19142 testsuite/libgomp.fortran/threadprivate1.f90,
19143 testsuite/libgomp.fortran/threadprivate2.f90,
19144 testsuite/libgomp.fortran/threadprivate3.f90,
19145 testsuite/libgomp.fortran/appendix-a/a.22.7.f9,
19146 testsuite/libgomp.fortran/appendix-a/a.22.8.f9,
19147 testsuite/libgomp.fortran/omp_parse3.f90: Change required
19148 effective-target to TLS runtime.
19149
19150 * testsuite/libgomp.fortran/pr25162.f: Require
19151 effective-target TLS runtime.
19152
191532005-12-01 Jakub Jelinek <jakub@redhat.com>
19154
19155 * testsuite/libgomp.fortran/nestedfn2.f90: New test.
19156 * testsuite/libgomp.c/nestedfn-3.c: New test.
19157
191582005-11-30 Jakub Jelinek <jakub@redhat.com>
19159
19160 PR fortran/25162
19161 * testsuite/libgomp.fortran/pr25162.f: New test.
19162
191632005-11-28 Jakub Jelinek <jakub@redhat.com>
19164
19165 * config/posix/time.c (omp_get_wtime, omp_get_wtick): Fall back to
19166 CLOCK_REALTIME if clock_* (CLOCK_MONOTONIC, &ts) call failed.
19167
191682005-11-25 Jakub Jelinek <jakub@redhat.com>
19169
19170 * alloc.c, barrier.c, critical.c, env.c, error.c, fortran.c, iter.c,
19171 libgomp.h, libgomp_f.h.in, libgomp_g.h, loop.c, mkomp_h.pl, omp.h.in,
19172 omp_lib.f90.in, omp_lib.h.in, ordered.c, parallel.c, sections.c,
19173 single.c, team.c, work.c, config/linux/alpha/futex.h,
19174 config/linux/bar.c, config/linux/bar.h, config/linux/ia64/futex.h,
19175 config/linux/lock.c, config/linux/mutex.c, config/linux/mutex.h,
19176 config/linux/powerpc/futex.h, config/linux/s390/futex.h,
19177 config/linux/sem.c, config/linux/sem.h, config/linux/sparc/futex.h,
19178 config/linux/x86/futex.h, config/posix/bar.c, config/posix/bar.h,
19179 config/posix/lock.c, config/posix/mutex.h, config/posix/proc.c,
19180 config/posix/sem.c, config/posix/sem.h, config/posix/time.c: Update
19181 FSF address.
19182
191832005-11-18 Jakub Jelinek <jakub@redhat.com>
19184
19185 * Makefile.am: Move libgomp_f.h from nodist_include_HEADERS
19186 to nodist_noinst_HEADERS.
19187 * Makefile.in: Rebuilt.
19188
19189 * config/posix/omp-lock.h (omp_nest_lock_t): Change into struct,
19190 add integer count field.
19191 * config/posix/lock.c (omp_destroy_nest_lock): Adjust for
19192 omp_nest_lock_t type change.
19193 (omp_init_nest_lock): Likewise. Initialize count to 0.
19194 (omp_set_nest_lock): Adjust for omp_nest_lock_t type change.
19195 Increment count.
19196 (omp_unset_nest_lock): Adjust for omp_nest_lock_t type change.
19197 Decrement count.
19198 (omp_test_nest_lock): Adjust for omp_nest_lock_t type change.
19199 Increment count if successful and return the new nesting level.
19200 * config/linux/lock.c (omp_test_nest_lock): Return new nesting level.
19201 * omp_lib.f90.in (omp_test_lock): Fix LOCK argument type.
19202 * testsuite/libgomp.c/lib-1.c: New test.
19203 * testsuite/libgomp.fortran/lib1.f90: New test.
19204 * testsuite/libgomp.fortran/lib2.f: New test.
19205 * testsuite/libgomp.fortran/lib3.f: New test.
19206
192072005-11-17 Richard Henderson <rth@redhat.com>
19208
19209 PR 24845
19210 * Makefile.am (nodist_toolexeclib_HEADERS): New.
19211 * configure.ac (link_gomp): New. Substitute it.
19212 (AC_CONFIG_FILES): Add libgomp.spec.
19213 * libgomp.spec.in: New file.
19214 * Makefile.in, testsuite/Makefile.in, configure: Rebuild.
19215 * testsuite/lib/libgomp-dg.exp: Add -B${blddir}/ to flags.
19216
192172005-11-18 Jakub Jelinek <jakub@redhat.com>
19218
19219 * testsuite/libgomp.fortran/reduction1.f90: Adjust for
19220 reduction(-:var) behaving the same as reduction(+:var).
19221 * testsuite/libgomp.c/reduction-4.c: New test.
19222
192232005-11-15 Uros Bizjak <uros@kss-loka.si>
19224
19225 * testsuite/libgomp.c/pr24455-1.c, testsuite/libgomp.c/pr24455.c,
19226 testsuite/libgomp.c/copyin-1.c, testsuite/libgomp.c/copyin-2.c,
19227 testsuite/libgomp.c/copyin-3.c,
19228 testsuite/libgomp.c++/copyin-1.C, testsuite/libgomp.c++/copyin-2.C,
19229 testsuite/libgomp.c++/ctor-5.C, testsuite/libgomp.c++/ctor-8.C,
19230 testsuite/libgomp.c++/ctor-9.C, testsuite/libgomp.c++/pr24455-1.C,
19231 testsuite/libgomp.c++/pr24455.C,
19232 testsuite/libgomp.fortran/threadprivate1.f90,
19233 testsuite/libgomp.fortran/threadprivate2.f90,
19234 testsuite/libgomp.fortran/threadprivate3.f90,
19235 testsuite/libgomp.fortran/appendix-a/a.22.7.f9,
19236 testsuite/libgomp.fortran/appendix-a/a.22.8.f9,
19237 testsuite/libgomp.fortran/omp_parse3.f90: Require
19238 effective-target TLS.
19239
192402005-11-14 Diego Novillo <dnovillo@redhat.com>
19241
19242 * HEADER: Remove.
19243
192442005-11-13 Jakub Jelinek <jakub@redhat.com>
19245
19246 PR libgomp/24797
19247 * team.c (initialize_team): Pass NULL rather than free as
19248 pthread_key_create destructor. Initialize thread specific data
19249 pointer in initial thread to a static local variable rather than
19250 malloced memory.
19251
192522005-11-11 Uros Bizjak <uros@kss-loka.si>
19253
19254 * testsuite/lib/libgomp-dg.exp: Locate libgcc.a and append
19255 its location to ld_library_path.
19256
192572005-11-10 Diego Novillo <dnovillo@redhat.com>
19258
19259 * testsuite/libgomp.c/c.exp: Rename from dg.exp.
19260
192612005-11-10 Diego Novillo <dnovillo@redhat.com>
19262
19263 * testsuite/libgomp.c: Rename from libgomp.dg.
19264
192652005-11-09 Diego Novillo <dnovillo@redhat.com>
19266
19267 * testsuite/libgomp.c++/pr24455.C: Add copyin clause for
19268 threadprivate variable 'i'.
19269
192702005-11-09 Jakub Jelinek <jakub@redhat.com>
19271
19272 * config/linux/s390/futex.h: New file.
19273 * configure.tgt: Use it.
19274
19275 * testsuite/libgomp.fortran/omp_parse4.f90: Move n initialization
19276 before the parallel.
19277
192782005-11-08 Jakub Jelinek <jakub@redhat.com>
19279
19280 PR c++/24734
19281 * testsuite/libgomp.c++/master-1.C: New test.
19282
192832005-11-07 Jakub Jelinek <jakub@redhat.com>
19284
19285 * testsuite/libgomp.dg/copyin-3.c: New test.
19286
192872005-11-07 Jakub Jelinek <jakub@redhat.com>
19288
19289 * testsuite/libgomp.fortran/retval1.f90: New test.
19290 * testsuite/libgomp.fortran/vla7.f90: New test.
19291
192922005-11-06 Jakub Jelinek <jakub@redhat.com>
19293
19294 * testsuite/libgomp.fortran/vla2.f90: New test.
19295 * testsuite/libgomp.fortran/vla3.f90: New test.
19296 * testsuite/libgomp.fortran/vla4.f90: New test.
19297 * testsuite/libgomp.fortran/vla5.f90: New test.
19298 * testsuite/libgomp.fortran/vla6.f90: New test.
19299
193002005-11-01 Jakub Jelinek <jakub@redhat.com>
19301
19302 * config/linux/sparc/futex.h: New file.
19303 * configure.tgt: Use it.
19304 * testsuite/lib/libgomp-dg.exp: Use -mcpu=v9 for sparc testing.
19305
19306 * critical.c: Include stdlib.h.
19307 * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Avoid warnings about
19308 ignoring return value.
19309 * configure.ac: Don't put -Wc,-pthread into XCFLAGS until after
19310 LIBGOMP_CHECK_SYNC_BUILTINS check.
19311 * configure: Rebuilt.
19312
193132005-10-31 Jakub Jelinek <jakub@redhat.com>
19314
19315 * testsuite/libgomp.fortran/vla1.f90: New test.
19316
193172005-10-31 Richard Henderson <rth@redhat.com>
19318
19319 * testsuite/libgomp.fortran/character2.f90: Fix race condition
19320 setting 's' in different threads.
19321
193222005-10-31 Jakub Jelinek <jakub@redhat.com>
19323
19324 * libgomp.h (attribute_hidden, ialias): Define.
19325 * config/posix/proc.c (omp_get_num_procs): Add ialias.
19326 * config/posix/time.c (omp_get_wtime, omp_get_wtick): Likewise.
19327 * config/posix/lock.c (omp_init_lock, omp_init_nest_lock,
19328 omp_destroy_lock, omp_destroy_nest_lock, omp_set_lock,
19329 omp_set_nest_lock, omp_unset_lock, omp_unset_nest_lock,
19330 omp_test_lock, omp_test_nest_lock): Likewise.
19331 * config/linux/lock.c (omp_init_lock, omp_init_nest_lock,
19332 omp_destroy_lock, omp_destroy_nest_lock, omp_set_lock,
19333 omp_set_nest_lock, omp_unset_lock, omp_unset_nest_lock,
19334 omp_test_lock, omp_test_nest_lock): Likewise.
19335 * env.c (omp_set_dynamic, omp_set_nested, omp_set_num_threads,
19336 omp_get_dynamic, omp_get_nested): Likewise.
19337 * parallel.c (omp_get_num_threads, omp_get_max_threads,
19338 omp_get_thread_num, omp_in_parallel): Likewise.
19339 * fortran.c (ialias_redirect): Define.
19340 (omp_init_lock, omp_init_nest_lock, omp_destroy_lock,
19341 omp_destroy_nest_lock, omp_set_lock, omp_set_nest_lock,
19342 omp_unset_lock, omp_unset_nest_lock, omp_test_lock,
19343 omp_test_nest_lock, omp_set_dynamic, omp_set_nested,
19344 omp_set_num_threads, omp_get_dynamic, omp_get_nested,
19345 omp_in_parallel, omp_get_max_threads, omp_get_num_procs,
19346 omp_get_num_threads, omp_get_thread_num, omp_get_wtick,
19347 omp_get_wtime): Add ialias_redirect.
19348
193492005-10-30 Jakub Jelinek <jakub@redhat.com>
19350
19351 * fortran.c: Include stdlib.h.
19352
193532005-10-29 Jakub Jelinek <jakub@redhat.com>
19354
19355 * Makefile.am (env.o, env.lo): Depend on libgomp_f.h.
19356 * Makefile.in: Regenerated.
19357
193582005-10-28 Jakub Jelinek <jakub@redhat.com>
19359
19360 * mkomp_h.pl: Remove all -Wc, option prefixes in $COMPILE.
19361 * libgomp_f.h.in (omp_check_defines): New function.
19362 * env.c: Include libgomp_f.h.
19363 (initialize_env): Call omp_check_defines.
19364
19365 * testsuite/libgomp.dg/copyin-2.c: New test.
19366 * testsuite/libgomp.c++/copyin-2.C: New test.
19367 * testsuite/libgomp.fortran/threadprivate3.f90: New test.
19368
19369 * testsuite/libgomp.fortran/threadprivate2.f90: New test.
19370 * testsuite/libgomp.fortran/sharing2.f90: New test.
19371
19372 * testsuite/libgomp.dg/copyin-1.c: New test.
19373 * testsuite/libgomp.c++/copyin-1.C: New test.
19374
193752005-10-26 Jakub Jelinek <jakub@redhat.com>
19376
19377 * testsuite/libgomp.fortran/crayptr1.f90: New test.
19378
19379 * testsuite/libgomp.fortran/workshare1.f90: New test.
19380
19381 * libgomp.fortran/appendix-a/a.28.5.f90: Change into compile
19382 only test.
19383 * libgomp.fortran/sharing1.f90: New test.
19384
193852005-10-24 Jakub Jelinek <jakub@redhat.com>
19386
19387 PR c++/24502
19388 * testsuite/libgomp.c++/loop-7.C: New test.
19389
19390 * testsuite/libgomp.dg/nestedfn-2.c: New test.
19391
19392 * testsuite/libgomp.dg/nestedfn-1.c: New test.
19393 * testsuite/libgomp.fortran/reduction6.f90: New test.
19394 * testsuite/libgomp.fortran/nestedfn1.f90: New test.
19395
193962005-10-23 Richard Henderson <rth@redhat.com>
19397
19398 * testsuite/libgomp.c++/ctor-1.C: New.
19399 * testsuite/libgomp.c++/ctor-2.C: New.
19400 * testsuite/libgomp.c++/ctor-3.C: New.
19401 * testsuite/libgomp.c++/ctor-4.C: New.
19402 * testsuite/libgomp.c++/ctor-5.C: New.
19403 * testsuite/libgomp.c++/ctor-6.C: New.
19404 * testsuite/libgomp.c++/ctor-7.C: New.
19405 * testsuite/libgomp.c++/ctor-8.C: New.
19406 * testsuite/libgomp.c++/ctor-9.C: New.
19407
194082005-10-21 Diego Novillo <dnovillo@redhat.com>
19409
19410 PR 24455
19411 * testsuite/libgomp.c++/pr24455-1.C: New test.
19412 * testsuite/libgomp.c++/pr24455.C: New test.
19413 * testsuite/libgomp.dg/pr24455-1.c: New test.
19414 * testsuite/libgomp.dg/pr24455.c: New test.
19415
194162005-10-20 Richard Henderson <rth@redhat.com>
19417
19418 * testsuite/libgomp.c++/loop-6.C: New.
19419 * testsuite/libgomp.dg/loop-3.c: New.
19420
194212005-10-20 Jakub Jelinek <jakub@redhat.com>
19422
19423 * testsuite/libgomp.fortran/jacobi.f: Don't make i and j
19424 explicitly private.
19425 * testsuite/libgomp.fortran/omp_parse1.f90 (test_do): Make i
19426 explicitly shared.
19427
194282005-10-19 Diego Novillo <dnovillo@redhat.com>
19429
19430 * testsuite/libgomp.fortran/jacobi.f: New test.
19431
194322005-10-19 Richard Henderson <rth@redhat.com>
19433
19434 * configure.tgt (i?86-linux): Default to with_arch instead of
19435 CFLAGS. Add -mtune to match target_cpu.
19436 (x86_64-linux): Tune to i686.
19437
19438 * fortran.c (omp_test_nest_lock_): Fix typo.
19439
194402005-10-19 Jakub Jelinek <jakub@redhat.com>
19441
19442 * ordered.c (gomp_ordered_first, gomp_ordered_last, gomp_ordered_next,
19443 gomp_ordered_sync): Do nothing if team->nthreads == 1.
19444 * testsuite/libgomp.dg/ordered-3.c: New test.
19445
19446 * testsuite/libgomp.dg/appendix-a/a.18.1.c: Remove unconditional abort.
19447 Remove volatile keyword.
19448
19449 * testsuite/libgomp.fortran/appendix-a/a.19.1.f90: Reorder variables
19450 in COMMON block to avoid warnings on 64-bit targets.
19451
194522005-10-18 Diego Novillo <dnovillo@redhat.com>
19453
19454 * testsuite/libgomp.dg/shared-3.c: New test.
19455
194562005-10-18 Jakub Jelinek <jakub@redhat.com>
19457
19458 * testsuite/libgomp.fortran/appendix-a/a.31.3.f90: Removed.
19459 * testsuite/libgomp.fortran/reduction5.f90: New test.
19460
194612005-10-18 Jakub Jelinek <jakub@redhat.com>
19462
19463 * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: Add -ffixed-form to
19464 dg-options.
19465 * testsuite/libgomp.fortran/appendix-a/a.18.1.f90: Likewise. Enable
19466 flush loop now that __sync_synchronize has proper memory barrier.
19467 * testsuite/libgomp.fortran/appendix-a/a.3.1.f90: Fix a typo.
19468 Add -ffixed-form to dg-options.
19469
194702005-10-17 Diego Novillo <dnovillo@redhat.com>
19471
19472 * testsuite/libgomp.fortran/fortran.exp: Also gather tests
19473 from subdirectories.
19474 * testsuite/libgomp.fortran/appendix-a/a.15.1.f90: New test.
19475 * testsuite/libgomp.fortran/appendix-a/a.16.1.f90: New test.
19476 * testsuite/libgomp.fortran/appendix-a/a.18.1.f90: New test.
19477 * testsuite/libgomp.fortran/appendix-a/a.19.1.f90: New test.
19478 * testsuite/libgomp.fortran/appendix-a/a.2.1.f90: New test.
19479 * testsuite/libgomp.fortran/appendix-a/a.21.1.f90: New test.
19480 * testsuite/libgomp.fortran/appendix-a/a.22.7.f90: New test.
19481 * testsuite/libgomp.fortran/appendix-a/a.22.8.f90: New test.
19482 * testsuite/libgomp.fortran/appendix-a/a.26.1.f90: New test.
19483 * testsuite/libgomp.fortran/appendix-a/a.28.1.f90: New test.
19484 * testsuite/libgomp.fortran/appendix-a/a.28.2.f90: New test.
19485 * testsuite/libgomp.fortran/appendix-a/a.28.3.f90: New test.
19486 * testsuite/libgomp.fortran/appendix-a/a.28.4.f90: New test.
19487 * testsuite/libgomp.fortran/appendix-a/a.28.5.f90: New test.
19488 * testsuite/libgomp.fortran/appendix-a/a.3.1.f90: New test.
19489 * testsuite/libgomp.fortran/appendix-a/a.31.3.f90: New test.
19490 * testsuite/libgomp.fortran/appendix-a/a.31.4.f90: New test.
19491 * testsuite/libgomp.fortran/appendix-a/a.31.5.f90: New test.
19492 * testsuite/libgomp.fortran/appendix-a/a.33.3.f90: New test.
19493 * testsuite/libgomp.fortran/appendix-a/a.38.1.f90: New test.
19494 * testsuite/libgomp.fortran/appendix-a/a.39.1.f90: New test.
19495 * testsuite/libgomp.fortran/appendix-a/a.4.1.f90: New test.
19496 * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: New test.
19497 * testsuite/libgomp.fortran/appendix-a/a.5.1.f90: New test.
19498 * testsuite/libgomp.fortran/appendix-a/a10.1.f90: New test.
19499
195002005-10-17 Jakub Jelinek <jakub@redhat.com>
19501
19502 * testsuite/libgomp.dg/dg.exp: Only unset lang_* if
19503 lang_library_path exists. Use find instead of glob to gather tests.
19504 * testsuite/libgomp.dg/appendix-a/appendix-a.exp: Removed.
19505
195062005-10-17 Diego Novillo <dnovillo@redhat.com>
19507
19508 * testsuite/libgomp.dg/appendix-a/a.15.1.c: New test.
19509 * testsuite/libgomp.dg/appendix-a/a.16.1.c: New test.
19510 * testsuite/libgomp.dg/appendix-a/a.18.1.c: New test.
19511 * testsuite/libgomp.dg/appendix-a/a.19.1.c: New test.
19512 * testsuite/libgomp.dg/appendix-a/a.2.1.c: New test.
19513 * testsuite/libgomp.dg/appendix-a/a.21.1.c: New test.
19514 * testsuite/libgomp.dg/appendix-a/a.26.1.c: New test.
19515 * testsuite/libgomp.dg/appendix-a/a.29.1.c: New test.
19516 * testsuite/libgomp.dg/appendix-a/a.3.1.c: New test.
19517 * testsuite/libgomp.dg/appendix-a/a.39.1.c: New test.
19518 * testsuite/libgomp.dg/appendix-a/a.4.1.c: New test.
19519 * testsuite/libgomp.dg/appendix-a/a.5.1.c: New test.
19520 * testsuite/libgomp.dg/appendix-a/appendix-a.exp: New file.
19521
195222005-10-15 Jakub Jelinek <jakub@redhat.com>
19523
19524 * testsuite/libgomp.dg/vla-1.c: New test.
19525
19526 * testsuite/libgomp.fortran/reference2.f90: New test.
19527
19528 * testsuite/libgomp.fortran/character2.f90: Remove explicit
19529 declaration of omp_get_thread_num.
19530 * testsuite/libgomp.fortran/threadprivate1.f90: Likewise. Add
19531 use omp_lib.
19532
19533 * testsuite/libgomp.fortran/reduction1.f90: New test.
19534 * testsuite/libgomp.fortran/reduction2.f90: New test.
19535 * testsuite/libgomp.fortran/reduction3.f90: New test.
19536 * testsuite/libgomp.fortran/reduction4.f90: New test.
19537
195382005-10-13 Richard Henderson <rth@redhat.com>
19539
19540 * Makefile.am (libgomp_la_SOURCES): Add bar.c.
19541 * Makefile.in: Regenerate.
19542 * barrier.c (GOMP_barrier): Use gomp_barrier_wait.
19543 * libgomp.h: Include bar.h.
19544 (struct gomp_barrier): Remove.
19545 (struct gomp_team): Add barrier. Replace master_barrier with
19546 master_release. Replace threads with ordered_release.
19547 (struct gomp_thread): Replace barrier with release.
19548 * ordered.c (gomp_ordered_first): Update for ordered_release change.
19549 (gomp_ordered_last, gomp_ordered_next, gomp_ordered_static_init,
19550 gomp_ordered_static_next, gomp_ordered_sync): Likewise.
19551 * single.c (GOMP_single_copy_start): Use gomp_barrier_wait.
19552 (GOMP_single_copy_end): Likewise.
19553 * team.c (gomp_threads_dock): New.
19554 (gomp_barrier_init, gomp_barrier_destroy): Remove.
19555 (gomp_thread_start): Use gomp_barrier_wait.
19556 (new_team, free_team): Update for gomp_team changes.
19557 (gomp_team_start): Use gomp_barrier_wait and gomp_barrier_reinit.
19558 (gomp_team_end): Use gomp_barrier_wait.
19559 (initialize_team): Update for gomp_thread changes.
19560 * work.c (gomp_work_share_end): Use gomp_barrier_wait_start.
19561 (gomp_work_share_end_nowait): Use atomic ops when available.
19562 * config/linux/bar.c, config/linux/bar.h: New files.
19563 * config/posix/bar.c, config/posix/bar.h: New files.
19564
195652005-10-13 Jakub Jelinek <jakub@redhat.com>
19566
19567 * single.c (GOMP_single_copy_end): Don't segfault if team is NULL.
19568 * testsuite/libgomp.dg/single-2.c: New test.
19569
19570 * testsuite/libgomp.dg/dg.exp (lang_library_path, lang_test_file,
19571 lang_link_flags): Unset, so that they aren't inherited from previously
19572 sourced *.exp.
19573
19574 * testsuite/libgomp.fortran/threadprivate1.f90: New test.
19575
195762005-10-12 Richard Henderson <rth@redhat.com>
19577
19578 * testsuite/lib/libgomp-dg.exp: Set blddir at toplevel.
19579 (libgomp_init): Use lang_test_file, lang_library_path, and
19580 lang_link_flags, set by the subdirectory files. Add -fopenmp here.
19581
19582 * testsuite/libgomp.fortran/fortran.exp (lang_library_path): New.
19583 (lang_test_file, lang_link_flags): New.
19584 (DEFAULT_FFLAGS, ALWAYS_CFLAGS, multilibs, blddir): Remove.
19585
19586 * testsuite/libgomp.c++/c++.exp, testsuite/libgomp.c++/loop-1.C,
19587 testsuite/libgomp.c++/loop-2.C, testsuite/libgomp.c++/loop-3.C,
19588 testsuite/libgomp.c++/loop-4.C, testsuite/libgomp.c++/nested-1.C,
19589 testsuite/libgomp.c++/parallel-1.C,
19590 testsuite/libgomp.c++/reduction-1.C,
19591 testsuite/libgomp.c++/reduction-2.C,
19592 testsuite/libgomp.c++/reduction-3.C,
19593 testsuite/libgomp.c++/sections-1.C, testsuite/libgomp.c++/shared-1.C,
19594 testsuite/libgomp.c++/shared-2.C, testsuite/libgomp.c++/single-1.C,
19595 testsuite/libgomp.c++/single-2.C, testsuite/libgomp.c++/single-3.C:
19596 New files, largely cribbed from the C testsuite.
19597
195982005-10-12 Jakub Jelinek <jakub@redhat.com>
19599
19600 * testsuite/libgomp.fortran/character1.f90: New test.
19601 * testsuite/libgomp.fortran/character2.f90: New test.
19602
19603 * testsuite/libgomp.dg/nested-1.c: New test.
19604 * testsuite/libgomp.dg/nested-2.c: New test.
19605 * testsuite/libgomp.fortran/do1.f90: New test.
19606 * testsuite/libgomp.fortran/do2.f90: New test.
19607
19608 * testsuite/libgomp.fortran/reference1.f90: New test.
19609
196102005-10-11 Jakub Jelinek <jakub@redhat.com>
19611
19612 * testsuite/libgomp.dg/reduction-1.c: New test.
19613 * testsuite/libgomp.dg/reduction-2.c: New test.
19614 * testsuite/libgomp.dg/reduction-3.c: New test.
19615
196162005-10-10 Jakub Jelinek <jakub@redhat.com>
19617
19618 * testsuite/libgomp.dg/atomic-1.c: New test.
19619 * testsuite/libgomp.dg/atomic-2.c: New test.
19620
196212005-10-09 Richard Henderson <rth@redhat.com>
19622
19623 * critical.c (atomic_lock): New.
19624 (initialize_critical): Initialize it.
19625 (GOMP_atomic_start, GOMP_atomic_end): New.
19626 * libgomp.map: Export them.
19627 * libgomp_g.h: Declare them.
19628
19629 * testsuite/libgomp.dg/atomic-10.c: Move from gcc testsuite.
19630
196312005-10-02 Richard Henderson <rth@redhat.com>
19632
19633 * configure.ac: Move save_CFLAGS hack earlier. Append -Wall/-Werror
19634 to XCFLAGS instead of CFLAGS.
19635
196362005-09-30 Richard Henderson <rth@redhat.com>
19637
19638 * configure.ac: Determine whether -pthread or -lpthread is needed.
19639 * Makefile.am (libgomp_la_LDFLAGS): Remove explicit -lpthread.
93d90219 19640 * Makefile.in, configure: Rebuild.
953ff289
DN
19641
196422005-09-28 Richard Henderson <rth@redhat.com>
19643
19644 * testsuite/libgomp.dg/omp-loop03.c: Fix return code.
19645 * testsuite/libgomp.dg/omp-single-3.c: New test.
19646
196472005-09-28 Diego Novillo <dnovillo@redhat.com>
19648
19649 * testsuite/libgomp.dg/omp-single-2.c: New test.
19650 * testsuite/libgomp.dg/shared-2.c: Fix return code.
19651
196522005-09-27 Richard Henderson <rth@redhat.com>
19653
19654 * testsuite/libgomp.dg/omp-loop03.c: Add initial barrier.
19655 * testsuite/libgomp.dg/omp-parallel-for.c: Specify static schedule.
19656
196572005-09-27 Jakub Jelinek <jakub@redhat.com>
19658
19659 * testsuite/libgomp.dg/omp-loop03.c: New test.
19660
196612005-09-27 Diego Novillo <dnovillo@redhat.com>
19662
19663 * testsuite/libgomp.dg/omp-parallel-for.c: New test.
19664
196652005-09-27 Diego Novillo <dnovillo@redhat.com>
19666
19667 * testsuite/libgomp.dg/omp-single-1.c: New test.
19668 * testsuite/libgomp.dg/shared-1.c: Return 0.
19669 Add prototype for abort.
19670 * testsuite/libgomp.dg/shared-2.c: Likewise.
19671
196722005-09-26 Jakub Jelinek <jakub@redhat.com>
19673
19674 * testsuite/libgomp.fortran/omp_parse3.f90: Fix non-conforming
19675 constructs.
19676
196772005-09-26 Diego Novillo <dnovillo@redhat.com>
19678
19679 * testsuite/libgomp.dg/shared-1.c: New test.
19680 * testsuite/libgomp.dg/shared-2.c: New test.
19681
196822005-09-24 Richard Henderson <rth@redhat.com>
19683
19684 * testsuite/libgomp.dg/omp_workshare3.c: Mark dg-error.
19685
196862005-09-24 Richard Henderson <rth@redhat.com>
19687
19688 * iter.c (gomp_iter_static_next): Round up when computing number
19689 of iterations. Don't bother distributing a remainder equally.
19690
19691 * testsuite/libgomp.dg/omp-loop01.c (main1): Rename from main.
19692 Don't call srand. Zero b before testing.
19693 (main): New.
19694
196952005-09-24 Jakub Jelinek <jakub@redhat.com>
19696
19697 * testsuite/libgomp.fortran/omp_atomic1.f90: New test.
19698 * testsuite/libgomp.fortran/omp_atomic2.f90: New test.
19699
197002005-09-23 Jakub Jelinek <jakub@redhat.com>
19701
19702 * testsuite/libgomp.fortran/omp_parse1.f90: Add a test for !$omp do
19703 without !$omp end do, followed immediately by subroutine end.
19704
197052005-09-23 Diego Novillo <dnovillo@redhat.com>
19706
19707 * testsuite/libgomp.dg/omp-parallel-if.c: New test.
19708
197092005-09-22 Richard Henderson <rth@redhat.com>
19710
19711 * critical.c (GOMP_critical_name_start): Change argument to void**.
19712 Reuse the pointer space if the mutex fits.
19713 (GOMP_critical_name_end): Likewise.
19714 (initialize_critical): Don't define if GOMP_MUTEX_INIT_0.
19715 * libgomp_g.h (GOMP_critical_name_start): Update decl.
19716 (GOMP_critical_name_end): Likewise.
19717 * config/linux/mutex.h (GOMP_MUTEX_INIT_0): New.
19718 * config/posix/mutex.h (GOMP_MUTEX_INIT_0): New.
19719
197202005-09-20 Richard Henderson <rth@redhat.com>
19721
19722 * critical.c (GOMP_critical_name_start, GOMP_critical_name_end): New.
19723 (create_lock_lock): New.
19724 (initialize_critical): Initialize it.
19725 * libgomp.map (GOMP_critical_name_start, GOMP_critical_name_end): New.
19726 * libgomp_g.h (GOMP_ordered_start, GOMP_ordered_end): Declare.
19727
197282005-09-20 Diego Novillo <dnovillo@redhat.com>
19729
19730 * testsuite/libgom.dg/omp-loop01.c: Include stdio.h.
19731
197322005-09-20 Diego Novillo <dnovillo@redhat.com>
19733
19734 * testsuite/libgomp.dg/omp-loop01.c: New test.
19735 * testsuite/libgomp.dg/omp-loop02.c: New test.
19736
197372005-09-20 Jakub Jelinek <jakub@redhat.com>
19738
19739 * configure.ac (AC_PROG_FC): Add.
19740 (USE_FORTRAN): New automake conditional.
19741 * configure: Rebuilt.
19742 * Makefile.am (libgomp_la_SOURCES): Add fortran.c.
19743 (nodist_include_HEADERS): Add omp_lib.h, omp_lib.f90 and libgomp_f.h.
19744 If USE_FORTRAN, add also omp_lib.mod and omp_lib_kinds.mod.
19745 Add rules to build them.
19746 * Makefile.in: Rebuilt.
19747 * mkomp_h.pl: Compute and replace also OMP_LOCK_KIND and
19748 OMP_NEST_LOCK_KIND.
19749 * libgomp.map: Add Fortran wrappers.
19750 * libgomp_f.h.in: New file.
19751 * omp_lib.h.in: New file.
19752 * omp_lib.f90.in: New file.
19753 * fortran.c: New file.
19754 * testsuite/lib/libgomp-dg.exp: Load a few more .exp files.
19755 Append libgfortran directory to LD_LIBRARY_PATH if it exists.
19756 Add -Lpath_to_libgfortran and -lgfortran -lgfortranbegin if
19757 libgfortran has been built.
19758 * testsuite/libgomp.fortran/fortran.exp: New file.
19759 * testsuite/libgomp.fortran/omp_cond1.f: New test.
19760 * testsuite/libgomp.fortran/omp_cond2.f: New test.
19761 * testsuite/libgomp.fortran/omp_cond3.F90: New test.
19762 * testsuite/libgomp.fortran/omp_cond4.F90: New test.
19763 * testsuite/libgomp.fortran/omp_hello.f: New test.
19764 * testsuite/libgomp.fortran/omp_orphan.f: New test.
19765 * testsuite/libgomp.fortran/omp_parse1.f90: New test.
19766 * testsuite/libgomp.fortran/omp_parse2.f90: New test.
19767 * testsuite/libgomp.fortran/omp_parse3.f90: New test.
19768 * testsuite/libgomp.fortran/omp_parse4.f90: New test.
19769 * testsuite/libgomp.fortran/omp_reduction.f: New test.
19770 * testsuite/libgomp.fortran/omp_workshare1.f: New test.
19771 * testsuite/libgomp.fortran/omp_workshare2.f: New test.
19772
197732005-08-30 Richard Henderson <rth@redhat.com>
19774
19775 * loop.c (GOMP_loop_static_start): Provide fallback wrapper
19776 function for when aliases are not usable.
19777 (GOMP_loop_dynamic_start, GOMP_loop_guided_start,
19778 GOMP_loop_ordered_static_start, GOMP_loop_ordered_dynamic_start,
19779 GOMP_loop_ordered_guided_start, GOMP_loop_static_next,
19780 GOMP_loop_dynamic_next, GOMP_loop_guided_next,
19781 GOMP_loop_ordered_static_next, GOMP_loop_ordered_dynamic_next,
19782 GOMP_loop_ordered_guided_next): Likewise.
19783 * ordered.c (GOMP_ordered_start): Likewise.
19784
197852005-08-01 Diego Novillo <dnovillo@redhat.com>
19786
19787 * testsuite/libgomp.dg/dg.exp: Use -O2 for now.
19788 * testsuite/libgomp.dg/omp_hello.c: Fix return code
19789 * testsuite/libgomp.dg/omp_matvec.c: Likewise.
19790 * testsuite/libgomp.dg/omp_orphan.c: Likewise
19791 * testsuite/libgomp.dg/omp_reduction.c: Likewise
19792 * testsuite/libgomp.dg/omp_workshare1.c: Likewise
19793 * testsuite/libgomp.dg/omp_workshare2.c: Likewise
19794 * testsuite/libgomp.dg/omp_workshare3.c: Likewise
19795 * testsuite/libgomp.dg/omp_workshare4.c: Likewise
19796
197972005-07-07 Eric Christopher <echristo@redhat.com>
19798 Diego Novillo <dnovillo@redhat.com>
19799
19800 * testsuite/libgomp.dg/dg.exp: Add -fopenmp to DEFAULT_CFLAGS.
19801 * testsuite/libgomp.dg/omp_hello.c: Add standard includes, fix
19802 up code.
19803 * testsuite/libgomp.dg/omp_matvec.c: Ditto.
19804 * testsuite/libgomp.dg/omp_orphan.c: Ditto.
19805 * testsuite/libgomp.dg/omp_reduction.c: Ditto.
19806 * testsuite/libgomp.dg/omp_workshare1.c: Ditto.
19807 * testsuite/libgomp.dg/omp_workshare2.c: Ditto.
19808 * testsuite/libgomp.dg/omp_workshare3.c: Ditto.
19809 * testsuite/libgomp.dg/omp_workshare4.c: Ditto.
19810
198112005-06-13 Diego Novillo <dnovillo@redhat.com>
19812
19813 * TOPLEVEL.patch: Remove.
19814
198152005-05-16 Richard Henderson <rth@redhat.com>
19816
19817 * configure.ac: Test for clock_gettime.
19818 * config.h.in, configure: Rebuild.
19819 * config/posix/time.c: Use recommended TIME_WITH_SYS_TIME pattern.
19820 (omp_get_wtime): Use clock_gettime if available.
19821 (omp_get_wtick): Use clock_getres if available.
19822
198232005-05-11 Richard Henderson <rth@redhat.com>
19824
19825 * config/linux/ia64/futex.h: New file.
19826 * configure.tgt: Use it.
19827
19828 * team.c (gomp_barrier_init, gomp_barrier_destroy): Mark inline.
19829
198302005-05-07 Richard Henderson <rth@redhat.com>
19831
19832 * config/linux/powerpc/futex.h: New file.
19833 * configure.tgt: Use it.
19834
19835 * config/linux/i486/futex.h: Merge ...
19836 * config/linux/x86_64/futex.h: ... into ...
19837 * config/linux/x86/futex.h: ... here.
19838 * configure.tgt: Update to match.
19839
198402005-05-06 Richard Henderson <rth@redhat.com>
19841
19842 * config/linux/alpha/futex.h: Conditionally define SYS_futex.
19843 * config/linux/i486/futex.h: Likewise.
19844 * config/linux/x86_64/futex.h: Likewise.
19845
19846 * config/linux/lock.c: New file.
19847 * config/linux/omp-lock.h: New file.
19848
19849 * critical.c, env.h: Don't include omp.h
19850 * config/posix/lock.c: Include libgomp.h instead of omp.h.
19851 * config/posix/time.c: Likewise.
19852 * config/posix/omp-lock.h: New file.
19853 * libgomp.h: Include omp-lock.h and omp.h.
19854 * Makefile.am (nodist_include_HEADERS): New.
19855 (omp.h): New rule.
19856 * configure.ac (PERL): New.
19857 * mkomp_h.pl: New file.
19858 * omp.h.in: Rename from omp.h; replace omp_lock_t and omp_nest_lock_t
19859 with templates.
19860 * Makefile.in, configure, testsuite/Makefile.in: Rebuild.
19861
19862 * testsuite/lib/libgomp-dg.exp (libgomp_init): Add include into
19863 build directory. Re-add -march=i486 hack.
19864
19865 * testsuite/lib/libgomp-dg.exp (libgomp_compile_flags): Remove.
19866 (libgomp_link_flags): Remove.
19867 (libgomp_initialized): Remove.
19868 (libgomp_init): Don't protect from reinitialization. Copy code
19869 from libstdc++ for getting the multilib set correctly.
19870
198712005-05-05 Richard Henderson <rth@redhat.com>
19872
19873 * config/linux/alpha/futex.h: New file.
19874 * configure.tgt (alpha*-*-linux*): Use it.
19875
19876 * config/posix/mutex.c: New file.
19877 * config/posix/sem.c: Use libgomp.h.
19878
19879 * configure.tgt (x86_64-linux): Also test CC for -m32.
19880 * config/linux/x86_64/futex.h (futex_wait): Fix r10 usage.
19881
a1daed2d 19882 * testsuite/lib/libgomp-dg.exp (libgomp_link_flags): Add /
953ff289
DN
19883 after $gccpath.
19884
19885 * Makefile.am (SUBDIRS): New.
19886 (libgomp_la_LDFLAGS): Add -lpthread.
19887 * configure.ac (AM_INIT_AUTOMAKE): Enable dependencies.
19888 * Makefile.in, aclocal.m4, config.h.in, configure: Rebuild.
19889
19890 * libgomp_g.h: New file.
19891 * libgomp.h: Split out all public declarations to libgomp_g.h.
19892 Use pragma GCC visibility instead of ATTRIBUTE_HIDDEN.
19893 * config/linux/mutex.h: Remove ATTRIBUTE_HIDDEN.
19894 * config/linux/sem.h: Likewise.
19895 * config/posix/sem.h: Likewise.
19896
19897 * Makefile.am (AM_LDFLAGS): New.
19898 (libgomp_version_script): Split out from ...
19899 (libgomp_la_LDFLAGS): ... here.
19900 (libgomp_version_info): New.
19901 * acinclude.m4 (LIBGOMP_CHECK_TLS): Use LIBGOMP_ENABLE.
19902 (LIBGOMP_ENABLE): New.
19903 (LIBGOMP_CHECK_LINKER_FEATURES): New.
19904 (LIBGOMP_ENABLE_SYMVERS): New.
19905 * configure.ac (AC_INIT): Version 1.0.
19906 (enable-version-specific-runtime-libs): Use LIBGOMP_ENABLE.
19907 (enable-linux-futex): Likewise. Rename from enable-futex.
19908 (libtool_VERSION): New.
19909 (LIBGOMP_ENABLE_SYMVERS): Use it.
19910 * configure.tgt: Check with_gnu_ld wrt have_tls optimizations.
19911 * Makefile.in, aclocal.m4, configure: Rebuild.
19912
19913 * config/linux/mutex.c: Include libgomp.h instead of mutex.h.
19914 (gomp_mutex_unlock_slow): Fix typo.
19915 * config/linux/sem.c: Similarly.
19916 (gomp_sem_post_slow): Fix typo.
19917 * config/linux/sem.h (gomp_sem_post_slow): Fix typo.
19918 * config/linux/i486/futex.h: Remove USE_LINUX_SYSENTER code.
19919 [__PIC__] (sys_futex0): Don't use tmp output in asm.
19920
19921 * Makefile.am (AM_CFLAGS): Expand with XCFLAGS.
19922 (libgomp_la_LDFLAGS): Add top_srcdir to path.
19923 * acinclude.m4: Copy libtool.m4 stuff from libgfortran.
19924 * configure.ac: Check for getloadavg. Substitute XCFLAGS and
19925 XLDFLAGS. Add XCFLAGS to CFLAGS around LIBGOMP_CHECK_SYNC_BUILTINS.
19926 * configure.tgt: Set XCFLAGS and XLDFLAGS instead of CFLAGS and
19927 LDFLAGS. Pull enable_futex check to top-level.
19928 * libgomp.h: Fix sem.h and mutex.h includes. Define ATTRIBUTE_HIDDEN.
19929 * Makefile.in, aclocal.m4, config.h.in, configure: Regenerate.
19930
19931 First attempt at real configury.
19932 * Makefile, config.h: Remove file.
19933 * Makefile.am, Makefile.in: New file.
19934 * acinclude.m4 aclocal.m4: New file.
19935 * configure.ac, configure.tgt, configure: New file.
19936
19937 * config/posix/lock.c: Rename from sys-lock.c.
19938 * config/posix/mutex.h: Rename from sys-mutex.h.
19939 * config/posix/sem.c: Rename from sys-sem.c.
19940 * config/posix/sem.h: Rename from sys-sem.h.
19941 * config/posix/proc.c: Rename from sys-proc.c.
19942 * config/posix/time.c: Rename from sys-proc.c.
19943
19944 * config/linux/mutex.c: New file.
19945 * config/linux/mutex.h: New file.
19946 * config/linux/sem.c: New file.
19947 * config/linux/sem.h: New file.
19948 * config/linux/i486/futex.h: New file.
19949 * config/linux/x86_64/futex.h: New file.
19950
199512005-05-04 Richard Henderson <rth@redhat.com>
19952
19953 * iter.c (gomp_iter_dynamic_next, gomp_iter_guided_next): New.
19954 * libgomp.h: Declare them.
19955 * loop.c (gomp_loop_dynamic_start, gomp_loop_guided_start,
19956 gomp_loop_dynamic_next, gomp_loop_guided_next): Use them.
19957
199582005-05-04 Richard Henderson <rth@redhat.com>
19959
19960 * libgomp-1 code drop
19961
199622005-05-04 Richard Henderson <rth@redhat.com>
19963
19964 * iter.c (gomp_iter_static_next): Return tri-state on 0.
19965 * ordered.c (gomp_ordered_static_next): Remove not_last argument.
19966 * libgomp.h (struct gomp_team_state): Make static_trip unsigned.
19967 (gomp_iter_static_next): Update.
19968 (gomp_ordered_static_next): Update.
19969 * loop.c (gomp_loop_static_start): Update for gomp_iter_static_next.
19970 (gomp_loop_ordered_static_start): Likewise. Exit early for a
19971 totally empty range.
19972 (gomp_loop_ordered_static_next): Refine test for calling
19973 gomp_ordered_static_next.
19974 * testsuite/ordered-1.c: Add case for more threads than iterations.
19975
19976 * iter.c (gomp_iter_runtime_next_locked): Remove.
19977 * loop.c (gomp_loop_static_start, gomp_loop_dynamic_start,
a1daed2d 19978 gomp_loop_guided_start, gomp_loop_ordered_static_start,
953ff289
DN
19979 gomp_loop_ordered_dynamic_start, gomp_loop_ordered_guided_start,
19980 gomp_loop_static_next, gomp_loop_dynamic_next, gomp_loop_guided_next,
19981 gomp_loop_ordered_static_next, gomp_loop_ordered_dynamic_next,
19982 gomp_loop_ordered_guided_next): Downcase name, make static, add
19983 an external alias with the old name.
19984 (GOMP_loop_runtime_start, GOMP_loop_ordered_runtime_start,
19985 GOMP_loop_runtime_next, GOMP_loop_ordered_runtime_next): Use a
19986 switch and call one of the above static functions.
19987 * libgomp.h: Update.
19988
19989 * work.c (gomp_work_share_start): Lock the mutex for !first too.
19990 * loop.c (GOMP_loop_static_start, GOMP_loop_dynamic_start,
19991 GOMP_loop_guided_start, GOMP_loop_runtime_start,
19992 GOMP_loop_ordered_static_start, GOMP_loop_ordered_dynamic_start,
19993 GOMP_loop_ordered_guided_start): Update to match.
19994 * sections.c (GOMP_sections_start): Likewise.
19995 * single.c (GOMP_single_start, GOMP_single_copy_start): Likewise.
19996
19997 * ordered.c (gomp_ordered_first, gomp_ordered_last, gomp_ordered_next,
19998 gomp_ordered_static_init, gomp_ordered_static_next): Rename s/_loop//.
19999 Use bounds check instead of modulus.
20000 (gomp_ordered_sync): Split out of GOMP_ordered_start.
20001 (gomp_ordered_last): Don't sync with ordered_owner here.
20002 (gomp_ordered_next): Likewise.
20003 (gomp_ordered_static_loop_next): Likewise.
20004 * loop.c, libgomp.h: Update to match.
20005
20006 * libgomp.h (GOMP_barrier): Declare.
20007
20008 * testsuite/barrier-1.c: New file.
20009 * testsuite/critical-1.c: New file.
20010 * testsuite/ordered-2.c: New file.
20011 * testsuite/ordered-1.c: New file.
20012 * testsuite/sections-1.c: New file.
20013 * testsuite/single-1.c: New file.
20014 * testsuite/Makefile (TESTS): Add them.
20015
200162005-05-04 Richard Henderson <rth@redhat.com>
20017
20018 * libgomp.h (struct gomp_work_share): Add ordered_owner.
20019 * loop.c (GOMP_loop_static_start): If not the startup thread,
20020 acquire the mutex to wait for initialization complete.
20021 (GOMP_loop_ordered_static_start): Likewise.
20022 (GOMP_loop_ordered_runtime_start): Likewise.
20023 (GOMP_loop_ordered_static_first): Remove.
20024 (GOMP_loop_ordered_dynamic_first): Remove.
20025 (GOMP_loop_ordered_guided_first): Remove.
20026 (GOMP_loop_ordered_runtime_first): Remove.
20027 * ordered.c (gomp_ordered_loop_first): Post to own release when
20028 we're the first thread.
20029 (gomp_ordered_loop_last): Wait on release if not owner.
20030 (gomp_ordered_loop_next): Likewise.
20031 (gomp_ordered_static_loop_init): New.
20032 (gomp_ordered_static_loop_next): Use ordered_owner.
20033 (GOMP_ordered_start): Likewise.
20034 * work.c (gomp_new_work_share): Initialize ordered_owner.
20035
200362005-05-03 Richard Henderson <rth@redhat.com>
20037
20038 * Makefile (OPT): New.
20039 (CFLAGS): Use it.
20040
20041 * loop.c (GOMP_loop_end, GOMP_loop_end_nowait): New.
20042 * sections.c (GOMP_sections_end, GOMP_sections_end_nowait): New.
20043 * libgomp.h, libgomp.map, NOTES: Update to match.
20044
20045 * team.c (struct gomp_thread_start_data): Remove ts, fn, data.
20046 Add initialized and thr members.
20047 (gomp_thread_start): Pause when initially spawned to wait for
20048 the whole team to be created.
20049 (gomp_team_start): Release team members at the end.
20050
20051 * testsuite/loop-1.c (N): New. Use it instead of hardcoded 100.
20052 (f_foo_1): Use GOMP_loop_end.
20053 (f_foo_2): Use GOMP_loop_end_nowait.
20054
20055 * testsuite/loop-2.c: New file.
20056 * testsuite/Makefile (TESTS): Add it.
20057
200582005-05-03 Richard Henderson <rth@redhat.com>
20059
20060 * iter.c (gomp_iter_static_next): Fix overflow check typo.
20061 (gomp_iter_dynamic_next_locked): Fix overflow check thinko.
20062 * team.c (new_team): Initialize oldest_live_gen to 1 if no
20063 initial work_share.
20064
20065 * testsuite/Makefile: New file.
20066 * testsuite/loop-1.c: New file.
20067
200682005-05-03 Richard Henderson <rth@redhat.com>
20069
20070 Initial implementation and checkin.
21fa2a29 20071\f
68127a8e 20072Copyright (C) 2005-2023 Free Software Foundation, Inc.
21fa2a29
JJ
20073
20074Copying and distribution of this file, with or without modification,
20075are permitted in any medium without royalty provided the copyright
20076notice and this notice are preserved.