mesa: move gl_client_array*[] from vbo_draw_func into gl_context
authorMarek Olšák <maraeo@gmail.com>
Mon, 23 Apr 2012 16:20:56 +0000 (18:20 +0200)
committerMarek Olšák <maraeo@gmail.com>
Tue, 8 May 2012 13:57:51 +0000 (15:57 +0200)
commit50f7e75f9e945cfbb2ae868cc961a2205a0b6e73
treed55b1c38416040b9df653df6327dbaa0e82866fc
parenta7ac9c9c7dc7401ca6143d1e7476df5e3c2758b7
mesa: move gl_client_array*[] from vbo_draw_func into gl_context

In the future we'd like to treat vertex arrays as a state and
not as a parameter to the draw function. This is the first step
towards that goal. Part of the goal is to avoid array re-validation
for every draw call.

This commit adds:
const struct gl_client_array **gl_context::Array::_DrawArrays.

The pointer is changed in:
* vbo_draw_method
* vbo_rebase_prims - unused by gallium
* vbo_split_prims - unused by gallium
* st_RasterPos

Reviewed-by: Brian Paul <brianp@vmware.com>
18 files changed:
src/mesa/drivers/dri/i965/brw_draw.c
src/mesa/drivers/dri/i965/brw_draw.h
src/mesa/drivers/dri/nouveau/nouveau_vbo_t.c
src/mesa/main/mtypes.h
src/mesa/state_tracker/st_cb_rasterpos.c
src/mesa/state_tracker/st_draw.c
src/mesa/state_tracker/st_draw.h
src/mesa/state_tracker/st_draw_feedback.c
src/mesa/tnl/t_draw.c
src/mesa/tnl/tnl.h
src/mesa/vbo/vbo.h
src/mesa/vbo/vbo_context.h
src/mesa/vbo/vbo_exec_array.c
src/mesa/vbo/vbo_exec_draw.c
src/mesa/vbo/vbo_rebase.c
src/mesa/vbo/vbo_save_draw.c
src/mesa/vbo/vbo_split_copy.c
src/mesa/vbo/vbo_split_inplace.c