From 2914a8eb16cd5a3804bdd500458cff2d2c413869 Mon Sep 17 00:00:00 2001 From: Gabe Black Date: Wed, 5 Aug 2009 03:06:37 -0700 Subject: X86: Make the check for negative operands for sign multiply more direct. --- src/arch/x86/isa/microops/regop.isa | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/arch/x86/isa/microops/regop.isa b/src/arch/x86/isa/microops/regop.isa index f2a574954..f2e16a515 100644 --- a/src/arch/x86/isa/microops/regop.isa +++ b/src/arch/x86/isa/microops/regop.isa @@ -530,10 +530,9 @@ let {{ hiResult = ((psrc1_l * psrc2_h + psrc1_h * psrc2_l + ((psrc1_l * psrc2_l) / shifter)) /shifter) + psrc1_h * psrc2_h; - if (spsrc1 < 0) + if (bits(psrc1, dataSize * 8 - 1)) hiResult -= op2; - int64_t bigSop2 = sop2; - if (bigSop2 < 0) + if (bits(op2, dataSize * 8 - 1)) hiResult -= psrc1; ProdHi = hiResult; ''' -- cgit v1.2.3