Lines Matching refs:ProfileData
76 bool isBranchWeightMD(const MDNode *ProfileData) { in isBranchWeightMD() argument
77 return isTargetMD(ProfileData, "branch_weights", MinBWOps); in isBranchWeightMD()
81 auto *ProfileData = I.getMetadata(LLVMContext::MD_prof); in hasBranchWeightMD() local
82 return isBranchWeightMD(ProfileData); in hasBranchWeightMD()
90 auto *ProfileData = I.getMetadata(LLVMContext::MD_prof); in getBranchWeightMDNode() local
91 if (!isBranchWeightMD(ProfileData)) in getBranchWeightMDNode()
93 return ProfileData; in getBranchWeightMDNode()
97 auto *ProfileData = getBranchWeightMDNode(I); in getValidBranchWeightMDNode() local
98 if (ProfileData && ProfileData->getNumOperands() == 1 + I.getNumSuccessors()) in getValidBranchWeightMDNode()
99 return ProfileData; in getValidBranchWeightMDNode()
103 void extractFromBranchWeightMD(const MDNode *ProfileData, in extractFromBranchWeightMD() argument
105 assert(isBranchWeightMD(ProfileData) && "wrong metadata"); in extractFromBranchWeightMD()
107 unsigned NOps = ProfileData->getNumOperands(); in extractFromBranchWeightMD()
113 mdconst::dyn_extract<ConstantInt>(ProfileData->getOperand(Idx)); in extractFromBranchWeightMD()
121 bool extractBranchWeights(const MDNode *ProfileData, in extractBranchWeights() argument
123 if (!isBranchWeightMD(ProfileData)) in extractBranchWeights()
125 extractFromBranchWeightMD(ProfileData, Weights); in extractBranchWeights()
131 auto *ProfileData = I.getMetadata(LLVMContext::MD_prof); in extractBranchWeights() local
132 return extractBranchWeights(ProfileData, Weights); in extractBranchWeights()
143 auto *ProfileData = I.getMetadata(LLVMContext::MD_prof); in extractBranchWeights() local
144 if (!extractBranchWeights(ProfileData, Weights)) in extractBranchWeights()
155 bool extractProfTotalWeight(const MDNode *ProfileData, uint64_t &TotalVal) { in extractProfTotalWeight() argument
157 if (!ProfileData) in extractProfTotalWeight()
160 auto *ProfDataName = dyn_cast<MDString>(ProfileData->getOperand(0)); in extractProfTotalWeight()
165 for (unsigned Idx = 1; Idx < ProfileData->getNumOperands(); Idx++) { in extractProfTotalWeight()
166 auto *V = mdconst::dyn_extract<ConstantInt>(ProfileData->getOperand(Idx)); in extractProfTotalWeight()
174 ProfileData->getNumOperands() > 3) { in extractProfTotalWeight()
175 TotalVal = mdconst::dyn_extract<ConstantInt>(ProfileData->getOperand(2)) in extractProfTotalWeight()