intel/brw: Support FIXED_GRF when generating code for CLUSTER_BROADCAST

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28604>
This commit is contained in:
Caio Oliveira
2024-04-04 15:07:31 -07:00
committed by Marge Bot
parent b926cd3dd9
commit 5b3d4c757d
+8 -2
View File
@@ -1356,8 +1356,14 @@ fs_generator::generate_code(const cfg_t *cfg, int dispatch_width,
assert(src[2].type == BRW_REGISTER_TYPE_UD);
const unsigned component = src[1].ud;
const unsigned cluster_size = src[2].ud;
assert(inst->src[0].file != ARF && inst->src[0].file != FIXED_GRF);
const unsigned s = inst->src[0].stride;
assert(inst->src[0].file != ARF);
unsigned s;
if (inst->src[0].file == FIXED_GRF) {
s = inst->src[0].hstride ? 1 << (inst->src[0].hstride - 1) : 0;
} else {
s = inst->src[0].stride;
}
unsigned vstride = cluster_size * s;
unsigned width = cluster_size;