aco: instruction combining improvements
This has a bunch of improvements to instruction combining, mostly around applying SGPRs and literals to instructions on GFX10 (which increased the constant bus limit and allows literals on VOP3)
pipeline-db changes without the WIP last patch:
Navi:
PERCENTAGE DELTAS Shaders SGPRs VGPRs SpillSGPR SpillVGPR CodeSize MaxWaves Instructions
britannia 465 0.30 % -0.53 % . . -0.42 % -0.03 % -1.75 %
dirt4 4030 -0.86 % -0.49 % . . -0.27 % 0.41 % -1.96 %
doom 5775 0.22 % -0.25 % . . . . -1.92 %
dota2 985 -0.28 % -0.01 % . . -0.27 % 0.01 % -1.57 %
dow3 294 . -0.06 % . . -0.88 % 0.04 % -1.44 %
evilwithin_demo 740 0.14 % -0.15 % . . -0.97 % 0.05 % -3.21 %
f12017 5462 -0.13 % -0.19 % 5.77 % . -0.24 % 0.05 % -2.24 %
gtav 2955 -0.19 % -0.56 % . . -0.51 % 0.12 % -2.30 %
madmax 922 -0.11 % -0.16 % . . -0.24 % 0.09 % -2.15 %
nier 7030 -0.08 % 0.05 % . . -0.11 % -0.04 % -1.33 %
redout 2487 1.15 % . . . -0.61 % -0.01 % -3.57 %
rottr 8039 0.46 % -0.16 % . . -0.55 % 0.11 % -2.99 %
shadowofmordor 2055 -0.03 % -0.14 % . . -0.16 % 0.06 % -1.15 %
sottr_demo 5618 -0.52 % . . . -0.19 % . -1.77 %
strange_brigade 1412 -0.04 % . . . -0.14 % . -1.83 %
talos 782 0.65 % -0.03 % . . -0.96 % . -4.61 %
thewitness 3150 0.69 % 0.10 % . . -0.22 % -0.26 % -3.67 %
threekingdoms 887 -0.95 % 0.26 % . . -0.91 % -0.37 % -1.97 %
warhammer2 1871 -0.05 % 0.28 % . . -0.80 % -0.43 % -1.92 %
worldofwarships 8536 -1.22 % -0.08 % . . -0.83 % 0.04 % -2.58 %
youngblood 843 -0.23 % -0.36 % . . -0.65 % . -2.72 %
------------------------------------------------------------------------------------------------------
All affected 46907 -0.17 % -0.12 % 1.95 % . -0.47 % 0.04 % -2.56 %
------------------------------------------------------------------------------------------------------
Total 64338 -0.14 % -0.10 % 1.95 % . -0.43 % 0.02 % -2.39 %
Vega:
PERCENTAGE DELTAS Shaders SGPRs VGPRs SpillSGPR SpillVGPR CodeSize MaxWaves Instructions
britannia 465 0.15 % -0.03 % . . -0.14 % . -0.40 %
dirt4 4030 -0.27 % . . . -0.08 % . -0.73 %
doom 5775 . -0.01 % . . -0.12 % . -0.30 %
dota2 985 -0.32 % -0.01 % . . -0.01 % 0.01 % -0.11 %
dow3 294 . . . . -0.05 % . -0.05 %
evilwithin_demo 740 -0.06 % . . . -0.35 % . -0.43 %
f12017 5462 0.04 % 0.02 % . . -0.13 % -0.02 % -0.32 %
gtav 2955 -0.22 % -0.06 % . . -0.07 % 0.03 % -0.14 %
madmax 922 -0.04 % . . . -0.21 % 0.01 % -0.31 %
nier 7030 0.04 % 0.06 % . . -0.12 % -0.06 % -0.46 %
redout 2487 0.01 % -0.02 % . . -0.26 % . -0.34 %
rottr 8039 -0.02 % -0.01 % . . -0.13 % 0.02 % -0.11 %
shadowofmordor 2055 . . . . -0.08 % . -0.15 %
sottr_demo 5618 -0.48 % -0.02 % . . -0.08 % . -0.21 %
strange_brigade 1412 . . . . -0.02 % . -0.03 %
talos 782 0.10 % -0.18 % . . -0.06 % 0.15 % -0.75 %
thewitness 3150 0.56 % -0.13 % . . -0.09 % 0.05 % -0.27 %
threekingdoms 887 -0.97 % 0.17 % . . -0.58 % -0.21 % -0.55 %
warhammer2 1871 -0.31 % 0.27 % . . -0.43 % -0.29 % -0.39 %
worldofwarships 8536 -0.20 % . . . -0.20 % . -0.33 %
youngblood 843 -0.12 % . . . -0.28 % . -0.38 %
------------------------------------------------------------------------------------------------------
All affected 22651 -0.17 % . . . -0.23 % -0.04 % -0.49 %
------------------------------------------------------------------------------------------------------
Total 64338 -0.08 % . . . -0.15 % -0.01 % -0.33 %
with the last patch:
Navi:
PERCENTAGE DELTAS Shaders SGPRs VGPRs SpillSGPR SpillVGPR CodeSize MaxWaves Instructions
britannia 465 -0.10 % -0.53 % . . -0.50 % -0.03 % -1.92 %
dirt4 4030 -0.90 % -0.49 % . . -0.31 % 0.41 % -2.00 %
doom 5775 0.12 % -0.24 % . . -0.06 % . -2.00 %
dota2 985 -0.26 % -0.01 % . . -0.28 % 0.01 % -1.58 %
dow3 294 0.08 % -0.06 % . . -1.06 % 0.04 % -1.66 %
evilwithin_demo 740 0.08 % -0.30 % . . -1.09 % 0.05 % -3.45 %
f12017 5462 -0.24 % -0.21 % . . -0.38 % 0.07 % -2.42 %
gtav 2955 -0.08 % -0.56 % . . -1.23 % 0.12 % -3.04 %
madmax 922 -0.11 % -0.16 % . . -0.51 % 0.09 % -2.44 %
nier 7030 -0.08 % 0.05 % . . -0.14 % -0.04 % -1.41 %
redout 2487 1.08 % . . . -0.70 % -0.01 % -3.72 %
rottr 8039 0.46 % -0.16 % . . -0.57 % 0.11 % -3.01 %
shadowofmordor 2055 -0.06 % -0.14 % . . -0.18 % 0.06 % -1.18 %
sottr_demo 5618 -0.58 % . . . -0.21 % . -1.80 %
strange_brigade 1412 -0.16 % . . . -0.14 % . -1.90 %
talos 782 0.64 % -0.03 % . . -0.97 % . -4.63 %
thewitness 3150 0.69 % 0.10 % . . -0.22 % -0.26 % -3.67 %
threekingdoms 887 -1.04 % 0.27 % . . -1.05 % -0.37 % -2.16 %
warhammer2 1871 -0.04 % 0.31 % . . -0.97 % -0.43 % -2.10 %
worldofwarships 8536 -1.52 % -0.08 % . . -0.97 % 0.04 % -2.75 %
youngblood 843 -0.32 % -0.36 % . . -0.71 % . -2.81 %
------------------------------------------------------------------------------------------------------
All affected 48098 -0.25 % -0.12 % . . -0.55 % 0.04 % -2.64 %
------------------------------------------------------------------------------------------------------
Total 64338 -0.21 % -0.11 % . . -0.52 % 0.03 % -2.50 %
Vega:
PERCENTAGE DELTAS Shaders SGPRs VGPRs SpillSGPR SpillVGPR CodeSize MaxWaves Instructions
britannia 465 0.15 % -0.03 % . . -0.14 % . -0.40 %
dirt4 4030 -0.27 % . . . -0.08 % . -0.73 %
doom 5775 . -0.01 % . . -0.13 % . -0.30 %
dota2 985 -0.32 % -0.01 % . . -0.01 % 0.01 % -0.11 %
dow3 294 . . . . -0.06 % . -0.06 %
evilwithin_demo 740 -0.06 % . . . -0.35 % . -0.43 %
f12017 5462 . 0.02 % . . -0.13 % -0.02 % -0.33 %
gtav 2955 -0.22 % -0.06 % . . -0.07 % 0.03 % -0.14 %
madmax 922 -0.04 % . . . -0.21 % 0.01 % -0.31 %
nier 7030 0.04 % 0.06 % . . -0.12 % -0.06 % -0.46 %
redout 2487 0.01 % -0.02 % . . -0.26 % . -0.34 %
rottr 8039 -0.02 % -0.01 % . . -0.13 % 0.02 % -0.11 %
shadowofmordor 2055 . . . . -0.08 % . -0.15 %
sottr_demo 5618 -0.48 % -0.02 % . . -0.08 % . -0.21 %
strange_brigade 1412 . . . . -0.02 % . -0.03 %
talos 782 0.10 % -0.18 % . . -0.06 % 0.15 % -0.75 %
thewitness 3150 0.56 % -0.13 % . . -0.09 % 0.05 % -0.27 %
threekingdoms 887 -0.97 % 0.17 % . . -0.58 % -0.21 % -0.55 %
warhammer2 1871 -0.31 % 0.27 % . . -0.43 % -0.29 % -0.39 %
worldofwarships 8536 -0.20 % . . . -0.20 % . -0.33 %
youngblood 843 -0.12 % . . . -0.28 % . -0.38 %
------------------------------------------------------------------------------------------------------
All affected 22705 -0.18 % . . . -0.23 % -0.04 % -0.49 %
------------------------------------------------------------------------------------------------------
Total 64338 -0.08 % . . . -0.15 % -0.01 % -0.33 %
(description not updated for the "aco: don't move literal to reg when making an instruction VOP3 on GFX10" and later patches)
Edited by Rhys Perry