amd: lower multi-component subdword SSBO loads in NIR

because the hw and LLVM only support subdword single-component SSBO loads,
and ac_nir_to_llvm splits multi-component loads because of that, which is
inefficient.

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19399>
This commit is contained in:
Marek Olšák
2022-11-06 15:58:47 -05:00
committed by Marge Bot
parent 82919e2dcb
commit 4f7e353237
2 changed files with 2 additions and 2 deletions

View File

@@ -3185,7 +3185,7 @@ radv_postprocess_nir(struct radv_pipeline *pipeline,
NIR_PASS(_, stage->nir, ac_nir_lower_subdword_loads,
(ac_nir_lower_subdword_options) {
.modes_1_comp = nir_var_mem_ubo,
.modes_N_comps = nir_var_mem_ubo
.modes_N_comps = nir_var_mem_ubo | nir_var_mem_ssbo
});
progress = false;