aco: convert SALU instruction to VALU if result is moved to VGPR
Based on !7635 (closed).
Currently, the optimization is super conservative, but at least this ensures that nothing really regresses. I might give it another attempt to optimize more aggressively some time in future.
PERCENTAGE DELTAS Shaders SGPRs VGPRs SpillSGPRs SpillVGPRs CodeSize MaxWaves Instrs Cycles VMEM SMEM VClause SClause Copies Branches PreSGPRs PreVGPRs
assassins_creed_origins 2114 . . . . -0.00% . -0.01% -0.01% -0.01% -0.01% -0.02% -0.00% -0.16% . -0.01% +0.00%
battlefront2 4568 . . . . -0.00% . -0.00% -0.00% -0.00% -0.00% . . -0.04% . . .
britannia 469 . . . . . . . . . . . . . . . .
control_msaa4x 752 . . . . . . -0.00% -0.00% . . . . -0.01% . . .
control_no_msaa 752 . . . . . . -0.00% -0.00% . . . . -0.01% . . .
dark_souls_1_remastered 4249 . . . . . . . . . . . . . . . .
dark_souls_2_sotfs 6876 . . . . . . . . . . . . . . . .
dark_souls_3 8935 . +0.00% . . -0.00% . -0.00% -0.00% . +0.00% . . -0.00% . -0.00% +0.00%
death_stranding 1467 . . . . -0.00% . -0.05% -0.07% -0.03% -0.04% . . -0.51% . -0.00% +0.00%
detroit_become_human 19959 . . . . . . . . . . . . . . . .
deus_ex_md 8063 . . . . -0.00% . -0.00% -0.00% . . . . -0.00% . . .
dirt4 4078 . . . . -0.01% . -0.02% -0.01% . . . . -0.15% . . +0.04%
doom_2016 2963 . . . . . . . . . . . . . . . .
doom_eternal 1211 . . . . . . -0.00% -0.00% . -0.00% . . -0.00% . . .
dota2 1015 . . . . . . . . . . . . . . . .
dow3 282 . . . . . . -0.00% -0.00% . -0.01% . . -0.03% . . .
evilwithin_demo 742 . . . . . . . . . . . . . . . .
f12017 5503 . . . . . . -0.01% -0.01% -0.00% -0.00% . . -0.13% . . .
gtav 2991 . . . . +0.00% . . . . . . . . . . .
hitman 2785 . . . . -0.00% . -0.05% -0.12% -0.00% -0.00% . . -0.74% . . .
PERCENTAGE DELTAS Shaders SGPRs VGPRs SpillSGPRs SpillVGPRs CodeSize MaxWaves Instrs Cycles VMEM SMEM VClause SClause Copies Branches PreSGPRs PreVGPRs
madmax 948 . . . . +0.00% . -0.00% -0.00% -0.00% -0.00% . . -0.03% . -0.01% .
nier 5492 -0.03% . . . -0.00% . -2.27% -2.27% -1.66% -0.97% -0.05% +0.00% -25.39% . -0.00% .
parallel-rdp/small_subgroup 246 . . . . . . -0.19% -0.66% -0.05% . . . -1.97% . . .
parallel-rdp/small_uber_subgroup 55 . . . . . . -0.05% -0.05% -0.05% . . . -0.16% . . .
parallel-rdp/subgroup 327 . +0.06% -14.29% . -0.02% -0.03% -0.19% -0.08% . -0.02% . -0.02% -2.35% . . +0.08%
parallel-rdp/uber_subgroup 55 . . -4.91% +0.66% +0.01% . +0.08% +0.09% -1.05% +0.09% +0.15% . +0.88% -0.04% . .
rdr2 3888 . . . . -0.00% . -0.01% -0.01% +0.00% -0.00% . . -0.07% . -0.01% -0.00%
redout 2520 . . . . . . -0.00% -0.00% . -0.00% . . -0.00% . . .
rottr 8130 . . . . +0.00% . -0.00% -0.00% . . . . -0.01% . -0.00% .
sottr_demo 5711 -0.00% . . . +0.00% . -0.00% -0.00% -0.00% -0.00% . . -0.01% . +0.00% -0.00%
strange_brigade 1417 . . . . . . -0.00% -0.00% . . . . -0.01% . . .
talos 794 . . . . . . . . . . . . . . . .
thewitness 3151 . . . . . . . . . . . . . . . .
threekingdoms 847 . . . . -0.00% . -0.00% -0.00% . . . . -0.01% . -0.01% .
tomb_raider 16232 . . . . . . . . . . . . . . . .
warhammer2 1803 . . . . . . . . . . . . . . . .
wolfenstein2_fp16 1012 . . . . . . -0.00% +0.00% . . . . -0.00% . . .
worldofwarships 5590 . . . . . . -0.00% -0.00% . . . . -0.00% . . .
youngblood 843 . . . . +0.00% . -0.00% -0.00% +0.01% . . . -0.01% . . .
youngblood_fp16 682 . . . . . . -0.00% -0.00% . . . . -0.01% . . .
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
All affected 2675 -0.08% +0.01% -1.64% +0.32% -0.01% -0.01% -2.08% -0.36% -3.93% -2.15% -0.04% +0.00% -17.64% -0.00% -0.03% +0.06%
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total 139517 -0.00% +0.00% -0.07% +0.32% -0.00% -0.00% -0.06% -0.01% -0.08% -0.03% -0.00% +0.00% -0.73% -0.00% -0.00% +0.00%