summaryrefslogtreecommitdiffstats
path: root/drivers/kvm/x86_emulate.h
diff options
context:
space:
mode:
authorGuillaume Thouvenin2007-11-22 11:32:09 +0100
committerAvi Kivity2008-01-30 16:53:14 +0100
commit90e0a28f6b7241c7793f2ebd540c349580170446 (patch)
treee0e92ea3bd13298ac99529e54d1be98d306eb8f0 /drivers/kvm/x86_emulate.h
parentKVM: Portability: Move unalias_gfn to arch dependent file (diff)
downloadkernel-qcow2-linux-90e0a28f6b7241c7793f2ebd540c349580170446.tar.gz
kernel-qcow2-linux-90e0a28f6b7241c7793f2ebd540c349580170446.tar.xz
kernel-qcow2-linux-90e0a28f6b7241c7793f2ebd540c349580170446.zip
KVM: x86 emulator: Make a distinction between repeat prefixes F3 and F2
cmps and scas instructions accept repeat prefixes F3 and F2. So in order to emulate those prefixed instructions we need to be able to know if prefixes are REP/REPE/REPZ or REPNE/REPNZ. Currently kvm doesn't make this distinction. This patch introduces this distinction. Signed-off-by: Guillaume Thouvenin <guillaume.thouvenin@ext.bull.net> Signed-off-by: Avi Kivity <avi@qumranet.com>
Diffstat (limited to 'drivers/kvm/x86_emulate.h')
-rw-r--r--drivers/kvm/x86_emulate.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/kvm/x86_emulate.h b/drivers/kvm/x86_emulate.h
index 4603b2bf3488..644086e354a7 100644
--- a/drivers/kvm/x86_emulate.h
+++ b/drivers/kvm/x86_emulate.h
@@ -162,6 +162,10 @@ struct x86_emulate_ctxt {
struct decode_cache decode;
};
+/* Repeat String Operation Prefix */
+#define REPE_PREFIX 1
+#define REPNE_PREFIX 2
+
/* Execution mode, passed to the emulator. */
#define X86EMUL_MODE_REAL 0 /* Real mode. */
#define X86EMUL_MODE_PROT16 2 /* 16-bit protected mode. */