mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-06 07:18:17 +02:00
brw: fix shuffle with scalar/uniform index
The fixes commit isn't actually the source of the bug but likely the biggest enabler because it creates scalar values that more easily end up in the shuffle operations. Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Fixes:1b24612c57("brw/nir: Treat load_*_uniform_block_intel as convergent") Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/12927 Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/12688 Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/12570 Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/12905 Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/12734 Reviewed-by: Sushma Venkatesh Reddy <sushma.venkatesh.reddy@intel.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34393> (cherry picked from commit19e4dda9a2)
This commit is contained in:
parent
1830d233a7
commit
2e6281ea34
2 changed files with 3 additions and 2 deletions
|
|
@ -634,7 +634,7 @@
|
|||
"description": "brw: fix shuffle with scalar/uniform index",
|
||||
"nominated": true,
|
||||
"nomination_type": 2,
|
||||
"resolution": 0,
|
||||
"resolution": 1,
|
||||
"main_sha": null,
|
||||
"because_sha": "1b24612c570727a0c637159eeebbd88e79715435",
|
||||
"notes": null
|
||||
|
|
|
|||
|
|
@ -379,7 +379,8 @@ brw_generator::generate_shuffle(fs_inst *inst,
|
|||
/* We use VxH indirect addressing, clobbering a0.0 through a0.7. */
|
||||
struct brw_reg addr = vec8(brw_address_reg(0));
|
||||
|
||||
struct brw_reg group_idx = suboffset(idx, group);
|
||||
struct brw_reg group_idx = idx.is_scalar || is_uniform(idx) ?
|
||||
component(idx, 0) : suboffset(idx, group);
|
||||
|
||||
if (lower_width == 8 && group_idx.width == BRW_WIDTH_16) {
|
||||
/* Things get grumpy if the register is too wide. */
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue