From mboxrd@z Thu Jan 1 00:00:00 1970 From: Guillaume Thouvenin Subject: [Patch 3/5] x86_emulator: add a new "implied 1" Src decode type Date: Mon, 3 Nov 2008 16:03:34 +0100 Message-ID: <20081103160334.0306ffdd@frecb000711> References: <20081103160036.499cb482@frecb000711> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: Guillaume Thouvenin , Avi Kivity To: kvm Return-path: Received: from ecfrec.frec.bull.fr ([129.183.4.8]:59053 "EHLO ecfrec.frec.bull.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755752AbYKCPF1 (ORCPT ); Mon, 3 Nov 2008 10:05:27 -0500 In-Reply-To: <20081103160036.499cb482@frecb000711> Sender: kvm-owner@vger.kernel.org List-ID: Add SrcOne operand type when we need to decode an implied '1' like with regular shift instruction Signed-off-by: Guillaume Thouvenin --- arch/x86/kvm/x86_emulate.c | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-) diff --git a/arch/x86/kvm/x86_emulate.c b/arch/x86/kvm/x86_emulate.c index 4e8ef29..6e23e9c 100644 --- a/arch/x86/kvm/x86_emulate.c +++ b/arch/x86/kvm/x86_emulate.c @@ -58,6 +58,7 @@ #define SrcMem32 (4<<4) /* Memory operand (32-bit). */ #define SrcImm (5<<4) /* Immediate operand. */ #define SrcImmByte (6<<4) /* 8-bit sign-extended immediate operand. */ +#define SrcOne (7<<4) /* Implied '1' */ #define SrcMask (7<<4) /* Generic ModRM decode. */ #define ModRM (1<<7) @@ -1047,6 +1048,10 @@ done_prefixes: c->src.bytes = 1; c->src.val = insn_fetch(s8, 1, c->eip); break; + case SrcOne: + c->src.bytes = 1; + c->src.val = 1; + break; } /* -- 1.6.0.3.514.g2f91b