summaryrefslogtreecommitdiffstats
path: root/src/mesa/vbo/vbo_exec.h
diff options
context:
space:
mode:
authorMathias Fröhlich <mathias.froehlich@web.de>2016-05-22 14:10:19 +0200
committerMathias Fröhlich <mathias.froehlich@web.de>2016-06-16 05:50:55 +0200
commitbc4e0c486874ee8c6f2e616b91589a1da63164d8 (patch)
treea4932ee13a6a4a11e1b065a45f8e3caa91066701 /src/mesa/vbo/vbo_exec.h
parent22e5d4a1ee02089258d1fc67dfe7fa02a1dfcf22 (diff)
downloadexternal_mesa3d-bc4e0c486874ee8c6f2e616b91589a1da63164d8.zip
external_mesa3d-bc4e0c486874ee8c6f2e616b91589a1da63164d8.tar.gz
external_mesa3d-bc4e0c486874ee8c6f2e616b91589a1da63164d8.tar.bz2
vbo: Use a bitmask to track the active arrays in vbo_exec*.
The use of a bitmask makes functions iterating only active attributes less visible in profiles. v2: Use _mesa_bit_scan{,64} instead of open coding. v3: Use u_bit_scan{,64} instead of _mesa_bit_scan{,64}. Reviewed-by: Brian Paul <brianp@vmware.com> Signed-off-by: Mathias Fröhlich <Mathias.Froehlich@web.de>
Diffstat (limited to 'src/mesa/vbo/vbo_exec.h')
-rw-r--r--src/mesa/vbo/vbo_exec.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/mesa/vbo/vbo_exec.h b/src/mesa/vbo/vbo_exec.h
index 27bff4a..5e20cf6 100644
--- a/src/mesa/vbo/vbo_exec.h
+++ b/src/mesa/vbo/vbo_exec.h
@@ -101,6 +101,7 @@ struct vbo_exec_context
GLuint max_vert; /**< Max number of vertices allowed in buffer */
struct vbo_exec_copied_vtx copied;
+ GLbitfield64 enabled; /**< mask of enabled vbo arrays. */
GLubyte attrsz[VBO_ATTRIB_MAX]; /**< nr. of attrib components (1..4) */
GLenum attrtype[VBO_ATTRIB_MAX]; /**< GL_FLOAT, GL_DOUBLE, GL_INT, etc */
GLubyte active_sz[VBO_ATTRIB_MAX]; /**< attrib size (nr. 32-bit words) */