turnip: set depth plane control zmode to A6XX_LATE_Z when sample mask is written

Otherwise, gl_SampleMask[] writes are ignored and the stencil test works like
if all samples were enabled.

Fixes: dEQP-VK.renderpass.suballocation.multisample.*s8*

Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
Reviewed-by: Hyunjun Ko <zzoon@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9478>
This commit is contained in:
Samuel Iglesias Gonsálvez
2021-03-09 13:32:48 +01:00
committed by Marge Bot
parent 9d42e71505
commit 0acd7df67b
+1 -1
View File
@@ -1415,7 +1415,7 @@ tu6_emit_fs_outputs(struct tu_cs *cs,
enum a6xx_ztest_mode zmode;
if ((fs->shader && !fs->shader->nir->info.fs.early_fragment_tests) &&
(fs->no_earlyz || fs->has_kill || fs->writes_pos || fs->writes_stencilref || no_earlyz)) {
(fs->no_earlyz || fs->has_kill || fs->writes_pos || fs->writes_stencilref || no_earlyz || fs->writes_smask)) {
zmode = A6XX_LATE_Z;
} else {
zmode = A6XX_EARLY_Z;