i965: Force even an empty query to flush all previous queries.
authorCarl Worth <cworth@cworth.org>
Thu, 13 Dec 2012 23:23:10 +0000 (15:23 -0800)
committerCarl Worth <cworth@cworth.org>
Tue, 15 Jan 2013 21:34:18 +0000 (13:34 -0800)
commitd9d857e24fef2ae5576523b861f46c426b94ba0d
tree690e2411f0cda487abe9f21f33254cb765da8246
parentc0b768ffee1ba84a4fcfcf41adf60e6d50cbafee
i965: Force even an empty query to flush all previous queries.

The specification requires that query results are processed in order, (when
one query result is returned, all previous query of the same type must also be
available). The implementation was failing this requirement in the case of
BeginQuery and EndQuery with no intervening drawing, (the result would be made
available immediately without flushing previous queries).

This fixes the following es3conform test:

occlusion_query_query_order

as well as the following piglit test:

occlusion_query_order

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
src/mesa/drivers/dri/i965/brw_queryobj.c