1*37234499Sagozillon! Offloading test checking interaction of mapping a member of a common block to 2*37234499Sagozillon! a target region 3aec735cfSagozillon! REQUIRES: flang, amdgcn-amd-amdhsa 4aec735cfSagozillon! UNSUPPORTED: nvptx64-nvidia-cuda 5aec735cfSagozillon! UNSUPPORTED: nvptx64-nvidia-cuda-LTO 6aec735cfSagozillon! UNSUPPORTED: aarch64-unknown-linux-gnu 7aec735cfSagozillon! UNSUPPORTED: aarch64-unknown-linux-gnu-LTO 81a0cf245SJan Patrick Lehr! UNSUPPORTED: x86_64-unknown-linux-gnu 91a0cf245SJan Patrick Lehr! UNSUPPORTED: x86_64-unknown-linux-gnu-LTO 10aec735cfSagozillon 11aec735cfSagozillon! RUN: %libomptarget-compile-fortran-run-and-check-generic 12aec735cfSagozillonprogram main 13aec735cfSagozillon implicit none 14aec735cfSagozillon common /var_common/ var1, var2 15aec735cfSagozillon integer :: var1, var2 16aec735cfSagozillon 17aec735cfSagozillon call modify_1 18aec735cfSagozillon 19aec735cfSagozillon !$omp target map(tofrom: var2) 20aec735cfSagozillon var2 = var2 + 20 21aec735cfSagozillon !$omp end target 22aec735cfSagozillon 23aec735cfSagozillon call modify_2 24aec735cfSagozillon 25aec735cfSagozillon print *, var1 26aec735cfSagozillon print *, var2 27aec735cfSagozillonend program 28aec735cfSagozillon 29aec735cfSagozillonsubroutine modify_1 30aec735cfSagozillon common /var_common/ var1, var2 31aec735cfSagozillon integer :: var1, var2 32aec735cfSagozillon!$omp target map(tofrom: var2) 33aec735cfSagozillon var2 = var2 + 20 34aec735cfSagozillon!$omp end target 35aec735cfSagozillonend 36aec735cfSagozillon 37aec735cfSagozillonsubroutine modify_2 38aec735cfSagozillon common /var_common/ var1, var2 39aec735cfSagozillon integer :: var1, var2 40aec735cfSagozillon!$omp target map(tofrom: var2) 41aec735cfSagozillon var2 = var2 * 10 42aec735cfSagozillon!$omp end target 43aec735cfSagozillonend 44aec735cfSagozillon 45aec735cfSagozillon!CHECK: 0 46aec735cfSagozillon!CHECK: 400 47