brw_inst *orig, brw_inst *uncompacted);
/* brw_eu_validate.c */
+bool brw_validate_instruction(const struct gen_device_info *devinfo,
+ const brw_inst *inst, int offset,
+ struct disasm_info *disasm);
bool brw_validate_instructions(const struct gen_device_info *devinfo,
const void *assembly, int start_offset, int end_offset,
struct disasm_info *disasm);
return error_msg;
}
-static bool
+bool
brw_validate_instruction(const struct gen_device_info *devinfo,
const brw_inst *inst, int offset,
struct disasm_info *disasm)
clear_pad_bits(p->devinfo, &instr);
+ if (!brw_validate_instruction(p->devinfo, &instr, 0, NULL))
+ continue;
+
if (!test_compact_instruction(p, instr)) {
printf(" twiddled bits for fuzzing %d, %d\n", bit0, bit1);
return false;