brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.5 KiB · 3c422ef Raw
62 lines · plain
1! RUN: %flang_fc1 -fdebug-dump-parse-tree -fopenmp -fopenmp-version=52 %s | FileCheck %s2 3program openmp_parse_if4  logical :: cond5  integer :: i6 7  ! CHECK: OmpDirectiveName -> llvm::omp::Directive = target update8  ! CHECK-NEXT: OmpClause -> If -> OmpIfClause9  ! CHECK-NOT: OmpDirectiveName10  !$omp target update if(cond) to(i)11 12  ! CHECK: OmpDirectiveName -> llvm::omp::Directive = target update13  ! CHECK-NEXT: OmpClause -> If -> OmpIfClause14  ! CHECK-NEXT: OmpDirectiveName -> llvm::omp::Directive = target update15  !$omp target update if(target update: cond) to(i)16 17  ! CHECK: OmpDirectiveName -> llvm::omp::Directive = target enter data18  ! CHECK: OmpClause -> If -> OmpIfClause19  ! CHECK-NEXT: OmpDirectiveName -> llvm::omp::Directive = target enter data20  !$omp target enter data map(to: i) if(target enter data: cond)21 22  ! CHECK: OmpDirectiveName -> llvm::omp::Directive = target exit data23  ! CHECK: OmpClause -> If -> OmpIfClause24  ! CHECK-NEXT: OmpDirectiveName -> llvm::omp::Directive = target exit data25  !$omp target exit data map(from: i) if(target exit data: cond)26 27  ! CHECK: OmpDirectiveName -> llvm::omp::Directive = target data28  ! CHECK: OmpClause -> If -> OmpIfClause29  ! CHECK-NEXT: OmpDirectiveName -> llvm::omp::Directive = target data30  !$omp target data map(tofrom: i) if(target data: cond)31  !$omp end target data32 33  ! CHECK: OmpDirectiveName -> llvm::omp::Directive = target teams distribute parallel do simd34  ! CHECK: OmpClause -> If -> OmpIfClause35  ! CHECK-NEXT: OmpDirectiveName -> llvm::omp::Directive = target36  ! CHECK: OmpClause -> If -> OmpIfClause37  ! CHECK-NEXT: OmpDirectiveName -> llvm::omp::Directive = teams38  ! CHECK: OmpClause -> If -> OmpIfClause39  ! CHECK-NEXT: OmpDirectiveName -> llvm::omp::Directive = parallel40  ! CHECK: OmpClause -> If -> OmpIfClause41  ! CHECK-NEXT: OmpDirectiveName -> llvm::omp::Directive = simd42  !$omp target teams distribute parallel do simd if(target: cond) &43  !$omp&    if(teams: cond) if(parallel: cond) if(simd: cond)44  do i = 1, 1045  end do46  !$omp end target teams distribute parallel do simd47 48  ! CHECK: OmpDirectiveName -> llvm::omp::Directive = task49  ! CHECK-NEXT: OmpClause -> If -> OmpIfClause50  ! CHECK-NEXT: OmpDirectiveName -> llvm::omp::Directive = task51  !$omp task if(task: cond)52  !$omp end task53 54  ! CHECK: OmpDirectiveName -> llvm::omp::Directive = taskloop55  ! CHECK-NEXT: OmpClause -> If -> OmpIfClause56  ! CHECK-NEXT: OmpDirectiveName -> llvm::omp::Directive = taskloop57  !$omp taskloop if(taskloop: cond)58  do i = 1, 1059  end do60  !$omp end taskloop61end program openmp_parse_if62