[Mesa-dev] [PATCH v3 0/7] Delay exec table initialization until version is computed
Jordan Justen
jordan.l.justen at intel.com
Mon Nov 19 17:01:29 PST 2012
GLES3 support requires that the version be computed before the
exec table is initialized.
For main exec table initialization (api_exec.c):
* Rename _mesa_create_exec_table to _mesa_initialize_exec_table
* _mesa_initialize_context allocates the exec table, and sets
entries to nop, but leaves functions otherwise uninitialized
* Drivers must now call _mesa_compute_version and then
_mesa_initialize_exec_table
Similarly for VBO:
* _vbo_CreateContext no longer initializes VBO vtxfmt functions
* _mesa_initialize_vbo_vtxfmt was added, and drivers must now
call this function after computing the version
v3:
* VBO vtxfmt function programming must also be delayed until
the version in computed.
* Combined all driver changes into a single patch
v2:
* Rather than move version computation earlier into
_mesa_initialize_context, now _mesa_initialize_context will
no longer initialize the exec dispatch table.
* All drivers should now be modified, whereas in v1, only
i965 and swrast were modified.
v1:
* Implement support for swrast & i965 drivers
Jordan Justen (7):
mesa: separate exec allocation from initialization
vbo: add _mesa_initialize_vbo_vtxfmt
drivers: compute version and then initialize exec table
mesa dispatch_sanity: call new functions to initialize exec table
mesa: don't initialize exec dispatch tables in
_mesa_initialize_context
mesa: don't initialize VBO vtxfmt in _vbo_CreateContext
mesa: assert if driver did not compute the version
src/mapi/glapi/gen/gl_genexec.py | 21 +++++++++------------
src/mesa/drivers/dri/i915/i830_context.c | 8 ++++++++
src/mesa/drivers/dri/i915/i915_context.c | 8 ++++++++
src/mesa/drivers/dri/i965/brw_context.c | 8 ++++++++
src/mesa/drivers/dri/nouveau/nouveau_context.c | 6 ++++++
src/mesa/drivers/dri/r200/r200_context.c | 6 ++++++
src/mesa/drivers/dri/radeon/radeon_context.c | 6 ++++++
src/mesa/drivers/dri/swrast/swrast.c | 8 ++++++++
src/mesa/drivers/osmesa/osmesa.c | 9 +++++++++
src/mesa/drivers/windows/gdi/wmesa.c | 7 +++++++
src/mesa/drivers/x11/xm_api.c | 7 +++++++
src/mesa/main/api_exec.h | 4 ++--
src/mesa/main/context.c | 7 +++----
src/mesa/main/tests/dispatch_sanity.cpp | 7 ++++++-
src/mesa/main/vtxfmt.c | 20 ++++++++++++++++++++
src/mesa/main/vtxfmt.h | 1 +
src/mesa/state_tracker/st_context.c | 8 ++++++++
src/mesa/state_tracker/st_manager.c | 2 --
src/mesa/vbo/vbo_exec.c | 4 ----
src/mesa/vbo/vbo_exec_api.c | 4 ----
src/mesa/vbo/vbo_save_api.c | 1 -
21 files changed, 122 insertions(+), 30 deletions(-)
--
1.7.10.4
More information about the mesa-dev
mailing list