LLVM  15.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]
Collaboration diagram for llvm::AttributeSetNode:
Collaboration 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. More...
 
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::pair< unsigned, Optional< unsigned > > getAllocSizeArgs () const
 
unsigned getVScaleRangeMin () const
 
Optional< unsigned > getVScaleRangeMax () const
 
UWTableKind getUWTableKind () const
 
AllocFnKind getAllocKind () 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 212 of file AttributeImpl.h.

Member Typedef Documentation

◆ iterator

Definition at line 263 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 265 of file AttributeImpl.h.

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

◆ end()

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

Definition at line 266 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 812 of file Attributes.cpp.

References Attrs, llvm::Function::begin(), llvm::Function::end(), and llvm::sort().

◆ get() [2/2]

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

Definition at line 849 of file Attributes.cpp.

References B.

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

◆ getAlignment()

MaybeAlign AttributeSetNode::getAlignment ( ) const

Definition at line 884 of file Attributes.cpp.

References A, and llvm::None.

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

◆ getAllocKind()

AllocFnKind AttributeSetNode::getAllocKind ( ) const

Definition at line 939 of file Attributes.cpp.

References A, and llvm::Unknown.

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

◆ getAllocSizeArgs()

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

Definition at line 915 of file Attributes.cpp.

References A.

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

◆ getAsString()

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

Definition at line 945 of file Attributes.cpp.

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

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

◆ getAttribute() [1/2]

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

Definition at line 874 of file Attributes.cpp.

References A.

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

◆ getAttribute() [2/2]

Attribute AttributeSetNode::getAttribute ( StringRef  Kind) const

Definition at line 880 of file Attributes.cpp.

◆ getAttributeType()

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

◆ getDereferenceableBytes()

uint64_t AttributeSetNode::getDereferenceableBytes ( ) const

Definition at line 902 of file Attributes.cpp.

References A.

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

◆ getDereferenceableOrNullBytes()

uint64_t AttributeSetNode::getDereferenceableOrNullBytes ( ) const

Definition at line 908 of file Attributes.cpp.

References A.

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

◆ getNumAttributes()

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

Return the number of attributes this AttributeList contains.

Definition at line 240 of file AttributeImpl.h.

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

◆ getStackAlignment()

MaybeAlign AttributeSetNode::getStackAlignment ( ) const

Definition at line 890 of file Attributes.cpp.

References A, and llvm::None.

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

◆ getUWTableKind()

UWTableKind AttributeSetNode::getUWTableKind ( ) const

Definition at line 933 of file Attributes.cpp.

References A, and llvm::None.

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

◆ getVScaleRangeMax()

Optional< unsigned > AttributeSetNode::getVScaleRangeMax ( ) const

Definition at line 927 of file Attributes.cpp.

References A, and llvm::None.

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

◆ getVScaleRangeMin()

unsigned AttributeSetNode::getVScaleRangeMin ( ) const

Definition at line 921 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 242 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 853 of file Attributes.cpp.

◆ hasAttributes()

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

Definition at line 246 of file AttributeImpl.h.

◆ operator delete()

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

Definition at line 233 of file AttributeImpl.h.

References p.

◆ operator=()

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

◆ Profile() [1/2]

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

Definition at line 268 of file AttributeImpl.h.

References begin(), end(), and llvm::makeArrayRef().

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

◆ Profile() [2/2]

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

Definition at line 272 of file AttributeImpl.h.


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