class GenericDINode

Declaration

class GenericDINode : public DINode { /* full declaration omitted */ };

Description

Generic tagged DWARF-like metadata node. An un-specialized DWARF-like metadata node. The first operand is a (possibly empty) null-separated \a MDString header that contains arbitrary fields. The remaining operands are \a dwarf_operands(), and are pointers to other metadata.

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:227

Inherits from: DINode

Member Variables

Inherited from Metadata:

protected Storage
protected SubclassData1
protected SubclassData16 = 0
protected SubclassData32 = 0

Method Overview

  • private GenericDINode(llvm::LLVMContext & C, llvm::Metadata::StorageType Storage, unsigned int Hash, unsigned int Tag, ArrayRef<llvm::Metadata *> Ops1, ArrayRef<llvm::Metadata *> Ops2)
  • public static bool classof(const llvm::Metadata * MD)
  • public llvm::TempGenericDINode clone() const
  • private llvm::TempGenericDINode cloneImpl() const
  • public llvm::MDNode::op_iterator dwarf_op_begin() const
  • public llvm::MDNode::op_iterator dwarf_op_end() const
  • public llvm::MDNode::op_range dwarf_operands() const
  • public const llvm::MDOperand & getDwarfOperand(unsigned int I) const
  • public unsigned int getHash() const
  • public llvm::StringRef getHeader() const
  • private static llvm::GenericDINode * getImpl(llvm::LLVMContext & Context, unsigned int Tag, llvm::StringRef Header, ArrayRef<llvm::Metadata *> DwarfOps, llvm::Metadata::StorageType Storage, bool ShouldCreate = true)
  • private static llvm::GenericDINode * getImpl(llvm::LLVMContext & Context, unsigned int Tag, llvm::MDString * Header, ArrayRef<llvm::Metadata *> DwarfOps, llvm::Metadata::StorageType Storage, bool ShouldCreate = true)
  • public unsigned int getNumDwarfOperands() const
  • public llvm::MDString * getRawHeader() const
  • public dwarf::Tag getTag() const
  • private void recalculateHash()
  • public void replaceDwarfOperandWith(unsigned int I, llvm::Metadata * New)
  • private void setHash(unsigned int Hash)
  • private ~GenericDINode()

Inherited from DINode:

Inherited from MDNode:

Inherited from Metadata:

Methods

GenericDINode(llvm::LLVMContext& C,
              llvm::Metadata::StorageType Storage,
              unsigned int Hash,
              unsigned int Tag,
              ArrayRef<llvm::Metadata*> Ops1,
              ArrayRef<llvm::Metadata*> Ops2)

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:231

Parameters

llvm::LLVMContext& C
llvm::Metadata::StorageType Storage
unsigned int Hash
unsigned int Tag
ArrayRef<llvm::Metadata*> Ops1
ArrayRef<llvm::Metadata*> Ops2

static bool classof(const llvm::Metadata* MD)

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:291

Parameters

const llvm::Metadata* MD

llvm::TempGenericDINode clone() const

Description

Return a (temporary) clone of this.

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:271

llvm::TempGenericDINode cloneImpl() const

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:253

llvm::MDNode::op_iterator dwarf_op_begin() const

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:277

llvm::MDNode::op_iterator dwarf_op_end() const

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:278

llvm::MDNode::op_range dwarf_operands() const

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:279

const llvm::MDOperand& getDwarfOperand(
    unsigned int I) const

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:284

Parameters

unsigned int I

unsigned int getHash() const

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:259

llvm::StringRef getHeader() const

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:274

static llvm::GenericDINode* getImpl(
    llvm::LLVMContext& Context,
    unsigned int Tag,
    llvm::StringRef Header,
    ArrayRef<llvm::Metadata*> DwarfOps,
    llvm::Metadata::StorageType Storage,
    bool ShouldCreate = true)

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:242

Parameters

llvm::LLVMContext& Context
unsigned int Tag
llvm::StringRef Header
ArrayRef<llvm::Metadata*> DwarfOps
llvm::Metadata::StorageType Storage
bool ShouldCreate = true

static llvm::GenericDINode* getImpl(
    llvm::LLVMContext& Context,
    unsigned int Tag,
    llvm::MDString* Header,
    ArrayRef<llvm::Metadata*> DwarfOps,
    llvm::Metadata::StorageType Storage,
    bool ShouldCreate = true)

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:249

Parameters

llvm::LLVMContext& Context
unsigned int Tag
llvm::MDString* Header
ArrayRef<llvm::Metadata*> DwarfOps
llvm::Metadata::StorageType Storage
bool ShouldCreate = true

unsigned int getNumDwarfOperands() const

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:283

llvm::MDString* getRawHeader() const

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:275

dwarf::Tag getTag() const

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:273

void recalculateHash()

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:240

void replaceDwarfOperandWith(unsigned int I,
                             llvm::Metadata* New)

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:287

Parameters

unsigned int I
llvm::Metadata* New

void setHash(unsigned int Hash)

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:239

Parameters

unsigned int Hash

~GenericDINode()

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:237