Summary: This allows us to do the following: clang -fxray-modes=none ... -fxray-modes=xray-basic It's important to be able to do this in cases where we'd like to specialise the configuration for the invocation of the compiler, in various scripting environments. This is related to llvm.org/PR37066, a follow-up to D45474. Reviewers: eizan, kpw, pelikan Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D45610 llvm-svn: 329989
36 lines
1.7 KiB
C++
36 lines
1.7 KiB
C++
// RUN: %clang -v -o /dev/null -fxray-instrument -fxray-modes=xray-fdr %s -### \
|
|
// RUN: 2>&1 | FileCheck --check-prefix FDR %s
|
|
// RUN: %clang -v -o /dev/null -fxray-instrument -fxray-modes=xray-basic %s \
|
|
// RUN: -### 2>&1 | FileCheck --check-prefix BASIC %s
|
|
// RUN: %clang -v -o /dev/null -fxray-instrument -fxray-modes=all -### %s \
|
|
// RUN: 2>&1 | FileCheck --check-prefixes FDR,BASIC %s
|
|
// RUN: %clang -v -o /dev/null -fxray-instrument \
|
|
// RUN: -fxray-modes=xray-fdr,xray-basic -### %s 2>&1 | \
|
|
// RUN: FileCheck --check-prefixes FDR,BASIC %s
|
|
// RUN: %clang -v -o /dev/null -fxray-instrument \
|
|
// RUN: -fxray-modes=xray-fdr -fxray-modes=xray-basic -### %s 2>&1 | \
|
|
// RUN: FileCheck --check-prefixes FDR,BASIC %s
|
|
// RUN: %clang -v -o /dev/null -fxray-instrument -### %s \
|
|
// RUN: 2>&1 | FileCheck --check-prefixes FDR,BASIC %s
|
|
// RUN: %clang -v -o /dev/null -fxray-instrument -fxray-modes=none -### %s \
|
|
// RUN: 2>&1 | FileCheck --check-prefixes NONE %s
|
|
//
|
|
// We also should support overriding the modes in an additive manner.
|
|
//
|
|
// RUN: %clang -v -o /dev/null -fxray-instrument -fxray-modes=none,xray-fdr \
|
|
// RUN: -### %s \
|
|
// RUN: 2>&1 | FileCheck --check-prefixes FDR %s
|
|
// RUN: %clang -v -o /dev/null -fxray-instrument -fxray-modes=xray-fdr,none \
|
|
// RUN: -### %s \
|
|
// RUN: 2>&1 | FileCheck --check-prefixes NONE %s
|
|
// RUN: %clang -v -o /dev/null -fxray-instrument -fxray-modes=none,all \
|
|
// RUN: -### %s \
|
|
// RUN: 2>&1 | FileCheck --check-prefixes FDR,BASIC %s
|
|
|
|
// BASIC: libclang_rt.xray-basic
|
|
// FDR: libclang_rt.xray-fdr
|
|
// NONE-NOT: libclang_rt.xray-basic
|
|
// NONE-NOT: libclang_rt.xray-fdr
|
|
// REQUIRES-ANY: linux, freebsd
|
|
// REQUIRES-ANY: amd64, x86_64, x86_64h, arm, aarch64, arm64
|