Add missing ICBI instruction.

This commit is contained in:
Unknown W. Brackets 2014-05-07 23:53:19 -07:00
parent 9290453d2e
commit ff89e06fd6
4 changed files with 10 additions and 4 deletions

View File

@ -1784,7 +1784,10 @@ private:
{
DisAsm_R2_RC("extsw", ra, rs, rc);
}
/*0x3d6*///ICBI
void ICBI(u32 ra, u32 rb)
{
DisAsm_R2("icbi", ra, rb);
}
void DCBZ(u32 ra, u32 rs)
{
DisAsm_R2("dcbz", ra, rs);

View File

@ -571,7 +571,7 @@ namespace PPU_instr
/*0x3ba*/bind_instr(g1f_list, EXTSB, RA, RS, RC);
/*0x3d7*/bind_instr(g1f_list, STFIWX, FRS, RA, RB);
/*0x3da*/bind_instr(g1f_list, EXTSW, RA, RS, RC);
/*0x3d6*///ICBI
/*0x3d6*/bind_instr(g1f_list, ICBI, RA, RB);
/*0x3f6*/bind_instr(g1f_list, DCBZ, RA, RB);
bind_instr(g3a_list, LD, RD, RA, DS);

View File

@ -3291,7 +3291,10 @@ private:
//CPU.XER.CA = ((s64)CPU.GPR[ra] < 0); // ???
if(rc) CPU.UpdateCR0<s32>(CPU.GPR[ra]);
}
/*0x3d6*///ICBI
void ICBI(u32 ra, u32 rs)
{
// Clear jit for the specified block? Nothing to do in the interpreter.
}
void DCBZ(u32 ra, u32 rs)
{
//UNK("dcbz", false);

View File

@ -782,7 +782,7 @@ public:
virtual void EXTSB(u32 ra, u32 rs, bool rc) = 0;
virtual void STFIWX(u32 frs, u32 ra, u32 rb) = 0;
virtual void EXTSW(u32 ra, u32 rs, bool rc) = 0;
//ICBI
virtual void ICBI(u32 ra, u32 rb) = 0;
virtual void DCBZ(u32 ra, u32 rb) = 0;
virtual void LWZ(u32 rd, u32 ra, s32 d) = 0;
virtual void LWZU(u32 rd, u32 ra, s32 d) = 0;