LLVM 22.0.0git
|
The possible results of an alias query. More...
#include "llvm/Analysis/AliasAnalysis.h"
Public Types | |
enum | Kind : uint8_t { NoAlias = 0 , MayAlias , PartialAlias , MustAlias } |
Public Member Functions | |
AliasResult ()=delete | |
constexpr | AliasResult (const Kind &Alias) |
operator Kind () const | |
bool | operator== (const AliasResult &Other) const |
bool | operator!= (const AliasResult &Other) const |
bool | operator== (Kind K) const |
bool | operator!= (Kind K) const |
constexpr bool | hasOffset () const |
constexpr int32_t | getOffset () const |
void | setOffset (int32_t NewOffset) |
void | swap (bool DoSwap=true) |
Helper for processing AliasResult for swapped memory location pairs. | |
The possible results of an alias query.
These results are always computed between two MemoryLocation objects as a query to some alias analysis.
Note that these are unscoped enumerations because we would like to support implicitly testing a result for the existence of any possible aliasing with a conversion to bool, but an "enum class" doesn't support this. The canonical names from the literature are suffixed and unique anyways, and so they serve as global constants in LLVM for these results.
See docs/AliasAnalysis.html for more information on the specific meanings of these values.
Definition at line 78 of file AliasAnalysis.h.
enum llvm::AliasResult::Kind : uint8_t |
Definition at line 90 of file AliasAnalysis.h.
|
explicitdelete |
Definition at line 109 of file AliasAnalysis.h.
|
inlineconstexpr |
Definition at line 124 of file AliasAnalysis.h.
References assert().
Referenced by llvm::operator<<(), and swap().
|
inlineconstexpr |
Definition at line 123 of file AliasAnalysis.h.
Referenced by llvm::operator<<(), and swap().
|
inline |
Definition at line 112 of file AliasAnalysis.h.
|
inline |
Definition at line 118 of file AliasAnalysis.h.
References llvm::Other.
Definition at line 121 of file AliasAnalysis.h.
|
inline |
Definition at line 114 of file AliasAnalysis.h.
References llvm::Other.
Definition at line 120 of file AliasAnalysis.h.
|
inline |
Definition at line 128 of file AliasAnalysis.h.
Referenced by swap().
|
inline |
Helper for processing AliasResult for swapped memory location pairs.
Definition at line 136 of file AliasAnalysis.h.
References getOffset(), hasOffset(), and setOffset().
Referenced by PrintResults().