47 lines · plain
1! Offloading test checking interaction of mapping a member of a common block to2! a target region3! REQUIRES: flang, amdgcn-amd-amdhsa4! UNSUPPORTED: nvptx64-nvidia-cuda5! UNSUPPORTED: nvptx64-nvidia-cuda-LTO6! UNSUPPORTED: aarch64-unknown-linux-gnu7! UNSUPPORTED: aarch64-unknown-linux-gnu-LTO8! UNSUPPORTED: x86_64-unknown-linux-gnu9! UNSUPPORTED: x86_64-unknown-linux-gnu-LTO10 11! RUN: %libomptarget-compile-fortran-run-and-check-generic12program main13 implicit none14 common /var_common/ var1, var215 integer :: var1, var216 17 call modify_118 19 !$omp target map(tofrom: var2)20 var2 = var2 + 2021 !$omp end target22 23 call modify_224 25 print *, var126 print *, var227end program28 29subroutine modify_130 common /var_common/ var1, var231 integer :: var1, var232!$omp target map(tofrom: var2)33 var2 = var2 + 2034!$omp end target35end36 37subroutine modify_238 common /var_common/ var1, var239 integer :: var1, var240!$omp target map(tofrom: var2)41 var2 = var2 * 1042!$omp end target43end44 45!CHECK: 046!CHECK: 40047