Lines Matching refs:RetainRV
489 bool OptimizeRetainRVCall(Function &F, Instruction *RetainRV);
578 ObjCARCOpt::OptimizeRetainRVCall(Function &F, Instruction *RetainRV) { in OptimizeRetainRVCall() argument
580 const Value *Arg = GetArgRCIdentityRoot(RetainRV); in OptimizeRetainRVCall()
583 if (Call->getParent() == RetainRV->getParent()) { in OptimizeRetainRVCall()
588 if (&*I == RetainRV) in OptimizeRetainRVCall()
591 BasicBlock *RetainRVParent = RetainRV->getParent(); in OptimizeRetainRVCall()
596 if (&*I == RetainRV) in OptimizeRetainRVCall()
604 BasicBlock::iterator I = RetainRV->getIterator(), in OptimizeRetainRVCall()
605 Begin = RetainRV->getParent()->begin(); in OptimizeRetainRVCall()
616 << "Erasing " << *RetainRV << "\n"); in OptimizeRetainRVCall()
619 EraseInstruction(RetainRV); in OptimizeRetainRVCall()
630 "Old = " << *RetainRV << "\n"); in OptimizeRetainRVCall()
633 cast<CallInst>(RetainRV)->setCalledFunction(NewDecl); in OptimizeRetainRVCall()
635 DEBUG(dbgs() << "New = " << *RetainRV << "\n"); in OptimizeRetainRVCall()
652 if (isa<ReturnInst>(U) || GetBasicARCInstKind(U) == ARCInstKind::RetainRV) in OptimizeAutoreleaseRVCall()
753 case ARCInstKind::RetainRV: in OptimizeIndividualCalls()
893 case ARCInstKind::RetainRV: in OptimizeIndividualCalls()
1124 case ARCInstKind::RetainRV: { in VisitInstructionBottomUp()
1130 if (Class != ARCInstKind::RetainRV) { in VisitInstructionBottomUp()
1269 case ARCInstKind::RetainRV: { in VisitInstructionTopDown()
2210 (1 << unsigned(ARCInstKind::RetainRV)) | in runOnFunction()