llvmpipe: Start hiding llvmpipe_cached_tile.
This commit is contained in:
parent
1cb9ce0d27
commit
d94fbb4a48
|
@ -66,16 +66,15 @@ blend_run(struct quad_stage *qs,
|
|||
unsigned y0 = quads[0]->input.y0;
|
||||
uint8_t ALIGN16_ATTRIB src[NUM_CHANNELS][TILE_VECTOR_HEIGHT*TILE_VECTOR_WIDTH];
|
||||
uint8_t ALIGN16_ATTRIB mask[16];
|
||||
uint8_t *tile = lp_get_cached_tile(llvmpipe->cbuf_cache[cbuf], x0, y0);
|
||||
uint8_t *dst;
|
||||
struct llvmpipe_cached_tile *tile
|
||||
= lp_get_cached_tile(llvmpipe->cbuf_cache[cbuf], x0, y0);
|
||||
|
||||
assert(nr * QUAD_SIZE == TILE_VECTOR_HEIGHT * TILE_VECTOR_WIDTH);
|
||||
|
||||
assert(x0 % TILE_VECTOR_WIDTH == 0);
|
||||
assert(y0 % TILE_VECTOR_HEIGHT == 0);
|
||||
|
||||
dst = &TILE_PIXEL(tile->data.color, x0 & (TILE_SIZE-1), y0 & (TILE_SIZE-1), 0);
|
||||
dst = &TILE_PIXEL(tile, x0 & (TILE_SIZE-1), y0 & (TILE_SIZE-1), 0);
|
||||
|
||||
for (q = 0; q < nr; ++q) {
|
||||
struct quad_header *quad = quads[q];
|
||||
|
|
|
@ -330,7 +330,7 @@ lp_flush_tile_cache(struct llvmpipe_tile_cache *tc)
|
|||
* Get a tile from the cache.
|
||||
* \param x, y position of tile, in pixels
|
||||
*/
|
||||
struct llvmpipe_cached_tile *
|
||||
void *
|
||||
lp_find_cached_tile(struct llvmpipe_tile_cache *tc,
|
||||
union tile_address addr )
|
||||
{
|
||||
|
@ -368,7 +368,8 @@ lp_find_cached_tile(struct llvmpipe_tile_cache *tc,
|
|||
}
|
||||
|
||||
tc->last_tile = tile;
|
||||
return tile;
|
||||
|
||||
return tile->data.color;
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -127,7 +127,7 @@ extern void
|
|||
lp_tile_cache_clear(struct llvmpipe_tile_cache *tc, const float *rgba,
|
||||
uint clearValue);
|
||||
|
||||
extern struct llvmpipe_cached_tile *
|
||||
extern void *
|
||||
lp_find_cached_tile(struct llvmpipe_tile_cache *tc,
|
||||
union tile_address addr );
|
||||
|
||||
|
@ -152,14 +152,14 @@ tile_address( unsigned x,
|
|||
|
||||
/* Quickly retrieve tile if it matches last lookup.
|
||||
*/
|
||||
static INLINE struct llvmpipe_cached_tile *
|
||||
static INLINE void *
|
||||
lp_get_cached_tile(struct llvmpipe_tile_cache *tc,
|
||||
int x, int y )
|
||||
{
|
||||
union tile_address addr = tile_address( x, y, 0, 0, 0 );
|
||||
|
||||
if (tc->last_tile->addr.value == addr.value)
|
||||
return tc->last_tile;
|
||||
return &tc->last_tile->data.color;
|
||||
|
||||
return lp_find_cached_tile( tc, addr );
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue