LLVM 22.0.0git
|
Enumeration value. More...
#include "llvm/IR/DebugInfoMetadata.h"
Static Public Member Functions | |
static bool | classof (const Metadata *MD) |
Static Public Member Functions inherited from llvm::DINode | |
static LLVM_ABI DIFlags | getFlag (StringRef Flag) |
static LLVM_ABI StringRef | getFlagString (DIFlags Flag) |
static LLVM_ABI DIFlags | splitFlags (DIFlags Flags, SmallVectorImpl< DIFlags > &SplitFlags) |
Split up a flags bitfield. | |
static bool | classof (const Metadata *MD) |
Static Public Member Functions inherited from llvm::MDNode | |
static MDTuple * | get (LLVMContext &Context, ArrayRef< Metadata * > MDs) |
static MDTuple * | getIfExists (LLVMContext &Context, ArrayRef< Metadata * > MDs) |
static MDTuple * | getDistinct (LLVMContext &Context, ArrayRef< Metadata * > MDs) |
static TempMDTuple | getTemporary (LLVMContext &Context, ArrayRef< Metadata * > MDs) |
static LLVM_ABI void | deleteTemporary (MDNode *N) |
Deallocate a node created by getTemporary. | |
template<class T> | |
static std::enable_if_t< std::is_base_of< MDNode, T >::value, T * > | replaceWithPermanent (std::unique_ptr< T, TempMDNodeDeleter > N) |
Replace a temporary node with a permanent one. | |
template<class T> | |
static std::enable_if_t< std::is_base_of< MDNode, T >::value, T * > | replaceWithUniqued (std::unique_ptr< T, TempMDNodeDeleter > N) |
Replace a temporary node with a uniqued one. | |
template<class T> | |
static std::enable_if_t< std::is_base_of< MDNode, T >::value, T * > | replaceWithDistinct (std::unique_ptr< T, TempMDNodeDeleter > N) |
Replace a temporary node with a distinct one. | |
static bool | classof (const Metadata *MD) |
Methods for support type inquiry through isa, cast, and dyn_cast: | |
static LLVM_ABI MDNode * | concatenate (MDNode *A, MDNode *B) |
Methods for metadata merging. | |
static LLVM_ABI MDNode * | intersect (MDNode *A, MDNode *B) |
static LLVM_ABI MDNode * | getMostGenericTBAA (MDNode *A, MDNode *B) |
static LLVM_ABI MDNode * | getMostGenericFPMath (MDNode *A, MDNode *B) |
static LLVM_ABI MDNode * | getMostGenericRange (MDNode *A, MDNode *B) |
static LLVM_ABI MDNode * | getMostGenericNoaliasAddrspace (MDNode *A, MDNode *B) |
static LLVM_ABI MDNode * | getMostGenericAliasScope (MDNode *A, MDNode *B) |
static LLVM_ABI MDNode * | getMostGenericAlignmentOrDereferenceable (MDNode *A, MDNode *B) |
static LLVM_ABI MDNode * | getMergedProfMetadata (MDNode *A, MDNode *B, const Instruction *AInstr, const Instruction *BInstr) |
Merge !prof metadata from two instructions. | |
static LLVM_ABI MDNode * | getMergedMemProfMetadata (MDNode *A, MDNode *B) |
static LLVM_ABI MDNode * | getMergedCallsiteMetadata (MDNode *A, MDNode *B) |
static LLVM_ABI MDNode * | getMergedCalleeTypeMetadata (const MDNode *A, const MDNode *B) |
Public Attributes | |
int64_t | Value |
int64_t bool | IsUnsigned |
int64_t bool MDString * | Name |
int64_t bool MDString | IsUnsigned |
int64_t bool MDString Name APInt | Value |
int64_t bool MDString Name APInt bool | IsUnsigned |
int64_t bool MDString Name APInt bool MDString * | Name |
int64_t bool MDString Name APInt bool MDString | Value |
int64_t bool MDString Name APInt bool MDString | IsUnsigned |
Friends | |
class | LLVMContextImpl |
class | MDNode |
Additional Inherited Members | |
Public Types inherited from llvm::DINode | |
enum | DIFlags : uint32_t { FlagAccessibility = FlagPrivate | FlagProtected | FlagPublic , FlagPtrToMemberRep } |
Debug info flags. More... | |
Public Types inherited from llvm::MDNode | |
using | op_iterator = const MDOperand * |
using | op_range = iterator_range<op_iterator> |
Public Types inherited from llvm::Metadata | |
enum | MetadataKind |
Static Public Attributes inherited from llvm::Metadata | |
static constexpr const unsigned | PoisonGeneratingIDs [] |
Metadata IDs that may generate poison. | |
Protected Types inherited from llvm::MDNode | |
using | mutable_op_range = iterator_range<MDOperand *> |
Protected Types inherited from llvm::Metadata | |
enum | StorageType { Uniqued , Distinct , Temporary } |
Active type of storage. More... | |
Protected Member Functions inherited from llvm::DINode | |
DINode (LLVMContext &C, unsigned ID, StorageType Storage, unsigned Tag, ArrayRef< Metadata * > Ops1, ArrayRef< Metadata * > Ops2={}) | |
~DINode ()=default | |
template<class Ty> | |
Ty * | getOperandAs (unsigned I) const |
StringRef | getStringOperand (unsigned I) const |
void | setTag (unsigned Tag) |
Allow subclasses to mutate the tag. | |
Protected Member Functions inherited from llvm::MDNode | |
LLVM_ABI | MDNode (LLVMContext &Context, unsigned ID, StorageType Storage, ArrayRef< Metadata * > Ops1, ArrayRef< Metadata * > Ops2={}) |
~MDNode ()=default | |
LLVM_ABI void * | operator new (size_t Size, size_t NumOps, StorageType Storage) |
LLVM_ABI void | operator delete (void *Mem) |
void | operator delete (void *, unsigned) |
Required by std, but never called. | |
void | operator delete (void *, unsigned, bool) |
Required by std, but never called. | |
LLVM_ABI void | dropAllReferences () |
MDOperand * | mutable_begin () |
MDOperand * | mutable_end () |
mutable_op_range | mutable_operands () |
LLVM_ABI void | setOperand (unsigned I, Metadata *New) |
Set an operand. | |
unsigned | getNumUnresolved () const |
void | setNumUnresolved (unsigned N) |
LLVM_ABI void | storeDistinctInContext () |
void | resize (size_t NumOps) |
Resize the node to hold NumOps operands. | |
Protected Member Functions inherited from llvm::Metadata | |
Metadata (unsigned ID, StorageType Storage) | |
~Metadata ()=default | |
void | handleChangedOperand (void *, Metadata *) |
Default handling of a changed operand, which asserts. | |
Static Protected Member Functions inherited from llvm::DINode | |
static MDString * | getCanonicalMDString (LLVMContext &Context, StringRef S) |
Static Protected Member Functions inherited from llvm::MDNode | |
template<class T, class StoreT> | |
static T * | storeImpl (T *N, StorageType Storage, StoreT &Store) |
template<class T> | |
static T * | storeImpl (T *N, StorageType Storage) |
Protected Attributes inherited from llvm::Metadata | |
unsigned char | Storage: 7 |
Storage flag for non-uniqued, otherwise unowned, metadata. | |
unsigned char | SubclassData1: 1 |
unsigned short | SubclassData16 = 0 |
unsigned | SubclassData32 = 0 |
Enumeration value.
TODO: Add a pointer to the context (DW_TAG_enumeration_type) once that no longer creates a type cycle.
Definition at line 461 of file DebugInfoMetadata.h.
References IsUnsigned, and Name.
Referenced by DEFINE_MDNODE_GET(), getValue(), and MDNode.
Definition at line 511 of file DebugInfoMetadata.h.
References llvm::Metadata::getMetadataID().
int64_t bool MDString Name llvm::DIEnumerator::DEFINE_MDNODE_GET | ( | DIEnumerator | , |
(APInt Value, bool IsUnsigned, StringRef Name) | , | ||
(Value, IsUnsigned, Name) | ) |
References APInt(), DEFINE_MDNODE_GET(), IsUnsigned, and Name.
llvm::DIEnumerator::DEFINE_MDNODE_GET | ( | DIEnumerator | , |
(int64_t Value, bool IsUnsigned, StringRef Name) | , | ||
(APInt(64, Value, !IsUnsigned), IsUnsigned, Name) | ) |
References IsUnsigned, and Name.
Referenced by DEFINE_MDNODE_GET().
|
inline |
Definition at line 507 of file DebugInfoMetadata.h.
References llvm::DINode::getStringOperand().
|
inline |
Definition at line 509 of file DebugInfoMetadata.h.
References llvm::DINode::getOperandAs().
Definition at line 505 of file DebugInfoMetadata.h.
References APInt().
|
inline |
Definition at line 506 of file DebugInfoMetadata.h.
References llvm::Metadata::SubclassData32.
|
friend |
Definition at line 462 of file DebugInfoMetadata.h.
References LLVMContextImpl.
Referenced by LLVMContextImpl.
|
friend |
Definition at line 463 of file DebugInfoMetadata.h.
References AbstractManglingParser< Derived, Alloc >::Ops, APInt(), llvm::CallingConv::C, IsUnsigned, LLVM_ABI, MDNode, and llvm::Metadata::Storage.
Referenced by MDNode.
int64_t bool llvm::DIEnumerator::IsUnsigned |
Definition at line 494 of file DebugInfoMetadata.h.
Referenced by APInt(), DEFINE_MDNODE_GET(), DEFINE_MDNODE_GET(), and MDNode.
Definition at line 495 of file DebugInfoMetadata.h.
Definition at line 500 of file DebugInfoMetadata.h.
Definition at line 501 of file DebugInfoMetadata.h.
Definition at line 494 of file DebugInfoMetadata.h.
Referenced by APInt(), DEFINE_MDNODE_GET(), and DEFINE_MDNODE_GET().
Definition at line 500 of file DebugInfoMetadata.h.
int64_t llvm::DIEnumerator::Value |
Definition at line 494 of file DebugInfoMetadata.h.
Definition at line 500 of file DebugInfoMetadata.h.
Definition at line 501 of file DebugInfoMetadata.h.