1 // RUN: %clang -v -o /dev/null -fxray-instrument -fxray-modes=xray-fdr %s -### \ 2 // RUN: 2>&1 | FileCheck --check-prefix FDR %s 3 // RUN: %clang -v -o /dev/null -fxray-instrument -fxray-modes=xray-basic %s \ 4 // RUN: -### 2>&1 | FileCheck --check-prefix BASIC %s 5 // RUN: %clang -v -o /dev/null -fxray-instrument -fxray-modes=all -### %s \ 6 // RUN: 2>&1 | FileCheck --check-prefixes FDR,BASIC %s 7 // RUN: %clang -v -o /dev/null -fxray-instrument \ 8 // RUN: -fxray-modes=xray-fdr,xray-basic -### %s 2>&1 | \ 9 // RUN: FileCheck --check-prefixes FDR,BASIC %s 10 // RUN: %clang -v -o /dev/null -fxray-instrument \ 11 // RUN: -fxray-modes=xray-fdr -fxray-modes=xray-basic -### %s 2>&1 | \ 12 // RUN: FileCheck --check-prefixes FDR,BASIC %s 13 // RUN: %clang -v -o /dev/null -fxray-instrument -### %s \ 14 // RUN: 2>&1 | FileCheck --check-prefixes FDR,BASIC %s 15 // RUN: %clang -v -o /dev/null -fxray-instrument -fxray-modes=none -### %s \ 16 // RUN: 2>&1 | FileCheck --check-prefixes NONE %s 17 // 18 // We also should support overriding the modes in an additive manner. 19 // 20 // RUN: %clang -v -o /dev/null -fxray-instrument -fxray-modes=none,xray-fdr \ 21 // RUN: -### %s \ 22 // RUN: 2>&1 | FileCheck --check-prefixes FDR %s 23 // RUN: %clang -v -o /dev/null -fxray-instrument -fxray-modes=xray-fdr,none \ 24 // RUN: -### %s \ 25 // RUN: 2>&1 | FileCheck --check-prefixes NONE %s 26 // RUN: %clang -v -o /dev/null -fxray-instrument -fxray-modes=none,all \ 27 // RUN: -### %s \ 28 // RUN: 2>&1 | FileCheck --check-prefixes FDR,BASIC %s 29 30 // BASIC: libclang_rt.xray-basic 31 // FDR: libclang_rt.xray-fdr 32 // NONE-NOT: libclang_rt.xray-basic 33 // NONE-NOT: libclang_rt.xray-fdr 34 // REQUIRES-ANY: linux, freebsd 35 // REQUIRES-ANY: amd64, x86_64, x86_64h, arm, aarch64, arm64 36