blob: cbbb893129b6f3886fa022e92dcc1e529a760bc2 [file] [log] [blame]
// Tests that we trigger unused-arg warnings on CUDA flags appropriately.
// REQUIRES: clang-driver
// REQUIRES: x86-registered-target
// REQUIRES: nvptx-registered-target
// --cuda-host-only and --cuda-compile-host-device should never trigger an
// unused arg warning.
// RUN: %clang -### -target x86_64-linux-gnu --cuda-host-only -c %s 2>&1 | \
// RUN: FileCheck %s
// RUN: %clang -### -target x86_64-linux-gnu --cuda-host-only -x c -c %s 2>&1 | \
// RUN: FileCheck %s
// RUN: %clang -### -target x86_64-linux-gnu --cuda-compile-host-device -c %s 2>&1 | \
// RUN: FileCheck %s
// RUN: %clang -### -target x86_64-linux-gnu --cuda-compile-host-device -x c -c %s 2>&1 | \
// RUN: FileCheck %s
// --cuda-device-only should warn during non-CUDA compilation.
// RUN: %clang -### -target x86_64-linux-gnu --cuda-device-only -x c -c %s 2>&1 | \
// RUN: FileCheck -check-prefix UNUSED-WARNING %s
// --cuda-device-only should not produce warning compiling CUDA files
// RUN: %clang -### -target x86_64-linux-gnu --cuda-device-only -c %s 2>&1 | \
// RUN: FileCheck -check-prefix NO-UNUSED-WARNING %s
// CHECK-NOT: warning: argument unused during compilation: '--cuda-host-only'
// CHECK-NOT: warning: argument unused during compilation: '--cuda-compile-host-device'
// UNUSED-WARNING: warning: argument unused during compilation: '--cuda-device-only'
// NO-UNUSED-WARNING-NOT: warning: argument unused during compilation: '--cuda-device-only'