[PATCH] x86 emulator: Add Src2 decode set

2008-10-09 Thread Guillaume Thouvenin
Instruction like shld has three operands, so we need to add a Src2 decode set. We start with Src2None, Src2CL, and Src2Imm8 to support shld and we will expand it later. Signed-off-by: Guillaume Thouvenin [EMAIL PROTECTED] --- arch/x86/kvm/x86_emulate.c| 47

Re: [PATCH] x86 emulator: Add Src2 decode set

2008-10-09 Thread Avi Kivity
Guillaume Thouvenin wrote: Instruction like shld has three operands, so we need to add a Src2 decode set. We start with Src2None, Src2CL, and Src2Imm8 to support shld and we will expand it later. Please add Src2One (implied '1') as well, so we can switch the existing shift operators to

Re: [PATCH] x86 emulator: Add Src2 decode set

2008-10-09 Thread Avi Kivity
Avi Kivity wrote: #define SrcMask (74) +/* Source 2 operand type */ +#define Src2None(07) +#define Src2CL (17) +#define Src2Imm8(27) Src2ImmByte like SrcImmByte. -- Do not meddle in the internals of kernels, for they are subtle and quick to panic. -- To

Re: [PATCH] x86 emulator: Add Src2 decode set

2008-10-09 Thread Guillaume Thouvenin
On Thu, 09 Oct 2008 11:06:50 +0200 Avi Kivity [EMAIL PROTECTED] wrote: The regular shift instructions (shl, rcl, etc) come in three varieties: shift by 1, shift by imm8, and shift by CL. Right now they use SrcImmByte and decode the implied '1' and CL by hand. If we change them to use

Re: [PATCH] x86 emulator: Add Src2 decode set

2008-10-09 Thread Avi Kivity
Guillaume Thouvenin wrote: I will add Src2One but I don't understand exactly what you mean by switching shift operators to Src2 later. I also applied other remarks, thanks for your help. The patch follows. The regular shift instructions (shl, rcl, etc) come in three varieties: shift by 1,

Re: [PATCH] x86 emulator: Add Src2 decode set

2008-10-09 Thread Guillaume Thouvenin
On Thu, 09 Oct 2008 10:11:57 +0200 Avi Kivity [EMAIL PROTECTED] wrote: Guillaume Thouvenin wrote: Instruction like shld has three operands, so we need to add a Src2 decode set. We start with Src2None, Src2CL, and Src2Imm8 to support shld and we will expand it later. Please add