brintos

brintos / llvm-project-archived public Read only

0
0
Text · 4.5 KiB · 9eceb92 Raw
81 lines · plain
1// RUN: not %clang --target=x86_64-linux -v -### --cuda-gpu-arch=sm_20 --cuda-path=%S/Inputs/CUDA/usr/local/cuda 2>&1 %s | \2// RUN:    FileCheck %s --check-prefix=OK3// RUN: %clang --target=x86_64-linux -v -### --cuda-gpu-arch=sm_20 --cuda-path=%S/Inputs/CUDA_80/usr/local/cuda 2>&1 %s | \4// RUN:    FileCheck %s --check-prefix=OK5// RUN: %clang --target=x86_64-linux -v -### --cuda-gpu-arch=sm_60 --cuda-path=%S/Inputs/CUDA_80/usr/local/cuda 2>&1 %s | \6// RUN:    FileCheck %s --check-prefix=OK7// Test version guess when cuda.h has not been found8// RUN: %clang --target=x86_64-linux -v -### --cuda-gpu-arch=sm_60 --cuda-path=%S/Inputs/CUDA-unknown/usr/local/cuda 2>&1 %s | \9// RUN:    FileCheck %s --check-prefix=UNKNOWN_VERSION10// Unknown version info present in cuda.h11// RUN: %clang --target=x86_64-linux -v -### --cuda-gpu-arch=sm_60 --cuda-path=%S/Inputs/CUDA-new/usr/local/cuda 2>&1 %s | \12// RUN:    FileCheck %s --check-prefix=UNKNOWN_VERSION13// Make sure that we don't warn about CUDA version during C++ compilation.14// RUN: %clang --target=x86_64-linux -v -### -x c++ --cuda-gpu-arch=sm_60 \15// RUN:    --cuda-path=%S/Inputs/CUDA-unknown/usr/local/cuda 2>&1 %s | \16// RUN:    FileCheck %s --check-prefix=UNKNOWN_VERSION_CXX17 18// The installation at Inputs/CUDA is CUDA 7.0, which doesn't support sm_60.19// RUN: not %clang --target=x86_64-linux -v -### --cuda-gpu-arch=sm_60 --cuda-path=%S/Inputs/CUDA/usr/local/cuda 2>&1 %s | \20// RUN:    FileCheck %s --check-prefix=ERR_SM6021 22// This should only complain about sm_60, not sm_35.23// RUN: not %clang --target=x86_64-linux -v -### --cuda-gpu-arch=sm_60 --cuda-gpu-arch=sm_35 \24// RUN:    --cuda-path=%S/Inputs/CUDA/usr/local/cuda 2>&1 %s | \25// RUN:    FileCheck %s --check-prefix=ERR_SM60 --check-prefix=OK_SM3526 27// We should get two errors here, one for sm_60 and one for sm_61.28// RUN: not %clang --target=x86_64-linux -v -### --cuda-gpu-arch=sm_60 --cuda-gpu-arch=sm_61 \29// RUN:    --cuda-path=%S/Inputs/CUDA/usr/local/cuda 2>&1 %s | \30// RUN:    FileCheck %s --check-prefix=ERR_SM60 --check-prefix=ERR_SM6131 32// We should still get an error if we pass -nocudainc, because this compilation33// would invoke ptxas, and we do a version check on that, too.34// RUN: not %clang --target=x86_64-linux -v -### --cuda-gpu-arch=sm_60 -nocudainc --cuda-path=%S/Inputs/CUDA/usr/local/cuda 2>&1 %s | \35// RUN:    FileCheck %s --check-prefix=ERR_SM6036 37// If with -nocudainc and -E, we don't touch the CUDA install, so we38// shouldn't get an error.39// RUN: %clang --target=x86_64-linux -v -### -E --cuda-device-only --cuda-gpu-arch=sm_60 -nocudainc \40// RUN:    --cuda-path=%S/Inputs/CUDA/usr/local/cuda 2>&1 %s | \41// RUN:    FileCheck %s --check-prefix=OK42 43// --no-cuda-version-check should suppress all of these errors.44// RUN: %clang --target=x86_64-linux -v -### --cuda-gpu-arch=sm_60 --cuda-path=%S/Inputs/CUDA/usr/local/cuda 2>&1 \45// RUN:    --no-cuda-version-check %s | \46// RUN:    FileCheck %s --check-prefix=OK47 48// We need to make sure the version check is done only for the device toolchain,49// therefore we should not get an error in host-only mode. We use the -S here50// to avoid the error being produced in case by the assembler tool, which does51// the same check.52// RUN: %clang --target=x86_64-linux -v -### --cuda-gpu-arch=sm_60 --cuda-host-only --cuda-path=%S/Inputs/CUDA/usr/local/cuda -S 2>&1 %s | \53// RUN:    FileCheck %s --check-prefix=OK54// RUN: not %clang --target=x86_64-linux -v -### --cuda-gpu-arch=sm_60 --cuda-device-only --cuda-path=%S/Inputs/CUDA/usr/local/cuda -S 2>&1 %s | \55// RUN:    FileCheck %s --check-prefix=ERR_SM6056 57// OK-NOT: error: GPU arch58 59// OK_SM35-NOT: error: GPU arch sm_3560 61// We should only get one error per architecture.62// ERR_SM20: error: GPU arch sm_20 {{.*}}63// ERR_SM20-NOT: error: GPU arch sm_2064 65// ERR_SM60: error: GPU arch sm_60 {{.*}}66// ERR_SM60-NOT: error: GPU arch sm_6067 68// ERR_SM61: error: GPU arch sm_61 {{.*}}69// ERR_SM61-NOT: error: GPU arch sm_6170 71// UNKNOWN_VERSION: CUDA version is newer than the latest{{.*}} supported version72// UNKNOWN_VERSION_CXX-NOT: unknown CUDA version73 74// Check to make sure we do not emit these warnings for OpenMP or cross-compilation.75// RUN: %clang --target=x86_64-linux -v -### -fopenmp -nogpulib --offload-arch=sm_60 --cuda-path=%S/Inputs/CUDA-new/usr/local/cuda 2>&1 -x c %s | \76// RUN:    FileCheck %s --check-prefix=VERSION77// RUN: %clang --target=nvptx64-nvidia-cuda -v -### -nogpulib -march=sm_60 --cuda-path=%S/Inputs/CUDA-new/usr/local/cuda 2>&1 -x c %s | \78// RUN:    FileCheck %s --check-prefix=VERSION79// VERSION-NOT: CUDA version is newer than the latest{{.*}} supported version80 81