diff options
Diffstat (limited to 'llvm/lib')
-rw-r--r-- | llvm/lib/DebugInfo/DWARF/DWARFContext.cpp | 30 | ||||
-rw-r--r-- | llvm/lib/DebugInfo/DWARF/DWARFUnit.cpp | 2 |
2 files changed, 2 insertions, 30 deletions
diff --git a/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp b/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp index 24aa666fb81..bf0c4b01dc0 100644 --- a/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp +++ b/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp @@ -48,6 +48,7 @@ #include <cstdint> #include <map> #include <string> +#include <tuple> #include <utility> #include <vector> @@ -722,35 +723,6 @@ DWARFCompileUnit *DWARFContext::getCompileUnitForAddress(uint64_t Address) { return getCompileUnitForOffset(CUOffset); } -DWARFContext::DIEsForAddress DWARFContext::getDIEsForAddress(uint64_t Address) { - DIEsForAddress Result; - - DWARFCompileUnit *CU = getCompileUnitForAddress(Address); - if (!CU) - return Result; - - Result.CompileUnit = CU; - Result.FunctionDIE = CU->getSubroutineForAddress(Address); - - std::vector<DWARFDie> Worklist; - Worklist.push_back(Result.FunctionDIE); - while (!Worklist.empty()) { - DWARFDie DIE = Worklist.back(); - Worklist.pop_back(); - - if (DIE.getTag() == DW_TAG_lexical_block && - DIE.addressRangeContainsAddress(Address)) { - Result.BlockDIE = DIE; - break; - } - - for (auto Child : DIE) - Worklist.push_back(Child); - } - - return Result; -} - static bool getFunctionNameAndStartLineForAddress(DWARFCompileUnit *CU, uint64_t Address, FunctionNameKind Kind, diff --git a/llvm/lib/DebugInfo/DWARF/DWARFUnit.cpp b/llvm/lib/DebugInfo/DWARF/DWARFUnit.cpp index 98e548b8836..86451faa79d 100644 --- a/llvm/lib/DebugInfo/DWARF/DWARFUnit.cpp +++ b/llvm/lib/DebugInfo/DWARF/DWARFUnit.cpp @@ -440,7 +440,7 @@ DWARFDie DWARFUnit::getSibling(const DWARFDebugInfoEntry *Die) { // NULL DIEs don't have siblings. if (Die->getAbbreviationDeclarationPtr() == nullptr) return DWARFDie(); - + // Find the next DIE whose depth is the same as the Die's depth. for (size_t I = getDIEIndex(Die) + 1, EndIdx = DieArray.size(); I < EndIdx; ++I) { |