LLVM
8.0.1
|
#include "llvm/IR/DebugInfoMetadata.h"
Static Public Member Functions | |
static bool | classof (const Metadata *MD) |
![]() | |
static DIFlags | getFlag (StringRef Flag) |
static StringRef | getFlagString (DIFlags Flag) |
static DIFlags | splitFlags (DIFlags Flags, SmallVectorImpl< DIFlags > &SplitFlags) |
Split up a flags bitfield. More... | |
static bool | classof (const Metadata *MD) |
![]() | |
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 void | deleteTemporary (MDNode *N) |
Deallocate a node created by getTemporary. More... | |
template<class T > | |
static std::enable_if< std::is_base_of< MDNode, T >::value, T * >::type | replaceWithPermanent (std::unique_ptr< T, TempMDNodeDeleter > N) |
Replace a temporary node with a permanent one. More... | |
template<class T > | |
static std::enable_if< std::is_base_of< MDNode, T >::value, T * >::type | replaceWithUniqued (std::unique_ptr< T, TempMDNodeDeleter > N) |
Replace a temporary node with a uniqued one. More... | |
template<class T > | |
static std::enable_if< std::is_base_of< MDNode, T >::value, T * >::type | replaceWithDistinct (std::unique_ptr< T, TempMDNodeDeleter > N) |
Replace a temporary node with a distinct one. More... | |
static bool | classof (const Metadata *MD) |
Methods for support type inquiry through isa, cast, and dyn_cast: More... | |
static MDNode * | concatenate (MDNode *A, MDNode *B) |
Methods for metadata merging. More... | |
static MDNode * | intersect (MDNode *A, MDNode *B) |
static MDNode * | getMostGenericTBAA (MDNode *A, MDNode *B) |
static MDNode * | getMostGenericFPMath (MDNode *A, MDNode *B) |
static MDNode * | getMostGenericRange (MDNode *A, MDNode *B) |
static MDNode * | getMostGenericAliasScope (MDNode *A, MDNode *B) |
static MDNode * | getMostGenericAlignmentOrDereferenceable (MDNode *A, MDNode *B) |
Friends | |
class | LLVMContextImpl |
class | MDNode |
Additional Inherited Members | |
![]() | |
enum | DIFlags : uint32_t { FlagAccessibility = FlagPrivate | FlagProtected | FlagPublic, FlagPtrToMemberRep } |
Debug info flags. More... | |
![]() | |
using | op_iterator = const MDOperand * |
using | op_range = iterator_range< op_iterator > |
![]() | |
enum | MetadataKind |
![]() | |
using | mutable_op_range = iterator_range< MDOperand * > |
![]() | |
enum | StorageType { Uniqued, Distinct, Temporary } |
Active type of storage. More... | |
![]() | |
DINode (LLVMContext &C, unsigned ID, StorageType Storage, unsigned Tag, ArrayRef< Metadata *> Ops1, ArrayRef< Metadata *> Ops2=None) | |
~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. More... | |
![]() | |
MDNode (LLVMContext &Context, unsigned ID, StorageType Storage, ArrayRef< Metadata *> Ops1, ArrayRef< Metadata *> Ops2=None) | |
~MDNode ()=default | |
void * | operator new (size_t Size, unsigned NumOps) |
void | operator delete (void *Mem) |
void | operator delete (void *, unsigned) |
Required by std, but never called. More... | |
void | operator delete (void *, unsigned, bool) |
Required by std, but never called. More... | |
void | dropAllReferences () |
MDOperand * | mutable_begin () |
MDOperand * | mutable_end () |
mutable_op_range | mutable_operands () |
void | setOperand (unsigned I, Metadata *New) |
Set an operand. More... | |
void | storeDistinctInContext () |
![]() | |
Metadata (unsigned ID, StorageType Storage) | |
~Metadata ()=default | |
void | handleChangedOperand (void *, Metadata *) |
Default handling of a changed operand, which asserts. More... | |
![]() | |
static MDString * | getCanonicalMDString (LLVMContext &Context, StringRef S) |
![]() | |
template<class T , class StoreT > | |
static T * | storeImpl (T *N, StorageType Storage, StoreT &Store) |
template<class T > | |
static T * | storeImpl (T *N, StorageType Storage) |
![]() | |
unsigned char | Storage: 7 |
Storage flag for non-uniqued, otherwise unowned, metadata. More... | |
unsigned char | ImplicitCode: 1 |
unsigned short | SubclassData16 = 0 |
unsigned | SubclassData32 = 0 |
Definition at line 2817 of file DebugInfoMetadata.h.
Definition at line 2900 of file DebugInfoMetadata.h.
References llvm::Metadata::getMetadataID().
|
inline |
Definition at line 2866 of file DebugInfoMetadata.h.
llvm::DIObjCProperty::DEFINE_MDNODE_GET | ( | DIObjCProperty | , |
(StringRef Name, DIFile *File, unsigned Line, StringRef GetterName, StringRef SetterName, unsigned Attributes, DITypeRef Type) | , | ||
(Name, File, Line, GetterName, SetterName, Attributes, Type) | |||
) |
|
inline |
Definition at line 2869 of file DebugInfoMetadata.h.
Referenced by llvm::MDNodeKeyImpl< DIObjCProperty >::isKeyOf(), and rotateSign().
|
inline |
Definition at line 2882 of file DebugInfoMetadata.h.
References F().
|
inline |
Definition at line 2871 of file DebugInfoMetadata.h.
Referenced by llvm::DwarfUnit::addSourceLine(), and rotateSign().
|
inline |
Definition at line 2876 of file DebugInfoMetadata.h.
References F().
|
inline |
Definition at line 2872 of file DebugInfoMetadata.h.
|
inline |
Definition at line 2868 of file DebugInfoMetadata.h.
Referenced by llvm::DwarfUnit::addSourceLine(), llvm::MDNodeKeyImpl< DIObjCProperty >::isKeyOf(), and rotateSign().
|
inline |
Definition at line 2870 of file DebugInfoMetadata.h.
|
inline |
Definition at line 2895 of file DebugInfoMetadata.h.
Referenced by llvm::MDNodeKeyImpl< DIObjCProperty >::isKeyOf().
|
inline |
Definition at line 2896 of file DebugInfoMetadata.h.
Referenced by llvm::MDNodeKeyImpl< DIObjCProperty >::isKeyOf(), and rotateSign().
|
inline |
Definition at line 2894 of file DebugInfoMetadata.h.
Referenced by llvm::MDNodeKeyImpl< DIObjCProperty >::isKeyOf(), and rotateSign().
|
inline |
Definition at line 2897 of file DebugInfoMetadata.h.
Referenced by llvm::MDNodeKeyImpl< DIObjCProperty >::isKeyOf(), and rotateSign().
|
inline |
Definition at line 2898 of file DebugInfoMetadata.h.
Referenced by llvm::MDNodeKeyImpl< DIObjCProperty >::isKeyOf().
|
inline |
Definition at line 2873 of file DebugInfoMetadata.h.
Definition at line 2888 of file DebugInfoMetadata.h.
References F(), and llvm::None.
|
inline |
Definition at line 2874 of file DebugInfoMetadata.h.
Referenced by rotateSign().
|
friend |
Definition at line 2818 of file DebugInfoMetadata.h.
|
friend |
Definition at line 2819 of file DebugInfoMetadata.h.
Definition at line 2860 of file DebugInfoMetadata.h.
Definition at line 2860 of file DebugInfoMetadata.h.
Definition at line 2860 of file DebugInfoMetadata.h.
Definition at line 2860 of file DebugInfoMetadata.h.
Definition at line 2860 of file DebugInfoMetadata.h.
Definition at line 2860 of file DebugInfoMetadata.h.
Definition at line 2860 of file DebugInfoMetadata.h.
Definition at line 2860 of file DebugInfoMetadata.h.
MDString* llvm::DIObjCProperty::Name |
Definition at line 2860 of file DebugInfoMetadata.h.
Definition at line 2860 of file DebugInfoMetadata.h.
Definition at line 2860 of file DebugInfoMetadata.h.
Definition at line 2860 of file DebugInfoMetadata.h.
Definition at line 2860 of file DebugInfoMetadata.h.