diff options
author | James Henderson <jh7370@my.bristol.ac.uk> | 2019-12-20 14:30:31 +0000 |
---|---|---|
committer | James Henderson <jh7370@my.bristol.ac.uk> | 2020-01-02 18:01:54 +0000 |
commit | bd402fc3f3e832395b89dda4a9b8392c6b0dd6fa (patch) | |
tree | dd3af656ef3cc90e9b373fd0e123cad388f4ebb5 | |
parent | 546c72a78b34966a17d37218d3a676d9eccf17f2 (diff) | |
download | bcm5719-llvm-bd402fc3f3e832395b89dda4a9b8392c6b0dd6fa.tar.gz bcm5719-llvm-bd402fc3f3e832395b89dda4a9b8392c6b0dd6fa.zip |
[DebugInfo][NFC] Use function_ref consistently in debug line parsing
This patch fixes an inconsistency where we were using std::function in
some places and function_ref in others to pass around the error handling
callback.
Reviewed by: MaskRay
Differential Revision: https://reviews.llvm.org/D71762
-rw-r--r-- | llvm/include/llvm/DebugInfo/DWARF/DWARFContext.h | 2 | ||||
-rw-r--r-- | llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h | 17 | ||||
-rw-r--r-- | llvm/lib/DebugInfo/DWARF/DWARFContext.cpp | 2 | ||||
-rw-r--r-- | llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp | 4 |
4 files changed, 12 insertions, 13 deletions
diff --git a/llvm/include/llvm/DebugInfo/DWARF/DWARFContext.h b/llvm/include/llvm/DebugInfo/DWARF/DWARFContext.h index f0896b1fc5a..a2a10d23433 100644 --- a/llvm/include/llvm/DebugInfo/DWARF/DWARFContext.h +++ b/llvm/include/llvm/DebugInfo/DWARF/DWARFContext.h @@ -298,7 +298,7 @@ public: /// Report any recoverable parsing problems using the callback. Expected<const DWARFDebugLine::LineTable *> getLineTableForUnit(DWARFUnit *U, - std::function<void(Error)> RecoverableErrorCallback); + function_ref<void(Error)> RecoverableErrorCallback); DataExtractor getStringExtractor() const { return DataExtractor(DObj->getStrSection(), false, 0); diff --git a/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h b/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h index c2be8304ad8..d5b6c72c046 100644 --- a/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h +++ b/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h @@ -280,11 +280,10 @@ public: void clear(); /// Parse prologue and all rows. - Error parse( - DWARFDataExtractor &DebugLineData, uint64_t *OffsetPtr, - const DWARFContext &Ctx, const DWARFUnit *U, - std::function<void(Error)> RecoverableErrorCallback, - raw_ostream *OS = nullptr); + Error parse(DWARFDataExtractor &DebugLineData, uint64_t *OffsetPtr, + const DWARFContext &Ctx, const DWARFUnit *U, + function_ref<void(Error)> RecoverableErrorCallback, + raw_ostream *OS = nullptr); using RowVector = std::vector<Row>; using RowIter = RowVector::const_iterator; @@ -309,10 +308,10 @@ public: }; const LineTable *getLineTable(uint64_t Offset) const; - Expected<const LineTable *> getOrParseLineTable( - DWARFDataExtractor &DebugLineData, uint64_t Offset, - const DWARFContext &Ctx, const DWARFUnit *U, - std::function<void(Error)> RecoverableErrorCallback); + Expected<const LineTable *> + getOrParseLineTable(DWARFDataExtractor &DebugLineData, uint64_t Offset, + const DWARFContext &Ctx, const DWARFUnit *U, + function_ref<void(Error)> RecoverableErrorCallback); /// Helper to allow for parsing of an entire .debug_line section in sequence. class SectionParser { diff --git a/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp b/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp index e452c7636b1..aaa6d5250f2 100644 --- a/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp +++ b/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp @@ -874,7 +874,7 @@ DWARFContext::getLineTableForUnit(DWARFUnit *U) { } Expected<const DWARFDebugLine::LineTable *> DWARFContext::getLineTableForUnit( - DWARFUnit *U, std::function<void(Error)> RecoverableErrorCallback) { + DWARFUnit *U, function_ref<void(Error)> RecoverableErrorCallback) { if (!Line) Line.reset(new DWARFDebugLine); diff --git a/llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp b/llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp index cf31f5e57a4..8892739d55f 100644 --- a/llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp +++ b/llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp @@ -514,7 +514,7 @@ DWARFDebugLine::getLineTable(uint64_t Offset) const { Expected<const DWARFDebugLine::LineTable *> DWARFDebugLine::getOrParseLineTable( DWARFDataExtractor &DebugLineData, uint64_t Offset, const DWARFContext &Ctx, - const DWARFUnit *U, std::function<void(Error)> RecoverableErrorCallback) { + const DWARFUnit *U, function_ref<void(Error)> RecoverableErrorCallback) { if (!DebugLineData.isValidOffset(Offset)) return createStringError(errc::invalid_argument, "offset 0x%8.8" PRIx64 " is not a valid debug line section offset", @@ -535,7 +535,7 @@ Expected<const DWARFDebugLine::LineTable *> DWARFDebugLine::getOrParseLineTable( Error DWARFDebugLine::LineTable::parse( DWARFDataExtractor &DebugLineData, uint64_t *OffsetPtr, const DWARFContext &Ctx, const DWARFUnit *U, - std::function<void(Error)> RecoverableErrorCallback, raw_ostream *OS) { + function_ref<void(Error)> RecoverableErrorCallback, raw_ostream *OS) { const uint64_t DebugLineOffset = *OffsetPtr; clear(); |