This operand yields value of the VEX.vvvv field. Signed-off-by: Jan Bobek <jan.bo...@gmail.com> --- target/i386/translate.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+)
diff --git a/target/i386/translate.c b/target/i386/translate.c index c918065b96..4562a097fa 100644 --- a/target/i386/translate.c +++ b/target/i386/translate.c @@ -4859,6 +4859,26 @@ INSNOP_FINALIZE(modrm_rm_direct) insnop_finalize(modrm_rm)(&ctxt->rm, env, s, modrm, is_write, arg); } +/* + * vex_v + * + * Operand whose value is the VVVV field of the VEX prefix. + */ +typedef int insnop_arg_t(vex_v); +typedef struct {} insnop_ctxt_t(vex_v); + +INSNOP_INIT(vex_v) +{ + return !(s->prefix & PREFIX_VEX); +} +INSNOP_PREPARE(vex_v) +{ + return s->vex_v; +} +INSNOP_FINALIZE(vex_v) +{ +} + static void gen_sse_ng(CPUX86State *env, DisasContext *s, int b) { enum { -- 2.20.1