! This test checks lowering of OpenMP DISTRIBUTE SIMD composite constructs. ! RUN: bbc -fopenmp -emit-hlfir %s -o - | FileCheck %s ! RUN: %flang_fc1 -fopenmp -emit-hlfir %s -o - | FileCheck %s ! CHECK-LABEL: func.func @_QPdistribute_simd_aligned( subroutine distribute_simd_aligned(A) use iso_c_binding type(c_ptr) :: A !$omp teams ! CHECK: omp.distribute ! CHECK-NOT: aligned({{.*}}) ! CHECK-SAME: { ! CHECK-NEXT: omp.simd ! CHECK-SAME: aligned({{.*}}) !$omp distribute simd aligned(A:256) do index_ = 1, 10 call c_test_call(A) end do !$omp end distribute simd !$omp end teams end subroutine distribute_simd_aligned ! CHECK-LABEL: func.func @_QPdistribute_simd_safelen( subroutine distribute_simd_safelen() !$omp teams ! CHECK: omp.distribute ! CHECK-NOT: safelen({{.*}}) ! CHECK-SAME: { ! CHECK-NEXT: omp.simd ! CHECK-SAME: safelen({{.*}}) !$omp distribute simd safelen(4) do index_ = 1, 10 end do !$omp end distribute simd !$omp end teams end subroutine distribute_simd_safelen ! CHECK-LABEL: func.func @_QPdistribute_simd_simdlen( subroutine distribute_simd_simdlen() !$omp teams ! CHECK: omp.distribute ! CHECK-NOT: simdlen({{.*}}) ! CHECK-SAME: { ! CHECK-NEXT: omp.simd ! CHECK-SAME: simdlen({{.*}}) !$omp distribute simd simdlen(4) do index_ = 1, 10 end do !$omp end distribute simd !$omp end teams end subroutine distribute_simd_simdlen