summaryrefslogtreecommitdiffstats
path: root/arch/x86/include
diff options
context:
space:
mode:
authorAvi Kivity <avi@redhat.com>2010-07-29 15:11:51 +0300
committerAvi Kivity <avi@redhat.com>2010-10-24 10:50:22 +0200
commitef65c88912cafe56de2737c440aefc764fd8f202 (patch)
treef9e3ec543228d18234bb2304d0ebd17da39a5364 /arch/x86/include
parent9aabc88fc8687ba3a520e2ec459821d05f72474e (diff)
downloadop-kernel-dev-ef65c88912cafe56de2737c440aefc764fd8f202.zip
op-kernel-dev-ef65c88912cafe56de2737c440aefc764fd8f202.tar.gz
KVM: x86 emulator: allow storing emulator execution function in decode tables
Instead of looking up the opcode twice (once for decode flags, once for the big execution switch) look up both flags and function in the decode tables. Signed-off-by: Avi Kivity <avi@redhat.com> Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Diffstat (limited to 'arch/x86/include')
-rw-r--r--arch/x86/include/asm/kvm_emulate.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/x86/include/asm/kvm_emulate.h b/arch/x86/include/asm/kvm_emulate.h
index 9ddfa5e..0f901c1 100644
--- a/arch/x86/include/asm/kvm_emulate.h
+++ b/arch/x86/include/asm/kvm_emulate.h
@@ -190,6 +190,7 @@ struct decode_cache {
bool has_seg_override;
u8 seg_override;
unsigned int d;
+ int (*execute)(struct x86_emulate_ctxt *ctxt);
unsigned long regs[NR_VCPU_REGS];
unsigned long eip;
/* modrm */
OpenPOWER on IntegriCloud