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 4814 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 4815 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 4817 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 4822 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 4875 of file Attributor.h.

Referenced by llvm::operator<<().

◆ getKind()

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

Return the access kind.

Definition at line 4842 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 4852 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 4855 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 4866 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 4871 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 4845 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 4848 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 4861 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 4858 of file Attributor.h.

Referenced by getPotentialCopiesOfMemoryValue().

◆ operator!=()

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

Definition at line 4831 of file Attributor.h.

◆ operator&=()

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

Definition at line 4833 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 4827 of file Attributor.h.


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