/freebsd/contrib/llvm-project/llvm/lib/Analysis/ |
H A D | MemoryLocation.cpp | 36 MemoryLocation MemoryLocation::get(const LoadInst *LI) { in get() 39 return MemoryLocation( in get() 45 MemoryLocation MemoryLocation::get(const StoreInst *SI) { in get() 48 return MemoryLocation(SI->getPointerOperand(), in get() 54 MemoryLocation MemoryLocation::get(const VAArgInst *VI) { in get() 55 return MemoryLocation(VI->getPointerOperand(), in get() 59 MemoryLocation MemoryLocation::get(const AtomicCmpXchgInst *CXI) { in get() 62 return MemoryLocation(CXI->getPointerOperand(), in get() 68 MemoryLocation MemoryLocation::get(const AtomicRMWInst *RMWI) { in get() 71 return MemoryLocation(RMWI->getPointerOperand(), in get() [all …]
|
H A D | AliasAnalysis.cpp | 107 AliasResult AAResults::alias(const MemoryLocation &LocA, in alias() 108 const MemoryLocation &LocB) { in alias() 113 AliasResult AAResults::alias(const MemoryLocation &LocA, in alias() 114 const MemoryLocation &LocB, AAQueryInfo &AAQI, in alias() 151 ModRefInfo AAResults::getModRefInfoMask(const MemoryLocation &Loc, in getModRefInfoMask() 157 ModRefInfo AAResults::getModRefInfoMask(const MemoryLocation &Loc, in getModRefInfoMask() 206 const MemoryLocation DefLoc = MemoryLocation::get(I); in getModRefInfo() 214 const MemoryLocation &Loc, in getModRefInfo() 248 MemoryLocation ArgLoc = MemoryLocation::getForArgument(Call, ArgIdx, TLI); in getModRefInfo() 315 MemoryLocation::getForArgument(Call2, Call2ArgIdx, TLI); in getModRefInfo() [all …]
|
H A D | ObjCARCAliasAnalysis.cpp | 42 AliasResult ObjCARCAAResult::alias(const MemoryLocation &LocA, in alias() 43 const MemoryLocation &LocB, in alias() 53 MemoryLocation(SA, LocA.Size, LocA.AATags), in alias() 54 MemoryLocation(SB, LocB.Size, LocB.AATags), AAQI, nullptr); in alias() 63 Result = AAResultBase::alias(MemoryLocation::getBeforeOrAfter(UA), in alias() 64 MemoryLocation::getBeforeOrAfter(UB), AAQI, in alias() 77 ModRefInfo ObjCARCAAResult::getModRefInfoMask(const MemoryLocation &Loc, in getModRefInfoMask() 87 MemoryLocation(S, Loc.Size, Loc.AATags), AAQI, IgnoreLocals))) in getModRefInfoMask() 94 return AAResultBase::getModRefInfoMask(MemoryLocation::getBeforeOrAfter(U), in getModRefInfoMask() 117 const MemoryLocation &Loc, in getModRefInfo()
|
H A D | AliasSetTracker.cpp | 56 if (!any_of(MemoryLocs, [&](const MemoryLocation &MemLoc) { in mergeSetIn() 57 return any_of(AS.MemoryLocs, [&](const MemoryLocation &ASMemLoc) { in mergeSetIn() 112 const MemoryLocation &MemLoc, in addMemoryLocation() 117 if (!any_of(MemoryLocs, [&](const MemoryLocation &ASMemLoc) { in addMemoryLocation() 154 AliasResult AliasSet::aliasesMemoryLocation(const MemoryLocation &MemLoc, in aliasesMemoryLocation() 205 for (const MemoryLocation &MemLoc : MemoryLocs) in getPointers() 222 const MemoryLocation &MemLoc, AliasSet *PtrAS, bool &MustAliasAll) { in mergeAliasSetsForMemoryLocation() 272 AliasSet &AliasSetTracker::getAliasSetFor(const MemoryLocation &MemLoc) { in getAliasSetFor() 317 void AliasSetTracker::add(const MemoryLocation &Loc) { in add() 324 addMemoryLocation(MemoryLocation::get(LI), AliasSet::RefAccess); in add() [all …]
|
H A D | Lint.cpp | 99 void visitMemoryReference(Instruction &I, const MemoryLocation &Loc, 193 visitMemoryReference(I, MemoryLocation::getAfter(Callee), std::nullopt, in visitCallBase() 259 MemoryLocation Loc( in visitCallBase() 296 visitMemoryReference(I, MemoryLocation::getForDest(MCI), in visitCallBase() 298 visitMemoryReference(I, MemoryLocation::getForSource(MCI), in visitCallBase() 317 visitMemoryReference(I, MemoryLocation::getForDest(MMI), in visitCallBase() 319 visitMemoryReference(I, MemoryLocation::getForSource(MMI), in visitCallBase() 325 visitMemoryReference(I, MemoryLocation::getForDest(MSI), in visitCallBase() 331 visitMemoryReference(I, MemoryLocation::getForDest(MSII), in visitCallBase() 338 visitMemoryReference(I, MemoryLocation::getForArgument(&I, 0, TLI), in visitCallBase() [all …]
|
H A D | MemoryDependenceAnalysis.cpp | 108 static ModRefInfo GetLocation(const Instruction *Inst, MemoryLocation &Loc, in GetLocation() 112 Loc = MemoryLocation::get(LI); in GetLocation() 116 Loc = MemoryLocation::get(LI); in GetLocation() 119 Loc = MemoryLocation(); in GetLocation() 125 Loc = MemoryLocation::get(SI); in GetLocation() 129 Loc = MemoryLocation::get(SI); in GetLocation() 132 Loc = MemoryLocation(); in GetLocation() 137 Loc = MemoryLocation::get(V); in GetLocation() 144 Loc = MemoryLocation::getAfter(FreedOp); in GetLocation() 154 Loc = MemoryLocation::getForArgument(II, 1, TLI); in GetLocation() [all …]
|
H A D | ScalarEvolutionAliasAnalysis.cpp | 36 AliasResult SCEVAAResult::alias(const MemoryLocation &LocA, in alias() 37 const MemoryLocation &LocB, AAQueryInfo &AAQI, in alias() 59 : MemoryLocation::UnknownSize); in alias() 62 : MemoryLocation::UnknownSize); in alias() 110 if (alias(MemoryLocation(AO ? AO : LocA.Ptr, in alias() 114 MemoryLocation(BO ? BO : LocB.Ptr, in alias()
|
H A D | BasicAliasAnalysis.cpp | 748 ModRefInfo BasicAAResult::getModRefInfoMask(const MemoryLocation &Loc, in getModRefInfoMask() 895 AliasResult BasicAAResult::alias(const MemoryLocation &LocA, in alias() 896 const MemoryLocation &LocB, AAQueryInfo &AAQI, in alias() 910 const MemoryLocation &Loc, in getModRefInfo() 960 AAQI.AAR.alias(MemoryLocation::getBeforeOrAfter(*CI), in getModRefInfo() 961 MemoryLocation::getBeforeOrAfter(Object), AAQI); in getModRefInfo() 997 if (AAQI.AAR.alias(MemoryLocation::getBeforeOrAfter(Call), Loc, AAQI) == in getModRefInfo() 1092 AAQI.AAR.alias(MemoryLocation::getBeforeOrAfter(UnderlyingV1), in aliasGEP() 1093 MemoryLocation::getBeforeOrAfter(UnderlyingV2), AAQI); in aliasGEP() 1132 return AAQI.AAR.alias(MemoryLocation(DecompGEP1.Base, V1Size), in aliasGEP() [all …]
|
/freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/ |
H A D | MemoryLocation.h | 228 class MemoryLocation { 255 static MemoryLocation get(const LoadInst *LI); 256 static MemoryLocation get(const StoreInst *SI); 257 static MemoryLocation get(const VAArgInst *VI); 258 static MemoryLocation get(const AtomicCmpXchgInst *CXI); 259 static MemoryLocation get(const AtomicRMWInst *RMWI); 260 static MemoryLocation get(const Instruction *Inst) { in get() 261 return *MemoryLocation::getOrNone(Inst); in get() 263 static std::optional<MemoryLocation> getOrNone(const Instruction *Inst); 266 static MemoryLocation getForSource(const MemTransferInst *MTI); [all …]
|
H A D | AliasAnalysis.h | 357 AliasResult alias(const MemoryLocation &LocA, const MemoryLocation &LocB); 362 return alias(MemoryLocation(V1, V1Size), MemoryLocation(V2, V2Size)); 367 return alias(MemoryLocation::getBeforeOrAfter(V1), 368 MemoryLocation::getBeforeOrAfter(V2)); 373 bool isNoAlias(const MemoryLocation &LocA, const MemoryLocation &LocB) { 380 return isNoAlias(MemoryLocation(V1, V1Size), MemoryLocation(V2, V2Size)); 385 return isNoAlias(MemoryLocation::getBeforeOrAfter(V1), 386 MemoryLocation::getBeforeOrAfter(V2)); 391 bool isMustAlias(const MemoryLocation &LocA, const MemoryLocation &LocB) { 403 bool pointsToConstantMemory(const MemoryLocation &Loc, bool OrLocal = false) { [all …]
|
H A D | AliasSetTracker.h | 54 SmallVector<MemoryLocation, 0> MemoryLocs; 119 using iterator = SmallVectorImpl<MemoryLocation>::const_iterator; 141 void addMemoryLocation(AliasSetTracker &AST, const MemoryLocation &MemLoc, 148 AliasResult aliasesMemoryLocation(const MemoryLocation &MemLoc, 185 void add(const MemoryLocation &Loc); 205 AliasSet &getAliasSetFor(const MemoryLocation &MemLoc); 251 AliasSet &addMemoryLocation(MemoryLocation Loc, AliasSet::AccessLattice E); 252 AliasSet *mergeAliasSetsForMemoryLocation(const MemoryLocation &MemLoc,
|
H A D | TypeBasedAliasAnalysis.h | 28 class MemoryLocation; variable 41 AliasResult alias(const MemoryLocation &LocA, const MemoryLocation &LocB, 43 ModRefInfo getModRefInfoMask(const MemoryLocation &Loc, AAQueryInfo &AAQI, 48 ModRefInfo getModRefInfo(const CallBase *Call, const MemoryLocation &Loc,
|
H A D | ObjCARCAliasAnalysis.h | 53 AliasResult alias(const MemoryLocation &LocA, const MemoryLocation &LocB, 55 ModRefInfo getModRefInfoMask(const MemoryLocation &Loc, AAQueryInfo &AAQI, 62 ModRefInfo getModRefInfo(const CallBase *Call, const MemoryLocation &Loc,
|
H A D | ScopedNoAliasAA.h | 26 class MemoryLocation; variable 39 AliasResult alias(const MemoryLocation &LocA, const MemoryLocation &LocB, 41 ModRefInfo getModRefInfo(const CallBase *Call, const MemoryLocation &Loc,
|
H A D | BasicAliasAnalysis.h | 71 AliasResult alias(const MemoryLocation &LocA, const MemoryLocation &LocB, 74 ModRefInfo getModRefInfo(const CallBase *Call, const MemoryLocation &Loc, 87 ModRefInfo getModRefInfoMask(const MemoryLocation &Loc, AAQueryInfo &AAQI,
|
H A D | MemoryDependenceAnalysis.h | 22 #include "llvm/Analysis/MemoryLocation.h" 449 MemDepResult getPointerDependencyFrom(const MemoryLocation &Loc, bool isLoad, 455 MemDepResult getPointerDependencyFrom(const MemoryLocation &Loc, bool isLoad, 463 getSimplePointerDependencyFrom(const MemoryLocation &MemLoc, bool isLoad, 493 const MemoryLocation &Loc, bool isLoad, 500 const MemoryLocation &Loc, bool isLoad,
|
/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
H A D | AMDGPUAliasAnalysis.cpp | 49 AliasResult AMDGPUAAResult::alias(const MemoryLocation &LocA, in alias() 50 const MemoryLocation &LocB, AAQueryInfo &AAQI, in alias() 62 MemoryLocation A = LocA; in alias() 63 MemoryLocation B = LocB; in alias() 99 ModRefInfo AMDGPUAAResult::getModRefInfoMask(const MemoryLocation &Loc,
|
H A D | AMDGPUAliasAnalysis.h | 21 class MemoryLocation; variable 40 AliasResult alias(const MemoryLocation &LocA, const MemoryLocation &LocB, 42 ModRefInfo getModRefInfoMask(const MemoryLocation &Loc, AAQueryInfo &AAQI,
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
H A D | MemCpyOptimizer.cpp | 294 static bool accessedBetween(BatchAAResults &AA, MemoryLocation Loc, in accessedBetween() 319 MemoryLocation Loc, const MemoryUseOrDef *Start, in writtenBetween() 513 MemoryLocation StoreLoc = MemoryLocation::get(SI); in moveUp() 537 SmallVector<MemoryLocation, 8> MemLocs{StoreLoc}; in moveUp() 542 const MemoryLocation LoadLoc = MemoryLocation::get(LI); in moveUp() 558 NeedLift = llvm::any_of(MemLocs, [C, this](const MemoryLocation &ML) { in moveUp() 584 auto ML = MemoryLocation::get(C); in moveUp() 649 MemoryLocation LoadLoc = MemoryLocation::get(LI); in processStoreOfLoad() 910 MemoryLocation DestLoc = in performCallSlotOptzn() 912 ? MemoryLocation::get(cpyStore) in performCallSlotOptzn() [all …]
|
H A D | MergedLoadStoreMotion.cpp | 117 const Instruction &End, MemoryLocation Loc); 170 MemoryLocation Loc) { in isStoreSinkBarrierInRange() 192 MemoryLocation Loc0 = MemoryLocation::get(Store0); in canSinkFromBlock() 193 MemoryLocation Loc1 = MemoryLocation::get(Store1); in canSinkFromBlock()
|
H A D | DeadStoreElimination.cpp | 279 static OverwriteResult isPartialOverwrite(const MemoryLocation &KillingLoc, in isPartialOverwrite() 280 const MemoryLocation &DeadLoc, in isPartialOverwrite() 416 MemoryLocation MemLoc; in memoryIsNotModifiedBetween() 418 MemLoc = MemoryLocation::getForDest(MemSet); in memoryIsNotModifiedBetween() 420 MemLoc = MemoryLocation::get(SecondI); in memoryIsNotModifiedBetween() 946 const MemoryLocation &KillingLoc, in isOverwrite() 947 const MemoryLocation &DeadLoc, in isOverwrite() 1112 std::optional<MemoryLocation> getLocForWrite(Instruction *I) const { in getLocForWrite() 1117 return MemoryLocation::getForDest(CB, TLI); in getLocForWrite() 1119 return MemoryLocation::getOrNone(I); in getLocForWrite() [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Target/NVPTX/ |
H A D | NVPTXAliasAnalysis.h | 19 class MemoryLocation; variable 34 AliasResult alias(const MemoryLocation &LocA, const MemoryLocation &LocB, 37 ModRefInfo getModRefInfoMask(const MemoryLocation &Loc, AAQueryInfo &AAQI,
|
H A D | NVPTXAliasAnalysis.cpp | 70 AliasResult NVPTXAAResult::alias(const MemoryLocation &Loc1, in alias() 71 const MemoryLocation &Loc2, AAQueryInfo &AAQI, in alias() 87 ModRefInfo NVPTXAAResult::getModRefInfoMask(const MemoryLocation &Loc, in getModRefInfoMask()
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
H A D | MoveAutoInit.cpp | 45 static std::optional<MemoryLocation> writeToAlloca(const Instruction &I) { 46 MemoryLocation ML; in writeToAlloca() 48 ML = MemoryLocation::getForDest(MI); in writeToAlloca() 50 ML = MemoryLocation::get(SI); in writeToAlloca() 63 static BasicBlock *usersDominator(const MemoryLocation &ML, Instruction *I, 117 std::optional<MemoryLocation> ML = writeToAlloca(I); in runMoveAutoInit()
|
/freebsd/contrib/llvm-project/compiler-rt/lib/ubsan/ |
H A D | ubsan_diag.h | 30 typedef uptr MemoryLocation; 33 /// SourceLocation, a MemoryLocation, or a SymbolizedStack. in reset() 42 MemoryLocation MemoryLoc; 49 Location(MemoryLocation Loc) : 65 MemoryLocation getMemoryLocation() const { 88 Range(MemoryLocation Start, MemoryLocation End, const char *Text) in getMemoryLocation() 50 typedef uptr MemoryLocation; global() typedef
|