]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Fix to guest-ppc32 subfic
authorCerion Armour-Brown <cerion@valgrind.org>
Fri, 25 Feb 2005 10:23:46 +0000 (10:23 +0000)
committerCerion Armour-Brown <cerion@valgrind.org>
Fri, 25 Feb 2005 10:23:46 +0000 (10:23 +0000)
git-svn-id: svn://svn.valgrind.org/vex/trunk@961

VEX/priv/guest-ppc32/toIR.c

index e46acb0f154223de3025be79d00cf93ac9a38b99..7eb8f23680ec1da267ce68da4f7083bfdd363dda 100644 (file)
@@ -1153,8 +1153,7 @@ static Bool dis_int_arith ( UInt theInstr )
 
    case 0x08: // subfic   (Subtract from Immediate Carrying, p613)
       DIP("subfic r%d,r%d,0x%x\n", Rd_addr, Ra_addr, SIMM_16);
-      assign( Rd, binop(Iop_Add32, unop(Iop_Not32, mkexpr(Ra)),
-                        mkU32(EXTS_SIMM)) );
+      assign( Rd, binop(Iop_Sub32, mkU32(EXTS_SIMM), mkexpr(Ra)) );
       op = PPC32G_FLAG_OP_SUBFI;
       do_ca = True;
       break;