>>> On 31.01.19 at 19:07, wrote:
> On 07/01/2019 10:30, Jan Beulich wrote:
> On 31.12.18 at 12:37, wrote:
>>> Passing a 32-bit integer index into an array with entries containing less
>>> than
>>> 32 bits of data is wasteful, and creates an unnecessary error condition of
>>> passing an
On 07/01/2019 10:30, Jan Beulich wrote:
On 31.12.18 at 12:37, wrote:
>> Passing a 32-bit integer index into an array with entries containing less
>> than
>> 32 bits of data is wasteful, and creates an unnecessary error condition of
>> passing an out-of-range index.
>>
>> The width of the
>>> On 31.12.18 at 12:37, wrote:
> Passing a 32-bit integer index into an array with entries containing less than
> 32 bits of data is wasteful, and creates an unnecessary error condition of
> passing an out-of-range index.
>
> The width of the X86EMUL_OPC() encoding is at most 24 bits, which
>>> On 31.12.18 at 12:57, wrote:
> On 31/12/2018 11:37, Andrew Cooper wrote:
>> +/*
>> + * Encoding for svm_get_insn_len(). We take X86EMUL_OPC() for the main
>> + * opcode, shifted left to make room for the ModRM byte.
>> + */
>> +#define INSTR_ENC(opc, modrm) (((unsigned int)(opc) << 8) |
On 31/12/2018 11:37, Andrew Cooper wrote:
> +/*
> + * Encoding for svm_get_insn_len(). We take X86EMUL_OPC() for the main
> + * opcode, shifted left to make room for the ModRM byte.
> + */
> +#define INSTR_ENC(opc, modrm) (((unsigned int)(opc) << 8) | (modrm))
> +#define MODRM(mod, reg, rm)
Passing a 32-bit integer index into an array with entries containing less than
32 bits of data is wasteful, and creates an unnecessary error condition of
passing an out-of-range index.
The width of the X86EMUL_OPC() encoding is at most 24 bits, which leaves room
for a modrm byte. Drop opc_tab[]