From: Nicolai Hähnle Date: Wed, 26 Jul 2017 16:57:56 +0000 (+0200) Subject: st/mesa: implement ARB_transform_feedback_overflow_query X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=d8b78bb0ee663590380c05f0f825029a6bddac2b;p=mesa.git st/mesa: implement ARB_transform_feedback_overflow_query v2: update for new cap name Reviewed-by: Marek Olšák --- diff --git a/src/mesa/state_tracker/st_cb_queryobj.c b/src/mesa/state_tracker/st_cb_queryobj.c index b1ac2aab6da..4c25724b5dc 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 74193cc4928..8f1676ef41f 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 }, { o(KHR_blend_equation_advanced), PIPE_CAP_TGSI_FS_FBFETCH },