|
From: <sv...@va...> - 2008-05-09 09:34:07
|
Author: sewardj
Date: 2008-05-09 10:34:06 +0100 (Fri, 09 May 2008)
New Revision: 1835
Log:
Allow pushfw and popfw. Fixes #157748.
Modified:
trunk/priv/guest-x86/toIR.c
Modified: trunk/priv/guest-x86/toIR.c
===================================================================
--- trunk/priv/guest-x86/toIR.c 2008-05-09 08:53:50 UTC (rev 1834)
+++ trunk/priv/guest-x86/toIR.c 2008-05-09 09:34:06 UTC (rev 1835)
@@ -12959,8 +12959,6 @@
case 0x9D: /* POPF */
vassert(sz == 2 || sz == 4);
- if (sz != 4) goto decode_failure;
- vassert(sz == 4); // until we know a sz==2 test case exists
t1 = newTemp(Ity_I32); t2 = newTemp(Ity_I32);
assign(t2, getIReg(4, R_ESP));
assign(t1, widenUto32(loadLE(szToITy(sz),mkexpr(t2))));
@@ -13087,8 +13085,6 @@
case 0x9C: /* PUSHF */ {
vassert(sz == 2 || sz == 4);
- if (sz != 4) goto decode_failure;
- vassert(sz == 4); // wait for sz==2 test case
t1 = newTemp(Ity_I32);
assign( t1, binop(Iop_Sub32,getIReg(4,R_ESP),mkU32(sz)) );
|