X86: Fix how the parity flag is computed.

It's only for the lowest order byte, and I had the polarity wrong.
This commit is contained in:
Gabe Black 2009-08-05 02:56:12 -07:00
parent f5c21eaa1a
commit df2c862a07

View file

@ -78,7 +78,7 @@ namespace X86ISA
if(subtract)
flags ^= (flagMask & (ECFBit | CFBit));
}
if(flagMask & PFBit && findParity(dataSize*8, _dest))
if(flagMask & PFBit && !findParity(8, _dest))
flags |= PFBit;
if(flagMask & AFBit)
{