LLVM  6.0.0svn
Public Member Functions | Static Public Attributes | Protected Member Functions | List of all members
llvm::DWARFTypeUnit Class Reference

#include "llvm/DebugInfo/DWARF/DWARFTypeUnit.h"

Inheritance diagram for llvm::DWARFTypeUnit:
Inheritance graph
Collaboration diagram for llvm::DWARFTypeUnit:
Collaboration graph

Public Member Functions

 DWARFTypeUnit (DWARFContext &Context, const DWARFSection &Section, const DWARFDebugAbbrev *DA, const DWARFSection *RS, StringRef SS, const DWARFSection &SOS, const DWARFSection *AOS, const DWARFSection &LS, bool LE, bool IsDWO, const DWARFUnitSectionBase &UnitSection, const DWARFUnitIndex::Entry *Entry)
uint32_t getHeaderSize () const override
 Size in bytes of the unit header. More...
void dump (raw_ostream &OS, DIDumpOptions DumpOpts={})
- Public Member Functions inherited from llvm::DWARFUnit
 DWARFUnit (DWARFContext &Context, const DWARFSection &Section, const DWARFDebugAbbrev *DA, const DWARFSection *RS, StringRef SS, const DWARFSection &SOS, const DWARFSection *AOS, const DWARFSection &LS, bool LE, bool IsDWO, const DWARFUnitSectionBase &UnitSection, const DWARFUnitIndex::Entry *IndexEntry=nullptr)
virtual ~DWARFUnit ()
DWARFContextgetContext () const
const DWARFSectiongetLineSection () const
StringRef getStringSection () const
const DWARFSectiongetStringOffsetSection () const
void setAddrOffsetSection (const DWARFSection *AOS, uint32_t Base)
void updateAddressDieMap (DWARFDie Die)
 Recursively update address to Die map. More...
void setRangesSection (const DWARFSection *RS, uint32_t Base)
bool getAddrOffsetSectionItem (uint32_t Index, uint64_t &Result) const
bool getStringOffsetSectionItem (uint32_t Index, uint64_t &Result) const
DWARFDataExtractor getDebugInfoExtractor () const
DataExtractor getStringExtractor () const
bool extract (DataExtractor debug_info, uint32_t *offset_ptr)
bool extractRangeList (uint32_t RangeListOffset, DWARFDebugRangeList &RangeList) const
 extractRangeList - extracts the range list referenced by this compile unit from .debug_ranges section. More...
void clear ()
uint32_t getOffset () const
uint32_t getNextUnitOffset () const
uint32_t getLength () const
const DWARFFormParamsgetFormParams () const
uint16_t getVersion () const
dwarf::DwarfFormat getFormat () const
uint8_t getAddressByteSize () const
uint8_t getRefAddrByteSize () const
uint8_t getDwarfOffsetByteSize () const
const DWARFAbbreviationDeclarationSetgetAbbreviations () const
uint8_t getUnitType () const
llvm::Optional< BaseAddressgetBaseAddress () const
void setBaseAddress (BaseAddress BaseAddr)
DWARFDie getUnitDIE (bool ExtractUnitDIEOnly=true)
const chargetCompilationDir ()
Optional< uint64_t > getDWOId ()
void collectAddressRanges (DWARFAddressRangesVector &CURanges)
void getInlinedChainForAddress (uint64_t Address, SmallVectorImpl< DWARFDie > &InlinedChain)
 getInlinedChainForAddress - fetches inlined chain for a given address. More...
const DWARFUnitSectionBasegetUnitSection () const
 getUnitSection - Return the DWARFUnitSection containing this unit. More...
unsigned getNumDIEs ()
 Returns the number of DIEs in the unit. More...
uint32_t getDIEIndex (const DWARFDie &D)
 Return the index of a DIE inside the unit's DIE vector. More...
DWARFDie getDIEAtIndex (unsigned Index)
 Return the DIE object at the given index. More...
DWARFDie getParent (const DWARFDebugInfoEntry *Die)
DWARFDie getSibling (const DWARFDebugInfoEntry *Die)
DWARFDie getDIEForOffset (uint32_t Offset)
 Return the DIE object for a given offset inside the unit's DIE vector. More...
uint32_t getLineTableOffset () const
die_iterator_range dies ()

Static Public Attributes

static const DWARFSectionKind Section = DW_SECT_TYPES

Protected Member Functions

bool extractImpl (DataExtractor debug_info, uint32_t *offset_ptr) override

Additional Inherited Members

- Static Public Member Functions inherited from llvm::DWARFUnit
static bool isMatchingUnitTypeAndTag (uint8_t UnitType, dwarf::Tag Tag)
static uint32_t getDWARF5HeaderSize (uint8_t UnitType)
 Return the number of bytes for the header of a unit of UnitType type. More...

Detailed Description

Definition at line 26 of file DWARFTypeUnit.h.

Constructor & Destructor Documentation

◆ DWARFTypeUnit()

llvm::DWARFTypeUnit::DWARFTypeUnit ( DWARFContext Context,
const DWARFSection Section,
const DWARFDebugAbbrev DA,
const DWARFSection RS,
StringRef  SS,
const DWARFSection SOS,
const DWARFSection AOS,
const DWARFSection LS,
bool  LE,
bool  IsDWO,
const DWARFUnitSectionBase UnitSection,
const DWARFUnitIndex::Entry Entry 

Definition at line 32 of file DWARFTypeUnit.h.

Member Function Documentation

◆ dump()

void DWARFTypeUnit::dump ( raw_ostream OS,
DIDumpOptions  DumpOpts = {} 

◆ extractImpl()

bool DWARFTypeUnit::extractImpl ( DataExtractor  debug_info,
uint32_t offset_ptr 

◆ getHeaderSize()

uint32_t llvm::DWARFTypeUnit::getHeaderSize ( ) const

Size in bytes of the unit header.

Reimplemented from llvm::DWARFUnit.

Definition at line 41 of file DWARFTypeUnit.h.

References dump(), and llvm::DWARFUnit::getHeaderSize().

Member Data Documentation

◆ Section

const DWARFSectionKind llvm::DWARFTypeUnit::Section = DW_SECT_TYPES

Definition at line 46 of file DWARFTypeUnit.h.

The documentation for this class was generated from the following files: