class DWARFAbbreviationDeclaration

Declaration

class DWARFAbbreviationDeclaration { /* full declaration omitted */ };

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h:27

Member Variables

private uint32_t Code
private dwarf::Tag Tag
private uint8_t CodeByteSize
private bool HasChildren
private llvm::DWARFAbbreviationDeclaration:: AttributeSpecVector AttributeSpecs
private Optional<llvm::DWARFAbbreviationDeclaration:: FixedSizeInfo> FixedAttributeSize
If this abbreviation has a fixed byte size then FixedAttributeSize member variable below will have a value.

Method Overview

Methods

DWARFAbbreviationDeclaration()

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h:86

llvm::DWARFAbbreviationDeclaration::
    attr_iterator_range
    attributes() const

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h:96

void clear()

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h:177

void dump(llvm::raw_ostream& OS) const

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h:169

Parameters

llvm::raw_ostream& OS

bool extract(llvm::DataExtractor Data,
             uint64_t* OffsetPtr)

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h:168

Parameters

llvm::DataExtractor Data
uint64_t* OffsetPtr

Optional<uint32_t> findAttributeIndex(
    dwarf::Attribute attr) const

Description

Get the index of the specified attribute. Searches the this abbreviation declaration for the index of the specified attribute.

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h:131

Parameters

dwarf::Attribute attr
DWARF attribute to search for.

Returns

Optional index of the attribute if found, None otherwise.

dwarf::Attribute getAttrByIndex(
    uint32_t idx) const

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h:109

Parameters

uint32_t idx

int64_t getAttrImplicitConstValueByIndex(
    uint32_t idx) const

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h:119

Parameters

uint32_t idx

bool getAttrIsImplicitConstByIndex(
    uint32_t idx) const

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h:114

Parameters

uint32_t idx

uint64_t getAttributeOffsetFromIndex(
    uint32_t AttrIndex,
    uint64_t DIEOffset,
    const llvm::DWARFUnit& U) const

Description

Compute an offset from a DIE specified by DIE offset and attribute index.

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h:154

Parameters

uint32_t AttrIndex
an index of DWARF attribute.
uint64_t DIEOffset
the DIE offset that points to the ULEB128 abbreviation code in the .debug_info data.
const llvm::DWARFUnit& U
the DWARFUnit the contains the DIE.

Returns

an offset of the attribute.

Optional<llvm::DWARFFormValue> getAttributeValue(
    const uint64_t DIEOffset,
    const dwarf::Attribute Attr,
    const llvm::DWARFUnit& U) const

Description

Extract a DWARF form value from a DIE specified by DIE offset. Extract an attribute value for a DWARFUnit given the DIE offset and the attribute.

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h:143

Parameters

const uint64_t DIEOffset
the DIE offset that points to the ULEB128 abbreviation code in the .debug_info data.
const dwarf::Attribute Attr
DWARF attribute to search for.
const llvm::DWARFUnit& U
the DWARFUnit the contains the DIE.

Returns

Optional DWARF form value if the attribute was extracted.

Optional<llvm::DWARFFormValue>
getAttributeValueFromOffset(
    uint32_t AttrIndex,
    uint64_t Offset,
    const llvm::DWARFUnit& U) const

Description

Extract a DWARF form value from a DIE speccified by attribute index and its offset.

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h:165

Parameters

uint32_t AttrIndex
an index of DWARF attribute.
uint64_t Offset
offset of the attribute.
const llvm::DWARFUnit& U
the DWARFUnit the contains the DIE.

Returns

Optional DWARF form value if the attribute was extracted.

uint32_t getCode() const

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h:88

uint8_t getCodeByteSize() const

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h:89

Optional<size_t> getFixedAttributesByteSize(
    const llvm::DWARFUnit& U) const

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h:174

Parameters

const llvm::DWARFUnit& U

dwarf::Form getFormByIndex(uint32_t idx) const

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h:100

Parameters

uint32_t idx

size_t getNumAttributes() const

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h:105

dwarf::Tag getTag() const

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h:90

bool hasChildren() const

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h:91