brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.0 KiB · 36935d4 Raw
74 lines · plain
1! RUN: %flang_fc1 -fdebug-unparse -fopenmp %s | FileCheck --ignore-case %s2! RUN: %flang_fc1 -fdebug-dump-parse-tree -fopenmp %s | FileCheck --check-prefix="PARSE-TREE" %s3 4! Check for parsing of master directive5 6 7subroutine test_master()8  integer :: c = 19  !PARSE-TREE: OmpBeginDirective10  !PARSE-TREE-NEXT: OmpDirectiveName -> llvm::omp::Directive = master11  !CHECK: !$omp master12  !$omp master 13  c = c + 114  !$omp end master15end subroutine16 17subroutine test_master_taskloop_simd()18  integer :: i, j = 119  !PARSE-TREE: OmpBeginLoopDirective20  !PARSE-TREE-NEXT: OmpDirectiveName -> llvm::omp::Directive = master taskloop simd21  !CHECK: !$omp master taskloop simd22  !$omp master taskloop simd 23  do i=1,1024   j = j + 125  end do26  !$omp end master taskloop simd27end subroutine28 29subroutine test_master_taskloop30  integer :: i, j = 131  !PARSE-TREE: OmpBeginLoopDirective32  !PARSE-TREE-NEXT: OmpDirectiveName -> llvm::omp::Directive = master taskloop33  !CHECK: !$omp master taskloop34  !$omp master taskloop35  do i=1,1036   j = j + 137  end do38  !$omp end master taskloop 39end subroutine40 41subroutine test_parallel_master42  integer :: c = 243  !PARSE-TREE: OmpBeginDirective44  !PARSE-TREE-NEXT: OmpDirectiveName -> llvm::omp::Directive = parallel master45  !CHECK: !$omp parallel master46  !$omp parallel master47  c = c + 248  !$omp end parallel master49end subroutine50 51subroutine test_parallel_master_taskloop_simd52  integer :: i, j = 153  !PARSE-TREE: OmpBeginLoopDirective54  !PARSE-TREE-NEXT: OmpDirectiveName -> llvm::omp::Directive = parallel master taskloop simd55  !CHECK: !$omp parallel master taskloop simd56  !$omp parallel master taskloop simd 57  do i=1,1058   j = j + 159  end do60  !$omp end parallel master taskloop simd61end subroutine62 63subroutine test_parallel_master_taskloop64  integer :: i, j = 165  !PARSE-TREE: OmpBeginLoopDirective66  !PARSE-TREE-NEXT: OmpDirectiveName -> llvm::omp::Directive = parallel master taskloop67  !CHECK: !$omp parallel master taskloop68  !$omp parallel master taskloop69  do i=1,1070   j = j + 171  end do72  !$omp end parallel master taskloop 73end subroutine74