projects
/
platform
/
upstream
/
llvm.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
3712907
)
Add code comment/NFC
author
Xinliang David Li
<davidxl@google.com>
Mon, 11 Apr 2016 17:13:08 +0000
(17:13 +0000)
committer
Xinliang David Li
<davidxl@google.com>
Mon, 11 Apr 2016 17:13:08 +0000
(17:13 +0000)
llvm-svn: 265966
llvm/lib/ProfileData/InstrProf.cpp
patch
|
blob
|
history
diff --git
a/llvm/lib/ProfileData/InstrProf.cpp
b/llvm/lib/ProfileData/InstrProf.cpp
index
7e043e3
..
7f4a87a
100644
(file)
--- a/
llvm/lib/ProfileData/InstrProf.cpp
+++ b/
llvm/lib/ProfileData/InstrProf.cpp
@@
-398,6
+398,10
@@
uint64_t InstrProfRecord::remapValue(uint64_t Value, uint32_t ValueKind,
std::lower_bound(ValueMap->begin(), ValueMap->end(), Value,
[](const std::pair<uint64_t, uint64_t> &LHS,
uint64_t RHS) { return LHS.first < RHS; });
+ // Raw function pointer collected by value profiler may be from
+ // external functions that are not instrumented. They won't have
+ // mapping data to be used by the deserializer. Force the value to
+ // be 0 in this case.
if (Result != ValueMap->end() && Result->first == Value)
Value = (uint64_t)Result->second;
else