I tested this series on i965 and llvmpipe. Does anyone want to test this branch on other hardware since it modifies the initialization path for all drivers?
git://people.freedesktop.org/~jljusten/mesa version-gles3-dispatch (This branch is the series rebased on the current master.) Thanks, -Jordan On Mon, Nov 19, 2012 at 5:01 PM, Jordan Justen <jordan.l.jus...@intel.com> wrote: > 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 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev