mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-22 05:40:01 -06:00
LLE JIT:
* Optimised the updating of g_dsp.pc in the compile loop (code by kiesel-stein) * Added JIT version of LRI (code by kiesel-stein) * Added JIT versions of the branch instructions (code by Jack Frost) * DSP_SendAIBuffer fix (code by Mylek) * Marked instructions that update g_dsp.pc in the DSP table and updated PC based on the table (speed up) * Fixed the signed bits not being set properly in the addr instruction * Created a MainOpFallback function to use interpreted versions of the instructions if necessary (code by kiesel-stein) * Disabled the jit versions of subarn and addarn as they are slowing down NSMBW The above work in both x86 and x64 modes. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6582 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
@ -44,6 +44,8 @@ public:
|
||||
const u8 *CompileStub();
|
||||
void Compile(int start_addr);
|
||||
|
||||
void MainOpFallback(UDSPInstruction inst);
|
||||
|
||||
int STACKALIGN RunForCycles(int cycles);
|
||||
|
||||
// CC Util
|
||||
@ -112,10 +114,16 @@ public:
|
||||
void sbclr(const UDSPInstruction opc);
|
||||
void sbset(const UDSPInstruction opc);
|
||||
void srbith(const UDSPInstruction opc);
|
||||
void lri(const UDSPInstruction opc);
|
||||
void lris(const UDSPInstruction opc);
|
||||
void mrr(const UDSPInstruction opc);
|
||||
void nx(const UDSPInstruction opc);
|
||||
|
||||
void jcc(const UDSPInstruction opc);
|
||||
void jmprcc(const UDSPInstruction opc);
|
||||
void call(const UDSPInstruction opc);
|
||||
void callr(const UDSPInstruction opc);
|
||||
|
||||
// Arithmetic
|
||||
void addr(const UDSPInstruction opc);
|
||||
void lsl16(const UDSPInstruction opc);
|
||||
@ -147,6 +155,7 @@ public:
|
||||
|
||||
// CALL this to start the dispatcher
|
||||
const u8 *enterDispatcher;
|
||||
u16 compilePC;
|
||||
|
||||
private:
|
||||
CompiledCode *blocks;
|
||||
|
Reference in New Issue
Block a user