Lines Matching defs:BlockOrder

175     BasicBlockOrder BlockOrder(Start, End);
176 BinaryFunction &BF = *BlockOrder.front()->getFunction();
178 if (BlockOrder.size() <= 2)
181 size_t BestSplitIndex = findSplitIndex(BF, BlockOrder);
182 assert(BestSplitIndex < BlockOrder.size());
188 for (size_t Index = 0; Index < BlockOrder.size(); Index++) {
189 BinaryBasicBlock *BB = BlockOrder[Index];
307 estimatePostSplitBBAddress(const BasicBlockOrder &BlockOrder,
309 assert(SplitIndex < BlockOrder.size() && "Invalid split index");
312 for (size_t Index = 0; Index < BlockOrder.size(); Index++) {
313 BinaryBasicBlock *BB = BlockOrder[Index];
319 BinaryFunction *BF = BlockOrder[0]->getFunction();
320 BF->getLayout().update(BlockOrder);
329 size_t CurrentAddr = BBOffsets[BlockOrder[0]];
330 for (BinaryBasicBlock *BB : BlockOrder) {
411 /// Compute sum of scores over jumps within \p BlockOrder given \p SplitIndex.
413 void computeJumpScore(const BasicBlockOrder &BlockOrder,
416 for (const BinaryBasicBlock *SrcBB : BlockOrder) {
440 void computeLocalCallScore(const BasicBlockOrder &BlockOrder,
448 const size_t LastGlobalIndex = GlobalIndices[BlockOrder.back()];
452 for (const BinaryBasicBlock *SrcBB : BlockOrder) {
482 void computeCoverCallScore(const BasicBlockOrder &BlockOrder,
506 const BasicBlockOrder &BlockOrder,
514 estimatePostSplitBBAddress(BlockOrder, SplitIndex);
529 computeLocalCallScore(BlockOrder, SplitIndex, Score);
534 computeJumpScore(BlockOrder, SplitIndex, Score);
537 computeCoverCallScore(BlockOrder, SplitIndex, CoverCalls, Score);
563 const BasicBlockOrder &BlockOrder) {
564 assert(BlockOrder.size() > 2);
571 while (HotColdIndex + 1 < BlockOrder.size()) {
572 if (BlockOrder[HotColdIndex + 1]->getFragmentNum() == FragmentNum::cold())
576 assert(HotColdIndex + 1 == BlockOrder.size() ||
577 (BlockOrder[HotColdIndex]->getFragmentNum() == FragmentNum::main() &&
578 BlockOrder[HotColdIndex + 1]->getFragmentNum() ==
586 const BinaryBasicBlock *LastHotBB = BlockOrder[Index];
590 if (Index + 1 < BlockOrder.size() &&
591 BlockOrder[Index + 1] == getMostLikelySuccessor(LastHotBB))
595 computeSplitScore(BF, BlockOrder, Index, CoverCalls);