mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-12-05 10:17:36 +00:00
[DWARF] Move a couple of member functions to the DWARFUnit baseclass. NFC.
Reviewer: dblaikie Differential revision: https://reviews.llvm.org/D34765 llvm-svn: 306771
This commit is contained in:
parent
13e45b76fd
commit
0b90ef3d7b
@ -245,17 +245,6 @@ void DwarfCompileUnit::addRange(RangeSpan Range) {
|
||||
CURanges.back().setEnd(Range.getEnd());
|
||||
}
|
||||
|
||||
DIE::value_iterator
|
||||
DwarfCompileUnit::addSectionLabel(DIE &Die, dwarf::Attribute Attribute,
|
||||
const MCSymbol *Label, const MCSymbol *Sec) {
|
||||
if (Asm->MAI->doesDwarfUseRelocationsAcrossSections())
|
||||
return addLabel(Die, Attribute,
|
||||
DD->getDwarfVersion() >= 4 ? dwarf::DW_FORM_sec_offset
|
||||
: dwarf::DW_FORM_data4,
|
||||
Label);
|
||||
return addSectionDelta(Die, Attribute, Label, Sec);
|
||||
}
|
||||
|
||||
void DwarfCompileUnit::initStmtList() {
|
||||
// Define start line table label for each Compile Unit.
|
||||
MCSymbol *LineTableStartSym =
|
||||
@ -380,15 +369,6 @@ void DwarfCompileUnit::constructScopeDIE(
|
||||
FinalChildren.push_back(std::move(ScopeDIE));
|
||||
}
|
||||
|
||||
DIE::value_iterator
|
||||
DwarfCompileUnit::addSectionDelta(DIE &Die, dwarf::Attribute Attribute,
|
||||
const MCSymbol *Hi, const MCSymbol *Lo) {
|
||||
return Die.addValue(DIEValueAllocator, Attribute,
|
||||
DD->getDwarfVersion() >= 4 ? dwarf::DW_FORM_sec_offset
|
||||
: dwarf::DW_FORM_data4,
|
||||
new (DIEValueAllocator) DIEDelta(Hi, Lo));
|
||||
}
|
||||
|
||||
void DwarfCompileUnit::addScopeRangeList(DIE &ScopeDIE,
|
||||
SmallVector<RangeSpan, 2> Range) {
|
||||
const TargetLoweringObjectFile &TLOF = Asm->getObjFileLowering();
|
||||
|
@ -127,10 +127,6 @@ public:
|
||||
void addLocalLabelAddress(DIE &Die, dwarf::Attribute Attribute,
|
||||
const MCSymbol *Label);
|
||||
|
||||
/// addSectionDelta - Add a label delta attribute data and value.
|
||||
DIE::value_iterator addSectionDelta(DIE &Die, dwarf::Attribute Attribute,
|
||||
const MCSymbol *Hi, const MCSymbol *Lo);
|
||||
|
||||
DwarfCompileUnit &getCU() override { return *this; }
|
||||
|
||||
unsigned getOrCreateSourceID(StringRef FileName, StringRef DirName) override;
|
||||
@ -151,12 +147,6 @@ public:
|
||||
|
||||
void attachLowHighPC(DIE &D, const MCSymbol *Begin, const MCSymbol *End);
|
||||
|
||||
/// addSectionLabel - Add a Dwarf section label attribute data and value.
|
||||
///
|
||||
DIE::value_iterator addSectionLabel(DIE &Die, dwarf::Attribute Attribute,
|
||||
const MCSymbol *Label,
|
||||
const MCSymbol *Sec);
|
||||
|
||||
/// \brief Find DIE for the given subprogram and attach appropriate
|
||||
/// DW_AT_low_pc and DW_AT_high_pc attributes. If there are global
|
||||
/// variables in this scope then create and insert DIEs for these
|
||||
|
@ -1587,6 +1587,26 @@ void DwarfTypeUnit::emitHeader(bool UseOffsets) {
|
||||
sizeof(Ty->getOffset()));
|
||||
}
|
||||
|
||||
DIE::value_iterator
|
||||
DwarfUnit::addSectionDelta(DIE &Die, dwarf::Attribute Attribute,
|
||||
const MCSymbol *Hi, const MCSymbol *Lo) {
|
||||
return Die.addValue(DIEValueAllocator, Attribute,
|
||||
DD->getDwarfVersion() >= 4 ? dwarf::DW_FORM_sec_offset
|
||||
: dwarf::DW_FORM_data4,
|
||||
new (DIEValueAllocator) DIEDelta(Hi, Lo));
|
||||
}
|
||||
|
||||
DIE::value_iterator
|
||||
DwarfUnit::addSectionLabel(DIE &Die, dwarf::Attribute Attribute,
|
||||
const MCSymbol *Label, const MCSymbol *Sec) {
|
||||
if (Asm->MAI->doesDwarfUseRelocationsAcrossSections())
|
||||
return addLabel(Die, Attribute,
|
||||
DD->getDwarfVersion() >= 4 ? dwarf::DW_FORM_sec_offset
|
||||
: dwarf::DW_FORM_data4,
|
||||
Label);
|
||||
return addSectionDelta(Die, Attribute, Label, Sec);
|
||||
}
|
||||
|
||||
bool DwarfTypeUnit::isDwoUnit() const {
|
||||
// Since there are no skeleton type units, all type units are dwo type units
|
||||
// when split DWARF is being used.
|
||||
|
@ -291,6 +291,15 @@ public:
|
||||
|
||||
void constructTypeDIE(DIE &Buffer, const DICompositeType *CTy);
|
||||
|
||||
/// addSectionDelta - Add a label delta attribute data and value.
|
||||
DIE::value_iterator addSectionDelta(DIE &Die, dwarf::Attribute Attribute,
|
||||
const MCSymbol *Hi, const MCSymbol *Lo);
|
||||
|
||||
/// Add a Dwarf section label attribute data and value.
|
||||
DIE::value_iterator addSectionLabel(DIE &Die, dwarf::Attribute Attribute,
|
||||
const MCSymbol *Label,
|
||||
const MCSymbol *Sec);
|
||||
|
||||
protected:
|
||||
~DwarfUnit();
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user