]> gcc.gnu.org Git - gcc.git/blame - libgomp/ChangeLog.omp
libgomp.texi: List GCN's 'gfx803' under OpenMP Context Selectors
[gcc.git] / libgomp / ChangeLog.omp
CommitLineData
02e6b3fd
TB
12022-11-30 Tobias Burnus <tobias@codesourcery.com>
2
3 Backported from master:
4 2022-11-30 Tobias Burnus <tobias@codesourcery.com>
5
6 * libgomp.texi (OpenMP Context Selectors): Add 'gfx803' to gcn's isa.
7
b60c5663
PAA
82022-11-30 Paul-Antoine Arras <pa@codesourcery.com>
9
10 Backported from master:
11 2022-11-30 Paul-Antoine Arras <pa@codesourcery.com>
12
13 * testsuite/libgomp.c/declare-variant-4-fiji.c: New test.
14 * testsuite/libgomp.c/declare-variant-4-gfx803.c: New test.
15 * testsuite/libgomp.c/declare-variant-4-gfx900.c: New test.
16 * testsuite/libgomp.c/declare-variant-4-gfx906.c: New test.
17 * testsuite/libgomp.c/declare-variant-4-gfx908.c: New test.
18 * testsuite/libgomp.c/declare-variant-4-gfx90a.c: New test.
19 * testsuite/libgomp.c/declare-variant-4.h: New header file.
20
519f647c
TB
212022-11-28 Tobias Burnus <tobias@codesourcery.com>
22
23 Backported from master:
24 2022-11-28 Tobias Burnus <tobias@codesourcery.com>
25
26 * libgomp.texi (OpenMP 5.2): Mark end-directive as Y.
27
97c07e0b
TB
282022-11-28 Tobias Burnus <tobias@codesourcery.com>
29
30 Backported from master:
31 2022-11-25 Tobias Burnus <tobias@codesourcery.com>
32
33 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_load_image): Use unsigned int
34 for 'i' to match 'fn_entries'; regard absent GOMP_REV_OFFLOAD_VAR
35 as valid and the code having no reverse-offload code.
36 * testsuite/libgomp.c-c++-common/reverse-offload-2.c: New test.
37
6c6d03e4
TB
382022-11-28 Tobias Burnus <tobias@codesourcery.com>
39
40 Backported from master:
41 2022-11-25 Tobias Burnus <tobias@codesourcery.com>
42
43 * libgomp.texi (OpenMP Implementation Status): Add three 5.1 items
44 and status for Technical Report (TR) 11.
45
bda07240
SL
462022-11-26 Sandra Loosemore <sandra@codesourcery.com>
47
48 Backported from master:
49 2022-11-25 Sandra Loosemore <sandra@codesourcery.com>
50
51 * testsuite/lib/libgomp.exp: Load scanoffloadipa.exp library.
52 * testsuite/libgomp.c/target-simd-clone-1.c: New.
53 * testsuite/libgomp.c/target-simd-clone-2.c: New.
54 * testsuite/libgomp.c/target-simd-clone-3.c: New.
55
20fe3733
TB
562022-11-21 Tobias Burnus <tobias@codesourcery.com>
57
58 Backported from master:
59 2022-11-21 Tobias Burnus <tobias@codesourcery.com>
60
61 * config/gcn/libgomp-gcn.h (struct output):
62 Remove 'msg_u64' from the union, change
63 value_u64[2] to value_u64[6].
64 * config/gcn/target.c (GOMP_target_ext): Update accordingly.
65 * plugin/plugin-gcn.c (process_reverse_offload, console_output):
66 Likewise.
67
27aad787
TB
682022-11-19 Tobias Burnus <tobias@codesourcery.com>
69
70 Backported from master:
71 2022-11-19 Tobias Burnus <tobias@codesourcery.com>
72
73 * config/gcn/libgomp-gcn.h: New file; contains
74 struct output, declared previously in plugin-gcn.c.
75 * config/gcn/target.c: Include it.
76 (GOMP_ADDITIONAL_ICVS): Declare as extern var.
77 (GOMP_target_ext): Handle reverse offload.
78 * plugin/plugin-gcn.c: Include libgomp-gcn.h.
79 (struct kernargs): Replace struct def by the one
80 from libgomp-gcn.h for output_data.
81 (process_reverse_offload): New.
82 (console_output): Call it.
83
43884163
TB
842022-11-18 Tobias Burnus <tobias@codesourcery.com>
85
86 Backported from master:
87 2022-11-16 Tobias Burnus <tobias@codesourcery.com>
88 Andrew Stubbs <ams@codesourcery.com>
89
90 * config/gcn/team.c (gomp_gcn_enter_kernel): Use
91 __builtin_gcn_kernarg_ptr instead of asm ("s8").
92
c56df700
JJ
932022-11-14 Tobias Burnus <tobias@codesourcery.com>
94
95 Backport from mainline:
96 2022-11-12 Jakub Jelinek <jakub@redhat.com>
97
98 PR libgomp/107641
99 * env.c (parse_unsigned_long): Cast params[2] to uintptr_t rather than
100 unsigned long. Change type of upper from unsigned to unsigned long.
101
f9d53629
TB
1022022-11-04 Tobias Burnus <tobias@codesourcery.com>
103
104 * testsuite/libgomp.fortran/target-13.f90: Remove strides to match
105 mainline (GCC 13) version.
106
9fd571cb 1072022-11-02 Thomas Schwinge <thomas@codesourcery.com>
f8a1c619
TS
108
109 * testsuite/libgomp.oacc-fortran/declare-allocatable-array_descriptor-1-directive.f90:
110 Adjust.
111 * testsuite/libgomp.oacc-fortran/declare-allocatable-array_descriptor-1-runtime.f90:
112 Likewise.
113 * testsuite/libgomp.oacc-fortran/declare-allocatable-array_descriptor-1.f90:
114 New.
9fd571cb 115
5f1635e2
TS
116 * testsuite/libgomp.oacc-fortran/declare-allocatable-1-directive.f90:
117 Adjust.
118 * testsuite/libgomp.oacc-fortran/declare-allocatable-1-runtime.f90:
119 Likewise.
120 * testsuite/libgomp.oacc-fortran/declare-allocatable-1.f90:
121 Likewise.
122
5a3111c3
TS
123 * testsuite/libgomp.oacc-fortran/declare-allocatable-1-directive.f90:
124 XFAIL some OpenACC 'kernels' confusion.
125 * testsuite/libgomp.oacc-fortran/declare-allocatable-1-runtime.f90:
126 Likewise.
127 * testsuite/libgomp.oacc-fortran/declare-allocatable-1.f90:
128 Likewise.
129
63918a81
TS
130 Backported from master:
131 2022-11-02 Thomas Schwinge <thomas@codesourcery.com>
132
5a9e5a7d
TS
133 PR libgomp/106643
134 PR fortran/96668
135 * oacc-mem.c (goacc_enter_data_internal): Support
136 OpenACC 'declare create' with Fortran allocatable arrays, part II.
137 * testsuite/libgomp.oacc-fortran/declare-allocatable-array_descriptor-1-directive.f90:
138 Adjust.
139 * testsuite/libgomp.oacc-fortran/pr106643-1.f90: New.
140
141 Backported from master:
142 2022-11-02 Thomas Schwinge <thomas@codesourcery.com>
143
511b9790
TS
144 PR libgomp/106643
145 * oacc-mem.c (goacc_enter_data_internal): Support
146 OpenACC 'declare create' with Fortran allocatable arrays, part I.
147 * testsuite/libgomp.oacc-fortran/declare-allocatable-1-directive.f90:
148 New.
149 * testsuite/libgomp.oacc-fortran/declare-allocatable-array_descriptor-1-directive.f90:
150 New.
151
152 Backported from master:
153 2022-11-02 Thomas Schwinge <thomas@codesourcery.com>
154
184bb427
TS
155 * testsuite/libgomp.oacc-fortran/declare-allocatable-array_descriptor-1-runtime.f90:
156 New.
157
158 Backported from master:
159 2022-11-02 Thomas Schwinge <thomas@codesourcery.com>
160
63918a81
TS
161 * testsuite/libgomp.oacc-fortran/declare-allocatable-1-runtime.f90:
162 New.
163
9fd571cb
CP
164 Backported from master:
165 2022-11-02 Cesar Philippidis <cesar@codesourcery.com>
166 Thomas Schwinge <thomas@codesourcery.com>
167
168 * testsuite/libgomp.oacc-fortran/declare-allocatable-1.f90: New.
169
9cb4ef1e
TB
1702022-11-02 Tobias Burnus <tobias@codesourcery.com>
171
172 * testsuite/libgomp.fortran/target-enter-data-3.f90: New test.
173
ca133487
TB
1742022-11-02 Tobias Burnus <tobias@codesourcery.com>
175
176 * testsuite/libgomp.c-c++-common/requires-4.c: Fix dg-xfail-run-if
177 condition.
178
cb934e37
TB
1792022-11-02 Tobias Burnus <tobias@codesourcery.com>
180
181 * testsuite/libgomp.fortran/target-11.f90: New test.
182 * testsuite/libgomp.fortran/target-13.f90: New test.
183
863579c4
KCY
1842022-11-01 Kwok Cheung Yeung <kcy@codesourcery.com>
185
186 * testsuite/libgomp.c/simd-math-1.c: New testcase.
187
797dde52
TS
1882022-10-28 Thomas Schwinge <thomas@codesourcery.com>
189
190 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Adjust.
191
9c461798
HAQ
1922022-10-25 Abid Qadeer <abidh@codesourcery.com>
193
194 * testsuite/libgomp.c++/usm-2.C: New test.
195
e0322c67
TS
1962022-10-24 Tobias Burnus <tobias@codesourcery.com>
197
198 Backport from mainline:
199 2022-10-24 Thomas Schwinge <thomas@codesourcery.com>
200
201 * plugin/plugin-nvptx.c (nvptx_open_device): Initialize
202 'ptx_dev->rev_data'.
203
c682c503
TB
2042022-10-24 Tobias Burnus <tobias@codesourcery.com>
205
206 Backport from mainline:
207 2022-10-24 Tobias Burnus <tobias@codesourcery.com>
208
209 * config/nvptx/icv-device.c (GOMP_DEVICE_NUM_VAR): Remove
210 'static' for this variable.
211 * config/nvptx/libgomp-nvptx.h: New file.
212 * config/nvptx/target.c: Include it.
213 (GOMP_ADDITIONAL_ICVS): Declare extern var.
214 (GOMP_REV_OFFLOAD_VAR): Declare var.
215 (GOMP_target_ext): Handle reverse offload.
216 * libgomp-plugin.h (GOMP_PLUGIN_target_rev): New prototype.
217 * libgomp-plugin.c (GOMP_PLUGIN_target_rev): New, call ...
218 * target.c (gomp_target_rev): ... this new stub function.
219 * libgomp.h (gomp_target_rev): Declare.
220 * libgomp.map (GOMP_PLUGIN_1.4): New; add GOMP_PLUGIN_target_rev.
221 * plugin/cuda-lib.def (cuMemHostAlloc): Add.
222 * plugin/plugin-nvptx.c: Include libgomp-nvptx.h.
223 (struct ptx_device): Add rev_data member.
224 (nvptx_open_device): Remove async_engines query, last used in
225 r10-304-g1f4c5b9b; add unified-address assert check.
226 (GOMP_OFFLOAD_get_num_devices): Claim unified address
227 support.
228 (GOMP_OFFLOAD_load_image): Free rev_fn_table if no
229 offload functions exist. Make offload var available
230 on host and device.
231 (rev_off_dev_to_host_cpy, rev_off_host_to_dev_cpy): New.
232 (GOMP_OFFLOAD_run): Handle reverse offload.
233
ffc6267a
TB
2342022-10-20 Tobias Burnus <tobias@codesourcery.com>
235
236 Backport from mainline:
237 2022-10-20 Tobias Burnus <tobias@codesourcery.com>
238
239 * testsuite/lib/libgomp.exp (check_effective_target_offload_device_gcn):
240 New.
241 * testsuite/libgomp.c-c++-common/on_device_arch.h (device_arch_gcn,
242 on_device_arch_gcn): New.
243 * testsuite/libgomp.c-c++-common/requires-4a.c: New test; copied from
244 requires-4.c but using heap-allocated memory.
245
fd25efb7
TB
2462022-10-17 Tobias Burnus <tobias@codesourcery.com>
247
248 Backport from mainline:
249 2022-10-13 Tobias Burnus <tobias@codesourcery.com>
250
251 * testsuite/libgomp.fortran/task-7.f90: New test.
252 * testsuite/libgomp.fortran/task-8.f90: New test.
253 * testsuite/libgomp.fortran/task-in-explicit-1.f90: New test.
254 * testsuite/libgomp.fortran/task-in-explicit-2.f90: New test.
255 * testsuite/libgomp.fortran/task-in-explicit-3.f90: New test.
256 * testsuite/libgomp.fortran/task-reduction-17.f90: New test.
257 * testsuite/libgomp.fortran/task-reduction-18.f90: New test.
258
452bb7db
JJ
2592022-10-17 Tobias Burnus <tobias@codesourcery.com>
260
261 Backport from mainline:
262 2022-10-12 Jakub Jelinek <jakub@redhat.com>
263
264 * libgomp.texi (OpenMP 5.2): Fix up allocator -> allocate directive
265 in deprecation bullet.
266
7e45444b
JJ
2672022-10-17 Tobias Burnus <tobias@codesourcery.com>
268
269 Backport from mainline:
270 2022-10-12 Jakub Jelinek <jakub@redhat.com>
271
272 * omp.h.in (omp_in_explicit_task): Declare.
273 * omp_lib.h.in (omp_in_explicit_task): Likewise.
274 * omp_lib.f90.in (omp_in_explicit_task): New interface.
275 * libgomp.map (OMP_5.2): New symbol version, export
276 omp_in_explicit_task and omp_in_explicit_task_.
277 * task.c (omp_in_explicit_task): New function.
278 * fortran.c (omp_in_explicit_task): Add ialias_redirect.
279 (omp_in_explicit_task_): New function.
280 * libgomp.texi (OpenMP 5.2): Mark omp_in_explicit_task as implemented.
281 * testsuite/libgomp.c-c++-common/task-in-explicit-1.c: New test.
282 * testsuite/libgomp.c-c++-common/task-in-explicit-2.c: New test.
283 * testsuite/libgomp.c-c++-common/task-in-explicit-3.c: New test.
284
4e08e02c
JJ
2852022-10-17 Tobias Burnus <tobias@codesourcery.com>
286
287 Backport from mainline:
288 2022-10-12 Jakub Jelinek <jakub@redhat.com>
289
290 * task.c (gomp_create_artificial_team): Fix up handling of invocations
291 from within explicit task.
292 * target.c (GOMP_target_ext): Likewise.
293 * testsuite/libgomp.c/task-7.c: New test.
294 * testsuite/libgomp.c/task-8.c: New test.
295 * testsuite/libgomp.c-c++-common/task-reduction-17.c: New test.
296 * testsuite/libgomp.c-c++-common/task-reduction-18.c: New test.
297
f36ce95a
TS
2982022-10-17 Thomas Schwinge <thomas@codesourcery.com>
299
300 Backported from master:
301 2022-10-17 Thomas Schwinge <thomas@codesourcery.com>
302
303 * testsuite/libgomp.c/reverse-offload-sm30.c: Fix nvptx-specific
304 '-foffload-options' syntax.
305
d4504346
JB
3062022-10-14 Julian Brown <julian@codesourcery.com>
307
308 * testsuite/libgomp.oacc-fortran/declare-1.f90: Adjust scan output.
309 * testsuite/libgomp.oacc-fortran/host_data-5.F90: Likewise.
310 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
311 * testsuite/libgomp.oacc-fortran/print-1.f90: Likewise.
312 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
313
249a6ce0
TB
3142022-10-05 Tobias Burnus <tobias@codesourcery.com>
315
316 Backport from mainline:
317 2022-10-05 Tobias Burnus <tobias@codesourcery.com>
318
319 * libgomp.texi (OpenMP 5.1 Impl. Status): Mark 'assume' as 'Y'.
320
65d065bb
JJ
3212022-10-04 Tobias Burnus <tobias@codesourcery.com>
322
323 Backport from mainline:
324 2022-10-04 Jakub Jelinek <jakub@redhat.com>
325
326 * libgomp.texi (Support begin/end declare target syntax in C/C++):
327 Mark as implemented.
328
5ee8de35
TB
3292022-09-30 Tobias Burnus <tobias@codesourcery.com>
330
331 Backport from mainline:
332 2022-09-30 Tobias Burnus <tobias@codesourcery.com>
333
334 PR fortran/105318
335 * testsuite/libgomp.fortran/is_device_ptr-2.f90: New test.
336
4ed1f19b
TB
3372022-09-28 Tobias Burnus <tobias@codesourcery.com>
338
339 Backport from mainline:
340 2022-09-28 Tobias Burnus <tobias@codesourcery.com>
341
342 * libgomp.texi (OpenMP 5.1): Mark 'assume' as implemented
343 for C/C++. Remove duplicated 'begin declare target' entry.
344
534283c6
JJ
3452022-09-24 Tobias Burnus <tobias@codesourcery.com>
346
347 Backport from mainline:
348 2022-09-24 Jakub Jelinek <jakub@redhat.com>
349
350 PR c/106981
351 * testsuite/libgomp.c-c++-common/pr106981.c: New test.
352
ccd3d15a
JJ
3532022-09-13 Tobias Burnus <tobias@codesourcery.com>
354
355 Backport from mainline:
356 2022-09-13 Jakub Jelinek <jakub@redhat.com>
357
358 PR libgomp/106906
359 * env.c (get_icv_member_addr): Cast false to void * before assigning
360 it to icv_addr[1], and comment the whole assignment out.
361
0c17135a
TB
3622022-09-13 Tobias Burnus <tobias@codesourcery.com>
363
364 Backport from mainline:
365 2022-09-13 Tobias Burnus <tobias@codesourcery.com>
366
367 * libgomp.texi (gcn): Move misplaced -march=sm_30 remark to ...
368 (nvptx): ... here.
369
c8d2d18f
TB
3702022-09-12 Tobias Burnus <tobias@codesourcery.com>
371
372 Backport from mainline:
373 2022-09-12 Tobias Burnus <tobias@codesourcery.com>
374
375 * libgomp.texi (Offload-Target Specifics: nvptx): Document
376 that reverse offload requires >= -march=sm_35.
377 * testsuite/libgomp.c-c++-common/requires-4.c: Build for nvptx
378 with -misa=sm_35.
379 * testsuite/libgomp.c-c++-common/requires-5.c: Likewise.
380 * testsuite/libgomp.c-c++-common/requires-6.c: Likewise.
381 * testsuite/libgomp.c-c++-common/reverse-offload-1.c: Likewise.
382 * testsuite/libgomp.fortran/reverse-offload-1.f90: Likewise.
383 * testsuite/libgomp.c/reverse-offload-sm30.c: New test.
384
8a04333f
TB
3852022-09-12 Tobias Burnus <tobias@codesourcery.com>
386
387 Backport from mainline:
388 2022-09-12 Tobias Burnus <tobias@codesourcery.com>
389
390 * libgomp.texi (OpenMP 5.1 Impl. Status): Add two new minor items.
391 (OpenMP 5.2 Impl. Status): Improve omp/omx/ompx wording.
392
c32eb675
JJ
3932022-09-12 Tobias Burnus <tobias@codesourcery.com>
394
395 Backport from mainline:
396 2022-09-12 Jakub Jelinek <jakub@redhat.com>
397
398 PR libgomp/106894
399 * testsuite/libgomp.c-c++-common/icv-6.c: Include string.h.
400 (main): Avoid tests for which corresponding non-_ALL suffixed variable
401 is in the environment, or for OMP_NUM_TEAMS on the device
402 OMP_NUM_TEAMS_DEV_?.
403
7fbe2380
IS
4042022-09-12 Tobias Burnus <tobias@codesourcery.com>
405
406 Backport from mainline:
407 2022-09-10 Iain Sandoe <iain@sandoe.co.uk>
408
409 * env.c (initialize_env): Include libiberty environ.h.
410
2b6ad53f
TB
4112022-09-12 Tobias Burnus <tobias@codesourcery.com>
412
413 Backport from mainline:
414 2022-09-09 Tobias Burnus <tobias@codesourcery.com>
415
416 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_load_image): Read offload
417 function address table '$offload_func_table' if rev_fn_table
418 is not NULL.
419
b2e6dfc8
TB
4202022-09-12 Tobias Burnus <tobias@codesourcery.com>
421
422 Backport from mainline:
423 2022-09-09 Tobias Burnus <tobias@codesourcery.com>
424
425 * plugin/plugin-gcn.c (GOMP_OFFLOAD_load_image): Read
426 .offload_func_table to populate rev_fn_table when requested.
427
fd867dd6
TB
4282022-09-12 Tobias Burnus <tobias@codesourcery.com>
429
430 Backport from mainline:
431 2022-09-09 Tobias Burnus <tobias@codesourcery.com>
432
433 * libgomp-plugin.h (GOMP_OFFLOAD_load_image): Add
434 'uint64_t **rev_fn_table' argument.
435 * oacc-host.c (host_load_image): Likewise.
436 * plugin/plugin-gcn.c (GOMP_OFFLOAD_load_image): Likewise;
437 currently unused.
438 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_load_image): Likewise.
439 * target.c (gomp_load_image_to_device): Update call but pass
440 NULL for now.
441
1aa03128
JJ
4422022-09-09 Tobias Burnus <tobias@codesourcery.com>
443
444 Backport from mainline:
445 2022-09-09 Jakub Jelinek <jakub@redhat.com>
446
447 PR libgomp/106894
448 * env.c (initialize_env) <case PARSE_BIND>: Use char ** instead of
449 char * for dest[1] initialization from params[1]. Formatting fixes.
450
fa7e7381
TB
4512022-09-09 Tobias Burnus <tobias@codesourcery.com>
452
453 Backport from mainline:
454 2022-09-08 Tobias Burnus <tobias@codesourcery.com>
455
456 PR fortran/106670
457 * libgomp.texi (OpenMP 5.2): Add comment to ompx/omx entry.
458
8b479946
TB
4592022-09-09 Tobias Burnus <tobias@codesourcery.com>
460
461 Backport from mainline:
462 2022-09-08 Tobias Burnus <tobias@codesourcery.com>
463
464 * libgomp.texi (OpenMP-Implementation Specifics): New; add libmemkind
465 section; move OpenMP Context Selectors from ...
466 (Offload-Target Specifics): ... here; add 'AMD Radeo (GCN)' and
467 'nvptx' sections.
468
db7940c9
MV
4692022-09-09 Tobias Burnus <tobias@codesourcery.com>
470
471 Backport from mainline:
472 2022-09-08 Marcel Vollweiler <marcel@codesourcery.com>
473
474 * config/gcn/icv-device.c (omp_get_default_device): Return device-
475 specific ICV.
476 (omp_get_max_teams): Added for GCN devices.
477 (omp_set_num_teams): Likewise.
478 (ialias): Likewise.
479 * config/nvptx/icv-device.c (omp_get_default_device): Return device-
480 specific ICV.
481 (omp_get_max_teams): Added for NVPTX devices.
482 (omp_set_num_teams): Likewise.
483 (ialias): Likewise.
484 * env.c (struct gomp_icv_list): New struct to store entries of initial
485 ICV values.
486 (struct gomp_offload_icv_list): New struct to store entries of device-
487 specific ICV values that are copied to the device and back.
488 (struct gomp_default_icv_values): New struct to store default values of
489 ICVs according to the OpenMP standard.
490 (parse_schedule): Generalized for different variants of OMP_SCHEDULE.
491 (print_env_var_error): Function that prints an error for invalid values
492 for ICVs.
493 (parse_unsigned_long_1): Removed getenv. Generalized.
494 (parse_unsigned_long): Likewise.
495 (parse_int_1): Likewise.
496 (parse_int): Likewise.
497 (parse_int_secure): Likewise.
498 (parse_unsigned_long_list): Likewise.
499 (parse_target_offload): Likewise.
500 (parse_bind_var): Likewise.
501 (parse_stacksize): Likewise.
502 (parse_boolean): Likewise.
503 (parse_wait_policy): Likewise.
504 (parse_allocator): Likewise.
505 (omp_display_env): Extended to output different variants of environment
506 variables.
507 (print_schedule): New helper function for omp_display_env which prints
508 the values of run_sched_var.
509 (print_proc_bind): New helper function for omp_display_env which prints
510 the values of proc_bind_var.
511 (enum gomp_parse_type): Collection of types used for parsing environment
512 variables.
513 (ENTRY): Preprocess string lengths of environment variables.
514 (OMP_VAR_CNT): Preprocess table size.
515 (OMP_HOST_VAR_CNT): Likewise.
516 (INT_MAX_STR_LEN): Constant for the maximal number of digits of a device
517 number.
518 (gomp_get_icv_flag): Returns if a flag for a particular ICV is set.
519 (gomp_set_icv_flag): Sets a flag for a particular ICV.
520 (print_device_specific_icvs): New helper function for omp_display_env to
521 print device specific ICV values.
522 (get_device_num): New helper function for parse_device_specific.
523 Extracts the device number from an environment variable name.
524 (get_icv_member_addr): Gets the memory address for a particular member
525 of an ICV struct.
526 (gomp_get_initial_icv_item): Get a list item of gomp_initial_icv_list.
527 (initialize_icvs): New function to initialize a gomp_initial_icvs
528 struct.
529 (add_initial_icv_to_list): Adds an ICV struct to gomp_initial_icv_list.
530 (startswith): Checks if a string starts with a given prefix.
531 (initialize_env): Extended to parse the new syntax of environment
532 variables.
533 * icv-device.c (omp_get_max_teams): Added.
534 (ialias): Likewise.
535 (omp_set_num_teams): Likewise.
536 * icv.c (omp_set_num_teams): Moved to icv-device.c.
537 (omp_get_max_teams): Likewise.
538 (ialias): Likewise.
539 * libgomp-plugin.h (GOMP_DEVICE_NUM_VAR): Removed.
540 (GOMP_ADDITIONAL_ICVS): New target-side struct that
541 holds the designated ICVs of the target device.
542 * libgomp.h (enum gomp_icvs): Collection of ICVs.
543 (enum gomp_device_num): Definition of device numbers for _ALL, _DEV, and
544 no suffix.
545 (enum gomp_env_suffix): Collection of possible suffixes of environment
546 variables.
547 (struct gomp_initial_icvs): Contains all ICVs for which we need to store
548 initial values.
549 (struct gomp_default_icv):New struct to hold ICVs for which we need
550 to store initial values.
551 (struct gomp_icv_list): Definition of a linked list that is used for
552 storing ICVs for the devices and also for _DEV, _ALL, and without
553 suffix.
554 (struct gomp_offload_icvs): New struct to hold ICVs that are copied to
555 a device.
556 (struct gomp_offload_icv_list): Definition of a linked list that holds
557 device-specific ICVs that are copied to devices.
558 (gomp_get_initial_icv_item): Get a list item of gomp_initial_icv_list.
559 (gomp_get_icv_flag): Returns if a flag for a particular ICV is set.
560 * libgomp.texi: Updated.
561 * plugin/plugin-gcn.c (GOMP_OFFLOAD_load_image): Extended to read
562 further ICVs from the offload image.
563 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_load_image): Likewise.
564 * target.c (gomp_get_offload_icv_item): Get a list item of
565 gomp_offload_icv_list.
566 (get_gomp_offload_icvs): New. Returns the ICV values
567 depending on the device num and the variable hierarchy.
568 (gomp_load_image_to_device): Extended to copy further ICVs to a device.
569 * testsuite/libgomp.c-c++-common/icv-5.c: New test.
570 * testsuite/libgomp.c-c++-common/icv-6.c: New test.
571 * testsuite/libgomp.c-c++-common/icv-7.c: New test.
572 * testsuite/libgomp.c-c++-common/icv-8.c: New test.
573 * testsuite/libgomp.c-c++-common/omp-display-env-1.c: New test.
574 * testsuite/libgomp.c-c++-common/omp-display-env-2.c: New test.
575
b52d3705
JJ
5762022-09-08 Tobias Burnus <tobias@codesourcery.com>
577
578 Backport from mainline:
579 2022-09-08 Jakub Jelinek <jakub@redhat.com>
580
581 * libgomp.texi (OpenMP 5.2): Mention that omp_cur_iteration is now
582 fully supported.
583 * testsuite/libgomp.c/doacross-4.c: New test.
584 * testsuite/libgomp.c/doacross-5.c: New test.
585 * testsuite/libgomp.c/doacross-6.c: New test.
586 * testsuite/libgomp.c/doacross-7.c: New test.
587
b79c973b
JJ
5882022-09-08 Tobias Burnus <tobias@codesourcery.com>
589
590 Backport from mainline:
591 2022-05-17 Jakub Jelinek <jakub@redhat.com>
592
593 * libgomp.texi (OpenMP 5.1): Remove "Not inside target regions"
594 comment for omp_display_env feature.
595
bc81271a
TB
5962022-09-05 Tobias Burnus <tobias@codesourcery.com>
597
598 Backport from mainline:
599 2022-09-05 Tobias Burnus <tobias@codesourcery.com>
600
601 * libgomp.texi (OpenMP 5.2): Update doacross/omp_cur_iteration status.
602
b0256655
TB
6032022-08-30 Tobias Burnus <tobias@codesourcery.com>
604
605 Backport from mainline:
606 2022-08-26 Tobias Burnus <tobias@codesourcery.com>
607
608 * libgomp.texi (OpenMP 5.0): Mark 'ancestor' as implemented but
609 refer to 'requires'.
610 * testsuite/libgomp.c-c++-common/reverse-offload-1-aux.c: New test.
611 * testsuite/libgomp.c-c++-common/reverse-offload-1.c: New test.
612 * testsuite/libgomp.fortran/reverse-offload-1-aux.f90: New test.
613 * testsuite/libgomp.fortran/reverse-offload-1.f90: New test.
614
be32fafd
TB
6152022-08-17 Tobias Burnus <tobias@codesourcery.com>
616
617 Backport from mainline:
618 2022-08-17 Tobias Burnus <tobias@codesourcery.com>
619
620 * splay-tree.h: Fix splay_* macro unsetting if
621 splay_tree_prefix is defined.
622
c68a8f1a
TB
6232022-07-29 Tobias Burnus <tobias@codesourcery.com>
624
625 Backport from mainline:
626 2022-07-29 Tobias Burnus <tobias@codesourcery.com>
627
628 * libgomp.c-c++-common/pr106449-2.c: New test.
629
89dd8390
TB
6302022-07-13 Tobias Burnus <tobias@codesourcery.com>
631
632 Backport from mainline:
633 2022-07-12 Tobias Burnus <tobias@codesourcery.com>
634
635 * target.c (gomp_target_init): Added tailing '\n' to gomp_debug.
636
860c7665
TS
6372022-07-08 Tobias Burnus <tobias@codesourcery.com>
638
639 Backport from mainline:
640 2022-07-08 Thomas Schwinge <thomas@codesourcery.com>
641
642 * testsuite/libgomp.c-c++-common/requires-1.c: Add 'dg-note's.
643 * testsuite/libgomp.c-c++-common/requires-2.c: Likewise.
644 * testsuite/libgomp.c-c++-common/requires-3.c: Likewise.
645 * testsuite/libgomp.c-c++-common/requires-7.c: Likewise.
646 * testsuite/libgomp.fortran/requires-1.f90: Likewise.
647
c4b637d1
TS
6482022-07-07 Tobias Burnus <tobias@codesourcery.com>
649
650 Backport from mainline:
651 2022-07-07 Thomas Schwinge <thomas@codesourcery.com>
652
653 * target.c (GOMP_offload_register, GOMP_offload_unregister):
654 Denote as legacy entry points.
655 * testsuite/lib/libgomp.exp
656 (check_effective_target_offload_target_any): New proc.
657 * testsuite/libgomp.c-c++-common/requires-1.c: Enable for
658 'offload_target_any'.
659 * testsuite/libgomp.c-c++-common/requires-3.c: Likewise.
660 * testsuite/libgomp.c-c++-common/requires-7.c: Likewise.
661 * testsuite/libgomp.fortran/requires-1.f90: Likewise.
662
8bdc6ae4
TS
6632022-07-07 Tobias Burnus <tobias@codesourcery.com>
664
665 Backport from mainline:
666 2022-07-07 Thomas Schwinge <thomas@codesourcery.com>
667
668 * testsuite/libgomp.c-c++-common/requires-4.c: Enhance testing.
669 * testsuite/libgomp.c-c++-common/requires-5.c: Likewise.
670
f86ab292
TS
6712022-07-07 Tobias Burnus <tobias@codesourcery.com>
672
673 Backport from mainline:
674 2022-07-07 Thomas Schwinge <thomas@codesourcery.com>
675
676 * testsuite/libgomp.c-c++-common/requires-3.c: Adjust.
677
72777e6c
TS
6782022-07-07 Tobias Burnus <tobias@codesourcery.com>
679
680 Backport from mainline:
681 2022-07-06 Thomas Schwinge <thomas@codesourcery.com>
682
683 * target.c (GOMP_offload_register_ver): Clarify 'target_data' ->
684 'data'.
685 (GOMP_offload_unregister_ver): Likewise. Fix up 'target_data'.
686
5e7baa3c
TB
6872022-07-05 Tobias Burnus <tobias@codesourcery.com>
688
689 Backport from mainline:
690 2022-07-04 Tobias Burnus <tobias@codesourcery.com>
691 Chung-Lin Tang <cltang@codesourcery.com>
692 Thomas Schwinge <thomas@codesourcery.com>
693
694 * libgomp-plugin.h (GOMP_OFFLOAD_get_num_devices): Add
695 omp_requires_mask arg.
696 * plugin/plugin-gcn.c (GOMP_OFFLOAD_get_num_devices): Likewise;
697 return -1 when device available but omp_requires_mask != 0.
698 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_get_num_devices): Likewise.
699 * oacc-host.c (host_get_num_devices, host_openacc_get_property):
700 Update call.
701 * oacc-init.c (resolve_device, acc_init_1, acc_shutdown_1,
702 goacc_attach_host_thread_to_device, acc_get_num_devices,
703 acc_set_device_num, get_property_any): Likewise.
704 * target.c (omp_requires_mask): New global var.
705 (gomp_requires_to_name): New.
706 (GOMP_offload_register_ver): Handle passed omp_requires_mask.
707 (gomp_target_init): Handle omp_requires_mask.
708 * libgomp.texi (OpenMP 5.0): Update requires impl. status.
709 (OpenMP 5.1): Add a missed item.
710 (OpenMP 5.2): Mark linear-clause change as supported in C/C++.
711 * testsuite/libgomp.c-c++-common/requires-1-aux.c: New test.
712 * testsuite/libgomp.c-c++-common/requires-1.c: New test.
713 * testsuite/libgomp.c-c++-common/requires-2-aux.c: New test.
714 * testsuite/libgomp.c-c++-common/requires-2.c: New test.
715 * testsuite/libgomp.c-c++-common/requires-3-aux.c: New test.
716 * testsuite/libgomp.c-c++-common/requires-3.c: New test.
717 * testsuite/libgomp.c-c++-common/requires-4-aux.c: New test.
718 * testsuite/libgomp.c-c++-common/requires-4.c: New test.
719 * testsuite/libgomp.c-c++-common/requires-5-aux.c: New test.
720 * testsuite/libgomp.c-c++-common/requires-5.c: New test.
721 * testsuite/libgomp.c-c++-common/requires-6.c: New test.
722 * testsuite/libgomp.c-c++-common/requires-7-aux.c: New test.
723 * testsuite/libgomp.c-c++-common/requires-7.c: New test.
724 * testsuite/libgomp.fortran/requires-1-aux.f90: New test.
725 * testsuite/libgomp.fortran/requires-1.f90: New test.
726
7272022-07-05 Tobias Burnus <tobias@codesourcery.com>
728
729 Reverted:
730 2021-03-25 Thomas Schwinge <thomas@codesourcery.com>
731
732 * target.c (__requires_mask_table, __requires_mask_table_end): Add
733 '__attribute__((weak))'.
734
7352022-07-05 Tobias Burnus <tobias@codesourcery.com>
736
737 Reverted:
738 2021-02-02 Chung-Lin Tang <cltang@codesourcery.com>
739
740 * libgomp-plugin.h (GOMP_OFFLOAD_supported_features): New declaration.
741 * libgomp.h (struct gomp_device_descr): New 'supported_features_func'
742 plugin hook field.
743 * oacc-host.c (host_supported_features): New host hook function.
744 (host_dispatch): Initialize 'supported_features_func' host hook.
745 * plugin/plugin-gcn.c (GOMP_OFFLOAD_supported_features): New function.
746 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_supported_features): Likewise.
747 * target.c (<stdio.h>): Add include of standard header.
748 (gomp_requires_mask): New static variable.
749 (__requires_mask_table): New declaration.
750 (__requires_mask_table_end): Likewise.
751
9492ed22
TB
7522022-07-05 Tobias Burnus <tobias@codesourcery.com>
753
754 Backport from mainline:
755 2022-07-04 Tobias Burnus <tobias@codesourcery.com>
756 Jakub Jelinek <jakub@redhat.com>
757
758 * libgomp.texi (OpenMP 5.2): Mark linear-clause change as 'Y'.
759
f9c809f0
TB
7602022-07-05 Tobias Burnus <tobias@codesourcery.com>
761
762 Backport from mainline:
763 2022-07-01 Tobias Burnus <tobias@codesourcery.com>
764
765 * libgomp.texi (OpenMP 5.2): Mark target enter/exit data
766 with fromto as implemented.
767
11b4126c
JJ
7682022-07-05 Tobias Burnus <tobias@codesourcery.com>
769
770 Backport from mainline:
771 2022-06-15 Jakub Jelinek <jakub@redhat.com>
772
773 * testsuite/libgomp.c-c++-common/get-mapped-ptr-1.c (main): Initialize
774 q to ddress of an automatic variable. Use -5 instead of -1 in
775 omp_get_mapped_ptr call. Add test with omp_initial_device.
776 * testsuite/libgomp.fortran/get-mapped-ptr-1.f90 (main): Use -5 instead
777 of -1 in omp_get_mapped_ptr call. Add test with omp_initial_device.
778 Renumber stop arguments afterwards.
779
047509c2
JJ
7802022-07-05 Tobias Burnus <tobias@codesourcery.com>
781
782 Backport from mainline:
783 2022-06-13 Jakub Jelinek <jakub@redhat.com>
784
785 * omp.h.in (omp_initial_device, omp_invalid_device): New enumerators.
786 * omp_lib.f90.in (omp_initial_device, omp_invalid_device): New
787 parameters.
788 * omp_lib.h.in (omp_initial_device, omp_invalid_device): Likewise.
789 * target.c (resolve_device): Add remapped argument, handle
790 GOMP_DEVICE_ICV only if remapped is true (and clear remapped),
791 for negative values, treat GOMP_DEVICE_FALLBACK as fallback only
792 if remapped, otherwise treat omp_initial_device that way. For
793 omp_invalid_device, always emit gomp_fatal, even when
794 OMP_TARGET_OFFLOAD isn't mandatory.
795 (GOMP_target, GOMP_target_ext, GOMP_target_data, GOMP_target_data_ext,
796 GOMP_target_update, GOMP_target_update_ext,
797 GOMP_target_enter_exit_data): Pass true as remapped argument to
798 resolve_device.
799 (omp_target_alloc, omp_target_free, omp_target_is_present,
800 omp_target_memcpy_check, omp_target_associate_ptr,
801 omp_target_disassociate_ptr, omp_get_mapped_ptr,
802 omp_target_is_accessible): Pass false as remapped argument to
803 resolve_device. Treat omp_initial_device the same as
804 gomp_get_num_devices (). Don't bypass resolve_device calls if
805 device_num is negative.
806 (omp_pause_resource): Treat omp_initial_device the same as
807 gomp_get_num_devices (). Call resolve_device.
808 * icv-device.c (omp_set_default_device): Always set to device_num
809 even when it is negative.
810 * libgomp.texi: Document that Conforming device numbers,
811 omp_initial_device and omp_invalid_device is implemented.
812 * testsuite/libgomp.c/target-41.c (main): Add test with
813 omp_initial_device.
814 * testsuite/libgomp.c/target-45.c: New test.
815 * testsuite/libgomp.c/target-46.c: New test.
816 * testsuite/libgomp.c/target-47.c: New test.
817 * testsuite/libgomp.c-c++-common/target-is-accessible-1.c (main): Add
818 test with omp_initial_device. Use -5 instead of -1 for negative value
819 test.
820 * testsuite/libgomp.fortran/target-is-accessible-1.f90 (main):
821 Likewise. Reorder stop numbers.
822
fc8e0d12
TB
8232022-07-05 Tobias Burnus <tobias@codesourcery.com>
824
825 Backport from mainline:
826 2022-06-03 Tobias Burnus <tobias@codesourcery.com>
827
828 * libgomp.texi (OpenMP 5.2): Mark scope w/ firstprivate/allocate as Y.
829 * testsuite/libgomp.fortran/scope-2.f90: New test.
830
0ca11d9d
JJ
8312022-07-05 Tobias Burnus <tobias@codesourcery.com>
832
833 Backport from mainline:
834 2022-05-31 Jakub Jelinek <jakub@redhat.com>
835
836 * testsuite/libgomp.c-c++-common/allocate-1.c (foo): Add testcase for
837 scope construct with allocate clause.
838 * testsuite/libgomp.c-c++-common/allocate-3.c (foo): Likewise.
839 * testsuite/libgomp.c-c++-common/scope-2.c: New test.
840
5d894208
TB
8412022-07-05 Tobias Burnus <tobias@codesourcery.com>
842
843 Backport from mainline:
844 2022-05-28 Tobias Burnus <tobias@codesourcery.com>
845
846 * libgomp.texi (OpenMP 5.2): Mark 'enter' clause as supported.
847 * testsuite/libgomp.fortran/declare-target-1.f90: Extend to test
848 explicit 'to' and 'enter' clause.
849 * testsuite/libgomp.fortran/declare-target-2.f90: Update accordingly.
850
d23aea91
JJ
8512022-07-05 Tobias Burnus <tobias@codesourcery.com>
852
853 Backport from mainline:
854 2022-05-27 Jakub Jelinek <jakub@redhat.com>
855
856 * testsuite/libgomp.c-c++-common/target-40.c: Modify some existing to
857 clauses to enter.
858 * testsuite/libgomp.c/target-41.c: Likewise.
859
f29aac5b
TB
8602022-07-05 Tobias Burnus <tobias@codesourcery.com>
861
862 Backport from mainline:
863 2022-05-27 Tobias Burnus <tobias@codesourcery.com>
864
865 * libgomp.texi (Other new OpenMP 5.1 features): Add
866 'begin declare target'.
867 (Other new OpenMP 5.2 features): New.
868
4d893a71
JJ
8692022-07-05 Tobias Burnus <tobias@codesourcery.com>
870
871 Backport from mainline:
872 2022-05-25 Jakub Jelinek <jakub@redhat.com>
873
874 * task.c (gomp_task_run_post_handle_dependers): If empty_task
875 is the last task taskwait depend depends on, wake it up.
876 Similarly if it is the last child of a taskgroup, use atomic
877 store instead of decrement and awak taskgroup wait if any.
878 * testsuite/libgomp.c-c++-common/taskwait-depend-nowait-2.c: New test.
879
47b01438
TB
8802022-07-05 Tobias Burnus <tobias@codesourcery.com>
881
882 Backport from mainline:
883 2022-05-24 Tobias Burnus <tobias@codesourcery.com>
884
885 PR c/105378
886 * libgomp.texi (OpenMP 5.1): Set 'taskwait nowait' to 'Y'.
887 * testsuite/libgomp.fortran/taskwait-depend-nowait-1.f90: New.
888
a25ddca5
JJ
8892022-07-05 Tobias Burnus <tobias@codesourcery.com>
890
891 Backport from mainline:
892 2022-05-24 Jakub Jelinek <jakub@redhat.com>
893
894 PR c/105378
895 * libgomp_g.h (GOMP_taskwait_depend_nowait): Declare.
896 * libgomp.map (GOMP_taskwait_depend_nowait): Export at GOMP_5.1.1.
897 * task.c (empty_task): New function.
898 (gomp_task_run_post_handle_depend_hash): Declare earlier.
899 (gomp_task_run_post_handle_depend): Declare.
900 (GOMP_task): Optimize fn == empty_task if there is nothing to wait
901 for.
902 (gomp_task_run_post_handle_dependers): Optimize task->fn == empty_task.
903 (GOMP_taskwait_depend_nowait): New function.
904 * testsuite/libgomp.c-c++-common/taskwait-depend-nowait-1.c: New test.
905
9bde4b46
MV
9062022-07-05 Tobias Burnus <tobias@codesourcery.com>
907
908 Backport from mainline:
909 2022-05-20 Marcel Vollweiler <marcel@codesourcery.com>
910
911 * libgomp.map: Added omp_target_memcpy_async and
912 omp_target_memcpy_rect_async.
913 * libgomp.texi: Both functions are now supported.
914 * omp.h.in: Added omp_target_memcpy_async and
915 omp_target_memcpy_rect_async.
916 * omp_lib.f90.in: Added interfaces for both new functions.
917 * omp_lib.h.in: Likewise.
918 * target.c (ialias_redirect): Added for GOMP_task.
919 (omp_target_memcpy): Restructured into check and copy part.
920 (omp_target_memcpy_check): New helper function for omp_target_memcpy and
921 omp_target_memcpy_async that checks requirements.
922 (omp_target_memcpy_copy): New helper function for omp_target_memcpy and
923 omp_target_memcpy_async that performs the memcpy.
924 (omp_target_memcpy_async_helper): New helper function that is used in
925 omp_target_memcpy_async for the asynchronous task.
926 (omp_target_memcpy_async): Added.
927 (omp_target_memcpy_rect): Restructured into check and copy part.
928 (omp_target_memcpy_rect_check): New helper function for
929 omp_target_memcpy_rect and omp_target_memcpy_rect_async that checks
930 requirements.
931 (omp_target_memcpy_rect_copy): New helper function for
932 omp_target_memcpy_rect and omp_target_memcpy_rect_async that performs
933 the memcpy.
934 (omp_target_memcpy_rect_async_helper): New helper function that is used
935 in omp_target_memcpy_rect_async for the asynchronous task.
936 (omp_target_memcpy_rect_async): Added.
937 * task.c (ialias): Added for GOMP_task.
938 * testsuite/libgomp.c-c++-common/target-memcpy-async-1.c: New test.
939 * testsuite/libgomp.c-c++-common/target-memcpy-async-2.c: New test.
940 * testsuite/libgomp.c-c++-common/target-memcpy-rect-async-1.c: New test.
941 * testsuite/libgomp.c-c++-common/target-memcpy-rect-async-2.c: New test.
942 * testsuite/libgomp.fortran/target-memcpy-async-1.f90: New test.
943 * testsuite/libgomp.fortran/target-memcpy-async-2.f90: New test.
944 * testsuite/libgomp.fortran/target-memcpy-rect-async-1.f90: New test.
945 * testsuite/libgomp.fortran/target-memcpy-rect-async-2.f90: New test.
946
2dda9403
TB
9472022-07-05 Tobias Burnus <tobias@codesourcery.com>
948
949 Backport from mainline:
950 2022-05-18 Tobias Burnus <tobias@codesourcery.com>
951
952 * libgomp.texi (OpenMP 5.1): Set 'inoutset' to Y.
953 (OpenMP Context Selectors): Add missing comma.
954 * testsuite/libgomp.fortran/depend-5.f90: Add inoutset test.
955 * testsuite/libgomp.fortran/depend-6.f90: Likewise.
956 * testsuite/libgomp.fortran/depend-7.f90: Likewise.
957 * testsuite/libgomp.fortran/depend-inoutset-1.f90: New test.
958
bf4e0a66
TB
9592022-07-04 Tobias Burnus <tobias@codesourcery.com>
960
961 Backport from mainline:
962 2022-05-17 Tobias Burnus <tobias@codesourcery.com>
963
964 * libgomp.texi (Offload-Target Specifics): New chapter; add section
965 to document OpenMP context selectors.
966
3062a5dd
JJ
9672022-07-04 Tobias Burnus <tobias@codesourcery.com>
968
969 Backport from mainline:
970 2022-05-17 Jakub Jelinek <jakub@redhat.com>
971
972 * libgomp.h (struct gomp_task_depend_entry): Change is_in type
973 from bool to unsigned char.
974 * task.c (gomp_task_handle_depend): Handle GOMP_DEPEND_INOUTSET.
975 Ignore dependencies where
976 task->depend[i].is_in && task->depend[i].is_in == ent->is_in
977 rather than just task->depend[i].is_in && ent->is_in. Remember
978 whether GOMP_DEPEND_IN loop is needed and guard the loop with that
979 conditional.
980 (gomp_task_maybe_wait_for_dependencies): Handle GOMP_DEPEND_INOUTSET.
981 Ignore dependencies where elem.is_in && elem.is_in == ent->is_in
982 rather than just elem.is_in && ent->is_in.
983 * testsuite/libgomp.c-c++-common/depend-1.c (test): Add task with
984 inoutset depend-kind.
985 * testsuite/libgomp.c-c++-common/depend-2.c (test): Likewise.
986 * testsuite/libgomp.c-c++-common/depend-3.c (test): Likewise.
987 * testsuite/libgomp.c-c++-common/depend-inoutset-1.c: New test.
988
e387767b
TB
9892022-07-04 Tobias Burnus <tobias@codesourcery.com>
990
991 Backport from mainline:
992 2022-05-17 Tobias Burnus <tobias@codesourcery.com>
993
994 * libgomp.texi (OpenMP Implementation Status): Add 5.2 table.
995
c4157723
TB
9962022-07-04 Tobias Burnus <tobias@codesourcery.com>
997
998 Backport from mainline:
999 2022-05-17 Tobias Burnus <tobias@codesourcery.com>
1000
1001 * libgomp.texi (OpenMP 5.1): Set omp_all_memory to 'Y'.
1002 * testsuite/libgomp.fortran/depend-5.f90: New test.
1003 * testsuite/libgomp.fortran/depend-6.f90: New test.
1004 * testsuite/libgomp.fortran/depend-7.f90: New test.
1005
b584b32b
MV
10062022-07-04 Tobias Burnus <tobias@codesourcery.com>
1007
1008 Backport from mainline:
1009 2022-05-16 Marcel Vollweiler <marcel@codesourcery.com>
1010
1011 * testsuite/libgomp.c++/target-has-device-addr-7.C: New test.
1012 * testsuite/libgomp.c++/target-has-device-addr-8.C: New test.
1013 * testsuite/libgomp.c++/target-has-device-addr-9.C: New test.
1014
438b4cec
TB
10152022-07-04 Tobias Burnus <tobias@codesourcery.com>
1016
1017 Backport from mainline:
1018 2022-05-13 Tobias Burnus <tobias@codesourcery.com>
1019
1020 * testsuite/libgomp.fortran/target-nowait-array-section.f90: New test.
1021
edd96cdd
TB
10222022-07-04 Tobias Burnus <tobias@codesourcery.com>
1023
1024 Backport from mainline:
1025 2022-05-13 Tobias Burnus <tobias@codesourcery.com>
1026
1027 * testsuite/libgomp.fortran/target-nowait-array-section.f90: New test.
1028
12d14a9a
AS
10292022-06-20 Andrew Stubbs <ams@codesourcery.com>
1030
1031 * plugin/plugin-gcn.c (struct usm_splay_tree_key_s): New.
1032 (usm_splay_compare): New.
1033 (splay_tree_prefix): New.
1034 (GOMP_OFFLOAD_usm_alloc): New.
1035 (GOMP_OFFLOAD_usm_free): New.
1036 (GOMP_OFFLOAD_is_usm_ptr): New.
1037 (GOMP_OFFLOAD_supported_features): Move into the OpenMP API fold.
1038 Add GOMP_REQUIRES_UNIFIED_ADDRESS and
1039 GOMP_REQUIRES_UNIFIED_SHARED_MEMORY.
1040 (gomp_fatal): New.
1041 (splay_tree_c): New.
1042 * testsuite/lib/libgomp.exp (check_effective_target_omp_usm): New.
1043 * testsuite/libgomp.c++/usm-1.C: Use dg-require-effective-target.
1044 * testsuite/libgomp.c-c++-common/requires-1.c: Likewise.
1045 * testsuite/libgomp.c/usm-1.c: Likewise.
1046 * testsuite/libgomp.c/usm-2.c: Likewise.
1047 * testsuite/libgomp.c/usm-3.c: Likewise.
1048 * testsuite/libgomp.c/usm-4.c: Likewise.
1049 * testsuite/libgomp.c/usm-5.c: Likewise.
1050 * testsuite/libgomp.c/usm-6.c: Likewise.
1051
b845d2f6
KCY
10522022-05-30 Kwok Cheung Yeung <kcy@codesourcery.com>
1053
1054 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c
1055 (cb_compute_construct_end): Remove COPYIN block.
1056 (main): Remove assignments to acc_async.
1057 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c
1058 (cb_enter_data_end): Remove COPYIN block.
1059 (main): Remove assignment to acc_async.
1060
f7970642
KCY
10612022-05-31 Kwok Cheung Yeung <kcy@codesourcery.com>
1062
1063 * testsuite/libgomp.oacc-c-c++-common/pr85381-3.c (foo_v, foo_w):
1064 Re-add dg-warning entries.
1065
e99ae0c0
TS
10662022-05-12 Thomas Schwinge <thomas@codesourcery.com>
1067
1068 Backport from mainline:
1069 2022-05-12 Thomas Schwinge <thomas@codesourcery.com>
1070
1071 * plugin/Makefrag.am (libgomp_plugin_nvptx_la_CPPFLAGS)
1072 [PLUGIN_NVPTX_DYNAMIC]: Don't append '$(PLUGIN_NVPTX_CPPFLAGS)'.
1073 (libgomp_plugin_nvptx_la_LDFLAGS) [PLUGIN_NVPTX_DYNAMIC]: Don't
1074 append '$(PLUGIN_NVPTX_LDFLAGS)'.
1075 * Makefile.in: Regenerate.
1076
6468241f
TS
10772022-05-05 Thomas Schwinge <thomas@codesourcery.com>
1078
1079 Backport from mainline:
1080 2022-05-05 Thomas Schwinge <thomas@codesourcery.com>
1081
1082 * Makefile.am (libgomp_la_LIBADD): Initialize.
1083 * plugin/configfrag.ac (DL_LIBS): New.
1084 (PLUGIN_GCN_LIBS): Remove.
1085 (PLUGIN_NVPTX_LIBS): Don't set in the 'PLUGIN_NVPTX_DYNAMIC' case.
1086 * plugin/Makefrag.am (libgomp_la_LIBADD)
1087 (libgomp_plugin_gcn_la_LIBADD): Consider '$(DL_LIBS)'.
1088 (libgomp_plugin_nvptx_la_LIBADD) <PLUGIN_NVPTX_DYNAMIC>: Likewise.
1089 * Makefile.in: Regenerate.
1090 * config.h.in: Likewise.
1091 * configure: Likewise.
1092 * testsuite/Makefile.in: Likewise.
1093
d2a0dc62
TS
10942022-04-07 Thomas Schwinge <thomas@codesourcery.com>
1095
1096 Backport from mainline:
1097 2022-04-07 Thomas Schwinge <thomas@codesourcery.com>
1098
1099 * plugin/Makefrag.am: Handle 'PLUGIN_NVPTX_DYNAMIC'.
1100 * plugin/configfrag.ac (PLUGIN_NVPTX_DYNAMIC): Change
1101 'AC_DEFINE_UNQUOTED' into 'AM_CONDITIONAL'.
1102 * plugin/plugin-nvptx.c: Split 'PLUGIN_NVPTX_DYNAMIC' into
1103 'PLUGIN_NVPTX_INCLUDE_SYSTEM_CUDA_H' and
1104 'PLUGIN_NVPTX_LINK_LIBCUDA'.
1105 * Makefile.in: Regenerate.
1106 * config.h.in: Likewise.
1107 * configure: Likewise.
1108
828926a5
TS
11092022-05-05 Thomas Schwinge <thomas@codesourcery.com>
1110
1111 Backport from mainline:
1112 2022-05-05 Thomas Schwinge <thomas@codesourcery.com>
1113
1114 * plugin/configfrag.ac: Don't 'AC_SUBST' and 'AC_DEFINE_UNQUOTED'
1115 for 'PLUGIN_GCN', 'PLUGIN_NVPTX'.
1116 * Makefile.in: Regenerate.
1117 * config.h.in: Likewise.
1118 * configure: Likewise.
1119 * testsuite/Makefile.in: Likewise.
1120
2e67f6f7
JJ
11212022-05-12 Jakub Jelinek <jakub@redhat.com>
1122
1123 Backport from mainline:
1124 2022-05-12 Jakub Jelinek <jakub@redhat.com>
1125
1126 * libgomp.h (struct gomp_task): Add depend_all_memory member.
1127 * task.c (gomp_init_task): Initialize depend_all_memory.
1128 (gomp_task_handle_depend): Handle omp_all_memory.
1129 (gomp_task_run_post_handle_depend_hash): Clear
1130 parent->depend_all_memory if equal to current task.
1131 (gomp_task_maybe_wait_for_dependencies): Handle omp_all_memory.
1132 * testsuite/libgomp.c-c++-common/depend-1.c: New test.
1133 * testsuite/libgomp.c-c++-common/depend-2.c: New test.
1134 * testsuite/libgomp.c-c++-common/depend-3.c: New test.
1135
55890b26
TS
11362022-04-06 Thomas Schwinge <thomas@codesourcery.com>
1137
1138 Backport from mainline:
1139 2022-04-06 Thomas Schwinge <thomas@codesourcery.com>
1140
1141 * plugin/configfrag.ac: Remove '--with-hsa-runtime',
1142 '--with-hsa-runtime-include', '--with-hsa-runtime-lib' processing.
1143 * Makefile.in: Regenerate.
1144 * configure: Likewise.
1145 * testsuite/Makefile.in: Likewise.
1146
a309e5a1
TS
11472022-04-06 Thomas Schwinge <thomas@codesourcery.com>
1148
1149 Backport from mainline:
1150 2022-04-06 Thomas Schwinge <thomas@codesourcery.com>
1151
1152 * plugin/Makefrag.am (libgomp_plugin_gcn_la_CPPFLAGS): Don't
1153 consider 'PLUGIN_GCN_CPPFLAGS'.
1154 (libgomp_plugin_gcn_la_LDFLAGS): Don't consider
1155 'PLUGIN_GCN_LDFLAGS'.
1156 * plugin/configfrag.ac (PLUGIN_GCN_CPPFLAGS, PLUGIN_GCN_LDFLAGS):
1157 Remove.
1158 * Makefile.in: Regenerate.
1159 * configure: Likewise.
1160 * testsuite/Makefile.in: Likewise.
1161
125d1755
TS
11622022-04-06 Thomas Schwinge <thomas@codesourcery.com>
1163
1164 Backport from mainline:
1165 2022-04-06 Thomas Schwinge <thomas@codesourcery.com>
1166
1167 * plugin/configfrag.ac (HSA_RUNTIME_CPPFLAGS)
1168 (HSA_RUNTIME_LDFLAGS): Remove.
1169 * configure: Regenerate.
1170
cb3cdd60
TS
11712022-04-06 Thomas Schwinge <thomas@codesourcery.com>
1172
1173 Backport from mainline:
1174 2022-04-06 Thomas Schwinge <thomas@codesourcery.com>
1175
1176 * testsuite/lib/libgomp.exp (libgomp_init): Don't
1177 'append always_ld_library_path ":$hsa_runtime_lib"'.
1178 * testsuite/libgomp-test-support.exp.in (hsa_runtime_lib): Don't set.
1179
270bfaf9
TS
11802022-05-10 Thomas Schwinge <thomas@codesourcery.com>
1181
1182 Backport from mainline:
1183 2022-05-10 Thomas Schwinge <thomas@codesourcery.com>
1184
1185 * testsuite/libgomp.fortran/use_device_addr-5.f90: Fix up
1186 multi-device testing.
1187
caa81345
MV
11882022-05-06 Marcel Vollweiler <marcel@codesourcery.com>
1189
1190 Backport from mainline:
1191 2022-05-06 Marcel Vollweiler <marcel@codesourcery.com>
1192
1193 * libgomp.map: Added omp_target_is_accessible.
1194 * libgomp.texi: Tagged omp_target_is_accessible as supported.
1195 * omp.h.in: Added omp_target_is_accessible.
1196 * omp_lib.f90.in: Added interface for omp_target_is_accessible.
1197 * omp_lib.h.in: Likewise.
1198 * target.c (omp_target_is_accessible): Added implementation of
1199 omp_target_is_accessible.
1200 * testsuite/libgomp.c-c++-common/target-is-accessible-1.c: New test.
1201 * testsuite/libgomp.fortran/target-is-accessible-1.f90: New test.
1202
67c9b129
SL
12032022-05-05 Sandra Loosemore <sandra@codesourcery.com>
1204
1205 Backport from mainline:
1206 2022-05-05 Sandra Loosemore <sandra@codesourcery.com>
1207
1208 * libgomp.texi (OpenMP 5.0): Feature is now fully supported.
1209
d9070421
TB
12102022-05-04 Tobias Burnus <tobias@codesourcery.com>
1211
1212 Backport from master:
1213 2022-05-04 Tobias Burnus <tobias@codesourcery.com>
1214
1215 * plugin/plugin-gcn.c (isa_matches_agent): Suggest -foffload-options.
1216
28c49e0f
MV
12172022-05-02 Marcel Vollweiler <marcel@codesourcery.com>
1218
1219 Backport from mainline:
1220 2022-05-02 Marcel Vollweiler <marcel@codesourcery.com>
1221
1222 * libgomp.map: Added omp_get_mapped_ptr.
1223 * libgomp.texi: Tagged omp_get_mapped_ptr as supported.
1224 * omp.h.in: Added omp_get_mapped_ptr.
1225 * omp_lib.f90.in: Added interface for omp_get_mapped_ptr.
1226 * omp_lib.h.in: Likewise.
1227 * target.c (omp_get_mapped_ptr): Added implementation of
1228 omp_get_mapped_ptr.
1229 * testsuite/libgomp.c-c++-common/get-mapped-ptr-1.c: New test.
1230 * testsuite/libgomp.c-c++-common/get-mapped-ptr-2.c: New test.
1231 * testsuite/libgomp.c-c++-common/get-mapped-ptr-3.c: New test.
1232 * testsuite/libgomp.c-c++-common/get-mapped-ptr-4.c: New test.
1233 * testsuite/libgomp.fortran/get-mapped-ptr-1.f90: New test.
1234 * testsuite/libgomp.fortran/get-mapped-ptr-2.f90: New test.
1235 * testsuite/libgomp.fortran/get-mapped-ptr-3.f90: New test.
1236 * testsuite/libgomp.fortran/get-mapped-ptr-4.f90: New test.
1237
18300fba
AS
12382022-02-24 Andrew Stubbs <ams@codesourcery.com>
1239
1240 Backport from mainline:
1241 2022-02-24 Andrew Stubbs <ams@codesourcery.com>
1242
1243 * plugin/plugin-gcn.c (EF_AMDGPU_MACH): Add
1244 EF_AMDGPU_MACH_AMDGCN_GFX90a.
1245 (gcn_gfx90a_s): New.
1246 (isa_hsa_name): Support gfx90a.
1247 (isa_code): Likewise.
1248
2bdbbdb6
TB
12492022-05-23 Tobias Burnus <tobias@codesourcery.com>
1250
1251 Backport from mainline:
1252 2022-05-23 Tobias Burnus <tobias@codesourcery.com>
1253
1254 PR fortran/104949
1255 * target.c (gomp_map_vars_internal, copy_firstprivate_data):
1256 Support attach for GOMP_MAP_FIRSTPRIVATE.
1257 * testsuite/libgomp.fortran/target-firstprivate-1.f90: New test.
1258 * testsuite/libgomp.fortran/target-firstprivate-2.f90: New test.
1259 * testsuite/libgomp.fortran/target-firstprivate-3.f90: New test.
1260
f0ac4511
TB
12612022-05-09 Kwok Cheung Yeung <kcy@codesourcery.com>
1262
1263 Backport from master:
1264 2022-05-04 Tobias Burnus <tobias@codesourcery.com>
1265
1266 * testsuite/libgomp.fortran/use_device_addr-5.f90: New test.
1267
02b49557
AS
12682022-04-13 Andrew Stubbs <ams@codesourcery.com>
1269
1270 * testsuite/libgomp.c/alloc-pinned-1.c: Autodetect page size.
1271 * testsuite/libgomp.c/alloc-pinned-2.c: Likewise.
1272 * testsuite/libgomp.c/alloc-pinned-3.c: Likewise.
1273 * testsuite/libgomp.c/alloc-pinned-4.c: Likewise.
1274 * testsuite/libgomp.c/alloc-pinned-5.c: Likewise.
1275 * testsuite/libgomp.c/alloc-pinned-6.c: Likewise.
1276 * testsuite/libgomp.c/alloc-pinned-7.c: Clean up.
1277
39bdcd84
AS
12782022-04-02 Andrew Stubbs <ams@codesourcery.com>
1279
1280 * testsuite/libgomp.c/usm-6.c: Add omp_target_alloc.
1281
8099ba0e
HAQ
12822022-03-31 Abid Qadeer <abidh@codesourcery.com>
1283
1284 * testsuite/libgomp.fortran/allocate-2.f90: Remove commented lines.
1285 Add deallocate. Remove omp_atk_pool_size trait.
1286
f3fd38e3
AS
12872022-03-29 Andrew Stubbs <ams@codesourcery.com>
1288
1289 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_supported_features): Allow
1290 GOMP_REQUIRES_UNIFIED_ADDRESS and GOMP_REQUIRES_UNIFIED_SHARED_MEMORY.
1291
842df187
AS
12922022-03-11 Andrew Stubbs <ams@codesourcery.com>
1293
1294 Backport of the patch posted at
1295 https://gcc.gnu.org/pipermail/gcc-patches/2022-March/591354.html
1296
1297 * config/linux/allocator.c (always_pinned_mode): New variable.
1298 (GOMP_enable_pinned_mode): New function.
1299 (linux_memspace_alloc): Disable pinning when always_pinned_mode set.
1300 (linux_memspace_calloc): Likewise.
1301 (linux_memspace_free): Likewise.
1302 (linux_memspace_realloc): Likewise.
1303 * libgomp.map (GOMP_5.1.1): New version space with
1304 GOMP_enable_pinned_mode.
1305 * testsuite/libgomp.c/alloc-pinned-7.c: New test.
1306
54c2d861
HAQ
13072022-03-11 Abid Qadeer <abidh@codesourcery.com>
1308
1309 Backport of a patch posted at
1310 https://gcc.gnu.org/pipermail/gcc-patches/2022-March/591353.html
1311
1312 * testsuite/libgomp.c/usm-6.c: New test.
1313 * testsuite/libgomp.c++/usm-1.C: Likewise.
1314
84914e19
AS
13152022-03-11 Andrew Stubbs <ams@codesourcery.com>
1316
1317 Backport of the patch posted at
1318 https://gcc.gnu.org/pipermail/gcc-patches/2022-March/591352.html
1319
1320 * allocator.c (omp_max_predefined_alloc): Update.
1321 (omp_aligned_alloc): Don't fallback ompx_host_mem_alloc.
1322 (omp_aligned_calloc): Likewise.
1323 (omp_realloc): Likewise.
1324 * config/linux/allocator.c (linux_memspace_alloc): Handle USM.
1325 (linux_memspace_calloc): Handle USM.
1326 (linux_memspace_free): Handle USM.
1327 (linux_memspace_realloc): Handle USM.
1328 * config/nvptx/allocator.c (nvptx_memspace_alloc): Reject
1329 ompx_host_mem_alloc.
1330 (nvptx_memspace_calloc): Likewise.
1331 (nvptx_memspace_realloc): Likewise.
1332 * libgomp-plugin.h (GOMP_OFFLOAD_usm_alloc): New prototype.
1333 (GOMP_OFFLOAD_usm_free): New prototype.
1334 (GOMP_OFFLOAD_is_usm_ptr): New prototype.
1335 * libgomp.h (gomp_usm_alloc): New prototype.
1336 (gomp_usm_free): New prototype.
1337 (gomp_is_usm_ptr): New prototype.
1338 (struct gomp_device_descr): Add USM functions.
1339 * omp.h.in (omp_memspace_handle_t): Add ompx_unified_shared_mem_space
1340 and ompx_host_mem_space.
1341 (omp_allocator_handle_t): Add ompx_unified_shared_mem_alloc and
1342 ompx_host_mem_alloc.
1343 * omp_lib.f90.in: Likewise.
1344 * plugin/plugin-nvptx.c (nvptx_alloc): Add "usm" parameter.
1345 Call cuMemAllocManaged as appropriate.
1346 (GOMP_OFFLOAD_alloc): Move internals to ...
1347 (GOMP_OFFLOAD_alloc_1): ... this, and add usm parameter.
1348 (GOMP_OFFLOAD_usm_alloc): New function.
1349 (GOMP_OFFLOAD_usm_free): New function.
1350 (GOMP_OFFLOAD_is_usm_ptr): New function.
1351 * target.c (gomp_map_vars_internal): Add USM support.
1352 (gomp_usm_alloc): New function.
1353 (gomp_usm_free): New function.
1354 (gomp_load_plugin_for_device): New function.
1355 * testsuite/libgomp.c/usm-1.c: New test.
1356 * testsuite/libgomp.c/usm-2.c: New test.
1357 * testsuite/libgomp.c/usm-3.c: New test.
1358 * testsuite/libgomp.c/usm-4.c: New test.
1359 * testsuite/libgomp.c/usm-5.c: New test.
1360
f6c61b32
AS
13612022-03-11 Andrew Stubbs <ams@codesourcery.com>
1362
1363 Backport of a patch posted at
1364 https://gcc.gnu.org/pipermail/gcc-patches/2022-January/589355.html
1365
1366 * allocator.c (MEMSPACE_VALIDATE): New macro.
1367 (omp_aligned_alloc): Use MEMSPACE_VALIDATE.
1368 (omp_aligned_calloc): Likewise.
1369 (omp_realloc): Likewise.
1370 * config/nvptx/allocator.c (nvptx_memspace_validate): New function.
1371 (MEMSPACE_VALIDATE): New macro.
1372 * testsuite/libgomp.c/allocators-4.c (main): Add access trait.
1373 * testsuite/libgomp.c/allocators-6.c (main): Add access trait.
1374 * testsuite/libgomp.c/allocators-7.c: New test.
1375
c3ea2b44
AS
13762022-03-11 Andrew Stubbs <ams@codesourcery.com>
1377
1378 Backport of a patch posted at
1379 https://gcc.gnu.org/pipermail/gcc-patches/2022-January/588951.html
1380
1381 * allocator.c (omp_max_predefined_alloc): Update.
1382 (omp_aligned_alloc): Support ompx_pinned_mem_alloc.
1383 (omp_free): Likewise.
1384 (omp_aligned_calloc): Likewise.
1385 (omp_realloc): Likewise.
1386 * omp.h.in (omp_allocator_handle_t): Add ompx_pinned_mem_alloc.
1387 * omp_lib.f90.in: Add ompx_pinned_mem_alloc.
1388 * testsuite/libgomp.c/alloc-pinned-5.c: New test.
1389 * testsuite/libgomp.c/alloc-pinned-6.c: New test.
1390 * testsuite/libgomp.fortran/alloc-pinned-1.f90: New test.
1391
ab7520b3
AS
13922022-03-10 Andrew Stubbs <ams@codesourcery.com>
1393
1394 Backport of a patch posted at
1395 https://gcc.gnu.org/pipermail/gcc-patches/2022-January/588360.html
1396
1397 * allocator.c (MEMSPACE_ALLOC): Add PIN.
1398 (MEMSPACE_CALLOC): Add PIN.
1399 (MEMSPACE_REALLOC): Add PIN.
1400 (MEMSPACE_FREE): Add PIN.
1401 (xmlock): New function.
1402 (omp_init_allocator): Don't disallow the pinned trait.
1403 (omp_aligned_alloc): Add pinning to all MEMSPACE_* calls.
1404 (omp_aligned_calloc): Likewise.
1405 (omp_realloc): Likewise.
1406 (omp_free): Likewise.
1407 * config/linux/allocator.c: New file.
1408 * config/nvptx/allocator.c (MEMSPACE_ALLOC): Add PIN.
1409 (MEMSPACE_CALLOC): Add PIN.
1410 (MEMSPACE_REALLOC): Add PIN.
1411 (MEMSPACE_FREE): Add PIN.
1412 * testsuite/libgomp.c/alloc-pinned-1.c: New test.
1413 * testsuite/libgomp.c/alloc-pinned-2.c: New test.
1414 * testsuite/libgomp.c/alloc-pinned-3.c: New test.
1415 * testsuite/libgomp.c/alloc-pinned-4.c: New test.
1416
d4ef7517
HAQ
14172022-03-09 Abid Qadeer <abidh@codesourcery.com>
1418
1419 Backport of a patch posted at
1420 https://gcc.gnu.org/pipermail/gcc-patches/2022-January/588372.html
1421
1422 * testsuite/libgomp.fortran/allocate-2.f90: New test.
1423
a6c1eccf
TB
14242022-03-01 Tobias Burnus <tobias@codesourcery.com>
1425
1426 * testsuite/libgomp.fortran/allocatable-comp.f90: New test.
1427 * testsuite/libgomp.fortran/map-alloc-comp-3.f90: New test.
1428 * testsuite/libgomp.fortran/map-alloc-comp-4.f90: New test.
1429 * testsuite/libgomp.fortran/map-alloc-comp-5.f90: New test.
1430 * testsuite/libgomp.fortran/map-alloc-comp-6.f90: New test.
1431 * testsuite/libgomp.fortran/map-alloc-comp-7.f90: New test.
1432
faf2c465
CLT
14332022-02-24 Chung-Lin Tang <cltang@codesourcery.com>
1434
1435 * testsuite/libgomp.c-c++-common/ptr-attach-2.c: New test.
1436
2e950eca
KCY
14372022-01-28 Kwok Cheung Yeung <kcy@codesourcery.com>
1438
1439 * testsuite/libgomp.c-c++-common/metadirective-2.c (main): Add
1440 expected warning.
1441 * testsuite/libgomp.fortran/metadirective-2.f90 (test): Likewise.
1442
da1da230
KCY
14432022-01-25 Kwok Cheung Yeung <kcy@codesourcery.com>
1444
1445 * Makefile.am (libgomp_la_SOURCES): Add selector.c.
1446 * Makefile.am: Regenerate.
1447 * config/gcn/selector.c: New.
1448 * config/linux/selector.c: New.
1449 * config/linux/x86/selector.c: New.
1450 * config/nvptx/selector.c: New.
1451 * libgomp-plugin.h (GOMP_OFFLOAD_evaluate_device): New.
1452 * libgomp.h (struct gomp_device_descr): Add evaluate_device_func field.
1453 * libgomp.map (GOMP_5.1): Add GOMP_evaluate_target_device.
1454 * libgomp_g.h (GOMP_evaluate_current_device): New.
1455 (GOMP_evaluate_target_device): New.
1456 * oacc-host.c (host_evaluate_device): New.
1457 (host_openacc_exec): Initialize evaluate_device_func field to
1458 host_evaluate_device.
1459 * plugin/plugin-gcn.c (GOMP_OFFLOAD_evaluate_device): New.
1460 * plugin/plugin-nvptx.c (struct ptx_device): Add compute_major and
1461 compute_minor fields.
1462 (nvptx_open_device): Read compute capability information from device.
1463 (CHECK_ISA): New macro.
1464 (GOMP_OFFLOAD_evaluate_device): New.
1465 * selector.c: New.
1466 * target.c (GOMP_evaluate_target_device): New.
1467 (gomp_load_plugin_for_device): Load evaulate_device plugin function.
1468 * testsuite/libgomp.c-c++-common/metadirective-5.c: New testcase.
1469 * testsuite/libgomp.fortran/metadirective-5.f90: New testcase.
1470
d7b611a5
KCY
14712022-01-25 Kwok Cheung Yeung <kcy@codesourcery.com>
1472
1473 * testsuite/libgomp.c-c++-common/metadirective-1.c: New.
1474 * testsuite/libgomp.c-c++-common/metadirective-2.c: New.
1475 * testsuite/libgomp.c-c++-common/metadirective-3.c: New.
1476 * testsuite/libgomp.c-c++-common/metadirective-4.c: New.
1477 * testsuite/libgomp.fortran/metadirective-1.f90: New.
1478 * testsuite/libgomp.fortran/metadirective-2.f90: New.
1479 * testsuite/libgomp.fortran/metadirective-3.f90: New.
1480 * testsuite/libgomp.fortran/metadirective-4.f90: New.
1481
1486a6a4
KCY
14822022-06-21 Kwok Cheung Yeung <kcy@codesourcery.com>
1483
1484 * config/nvptx/team.c (gomp_nvptx_main): Initialize shared_pool_size
1485 to zero. Do not use dynamic_smem_size register if PTX version lower
1486 than 4.1.
1487
c5d1d765
AS
14882021-12-22 Andrew Stubbs <ams@codesourcery.com>
1489
1490 * allocator.c (MEMSPACE_ALLOC): New macro.
1491 (MEMSPACE_CALLOC): New macro.
1492 (MEMSPACE_REALLOC): New macro.
1493 (MEMSPACE_FREE): New macro.
1494 (dynamic_smem_size): New constants.
1495 (omp_alloc): Use MEMSPACE_ALLOC.
1496 Implement fall-backs for predefined allocators.
1497 (omp_free): Use MEMSPACE_FREE.
1498 (omp_calloc): Use MEMSPACE_CALLOC.
1499 Implement fall-backs for predefined allocators.
1500 (omp_realloc): Use MEMSPACE_REALLOC.
1501 Implement fall-backs for predefined allocators.
1502 * config/nvptx/team.c (__nvptx_lowlat_heap_root): New variable.
1503 (__nvptx_lowlat_pool): New asm varaible.
1504 (gomp_nvptx_main): Initialize the low-latency heap.
1505 * plugin/plugin-nvptx.c (lowlat_pool_size): New variable.
1506 (GOMP_OFFLOAD_init_device): Read the GOMP_NVPTX_LOWLAT_POOL envvar.
1507 (GOMP_OFFLOAD_run): Apply lowlat_pool_size.
1508 * config/nvptx/allocator.c: New file.
1509 * testsuite/libgomp.c/allocators-1.c: New test.
1510 * testsuite/libgomp.c/allocators-2.c: New test.
1511 * testsuite/libgomp.c/allocators-3.c: New test.
1512 * testsuite/libgomp.c/allocators-4.c: New test.
1513 * testsuite/libgomp.c/allocators-5.c: New test.
1514 * testsuite/libgomp.c/allocators-6.c: New test.
1515
89cb5556
KCY
15162022-06-21 Kwok Cheung Yeung <kcy@codesourcery.com>
1517
1518 * plugin/cuda-lib.def (cuMemAllocManaged): Add new call.
1519 (cuPointerGetAttribute): Likewise.
1520
e85cf3eb
FH
15212021-11-16 Frederik Harwath <frederik@codesourcery.com>
1522
1523 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c: Adjust.
1524 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Adjust.
1525 * testsuite/libgomp.oacc-c-c++-common/pr84955-1.c: Adjust.
1526 * testsuite/libgomp.oacc-c-c++-common/pr85381-2.c: Adjust.
1527 * testsuite/libgomp.oacc-c-c++-common/pr85381-3.c: Adjust.
1528 * testsuite/libgomp.oacc-c-c++-common/pr85381-4.c: Adjust.
1529 * testsuite/libgomp.oacc-c-c++-common/pr85486-2.c: Adjust.
1530 * testsuite/libgomp.oacc-c-c++-common/pr85486-3.c: Adjust.
1531 * testsuite/libgomp.oacc-c-c++-common/pr85486.c: Adjust.
1532 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-1.c: Adjust.
1533 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-2.c: Adjust.
1534 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-3.c: Adjust.
1535 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-4.c: Adjust.
1536 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-5.c: Adjust.
1537 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-6.c: Adjust.
1538 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-7.c: Adjust.
1539 * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction-2.f90: Adjust.
1540 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Adjust.
1541 * testsuite/libgomp.oacc-fortran/parallel-loop-auto-reduction-2.f90: Removed.
1542
a7e863fc
AS
15432021-11-16 Andrew Stubbs <ams@codesourcery.com>
1544
1545 * testsuite/libgomp.oacc-c-c++-common/runtime-alias-check-1.c: New test.
1546 * testsuite/libgomp.oacc-c-c++-common/runtime-alias-check-2.c: New test.
1547
ab53d5a6
AS
15482021-11-16 Andrew Stubbs <ams@codesourcery.com>
1549 Thomas Schwinge <thomas@codesourcery.com>
1550
1551 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
1552 Expect optimization messages.
1553 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Likewise.
1554
22e26296
FH
15552021-11-16 Frederik Harwath <frederik@codesourcery.com>
1556
1557 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Adjust
1558 expectations.
1559
900a5576
FH
15602021-11-16 Frederik Harwath <frederik@codesourcery.com>
1561
1562 * testsuite/libgomp.oacc-fortran/parallel-loop-auto-reduction-2.f90:
1563 New test.
1564
9c7a6472
FH
15652021-11-16 Frederik Harwath <frederik@codesourcery.com>
1566 Thomas Schwinge <thomas@codesourcery.com>
1567
1568 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Adjust.
1569 * testsuite/libgomp.oacc-fortran/kernels-independent.f90: Adjust.
1570 * testsuite/libgomp.oacc-fortran/kernels-loop-1.f90: Adjust.
1571 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Adjust.
1572
3e8b51d1
FH
15732021-11-16 Frederik Harwath <frederik@codesourcery.com>
1574 Thomas Schwinge <thomas@codesourcery.com>
1575
1576 * testsuite/libgomp.oacc-c-c++-common/pr85486-2.c: Adjust
1577 expected output to pass name changes due to the pass
1578 reordering and cloning.
1579 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-1.c: Likewise.
1580 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-2.c: Likewise.
1581 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-3.c: Likewise.
1582 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-4.c: Likewise.
1583 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-5.c: Likewise.
1584 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-6.c: Likewise
1585 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-7.c: Likewise.
1586
3f4978ee
TB
15872021-10-21 Tobias Burnus <tobias@codesourcery.com>
1588
1589 * testsuite/libgomp.oacc-fortran/declare-allocatable-1.f90: Compile
1590 with -Wopenacc-parallelism.
1591 * testsuite/libgomp.oacc-fortran/declare-allocatable-3.f90: Likewise.
1592
157e8afa
AS
15932021-08-03 Andrew Stubbs <ams@codesourcery.com>
1594
1595 * config/gcn/bar.h (gomp_barrier_init): Limit thread count to the
1596 actual physical number.
1597 * config/gcn/team.c (gomp_team_start): Don't attempt to set up
1598 threads that do not exist.
1599
404817a4
JB
16002021-06-02 Julian Brown <julian@codesourcery.com>
1601
1602 * testsuite/libgomp.oacc-c-c++-common/deep-copy-15.c: New test.
1603 * testsuite/libgomp.oacc-c-c++-common/deep-copy-16.c: New test.
1604 * testsuite/libgomp.oacc-c++/deep-copy-17.C: New test.
1605
47e5ba64
TS
16062021-03-25 Thomas Schwinge <thomas@codesourcery.com>
1607
1608 * target.c (__requires_mask_table, __requires_mask_table_end): Add
1609 '__attribute__((weak))'.
1610
f3d77a2a
KCY
16112021-03-01 Kwok Cheung Yeung <kcy@codesourcery.com>
1612
1613 * testsuite/libgomp.c-c++-common/collapse-4.c: New.
1614 * testsuite/libgomp.fortran/collapse5.f90: New.
1615
86a04ff9
AS
16162021-02-23 Andrew Stubbs <ams@codesourcery.com>
1617
1618 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_alloc): Remove early call to
1619 nvptx_stacks_free.
1620
6ab6303f
CLT
16212021-02-02 Chung-Lin Tang <cltang@codesourcery.com>
1622
1623 * libgomp-plugin.h (GOMP_OFFLOAD_supported_features): New declaration.
1624 * libgomp.h (struct gomp_device_descr): New 'supported_features_func'
1625 plugin hook field.
1626 * oacc-host.c (host_supported_features): New host hook function.
1627 (host_dispatch): Initialize 'supported_features_func' host hook.
1628 * plugin/plugin-gcn.c (GOMP_OFFLOAD_supported_features): New function.
1629 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_supported_features): Likewise.
1630 * target.c (<stdio.h>): Add include of standard header.
1631 (gomp_requires_mask): New static variable.
1632 (__requires_mask_table): New declaration.
1633 (__requires_mask_table_end): Likewise.
1634
11a9acbd
JB
16352021-01-13 Julian Brown <julian@codesourcery.com>
1636
1637 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Adjust for loop
1638 lowering changes.
1639 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Likewise.
1640 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
1641 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Likewise.
1642 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: Likewise.
1643 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: Likewise.
1644
598ef2eb
TB
16452020-07-16 Tobias Burnus <tobias@codesourcery.com>
1646
1647 * testsuite/libgomp.oacc-fortran/firstprivate-int.f90: Use
1648 highest available integer kind instead of assuming that kind=16 exists.
1649
f6cdb8cc
KCY
16502020-03-24 Kwok Cheung Yeung <kcy@codesourcery.com>
1651
1652 * testsuite/libgomp.oacc-c-c++-common/data-firstprivate-1.c: XFAIL
1653 execution test.
1654
85626d15
JB
16552019-09-17 Julian Brown <julian@codesourcery.com>
1656 Kwok Cheung Yeung <kcy@codesourcery.com>
1657
1658 * testsuite/libgomp.oacc-c-c++-common/deep-copy-10.c (main): Fix
1659 async-safety issue. Increase number of iterations.
1660
924b6fcc
JB
16612021-04-07 Kwok Cheung Yeung <kcy@codesourcery.com>
1662
1663 * oacc-mem.c (goacc_enter_data_internal): Unlock mutex before calling
1664 gomp_acc_declare_allocate and relock it afterwards.
1665
16662018-10-04 Cesar Philippidis <cesar@codesourcery.com>
1667 Julian Brown <julian@codesourcery.com>
1668
1669 * libgomp.h (gomp_acc_declare_allocate): Remove prototype.
1670 * oacc-mem.c (gomp_acc_declare_allocate): New function.
1671 * oacc-parallel.c (goacc_enter_data_internal): Handle
1672 GOMP_MAP_DECLARE_ALLOCATE. Pass new pointer argument to
1673 gomp_acc_declare_allocate.
1674 (goacc_exit_data_internal): Handle GOMP_MAP_DECLARE_DEALLOCATE.
1675 Unlock device mutex around gomp_acc_declare_allocate call. Pass
1676 new pointer argument. Handle group pointer mapping for deallocate.
1677 (find_group_last): Handle GOMP_MAP_DECLARE_ALLOCATE and
1678 GOMP_MAP_DECLARE_DEALLOCATE groupings.
1679 * testsuite/libgomp.oacc-fortran/allocatable-scalar.f90: New test.
1680 * testsuite/libgomp.oacc-fortran/declare-allocatable-1.f90: New test.
1681 * testsuite/libgomp.oacc-fortran/declare-allocatable-2.f90: New test.
1682 * testsuite/libgomp.oacc-fortran/declare-allocatable-3.f90: New test.
1683 * testsuite/libgomp.oacc-fortran/declare-allocatable-4.f90: New test.
1684
719f93c8
JB
16852019-09-17 Julian Brown <julian@codesourcery.com>
1686
1687 * oacc-host.c (host_openacc_async_queue_callback): Invoke callback
1688 function immediately.
1689 * oacc-parallel.c (struct async_prof_callback_info, async_prof_dispatch,
1690 queue_async_prof_dispatch): New.
1691 (GOACC_parallel_keyed): Call queue_async_prof_dispatch for asynchronous
1692 profile-event dispatches.
1693 (GOACC_update): Likewise.
1694 * oacc-mem.c (GOACC_enter_exit_data): Call queue_async_prof_dispatch
1695 for asynchronous profile-event dispatches.
1696 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c
1697 (cb_compute_construct_start): Remove/fix TODO.
1698 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c
1699 (cb_exit_data_start): Tweak expected state values.
1700 (cb_exit_data_end): Likewise.
1701 (cb_compute_construct_start): Remove/fix TODO.
1702 (cb_compute_construct_end): Don't do adjustments for
1703 acc_ev_enqueue_launch_start/acc_ev_enqueue_launch_end callbacks.
1704 (cb_compute_construct_end): Tweak expected state values.
1705 (cb_enqueue_launch_start, cb_enqueue_launch_end): Don't expect
1706 launch-enqueue operations to happen synchronously with respect to
1707 profiling events on async streams.
1708 (main): Tweak expected state values.
1709 * testsuite/libgomp.oacc-c-c++-common/lib-94.c (main): Reorder
1710 operations for async-safety.
1711
684d44a3
JB
17122019-09-05 Julian Brown <julian@codesourcery.com>
1713
1714 * testsuite/libgomp.oacc-fortran/lib-13.f90: End data region after
1715 wait API calls.
1716
d6c3e628
JB
17172019-08-08 Julian Brown <julian@codesourcery.com>
1718
1719 * plugin/plugin-gcn.c (GOMP_OFFLOAD_openacc_exec_params,
1720 GOMP_OFFLOAD_openacc_async_exec_params): New functions.
1721
f398407c
JB
17222019-07-31 Julian Brown <julian@codesourcery.com>
1723
1724 * config/nvptx/gomp_print.c (gomp_print_string, gomp_print_integer,
1725 gomp_print_double): New.
1726
833ff20b
KCY
17272019-01-23 Thomas Schwinge <thomas@codesourcery.com>
1728
1729 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Update.
1730
17312018-12-20 Maciej W. Rozycki <macro@codesourcery.com>
1732
1733 * oacc-init.c (get_property_any): Add profiling code.
1734
17352017-02-28 Thomas Schwinge <thomas@codesourcery.com>
1736
1737 * Makefile.am (libgomp_la_SOURCES): Add
1738 oacc-profiling-acc_register_library.c.
1739 * Makefile.in: Regenerate.
1740 * libgomp.texi: Remove paragraph about acc_register_library.
1741 * oacc-parallel.c (GOACC_parallel_keyed_internal): Set device_api for
1742 profiling.
1743 * oacc-profiling-acc_register_library.c: New file.
1744 * oacc-profiling.c (goacc_profiling_initialize): Call
1745 acc_register_library. Avoid duplicate registration.
1746 (acc_register_library): Remove.
1747 * config/nvptx/oacc-profiling-acc_register_library.c:
1748 New empty file.
1749 * config/nvptx/oacc-profiling.c: Likewise.
1750 * testsuite/libgomp.oacc-c-c++-common/acc_prof-dispatch-1.c: Remove
1751 call to acc_register_library.
1752 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c: Likewise.
1753 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Likewise.
1754 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c: Likewise.
1755 * testsuite/libgomp.oacc-c-c++-common/acc_prof-valid_bytes-1.c:
1756 Likewise.
1757 * testsuite/libgomp.oacc-c-c++-common/acc_prof-version-1.c: Likewise.
1758
47aa908f
JB
17592019-05-16 Julian Brown <julian@codesourcery.com>
1760
1761 * testsuite/libgomp.oacc-c-c++-common/kernels-for-index-reuse-1.c: New
1762 test.
1763
de9f5e0c
JB
17642019-01-09 Julian Brown <julian@codesourcery.com>
1765
1766 * libgomp.texi: Update mentions of OpenACC version to 2.6. Update
1767 section numbers to match version 2.6 of the spec.
1768
eadd78ea
TS
17692019-01-30 Thomas Schwinge <thomas@codesourcery.com>
1770
1771 * testsuite/libgomp.oacc-c-c++-common/kernels-alias-ipa-pta-2.c:
1772 Add "--param=openacc-kernels=parloops".
1773 * testsuite/libgomp.oacc-c-c++-common/kernels-alias-ipa-pta-3.c:
1774 Likewise.
1775 * testsuite/libgomp.oacc-c-c++-common/kernels-alias-ipa-pta.c:
1776 Likewise.
1777 * testsuite/libgomp.oacc-c-c++-common/kernels-empty.c: Likewise.
1778 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: Likewise.
1779 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-3.c: Likewise.
1780 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-2.c:
1781 Likewise.
1782 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-3.c:
1783 Likewise.
1784 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-4.c:
1785 Likewise.
1786 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-5.c:
1787 Likewise.
1788 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-6.c:
1789 Likewise.
1790 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq.c:
1791 Likewise.
1792 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-collapse.c:
1793 Likewise.
1794 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-2.c:
1795 Likewise.
1796 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit-2.c:
1797 Likewise.
1798 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit.c:
1799 Likewise.
1800 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-update.c:
1801 Likewise.
1802 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data.c:
1803 Likewise.
1804 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-g.c: Likewise.
1805 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-mod-not-zero.c:
1806 Likewise.
1807 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-n.c: Likewise.
1808 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-nest.c:
1809 Likewise.
1810 * testsuite/libgomp.oacc-c-c++-common/kernels-loop.c: Likewise.
1811 * testsuite/libgomp.oacc-c-c++-common/kernels-parallel-loop-data-enter-exit.c:
1812 Likewise.
1813 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction-1.c:
1814 Likewise.
1815 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction.c:
1816 Likewise.
1817 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Likewise.
1818 * testsuite/libgomp.oacc-fortran/kernels-loop-data-2.f95:
1819 Likewise.
1820 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit-2.f95:
1821 Likewise.
1822 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit.f95:
1823 Likewise.
1824 * testsuite/libgomp.oacc-fortran/kernels-loop-data-update.f95:
1825 Likewise.
1826 * testsuite/libgomp.oacc-fortran/kernels-loop-data.f95: Likewise.
1827 * testsuite/libgomp.oacc-fortran/kernels-loop.f95: Likewise.
1828 * testsuite/libgomp.oacc-fortran/kernels-parallel-loop-data-enter-exit.f95:
1829 Likewise.
1830 * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90:
1831 Likewise.
1832
063265b9
JB
18332019-03-19 Julian Brown <julian@codesourcery.com>
1834
1835 * testsuite/libgomp.oacc-c-c++-common/lib-93.c: Adjust target selector.
1836
edb11b53
JB
18372018-09-05 Cesar Philippidis <cesar@codesourcery.com>
1838 Chung-Lin Tang <cltang@codesourcery.com>
1839
1840 * testsuite/libgomp.oacc-c-c++-common/privatize-reduction-1.c: New
1841 test.
1842 * testsuite/libgomp.oacc-c-c++-common/privatize-reduction-2.c: New
1843 test.
1844
008f2396
JB
18452018-09-20 Cesar Philippidis <cesar@codesourcery.com>
1846
1847 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Adjust test case
1848 to conform to the new behavior of the auto clause in OpenACC 2.5.
1849
bfe3562f
JB
18502018-12-22 Cesar Philippidis <cesar@codesourcery.com>
1851 Julian Brown <julian@codesourcery.com>
1852
1853 * oacc-parallel.c (GOACC_parallel_keyed): Handle
1854 GOMP_MAP_FIRSTPRIVATE_INT host addresses.
1855 * plugin/plugin-nvptx.c (nvptx_exec): Handle
1856 GOMP_MAP_FIRSTPRIVATE_INT host addresses.
1857 * testsuite/libgomp.oacc-c++/firstprivate-int.C: New test.
1858 * testsuite/libgomp.oacc-c-c++-common/firstprivate-int.c: New
1859 test.
1860 * testsuite/libgomp.oacc-fortran/firstprivate-int.f90: New test.
1861
241ee112
JB
18622018-08-28 Julian Brown <julian@codesourcery.com>
1863 Cesar Philippidis <cesar@codesourcery.com>
1864
1865 * testsuite/libgomp.oacc-c-c++-common/pr70828.c: New test.
1866 * testsuite/libgomp.oacc-fortran/implicit_copy.f90: New test.
1867 * testsuite/libgomp.oacc-fortran/pr70828.f90: New test.
1868 * testsuite/libgomp.oacc-fortran/pr70828-2.f90: New test.
1869 * testsuite/libgomp.oacc-fortran/pr70828-3.f90: New test.
1870 * testsuite/libgomp.oacc-fortran/pr70828-4.f90: New test.
1871 * testsuite/libgomp.oacc-fortran/pr70828-5.f90: New test.
1872 * testsuite/libgomp.oacc-fortran/pr70828-6.f90: New test.
1873
d9075a4c
JB
18742018-10-05 Nathan Sidwell <nathan@acm.org>
1875 Tom de Vries <tdevries@suse.de>
1876 Thomas Schwinge <thomas@codesourcery.com>
1877 Julian Brown <julian@codesourcery.com>
1878
1879 * testsuite/libgomp.oacc-c-c++-common/loop-default-compile.c: New.
1880 * testsuite/libgomp.oacc-c-c++-common/loop-warn-1.c: New.
1881 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
1882
59e263c4
JB
18832018-10-22 James Norris <jnorris@codesourcery.com>
1884 Cesar Philippidis <cesar@codesourcery.com>
1885 Tom de Vries <tom@codesourcery.com>
1886
1887 * testsuite/libgomp.oacc-fortran/data-3.f90: Update parallel
1888 regions to denote variables copyied in via acc enter data as
1889 present.
1890 * testsuite/libgomp.oacc-c-c++-common/subr.h: Reimplement.
1891 * testsuite/libgomp.oacc-c-c++-common/subr.ptx: Regenerated PTX.
1892 * testsuite/libgomp.oacc-c-c++-common/timer.h: Removed.
1893 * testsuite/libgomp.oacc-c-c++-common/lib-69.c: Change async checks.
1894 * testsuite/libgomp.oacc-c-c++-common/lib-70.c: Likewise.
1895 * testsuite/libgomp.oacc-c-c++-common/lib-72.c: Rework kernel i/f and
1896 change async checks.
1897 * testsuite/libgomp.oacc-c-c++-common/lib-73.c: Likewise.
1898 * testsuite/libgomp.oacc-c-c++-common/lib-74.c: Rework kernel i/f and
1899 timing checks.
1900 * testsuite/libgomp.oacc-c-c++-common/lib-75.c: Likewise.
1901 * testsuite/libgomp.oacc-c-c++-common/lib-76.c: Likewise.
1902 * testsuite/libgomp.oacc-c-c++-common/lib-78.c: Likewise.
1903 * testsuite/libgomp.oacc-c-c++-common/lib-79.c: Likewise.
1904 * testsuite/libgomp.oacc-c-c++-common/lib-81.c: Likewise.
1905 * testsuite/libgomp.oacc-c-c++-common/lib-82.c: Likewise.
1906 * testsuite/libgomp.oacc-c-c++-common/lib-93.c: New test.
1907
d27d6c9e
JB
19082018-12-13 Cesar Philippidis <cesar@codesourcery.com>
1909 Nathan Sidwell <nathan@acm.org>
1910 Julian Brown <julian@codesourcery.com>
1911
1912 * testsuite/libgomp.oacc-c-c++-common/par-reduction-3.c: New test.
1913 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt-2.c: New test.
1914 * testsuite/libgomp.oacc-fortran/reduction-9.f90: New test.
1915
4c708e05
JB
19162018-06-29 Cesar Philippidis <cesar@codesourcery.com>
1917 James Norris <jnorris@codesourcery.com>
1918
1919 * oacc-parallel.c (GOACC_parallel_keyed): Handle Fortran deviceptr
1920 clause.
1921 (GOACC_data_start): Likewise.
1922 * testsuite/libgomp.oacc-fortran/deviceptr-1.f90: New test.
1923
30d29fbc
JB
19242019-02-12 Julian Brown <julian@codesourcery.com>
1925
1926 * oacc-cuda.c (acc_set_cuda_stream): Return 0 on error/invalid
1927 arguments.
1928 * testsuite/libgomp.oacc-c-c++-common/lib-84.c: Handle unnumbered
1929 async stream being an alias for a numbered async stream.
1930 * testsuite/libgomp.oacc-c-c++-common/lib-85.c: Likewise.
1931
15d0f61a
CLT
19322020-04-19 Chung-Lin Tang <cltang@codesourcery.com>
1933
1934 PR other/76739
1935
1936 * libgomp_g.h (GOACC_data_start): Add variadic '...' to declaration.
1937 * libgomp.h (gomp_map_vars_openacc): New function declaration.
1938 * oacc-int.h (struct goacc_ncarray_dim): New struct declaration.
1939 (struct goacc_ncarray_descr_type): Likewise.
1940 (struct goacc_ncarray): Likewise.
1941 (struct goacc_ncarray_info): Likewise.
1942 (goacc_noncontig_array_create_ptrblock): New function declaration.
1943 * oacc-parallel.c (goacc_noncontig_array_count_rows): New function.
1944 (goacc_noncontig_array_compute_sizes): Likewise.
1945 (goacc_noncontig_array_fill_rows_1): Likewise.
1946 (goacc_noncontig_array_fill_rows): Likewise.
1947 (goacc_process_noncontiguous_arrays): Likewise.
1948 (goacc_noncontig_array_create_ptrblock): Likewise.
1949 (GOACC_parallel_keyed): Use goacc_process_noncontiguous_arrays to
1950 handle non-contiguous array descriptors at end of varargs, adjust
1951 to use gomp_map_vars_openacc.
1952 (GOACC_data_start): Likewise. Adjust function type to accept varargs.
1953 * target.c (gomp_map_vars_internal): Add struct goacc_ncarray_info *
1954 nca_info parameter, add handling code for non-contiguous arrays.
1955 (gomp_map_vars_openacc): Add new function for specialization of
1956 gomp_map_vars_internal for OpenACC structured region usage.
1957 * testsuite/libgomp.oacc-c-c++-common/noncontig_array-1.c: New test.
1958 * testsuite/libgomp.oacc-c-c++-common/noncontig_array-2.c: New test.
1959 * testsuite/libgomp.oacc-c-c++-common/noncontig_array-3.c: New test.
1960 * testsuite/libgomp.oacc-c-c++-common/noncontig_array-4.c: New test.
1961 * testsuite/libgomp.oacc-c-c++-common/noncontig_array-utils.h: Support
1962 header for new tests.
1963
This page took 0.252318 seconds and 5 git commands to generate.