LLVM 20.0.0git
|
#include "llvm/Analysis/AliasSetTracker.h"
Public Types | |
using | iterator = SmallVectorImpl< MemoryLocation >::const_iterator |
using | PointerVector = SmallVector< const Value *, 8 > |
Retrieve the pointer values for the memory locations in this alias set. | |
Friends | |
class | AliasSetTracker |
Additional Inherited Members | |
Protected Types inherited from llvm::ilist_node_impl< OptionsT > | |
using | self_iterator = typename ilist_select_iterator_type< OptionsT::has_iterator_bits, OptionsT, false, false >::type |
using | const_self_iterator = typename ilist_select_iterator_type< OptionsT::has_iterator_bits, OptionsT, false, true >::type |
using | reverse_self_iterator = typename ilist_select_iterator_type< OptionsT::has_iterator_bits, OptionsT, true, false >::type |
using | const_reverse_self_iterator = typename ilist_select_iterator_type< OptionsT::has_iterator_bits, OptionsT, true, true >::type |
Protected Member Functions inherited from llvm::ilist_node_impl< OptionsT > | |
ilist_node_impl ()=default | |
Definition at line 48 of file AliasSetTracker.h.
Definition at line 120 of file AliasSetTracker.h.
using llvm::AliasSet::PointerVector = SmallVector<const Value *, 8> |
Retrieve the pointer values for the memory locations in this alias set.
The order matches that of the memory locations, but duplicate pointer values are omitted.
Definition at line 129 of file AliasSetTracker.h.
AliasResult AliasSet::aliasesMemoryLocation | ( | const MemoryLocation & | MemLoc, |
BatchAAResults & | AA | ||
) | const |
If the specified memory location "may" (or must) alias one of the members in the set return the appropriate AliasResult.
aliasesMemoryLocation - If the specified memory location "may" (or must) alias one of the members in the set return the appropriate AliasResult.
Otherwise return NoAlias.
Definition at line 154 of file AliasSetTracker.cpp.
References llvm::BatchAAResults::alias(), llvm::BatchAAResults::getModRefInfo(), llvm::isModOrRefSet(), llvm::AliasResult::MayAlias, and llvm::AliasResult::NoAlias.
ModRefInfo AliasSet::aliasesUnknownInst | ( | const Instruction * | Inst, |
BatchAAResults & | AA | ||
) | const |
Definition at line 174 of file AliasSetTracker.cpp.
References llvm::BatchAAResults::getModRefInfo(), llvm::isModAndRefSet(), llvm::isModOrRefSet(), llvm::Instruction::mayReadOrWriteMemory(), llvm::ModRef, and llvm::NoModRef.
|
inline |
Definition at line 121 of file AliasSetTracker.h.
References llvm::SmallVectorTemplateCommon< T, typename >::begin().
LLVM_DUMP_METHOD void AliasSet::dump | ( | ) | const |
Definition at line 565 of file AliasSetTracker.cpp.
References llvm::dbgs(), and print().
|
inline |
Definition at line 122 of file AliasSetTracker.h.
References llvm::SmallVectorTemplateCommon< T, typename >::end().
AliasSet::PointerVector AliasSet::getPointers | ( | ) | const |
Definition at line 203 of file AliasSetTracker.cpp.
References llvm::SetVector< T, Vector, Set, N >::insert(), llvm::MemoryLocation::Ptr, and llvm::SetVector< T, Vector, Set, N >::takeVector().
|
inline |
Return true if this alias set should be ignored as part of the AliasSetTracker object.
Definition at line 113 of file AliasSetTracker.h.
|
inline |
Definition at line 109 of file AliasSetTracker.h.
|
inline |
Definition at line 107 of file AliasSetTracker.h.
|
inline |
Definition at line 108 of file AliasSetTracker.h.
|
inline |
Accessors...
Definition at line 106 of file AliasSetTracker.h.
void AliasSet::mergeSetIn | ( | AliasSet & | AS, |
AliasSetTracker & | AST, | ||
BatchAAResults & | BatchAA | ||
) |
Merge the specified alias set into this alias set.
mergeSetIn - Merge the specified alias set into this alias set.
Definition at line 44 of file AliasSetTracker.cpp.
References llvm::any_of(), llvm::append_range(), assert(), and std::swap().
void AliasSet::print | ( | raw_ostream & | OS | ) | const |
Definition at line 513 of file AliasSetTracker.cpp.
References llvm::LocationSize::afterPointer(), llvm::LocationSize::beforeOrAfterPointer(), I, llvm_unreachable, OS, llvm::Value::printAsOperand(), llvm::MemoryLocation::Ptr, and llvm::MemoryLocation::Size.
Referenced by dump(), llvm::operator<<(), and llvm::AliasSetTracker::print().
|
inline |
Definition at line 124 of file AliasSetTracker.h.
References llvm::SmallVectorBase< Size_T >::size().
|
friend |
Definition at line 49 of file AliasSetTracker.h.