class DIE

Declaration

class DIE : private IntrusiveBackListNode, public DIEValueList { /* full declaration omitted */ };

Description

A structured debug information entry. Has an abbreviation which describes its organization.

Declared at: llvm/include/llvm/CodeGen/DIE.h:712

Inherits from: IntrusiveBackListNode, DIEValueList

Method Overview

Inherited from DIEValueList:

Methods

DIE(const llvm::DIE& RHS)

Declared at: llvm/include/llvm/CodeGen/DIE.h:737

Parameters

const llvm::DIE& RHS

DIE(llvm::DIE&& RHS)

Declared at: llvm/include/llvm/CodeGen/DIE.h:738

Parameters

llvm::DIE&& RHS

DIE()

Declared at: llvm/include/llvm/CodeGen/DIE.h:736

llvm::DIE& addChild(llvm::DIE* Child)

Description

Add a child to the DIE.

Declared at: llvm/include/llvm/CodeGen/DIE.h:819

Parameters

llvm::DIE* Child

llvm::DIE& addChildFront(llvm::DIE* Child)

Declared at: llvm/include/llvm/CodeGen/DIE.h:826

Parameters

llvm::DIE* Child

llvm::DIE::const_child_range children() const

Declared at: llvm/include/llvm/CodeGen/DIE.h:763

llvm::DIE::child_range children()

Declared at: llvm/include/llvm/CodeGen/DIE.h:760

unsigned int computeOffsetsAndAbbrevs(
    const llvm::AsmPrinter* AP,
    llvm::DIEAbbrevSet& AbbrevSet,
    unsigned int CUOffset)

Description

Compute the offset of this DIE and all its children. This function gets called just before we are going to generate the debug information and gives each DIE a chance to figure out its CU relative DIE offset, unique its abbreviation and fill in the abbreviation code, and return the unit offset that points to where the next DIE will be emitted within the debug unit section. After this function has been called for all DIE objects, the DWARF can be generated since all DIEs will be able to properly refer to other DIE objects since all DIEs have calculated their offsets.

Declared at: llvm/include/llvm/CodeGen/DIE.h:798

Parameters

const llvm::AsmPrinter* AP
AsmPrinter to use when calculating sizes.
llvm::DIEAbbrevSet& AbbrevSet
the abbreviation used to unique DIE abbreviations.
unsigned int CUOffset
the compile/type unit relative offset in bytes.

Returns

the offset for the DIE that follows this DIE within the current compile/type unit.

void dump() const

Declared at: llvm/include/llvm/CodeGen/DIE.h:840

llvm::DIEValue findAttribute(
    dwarf::Attribute Attribute) const

Description

Find a value in the DIE with the attribute given. Returns a default-constructed DIEValue (where \a DIEValue::getType() gives \a DIEValue::isNone) if no such attribute exists.

Declared at: llvm/include/llvm/CodeGen/DIE.h:837

Parameters

dwarf::Attribute Attribute

llvm::DIEAbbrev generateAbbrev() const

Description

Generate the abbreviation for this DIE. Calculate the abbreviation for this, which should be uniqued and eventually used to call \a setAbbrevNumber().

Declared at: llvm/include/llvm/CodeGen/DIE.h:773

static llvm::DIE* get(
    llvm::BumpPtrAllocator& Alloc,
    dwarf::Tag Tag)

Declared at: llvm/include/llvm/CodeGen/DIE.h:742

Parameters

llvm::BumpPtrAllocator& Alloc
dwarf::Tag Tag

unsigned int getAbbrevNumber() const

Declared at: llvm/include/llvm/CodeGen/DIE.h:747

unsigned int getDebugSectionOffset() const

Description

Get the absolute offset within the .debug_info or .debug_types section for this DIE.

Declared at: llvm/include/llvm/CodeGen/DIE.h:780

unsigned int getOffset() const

Description

Get the compile/type unit relative offset of this DIE.

Declared at: llvm/include/llvm/CodeGen/DIE.h:750

llvm::DIE* getParent() const

Declared at: llvm/include/llvm/CodeGen/DIE.h:767

unsigned int getSize() const

Declared at: llvm/include/llvm/CodeGen/DIE.h:751

dwarf::Tag getTag() const

Declared at: llvm/include/llvm/CodeGen/DIE.h:748

llvm::DIEUnit* getUnit() const

Description

Climb up the parent chain to get the compile unit or type unit that this DIE belongs to.

Declared at: llvm/include/llvm/CodeGen/DIE.h:813

Returns

the DIEUnit that represents the compile or type unit that owns this DIE, or NULL if this DIE hasn't been added to a unit DIE.

const llvm::DIE* getUnitDie() const

Description

Climb up the parent chain to get the compile unit or type unit DIE that this DIE belongs to.

Declared at: llvm/include/llvm/CodeGen/DIE.h:806

Returns

the compile or type unit DIE that owns this DIE, or NULL if this DIE hasn't been added to a unit DIE.

bool hasChildren() const

Declared at: llvm/include/llvm/CodeGen/DIE.h:752

void print(llvm::raw_ostream& O,
           unsigned int IndentCount = 0) const

Declared at: llvm/include/llvm/CodeGen/DIE.h:839

Parameters

llvm::raw_ostream& O
unsigned int IndentCount = 0

void setAbbrevNumber(unsigned int I)

Description

Set the abbreviation number for this DIE.

Declared at: llvm/include/llvm/CodeGen/DIE.h:776

Parameters

unsigned int I

void setForceChildren(bool B)

Declared at: llvm/include/llvm/CodeGen/DIE.h:753

Parameters

bool B

void setOffset(unsigned int O)

Declared at: llvm/include/llvm/CodeGen/DIE.h:815

Parameters

unsigned int O

void setSize(unsigned int S)

Declared at: llvm/include/llvm/CodeGen/DIE.h:816

Parameters

unsigned int S