[Mesa-dev] [PATCH 06/13] st/mesa: implement ARB_transform_feedback_overflow_query
Nicolai Hähnle
nhaehnle at gmail.com
Thu Jul 27 19:14:16 UTC 2017
From: Nicolai Hähnle <nicolai.haehnle at amd.com>
---
src/mesa/state_tracker/st_cb_queryobj.c | 4 +++-
src/mesa/state_tracker/st_extensions.c | 1 +
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/mesa/state_tracker/st_cb_queryobj.c b/src/mesa/state_tracker/st_cb_queryobj.c
index b1ac2aa..4c25724 100644
--- a/src/mesa/state_tracker/st_cb_queryobj.c
+++ b/src/mesa/state_tracker/st_cb_queryobj.c
@@ -118,7 +118,7 @@ st_BeginQuery(struct gl_context *ctx, struct gl_query_object *q)
type = PIPE_QUERY_SO_OVERFLOW_PREDICATE;
break;
case GL_TRANSFORM_FEEDBACK_OVERFLOW_ARB:
- type = PIPE_QUERY_SO_OVERFLOW_PREDICATE;
+ type = PIPE_QUERY_SO_OVERFLOW_ANY_PREDICATE;
break;
case GL_TIME_ELAPSED:
if (st->has_time_elapsed)
@@ -260,6 +260,8 @@ get_query_result(struct pipe_context *pipe,
default:
switch (stq->type) {
case PIPE_QUERY_OCCLUSION_PREDICATE:
+ case PIPE_QUERY_SO_OVERFLOW_PREDICATE:
+ case PIPE_QUERY_SO_OVERFLOW_ANY_PREDICATE:
stq->base.Result = !!data.b;
break;
default:
diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c
index 74193cc..c41d4b7 100644
--- a/src/mesa/state_tracker/st_extensions.c
+++ b/src/mesa/state_tracker/st_extensions.c
@@ -626,6 +626,7 @@ void st_init_extensions(struct pipe_screen *screen,
{ o(ARB_timer_query), PIPE_CAP_QUERY_TIMESTAMP },
{ o(ARB_transform_feedback2), PIPE_CAP_STREAM_OUTPUT_PAUSE_RESUME },
{ o(ARB_transform_feedback3), PIPE_CAP_STREAM_OUTPUT_INTERLEAVE_BUFFERS },
+ { o(ARB_transform_feedback_overflow_query), PIPE_CAP_QUERY_SO_OVERFLOW_ANY },
{ o(KHR_blend_equation_advanced), PIPE_CAP_TGSI_FS_FBFETCH },
--
2.9.3
More information about the mesa-dev
mailing list