softpipe: shortcircuit repeated lookups of the same tile
authorKeith Whitwell <keithw@vmware.com>
Wed, 22 Jul 2009 14:08:42 +0000 (15:08 +0100)
committerKeith Whitwell <keithw@vmware.com>
Wed, 22 Jul 2009 14:08:42 +0000 (15:08 +0100)
commitf911c3b9897b90132c8621a72bfeb824eb3b01e5
tree61243e5d616101304ffa36ad982b7c6e6da2e7b6
parent13e2d35764e0c8de3356ee663885568fc00424f0
softpipe: shortcircuit repeated lookups of the same tile

The sp_tile_cache is often called repeatedly to look up the same
tile.  Add a cache (to the cache) of the single tile most recently
retreived and make a quick inline check to see if this matches the
subsequent request.

Add a tile_address bitfield struct to make this check easier.
src/gallium/auxiliary/util/u_math.h
src/gallium/drivers/softpipe/sp_tex_sample.c
src/gallium/drivers/softpipe/sp_tile_cache.c
src/gallium/drivers/softpipe/sp_tile_cache.h