mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-02-21 14:20:29 +01:00
radv: move two NIR passes out of tight optimization loop
nir_remove_dead_variables nir_opt_shrink_vectors Acked-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/5668>
This commit is contained in:
parent
2e46f38902
commit
f8ee0efd04
1 changed files with 4 additions and 3 deletions
|
|
@ -166,8 +166,6 @@ radv_optimize_nir(struct nir_shader *shader, bool optimize_conservatively, bool
|
|||
|
||||
NIR_PASS(progress, shader, nir_opt_copy_prop_vars);
|
||||
NIR_PASS(progress, shader, nir_opt_dead_write_vars);
|
||||
NIR_PASS(progress, shader, nir_remove_dead_variables,
|
||||
nir_var_function_temp | nir_var_shader_in | nir_var_shader_out, NULL);
|
||||
|
||||
NIR_PASS_V(shader, nir_lower_alu_to_scalar, NULL, NULL);
|
||||
NIR_PASS_V(shader, nir_lower_phis_to_scalar, true);
|
||||
|
|
@ -189,12 +187,15 @@ radv_optimize_nir(struct nir_shader *shader, bool optimize_conservatively, bool
|
|||
NIR_PASS(progress, shader, nir_opt_algebraic);
|
||||
|
||||
NIR_PASS(progress, shader, nir_opt_undef);
|
||||
NIR_PASS(progress, shader, nir_opt_shrink_vectors);
|
||||
|
||||
if (shader->options->max_unroll_iterations) {
|
||||
NIR_PASS(progress, shader, nir_opt_loop_unroll);
|
||||
}
|
||||
} while (progress && !optimize_conservatively);
|
||||
|
||||
NIR_PASS(progress, shader, nir_opt_shrink_vectors);
|
||||
NIR_PASS(progress, shader, nir_remove_dead_variables,
|
||||
nir_var_function_temp | nir_var_shader_in | nir_var_shader_out, NULL);
|
||||
NIR_PASS(progress, shader, nir_opt_conditional_discard);
|
||||
NIR_PASS(progress, shader, nir_opt_move, nir_move_load_ubo);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue