diff options
author | Bruce Cherniak <[email protected]> | 2016-09-27 13:27:08 -0500 |
---|---|---|
committer | Tim Rowley <[email protected]> | 2016-10-03 09:57:45 -0500 |
commit | 903d00cd32137161c0b57bcba95af51e47d91fa5 (patch) | |
tree | b285c268643da1614be965e13ec95a8287e5bd83 /src/gallium/drivers/swr/swr_context.h | |
parent | cdac0427331442213a2cb8ed5a71057e1bb9793e (diff) |
swr: Removed stalling SwrWaitForIdle from queries.
Previous fundamental change in stats gathering added a temporary
SwrWaitForIdle to begin_query and end_query. Code has been reworked to
remove stall.
Reviewed-by: George Kyriazis <[email protected]>
Diffstat (limited to 'src/gallium/drivers/swr/swr_context.h')
-rw-r--r-- | src/gallium/drivers/swr/swr_context.h | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/src/gallium/drivers/swr/swr_context.h b/src/gallium/drivers/swr/swr_context.h index 6854d697db9..eecfe0d40de 100644 --- a/src/gallium/drivers/swr/swr_context.h +++ b/src/gallium/drivers/swr/swr_context.h @@ -92,7 +92,7 @@ struct swr_draw_context { float userClipPlanes[PIPE_MAX_CLIP_PLANES][4]; SWR_SURFACE_STATE renderTargets[SWR_NUM_ATTACHMENTS]; - void *swr_ctx; + void *pStats; }; /* gen_llvm_types FINI */ @@ -159,9 +159,6 @@ struct swr_context { /* SWR private state - draw context */ struct swr_draw_context swrDC; - SWR_STATS stats; - SWR_STATS_FE statsFE; - unsigned dirty; /**< Mask of SWR_NEW_x flags */ }; @@ -172,11 +169,13 @@ swr_context(struct pipe_context *pipe) } static INLINE void -swr_update_draw_context(struct swr_context *ctx) +swr_update_draw_context(struct swr_context *ctx, + struct swr_query_result *pqr = nullptr) { swr_draw_context *pDC = (swr_draw_context *)SwrGetPrivateContextState(ctx->swrContext); - ctx->swrDC.swr_ctx = ctx; + if (pqr) + ctx->swrDC.pStats = pqr; memcpy(pDC, &ctx->swrDC, sizeof(swr_draw_context)); } |