ir3: Enable nir_opt_shrink_stores.

This pass strips trailing components not in the writemask of store
intrinsics, or from the trailing components that aren't part of an image's
format.

Totals from 11641 (0.83% of 1402199) affected shaders:
MaxWaves: 159402 -> 159422 (+0.01%); split: +0.08%, -0.07%
Instrs: 3073536 -> 3064117 (-0.31%); split: -0.59%, +0.28%
CodeSize: 7529906 -> 7417398 (-1.49%); split: -1.54%, +0.04%
NOPs: 286665 -> 289623 (+1.03%); split: -2.71%, +3.74%
MOVs: 85466 -> 74849 (-12.42%); split: -14.28%, +1.86%
Full: 116869 -> 116557 (-0.27%); split: -0.35%, +0.09%
(ss): 68245 -> 65758 (-3.64%); split: -5.23%, +1.59%
(sy): 31673 -> 31812 (+0.44%); split: -0.75%, +1.19%
(ss)-stall: 160473 -> 161653 (+0.74%); split: -3.63%, +4.37%
(sy)-stall: 668624 -> 668566 (-0.01%); split: -2.82%, +2.81%
Preamble Instrs: 1059243 -> 1033109 (-2.47%); split: -2.47%, +0.00%
Early Preamble: 10550 -> 10530 (-0.19%)
Subgroup size: 1172672 -> 1172416 (-0.02%); split: +0.01%, -0.03%

Cat0: 323161 -> 326364 (+0.99%); split: -2.50%, +3.49%
Cat1: 156177 -> 145280 (-6.98%); split: -7.92%, +0.95%
Cat2: 1448974 -> 1448964 (-0.00%)
Cat3: 874169 -> 874175 (+0.00%)
Cat5: 75743 -> 75742 (-0.00%)
Cat7: 38702 -> 36982 (-4.44%); split: -5.80%, +1.35%
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37191>
This commit is contained in:
Emma Anholt 2025-08-21 12:00:33 -07:00 committed by Marge Bot
parent baeb070a94
commit b353f868dc

View file

@ -338,6 +338,7 @@ ir3_optimize_loop(struct ir3_compiler *compiler,
progress |= OPT(s, nir_opt_copy_prop_vars);
progress |= OPT(s, nir_opt_dead_write_vars);
progress |= OPT(s, nir_split_struct_vars, nir_var_function_temp);
progress |= OPT(s, nir_opt_shrink_stores, true);
static int gcm = -1;
if (gcm == -1)