[Mesa-dev] [PATCH v2 00/12] Delay exec table initialization until version is computed

Jordan Justen jordan.l.justen at intel.com
Sun Nov 18 23:49:26 PST 2012


* 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
* GLES3 support requires that the version be computed before the
  exec table is initialized.

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 (12):
  mesa: separate exec allocation from initialization
  swrast: compute version and then call _mesa_initialize_exec_table
  intel: compute version and then call _mesa_initialize_exec_table
  nouveau: call _mesa_initialize_exec_table
  radeon, r200: call _mesa_initialize_exec_table
  state_tracker: compute version and then call
    _mesa_initialize_exec_table
  osmesa: compute version and then call _mesa_initialize_exec_table
  windows: compute version and then call _mesa_initialize_exec_table
  x11: compute version and then call _mesa_initialize_exec_table
  mesa dispatch_sanity: call _mesa_initialize_exec_table
  mesa: assert if driver did not compute the version
  mesa: don't initialize exec dispatch tables in
    _mesa_initialize_context

 src/mapi/glapi/gen/gl_genexec.py               |   21 +++++++++------------
 src/mesa/drivers/dri/i915/i830_context.c       |    6 ++++++
 src/mesa/drivers/dri/i915/i915_context.c       |    6 ++++++
 src/mesa/drivers/dri/i965/brw_context.c        |    6 ++++++
 src/mesa/drivers/dri/nouveau/nouveau_context.c |    4 ++++
 src/mesa/drivers/dri/r200/r200_context.c       |    4 ++++
 src/mesa/drivers/dri/radeon/radeon_context.c   |    4 ++++
 src/mesa/drivers/dri/swrast/swrast.c           |    6 ++++++
 src/mesa/drivers/osmesa/osmesa.c               |    7 +++++++
 src/mesa/drivers/windows/gdi/wmesa.c           |    5 +++++
 src/mesa/drivers/x11/xm_api.c                  |    5 +++++
 src/mesa/main/api_exec.h                       |    4 ++--
 src/mesa/main/context.c                        |    6 +++---
 src/mesa/main/tests/dispatch_sanity.cpp        |    3 ++-
 src/mesa/state_tracker/st_context.c            |    6 ++++++
 src/mesa/state_tracker/st_manager.c            |    2 --
 16 files changed, 75 insertions(+), 20 deletions(-)

-- 
1.7.10.4



More information about the mesa-dev mailing list