summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-jitlink
diff options
context:
space:
mode:
authorLang Hames <lhames@gmail.com>2019-12-15 17:23:36 -0800
committerLang Hames <lhames@gmail.com>2019-12-15 17:35:52 -0800
commitc0143f37dab38a2da27c9bb6f44f3a54ca9cf86f (patch)
tree83d072427609dadd6523f58d9166d81ab2c203d6 /llvm/tools/llvm-jitlink
parent1ea5ce6335c7c0e040f70de16f1080546d242b69 (diff)
downloadbcm5719-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.cpp4
-rw-r--r--llvm/tools/llvm-jitlink/llvm-jitlink.h1
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;
OpenPOWER on IntegriCloud