xref: /llvm-project/flang/test/Integration/OpenMP/workshare-array-array-assign.f90 (revision 5d38e6e42a90f5d469b5ff9e25e5e8865606776a)
1*5d38e6e4SIvan R. Ivanov!===----------------------------------------------------------------------===!
2*5d38e6e4SIvan R. Ivanov! This directory can be used to add Integration tests involving multiple
3*5d38e6e4SIvan R. Ivanov! stages of the compiler (for eg. from Fortran to LLVM IR). It should not
4*5d38e6e4SIvan R. Ivanov! contain executable tests. We should only add tests here sparingly and only
5*5d38e6e4SIvan R. Ivanov! if there is no other way to test. Repeat this message in each test that is
6*5d38e6e4SIvan R. Ivanov! added to this directory and sub-directories.
7*5d38e6e4SIvan R. Ivanov!===----------------------------------------------------------------------===!
8*5d38e6e4SIvan R. Ivanov
9*5d38e6e4SIvan R. Ivanov!RUN: %flang_fc1 -emit-hlfir -fopenmp -O3 %s -o - | FileCheck %s --check-prefix HLFIR
10*5d38e6e4SIvan R. Ivanov!RUN: %flang_fc1 -emit-fir -fopenmp -O3 %s -o - | FileCheck %s --check-prefix FIR
11*5d38e6e4SIvan R. Ivanov
12*5d38e6e4SIvan R. Ivanovsubroutine sb1(x, y)
13*5d38e6e4SIvan R. Ivanov  integer :: x(:)
14*5d38e6e4SIvan R. Ivanov  integer :: y(:)
15*5d38e6e4SIvan R. Ivanov  !$omp parallel workshare
16*5d38e6e4SIvan R. Ivanov  x = y
17*5d38e6e4SIvan R. Ivanov  !$omp end parallel workshare
18*5d38e6e4SIvan R. Ivanovend subroutine
19*5d38e6e4SIvan R. Ivanov
20*5d38e6e4SIvan R. Ivanov! HLFIR:     omp.parallel {
21*5d38e6e4SIvan R. Ivanov! HLFIR:       omp.workshare {
22*5d38e6e4SIvan R. Ivanov! HLFIR:         hlfir.assign
23*5d38e6e4SIvan R. Ivanov! HLFIR:         omp.terminator
24*5d38e6e4SIvan R. Ivanov! HLFIR:       }
25*5d38e6e4SIvan R. Ivanov! HLFIR:       omp.terminator
26*5d38e6e4SIvan R. Ivanov! HLFIR:     }
27*5d38e6e4SIvan R. Ivanov
28*5d38e6e4SIvan R. Ivanov! FIR:     omp.parallel {
29*5d38e6e4SIvan R. Ivanov! FIR:       omp.wsloop nowait {
30*5d38e6e4SIvan R. Ivanov! FIR:         omp.loop_nest
31*5d38e6e4SIvan R. Ivanov! FIR:       }
32*5d38e6e4SIvan R. Ivanov! FIR:       omp.barrier
33*5d38e6e4SIvan R. Ivanov! FIR:       omp.terminator
34*5d38e6e4SIvan R. Ivanov! FIR:     }
35