Module: Mesa Branch: master Commit: 0cb1dda36e1a651173fec48c151fd3d07eb8077f URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=0cb1dda36e1a651173fec48c151fd3d07eb8077f
Author: Ilia Mirkin <[email protected]> Date: Thu Feb 4 12:48:06 2016 -0500 nv30: add PIPE_QUERY_OCCLUSION_PREDICATE support Signed-off-by: Ilia Mirkin <[email protected]> --- src/gallium/drivers/nouveau/nv30/nv30_query.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/nouveau/nv30/nv30_query.c b/src/gallium/drivers/nouveau/nv30/nv30_query.c index 3980be9..75a4b04 100644 --- a/src/gallium/drivers/nouveau/nv30/nv30_query.c +++ b/src/gallium/drivers/nouveau/nv30/nv30_query.c @@ -120,6 +120,7 @@ nv30_query_create(struct pipe_context *pipe, unsigned type, unsigned index) q->report = 1; break; case PIPE_QUERY_OCCLUSION_COUNTER: + case PIPE_QUERY_OCCLUSION_PREDICATE: q->enable = NV30_3D_QUERY_ENABLE; q->report = 1; break; @@ -203,7 +204,6 @@ nv30_query_result(struct pipe_context *pipe, struct pipe_query *pq, struct nv30_query *q = nv30_query(pq); volatile uint32_t *ntfy0 = nv30_ntfy(screen, q->qo[0]); volatile uint32_t *ntfy1 = nv30_ntfy(screen, q->qo[1]); - uint64_t *res64 = &result->u64; if (ntfy1) { while (ntfy1[3] & 0xff000000) { @@ -227,7 +227,10 @@ nv30_query_result(struct pipe_context *pipe, struct pipe_query *pq, nv30_query_object_del(screen, &q->qo[1]); } - *res64 = q->result; + if (q->type == PIPE_QUERY_OCCLUSION_PREDICATE) + result->b = !!q->result; + else + result->u64 = q->result; return true; } _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
