[Mesa-dev] [PATCH 14/15] glapi: Setup autogeneration infrastructure for KHR_debug

Ian Romanick idr at freedesktop.org
Wed Sep 4 13:54:18 PDT 2013


For new extensions, we've been adding the entry points to a new,
per-extension, .xml file.

More comments below.

On 08/26/2013 03:43 AM, Timothy Arceri wrote:
> 
> Signed-off-by: Timothy Arceri <t_arceri at yahoo.com.au>
> ---
>  src/mapi/glapi/gen/gl_API.xml    |  149 +++++++++++++++++++++++++++++++++++++-
>  src/mapi/glapi/gen/gl_genexec.py |    1 +
>  2 files changed, 149 insertions(+), 1 deletion(-)
> 
> diff --git a/src/mapi/glapi/gen/gl_API.xml b/src/mapi/glapi/gen/gl_API.xml
> index 82b908f..71aa9a7 100644
> --- a/src/mapi/glapi/gen/gl_API.xml
> +++ b/src/mapi/glapi/gen/gl_API.xml
> @@ -1107,6 +1107,7 @@
>      <type name="void"    size="1"/>
>  
>      <type name="DEBUGPROCARB" size="4" pointer="true"/>
> +    <type name="DEBUGPROC" size="4" pointer="true"/>
>  
>      <function name="NewList" offset="0" deprecated="3.1">
>          <param name="list" type="GLuint"/>
> @@ -8309,7 +8310,153 @@
>  
>  <xi:include href="ARB_texture_storage.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
>  
> -<!-- ARB extensions #118...#126 -->
> +<!-- ARB extension #118 -->
> +
> +<category name="GL_KHR_debug" number="119">
> +  <enum name="DEBUG_OUTPUT"                               value="0x92E0"/>
> +  <enum name="DEBUG_OUTPUT_SYNCHRONOUS"                   value="0x8242"/>
> +
> +  <enum name="CONTEXT_FLAG_DEBUG_BIT"                     value="0x00000002"/>
> +
> +  <enum name="MAX_DEBUG_MESSAGE_LENGTH" count="1"         value="0x9143">
> +    <size name="Get" mode="get"/>
> +  </enum>
> +  <enum name="MAX_DEBUG_LOGGED_MESSAGES" count="1"        value="0x9144">
> +    <size name="Get" mode="get"/>
> +  </enum>
> +  <enum name="DEBUG_LOGGED_MESSAGES" count="1"            value="0x9145">
> +    <size name="Get" mode="get"/>
> +  </enum>
> +  <enum name="DEBUG_NEXT_LOGGED_MESSAGE_LENGTH" count="1" value="0x8243">
> +    <size name="Get" mode="get"/>
> +  </enum>
> +  <enum name="MAX_DEBUG_GROUP_STACK_DEPTH" count="1"      value="0x826C">
> +    <size name="Get" mode="get"/>
> +  </enum>
> +  <enum name="DEBUG_GROUP_STACK_DEPTH" count="1"          value="0x826D">
> +    <size name="Get" mode="get"/>
> +  </enum>
> +  <enum name="MAX_LABEL_LENGTH" count="1"                 value="0x82E8">
> +    <size name="Get" mode="get"/>
> +  </enum>
> +
> +  <enum name="DEBUG_CALLBACK_FUNCTION" count="1"          value="0x8244">
> +     <size name="GetPointerv" mode="get"/>
> +  </enum>
> +  <enum name="DEBUG_CALLBACK_USER_PARAM" count="1"        value="0x8245">
> +    <size name="GetPointerv" mode="get"/>
> +  </enum>
> +
> +  <enum name="DEBUG_SOURCE_API"                           value="0x8246"/>
> +  <enum name="DEBUG_SOURCE_WINDOW_SYSTEM"                 value="0x8247"/>
> +  <enum name="DEBUG_SOURCE_SHADER_COMPILER"               value="0x8248"/>
> +  <enum name="DEBUG_SOURCE_THIRD_PARTY"                   value="0x8249"/>
> +  <enum name="DEBUG_SOURCE_APPLICATION"                   value="0x824A"/>
> +  <enum name="DEBUG_SOURCE_OTHER"                         value="0x824B"/>
> +
> +  <enum name="DEBUG_TYPE_ERROR"                           value="0x824C"/>
> +  <enum name="DEBUG_TYPE_DEPRECATED_BEHAVIOR"             value="0x824D"/>
> +  <enum name="DEBUG_TYPE_UNDEFINED_BEHAVIOR"              value="0x824E"/>
> +  <enum name="DEBUG_TYPE_PORTABILITY"                     value="0x824F"/>
> +  <enum name="DEBUG_TYPE_PERFORMANCE"                     value="0x8250"/>
> +  <enum name="DEBUG_TYPE_OTHER"                           value="0x8251"/>
> +  <enum name="DEBUG_TYPE_MARKER"                          value="0x8268"/>
> +
> +  <enum name="DEBUG_TYPE_PUSH_GROUP"                      value="0x8269"/>
> +  <enum name="DEBUG_TYPE_POP_GROUP"                       value="0x826A"/>
> +
> +  <enum name="DEBUG_SEVERITY_HIGH"                        value="0x9146"/>
> +  <enum name="DEBUG_SEVERITY_MEDIUM"                      value="0x9147"/>
> +  <enum name="DEBUG_SEVERITY_LOW"                         value="0x9148"/>
> +  <enum name="DEBUG_SEVERITY_NOTIFICATION"                value="0x826B"/>
> +
> +  <enum name="STACK_UNDERFLOW"                            value="0x0504"/>
> +  <enum name="STACK_OVERFLOW"                             value="0x0503"/>
> +
> +  <enum name="BUFFER"                                     value="0x82E0"/>
> +  <enum name="SHADER"                                     value="0x82E1"/>
> +  <enum name="PROGRAM"                                    value="0x82E2"/>
> +  <enum name="QUERY"                                      value="0x82E3"/>
> +  <enum name="PROGRAM_PIPELINE"                           value="0x82E4"/>
> +  <enum name="SAMPLER"                                    value="0x82E6"/>
> +  <!-- Compatibility Profile -->
> +  <enum name="DISPLAY_LIST"                               value="0x82E7"/>
> +
> +  <function name="DebugMessageControl" offset="assign">

  <function name="DebugMessageControl" alias="DebugMessageControlARB">

> +    <param name="source" type="GLenum"/>
> +    <param name="type" type="GLenum"/>
> +    <param name="severity" type="GLenum"/>
> +    <param name="count" type="GLsizei" counter="true"/>
> +    <param name="ids" type="const GLuint *" count="count"/>
> +    <param name="enabled" type="GLboolean"/>
> +  </function>
> +
> +  <function name="DebugMessageInsert" offset="assign">

  <function name="DebugMessageInsert" alias="DebugMessageInsertARB">

> +    <param name="source" type="GLenum"/>
> +    <param name="type" type="GLenum"/>
> +    <param name="id" type="GLuint"/>
> +    <param name="severity" type="GLenum"/>
> +    <param name="length" type="GLsizei"/>
> +    <param name="buf" type="const GLchar *"/>
> +  </function>
> +
> +  <function name="DebugMessageCallback" offset="assign">

  <function name="DebugMessageCallback" alias="DebugMessageCallbackARB">

> +    <param name="callback" type="GLDEBUGPROC"/>
> +    <param name="userParam" type="const GLvoid *"/>
> +  </function>
> +
> +  <function name="GetDebugMessageLog" offset="assign">

  <function name="GetDebugMessageLog" alias="GetDebugMessageLogARB">

> +    <return type="GLuint"/>
> +    <param name="count" type="GLuint"/>
> +    <param name="bufsize" type="GLsizei"/>
> +    <param name="sources" type="GLenum *" output="true"/>
> +    <param name="types" type="GLenum *" output="true"/>
> +    <param name="ids" type="GLuint *" output="true"/>
> +    <param name="severities" type="GLenum *" output="true"/>
> +    <param name="lengths" type="GLsizei *" output="true"/>
> +    <param name="messageLog" type="GLchar *" output="true"/>
> +  </function>
> +
> +  <function name="PushDebugGroup" offset="assign">
> +    <param name="source" type="GLenum"/>
> +    <param name="id" type="GLuint"/>
> +    <param name="length" type="GLsizei"/>
> +    <param name="message" type="const GLchar *"/>
> +  </function>
> +
> +  <function name="PopDebugGroup" offset="assign"/>
> +
> +  <function name="ObjectLabel" offset="assign">
> +    <param name="identifier" type="GLenum"/>
> +    <param name="name" type="GLuint"/>
> +    <param name="length" type="GLsizei"/>
> +    <param name="label" type="const GLchar *"/>
> +  </function>
> +
> +  <function name="GetObjectLabel" offset="assign">
> +    <param name="identifier" type="GLenum"/>
> +    <param name="name" type="GLuint"/>
> +    <param name="bufSize" type="GLsizei"/>
> +    <param name="length" type="GLsizei *"/>
> +    <param name="label" type="GLchar *"/>
> +  </function>
> +
> +  <function name="ObjectPtrLabel" offset="assign">
> +    <param name="ptr" type="const GLvoid *"/>
> +    <param name="length" type="GLsizei"/>
> +    <param name="label" type="const GLchar *"/>
> +  </function>
> +
> +  <function name="GetObjectPtrLabel" offset="assign">
> +    <param name="ptr" type="const GLvoid *"/>
> +    <param name="bufSize" type="GLsizei"/>
> +    <param name="length" type="GLsizei *"/>
> +    <param name="label" type="GLchar *"/>
> +  </function>
> +
> +</category>
> +
> +<!-- ARB extensions #120...#126 -->
>  
>  <xi:include href="ARB_ES3_compatibility.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
>  
> diff --git a/src/mapi/glapi/gen/gl_genexec.py b/src/mapi/glapi/gen/gl_genexec.py
> index e91d4e9..be82f90 100644
> --- a/src/mapi/glapi/gen/gl_genexec.py
> +++ b/src/mapi/glapi/gen/gl_genexec.py
> @@ -81,6 +81,7 @@ header = """/**
>  #include "main/lines.h"
>  #include "main/matrix.h"
>  #include "main/multisample.h"
> +#include "main/objectlabel.h"
>  #include "main/pixel.h"
>  #include "main/pixelstore.h"
>  #include "main/points.h"
> 



More information about the mesa-dev mailing list