mesa: add GREMEDY_string_marker
authorRob Clark <robclark@freedesktop.org>
Mon, 10 Aug 2015 14:37:53 +0000 (10:37 -0400)
committerRob Clark <robclark@freedesktop.org>
Thu, 21 Jan 2016 22:19:05 +0000 (17:19 -0500)
Signed-off-by: Rob Clark <robclark@freedesktop.org>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
src/mapi/glapi/gen/GREMEDY_string_marker.xml [new file with mode: 0644]
src/mapi/glapi/gen/Makefile.am
src/mapi/glapi/gen/gl_API.xml
src/mesa/main/dd.h
src/mesa/main/errors.c
src/mesa/main/errors.h
src/mesa/main/extensions_table.h
src/mesa/main/mtypes.h
src/mesa/main/tests/dispatch_sanity.cpp

diff --git a/src/mapi/glapi/gen/GREMEDY_string_marker.xml b/src/mapi/glapi/gen/GREMEDY_string_marker.xml
new file mode 100644 (file)
index 0000000..ffa3eac
--- /dev/null
@@ -0,0 +1,18 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<!-- Note: no GLX protocol info yet. -->
+
+
+<OpenGLAPI>
+
+<category name="GL_GREMEDY_string_marker" number="311">
+
+    <function name="StringMarkerGREMEDY">
+        <param name="len" type="GLsizei"/>
+        <param name="string" type="const GLvoid *"/>
+    </function>
+
+</category>
+
+</OpenGLAPI>
index 3f3e0b9af5fd77b6b05c366c31aeb0b1fbcbee3c..cd7feabba24d56e3a9f642b3e300eaa606198ea9 100644 (file)
@@ -196,6 +196,7 @@ API_XML = \
        EXT_texture_array.xml \
        EXT_texture_integer.xml \
        EXT_transform_feedback.xml \
+       GREMEDY_string_marker.xml \
        INTEL_performance_query.xml \
        KHR_debug.xml \
        KHR_context_flush_control.xml \
index 593ace4956306466f516645ccfcb8476bddf4aa5..d7ab3bff4df5dae04a7d1e184f2dc93713913f0f 100644 (file)
 
 <xi:include href="EXT_framebuffer_object.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
 
+<xi:include href="GREMEDY_string_marker.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
 <xi:include href="EXT_packed_depth_stencil.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
 
 <xi:include href="EXT_provoking_vertex.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
index 70ed5633f7b2f96a3682dbaeab876978ff7aff77..d4378e511591ec543dcae152ca73c5fc8911884b 100644 (file)
@@ -762,6 +762,12 @@ struct dd_function_table {
    void (*UseProgram)(struct gl_context *ctx, struct gl_shader_program *shProg);
    /*@}*/
 
+   /**
+    * \name GREMEDY debug/marker functions
+    */
+   /*@{*/
+   void (*EmitStringMarker)(struct gl_context *ctx, const GLchar *string, GLsizei len);
+   /*@}*/
 
    /**
     * \name Support for multiple T&L engines
index 9e6610918c443bc8be03b3d04eb82bc9f985d7f3..630d3525fd44da24ff322815b2184476c6849db0 100644 (file)
@@ -1276,6 +1276,19 @@ _mesa_free_errors_data(struct gl_context *ctx)
    mtx_destroy(&ctx->DebugMutex);
 }
 
+void GLAPIENTRY
+_mesa_StringMarkerGREMEDY(GLsizei len, const GLvoid *string)
+{
+   GET_CURRENT_CONTEXT(ctx);
+   if (ctx->Extensions.GREMEDY_string_marker) {
+      /* if length not specified, string will be null terminated: */
+      if (len <= 0)
+         len = strlen(string);
+      ctx->Driver.EmitStringMarker(ctx, string, len);
+   } else {
+      _mesa_error(ctx, GL_INVALID_OPERATION, "StringMarkerGREMEDY");
+   }
+}
 
 /**********************************************************************/
 /** \name Diagnostics */
index f291976548834d5f005ff52e4c9dcc2c2dc69078..92df2ac868a08b429c81fa1705b7bed5063c2eb2 100644 (file)
@@ -138,6 +138,9 @@ _mesa_PushDebugGroup(GLenum source, GLuint id, GLsizei length,
 void GLAPIENTRY
 _mesa_PopDebugGroup(void);
 
+void GLAPIENTRY
+_mesa_StringMarkerGREMEDY(GLsizei len, const GLvoid *string);
+
 #ifdef __cplusplus
 }
 #endif
index aeccb017423a1654080d6efae13ab3a7b107a47b..9cec1762dbe7f6c3f62ca9d347c6dd6dfedcb655 100644 (file)
@@ -251,6 +251,8 @@ EXT(EXT_unpack_subimage                     , dummy_true
 EXT(EXT_vertex_array                        , dummy_true                             , GLL,  x ,  x ,  x , 1995)
 EXT(EXT_vertex_array_bgra                   , EXT_vertex_array_bgra                  , GLL, GLC,  x ,  x , 2008)
 
+EXT(GREMEDY_string_marker                   , GREMEDY_string_marker                  , GLL, GLC,  x ,  x , 2007)
+
 EXT(IBM_multimode_draw_arrays               , dummy_true                             , GLL, GLC,  x ,  x , 1998)
 EXT(IBM_rasterpos_clip                      , dummy_true                             , GLL,  x ,  x ,  x , 1996)
 EXT(IBM_texture_mirrored_repeat             , dummy_true                             , GLL,  x ,  x ,  x , 1998)
index 0992d4d30f0456e26c93647d9309d5d3d187876c..3912c2bc847f5269b1b67c2a063b343664aa1261 100644 (file)
@@ -3880,6 +3880,7 @@ struct gl_extensions
    GLboolean ATI_texture_env_combine3;
    GLboolean ATI_fragment_shader;
    GLboolean ATI_separate_stencil;
+   GLboolean GREMEDY_string_marker;
    GLboolean INTEL_performance_query;
    GLboolean KHR_texture_compression_astc_hdr;
    GLboolean KHR_texture_compression_astc_ldr;
index 7610bcbd7014ba46b185bc19c3dc294a7b3541d8..eb1108124e96776867191f44939b008d94629658 100644 (file)
@@ -940,6 +940,9 @@ const struct function common_desktop_functions_possible[] = {
    { "glGetTextureSubImage", 20, -1 },
    { "glGetCompressedTextureSubImage", 20, -1 },
 
+   /* GL_GREMEDY_string_marker */
+   { "glStringMarkerGREMEDY", 15, -1 },
+
    { NULL, 0, -1 }
 };