On Tue, Apr 16, 2019 at 12:31 AM Boris Brezillon <boris.brezil...@collabora.com> wrote: > > On Tue, 16 Apr 2019 01:49:21 +0000 > Alyssa Rosenzweig <aly...@rosenzweig.io> wrote: > > > @@ -1793,22 +1799,9 @@ panfrost_set_vertex_buffers( > > const struct pipe_vertex_buffer *buffers) > > { > > struct panfrost_context *ctx = pan_context(pctx); > > - assert(num_buffers <= PIPE_MAX_ATTRIBS); > > - > > - /* XXX: Dirty tracking? etc */ > > - if (buffers) { > > - size_t sz = sizeof(buffers[0]) * num_buffers; > > - ctx->vertex_buffers = malloc(sz); > > - ctx->vertex_buffer_count = num_buffers; > > - memcpy(ctx->vertex_buffers, buffers, sz); > > - } else { > > - if (ctx->vertex_buffers) { > > - free(ctx->vertex_buffers); > > - ctx->vertex_buffers = NULL; > > - } > > > > - ctx->vertex_buffer_count = 0; > > - } > > + util_set_vertex_buffers_mask(ctx->vertex_buffers, &ctx->vb_mask, > > buffers, start_slot, num_buffers); > > + ctx->vertex_buffer_count = num_buffers; > > ->vertex_buffer_count should be set to fls(ctx->vb_mask) (fls == find > last bit set) if you want the
or util_last_bit() BR, -R > > for (int i = 0; i < ctx->vertex_buffer_count; ++i) > > loop in panfrost_emit_vertex_data() to do the right thing. But I think > we can get rid of ->vertex_buffer_count entirely and just do a > > for (int i = 0; i < ARRAY_SIZE(ctx->vertex_buffers); ++i) > > > } > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev