Mesa (master): llvmpipe: report tessellation shader statistics.

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Apr 15 04:49:32 UTC 2020


Module: Mesa
Branch: master
Commit: 96e12ca7d77df365a96336561e32813818268c19
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=96e12ca7d77df365a96336561e32813818268c19

Author: Dave Airlie <airlied at redhat.com>
Date:   Thu Mar 26 15:37:01 2020 +1000

llvmpipe: report tessellation shader statistics.

Fixes KHR-GL45.pipeline_statistics_query_tests_ARB.functional_tess_queries

Reviewed-by: Roland Scheidegger <sroland at vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4560>

---

 src/gallium/drivers/llvmpipe/lp_query.c      | 4 ++++
 src/gallium/drivers/llvmpipe/lp_setup_vbuf.c | 4 ++++
 2 files changed, 8 insertions(+)

diff --git a/src/gallium/drivers/llvmpipe/lp_query.c b/src/gallium/drivers/llvmpipe/lp_query.c
index 75e3b47bfdb..c922caa8490 100644
--- a/src/gallium/drivers/llvmpipe/lp_query.c
+++ b/src/gallium/drivers/llvmpipe/lp_query.c
@@ -447,6 +447,10 @@ llvmpipe_end_query(struct pipe_context *pipe, struct pipe_query *q)
          llvmpipe->pipeline_statistics.ps_invocations - pq->stats.ps_invocations;
       pq->stats.cs_invocations =
          llvmpipe->pipeline_statistics.cs_invocations - pq->stats.cs_invocations;
+      pq->stats.hs_invocations =
+         llvmpipe->pipeline_statistics.hs_invocations - pq->stats.hs_invocations;
+      pq->stats.ds_invocations =
+         llvmpipe->pipeline_statistics.ds_invocations - pq->stats.ds_invocations;
       llvmpipe->active_statistics_queries--;
       break;
    case PIPE_QUERY_OCCLUSION_COUNTER:
diff --git a/src/gallium/drivers/llvmpipe/lp_setup_vbuf.c b/src/gallium/drivers/llvmpipe/lp_setup_vbuf.c
index a400d79fb87..cfd7bdc6a45 100644
--- a/src/gallium/drivers/llvmpipe/lp_setup_vbuf.c
+++ b/src/gallium/drivers/llvmpipe/lp_setup_vbuf.c
@@ -571,6 +571,10 @@ lp_setup_pipeline_statistics(
       stats->gs_invocations;
    llvmpipe->pipeline_statistics.gs_primitives +=
       stats->gs_primitives;
+   llvmpipe->pipeline_statistics.hs_invocations +=
+      stats->hs_invocations;
+   llvmpipe->pipeline_statistics.ds_invocations +=
+      stats->ds_invocations;
    if (!setup->rasterizer_discard) {
       llvmpipe->pipeline_statistics.c_invocations +=
          stats->c_invocations;



More information about the mesa-commit mailing list