Exract most of DWARFCompileUnit into a new DWARFUnit to prepare for the coming DWARFTypeUnit.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191233 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
David Blaikie
2013-09-23 22:44:40 +00:00
parent f2058addc2
commit cd7c4980d4
10 changed files with 704 additions and 675 deletions

View File

@@ -283,7 +283,7 @@ void DWARFContext::parseCompileUnits() {
break;
}
CUs.push_back(CU.take());
offset = CUs.back()->getNextCompileUnitOffset();
offset = CUs.back()->getNextUnitOffset();
}
}
@@ -301,7 +301,7 @@ void DWARFContext::parseDWOCompileUnits() {
break;
}
DWOCUs.push_back(DWOCU.take());
offset = DWOCUs.back()->getNextCompileUnitOffset();
offset = DWOCUs.back()->getNextUnitOffset();
}
}
@@ -400,7 +400,7 @@ DILineInfo DWARFContext::getLineInfoForAddress(uint64_t Address,
CU->getInlinedChainForAddress(Address);
if (InlinedChain.DIEs.size() > 0) {
const DWARFDebugInfoEntryMinimal &TopFunctionDIE = InlinedChain.DIEs[0];
if (const char *Name = TopFunctionDIE.getSubroutineName(InlinedChain.CU))
if (const char *Name = TopFunctionDIE.getSubroutineName(InlinedChain.U))
FunctionName = Name;
}
}
@@ -433,7 +433,7 @@ DILineInfoTable DWARFContext::getLineInfoForAddressRange(uint64_t Address,
CU->getInlinedChainForAddress(Address);
if (InlinedChain.DIEs.size() > 0) {
const DWARFDebugInfoEntryMinimal &TopFunctionDIE = InlinedChain.DIEs[0];
if (const char *Name = TopFunctionDIE.getSubroutineName(InlinedChain.CU))
if (const char *Name = TopFunctionDIE.getSubroutineName(InlinedChain.U))
FunctionName = Name;
}
}
@@ -492,7 +492,7 @@ DIInliningInfo DWARFContext::getInliningInfoForAddress(uint64_t Address,
uint32_t Column = 0;
// Get function name if necessary.
if (Specifier.needs(DILineInfoSpecifier::FunctionName)) {
if (const char *Name = FunctionDIE.getSubroutineName(InlinedChain.CU))
if (const char *Name = FunctionDIE.getSubroutineName(InlinedChain.U))
FunctionName = Name;
}
if (Specifier.needs(DILineInfoSpecifier::FileLineInfo)) {
@@ -516,7 +516,7 @@ DIInliningInfo DWARFContext::getInliningInfoForAddress(uint64_t Address,
}
// Get call file/line/column of a current DIE.
if (i + 1 < n) {
FunctionDIE.getCallerFrame(InlinedChain.CU, CallFile, CallLine,
FunctionDIE.getCallerFrame(InlinedChain.U, CallFile, CallLine,
CallColumn);
}
}