diff options
author | RSDuck <rsduck@users.noreply.github.com> | 2020-04-26 16:27:26 +0200 |
---|---|---|
committer | RSDuck <rsduck@users.noreply.github.com> | 2020-06-16 11:59:09 +0200 |
commit | 6d217e1010f3aed73a86d5dff2f3f46a3ca60cb5 (patch) | |
tree | 6341fd447d865b0815bf35410e34150ed48e0563 /src | |
parent | dc86bac83d865ebc1b9a520791b831f6799fe87c (diff) |
fix build with JIT disabled and set default JIT maxblock size to 32
Diffstat (limited to 'src')
-rw-r--r-- | src/ARM.cpp | 2 | ||||
-rw-r--r-- | src/CMakeLists.txt | 2 | ||||
-rw-r--r-- | src/CP15.cpp | 4 | ||||
-rw-r--r-- | src/Config.cpp | 4 |
4 files changed, 9 insertions, 3 deletions
diff --git a/src/ARM.cpp b/src/ARM.cpp index 3eac74d..6b8df30 100644 --- a/src/ARM.cpp +++ b/src/ARM.cpp @@ -173,6 +173,7 @@ void ARM::DoSavestate(Savestate* file) file->VarArray(R_IRQ, 3*sizeof(u32)); file->VarArray(R_UND, 3*sizeof(u32)); file->Var32(&CurInstr); +#ifdef JIT_ENABLED if (!file->Saving && Config::JIT_Enable) { // hack, the JIT doesn't really pipeline @@ -180,6 +181,7 @@ void ARM::DoSavestate(Savestate* file) // loaded while running the interpreter FillPipeline(); } +#endif file->VarArray(NextInstr, 2*sizeof(u32)); file->Var32(&ExceptionBase); diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index a0c3a36..0029e96 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -11,7 +11,6 @@ add_library(core STATIC ARMInterpreter_ALU.cpp ARMInterpreter_Branch.cpp ARMInterpreter_LoadStore.cpp - ARM_InstrInfo.cpp Config.cpp CP15.cpp CRC32.cpp @@ -57,6 +56,7 @@ if (ENABLE_JIT) target_sources(core PRIVATE ARMJIT.cpp + ARM_InstrInfo.cpp dolphin/CommonFuncs.cpp ) diff --git a/src/CP15.cpp b/src/CP15.cpp index e168d7f..ff8531c 100644 --- a/src/CP15.cpp +++ b/src/CP15.cpp @@ -562,11 +562,15 @@ void ARMv5::CP15Write(u32 id, u32 val) case 0x750: +#ifdef JIT_ENABLED ARMJIT::InvalidateAll(); +#endif ICacheInvalidateAll(); return; case 0x751: +#ifdef JIT_ENABLED ARMJIT::InvalidateByAddr(ARMJIT::TranslateAddr<0>(val)); +#endif ICacheInvalidateByAddr(val); return; case 0x752: diff --git a/src/Config.cpp b/src/Config.cpp index e69319b..c0ec4ec 100644 --- a/src/Config.cpp +++ b/src/Config.cpp @@ -39,7 +39,7 @@ char DSiNANDPath[1024]; #ifdef JIT_ENABLED int JIT_Enable = false; -int JIT_MaxBlockSize = 12; +int JIT_MaxBlockSize = 32; int JIT_BrancheOptimisations = 2; int JIT_LiteralOptimisations = true; #endif @@ -57,7 +57,7 @@ ConfigEntry ConfigFile[] = #ifdef JIT_ENABLED {"JIT_Enable", 0, &JIT_Enable, 0, NULL, 0}, - {"JIT_MaxBlockSize", 0, &JIT_MaxBlockSize, 10, NULL, 0}, + {"JIT_MaxBlockSize", 0, &JIT_MaxBlockSize, 32, NULL, 0}, {"JIT_BranchOptimisations", 0, &JIT_BrancheOptimisations, 2, NULL, 0}, {"JIT_LiteralOptimisations", 0, &JIT_LiteralOptimisations, 1, NULL, 0}, #endif |