forked from OSchip/llvm-project
Drop DwarfCompileUnit::getLocalLabel* in favor of just mapping through the skeleton explicitly.
Confusing to do this two different ways - I'm not too wedded to either one, but here goes. llvm-svn: 221076
This commit is contained in:
parent
f4bdc31271
commit
27e35f2302
|
@ -144,22 +144,6 @@ public:
|
|||
|
||||
void collectDeadVariables(DISubprogram SP);
|
||||
|
||||
/// If there's a skeleton then return the begin label for the skeleton unit,
|
||||
/// otherwise return the local label for this unit.
|
||||
MCSymbol *getLocalLabelBegin() const {
|
||||
if (Skeleton)
|
||||
return Skeleton->getLabelBegin();
|
||||
return getLabelBegin();
|
||||
}
|
||||
|
||||
/// If there's a skeleton then return the section symbol for the skeleton
|
||||
/// unit, otherwise return the section symbol for this unit.
|
||||
MCSymbol *getLocalSectionSym() const {
|
||||
if (Skeleton)
|
||||
return Skeleton->getSectionSym();
|
||||
return getSectionSym();
|
||||
}
|
||||
|
||||
/// Set the skeleton unit associated with this unit.
|
||||
void setSkeleton(DwarfCompileUnit &Skel) { Skeleton = &Skel; }
|
||||
|
||||
|
|
|
@ -1920,6 +1920,10 @@ void DwarfDebug::emitDebugARanges() {
|
|||
for (DwarfCompileUnit *CU : CUs) {
|
||||
std::vector<ArangeSpan> &List = Spans[CU];
|
||||
|
||||
// Describe the skeleton CU's offset and length, not the dwo file's.
|
||||
if (auto *Skel = CU->getSkeleton())
|
||||
CU = Skel;
|
||||
|
||||
// Emit size of content not including length itself.
|
||||
unsigned ContentSize =
|
||||
sizeof(int16_t) + // DWARF ARange version number
|
||||
|
@ -1942,7 +1946,7 @@ void DwarfDebug::emitDebugARanges() {
|
|||
Asm->OutStreamer.AddComment("DWARF Arange version number");
|
||||
Asm->EmitInt16(dwarf::DW_ARANGES_VERSION);
|
||||
Asm->OutStreamer.AddComment("Offset Into Debug Info Section");
|
||||
Asm->EmitSectionOffset(CU->getLocalLabelBegin(), CU->getLocalSectionSym());
|
||||
Asm->EmitSectionOffset(CU->getLabelBegin(), CU->getSectionSym());
|
||||
Asm->OutStreamer.AddComment("Address Size (in bytes)");
|
||||
Asm->EmitInt8(PtrSize);
|
||||
Asm->OutStreamer.AddComment("Segment Size (in bytes)");
|
||||
|
|
Loading…
Reference in New Issue