196c5ddc4Srjs/* DO NOT EDIT - This file generated automatically by gl_marshal.py script */
296c5ddc4Srjs
396c5ddc4Srjs/*
496c5ddc4Srjs * Copyright (C) 2012 Intel Corporation
596c5ddc4Srjs * All Rights Reserved.
696c5ddc4Srjs *
796c5ddc4Srjs * Permission is hereby granted, free of charge, to any person obtaining a
896c5ddc4Srjs * copy of this software and associated documentation files (the "Software"),
996c5ddc4Srjs * to deal in the Software without restriction, including without limitation
1096c5ddc4Srjs * the rights to use, copy, modify, merge, publish, distribute, sub license,
1196c5ddc4Srjs * and/or sell copies of the Software, and to permit persons to whom the
1296c5ddc4Srjs * Software is furnished to do so, subject to the following conditions:
1396c5ddc4Srjs *
1496c5ddc4Srjs * The above copyright notice and this permission notice (including the next
1596c5ddc4Srjs * paragraph) shall be included in all copies or substantial portions of the
1696c5ddc4Srjs * Software.
1796c5ddc4Srjs *
1896c5ddc4Srjs * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1996c5ddc4Srjs * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
2096c5ddc4Srjs * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
2196c5ddc4Srjs * INTEL CORPORATION,
2296c5ddc4Srjs * AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
2396c5ddc4Srjs * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
2496c5ddc4Srjs * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2596c5ddc4Srjs * SOFTWARE.
2696c5ddc4Srjs */
2796c5ddc4Srjs
2896c5ddc4Srjs
2996c5ddc4Srjs#include "api_exec.h"
3096c5ddc4Srjs#include "glthread_marshal.h"
3196c5ddc4Srjs#include "bufferobj.h"
3296c5ddc4Srjs#include "dispatch.h"
3396c5ddc4Srjs
3496c5ddc4Srjs#define COMPAT (ctx->API != API_OPENGL_CORE)
3596c5ddc4Srjs
3696c5ddc4SrjsUNUSED static inline int safe_mul(int a, int b)
3796c5ddc4Srjs{
3896c5ddc4Srjs    if (a < 0 || b < 0) return -1;
3996c5ddc4Srjs    if (a == 0 || b == 0) return 0;
4096c5ddc4Srjs    if (a > INT_MAX / b) return -1;
4196c5ddc4Srjs    return a * b;
4296c5ddc4Srjs}
4396c5ddc4Srjs
4496c5ddc4Srjs/* NewList: marshalled asynchronously */
4596c5ddc4Srjsstruct marshal_cmd_NewList
4696c5ddc4Srjs{
4796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
4896c5ddc4Srjs   GLuint list;
4996c5ddc4Srjs   GLenum mode;
5096c5ddc4Srjs};
5196c5ddc4Srjsuint32_t
5296c5ddc4Srjs_mesa_unmarshal_NewList(struct gl_context *ctx, const struct marshal_cmd_NewList *cmd, const uint64_t *last)
5396c5ddc4Srjs{
5496c5ddc4Srjs   GLuint list = cmd->list;
5596c5ddc4Srjs   GLenum mode = cmd->mode;
5696c5ddc4Srjs   CALL_NewList(ctx->CurrentServerDispatch, (list, mode));
5796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_NewList), 8) / 8);
5896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
5996c5ddc4Srjs   return cmd_size;
6096c5ddc4Srjs}
6196c5ddc4Srjsvoid GLAPIENTRY
6296c5ddc4Srjs_mesa_marshal_NewList(GLuint list, GLenum mode)
6396c5ddc4Srjs{
6496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
6596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_NewList);
6696c5ddc4Srjs   struct marshal_cmd_NewList *cmd;
6796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_NewList, cmd_size);
6896c5ddc4Srjs   cmd->list = list;
6996c5ddc4Srjs   cmd->mode = mode;
7096c5ddc4Srjs   _mesa_glthread_NewList(ctx, list, mode);
7196c5ddc4Srjs}
7296c5ddc4Srjs
7396c5ddc4Srjs
7496c5ddc4Srjs/* EndList: marshalled asynchronously */
7596c5ddc4Srjsstruct marshal_cmd_EndList
7696c5ddc4Srjs{
7796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
7896c5ddc4Srjs};
7996c5ddc4Srjsuint32_t
8096c5ddc4Srjs_mesa_unmarshal_EndList(struct gl_context *ctx, const struct marshal_cmd_EndList *cmd, const uint64_t *last)
8196c5ddc4Srjs{
8296c5ddc4Srjs   CALL_EndList(ctx->CurrentServerDispatch, ());
8396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_EndList), 8) / 8);
8496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
8596c5ddc4Srjs   return cmd_size;
8696c5ddc4Srjs}
8796c5ddc4Srjsvoid GLAPIENTRY
8896c5ddc4Srjs_mesa_marshal_EndList(void)
8996c5ddc4Srjs{
9096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
9196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_EndList);
9296c5ddc4Srjs   struct marshal_cmd_EndList *cmd;
9396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_EndList, cmd_size);
9496c5ddc4Srjs   (void) cmd;
9596c5ddc4Srjs   _mesa_glthread_EndList(ctx);
9696c5ddc4Srjs}
9796c5ddc4Srjs
9896c5ddc4Srjs
9996c5ddc4Srjs/* CallLists: marshalled asynchronously */
10096c5ddc4Srjsstruct marshal_cmd_CallLists
10196c5ddc4Srjs{
10296c5ddc4Srjs   struct marshal_cmd_base cmd_base;
10396c5ddc4Srjs   GLsizei n;
10496c5ddc4Srjs   GLenum type;
10596c5ddc4Srjs   /* Next (n * _mesa_calllists_enum_to_count(type)) bytes are GLvoid lists[n] */
10696c5ddc4Srjs};
10796c5ddc4Srjsuint32_t
10896c5ddc4Srjs_mesa_unmarshal_CallLists(struct gl_context *ctx, const struct marshal_cmd_CallLists *cmd, const uint64_t *last)
10996c5ddc4Srjs{
11096c5ddc4Srjs   GLsizei n = cmd->n;
11196c5ddc4Srjs   GLenum type = cmd->type;
11296c5ddc4Srjs   GLvoid * lists;
11396c5ddc4Srjs   const char *variable_data = (const char *) (cmd + 1);
11496c5ddc4Srjs   lists = (GLvoid *) variable_data;
11596c5ddc4Srjs   CALL_CallLists(ctx->CurrentServerDispatch, (n, type, lists));
11696c5ddc4Srjs   return cmd->cmd_base.cmd_size;
11796c5ddc4Srjs}
11896c5ddc4Srjsvoid GLAPIENTRY
11996c5ddc4Srjs_mesa_marshal_CallLists(GLsizei n, GLenum type, const GLvoid * lists)
12096c5ddc4Srjs{
12196c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
12296c5ddc4Srjs   int lists_size = (n * _mesa_calllists_enum_to_count(type));
12396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_CallLists) + lists_size;
12496c5ddc4Srjs   struct marshal_cmd_CallLists *cmd;
12596c5ddc4Srjs   if (unlikely(lists_size < 0 || (lists_size > 0 && !lists) || (unsigned)cmd_size > MARSHAL_MAX_CMD_SIZE)) {
12696c5ddc4Srjs      _mesa_glthread_finish_before(ctx, "CallLists");
12796c5ddc4Srjs      CALL_CallLists(ctx->CurrentServerDispatch, (n, type, lists));
12896c5ddc4Srjs      _mesa_glthread_CallLists(ctx, n, type, lists);
12996c5ddc4Srjs      return;
13096c5ddc4Srjs   }
13196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_CallLists, cmd_size);
13296c5ddc4Srjs   cmd->n = n;
13396c5ddc4Srjs   cmd->type = type;
13496c5ddc4Srjs   char *variable_data = (char *) (cmd + 1);
13596c5ddc4Srjs   memcpy(variable_data, lists, lists_size);
13696c5ddc4Srjs   _mesa_glthread_CallLists(ctx, n, type, lists);
13796c5ddc4Srjs}
13896c5ddc4Srjs
13996c5ddc4Srjs
14096c5ddc4Srjs/* DeleteLists: marshalled asynchronously */
14196c5ddc4Srjsstruct marshal_cmd_DeleteLists
14296c5ddc4Srjs{
14396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
14496c5ddc4Srjs   GLuint list;
14596c5ddc4Srjs   GLsizei range;
14696c5ddc4Srjs};
14796c5ddc4Srjsuint32_t
14896c5ddc4Srjs_mesa_unmarshal_DeleteLists(struct gl_context *ctx, const struct marshal_cmd_DeleteLists *cmd, const uint64_t *last)
14996c5ddc4Srjs{
15096c5ddc4Srjs   GLuint list = cmd->list;
15196c5ddc4Srjs   GLsizei range = cmd->range;
15296c5ddc4Srjs   CALL_DeleteLists(ctx->CurrentServerDispatch, (list, range));
15396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_DeleteLists), 8) / 8);
15496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
15596c5ddc4Srjs   return cmd_size;
15696c5ddc4Srjs}
15796c5ddc4Srjsvoid GLAPIENTRY
15896c5ddc4Srjs_mesa_marshal_DeleteLists(GLuint list, GLsizei range)
15996c5ddc4Srjs{
16096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
16196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_DeleteLists);
16296c5ddc4Srjs   struct marshal_cmd_DeleteLists *cmd;
16396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_DeleteLists, cmd_size);
16496c5ddc4Srjs   cmd->list = list;
16596c5ddc4Srjs   cmd->range = range;
16696c5ddc4Srjs   _mesa_glthread_DeleteLists(ctx, range);
16796c5ddc4Srjs}
16896c5ddc4Srjs
16996c5ddc4Srjs
17096c5ddc4Srjs/* GenLists: marshalled synchronously */
17196c5ddc4SrjsGLuint GLAPIENTRY
17296c5ddc4Srjs_mesa_marshal_GenLists(GLsizei range)
17396c5ddc4Srjs{
17496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
17596c5ddc4Srjs   _mesa_glthread_finish_before(ctx, "GenLists");
17696c5ddc4Srjs   return CALL_GenLists(ctx->CurrentServerDispatch, (range));
17796c5ddc4Srjs}
17896c5ddc4Srjs
17996c5ddc4Srjs
18096c5ddc4Srjs/* ListBase: marshalled asynchronously */
18196c5ddc4Srjsstruct marshal_cmd_ListBase
18296c5ddc4Srjs{
18396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
18496c5ddc4Srjs   GLuint base;
18596c5ddc4Srjs};
18696c5ddc4Srjsuint32_t
18796c5ddc4Srjs_mesa_unmarshal_ListBase(struct gl_context *ctx, const struct marshal_cmd_ListBase *cmd, const uint64_t *last)
18896c5ddc4Srjs{
18996c5ddc4Srjs   GLuint base = cmd->base;
19096c5ddc4Srjs   CALL_ListBase(ctx->CurrentServerDispatch, (base));
19196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_ListBase), 8) / 8);
19296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
19396c5ddc4Srjs   return cmd_size;
19496c5ddc4Srjs}
19596c5ddc4Srjsvoid GLAPIENTRY
19696c5ddc4Srjs_mesa_marshal_ListBase(GLuint base)
19796c5ddc4Srjs{
19896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
19996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_ListBase);
20096c5ddc4Srjs   struct marshal_cmd_ListBase *cmd;
20196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_ListBase, cmd_size);
20296c5ddc4Srjs   cmd->base = base;
20396c5ddc4Srjs   _mesa_glthread_ListBase(ctx, base);
20496c5ddc4Srjs}
20596c5ddc4Srjs
20696c5ddc4Srjs
20796c5ddc4Srjs/* Begin: marshalled asynchronously */
20896c5ddc4Srjsstruct marshal_cmd_Begin
20996c5ddc4Srjs{
21096c5ddc4Srjs   struct marshal_cmd_base cmd_base;
21196c5ddc4Srjs   GLenum mode;
21296c5ddc4Srjs};
21396c5ddc4Srjsuint32_t
21496c5ddc4Srjs_mesa_unmarshal_Begin(struct gl_context *ctx, const struct marshal_cmd_Begin *cmd, const uint64_t *last)
21596c5ddc4Srjs{
21696c5ddc4Srjs   GLenum mode = cmd->mode;
21796c5ddc4Srjs   CALL_Begin(ctx->CurrentServerDispatch, (mode));
21896c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Begin), 8) / 8);
21996c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
22096c5ddc4Srjs   return cmd_size;
22196c5ddc4Srjs}
22296c5ddc4Srjsvoid GLAPIENTRY
22396c5ddc4Srjs_mesa_marshal_Begin(GLenum mode)
22496c5ddc4Srjs{
22596c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
22696c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Begin);
22796c5ddc4Srjs   struct marshal_cmd_Begin *cmd;
22896c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Begin, cmd_size);
22996c5ddc4Srjs   cmd->mode = mode;
23096c5ddc4Srjs}
23196c5ddc4Srjs
23296c5ddc4Srjs
23396c5ddc4Srjs/* Bitmap: marshalled asynchronously */
23496c5ddc4Srjsstruct marshal_cmd_Bitmap
23596c5ddc4Srjs{
23696c5ddc4Srjs   struct marshal_cmd_base cmd_base;
23796c5ddc4Srjs   GLsizei width;
23896c5ddc4Srjs   GLsizei height;
23996c5ddc4Srjs   GLfloat xorig;
24096c5ddc4Srjs   GLfloat yorig;
24196c5ddc4Srjs   GLfloat xmove;
24296c5ddc4Srjs   GLfloat ymove;
24396c5ddc4Srjs   const GLubyte * bitmap;
24496c5ddc4Srjs};
24596c5ddc4Srjsuint32_t
24696c5ddc4Srjs_mesa_unmarshal_Bitmap(struct gl_context *ctx, const struct marshal_cmd_Bitmap *cmd, const uint64_t *last)
24796c5ddc4Srjs{
24896c5ddc4Srjs   GLsizei width = cmd->width;
24996c5ddc4Srjs   GLsizei height = cmd->height;
25096c5ddc4Srjs   GLfloat xorig = cmd->xorig;
25196c5ddc4Srjs   GLfloat yorig = cmd->yorig;
25296c5ddc4Srjs   GLfloat xmove = cmd->xmove;
25396c5ddc4Srjs   GLfloat ymove = cmd->ymove;
25496c5ddc4Srjs   const GLubyte * bitmap = cmd->bitmap;
25596c5ddc4Srjs   CALL_Bitmap(ctx->CurrentServerDispatch, (width, height, xorig, yorig, xmove, ymove, bitmap));
25696c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Bitmap), 8) / 8);
25796c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
25896c5ddc4Srjs   return cmd_size;
25996c5ddc4Srjs}
26096c5ddc4Srjsvoid GLAPIENTRY
26196c5ddc4Srjs_mesa_marshal_Bitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte * bitmap)
26296c5ddc4Srjs{
26396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
26496c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Bitmap);
26596c5ddc4Srjs   struct marshal_cmd_Bitmap *cmd;
26696c5ddc4Srjs   if (_mesa_glthread_has_no_unpack_buffer(ctx)) {
26796c5ddc4Srjs      _mesa_glthread_finish_before(ctx, "Bitmap");
26896c5ddc4Srjs      CALL_Bitmap(ctx->CurrentServerDispatch, (width, height, xorig, yorig, xmove, ymove, bitmap));
26996c5ddc4Srjs      return;
27096c5ddc4Srjs   }
27196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Bitmap, cmd_size);
27296c5ddc4Srjs   cmd->width = width;
27396c5ddc4Srjs   cmd->height = height;
27496c5ddc4Srjs   cmd->xorig = xorig;
27596c5ddc4Srjs   cmd->yorig = yorig;
27696c5ddc4Srjs   cmd->xmove = xmove;
27796c5ddc4Srjs   cmd->ymove = ymove;
27896c5ddc4Srjs   cmd->bitmap = bitmap;
27996c5ddc4Srjs}
28096c5ddc4Srjs
28196c5ddc4Srjs
28296c5ddc4Srjs/* Color3b: marshalled asynchronously */
28396c5ddc4Srjsstruct marshal_cmd_Color3b
28496c5ddc4Srjs{
28596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
28696c5ddc4Srjs   GLbyte red;
28796c5ddc4Srjs   GLbyte green;
28896c5ddc4Srjs   GLbyte blue;
28996c5ddc4Srjs};
29096c5ddc4Srjsuint32_t
29196c5ddc4Srjs_mesa_unmarshal_Color3b(struct gl_context *ctx, const struct marshal_cmd_Color3b *cmd, const uint64_t *last)
29296c5ddc4Srjs{
29396c5ddc4Srjs   GLbyte red = cmd->red;
29496c5ddc4Srjs   GLbyte green = cmd->green;
29596c5ddc4Srjs   GLbyte blue = cmd->blue;
29696c5ddc4Srjs   CALL_Color3b(ctx->CurrentServerDispatch, (red, green, blue));
29796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color3b), 8) / 8);
29896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
29996c5ddc4Srjs   return cmd_size;
30096c5ddc4Srjs}
30196c5ddc4Srjsvoid GLAPIENTRY
30296c5ddc4Srjs_mesa_marshal_Color3b(GLbyte red, GLbyte green, GLbyte blue)
30396c5ddc4Srjs{
30496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
30596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color3b);
30696c5ddc4Srjs   struct marshal_cmd_Color3b *cmd;
30796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color3b, cmd_size);
30896c5ddc4Srjs   cmd->red = red;
30996c5ddc4Srjs   cmd->green = green;
31096c5ddc4Srjs   cmd->blue = blue;
31196c5ddc4Srjs}
31296c5ddc4Srjs
31396c5ddc4Srjs
31496c5ddc4Srjs/* Color3bv: marshalled asynchronously */
31596c5ddc4Srjsstruct marshal_cmd_Color3bv
31696c5ddc4Srjs{
31796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
31896c5ddc4Srjs   GLbyte v[3];
31996c5ddc4Srjs};
32096c5ddc4Srjsuint32_t
32196c5ddc4Srjs_mesa_unmarshal_Color3bv(struct gl_context *ctx, const struct marshal_cmd_Color3bv *cmd, const uint64_t *last)
32296c5ddc4Srjs{
32396c5ddc4Srjs   const GLbyte * v = cmd->v;
32496c5ddc4Srjs   CALL_Color3bv(ctx->CurrentServerDispatch, (v));
32596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color3bv), 8) / 8);
32696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
32796c5ddc4Srjs   return cmd_size;
32896c5ddc4Srjs}
32996c5ddc4Srjsvoid GLAPIENTRY
33096c5ddc4Srjs_mesa_marshal_Color3bv(const GLbyte * v)
33196c5ddc4Srjs{
33296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
33396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color3bv);
33496c5ddc4Srjs   struct marshal_cmd_Color3bv *cmd;
33596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color3bv, cmd_size);
33696c5ddc4Srjs   memcpy(cmd->v, v, 3 * sizeof(GLbyte));
33796c5ddc4Srjs}
33896c5ddc4Srjs
33996c5ddc4Srjs
34096c5ddc4Srjs/* Color3d: marshalled asynchronously */
34196c5ddc4Srjsstruct marshal_cmd_Color3d
34296c5ddc4Srjs{
34396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
34496c5ddc4Srjs   GLdouble red;
34596c5ddc4Srjs   GLdouble green;
34696c5ddc4Srjs   GLdouble blue;
34796c5ddc4Srjs};
34896c5ddc4Srjsuint32_t
34996c5ddc4Srjs_mesa_unmarshal_Color3d(struct gl_context *ctx, const struct marshal_cmd_Color3d *cmd, const uint64_t *last)
35096c5ddc4Srjs{
35196c5ddc4Srjs   GLdouble red = cmd->red;
35296c5ddc4Srjs   GLdouble green = cmd->green;
35396c5ddc4Srjs   GLdouble blue = cmd->blue;
35496c5ddc4Srjs   CALL_Color3d(ctx->CurrentServerDispatch, (red, green, blue));
35596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color3d), 8) / 8);
35696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
35796c5ddc4Srjs   return cmd_size;
35896c5ddc4Srjs}
35996c5ddc4Srjsvoid GLAPIENTRY
36096c5ddc4Srjs_mesa_marshal_Color3d(GLdouble red, GLdouble green, GLdouble blue)
36196c5ddc4Srjs{
36296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
36396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color3d);
36496c5ddc4Srjs   struct marshal_cmd_Color3d *cmd;
36596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color3d, cmd_size);
36696c5ddc4Srjs   cmd->red = red;
36796c5ddc4Srjs   cmd->green = green;
36896c5ddc4Srjs   cmd->blue = blue;
36996c5ddc4Srjs}
37096c5ddc4Srjs
37196c5ddc4Srjs
37296c5ddc4Srjs/* Color3dv: marshalled asynchronously */
37396c5ddc4Srjsstruct marshal_cmd_Color3dv
37496c5ddc4Srjs{
37596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
37696c5ddc4Srjs   GLdouble v[3];
37796c5ddc4Srjs};
37896c5ddc4Srjsuint32_t
37996c5ddc4Srjs_mesa_unmarshal_Color3dv(struct gl_context *ctx, const struct marshal_cmd_Color3dv *cmd, const uint64_t *last)
38096c5ddc4Srjs{
38196c5ddc4Srjs   const GLdouble * v = cmd->v;
38296c5ddc4Srjs   CALL_Color3dv(ctx->CurrentServerDispatch, (v));
38396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color3dv), 8) / 8);
38496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
38596c5ddc4Srjs   return cmd_size;
38696c5ddc4Srjs}
38796c5ddc4Srjsvoid GLAPIENTRY
38896c5ddc4Srjs_mesa_marshal_Color3dv(const GLdouble * v)
38996c5ddc4Srjs{
39096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
39196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color3dv);
39296c5ddc4Srjs   struct marshal_cmd_Color3dv *cmd;
39396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color3dv, cmd_size);
39496c5ddc4Srjs   memcpy(cmd->v, v, 3 * sizeof(GLdouble));
39596c5ddc4Srjs}
39696c5ddc4Srjs
39796c5ddc4Srjs
39896c5ddc4Srjs/* Color3f: marshalled asynchronously */
39996c5ddc4Srjsstruct marshal_cmd_Color3f
40096c5ddc4Srjs{
40196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
40296c5ddc4Srjs   GLfloat red;
40396c5ddc4Srjs   GLfloat green;
40496c5ddc4Srjs   GLfloat blue;
40596c5ddc4Srjs};
40696c5ddc4Srjsuint32_t
40796c5ddc4Srjs_mesa_unmarshal_Color3f(struct gl_context *ctx, const struct marshal_cmd_Color3f *cmd, const uint64_t *last)
40896c5ddc4Srjs{
40996c5ddc4Srjs   GLfloat red = cmd->red;
41096c5ddc4Srjs   GLfloat green = cmd->green;
41196c5ddc4Srjs   GLfloat blue = cmd->blue;
41296c5ddc4Srjs   CALL_Color3f(ctx->CurrentServerDispatch, (red, green, blue));
41396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color3f), 8) / 8);
41496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
41596c5ddc4Srjs   return cmd_size;
41696c5ddc4Srjs}
41796c5ddc4Srjsvoid GLAPIENTRY
41896c5ddc4Srjs_mesa_marshal_Color3f(GLfloat red, GLfloat green, GLfloat blue)
41996c5ddc4Srjs{
42096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
42196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color3f);
42296c5ddc4Srjs   struct marshal_cmd_Color3f *cmd;
42396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color3f, cmd_size);
42496c5ddc4Srjs   cmd->red = red;
42596c5ddc4Srjs   cmd->green = green;
42696c5ddc4Srjs   cmd->blue = blue;
42796c5ddc4Srjs}
42896c5ddc4Srjs
42996c5ddc4Srjs
43096c5ddc4Srjs/* Color3fv: marshalled asynchronously */
43196c5ddc4Srjsstruct marshal_cmd_Color3fv
43296c5ddc4Srjs{
43396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
43496c5ddc4Srjs   GLfloat v[3];
43596c5ddc4Srjs};
43696c5ddc4Srjsuint32_t
43796c5ddc4Srjs_mesa_unmarshal_Color3fv(struct gl_context *ctx, const struct marshal_cmd_Color3fv *cmd, const uint64_t *last)
43896c5ddc4Srjs{
43996c5ddc4Srjs   const GLfloat * v = cmd->v;
44096c5ddc4Srjs   CALL_Color3fv(ctx->CurrentServerDispatch, (v));
44196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color3fv), 8) / 8);
44296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
44396c5ddc4Srjs   return cmd_size;
44496c5ddc4Srjs}
44596c5ddc4Srjsvoid GLAPIENTRY
44696c5ddc4Srjs_mesa_marshal_Color3fv(const GLfloat * v)
44796c5ddc4Srjs{
44896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
44996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color3fv);
45096c5ddc4Srjs   struct marshal_cmd_Color3fv *cmd;
45196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color3fv, cmd_size);
45296c5ddc4Srjs   memcpy(cmd->v, v, 3 * sizeof(GLfloat));
45396c5ddc4Srjs}
45496c5ddc4Srjs
45596c5ddc4Srjs
45696c5ddc4Srjs/* Color3i: marshalled asynchronously */
45796c5ddc4Srjsstruct marshal_cmd_Color3i
45896c5ddc4Srjs{
45996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
46096c5ddc4Srjs   GLint red;
46196c5ddc4Srjs   GLint green;
46296c5ddc4Srjs   GLint blue;
46396c5ddc4Srjs};
46496c5ddc4Srjsuint32_t
46596c5ddc4Srjs_mesa_unmarshal_Color3i(struct gl_context *ctx, const struct marshal_cmd_Color3i *cmd, const uint64_t *last)
46696c5ddc4Srjs{
46796c5ddc4Srjs   GLint red = cmd->red;
46896c5ddc4Srjs   GLint green = cmd->green;
46996c5ddc4Srjs   GLint blue = cmd->blue;
47096c5ddc4Srjs   CALL_Color3i(ctx->CurrentServerDispatch, (red, green, blue));
47196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color3i), 8) / 8);
47296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
47396c5ddc4Srjs   return cmd_size;
47496c5ddc4Srjs}
47596c5ddc4Srjsvoid GLAPIENTRY
47696c5ddc4Srjs_mesa_marshal_Color3i(GLint red, GLint green, GLint blue)
47796c5ddc4Srjs{
47896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
47996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color3i);
48096c5ddc4Srjs   struct marshal_cmd_Color3i *cmd;
48196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color3i, cmd_size);
48296c5ddc4Srjs   cmd->red = red;
48396c5ddc4Srjs   cmd->green = green;
48496c5ddc4Srjs   cmd->blue = blue;
48596c5ddc4Srjs}
48696c5ddc4Srjs
48796c5ddc4Srjs
48896c5ddc4Srjs/* Color3iv: marshalled asynchronously */
48996c5ddc4Srjsstruct marshal_cmd_Color3iv
49096c5ddc4Srjs{
49196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
49296c5ddc4Srjs   GLint v[3];
49396c5ddc4Srjs};
49496c5ddc4Srjsuint32_t
49596c5ddc4Srjs_mesa_unmarshal_Color3iv(struct gl_context *ctx, const struct marshal_cmd_Color3iv *cmd, const uint64_t *last)
49696c5ddc4Srjs{
49796c5ddc4Srjs   const GLint * v = cmd->v;
49896c5ddc4Srjs   CALL_Color3iv(ctx->CurrentServerDispatch, (v));
49996c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color3iv), 8) / 8);
50096c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
50196c5ddc4Srjs   return cmd_size;
50296c5ddc4Srjs}
50396c5ddc4Srjsvoid GLAPIENTRY
50496c5ddc4Srjs_mesa_marshal_Color3iv(const GLint * v)
50596c5ddc4Srjs{
50696c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
50796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color3iv);
50896c5ddc4Srjs   struct marshal_cmd_Color3iv *cmd;
50996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color3iv, cmd_size);
51096c5ddc4Srjs   memcpy(cmd->v, v, 3 * sizeof(GLint));
51196c5ddc4Srjs}
51296c5ddc4Srjs
51396c5ddc4Srjs
51496c5ddc4Srjs/* Color3s: marshalled asynchronously */
51596c5ddc4Srjsstruct marshal_cmd_Color3s
51696c5ddc4Srjs{
51796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
51896c5ddc4Srjs   GLshort red;
51996c5ddc4Srjs   GLshort green;
52096c5ddc4Srjs   GLshort blue;
52196c5ddc4Srjs};
52296c5ddc4Srjsuint32_t
52396c5ddc4Srjs_mesa_unmarshal_Color3s(struct gl_context *ctx, const struct marshal_cmd_Color3s *cmd, const uint64_t *last)
52496c5ddc4Srjs{
52596c5ddc4Srjs   GLshort red = cmd->red;
52696c5ddc4Srjs   GLshort green = cmd->green;
52796c5ddc4Srjs   GLshort blue = cmd->blue;
52896c5ddc4Srjs   CALL_Color3s(ctx->CurrentServerDispatch, (red, green, blue));
52996c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color3s), 8) / 8);
53096c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
53196c5ddc4Srjs   return cmd_size;
53296c5ddc4Srjs}
53396c5ddc4Srjsvoid GLAPIENTRY
53496c5ddc4Srjs_mesa_marshal_Color3s(GLshort red, GLshort green, GLshort blue)
53596c5ddc4Srjs{
53696c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
53796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color3s);
53896c5ddc4Srjs   struct marshal_cmd_Color3s *cmd;
53996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color3s, cmd_size);
54096c5ddc4Srjs   cmd->red = red;
54196c5ddc4Srjs   cmd->green = green;
54296c5ddc4Srjs   cmd->blue = blue;
54396c5ddc4Srjs}
54496c5ddc4Srjs
54596c5ddc4Srjs
54696c5ddc4Srjs/* Color3sv: marshalled asynchronously */
54796c5ddc4Srjsstruct marshal_cmd_Color3sv
54896c5ddc4Srjs{
54996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
55096c5ddc4Srjs   GLshort v[3];
55196c5ddc4Srjs};
55296c5ddc4Srjsuint32_t
55396c5ddc4Srjs_mesa_unmarshal_Color3sv(struct gl_context *ctx, const struct marshal_cmd_Color3sv *cmd, const uint64_t *last)
55496c5ddc4Srjs{
55596c5ddc4Srjs   const GLshort * v = cmd->v;
55696c5ddc4Srjs   CALL_Color3sv(ctx->CurrentServerDispatch, (v));
55796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color3sv), 8) / 8);
55896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
55996c5ddc4Srjs   return cmd_size;
56096c5ddc4Srjs}
56196c5ddc4Srjsvoid GLAPIENTRY
56296c5ddc4Srjs_mesa_marshal_Color3sv(const GLshort * v)
56396c5ddc4Srjs{
56496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
56596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color3sv);
56696c5ddc4Srjs   struct marshal_cmd_Color3sv *cmd;
56796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color3sv, cmd_size);
56896c5ddc4Srjs   memcpy(cmd->v, v, 3 * sizeof(GLshort));
56996c5ddc4Srjs}
57096c5ddc4Srjs
57196c5ddc4Srjs
57296c5ddc4Srjs/* Color3ub: marshalled asynchronously */
57396c5ddc4Srjsstruct marshal_cmd_Color3ub
57496c5ddc4Srjs{
57596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
57696c5ddc4Srjs   GLubyte red;
57796c5ddc4Srjs   GLubyte green;
57896c5ddc4Srjs   GLubyte blue;
57996c5ddc4Srjs};
58096c5ddc4Srjsuint32_t
58196c5ddc4Srjs_mesa_unmarshal_Color3ub(struct gl_context *ctx, const struct marshal_cmd_Color3ub *cmd, const uint64_t *last)
58296c5ddc4Srjs{
58396c5ddc4Srjs   GLubyte red = cmd->red;
58496c5ddc4Srjs   GLubyte green = cmd->green;
58596c5ddc4Srjs   GLubyte blue = cmd->blue;
58696c5ddc4Srjs   CALL_Color3ub(ctx->CurrentServerDispatch, (red, green, blue));
58796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color3ub), 8) / 8);
58896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
58996c5ddc4Srjs   return cmd_size;
59096c5ddc4Srjs}
59196c5ddc4Srjsvoid GLAPIENTRY
59296c5ddc4Srjs_mesa_marshal_Color3ub(GLubyte red, GLubyte green, GLubyte blue)
59396c5ddc4Srjs{
59496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
59596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color3ub);
59696c5ddc4Srjs   struct marshal_cmd_Color3ub *cmd;
59796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color3ub, cmd_size);
59896c5ddc4Srjs   cmd->red = red;
59996c5ddc4Srjs   cmd->green = green;
60096c5ddc4Srjs   cmd->blue = blue;
60196c5ddc4Srjs}
60296c5ddc4Srjs
60396c5ddc4Srjs
60496c5ddc4Srjs/* Color3ubv: marshalled asynchronously */
60596c5ddc4Srjsstruct marshal_cmd_Color3ubv
60696c5ddc4Srjs{
60796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
60896c5ddc4Srjs   GLubyte v[3];
60996c5ddc4Srjs};
61096c5ddc4Srjsuint32_t
61196c5ddc4Srjs_mesa_unmarshal_Color3ubv(struct gl_context *ctx, const struct marshal_cmd_Color3ubv *cmd, const uint64_t *last)
61296c5ddc4Srjs{
61396c5ddc4Srjs   const GLubyte * v = cmd->v;
61496c5ddc4Srjs   CALL_Color3ubv(ctx->CurrentServerDispatch, (v));
61596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color3ubv), 8) / 8);
61696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
61796c5ddc4Srjs   return cmd_size;
61896c5ddc4Srjs}
61996c5ddc4Srjsvoid GLAPIENTRY
62096c5ddc4Srjs_mesa_marshal_Color3ubv(const GLubyte * v)
62196c5ddc4Srjs{
62296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
62396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color3ubv);
62496c5ddc4Srjs   struct marshal_cmd_Color3ubv *cmd;
62596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color3ubv, cmd_size);
62696c5ddc4Srjs   memcpy(cmd->v, v, 3 * sizeof(GLubyte));
62796c5ddc4Srjs}
62896c5ddc4Srjs
62996c5ddc4Srjs
63096c5ddc4Srjs/* Color3ui: marshalled asynchronously */
63196c5ddc4Srjsstruct marshal_cmd_Color3ui
63296c5ddc4Srjs{
63396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
63496c5ddc4Srjs   GLuint red;
63596c5ddc4Srjs   GLuint green;
63696c5ddc4Srjs   GLuint blue;
63796c5ddc4Srjs};
63896c5ddc4Srjsuint32_t
63996c5ddc4Srjs_mesa_unmarshal_Color3ui(struct gl_context *ctx, const struct marshal_cmd_Color3ui *cmd, const uint64_t *last)
64096c5ddc4Srjs{
64196c5ddc4Srjs   GLuint red = cmd->red;
64296c5ddc4Srjs   GLuint green = cmd->green;
64396c5ddc4Srjs   GLuint blue = cmd->blue;
64496c5ddc4Srjs   CALL_Color3ui(ctx->CurrentServerDispatch, (red, green, blue));
64596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color3ui), 8) / 8);
64696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
64796c5ddc4Srjs   return cmd_size;
64896c5ddc4Srjs}
64996c5ddc4Srjsvoid GLAPIENTRY
65096c5ddc4Srjs_mesa_marshal_Color3ui(GLuint red, GLuint green, GLuint blue)
65196c5ddc4Srjs{
65296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
65396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color3ui);
65496c5ddc4Srjs   struct marshal_cmd_Color3ui *cmd;
65596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color3ui, cmd_size);
65696c5ddc4Srjs   cmd->red = red;
65796c5ddc4Srjs   cmd->green = green;
65896c5ddc4Srjs   cmd->blue = blue;
65996c5ddc4Srjs}
66096c5ddc4Srjs
66196c5ddc4Srjs
66296c5ddc4Srjs/* Color3uiv: marshalled asynchronously */
66396c5ddc4Srjsstruct marshal_cmd_Color3uiv
66496c5ddc4Srjs{
66596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
66696c5ddc4Srjs   GLuint v[3];
66796c5ddc4Srjs};
66896c5ddc4Srjsuint32_t
66996c5ddc4Srjs_mesa_unmarshal_Color3uiv(struct gl_context *ctx, const struct marshal_cmd_Color3uiv *cmd, const uint64_t *last)
67096c5ddc4Srjs{
67196c5ddc4Srjs   const GLuint * v = cmd->v;
67296c5ddc4Srjs   CALL_Color3uiv(ctx->CurrentServerDispatch, (v));
67396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color3uiv), 8) / 8);
67496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
67596c5ddc4Srjs   return cmd_size;
67696c5ddc4Srjs}
67796c5ddc4Srjsvoid GLAPIENTRY
67896c5ddc4Srjs_mesa_marshal_Color3uiv(const GLuint * v)
67996c5ddc4Srjs{
68096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
68196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color3uiv);
68296c5ddc4Srjs   struct marshal_cmd_Color3uiv *cmd;
68396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color3uiv, cmd_size);
68496c5ddc4Srjs   memcpy(cmd->v, v, 3 * sizeof(GLuint));
68596c5ddc4Srjs}
68696c5ddc4Srjs
68796c5ddc4Srjs
68896c5ddc4Srjs/* Color3us: marshalled asynchronously */
68996c5ddc4Srjsstruct marshal_cmd_Color3us
69096c5ddc4Srjs{
69196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
69296c5ddc4Srjs   GLushort red;
69396c5ddc4Srjs   GLushort green;
69496c5ddc4Srjs   GLushort blue;
69596c5ddc4Srjs};
69696c5ddc4Srjsuint32_t
69796c5ddc4Srjs_mesa_unmarshal_Color3us(struct gl_context *ctx, const struct marshal_cmd_Color3us *cmd, const uint64_t *last)
69896c5ddc4Srjs{
69996c5ddc4Srjs   GLushort red = cmd->red;
70096c5ddc4Srjs   GLushort green = cmd->green;
70196c5ddc4Srjs   GLushort blue = cmd->blue;
70296c5ddc4Srjs   CALL_Color3us(ctx->CurrentServerDispatch, (red, green, blue));
70396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color3us), 8) / 8);
70496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
70596c5ddc4Srjs   return cmd_size;
70696c5ddc4Srjs}
70796c5ddc4Srjsvoid GLAPIENTRY
70896c5ddc4Srjs_mesa_marshal_Color3us(GLushort red, GLushort green, GLushort blue)
70996c5ddc4Srjs{
71096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
71196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color3us);
71296c5ddc4Srjs   struct marshal_cmd_Color3us *cmd;
71396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color3us, cmd_size);
71496c5ddc4Srjs   cmd->red = red;
71596c5ddc4Srjs   cmd->green = green;
71696c5ddc4Srjs   cmd->blue = blue;
71796c5ddc4Srjs}
71896c5ddc4Srjs
71996c5ddc4Srjs
72096c5ddc4Srjs/* Color3usv: marshalled asynchronously */
72196c5ddc4Srjsstruct marshal_cmd_Color3usv
72296c5ddc4Srjs{
72396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
72496c5ddc4Srjs   GLushort v[3];
72596c5ddc4Srjs};
72696c5ddc4Srjsuint32_t
72796c5ddc4Srjs_mesa_unmarshal_Color3usv(struct gl_context *ctx, const struct marshal_cmd_Color3usv *cmd, const uint64_t *last)
72896c5ddc4Srjs{
72996c5ddc4Srjs   const GLushort * v = cmd->v;
73096c5ddc4Srjs   CALL_Color3usv(ctx->CurrentServerDispatch, (v));
73196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color3usv), 8) / 8);
73296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
73396c5ddc4Srjs   return cmd_size;
73496c5ddc4Srjs}
73596c5ddc4Srjsvoid GLAPIENTRY
73696c5ddc4Srjs_mesa_marshal_Color3usv(const GLushort * v)
73796c5ddc4Srjs{
73896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
73996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color3usv);
74096c5ddc4Srjs   struct marshal_cmd_Color3usv *cmd;
74196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color3usv, cmd_size);
74296c5ddc4Srjs   memcpy(cmd->v, v, 3 * sizeof(GLushort));
74396c5ddc4Srjs}
74496c5ddc4Srjs
74596c5ddc4Srjs
74696c5ddc4Srjs/* Color4b: marshalled asynchronously */
74796c5ddc4Srjsstruct marshal_cmd_Color4b
74896c5ddc4Srjs{
74996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
75096c5ddc4Srjs   GLbyte red;
75196c5ddc4Srjs   GLbyte green;
75296c5ddc4Srjs   GLbyte blue;
75396c5ddc4Srjs   GLbyte alpha;
75496c5ddc4Srjs};
75596c5ddc4Srjsuint32_t
75696c5ddc4Srjs_mesa_unmarshal_Color4b(struct gl_context *ctx, const struct marshal_cmd_Color4b *cmd, const uint64_t *last)
75796c5ddc4Srjs{
75896c5ddc4Srjs   GLbyte red = cmd->red;
75996c5ddc4Srjs   GLbyte green = cmd->green;
76096c5ddc4Srjs   GLbyte blue = cmd->blue;
76196c5ddc4Srjs   GLbyte alpha = cmd->alpha;
76296c5ddc4Srjs   CALL_Color4b(ctx->CurrentServerDispatch, (red, green, blue, alpha));
76396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color4b), 8) / 8);
76496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
76596c5ddc4Srjs   return cmd_size;
76696c5ddc4Srjs}
76796c5ddc4Srjsvoid GLAPIENTRY
76896c5ddc4Srjs_mesa_marshal_Color4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha)
76996c5ddc4Srjs{
77096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
77196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color4b);
77296c5ddc4Srjs   struct marshal_cmd_Color4b *cmd;
77396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color4b, cmd_size);
77496c5ddc4Srjs   cmd->red = red;
77596c5ddc4Srjs   cmd->green = green;
77696c5ddc4Srjs   cmd->blue = blue;
77796c5ddc4Srjs   cmd->alpha = alpha;
77896c5ddc4Srjs}
77996c5ddc4Srjs
78096c5ddc4Srjs
78196c5ddc4Srjs/* Color4bv: marshalled asynchronously */
78296c5ddc4Srjsstruct marshal_cmd_Color4bv
78396c5ddc4Srjs{
78496c5ddc4Srjs   struct marshal_cmd_base cmd_base;
78596c5ddc4Srjs   GLbyte v[4];
78696c5ddc4Srjs};
78796c5ddc4Srjsuint32_t
78896c5ddc4Srjs_mesa_unmarshal_Color4bv(struct gl_context *ctx, const struct marshal_cmd_Color4bv *cmd, const uint64_t *last)
78996c5ddc4Srjs{
79096c5ddc4Srjs   const GLbyte * v = cmd->v;
79196c5ddc4Srjs   CALL_Color4bv(ctx->CurrentServerDispatch, (v));
79296c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color4bv), 8) / 8);
79396c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
79496c5ddc4Srjs   return cmd_size;
79596c5ddc4Srjs}
79696c5ddc4Srjsvoid GLAPIENTRY
79796c5ddc4Srjs_mesa_marshal_Color4bv(const GLbyte * v)
79896c5ddc4Srjs{
79996c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
80096c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color4bv);
80196c5ddc4Srjs   struct marshal_cmd_Color4bv *cmd;
80296c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color4bv, cmd_size);
80396c5ddc4Srjs   memcpy(cmd->v, v, 4 * sizeof(GLbyte));
80496c5ddc4Srjs}
80596c5ddc4Srjs
80696c5ddc4Srjs
80796c5ddc4Srjs/* Color4d: marshalled asynchronously */
80896c5ddc4Srjsstruct marshal_cmd_Color4d
80996c5ddc4Srjs{
81096c5ddc4Srjs   struct marshal_cmd_base cmd_base;
81196c5ddc4Srjs   GLdouble red;
81296c5ddc4Srjs   GLdouble green;
81396c5ddc4Srjs   GLdouble blue;
81496c5ddc4Srjs   GLdouble alpha;
81596c5ddc4Srjs};
81696c5ddc4Srjsuint32_t
81796c5ddc4Srjs_mesa_unmarshal_Color4d(struct gl_context *ctx, const struct marshal_cmd_Color4d *cmd, const uint64_t *last)
81896c5ddc4Srjs{
81996c5ddc4Srjs   GLdouble red = cmd->red;
82096c5ddc4Srjs   GLdouble green = cmd->green;
82196c5ddc4Srjs   GLdouble blue = cmd->blue;
82296c5ddc4Srjs   GLdouble alpha = cmd->alpha;
82396c5ddc4Srjs   CALL_Color4d(ctx->CurrentServerDispatch, (red, green, blue, alpha));
82496c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color4d), 8) / 8);
82596c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
82696c5ddc4Srjs   return cmd_size;
82796c5ddc4Srjs}
82896c5ddc4Srjsvoid GLAPIENTRY
82996c5ddc4Srjs_mesa_marshal_Color4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha)
83096c5ddc4Srjs{
83196c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
83296c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color4d);
83396c5ddc4Srjs   struct marshal_cmd_Color4d *cmd;
83496c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color4d, cmd_size);
83596c5ddc4Srjs   cmd->red = red;
83696c5ddc4Srjs   cmd->green = green;
83796c5ddc4Srjs   cmd->blue = blue;
83896c5ddc4Srjs   cmd->alpha = alpha;
83996c5ddc4Srjs}
84096c5ddc4Srjs
84196c5ddc4Srjs
84296c5ddc4Srjs/* Color4dv: marshalled asynchronously */
84396c5ddc4Srjsstruct marshal_cmd_Color4dv
84496c5ddc4Srjs{
84596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
84696c5ddc4Srjs   GLdouble v[4];
84796c5ddc4Srjs};
84896c5ddc4Srjsuint32_t
84996c5ddc4Srjs_mesa_unmarshal_Color4dv(struct gl_context *ctx, const struct marshal_cmd_Color4dv *cmd, const uint64_t *last)
85096c5ddc4Srjs{
85196c5ddc4Srjs   const GLdouble * v = cmd->v;
85296c5ddc4Srjs   CALL_Color4dv(ctx->CurrentServerDispatch, (v));
85396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color4dv), 8) / 8);
85496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
85596c5ddc4Srjs   return cmd_size;
85696c5ddc4Srjs}
85796c5ddc4Srjsvoid GLAPIENTRY
85896c5ddc4Srjs_mesa_marshal_Color4dv(const GLdouble * v)
85996c5ddc4Srjs{
86096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
86196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color4dv);
86296c5ddc4Srjs   struct marshal_cmd_Color4dv *cmd;
86396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color4dv, cmd_size);
86496c5ddc4Srjs   memcpy(cmd->v, v, 4 * sizeof(GLdouble));
86596c5ddc4Srjs}
86696c5ddc4Srjs
86796c5ddc4Srjs
86896c5ddc4Srjs/* Color4f: marshalled asynchronously */
86996c5ddc4Srjsstruct marshal_cmd_Color4f
87096c5ddc4Srjs{
87196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
87296c5ddc4Srjs   GLfloat red;
87396c5ddc4Srjs   GLfloat green;
87496c5ddc4Srjs   GLfloat blue;
87596c5ddc4Srjs   GLfloat alpha;
87696c5ddc4Srjs};
87796c5ddc4Srjsuint32_t
87896c5ddc4Srjs_mesa_unmarshal_Color4f(struct gl_context *ctx, const struct marshal_cmd_Color4f *cmd, const uint64_t *last)
87996c5ddc4Srjs{
88096c5ddc4Srjs   GLfloat red = cmd->red;
88196c5ddc4Srjs   GLfloat green = cmd->green;
88296c5ddc4Srjs   GLfloat blue = cmd->blue;
88396c5ddc4Srjs   GLfloat alpha = cmd->alpha;
88496c5ddc4Srjs   CALL_Color4f(ctx->CurrentServerDispatch, (red, green, blue, alpha));
88596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color4f), 8) / 8);
88696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
88796c5ddc4Srjs   return cmd_size;
88896c5ddc4Srjs}
88996c5ddc4Srjsvoid GLAPIENTRY
89096c5ddc4Srjs_mesa_marshal_Color4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
89196c5ddc4Srjs{
89296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
89396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color4f);
89496c5ddc4Srjs   struct marshal_cmd_Color4f *cmd;
89596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color4f, cmd_size);
89696c5ddc4Srjs   cmd->red = red;
89796c5ddc4Srjs   cmd->green = green;
89896c5ddc4Srjs   cmd->blue = blue;
89996c5ddc4Srjs   cmd->alpha = alpha;
90096c5ddc4Srjs}
90196c5ddc4Srjs
90296c5ddc4Srjs
90396c5ddc4Srjs/* Color4fv: marshalled asynchronously */
90496c5ddc4Srjsstruct marshal_cmd_Color4fv
90596c5ddc4Srjs{
90696c5ddc4Srjs   struct marshal_cmd_base cmd_base;
90796c5ddc4Srjs   GLfloat v[4];
90896c5ddc4Srjs};
90996c5ddc4Srjsuint32_t
91096c5ddc4Srjs_mesa_unmarshal_Color4fv(struct gl_context *ctx, const struct marshal_cmd_Color4fv *cmd, const uint64_t *last)
91196c5ddc4Srjs{
91296c5ddc4Srjs   const GLfloat * v = cmd->v;
91396c5ddc4Srjs   CALL_Color4fv(ctx->CurrentServerDispatch, (v));
91496c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color4fv), 8) / 8);
91596c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
91696c5ddc4Srjs   return cmd_size;
91796c5ddc4Srjs}
91896c5ddc4Srjsvoid GLAPIENTRY
91996c5ddc4Srjs_mesa_marshal_Color4fv(const GLfloat * v)
92096c5ddc4Srjs{
92196c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
92296c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color4fv);
92396c5ddc4Srjs   struct marshal_cmd_Color4fv *cmd;
92496c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color4fv, cmd_size);
92596c5ddc4Srjs   memcpy(cmd->v, v, 4 * sizeof(GLfloat));
92696c5ddc4Srjs}
92796c5ddc4Srjs
92896c5ddc4Srjs
92996c5ddc4Srjs/* Color4i: marshalled asynchronously */
93096c5ddc4Srjsstruct marshal_cmd_Color4i
93196c5ddc4Srjs{
93296c5ddc4Srjs   struct marshal_cmd_base cmd_base;
93396c5ddc4Srjs   GLint red;
93496c5ddc4Srjs   GLint green;
93596c5ddc4Srjs   GLint blue;
93696c5ddc4Srjs   GLint alpha;
93796c5ddc4Srjs};
93896c5ddc4Srjsuint32_t
93996c5ddc4Srjs_mesa_unmarshal_Color4i(struct gl_context *ctx, const struct marshal_cmd_Color4i *cmd, const uint64_t *last)
94096c5ddc4Srjs{
94196c5ddc4Srjs   GLint red = cmd->red;
94296c5ddc4Srjs   GLint green = cmd->green;
94396c5ddc4Srjs   GLint blue = cmd->blue;
94496c5ddc4Srjs   GLint alpha = cmd->alpha;
94596c5ddc4Srjs   CALL_Color4i(ctx->CurrentServerDispatch, (red, green, blue, alpha));
94696c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color4i), 8) / 8);
94796c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
94896c5ddc4Srjs   return cmd_size;
94996c5ddc4Srjs}
95096c5ddc4Srjsvoid GLAPIENTRY
95196c5ddc4Srjs_mesa_marshal_Color4i(GLint red, GLint green, GLint blue, GLint alpha)
95296c5ddc4Srjs{
95396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
95496c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color4i);
95596c5ddc4Srjs   struct marshal_cmd_Color4i *cmd;
95696c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color4i, cmd_size);
95796c5ddc4Srjs   cmd->red = red;
95896c5ddc4Srjs   cmd->green = green;
95996c5ddc4Srjs   cmd->blue = blue;
96096c5ddc4Srjs   cmd->alpha = alpha;
96196c5ddc4Srjs}
96296c5ddc4Srjs
96396c5ddc4Srjs
96496c5ddc4Srjs/* Color4iv: marshalled asynchronously */
96596c5ddc4Srjsstruct marshal_cmd_Color4iv
96696c5ddc4Srjs{
96796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
96896c5ddc4Srjs   GLint v[4];
96996c5ddc4Srjs};
97096c5ddc4Srjsuint32_t
97196c5ddc4Srjs_mesa_unmarshal_Color4iv(struct gl_context *ctx, const struct marshal_cmd_Color4iv *cmd, const uint64_t *last)
97296c5ddc4Srjs{
97396c5ddc4Srjs   const GLint * v = cmd->v;
97496c5ddc4Srjs   CALL_Color4iv(ctx->CurrentServerDispatch, (v));
97596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color4iv), 8) / 8);
97696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
97796c5ddc4Srjs   return cmd_size;
97896c5ddc4Srjs}
97996c5ddc4Srjsvoid GLAPIENTRY
98096c5ddc4Srjs_mesa_marshal_Color4iv(const GLint * v)
98196c5ddc4Srjs{
98296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
98396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color4iv);
98496c5ddc4Srjs   struct marshal_cmd_Color4iv *cmd;
98596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color4iv, cmd_size);
98696c5ddc4Srjs   memcpy(cmd->v, v, 4 * sizeof(GLint));
98796c5ddc4Srjs}
98896c5ddc4Srjs
98996c5ddc4Srjs
99096c5ddc4Srjs/* Color4s: marshalled asynchronously */
99196c5ddc4Srjsstruct marshal_cmd_Color4s
99296c5ddc4Srjs{
99396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
99496c5ddc4Srjs   GLshort red;
99596c5ddc4Srjs   GLshort green;
99696c5ddc4Srjs   GLshort blue;
99796c5ddc4Srjs   GLshort alpha;
99896c5ddc4Srjs};
99996c5ddc4Srjsuint32_t
100096c5ddc4Srjs_mesa_unmarshal_Color4s(struct gl_context *ctx, const struct marshal_cmd_Color4s *cmd, const uint64_t *last)
100196c5ddc4Srjs{
100296c5ddc4Srjs   GLshort red = cmd->red;
100396c5ddc4Srjs   GLshort green = cmd->green;
100496c5ddc4Srjs   GLshort blue = cmd->blue;
100596c5ddc4Srjs   GLshort alpha = cmd->alpha;
100696c5ddc4Srjs   CALL_Color4s(ctx->CurrentServerDispatch, (red, green, blue, alpha));
100796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color4s), 8) / 8);
100896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
100996c5ddc4Srjs   return cmd_size;
101096c5ddc4Srjs}
101196c5ddc4Srjsvoid GLAPIENTRY
101296c5ddc4Srjs_mesa_marshal_Color4s(GLshort red, GLshort green, GLshort blue, GLshort alpha)
101396c5ddc4Srjs{
101496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
101596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color4s);
101696c5ddc4Srjs   struct marshal_cmd_Color4s *cmd;
101796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color4s, cmd_size);
101896c5ddc4Srjs   cmd->red = red;
101996c5ddc4Srjs   cmd->green = green;
102096c5ddc4Srjs   cmd->blue = blue;
102196c5ddc4Srjs   cmd->alpha = alpha;
102296c5ddc4Srjs}
102396c5ddc4Srjs
102496c5ddc4Srjs
102596c5ddc4Srjs/* Color4sv: marshalled asynchronously */
102696c5ddc4Srjsstruct marshal_cmd_Color4sv
102796c5ddc4Srjs{
102896c5ddc4Srjs   struct marshal_cmd_base cmd_base;
102996c5ddc4Srjs   GLshort v[4];
103096c5ddc4Srjs};
103196c5ddc4Srjsuint32_t
103296c5ddc4Srjs_mesa_unmarshal_Color4sv(struct gl_context *ctx, const struct marshal_cmd_Color4sv *cmd, const uint64_t *last)
103396c5ddc4Srjs{
103496c5ddc4Srjs   const GLshort * v = cmd->v;
103596c5ddc4Srjs   CALL_Color4sv(ctx->CurrentServerDispatch, (v));
103696c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color4sv), 8) / 8);
103796c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
103896c5ddc4Srjs   return cmd_size;
103996c5ddc4Srjs}
104096c5ddc4Srjsvoid GLAPIENTRY
104196c5ddc4Srjs_mesa_marshal_Color4sv(const GLshort * v)
104296c5ddc4Srjs{
104396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
104496c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color4sv);
104596c5ddc4Srjs   struct marshal_cmd_Color4sv *cmd;
104696c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color4sv, cmd_size);
104796c5ddc4Srjs   memcpy(cmd->v, v, 4 * sizeof(GLshort));
104896c5ddc4Srjs}
104996c5ddc4Srjs
105096c5ddc4Srjs
105196c5ddc4Srjs/* Color4ub: marshalled asynchronously */
105296c5ddc4Srjsstruct marshal_cmd_Color4ub
105396c5ddc4Srjs{
105496c5ddc4Srjs   struct marshal_cmd_base cmd_base;
105596c5ddc4Srjs   GLubyte red;
105696c5ddc4Srjs   GLubyte green;
105796c5ddc4Srjs   GLubyte blue;
105896c5ddc4Srjs   GLubyte alpha;
105996c5ddc4Srjs};
106096c5ddc4Srjsuint32_t
106196c5ddc4Srjs_mesa_unmarshal_Color4ub(struct gl_context *ctx, const struct marshal_cmd_Color4ub *cmd, const uint64_t *last)
106296c5ddc4Srjs{
106396c5ddc4Srjs   GLubyte red = cmd->red;
106496c5ddc4Srjs   GLubyte green = cmd->green;
106596c5ddc4Srjs   GLubyte blue = cmd->blue;
106696c5ddc4Srjs   GLubyte alpha = cmd->alpha;
106796c5ddc4Srjs   CALL_Color4ub(ctx->CurrentServerDispatch, (red, green, blue, alpha));
106896c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color4ub), 8) / 8);
106996c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
107096c5ddc4Srjs   return cmd_size;
107196c5ddc4Srjs}
107296c5ddc4Srjsvoid GLAPIENTRY
107396c5ddc4Srjs_mesa_marshal_Color4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
107496c5ddc4Srjs{
107596c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
107696c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color4ub);
107796c5ddc4Srjs   struct marshal_cmd_Color4ub *cmd;
107896c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color4ub, cmd_size);
107996c5ddc4Srjs   cmd->red = red;
108096c5ddc4Srjs   cmd->green = green;
108196c5ddc4Srjs   cmd->blue = blue;
108296c5ddc4Srjs   cmd->alpha = alpha;
108396c5ddc4Srjs}
108496c5ddc4Srjs
108596c5ddc4Srjs
108696c5ddc4Srjs/* Color4ubv: marshalled asynchronously */
108796c5ddc4Srjsstruct marshal_cmd_Color4ubv
108896c5ddc4Srjs{
108996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
109096c5ddc4Srjs   GLubyte v[4];
109196c5ddc4Srjs};
109296c5ddc4Srjsuint32_t
109396c5ddc4Srjs_mesa_unmarshal_Color4ubv(struct gl_context *ctx, const struct marshal_cmd_Color4ubv *cmd, const uint64_t *last)
109496c5ddc4Srjs{
109596c5ddc4Srjs   const GLubyte * v = cmd->v;
109696c5ddc4Srjs   CALL_Color4ubv(ctx->CurrentServerDispatch, (v));
109796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color4ubv), 8) / 8);
109896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
109996c5ddc4Srjs   return cmd_size;
110096c5ddc4Srjs}
110196c5ddc4Srjsvoid GLAPIENTRY
110296c5ddc4Srjs_mesa_marshal_Color4ubv(const GLubyte * v)
110396c5ddc4Srjs{
110496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
110596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color4ubv);
110696c5ddc4Srjs   struct marshal_cmd_Color4ubv *cmd;
110796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color4ubv, cmd_size);
110896c5ddc4Srjs   memcpy(cmd->v, v, 4 * sizeof(GLubyte));
110996c5ddc4Srjs}
111096c5ddc4Srjs
111196c5ddc4Srjs
111296c5ddc4Srjs/* Color4ui: marshalled asynchronously */
111396c5ddc4Srjsstruct marshal_cmd_Color4ui
111496c5ddc4Srjs{
111596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
111696c5ddc4Srjs   GLuint red;
111796c5ddc4Srjs   GLuint green;
111896c5ddc4Srjs   GLuint blue;
111996c5ddc4Srjs   GLuint alpha;
112096c5ddc4Srjs};
112196c5ddc4Srjsuint32_t
112296c5ddc4Srjs_mesa_unmarshal_Color4ui(struct gl_context *ctx, const struct marshal_cmd_Color4ui *cmd, const uint64_t *last)
112396c5ddc4Srjs{
112496c5ddc4Srjs   GLuint red = cmd->red;
112596c5ddc4Srjs   GLuint green = cmd->green;
112696c5ddc4Srjs   GLuint blue = cmd->blue;
112796c5ddc4Srjs   GLuint alpha = cmd->alpha;
112896c5ddc4Srjs   CALL_Color4ui(ctx->CurrentServerDispatch, (red, green, blue, alpha));
112996c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color4ui), 8) / 8);
113096c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
113196c5ddc4Srjs   return cmd_size;
113296c5ddc4Srjs}
113396c5ddc4Srjsvoid GLAPIENTRY
113496c5ddc4Srjs_mesa_marshal_Color4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha)
113596c5ddc4Srjs{
113696c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
113796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color4ui);
113896c5ddc4Srjs   struct marshal_cmd_Color4ui *cmd;
113996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color4ui, cmd_size);
114096c5ddc4Srjs   cmd->red = red;
114196c5ddc4Srjs   cmd->green = green;
114296c5ddc4Srjs   cmd->blue = blue;
114396c5ddc4Srjs   cmd->alpha = alpha;
114496c5ddc4Srjs}
114596c5ddc4Srjs
114696c5ddc4Srjs
114796c5ddc4Srjs/* Color4uiv: marshalled asynchronously */
114896c5ddc4Srjsstruct marshal_cmd_Color4uiv
114996c5ddc4Srjs{
115096c5ddc4Srjs   struct marshal_cmd_base cmd_base;
115196c5ddc4Srjs   GLuint v[4];
115296c5ddc4Srjs};
115396c5ddc4Srjsuint32_t
115496c5ddc4Srjs_mesa_unmarshal_Color4uiv(struct gl_context *ctx, const struct marshal_cmd_Color4uiv *cmd, const uint64_t *last)
115596c5ddc4Srjs{
115696c5ddc4Srjs   const GLuint * v = cmd->v;
115796c5ddc4Srjs   CALL_Color4uiv(ctx->CurrentServerDispatch, (v));
115896c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color4uiv), 8) / 8);
115996c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
116096c5ddc4Srjs   return cmd_size;
116196c5ddc4Srjs}
116296c5ddc4Srjsvoid GLAPIENTRY
116396c5ddc4Srjs_mesa_marshal_Color4uiv(const GLuint * v)
116496c5ddc4Srjs{
116596c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
116696c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color4uiv);
116796c5ddc4Srjs   struct marshal_cmd_Color4uiv *cmd;
116896c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color4uiv, cmd_size);
116996c5ddc4Srjs   memcpy(cmd->v, v, 4 * sizeof(GLuint));
117096c5ddc4Srjs}
117196c5ddc4Srjs
117296c5ddc4Srjs
117396c5ddc4Srjs/* Color4us: marshalled asynchronously */
117496c5ddc4Srjsstruct marshal_cmd_Color4us
117596c5ddc4Srjs{
117696c5ddc4Srjs   struct marshal_cmd_base cmd_base;
117796c5ddc4Srjs   GLushort red;
117896c5ddc4Srjs   GLushort green;
117996c5ddc4Srjs   GLushort blue;
118096c5ddc4Srjs   GLushort alpha;
118196c5ddc4Srjs};
118296c5ddc4Srjsuint32_t
118396c5ddc4Srjs_mesa_unmarshal_Color4us(struct gl_context *ctx, const struct marshal_cmd_Color4us *cmd, const uint64_t *last)
118496c5ddc4Srjs{
118596c5ddc4Srjs   GLushort red = cmd->red;
118696c5ddc4Srjs   GLushort green = cmd->green;
118796c5ddc4Srjs   GLushort blue = cmd->blue;
118896c5ddc4Srjs   GLushort alpha = cmd->alpha;
118996c5ddc4Srjs   CALL_Color4us(ctx->CurrentServerDispatch, (red, green, blue, alpha));
119096c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color4us), 8) / 8);
119196c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
119296c5ddc4Srjs   return cmd_size;
119396c5ddc4Srjs}
119496c5ddc4Srjsvoid GLAPIENTRY
119596c5ddc4Srjs_mesa_marshal_Color4us(GLushort red, GLushort green, GLushort blue, GLushort alpha)
119696c5ddc4Srjs{
119796c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
119896c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color4us);
119996c5ddc4Srjs   struct marshal_cmd_Color4us *cmd;
120096c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color4us, cmd_size);
120196c5ddc4Srjs   cmd->red = red;
120296c5ddc4Srjs   cmd->green = green;
120396c5ddc4Srjs   cmd->blue = blue;
120496c5ddc4Srjs   cmd->alpha = alpha;
120596c5ddc4Srjs}
120696c5ddc4Srjs
120796c5ddc4Srjs
120896c5ddc4Srjs/* Color4usv: marshalled asynchronously */
120996c5ddc4Srjsstruct marshal_cmd_Color4usv
121096c5ddc4Srjs{
121196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
121296c5ddc4Srjs   GLushort v[4];
121396c5ddc4Srjs};
121496c5ddc4Srjsuint32_t
121596c5ddc4Srjs_mesa_unmarshal_Color4usv(struct gl_context *ctx, const struct marshal_cmd_Color4usv *cmd, const uint64_t *last)
121696c5ddc4Srjs{
121796c5ddc4Srjs   const GLushort * v = cmd->v;
121896c5ddc4Srjs   CALL_Color4usv(ctx->CurrentServerDispatch, (v));
121996c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Color4usv), 8) / 8);
122096c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
122196c5ddc4Srjs   return cmd_size;
122296c5ddc4Srjs}
122396c5ddc4Srjsvoid GLAPIENTRY
122496c5ddc4Srjs_mesa_marshal_Color4usv(const GLushort * v)
122596c5ddc4Srjs{
122696c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
122796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Color4usv);
122896c5ddc4Srjs   struct marshal_cmd_Color4usv *cmd;
122996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Color4usv, cmd_size);
123096c5ddc4Srjs   memcpy(cmd->v, v, 4 * sizeof(GLushort));
123196c5ddc4Srjs}
123296c5ddc4Srjs
123396c5ddc4Srjs
123496c5ddc4Srjs/* EdgeFlag: marshalled asynchronously */
123596c5ddc4Srjsstruct marshal_cmd_EdgeFlag
123696c5ddc4Srjs{
123796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
123896c5ddc4Srjs   GLboolean flag;
123996c5ddc4Srjs};
124096c5ddc4Srjsuint32_t
124196c5ddc4Srjs_mesa_unmarshal_EdgeFlag(struct gl_context *ctx, const struct marshal_cmd_EdgeFlag *cmd, const uint64_t *last)
124296c5ddc4Srjs{
124396c5ddc4Srjs   GLboolean flag = cmd->flag;
124496c5ddc4Srjs   CALL_EdgeFlag(ctx->CurrentServerDispatch, (flag));
124596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_EdgeFlag), 8) / 8);
124696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
124796c5ddc4Srjs   return cmd_size;
124896c5ddc4Srjs}
124996c5ddc4Srjsvoid GLAPIENTRY
125096c5ddc4Srjs_mesa_marshal_EdgeFlag(GLboolean flag)
125196c5ddc4Srjs{
125296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
125396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_EdgeFlag);
125496c5ddc4Srjs   struct marshal_cmd_EdgeFlag *cmd;
125596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_EdgeFlag, cmd_size);
125696c5ddc4Srjs   cmd->flag = flag;
125796c5ddc4Srjs}
125896c5ddc4Srjs
125996c5ddc4Srjs
126096c5ddc4Srjs/* EdgeFlagv: marshalled asynchronously */
126196c5ddc4Srjsstruct marshal_cmd_EdgeFlagv
126296c5ddc4Srjs{
126396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
126496c5ddc4Srjs   GLboolean flag[1];
126596c5ddc4Srjs};
126696c5ddc4Srjsuint32_t
126796c5ddc4Srjs_mesa_unmarshal_EdgeFlagv(struct gl_context *ctx, const struct marshal_cmd_EdgeFlagv *cmd, const uint64_t *last)
126896c5ddc4Srjs{
126996c5ddc4Srjs   const GLboolean * flag = cmd->flag;
127096c5ddc4Srjs   CALL_EdgeFlagv(ctx->CurrentServerDispatch, (flag));
127196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_EdgeFlagv), 8) / 8);
127296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
127396c5ddc4Srjs   return cmd_size;
127496c5ddc4Srjs}
127596c5ddc4Srjsvoid GLAPIENTRY
127696c5ddc4Srjs_mesa_marshal_EdgeFlagv(const GLboolean * flag)
127796c5ddc4Srjs{
127896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
127996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_EdgeFlagv);
128096c5ddc4Srjs   struct marshal_cmd_EdgeFlagv *cmd;
128196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_EdgeFlagv, cmd_size);
128296c5ddc4Srjs   memcpy(cmd->flag, flag, 1 * sizeof(GLboolean));
128396c5ddc4Srjs}
128496c5ddc4Srjs
128596c5ddc4Srjs
128696c5ddc4Srjs/* End: marshalled asynchronously */
128796c5ddc4Srjsstruct marshal_cmd_End
128896c5ddc4Srjs{
128996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
129096c5ddc4Srjs};
129196c5ddc4Srjsuint32_t
129296c5ddc4Srjs_mesa_unmarshal_End(struct gl_context *ctx, const struct marshal_cmd_End *cmd, const uint64_t *last)
129396c5ddc4Srjs{
129496c5ddc4Srjs   CALL_End(ctx->CurrentServerDispatch, ());
129596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_End), 8) / 8);
129696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
129796c5ddc4Srjs   return cmd_size;
129896c5ddc4Srjs}
129996c5ddc4Srjsvoid GLAPIENTRY
130096c5ddc4Srjs_mesa_marshal_End(void)
130196c5ddc4Srjs{
130296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
130396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_End);
130496c5ddc4Srjs   struct marshal_cmd_End *cmd;
130596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_End, cmd_size);
130696c5ddc4Srjs   (void) cmd;
130796c5ddc4Srjs}
130896c5ddc4Srjs
130996c5ddc4Srjs
131096c5ddc4Srjs/* Indexd: marshalled asynchronously */
131196c5ddc4Srjsstruct marshal_cmd_Indexd
131296c5ddc4Srjs{
131396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
131496c5ddc4Srjs   GLdouble c;
131596c5ddc4Srjs};
131696c5ddc4Srjsuint32_t
131796c5ddc4Srjs_mesa_unmarshal_Indexd(struct gl_context *ctx, const struct marshal_cmd_Indexd *cmd, const uint64_t *last)
131896c5ddc4Srjs{
131996c5ddc4Srjs   GLdouble c = cmd->c;
132096c5ddc4Srjs   CALL_Indexd(ctx->CurrentServerDispatch, (c));
132196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Indexd), 8) / 8);
132296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
132396c5ddc4Srjs   return cmd_size;
132496c5ddc4Srjs}
132596c5ddc4Srjsvoid GLAPIENTRY
132696c5ddc4Srjs_mesa_marshal_Indexd(GLdouble c)
132796c5ddc4Srjs{
132896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
132996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Indexd);
133096c5ddc4Srjs   struct marshal_cmd_Indexd *cmd;
133196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Indexd, cmd_size);
133296c5ddc4Srjs   cmd->c = c;
133396c5ddc4Srjs}
133496c5ddc4Srjs
133596c5ddc4Srjs
133696c5ddc4Srjs/* Indexdv: marshalled asynchronously */
133796c5ddc4Srjsstruct marshal_cmd_Indexdv
133896c5ddc4Srjs{
133996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
134096c5ddc4Srjs   GLdouble c[1];
134196c5ddc4Srjs};
134296c5ddc4Srjsuint32_t
134396c5ddc4Srjs_mesa_unmarshal_Indexdv(struct gl_context *ctx, const struct marshal_cmd_Indexdv *cmd, const uint64_t *last)
134496c5ddc4Srjs{
134596c5ddc4Srjs   const GLdouble * c = cmd->c;
134696c5ddc4Srjs   CALL_Indexdv(ctx->CurrentServerDispatch, (c));
134796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Indexdv), 8) / 8);
134896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
134996c5ddc4Srjs   return cmd_size;
135096c5ddc4Srjs}
135196c5ddc4Srjsvoid GLAPIENTRY
135296c5ddc4Srjs_mesa_marshal_Indexdv(const GLdouble * c)
135396c5ddc4Srjs{
135496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
135596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Indexdv);
135696c5ddc4Srjs   struct marshal_cmd_Indexdv *cmd;
135796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Indexdv, cmd_size);
135896c5ddc4Srjs   memcpy(cmd->c, c, 1 * sizeof(GLdouble));
135996c5ddc4Srjs}
136096c5ddc4Srjs
136196c5ddc4Srjs
136296c5ddc4Srjs/* Indexf: marshalled asynchronously */
136396c5ddc4Srjsstruct marshal_cmd_Indexf
136496c5ddc4Srjs{
136596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
136696c5ddc4Srjs   GLfloat c;
136796c5ddc4Srjs};
136896c5ddc4Srjsuint32_t
136996c5ddc4Srjs_mesa_unmarshal_Indexf(struct gl_context *ctx, const struct marshal_cmd_Indexf *cmd, const uint64_t *last)
137096c5ddc4Srjs{
137196c5ddc4Srjs   GLfloat c = cmd->c;
137296c5ddc4Srjs   CALL_Indexf(ctx->CurrentServerDispatch, (c));
137396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Indexf), 8) / 8);
137496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
137596c5ddc4Srjs   return cmd_size;
137696c5ddc4Srjs}
137796c5ddc4Srjsvoid GLAPIENTRY
137896c5ddc4Srjs_mesa_marshal_Indexf(GLfloat c)
137996c5ddc4Srjs{
138096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
138196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Indexf);
138296c5ddc4Srjs   struct marshal_cmd_Indexf *cmd;
138396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Indexf, cmd_size);
138496c5ddc4Srjs   cmd->c = c;
138596c5ddc4Srjs}
138696c5ddc4Srjs
138796c5ddc4Srjs
138896c5ddc4Srjs/* Indexfv: marshalled asynchronously */
138996c5ddc4Srjsstruct marshal_cmd_Indexfv
139096c5ddc4Srjs{
139196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
139296c5ddc4Srjs   GLfloat c[1];
139396c5ddc4Srjs};
139496c5ddc4Srjsuint32_t
139596c5ddc4Srjs_mesa_unmarshal_Indexfv(struct gl_context *ctx, const struct marshal_cmd_Indexfv *cmd, const uint64_t *last)
139696c5ddc4Srjs{
139796c5ddc4Srjs   const GLfloat * c = cmd->c;
139896c5ddc4Srjs   CALL_Indexfv(ctx->CurrentServerDispatch, (c));
139996c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Indexfv), 8) / 8);
140096c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
140196c5ddc4Srjs   return cmd_size;
140296c5ddc4Srjs}
140396c5ddc4Srjsvoid GLAPIENTRY
140496c5ddc4Srjs_mesa_marshal_Indexfv(const GLfloat * c)
140596c5ddc4Srjs{
140696c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
140796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Indexfv);
140896c5ddc4Srjs   struct marshal_cmd_Indexfv *cmd;
140996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Indexfv, cmd_size);
141096c5ddc4Srjs   memcpy(cmd->c, c, 1 * sizeof(GLfloat));
141196c5ddc4Srjs}
141296c5ddc4Srjs
141396c5ddc4Srjs
141496c5ddc4Srjs/* Indexi: marshalled asynchronously */
141596c5ddc4Srjsstruct marshal_cmd_Indexi
141696c5ddc4Srjs{
141796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
141896c5ddc4Srjs   GLint c;
141996c5ddc4Srjs};
142096c5ddc4Srjsuint32_t
142196c5ddc4Srjs_mesa_unmarshal_Indexi(struct gl_context *ctx, const struct marshal_cmd_Indexi *cmd, const uint64_t *last)
142296c5ddc4Srjs{
142396c5ddc4Srjs   GLint c = cmd->c;
142496c5ddc4Srjs   CALL_Indexi(ctx->CurrentServerDispatch, (c));
142596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Indexi), 8) / 8);
142696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
142796c5ddc4Srjs   return cmd_size;
142896c5ddc4Srjs}
142996c5ddc4Srjsvoid GLAPIENTRY
143096c5ddc4Srjs_mesa_marshal_Indexi(GLint c)
143196c5ddc4Srjs{
143296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
143396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Indexi);
143496c5ddc4Srjs   struct marshal_cmd_Indexi *cmd;
143596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Indexi, cmd_size);
143696c5ddc4Srjs   cmd->c = c;
143796c5ddc4Srjs}
143896c5ddc4Srjs
143996c5ddc4Srjs
144096c5ddc4Srjs/* Indexiv: marshalled asynchronously */
144196c5ddc4Srjsstruct marshal_cmd_Indexiv
144296c5ddc4Srjs{
144396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
144496c5ddc4Srjs   GLint c[1];
144596c5ddc4Srjs};
144696c5ddc4Srjsuint32_t
144796c5ddc4Srjs_mesa_unmarshal_Indexiv(struct gl_context *ctx, const struct marshal_cmd_Indexiv *cmd, const uint64_t *last)
144896c5ddc4Srjs{
144996c5ddc4Srjs   const GLint * c = cmd->c;
145096c5ddc4Srjs   CALL_Indexiv(ctx->CurrentServerDispatch, (c));
145196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Indexiv), 8) / 8);
145296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
145396c5ddc4Srjs   return cmd_size;
145496c5ddc4Srjs}
145596c5ddc4Srjsvoid GLAPIENTRY
145696c5ddc4Srjs_mesa_marshal_Indexiv(const GLint * c)
145796c5ddc4Srjs{
145896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
145996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Indexiv);
146096c5ddc4Srjs   struct marshal_cmd_Indexiv *cmd;
146196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Indexiv, cmd_size);
146296c5ddc4Srjs   memcpy(cmd->c, c, 1 * sizeof(GLint));
146396c5ddc4Srjs}
146496c5ddc4Srjs
146596c5ddc4Srjs
146696c5ddc4Srjs/* Indexs: marshalled asynchronously */
146796c5ddc4Srjsstruct marshal_cmd_Indexs
146896c5ddc4Srjs{
146996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
147096c5ddc4Srjs   GLshort c;
147196c5ddc4Srjs};
147296c5ddc4Srjsuint32_t
147396c5ddc4Srjs_mesa_unmarshal_Indexs(struct gl_context *ctx, const struct marshal_cmd_Indexs *cmd, const uint64_t *last)
147496c5ddc4Srjs{
147596c5ddc4Srjs   GLshort c = cmd->c;
147696c5ddc4Srjs   CALL_Indexs(ctx->CurrentServerDispatch, (c));
147796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Indexs), 8) / 8);
147896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
147996c5ddc4Srjs   return cmd_size;
148096c5ddc4Srjs}
148196c5ddc4Srjsvoid GLAPIENTRY
148296c5ddc4Srjs_mesa_marshal_Indexs(GLshort c)
148396c5ddc4Srjs{
148496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
148596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Indexs);
148696c5ddc4Srjs   struct marshal_cmd_Indexs *cmd;
148796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Indexs, cmd_size);
148896c5ddc4Srjs   cmd->c = c;
148996c5ddc4Srjs}
149096c5ddc4Srjs
149196c5ddc4Srjs
149296c5ddc4Srjs/* Indexsv: marshalled asynchronously */
149396c5ddc4Srjsstruct marshal_cmd_Indexsv
149496c5ddc4Srjs{
149596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
149696c5ddc4Srjs   GLshort c[1];
149796c5ddc4Srjs};
149896c5ddc4Srjsuint32_t
149996c5ddc4Srjs_mesa_unmarshal_Indexsv(struct gl_context *ctx, const struct marshal_cmd_Indexsv *cmd, const uint64_t *last)
150096c5ddc4Srjs{
150196c5ddc4Srjs   const GLshort * c = cmd->c;
150296c5ddc4Srjs   CALL_Indexsv(ctx->CurrentServerDispatch, (c));
150396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Indexsv), 8) / 8);
150496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
150596c5ddc4Srjs   return cmd_size;
150696c5ddc4Srjs}
150796c5ddc4Srjsvoid GLAPIENTRY
150896c5ddc4Srjs_mesa_marshal_Indexsv(const GLshort * c)
150996c5ddc4Srjs{
151096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
151196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Indexsv);
151296c5ddc4Srjs   struct marshal_cmd_Indexsv *cmd;
151396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Indexsv, cmd_size);
151496c5ddc4Srjs   memcpy(cmd->c, c, 1 * sizeof(GLshort));
151596c5ddc4Srjs}
151696c5ddc4Srjs
151796c5ddc4Srjs
151896c5ddc4Srjs/* Normal3b: marshalled asynchronously */
151996c5ddc4Srjsstruct marshal_cmd_Normal3b
152096c5ddc4Srjs{
152196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
152296c5ddc4Srjs   GLbyte nx;
152396c5ddc4Srjs   GLbyte ny;
152496c5ddc4Srjs   GLbyte nz;
152596c5ddc4Srjs};
152696c5ddc4Srjsuint32_t
152796c5ddc4Srjs_mesa_unmarshal_Normal3b(struct gl_context *ctx, const struct marshal_cmd_Normal3b *cmd, const uint64_t *last)
152896c5ddc4Srjs{
152996c5ddc4Srjs   GLbyte nx = cmd->nx;
153096c5ddc4Srjs   GLbyte ny = cmd->ny;
153196c5ddc4Srjs   GLbyte nz = cmd->nz;
153296c5ddc4Srjs   CALL_Normal3b(ctx->CurrentServerDispatch, (nx, ny, nz));
153396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Normal3b), 8) / 8);
153496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
153596c5ddc4Srjs   return cmd_size;
153696c5ddc4Srjs}
153796c5ddc4Srjsvoid GLAPIENTRY
153896c5ddc4Srjs_mesa_marshal_Normal3b(GLbyte nx, GLbyte ny, GLbyte nz)
153996c5ddc4Srjs{
154096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
154196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Normal3b);
154296c5ddc4Srjs   struct marshal_cmd_Normal3b *cmd;
154396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Normal3b, cmd_size);
154496c5ddc4Srjs   cmd->nx = nx;
154596c5ddc4Srjs   cmd->ny = ny;
154696c5ddc4Srjs   cmd->nz = nz;
154796c5ddc4Srjs}
154896c5ddc4Srjs
154996c5ddc4Srjs
155096c5ddc4Srjs/* Normal3bv: marshalled asynchronously */
155196c5ddc4Srjsstruct marshal_cmd_Normal3bv
155296c5ddc4Srjs{
155396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
155496c5ddc4Srjs   GLbyte v[3];
155596c5ddc4Srjs};
155696c5ddc4Srjsuint32_t
155796c5ddc4Srjs_mesa_unmarshal_Normal3bv(struct gl_context *ctx, const struct marshal_cmd_Normal3bv *cmd, const uint64_t *last)
155896c5ddc4Srjs{
155996c5ddc4Srjs   const GLbyte * v = cmd->v;
156096c5ddc4Srjs   CALL_Normal3bv(ctx->CurrentServerDispatch, (v));
156196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Normal3bv), 8) / 8);
156296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
156396c5ddc4Srjs   return cmd_size;
156496c5ddc4Srjs}
156596c5ddc4Srjsvoid GLAPIENTRY
156696c5ddc4Srjs_mesa_marshal_Normal3bv(const GLbyte * v)
156796c5ddc4Srjs{
156896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
156996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Normal3bv);
157096c5ddc4Srjs   struct marshal_cmd_Normal3bv *cmd;
157196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Normal3bv, cmd_size);
157296c5ddc4Srjs   memcpy(cmd->v, v, 3 * sizeof(GLbyte));
157396c5ddc4Srjs}
157496c5ddc4Srjs
157596c5ddc4Srjs
157696c5ddc4Srjs/* Normal3d: marshalled asynchronously */
157796c5ddc4Srjsstruct marshal_cmd_Normal3d
157896c5ddc4Srjs{
157996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
158096c5ddc4Srjs   GLdouble nx;
158196c5ddc4Srjs   GLdouble ny;
158296c5ddc4Srjs   GLdouble nz;
158396c5ddc4Srjs};
158496c5ddc4Srjsuint32_t
158596c5ddc4Srjs_mesa_unmarshal_Normal3d(struct gl_context *ctx, const struct marshal_cmd_Normal3d *cmd, const uint64_t *last)
158696c5ddc4Srjs{
158796c5ddc4Srjs   GLdouble nx = cmd->nx;
158896c5ddc4Srjs   GLdouble ny = cmd->ny;
158996c5ddc4Srjs   GLdouble nz = cmd->nz;
159096c5ddc4Srjs   CALL_Normal3d(ctx->CurrentServerDispatch, (nx, ny, nz));
159196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Normal3d), 8) / 8);
159296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
159396c5ddc4Srjs   return cmd_size;
159496c5ddc4Srjs}
159596c5ddc4Srjsvoid GLAPIENTRY
159696c5ddc4Srjs_mesa_marshal_Normal3d(GLdouble nx, GLdouble ny, GLdouble nz)
159796c5ddc4Srjs{
159896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
159996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Normal3d);
160096c5ddc4Srjs   struct marshal_cmd_Normal3d *cmd;
160196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Normal3d, cmd_size);
160296c5ddc4Srjs   cmd->nx = nx;
160396c5ddc4Srjs   cmd->ny = ny;
160496c5ddc4Srjs   cmd->nz = nz;
160596c5ddc4Srjs}
160696c5ddc4Srjs
160796c5ddc4Srjs
160896c5ddc4Srjs/* Normal3dv: marshalled asynchronously */
160996c5ddc4Srjsstruct marshal_cmd_Normal3dv
161096c5ddc4Srjs{
161196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
161296c5ddc4Srjs   GLdouble v[3];
161396c5ddc4Srjs};
161496c5ddc4Srjsuint32_t
161596c5ddc4Srjs_mesa_unmarshal_Normal3dv(struct gl_context *ctx, const struct marshal_cmd_Normal3dv *cmd, const uint64_t *last)
161696c5ddc4Srjs{
161796c5ddc4Srjs   const GLdouble * v = cmd->v;
161896c5ddc4Srjs   CALL_Normal3dv(ctx->CurrentServerDispatch, (v));
161996c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Normal3dv), 8) / 8);
162096c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
162196c5ddc4Srjs   return cmd_size;
162296c5ddc4Srjs}
162396c5ddc4Srjsvoid GLAPIENTRY
162496c5ddc4Srjs_mesa_marshal_Normal3dv(const GLdouble * v)
162596c5ddc4Srjs{
162696c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
162796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Normal3dv);
162896c5ddc4Srjs   struct marshal_cmd_Normal3dv *cmd;
162996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Normal3dv, cmd_size);
163096c5ddc4Srjs   memcpy(cmd->v, v, 3 * sizeof(GLdouble));
163196c5ddc4Srjs}
163296c5ddc4Srjs
163396c5ddc4Srjs
163496c5ddc4Srjs/* Normal3f: marshalled asynchronously */
163596c5ddc4Srjsstruct marshal_cmd_Normal3f
163696c5ddc4Srjs{
163796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
163896c5ddc4Srjs   GLfloat nx;
163996c5ddc4Srjs   GLfloat ny;
164096c5ddc4Srjs   GLfloat nz;
164196c5ddc4Srjs};
164296c5ddc4Srjsuint32_t
164396c5ddc4Srjs_mesa_unmarshal_Normal3f(struct gl_context *ctx, const struct marshal_cmd_Normal3f *cmd, const uint64_t *last)
164496c5ddc4Srjs{
164596c5ddc4Srjs   GLfloat nx = cmd->nx;
164696c5ddc4Srjs   GLfloat ny = cmd->ny;
164796c5ddc4Srjs   GLfloat nz = cmd->nz;
164896c5ddc4Srjs   CALL_Normal3f(ctx->CurrentServerDispatch, (nx, ny, nz));
164996c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Normal3f), 8) / 8);
165096c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
165196c5ddc4Srjs   return cmd_size;
165296c5ddc4Srjs}
165396c5ddc4Srjsvoid GLAPIENTRY
165496c5ddc4Srjs_mesa_marshal_Normal3f(GLfloat nx, GLfloat ny, GLfloat nz)
165596c5ddc4Srjs{
165696c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
165796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Normal3f);
165896c5ddc4Srjs   struct marshal_cmd_Normal3f *cmd;
165996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Normal3f, cmd_size);
166096c5ddc4Srjs   cmd->nx = nx;
166196c5ddc4Srjs   cmd->ny = ny;
166296c5ddc4Srjs   cmd->nz = nz;
166396c5ddc4Srjs}
166496c5ddc4Srjs
166596c5ddc4Srjs
166696c5ddc4Srjs/* Normal3fv: marshalled asynchronously */
166796c5ddc4Srjsstruct marshal_cmd_Normal3fv
166896c5ddc4Srjs{
166996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
167096c5ddc4Srjs   GLfloat v[3];
167196c5ddc4Srjs};
167296c5ddc4Srjsuint32_t
167396c5ddc4Srjs_mesa_unmarshal_Normal3fv(struct gl_context *ctx, const struct marshal_cmd_Normal3fv *cmd, const uint64_t *last)
167496c5ddc4Srjs{
167596c5ddc4Srjs   const GLfloat * v = cmd->v;
167696c5ddc4Srjs   CALL_Normal3fv(ctx->CurrentServerDispatch, (v));
167796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Normal3fv), 8) / 8);
167896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
167996c5ddc4Srjs   return cmd_size;
168096c5ddc4Srjs}
168196c5ddc4Srjsvoid GLAPIENTRY
168296c5ddc4Srjs_mesa_marshal_Normal3fv(const GLfloat * v)
168396c5ddc4Srjs{
168496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
168596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Normal3fv);
168696c5ddc4Srjs   struct marshal_cmd_Normal3fv *cmd;
168796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Normal3fv, cmd_size);
168896c5ddc4Srjs   memcpy(cmd->v, v, 3 * sizeof(GLfloat));
168996c5ddc4Srjs}
169096c5ddc4Srjs
169196c5ddc4Srjs
169296c5ddc4Srjs/* Normal3i: marshalled asynchronously */
169396c5ddc4Srjsstruct marshal_cmd_Normal3i
169496c5ddc4Srjs{
169596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
169696c5ddc4Srjs   GLint nx;
169796c5ddc4Srjs   GLint ny;
169896c5ddc4Srjs   GLint nz;
169996c5ddc4Srjs};
170096c5ddc4Srjsuint32_t
170196c5ddc4Srjs_mesa_unmarshal_Normal3i(struct gl_context *ctx, const struct marshal_cmd_Normal3i *cmd, const uint64_t *last)
170296c5ddc4Srjs{
170396c5ddc4Srjs   GLint nx = cmd->nx;
170496c5ddc4Srjs   GLint ny = cmd->ny;
170596c5ddc4Srjs   GLint nz = cmd->nz;
170696c5ddc4Srjs   CALL_Normal3i(ctx->CurrentServerDispatch, (nx, ny, nz));
170796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Normal3i), 8) / 8);
170896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
170996c5ddc4Srjs   return cmd_size;
171096c5ddc4Srjs}
171196c5ddc4Srjsvoid GLAPIENTRY
171296c5ddc4Srjs_mesa_marshal_Normal3i(GLint nx, GLint ny, GLint nz)
171396c5ddc4Srjs{
171496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
171596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Normal3i);
171696c5ddc4Srjs   struct marshal_cmd_Normal3i *cmd;
171796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Normal3i, cmd_size);
171896c5ddc4Srjs   cmd->nx = nx;
171996c5ddc4Srjs   cmd->ny = ny;
172096c5ddc4Srjs   cmd->nz = nz;
172196c5ddc4Srjs}
172296c5ddc4Srjs
172396c5ddc4Srjs
172496c5ddc4Srjs/* Normal3iv: marshalled asynchronously */
172596c5ddc4Srjsstruct marshal_cmd_Normal3iv
172696c5ddc4Srjs{
172796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
172896c5ddc4Srjs   GLint v[3];
172996c5ddc4Srjs};
173096c5ddc4Srjsuint32_t
173196c5ddc4Srjs_mesa_unmarshal_Normal3iv(struct gl_context *ctx, const struct marshal_cmd_Normal3iv *cmd, const uint64_t *last)
173296c5ddc4Srjs{
173396c5ddc4Srjs   const GLint * v = cmd->v;
173496c5ddc4Srjs   CALL_Normal3iv(ctx->CurrentServerDispatch, (v));
173596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Normal3iv), 8) / 8);
173696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
173796c5ddc4Srjs   return cmd_size;
173896c5ddc4Srjs}
173996c5ddc4Srjsvoid GLAPIENTRY
174096c5ddc4Srjs_mesa_marshal_Normal3iv(const GLint * v)
174196c5ddc4Srjs{
174296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
174396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Normal3iv);
174496c5ddc4Srjs   struct marshal_cmd_Normal3iv *cmd;
174596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Normal3iv, cmd_size);
174696c5ddc4Srjs   memcpy(cmd->v, v, 3 * sizeof(GLint));
174796c5ddc4Srjs}
174896c5ddc4Srjs
174996c5ddc4Srjs
175096c5ddc4Srjs/* Normal3s: marshalled asynchronously */
175196c5ddc4Srjsstruct marshal_cmd_Normal3s
175296c5ddc4Srjs{
175396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
175496c5ddc4Srjs   GLshort nx;
175596c5ddc4Srjs   GLshort ny;
175696c5ddc4Srjs   GLshort nz;
175796c5ddc4Srjs};
175896c5ddc4Srjsuint32_t
175996c5ddc4Srjs_mesa_unmarshal_Normal3s(struct gl_context *ctx, const struct marshal_cmd_Normal3s *cmd, const uint64_t *last)
176096c5ddc4Srjs{
176196c5ddc4Srjs   GLshort nx = cmd->nx;
176296c5ddc4Srjs   GLshort ny = cmd->ny;
176396c5ddc4Srjs   GLshort nz = cmd->nz;
176496c5ddc4Srjs   CALL_Normal3s(ctx->CurrentServerDispatch, (nx, ny, nz));
176596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Normal3s), 8) / 8);
176696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
176796c5ddc4Srjs   return cmd_size;
176896c5ddc4Srjs}
176996c5ddc4Srjsvoid GLAPIENTRY
177096c5ddc4Srjs_mesa_marshal_Normal3s(GLshort nx, GLshort ny, GLshort nz)
177196c5ddc4Srjs{
177296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
177396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Normal3s);
177496c5ddc4Srjs   struct marshal_cmd_Normal3s *cmd;
177596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Normal3s, cmd_size);
177696c5ddc4Srjs   cmd->nx = nx;
177796c5ddc4Srjs   cmd->ny = ny;
177896c5ddc4Srjs   cmd->nz = nz;
177996c5ddc4Srjs}
178096c5ddc4Srjs
178196c5ddc4Srjs
178296c5ddc4Srjs/* Normal3sv: marshalled asynchronously */
178396c5ddc4Srjsstruct marshal_cmd_Normal3sv
178496c5ddc4Srjs{
178596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
178696c5ddc4Srjs   GLshort v[3];
178796c5ddc4Srjs};
178896c5ddc4Srjsuint32_t
178996c5ddc4Srjs_mesa_unmarshal_Normal3sv(struct gl_context *ctx, const struct marshal_cmd_Normal3sv *cmd, const uint64_t *last)
179096c5ddc4Srjs{
179196c5ddc4Srjs   const GLshort * v = cmd->v;
179296c5ddc4Srjs   CALL_Normal3sv(ctx->CurrentServerDispatch, (v));
179396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Normal3sv), 8) / 8);
179496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
179596c5ddc4Srjs   return cmd_size;
179696c5ddc4Srjs}
179796c5ddc4Srjsvoid GLAPIENTRY
179896c5ddc4Srjs_mesa_marshal_Normal3sv(const GLshort * v)
179996c5ddc4Srjs{
180096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
180196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Normal3sv);
180296c5ddc4Srjs   struct marshal_cmd_Normal3sv *cmd;
180396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Normal3sv, cmd_size);
180496c5ddc4Srjs   memcpy(cmd->v, v, 3 * sizeof(GLshort));
180596c5ddc4Srjs}
180696c5ddc4Srjs
180796c5ddc4Srjs
180896c5ddc4Srjs/* RasterPos2d: marshalled asynchronously */
180996c5ddc4Srjsstruct marshal_cmd_RasterPos2d
181096c5ddc4Srjs{
181196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
181296c5ddc4Srjs   GLdouble x;
181396c5ddc4Srjs   GLdouble y;
181496c5ddc4Srjs};
181596c5ddc4Srjsuint32_t
181696c5ddc4Srjs_mesa_unmarshal_RasterPos2d(struct gl_context *ctx, const struct marshal_cmd_RasterPos2d *cmd, const uint64_t *last)
181796c5ddc4Srjs{
181896c5ddc4Srjs   GLdouble x = cmd->x;
181996c5ddc4Srjs   GLdouble y = cmd->y;
182096c5ddc4Srjs   CALL_RasterPos2d(ctx->CurrentServerDispatch, (x, y));
182196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_RasterPos2d), 8) / 8);
182296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
182396c5ddc4Srjs   return cmd_size;
182496c5ddc4Srjs}
182596c5ddc4Srjsvoid GLAPIENTRY
182696c5ddc4Srjs_mesa_marshal_RasterPos2d(GLdouble x, GLdouble y)
182796c5ddc4Srjs{
182896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
182996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_RasterPos2d);
183096c5ddc4Srjs   struct marshal_cmd_RasterPos2d *cmd;
183196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_RasterPos2d, cmd_size);
183296c5ddc4Srjs   cmd->x = x;
183396c5ddc4Srjs   cmd->y = y;
183496c5ddc4Srjs}
183596c5ddc4Srjs
183696c5ddc4Srjs
183796c5ddc4Srjs/* RasterPos2dv: marshalled asynchronously */
183896c5ddc4Srjsstruct marshal_cmd_RasterPos2dv
183996c5ddc4Srjs{
184096c5ddc4Srjs   struct marshal_cmd_base cmd_base;
184196c5ddc4Srjs   GLdouble v[2];
184296c5ddc4Srjs};
184396c5ddc4Srjsuint32_t
184496c5ddc4Srjs_mesa_unmarshal_RasterPos2dv(struct gl_context *ctx, const struct marshal_cmd_RasterPos2dv *cmd, const uint64_t *last)
184596c5ddc4Srjs{
184696c5ddc4Srjs   const GLdouble * v = cmd->v;
184796c5ddc4Srjs   CALL_RasterPos2dv(ctx->CurrentServerDispatch, (v));
184896c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_RasterPos2dv), 8) / 8);
184996c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
185096c5ddc4Srjs   return cmd_size;
185196c5ddc4Srjs}
185296c5ddc4Srjsvoid GLAPIENTRY
185396c5ddc4Srjs_mesa_marshal_RasterPos2dv(const GLdouble * v)
185496c5ddc4Srjs{
185596c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
185696c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_RasterPos2dv);
185796c5ddc4Srjs   struct marshal_cmd_RasterPos2dv *cmd;
185896c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_RasterPos2dv, cmd_size);
185996c5ddc4Srjs   memcpy(cmd->v, v, 2 * sizeof(GLdouble));
186096c5ddc4Srjs}
186196c5ddc4Srjs
186296c5ddc4Srjs
186396c5ddc4Srjs/* RasterPos2f: marshalled asynchronously */
186496c5ddc4Srjsstruct marshal_cmd_RasterPos2f
186596c5ddc4Srjs{
186696c5ddc4Srjs   struct marshal_cmd_base cmd_base;
186796c5ddc4Srjs   GLfloat x;
186896c5ddc4Srjs   GLfloat y;
186996c5ddc4Srjs};
187096c5ddc4Srjsuint32_t
187196c5ddc4Srjs_mesa_unmarshal_RasterPos2f(struct gl_context *ctx, const struct marshal_cmd_RasterPos2f *cmd, const uint64_t *last)
187296c5ddc4Srjs{
187396c5ddc4Srjs   GLfloat x = cmd->x;
187496c5ddc4Srjs   GLfloat y = cmd->y;
187596c5ddc4Srjs   CALL_RasterPos2f(ctx->CurrentServerDispatch, (x, y));
187696c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_RasterPos2f), 8) / 8);
187796c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
187896c5ddc4Srjs   return cmd_size;
187996c5ddc4Srjs}
188096c5ddc4Srjsvoid GLAPIENTRY
188196c5ddc4Srjs_mesa_marshal_RasterPos2f(GLfloat x, GLfloat y)
188296c5ddc4Srjs{
188396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
188496c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_RasterPos2f);
188596c5ddc4Srjs   struct marshal_cmd_RasterPos2f *cmd;
188696c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_RasterPos2f, cmd_size);
188796c5ddc4Srjs   cmd->x = x;
188896c5ddc4Srjs   cmd->y = y;
188996c5ddc4Srjs}
189096c5ddc4Srjs
189196c5ddc4Srjs
189296c5ddc4Srjs/* RasterPos2fv: marshalled asynchronously */
189396c5ddc4Srjsstruct marshal_cmd_RasterPos2fv
189496c5ddc4Srjs{
189596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
189696c5ddc4Srjs   GLfloat v[2];
189796c5ddc4Srjs};
189896c5ddc4Srjsuint32_t
189996c5ddc4Srjs_mesa_unmarshal_RasterPos2fv(struct gl_context *ctx, const struct marshal_cmd_RasterPos2fv *cmd, const uint64_t *last)
190096c5ddc4Srjs{
190196c5ddc4Srjs   const GLfloat * v = cmd->v;
190296c5ddc4Srjs   CALL_RasterPos2fv(ctx->CurrentServerDispatch, (v));
190396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_RasterPos2fv), 8) / 8);
190496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
190596c5ddc4Srjs   return cmd_size;
190696c5ddc4Srjs}
190796c5ddc4Srjsvoid GLAPIENTRY
190896c5ddc4Srjs_mesa_marshal_RasterPos2fv(const GLfloat * v)
190996c5ddc4Srjs{
191096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
191196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_RasterPos2fv);
191296c5ddc4Srjs   struct marshal_cmd_RasterPos2fv *cmd;
191396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_RasterPos2fv, cmd_size);
191496c5ddc4Srjs   memcpy(cmd->v, v, 2 * sizeof(GLfloat));
191596c5ddc4Srjs}
191696c5ddc4Srjs
191796c5ddc4Srjs
191896c5ddc4Srjs/* RasterPos2i: marshalled asynchronously */
191996c5ddc4Srjsstruct marshal_cmd_RasterPos2i
192096c5ddc4Srjs{
192196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
192296c5ddc4Srjs   GLint x;
192396c5ddc4Srjs   GLint y;
192496c5ddc4Srjs};
192596c5ddc4Srjsuint32_t
192696c5ddc4Srjs_mesa_unmarshal_RasterPos2i(struct gl_context *ctx, const struct marshal_cmd_RasterPos2i *cmd, const uint64_t *last)
192796c5ddc4Srjs{
192896c5ddc4Srjs   GLint x = cmd->x;
192996c5ddc4Srjs   GLint y = cmd->y;
193096c5ddc4Srjs   CALL_RasterPos2i(ctx->CurrentServerDispatch, (x, y));
193196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_RasterPos2i), 8) / 8);
193296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
193396c5ddc4Srjs   return cmd_size;
193496c5ddc4Srjs}
193596c5ddc4Srjsvoid GLAPIENTRY
193696c5ddc4Srjs_mesa_marshal_RasterPos2i(GLint x, GLint y)
193796c5ddc4Srjs{
193896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
193996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_RasterPos2i);
194096c5ddc4Srjs   struct marshal_cmd_RasterPos2i *cmd;
194196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_RasterPos2i, cmd_size);
194296c5ddc4Srjs   cmd->x = x;
194396c5ddc4Srjs   cmd->y = y;
194496c5ddc4Srjs}
194596c5ddc4Srjs
194696c5ddc4Srjs
194796c5ddc4Srjs/* RasterPos2iv: marshalled asynchronously */
194896c5ddc4Srjsstruct marshal_cmd_RasterPos2iv
194996c5ddc4Srjs{
195096c5ddc4Srjs   struct marshal_cmd_base cmd_base;
195196c5ddc4Srjs   GLint v[2];
195296c5ddc4Srjs};
195396c5ddc4Srjsuint32_t
195496c5ddc4Srjs_mesa_unmarshal_RasterPos2iv(struct gl_context *ctx, const struct marshal_cmd_RasterPos2iv *cmd, const uint64_t *last)
195596c5ddc4Srjs{
195696c5ddc4Srjs   const GLint * v = cmd->v;
195796c5ddc4Srjs   CALL_RasterPos2iv(ctx->CurrentServerDispatch, (v));
195896c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_RasterPos2iv), 8) / 8);
195996c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
196096c5ddc4Srjs   return cmd_size;
196196c5ddc4Srjs}
196296c5ddc4Srjsvoid GLAPIENTRY
196396c5ddc4Srjs_mesa_marshal_RasterPos2iv(const GLint * v)
196496c5ddc4Srjs{
196596c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
196696c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_RasterPos2iv);
196796c5ddc4Srjs   struct marshal_cmd_RasterPos2iv *cmd;
196896c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_RasterPos2iv, cmd_size);
196996c5ddc4Srjs   memcpy(cmd->v, v, 2 * sizeof(GLint));
197096c5ddc4Srjs}
197196c5ddc4Srjs
197296c5ddc4Srjs
197396c5ddc4Srjs/* RasterPos2s: marshalled asynchronously */
197496c5ddc4Srjsstruct marshal_cmd_RasterPos2s
197596c5ddc4Srjs{
197696c5ddc4Srjs   struct marshal_cmd_base cmd_base;
197796c5ddc4Srjs   GLshort x;
197896c5ddc4Srjs   GLshort y;
197996c5ddc4Srjs};
198096c5ddc4Srjsuint32_t
198196c5ddc4Srjs_mesa_unmarshal_RasterPos2s(struct gl_context *ctx, const struct marshal_cmd_RasterPos2s *cmd, const uint64_t *last)
198296c5ddc4Srjs{
198396c5ddc4Srjs   GLshort x = cmd->x;
198496c5ddc4Srjs   GLshort y = cmd->y;
198596c5ddc4Srjs   CALL_RasterPos2s(ctx->CurrentServerDispatch, (x, y));
198696c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_RasterPos2s), 8) / 8);
198796c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
198896c5ddc4Srjs   return cmd_size;
198996c5ddc4Srjs}
199096c5ddc4Srjsvoid GLAPIENTRY
199196c5ddc4Srjs_mesa_marshal_RasterPos2s(GLshort x, GLshort y)
199296c5ddc4Srjs{
199396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
199496c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_RasterPos2s);
199596c5ddc4Srjs   struct marshal_cmd_RasterPos2s *cmd;
199696c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_RasterPos2s, cmd_size);
199796c5ddc4Srjs   cmd->x = x;
199896c5ddc4Srjs   cmd->y = y;
199996c5ddc4Srjs}
200096c5ddc4Srjs
200196c5ddc4Srjs
200296c5ddc4Srjs/* RasterPos2sv: marshalled asynchronously */
200396c5ddc4Srjsstruct marshal_cmd_RasterPos2sv
200496c5ddc4Srjs{
200596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
200696c5ddc4Srjs   GLshort v[2];
200796c5ddc4Srjs};
200896c5ddc4Srjsuint32_t
200996c5ddc4Srjs_mesa_unmarshal_RasterPos2sv(struct gl_context *ctx, const struct marshal_cmd_RasterPos2sv *cmd, const uint64_t *last)
201096c5ddc4Srjs{
201196c5ddc4Srjs   const GLshort * v = cmd->v;
201296c5ddc4Srjs   CALL_RasterPos2sv(ctx->CurrentServerDispatch, (v));
201396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_RasterPos2sv), 8) / 8);
201496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
201596c5ddc4Srjs   return cmd_size;
201696c5ddc4Srjs}
201796c5ddc4Srjsvoid GLAPIENTRY
201896c5ddc4Srjs_mesa_marshal_RasterPos2sv(const GLshort * v)
201996c5ddc4Srjs{
202096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
202196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_RasterPos2sv);
202296c5ddc4Srjs   struct marshal_cmd_RasterPos2sv *cmd;
202396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_RasterPos2sv, cmd_size);
202496c5ddc4Srjs   memcpy(cmd->v, v, 2 * sizeof(GLshort));
202596c5ddc4Srjs}
202696c5ddc4Srjs
202796c5ddc4Srjs
202896c5ddc4Srjs/* RasterPos3d: marshalled asynchronously */
202996c5ddc4Srjsstruct marshal_cmd_RasterPos3d
203096c5ddc4Srjs{
203196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
203296c5ddc4Srjs   GLdouble x;
203396c5ddc4Srjs   GLdouble y;
203496c5ddc4Srjs   GLdouble z;
203596c5ddc4Srjs};
203696c5ddc4Srjsuint32_t
203796c5ddc4Srjs_mesa_unmarshal_RasterPos3d(struct gl_context *ctx, const struct marshal_cmd_RasterPos3d *cmd, const uint64_t *last)
203896c5ddc4Srjs{
203996c5ddc4Srjs   GLdouble x = cmd->x;
204096c5ddc4Srjs   GLdouble y = cmd->y;
204196c5ddc4Srjs   GLdouble z = cmd->z;
204296c5ddc4Srjs   CALL_RasterPos3d(ctx->CurrentServerDispatch, (x, y, z));
204396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_RasterPos3d), 8) / 8);
204496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
204596c5ddc4Srjs   return cmd_size;
204696c5ddc4Srjs}
204796c5ddc4Srjsvoid GLAPIENTRY
204896c5ddc4Srjs_mesa_marshal_RasterPos3d(GLdouble x, GLdouble y, GLdouble z)
204996c5ddc4Srjs{
205096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
205196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_RasterPos3d);
205296c5ddc4Srjs   struct marshal_cmd_RasterPos3d *cmd;
205396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_RasterPos3d, cmd_size);
205496c5ddc4Srjs   cmd->x = x;
205596c5ddc4Srjs   cmd->y = y;
205696c5ddc4Srjs   cmd->z = z;
205796c5ddc4Srjs}
205896c5ddc4Srjs
205996c5ddc4Srjs
206096c5ddc4Srjs/* RasterPos3dv: marshalled asynchronously */
206196c5ddc4Srjsstruct marshal_cmd_RasterPos3dv
206296c5ddc4Srjs{
206396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
206496c5ddc4Srjs   GLdouble v[3];
206596c5ddc4Srjs};
206696c5ddc4Srjsuint32_t
206796c5ddc4Srjs_mesa_unmarshal_RasterPos3dv(struct gl_context *ctx, const struct marshal_cmd_RasterPos3dv *cmd, const uint64_t *last)
206896c5ddc4Srjs{
206996c5ddc4Srjs   const GLdouble * v = cmd->v;
207096c5ddc4Srjs   CALL_RasterPos3dv(ctx->CurrentServerDispatch, (v));
207196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_RasterPos3dv), 8) / 8);
207296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
207396c5ddc4Srjs   return cmd_size;
207496c5ddc4Srjs}
207596c5ddc4Srjsvoid GLAPIENTRY
207696c5ddc4Srjs_mesa_marshal_RasterPos3dv(const GLdouble * v)
207796c5ddc4Srjs{
207896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
207996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_RasterPos3dv);
208096c5ddc4Srjs   struct marshal_cmd_RasterPos3dv *cmd;
208196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_RasterPos3dv, cmd_size);
208296c5ddc4Srjs   memcpy(cmd->v, v, 3 * sizeof(GLdouble));
208396c5ddc4Srjs}
208496c5ddc4Srjs
208596c5ddc4Srjs
208696c5ddc4Srjs/* RasterPos3f: marshalled asynchronously */
208796c5ddc4Srjsstruct marshal_cmd_RasterPos3f
208896c5ddc4Srjs{
208996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
209096c5ddc4Srjs   GLfloat x;
209196c5ddc4Srjs   GLfloat y;
209296c5ddc4Srjs   GLfloat z;
209396c5ddc4Srjs};
209496c5ddc4Srjsuint32_t
209596c5ddc4Srjs_mesa_unmarshal_RasterPos3f(struct gl_context *ctx, const struct marshal_cmd_RasterPos3f *cmd, const uint64_t *last)
209696c5ddc4Srjs{
209796c5ddc4Srjs   GLfloat x = cmd->x;
209896c5ddc4Srjs   GLfloat y = cmd->y;
209996c5ddc4Srjs   GLfloat z = cmd->z;
210096c5ddc4Srjs   CALL_RasterPos3f(ctx->CurrentServerDispatch, (x, y, z));
210196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_RasterPos3f), 8) / 8);
210296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
210396c5ddc4Srjs   return cmd_size;
210496c5ddc4Srjs}
210596c5ddc4Srjsvoid GLAPIENTRY
210696c5ddc4Srjs_mesa_marshal_RasterPos3f(GLfloat x, GLfloat y, GLfloat z)
210796c5ddc4Srjs{
210896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
210996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_RasterPos3f);
211096c5ddc4Srjs   struct marshal_cmd_RasterPos3f *cmd;
211196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_RasterPos3f, cmd_size);
211296c5ddc4Srjs   cmd->x = x;
211396c5ddc4Srjs   cmd->y = y;
211496c5ddc4Srjs   cmd->z = z;
211596c5ddc4Srjs}
211696c5ddc4Srjs
211796c5ddc4Srjs
211896c5ddc4Srjs/* RasterPos3fv: marshalled asynchronously */
211996c5ddc4Srjsstruct marshal_cmd_RasterPos3fv
212096c5ddc4Srjs{
212196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
212296c5ddc4Srjs   GLfloat v[3];
212396c5ddc4Srjs};
212496c5ddc4Srjsuint32_t
212596c5ddc4Srjs_mesa_unmarshal_RasterPos3fv(struct gl_context *ctx, const struct marshal_cmd_RasterPos3fv *cmd, const uint64_t *last)
212696c5ddc4Srjs{
212796c5ddc4Srjs   const GLfloat * v = cmd->v;
212896c5ddc4Srjs   CALL_RasterPos3fv(ctx->CurrentServerDispatch, (v));
212996c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_RasterPos3fv), 8) / 8);
213096c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
213196c5ddc4Srjs   return cmd_size;
213296c5ddc4Srjs}
213396c5ddc4Srjsvoid GLAPIENTRY
213496c5ddc4Srjs_mesa_marshal_RasterPos3fv(const GLfloat * v)
213596c5ddc4Srjs{
213696c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
213796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_RasterPos3fv);
213896c5ddc4Srjs   struct marshal_cmd_RasterPos3fv *cmd;
213996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_RasterPos3fv, cmd_size);
214096c5ddc4Srjs   memcpy(cmd->v, v, 3 * sizeof(GLfloat));
214196c5ddc4Srjs}
214296c5ddc4Srjs
214396c5ddc4Srjs
214496c5ddc4Srjs/* RasterPos3i: marshalled asynchronously */
214596c5ddc4Srjsstruct marshal_cmd_RasterPos3i
214696c5ddc4Srjs{
214796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
214896c5ddc4Srjs   GLint x;
214996c5ddc4Srjs   GLint y;
215096c5ddc4Srjs   GLint z;
215196c5ddc4Srjs};
215296c5ddc4Srjsuint32_t
215396c5ddc4Srjs_mesa_unmarshal_RasterPos3i(struct gl_context *ctx, const struct marshal_cmd_RasterPos3i *cmd, const uint64_t *last)
215496c5ddc4Srjs{
215596c5ddc4Srjs   GLint x = cmd->x;
215696c5ddc4Srjs   GLint y = cmd->y;
215796c5ddc4Srjs   GLint z = cmd->z;
215896c5ddc4Srjs   CALL_RasterPos3i(ctx->CurrentServerDispatch, (x, y, z));
215996c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_RasterPos3i), 8) / 8);
216096c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
216196c5ddc4Srjs   return cmd_size;
216296c5ddc4Srjs}
216396c5ddc4Srjsvoid GLAPIENTRY
216496c5ddc4Srjs_mesa_marshal_RasterPos3i(GLint x, GLint y, GLint z)
216596c5ddc4Srjs{
216696c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
216796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_RasterPos3i);
216896c5ddc4Srjs   struct marshal_cmd_RasterPos3i *cmd;
216996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_RasterPos3i, cmd_size);
217096c5ddc4Srjs   cmd->x = x;
217196c5ddc4Srjs   cmd->y = y;
217296c5ddc4Srjs   cmd->z = z;
217396c5ddc4Srjs}
217496c5ddc4Srjs
217596c5ddc4Srjs
217696c5ddc4Srjs/* RasterPos3iv: marshalled asynchronously */
217796c5ddc4Srjsstruct marshal_cmd_RasterPos3iv
217896c5ddc4Srjs{
217996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
218096c5ddc4Srjs   GLint v[3];
218196c5ddc4Srjs};
218296c5ddc4Srjsuint32_t
218396c5ddc4Srjs_mesa_unmarshal_RasterPos3iv(struct gl_context *ctx, const struct marshal_cmd_RasterPos3iv *cmd, const uint64_t *last)
218496c5ddc4Srjs{
218596c5ddc4Srjs   const GLint * v = cmd->v;
218696c5ddc4Srjs   CALL_RasterPos3iv(ctx->CurrentServerDispatch, (v));
218796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_RasterPos3iv), 8) / 8);
218896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
218996c5ddc4Srjs   return cmd_size;
219096c5ddc4Srjs}
219196c5ddc4Srjsvoid GLAPIENTRY
219296c5ddc4Srjs_mesa_marshal_RasterPos3iv(const GLint * v)
219396c5ddc4Srjs{
219496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
219596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_RasterPos3iv);
219696c5ddc4Srjs   struct marshal_cmd_RasterPos3iv *cmd;
219796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_RasterPos3iv, cmd_size);
219896c5ddc4Srjs   memcpy(cmd->v, v, 3 * sizeof(GLint));
219996c5ddc4Srjs}
220096c5ddc4Srjs
220196c5ddc4Srjs
220296c5ddc4Srjs/* RasterPos3s: marshalled asynchronously */
220396c5ddc4Srjsstruct marshal_cmd_RasterPos3s
220496c5ddc4Srjs{
220596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
220696c5ddc4Srjs   GLshort x;
220796c5ddc4Srjs   GLshort y;
220896c5ddc4Srjs   GLshort z;
220996c5ddc4Srjs};
221096c5ddc4Srjsuint32_t
221196c5ddc4Srjs_mesa_unmarshal_RasterPos3s(struct gl_context *ctx, const struct marshal_cmd_RasterPos3s *cmd, const uint64_t *last)
221296c5ddc4Srjs{
221396c5ddc4Srjs   GLshort x = cmd->x;
221496c5ddc4Srjs   GLshort y = cmd->y;
221596c5ddc4Srjs   GLshort z = cmd->z;
221696c5ddc4Srjs   CALL_RasterPos3s(ctx->CurrentServerDispatch, (x, y, z));
221796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_RasterPos3s), 8) / 8);
221896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
221996c5ddc4Srjs   return cmd_size;
222096c5ddc4Srjs}
222196c5ddc4Srjsvoid GLAPIENTRY
222296c5ddc4Srjs_mesa_marshal_RasterPos3s(GLshort x, GLshort y, GLshort z)
222396c5ddc4Srjs{
222496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
222596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_RasterPos3s);
222696c5ddc4Srjs   struct marshal_cmd_RasterPos3s *cmd;
222796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_RasterPos3s, cmd_size);
222896c5ddc4Srjs   cmd->x = x;
222996c5ddc4Srjs   cmd->y = y;
223096c5ddc4Srjs   cmd->z = z;
223196c5ddc4Srjs}
223296c5ddc4Srjs
223396c5ddc4Srjs
223496c5ddc4Srjs/* RasterPos3sv: marshalled asynchronously */
223596c5ddc4Srjsstruct marshal_cmd_RasterPos3sv
223696c5ddc4Srjs{
223796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
223896c5ddc4Srjs   GLshort v[3];
223996c5ddc4Srjs};
224096c5ddc4Srjsuint32_t
224196c5ddc4Srjs_mesa_unmarshal_RasterPos3sv(struct gl_context *ctx, const struct marshal_cmd_RasterPos3sv *cmd, const uint64_t *last)
224296c5ddc4Srjs{
224396c5ddc4Srjs   const GLshort * v = cmd->v;
224496c5ddc4Srjs   CALL_RasterPos3sv(ctx->CurrentServerDispatch, (v));
224596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_RasterPos3sv), 8) / 8);
224696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
224796c5ddc4Srjs   return cmd_size;
224896c5ddc4Srjs}
224996c5ddc4Srjsvoid GLAPIENTRY
225096c5ddc4Srjs_mesa_marshal_RasterPos3sv(const GLshort * v)
225196c5ddc4Srjs{
225296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
225396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_RasterPos3sv);
225496c5ddc4Srjs   struct marshal_cmd_RasterPos3sv *cmd;
225596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_RasterPos3sv, cmd_size);
225696c5ddc4Srjs   memcpy(cmd->v, v, 3 * sizeof(GLshort));
225796c5ddc4Srjs}
225896c5ddc4Srjs
225996c5ddc4Srjs
226096c5ddc4Srjs/* RasterPos4d: marshalled asynchronously */
226196c5ddc4Srjsstruct marshal_cmd_RasterPos4d
226296c5ddc4Srjs{
226396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
226496c5ddc4Srjs   GLdouble x;
226596c5ddc4Srjs   GLdouble y;
226696c5ddc4Srjs   GLdouble z;
226796c5ddc4Srjs   GLdouble w;
226896c5ddc4Srjs};
226996c5ddc4Srjsuint32_t
227096c5ddc4Srjs_mesa_unmarshal_RasterPos4d(struct gl_context *ctx, const struct marshal_cmd_RasterPos4d *cmd, const uint64_t *last)
227196c5ddc4Srjs{
227296c5ddc4Srjs   GLdouble x = cmd->x;
227396c5ddc4Srjs   GLdouble y = cmd->y;
227496c5ddc4Srjs   GLdouble z = cmd->z;
227596c5ddc4Srjs   GLdouble w = cmd->w;
227696c5ddc4Srjs   CALL_RasterPos4d(ctx->CurrentServerDispatch, (x, y, z, w));
227796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_RasterPos4d), 8) / 8);
227896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
227996c5ddc4Srjs   return cmd_size;
228096c5ddc4Srjs}
228196c5ddc4Srjsvoid GLAPIENTRY
228296c5ddc4Srjs_mesa_marshal_RasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
228396c5ddc4Srjs{
228496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
228596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_RasterPos4d);
228696c5ddc4Srjs   struct marshal_cmd_RasterPos4d *cmd;
228796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_RasterPos4d, cmd_size);
228896c5ddc4Srjs   cmd->x = x;
228996c5ddc4Srjs   cmd->y = y;
229096c5ddc4Srjs   cmd->z = z;
229196c5ddc4Srjs   cmd->w = w;
229296c5ddc4Srjs}
229396c5ddc4Srjs
229496c5ddc4Srjs
229596c5ddc4Srjs/* RasterPos4dv: marshalled asynchronously */
229696c5ddc4Srjsstruct marshal_cmd_RasterPos4dv
229796c5ddc4Srjs{
229896c5ddc4Srjs   struct marshal_cmd_base cmd_base;
229996c5ddc4Srjs   GLdouble v[4];
230096c5ddc4Srjs};
230196c5ddc4Srjsuint32_t
230296c5ddc4Srjs_mesa_unmarshal_RasterPos4dv(struct gl_context *ctx, const struct marshal_cmd_RasterPos4dv *cmd, const uint64_t *last)
230396c5ddc4Srjs{
230496c5ddc4Srjs   const GLdouble * v = cmd->v;
230596c5ddc4Srjs   CALL_RasterPos4dv(ctx->CurrentServerDispatch, (v));
230696c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_RasterPos4dv), 8) / 8);
230796c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
230896c5ddc4Srjs   return cmd_size;
230996c5ddc4Srjs}
231096c5ddc4Srjsvoid GLAPIENTRY
231196c5ddc4Srjs_mesa_marshal_RasterPos4dv(const GLdouble * v)
231296c5ddc4Srjs{
231396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
231496c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_RasterPos4dv);
231596c5ddc4Srjs   struct marshal_cmd_RasterPos4dv *cmd;
231696c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_RasterPos4dv, cmd_size);
231796c5ddc4Srjs   memcpy(cmd->v, v, 4 * sizeof(GLdouble));
231896c5ddc4Srjs}
231996c5ddc4Srjs
232096c5ddc4Srjs
232196c5ddc4Srjs/* RasterPos4f: marshalled asynchronously */
232296c5ddc4Srjsstruct marshal_cmd_RasterPos4f
232396c5ddc4Srjs{
232496c5ddc4Srjs   struct marshal_cmd_base cmd_base;
232596c5ddc4Srjs   GLfloat x;
232696c5ddc4Srjs   GLfloat y;
232796c5ddc4Srjs   GLfloat z;
232896c5ddc4Srjs   GLfloat w;
232996c5ddc4Srjs};
233096c5ddc4Srjsuint32_t
233196c5ddc4Srjs_mesa_unmarshal_RasterPos4f(struct gl_context *ctx, const struct marshal_cmd_RasterPos4f *cmd, const uint64_t *last)
233296c5ddc4Srjs{
233396c5ddc4Srjs   GLfloat x = cmd->x;
233496c5ddc4Srjs   GLfloat y = cmd->y;
233596c5ddc4Srjs   GLfloat z = cmd->z;
233696c5ddc4Srjs   GLfloat w = cmd->w;
233796c5ddc4Srjs   CALL_RasterPos4f(ctx->CurrentServerDispatch, (x, y, z, w));
233896c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_RasterPos4f), 8) / 8);
233996c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
234096c5ddc4Srjs   return cmd_size;
234196c5ddc4Srjs}
234296c5ddc4Srjsvoid GLAPIENTRY
234396c5ddc4Srjs_mesa_marshal_RasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
234496c5ddc4Srjs{
234596c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
234696c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_RasterPos4f);
234796c5ddc4Srjs   struct marshal_cmd_RasterPos4f *cmd;
234896c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_RasterPos4f, cmd_size);
234996c5ddc4Srjs   cmd->x = x;
235096c5ddc4Srjs   cmd->y = y;
235196c5ddc4Srjs   cmd->z = z;
235296c5ddc4Srjs   cmd->w = w;
235396c5ddc4Srjs}
235496c5ddc4Srjs
235596c5ddc4Srjs
235696c5ddc4Srjs/* RasterPos4fv: marshalled asynchronously */
235796c5ddc4Srjsstruct marshal_cmd_RasterPos4fv
235896c5ddc4Srjs{
235996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
236096c5ddc4Srjs   GLfloat v[4];
236196c5ddc4Srjs};
236296c5ddc4Srjsuint32_t
236396c5ddc4Srjs_mesa_unmarshal_RasterPos4fv(struct gl_context *ctx, const struct marshal_cmd_RasterPos4fv *cmd, const uint64_t *last)
236496c5ddc4Srjs{
236596c5ddc4Srjs   const GLfloat * v = cmd->v;
236696c5ddc4Srjs   CALL_RasterPos4fv(ctx->CurrentServerDispatch, (v));
236796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_RasterPos4fv), 8) / 8);
236896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
236996c5ddc4Srjs   return cmd_size;
237096c5ddc4Srjs}
237196c5ddc4Srjsvoid GLAPIENTRY
237296c5ddc4Srjs_mesa_marshal_RasterPos4fv(const GLfloat * v)
237396c5ddc4Srjs{
237496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
237596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_RasterPos4fv);
237696c5ddc4Srjs   struct marshal_cmd_RasterPos4fv *cmd;
237796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_RasterPos4fv, cmd_size);
237896c5ddc4Srjs   memcpy(cmd->v, v, 4 * sizeof(GLfloat));
237996c5ddc4Srjs}
238096c5ddc4Srjs
238196c5ddc4Srjs
238296c5ddc4Srjs/* RasterPos4i: marshalled asynchronously */
238396c5ddc4Srjsstruct marshal_cmd_RasterPos4i
238496c5ddc4Srjs{
238596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
238696c5ddc4Srjs   GLint x;
238796c5ddc4Srjs   GLint y;
238896c5ddc4Srjs   GLint z;
238996c5ddc4Srjs   GLint w;
239096c5ddc4Srjs};
239196c5ddc4Srjsuint32_t
239296c5ddc4Srjs_mesa_unmarshal_RasterPos4i(struct gl_context *ctx, const struct marshal_cmd_RasterPos4i *cmd, const uint64_t *last)
239396c5ddc4Srjs{
239496c5ddc4Srjs   GLint x = cmd->x;
239596c5ddc4Srjs   GLint y = cmd->y;
239696c5ddc4Srjs   GLint z = cmd->z;
239796c5ddc4Srjs   GLint w = cmd->w;
239896c5ddc4Srjs   CALL_RasterPos4i(ctx->CurrentServerDispatch, (x, y, z, w));
239996c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_RasterPos4i), 8) / 8);
240096c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
240196c5ddc4Srjs   return cmd_size;
240296c5ddc4Srjs}
240396c5ddc4Srjsvoid GLAPIENTRY
240496c5ddc4Srjs_mesa_marshal_RasterPos4i(GLint x, GLint y, GLint z, GLint w)
240596c5ddc4Srjs{
240696c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
240796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_RasterPos4i);
240896c5ddc4Srjs   struct marshal_cmd_RasterPos4i *cmd;
240996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_RasterPos4i, cmd_size);
241096c5ddc4Srjs   cmd->x = x;
241196c5ddc4Srjs   cmd->y = y;
241296c5ddc4Srjs   cmd->z = z;
241396c5ddc4Srjs   cmd->w = w;
241496c5ddc4Srjs}
241596c5ddc4Srjs
241696c5ddc4Srjs
241796c5ddc4Srjs/* RasterPos4iv: marshalled asynchronously */
241896c5ddc4Srjsstruct marshal_cmd_RasterPos4iv
241996c5ddc4Srjs{
242096c5ddc4Srjs   struct marshal_cmd_base cmd_base;
242196c5ddc4Srjs   GLint v[4];
242296c5ddc4Srjs};
242396c5ddc4Srjsuint32_t
242496c5ddc4Srjs_mesa_unmarshal_RasterPos4iv(struct gl_context *ctx, const struct marshal_cmd_RasterPos4iv *cmd, const uint64_t *last)
242596c5ddc4Srjs{
242696c5ddc4Srjs   const GLint * v = cmd->v;
242796c5ddc4Srjs   CALL_RasterPos4iv(ctx->CurrentServerDispatch, (v));
242896c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_RasterPos4iv), 8) / 8);
242996c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
243096c5ddc4Srjs   return cmd_size;
243196c5ddc4Srjs}
243296c5ddc4Srjsvoid GLAPIENTRY
243396c5ddc4Srjs_mesa_marshal_RasterPos4iv(const GLint * v)
243496c5ddc4Srjs{
243596c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
243696c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_RasterPos4iv);
243796c5ddc4Srjs   struct marshal_cmd_RasterPos4iv *cmd;
243896c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_RasterPos4iv, cmd_size);
243996c5ddc4Srjs   memcpy(cmd->v, v, 4 * sizeof(GLint));
244096c5ddc4Srjs}
244196c5ddc4Srjs
244296c5ddc4Srjs
244396c5ddc4Srjs/* RasterPos4s: marshalled asynchronously */
244496c5ddc4Srjsstruct marshal_cmd_RasterPos4s
244596c5ddc4Srjs{
244696c5ddc4Srjs   struct marshal_cmd_base cmd_base;
244796c5ddc4Srjs   GLshort x;
244896c5ddc4Srjs   GLshort y;
244996c5ddc4Srjs   GLshort z;
245096c5ddc4Srjs   GLshort w;
245196c5ddc4Srjs};
245296c5ddc4Srjsuint32_t
245396c5ddc4Srjs_mesa_unmarshal_RasterPos4s(struct gl_context *ctx, const struct marshal_cmd_RasterPos4s *cmd, const uint64_t *last)
245496c5ddc4Srjs{
245596c5ddc4Srjs   GLshort x = cmd->x;
245696c5ddc4Srjs   GLshort y = cmd->y;
245796c5ddc4Srjs   GLshort z = cmd->z;
245896c5ddc4Srjs   GLshort w = cmd->w;
245996c5ddc4Srjs   CALL_RasterPos4s(ctx->CurrentServerDispatch, (x, y, z, w));
246096c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_RasterPos4s), 8) / 8);
246196c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
246296c5ddc4Srjs   return cmd_size;
246396c5ddc4Srjs}
246496c5ddc4Srjsvoid GLAPIENTRY
246596c5ddc4Srjs_mesa_marshal_RasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w)
246696c5ddc4Srjs{
246796c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
246896c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_RasterPos4s);
246996c5ddc4Srjs   struct marshal_cmd_RasterPos4s *cmd;
247096c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_RasterPos4s, cmd_size);
247196c5ddc4Srjs   cmd->x = x;
247296c5ddc4Srjs   cmd->y = y;
247396c5ddc4Srjs   cmd->z = z;
247496c5ddc4Srjs   cmd->w = w;
247596c5ddc4Srjs}
247696c5ddc4Srjs
247796c5ddc4Srjs
247896c5ddc4Srjs/* RasterPos4sv: marshalled asynchronously */
247996c5ddc4Srjsstruct marshal_cmd_RasterPos4sv
248096c5ddc4Srjs{
248196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
248296c5ddc4Srjs   GLshort v[4];
248396c5ddc4Srjs};
248496c5ddc4Srjsuint32_t
248596c5ddc4Srjs_mesa_unmarshal_RasterPos4sv(struct gl_context *ctx, const struct marshal_cmd_RasterPos4sv *cmd, const uint64_t *last)
248696c5ddc4Srjs{
248796c5ddc4Srjs   const GLshort * v = cmd->v;
248896c5ddc4Srjs   CALL_RasterPos4sv(ctx->CurrentServerDispatch, (v));
248996c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_RasterPos4sv), 8) / 8);
249096c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
249196c5ddc4Srjs   return cmd_size;
249296c5ddc4Srjs}
249396c5ddc4Srjsvoid GLAPIENTRY
249496c5ddc4Srjs_mesa_marshal_RasterPos4sv(const GLshort * v)
249596c5ddc4Srjs{
249696c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
249796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_RasterPos4sv);
249896c5ddc4Srjs   struct marshal_cmd_RasterPos4sv *cmd;
249996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_RasterPos4sv, cmd_size);
250096c5ddc4Srjs   memcpy(cmd->v, v, 4 * sizeof(GLshort));
250196c5ddc4Srjs}
250296c5ddc4Srjs
250396c5ddc4Srjs
250496c5ddc4Srjs/* Rectd: marshalled asynchronously */
250596c5ddc4Srjsstruct marshal_cmd_Rectd
250696c5ddc4Srjs{
250796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
250896c5ddc4Srjs   GLdouble x1;
250996c5ddc4Srjs   GLdouble y1;
251096c5ddc4Srjs   GLdouble x2;
251196c5ddc4Srjs   GLdouble y2;
251296c5ddc4Srjs};
251396c5ddc4Srjsuint32_t
251496c5ddc4Srjs_mesa_unmarshal_Rectd(struct gl_context *ctx, const struct marshal_cmd_Rectd *cmd, const uint64_t *last)
251596c5ddc4Srjs{
251696c5ddc4Srjs   GLdouble x1 = cmd->x1;
251796c5ddc4Srjs   GLdouble y1 = cmd->y1;
251896c5ddc4Srjs   GLdouble x2 = cmd->x2;
251996c5ddc4Srjs   GLdouble y2 = cmd->y2;
252096c5ddc4Srjs   CALL_Rectd(ctx->CurrentServerDispatch, (x1, y1, x2, y2));
252196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Rectd), 8) / 8);
252296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
252396c5ddc4Srjs   return cmd_size;
252496c5ddc4Srjs}
252596c5ddc4Srjsvoid GLAPIENTRY
252696c5ddc4Srjs_mesa_marshal_Rectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2)
252796c5ddc4Srjs{
252896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
252996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Rectd);
253096c5ddc4Srjs   struct marshal_cmd_Rectd *cmd;
253196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Rectd, cmd_size);
253296c5ddc4Srjs   cmd->x1 = x1;
253396c5ddc4Srjs   cmd->y1 = y1;
253496c5ddc4Srjs   cmd->x2 = x2;
253596c5ddc4Srjs   cmd->y2 = y2;
253696c5ddc4Srjs}
253796c5ddc4Srjs
253896c5ddc4Srjs
253996c5ddc4Srjs/* Rectdv: marshalled asynchronously */
254096c5ddc4Srjsstruct marshal_cmd_Rectdv
254196c5ddc4Srjs{
254296c5ddc4Srjs   struct marshal_cmd_base cmd_base;
254396c5ddc4Srjs   GLdouble v1[2];
254496c5ddc4Srjs   GLdouble v2[2];
254596c5ddc4Srjs};
254696c5ddc4Srjsuint32_t
254796c5ddc4Srjs_mesa_unmarshal_Rectdv(struct gl_context *ctx, const struct marshal_cmd_Rectdv *cmd, const uint64_t *last)
254896c5ddc4Srjs{
254996c5ddc4Srjs   const GLdouble * v1 = cmd->v1;
255096c5ddc4Srjs   const GLdouble * v2 = cmd->v2;
255196c5ddc4Srjs   CALL_Rectdv(ctx->CurrentServerDispatch, (v1, v2));
255296c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Rectdv), 8) / 8);
255396c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
255496c5ddc4Srjs   return cmd_size;
255596c5ddc4Srjs}
255696c5ddc4Srjsvoid GLAPIENTRY
255796c5ddc4Srjs_mesa_marshal_Rectdv(const GLdouble * v1, const GLdouble * v2)
255896c5ddc4Srjs{
255996c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
256096c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Rectdv);
256196c5ddc4Srjs   struct marshal_cmd_Rectdv *cmd;
256296c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Rectdv, cmd_size);
256396c5ddc4Srjs   memcpy(cmd->v1, v1, 2 * sizeof(GLdouble));
256496c5ddc4Srjs   memcpy(cmd->v2, v2, 2 * sizeof(GLdouble));
256596c5ddc4Srjs}
256696c5ddc4Srjs
256796c5ddc4Srjs
256896c5ddc4Srjs/* Rectf: marshalled asynchronously */
256996c5ddc4Srjsstruct marshal_cmd_Rectf
257096c5ddc4Srjs{
257196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
257296c5ddc4Srjs   GLfloat x1;
257396c5ddc4Srjs   GLfloat y1;
257496c5ddc4Srjs   GLfloat x2;
257596c5ddc4Srjs   GLfloat y2;
257696c5ddc4Srjs};
257796c5ddc4Srjsuint32_t
257896c5ddc4Srjs_mesa_unmarshal_Rectf(struct gl_context *ctx, const struct marshal_cmd_Rectf *cmd, const uint64_t *last)
257996c5ddc4Srjs{
258096c5ddc4Srjs   GLfloat x1 = cmd->x1;
258196c5ddc4Srjs   GLfloat y1 = cmd->y1;
258296c5ddc4Srjs   GLfloat x2 = cmd->x2;
258396c5ddc4Srjs   GLfloat y2 = cmd->y2;
258496c5ddc4Srjs   CALL_Rectf(ctx->CurrentServerDispatch, (x1, y1, x2, y2));
258596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Rectf), 8) / 8);
258696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
258796c5ddc4Srjs   return cmd_size;
258896c5ddc4Srjs}
258996c5ddc4Srjsvoid GLAPIENTRY
259096c5ddc4Srjs_mesa_marshal_Rectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
259196c5ddc4Srjs{
259296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
259396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Rectf);
259496c5ddc4Srjs   struct marshal_cmd_Rectf *cmd;
259596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Rectf, cmd_size);
259696c5ddc4Srjs   cmd->x1 = x1;
259796c5ddc4Srjs   cmd->y1 = y1;
259896c5ddc4Srjs   cmd->x2 = x2;
259996c5ddc4Srjs   cmd->y2 = y2;
260096c5ddc4Srjs}
260196c5ddc4Srjs
260296c5ddc4Srjs
260396c5ddc4Srjs/* Rectfv: marshalled asynchronously */
260496c5ddc4Srjsstruct marshal_cmd_Rectfv
260596c5ddc4Srjs{
260696c5ddc4Srjs   struct marshal_cmd_base cmd_base;
260796c5ddc4Srjs   GLfloat v1[2];
260896c5ddc4Srjs   GLfloat v2[2];
260996c5ddc4Srjs};
261096c5ddc4Srjsuint32_t
261196c5ddc4Srjs_mesa_unmarshal_Rectfv(struct gl_context *ctx, const struct marshal_cmd_Rectfv *cmd, const uint64_t *last)
261296c5ddc4Srjs{
261396c5ddc4Srjs   const GLfloat * v1 = cmd->v1;
261496c5ddc4Srjs   const GLfloat * v2 = cmd->v2;
261596c5ddc4Srjs   CALL_Rectfv(ctx->CurrentServerDispatch, (v1, v2));
261696c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Rectfv), 8) / 8);
261796c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
261896c5ddc4Srjs   return cmd_size;
261996c5ddc4Srjs}
262096c5ddc4Srjsvoid GLAPIENTRY
262196c5ddc4Srjs_mesa_marshal_Rectfv(const GLfloat * v1, const GLfloat * v2)
262296c5ddc4Srjs{
262396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
262496c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Rectfv);
262596c5ddc4Srjs   struct marshal_cmd_Rectfv *cmd;
262696c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Rectfv, cmd_size);
262796c5ddc4Srjs   memcpy(cmd->v1, v1, 2 * sizeof(GLfloat));
262896c5ddc4Srjs   memcpy(cmd->v2, v2, 2 * sizeof(GLfloat));
262996c5ddc4Srjs}
263096c5ddc4Srjs
263196c5ddc4Srjs
263296c5ddc4Srjs/* Recti: marshalled asynchronously */
263396c5ddc4Srjsstruct marshal_cmd_Recti
263496c5ddc4Srjs{
263596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
263696c5ddc4Srjs   GLint x1;
263796c5ddc4Srjs   GLint y1;
263896c5ddc4Srjs   GLint x2;
263996c5ddc4Srjs   GLint y2;
264096c5ddc4Srjs};
264196c5ddc4Srjsuint32_t
264296c5ddc4Srjs_mesa_unmarshal_Recti(struct gl_context *ctx, const struct marshal_cmd_Recti *cmd, const uint64_t *last)
264396c5ddc4Srjs{
264496c5ddc4Srjs   GLint x1 = cmd->x1;
264596c5ddc4Srjs   GLint y1 = cmd->y1;
264696c5ddc4Srjs   GLint x2 = cmd->x2;
264796c5ddc4Srjs   GLint y2 = cmd->y2;
264896c5ddc4Srjs   CALL_Recti(ctx->CurrentServerDispatch, (x1, y1, x2, y2));
264996c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Recti), 8) / 8);
265096c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
265196c5ddc4Srjs   return cmd_size;
265296c5ddc4Srjs}
265396c5ddc4Srjsvoid GLAPIENTRY
265496c5ddc4Srjs_mesa_marshal_Recti(GLint x1, GLint y1, GLint x2, GLint y2)
265596c5ddc4Srjs{
265696c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
265796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Recti);
265896c5ddc4Srjs   struct marshal_cmd_Recti *cmd;
265996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Recti, cmd_size);
266096c5ddc4Srjs   cmd->x1 = x1;
266196c5ddc4Srjs   cmd->y1 = y1;
266296c5ddc4Srjs   cmd->x2 = x2;
266396c5ddc4Srjs   cmd->y2 = y2;
266496c5ddc4Srjs}
266596c5ddc4Srjs
266696c5ddc4Srjs
266796c5ddc4Srjs/* Rectiv: marshalled asynchronously */
266896c5ddc4Srjsstruct marshal_cmd_Rectiv
266996c5ddc4Srjs{
267096c5ddc4Srjs   struct marshal_cmd_base cmd_base;
267196c5ddc4Srjs   GLint v1[2];
267296c5ddc4Srjs   GLint v2[2];
267396c5ddc4Srjs};
267496c5ddc4Srjsuint32_t
267596c5ddc4Srjs_mesa_unmarshal_Rectiv(struct gl_context *ctx, const struct marshal_cmd_Rectiv *cmd, const uint64_t *last)
267696c5ddc4Srjs{
267796c5ddc4Srjs   const GLint * v1 = cmd->v1;
267896c5ddc4Srjs   const GLint * v2 = cmd->v2;
267996c5ddc4Srjs   CALL_Rectiv(ctx->CurrentServerDispatch, (v1, v2));
268096c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Rectiv), 8) / 8);
268196c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
268296c5ddc4Srjs   return cmd_size;
268396c5ddc4Srjs}
268496c5ddc4Srjsvoid GLAPIENTRY
268596c5ddc4Srjs_mesa_marshal_Rectiv(const GLint * v1, const GLint * v2)
268696c5ddc4Srjs{
268796c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
268896c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Rectiv);
268996c5ddc4Srjs   struct marshal_cmd_Rectiv *cmd;
269096c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Rectiv, cmd_size);
269196c5ddc4Srjs   memcpy(cmd->v1, v1, 2 * sizeof(GLint));
269296c5ddc4Srjs   memcpy(cmd->v2, v2, 2 * sizeof(GLint));
269396c5ddc4Srjs}
269496c5ddc4Srjs
269596c5ddc4Srjs
269696c5ddc4Srjs/* Rects: marshalled asynchronously */
269796c5ddc4Srjsstruct marshal_cmd_Rects
269896c5ddc4Srjs{
269996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
270096c5ddc4Srjs   GLshort x1;
270196c5ddc4Srjs   GLshort y1;
270296c5ddc4Srjs   GLshort x2;
270396c5ddc4Srjs   GLshort y2;
270496c5ddc4Srjs};
270596c5ddc4Srjsuint32_t
270696c5ddc4Srjs_mesa_unmarshal_Rects(struct gl_context *ctx, const struct marshal_cmd_Rects *cmd, const uint64_t *last)
270796c5ddc4Srjs{
270896c5ddc4Srjs   GLshort x1 = cmd->x1;
270996c5ddc4Srjs   GLshort y1 = cmd->y1;
271096c5ddc4Srjs   GLshort x2 = cmd->x2;
271196c5ddc4Srjs   GLshort y2 = cmd->y2;
271296c5ddc4Srjs   CALL_Rects(ctx->CurrentServerDispatch, (x1, y1, x2, y2));
271396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Rects), 8) / 8);
271496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
271596c5ddc4Srjs   return cmd_size;
271696c5ddc4Srjs}
271796c5ddc4Srjsvoid GLAPIENTRY
271896c5ddc4Srjs_mesa_marshal_Rects(GLshort x1, GLshort y1, GLshort x2, GLshort y2)
271996c5ddc4Srjs{
272096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
272196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Rects);
272296c5ddc4Srjs   struct marshal_cmd_Rects *cmd;
272396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Rects, cmd_size);
272496c5ddc4Srjs   cmd->x1 = x1;
272596c5ddc4Srjs   cmd->y1 = y1;
272696c5ddc4Srjs   cmd->x2 = x2;
272796c5ddc4Srjs   cmd->y2 = y2;
272896c5ddc4Srjs}
272996c5ddc4Srjs
273096c5ddc4Srjs
273196c5ddc4Srjs/* Rectsv: marshalled asynchronously */
273296c5ddc4Srjsstruct marshal_cmd_Rectsv
273396c5ddc4Srjs{
273496c5ddc4Srjs   struct marshal_cmd_base cmd_base;
273596c5ddc4Srjs   GLshort v1[2];
273696c5ddc4Srjs   GLshort v2[2];
273796c5ddc4Srjs};
273896c5ddc4Srjsuint32_t
273996c5ddc4Srjs_mesa_unmarshal_Rectsv(struct gl_context *ctx, const struct marshal_cmd_Rectsv *cmd, const uint64_t *last)
274096c5ddc4Srjs{
274196c5ddc4Srjs   const GLshort * v1 = cmd->v1;
274296c5ddc4Srjs   const GLshort * v2 = cmd->v2;
274396c5ddc4Srjs   CALL_Rectsv(ctx->CurrentServerDispatch, (v1, v2));
274496c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Rectsv), 8) / 8);
274596c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
274696c5ddc4Srjs   return cmd_size;
274796c5ddc4Srjs}
274896c5ddc4Srjsvoid GLAPIENTRY
274996c5ddc4Srjs_mesa_marshal_Rectsv(const GLshort * v1, const GLshort * v2)
275096c5ddc4Srjs{
275196c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
275296c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Rectsv);
275396c5ddc4Srjs   struct marshal_cmd_Rectsv *cmd;
275496c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Rectsv, cmd_size);
275596c5ddc4Srjs   memcpy(cmd->v1, v1, 2 * sizeof(GLshort));
275696c5ddc4Srjs   memcpy(cmd->v2, v2, 2 * sizeof(GLshort));
275796c5ddc4Srjs}
275896c5ddc4Srjs
275996c5ddc4Srjs
276096c5ddc4Srjs/* TexCoord1d: marshalled asynchronously */
276196c5ddc4Srjsstruct marshal_cmd_TexCoord1d
276296c5ddc4Srjs{
276396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
276496c5ddc4Srjs   GLdouble s;
276596c5ddc4Srjs};
276696c5ddc4Srjsuint32_t
276796c5ddc4Srjs_mesa_unmarshal_TexCoord1d(struct gl_context *ctx, const struct marshal_cmd_TexCoord1d *cmd, const uint64_t *last)
276896c5ddc4Srjs{
276996c5ddc4Srjs   GLdouble s = cmd->s;
277096c5ddc4Srjs   CALL_TexCoord1d(ctx->CurrentServerDispatch, (s));
277196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord1d), 8) / 8);
277296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
277396c5ddc4Srjs   return cmd_size;
277496c5ddc4Srjs}
277596c5ddc4Srjsvoid GLAPIENTRY
277696c5ddc4Srjs_mesa_marshal_TexCoord1d(GLdouble s)
277796c5ddc4Srjs{
277896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
277996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord1d);
278096c5ddc4Srjs   struct marshal_cmd_TexCoord1d *cmd;
278196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord1d, cmd_size);
278296c5ddc4Srjs   cmd->s = s;
278396c5ddc4Srjs}
278496c5ddc4Srjs
278596c5ddc4Srjs
278696c5ddc4Srjs/* TexCoord1dv: marshalled asynchronously */
278796c5ddc4Srjsstruct marshal_cmd_TexCoord1dv
278896c5ddc4Srjs{
278996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
279096c5ddc4Srjs   GLdouble v[1];
279196c5ddc4Srjs};
279296c5ddc4Srjsuint32_t
279396c5ddc4Srjs_mesa_unmarshal_TexCoord1dv(struct gl_context *ctx, const struct marshal_cmd_TexCoord1dv *cmd, const uint64_t *last)
279496c5ddc4Srjs{
279596c5ddc4Srjs   const GLdouble * v = cmd->v;
279696c5ddc4Srjs   CALL_TexCoord1dv(ctx->CurrentServerDispatch, (v));
279796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord1dv), 8) / 8);
279896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
279996c5ddc4Srjs   return cmd_size;
280096c5ddc4Srjs}
280196c5ddc4Srjsvoid GLAPIENTRY
280296c5ddc4Srjs_mesa_marshal_TexCoord1dv(const GLdouble * v)
280396c5ddc4Srjs{
280496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
280596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord1dv);
280696c5ddc4Srjs   struct marshal_cmd_TexCoord1dv *cmd;
280796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord1dv, cmd_size);
280896c5ddc4Srjs   memcpy(cmd->v, v, 1 * sizeof(GLdouble));
280996c5ddc4Srjs}
281096c5ddc4Srjs
281196c5ddc4Srjs
281296c5ddc4Srjs/* TexCoord1f: marshalled asynchronously */
281396c5ddc4Srjsstruct marshal_cmd_TexCoord1f
281496c5ddc4Srjs{
281596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
281696c5ddc4Srjs   GLfloat s;
281796c5ddc4Srjs};
281896c5ddc4Srjsuint32_t
281996c5ddc4Srjs_mesa_unmarshal_TexCoord1f(struct gl_context *ctx, const struct marshal_cmd_TexCoord1f *cmd, const uint64_t *last)
282096c5ddc4Srjs{
282196c5ddc4Srjs   GLfloat s = cmd->s;
282296c5ddc4Srjs   CALL_TexCoord1f(ctx->CurrentServerDispatch, (s));
282396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord1f), 8) / 8);
282496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
282596c5ddc4Srjs   return cmd_size;
282696c5ddc4Srjs}
282796c5ddc4Srjsvoid GLAPIENTRY
282896c5ddc4Srjs_mesa_marshal_TexCoord1f(GLfloat s)
282996c5ddc4Srjs{
283096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
283196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord1f);
283296c5ddc4Srjs   struct marshal_cmd_TexCoord1f *cmd;
283396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord1f, cmd_size);
283496c5ddc4Srjs   cmd->s = s;
283596c5ddc4Srjs}
283696c5ddc4Srjs
283796c5ddc4Srjs
283896c5ddc4Srjs/* TexCoord1fv: marshalled asynchronously */
283996c5ddc4Srjsstruct marshal_cmd_TexCoord1fv
284096c5ddc4Srjs{
284196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
284296c5ddc4Srjs   GLfloat v[1];
284396c5ddc4Srjs};
284496c5ddc4Srjsuint32_t
284596c5ddc4Srjs_mesa_unmarshal_TexCoord1fv(struct gl_context *ctx, const struct marshal_cmd_TexCoord1fv *cmd, const uint64_t *last)
284696c5ddc4Srjs{
284796c5ddc4Srjs   const GLfloat * v = cmd->v;
284896c5ddc4Srjs   CALL_TexCoord1fv(ctx->CurrentServerDispatch, (v));
284996c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord1fv), 8) / 8);
285096c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
285196c5ddc4Srjs   return cmd_size;
285296c5ddc4Srjs}
285396c5ddc4Srjsvoid GLAPIENTRY
285496c5ddc4Srjs_mesa_marshal_TexCoord1fv(const GLfloat * v)
285596c5ddc4Srjs{
285696c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
285796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord1fv);
285896c5ddc4Srjs   struct marshal_cmd_TexCoord1fv *cmd;
285996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord1fv, cmd_size);
286096c5ddc4Srjs   memcpy(cmd->v, v, 1 * sizeof(GLfloat));
286196c5ddc4Srjs}
286296c5ddc4Srjs
286396c5ddc4Srjs
286496c5ddc4Srjs/* TexCoord1i: marshalled asynchronously */
286596c5ddc4Srjsstruct marshal_cmd_TexCoord1i
286696c5ddc4Srjs{
286796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
286896c5ddc4Srjs   GLint s;
286996c5ddc4Srjs};
287096c5ddc4Srjsuint32_t
287196c5ddc4Srjs_mesa_unmarshal_TexCoord1i(struct gl_context *ctx, const struct marshal_cmd_TexCoord1i *cmd, const uint64_t *last)
287296c5ddc4Srjs{
287396c5ddc4Srjs   GLint s = cmd->s;
287496c5ddc4Srjs   CALL_TexCoord1i(ctx->CurrentServerDispatch, (s));
287596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord1i), 8) / 8);
287696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
287796c5ddc4Srjs   return cmd_size;
287896c5ddc4Srjs}
287996c5ddc4Srjsvoid GLAPIENTRY
288096c5ddc4Srjs_mesa_marshal_TexCoord1i(GLint s)
288196c5ddc4Srjs{
288296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
288396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord1i);
288496c5ddc4Srjs   struct marshal_cmd_TexCoord1i *cmd;
288596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord1i, cmd_size);
288696c5ddc4Srjs   cmd->s = s;
288796c5ddc4Srjs}
288896c5ddc4Srjs
288996c5ddc4Srjs
289096c5ddc4Srjs/* TexCoord1iv: marshalled asynchronously */
289196c5ddc4Srjsstruct marshal_cmd_TexCoord1iv
289296c5ddc4Srjs{
289396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
289496c5ddc4Srjs   GLint v[1];
289596c5ddc4Srjs};
289696c5ddc4Srjsuint32_t
289796c5ddc4Srjs_mesa_unmarshal_TexCoord1iv(struct gl_context *ctx, const struct marshal_cmd_TexCoord1iv *cmd, const uint64_t *last)
289896c5ddc4Srjs{
289996c5ddc4Srjs   const GLint * v = cmd->v;
290096c5ddc4Srjs   CALL_TexCoord1iv(ctx->CurrentServerDispatch, (v));
290196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord1iv), 8) / 8);
290296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
290396c5ddc4Srjs   return cmd_size;
290496c5ddc4Srjs}
290596c5ddc4Srjsvoid GLAPIENTRY
290696c5ddc4Srjs_mesa_marshal_TexCoord1iv(const GLint * v)
290796c5ddc4Srjs{
290896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
290996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord1iv);
291096c5ddc4Srjs   struct marshal_cmd_TexCoord1iv *cmd;
291196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord1iv, cmd_size);
291296c5ddc4Srjs   memcpy(cmd->v, v, 1 * sizeof(GLint));
291396c5ddc4Srjs}
291496c5ddc4Srjs
291596c5ddc4Srjs
291696c5ddc4Srjs/* TexCoord1s: marshalled asynchronously */
291796c5ddc4Srjsstruct marshal_cmd_TexCoord1s
291896c5ddc4Srjs{
291996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
292096c5ddc4Srjs   GLshort s;
292196c5ddc4Srjs};
292296c5ddc4Srjsuint32_t
292396c5ddc4Srjs_mesa_unmarshal_TexCoord1s(struct gl_context *ctx, const struct marshal_cmd_TexCoord1s *cmd, const uint64_t *last)
292496c5ddc4Srjs{
292596c5ddc4Srjs   GLshort s = cmd->s;
292696c5ddc4Srjs   CALL_TexCoord1s(ctx->CurrentServerDispatch, (s));
292796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord1s), 8) / 8);
292896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
292996c5ddc4Srjs   return cmd_size;
293096c5ddc4Srjs}
293196c5ddc4Srjsvoid GLAPIENTRY
293296c5ddc4Srjs_mesa_marshal_TexCoord1s(GLshort s)
293396c5ddc4Srjs{
293496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
293596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord1s);
293696c5ddc4Srjs   struct marshal_cmd_TexCoord1s *cmd;
293796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord1s, cmd_size);
293896c5ddc4Srjs   cmd->s = s;
293996c5ddc4Srjs}
294096c5ddc4Srjs
294196c5ddc4Srjs
294296c5ddc4Srjs/* TexCoord1sv: marshalled asynchronously */
294396c5ddc4Srjsstruct marshal_cmd_TexCoord1sv
294496c5ddc4Srjs{
294596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
294696c5ddc4Srjs   GLshort v[1];
294796c5ddc4Srjs};
294896c5ddc4Srjsuint32_t
294996c5ddc4Srjs_mesa_unmarshal_TexCoord1sv(struct gl_context *ctx, const struct marshal_cmd_TexCoord1sv *cmd, const uint64_t *last)
295096c5ddc4Srjs{
295196c5ddc4Srjs   const GLshort * v = cmd->v;
295296c5ddc4Srjs   CALL_TexCoord1sv(ctx->CurrentServerDispatch, (v));
295396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord1sv), 8) / 8);
295496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
295596c5ddc4Srjs   return cmd_size;
295696c5ddc4Srjs}
295796c5ddc4Srjsvoid GLAPIENTRY
295896c5ddc4Srjs_mesa_marshal_TexCoord1sv(const GLshort * v)
295996c5ddc4Srjs{
296096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
296196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord1sv);
296296c5ddc4Srjs   struct marshal_cmd_TexCoord1sv *cmd;
296396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord1sv, cmd_size);
296496c5ddc4Srjs   memcpy(cmd->v, v, 1 * sizeof(GLshort));
296596c5ddc4Srjs}
296696c5ddc4Srjs
296796c5ddc4Srjs
296896c5ddc4Srjs/* TexCoord2d: marshalled asynchronously */
296996c5ddc4Srjsstruct marshal_cmd_TexCoord2d
297096c5ddc4Srjs{
297196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
297296c5ddc4Srjs   GLdouble s;
297396c5ddc4Srjs   GLdouble t;
297496c5ddc4Srjs};
297596c5ddc4Srjsuint32_t
297696c5ddc4Srjs_mesa_unmarshal_TexCoord2d(struct gl_context *ctx, const struct marshal_cmd_TexCoord2d *cmd, const uint64_t *last)
297796c5ddc4Srjs{
297896c5ddc4Srjs   GLdouble s = cmd->s;
297996c5ddc4Srjs   GLdouble t = cmd->t;
298096c5ddc4Srjs   CALL_TexCoord2d(ctx->CurrentServerDispatch, (s, t));
298196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord2d), 8) / 8);
298296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
298396c5ddc4Srjs   return cmd_size;
298496c5ddc4Srjs}
298596c5ddc4Srjsvoid GLAPIENTRY
298696c5ddc4Srjs_mesa_marshal_TexCoord2d(GLdouble s, GLdouble t)
298796c5ddc4Srjs{
298896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
298996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord2d);
299096c5ddc4Srjs   struct marshal_cmd_TexCoord2d *cmd;
299196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord2d, cmd_size);
299296c5ddc4Srjs   cmd->s = s;
299396c5ddc4Srjs   cmd->t = t;
299496c5ddc4Srjs}
299596c5ddc4Srjs
299696c5ddc4Srjs
299796c5ddc4Srjs/* TexCoord2dv: marshalled asynchronously */
299896c5ddc4Srjsstruct marshal_cmd_TexCoord2dv
299996c5ddc4Srjs{
300096c5ddc4Srjs   struct marshal_cmd_base cmd_base;
300196c5ddc4Srjs   GLdouble v[2];
300296c5ddc4Srjs};
300396c5ddc4Srjsuint32_t
300496c5ddc4Srjs_mesa_unmarshal_TexCoord2dv(struct gl_context *ctx, const struct marshal_cmd_TexCoord2dv *cmd, const uint64_t *last)
300596c5ddc4Srjs{
300696c5ddc4Srjs   const GLdouble * v = cmd->v;
300796c5ddc4Srjs   CALL_TexCoord2dv(ctx->CurrentServerDispatch, (v));
300896c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord2dv), 8) / 8);
300996c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
301096c5ddc4Srjs   return cmd_size;
301196c5ddc4Srjs}
301296c5ddc4Srjsvoid GLAPIENTRY
301396c5ddc4Srjs_mesa_marshal_TexCoord2dv(const GLdouble * v)
301496c5ddc4Srjs{
301596c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
301696c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord2dv);
301796c5ddc4Srjs   struct marshal_cmd_TexCoord2dv *cmd;
301896c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord2dv, cmd_size);
301996c5ddc4Srjs   memcpy(cmd->v, v, 2 * sizeof(GLdouble));
302096c5ddc4Srjs}
302196c5ddc4Srjs
302296c5ddc4Srjs
302396c5ddc4Srjs/* TexCoord2f: marshalled asynchronously */
302496c5ddc4Srjsstruct marshal_cmd_TexCoord2f
302596c5ddc4Srjs{
302696c5ddc4Srjs   struct marshal_cmd_base cmd_base;
302796c5ddc4Srjs   GLfloat s;
302896c5ddc4Srjs   GLfloat t;
302996c5ddc4Srjs};
303096c5ddc4Srjsuint32_t
303196c5ddc4Srjs_mesa_unmarshal_TexCoord2f(struct gl_context *ctx, const struct marshal_cmd_TexCoord2f *cmd, const uint64_t *last)
303296c5ddc4Srjs{
303396c5ddc4Srjs   GLfloat s = cmd->s;
303496c5ddc4Srjs   GLfloat t = cmd->t;
303596c5ddc4Srjs   CALL_TexCoord2f(ctx->CurrentServerDispatch, (s, t));
303696c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord2f), 8) / 8);
303796c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
303896c5ddc4Srjs   return cmd_size;
303996c5ddc4Srjs}
304096c5ddc4Srjsvoid GLAPIENTRY
304196c5ddc4Srjs_mesa_marshal_TexCoord2f(GLfloat s, GLfloat t)
304296c5ddc4Srjs{
304396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
304496c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord2f);
304596c5ddc4Srjs   struct marshal_cmd_TexCoord2f *cmd;
304696c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord2f, cmd_size);
304796c5ddc4Srjs   cmd->s = s;
304896c5ddc4Srjs   cmd->t = t;
304996c5ddc4Srjs}
305096c5ddc4Srjs
305196c5ddc4Srjs
305296c5ddc4Srjs/* TexCoord2fv: marshalled asynchronously */
305396c5ddc4Srjsstruct marshal_cmd_TexCoord2fv
305496c5ddc4Srjs{
305596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
305696c5ddc4Srjs   GLfloat v[2];
305796c5ddc4Srjs};
305896c5ddc4Srjsuint32_t
305996c5ddc4Srjs_mesa_unmarshal_TexCoord2fv(struct gl_context *ctx, const struct marshal_cmd_TexCoord2fv *cmd, const uint64_t *last)
306096c5ddc4Srjs{
306196c5ddc4Srjs   const GLfloat * v = cmd->v;
306296c5ddc4Srjs   CALL_TexCoord2fv(ctx->CurrentServerDispatch, (v));
306396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord2fv), 8) / 8);
306496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
306596c5ddc4Srjs   return cmd_size;
306696c5ddc4Srjs}
306796c5ddc4Srjsvoid GLAPIENTRY
306896c5ddc4Srjs_mesa_marshal_TexCoord2fv(const GLfloat * v)
306996c5ddc4Srjs{
307096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
307196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord2fv);
307296c5ddc4Srjs   struct marshal_cmd_TexCoord2fv *cmd;
307396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord2fv, cmd_size);
307496c5ddc4Srjs   memcpy(cmd->v, v, 2 * sizeof(GLfloat));
307596c5ddc4Srjs}
307696c5ddc4Srjs
307796c5ddc4Srjs
307896c5ddc4Srjs/* TexCoord2i: marshalled asynchronously */
307996c5ddc4Srjsstruct marshal_cmd_TexCoord2i
308096c5ddc4Srjs{
308196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
308296c5ddc4Srjs   GLint s;
308396c5ddc4Srjs   GLint t;
308496c5ddc4Srjs};
308596c5ddc4Srjsuint32_t
308696c5ddc4Srjs_mesa_unmarshal_TexCoord2i(struct gl_context *ctx, const struct marshal_cmd_TexCoord2i *cmd, const uint64_t *last)
308796c5ddc4Srjs{
308896c5ddc4Srjs   GLint s = cmd->s;
308996c5ddc4Srjs   GLint t = cmd->t;
309096c5ddc4Srjs   CALL_TexCoord2i(ctx->CurrentServerDispatch, (s, t));
309196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord2i), 8) / 8);
309296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
309396c5ddc4Srjs   return cmd_size;
309496c5ddc4Srjs}
309596c5ddc4Srjsvoid GLAPIENTRY
309696c5ddc4Srjs_mesa_marshal_TexCoord2i(GLint s, GLint t)
309796c5ddc4Srjs{
309896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
309996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord2i);
310096c5ddc4Srjs   struct marshal_cmd_TexCoord2i *cmd;
310196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord2i, cmd_size);
310296c5ddc4Srjs   cmd->s = s;
310396c5ddc4Srjs   cmd->t = t;
310496c5ddc4Srjs}
310596c5ddc4Srjs
310696c5ddc4Srjs
310796c5ddc4Srjs/* TexCoord2iv: marshalled asynchronously */
310896c5ddc4Srjsstruct marshal_cmd_TexCoord2iv
310996c5ddc4Srjs{
311096c5ddc4Srjs   struct marshal_cmd_base cmd_base;
311196c5ddc4Srjs   GLint v[2];
311296c5ddc4Srjs};
311396c5ddc4Srjsuint32_t
311496c5ddc4Srjs_mesa_unmarshal_TexCoord2iv(struct gl_context *ctx, const struct marshal_cmd_TexCoord2iv *cmd, const uint64_t *last)
311596c5ddc4Srjs{
311696c5ddc4Srjs   const GLint * v = cmd->v;
311796c5ddc4Srjs   CALL_TexCoord2iv(ctx->CurrentServerDispatch, (v));
311896c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord2iv), 8) / 8);
311996c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
312096c5ddc4Srjs   return cmd_size;
312196c5ddc4Srjs}
312296c5ddc4Srjsvoid GLAPIENTRY
312396c5ddc4Srjs_mesa_marshal_TexCoord2iv(const GLint * v)
312496c5ddc4Srjs{
312596c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
312696c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord2iv);
312796c5ddc4Srjs   struct marshal_cmd_TexCoord2iv *cmd;
312896c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord2iv, cmd_size);
312996c5ddc4Srjs   memcpy(cmd->v, v, 2 * sizeof(GLint));
313096c5ddc4Srjs}
313196c5ddc4Srjs
313296c5ddc4Srjs
313396c5ddc4Srjs/* TexCoord2s: marshalled asynchronously */
313496c5ddc4Srjsstruct marshal_cmd_TexCoord2s
313596c5ddc4Srjs{
313696c5ddc4Srjs   struct marshal_cmd_base cmd_base;
313796c5ddc4Srjs   GLshort s;
313896c5ddc4Srjs   GLshort t;
313996c5ddc4Srjs};
314096c5ddc4Srjsuint32_t
314196c5ddc4Srjs_mesa_unmarshal_TexCoord2s(struct gl_context *ctx, const struct marshal_cmd_TexCoord2s *cmd, const uint64_t *last)
314296c5ddc4Srjs{
314396c5ddc4Srjs   GLshort s = cmd->s;
314496c5ddc4Srjs   GLshort t = cmd->t;
314596c5ddc4Srjs   CALL_TexCoord2s(ctx->CurrentServerDispatch, (s, t));
314696c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord2s), 8) / 8);
314796c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
314896c5ddc4Srjs   return cmd_size;
314996c5ddc4Srjs}
315096c5ddc4Srjsvoid GLAPIENTRY
315196c5ddc4Srjs_mesa_marshal_TexCoord2s(GLshort s, GLshort t)
315296c5ddc4Srjs{
315396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
315496c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord2s);
315596c5ddc4Srjs   struct marshal_cmd_TexCoord2s *cmd;
315696c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord2s, cmd_size);
315796c5ddc4Srjs   cmd->s = s;
315896c5ddc4Srjs   cmd->t = t;
315996c5ddc4Srjs}
316096c5ddc4Srjs
316196c5ddc4Srjs
316296c5ddc4Srjs/* TexCoord2sv: marshalled asynchronously */
316396c5ddc4Srjsstruct marshal_cmd_TexCoord2sv
316496c5ddc4Srjs{
316596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
316696c5ddc4Srjs   GLshort v[2];
316796c5ddc4Srjs};
316896c5ddc4Srjsuint32_t
316996c5ddc4Srjs_mesa_unmarshal_TexCoord2sv(struct gl_context *ctx, const struct marshal_cmd_TexCoord2sv *cmd, const uint64_t *last)
317096c5ddc4Srjs{
317196c5ddc4Srjs   const GLshort * v = cmd->v;
317296c5ddc4Srjs   CALL_TexCoord2sv(ctx->CurrentServerDispatch, (v));
317396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord2sv), 8) / 8);
317496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
317596c5ddc4Srjs   return cmd_size;
317696c5ddc4Srjs}
317796c5ddc4Srjsvoid GLAPIENTRY
317896c5ddc4Srjs_mesa_marshal_TexCoord2sv(const GLshort * v)
317996c5ddc4Srjs{
318096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
318196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord2sv);
318296c5ddc4Srjs   struct marshal_cmd_TexCoord2sv *cmd;
318396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord2sv, cmd_size);
318496c5ddc4Srjs   memcpy(cmd->v, v, 2 * sizeof(GLshort));
318596c5ddc4Srjs}
318696c5ddc4Srjs
318796c5ddc4Srjs
318896c5ddc4Srjs/* TexCoord3d: marshalled asynchronously */
318996c5ddc4Srjsstruct marshal_cmd_TexCoord3d
319096c5ddc4Srjs{
319196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
319296c5ddc4Srjs   GLdouble s;
319396c5ddc4Srjs   GLdouble t;
319496c5ddc4Srjs   GLdouble r;
319596c5ddc4Srjs};
319696c5ddc4Srjsuint32_t
319796c5ddc4Srjs_mesa_unmarshal_TexCoord3d(struct gl_context *ctx, const struct marshal_cmd_TexCoord3d *cmd, const uint64_t *last)
319896c5ddc4Srjs{
319996c5ddc4Srjs   GLdouble s = cmd->s;
320096c5ddc4Srjs   GLdouble t = cmd->t;
320196c5ddc4Srjs   GLdouble r = cmd->r;
320296c5ddc4Srjs   CALL_TexCoord3d(ctx->CurrentServerDispatch, (s, t, r));
320396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord3d), 8) / 8);
320496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
320596c5ddc4Srjs   return cmd_size;
320696c5ddc4Srjs}
320796c5ddc4Srjsvoid GLAPIENTRY
320896c5ddc4Srjs_mesa_marshal_TexCoord3d(GLdouble s, GLdouble t, GLdouble r)
320996c5ddc4Srjs{
321096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
321196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord3d);
321296c5ddc4Srjs   struct marshal_cmd_TexCoord3d *cmd;
321396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord3d, cmd_size);
321496c5ddc4Srjs   cmd->s = s;
321596c5ddc4Srjs   cmd->t = t;
321696c5ddc4Srjs   cmd->r = r;
321796c5ddc4Srjs}
321896c5ddc4Srjs
321996c5ddc4Srjs
322096c5ddc4Srjs/* TexCoord3dv: marshalled asynchronously */
322196c5ddc4Srjsstruct marshal_cmd_TexCoord3dv
322296c5ddc4Srjs{
322396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
322496c5ddc4Srjs   GLdouble v[3];
322596c5ddc4Srjs};
322696c5ddc4Srjsuint32_t
322796c5ddc4Srjs_mesa_unmarshal_TexCoord3dv(struct gl_context *ctx, const struct marshal_cmd_TexCoord3dv *cmd, const uint64_t *last)
322896c5ddc4Srjs{
322996c5ddc4Srjs   const GLdouble * v = cmd->v;
323096c5ddc4Srjs   CALL_TexCoord3dv(ctx->CurrentServerDispatch, (v));
323196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord3dv), 8) / 8);
323296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
323396c5ddc4Srjs   return cmd_size;
323496c5ddc4Srjs}
323596c5ddc4Srjsvoid GLAPIENTRY
323696c5ddc4Srjs_mesa_marshal_TexCoord3dv(const GLdouble * v)
323796c5ddc4Srjs{
323896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
323996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord3dv);
324096c5ddc4Srjs   struct marshal_cmd_TexCoord3dv *cmd;
324196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord3dv, cmd_size);
324296c5ddc4Srjs   memcpy(cmd->v, v, 3 * sizeof(GLdouble));
324396c5ddc4Srjs}
324496c5ddc4Srjs
324596c5ddc4Srjs
324696c5ddc4Srjs/* TexCoord3f: marshalled asynchronously */
324796c5ddc4Srjsstruct marshal_cmd_TexCoord3f
324896c5ddc4Srjs{
324996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
325096c5ddc4Srjs   GLfloat s;
325196c5ddc4Srjs   GLfloat t;
325296c5ddc4Srjs   GLfloat r;
325396c5ddc4Srjs};
325496c5ddc4Srjsuint32_t
325596c5ddc4Srjs_mesa_unmarshal_TexCoord3f(struct gl_context *ctx, const struct marshal_cmd_TexCoord3f *cmd, const uint64_t *last)
325696c5ddc4Srjs{
325796c5ddc4Srjs   GLfloat s = cmd->s;
325896c5ddc4Srjs   GLfloat t = cmd->t;
325996c5ddc4Srjs   GLfloat r = cmd->r;
326096c5ddc4Srjs   CALL_TexCoord3f(ctx->CurrentServerDispatch, (s, t, r));
326196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord3f), 8) / 8);
326296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
326396c5ddc4Srjs   return cmd_size;
326496c5ddc4Srjs}
326596c5ddc4Srjsvoid GLAPIENTRY
326696c5ddc4Srjs_mesa_marshal_TexCoord3f(GLfloat s, GLfloat t, GLfloat r)
326796c5ddc4Srjs{
326896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
326996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord3f);
327096c5ddc4Srjs   struct marshal_cmd_TexCoord3f *cmd;
327196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord3f, cmd_size);
327296c5ddc4Srjs   cmd->s = s;
327396c5ddc4Srjs   cmd->t = t;
327496c5ddc4Srjs   cmd->r = r;
327596c5ddc4Srjs}
327696c5ddc4Srjs
327796c5ddc4Srjs
327896c5ddc4Srjs/* TexCoord3fv: marshalled asynchronously */
327996c5ddc4Srjsstruct marshal_cmd_TexCoord3fv
328096c5ddc4Srjs{
328196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
328296c5ddc4Srjs   GLfloat v[3];
328396c5ddc4Srjs};
328496c5ddc4Srjsuint32_t
328596c5ddc4Srjs_mesa_unmarshal_TexCoord3fv(struct gl_context *ctx, const struct marshal_cmd_TexCoord3fv *cmd, const uint64_t *last)
328696c5ddc4Srjs{
328796c5ddc4Srjs   const GLfloat * v = cmd->v;
328896c5ddc4Srjs   CALL_TexCoord3fv(ctx->CurrentServerDispatch, (v));
328996c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord3fv), 8) / 8);
329096c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
329196c5ddc4Srjs   return cmd_size;
329296c5ddc4Srjs}
329396c5ddc4Srjsvoid GLAPIENTRY
329496c5ddc4Srjs_mesa_marshal_TexCoord3fv(const GLfloat * v)
329596c5ddc4Srjs{
329696c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
329796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord3fv);
329896c5ddc4Srjs   struct marshal_cmd_TexCoord3fv *cmd;
329996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord3fv, cmd_size);
330096c5ddc4Srjs   memcpy(cmd->v, v, 3 * sizeof(GLfloat));
330196c5ddc4Srjs}
330296c5ddc4Srjs
330396c5ddc4Srjs
330496c5ddc4Srjs/* TexCoord3i: marshalled asynchronously */
330596c5ddc4Srjsstruct marshal_cmd_TexCoord3i
330696c5ddc4Srjs{
330796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
330896c5ddc4Srjs   GLint s;
330996c5ddc4Srjs   GLint t;
331096c5ddc4Srjs   GLint r;
331196c5ddc4Srjs};
331296c5ddc4Srjsuint32_t
331396c5ddc4Srjs_mesa_unmarshal_TexCoord3i(struct gl_context *ctx, const struct marshal_cmd_TexCoord3i *cmd, const uint64_t *last)
331496c5ddc4Srjs{
331596c5ddc4Srjs   GLint s = cmd->s;
331696c5ddc4Srjs   GLint t = cmd->t;
331796c5ddc4Srjs   GLint r = cmd->r;
331896c5ddc4Srjs   CALL_TexCoord3i(ctx->CurrentServerDispatch, (s, t, r));
331996c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord3i), 8) / 8);
332096c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
332196c5ddc4Srjs   return cmd_size;
332296c5ddc4Srjs}
332396c5ddc4Srjsvoid GLAPIENTRY
332496c5ddc4Srjs_mesa_marshal_TexCoord3i(GLint s, GLint t, GLint r)
332596c5ddc4Srjs{
332696c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
332796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord3i);
332896c5ddc4Srjs   struct marshal_cmd_TexCoord3i *cmd;
332996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord3i, cmd_size);
333096c5ddc4Srjs   cmd->s = s;
333196c5ddc4Srjs   cmd->t = t;
333296c5ddc4Srjs   cmd->r = r;
333396c5ddc4Srjs}
333496c5ddc4Srjs
333596c5ddc4Srjs
333696c5ddc4Srjs/* TexCoord3iv: marshalled asynchronously */
333796c5ddc4Srjsstruct marshal_cmd_TexCoord3iv
333896c5ddc4Srjs{
333996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
334096c5ddc4Srjs   GLint v[3];
334196c5ddc4Srjs};
334296c5ddc4Srjsuint32_t
334396c5ddc4Srjs_mesa_unmarshal_TexCoord3iv(struct gl_context *ctx, const struct marshal_cmd_TexCoord3iv *cmd, const uint64_t *last)
334496c5ddc4Srjs{
334596c5ddc4Srjs   const GLint * v = cmd->v;
334696c5ddc4Srjs   CALL_TexCoord3iv(ctx->CurrentServerDispatch, (v));
334796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord3iv), 8) / 8);
334896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
334996c5ddc4Srjs   return cmd_size;
335096c5ddc4Srjs}
335196c5ddc4Srjsvoid GLAPIENTRY
335296c5ddc4Srjs_mesa_marshal_TexCoord3iv(const GLint * v)
335396c5ddc4Srjs{
335496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
335596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord3iv);
335696c5ddc4Srjs   struct marshal_cmd_TexCoord3iv *cmd;
335796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord3iv, cmd_size);
335896c5ddc4Srjs   memcpy(cmd->v, v, 3 * sizeof(GLint));
335996c5ddc4Srjs}
336096c5ddc4Srjs
336196c5ddc4Srjs
336296c5ddc4Srjs/* TexCoord3s: marshalled asynchronously */
336396c5ddc4Srjsstruct marshal_cmd_TexCoord3s
336496c5ddc4Srjs{
336596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
336696c5ddc4Srjs   GLshort s;
336796c5ddc4Srjs   GLshort t;
336896c5ddc4Srjs   GLshort r;
336996c5ddc4Srjs};
337096c5ddc4Srjsuint32_t
337196c5ddc4Srjs_mesa_unmarshal_TexCoord3s(struct gl_context *ctx, const struct marshal_cmd_TexCoord3s *cmd, const uint64_t *last)
337296c5ddc4Srjs{
337396c5ddc4Srjs   GLshort s = cmd->s;
337496c5ddc4Srjs   GLshort t = cmd->t;
337596c5ddc4Srjs   GLshort r = cmd->r;
337696c5ddc4Srjs   CALL_TexCoord3s(ctx->CurrentServerDispatch, (s, t, r));
337796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord3s), 8) / 8);
337896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
337996c5ddc4Srjs   return cmd_size;
338096c5ddc4Srjs}
338196c5ddc4Srjsvoid GLAPIENTRY
338296c5ddc4Srjs_mesa_marshal_TexCoord3s(GLshort s, GLshort t, GLshort r)
338396c5ddc4Srjs{
338496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
338596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord3s);
338696c5ddc4Srjs   struct marshal_cmd_TexCoord3s *cmd;
338796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord3s, cmd_size);
338896c5ddc4Srjs   cmd->s = s;
338996c5ddc4Srjs   cmd->t = t;
339096c5ddc4Srjs   cmd->r = r;
339196c5ddc4Srjs}
339296c5ddc4Srjs
339396c5ddc4Srjs
339496c5ddc4Srjs/* TexCoord3sv: marshalled asynchronously */
339596c5ddc4Srjsstruct marshal_cmd_TexCoord3sv
339696c5ddc4Srjs{
339796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
339896c5ddc4Srjs   GLshort v[3];
339996c5ddc4Srjs};
340096c5ddc4Srjsuint32_t
340196c5ddc4Srjs_mesa_unmarshal_TexCoord3sv(struct gl_context *ctx, const struct marshal_cmd_TexCoord3sv *cmd, const uint64_t *last)
340296c5ddc4Srjs{
340396c5ddc4Srjs   const GLshort * v = cmd->v;
340496c5ddc4Srjs   CALL_TexCoord3sv(ctx->CurrentServerDispatch, (v));
340596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord3sv), 8) / 8);
340696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
340796c5ddc4Srjs   return cmd_size;
340896c5ddc4Srjs}
340996c5ddc4Srjsvoid GLAPIENTRY
341096c5ddc4Srjs_mesa_marshal_TexCoord3sv(const GLshort * v)
341196c5ddc4Srjs{
341296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
341396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord3sv);
341496c5ddc4Srjs   struct marshal_cmd_TexCoord3sv *cmd;
341596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord3sv, cmd_size);
341696c5ddc4Srjs   memcpy(cmd->v, v, 3 * sizeof(GLshort));
341796c5ddc4Srjs}
341896c5ddc4Srjs
341996c5ddc4Srjs
342096c5ddc4Srjs/* TexCoord4d: marshalled asynchronously */
342196c5ddc4Srjsstruct marshal_cmd_TexCoord4d
342296c5ddc4Srjs{
342396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
342496c5ddc4Srjs   GLdouble s;
342596c5ddc4Srjs   GLdouble t;
342696c5ddc4Srjs   GLdouble r;
342796c5ddc4Srjs   GLdouble q;
342896c5ddc4Srjs};
342996c5ddc4Srjsuint32_t
343096c5ddc4Srjs_mesa_unmarshal_TexCoord4d(struct gl_context *ctx, const struct marshal_cmd_TexCoord4d *cmd, const uint64_t *last)
343196c5ddc4Srjs{
343296c5ddc4Srjs   GLdouble s = cmd->s;
343396c5ddc4Srjs   GLdouble t = cmd->t;
343496c5ddc4Srjs   GLdouble r = cmd->r;
343596c5ddc4Srjs   GLdouble q = cmd->q;
343696c5ddc4Srjs   CALL_TexCoord4d(ctx->CurrentServerDispatch, (s, t, r, q));
343796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord4d), 8) / 8);
343896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
343996c5ddc4Srjs   return cmd_size;
344096c5ddc4Srjs}
344196c5ddc4Srjsvoid GLAPIENTRY
344296c5ddc4Srjs_mesa_marshal_TexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q)
344396c5ddc4Srjs{
344496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
344596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord4d);
344696c5ddc4Srjs   struct marshal_cmd_TexCoord4d *cmd;
344796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord4d, cmd_size);
344896c5ddc4Srjs   cmd->s = s;
344996c5ddc4Srjs   cmd->t = t;
345096c5ddc4Srjs   cmd->r = r;
345196c5ddc4Srjs   cmd->q = q;
345296c5ddc4Srjs}
345396c5ddc4Srjs
345496c5ddc4Srjs
345596c5ddc4Srjs/* TexCoord4dv: marshalled asynchronously */
345696c5ddc4Srjsstruct marshal_cmd_TexCoord4dv
345796c5ddc4Srjs{
345896c5ddc4Srjs   struct marshal_cmd_base cmd_base;
345996c5ddc4Srjs   GLdouble v[4];
346096c5ddc4Srjs};
346196c5ddc4Srjsuint32_t
346296c5ddc4Srjs_mesa_unmarshal_TexCoord4dv(struct gl_context *ctx, const struct marshal_cmd_TexCoord4dv *cmd, const uint64_t *last)
346396c5ddc4Srjs{
346496c5ddc4Srjs   const GLdouble * v = cmd->v;
346596c5ddc4Srjs   CALL_TexCoord4dv(ctx->CurrentServerDispatch, (v));
346696c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord4dv), 8) / 8);
346796c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
346896c5ddc4Srjs   return cmd_size;
346996c5ddc4Srjs}
347096c5ddc4Srjsvoid GLAPIENTRY
347196c5ddc4Srjs_mesa_marshal_TexCoord4dv(const GLdouble * v)
347296c5ddc4Srjs{
347396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
347496c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord4dv);
347596c5ddc4Srjs   struct marshal_cmd_TexCoord4dv *cmd;
347696c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord4dv, cmd_size);
347796c5ddc4Srjs   memcpy(cmd->v, v, 4 * sizeof(GLdouble));
347896c5ddc4Srjs}
347996c5ddc4Srjs
348096c5ddc4Srjs
348196c5ddc4Srjs/* TexCoord4f: marshalled asynchronously */
348296c5ddc4Srjsstruct marshal_cmd_TexCoord4f
348396c5ddc4Srjs{
348496c5ddc4Srjs   struct marshal_cmd_base cmd_base;
348596c5ddc4Srjs   GLfloat s;
348696c5ddc4Srjs   GLfloat t;
348796c5ddc4Srjs   GLfloat r;
348896c5ddc4Srjs   GLfloat q;
348996c5ddc4Srjs};
349096c5ddc4Srjsuint32_t
349196c5ddc4Srjs_mesa_unmarshal_TexCoord4f(struct gl_context *ctx, const struct marshal_cmd_TexCoord4f *cmd, const uint64_t *last)
349296c5ddc4Srjs{
349396c5ddc4Srjs   GLfloat s = cmd->s;
349496c5ddc4Srjs   GLfloat t = cmd->t;
349596c5ddc4Srjs   GLfloat r = cmd->r;
349696c5ddc4Srjs   GLfloat q = cmd->q;
349796c5ddc4Srjs   CALL_TexCoord4f(ctx->CurrentServerDispatch, (s, t, r, q));
349896c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord4f), 8) / 8);
349996c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
350096c5ddc4Srjs   return cmd_size;
350196c5ddc4Srjs}
350296c5ddc4Srjsvoid GLAPIENTRY
350396c5ddc4Srjs_mesa_marshal_TexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q)
350496c5ddc4Srjs{
350596c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
350696c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord4f);
350796c5ddc4Srjs   struct marshal_cmd_TexCoord4f *cmd;
350896c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord4f, cmd_size);
350996c5ddc4Srjs   cmd->s = s;
351096c5ddc4Srjs   cmd->t = t;
351196c5ddc4Srjs   cmd->r = r;
351296c5ddc4Srjs   cmd->q = q;
351396c5ddc4Srjs}
351496c5ddc4Srjs
351596c5ddc4Srjs
351696c5ddc4Srjs/* TexCoord4fv: marshalled asynchronously */
351796c5ddc4Srjsstruct marshal_cmd_TexCoord4fv
351896c5ddc4Srjs{
351996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
352096c5ddc4Srjs   GLfloat v[4];
352196c5ddc4Srjs};
352296c5ddc4Srjsuint32_t
352396c5ddc4Srjs_mesa_unmarshal_TexCoord4fv(struct gl_context *ctx, const struct marshal_cmd_TexCoord4fv *cmd, const uint64_t *last)
352496c5ddc4Srjs{
352596c5ddc4Srjs   const GLfloat * v = cmd->v;
352696c5ddc4Srjs   CALL_TexCoord4fv(ctx->CurrentServerDispatch, (v));
352796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord4fv), 8) / 8);
352896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
352996c5ddc4Srjs   return cmd_size;
353096c5ddc4Srjs}
353196c5ddc4Srjsvoid GLAPIENTRY
353296c5ddc4Srjs_mesa_marshal_TexCoord4fv(const GLfloat * v)
353396c5ddc4Srjs{
353496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
353596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord4fv);
353696c5ddc4Srjs   struct marshal_cmd_TexCoord4fv *cmd;
353796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord4fv, cmd_size);
353896c5ddc4Srjs   memcpy(cmd->v, v, 4 * sizeof(GLfloat));
353996c5ddc4Srjs}
354096c5ddc4Srjs
354196c5ddc4Srjs
354296c5ddc4Srjs/* TexCoord4i: marshalled asynchronously */
354396c5ddc4Srjsstruct marshal_cmd_TexCoord4i
354496c5ddc4Srjs{
354596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
354696c5ddc4Srjs   GLint s;
354796c5ddc4Srjs   GLint t;
354896c5ddc4Srjs   GLint r;
354996c5ddc4Srjs   GLint q;
355096c5ddc4Srjs};
355196c5ddc4Srjsuint32_t
355296c5ddc4Srjs_mesa_unmarshal_TexCoord4i(struct gl_context *ctx, const struct marshal_cmd_TexCoord4i *cmd, const uint64_t *last)
355396c5ddc4Srjs{
355496c5ddc4Srjs   GLint s = cmd->s;
355596c5ddc4Srjs   GLint t = cmd->t;
355696c5ddc4Srjs   GLint r = cmd->r;
355796c5ddc4Srjs   GLint q = cmd->q;
355896c5ddc4Srjs   CALL_TexCoord4i(ctx->CurrentServerDispatch, (s, t, r, q));
355996c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord4i), 8) / 8);
356096c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
356196c5ddc4Srjs   return cmd_size;
356296c5ddc4Srjs}
356396c5ddc4Srjsvoid GLAPIENTRY
356496c5ddc4Srjs_mesa_marshal_TexCoord4i(GLint s, GLint t, GLint r, GLint q)
356596c5ddc4Srjs{
356696c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
356796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord4i);
356896c5ddc4Srjs   struct marshal_cmd_TexCoord4i *cmd;
356996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord4i, cmd_size);
357096c5ddc4Srjs   cmd->s = s;
357196c5ddc4Srjs   cmd->t = t;
357296c5ddc4Srjs   cmd->r = r;
357396c5ddc4Srjs   cmd->q = q;
357496c5ddc4Srjs}
357596c5ddc4Srjs
357696c5ddc4Srjs
357796c5ddc4Srjs/* TexCoord4iv: marshalled asynchronously */
357896c5ddc4Srjsstruct marshal_cmd_TexCoord4iv
357996c5ddc4Srjs{
358096c5ddc4Srjs   struct marshal_cmd_base cmd_base;
358196c5ddc4Srjs   GLint v[4];
358296c5ddc4Srjs};
358396c5ddc4Srjsuint32_t
358496c5ddc4Srjs_mesa_unmarshal_TexCoord4iv(struct gl_context *ctx, const struct marshal_cmd_TexCoord4iv *cmd, const uint64_t *last)
358596c5ddc4Srjs{
358696c5ddc4Srjs   const GLint * v = cmd->v;
358796c5ddc4Srjs   CALL_TexCoord4iv(ctx->CurrentServerDispatch, (v));
358896c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord4iv), 8) / 8);
358996c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
359096c5ddc4Srjs   return cmd_size;
359196c5ddc4Srjs}
359296c5ddc4Srjsvoid GLAPIENTRY
359396c5ddc4Srjs_mesa_marshal_TexCoord4iv(const GLint * v)
359496c5ddc4Srjs{
359596c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
359696c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord4iv);
359796c5ddc4Srjs   struct marshal_cmd_TexCoord4iv *cmd;
359896c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord4iv, cmd_size);
359996c5ddc4Srjs   memcpy(cmd->v, v, 4 * sizeof(GLint));
360096c5ddc4Srjs}
360196c5ddc4Srjs
360296c5ddc4Srjs
360396c5ddc4Srjs/* TexCoord4s: marshalled asynchronously */
360496c5ddc4Srjsstruct marshal_cmd_TexCoord4s
360596c5ddc4Srjs{
360696c5ddc4Srjs   struct marshal_cmd_base cmd_base;
360796c5ddc4Srjs   GLshort s;
360896c5ddc4Srjs   GLshort t;
360996c5ddc4Srjs   GLshort r;
361096c5ddc4Srjs   GLshort q;
361196c5ddc4Srjs};
361296c5ddc4Srjsuint32_t
361396c5ddc4Srjs_mesa_unmarshal_TexCoord4s(struct gl_context *ctx, const struct marshal_cmd_TexCoord4s *cmd, const uint64_t *last)
361496c5ddc4Srjs{
361596c5ddc4Srjs   GLshort s = cmd->s;
361696c5ddc4Srjs   GLshort t = cmd->t;
361796c5ddc4Srjs   GLshort r = cmd->r;
361896c5ddc4Srjs   GLshort q = cmd->q;
361996c5ddc4Srjs   CALL_TexCoord4s(ctx->CurrentServerDispatch, (s, t, r, q));
362096c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord4s), 8) / 8);
362196c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
362296c5ddc4Srjs   return cmd_size;
362396c5ddc4Srjs}
362496c5ddc4Srjsvoid GLAPIENTRY
362596c5ddc4Srjs_mesa_marshal_TexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q)
362696c5ddc4Srjs{
362796c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
362896c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord4s);
362996c5ddc4Srjs   struct marshal_cmd_TexCoord4s *cmd;
363096c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord4s, cmd_size);
363196c5ddc4Srjs   cmd->s = s;
363296c5ddc4Srjs   cmd->t = t;
363396c5ddc4Srjs   cmd->r = r;
363496c5ddc4Srjs   cmd->q = q;
363596c5ddc4Srjs}
363696c5ddc4Srjs
363796c5ddc4Srjs
363896c5ddc4Srjs/* TexCoord4sv: marshalled asynchronously */
363996c5ddc4Srjsstruct marshal_cmd_TexCoord4sv
364096c5ddc4Srjs{
364196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
364296c5ddc4Srjs   GLshort v[4];
364396c5ddc4Srjs};
364496c5ddc4Srjsuint32_t
364596c5ddc4Srjs_mesa_unmarshal_TexCoord4sv(struct gl_context *ctx, const struct marshal_cmd_TexCoord4sv *cmd, const uint64_t *last)
364696c5ddc4Srjs{
364796c5ddc4Srjs   const GLshort * v = cmd->v;
364896c5ddc4Srjs   CALL_TexCoord4sv(ctx->CurrentServerDispatch, (v));
364996c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexCoord4sv), 8) / 8);
365096c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
365196c5ddc4Srjs   return cmd_size;
365296c5ddc4Srjs}
365396c5ddc4Srjsvoid GLAPIENTRY
365496c5ddc4Srjs_mesa_marshal_TexCoord4sv(const GLshort * v)
365596c5ddc4Srjs{
365696c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
365796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexCoord4sv);
365896c5ddc4Srjs   struct marshal_cmd_TexCoord4sv *cmd;
365996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexCoord4sv, cmd_size);
366096c5ddc4Srjs   memcpy(cmd->v, v, 4 * sizeof(GLshort));
366196c5ddc4Srjs}
366296c5ddc4Srjs
366396c5ddc4Srjs
366496c5ddc4Srjs/* Vertex2d: marshalled asynchronously */
366596c5ddc4Srjsstruct marshal_cmd_Vertex2d
366696c5ddc4Srjs{
366796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
366896c5ddc4Srjs   GLdouble x;
366996c5ddc4Srjs   GLdouble y;
367096c5ddc4Srjs};
367196c5ddc4Srjsuint32_t
367296c5ddc4Srjs_mesa_unmarshal_Vertex2d(struct gl_context *ctx, const struct marshal_cmd_Vertex2d *cmd, const uint64_t *last)
367396c5ddc4Srjs{
367496c5ddc4Srjs   GLdouble x = cmd->x;
367596c5ddc4Srjs   GLdouble y = cmd->y;
367696c5ddc4Srjs   CALL_Vertex2d(ctx->CurrentServerDispatch, (x, y));
367796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Vertex2d), 8) / 8);
367896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
367996c5ddc4Srjs   return cmd_size;
368096c5ddc4Srjs}
368196c5ddc4Srjsvoid GLAPIENTRY
368296c5ddc4Srjs_mesa_marshal_Vertex2d(GLdouble x, GLdouble y)
368396c5ddc4Srjs{
368496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
368596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Vertex2d);
368696c5ddc4Srjs   struct marshal_cmd_Vertex2d *cmd;
368796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Vertex2d, cmd_size);
368896c5ddc4Srjs   cmd->x = x;
368996c5ddc4Srjs   cmd->y = y;
369096c5ddc4Srjs}
369196c5ddc4Srjs
369296c5ddc4Srjs
369396c5ddc4Srjs/* Vertex2dv: marshalled asynchronously */
369496c5ddc4Srjsstruct marshal_cmd_Vertex2dv
369596c5ddc4Srjs{
369696c5ddc4Srjs   struct marshal_cmd_base cmd_base;
369796c5ddc4Srjs   GLdouble v[2];
369896c5ddc4Srjs};
369996c5ddc4Srjsuint32_t
370096c5ddc4Srjs_mesa_unmarshal_Vertex2dv(struct gl_context *ctx, const struct marshal_cmd_Vertex2dv *cmd, const uint64_t *last)
370196c5ddc4Srjs{
370296c5ddc4Srjs   const GLdouble * v = cmd->v;
370396c5ddc4Srjs   CALL_Vertex2dv(ctx->CurrentServerDispatch, (v));
370496c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Vertex2dv), 8) / 8);
370596c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
370696c5ddc4Srjs   return cmd_size;
370796c5ddc4Srjs}
370896c5ddc4Srjsvoid GLAPIENTRY
370996c5ddc4Srjs_mesa_marshal_Vertex2dv(const GLdouble * v)
371096c5ddc4Srjs{
371196c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
371296c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Vertex2dv);
371396c5ddc4Srjs   struct marshal_cmd_Vertex2dv *cmd;
371496c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Vertex2dv, cmd_size);
371596c5ddc4Srjs   memcpy(cmd->v, v, 2 * sizeof(GLdouble));
371696c5ddc4Srjs}
371796c5ddc4Srjs
371896c5ddc4Srjs
371996c5ddc4Srjs/* Vertex2f: marshalled asynchronously */
372096c5ddc4Srjsstruct marshal_cmd_Vertex2f
372196c5ddc4Srjs{
372296c5ddc4Srjs   struct marshal_cmd_base cmd_base;
372396c5ddc4Srjs   GLfloat x;
372496c5ddc4Srjs   GLfloat y;
372596c5ddc4Srjs};
372696c5ddc4Srjsuint32_t
372796c5ddc4Srjs_mesa_unmarshal_Vertex2f(struct gl_context *ctx, const struct marshal_cmd_Vertex2f *cmd, const uint64_t *last)
372896c5ddc4Srjs{
372996c5ddc4Srjs   GLfloat x = cmd->x;
373096c5ddc4Srjs   GLfloat y = cmd->y;
373196c5ddc4Srjs   CALL_Vertex2f(ctx->CurrentServerDispatch, (x, y));
373296c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Vertex2f), 8) / 8);
373396c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
373496c5ddc4Srjs   return cmd_size;
373596c5ddc4Srjs}
373696c5ddc4Srjsvoid GLAPIENTRY
373796c5ddc4Srjs_mesa_marshal_Vertex2f(GLfloat x, GLfloat y)
373896c5ddc4Srjs{
373996c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
374096c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Vertex2f);
374196c5ddc4Srjs   struct marshal_cmd_Vertex2f *cmd;
374296c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Vertex2f, cmd_size);
374396c5ddc4Srjs   cmd->x = x;
374496c5ddc4Srjs   cmd->y = y;
374596c5ddc4Srjs}
374696c5ddc4Srjs
374796c5ddc4Srjs
374896c5ddc4Srjs/* Vertex2fv: marshalled asynchronously */
374996c5ddc4Srjsstruct marshal_cmd_Vertex2fv
375096c5ddc4Srjs{
375196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
375296c5ddc4Srjs   GLfloat v[2];
375396c5ddc4Srjs};
375496c5ddc4Srjsuint32_t
375596c5ddc4Srjs_mesa_unmarshal_Vertex2fv(struct gl_context *ctx, const struct marshal_cmd_Vertex2fv *cmd, const uint64_t *last)
375696c5ddc4Srjs{
375796c5ddc4Srjs   const GLfloat * v = cmd->v;
375896c5ddc4Srjs   CALL_Vertex2fv(ctx->CurrentServerDispatch, (v));
375996c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Vertex2fv), 8) / 8);
376096c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
376196c5ddc4Srjs   return cmd_size;
376296c5ddc4Srjs}
376396c5ddc4Srjsvoid GLAPIENTRY
376496c5ddc4Srjs_mesa_marshal_Vertex2fv(const GLfloat * v)
376596c5ddc4Srjs{
376696c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
376796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Vertex2fv);
376896c5ddc4Srjs   struct marshal_cmd_Vertex2fv *cmd;
376996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Vertex2fv, cmd_size);
377096c5ddc4Srjs   memcpy(cmd->v, v, 2 * sizeof(GLfloat));
377196c5ddc4Srjs}
377296c5ddc4Srjs
377396c5ddc4Srjs
377496c5ddc4Srjs/* Vertex2i: marshalled asynchronously */
377596c5ddc4Srjsstruct marshal_cmd_Vertex2i
377696c5ddc4Srjs{
377796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
377896c5ddc4Srjs   GLint x;
377996c5ddc4Srjs   GLint y;
378096c5ddc4Srjs};
378196c5ddc4Srjsuint32_t
378296c5ddc4Srjs_mesa_unmarshal_Vertex2i(struct gl_context *ctx, const struct marshal_cmd_Vertex2i *cmd, const uint64_t *last)
378396c5ddc4Srjs{
378496c5ddc4Srjs   GLint x = cmd->x;
378596c5ddc4Srjs   GLint y = cmd->y;
378696c5ddc4Srjs   CALL_Vertex2i(ctx->CurrentServerDispatch, (x, y));
378796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Vertex2i), 8) / 8);
378896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
378996c5ddc4Srjs   return cmd_size;
379096c5ddc4Srjs}
379196c5ddc4Srjsvoid GLAPIENTRY
379296c5ddc4Srjs_mesa_marshal_Vertex2i(GLint x, GLint y)
379396c5ddc4Srjs{
379496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
379596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Vertex2i);
379696c5ddc4Srjs   struct marshal_cmd_Vertex2i *cmd;
379796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Vertex2i, cmd_size);
379896c5ddc4Srjs   cmd->x = x;
379996c5ddc4Srjs   cmd->y = y;
380096c5ddc4Srjs}
380196c5ddc4Srjs
380296c5ddc4Srjs
380396c5ddc4Srjs/* Vertex2iv: marshalled asynchronously */
380496c5ddc4Srjsstruct marshal_cmd_Vertex2iv
380596c5ddc4Srjs{
380696c5ddc4Srjs   struct marshal_cmd_base cmd_base;
380796c5ddc4Srjs   GLint v[2];
380896c5ddc4Srjs};
380996c5ddc4Srjsuint32_t
381096c5ddc4Srjs_mesa_unmarshal_Vertex2iv(struct gl_context *ctx, const struct marshal_cmd_Vertex2iv *cmd, const uint64_t *last)
381196c5ddc4Srjs{
381296c5ddc4Srjs   const GLint * v = cmd->v;
381396c5ddc4Srjs   CALL_Vertex2iv(ctx->CurrentServerDispatch, (v));
381496c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Vertex2iv), 8) / 8);
381596c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
381696c5ddc4Srjs   return cmd_size;
381796c5ddc4Srjs}
381896c5ddc4Srjsvoid GLAPIENTRY
381996c5ddc4Srjs_mesa_marshal_Vertex2iv(const GLint * v)
382096c5ddc4Srjs{
382196c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
382296c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Vertex2iv);
382396c5ddc4Srjs   struct marshal_cmd_Vertex2iv *cmd;
382496c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Vertex2iv, cmd_size);
382596c5ddc4Srjs   memcpy(cmd->v, v, 2 * sizeof(GLint));
382696c5ddc4Srjs}
382796c5ddc4Srjs
382896c5ddc4Srjs
382996c5ddc4Srjs/* Vertex2s: marshalled asynchronously */
383096c5ddc4Srjsstruct marshal_cmd_Vertex2s
383196c5ddc4Srjs{
383296c5ddc4Srjs   struct marshal_cmd_base cmd_base;
383396c5ddc4Srjs   GLshort x;
383496c5ddc4Srjs   GLshort y;
383596c5ddc4Srjs};
383696c5ddc4Srjsuint32_t
383796c5ddc4Srjs_mesa_unmarshal_Vertex2s(struct gl_context *ctx, const struct marshal_cmd_Vertex2s *cmd, const uint64_t *last)
383896c5ddc4Srjs{
383996c5ddc4Srjs   GLshort x = cmd->x;
384096c5ddc4Srjs   GLshort y = cmd->y;
384196c5ddc4Srjs   CALL_Vertex2s(ctx->CurrentServerDispatch, (x, y));
384296c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Vertex2s), 8) / 8);
384396c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
384496c5ddc4Srjs   return cmd_size;
384596c5ddc4Srjs}
384696c5ddc4Srjsvoid GLAPIENTRY
384796c5ddc4Srjs_mesa_marshal_Vertex2s(GLshort x, GLshort y)
384896c5ddc4Srjs{
384996c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
385096c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Vertex2s);
385196c5ddc4Srjs   struct marshal_cmd_Vertex2s *cmd;
385296c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Vertex2s, cmd_size);
385396c5ddc4Srjs   cmd->x = x;
385496c5ddc4Srjs   cmd->y = y;
385596c5ddc4Srjs}
385696c5ddc4Srjs
385796c5ddc4Srjs
385896c5ddc4Srjs/* Vertex2sv: marshalled asynchronously */
385996c5ddc4Srjsstruct marshal_cmd_Vertex2sv
386096c5ddc4Srjs{
386196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
386296c5ddc4Srjs   GLshort v[2];
386396c5ddc4Srjs};
386496c5ddc4Srjsuint32_t
386596c5ddc4Srjs_mesa_unmarshal_Vertex2sv(struct gl_context *ctx, const struct marshal_cmd_Vertex2sv *cmd, const uint64_t *last)
386696c5ddc4Srjs{
386796c5ddc4Srjs   const GLshort * v = cmd->v;
386896c5ddc4Srjs   CALL_Vertex2sv(ctx->CurrentServerDispatch, (v));
386996c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Vertex2sv), 8) / 8);
387096c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
387196c5ddc4Srjs   return cmd_size;
387296c5ddc4Srjs}
387396c5ddc4Srjsvoid GLAPIENTRY
387496c5ddc4Srjs_mesa_marshal_Vertex2sv(const GLshort * v)
387596c5ddc4Srjs{
387696c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
387796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Vertex2sv);
387896c5ddc4Srjs   struct marshal_cmd_Vertex2sv *cmd;
387996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Vertex2sv, cmd_size);
388096c5ddc4Srjs   memcpy(cmd->v, v, 2 * sizeof(GLshort));
388196c5ddc4Srjs}
388296c5ddc4Srjs
388396c5ddc4Srjs
388496c5ddc4Srjs/* Vertex3d: marshalled asynchronously */
388596c5ddc4Srjsstruct marshal_cmd_Vertex3d
388696c5ddc4Srjs{
388796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
388896c5ddc4Srjs   GLdouble x;
388996c5ddc4Srjs   GLdouble y;
389096c5ddc4Srjs   GLdouble z;
389196c5ddc4Srjs};
389296c5ddc4Srjsuint32_t
389396c5ddc4Srjs_mesa_unmarshal_Vertex3d(struct gl_context *ctx, const struct marshal_cmd_Vertex3d *cmd, const uint64_t *last)
389496c5ddc4Srjs{
389596c5ddc4Srjs   GLdouble x = cmd->x;
389696c5ddc4Srjs   GLdouble y = cmd->y;
389796c5ddc4Srjs   GLdouble z = cmd->z;
389896c5ddc4Srjs   CALL_Vertex3d(ctx->CurrentServerDispatch, (x, y, z));
389996c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Vertex3d), 8) / 8);
390096c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
390196c5ddc4Srjs   return cmd_size;
390296c5ddc4Srjs}
390396c5ddc4Srjsvoid GLAPIENTRY
390496c5ddc4Srjs_mesa_marshal_Vertex3d(GLdouble x, GLdouble y, GLdouble z)
390596c5ddc4Srjs{
390696c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
390796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Vertex3d);
390896c5ddc4Srjs   struct marshal_cmd_Vertex3d *cmd;
390996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Vertex3d, cmd_size);
391096c5ddc4Srjs   cmd->x = x;
391196c5ddc4Srjs   cmd->y = y;
391296c5ddc4Srjs   cmd->z = z;
391396c5ddc4Srjs}
391496c5ddc4Srjs
391596c5ddc4Srjs
391696c5ddc4Srjs/* Vertex3dv: marshalled asynchronously */
391796c5ddc4Srjsstruct marshal_cmd_Vertex3dv
391896c5ddc4Srjs{
391996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
392096c5ddc4Srjs   GLdouble v[3];
392196c5ddc4Srjs};
392296c5ddc4Srjsuint32_t
392396c5ddc4Srjs_mesa_unmarshal_Vertex3dv(struct gl_context *ctx, const struct marshal_cmd_Vertex3dv *cmd, const uint64_t *last)
392496c5ddc4Srjs{
392596c5ddc4Srjs   const GLdouble * v = cmd->v;
392696c5ddc4Srjs   CALL_Vertex3dv(ctx->CurrentServerDispatch, (v));
392796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Vertex3dv), 8) / 8);
392896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
392996c5ddc4Srjs   return cmd_size;
393096c5ddc4Srjs}
393196c5ddc4Srjsvoid GLAPIENTRY
393296c5ddc4Srjs_mesa_marshal_Vertex3dv(const GLdouble * v)
393396c5ddc4Srjs{
393496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
393596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Vertex3dv);
393696c5ddc4Srjs   struct marshal_cmd_Vertex3dv *cmd;
393796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Vertex3dv, cmd_size);
393896c5ddc4Srjs   memcpy(cmd->v, v, 3 * sizeof(GLdouble));
393996c5ddc4Srjs}
394096c5ddc4Srjs
394196c5ddc4Srjs
394296c5ddc4Srjs/* Vertex3f: marshalled asynchronously */
394396c5ddc4Srjsstruct marshal_cmd_Vertex3f
394496c5ddc4Srjs{
394596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
394696c5ddc4Srjs   GLfloat x;
394796c5ddc4Srjs   GLfloat y;
394896c5ddc4Srjs   GLfloat z;
394996c5ddc4Srjs};
395096c5ddc4Srjsuint32_t
395196c5ddc4Srjs_mesa_unmarshal_Vertex3f(struct gl_context *ctx, const struct marshal_cmd_Vertex3f *cmd, const uint64_t *last)
395296c5ddc4Srjs{
395396c5ddc4Srjs   GLfloat x = cmd->x;
395496c5ddc4Srjs   GLfloat y = cmd->y;
395596c5ddc4Srjs   GLfloat z = cmd->z;
395696c5ddc4Srjs   CALL_Vertex3f(ctx->CurrentServerDispatch, (x, y, z));
395796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Vertex3f), 8) / 8);
395896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
395996c5ddc4Srjs   return cmd_size;
396096c5ddc4Srjs}
396196c5ddc4Srjsvoid GLAPIENTRY
396296c5ddc4Srjs_mesa_marshal_Vertex3f(GLfloat x, GLfloat y, GLfloat z)
396396c5ddc4Srjs{
396496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
396596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Vertex3f);
396696c5ddc4Srjs   struct marshal_cmd_Vertex3f *cmd;
396796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Vertex3f, cmd_size);
396896c5ddc4Srjs   cmd->x = x;
396996c5ddc4Srjs   cmd->y = y;
397096c5ddc4Srjs   cmd->z = z;
397196c5ddc4Srjs}
397296c5ddc4Srjs
397396c5ddc4Srjs
397496c5ddc4Srjs/* Vertex3fv: marshalled asynchronously */
397596c5ddc4Srjsstruct marshal_cmd_Vertex3fv
397696c5ddc4Srjs{
397796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
397896c5ddc4Srjs   GLfloat v[3];
397996c5ddc4Srjs};
398096c5ddc4Srjsuint32_t
398196c5ddc4Srjs_mesa_unmarshal_Vertex3fv(struct gl_context *ctx, const struct marshal_cmd_Vertex3fv *cmd, const uint64_t *last)
398296c5ddc4Srjs{
398396c5ddc4Srjs   const GLfloat * v = cmd->v;
398496c5ddc4Srjs   CALL_Vertex3fv(ctx->CurrentServerDispatch, (v));
398596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Vertex3fv), 8) / 8);
398696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
398796c5ddc4Srjs   return cmd_size;
398896c5ddc4Srjs}
398996c5ddc4Srjsvoid GLAPIENTRY
399096c5ddc4Srjs_mesa_marshal_Vertex3fv(const GLfloat * v)
399196c5ddc4Srjs{
399296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
399396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Vertex3fv);
399496c5ddc4Srjs   struct marshal_cmd_Vertex3fv *cmd;
399596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Vertex3fv, cmd_size);
399696c5ddc4Srjs   memcpy(cmd->v, v, 3 * sizeof(GLfloat));
399796c5ddc4Srjs}
399896c5ddc4Srjs
399996c5ddc4Srjs
400096c5ddc4Srjs/* Vertex3i: marshalled asynchronously */
400196c5ddc4Srjsstruct marshal_cmd_Vertex3i
400296c5ddc4Srjs{
400396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
400496c5ddc4Srjs   GLint x;
400596c5ddc4Srjs   GLint y;
400696c5ddc4Srjs   GLint z;
400796c5ddc4Srjs};
400896c5ddc4Srjsuint32_t
400996c5ddc4Srjs_mesa_unmarshal_Vertex3i(struct gl_context *ctx, const struct marshal_cmd_Vertex3i *cmd, const uint64_t *last)
401096c5ddc4Srjs{
401196c5ddc4Srjs   GLint x = cmd->x;
401296c5ddc4Srjs   GLint y = cmd->y;
401396c5ddc4Srjs   GLint z = cmd->z;
401496c5ddc4Srjs   CALL_Vertex3i(ctx->CurrentServerDispatch, (x, y, z));
401596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Vertex3i), 8) / 8);
401696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
401796c5ddc4Srjs   return cmd_size;
401896c5ddc4Srjs}
401996c5ddc4Srjsvoid GLAPIENTRY
402096c5ddc4Srjs_mesa_marshal_Vertex3i(GLint x, GLint y, GLint z)
402196c5ddc4Srjs{
402296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
402396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Vertex3i);
402496c5ddc4Srjs   struct marshal_cmd_Vertex3i *cmd;
402596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Vertex3i, cmd_size);
402696c5ddc4Srjs   cmd->x = x;
402796c5ddc4Srjs   cmd->y = y;
402896c5ddc4Srjs   cmd->z = z;
402996c5ddc4Srjs}
403096c5ddc4Srjs
403196c5ddc4Srjs
403296c5ddc4Srjs/* Vertex3iv: marshalled asynchronously */
403396c5ddc4Srjsstruct marshal_cmd_Vertex3iv
403496c5ddc4Srjs{
403596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
403696c5ddc4Srjs   GLint v[3];
403796c5ddc4Srjs};
403896c5ddc4Srjsuint32_t
403996c5ddc4Srjs_mesa_unmarshal_Vertex3iv(struct gl_context *ctx, const struct marshal_cmd_Vertex3iv *cmd, const uint64_t *last)
404096c5ddc4Srjs{
404196c5ddc4Srjs   const GLint * v = cmd->v;
404296c5ddc4Srjs   CALL_Vertex3iv(ctx->CurrentServerDispatch, (v));
404396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Vertex3iv), 8) / 8);
404496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
404596c5ddc4Srjs   return cmd_size;
404696c5ddc4Srjs}
404796c5ddc4Srjsvoid GLAPIENTRY
404896c5ddc4Srjs_mesa_marshal_Vertex3iv(const GLint * v)
404996c5ddc4Srjs{
405096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
405196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Vertex3iv);
405296c5ddc4Srjs   struct marshal_cmd_Vertex3iv *cmd;
405396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Vertex3iv, cmd_size);
405496c5ddc4Srjs   memcpy(cmd->v, v, 3 * sizeof(GLint));
405596c5ddc4Srjs}
405696c5ddc4Srjs
405796c5ddc4Srjs
405896c5ddc4Srjs/* Vertex3s: marshalled asynchronously */
405996c5ddc4Srjsstruct marshal_cmd_Vertex3s
406096c5ddc4Srjs{
406196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
406296c5ddc4Srjs   GLshort x;
406396c5ddc4Srjs   GLshort y;
406496c5ddc4Srjs   GLshort z;
406596c5ddc4Srjs};
406696c5ddc4Srjsuint32_t
406796c5ddc4Srjs_mesa_unmarshal_Vertex3s(struct gl_context *ctx, const struct marshal_cmd_Vertex3s *cmd, const uint64_t *last)
406896c5ddc4Srjs{
406996c5ddc4Srjs   GLshort x = cmd->x;
407096c5ddc4Srjs   GLshort y = cmd->y;
407196c5ddc4Srjs   GLshort z = cmd->z;
407296c5ddc4Srjs   CALL_Vertex3s(ctx->CurrentServerDispatch, (x, y, z));
407396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Vertex3s), 8) / 8);
407496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
407596c5ddc4Srjs   return cmd_size;
407696c5ddc4Srjs}
407796c5ddc4Srjsvoid GLAPIENTRY
407896c5ddc4Srjs_mesa_marshal_Vertex3s(GLshort x, GLshort y, GLshort z)
407996c5ddc4Srjs{
408096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
408196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Vertex3s);
408296c5ddc4Srjs   struct marshal_cmd_Vertex3s *cmd;
408396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Vertex3s, cmd_size);
408496c5ddc4Srjs   cmd->x = x;
408596c5ddc4Srjs   cmd->y = y;
408696c5ddc4Srjs   cmd->z = z;
408796c5ddc4Srjs}
408896c5ddc4Srjs
408996c5ddc4Srjs
409096c5ddc4Srjs/* Vertex3sv: marshalled asynchronously */
409196c5ddc4Srjsstruct marshal_cmd_Vertex3sv
409296c5ddc4Srjs{
409396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
409496c5ddc4Srjs   GLshort v[3];
409596c5ddc4Srjs};
409696c5ddc4Srjsuint32_t
409796c5ddc4Srjs_mesa_unmarshal_Vertex3sv(struct gl_context *ctx, const struct marshal_cmd_Vertex3sv *cmd, const uint64_t *last)
409896c5ddc4Srjs{
409996c5ddc4Srjs   const GLshort * v = cmd->v;
410096c5ddc4Srjs   CALL_Vertex3sv(ctx->CurrentServerDispatch, (v));
410196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Vertex3sv), 8) / 8);
410296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
410396c5ddc4Srjs   return cmd_size;
410496c5ddc4Srjs}
410596c5ddc4Srjsvoid GLAPIENTRY
410696c5ddc4Srjs_mesa_marshal_Vertex3sv(const GLshort * v)
410796c5ddc4Srjs{
410896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
410996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Vertex3sv);
411096c5ddc4Srjs   struct marshal_cmd_Vertex3sv *cmd;
411196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Vertex3sv, cmd_size);
411296c5ddc4Srjs   memcpy(cmd->v, v, 3 * sizeof(GLshort));
411396c5ddc4Srjs}
411496c5ddc4Srjs
411596c5ddc4Srjs
411696c5ddc4Srjs/* Vertex4d: marshalled asynchronously */
411796c5ddc4Srjsstruct marshal_cmd_Vertex4d
411896c5ddc4Srjs{
411996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
412096c5ddc4Srjs   GLdouble x;
412196c5ddc4Srjs   GLdouble y;
412296c5ddc4Srjs   GLdouble z;
412396c5ddc4Srjs   GLdouble w;
412496c5ddc4Srjs};
412596c5ddc4Srjsuint32_t
412696c5ddc4Srjs_mesa_unmarshal_Vertex4d(struct gl_context *ctx, const struct marshal_cmd_Vertex4d *cmd, const uint64_t *last)
412796c5ddc4Srjs{
412896c5ddc4Srjs   GLdouble x = cmd->x;
412996c5ddc4Srjs   GLdouble y = cmd->y;
413096c5ddc4Srjs   GLdouble z = cmd->z;
413196c5ddc4Srjs   GLdouble w = cmd->w;
413296c5ddc4Srjs   CALL_Vertex4d(ctx->CurrentServerDispatch, (x, y, z, w));
413396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Vertex4d), 8) / 8);
413496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
413596c5ddc4Srjs   return cmd_size;
413696c5ddc4Srjs}
413796c5ddc4Srjsvoid GLAPIENTRY
413896c5ddc4Srjs_mesa_marshal_Vertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
413996c5ddc4Srjs{
414096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
414196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Vertex4d);
414296c5ddc4Srjs   struct marshal_cmd_Vertex4d *cmd;
414396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Vertex4d, cmd_size);
414496c5ddc4Srjs   cmd->x = x;
414596c5ddc4Srjs   cmd->y = y;
414696c5ddc4Srjs   cmd->z = z;
414796c5ddc4Srjs   cmd->w = w;
414896c5ddc4Srjs}
414996c5ddc4Srjs
415096c5ddc4Srjs
415196c5ddc4Srjs/* Vertex4dv: marshalled asynchronously */
415296c5ddc4Srjsstruct marshal_cmd_Vertex4dv
415396c5ddc4Srjs{
415496c5ddc4Srjs   struct marshal_cmd_base cmd_base;
415596c5ddc4Srjs   GLdouble v[4];
415696c5ddc4Srjs};
415796c5ddc4Srjsuint32_t
415896c5ddc4Srjs_mesa_unmarshal_Vertex4dv(struct gl_context *ctx, const struct marshal_cmd_Vertex4dv *cmd, const uint64_t *last)
415996c5ddc4Srjs{
416096c5ddc4Srjs   const GLdouble * v = cmd->v;
416196c5ddc4Srjs   CALL_Vertex4dv(ctx->CurrentServerDispatch, (v));
416296c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Vertex4dv), 8) / 8);
416396c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
416496c5ddc4Srjs   return cmd_size;
416596c5ddc4Srjs}
416696c5ddc4Srjsvoid GLAPIENTRY
416796c5ddc4Srjs_mesa_marshal_Vertex4dv(const GLdouble * v)
416896c5ddc4Srjs{
416996c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
417096c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Vertex4dv);
417196c5ddc4Srjs   struct marshal_cmd_Vertex4dv *cmd;
417296c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Vertex4dv, cmd_size);
417396c5ddc4Srjs   memcpy(cmd->v, v, 4 * sizeof(GLdouble));
417496c5ddc4Srjs}
417596c5ddc4Srjs
417696c5ddc4Srjs
417796c5ddc4Srjs/* Vertex4f: marshalled asynchronously */
417896c5ddc4Srjsstruct marshal_cmd_Vertex4f
417996c5ddc4Srjs{
418096c5ddc4Srjs   struct marshal_cmd_base cmd_base;
418196c5ddc4Srjs   GLfloat x;
418296c5ddc4Srjs   GLfloat y;
418396c5ddc4Srjs   GLfloat z;
418496c5ddc4Srjs   GLfloat w;
418596c5ddc4Srjs};
418696c5ddc4Srjsuint32_t
418796c5ddc4Srjs_mesa_unmarshal_Vertex4f(struct gl_context *ctx, const struct marshal_cmd_Vertex4f *cmd, const uint64_t *last)
418896c5ddc4Srjs{
418996c5ddc4Srjs   GLfloat x = cmd->x;
419096c5ddc4Srjs   GLfloat y = cmd->y;
419196c5ddc4Srjs   GLfloat z = cmd->z;
419296c5ddc4Srjs   GLfloat w = cmd->w;
419396c5ddc4Srjs   CALL_Vertex4f(ctx->CurrentServerDispatch, (x, y, z, w));
419496c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Vertex4f), 8) / 8);
419596c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
419696c5ddc4Srjs   return cmd_size;
419796c5ddc4Srjs}
419896c5ddc4Srjsvoid GLAPIENTRY
419996c5ddc4Srjs_mesa_marshal_Vertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
420096c5ddc4Srjs{
420196c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
420296c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Vertex4f);
420396c5ddc4Srjs   struct marshal_cmd_Vertex4f *cmd;
420496c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Vertex4f, cmd_size);
420596c5ddc4Srjs   cmd->x = x;
420696c5ddc4Srjs   cmd->y = y;
420796c5ddc4Srjs   cmd->z = z;
420896c5ddc4Srjs   cmd->w = w;
420996c5ddc4Srjs}
421096c5ddc4Srjs
421196c5ddc4Srjs
421296c5ddc4Srjs/* Vertex4fv: marshalled asynchronously */
421396c5ddc4Srjsstruct marshal_cmd_Vertex4fv
421496c5ddc4Srjs{
421596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
421696c5ddc4Srjs   GLfloat v[4];
421796c5ddc4Srjs};
421896c5ddc4Srjsuint32_t
421996c5ddc4Srjs_mesa_unmarshal_Vertex4fv(struct gl_context *ctx, const struct marshal_cmd_Vertex4fv *cmd, const uint64_t *last)
422096c5ddc4Srjs{
422196c5ddc4Srjs   const GLfloat * v = cmd->v;
422296c5ddc4Srjs   CALL_Vertex4fv(ctx->CurrentServerDispatch, (v));
422396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Vertex4fv), 8) / 8);
422496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
422596c5ddc4Srjs   return cmd_size;
422696c5ddc4Srjs}
422796c5ddc4Srjsvoid GLAPIENTRY
422896c5ddc4Srjs_mesa_marshal_Vertex4fv(const GLfloat * v)
422996c5ddc4Srjs{
423096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
423196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Vertex4fv);
423296c5ddc4Srjs   struct marshal_cmd_Vertex4fv *cmd;
423396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Vertex4fv, cmd_size);
423496c5ddc4Srjs   memcpy(cmd->v, v, 4 * sizeof(GLfloat));
423596c5ddc4Srjs}
423696c5ddc4Srjs
423796c5ddc4Srjs
423896c5ddc4Srjs/* Vertex4i: marshalled asynchronously */
423996c5ddc4Srjsstruct marshal_cmd_Vertex4i
424096c5ddc4Srjs{
424196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
424296c5ddc4Srjs   GLint x;
424396c5ddc4Srjs   GLint y;
424496c5ddc4Srjs   GLint z;
424596c5ddc4Srjs   GLint w;
424696c5ddc4Srjs};
424796c5ddc4Srjsuint32_t
424896c5ddc4Srjs_mesa_unmarshal_Vertex4i(struct gl_context *ctx, const struct marshal_cmd_Vertex4i *cmd, const uint64_t *last)
424996c5ddc4Srjs{
425096c5ddc4Srjs   GLint x = cmd->x;
425196c5ddc4Srjs   GLint y = cmd->y;
425296c5ddc4Srjs   GLint z = cmd->z;
425396c5ddc4Srjs   GLint w = cmd->w;
425496c5ddc4Srjs   CALL_Vertex4i(ctx->CurrentServerDispatch, (x, y, z, w));
425596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Vertex4i), 8) / 8);
425696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
425796c5ddc4Srjs   return cmd_size;
425896c5ddc4Srjs}
425996c5ddc4Srjsvoid GLAPIENTRY
426096c5ddc4Srjs_mesa_marshal_Vertex4i(GLint x, GLint y, GLint z, GLint w)
426196c5ddc4Srjs{
426296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
426396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Vertex4i);
426496c5ddc4Srjs   struct marshal_cmd_Vertex4i *cmd;
426596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Vertex4i, cmd_size);
426696c5ddc4Srjs   cmd->x = x;
426796c5ddc4Srjs   cmd->y = y;
426896c5ddc4Srjs   cmd->z = z;
426996c5ddc4Srjs   cmd->w = w;
427096c5ddc4Srjs}
427196c5ddc4Srjs
427296c5ddc4Srjs
427396c5ddc4Srjs/* Vertex4iv: marshalled asynchronously */
427496c5ddc4Srjsstruct marshal_cmd_Vertex4iv
427596c5ddc4Srjs{
427696c5ddc4Srjs   struct marshal_cmd_base cmd_base;
427796c5ddc4Srjs   GLint v[4];
427896c5ddc4Srjs};
427996c5ddc4Srjsuint32_t
428096c5ddc4Srjs_mesa_unmarshal_Vertex4iv(struct gl_context *ctx, const struct marshal_cmd_Vertex4iv *cmd, const uint64_t *last)
428196c5ddc4Srjs{
428296c5ddc4Srjs   const GLint * v = cmd->v;
428396c5ddc4Srjs   CALL_Vertex4iv(ctx->CurrentServerDispatch, (v));
428496c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Vertex4iv), 8) / 8);
428596c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
428696c5ddc4Srjs   return cmd_size;
428796c5ddc4Srjs}
428896c5ddc4Srjsvoid GLAPIENTRY
428996c5ddc4Srjs_mesa_marshal_Vertex4iv(const GLint * v)
429096c5ddc4Srjs{
429196c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
429296c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Vertex4iv);
429396c5ddc4Srjs   struct marshal_cmd_Vertex4iv *cmd;
429496c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Vertex4iv, cmd_size);
429596c5ddc4Srjs   memcpy(cmd->v, v, 4 * sizeof(GLint));
429696c5ddc4Srjs}
429796c5ddc4Srjs
429896c5ddc4Srjs
429996c5ddc4Srjs/* Vertex4s: marshalled asynchronously */
430096c5ddc4Srjsstruct marshal_cmd_Vertex4s
430196c5ddc4Srjs{
430296c5ddc4Srjs   struct marshal_cmd_base cmd_base;
430396c5ddc4Srjs   GLshort x;
430496c5ddc4Srjs   GLshort y;
430596c5ddc4Srjs   GLshort z;
430696c5ddc4Srjs   GLshort w;
430796c5ddc4Srjs};
430896c5ddc4Srjsuint32_t
430996c5ddc4Srjs_mesa_unmarshal_Vertex4s(struct gl_context *ctx, const struct marshal_cmd_Vertex4s *cmd, const uint64_t *last)
431096c5ddc4Srjs{
431196c5ddc4Srjs   GLshort x = cmd->x;
431296c5ddc4Srjs   GLshort y = cmd->y;
431396c5ddc4Srjs   GLshort z = cmd->z;
431496c5ddc4Srjs   GLshort w = cmd->w;
431596c5ddc4Srjs   CALL_Vertex4s(ctx->CurrentServerDispatch, (x, y, z, w));
431696c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Vertex4s), 8) / 8);
431796c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
431896c5ddc4Srjs   return cmd_size;
431996c5ddc4Srjs}
432096c5ddc4Srjsvoid GLAPIENTRY
432196c5ddc4Srjs_mesa_marshal_Vertex4s(GLshort x, GLshort y, GLshort z, GLshort w)
432296c5ddc4Srjs{
432396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
432496c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Vertex4s);
432596c5ddc4Srjs   struct marshal_cmd_Vertex4s *cmd;
432696c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Vertex4s, cmd_size);
432796c5ddc4Srjs   cmd->x = x;
432896c5ddc4Srjs   cmd->y = y;
432996c5ddc4Srjs   cmd->z = z;
433096c5ddc4Srjs   cmd->w = w;
433196c5ddc4Srjs}
433296c5ddc4Srjs
433396c5ddc4Srjs
433496c5ddc4Srjs/* Vertex4sv: marshalled asynchronously */
433596c5ddc4Srjsstruct marshal_cmd_Vertex4sv
433696c5ddc4Srjs{
433796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
433896c5ddc4Srjs   GLshort v[4];
433996c5ddc4Srjs};
434096c5ddc4Srjsuint32_t
434196c5ddc4Srjs_mesa_unmarshal_Vertex4sv(struct gl_context *ctx, const struct marshal_cmd_Vertex4sv *cmd, const uint64_t *last)
434296c5ddc4Srjs{
434396c5ddc4Srjs   const GLshort * v = cmd->v;
434496c5ddc4Srjs   CALL_Vertex4sv(ctx->CurrentServerDispatch, (v));
434596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Vertex4sv), 8) / 8);
434696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
434796c5ddc4Srjs   return cmd_size;
434896c5ddc4Srjs}
434996c5ddc4Srjsvoid GLAPIENTRY
435096c5ddc4Srjs_mesa_marshal_Vertex4sv(const GLshort * v)
435196c5ddc4Srjs{
435296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
435396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Vertex4sv);
435496c5ddc4Srjs   struct marshal_cmd_Vertex4sv *cmd;
435596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Vertex4sv, cmd_size);
435696c5ddc4Srjs   memcpy(cmd->v, v, 4 * sizeof(GLshort));
435796c5ddc4Srjs}
435896c5ddc4Srjs
435996c5ddc4Srjs
436096c5ddc4Srjs/* ClipPlane: marshalled asynchronously */
436196c5ddc4Srjsstruct marshal_cmd_ClipPlane
436296c5ddc4Srjs{
436396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
436496c5ddc4Srjs   GLenum plane;
436596c5ddc4Srjs   GLdouble equation[4];
436696c5ddc4Srjs};
436796c5ddc4Srjsuint32_t
436896c5ddc4Srjs_mesa_unmarshal_ClipPlane(struct gl_context *ctx, const struct marshal_cmd_ClipPlane *cmd, const uint64_t *last)
436996c5ddc4Srjs{
437096c5ddc4Srjs   GLenum plane = cmd->plane;
437196c5ddc4Srjs   const GLdouble * equation = cmd->equation;
437296c5ddc4Srjs   CALL_ClipPlane(ctx->CurrentServerDispatch, (plane, equation));
437396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_ClipPlane), 8) / 8);
437496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
437596c5ddc4Srjs   return cmd_size;
437696c5ddc4Srjs}
437796c5ddc4Srjsvoid GLAPIENTRY
437896c5ddc4Srjs_mesa_marshal_ClipPlane(GLenum plane, const GLdouble * equation)
437996c5ddc4Srjs{
438096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
438196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_ClipPlane);
438296c5ddc4Srjs   struct marshal_cmd_ClipPlane *cmd;
438396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_ClipPlane, cmd_size);
438496c5ddc4Srjs   cmd->plane = plane;
438596c5ddc4Srjs   memcpy(cmd->equation, equation, 4 * sizeof(GLdouble));
438696c5ddc4Srjs}
438796c5ddc4Srjs
438896c5ddc4Srjs
438996c5ddc4Srjs/* ColorMaterial: marshalled asynchronously */
439096c5ddc4Srjsstruct marshal_cmd_ColorMaterial
439196c5ddc4Srjs{
439296c5ddc4Srjs   struct marshal_cmd_base cmd_base;
439396c5ddc4Srjs   GLenum face;
439496c5ddc4Srjs   GLenum mode;
439596c5ddc4Srjs};
439696c5ddc4Srjsuint32_t
439796c5ddc4Srjs_mesa_unmarshal_ColorMaterial(struct gl_context *ctx, const struct marshal_cmd_ColorMaterial *cmd, const uint64_t *last)
439896c5ddc4Srjs{
439996c5ddc4Srjs   GLenum face = cmd->face;
440096c5ddc4Srjs   GLenum mode = cmd->mode;
440196c5ddc4Srjs   CALL_ColorMaterial(ctx->CurrentServerDispatch, (face, mode));
440296c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_ColorMaterial), 8) / 8);
440396c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
440496c5ddc4Srjs   return cmd_size;
440596c5ddc4Srjs}
440696c5ddc4Srjsvoid GLAPIENTRY
440796c5ddc4Srjs_mesa_marshal_ColorMaterial(GLenum face, GLenum mode)
440896c5ddc4Srjs{
440996c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
441096c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_ColorMaterial);
441196c5ddc4Srjs   struct marshal_cmd_ColorMaterial *cmd;
441296c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_ColorMaterial, cmd_size);
441396c5ddc4Srjs   cmd->face = face;
441496c5ddc4Srjs   cmd->mode = mode;
441596c5ddc4Srjs}
441696c5ddc4Srjs
441796c5ddc4Srjs
441896c5ddc4Srjs/* CullFace: marshalled asynchronously */
441996c5ddc4Srjsstruct marshal_cmd_CullFace
442096c5ddc4Srjs{
442196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
442296c5ddc4Srjs   GLenum mode;
442396c5ddc4Srjs};
442496c5ddc4Srjsuint32_t
442596c5ddc4Srjs_mesa_unmarshal_CullFace(struct gl_context *ctx, const struct marshal_cmd_CullFace *cmd, const uint64_t *last)
442696c5ddc4Srjs{
442796c5ddc4Srjs   GLenum mode = cmd->mode;
442896c5ddc4Srjs   CALL_CullFace(ctx->CurrentServerDispatch, (mode));
442996c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_CullFace), 8) / 8);
443096c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
443196c5ddc4Srjs   return cmd_size;
443296c5ddc4Srjs}
443396c5ddc4Srjsvoid GLAPIENTRY
443496c5ddc4Srjs_mesa_marshal_CullFace(GLenum mode)
443596c5ddc4Srjs{
443696c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
443796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_CullFace);
443896c5ddc4Srjs   struct marshal_cmd_CullFace *cmd;
443996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_CullFace, cmd_size);
444096c5ddc4Srjs   cmd->mode = mode;
444196c5ddc4Srjs}
444296c5ddc4Srjs
444396c5ddc4Srjs
444496c5ddc4Srjs/* Fogf: marshalled asynchronously */
444596c5ddc4Srjsstruct marshal_cmd_Fogf
444696c5ddc4Srjs{
444796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
444896c5ddc4Srjs   GLenum pname;
444996c5ddc4Srjs   GLfloat param;
445096c5ddc4Srjs};
445196c5ddc4Srjsuint32_t
445296c5ddc4Srjs_mesa_unmarshal_Fogf(struct gl_context *ctx, const struct marshal_cmd_Fogf *cmd, const uint64_t *last)
445396c5ddc4Srjs{
445496c5ddc4Srjs   GLenum pname = cmd->pname;
445596c5ddc4Srjs   GLfloat param = cmd->param;
445696c5ddc4Srjs   CALL_Fogf(ctx->CurrentServerDispatch, (pname, param));
445796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Fogf), 8) / 8);
445896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
445996c5ddc4Srjs   return cmd_size;
446096c5ddc4Srjs}
446196c5ddc4Srjsvoid GLAPIENTRY
446296c5ddc4Srjs_mesa_marshal_Fogf(GLenum pname, GLfloat param)
446396c5ddc4Srjs{
446496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
446596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Fogf);
446696c5ddc4Srjs   struct marshal_cmd_Fogf *cmd;
446796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Fogf, cmd_size);
446896c5ddc4Srjs   cmd->pname = pname;
446996c5ddc4Srjs   cmd->param = param;
447096c5ddc4Srjs}
447196c5ddc4Srjs
447296c5ddc4Srjs
447396c5ddc4Srjs/* Fogfv: marshalled asynchronously */
447496c5ddc4Srjsstruct marshal_cmd_Fogfv
447596c5ddc4Srjs{
447696c5ddc4Srjs   struct marshal_cmd_base cmd_base;
447796c5ddc4Srjs   GLenum pname;
447896c5ddc4Srjs   /* Next safe_mul(_mesa_fog_enum_to_count(pname), 1 * sizeof(GLfloat)) bytes are GLfloat params[None] */
447996c5ddc4Srjs};
448096c5ddc4Srjsuint32_t
448196c5ddc4Srjs_mesa_unmarshal_Fogfv(struct gl_context *ctx, const struct marshal_cmd_Fogfv *cmd, const uint64_t *last)
448296c5ddc4Srjs{
448396c5ddc4Srjs   GLenum pname = cmd->pname;
448496c5ddc4Srjs   GLfloat * params;
448596c5ddc4Srjs   const char *variable_data = (const char *) (cmd + 1);
448696c5ddc4Srjs   params = (GLfloat *) variable_data;
448796c5ddc4Srjs   CALL_Fogfv(ctx->CurrentServerDispatch, (pname, params));
448896c5ddc4Srjs   return cmd->cmd_base.cmd_size;
448996c5ddc4Srjs}
449096c5ddc4Srjsvoid GLAPIENTRY
449196c5ddc4Srjs_mesa_marshal_Fogfv(GLenum pname, const GLfloat * params)
449296c5ddc4Srjs{
449396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
449496c5ddc4Srjs   int params_size = safe_mul(_mesa_fog_enum_to_count(pname), 1 * sizeof(GLfloat));
449596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Fogfv) + params_size;
449696c5ddc4Srjs   struct marshal_cmd_Fogfv *cmd;
449796c5ddc4Srjs   if (unlikely(params_size < 0 || (params_size > 0 && !params) || (unsigned)cmd_size > MARSHAL_MAX_CMD_SIZE)) {
449896c5ddc4Srjs      _mesa_glthread_finish_before(ctx, "Fogfv");
449996c5ddc4Srjs      CALL_Fogfv(ctx->CurrentServerDispatch, (pname, params));
450096c5ddc4Srjs      return;
450196c5ddc4Srjs   }
450296c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Fogfv, cmd_size);
450396c5ddc4Srjs   cmd->pname = pname;
450496c5ddc4Srjs   char *variable_data = (char *) (cmd + 1);
450596c5ddc4Srjs   memcpy(variable_data, params, params_size);
450696c5ddc4Srjs}
450796c5ddc4Srjs
450896c5ddc4Srjs
450996c5ddc4Srjs/* Fogi: marshalled asynchronously */
451096c5ddc4Srjsstruct marshal_cmd_Fogi
451196c5ddc4Srjs{
451296c5ddc4Srjs   struct marshal_cmd_base cmd_base;
451396c5ddc4Srjs   GLenum pname;
451496c5ddc4Srjs   GLint param;
451596c5ddc4Srjs};
451696c5ddc4Srjsuint32_t
451796c5ddc4Srjs_mesa_unmarshal_Fogi(struct gl_context *ctx, const struct marshal_cmd_Fogi *cmd, const uint64_t *last)
451896c5ddc4Srjs{
451996c5ddc4Srjs   GLenum pname = cmd->pname;
452096c5ddc4Srjs   GLint param = cmd->param;
452196c5ddc4Srjs   CALL_Fogi(ctx->CurrentServerDispatch, (pname, param));
452296c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Fogi), 8) / 8);
452396c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
452496c5ddc4Srjs   return cmd_size;
452596c5ddc4Srjs}
452696c5ddc4Srjsvoid GLAPIENTRY
452796c5ddc4Srjs_mesa_marshal_Fogi(GLenum pname, GLint param)
452896c5ddc4Srjs{
452996c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
453096c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Fogi);
453196c5ddc4Srjs   struct marshal_cmd_Fogi *cmd;
453296c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Fogi, cmd_size);
453396c5ddc4Srjs   cmd->pname = pname;
453496c5ddc4Srjs   cmd->param = param;
453596c5ddc4Srjs}
453696c5ddc4Srjs
453796c5ddc4Srjs
453896c5ddc4Srjs/* Fogiv: marshalled asynchronously */
453996c5ddc4Srjsstruct marshal_cmd_Fogiv
454096c5ddc4Srjs{
454196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
454296c5ddc4Srjs   GLenum pname;
454396c5ddc4Srjs   /* Next safe_mul(_mesa_fog_enum_to_count(pname), 1 * sizeof(GLint)) bytes are GLint params[None] */
454496c5ddc4Srjs};
454596c5ddc4Srjsuint32_t
454696c5ddc4Srjs_mesa_unmarshal_Fogiv(struct gl_context *ctx, const struct marshal_cmd_Fogiv *cmd, const uint64_t *last)
454796c5ddc4Srjs{
454896c5ddc4Srjs   GLenum pname = cmd->pname;
454996c5ddc4Srjs   GLint * params;
455096c5ddc4Srjs   const char *variable_data = (const char *) (cmd + 1);
455196c5ddc4Srjs   params = (GLint *) variable_data;
455296c5ddc4Srjs   CALL_Fogiv(ctx->CurrentServerDispatch, (pname, params));
455396c5ddc4Srjs   return cmd->cmd_base.cmd_size;
455496c5ddc4Srjs}
455596c5ddc4Srjsvoid GLAPIENTRY
455696c5ddc4Srjs_mesa_marshal_Fogiv(GLenum pname, const GLint * params)
455796c5ddc4Srjs{
455896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
455996c5ddc4Srjs   int params_size = safe_mul(_mesa_fog_enum_to_count(pname), 1 * sizeof(GLint));
456096c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Fogiv) + params_size;
456196c5ddc4Srjs   struct marshal_cmd_Fogiv *cmd;
456296c5ddc4Srjs   if (unlikely(params_size < 0 || (params_size > 0 && !params) || (unsigned)cmd_size > MARSHAL_MAX_CMD_SIZE)) {
456396c5ddc4Srjs      _mesa_glthread_finish_before(ctx, "Fogiv");
456496c5ddc4Srjs      CALL_Fogiv(ctx->CurrentServerDispatch, (pname, params));
456596c5ddc4Srjs      return;
456696c5ddc4Srjs   }
456796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Fogiv, cmd_size);
456896c5ddc4Srjs   cmd->pname = pname;
456996c5ddc4Srjs   char *variable_data = (char *) (cmd + 1);
457096c5ddc4Srjs   memcpy(variable_data, params, params_size);
457196c5ddc4Srjs}
457296c5ddc4Srjs
457396c5ddc4Srjs
457496c5ddc4Srjs/* FrontFace: marshalled asynchronously */
457596c5ddc4Srjsstruct marshal_cmd_FrontFace
457696c5ddc4Srjs{
457796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
457896c5ddc4Srjs   GLenum mode;
457996c5ddc4Srjs};
458096c5ddc4Srjsuint32_t
458196c5ddc4Srjs_mesa_unmarshal_FrontFace(struct gl_context *ctx, const struct marshal_cmd_FrontFace *cmd, const uint64_t *last)
458296c5ddc4Srjs{
458396c5ddc4Srjs   GLenum mode = cmd->mode;
458496c5ddc4Srjs   CALL_FrontFace(ctx->CurrentServerDispatch, (mode));
458596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_FrontFace), 8) / 8);
458696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
458796c5ddc4Srjs   return cmd_size;
458896c5ddc4Srjs}
458996c5ddc4Srjsvoid GLAPIENTRY
459096c5ddc4Srjs_mesa_marshal_FrontFace(GLenum mode)
459196c5ddc4Srjs{
459296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
459396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_FrontFace);
459496c5ddc4Srjs   struct marshal_cmd_FrontFace *cmd;
459596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_FrontFace, cmd_size);
459696c5ddc4Srjs   cmd->mode = mode;
459796c5ddc4Srjs}
459896c5ddc4Srjs
459996c5ddc4Srjs
460096c5ddc4Srjs/* Hint: marshalled asynchronously */
460196c5ddc4Srjsstruct marshal_cmd_Hint
460296c5ddc4Srjs{
460396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
460496c5ddc4Srjs   GLenum target;
460596c5ddc4Srjs   GLenum mode;
460696c5ddc4Srjs};
460796c5ddc4Srjsuint32_t
460896c5ddc4Srjs_mesa_unmarshal_Hint(struct gl_context *ctx, const struct marshal_cmd_Hint *cmd, const uint64_t *last)
460996c5ddc4Srjs{
461096c5ddc4Srjs   GLenum target = cmd->target;
461196c5ddc4Srjs   GLenum mode = cmd->mode;
461296c5ddc4Srjs   CALL_Hint(ctx->CurrentServerDispatch, (target, mode));
461396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Hint), 8) / 8);
461496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
461596c5ddc4Srjs   return cmd_size;
461696c5ddc4Srjs}
461796c5ddc4Srjsvoid GLAPIENTRY
461896c5ddc4Srjs_mesa_marshal_Hint(GLenum target, GLenum mode)
461996c5ddc4Srjs{
462096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
462196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Hint);
462296c5ddc4Srjs   struct marshal_cmd_Hint *cmd;
462396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Hint, cmd_size);
462496c5ddc4Srjs   cmd->target = target;
462596c5ddc4Srjs   cmd->mode = mode;
462696c5ddc4Srjs}
462796c5ddc4Srjs
462896c5ddc4Srjs
462996c5ddc4Srjs/* Lightf: marshalled asynchronously */
463096c5ddc4Srjsstruct marshal_cmd_Lightf
463196c5ddc4Srjs{
463296c5ddc4Srjs   struct marshal_cmd_base cmd_base;
463396c5ddc4Srjs   GLenum light;
463496c5ddc4Srjs   GLenum pname;
463596c5ddc4Srjs   GLfloat param;
463696c5ddc4Srjs};
463796c5ddc4Srjsuint32_t
463896c5ddc4Srjs_mesa_unmarshal_Lightf(struct gl_context *ctx, const struct marshal_cmd_Lightf *cmd, const uint64_t *last)
463996c5ddc4Srjs{
464096c5ddc4Srjs   GLenum light = cmd->light;
464196c5ddc4Srjs   GLenum pname = cmd->pname;
464296c5ddc4Srjs   GLfloat param = cmd->param;
464396c5ddc4Srjs   CALL_Lightf(ctx->CurrentServerDispatch, (light, pname, param));
464496c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Lightf), 8) / 8);
464596c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
464696c5ddc4Srjs   return cmd_size;
464796c5ddc4Srjs}
464896c5ddc4Srjsvoid GLAPIENTRY
464996c5ddc4Srjs_mesa_marshal_Lightf(GLenum light, GLenum pname, GLfloat param)
465096c5ddc4Srjs{
465196c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
465296c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Lightf);
465396c5ddc4Srjs   struct marshal_cmd_Lightf *cmd;
465496c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Lightf, cmd_size);
465596c5ddc4Srjs   cmd->light = light;
465696c5ddc4Srjs   cmd->pname = pname;
465796c5ddc4Srjs   cmd->param = param;
465896c5ddc4Srjs}
465996c5ddc4Srjs
466096c5ddc4Srjs
466196c5ddc4Srjs/* Lightfv: marshalled asynchronously */
466296c5ddc4Srjsstruct marshal_cmd_Lightfv
466396c5ddc4Srjs{
466496c5ddc4Srjs   struct marshal_cmd_base cmd_base;
466596c5ddc4Srjs   GLenum light;
466696c5ddc4Srjs   GLenum pname;
466796c5ddc4Srjs   /* Next safe_mul(_mesa_light_enum_to_count(pname), 1 * sizeof(GLfloat)) bytes are GLfloat params[None] */
466896c5ddc4Srjs};
466996c5ddc4Srjsuint32_t
467096c5ddc4Srjs_mesa_unmarshal_Lightfv(struct gl_context *ctx, const struct marshal_cmd_Lightfv *cmd, const uint64_t *last)
467196c5ddc4Srjs{
467296c5ddc4Srjs   GLenum light = cmd->light;
467396c5ddc4Srjs   GLenum pname = cmd->pname;
467496c5ddc4Srjs   GLfloat * params;
467596c5ddc4Srjs   const char *variable_data = (const char *) (cmd + 1);
467696c5ddc4Srjs   params = (GLfloat *) variable_data;
467796c5ddc4Srjs   CALL_Lightfv(ctx->CurrentServerDispatch, (light, pname, params));
467896c5ddc4Srjs   return cmd->cmd_base.cmd_size;
467996c5ddc4Srjs}
468096c5ddc4Srjsvoid GLAPIENTRY
468196c5ddc4Srjs_mesa_marshal_Lightfv(GLenum light, GLenum pname, const GLfloat * params)
468296c5ddc4Srjs{
468396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
468496c5ddc4Srjs   int params_size = safe_mul(_mesa_light_enum_to_count(pname), 1 * sizeof(GLfloat));
468596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Lightfv) + params_size;
468696c5ddc4Srjs   struct marshal_cmd_Lightfv *cmd;
468796c5ddc4Srjs   if (unlikely(params_size < 0 || (params_size > 0 && !params) || (unsigned)cmd_size > MARSHAL_MAX_CMD_SIZE)) {
468896c5ddc4Srjs      _mesa_glthread_finish_before(ctx, "Lightfv");
468996c5ddc4Srjs      CALL_Lightfv(ctx->CurrentServerDispatch, (light, pname, params));
469096c5ddc4Srjs      return;
469196c5ddc4Srjs   }
469296c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Lightfv, cmd_size);
469396c5ddc4Srjs   cmd->light = light;
469496c5ddc4Srjs   cmd->pname = pname;
469596c5ddc4Srjs   char *variable_data = (char *) (cmd + 1);
469696c5ddc4Srjs   memcpy(variable_data, params, params_size);
469796c5ddc4Srjs}
469896c5ddc4Srjs
469996c5ddc4Srjs
470096c5ddc4Srjs/* Lighti: marshalled asynchronously */
470196c5ddc4Srjsstruct marshal_cmd_Lighti
470296c5ddc4Srjs{
470396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
470496c5ddc4Srjs   GLenum light;
470596c5ddc4Srjs   GLenum pname;
470696c5ddc4Srjs   GLint param;
470796c5ddc4Srjs};
470896c5ddc4Srjsuint32_t
470996c5ddc4Srjs_mesa_unmarshal_Lighti(struct gl_context *ctx, const struct marshal_cmd_Lighti *cmd, const uint64_t *last)
471096c5ddc4Srjs{
471196c5ddc4Srjs   GLenum light = cmd->light;
471296c5ddc4Srjs   GLenum pname = cmd->pname;
471396c5ddc4Srjs   GLint param = cmd->param;
471496c5ddc4Srjs   CALL_Lighti(ctx->CurrentServerDispatch, (light, pname, param));
471596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Lighti), 8) / 8);
471696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
471796c5ddc4Srjs   return cmd_size;
471896c5ddc4Srjs}
471996c5ddc4Srjsvoid GLAPIENTRY
472096c5ddc4Srjs_mesa_marshal_Lighti(GLenum light, GLenum pname, GLint param)
472196c5ddc4Srjs{
472296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
472396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Lighti);
472496c5ddc4Srjs   struct marshal_cmd_Lighti *cmd;
472596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Lighti, cmd_size);
472696c5ddc4Srjs   cmd->light = light;
472796c5ddc4Srjs   cmd->pname = pname;
472896c5ddc4Srjs   cmd->param = param;
472996c5ddc4Srjs}
473096c5ddc4Srjs
473196c5ddc4Srjs
473296c5ddc4Srjs/* Lightiv: marshalled asynchronously */
473396c5ddc4Srjsstruct marshal_cmd_Lightiv
473496c5ddc4Srjs{
473596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
473696c5ddc4Srjs   GLenum light;
473796c5ddc4Srjs   GLenum pname;
473896c5ddc4Srjs   /* Next safe_mul(_mesa_light_enum_to_count(pname), 1 * sizeof(GLint)) bytes are GLint params[None] */
473996c5ddc4Srjs};
474096c5ddc4Srjsuint32_t
474196c5ddc4Srjs_mesa_unmarshal_Lightiv(struct gl_context *ctx, const struct marshal_cmd_Lightiv *cmd, const uint64_t *last)
474296c5ddc4Srjs{
474396c5ddc4Srjs   GLenum light = cmd->light;
474496c5ddc4Srjs   GLenum pname = cmd->pname;
474596c5ddc4Srjs   GLint * params;
474696c5ddc4Srjs   const char *variable_data = (const char *) (cmd + 1);
474796c5ddc4Srjs   params = (GLint *) variable_data;
474896c5ddc4Srjs   CALL_Lightiv(ctx->CurrentServerDispatch, (light, pname, params));
474996c5ddc4Srjs   return cmd->cmd_base.cmd_size;
475096c5ddc4Srjs}
475196c5ddc4Srjsvoid GLAPIENTRY
475296c5ddc4Srjs_mesa_marshal_Lightiv(GLenum light, GLenum pname, const GLint * params)
475396c5ddc4Srjs{
475496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
475596c5ddc4Srjs   int params_size = safe_mul(_mesa_light_enum_to_count(pname), 1 * sizeof(GLint));
475696c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Lightiv) + params_size;
475796c5ddc4Srjs   struct marshal_cmd_Lightiv *cmd;
475896c5ddc4Srjs   if (unlikely(params_size < 0 || (params_size > 0 && !params) || (unsigned)cmd_size > MARSHAL_MAX_CMD_SIZE)) {
475996c5ddc4Srjs      _mesa_glthread_finish_before(ctx, "Lightiv");
476096c5ddc4Srjs      CALL_Lightiv(ctx->CurrentServerDispatch, (light, pname, params));
476196c5ddc4Srjs      return;
476296c5ddc4Srjs   }
476396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Lightiv, cmd_size);
476496c5ddc4Srjs   cmd->light = light;
476596c5ddc4Srjs   cmd->pname = pname;
476696c5ddc4Srjs   char *variable_data = (char *) (cmd + 1);
476796c5ddc4Srjs   memcpy(variable_data, params, params_size);
476896c5ddc4Srjs}
476996c5ddc4Srjs
477096c5ddc4Srjs
477196c5ddc4Srjs/* LightModelf: marshalled asynchronously */
477296c5ddc4Srjsstruct marshal_cmd_LightModelf
477396c5ddc4Srjs{
477496c5ddc4Srjs   struct marshal_cmd_base cmd_base;
477596c5ddc4Srjs   GLenum pname;
477696c5ddc4Srjs   GLfloat param;
477796c5ddc4Srjs};
477896c5ddc4Srjsuint32_t
477996c5ddc4Srjs_mesa_unmarshal_LightModelf(struct gl_context *ctx, const struct marshal_cmd_LightModelf *cmd, const uint64_t *last)
478096c5ddc4Srjs{
478196c5ddc4Srjs   GLenum pname = cmd->pname;
478296c5ddc4Srjs   GLfloat param = cmd->param;
478396c5ddc4Srjs   CALL_LightModelf(ctx->CurrentServerDispatch, (pname, param));
478496c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_LightModelf), 8) / 8);
478596c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
478696c5ddc4Srjs   return cmd_size;
478796c5ddc4Srjs}
478896c5ddc4Srjsvoid GLAPIENTRY
478996c5ddc4Srjs_mesa_marshal_LightModelf(GLenum pname, GLfloat param)
479096c5ddc4Srjs{
479196c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
479296c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_LightModelf);
479396c5ddc4Srjs   struct marshal_cmd_LightModelf *cmd;
479496c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_LightModelf, cmd_size);
479596c5ddc4Srjs   cmd->pname = pname;
479696c5ddc4Srjs   cmd->param = param;
479796c5ddc4Srjs}
479896c5ddc4Srjs
479996c5ddc4Srjs
480096c5ddc4Srjs/* LightModelfv: marshalled asynchronously */
480196c5ddc4Srjsstruct marshal_cmd_LightModelfv
480296c5ddc4Srjs{
480396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
480496c5ddc4Srjs   GLenum pname;
480596c5ddc4Srjs   /* Next safe_mul(_mesa_light_model_enum_to_count(pname), 1 * sizeof(GLfloat)) bytes are GLfloat params[None] */
480696c5ddc4Srjs};
480796c5ddc4Srjsuint32_t
480896c5ddc4Srjs_mesa_unmarshal_LightModelfv(struct gl_context *ctx, const struct marshal_cmd_LightModelfv *cmd, const uint64_t *last)
480996c5ddc4Srjs{
481096c5ddc4Srjs   GLenum pname = cmd->pname;
481196c5ddc4Srjs   GLfloat * params;
481296c5ddc4Srjs   const char *variable_data = (const char *) (cmd + 1);
481396c5ddc4Srjs   params = (GLfloat *) variable_data;
481496c5ddc4Srjs   CALL_LightModelfv(ctx->CurrentServerDispatch, (pname, params));
481596c5ddc4Srjs   return cmd->cmd_base.cmd_size;
481696c5ddc4Srjs}
481796c5ddc4Srjsvoid GLAPIENTRY
481896c5ddc4Srjs_mesa_marshal_LightModelfv(GLenum pname, const GLfloat * params)
481996c5ddc4Srjs{
482096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
482196c5ddc4Srjs   int params_size = safe_mul(_mesa_light_model_enum_to_count(pname), 1 * sizeof(GLfloat));
482296c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_LightModelfv) + params_size;
482396c5ddc4Srjs   struct marshal_cmd_LightModelfv *cmd;
482496c5ddc4Srjs   if (unlikely(params_size < 0 || (params_size > 0 && !params) || (unsigned)cmd_size > MARSHAL_MAX_CMD_SIZE)) {
482596c5ddc4Srjs      _mesa_glthread_finish_before(ctx, "LightModelfv");
482696c5ddc4Srjs      CALL_LightModelfv(ctx->CurrentServerDispatch, (pname, params));
482796c5ddc4Srjs      return;
482896c5ddc4Srjs   }
482996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_LightModelfv, cmd_size);
483096c5ddc4Srjs   cmd->pname = pname;
483196c5ddc4Srjs   char *variable_data = (char *) (cmd + 1);
483296c5ddc4Srjs   memcpy(variable_data, params, params_size);
483396c5ddc4Srjs}
483496c5ddc4Srjs
483596c5ddc4Srjs
483696c5ddc4Srjs/* LightModeli: marshalled asynchronously */
483796c5ddc4Srjsstruct marshal_cmd_LightModeli
483896c5ddc4Srjs{
483996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
484096c5ddc4Srjs   GLenum pname;
484196c5ddc4Srjs   GLint param;
484296c5ddc4Srjs};
484396c5ddc4Srjsuint32_t
484496c5ddc4Srjs_mesa_unmarshal_LightModeli(struct gl_context *ctx, const struct marshal_cmd_LightModeli *cmd, const uint64_t *last)
484596c5ddc4Srjs{
484696c5ddc4Srjs   GLenum pname = cmd->pname;
484796c5ddc4Srjs   GLint param = cmd->param;
484896c5ddc4Srjs   CALL_LightModeli(ctx->CurrentServerDispatch, (pname, param));
484996c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_LightModeli), 8) / 8);
485096c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
485196c5ddc4Srjs   return cmd_size;
485296c5ddc4Srjs}
485396c5ddc4Srjsvoid GLAPIENTRY
485496c5ddc4Srjs_mesa_marshal_LightModeli(GLenum pname, GLint param)
485596c5ddc4Srjs{
485696c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
485796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_LightModeli);
485896c5ddc4Srjs   struct marshal_cmd_LightModeli *cmd;
485996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_LightModeli, cmd_size);
486096c5ddc4Srjs   cmd->pname = pname;
486196c5ddc4Srjs   cmd->param = param;
486296c5ddc4Srjs}
486396c5ddc4Srjs
486496c5ddc4Srjs
486596c5ddc4Srjs/* LightModeliv: marshalled asynchronously */
486696c5ddc4Srjsstruct marshal_cmd_LightModeliv
486796c5ddc4Srjs{
486896c5ddc4Srjs   struct marshal_cmd_base cmd_base;
486996c5ddc4Srjs   GLenum pname;
487096c5ddc4Srjs   /* Next safe_mul(_mesa_light_model_enum_to_count(pname), 1 * sizeof(GLint)) bytes are GLint params[None] */
487196c5ddc4Srjs};
487296c5ddc4Srjsuint32_t
487396c5ddc4Srjs_mesa_unmarshal_LightModeliv(struct gl_context *ctx, const struct marshal_cmd_LightModeliv *cmd, const uint64_t *last)
487496c5ddc4Srjs{
487596c5ddc4Srjs   GLenum pname = cmd->pname;
487696c5ddc4Srjs   GLint * params;
487796c5ddc4Srjs   const char *variable_data = (const char *) (cmd + 1);
487896c5ddc4Srjs   params = (GLint *) variable_data;
487996c5ddc4Srjs   CALL_LightModeliv(ctx->CurrentServerDispatch, (pname, params));
488096c5ddc4Srjs   return cmd->cmd_base.cmd_size;
488196c5ddc4Srjs}
488296c5ddc4Srjsvoid GLAPIENTRY
488396c5ddc4Srjs_mesa_marshal_LightModeliv(GLenum pname, const GLint * params)
488496c5ddc4Srjs{
488596c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
488696c5ddc4Srjs   int params_size = safe_mul(_mesa_light_model_enum_to_count(pname), 1 * sizeof(GLint));
488796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_LightModeliv) + params_size;
488896c5ddc4Srjs   struct marshal_cmd_LightModeliv *cmd;
488996c5ddc4Srjs   if (unlikely(params_size < 0 || (params_size > 0 && !params) || (unsigned)cmd_size > MARSHAL_MAX_CMD_SIZE)) {
489096c5ddc4Srjs      _mesa_glthread_finish_before(ctx, "LightModeliv");
489196c5ddc4Srjs      CALL_LightModeliv(ctx->CurrentServerDispatch, (pname, params));
489296c5ddc4Srjs      return;
489396c5ddc4Srjs   }
489496c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_LightModeliv, cmd_size);
489596c5ddc4Srjs   cmd->pname = pname;
489696c5ddc4Srjs   char *variable_data = (char *) (cmd + 1);
489796c5ddc4Srjs   memcpy(variable_data, params, params_size);
489896c5ddc4Srjs}
489996c5ddc4Srjs
490096c5ddc4Srjs
490196c5ddc4Srjs/* LineStipple: marshalled asynchronously */
490296c5ddc4Srjsstruct marshal_cmd_LineStipple
490396c5ddc4Srjs{
490496c5ddc4Srjs   struct marshal_cmd_base cmd_base;
490596c5ddc4Srjs   GLushort pattern;
490696c5ddc4Srjs   GLint factor;
490796c5ddc4Srjs};
490896c5ddc4Srjsuint32_t
490996c5ddc4Srjs_mesa_unmarshal_LineStipple(struct gl_context *ctx, const struct marshal_cmd_LineStipple *cmd, const uint64_t *last)
491096c5ddc4Srjs{
491196c5ddc4Srjs   GLint factor = cmd->factor;
491296c5ddc4Srjs   GLushort pattern = cmd->pattern;
491396c5ddc4Srjs   CALL_LineStipple(ctx->CurrentServerDispatch, (factor, pattern));
491496c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_LineStipple), 8) / 8);
491596c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
491696c5ddc4Srjs   return cmd_size;
491796c5ddc4Srjs}
491896c5ddc4Srjsvoid GLAPIENTRY
491996c5ddc4Srjs_mesa_marshal_LineStipple(GLint factor, GLushort pattern)
492096c5ddc4Srjs{
492196c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
492296c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_LineStipple);
492396c5ddc4Srjs   struct marshal_cmd_LineStipple *cmd;
492496c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_LineStipple, cmd_size);
492596c5ddc4Srjs   cmd->factor = factor;
492696c5ddc4Srjs   cmd->pattern = pattern;
492796c5ddc4Srjs}
492896c5ddc4Srjs
492996c5ddc4Srjs
493096c5ddc4Srjs/* LineWidth: marshalled asynchronously */
493196c5ddc4Srjsstruct marshal_cmd_LineWidth
493296c5ddc4Srjs{
493396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
493496c5ddc4Srjs   GLfloat width;
493596c5ddc4Srjs};
493696c5ddc4Srjsuint32_t
493796c5ddc4Srjs_mesa_unmarshal_LineWidth(struct gl_context *ctx, const struct marshal_cmd_LineWidth *cmd, const uint64_t *last)
493896c5ddc4Srjs{
493996c5ddc4Srjs   GLfloat width = cmd->width;
494096c5ddc4Srjs   CALL_LineWidth(ctx->CurrentServerDispatch, (width));
494196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_LineWidth), 8) / 8);
494296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
494396c5ddc4Srjs   return cmd_size;
494496c5ddc4Srjs}
494596c5ddc4Srjsvoid GLAPIENTRY
494696c5ddc4Srjs_mesa_marshal_LineWidth(GLfloat width)
494796c5ddc4Srjs{
494896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
494996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_LineWidth);
495096c5ddc4Srjs   struct marshal_cmd_LineWidth *cmd;
495196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_LineWidth, cmd_size);
495296c5ddc4Srjs   cmd->width = width;
495396c5ddc4Srjs}
495496c5ddc4Srjs
495596c5ddc4Srjs
495696c5ddc4Srjs/* Materialf: marshalled asynchronously */
495796c5ddc4Srjsstruct marshal_cmd_Materialf
495896c5ddc4Srjs{
495996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
496096c5ddc4Srjs   GLenum face;
496196c5ddc4Srjs   GLenum pname;
496296c5ddc4Srjs   GLfloat param;
496396c5ddc4Srjs};
496496c5ddc4Srjsuint32_t
496596c5ddc4Srjs_mesa_unmarshal_Materialf(struct gl_context *ctx, const struct marshal_cmd_Materialf *cmd, const uint64_t *last)
496696c5ddc4Srjs{
496796c5ddc4Srjs   GLenum face = cmd->face;
496896c5ddc4Srjs   GLenum pname = cmd->pname;
496996c5ddc4Srjs   GLfloat param = cmd->param;
497096c5ddc4Srjs   CALL_Materialf(ctx->CurrentServerDispatch, (face, pname, param));
497196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Materialf), 8) / 8);
497296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
497396c5ddc4Srjs   return cmd_size;
497496c5ddc4Srjs}
497596c5ddc4Srjsvoid GLAPIENTRY
497696c5ddc4Srjs_mesa_marshal_Materialf(GLenum face, GLenum pname, GLfloat param)
497796c5ddc4Srjs{
497896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
497996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Materialf);
498096c5ddc4Srjs   struct marshal_cmd_Materialf *cmd;
498196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Materialf, cmd_size);
498296c5ddc4Srjs   cmd->face = face;
498396c5ddc4Srjs   cmd->pname = pname;
498496c5ddc4Srjs   cmd->param = param;
498596c5ddc4Srjs}
498696c5ddc4Srjs
498796c5ddc4Srjs
498896c5ddc4Srjs/* Materialfv: marshalled asynchronously */
498996c5ddc4Srjsstruct marshal_cmd_Materialfv
499096c5ddc4Srjs{
499196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
499296c5ddc4Srjs   GLenum face;
499396c5ddc4Srjs   GLenum pname;
499496c5ddc4Srjs   /* Next safe_mul(_mesa_material_enum_to_count(pname), 1 * sizeof(GLfloat)) bytes are GLfloat params[None] */
499596c5ddc4Srjs};
499696c5ddc4Srjsuint32_t
499796c5ddc4Srjs_mesa_unmarshal_Materialfv(struct gl_context *ctx, const struct marshal_cmd_Materialfv *cmd, const uint64_t *last)
499896c5ddc4Srjs{
499996c5ddc4Srjs   GLenum face = cmd->face;
500096c5ddc4Srjs   GLenum pname = cmd->pname;
500196c5ddc4Srjs   GLfloat * params;
500296c5ddc4Srjs   const char *variable_data = (const char *) (cmd + 1);
500396c5ddc4Srjs   params = (GLfloat *) variable_data;
500496c5ddc4Srjs   CALL_Materialfv(ctx->CurrentServerDispatch, (face, pname, params));
500596c5ddc4Srjs   return cmd->cmd_base.cmd_size;
500696c5ddc4Srjs}
500796c5ddc4Srjsvoid GLAPIENTRY
500896c5ddc4Srjs_mesa_marshal_Materialfv(GLenum face, GLenum pname, const GLfloat * params)
500996c5ddc4Srjs{
501096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
501196c5ddc4Srjs   int params_size = safe_mul(_mesa_material_enum_to_count(pname), 1 * sizeof(GLfloat));
501296c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Materialfv) + params_size;
501396c5ddc4Srjs   struct marshal_cmd_Materialfv *cmd;
501496c5ddc4Srjs   if (unlikely(params_size < 0 || (params_size > 0 && !params) || (unsigned)cmd_size > MARSHAL_MAX_CMD_SIZE)) {
501596c5ddc4Srjs      _mesa_glthread_finish_before(ctx, "Materialfv");
501696c5ddc4Srjs      CALL_Materialfv(ctx->CurrentServerDispatch, (face, pname, params));
501796c5ddc4Srjs      return;
501896c5ddc4Srjs   }
501996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Materialfv, cmd_size);
502096c5ddc4Srjs   cmd->face = face;
502196c5ddc4Srjs   cmd->pname = pname;
502296c5ddc4Srjs   char *variable_data = (char *) (cmd + 1);
502396c5ddc4Srjs   memcpy(variable_data, params, params_size);
502496c5ddc4Srjs}
502596c5ddc4Srjs
502696c5ddc4Srjs
502796c5ddc4Srjs/* Materiali: marshalled asynchronously */
502896c5ddc4Srjsstruct marshal_cmd_Materiali
502996c5ddc4Srjs{
503096c5ddc4Srjs   struct marshal_cmd_base cmd_base;
503196c5ddc4Srjs   GLenum face;
503296c5ddc4Srjs   GLenum pname;
503396c5ddc4Srjs   GLint param;
503496c5ddc4Srjs};
503596c5ddc4Srjsuint32_t
503696c5ddc4Srjs_mesa_unmarshal_Materiali(struct gl_context *ctx, const struct marshal_cmd_Materiali *cmd, const uint64_t *last)
503796c5ddc4Srjs{
503896c5ddc4Srjs   GLenum face = cmd->face;
503996c5ddc4Srjs   GLenum pname = cmd->pname;
504096c5ddc4Srjs   GLint param = cmd->param;
504196c5ddc4Srjs   CALL_Materiali(ctx->CurrentServerDispatch, (face, pname, param));
504296c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Materiali), 8) / 8);
504396c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
504496c5ddc4Srjs   return cmd_size;
504596c5ddc4Srjs}
504696c5ddc4Srjsvoid GLAPIENTRY
504796c5ddc4Srjs_mesa_marshal_Materiali(GLenum face, GLenum pname, GLint param)
504896c5ddc4Srjs{
504996c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
505096c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Materiali);
505196c5ddc4Srjs   struct marshal_cmd_Materiali *cmd;
505296c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Materiali, cmd_size);
505396c5ddc4Srjs   cmd->face = face;
505496c5ddc4Srjs   cmd->pname = pname;
505596c5ddc4Srjs   cmd->param = param;
505696c5ddc4Srjs}
505796c5ddc4Srjs
505896c5ddc4Srjs
505996c5ddc4Srjs/* Materialiv: marshalled asynchronously */
506096c5ddc4Srjsstruct marshal_cmd_Materialiv
506196c5ddc4Srjs{
506296c5ddc4Srjs   struct marshal_cmd_base cmd_base;
506396c5ddc4Srjs   GLenum face;
506496c5ddc4Srjs   GLenum pname;
506596c5ddc4Srjs   /* Next safe_mul(_mesa_material_enum_to_count(pname), 1 * sizeof(GLint)) bytes are GLint params[None] */
506696c5ddc4Srjs};
506796c5ddc4Srjsuint32_t
506896c5ddc4Srjs_mesa_unmarshal_Materialiv(struct gl_context *ctx, const struct marshal_cmd_Materialiv *cmd, const uint64_t *last)
506996c5ddc4Srjs{
507096c5ddc4Srjs   GLenum face = cmd->face;
507196c5ddc4Srjs   GLenum pname = cmd->pname;
507296c5ddc4Srjs   GLint * params;
507396c5ddc4Srjs   const char *variable_data = (const char *) (cmd + 1);
507496c5ddc4Srjs   params = (GLint *) variable_data;
507596c5ddc4Srjs   CALL_Materialiv(ctx->CurrentServerDispatch, (face, pname, params));
507696c5ddc4Srjs   return cmd->cmd_base.cmd_size;
507796c5ddc4Srjs}
507896c5ddc4Srjsvoid GLAPIENTRY
507996c5ddc4Srjs_mesa_marshal_Materialiv(GLenum face, GLenum pname, const GLint * params)
508096c5ddc4Srjs{
508196c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
508296c5ddc4Srjs   int params_size = safe_mul(_mesa_material_enum_to_count(pname), 1 * sizeof(GLint));
508396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Materialiv) + params_size;
508496c5ddc4Srjs   struct marshal_cmd_Materialiv *cmd;
508596c5ddc4Srjs   if (unlikely(params_size < 0 || (params_size > 0 && !params) || (unsigned)cmd_size > MARSHAL_MAX_CMD_SIZE)) {
508696c5ddc4Srjs      _mesa_glthread_finish_before(ctx, "Materialiv");
508796c5ddc4Srjs      CALL_Materialiv(ctx->CurrentServerDispatch, (face, pname, params));
508896c5ddc4Srjs      return;
508996c5ddc4Srjs   }
509096c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Materialiv, cmd_size);
509196c5ddc4Srjs   cmd->face = face;
509296c5ddc4Srjs   cmd->pname = pname;
509396c5ddc4Srjs   char *variable_data = (char *) (cmd + 1);
509496c5ddc4Srjs   memcpy(variable_data, params, params_size);
509596c5ddc4Srjs}
509696c5ddc4Srjs
509796c5ddc4Srjs
509896c5ddc4Srjs/* PointSize: marshalled asynchronously */
509996c5ddc4Srjsstruct marshal_cmd_PointSize
510096c5ddc4Srjs{
510196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
510296c5ddc4Srjs   GLfloat size;
510396c5ddc4Srjs};
510496c5ddc4Srjsuint32_t
510596c5ddc4Srjs_mesa_unmarshal_PointSize(struct gl_context *ctx, const struct marshal_cmd_PointSize *cmd, const uint64_t *last)
510696c5ddc4Srjs{
510796c5ddc4Srjs   GLfloat size = cmd->size;
510896c5ddc4Srjs   CALL_PointSize(ctx->CurrentServerDispatch, (size));
510996c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_PointSize), 8) / 8);
511096c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
511196c5ddc4Srjs   return cmd_size;
511296c5ddc4Srjs}
511396c5ddc4Srjsvoid GLAPIENTRY
511496c5ddc4Srjs_mesa_marshal_PointSize(GLfloat size)
511596c5ddc4Srjs{
511696c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
511796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_PointSize);
511896c5ddc4Srjs   struct marshal_cmd_PointSize *cmd;
511996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_PointSize, cmd_size);
512096c5ddc4Srjs   cmd->size = size;
512196c5ddc4Srjs}
512296c5ddc4Srjs
512396c5ddc4Srjs
512496c5ddc4Srjs/* PolygonMode: marshalled asynchronously */
512596c5ddc4Srjsstruct marshal_cmd_PolygonMode
512696c5ddc4Srjs{
512796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
512896c5ddc4Srjs   GLenum face;
512996c5ddc4Srjs   GLenum mode;
513096c5ddc4Srjs};
513196c5ddc4Srjsuint32_t
513296c5ddc4Srjs_mesa_unmarshal_PolygonMode(struct gl_context *ctx, const struct marshal_cmd_PolygonMode *cmd, const uint64_t *last)
513396c5ddc4Srjs{
513496c5ddc4Srjs   GLenum face = cmd->face;
513596c5ddc4Srjs   GLenum mode = cmd->mode;
513696c5ddc4Srjs   CALL_PolygonMode(ctx->CurrentServerDispatch, (face, mode));
513796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_PolygonMode), 8) / 8);
513896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
513996c5ddc4Srjs   return cmd_size;
514096c5ddc4Srjs}
514196c5ddc4Srjsvoid GLAPIENTRY
514296c5ddc4Srjs_mesa_marshal_PolygonMode(GLenum face, GLenum mode)
514396c5ddc4Srjs{
514496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
514596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_PolygonMode);
514696c5ddc4Srjs   struct marshal_cmd_PolygonMode *cmd;
514796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_PolygonMode, cmd_size);
514896c5ddc4Srjs   cmd->face = face;
514996c5ddc4Srjs   cmd->mode = mode;
515096c5ddc4Srjs}
515196c5ddc4Srjs
515296c5ddc4Srjs
515396c5ddc4Srjs/* PolygonStipple: marshalled asynchronously */
515496c5ddc4Srjsstruct marshal_cmd_PolygonStipple
515596c5ddc4Srjs{
515696c5ddc4Srjs   struct marshal_cmd_base cmd_base;
515796c5ddc4Srjs   const GLubyte * mask;
515896c5ddc4Srjs};
515996c5ddc4Srjsuint32_t
516096c5ddc4Srjs_mesa_unmarshal_PolygonStipple(struct gl_context *ctx, const struct marshal_cmd_PolygonStipple *cmd, const uint64_t *last)
516196c5ddc4Srjs{
516296c5ddc4Srjs   const GLubyte * mask = cmd->mask;
516396c5ddc4Srjs   CALL_PolygonStipple(ctx->CurrentServerDispatch, (mask));
516496c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_PolygonStipple), 8) / 8);
516596c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
516696c5ddc4Srjs   return cmd_size;
516796c5ddc4Srjs}
516896c5ddc4Srjsvoid GLAPIENTRY
516996c5ddc4Srjs_mesa_marshal_PolygonStipple(const GLubyte * mask)
517096c5ddc4Srjs{
517196c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
517296c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_PolygonStipple);
517396c5ddc4Srjs   struct marshal_cmd_PolygonStipple *cmd;
517496c5ddc4Srjs   if (_mesa_glthread_has_no_unpack_buffer(ctx)) {
517596c5ddc4Srjs      _mesa_glthread_finish_before(ctx, "PolygonStipple");
517696c5ddc4Srjs      CALL_PolygonStipple(ctx->CurrentServerDispatch, (mask));
517796c5ddc4Srjs      return;
517896c5ddc4Srjs   }
517996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_PolygonStipple, cmd_size);
518096c5ddc4Srjs   cmd->mask = mask;
518196c5ddc4Srjs}
518296c5ddc4Srjs
518396c5ddc4Srjs
518496c5ddc4Srjs/* Scissor: marshalled asynchronously */
518596c5ddc4Srjsstruct marshal_cmd_Scissor
518696c5ddc4Srjs{
518796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
518896c5ddc4Srjs   GLint x;
518996c5ddc4Srjs   GLint y;
519096c5ddc4Srjs   GLsizei width;
519196c5ddc4Srjs   GLsizei height;
519296c5ddc4Srjs};
519396c5ddc4Srjsuint32_t
519496c5ddc4Srjs_mesa_unmarshal_Scissor(struct gl_context *ctx, const struct marshal_cmd_Scissor *cmd, const uint64_t *last)
519596c5ddc4Srjs{
519696c5ddc4Srjs   GLint x = cmd->x;
519796c5ddc4Srjs   GLint y = cmd->y;
519896c5ddc4Srjs   GLsizei width = cmd->width;
519996c5ddc4Srjs   GLsizei height = cmd->height;
520096c5ddc4Srjs   CALL_Scissor(ctx->CurrentServerDispatch, (x, y, width, height));
520196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Scissor), 8) / 8);
520296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
520396c5ddc4Srjs   return cmd_size;
520496c5ddc4Srjs}
520596c5ddc4Srjsvoid GLAPIENTRY
520696c5ddc4Srjs_mesa_marshal_Scissor(GLint x, GLint y, GLsizei width, GLsizei height)
520796c5ddc4Srjs{
520896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
520996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Scissor);
521096c5ddc4Srjs   struct marshal_cmd_Scissor *cmd;
521196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Scissor, cmd_size);
521296c5ddc4Srjs   cmd->x = x;
521396c5ddc4Srjs   cmd->y = y;
521496c5ddc4Srjs   cmd->width = width;
521596c5ddc4Srjs   cmd->height = height;
521696c5ddc4Srjs}
521796c5ddc4Srjs
521896c5ddc4Srjs
521996c5ddc4Srjs/* ShadeModel: marshalled asynchronously */
522096c5ddc4Srjsstruct marshal_cmd_ShadeModel
522196c5ddc4Srjs{
522296c5ddc4Srjs   struct marshal_cmd_base cmd_base;
522396c5ddc4Srjs   GLenum mode;
522496c5ddc4Srjs};
522596c5ddc4Srjsuint32_t
522696c5ddc4Srjs_mesa_unmarshal_ShadeModel(struct gl_context *ctx, const struct marshal_cmd_ShadeModel *cmd, const uint64_t *last)
522796c5ddc4Srjs{
522896c5ddc4Srjs   GLenum mode = cmd->mode;
522996c5ddc4Srjs   CALL_ShadeModel(ctx->CurrentServerDispatch, (mode));
523096c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_ShadeModel), 8) / 8);
523196c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
523296c5ddc4Srjs   return cmd_size;
523396c5ddc4Srjs}
523496c5ddc4Srjsvoid GLAPIENTRY
523596c5ddc4Srjs_mesa_marshal_ShadeModel(GLenum mode)
523696c5ddc4Srjs{
523796c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
523896c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_ShadeModel);
523996c5ddc4Srjs   struct marshal_cmd_ShadeModel *cmd;
524096c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_ShadeModel, cmd_size);
524196c5ddc4Srjs   cmd->mode = mode;
524296c5ddc4Srjs}
524396c5ddc4Srjs
524496c5ddc4Srjs
524596c5ddc4Srjs/* TexParameterf: marshalled asynchronously */
524696c5ddc4Srjsstruct marshal_cmd_TexParameterf
524796c5ddc4Srjs{
524896c5ddc4Srjs   struct marshal_cmd_base cmd_base;
524996c5ddc4Srjs   GLenum target;
525096c5ddc4Srjs   GLenum pname;
525196c5ddc4Srjs   GLfloat param;
525296c5ddc4Srjs};
525396c5ddc4Srjsuint32_t
525496c5ddc4Srjs_mesa_unmarshal_TexParameterf(struct gl_context *ctx, const struct marshal_cmd_TexParameterf *cmd, const uint64_t *last)
525596c5ddc4Srjs{
525696c5ddc4Srjs   GLenum target = cmd->target;
525796c5ddc4Srjs   GLenum pname = cmd->pname;
525896c5ddc4Srjs   GLfloat param = cmd->param;
525996c5ddc4Srjs   CALL_TexParameterf(ctx->CurrentServerDispatch, (target, pname, param));
526096c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexParameterf), 8) / 8);
526196c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
526296c5ddc4Srjs   return cmd_size;
526396c5ddc4Srjs}
526496c5ddc4Srjsvoid GLAPIENTRY
526596c5ddc4Srjs_mesa_marshal_TexParameterf(GLenum target, GLenum pname, GLfloat param)
526696c5ddc4Srjs{
526796c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
526896c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexParameterf);
526996c5ddc4Srjs   struct marshal_cmd_TexParameterf *cmd;
527096c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexParameterf, cmd_size);
527196c5ddc4Srjs   cmd->target = target;
527296c5ddc4Srjs   cmd->pname = pname;
527396c5ddc4Srjs   cmd->param = param;
527496c5ddc4Srjs}
527596c5ddc4Srjs
527696c5ddc4Srjs
527796c5ddc4Srjs/* TexParameterfv: marshalled asynchronously */
527896c5ddc4Srjsstruct marshal_cmd_TexParameterfv
527996c5ddc4Srjs{
528096c5ddc4Srjs   struct marshal_cmd_base cmd_base;
528196c5ddc4Srjs   GLenum target;
528296c5ddc4Srjs   GLenum pname;
528396c5ddc4Srjs   /* Next safe_mul(_mesa_tex_param_enum_to_count(pname), 1 * sizeof(GLfloat)) bytes are GLfloat params[None] */
528496c5ddc4Srjs};
528596c5ddc4Srjsuint32_t
528696c5ddc4Srjs_mesa_unmarshal_TexParameterfv(struct gl_context *ctx, const struct marshal_cmd_TexParameterfv *cmd, const uint64_t *last)
528796c5ddc4Srjs{
528896c5ddc4Srjs   GLenum target = cmd->target;
528996c5ddc4Srjs   GLenum pname = cmd->pname;
529096c5ddc4Srjs   GLfloat * params;
529196c5ddc4Srjs   const char *variable_data = (const char *) (cmd + 1);
529296c5ddc4Srjs   params = (GLfloat *) variable_data;
529396c5ddc4Srjs   CALL_TexParameterfv(ctx->CurrentServerDispatch, (target, pname, params));
529496c5ddc4Srjs   return cmd->cmd_base.cmd_size;
529596c5ddc4Srjs}
529696c5ddc4Srjsvoid GLAPIENTRY
529796c5ddc4Srjs_mesa_marshal_TexParameterfv(GLenum target, GLenum pname, const GLfloat * params)
529896c5ddc4Srjs{
529996c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
530096c5ddc4Srjs   int params_size = safe_mul(_mesa_tex_param_enum_to_count(pname), 1 * sizeof(GLfloat));
530196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexParameterfv) + params_size;
530296c5ddc4Srjs   struct marshal_cmd_TexParameterfv *cmd;
530396c5ddc4Srjs   if (unlikely(params_size < 0 || (params_size > 0 && !params) || (unsigned)cmd_size > MARSHAL_MAX_CMD_SIZE)) {
530496c5ddc4Srjs      _mesa_glthread_finish_before(ctx, "TexParameterfv");
530596c5ddc4Srjs      CALL_TexParameterfv(ctx->CurrentServerDispatch, (target, pname, params));
530696c5ddc4Srjs      return;
530796c5ddc4Srjs   }
530896c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexParameterfv, cmd_size);
530996c5ddc4Srjs   cmd->target = target;
531096c5ddc4Srjs   cmd->pname = pname;
531196c5ddc4Srjs   char *variable_data = (char *) (cmd + 1);
531296c5ddc4Srjs   memcpy(variable_data, params, params_size);
531396c5ddc4Srjs}
531496c5ddc4Srjs
531596c5ddc4Srjs
531696c5ddc4Srjs/* TexParameteri: marshalled asynchronously */
531796c5ddc4Srjsstruct marshal_cmd_TexParameteri
531896c5ddc4Srjs{
531996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
532096c5ddc4Srjs   GLenum target;
532196c5ddc4Srjs   GLenum pname;
532296c5ddc4Srjs   GLint param;
532396c5ddc4Srjs};
532496c5ddc4Srjsuint32_t
532596c5ddc4Srjs_mesa_unmarshal_TexParameteri(struct gl_context *ctx, const struct marshal_cmd_TexParameteri *cmd, const uint64_t *last)
532696c5ddc4Srjs{
532796c5ddc4Srjs   GLenum target = cmd->target;
532896c5ddc4Srjs   GLenum pname = cmd->pname;
532996c5ddc4Srjs   GLint param = cmd->param;
533096c5ddc4Srjs   CALL_TexParameteri(ctx->CurrentServerDispatch, (target, pname, param));
533196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexParameteri), 8) / 8);
533296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
533396c5ddc4Srjs   return cmd_size;
533496c5ddc4Srjs}
533596c5ddc4Srjsvoid GLAPIENTRY
533696c5ddc4Srjs_mesa_marshal_TexParameteri(GLenum target, GLenum pname, GLint param)
533796c5ddc4Srjs{
533896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
533996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexParameteri);
534096c5ddc4Srjs   struct marshal_cmd_TexParameteri *cmd;
534196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexParameteri, cmd_size);
534296c5ddc4Srjs   cmd->target = target;
534396c5ddc4Srjs   cmd->pname = pname;
534496c5ddc4Srjs   cmd->param = param;
534596c5ddc4Srjs}
534696c5ddc4Srjs
534796c5ddc4Srjs
534896c5ddc4Srjs/* TexParameteriv: marshalled asynchronously */
534996c5ddc4Srjsstruct marshal_cmd_TexParameteriv
535096c5ddc4Srjs{
535196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
535296c5ddc4Srjs   GLenum target;
535396c5ddc4Srjs   GLenum pname;
535496c5ddc4Srjs   /* Next safe_mul(_mesa_tex_param_enum_to_count(pname), 1 * sizeof(GLint)) bytes are GLint params[None] */
535596c5ddc4Srjs};
535696c5ddc4Srjsuint32_t
535796c5ddc4Srjs_mesa_unmarshal_TexParameteriv(struct gl_context *ctx, const struct marshal_cmd_TexParameteriv *cmd, const uint64_t *last)
535896c5ddc4Srjs{
535996c5ddc4Srjs   GLenum target = cmd->target;
536096c5ddc4Srjs   GLenum pname = cmd->pname;
536196c5ddc4Srjs   GLint * params;
536296c5ddc4Srjs   const char *variable_data = (const char *) (cmd + 1);
536396c5ddc4Srjs   params = (GLint *) variable_data;
536496c5ddc4Srjs   CALL_TexParameteriv(ctx->CurrentServerDispatch, (target, pname, params));
536596c5ddc4Srjs   return cmd->cmd_base.cmd_size;
536696c5ddc4Srjs}
536796c5ddc4Srjsvoid GLAPIENTRY
536896c5ddc4Srjs_mesa_marshal_TexParameteriv(GLenum target, GLenum pname, const GLint * params)
536996c5ddc4Srjs{
537096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
537196c5ddc4Srjs   int params_size = safe_mul(_mesa_tex_param_enum_to_count(pname), 1 * sizeof(GLint));
537296c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexParameteriv) + params_size;
537396c5ddc4Srjs   struct marshal_cmd_TexParameteriv *cmd;
537496c5ddc4Srjs   if (unlikely(params_size < 0 || (params_size > 0 && !params) || (unsigned)cmd_size > MARSHAL_MAX_CMD_SIZE)) {
537596c5ddc4Srjs      _mesa_glthread_finish_before(ctx, "TexParameteriv");
537696c5ddc4Srjs      CALL_TexParameteriv(ctx->CurrentServerDispatch, (target, pname, params));
537796c5ddc4Srjs      return;
537896c5ddc4Srjs   }
537996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexParameteriv, cmd_size);
538096c5ddc4Srjs   cmd->target = target;
538196c5ddc4Srjs   cmd->pname = pname;
538296c5ddc4Srjs   char *variable_data = (char *) (cmd + 1);
538396c5ddc4Srjs   memcpy(variable_data, params, params_size);
538496c5ddc4Srjs}
538596c5ddc4Srjs
538696c5ddc4Srjs
538796c5ddc4Srjs/* TexImage1D: marshalled asynchronously */
538896c5ddc4Srjsstruct marshal_cmd_TexImage1D
538996c5ddc4Srjs{
539096c5ddc4Srjs   struct marshal_cmd_base cmd_base;
539196c5ddc4Srjs   GLenum target;
539296c5ddc4Srjs   GLint level;
539396c5ddc4Srjs   GLint internalformat;
539496c5ddc4Srjs   GLsizei width;
539596c5ddc4Srjs   GLint border;
539696c5ddc4Srjs   GLenum format;
539796c5ddc4Srjs   GLenum type;
539896c5ddc4Srjs   const GLvoid * pixels;
539996c5ddc4Srjs};
540096c5ddc4Srjsuint32_t
540196c5ddc4Srjs_mesa_unmarshal_TexImage1D(struct gl_context *ctx, const struct marshal_cmd_TexImage1D *cmd, const uint64_t *last)
540296c5ddc4Srjs{
540396c5ddc4Srjs   GLenum target = cmd->target;
540496c5ddc4Srjs   GLint level = cmd->level;
540596c5ddc4Srjs   GLint internalformat = cmd->internalformat;
540696c5ddc4Srjs   GLsizei width = cmd->width;
540796c5ddc4Srjs   GLint border = cmd->border;
540896c5ddc4Srjs   GLenum format = cmd->format;
540996c5ddc4Srjs   GLenum type = cmd->type;
541096c5ddc4Srjs   const GLvoid * pixels = cmd->pixels;
541196c5ddc4Srjs   CALL_TexImage1D(ctx->CurrentServerDispatch, (target, level, internalformat, width, border, format, type, pixels));
541296c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexImage1D), 8) / 8);
541396c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
541496c5ddc4Srjs   return cmd_size;
541596c5ddc4Srjs}
541696c5ddc4Srjsvoid GLAPIENTRY
541796c5ddc4Srjs_mesa_marshal_TexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid * pixels)
541896c5ddc4Srjs{
541996c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
542096c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexImage1D);
542196c5ddc4Srjs   struct marshal_cmd_TexImage1D *cmd;
542296c5ddc4Srjs   if (_mesa_glthread_has_no_unpack_buffer(ctx)) {
542396c5ddc4Srjs      _mesa_glthread_finish_before(ctx, "TexImage1D");
542496c5ddc4Srjs      CALL_TexImage1D(ctx->CurrentServerDispatch, (target, level, internalformat, width, border, format, type, pixels));
542596c5ddc4Srjs      return;
542696c5ddc4Srjs   }
542796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexImage1D, cmd_size);
542896c5ddc4Srjs   cmd->target = target;
542996c5ddc4Srjs   cmd->level = level;
543096c5ddc4Srjs   cmd->internalformat = internalformat;
543196c5ddc4Srjs   cmd->width = width;
543296c5ddc4Srjs   cmd->border = border;
543396c5ddc4Srjs   cmd->format = format;
543496c5ddc4Srjs   cmd->type = type;
543596c5ddc4Srjs   cmd->pixels = pixels;
543696c5ddc4Srjs}
543796c5ddc4Srjs
543896c5ddc4Srjs
543996c5ddc4Srjs/* TexImage2D: marshalled asynchronously */
544096c5ddc4Srjsstruct marshal_cmd_TexImage2D
544196c5ddc4Srjs{
544296c5ddc4Srjs   struct marshal_cmd_base cmd_base;
544396c5ddc4Srjs   GLenum target;
544496c5ddc4Srjs   GLint level;
544596c5ddc4Srjs   GLint internalformat;
544696c5ddc4Srjs   GLsizei width;
544796c5ddc4Srjs   GLsizei height;
544896c5ddc4Srjs   GLint border;
544996c5ddc4Srjs   GLenum format;
545096c5ddc4Srjs   GLenum type;
545196c5ddc4Srjs   const GLvoid * pixels;
545296c5ddc4Srjs};
545396c5ddc4Srjsuint32_t
545496c5ddc4Srjs_mesa_unmarshal_TexImage2D(struct gl_context *ctx, const struct marshal_cmd_TexImage2D *cmd, const uint64_t *last)
545596c5ddc4Srjs{
545696c5ddc4Srjs   GLenum target = cmd->target;
545796c5ddc4Srjs   GLint level = cmd->level;
545896c5ddc4Srjs   GLint internalformat = cmd->internalformat;
545996c5ddc4Srjs   GLsizei width = cmd->width;
546096c5ddc4Srjs   GLsizei height = cmd->height;
546196c5ddc4Srjs   GLint border = cmd->border;
546296c5ddc4Srjs   GLenum format = cmd->format;
546396c5ddc4Srjs   GLenum type = cmd->type;
546496c5ddc4Srjs   const GLvoid * pixels = cmd->pixels;
546596c5ddc4Srjs   CALL_TexImage2D(ctx->CurrentServerDispatch, (target, level, internalformat, width, height, border, format, type, pixels));
546696c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexImage2D), 8) / 8);
546796c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
546896c5ddc4Srjs   return cmd_size;
546996c5ddc4Srjs}
547096c5ddc4Srjsvoid GLAPIENTRY
547196c5ddc4Srjs_mesa_marshal_TexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid * pixels)
547296c5ddc4Srjs{
547396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
547496c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexImage2D);
547596c5ddc4Srjs   struct marshal_cmd_TexImage2D *cmd;
547696c5ddc4Srjs   if (_mesa_glthread_has_no_unpack_buffer(ctx)) {
547796c5ddc4Srjs      _mesa_glthread_finish_before(ctx, "TexImage2D");
547896c5ddc4Srjs      CALL_TexImage2D(ctx->CurrentServerDispatch, (target, level, internalformat, width, height, border, format, type, pixels));
547996c5ddc4Srjs      return;
548096c5ddc4Srjs   }
548196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexImage2D, cmd_size);
548296c5ddc4Srjs   cmd->target = target;
548396c5ddc4Srjs   cmd->level = level;
548496c5ddc4Srjs   cmd->internalformat = internalformat;
548596c5ddc4Srjs   cmd->width = width;
548696c5ddc4Srjs   cmd->height = height;
548796c5ddc4Srjs   cmd->border = border;
548896c5ddc4Srjs   cmd->format = format;
548996c5ddc4Srjs   cmd->type = type;
549096c5ddc4Srjs   cmd->pixels = pixels;
549196c5ddc4Srjs}
549296c5ddc4Srjs
549396c5ddc4Srjs
549496c5ddc4Srjs/* TexEnvf: marshalled asynchronously */
549596c5ddc4Srjsstruct marshal_cmd_TexEnvf
549696c5ddc4Srjs{
549796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
549896c5ddc4Srjs   GLenum target;
549996c5ddc4Srjs   GLenum pname;
550096c5ddc4Srjs   GLfloat param;
550196c5ddc4Srjs};
550296c5ddc4Srjsuint32_t
550396c5ddc4Srjs_mesa_unmarshal_TexEnvf(struct gl_context *ctx, const struct marshal_cmd_TexEnvf *cmd, const uint64_t *last)
550496c5ddc4Srjs{
550596c5ddc4Srjs   GLenum target = cmd->target;
550696c5ddc4Srjs   GLenum pname = cmd->pname;
550796c5ddc4Srjs   GLfloat param = cmd->param;
550896c5ddc4Srjs   CALL_TexEnvf(ctx->CurrentServerDispatch, (target, pname, param));
550996c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexEnvf), 8) / 8);
551096c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
551196c5ddc4Srjs   return cmd_size;
551296c5ddc4Srjs}
551396c5ddc4Srjsvoid GLAPIENTRY
551496c5ddc4Srjs_mesa_marshal_TexEnvf(GLenum target, GLenum pname, GLfloat param)
551596c5ddc4Srjs{
551696c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
551796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexEnvf);
551896c5ddc4Srjs   struct marshal_cmd_TexEnvf *cmd;
551996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexEnvf, cmd_size);
552096c5ddc4Srjs   cmd->target = target;
552196c5ddc4Srjs   cmd->pname = pname;
552296c5ddc4Srjs   cmd->param = param;
552396c5ddc4Srjs}
552496c5ddc4Srjs
552596c5ddc4Srjs
552696c5ddc4Srjs/* TexEnvfv: marshalled asynchronously */
552796c5ddc4Srjsstruct marshal_cmd_TexEnvfv
552896c5ddc4Srjs{
552996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
553096c5ddc4Srjs   GLenum target;
553196c5ddc4Srjs   GLenum pname;
553296c5ddc4Srjs   /* Next safe_mul(_mesa_texenv_enum_to_count(pname), 1 * sizeof(GLfloat)) bytes are GLfloat params[None] */
553396c5ddc4Srjs};
553496c5ddc4Srjsuint32_t
553596c5ddc4Srjs_mesa_unmarshal_TexEnvfv(struct gl_context *ctx, const struct marshal_cmd_TexEnvfv *cmd, const uint64_t *last)
553696c5ddc4Srjs{
553796c5ddc4Srjs   GLenum target = cmd->target;
553896c5ddc4Srjs   GLenum pname = cmd->pname;
553996c5ddc4Srjs   GLfloat * params;
554096c5ddc4Srjs   const char *variable_data = (const char *) (cmd + 1);
554196c5ddc4Srjs   params = (GLfloat *) variable_data;
554296c5ddc4Srjs   CALL_TexEnvfv(ctx->CurrentServerDispatch, (target, pname, params));
554396c5ddc4Srjs   return cmd->cmd_base.cmd_size;
554496c5ddc4Srjs}
554596c5ddc4Srjsvoid GLAPIENTRY
554696c5ddc4Srjs_mesa_marshal_TexEnvfv(GLenum target, GLenum pname, const GLfloat * params)
554796c5ddc4Srjs{
554896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
554996c5ddc4Srjs   int params_size = safe_mul(_mesa_texenv_enum_to_count(pname), 1 * sizeof(GLfloat));
555096c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexEnvfv) + params_size;
555196c5ddc4Srjs   struct marshal_cmd_TexEnvfv *cmd;
555296c5ddc4Srjs   if (unlikely(params_size < 0 || (params_size > 0 && !params) || (unsigned)cmd_size > MARSHAL_MAX_CMD_SIZE)) {
555396c5ddc4Srjs      _mesa_glthread_finish_before(ctx, "TexEnvfv");
555496c5ddc4Srjs      CALL_TexEnvfv(ctx->CurrentServerDispatch, (target, pname, params));
555596c5ddc4Srjs      return;
555696c5ddc4Srjs   }
555796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexEnvfv, cmd_size);
555896c5ddc4Srjs   cmd->target = target;
555996c5ddc4Srjs   cmd->pname = pname;
556096c5ddc4Srjs   char *variable_data = (char *) (cmd + 1);
556196c5ddc4Srjs   memcpy(variable_data, params, params_size);
556296c5ddc4Srjs}
556396c5ddc4Srjs
556496c5ddc4Srjs
556596c5ddc4Srjs/* TexEnvi: marshalled asynchronously */
556696c5ddc4Srjsstruct marshal_cmd_TexEnvi
556796c5ddc4Srjs{
556896c5ddc4Srjs   struct marshal_cmd_base cmd_base;
556996c5ddc4Srjs   GLenum target;
557096c5ddc4Srjs   GLenum pname;
557196c5ddc4Srjs   GLint param;
557296c5ddc4Srjs};
557396c5ddc4Srjsuint32_t
557496c5ddc4Srjs_mesa_unmarshal_TexEnvi(struct gl_context *ctx, const struct marshal_cmd_TexEnvi *cmd, const uint64_t *last)
557596c5ddc4Srjs{
557696c5ddc4Srjs   GLenum target = cmd->target;
557796c5ddc4Srjs   GLenum pname = cmd->pname;
557896c5ddc4Srjs   GLint param = cmd->param;
557996c5ddc4Srjs   CALL_TexEnvi(ctx->CurrentServerDispatch, (target, pname, param));
558096c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexEnvi), 8) / 8);
558196c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
558296c5ddc4Srjs   return cmd_size;
558396c5ddc4Srjs}
558496c5ddc4Srjsvoid GLAPIENTRY
558596c5ddc4Srjs_mesa_marshal_TexEnvi(GLenum target, GLenum pname, GLint param)
558696c5ddc4Srjs{
558796c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
558896c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexEnvi);
558996c5ddc4Srjs   struct marshal_cmd_TexEnvi *cmd;
559096c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexEnvi, cmd_size);
559196c5ddc4Srjs   cmd->target = target;
559296c5ddc4Srjs   cmd->pname = pname;
559396c5ddc4Srjs   cmd->param = param;
559496c5ddc4Srjs}
559596c5ddc4Srjs
559696c5ddc4Srjs
559796c5ddc4Srjs/* TexEnviv: marshalled asynchronously */
559896c5ddc4Srjsstruct marshal_cmd_TexEnviv
559996c5ddc4Srjs{
560096c5ddc4Srjs   struct marshal_cmd_base cmd_base;
560196c5ddc4Srjs   GLenum target;
560296c5ddc4Srjs   GLenum pname;
560396c5ddc4Srjs   /* Next safe_mul(_mesa_texenv_enum_to_count(pname), 1 * sizeof(GLint)) bytes are GLint params[None] */
560496c5ddc4Srjs};
560596c5ddc4Srjsuint32_t
560696c5ddc4Srjs_mesa_unmarshal_TexEnviv(struct gl_context *ctx, const struct marshal_cmd_TexEnviv *cmd, const uint64_t *last)
560796c5ddc4Srjs{
560896c5ddc4Srjs   GLenum target = cmd->target;
560996c5ddc4Srjs   GLenum pname = cmd->pname;
561096c5ddc4Srjs   GLint * params;
561196c5ddc4Srjs   const char *variable_data = (const char *) (cmd + 1);
561296c5ddc4Srjs   params = (GLint *) variable_data;
561396c5ddc4Srjs   CALL_TexEnviv(ctx->CurrentServerDispatch, (target, pname, params));
561496c5ddc4Srjs   return cmd->cmd_base.cmd_size;
561596c5ddc4Srjs}
561696c5ddc4Srjsvoid GLAPIENTRY
561796c5ddc4Srjs_mesa_marshal_TexEnviv(GLenum target, GLenum pname, const GLint * params)
561896c5ddc4Srjs{
561996c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
562096c5ddc4Srjs   int params_size = safe_mul(_mesa_texenv_enum_to_count(pname), 1 * sizeof(GLint));
562196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexEnviv) + params_size;
562296c5ddc4Srjs   struct marshal_cmd_TexEnviv *cmd;
562396c5ddc4Srjs   if (unlikely(params_size < 0 || (params_size > 0 && !params) || (unsigned)cmd_size > MARSHAL_MAX_CMD_SIZE)) {
562496c5ddc4Srjs      _mesa_glthread_finish_before(ctx, "TexEnviv");
562596c5ddc4Srjs      CALL_TexEnviv(ctx->CurrentServerDispatch, (target, pname, params));
562696c5ddc4Srjs      return;
562796c5ddc4Srjs   }
562896c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexEnviv, cmd_size);
562996c5ddc4Srjs   cmd->target = target;
563096c5ddc4Srjs   cmd->pname = pname;
563196c5ddc4Srjs   char *variable_data = (char *) (cmd + 1);
563296c5ddc4Srjs   memcpy(variable_data, params, params_size);
563396c5ddc4Srjs}
563496c5ddc4Srjs
563596c5ddc4Srjs
563696c5ddc4Srjs/* TexGend: marshalled asynchronously */
563796c5ddc4Srjsstruct marshal_cmd_TexGend
563896c5ddc4Srjs{
563996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
564096c5ddc4Srjs   GLenum coord;
564196c5ddc4Srjs   GLenum pname;
564296c5ddc4Srjs   GLdouble param;
564396c5ddc4Srjs};
564496c5ddc4Srjsuint32_t
564596c5ddc4Srjs_mesa_unmarshal_TexGend(struct gl_context *ctx, const struct marshal_cmd_TexGend *cmd, const uint64_t *last)
564696c5ddc4Srjs{
564796c5ddc4Srjs   GLenum coord = cmd->coord;
564896c5ddc4Srjs   GLenum pname = cmd->pname;
564996c5ddc4Srjs   GLdouble param = cmd->param;
565096c5ddc4Srjs   CALL_TexGend(ctx->CurrentServerDispatch, (coord, pname, param));
565196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexGend), 8) / 8);
565296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
565396c5ddc4Srjs   return cmd_size;
565496c5ddc4Srjs}
565596c5ddc4Srjsvoid GLAPIENTRY
565696c5ddc4Srjs_mesa_marshal_TexGend(GLenum coord, GLenum pname, GLdouble param)
565796c5ddc4Srjs{
565896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
565996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexGend);
566096c5ddc4Srjs   struct marshal_cmd_TexGend *cmd;
566196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexGend, cmd_size);
566296c5ddc4Srjs   cmd->coord = coord;
566396c5ddc4Srjs   cmd->pname = pname;
566496c5ddc4Srjs   cmd->param = param;
566596c5ddc4Srjs}
566696c5ddc4Srjs
566796c5ddc4Srjs
566896c5ddc4Srjs/* TexGendv: marshalled asynchronously */
566996c5ddc4Srjsstruct marshal_cmd_TexGendv
567096c5ddc4Srjs{
567196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
567296c5ddc4Srjs   GLenum coord;
567396c5ddc4Srjs   GLenum pname;
567496c5ddc4Srjs   /* Next safe_mul(_mesa_texgen_enum_to_count(pname), 1 * sizeof(GLdouble)) bytes are GLdouble params[None] */
567596c5ddc4Srjs};
567696c5ddc4Srjsuint32_t
567796c5ddc4Srjs_mesa_unmarshal_TexGendv(struct gl_context *ctx, const struct marshal_cmd_TexGendv *cmd, const uint64_t *last)
567896c5ddc4Srjs{
567996c5ddc4Srjs   GLenum coord = cmd->coord;
568096c5ddc4Srjs   GLenum pname = cmd->pname;
568196c5ddc4Srjs   GLdouble * params;
568296c5ddc4Srjs   const char *variable_data = (const char *) (cmd + 1);
568396c5ddc4Srjs   params = (GLdouble *) variable_data;
568496c5ddc4Srjs   CALL_TexGendv(ctx->CurrentServerDispatch, (coord, pname, params));
568596c5ddc4Srjs   return cmd->cmd_base.cmd_size;
568696c5ddc4Srjs}
568796c5ddc4Srjsvoid GLAPIENTRY
568896c5ddc4Srjs_mesa_marshal_TexGendv(GLenum coord, GLenum pname, const GLdouble * params)
568996c5ddc4Srjs{
569096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
569196c5ddc4Srjs   int params_size = safe_mul(_mesa_texgen_enum_to_count(pname), 1 * sizeof(GLdouble));
569296c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexGendv) + params_size;
569396c5ddc4Srjs   struct marshal_cmd_TexGendv *cmd;
569496c5ddc4Srjs   if (unlikely(params_size < 0 || (params_size > 0 && !params) || (unsigned)cmd_size > MARSHAL_MAX_CMD_SIZE)) {
569596c5ddc4Srjs      _mesa_glthread_finish_before(ctx, "TexGendv");
569696c5ddc4Srjs      CALL_TexGendv(ctx->CurrentServerDispatch, (coord, pname, params));
569796c5ddc4Srjs      return;
569896c5ddc4Srjs   }
569996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexGendv, cmd_size);
570096c5ddc4Srjs   cmd->coord = coord;
570196c5ddc4Srjs   cmd->pname = pname;
570296c5ddc4Srjs   char *variable_data = (char *) (cmd + 1);
570396c5ddc4Srjs   memcpy(variable_data, params, params_size);
570496c5ddc4Srjs}
570596c5ddc4Srjs
570696c5ddc4Srjs
570796c5ddc4Srjs/* TexGenf: marshalled asynchronously */
570896c5ddc4Srjsstruct marshal_cmd_TexGenf
570996c5ddc4Srjs{
571096c5ddc4Srjs   struct marshal_cmd_base cmd_base;
571196c5ddc4Srjs   GLenum coord;
571296c5ddc4Srjs   GLenum pname;
571396c5ddc4Srjs   GLfloat param;
571496c5ddc4Srjs};
571596c5ddc4Srjsuint32_t
571696c5ddc4Srjs_mesa_unmarshal_TexGenf(struct gl_context *ctx, const struct marshal_cmd_TexGenf *cmd, const uint64_t *last)
571796c5ddc4Srjs{
571896c5ddc4Srjs   GLenum coord = cmd->coord;
571996c5ddc4Srjs   GLenum pname = cmd->pname;
572096c5ddc4Srjs   GLfloat param = cmd->param;
572196c5ddc4Srjs   CALL_TexGenf(ctx->CurrentServerDispatch, (coord, pname, param));
572296c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexGenf), 8) / 8);
572396c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
572496c5ddc4Srjs   return cmd_size;
572596c5ddc4Srjs}
572696c5ddc4Srjsvoid GLAPIENTRY
572796c5ddc4Srjs_mesa_marshal_TexGenf(GLenum coord, GLenum pname, GLfloat param)
572896c5ddc4Srjs{
572996c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
573096c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexGenf);
573196c5ddc4Srjs   struct marshal_cmd_TexGenf *cmd;
573296c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexGenf, cmd_size);
573396c5ddc4Srjs   cmd->coord = coord;
573496c5ddc4Srjs   cmd->pname = pname;
573596c5ddc4Srjs   cmd->param = param;
573696c5ddc4Srjs}
573796c5ddc4Srjs
573896c5ddc4Srjs
573996c5ddc4Srjs/* TexGenfv: marshalled asynchronously */
574096c5ddc4Srjsstruct marshal_cmd_TexGenfv
574196c5ddc4Srjs{
574296c5ddc4Srjs   struct marshal_cmd_base cmd_base;
574396c5ddc4Srjs   GLenum coord;
574496c5ddc4Srjs   GLenum pname;
574596c5ddc4Srjs   /* Next safe_mul(_mesa_texgen_enum_to_count(pname), 1 * sizeof(GLfloat)) bytes are GLfloat params[None] */
574696c5ddc4Srjs};
574796c5ddc4Srjsuint32_t
574896c5ddc4Srjs_mesa_unmarshal_TexGenfv(struct gl_context *ctx, const struct marshal_cmd_TexGenfv *cmd, const uint64_t *last)
574996c5ddc4Srjs{
575096c5ddc4Srjs   GLenum coord = cmd->coord;
575196c5ddc4Srjs   GLenum pname = cmd->pname;
575296c5ddc4Srjs   GLfloat * params;
575396c5ddc4Srjs   const char *variable_data = (const char *) (cmd + 1);
575496c5ddc4Srjs   params = (GLfloat *) variable_data;
575596c5ddc4Srjs   CALL_TexGenfv(ctx->CurrentServerDispatch, (coord, pname, params));
575696c5ddc4Srjs   return cmd->cmd_base.cmd_size;
575796c5ddc4Srjs}
575896c5ddc4Srjsvoid GLAPIENTRY
575996c5ddc4Srjs_mesa_marshal_TexGenfv(GLenum coord, GLenum pname, const GLfloat * params)
576096c5ddc4Srjs{
576196c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
576296c5ddc4Srjs   int params_size = safe_mul(_mesa_texgen_enum_to_count(pname), 1 * sizeof(GLfloat));
576396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexGenfv) + params_size;
576496c5ddc4Srjs   struct marshal_cmd_TexGenfv *cmd;
576596c5ddc4Srjs   if (unlikely(params_size < 0 || (params_size > 0 && !params) || (unsigned)cmd_size > MARSHAL_MAX_CMD_SIZE)) {
576696c5ddc4Srjs      _mesa_glthread_finish_before(ctx, "TexGenfv");
576796c5ddc4Srjs      CALL_TexGenfv(ctx->CurrentServerDispatch, (coord, pname, params));
576896c5ddc4Srjs      return;
576996c5ddc4Srjs   }
577096c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexGenfv, cmd_size);
577196c5ddc4Srjs   cmd->coord = coord;
577296c5ddc4Srjs   cmd->pname = pname;
577396c5ddc4Srjs   char *variable_data = (char *) (cmd + 1);
577496c5ddc4Srjs   memcpy(variable_data, params, params_size);
577596c5ddc4Srjs}
577696c5ddc4Srjs
577796c5ddc4Srjs
577896c5ddc4Srjs/* TexGeni: marshalled asynchronously */
577996c5ddc4Srjsstruct marshal_cmd_TexGeni
578096c5ddc4Srjs{
578196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
578296c5ddc4Srjs   GLenum coord;
578396c5ddc4Srjs   GLenum pname;
578496c5ddc4Srjs   GLint param;
578596c5ddc4Srjs};
578696c5ddc4Srjsuint32_t
578796c5ddc4Srjs_mesa_unmarshal_TexGeni(struct gl_context *ctx, const struct marshal_cmd_TexGeni *cmd, const uint64_t *last)
578896c5ddc4Srjs{
578996c5ddc4Srjs   GLenum coord = cmd->coord;
579096c5ddc4Srjs   GLenum pname = cmd->pname;
579196c5ddc4Srjs   GLint param = cmd->param;
579296c5ddc4Srjs   CALL_TexGeni(ctx->CurrentServerDispatch, (coord, pname, param));
579396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_TexGeni), 8) / 8);
579496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
579596c5ddc4Srjs   return cmd_size;
579696c5ddc4Srjs}
579796c5ddc4Srjsvoid GLAPIENTRY
579896c5ddc4Srjs_mesa_marshal_TexGeni(GLenum coord, GLenum pname, GLint param)
579996c5ddc4Srjs{
580096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
580196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexGeni);
580296c5ddc4Srjs   struct marshal_cmd_TexGeni *cmd;
580396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexGeni, cmd_size);
580496c5ddc4Srjs   cmd->coord = coord;
580596c5ddc4Srjs   cmd->pname = pname;
580696c5ddc4Srjs   cmd->param = param;
580796c5ddc4Srjs}
580896c5ddc4Srjs
580996c5ddc4Srjs
581096c5ddc4Srjs/* TexGeniv: marshalled asynchronously */
581196c5ddc4Srjsstruct marshal_cmd_TexGeniv
581296c5ddc4Srjs{
581396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
581496c5ddc4Srjs   GLenum coord;
581596c5ddc4Srjs   GLenum pname;
581696c5ddc4Srjs   /* Next safe_mul(_mesa_texgen_enum_to_count(pname), 1 * sizeof(GLint)) bytes are GLint params[None] */
581796c5ddc4Srjs};
581896c5ddc4Srjsuint32_t
581996c5ddc4Srjs_mesa_unmarshal_TexGeniv(struct gl_context *ctx, const struct marshal_cmd_TexGeniv *cmd, const uint64_t *last)
582096c5ddc4Srjs{
582196c5ddc4Srjs   GLenum coord = cmd->coord;
582296c5ddc4Srjs   GLenum pname = cmd->pname;
582396c5ddc4Srjs   GLint * params;
582496c5ddc4Srjs   const char *variable_data = (const char *) (cmd + 1);
582596c5ddc4Srjs   params = (GLint *) variable_data;
582696c5ddc4Srjs   CALL_TexGeniv(ctx->CurrentServerDispatch, (coord, pname, params));
582796c5ddc4Srjs   return cmd->cmd_base.cmd_size;
582896c5ddc4Srjs}
582996c5ddc4Srjsvoid GLAPIENTRY
583096c5ddc4Srjs_mesa_marshal_TexGeniv(GLenum coord, GLenum pname, const GLint * params)
583196c5ddc4Srjs{
583296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
583396c5ddc4Srjs   int params_size = safe_mul(_mesa_texgen_enum_to_count(pname), 1 * sizeof(GLint));
583496c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_TexGeniv) + params_size;
583596c5ddc4Srjs   struct marshal_cmd_TexGeniv *cmd;
583696c5ddc4Srjs   if (unlikely(params_size < 0 || (params_size > 0 && !params) || (unsigned)cmd_size > MARSHAL_MAX_CMD_SIZE)) {
583796c5ddc4Srjs      _mesa_glthread_finish_before(ctx, "TexGeniv");
583896c5ddc4Srjs      CALL_TexGeniv(ctx->CurrentServerDispatch, (coord, pname, params));
583996c5ddc4Srjs      return;
584096c5ddc4Srjs   }
584196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_TexGeniv, cmd_size);
584296c5ddc4Srjs   cmd->coord = coord;
584396c5ddc4Srjs   cmd->pname = pname;
584496c5ddc4Srjs   char *variable_data = (char *) (cmd + 1);
584596c5ddc4Srjs   memcpy(variable_data, params, params_size);
584696c5ddc4Srjs}
584796c5ddc4Srjs
584896c5ddc4Srjs
584996c5ddc4Srjs/* FeedbackBuffer: marshalled synchronously */
585096c5ddc4Srjsvoid GLAPIENTRY
585196c5ddc4Srjs_mesa_marshal_FeedbackBuffer(GLsizei size, GLenum type, GLfloat * buffer)
585296c5ddc4Srjs{
585396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
585496c5ddc4Srjs   _mesa_glthread_finish_before(ctx, "FeedbackBuffer");
585596c5ddc4Srjs   CALL_FeedbackBuffer(ctx->CurrentServerDispatch, (size, type, buffer));
585696c5ddc4Srjs}
585796c5ddc4Srjs
585896c5ddc4Srjs
585996c5ddc4Srjs/* SelectBuffer: marshalled synchronously */
586096c5ddc4Srjsvoid GLAPIENTRY
586196c5ddc4Srjs_mesa_marshal_SelectBuffer(GLsizei size, GLuint * buffer)
586296c5ddc4Srjs{
586396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
586496c5ddc4Srjs   _mesa_glthread_finish_before(ctx, "SelectBuffer");
586596c5ddc4Srjs   CALL_SelectBuffer(ctx->CurrentServerDispatch, (size, buffer));
586696c5ddc4Srjs}
586796c5ddc4Srjs
586896c5ddc4Srjs
586996c5ddc4Srjs/* RenderMode: marshalled synchronously */
587096c5ddc4SrjsGLint GLAPIENTRY
587196c5ddc4Srjs_mesa_marshal_RenderMode(GLenum mode)
587296c5ddc4Srjs{
587396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
587496c5ddc4Srjs   _mesa_glthread_finish_before(ctx, "RenderMode");
587596c5ddc4Srjs   return CALL_RenderMode(ctx->CurrentServerDispatch, (mode));
587696c5ddc4Srjs}
587796c5ddc4Srjs
587896c5ddc4Srjs
587996c5ddc4Srjs/* InitNames: marshalled asynchronously */
588096c5ddc4Srjsstruct marshal_cmd_InitNames
588196c5ddc4Srjs{
588296c5ddc4Srjs   struct marshal_cmd_base cmd_base;
588396c5ddc4Srjs};
588496c5ddc4Srjsuint32_t
588596c5ddc4Srjs_mesa_unmarshal_InitNames(struct gl_context *ctx, const struct marshal_cmd_InitNames *cmd, const uint64_t *last)
588696c5ddc4Srjs{
588796c5ddc4Srjs   CALL_InitNames(ctx->CurrentServerDispatch, ());
588896c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_InitNames), 8) / 8);
588996c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
589096c5ddc4Srjs   return cmd_size;
589196c5ddc4Srjs}
589296c5ddc4Srjsvoid GLAPIENTRY
589396c5ddc4Srjs_mesa_marshal_InitNames(void)
589496c5ddc4Srjs{
589596c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
589696c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_InitNames);
589796c5ddc4Srjs   struct marshal_cmd_InitNames *cmd;
589896c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_InitNames, cmd_size);
589996c5ddc4Srjs   (void) cmd;
590096c5ddc4Srjs}
590196c5ddc4Srjs
590296c5ddc4Srjs
590396c5ddc4Srjs/* LoadName: marshalled asynchronously */
590496c5ddc4Srjsstruct marshal_cmd_LoadName
590596c5ddc4Srjs{
590696c5ddc4Srjs   struct marshal_cmd_base cmd_base;
590796c5ddc4Srjs   GLuint name;
590896c5ddc4Srjs};
590996c5ddc4Srjsuint32_t
591096c5ddc4Srjs_mesa_unmarshal_LoadName(struct gl_context *ctx, const struct marshal_cmd_LoadName *cmd, const uint64_t *last)
591196c5ddc4Srjs{
591296c5ddc4Srjs   GLuint name = cmd->name;
591396c5ddc4Srjs   CALL_LoadName(ctx->CurrentServerDispatch, (name));
591496c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_LoadName), 8) / 8);
591596c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
591696c5ddc4Srjs   return cmd_size;
591796c5ddc4Srjs}
591896c5ddc4Srjsvoid GLAPIENTRY
591996c5ddc4Srjs_mesa_marshal_LoadName(GLuint name)
592096c5ddc4Srjs{
592196c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
592296c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_LoadName);
592396c5ddc4Srjs   struct marshal_cmd_LoadName *cmd;
592496c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_LoadName, cmd_size);
592596c5ddc4Srjs   cmd->name = name;
592696c5ddc4Srjs}
592796c5ddc4Srjs
592896c5ddc4Srjs
592996c5ddc4Srjs/* PassThrough: marshalled asynchronously */
593096c5ddc4Srjsstruct marshal_cmd_PassThrough
593196c5ddc4Srjs{
593296c5ddc4Srjs   struct marshal_cmd_base cmd_base;
593396c5ddc4Srjs   GLfloat token;
593496c5ddc4Srjs};
593596c5ddc4Srjsuint32_t
593696c5ddc4Srjs_mesa_unmarshal_PassThrough(struct gl_context *ctx, const struct marshal_cmd_PassThrough *cmd, const uint64_t *last)
593796c5ddc4Srjs{
593896c5ddc4Srjs   GLfloat token = cmd->token;
593996c5ddc4Srjs   CALL_PassThrough(ctx->CurrentServerDispatch, (token));
594096c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_PassThrough), 8) / 8);
594196c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
594296c5ddc4Srjs   return cmd_size;
594396c5ddc4Srjs}
594496c5ddc4Srjsvoid GLAPIENTRY
594596c5ddc4Srjs_mesa_marshal_PassThrough(GLfloat token)
594696c5ddc4Srjs{
594796c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
594896c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_PassThrough);
594996c5ddc4Srjs   struct marshal_cmd_PassThrough *cmd;
595096c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_PassThrough, cmd_size);
595196c5ddc4Srjs   cmd->token = token;
595296c5ddc4Srjs}
595396c5ddc4Srjs
595496c5ddc4Srjs
595596c5ddc4Srjs/* PopName: marshalled asynchronously */
595696c5ddc4Srjsstruct marshal_cmd_PopName
595796c5ddc4Srjs{
595896c5ddc4Srjs   struct marshal_cmd_base cmd_base;
595996c5ddc4Srjs};
596096c5ddc4Srjsuint32_t
596196c5ddc4Srjs_mesa_unmarshal_PopName(struct gl_context *ctx, const struct marshal_cmd_PopName *cmd, const uint64_t *last)
596296c5ddc4Srjs{
596396c5ddc4Srjs   CALL_PopName(ctx->CurrentServerDispatch, ());
596496c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_PopName), 8) / 8);
596596c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
596696c5ddc4Srjs   return cmd_size;
596796c5ddc4Srjs}
596896c5ddc4Srjsvoid GLAPIENTRY
596996c5ddc4Srjs_mesa_marshal_PopName(void)
597096c5ddc4Srjs{
597196c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
597296c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_PopName);
597396c5ddc4Srjs   struct marshal_cmd_PopName *cmd;
597496c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_PopName, cmd_size);
597596c5ddc4Srjs   (void) cmd;
597696c5ddc4Srjs}
597796c5ddc4Srjs
597896c5ddc4Srjs
597996c5ddc4Srjs/* PushName: marshalled asynchronously */
598096c5ddc4Srjsstruct marshal_cmd_PushName
598196c5ddc4Srjs{
598296c5ddc4Srjs   struct marshal_cmd_base cmd_base;
598396c5ddc4Srjs   GLuint name;
598496c5ddc4Srjs};
598596c5ddc4Srjsuint32_t
598696c5ddc4Srjs_mesa_unmarshal_PushName(struct gl_context *ctx, const struct marshal_cmd_PushName *cmd, const uint64_t *last)
598796c5ddc4Srjs{
598896c5ddc4Srjs   GLuint name = cmd->name;
598996c5ddc4Srjs   CALL_PushName(ctx->CurrentServerDispatch, (name));
599096c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_PushName), 8) / 8);
599196c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
599296c5ddc4Srjs   return cmd_size;
599396c5ddc4Srjs}
599496c5ddc4Srjsvoid GLAPIENTRY
599596c5ddc4Srjs_mesa_marshal_PushName(GLuint name)
599696c5ddc4Srjs{
599796c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
599896c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_PushName);
599996c5ddc4Srjs   struct marshal_cmd_PushName *cmd;
600096c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_PushName, cmd_size);
600196c5ddc4Srjs   cmd->name = name;
600296c5ddc4Srjs}
600396c5ddc4Srjs
600496c5ddc4Srjs
600596c5ddc4Srjs/* DrawBuffer: marshalled asynchronously */
600696c5ddc4Srjsstruct marshal_cmd_DrawBuffer
600796c5ddc4Srjs{
600896c5ddc4Srjs   struct marshal_cmd_base cmd_base;
600996c5ddc4Srjs   GLenum mode;
601096c5ddc4Srjs};
601196c5ddc4Srjsuint32_t
601296c5ddc4Srjs_mesa_unmarshal_DrawBuffer(struct gl_context *ctx, const struct marshal_cmd_DrawBuffer *cmd, const uint64_t *last)
601396c5ddc4Srjs{
601496c5ddc4Srjs   GLenum mode = cmd->mode;
601596c5ddc4Srjs   CALL_DrawBuffer(ctx->CurrentServerDispatch, (mode));
601696c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_DrawBuffer), 8) / 8);
601796c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
601896c5ddc4Srjs   return cmd_size;
601996c5ddc4Srjs}
602096c5ddc4Srjsvoid GLAPIENTRY
602196c5ddc4Srjs_mesa_marshal_DrawBuffer(GLenum mode)
602296c5ddc4Srjs{
602396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
602496c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_DrawBuffer);
602596c5ddc4Srjs   struct marshal_cmd_DrawBuffer *cmd;
602696c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_DrawBuffer, cmd_size);
602796c5ddc4Srjs   cmd->mode = mode;
602896c5ddc4Srjs}
602996c5ddc4Srjs
603096c5ddc4Srjs
603196c5ddc4Srjs/* Clear: marshalled asynchronously */
603296c5ddc4Srjsstruct marshal_cmd_Clear
603396c5ddc4Srjs{
603496c5ddc4Srjs   struct marshal_cmd_base cmd_base;
603596c5ddc4Srjs   GLbitfield mask;
603696c5ddc4Srjs};
603796c5ddc4Srjsuint32_t
603896c5ddc4Srjs_mesa_unmarshal_Clear(struct gl_context *ctx, const struct marshal_cmd_Clear *cmd, const uint64_t *last)
603996c5ddc4Srjs{
604096c5ddc4Srjs   GLbitfield mask = cmd->mask;
604196c5ddc4Srjs   CALL_Clear(ctx->CurrentServerDispatch, (mask));
604296c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Clear), 8) / 8);
604396c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
604496c5ddc4Srjs   return cmd_size;
604596c5ddc4Srjs}
604696c5ddc4Srjsvoid GLAPIENTRY
604796c5ddc4Srjs_mesa_marshal_Clear(GLbitfield mask)
604896c5ddc4Srjs{
604996c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
605096c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Clear);
605196c5ddc4Srjs   struct marshal_cmd_Clear *cmd;
605296c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Clear, cmd_size);
605396c5ddc4Srjs   cmd->mask = mask;
605496c5ddc4Srjs}
605596c5ddc4Srjs
605696c5ddc4Srjs
605796c5ddc4Srjs/* ClearAccum: marshalled asynchronously */
605896c5ddc4Srjsstruct marshal_cmd_ClearAccum
605996c5ddc4Srjs{
606096c5ddc4Srjs   struct marshal_cmd_base cmd_base;
606196c5ddc4Srjs   GLfloat red;
606296c5ddc4Srjs   GLfloat green;
606396c5ddc4Srjs   GLfloat blue;
606496c5ddc4Srjs   GLfloat alpha;
606596c5ddc4Srjs};
606696c5ddc4Srjsuint32_t
606796c5ddc4Srjs_mesa_unmarshal_ClearAccum(struct gl_context *ctx, const struct marshal_cmd_ClearAccum *cmd, const uint64_t *last)
606896c5ddc4Srjs{
606996c5ddc4Srjs   GLfloat red = cmd->red;
607096c5ddc4Srjs   GLfloat green = cmd->green;
607196c5ddc4Srjs   GLfloat blue = cmd->blue;
607296c5ddc4Srjs   GLfloat alpha = cmd->alpha;
607396c5ddc4Srjs   CALL_ClearAccum(ctx->CurrentServerDispatch, (red, green, blue, alpha));
607496c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_ClearAccum), 8) / 8);
607596c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
607696c5ddc4Srjs   return cmd_size;
607796c5ddc4Srjs}
607896c5ddc4Srjsvoid GLAPIENTRY
607996c5ddc4Srjs_mesa_marshal_ClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
608096c5ddc4Srjs{
608196c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
608296c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_ClearAccum);
608396c5ddc4Srjs   struct marshal_cmd_ClearAccum *cmd;
608496c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_ClearAccum, cmd_size);
608596c5ddc4Srjs   cmd->red = red;
608696c5ddc4Srjs   cmd->green = green;
608796c5ddc4Srjs   cmd->blue = blue;
608896c5ddc4Srjs   cmd->alpha = alpha;
608996c5ddc4Srjs}
609096c5ddc4Srjs
609196c5ddc4Srjs
609296c5ddc4Srjs/* ClearIndex: marshalled asynchronously */
609396c5ddc4Srjsstruct marshal_cmd_ClearIndex
609496c5ddc4Srjs{
609596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
609696c5ddc4Srjs   GLfloat c;
609796c5ddc4Srjs};
609896c5ddc4Srjsuint32_t
609996c5ddc4Srjs_mesa_unmarshal_ClearIndex(struct gl_context *ctx, const struct marshal_cmd_ClearIndex *cmd, const uint64_t *last)
610096c5ddc4Srjs{
610196c5ddc4Srjs   GLfloat c = cmd->c;
610296c5ddc4Srjs   CALL_ClearIndex(ctx->CurrentServerDispatch, (c));
610396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_ClearIndex), 8) / 8);
610496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
610596c5ddc4Srjs   return cmd_size;
610696c5ddc4Srjs}
610796c5ddc4Srjsvoid GLAPIENTRY
610896c5ddc4Srjs_mesa_marshal_ClearIndex(GLfloat c)
610996c5ddc4Srjs{
611096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
611196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_ClearIndex);
611296c5ddc4Srjs   struct marshal_cmd_ClearIndex *cmd;
611396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_ClearIndex, cmd_size);
611496c5ddc4Srjs   cmd->c = c;
611596c5ddc4Srjs}
611696c5ddc4Srjs
611796c5ddc4Srjs
611896c5ddc4Srjs/* ClearColor: marshalled asynchronously */
611996c5ddc4Srjsstruct marshal_cmd_ClearColor
612096c5ddc4Srjs{
612196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
612296c5ddc4Srjs   GLclampf red;
612396c5ddc4Srjs   GLclampf green;
612496c5ddc4Srjs   GLclampf blue;
612596c5ddc4Srjs   GLclampf alpha;
612696c5ddc4Srjs};
612796c5ddc4Srjsuint32_t
612896c5ddc4Srjs_mesa_unmarshal_ClearColor(struct gl_context *ctx, const struct marshal_cmd_ClearColor *cmd, const uint64_t *last)
612996c5ddc4Srjs{
613096c5ddc4Srjs   GLclampf red = cmd->red;
613196c5ddc4Srjs   GLclampf green = cmd->green;
613296c5ddc4Srjs   GLclampf blue = cmd->blue;
613396c5ddc4Srjs   GLclampf alpha = cmd->alpha;
613496c5ddc4Srjs   CALL_ClearColor(ctx->CurrentServerDispatch, (red, green, blue, alpha));
613596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_ClearColor), 8) / 8);
613696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
613796c5ddc4Srjs   return cmd_size;
613896c5ddc4Srjs}
613996c5ddc4Srjsvoid GLAPIENTRY
614096c5ddc4Srjs_mesa_marshal_ClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
614196c5ddc4Srjs{
614296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
614396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_ClearColor);
614496c5ddc4Srjs   struct marshal_cmd_ClearColor *cmd;
614596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_ClearColor, cmd_size);
614696c5ddc4Srjs   cmd->red = red;
614796c5ddc4Srjs   cmd->green = green;
614896c5ddc4Srjs   cmd->blue = blue;
614996c5ddc4Srjs   cmd->alpha = alpha;
615096c5ddc4Srjs}
615196c5ddc4Srjs
615296c5ddc4Srjs
615396c5ddc4Srjs/* ClearStencil: marshalled asynchronously */
615496c5ddc4Srjsstruct marshal_cmd_ClearStencil
615596c5ddc4Srjs{
615696c5ddc4Srjs   struct marshal_cmd_base cmd_base;
615796c5ddc4Srjs   GLint s;
615896c5ddc4Srjs};
615996c5ddc4Srjsuint32_t
616096c5ddc4Srjs_mesa_unmarshal_ClearStencil(struct gl_context *ctx, const struct marshal_cmd_ClearStencil *cmd, const uint64_t *last)
616196c5ddc4Srjs{
616296c5ddc4Srjs   GLint s = cmd->s;
616396c5ddc4Srjs   CALL_ClearStencil(ctx->CurrentServerDispatch, (s));
616496c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_ClearStencil), 8) / 8);
616596c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
616696c5ddc4Srjs   return cmd_size;
616796c5ddc4Srjs}
616896c5ddc4Srjsvoid GLAPIENTRY
616996c5ddc4Srjs_mesa_marshal_ClearStencil(GLint s)
617096c5ddc4Srjs{
617196c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
617296c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_ClearStencil);
617396c5ddc4Srjs   struct marshal_cmd_ClearStencil *cmd;
617496c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_ClearStencil, cmd_size);
617596c5ddc4Srjs   cmd->s = s;
617696c5ddc4Srjs}
617796c5ddc4Srjs
617896c5ddc4Srjs
617996c5ddc4Srjs/* ClearDepth: marshalled asynchronously */
618096c5ddc4Srjsstruct marshal_cmd_ClearDepth
618196c5ddc4Srjs{
618296c5ddc4Srjs   struct marshal_cmd_base cmd_base;
618396c5ddc4Srjs   GLclampd depth;
618496c5ddc4Srjs};
618596c5ddc4Srjsuint32_t
618696c5ddc4Srjs_mesa_unmarshal_ClearDepth(struct gl_context *ctx, const struct marshal_cmd_ClearDepth *cmd, const uint64_t *last)
618796c5ddc4Srjs{
618896c5ddc4Srjs   GLclampd depth = cmd->depth;
618996c5ddc4Srjs   CALL_ClearDepth(ctx->CurrentServerDispatch, (depth));
619096c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_ClearDepth), 8) / 8);
619196c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
619296c5ddc4Srjs   return cmd_size;
619396c5ddc4Srjs}
619496c5ddc4Srjsvoid GLAPIENTRY
619596c5ddc4Srjs_mesa_marshal_ClearDepth(GLclampd depth)
619696c5ddc4Srjs{
619796c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
619896c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_ClearDepth);
619996c5ddc4Srjs   struct marshal_cmd_ClearDepth *cmd;
620096c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_ClearDepth, cmd_size);
620196c5ddc4Srjs   cmd->depth = depth;
620296c5ddc4Srjs}
620396c5ddc4Srjs
620496c5ddc4Srjs
620596c5ddc4Srjs/* StencilMask: marshalled asynchronously */
620696c5ddc4Srjsstruct marshal_cmd_StencilMask
620796c5ddc4Srjs{
620896c5ddc4Srjs   struct marshal_cmd_base cmd_base;
620996c5ddc4Srjs   GLuint mask;
621096c5ddc4Srjs};
621196c5ddc4Srjsuint32_t
621296c5ddc4Srjs_mesa_unmarshal_StencilMask(struct gl_context *ctx, const struct marshal_cmd_StencilMask *cmd, const uint64_t *last)
621396c5ddc4Srjs{
621496c5ddc4Srjs   GLuint mask = cmd->mask;
621596c5ddc4Srjs   CALL_StencilMask(ctx->CurrentServerDispatch, (mask));
621696c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_StencilMask), 8) / 8);
621796c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
621896c5ddc4Srjs   return cmd_size;
621996c5ddc4Srjs}
622096c5ddc4Srjsvoid GLAPIENTRY
622196c5ddc4Srjs_mesa_marshal_StencilMask(GLuint mask)
622296c5ddc4Srjs{
622396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
622496c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_StencilMask);
622596c5ddc4Srjs   struct marshal_cmd_StencilMask *cmd;
622696c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_StencilMask, cmd_size);
622796c5ddc4Srjs   cmd->mask = mask;
622896c5ddc4Srjs}
622996c5ddc4Srjs
623096c5ddc4Srjs
623196c5ddc4Srjs/* ColorMask: marshalled asynchronously */
623296c5ddc4Srjsstruct marshal_cmd_ColorMask
623396c5ddc4Srjs{
623496c5ddc4Srjs   struct marshal_cmd_base cmd_base;
623596c5ddc4Srjs   GLboolean red;
623696c5ddc4Srjs   GLboolean green;
623796c5ddc4Srjs   GLboolean blue;
623896c5ddc4Srjs   GLboolean alpha;
623996c5ddc4Srjs};
624096c5ddc4Srjsuint32_t
624196c5ddc4Srjs_mesa_unmarshal_ColorMask(struct gl_context *ctx, const struct marshal_cmd_ColorMask *cmd, const uint64_t *last)
624296c5ddc4Srjs{
624396c5ddc4Srjs   GLboolean red = cmd->red;
624496c5ddc4Srjs   GLboolean green = cmd->green;
624596c5ddc4Srjs   GLboolean blue = cmd->blue;
624696c5ddc4Srjs   GLboolean alpha = cmd->alpha;
624796c5ddc4Srjs   CALL_ColorMask(ctx->CurrentServerDispatch, (red, green, blue, alpha));
624896c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_ColorMask), 8) / 8);
624996c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
625096c5ddc4Srjs   return cmd_size;
625196c5ddc4Srjs}
625296c5ddc4Srjsvoid GLAPIENTRY
625396c5ddc4Srjs_mesa_marshal_ColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
625496c5ddc4Srjs{
625596c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
625696c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_ColorMask);
625796c5ddc4Srjs   struct marshal_cmd_ColorMask *cmd;
625896c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_ColorMask, cmd_size);
625996c5ddc4Srjs   cmd->red = red;
626096c5ddc4Srjs   cmd->green = green;
626196c5ddc4Srjs   cmd->blue = blue;
626296c5ddc4Srjs   cmd->alpha = alpha;
626396c5ddc4Srjs}
626496c5ddc4Srjs
626596c5ddc4Srjs
626696c5ddc4Srjs/* DepthMask: marshalled asynchronously */
626796c5ddc4Srjsstruct marshal_cmd_DepthMask
626896c5ddc4Srjs{
626996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
627096c5ddc4Srjs   GLboolean flag;
627196c5ddc4Srjs};
627296c5ddc4Srjsuint32_t
627396c5ddc4Srjs_mesa_unmarshal_DepthMask(struct gl_context *ctx, const struct marshal_cmd_DepthMask *cmd, const uint64_t *last)
627496c5ddc4Srjs{
627596c5ddc4Srjs   GLboolean flag = cmd->flag;
627696c5ddc4Srjs   CALL_DepthMask(ctx->CurrentServerDispatch, (flag));
627796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_DepthMask), 8) / 8);
627896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
627996c5ddc4Srjs   return cmd_size;
628096c5ddc4Srjs}
628196c5ddc4Srjsvoid GLAPIENTRY
628296c5ddc4Srjs_mesa_marshal_DepthMask(GLboolean flag)
628396c5ddc4Srjs{
628496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
628596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_DepthMask);
628696c5ddc4Srjs   struct marshal_cmd_DepthMask *cmd;
628796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_DepthMask, cmd_size);
628896c5ddc4Srjs   cmd->flag = flag;
628996c5ddc4Srjs}
629096c5ddc4Srjs
629196c5ddc4Srjs
629296c5ddc4Srjs/* IndexMask: marshalled asynchronously */
629396c5ddc4Srjsstruct marshal_cmd_IndexMask
629496c5ddc4Srjs{
629596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
629696c5ddc4Srjs   GLuint mask;
629796c5ddc4Srjs};
629896c5ddc4Srjsuint32_t
629996c5ddc4Srjs_mesa_unmarshal_IndexMask(struct gl_context *ctx, const struct marshal_cmd_IndexMask *cmd, const uint64_t *last)
630096c5ddc4Srjs{
630196c5ddc4Srjs   GLuint mask = cmd->mask;
630296c5ddc4Srjs   CALL_IndexMask(ctx->CurrentServerDispatch, (mask));
630396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_IndexMask), 8) / 8);
630496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
630596c5ddc4Srjs   return cmd_size;
630696c5ddc4Srjs}
630796c5ddc4Srjsvoid GLAPIENTRY
630896c5ddc4Srjs_mesa_marshal_IndexMask(GLuint mask)
630996c5ddc4Srjs{
631096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
631196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_IndexMask);
631296c5ddc4Srjs   struct marshal_cmd_IndexMask *cmd;
631396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_IndexMask, cmd_size);
631496c5ddc4Srjs   cmd->mask = mask;
631596c5ddc4Srjs}
631696c5ddc4Srjs
631796c5ddc4Srjs
631896c5ddc4Srjs/* Accum: marshalled asynchronously */
631996c5ddc4Srjsstruct marshal_cmd_Accum
632096c5ddc4Srjs{
632196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
632296c5ddc4Srjs   GLenum op;
632396c5ddc4Srjs   GLfloat value;
632496c5ddc4Srjs};
632596c5ddc4Srjsuint32_t
632696c5ddc4Srjs_mesa_unmarshal_Accum(struct gl_context *ctx, const struct marshal_cmd_Accum *cmd, const uint64_t *last)
632796c5ddc4Srjs{
632896c5ddc4Srjs   GLenum op = cmd->op;
632996c5ddc4Srjs   GLfloat value = cmd->value;
633096c5ddc4Srjs   CALL_Accum(ctx->CurrentServerDispatch, (op, value));
633196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Accum), 8) / 8);
633296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
633396c5ddc4Srjs   return cmd_size;
633496c5ddc4Srjs}
633596c5ddc4Srjsvoid GLAPIENTRY
633696c5ddc4Srjs_mesa_marshal_Accum(GLenum op, GLfloat value)
633796c5ddc4Srjs{
633896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
633996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Accum);
634096c5ddc4Srjs   struct marshal_cmd_Accum *cmd;
634196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Accum, cmd_size);
634296c5ddc4Srjs   cmd->op = op;
634396c5ddc4Srjs   cmd->value = value;
634496c5ddc4Srjs}
634596c5ddc4Srjs
634696c5ddc4Srjs
634796c5ddc4Srjs/* Disable: marshalled asynchronously */
634896c5ddc4Srjsstruct marshal_cmd_Disable
634996c5ddc4Srjs{
635096c5ddc4Srjs   struct marshal_cmd_base cmd_base;
635196c5ddc4Srjs   GLenum cap;
635296c5ddc4Srjs};
635396c5ddc4Srjsuint32_t
635496c5ddc4Srjs_mesa_unmarshal_Disable(struct gl_context *ctx, const struct marshal_cmd_Disable *cmd, const uint64_t *last)
635596c5ddc4Srjs{
635696c5ddc4Srjs   GLenum cap = cmd->cap;
635796c5ddc4Srjs   CALL_Disable(ctx->CurrentServerDispatch, (cap));
635896c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Disable), 8) / 8);
635996c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
636096c5ddc4Srjs   return cmd_size;
636196c5ddc4Srjs}
636296c5ddc4Srjsvoid GLAPIENTRY
636396c5ddc4Srjs_mesa_marshal_Disable(GLenum cap)
636496c5ddc4Srjs{
636596c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
636696c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Disable);
636796c5ddc4Srjs   struct marshal_cmd_Disable *cmd;
636896c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Disable, cmd_size);
636996c5ddc4Srjs   cmd->cap = cap;
637096c5ddc4Srjs   _mesa_glthread_Disable(ctx, cap);
637196c5ddc4Srjs}
637296c5ddc4Srjs
637396c5ddc4Srjs
637496c5ddc4Srjs/* Enable: marshalled asynchronously */
637596c5ddc4Srjsstruct marshal_cmd_Enable
637696c5ddc4Srjs{
637796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
637896c5ddc4Srjs   GLenum cap;
637996c5ddc4Srjs};
638096c5ddc4Srjsuint32_t
638196c5ddc4Srjs_mesa_unmarshal_Enable(struct gl_context *ctx, const struct marshal_cmd_Enable *cmd, const uint64_t *last)
638296c5ddc4Srjs{
638396c5ddc4Srjs   GLenum cap = cmd->cap;
638496c5ddc4Srjs   CALL_Enable(ctx->CurrentServerDispatch, (cap));
638596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Enable), 8) / 8);
638696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
638796c5ddc4Srjs   return cmd_size;
638896c5ddc4Srjs}
638996c5ddc4Srjsvoid GLAPIENTRY
639096c5ddc4Srjs_mesa_marshal_Enable(GLenum cap)
639196c5ddc4Srjs{
639296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
639396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Enable);
639496c5ddc4Srjs   struct marshal_cmd_Enable *cmd;
639596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Enable, cmd_size);
639696c5ddc4Srjs   cmd->cap = cap;
639796c5ddc4Srjs   _mesa_glthread_Enable(ctx, cap);
639896c5ddc4Srjs}
639996c5ddc4Srjs
640096c5ddc4Srjs
640196c5ddc4Srjs/* Finish: marshalled synchronously */
640296c5ddc4Srjsvoid GLAPIENTRY
640396c5ddc4Srjs_mesa_marshal_Finish(void)
640496c5ddc4Srjs{
640596c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
640696c5ddc4Srjs   _mesa_glthread_finish_before(ctx, "Finish");
640796c5ddc4Srjs   CALL_Finish(ctx->CurrentServerDispatch, ());
640896c5ddc4Srjs}
640996c5ddc4Srjs
641096c5ddc4Srjs
641196c5ddc4Srjs/* Flush: marshalled asynchronously */
641296c5ddc4Srjsstruct marshal_cmd_Flush
641396c5ddc4Srjs{
641496c5ddc4Srjs   struct marshal_cmd_base cmd_base;
641596c5ddc4Srjs};
641696c5ddc4Srjsuint32_t
641796c5ddc4Srjs_mesa_unmarshal_Flush(struct gl_context *ctx, const struct marshal_cmd_Flush *cmd, const uint64_t *last)
641896c5ddc4Srjs{
641996c5ddc4Srjs   CALL_Flush(ctx->CurrentServerDispatch, ());
642096c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_Flush), 8) / 8);
642196c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
642296c5ddc4Srjs   return cmd_size;
642396c5ddc4Srjs}
642496c5ddc4Srjsvoid GLAPIENTRY
642596c5ddc4Srjs_mesa_marshal_Flush(void)
642696c5ddc4Srjs{
642796c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
642896c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_Flush);
642996c5ddc4Srjs   struct marshal_cmd_Flush *cmd;
643096c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_Flush, cmd_size);
643196c5ddc4Srjs   (void) cmd;
643296c5ddc4Srjs   _mesa_glthread_flush_batch(ctx); if (ctx->Shared->HasExternallySharedImages) _mesa_glthread_finish(ctx);
643396c5ddc4Srjs}
643496c5ddc4Srjs
643596c5ddc4Srjs
643696c5ddc4Srjs/* PopAttrib: marshalled asynchronously */
643796c5ddc4Srjsstruct marshal_cmd_PopAttrib
643896c5ddc4Srjs{
643996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
644096c5ddc4Srjs};
644196c5ddc4Srjsuint32_t
644296c5ddc4Srjs_mesa_unmarshal_PopAttrib(struct gl_context *ctx, const struct marshal_cmd_PopAttrib *cmd, const uint64_t *last)
644396c5ddc4Srjs{
644496c5ddc4Srjs   CALL_PopAttrib(ctx->CurrentServerDispatch, ());
644596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_PopAttrib), 8) / 8);
644696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
644796c5ddc4Srjs   return cmd_size;
644896c5ddc4Srjs}
644996c5ddc4Srjsvoid GLAPIENTRY
645096c5ddc4Srjs_mesa_marshal_PopAttrib(void)
645196c5ddc4Srjs{
645296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
645396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_PopAttrib);
645496c5ddc4Srjs   struct marshal_cmd_PopAttrib *cmd;
645596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_PopAttrib, cmd_size);
645696c5ddc4Srjs   (void) cmd;
645796c5ddc4Srjs   _mesa_glthread_PopAttrib(ctx);
645896c5ddc4Srjs}
645996c5ddc4Srjs
646096c5ddc4Srjs
646196c5ddc4Srjs/* PushAttrib: marshalled asynchronously */
646296c5ddc4Srjsstruct marshal_cmd_PushAttrib
646396c5ddc4Srjs{
646496c5ddc4Srjs   struct marshal_cmd_base cmd_base;
646596c5ddc4Srjs   GLbitfield mask;
646696c5ddc4Srjs};
646796c5ddc4Srjsuint32_t
646896c5ddc4Srjs_mesa_unmarshal_PushAttrib(struct gl_context *ctx, const struct marshal_cmd_PushAttrib *cmd, const uint64_t *last)
646996c5ddc4Srjs{
647096c5ddc4Srjs   GLbitfield mask = cmd->mask;
647196c5ddc4Srjs   CALL_PushAttrib(ctx->CurrentServerDispatch, (mask));
647296c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_PushAttrib), 8) / 8);
647396c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
647496c5ddc4Srjs   return cmd_size;
647596c5ddc4Srjs}
647696c5ddc4Srjsvoid GLAPIENTRY
647796c5ddc4Srjs_mesa_marshal_PushAttrib(GLbitfield mask)
647896c5ddc4Srjs{
647996c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
648096c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_PushAttrib);
648196c5ddc4Srjs   struct marshal_cmd_PushAttrib *cmd;
648296c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_PushAttrib, cmd_size);
648396c5ddc4Srjs   cmd->mask = mask;
648496c5ddc4Srjs   _mesa_glthread_PushAttrib(ctx, mask);
648596c5ddc4Srjs}
648696c5ddc4Srjs
648796c5ddc4Srjs
648896c5ddc4Srjs/* Map1d: marshalled synchronously */
648996c5ddc4Srjsvoid GLAPIENTRY
649096c5ddc4Srjs_mesa_marshal_Map1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble * points)
649196c5ddc4Srjs{
649296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
649396c5ddc4Srjs   _mesa_glthread_finish_before(ctx, "Map1d");
649496c5ddc4Srjs   CALL_Map1d(ctx->CurrentServerDispatch, (target, u1, u2, stride, order, points));
649596c5ddc4Srjs}
649696c5ddc4Srjs
649796c5ddc4Srjs
649896c5ddc4Srjs/* Map1f: marshalled synchronously */
649996c5ddc4Srjsvoid GLAPIENTRY
650096c5ddc4Srjs_mesa_marshal_Map1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat * points)
650196c5ddc4Srjs{
650296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
650396c5ddc4Srjs   _mesa_glthread_finish_before(ctx, "Map1f");
650496c5ddc4Srjs   CALL_Map1f(ctx->CurrentServerDispatch, (target, u1, u2, stride, order, points));
650596c5ddc4Srjs}
650696c5ddc4Srjs
650796c5ddc4Srjs
650896c5ddc4Srjs/* Map2d: marshalled synchronously */
650996c5ddc4Srjsvoid GLAPIENTRY
651096c5ddc4Srjs_mesa_marshal_Map2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble * points)
651196c5ddc4Srjs{
651296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
651396c5ddc4Srjs   _mesa_glthread_finish_before(ctx, "Map2d");
651496c5ddc4Srjs   CALL_Map2d(ctx->CurrentServerDispatch, (target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points));
651596c5ddc4Srjs}
651696c5ddc4Srjs
651796c5ddc4Srjs
651896c5ddc4Srjs/* Map2f: marshalled synchronously */
651996c5ddc4Srjsvoid GLAPIENTRY
652096c5ddc4Srjs_mesa_marshal_Map2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat * points)
652196c5ddc4Srjs{
652296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
652396c5ddc4Srjs   _mesa_glthread_finish_before(ctx, "Map2f");
652496c5ddc4Srjs   CALL_Map2f(ctx->CurrentServerDispatch, (target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points));
652596c5ddc4Srjs}
652696c5ddc4Srjs
652796c5ddc4Srjs
652896c5ddc4Srjs/* MapGrid1d: marshalled asynchronously */
652996c5ddc4Srjsstruct marshal_cmd_MapGrid1d
653096c5ddc4Srjs{
653196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
653296c5ddc4Srjs   GLint un;
653396c5ddc4Srjs   GLdouble u1;
653496c5ddc4Srjs   GLdouble u2;
653596c5ddc4Srjs};
653696c5ddc4Srjsuint32_t
653796c5ddc4Srjs_mesa_unmarshal_MapGrid1d(struct gl_context *ctx, const struct marshal_cmd_MapGrid1d *cmd, const uint64_t *last)
653896c5ddc4Srjs{
653996c5ddc4Srjs   GLint un = cmd->un;
654096c5ddc4Srjs   GLdouble u1 = cmd->u1;
654196c5ddc4Srjs   GLdouble u2 = cmd->u2;
654296c5ddc4Srjs   CALL_MapGrid1d(ctx->CurrentServerDispatch, (un, u1, u2));
654396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_MapGrid1d), 8) / 8);
654496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
654596c5ddc4Srjs   return cmd_size;
654696c5ddc4Srjs}
654796c5ddc4Srjsvoid GLAPIENTRY
654896c5ddc4Srjs_mesa_marshal_MapGrid1d(GLint un, GLdouble u1, GLdouble u2)
654996c5ddc4Srjs{
655096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
655196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_MapGrid1d);
655296c5ddc4Srjs   struct marshal_cmd_MapGrid1d *cmd;
655396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_MapGrid1d, cmd_size);
655496c5ddc4Srjs   cmd->un = un;
655596c5ddc4Srjs   cmd->u1 = u1;
655696c5ddc4Srjs   cmd->u2 = u2;
655796c5ddc4Srjs}
655896c5ddc4Srjs
655996c5ddc4Srjs
656096c5ddc4Srjs/* MapGrid1f: marshalled asynchronously */
656196c5ddc4Srjsstruct marshal_cmd_MapGrid1f
656296c5ddc4Srjs{
656396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
656496c5ddc4Srjs   GLint un;
656596c5ddc4Srjs   GLfloat u1;
656696c5ddc4Srjs   GLfloat u2;
656796c5ddc4Srjs};
656896c5ddc4Srjsuint32_t
656996c5ddc4Srjs_mesa_unmarshal_MapGrid1f(struct gl_context *ctx, const struct marshal_cmd_MapGrid1f *cmd, const uint64_t *last)
657096c5ddc4Srjs{
657196c5ddc4Srjs   GLint un = cmd->un;
657296c5ddc4Srjs   GLfloat u1 = cmd->u1;
657396c5ddc4Srjs   GLfloat u2 = cmd->u2;
657496c5ddc4Srjs   CALL_MapGrid1f(ctx->CurrentServerDispatch, (un, u1, u2));
657596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_MapGrid1f), 8) / 8);
657696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
657796c5ddc4Srjs   return cmd_size;
657896c5ddc4Srjs}
657996c5ddc4Srjsvoid GLAPIENTRY
658096c5ddc4Srjs_mesa_marshal_MapGrid1f(GLint un, GLfloat u1, GLfloat u2)
658196c5ddc4Srjs{
658296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
658396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_MapGrid1f);
658496c5ddc4Srjs   struct marshal_cmd_MapGrid1f *cmd;
658596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_MapGrid1f, cmd_size);
658696c5ddc4Srjs   cmd->un = un;
658796c5ddc4Srjs   cmd->u1 = u1;
658896c5ddc4Srjs   cmd->u2 = u2;
658996c5ddc4Srjs}
659096c5ddc4Srjs
659196c5ddc4Srjs
659296c5ddc4Srjs/* MapGrid2d: marshalled asynchronously */
659396c5ddc4Srjsstruct marshal_cmd_MapGrid2d
659496c5ddc4Srjs{
659596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
659696c5ddc4Srjs   GLint un;
659796c5ddc4Srjs   GLint vn;
659896c5ddc4Srjs   GLdouble u1;
659996c5ddc4Srjs   GLdouble u2;
660096c5ddc4Srjs   GLdouble v1;
660196c5ddc4Srjs   GLdouble v2;
660296c5ddc4Srjs};
660396c5ddc4Srjsuint32_t
660496c5ddc4Srjs_mesa_unmarshal_MapGrid2d(struct gl_context *ctx, const struct marshal_cmd_MapGrid2d *cmd, const uint64_t *last)
660596c5ddc4Srjs{
660696c5ddc4Srjs   GLint un = cmd->un;
660796c5ddc4Srjs   GLdouble u1 = cmd->u1;
660896c5ddc4Srjs   GLdouble u2 = cmd->u2;
660996c5ddc4Srjs   GLint vn = cmd->vn;
661096c5ddc4Srjs   GLdouble v1 = cmd->v1;
661196c5ddc4Srjs   GLdouble v2 = cmd->v2;
661296c5ddc4Srjs   CALL_MapGrid2d(ctx->CurrentServerDispatch, (un, u1, u2, vn, v1, v2));
661396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_MapGrid2d), 8) / 8);
661496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
661596c5ddc4Srjs   return cmd_size;
661696c5ddc4Srjs}
661796c5ddc4Srjsvoid GLAPIENTRY
661896c5ddc4Srjs_mesa_marshal_MapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2)
661996c5ddc4Srjs{
662096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
662196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_MapGrid2d);
662296c5ddc4Srjs   struct marshal_cmd_MapGrid2d *cmd;
662396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_MapGrid2d, cmd_size);
662496c5ddc4Srjs   cmd->un = un;
662596c5ddc4Srjs   cmd->u1 = u1;
662696c5ddc4Srjs   cmd->u2 = u2;
662796c5ddc4Srjs   cmd->vn = vn;
662896c5ddc4Srjs   cmd->v1 = v1;
662996c5ddc4Srjs   cmd->v2 = v2;
663096c5ddc4Srjs}
663196c5ddc4Srjs
663296c5ddc4Srjs
663396c5ddc4Srjs/* MapGrid2f: marshalled asynchronously */
663496c5ddc4Srjsstruct marshal_cmd_MapGrid2f
663596c5ddc4Srjs{
663696c5ddc4Srjs   struct marshal_cmd_base cmd_base;
663796c5ddc4Srjs   GLint un;
663896c5ddc4Srjs   GLfloat u1;
663996c5ddc4Srjs   GLfloat u2;
664096c5ddc4Srjs   GLint vn;
664196c5ddc4Srjs   GLfloat v1;
664296c5ddc4Srjs   GLfloat v2;
664396c5ddc4Srjs};
664496c5ddc4Srjsuint32_t
664596c5ddc4Srjs_mesa_unmarshal_MapGrid2f(struct gl_context *ctx, const struct marshal_cmd_MapGrid2f *cmd, const uint64_t *last)
664696c5ddc4Srjs{
664796c5ddc4Srjs   GLint un = cmd->un;
664896c5ddc4Srjs   GLfloat u1 = cmd->u1;
664996c5ddc4Srjs   GLfloat u2 = cmd->u2;
665096c5ddc4Srjs   GLint vn = cmd->vn;
665196c5ddc4Srjs   GLfloat v1 = cmd->v1;
665296c5ddc4Srjs   GLfloat v2 = cmd->v2;
665396c5ddc4Srjs   CALL_MapGrid2f(ctx->CurrentServerDispatch, (un, u1, u2, vn, v1, v2));
665496c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_MapGrid2f), 8) / 8);
665596c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
665696c5ddc4Srjs   return cmd_size;
665796c5ddc4Srjs}
665896c5ddc4Srjsvoid GLAPIENTRY
665996c5ddc4Srjs_mesa_marshal_MapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2)
666096c5ddc4Srjs{
666196c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
666296c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_MapGrid2f);
666396c5ddc4Srjs   struct marshal_cmd_MapGrid2f *cmd;
666496c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_MapGrid2f, cmd_size);
666596c5ddc4Srjs   cmd->un = un;
666696c5ddc4Srjs   cmd->u1 = u1;
666796c5ddc4Srjs   cmd->u2 = u2;
666896c5ddc4Srjs   cmd->vn = vn;
666996c5ddc4Srjs   cmd->v1 = v1;
667096c5ddc4Srjs   cmd->v2 = v2;
667196c5ddc4Srjs}
667296c5ddc4Srjs
667396c5ddc4Srjs
667496c5ddc4Srjs/* EvalCoord1d: marshalled asynchronously */
667596c5ddc4Srjsstruct marshal_cmd_EvalCoord1d
667696c5ddc4Srjs{
667796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
667896c5ddc4Srjs   GLdouble u;
667996c5ddc4Srjs};
668096c5ddc4Srjsuint32_t
668196c5ddc4Srjs_mesa_unmarshal_EvalCoord1d(struct gl_context *ctx, const struct marshal_cmd_EvalCoord1d *cmd, const uint64_t *last)
668296c5ddc4Srjs{
668396c5ddc4Srjs   GLdouble u = cmd->u;
668496c5ddc4Srjs   CALL_EvalCoord1d(ctx->CurrentServerDispatch, (u));
668596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_EvalCoord1d), 8) / 8);
668696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
668796c5ddc4Srjs   return cmd_size;
668896c5ddc4Srjs}
668996c5ddc4Srjsvoid GLAPIENTRY
669096c5ddc4Srjs_mesa_marshal_EvalCoord1d(GLdouble u)
669196c5ddc4Srjs{
669296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
669396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_EvalCoord1d);
669496c5ddc4Srjs   struct marshal_cmd_EvalCoord1d *cmd;
669596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_EvalCoord1d, cmd_size);
669696c5ddc4Srjs   cmd->u = u;
669796c5ddc4Srjs}
669896c5ddc4Srjs
669996c5ddc4Srjs
670096c5ddc4Srjs/* EvalCoord1dv: marshalled asynchronously */
670196c5ddc4Srjsstruct marshal_cmd_EvalCoord1dv
670296c5ddc4Srjs{
670396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
670496c5ddc4Srjs   GLdouble u[1];
670596c5ddc4Srjs};
670696c5ddc4Srjsuint32_t
670796c5ddc4Srjs_mesa_unmarshal_EvalCoord1dv(struct gl_context *ctx, const struct marshal_cmd_EvalCoord1dv *cmd, const uint64_t *last)
670896c5ddc4Srjs{
670996c5ddc4Srjs   const GLdouble * u = cmd->u;
671096c5ddc4Srjs   CALL_EvalCoord1dv(ctx->CurrentServerDispatch, (u));
671196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_EvalCoord1dv), 8) / 8);
671296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
671396c5ddc4Srjs   return cmd_size;
671496c5ddc4Srjs}
671596c5ddc4Srjsvoid GLAPIENTRY
671696c5ddc4Srjs_mesa_marshal_EvalCoord1dv(const GLdouble * u)
671796c5ddc4Srjs{
671896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
671996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_EvalCoord1dv);
672096c5ddc4Srjs   struct marshal_cmd_EvalCoord1dv *cmd;
672196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_EvalCoord1dv, cmd_size);
672296c5ddc4Srjs   memcpy(cmd->u, u, 1 * sizeof(GLdouble));
672396c5ddc4Srjs}
672496c5ddc4Srjs
672596c5ddc4Srjs
672696c5ddc4Srjs/* EvalCoord1f: marshalled asynchronously */
672796c5ddc4Srjsstruct marshal_cmd_EvalCoord1f
672896c5ddc4Srjs{
672996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
673096c5ddc4Srjs   GLfloat u;
673196c5ddc4Srjs};
673296c5ddc4Srjsuint32_t
673396c5ddc4Srjs_mesa_unmarshal_EvalCoord1f(struct gl_context *ctx, const struct marshal_cmd_EvalCoord1f *cmd, const uint64_t *last)
673496c5ddc4Srjs{
673596c5ddc4Srjs   GLfloat u = cmd->u;
673696c5ddc4Srjs   CALL_EvalCoord1f(ctx->CurrentServerDispatch, (u));
673796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_EvalCoord1f), 8) / 8);
673896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
673996c5ddc4Srjs   return cmd_size;
674096c5ddc4Srjs}
674196c5ddc4Srjsvoid GLAPIENTRY
674296c5ddc4Srjs_mesa_marshal_EvalCoord1f(GLfloat u)
674396c5ddc4Srjs{
674496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
674596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_EvalCoord1f);
674696c5ddc4Srjs   struct marshal_cmd_EvalCoord1f *cmd;
674796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_EvalCoord1f, cmd_size);
674896c5ddc4Srjs   cmd->u = u;
674996c5ddc4Srjs}
675096c5ddc4Srjs
675196c5ddc4Srjs
675296c5ddc4Srjs/* EvalCoord1fv: marshalled asynchronously */
675396c5ddc4Srjsstruct marshal_cmd_EvalCoord1fv
675496c5ddc4Srjs{
675596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
675696c5ddc4Srjs   GLfloat u[1];
675796c5ddc4Srjs};
675896c5ddc4Srjsuint32_t
675996c5ddc4Srjs_mesa_unmarshal_EvalCoord1fv(struct gl_context *ctx, const struct marshal_cmd_EvalCoord1fv *cmd, const uint64_t *last)
676096c5ddc4Srjs{
676196c5ddc4Srjs   const GLfloat * u = cmd->u;
676296c5ddc4Srjs   CALL_EvalCoord1fv(ctx->CurrentServerDispatch, (u));
676396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_EvalCoord1fv), 8) / 8);
676496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
676596c5ddc4Srjs   return cmd_size;
676696c5ddc4Srjs}
676796c5ddc4Srjsvoid GLAPIENTRY
676896c5ddc4Srjs_mesa_marshal_EvalCoord1fv(const GLfloat * u)
676996c5ddc4Srjs{
677096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
677196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_EvalCoord1fv);
677296c5ddc4Srjs   struct marshal_cmd_EvalCoord1fv *cmd;
677396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_EvalCoord1fv, cmd_size);
677496c5ddc4Srjs   memcpy(cmd->u, u, 1 * sizeof(GLfloat));
677596c5ddc4Srjs}
677696c5ddc4Srjs
677796c5ddc4Srjs
677896c5ddc4Srjs/* EvalCoord2d: marshalled asynchronously */
677996c5ddc4Srjsstruct marshal_cmd_EvalCoord2d
678096c5ddc4Srjs{
678196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
678296c5ddc4Srjs   GLdouble u;
678396c5ddc4Srjs   GLdouble v;
678496c5ddc4Srjs};
678596c5ddc4Srjsuint32_t
678696c5ddc4Srjs_mesa_unmarshal_EvalCoord2d(struct gl_context *ctx, const struct marshal_cmd_EvalCoord2d *cmd, const uint64_t *last)
678796c5ddc4Srjs{
678896c5ddc4Srjs   GLdouble u = cmd->u;
678996c5ddc4Srjs   GLdouble v = cmd->v;
679096c5ddc4Srjs   CALL_EvalCoord2d(ctx->CurrentServerDispatch, (u, v));
679196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_EvalCoord2d), 8) / 8);
679296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
679396c5ddc4Srjs   return cmd_size;
679496c5ddc4Srjs}
679596c5ddc4Srjsvoid GLAPIENTRY
679696c5ddc4Srjs_mesa_marshal_EvalCoord2d(GLdouble u, GLdouble v)
679796c5ddc4Srjs{
679896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
679996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_EvalCoord2d);
680096c5ddc4Srjs   struct marshal_cmd_EvalCoord2d *cmd;
680196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_EvalCoord2d, cmd_size);
680296c5ddc4Srjs   cmd->u = u;
680396c5ddc4Srjs   cmd->v = v;
680496c5ddc4Srjs}
680596c5ddc4Srjs
680696c5ddc4Srjs
680796c5ddc4Srjs/* EvalCoord2dv: marshalled asynchronously */
680896c5ddc4Srjsstruct marshal_cmd_EvalCoord2dv
680996c5ddc4Srjs{
681096c5ddc4Srjs   struct marshal_cmd_base cmd_base;
681196c5ddc4Srjs   GLdouble u[2];
681296c5ddc4Srjs};
681396c5ddc4Srjsuint32_t
681496c5ddc4Srjs_mesa_unmarshal_EvalCoord2dv(struct gl_context *ctx, const struct marshal_cmd_EvalCoord2dv *cmd, const uint64_t *last)
681596c5ddc4Srjs{
681696c5ddc4Srjs   const GLdouble * u = cmd->u;
681796c5ddc4Srjs   CALL_EvalCoord2dv(ctx->CurrentServerDispatch, (u));
681896c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_EvalCoord2dv), 8) / 8);
681996c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
682096c5ddc4Srjs   return cmd_size;
682196c5ddc4Srjs}
682296c5ddc4Srjsvoid GLAPIENTRY
682396c5ddc4Srjs_mesa_marshal_EvalCoord2dv(const GLdouble * u)
682496c5ddc4Srjs{
682596c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
682696c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_EvalCoord2dv);
682796c5ddc4Srjs   struct marshal_cmd_EvalCoord2dv *cmd;
682896c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_EvalCoord2dv, cmd_size);
682996c5ddc4Srjs   memcpy(cmd->u, u, 2 * sizeof(GLdouble));
683096c5ddc4Srjs}
683196c5ddc4Srjs
683296c5ddc4Srjs
683396c5ddc4Srjs/* EvalCoord2f: marshalled asynchronously */
683496c5ddc4Srjsstruct marshal_cmd_EvalCoord2f
683596c5ddc4Srjs{
683696c5ddc4Srjs   struct marshal_cmd_base cmd_base;
683796c5ddc4Srjs   GLfloat u;
683896c5ddc4Srjs   GLfloat v;
683996c5ddc4Srjs};
684096c5ddc4Srjsuint32_t
684196c5ddc4Srjs_mesa_unmarshal_EvalCoord2f(struct gl_context *ctx, const struct marshal_cmd_EvalCoord2f *cmd, const uint64_t *last)
684296c5ddc4Srjs{
684396c5ddc4Srjs   GLfloat u = cmd->u;
684496c5ddc4Srjs   GLfloat v = cmd->v;
684596c5ddc4Srjs   CALL_EvalCoord2f(ctx->CurrentServerDispatch, (u, v));
684696c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_EvalCoord2f), 8) / 8);
684796c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
684896c5ddc4Srjs   return cmd_size;
684996c5ddc4Srjs}
685096c5ddc4Srjsvoid GLAPIENTRY
685196c5ddc4Srjs_mesa_marshal_EvalCoord2f(GLfloat u, GLfloat v)
685296c5ddc4Srjs{
685396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
685496c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_EvalCoord2f);
685596c5ddc4Srjs   struct marshal_cmd_EvalCoord2f *cmd;
685696c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_EvalCoord2f, cmd_size);
685796c5ddc4Srjs   cmd->u = u;
685896c5ddc4Srjs   cmd->v = v;
685996c5ddc4Srjs}
686096c5ddc4Srjs
686196c5ddc4Srjs
686296c5ddc4Srjs/* EvalCoord2fv: marshalled asynchronously */
686396c5ddc4Srjsstruct marshal_cmd_EvalCoord2fv
686496c5ddc4Srjs{
686596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
686696c5ddc4Srjs   GLfloat u[2];
686796c5ddc4Srjs};
686896c5ddc4Srjsuint32_t
686996c5ddc4Srjs_mesa_unmarshal_EvalCoord2fv(struct gl_context *ctx, const struct marshal_cmd_EvalCoord2fv *cmd, const uint64_t *last)
687096c5ddc4Srjs{
687196c5ddc4Srjs   const GLfloat * u = cmd->u;
687296c5ddc4Srjs   CALL_EvalCoord2fv(ctx->CurrentServerDispatch, (u));
687396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_EvalCoord2fv), 8) / 8);
687496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
687596c5ddc4Srjs   return cmd_size;
687696c5ddc4Srjs}
687796c5ddc4Srjsvoid GLAPIENTRY
687896c5ddc4Srjs_mesa_marshal_EvalCoord2fv(const GLfloat * u)
687996c5ddc4Srjs{
688096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
688196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_EvalCoord2fv);
688296c5ddc4Srjs   struct marshal_cmd_EvalCoord2fv *cmd;
688396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_EvalCoord2fv, cmd_size);
688496c5ddc4Srjs   memcpy(cmd->u, u, 2 * sizeof(GLfloat));
688596c5ddc4Srjs}
688696c5ddc4Srjs
688796c5ddc4Srjs
688896c5ddc4Srjs/* EvalMesh1: marshalled asynchronously */
688996c5ddc4Srjsstruct marshal_cmd_EvalMesh1
689096c5ddc4Srjs{
689196c5ddc4Srjs   struct marshal_cmd_base cmd_base;
689296c5ddc4Srjs   GLenum mode;
689396c5ddc4Srjs   GLint i1;
689496c5ddc4Srjs   GLint i2;
689596c5ddc4Srjs};
689696c5ddc4Srjsuint32_t
689796c5ddc4Srjs_mesa_unmarshal_EvalMesh1(struct gl_context *ctx, const struct marshal_cmd_EvalMesh1 *cmd, const uint64_t *last)
689896c5ddc4Srjs{
689996c5ddc4Srjs   GLenum mode = cmd->mode;
690096c5ddc4Srjs   GLint i1 = cmd->i1;
690196c5ddc4Srjs   GLint i2 = cmd->i2;
690296c5ddc4Srjs   CALL_EvalMesh1(ctx->CurrentServerDispatch, (mode, i1, i2));
690396c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_EvalMesh1), 8) / 8);
690496c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
690596c5ddc4Srjs   return cmd_size;
690696c5ddc4Srjs}
690796c5ddc4Srjsvoid GLAPIENTRY
690896c5ddc4Srjs_mesa_marshal_EvalMesh1(GLenum mode, GLint i1, GLint i2)
690996c5ddc4Srjs{
691096c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
691196c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_EvalMesh1);
691296c5ddc4Srjs   struct marshal_cmd_EvalMesh1 *cmd;
691396c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_EvalMesh1, cmd_size);
691496c5ddc4Srjs   cmd->mode = mode;
691596c5ddc4Srjs   cmd->i1 = i1;
691696c5ddc4Srjs   cmd->i2 = i2;
691796c5ddc4Srjs}
691896c5ddc4Srjs
691996c5ddc4Srjs
692096c5ddc4Srjs/* EvalPoint1: marshalled asynchronously */
692196c5ddc4Srjsstruct marshal_cmd_EvalPoint1
692296c5ddc4Srjs{
692396c5ddc4Srjs   struct marshal_cmd_base cmd_base;
692496c5ddc4Srjs   GLint i;
692596c5ddc4Srjs};
692696c5ddc4Srjsuint32_t
692796c5ddc4Srjs_mesa_unmarshal_EvalPoint1(struct gl_context *ctx, const struct marshal_cmd_EvalPoint1 *cmd, const uint64_t *last)
692896c5ddc4Srjs{
692996c5ddc4Srjs   GLint i = cmd->i;
693096c5ddc4Srjs   CALL_EvalPoint1(ctx->CurrentServerDispatch, (i));
693196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_EvalPoint1), 8) / 8);
693296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
693396c5ddc4Srjs   return cmd_size;
693496c5ddc4Srjs}
693596c5ddc4Srjsvoid GLAPIENTRY
693696c5ddc4Srjs_mesa_marshal_EvalPoint1(GLint i)
693796c5ddc4Srjs{
693896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
693996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_EvalPoint1);
694096c5ddc4Srjs   struct marshal_cmd_EvalPoint1 *cmd;
694196c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_EvalPoint1, cmd_size);
694296c5ddc4Srjs   cmd->i = i;
694396c5ddc4Srjs}
694496c5ddc4Srjs
694596c5ddc4Srjs
694696c5ddc4Srjs/* EvalMesh2: marshalled asynchronously */
694796c5ddc4Srjsstruct marshal_cmd_EvalMesh2
694896c5ddc4Srjs{
694996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
695096c5ddc4Srjs   GLenum mode;
695196c5ddc4Srjs   GLint i1;
695296c5ddc4Srjs   GLint i2;
695396c5ddc4Srjs   GLint j1;
695496c5ddc4Srjs   GLint j2;
695596c5ddc4Srjs};
695696c5ddc4Srjsuint32_t
695796c5ddc4Srjs_mesa_unmarshal_EvalMesh2(struct gl_context *ctx, const struct marshal_cmd_EvalMesh2 *cmd, const uint64_t *last)
695896c5ddc4Srjs{
695996c5ddc4Srjs   GLenum mode = cmd->mode;
696096c5ddc4Srjs   GLint i1 = cmd->i1;
696196c5ddc4Srjs   GLint i2 = cmd->i2;
696296c5ddc4Srjs   GLint j1 = cmd->j1;
696396c5ddc4Srjs   GLint j2 = cmd->j2;
696496c5ddc4Srjs   CALL_EvalMesh2(ctx->CurrentServerDispatch, (mode, i1, i2, j1, j2));
696596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_EvalMesh2), 8) / 8);
696696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
696796c5ddc4Srjs   return cmd_size;
696896c5ddc4Srjs}
696996c5ddc4Srjsvoid GLAPIENTRY
697096c5ddc4Srjs_mesa_marshal_EvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2)
697196c5ddc4Srjs{
697296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
697396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_EvalMesh2);
697496c5ddc4Srjs   struct marshal_cmd_EvalMesh2 *cmd;
697596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_EvalMesh2, cmd_size);
697696c5ddc4Srjs   cmd->mode = mode;
697796c5ddc4Srjs   cmd->i1 = i1;
697896c5ddc4Srjs   cmd->i2 = i2;
697996c5ddc4Srjs   cmd->j1 = j1;
698096c5ddc4Srjs   cmd->j2 = j2;
698196c5ddc4Srjs}
698296c5ddc4Srjs
698396c5ddc4Srjs
698496c5ddc4Srjs/* EvalPoint2: marshalled asynchronously */
698596c5ddc4Srjsstruct marshal_cmd_EvalPoint2
698696c5ddc4Srjs{
698796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
698896c5ddc4Srjs   GLint i;
698996c5ddc4Srjs   GLint j;
699096c5ddc4Srjs};
699196c5ddc4Srjsuint32_t
699296c5ddc4Srjs_mesa_unmarshal_EvalPoint2(struct gl_context *ctx, const struct marshal_cmd_EvalPoint2 *cmd, const uint64_t *last)
699396c5ddc4Srjs{
699496c5ddc4Srjs   GLint i = cmd->i;
699596c5ddc4Srjs   GLint j = cmd->j;
699696c5ddc4Srjs   CALL_EvalPoint2(ctx->CurrentServerDispatch, (i, j));
699796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_EvalPoint2), 8) / 8);
699896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
699996c5ddc4Srjs   return cmd_size;
700096c5ddc4Srjs}
700196c5ddc4Srjsvoid GLAPIENTRY
700296c5ddc4Srjs_mesa_marshal_EvalPoint2(GLint i, GLint j)
700396c5ddc4Srjs{
700496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
700596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_EvalPoint2);
700696c5ddc4Srjs   struct marshal_cmd_EvalPoint2 *cmd;
700796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_EvalPoint2, cmd_size);
700896c5ddc4Srjs   cmd->i = i;
700996c5ddc4Srjs   cmd->j = j;
701096c5ddc4Srjs}
701196c5ddc4Srjs
701296c5ddc4Srjs
701396c5ddc4Srjs/* AlphaFunc: marshalled asynchronously */
701496c5ddc4Srjsstruct marshal_cmd_AlphaFunc
701596c5ddc4Srjs{
701696c5ddc4Srjs   struct marshal_cmd_base cmd_base;
701796c5ddc4Srjs   GLenum func;
701896c5ddc4Srjs   GLclampf ref;
701996c5ddc4Srjs};
702096c5ddc4Srjsuint32_t
702196c5ddc4Srjs_mesa_unmarshal_AlphaFunc(struct gl_context *ctx, const struct marshal_cmd_AlphaFunc *cmd, const uint64_t *last)
702296c5ddc4Srjs{
702396c5ddc4Srjs   GLenum func = cmd->func;
702496c5ddc4Srjs   GLclampf ref = cmd->ref;
702596c5ddc4Srjs   CALL_AlphaFunc(ctx->CurrentServerDispatch, (func, ref));
702696c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_AlphaFunc), 8) / 8);
702796c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
702896c5ddc4Srjs   return cmd_size;
702996c5ddc4Srjs}
703096c5ddc4Srjsvoid GLAPIENTRY
703196c5ddc4Srjs_mesa_marshal_AlphaFunc(GLenum func, GLclampf ref)
703296c5ddc4Srjs{
703396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
703496c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_AlphaFunc);
703596c5ddc4Srjs   struct marshal_cmd_AlphaFunc *cmd;
703696c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_AlphaFunc, cmd_size);
703796c5ddc4Srjs   cmd->func = func;
703896c5ddc4Srjs   cmd->ref = ref;
703996c5ddc4Srjs}
704096c5ddc4Srjs
704196c5ddc4Srjs
704296c5ddc4Srjs/* BlendFunc: marshalled asynchronously */
704396c5ddc4Srjsstruct marshal_cmd_BlendFunc
704496c5ddc4Srjs{
704596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
704696c5ddc4Srjs   GLenum sfactor;
704796c5ddc4Srjs   GLenum dfactor;
704896c5ddc4Srjs};
704996c5ddc4Srjsuint32_t
705096c5ddc4Srjs_mesa_unmarshal_BlendFunc(struct gl_context *ctx, const struct marshal_cmd_BlendFunc *cmd, const uint64_t *last)
705196c5ddc4Srjs{
705296c5ddc4Srjs   GLenum sfactor = cmd->sfactor;
705396c5ddc4Srjs   GLenum dfactor = cmd->dfactor;
705496c5ddc4Srjs   CALL_BlendFunc(ctx->CurrentServerDispatch, (sfactor, dfactor));
705596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_BlendFunc), 8) / 8);
705696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
705796c5ddc4Srjs   return cmd_size;
705896c5ddc4Srjs}
705996c5ddc4Srjsvoid GLAPIENTRY
706096c5ddc4Srjs_mesa_marshal_BlendFunc(GLenum sfactor, GLenum dfactor)
706196c5ddc4Srjs{
706296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
706396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_BlendFunc);
706496c5ddc4Srjs   struct marshal_cmd_BlendFunc *cmd;
706596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_BlendFunc, cmd_size);
706696c5ddc4Srjs   cmd->sfactor = sfactor;
706796c5ddc4Srjs   cmd->dfactor = dfactor;
706896c5ddc4Srjs}
706996c5ddc4Srjs
707096c5ddc4Srjs
707196c5ddc4Srjs/* LogicOp: marshalled asynchronously */
707296c5ddc4Srjsstruct marshal_cmd_LogicOp
707396c5ddc4Srjs{
707496c5ddc4Srjs   struct marshal_cmd_base cmd_base;
707596c5ddc4Srjs   GLenum opcode;
707696c5ddc4Srjs};
707796c5ddc4Srjsuint32_t
707896c5ddc4Srjs_mesa_unmarshal_LogicOp(struct gl_context *ctx, const struct marshal_cmd_LogicOp *cmd, const uint64_t *last)
707996c5ddc4Srjs{
708096c5ddc4Srjs   GLenum opcode = cmd->opcode;
708196c5ddc4Srjs   CALL_LogicOp(ctx->CurrentServerDispatch, (opcode));
708296c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_LogicOp), 8) / 8);
708396c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
708496c5ddc4Srjs   return cmd_size;
708596c5ddc4Srjs}
708696c5ddc4Srjsvoid GLAPIENTRY
708796c5ddc4Srjs_mesa_marshal_LogicOp(GLenum opcode)
708896c5ddc4Srjs{
708996c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
709096c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_LogicOp);
709196c5ddc4Srjs   struct marshal_cmd_LogicOp *cmd;
709296c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_LogicOp, cmd_size);
709396c5ddc4Srjs   cmd->opcode = opcode;
709496c5ddc4Srjs}
709596c5ddc4Srjs
709696c5ddc4Srjs
709796c5ddc4Srjs/* StencilFunc: marshalled asynchronously */
709896c5ddc4Srjsstruct marshal_cmd_StencilFunc
709996c5ddc4Srjs{
710096c5ddc4Srjs   struct marshal_cmd_base cmd_base;
710196c5ddc4Srjs   GLenum func;
710296c5ddc4Srjs   GLint ref;
710396c5ddc4Srjs   GLuint mask;
710496c5ddc4Srjs};
710596c5ddc4Srjsuint32_t
710696c5ddc4Srjs_mesa_unmarshal_StencilFunc(struct gl_context *ctx, const struct marshal_cmd_StencilFunc *cmd, const uint64_t *last)
710796c5ddc4Srjs{
710896c5ddc4Srjs   GLenum func = cmd->func;
710996c5ddc4Srjs   GLint ref = cmd->ref;
711096c5ddc4Srjs   GLuint mask = cmd->mask;
711196c5ddc4Srjs   CALL_StencilFunc(ctx->CurrentServerDispatch, (func, ref, mask));
711296c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_StencilFunc), 8) / 8);
711396c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
711496c5ddc4Srjs   return cmd_size;
711596c5ddc4Srjs}
711696c5ddc4Srjsvoid GLAPIENTRY
711796c5ddc4Srjs_mesa_marshal_StencilFunc(GLenum func, GLint ref, GLuint mask)
711896c5ddc4Srjs{
711996c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
712096c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_StencilFunc);
712196c5ddc4Srjs   struct marshal_cmd_StencilFunc *cmd;
712296c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_StencilFunc, cmd_size);
712396c5ddc4Srjs   cmd->func = func;
712496c5ddc4Srjs   cmd->ref = ref;
712596c5ddc4Srjs   cmd->mask = mask;
712696c5ddc4Srjs}
712796c5ddc4Srjs
712896c5ddc4Srjs
712996c5ddc4Srjs/* StencilOp: marshalled asynchronously */
713096c5ddc4Srjsstruct marshal_cmd_StencilOp
713196c5ddc4Srjs{
713296c5ddc4Srjs   struct marshal_cmd_base cmd_base;
713396c5ddc4Srjs   GLenum fail;
713496c5ddc4Srjs   GLenum zfail;
713596c5ddc4Srjs   GLenum zpass;
713696c5ddc4Srjs};
713796c5ddc4Srjsuint32_t
713896c5ddc4Srjs_mesa_unmarshal_StencilOp(struct gl_context *ctx, const struct marshal_cmd_StencilOp *cmd, const uint64_t *last)
713996c5ddc4Srjs{
714096c5ddc4Srjs   GLenum fail = cmd->fail;
714196c5ddc4Srjs   GLenum zfail = cmd->zfail;
714296c5ddc4Srjs   GLenum zpass = cmd->zpass;
714396c5ddc4Srjs   CALL_StencilOp(ctx->CurrentServerDispatch, (fail, zfail, zpass));
714496c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_StencilOp), 8) / 8);
714596c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
714696c5ddc4Srjs   return cmd_size;
714796c5ddc4Srjs}
714896c5ddc4Srjsvoid GLAPIENTRY
714996c5ddc4Srjs_mesa_marshal_StencilOp(GLenum fail, GLenum zfail, GLenum zpass)
715096c5ddc4Srjs{
715196c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
715296c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_StencilOp);
715396c5ddc4Srjs   struct marshal_cmd_StencilOp *cmd;
715496c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_StencilOp, cmd_size);
715596c5ddc4Srjs   cmd->fail = fail;
715696c5ddc4Srjs   cmd->zfail = zfail;
715796c5ddc4Srjs   cmd->zpass = zpass;
715896c5ddc4Srjs}
715996c5ddc4Srjs
716096c5ddc4Srjs
716196c5ddc4Srjs/* DepthFunc: marshalled asynchronously */
716296c5ddc4Srjsstruct marshal_cmd_DepthFunc
716396c5ddc4Srjs{
716496c5ddc4Srjs   struct marshal_cmd_base cmd_base;
716596c5ddc4Srjs   GLenum func;
716696c5ddc4Srjs};
716796c5ddc4Srjsuint32_t
716896c5ddc4Srjs_mesa_unmarshal_DepthFunc(struct gl_context *ctx, const struct marshal_cmd_DepthFunc *cmd, const uint64_t *last)
716996c5ddc4Srjs{
717096c5ddc4Srjs   GLenum func = cmd->func;
717196c5ddc4Srjs   CALL_DepthFunc(ctx->CurrentServerDispatch, (func));
717296c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_DepthFunc), 8) / 8);
717396c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
717496c5ddc4Srjs   return cmd_size;
717596c5ddc4Srjs}
717696c5ddc4Srjsvoid GLAPIENTRY
717796c5ddc4Srjs_mesa_marshal_DepthFunc(GLenum func)
717896c5ddc4Srjs{
717996c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
718096c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_DepthFunc);
718196c5ddc4Srjs   struct marshal_cmd_DepthFunc *cmd;
718296c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_DepthFunc, cmd_size);
718396c5ddc4Srjs   cmd->func = func;
718496c5ddc4Srjs}
718596c5ddc4Srjs
718696c5ddc4Srjs
718796c5ddc4Srjs/* PixelZoom: marshalled asynchronously */
718896c5ddc4Srjsstruct marshal_cmd_PixelZoom
718996c5ddc4Srjs{
719096c5ddc4Srjs   struct marshal_cmd_base cmd_base;
719196c5ddc4Srjs   GLfloat xfactor;
719296c5ddc4Srjs   GLfloat yfactor;
719396c5ddc4Srjs};
719496c5ddc4Srjsuint32_t
719596c5ddc4Srjs_mesa_unmarshal_PixelZoom(struct gl_context *ctx, const struct marshal_cmd_PixelZoom *cmd, const uint64_t *last)
719696c5ddc4Srjs{
719796c5ddc4Srjs   GLfloat xfactor = cmd->xfactor;
719896c5ddc4Srjs   GLfloat yfactor = cmd->yfactor;
719996c5ddc4Srjs   CALL_PixelZoom(ctx->CurrentServerDispatch, (xfactor, yfactor));
720096c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_PixelZoom), 8) / 8);
720196c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
720296c5ddc4Srjs   return cmd_size;
720396c5ddc4Srjs}
720496c5ddc4Srjsvoid GLAPIENTRY
720596c5ddc4Srjs_mesa_marshal_PixelZoom(GLfloat xfactor, GLfloat yfactor)
720696c5ddc4Srjs{
720796c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
720896c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_PixelZoom);
720996c5ddc4Srjs   struct marshal_cmd_PixelZoom *cmd;
721096c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_PixelZoom, cmd_size);
721196c5ddc4Srjs   cmd->xfactor = xfactor;
721296c5ddc4Srjs   cmd->yfactor = yfactor;
721396c5ddc4Srjs}
721496c5ddc4Srjs
721596c5ddc4Srjs
721696c5ddc4Srjs/* PixelTransferf: marshalled asynchronously */
721796c5ddc4Srjsstruct marshal_cmd_PixelTransferf
721896c5ddc4Srjs{
721996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
722096c5ddc4Srjs   GLenum pname;
722196c5ddc4Srjs   GLfloat param;
722296c5ddc4Srjs};
722396c5ddc4Srjsuint32_t
722496c5ddc4Srjs_mesa_unmarshal_PixelTransferf(struct gl_context *ctx, const struct marshal_cmd_PixelTransferf *cmd, const uint64_t *last)
722596c5ddc4Srjs{
722696c5ddc4Srjs   GLenum pname = cmd->pname;
722796c5ddc4Srjs   GLfloat param = cmd->param;
722896c5ddc4Srjs   CALL_PixelTransferf(ctx->CurrentServerDispatch, (pname, param));
722996c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_PixelTransferf), 8) / 8);
723096c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
723196c5ddc4Srjs   return cmd_size;
723296c5ddc4Srjs}
723396c5ddc4Srjsvoid GLAPIENTRY
723496c5ddc4Srjs_mesa_marshal_PixelTransferf(GLenum pname, GLfloat param)
723596c5ddc4Srjs{
723696c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
723796c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_PixelTransferf);
723896c5ddc4Srjs   struct marshal_cmd_PixelTransferf *cmd;
723996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_PixelTransferf, cmd_size);
724096c5ddc4Srjs   cmd->pname = pname;
724196c5ddc4Srjs   cmd->param = param;
724296c5ddc4Srjs}
724396c5ddc4Srjs
724496c5ddc4Srjs
724596c5ddc4Srjs/* PixelTransferi: marshalled asynchronously */
724696c5ddc4Srjsstruct marshal_cmd_PixelTransferi
724796c5ddc4Srjs{
724896c5ddc4Srjs   struct marshal_cmd_base cmd_base;
724996c5ddc4Srjs   GLenum pname;
725096c5ddc4Srjs   GLint param;
725196c5ddc4Srjs};
725296c5ddc4Srjsuint32_t
725396c5ddc4Srjs_mesa_unmarshal_PixelTransferi(struct gl_context *ctx, const struct marshal_cmd_PixelTransferi *cmd, const uint64_t *last)
725496c5ddc4Srjs{
725596c5ddc4Srjs   GLenum pname = cmd->pname;
725696c5ddc4Srjs   GLint param = cmd->param;
725796c5ddc4Srjs   CALL_PixelTransferi(ctx->CurrentServerDispatch, (pname, param));
725896c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_PixelTransferi), 8) / 8);
725996c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
726096c5ddc4Srjs   return cmd_size;
726196c5ddc4Srjs}
726296c5ddc4Srjsvoid GLAPIENTRY
726396c5ddc4Srjs_mesa_marshal_PixelTransferi(GLenum pname, GLint param)
726496c5ddc4Srjs{
726596c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
726696c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_PixelTransferi);
726796c5ddc4Srjs   struct marshal_cmd_PixelTransferi *cmd;
726896c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_PixelTransferi, cmd_size);
726996c5ddc4Srjs   cmd->pname = pname;
727096c5ddc4Srjs   cmd->param = param;
727196c5ddc4Srjs}
727296c5ddc4Srjs
727396c5ddc4Srjs
727496c5ddc4Srjs/* PixelStoref: marshalled asynchronously */
727596c5ddc4Srjsstruct marshal_cmd_PixelStoref
727696c5ddc4Srjs{
727796c5ddc4Srjs   struct marshal_cmd_base cmd_base;
727896c5ddc4Srjs   GLenum pname;
727996c5ddc4Srjs   GLfloat param;
728096c5ddc4Srjs};
728196c5ddc4Srjsuint32_t
728296c5ddc4Srjs_mesa_unmarshal_PixelStoref(struct gl_context *ctx, const struct marshal_cmd_PixelStoref *cmd, const uint64_t *last)
728396c5ddc4Srjs{
728496c5ddc4Srjs   GLenum pname = cmd->pname;
728596c5ddc4Srjs   GLfloat param = cmd->param;
728696c5ddc4Srjs   CALL_PixelStoref(ctx->CurrentServerDispatch, (pname, param));
728796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_PixelStoref), 8) / 8);
728896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
728996c5ddc4Srjs   return cmd_size;
729096c5ddc4Srjs}
729196c5ddc4Srjsvoid GLAPIENTRY
729296c5ddc4Srjs_mesa_marshal_PixelStoref(GLenum pname, GLfloat param)
729396c5ddc4Srjs{
729496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
729596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_PixelStoref);
729696c5ddc4Srjs   struct marshal_cmd_PixelStoref *cmd;
729796c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_PixelStoref, cmd_size);
729896c5ddc4Srjs   cmd->pname = pname;
729996c5ddc4Srjs   cmd->param = param;
730096c5ddc4Srjs}
730196c5ddc4Srjs
730296c5ddc4Srjs
730396c5ddc4Srjs/* PixelStorei: marshalled asynchronously */
730496c5ddc4Srjsstruct marshal_cmd_PixelStorei
730596c5ddc4Srjs{
730696c5ddc4Srjs   struct marshal_cmd_base cmd_base;
730796c5ddc4Srjs   GLenum pname;
730896c5ddc4Srjs   GLint param;
730996c5ddc4Srjs};
731096c5ddc4Srjsuint32_t
731196c5ddc4Srjs_mesa_unmarshal_PixelStorei(struct gl_context *ctx, const struct marshal_cmd_PixelStorei *cmd, const uint64_t *last)
731296c5ddc4Srjs{
731396c5ddc4Srjs   GLenum pname = cmd->pname;
731496c5ddc4Srjs   GLint param = cmd->param;
731596c5ddc4Srjs   CALL_PixelStorei(ctx->CurrentServerDispatch, (pname, param));
731696c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_PixelStorei), 8) / 8);
731796c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
731896c5ddc4Srjs   return cmd_size;
731996c5ddc4Srjs}
732096c5ddc4Srjsvoid GLAPIENTRY
732196c5ddc4Srjs_mesa_marshal_PixelStorei(GLenum pname, GLint param)
732296c5ddc4Srjs{
732396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
732496c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_PixelStorei);
732596c5ddc4Srjs   struct marshal_cmd_PixelStorei *cmd;
732696c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_PixelStorei, cmd_size);
732796c5ddc4Srjs   cmd->pname = pname;
732896c5ddc4Srjs   cmd->param = param;
732996c5ddc4Srjs}
733096c5ddc4Srjs
733196c5ddc4Srjs
733296c5ddc4Srjs/* PixelMapfv: marshalled asynchronously */
733396c5ddc4Srjsstruct marshal_cmd_PixelMapfv
733496c5ddc4Srjs{
733596c5ddc4Srjs   struct marshal_cmd_base cmd_base;
733696c5ddc4Srjs   GLenum map;
733796c5ddc4Srjs   GLsizei mapsize;
733896c5ddc4Srjs   const GLfloat * values;
733996c5ddc4Srjs};
734096c5ddc4Srjsuint32_t
734196c5ddc4Srjs_mesa_unmarshal_PixelMapfv(struct gl_context *ctx, const struct marshal_cmd_PixelMapfv *cmd, const uint64_t *last)
734296c5ddc4Srjs{
734396c5ddc4Srjs   GLenum map = cmd->map;
734496c5ddc4Srjs   GLsizei mapsize = cmd->mapsize;
734596c5ddc4Srjs   const GLfloat * values = cmd->values;
734696c5ddc4Srjs   CALL_PixelMapfv(ctx->CurrentServerDispatch, (map, mapsize, values));
734796c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_PixelMapfv), 8) / 8);
734896c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
734996c5ddc4Srjs   return cmd_size;
735096c5ddc4Srjs}
735196c5ddc4Srjsvoid GLAPIENTRY
735296c5ddc4Srjs_mesa_marshal_PixelMapfv(GLenum map, GLsizei mapsize, const GLfloat * values)
735396c5ddc4Srjs{
735496c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
735596c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_PixelMapfv);
735696c5ddc4Srjs   struct marshal_cmd_PixelMapfv *cmd;
735796c5ddc4Srjs   if (_mesa_glthread_has_no_unpack_buffer(ctx)) {
735896c5ddc4Srjs      _mesa_glthread_finish_before(ctx, "PixelMapfv");
735996c5ddc4Srjs      CALL_PixelMapfv(ctx->CurrentServerDispatch, (map, mapsize, values));
736096c5ddc4Srjs      return;
736196c5ddc4Srjs   }
736296c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_PixelMapfv, cmd_size);
736396c5ddc4Srjs   cmd->map = map;
736496c5ddc4Srjs   cmd->mapsize = mapsize;
736596c5ddc4Srjs   cmd->values = values;
736696c5ddc4Srjs}
736796c5ddc4Srjs
736896c5ddc4Srjs
736996c5ddc4Srjs/* PixelMapuiv: marshalled asynchronously */
737096c5ddc4Srjsstruct marshal_cmd_PixelMapuiv
737196c5ddc4Srjs{
737296c5ddc4Srjs   struct marshal_cmd_base cmd_base;
737396c5ddc4Srjs   GLenum map;
737496c5ddc4Srjs   GLsizei mapsize;
737596c5ddc4Srjs   const GLuint * values;
737696c5ddc4Srjs};
737796c5ddc4Srjsuint32_t
737896c5ddc4Srjs_mesa_unmarshal_PixelMapuiv(struct gl_context *ctx, const struct marshal_cmd_PixelMapuiv *cmd, const uint64_t *last)
737996c5ddc4Srjs{
738096c5ddc4Srjs   GLenum map = cmd->map;
738196c5ddc4Srjs   GLsizei mapsize = cmd->mapsize;
738296c5ddc4Srjs   const GLuint * values = cmd->values;
738396c5ddc4Srjs   CALL_PixelMapuiv(ctx->CurrentServerDispatch, (map, mapsize, values));
738496c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_PixelMapuiv), 8) / 8);
738596c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
738696c5ddc4Srjs   return cmd_size;
738796c5ddc4Srjs}
738896c5ddc4Srjsvoid GLAPIENTRY
738996c5ddc4Srjs_mesa_marshal_PixelMapuiv(GLenum map, GLsizei mapsize, const GLuint * values)
739096c5ddc4Srjs{
739196c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
739296c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_PixelMapuiv);
739396c5ddc4Srjs   struct marshal_cmd_PixelMapuiv *cmd;
739496c5ddc4Srjs   if (_mesa_glthread_has_no_unpack_buffer(ctx)) {
739596c5ddc4Srjs      _mesa_glthread_finish_before(ctx, "PixelMapuiv");
739696c5ddc4Srjs      CALL_PixelMapuiv(ctx->CurrentServerDispatch, (map, mapsize, values));
739796c5ddc4Srjs      return;
739896c5ddc4Srjs   }
739996c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_PixelMapuiv, cmd_size);
740096c5ddc4Srjs   cmd->map = map;
740196c5ddc4Srjs   cmd->mapsize = mapsize;
740296c5ddc4Srjs   cmd->values = values;
740396c5ddc4Srjs}
740496c5ddc4Srjs
740596c5ddc4Srjs
740696c5ddc4Srjs/* PixelMapusv: marshalled asynchronously */
740796c5ddc4Srjsstruct marshal_cmd_PixelMapusv
740896c5ddc4Srjs{
740996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
741096c5ddc4Srjs   GLenum map;
741196c5ddc4Srjs   GLsizei mapsize;
741296c5ddc4Srjs   const GLushort * values;
741396c5ddc4Srjs};
741496c5ddc4Srjsuint32_t
741596c5ddc4Srjs_mesa_unmarshal_PixelMapusv(struct gl_context *ctx, const struct marshal_cmd_PixelMapusv *cmd, const uint64_t *last)
741696c5ddc4Srjs{
741796c5ddc4Srjs   GLenum map = cmd->map;
741896c5ddc4Srjs   GLsizei mapsize = cmd->mapsize;
741996c5ddc4Srjs   const GLushort * values = cmd->values;
742096c5ddc4Srjs   CALL_PixelMapusv(ctx->CurrentServerDispatch, (map, mapsize, values));
742196c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_PixelMapusv), 8) / 8);
742296c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
742396c5ddc4Srjs   return cmd_size;
742496c5ddc4Srjs}
742596c5ddc4Srjsvoid GLAPIENTRY
742696c5ddc4Srjs_mesa_marshal_PixelMapusv(GLenum map, GLsizei mapsize, const GLushort * values)
742796c5ddc4Srjs{
742896c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
742996c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_PixelMapusv);
743096c5ddc4Srjs   struct marshal_cmd_PixelMapusv *cmd;
743196c5ddc4Srjs   if (_mesa_glthread_has_no_unpack_buffer(ctx)) {
743296c5ddc4Srjs      _mesa_glthread_finish_before(ctx, "PixelMapusv");
743396c5ddc4Srjs      CALL_PixelMapusv(ctx->CurrentServerDispatch, (map, mapsize, values));
743496c5ddc4Srjs      return;
743596c5ddc4Srjs   }
743696c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_PixelMapusv, cmd_size);
743796c5ddc4Srjs   cmd->map = map;
743896c5ddc4Srjs   cmd->mapsize = mapsize;
743996c5ddc4Srjs   cmd->values = values;
744096c5ddc4Srjs}
744196c5ddc4Srjs
744296c5ddc4Srjs
744396c5ddc4Srjs/* ReadBuffer: marshalled asynchronously */
744496c5ddc4Srjsstruct marshal_cmd_ReadBuffer
744596c5ddc4Srjs{
744696c5ddc4Srjs   struct marshal_cmd_base cmd_base;
744796c5ddc4Srjs   GLenum mode;
744896c5ddc4Srjs};
744996c5ddc4Srjsuint32_t
745096c5ddc4Srjs_mesa_unmarshal_ReadBuffer(struct gl_context *ctx, const struct marshal_cmd_ReadBuffer *cmd, const uint64_t *last)
745196c5ddc4Srjs{
745296c5ddc4Srjs   GLenum mode = cmd->mode;
745396c5ddc4Srjs   CALL_ReadBuffer(ctx->CurrentServerDispatch, (mode));
745496c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_ReadBuffer), 8) / 8);
745596c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
745696c5ddc4Srjs   return cmd_size;
745796c5ddc4Srjs}
745896c5ddc4Srjsvoid GLAPIENTRY
745996c5ddc4Srjs_mesa_marshal_ReadBuffer(GLenum mode)
746096c5ddc4Srjs{
746196c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
746296c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_ReadBuffer);
746396c5ddc4Srjs   struct marshal_cmd_ReadBuffer *cmd;
746496c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_ReadBuffer, cmd_size);
746596c5ddc4Srjs   cmd->mode = mode;
746696c5ddc4Srjs}
746796c5ddc4Srjs
746896c5ddc4Srjs
746996c5ddc4Srjs/* CopyPixels: marshalled asynchronously */
747096c5ddc4Srjsstruct marshal_cmd_CopyPixels
747196c5ddc4Srjs{
747296c5ddc4Srjs   struct marshal_cmd_base cmd_base;
747396c5ddc4Srjs   GLint x;
747496c5ddc4Srjs   GLint y;
747596c5ddc4Srjs   GLsizei width;
747696c5ddc4Srjs   GLsizei height;
747796c5ddc4Srjs   GLenum type;
747896c5ddc4Srjs};
747996c5ddc4Srjsuint32_t
748096c5ddc4Srjs_mesa_unmarshal_CopyPixels(struct gl_context *ctx, const struct marshal_cmd_CopyPixels *cmd, const uint64_t *last)
748196c5ddc4Srjs{
748296c5ddc4Srjs   GLint x = cmd->x;
748396c5ddc4Srjs   GLint y = cmd->y;
748496c5ddc4Srjs   GLsizei width = cmd->width;
748596c5ddc4Srjs   GLsizei height = cmd->height;
748696c5ddc4Srjs   GLenum type = cmd->type;
748796c5ddc4Srjs   CALL_CopyPixels(ctx->CurrentServerDispatch, (x, y, width, height, type));
748896c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_CopyPixels), 8) / 8);
748996c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
749096c5ddc4Srjs   return cmd_size;
749196c5ddc4Srjs}
749296c5ddc4Srjsvoid GLAPIENTRY
749396c5ddc4Srjs_mesa_marshal_CopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type)
749496c5ddc4Srjs{
749596c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
749696c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_CopyPixels);
749796c5ddc4Srjs   struct marshal_cmd_CopyPixels *cmd;
749896c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_CopyPixels, cmd_size);
749996c5ddc4Srjs   cmd->x = x;
750096c5ddc4Srjs   cmd->y = y;
750196c5ddc4Srjs   cmd->width = width;
750296c5ddc4Srjs   cmd->height = height;
750396c5ddc4Srjs   cmd->type = type;
750496c5ddc4Srjs}
750596c5ddc4Srjs
750696c5ddc4Srjs
750796c5ddc4Srjs/* ReadPixels: marshalled asynchronously */
750896c5ddc4Srjsstruct marshal_cmd_ReadPixels
750996c5ddc4Srjs{
751096c5ddc4Srjs   struct marshal_cmd_base cmd_base;
751196c5ddc4Srjs   GLint x;
751296c5ddc4Srjs   GLint y;
751396c5ddc4Srjs   GLsizei width;
751496c5ddc4Srjs   GLsizei height;
751596c5ddc4Srjs   GLenum format;
751696c5ddc4Srjs   GLenum type;
751796c5ddc4Srjs   GLvoid * pixels;
751896c5ddc4Srjs};
751996c5ddc4Srjsuint32_t
752096c5ddc4Srjs_mesa_unmarshal_ReadPixels(struct gl_context *ctx, const struct marshal_cmd_ReadPixels *cmd, const uint64_t *last)
752196c5ddc4Srjs{
752296c5ddc4Srjs   GLint x = cmd->x;
752396c5ddc4Srjs   GLint y = cmd->y;
752496c5ddc4Srjs   GLsizei width = cmd->width;
752596c5ddc4Srjs   GLsizei height = cmd->height;
752696c5ddc4Srjs   GLenum format = cmd->format;
752796c5ddc4Srjs   GLenum type = cmd->type;
752896c5ddc4Srjs   GLvoid * pixels = cmd->pixels;
752996c5ddc4Srjs   CALL_ReadPixels(ctx->CurrentServerDispatch, (x, y, width, height, format, type, pixels));
753096c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_ReadPixels), 8) / 8);
753196c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
753296c5ddc4Srjs   return cmd_size;
753396c5ddc4Srjs}
753496c5ddc4Srjsvoid GLAPIENTRY
753596c5ddc4Srjs_mesa_marshal_ReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid * pixels)
753696c5ddc4Srjs{
753796c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
753896c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_ReadPixels);
753996c5ddc4Srjs   struct marshal_cmd_ReadPixels *cmd;
754096c5ddc4Srjs   if (_mesa_glthread_has_no_pack_buffer(ctx)) {
754196c5ddc4Srjs      _mesa_glthread_finish_before(ctx, "ReadPixels");
754296c5ddc4Srjs      CALL_ReadPixels(ctx->CurrentServerDispatch, (x, y, width, height, format, type, pixels));
754396c5ddc4Srjs      return;
754496c5ddc4Srjs   }
754596c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_ReadPixels, cmd_size);
754696c5ddc4Srjs   cmd->x = x;
754796c5ddc4Srjs   cmd->y = y;
754896c5ddc4Srjs   cmd->width = width;
754996c5ddc4Srjs   cmd->height = height;
755096c5ddc4Srjs   cmd->format = format;
755196c5ddc4Srjs   cmd->type = type;
755296c5ddc4Srjs   cmd->pixels = pixels;
755396c5ddc4Srjs}
755496c5ddc4Srjs
755596c5ddc4Srjs
755696c5ddc4Srjs/* DrawPixels: marshalled asynchronously */
755796c5ddc4Srjsstruct marshal_cmd_DrawPixels
755896c5ddc4Srjs{
755996c5ddc4Srjs   struct marshal_cmd_base cmd_base;
756096c5ddc4Srjs   GLsizei width;
756196c5ddc4Srjs   GLsizei height;
756296c5ddc4Srjs   GLenum format;
756396c5ddc4Srjs   GLenum type;
756496c5ddc4Srjs   const GLvoid * pixels;
756596c5ddc4Srjs};
756696c5ddc4Srjsuint32_t
756796c5ddc4Srjs_mesa_unmarshal_DrawPixels(struct gl_context *ctx, const struct marshal_cmd_DrawPixels *cmd, const uint64_t *last)
756896c5ddc4Srjs{
756996c5ddc4Srjs   GLsizei width = cmd->width;
757096c5ddc4Srjs   GLsizei height = cmd->height;
757196c5ddc4Srjs   GLenum format = cmd->format;
757296c5ddc4Srjs   GLenum type = cmd->type;
757396c5ddc4Srjs   const GLvoid * pixels = cmd->pixels;
757496c5ddc4Srjs   CALL_DrawPixels(ctx->CurrentServerDispatch, (width, height, format, type, pixels));
757596c5ddc4Srjs   const unsigned cmd_size = (align(sizeof(struct marshal_cmd_DrawPixels), 8) / 8);
757696c5ddc4Srjs   assert (cmd_size == cmd->cmd_base.cmd_size);
757796c5ddc4Srjs   return cmd_size;
757896c5ddc4Srjs}
757996c5ddc4Srjsvoid GLAPIENTRY
758096c5ddc4Srjs_mesa_marshal_DrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * pixels)
758196c5ddc4Srjs{
758296c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
758396c5ddc4Srjs   int cmd_size = sizeof(struct marshal_cmd_DrawPixels);
758496c5ddc4Srjs   struct marshal_cmd_DrawPixels *cmd;
758596c5ddc4Srjs   if (_mesa_glthread_has_no_unpack_buffer(ctx)) {
758696c5ddc4Srjs      _mesa_glthread_finish_before(ctx, "DrawPixels");
758796c5ddc4Srjs      CALL_DrawPixels(ctx->CurrentServerDispatch, (width, height, format, type, pixels));
758896c5ddc4Srjs      return;
758996c5ddc4Srjs   }
759096c5ddc4Srjs   cmd = _mesa_glthread_allocate_command(ctx, DISPATCH_CMD_DrawPixels, cmd_size);
759196c5ddc4Srjs   cmd->width = width;
759296c5ddc4Srjs   cmd->height = height;
759396c5ddc4Srjs   cmd->format = format;
759496c5ddc4Srjs   cmd->type = type;
759596c5ddc4Srjs   cmd->pixels = pixels;
759696c5ddc4Srjs}
759796c5ddc4Srjs
759896c5ddc4Srjs
759996c5ddc4Srjs/* GetBooleanv: marshalled synchronously */
760096c5ddc4Srjsvoid GLAPIENTRY
760196c5ddc4Srjs_mesa_marshal_GetBooleanv(GLenum pname, GLboolean * params)
760296c5ddc4Srjs{
760396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
760496c5ddc4Srjs   _mesa_glthread_finish_before(ctx, "GetBooleanv");
760596c5ddc4Srjs   CALL_GetBooleanv(ctx->CurrentServerDispatch, (pname, params));
760696c5ddc4Srjs}
760796c5ddc4Srjs
760896c5ddc4Srjs
760996c5ddc4Srjs/* GetClipPlane: marshalled synchronously */
761096c5ddc4Srjsvoid GLAPIENTRY
761196c5ddc4Srjs_mesa_marshal_GetClipPlane(GLenum plane, GLdouble * equation)
761296c5ddc4Srjs{
761396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
761496c5ddc4Srjs   _mesa_glthread_finish_before(ctx, "GetClipPlane");
761596c5ddc4Srjs   CALL_GetClipPlane(ctx->CurrentServerDispatch, (plane, equation));
761696c5ddc4Srjs}
761796c5ddc4Srjs
761896c5ddc4Srjs
761996c5ddc4Srjs/* GetDoublev: marshalled synchronously */
762096c5ddc4Srjsvoid GLAPIENTRY
762196c5ddc4Srjs_mesa_marshal_GetDoublev(GLenum pname, GLdouble * params)
762296c5ddc4Srjs{
762396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
762496c5ddc4Srjs   _mesa_glthread_finish_before(ctx, "GetDoublev");
762596c5ddc4Srjs   CALL_GetDoublev(ctx->CurrentServerDispatch, (pname, params));
762696c5ddc4Srjs}
762796c5ddc4Srjs
762896c5ddc4Srjs
762996c5ddc4Srjs/* GetError: marshalled synchronously */
763096c5ddc4SrjsGLenum GLAPIENTRY
763196c5ddc4Srjs_mesa_marshal_GetError(void)
763296c5ddc4Srjs{
763396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
763496c5ddc4Srjs   _mesa_glthread_finish_before(ctx, "GetError");
763596c5ddc4Srjs   return CALL_GetError(ctx->CurrentServerDispatch, ());
763696c5ddc4Srjs}
763796c5ddc4Srjs
763896c5ddc4Srjs
763996c5ddc4Srjs/* GetFloatv: marshalled synchronously */
764096c5ddc4Srjsvoid GLAPIENTRY
764196c5ddc4Srjs_mesa_marshal_GetFloatv(GLenum pname, GLfloat * params)
764296c5ddc4Srjs{
764396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
764496c5ddc4Srjs   _mesa_glthread_finish_before(ctx, "GetFloatv");
764596c5ddc4Srjs   CALL_GetFloatv(ctx->CurrentServerDispatch, (pname, params));
764696c5ddc4Srjs}
764796c5ddc4Srjs
764896c5ddc4Srjs
764996c5ddc4Srjs/* GetLightfv: marshalled synchronously */
765096c5ddc4Srjsvoid GLAPIENTRY
765196c5ddc4Srjs_mesa_marshal_GetLightfv(GLenum light, GLenum pname, GLfloat * params)
765296c5ddc4Srjs{
765396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
765496c5ddc4Srjs   _mesa_glthread_finish_before(ctx, "GetLightfv");
765596c5ddc4Srjs   CALL_GetLightfv(ctx->CurrentServerDispatch, (light, pname, params));
765696c5ddc4Srjs}
765796c5ddc4Srjs
765896c5ddc4Srjs
765996c5ddc4Srjs/* GetLightiv: marshalled synchronously */
766096c5ddc4Srjsvoid GLAPIENTRY
766196c5ddc4Srjs_mesa_marshal_GetLightiv(GLenum light, GLenum pname, GLint * params)
766296c5ddc4Srjs{
766396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
766496c5ddc4Srjs   _mesa_glthread_finish_before(ctx, "GetLightiv");
766596c5ddc4Srjs   CALL_GetLightiv(ctx->CurrentServerDispatch, (light, pname, params));
766696c5ddc4Srjs}
766796c5ddc4Srjs
766896c5ddc4Srjs
766996c5ddc4Srjs/* GetMapdv: marshalled synchronously */
767096c5ddc4Srjsvoid GLAPIENTRY
767196c5ddc4Srjs_mesa_marshal_GetMapdv(GLenum target, GLenum query, GLdouble * v)
767296c5ddc4Srjs{
767396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
767496c5ddc4Srjs   _mesa_glthread_finish_before(ctx, "GetMapdv");
767596c5ddc4Srjs   CALL_GetMapdv(ctx->CurrentServerDispatch, (target, query, v));
767696c5ddc4Srjs}
767796c5ddc4Srjs
767896c5ddc4Srjs
767996c5ddc4Srjs/* GetMapfv: marshalled synchronously */
768096c5ddc4Srjsvoid GLAPIENTRY
768196c5ddc4Srjs_mesa_marshal_GetMapfv(GLenum target, GLenum query, GLfloat * v)
768296c5ddc4Srjs{
768396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
768496c5ddc4Srjs   _mesa_glthread_finish_before(ctx, "GetMapfv");
768596c5ddc4Srjs   CALL_GetMapfv(ctx->CurrentServerDispatch, (target, query, v));
768696c5ddc4Srjs}
768796c5ddc4Srjs
768896c5ddc4Srjs
768996c5ddc4Srjs/* GetMapiv: marshalled synchronously */
769096c5ddc4Srjsvoid GLAPIENTRY
769196c5ddc4Srjs_mesa_marshal_GetMapiv(GLenum target, GLenum query, GLint * v)
769296c5ddc4Srjs{
769396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
769496c5ddc4Srjs   _mesa_glthread_finish_before(ctx, "GetMapiv");
769596c5ddc4Srjs   CALL_GetMapiv(ctx->CurrentServerDispatch, (target, query, v));
769696c5ddc4Srjs}
769796c5ddc4Srjs
769896c5ddc4Srjs
769996c5ddc4Srjs/* GetMaterialfv: marshalled synchronously */
770096c5ddc4Srjsvoid GLAPIENTRY
770196c5ddc4Srjs_mesa_marshal_GetMaterialfv(GLenum face, GLenum pname, GLfloat * params)
770296c5ddc4Srjs{
770396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
770496c5ddc4Srjs   _mesa_glthread_finish_before(ctx, "GetMaterialfv");
770596c5ddc4Srjs   CALL_GetMaterialfv(ctx->CurrentServerDispatch, (face, pname, params));
770696c5ddc4Srjs}
770796c5ddc4Srjs
770896c5ddc4Srjs
770996c5ddc4Srjs/* GetMaterialiv: marshalled synchronously */
771096c5ddc4Srjsvoid GLAPIENTRY
771196c5ddc4Srjs_mesa_marshal_GetMaterialiv(GLenum face, GLenum pname, GLint * params)
771296c5ddc4Srjs{
771396c5ddc4Srjs   GET_CURRENT_CONTEXT(ctx);
771496c5ddc4Srjs   _mesa_glthread_finish_before(ctx, "GetMaterialiv");
771596c5ddc4Srjs   CALL_GetMaterialiv(ctx->CurrentServerDispatch, (face, pname, params));
771696c5ddc4Srjs}
771796c5ddc4Srjs
771896c5ddc4Srjs
7719