intel/brw/xe3+: Relax SEND EOT register assignment restrictions.
These restrictions have been removed from the hardware. Make the code enforcing and validating them conditional. Reviewed-by: Caio Oliveira <caio.oliveira@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32758>
This commit is contained in:
committed by
Caio Oliveira
parent
8a5ec60442
commit
43d59c6186
@@ -327,13 +327,15 @@ send_restrictions(const struct brw_isa_info *isa,
|
||||
inst->src[1].nr != BRW_ARF_NULL,
|
||||
"src1 of split send must be a GRF or NULL");
|
||||
|
||||
ERROR_IF(brw_inst_eot(devinfo, inst->raw) &&
|
||||
inst->src[0].nr < 112,
|
||||
"send with EOT must use g112-g127");
|
||||
ERROR_IF(brw_inst_eot(devinfo, inst->raw) &&
|
||||
inst->src[1].file == FIXED_GRF &&
|
||||
inst->src[1].nr < 112,
|
||||
"send with EOT must use g112-g127");
|
||||
if (devinfo->ver < 30) {
|
||||
ERROR_IF(brw_inst_eot(devinfo, inst->raw) &&
|
||||
inst->src[0].nr < 112,
|
||||
"send with EOT must use g112-g127");
|
||||
ERROR_IF(brw_inst_eot(devinfo, inst->raw) &&
|
||||
inst->src[1].file == FIXED_GRF &&
|
||||
inst->src[1].nr < 112,
|
||||
"send with EOT must use g112-g127");
|
||||
}
|
||||
|
||||
if (inst->src[0].file == FIXED_GRF && inst->src[1].file == FIXED_GRF) {
|
||||
/* Assume minimums if we don't know */
|
||||
|
||||
@@ -600,7 +600,7 @@ fs_reg_alloc::setup_inst_interference(const fs_inst *inst)
|
||||
* We could just do "something high". Instead, we just pick the highest
|
||||
* register that works.
|
||||
*/
|
||||
if (inst->eot) {
|
||||
if (inst->eot && devinfo->ver < 30) {
|
||||
const int vgrf = inst->opcode == SHADER_OPCODE_SEND ?
|
||||
inst->src[2].nr : inst->src[0].nr;
|
||||
const int size = DIV_ROUND_UP(fs->alloc.sizes[vgrf], reg_unit(devinfo));
|
||||
|
||||
Reference in New Issue
Block a user