freedreno: add support for hw accumulating queries
authorRob Clark <robdclark@gmail.com>
Fri, 21 Apr 2017 19:30:33 +0000 (15:30 -0400)
committerRob Clark <robdclark@gmail.com>
Sat, 22 Apr 2017 14:03:02 +0000 (10:03 -0400)
commitd310ea0f3258b49f6268df08a7e372764ad5e2d8
tree83866411ef3f9a08cac95b95ed23cb2e05bdd7e2
parent935623af141930db8cbe1089e448cde4066da114
freedreno: add support for hw accumulating queries

Some queries on a4xx and all queries on a5xx can do result accumulation
on CP so we don't need to track per-tile samples.  We do still need to
handle pausing/resuming while switching batches (in case the query is
active over multiple draws which are executed out of order).

So introduce new accumulated-query helpers for these sorts of queries,
since it doesn't really fit in cleanly with the original query infra-
structure.

Signed-off-by: Rob Clark <robdclark@gmail.com>
src/gallium/drivers/freedreno/Makefile.sources
src/gallium/drivers/freedreno/freedreno_context.c
src/gallium/drivers/freedreno/freedreno_context.h
src/gallium/drivers/freedreno/freedreno_draw.c
src/gallium/drivers/freedreno/freedreno_query.h
src/gallium/drivers/freedreno/freedreno_query_acc.c [new file with mode: 0644]
src/gallium/drivers/freedreno/freedreno_query_acc.h [new file with mode: 0644]
src/gallium/drivers/freedreno/freedreno_query_hw.c