e7c6037d12
This is useful to remove unused components from IO loads. This is not only helpful for reducing the size of memory loads, but also for reducing register pressure (as we need smaller vector registers). Totals from 55567 (33.76% of 164575) affected shaders: MaxWaves: 665780 -> 666690 (+0.14%); split: +0.15%, -0.01% Instrs: 30850106 -> 30825516 (-0.08%); split: -0.33%, +0.25% CodeSize: 62502952 -> 62336580 (-0.27%); split: -0.42%, +0.15% NOPs: 5468972 -> 5463654 (-0.10%); split: -1.39%, +1.30% MOVs: 1078607 -> 1060627 (-1.67%); split: -3.48%, +1.81% Full: 807907 -> 805134 (-0.34%); split: -0.49%, +0.15% (ss): 755846 -> 747963 (-1.04%); split: -2.51%, +1.46% (sy): 367032 -> 363947 (-0.84%); split: -1.88%, +1.04% (ss)-stall: 2907874 -> 2900183 (-0.26%); split: -1.97%, +1.71% (sy)-stall: 10812082 -> 10599944 (-1.96%); split: -3.43%, +1.47% STPs: 23062 -> 22980 (-0.36%) LDPs: 35076 -> 32286 (-7.95%) Preamble Instrs: 6668422 -> 6612037 (-0.85%); split: -1.35%, +0.51% Early Preamble: 36055 -> 36169 (+0.32%); split: +0.32%, -0.01% Cat0: 6015654 -> 6009409 (-0.10%); split: -1.29%, +1.18% Cat1: 1631110 -> 1610537 (-1.26%); split: -2.54%, +1.28% Cat2: 11783599 -> 11783634 (+0.00%); split: -0.02%, +0.02% Cat3: 8198147 -> 8198526 (+0.00%); split: -0.00%, +0.01% Cat5: 968517 -> 967899 (-0.06%); split: -0.06%, +0.00% Cat6: 349200 -> 351795 (+0.74%); split: -0.01%, +0.75% Cat7: 1009072 -> 1008909 (-0.02%); split: -0.58%, +0.56% Signed-off-by: Job Noorman <jnoorman@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34600>