anv: toggle on sample shading if it is set in the shader

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4300
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9040>
This commit is contained in:
Tapani Pälli 2021-02-14 17:49:35 +02:00 committed by Marge Bot
parent 18bc7d9d3f
commit fd7d34f716
1 changed files with 7 additions and 0 deletions

View File

@ -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,