Skip to content

Commit 069ba19

Browse files
authored
Merge pull request #39255 from JuliaLang/vc/assertions
Fix LLVM assertions
2 parents 367841a + b816edc commit 069ba19

File tree

1 file changed

+11
-3
lines changed

1 file changed

+11
-3
lines changed

src/jitlayers.cpp

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -726,7 +726,7 @@ JuliaOJIT::JuliaOJIT(TargetMachine &TM, LLVMContext *LLVMCtx)
726726
static void *atomic_hdl = jl_load_dynamic_library(libatomic, JL_RTLD_LOCAL, 0);
727727
if (atomic_hdl != NULL) {
728728
GlobalJD.addGenerator(
729-
std::move(*orc::DynamicLibrarySearchGenerator::Load(
729+
cantFail(orc::DynamicLibrarySearchGenerator::Load(
730730
libatomic,
731731
DL.getGlobalPrefix(),
732732
[&](const orc::SymbolStringPtr &S) {
@@ -814,13 +814,21 @@ JL_JITSymbol JuliaOJIT::findUnmangledSymbol(StringRef Name)
814814
uint64_t JuliaOJIT::getGlobalValueAddress(StringRef Name)
815815
{
816816
auto addr = findSymbol(getMangledName(Name), false);
817-
return addr ? cantFail(addr.getAddress()) : 0;
817+
if (!addr) {
818+
consumeError(addr.takeError());
819+
return 0;
820+
}
821+
return cantFail(addr.getAddress());
818822
}
819823

820824
uint64_t JuliaOJIT::getFunctionAddress(StringRef Name)
821825
{
822826
auto addr = findSymbol(getMangledName(Name), false);
823-
return addr ? cantFail(addr.getAddress()) : 0;
827+
if (!addr) {
828+
consumeError(addr.takeError());
829+
return 0;
830+
}
831+
return cantFail(addr.getAddress());
824832
}
825833

826834
static int globalUniqueGeneratedNames;

0 commit comments

Comments
 (0)