mesa/src
Nanley Chery 7779b1d71b iris: Disable color fast-clears in iris_copy_region
During a blorp_copy between two color surfaces, the source and
destination formats are re-interpreted to UINT (if possible) to avoid
losing bits.

If either surface has CCS_E, then extra steps are taken to support
fast-cleared blocks with this format re-interpretation. Each clear value
is packed in the original format, then unpacked in the new UINT format.
This is then placed into the surface state object for some platforms.
There are couple problems here:

1. This is only being done for CCS_E, but MCS also supports fast-clears.

2. These steps aren't enough for fast-clears on gen11+. On gen11+, the
   clear color isn't part of the surface state object that BLORP
   creates. Instead it's stored in a separate BO, that the surface state
   object references. Since that BO doesn't get updated during
   blorp_copy, the incorrect/unconverted clear color is used for the copy
   operation.

I didn't measure any performance gain from this code, so this patch
simply disables the feature.

Makes iris pass the nv_copy_image-simple piglit test on gen11+.

Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5388>
2020-11-13 21:01:10 +00:00
..
amd aco/tests: add some more clamp combining tests 2020-11-13 12:34:27 +00:00
android_stub mesa: Make the android_stub be a set of non-installed shared libraries. 2020-09-22 17:09:22 +00:00
broadcom v3dv: move authenticated display fd acquisition to swapchain creation time 2020-11-12 10:02:20 +01:00
compiler nir: allow reordering of loads from read-only modes 2020-11-13 17:25:01 +00:00
drm-shim drm-shim: Fix unused variable warnings from asserts in release build. 2020-08-28 22:45:08 +00:00
egl Add EGL xcb platform 2020-11-12 16:39:47 +00:00
etnaviv etnaviv: drm: fix BO refcount race 2020-10-30 13:27:44 +00:00
freedreno turnip: Fix file descriptor return. 2020-11-12 22:32:23 +00:00
gallium iris: Disable color fast-clears in iris_copy_region 2020-11-13 21:01:10 +00:00
gbm egl: implement EGL_EXT_protected_surface support 2020-11-02 10:15:47 +01:00
getopt
glx driconf: remove the redundant glx-extension-disabling options 2020-11-13 08:48:34 +02:00
gtest gtest: Update to 1.10.0 2020-04-20 11:57:11 +00:00
hgl
imgui
intel anv: fix a build race between generating a header and using it 2020-11-12 15:57:05 +01:00
loader loader: Print dlerror() output in the failure message 2020-11-04 21:45:37 +00:00
mapi mesa: Implement GL_ANGLE_pack_reverse_row_order 2020-11-06 02:28:44 +00:00
mesa mesa: Clamp some depth values in glClearBufferfi 2020-11-13 18:41:53 +00:00
microsoft microsoft/compiler: correct typo 2020-11-13 08:35:34 +00:00
panfrost panfrost: Fix stack shift calculation 2020-11-13 20:49:06 +00:00
util driconf: remove the redundant glx-extension-disabling options 2020-11-13 08:48:34 +02:00
virtio virgl: update protocol headers 2020-08-21 18:38:44 +00:00
vulkan util: add mapping from Vulkan to Gallium R64 integer formats 2020-11-09 18:28:59 +00:00
meson.build d3d12: introduce d3d12 gallium driver 2020-11-10 15:37:07 +00:00
SConscript driconf: drop now unused translation facility 2020-06-22 21:50:12 +00:00