xref: /llvm-project/flang/test/Semantics/OpenMP/symbol09.f90 (revision 8e10a3f80e264aaa186ab3cc74fea840f453c66d)
1742d8eb9SKiran Chandramohan! RUN: %python %S/../test_symbols.py %s %flang_fc1 -fopenmp
2742d8eb9SKiran Chandramohan
3742d8eb9SKiran Chandramohan! Generic tests
4742d8eb9SKiran Chandramohan!   1. subroutine or function calls should not be fixed for DSA or DMA
5742d8eb9SKiran Chandramohan
6742d8eb9SKiran Chandramohan!DEF: /foo (Function) Subprogram REAL(4)
7742d8eb9SKiran Chandramohan!DEF: /foo/rnum ObjectEntity REAL(4)
8742d8eb9SKiran Chandramohanfunction foo(rnum)
9742d8eb9SKiran Chandramohan  !REF: /foo/rnum
10742d8eb9SKiran Chandramohan  real rnum
11742d8eb9SKiran Chandramohan  !REF: /foo/rnum
12742d8eb9SKiran Chandramohan  rnum = rnum+1.
13742d8eb9SKiran Chandramohanend function foo
14742d8eb9SKiran Chandramohan!DEF: /function_call_in_region EXTERNAL (Subroutine) Subprogram
15742d8eb9SKiran Chandramohansubroutine function_call_in_region
16742d8eb9SKiran Chandramohan  implicit none
17742d8eb9SKiran Chandramohan  !DEF: /function_call_in_region/foo (Function) ProcEntity REAL(4)
18742d8eb9SKiran Chandramohan  real foo
19742d8eb9SKiran Chandramohan  !DEF: /function_call_in_region/a ObjectEntity REAL(4)
20742d8eb9SKiran Chandramohan  real :: a = 0.
21742d8eb9SKiran Chandramohan  !DEF: /function_call_in_region/b ObjectEntity REAL(4)
22742d8eb9SKiran Chandramohan  real :: b = 5.
23742d8eb9SKiran Chandramohan  !$omp parallel  default(none) private(a) shared(b)
24742d8eb9SKiran Chandramohan  !DEF: /function_call_in_region/OtherConstruct1/a (OmpPrivate) HostAssoc REAL(4)
25742d8eb9SKiran Chandramohan  !REF: /function_call_in_region/foo
26*8e10a3f8SMats Petersson  !DEF: /function_call_in_region/OtherConstruct1/b (OmpShared) HostAssoc REAL(4)
27742d8eb9SKiran Chandramohan  a = foo(b)
28742d8eb9SKiran Chandramohan  !$omp end parallel
29742d8eb9SKiran Chandramohan  !REF: /function_call_in_region/a
30742d8eb9SKiran Chandramohan  !REF: /function_call_in_region/b
31742d8eb9SKiran Chandramohan  print *, a, b
32742d8eb9SKiran Chandramohanend subroutine function_call_in_region
33742d8eb9SKiran Chandramohan!DEF: /mm MainProgram
34742d8eb9SKiran Chandramohanprogram mm
35742d8eb9SKiran Chandramohan  !REF: /function_call_in_region
36742d8eb9SKiran Chandramohan  call function_call_in_region
37742d8eb9SKiran Chandramohanend program mm
38