|
From: <sv...@va...> - 2009-01-24 10:34:27
|
Author: sewardj
Date: 2009-01-24 10:34:19 +0000 (Sat, 24 Jan 2009)
New Revision: 1882
Log:
Handle redundant REX.W on PUNPCKHgg. Fixes test case dated 2009-01-22
of #173751.
Modified:
trunk/priv/guest-amd64/toIR.c
Modified: trunk/priv/guest-amd64/toIR.c
===================================================================
--- trunk/priv/guest-amd64/toIR.c 2009-01-22 20:40:22 UTC (rev 1881)
+++ trunk/priv/guest-amd64/toIR.c 2009-01-24 10:34:19 UTC (rev 1882)
@@ -6594,7 +6594,8 @@
case 0x68:
case 0x69:
case 0x6A: /* PUNPCKHgg (src)mmxreg-or-mem, (dst)mmxreg */
- if (sz != 4)
+ if (sz != 4
+ && /*ignore redundant REX.W*/!(sz==8 && haveNo66noF2noF3(pfx)))
goto mmx_decode_failure;
delta = dis_MMXop_regmem_to_reg ( vbi, pfx, delta, opc, "punpckh", True );
break;
|