[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [xen-3.2-testing] x86_emulate: Disable writeback if BSF/BSR are passed zero input.



# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1208861653 -3600
# Node ID 164ccc03ae1e4fab9a03db718d2b17ae2ea699c5
# Parent  033dcba5d771d0727378068f9779c36331161fe3
x86_emulate: Disable writeback if BSF/BSR are passed zero input.
Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx>
xen-unstable changeset:   17496:1cc4df5c7fe8b34de2a3258f1cafec94540d1712
xen-unstable date:        Tue Apr 22 11:44:56 2008 +0100
---
 xen/arch/x86/x86_emulate.c |   12 ++++++++++--
 1 files changed, 10 insertions(+), 2 deletions(-)

diff -r 033dcba5d771 -r 164ccc03ae1e xen/arch/x86/x86_emulate.c
--- a/xen/arch/x86/x86_emulate.c        Tue Apr 22 11:52:36 2008 +0100
+++ b/xen/arch/x86/x86_emulate.c        Tue Apr 22 11:54:13 2008 +0100
@@ -3061,7 +3061,11 @@ x86_emulate(
               : "=r" (dst.val), "=q" (zf)
               : "r" (src.val), "1" (0) );
         _regs.eflags &= ~EFLG_ZF;
-        _regs.eflags |= zf ? EFLG_ZF : 0;
+        if ( zf )
+        {
+            _regs.eflags |= EFLG_ZF;
+            dst.type = OP_NONE;
+        }
         break;
     }
 
@@ -3071,7 +3075,11 @@ x86_emulate(
               : "=r" (dst.val), "=q" (zf)
               : "r" (src.val), "1" (0) );
         _regs.eflags &= ~EFLG_ZF;
-        _regs.eflags |= zf ? EFLG_ZF : 0;
+        if ( zf )
+        {
+            _regs.eflags |= EFLG_ZF;
+            dst.type = OP_NONE;
+        }
         break;
     }
 

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.