search for: constbuf_valid

Displaying 2 results from an estimated 2 matches for "constbuf_valid".

2014 Jul 01
1
[PATCH 1/2] nv50: do an explicit flush on draw when there are persistent buffers
...*pipe, unsigned flags) if (nv50->idxbuf.buffer && nv50->idxbuf.buffer->flags & PIPE_RESOURCE_FLAG_MAP_PERSISTENT) nv50->base.vbo_dirty = TRUE; + + for (s = 0; s < 3 && !nv50->cb_dirty; ++s) { + uint32_t valid = nv50->constbuf_valid[s]; + + while (valid && !nv50->cb_dirty) { + const unsigned i = ffs(valid) - 1; + struct pipe_resource *res; + + valid &= ~(1 << i); + if (nv50->constbuf[s][i].user) + continue; + + res = nv50->c...
2014 Nov 16
1
[PATCH 1/2] nv50, nvc0: actually check constbufs for invalidation
...if (res->bind & PIPE_BIND_CONSTANT_BUFFER) { for (s = 0; s < 3; ++s) { - assert(nv50->num_vtxbufs <= NV50_MAX_PIPE_CONSTBUFS); - for (i = 0; i < nv50->num_vtxbufs; ++i) { + for (i = 0; i < NV50_MAX_PIPE_CONSTBUFS; ++i) { + if (!(nv50->constbuf_valid[s] & (1 << i))) + continue; if (!nv50->constbuf[s][i].user && nv50->constbuf[s][i].u.buf == res) { nv50->dirty |= NV50_NEW_CONSTBUF; diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_context.c b/src/gallium/drivers/nouveau/...