70 lines · plain
1// REQUIRES: amdgpu-registered-target2// RUN: %clang -E -dM --offload-arch=gfx906 --cuda-device-only -nogpuinc -nogpulib \3// RUN: %s 2>&1 | FileCheck --check-prefix=CUMODE-ON %s4// RUN: %clang -E -dM --offload-arch=gfx906 --cuda-device-only -nogpuinc -nogpulib -mcumode \5// RUN: %s 2>&1 | FileCheck --check-prefix=CUMODE-ON %s6// RUN: %clang -E -dM --offload-arch=gfx906 --cuda-device-only -nogpuinc -nogpulib -mno-cumode \7// RUN: %s 2>&1 | FileCheck -DOFFLOAD_ARCH=gfx906 --check-prefixes=CUMODE-ON,WARN-CUMODE %s8// RUN: %clang -E -dM --offload-arch=gfx1030 --cuda-device-only -nogpuinc -nogpulib \9// RUN: %s 2>&1 | FileCheck --check-prefix=CUMODE-OFF %s10// RUN: %clang -E -dM --offload-arch=gfx1030 --cuda-device-only -nogpuinc -nogpulib -mcumode \11// RUN: %s 2>&1 | FileCheck --check-prefix=CUMODE-ON %s12// RUN: %clang -E -dM --offload-arch=gfx1030 --cuda-device-only -nogpuinc -nogpulib -mno-cumode \13// RUN: %s 2>&1 | FileCheck --check-prefix=CUMODE-OFF %s14// RUN: %clang -E -dM --offload-arch=gfx1250 --cuda-device-only -nogpuinc -nogpulib \15// RUN: %s 2>&1 | FileCheck --check-prefix=CUMODE-ON %s16// RUN: %clang -E -dM --offload-arch=gfx1250 --cuda-device-only -nogpuinc -nogpulib -mcumode \17// RUN: %s 2>&1 | FileCheck --check-prefix=CUMODE-ON %s18// RUN: %clang -E -dM --offload-arch=gfx1250 --cuda-device-only -nogpuinc -nogpulib -mno-cumode \19// RUN: %s 2>&1 | FileCheck -DOFFLOAD_ARCH=gfx1250 --check-prefixes=CUMODE-ON,WARN-CUMODE %s20 21// Check no duplicate warnings.22// RUN: %clang -E -dM --offload-arch=gfx906 --cuda-device-only -nogpuinc -nogpulib -mcumode \23// RUN: -mno-cumode -mno-cumode \24// RUN: %s 2>&1 | FileCheck -DOFFLOAD_ARCH=gfx906 --check-prefixes=CUMODE-ON,WARN-CUMODE %s25 26// WARN-CUMODE-DAG: warning: ignoring '-mno-cumode' option as it is not currently supported for processor '[[OFFLOAD_ARCH]]' [-Woption-ignored]27// WARN-CUMODE-NOT: warning: ignoring '-mno-cumode' option as it is not currently supported for processor '[[OFFLOAD_ARCH]]' [-Woption-ignored]28// CUMODE-ON-DAG: #define __AMDGCN_CUMODE__ 129// CUMODE-OFF-DAG: #define __AMDGCN_CUMODE__ 030 31// RUN: %clang -E -dM --offload-arch=gfx90a --cuda-device-only -nogpuinc -nogpulib \32// RUN: %s 2>&1 | FileCheck --check-prefixes=IMAGE,NOWARN %s33// RUN: %clang -E -dM --offload-arch=gfx1100 --cuda-device-only -nogpuinc -nogpulib \34// RUN: %s 2>&1 | FileCheck --check-prefixes=IMAGE,NOWARN %s35// RUN: %clang -E -dM --offload-arch=gfx942 --cuda-device-only -nogpuinc -nogpulib \36// RUN: %s 2>&1 | FileCheck --check-prefixes=NOIMAGE,NOWARN %s37// RUN: %clang -E -dM --offload-arch=gfx942 --cuda-device-only -nogpuinc -nogpulib \38// RUN: %s 2>&1 | FileCheck --check-prefixes=NOIMAGE,NOWARN %s39// RUN: %clang -E -dM --offload-arch=gfx1100 --cuda-device-only -nogpuinc -nogpulib \40// RUN: -Xclang -target-feature -Xclang "-image-insts" %s 2>&1 | FileCheck --check-prefixes=IMAGE,WARN %s41// RUN: %clang -E -dM --offload-arch=gfx942 --cuda-device-only -nogpuinc -nogpulib \42// RUN: -Xclang -target-feature -Xclang "+image-insts" %s 2>&1 | FileCheck --check-prefixes=NOIMAGE,WARN %s43// NOWARN-NOT: warning44// WARN: warning: feature flag '{{[+|-]}}image-insts' is ignored since the feature is read only [-Winvalid-command-line-argument]45// IMAGE-NOT: #define __HIP_NO_IMAGE_SUPPORT__46// IMAGE-NOT: #define __HIP_NO_IMAGE_SUPPORT47// NOIMAGE-DAG: #define __HIP_NO_IMAGE_SUPPORT__ 148// NOIMAGE-DAG: #define __HIP_NO_IMAGE_SUPPORT 149 50// RUN: %clang -E -dM --offload-arch=gfx1100 -nogpuinc -nogpulib \51// RUN: -fgpu-default-stream=per-thread %s 2>&1 | FileCheck --check-prefixes=PTS %s52// RUN: %clang -E -dM --offload-arch=gfx942 --cuda-device-only -nogpuinc -nogpulib \53// RUN: -fgpu-default-stream=legacy %s 2>&1 | FileCheck --check-prefixes=NOPTS %s54// RUN: %clang -E -dM --offload-arch=gfx942 --cuda-device-only -nogpuinc -nogpulib \55// RUN: %s 2>&1 | FileCheck --check-prefixes=NOPTS %s56// PTS-DAG: #define __HIP_API_PER_THREAD_DEFAULT_STREAM__ 157// PTS-DAG: #define __HIP_API_PER_THREAD_DEFAULT_STREAM__ 158// PTS-DAG: #define HIP_API_PER_THREAD_DEFAULT_STREAM 159// PTS-DAG: #define HIP_API_PER_THREAD_DEFAULT_STREAM 160// NOPTS-NOT: #define __HIP_API_PER_THREAD_DEFAULT_STREAM__61// NOPTS-NOT: #define HIP_API_PER_THREAD_DEFAULT_STREAM62 63// RUN: %clang -E -dM --offload-arch=gfx906 -nogpuinc -nogpulib \64// RUN: %s 2>&1 | FileCheck --check-prefix=NOAPPROX %s65// RUN: %clang -E -dM --offload-arch=gfx906 -nogpuinc -nogpulib -fgpu-approx-transcendentals \66// RUN: %s 2>&1 | FileCheck --check-prefix=APPROX %s67// NOAPPROX-NOT: #define __CLANG_GPU_APPROX_TRANSCENDENTALS__68// APPROX: #define __CLANG_GPU_APPROX_TRANSCENDENTALS__ 169// APPROX: #define __CLANG_GPU_APPROX_TRANSCENDENTALS__ 170