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. >> 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 >> [email protected] >> https://lists.freedesktop.org/mailman/listinfo/mesa-dev >> > _______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
