intel/fs: limit OW reads to 8 owords on XeHP+

We can only use 16 OW reads/writes on SLM.

v2: Update comment (Curro)

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
BSpec: 47652
Fixes: 369eab9420 ("intel/fs: Emit code for Gen12-HP indirect compute data")
Reviewed-by: Francisco Jerez <currojerez@riseup.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10082>
This commit is contained in:
Lionel Landwerlin
2021-03-15 17:40:56 +02:00
committed by Marge Bot
parent 655251ad30
commit 49be175a4b

View File

@@ -1643,7 +1643,10 @@ fs_visitor::assign_curb_setup()
* stateless messages.
*/
for (unsigned i = 0; i < uniform_push_length;) {
unsigned num_regs = MIN2(uniform_push_length - i, 8);
/* Limit ourselves to HW limit of 8 Owords (8 * 16bytes = 128 bytes
* or 4 registers).
*/
unsigned num_regs = MIN2(uniform_push_length - i, 4);
assert(num_regs > 0);
num_regs = 1 << util_logbase2(num_regs);