From: Nikita Popov Date: Tue, 1 Nov 2022 15:23:26 +0000 (+0100) Subject: [AA] Remove some overloads (NFC) X-Git-Tag: upstream/17.0.6~28759 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=41dba9e6a3096d54de6005ef4e648af1ff02b90c;p=platform%2Fupstream%2Fllvm.git [AA] Remove some overloads (NFC) Having all these instruction-specific overloads does not seem to provide any compile-time benefit, so drop them in favor of the generic methods accepting "const Instruction *". Only leave behind the per-instruction AAQI overloads, which are part of the internal implementation. --- diff --git a/llvm/include/llvm/Analysis/AliasAnalysis.h b/llvm/include/llvm/Analysis/AliasAnalysis.h index 4960560..a6c7da9 100644 --- a/llvm/include/llvm/Analysis/AliasAnalysis.h +++ b/llvm/include/llvm/Analysis/AliasAnalysis.h @@ -459,97 +459,6 @@ public: return getMemoryEffects(F).onlyReadsMemory(); } - /// getModRefInfo (for call sites) - Return information about whether - /// a particular call site modifies or reads the specified memory location. - ModRefInfo getModRefInfo(const CallBase *Call, const MemoryLocation &Loc); - - /// getModRefInfo (for call sites) - A convenience wrapper. - ModRefInfo getModRefInfo(const CallBase *Call, const Value *P, - LocationSize Size) { - return getModRefInfo(Call, MemoryLocation(P, Size)); - } - - /// getModRefInfo (for loads) - Return information about whether - /// a particular load modifies or reads the specified memory location. - ModRefInfo getModRefInfo(const LoadInst *L, const MemoryLocation &Loc); - - /// getModRefInfo (for loads) - A convenience wrapper. - ModRefInfo getModRefInfo(const LoadInst *L, const Value *P, - LocationSize Size) { - return getModRefInfo(L, MemoryLocation(P, Size)); - } - - /// getModRefInfo (for stores) - Return information about whether - /// a particular store modifies or reads the specified memory location. - ModRefInfo getModRefInfo(const StoreInst *S, const MemoryLocation &Loc); - - /// getModRefInfo (for stores) - A convenience wrapper. - ModRefInfo getModRefInfo(const StoreInst *S, const Value *P, - LocationSize Size) { - return getModRefInfo(S, MemoryLocation(P, Size)); - } - - /// getModRefInfo (for fences) - Return information about whether - /// a particular store modifies or reads the specified memory location. - ModRefInfo getModRefInfo(const FenceInst *S, const MemoryLocation &Loc); - - /// getModRefInfo (for fences) - A convenience wrapper. - ModRefInfo getModRefInfo(const FenceInst *S, const Value *P, - LocationSize Size) { - return getModRefInfo(S, MemoryLocation(P, Size)); - } - - /// getModRefInfo (for cmpxchges) - Return information about whether - /// a particular cmpxchg modifies or reads the specified memory location. - ModRefInfo getModRefInfo(const AtomicCmpXchgInst *CX, - const MemoryLocation &Loc); - - /// getModRefInfo (for cmpxchges) - A convenience wrapper. - ModRefInfo getModRefInfo(const AtomicCmpXchgInst *CX, const Value *P, - LocationSize Size) { - return getModRefInfo(CX, MemoryLocation(P, Size)); - } - - /// getModRefInfo (for atomicrmws) - Return information about whether - /// a particular atomicrmw modifies or reads the specified memory location. - ModRefInfo getModRefInfo(const AtomicRMWInst *RMW, const MemoryLocation &Loc); - - /// getModRefInfo (for atomicrmws) - A convenience wrapper. - ModRefInfo getModRefInfo(const AtomicRMWInst *RMW, const Value *P, - LocationSize Size) { - return getModRefInfo(RMW, MemoryLocation(P, Size)); - } - - /// getModRefInfo (for va_args) - Return information about whether - /// a particular va_arg modifies or reads the specified memory location. - ModRefInfo getModRefInfo(const VAArgInst *I, const MemoryLocation &Loc); - - /// getModRefInfo (for va_args) - A convenience wrapper. - ModRefInfo getModRefInfo(const VAArgInst *I, const Value *P, - LocationSize Size) { - return getModRefInfo(I, MemoryLocation(P, Size)); - } - - /// getModRefInfo (for catchpads) - Return information about whether - /// a particular catchpad modifies or reads the specified memory location. - ModRefInfo getModRefInfo(const CatchPadInst *I, const MemoryLocation &Loc); - - /// getModRefInfo (for catchpads) - A convenience wrapper. - ModRefInfo getModRefInfo(const CatchPadInst *I, const Value *P, - LocationSize Size) { - return getModRefInfo(I, MemoryLocation(P, Size)); - } - - /// getModRefInfo (for catchrets) - Return information about whether - /// a particular catchret modifies or reads the specified memory location. - ModRefInfo getModRefInfo(const CatchReturnInst *I, const MemoryLocation &Loc); - - /// getModRefInfo (for catchrets) - A convenience wrapper. - ModRefInfo getModRefInfo(const CatchReturnInst *I, const Value *P, - LocationSize Size) { - return getModRefInfo(I, MemoryLocation(P, Size)); - } - /// Check whether or not an instruction may read or write the optionally /// specified memory location. /// @@ -576,11 +485,6 @@ public: /// the same memory locations. ModRefInfo getModRefInfo(const Instruction *I, const CallBase *Call); - /// Return information about whether two call sites may refer to the same set - /// of memory locations. See the AA documentation for details: - /// http://llvm.org/docs/AliasAnalysis.html#ModRefInfo - ModRefInfo getModRefInfo(const CallBase *Call1, const CallBase *Call2); - /// Return information about whether a particular call site modifies /// or reads the specified memory location \p MemLoc before instruction \p I /// in a BasicBlock. @@ -705,12 +609,6 @@ public: bool IgnoreLocals = false) { return AA.getModRefInfoMask(Loc, AAQI, IgnoreLocals); } - ModRefInfo getModRefInfo(const CallBase *Call, const MemoryLocation &Loc) { - return AA.getModRefInfo(Call, Loc, AAQI); - } - ModRefInfo getModRefInfo(const CallBase *Call1, const CallBase *Call2) { - return AA.getModRefInfo(Call1, Call2, AAQI); - } ModRefInfo getModRefInfo(const Instruction *I, const Optional &OptLoc) { return AA.getModRefInfo(I, OptLoc, AAQI); diff --git a/llvm/lib/Analysis/AliasAnalysis.cpp b/llvm/lib/Analysis/AliasAnalysis.cpp index fd3ded0..4f27aca 100644 --- a/llvm/lib/Analysis/AliasAnalysis.cpp +++ b/llvm/lib/Analysis/AliasAnalysis.cpp @@ -210,12 +210,6 @@ ModRefInfo AAResults::getModRefInfo(const Instruction *I, const CallBase *Call2, } ModRefInfo AAResults::getModRefInfo(const CallBase *Call, - const MemoryLocation &Loc) { - SimpleAAQueryInfo AAQIP(*this); - return getModRefInfo(Call, Loc, AAQIP); -} - -ModRefInfo AAResults::getModRefInfo(const CallBase *Call, const MemoryLocation &Loc, AAQueryInfo &AAQI) { ModRefInfo Result = ModRefInfo::ModRef; @@ -270,12 +264,6 @@ ModRefInfo AAResults::getModRefInfo(const CallBase *Call, } ModRefInfo AAResults::getModRefInfo(const CallBase *Call1, - const CallBase *Call2) { - SimpleAAQueryInfo AAQIP(*this); - return getModRefInfo(Call1, Call2, AAQIP); -} - -ModRefInfo AAResults::getModRefInfo(const CallBase *Call1, const CallBase *Call2, AAQueryInfo &AAQI) { ModRefInfo Result = ModRefInfo::ModRef; @@ -477,11 +465,6 @@ raw_ostream &llvm::operator<<(raw_ostream &OS, MemoryEffects ME) { //===----------------------------------------------------------------------===// ModRefInfo AAResults::getModRefInfo(const LoadInst *L, - const MemoryLocation &Loc) { - SimpleAAQueryInfo AAQIP(*this); - return getModRefInfo(L, Loc, AAQIP); -} -ModRefInfo AAResults::getModRefInfo(const LoadInst *L, const MemoryLocation &Loc, AAQueryInfo &AAQI) { // Be conservative in the face of atomic. @@ -500,11 +483,6 @@ ModRefInfo AAResults::getModRefInfo(const LoadInst *L, } ModRefInfo AAResults::getModRefInfo(const StoreInst *S, - const MemoryLocation &Loc) { - SimpleAAQueryInfo AAQIP(*this); - return getModRefInfo(S, Loc, AAQIP); -} -ModRefInfo AAResults::getModRefInfo(const StoreInst *S, const MemoryLocation &Loc, AAQueryInfo &AAQI) { // Be conservative in the face of atomic. @@ -531,12 +509,6 @@ ModRefInfo AAResults::getModRefInfo(const StoreInst *S, } ModRefInfo AAResults::getModRefInfo(const FenceInst *S, - const MemoryLocation &Loc) { - SimpleAAQueryInfo AAQIP(*this); - return getModRefInfo(S, Loc, AAQIP); -} - -ModRefInfo AAResults::getModRefInfo(const FenceInst *S, const MemoryLocation &Loc, AAQueryInfo &AAQI) { // All we know about a fence instruction is what we get from the ModRef @@ -548,12 +520,6 @@ ModRefInfo AAResults::getModRefInfo(const FenceInst *S, } ModRefInfo AAResults::getModRefInfo(const VAArgInst *V, - const MemoryLocation &Loc) { - SimpleAAQueryInfo AAQIP(*this); - return getModRefInfo(V, Loc, AAQIP); -} - -ModRefInfo AAResults::getModRefInfo(const VAArgInst *V, const MemoryLocation &Loc, AAQueryInfo &AAQI) { if (Loc.Ptr) { @@ -573,12 +539,6 @@ ModRefInfo AAResults::getModRefInfo(const VAArgInst *V, } ModRefInfo AAResults::getModRefInfo(const CatchPadInst *CatchPad, - const MemoryLocation &Loc) { - SimpleAAQueryInfo AAQIP(*this); - return getModRefInfo(CatchPad, Loc, AAQIP); -} - -ModRefInfo AAResults::getModRefInfo(const CatchPadInst *CatchPad, const MemoryLocation &Loc, AAQueryInfo &AAQI) { if (Loc.Ptr) { @@ -592,12 +552,6 @@ ModRefInfo AAResults::getModRefInfo(const CatchPadInst *CatchPad, } ModRefInfo AAResults::getModRefInfo(const CatchReturnInst *CatchRet, - const MemoryLocation &Loc) { - SimpleAAQueryInfo AAQIP(*this); - return getModRefInfo(CatchRet, Loc, AAQIP); -} - -ModRefInfo AAResults::getModRefInfo(const CatchReturnInst *CatchRet, const MemoryLocation &Loc, AAQueryInfo &AAQI) { if (Loc.Ptr) { @@ -611,12 +565,6 @@ ModRefInfo AAResults::getModRefInfo(const CatchReturnInst *CatchRet, } ModRefInfo AAResults::getModRefInfo(const AtomicCmpXchgInst *CX, - const MemoryLocation &Loc) { - SimpleAAQueryInfo AAQIP(*this); - return getModRefInfo(CX, Loc, AAQIP); -} - -ModRefInfo AAResults::getModRefInfo(const AtomicCmpXchgInst *CX, const MemoryLocation &Loc, AAQueryInfo &AAQI) { // Acquire/Release cmpxchg has properties that matter for arbitrary addresses. @@ -635,12 +583,6 @@ ModRefInfo AAResults::getModRefInfo(const AtomicCmpXchgInst *CX, } ModRefInfo AAResults::getModRefInfo(const AtomicRMWInst *RMW, - const MemoryLocation &Loc) { - SimpleAAQueryInfo AAQIP(*this); - return getModRefInfo(RMW, Loc, AAQIP); -} - -ModRefInfo AAResults::getModRefInfo(const AtomicRMWInst *RMW, const MemoryLocation &Loc, AAQueryInfo &AAQI) { // Acquire/Release atomicrmw has properties that matter for arbitrary addresses.