Mesa (master): virgl: add ARB_transform_feedback_overflow_query support

Jakob Bornecrantz wallbraker at kemper.freedesktop.org
Wed May 30 16:04:18 UTC 2018


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

Author: Dave Airlie <airlied at redhat.com>
Date:   Mon May 28 11:53:35 2018 +1000

virgl: add ARB_transform_feedback_overflow_query support

Reviewed-by: Jakob Bornecrantz <jakob at collabora.com>
Signed-off-by: Jakob Bornecrantz <jakob at collabora.com>

---

 src/gallium/drivers/virgl/virgl_query.c  | 3 ++-
 src/gallium/drivers/virgl/virgl_screen.c | 3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/gallium/drivers/virgl/virgl_query.c b/src/gallium/drivers/virgl/virgl_query.c
index e4d955442b..a75b29c7c9 100644
--- a/src/gallium/drivers/virgl/virgl_query.c
+++ b/src/gallium/drivers/virgl/virgl_query.c
@@ -49,6 +49,7 @@ struct virgl_query {
 #define VIRGL_QUERY_GPU_FINISHED          9
 #define VIRGL_QUERY_PIPELINE_STATISTICS  10
 #define VIRGL_QUERY_OCCLUSION_PREDICATE_CONSERVATIVE 11
+#define VIRGL_QUERY_SO_OVERFLOW_ANY_PREDICATE 12
 
 static const int pquery_map[] =
 {
@@ -62,7 +63,7 @@ static const int pquery_map[] =
    VIRGL_QUERY_PRIMITIVES_EMITTED,
    VIRGL_QUERY_SO_STATISTICS,
    VIRGL_QUERY_SO_OVERFLOW_PREDICATE,
-   -1,
+   VIRGL_QUERY_SO_OVERFLOW_ANY_PREDICATE,
    VIRGL_QUERY_GPU_FINISHED,
    VIRGL_QUERY_PIPELINE_STATISTICS,
 };
diff --git a/src/gallium/drivers/virgl/virgl_screen.c b/src/gallium/drivers/virgl/virgl_screen.c
index 01f864c657..6b12a4d016 100644
--- a/src/gallium/drivers/virgl/virgl_screen.c
+++ b/src/gallium/drivers/virgl/virgl_screen.c
@@ -208,6 +208,8 @@ virgl_get_param(struct pipe_screen *screen, enum pipe_cap param)
       return vscreen->caps.caps.v1.bset.derivative_control;
    case PIPE_CAP_POLYGON_OFFSET_CLAMP:
       return vscreen->caps.caps.v1.bset.polygon_offset_clamp;
+   case PIPE_CAP_QUERY_SO_OVERFLOW:
+      return vscreen->caps.caps.v1.bset.transform_feedback_overflow_query;
    case PIPE_CAP_TEXTURE_GATHER_SM5:
    case PIPE_CAP_BUFFER_MAP_PERSISTENT_COHERENT:
    case PIPE_CAP_FAKE_SW_MSAA:
@@ -271,7 +273,6 @@ virgl_get_param(struct pipe_screen *screen, enum pipe_cap param)
    case PIPE_CAP_POST_DEPTH_COVERAGE:
    case PIPE_CAP_BINDLESS_TEXTURE:
    case PIPE_CAP_NIR_SAMPLERS_AS_DEREF:
-   case PIPE_CAP_QUERY_SO_OVERFLOW:
    case PIPE_CAP_MEMOBJ:
    case PIPE_CAP_LOAD_CONSTBUF:
    case PIPE_CAP_TGSI_ANY_REG_AS_ADDRESS:




More information about the mesa-commit mailing list