LLVM OpenMP
runtime
test
transform
fuse
do-looprange.f90
Go to the documentation of this file.
1
! RUN: %flang %flags %openmp_flags -fopenmp-version=60 %s -o %t.exe
2
! RUN: %t.exe | FileCheck %s --match-full-lines
3
4
program
fuse_full
5
implicit none
6
integer
i
, j, k, u
7
8
print *,
'do'
9
10
!$OMP FUSE LOOPRANGE(2,2)
11
do
i
=5, 25, 5
12
print
'("i=", I0)'
,
i
13
end do
14
do
j=10, 100, 10
15
print
'("j=", I0)'
, j
16
end do
17
do
k=10, 0, -1
18
print
'("k=", I0)'
, k
19
end do
20
do
u=5, 25, 5
21
print
'("u=", I0)'
, u
22
end do
23
!$OMP END FUSE
24
25
print *,
'done'
26
end program
27
28
! CHECK: do
29
! CHECK-NEXT: i=5
30
! CHECK-NEXT: i=10
31
! CHECK-NEXT: i=15
32
! CHECK-NEXT: i=20
33
! CHECK-NEXT: i=25
34
! CHECK-NEXT: j=10
35
! CHECK-NEXT: k=10
36
! CHECK-NEXT: j=20
37
! CHECK-NEXT: k=9
38
! CHECK-NEXT: j=30
39
! CHECK-NEXT: k=8
40
! CHECK-NEXT: j=40
41
! CHECK-NEXT: k=7
42
! CHECK-NEXT: j=50
43
! CHECK-NEXT: k=6
44
! CHECK-NEXT: j=60
45
! CHECK-NEXT: k=5
46
! CHECK-NEXT: j=70
47
! CHECK-NEXT: k=4
48
! CHECK-NEXT: j=80
49
! CHECK-NEXT: k=3
50
! CHECK-NEXT: j=90
51
! CHECK-NEXT: k=2
52
! CHECK-NEXT: j=100
53
! CHECK-NEXT: k=1
54
! CHECK-NEXT: k=0
55
! CHECK-NEXT: u=5
56
! CHECK-NEXT: u=10
57
! CHECK-NEXT: u=15
58
! CHECK-NEXT: u=20
59
! CHECK-NEXT: u=25
60
! CHECK-NEXT: done
fuse_full
program fuse_full
Definition
do-looprange.f90:4
i
#define i
Definition
kmp_stub.cpp:87
Generated on
for LLVM OpenMP by
1.14.0