1 | // Tests that we trigger unused-arg warnings on CUDA flags appropriately. |
2 | |
3 | // REQUIRES: clang-driver |
4 | // REQUIRES: x86-registered-target |
5 | // REQUIRES: nvptx-registered-target |
6 | |
7 | // --cuda-host-only and --cuda-compile-host-device should never trigger an |
8 | // unused arg warning. |
9 | // RUN: %clang -### -target x86_64-linux-gnu --cuda-host-only -c %s 2>&1 | \ |
10 | // RUN: FileCheck %s |
11 | // RUN: %clang -### -target x86_64-linux-gnu --cuda-host-only -x c -c %s 2>&1 | \ |
12 | // RUN: FileCheck %s |
13 | // RUN: %clang -### -target x86_64-linux-gnu --cuda-compile-host-device -c %s 2>&1 | \ |
14 | // RUN: FileCheck %s |
15 | // RUN: %clang -### -target x86_64-linux-gnu --cuda-compile-host-device -x c -c %s 2>&1 | \ |
16 | // RUN: FileCheck %s |
17 | |
18 | // --cuda-device-only should warn during non-CUDA compilation. |
19 | // RUN: %clang -### -target x86_64-linux-gnu --cuda-device-only -x c -c %s 2>&1 | \ |
20 | // RUN: FileCheck -check-prefix UNUSED-WARNING %s |
21 | |
22 | // --cuda-device-only should not produce warning compiling CUDA files |
23 | // RUN: %clang -### -target x86_64-linux-gnu --cuda-device-only -c %s 2>&1 | \ |
24 | // RUN: FileCheck -check-prefix NO-UNUSED-WARNING %s |
25 | |
26 | // CHECK-NOT: warning: argument unused during compilation: '--cuda-host-only' |
27 | // CHECK-NOT: warning: argument unused during compilation: '--cuda-compile-host-device' |
28 | // UNUSED-WARNING: warning: argument unused during compilation: '--cuda-device-only' |
29 | // NO-UNUSED-WARNING-NOT: warning: argument unused during compilation: '--cuda-device-only' |
30 | |