Lines Matching refs:Preds
179 SmallVector<BasicBlock *, 2> Preds(predecessors((BB))); in getTwoPredecessors() local
180 assert(Preds.size() == 2 && "Expected exactly 2 predecessors!"); in getTwoPredecessors()
181 return Preds; in getTwoPredecessors()
195 SmallVector<BasicBlock *, 2> Preds(predecessors(CallSiteBB)); in canSplitCallSite() local
196 if (Preds.size() != 2 || isa<IndirectBrInst>(Preds[0]->getTerminator()) || in canSplitCallSite()
197 isa<IndirectBrInst>(Preds[1]->getTerminator())) in canSplitCallSite()
303 ArrayRef<std::pair<BasicBlock *, ConditionsTy>> Preds, in splitCallSite() argument
314 CallPN = PHINode::Create(CB.getType(), Preds.size(), "phi.call"); in splitCallSite()
320 assert(Preds.size() == 2 && "The ValueToValueMaps array has size 2."); in splitCallSite()
324 for (unsigned i = 0; i < Preds.size(); i++) { in splitCallSite()
325 BasicBlock *PredBB = Preds[i].first; in splitCallSite()
333 addConditions(*NewCI, Preds[i].second); in splitCallSite()
398 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()