#include "xed-ild.h"
#include "xed-ild-enum.h"
#include "xed3-phash.h"
XED_DLL_EXPORT
void xed3_static_decode(xed_decoded_inst_t* d)
{
xed_uint_t vv = xed3_operand_get_vexvalid(d);
xed_ild_map_enum_t map = xed3_operand_get_map(d);
xed_uint32_t xed3_idx=0;
const xed_inst_t* inst;
if (map < XED_PHASH_MAP_LIMIT)
{
xed3_find_func_t const* find_f_arr = xed3_phash_lu[vv][map];
if (find_f_arr) {
xed_uint8_t opcode;
xed3_find_func_t find_f;
opcode = (xed_uint8_t)xed3_operand_get_nominal_opcode(d);
find_f = find_f_arr[opcode];
if (find_f)
xed3_idx = (*find_f)(d);
}
}
inst = xed_inst_table + xed3_idx;
xed_decoded_inst_set_inst(d, inst);
}