|
From: <sv...@va...> - 2007-11-16 00:18:42
|
Author: sewardj
Date: 2007-11-16 00:18:44 +0000 (Fri, 16 Nov 2007)
New Revision: 1795
Log:
Enable CMPXCHG Gb,Eb. Fixes #147498.
Modified:
trunk/priv/guest-amd64/toIR.c
Modified: trunk/priv/guest-amd64/toIR.c
===================================================================
--- trunk/priv/guest-amd64/toIR.c 2007-11-15 23:30:16 UTC (rev 1794)
+++ trunk/priv/guest-amd64/toIR.c 2007-11-16 00:18:44 UTC (rev 1795)
@@ -14247,9 +14247,13 @@
/* =-=-=-=-=-=-=-=-=- CMPXCHG -=-=-=-=-=-=-=-=-=-= */
-//.. case 0xB0: /* CMPXCHG Gb,Eb */
-//.. delta = dis_cmpxchg_G_E ( sorb, 1, delta );
-//.. break;
+ case 0xB0: { /* CMPXCHG Gb,Eb */
+ Bool ok = True;
+ if (haveF2orF3(pfx)) goto decode_failure;
+ delta = dis_cmpxchg_G_E ( &ok, pfx, 1, delta );
+ if (!ok) goto decode_failure;
+ break;
+ }
case 0xB1: { /* CMPXCHG Gv,Ev (allowed in 16,32,64 bit) */
Bool ok = True;
if (haveF2orF3(pfx)) goto decode_failure;
|