brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.7 KiB · 73ba197 Raw
64 lines · plain
1! REQUIRES: plugins, examples, shell2 3! RUN: %flang_fc1 -load %llvmshlibdir/flangOmpReport%pluginext -plugin flang-omp-report -fopenmp -fopenmp-version=50 %s -o - | FileCheck %s4 5! Check for IN_REDUCTION() clause on OpenMP constructs6 7subroutine omp_in_reduction_taskgroup()8    integer :: z, i9    !$omp taskgroup task_reduction(+:z)10    !$omp task in_reduction(+:z)11        z = z + 512    !$omp end task13 14    !$omp taskloop in_reduction(+:z)15        do i=1,1016            z = z * 517        end do18    !$omp end taskloop19    !$omp end taskgroup20end subroutine omp_in_reduction_taskgroup21 22!CHECK: - file:         {{.*}}23!CHECK:   line:         1024!CHECK:   construct:    task25!CHECK:   clauses:26!CHECK:     - clause:   in_reduction27!CHECK:       details:  '+:z'28!CHECK: - file:         {{.*}}29!CHECK:   line:         1430!CHECK:   construct:    taskloop31!CHECK:   clauses:32!CHECK:     - clause:   in_reduction33!CHECK:       details:  '+:z'34!CHECK: - file:         {{.*}}35!CHECK:   line:         936!CHECK:   construct:    taskgroup37!CHECK:   clauses:38!CHECK:      - clause:  task_reduction39!CHECK:        details: '+:z'40 41subroutine omp_in_reduction_parallel()42    integer :: z43    !$omp parallel reduction(+:z)44        !$omp taskloop simd in_reduction(+:z)45            do i=1,1046                z = z * 547            end do48        !$omp end taskloop simd49    !$omp end parallel50end subroutine omp_in_reduction_parallel51 52!CHECK: - file:         {{.*}}53!CHECK:   line:         4454!CHECK:   construct:    taskloop simd55!CHECK:   clauses:56!CHECK:     - clause:   in_reduction57!CHECK:       details:  '+:z'58!CHECK:  - file:        {{.*}}59!CHECK:    line:        4360!CHECK:    construct:   parallel61!CHECK:    clauses:62!CHECK:      - clause:  reduction63!CHECK:        details: '+:z'64