mesa: add NewVertexBuffers/NewVertexElements flags to indicate state changes
authorMarek Olšák <marek.olsak@amd.com>
Sun, 24 Oct 2021 07:28:53 +0000 (03:28 -0400)
committerMarge Bot <emma+marge@anholt.net>
Wed, 3 Nov 2021 23:22:31 +0000 (23:22 +0000)
commit29877c1dce1b361efa5dfc31a58baa830c06daa3
treeaeba15eeacf4d77cf83845b396149806cf96fed0
parentae625da7efa844b2854b685dac43180616615ecb
mesa: add NewVertexBuffers/NewVertexElements flags to indicate state changes

This splits the per-VAO NewArrays flag into NewVertexBuffers and
NewVertexElements, and adds a global NewVertexElements flag to be used
by drivers.

This allows gallium to skip updating vertex elements when only vertex
buffers need to be updated.

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13512>
src/mesa/main/arrayobj.c
src/mesa/main/arrayobj.h
src/mesa/main/attrib.c
src/mesa/main/draw.c
src/mesa/main/mtypes.h
src/mesa/main/state.c
src/mesa/main/varray.c
src/mesa/state_tracker/st_cb_rasterpos.c
src/mesa/vbo/vbo_private.h