Reland [OffloadBundler] Compress bundles over 4GB (#122307)
[llvm-project.git] / flang / test / Preprocessing / directive-contin-with-pp.F90
blob6e84c2bde52f9da911066be7e837669464d15b86
1 ! RUN: %flang_fc1 -fdebug-unparse -fopenmp %s 2>&1 | FileCheck %s
3 #define DIR_START !dir$
4 #define DIR_CONT !dir$&
5 #define FIRST(x) DIR_START x
6 #define NEXT(x) DIR_CONT x
7 #define AMPER &
8 #define COMMENT !
9 #define OMP_START !$omp
10 #define OMP_CONT !$omp&
12 module m
13  contains
14   subroutine s1(x1, x2, x3, x4, x5, x6, x7)
16 !dir$ ignore_tkr x1
18 !dir$ ignore_tkr &
19 !dir$& x2
21 DIR_START ignore_tkr x3
23 !dir$ ignore_tkr AMPER
24 DIR_CONT x4
26 FIRST(ignore_tkr &)
27 !dir$& x5
29 FIRST(ignore_tkr &)
30 NEXT(x6)
32 COMMENT blah &
33 COMMENT & more
34     stop 1
36 OMP_START parallel &
37 OMP_START do &
38 OMP_START reduction(+:x)
39     do j1 = 1, n
40     end do
42 OMP_START parallel &
43 OMP_START & do &
44 OMP_START & reduction(+:x)
45     do j2 = 1, n
46     end do
48 OMP_START parallel &
49 OMP_CONT do &
50 OMP_CONT reduction(+:x)
51     do j3 = 1, n
52     end do
53   end
55 COMMENT &
56   subroutine s2
57   end subroutine
58 COMMENT&
59   subroutine s3
60   end subroutine
61 end module
63 !CHECK: MODULE m
64 !CHECK: CONTAINS
65 !CHECK:  SUBROUTINE s1 (x1, x2, x3, x4, x5, x6, x7)
66 !CHECK:   !DIR$ IGNORE_TKR x1
67 !CHECK:   !DIR$ IGNORE_TKR x2
68 !CHECK:   !DIR$ IGNORE_TKR x3
69 !CHECK:   !DIR$ IGNORE_TKR x4
70 !CHECK:   !DIR$ IGNORE_TKR x5
71 !CHECK:   !DIR$ IGNORE_TKR x6
72 !CHECK:   STOP 1_4
73 !CHECK: !$OMP PARALLEL DO  REDUCTION(+: x)
74 !CHECK:   DO j1=1_4,n
75 !CHECK:   END DO
76 !CHECK: !$OMP PARALLEL DO  REDUCTION(+: x)
77 !CHECK:   DO j2=1_4,n
78 !CHECK:   END DO
79 !CHECK: !$OMP PARALLEL DO  REDUCTION(+: x)
80 !CHECK:   DO j3=1_4,n
81 !CHECK:   END DO
82 !CHECK:  END SUBROUTINE
83 !CHECK:  SUBROUTINE s2
84 !CHECK:  END SUBROUTINE
85 !CHECK:  SUBROUTINE s3
86 !CHECK:  END SUBROUTINE
87 !CHECK: END MODULE