pan/bi: Always vectorize UBO access

Now that we claim 16B robustness alignments, we can vectorize UBO
access, even when robustness2 is enabled.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Reviewed-by: Lorenzo Rossi <lorenzo.rossi@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40576>
This commit is contained in:
Faith Ekstrand 2026-03-23 15:42:04 -04:00 committed by Marge Bot
parent 3bbacfe8d7
commit fb7e1fe81c

View file

@ -5736,15 +5736,11 @@ bi_optimize_nir(nir_shader *nir, unsigned gpu_id, nir_variable_mode robust2_mode
nir_load_store_vectorize_options vectorize_opts = {
.modes = nir_var_mem_global |
nir_var_mem_shared |
nir_var_mem_ubo |
nir_var_shader_temp,
.callback = mem_vectorize_cb,
.robust_modes = robust2_modes,
};
/* Only allow vectorization of UBOs when no robustness2 is configured */
if (!(robust2_modes & nir_var_mem_ubo))
vectorize_opts.modes |= nir_var_mem_ubo;
NIR_PASS(_, nir, nir_opt_load_store_vectorize, &vectorize_opts);
/* nir_lower_pack can generate split operations, execute algebraic again to