Lines Matching refs:Preds
181 SmallVector<BasicBlock *, 2> Preds(predecessors((BB))); in getTwoPredecessors() local
182 assert(Preds.size() == 2 && "Expected exactly 2 predecessors!"); in getTwoPredecessors()
183 return Preds; in getTwoPredecessors()
197 SmallVector<BasicBlock *, 2> Preds(predecessors(CallSiteBB)); in canSplitCallSite() local
198 if (Preds.size() != 2 || isa<IndirectBrInst>(Preds[0]->getTerminator()) || in canSplitCallSite()
199 isa<IndirectBrInst>(Preds[1]->getTerminator())) in canSplitCallSite()
305 ArrayRef<std::pair<BasicBlock *, ConditionsTy>> Preds, in splitCallSite() argument
316 CallPN = PHINode::Create(CB.getType(), Preds.size(), "phi.call"); in splitCallSite()
322 assert(Preds.size() == 2 && "The ValueToValueMaps array has size 2."); in splitCallSite()
326 for (unsigned i = 0; i < Preds.size(); i++) { in splitCallSite()
327 BasicBlock *PredBB = Preds[i].first; in splitCallSite()
335 addConditions(*NewCI, Preds[i].second); in splitCallSite()
399 PHINode *NewPN = PHINode::Create(CurrentI->getType(), Preds.size()); in splitCallSite()
447 auto Preds = getTwoPredecessors(CB.getParent()); in shouldSplitOnPHIPredicatedArgument() local
448 return {{Preds[0], {}}, {Preds[1], {}}}; in shouldSplitOnPHIPredicatedArgument()
456 auto Preds = getTwoPredecessors(CB.getParent()); in shouldSplitOnPredicatedArgument() local
457 if (Preds[0] == Preds[1]) in shouldSplitOnPredicatedArgument()
469 for (auto *Pred : llvm::reverse(Preds)) { in shouldSplitOnPredicatedArgument()