[PATCH] D32877: Restrict call metadata based hotness detection to Sample PGO mode
Teresa Johnson via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu May 4 11:57:07 PDT 2017
tejohnson created this revision.
Herald added subscribers: Prazek, mehdi_amini, rengolin, aemerson.
Don't use the metadata on call instructions for determining hotness
unless we are in sample PGO mode, where it is needed because profile
counts are not accurate. In instrumentation mode this is not necessary
and does more harm than good when calls have VP metadata that hasn't
been properly scaled after transformations or dropped after constant
prop based devirtualization (both should be fixed, but we don't need
to do this in the first place for instrumentation PGO).
This required adjusting a number of tests to distinguish between sample
and instrumentation PGO handling.
https://reviews.llvm.org/D32877
Files:
include/llvm/Analysis/ProfileSummaryInfo.h
include/llvm/IR/Module.h
include/llvm/IR/ProfileSummary.h
lib/Analysis/ProfileSummaryInfo.cpp
lib/IR/Module.cpp
lib/IR/ProfileSummary.cpp
test/Bitcode/thinlto-function-summary-callgraph-profile-summary.ll
test/Bitcode/thinlto-function-summary-callgraph-sample-profile-summary.ll
test/Transforms/CodeGenPrepare/section-samplepgo.ll
test/Transforms/CodeGenPrepare/section.ll
test/Transforms/Inline/prof-update.ll
unittests/Analysis/ProfileSummaryInfoTest.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D32877.97862.patch
Type: text/x-patch
Size: 12719 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170504/9eaaae8f/attachment.bin>
More information about the llvm-commits
mailing list