diff options
-rw-r--r-- | llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp b/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp index 59f15b07b38..d36794dc704 100644 --- a/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp +++ b/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp @@ -1480,7 +1480,8 @@ RuntimeDyldELF::processRelocationRef( // In the ELFv1 ABI, a function call may point to the .opd entry, // so the final symbol value is calculated based on the relocation // values in the .opd section. - findOPDEntrySection(Obj, ObjSectionToID, Value); + if (auto Err = findOPDEntrySection(Obj, ObjSectionToID, Value)) + return std::move(Err); } else { // In the ELFv2 ABI, a function symbol may provide a local entry // point, which must be used for direct calls. |