radv: implement VK_AMD_mixed_attachment_samples
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>
Fri, 6 Dec 2019 15:09:48 +0000 (16:09 +0100)
committerMarge Bot <eric+marge@anholt.net>
Fri, 3 Jan 2020 12:31:53 +0000 (12:31 +0000)
commit7b70502a5d9a2d209f51e5b50229110d094f4478
treede910aa447bcc6118744504fd592dc693e364aa8
parent7bbf497b68430934ab34316823e0f59ee34f9a4f
radv: implement VK_AMD_mixed_attachment_samples

With VK_AMD_mixed_attachment_samples, the number of depth/stencil
samples isn't always equal to the number of color samples. Adjust
the number of Z samples when it's different but make sure to have
a consistent sample count if there are no depth/stencil attachments.

Also adjust the number of samples used for fragment shaders which is
the number of color samples if mixed attachment samples are used.

Only enabled on GFX8+ because it's untested on previous chips.

All dEQP-VK.pipeline.multisample.mixed_attachment_samples.* now pass.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3018>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3018>
docs/relnotes/new_features.txt
src/amd/vulkan/radv_extensions.py
src/amd/vulkan/radv_pipeline.c