Hi Avi,
  Attached is the patch to implement emulation of instruction:
        dec reg
        opcodes: 0x48 - 0x4f
Please apply.

-- 
Thanks & Regards,
Nitin
Open Source Technology Center, Intel Corporation
-----------------------------------------------------------------
The mind is like a parachute; it works much better when it's open
commit ea06cdff59c8f9d74be2f6d7b7c4137a7c150a50
Author: Nitin A Kamble <[EMAIL PROTECTED]>
Date:   Fri Sep 14 14:55:33 2007 -0700

    Implement emulation of instruction:
    	dec reg
    	opcode: 0x48 - 0x4f
    
    Signed-off-by: Nitin A Kamble <[EMAIL PROTECTED]>

diff --git a/drivers/kvm/x86_emulate.c b/drivers/kvm/x86_emulate.c
index f5a4f4a..64909ff 100644
--- a/drivers/kvm/x86_emulate.c
+++ b/drivers/kvm/x86_emulate.c
@@ -100,7 +100,8 @@ static u8 opcode_table[256] = {
 	ImplicitOps, ImplicitOps, ImplicitOps, ImplicitOps,
 	ImplicitOps, ImplicitOps, ImplicitOps, ImplicitOps,
 	/* 0x48 - 0x4F */
-	0, 0, 0, 0, 0, 0, 0, 0,
+	ImplicitOps, ImplicitOps, ImplicitOps, ImplicitOps,
+	ImplicitOps, ImplicitOps, ImplicitOps, ImplicitOps,
 	/* 0x50 - 0x57 */
 	ImplicitOps, ImplicitOps, ImplicitOps, ImplicitOps,
 	ImplicitOps, ImplicitOps, ImplicitOps, ImplicitOps,
@@ -1409,6 +1410,22 @@ pop_instruction:
 			}
 		no_wb = 1; /* Disable writeback. */
 		break;
+	case 0x48 ... 0x4f: /* dec r16/r32 */
+		dst.ptr = (unsigned long *)&_regs[b & 0x7];
+		dst.val = *dst.ptr;
+		switch (op_bytes) {
+		case 2:
+			*(u16 *)dst.ptr = (u16)dst.val - 1;
+			break;
+		case 4:
+			*dst.ptr = (u32)dst.val - 1;
+			break;	/* 64b: zero-ext */
+		case 8:
+			*dst.ptr = dst.val - 1;
+			break;
+		}
+		no_wb = 1; /* Disable writeback. */
+		break;
 	case 0xa4 ... 0xa5:	/* movs */
 		dst.type = OP_MEM;
 		dst.bytes = (d & ByteOp) ? 1 : op_bytes;

Attachment: signature.asc
Description: This is a digitally signed message part

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
kvm-devel mailing list
kvm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kvm-devel

Reply via email to