mirror of
https://github.com/libretro/pcsx2.git
synced 2024-12-13 21:28:38 +00:00
core: EE interpreter major speed boost
Disable the debugger and an useless debugI function * x2 on dbg build :) * x2.5 on dev build :) Note: debugger doesn't work yet with the interpreter so no real drawback.
This commit is contained in:
parent
9c92a30dbb
commit
c9aa04c679
@ -126,11 +126,19 @@ void intCheckMemcheck()
|
||||
|
||||
static void execI()
|
||||
{
|
||||
// execI is called for every instruction so it must remains as light as possible.
|
||||
// If you enable the next define, Interpreter will be much slower (around
|
||||
// ~4fps on 3.9GHz Haswell vs ~8fps (even 10fps on dev build))
|
||||
// Extra note: due to some cycle count issue PCSX2's internal debugger is
|
||||
// not yet usable with the interpreter
|
||||
//#define EXTRA_DEBUG
|
||||
#ifdef EXTRA_DEBUG
|
||||
// check if any breakpoints or memchecks are triggered by this instruction
|
||||
if (isBreakpointNeeded(cpuRegs.pc))
|
||||
intBreakpoint(false);
|
||||
|
||||
intCheckMemcheck();
|
||||
#endif
|
||||
|
||||
u32 pc = cpuRegs.pc;
|
||||
// We need to increase the pc before executing the memRead32. An exception could appears
|
||||
@ -139,8 +147,11 @@ static void execI()
|
||||
|
||||
// interprete instruction
|
||||
cpuRegs.code = memRead32( pc );
|
||||
// Honestly I think this code is useless nowadays.
|
||||
#ifdef EXTRA_DEBUG
|
||||
if( IsDebugBuild )
|
||||
debugI();
|
||||
#endif
|
||||
|
||||
const OPCODE& opcode = GetCurrentInstruction();
|
||||
#if 0
|
||||
|
Loading…
Reference in New Issue
Block a user