From 76ebaf263b20619b3416fbaa715fea25735bfe30 Mon Sep 17 00:00:00 2001 From: Steven Wu Date: Wed, 26 Oct 2022 15:13:00 -0700 Subject: [PATCH] [LTO] Fix lto_module_create_in_codegen_context return value on error According to the documentation, lto_module_create_in_codegen_context should return NULL on error but currently it is accidentally return error_code. Since this is a bug fix and it seems to be a one-off bug that only affects this API, there is no need to bump API version. rdar://101505192 Reviewed By: pete Differential Revision: https://reviews.llvm.org/D136769 --- llvm/tools/lto/lto.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/llvm/tools/lto/lto.cpp b/llvm/tools/lto/lto.cpp index ff5c2c6c1a374..1402565e27cf1 100644 --- a/llvm/tools/lto/lto.cpp +++ b/llvm/tools/lto/lto.cpp @@ -290,6 +290,8 @@ lto_module_t lto_module_create_in_codegen_context(const void *mem, codegen::InitTargetOptionsFromCodeGenFlags(Triple()); ErrorOr> M = LTOModule::createFromBuffer( unwrap(cg)->getContext(), mem, length, Options, StringRef(path)); + if (!M) + return nullptr; return wrap(M->release()); }