summaryrefslogtreecommitdiff
path: root/test/Driver/cuda-bail-out.cu
blob: aaf771474315d791faa64675228f605d311ee8d4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
// 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