diff options
author | Lang Hames <lhames@gmail.com> | 2019-12-15 17:23:36 -0800 |
---|---|---|
committer | Lang Hames <lhames@gmail.com> | 2019-12-15 17:35:52 -0800 |
commit | c0143f37dab38a2da27c9bb6f44f3a54ca9cf86f (patch) | |
tree | 83d072427609dadd6523f58d9166d81ab2c203d6 /llvm/tools/llvm-jitlink | |
parent | 1ea5ce6335c7c0e040f70de16f1080546d242b69 (diff) | |
download | bcm5719-llvm-c0143f37dab38a2da27c9bb6f44f3a54ca9cf86f.tar.gz bcm5719-llvm-c0143f37dab38a2da27c9bb6f44f3a54ca9cf86f.zip |
[ORC] Make ObjectLinkingLayer own its jitlink::MemoryManager.
This relieves ObjectLinkingLayer clients of the responsibility of holding the
memory manager. This makes it easier to select between RTDyldObjectLinkingLayer
(which already owned its memory manager factory) and ObjectLinkingLayer at
runtime as clients aren't required to hold a jitlink::MemoryManager field just
in case ObjectLinkingLayer is selected.
Diffstat (limited to 'llvm/tools/llvm-jitlink')
-rw-r--r-- | llvm/tools/llvm-jitlink/llvm-jitlink.cpp | 4 | ||||
-rw-r--r-- | llvm/tools/llvm-jitlink/llvm-jitlink.h | 1 |
2 files changed, 2 insertions, 3 deletions
diff --git a/llvm/tools/llvm-jitlink/llvm-jitlink.cpp b/llvm/tools/llvm-jitlink/llvm-jitlink.cpp index de52bb9ec63..26bcf46d60a 100644 --- a/llvm/tools/llvm-jitlink/llvm-jitlink.cpp +++ b/llvm/tools/llvm-jitlink/llvm-jitlink.cpp @@ -397,8 +397,8 @@ static std::unique_ptr<jitlink::JITLinkMemoryManager> createMemoryManager() { } Session::Session(Triple TT) - : MainJD(ES.createJITDylib("<main>")), MemMgr(createMemoryManager()), - ObjLayer(ES, *MemMgr), TT(std::move(TT)) { + : MainJD(ES.createJITDylib("<main>")), ObjLayer(ES, createMemoryManager()), + TT(std::move(TT)) { /// Local ObjectLinkingLayer::Plugin class to forward modifyPassConfig to the /// Session. diff --git a/llvm/tools/llvm-jitlink/llvm-jitlink.h b/llvm/tools/llvm-jitlink/llvm-jitlink.h index 005f7f211e9..0f92d760501 100644 --- a/llvm/tools/llvm-jitlink/llvm-jitlink.h +++ b/llvm/tools/llvm-jitlink/llvm-jitlink.h @@ -27,7 +27,6 @@ namespace llvm { struct Session { orc::ExecutionSession ES; orc::JITDylib &MainJD; - std::unique_ptr<jitlink::JITLinkMemoryManager> MemMgr; orc::ObjectLinkingLayer ObjLayer; std::vector<orc::JITDylib *> JDSearchOrder; Triple TT; |