gallium/radeon: simplify restoring render condition after flush

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
This commit is contained in:
Marek Olšák 2015-11-07 15:00:55 +01:00
parent 600e212d87
commit 3521907622
3 changed files with 5 additions and 26 deletions

View file

@ -80,11 +80,6 @@ void r600_need_cs_space(struct r600_context *ctx, unsigned num_dw,
num_dw += ctx->b.streamout.num_dw_for_end;
}
/* Count in render_condition(NULL) at the end of CS. */
if (ctx->b.predicate_drawing) {
num_dw += 3;
}
/* SX_MISC */
if (ctx->b.chip_class == R600) {
num_dw += 3;

View file

@ -134,17 +134,6 @@ static void r600_memory_barrier(struct pipe_context *ctx, unsigned flags)
void r600_preflush_suspend_features(struct r600_common_context *ctx)
{
/* Disable render condition. */
ctx->saved_render_cond = NULL;
ctx->saved_render_cond_cond = FALSE;
ctx->saved_render_cond_mode = 0;
if (ctx->current_render_cond) {
ctx->saved_render_cond = ctx->current_render_cond;
ctx->saved_render_cond_cond = ctx->current_render_cond_cond;
ctx->saved_render_cond_mode = ctx->current_render_cond_mode;
ctx->b.render_condition(&ctx->b, NULL, FALSE, 0);
}
/* suspend queries */
ctx->queries_suspended_for_flush = false;
if (ctx->num_cs_dw_nontimer_queries_suspend) {
@ -173,12 +162,11 @@ void r600_postflush_resume_features(struct r600_common_context *ctx)
r600_resume_timer_queries(ctx);
}
/* Re-enable render condition. */
if (ctx->saved_render_cond) {
ctx->b.render_condition(&ctx->b, ctx->saved_render_cond,
ctx->saved_render_cond_cond,
ctx->saved_render_cond_mode);
}
/* Re-emit PKT3_SET_PREDICATION. */
if (ctx->current_render_cond)
ctx->b.render_condition(&ctx->b, ctx->current_render_cond,
ctx->current_render_cond_cond,
ctx->current_render_cond_mode);
}
static void r600_flush_from_st(struct pipe_context *ctx,

View file

@ -422,10 +422,6 @@ struct r600_common_context {
boolean current_render_cond_cond;
bool predicate_drawing;
bool render_cond_force_off; /* for u_blitter */
/* For context flushing. */
struct pipe_query *saved_render_cond;
boolean saved_render_cond_cond;
unsigned saved_render_cond_mode;
/* MSAA sample locations.
* The first index is the sample index.