diff options
author | Hans Wennborg <hans@hanshq.net> | 2019-05-16 12:08:34 +0000 |
---|---|---|
committer | Hans Wennborg <hans@hanshq.net> | 2019-05-16 12:08:34 +0000 |
commit | 4da9ff9fcfe8987472dc894489597bd338aac85e (patch) | |
tree | 21bc0332451ec4093db5da5255ee98577ac5926e /llvm/lib/ExecutionEngine | |
parent | a8f88c388f75cb03bd21beb0b64f87d8a8727254 (diff) | |
download | bcm5719-llvm-4da9ff9fcfe8987472dc894489597bd338aac85e.tar.gz bcm5719-llvm-4da9ff9fcfe8987472dc894489597bd338aac85e.zip |
Revert r360876 "[Object] Change object::SectionRef::getContents() to return Expected<StringRef>"
It broke the Clang build, see llvm-commits thread.
> Expected<ArrayRef<uint8_t>> may be better but use Expected<StringRef> for now.
>
> Follow-up of D61781.
llvm-svn: 360878
Diffstat (limited to 'llvm/lib/ExecutionEngine')
-rw-r--r-- | llvm/lib/ExecutionEngine/JITLink/MachOAtomGraphBuilder.cpp | 10 | ||||
-rw-r--r-- | llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyld.cpp | 6 |
2 files changed, 7 insertions, 9 deletions
diff --git a/llvm/lib/ExecutionEngine/JITLink/MachOAtomGraphBuilder.cpp b/llvm/lib/ExecutionEngine/JITLink/MachOAtomGraphBuilder.cpp index 1501c7ad0bc..d1cf8755e75 100644 --- a/llvm/lib/ExecutionEngine/JITLink/MachOAtomGraphBuilder.cpp +++ b/llvm/lib/ExecutionEngine/JITLink/MachOAtomGraphBuilder.cpp @@ -136,14 +136,14 @@ Error MachOAtomGraphBuilder::parseSections() { if (!SecRef.isVirtual()) { // If this section has content then record it. - Expected<StringRef> Content = SecRef.getContents(); - if (!Content) - return Content.takeError(); - if (Content->size() != SecRef.getSize()) + StringRef Content; + if (auto EC = SecRef.getContents(Content)) + return errorCodeToError(EC); + if (Content.size() != SecRef.getSize()) return make_error<JITLinkError>("Section content size does not match " "declared size for " + Name); - MachOSec.setContent(*Content); + MachOSec.setContent(Content); } else { // If this is a zero-fill section then just record the size. MachOSec.setZeroFill(SecRef.getSize()); diff --git a/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyld.cpp b/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyld.cpp index f99868db443..2fd677ab13a 100644 --- a/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyld.cpp +++ b/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyld.cpp @@ -792,10 +792,8 @@ RuntimeDyldImpl::emitSection(const ObjectFile &Obj, if (!IsVirtual && !IsZeroInit) { // In either case, set the location of the unrelocated section in memory, // since we still process relocations for it even if we're not applying them. - if (Expected<StringRef> E = Section.getContents()) - data = *E; - else - return E.takeError(); + if (auto EC = Section.getContents(data)) + return errorCodeToError(EC); pData = data.data(); } |