mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 16:08:04 +02:00
lima: split_load_input: don't split unaligned vec2
Mali4x0 can't fetch unaligned vec2 (i.e. .yz), so don't split it. Fixes:6dd0ad66de("lima/ppir: add NIR pass to split varying loads") Reviewed-by: Erico Nunes <nunes.erico@gmail.com> Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13131> (cherry picked from commit5db5ff58b7)
This commit is contained in:
parent
202f0363ac
commit
7c6eb3396d
2 changed files with 6 additions and 1 deletions
|
|
@ -1057,7 +1057,7 @@
|
|||
"description": "lima: split_load_input: don't split unaligned vec2",
|
||||
"nominated": true,
|
||||
"nomination_type": 1,
|
||||
"resolution": 0,
|
||||
"resolution": 1,
|
||||
"main_sha": null,
|
||||
"because_sha": "6dd0ad66dedc4cbd79574053f0b5023172935657"
|
||||
},
|
||||
|
|
|
|||
|
|
@ -67,6 +67,11 @@ lima_nir_split_load_input_block(nir_block *block, nir_builder *b)
|
|||
if (nir_dest_num_components(alu->dest.dest) == 3 && swizzle > 0)
|
||||
continue;
|
||||
|
||||
/* mali4xx can't access unaligned vec2, don't split load input */
|
||||
if (nir_dest_num_components(alu->dest.dest) == 2 &&
|
||||
swizzle != 0 && swizzle != 2)
|
||||
continue;
|
||||
|
||||
b->cursor = nir_before_instr(&intrin->instr);
|
||||
nir_intrinsic_instr *new_intrin = nir_intrinsic_instr_create(
|
||||
b->shader,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue