1 // RUN: %clang_cc1 -fxray-instrument \ 2 // RUN: -fxray-instrumentation-bundle=function-entry -x c++ \ 3 // RUN: -std=c++11 -triple x86_64-unknown-unknown -emit-llvm -o - %s \ 4 // RUN: | FileCheck --check-prefixes CHECK,SKIPEXIT %s 5 // RUN: %clang_cc1 -fxray-instrument \ 6 // RUN: -fxray-instrumentation-bundle=function-exit -x c++ \ 7 // RUN: -std=c++11 -triple x86_64-unknown-unknown -emit-llvm -o - %s \ 8 // RUN: | FileCheck --check-prefixes CHECK,SKIPENTRY %s 9 // RUN: %clang_cc1 -fxray-instrument \ 10 // RUN: -fxray-instrumentation-bundle=function-entry,function-exit -x c++ \ 11 // RUN: -std=c++11 -triple x86_64-unknown-unknown -emit-llvm -o - %s \ 12 // RUN: | FileCheck --check-prefixes CHECK,NOSKIPENTRY,NOSKIPEXIT %s 13 14 // CHECK: define{{.*}} void @_Z13justAFunctionv() #[[ATTR:[0-9]+]] { 15 void justAFunction() { 16 } 17 18 // SKIPENTRY: attributes #[[ATTR]] = {{.*}} "xray-skip-entry" {{.*}} 19 // SKIPEXIT: attributes #[[ATTR]] = {{.*}} "xray-skip-exit" {{.*}} 20 21 // NOSKIPENTRY-NOT: attributes #[[ATTR]] = {{.*}} "xray-skip-entry" {{.*}} 22 // NOSKIPEXIT-NOT: attributes #[[ATTR]] = {{.*}} "xray-skip-exit" {{.*}} 23