Hi Tobias! On 2019-11-20T14:06:18+0100, Tobias Burnus <[email protected]> wrote: > This patch does two things regarding explicit and automatical variable > mapping to offloaded devices:
Thanks!
> Compared to the previous patch set,** I added several OpenMP test cases
> – and fixed the fallout.
I'm seeing:
PASS: libgomp.fortran/use_device_addr-3.f90 -O0 (test for excess errors)
PASS: libgomp.fortran/use_device_addr-3.f90 -O0 execution test
PASS: libgomp.fortran/use_device_addr-3.f90 -O1 (test for excess errors)
[-PASS:-]{+FAIL:+} libgomp.fortran/use_device_addr-3.f90 -O1 execution
test
PASS: libgomp.fortran/use_device_addr-3.f90 -O2 (test for excess errors)
[-PASS:-]{+FAIL:+} libgomp.fortran/use_device_addr-3.f90 -O2 execution
test
PASS: libgomp.fortran/use_device_addr-3.f90 -O3 -fomit-frame-pointer
-funroll-loops -fpeel-loops -ftracer -finline-functions (test for excess
errors)
[-PASS:-]{+FAIL:+} libgomp.fortran/use_device_addr-3.f90 -O3
-fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions
execution test
PASS: libgomp.fortran/use_device_addr-3.f90 -O3 -g (test for excess
errors)
[-PASS:-]{+FAIL:+} libgomp.fortran/use_device_addr-3.f90 -O3 -g
execution test
PASS: libgomp.fortran/use_device_addr-3.f90 -Os (test for excess errors)
PASS: libgomp.fortran/use_device_addr-3.f90 -Os execution test
libgomp: Trying to map into device [0x7ffd7915a500..0x7ffd7915a500) object
when [0x7ffd7915c440..0x7ffd7915c440) is already mapped
PASS: libgomp.fortran/use_device_addr-4.f90 -O0 (test for excess errors)
PASS: libgomp.fortran/use_device_addr-4.f90 -O0 execution test
PASS: libgomp.fortran/use_device_addr-4.f90 -O1 (test for excess errors)
[-PASS:-]{+FAIL:+} libgomp.fortran/use_device_addr-4.f90 -O1 execution
test
PASS: libgomp.fortran/use_device_addr-4.f90 -O2 (test for excess errors)
[-PASS:-]{+FAIL:+} libgomp.fortran/use_device_addr-4.f90 -O2 execution
test
PASS: libgomp.fortran/use_device_addr-4.f90 -O3 -fomit-frame-pointer
-funroll-loops -fpeel-loops -ftracer -finline-functions (test for excess
errors)
[-PASS:-]{+FAIL:+} libgomp.fortran/use_device_addr-4.f90 -O3
-fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions
execution test
PASS: libgomp.fortran/use_device_addr-4.f90 -O3 -g (test for excess
errors)
[-PASS:-]{+FAIL:+} libgomp.fortran/use_device_addr-4.f90 -O3 -g
execution test
PASS: libgomp.fortran/use_device_addr-4.f90 -Os (test for excess errors)
PASS: libgomp.fortran/use_device_addr-4.f90 -Os execution test
libgomp: Trying to map into device [0x7ffc70529ca0..0x7ffc70529ca0) object
when [0x7ffc7052ac40..0x7ffc7052ac40) is already mapped
> Except for trivial changes to libgomp/oacc-mem.c
Just because something is just a few lines of code doesn't mean that it's
trivial. I had asked you to first resolve that issue separately
(referencing PR92726), instead of mixing these changes into the Fortran
optional agruments commit:
<[email protected]">http://mid.mail-archive.com/[email protected]>
"[PR92726] OpenACC: 'NULL'-in -> no-op, and/or 'NULL'-out".
There was no reason to rush in the Fortran optional arguments changes
before resolving the 'NULL' changes, was there?
> --- /dev/null
> +++ b/libgomp/testsuite/libgomp.oacc-fortran/optional-cache.f95
> @@ -0,0 +1,23 @@
> +! Test that the cache directives work with optional arguments. [...]
Missing '{ dg-do run }'.
> --- /dev/null
> +++ b/libgomp/testsuite/libgomp.oacc-fortran/optional-cache.f95
> +! of giving a non-present argument to the cache directive is not tested as
> +! it is undefined.
> --- /dev/null
> +++ b/libgomp/testsuite/libgomp.oacc-fortran/optional-firstprivate.f90
> @@ -0,0 +1,112 @@
> +! Test that optional arguments work in firstprivate clauses. The effect of
> +! non-present arguments in firstprivate clauses is undefined, and is not
> +! tested for.
> --- /dev/null
> +++ b/libgomp/testsuite/libgomp.oacc-fortran/optional-private.f90
> @@ -0,0 +1,115 @@
> +! Test that optional arguments work in private clauses. The effect of
> +! non-present arguments in private clauses is undefined, and is not tested
> --- /dev/null
> +++ b/libgomp/testsuite/libgomp.oacc-fortran/optional-reduction.f90
> @@ -0,0 +1,69 @@
> +! Test optional arguments in reduction clauses. The effect of
> +! non-present arguments in reduction clauses is undefined, and is not tested
Once you've got access, please file a ticket at
<https://github.com/OpenACC/openacc-spec/issues> so this gets clarified.
> --- /dev/null
> +++ b/libgomp/testsuite/libgomp.oacc-fortran/optional-reduction.f90
> +! { dg-additional-options "-w" }
Why that?
Grüße
Thomas
signature.asc
Description: PGP signature
