LLVM  14.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)
 
 Access (const Access &&Other)
 
Accessoperator= (const Access &Other)
 
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 4494 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 4495 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 4497 of file Attributor.h.

References Content.

◆ Access() [3/4]

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

Definition at line 4501 of file Attributor.h.

References Other.

◆ Access() [4/4]

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

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

Referenced by llvm::operator<<(), and AAPointerInfoImpl::translateAndAddCalleeState().

◆ getKind()

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

Return the access kind.

Definition at line 4531 of file Attributor.h.

Referenced by llvm::operator<<(), and AAPointerInfoImpl::translateAndAddCalleeState().

◆ 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 4541 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 4544 of file Attributor.h.

Referenced by llvm::AA::getPotentialCopiesOfStoredValue(), llvm::AccessAsInstructionInfo::isEqual(), llvm::operator<<(), and AAPointerInfoImpl::translateAndAddCalleeState().

◆ getType()

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

Return the type associated with the access, if known.

Definition at line 4555 of file Attributor.h.

Referenced by AAPointerInfoImpl::translateAndAddCalleeState().

◆ 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 4560 of file Attributor.h.

Referenced by AAValueSimplifyImpl::handleLoad().

◆ isRead()

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

Return true if this is a read access.

Definition at line 4534 of file Attributor.h.

References llvm::AAPointerInfo::AK_READ.

Referenced by llvm::AA::getPotentialCopiesOfStoredValue(), and AAPointerInfoImpl::translateAndAddCalleeState().

◆ isWrite()

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

Return true if this is a write access.

Definition at line 4537 of file Attributor.h.

References llvm::AAPointerInfo::AK_WRITE.

Referenced by AAValueSimplifyImpl::handleLoad().

◆ isWrittenValueUnknown()

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

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

Definition at line 4550 of file Attributor.h.

◆ isWrittenValueYetUndetermined()

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

Return true if the value written is not known yet.

Definition at line 4547 of file Attributor.h.

Referenced by AAValueSimplifyImpl::handleLoad().

◆ operator!=()

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

Definition at line 4520 of file Attributor.h.

◆ operator&=()

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

Definition at line 4522 of file Attributor.h.

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

◆ operator=()

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

Definition at line 4508 of file Attributor.h.

References Other.

◆ operator==()

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

Definition at line 4516 of file Attributor.h.


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