From 9f389af35f11d881e009a484821d0119a0096f09 Mon Sep 17 00:00:00 2001 From: Rhys Perry Date: Tue, 25 Aug 2020 17:26:35 +0100 Subject: [PATCH] radv: sink load_ssbo MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit fossil-db (GFX10.3): Totals from 11485 (8.24% of 139391) affected shaders: SGPRs: 1032456 -> 1033696 (+0.12%); split: -0.69%, +0.81% VGPRs: 815332 -> 807448 (-0.97%); split: -1.04%, +0.07% SpillSGPRs: 18014 -> 13497 (-25.07%); split: -28.28%, +3.20% SpillVGPRs: 1821 -> 1749 (-3.95%) CodeSize: 101194172 -> 101235028 (+0.04%); split: -0.06%, +0.10% Scratch: 198656 -> 178176 (-10.31%) MaxWaves: 86703 -> 87219 (+0.60%); split: +0.67%, -0.07% Instrs: 19224250 -> 19238562 (+0.07%); split: -0.05%, +0.13% Cycles: 1486045388 -> 1487481292 (+0.10%); split: -0.03%, +0.13% VMEM: 2040484 -> 2127647 (+4.27%); split: +6.64%, -2.37% SMEM: 724060 -> 674966 (-6.78%); split: +1.22%, -8.00% VClause: 312375 -> 314735 (+0.76%); split: -0.26%, +1.02% SClause: 702274 -> 711991 (+1.38%); split: -0.77%, +2.15% Copies: 1413440 -> 1422782 (+0.66%); split: -0.45%, +1.11% Branches: 658696 -> 658838 (+0.02%); split: -0.12%, +0.14% PreSGPRs: 884666 -> 879736 (-0.56%); split: -1.30%, +0.74% PreVGPRs: 777374 -> 769947 (-0.96%) Signed-off-by: Rhys Perry Reviewed-by: Daniel Schürmann Part-of: --- src/amd/vulkan/radv_pipeline.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/amd/vulkan/radv_pipeline.c b/src/amd/vulkan/radv_pipeline.c index db3c36850e3..32e75b7c723 100644 --- a/src/amd/vulkan/radv_pipeline.c +++ b/src/amd/vulkan/radv_pipeline.c @@ -3412,10 +3412,10 @@ VkResult radv_create_shaders(struct radv_pipeline *pipeline, /* cleanup passes */ nir_lower_load_const_to_scalar(nir[i]); - nir_move_options move_opts = (nir_move_options)( + nir_move_options move_opts = nir_move_const_undef | nir_move_load_ubo | nir_move_load_input | - nir_move_comparisons | nir_move_copies); - nir_opt_sink(nir[i], move_opts); + nir_move_comparisons | nir_move_copies; + nir_opt_sink(nir[i], move_opts | nir_move_load_ssbo); nir_opt_move(nir[i], move_opts); radv_stop_feedback(stage_feedbacks[i], false);