mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-07 19:30:12 +01:00
panfrost: Flesh out allow_forward_pixel_to_kill check
A few cases missed, probably some more bugs hidden here! Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9105>
This commit is contained in:
parent
2e83481a1a
commit
9d2b2e3c67
1 changed files with 6 additions and 1 deletions
|
|
@ -427,6 +427,7 @@ panfrost_prepare_bifrost_fs_state(struct panfrost_context *ctx,
|
|||
const struct panfrost_device *dev = pan_device(ctx->base.screen);
|
||||
struct panfrost_shader_state *fs = panfrost_get_shader_state(ctx, PIPE_SHADER_FRAGMENT);
|
||||
unsigned rt_count = ctx->pipe_framebuffer.nr_cbufs;
|
||||
bool alpha_to_coverage = ctx->blend->base.alpha_to_coverage;
|
||||
|
||||
if (!panfrost_fs_required(fs, blend, rt_count)) {
|
||||
state->properties.uniform_buffer_count = 32;
|
||||
|
|
@ -445,8 +446,12 @@ panfrost_prepare_bifrost_fs_state(struct panfrost_context *ctx,
|
|||
no_blend &= (!blend[i].load_dest | blend[i].no_colour);
|
||||
|
||||
state->properties.bifrost.allow_forward_pixel_to_kill =
|
||||
!fs->info.fs.can_discard &&
|
||||
!fs->info.fs.writes_depth &&
|
||||
!fs->info.fs.writes_stencil &&
|
||||
!fs->info.fs.writes_coverage &&
|
||||
!fs->info.fs.can_discard &&
|
||||
!fs->info.fs.outputs_read &&
|
||||
!alpha_to_coverage &&
|
||||
no_blend;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue