radeonsi: generalize the SI_VS_SHADER_POINTER_MASK macro

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
This commit is contained in:
Marek Olšák 2017-10-07 21:53:10 +02:00
parent 79c2e7388c
commit 69325fa88d
3 changed files with 4 additions and 4 deletions

View File

@ -95,7 +95,7 @@ static void si_blitter_end(struct pipe_context *ctx)
/* Restore shader pointers because the VS blit shader changed all
* non-global VS user SGPRs. */
sctx->shader_pointers_dirty |= SI_VS_SHADER_POINTER_MASK;
sctx->shader_pointers_dirty |= SI_DESCS_SHADER_MASK(VERTEX);
sctx->vertex_buffer_pointer_dirty = true;
si_mark_atom_dirty(sctx, &sctx->shader_pointers.atom);
}

View File

@ -247,9 +247,9 @@ enum {
#define SI_NUM_DESCS (SI_DESCS_FIRST_SHADER + \
SI_NUM_SHADERS * SI_NUM_SHADER_DESCS)
#define SI_VS_SHADER_POINTER_MASK \
#define SI_DESCS_SHADER_MASK(name) \
u_bit_consecutive(SI_DESCS_FIRST_SHADER + \
PIPE_SHADER_VERTEX * SI_NUM_SHADER_DESCS, \
PIPE_SHADER_##name * SI_NUM_SHADER_DESCS, \
SI_NUM_SHADER_DESCS)
/* This represents descriptors in memory, such as buffer resources,

View File

@ -1544,7 +1544,7 @@ void si_draw_rectangle(struct blitter_context *blitter,
info.instance_count = num_instances;
/* Don't set per-stage shader pointers for VS. */
sctx->shader_pointers_dirty &= ~SI_VS_SHADER_POINTER_MASK;
sctx->shader_pointers_dirty &= ~SI_DESCS_SHADER_MASK(VERTEX);
sctx->vertex_buffer_pointer_dirty = false;
si_draw_vbo(pipe, &info);