Hookup ProfileSummary with SampleProfilerLoader

Summary: Set ProfileSummary in SampleProfilerLoader.

Reviewers: davidxl, eraman

Subscribers: llvm-commits

Differential Revision: http://reviews.llvm.org/D21702

llvm-svn: 273745
This commit is contained in:
Dehao Chen 2016-06-24 22:57:06 +00:00
parent 26ea3e99a5
commit 7fb830e3d2
3 changed files with 19 additions and 0 deletions

View File

@ -1275,6 +1275,7 @@ bool SampleProfileLoader::runOnModule(Module &M) {
clearFunctionData();
retval |= runOnFunction(F);
}
M.setProfileSummary(Reader->getSummary().getMD(M.getContext()));
return retval;
}

View File

@ -0,0 +1,4 @@
bar:100:3
1: 100
foo:200:1
1: 200

View File

@ -0,0 +1,14 @@
; Test that we annotate entire program's summary to IR.
; RUN: opt < %s -sample-profile -sample-profile-file=%S/Inputs/summary.prof -S | FileCheck %s
define i32 @bar() #0 !dbg !1 {
entry:
ret i32 1, !dbg !2
}
; CHECK-DAG: {{![0-9]+}} = !{i32 1, !"ProfileSummary", {{![0-9]+}}}
; CHECK-DAG: {{![0-9]+}} = !{!"NumFunctions", i64 2}
; CHECK-DAG: {{![0-9]+}} = !{!"MaxFunctionCount", i64 3}
!1 = distinct !DISubprogram(name: "bar")
!2 = !DILocation(line: 2, scope: !2)