Lines Matching refs:ChainPred

599       for (auto ChainPred : HotChains) {  in mergeChainPairs()  local
601 for (auto EdgeIter : ChainPred->edges()) { in mergeChainPairs()
605 if (ChainPred == ChainSucc) in mergeChainPairs()
609 if (ChainPred->numBlocks() + ChainSucc->numBlocks() >= MaxChainSize) in mergeChainPairs()
613 auto CurGain = getBestMergeGain(ChainPred, ChainSucc, ChainEdge); in mergeChainPairs()
619 compareChainPairs(ChainPred, ChainSucc, BestChainPred, in mergeChainPairs()
622 BestChainPred = ChainPred; in mergeChainPairs()
684 MergeGainTy getBestMergeGain(Chain *ChainPred, Chain *ChainSucc, in getBestMergeGain() argument
686 if (Edge->hasCachedMergeGain(ChainPred, ChainSucc)) { in getBestMergeGain()
687 return Edge->getCachedMergeGain(ChainPred, ChainSucc); in getBestMergeGain()
692 auto EdgePP = ChainPred->getEdge(ChainPred); in getBestMergeGain()
706 if (Offset == 0 || Offset == ChainPred->blocks().size()) in getBestMergeGain()
709 auto BB = ChainPred->blocks()[Offset - 1]; in getBestMergeGain()
716 computeMergeGain(ChainPred, ChainSucc, Jumps, Offset, MergeType)); in getBestMergeGain()
722 computeMergeGain(ChainPred, ChainSucc, Jumps, 0, MergeTypeTy::X_Y)); in getBestMergeGain()
728 if (SrcBlock->CurChain != ChainPred) in getBestMergeGain()
737 if (DstBlock->CurChain != ChainPred) in getBestMergeGain()
745 if (ChainPred->blocks().size() <= ChainSplitThreshold) { in getBestMergeGain()
746 for (size_t Offset = 1; Offset < ChainPred->blocks().size(); Offset++) { in getBestMergeGain()
754 Edge->setCachedMergeGain(ChainPred, ChainSucc, Gain); in getBestMergeGain()
762 MergeGainTy computeMergeGain(const Chain *ChainPred, const Chain *ChainSucc, in computeMergeGain() argument
766 auto MergedBlocks = mergeBlocks(ChainPred->blocks(), ChainSucc->blocks(), in computeMergeGain()
770 if ((ChainPred->isEntry() || ChainSucc->isEntry()) && in computeMergeGain()
775 auto NewGainScore = extTSPScore(MergedBlocks, Jumps) - ChainPred->score(); in computeMergeGain()