From: Jason Ekstrand Date: Wed, 29 Jan 2020 22:23:25 +0000 (-0600) Subject: intel/eu/validate: Don't validate regions of sends X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=fa3ef6a8370bf1ce121806e60ccdedb2ddc6aa83;p=mesa.git 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 Reviewed-by: Kenneth Graunke Part-of: --- diff --git a/src/intel/compiler/brw_eu_validate.c b/src/intel/compiler/brw_eu_validate.c index 3b802d3b355..a46ad386e78 100644 --- a/src/intel/compiler/brw_eu_validate.c +++ b/src/intel/compiler/brw_eu_validate.c @@ -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;