10 #ifndef LLVM_LIB_CODEGEN_ASMPRINTER_DWARFFILE_H
11 #define LLVM_LIB_CODEGEN_ASMPRINTER_DWARFFILE_H
46 std::vector<DIEAbbrev *> Abbreviations;
84 void addUnit(std::unique_ptr<DwarfUnit> U);
103 return ScopeVariables;
107 return AbstractSPDies;
111 DITypeNodeToDieMap.insert(std::make_pair(TypeMD, Die));
114 return DITypeNodeToDieMap.lookup(TypeMD);
Instances of this class represent a uniqued identifier for a section in the current translation unit...
DwarfFile(AsmPrinter *AP, StringRef Pref, BumpPtrAllocator &DA)
DenseMap< LexicalScope *, SmallVector< DbgVariable *, 8 > > & getScopeVariables()
LexicalScope - This class is used to track scope information.
This file defines the MallocAllocator and BumpPtrAllocator interfaces.
This class consists of common code factored out of the SmallVector class to reduce code duplication b...
DenseMap< const MDNode *, DIE * > & getAbstractSPDies()
This class is used to track local variable information.
DwarfStringPool & getStringPool()
Returns the string pool.
Allocate memory in an ever growing pool, as if by bump-pointer.
DIE - A structured debug information entry.
This class is intended to be used as a driving class for all asm writers.
void emitUnits(bool UseOffsets)
Emit all of the units to the section listed with the given abbreviation section.
FoldingSet - This template class is used to instantiate a specialized implementation of the folding s...
void insertDIE(const MDNode *TypeMD, DIE *Die)
This is a 'vector' (really, a variable-sized array), optimized for the case when the array is small...
DIEAbbrev & assignAbbrevNumber(DIE &Die)
Define a unique number for the abbreviation.
void computeSizeAndOffsets()
Compute the size and offset of all the DIEs.
void emitAbbrevs(MCSection *)
Emit a set of abbreviations to the specific section.
bool addScopeVariable(LexicalScope *LS, DbgVariable *Var)
DIEAbbrev - Dwarf abbreviation, describes the organization of a debug information object...
DIE * getDIE(const MDNode *TypeMD)
const SmallVectorImpl< std::unique_ptr< DwarfUnit > > & getUnits()
unsigned computeSizeAndOffset(DIE &Die, unsigned Offset)
Compute the size and offset of a DIE given an incoming Offset.
void emitStrings(MCSection *StrSection, MCSection *OffsetSection=nullptr)
Emit all of the strings to the section given.
void addUnit(std::unique_ptr< DwarfUnit > U)
Add a unit to the list of CUs.
StringRef - Represent a constant reference to a string, i.e.