From eb44acc270bc7bba9891ccb3e54311c415821517 Mon Sep 17 00:00:00 2001 From: Samuel Pitoiset Date: Wed, 25 Apr 2018 10:56:15 +0200 Subject: 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 (cherry picked from commit a6fbefa67b5b0ed1ee42a9034ee74dfaed1c389a) --- src/amd/vulkan/radv_image.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/amd/vulkan/radv_image.c b/src/amd/vulkan/radv_image.c index 348f4c7b34..793f861f4f 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. */ -- cgit v1.2.3