brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.7 KiB · abc4258 Raw
61 lines · plain
1! RUN: %flang_fc1 -fdebug-dump-parse-tree-no-sema -fopenmp -fopenmp-version=45 %s | FileCheck %s2 3! Check that standalone ORDERED is successfully distinguished form block associated ORDERED4 5! CHECK:       | SubroutineStmt6! CHECK-NEXT:  | | Name = 'standalone'7subroutine standalone8  integer :: x(10, 10)9  do i = 1, 1010    do j = 1,1011      ! CHECK:      OpenMPConstruct -> OpenMPStandaloneConstruct12      ! CHECK-NEXT: | OmpDirectiveName -> llvm::omp::Directive = ordered13      ! CHECK-NEXT: | OmpClauseList ->14      ! CHECK-NEXT: | Flags = {}15      !$omp ordered depend(source)16      x(i, j) = i + j17    end do18  end do19endsubroutine20 21! CHECK:       | SubroutineStmt22! CHECK-NEXT:  | | Name = 'strict_block'23subroutine strict_block24  integer :: x(10, 10)25  integer :: tmp26  do i = 1, 1027    do j = 1,1028      ! CHECK:      OpenMPConstruct -> OmpBlockConstruct29      ! CHECK-NEXT: | OmpBeginDirective30      ! CHECK-NEXT: | | OmpDirectiveName -> llvm::omp::Directive = ordered31      ! CHECK-NEXT: | | OmpClauseList ->32      ! CHECK-NEXT: | | Flags = {}33      !$omp ordered34      block35        tmp = i + j36        x(i, j) = tmp37      end block38    end do39  end do40endsubroutine41 42! CHECK:       | SubroutineStmt43! CHECK-NEXT:  | | Name = 'loose_block'44subroutine loose_block45  integer :: x(10, 10)46  integer :: tmp47  do i = 1, 1048    do j = 1,1049      ! CHECK:      OpenMPConstruct -> OmpBlockConstruct50      ! CHECK-NEXT: | OmpBeginDirective51      ! CHECK-NEXT: | | OmpDirectiveName -> llvm::omp::Directive = ordered52      ! CHECK-NEXT: | | OmpClauseList ->53      ! CHECK-NEXT: | | Flags = {}54      !$omp ordered55        tmp = i + j56        x(i, j) = tmp57      !$omp end ordered58    end do59  end do60endsubroutine61