PowerPC: Properly unset the overflow bit
The OV bit is non-sticky. Therefore, after an overflow-enabled instruction executes, if an overflow does *not* occur, then OV is cleared. SO is sticky however, so it staying set in this case is correct.
This commit is contained in:
1 parent
23bc50704a
commit
e53fffeb90
2 files changed
+19
-21
No files matched your search
@@ -434,7 +434,7 @@ inline u32 GetXER_OV()
|
||||
|
||||
inline void SetXER_OV(bool value)
|
||||
{
|
||||
PowerPC::ppcState.xer_so_ov |= static_cast<u32>(value);
|
||||
PowerPC::ppcState.xer_so_ov = (PowerPC::ppcState.xer_so_ov & 0xFE) | static_cast<u32>(value);
|
||||
SetXER_SO(value);
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user