Lines Matching defs:ThenBB
278 bool SpeculativelyExecuteBB(BranchInst *BI, BasicBlock *ThenBB);
2832 /// br i1 %cmp, label %EndBB, label %ThenBB
2833 /// ThenBB:
2910 static bool validateAndCostRequiredSelects(BasicBlock *BB, BasicBlock *ThenBB,
2923 Value *ThenV = PN.getIncomingValueForBlock(ThenBB);
2981 /// br i1 %cmp, label %EndBB, label %ThenBB
2982 /// ThenBB:
2986 /// %phi = phi [ %sub, %ThenBB ], [ 0, %EndBB ]
3001 BasicBlock *ThenBB) {
3011 BasicBlock *EndBB = ThenBB->getTerminator()->getSuccessor(0);
3015 // If ThenBB is actually on the false edge of the conditional branch, remember
3018 if (ThenBB != BI->getSuccessor(0)) {
3019 assert(ThenBB == BI->getSuccessor(1) && "No edge from 'if' block?");
3039 // Keep a count of how many times instructions are used within ThenBB when
3040 // they are candidates for sinking into ThenBB. Specifically:
3043 // - All of their uses are in ThenBB.
3052 for (Instruction &I : reverse(drop_end(*ThenBB))) {
3060 // probability for ThenBB, which is fine since the optimization here takes
3084 &I, BB, ThenBB, EndBB))))
3107 // Consider any sink candidates which are only used in ThenBB as costs for
3121 Convert |= validateAndCostRequiredSelects(BB, ThenBB, EndBB,
3128 LLVM_DEBUG(dbgs() << "SPECULATIVELY EXECUTING BB" << *ThenBB << "\n";);
3182 for (auto &I : make_early_inc_range(*ThenBB)) {
3201 for (auto &It : make_range(ThenBB->begin(), ThenBB->end()))
3208 BB->splice(BI->getIterator(), ThenBB, ThenBB->begin(),
3209 std::prev(ThenBB->end()));
3215 unsigned ThenI = PN.getBasicBlockIndex(ThenBB);