#include "xed-isa-set.h"
#include "xed-util.h"
#include "xed-chip-features-table.h"
xed_bool_t
xed_isa_set_is_valid_for_chip(xed_isa_set_enum_t isa_set,
xed_chip_enum_t chip) {
const xed_uint64_t one=1;
const unsigned int n = XED_CAST(unsigned int,isa_set) / 64;
const unsigned int r = XED_CAST(unsigned int,isa_set) - (64*n);
xed_uint64_t features = 0;
xed_assert(chip < XED_CHIP_LAST);
xed_assert(isa_set > XED_ISA_SET_INVALID && isa_set < XED_ISA_SET_LAST);
features = xed_chip_features[chip][n];
if (features & (one<<r))
return 1;
return 0;
}