diff options
author | Ben Skeggs <[email protected]> | 2014-05-09 15:55:51 +1000 |
---|---|---|
committer | Ben Skeggs <[email protected]> | 2014-05-15 09:54:21 +1000 |
commit | 322460fdbc9f966868e72649b12fbc95ab4cfd55 (patch) | |
tree | 68dded7f0c9c5af20306d04424b31f738e82724b /src/gallium/drivers/nouveau/nvc0 | |
parent | 9306c3470f0963b7bda47f01b64605f61e5e5c44 (diff) |
nvc0: replace some vb->stride checks with constant_vbo instead
Maxwell no longer has the methods to set constant attributes, and we'll
want to be treating stride 0 vtxbufs the same as for stride > 0.
Signed-off-by: Ben Skeggs <[email protected]>
Reviewed-by: Ilia Mirkin <[email protected]>
Diffstat (limited to 'src/gallium/drivers/nouveau/nvc0')
-rw-r--r-- | src/gallium/drivers/nouveau/nvc0/nvc0_vbo.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_vbo.c b/src/gallium/drivers/nouveau/nvc0/nvc0_vbo.c index c05878ff5b5..5a65226bea4 100644 --- a/src/gallium/drivers/nouveau/nvc0/nvc0_vbo.c +++ b/src/gallium/drivers/nouveau/nvc0/nvc0_vbo.c @@ -240,7 +240,7 @@ nvc0_update_user_vbufs(struct nvc0_context *nvc0) if (!(nvc0->vbo_user & (1 << b))) continue; - if (!vb->stride) { + if (nvc0->constant_vbos & (1 << b)) { nvc0_set_constant_vertex_attrib(nvc0, i); continue; } @@ -331,7 +331,7 @@ nvc0_validate_vertex_buffers(struct nvc0_context *nvc0) vb = &nvc0->vtxbuf[b]; if (!vb->buffer) { - if (vb->stride) { + if (!(nvc0->constant_vbos & (1 << b))) { if (ve->pipe.instance_divisor) { BEGIN_NVC0(push, NVC0_3D(VERTEX_ARRAY_DIVISOR(i)), 1); PUSH_DATA (push, ve->pipe.instance_divisor); @@ -385,7 +385,7 @@ nvc0_validate_vertex_buffers_shared(struct nvc0_context *nvc0) uint32_t offset, limit; if (mask & (1 << b)) { - if (vb->stride) { + if (!(nvc0->constant_vbos & (1 << b))) { BEGIN_NVC0(push, NVC0_3D(VERTEX_ARRAY_FETCH(b)), 1); PUSH_DATA (push, NVC0_3D_VERTEX_ARRAY_FETCH_ENABLE | vb->stride); } |