KVM: x86 emulator: move all x86_emulate_memop() to a structure
authorLaurent Vivier <Laurent.Vivier@bull.net>
Tue, 18 Sep 2007 09:52:50 +0000 (11:52 +0200)
committerAvi Kivity <avi@qumranet.com>
Wed, 30 Jan 2008 15:52:47 +0000 (17:52 +0200)
commite4e03deda83b1f2fc37ccbfc1eef27e86e8ed4e9
tree5306b8f262bddcc4e5a59520f8628d85a5b4eaf7
parenta7ddce3afc8326870b9e5e02fa41e028bffb10a5
KVM: x86 emulator: move all x86_emulate_memop() to a structure

Move all x86_emulate_memop() common variables between decode and execute to a
structure decode_cache.  This will help in later separating decode and
emulate.

            struct decode_cache {
                u8 twobyte;
                u8 b;
                u8 lock_prefix;
                u8 rep_prefix;
                u8 op_bytes;
                u8 ad_bytes;
                struct operand src;
                struct operand dst;
                unsigned long *override_base;
                unsigned int d;
                unsigned long regs[NR_VCPU_REGS];
                unsigned long eip;
                /* modrm */
                u8 modrm;
                u8 modrm_mod;
                u8 modrm_reg;
                u8 modrm_rm;
                u8 use_modrm_ea;
                unsigned long modrm_ea;
                unsigned long modrm_val;
           };

Signed-off-by: Laurent Vivier <Laurent.Vivier@bull.net>
Signed-off-by: Avi Kivity <avi@qumranet.com>
drivers/kvm/x86_emulate.c
drivers/kvm/x86_emulate.h