From 1f7a96e005be0c0941df5487a11c53f048ebd58a Mon Sep 17 00:00:00 2001 From: Rob Clark Date: Mon, 10 Aug 2015 10:37:53 -0400 Subject: [PATCH] mesa: add GREMEDY_string_marker Signed-off-by: Rob Clark Reviewed-by: Ian Romanick --- src/mapi/glapi/gen/GREMEDY_string_marker.xml | 18 ++++++++++++++++++ src/mapi/glapi/gen/Makefile.am | 1 + src/mapi/glapi/gen/gl_API.xml | 2 ++ src/mesa/main/dd.h | 6 ++++++ src/mesa/main/errors.c | 13 +++++++++++++ src/mesa/main/errors.h | 3 +++ src/mesa/main/extensions_table.h | 2 ++ src/mesa/main/mtypes.h | 1 + src/mesa/main/tests/dispatch_sanity.cpp | 3 +++ 9 files changed, 49 insertions(+) create mode 100644 src/mapi/glapi/gen/GREMEDY_string_marker.xml diff --git a/src/mapi/glapi/gen/GREMEDY_string_marker.xml b/src/mapi/glapi/gen/GREMEDY_string_marker.xml new file mode 100644 index 00000000000..ffa3eac5898 --- /dev/null +++ b/src/mapi/glapi/gen/GREMEDY_string_marker.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/src/mapi/glapi/gen/Makefile.am b/src/mapi/glapi/gen/Makefile.am index 3f3e0b9af5f..cd7feabba24 100644 --- a/src/mapi/glapi/gen/Makefile.am +++ b/src/mapi/glapi/gen/Makefile.am @@ -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 \ diff --git a/src/mapi/glapi/gen/gl_API.xml b/src/mapi/glapi/gen/gl_API.xml index 593ace49563..d7ab3bff4df 100644 --- a/src/mapi/glapi/gen/gl_API.xml +++ b/src/mapi/glapi/gen/gl_API.xml @@ -12620,6 +12620,8 @@ + + diff --git a/src/mesa/main/dd.h b/src/mesa/main/dd.h index 70ed5633f7b..d4378e51159 100644 --- a/src/mesa/main/dd.h +++ b/src/mesa/main/dd.h @@ -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 diff --git a/src/mesa/main/errors.c b/src/mesa/main/errors.c index 9e6610918c4..630d3525fd4 100644 --- a/src/mesa/main/errors.c +++ b/src/mesa/main/errors.c @@ -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 */ diff --git a/src/mesa/main/errors.h b/src/mesa/main/errors.h index f2919765488..92df2ac868a 100644 --- a/src/mesa/main/errors.h +++ b/src/mesa/main/errors.h @@ -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 diff --git a/src/mesa/main/extensions_table.h b/src/mesa/main/extensions_table.h index aeccb017423..9cec1762dbe 100644 --- a/src/mesa/main/extensions_table.h +++ b/src/mesa/main/extensions_table.h @@ -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) diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index 0992d4d30f0..3912c2bc847 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -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; diff --git a/src/mesa/main/tests/dispatch_sanity.cpp b/src/mesa/main/tests/dispatch_sanity.cpp index 7610bcbd701..eb1108124e9 100644 --- a/src/mesa/main/tests/dispatch_sanity.cpp +++ b/src/mesa/main/tests/dispatch_sanity.cpp @@ -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 } }; -- 2.30.2