Home
last modified time | relevance | path

Searched refs:MemoryAccess (Results 1 – 25 of 36) sorted by relevance

12

/netbsd-src/external/apache2/llvm/dist/llvm/include/llvm/Analysis/
H A DMemorySSA.h115 class MemoryAccess; variable
134 using memoryaccess_def_iterator = memoryaccess_def_iterator_base<MemoryAccess>;
136 memoryaccess_def_iterator_base<const MemoryAccess>;
140 class MemoryAccess
142 public ilist_node<MemoryAccess, ilist_tag<MSSAHelpers::AllAccessTag>>,
143 public ilist_node<MemoryAccess, ilist_tag<MSSAHelpers::DefsOnlyTag>> {
146 ilist_node<MemoryAccess, ilist_tag<MSSAHelpers::AllAccessTag>>;
148 ilist_node<MemoryAccess, ilist_tag<MSSAHelpers::DefsOnlyTag>>;
150 MemoryAccess(const MemoryAccess &) = delete;
151 MemoryAccess &operator=(const MemoryAccess &) = delete;
[all …]
H A DMemorySSAUpdater.h53 using PhiToDefMap = SmallDenseMap<MemoryPhi *, MemoryAccess *>;
192 MemoryAccess *createMemoryAccessInBB(Instruction *I, MemoryAccess *Definition,
207 MemoryAccess *Definition,
210 MemoryAccess *Definition,
211 MemoryAccess *InsertPt);
219 void removeMemoryAccess(MemoryAccess *, bool OptimizePhis = false);
225 if (MemoryAccess *MA = MSSA->getMemoryAccess(I))
258 MemoryAccess *getPreviousDef(MemoryAccess *);
259 MemoryAccess *getPreviousDefInBlock(MemoryAccess *);
260 MemoryAccess *
[all …]
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Analysis/
H A DMemorySSA.cpp116 if (MemoryAccess *MA = MSSA->getMemoryAccess(BB)) in emitBasicBlockStartAnnot()
122 if (MemoryAccess *MA = MSSA->getMemoryAccess(I)) in emitInstructionAnnot()
347 const MemoryAccess *OriginalAccess = nullptr;
353 UpwardsMemoryQuery(const Instruction *Inst, const MemoryAccess *Access) in UpwardsMemoryQuery()
389 checkClobberSanity(const MemoryAccess *Start, MemoryAccess *ClobberAt, in checkClobberSanity()
460 {const_cast<MemoryAccess *>(MA), MAP.second}, in checkClobberSanity()
497 MemoryAccess *First;
498 MemoryAccess *Last;
501 DefPath(const MemoryLocation &Loc, MemoryAccess *First, MemoryAccess *Last, in DefPath()
505 DefPath(const MemoryLocation &Loc, MemoryAccess *Init, in DefPath()
[all …]
H A DMemorySSAUpdater.cpp43 MemoryAccess *MemorySSAUpdater::getPreviousDefRecursive( in getPreviousDefRecursive()
45 DenseMap<BasicBlock *, TrackingVH<MemoryAccess>> &CachedPreviousDef) { in getPreviousDefRecursive()
59 MemoryAccess *Result = getPreviousDefFromEnd(Pred, CachedPreviousDef); in getPreviousDefRecursive()
68 MemoryAccess *Result = MSSA->createMemoryPhi(BB); in getPreviousDefRecursive()
75 SmallVector<TrackingVH<MemoryAccess>, 8> PhiOps; in getPreviousDefRecursive()
81 MemoryAccess *SingleAccess = nullptr; in getPreviousDefRecursive()
144 MemoryAccess *MemorySSAUpdater::getPreviousDef(MemoryAccess *MA) { in getPreviousDef()
147 DenseMap<BasicBlock *, TrackingVH<MemoryAccess>> CachedPreviousDef; in getPreviousDef()
154 MemoryAccess *MemorySSAUpdater::getPreviousDefInBlock(MemoryAccess *MA) { in getPreviousDefInBlock()
170 return cast<MemoryAccess>(&U); in getPreviousDefInBlock()
[all …]
/netbsd-src/external/gpl3/gcc/dist/libsanitizer/tsan/
H A Dtsan_interface.inc22 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);
38 MemoryAccess(cur_thread(), CALLERPC, (uptr)addr, 1, kAccessWrite);
42 MemoryAccess(cur_thread(), CALLERPC, (uptr)addr, 2, kAccessWrite);
46 MemoryAccess(cur_thread(), CALLERPC, (uptr)addr, 4, kAccessWrite);
50 MemoryAccess(cur_thread(), CALLERPC, (uptr)addr, 8, kAccessWrite);
54 MemoryAccess(cur_thread(), STRIP_PAC_PC(pc), (uptr)addr, 1, kAccessRead | kAccessExternalPC);
58 MemoryAccess(cur_thread(), STRIP_PAC_PC(pc), (uptr)addr, 2, kAccessRead | kAccessExternalPC);
[all …]
H A Dtsan_interface.cpp32 MemoryAccess(thr, pc, (uptr)addr, 8, kAccessRead); in __tsan_read16()
33 MemoryAccess(thr, pc, (uptr)addr + 8, 8, kAccessRead); in __tsan_read16()
39 MemoryAccess(thr, pc, (uptr)addr, 8, kAccessWrite); in __tsan_write16()
40 MemoryAccess(thr, pc, (uptr)addr + 8, 8, kAccessWrite); in __tsan_write16()
46 MemoryAccess(thr, pc_no_pac, (uptr)addr, 8, kAccessRead); in __tsan_read16_pc()
47 MemoryAccess(thr, pc_no_pac, (uptr)addr + 8, 8, kAccessRead); in __tsan_read16_pc()
53 MemoryAccess(thr, pc_no_pac, (uptr)addr, 8, kAccessWrite); in __tsan_write16_pc()
54 MemoryAccess(thr, pc_no_pac, (uptr)addr + 8, 8, kAccessWrite); in __tsan_write16_pc()
H A Dtsan_fd.cpp118 MemoryAccess(thr, pc, (uptr)d, 8, kAccessRead); in init()
166 MemoryAccess(thr, pc, (uptr)d, 8, kAccessRead); in FdAcquire()
177 MemoryAccess(thr, pc, (uptr)d, 8, kAccessRead); in FdRelease()
187 MemoryAccess(thr, pc, (uptr)d, 8, kAccessRead); in FdAccess()
197 MemoryAccess(thr, pc, (uptr)d, 8, kAccessWrite); in FdClose()
207 MemoryAccess(thr, pc, (uptr)d, 8, kAccessRead); in FdClose()
231 MemoryAccess(thr, pc, (uptr)od, 8, kAccessRead); in FdDup()
H A Dtsan_rtl_mutex.cpp71 MemoryAccess(thr, pc, addr, 1, kAccessWrite); in MutexCreate()
136 MemoryAccess(thr, pc, addr, 1, kAccessWrite | kAccessFree); in MutexDestroy()
165 MemoryAccess(thr, pc, addr, 1, kAccessRead | kAccessAtomic); in MutexPostLock()
215 MemoryAccess(thr, pc, addr, 1, kAccessRead | kAccessAtomic); in MutexUnlock()
273 MemoryAccess(thr, pc, addr, 1, kAccessRead | kAccessAtomic); in MutexPostReadLock()
313 MemoryAccess(thr, pc, addr, 1, kAccessRead | kAccessAtomic); in MutexReadUnlock()
346 MemoryAccess(thr, pc, addr, 1, kAccessRead | kAccessAtomic); in MutexReadOrWriteUnlock()
H A Dtsan_interface_atomic.cpp229 MemoryAccess(thr, pc, (uptr)a, AccessSize<T>(), in AtomicLoad()
244 MemoryAccess(thr, pc, (uptr)a, AccessSize<T>(), kAccessRead | kAccessAtomic); in AtomicLoad()
264 MemoryAccess(thr, pc, (uptr)a, AccessSize<T>(), kAccessWrite | kAccessAtomic); in AtomicStore()
285 MemoryAccess(thr, pc, (uptr)a, AccessSize<T>(), kAccessWrite | kAccessAtomic); in AtomicRMW()
410 MemoryAccess(thr, pc, (uptr)a, AccessSize<T>(), kAccessWrite | kAccessAtomic); in AtomicCAS()
H A Dtsan_external.cpp70 MemoryAccess(thr, CALLERPC, (uptr)addr, 1, typ); in ExternalAccess()
/netbsd-src/external/apache2/llvm/dist/llvm/docs/
H A DMemorySSA.rst41 structure that maps ``Instruction``\ s to ``MemoryAccess``\ es, which are
44 Each ``MemoryAccess`` can be one of three types:
73 ``BasicBlock``, the block's top ``MemoryAccess`` will be a
88 It dominates every ``MemoryAccess`` in the function that ``MemorySSA`` is being
97 The operands of a given ``MemoryAccess`` are all (potential) clobbers of said
98 ``MemoryAccess``, and the value produced by a ``MemoryAccess`` can act as a clobber
99 for other ``MemoryAccess``\ es.
101 If a ``MemoryAccess`` is a *clobber* of another, it means that these two
102 ``MemoryAccess``\ es may access the same memory. For example, ``x = MemoryDef(y)``
114 In that view, operands of a given ``MemoryAccess`` are the version
[all …]
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Transforms/Scalar/
H A DNewGVN.cpp331 const MemoryAccess *getMemoryLeader() const { return RepMemoryAccess; } in getMemoryLeader()
332 void setMemoryLeader(const MemoryAccess *Leader) { RepMemoryAccess = Leader; } in setMemoryLeader()
411 const MemoryAccess *RepMemoryAccess = nullptr;
584 mutable DenseMap<const MemoryAccess *, SmallPtrSet<MemoryAccess *, 2>>
592 DenseMap<const MemoryAccess *, CongruenceClass *> MemoryAccessToClass;
726 const MemoryAccess *) const;
728 const MemoryAccess *) const;
730 const MemoryAccess *) const;
742 CongruenceClass *createMemoryClass(MemoryAccess *MA) { in createMemoryClass()
748 CongruenceClass *ensureLeaderOfMemoryClass(MemoryAccess *MA) { in ensureLeaderOfMemoryClass()
[all …]
H A DDeadStoreElimination.cpp860 SmallPtrSet<MemoryAccess *, 4> SkipStores;
893 MemoryAccess *MA = MSSA.getMemoryAccess(&I); in get()
1138 SmallVector<MemoryAccess *, 4> WorkList; in isWriteAtEndOfFunction()
1139 SmallPtrSet<MemoryAccess *, 8> Visited; in isWriteAtEndOfFunction()
1140 auto PushMemUses = [&WorkList, &Visited](MemoryAccess *Acc) { in isWriteAtEndOfFunction()
1144 WorkList.push_back(cast<MemoryAccess>(U.getUser())); in isWriteAtEndOfFunction()
1153 MemoryAccess *UseAccess = WorkList[I]; in isWriteAtEndOfFunction()
1289 Optional<MemoryAccess *>
1290 getDomMemoryDef(MemoryDef *KillingDef, MemoryAccess *StartAccess, in getDomMemoryDef()
1299 MemoryAccess *Current = StartAccess; in getDomMemoryDef()
[all …]
H A DLoopInstSimplify.cpp139 if (MemoryAccess *MA = MSSA->getMemoryAccess(&I)) in simplifyLoopInst()
140 if (MemoryAccess *ReplacementMA = MSSA->getMemoryAccess(SimpleI)) in simplifyLoopInst()
H A DMemCpyOptimizer.cpp345 for (const MemoryAccess &MA : in accessedBetween()
360 MemoryAccess *Clobber = MSSA->getWalker()->getClobberingMemoryAccess( in writtenBetween()
1333 MemoryAccess *Clobber = MSSA->getWalker()->getClobberingMemoryAccess( in performMemCpyToMemSetOptzn()
1405 MemoryAccess *AnyClobber = MSSA->getWalker()->getClobberingMemoryAccess(MA); in processMemCpy()
1407 const MemoryAccess *DestClobber = in processMemCpy()
1420 MemoryAccess *SrcClobber = MSSA->getWalker()->getClobberingMemoryAccess( in processMemCpy()
1584 MemoryAccess *Clobber = MSSA->getWalker()->getClobberingMemoryAccess( in processByValArgument()
H A DLICM.cpp439 SmallVector<MemoryAccess *, 8> MSSAInsertPts; in runOnLoop()
1488 MemoryAccess *NewMemAcc = MSSAU->createMemoryAccessInBB( in cloneInstructionInExitBlock()
1844 SmallVectorImpl<MemoryAccess *> &MSSAInsertPts;
1877 SmallVectorImpl<MemoryAccess *> &MSSAIP, PredIteratorCache &PIC, in LoopPromoter()
1917 MemoryAccess *MSSAInsertPoint = MSSAInsertPts[i]; in doExtraRewritesBeforeFinalDeletion()
1918 MemoryAccess *NewMemAcc; in doExtraRewritesBeforeFinalDeletion()
1992 SmallVectorImpl<MemoryAccess *> &MSSAInsertPts, PredIteratorCache &PIC, in promoteLoopAccessesToScalars()
2245 MemoryAccess *PreheaderLoadMemoryAccess = MSSAU->createMemoryAccessInBB( in promoteLoopAccessesToScalars()
2399 MemoryAccess *Source; in pointerInvalidatedByLoopWithMSSA()
/netbsd-src/external/apache2/llvm/dist/llvm/include/llvm/ExecutionEngine/Orc/
H A DTargetProcessControl.h35 class MemoryAccess {
40 virtual ~MemoryAccess();
116 MemoryAccess &getMemoryAccess() const { return *MemAccess; } in getMemoryAccess()
161 MemoryAccess *MemAccess = nullptr;
167 private TargetProcessControl::MemoryAccess {
/netbsd-src/external/apache2/llvm/dist/llvm/include/llvm/Transforms/Scalar/
H A DGVNExpression.h270 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()
/netbsd-src/external/apache2/llvm/dist/llvm/examples/OrcV2Examples/LLJITWithRemoteDebugging/
H A DRemoteJITUtils.cpp44 using MemoryAccess = OrcRPCTPCMemoryAccess<ThisT>; typedef in llvm::orc::RemoteTargetProcessControl
60 std::unique_ptr<MemoryAccess> OwnedMemAccess;
84 OwnedMemAccess = std::make_unique<MemoryAccess>(*this); in initializeMemoryManagement()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/ExecutionEngine/Orc/
H A DTargetProcessControl.cpp21 TargetProcessControl::MemoryAccess::~MemoryAccess() {} in ~MemoryAccess()
/netbsd-src/external/gpl3/gcc.old/dist/libsanitizer/tsan/
H A Dtsan_rtl.h714 void MemoryAccess(ThreadState *thr, uptr pc, uptr addr,
733 MemoryAccess(thr, pc, addr, kAccessSizeLog, false, false); in MemoryRead()
738 MemoryAccess(thr, pc, addr, kAccessSizeLog, true, false); in MemoryWrite()
743 MemoryAccess(thr, pc, addr, kAccessSizeLog, false, true); in MemoryReadAtomic()
748 MemoryAccess(thr, pc, addr, kAccessSizeLog, true, true); in MemoryWriteAtomic()
/netbsd-src/sys/external/bsd/compiler_rt/dist/lib/tsan/rtl/
H A Dtsan_rtl.h718 void MemoryAccess(ThreadState *thr, uptr pc, uptr addr,
737 MemoryAccess(thr, pc, addr, kAccessSizeLog, false, false); in MemoryRead()
742 MemoryAccess(thr, pc, addr, kAccessSizeLog, true, false); in MemoryWrite()
747 MemoryAccess(thr, pc, addr, kAccessSizeLog, false, true); in MemoryReadAtomic()
752 MemoryAccess(thr, pc, addr, kAccessSizeLog, true, true); in MemoryWriteAtomic()
/netbsd-src/external/apache2/llvm/dist/llvm/include/llvm/Transforms/Utils/
H A DLoopUtils.h34 class MemoryAccess; variable
200 SmallVectorImpl<Instruction *> &, SmallVectorImpl<MemoryAccess *> &,
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/AMDGPU/
H A DAMDGPUAnnotateUniformValues.cpp74 const MemoryAccess *MA = MSSA->getWalker()->getClobberingMemoryAccess(Load); in isClobberedInFunction()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Transforms/Utils/
H A DLoopUtils.cpp1740 SmallVector<MemoryAccess *, 4> AccessesToCheck; in hasPartialIVCondition()
1757 if (MemoryAccess *MA = MSSA.getMemoryAccess(I)) { in hasPartialIVCondition()
1779 SmallVector<MemoryAccess *, 4> AccessesToCheck) in hasPartialIVCondition()
1814 SmallPtrSet<MemoryAccess *, 4> SeenAccesses; in hasPartialIVCondition()
1816 MemoryAccess *Current = AccessesToCheck.pop_back_val(); in hasPartialIVCondition()
1840 AccessesToCheck.push_back(cast<MemoryAccess>(U.getUser())); in hasPartialIVCondition()

12