Lines Matching refs:Ret
99 bool EliminateRecursiveTailCall(CallInst *CI, ReturnInst *Ret,
105 ReturnInst *Ret, BasicBlock *&OldEntry,
212 if (ReturnInst *Ret = dyn_cast<ReturnInst>(BB->getTerminator())) {
213 bool Change = ProcessReturningBlock(Ret, OldEntry, TailCallsAreMarkedTail,
215 if (!Change && BB->getFirstNonPHIOrDbg() == Ret)
216 Change = FoldReturnAndProcessPred(BB, Ret, OldEntry,
447 bool TailCallElim::EliminateRecursiveTailCall(CallInst *CI, ReturnInst *Ret,
470 for (++BBI; &*BBI != Ret; ++BBI) {
491 if (Ret->getNumOperands() == 1 && Ret->getReturnValue() != CI &&
492 !isa<UndefValue>(Ret->getReturnValue()) &&
498 if (!isDynamicConstant(Ret->getReturnValue(), CI, Ret))
502 AccumulatorRecursionEliminationInitVal = getCommonReturnValue(Ret, CI);
507 BasicBlock *BB = Ret->getParent();
600 AccPN->addIncoming(Ret->getReturnValue(), BB);
614 BranchInst *NewBI = BranchInst::Create(OldEntry, Ret);
617 BB->getInstList().erase(Ret); // Remove return.
624 ReturnInst *Ret, BasicBlock *&OldEntry,
649 EliminateRecursiveTailCall(CI, FoldReturnIntoUncondBranch(Ret, BB, Pred),
661 TailCallElim::ProcessReturningBlock(ReturnInst *Ret, BasicBlock *&OldEntry,
665 CallInst *CI = FindTRECandidate(Ret, CannotTailCallElimCallsMarkedTail);
669 return EliminateRecursiveTailCall(CI, Ret, OldEntry, TailCallsAreMarkedTail,