diff options
Diffstat (limited to 'llvm/lib/ProfileData/InstrProf.cpp')
-rw-r--r-- | llvm/lib/ProfileData/InstrProf.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/llvm/lib/ProfileData/InstrProf.cpp b/llvm/lib/ProfileData/InstrProf.cpp index a965a1208b5..2608847fd10 100644 --- a/llvm/lib/ProfileData/InstrProf.cpp +++ b/llvm/lib/ProfileData/InstrProf.cpp @@ -74,14 +74,15 @@ namespace llvm { std::string getPGOFuncName(StringRef RawFuncName, GlobalValue::LinkageTypes Linkage, - StringRef FileName, - uint64_t Version LLVM_ATTRIBUTE_UNUSED) { + StringRef FileName, uint64_t Version) { // Function names may be prefixed with a binary '1' to indicate // that the backend should not modify the symbols due to any platform // naming convention. Do not include that '1' in the PGO profile name. if (RawFuncName[0] == '\1') RawFuncName = RawFuncName.substr(1); + const char *Unknown = (Version <= 3 ? "<unknown>:" : "__unknown__"); + const char *Sep = (Version <= 3 ? ":" : "__"); std::string FuncName = RawFuncName; if (llvm::GlobalValue::isLocalLinkage(Linkage)) { @@ -90,9 +91,9 @@ std::string getPGOFuncName(StringRef RawFuncName, // that it will stay the same, e.g., if the files are checked out from // version control in different locations. if (FileName.empty()) - FuncName = FuncName.insert(0, "<unknown>:"); + FuncName = FuncName.insert(0, Unknown); else - FuncName = FuncName.insert(0, FileName.str() + ":"); + FuncName = FuncName.insert(0, FileName.str() + Sep); } return FuncName; } |