Home
last modified time | relevance | path

Searched refs:MemoryUseOrDef (Results 1 – 13 of 13) sorted by relevance

/llvm-project-15.0.7/llvm/include/llvm/Analysis/
H A DMemorySSAUpdater.h128 void moveBefore(MemoryUseOrDef *What, MemoryUseOrDef *Where);
129 void moveAfter(MemoryUseOrDef *What, MemoryUseOrDef *Where);
130 void moveToPlace(MemoryUseOrDef *What, BasicBlock *BB,
204 MemoryUseOrDef *createMemoryAccessBefore(Instruction *I,
206 MemoryUseOrDef *InsertPt);
207 MemoryUseOrDef *createMemoryAccessAfter(Instruction *I,
247 void moveTo(MemoryUseOrDef *What, BasicBlock *BB, WhereType Where);
H A DMemorySSA.h213 friend class MemoryUseOrDef; variable
252 class MemoryUseOrDef : public MemoryAccess {
299 ~MemoryUseOrDef() = default;
326 class MemoryUse final : public MemoryUseOrDef {
386 class MemoryDef final : public MemoryUseOrDef {
440 struct OperandTraits<MemoryUseOrDef> {
441 static Use *op_begin(MemoryUseOrDef *MUD) {
447 static Use *op_end(MemoryUseOrDef *MUD) {
683 inline bool MemoryUseOrDef::isOptimized() const {
702 inline void MemoryUseOrDef::resetOptimized() {
[all …]
/llvm-project-15.0.7/llvm/lib/Analysis/
H A DMemorySSAUpdater.cpp613 if (const MemoryUseOrDef *MUD = dyn_cast<MemoryUseOrDef>(&MA)) { in cloneUsesAndDefs()
704 if (MemoryUseOrDef *IncMUD = dyn_cast<MemoryUseOrDef>(IncomingAccess)) { in updateForClonedLoop()
1154 cast<MemoryUseOrDef>(Usr)->resetOptimized(); in applyInsertUpdates()
1191 void MemorySSAUpdater::moveBefore(MemoryUseOrDef *What, MemoryUseOrDef *Where) { in moveBefore()
1196 void MemorySSAUpdater::moveAfter(MemoryUseOrDef *What, MemoryUseOrDef *Where) { in moveAfter()
1225 auto *MUD = cast<MemoryUseOrDef>(FirstInNew); in moveAllAccesses()
1228 MemoryUseOrDef *NextMUD = (!Accs || NextIt == Accs->end()) in moveAllAccesses()
1321 NewDefTarget = cast<MemoryUseOrDef>(MA)->getDefiningAccess(); in removeMemoryAccess()
1344 if (auto *MUD = dyn_cast<MemoryUseOrDef>(U.getUser())) in removeMemoryAccess()
1437 MemoryUseOrDef *MemorySSAUpdater::createMemoryAccessBefore( in createMemoryAccessBefore()
[all …]
H A DMemorySSA.cpp169 MemoryLocOrCall(MemoryUseOrDef *MUD) in MemoryLocOrCall()
171 MemoryLocOrCall(const MemoryUseOrDef *MUD) in MemoryLocOrCall()
1092 if (auto *MUD = dyn_cast<MemoryUseOrDef>(MA)) in invalidateInfo()
1128 if (auto *MUD = dyn_cast<MemoryUseOrDef>(MA)) in invalidateInfo()
1169 if (MemoryUseOrDef *MUD = dyn_cast<MemoryUseOrDef>(&L)) { in renameBlock()
1265 if (auto *UseOrDef = dyn_cast<MemoryUseOrDef>(AI)) in markUnreachableAsLiveOnEntry()
1833 MemoryUseOrDef *MUD; in createNewAccess()
1847 if (auto *MUD = dyn_cast<MemoryUseOrDef>(MA)) in removeFromLookups()
1854 if (const auto *MUD = dyn_cast<MemoryUseOrDef>(MA)) in removeFromLookups()
2040 MemoryUseOrDef *MA = getMemoryAccess(&I); in verifyOrderingDominationAndDefUses()
[all …]
/llvm-project-15.0.7/llvm/lib/Transforms/Scalar/
H A DMemCpyOptimizer.cpp336 const MemoryUseOrDef *Start, in accessedBetween()
337 const MemoryUseOrDef *End) { in accessedBetween()
352 const MemoryUseOrDef *End) { in writtenBetween()
364 cast<MemoryUseOrDef>(&Acc)->getMemoryInst(); in writtenBetween()
401 MemoryUseOrDef *MemInsertPoint = nullptr; in tryMergingIntoMemset()
407 auto *CurrentAcc = cast_or_null<MemoryUseOrDef>( in tryMergingIntoMemset()
632 MemoryUseOrDef *MemInsertPoint = nullptr; in moveUp()
634 MemInsertPoint = cast<MemoryUseOrDef>(--MA->getIterator()); in moveUp()
766 if (auto *LoadClobber = dyn_cast<MemoryUseOrDef>( in processStore()
1428 MemoryUseOrDef *MA = MSSA->getMemoryAccess(M); in processMemCpy()
[all …]
H A DGVNHoist.cpp334 MemoryUseOrDef *U, InsKind K, int &NBBsOnAllPaths);
500 MemoryUseOrDef *NewMemAcc);
503 void raMPHIuw(MemoryUseOrDef *NewMemAcc);
755 const Instruction *OldPt, MemoryUseOrDef *U, in safeToHoistLdSt()
773 if (auto *UD = dyn_cast<MemoryUseOrDef>(D)) in safeToHoistLdSt()
820 if (MemoryUseOrDef *UD = MSSA->getMemoryAccess(Insn)) in checkSafety()
1009 MemoryUseOrDef *NewMemAcc) { in rauw()
1033 void GVNHoist::raMPHIuw(MemoryUseOrDef *NewMemAcc) { in raMPHIuw()
1051 MemoryUseOrDef *NewMemAcc = MSSA->getMemoryAccess(Repl); in removeAndReplace()
H A DLoopSink.cpp256 if (MemoryUseOrDef *OldMemAcc = cast_or_null<MemoryUseOrDef>( in sinkInstruction()
H A DDeadStoreElimination.cpp1087 Instruction *UseInst = cast<MemoryUseOrDef>(UseAccess)->getMemoryInst(); in isWriteAtEndOfFunction()
1243 if (!MSSA.isLiveOnEntryDef(Current) && isa<MemoryUseOrDef>(Current)) in getDomMemoryDef()
1244 dbgs() << " (" << *cast<MemoryUseOrDef>(Current)->getMemoryInst() in getDomMemoryDef()
1309 if (auto *UseOrDef = dyn_cast<MemoryUseOrDef>(U.getUser())) in getDomMemoryDef()
1427 Instruction *UseInst = cast<MemoryUseOrDef>(UseAccess)->getMemoryInst(); in getDomMemoryDef()
1446 if (isNoopIntrinsic(cast<MemoryUseOrDef>(UseAccess)->getMemoryInst())) { in getDomMemoryDef()
H A DNewGVN.cpp557 DenseMap<const Instruction *, MemoryUseOrDef *> TempToMemory;
870 MemoryUseOrDef *getMemoryAccess(const Instruction *) const;
891 return isa<MemoryUseOrDef>(MA) in MemoryToDFSNum()
892 ? InstrToDFSNum(cast<MemoryUseOrDef>(MA)->getMemoryInst()) in MemoryToDFSNum()
941 MemoryUseOrDef *NewGVN::getMemoryAccess(const Instruction *I) const { in getMemoryAccess()
3235 if (auto *FirstMUD = dyn_cast<MemoryUseOrDef>(KV.first)) { in verifyMemoryCongruency()
3236 auto *SecondMUD = dyn_cast<MemoryUseOrDef>(KV.second->getMemoryLeader()); in verifyMemoryCongruency()
H A DLICM.cpp1128 const auto *MUD = cast<MemoryUseOrDef>(&Acc); in isOnlyMemoryAccess()
1475 if (MemoryUseOrDef *OldMemAcc = cast_or_null<MemoryUseOrDef>( in moveInstructionBefore()
2202 if (const auto *MUD = dyn_cast<MemoryUseOrDef>(&Access)) in foreachMemoryAccess()
H A DGVN.cpp1894 const MemoryUseOrDef *FirstNonDom = nullptr; in processAssumeIntrinsic()
1904 if (auto *Current = dyn_cast<MemoryUseOrDef>(&Acc)) in processAssumeIntrinsic()
1917 const_cast<MemoryUseOrDef *>(FirstNonDom)) in processAssumeIntrinsic()
/llvm-project-15.0.7/llvm/unittests/Analysis/
H A DMemorySSATest.cpp1627 MemoryUseOrDef *Store1Access = MSSA.getMemoryAccess(StorePointer1); in TEST_F()
1628 MemoryUseOrDef *Store2Access = MSSA.getMemoryAccess(StorePointer2); in TEST_F()
1629 MemoryUseOrDef *MemSetAccess = MSSA.getMemoryAccess(MemSet); in TEST_F()
1661 MemoryUseOrDef *Load1Access = MSSA.getMemoryAccess(LoadPointer1); in TEST_F()
1662 MemoryUseOrDef *Load2Access = MSSA.getMemoryAccess(LoadPointer2); in TEST_F()
1835 if (MemoryUseOrDef *MUD = MSSA.getMemoryAccess(LI)) in TEST_F()
1860 if (MemoryUseOrDef *MUD = MSSA.getMemoryAccess(LI)) in TEST_F()
/llvm-project-15.0.7/llvm/lib/Transforms/Utils/
H A DBasicBlockUtils.cpp294 if (MemoryUseOrDef *MUD = cast_or_null<MemoryUseOrDef>( in MergeBlockIntoPredecessor()