21 lines
1.2 KiB
Fortran
21 lines
1.2 KiB
Fortran
!REQUIRES: amdgpu-registered-target, nvptx-registered-target
|
|
!RUN: %flang_fc1 -emit-hlfir -triple amdgcn-amd-amdhsa -target-cpu gfx908 -fopenmp -fopenmp-is-target-device %s -o - | FileCheck %s
|
|
!RUN: %flang_fc1 -emit-hlfir -triple nvptx64-nvidia-cuda -target-cpu sm_80 -fopenmp -fopenmp-is-target-device %s -o - | FileCheck --check-prefix=NVPTX %s
|
|
|
|
!===============================================================================
|
|
! Target_Enter Simple
|
|
!===============================================================================
|
|
|
|
!CHECK: omp.target = #omp.target<target_cpu = "gfx908",
|
|
!CHECK-SAME: target_features = "+16-bit-insts,+ci-insts,+dl-insts,+dot1-insts,+dot10-insts,
|
|
!CHECK-SAME: +dot2-insts,+dot3-insts,+dot4-insts,+dot5-insts,+dot6-insts,+dot7-insts,+dpp,
|
|
!CHECK-SAME: +gfx8-insts,+gfx9-insts,+gws,+image-insts,+mai-insts,+s-memrealtime,+s-memtime-inst,
|
|
!CHECK-SAME: +wavefrontsize64">
|
|
!NVPTX: omp.target = #omp.target<target_cpu = "sm_80", target_features = "+ptx61,+sm_80">
|
|
!CHECK-LABEL: func.func @_QPomp_target_simple()
|
|
subroutine omp_target_simple
|
|
! Directive needed to prevent subroutine from being filtered out when
|
|
! compiling for the device.
|
|
!$omp declare target
|
|
end subroutine omp_target_simple
|
|
|