diff options
Diffstat (limited to 'llvm/lib/ExecutionEngine/Orc/EPCIndirectionUtils.cpp')
| -rw-r--r-- | llvm/lib/ExecutionEngine/Orc/EPCIndirectionUtils.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/llvm/lib/ExecutionEngine/Orc/EPCIndirectionUtils.cpp b/llvm/lib/ExecutionEngine/Orc/EPCIndirectionUtils.cpp index 833be826f8ae..8e4937d40562 100644 --- a/llvm/lib/ExecutionEngine/Orc/EPCIndirectionUtils.cpp +++ b/llvm/lib/ExecutionEngine/Orc/EPCIndirectionUtils.cpp @@ -110,8 +110,8 @@ Error EPCTrampolinePool::grow() { auto &EPC = EPCIU.getExecutorProcessControl(); auto PageSize = EPC.getPageSize(); auto Alloc = SimpleSegmentAlloc::Create( - EPC.getMemMgr(), nullptr, - {{MemProt::Read | MemProt::Exec, {PageSize, Align(PageSize)}}}); + EPC.getMemMgr(), EPC.getSymbolStringPool(), EPC.getTargetTriple(), + nullptr, {{MemProt::Read | MemProt::Exec, {PageSize, Align(PageSize)}}}); if (!Alloc) return Alloc.takeError(); @@ -295,7 +295,8 @@ EPCIndirectionUtils::writeResolverBlock(ExecutorAddr ReentryFnAddr, auto ResolverSize = ABI->getResolverCodeSize(); auto Alloc = - SimpleSegmentAlloc::Create(EPC.getMemMgr(), nullptr, + SimpleSegmentAlloc::Create(EPC.getMemMgr(), EPC.getSymbolStringPool(), + EPC.getTargetTriple(), nullptr, {{MemProt::Read | MemProt::Exec, {ResolverSize, Align(EPC.getPageSize())}}}); @@ -363,7 +364,8 @@ EPCIndirectionUtils::getIndirectStubs(unsigned NumStubs) { auto PtrProt = MemProt::Read | MemProt::Write; auto Alloc = SimpleSegmentAlloc::Create( - EPC.getMemMgr(), nullptr, + EPC.getMemMgr(), EPC.getSymbolStringPool(), EPC.getTargetTriple(), + nullptr, {{StubProt, {static_cast<size_t>(StubBytes), Align(PageSize)}}, {PtrProt, {static_cast<size_t>(PtrBytes), Align(PageSize)}}}); |
