From: Julian Seward Date: Thu, 3 Nov 2005 14:00:57 +0000 (+0000) Subject: Handle any number of 0x66 (operand-size-override) prefixes. X-Git-Tag: svn/VALGRIND_3_1_1^2~60 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d02bbc1dc2b04f2a8254e70f994482292145a746;p=thirdparty%2Fvalgrind.git Handle any number of 0x66 (operand-size-override) prefixes. git-svn-id: svn://svn.valgrind.org/vex/trunk@1431 --- diff --git a/VEX/priv/guest-x86/toIR.c b/VEX/priv/guest-x86/toIR.c index 1fa3e0d04e..ed4a026a25 100644 --- a/VEX/priv/guest-x86/toIR.c +++ b/VEX/priv/guest-x86/toIR.c @@ -7062,8 +7062,9 @@ DisResult disInstr_X86_WRK ( delta++; } - /* Detect operand-size overrides. */ - if (getIByte(delta) == 0x66) { sz = 2; delta++; }; + /* Detect operand-size overrides. It is possible for more than one + 0x66 to appear. */ + while (getIByte(delta) == 0x66) { sz = 2; delta++; }; /* segment override prefixes come after the operand-size override, it seems */