summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarek Olšák <marek.olsak@amd.com>2016-04-30 21:44:41 +0200
committerMarek Olšák <marek.olsak@amd.com>2016-05-06 12:56:47 +0200
commit4489d75a58716327380d6b2e8c3db7df0be3c717 (patch)
tree8ad50b2ca166337866e52ed4e4d8cc4788252a7f
parentbd326c229c528a214c9fda705e7a961cfa49ac9e (diff)
r600g: use the hw MSAA resolving if formats are compatible
This allows resolving RGBA into RGBX. This should improve HL2 Lost Coast performance. Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
-rw-r--r--src/gallium/drivers/r600/r600_blit.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gallium/drivers/r600/r600_blit.c b/src/gallium/drivers/r600/r600_blit.c
index ed67cb8699..9230b4021b 100644
--- a/src/gallium/drivers/r600/r600_blit.c
+++ b/src/gallium/drivers/r600/r600_blit.c
@@ -808,7 +808,8 @@ static bool do_hardware_msaa_resolve(struct pipe_context *ctx,
info->dst.resource->nr_samples <= 1 &&
util_max_layer(info->src.resource, 0) == 0 &&
util_max_layer(info->dst.resource, info->dst.level) == 0 &&
- info->dst.format == info->src.format &&
+ util_is_format_compatible(util_format_description(info->src.format),
+ util_format_description(info->dst.format)) &&
!util_format_is_pure_integer(format) &&
!util_format_is_depth_or_stencil(format) &&
!info->scissor_enable &&