|
From: <sv...@va...> - 2005-07-21 17:07:22
|
Author: sewardj
Date: 2005-07-21 18:07:18 +0100 (Thu, 21 Jul 2005)
New Revision: 1287
Log:
Fix XER.OV computation after multiply.
Modified:
trunk/priv/guest-ppc32/toIR.c
Modified: trunk/priv/guest-ppc32/toIR.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/priv/guest-ppc32/toIR.c 2005-07-21 16:58:55 UTC (rev 1286)
+++ trunk/priv/guest-ppc32/toIR.c 2005-07-21 17:07:18 UTC (rev 1287)
@@ -992,7 +992,7 @@
/* OV true if result can't be represented in 32 bits
i.e sHi !=3D sign extension of sLo */
t64 =3D newTemp(Ity_I64);
- assign( t64, binop(Iop_MullU32, argL, argR) );
+ assign( t64, binop(Iop_MullS32, argL, argR) );
xer_ov=20
=3D binop( Iop_CmpNE32,
unop(Iop_64HIto32, mkexpr(t64)),
|