mirror of
https://github.com/hrydgard/ppsspp.git
synced 2026-10-18 17:00:30 +02:00
JIT the signed load/store variants too
This commit is contained in:
1 parent
fe8b80c12e
commit
2c59de95e9
3 files changed
+25
-2
No files matched your search
@@ -94,6 +94,8 @@ namespace MIPSComp
|
||||
}
|
||||
switch (o)
|
||||
{
|
||||
case 32: //R(rt) = (u32)(s32)(s8) ReadMem8 (addr); break; //lb
|
||||
case 33: //R(rt) = (u32)(s32)(s16)ReadMem16(addr); break; //lh
|
||||
case 35: //R(rt) = ReadMem32(addr); break; //lw
|
||||
case 36: //R(rt) = ReadMem8 (addr); break; //lbu
|
||||
case 37: //R(rt) = ReadMem16(addr); break; //lhu
|
||||
@@ -108,12 +110,21 @@ namespace MIPSComp
|
||||
SetR0ToEffectiveAddress(rs, offset);
|
||||
}
|
||||
if (o == 35) {
|
||||
// 32-bit
|
||||
LDR(gpr.R(rt), R11, R0, true, true);
|
||||
} else if (o == 36) {
|
||||
LDRB(gpr.R(rt), R11, R0, true, true);
|
||||
} else if (o == 37) {
|
||||
// 16-bit
|
||||
ADD(R0, R0, R11); // TODO: Merge with next instruction
|
||||
LDRH(gpr.R(rt), R0);
|
||||
} else if (o == 33) {
|
||||
ADD(R0, R0, R11); // TODO: Merge with next instruction
|
||||
LDRSH(gpr.R(rt), R0);
|
||||
} else if (o == 36) {
|
||||
// 8-bit
|
||||
LDRB(gpr.R(rt), R11, R0, true, true);
|
||||
} else if (o == 32) {
|
||||
ADD(R0, R0, R11); // TODO: Merge with next instruction
|
||||
LDRSB(gpr.R(rt), R0);
|
||||
}
|
||||
} else {
|
||||
Comp_Generic(op);
|
||||
|
||||
Reference in new issue
Block a user