97 lines · plain
1! RUN: %flang_fc1 -fdebug-unparse -fopenmp %s 2>&1 | FileCheck %s2 3#define DIR_START !dir$4#define DIR_CONT !dir$&5#define FIRST(x) DIR_START x6#define NEXT(x) DIR_CONT x7#define AMPER &8#define COMMENT !9#define OMP_START !$omp10#define OMP_CONT !$omp&11#define EMPTY12 13module m14 contains15 subroutine s1(x1, x2, x3, x4, x5, x6, x7)16 17!dir$ ignore_tkr x118 19!dir$ ignore_tkr &20!dir$& x221 22DIR_START ignore_tkr x323 24!dir$ ignore_tkr AMPER25DIR_CONT x426 27FIRST(ignore_tkr &)28!dir$& x529 30FIRST(ignore_tkr &)31NEXT(x6)32 33COMMENT blah &34COMMENT & more35 stop 136 37OMP_START parallel &38OMP_START do &39OMP_START reduction(+:x)40 do j1 = 1, n41 end do42 43OMP_START parallel &44OMP_START & do &45OMP_START & reduction(+:x)46 do j2 = 1, n47 end do48 49OMP_START parallel &50OMP_CONT do &51OMP_CONT reduction(+:x)52 do j3 = 1, n53 end do54 55EMPTY !$omp parallel &56EMPTY !$omp do57 do j4 = 1, n58 end do59 end60 61COMMENT &62 subroutine s263 end subroutine64COMMENT&65 subroutine s366 end subroutine67end module68 69!CHECK: MODULE m70!CHECK: CONTAINS71!CHECK: SUBROUTINE s1 (x1, x2, x3, x4, x5, x6, x7)72!CHECK: !DIR$ IGNORE_TKR x173!CHECK: !DIR$ IGNORE_TKR x274!CHECK: !DIR$ IGNORE_TKR x375!CHECK: !DIR$ IGNORE_TKR x476!CHECK: !DIR$ IGNORE_TKR x577!CHECK: !DIR$ IGNORE_TKR x678!CHECK: STOP 1_479!CHECK: !$OMP PARALLEL DO REDUCTION(+: x)80!CHECK: DO j1=1_4,n81!CHECK: END DO82!CHECK: !$OMP PARALLEL DO REDUCTION(+: x)83!CHECK: DO j2=1_4,n84!CHECK: END DO85!CHECK: !$OMP PARALLEL DO REDUCTION(+: x)86!CHECK: DO j3=1_4,n87!CHECK: END DO88!CHECK: !$OMP PARALLEL DO89!CHECK: DO j4=1_4,n90!CHECK: END DO91!CHECK: END SUBROUTINE92!CHECK: SUBROUTINE s293!CHECK: END SUBROUTINE94!CHECK: SUBROUTINE s395!CHECK: END SUBROUTINE96!CHECK: END MODULE97