diff --git a/pcsx2/x86/ix86-32/iR5900.cpp b/pcsx2/x86/ix86-32/iR5900.cpp index 37057a289e..7e53c58dee 100644 --- a/pcsx2/x86/ix86-32/iR5900.cpp +++ b/pcsx2/x86/ix86-32/iR5900.cpp @@ -740,7 +740,12 @@ static void recExecute() void R5900::Dynarec::OpcodeImpl::recSYSCALL() { EE::Profiler.EmitOp(eeOpcode::SYSCALL); - + if (GPR_IS_CONST1(3)) + { + // If it's FlushCache or iFlushCache, we can skip it since we don't support cache in the JIT. + if (g_cpuConstRegs[3].UC[0] == 0x64 || g_cpuConstRegs[3].UC[0] == 0x68) + return; + } recCall(R5900::Interpreter::OpcodeImpl::SYSCALL); g_branch = 2; // Indirect branch with event check. }