The other part is |'d together. Do the happy path at compile time, and
reserve the draw time fixup for a v5 silicon issue.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10869>
* lying to the hardware about the discard and setting the
* reads tilebuffer? flag to compensate */
state->properties.midgard.shader_reads_tilebuffer =
- fs->info.fs.outputs_read ||
- (!zsa->enabled && fs->info.fs.can_discard);
+ !zsa->enabled && fs->info.fs.can_discard;
state->properties.midgard.shader_contains_discard =
zsa->enabled && fs->info.fs.can_discard;
}
/* For fragment shaders, work register count, early-z, reads at draw-time */
- if (info->stage != MESA_SHADER_FRAGMENT)
+ if (info->stage != MESA_SHADER_FRAGMENT) {
rsd->properties.midgard.work_register_count = info->work_reg_count;
+ } else {
+ rsd->properties.midgard.shader_reads_tilebuffer =
+ info->fs.outputs_read;
+ }
}
/* Classify a shader into the following pixel kill categories: