From: Gabe Black Date: Wed, 5 Sep 2007 06:42:55 +0000 (-0700) Subject: X86: Make the movfp microop use FloatRegBits instead of FloatRegs. X-Git-Tag: m5_2.0_beta4~124 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6c689a3b4b3991342200bb2a433fdf7fbd76b4fc;p=gem5.git X86: Make the movfp microop use FloatRegBits instead of FloatRegs. This fixes a problem where interpreting arbitrary bits as floating point would change what the value was. These values are legitimate because the fp registers could be used to move around arbitrary data. --HG-- extra : convert_revision : f1d7159ba137702b5722cc7c1b64ed7dd06c21de --- diff --git a/src/arch/x86/isa/microops/regop.isa b/src/arch/x86/isa/microops/regop.isa index 1d9299ff3..589113ba3 100644 --- a/src/arch/x86/isa/microops/regop.isa +++ b/src/arch/x86/isa/microops/regop.isa @@ -489,8 +489,8 @@ let {{ else_code = 'DestReg=DestReg;' class Movfp(CondRegOp): - code = 'FpDestReg = FpSrcReg2' - else_code = 'FpDestReg = FpDestReg;' + code = 'FpDestReg.uqw = FpSrcReg2.uqw;' + else_code = 'FpDestReg.uqw = FpDestReg.uqw;' # Shift instructions