aboutsummaryrefslogtreecommitdiff
path: root/openmp/runtime/test/transform/fuse/do-looprange.f90
blob: 8c62b24c4744f81bea8ec750ffb24eedf4bbff7e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
! RUN: %flang %flags %openmp_flags -fopenmp-version=60 %s -o %t.exe
! RUN: %t.exe | FileCheck %s --match-full-lines

program fuse_full
  implicit none
  integer i, j, k, u

  print *, 'do'

  !$OMP FUSE LOOPRANGE(2,2)
  do i=5, 25, 5
    print '("i=", I0)', i
  end do
  do j=10, 100, 10
    print '("j=", I0)', j
  end do
  do k=10, 0, -1
    print '("k=", I0)', k
  end do
  do u=5, 25, 5
    print '("u=", I0)', u
  end do
  !$OMP END FUSE

  print *, 'done'
end program

! CHECK: do
! CHECK-NEXT: i=5
! CHECK-NEXT: i=10
! CHECK-NEXT: i=15
! CHECK-NEXT: i=20
! CHECK-NEXT: i=25
! CHECK-NEXT: j=10
! CHECK-NEXT: k=10
! CHECK-NEXT: j=20
! CHECK-NEXT: k=9
! CHECK-NEXT: j=30
! CHECK-NEXT: k=8
! CHECK-NEXT: j=40
! CHECK-NEXT: k=7
! CHECK-NEXT: j=50
! CHECK-NEXT: k=6
! CHECK-NEXT: j=60
! CHECK-NEXT: k=5
! CHECK-NEXT: j=70
! CHECK-NEXT: k=4
! CHECK-NEXT: j=80
! CHECK-NEXT: k=3
! CHECK-NEXT: j=90
! CHECK-NEXT: k=2
! CHECK-NEXT: j=100
! CHECK-NEXT: k=1
! CHECK-NEXT: k=0
! CHECK-NEXT: u=5
! CHECK-NEXT: u=10
! CHECK-NEXT: u=15
! CHECK-NEXT: u=20
! CHECK-NEXT: u=25
! CHECK-NEXT: done