Lines Matching defs:UseInst

1245   /// Returns true if \p UseInst completely overwrites \p DefLoc
1248 Instruction *UseInst) {
1249 // UseInst has a MemoryDef associated in MemorySSA. It's possible for a
1252 if (!UseInst->mayWriteToMemory())
1255 if (auto *CB = dyn_cast<CallBase>(UseInst))
1260 if (auto CC = getLocForWrite(UseInst))
1261 return isOverwrite(UseInst, DefInst, *CC, DefLoc, InstWriteOffset,
1294 Instruction *UseInst = cast<MemoryUseOrDef>(UseAccess)->getMemoryInst();
1295 if (isReadClobber(DefLoc, UseInst)) {
1296 LLVM_DEBUG(dbgs() << " ... hit read clobber " << *UseInst << ".\n");
1361 bool isReadClobber(const MemoryLocation &DefLoc, Instruction *UseInst) {
1362 if (isNoopIntrinsic(UseInst))
1367 if (auto SI = dyn_cast<StoreInst>(UseInst))
1370 if (!UseInst->mayReadFromMemory())
1373 if (auto *CB = dyn_cast<CallBase>(UseInst))
1377 return isRefSet(BatchAA.getModRefInfo(UseInst, DefLoc));
1634 Instruction *UseInst = cast<MemoryUseOrDef>(UseAccess)->getMemoryInst();
1635 LLVM_DEBUG(dbgs() << " (" << *UseInst << ")\n");
1637 if (any_of(KillingDefs, [this, UseInst](Instruction *KI) {
1638 return DT.dominates(KI, UseInst);
1646 if (isMemTerminator(MaybeDeadLoc, MaybeDeadI, UseInst)) {
1659 if (UseInst->mayThrow() && !isInvisibleToCallerOnUnwind(KillingUndObj)) {
1670 if (KillingI == UseInst &&
1675 if (isReadClobber(MaybeDeadLoc, UseInst) && !IsKillingDefFromInitAttr) {
1708 if (isCompleteOverwrite(MaybeDeadLoc, MaybeDeadI, UseInst)) {
1709 BasicBlock *MaybeKillingBlock = UseInst->getParent();
1714 << " ... found killing def " << *UseInst << "\n");
1715 KillingDefs.insert(UseInst);
1719 << " ... found preceeding def " << *UseInst << "\n");