| /freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/ |
| H A D | MemorySSA.h | 116 class MemoryAccess; variable 137 using memoryaccess_def_iterator = memoryaccess_def_iterator_base<MemoryAccess>; 139 memoryaccess_def_iterator_base<const MemoryAccess>; 143 class MemoryAccess 145 public ilist_node<MemoryAccess, ilist_tag<MSSAHelpers::AllAccessTag>>, 146 public ilist_node<MemoryAccess, ilist_tag<MSSAHelpers::DefsOnlyTag>> { 149 ilist_node<MemoryAccess, ilist_tag<MSSAHelpers::AllAccessTag>>; 151 ilist_node<MemoryAccess, ilist_tag<MSSAHelpers::DefsOnlyTag>>; 153 MemoryAccess(const MemoryAccess &) = delete; 154 MemoryAccess &operator=(const MemoryAccess &) = delete; [all …]
|
| H A D | MemorySSAUpdater.h | 51 using PhiToDefMap = SmallDenseMap<MemoryPhi *, MemoryAccess *>; 191 MemoryAccess *createMemoryAccessInBB(Instruction *I, MemoryAccess *Definition, 195 MemoryAccess *createMemoryAccessInBB(Instruction *I, MemoryAccess *Definition, 204 MemoryAccess *Definition, 210 MemoryAccess *Definition, 211 MemoryAccess *InsertPt); 219 void removeMemoryAccess(MemoryAccess *, bool OptimizePhis = false); 225 if (MemoryAccess *MA = MSSA->getMemoryAccess(I)) 253 MemoryAccess *getPreviousDef(MemoryAccess *); 254 MemoryAccess *getPreviousDefInBlock(MemoryAccess *); [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Analysis/ |
| H A D | MemorySSA.cpp | 105 if (MemoryAccess *MA = MSSA->getMemoryAccess(BB)) in emitBasicBlockStartAnnot() 111 if (MemoryAccess *MA = MSSA->getMemoryAccess(I)) in emitInstructionAnnot() 129 if (MemoryAccess *MA = MSSA->getMemoryAccess(BB)) in emitBasicBlockStartAnnot() 135 if (MemoryAccess *MA = MSSA->getMemoryAccess(I)) { in emitInstructionAnnot() 136 MemoryAccess *Clobber = Walker->getClobberingMemoryAccess(MA, BAA); in emitInstructionAnnot() 356 const MemoryAccess *OriginalAccess = nullptr; 361 UpwardsMemoryQuery(const Instruction *Inst, const MemoryAccess *Access) in UpwardsMemoryQuery() 397 checkClobberSanity(const MemoryAccess *Start, MemoryAccess *ClobberAt, in checkClobberSanity() 463 {const_cast<MemoryAccess *>(MA), MAP.second}, in checkClobberSanity() 500 MemoryAccess *First; [all …]
|
| H A D | MemorySSAUpdater.cpp | 36 MemoryAccess *MemorySSAUpdater::getPreviousDefRecursive( in getPreviousDefRecursive() 38 DenseMap<BasicBlock *, TrackingVH<MemoryAccess>> &CachedPreviousDef) { in getPreviousDefRecursive() 52 MemoryAccess *Result = getPreviousDefFromEnd(Pred, CachedPreviousDef); in getPreviousDefRecursive() 61 MemoryAccess *Result = MSSA->createMemoryPhi(BB); in getPreviousDefRecursive() 68 SmallVector<TrackingVH<MemoryAccess>, 8> PhiOps; in getPreviousDefRecursive() 74 MemoryAccess *SingleAccess = nullptr; in getPreviousDefRecursive() 137 MemoryAccess *MemorySSAUpdater::getPreviousDef(MemoryAccess *MA) { in getPreviousDef() 140 DenseMap<BasicBlock *, TrackingVH<MemoryAccess>> CachedPreviousDef; in getPreviousDef() 147 MemoryAccess *MemorySSAUpdater::getPreviousDefInBlock(MemoryAccess *MA) { in getPreviousDefInBlock() 163 return cast<MemoryAccess>(&U); in getPreviousDefInBlock() [all …]
|
| /freebsd/contrib/llvm-project/compiler-rt/lib/tsan/rtl/ |
| H A D | tsan_interface.inc | 22 MemoryAccess(cur_thread(), CALLERPC, (uptr)addr, 1, kAccessRead); 26 MemoryAccess(cur_thread(), CALLERPC, (uptr)addr, 2, kAccessRead); 30 MemoryAccess(cur_thread(), CALLERPC, (uptr)addr, 4, kAccessRead); 34 MemoryAccess(cur_thread(), CALLERPC, (uptr)addr, 8, kAccessRead); 42 MemoryAccess(cur_thread(), CALLERPC, (uptr)addr, 1, kAccessWrite); 46 MemoryAccess(cur_thread(), CALLERPC, (uptr)addr, 2, kAccessWrite); 50 MemoryAccess(cur_thread(), CALLERPC, (uptr)addr, 4, kAccessWrite); 54 MemoryAccess(cur_thread(), CALLERPC, (uptr)addr, 8, kAccessWrite); 62 MemoryAccess(cur_thread(), STRIP_PAC_PC(pc), (uptr)addr, 1, kAccessRead | kAccessExternalPC); 66 MemoryAccess(cur_thread(), STRIP_PAC_PC(pc), (uptr)addr, 2, kAccessRead | kAccessExternalPC); [all …]
|
| H A D | tsan_interface.cpp | 32 MemoryAccess(thr, pc_no_pac, (uptr)addr, 8, kAccessRead); in __tsan_read16_pc() 33 MemoryAccess(thr, pc_no_pac, (uptr)addr + 8, 8, kAccessRead); in __tsan_read16_pc() 39 MemoryAccess(thr, pc_no_pac, (uptr)addr, 8, kAccessWrite); in __tsan_write16_pc() 40 MemoryAccess(thr, pc_no_pac, (uptr)addr + 8, 8, kAccessWrite); in __tsan_write16_pc()
|
| H A D | tsan_fd.cpp | 135 MemoryAccess(thr, pc, (uptr)d, 8, kAccessRead | kAccessSlotLocked); in init() 184 MemoryAccess(thr, pc, (uptr)d, 8, kAccessRead); in FdAcquire() 195 MemoryAccess(thr, pc, (uptr)d, 8, kAccessRead); in FdRelease() 207 MemoryAccess(thr, pc, (uptr)d, 8, kAccessRead); in FdAccess() 222 MemoryAccess(thr, pc, (uptr)d, 8, in FdClose() 234 MemoryAccess(thr, pc, (uptr)d, 8, in FdClose() 266 MemoryAccess(thr, pc, (uptr)od, 8, kAccessRead); in FdDup()
|
| H A D | tsan_rtl_mutex.cpp | 89 MemoryAccess(thr, pc, addr, 1, kAccessWrite); in MutexCreate() 131 MemoryAccess(thr, pc, addr, 1, in MutexDestroy() 166 MemoryAccess(thr, pc, addr, 1, kAccessRead | kAccessAtomic); in MutexPostLock() 219 MemoryAccess(thr, pc, addr, 1, kAccessRead | kAccessAtomic); in MutexUnlock() 284 MemoryAccess(thr, pc, addr, 1, kAccessRead | kAccessAtomic); in MutexPostReadLock() 327 MemoryAccess(thr, pc, addr, 1, kAccessRead | kAccessAtomic); in MutexReadUnlock() 368 MemoryAccess(thr, pc, addr, 1, kAccessRead | kAccessAtomic); in MutexReadOrWriteUnlock()
|
| H A D | tsan_interface_atomic.cpp | 229 MemoryAccess(thr, pc, (uptr)a, AccessSize<T>(), in AtomicLoad() 245 MemoryAccess(thr, pc, (uptr)a, AccessSize<T>(), kAccessRead | kAccessAtomic); in AtomicLoad() 265 MemoryAccess(thr, pc, (uptr)a, AccessSize<T>(), kAccessWrite | kAccessAtomic); in AtomicStore() 286 MemoryAccess(thr, pc, (uptr)a, AccessSize<T>(), kAccessWrite | kAccessAtomic); in AtomicRMW() 414 MemoryAccess(thr, pc, (uptr)a, AccessSize<T>(), kAccessWrite | kAccessAtomic); in AtomicCAS()
|
| H A D | tsan_external.cpp | 77 MemoryAccess(thr, tsan_caller_pc, (uptr)addr, 1, typ); in ExternalAccess()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
| H A D | NewGVN.cpp | 327 const MemoryAccess *getMemoryLeader() const { return RepMemoryAccess; } in getMemoryLeader() 328 void setMemoryLeader(const MemoryAccess *Leader) { RepMemoryAccess = Leader; } in setMemoryLeader() 407 const MemoryAccess *RepMemoryAccess = nullptr; 584 mutable DenseMap<const MemoryAccess *, SmallPtrSet<MemoryAccess *, 2>> 592 DenseMap<const MemoryAccess *, CongruenceClass *> MemoryAccessToClass; 727 const MemoryAccess *) const; 729 const MemoryAccess *) const; 731 const MemoryAccess *) const; 743 CongruenceClass *createMemoryClass(MemoryAccess *MA) { in createMemoryClass() 749 CongruenceClass *ensureLeaderOfMemoryClass(MemoryAccess *MA) { in ensureLeaderOfMemoryClass() [all …]
|
| H A D | DeadStoreElimination.cpp | 837 SmallPtrSet<MemoryAccess *, 4> SkipStores; 880 MemoryAccess *MA = MSSA.getMemoryAccess(&I); in DSEState() 905 static void pushMemUses(MemoryAccess *Acc, in pushMemUses() 906 SmallVectorImpl<MemoryAccess *> &WorkList, in pushMemUses() 907 SmallPtrSetImpl<MemoryAccess *> &Visited) { in pushMemUses() 909 auto *MA = cast<MemoryAccess>(U.getUser()); in pushMemUses() 1174 SmallVector<MemoryAccess *, 4> WorkList; in isWriteAtEndOfFunction() 1175 SmallPtrSet<MemoryAccess *, 8> Visited; in isWriteAtEndOfFunction() 1184 MemoryAccess *UseAccess = WorkList[I]; in isWriteAtEndOfFunction() 1327 std::optional<MemoryAccess *> [all …]
|
| H A D | LoopInstSimplify.cpp | 135 if (MemoryAccess *MA = MSSA->getMemoryAccess(&I)) in simplifyLoopInst() 136 if (MemoryAccess *ReplacementMA = MSSA->getMemoryAccess(SimpleI)) in simplifyLoopInst()
|
| H A D | MemCpyOptimizer.cpp | 299 for (const MemoryAccess &MA : in accessedBetween() 328 [&AA, Loc](const MemoryAccess &Acc) { in writtenBetween() 338 MemoryAccess *Clobber = MSSA->getWalker()->getClobberingMemoryAccess( in writtenBetween() 1467 MemoryAccess *Clobber = MSSA->getWalker()->getClobberingMemoryAccess( in performMemCpyToMemSetOptzn() 1769 MemoryAccess *AnyClobber = MA->getDefiningAccess(); in processMemCpy() 1771 const MemoryAccess *DestClobber = in processMemCpy() 1784 MemoryAccess *SrcClobber = MSSA->getWalker()->getClobberingMemoryAccess( in processMemCpy() 1893 MemoryAccess *Clobber = MSSA->getWalker()->getClobberingMemoryAccess( in processByValArgument() 1991 MemoryAccess *Clobber = MSSA->getWalker()->getClobberingMemoryAccess( in processImmutArgument()
|
| H A D | LICM.cpp | 494 SmallVector<MemoryAccess *, 8> MSSAInsertPts; in runOnLoop() 1146 static MemoryAccess *getClobberingMemoryAccess(MemorySSA &MSSA, in getClobberingMemoryAccess() 1154 MemoryAccess *Source = in getClobberingMemoryAccess() 1469 MemoryAccess *NewMemAcc = MSSAU.createMemoryAccessInBB( in cloneInstructionInExitBlock() 1816 SmallVectorImpl<MemoryAccess *> &MSSAInsertPts; 1850 SmallVectorImpl<MemoryAccess *> &MSSAIP, PredIteratorCache &PIC, in LoopPromoter() 1896 MemoryAccess *MSSAInsertPoint = MSSAInsertPts[i]; in insertStoresInLoopExitBlocks() 1897 MemoryAccess *NewMemAcc; in insertStoresInLoopExitBlocks() 1971 SmallVectorImpl<MemoryAccess *> &MSSAInsertPts, PredIteratorCache &PIC, in promoteLoopAccessesToScalars() 2251 MemoryAccess *PreheaderLoadMemoryAccess = MSSAU.createMemoryAccessInBB( in promoteLoopAccessesToScalars() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
| H A D | MoveAutoInit.cpp | 69 SmallPtrSet<MemoryAccess *, 8> Visited; in usersDominator() 71 auto AsMemoryAccess = [](User *U) { return cast<MemoryAccess>(U); }; in usersDominator() 72 SmallVector<MemoryAccess *> WorkList(map_range(IMA.users(), AsMemoryAccess)); in usersDominator() 75 MemoryAccess *MA = WorkList.pop_back_val(); in usersDominator()
|
| H A D | LoopUtils.cpp | 2020 SmallVector<MemoryAccess *, 4> AccessesToCheck; in hasPartialIVCondition() 2037 if (MemoryAccess *MA = MSSA.getMemoryAccess(I)) { in hasPartialIVCondition() 2059 SmallVector<MemoryAccess *, 4> AccessesToCheck) in hasPartialIVCondition() 2094 SmallPtrSet<MemoryAccess *, 4> SeenAccesses; in hasPartialIVCondition() 2096 MemoryAccess *Current = AccessesToCheck.pop_back_val(); in hasPartialIVCondition() 2120 AccessesToCheck.push_back(cast<MemoryAccess>(U.getUser())); in hasPartialIVCondition()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Scalar/ |
| H A D | GVNExpression.h | 270 const MemoryAccess *MemoryLeader; 274 const MemoryAccess *MemoryLeader) in MemoryExpression() 297 const MemoryAccess *getMemoryLeader() const { return MemoryLeader; } in getMemoryLeader() 298 void setMemoryLeader(const MemoryAccess *ML) { MemoryLeader = ML; } in setMemoryLeader() 307 const MemoryAccess *MemoryLeader) in CallExpression() 334 const MemoryAccess *MemoryLeader) in LoadExpression() 338 const MemoryAccess *MemoryLeader) in LoadExpression() 377 const MemoryAccess *MemoryLeader) in StoreExpression()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/ExecutionEngine/Orc/ |
| H A D | SimpleRemoteEPC.h | 42 Expected<std::unique_ptr<MemoryAccess>>(SimpleRemoteEPC &); 103 static Expected<std::unique_ptr<MemoryAccess>> 132 std::unique_ptr<MemoryAccess> OwnedMemAccess;
|
| H A D | ExecutorProcessControl.h | 101 class MemoryAccess { 106 virtual ~MemoryAccess(); 221 MemoryAccess &getMemoryAccess() const { in getMemoryAccess() 429 MemoryAccess *MemAccess = nullptr; 435 class InProcessMemoryAccess : public ExecutorProcessControl::MemoryAccess {
|
| H A D | EPCGenericMemoryAccess.h | 1 //===- EPCGenericMemoryAccess.h - Generic EPC MemoryAccess impl -*- C++ -*-===// 9 // Implements ExecutorProcessControl::MemoryAccess by making calls to 26 class EPCGenericMemoryAccess : public ExecutorProcessControl::MemoryAccess {
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/Utils/ |
| H A D | AMDGPUMemoryUtils.cpp | 328 SmallVector<MemoryAccess *> WorkList{Walker->getClobberingMemoryAccess(Load)}; in isClobberedInFunction() 329 SmallSet<MemoryAccess *, 8> Visited; in isClobberedInFunction() 343 MemoryAccess *MA = WorkList.pop_back_val(); in isClobberedInFunction() 365 WorkList.push_back(cast<MemoryAccess>(&Use)); in isClobberedInFunction()
|
| /freebsd/contrib/llvm-project/compiler-rt/lib/tsan/go/ |
| H A D | tsan_go.cpp | 170 MemoryAccess(thr, (uptr)pc, (uptr)addr, 1, kAccessRead); in __tsan_read() 176 MemoryAccess(thr, (uptr)pc, (uptr)addr, 1, kAccessRead); in __tsan_read_pc() 182 MemoryAccess(thr, (uptr)pc, (uptr)addr, 1, kAccessWrite); in __tsan_write() 188 MemoryAccess(thr, (uptr)pc, (uptr)addr, 1, kAccessWrite); in __tsan_write_pc()
|
| /freebsd/contrib/llvm-project/llvm/lib/ExecutionEngine/Orc/ |
| H A D | ExecutorProcessControl.cpp | 24 ExecutorProcessControl::MemoryAccess::~MemoryAccess() = default;
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Utils/ |
| H A D | LoopUtils.h | 36 class MemoryAccess; variable 220 SmallVectorImpl<BasicBlock::iterator> &, SmallVectorImpl<MemoryAccess *> &,
|