LLVM 19.0.0git
Public Types | Public Member Functions | Static Public Member Functions | List of all members
llvm::AttributeSetNode Class Referencefinal

#include "IR/AttributeImpl.h"

Inheritance diagram for llvm::AttributeSetNode:
Inheritance graph
[legend]

Public Types

using iterator = const Attribute *
 

Public Member Functions

 AttributeSetNode (const AttributeSetNode &)=delete
 
AttributeSetNodeoperator= (const AttributeSetNode &)=delete
 
void operator delete (void *p)
 
unsigned getNumAttributes () const
 Return the number of attributes this AttributeList contains.
 
bool hasAttribute (Attribute::AttrKind Kind) const
 
bool hasAttribute (StringRef Kind) const
 
bool hasAttributes () const
 
Attribute getAttribute (Attribute::AttrKind Kind) const
 
Attribute getAttribute (StringRef Kind) const
 
MaybeAlign getAlignment () const
 
MaybeAlign getStackAlignment () const
 
uint64_t getDereferenceableBytes () const
 
uint64_t getDereferenceableOrNullBytes () const
 
std::optional< std::pair< unsigned, std::optional< unsigned > > > getAllocSizeArgs () const
 
unsigned getVScaleRangeMin () const
 
std::optional< unsignedgetVScaleRangeMax () const
 
UWTableKind getUWTableKind () const
 
AllocFnKind getAllocKind () const
 
MemoryEffects getMemoryEffects () const
 
FPClassTest getNoFPClass () const
 
std::string getAsString (bool InAttrGrp) const
 
TypegetAttributeType (Attribute::AttrKind Kind) const
 
iterator begin () const
 
iterator end () const
 
void Profile (FoldingSetNodeID &ID) const
 
- Public Member Functions inherited from llvm::FoldingSetBase::Node
 Node ()=default
 
void * getNextInBucket () const
 
void SetNextInBucket (void *N)
 

Static Public Member Functions

static AttributeSetNodeget (LLVMContext &C, const AttrBuilder &B)
 
static AttributeSetNodeget (LLVMContext &C, ArrayRef< Attribute > Attrs)
 
static void Profile (FoldingSetNodeID &ID, ArrayRef< Attribute > AttrList)
 

Detailed Description

Definition at line 245 of file AttributeImpl.h.

Member Typedef Documentation

◆ iterator

Definition at line 299 of file AttributeImpl.h.

Constructor & Destructor Documentation

◆ AttributeSetNode()

llvm::AttributeSetNode::AttributeSetNode ( const AttributeSetNode )
delete

Member Function Documentation

◆ begin()

iterator llvm::AttributeSetNode::begin ( ) const
inline

Definition at line 301 of file AttributeImpl.h.

Referenced by llvm::AttributeSet::begin(), end(), getAsString(), and Profile().

◆ end()

iterator llvm::AttributeSetNode::end ( ) const
inline

Definition at line 302 of file AttributeImpl.h.

References begin().

Referenced by llvm::AttributeSet::end(), getAsString(), and Profile().

◆ get() [1/2]

AttributeSetNode * AttributeSetNode::get ( LLVMContext C,
ArrayRef< Attribute Attrs 
)
static

Definition at line 973 of file Attributes.cpp.

References llvm::CallingConv::C, and llvm::sort().

◆ get() [2/2]

AttributeSetNode * AttributeSetNode::get ( LLVMContext C,
const AttrBuilder B 
)
static

Definition at line 1010 of file Attributes.cpp.

References B, and llvm::CallingConv::C.

Referenced by llvm::AttributeSet::get().

◆ getAlignment()

MaybeAlign AttributeSetNode::getAlignment ( ) const

Definition at line 1045 of file Attributes.cpp.

References A.

Referenced by llvm::AttributeSet::getAlignment().

◆ getAllocKind()

AllocFnKind AttributeSetNode::getAllocKind ( ) const

Definition at line 1100 of file Attributes.cpp.

References A, and llvm::Unknown.

Referenced by llvm::AttributeSet::getAllocKind().

◆ getAllocSizeArgs()

std::optional< std::pair< unsigned, std::optional< unsigned > > > AttributeSetNode::getAllocSizeArgs ( ) const

Definition at line 1076 of file Attributes.cpp.

References A.

Referenced by llvm::AttributeSet::getAllocSizeArgs().

◆ getAsString()

std::string AttributeSetNode::getAsString ( bool  InAttrGrp) const

Definition at line 1118 of file Attributes.cpp.

References begin(), end(), and I.

Referenced by llvm::AttributeSet::getAsString().

◆ getAttribute() [1/2]

Attribute AttributeSetNode::getAttribute ( Attribute::AttrKind  Kind) const

Definition at line 1035 of file Attributes.cpp.

References A.

Referenced by llvm::AttributeSet::getAttribute().

◆ getAttribute() [2/2]

Attribute AttributeSetNode::getAttribute ( StringRef  Kind) const

Definition at line 1041 of file Attributes.cpp.

◆ getAttributeType()

Type * AttributeSetNode::getAttributeType ( Attribute::AttrKind  Kind) const

◆ getDereferenceableBytes()

uint64_t AttributeSetNode::getDereferenceableBytes ( ) const

Definition at line 1063 of file Attributes.cpp.

References A.

Referenced by llvm::AttributeSet::getDereferenceableBytes().

◆ getDereferenceableOrNullBytes()

uint64_t AttributeSetNode::getDereferenceableOrNullBytes ( ) const

Definition at line 1069 of file Attributes.cpp.

References A.

Referenced by llvm::AttributeSet::getDereferenceableOrNullBytes().

◆ getMemoryEffects()

MemoryEffects AttributeSetNode::getMemoryEffects ( ) const

◆ getNoFPClass()

FPClassTest AttributeSetNode::getNoFPClass ( ) const

Definition at line 1112 of file Attributes.cpp.

References A, and llvm::fcNone.

Referenced by llvm::AttributeSet::getNoFPClass().

◆ getNumAttributes()

unsigned llvm::AttributeSetNode::getNumAttributes ( ) const
inline

Return the number of attributes this AttributeList contains.

Definition at line 273 of file AttributeImpl.h.

Referenced by llvm::AttributeSet::getNumAttributes().

◆ getStackAlignment()

MaybeAlign AttributeSetNode::getStackAlignment ( ) const

Definition at line 1051 of file Attributes.cpp.

References A.

Referenced by llvm::AttributeSet::getStackAlignment().

◆ getUWTableKind()

UWTableKind AttributeSetNode::getUWTableKind ( ) const

Definition at line 1094 of file Attributes.cpp.

References A, and llvm::None.

Referenced by llvm::AttributeSet::getUWTableKind().

◆ getVScaleRangeMax()

std::optional< unsigned > AttributeSetNode::getVScaleRangeMax ( ) const

Definition at line 1088 of file Attributes.cpp.

References A.

Referenced by llvm::AttributeSet::getVScaleRangeMax().

◆ getVScaleRangeMin()

unsigned AttributeSetNode::getVScaleRangeMin ( ) const

Definition at line 1082 of file Attributes.cpp.

References A.

Referenced by llvm::AttributeSet::getVScaleRangeMin().

◆ hasAttribute() [1/2]

bool llvm::AttributeSetNode::hasAttribute ( Attribute::AttrKind  Kind) const
inline

Definition at line 275 of file AttributeImpl.h.

References llvm::AttributeBitSet::hasAttribute().

Referenced by llvm::AttributeSet::hasAttribute().

◆ hasAttribute() [2/2]

bool AttributeSetNode::hasAttribute ( StringRef  Kind) const

Definition at line 1014 of file Attributes.cpp.

◆ hasAttributes()

bool llvm::AttributeSetNode::hasAttributes ( ) const
inline

Definition at line 279 of file AttributeImpl.h.

◆ operator delete()

void llvm::AttributeSetNode::operator delete ( void *  p)
inline

Definition at line 266 of file AttributeImpl.h.

◆ operator=()

AttributeSetNode & llvm::AttributeSetNode::operator= ( const AttributeSetNode )
delete

◆ Profile() [1/2]

void llvm::AttributeSetNode::Profile ( FoldingSetNodeID ID) const
inline

Definition at line 304 of file AttributeImpl.h.

References begin(), end(), and Profile.

Referenced by llvm::AttributeSet::hasParentContext().

◆ Profile() [2/2]

static void llvm::AttributeSetNode::Profile ( FoldingSetNodeID ID,
ArrayRef< Attribute AttrList 
)
inlinestatic

Definition at line 308 of file AttributeImpl.h.


The documentation for this class was generated from the following files: