Lines Matching refs:BasicBlock
94 static BlockFrequency adjustedSumFreq(SmallPtrSetImpl<BasicBlock *> &BBs, in adjustedSumFreq()
97 for (BasicBlock *B : BBs) in adjustedSumFreq()
131 static SmallPtrSet<BasicBlock *, 2>
132 findBBsToSinkInto(const Loop &L, const SmallPtrSetImpl<BasicBlock *> &UseBBs, in findBBsToSinkInto()
133 const SmallVectorImpl<BasicBlock *> &ColdLoopBBs, in findBBsToSinkInto()
135 SmallPtrSet<BasicBlock *, 2> BBsToSinkInto; in findBBsToSinkInto()
140 SmallPtrSet<BasicBlock *, 2> BBsDominatedByColdestBB; in findBBsToSinkInto()
150 for (BasicBlock *ColdestBB : ColdLoopBBs) { in findBBsToSinkInto()
152 for (BasicBlock *SinkedBB : BBsToSinkInto) in findBBsToSinkInto()
159 for (BasicBlock *DominatedBB : BBsDominatedByColdestBB) { in findBBsToSinkInto()
167 for (BasicBlock *BB : BBsToSinkInto) { in findBBsToSinkInto()
187 Loop &L, Instruction &I, const SmallVectorImpl<BasicBlock *> &ColdLoopBBs, in sinkInstruction()
188 const SmallDenseMap<BasicBlock *, int, 16> &LoopBlockNumber, LoopInfo &LI, in sinkInstruction() argument
191 SmallPtrSet<BasicBlock *, 2> BBs; in sinkInstruction()
210 SmallPtrSet<BasicBlock *, 2> BBsToSinkInto = in sinkInstruction()
223 SmallVector<BasicBlock *, 2> SortedBBsToSinkInto; in sinkInstruction()
225 llvm::sort(SortedBBsToSinkInto, [&](BasicBlock *A, BasicBlock *B) { in sinkInstruction()
229 BasicBlock *MoveBB = *SortedBBsToSinkInto.begin(); in sinkInstruction()
232 for (BasicBlock *N : makeArrayRef(SortedBBsToSinkInto).drop_front(1)) { in sinkInstruction()
285 BasicBlock *Preheader = L.getLoopPreheader(); in sinkLoopInvariantInstructions()
295 if (all_of(L.blocks(), [&](const BasicBlock *BB) { in sinkLoopInvariantInstructions()
311 SmallVector<BasicBlock *, 10> ColdLoopBBs; in sinkLoopInvariantInstructions()
312 SmallDenseMap<BasicBlock *, int, 16> LoopBlockNumber; in sinkLoopInvariantInstructions()
314 for (BasicBlock *B : L.blocks()) in sinkLoopInvariantInstructions()
319 llvm::stable_sort(ColdLoopBBs, [&](BasicBlock *A, BasicBlock *B) { in sinkLoopInvariantInstructions()
344 static void computeAliasSet(Loop &L, BasicBlock &Preheader, in computeAliasSet()
346 for (BasicBlock *BB : L.blocks()) in computeAliasSet()
376 BasicBlock *Preheader = L.getLoopPreheader(); in run()
426 BasicBlock *Preheader = L->getLoopPreheader(); in runOnLoop()