Displaying 2 results from an estimated 2 matches for "dwarfbuilder".
2016 Feb 05
6
Reducing DWARF emitter memory consumption
...Data[Offset...Offset+Size]
};
// This would be used to represent things like pointers to .debug_loc/.debug_str or to functions/globals
struct ExternalReloc {
size_t Offset; // offset within DIEBlock::Data
MCSymbol *Target; // the offset within Target is at Data[Offset...Offset+Size]
};
struct DwarfBuilder {
DIEBlock *First;
DIEBlock *Cur;
DenseMap<DISubprogram *, DIEBlock *> Subprograms;
DenseMap<DIType *, DIEBlock *> Types;
DwarfBuilder() : First(new DIEBlock), Cur(First) {}
// builder implementation goes here...
};
Normally, the DwarfBuilder will just emit bytes to Cur->...
2016 Feb 06
2
Reducing DWARF emitter memory consumption
...ointers to
> > .debug_loc/.debug_str or to functions/globals
> > struct ExternalReloc {
> > size_t Offset; // offset within DIEBlock::Data
> > MCSymbol *Target; // the offset within Target is at
> > Data[Offset...Offset+Size]
> > };
> >
> > struct DwarfBuilder {
> > DIEBlock *First;
> > DIEBlock *Cur;
> > DenseMap<DISubprogram *, DIEBlock *> Subprograms;
> > DenseMap<DIType *, DIEBlock *> Types;
> > DwarfBuilder() : First(new DIEBlock), Cur(First) {}
> > // builder implementation goes here...
&g...