summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAvi Kivity <avi@redhat.com>2010-07-29 16:11:46 +0400
committerAvi Kivity <avi@redhat.com>2010-10-24 12:50:18 +0400
commit2cb20bc8af313b400e5c2c94886e0d87e2ec4e4d (patch)
treee1f04a5ecd83036cbe17857dfba56b36b810b936
parent2f3a9bc9ebd42e00929f370e1a56e40028a8d651 (diff)
downloadlinux-2cb20bc8af313b400e5c2c94886e0d87e2ec4e4d.tar.xz
KVM: x86 emulator: convert group 8 to new style
Signed-off-by: Avi Kivity <avi@redhat.com> Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
-rw-r--r--arch/x86/kvm/emulate.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c
index 5e7a02df18bb..b5599b5cac97 100644
--- a/arch/x86/kvm/emulate.c
+++ b/arch/x86/kvm/emulate.c
@@ -105,7 +105,7 @@
#define X16(x) X8(x), X8(x)
enum {
- NoGrp, Group8, Group9,
+ NoGrp, Group9,
};
struct opcode {
@@ -162,11 +162,13 @@ static struct group_dual group7 = { {
D(SrcMem16 | ModRM | Mov | Priv), N,
} };
-static struct opcode group_table[] = {
- [Group8*8] =
+static struct opcode group8[] = {
N, N, N, N,
D(DstMem | SrcImmByte | ModRM), D(DstMem | SrcImmByte | ModRM | Lock),
D(DstMem | SrcImmByte | ModRM | Lock), D(DstMem | SrcImmByte | ModRM | Lock),
+};
+
+static struct opcode group_table[] = {
[Group9*8] =
N, D(DstMem64 | ModRM | Lock), N, N, N, N, N, N,
};
@@ -337,7 +339,7 @@ static struct opcode twobyte_table[256] = {
D(DstReg | SrcMem16 | ModRM | Mov),
/* 0xB8 - 0xBF */
N, N,
- D(Group | Group8), D(DstMem | SrcReg | ModRM | BitOp | Lock),
+ G(0, group8), D(DstMem | SrcReg | ModRM | BitOp | Lock),
N, N, D(ByteOp | DstReg | SrcMem | ModRM | Mov),
D(DstReg | SrcMem16 | ModRM | Mov),
/* 0xC0 - 0xCF */