LLVM API Documentation
#include <AttributeImpl.h>
Public Types | |
typedef AttributeSetNode::iterator | iterator |
Public Member Functions | |
AttributeSetImpl (LLVMContext &C, ArrayRef< std::pair< unsigned, AttributeSetNode * > > Attrs) | |
LLVMContext & | getContext () |
Get the context that created this AttributeSetImpl. More... | |
unsigned | getNumAttributes () const |
Return the number of attributes this AttributeSet contains. More... | |
unsigned | getSlotIndex (unsigned Slot) const |
Get the index of the given "slot" in the AttrNodes list. This index is the index of the return, parameter, or function object that the attributes are applied to, not the index into the AttrNodes list where the attributes reside. More... | |
AttributeSet | getSlotAttributes (unsigned Slot) const |
Retrieve the attributes for the given "slot" in the AttrNode list. Slot is an index into the AttrNodes list, not the index of the return / parameter/ function which the attributes apply to. More... | |
AttributeSetNode * | getSlotNode (unsigned Slot) const |
Retrieve the attribute set node for the given "slot" in the AttrNode list. More... | |
iterator | begin (unsigned Slot) const |
iterator | end (unsigned Slot) const |
void | Profile (FoldingSetNodeID &ID) const |
uint64_t | Raw (unsigned Index) const |
void | dump () const |
![]() | |
Node () | |
void * | getNextInBucket () const |
void | SetNextInBucket (void *N) |
Static Public Member Functions | |
static void | Profile (FoldingSetNodeID &ID, ArrayRef< std::pair< unsigned, AttributeSetNode * > > Nodes) |
Friends | |
class | AttributeSet |
Definition at line 186 of file AttributeImpl.h.
Definition at line 247 of file AttributeImpl.h.
|
inline |
Definition at line 203 of file AttributeImpl.h.
Definition at line 248 of file AttributeImpl.h.
References llvm::AttributeSetNode::begin(), and getSlotNode().
Referenced by llvm::AttributeSet::addAttributes(), and llvm::AttrBuilder::AttrBuilder().
void AttributeSetImpl::dump | ( | ) | const |
Definition at line 518 of file Attributes.cpp.
References AttributeSet.
Definition at line 249 of file AttributeImpl.h.
References llvm::AttributeSetNode::end(), and getSlotNode().
Referenced by llvm::AttributeSet::addAttributes(), and llvm::AttrBuilder::AttrBuilder().
|
inline |
Get the context that created this AttributeSetImpl.
Definition at line 221 of file AttributeImpl.h.
|
inline |
Return the number of attributes this AttributeSet contains.
Definition at line 224 of file AttributeImpl.h.
Referenced by llvm::AttributeSet::addAttributes(), llvm::AttrBuilder::AttrBuilder(), llvm::AttributeSet::get(), Profile(), Raw(), and llvm::AttributeSet::removeAttributes().
|
inline |
Retrieve the attributes for the given "slot" in the AttrNode list. Slot
is an index into the AttrNodes list, not the index of the return / parameter/ function which the attributes apply to.
Definition at line 237 of file AttributeImpl.h.
Referenced by llvm::AttributeSet::removeAttributes().
Get the index of the given "slot" in the AttrNodes list. This index is the index of the return, parameter, or function object that the attributes are applied to, not the index into the AttrNodes list where the attributes reside.
Definition at line 230 of file AttributeImpl.h.
Referenced by llvm::AttrBuilder::AttrBuilder(), and Raw().
|
inline |
Retrieve the attribute set node for the given "slot" in the AttrNode list.
Definition at line 243 of file AttributeImpl.h.
|
inline |
Definition at line 251 of file AttributeImpl.h.
References getNumAttributes(), and llvm::makeArrayRef().
|
inlinestatic |
Definition at line 254 of file AttributeImpl.h.
References llvm::FoldingSetNodeID::AddInteger(), and llvm::FoldingSetNodeID::AddPointer().
uint64_t AttributeSetImpl::Raw | ( | unsigned | Index | ) | const |
Definition at line 489 of file Attributes.cpp.
References llvm::Attribute::Alignment, llvm::AttributeSetNode::begin(), llvm::AttributeSetNode::end(), llvm::AttributeSetNode::getAlignment(), llvm::AttributeImpl::getAttrMask(), llvm::Attribute::getKindAsEnum(), getNumAttributes(), getSlotIndex(), getSlotNode(), llvm::AttributeSetNode::getStackAlignment(), I, llvm::ARM_PROC::IE, llvm::Attribute::isStringAttribute(), llvm::Log2_32(), and llvm::Attribute::StackAlignment.
|
friend |
Definition at line 187 of file AttributeImpl.h.
Referenced by dump().