22 #define DEBUG_TYPE "tailduplication"
47 if (skipFunction(*MF.getFunction()))
50 auto MBPI = &getAnalysis<MachineBranchProbabilityInfo>();
52 Duplicator.initMF(MF, MBPI,
false);
54 bool MadeChange =
false;
55 while (Duplicator.tailDuplicateBlocks())
61 void TailDuplicatePass::getAnalysisUsage(
AnalysisUsage &AU)
const {
AnalysisUsage & addRequired()
MachineFunctionPass - This class adapts the FunctionPass interface to allow convenient creation of pa...
void getAnalysisUsage(AnalysisUsage &AU) const override
getAnalysisUsage - Subclasses that override getAnalysisUsage must call this.
Represent the analysis usage information of a pass.
char & TailDuplicateID
TailDuplicate - Duplicate blocks with unconditional branches into tails of their predecessors.
INITIALIZE_PASS(TailDuplicatePass,"tailduplication","Tail Duplication", false, false) bool TailDuplicatePass
Utility class to perform tail duplication.