LLVM 18.0.0git
|
#include "llvm/Analysis/MemoryLocation.h"
Public Member Functions | |
constexpr | LocationSize (uint64_t Raw) |
LocationSize | unionWith (LocationSize Other) const |
bool | hasValue () const |
bool | isScalable () const |
TypeSize | getValue () const |
bool | isPrecise () const |
bool | isZero () const |
bool | mayBeBeforePointer () const |
Whether accesses before the base pointer are possible. | |
bool | operator== (const LocationSize &Other) const |
bool | operator!= (const LocationSize &Other) const |
void | print (raw_ostream &OS) const |
uint64_t | toRaw () const |
Static Public Member Functions | |
static LocationSize | precise (uint64_t Value) |
static LocationSize | precise (TypeSize Value) |
static LocationSize | upperBound (uint64_t Value) |
static LocationSize | upperBound (TypeSize Value) |
static constexpr LocationSize | afterPointer () |
Any location after the base pointer (but still within the underlying object). | |
static constexpr LocationSize | beforeOrAfterPointer () |
Any location before or after the base pointer (but still within the underlying object). | |
static constexpr LocationSize | mapTombstone () |
static constexpr LocationSize | mapEmpty () |
Definition at line 69 of file MemoryLocation.h.
|
inlineconstexpr |
Definition at line 106 of file MemoryLocation.h.
|
inlinestaticconstexpr |
Any location after the base pointer (but still within the underlying object).
Definition at line 132 of file MemoryLocation.h.
Referenced by llvm::MemoryLocation::get(), llvm::MemoryLocation::getAfter(), llvm::MemoryLocation::getForArgument(), mayLoopAccessLocation(), llvm::AliasSet::print(), print(), unionWith(), and upperBound().
|
inlinestaticconstexpr |
Any location before or after the base pointer (but still within the underlying object).
Definition at line 138 of file MemoryLocation.h.
Referenced by llvm::SCEVAAResult::alias(), llvm::MemoryLocation::getBeforeOrAfter(), llvm::AliasSet::print(), print(), and unionWith().
|
inline |
Definition at line 171 of file MemoryLocation.h.
References assert(), hasValue(), and isScalable().
Referenced by llvm::SCEVAAResult::alias(), canSkipClobberingStore(), getMinimalExtentFrom(), isPartialOverwrite(), isZero(), print(), and unionWith().
|
inline |
Definition at line 166 of file MemoryLocation.h.
Referenced by llvm::SCEVAAResult::alias(), canSkipClobberingStore(), getValue(), and isZero().
|
inline |
Definition at line 180 of file MemoryLocation.h.
Referenced by getMinimalExtentFrom(), and print().
|
inline |
Definition at line 169 of file MemoryLocation.h.
Referenced by canSkipClobberingStore(), getValue(), and unionWith().
|
inline |
Definition at line 183 of file MemoryLocation.h.
References llvm::details::FixedOrScalableQuantity< LeafTy, ValueTy >::getKnownMinValue(), getValue(), and hasValue().
Referenced by llvm::SCEVAAResult::alias().
|
inlinestaticconstexpr |
Definition at line 146 of file MemoryLocation.h.
Referenced by llvm::DenseMapInfo< LocationSize >::getEmptyKey(), and print().
|
inlinestaticconstexpr |
Definition at line 143 of file MemoryLocation.h.
Referenced by llvm::DenseMapInfo< LocationSize >::getTombstoneKey(), and print().
|
inline |
Whether accesses before the base pointer are possible.
Definition at line 188 of file MemoryLocation.h.
|
inline |
Definition at line 194 of file MemoryLocation.h.
References llvm::Other.
|
inline |
Definition at line 190 of file MemoryLocation.h.
References llvm::Other.
|
inlinestatic |
Definition at line 112 of file MemoryLocation.h.
|
inlinestatic |
Definition at line 109 of file MemoryLocation.h.
Referenced by areNonOverlapSameBaseLoadAndStore(), llvm::MemoryLocation::get(), llvm::MemoryLocation::getForArgument(), llvm::AAResults::isMustAlias(), llvm::BatchAAResults::isMustAlias(), mayLoopAccessLocation(), llvm::JumpThreadingPass::simplifyPartiallyRedundantLoad(), and upperBound().
void LocationSize::print | ( | raw_ostream & | OS | ) | const |
Definition at line 20 of file MemoryLocation.cpp.
References afterPointer(), beforeOrAfterPointer(), getValue(), isPrecise(), mapEmpty(), mapTombstone(), and OS.
|
inline |
Definition at line 205 of file MemoryLocation.h.
Referenced by llvm::DenseMapInfo< LocationSize >::getHashValue().
|
inline |
Definition at line 152 of file MemoryLocation.h.
References afterPointer(), beforeOrAfterPointer(), getValue(), isScalable(), llvm::Other, and upperBound().
|
inlinestatic |
Definition at line 124 of file MemoryLocation.h.
References afterPointer(), and upperBound().
|
inlinestatic |
Definition at line 116 of file MemoryLocation.h.
References afterPointer(), LLVM_UNLIKELY, and precise().
Referenced by llvm::MemoryLocation::getForArgument(), unionWith(), and upperBound().