aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/ARM.cpp2
-rw-r--r--src/CMakeLists.txt2
-rw-r--r--src/CP15.cpp4
-rw-r--r--src/Config.cpp4
4 files changed, 9 insertions, 3 deletions
diff --git a/src/ARM.cpp b/src/ARM.cpp
index 32cb91c..95d2b8b 100644
--- a/src/ARM.cpp
+++ b/src/ARM.cpp
@@ -127,6 +127,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
@@ -134,6 +135,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 f650f42..c92a21d 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -10,7 +10,6 @@ add_library(core STATIC
ARMInterpreter_ALU.cpp
ARMInterpreter_Branch.cpp
ARMInterpreter_LoadStore.cpp
- ARM_InstrInfo.cpp
Config.cpp
CP15.cpp
CRC32.cpp
@@ -39,6 +38,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 8bb4f6b..62258e9 100644
--- a/src/CP15.cpp
+++ b/src/CP15.cpp
@@ -561,11 +561,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 f3f8c6c..7971e5a 100644
--- a/src/Config.cpp
+++ b/src/Config.cpp
@@ -36,7 +36,7 @@ int GL_Antialias;
#ifdef JIT_ENABLED
int JIT_Enable = false;
-int JIT_MaxBlockSize = 12;
+int JIT_MaxBlockSize = 32;
int JIT_BrancheOptimisations = 2;
int JIT_LiteralOptimisations = true;
#endif
@@ -51,7 +51,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