Lines Matching refs:MA
116 if (MemoryAccess *MA = MSSA->getMemoryAccess(BB)) in emitBasicBlockStartAnnot() local
117 OS << "; " << *MA << "\n"; in emitBasicBlockStartAnnot()
122 if (MemoryAccess *MA = MSSA->getMemoryAccess(I)) in emitInstructionAnnot() local
123 OS << "; " << *MA << "\n"; in emitInstructionAnnot()
414 for (const auto *MA : def_chain(MAP.first)) { in checkClobberSanity() local
415 if (MA == ClobberAt) { in checkClobberSanity()
416 if (const auto *MD = dyn_cast<MemoryDef>(MA)) { in checkClobberSanity()
436 assert(!MSSA.isLiveOnEntryDef(MA) && "Hit liveOnEntry before clobber?"); in checkClobberSanity()
438 if (const auto *MD = dyn_cast<MemoryDef>(MA)) { in checkClobberSanity()
449 if (const auto *MU = dyn_cast<MemoryUse>(MA)) { in checkClobberSanity()
456 assert(isa<MemoryPhi>(MA)); in checkClobberSanity()
460 {const_cast<MemoryAccess *>(MA), MAP.second}, in checkClobberSanity()
886 for (auto *MA : def_chain(const_cast<MemoryAccess *>(Target))) in tryOptimizePhi() local
887 DefChainEnd = MA; in tryOptimizePhi()
1036 MemoryAccess *getClobberingMemoryAccess(MemoryAccess *MA, unsigned &UWL) { in getClobberingMemoryAccess() argument
1037 return Walker->getClobberingMemoryAccessBase(MA, UWL, false); in getClobberingMemoryAccess()
1039 MemoryAccess *getClobberingMemoryAccess(MemoryAccess *MA, in getClobberingMemoryAccess() argument
1042 return Walker->getClobberingMemoryAccessBase(MA, Loc, UWL); in getClobberingMemoryAccess()
1045 MemoryAccess *getClobberingMemoryAccess(MemoryAccess *MA) override { in getClobberingMemoryAccess() argument
1047 return getClobberingMemoryAccess(MA, UpwardWalkLimit); in getClobberingMemoryAccess()
1049 MemoryAccess *getClobberingMemoryAccess(MemoryAccess *MA, in getClobberingMemoryAccess() argument
1052 return getClobberingMemoryAccess(MA, Loc, UpwardWalkLimit); in getClobberingMemoryAccess()
1055 void invalidateInfo(MemoryAccess *MA) override { in invalidateInfo() argument
1056 if (auto *MUD = dyn_cast<MemoryUseOrDef>(MA)) in invalidateInfo()
1072 MemoryAccess *getClobberingMemoryAccess(MemoryAccess *MA, unsigned &UWL) { in getClobberingMemoryAccess() argument
1073 return Walker->getClobberingMemoryAccessBase(MA, UWL, true); in getClobberingMemoryAccess()
1075 MemoryAccess *getClobberingMemoryAccess(MemoryAccess *MA, in getClobberingMemoryAccess() argument
1078 return Walker->getClobberingMemoryAccessBase(MA, Loc, UWL); in getClobberingMemoryAccess()
1081 MemoryAccess *getClobberingMemoryAccess(MemoryAccess *MA) override { in getClobberingMemoryAccess() argument
1083 return getClobberingMemoryAccess(MA, UpwardWalkLimit); in getClobberingMemoryAccess()
1085 MemoryAccess *getClobberingMemoryAccess(MemoryAccess *MA, in getClobberingMemoryAccess() argument
1088 return getClobberingMemoryAccess(MA, Loc, UpwardWalkLimit); in getClobberingMemoryAccess()
1091 void invalidateInfo(MemoryAccess *MA) override { in invalidateInfo() argument
1092 if (auto *MUD = dyn_cast<MemoryUseOrDef>(MA)) in invalidateInfo()
1258 for (MemoryAccess &MA : *Pair.second) in ~MemorySSA()
1259 MA.dropAllReferences(); in ~MemorySSA()
1362 for (MemoryAccess &MA : *Accesses) { in optimizeUsesInBlock()
1363 auto *MU = dyn_cast<MemoryUse>(&MA); in optimizeUsesInBlock()
1365 VersionStack.push_back(&MA); in optimizeUsesInBlock()
1611 *Accesses, [](const MemoryAccess &MA) { return isa<MemoryPhi>(MA); }); in insertIntoListsForBlock() argument
1616 *Defs, [](const MemoryAccess &MA) { return isa<MemoryPhi>(MA); }); in insertIntoListsForBlock() argument
1804 void MemorySSA::removeFromLookups(MemoryAccess *MA) { in removeFromLookups() argument
1805 assert(MA->use_empty() && in removeFromLookups()
1807 BlockNumbering.erase(MA); in removeFromLookups()
1808 if (auto *MUD = dyn_cast<MemoryUseOrDef>(MA)) in removeFromLookups()
1811 if (!isa<MemoryUse>(MA)) in removeFromLookups()
1812 getWalker()->invalidateInfo(MA); in removeFromLookups()
1815 if (const auto *MUD = dyn_cast<MemoryUseOrDef>(MA)) in removeFromLookups()
1818 MemoryInst = MA->getBlock(); in removeFromLookups()
1821 if (VMA->second == MA) in removeFromLookups()
1831 void MemorySSA::removeFromLists(MemoryAccess *MA, bool ShouldDelete) { in removeFromLists() argument
1832 BasicBlock *BB = MA->getBlock(); in removeFromLists()
1835 if (!isa<MemoryUse>(MA)) { in removeFromLists()
1838 Defs->remove(*MA); in removeFromLists()
1848 Accesses->erase(MA); in removeFromLists()
1850 Accesses->remove(MA); in removeFromLists()
1938 for (const MemoryAccess &MA : *Accesses) { in verifyDominationNumbers()
1939 auto ThisNumberIter = BlockNumbering.find(&MA); in verifyDominationNumbers()
1993 MemoryUseOrDef *MA = getMemoryAccess(&I); in verifyOrderingDominationAndDefUses() local
1994 assert((!MA || (AL && (isa<MemoryUse>(MA) || DL))) && in verifyOrderingDominationAndDefUses()
1998 if (MA) { in verifyOrderingDominationAndDefUses()
2000 ActualAccesses.push_back(MA); in verifyOrderingDominationAndDefUses()
2001 if (MemoryAccess *MD = dyn_cast<MemoryDef>(MA)) { in verifyOrderingDominationAndDefUses()
2003 ActualDefs.push_back(MA); in verifyOrderingDominationAndDefUses()
2011 verifyUseInDefs(MA->getDefiningAccess(), MA); in verifyOrderingDominationAndDefUses()
2180 MemoryAccess *MA = cast<MemoryAccess>(Op); in print() local
2188 if (unsigned ID = MA->getID()) in print()
2444 MemoryAccess *MA, unsigned &UpwardWalkLimit, bool SkipSelf) { in getClobberingMemoryAccessBase() argument
2445 auto *StartingAccess = dyn_cast<MemoryUseOrDef>(MA); in getClobberingMemoryAccessBase()
2448 return MA; in getClobberingMemoryAccessBase()
2521 DoNothingMemorySSAWalker::getClobberingMemoryAccess(MemoryAccess *MA) { in getClobberingMemoryAccess() argument
2522 if (auto *Use = dyn_cast<MemoryUseOrDef>(MA)) in getClobberingMemoryAccess()
2524 return MA; in getClobberingMemoryAccess()