* Added jit versions of 5 DSP LoadStore instructions: srs, lrs, lr, sr, si
* Renamed MainOpFallback to Default for consistency in naming with JIT64
* Made ext_dmem_read and ext_dmem_write more generic for wider use
* Optimised dmem_read and dmem_write slightly
* Added dmem_read_imm and dmem_write_imm optimised versions


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6596 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
skidau
2010-12-16 23:27:38 +00:00
parent a82a61c53a
commit 93a09ee7b5
12 changed files with 239 additions and 127 deletions

View File

@ -37,7 +37,6 @@ public:
void EmitInstruction(UDSPInstruction inst);
void unknown_instruction(UDSPInstruction inst);
void Default(UDSPInstruction _inst);
void ClearIRAM();
void CompileDispatcher();
@ -45,7 +44,7 @@ public:
void Compile(int start_addr);
void ClearCallFlag();
void MainOpFallback(UDSPInstruction inst);
void Default(UDSPInstruction inst);
int STACKALIGN RunForCycles(int cycles);
@ -62,8 +61,10 @@ public:
void decrement_addr_reg(int reg);
void increase_addr_reg(int reg);
void decrease_addr_reg(int reg);
void ext_dmem_write(u32 src, u32 dest);
void ext_dmem_read(u16 addr);
void dmem_write();
void dmem_write_imm(u16 addr);
void dmem_read();
void dmem_read_imm(u16 addr);
// Ext command helpers
void pushExtValueFromReg(u16 dreg, u16 sreg);
@ -125,6 +126,13 @@ public:
void call(const UDSPInstruction opc);
void callr(const UDSPInstruction opc);
// Load/Store
void srs(const UDSPInstruction opc);
void lrs(const UDSPInstruction opc);
void lr(const UDSPInstruction opc);
void sr(const UDSPInstruction opc);
void si(const UDSPInstruction opc);
// Arithmetic
void addr(const UDSPInstruction opc);
void lsl16(const UDSPInstruction opc);