42 lines · plain
1! REQUIRES: plugins, examples, shell2 3! RUN: %flang_fc1 -load %llvmshlibdir/flangOmpReport%pluginext -plugin flang-omp-report -fopenmp %s -o - | FileCheck %s4 5! Check OpenMP declarative directives6 7! 2.8.2 declare-simd8 9subroutine declare_simd_1(a, b)10 real(8), intent(inout), allocatable :: a, b11 !$omp declare simd(declare_simd_1) aligned(a)12 a = 3.14 + b13end subroutine declare_simd_114 15! 2.10.6 declare-target16! 2.15.2 threadprivate17 18module m219contains20 subroutine foo21 !$omp declare target22 integer, parameter :: N=10000, M=102423 integer :: i24 real :: Q(N, N), R(N,M), S(M,M)25 end subroutine foo26end module m227 28end29 30! CHECK:---31! CHECK-NEXT:- file: '{{[^"]*}}omp-declarative-directive.f90'32! CHECK-NEXT: line: 1133! CHECK-NEXT: construct: declare simd34! CHECK-NEXT: clauses:35! CHECK-NEXT: - clause: aligned36! CHECK-NEXT: details: a37! CHECK-NEXT:- file: '{{[^"]*}}omp-declarative-directive.f90'38! CHECK-NEXT: line: 2139! CHECK-NEXT: construct: declare target40! CHECK-NEXT: clauses: []41! CHECK-NEXT:...42