Home | History | Annotate | Download | only in ObjCARC

Lines Matching refs:Arg

84     ValueT &operator[](const KeyT &Arg) {
86 Map.insert(std::make_pair(Arg, size_t(0)));
90 Vector.push_back(std::make_pair(Arg, ValueT()));
139 static const Value *FindSingleUseIdentifiedObject(const Value *Arg) {
140 if (Arg->hasOneUse()) {
141 if (const BitCastInst *BC = dyn_cast<BitCastInst>(Arg))
143 if (const GetElementPtrInst *GEP = dyn_cast<GetElementPtrInst>(Arg))
146 if (IsForwarding(GetBasicInstructionClass(Arg)))
148 cast<CallInst>(Arg)->getArgOperand(0));
149 if (!IsObjCIdentifiedObject(Arg))
151 return Arg;
156 if (IsObjCIdentifiedObject(Arg)) {
157 for (Value::const_use_iterator UI = Arg->use_begin(), UE = Arg->use_end();
160 if (!U->use_empty() || StripPointerCastsAndObjCCalls(U) != Arg)
164 return Arg;
583 PtrState &getPtrTopDownState(const Value *Arg) {
584 return PerPtrTopDown[Arg];
587 PtrState &getPtrBottomUpState(const Value *Arg) {
588 return PerPtrBottomUp[Arg];
777 void MoveCalls(Value *Arg, RRInfo &RetainsToMove, RRInfo &ReleasesToMove,
792 Value *Arg,
987 const Value *Arg = GetObjCArg(RetainRV);
988 ImmutableCallSite CS(Arg);
1013 GetObjCArg(I) == Arg) {
1185 const Value *Arg = Call->getArgOperand(0);
1186 Arg = FindSingleUseIdentifiedObject(Arg);
1187 if (Arg) {
1245 const Value *Arg = GetObjCArg(Inst);
1248 if (isNullOrUndef(Arg)) {
1261 // If Arg is a PHI, and one or more incoming values to the
1267 Worklist.push_back(std::make_pair(Inst, Arg));
1271 Arg = Pair.second;
1273 const PHINode *PN = dyn_cast<PHINode>(Arg);
1306 FindDependencies(NeedsPositiveRetainCount, Arg,
1312 FindDependencies(AutoreleasePoolBoundary, Arg,
1378 const Value *Arg = I->first;
1393 const PtrState &SuccS = BBI->second.getPtrBottomUpState(Arg);
1426 const Value *Arg = I->first;
1441 const PtrState &SuccS = BBI->second.getPtrBottomUpState(Arg);
1483 const Value *Arg = 0;
1487 Arg = GetObjCArg(Inst);
1489 PtrState &S = MyStates.getPtrBottomUpState(Arg);
1522 Arg = GetObjCArg(Inst);
1524 PtrState &S = MyStates.getPtrBottomUpState(Arg);
1567 if (Ptr == Arg)
1689 const Value *Arg = 0;
1700 Arg = GetObjCArg(Inst);
1702 PtrState &S = MyStates.getPtrTopDownState(Arg);
1730 Arg = GetObjCArg(Inst);
1732 PtrState &S = MyStates.getPtrTopDownState(Arg);
1772 if (Ptr == Arg)
1976 void ObjCARCOpt::MoveCalls(Value *Arg,
1983 Type *ArgTy = Arg->getType();
1991 Value *MyArg = ArgTy == ParamTy ? Arg :
1992 new BitCastInst(Arg, ParamTy, "", InsertPt);
2013 Value *MyArg = ArgTy == ParamTy ? Arg :
2014 new BitCastInst(Arg, ParamTy, "", InsertPt);
2062 Value *Arg,
2249 Value *Arg = GetObjCArg(Retain);
2254 bool KnownSafe = isa<Constant>(ArgArg);
2258 if (const LoadInst *LI = dyn_cast<LoadInst>(Arg))
2271 ReleasesToMove, Arg, KnownSafe,
2277 MoveCalls(Arg, RetainsToMove, ReleasesToMove,
2335 Value *Arg = Call->getArgOperand(0);
2337 switch (PA.getAA()->alias(Arg, EarlierArg)) {
2365 Value *Arg = Call->getArgOperand(0);
2367 switch (PA.getAA()->alias(Arg, EarlierArg)) {
2416 Value *Arg = Call->getArgOperand(0);
2417 if (AllocaInst *Alloca = dyn_cast<AllocaInst>(Arg)) {
2508 const Value *Arg = StripPointerCastsAndObjCCalls(Ret->getOperand(0));
2509 FindDependencies(NeedsPositiveRetainCount, Arg,
2522 if (GetObjCArg(Autorelease) != Arg)
2530 FindDependencies(CanChangeRetainCount, Arg,
2542 GetObjCArg(Retain) != Arg)
2565 FindDependencies(CanChangeRetainCount, Arg, Retain->getParent(), Retain,
2575 if (!Call || Arg != Call)