1! RUN: %flang_fc1 -fdebug-unparse -fopenmp %s | FileCheck --ignore-case %s 2! RUN: %flang_fc1 -fdebug-dump-parse-tree -fopenmp %s | FileCheck --check-prefix="PARSE-TREE" %s 3 4subroutine parallel_work 5 integer :: i 6 7!CHECK: !$OMP TASKLOOP GRAINSIZE(STRICT: 500_4) 8!PARSE-TREE: OmpBeginLoopDirective 9!PARSE-TREE-NEXT: OmpLoopDirective -> llvm::omp::Directive = taskloop 10!PARSE-TREE-NEXT: OmpClauseList -> OmpClause -> Grainsize -> OmpGrainsizeClause 11!PARSE-TREE-NEXT: Modifier -> OmpPrescriptiveness -> Value = Strict 12!PARSE-TREE-NEXT: Scalar -> Integer -> Expr = '500_4' 13 !$omp taskloop grainsize(strict: 500) 14 do i=1,10000 15 call loop_body(i) 16 end do 17 !$omp end taskloop 18 19!CHECK: !$OMP TASKLOOP GRAINSIZE(500_4) 20!PARSE-TREE: OmpBeginLoopDirective 21!PARSE-TREE-NEXT: OmpLoopDirective -> llvm::omp::Directive = taskloop 22!PARSE-TREE-NEXT: OmpClauseList -> OmpClause -> Grainsize -> OmpGrainsizeClause 23!PARSE-TREE-NEXT: Scalar -> Integer -> Expr = '500_4' 24 !$omp taskloop grainsize(500) 25 do i=1,10000 26 call loop_body(i) 27 end do 28 !$omp end taskloop 29 30!CHECK: !$OMP TASKLOOP NUM_TASKS(STRICT: 500_4) 31!PARSE-TREE: OmpBeginLoopDirective 32!PARSE-TREE-NEXT: OmpLoopDirective -> llvm::omp::Directive = taskloop 33!PARSE-TREE-NEXT: OmpClauseList -> OmpClause -> NumTasks -> OmpNumTasksClause 34!PARSE-TREE-NEXT: Modifier -> OmpPrescriptiveness -> Value = Strict 35!PARSE-TREE-NEXT: Scalar -> Integer -> Expr = '500_4' 36 !$omp taskloop num_tasks(strict: 500) 37 do i=1,10000 38 call loop_body(i) 39 end do 40 !$omp end taskloop 41end subroutine parallel_work 42