From 69d8c756bf84aadb31f463b1db7ccb846e7f1cb2 Mon Sep 17 00:00:00 2001 From: Julian Seward Date: Sat, 8 Nov 2008 15:25:00 +0000 Subject: [PATCH] Support "repe scas" on amd64. Fixes #168943. git-svn-id: svn://svn.valgrind.org/vex/trunk@1872 --- VEX/priv/guest-amd64/toIR.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/VEX/priv/guest-amd64/toIR.c b/VEX/priv/guest-amd64/toIR.c index 68066c8c3e..cef973bb57 100644 --- a/VEX/priv/guest-amd64/toIR.c +++ b/VEX/priv/guest-amd64/toIR.c @@ -14717,6 +14717,18 @@ DisResult disInstr_AMD64_WRK ( dres.whatNext = Dis_StopHere; break; } + /* F3 AE/AF: repe scasb/repe scas{w,l,q} */ + if (haveASO(pfx)) + goto decode_failure; + if (!haveF2(pfx) && haveF3(pfx)) { + if (opc == 0xAE) + sz = 1; + dis_REP_op ( AMD64CondZ, dis_SCAS, sz, + guest_RIP_curr_instr, + guest_RIP_bbstart+delta, "repe scas", pfx ); + dres.whatNext = Dis_StopHere; + break; + } /* AE/AF: scasb/scas{w,l,q} */ if (!haveF2(pfx) && !haveF3(pfx)) { if (opc == 0xAE) -- 2.47.2