LLVM  8.0.1
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
 
unsigned getAlignment () const
 
unsigned getStackAlignment () const
 
uint64_t getDereferenceableBytes () const
 
uint64_t getDereferenceableOrNullBytes () const
 
std::pair< unsigned, Optional< unsigned > > getAllocSizeArgs () const
 
std::string getAsString (bool InAttrGrp) 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 153 of file AttributeImpl.h.

Member Typedef Documentation

◆ iterator

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

◆ end()

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

Definition at line 197 of file AttributeImpl.h.

References llvm::sys::path::begin().

◆ get() [1/2]

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

◆ get() [2/2]

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

◆ getAlignment()

unsigned AttributeSetNode::getAlignment ( ) const

Definition at line 748 of file Attributes.cpp.

References llvm::Attribute::Alignment, and I.

◆ getAllocSizeArgs()

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

Definition at line 777 of file Attributes.cpp.

References llvm::Attribute::AllocSize, and I.

◆ getAsString()

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

Definition at line 784 of file Attributes.cpp.

References llvm::sys::path::begin(), E, llvm::sys::path::end(), and I.

◆ getAttribute() [1/2]

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

Definition at line 732 of file Attributes.cpp.

References llvm::Attribute::hasAttribute(), and I.

◆ getAttribute() [2/2]

Attribute AttributeSetNode::getAttribute ( StringRef  Kind) const

Definition at line 741 of file Attributes.cpp.

References I.

◆ getDereferenceableBytes()

uint64_t AttributeSetNode::getDereferenceableBytes ( ) const

Definition at line 762 of file Attributes.cpp.

References llvm::Attribute::Dereferenceable, and I.

◆ getDereferenceableOrNullBytes()

uint64_t AttributeSetNode::getDereferenceableOrNullBytes ( ) const

Definition at line 769 of file Attributes.cpp.

References llvm::Attribute::DereferenceableOrNull, and I.

◆ getNumAttributes()

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

Return the number of attributes this AttributeList contains.

Definition at line 176 of file AttributeImpl.h.

◆ getStackAlignment()

unsigned AttributeSetNode::getStackAlignment ( ) const

Definition at line 755 of file Attributes.cpp.

References I, and llvm::Attribute::StackAlignment.

◆ hasAttribute() [1/2]

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

Definition at line 178 of file AttributeImpl.h.

References llvm::AttributeImpl::hasAttribute(), and Kind.

◆ hasAttribute() [2/2]

bool AttributeSetNode::hasAttribute ( StringRef  Kind) const

Definition at line 725 of file Attributes.cpp.

References I.

◆ hasAttributes()

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

Definition at line 182 of file AttributeImpl.h.

References getAlignment().

◆ operator delete()

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

Definition at line 169 of file AttributeImpl.h.

References llvm::AMDGPU::HSAMD::Kernel::Key::Attrs, B, and C.

◆ operator=()

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

◆ Profile() [1/2]

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

◆ Profile() [2/2]

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

Definition at line 203 of file AttributeImpl.h.


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