LLVM API Documentation
#include <AttributeImpl.h>
Public Member Functions | |
virtual | ~AttributeImpl () |
bool | isEnumAttribute () const |
bool | isAlignAttribute () const |
bool | isStringAttribute () const |
bool | hasAttribute (Attribute::AttrKind A) const |
bool | hasAttribute (StringRef Kind) const |
Attribute::AttrKind | getKindAsEnum () const |
uint64_t | getValueAsInt () const |
StringRef | getKindAsString () const |
StringRef | getValueAsString () const |
bool | operator< (const AttributeImpl &AI) const |
Used when sorting the attributes. More... | |
void | Profile (FoldingSetNodeID &ID) const |
![]() | |
Node () | |
void * | getNextInBucket () const |
void | SetNextInBucket (void *N) |
Static Public Member Functions | |
static void | Profile (FoldingSetNodeID &ID, Attribute::AttrKind Kind, uint64_t Val) |
static void | Profile (FoldingSetNodeID &ID, StringRef Kind, StringRef Values) |
static uint64_t | getAttrMask (Attribute::AttrKind Val) |
Protected Types | |
enum | AttrEntryKind { EnumAttrEntry, AlignAttrEntry, StringAttrEntry } |
Protected Member Functions | |
AttributeImpl (AttrEntryKind KindID) | |
Definition at line 32 of file AttributeImpl.h.
|
protected |
Enumerator | |
---|---|
EnumAttrEntry | |
AlignAttrEntry | |
StringAttrEntry |
Definition at line 40 of file AttributeImpl.h.
|
inlineprotected |
Definition at line 46 of file AttributeImpl.h.
|
virtual |
Definition at line 290 of file Attributes.cpp.
|
static |
Definition at line 347 of file Attributes.cpp.
References llvm::Attribute::Alignment, llvm::Attribute::AlwaysInline, llvm::Attribute::Builtin, llvm::Attribute::ByVal, llvm::Attribute::Cold, llvm::Attribute::EndAttrKinds, llvm::Attribute::InlineHint, llvm::Attribute::InReg, llvm_unreachable, llvm::Attribute::MinSize, llvm::Attribute::Naked, llvm::Attribute::Nest, llvm::Attribute::NoAlias, llvm::Attribute::NoBuiltin, llvm::Attribute::NoCapture, llvm::Attribute::NoDuplicate, llvm::Attribute::NoImplicitFloat, llvm::Attribute::NoInline, llvm::Attribute::None, llvm::Attribute::NonLazyBind, llvm::Attribute::NoRedZone, llvm::Attribute::NoReturn, llvm::Attribute::NoUnwind, llvm::Attribute::OptimizeForSize, llvm::Attribute::OptimizeNone, llvm::Attribute::ReadNone, llvm::Attribute::ReadOnly, llvm::Attribute::Returned, llvm::Attribute::ReturnsTwice, llvm::Attribute::SanitizeAddress, llvm::Attribute::SanitizeMemory, llvm::Attribute::SanitizeThread, llvm::Attribute::SExt, llvm::Attribute::StackAlignment, llvm::Attribute::StackProtect, llvm::Attribute::StackProtectReq, llvm::Attribute::StackProtectStrong, llvm::Attribute::StructRet, llvm::Attribute::UWTable, and llvm::Attribute::ZExt.
Referenced by llvm::AttrBuilder::addRawValue(), and llvm::AttributeSetImpl::Raw().
Attribute::AttrKind AttributeImpl::getKindAsEnum | ( | ) | const |
Definition at line 305 of file Attributes.cpp.
References isAlignAttribute(), and isEnumAttribute().
Referenced by llvm::Attribute::getKindAsEnum(), hasAttribute(), operator<(), and Profile().
StringRef AttributeImpl::getKindAsString | ( | ) | const |
Definition at line 315 of file Attributes.cpp.
References isStringAttribute().
Referenced by llvm::Attribute::getKindAsString(), hasAttribute(), operator<(), and Profile().
uint64_t AttributeImpl::getValueAsInt | ( | ) | const |
Definition at line 310 of file Attributes.cpp.
References isAlignAttribute().
Referenced by llvm::Attribute::getAlignment(), llvm::Attribute::getStackAlignment(), llvm::Attribute::getValueAsInt(), operator<(), and Profile().
StringRef AttributeImpl::getValueAsString | ( | ) | const |
Definition at line 320 of file Attributes.cpp.
References isStringAttribute().
Referenced by llvm::Attribute::getAsString(), llvm::Attribute::getValueAsString(), operator<(), and Profile().
bool AttributeImpl::hasAttribute | ( | Attribute::AttrKind | A | ) | const |
Definition at line 295 of file Attributes.cpp.
References llvm::ARM_PROC::A, getKindAsEnum(), and isStringAttribute().
Referenced by llvm::Attribute::hasAttribute().
Definition at line 300 of file Attributes.cpp.
References getKindAsString(), and isStringAttribute().
|
inline |
Definition at line 52 of file AttributeImpl.h.
References AlignAttrEntry.
Referenced by getKindAsEnum(), getValueAsInt(), llvm::Attribute::isAlignAttribute(), operator<(), and Profile().
|
inline |
Definition at line 51 of file AttributeImpl.h.
References EnumAttrEntry.
Referenced by getKindAsEnum(), llvm::Attribute::isEnumAttribute(), operator<(), and Profile().
|
inline |
Definition at line 53 of file AttributeImpl.h.
References StringAttrEntry.
Referenced by getKindAsString(), getValueAsString(), hasAttribute(), llvm::Attribute::isStringAttribute(), and operator<().
bool AttributeImpl::operator< | ( | const AttributeImpl & | AI | ) | const |
Used when sorting the attributes.
Definition at line 325 of file Attributes.cpp.
References getKindAsEnum(), getKindAsString(), getValueAsInt(), getValueAsString(), isAlignAttribute(), isEnumAttribute(), and isStringAttribute().
|
inline |
Definition at line 67 of file AttributeImpl.h.
References getKindAsEnum(), getKindAsString(), getValueAsInt(), getValueAsString(), isAlignAttribute(), and isEnumAttribute().
|
inlinestatic |
Definition at line 75 of file AttributeImpl.h.
References llvm::FoldingSetNodeID::AddInteger().
|
inlinestatic |
Definition at line 80 of file AttributeImpl.h.
References llvm::FoldingSetNodeID::AddString(), and llvm::StringRef::empty().