intel/eu/validate: Don't validate regions of sends

Otherwise, the validator tries to read the type of src1 of a SEND/SENDS
which doesn't actually have a type field.  This prevents validation
issues in the next commit.

Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3642>
This commit is contained in:
Jason Ekstrand 2020-01-29 16:23:25 -06:00 committed by Marge Bot
parent 3b323d6601
commit fa3ef6a837

View file

@ -695,6 +695,9 @@ general_restrictions_based_on_operand_types(const struct gen_device_info *devinf
unsigned exec_size = 1 << brw_inst_exec_size(devinfo, inst);
struct string error_msg = { .str = NULL, .len = 0 };
if (inst_is_send(devinfo, inst))
return error_msg;
if (devinfo->gen >= 11) {
if (num_sources == 3) {
ERROR_IF(brw_reg_type_to_size(brw_inst_3src_a1_src1_type(devinfo, inst)) == 1 ||
@ -712,9 +715,6 @@ general_restrictions_based_on_operand_types(const struct gen_device_info *devinf
if (num_sources == 3)
return error_msg;
if (inst_is_send(devinfo, inst))
return error_msg;
if (exec_size == 1)
return error_msg;