| // Test clang driver bails out after one error during CUDA compilation. |
| |
| // REQUIRES: clang-driver |
| // REQUIRES: powerpc-registered-target |
| // REQUIRES: nvptx-registered-target |
| |
| #ifdef FORCE_ERROR |
| #error compilation failed |
| #endif |
| |
| // RUN: not %clang -target powerpc64le-ibm-linux-gnu -fsyntax-only -nocudalib \ |
| // RUN: -nocudainc -DFORCE_ERROR %s 2>&1 | FileCheck %s |
| // RUN: not %clang -target powerpc64le-ibm-linux-gnu -fsyntax-only -nocudalib \ |
| // RUN: -nocudainc -DFORCE_ERROR --cuda-gpu-arch=sm_35 --cuda-gpu-arch=sm_60 \ |
| // RUN: %s 2>&1 | FileCheck %s |
| // RUN: not %clang -target powerpc64le-ibm-linux-gnu -fsyntax-only -nocudalib \ |
| // RUN: -nocudainc -DFORCE_ERROR --cuda-gpu-arch=sm_35 --cuda-gpu-arch=sm_60 \ |
| // RUN: --cuda-device-only %s 2>&1 | FileCheck %s |
| |
| #if defined(ERROR_HOST) && !defined(__CUDA_ARCH__) |
| #error compilation failed |
| #endif |
| |
| #if defined(ERROR_SM35) && (__CUDA_ARCH__ == 350) |
| #error compilation failed |
| #endif |
| |
| #if defined(ERROR_SM60) && (__CUDA_ARCH__ == 600) |
| #error compilation failed |
| #endif |
| |
| // RUN: not %clang -target powerpc64le-ibm-linux-gnu -fsyntax-only -nocudalib \ |
| // RUN: -nocudainc -DERROR_HOST --cuda-gpu-arch=sm_35 --cuda-gpu-arch=sm_60 \ |
| // RUN: %s 2>&1 | FileCheck %s |
| // RUN: not %clang -target powerpc64le-ibm-linux-gnu -fsyntax-only -nocudalib \ |
| // RUN: -nocudainc -DERROR_SM35 --cuda-gpu-arch=sm_35 --cuda-gpu-arch=sm_60 \ |
| // RUN: --cuda-device-only %s 2>&1 | FileCheck %s |
| // RUN: not %clang -target powerpc64le-ibm-linux-gnu -fsyntax-only -nocudalib \ |
| // RUN: -nocudainc -DERROR_SM60 --cuda-gpu-arch=sm_35 --cuda-gpu-arch=sm_60 \ |
| // RUN: --cuda-device-only %s 2>&1 | FileCheck %s |
| |
| // RUN: not %clang -target powerpc64le-ibm-linux-gnu -fsyntax-only -nocudalib \ |
| // RUN: -nocudainc -DERROR_HOST -DERROR_SM35 --cuda-gpu-arch=sm_35 \ |
| // RUN: --cuda-gpu-arch=sm_60 %s 2>&1 | FileCheck %s |
| // RUN: not %clang -target powerpc64le-ibm-linux-gnu -fsyntax-only -nocudalib \ |
| // RUN: -nocudainc -DERROR_HOST -DERROR_SM60 --cuda-gpu-arch=sm_35 \ |
| // RUN: --cuda-gpu-arch=sm_60 %s 2>&1 | FileCheck %s |
| // RUN: not %clang -target powerpc64le-ibm-linux-gnu -fsyntax-only -nocudalib \ |
| // RUN: -nocudainc -DERROR_SM35 -DERROR_SM60 --cuda-gpu-arch=sm_35 \ |
| // RUN: --cuda-gpu-arch=sm_60 %s 2>&1 | FileCheck %s |
| |
| |
| // CHECK: error: compilation failed |
| // CHECK-NOT: error: compilation failed |