diff options
| author | nakeee <nakeee@gmail.com> | 2009-04-15 22:29:16 +0000 |
|---|---|---|
| committer | nakeee <nakeee@gmail.com> | 2009-04-15 22:29:16 +0000 |
| commit | 19cdbb3e1540e729c1103de7bbd76d7f7f7abf92 (patch) | |
| tree | 20644927c450ea1a9ce4b6962bb5b74df16d373d /Source/Core/DSPCore | |
| parent | 5cb2fe6daf1cf78d223a0dcd01067b65b02523e0 (diff) | |
Reverting the change that made logical function update logical zero
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2977 8ced0084-cf51-0410-be5f-012b33b47a6e
Diffstat (limited to 'Source/Core/DSPCore')
| -rw-r--r-- | Source/Core/DSPCore/Src/DSPInterpreter.cpp | 37 | ||||
| -rw-r--r-- | Source/Core/DSPCore/Src/gdsp_condition_codes.cpp | 4 |
2 files changed, 14 insertions, 27 deletions
diff --git a/Source/Core/DSPCore/Src/DSPInterpreter.cpp b/Source/Core/DSPCore/Src/DSPInterpreter.cpp index 7bf073234d..b0623d2aa3 100644 --- a/Source/Core/DSPCore/Src/DSPInterpreter.cpp +++ b/Source/Core/DSPCore/Src/DSPInterpreter.cpp @@ -764,8 +764,7 @@ void xorr(const UDSPInstruction& opc) s64 acc = dsp_get_long_acc(dreg);
- Update_SR_LZ(acc);
- // tsta(dreg);
+ Update_SR_Register64(acc);
}
// ANDR $acD.m, $axS.h
@@ -781,8 +780,7 @@ void andr(const UDSPInstruction& opc) s64 acc = dsp_get_long_acc(dreg);
- Update_SR_LZ(acc);
- // tsta(dreg);
+ Update_SR_Register64(acc);
}
// ORR $acD.m, $axS.h
@@ -799,9 +797,7 @@ void orr(const UDSPInstruction& opc) s64 acc = dsp_get_long_acc(dreg);
- Update_SR_LZ(acc);
-
- // tsta(dreg);
+ Update_SR_Register64(acc);
}
// ANDC $acD.m, $ac(1-D).m
@@ -817,8 +813,7 @@ void andc(const UDSPInstruction& opc) dsp_set_long_acc(D, ac1 & ac2);
- Update_SR_LZ(dsp_get_long_acc(D));
- // Update_SR_Register64(dsp_get_long_acc(D));
+ Update_SR_Register64(dsp_get_long_acc(D));
}
// ORC $acD.m, $ac(1-D).m
@@ -834,8 +829,7 @@ void orc(const UDSPInstruction& opc) dsp_set_long_acc(D, ac1 | ac2);
- Update_SR_LZ(dsp_get_long_acc(D));
- // Update_SR_Register64(dsp_get_long_acc(D));
+ Update_SR_Register64(dsp_get_long_acc(D));
}
void orf(const UDSPInstruction& opc)
@@ -917,8 +911,7 @@ void xori(const UDSPInstruction& opc) u16 imm = dsp_fetch_code();
g_dsp.r[reg] ^= imm;
- Update_SR_LZ(g_dsp.r[reg]);
- // Update_SR_Register16((s16)g_dsp.r[reg]);
+ Update_SR_Register16((s16)g_dsp.r[reg]);
}
// ANDI $acD.m, #I
@@ -931,8 +924,7 @@ void andi(const UDSPInstruction& opc) u16 imm = dsp_fetch_code();
g_dsp.r[reg] &= imm;
- Update_SR_LZ(g_dsp.r[reg]);
- // Update_SR_Register16((s16)g_dsp.r[reg]);
+ Update_SR_Register16((s16)g_dsp.r[reg]);
}
@@ -947,8 +939,7 @@ void ori(const UDSPInstruction& opc) u16 imm = dsp_fetch_code();
g_dsp.r[reg] |= imm;
- Update_SR_LZ(g_dsp.r[reg]);
- // Update_SR_Register16((s16)g_dsp.r[reg]);
+ Update_SR_Register16((s16)g_dsp.r[reg]);
}
//-------------------------------------------------------------
@@ -1256,8 +1247,7 @@ void lsl16(const UDSPInstruction& opc) s64 acc = dsp_get_long_acc(areg);
acc <<= 16;
dsp_set_long_acc(areg, acc);
- Update_SR_LZ(acc);
- // Update_SR_Register64(acc);
+ Update_SR_Register64(acc);
}
// MADD $axS.l, $axS.h
@@ -1304,8 +1294,7 @@ void lsr16(const UDSPInstruction& opc) acc >>= 16;
dsp_set_long_acc(areg, acc);
- Update_SR_LZ(acc);
- // Update_SR_Register64(acc);
+ Update_SR_Register64(acc);
}
// ASR16 $acR
@@ -1333,8 +1322,7 @@ void lsl(const UDSPInstruction& opc) acc <<= shift;
dsp_set_long_acc(opc.areg, acc);
- Update_SR_LZ(acc);
- // Update_SR_Register64(acc);
+ Update_SR_Register64(acc);
}
// LSR $acR, #I
@@ -1349,8 +1337,7 @@ void lsr(const UDSPInstruction& opc) acc &= 0x000000FFFFFFFFFFULL;
acc >>= shift;
dsp_set_long_acc(opc.areg, (s64)acc);
- Update_SR_LZ(acc);
- // Update_SR_Register64(acc);
+ Update_SR_Register64(acc);
}
// ASL $acR, #I
diff --git a/Source/Core/DSPCore/Src/gdsp_condition_codes.cpp b/Source/Core/DSPCore/Src/gdsp_condition_codes.cpp index c88962f6e6..cdd7c5974a 100644 --- a/Source/Core/DSPCore/Src/gdsp_condition_codes.cpp +++ b/Source/Core/DSPCore/Src/gdsp_condition_codes.cpp @@ -43,7 +43,7 @@ void Update_SR_Register64(s64 _Value) // weird
if ((_Value >> 62) == 0)
{
- Update_SR_LZ(0);
+ g_dsp.r[DSP_REG_SR] |= 0x20;
}
}
@@ -64,7 +64,7 @@ void Update_SR_Register16(s16 _Value) // weird
if ((_Value >> 14) == 0)
{
- Update_SR_LZ(0);
+ g_dsp.r[DSP_REG_SR] |= 0x20;
}
}
|
