[Mesa-dev] [PATCH 00/15] Implement KHR_debug
Timothy Arceri
t_arceri at yahoo.com.au
Mon Aug 26 03:43:42 PDT 2013
The following patchset implements the KHR_debug extension.
Here are some notes/assumptions I have made:
* These patches only enable the extension for GL not ES
* MAX_LABEL_LENGTH and MAX_DEBUG_GROUP_STACK_DEPTH are set to the minimum
values defined in the spec.
* Assume its fine that Push/Pop also filter the output of the
ARB_debug_output extension
* From the KHR_debug spec "If the DEBUG_OUTPUT state is disabled then no
messages are added to the message log." To allow for this the state of
DEBUG_OUTPUT now affects the ARB_debug_output extension meaning
callbacks and messages are now not called/stored unless either
DEBUG_OUTPUT is enabled or CONTEXT_DEBUG_BIT_ARB is set. The existing
Mesa implementation allowed callbacks/messages to be stored without
CONTEXT_DEBUG_BIT_ARB being set.
* As both arb_debug_output and khr_debug have the same message log the
messages returned by the arb_debug_output functions need to be filtered
to return types/severitys that the caller expects (rather than new type
introduced byt khr_debug). To work around this just the types are just
remap them to types arb_debug_output understands.
Timothy Arceri (15):
mesa: Add some constants and state variables for KHR_debug functions
mesa: Share common code between ARB_debug_output and KHR_debug
functions
mesa: Add a clone function to mesa hash
mesa: Implement glPushDebugGroup and glPopDebugGroup
mesa: make _mesa_lookup_arrayobj() non-static
mesa: make _mesa_lookup_list() non-static
mesa: add debug Label field to several data structures
mesa: free object labels when deleting
mesa: make _mesa_validate_sync() non-static
mesa: Implement KHR_debug ObjectLabel functions
mesa: Update builds scripts to build object labels
mesa: Implement GL_DEBUG_OUTPUT
mesa: Remap debug type and severity
glapi: Setup autogeneration infrastructure for KHR_debug
mesa: Setup remaining infrastucture and enable KHR_debug
src/mapi/glapi/gen/gl_API.xml | 149 +++++-
src/mapi/glapi/gen/gl_genexec.py | 1 +
src/mesa/Makefile.sources | 1 +
src/mesa/SConscript | 1 +
src/mesa/drivers/dri/i965/brw_context.c | 2 +
src/mesa/main/arrayobj.c | 11 +-
src/mesa/main/arrayobj.h | 3 +
src/mesa/main/bufferobj.c | 1 +
src/mesa/main/config.h | 7 +-
src/mesa/main/dlist.c | 13 +-
src/mesa/main/dlist.h | 2 +
src/mesa/main/enable.c | 9 +
src/mesa/main/errors.c | 633 +++++++++++++++++++-------
src/mesa/main/errors.h | 20 +
src/mesa/main/extensions.c | 3 +
src/mesa/main/framebuffer.c | 1 +
src/mesa/main/get_hash_params.py | 14 +-
src/mesa/main/hash.c | 26 ++
src/mesa/main/hash.h | 3 +
src/mesa/main/mtypes.h | 34 +-
src/mesa/main/objectlabel.c | 277 +++++++++++
src/mesa/main/objectlabel.h | 61 +++
src/mesa/main/queryobj.c | 1 +
src/mesa/main/renderbuffer.c | 1 +
src/mesa/main/samplerobj.c | 1 +
src/mesa/main/shaderobj.c | 3 +
src/mesa/main/syncobj.c | 3 +-
src/mesa/main/syncobj.h | 3 +
src/mesa/main/texobj.c | 2 +
src/mesa/main/transformfeedback.c | 1 +
src/mesa/state_tracker/st_cb_bufferobjects.c | 1 +
src/mesa/state_tracker/st_cb_syncobj.c | 1 +
src/mesa/state_tracker/st_manager.c | 6 +-
33 files changed, 1105 insertions(+), 190 deletions(-)
create mode 100644 src/mesa/main/objectlabel.c
create mode 100644 src/mesa/main/objectlabel.h
--
1.7.9.5
More information about the mesa-dev
mailing list