mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-19 18:24:00 +00:00
Reapply r198196 with a fix to zero initialize the skeleton pointer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@198199 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -43,7 +43,7 @@ GenerateDwarfTypeUnits("generate-type-units", cl::Hidden,
|
||||
DwarfUnit::DwarfUnit(unsigned UID, DIE *D, DICompileUnit Node, AsmPrinter *A,
|
||||
DwarfDebug *DW, DwarfFile *DWU)
|
||||
: UniqueID(UID), Node(Node), UnitDie(D), DebugInfoOffset(0), Asm(A), DD(DW),
|
||||
DU(DWU), IndexTyDie(0), Section(0) {
|
||||
DU(DWU), IndexTyDie(0), Section(0), Skeleton(0) {
|
||||
DIEIntegerOne = new (DIEValueAllocator) DIEInteger(1);
|
||||
}
|
||||
|
||||
@ -293,6 +293,23 @@ void DwarfCompileUnit::addLabelAddress(DIE *Die, dwarf::Attribute Attribute,
|
||||
}
|
||||
}
|
||||
|
||||
/// addLocalLabelAddress - Add a dwarf label attribute data and value using
|
||||
/// DW_FORM_addr.
|
||||
void DwarfCompileUnit::addLocalLabelAddress(DIE *Die,
|
||||
dwarf::Attribute Attribute,
|
||||
MCSymbol *Label) {
|
||||
if (Label)
|
||||
DD->addArangeLabel(SymbolCU(this, Label));
|
||||
|
||||
if (Label != NULL) {
|
||||
DIEValue *Value = new (DIEValueAllocator) DIELabel(Label);
|
||||
Die->addValue(Attribute, dwarf::DW_FORM_addr, Value);
|
||||
} else {
|
||||
DIEValue *Value = new (DIEValueAllocator) DIEInteger(0);
|
||||
Die->addValue(Attribute, dwarf::DW_FORM_addr, Value);
|
||||
}
|
||||
}
|
||||
|
||||
/// addOpAddress - Add a dwarf op address data and value using the
|
||||
/// form given and an op of either DW_FORM_addr or DW_FORM_GNU_addr_index.
|
||||
///
|
||||
|
Reference in New Issue
Block a user