<p dir="ltr">Did I? I thought it was already there, and just forgotten here. Will recheck.</p>
<div class="gmail_quote">On Feb 5, 2016 5:37 AM, "Samuel Pitoiset" <<a href="mailto:samuel.pitoiset@gmail.com">samuel.pitoiset@gmail.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">This won't fly because you forgot to add PIPE_QUERY_OCCLUSION_PREDICATE in many places in nv50_query_hw.c (begin_query(), end_query()...).<br>
<br>
On 02/04/2016 06:52 PM, Ilia Mirkin wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Signed-off-by: Ilia Mirkin <<a href="mailto:imirkin@alum.mit.edu" target="_blank">imirkin@alum.mit.edu</a>><br>
---<br>
  src/gallium/drivers/nouveau/nv50/nv50_query_hw.c | 3 +++<br>
  1 file changed, 3 insertions(+)<br>
<br>
diff --git a/src/gallium/drivers/nouveau/nv50/nv50_query_hw.c b/src/gallium/drivers/nouveau/nv50/nv50_query_hw.c<br>
index cccd3b7..3727ac0 100644<br>
--- a/src/gallium/drivers/nouveau/nv50/nv50_query_hw.c<br>
+++ b/src/gallium/drivers/nouveau/nv50/nv50_query_hw.c<br>
@@ -304,6 +304,9 @@ nv50_hw_get_query_result(struct nv50_context *nv50, struct nv50_query *q,<br>
     case PIPE_QUERY_OCCLUSION_COUNTER: /* u32 sequence, u32 count, u64 time */<br>
        res64[0] = hq->data[1] - hq->data[5];<br>
        break;<br>
+   case PIPE_QUERY_OCCLUSION_PREDICATE:<br>
+      res8[0] = hq->data[1] != hq->data[5];<br>
+      break;<br>
     case PIPE_QUERY_PRIMITIVES_GENERATED: /* u64 count, u64 time */<br>
     case PIPE_QUERY_PRIMITIVES_EMITTED: /* u64 count, u64 time */<br>
        res64[0] = data64[0] - data64[2];<br>
<br>
</blockquote>
<br>
-- <br>
-Samuel<br>
</blockquote></div>