mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-30 07:50:11 +01:00
anv/pipeline: Do less deref instruction lowering
This commit removes most of the deref instruction lowering. Instead of lowering early, we only lower textures and images and we only do so right before any of the anv image lowering passes. Acked-by: Rob Clark <robdclark@gmail.com> Acked-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Acked-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:
parent
1d59034de2
commit
5cd7324a57
1 changed files with 3 additions and 2 deletions
|
|
@ -190,8 +190,6 @@ anv_shader_compile_to_nir(struct anv_pipeline *pipeline,
|
|||
assert(exec_list_length(&nir->functions) == 1);
|
||||
entry_point->name = ralloc_strdup(entry_point, "main");
|
||||
|
||||
NIR_PASS_V(nir, nir_lower_deref_instrs, ~0);
|
||||
|
||||
/* Now that we've deleted all but the main function, we can go ahead and
|
||||
* lower the rest of the constant initializers. We do this here so that
|
||||
* nir_remove_dead_variables and split_per_member_structs below see the
|
||||
|
|
@ -220,6 +218,9 @@ anv_shader_compile_to_nir(struct anv_pipeline *pipeline,
|
|||
|
||||
nir = brw_preprocess_nir(compiler, nir);
|
||||
|
||||
NIR_PASS_V(nir, nir_lower_deref_instrs,
|
||||
nir_lower_texture_derefs | nir_lower_image_derefs);
|
||||
|
||||
if (stage == MESA_SHADER_FRAGMENT)
|
||||
NIR_PASS_V(nir, anv_nir_lower_input_attachments);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue