On 11/12/18 5:11 pm, Ian Romanick wrote:
On 12/10/18 5:52 PM, Timothy Arceri wrote:
On 11/12/18 11:35 am, Ian Romanick wrote:
It seems like someone already sent out patches to implement this, and we
decided to not take it for some reason.  Maybe it was Rob?

I discovered a thread from the beginning of 2017 titled "feature.txt &
EXT_debug_label extension". But couldn't find any implementation.

There was a reply from yourself, but it seems incorrect to me:

"I checked both extensions, and they're not "just" aliases.  The EXT adds
a single function with an enum to select the kind of object.  The KHR
adds a function per kind of object.  It would be easy enough to add, but
it seems more valuable to suggest the developer use the more broadly
supported extension."

That's weird for a couple reasons.  One, that's not even the discussion
that I was thinking of.  I'll check in the morning to see if I can find
it.  Two, I was clearly full of it... I really don't see how I came that
conclusion.  I don't even see any other related extensions that I could
have been confusing either thing with.

So do you think we should push this?


On 12/10/18 4:08 PM, Timothy Arceri wrote:
KHR_debug already provides superior functionality but this
extension is still in use and adding support for it seems fairly
harmless. For example it seems to be used by Unity as seen in the
Parkitect trace attached to Mesa bug #108919.
---
   src/mapi/glapi/gen/gl_API.xml    | 17 +++++++++++++++++
   src/mesa/main/extensions_table.h |  1 +
   src/mesa/main/objectlabel.c      |  6 ++++++
   3 files changed, 24 insertions(+)

diff --git a/src/mapi/glapi/gen/gl_API.xml
b/src/mapi/glapi/gen/gl_API.xml
index f1def8090d..75423c4edb 100644
--- a/src/mapi/glapi/gen/gl_API.xml
+++ b/src/mapi/glapi/gen/gl_API.xml
@@ -12973,6 +12973,23 @@
       <enum name="GPU_MEMORY_INFO_EVICTED_MEMORY_NVX"
value="0x904B" />
   </category>
   +<category name="GL_EXT_debug_label" number="439">
+  <function name="LabelObjectEXT" alias="ObjectLabel">

Since these are just aliases, I don't think any changes needed in
dispatch-sanity... but did you run 'make check' anyway? :)


Yes :) Passed as expected.


+    <param name="type" type="GLenum"/>
+    <param name="object" type="GLuint"/>
+    <param name="length" type="GLsizei"/>
+    <param name="label" type="const GLchar *"/>
+  </function>
+
+  <function name="GetObjectLabelEXT" alias="GetObjectLabel">
+    <param name="type" type="GLenum"/>
+    <param name="object" type="GLuint"/>
+    <param name="bufSize" type="GLsizei"/>
+    <param name="length" type="GLsizei"/>
+    <param name="label" type="GLchar *"/>
+  </function>
+</category>
+
   <xi:include href="AMD_gpu_shader_int64.xml"
xmlns:xi="http://www.w3.org/2001/XInclude"/>
     <category name="GL_NV_fill_rectangle" number="466">
diff --git a/src/mesa/main/extensions_table.h
b/src/mesa/main/extensions_table.h
index dad38124d5..b68f6781c4 100644
--- a/src/mesa/main/extensions_table.h
+++ b/src/mesa/main/extensions_table.h
@@ -217,6 +217,7 @@ EXT(EXT_compiled_vertex_array               ,
dummy_true
   EXT(EXT_compressed_ETC1_RGB8_sub_texture    ,
OES_compressed_ETC1_RGB8_texture       ,  x ,  x , ES1, ES2, 2014)
   EXT(EXT_copy_image                          ,
OES_copy_image                         ,  x ,  x ,  x ,  30, 2014)
   EXT(EXT_copy_texture                        ,
dummy_true                             , GLL,  x ,  x ,  x , 1995)
+EXT(EXT_debug_label                         ,
dummy_true                             , GLL, GLC,  x ,  x , 2013)
   EXT(EXT_depth_bounds_test                   ,
EXT_depth_bounds_test                  , GLL, GLC,  x ,  x , 2002)
   EXT(EXT_discard_framebuffer                 ,
dummy_true                             ,  x ,  x , ES1, ES2, 2009)
   EXT(EXT_disjoint_timer_query                ,
EXT_disjoint_timer_query               ,  x ,  x ,  x , ES2, 2016)
diff --git a/src/mesa/main/objectlabel.c b/src/mesa/main/objectlabel.c
index 1e3022ee54..9d4cc1871e 100644
--- a/src/mesa/main/objectlabel.c
+++ b/src/mesa/main/objectlabel.c
@@ -139,6 +139,7 @@ get_label_pointer(struct gl_context *ctx, GLenum
identifier, GLuint name,
        switch (identifier) {
      case GL_BUFFER:
+   case GL_BUFFER_OBJECT_EXT:
         {
            struct gl_buffer_object *bufObj =
_mesa_lookup_bufferobj(ctx, name);
            if (bufObj)
@@ -146,6 +147,7 @@ get_label_pointer(struct gl_context *ctx, GLenum
identifier, GLuint name,
         }
         break;
      case GL_SHADER:
+   case GL_SHADER_OBJECT_EXT:
         {
            struct gl_shader *shader = _mesa_lookup_shader(ctx, name);
            if (shader)
@@ -153,6 +155,7 @@ get_label_pointer(struct gl_context *ctx, GLenum
identifier, GLuint name,
         }
         break;
      case GL_PROGRAM:
+   case GL_PROGRAM_OBJECT_EXT:
         {
            struct gl_shader_program *program =
               _mesa_lookup_shader_program(ctx, name);
@@ -161,6 +164,7 @@ get_label_pointer(struct gl_context *ctx, GLenum
identifier, GLuint name,
         }
         break;
      case GL_VERTEX_ARRAY:
+   case GL_VERTEX_ARRAY_OBJECT_EXT:
         {
            struct gl_vertex_array_object *obj = _mesa_lookup_vao(ctx,
name);
            if (obj)
@@ -168,6 +172,7 @@ get_label_pointer(struct gl_context *ctx, GLenum
identifier, GLuint name,
         }
         break;
      case GL_QUERY:
+   case GL_QUERY_OBJECT_EXT:
         {
            struct gl_query_object *query =
_mesa_lookup_query_object(ctx, name);
            if (query)
@@ -225,6 +230,7 @@ get_label_pointer(struct gl_context *ctx, GLenum
identifier, GLuint name,
         }
         break;
      case GL_PROGRAM_PIPELINE:
+   case GL_PROGRAM_PIPELINE_OBJECT_EXT:
         {
            struct gl_pipeline_object *pipe =
               _mesa_lookup_pipeline_object(ctx, name);


_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev



_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to