diff options
author | Marek Olšák <marek.olsak@amd.com> | 2016-04-08 21:24:19 +0200 |
---|---|---|
committer | Marek Olšák <marek.olsak@amd.com> | 2016-04-12 14:29:47 +0200 |
commit | 0222351fc114b9b8a34cd79598fb3f0fb4a75b0e (patch) | |
tree | 7ae0b44d7f7f7345495753c6925b5a38cd7ee19d /src/gallium/drivers/radeon/r600_pipe_common.c | |
parent | 7347c068d88a0bd10f27a48c6e068cf098442098 (diff) | |
download | external_mesa3d-0222351fc114b9b8a34cd79598fb3f0fb4a75b0e.zip external_mesa3d-0222351fc114b9b8a34cd79598fb3f0fb4a75b0e.tar.gz external_mesa3d-0222351fc114b9b8a34cd79598fb3f0fb4a75b0e.tar.bz2 |
gallium/radeon: merge timer and non-timer query lists
All of them are paused only between IBs.
Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Diffstat (limited to 'src/gallium/drivers/radeon/r600_pipe_common.c')
-rw-r--r-- | src/gallium/drivers/radeon/r600_pipe_common.c | 18 |
1 files changed, 4 insertions, 14 deletions
diff --git a/src/gallium/drivers/radeon/r600_pipe_common.c b/src/gallium/drivers/radeon/r600_pipe_common.c index 32bd6e4..f587332 100644 --- a/src/gallium/drivers/radeon/r600_pipe_common.c +++ b/src/gallium/drivers/radeon/r600_pipe_common.c @@ -156,14 +156,8 @@ static void r600_memory_barrier(struct pipe_context *ctx, unsigned flags) void r600_preflush_suspend_features(struct r600_common_context *ctx) { /* suspend queries */ - if (ctx->num_cs_dw_nontimer_queries_suspend) { - /* Since non-timer queries are suspended during blits, - * we have to guard against double-suspends. */ - r600_suspend_nontimer_queries(ctx); - ctx->nontimer_queries_suspended_by_flush = true; - } - if (!LIST_IS_EMPTY(&ctx->active_timer_queries)) - r600_suspend_timer_queries(ctx); + if (!LIST_IS_EMPTY(&ctx->active_queries)) + r600_suspend_queries(ctx); ctx->streamout.suspended = false; if (ctx->streamout.begin_emitted) { @@ -180,12 +174,8 @@ void r600_postflush_resume_features(struct r600_common_context *ctx) } /* resume queries */ - if (!LIST_IS_EMPTY(&ctx->active_timer_queries)) - r600_resume_timer_queries(ctx); - if (ctx->nontimer_queries_suspended_by_flush) { - ctx->nontimer_queries_suspended_by_flush = false; - r600_resume_nontimer_queries(ctx); - } + if (!LIST_IS_EMPTY(&ctx->active_queries)) + r600_resume_queries(ctx); } static void r600_flush_from_st(struct pipe_context *ctx, |