Attach profile summary information to Module.
Differential Revision: http://reviews.llvm.org/D18289 llvm-svn: 264342
This commit is contained in:
parent
699d96535d
commit
8160812e26
|
@ -396,6 +396,7 @@ void CodeGenModule::Release() {
|
|||
AddGlobalCtor(OpenMPRegistrationFunction, 0);
|
||||
if (PGOReader) {
|
||||
getModule().setMaximumFunctionCount(PGOReader->getMaximumFunctionCount());
|
||||
getModule().setProfileSummary(PGOReader->getSummary().getMD(VMContext));
|
||||
if (PGOStats.hasDiagnostics())
|
||||
PGOStats.reportDiagnostics(getDiags(), getCodeGenOpts().MainFileName);
|
||||
}
|
||||
|
|
|
@ -0,0 +1,26 @@
|
|||
begin
|
||||
# Func Hash:
|
||||
10
|
||||
# Num Counters:
|
||||
2
|
||||
# Counter Values:
|
||||
1
|
||||
0
|
||||
|
||||
main
|
||||
# Func Hash:
|
||||
0
|
||||
# Num Counters:
|
||||
1
|
||||
# Counter Values:
|
||||
1
|
||||
|
||||
end
|
||||
# Func Hash:
|
||||
10
|
||||
# Num Counters:
|
||||
2
|
||||
# Counter Values:
|
||||
2
|
||||
2
|
||||
|
|
@ -0,0 +1,25 @@
|
|||
// Test that profile summary is set correctly.
|
||||
|
||||
// RUN: llvm-profdata merge %S/Inputs/max-function-count.proftext -o %t.profdata
|
||||
// RUN: %clang %s -o - -mllvm -disable-llvm-optzns -emit-llvm -S -fprofile-instr-use=%t.profdata | FileCheck %s
|
||||
//
|
||||
int begin(int i) {
|
||||
if (i)
|
||||
return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
int end(int i) {
|
||||
if (i)
|
||||
return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
int main(int argc, const char *argv[]) {
|
||||
begin(0);
|
||||
end(1);
|
||||
end(1);
|
||||
return 0;
|
||||
}
|
||||
// CHECK: {{![0-9]+}} = !{i32 1, !"ProfileSummary", {{![0-9]+}}}
|
||||
// CHECK: {{![0-9]+}} = !{!"DetailedSummary", {{![0-9]+}}}
|
Loading…
Reference in New Issue