Module: Mesa
Branch: master
Commit: b8eb1493a9f4c6d5f1484269dc9553fb78066435
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=b8eb1493a9f4c6d5f1484269dc9553fb78066435

Author: Rob Clark <robcl...@freedesktop.org>
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 <robcl...@freedesktop.org>

---

 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
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to