From a77896c1b65384b2e367d3237df8ed145f3809dc Mon Sep 17 00:00:00 2001 From: Nekotekina Date: Sat, 12 May 2018 22:56:18 +0300 Subject: [PATCH] Update LLVM commit, use small code model --- Utilities/JIT.cpp | 2 ++ llvm | 2 +- rpcs3/Emu/Cell/SPURecompiler.cpp | 4 ++-- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/Utilities/JIT.cpp b/Utilities/JIT.cpp index efee69c252..372cec0ba2 100644 --- a/Utilities/JIT.cpp +++ b/Utilities/JIT.cpp @@ -435,6 +435,7 @@ jit_compiler::jit_compiler(const std::unordered_map& _link, co // Auxiliary JIT (does not use custom memory manager, only writes the objects) m_engine.reset(llvm::EngineBuilder(std::make_unique("null_", m_context)) .setErrorStr(&result) + .setEngineKind(llvm::EngineKind::JIT) .setOptLevel(llvm::CodeGenOpt::Aggressive) .setCodeModel(large ? llvm::CodeModel::Large : llvm::CodeModel::Small) .setMCPU(m_cpu) @@ -448,6 +449,7 @@ jit_compiler::jit_compiler(const std::unordered_map& _link, co m_engine.reset(llvm::EngineBuilder(std::make_unique("null", m_context)) .setErrorStr(&result) + .setEngineKind(llvm::EngineKind::JIT) .setMCJITMemoryManager(std::move(mem)) .setOptLevel(llvm::CodeGenOpt::Aggressive) .setCodeModel(large ? llvm::CodeModel::Large : llvm::CodeModel::Small) diff --git a/llvm b/llvm index 6154c0dcaf..17ec6d78a7 160000 --- a/llvm +++ b/llvm @@ -1 +1 @@ -Subproject commit 6154c0dcaf1a5a105afffa106ea3298b3020dffb +Subproject commit 17ec6d78a7371d8ddf7af9dc658d113c4cbf28c3 diff --git a/rpcs3/Emu/Cell/SPURecompiler.cpp b/rpcs3/Emu/Cell/SPURecompiler.cpp index 3da99e3be2..f557d1be58 100644 --- a/rpcs3/Emu/Cell/SPURecompiler.cpp +++ b/rpcs3/Emu/Cell/SPURecompiler.cpp @@ -841,8 +841,8 @@ class spu_llvm_runtime // All dispatchers std::array, 0x10000> m_dispatcher; - // JIT instance (TODO: use small code model) - jit_compiler m_jit{{}, jit_compiler::cpu(g_cfg.core.llvm_cpu), true}; + // JIT instance + jit_compiler m_jit{{}, jit_compiler::cpu(g_cfg.core.llvm_cpu)}; // Debug module output location std::string m_cache_path;