libudis86/decode.c
static int
decode_vex_immreg(struct ud *u, struct ud_operand *opr, unsigned size)
{
  uint8_t imm  = inp_next(u);
  uint8_t mask = u->dis_mode == 64 ? 0xf : 0x7;
  UD_RETURN_ON_ERROR(u);
  UD_ASSERT(u->vex_op != 0);
  decode_reg(u, opr, REGCLASS_XMM, mask & (imm >> 4), size);
  return 0;
}
/* 
 * decode_vex_immreg
 *    Decode source operand encoded in immediate byte [7:4]
 */
decode_vex_immreg
Decode source operand encoded in immediate byte [7:4]
decode_vex_immreg Decode source operand encoded in immediate byte [ 7 : 4 ]
static int
decode_vex_immreg(struct ud *u, struct ud_operand *opr, unsigned size)
{
  uint8_t imm  = inp_next(u);
  uint8_t mask = u->dis_mode == 64 ? 0xf : 0x7;
  UD_RETURN_ON_ERROR(u);
  UD_ASSERT(u->vex_op != 0);
  decode_reg(u, opr, REGCLASS_XMM, mask & (imm >> 4), size);
  return 0;
}
static int decode_vex_immreg ( struct ud * u , struct ud_operand * opr , unsigned size ) { uint8_t imm = inp_next ( u ) ; uint8_t mask = u -> dis_mode == 64 ? 0xf : 0x7 ; UD_RETURN_ON_ERROR ( u ) ; UD_ASSERT ( u -> vex_op != 0 ) ; decode_reg ( u , opr , REGCLASS_XMM , mask & ( imm >> 4 ) , size ) ; return 0 ; }
decode_vex_immreg
    Decode source operand encoded in immediate byte [7:4]
decode_vex_immreg Decode source operand encoded in immediate byte [ 7 : 4 ]