blob: 8585bf8425b09cb8f524e46f360d68aef28ce92f [file] [log] [blame]
Duncan P. N. Exon Smith7c414512014-03-20 22:50:08 +00001// Make sure instrementation data from available_externally functions doesn't
2// get thrown out.
3// RUN: %clang_cc1 -O2 -triple x86_64-apple-macosx10.9 -main-file-name c-linkage-available_externally.c %s -o - -emit-llvm -fprofile-instr-generate | FileCheck %s
4
Xinliang David Liddbdb1e2015-12-15 00:33:12 +00005// CHECK: @__profn_foo = linkonce_odr hidden constant [3 x i8] c"foo", section "__DATA,__llvm_prf_names", align 1
Justin Bogner970ac602014-12-08 19:04:51 +00006
Xinliang David Liddbdb1e2015-12-15 00:33:12 +00007// CHECK: @__profc_foo = linkonce_odr hidden global [1 x i64] zeroinitializer, section "__DATA,__llvm_prf_cnts", align 8
8// CHECK: @__profd_foo = linkonce_odr hidden global { i32, i32, i64, i8*, i64*, i8*, i8*, [1 x i16] } { i32 3, i32 1, i64 0, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @__profn_foo, i32 0, i32 0), i64* getelementptr inbounds ([1 x i64], [1 x i64]* @__profc_foo, i32 0, i32 0), i8* null, i8* null, [1 x i16] zeroinitializer }, section "__DATA,__llvm_prf_data", align 8
Duncan P. N. Exon Smith7c414512014-03-20 22:50:08 +00009inline int foo(void) { return 1; }
10
11int main(void) {
12 return foo();
13}