llvm/lib/DebugInfo
Frederic Riss b9f4e7d6e9 Turn local DWARFContext helpers getFileNameForUnit() and getFileLineInfoForCompileUnit() into full-blowm DWARFDebugLine::LineTable methods.
Summary:
getFileNameForUnit() is basically a wrapper around LineTable::getFileNameByIndex().
Fold its additional functionality (adding the DWARFUnit compilation dir) into
LineTable::getFileNameByIndex().

getFileLineInfoForCompileUnit() is a wrapper around getFileNameForUnit(). As
a function to search the line information by address, it seems natural to put
it in the LineTable also.

Before this commit only the Context with its private helpers could do Linetable
lookups. This newly exposed feature will be used by the DIE dumping code to
get access to file information referenced in DIE attributes.

This commit has already been partly reviewed in D5192 and contained an
additional and a bit controversial 'realpath' call that is left out of this
patch. We can reinstate that realpath code later if it is desirable.

Test Plan:
The patch contains no tests as it should be functionally equivalent to the
previous code. As requested in the last review, I checked if the relative
path handling copied from the Context to LineTable::getFileNameByIndex()
was covered, and indeed the symbolizer tests fail if it is removed.

Reviewers: dblaikie, echristo, aprantl, samsonov

Subscribers: llvm-commits

Differential Revision: http://reviews.llvm.org/D5354

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@218125 91177308-0d34-0410-b5e6-96231b3b80d8
2014-09-19 15:11:51 +00:00
..
CMakeLists.txt llvm-dwarfdump/libDebugInfo support for type units 2013-09-23 22:44:47 +00:00
DIContext.cpp Use a reference instead of a pointer. 2014-07-31 20:19:36 +00:00
DWARFAbbreviationDeclaration.cpp Use ctor instead of initializer list to appease Windows buildbots 2014-03-14 10:37:36 +00:00
DWARFAbbreviationDeclaration.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
DWARFCompileUnit.cpp Exract most of DWARFCompileUnit into a new DWARFUnit to prepare for the coming DWARFTypeUnit. 2013-09-23 22:44:40 +00:00
DWARFCompileUnit.h Introduce the DWARFUnitSection abstraction. 2014-09-15 07:50:27 +00:00
DWARFContext.cpp Turn local DWARFContext helpers getFileNameForUnit() and getFileLineInfoForCompileUnit() into full-blowm DWARFDebugLine::LineTable methods. 2014-09-19 15:11:51 +00:00
DWARFContext.h Introduce the DWARFUnitSection abstraction. 2014-09-15 07:50:27 +00:00
DWARFDebugAbbrev.cpp [DWARF parser] Cleanup code in DWARFDebugAbbrev. 2014-04-25 21:10:56 +00:00
DWARFDebugAbbrev.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
DWARFDebugAranges.cpp [DWARF parser] Fix broken address ranges construction. 2014-06-12 23:58:49 +00:00
DWARFDebugAranges.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
DWARFDebugArangeSet.cpp Make some assertions on constant expressions static. 2014-03-15 18:47:07 +00:00
DWARFDebugArangeSet.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
DWARFDebugFrame.cpp Revert "Introduce a string_ostream string builder facilty" 2014-06-26 22:52:05 +00:00
DWARFDebugFrame.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
DWARFDebugInfoEntry.cpp [dwarfdump] Dump DW_AT_(decl|call)_line attribute values as decimal values. 2014-09-05 07:21:50 +00:00
DWARFDebugInfoEntry.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
DWARFDebugLine.cpp Turn local DWARFContext helpers getFileNameForUnit() and getFileLineInfoForCompileUnit() into full-blowm DWARFDebugLine::LineTable methods. 2014-09-19 15:11:51 +00:00
DWARFDebugLine.h Turn local DWARFContext helpers getFileNameForUnit() and getFileLineInfoForCompileUnit() into full-blowm DWARFDebugLine::LineTable methods. 2014-09-19 15:11:51 +00:00
DWARFDebugLoc.cpp DebugInfo: Support debug_loc under fission 2014-03-25 01:44:02 +00:00
DWARFDebugLoc.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
DWARFDebugRangeList.cpp [DWARF parser] Refactor fetching DIE address ranges. 2014-04-18 17:25:46 +00:00
DWARFDebugRangeList.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
DWARFFormValue.cpp Fix build faliure introduced by r217129. 2014-09-04 06:35:09 +00:00
DWARFRelocMap.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
DWARFTypeUnit.cpp DWARFTypeUnit::dump(): Use PRIx64 to format uint64_t. 2013-09-24 03:23:07 +00:00
DWARFTypeUnit.h Introduce the DWARFUnitSection abstraction. 2014-09-15 07:50:27 +00:00
DWARFUnit.cpp Introduce the DWARFUnitSection abstraction. 2014-09-15 07:50:27 +00:00
DWARFUnit.h Fix DWARFUnitSection::getUnitForOffset(). 2014-09-18 09:38:15 +00:00
LLVMBuild.txt libDebugInfo depends on libObject nowadays. 2013-05-09 13:48:26 +00:00
Makefile
module.modulemap [modules] Add module maps for LLVM. These are not quite ready for prime-time 2014-05-21 02:46:14 +00:00