LLVM  15.0.0git
Public Member Functions | List of all members
llvm::AAPointerInfo::Access Struct Reference

An access description. More...

#include "llvm/Transforms/IPO/Attributor.h"

Public Member Functions

 Access (Instruction *I, Optional< Value * > Content, AccessKind Kind, Type *Ty)
 
 Access (Instruction *LocalI, Instruction *RemoteI, Optional< Value * > Content, AccessKind Kind, Type *Ty)
 
 Access (const Access &Other)=default
 
 Access (const Access &&Other)
 
Accessoperator= (const Access &Other)=default
 
bool operator== (const Access &R) const
 
bool operator!= (const Access &R) const
 
Accessoperator&= (const Access &R)
 
AccessKind getKind () const
 Return the access kind. More...
 
bool isRead () const
 Return true if this is a read access. More...
 
bool isWrite () const
 Return true if this is a write access. More...
 
InstructiongetLocalInst () const
 Return the instruction that causes the access with respect to the local scope of the associated attribute. More...
 
InstructiongetRemoteInst () const
 Return the actual instruction that causes the access. More...
 
bool isWrittenValueYetUndetermined () const
 Return true if the value written is not known yet. More...
 
bool isWrittenValueUnknown () const
 Return true if the value written cannot be determined at all. More...
 
TypegetType () const
 Return the type associated with the access, if known. More...
 
ValuegetWrittenValue () const
 Return the value writen, if any. More...
 
Optional< Value * > getContent () const
 Return the written value which can be llvm::null if it is not yet determined. More...
 

Detailed Description

An access description.

Definition at line 4922 of file Attributor.h.

Constructor & Destructor Documentation

◆ Access() [1/4]

llvm::AAPointerInfo::Access::Access ( Instruction I,
Optional< Value * >  Content,
AccessKind  Kind,
Type Ty 
)
inline

Definition at line 4923 of file Attributor.h.

References Content.

◆ Access() [2/4]

llvm::AAPointerInfo::Access::Access ( Instruction LocalI,
Instruction RemoteI,
Optional< Value * >  Content,
AccessKind  Kind,
Type Ty 
)
inline

Definition at line 4925 of file Attributor.h.

References Content.

◆ Access() [3/4]

llvm::AAPointerInfo::Access::Access ( const Access Other)
default

◆ Access() [4/4]

llvm::AAPointerInfo::Access::Access ( const Access &&  Other)
inline

Definition at line 4930 of file Attributor.h.

References Other.

Member Function Documentation

◆ getContent()

Optional<Value *> llvm::AAPointerInfo::Access::getContent ( ) const
inline

Return the written value which can be llvm::null if it is not yet determined.

Definition at line 4983 of file Attributor.h.

Referenced by getPotentialCopiesOfMemoryValue(), and llvm::operator<<().

◆ getKind()

AccessKind llvm::AAPointerInfo::Access::getKind ( ) const
inline

Return the access kind.

Definition at line 4950 of file Attributor.h.

Referenced by llvm::operator<<().

◆ getLocalInst()

Instruction* llvm::AAPointerInfo::Access::getLocalInst ( ) const
inline

Return the instruction that causes the access with respect to the local scope of the associated attribute.

Definition at line 4960 of file Attributor.h.

Referenced by llvm::operator<<().

◆ getRemoteInst()

Instruction* llvm::AAPointerInfo::Access::getRemoteInst ( ) const
inline

Return the actual instruction that causes the access.

Definition at line 4963 of file Attributor.h.

Referenced by AA::PointerInfo::State::Accesses::find(), getPotentialCopiesOfMemoryValue(), AA::PointerInfo::State::Accesses::insert(), and llvm::operator<<().

◆ getType()

Type* llvm::AAPointerInfo::Access::getType ( ) const
inline

Return the type associated with the access, if known.

Definition at line 4974 of file Attributor.h.

◆ getWrittenValue()

Value* llvm::AAPointerInfo::Access::getWrittenValue ( ) const
inline

Return the value writen, if any.

As long as isWrittenValueYetUndetermined return true this function shall not be called.

Definition at line 4979 of file Attributor.h.

Referenced by getPotentialCopiesOfMemoryValue().

◆ isRead()

bool llvm::AAPointerInfo::Access::isRead ( ) const
inline

Return true if this is a read access.

Definition at line 4953 of file Attributor.h.

References llvm::AAPointerInfo::AK_READ.

Referenced by getPotentialCopiesOfMemoryValue().

◆ isWrite()

bool llvm::AAPointerInfo::Access::isWrite ( ) const
inline

Return true if this is a write access.

Definition at line 4956 of file Attributor.h.

References llvm::AAPointerInfo::AK_WRITE.

Referenced by getPotentialCopiesOfMemoryValue().

◆ isWrittenValueUnknown()

bool llvm::AAPointerInfo::Access::isWrittenValueUnknown ( ) const
inline

Return true if the value written cannot be determined at all.

Definition at line 4969 of file Attributor.h.

Referenced by getPotentialCopiesOfMemoryValue().

◆ isWrittenValueYetUndetermined()

bool llvm::AAPointerInfo::Access::isWrittenValueYetUndetermined ( ) const
inline

Return true if the value written is not known yet.

Definition at line 4966 of file Attributor.h.

Referenced by getPotentialCopiesOfMemoryValue().

◆ operator!=()

bool llvm::AAPointerInfo::Access::operator!= ( const Access R) const
inline

Definition at line 4939 of file Attributor.h.

◆ operator&=()

Access& llvm::AAPointerInfo::Access::operator&= ( const Access R)
inline

Definition at line 4941 of file Attributor.h.

References assert(), and llvm::AA::combineOptionalValuesInAAValueLatice().

◆ operator=()

Access& llvm::AAPointerInfo::Access::operator= ( const Access Other)
default

◆ operator==()

bool llvm::AAPointerInfo::Access::operator== ( const Access R) const
inline

Definition at line 4935 of file Attributor.h.


The documentation for this struct was generated from the following file: