nir: create ffma from builders more often
We will not be able to combine instructions into ffma later if they are
exact, so create them from the start. They can be lowered later if they
are unwanted.
fossil-db (GFX10.3):
Totals from 16589 (11.34% of 146267) affected shaders:
VGPRs: 938872 -> 938704 (-0.02%)
SpillSGPRs: 11334 -> 10785 (-4.84%)
CodeSize:
96551964 ->
96498040 (-0.06%); split: -0.08%, +0.02%
MaxWaves: 338760 -> 338772 (+0.00%)
Instrs:
18356857 ->
18350486 (-0.03%); split: -0.06%, +0.02%
Latency:
561563310 ->
561414360 (-0.03%); split: -0.08%, +0.05%
InvThroughput:
145629673 ->
145594740 (-0.02%); split: -0.04%, +0.01%
fossil-db (GFX10):
Totals from 16252 (11.11% of 146267) affected shaders:
VGPRs: 893820 -> 893744 (-0.01%)
SpillSGPRs: 11334 -> 10785 (-4.84%)
CodeSize:
95890244 ->
95839124 (-0.05%); split: -0.08%, +0.02%
MaxWaves: 367704 -> 367734 (+0.01%)
Instrs:
18199741 ->
18194437 (-0.03%); split: -0.06%, +0.03%
Latency:
560912971 ->
560854179 (-0.01%); split: -0.07%, +0.06%
InvThroughput:
142899814 ->
142877939 (-0.02%); split: -0.03%, +0.02%
fossil-db (GFX9):
Totals from 16287 (11.12% of 146401) affected shaders:
SGPRs: 1312784 -> 1312768 (-0.00%); split: -0.05%, +0.05%
VGPRs: 931440 -> 931444 (+0.00%); split: -0.00%, +0.00%
SpillSGPRs: 14623 -> 14597 (-0.18%)
CodeSize:
94428788 ->
94344404 (-0.09%); split: -0.10%, +0.01%
MaxWaves: 90105 -> 90109 (+0.00%)
Instrs:
18486905 ->
18473434 (-0.07%); split: -0.08%, +0.01%
Latency:
720947295 ->
720818323 (-0.02%); split: -0.07%, +0.05%
InvThroughput:
365240104 ->
365224659 (-0.00%); split: -0.02%, +0.01%
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8056>