[Mesa-dev] [PATCH v2] i965: Implement ARB_pipeline_statistics_query tessellation counters.
Kristian Høgsberg
krh at bitplanet.net
Tue Nov 17 11:28:25 PST 2015
On Tue, Nov 17, 2015 at 11:25 AM, Kenneth Graunke <kenneth at whitecape.org> wrote:
> We basically just need to uncomment Ben's code.
Reviewed-by: Kristian Høgsberg <krh at bitplanet.net>
> Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
> ---
> src/mesa/drivers/dri/i965/gen6_queryobj.c | 16 ++++++++--------
> 1 file changed, 8 insertions(+), 8 deletions(-)
>
> Still totally untested, but now less blatantly broken...
>
> diff --git a/src/mesa/drivers/dri/i965/gen6_queryobj.c b/src/mesa/drivers/dri/i965/gen6_queryobj.c
> index 9f4a5db..d508c4c 100644
> --- a/src/mesa/drivers/dri/i965/gen6_queryobj.c
> +++ b/src/mesa/drivers/dri/i965/gen6_queryobj.c
> @@ -136,8 +136,8 @@ emit_pipeline_stat(struct brw_context *brw, drm_intel_bo *bo,
> IA_VERTICES_COUNT, /* VERTICES_SUBMITTED */
> IA_PRIMITIVES_COUNT, /* PRIMITIVES_SUBMITTED */
> VS_INVOCATION_COUNT, /* VERTEX_SHADER_INVOCATIONS */
> - 0, /* HS_INVOCATION_COUNT,*/ /* TESS_CONTROL_SHADER_PATCHES */
> - 0, /* DS_INVOCATION_COUNT,*/ /* TESS_EVALUATION_SHADER_INVOCATIONS */
> + HS_INVOCATION_COUNT, /* TESS_CONTROL_SHADER_PATCHES */
> + DS_INVOCATION_COUNT, /* TESS_EVALUATION_SHADER_INVOCATIONS */
> GS_PRIMITIVES_COUNT, /* GEOMETRY_SHADER_PRIMITIVES_EMITTED */
> PS_INVOCATION_COUNT, /* FRAGMENT_SHADER_INVOCATIONS */
> CS_INVOCATION_COUNT, /* COMPUTE_SHADER_INVOCATIONS */
> @@ -231,6 +231,8 @@ gen6_queryobj_get_results(struct gl_context *ctx,
> case GL_CLIPPING_INPUT_PRIMITIVES_ARB:
> case GL_CLIPPING_OUTPUT_PRIMITIVES_ARB:
> case GL_COMPUTE_SHADER_INVOCATIONS_ARB:
> + case GL_TESS_CONTROL_SHADER_PATCHES_ARB:
> + case GL_TESS_EVALUATION_SHADER_INVOCATIONS_ARB:
> query->Base.Result = results[1] - results[0];
> break;
>
> @@ -250,8 +252,6 @@ gen6_queryobj_get_results(struct gl_context *ctx,
> query->Base.Result /= 4;
> break;
>
> - case GL_TESS_CONTROL_SHADER_PATCHES_ARB:
> - case GL_TESS_EVALUATION_SHADER_INVOCATIONS_ARB:
> default:
> unreachable("Unrecognized query target in brw_queryobj_get_results()");
> }
> @@ -329,11 +329,11 @@ gen6_begin_query(struct gl_context *ctx, struct gl_query_object *q)
> case GL_CLIPPING_INPUT_PRIMITIVES_ARB:
> case GL_CLIPPING_OUTPUT_PRIMITIVES_ARB:
> case GL_COMPUTE_SHADER_INVOCATIONS_ARB:
> + case GL_TESS_CONTROL_SHADER_PATCHES_ARB:
> + case GL_TESS_EVALUATION_SHADER_INVOCATIONS_ARB:
> emit_pipeline_stat(brw, query->bo, query->Base.Stream, query->Base.Target, 0);
> break;
>
> - case GL_TESS_CONTROL_SHADER_PATCHES_ARB:
> - case GL_TESS_EVALUATION_SHADER_INVOCATIONS_ARB:
> default:
> unreachable("Unrecognized query target in brw_begin_query()");
> }
> @@ -381,12 +381,12 @@ gen6_end_query(struct gl_context *ctx, struct gl_query_object *q)
> case GL_CLIPPING_INPUT_PRIMITIVES_ARB:
> case GL_CLIPPING_OUTPUT_PRIMITIVES_ARB:
> case GL_GEOMETRY_SHADER_INVOCATIONS:
> + case GL_TESS_CONTROL_SHADER_PATCHES_ARB:
> + case GL_TESS_EVALUATION_SHADER_INVOCATIONS_ARB:
> emit_pipeline_stat(brw, query->bo,
> query->Base.Stream, query->Base.Target, 1);
> break;
>
> - case GL_TESS_CONTROL_SHADER_PATCHES_ARB:
> - case GL_TESS_EVALUATION_SHADER_INVOCATIONS_ARB:
> default:
> unreachable("Unrecognized query target in brw_end_query()");
> }
> --
> 2.6.2
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev
mailing list