Lines Matching defs:Ret
92 bool EliminateRecursiveTailCall(CallInst *CI, ReturnInst *Ret,
98 ReturnInst *Ret, BasicBlock *&OldEntry,
185 if (ReturnInst *Ret = dyn_cast<ReturnInst>(BB->getTerminator())) {
186 bool Change = ProcessReturningBlock(Ret, OldEntry, TailCallsAreMarkedTail,
188 if (!Change && BB->getFirstNonPHIOrDbg() == Ret)
189 Change = FoldReturnAndProcessPred(BB, Ret, OldEntry,
410 bool TailCallElim::EliminateRecursiveTailCall(CallInst *CI, ReturnInst *Ret,
433 for (++BBI; &*BBI != Ret; ++BBI) {
454 if (Ret->getNumOperands() == 1 && Ret->getReturnValue() != CI &&
455 !isa<UndefValue>(Ret->getReturnValue()) &&
461 if (!isDynamicConstant(Ret->getReturnValue(), CI, Ret))
465 AccumulatorRecursionEliminationInitVal = getCommonReturnValue(Ret, CI);
470 BasicBlock *BB = Ret->getParent();
563 AccPN->addIncoming(Ret->getReturnValue(), BB);
577 BranchInst *NewBI = BranchInst::Create(OldEntry, Ret);
580 BB->getInstList().erase(Ret); // Remove return.
587 ReturnInst *Ret, BasicBlock *&OldEntry,
612 EliminateRecursiveTailCall(CI, FoldReturnIntoUncondBranch(Ret, BB, Pred),
623 bool TailCallElim::ProcessReturningBlock(ReturnInst *Ret, BasicBlock *&OldEntry,
627 CallInst *CI = FindTRECandidate(Ret, CannotTailCallElimCallsMarkedTail);
631 return EliminateRecursiveTailCall(CI, Ret, OldEntry, TailCallsAreMarkedTail,