Module: Mesa Branch: main Commit: fbe4e16db2d369c3e54067d17f81bdce8661a461 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=fbe4e16db2d369c3e54067d17f81bdce8661a461
Author: Samuel Pitoiset <samuel.pitoi...@gmail.com> Date: Wed Oct 11 18:45:15 2023 +0200 Revert "radv: disable DCC with signedness reinterpretation on GFX11" This was affecting Cyberpunk and A Plague Tale Requiem but both issues should be fixed now. The issue with A Plague Tale Requiem was because of a game bug and vkd3d-proton now has a workaround. This reverts commit e6735409eefaec52ef78acecd3f3e7c310c63887. Signed-off-by: Samuel Pitoiset <samuel.pitoi...@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25664> --- src/amd/vulkan/radv_formats.c | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/src/amd/vulkan/radv_formats.c b/src/amd/vulkan/radv_formats.c index 103d982de0b..7ed01f2aae0 100644 --- a/src/amd/vulkan/radv_formats.c +++ b/src/amd/vulkan/radv_formats.c @@ -1959,6 +1959,10 @@ radv_dcc_formats_compatible(enum amd_gfx_level gfx_level, VkFormat format1, VkFo unsigned size1, size2; int i; + /* All formats are compatible on GFX11. */ + if (gfx_level >= GFX11) + return true; + if (format1 == format2) return true; @@ -1981,16 +1985,8 @@ radv_dcc_formats_compatible(enum amd_gfx_level gfx_level, VkFormat format1, VkFo (type1 == dcc_channel_float) != (type2 == dcc_channel_float) || size1 != size2) return false; - if (type1 != type2) { - /* FIXME: All formats should be compatible on GFX11 but for some reasons DCC with signedness - * reinterpretation doesn't work as expected, like R8_UINT<->R8_SINT. Note that disabling - * fast-clears doesn't help. - */ - if (gfx_level >= GFX11) - return false; - + if (type1 != type2) *sign_reinterpret = true; - } return true; }