xref: /llvm-project/flang/test/Semantics/OpenMP/use_device_addr.f90 (revision 00ab44ee66dbcf0d32819dbc6e4eefd1b7c48dfa)
1! RUN: %flang_fc1 -fopenmp -fopenmp-version=51 -fdebug-dump-symbols %s | FileCheck %s
2! OpenMP Version 5.1
3! 2.14.2 use_device_addr clause
4! List item that appears in a use_device_addr clause has corresponding storage
5! in the device data environment, references to the list item in the associated
6! structured block are converted into references to the corresponding list item.
7
8subroutine omp_target_data
9   integer :: a(1024)
10   !CHECK: b, TARGET size=4096 offset=4096: ObjectEntity type: INTEGER(4) shape: 1_8:1024_8
11   integer, target :: b(1024)
12   a = 1
13   !$omp target data map(tofrom: a) use_device_addr(b)
14   !CHECK: b (OmpUseDeviceAddr): HostAssoc
15      b = a
16   !$omp end target data
17end subroutine omp_target_data
18