aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86
diff options
context:
space:
mode:
authorGuillaume Thouvenin <guillaume.thouvenin@ext.bull.net>2008-05-27 04:19:16 -0400
committerAvi Kivity <avi@qumranet.com>2008-07-20 05:42:27 -0400
commit615ac125618dc7b40ecb418e8b353d31ccf0e518 (patch)
tree2e6d629c0eaa10264a71095c183b13a35da5f375 /arch/x86
parent954cd36f7613ac6d084abe33114dd45a8e0dbe92 (diff)
KVM: x86 emulator: adds support to mov r,imm (opcode 0xb8) instruction
Add support to mov r, imm (0xb8) instruction. Signed-off-by: Guillaume Thouvenin <guillaume.thouvenin@ext.bull.net> Signed-off-by: Laurent Vivier <laurent.vivier@bull.net> Signed-off-by: Avi Kivity <avi@qumranet.com>
Diffstat (limited to 'arch/x86')
-rw-r--r--arch/x86/kvm/x86_emulate.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/arch/x86/kvm/x86_emulate.c b/arch/x86/kvm/x86_emulate.c
index 48b62cc3bd0c..21d7ff6a8ecd 100644
--- a/arch/x86/kvm/x86_emulate.c
+++ b/arch/x86/kvm/x86_emulate.c
@@ -152,7 +152,8 @@ static u16 opcode_table[256] = {
152 ByteOp | ImplicitOps | Mov | String, ImplicitOps | Mov | String, 152 ByteOp | ImplicitOps | Mov | String, ImplicitOps | Mov | String,
153 ByteOp | ImplicitOps | String, ImplicitOps | String, 153 ByteOp | ImplicitOps | String, ImplicitOps | String,
154 /* 0xB0 - 0xBF */ 154 /* 0xB0 - 0xBF */
155 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 155 0, 0, 0, 0, 0, 0, 0, 0,
156 DstReg | SrcImm | Mov, 0, 0, 0, 0, 0, 0, 0,
156 /* 0xC0 - 0xC7 */ 157 /* 0xC0 - 0xC7 */
157 ByteOp | DstMem | SrcImm | ModRM, DstMem | SrcImmByte | ModRM, 158 ByteOp | DstMem | SrcImm | ModRM, DstMem | SrcImmByte | ModRM,
158 0, ImplicitOps | Stack, 0, 0, 159 0, ImplicitOps | Stack, 0, 0,
@@ -1624,6 +1625,8 @@ special_insn:
1624 case 0xae ... 0xaf: /* scas */ 1625 case 0xae ... 0xaf: /* scas */
1625 DPRINTF("Urk! I don't handle SCAS.\n"); 1626 DPRINTF("Urk! I don't handle SCAS.\n");
1626 goto cannot_emulate; 1627 goto cannot_emulate;
1628 case 0xb8: /* mov r, imm */
1629 goto mov;
1627 case 0xc0 ... 0xc1: 1630 case 0xc0 ... 0xc1:
1628 emulate_grp2(ctxt); 1631 emulate_grp2(ctxt);
1629 break; 1632 break;