summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/radeonsi/si_state.c
diff options
context:
space:
mode:
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>2020-11-16 08:57:59 +0100
committerMarge Bot <eric+marge@anholt.net>2020-11-23 17:54:16 +0000
commitcd59c22325293d17ed76bc803d927407ae0a7abe (patch)
treed490807a22a7330d887f907b069d8524690b319a /src/gallium/drivers/radeonsi/si_state.c
parent684531fd37ca3aa15dfb34f34ada10615ff66864 (diff)
ac,radv: use better export formats for 8-bit when RB+ isn't allowed
When RB+ is enabled, R8_UINT/R8_SINT/R8_UNORM should use FP16_ABGR for 2x exporting performance. Otherwise, use 32_R to remove useless instructions needed for 16-bit compressed exports. fossils-db (Vega10): Totals from 8858 (6.35% of 139517) affected shaders: SGPRs: 801248 -> 801210 (-0.00%); split: -0.01%, +0.00% VGPRs: 596224 -> 596120 (-0.02%); split: -0.02%, +0.01% CodeSize: 71462452 -> 71356684 (-0.15%); split: -0.15%, +0.00% MaxWaves: 37097 -> 37105 (+0.02%); split: +0.04%, -0.02% Instrs: 13963177 -> 13950809 (-0.09%); split: -0.09%, +0.00% Cycles: 1476539360 -> 1476489996 (-0.00%); split: -0.00%, +0.00% VMEM: 2363008 -> 2361349 (-0.07%); split: +0.04%, -0.11% SMEM: 550362 -> 549977 (-0.07%); split: +0.01%, -0.08% VClause: 245704 -> 245727 (+0.01%); split: -0.01%, +0.02% SClause: 485161 -> 485104 (-0.01%); split: -0.01%, +0.00% Copies: 1420034 -> 1422310 (+0.16%); split: -0.01%, +0.17% Branches: 518710 -> 518705 (-0.00%) PreSGPRs: 706633 -> 706584 (-0.01%) PreVGPRs: 547163 -> 547007 (-0.03%); split: -0.03%, +0.01% Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7512>
Diffstat (limited to 'src/gallium/drivers/radeonsi/si_state.c')
-rw-r--r--src/gallium/drivers/radeonsi/si_state.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gallium/drivers/radeonsi/si_state.c b/src/gallium/drivers/radeonsi/si_state.c
index 47c19e2a20a..399cd9cf9b4 100644
--- a/src/gallium/drivers/radeonsi/si_state.c
+++ b/src/gallium/drivers/radeonsi/si_state.c
@@ -2213,7 +2213,7 @@ static void si_choose_spi_color_formats(struct si_surface *surf, unsigned format
{
struct ac_spi_color_formats formats = {};
- ac_choose_spi_color_formats(format, swap, ntype, is_depth, &formats);
+ ac_choose_spi_color_formats(format, swap, ntype, is_depth, true, &formats);
surf->spi_shader_col_format = formats.normal;
surf->spi_shader_col_format_alpha = formats.alpha;