radeonsi: clean up si_do_fast_color_clear parameters

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
This commit is contained in:
Marek Olšák 2017-11-25 21:08:20 +01:00
parent 092756f23f
commit 980bf9a27e

View file

@ -342,11 +342,10 @@ static void si_set_optimal_micro_tile_mode(struct si_screen *sscreen,
}
static void si_do_fast_color_clear(struct si_context *sctx,
struct pipe_framebuffer_state *fb,
struct r600_atom *fb_state,
unsigned *buffers, ubyte *dirty_cbufs,
unsigned *buffers,
const union pipe_color_union *color)
{
struct pipe_framebuffer_state *fb = &sctx->framebuffer.state;
int i;
/* This function is broken in BE, so just disable this path for now */
@ -495,9 +494,8 @@ static void si_do_fast_color_clear(struct si_context *sctx,
si_set_clear_color(tex, fb->cbufs[i]->format, color);
if (dirty_cbufs)
*dirty_cbufs |= 1 << i;
sctx->b.set_atom_dirty(&sctx->b, fb_state, true);
sctx->framebuffer.dirty_cbufs |= 1 << i;
si_mark_atom_dirty(sctx, &sctx->framebuffer.atom);
*buffers &= ~clear_bit;
}
}
@ -513,10 +511,7 @@ static void si_clear(struct pipe_context *ctx, unsigned buffers,
zsbuf ? (struct r600_texture*)zsbuf->texture : NULL;
if (buffers & PIPE_CLEAR_COLOR) {
si_do_fast_color_clear(sctx, fb,
&sctx->framebuffer.atom, &buffers,
&sctx->framebuffer.dirty_cbufs,
color);
si_do_fast_color_clear(sctx, &buffers, color);
if (!buffers)
return; /* all buffers have been fast cleared */
}