From: Marek Olšák Date: Thu, 19 Mar 2020 05:56:57 +0000 (-0400) Subject: glthread: autogenerate prototypes for custom-marshalled functions X-Git-Url: https://git.libre-soc.org/?p=mesa.git;a=commitdiff_plain;h=37725e6c389a1135b288373a4d589806c98af291 glthread: autogenerate prototypes for custom-marshalled functions Reviewed-by: Timothy Arceri Part-of: --- diff --git a/src/mapi/glapi/gen/gl_marshal_h.py b/src/mapi/glapi/gen/gl_marshal_h.py index 94926b99a0f..8a23b146e0e 100644 --- a/src/mapi/glapi/gen/gl_marshal_h.py +++ b/src/mapi/glapi/gen/gl_marshal_h.py @@ -63,6 +63,15 @@ class PrintCode(gl_XML.gl_print_base): print(' DISPATCH_CMD_{0},'.format(func.name)) print(' NUM_DISPATCH_CMD,') print('};') + print('') + + for func in api.functionIterateAll(): + flavor = func.marshal_flavor() + if flavor == 'custom': + print('struct marshal_cmd_{0};'.format(func.name)) + print(('void _mesa_unmarshal_{0}(struct gl_context *ctx, ' + 'const struct marshal_cmd_{0} *cmd);').format(func.name)) + print('void GLAPIENTRY _mesa_marshal_{0}({1});'.format(func.name, func.get_parameter_string())) def show_usage(): diff --git a/src/mesa/main/marshal.c b/src/mesa/main/marshal.c index cbcb7c58750..d68dadaabca 100644 --- a/src/mesa/main/marshal.c +++ b/src/mesa/main/marshal.c @@ -213,14 +213,14 @@ _mesa_unmarshal_BufferData(struct gl_context *ctx, void _mesa_unmarshal_NamedBufferData(struct gl_context *ctx, - const struct marshal_cmd_BufferData *cmd) + const struct marshal_cmd_NamedBufferData *cmd) { unreachable("never used - all BufferData variants use DISPATCH_CMD_BufferData"); } void _mesa_unmarshal_NamedBufferDataEXT(struct gl_context *ctx, - const struct marshal_cmd_BufferData *cmd) + const struct marshal_cmd_NamedBufferDataEXT *cmd) { unreachable("never used - all BufferData variants use DISPATCH_CMD_BufferData"); } @@ -328,14 +328,14 @@ _mesa_unmarshal_BufferSubData(struct gl_context *ctx, void _mesa_unmarshal_NamedBufferSubData(struct gl_context *ctx, - const struct marshal_cmd_BufferSubData *cmd) + const struct marshal_cmd_NamedBufferSubData *cmd) { unreachable("never used - all BufferSubData variants use DISPATCH_CMD_BufferSubData"); } void _mesa_unmarshal_NamedBufferSubDataEXT(struct gl_context *ctx, - const struct marshal_cmd_BufferSubData *cmd) + const struct marshal_cmd_NamedBufferSubDataEXT *cmd) { unreachable("never used - all BufferSubData variants use DISPATCH_CMD_BufferSubData"); } diff --git a/src/mesa/main/marshal.h b/src/mesa/main/marshal.h index 9688012bb3b..c5b3209201b 100644 --- a/src/mesa/main/marshal.h +++ b/src/mesa/main/marshal.h @@ -120,69 +120,9 @@ _mesa_glthread_is_non_vbo_draw_elements_indirect(const struct gl_context *ctx) struct _glapi_table * _mesa_create_marshal_table(const struct gl_context *ctx); -struct marshal_cmd_ShaderSource; -struct marshal_cmd_BufferData; -struct marshal_cmd_BufferSubData; - -void GLAPIENTRY -_mesa_marshal_ShaderSource(GLuint shader, GLsizei count, - const GLchar * const *string, const GLint *length); - -void -_mesa_unmarshal_ShaderSource(struct gl_context *ctx, - const struct marshal_cmd_ShaderSource *cmd); - void _mesa_glthread_BindBuffer(struct gl_context *ctx, GLenum target, GLuint buffer); -void -_mesa_unmarshal_BufferData(struct gl_context *ctx, - const struct marshal_cmd_BufferData *cmd); - -void -_mesa_unmarshal_NamedBufferData(struct gl_context *ctx, - const struct marshal_cmd_BufferData *cmd); - -void -_mesa_unmarshal_NamedBufferDataEXT(struct gl_context *ctx, - const struct marshal_cmd_BufferData *cmd); - -void GLAPIENTRY -_mesa_marshal_BufferData(GLenum target, GLsizeiptr size, const GLvoid * data, - GLenum usage); - -void GLAPIENTRY -_mesa_marshal_NamedBufferData(GLuint buffer, GLsizeiptr size, - const GLvoid * data, GLenum usage); - -void GLAPIENTRY -_mesa_marshal_NamedBufferDataEXT(GLuint buffer, GLsizeiptr size, - const GLvoid *data, GLenum usage); - -void -_mesa_unmarshal_BufferSubData(struct gl_context *ctx, - const struct marshal_cmd_BufferSubData *cmd); - -void -_mesa_unmarshal_NamedBufferSubData(struct gl_context *ctx, - const struct marshal_cmd_BufferSubData *cmd); - -void -_mesa_unmarshal_NamedBufferSubDataEXT(struct gl_context *ctx, - const struct marshal_cmd_BufferSubData *cmd); - -void GLAPIENTRY -_mesa_marshal_BufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, - const GLvoid * data); - -void GLAPIENTRY -_mesa_marshal_NamedBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr size, - const GLvoid * data); - -void GLAPIENTRY -_mesa_marshal_NamedBufferSubDataEXT(GLuint buffer, GLintptr offset, - GLsizeiptr size, const GLvoid * data); - static inline unsigned _mesa_buffer_enum_to_count(GLenum buffer) {