Lines Matching defs:StartingAccess
2447 /// Walk the use-def chains starting at \p StartingAccess and find
2452 MemoryAccess *StartingAccess, const MemoryLocation &Loc,
2454 assert(!isa<MemoryUse>(StartingAccess) && "Use cannot be defining access");
2458 return StartingAccess;
2461 if (auto *StartingUseOrDef = dyn_cast<MemoryUseOrDef>(StartingAccess)) {
2474 Q.OriginalAccess = StartingAccess;
2483 Walker.findClobber(BAA, StartingAccess, Q, UpwardWalkLimit);
2485 dbgs() << "Clobber starting at access " << *StartingAccess << "\n";
2555 auto *StartingAccess = dyn_cast<MemoryUseOrDef>(MA);
2557 if (!StartingAccess)
2562 *StartingAccess->getMemoryInst(), MSSA->getDomTree())) {
2578 if (StartingAccess->isOptimized()) {
2579 if (!SkipSelf || !isa<MemoryDef>(StartingAccess))
2580 return StartingAccess->getOptimized();
2584 const Instruction *I = StartingAccess->getMemoryInst();
2589 return StartingAccess;
2591 UpwardsMemoryQuery Q(I, StartingAccess);
2595 StartingAccess->setOptimized(LiveOnEntry);
2602 MemoryAccess *DefiningAccess = StartingAccess->getDefiningAccess();
2607 StartingAccess->setOptimized(DefiningAccess);
2613 StartingAccess->setOptimized(OptimizedAccess);
2615 OptimizedAccess = StartingAccess->getOptimized();
2618 LLVM_DEBUG(dbgs() << *StartingAccess << "\n");
2624 isa<MemoryDef>(StartingAccess) && UpwardWalkLimit) {
2646 MemoryAccess *StartingAccess, const MemoryLocation &, BatchAAResults &) {
2647 if (auto *Use = dyn_cast<MemoryUseOrDef>(StartingAccess))
2649 return StartingAccess;