xref: /llvm-project/offload/test/offloading/fortran/target-map-dynamic.f90 (revision a67b6e163528ea547ccbcd4850803f062df66d2e)
114243368SAkash Banerjee! Offloading test checking lowering of arrays with dynamic extents.
214243368SAkash Banerjee! REQUIRES: flang, amdgpu
314243368SAkash Banerjee
414243368SAkash Banerjee! RUN: %libomptarget-compile-fortran-run-and-check-generic
514243368SAkash Banerjee
614243368SAkash Banerjeesubroutine test_array_target_enter_data(dims)
714243368SAkash Banerjee    integer, intent(in) :: dims(2)
814243368SAkash Banerjee    double precision :: A(2, dims(2))
9*a67b6e16SAkash Banerjee    !$omp target enter data map(to: A)
1014243368SAkash Banerjee
1114243368SAkash Banerjee    A(2,2) = 1.0
1214243368SAkash Banerjee    !$omp target
1314243368SAkash Banerjee         A(1,1) = 10
1414243368SAkash Banerjee         A(2,1) = 20
1514243368SAkash Banerjee         A(1,2) = 30
1614243368SAkash Banerjee         A(2,2) = 40
1714243368SAkash Banerjee    !$omp end target
1814243368SAkash Banerjee
1914243368SAkash Banerjee    !$omp target exit data map(from: A)
2014243368SAkash Banerjee
2114243368SAkash Banerjee    print *, A
2214243368SAkash Banerjeeend subroutine test_array_target_enter_data
2314243368SAkash Banerjee
2414243368SAkash Banerjeeprogram main
2514243368SAkash Banerjee    integer :: dimensions(2)
2614243368SAkash Banerjee    dimensions(1) = 1
2714243368SAkash Banerjee    dimensions(2) = 2
2814243368SAkash Banerjee
2914243368SAkash Banerjeecall test_array_target_enter_data(dimensions)
3014243368SAkash Banerjeeend program
3114243368SAkash Banerjee
3214243368SAkash Banerjee
3314243368SAkash Banerjee! CHECK:  10. 20. 30. 40.
34