Module: Mesa Branch: master Commit: b8eb1493a9f4c6d5f1484269dc9553fb78066435 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=b8eb1493a9f4c6d5f1484269dc9553fb78066435
Author: Rob Clark <[email protected]> Date: Fri Jun 10 11:42:56 2016 -0400 freedreno: only do extra vertex-buffer state logic on a2xx Possibly this should move into an fd2 wrapper fxn, similar to the texture state tracking done for fd3/fd4 (clamp emulation, etc) Signed-off-by: Rob Clark <[email protected]> --- src/gallium/drivers/freedreno/freedreno_state.c | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/gallium/drivers/freedreno/freedreno_state.c b/src/gallium/drivers/freedreno/freedreno_state.c index befd496..e4df909 100644 --- a/src/gallium/drivers/freedreno/freedreno_state.c +++ b/src/gallium/drivers/freedreno/freedreno_state.c @@ -183,14 +183,16 @@ fd_set_vertex_buffers(struct pipe_context *pctx, * we need to mark VTXSTATE as dirty as well to trigger patching * and re-emitting the vtx shader: */ - for (i = 0; i < count; i++) { - bool new_enabled = vb && (vb[i].buffer || vb[i].user_buffer); - bool old_enabled = so->vb[i].buffer || so->vb[i].user_buffer; - uint32_t new_stride = vb ? vb[i].stride : 0; - uint32_t old_stride = so->vb[i].stride; - if ((new_enabled != old_enabled) || (new_stride != old_stride)) { - ctx->dirty |= FD_DIRTY_VTXSTATE; - break; + if (ctx->screen->gpu_id < 300) { + for (i = 0; i < count; i++) { + bool new_enabled = vb && (vb[i].buffer || vb[i].user_buffer); + bool old_enabled = so->vb[i].buffer || so->vb[i].user_buffer; + uint32_t new_stride = vb ? vb[i].stride : 0; + uint32_t old_stride = so->vb[i].stride; + if ((new_enabled != old_enabled) || (new_stride != old_stride)) { + ctx->dirty |= FD_DIRTY_VTXSTATE; + break; + } } } _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
