Fix a mistake I made in SPECIAL_DSRL32

This commit is contained in:
LegendOfDragoon 2015-09-01 07:51:36 -07:00
parent 29f2f51ee5
commit e576dbbaa4
1 changed files with 2 additions and 9 deletions

View File

@ -3934,15 +3934,8 @@ void CRecompilerOps::SPECIAL_DSRL32() {
if (m_Opcode.rt != m_Opcode.rd)
UnMap_GPR(m_Opcode.rd, false);
if (m_Opcode.sa == 0) {
MIPS_DWORD Value;
Value.UW[0] = Value.UW[1] = GetMipsRegHi(m_Opcode.rt);
m_RegWorkingSet.SetMipsRegState(m_Opcode.rd,CRegInfo::STATE_CONST_64);
m_RegWorkingSet.SetMipsReg(m_Opcode.rd, Value.UDW);
} else {
m_RegWorkingSet.SetMipsRegState(m_Opcode.rd,CRegInfo::STATE_CONST_32_ZERO);
m_RegWorkingSet.SetMipsRegLo(m_Opcode.rd, (DWORD)(GetMipsReg(m_Opcode.rt) >> (m_Opcode.sa + 32)));
}
m_RegWorkingSet.SetMipsRegState(m_Opcode.rd, CRegInfo::STATE_CONST_64);
m_RegWorkingSet.SetMipsReg(m_Opcode.rd, (DWORD)(GetMipsRegHi(m_Opcode.rt) >> m_Opcode.sa));
} else if (IsMapped(m_Opcode.rt)) {
ProtectGPR(m_Opcode.rt);
if (Is64Bit(m_Opcode.rt)) {