diff --git a/pcsx2/x86/ix86-32/iR5900.cpp b/pcsx2/x86/ix86-32/iR5900.cpp index 7e53c58dee551..313d8c53f6218 100644 --- a/pcsx2/x86/ix86-32/iR5900.cpp +++ b/pcsx2/x86/ix86-32/iR5900.cpp @@ -744,7 +744,12 @@ void R5900::Dynarec::OpcodeImpl::recSYSCALL() { // 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) + { + // Emulate the amount of cycles it takes for the exception handlers to run + // This number was found by using github.com/F0bes/flushcache-cycles + s_nBlockCycles += 5650; return; + } } recCall(R5900::Interpreter::OpcodeImpl::SYSCALL); g_branch = 2; // Indirect branch with event check.