Skip to content

Commit

Permalink
Merge pull request #1 from ezhulenev/ezhulenev-RTDyldObjectLinkingLay…
Browse files Browse the repository at this point in the history
…er-asan

Fix asan error in RTDyldObjectLinkingLayer.cpp
  • Loading branch information
ezhulenev authored Aug 27, 2024
2 parents c2cac7e + 977e11f commit 01fb20b
Showing 1 changed file with 7 additions and 3 deletions.
10 changes: 7 additions & 3 deletions llvm/lib/ExecutionEngine/Orc/RTDyldObjectLinkingLayer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@
//
//===----------------------------------------------------------------------===//

#include <memory>

#include "llvm/ExecutionEngine/Orc/RTDyldObjectLinkingLayer.h"
#include "llvm/Object/COFF.h"

Expand Down Expand Up @@ -184,19 +186,21 @@ void RTDyldObjectLinkingLayer::emit(
std::shared_ptr<MaterializationResponsibility> SharedR(std::move(R));
auto Deps = std::make_unique<SymbolDependenceMap>();

JITDylibSearchOrderResolver Resolver(*SharedR, *Deps);
auto Resolver =
std::make_unique<JITDylibSearchOrderResolver>(*SharedR, *Deps);

jitLinkForORC(
object::OwningBinary<object::ObjectFile>(std::move(*Obj), std::move(O)),
MemMgrRef, Resolver, ProcessAllSections,
MemMgrRef, *Resolver, ProcessAllSections,
[this, SharedR, &MemMgrRef, InternalSymbols](
const object::ObjectFile &Obj,
RuntimeDyld::LoadedObjectInfo &LoadedObjInfo,
std::map<StringRef, JITEvaluatedSymbol> ResolvedSymbols) {
return onObjLoad(*SharedR, Obj, MemMgrRef, LoadedObjInfo,
ResolvedSymbols, *InternalSymbols);
},
[this, SharedR, MemMgr = std::move(MemMgr), Deps = std::move(Deps)](
[this, SharedR, MemMgr = std::move(MemMgr), Deps = std::move(Deps),
Resolver = std::move(Resolver)](
object::OwningBinary<object::ObjectFile> Obj,
std::unique_ptr<RuntimeDyld::LoadedObjectInfo> LoadedObjInfo,
Error Err) mutable {
Expand Down

0 comments on commit 01fb20b

Please sign in to comment.