From f114a1850103abf762e1083981302f2fe6529b1e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Mon, 30 Dec 2024 04:07:35 -0500 Subject: [PATCH] radeonsi: use nir_opt_sink MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit TOTALS FROM AFFECTED SHADERS (29673/58359) - ACO Spilled SGPRs: 860 -> 446 (-48.14 %) Code Size: 41681748 -> 41337964 (-0.82 %) bytes Max Waves: 465904 -> 466036 (0.03 %) Reviewed-by: Timur Kristóf Part-of: --- src/gallium/drivers/radeonsi/si_shader.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/gallium/drivers/radeonsi/si_shader.c b/src/gallium/drivers/radeonsi/si_shader.c index feeeb3776b8..c5da53a18c5 100644 --- a/src/gallium/drivers/radeonsi/si_shader.c +++ b/src/gallium/drivers/radeonsi/si_shader.c @@ -2671,6 +2671,10 @@ static struct nir_shader *si_get_nir_shader(struct si_shader *shader, struct si_ if (late_opts) si_nir_late_opts(nir); + NIR_PASS(progress, nir, nir_opt_sink, + nir_move_const_undef | nir_move_copies | nir_move_alu | nir_move_comparisons | + nir_move_load_ubo | nir_move_load_ssbo); + /* aco only accept scalar const, must be done after si_nir_late_opts() * which may generate vec const. */