nir/lower_io_to_scalar: add case for lowering push constants

Signed-off-by: Simon Perretta <simon.perretta@imgtec.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36000>
This commit is contained in:
Simon Perretta 2025-05-29 15:14:02 +01:00 committed by Marge Bot
parent d3e3e0e3d2
commit f89fb76671

View file

@ -309,7 +309,8 @@ nir_lower_io_to_scalar_instr(nir_builder *b, nir_instr *instr, void *data)
if (((intr->intrinsic == nir_intrinsic_load_ubo && (state->mask & nir_var_mem_ubo)) ||
(intr->intrinsic == nir_intrinsic_load_ssbo && (state->mask & nir_var_mem_ssbo)) ||
(intr->intrinsic == nir_intrinsic_load_global && (state->mask & nir_var_mem_global)) ||
(intr->intrinsic == nir_intrinsic_load_shared && (state->mask & nir_var_mem_shared))) &&
(intr->intrinsic == nir_intrinsic_load_shared && (state->mask & nir_var_mem_shared)) ||
(intr->intrinsic == nir_intrinsic_load_push_constant && (state->mask & nir_var_mem_push_const))) &&
(!state->filter || state->filter(instr, state->filter_data))) {
lower_load_to_scalar(b, intr);
return true;