From fd7d34f71676d58184ba841f73b816967ec63fef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tapani=20P=C3=A4lli?= Date: Sun, 14 Feb 2021 17:49:35 +0200 Subject: [PATCH] anv: toggle on sample shading if it is set in the shader MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4300 Signed-off-by: Tapani Pälli Reviewed-by: Jason Ekstrand Part-of: --- src/intel/vulkan/anv_pipeline.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/intel/vulkan/anv_pipeline.c b/src/intel/vulkan/anv_pipeline.c index 49e67b3002d..cfa95e02153 100644 --- a/src/intel/vulkan/anv_pipeline.c +++ b/src/intel/vulkan/anv_pipeline.c @@ -743,6 +743,13 @@ anv_pipeline_lower_nir(struct anv_pipeline *pipeline, nir_shader *nir = stage->nir; if (nir->info.stage == MESA_SHADER_FRAGMENT) { + /* Check if sample shading is enabled in the shader and toggle + * it on for the pipeline independent if sampleShadingEnable is set. + */ + nir_shader_gather_info(nir, nir_shader_get_entrypoint(nir)); + if (nir->info.fs.uses_sample_shading) + anv_pipeline_to_graphics(pipeline)->sample_shading_enable = true; + NIR_PASS_V(nir, nir_lower_wpos_center, anv_pipeline_to_graphics(pipeline)->sample_shading_enable); NIR_PASS_V(nir, nir_lower_input_attachments,