[llvm] Expose DWARFDebugLine::LineTable::getFileNameEntry

Summary:
This is useful for scenarios where Prologue was directly used and DWARF
5 awareness is required. The current alternative would be to either
duplicate the logic in getFileNameEntry, or to use getFileNameByIndex.
The latter isn't quite an in-place replacement - it performs some
processing, and it produces a string instead of a StringRef, meaning
the caller needs to handle its lifetime.

Reviewers: tamur, dblaikie, JDevlieghere

Reviewed By: tamur, JDevlieghere

Subscribers: aprantl, llvm-commits

Tags: #llvm, #debug-info

Differential Revision: https://reviews.llvm.org/D63228

llvm-svn: 363210
This commit is contained in:
Mircea Trofin 2019-06-12 22:02:07 +00:00
parent c45f592b98
commit 781a0dc58d
1 changed files with 5 additions and 2 deletions

View File

@ -268,6 +268,11 @@ public:
std::function<void(Error)> RecoverableErrorCallback,
raw_ostream *OS = nullptr);
/// Get DWARF-version aware access to the file name entry at the provided
/// index.
const llvm::DWARFDebugLine::FileNameEntry &
getFileNameEntry(uint64_t Index) const;
using RowVector = std::vector<Row>;
using RowIter = RowVector::const_iterator;
using SequenceVector = std::vector<Sequence>;
@ -278,8 +283,6 @@ public:
SequenceVector Sequences;
private:
const llvm::DWARFDebugLine::FileNameEntry &
getFileNameEntry(uint64_t Index) const;
uint32_t findRowInSeq(const DWARFDebugLine::Sequence &Seq,
object::SectionedAddress Address) const;
Optional<StringRef>