Files
clang-p2996/clang/test/Preprocessor/cuda-preprocess.cu
Samuel Antao e57ad2aac3 Add -nocudainc option to CUDA preprocessor test.
If include files are used in the CUDA preprocessor tests it will cause a 
failure due to a missing header file in hosts that do not match the triple
in the test. E.g. powerpc64le have CUDA support but the include files
cannot be used for an x86 target.

llvm-svn: 259769
2016-02-04 08:13:16 +00:00

33 lines
1.2 KiB
Plaintext

// Tests CUDA compilation with -E.
// REQUIRES: clang-driver
// REQUIRES: x86-registered-target
// REQUIRES: nvptx-registered-target
#ifndef __CUDA_ARCH__
#define PREPROCESSED_AWAY
clang_unittest_no_arch PREPROCESSED_AWAY
#else
clang_unittest_cuda_arch __CUDA_ARCH__
#endif
// CHECK-NOT: PREPROCESSED_AWAY
// RUN: %clang -E -target x86_64-linux-gnu --cuda-gpu-arch=sm_20 -nocudainc %s 2>&1 \
// RUN: | FileCheck -check-prefix NOARCH %s
// RUN: %clang -E -target x86_64-linux-gnu --cuda-gpu-arch=sm_20 --cuda-host-only -nocudainc %s 2>&1 \
// RUN: | FileCheck -check-prefix NOARCH %s
// NOARCH: clang_unittest_no_arch
// RUN: %clang -E -target x86_64-linux-gnu --cuda-gpu-arch=sm_20 --cuda-device-only -nocudainc %s 2>&1 \
// RUN: | FileCheck -check-prefix SM20 %s
// SM20: clang_unittest_cuda_arch 200
// RUN: %clang -E -target x86_64-linux-gnu --cuda-gpu-arch=sm_30 --cuda-device-only -nocudainc %s 2>&1 \
// RUN: | FileCheck -check-prefix SM30 %s
// SM30: clang_unittest_cuda_arch 300
// RUN: %clang -E -target x86_64-linux-gnu --cuda-gpu-arch=sm_20 --cuda-gpu-arch=sm_30 \
// RUN: --cuda-device-only -nocudainc %s 2>&1 \
// RUN: | FileCheck -check-prefix SM20 -check-prefix SM30 %s