PGO] PGOFuncName meta data if PGOFuncName is different from function's raw name
authorRong Xu <xur@google.com>
Fri, 22 Apr 2016 21:19:05 +0000 (21:19 +0000)
committerRong Xu <xur@google.com>
Fri, 22 Apr 2016 21:19:05 +0000 (21:19 +0000)
Write out the PGOFuncName meta data if PGOFuncName is different from function's
raw name. This should only apply to internal linkage functions. This is to be
consumed by indirect-call promotion when called in LTO optimization pass.

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

llvm-svn: 267224

clang/lib/CodeGen/CodeGenPGO.cpp

index 7e89492..43bc37c 100644 (file)
@@ -43,6 +43,8 @@ void CodeGenPGO::setFuncName(StringRef Name,
 
 void CodeGenPGO::setFuncName(llvm::Function *Fn) {
   setFuncName(Fn->getName(), Fn->getLinkage());
+  // Create PGOFuncName meta data.
+  llvm::createPGOFuncNameMetadata(*Fn, FuncName);
 }
 
 namespace {