Lines Matching refs:pos

46  * Return the position in the cache for the tile that contains win pos (x,y).
62 int pos, bit;
63 pos = addr.bits.y * (MAX_WIDTH / TILE_SIZE) + addr.bits.x;
64 assert(pos / 32 < (MAX_WIDTH / TILE_SIZE) * (MAX_HEIGHT / TILE_SIZE) / 32);
65 bit = bitvec[pos / 32] & (1 << (pos & 31));
76 int pos;
77 pos = addr.bits.y * (MAX_WIDTH / TILE_SIZE) + addr.bits.x;
78 assert(pos / 32 < (MAX_WIDTH / TILE_SIZE) * (MAX_HEIGHT / TILE_SIZE) / 32);
79 bitvec[pos / 32] &= ~(1 << (pos & 31));
87 uint pos;
102 for (pos = 0; pos < NUM_ENTRIES; pos++) {
103 tc->tile_addrs[pos].bits.invalid = 1;
135 uint pos;
137 for (pos = 0; pos < NUM_ENTRIES; pos++) {
138 /*assert(tc->entries[pos].x < 0);*/
139 FREE( tc->entries[pos] );
388 sp_flush_tile(struct softpipe_tile_cache* tc, unsigned pos)
390 if (!tc->tile_addrs[pos].bits.invalid) {
393 tc->tile_addrs[pos].bits.x * TILE_SIZE,
394 tc->tile_addrs[pos].bits.y * TILE_SIZE,
396 tc->entries[pos]->data.depth32, 0/*STRIDE*/);
401 tc->tile_addrs[pos].bits.x * TILE_SIZE,
402 tc->tile_addrs[pos].bits.y * TILE_SIZE,
405 (unsigned *) tc->entries[pos]->data.colorui128);
408 tc->tile_addrs[pos].bits.x * TILE_SIZE,
409 tc->tile_addrs[pos].bits.y * TILE_SIZE,
412 (int *) tc->entries[pos]->data.colori128);
415 tc->tile_addrs[pos].bits.x * TILE_SIZE,
416 tc->tile_addrs[pos].bits.y * TILE_SIZE,
419 (float *) tc->entries[pos]->data.color);
422 tc->tile_addrs[pos].bits.invalid = 1; /* mark as empty */
434 int inuse = 0, pos;
438 for (pos = 0; pos < NUM_ENTRIES; pos++) {
439 struct softpipe_cached_tile *tile = tc->entries[pos];
442 assert(tc->tile_addrs[pos].bits.invalid);
446 sp_flush_tile(tc, pos);
470 unsigned pos;
471 for (pos = 0; pos < NUM_ENTRIES; ++pos) {
472 if (!tc->entries[pos])
475 sp_flush_tile(tc, pos);
476 tc->tile = tc->entries[pos];
477 tc->entries[pos] = NULL;
503 /* cache pos/entry: */
504 const int pos = CACHE_POS(addr.bits.x,
506 struct softpipe_cached_tile *tile = tc->entries[pos];
510 tc->entries[pos] = tile;
513 if (addr.value != tc->tile_addrs[pos].value) {
516 if (tc->tile_addrs[pos].bits.invalid == 0) {
520 tc->tile_addrs[pos].bits.x * TILE_SIZE,
521 tc->tile_addrs[pos].bits.y * TILE_SIZE,
528 tc->tile_addrs[pos].bits.x * TILE_SIZE,
529 tc->tile_addrs[pos].bits.y * TILE_SIZE,
535 tc->tile_addrs[pos].bits.x * TILE_SIZE,
536 tc->tile_addrs[pos].bits.y * TILE_SIZE,
542 tc->tile_addrs[pos].bits.x * TILE_SIZE,
543 tc->tile_addrs[pos].bits.y * TILE_SIZE,
551 tc->tile_addrs[pos] = addr;
567 tc->tile_addrs[pos].bits.x * TILE_SIZE,
568 tc->tile_addrs[pos].bits.y * TILE_SIZE,
575 tc->tile_addrs[pos].bits.x * TILE_SIZE,
576 tc->tile_addrs[pos].bits.y * TILE_SIZE,
582 tc->tile_addrs[pos].bits.x * TILE_SIZE,
583 tc->tile_addrs[pos].bits.y * TILE_SIZE,
589 tc->tile_addrs[pos].bits.x * TILE_SIZE,
590 tc->tile_addrs[pos].bits.y * TILE_SIZE,
618 uint pos;
627 for (pos = 0; pos < NUM_ENTRIES; pos++) {
628 tc->tile_addrs[pos].bits.invalid = 1;