radeonsi: minor cleanup of si_update_vs_writes_viewport_index
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
This commit is contained in:
@@ -576,7 +576,7 @@ struct pipe_video_buffer *si_video_buffer_create(struct pipe_context *pipe,
|
||||
const struct pipe_video_buffer *tmpl);
|
||||
|
||||
/* si_viewport.c */
|
||||
void si_update_vs_writes_viewport_index(struct si_context *ctx);
|
||||
void si_update_vs_viewport_state(struct si_context *ctx);
|
||||
void si_init_viewport_functions(struct si_context *ctx);
|
||||
|
||||
|
||||
|
||||
@@ -2309,7 +2309,7 @@ static void si_bind_vs_shader(struct pipe_context *ctx, void *state)
|
||||
sctx->num_vs_blit_sgprs = sel ? sel->info.properties[TGSI_PROPERTY_VS_BLIT_SGPRS] : 0;
|
||||
|
||||
si_update_common_shader_state(sctx);
|
||||
si_update_vs_writes_viewport_index(sctx);
|
||||
si_update_vs_viewport_state(sctx);
|
||||
si_set_active_descriptors_for_shader(sctx, sel);
|
||||
si_update_streamout_state(sctx);
|
||||
si_update_clip_regs(sctx, old_hw_vs, old_hw_vs_variant,
|
||||
@@ -2352,7 +2352,7 @@ static void si_bind_gs_shader(struct pipe_context *ctx, void *state)
|
||||
if (sctx->ia_multi_vgt_param_key.u.uses_tess)
|
||||
si_update_tess_uses_prim_id(sctx);
|
||||
}
|
||||
si_update_vs_writes_viewport_index(sctx);
|
||||
si_update_vs_viewport_state(sctx);
|
||||
si_set_active_descriptors_for_shader(sctx, sel);
|
||||
si_update_streamout_state(sctx);
|
||||
si_update_clip_regs(sctx, old_hw_vs, old_hw_vs_variant,
|
||||
@@ -2403,7 +2403,7 @@ static void si_bind_tes_shader(struct pipe_context *ctx, void *state)
|
||||
si_shader_change_notify(sctx);
|
||||
sctx->last_tes_sh_base = -1; /* invalidate derived tess state */
|
||||
}
|
||||
si_update_vs_writes_viewport_index(sctx);
|
||||
si_update_vs_viewport_state(sctx);
|
||||
si_set_active_descriptors_for_shader(sctx, sel);
|
||||
si_update_streamout_state(sctx);
|
||||
si_update_clip_regs(sctx, old_hw_vs, old_hw_vs_variant,
|
||||
|
||||
@@ -385,12 +385,16 @@ static void si_emit_viewport_states(struct r600_common_context *rctx,
|
||||
}
|
||||
|
||||
/**
|
||||
* This reacts to 2 state changes:
|
||||
* - VS.writes_viewport_index
|
||||
* - VS output position in window space (enable/disable)
|
||||
*
|
||||
* Normally, we only emit 1 viewport and 1 scissor if no shader is using
|
||||
* the VIEWPORT_INDEX output, and emitting the other viewports and scissors
|
||||
* is delayed. When a shader with VIEWPORT_INDEX appears, this should be
|
||||
* called to emit the rest.
|
||||
*/
|
||||
void si_update_vs_writes_viewport_index(struct si_context *ctx)
|
||||
void si_update_vs_viewport_state(struct si_context *ctx)
|
||||
{
|
||||
struct tgsi_shader_info *info = si_get_vs_info(ctx);
|
||||
bool vs_window_space;
|
||||
|
||||
Reference in New Issue
Block a user