diff options
Diffstat (limited to 'llvm/lib/IR/ProfDataUtils.cpp')
| -rw-r--r-- | llvm/lib/IR/ProfDataUtils.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/llvm/lib/IR/ProfDataUtils.cpp b/llvm/lib/IR/ProfDataUtils.cpp index d24263f8b3bd..b41256f59909 100644 --- a/llvm/lib/IR/ProfDataUtils.cpp +++ b/llvm/lib/IR/ProfDataUtils.cpp @@ -250,7 +250,15 @@ void setExplicitlyUnknownBranchWeights(Instruction &I) { MDB.createString(MDProfLabels::UnknownBranchWeightsMarker))); } -bool isExplicitlyUnknownBranchWeightsMetadata(const MDNode &MD) { +void setExplicitlyUnknownFunctionEntryCount(Function &F) { + MDBuilder MDB(F.getContext()); + F.setMetadata( + LLVMContext::MD_prof, + MDNode::get(F.getContext(), + MDB.createString(MDProfLabels::UnknownBranchWeightsMarker))); +} + +bool isExplicitlyUnknownProfileMetadata(const MDNode &MD) { if (MD.getNumOperands() != 1) return false; return MD.getOperand(0).equalsStr(MDProfLabels::UnknownBranchWeightsMarker); @@ -260,7 +268,7 @@ bool hasExplicitlyUnknownBranchWeights(const Instruction &I) { auto *MD = I.getMetadata(LLVMContext::MD_prof); if (!MD) return false; - return isExplicitlyUnknownBranchWeightsMetadata(*MD); + return isExplicitlyUnknownProfileMetadata(*MD); } void setBranchWeights(Instruction &I, ArrayRef<uint32_t> Weights, |
