From: Rob Clark Date: Sun, 1 Oct 2017 19:29:24 +0000 (-0400) Subject: freedreno: fix PIPE_QUERY_OCCLUSION_PREDICATE_CONSERVATIVE X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=d304c467ba3cdda4ad85a31ca9981cb039e3c1f3;p=mesa.git freedreno: fix PIPE_QUERY_OCCLUSION_PREDICATE_CONSERVATIVE Fixes an assert in fd_acc_query_register_provider() about query provider not already registered. Fixes: 3f6b3d9d ("gallium: add PIPE_QUERY_OCCLUSION_PREDICATE_CONSERVATIVE") Signed-off-by: Rob Clark --- diff --git a/src/gallium/drivers/freedreno/freedreno_batch.h b/src/gallium/drivers/freedreno/freedreno_batch.h index d6a818a3b77..41356e3519f 100644 --- a/src/gallium/drivers/freedreno/freedreno_batch.h +++ b/src/gallium/drivers/freedreno/freedreno_batch.h @@ -55,7 +55,7 @@ enum fd_render_stage { FD_STAGE_ALL = 0xff, }; -#define MAX_HW_SAMPLE_PROVIDERS 4 +#define MAX_HW_SAMPLE_PROVIDERS 5 struct fd_hw_sample_provider; struct fd_hw_sample; diff --git a/src/gallium/drivers/freedreno/freedreno_query.h b/src/gallium/drivers/freedreno/freedreno_query.h index b8fa0951ded..a391a7a0ff8 100644 --- a/src/gallium/drivers/freedreno/freedreno_query.h +++ b/src/gallium/drivers/freedreno/freedreno_query.h @@ -85,15 +85,16 @@ int pidx(unsigned query_type) case PIPE_QUERY_OCCLUSION_COUNTER: return 0; case PIPE_QUERY_OCCLUSION_PREDICATE: - case PIPE_QUERY_OCCLUSION_PREDICATE_CONSERVATIVE: return 1; + case PIPE_QUERY_OCCLUSION_PREDICATE_CONSERVATIVE: + return 2; /* TODO currently queries only emitted in main pass (not in binning pass).. * which is fine for occlusion query, but pretty much not anything else. */ case PIPE_QUERY_TIME_ELAPSED: - return 2; - case PIPE_QUERY_TIMESTAMP: return 3; + case PIPE_QUERY_TIMESTAMP: + return 4; default: return -1; }