for (; i < nv50->state.num_vtxelts; ++i) {
BEGIN_RING(chan, RING_3D(VERTEX_ARRAY_ATTRIB(i)), 1);
OUT_RING (chan, NV50_3D_VERTEX_ATTRIB_INACTIVE);
+ if (unlikely(nv50->state.instance_elts & (1 << i))) {
+ BEGIN_RING(chan, RING_3D(VERTEX_ARRAY_PER_INSTANCE(i)), 1);
+ OUT_RING (chan, 0);
+ }
BEGIN_RING(chan, RING_3D(VERTEX_ARRAY_FETCH(i)), 1);
OUT_RING (chan, 0);
}
for (; i < nvc0->state.num_vtxelts; ++i) {
BEGIN_RING(chan, RING_3D(VERTEX_ATTRIB_FORMAT(i)), 1);
OUT_RING (chan, NVC0_3D_VERTEX_ATTRIB_INACTIVE);
+ if (unlikely(nvc0->state.instance_elts & (1 << i)))
+ IMMED_RING(chan, RING_3D(VERTEX_ARRAY_PER_INSTANCE(i)), 0);
BEGIN_RING(chan, RING_3D(VERTEX_ARRAY_FETCH(i)), 1);
OUT_RING (chan, 0);
}