r600g: use backend mask for occlusion queries
authorVadim Girlin <vadimgirlin@gmail.com>
Tue, 2 Aug 2011 21:04:19 +0000 (01:04 +0400)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 3 Aug 2011 14:17:44 +0000 (10:17 -0400)
commit6eb94fc3444a300a0419c40cfcf356fdd88bc304
treeea409894161a3e56d68fe194ef858712ee75b6f2
parent2664980760c5cf2e7dde4065f9cc8e8b865627c3
r600g: use backend mask for occlusion queries

Use backend_map kernel query if supported, otherwise analyze ZPASS_DONE
results to get the mask.

Fixes lockups with predicated rendering due to incorrect query buffer
initialization on some cards.

Note: this is a candidate for the 7.11 branch.

Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
src/gallium/drivers/r600/r600.h
src/gallium/winsys/r600/drm/evergreen_hw_context.c
src/gallium/winsys/r600/drm/r600_drm.c
src/gallium/winsys/r600/drm/r600_hw_context.c
src/gallium/winsys/r600/drm/r600_priv.h