On Sun, Jul 9, 2017 at 9:21 AM, Grigori Goronzy <[email protected]> wrote: > Extract clear buffer helper functions in preparation for adding > marshal/unmarshal functions for the various glClearBuffer variants. > --- > src/mesa/main/marshal.c | 74 > +++++++++++++++++++++++++++++++------------------ > src/mesa/main/marshal.h | 5 ++-- > 2 files changed, 50 insertions(+), 29 deletions(-) > > diff --git a/src/mesa/main/marshal.c b/src/mesa/main/marshal.c > index 8db4531..1edc580 100644 > --- a/src/mesa/main/marshal.c > +++ b/src/mesa/main/marshal.c > @@ -517,7 +517,7 @@ _mesa_marshal_NamedBufferSubData(GLuint buffer, GLintptr > offset, > } > > /* ClearBufferfv: marshalled asynchronously */ > -struct marshal_cmd_ClearBufferfv > +struct marshal_cmd_ClearBuffer > { > struct marshal_cmd_base cmd_base; > GLenum buffer; > @@ -526,7 +526,7 @@ struct marshal_cmd_ClearBufferfv > > void > _mesa_unmarshal_ClearBufferfv(struct gl_context *ctx, > - const struct marshal_cmd_ClearBufferfv *cmd) > + const struct marshal_cmd_ClearBuffer *cmd) > { > const GLenum buffer = cmd->buffer; > const GLint drawbuffer = cmd->drawbuffer; > @@ -537,6 +537,47 @@ _mesa_unmarshal_ClearBufferfv(struct gl_context *ctx, > (buffer, drawbuffer, value)); > } > > +static inline size_t buffer_to_size(GLenum buffer) > +{ > + switch (buffer) { > + case GL_COLOR: > + return 4; > + case GL_DEPTH_STENCIL: > + return 2; > + case GL_STENCIL: > + case GL_DEPTH: > + return 1; > + default: > + return 0; > + } > +} > + > +static inline bool clear_buffer_add_command(struct gl_context *ctx, uint16_t > id,
Please don't use 'inline'. The compiler is capable of making this decision for itself, based on the data it has available. _______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
