xur created this revision. xur added reviewers: davidxl, bogner, joker.eph. xur added subscribers: cfe-commits, vsk, xur.
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 passes (D17864 under review). This patch depends on http://reviews.llvm.org/D18623. http://reviews.llvm.org/D18624 Files: lib/CodeGen/CodeGenPGO.cpp Index: lib/CodeGen/CodeGenPGO.cpp =================================================================== --- lib/CodeGen/CodeGenPGO.cpp +++ lib/CodeGen/CodeGenPGO.cpp @@ -787,6 +787,11 @@ (llvm::InstrProfValueKind)ValueKind, NumValueSites[ValueKind]); + // Write out PGOFuncName meta data. + llvm::Function *F = ValueSite->getFunction(); + if (!llvm::getPGOFuncNameMetaData(*F)) + llvm::createPGOFuncNameMetaData(*F); + NumValueSites[ValueKind]++; } }
Index: lib/CodeGen/CodeGenPGO.cpp =================================================================== --- lib/CodeGen/CodeGenPGO.cpp +++ lib/CodeGen/CodeGenPGO.cpp @@ -787,6 +787,11 @@ (llvm::InstrProfValueKind)ValueKind, NumValueSites[ValueKind]); + // Write out PGOFuncName meta data. + llvm::Function *F = ValueSite->getFunction(); + if (!llvm::getPGOFuncNameMetaData(*F)) + llvm::createPGOFuncNameMetaData(*F); + NumValueSites[ValueKind]++; } }
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits