clang 20.0.0git
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
clang::CodeGen::TBAAAccessInfo Struct Reference

#include "/home/buildbot/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/CodeGen/CodeGenTBAA.h"

Public Member Functions

 TBAAAccessInfo (TBAAAccessKind Kind, llvm::MDNode *BaseType, llvm::MDNode *AccessType, uint64_t Offset, uint64_t Size)
 
 TBAAAccessInfo (llvm::MDNode *BaseType, llvm::MDNode *AccessType, uint64_t Offset, uint64_t Size)
 
 TBAAAccessInfo (llvm::MDNode *AccessType, uint64_t Size)
 
 TBAAAccessInfo ()
 
bool isMayAlias () const
 
bool isIncomplete () const
 
bool operator== (const TBAAAccessInfo &Other) const
 
bool operator!= (const TBAAAccessInfo &Other) const
 
 operator bool () const
 

Static Public Member Functions

static TBAAAccessInfo getMayAliasInfo ()
 
static TBAAAccessInfo getIncompleteInfo ()
 

Public Attributes

TBAAAccessKind Kind
 Kind - The kind of the access descriptor.
 
llvm::MDNode * BaseType
 BaseType - The base/leading access type.
 
llvm::MDNode * AccessType
 AccessType - The final access type.
 
uint64_t Offset
 Offset - The byte offset of the final access within the base one.
 
uint64_t Size
 Size - The size of access, in bytes.
 

Detailed Description

Definition at line 41 of file CodeGenTBAA.h.

Constructor & Destructor Documentation

◆ TBAAAccessInfo() [1/4]

clang::CodeGen::TBAAAccessInfo::TBAAAccessInfo ( TBAAAccessKind  Kind,
llvm::MDNode *  BaseType,
llvm::MDNode *  AccessType,
uint64_t  Offset,
uint64_t  Size 
)
inline

Definition at line 42 of file CodeGenTBAA.h.

◆ TBAAAccessInfo() [2/4]

clang::CodeGen::TBAAAccessInfo::TBAAAccessInfo ( llvm::MDNode *  BaseType,
llvm::MDNode *  AccessType,
uint64_t  Offset,
uint64_t  Size 
)
inline

Definition at line 48 of file CodeGenTBAA.h.

◆ TBAAAccessInfo() [3/4]

clang::CodeGen::TBAAAccessInfo::TBAAAccessInfo ( llvm::MDNode *  AccessType,
uint64_t  Size 
)
inlineexplicit

Definition at line 54 of file CodeGenTBAA.h.

◆ TBAAAccessInfo() [4/4]

clang::CodeGen::TBAAAccessInfo::TBAAAccessInfo ( )
inline

Definition at line 58 of file CodeGenTBAA.h.

Referenced by getIncompleteInfo(), getMayAliasInfo(), and operator bool().

Member Function Documentation

◆ getIncompleteInfo()

static TBAAAccessInfo clang::CodeGen::TBAAAccessInfo::getIncompleteInfo ( )
inlinestatic

◆ getMayAliasInfo()

static TBAAAccessInfo clang::CodeGen::TBAAAccessInfo::getMayAliasInfo ( )
inlinestatic

◆ isIncomplete()

bool clang::CodeGen::TBAAAccessInfo::isIncomplete ( ) const
inline

Definition at line 76 of file CodeGenTBAA.h.

References clang::CodeGen::Incomplete, and Kind.

Referenced by clang::CodeGen::CodeGenTBAA::getAccessTagInfo().

◆ isMayAlias()

bool clang::CodeGen::TBAAAccessInfo::isMayAlias ( ) const
inline

◆ operator bool()

clang::CodeGen::TBAAAccessInfo::operator bool ( ) const
inlineexplicit

Definition at line 90 of file CodeGenTBAA.h.

References TBAAAccessInfo().

◆ operator!=()

bool clang::CodeGen::TBAAAccessInfo::operator!= ( const TBAAAccessInfo Other) const
inline

Definition at line 86 of file CodeGenTBAA.h.

References clang::Other.

◆ operator==()

bool clang::CodeGen::TBAAAccessInfo::operator== ( const TBAAAccessInfo Other) const
inline

Definition at line 78 of file CodeGenTBAA.h.

References AccessType, BaseType, Kind, Offset, clang::Other, and Size.

Member Data Documentation

◆ AccessType

llvm::MDNode* clang::CodeGen::TBAAAccessInfo::AccessType

AccessType - The final access type.

May be null if there is no TBAA information available about this access.

Definition at line 104 of file CodeGenTBAA.h.

Referenced by clang::CodeGen::CodeGenTBAA::getAccessTagInfo(), llvm::DenseMapInfo< clang::CodeGen::TBAAAccessInfo >::getHashValue(), and operator==().

◆ BaseType

llvm::MDNode* clang::CodeGen::TBAAAccessInfo::BaseType

BaseType - The base/leading access type.

May be null if this access descriptor represents an access that is not considered to be an access to an aggregate or union member.

Definition at line 100 of file CodeGenTBAA.h.

Referenced by clang::CodeGen::CodeGenTBAA::getAccessTagInfo(), llvm::DenseMapInfo< clang::CodeGen::TBAAAccessInfo >::getHashValue(), and operator==().

◆ Kind

TBAAAccessKind clang::CodeGen::TBAAAccessInfo::Kind

Kind - The kind of the access descriptor.

Definition at line 95 of file CodeGenTBAA.h.

Referenced by llvm::DenseMapInfo< clang::CodeGen::TBAAAccessInfo >::getHashValue(), isIncomplete(), isMayAlias(), and operator==().

◆ Offset

uint64_t clang::CodeGen::TBAAAccessInfo::Offset

Offset - The byte offset of the final access within the base one.

Must be zero if the base access type is not specified.

Definition at line 108 of file CodeGenTBAA.h.

Referenced by clang::CodeGen::CodeGenTBAA::getAccessTagInfo(), llvm::DenseMapInfo< clang::CodeGen::TBAAAccessInfo >::getHashValue(), and operator==().

◆ Size

uint64_t clang::CodeGen::TBAAAccessInfo::Size

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