pco: Amend errant nir_move_option

Move options were bit or-ing from the wrong enum, causing undefined
behaviour when the number of intrinsics changed.
Replaced it with the values from the right nir_move_options enum that
were previously working. (Further refinement needed on these after
extensive testing.)

Fixes: f1b24267d2 ("pco: rework nir processing and passes")
Signed-off-by: Radu Costas <radu.costas@imgtec.com>
Reviewed-by: Simon Perretta <simon.perretta@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40568>
This commit is contained in:
Radu Costas 2026-03-23 14:37:43 +02:00 committed by Marge Bot
parent 8f30e90fc1
commit 721c1b8f65

View file

@ -826,8 +826,9 @@ void pco_lower_nir(pco_ctx *ctx, nir_shader *nir, pco_data *data)
nir_move_options move_options = nir_move_load_global | nir_move_load_ubo |
nir_move_load_ssbo | nir_move_load_input |
nir_move_load_frag_coord |
nir_intrinsic_load_uniform;
nir_move_load_frag_coord | nir_move_alu |
nir_move_comparisons | nir_move_copies;
NIR_PASS(_, nir, nir_opt_sink, move_options);
NIR_PASS(_, nir, nir_opt_move, move_options);