mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-08 11:18:08 +02:00
freedreno: mark scissor state dirty when enable bit changes
We don't have a scissor enable bit in hw, so when a raster state change
results in scissor enable bit changing, we need to also mark scissor
state as dirty.
Signed-off-by: Rob Clark <robclark@freedesktop.org>
(cherry picked from commit 3eb8289aa4)
This commit is contained in:
parent
a95a93b557
commit
eaff221c9c
1 changed files with 10 additions and 0 deletions
|
|
@ -237,8 +237,18 @@ static void
|
||||||
fd_rasterizer_state_bind(struct pipe_context *pctx, void *hwcso)
|
fd_rasterizer_state_bind(struct pipe_context *pctx, void *hwcso)
|
||||||
{
|
{
|
||||||
struct fd_context *ctx = fd_context(pctx);
|
struct fd_context *ctx = fd_context(pctx);
|
||||||
|
struct pipe_scissor_state *old_scissor = fd_context_get_scissor(ctx);
|
||||||
|
|
||||||
ctx->rasterizer = hwcso;
|
ctx->rasterizer = hwcso;
|
||||||
ctx->dirty |= FD_DIRTY_RASTERIZER;
|
ctx->dirty |= FD_DIRTY_RASTERIZER;
|
||||||
|
|
||||||
|
/* if scissor enable bit changed we need to mark scissor
|
||||||
|
* state as dirty as well:
|
||||||
|
* NOTE: we can do a shallow compare, since we only care
|
||||||
|
* if it changed to/from &ctx->disable_scissor
|
||||||
|
*/
|
||||||
|
if (old_scissor != fd_context_get_scissor(ctx))
|
||||||
|
ctx->dirty |= FD_DIRTY_SCISSOR;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue