Lines Matching defs:Weights
864 static void setBranchWeights(SwitchInst *SI, ArrayRef<uint32_t> Weights,
869 if (llvm::any_of(Weights, [](uint32_t W) { return W != 0; }))
871 .createBranchWeights(Weights, IsExpected);
1065 /// Get Weights of a given terminator, the default weight is at the front
1069 SmallVectorImpl<uint64_t> &Weights) {
1072 extractFromBranchWeightMD64(MD, Weights);
1078 assert(Weights.size() == 2);
1081 std::swap(Weights.front(), Weights.back());
1086 static void FitWeights(MutableArrayRef<uint64_t> Weights) {
1087 uint64_t Max = *llvm::max_element(Weights);
1090 for (uint64_t &I : Weights)
1183 SmallVector<uint64_t, 8> Weights;
1188 GetBranchWeights(PTI, Weights);
1190 if (Weights.size() != 1 + PredCases.size())
1194 // populate Weights with 1, which will later be scaled to the sum of
1196 Weights.assign(1 + PredCases.size(), 1);
1220 Weights[0] += Weights[i + 1];
1221 std::swap(Weights[i + 1], Weights.back());
1222 Weights.pop_back();
1239 unsigned CasesFromPred = Weights.size();
1248 // PredDefaultWeight (Weights[0]).
1249 Weights.push_back(Weights[0] * SuccWeights[i + 1]);
1258 Weights[i] *= ValidTotalSuccWeight;
1260 Weights[0] *= SuccWeights[0];
1273 WeightsForHandled[PredCases[i].Value] = Weights[i + 1];
1274 std::swap(Weights[i + 1], Weights.back());
1275 Weights.pop_back();
1290 Weights.push_back(WeightsForHandled[BBCases[i].Value]);
1300 Weights.push_back(WeightsForHandled[I]);
1339 FitWeights(Weights);
1341 SmallVector<uint32_t, 8> MDWeights(Weights.begin(), Weights.end());
4712 SmallVector<uint64_t, 8> Weights;
4715 GetBranchWeights(SI, Weights);
4716 if (Weights.size() == 1 + SI->getNumCases()) {
4718 (uint32_t)Weights[SI->findCaseValue(TrueVal)->getSuccessorIndex()];
4720 (uint32_t)Weights[SI->findCaseValue(FalseVal)->getSuccessorIndex()];
5595 SmallVector<uint64_t, 8> Weights;
5596 GetBranchWeights(SI, Weights);
5597 if (Weights.size() == 1 + SI->getNumCases()) {
5600 for (size_t I = 0, E = Weights.size(); I != E; ++I) {
5602 TrueWeight += Weights[I];
5604 FalseWeight += Weights[I];
7449 uint64_t Weights[2] = {BBTWeight * BB1FWeight + BBFWeight * BB2TWeight,
7451 FitWeights(Weights);
7452 setBranchWeights(BI, Weights[0], Weights[1], /*IsExpected=*/false);