return;
}
+ unsigned rp_clears_enabled = ctx->rp_clears_enabled;
+
if (ctx->void_clears & buffers) {
unsigned void_clears = ctx->void_clears & buffers;
ctx->void_clears &= ~buffers;
else
ctx->rp_clears_enabled |= (buffers & PIPE_CLEAR_DEPTHSTENCIL);
}
+ ctx->rp_changed |= ctx->rp_clears_enabled != rp_clears_enabled;
}
static inline bool
void
zink_fb_clear_reset(struct zink_context *ctx, unsigned i)
{
+ unsigned rp_clears_enabled = ctx->clears_enabled;
util_dynarray_clear(&ctx->fb_clears[i].clears);
if (i == PIPE_MAX_COLOR_BUFS) {
ctx->clears_enabled &= ~PIPE_CLEAR_DEPTHSTENCIL;
ctx->clears_enabled &= ~(PIPE_CLEAR_COLOR0 << i);
ctx->rp_clears_enabled &= ~(PIPE_CLEAR_COLOR0 << i);
}
+ if (ctx->rp_clears_enabled != rp_clears_enabled)
+ ctx->rp_changed = true;
}
void