]>
Commit | Line | Data |
---|---|---|
1b1a35ee | 1 | # Check for metadata, variables, declarations, and function definitions injected |
5099ac24 | 2 | # into LLVM IR when compiling with -Cinstrument-coverage. |
1b1a35ee XL |
3 | |
4 | WINDOWS: $__llvm_profile_runtime_user = comdat any | |
5 | ||
fc512014 XL |
6 | CHECK: @__covrec_{{[A-F0-9]+}}u = linkonce_odr hidden constant |
7 | CHECK-SAME: section "[[INSTR_PROF_COVFUN]]"[[COMDAT_IF_SUPPORTED]], align 8 | |
8 | ||
9 | CHECK: @__llvm_coverage_mapping = private constant | |
1b1a35ee XL |
10 | CHECK-SAME: section "[[INSTR_PROF_COVMAP]]", align 8 |
11 | ||
12 | WINDOWS: @__llvm_profile_runtime = external global i32 | |
13 | ||
94222f64 XL |
14 | CHECK: @__profc__R{{[a-zA-Z0-9_]+}}testprog14will_be_called = {{private|internal}} global |
15 | CHECK-SAME: section "[[INSTR_PROF_CNTS]]"{{.*}}, align 8 | |
1b1a35ee | 16 | |
94222f64 | 17 | CHECK: @__profd__R{{[a-zA-Z0-9_]+}}testprog14will_be_called = {{private|internal}} global |
5099ac24 | 18 | CHECK-SAME: @__profc__R{{[a-zA-Z0-9_]+}}testprog14will_be_called |
94222f64 | 19 | CHECK-SAME: section "[[INSTR_PROF_DATA]]"{{.*}}, align 8 |
1b1a35ee | 20 | |
94222f64 XL |
21 | CHECK: @__profc__R{{[a-zA-Z0-9_]+}}testprog4main = {{private|internal}} global |
22 | CHECK-SAME: section "[[INSTR_PROF_CNTS]]"{{.*}}, align 8 | |
1b1a35ee | 23 | |
94222f64 | 24 | CHECK: @__profd__R{{[a-zA-Z0-9_]+}}testprog4main = {{private|internal}} global |
5099ac24 | 25 | CHECK-SAME: @__profc__R{{[a-zA-Z0-9_]+}}testprog4main |
94222f64 | 26 | CHECK-SAME: section "[[INSTR_PROF_DATA]]"{{.*}}, align 8 |
1b1a35ee XL |
27 | |
28 | CHECK: @__llvm_prf_nm = private constant | |
29 | CHECK-SAME: section "[[INSTR_PROF_NAME]]", align 1 | |
30 | ||
31 | CHECK: @llvm.used = appending global | |
923072b8 FG |
32 | CHECK-SAME: @__llvm_coverage_mapping |
33 | CHECK-SAME: @__llvm_prf_nm | |
1b1a35ee XL |
34 | CHECK-SAME: section "llvm.metadata" |
35 | ||
36 | CHECK: [[DEFINE_INTERNAL]] { {{.*}} } @_R{{[a-zA-Z0-9_]+}}testprog14will_be_called() unnamed_addr #{{[0-9]+}} { | |
37 | CHECK-NEXT: start: | |
29967ef6 | 38 | CHECK-NOT: [[DEFINE_INTERNAL]] |
923072b8 FG |
39 | CHECK: %pgocount = load i64, {{i64\*|ptr}} |
40 | CHECK-SAME: @__profc__R{{[a-zA-Z0-9_]+}}testprog14will_be_called, | |
1b1a35ee | 41 | |
923072b8 | 42 | CHECK: declare void @llvm.instrprof.increment({{i8\*|ptr}}, i64, i32, i32) #[[LLVM_INSTRPROF_INCREMENT_ATTR:[0-9]+]] |
1b1a35ee XL |
43 | |
44 | WINDOWS: define linkonce_odr hidden i32 @__llvm_profile_runtime_user() #[[LLVM_PROFILE_RUNTIME_USER_ATTR:[0-9]+]] comdat { | |
923072b8 | 45 | WINDOWS-NEXT: %1 = load i32, {{i32\*|ptr}} @__llvm_profile_runtime |
1b1a35ee XL |
46 | WINDOWS-NEXT: ret i32 %1 |
47 | WINDOWS-NEXT: } | |
48 | ||
49 | CHECK: attributes #[[LLVM_INSTRPROF_INCREMENT_ATTR]] = { nounwind } | |
50 | WINDOWS: attributes #[[LLVM_PROFILE_RUNTIME_USER_ATTR]] = { noinline } |