mesa: remove the NewVAO flag, set directly what we need to set
authorMarek Olšák <marek.olsak@amd.com>
Mon, 21 Nov 2022 13:20:24 +0000 (08:20 -0500)
committerMarge Bot <emma+marge@anholt.net>
Mon, 12 Dec 2022 19:15:34 +0000 (19:15 +0000)
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19953>

src/mesa/main/draw.c
src/mesa/main/mtypes.h

index 55b548e..437729a 100644 (file)
@@ -111,7 +111,8 @@ _mesa_set_draw_vao(struct gl_context *ctx, struct gl_vertex_array_object *vao)
    if (*ptr != vao) {
       _mesa_reference_vao_(ctx, ptr, vao);
       _mesa_update_edgeflag_state_vao(ctx);
-      ctx->Array.NewVAO = true;
+      ctx->NewDriverState |= ST_NEW_VERTEX_ARRAYS;
+      ctx->Array.NewVertexElements = true;
    }
 }
 
@@ -137,7 +138,8 @@ _mesa_restore_draw_vao(struct gl_context *ctx,
    _mesa_reference_vao(ctx, &ctx->Array._DrawVAO, NULL);
    ctx->Array._DrawVAO = saved;
    _mesa_update_edgeflag_state_vao(ctx);
-   ctx->Array.NewVAO = true;
+   ctx->NewDriverState |= ST_NEW_VERTEX_ARRAYS;
+   ctx->Array.NewVertexElements = true;
 }
 
 /**
@@ -149,10 +151,7 @@ void
 _mesa_update_vao_state(struct gl_context *ctx, GLbitfield filter)
 {
    struct gl_vertex_array_object *vao = ctx->Array._DrawVAO;
-   bool new_vertex_buffers, new_vertex_elements;
-
-   new_vertex_buffers = new_vertex_elements = ctx->Array.NewVAO;
-   ctx->Array.NewVAO = false;
+   bool new_vertex_buffers = false, new_vertex_elements = false;
 
    if (vao->NewVertexBuffers || vao->NewVertexElements) {
       if (!vao->IsDynamic)
index e36341b..d341a47 100644 (file)
@@ -1766,11 +1766,6 @@ struct gl_array_attrib
    bool _PolygonModeAlwaysCulls;
 
    /**
-    * Whether the VAO has been changed.
-    */
-   bool NewVAO;
-
-   /**
     * If gallium vertex buffers are dirty, this flag indicates whether gallium
     * vertex elements are dirty too. If this is false, GL states corresponding
     * to vertex elements have not been changed. Thus, this affects what will