diff --git a/clang/test/Profile/cxx-structors.cpp b/clang/test/Profile/cxx-structors.cpp index d6fc1ad6648b..578fc308bcc2 100644 --- a/clang/test/Profile/cxx-structors.cpp +++ b/clang/test/Profile/cxx-structors.cpp @@ -1,6 +1,8 @@ // Tests for instrumentation of C++ constructors and destructors. // -// RUN: %clang_cc1 -triple x86_64-apple-macosx10.11.0 -x c++ %s -o - -emit-llvm -fprofile-instrument=clang | FileCheck %s +// RUN: %clang_cc1 -triple x86_64-apple-macosx10.11.0 -x c++ %s -o %t -emit-llvm -fprofile-instrument=clang +// RUN: FileCheck %s -input-file=%t -check-prefix=INSTR +// RUN: FileCheck %s -input-file=%t -check-prefix=NOINSTR struct Foo { Foo() {} @@ -20,12 +22,18 @@ Bar bar; // Profile data for complete constructors and destructors must absent. -// CHECK-NOT: @__profc__ZN3FooC1Ev -// CHECK-NOT: @__profc__ZN3FooC1Ei -// CHECK-NOT: @__profc__ZN3FooD1Ev -// CHECK-NOT: @__profc__ZN3BarC1Ev -// CHECK-NOT: @__profc__ZN3BarD1Ev -// CHECK-NOT: @__profc__ZN3FooD1Ev +// INSTR: @__profc_main = +// INSTR: @__profc__ZN3FooC2Ev = +// INSTR: @__profc__ZN3FooD2Ev = +// INSTR: @__profc__ZN3FooC2Ei = +// INSTR: @__profc__ZN3BarC2Ev = + +// NOINSTR-NOT: @__profc__ZN3FooC1Ev +// NOINSTR-NOT: @__profc__ZN3FooC1Ei +// NOINSTR-NOT: @__profc__ZN3FooD1Ev +// NOINSTR-NOT: @__profc__ZN3BarC1Ev +// NOINSTR-NOT: @__profc__ZN3BarD1Ev +// NOINSTR-NOT: @__profc__ZN3FooD1Ev int main() { }