diff options
author | Fangrui Song <maskray@google.com> | 2019-05-16 11:33:48 +0000 |
---|---|---|
committer | Fangrui Song <maskray@google.com> | 2019-05-16 11:33:48 +0000 |
commit | a076ec54bee20c423cf710ea2818d01df84e28b0 (patch) | |
tree | 9349552e719590d0d902eb3e688645141e47d9e3 /llvm/lib/DebugInfo/DWARF/DWARFContext.cpp | |
parent | 671fc5f3f44986f7d20c3fcf2126cfad39b1adaf (diff) | |
download | bcm5719-llvm-a076ec54bee20c423cf710ea2818d01df84e28b0.tar.gz bcm5719-llvm-a076ec54bee20c423cf710ea2818d01df84e28b0.zip |
[Object] Change object::SectionRef::getContents() to return Expected<StringRef>
Expected<ArrayRef<uint8_t>> may be better but use Expected<StringRef> for now.
Follow-up of D61781.
llvm-svn: 360876
Diffstat (limited to 'llvm/lib/DebugInfo/DWARF/DWARFContext.cpp')
-rw-r--r-- | llvm/lib/DebugInfo/DWARF/DWARFContext.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp b/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp index 720fadb0dc7..160a171176a 100644 --- a/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp +++ b/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp @@ -1410,8 +1410,14 @@ public: // Try to obtain an already relocated version of this section. // Else use the unrelocated section from the object file. We'll have to // apply relocations ourselves later. - if (!L || !L->getLoadedSectionContents(*RelocatedSection, Data)) - Section.getContents(Data); + if (!L || !L->getLoadedSectionContents(*RelocatedSection, Data)) { + Expected<StringRef> E = Section.getContents(); + if (E) + Data = *E; + else + // maybeDecompress below will error. + consumeError(E.takeError()); + } if (auto Err = maybeDecompress(Section, Name, Data)) { ErrorPolicy EP = HandleError(createError( |