r600g: use dirty list to track dirty blocks
authorBas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Tue, 5 Oct 2010 19:01:43 +0000 (21:01 +0200)
committerJerome Glisse <jglisse@redhat.com>
Tue, 5 Oct 2010 19:16:06 +0000 (15:16 -0400)
commitac8a1ebe55b08180945ffaebcff6b3bed336c9ec
tree0bb40da7557177e66100ceadcf8275cc9837a4f9
parentb2e52cdf83662e5d81de2a476a7d53dc82271eb4
r600g: use dirty list to track dirty blocks

Got a speed up by tracking the dirty blocks in a seperate list instead of looping through all blocks. This version should work with block that get their dirty state disabled again and I added a dirty check during the flush as some blocks were already dirty.
src/gallium/drivers/r600/r600.h
src/gallium/winsys/r600/drm/evergreen_hw_context.c
src/gallium/winsys/r600/drm/r600_hw_context.c
src/gallium/winsys/r600/drm/r600_priv.h