intel/fs: Initialize the sample mask in flags register when using demote
authorCaio Oliveira <caio.oliveira@intel.com>
Wed, 16 Mar 2022 00:15:17 +0000 (17:15 -0700)
committerMarge Bot <emma+marge@anholt.net>
Fri, 25 Mar 2022 08:20:27 +0000 (08:20 +0000)
Without this change, a check for "is helper invocation" could read
uninitialized values.

Fixes: 45f5db5a84a ("intel/fs: Implement "demote to helper invocation"")
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15400>

src/intel/compiler/brw_fs.cpp

index f71ab86..97f0aee 100644 (file)
@@ -9694,7 +9694,8 @@ brw_nir_populate_wm_prog_data(const nir_shader *shader,
     * so the shader definitely kills pixels.
     */
    prog_data->uses_kill = shader->info.fs.uses_discard ||
-      key->emit_alpha_test;
+                          shader->info.fs.uses_demote ||
+                          key->emit_alpha_test;
    prog_data->uses_omask = !key->ignore_sample_mask_out &&
       (shader->info.outputs_written & BITFIELD64_BIT(FRAG_RESULT_SAMPLE_MASK));
    prog_data->computed_depth_mode = computed_depth_mode(shader);