|
LLVM
4.0.0
|
#include <AttributeImpl.h>
Public Types | |
| typedef AttributeSetNode::iterator | iterator |
Public Member Functions | |
| AttributeSetImpl (LLVMContext &C, ArrayRef< std::pair< unsigned, AttributeSetNode * >> Slots) | |
| AttributeSetImpl (const AttributeSetImpl &)=delete | |
| AttributeSetImpl & | operator= (const AttributeSetImpl &)=delete |
| void | operator delete (void *p) |
| LLVMContext & | getContext () |
| Get the context that created this AttributeSetImpl. More... | |
| unsigned | getNumSlots () const |
| Return the number of slots used in this attribute list. More... | |
| unsigned | getSlotIndex (unsigned Slot) const |
| Get the index of the given "slot" in the AttrNodes list. More... | |
| AttributeSet | getSlotAttributes (unsigned Slot) const |
| Retrieve the attributes for the given "slot" in the AttrNode list. More... | |
| AttributeSetNode * | getSlotNode (unsigned Slot) const |
| Retrieve the attribute set node for the given "slot" in the AttrNode list. More... | |
| bool | hasFnAttribute (Attribute::AttrKind Kind) const |
| Return true if the AttributeSetNode for the FunctionIndex has an enum attribute of the given kind. More... | |
| iterator | begin (unsigned Slot) const |
| iterator | end (unsigned Slot) const |
| void | Profile (FoldingSetNodeID &ID) const |
| void | dump () const |
Public Member Functions inherited from llvm::FoldingSetImpl::Node | |
| 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 153 of file AttributeImpl.h.
Definition at line 249 of file AttributeImpl.h.
|
inline |
Definition at line 174 of file AttributeImpl.h.
References assert(), llvm::Attribute::EndAttrKinds, llvm::AttributeSet::FunctionIndex, I, i, and llvm::FoldingSetImpl::Node::Node().
|
delete |
Definition at line 250 of file AttributeImpl.h.
References llvm::AttributeSetNode::begin(), and getSlotNode().
Referenced by llvm::AttributeSet::addAttributes(), and llvm::AttrBuilder::AttrBuilder().
| LLVM_DUMP_METHOD void AttributeSetImpl::dump | ( | void | ) | const |
Definition at line 584 of file Attributes.cpp.
References AttributeSet.
Definition at line 251 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 215 of file AttributeImpl.h.
References Context.
|
inline |
Return the number of slots used in this attribute list.
This is the number of arguments that have an attribute set on them (including the function itself).
Definition at line 220 of file AttributeImpl.h.
Referenced by llvm::AttributeSet::addAttributes(), llvm::AttrBuilder::AttrBuilder(), llvm::AttributeSet::get(), Profile(), 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 233 of file AttributeImpl.h.
References Context.
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 226 of file AttributeImpl.h.
Referenced by llvm::AttrBuilder::AttrBuilder().
|
inline |
Retrieve the attribute set node for the given "slot" in the AttrNode list.
Definition at line 239 of file AttributeImpl.h.
|
inline |
Return true if the AttributeSetNode for the FunctionIndex has an enum attribute of the given kind.
Definition at line 245 of file AttributeImpl.h.
References Kind.
|
inline |
Definition at line 212 of file AttributeImpl.h.
|
delete |
|
inline |
Definition at line 253 of file AttributeImpl.h.
References getNumSlots(), and llvm::makeArrayRef().
|
inlinestatic |
Definition at line 256 of file AttributeImpl.h.
References llvm::FoldingSetNodeID::AddInteger(), llvm::FoldingSetNodeID::AddPointer(), and llvm::FoldingSetImpl::Node::Node().
|
friend |
Definition at line 156 of file AttributeImpl.h.
Referenced by dump().
1.8.6