1*37234499Sagozillon! Offloading test checking interaction of an enter and exit map of an array of 2*37234499Sagozillon! scalars 388234488SEthan Luis McDonough! REQUIRES: flang, amdgpu 4330d8983SJohannes Doerfert 5330d8983SJohannes Doerfert! RUN: %libomptarget-compile-fortran-run-and-check-generic 6330d8983SJohannes Doerfertprogram main 7330d8983SJohannes Doerfert integer :: array(10) 8330d8983SJohannes Doerfert 9330d8983SJohannes Doerfert do I = 1, 10 10330d8983SJohannes Doerfert array(I) = I + I 11330d8983SJohannes Doerfert end do 12330d8983SJohannes Doerfert 13330d8983SJohannes Doerfert !$omp target enter data map(to: array) 14330d8983SJohannes Doerfert ! Shouldn't overwrite data already locked in 15330d8983SJohannes Doerfert ! on target via enter, this will then be 16330d8983SJohannes Doerfert ! overwritten by our exit 17330d8983SJohannes Doerfert do I = 1, 10 18330d8983SJohannes Doerfert array(I) = 10 19330d8983SJohannes Doerfert end do 20330d8983SJohannes Doerfert 21330d8983SJohannes Doerfert !$omp target 22330d8983SJohannes Doerfert do i=1,10 23330d8983SJohannes Doerfert array(i) = array(i) + i 24330d8983SJohannes Doerfert end do 25330d8983SJohannes Doerfert !$omp end target 26330d8983SJohannes Doerfert 27330d8983SJohannes Doerfert !$omp target exit data map(from: array) 28330d8983SJohannes Doerfert print*, array 29330d8983SJohannes Doerfertend program 30330d8983SJohannes Doerfert 31330d8983SJohannes Doerfert!CHECK: 3 6 9 12 15 18 21 24 27 30 32