Lines Matching defs:Retain
553 Instruction *Retain,
643 Function *NewDecl = EP.get(ARCRuntimeEntryPointKind::Retain);
1107 case ARCInstKind::Retain:
1348 case ARCInstKind::Retain:
1470 Instruction *Retain = cast<Instruction>(P.first);
1471 Value *Root = GetRCIdentityRoot(Retain->getOperand(0));
1525 case ARCInstKind::Retain:
1540 // If we succeed, copy S's RRInfo into the Release -> {Retain Set
1770 Function *Decl = EP.get(ARCRuntimeEntryPointKind::Retain);
1778 LLVM_DEBUG(dbgs() << "Inserting new Retain: " << *Call
1819 Instruction *Retain,
1838 for (SmallVector<Instruction *, 4> NewRetains{Retain};;) {
2030 Instruction *Retain = cast<Instruction>(V);
2032 LLVM_DEBUG(dbgs() << "Visiting: " << *Retain << "\n");
2034 Value *Arg = GetArgRCIdentityRoot(Retain);
2055 BBStates, Retains, Releases, M, Retain, DeadInsts,
2124 Function *Decl = EP.get(ARCRuntimeEntryPointKind::Retain);
2154 Function *Decl = EP.get(ARCRuntimeEntryPointKind::Retain);
2263 /// between the Retain and the call that can affect the reference count of their
2264 /// shared pointer argument. Note that Retain need not be in BB.
2266 Instruction *Retain,
2269 CanChangeRetainCount, Arg, Retain->getParent(), Retain, PA));
2289 auto *Retain = dyn_cast_or_null<CallInst>(
2293 if (!Retain || !IsRetain(GetBasicARCInstKind(Retain)) ||
2294 GetArgRCIdentityRoot(Retain) != Arg) {
2298 return Retain;
2355 CallInst *Retain = FindPredecessorRetainWithSafePath(
2358 if (!Retain)
2362 // between the retain and the call. Note that Retain need not be in BB.
2363 CallInst *Call = HasSafePathToPredecessorCall(Arg, Retain, PA);
2368 GetBasicARCInstKind(Retain) == ARCInstKind::RetainRV &&
2375 LLVM_DEBUG(dbgs() << "Erasing: " << *Retain << "\nErasing: " << *Autorelease
2377 BundledInsts->eraseInst(Retain);
2395 case ARCInstKind::Retain:
2466 if (UsedInThisFunction & ((1 << unsigned(ARCInstKind::Retain)) |