summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorVedant Kumar <vsk@apple.com>2016-03-28 15:49:08 +0000
committerVedant Kumar <vsk@apple.com>2016-03-28 15:49:08 +0000
commit43a8565be61a9e24997a6e9e971df47bbffbe6fd (patch)
tree6b0e9d3d1396283539e14ffe6f196f32a41fc1c8 /llvm/lib
parent828ac541ef7620e7bccfded34866176d7186d2d1 (diff)
downloadbcm5719-llvm-43a8565be61a9e24997a6e9e971df47bbffbe6fd.tar.gz
bcm5719-llvm-43a8565be61a9e24997a6e9e971df47bbffbe6fd.zip
[Coverage] Strip <unknown> from PGO names if no filenames are available
Patch suggested by David Li! llvm-svn: 264586
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/ProfileData/CoverageMapping.cpp4
-rw-r--r--llvm/lib/ProfileData/InstrProf.cpp2
2 files changed, 4 insertions, 2 deletions
diff --git a/llvm/lib/ProfileData/CoverageMapping.cpp b/llvm/lib/ProfileData/CoverageMapping.cpp
index f5d477bd139..aa43019a899 100644
--- a/llvm/lib/ProfileData/CoverageMapping.cpp
+++ b/llvm/lib/ProfileData/CoverageMapping.cpp
@@ -205,7 +205,9 @@ CoverageMapping::load(CoverageMappingReader &CoverageReader,
assert(!Record.MappingRegions.empty() && "Function has no regions");
StringRef OrigFuncName = Record.FunctionName;
- if (!Record.Filenames.empty())
+ if (Record.Filenames.empty())
+ OrigFuncName = getFuncNameWithoutPrefix(OrigFuncName);
+ else
OrigFuncName =
getFuncNameWithoutPrefix(OrigFuncName, Record.Filenames[0]);
FunctionRecord Function(OrigFuncName, Record.Filenames);
diff --git a/llvm/lib/ProfileData/InstrProf.cpp b/llvm/lib/ProfileData/InstrProf.cpp
index 045ba1a7b34..2446521a5bc 100644
--- a/llvm/lib/ProfileData/InstrProf.cpp
+++ b/llvm/lib/ProfileData/InstrProf.cpp
@@ -90,7 +90,7 @@ std::string getPGOFuncName(const Function &F, uint64_t Version) {
StringRef getFuncNameWithoutPrefix(StringRef PGOFuncName, StringRef FileName) {
if (FileName.empty())
- FileName = "<unknown>";
+ return PGOFuncName;
// Drop the file name including ':'. See also getPGOFuncName.
if (PGOFuncName.startswith(FileName))
PGOFuncName = PGOFuncName.drop_front(FileName.size() + 1);
OpenPOWER on IntegriCloud