From: Tom Hughes Date: Thu, 31 Aug 2017 14:58:11 +0000 (+0100) Subject: Ignore redundant addr16 prefix on relative call X-Git-Tag: VALGRIND_3_14_0~142 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fb6157165bb46e9f5e8c4d5fb3287306fc2453b8;p=thirdparty%2Fvalgrind.git Ignore redundant addr16 prefix on relative call BZ#384230 --- diff --git a/NEWS b/NEWS index 4b9824e558..3d04b75943 100644 --- a/NEWS +++ b/NEWS @@ -71,6 +71,7 @@ where XXXXXX is the bug number as listed below. 382998 xml-socket doesn't work 383275 massif valgrind: m_xarray.c:162 (ensureSpaceXA): Assertion '!xa->arr' failed 384096 Mention AddrCheck at Memcheck's command line option --undef-value-errors=no +384230 vex x86->IR: unhandled instruction bytes: 0x67 0xE8 0xAB 0x68 384526 reduce number of spill instructions generated by VEX register allocator v3 384584 Callee saved registers listed first for AMD64, X86, and PPC architectures 384633 Add a simple progress-reporting facility diff --git a/VEX/priv/guest_x86_toIR.c b/VEX/priv/guest_x86_toIR.c index 9f6a41abf9..ad1f8d8385 100644 --- a/VEX/priv/guest_x86_toIR.c +++ b/VEX/priv/guest_x86_toIR.c @@ -13067,6 +13067,11 @@ DisResult disInstr_X86_WRK ( goto decode_success; } + /* 67 E8 = CALL with redundant addr16 prefix */ + if (insn[0] == 0x67 && insn[1] == 0xE8) { + delta++; + } + /* ---------------------------------------------------- */ /* --- start of the baseline insn decoder -- */ /* ---------------------------------------------------- */