Lines Matching refs:UserI
626 if (const Instruction *UserI = dyn_cast<Instruction>(U->getUser())) { in followUsesInContext() local
627 bool Found = Explorer.findInContextOf(UserI, EIt, EEnd); in followUsesInContext()
628 if (Found && AA.followUseInMBEC(A, U, UserI, State)) in followUsesInContext()
629 for (const Use &Us : UserI->uses()) in followUsesInContext()
2314 Instruction *UserI = cast<Instruction>(U.getUser()); in updateImpl() local
2315 if (auto *CB = dyn_cast<CallBase>(UserI)) { in updateImpl()
2328 if (isa<GetElementPtrInst>(UserI) || isa<BitCastInst>(UserI) || in updateImpl()
2329 isa<PHINode>(UserI) || isa<SelectInst>(UserI)) { in updateImpl()
2333 if (isa<StoreInst>(UserI) || isa<LoadInst>(UserI) || in updateImpl()
2334 isa<ReturnInst>(UserI)) in updateImpl()
3896 Instruction *UserI = cast<Instruction>(U.getUser()); in isKnownNoAliasDueToNoAliasPreservation() local
3902 if (UserI == getCtxI() && UserI->getNumOperands() == 1) in isKnownNoAliasDueToNoAliasPreservation()
3906 if (auto *CB = dyn_cast<CallBase>(UserI)) { in isKnownNoAliasDueToNoAliasPreservation()
3920 A, *UserI, *getCtxI(), *this, /* ExclusionSet */ nullptr, in isKnownNoAliasDueToNoAliasPreservation()
3932 LLVM_DEBUG(dbgs() << "[AANoAliasCSArg] Unknown user: " << *UserI in isKnownNoAliasDueToNoAliasPreservation()
4201 auto &UserI = cast<Instruction>(*U.getUser()); in isDeadStore() local
4202 if (InfoCache.isOnlyUsedByAssume(UserI)) { in isDeadStore()
4204 AssumeOnlyInst->insert(&UserI); in isDeadStore()
5553 const Instruction *UserI = dyn_cast<Instruction>(U.getUser()); in updateImpl() local
5554 if (!UserI || isa<GetElementPtrInst>(UserI) || isa<CastInst>(UserI) || in updateImpl()
5555 isa<PHINode>(UserI) || isa<SelectInst>(UserI)) { in updateImpl()
5559 if (isa<LoadInst>(UserI) || isa<CmpInst>(UserI) || in updateImpl()
5560 (isa<StoreInst>(UserI) && in updateImpl()
5561 cast<StoreInst>(UserI)->getValueOperand() != U.get())) in updateImpl()
5563 if (auto *CB = dyn_cast<CallBase>(UserI)) { in updateImpl()
6978 Instruction *UserI = cast<Instruction>(U.getUser()); in updateImpl() local
6979 if (isa<LoadInst>(UserI)) in updateImpl()
6981 if (auto *SI = dyn_cast<StoreInst>(UserI)) { in updateImpl()
6984 << "[H2S] escaping store to memory: " << *UserI << "\n"); in updateImpl()
6991 if (auto *CB = dyn_cast<CallBase>(UserI)) { in updateImpl()
7028 LLVM_DEBUG(dbgs() << "[H2S] Bad user: " << *UserI << "\n"); in updateImpl()
7034 if (isa<GetElementPtrInst>(UserI) || isa<BitCastInst>(UserI) || in updateImpl()
7035 isa<PHINode>(UserI) || isa<SelectInst>(UserI)) { in updateImpl()
7041 LLVM_DEBUG(dbgs() << "[H2S] Unknown user: " << *UserI << "\n"); in updateImpl()
7858 const Instruction *UserI);
7861 void analyzeUseIn(Attributor &A, const Use &U, const Instruction *UserI);
8138 Instruction *UserI = cast<Instruction>(U.getUser()); in updateImpl() local
8139 LLVM_DEBUG(dbgs() << "[AAMemoryBehavior] Use: " << *U << " in " << *UserI in updateImpl()
8143 if (UserI->isDroppable()) in updateImpl()
8147 Follow = followUsersOfUseIn(A, U, UserI); in updateImpl()
8150 if (UserI->mayReadOrWriteMemory()) in updateImpl()
8151 analyzeUseIn(A, U, UserI); in updateImpl()
8164 const Instruction *UserI) { in followUsersOfUseIn() argument
8167 if (isa<LoadInst>(UserI) || isa<ReturnInst>(UserI)) in followUsersOfUseIn()
8172 const auto *CB = dyn_cast<CallBase>(UserI); in followUsersOfUseIn()
8194 const Instruction *UserI) { in analyzeUseIn() argument
8195 assert(UserI->mayReadOrWriteMemory()); in analyzeUseIn()
8197 switch (UserI->getOpcode()) { in analyzeUseIn()
8210 if (cast<StoreInst>(UserI)->getPointerOperand() == U.get()) in analyzeUseIn()
8221 const auto *CB = cast<CallBase>(UserI); in analyzeUseIn()
8256 if (UserI->mayReadFromMemory()) in analyzeUseIn()
8258 if (UserI->mayWriteToMemory()) in analyzeUseIn()