From: Samuel Pitoiset Date: Wed, 25 Apr 2018 08:56:15 +0000 (+0200) Subject: radv: fix DCC enablement since partial MSAA implementation X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=a6fbefa67b5b0ed1ee42a9034ee74dfaed1c389a;p=mesa.git radv: fix DCC enablement since partial MSAA implementation dcc_msaa_allowed is always false on GFX9+ and only true on VI if RADV_PERFTEST=dccmsaa is set. This means DCC was disabled in some situations where it should not. This is likely going to fix a performance regression. Fixes: 2f63b3dd09 ("radv: enable DCC for MSAA 2x textures on VI under an option") Cc: 18.1 Signed-off-by: Samuel Pitoiset Reviewed-by: Bas Nieuwenhuizen --- diff --git a/src/amd/vulkan/radv_image.c b/src/amd/vulkan/radv_image.c index 348f4c7b34c..793f861f4f6 100644 --- a/src/amd/vulkan/radv_image.c +++ b/src/amd/vulkan/radv_image.c @@ -133,12 +133,12 @@ radv_use_dcc_for_image(struct radv_device *device, if (create_info->scanout) return false; - /* FIXME: DCC for MSAA with 4x and 8x samples doesn't work yet. */ - if (pCreateInfo->samples > 2) - return false; - - /* TODO: Enable DCC for MSAA textures. */ - if (!device->physical_device->dcc_msaa_allowed) + /* FIXME: DCC for MSAA with 4x and 8x samples doesn't work yet, while + * 2x can be enabled with an option. + */ + if (pCreateInfo->samples > 2 || + (pCreateInfo->samples == 2 && + !device->physical_device->dcc_msaa_allowed)) return false; /* Determine if the formats are DCC compatible. */