From 245d9fa21b138c2ca9c99d7004c5f652330e615d Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Tue, 17 Nov 2020 18:46:22 -0500 Subject: [PATCH] zink: enable early frag test execution in ntv when necessary Reviewed-by: Erik Faye-Lund Part-of: --- src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c b/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c index 624e9b7f9f4..0f1a6bb9e5a 100644 --- a/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c +++ b/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c @@ -3265,6 +3265,8 @@ nir_to_spirv(struct nir_shader *s, const struct zink_so_info *so_info, if (s->info.outputs_written & BITFIELD64_BIT(FRAG_RESULT_DEPTH)) spirv_builder_emit_exec_mode(&ctx.builder, entry_point, SpvExecutionModeDepthReplacing); + if (s->info.fs.early_fragment_tests) + spirv_builder_emit_exec_mode(&ctx.builder, entry_point, SpvExecutionModeEarlyFragmentTests); break; case MESA_SHADER_TESS_CTRL: spirv_builder_emit_exec_mode_literal(&ctx.builder, entry_point, SpvExecutionModeOutputVertices, s->info.tess.tcs_vertices_out);