Lines Matching refs:Tail

273                                    BinaryBasicBlock &Tail) const {  in moderateDuplicate()
279 if (isInCacheLine(BB, Tail)) in moderateDuplicate()
282 if (Tail.getOriginalSize() > opts::TailDuplicationMaximumDuplication) in moderateDuplicate()
285 for (auto Itr = Tail.succ_begin(); Itr != Tail.succ_end(); ++Itr) { in moderateDuplicate()
286 if ((*Itr)->getLayoutIndex() == Tail.getLayoutIndex() + 1) in moderateDuplicate()
290 BlocksToDuplicate.push_back(&Tail); in moderateDuplicate()
296 BinaryBasicBlock &Tail) const { in aggressiveDuplicate()
302 if (isInCacheLine(BB, Tail)) in aggressiveDuplicate()
365 BinaryBasicBlock *Tail) const { in shouldDuplicate()
366 if (Pred == Tail) in shouldDuplicate()
369 if (Tail->succ_size() != 0) in shouldDuplicate()
372 if (Pred->getLayoutIndex() + 1 == Tail->getLayoutIndex()) in shouldDuplicate()
377 if (Tail->hasJumpTable()) in shouldDuplicate()
409 BinaryBasicBlock *Tail) const { in cacheScoreImproved()
431 Addr += BBSize[Tail]; in cacheScoreImproved()
453 if (SrcBB == Pred && DstBB == Tail) { in cacheScoreImproved()
472 BinaryBasicBlock *Tail) const { in cacheDuplicate()
476 if (Pred->isCold() || Tail->isCold()) { in cacheDuplicate()
481 if (Tail->estimateSize(Emitter) <= opts::TailDuplicationMinimumDuplication) { in cacheDuplicate()
482 BlocksToDuplicate.push_back(Tail); in cacheDuplicate()
486 if (Tail->estimateSize(Emitter) > opts::TailDuplicationMaximumDuplication) { in cacheDuplicate()
496 if (cacheScoreImproved(Emitter, BF, Pred, Tail)) { in cacheDuplicate()
497 BlocksToDuplicate.push_back(Tail); in cacheDuplicate()
590 BinaryBasicBlock *Tail = BB->getSuccessor(); in runOnFunction() local
592 if (!shouldDuplicate(BB, Tail)) in runOnFunction()
597 BlocksToDuplicate = aggressiveDuplicate(*BB, *Tail); in runOnFunction()
599 BlocksToDuplicate = moderateDuplicate(*BB, *Tail); in runOnFunction()
601 BlocksToDuplicate = cacheDuplicate(Emitter.MCE.get(), Function, BB, Tail); in runOnFunction()