xref: /llvm-project/offload/test/offloading/fortran/target-map-second-common-block-member.f90 (revision 372344995568cae076477a8b0e98fcdec7c49379)
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