From: Gabe Black Date: Sun, 1 Feb 2009 08:08:16 +0000 (-0800) Subject: X86: Calculate flags based on the actual result. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=483c3e96b7e30d3bd788f32c5b421133e71ec476;p=gem5.git X86: Calculate flags based on the actual result. --- diff --git a/src/arch/x86/insts/microregop.cc b/src/arch/x86/insts/microregop.cc index 080926627..2ea975746 100644 --- a/src/arch/x86/insts/microregop.cc +++ b/src/arch/x86/insts/microregop.cc @@ -67,6 +67,9 @@ namespace X86ISA bool subtract) const { DPRINTF(X86, "flagMask = %#x\n", flagMask); + if (_destRegIdx[0] & (1 << 6)) { + _dest >>= 8; + } uint64_t flags = oldFlags & ~flagMask; if(flagMask & (ECFBit | CFBit)) {