diff options
author | Mathias Fröhlich <mathias.froehlich@web.de> | 2016-06-09 06:35:34 +0200 |
---|---|---|
committer | Mathias Fröhlich <mathias.froehlich@web.de> | 2016-06-14 05:19:10 +0200 |
commit | ed2dae86aef759a6858f56d77eba77895bec5020 (patch) | |
tree | 9550383ac3d0df82ac574019f6bc9e0173497d0c /src/mesa/main/arrayobj.c | |
parent | c3b66566760dd44eaeed9e4df13687dc3ee69bd9 (diff) | |
download | external_mesa3d-ed2dae86aef759a6858f56d77eba77895bec5020.zip external_mesa3d-ed2dae86aef759a6858f56d77eba77895bec5020.tar.gz external_mesa3d-ed2dae86aef759a6858f56d77eba77895bec5020.tar.bz2 |
mesa: Make use of u_bit_scan{,64}.
Reviewed-by: Brian Paul <brianp@vmware.com>
Tested-by: Brian Paul <brianp@vmware.com>
Signed-off-by: Mathias Fröhlich <Mathias.Froehlich@web.de>
Diffstat (limited to 'src/mesa/main/arrayobj.c')
-rw-r--r-- | src/mesa/main/arrayobj.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/mesa/main/arrayobj.c b/src/mesa/main/arrayobj.c index 897dac6..9c3451e 100644 --- a/src/mesa/main/arrayobj.c +++ b/src/mesa/main/arrayobj.c @@ -52,6 +52,7 @@ #include "mtypes.h" #include "varray.h" #include "main/dispatch.h" +#include "util/bitscan.h" /** @@ -342,13 +343,12 @@ _mesa_update_vao_client_arrays(struct gl_context *ctx, GLbitfield64 arrays = vao->NewArrays; while (arrays) { + const int attrib = u_bit_scan64(&arrays); + struct gl_client_array *client_array; struct gl_vertex_attrib_array *attrib_array; struct gl_vertex_buffer_binding *buffer_binding; - GLint attrib = ffsll(arrays) - 1; - arrays ^= BITFIELD64_BIT(attrib); - attrib_array = &vao->VertexAttrib[attrib]; buffer_binding = &vao->VertexBinding[attrib_array->VertexBinding]; client_array = &vao->_VertexAttrib[attrib]; |