From: Florian Krohm Date: Fri, 2 Jan 2015 13:34:15 +0000 (+0000) Subject: Give DisResult::continueAt Addr type. X-Git-Tag: svn/VALGRIND_3_11_0^2~121 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=df6d32005551ed3a8c0d4ff8a0c26d337b5d5d37;p=thirdparty%2Fvalgrind.git Give DisResult::continueAt Addr type. git-svn-id: svn://svn.valgrind.org/vex/trunk@3053 --- diff --git a/VEX/priv/guest_arm_toIR.c b/VEX/priv/guest_arm_toIR.c index ea91ec2530..7cedb7de2d 100644 --- a/VEX/priv/guest_arm_toIR.c +++ b/VEX/priv/guest_arm_toIR.c @@ -15554,7 +15554,7 @@ DisResult disInstr_ARM_WRK ( if (resteerOkFn( callback_opaque, dst )) { /* yes */ dres.whatNext = Dis_ResteerU; - dres.continueAt = (Addr64)dst; + dres.continueAt = dst; } else { /* no; terminate the SB at this point. */ llPutIReg(15, mkU32(dst)); @@ -15585,7 +15585,7 @@ DisResult disInstr_ARM_WRK ( IRConst_U32(guest_R15_curr_instr_notENC+4), OFFB_R15T )); dres.whatNext = Dis_ResteerC; - dres.continueAt = (Addr64)(Addr32)dst; + dres.continueAt = (Addr32)dst; comment = "(assumed taken)"; } else @@ -15604,8 +15604,7 @@ DisResult disInstr_ARM_WRK ( IRConst_U32(dst), OFFB_R15T )); dres.whatNext = Dis_ResteerC; - dres.continueAt = (Addr64)(Addr32) - (guest_R15_curr_instr_notENC+4); + dres.continueAt = guest_R15_curr_instr_notENC+4; comment = "(assumed not taken)"; } else { diff --git a/VEX/priv/guest_generic_bb_to_IR.c b/VEX/priv/guest_generic_bb_to_IR.c index 4667cf1309..ec9e1fc33c 100644 --- a/VEX/priv/guest_generic_bb_to_IR.c +++ b/VEX/priv/guest_generic_bb_to_IR.c @@ -471,7 +471,7 @@ IRSB* bb_to_IR ( n_resteers++; d_resteers++; if (0 && (n_resteers & 0xFF) == 0) - vex_printf("resteer[%d,%d] to 0x%llx (delta = %lld)\n", + vex_printf("resteer[%d,%d] to 0x%lx (delta = %lld)\n", n_resteers, d_resteers, dres.continueAt, delta); break; diff --git a/VEX/priv/guest_generic_bb_to_IR.h b/VEX/priv/guest_generic_bb_to_IR.h index e01ba6321d..5bfcf30cf5 100644 --- a/VEX/priv/guest_generic_bb_to_IR.h +++ b/VEX/priv/guest_generic_bb_to_IR.h @@ -88,7 +88,7 @@ typedef /* For Dis_Resteer, this is the guest address we should continue at. Otherwise ignored (should be zero). */ - Addr64 continueAt; + Addr continueAt; } diff --git a/VEX/priv/guest_x86_toIR.c b/VEX/priv/guest_x86_toIR.c index f46707b1cd..9b2294e2ab 100644 --- a/VEX/priv/guest_x86_toIR.c +++ b/VEX/priv/guest_x86_toIR.c @@ -13081,7 +13081,7 @@ DisResult disInstr_X86_WRK ( if (resteerOkFn( callback_opaque, (Addr32)d32 )) { /* follow into the call target. */ dres.whatNext = Dis_ResteerU; - dres.continueAt = (Addr64)(Addr32)d32; + dres.continueAt = (Addr32)d32; } else { jmp_lit(&dres, Ijk_Call, d32); vassert(dres.whatNext == Dis_StopHere); @@ -13395,7 +13395,7 @@ DisResult disInstr_X86_WRK ( delta++; if (resteerOkFn( callback_opaque, (Addr32)d32) ) { dres.whatNext = Dis_ResteerU; - dres.continueAt = (Addr64)(Addr32)d32; + dres.continueAt = (Addr32)d32; } else { jmp_lit(&dres, Ijk_Boring, d32); vassert(dres.whatNext == Dis_StopHere); @@ -13409,7 +13409,7 @@ DisResult disInstr_X86_WRK ( delta += sz; if (resteerOkFn( callback_opaque, (Addr32)d32) ) { dres.whatNext = Dis_ResteerU; - dres.continueAt = (Addr64)(Addr32)d32; + dres.continueAt = (Addr32)d32; } else { jmp_lit(&dres, Ijk_Boring, d32); vassert(dres.whatNext == Dis_StopHere); @@ -13456,7 +13456,7 @@ DisResult disInstr_X86_WRK ( IRConst_U32(guest_EIP_bbstart+delta), OFFB_EIP ) ); dres.whatNext = Dis_ResteerC; - dres.continueAt = (Addr64)(Addr32)d32; + dres.continueAt = (Addr32)d32; comment = "(assumed taken)"; } else @@ -13476,7 +13476,7 @@ DisResult disInstr_X86_WRK ( IRConst_U32(d32), OFFB_EIP ) ); dres.whatNext = Dis_ResteerC; - dres.continueAt = (Addr64)(Addr32)(guest_EIP_bbstart+delta); + dres.continueAt = guest_EIP_bbstart + delta; comment = "(assumed not taken)"; } else { @@ -15021,7 +15021,7 @@ DisResult disInstr_X86_WRK ( IRConst_U32(guest_EIP_bbstart+delta), OFFB_EIP ) ); dres.whatNext = Dis_ResteerC; - dres.continueAt = (Addr64)(Addr32)d32; + dres.continueAt = (Addr32)d32; comment = "(assumed taken)"; } else @@ -15041,7 +15041,7 @@ DisResult disInstr_X86_WRK ( IRConst_U32(d32), OFFB_EIP ) ); dres.whatNext = Dis_ResteerC; - dres.continueAt = (Addr64)(Addr32)(guest_EIP_bbstart+delta); + dres.continueAt = guest_EIP_bbstart + delta; comment = "(assumed not taken)"; } else {