On Mon, 14 Nov 2016, Martin Jambor wrote:
> Hi, > > yesterday I forgot to send out the following patch. The test > libgomp/testsuite/libgomp.fortran/examples-4/device-3.f90 was failing > for me when I was testing the HSA branch merge but I believe the test > itself is wrong and the failure is due to us now adhering to OpenMP > 4.5 default mapping of scalars (i.e. firstprivate, as opposed to > tofrom in 4.0) and the test itself needs to be fixed in the following > way. >From inspection, I believe device-1.f90 in the same directory has the same issue? Here's the corresponding patch. I also think there's the same issue in target-3.f90 and target5.f90 (compile-only test). diff --git a/libgomp/testsuite/libgomp.fortran/examples-4/device-1.f90 b/libgomp/testsuite/libgomp.fortran/examples-4/device-1.f90 index a411db4..3404f01 100644 --- a/libgomp/testsuite/libgomp.fortran/examples-4/device-1.f90 +++ b/libgomp/testsuite/libgomp.fortran/examples-4/device-1.f90 @@ -9,11 +9,11 @@ program e_57_1 a = 100 b = 0 - !$omp target if(a > 200 .and. a < 400) + !$omp target map(from: c) if(a > 200 .and. a < 400) c = omp_is_initial_device () !$omp end target - !$omp target data map(to: b) if(a > 200 .and. a < 400) + !$omp target data map(to: b) map(from: d) if(a > 200 .and. a < 400) !$omp target b = 100 d = omp_is_initial_device () @@ -25,11 +25,11 @@ program e_57_1 a = a + 200 b = 0 - !$omp target if(a > 200 .and. a < 400) + !$omp target map(from: c) if(a > 200 .and. a < 400) c = omp_is_initial_device () !$omp end target - !$omp target data map(to: b) if(a > 200 .and. a < 400) + !$omp target data map(to: b) map(from: d) if(a > 200 .and. a < 400) !$omp target b = 100 d = omp_is_initial_device () @@ -41,11 +41,11 @@ program e_57_1 a = a + 200 b = 0 - !$omp target if(a > 200 .and. a < 400) + !$omp target map(from: c) if(a > 200 .and. a < 400) c = omp_is_initial_device () !$omp end target - !$omp target data map(to: b) if(a > 200 .and. a < 400) + !$omp target data map(to: b) map(from: d) if(a > 200 .and. a < 400) !$omp target b = 100 d = omp_is_initial_device ()