diff options
Diffstat (limited to 'mesalib/src/mesa/main')
74 files changed, 8225 insertions, 7463 deletions
diff --git a/mesalib/src/mesa/main/APIspec.xml b/mesalib/src/mesa/main/APIspec.xml index 0f82d0a38..5d5fc03be 100644 --- a/mesalib/src/mesa/main/APIspec.xml +++ b/mesalib/src/mesa/main/APIspec.xml @@ -3114,11 +3114,6 @@ <param name="target" type="GLenum"/> <param name="framebuffer" type="GLuint"/> </proto> - - <desc name="target"> - <value name="GL_FRAMEBUFFER_OES" category="OES_framebuffer_object"/> - <value name="GL_FRAMEBUFFER" category="GLES2.0"/> - </desc> </template> <template name="DeleteFramebuffers"> @@ -3143,11 +3138,6 @@ <param name="target" type="GLenum"/> <param name="renderbuffer" type="GLuint"/> </proto> - - <desc name="target"> - <value name="GL_RENDERBUFFER_OES" category="OES_framebuffer_object"/> - <value name="GL_RENDERBUFFER" category="GLES2.0"/> - </desc> </template> <template name="DeleteRenderbuffers"> @@ -3175,11 +3165,6 @@ <param name="height" type="GLsizei"/> </proto> - <desc name="target"> - <value name="GL_RENDERBUFFER_OES" category="OES_framebuffer_object"/> - <value name="GL_RENDERBUFFER" category="GLES2.0"/> - </desc> - <desc name="internalFormat"> <value name="GL_DEPTH_COMPONENT16_OES" category="OES_framebuffer_object"/> <value name="GL_RGBA4_OES" category="OES_framebuffer_object"/> @@ -3211,25 +3196,6 @@ <param name="renderbuffertarget" type="GLenum"/> <param name="renderbuffer" type="GLuint"/> </proto> - - <desc name="target"> - <value name="GL_FRAMEBUFFER_OES" category="OES_framebuffer_object"/> - <value name="GL_FRAMEBUFFER" category="GLES2.0"/> - </desc> - - <desc name="attachment"> - <value name="GL_COLOR_ATTACHMENT0_OES" category="OES_framebuffer_object"/> - <value name="GL_DEPTH_ATTACHMENT_OES" category="OES_framebuffer_object"/> - <value name="GL_STENCIL_ATTACHMENT_OES" category="OES_framebuffer_object"/> - <value name="GL_COLOR_ATTACHMENT0" category="GLES2.0"/> - <value name="GL_DEPTH_ATTACHMENT" category="GLES2.0"/> - <value name="GL_STENCIL_ATTACHMENT" category="GLES2.0"/> - </desc> - - <desc name="renderbuffertarget"> - <value name="GL_RENDERBUFFER_OES" category="OES_framebuffer_object"/> - <value name="GL_RENDERBUFFER" category="GLES2.0"/> - </desc> </template> <template name="FramebufferTexture2D"> @@ -3242,20 +3208,6 @@ <param name="level" type="GLint"/> </proto> - <desc name="target"> - <value name="GL_FRAMEBUFFER_OES" category="OES_framebuffer_object"/> - <value name="GL_FRAMEBUFFER" category="GLES2.0"/> - </desc> - - <desc name="attachment"> - <value name="GL_COLOR_ATTACHMENT0_OES" category="OES_framebuffer_object"/> - <value name="GL_DEPTH_ATTACHMENT_OES" category="OES_framebuffer_object"/> - <value name="GL_STENCIL_ATTACHMENT_OES" category="OES_framebuffer_object"/> - <value name="GL_COLOR_ATTACHMENT0" category="GLES2.0"/> - <value name="GL_DEPTH_ATTACHMENT" category="GLES2.0"/> - <value name="GL_STENCIL_ATTACHMENT" category="GLES2.0"/> - </desc> - <desc name="textarget" error="GL_INVALID_OPERATION"> <value name="GL_TEXTURE_2D"/> <value name="GL_TEXTURE_CUBE_MAP_POSITIVE_X" category="GLES2.0"/> @@ -3287,20 +3239,6 @@ <param name="zoffset" type="GLint"/> </proto> - <desc name="target"> - <value name="GL_FRAMEBUFFER_OES" category="OES_framebuffer_object"/> - <value name="GL_FRAMEBUFFER" category="GLES2.0"/> - </desc> - - <desc name="attachment"> - <value name="GL_COLOR_ATTACHMENT0_OES" category="OES_framebuffer_object"/> - <value name="GL_DEPTH_ATTACHMENT_OES" category="OES_framebuffer_object"/> - <value name="GL_STENCIL_ATTACHMENT_OES" category="OES_framebuffer_object"/> - <value name="GL_COLOR_ATTACHMENT0" category="GLES2.0"/> - <value name="GL_DEPTH_ATTACHMENT" category="GLES2.0"/> - <value name="GL_STENCIL_ATTACHMENT" category="GLES2.0"/> - </desc> - <desc name="textarget" error="GL_INVALID_OPERATION"> <value name="GL_TEXTURE_3D_OES" category="OES_texture_3D"/> </desc> @@ -3311,11 +3249,6 @@ <return type="GLenum"/> <param name="target" type="GLenum"/> </proto> - - <desc name="target"> - <value name="GL_FRAMEBUFFER_OES" category="OES_framebuffer_object"/> - <value name="GL_FRAMEBUFFER" category="GLES2.0"/> - </desc> </template> <template name="GetFramebufferAttachmentParameter" direction="get"> @@ -3327,11 +3260,6 @@ <vector name="params" type="GLtype *" size="dynamic"/> </proto> - <desc name="target"> - <value name="GL_FRAMEBUFFER_OES" category="OES_framebuffer_object"/> - <value name="GL_FRAMEBUFFER" category="GLES2.0"/> - </desc> - <desc name="pname"> <value name="GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES" category="OES_framebuffer_object"/> <value name="GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES" category="OES_framebuffer_object"/> @@ -3356,11 +3284,6 @@ <vector name="params" type="GLtype *" size="dynamic"/> </proto> - <desc name="target"> - <value name="GL_RENDERBUFFER_OES" category="OES_framebuffer_object"/> - <value name="GL_RENDERBUFFER" category="GLES2.0"/> - </desc> - <desc name="pname" category="OES_framebuffer_object"> <value name="GL_RENDERBUFFER_WIDTH_OES"/> <value name="GL_RENDERBUFFER_HEIGHT_OES"/> @@ -3587,11 +3510,14 @@ <param name="target" type="GLenum"/> <param name="image" type="GLeglImageOES"/> </proto> +</template> - <desc name="target"> - <value name="GL_RENDERBUFFER_OES" category="OES_framebuffer_object"/> - <value name="GL_RENDERBUFFER" category="GLES2.0"/> - </desc> +<template name="DrawBuffers"> + <proto> + <return type="void"/> + <param name="n" type="GLsizei"/> + <param name="bufs" type="const GLenum *"/> + </proto> </template> <api name="mesa" implementation="true"> @@ -3868,6 +3794,8 @@ <!-- OES_EGL_image --> <function name="EGLImageTargetTexture2DOES" template="EGLImageTargetTexture2D"/> <function name="EGLImageTargetRenderbufferStorageOES" template="EGLImageTargetRenderbufferStorage"/> + + <function name="DrawBuffersARB" template="DrawBuffers"/> </api> <api name="GLES1.1"> @@ -4199,6 +4127,9 @@ <category name="EXT_multi_draw_arrays"/> <category name="OES_EGL_image"/> + <category name="NV_draw_buffers"/> + <function name="DrawBuffersNV" template="DrawBuffers"/> + <function name="CullFace" template="CullFace"/> <function name="FrontFace" template="FrontFace"/> diff --git a/mesalib/src/mesa/main/accum.c b/mesalib/src/mesa/main/accum.c index 6a83930a1..d7ed3a849 100644 --- a/mesalib/src/mesa/main/accum.c +++ b/mesalib/src/mesa/main/accum.c @@ -97,6 +97,9 @@ _mesa_Accum( GLenum op, GLfloat value ) return; } + if (ctx->TransformFeedback.RasterDiscard) + return; + if (ctx->RenderMode == GL_RENDER) { ctx->Driver.Accum(ctx, op, value); } diff --git a/mesalib/src/mesa/main/accum.h b/mesalib/src/mesa/main/accum.h index bcd91bd53..f16378cc1 100644 --- a/mesalib/src/mesa/main/accum.h +++ b/mesalib/src/mesa/main/accum.h @@ -1,75 +1,75 @@ -/**
- * \file accum.h
- * Accumulation buffer operations.
- *
- * \if subset
- * (No-op)
- *
- * \endif
- */
-
-/*
- * Mesa 3-D graphics library
- * Version: 3.5
- *
- * Copyright (C) 1999-2001 Brian Paul All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-
-#ifndef ACCUM_H
-#define ACCUM_H
-
-#include "main/glheader.h"
-#include "main/mfeatures.h"
-
-struct _glapi_table;
-struct gl_context;
-
-#if FEATURE_accum
-
-extern void GLAPIENTRY
-_mesa_ClearAccum( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha );
-
-extern void
-_mesa_init_accum_dispatch(struct _glapi_table *disp);
-
-#else /* FEATURE_accum */
-
-#include "main/compiler.h"
-
-static INLINE void
-_mesa_ClearAccum( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha )
-{
- /* this is used in _mesa_PopAttrib */
- ASSERT_NO_FEATURE();
-}
-
-static INLINE void
-_mesa_init_accum_dispatch(struct _glapi_table *disp)
-{
-}
-
-#endif /* FEATURE_accum */
-
-extern void
-_mesa_init_accum( struct gl_context *ctx );
-
-#endif /* ACCUM_H */
+/** + * \file accum.h + * Accumulation buffer operations. + * + * \if subset + * (No-op) + * + * \endif + */ + +/* + * Mesa 3-D graphics library + * Version: 3.5 + * + * Copyright (C) 1999-2001 Brian Paul All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + + + +#ifndef ACCUM_H +#define ACCUM_H + +#include "main/glheader.h" +#include "main/mfeatures.h" + +struct _glapi_table; +struct gl_context; + +#if FEATURE_accum + +extern void GLAPIENTRY +_mesa_ClearAccum( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha ); + +extern void +_mesa_init_accum_dispatch(struct _glapi_table *disp); + +#else /* FEATURE_accum */ + +#include "main/compiler.h" + +static inline void +_mesa_ClearAccum( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha ) +{ + /* this is used in _mesa_PopAttrib */ + ASSERT_NO_FEATURE(); +} + +static inline void +_mesa_init_accum_dispatch(struct _glapi_table *disp) +{ +} + +#endif /* FEATURE_accum */ + +extern void +_mesa_init_accum( struct gl_context *ctx ); + +#endif /* ACCUM_H */ diff --git a/mesalib/src/mesa/main/api_arrayelt.h b/mesalib/src/mesa/main/api_arrayelt.h index 16e938fd0..03810c69b 100644 --- a/mesalib/src/mesa/main/api_arrayelt.h +++ b/mesalib/src/mesa/main/api_arrayelt.h @@ -1,84 +1,84 @@ -
-/*
- * Mesa 3-D graphics library
- * Version: 3.5
- *
- * Copyright (C) 1999-2001 Brian Paul All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-#ifndef API_ARRAYELT_H
-#define API_ARRAYELT_H
-
-
-#include "main/mfeatures.h"
-#include "main/mtypes.h"
-
-#if FEATURE_arrayelt
-
-#define _MESA_INIT_ARRAYELT_VTXFMT(vfmt, impl) \
- do { \
- (vfmt)->ArrayElement = impl ## ArrayElement; \
- } while (0)
-
-extern GLboolean _ae_create_context( struct gl_context *ctx );
-extern void _ae_destroy_context( struct gl_context *ctx );
-extern void _ae_invalidate_state( struct gl_context *ctx, GLuint new_state );
-extern void GLAPIENTRY _ae_ArrayElement( GLint elt );
-
-/* May optionally be called before a batch of element calls:
- */
-extern void _ae_map_vbos( struct gl_context *ctx );
-extern void _ae_unmap_vbos( struct gl_context *ctx );
-
-extern void
-_mesa_install_arrayelt_vtxfmt(struct _glapi_table *disp,
- const GLvertexformat *vfmt);
-
-#else /* FEATURE_arrayelt */
-
-#define _MESA_INIT_ARRAYELT_VTXFMT(vfmt, impl) do { } while (0)
-
-static INLINE GLboolean
-_ae_create_context( struct gl_context *ctx )
-{
- return GL_TRUE;
-}
-
-static INLINE void
-_ae_destroy_context( struct gl_context *ctx )
-{
-}
-
-static INLINE void
-_ae_invalidate_state( struct gl_context *ctx, GLuint new_state )
-{
-}
-
-static INLINE void
-_mesa_install_arrayelt_vtxfmt(struct _glapi_table *disp,
- const GLvertexformat *vfmt)
-{
-}
-
-#endif /* FEATURE_arrayelt */
-
-
-#endif /* API_ARRAYELT_H */
+ +/* + * Mesa 3-D graphics library + * Version: 3.5 + * + * Copyright (C) 1999-2001 Brian Paul All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + + +#ifndef API_ARRAYELT_H +#define API_ARRAYELT_H + + +#include "main/mfeatures.h" +#include "main/mtypes.h" + +#if FEATURE_arrayelt + +#define _MESA_INIT_ARRAYELT_VTXFMT(vfmt, impl) \ + do { \ + (vfmt)->ArrayElement = impl ## ArrayElement; \ + } while (0) + +extern GLboolean _ae_create_context( struct gl_context *ctx ); +extern void _ae_destroy_context( struct gl_context *ctx ); +extern void _ae_invalidate_state( struct gl_context *ctx, GLuint new_state ); +extern void GLAPIENTRY _ae_ArrayElement( GLint elt ); + +/* May optionally be called before a batch of element calls: + */ +extern void _ae_map_vbos( struct gl_context *ctx ); +extern void _ae_unmap_vbos( struct gl_context *ctx ); + +extern void +_mesa_install_arrayelt_vtxfmt(struct _glapi_table *disp, + const GLvertexformat *vfmt); + +#else /* FEATURE_arrayelt */ + +#define _MESA_INIT_ARRAYELT_VTXFMT(vfmt, impl) do { } while (0) + +static inline GLboolean +_ae_create_context( struct gl_context *ctx ) +{ + return GL_TRUE; +} + +static inline void +_ae_destroy_context( struct gl_context *ctx ) +{ +} + +static inline void +_ae_invalidate_state( struct gl_context *ctx, GLuint new_state ) +{ +} + +static inline void +_mesa_install_arrayelt_vtxfmt(struct _glapi_table *disp, + const GLvertexformat *vfmt) +{ +} + +#endif /* FEATURE_arrayelt */ + + +#endif /* API_ARRAYELT_H */ diff --git a/mesalib/src/mesa/main/api_loopback.h b/mesalib/src/mesa/main/api_loopback.h index 921637641..f53b90280 100644 --- a/mesalib/src/mesa/main/api_loopback.h +++ b/mesalib/src/mesa/main/api_loopback.h @@ -1,48 +1,48 @@ -/*
- * Mesa 3-D graphics library
- * Version: 3.5
- *
- * Copyright (C) 1999-2001 Brian Paul All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-
-#ifndef API_LOOPBACK_H
-#define API_LOOPBACK_H
-
-#include "main/compiler.h"
-#include "main/mfeatures.h"
-
-struct _glapi_table;
-
-#if FEATURE_beginend
-
-extern void _mesa_loopback_init_api_table( struct _glapi_table *dest );
-
-#else /* FEATURE_beginend */
-
-static INLINE void
-_mesa_loopback_init_api_table( struct _glapi_table *dest )
-{
-}
-
-#endif /* FEATURE_beginend */
-
-#endif /* API_LOOPBACK_H */
+/* + * Mesa 3-D graphics library + * Version: 3.5 + * + * Copyright (C) 1999-2001 Brian Paul All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + + + +#ifndef API_LOOPBACK_H +#define API_LOOPBACK_H + +#include "main/compiler.h" +#include "main/mfeatures.h" + +struct _glapi_table; + +#if FEATURE_beginend + +extern void _mesa_loopback_init_api_table( struct _glapi_table *dest ); + +#else /* FEATURE_beginend */ + +static inline void +_mesa_loopback_init_api_table( struct _glapi_table *dest ) +{ +} + +#endif /* FEATURE_beginend */ + +#endif /* API_LOOPBACK_H */ diff --git a/mesalib/src/mesa/main/arrayobj.c b/mesalib/src/mesa/main/arrayobj.c index 8d53186c8..78f56ab00 100644 --- a/mesalib/src/mesa/main/arrayobj.c +++ b/mesalib/src/mesa/main/arrayobj.c @@ -1,552 +1,552 @@ -/*
- * Mesa 3-D graphics library
- * Version: 7.6
- *
- * Copyright (C) 1999-2008 Brian Paul All Rights Reserved.
- * (C) Copyright IBM Corporation 2006
- * Copyright (C) 2009 VMware, Inc. All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL OR IBM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
- * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-
-/**
- * \file arrayobj.c
- * Functions for the GL_APPLE_vertex_array_object extension.
- *
- * \todo
- * The code in this file borrows a lot from bufferobj.c. There's a certain
- * amount of cruft left over from that origin that may be unnecessary.
- *
- * \author Ian Romanick <idr@us.ibm.com>
- * \author Brian Paul
- */
-
-
-#include "glheader.h"
-#include "hash.h"
-#include "image.h"
-#include "imports.h"
-#include "context.h"
-#include "mfeatures.h"
-#if FEATURE_ARB_vertex_buffer_object
-#include "bufferobj.h"
-#endif
-#include "arrayobj.h"
-#include "macros.h"
-#include "mtypes.h"
-#include "varray.h"
-#include "main/dispatch.h"
-
-
-/**
- * Look up the array object for the given ID.
- *
- * \returns
- * Either a pointer to the array object with the specified ID or \c NULL for
- * a non-existent ID. The spec defines ID 0 as being technically
- * non-existent.
- */
-
-static INLINE struct gl_array_object *
-lookup_arrayobj(struct gl_context *ctx, GLuint id)
-{
- if (id == 0)
- return NULL;
- else
- return (struct gl_array_object *)
- _mesa_HashLookup(ctx->Array.Objects, id);
-}
-
-
-/**
- * For all the vertex arrays in the array object, unbind any pointers
- * to any buffer objects (VBOs).
- * This is done just prior to array object destruction.
- */
-static void
-unbind_array_object_vbos(struct gl_context *ctx, struct gl_array_object *obj)
-{
- GLuint i;
-
- _mesa_reference_buffer_object(ctx, &obj->Vertex.BufferObj, NULL);
- _mesa_reference_buffer_object(ctx, &obj->Weight.BufferObj, NULL);
- _mesa_reference_buffer_object(ctx, &obj->Normal.BufferObj, NULL);
- _mesa_reference_buffer_object(ctx, &obj->Color.BufferObj, NULL);
- _mesa_reference_buffer_object(ctx, &obj->SecondaryColor.BufferObj, NULL);
- _mesa_reference_buffer_object(ctx, &obj->FogCoord.BufferObj, NULL);
- _mesa_reference_buffer_object(ctx, &obj->Index.BufferObj, NULL);
- _mesa_reference_buffer_object(ctx, &obj->EdgeFlag.BufferObj, NULL);
-
- for (i = 0; i < Elements(obj->TexCoord); i++)
- _mesa_reference_buffer_object(ctx, &obj->TexCoord[i].BufferObj, NULL);
-
- for (i = 0; i < Elements(obj->VertexAttrib); i++)
- _mesa_reference_buffer_object(ctx, &obj->VertexAttrib[i].BufferObj,NULL);
-
-#if FEATURE_point_size_array
- _mesa_reference_buffer_object(ctx, &obj->PointSize.BufferObj, NULL);
-#endif
-}
-
-
-/**
- * Allocate and initialize a new vertex array object.
- *
- * This function is intended to be called via
- * \c dd_function_table::NewArrayObject.
- */
-struct gl_array_object *
-_mesa_new_array_object( struct gl_context *ctx, GLuint name )
-{
- struct gl_array_object *obj = CALLOC_STRUCT(gl_array_object);
- if (obj)
- _mesa_initialize_array_object(ctx, obj, name);
- return obj;
-}
-
-
-/**
- * Delete an array object.
- *
- * This function is intended to be called via
- * \c dd_function_table::DeleteArrayObject.
- */
-void
-_mesa_delete_array_object( struct gl_context *ctx, struct gl_array_object *obj )
-{
- (void) ctx;
- unbind_array_object_vbos(ctx, obj);
- _glthread_DESTROY_MUTEX(obj->Mutex);
- free(obj);
-}
-
-
-/**
- * Set ptr to arrayObj w/ reference counting.
- */
-void
-_mesa_reference_array_object(struct gl_context *ctx,
- struct gl_array_object **ptr,
- struct gl_array_object *arrayObj)
-{
- if (*ptr == arrayObj)
- return;
-
- if (*ptr) {
- /* Unreference the old array object */
- GLboolean deleteFlag = GL_FALSE;
- struct gl_array_object *oldObj = *ptr;
-
- _glthread_LOCK_MUTEX(oldObj->Mutex);
- ASSERT(oldObj->RefCount > 0);
- oldObj->RefCount--;
-#if 0
- printf("ArrayObj %p %d DECR to %d\n",
- (void *) oldObj, oldObj->Name, oldObj->RefCount);
-#endif
- deleteFlag = (oldObj->RefCount == 0);
- _glthread_UNLOCK_MUTEX(oldObj->Mutex);
-
- if (deleteFlag) {
- ASSERT(ctx->Driver.DeleteArrayObject);
- ctx->Driver.DeleteArrayObject(ctx, oldObj);
- }
-
- *ptr = NULL;
- }
- ASSERT(!*ptr);
-
- if (arrayObj) {
- /* reference new array object */
- _glthread_LOCK_MUTEX(arrayObj->Mutex);
- if (arrayObj->RefCount == 0) {
- /* this array's being deleted (look just above) */
- /* Not sure this can every really happen. Warn if it does. */
- _mesa_problem(NULL, "referencing deleted array object");
- *ptr = NULL;
- }
- else {
- arrayObj->RefCount++;
-#if 0
- printf("ArrayObj %p %d INCR to %d\n",
- (void *) arrayObj, arrayObj->Name, arrayObj->RefCount);
-#endif
- *ptr = arrayObj;
- }
- _glthread_UNLOCK_MUTEX(arrayObj->Mutex);
- }
-}
-
-
-
-static void
-init_array(struct gl_context *ctx,
- struct gl_client_array *array, GLint size, GLint type)
-{
- array->Size = size;
- array->Type = type;
- array->Format = GL_RGBA; /* only significant for GL_EXT_vertex_array_bgra */
- array->Stride = 0;
- array->StrideB = 0;
- array->Ptr = NULL;
- array->Enabled = GL_FALSE;
- array->Normalized = GL_FALSE;
- array->_ElementSize = size * _mesa_sizeof_type(type);
-#if FEATURE_ARB_vertex_buffer_object
- /* Vertex array buffers */
- _mesa_reference_buffer_object(ctx, &array->BufferObj,
- ctx->Shared->NullBufferObj);
-#endif
-}
-
-
-/**
- * Initialize a gl_array_object's arrays.
- */
-void
-_mesa_initialize_array_object( struct gl_context *ctx,
- struct gl_array_object *obj,
- GLuint name )
-{
- GLuint i;
-
- obj->Name = name;
-
- _glthread_INIT_MUTEX(obj->Mutex);
- obj->RefCount = 1;
-
- /* Init the individual arrays */
- init_array(ctx, &obj->Vertex, 4, GL_FLOAT);
- init_array(ctx, &obj->Weight, 1, GL_FLOAT);
- init_array(ctx, &obj->Normal, 3, GL_FLOAT);
- init_array(ctx, &obj->Color, 4, GL_FLOAT);
- init_array(ctx, &obj->SecondaryColor, 3, GL_FLOAT);
- init_array(ctx, &obj->FogCoord, 1, GL_FLOAT);
- init_array(ctx, &obj->Index, 1, GL_FLOAT);
- for (i = 0; i < Elements(obj->TexCoord); i++) {
- init_array(ctx, &obj->TexCoord[i], 4, GL_FLOAT);
- }
- init_array(ctx, &obj->EdgeFlag, 1, GL_BOOL);
- for (i = 0; i < Elements(obj->VertexAttrib); i++) {
- init_array(ctx, &obj->VertexAttrib[i], 4, GL_FLOAT);
- }
-
-#if FEATURE_point_size_array
- init_array(ctx, &obj->PointSize, 1, GL_FLOAT);
-#endif
-}
-
-
-/**
- * Add the given array object to the array object pool.
- */
-static void
-save_array_object( struct gl_context *ctx, struct gl_array_object *obj )
-{
- if (obj->Name > 0) {
- /* insert into hash table */
- _mesa_HashInsert(ctx->Array.Objects, obj->Name, obj);
- }
-}
-
-
-/**
- * Remove the given array object from the array object pool.
- * Do not deallocate the array object though.
- */
-static void
-remove_array_object( struct gl_context *ctx, struct gl_array_object *obj )
-{
- if (obj->Name > 0) {
- /* remove from hash table */
- _mesa_HashRemove(ctx->Array.Objects, obj->Name);
- }
-}
-
-
-
-/**
- * Helper for update_arrays().
- * \return min(current min, array->_MaxElement).
- */
-static GLuint
-update_min(GLuint min, struct gl_client_array *array)
-{
- if (array->Enabled) {
- _mesa_update_array_max_element(array);
- return MIN2(min, array->_MaxElement);
- }
- else
- return min;
-}
-
-
-/**
- * Examine vertex arrays to update the gl_array_object::_MaxElement field.
- */
-void
-_mesa_update_array_object_max_element(struct gl_context *ctx,
- struct gl_array_object *arrayObj)
-{
- GLuint i, min = ~0;
-
- min = update_min(min, &arrayObj->Vertex);
- min = update_min(min, &arrayObj->Weight);
- min = update_min(min, &arrayObj->Normal);
- min = update_min(min, &arrayObj->Color);
- min = update_min(min, &arrayObj->SecondaryColor);
- min = update_min(min, &arrayObj->FogCoord);
- min = update_min(min, &arrayObj->Index);
- min = update_min(min, &arrayObj->EdgeFlag);
-#if FEATURE_point_size_array
- min = update_min(min, &arrayObj->PointSize);
-#endif
- for (i = 0; i < ctx->Const.MaxTextureCoordUnits; i++)
- min = update_min(min, &arrayObj->TexCoord[i]);
- for (i = 0; i < Elements(arrayObj->VertexAttrib); i++)
- min = update_min(min, &arrayObj->VertexAttrib[i]);
-
- /* _MaxElement is one past the last legal array element */
- arrayObj->_MaxElement = min;
-}
-
-
-/**********************************************************************/
-/* API Functions */
-/**********************************************************************/
-
-
-/**
- * Helper for _mesa_BindVertexArray() and _mesa_BindVertexArrayAPPLE().
- * \param genRequired specifies behavour when id was not generated with
- * glGenVertexArrays().
- */
-static void
-bind_vertex_array(struct gl_context *ctx, GLuint id, GLboolean genRequired)
-{
- struct gl_array_object * const oldObj = ctx->Array.ArrayObj;
- struct gl_array_object *newObj = NULL;
- ASSERT_OUTSIDE_BEGIN_END(ctx);
-
- ASSERT(oldObj != NULL);
-
- if ( oldObj->Name == id )
- return; /* rebinding the same array object- no change */
-
- /*
- * Get pointer to new array object (newObj)
- */
- if (id == 0) {
- /* The spec says there is no array object named 0, but we use
- * one internally because it simplifies things.
- */
- newObj = ctx->Array.DefaultArrayObj;
- }
- else {
- /* non-default array object */
- newObj = lookup_arrayobj(ctx, id);
- if (!newObj) {
- if (genRequired) {
- _mesa_error(ctx, GL_INVALID_OPERATION, "glBindVertexArray(id)");
- return;
- }
-
- /* For APPLE version, generate a new array object now */
- newObj = (*ctx->Driver.NewArrayObject)(ctx, id);
- if (!newObj) {
- _mesa_error(ctx, GL_OUT_OF_MEMORY, "glBindVertexArrayAPPLE");
- return;
- }
- save_array_object(ctx, newObj);
- }
- }
-
- ctx->NewState |= _NEW_ARRAY;
- ctx->Array.NewState |= _NEW_ARRAY_ALL;
- _mesa_reference_array_object(ctx, &ctx->Array.ArrayObj, newObj);
-
- /* Pass BindVertexArray call to device driver */
- if (ctx->Driver.BindArrayObject && newObj)
- ctx->Driver.BindArrayObject(ctx, newObj);
-}
-
-
-/**
- * ARB version of glBindVertexArray()
- * This function behaves differently from glBindVertexArrayAPPLE() in
- * that this function requires all ids to have been previously generated
- * by glGenVertexArrays[APPLE]().
- */
-void GLAPIENTRY
-_mesa_BindVertexArray( GLuint id )
-{
- GET_CURRENT_CONTEXT(ctx);
- bind_vertex_array(ctx, id, GL_TRUE);
-}
-
-
-/**
- * Bind a new array.
- *
- * \todo
- * The binding could be done more efficiently by comparing the non-NULL
- * pointers in the old and new objects. The only arrays that are "dirty" are
- * the ones that are non-NULL in either object.
- */
-void GLAPIENTRY
-_mesa_BindVertexArrayAPPLE( GLuint id )
-{
- GET_CURRENT_CONTEXT(ctx);
- bind_vertex_array(ctx, id, GL_FALSE);
-}
-
-
-/**
- * Delete a set of array objects.
- *
- * \param n Number of array objects to delete.
- * \param ids Array of \c n array object IDs.
- */
-void GLAPIENTRY
-_mesa_DeleteVertexArraysAPPLE(GLsizei n, const GLuint *ids)
-{
- GET_CURRENT_CONTEXT(ctx);
- GLsizei i;
- ASSERT_OUTSIDE_BEGIN_END(ctx);
-
- if (n < 0) {
- _mesa_error(ctx, GL_INVALID_VALUE, "glDeleteVertexArrayAPPLE(n)");
- return;
- }
-
- for (i = 0; i < n; i++) {
- struct gl_array_object *obj = lookup_arrayobj(ctx, ids[i]);
-
- if ( obj != NULL ) {
- ASSERT( obj->Name == ids[i] );
-
- /* If the array object is currently bound, the spec says "the binding
- * for that object reverts to zero and the default vertex array
- * becomes current."
- */
- if ( obj == ctx->Array.ArrayObj ) {
- CALL_BindVertexArrayAPPLE( ctx->Exec, (0) );
- }
-
- /* The ID is immediately freed for re-use */
- remove_array_object(ctx, obj);
-
- /* Unreference the array object.
- * If refcount hits zero, the object will be deleted.
- */
- _mesa_reference_array_object(ctx, &obj, NULL);
- }
- }
-}
-
-
-/**
- * Generate a set of unique array object IDs and store them in \c arrays.
- * Helper for _mesa_GenVertexArrays[APPLE]() functions below.
- * \param n Number of IDs to generate.
- * \param arrays Array of \c n locations to store the IDs.
- * \param vboOnly Will arrays have to reside in VBOs?
- */
-static void
-gen_vertex_arrays(struct gl_context *ctx, GLsizei n, GLuint *arrays,
- GLboolean vboOnly)
-{
- GLuint first;
- GLint i;
- ASSERT_OUTSIDE_BEGIN_END(ctx);
-
- if (n < 0) {
- _mesa_error(ctx, GL_INVALID_VALUE, "glGenVertexArraysAPPLE");
- return;
- }
-
- if (!arrays) {
- return;
- }
-
- first = _mesa_HashFindFreeKeyBlock(ctx->Array.Objects, n);
-
- /* Allocate new, empty array objects and return identifiers */
- for (i = 0; i < n; i++) {
- struct gl_array_object *obj;
- GLuint name = first + i;
-
- obj = (*ctx->Driver.NewArrayObject)( ctx, name );
- if (!obj) {
- _mesa_error(ctx, GL_OUT_OF_MEMORY, "glGenVertexArraysAPPLE");
- return;
- }
- obj->VBOonly = vboOnly;
- save_array_object(ctx, obj);
- arrays[i] = first + i;
- }
-}
-
-
-/**
- * ARB version of glGenVertexArrays()
- * All arrays will be required to live in VBOs.
- */
-void GLAPIENTRY
-_mesa_GenVertexArrays(GLsizei n, GLuint *arrays)
-{
- GET_CURRENT_CONTEXT(ctx);
- gen_vertex_arrays(ctx, n, arrays, GL_TRUE);
-}
-
-
-/**
- * APPLE version of glGenVertexArraysAPPLE()
- * Arrays may live in VBOs or ordinary memory.
- */
-void GLAPIENTRY
-_mesa_GenVertexArraysAPPLE(GLsizei n, GLuint *arrays)
-{
- GET_CURRENT_CONTEXT(ctx);
- gen_vertex_arrays(ctx, n, arrays, GL_FALSE);
-}
-
-
-/**
- * Determine if ID is the name of an array object.
- *
- * \param id ID of the potential array object.
- * \return \c GL_TRUE if \c id is the name of a array object,
- * \c GL_FALSE otherwise.
- */
-GLboolean GLAPIENTRY
-_mesa_IsVertexArrayAPPLE( GLuint id )
-{
- struct gl_array_object * obj;
- GET_CURRENT_CONTEXT(ctx);
- ASSERT_OUTSIDE_BEGIN_END_WITH_RETVAL(ctx, GL_FALSE);
-
- if (id == 0)
- return GL_FALSE;
-
- obj = lookup_arrayobj(ctx, id);
-
- return (obj != NULL) ? GL_TRUE : GL_FALSE;
-}
+/* + * Mesa 3-D graphics library + * Version: 7.6 + * + * Copyright (C) 1999-2008 Brian Paul All Rights Reserved. + * (C) Copyright IBM Corporation 2006 + * Copyright (C) 2009 VMware, Inc. All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * BRIAN PAUL OR IBM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF + * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + + +/** + * \file arrayobj.c + * Functions for the GL_APPLE_vertex_array_object extension. + * + * \todo + * The code in this file borrows a lot from bufferobj.c. There's a certain + * amount of cruft left over from that origin that may be unnecessary. + * + * \author Ian Romanick <idr@us.ibm.com> + * \author Brian Paul + */ + + +#include "glheader.h" +#include "hash.h" +#include "image.h" +#include "imports.h" +#include "context.h" +#include "mfeatures.h" +#if FEATURE_ARB_vertex_buffer_object +#include "bufferobj.h" +#endif +#include "arrayobj.h" +#include "macros.h" +#include "mtypes.h" +#include "varray.h" +#include "main/dispatch.h" + + +/** + * Look up the array object for the given ID. + * + * \returns + * Either a pointer to the array object with the specified ID or \c NULL for + * a non-existent ID. The spec defines ID 0 as being technically + * non-existent. + */ + +static inline struct gl_array_object * +lookup_arrayobj(struct gl_context *ctx, GLuint id) +{ + if (id == 0) + return NULL; + else + return (struct gl_array_object *) + _mesa_HashLookup(ctx->Array.Objects, id); +} + + +/** + * For all the vertex arrays in the array object, unbind any pointers + * to any buffer objects (VBOs). + * This is done just prior to array object destruction. + */ +static void +unbind_array_object_vbos(struct gl_context *ctx, struct gl_array_object *obj) +{ + GLuint i; + + _mesa_reference_buffer_object(ctx, &obj->Vertex.BufferObj, NULL); + _mesa_reference_buffer_object(ctx, &obj->Weight.BufferObj, NULL); + _mesa_reference_buffer_object(ctx, &obj->Normal.BufferObj, NULL); + _mesa_reference_buffer_object(ctx, &obj->Color.BufferObj, NULL); + _mesa_reference_buffer_object(ctx, &obj->SecondaryColor.BufferObj, NULL); + _mesa_reference_buffer_object(ctx, &obj->FogCoord.BufferObj, NULL); + _mesa_reference_buffer_object(ctx, &obj->Index.BufferObj, NULL); + _mesa_reference_buffer_object(ctx, &obj->EdgeFlag.BufferObj, NULL); + + for (i = 0; i < Elements(obj->TexCoord); i++) + _mesa_reference_buffer_object(ctx, &obj->TexCoord[i].BufferObj, NULL); + + for (i = 0; i < Elements(obj->VertexAttrib); i++) + _mesa_reference_buffer_object(ctx, &obj->VertexAttrib[i].BufferObj,NULL); + +#if FEATURE_point_size_array + _mesa_reference_buffer_object(ctx, &obj->PointSize.BufferObj, NULL); +#endif +} + + +/** + * Allocate and initialize a new vertex array object. + * + * This function is intended to be called via + * \c dd_function_table::NewArrayObject. + */ +struct gl_array_object * +_mesa_new_array_object( struct gl_context *ctx, GLuint name ) +{ + struct gl_array_object *obj = CALLOC_STRUCT(gl_array_object); + if (obj) + _mesa_initialize_array_object(ctx, obj, name); + return obj; +} + + +/** + * Delete an array object. + * + * This function is intended to be called via + * \c dd_function_table::DeleteArrayObject. + */ +void +_mesa_delete_array_object( struct gl_context *ctx, struct gl_array_object *obj ) +{ + (void) ctx; + unbind_array_object_vbos(ctx, obj); + _glthread_DESTROY_MUTEX(obj->Mutex); + free(obj); +} + + +/** + * Set ptr to arrayObj w/ reference counting. + */ +void +_mesa_reference_array_object(struct gl_context *ctx, + struct gl_array_object **ptr, + struct gl_array_object *arrayObj) +{ + if (*ptr == arrayObj) + return; + + if (*ptr) { + /* Unreference the old array object */ + GLboolean deleteFlag = GL_FALSE; + struct gl_array_object *oldObj = *ptr; + + _glthread_LOCK_MUTEX(oldObj->Mutex); + ASSERT(oldObj->RefCount > 0); + oldObj->RefCount--; +#if 0 + printf("ArrayObj %p %d DECR to %d\n", + (void *) oldObj, oldObj->Name, oldObj->RefCount); +#endif + deleteFlag = (oldObj->RefCount == 0); + _glthread_UNLOCK_MUTEX(oldObj->Mutex); + + if (deleteFlag) { + ASSERT(ctx->Driver.DeleteArrayObject); + ctx->Driver.DeleteArrayObject(ctx, oldObj); + } + + *ptr = NULL; + } + ASSERT(!*ptr); + + if (arrayObj) { + /* reference new array object */ + _glthread_LOCK_MUTEX(arrayObj->Mutex); + if (arrayObj->RefCount == 0) { + /* this array's being deleted (look just above) */ + /* Not sure this can every really happen. Warn if it does. */ + _mesa_problem(NULL, "referencing deleted array object"); + *ptr = NULL; + } + else { + arrayObj->RefCount++; +#if 0 + printf("ArrayObj %p %d INCR to %d\n", + (void *) arrayObj, arrayObj->Name, arrayObj->RefCount); +#endif + *ptr = arrayObj; + } + _glthread_UNLOCK_MUTEX(arrayObj->Mutex); + } +} + + + +static void +init_array(struct gl_context *ctx, + struct gl_client_array *array, GLint size, GLint type) +{ + array->Size = size; + array->Type = type; + array->Format = GL_RGBA; /* only significant for GL_EXT_vertex_array_bgra */ + array->Stride = 0; + array->StrideB = 0; + array->Ptr = NULL; + array->Enabled = GL_FALSE; + array->Normalized = GL_FALSE; + array->_ElementSize = size * _mesa_sizeof_type(type); +#if FEATURE_ARB_vertex_buffer_object + /* Vertex array buffers */ + _mesa_reference_buffer_object(ctx, &array->BufferObj, + ctx->Shared->NullBufferObj); +#endif +} + + +/** + * Initialize a gl_array_object's arrays. + */ +void +_mesa_initialize_array_object( struct gl_context *ctx, + struct gl_array_object *obj, + GLuint name ) +{ + GLuint i; + + obj->Name = name; + + _glthread_INIT_MUTEX(obj->Mutex); + obj->RefCount = 1; + + /* Init the individual arrays */ + init_array(ctx, &obj->Vertex, 4, GL_FLOAT); + init_array(ctx, &obj->Weight, 1, GL_FLOAT); + init_array(ctx, &obj->Normal, 3, GL_FLOAT); + init_array(ctx, &obj->Color, 4, GL_FLOAT); + init_array(ctx, &obj->SecondaryColor, 3, GL_FLOAT); + init_array(ctx, &obj->FogCoord, 1, GL_FLOAT); + init_array(ctx, &obj->Index, 1, GL_FLOAT); + for (i = 0; i < Elements(obj->TexCoord); i++) { + init_array(ctx, &obj->TexCoord[i], 4, GL_FLOAT); + } + init_array(ctx, &obj->EdgeFlag, 1, GL_BOOL); + for (i = 0; i < Elements(obj->VertexAttrib); i++) { + init_array(ctx, &obj->VertexAttrib[i], 4, GL_FLOAT); + } + +#if FEATURE_point_size_array + init_array(ctx, &obj->PointSize, 1, GL_FLOAT); +#endif +} + + +/** + * Add the given array object to the array object pool. + */ +static void +save_array_object( struct gl_context *ctx, struct gl_array_object *obj ) +{ + if (obj->Name > 0) { + /* insert into hash table */ + _mesa_HashInsert(ctx->Array.Objects, obj->Name, obj); + } +} + + +/** + * Remove the given array object from the array object pool. + * Do not deallocate the array object though. + */ +static void +remove_array_object( struct gl_context *ctx, struct gl_array_object *obj ) +{ + if (obj->Name > 0) { + /* remove from hash table */ + _mesa_HashRemove(ctx->Array.Objects, obj->Name); + } +} + + + +/** + * Helper for update_arrays(). + * \return min(current min, array->_MaxElement). + */ +static GLuint +update_min(GLuint min, struct gl_client_array *array) +{ + if (array->Enabled) { + _mesa_update_array_max_element(array); + return MIN2(min, array->_MaxElement); + } + else + return min; +} + + +/** + * Examine vertex arrays to update the gl_array_object::_MaxElement field. + */ +void +_mesa_update_array_object_max_element(struct gl_context *ctx, + struct gl_array_object *arrayObj) +{ + GLuint i, min = ~0; + + min = update_min(min, &arrayObj->Vertex); + min = update_min(min, &arrayObj->Weight); + min = update_min(min, &arrayObj->Normal); + min = update_min(min, &arrayObj->Color); + min = update_min(min, &arrayObj->SecondaryColor); + min = update_min(min, &arrayObj->FogCoord); + min = update_min(min, &arrayObj->Index); + min = update_min(min, &arrayObj->EdgeFlag); +#if FEATURE_point_size_array + min = update_min(min, &arrayObj->PointSize); +#endif + for (i = 0; i < ctx->Const.MaxTextureCoordUnits; i++) + min = update_min(min, &arrayObj->TexCoord[i]); + for (i = 0; i < Elements(arrayObj->VertexAttrib); i++) + min = update_min(min, &arrayObj->VertexAttrib[i]); + + /* _MaxElement is one past the last legal array element */ + arrayObj->_MaxElement = min; +} + + +/**********************************************************************/ +/* API Functions */ +/**********************************************************************/ + + +/** + * Helper for _mesa_BindVertexArray() and _mesa_BindVertexArrayAPPLE(). + * \param genRequired specifies behavour when id was not generated with + * glGenVertexArrays(). + */ +static void +bind_vertex_array(struct gl_context *ctx, GLuint id, GLboolean genRequired) +{ + struct gl_array_object * const oldObj = ctx->Array.ArrayObj; + struct gl_array_object *newObj = NULL; + ASSERT_OUTSIDE_BEGIN_END(ctx); + + ASSERT(oldObj != NULL); + + if ( oldObj->Name == id ) + return; /* rebinding the same array object- no change */ + + /* + * Get pointer to new array object (newObj) + */ + if (id == 0) { + /* The spec says there is no array object named 0, but we use + * one internally because it simplifies things. + */ + newObj = ctx->Array.DefaultArrayObj; + } + else { + /* non-default array object */ + newObj = lookup_arrayobj(ctx, id); + if (!newObj) { + if (genRequired) { + _mesa_error(ctx, GL_INVALID_OPERATION, "glBindVertexArray(id)"); + return; + } + + /* For APPLE version, generate a new array object now */ + newObj = (*ctx->Driver.NewArrayObject)(ctx, id); + if (!newObj) { + _mesa_error(ctx, GL_OUT_OF_MEMORY, "glBindVertexArrayAPPLE"); + return; + } + save_array_object(ctx, newObj); + } + } + + ctx->NewState |= _NEW_ARRAY; + ctx->Array.NewState |= _NEW_ARRAY_ALL; + _mesa_reference_array_object(ctx, &ctx->Array.ArrayObj, newObj); + + /* Pass BindVertexArray call to device driver */ + if (ctx->Driver.BindArrayObject && newObj) + ctx->Driver.BindArrayObject(ctx, newObj); +} + + +/** + * ARB version of glBindVertexArray() + * This function behaves differently from glBindVertexArrayAPPLE() in + * that this function requires all ids to have been previously generated + * by glGenVertexArrays[APPLE](). + */ +void GLAPIENTRY +_mesa_BindVertexArray( GLuint id ) +{ + GET_CURRENT_CONTEXT(ctx); + bind_vertex_array(ctx, id, GL_TRUE); +} + + +/** + * Bind a new array. + * + * \todo + * The binding could be done more efficiently by comparing the non-NULL + * pointers in the old and new objects. The only arrays that are "dirty" are + * the ones that are non-NULL in either object. + */ +void GLAPIENTRY +_mesa_BindVertexArrayAPPLE( GLuint id ) +{ + GET_CURRENT_CONTEXT(ctx); + bind_vertex_array(ctx, id, GL_FALSE); +} + + +/** + * Delete a set of array objects. + * + * \param n Number of array objects to delete. + * \param ids Array of \c n array object IDs. + */ +void GLAPIENTRY +_mesa_DeleteVertexArraysAPPLE(GLsizei n, const GLuint *ids) +{ + GET_CURRENT_CONTEXT(ctx); + GLsizei i; + ASSERT_OUTSIDE_BEGIN_END(ctx); + + if (n < 0) { + _mesa_error(ctx, GL_INVALID_VALUE, "glDeleteVertexArrayAPPLE(n)"); + return; + } + + for (i = 0; i < n; i++) { + struct gl_array_object *obj = lookup_arrayobj(ctx, ids[i]); + + if ( obj != NULL ) { + ASSERT( obj->Name == ids[i] ); + + /* If the array object is currently bound, the spec says "the binding + * for that object reverts to zero and the default vertex array + * becomes current." + */ + if ( obj == ctx->Array.ArrayObj ) { + CALL_BindVertexArrayAPPLE( ctx->Exec, (0) ); + } + + /* The ID is immediately freed for re-use */ + remove_array_object(ctx, obj); + + /* Unreference the array object. + * If refcount hits zero, the object will be deleted. + */ + _mesa_reference_array_object(ctx, &obj, NULL); + } + } +} + + +/** + * Generate a set of unique array object IDs and store them in \c arrays. + * Helper for _mesa_GenVertexArrays[APPLE]() functions below. + * \param n Number of IDs to generate. + * \param arrays Array of \c n locations to store the IDs. + * \param vboOnly Will arrays have to reside in VBOs? + */ +static void +gen_vertex_arrays(struct gl_context *ctx, GLsizei n, GLuint *arrays, + GLboolean vboOnly) +{ + GLuint first; + GLint i; + ASSERT_OUTSIDE_BEGIN_END(ctx); + + if (n < 0) { + _mesa_error(ctx, GL_INVALID_VALUE, "glGenVertexArraysAPPLE"); + return; + } + + if (!arrays) { + return; + } + + first = _mesa_HashFindFreeKeyBlock(ctx->Array.Objects, n); + + /* Allocate new, empty array objects and return identifiers */ + for (i = 0; i < n; i++) { + struct gl_array_object *obj; + GLuint name = first + i; + + obj = (*ctx->Driver.NewArrayObject)( ctx, name ); + if (!obj) { + _mesa_error(ctx, GL_OUT_OF_MEMORY, "glGenVertexArraysAPPLE"); + return; + } + obj->VBOonly = vboOnly; + save_array_object(ctx, obj); + arrays[i] = first + i; + } +} + + +/** + * ARB version of glGenVertexArrays() + * All arrays will be required to live in VBOs. + */ +void GLAPIENTRY +_mesa_GenVertexArrays(GLsizei n, GLuint *arrays) +{ + GET_CURRENT_CONTEXT(ctx); + gen_vertex_arrays(ctx, n, arrays, GL_TRUE); +} + + +/** + * APPLE version of glGenVertexArraysAPPLE() + * Arrays may live in VBOs or ordinary memory. + */ +void GLAPIENTRY +_mesa_GenVertexArraysAPPLE(GLsizei n, GLuint *arrays) +{ + GET_CURRENT_CONTEXT(ctx); + gen_vertex_arrays(ctx, n, arrays, GL_FALSE); +} + + +/** + * Determine if ID is the name of an array object. + * + * \param id ID of the potential array object. + * \return \c GL_TRUE if \c id is the name of a array object, + * \c GL_FALSE otherwise. + */ +GLboolean GLAPIENTRY +_mesa_IsVertexArrayAPPLE( GLuint id ) +{ + struct gl_array_object * obj; + GET_CURRENT_CONTEXT(ctx); + ASSERT_OUTSIDE_BEGIN_END_WITH_RETVAL(ctx, GL_FALSE); + + if (id == 0) + return GL_FALSE; + + obj = lookup_arrayobj(ctx, id); + + return (obj != NULL) ? GL_TRUE : GL_FALSE; +} diff --git a/mesalib/src/mesa/main/atifragshader.h b/mesalib/src/mesa/main/atifragshader.h index 838d327c0..90ada212a 100644 --- a/mesalib/src/mesa/main/atifragshader.h +++ b/mesalib/src/mesa/main/atifragshader.h @@ -1,154 +1,154 @@ -/*
- * Mesa 3-D graphics library ATI Fragment Shader
- *
- * Copyright (C) 2004 David Airlie All Rights Reserved.
- *
- */
-
-#ifndef ATIFRAGSHADER_H
-#define ATIFRAGSHADER_H
-
-#include "compiler.h"
-#include "glheader.h"
-#include "mfeatures.h"
-
-struct _glapi_table;
-struct gl_context;
-
-#define MAX_NUM_INSTRUCTIONS_PER_PASS_ATI 8
-#define MAX_NUM_PASSES_ATI 2
-#define MAX_NUM_FRAGMENT_REGISTERS_ATI 6
-
-struct ati_fs_opcode_st
-{
- GLenum opcode;
- GLint num_src_args;
-};
-
-extern struct ati_fs_opcode_st ati_fs_opcodes[];
-
-struct atifragshader_src_register
-{
- GLuint Index;
- GLuint argRep;
- GLuint argMod;
-};
-
-struct atifragshader_dst_register
-{
- GLuint Index;
- GLuint dstMod;
- GLuint dstMask;
-};
-
-#define ATI_FRAGMENT_SHADER_COLOR_OP 0
-#define ATI_FRAGMENT_SHADER_ALPHA_OP 1
-#define ATI_FRAGMENT_SHADER_PASS_OP 2
-#define ATI_FRAGMENT_SHADER_SAMPLE_OP 3
-
-/* two opcodes - one for color/one for alpha */
-/* up to three source registers for most ops */
-struct atifs_instruction
-{
- GLenum Opcode[2];
- GLuint ArgCount[2];
- struct atifragshader_src_register SrcReg[2][3];
- struct atifragshader_dst_register DstReg[2];
-};
-
-/* different from arithmetic shader instruction */
-struct atifs_setupinst
-{
- GLenum Opcode;
- GLuint src;
- GLenum swizzle;
-};
-
-
-#if FEATURE_ATI_fragment_shader
-
-extern void
-_mesa_init_ati_fragment_shader_dispatch(struct _glapi_table *disp);
-
-extern struct ati_fragment_shader *
-_mesa_new_ati_fragment_shader(struct gl_context *ctx, GLuint id);
-
-extern void
-_mesa_delete_ati_fragment_shader(struct gl_context *ctx,
- struct ati_fragment_shader *s);
-
-
-extern GLuint GLAPIENTRY _mesa_GenFragmentShadersATI(GLuint range);
-
-extern void GLAPIENTRY _mesa_BindFragmentShaderATI(GLuint id);
-
-extern void GLAPIENTRY _mesa_DeleteFragmentShaderATI(GLuint id);
-
-extern void GLAPIENTRY _mesa_BeginFragmentShaderATI(void);
-
-extern void GLAPIENTRY _mesa_EndFragmentShaderATI(void);
-
-extern void GLAPIENTRY
-_mesa_PassTexCoordATI(GLuint dst, GLuint coord, GLenum swizzle);
-
-extern void GLAPIENTRY
-_mesa_SampleMapATI(GLuint dst, GLuint interp, GLenum swizzle);
-
-extern void GLAPIENTRY
-_mesa_ColorFragmentOp1ATI(GLenum op, GLuint dst, GLuint dstMask,
- GLuint dstMod, GLuint arg1, GLuint arg1Rep,
- GLuint arg1Mod);
-
-extern void GLAPIENTRY
-_mesa_ColorFragmentOp2ATI(GLenum op, GLuint dst, GLuint dstMask,
- GLuint dstMod, GLuint arg1, GLuint arg1Rep,
- GLuint arg1Mod, GLuint arg2, GLuint arg2Rep,
- GLuint arg2Mod);
-
-extern void GLAPIENTRY
-_mesa_ColorFragmentOp3ATI(GLenum op, GLuint dst, GLuint dstMask,
- GLuint dstMod, GLuint arg1, GLuint arg1Rep,
- GLuint arg1Mod, GLuint arg2, GLuint arg2Rep,
- GLuint arg2Mod, GLuint arg3, GLuint arg3Rep,
- GLuint arg3Mod);
-
-extern void GLAPIENTRY
-_mesa_AlphaFragmentOp1ATI(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1,
- GLuint arg1Rep, GLuint arg1Mod);
-
-extern void GLAPIENTRY
-_mesa_AlphaFragmentOp2ATI(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1,
- GLuint arg1Rep, GLuint arg1Mod, GLuint arg2,
- GLuint arg2Rep, GLuint arg2Mod);
-
-extern void GLAPIENTRY
-_mesa_AlphaFragmentOp3ATI(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1,
- GLuint arg1Rep, GLuint arg1Mod, GLuint arg2,
- GLuint arg2Rep, GLuint arg2Mod, GLuint arg3,
- GLuint arg3Rep, GLuint arg3Mod);
-
-extern void GLAPIENTRY
-_mesa_SetFragmentShaderConstantATI(GLuint dst, const GLfloat * value);
-
-#else /* FEATURE_ATI_fragment_shader */
-
-static INLINE void
-_mesa_init_ati_fragment_shader_dispatch(struct _glapi_table *disp)
-{
-}
-
-static INLINE struct ati_fragment_shader *
-_mesa_new_ati_fragment_shader(struct gl_context *ctx, GLuint id)
-{
- return NULL;
-}
-
-static INLINE void
-_mesa_delete_ati_fragment_shader(struct gl_context *ctx,
- struct ati_fragment_shader *s)
-{
-}
-
-#endif /* FEATURE_ATI_fragment_shader */
-
-#endif /* ATIFRAGSHADER_H */
+/* + * Mesa 3-D graphics library ATI Fragment Shader + * + * Copyright (C) 2004 David Airlie All Rights Reserved. + * + */ + +#ifndef ATIFRAGSHADER_H +#define ATIFRAGSHADER_H + +#include "compiler.h" +#include "glheader.h" +#include "mfeatures.h" + +struct _glapi_table; +struct gl_context; + +#define MAX_NUM_INSTRUCTIONS_PER_PASS_ATI 8 +#define MAX_NUM_PASSES_ATI 2 +#define MAX_NUM_FRAGMENT_REGISTERS_ATI 6 + +struct ati_fs_opcode_st +{ + GLenum opcode; + GLint num_src_args; +}; + +extern struct ati_fs_opcode_st ati_fs_opcodes[]; + +struct atifragshader_src_register +{ + GLuint Index; + GLuint argRep; + GLuint argMod; +}; + +struct atifragshader_dst_register +{ + GLuint Index; + GLuint dstMod; + GLuint dstMask; +}; + +#define ATI_FRAGMENT_SHADER_COLOR_OP 0 +#define ATI_FRAGMENT_SHADER_ALPHA_OP 1 +#define ATI_FRAGMENT_SHADER_PASS_OP 2 +#define ATI_FRAGMENT_SHADER_SAMPLE_OP 3 + +/* two opcodes - one for color/one for alpha */ +/* up to three source registers for most ops */ +struct atifs_instruction +{ + GLenum Opcode[2]; + GLuint ArgCount[2]; + struct atifragshader_src_register SrcReg[2][3]; + struct atifragshader_dst_register DstReg[2]; +}; + +/* different from arithmetic shader instruction */ +struct atifs_setupinst +{ + GLenum Opcode; + GLuint src; + GLenum swizzle; +}; + + +#if FEATURE_ATI_fragment_shader + +extern void +_mesa_init_ati_fragment_shader_dispatch(struct _glapi_table *disp); + +extern struct ati_fragment_shader * +_mesa_new_ati_fragment_shader(struct gl_context *ctx, GLuint id); + +extern void +_mesa_delete_ati_fragment_shader(struct gl_context *ctx, + struct ati_fragment_shader *s); + + +extern GLuint GLAPIENTRY _mesa_GenFragmentShadersATI(GLuint range); + +extern void GLAPIENTRY _mesa_BindFragmentShaderATI(GLuint id); + +extern void GLAPIENTRY _mesa_DeleteFragmentShaderATI(GLuint id); + +extern void GLAPIENTRY _mesa_BeginFragmentShaderATI(void); + +extern void GLAPIENTRY _mesa_EndFragmentShaderATI(void); + +extern void GLAPIENTRY +_mesa_PassTexCoordATI(GLuint dst, GLuint coord, GLenum swizzle); + +extern void GLAPIENTRY +_mesa_SampleMapATI(GLuint dst, GLuint interp, GLenum swizzle); + +extern void GLAPIENTRY +_mesa_ColorFragmentOp1ATI(GLenum op, GLuint dst, GLuint dstMask, + GLuint dstMod, GLuint arg1, GLuint arg1Rep, + GLuint arg1Mod); + +extern void GLAPIENTRY +_mesa_ColorFragmentOp2ATI(GLenum op, GLuint dst, GLuint dstMask, + GLuint dstMod, GLuint arg1, GLuint arg1Rep, + GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, + GLuint arg2Mod); + +extern void GLAPIENTRY +_mesa_ColorFragmentOp3ATI(GLenum op, GLuint dst, GLuint dstMask, + GLuint dstMod, GLuint arg1, GLuint arg1Rep, + GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, + GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, + GLuint arg3Mod); + +extern void GLAPIENTRY +_mesa_AlphaFragmentOp1ATI(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, + GLuint arg1Rep, GLuint arg1Mod); + +extern void GLAPIENTRY +_mesa_AlphaFragmentOp2ATI(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, + GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, + GLuint arg2Rep, GLuint arg2Mod); + +extern void GLAPIENTRY +_mesa_AlphaFragmentOp3ATI(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, + GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, + GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, + GLuint arg3Rep, GLuint arg3Mod); + +extern void GLAPIENTRY +_mesa_SetFragmentShaderConstantATI(GLuint dst, const GLfloat * value); + +#else /* FEATURE_ATI_fragment_shader */ + +static inline void +_mesa_init_ati_fragment_shader_dispatch(struct _glapi_table *disp) +{ +} + +static inline struct ati_fragment_shader * +_mesa_new_ati_fragment_shader(struct gl_context *ctx, GLuint id) +{ + return NULL; +} + +static inline void +_mesa_delete_ati_fragment_shader(struct gl_context *ctx, + struct ati_fragment_shader *s) +{ +} + +#endif /* FEATURE_ATI_fragment_shader */ + +#endif /* ATIFRAGSHADER_H */ diff --git a/mesalib/src/mesa/main/attrib.c b/mesalib/src/mesa/main/attrib.c index 6f427e008..e67957d4d 100644 --- a/mesalib/src/mesa/main/attrib.c +++ b/mesalib/src/mesa/main/attrib.c @@ -497,7 +497,7 @@ pop_enable_group(struct gl_context *ctx, const struct gl_enable_attrib *enable) const GLuint mask = 1 << i; if ((ctx->Transform.ClipPlanesEnabled & mask) != (enable->ClipPlanes & mask)) _mesa_set_enable(ctx, (GLenum) (GL_CLIP_PLANE0 + i), - (GLboolean) ((enable->ClipPlanes & mask) ? GL_TRUE : GL_FALSE)); + !!(enable->ClipPlanes & mask)); } TEST_AND_UPDATE(ctx->Light.ColorMaterialEnabled, enable->ColorMaterial, @@ -620,38 +620,31 @@ pop_enable_group(struct gl_context *ctx, const struct gl_enable_attrib *enable) if (ctx->Texture.Unit[i].Enabled != enabled) { _mesa_ActiveTextureARB(GL_TEXTURE0 + i); - _mesa_set_enable(ctx, GL_TEXTURE_1D, - (enabled & TEXTURE_1D_BIT) ? GL_TRUE : GL_FALSE); - _mesa_set_enable(ctx, GL_TEXTURE_2D, - (enabled & TEXTURE_2D_BIT) ? GL_TRUE : GL_FALSE); - _mesa_set_enable(ctx, GL_TEXTURE_3D, - (enabled & TEXTURE_3D_BIT) ? GL_TRUE : GL_FALSE); + _mesa_set_enable(ctx, GL_TEXTURE_1D, !!(enabled & TEXTURE_1D_BIT)); + _mesa_set_enable(ctx, GL_TEXTURE_2D, !!(enabled & TEXTURE_2D_BIT)); + _mesa_set_enable(ctx, GL_TEXTURE_3D, !!(enabled & TEXTURE_3D_BIT)); if (ctx->Extensions.NV_texture_rectangle) { _mesa_set_enable(ctx, GL_TEXTURE_RECTANGLE_ARB, - (enabled & TEXTURE_RECT_BIT) ? GL_TRUE : GL_FALSE); + !!(enabled & TEXTURE_RECT_BIT)); } if (ctx->Extensions.ARB_texture_cube_map) { _mesa_set_enable(ctx, GL_TEXTURE_CUBE_MAP, - (enabled & TEXTURE_CUBE_BIT) ? GL_TRUE : GL_FALSE); + !!(enabled & TEXTURE_CUBE_BIT)); } if (ctx->Extensions.MESA_texture_array) { _mesa_set_enable(ctx, GL_TEXTURE_1D_ARRAY_EXT, - (enabled & TEXTURE_1D_ARRAY_BIT) ? GL_TRUE : GL_FALSE); + !!(enabled & TEXTURE_1D_ARRAY_BIT)); _mesa_set_enable(ctx, GL_TEXTURE_2D_ARRAY_EXT, - (enabled & TEXTURE_2D_ARRAY_BIT) ? GL_TRUE : GL_FALSE); + !!(enabled & TEXTURE_2D_ARRAY_BIT)); } } if (ctx->Texture.Unit[i].TexGenEnabled != genEnabled) { _mesa_ActiveTextureARB(GL_TEXTURE0 + i); - _mesa_set_enable(ctx, GL_TEXTURE_GEN_S, - (genEnabled & S_BIT) ? GL_TRUE : GL_FALSE); - _mesa_set_enable(ctx, GL_TEXTURE_GEN_T, - (genEnabled & T_BIT) ? GL_TRUE : GL_FALSE); - _mesa_set_enable(ctx, GL_TEXTURE_GEN_R, - (genEnabled & R_BIT) ? GL_TRUE : GL_FALSE); - _mesa_set_enable(ctx, GL_TEXTURE_GEN_Q, - (genEnabled & Q_BIT) ? GL_TRUE : GL_FALSE); + _mesa_set_enable(ctx, GL_TEXTURE_GEN_S, !!(genEnabled & S_BIT)); + _mesa_set_enable(ctx, GL_TEXTURE_GEN_T, !!(genEnabled & T_BIT)); + _mesa_set_enable(ctx, GL_TEXTURE_GEN_R, !!(genEnabled & R_BIT)); + _mesa_set_enable(ctx, GL_TEXTURE_GEN_Q, !!(genEnabled & Q_BIT)); } } @@ -674,25 +667,22 @@ pop_texture_group(struct gl_context *ctx, struct texture_state *texstate) GLuint tgt; _mesa_ActiveTextureARB(GL_TEXTURE0_ARB + u); - _mesa_set_enable(ctx, GL_TEXTURE_1D, - (unit->Enabled & TEXTURE_1D_BIT) ? GL_TRUE : GL_FALSE); - _mesa_set_enable(ctx, GL_TEXTURE_2D, - (unit->Enabled & TEXTURE_2D_BIT) ? GL_TRUE : GL_FALSE); - _mesa_set_enable(ctx, GL_TEXTURE_3D, - (unit->Enabled & TEXTURE_3D_BIT) ? GL_TRUE : GL_FALSE); + _mesa_set_enable(ctx, GL_TEXTURE_1D, !!(unit->Enabled & TEXTURE_1D_BIT)); + _mesa_set_enable(ctx, GL_TEXTURE_2D, !!(unit->Enabled & TEXTURE_2D_BIT)); + _mesa_set_enable(ctx, GL_TEXTURE_3D, !!(unit->Enabled & TEXTURE_3D_BIT)); if (ctx->Extensions.ARB_texture_cube_map) { _mesa_set_enable(ctx, GL_TEXTURE_CUBE_MAP_ARB, - (unit->Enabled & TEXTURE_CUBE_BIT) ? GL_TRUE : GL_FALSE); + !!(unit->Enabled & TEXTURE_CUBE_BIT)); } if (ctx->Extensions.NV_texture_rectangle) { _mesa_set_enable(ctx, GL_TEXTURE_RECTANGLE_NV, - (unit->Enabled & TEXTURE_RECT_BIT) ? GL_TRUE : GL_FALSE); + !!(unit->Enabled & TEXTURE_RECT_BIT)); } if (ctx->Extensions.MESA_texture_array) { _mesa_set_enable(ctx, GL_TEXTURE_1D_ARRAY_EXT, - (unit->Enabled & TEXTURE_1D_ARRAY_BIT) ? GL_TRUE : GL_FALSE); + !!(unit->Enabled & TEXTURE_1D_ARRAY_BIT)); _mesa_set_enable(ctx, GL_TEXTURE_2D_ARRAY_EXT, - (unit->Enabled & TEXTURE_2D_ARRAY_BIT) ? GL_TRUE : GL_FALSE); + !!(unit->Enabled & TEXTURE_2D_ARRAY_BIT)); } _mesa_TexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, unit->EnvMode); @@ -719,44 +709,30 @@ pop_texture_group(struct gl_context *ctx, struct texture_state *texstate) ctx->Driver.TexGen(ctx, GL_Q, GL_EYE_PLANE, unit->GenQ.EyePlane); } } - _mesa_set_enable(ctx, GL_TEXTURE_GEN_S, - ((unit->TexGenEnabled & S_BIT) ? GL_TRUE : GL_FALSE)); - _mesa_set_enable(ctx, GL_TEXTURE_GEN_T, - ((unit->TexGenEnabled & T_BIT) ? GL_TRUE : GL_FALSE)); - _mesa_set_enable(ctx, GL_TEXTURE_GEN_R, - ((unit->TexGenEnabled & R_BIT) ? GL_TRUE : GL_FALSE)); - _mesa_set_enable(ctx, GL_TEXTURE_GEN_Q, - ((unit->TexGenEnabled & Q_BIT) ? GL_TRUE : GL_FALSE)); + _mesa_set_enable(ctx, GL_TEXTURE_GEN_S, !!(unit->TexGenEnabled & S_BIT)); + _mesa_set_enable(ctx, GL_TEXTURE_GEN_T, !!(unit->TexGenEnabled & T_BIT)); + _mesa_set_enable(ctx, GL_TEXTURE_GEN_R, !!(unit->TexGenEnabled & R_BIT)); + _mesa_set_enable(ctx, GL_TEXTURE_GEN_Q, !!(unit->TexGenEnabled & Q_BIT)); _mesa_TexEnvf(GL_TEXTURE_FILTER_CONTROL, GL_TEXTURE_LOD_BIAS, unit->LodBias); _mesa_TexEnvi(GL_TEXTURE_ENV, GL_COMBINE_RGB, unit->Combine.ModeRGB); _mesa_TexEnvi(GL_TEXTURE_ENV, GL_COMBINE_ALPHA, unit->Combine.ModeA); - _mesa_TexEnvi(GL_TEXTURE_ENV, GL_SOURCE0_RGB, - unit->Combine.SourceRGB[0]); - _mesa_TexEnvi(GL_TEXTURE_ENV, GL_SOURCE1_RGB, - unit->Combine.SourceRGB[1]); - _mesa_TexEnvi(GL_TEXTURE_ENV, GL_SOURCE2_RGB, - unit->Combine.SourceRGB[2]); - _mesa_TexEnvi(GL_TEXTURE_ENV, GL_SOURCE0_ALPHA, - unit->Combine.SourceA[0]); - _mesa_TexEnvi(GL_TEXTURE_ENV, GL_SOURCE1_ALPHA, - unit->Combine.SourceA[1]); - _mesa_TexEnvi(GL_TEXTURE_ENV, GL_SOURCE2_ALPHA, - unit->Combine.SourceA[2]); - _mesa_TexEnvi(GL_TEXTURE_ENV, GL_OPERAND0_RGB, - unit->Combine.OperandRGB[0]); - _mesa_TexEnvi(GL_TEXTURE_ENV, GL_OPERAND1_RGB, - unit->Combine.OperandRGB[1]); - _mesa_TexEnvi(GL_TEXTURE_ENV, GL_OPERAND2_RGB, - unit->Combine.OperandRGB[2]); - _mesa_TexEnvi(GL_TEXTURE_ENV, GL_OPERAND0_ALPHA, - unit->Combine.OperandA[0]); - _mesa_TexEnvi(GL_TEXTURE_ENV, GL_OPERAND1_ALPHA, - unit->Combine.OperandA[1]); - _mesa_TexEnvi(GL_TEXTURE_ENV, GL_OPERAND2_ALPHA, - unit->Combine.OperandA[2]); + { + const GLuint n = ctx->Extensions.NV_texture_env_combine4 ? 4 : 3; + GLuint i; + for (i = 0; i < n; i++) { + _mesa_TexEnvi(GL_TEXTURE_ENV, GL_SOURCE0_RGB + i, + unit->Combine.SourceRGB[i]); + _mesa_TexEnvi(GL_TEXTURE_ENV, GL_SOURCE0_ALPHA + i, + unit->Combine.SourceA[i]); + _mesa_TexEnvi(GL_TEXTURE_ENV, GL_OPERAND0_RGB + i, + unit->Combine.OperandRGB[i]); + _mesa_TexEnvi(GL_TEXTURE_ENV, GL_OPERAND0_ALPHA + i, + unit->Combine.OperandA[i]); + } + } _mesa_TexEnvi(GL_TEXTURE_ENV, GL_RGB_SCALE, 1 << unit->Combine.ScaleShiftRGB); _mesa_TexEnvi(GL_TEXTURE_ENV, GL_ALPHA_SCALE, @@ -1246,12 +1222,8 @@ _mesa_PopAttrib(void) const GLuint mask = 1 << i; const GLfloat *eyePlane = xform->EyeUserPlane[i]; COPY_4V(ctx->Transform.EyeUserPlane[i], eyePlane); - if (xform->ClipPlanesEnabled & mask) { - _mesa_set_enable(ctx, GL_CLIP_PLANE0 + i, GL_TRUE); - } - else { - _mesa_set_enable(ctx, GL_CLIP_PLANE0 + i, GL_FALSE); - } + _mesa_set_enable(ctx, GL_CLIP_PLANE0 + i, + !!(xform->ClipPlanesEnabled & mask)); if (ctx->Driver.ClipPlane) ctx->Driver.ClipPlane( ctx, GL_CLIP_PLANE0 + i, eyePlane ); } diff --git a/mesalib/src/mesa/main/attrib.h b/mesalib/src/mesa/main/attrib.h index 8e7969a65..6809311cf 100644 --- a/mesalib/src/mesa/main/attrib.h +++ b/mesalib/src/mesa/main/attrib.h @@ -1,80 +1,80 @@ -/*
- * Mesa 3-D graphics library
- * Version: 7.1
- *
- * Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-#ifndef ATTRIB_H
-#define ATTRIB_H
-
-
-#include "compiler.h"
-#include "glheader.h"
-#include "mfeatures.h"
-
-struct _glapi_table;
-struct gl_context;
-
-#if FEATURE_attrib_stack
-
-extern void GLAPIENTRY
-_mesa_PushAttrib( GLbitfield mask );
-
-extern void GLAPIENTRY
-_mesa_PopAttrib( void );
-
-extern void GLAPIENTRY
-_mesa_PushClientAttrib( GLbitfield mask );
-
-extern void GLAPIENTRY
-_mesa_PopClientAttrib( void );
-
-extern void
-_mesa_init_attrib_dispatch(struct _glapi_table *disp);
-
-#else /* FEATURE_attrib_stack */
-
-static INLINE void
-_mesa_PushClientAttrib( GLbitfield mask )
-{
- ASSERT_NO_FEATURE();
-}
-
-static INLINE void
-_mesa_PopClientAttrib( void )
-{
- ASSERT_NO_FEATURE();
-}
-
-static INLINE void
-_mesa_init_attrib_dispatch(struct _glapi_table *disp)
-{
-}
-
-#endif /* FEATURE_attrib_stack */
-
-extern void
-_mesa_init_attrib( struct gl_context *ctx );
-
-extern void
-_mesa_free_attrib_data( struct gl_context *ctx );
-
-#endif /* ATTRIB_H */
+/* + * Mesa 3-D graphics library + * Version: 7.1 + * + * Copyright (C) 1999-2007 Brian Paul All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + +#ifndef ATTRIB_H +#define ATTRIB_H + + +#include "compiler.h" +#include "glheader.h" +#include "mfeatures.h" + +struct _glapi_table; +struct gl_context; + +#if FEATURE_attrib_stack + +extern void GLAPIENTRY +_mesa_PushAttrib( GLbitfield mask ); + +extern void GLAPIENTRY +_mesa_PopAttrib( void ); + +extern void GLAPIENTRY +_mesa_PushClientAttrib( GLbitfield mask ); + +extern void GLAPIENTRY +_mesa_PopClientAttrib( void ); + +extern void +_mesa_init_attrib_dispatch(struct _glapi_table *disp); + +#else /* FEATURE_attrib_stack */ + +static inline void +_mesa_PushClientAttrib( GLbitfield mask ) +{ + ASSERT_NO_FEATURE(); +} + +static inline void +_mesa_PopClientAttrib( void ) +{ + ASSERT_NO_FEATURE(); +} + +static inline void +_mesa_init_attrib_dispatch(struct _glapi_table *disp) +{ +} + +#endif /* FEATURE_attrib_stack */ + +extern void +_mesa_init_attrib( struct gl_context *ctx ); + +extern void +_mesa_free_attrib_data( struct gl_context *ctx ); + +#endif /* ATTRIB_H */ diff --git a/mesalib/src/mesa/main/bitset.h b/mesalib/src/mesa/main/bitset.h index 9f48b3cce..7a0704b14 100644 --- a/mesalib/src/mesa/main/bitset.h +++ b/mesalib/src/mesa/main/bitset.h @@ -81,7 +81,7 @@ /* Get first bit set in a bitset. */ -static INLINE int +static inline int __bitset_ffs(const BITSET_WORD *x, int n) { int i; diff --git a/mesalib/src/mesa/main/bufferobj.c b/mesalib/src/mesa/main/bufferobj.c index 99edb1ade..431eafd38 100644 --- a/mesalib/src/mesa/main/bufferobj.c +++ b/mesalib/src/mesa/main/bufferobj.c @@ -70,7 +70,7 @@ static struct gl_buffer_object DummyBufferObject; * \return pointer to pointer to the buffer object bound to \c target in the * specified context or \c NULL if \c target is invalid. */ -static INLINE struct gl_buffer_object ** +static inline struct gl_buffer_object ** get_buffer_target(struct gl_context *ctx, GLenum target) { switch (target) { @@ -112,7 +112,7 @@ get_buffer_target(struct gl_context *ctx, GLenum target) * \return pointer to the buffer object bound to \c target in the * specified context or \c NULL if \c target is invalid. */ -static INLINE struct gl_buffer_object * +static inline struct gl_buffer_object * get_buffer(struct gl_context *ctx, GLenum target) { struct gl_buffer_object **bufObj = get_buffer_target(ctx, target); diff --git a/mesalib/src/mesa/main/bufferobj.h b/mesalib/src/mesa/main/bufferobj.h index f82e41411..b4e70f2f0 100644 --- a/mesalib/src/mesa/main/bufferobj.h +++ b/mesalib/src/mesa/main/bufferobj.h @@ -39,7 +39,7 @@ /** Is the given buffer object currently mapped? */ -static INLINE GLboolean +static inline GLboolean _mesa_bufferobj_mapped(const struct gl_buffer_object *obj) { return obj->Pointer != NULL; @@ -50,7 +50,7 @@ _mesa_bufferobj_mapped(const struct gl_buffer_object *obj) * Mesa uses default buffer objects in several places. Default buffers * always have Name==0. User created buffers have Name!=0. */ -static INLINE GLboolean +static inline GLboolean _mesa_is_bufferobj(const struct gl_buffer_object *obj) { return obj->Name != 0; @@ -79,7 +79,7 @@ _mesa_reference_buffer_object_(struct gl_context *ctx, struct gl_buffer_object **ptr, struct gl_buffer_object *bufObj); -static INLINE void +static inline void _mesa_reference_buffer_object(struct gl_context *ctx, struct gl_buffer_object **ptr, struct gl_buffer_object *bufObj) diff --git a/mesalib/src/mesa/main/clear.c b/mesalib/src/mesa/main/clear.c index 301fe694c..c35675fb4 100644 --- a/mesalib/src/mesa/main/clear.c +++ b/mesalib/src/mesa/main/clear.c @@ -200,6 +200,9 @@ _mesa_Clear( GLbitfield mask ) ctx->DrawBuffer->_Ymin >= ctx->DrawBuffer->_Ymax) return; + if (ctx->TransformFeedback.RasterDiscard) + return; + if (ctx->RenderMode == GL_RENDER) { GLbitfield bufferMask; @@ -328,7 +331,7 @@ _mesa_ClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value) drawbuffer); return; } - else { + else if (!ctx->TransformFeedback.RasterDiscard) { /* Save current stencil clear value, set to 'value', do the * stencil clear and restore the clear value. * XXX in the future we may have a new ctx->Driver.ClearBuffer() @@ -352,7 +355,7 @@ _mesa_ClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value) drawbuffer); return; } - else if (mask) { + else if (mask && !ctx->TransformFeedback.RasterDiscard) { union gl_color_union clearSave; /* save color */ @@ -403,7 +406,7 @@ _mesa_ClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value) drawbuffer); return; } - else if (mask) { + else if (mask && !ctx->TransformFeedback.RasterDiscard) { union gl_color_union clearSave; /* save color */ @@ -452,7 +455,7 @@ _mesa_ClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value) drawbuffer); return; } - else { + else if (!ctx->TransformFeedback.RasterDiscard) { /* Save current depth clear value, set to 'value', do the * depth clear and restore the clear value. * XXX in the future we may have a new ctx->Driver.ClearBuffer() @@ -477,7 +480,7 @@ _mesa_ClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value) drawbuffer); return; } - else if (mask) { + else if (mask && !ctx->TransformFeedback.RasterDiscard) { union gl_color_union clearSave; /* save color */ @@ -528,6 +531,9 @@ _mesa_ClearBufferfi(GLenum buffer, GLint drawbuffer, return; } + if (ctx->TransformFeedback.RasterDiscard) + return; + if (ctx->NewState) { _mesa_update_state( ctx ); } diff --git a/mesalib/src/mesa/main/colortab.h b/mesalib/src/mesa/main/colortab.h index b0d2b5db8..4e225ffc9 100644 --- a/mesalib/src/mesa/main/colortab.h +++ b/mesalib/src/mesa/main/colortab.h @@ -50,7 +50,7 @@ _mesa_init_colortable_dispatch(struct _glapi_table *disp); #else /* FEATURE_colortable */ -static INLINE void GLAPIENTRY +static inline void GLAPIENTRY _mesa_ColorTable( GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table ) @@ -58,7 +58,7 @@ _mesa_ColorTable( GLenum target, GLenum internalformat, ASSERT_NO_FEATURE(); } -static INLINE void GLAPIENTRY +static inline void GLAPIENTRY _mesa_ColorSubTable( GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *table ) @@ -66,7 +66,7 @@ _mesa_ColorSubTable( GLenum target, GLsizei start, ASSERT_NO_FEATURE(); } -static INLINE void +static inline void _mesa_init_colortable_dispatch(struct _glapi_table *disp) { } diff --git a/mesalib/src/mesa/main/convolve.h b/mesalib/src/mesa/main/convolve.h index 7ecfcd6b1..952285643 100644 --- a/mesalib/src/mesa/main/convolve.h +++ b/mesalib/src/mesa/main/convolve.h @@ -1,51 +1,51 @@ -
-/*
- * Mesa 3-D graphics library
- * Version: 3.5
- *
- * Copyright (C) 1999-2001 Brian Paul All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-#ifndef CONVOLVE_H
-#define CONVOLVE_H
-
-
-#include "compiler.h"
-#include "mfeatures.h"
-
-struct _glapi_table;
-
-
-#if FEATURE_convolve
-
-extern void
-_mesa_init_convolve_dispatch(struct _glapi_table *disp);
-
-#else /* FEATURE_convolve */
-
-static INLINE void
-_mesa_init_convolve_dispatch(struct _glapi_table *disp)
-{
-}
-
-#endif /* FEATURE_convolve */
-
-#endif /* CONVOLVE_H */
+ +/* + * Mesa 3-D graphics library + * Version: 3.5 + * + * Copyright (C) 1999-2001 Brian Paul All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + + +#ifndef CONVOLVE_H +#define CONVOLVE_H + + +#include "compiler.h" +#include "mfeatures.h" + +struct _glapi_table; + + +#if FEATURE_convolve + +extern void +_mesa_init_convolve_dispatch(struct _glapi_table *disp); + +#else /* FEATURE_convolve */ + +static inline void +_mesa_init_convolve_dispatch(struct _glapi_table *disp) +{ +} + +#endif /* FEATURE_convolve */ + +#endif /* CONVOLVE_H */ diff --git a/mesalib/src/mesa/main/dd.h b/mesalib/src/mesa/main/dd.h index 720e4f53d..787556451 100644 --- a/mesalib/src/mesa/main/dd.h +++ b/mesalib/src/mesa/main/dd.h @@ -284,9 +284,8 @@ struct dd_function_table { /** * Called by glGetTexImage(). */ - void (*GetTexImage)( struct gl_context *ctx, GLenum target, GLint level, + void (*GetTexImage)( struct gl_context *ctx, GLenum format, GLenum type, GLvoid *pixels, - struct gl_texture_object *texObj, struct gl_texture_image *texImage ); /** @@ -815,25 +814,6 @@ struct dd_function_table { /*@{*/ /** - * Bitmask of state changes that require the current T&L module to be - * validated, using ValidateTnlModule() below. - */ - GLuint NeedValidate; - - /** - * Validate the current T&L module. - * - * This is called directly after UpdateState() when a state change that has - * occurred matches the dd_function_table::NeedValidate bitmask above. This - * ensures all computed values are up to date, thus allowing the driver to - * decide if the current T&L module needs to be swapped out. - * - * This must be non-NULL if a driver installs a custom T&L module and sets - * the dd_function_table::NeedValidate bitmask, but may be NULL otherwise. - */ - void (*ValidateTnlModule)( struct gl_context *ctx, GLuint new_state ); - - /** * Set by the driver-supplied T&L engine. * * Set to PRIM_OUTSIDE_BEGIN_END when outside glBegin()/glEnd(). diff --git a/mesalib/src/mesa/main/debug.c b/mesalib/src/mesa/main/debug.c index 0a393e5fa..6e695d147 100644 --- a/mesalib/src/mesa/main/debug.c +++ b/mesalib/src/mesa/main/debug.c @@ -268,9 +268,7 @@ write_texture_image(struct gl_texture_object *texObj, store = ctx->Pack; /* save */ ctx->Pack = ctx->DefaultPacking; - ctx->Driver.GetTexImage(ctx, texObj->Target, level, - GL_RGBA, GL_UNSIGNED_BYTE, - buffer, texObj, img); + ctx->Driver.GetTexImage(ctx, GL_RGBA, GL_UNSIGNED_BYTE, buffer, img); /* make filename */ _mesa_snprintf(s, sizeof(s), "/tmp/tex%u.l%u.f%u.ppm", texObj->Name, level, face); diff --git a/mesalib/src/mesa/main/dlist.c b/mesalib/src/mesa/main/dlist.c index f11dae9d0..343feec6f 100644 --- a/mesalib/src/mesa/main/dlist.c +++ b/mesalib/src/mesa/main/dlist.c @@ -560,7 +560,7 @@ make_list(GLuint name, GLuint count) /** * Lookup function to just encapsulate casting. */ -static INLINE struct gl_display_list * +static inline struct gl_display_list * lookup_list(struct gl_context *ctx, GLuint list) { return (struct gl_display_list *) @@ -569,7 +569,7 @@ lookup_list(struct gl_context *ctx, GLuint list) /** Is the given opcode an extension code? */ -static INLINE GLboolean +static inline GLboolean is_ext_opcode(OpCode opcode) { return (opcode >= OPCODE_EXT_0); @@ -1043,7 +1043,7 @@ _mesa_dlist_alloc_opcode(struct gl_context *ctx, * \param nparams number of function parameters * \return pointer to start of instruction space */ -static INLINE Node * +static inline Node * alloc_instruction(struct gl_context *ctx, OpCode opcode, GLuint nparams) { return dlist_alloc(ctx, opcode, nparams * sizeof(Node)); @@ -5672,7 +5672,7 @@ save_EdgeFlag(GLboolean x) save_Attr1fNV(VERT_ATTRIB_EDGEFLAG, x ? (GLfloat)1.0 : (GLfloat)0.0); } -static INLINE GLboolean compare4fv( const GLfloat *a, +static inline GLboolean compare4fv( const GLfloat *a, const GLfloat *b, GLuint count ) { diff --git a/mesalib/src/mesa/main/dlist.h b/mesalib/src/mesa/main/dlist.h index b954e06df..89008431a 100644 --- a/mesalib/src/mesa/main/dlist.h +++ b/mesalib/src/mesa/main/dlist.h @@ -1,104 +1,104 @@ -/**
- * \file dlist.h
- * Display lists management.
- */
-
-/*
- * Mesa 3-D graphics library
- * Version: 6.5.1
- *
- * Copyright (C) 1999-2006 Brian Paul All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-
-#ifndef DLIST_H
-#define DLIST_H
-
-
-#include "main/mfeatures.h"
-#include "main/mtypes.h"
-
-
-#if FEATURE_dlist
-
-#define _MESA_INIT_DLIST_VTXFMT(vfmt, impl) \
- do { \
- (vfmt)->CallList = impl ## CallList; \
- (vfmt)->CallLists = impl ## CallLists; \
- } while (0)
-
-extern void GLAPIENTRY _mesa_CallList( GLuint list );
-
-extern void GLAPIENTRY _mesa_CallLists( GLsizei n, GLenum type, const GLvoid *lists );
-
-
-extern void _mesa_compile_error( struct gl_context *ctx, GLenum error, const char *s );
-
-extern void *_mesa_dlist_alloc(struct gl_context *ctx, GLuint opcode, GLuint sz);
-
-extern GLint _mesa_dlist_alloc_opcode( struct gl_context *ctx, GLuint sz,
- void (*execute)( struct gl_context *, void * ),
- void (*destroy)( struct gl_context *, void * ),
- void (*print)( struct gl_context *, void * ) );
-
-extern void _mesa_delete_list(struct gl_context *ctx, struct gl_display_list *dlist);
-
-extern void _mesa_save_vtxfmt_init( GLvertexformat *vfmt );
-
-extern struct _glapi_table *_mesa_create_save_table(void);
-
-extern void _mesa_install_dlist_vtxfmt(struct _glapi_table *disp,
- const GLvertexformat *vfmt);
-
-extern void _mesa_init_dlist_dispatch(struct _glapi_table *disp);
-
-#else /* FEATURE_dlist */
-
-#include "main/compiler.h"
-
-#define _MESA_INIT_DLIST_VTXFMT(vfmt, impl) do { } while (0)
-
-static INLINE void
-_mesa_delete_list(struct gl_context *ctx, struct gl_display_list *dlist)
-{
- /* there should be no list to delete */
- ASSERT_NO_FEATURE();
-}
-
-static INLINE void
-_mesa_install_dlist_vtxfmt(struct _glapi_table *disp,
- const GLvertexformat *vfmt)
-{
-}
-
-static INLINE void
-_mesa_init_dlist_dispatch(struct _glapi_table *disp)
-{
-}
-
-#endif /* FEATURE_dlist */
-
-extern void _mesa_init_display_list( struct gl_context * ctx );
-
-extern void _mesa_free_display_list_data(struct gl_context *ctx);
-
-
-#endif /* DLIST_H */
+/** + * \file dlist.h + * Display lists management. + */ + +/* + * Mesa 3-D graphics library + * Version: 6.5.1 + * + * Copyright (C) 1999-2006 Brian Paul All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + + + +#ifndef DLIST_H +#define DLIST_H + + +#include "main/mfeatures.h" +#include "main/mtypes.h" + + +#if FEATURE_dlist + +#define _MESA_INIT_DLIST_VTXFMT(vfmt, impl) \ + do { \ + (vfmt)->CallList = impl ## CallList; \ + (vfmt)->CallLists = impl ## CallLists; \ + } while (0) + +extern void GLAPIENTRY _mesa_CallList( GLuint list ); + +extern void GLAPIENTRY _mesa_CallLists( GLsizei n, GLenum type, const GLvoid *lists ); + + +extern void _mesa_compile_error( struct gl_context *ctx, GLenum error, const char *s ); + +extern void *_mesa_dlist_alloc(struct gl_context *ctx, GLuint opcode, GLuint sz); + +extern GLint _mesa_dlist_alloc_opcode( struct gl_context *ctx, GLuint sz, + void (*execute)( struct gl_context *, void * ), + void (*destroy)( struct gl_context *, void * ), + void (*print)( struct gl_context *, void * ) ); + +extern void _mesa_delete_list(struct gl_context *ctx, struct gl_display_list *dlist); + +extern void _mesa_save_vtxfmt_init( GLvertexformat *vfmt ); + +extern struct _glapi_table *_mesa_create_save_table(void); + +extern void _mesa_install_dlist_vtxfmt(struct _glapi_table *disp, + const GLvertexformat *vfmt); + +extern void _mesa_init_dlist_dispatch(struct _glapi_table *disp); + +#else /* FEATURE_dlist */ + +#include "main/compiler.h" + +#define _MESA_INIT_DLIST_VTXFMT(vfmt, impl) do { } while (0) + +static inline void +_mesa_delete_list(struct gl_context *ctx, struct gl_display_list *dlist) +{ + /* there should be no list to delete */ + ASSERT_NO_FEATURE(); +} + +static inline void +_mesa_install_dlist_vtxfmt(struct _glapi_table *disp, + const GLvertexformat *vfmt) +{ +} + +static inline void +_mesa_init_dlist_dispatch(struct _glapi_table *disp) +{ +} + +#endif /* FEATURE_dlist */ + +extern void _mesa_init_display_list( struct gl_context * ctx ); + +extern void _mesa_free_display_list_data(struct gl_context *ctx); + + +#endif /* DLIST_H */ diff --git a/mesalib/src/mesa/main/drawpix.c b/mesalib/src/mesa/main/drawpix.c index b7e2c36e1..412cc15af 100644 --- a/mesalib/src/mesa/main/drawpix.c +++ b/mesalib/src/mesa/main/drawpix.c @@ -80,6 +80,10 @@ _mesa_DrawPixels( GLsizei width, GLsizei height, goto end; /* the error code was recorded */ } + if (ctx->TransformFeedback.RasterDiscard) { + goto end; + } + if (!ctx->Current.RasterPosValid) { goto end; /* no-op, not an error */ } @@ -188,6 +192,10 @@ _mesa_CopyPixels( GLint srcx, GLint srcy, GLsizei width, GLsizei height, goto end; } + if (ctx->TransformFeedback.RasterDiscard) { + goto end; + } + if (!ctx->Current.RasterPosValid || width == 0 || height == 0) { goto end; /* no-op, not an error */ } @@ -242,6 +250,9 @@ _mesa_Bitmap( GLsizei width, GLsizei height, return; } + if (ctx->TransformFeedback.RasterDiscard) + return; + if (ctx->RenderMode == GL_RENDER) { /* Truncate, to satisfy conformance tests (matches SGI's OpenGL). */ if (width > 0 && height > 0) { diff --git a/mesalib/src/mesa/main/drawpix.h b/mesalib/src/mesa/main/drawpix.h index 88d3ecc95..13efba5f8 100644 --- a/mesalib/src/mesa/main/drawpix.h +++ b/mesalib/src/mesa/main/drawpix.h @@ -1,50 +1,50 @@ -/*
- * Mesa 3-D graphics library
- * Version: 7.1
- *
- * Copyright (C) 1999-2008 Brian Paul All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-#ifndef DRAWPIX_H
-#define DRAWPIX_H
-
-
-#include "compiler.h"
-#include "mfeatures.h"
-
-struct _glapi_table;
-
-
-#if FEATURE_drawpix
-
-extern void
-_mesa_init_drawpix_dispatch(struct _glapi_table *disp);
-
-#else /* FEATURE_drawpix */
-
-static INLINE void
-_mesa_init_drawpix_dispatch(struct _glapi_table *disp)
-{
-}
-
-#endif /* FEATURE_drawpix */
-
-
-#endif /* DRAWPIX_H */
+/* + * Mesa 3-D graphics library + * Version: 7.1 + * + * Copyright (C) 1999-2008 Brian Paul All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + +#ifndef DRAWPIX_H +#define DRAWPIX_H + + +#include "compiler.h" +#include "mfeatures.h" + +struct _glapi_table; + + +#if FEATURE_drawpix + +extern void +_mesa_init_drawpix_dispatch(struct _glapi_table *disp); + +#else /* FEATURE_drawpix */ + +static inline void +_mesa_init_drawpix_dispatch(struct _glapi_table *disp) +{ +} + +#endif /* FEATURE_drawpix */ + + +#endif /* DRAWPIX_H */ diff --git a/mesalib/src/mesa/main/enums.c b/mesalib/src/mesa/main/enums.c index a8962a78a..fb5ed2922 100644 --- a/mesalib/src/mesa/main/enums.c +++ b/mesalib/src/mesa/main/enums.c @@ -495,51 +495,67 @@ LONGSTRING static const char enum_string_table[] = "GL_DRAW_BUFFER0\0" "GL_DRAW_BUFFER0_ARB\0" "GL_DRAW_BUFFER0_ATI\0" + "GL_DRAW_BUFFER0_NV\0" "GL_DRAW_BUFFER1\0" "GL_DRAW_BUFFER10\0" "GL_DRAW_BUFFER10_ARB\0" "GL_DRAW_BUFFER10_ATI\0" + "GL_DRAW_BUFFER10_NV\0" "GL_DRAW_BUFFER11\0" "GL_DRAW_BUFFER11_ARB\0" "GL_DRAW_BUFFER11_ATI\0" + "GL_DRAW_BUFFER11_NV\0" "GL_DRAW_BUFFER12\0" "GL_DRAW_BUFFER12_ARB\0" "GL_DRAW_BUFFER12_ATI\0" + "GL_DRAW_BUFFER12_NV\0" "GL_DRAW_BUFFER13\0" "GL_DRAW_BUFFER13_ARB\0" "GL_DRAW_BUFFER13_ATI\0" + "GL_DRAW_BUFFER13_NV\0" "GL_DRAW_BUFFER14\0" "GL_DRAW_BUFFER14_ARB\0" "GL_DRAW_BUFFER14_ATI\0" + "GL_DRAW_BUFFER14_NV\0" "GL_DRAW_BUFFER15\0" "GL_DRAW_BUFFER15_ARB\0" "GL_DRAW_BUFFER15_ATI\0" + "GL_DRAW_BUFFER15_NV\0" "GL_DRAW_BUFFER1_ARB\0" "GL_DRAW_BUFFER1_ATI\0" + "GL_DRAW_BUFFER1_NV\0" "GL_DRAW_BUFFER2\0" "GL_DRAW_BUFFER2_ARB\0" "GL_DRAW_BUFFER2_ATI\0" + "GL_DRAW_BUFFER2_NV\0" "GL_DRAW_BUFFER3\0" "GL_DRAW_BUFFER3_ARB\0" "GL_DRAW_BUFFER3_ATI\0" + "GL_DRAW_BUFFER3_NV\0" "GL_DRAW_BUFFER4\0" "GL_DRAW_BUFFER4_ARB\0" "GL_DRAW_BUFFER4_ATI\0" + "GL_DRAW_BUFFER4_NV\0" "GL_DRAW_BUFFER5\0" "GL_DRAW_BUFFER5_ARB\0" "GL_DRAW_BUFFER5_ATI\0" + "GL_DRAW_BUFFER5_NV\0" "GL_DRAW_BUFFER6\0" "GL_DRAW_BUFFER6_ARB\0" "GL_DRAW_BUFFER6_ATI\0" + "GL_DRAW_BUFFER6_NV\0" "GL_DRAW_BUFFER7\0" "GL_DRAW_BUFFER7_ARB\0" "GL_DRAW_BUFFER7_ATI\0" + "GL_DRAW_BUFFER7_NV\0" "GL_DRAW_BUFFER8\0" "GL_DRAW_BUFFER8_ARB\0" "GL_DRAW_BUFFER8_ATI\0" + "GL_DRAW_BUFFER8_NV\0" "GL_DRAW_BUFFER9\0" "GL_DRAW_BUFFER9_ARB\0" "GL_DRAW_BUFFER9_ATI\0" + "GL_DRAW_BUFFER9_NV\0" "GL_DRAW_FRAMEBUFFER\0" "GL_DRAW_FRAMEBUFFER_BINDING\0" "GL_DRAW_FRAMEBUFFER_BINDING_EXT\0" @@ -1082,6 +1098,7 @@ LONGSTRING static const char enum_string_table[] = "GL_MAX_DRAW_BUFFERS\0" "GL_MAX_DRAW_BUFFERS_ARB\0" "GL_MAX_DRAW_BUFFERS_ATI\0" + "GL_MAX_DRAW_BUFFERS_NV\0" "GL_MAX_ELEMENTS_INDICES\0" "GL_MAX_ELEMENTS_VERTICES\0" "GL_MAX_EVAL_ORDER\0" @@ -2357,7 +2374,7 @@ LONGSTRING static const char enum_string_table[] = "GL_ZOOM_Y\0" ; -static const enum_elt all_enums[2318] = +static const enum_elt all_enums[2335] = { { 0, 0x00000600 }, /* GL_2D */ { 6, 0x00001407 }, /* GL_2_BYTES */ @@ -2817,1949 +2834,1966 @@ static const enum_elt all_enums[2318] = { 9383, 0x00008825 }, /* GL_DRAW_BUFFER0 */ { 9399, 0x00008825 }, /* GL_DRAW_BUFFER0_ARB */ { 9419, 0x00008825 }, /* GL_DRAW_BUFFER0_ATI */ - { 9439, 0x00008826 }, /* GL_DRAW_BUFFER1 */ - { 9455, 0x0000882F }, /* GL_DRAW_BUFFER10 */ - { 9472, 0x0000882F }, /* GL_DRAW_BUFFER10_ARB */ - { 9493, 0x0000882F }, /* GL_DRAW_BUFFER10_ATI */ - { 9514, 0x00008830 }, /* GL_DRAW_BUFFER11 */ - { 9531, 0x00008830 }, /* GL_DRAW_BUFFER11_ARB */ - { 9552, 0x00008830 }, /* GL_DRAW_BUFFER11_ATI */ - { 9573, 0x00008831 }, /* GL_DRAW_BUFFER12 */ - { 9590, 0x00008831 }, /* GL_DRAW_BUFFER12_ARB */ - { 9611, 0x00008831 }, /* GL_DRAW_BUFFER12_ATI */ - { 9632, 0x00008832 }, /* GL_DRAW_BUFFER13 */ - { 9649, 0x00008832 }, /* GL_DRAW_BUFFER13_ARB */ - { 9670, 0x00008832 }, /* GL_DRAW_BUFFER13_ATI */ - { 9691, 0x00008833 }, /* GL_DRAW_BUFFER14 */ - { 9708, 0x00008833 }, /* GL_DRAW_BUFFER14_ARB */ - { 9729, 0x00008833 }, /* GL_DRAW_BUFFER14_ATI */ - { 9750, 0x00008834 }, /* GL_DRAW_BUFFER15 */ - { 9767, 0x00008834 }, /* GL_DRAW_BUFFER15_ARB */ - { 9788, 0x00008834 }, /* GL_DRAW_BUFFER15_ATI */ - { 9809, 0x00008826 }, /* GL_DRAW_BUFFER1_ARB */ - { 9829, 0x00008826 }, /* GL_DRAW_BUFFER1_ATI */ - { 9849, 0x00008827 }, /* GL_DRAW_BUFFER2 */ - { 9865, 0x00008827 }, /* GL_DRAW_BUFFER2_ARB */ - { 9885, 0x00008827 }, /* GL_DRAW_BUFFER2_ATI */ - { 9905, 0x00008828 }, /* GL_DRAW_BUFFER3 */ - { 9921, 0x00008828 }, /* GL_DRAW_BUFFER3_ARB */ - { 9941, 0x00008828 }, /* GL_DRAW_BUFFER3_ATI */ - { 9961, 0x00008829 }, /* GL_DRAW_BUFFER4 */ - { 9977, 0x00008829 }, /* GL_DRAW_BUFFER4_ARB */ - { 9997, 0x00008829 }, /* GL_DRAW_BUFFER4_ATI */ - { 10017, 0x0000882A }, /* GL_DRAW_BUFFER5 */ - { 10033, 0x0000882A }, /* GL_DRAW_BUFFER5_ARB */ - { 10053, 0x0000882A }, /* GL_DRAW_BUFFER5_ATI */ - { 10073, 0x0000882B }, /* GL_DRAW_BUFFER6 */ - { 10089, 0x0000882B }, /* GL_DRAW_BUFFER6_ARB */ - { 10109, 0x0000882B }, /* GL_DRAW_BUFFER6_ATI */ - { 10129, 0x0000882C }, /* GL_DRAW_BUFFER7 */ - { 10145, 0x0000882C }, /* GL_DRAW_BUFFER7_ARB */ - { 10165, 0x0000882C }, /* GL_DRAW_BUFFER7_ATI */ - { 10185, 0x0000882D }, /* GL_DRAW_BUFFER8 */ - { 10201, 0x0000882D }, /* GL_DRAW_BUFFER8_ARB */ - { 10221, 0x0000882D }, /* GL_DRAW_BUFFER8_ATI */ - { 10241, 0x0000882E }, /* GL_DRAW_BUFFER9 */ - { 10257, 0x0000882E }, /* GL_DRAW_BUFFER9_ARB */ - { 10277, 0x0000882E }, /* GL_DRAW_BUFFER9_ATI */ - { 10297, 0x00008CA9 }, /* GL_DRAW_FRAMEBUFFER */ - { 10317, 0x00008CA6 }, /* GL_DRAW_FRAMEBUFFER_BINDING */ - { 10345, 0x00008CA6 }, /* GL_DRAW_FRAMEBUFFER_BINDING_EXT */ - { 10377, 0x00008CA9 }, /* GL_DRAW_FRAMEBUFFER_EXT */ - { 10401, 0x00000705 }, /* GL_DRAW_PIXEL_TOKEN */ - { 10421, 0x00000304 }, /* GL_DST_ALPHA */ - { 10434, 0x00000306 }, /* GL_DST_COLOR */ - { 10447, 0x0000877A }, /* GL_DU8DV8_ATI */ - { 10461, 0x00008779 }, /* GL_DUDV_ATI */ - { 10473, 0x000088EA }, /* GL_DYNAMIC_COPY */ - { 10489, 0x000088EA }, /* GL_DYNAMIC_COPY_ARB */ - { 10509, 0x000088E8 }, /* GL_DYNAMIC_DRAW */ - { 10525, 0x000088E8 }, /* GL_DYNAMIC_DRAW_ARB */ - { 10545, 0x000088E9 }, /* GL_DYNAMIC_READ */ - { 10561, 0x000088E9 }, /* GL_DYNAMIC_READ_ARB */ - { 10581, 0x00000B43 }, /* GL_EDGE_FLAG */ - { 10594, 0x00008079 }, /* GL_EDGE_FLAG_ARRAY */ - { 10613, 0x0000889B }, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING */ - { 10647, 0x0000889B }, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB */ - { 10685, 0x00008093 }, /* GL_EDGE_FLAG_ARRAY_POINTER */ - { 10712, 0x0000808C }, /* GL_EDGE_FLAG_ARRAY_STRIDE */ - { 10738, 0x00008893 }, /* GL_ELEMENT_ARRAY_BUFFER */ - { 10762, 0x00008895 }, /* GL_ELEMENT_ARRAY_BUFFER_BINDING */ - { 10794, 0x00008895 }, /* GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB */ - { 10830, 0x00001600 }, /* GL_EMISSION */ - { 10842, 0x00002000 }, /* GL_ENABLE_BIT */ - { 10856, 0x00000202 }, /* GL_EQUAL */ - { 10865, 0x00001509 }, /* GL_EQUIV */ - { 10874, 0x00010000 }, /* GL_EVAL_BIT */ - { 10886, 0x00000800 }, /* GL_EXP */ - { 10893, 0x00000801 }, /* GL_EXP2 */ - { 10901, 0x00001F03 }, /* GL_EXTENSIONS */ - { 10915, 0x00002400 }, /* GL_EYE_LINEAR */ - { 10929, 0x00002502 }, /* GL_EYE_PLANE */ - { 10942, 0x0000855C }, /* GL_EYE_PLANE_ABSOLUTE_NV */ - { 10967, 0x0000855B }, /* GL_EYE_RADIAL_NV */ - { 10984, 0x00000000 }, /* GL_FALSE */ - { 10993, 0x00001101 }, /* GL_FASTEST */ - { 11004, 0x00001C01 }, /* GL_FEEDBACK */ - { 11016, 0x00000DF0 }, /* GL_FEEDBACK_BUFFER_POINTER */ - { 11043, 0x00000DF1 }, /* GL_FEEDBACK_BUFFER_SIZE */ - { 11067, 0x00000DF2 }, /* GL_FEEDBACK_BUFFER_TYPE */ - { 11091, 0x00001B02 }, /* GL_FILL */ - { 11099, 0x00008E4D }, /* GL_FIRST_VERTEX_CONVENTION */ - { 11126, 0x00008E4D }, /* GL_FIRST_VERTEX_CONVENTION_EXT */ - { 11157, 0x0000140C }, /* GL_FIXED */ - { 11166, 0x0000140C }, /* GL_FIXED_OES */ - { 11179, 0x0000891D }, /* GL_FIXED_ONLY */ - { 11193, 0x0000891D }, /* GL_FIXED_ONLY_ARB */ - { 11211, 0x00001D00 }, /* GL_FLAT */ - { 11219, 0x00001406 }, /* GL_FLOAT */ - { 11228, 0x00008B5A }, /* GL_FLOAT_MAT2 */ - { 11242, 0x00008B5A }, /* GL_FLOAT_MAT2_ARB */ - { 11260, 0x00008B65 }, /* GL_FLOAT_MAT2x3 */ - { 11276, 0x00008B66 }, /* GL_FLOAT_MAT2x4 */ - { 11292, 0x00008B5B }, /* GL_FLOAT_MAT3 */ - { 11306, 0x00008B5B }, /* GL_FLOAT_MAT3_ARB */ - { 11324, 0x00008B67 }, /* GL_FLOAT_MAT3x2 */ - { 11340, 0x00008B68 }, /* GL_FLOAT_MAT3x4 */ - { 11356, 0x00008B5C }, /* GL_FLOAT_MAT4 */ - { 11370, 0x00008B5C }, /* GL_FLOAT_MAT4_ARB */ - { 11388, 0x00008B69 }, /* GL_FLOAT_MAT4x2 */ - { 11404, 0x00008B6A }, /* GL_FLOAT_MAT4x3 */ - { 11420, 0x00008B50 }, /* GL_FLOAT_VEC2 */ - { 11434, 0x00008B50 }, /* GL_FLOAT_VEC2_ARB */ - { 11452, 0x00008B51 }, /* GL_FLOAT_VEC3 */ - { 11466, 0x00008B51 }, /* GL_FLOAT_VEC3_ARB */ - { 11484, 0x00008B52 }, /* GL_FLOAT_VEC4 */ - { 11498, 0x00008B52 }, /* GL_FLOAT_VEC4_ARB */ - { 11516, 0x00000B60 }, /* GL_FOG */ - { 11523, 0x00000080 }, /* GL_FOG_BIT */ - { 11534, 0x00000B66 }, /* GL_FOG_COLOR */ - { 11547, 0x00008451 }, /* GL_FOG_COORD */ - { 11560, 0x00008451 }, /* GL_FOG_COORDINATE */ - { 11578, 0x00008457 }, /* GL_FOG_COORDINATE_ARRAY */ - { 11602, 0x0000889D }, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING */ - { 11641, 0x0000889D }, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB */ - { 11684, 0x00008456 }, /* GL_FOG_COORDINATE_ARRAY_POINTER */ - { 11716, 0x00008455 }, /* GL_FOG_COORDINATE_ARRAY_STRIDE */ - { 11747, 0x00008454 }, /* GL_FOG_COORDINATE_ARRAY_TYPE */ - { 11776, 0x00008450 }, /* GL_FOG_COORDINATE_SOURCE */ - { 11801, 0x00008457 }, /* GL_FOG_COORD_ARRAY */ - { 11820, 0x0000889D }, /* GL_FOG_COORD_ARRAY_BUFFER_BINDING */ - { 11854, 0x00008456 }, /* GL_FOG_COORD_ARRAY_POINTER */ - { 11881, 0x00008455 }, /* GL_FOG_COORD_ARRAY_STRIDE */ - { 11907, 0x00008454 }, /* GL_FOG_COORD_ARRAY_TYPE */ - { 11931, 0x00008450 }, /* GL_FOG_COORD_SRC */ - { 11948, 0x00000B62 }, /* GL_FOG_DENSITY */ - { 11963, 0x0000855A }, /* GL_FOG_DISTANCE_MODE_NV */ - { 11987, 0x00000B64 }, /* GL_FOG_END */ - { 11998, 0x00000C54 }, /* GL_FOG_HINT */ - { 12010, 0x00000B61 }, /* GL_FOG_INDEX */ - { 12023, 0x00000B65 }, /* GL_FOG_MODE */ - { 12035, 0x00008198 }, /* GL_FOG_OFFSET_SGIX */ - { 12054, 0x00008199 }, /* GL_FOG_OFFSET_VALUE_SGIX */ - { 12079, 0x00000B63 }, /* GL_FOG_START */ - { 12092, 0x00008452 }, /* GL_FRAGMENT_DEPTH */ - { 12110, 0x00008804 }, /* GL_FRAGMENT_PROGRAM_ARB */ - { 12134, 0x00008B30 }, /* GL_FRAGMENT_SHADER */ - { 12153, 0x00008B30 }, /* GL_FRAGMENT_SHADER_ARB */ - { 12176, 0x00008B8B }, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */ - { 12211, 0x00008B8B }, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES */ - { 12250, 0x00008D40 }, /* GL_FRAMEBUFFER */ - { 12265, 0x00008215 }, /* GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE */ - { 12302, 0x00008214 }, /* GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE */ - { 12338, 0x00008210 }, /* GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING */ - { 12379, 0x00008211 }, /* GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE */ - { 12420, 0x00008216 }, /* GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE */ - { 12457, 0x00008213 }, /* GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE */ - { 12494, 0x00008DA7 }, /* GL_FRAMEBUFFER_ATTACHMENT_LAYERED */ - { 12528, 0x00008DA7 }, /* GL_FRAMEBUFFER_ATTACHMENT_LAYERED_ARB */ - { 12566, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME */ - { 12604, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT */ - { 12646, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES */ - { 12688, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE */ - { 12726, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT */ - { 12768, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES */ - { 12810, 0x00008212 }, /* GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE */ - { 12845, 0x00008217 }, /* GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE */ - { 12884, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT */ - { 12933, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES */ - { 12982, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE */ - { 13030, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT */ - { 13082, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES */ - { 13134, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER */ - { 13174, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT */ - { 13218, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL */ - { 13258, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT */ - { 13302, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES */ - { 13346, 0x00008CA6 }, /* GL_FRAMEBUFFER_BINDING */ - { 13369, 0x00008CA6 }, /* GL_FRAMEBUFFER_BINDING_EXT */ - { 13396, 0x00008CA6 }, /* GL_FRAMEBUFFER_BINDING_OES */ - { 13423, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE */ - { 13447, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE_EXT */ - { 13475, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE_OES */ - { 13503, 0x00008218 }, /* GL_FRAMEBUFFER_DEFAULT */ - { 13526, 0x00008D40 }, /* GL_FRAMEBUFFER_EXT */ - { 13545, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT */ - { 13582, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT */ - { 13623, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES */ - { 13664, 0x00008CD9 }, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS */ - { 13701, 0x00008CD9 }, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT */ - { 13742, 0x00008CD9 }, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES */ - { 13783, 0x00008CDB }, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER */ - { 13821, 0x00008CDB }, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT */ - { 13863, 0x00008CDB }, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_OES */ - { 13905, 0x00008CD8 }, /* GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT */ - { 13956, 0x00008CDA }, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT */ - { 13994, 0x00008CDA }, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES */ - { 14032, 0x00008DA9 }, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB */ - { 14074, 0x00008DA8 }, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS */ - { 14114, 0x00008DA8 }, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_ARB */ - { 14158, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT */ - { 14203, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT */ - { 14252, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES */ - { 14301, 0x00008D56 }, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE */ - { 14339, 0x00008D56 }, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT */ - { 14381, 0x00008CDC }, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER */ - { 14419, 0x00008CDC }, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT */ - { 14461, 0x00008CDC }, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_OES */ - { 14503, 0x00008D40 }, /* GL_FRAMEBUFFER_OES */ - { 14522, 0x00008CDE }, /* GL_FRAMEBUFFER_STATUS_ERROR_EXT */ - { 14554, 0x00008219 }, /* GL_FRAMEBUFFER_UNDEFINED */ - { 14579, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED */ - { 14606, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED_EXT */ - { 14637, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED_OES */ - { 14668, 0x00000404 }, /* GL_FRONT */ - { 14677, 0x00000408 }, /* GL_FRONT_AND_BACK */ - { 14695, 0x00000B46 }, /* GL_FRONT_FACE */ - { 14709, 0x00000400 }, /* GL_FRONT_LEFT */ - { 14723, 0x00000401 }, /* GL_FRONT_RIGHT */ - { 14738, 0x00008006 }, /* GL_FUNC_ADD */ - { 14750, 0x00008006 }, /* GL_FUNC_ADD_EXT */ - { 14766, 0x00008006 }, /* GL_FUNC_ADD_OES */ - { 14782, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT */ - { 14807, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT_EXT */ - { 14836, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT_OES */ - { 14865, 0x0000800A }, /* GL_FUNC_SUBTRACT */ - { 14882, 0x0000800A }, /* GL_FUNC_SUBTRACT_EXT */ - { 14903, 0x0000800A }, /* GL_FUNC_SUBTRACT_OES */ - { 14924, 0x00008191 }, /* GL_GENERATE_MIPMAP */ - { 14943, 0x00008192 }, /* GL_GENERATE_MIPMAP_HINT */ - { 14967, 0x00008192 }, /* GL_GENERATE_MIPMAP_HINT_SGIS */ - { 14996, 0x00008191 }, /* GL_GENERATE_MIPMAP_SGIS */ - { 15020, 0x00008917 }, /* GL_GEOMETRY_INPUT_TYPE */ - { 15043, 0x00008DDB }, /* GL_GEOMETRY_INPUT_TYPE_ARB */ - { 15070, 0x00008918 }, /* GL_GEOMETRY_OUTPUT_TYPE */ - { 15094, 0x00008DDC }, /* GL_GEOMETRY_OUTPUT_TYPE_ARB */ - { 15122, 0x00008DD9 }, /* GL_GEOMETRY_SHADER */ - { 15141, 0x00008DD9 }, /* GL_GEOMETRY_SHADER_ARB */ - { 15164, 0x00008916 }, /* GL_GEOMETRY_VERTICES_OUT */ - { 15189, 0x00008DDA }, /* GL_GEOMETRY_VERTICES_OUT_ARB */ - { 15218, 0x00000206 }, /* GL_GEQUAL */ - { 15228, 0x00000204 }, /* GL_GREATER */ - { 15239, 0x00001904 }, /* GL_GREEN */ - { 15248, 0x00000D19 }, /* GL_GREEN_BIAS */ - { 15262, 0x00000D53 }, /* GL_GREEN_BITS */ - { 15276, 0x00008D95 }, /* GL_GREEN_INTEGER */ - { 15293, 0x00008D95 }, /* GL_GREEN_INTEGER_EXT */ - { 15314, 0x00000D18 }, /* GL_GREEN_SCALE */ - { 15329, 0x00008253 }, /* GL_GUILTY_CONTEXT_RESET_ARB */ - { 15357, 0x0000140B }, /* GL_HALF_FLOAT */ - { 15371, 0x00008D61 }, /* GL_HALF_FLOAT_OES */ - { 15389, 0x00008DF2 }, /* GL_HIGH_FLOAT */ - { 15403, 0x00008DF5 }, /* GL_HIGH_INT */ - { 15415, 0x00008000 }, /* GL_HINT_BIT */ - { 15427, 0x00008024 }, /* GL_HISTOGRAM */ - { 15440, 0x0000802B }, /* GL_HISTOGRAM_ALPHA_SIZE */ - { 15464, 0x0000802B }, /* GL_HISTOGRAM_ALPHA_SIZE_EXT */ - { 15492, 0x0000802A }, /* GL_HISTOGRAM_BLUE_SIZE */ - { 15515, 0x0000802A }, /* GL_HISTOGRAM_BLUE_SIZE_EXT */ - { 15542, 0x00008024 }, /* GL_HISTOGRAM_EXT */ - { 15559, 0x00008027 }, /* GL_HISTOGRAM_FORMAT */ - { 15579, 0x00008027 }, /* GL_HISTOGRAM_FORMAT_EXT */ - { 15603, 0x00008029 }, /* GL_HISTOGRAM_GREEN_SIZE */ - { 15627, 0x00008029 }, /* GL_HISTOGRAM_GREEN_SIZE_EXT */ - { 15655, 0x0000802C }, /* GL_HISTOGRAM_LUMINANCE_SIZE */ - { 15683, 0x0000802C }, /* GL_HISTOGRAM_LUMINANCE_SIZE_EXT */ - { 15715, 0x00008028 }, /* GL_HISTOGRAM_RED_SIZE */ - { 15737, 0x00008028 }, /* GL_HISTOGRAM_RED_SIZE_EXT */ - { 15763, 0x0000802D }, /* GL_HISTOGRAM_SINK */ - { 15781, 0x0000802D }, /* GL_HISTOGRAM_SINK_EXT */ - { 15803, 0x00008026 }, /* GL_HISTOGRAM_WIDTH */ - { 15822, 0x00008026 }, /* GL_HISTOGRAM_WIDTH_EXT */ - { 15845, 0x0000862A }, /* GL_IDENTITY_NV */ - { 15860, 0x00008150 }, /* GL_IGNORE_BORDER_HP */ - { 15880, 0x00008B9B }, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT */ - { 15916, 0x00008B9B }, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES */ - { 15956, 0x00008B9A }, /* GL_IMPLEMENTATION_COLOR_READ_TYPE */ - { 15990, 0x00008B9A }, /* GL_IMPLEMENTATION_COLOR_READ_TYPE_OES */ - { 16028, 0x00001E02 }, /* GL_INCR */ - { 16036, 0x00008507 }, /* GL_INCR_WRAP */ - { 16049, 0x00008507 }, /* GL_INCR_WRAP_EXT */ - { 16066, 0x00008222 }, /* GL_INDEX */ - { 16075, 0x00008077 }, /* GL_INDEX_ARRAY */ - { 16090, 0x00008899 }, /* GL_INDEX_ARRAY_BUFFER_BINDING */ - { 16120, 0x00008899 }, /* GL_INDEX_ARRAY_BUFFER_BINDING_ARB */ - { 16154, 0x00008091 }, /* GL_INDEX_ARRAY_POINTER */ - { 16177, 0x00008086 }, /* GL_INDEX_ARRAY_STRIDE */ - { 16199, 0x00008085 }, /* GL_INDEX_ARRAY_TYPE */ - { 16219, 0x00000D51 }, /* GL_INDEX_BITS */ - { 16233, 0x00000C20 }, /* GL_INDEX_CLEAR_VALUE */ - { 16254, 0x00000BF1 }, /* GL_INDEX_LOGIC_OP */ - { 16272, 0x00000C30 }, /* GL_INDEX_MODE */ - { 16286, 0x00000D13 }, /* GL_INDEX_OFFSET */ - { 16302, 0x00000D12 }, /* GL_INDEX_SHIFT */ - { 16317, 0x00000C21 }, /* GL_INDEX_WRITEMASK */ - { 16336, 0x00008B84 }, /* GL_INFO_LOG_LENGTH */ - { 16355, 0x00008254 }, /* GL_INNOCENT_CONTEXT_RESET_ARB */ - { 16385, 0x00001404 }, /* GL_INT */ - { 16392, 0x00008049 }, /* GL_INTENSITY */ - { 16405, 0x0000804C }, /* GL_INTENSITY12 */ - { 16420, 0x0000804C }, /* GL_INTENSITY12_EXT */ - { 16439, 0x0000804D }, /* GL_INTENSITY16 */ - { 16454, 0x00008D8B }, /* GL_INTENSITY16I_EXT */ - { 16474, 0x00008D79 }, /* GL_INTENSITY16UI_EXT */ - { 16495, 0x0000804D }, /* GL_INTENSITY16_EXT */ - { 16514, 0x00008D85 }, /* GL_INTENSITY32I_EXT */ - { 16534, 0x00008D73 }, /* GL_INTENSITY32UI_EXT */ - { 16555, 0x0000804A }, /* GL_INTENSITY4 */ - { 16569, 0x0000804A }, /* GL_INTENSITY4_EXT */ - { 16587, 0x0000804B }, /* GL_INTENSITY8 */ - { 16601, 0x00008D91 }, /* GL_INTENSITY8I_EXT */ - { 16620, 0x00008D7F }, /* GL_INTENSITY8UI_EXT */ - { 16640, 0x0000804B }, /* GL_INTENSITY8_EXT */ - { 16658, 0x00008049 }, /* GL_INTENSITY_EXT */ - { 16675, 0x00008C8C }, /* GL_INTERLEAVED_ATTRIBS */ - { 16698, 0x00008C8C }, /* GL_INTERLEAVED_ATTRIBS_EXT */ - { 16725, 0x00008575 }, /* GL_INTERPOLATE */ - { 16740, 0x00008575 }, /* GL_INTERPOLATE_ARB */ - { 16759, 0x00008575 }, /* GL_INTERPOLATE_EXT */ - { 16778, 0x00008DF7 }, /* GL_INT_10_10_10_2_OES */ - { 16800, 0x00008D9F }, /* GL_INT_2_10_10_10_REV */ - { 16822, 0x00008DC9 }, /* GL_INT_SAMPLER_1D */ - { 16840, 0x00008DCE }, /* GL_INT_SAMPLER_1D_ARRAY */ - { 16864, 0x00008DCE }, /* GL_INT_SAMPLER_1D_ARRAY_EXT */ - { 16892, 0x00008DC9 }, /* GL_INT_SAMPLER_1D_EXT */ - { 16914, 0x00008DCA }, /* GL_INT_SAMPLER_2D */ - { 16932, 0x00008DCF }, /* GL_INT_SAMPLER_2D_ARRAY */ - { 16956, 0x00008DCF }, /* GL_INT_SAMPLER_2D_ARRAY_EXT */ - { 16984, 0x00008DCA }, /* GL_INT_SAMPLER_2D_EXT */ - { 17006, 0x00008DCD }, /* GL_INT_SAMPLER_2D_RECT */ - { 17029, 0x00008DCD }, /* GL_INT_SAMPLER_2D_RECT_EXT */ - { 17056, 0x00008DCB }, /* GL_INT_SAMPLER_3D */ - { 17074, 0x00008DCB }, /* GL_INT_SAMPLER_3D_EXT */ - { 17096, 0x00008DD0 }, /* GL_INT_SAMPLER_BUFFER */ - { 17118, 0x00008DD0 }, /* GL_INT_SAMPLER_BUFFER_EXT */ - { 17144, 0x00008DCC }, /* GL_INT_SAMPLER_CUBE */ - { 17164, 0x00008DCC }, /* GL_INT_SAMPLER_CUBE_EXT */ - { 17188, 0x00008B53 }, /* GL_INT_VEC2 */ - { 17200, 0x00008B53 }, /* GL_INT_VEC2_ARB */ - { 17216, 0x00008B54 }, /* GL_INT_VEC3 */ - { 17228, 0x00008B54 }, /* GL_INT_VEC3_ARB */ - { 17244, 0x00008B55 }, /* GL_INT_VEC4 */ - { 17256, 0x00008B55 }, /* GL_INT_VEC4_ARB */ - { 17272, 0x00000500 }, /* GL_INVALID_ENUM */ - { 17288, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION */ - { 17321, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION_EXT */ - { 17358, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION_OES */ - { 17395, 0x00000502 }, /* GL_INVALID_OPERATION */ - { 17416, 0x00000501 }, /* GL_INVALID_VALUE */ - { 17433, 0x0000862B }, /* GL_INVERSE_NV */ - { 17447, 0x0000862D }, /* GL_INVERSE_TRANSPOSE_NV */ - { 17471, 0x0000150A }, /* GL_INVERT */ - { 17481, 0x00001E00 }, /* GL_KEEP */ - { 17489, 0x00008E4E }, /* GL_LAST_VERTEX_CONVENTION */ - { 17515, 0x00008E4E }, /* GL_LAST_VERTEX_CONVENTION_EXT */ - { 17545, 0x00000406 }, /* GL_LEFT */ - { 17553, 0x00000203 }, /* GL_LEQUAL */ - { 17563, 0x00000201 }, /* GL_LESS */ - { 17571, 0x00004000 }, /* GL_LIGHT0 */ - { 17581, 0x00004001 }, /* GL_LIGHT1 */ - { 17591, 0x00004002 }, /* GL_LIGHT2 */ - { 17601, 0x00004003 }, /* GL_LIGHT3 */ - { 17611, 0x00004004 }, /* GL_LIGHT4 */ - { 17621, 0x00004005 }, /* GL_LIGHT5 */ - { 17631, 0x00004006 }, /* GL_LIGHT6 */ - { 17641, 0x00004007 }, /* GL_LIGHT7 */ - { 17651, 0x00000B50 }, /* GL_LIGHTING */ - { 17663, 0x00000040 }, /* GL_LIGHTING_BIT */ - { 17679, 0x00000B53 }, /* GL_LIGHT_MODEL_AMBIENT */ - { 17702, 0x000081F8 }, /* GL_LIGHT_MODEL_COLOR_CONTROL */ - { 17731, 0x000081F8 }, /* GL_LIGHT_MODEL_COLOR_CONTROL_EXT */ - { 17764, 0x00000B51 }, /* GL_LIGHT_MODEL_LOCAL_VIEWER */ - { 17792, 0x00000B52 }, /* GL_LIGHT_MODEL_TWO_SIDE */ - { 17816, 0x00001B01 }, /* GL_LINE */ - { 17824, 0x00002601 }, /* GL_LINEAR */ - { 17834, 0x00001208 }, /* GL_LINEAR_ATTENUATION */ - { 17856, 0x00008170 }, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */ - { 17886, 0x0000844F }, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */ - { 17917, 0x00002703 }, /* GL_LINEAR_MIPMAP_LINEAR */ - { 17941, 0x00002701 }, /* GL_LINEAR_MIPMAP_NEAREST */ - { 17966, 0x00000001 }, /* GL_LINES */ - { 17975, 0x0000000A }, /* GL_LINES_ADJACENCY */ - { 17994, 0x0000000A }, /* GL_LINES_ADJACENCY_ARB */ - { 18017, 0x00000004 }, /* GL_LINE_BIT */ - { 18029, 0x00000002 }, /* GL_LINE_LOOP */ - { 18042, 0x00000707 }, /* GL_LINE_RESET_TOKEN */ - { 18062, 0x00000B20 }, /* GL_LINE_SMOOTH */ - { 18077, 0x00000C52 }, /* GL_LINE_SMOOTH_HINT */ - { 18097, 0x00000B24 }, /* GL_LINE_STIPPLE */ - { 18113, 0x00000B25 }, /* GL_LINE_STIPPLE_PATTERN */ - { 18137, 0x00000B26 }, /* GL_LINE_STIPPLE_REPEAT */ - { 18160, 0x00000003 }, /* GL_LINE_STRIP */ - { 18174, 0x0000000B }, /* GL_LINE_STRIP_ADJACENCY */ - { 18198, 0x0000000B }, /* GL_LINE_STRIP_ADJACENCY_ARB */ - { 18226, 0x00000702 }, /* GL_LINE_TOKEN */ - { 18240, 0x00000B21 }, /* GL_LINE_WIDTH */ - { 18254, 0x00000B23 }, /* GL_LINE_WIDTH_GRANULARITY */ - { 18280, 0x00000B22 }, /* GL_LINE_WIDTH_RANGE */ - { 18300, 0x00008B82 }, /* GL_LINK_STATUS */ - { 18315, 0x00000B32 }, /* GL_LIST_BASE */ - { 18328, 0x00020000 }, /* GL_LIST_BIT */ - { 18340, 0x00000B33 }, /* GL_LIST_INDEX */ - { 18354, 0x00000B30 }, /* GL_LIST_MODE */ - { 18367, 0x00000101 }, /* GL_LOAD */ - { 18375, 0x00000BF1 }, /* GL_LOGIC_OP */ - { 18387, 0x00000BF0 }, /* GL_LOGIC_OP_MODE */ - { 18404, 0x00008252 }, /* GL_LOSE_CONTEXT_ON_RESET_ARB */ - { 18433, 0x00008CA1 }, /* GL_LOWER_LEFT */ - { 18447, 0x00008DF0 }, /* GL_LOW_FLOAT */ - { 18460, 0x00008DF3 }, /* GL_LOW_INT */ - { 18471, 0x00001909 }, /* GL_LUMINANCE */ - { 18484, 0x00008041 }, /* GL_LUMINANCE12 */ - { 18499, 0x00008047 }, /* GL_LUMINANCE12_ALPHA12 */ - { 18522, 0x00008047 }, /* GL_LUMINANCE12_ALPHA12_EXT */ - { 18549, 0x00008046 }, /* GL_LUMINANCE12_ALPHA4 */ - { 18571, 0x00008046 }, /* GL_LUMINANCE12_ALPHA4_EXT */ - { 18597, 0x00008041 }, /* GL_LUMINANCE12_EXT */ - { 18616, 0x00008042 }, /* GL_LUMINANCE16 */ - { 18631, 0x00008D8C }, /* GL_LUMINANCE16I_EXT */ - { 18651, 0x00008D7A }, /* GL_LUMINANCE16UI_EXT */ - { 18672, 0x00008048 }, /* GL_LUMINANCE16_ALPHA16 */ - { 18695, 0x00008048 }, /* GL_LUMINANCE16_ALPHA16_EXT */ - { 18722, 0x00008042 }, /* GL_LUMINANCE16_EXT */ - { 18741, 0x00008D86 }, /* GL_LUMINANCE32I_EXT */ - { 18761, 0x00008D74 }, /* GL_LUMINANCE32UI_EXT */ - { 18782, 0x0000803F }, /* GL_LUMINANCE4 */ - { 18796, 0x00008043 }, /* GL_LUMINANCE4_ALPHA4 */ - { 18817, 0x00008043 }, /* GL_LUMINANCE4_ALPHA4_EXT */ - { 18842, 0x0000803F }, /* GL_LUMINANCE4_EXT */ - { 18860, 0x00008044 }, /* GL_LUMINANCE6_ALPHA2 */ - { 18881, 0x00008044 }, /* GL_LUMINANCE6_ALPHA2_EXT */ - { 18906, 0x00008040 }, /* GL_LUMINANCE8 */ - { 18920, 0x00008D92 }, /* GL_LUMINANCE8I_EXT */ - { 18939, 0x00008D80 }, /* GL_LUMINANCE8UI_EXT */ - { 18959, 0x00008045 }, /* GL_LUMINANCE8_ALPHA8 */ - { 18980, 0x00008045 }, /* GL_LUMINANCE8_ALPHA8_EXT */ - { 19005, 0x00008040 }, /* GL_LUMINANCE8_EXT */ - { 19023, 0x0000190A }, /* GL_LUMINANCE_ALPHA */ - { 19042, 0x00008D8D }, /* GL_LUMINANCE_ALPHA16I_EXT */ - { 19068, 0x00008D7B }, /* GL_LUMINANCE_ALPHA16UI_EXT */ - { 19095, 0x00008D87 }, /* GL_LUMINANCE_ALPHA32I_EXT */ - { 19121, 0x00008D75 }, /* GL_LUMINANCE_ALPHA32UI_EXT */ - { 19148, 0x00008D93 }, /* GL_LUMINANCE_ALPHA8I_EXT */ - { 19173, 0x00008D81 }, /* GL_LUMINANCE_ALPHA8UI_EXT */ - { 19199, 0x00008D9D }, /* GL_LUMINANCE_ALPHA_INTEGER_EXT */ - { 19230, 0x00008D9C }, /* GL_LUMINANCE_INTEGER_EXT */ - { 19255, 0x0000821B }, /* GL_MAJOR_VERSION */ - { 19272, 0x00000D90 }, /* GL_MAP1_COLOR_4 */ - { 19288, 0x00000DD0 }, /* GL_MAP1_GRID_DOMAIN */ - { 19308, 0x00000DD1 }, /* GL_MAP1_GRID_SEGMENTS */ - { 19330, 0x00000D91 }, /* GL_MAP1_INDEX */ - { 19344, 0x00000D92 }, /* GL_MAP1_NORMAL */ - { 19359, 0x00000D93 }, /* GL_MAP1_TEXTURE_COORD_1 */ - { 19383, 0x00000D94 }, /* GL_MAP1_TEXTURE_COORD_2 */ - { 19407, 0x00000D95 }, /* GL_MAP1_TEXTURE_COORD_3 */ - { 19431, 0x00000D96 }, /* GL_MAP1_TEXTURE_COORD_4 */ - { 19455, 0x00000D97 }, /* GL_MAP1_VERTEX_3 */ - { 19472, 0x00000D98 }, /* GL_MAP1_VERTEX_4 */ - { 19489, 0x00008660 }, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */ - { 19517, 0x0000866A }, /* GL_MAP1_VERTEX_ATTRIB10_4_NV */ - { 19546, 0x0000866B }, /* GL_MAP1_VERTEX_ATTRIB11_4_NV */ - { 19575, 0x0000866C }, /* GL_MAP1_VERTEX_ATTRIB12_4_NV */ - { 19604, 0x0000866D }, /* GL_MAP1_VERTEX_ATTRIB13_4_NV */ - { 19633, 0x0000866E }, /* GL_MAP1_VERTEX_ATTRIB14_4_NV */ - { 19662, 0x0000866F }, /* GL_MAP1_VERTEX_ATTRIB15_4_NV */ - { 19691, 0x00008661 }, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */ - { 19719, 0x00008662 }, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */ - { 19747, 0x00008663 }, /* GL_MAP1_VERTEX_ATTRIB3_4_NV */ - { 19775, 0x00008664 }, /* GL_MAP1_VERTEX_ATTRIB4_4_NV */ - { 19803, 0x00008665 }, /* GL_MAP1_VERTEX_ATTRIB5_4_NV */ - { 19831, 0x00008666 }, /* GL_MAP1_VERTEX_ATTRIB6_4_NV */ - { 19859, 0x00008667 }, /* GL_MAP1_VERTEX_ATTRIB7_4_NV */ - { 19887, 0x00008668 }, /* GL_MAP1_VERTEX_ATTRIB8_4_NV */ - { 19915, 0x00008669 }, /* GL_MAP1_VERTEX_ATTRIB9_4_NV */ - { 19943, 0x00000DB0 }, /* GL_MAP2_COLOR_4 */ - { 19959, 0x00000DD2 }, /* GL_MAP2_GRID_DOMAIN */ - { 19979, 0x00000DD3 }, /* GL_MAP2_GRID_SEGMENTS */ - { 20001, 0x00000DB1 }, /* GL_MAP2_INDEX */ - { 20015, 0x00000DB2 }, /* GL_MAP2_NORMAL */ - { 20030, 0x00000DB3 }, /* GL_MAP2_TEXTURE_COORD_1 */ - { 20054, 0x00000DB4 }, /* GL_MAP2_TEXTURE_COORD_2 */ - { 20078, 0x00000DB5 }, /* GL_MAP2_TEXTURE_COORD_3 */ - { 20102, 0x00000DB6 }, /* GL_MAP2_TEXTURE_COORD_4 */ - { 20126, 0x00000DB7 }, /* GL_MAP2_VERTEX_3 */ - { 20143, 0x00000DB8 }, /* GL_MAP2_VERTEX_4 */ - { 20160, 0x00008670 }, /* GL_MAP2_VERTEX_ATTRIB0_4_NV */ - { 20188, 0x0000867A }, /* GL_MAP2_VERTEX_ATTRIB10_4_NV */ - { 20217, 0x0000867B }, /* GL_MAP2_VERTEX_ATTRIB11_4_NV */ - { 20246, 0x0000867C }, /* GL_MAP2_VERTEX_ATTRIB12_4_NV */ - { 20275, 0x0000867D }, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */ - { 20304, 0x0000867E }, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */ - { 20333, 0x0000867F }, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */ - { 20362, 0x00008671 }, /* GL_MAP2_VERTEX_ATTRIB1_4_NV */ - { 20390, 0x00008672 }, /* GL_MAP2_VERTEX_ATTRIB2_4_NV */ - { 20418, 0x00008673 }, /* GL_MAP2_VERTEX_ATTRIB3_4_NV */ - { 20446, 0x00008674 }, /* GL_MAP2_VERTEX_ATTRIB4_4_NV */ - { 20474, 0x00008675 }, /* GL_MAP2_VERTEX_ATTRIB5_4_NV */ - { 20502, 0x00008676 }, /* GL_MAP2_VERTEX_ATTRIB6_4_NV */ - { 20530, 0x00008677 }, /* GL_MAP2_VERTEX_ATTRIB7_4_NV */ - { 20558, 0x00008678 }, /* GL_MAP2_VERTEX_ATTRIB8_4_NV */ - { 20586, 0x00008679 }, /* GL_MAP2_VERTEX_ATTRIB9_4_NV */ - { 20614, 0x00000D10 }, /* GL_MAP_COLOR */ - { 20627, 0x00000010 }, /* GL_MAP_FLUSH_EXPLICIT_BIT */ - { 20653, 0x00000008 }, /* GL_MAP_INVALIDATE_BUFFER_BIT */ - { 20682, 0x00000004 }, /* GL_MAP_INVALIDATE_RANGE_BIT */ - { 20710, 0x00000001 }, /* GL_MAP_READ_BIT */ - { 20726, 0x00000D11 }, /* GL_MAP_STENCIL */ - { 20741, 0x00000020 }, /* GL_MAP_UNSYNCHRONIZED_BIT */ - { 20767, 0x00000002 }, /* GL_MAP_WRITE_BIT */ - { 20784, 0x000088C0 }, /* GL_MATRIX0_ARB */ - { 20799, 0x00008630 }, /* GL_MATRIX0_NV */ - { 20813, 0x000088CA }, /* GL_MATRIX10_ARB */ - { 20829, 0x000088CB }, /* GL_MATRIX11_ARB */ - { 20845, 0x000088CC }, /* GL_MATRIX12_ARB */ - { 20861, 0x000088CD }, /* GL_MATRIX13_ARB */ - { 20877, 0x000088CE }, /* GL_MATRIX14_ARB */ - { 20893, 0x000088CF }, /* GL_MATRIX15_ARB */ - { 20909, 0x000088D0 }, /* GL_MATRIX16_ARB */ - { 20925, 0x000088D1 }, /* GL_MATRIX17_ARB */ - { 20941, 0x000088D2 }, /* GL_MATRIX18_ARB */ - { 20957, 0x000088D3 }, /* GL_MATRIX19_ARB */ - { 20973, 0x000088C1 }, /* GL_MATRIX1_ARB */ - { 20988, 0x00008631 }, /* GL_MATRIX1_NV */ - { 21002, 0x000088D4 }, /* GL_MATRIX20_ARB */ - { 21018, 0x000088D5 }, /* GL_MATRIX21_ARB */ - { 21034, 0x000088D6 }, /* GL_MATRIX22_ARB */ - { 21050, 0x000088D7 }, /* GL_MATRIX23_ARB */ - { 21066, 0x000088D8 }, /* GL_MATRIX24_ARB */ - { 21082, 0x000088D9 }, /* GL_MATRIX25_ARB */ - { 21098, 0x000088DA }, /* GL_MATRIX26_ARB */ - { 21114, 0x000088DB }, /* GL_MATRIX27_ARB */ - { 21130, 0x000088DC }, /* GL_MATRIX28_ARB */ - { 21146, 0x000088DD }, /* GL_MATRIX29_ARB */ - { 21162, 0x000088C2 }, /* GL_MATRIX2_ARB */ - { 21177, 0x00008632 }, /* GL_MATRIX2_NV */ - { 21191, 0x000088DE }, /* GL_MATRIX30_ARB */ - { 21207, 0x000088DF }, /* GL_MATRIX31_ARB */ - { 21223, 0x000088C3 }, /* GL_MATRIX3_ARB */ - { 21238, 0x00008633 }, /* GL_MATRIX3_NV */ - { 21252, 0x000088C4 }, /* GL_MATRIX4_ARB */ - { 21267, 0x00008634 }, /* GL_MATRIX4_NV */ - { 21281, 0x000088C5 }, /* GL_MATRIX5_ARB */ - { 21296, 0x00008635 }, /* GL_MATRIX5_NV */ - { 21310, 0x000088C6 }, /* GL_MATRIX6_ARB */ - { 21325, 0x00008636 }, /* GL_MATRIX6_NV */ - { 21339, 0x000088C7 }, /* GL_MATRIX7_ARB */ - { 21354, 0x00008637 }, /* GL_MATRIX7_NV */ - { 21368, 0x000088C8 }, /* GL_MATRIX8_ARB */ - { 21383, 0x000088C9 }, /* GL_MATRIX9_ARB */ - { 21398, 0x00008844 }, /* GL_MATRIX_INDEX_ARRAY_ARB */ - { 21424, 0x00008B9E }, /* GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES */ - { 21465, 0x00008844 }, /* GL_MATRIX_INDEX_ARRAY_OES */ - { 21491, 0x00008849 }, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */ - { 21525, 0x00008849 }, /* GL_MATRIX_INDEX_ARRAY_POINTER_OES */ - { 21559, 0x00008846 }, /* GL_MATRIX_INDEX_ARRAY_SIZE_ARB */ - { 21590, 0x00008846 }, /* GL_MATRIX_INDEX_ARRAY_SIZE_OES */ - { 21621, 0x00008848 }, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */ - { 21654, 0x00008848 }, /* GL_MATRIX_INDEX_ARRAY_STRIDE_OES */ - { 21687, 0x00008847 }, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */ - { 21718, 0x00008847 }, /* GL_MATRIX_INDEX_ARRAY_TYPE_OES */ - { 21749, 0x00000BA0 }, /* GL_MATRIX_MODE */ - { 21764, 0x00008840 }, /* GL_MATRIX_PALETTE_ARB */ - { 21786, 0x00008840 }, /* GL_MATRIX_PALETTE_OES */ - { 21808, 0x00008008 }, /* GL_MAX */ - { 21815, 0x00008073 }, /* GL_MAX_3D_TEXTURE_SIZE */ - { 21838, 0x00008073 }, /* GL_MAX_3D_TEXTURE_SIZE_OES */ - { 21865, 0x000088FF }, /* GL_MAX_ARRAY_TEXTURE_LAYERS */ - { 21893, 0x000088FF }, /* GL_MAX_ARRAY_TEXTURE_LAYERS_EXT */ - { 21925, 0x00000D35 }, /* GL_MAX_ATTRIB_STACK_DEPTH */ - { 21951, 0x00000D3B }, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */ - { 21984, 0x00008177 }, /* GL_MAX_CLIPMAP_DEPTH_SGIX */ - { 22010, 0x00008178 }, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */ - { 22044, 0x00000D32 }, /* GL_MAX_CLIP_DISTANCES */ - { 22066, 0x00000D32 }, /* GL_MAX_CLIP_PLANES */ - { 22085, 0x00008CDF }, /* GL_MAX_COLOR_ATTACHMENTS */ - { 22110, 0x00008CDF }, /* GL_MAX_COLOR_ATTACHMENTS_EXT */ - { 22139, 0x000080B3 }, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */ - { 22171, 0x000080B3 }, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI */ - { 22207, 0x00008B4D }, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */ - { 22243, 0x00008B4D }, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB */ - { 22283, 0x0000801B }, /* GL_MAX_CONVOLUTION_HEIGHT */ - { 22309, 0x0000801B }, /* GL_MAX_CONVOLUTION_HEIGHT_EXT */ - { 22339, 0x0000801A }, /* GL_MAX_CONVOLUTION_WIDTH */ - { 22364, 0x0000801A }, /* GL_MAX_CONVOLUTION_WIDTH_EXT */ - { 22393, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */ - { 22422, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB */ - { 22455, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE_OES */ - { 22488, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS */ - { 22508, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_ARB */ - { 22532, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_ATI */ - { 22556, 0x000080E9 }, /* GL_MAX_ELEMENTS_INDICES */ - { 22580, 0x000080E8 }, /* GL_MAX_ELEMENTS_VERTICES */ - { 22605, 0x00000D30 }, /* GL_MAX_EVAL_ORDER */ - { 22623, 0x00008008 }, /* GL_MAX_EXT */ - { 22634, 0x00009125 }, /* GL_MAX_FRAGMENT_INPUT_COMPONENTS */ - { 22667, 0x00008B49 }, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */ - { 22702, 0x00008B49 }, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB */ - { 22741, 0x00008DFD }, /* GL_MAX_FRAGMENT_UNIFORM_VECTORS */ - { 22773, 0x00009123 }, /* GL_MAX_GEOMETRY_INPUT_COMPONENTS */ - { 22806, 0x00009124 }, /* GL_MAX_GEOMETRY_OUTPUT_COMPONENTS */ - { 22840, 0x00008DE0 }, /* GL_MAX_GEOMETRY_OUTPUT_VERTICES */ - { 22872, 0x00008DE0 }, /* GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB */ - { 22908, 0x00008C29 }, /* GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS */ - { 22944, 0x00008C29 }, /* GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB */ - { 22984, 0x00008DE1 }, /* GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS */ - { 23024, 0x00008DE1 }, /* GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB */ - { 23068, 0x00008DDF }, /* GL_MAX_GEOMETRY_UNIFORM_COMPONENTS */ - { 23103, 0x00008DDF }, /* GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB */ - { 23142, 0x00008DDD }, /* GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB */ - { 23181, 0x00000D31 }, /* GL_MAX_LIGHTS */ - { 23195, 0x00000B31 }, /* GL_MAX_LIST_NESTING */ - { 23215, 0x00008841 }, /* GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB */ - { 23253, 0x00000D36 }, /* GL_MAX_MODELVIEW_STACK_DEPTH */ - { 23282, 0x00000D37 }, /* GL_MAX_NAME_STACK_DEPTH */ - { 23306, 0x00008842 }, /* GL_MAX_PALETTE_MATRICES_ARB */ - { 23334, 0x00008842 }, /* GL_MAX_PALETTE_MATRICES_OES */ - { 23362, 0x00000D34 }, /* GL_MAX_PIXEL_MAP_TABLE */ - { 23385, 0x000088B1 }, /* GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB */ - { 23422, 0x0000880B }, /* GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB */ - { 23458, 0x000088AD }, /* GL_MAX_PROGRAM_ATTRIBS_ARB */ - { 23485, 0x000088F5 }, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */ - { 23514, 0x000088B5 }, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */ - { 23548, 0x000088F4 }, /* GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV */ - { 23584, 0x000088F6 }, /* GL_MAX_PROGRAM_IF_DEPTH_NV */ - { 23611, 0x000088A1 }, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */ - { 23643, 0x000088B4 }, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */ - { 23679, 0x000088F8 }, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */ - { 23708, 0x000088F7 }, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */ - { 23737, 0x0000862F }, /* GL_MAX_PROGRAM_MATRICES_ARB */ - { 23765, 0x0000862E }, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */ - { 23803, 0x000088B3 }, /* GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ - { 23847, 0x0000880E }, /* GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ - { 23890, 0x000088AF }, /* GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB */ - { 23924, 0x000088A3 }, /* GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ - { 23963, 0x000088AB }, /* GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB */ - { 24000, 0x000088A7 }, /* GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB */ - { 24038, 0x00008810 }, /* GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ - { 24081, 0x0000880F }, /* GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ - { 24124, 0x000088A9 }, /* GL_MAX_PROGRAM_PARAMETERS_ARB */ - { 24154, 0x000088A5 }, /* GL_MAX_PROGRAM_TEMPORARIES_ARB */ - { 24185, 0x00008905 }, /* GL_MAX_PROGRAM_TEXEL_OFFSET */ - { 24213, 0x00008905 }, /* GL_MAX_PROGRAM_TEXEL_OFFSET_EXT */ - { 24245, 0x0000880D }, /* GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB */ - { 24281, 0x0000880C }, /* GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB */ - { 24317, 0x00000D38 }, /* GL_MAX_PROJECTION_STACK_DEPTH */ - { 24347, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE */ - { 24377, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB */ - { 24411, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_NV */ - { 24444, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE */ - { 24469, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE_EXT */ - { 24498, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE_OES */ - { 24527, 0x00008D57 }, /* GL_MAX_SAMPLES */ - { 24542, 0x00008D57 }, /* GL_MAX_SAMPLES_EXT */ - { 24561, 0x00009111 }, /* GL_MAX_SERVER_WAIT_TIMEOUT */ - { 24588, 0x00008504 }, /* GL_MAX_SHININESS_NV */ - { 24608, 0x00008505 }, /* GL_MAX_SPOT_EXPONENT_NV */ - { 24632, 0x00008C2B }, /* GL_MAX_TEXTURE_BUFFER_SIZE */ - { 24659, 0x00008C2B }, /* GL_MAX_TEXTURE_BUFFER_SIZE_ARB */ - { 24690, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS */ - { 24712, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS_ARB */ - { 24738, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS */ - { 24765, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS_ARB */ - { 24796, 0x000084FD }, /* GL_MAX_TEXTURE_LOD_BIAS */ - { 24820, 0x000084FD }, /* GL_MAX_TEXTURE_LOD_BIAS_EXT */ - { 24848, 0x000084FF }, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */ - { 24882, 0x00000D33 }, /* GL_MAX_TEXTURE_SIZE */ - { 24902, 0x00000D39 }, /* GL_MAX_TEXTURE_STACK_DEPTH */ - { 24929, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS */ - { 24950, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS_ARB */ - { 24975, 0x0000862F }, /* GL_MAX_TRACK_MATRICES_NV */ - { 25000, 0x0000862E }, /* GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV */ - { 25035, 0x00008C8A }, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS */ - { 25084, 0x00008C8A }, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT */ - { 25137, 0x00008C8B }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS */ - { 25180, 0x00008C8B }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT */ - { 25227, 0x00008C80 }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS */ - { 25273, 0x00008C80 }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT */ - { 25323, 0x00008B4B }, /* GL_MAX_VARYING_COMPONENTS */ - { 25349, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS */ - { 25371, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS_ARB */ - { 25397, 0x00008DFC }, /* GL_MAX_VARYING_VECTORS */ - { 25420, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS */ - { 25442, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS_ARB */ - { 25468, 0x00009122 }, /* GL_MAX_VERTEX_OUTPUT_COMPONENTS */ - { 25500, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */ - { 25534, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB */ - { 25572, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */ - { 25605, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB */ - { 25642, 0x00008DFB }, /* GL_MAX_VERTEX_UNIFORM_VECTORS */ - { 25672, 0x000086A4 }, /* GL_MAX_VERTEX_UNITS_ARB */ - { 25696, 0x000086A4 }, /* GL_MAX_VERTEX_UNITS_OES */ - { 25720, 0x00008DDE }, /* GL_MAX_VERTEX_VARYING_COMPONENTS_ARB */ - { 25757, 0x00000D3A }, /* GL_MAX_VIEWPORT_DIMS */ - { 25778, 0x00008DF1 }, /* GL_MEDIUM_FLOAT */ - { 25794, 0x00008DF4 }, /* GL_MEDIUM_INT */ - { 25808, 0x00008007 }, /* GL_MIN */ - { 25815, 0x0000802E }, /* GL_MINMAX */ - { 25825, 0x0000802E }, /* GL_MINMAX_EXT */ - { 25839, 0x0000802F }, /* GL_MINMAX_FORMAT */ - { 25856, 0x0000802F }, /* GL_MINMAX_FORMAT_EXT */ - { 25877, 0x00008030 }, /* GL_MINMAX_SINK */ - { 25892, 0x00008030 }, /* GL_MINMAX_SINK_EXT */ - { 25911, 0x0000821C }, /* GL_MINOR_VERSION */ - { 25928, 0x00008007 }, /* GL_MIN_EXT */ - { 25939, 0x00008904 }, /* GL_MIN_PROGRAM_TEXEL_OFFSET */ - { 25967, 0x00008904 }, /* GL_MIN_PROGRAM_TEXEL_OFFSET_EXT */ - { 25999, 0x00008370 }, /* GL_MIRRORED_REPEAT */ - { 26018, 0x00008370 }, /* GL_MIRRORED_REPEAT_ARB */ - { 26041, 0x00008370 }, /* GL_MIRRORED_REPEAT_IBM */ - { 26064, 0x00008742 }, /* GL_MIRROR_CLAMP_ATI */ - { 26084, 0x00008742 }, /* GL_MIRROR_CLAMP_EXT */ - { 26104, 0x00008912 }, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */ - { 26134, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_ATI */ - { 26162, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */ - { 26190, 0x00001700 }, /* GL_MODELVIEW */ - { 26203, 0x00001700 }, /* GL_MODELVIEW0_ARB */ - { 26221, 0x0000872A }, /* GL_MODELVIEW10_ARB */ - { 26240, 0x0000872B }, /* GL_MODELVIEW11_ARB */ - { 26259, 0x0000872C }, /* GL_MODELVIEW12_ARB */ - { 26278, 0x0000872D }, /* GL_MODELVIEW13_ARB */ - { 26297, 0x0000872E }, /* GL_MODELVIEW14_ARB */ - { 26316, 0x0000872F }, /* GL_MODELVIEW15_ARB */ - { 26335, 0x00008730 }, /* GL_MODELVIEW16_ARB */ - { 26354, 0x00008731 }, /* GL_MODELVIEW17_ARB */ - { 26373, 0x00008732 }, /* GL_MODELVIEW18_ARB */ - { 26392, 0x00008733 }, /* GL_MODELVIEW19_ARB */ - { 26411, 0x0000850A }, /* GL_MODELVIEW1_ARB */ - { 26429, 0x00008734 }, /* GL_MODELVIEW20_ARB */ - { 26448, 0x00008735 }, /* GL_MODELVIEW21_ARB */ - { 26467, 0x00008736 }, /* GL_MODELVIEW22_ARB */ - { 26486, 0x00008737 }, /* GL_MODELVIEW23_ARB */ - { 26505, 0x00008738 }, /* GL_MODELVIEW24_ARB */ - { 26524, 0x00008739 }, /* GL_MODELVIEW25_ARB */ - { 26543, 0x0000873A }, /* GL_MODELVIEW26_ARB */ - { 26562, 0x0000873B }, /* GL_MODELVIEW27_ARB */ - { 26581, 0x0000873C }, /* GL_MODELVIEW28_ARB */ - { 26600, 0x0000873D }, /* GL_MODELVIEW29_ARB */ - { 26619, 0x00008722 }, /* GL_MODELVIEW2_ARB */ - { 26637, 0x0000873E }, /* GL_MODELVIEW30_ARB */ - { 26656, 0x0000873F }, /* GL_MODELVIEW31_ARB */ - { 26675, 0x00008723 }, /* GL_MODELVIEW3_ARB */ - { 26693, 0x00008724 }, /* GL_MODELVIEW4_ARB */ - { 26711, 0x00008725 }, /* GL_MODELVIEW5_ARB */ - { 26729, 0x00008726 }, /* GL_MODELVIEW6_ARB */ - { 26747, 0x00008727 }, /* GL_MODELVIEW7_ARB */ - { 26765, 0x00008728 }, /* GL_MODELVIEW8_ARB */ - { 26783, 0x00008729 }, /* GL_MODELVIEW9_ARB */ - { 26801, 0x00000BA6 }, /* GL_MODELVIEW_MATRIX */ - { 26821, 0x0000898D }, /* GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES */ - { 26863, 0x00008629 }, /* GL_MODELVIEW_PROJECTION_NV */ - { 26890, 0x00000BA3 }, /* GL_MODELVIEW_STACK_DEPTH */ - { 26915, 0x00002100 }, /* GL_MODULATE */ - { 26927, 0x00008744 }, /* GL_MODULATE_ADD_ATI */ - { 26947, 0x00008745 }, /* GL_MODULATE_SIGNED_ADD_ATI */ - { 26974, 0x00008746 }, /* GL_MODULATE_SUBTRACT_ATI */ - { 26999, 0x00000103 }, /* GL_MULT */ - { 27007, 0x0000809D }, /* GL_MULTISAMPLE */ - { 27022, 0x000086B2 }, /* GL_MULTISAMPLE_3DFX */ - { 27042, 0x0000809D }, /* GL_MULTISAMPLE_ARB */ - { 27061, 0x20000000 }, /* GL_MULTISAMPLE_BIT */ - { 27080, 0x20000000 }, /* GL_MULTISAMPLE_BIT_3DFX */ - { 27104, 0x20000000 }, /* GL_MULTISAMPLE_BIT_ARB */ - { 27127, 0x00008534 }, /* GL_MULTISAMPLE_FILTER_HINT_NV */ - { 27157, 0x00002A25 }, /* GL_N3F_V3F */ - { 27168, 0x00000D70 }, /* GL_NAME_STACK_DEPTH */ - { 27188, 0x0000150E }, /* GL_NAND */ - { 27196, 0x00002600 }, /* GL_NEAREST */ - { 27207, 0x0000844E }, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */ - { 27238, 0x0000844D }, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */ - { 27270, 0x00002702 }, /* GL_NEAREST_MIPMAP_LINEAR */ - { 27295, 0x00002700 }, /* GL_NEAREST_MIPMAP_NEAREST */ - { 27321, 0x00000200 }, /* GL_NEVER */ - { 27330, 0x00001102 }, /* GL_NICEST */ - { 27340, 0x00000000 }, /* GL_NONE */ - { 27348, 0x00000000 }, /* GL_NONE_OES */ - { 27360, 0x00001505 }, /* GL_NOOP */ - { 27368, 0x00001508 }, /* GL_NOR */ - { 27375, 0x00000BA1 }, /* GL_NORMALIZE */ - { 27388, 0x00008075 }, /* GL_NORMAL_ARRAY */ - { 27404, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING */ - { 27435, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING_ARB */ - { 27470, 0x0000808F }, /* GL_NORMAL_ARRAY_POINTER */ - { 27494, 0x0000807F }, /* GL_NORMAL_ARRAY_STRIDE */ - { 27517, 0x0000807E }, /* GL_NORMAL_ARRAY_TYPE */ - { 27538, 0x00008511 }, /* GL_NORMAL_MAP */ - { 27552, 0x00008511 }, /* GL_NORMAL_MAP_ARB */ - { 27570, 0x00008511 }, /* GL_NORMAL_MAP_NV */ - { 27587, 0x00008511 }, /* GL_NORMAL_MAP_OES */ - { 27605, 0x00000205 }, /* GL_NOTEQUAL */ - { 27617, 0x00000000 }, /* GL_NO_ERROR */ - { 27629, 0x00008261 }, /* GL_NO_RESET_NOTIFICATION_ARB */ - { 27658, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */ - { 27692, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB */ - { 27730, 0x0000821D }, /* GL_NUM_EXTENSIONS */ - { 27748, 0x000087FE }, /* GL_NUM_PROGRAM_BINARY_FORMATS */ - { 27778, 0x000087FE }, /* GL_NUM_PROGRAM_BINARY_FORMATS_OES */ - { 27812, 0x00008DF9 }, /* GL_NUM_SHADER_BINARY_FORMATS */ - { 27841, 0x00008B89 }, /* GL_OBJECT_ACTIVE_ATTRIBUTES_ARB */ - { 27873, 0x00008B8A }, /* GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB */ - { 27915, 0x00008B86 }, /* GL_OBJECT_ACTIVE_UNIFORMS_ARB */ - { 27945, 0x00008B87 }, /* GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB */ - { 27985, 0x00008B85 }, /* GL_OBJECT_ATTACHED_OBJECTS_ARB */ - { 28016, 0x00008B81 }, /* GL_OBJECT_COMPILE_STATUS_ARB */ - { 28045, 0x00008B80 }, /* GL_OBJECT_DELETE_STATUS_ARB */ - { 28073, 0x00008B84 }, /* GL_OBJECT_INFO_LOG_LENGTH_ARB */ - { 28103, 0x00002401 }, /* GL_OBJECT_LINEAR */ - { 28120, 0x00008B82 }, /* GL_OBJECT_LINK_STATUS_ARB */ - { 28146, 0x00002501 }, /* GL_OBJECT_PLANE */ - { 28162, 0x00008B88 }, /* GL_OBJECT_SHADER_SOURCE_LENGTH_ARB */ - { 28197, 0x00008B4F }, /* GL_OBJECT_SUBTYPE_ARB */ - { 28219, 0x00009112 }, /* GL_OBJECT_TYPE */ - { 28234, 0x00008B4E }, /* GL_OBJECT_TYPE_ARB */ - { 28253, 0x00008B83 }, /* GL_OBJECT_VALIDATE_STATUS_ARB */ - { 28283, 0x00008165 }, /* GL_OCCLUSION_TEST_HP */ - { 28304, 0x00008166 }, /* GL_OCCLUSION_TEST_RESULT_HP */ - { 28332, 0x00000001 }, /* GL_ONE */ - { 28339, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA */ - { 28367, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA_EXT */ - { 28399, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR */ - { 28427, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR_EXT */ - { 28459, 0x00000305 }, /* GL_ONE_MINUS_DST_ALPHA */ - { 28482, 0x00000307 }, /* GL_ONE_MINUS_DST_COLOR */ - { 28505, 0x00000303 }, /* GL_ONE_MINUS_SRC_ALPHA */ - { 28528, 0x00000301 }, /* GL_ONE_MINUS_SRC_COLOR */ - { 28551, 0x00008598 }, /* GL_OPERAND0_ALPHA */ - { 28569, 0x00008598 }, /* GL_OPERAND0_ALPHA_ARB */ - { 28591, 0x00008598 }, /* GL_OPERAND0_ALPHA_EXT */ - { 28613, 0x00008590 }, /* GL_OPERAND0_RGB */ - { 28629, 0x00008590 }, /* GL_OPERAND0_RGB_ARB */ - { 28649, 0x00008590 }, /* GL_OPERAND0_RGB_EXT */ - { 28669, 0x00008599 }, /* GL_OPERAND1_ALPHA */ - { 28687, 0x00008599 }, /* GL_OPERAND1_ALPHA_ARB */ - { 28709, 0x00008599 }, /* GL_OPERAND1_ALPHA_EXT */ - { 28731, 0x00008591 }, /* GL_OPERAND1_RGB */ - { 28747, 0x00008591 }, /* GL_OPERAND1_RGB_ARB */ - { 28767, 0x00008591 }, /* GL_OPERAND1_RGB_EXT */ - { 28787, 0x0000859A }, /* GL_OPERAND2_ALPHA */ - { 28805, 0x0000859A }, /* GL_OPERAND2_ALPHA_ARB */ - { 28827, 0x0000859A }, /* GL_OPERAND2_ALPHA_EXT */ - { 28849, 0x00008592 }, /* GL_OPERAND2_RGB */ - { 28865, 0x00008592 }, /* GL_OPERAND2_RGB_ARB */ - { 28885, 0x00008592 }, /* GL_OPERAND2_RGB_EXT */ - { 28905, 0x0000859B }, /* GL_OPERAND3_ALPHA_NV */ - { 28926, 0x00008593 }, /* GL_OPERAND3_RGB_NV */ - { 28945, 0x00001507 }, /* GL_OR */ - { 28951, 0x00000A01 }, /* GL_ORDER */ - { 28960, 0x0000150D }, /* GL_OR_INVERTED */ - { 28975, 0x0000150B }, /* GL_OR_REVERSE */ - { 28989, 0x00000505 }, /* GL_OUT_OF_MEMORY */ - { 29006, 0x00000D05 }, /* GL_PACK_ALIGNMENT */ - { 29024, 0x0000806C }, /* GL_PACK_IMAGE_HEIGHT */ - { 29045, 0x00008758 }, /* GL_PACK_INVERT_MESA */ - { 29065, 0x00000D01 }, /* GL_PACK_LSB_FIRST */ - { 29083, 0x00000D02 }, /* GL_PACK_ROW_LENGTH */ - { 29102, 0x0000806B }, /* GL_PACK_SKIP_IMAGES */ - { 29122, 0x00000D04 }, /* GL_PACK_SKIP_PIXELS */ - { 29142, 0x00000D03 }, /* GL_PACK_SKIP_ROWS */ - { 29160, 0x00000D00 }, /* GL_PACK_SWAP_BYTES */ - { 29179, 0x00008B92 }, /* GL_PALETTE4_R5_G6_B5_OES */ - { 29204, 0x00008B94 }, /* GL_PALETTE4_RGB5_A1_OES */ - { 29228, 0x00008B90 }, /* GL_PALETTE4_RGB8_OES */ - { 29249, 0x00008B93 }, /* GL_PALETTE4_RGBA4_OES */ - { 29271, 0x00008B91 }, /* GL_PALETTE4_RGBA8_OES */ - { 29293, 0x00008B97 }, /* GL_PALETTE8_R5_G6_B5_OES */ - { 29318, 0x00008B99 }, /* GL_PALETTE8_RGB5_A1_OES */ - { 29342, 0x00008B95 }, /* GL_PALETTE8_RGB8_OES */ - { 29363, 0x00008B98 }, /* GL_PALETTE8_RGBA4_OES */ - { 29385, 0x00008B96 }, /* GL_PALETTE8_RGBA8_OES */ - { 29407, 0x00000700 }, /* GL_PASS_THROUGH_TOKEN */ - { 29429, 0x00000C50 }, /* GL_PERSPECTIVE_CORRECTION_HINT */ - { 29460, 0x00000C79 }, /* GL_PIXEL_MAP_A_TO_A */ - { 29480, 0x00000CB9 }, /* GL_PIXEL_MAP_A_TO_A_SIZE */ - { 29505, 0x00000C78 }, /* GL_PIXEL_MAP_B_TO_B */ - { 29525, 0x00000CB8 }, /* GL_PIXEL_MAP_B_TO_B_SIZE */ - { 29550, 0x00000C77 }, /* GL_PIXEL_MAP_G_TO_G */ - { 29570, 0x00000CB7 }, /* GL_PIXEL_MAP_G_TO_G_SIZE */ - { 29595, 0x00000C75 }, /* GL_PIXEL_MAP_I_TO_A */ - { 29615, 0x00000CB5 }, /* GL_PIXEL_MAP_I_TO_A_SIZE */ - { 29640, 0x00000C74 }, /* GL_PIXEL_MAP_I_TO_B */ - { 29660, 0x00000CB4 }, /* GL_PIXEL_MAP_I_TO_B_SIZE */ - { 29685, 0x00000C73 }, /* GL_PIXEL_MAP_I_TO_G */ - { 29705, 0x00000CB3 }, /* GL_PIXEL_MAP_I_TO_G_SIZE */ - { 29730, 0x00000C70 }, /* GL_PIXEL_MAP_I_TO_I */ - { 29750, 0x00000CB0 }, /* GL_PIXEL_MAP_I_TO_I_SIZE */ - { 29775, 0x00000C72 }, /* GL_PIXEL_MAP_I_TO_R */ - { 29795, 0x00000CB2 }, /* GL_PIXEL_MAP_I_TO_R_SIZE */ - { 29820, 0x00000C76 }, /* GL_PIXEL_MAP_R_TO_R */ - { 29840, 0x00000CB6 }, /* GL_PIXEL_MAP_R_TO_R_SIZE */ - { 29865, 0x00000C71 }, /* GL_PIXEL_MAP_S_TO_S */ - { 29885, 0x00000CB1 }, /* GL_PIXEL_MAP_S_TO_S_SIZE */ - { 29910, 0x00000020 }, /* GL_PIXEL_MODE_BIT */ - { 29928, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER */ - { 29949, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING */ - { 29978, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING_EXT */ - { 30011, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER_EXT */ - { 30036, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER */ - { 30059, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING */ - { 30090, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING_EXT */ - { 30125, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER_EXT */ - { 30152, 0x00001B00 }, /* GL_POINT */ - { 30161, 0x00000000 }, /* GL_POINTS */ - { 30171, 0x00000002 }, /* GL_POINT_BIT */ - { 30184, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION */ - { 30214, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_ARB */ - { 30248, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_EXT */ - { 30282, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_SGIS */ - { 30317, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE */ - { 30346, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_ARB */ - { 30379, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_EXT */ - { 30412, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_SGIS */ - { 30446, 0x00000B11 }, /* GL_POINT_SIZE */ - { 30460, 0x00008B9F }, /* GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES */ - { 30499, 0x00008B9C }, /* GL_POINT_SIZE_ARRAY_OES */ - { 30523, 0x0000898C }, /* GL_POINT_SIZE_ARRAY_POINTER_OES */ - { 30555, 0x0000898B }, /* GL_POINT_SIZE_ARRAY_STRIDE_OES */ - { 30586, 0x0000898A }, /* GL_POINT_SIZE_ARRAY_TYPE_OES */ - { 30615, 0x00000B13 }, /* GL_POINT_SIZE_GRANULARITY */ - { 30641, 0x00008127 }, /* GL_POINT_SIZE_MAX */ - { 30659, 0x00008127 }, /* GL_POINT_SIZE_MAX_ARB */ - { 30681, 0x00008127 }, /* GL_POINT_SIZE_MAX_EXT */ - { 30703, 0x00008127 }, /* GL_POINT_SIZE_MAX_SGIS */ - { 30726, 0x00008126 }, /* GL_POINT_SIZE_MIN */ - { 30744, 0x00008126 }, /* GL_POINT_SIZE_MIN_ARB */ - { 30766, 0x00008126 }, /* GL_POINT_SIZE_MIN_EXT */ - { 30788, 0x00008126 }, /* GL_POINT_SIZE_MIN_SGIS */ - { 30811, 0x00000B12 }, /* GL_POINT_SIZE_RANGE */ - { 30831, 0x00000B10 }, /* GL_POINT_SMOOTH */ - { 30847, 0x00000C51 }, /* GL_POINT_SMOOTH_HINT */ - { 30868, 0x00008861 }, /* GL_POINT_SPRITE */ - { 30884, 0x00008861 }, /* GL_POINT_SPRITE_ARB */ - { 30904, 0x00008CA0 }, /* GL_POINT_SPRITE_COORD_ORIGIN */ - { 30933, 0x00008861 }, /* GL_POINT_SPRITE_NV */ - { 30952, 0x00008861 }, /* GL_POINT_SPRITE_OES */ - { 30972, 0x00008863 }, /* GL_POINT_SPRITE_R_MODE_NV */ - { 30998, 0x00000701 }, /* GL_POINT_TOKEN */ - { 31013, 0x00000009 }, /* GL_POLYGON */ - { 31024, 0x00000008 }, /* GL_POLYGON_BIT */ - { 31039, 0x00000B40 }, /* GL_POLYGON_MODE */ - { 31055, 0x00008039 }, /* GL_POLYGON_OFFSET_BIAS */ - { 31078, 0x00008038 }, /* GL_POLYGON_OFFSET_FACTOR */ - { 31103, 0x00008037 }, /* GL_POLYGON_OFFSET_FILL */ - { 31126, 0x00002A02 }, /* GL_POLYGON_OFFSET_LINE */ - { 31149, 0x00002A01 }, /* GL_POLYGON_OFFSET_POINT */ - { 31173, 0x00002A00 }, /* GL_POLYGON_OFFSET_UNITS */ - { 31197, 0x00000B41 }, /* GL_POLYGON_SMOOTH */ - { 31215, 0x00000C53 }, /* GL_POLYGON_SMOOTH_HINT */ - { 31238, 0x00000B42 }, /* GL_POLYGON_STIPPLE */ - { 31257, 0x00000010 }, /* GL_POLYGON_STIPPLE_BIT */ - { 31280, 0x00000703 }, /* GL_POLYGON_TOKEN */ - { 31297, 0x00001203 }, /* GL_POSITION */ - { 31309, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */ - { 31341, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI */ - { 31377, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */ - { 31410, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI */ - { 31447, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */ - { 31478, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI */ - { 31513, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */ - { 31545, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI */ - { 31581, 0x000080D2 }, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */ - { 31614, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */ - { 31646, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI */ - { 31682, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */ - { 31715, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI */ - { 31752, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS */ - { 31782, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS_SGI */ - { 31816, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE */ - { 31847, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE_SGI */ - { 31882, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS */ - { 31913, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS_EXT */ - { 31948, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE */ - { 31980, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE_EXT */ - { 32016, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS */ - { 32046, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS_EXT */ - { 32080, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE */ - { 32111, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE_EXT */ - { 32146, 0x000080D1 }, /* GL_POST_CONVOLUTION_COLOR_TABLE */ - { 32178, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS */ - { 32209, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS_EXT */ - { 32244, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE */ - { 32276, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE_EXT */ - { 32312, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS */ - { 32341, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS_EXT */ - { 32374, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE */ - { 32404, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE_EXT */ - { 32438, 0x0000817B }, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */ - { 32477, 0x00008179 }, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */ - { 32510, 0x0000817C }, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */ - { 32550, 0x0000817A }, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */ - { 32584, 0x00008578 }, /* GL_PREVIOUS */ - { 32596, 0x00008578 }, /* GL_PREVIOUS_ARB */ - { 32612, 0x00008578 }, /* GL_PREVIOUS_EXT */ - { 32628, 0x00008577 }, /* GL_PRIMARY_COLOR */ - { 32645, 0x00008577 }, /* GL_PRIMARY_COLOR_ARB */ - { 32666, 0x00008577 }, /* GL_PRIMARY_COLOR_EXT */ - { 32687, 0x00008C87 }, /* GL_PRIMITIVES_GENERATED */ - { 32711, 0x00008C87 }, /* GL_PRIMITIVES_GENERATED_EXT */ - { 32739, 0x00008F9D }, /* GL_PRIMITIVE_RESTART */ - { 32760, 0x00008F9E }, /* GL_PRIMITIVE_RESTART_INDEX */ - { 32787, 0x00008559 }, /* GL_PRIMITIVE_RESTART_INDEX_NV */ - { 32817, 0x00008558 }, /* GL_PRIMITIVE_RESTART_NV */ - { 32841, 0x000088B0 }, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */ - { 32874, 0x00008805 }, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */ - { 32906, 0x000088AC }, /* GL_PROGRAM_ATTRIBS_ARB */ - { 32929, 0x000087FF }, /* GL_PROGRAM_BINARY_FORMATS */ - { 32955, 0x000087FF }, /* GL_PROGRAM_BINARY_FORMATS_OES */ - { 32985, 0x00008741 }, /* GL_PROGRAM_BINARY_LENGTH */ - { 33010, 0x00008741 }, /* GL_PROGRAM_BINARY_LENGTH_OES */ - { 33039, 0x00008257 }, /* GL_PROGRAM_BINARY_RETRIEVABLE_HINT */ - { 33074, 0x00008677 }, /* GL_PROGRAM_BINDING_ARB */ - { 33097, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_ARB */ - { 33127, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_NV */ - { 33156, 0x00008874 }, /* GL_PROGRAM_ERROR_STRING_ARB */ - { 33184, 0x00008876 }, /* GL_PROGRAM_FORMAT_ARB */ - { 33206, 0x00008875 }, /* GL_PROGRAM_FORMAT_ASCII_ARB */ - { 33234, 0x000088A0 }, /* GL_PROGRAM_INSTRUCTIONS_ARB */ - { 33262, 0x00008627 }, /* GL_PROGRAM_LENGTH_ARB */ - { 33284, 0x00008627 }, /* GL_PROGRAM_LENGTH_NV */ - { 33305, 0x000088B2 }, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ - { 33345, 0x00008808 }, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ - { 33384, 0x000088AE }, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */ - { 33414, 0x000088A2 }, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ - { 33449, 0x000088AA }, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */ - { 33482, 0x000088A6 }, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */ - { 33516, 0x0000880A }, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ - { 33555, 0x00008809 }, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ - { 33594, 0x00008B40 }, /* GL_PROGRAM_OBJECT_ARB */ - { 33616, 0x000088A8 }, /* GL_PROGRAM_PARAMETERS_ARB */ - { 33642, 0x00008644 }, /* GL_PROGRAM_PARAMETER_NV */ - { 33666, 0x00008642 }, /* GL_PROGRAM_POINT_SIZE */ - { 33688, 0x00008642 }, /* GL_PROGRAM_POINT_SIZE_ARB */ - { 33714, 0x00008647 }, /* GL_PROGRAM_RESIDENT_NV */ - { 33737, 0x00008628 }, /* GL_PROGRAM_STRING_ARB */ - { 33759, 0x00008628 }, /* GL_PROGRAM_STRING_NV */ - { 33780, 0x00008646 }, /* GL_PROGRAM_TARGET_NV */ - { 33801, 0x000088A4 }, /* GL_PROGRAM_TEMPORARIES_ARB */ - { 33828, 0x00008807 }, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */ - { 33860, 0x00008806 }, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */ - { 33892, 0x000088B6 }, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */ - { 33927, 0x00001701 }, /* GL_PROJECTION */ - { 33941, 0x00000BA7 }, /* GL_PROJECTION_MATRIX */ - { 33962, 0x0000898E }, /* GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES */ - { 34005, 0x00000BA4 }, /* GL_PROJECTION_STACK_DEPTH */ - { 34031, 0x00008E4F }, /* GL_PROVOKING_VERTEX */ - { 34051, 0x00008E4F }, /* GL_PROVOKING_VERTEX_EXT */ - { 34075, 0x000080D3 }, /* GL_PROXY_COLOR_TABLE */ - { 34096, 0x00008025 }, /* GL_PROXY_HISTOGRAM */ - { 34115, 0x00008025 }, /* GL_PROXY_HISTOGRAM_EXT */ - { 34138, 0x000080D5 }, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */ - { 34177, 0x000080D4 }, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */ - { 34215, 0x00008063 }, /* GL_PROXY_TEXTURE_1D */ - { 34235, 0x00008C19 }, /* GL_PROXY_TEXTURE_1D_ARRAY */ - { 34261, 0x00008C19 }, /* GL_PROXY_TEXTURE_1D_ARRAY_EXT */ - { 34291, 0x00008063 }, /* GL_PROXY_TEXTURE_1D_EXT */ - { 34315, 0x00008064 }, /* GL_PROXY_TEXTURE_2D */ - { 34335, 0x00008C1B }, /* GL_PROXY_TEXTURE_2D_ARRAY */ - { 34361, 0x00008C1B }, /* GL_PROXY_TEXTURE_2D_ARRAY_EXT */ - { 34391, 0x00008064 }, /* GL_PROXY_TEXTURE_2D_EXT */ - { 34415, 0x00008070 }, /* GL_PROXY_TEXTURE_3D */ - { 34435, 0x000080BD }, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */ - { 34468, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP */ - { 34494, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP_ARB */ - { 34524, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE */ - { 34551, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_ARB */ - { 34582, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_NV */ - { 34612, 0x00008A1D }, /* GL_PURGEABLE_APPLE */ - { 34631, 0x00002003 }, /* GL_Q */ - { 34636, 0x00001209 }, /* GL_QUADRATIC_ATTENUATION */ - { 34661, 0x00000007 }, /* GL_QUADS */ - { 34670, 0x00008E4C }, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION */ - { 34714, 0x00008E4C }, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT */ - { 34762, 0x00008614 }, /* GL_QUAD_MESH_SUN */ - { 34779, 0x00000008 }, /* GL_QUAD_STRIP */ - { 34793, 0x00008E16 }, /* GL_QUERY_BY_REGION_NO_WAIT */ - { 34820, 0x00008E16 }, /* GL_QUERY_BY_REGION_NO_WAIT_NV */ - { 34850, 0x00008E15 }, /* GL_QUERY_BY_REGION_WAIT */ - { 34874, 0x00008E15 }, /* GL_QUERY_BY_REGION_WAIT_NV */ - { 34901, 0x00008864 }, /* GL_QUERY_COUNTER_BITS */ - { 34923, 0x00008864 }, /* GL_QUERY_COUNTER_BITS_ARB */ - { 34949, 0x00008E14 }, /* GL_QUERY_NO_WAIT */ - { 34966, 0x00008E14 }, /* GL_QUERY_NO_WAIT_NV */ - { 34986, 0x00008866 }, /* GL_QUERY_RESULT */ - { 35002, 0x00008866 }, /* GL_QUERY_RESULT_ARB */ - { 35022, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE */ - { 35048, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE_ARB */ - { 35078, 0x00008E13 }, /* GL_QUERY_WAIT */ - { 35092, 0x00008E13 }, /* GL_QUERY_WAIT_NV */ - { 35109, 0x00002002 }, /* GL_R */ - { 35114, 0x00008C3A }, /* GL_R11F_G11F_B10F */ - { 35132, 0x00008F98 }, /* GL_R16_SNORM */ - { 35145, 0x00002A10 }, /* GL_R3_G3_B2 */ - { 35157, 0x00008F94 }, /* GL_R8_SNORM */ - { 35169, 0x00008C89 }, /* GL_RASTERIZER_DISCARD */ - { 35191, 0x00008C89 }, /* GL_RASTERIZER_DISCARD_EXT */ - { 35217, 0x00019262 }, /* GL_RASTER_POSITION_UNCLIPPED_IBM */ - { 35250, 0x00000C02 }, /* GL_READ_BUFFER */ - { 35265, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER */ - { 35285, 0x00008CAA }, /* GL_READ_FRAMEBUFFER_BINDING */ - { 35313, 0x00008CAA }, /* GL_READ_FRAMEBUFFER_BINDING_EXT */ - { 35345, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER_EXT */ - { 35369, 0x000088B8 }, /* GL_READ_ONLY */ - { 35382, 0x000088B8 }, /* GL_READ_ONLY_ARB */ - { 35399, 0x000088BA }, /* GL_READ_WRITE */ - { 35413, 0x000088BA }, /* GL_READ_WRITE_ARB */ - { 35431, 0x00001903 }, /* GL_RED */ - { 35438, 0x00008016 }, /* GL_REDUCE */ - { 35448, 0x00008016 }, /* GL_REDUCE_EXT */ - { 35462, 0x00000D15 }, /* GL_RED_BIAS */ - { 35474, 0x00000D52 }, /* GL_RED_BITS */ - { 35486, 0x00008D94 }, /* GL_RED_INTEGER */ - { 35501, 0x00008D94 }, /* GL_RED_INTEGER_EXT */ - { 35520, 0x00000D14 }, /* GL_RED_SCALE */ - { 35533, 0x00008F90 }, /* GL_RED_SNORM */ - { 35546, 0x00008512 }, /* GL_REFLECTION_MAP */ - { 35564, 0x00008512 }, /* GL_REFLECTION_MAP_ARB */ - { 35586, 0x00008512 }, /* GL_REFLECTION_MAP_NV */ - { 35607, 0x00008512 }, /* GL_REFLECTION_MAP_OES */ - { 35629, 0x00008A19 }, /* GL_RELEASED_APPLE */ - { 35647, 0x00001C00 }, /* GL_RENDER */ - { 35657, 0x00008D41 }, /* GL_RENDERBUFFER */ - { 35673, 0x00008D53 }, /* GL_RENDERBUFFER_ALPHA_SIZE */ - { 35700, 0x00008D53 }, /* GL_RENDERBUFFER_ALPHA_SIZE_OES */ - { 35731, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING */ - { 35755, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING_EXT */ - { 35783, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING_OES */ - { 35811, 0x00008D52 }, /* GL_RENDERBUFFER_BLUE_SIZE */ - { 35837, 0x00008D52 }, /* GL_RENDERBUFFER_BLUE_SIZE_OES */ - { 35867, 0x00008D54 }, /* GL_RENDERBUFFER_DEPTH_SIZE */ - { 35894, 0x00008D54 }, /* GL_RENDERBUFFER_DEPTH_SIZE_OES */ - { 35925, 0x00008D41 }, /* GL_RENDERBUFFER_EXT */ - { 35945, 0x00008D51 }, /* GL_RENDERBUFFER_GREEN_SIZE */ - { 35972, 0x00008D51 }, /* GL_RENDERBUFFER_GREEN_SIZE_OES */ - { 36003, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT */ - { 36026, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT_EXT */ - { 36053, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT_OES */ - { 36080, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT */ - { 36112, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT_EXT */ - { 36148, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT_OES */ - { 36184, 0x00008D41 }, /* GL_RENDERBUFFER_OES */ - { 36204, 0x00008D50 }, /* GL_RENDERBUFFER_RED_SIZE */ - { 36229, 0x00008D50 }, /* GL_RENDERBUFFER_RED_SIZE_OES */ - { 36258, 0x00008CAB }, /* GL_RENDERBUFFER_SAMPLES */ - { 36282, 0x00008CAB }, /* GL_RENDERBUFFER_SAMPLES_EXT */ - { 36310, 0x00008D55 }, /* GL_RENDERBUFFER_STENCIL_SIZE */ - { 36339, 0x00008D55 }, /* GL_RENDERBUFFER_STENCIL_SIZE_OES */ - { 36372, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH */ - { 36394, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH_EXT */ - { 36420, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH_OES */ - { 36446, 0x00001F01 }, /* GL_RENDERER */ - { 36458, 0x00000C40 }, /* GL_RENDER_MODE */ - { 36473, 0x00002901 }, /* GL_REPEAT */ - { 36483, 0x00001E01 }, /* GL_REPLACE */ - { 36494, 0x00008062 }, /* GL_REPLACE_EXT */ - { 36509, 0x00008153 }, /* GL_REPLICATE_BORDER_HP */ - { 36532, 0x0000803A }, /* GL_RESCALE_NORMAL */ - { 36550, 0x0000803A }, /* GL_RESCALE_NORMAL_EXT */ - { 36572, 0x00008256 }, /* GL_RESET_NOTIFICATION_STRATEGY_ARB */ - { 36607, 0x00008A1B }, /* GL_RETAINED_APPLE */ - { 36625, 0x00000102 }, /* GL_RETURN */ - { 36635, 0x00008F99 }, /* GL_RG16_SNORM */ - { 36649, 0x00008F95 }, /* GL_RG8_SNORM */ - { 36662, 0x00001907 }, /* GL_RGB */ - { 36669, 0x00008052 }, /* GL_RGB10 */ - { 36678, 0x00008059 }, /* GL_RGB10_A2 */ - { 36690, 0x00008059 }, /* GL_RGB10_A2_EXT */ - { 36706, 0x00008052 }, /* GL_RGB10_EXT */ - { 36719, 0x00008053 }, /* GL_RGB12 */ - { 36728, 0x00008053 }, /* GL_RGB12_EXT */ - { 36741, 0x00008054 }, /* GL_RGB16 */ - { 36750, 0x0000881B }, /* GL_RGB16F */ - { 36760, 0x00008D89 }, /* GL_RGB16I */ - { 36770, 0x00008D89 }, /* GL_RGB16I_EXT */ - { 36784, 0x00008D77 }, /* GL_RGB16UI */ - { 36795, 0x00008D77 }, /* GL_RGB16UI_EXT */ - { 36810, 0x00008054 }, /* GL_RGB16_EXT */ - { 36823, 0x00008F9A }, /* GL_RGB16_SNORM */ - { 36838, 0x0000804E }, /* GL_RGB2_EXT */ - { 36850, 0x00008815 }, /* GL_RGB32F */ - { 36860, 0x00008D83 }, /* GL_RGB32I */ - { 36870, 0x00008D83 }, /* GL_RGB32I_EXT */ - { 36884, 0x00008D71 }, /* GL_RGB32UI */ - { 36895, 0x00008D71 }, /* GL_RGB32UI_EXT */ - { 36910, 0x0000804F }, /* GL_RGB4 */ - { 36918, 0x0000804F }, /* GL_RGB4_EXT */ - { 36930, 0x000083A1 }, /* GL_RGB4_S3TC */ - { 36943, 0x00008050 }, /* GL_RGB5 */ - { 36951, 0x00008D62 }, /* GL_RGB565 */ - { 36961, 0x00008D62 }, /* GL_RGB565_OES */ - { 36975, 0x00008057 }, /* GL_RGB5_A1 */ - { 36986, 0x00008057 }, /* GL_RGB5_A1_EXT */ - { 37001, 0x00008057 }, /* GL_RGB5_A1_OES */ - { 37016, 0x00008050 }, /* GL_RGB5_EXT */ - { 37028, 0x00008051 }, /* GL_RGB8 */ - { 37036, 0x00008D8F }, /* GL_RGB8I */ - { 37045, 0x00008D8F }, /* GL_RGB8I_EXT */ - { 37058, 0x00008D7D }, /* GL_RGB8UI */ - { 37068, 0x00008D7D }, /* GL_RGB8UI_EXT */ - { 37082, 0x00008051 }, /* GL_RGB8_EXT */ - { 37094, 0x00008051 }, /* GL_RGB8_OES */ - { 37106, 0x00008F96 }, /* GL_RGB8_SNORM */ - { 37120, 0x00008C3D }, /* GL_RGB9_E5 */ - { 37131, 0x00001908 }, /* GL_RGBA */ - { 37139, 0x0000805A }, /* GL_RGBA12 */ - { 37149, 0x0000805A }, /* GL_RGBA12_EXT */ - { 37163, 0x0000805B }, /* GL_RGBA16 */ - { 37173, 0x0000881A }, /* GL_RGBA16F */ - { 37184, 0x00008D88 }, /* GL_RGBA16I */ - { 37195, 0x00008D88 }, /* GL_RGBA16I_EXT */ - { 37210, 0x00008D76 }, /* GL_RGBA16UI */ - { 37222, 0x00008D76 }, /* GL_RGBA16UI_EXT */ - { 37238, 0x0000805B }, /* GL_RGBA16_EXT */ - { 37252, 0x00008F9B }, /* GL_RGBA16_SNORM */ - { 37268, 0x00008055 }, /* GL_RGBA2 */ - { 37277, 0x00008055 }, /* GL_RGBA2_EXT */ - { 37290, 0x00008814 }, /* GL_RGBA32F */ - { 37301, 0x00008D82 }, /* GL_RGBA32I */ - { 37312, 0x00008D82 }, /* GL_RGBA32I_EXT */ - { 37327, 0x00008D70 }, /* GL_RGBA32UI */ - { 37339, 0x00008D70 }, /* GL_RGBA32UI_EXT */ - { 37355, 0x00008056 }, /* GL_RGBA4 */ - { 37364, 0x000083A5 }, /* GL_RGBA4_DXT5_S3TC */ - { 37383, 0x00008056 }, /* GL_RGBA4_EXT */ - { 37396, 0x00008056 }, /* GL_RGBA4_OES */ - { 37409, 0x000083A3 }, /* GL_RGBA4_S3TC */ - { 37423, 0x00008058 }, /* GL_RGBA8 */ - { 37432, 0x00008D8E }, /* GL_RGBA8I */ - { 37442, 0x00008D8E }, /* GL_RGBA8I_EXT */ - { 37456, 0x00008D7C }, /* GL_RGBA8UI */ - { 37467, 0x00008D7C }, /* GL_RGBA8UI_EXT */ - { 37482, 0x00008058 }, /* GL_RGBA8_EXT */ - { 37495, 0x00008058 }, /* GL_RGBA8_OES */ - { 37508, 0x00008F97 }, /* GL_RGBA8_SNORM */ - { 37523, 0x000083A4 }, /* GL_RGBA_DXT5_S3TC */ - { 37541, 0x00008820 }, /* GL_RGBA_FLOAT_MODE_ARB */ - { 37564, 0x00008D99 }, /* GL_RGBA_INTEGER */ - { 37580, 0x00008D99 }, /* GL_RGBA_INTEGER_EXT */ - { 37600, 0x00008D9E }, /* GL_RGBA_INTEGER_MODE_EXT */ - { 37625, 0x00000C31 }, /* GL_RGBA_MODE */ - { 37638, 0x000083A2 }, /* GL_RGBA_S3TC */ - { 37651, 0x00008F93 }, /* GL_RGBA_SNORM */ - { 37665, 0x00008D98 }, /* GL_RGB_INTEGER */ - { 37680, 0x00008D98 }, /* GL_RGB_INTEGER_EXT */ - { 37699, 0x000083A0 }, /* GL_RGB_S3TC */ - { 37711, 0x00008573 }, /* GL_RGB_SCALE */ - { 37724, 0x00008573 }, /* GL_RGB_SCALE_ARB */ - { 37741, 0x00008573 }, /* GL_RGB_SCALE_EXT */ - { 37758, 0x00008F92 }, /* GL_RGB_SNORM */ - { 37771, 0x00008F91 }, /* GL_RG_SNORM */ - { 37783, 0x00000407 }, /* GL_RIGHT */ - { 37792, 0x00002000 }, /* GL_S */ - { 37797, 0x00008B5D }, /* GL_SAMPLER_1D */ - { 37811, 0x00008DC0 }, /* GL_SAMPLER_1D_ARRAY */ - { 37831, 0x00008DC0 }, /* GL_SAMPLER_1D_ARRAY_EXT */ - { 37855, 0x00008DC3 }, /* GL_SAMPLER_1D_ARRAY_SHADOW */ - { 37882, 0x00008DC3 }, /* GL_SAMPLER_1D_ARRAY_SHADOW_EXT */ - { 37913, 0x00008B61 }, /* GL_SAMPLER_1D_SHADOW */ - { 37934, 0x00008B5E }, /* GL_SAMPLER_2D */ - { 37948, 0x00008DC1 }, /* GL_SAMPLER_2D_ARRAY */ - { 37968, 0x00008DC1 }, /* GL_SAMPLER_2D_ARRAY_EXT */ - { 37992, 0x00008DC4 }, /* GL_SAMPLER_2D_ARRAY_SHADOW */ - { 38019, 0x00008DC4 }, /* GL_SAMPLER_2D_ARRAY_SHADOW_EXT */ - { 38050, 0x00008B63 }, /* GL_SAMPLER_2D_RECT */ - { 38069, 0x00008B64 }, /* GL_SAMPLER_2D_RECT_SHADOW */ - { 38095, 0x00008B62 }, /* GL_SAMPLER_2D_SHADOW */ - { 38116, 0x00008B5F }, /* GL_SAMPLER_3D */ - { 38130, 0x00008B5F }, /* GL_SAMPLER_3D_OES */ - { 38148, 0x00008919 }, /* GL_SAMPLER_BINDING */ - { 38167, 0x00008DC2 }, /* GL_SAMPLER_BUFFER */ - { 38185, 0x00008DC2 }, /* GL_SAMPLER_BUFFER_EXT */ - { 38207, 0x00008B60 }, /* GL_SAMPLER_CUBE */ - { 38223, 0x00008DC5 }, /* GL_SAMPLER_CUBE_SHADOW */ - { 38246, 0x00008DC5 }, /* GL_SAMPLER_CUBE_SHADOW_EXT */ - { 38273, 0x000080A9 }, /* GL_SAMPLES */ - { 38284, 0x000086B4 }, /* GL_SAMPLES_3DFX */ - { 38300, 0x000080A9 }, /* GL_SAMPLES_ARB */ - { 38315, 0x00008914 }, /* GL_SAMPLES_PASSED */ - { 38333, 0x00008914 }, /* GL_SAMPLES_PASSED_ARB */ - { 38355, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ - { 38383, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE_ARB */ - { 38415, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE */ - { 38438, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE_ARB */ - { 38465, 0x000080A8 }, /* GL_SAMPLE_BUFFERS */ - { 38483, 0x000086B3 }, /* GL_SAMPLE_BUFFERS_3DFX */ - { 38506, 0x000080A8 }, /* GL_SAMPLE_BUFFERS_ARB */ - { 38528, 0x000080A0 }, /* GL_SAMPLE_COVERAGE */ - { 38547, 0x000080A0 }, /* GL_SAMPLE_COVERAGE_ARB */ - { 38570, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT */ - { 38596, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT_ARB */ - { 38626, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE */ - { 38651, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE_ARB */ - { 38680, 0x00080000 }, /* GL_SCISSOR_BIT */ - { 38695, 0x00000C10 }, /* GL_SCISSOR_BOX */ - { 38710, 0x00000C11 }, /* GL_SCISSOR_TEST */ - { 38726, 0x0000845E }, /* GL_SECONDARY_COLOR_ARRAY */ - { 38751, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ - { 38791, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB */ - { 38835, 0x0000845D }, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ - { 38868, 0x0000845A }, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ - { 38898, 0x0000845C }, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ - { 38930, 0x0000845B }, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ - { 38960, 0x00001C02 }, /* GL_SELECT */ - { 38970, 0x00000DF3 }, /* GL_SELECTION_BUFFER_POINTER */ - { 38998, 0x00000DF4 }, /* GL_SELECTION_BUFFER_SIZE */ - { 39023, 0x00008012 }, /* GL_SEPARABLE_2D */ - { 39039, 0x00008C8D }, /* GL_SEPARATE_ATTRIBS */ - { 39059, 0x00008C8D }, /* GL_SEPARATE_ATTRIBS_EXT */ - { 39083, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR */ - { 39110, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR_EXT */ - { 39141, 0x0000150F }, /* GL_SET */ - { 39148, 0x00008DF8 }, /* GL_SHADER_BINARY_FORMATS */ - { 39173, 0x00008DFA }, /* GL_SHADER_COMPILER */ - { 39192, 0x00008B48 }, /* GL_SHADER_OBJECT_ARB */ - { 39213, 0x00008B88 }, /* GL_SHADER_SOURCE_LENGTH */ - { 39237, 0x00008B4F }, /* GL_SHADER_TYPE */ - { 39252, 0x00000B54 }, /* GL_SHADE_MODEL */ - { 39267, 0x00008B8C }, /* GL_SHADING_LANGUAGE_VERSION */ - { 39295, 0x000080BF }, /* GL_SHADOW_AMBIENT_SGIX */ - { 39318, 0x000081FB }, /* GL_SHARED_TEXTURE_PALETTE_EXT */ - { 39348, 0x00001601 }, /* GL_SHININESS */ - { 39361, 0x00001402 }, /* GL_SHORT */ - { 39370, 0x00009119 }, /* GL_SIGNALED */ - { 39382, 0x00008F9C }, /* GL_SIGNED_NORMALIZED */ - { 39403, 0x000081F9 }, /* GL_SINGLE_COLOR */ - { 39419, 0x000081F9 }, /* GL_SINGLE_COLOR_EXT */ - { 39439, 0x000085CC }, /* GL_SLICE_ACCUM_SUN */ - { 39458, 0x00008C46 }, /* GL_SLUMINANCE */ - { 39472, 0x00008C47 }, /* GL_SLUMINANCE8 */ - { 39487, 0x00008C45 }, /* GL_SLUMINANCE8_ALPHA8 */ - { 39509, 0x00008C44 }, /* GL_SLUMINANCE_ALPHA */ - { 39529, 0x00001D01 }, /* GL_SMOOTH */ - { 39539, 0x00000B23 }, /* GL_SMOOTH_LINE_WIDTH_GRANULARITY */ - { 39572, 0x00000B22 }, /* GL_SMOOTH_LINE_WIDTH_RANGE */ - { 39599, 0x00000B13 }, /* GL_SMOOTH_POINT_SIZE_GRANULARITY */ - { 39632, 0x00000B12 }, /* GL_SMOOTH_POINT_SIZE_RANGE */ - { 39659, 0x00008588 }, /* GL_SOURCE0_ALPHA */ - { 39676, 0x00008588 }, /* GL_SOURCE0_ALPHA_ARB */ - { 39697, 0x00008588 }, /* GL_SOURCE0_ALPHA_EXT */ - { 39718, 0x00008580 }, /* GL_SOURCE0_RGB */ - { 39733, 0x00008580 }, /* GL_SOURCE0_RGB_ARB */ - { 39752, 0x00008580 }, /* GL_SOURCE0_RGB_EXT */ - { 39771, 0x00008589 }, /* GL_SOURCE1_ALPHA */ - { 39788, 0x00008589 }, /* GL_SOURCE1_ALPHA_ARB */ - { 39809, 0x00008589 }, /* GL_SOURCE1_ALPHA_EXT */ - { 39830, 0x00008581 }, /* GL_SOURCE1_RGB */ - { 39845, 0x00008581 }, /* GL_SOURCE1_RGB_ARB */ - { 39864, 0x00008581 }, /* GL_SOURCE1_RGB_EXT */ - { 39883, 0x0000858A }, /* GL_SOURCE2_ALPHA */ - { 39900, 0x0000858A }, /* GL_SOURCE2_ALPHA_ARB */ - { 39921, 0x0000858A }, /* GL_SOURCE2_ALPHA_EXT */ - { 39942, 0x00008582 }, /* GL_SOURCE2_RGB */ - { 39957, 0x00008582 }, /* GL_SOURCE2_RGB_ARB */ - { 39976, 0x00008582 }, /* GL_SOURCE2_RGB_EXT */ - { 39995, 0x0000858B }, /* GL_SOURCE3_ALPHA_NV */ - { 40015, 0x00008583 }, /* GL_SOURCE3_RGB_NV */ - { 40033, 0x00001202 }, /* GL_SPECULAR */ - { 40045, 0x00002402 }, /* GL_SPHERE_MAP */ - { 40059, 0x00001206 }, /* GL_SPOT_CUTOFF */ - { 40074, 0x00001204 }, /* GL_SPOT_DIRECTION */ - { 40092, 0x00001205 }, /* GL_SPOT_EXPONENT */ - { 40109, 0x00008588 }, /* GL_SRC0_ALPHA */ - { 40123, 0x00008580 }, /* GL_SRC0_RGB */ - { 40135, 0x00008589 }, /* GL_SRC1_ALPHA */ - { 40149, 0x00008581 }, /* GL_SRC1_RGB */ - { 40161, 0x0000858A }, /* GL_SRC2_ALPHA */ - { 40175, 0x00008582 }, /* GL_SRC2_RGB */ - { 40187, 0x00000302 }, /* GL_SRC_ALPHA */ - { 40200, 0x00000308 }, /* GL_SRC_ALPHA_SATURATE */ - { 40222, 0x00000300 }, /* GL_SRC_COLOR */ - { 40235, 0x00008C40 }, /* GL_SRGB */ - { 40243, 0x00008C41 }, /* GL_SRGB8 */ - { 40252, 0x00008C43 }, /* GL_SRGB8_ALPHA8 */ - { 40268, 0x00008C42 }, /* GL_SRGB_ALPHA */ - { 40282, 0x00000503 }, /* GL_STACK_OVERFLOW */ - { 40300, 0x00000504 }, /* GL_STACK_UNDERFLOW */ - { 40319, 0x000088E6 }, /* GL_STATIC_COPY */ - { 40334, 0x000088E6 }, /* GL_STATIC_COPY_ARB */ - { 40353, 0x000088E4 }, /* GL_STATIC_DRAW */ - { 40368, 0x000088E4 }, /* GL_STATIC_DRAW_ARB */ - { 40387, 0x000088E5 }, /* GL_STATIC_READ */ - { 40402, 0x000088E5 }, /* GL_STATIC_READ_ARB */ - { 40421, 0x00001802 }, /* GL_STENCIL */ - { 40432, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT */ - { 40454, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_EXT */ - { 40480, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_OES */ - { 40506, 0x00008801 }, /* GL_STENCIL_BACK_FAIL */ - { 40527, 0x00008801 }, /* GL_STENCIL_BACK_FAIL_ATI */ - { 40552, 0x00008800 }, /* GL_STENCIL_BACK_FUNC */ - { 40573, 0x00008800 }, /* GL_STENCIL_BACK_FUNC_ATI */ - { 40598, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ - { 40630, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI */ - { 40666, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ - { 40698, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI */ - { 40734, 0x00008CA3 }, /* GL_STENCIL_BACK_REF */ - { 40754, 0x00008CA4 }, /* GL_STENCIL_BACK_VALUE_MASK */ - { 40781, 0x00008CA5 }, /* GL_STENCIL_BACK_WRITEMASK */ - { 40807, 0x00000D57 }, /* GL_STENCIL_BITS */ - { 40823, 0x00008224 }, /* GL_STENCIL_BUFFER */ - { 40841, 0x00000400 }, /* GL_STENCIL_BUFFER_BIT */ - { 40863, 0x00000B91 }, /* GL_STENCIL_CLEAR_VALUE */ - { 40886, 0x00000B94 }, /* GL_STENCIL_FAIL */ - { 40902, 0x00000B92 }, /* GL_STENCIL_FUNC */ - { 40918, 0x00001901 }, /* GL_STENCIL_INDEX */ - { 40935, 0x00008D46 }, /* GL_STENCIL_INDEX1 */ - { 40953, 0x00008D49 }, /* GL_STENCIL_INDEX16 */ - { 40972, 0x00008D49 }, /* GL_STENCIL_INDEX16_EXT */ - { 40995, 0x00008D46 }, /* GL_STENCIL_INDEX1_EXT */ - { 41017, 0x00008D46 }, /* GL_STENCIL_INDEX1_OES */ - { 41039, 0x00008D47 }, /* GL_STENCIL_INDEX4 */ - { 41057, 0x00008D47 }, /* GL_STENCIL_INDEX4_EXT */ - { 41079, 0x00008D47 }, /* GL_STENCIL_INDEX4_OES */ - { 41101, 0x00008D48 }, /* GL_STENCIL_INDEX8 */ - { 41119, 0x00008D48 }, /* GL_STENCIL_INDEX8_EXT */ - { 41141, 0x00008D48 }, /* GL_STENCIL_INDEX8_OES */ - { 41163, 0x00008D45 }, /* GL_STENCIL_INDEX_EXT */ - { 41184, 0x00000B95 }, /* GL_STENCIL_PASS_DEPTH_FAIL */ - { 41211, 0x00000B96 }, /* GL_STENCIL_PASS_DEPTH_PASS */ - { 41238, 0x00000B97 }, /* GL_STENCIL_REF */ - { 41253, 0x00000B90 }, /* GL_STENCIL_TEST */ - { 41269, 0x00008910 }, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ - { 41298, 0x00000B93 }, /* GL_STENCIL_VALUE_MASK */ - { 41320, 0x00000B98 }, /* GL_STENCIL_WRITEMASK */ - { 41341, 0x00000C33 }, /* GL_STEREO */ - { 41351, 0x000085BE }, /* GL_STORAGE_CACHED_APPLE */ - { 41375, 0x000085BD }, /* GL_STORAGE_PRIVATE_APPLE */ - { 41400, 0x000085BF }, /* GL_STORAGE_SHARED_APPLE */ - { 41424, 0x000088E2 }, /* GL_STREAM_COPY */ - { 41439, 0x000088E2 }, /* GL_STREAM_COPY_ARB */ - { 41458, 0x000088E0 }, /* GL_STREAM_DRAW */ - { 41473, 0x000088E0 }, /* GL_STREAM_DRAW_ARB */ - { 41492, 0x000088E1 }, /* GL_STREAM_READ */ - { 41507, 0x000088E1 }, /* GL_STREAM_READ_ARB */ - { 41526, 0x00000D50 }, /* GL_SUBPIXEL_BITS */ - { 41543, 0x000084E7 }, /* GL_SUBTRACT */ - { 41555, 0x000084E7 }, /* GL_SUBTRACT_ARB */ - { 41571, 0x00009113 }, /* GL_SYNC_CONDITION */ - { 41589, 0x00009116 }, /* GL_SYNC_FENCE */ - { 41603, 0x00009115 }, /* GL_SYNC_FLAGS */ - { 41617, 0x00000001 }, /* GL_SYNC_FLUSH_COMMANDS_BIT */ - { 41644, 0x00009117 }, /* GL_SYNC_GPU_COMMANDS_COMPLETE */ - { 41674, 0x00009114 }, /* GL_SYNC_STATUS */ - { 41689, 0x00002001 }, /* GL_T */ - { 41694, 0x00002A2A }, /* GL_T2F_C3F_V3F */ - { 41709, 0x00002A2C }, /* GL_T2F_C4F_N3F_V3F */ - { 41728, 0x00002A29 }, /* GL_T2F_C4UB_V3F */ - { 41744, 0x00002A2B }, /* GL_T2F_N3F_V3F */ - { 41759, 0x00002A27 }, /* GL_T2F_V3F */ - { 41770, 0x00002A2D }, /* GL_T4F_C4F_N3F_V4F */ - { 41789, 0x00002A28 }, /* GL_T4F_V4F */ - { 41800, 0x00008031 }, /* GL_TABLE_TOO_LARGE_EXT */ - { 41823, 0x00001702 }, /* GL_TEXTURE */ - { 41834, 0x000084C0 }, /* GL_TEXTURE0 */ - { 41846, 0x000084C0 }, /* GL_TEXTURE0_ARB */ - { 41862, 0x000084C1 }, /* GL_TEXTURE1 */ - { 41874, 0x000084CA }, /* GL_TEXTURE10 */ - { 41887, 0x000084CA }, /* GL_TEXTURE10_ARB */ - { 41904, 0x000084CB }, /* GL_TEXTURE11 */ - { 41917, 0x000084CB }, /* GL_TEXTURE11_ARB */ - { 41934, 0x000084CC }, /* GL_TEXTURE12 */ - { 41947, 0x000084CC }, /* GL_TEXTURE12_ARB */ - { 41964, 0x000084CD }, /* GL_TEXTURE13 */ - { 41977, 0x000084CD }, /* GL_TEXTURE13_ARB */ - { 41994, 0x000084CE }, /* GL_TEXTURE14 */ - { 42007, 0x000084CE }, /* GL_TEXTURE14_ARB */ - { 42024, 0x000084CF }, /* GL_TEXTURE15 */ - { 42037, 0x000084CF }, /* GL_TEXTURE15_ARB */ - { 42054, 0x000084D0 }, /* GL_TEXTURE16 */ - { 42067, 0x000084D0 }, /* GL_TEXTURE16_ARB */ - { 42084, 0x000084D1 }, /* GL_TEXTURE17 */ - { 42097, 0x000084D1 }, /* GL_TEXTURE17_ARB */ - { 42114, 0x000084D2 }, /* GL_TEXTURE18 */ - { 42127, 0x000084D2 }, /* GL_TEXTURE18_ARB */ - { 42144, 0x000084D3 }, /* GL_TEXTURE19 */ - { 42157, 0x000084D3 }, /* GL_TEXTURE19_ARB */ - { 42174, 0x000084C1 }, /* GL_TEXTURE1_ARB */ - { 42190, 0x000084C2 }, /* GL_TEXTURE2 */ - { 42202, 0x000084D4 }, /* GL_TEXTURE20 */ - { 42215, 0x000084D4 }, /* GL_TEXTURE20_ARB */ - { 42232, 0x000084D5 }, /* GL_TEXTURE21 */ - { 42245, 0x000084D5 }, /* GL_TEXTURE21_ARB */ - { 42262, 0x000084D6 }, /* GL_TEXTURE22 */ - { 42275, 0x000084D6 }, /* GL_TEXTURE22_ARB */ - { 42292, 0x000084D7 }, /* GL_TEXTURE23 */ - { 42305, 0x000084D7 }, /* GL_TEXTURE23_ARB */ - { 42322, 0x000084D8 }, /* GL_TEXTURE24 */ - { 42335, 0x000084D8 }, /* GL_TEXTURE24_ARB */ - { 42352, 0x000084D9 }, /* GL_TEXTURE25 */ - { 42365, 0x000084D9 }, /* GL_TEXTURE25_ARB */ - { 42382, 0x000084DA }, /* GL_TEXTURE26 */ - { 42395, 0x000084DA }, /* GL_TEXTURE26_ARB */ - { 42412, 0x000084DB }, /* GL_TEXTURE27 */ - { 42425, 0x000084DB }, /* GL_TEXTURE27_ARB */ - { 42442, 0x000084DC }, /* GL_TEXTURE28 */ - { 42455, 0x000084DC }, /* GL_TEXTURE28_ARB */ - { 42472, 0x000084DD }, /* GL_TEXTURE29 */ - { 42485, 0x000084DD }, /* GL_TEXTURE29_ARB */ - { 42502, 0x000084C2 }, /* GL_TEXTURE2_ARB */ - { 42518, 0x000084C3 }, /* GL_TEXTURE3 */ - { 42530, 0x000084DE }, /* GL_TEXTURE30 */ - { 42543, 0x000084DE }, /* GL_TEXTURE30_ARB */ - { 42560, 0x000084DF }, /* GL_TEXTURE31 */ - { 42573, 0x000084DF }, /* GL_TEXTURE31_ARB */ - { 42590, 0x000084C3 }, /* GL_TEXTURE3_ARB */ - { 42606, 0x000084C4 }, /* GL_TEXTURE4 */ - { 42618, 0x000084C4 }, /* GL_TEXTURE4_ARB */ - { 42634, 0x000084C5 }, /* GL_TEXTURE5 */ - { 42646, 0x000084C5 }, /* GL_TEXTURE5_ARB */ - { 42662, 0x000084C6 }, /* GL_TEXTURE6 */ - { 42674, 0x000084C6 }, /* GL_TEXTURE6_ARB */ - { 42690, 0x000084C7 }, /* GL_TEXTURE7 */ - { 42702, 0x000084C7 }, /* GL_TEXTURE7_ARB */ - { 42718, 0x000084C8 }, /* GL_TEXTURE8 */ - { 42730, 0x000084C8 }, /* GL_TEXTURE8_ARB */ - { 42746, 0x000084C9 }, /* GL_TEXTURE9 */ - { 42758, 0x000084C9 }, /* GL_TEXTURE9_ARB */ - { 42774, 0x00000DE0 }, /* GL_TEXTURE_1D */ - { 42788, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY */ - { 42808, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY_EXT */ - { 42832, 0x00000DE1 }, /* GL_TEXTURE_2D */ - { 42846, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY */ - { 42866, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY_EXT */ - { 42890, 0x0000806F }, /* GL_TEXTURE_3D */ - { 42904, 0x0000806F }, /* GL_TEXTURE_3D_OES */ - { 42922, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE */ - { 42944, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE_EXT */ - { 42970, 0x0000813C }, /* GL_TEXTURE_BASE_LEVEL */ - { 42992, 0x00008068 }, /* GL_TEXTURE_BINDING_1D */ - { 43014, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY */ - { 43042, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY_EXT */ - { 43074, 0x00008069 }, /* GL_TEXTURE_BINDING_2D */ - { 43096, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY */ - { 43124, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY_EXT */ - { 43156, 0x0000806A }, /* GL_TEXTURE_BINDING_3D */ - { 43178, 0x0000806A }, /* GL_TEXTURE_BINDING_3D_OES */ - { 43204, 0x00008C2C }, /* GL_TEXTURE_BINDING_BUFFER */ - { 43230, 0x00008C2C }, /* GL_TEXTURE_BINDING_BUFFER_ARB */ - { 43260, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP */ - { 43288, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_ARB */ - { 43320, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_OES */ - { 43352, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE */ - { 43381, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_ARB */ - { 43414, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_NV */ - { 43446, 0x00040000 }, /* GL_TEXTURE_BIT */ - { 43461, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE */ - { 43482, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE_EXT */ - { 43507, 0x00001005 }, /* GL_TEXTURE_BORDER */ - { 43525, 0x00001004 }, /* GL_TEXTURE_BORDER_COLOR */ - { 43549, 0x00008C2A }, /* GL_TEXTURE_BUFFER */ - { 43567, 0x00008C2A }, /* GL_TEXTURE_BUFFER_ARB */ - { 43589, 0x00008C2D }, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING */ - { 43626, 0x00008C2D }, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB */ - { 43667, 0x00008C2E }, /* GL_TEXTURE_BUFFER_FORMAT */ - { 43692, 0x00008C2E }, /* GL_TEXTURE_BUFFER_FORMAT_ARB */ - { 43721, 0x00008171 }, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ - { 43752, 0x00008176 }, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ - { 43782, 0x00008172 }, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ - { 43812, 0x00008175 }, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ - { 43847, 0x00008173 }, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ - { 43878, 0x00008174 }, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ - { 43916, 0x000080BC }, /* GL_TEXTURE_COLOR_TABLE_SGI */ - { 43943, 0x000081EF }, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ - { 43975, 0x000080BF }, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */ - { 44009, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC */ - { 44033, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC_ARB */ - { 44061, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE */ - { 44085, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE_ARB */ - { 44113, 0x0000819B }, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ - { 44146, 0x0000819A }, /* GL_TEXTURE_COMPARE_SGIX */ - { 44170, 0x00001003 }, /* GL_TEXTURE_COMPONENTS */ - { 44192, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED */ - { 44214, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED_ARB */ - { 44240, 0x000086A3 }, /* GL_TEXTURE_COMPRESSED_FORMATS_ARB */ - { 44274, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ - { 44307, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB */ - { 44344, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT */ - { 44372, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT_ARB */ - { 44404, 0x00008078 }, /* GL_TEXTURE_COORD_ARRAY */ - { 44427, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ - { 44465, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB */ - { 44507, 0x00008092 }, /* GL_TEXTURE_COORD_ARRAY_POINTER */ - { 44538, 0x00008088 }, /* GL_TEXTURE_COORD_ARRAY_SIZE */ - { 44566, 0x0000808A }, /* GL_TEXTURE_COORD_ARRAY_STRIDE */ - { 44596, 0x00008089 }, /* GL_TEXTURE_COORD_ARRAY_TYPE */ - { 44624, 0x00008B9D }, /* GL_TEXTURE_CROP_RECT_OES */ - { 44649, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP */ - { 44669, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_ARB */ - { 44693, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ - { 44724, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB */ - { 44759, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES */ - { 44794, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ - { 44825, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB */ - { 44860, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES */ - { 44895, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ - { 44926, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB */ - { 44961, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES */ - { 44996, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_OES */ - { 45020, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ - { 45051, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB */ - { 45086, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES */ - { 45121, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ - { 45152, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB */ - { 45187, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES */ - { 45222, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ - { 45253, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB */ - { 45288, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES */ - { 45323, 0x000088F4 }, /* GL_TEXTURE_CUBE_MAP_SEAMLESS */ - { 45352, 0x00008071 }, /* GL_TEXTURE_DEPTH */ - { 45369, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE */ - { 45391, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE_ARB */ - { 45417, 0x00002300 }, /* GL_TEXTURE_ENV */ - { 45432, 0x00002201 }, /* GL_TEXTURE_ENV_COLOR */ - { 45453, 0x00002200 }, /* GL_TEXTURE_ENV_MODE */ - { 45473, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL */ - { 45499, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL_EXT */ - { 45529, 0x00002500 }, /* GL_TEXTURE_GEN_MODE */ - { 45549, 0x00002500 }, /* GL_TEXTURE_GEN_MODE_OES */ - { 45573, 0x00000C63 }, /* GL_TEXTURE_GEN_Q */ - { 45590, 0x00000C62 }, /* GL_TEXTURE_GEN_R */ - { 45607, 0x00000C60 }, /* GL_TEXTURE_GEN_S */ - { 45624, 0x00008D60 }, /* GL_TEXTURE_GEN_STR_OES */ - { 45647, 0x00000C61 }, /* GL_TEXTURE_GEN_T */ - { 45664, 0x0000819D }, /* GL_TEXTURE_GEQUAL_R_SGIX */ - { 45689, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE */ - { 45711, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE_EXT */ - { 45737, 0x00001001 }, /* GL_TEXTURE_HEIGHT */ - { 45755, 0x000080ED }, /* GL_TEXTURE_INDEX_SIZE_EXT */ - { 45781, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE */ - { 45807, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE_EXT */ - { 45837, 0x00001003 }, /* GL_TEXTURE_INTERNAL_FORMAT */ - { 45864, 0x0000819C }, /* GL_TEXTURE_LEQUAL_R_SGIX */ - { 45889, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS */ - { 45909, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS_EXT */ - { 45933, 0x00008190 }, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ - { 45960, 0x0000818E }, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ - { 45987, 0x0000818F }, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ - { 46014, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE */ - { 46040, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE_EXT */ - { 46070, 0x00002800 }, /* GL_TEXTURE_MAG_FILTER */ - { 46092, 0x00000BA8 }, /* GL_TEXTURE_MATRIX */ - { 46110, 0x0000898F }, /* GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES */ - { 46150, 0x000084FE }, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ - { 46180, 0x0000836B }, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ - { 46208, 0x00008369 }, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ - { 46236, 0x0000836A }, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ - { 46264, 0x0000813D }, /* GL_TEXTURE_MAX_LEVEL */ - { 46285, 0x0000813B }, /* GL_TEXTURE_MAX_LOD */ - { 46304, 0x00002801 }, /* GL_TEXTURE_MIN_FILTER */ - { 46326, 0x0000813A }, /* GL_TEXTURE_MIN_LOD */ - { 46345, 0x00008066 }, /* GL_TEXTURE_PRIORITY */ - { 46365, 0x000085B7 }, /* GL_TEXTURE_RANGE_LENGTH_APPLE */ - { 46395, 0x000085B8 }, /* GL_TEXTURE_RANGE_POINTER_APPLE */ - { 46426, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE */ - { 46447, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_ARB */ - { 46472, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_NV */ - { 46496, 0x0000805C }, /* GL_TEXTURE_RED_SIZE */ - { 46516, 0x0000805C }, /* GL_TEXTURE_RED_SIZE_EXT */ - { 46540, 0x00008067 }, /* GL_TEXTURE_RESIDENT */ - { 46560, 0x00008C3F }, /* GL_TEXTURE_SHARED_SIZE */ - { 46583, 0x00000BA5 }, /* GL_TEXTURE_STACK_DEPTH */ - { 46606, 0x000088F1 }, /* GL_TEXTURE_STENCIL_SIZE */ - { 46630, 0x000088F1 }, /* GL_TEXTURE_STENCIL_SIZE_EXT */ - { 46658, 0x000085BC }, /* GL_TEXTURE_STORAGE_HINT_APPLE */ - { 46688, 0x00008065 }, /* GL_TEXTURE_TOO_LARGE_EXT */ - { 46713, 0x0000888F }, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */ - { 46747, 0x00001000 }, /* GL_TEXTURE_WIDTH */ - { 46764, 0x00008072 }, /* GL_TEXTURE_WRAP_R */ - { 46782, 0x00008072 }, /* GL_TEXTURE_WRAP_R_OES */ - { 46804, 0x00002802 }, /* GL_TEXTURE_WRAP_S */ - { 46822, 0x00002803 }, /* GL_TEXTURE_WRAP_T */ - { 46840, 0x0000911B }, /* GL_TIMEOUT_EXPIRED */ - { 46859, 0x000088BF }, /* GL_TIME_ELAPSED_EXT */ - { 46879, 0x00008648 }, /* GL_TRACK_MATRIX_NV */ - { 46898, 0x00008649 }, /* GL_TRACK_MATRIX_TRANSFORM_NV */ - { 46927, 0x00001000 }, /* GL_TRANSFORM_BIT */ - { 46944, 0x00008E22 }, /* GL_TRANSFORM_FEEDBACK */ - { 46966, 0x00008E25 }, /* GL_TRANSFORM_FEEDBACK_BINDING */ - { 46996, 0x00008C8E }, /* GL_TRANSFORM_FEEDBACK_BUFFER */ - { 47025, 0x00008E24 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE */ - { 47061, 0x00008C8F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING */ - { 47098, 0x00008C8F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT */ - { 47139, 0x00008C8E }, /* GL_TRANSFORM_FEEDBACK_BUFFER_EXT */ - { 47172, 0x00008C7F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE */ - { 47206, 0x00008C7F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE_EXT */ - { 47244, 0x00008E23 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED */ - { 47280, 0x00008C85 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE */ - { 47314, 0x00008C85 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT */ - { 47352, 0x00008C84 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_START */ - { 47387, 0x00008C84 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT */ - { 47426, 0x00008C88 }, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN */ - { 47467, 0x00008C88 }, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT */ - { 47512, 0x00008C83 }, /* GL_TRANSFORM_FEEDBACK_VARYINGS */ - { 47543, 0x00008C83 }, /* GL_TRANSFORM_FEEDBACK_VARYINGS_EXT */ - { 47578, 0x00008C76 }, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH */ - { 47619, 0x00008C76 }, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT */ - { 47664, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX */ - { 47690, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX_ARB */ - { 47720, 0x000088B7 }, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ - { 47752, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ - { 47782, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX_ARB */ - { 47816, 0x0000862C }, /* GL_TRANSPOSE_NV */ - { 47832, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX */ - { 47863, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX_ARB */ - { 47898, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX */ - { 47926, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX_ARB */ - { 47958, 0x00000004 }, /* GL_TRIANGLES */ - { 47971, 0x0000000C }, /* GL_TRIANGLES_ADJACENCY */ - { 47994, 0x0000000C }, /* GL_TRIANGLES_ADJACENCY_ARB */ - { 48021, 0x00000006 }, /* GL_TRIANGLE_FAN */ - { 48037, 0x00008615 }, /* GL_TRIANGLE_MESH_SUN */ - { 48058, 0x00000005 }, /* GL_TRIANGLE_STRIP */ - { 48076, 0x0000000D }, /* GL_TRIANGLE_STRIP_ADJACENCY */ - { 48104, 0x0000000D }, /* GL_TRIANGLE_STRIP_ADJACENCY_ARB */ - { 48136, 0x00000001 }, /* GL_TRUE */ - { 48144, 0x00008A1C }, /* GL_UNDEFINED_APPLE */ - { 48163, 0x00008255 }, /* GL_UNKNOWN_CONTEXT_RESET_ARB */ - { 48192, 0x00000CF5 }, /* GL_UNPACK_ALIGNMENT */ - { 48212, 0x0000806E }, /* GL_UNPACK_IMAGE_HEIGHT */ - { 48235, 0x00000CF1 }, /* GL_UNPACK_LSB_FIRST */ - { 48255, 0x00000CF2 }, /* GL_UNPACK_ROW_LENGTH */ - { 48276, 0x0000806D }, /* GL_UNPACK_SKIP_IMAGES */ - { 48298, 0x00000CF4 }, /* GL_UNPACK_SKIP_PIXELS */ - { 48320, 0x00000CF3 }, /* GL_UNPACK_SKIP_ROWS */ - { 48340, 0x00000CF0 }, /* GL_UNPACK_SWAP_BYTES */ - { 48361, 0x00009118 }, /* GL_UNSIGNALED */ - { 48375, 0x00001401 }, /* GL_UNSIGNED_BYTE */ - { 48392, 0x00008362 }, /* GL_UNSIGNED_BYTE_2_3_3_REV */ - { 48419, 0x00008032 }, /* GL_UNSIGNED_BYTE_3_3_2 */ - { 48442, 0x00001405 }, /* GL_UNSIGNED_INT */ - { 48458, 0x00008C3B }, /* GL_UNSIGNED_INT_10F_11F_11F_REV */ - { 48490, 0x00008036 }, /* GL_UNSIGNED_INT_10_10_10_2 */ - { 48517, 0x00008DF6 }, /* GL_UNSIGNED_INT_10_10_10_2_OES */ - { 48548, 0x000084FA }, /* GL_UNSIGNED_INT_24_8 */ - { 48569, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_EXT */ - { 48594, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_NV */ - { 48618, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_OES */ - { 48643, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV */ - { 48674, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV_EXT */ - { 48709, 0x00008C3E }, /* GL_UNSIGNED_INT_5_9_9_9_REV */ - { 48737, 0x00008035 }, /* GL_UNSIGNED_INT_8_8_8_8 */ - { 48761, 0x00008367 }, /* GL_UNSIGNED_INT_8_8_8_8_REV */ - { 48789, 0x00008DD1 }, /* GL_UNSIGNED_INT_SAMPLER_1D */ - { 48816, 0x00008DD6 }, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY */ - { 48849, 0x00008DD6 }, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT */ - { 48886, 0x00008DD1 }, /* GL_UNSIGNED_INT_SAMPLER_1D_EXT */ - { 48917, 0x00008DD2 }, /* GL_UNSIGNED_INT_SAMPLER_2D */ - { 48944, 0x00008DD7 }, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY */ - { 48977, 0x00008DD7 }, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT */ - { 49014, 0x00008DD2 }, /* GL_UNSIGNED_INT_SAMPLER_2D_EXT */ - { 49045, 0x00008DD5 }, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT */ - { 49077, 0x00008DD5 }, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT */ - { 49113, 0x00008DD3 }, /* GL_UNSIGNED_INT_SAMPLER_3D */ - { 49140, 0x00008DD3 }, /* GL_UNSIGNED_INT_SAMPLER_3D_EXT */ - { 49171, 0x00008DD8 }, /* GL_UNSIGNED_INT_SAMPLER_BUFFER */ - { 49202, 0x00008DD8 }, /* GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT */ - { 49237, 0x00008DD4 }, /* GL_UNSIGNED_INT_SAMPLER_CUBE */ - { 49266, 0x00008DD4 }, /* GL_UNSIGNED_INT_SAMPLER_CUBE_EXT */ - { 49299, 0x00008DC6 }, /* GL_UNSIGNED_INT_VEC2 */ - { 49320, 0x00008DC6 }, /* GL_UNSIGNED_INT_VEC2_EXT */ - { 49345, 0x00008DC7 }, /* GL_UNSIGNED_INT_VEC3 */ - { 49366, 0x00008DC7 }, /* GL_UNSIGNED_INT_VEC3_EXT */ - { 49391, 0x00008DC8 }, /* GL_UNSIGNED_INT_VEC4 */ - { 49412, 0x00008DC8 }, /* GL_UNSIGNED_INT_VEC4_EXT */ - { 49437, 0x00008C17 }, /* GL_UNSIGNED_NORMALIZED */ - { 49460, 0x00001403 }, /* GL_UNSIGNED_SHORT */ - { 49478, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ - { 49508, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT */ - { 49542, 0x00008033 }, /* GL_UNSIGNED_SHORT_4_4_4_4 */ - { 49568, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ - { 49598, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT */ - { 49632, 0x00008034 }, /* GL_UNSIGNED_SHORT_5_5_5_1 */ - { 49658, 0x00008363 }, /* GL_UNSIGNED_SHORT_5_6_5 */ - { 49682, 0x00008364 }, /* GL_UNSIGNED_SHORT_5_6_5_REV */ - { 49710, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_APPLE */ - { 49738, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_MESA */ - { 49765, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ - { 49797, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_MESA */ - { 49828, 0x00008CA2 }, /* GL_UPPER_LEFT */ - { 49842, 0x00002A20 }, /* GL_V2F */ - { 49849, 0x00002A21 }, /* GL_V3F */ - { 49856, 0x00008B83 }, /* GL_VALIDATE_STATUS */ - { 49875, 0x00001F00 }, /* GL_VENDOR */ - { 49885, 0x00001F02 }, /* GL_VERSION */ - { 49896, 0x00008074 }, /* GL_VERTEX_ARRAY */ - { 49912, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING */ - { 49936, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING_APPLE */ - { 49966, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ - { 49997, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING_ARB */ - { 50032, 0x0000808E }, /* GL_VERTEX_ARRAY_POINTER */ - { 50056, 0x0000807A }, /* GL_VERTEX_ARRAY_SIZE */ - { 50077, 0x0000807C }, /* GL_VERTEX_ARRAY_STRIDE */ - { 50100, 0x0000807B }, /* GL_VERTEX_ARRAY_TYPE */ - { 50121, 0x00008650 }, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ - { 50148, 0x0000865A }, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ - { 50176, 0x0000865B }, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ - { 50204, 0x0000865C }, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ - { 50232, 0x0000865D }, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ - { 50260, 0x0000865E }, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ - { 50288, 0x0000865F }, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ - { 50316, 0x00008651 }, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ - { 50343, 0x00008652 }, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ - { 50370, 0x00008653 }, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ - { 50397, 0x00008654 }, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ - { 50424, 0x00008655 }, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ - { 50451, 0x00008656 }, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ - { 50478, 0x00008657 }, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ - { 50505, 0x00008658 }, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ - { 50532, 0x00008659 }, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ - { 50559, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ - { 50597, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB */ - { 50639, 0x000088FE }, /* GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB */ - { 50674, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ - { 50705, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB */ - { 50740, 0x000088FD }, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER */ - { 50771, 0x000088FD }, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT */ - { 50806, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ - { 50840, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB */ - { 50878, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ - { 50909, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB */ - { 50944, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ - { 50972, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB */ - { 51004, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ - { 51034, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB */ - { 51068, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ - { 51096, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB */ - { 51128, 0x000086A7 }, /* GL_VERTEX_BLEND_ARB */ - { 51148, 0x00008620 }, /* GL_VERTEX_PROGRAM_ARB */ - { 51170, 0x0000864A }, /* GL_VERTEX_PROGRAM_BINDING_NV */ - { 51199, 0x00008620 }, /* GL_VERTEX_PROGRAM_NV */ - { 51220, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE */ - { 51249, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_ARB */ - { 51282, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_NV */ - { 51314, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE */ - { 51341, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_ARB */ - { 51372, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_NV */ - { 51402, 0x00008B31 }, /* GL_VERTEX_SHADER */ - { 51419, 0x00008B31 }, /* GL_VERTEX_SHADER_ARB */ - { 51440, 0x00008621 }, /* GL_VERTEX_STATE_PROGRAM_NV */ - { 51467, 0x00000BA2 }, /* GL_VIEWPORT */ - { 51479, 0x00000800 }, /* GL_VIEWPORT_BIT */ - { 51495, 0x00008A1A }, /* GL_VOLATILE_APPLE */ - { 51513, 0x0000911D }, /* GL_WAIT_FAILED */ - { 51528, 0x000086AD }, /* GL_WEIGHT_ARRAY_ARB */ - { 51548, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ - { 51579, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB */ - { 51614, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_OES */ - { 51649, 0x000086AD }, /* GL_WEIGHT_ARRAY_OES */ - { 51669, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_ARB */ - { 51697, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_OES */ - { 51725, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_ARB */ - { 51750, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_OES */ - { 51775, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ - { 51802, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_OES */ - { 51829, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_ARB */ - { 51854, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_OES */ - { 51879, 0x000086A6 }, /* GL_WEIGHT_SUM_UNITY_ARB */ - { 51903, 0x000081D4 }, /* GL_WRAP_BORDER_SUN */ - { 51922, 0x000088B9 }, /* GL_WRITE_ONLY */ - { 51936, 0x000088B9 }, /* GL_WRITE_ONLY_ARB */ - { 51954, 0x000088B9 }, /* GL_WRITE_ONLY_OES */ - { 51972, 0x00001506 }, /* GL_XOR */ - { 51979, 0x000085B9 }, /* GL_YCBCR_422_APPLE */ - { 51998, 0x00008757 }, /* GL_YCBCR_MESA */ - { 52012, 0x00000000 }, /* GL_ZERO */ - { 52020, 0x00000D16 }, /* GL_ZOOM_X */ - { 52030, 0x00000D17 }, /* GL_ZOOM_Y */ + { 9439, 0x00008825 }, /* GL_DRAW_BUFFER0_NV */ + { 9458, 0x00008826 }, /* GL_DRAW_BUFFER1 */ + { 9474, 0x0000882F }, /* GL_DRAW_BUFFER10 */ + { 9491, 0x0000882F }, /* GL_DRAW_BUFFER10_ARB */ + { 9512, 0x0000882F }, /* GL_DRAW_BUFFER10_ATI */ + { 9533, 0x0000882F }, /* GL_DRAW_BUFFER10_NV */ + { 9553, 0x00008830 }, /* GL_DRAW_BUFFER11 */ + { 9570, 0x00008830 }, /* GL_DRAW_BUFFER11_ARB */ + { 9591, 0x00008830 }, /* GL_DRAW_BUFFER11_ATI */ + { 9612, 0x00008830 }, /* GL_DRAW_BUFFER11_NV */ + { 9632, 0x00008831 }, /* GL_DRAW_BUFFER12 */ + { 9649, 0x00008831 }, /* GL_DRAW_BUFFER12_ARB */ + { 9670, 0x00008831 }, /* GL_DRAW_BUFFER12_ATI */ + { 9691, 0x00008831 }, /* GL_DRAW_BUFFER12_NV */ + { 9711, 0x00008832 }, /* GL_DRAW_BUFFER13 */ + { 9728, 0x00008832 }, /* GL_DRAW_BUFFER13_ARB */ + { 9749, 0x00008832 }, /* GL_DRAW_BUFFER13_ATI */ + { 9770, 0x00008832 }, /* GL_DRAW_BUFFER13_NV */ + { 9790, 0x00008833 }, /* GL_DRAW_BUFFER14 */ + { 9807, 0x00008833 }, /* GL_DRAW_BUFFER14_ARB */ + { 9828, 0x00008833 }, /* GL_DRAW_BUFFER14_ATI */ + { 9849, 0x00008833 }, /* GL_DRAW_BUFFER14_NV */ + { 9869, 0x00008834 }, /* GL_DRAW_BUFFER15 */ + { 9886, 0x00008834 }, /* GL_DRAW_BUFFER15_ARB */ + { 9907, 0x00008834 }, /* GL_DRAW_BUFFER15_ATI */ + { 9928, 0x00008834 }, /* GL_DRAW_BUFFER15_NV */ + { 9948, 0x00008826 }, /* GL_DRAW_BUFFER1_ARB */ + { 9968, 0x00008826 }, /* GL_DRAW_BUFFER1_ATI */ + { 9988, 0x00008826 }, /* GL_DRAW_BUFFER1_NV */ + { 10007, 0x00008827 }, /* GL_DRAW_BUFFER2 */ + { 10023, 0x00008827 }, /* GL_DRAW_BUFFER2_ARB */ + { 10043, 0x00008827 }, /* GL_DRAW_BUFFER2_ATI */ + { 10063, 0x00008827 }, /* GL_DRAW_BUFFER2_NV */ + { 10082, 0x00008828 }, /* GL_DRAW_BUFFER3 */ + { 10098, 0x00008828 }, /* GL_DRAW_BUFFER3_ARB */ + { 10118, 0x00008828 }, /* GL_DRAW_BUFFER3_ATI */ + { 10138, 0x00008828 }, /* GL_DRAW_BUFFER3_NV */ + { 10157, 0x00008829 }, /* GL_DRAW_BUFFER4 */ + { 10173, 0x00008829 }, /* GL_DRAW_BUFFER4_ARB */ + { 10193, 0x00008829 }, /* GL_DRAW_BUFFER4_ATI */ + { 10213, 0x00008829 }, /* GL_DRAW_BUFFER4_NV */ + { 10232, 0x0000882A }, /* GL_DRAW_BUFFER5 */ + { 10248, 0x0000882A }, /* GL_DRAW_BUFFER5_ARB */ + { 10268, 0x0000882A }, /* GL_DRAW_BUFFER5_ATI */ + { 10288, 0x0000882A }, /* GL_DRAW_BUFFER5_NV */ + { 10307, 0x0000882B }, /* GL_DRAW_BUFFER6 */ + { 10323, 0x0000882B }, /* GL_DRAW_BUFFER6_ARB */ + { 10343, 0x0000882B }, /* GL_DRAW_BUFFER6_ATI */ + { 10363, 0x0000882B }, /* GL_DRAW_BUFFER6_NV */ + { 10382, 0x0000882C }, /* GL_DRAW_BUFFER7 */ + { 10398, 0x0000882C }, /* GL_DRAW_BUFFER7_ARB */ + { 10418, 0x0000882C }, /* GL_DRAW_BUFFER7_ATI */ + { 10438, 0x0000882C }, /* GL_DRAW_BUFFER7_NV */ + { 10457, 0x0000882D }, /* GL_DRAW_BUFFER8 */ + { 10473, 0x0000882D }, /* GL_DRAW_BUFFER8_ARB */ + { 10493, 0x0000882D }, /* GL_DRAW_BUFFER8_ATI */ + { 10513, 0x0000882D }, /* GL_DRAW_BUFFER8_NV */ + { 10532, 0x0000882E }, /* GL_DRAW_BUFFER9 */ + { 10548, 0x0000882E }, /* GL_DRAW_BUFFER9_ARB */ + { 10568, 0x0000882E }, /* GL_DRAW_BUFFER9_ATI */ + { 10588, 0x0000882E }, /* GL_DRAW_BUFFER9_NV */ + { 10607, 0x00008CA9 }, /* GL_DRAW_FRAMEBUFFER */ + { 10627, 0x00008CA6 }, /* GL_DRAW_FRAMEBUFFER_BINDING */ + { 10655, 0x00008CA6 }, /* GL_DRAW_FRAMEBUFFER_BINDING_EXT */ + { 10687, 0x00008CA9 }, /* GL_DRAW_FRAMEBUFFER_EXT */ + { 10711, 0x00000705 }, /* GL_DRAW_PIXEL_TOKEN */ + { 10731, 0x00000304 }, /* GL_DST_ALPHA */ + { 10744, 0x00000306 }, /* GL_DST_COLOR */ + { 10757, 0x0000877A }, /* GL_DU8DV8_ATI */ + { 10771, 0x00008779 }, /* GL_DUDV_ATI */ + { 10783, 0x000088EA }, /* GL_DYNAMIC_COPY */ + { 10799, 0x000088EA }, /* GL_DYNAMIC_COPY_ARB */ + { 10819, 0x000088E8 }, /* GL_DYNAMIC_DRAW */ + { 10835, 0x000088E8 }, /* GL_DYNAMIC_DRAW_ARB */ + { 10855, 0x000088E9 }, /* GL_DYNAMIC_READ */ + { 10871, 0x000088E9 }, /* GL_DYNAMIC_READ_ARB */ + { 10891, 0x00000B43 }, /* GL_EDGE_FLAG */ + { 10904, 0x00008079 }, /* GL_EDGE_FLAG_ARRAY */ + { 10923, 0x0000889B }, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING */ + { 10957, 0x0000889B }, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB */ + { 10995, 0x00008093 }, /* GL_EDGE_FLAG_ARRAY_POINTER */ + { 11022, 0x0000808C }, /* GL_EDGE_FLAG_ARRAY_STRIDE */ + { 11048, 0x00008893 }, /* GL_ELEMENT_ARRAY_BUFFER */ + { 11072, 0x00008895 }, /* GL_ELEMENT_ARRAY_BUFFER_BINDING */ + { 11104, 0x00008895 }, /* GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB */ + { 11140, 0x00001600 }, /* GL_EMISSION */ + { 11152, 0x00002000 }, /* GL_ENABLE_BIT */ + { 11166, 0x00000202 }, /* GL_EQUAL */ + { 11175, 0x00001509 }, /* GL_EQUIV */ + { 11184, 0x00010000 }, /* GL_EVAL_BIT */ + { 11196, 0x00000800 }, /* GL_EXP */ + { 11203, 0x00000801 }, /* GL_EXP2 */ + { 11211, 0x00001F03 }, /* GL_EXTENSIONS */ + { 11225, 0x00002400 }, /* GL_EYE_LINEAR */ + { 11239, 0x00002502 }, /* GL_EYE_PLANE */ + { 11252, 0x0000855C }, /* GL_EYE_PLANE_ABSOLUTE_NV */ + { 11277, 0x0000855B }, /* GL_EYE_RADIAL_NV */ + { 11294, 0x00000000 }, /* GL_FALSE */ + { 11303, 0x00001101 }, /* GL_FASTEST */ + { 11314, 0x00001C01 }, /* GL_FEEDBACK */ + { 11326, 0x00000DF0 }, /* GL_FEEDBACK_BUFFER_POINTER */ + { 11353, 0x00000DF1 }, /* GL_FEEDBACK_BUFFER_SIZE */ + { 11377, 0x00000DF2 }, /* GL_FEEDBACK_BUFFER_TYPE */ + { 11401, 0x00001B02 }, /* GL_FILL */ + { 11409, 0x00008E4D }, /* GL_FIRST_VERTEX_CONVENTION */ + { 11436, 0x00008E4D }, /* GL_FIRST_VERTEX_CONVENTION_EXT */ + { 11467, 0x0000140C }, /* GL_FIXED */ + { 11476, 0x0000140C }, /* GL_FIXED_OES */ + { 11489, 0x0000891D }, /* GL_FIXED_ONLY */ + { 11503, 0x0000891D }, /* GL_FIXED_ONLY_ARB */ + { 11521, 0x00001D00 }, /* GL_FLAT */ + { 11529, 0x00001406 }, /* GL_FLOAT */ + { 11538, 0x00008B5A }, /* GL_FLOAT_MAT2 */ + { 11552, 0x00008B5A }, /* GL_FLOAT_MAT2_ARB */ + { 11570, 0x00008B65 }, /* GL_FLOAT_MAT2x3 */ + { 11586, 0x00008B66 }, /* GL_FLOAT_MAT2x4 */ + { 11602, 0x00008B5B }, /* GL_FLOAT_MAT3 */ + { 11616, 0x00008B5B }, /* GL_FLOAT_MAT3_ARB */ + { 11634, 0x00008B67 }, /* GL_FLOAT_MAT3x2 */ + { 11650, 0x00008B68 }, /* GL_FLOAT_MAT3x4 */ + { 11666, 0x00008B5C }, /* GL_FLOAT_MAT4 */ + { 11680, 0x00008B5C }, /* GL_FLOAT_MAT4_ARB */ + { 11698, 0x00008B69 }, /* GL_FLOAT_MAT4x2 */ + { 11714, 0x00008B6A }, /* GL_FLOAT_MAT4x3 */ + { 11730, 0x00008B50 }, /* GL_FLOAT_VEC2 */ + { 11744, 0x00008B50 }, /* GL_FLOAT_VEC2_ARB */ + { 11762, 0x00008B51 }, /* GL_FLOAT_VEC3 */ + { 11776, 0x00008B51 }, /* GL_FLOAT_VEC3_ARB */ + { 11794, 0x00008B52 }, /* GL_FLOAT_VEC4 */ + { 11808, 0x00008B52 }, /* GL_FLOAT_VEC4_ARB */ + { 11826, 0x00000B60 }, /* GL_FOG */ + { 11833, 0x00000080 }, /* GL_FOG_BIT */ + { 11844, 0x00000B66 }, /* GL_FOG_COLOR */ + { 11857, 0x00008451 }, /* GL_FOG_COORD */ + { 11870, 0x00008451 }, /* GL_FOG_COORDINATE */ + { 11888, 0x00008457 }, /* GL_FOG_COORDINATE_ARRAY */ + { 11912, 0x0000889D }, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING */ + { 11951, 0x0000889D }, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB */ + { 11994, 0x00008456 }, /* GL_FOG_COORDINATE_ARRAY_POINTER */ + { 12026, 0x00008455 }, /* GL_FOG_COORDINATE_ARRAY_STRIDE */ + { 12057, 0x00008454 }, /* GL_FOG_COORDINATE_ARRAY_TYPE */ + { 12086, 0x00008450 }, /* GL_FOG_COORDINATE_SOURCE */ + { 12111, 0x00008457 }, /* GL_FOG_COORD_ARRAY */ + { 12130, 0x0000889D }, /* GL_FOG_COORD_ARRAY_BUFFER_BINDING */ + { 12164, 0x00008456 }, /* GL_FOG_COORD_ARRAY_POINTER */ + { 12191, 0x00008455 }, /* GL_FOG_COORD_ARRAY_STRIDE */ + { 12217, 0x00008454 }, /* GL_FOG_COORD_ARRAY_TYPE */ + { 12241, 0x00008450 }, /* GL_FOG_COORD_SRC */ + { 12258, 0x00000B62 }, /* GL_FOG_DENSITY */ + { 12273, 0x0000855A }, /* GL_FOG_DISTANCE_MODE_NV */ + { 12297, 0x00000B64 }, /* GL_FOG_END */ + { 12308, 0x00000C54 }, /* GL_FOG_HINT */ + { 12320, 0x00000B61 }, /* GL_FOG_INDEX */ + { 12333, 0x00000B65 }, /* GL_FOG_MODE */ + { 12345, 0x00008198 }, /* GL_FOG_OFFSET_SGIX */ + { 12364, 0x00008199 }, /* GL_FOG_OFFSET_VALUE_SGIX */ + { 12389, 0x00000B63 }, /* GL_FOG_START */ + { 12402, 0x00008452 }, /* GL_FRAGMENT_DEPTH */ + { 12420, 0x00008804 }, /* GL_FRAGMENT_PROGRAM_ARB */ + { 12444, 0x00008B30 }, /* GL_FRAGMENT_SHADER */ + { 12463, 0x00008B30 }, /* GL_FRAGMENT_SHADER_ARB */ + { 12486, 0x00008B8B }, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */ + { 12521, 0x00008B8B }, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES */ + { 12560, 0x00008D40 }, /* GL_FRAMEBUFFER */ + { 12575, 0x00008215 }, /* GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE */ + { 12612, 0x00008214 }, /* GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE */ + { 12648, 0x00008210 }, /* GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING */ + { 12689, 0x00008211 }, /* GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE */ + { 12730, 0x00008216 }, /* GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE */ + { 12767, 0x00008213 }, /* GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE */ + { 12804, 0x00008DA7 }, /* GL_FRAMEBUFFER_ATTACHMENT_LAYERED */ + { 12838, 0x00008DA7 }, /* GL_FRAMEBUFFER_ATTACHMENT_LAYERED_ARB */ + { 12876, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME */ + { 12914, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT */ + { 12956, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES */ + { 12998, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE */ + { 13036, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT */ + { 13078, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES */ + { 13120, 0x00008212 }, /* GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE */ + { 13155, 0x00008217 }, /* GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE */ + { 13194, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT */ + { 13243, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES */ + { 13292, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE */ + { 13340, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT */ + { 13392, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES */ + { 13444, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER */ + { 13484, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT */ + { 13528, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL */ + { 13568, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT */ + { 13612, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES */ + { 13656, 0x00008CA6 }, /* GL_FRAMEBUFFER_BINDING */ + { 13679, 0x00008CA6 }, /* GL_FRAMEBUFFER_BINDING_EXT */ + { 13706, 0x00008CA6 }, /* GL_FRAMEBUFFER_BINDING_OES */ + { 13733, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE */ + { 13757, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE_EXT */ + { 13785, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE_OES */ + { 13813, 0x00008218 }, /* GL_FRAMEBUFFER_DEFAULT */ + { 13836, 0x00008D40 }, /* GL_FRAMEBUFFER_EXT */ + { 13855, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT */ + { 13892, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT */ + { 13933, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES */ + { 13974, 0x00008CD9 }, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS */ + { 14011, 0x00008CD9 }, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT */ + { 14052, 0x00008CD9 }, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES */ + { 14093, 0x00008CDB }, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER */ + { 14131, 0x00008CDB }, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT */ + { 14173, 0x00008CDB }, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_OES */ + { 14215, 0x00008CD8 }, /* GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT */ + { 14266, 0x00008CDA }, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT */ + { 14304, 0x00008CDA }, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES */ + { 14342, 0x00008DA9 }, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB */ + { 14384, 0x00008DA8 }, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS */ + { 14424, 0x00008DA8 }, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_ARB */ + { 14468, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT */ + { 14513, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT */ + { 14562, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES */ + { 14611, 0x00008D56 }, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE */ + { 14649, 0x00008D56 }, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT */ + { 14691, 0x00008CDC }, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER */ + { 14729, 0x00008CDC }, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT */ + { 14771, 0x00008CDC }, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_OES */ + { 14813, 0x00008D40 }, /* GL_FRAMEBUFFER_OES */ + { 14832, 0x00008CDE }, /* GL_FRAMEBUFFER_STATUS_ERROR_EXT */ + { 14864, 0x00008219 }, /* GL_FRAMEBUFFER_UNDEFINED */ + { 14889, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED */ + { 14916, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED_EXT */ + { 14947, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED_OES */ + { 14978, 0x00000404 }, /* GL_FRONT */ + { 14987, 0x00000408 }, /* GL_FRONT_AND_BACK */ + { 15005, 0x00000B46 }, /* GL_FRONT_FACE */ + { 15019, 0x00000400 }, /* GL_FRONT_LEFT */ + { 15033, 0x00000401 }, /* GL_FRONT_RIGHT */ + { 15048, 0x00008006 }, /* GL_FUNC_ADD */ + { 15060, 0x00008006 }, /* GL_FUNC_ADD_EXT */ + { 15076, 0x00008006 }, /* GL_FUNC_ADD_OES */ + { 15092, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT */ + { 15117, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT_EXT */ + { 15146, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT_OES */ + { 15175, 0x0000800A }, /* GL_FUNC_SUBTRACT */ + { 15192, 0x0000800A }, /* GL_FUNC_SUBTRACT_EXT */ + { 15213, 0x0000800A }, /* GL_FUNC_SUBTRACT_OES */ + { 15234, 0x00008191 }, /* GL_GENERATE_MIPMAP */ + { 15253, 0x00008192 }, /* GL_GENERATE_MIPMAP_HINT */ + { 15277, 0x00008192 }, /* GL_GENERATE_MIPMAP_HINT_SGIS */ + { 15306, 0x00008191 }, /* GL_GENERATE_MIPMAP_SGIS */ + { 15330, 0x00008917 }, /* GL_GEOMETRY_INPUT_TYPE */ + { 15353, 0x00008DDB }, /* GL_GEOMETRY_INPUT_TYPE_ARB */ + { 15380, 0x00008918 }, /* GL_GEOMETRY_OUTPUT_TYPE */ + { 15404, 0x00008DDC }, /* GL_GEOMETRY_OUTPUT_TYPE_ARB */ + { 15432, 0x00008DD9 }, /* GL_GEOMETRY_SHADER */ + { 15451, 0x00008DD9 }, /* GL_GEOMETRY_SHADER_ARB */ + { 15474, 0x00008916 }, /* GL_GEOMETRY_VERTICES_OUT */ + { 15499, 0x00008DDA }, /* GL_GEOMETRY_VERTICES_OUT_ARB */ + { 15528, 0x00000206 }, /* GL_GEQUAL */ + { 15538, 0x00000204 }, /* GL_GREATER */ + { 15549, 0x00001904 }, /* GL_GREEN */ + { 15558, 0x00000D19 }, /* GL_GREEN_BIAS */ + { 15572, 0x00000D53 }, /* GL_GREEN_BITS */ + { 15586, 0x00008D95 }, /* GL_GREEN_INTEGER */ + { 15603, 0x00008D95 }, /* GL_GREEN_INTEGER_EXT */ + { 15624, 0x00000D18 }, /* GL_GREEN_SCALE */ + { 15639, 0x00008253 }, /* GL_GUILTY_CONTEXT_RESET_ARB */ + { 15667, 0x0000140B }, /* GL_HALF_FLOAT */ + { 15681, 0x00008D61 }, /* GL_HALF_FLOAT_OES */ + { 15699, 0x00008DF2 }, /* GL_HIGH_FLOAT */ + { 15713, 0x00008DF5 }, /* GL_HIGH_INT */ + { 15725, 0x00008000 }, /* GL_HINT_BIT */ + { 15737, 0x00008024 }, /* GL_HISTOGRAM */ + { 15750, 0x0000802B }, /* GL_HISTOGRAM_ALPHA_SIZE */ + { 15774, 0x0000802B }, /* GL_HISTOGRAM_ALPHA_SIZE_EXT */ + { 15802, 0x0000802A }, /* GL_HISTOGRAM_BLUE_SIZE */ + { 15825, 0x0000802A }, /* GL_HISTOGRAM_BLUE_SIZE_EXT */ + { 15852, 0x00008024 }, /* GL_HISTOGRAM_EXT */ + { 15869, 0x00008027 }, /* GL_HISTOGRAM_FORMAT */ + { 15889, 0x00008027 }, /* GL_HISTOGRAM_FORMAT_EXT */ + { 15913, 0x00008029 }, /* GL_HISTOGRAM_GREEN_SIZE */ + { 15937, 0x00008029 }, /* GL_HISTOGRAM_GREEN_SIZE_EXT */ + { 15965, 0x0000802C }, /* GL_HISTOGRAM_LUMINANCE_SIZE */ + { 15993, 0x0000802C }, /* GL_HISTOGRAM_LUMINANCE_SIZE_EXT */ + { 16025, 0x00008028 }, /* GL_HISTOGRAM_RED_SIZE */ + { 16047, 0x00008028 }, /* GL_HISTOGRAM_RED_SIZE_EXT */ + { 16073, 0x0000802D }, /* GL_HISTOGRAM_SINK */ + { 16091, 0x0000802D }, /* GL_HISTOGRAM_SINK_EXT */ + { 16113, 0x00008026 }, /* GL_HISTOGRAM_WIDTH */ + { 16132, 0x00008026 }, /* GL_HISTOGRAM_WIDTH_EXT */ + { 16155, 0x0000862A }, /* GL_IDENTITY_NV */ + { 16170, 0x00008150 }, /* GL_IGNORE_BORDER_HP */ + { 16190, 0x00008B9B }, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT */ + { 16226, 0x00008B9B }, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES */ + { 16266, 0x00008B9A }, /* GL_IMPLEMENTATION_COLOR_READ_TYPE */ + { 16300, 0x00008B9A }, /* GL_IMPLEMENTATION_COLOR_READ_TYPE_OES */ + { 16338, 0x00001E02 }, /* GL_INCR */ + { 16346, 0x00008507 }, /* GL_INCR_WRAP */ + { 16359, 0x00008507 }, /* GL_INCR_WRAP_EXT */ + { 16376, 0x00008222 }, /* GL_INDEX */ + { 16385, 0x00008077 }, /* GL_INDEX_ARRAY */ + { 16400, 0x00008899 }, /* GL_INDEX_ARRAY_BUFFER_BINDING */ + { 16430, 0x00008899 }, /* GL_INDEX_ARRAY_BUFFER_BINDING_ARB */ + { 16464, 0x00008091 }, /* GL_INDEX_ARRAY_POINTER */ + { 16487, 0x00008086 }, /* GL_INDEX_ARRAY_STRIDE */ + { 16509, 0x00008085 }, /* GL_INDEX_ARRAY_TYPE */ + { 16529, 0x00000D51 }, /* GL_INDEX_BITS */ + { 16543, 0x00000C20 }, /* GL_INDEX_CLEAR_VALUE */ + { 16564, 0x00000BF1 }, /* GL_INDEX_LOGIC_OP */ + { 16582, 0x00000C30 }, /* GL_INDEX_MODE */ + { 16596, 0x00000D13 }, /* GL_INDEX_OFFSET */ + { 16612, 0x00000D12 }, /* GL_INDEX_SHIFT */ + { 16627, 0x00000C21 }, /* GL_INDEX_WRITEMASK */ + { 16646, 0x00008B84 }, /* GL_INFO_LOG_LENGTH */ + { 16665, 0x00008254 }, /* GL_INNOCENT_CONTEXT_RESET_ARB */ + { 16695, 0x00001404 }, /* GL_INT */ + { 16702, 0x00008049 }, /* GL_INTENSITY */ + { 16715, 0x0000804C }, /* GL_INTENSITY12 */ + { 16730, 0x0000804C }, /* GL_INTENSITY12_EXT */ + { 16749, 0x0000804D }, /* GL_INTENSITY16 */ + { 16764, 0x00008D8B }, /* GL_INTENSITY16I_EXT */ + { 16784, 0x00008D79 }, /* GL_INTENSITY16UI_EXT */ + { 16805, 0x0000804D }, /* GL_INTENSITY16_EXT */ + { 16824, 0x00008D85 }, /* GL_INTENSITY32I_EXT */ + { 16844, 0x00008D73 }, /* GL_INTENSITY32UI_EXT */ + { 16865, 0x0000804A }, /* GL_INTENSITY4 */ + { 16879, 0x0000804A }, /* GL_INTENSITY4_EXT */ + { 16897, 0x0000804B }, /* GL_INTENSITY8 */ + { 16911, 0x00008D91 }, /* GL_INTENSITY8I_EXT */ + { 16930, 0x00008D7F }, /* GL_INTENSITY8UI_EXT */ + { 16950, 0x0000804B }, /* GL_INTENSITY8_EXT */ + { 16968, 0x00008049 }, /* GL_INTENSITY_EXT */ + { 16985, 0x00008C8C }, /* GL_INTERLEAVED_ATTRIBS */ + { 17008, 0x00008C8C }, /* GL_INTERLEAVED_ATTRIBS_EXT */ + { 17035, 0x00008575 }, /* GL_INTERPOLATE */ + { 17050, 0x00008575 }, /* GL_INTERPOLATE_ARB */ + { 17069, 0x00008575 }, /* GL_INTERPOLATE_EXT */ + { 17088, 0x00008DF7 }, /* GL_INT_10_10_10_2_OES */ + { 17110, 0x00008D9F }, /* GL_INT_2_10_10_10_REV */ + { 17132, 0x00008DC9 }, /* GL_INT_SAMPLER_1D */ + { 17150, 0x00008DCE }, /* GL_INT_SAMPLER_1D_ARRAY */ + { 17174, 0x00008DCE }, /* GL_INT_SAMPLER_1D_ARRAY_EXT */ + { 17202, 0x00008DC9 }, /* GL_INT_SAMPLER_1D_EXT */ + { 17224, 0x00008DCA }, /* GL_INT_SAMPLER_2D */ + { 17242, 0x00008DCF }, /* GL_INT_SAMPLER_2D_ARRAY */ + { 17266, 0x00008DCF }, /* GL_INT_SAMPLER_2D_ARRAY_EXT */ + { 17294, 0x00008DCA }, /* GL_INT_SAMPLER_2D_EXT */ + { 17316, 0x00008DCD }, /* GL_INT_SAMPLER_2D_RECT */ + { 17339, 0x00008DCD }, /* GL_INT_SAMPLER_2D_RECT_EXT */ + { 17366, 0x00008DCB }, /* GL_INT_SAMPLER_3D */ + { 17384, 0x00008DCB }, /* GL_INT_SAMPLER_3D_EXT */ + { 17406, 0x00008DD0 }, /* GL_INT_SAMPLER_BUFFER */ + { 17428, 0x00008DD0 }, /* GL_INT_SAMPLER_BUFFER_EXT */ + { 17454, 0x00008DCC }, /* GL_INT_SAMPLER_CUBE */ + { 17474, 0x00008DCC }, /* GL_INT_SAMPLER_CUBE_EXT */ + { 17498, 0x00008B53 }, /* GL_INT_VEC2 */ + { 17510, 0x00008B53 }, /* GL_INT_VEC2_ARB */ + { 17526, 0x00008B54 }, /* GL_INT_VEC3 */ + { 17538, 0x00008B54 }, /* GL_INT_VEC3_ARB */ + { 17554, 0x00008B55 }, /* GL_INT_VEC4 */ + { 17566, 0x00008B55 }, /* GL_INT_VEC4_ARB */ + { 17582, 0x00000500 }, /* GL_INVALID_ENUM */ + { 17598, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION */ + { 17631, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION_EXT */ + { 17668, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION_OES */ + { 17705, 0x00000502 }, /* GL_INVALID_OPERATION */ + { 17726, 0x00000501 }, /* GL_INVALID_VALUE */ + { 17743, 0x0000862B }, /* GL_INVERSE_NV */ + { 17757, 0x0000862D }, /* GL_INVERSE_TRANSPOSE_NV */ + { 17781, 0x0000150A }, /* GL_INVERT */ + { 17791, 0x00001E00 }, /* GL_KEEP */ + { 17799, 0x00008E4E }, /* GL_LAST_VERTEX_CONVENTION */ + { 17825, 0x00008E4E }, /* GL_LAST_VERTEX_CONVENTION_EXT */ + { 17855, 0x00000406 }, /* GL_LEFT */ + { 17863, 0x00000203 }, /* GL_LEQUAL */ + { 17873, 0x00000201 }, /* GL_LESS */ + { 17881, 0x00004000 }, /* GL_LIGHT0 */ + { 17891, 0x00004001 }, /* GL_LIGHT1 */ + { 17901, 0x00004002 }, /* GL_LIGHT2 */ + { 17911, 0x00004003 }, /* GL_LIGHT3 */ + { 17921, 0x00004004 }, /* GL_LIGHT4 */ + { 17931, 0x00004005 }, /* GL_LIGHT5 */ + { 17941, 0x00004006 }, /* GL_LIGHT6 */ + { 17951, 0x00004007 }, /* GL_LIGHT7 */ + { 17961, 0x00000B50 }, /* GL_LIGHTING */ + { 17973, 0x00000040 }, /* GL_LIGHTING_BIT */ + { 17989, 0x00000B53 }, /* GL_LIGHT_MODEL_AMBIENT */ + { 18012, 0x000081F8 }, /* GL_LIGHT_MODEL_COLOR_CONTROL */ + { 18041, 0x000081F8 }, /* GL_LIGHT_MODEL_COLOR_CONTROL_EXT */ + { 18074, 0x00000B51 }, /* GL_LIGHT_MODEL_LOCAL_VIEWER */ + { 18102, 0x00000B52 }, /* GL_LIGHT_MODEL_TWO_SIDE */ + { 18126, 0x00001B01 }, /* GL_LINE */ + { 18134, 0x00002601 }, /* GL_LINEAR */ + { 18144, 0x00001208 }, /* GL_LINEAR_ATTENUATION */ + { 18166, 0x00008170 }, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */ + { 18196, 0x0000844F }, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */ + { 18227, 0x00002703 }, /* GL_LINEAR_MIPMAP_LINEAR */ + { 18251, 0x00002701 }, /* GL_LINEAR_MIPMAP_NEAREST */ + { 18276, 0x00000001 }, /* GL_LINES */ + { 18285, 0x0000000A }, /* GL_LINES_ADJACENCY */ + { 18304, 0x0000000A }, /* GL_LINES_ADJACENCY_ARB */ + { 18327, 0x00000004 }, /* GL_LINE_BIT */ + { 18339, 0x00000002 }, /* GL_LINE_LOOP */ + { 18352, 0x00000707 }, /* GL_LINE_RESET_TOKEN */ + { 18372, 0x00000B20 }, /* GL_LINE_SMOOTH */ + { 18387, 0x00000C52 }, /* GL_LINE_SMOOTH_HINT */ + { 18407, 0x00000B24 }, /* GL_LINE_STIPPLE */ + { 18423, 0x00000B25 }, /* GL_LINE_STIPPLE_PATTERN */ + { 18447, 0x00000B26 }, /* GL_LINE_STIPPLE_REPEAT */ + { 18470, 0x00000003 }, /* GL_LINE_STRIP */ + { 18484, 0x0000000B }, /* GL_LINE_STRIP_ADJACENCY */ + { 18508, 0x0000000B }, /* GL_LINE_STRIP_ADJACENCY_ARB */ + { 18536, 0x00000702 }, /* GL_LINE_TOKEN */ + { 18550, 0x00000B21 }, /* GL_LINE_WIDTH */ + { 18564, 0x00000B23 }, /* GL_LINE_WIDTH_GRANULARITY */ + { 18590, 0x00000B22 }, /* GL_LINE_WIDTH_RANGE */ + { 18610, 0x00008B82 }, /* GL_LINK_STATUS */ + { 18625, 0x00000B32 }, /* GL_LIST_BASE */ + { 18638, 0x00020000 }, /* GL_LIST_BIT */ + { 18650, 0x00000B33 }, /* GL_LIST_INDEX */ + { 18664, 0x00000B30 }, /* GL_LIST_MODE */ + { 18677, 0x00000101 }, /* GL_LOAD */ + { 18685, 0x00000BF1 }, /* GL_LOGIC_OP */ + { 18697, 0x00000BF0 }, /* GL_LOGIC_OP_MODE */ + { 18714, 0x00008252 }, /* GL_LOSE_CONTEXT_ON_RESET_ARB */ + { 18743, 0x00008CA1 }, /* GL_LOWER_LEFT */ + { 18757, 0x00008DF0 }, /* GL_LOW_FLOAT */ + { 18770, 0x00008DF3 }, /* GL_LOW_INT */ + { 18781, 0x00001909 }, /* GL_LUMINANCE */ + { 18794, 0x00008041 }, /* GL_LUMINANCE12 */ + { 18809, 0x00008047 }, /* GL_LUMINANCE12_ALPHA12 */ + { 18832, 0x00008047 }, /* GL_LUMINANCE12_ALPHA12_EXT */ + { 18859, 0x00008046 }, /* GL_LUMINANCE12_ALPHA4 */ + { 18881, 0x00008046 }, /* GL_LUMINANCE12_ALPHA4_EXT */ + { 18907, 0x00008041 }, /* GL_LUMINANCE12_EXT */ + { 18926, 0x00008042 }, /* GL_LUMINANCE16 */ + { 18941, 0x00008D8C }, /* GL_LUMINANCE16I_EXT */ + { 18961, 0x00008D7A }, /* GL_LUMINANCE16UI_EXT */ + { 18982, 0x00008048 }, /* GL_LUMINANCE16_ALPHA16 */ + { 19005, 0x00008048 }, /* GL_LUMINANCE16_ALPHA16_EXT */ + { 19032, 0x00008042 }, /* GL_LUMINANCE16_EXT */ + { 19051, 0x00008D86 }, /* GL_LUMINANCE32I_EXT */ + { 19071, 0x00008D74 }, /* GL_LUMINANCE32UI_EXT */ + { 19092, 0x0000803F }, /* GL_LUMINANCE4 */ + { 19106, 0x00008043 }, /* GL_LUMINANCE4_ALPHA4 */ + { 19127, 0x00008043 }, /* GL_LUMINANCE4_ALPHA4_EXT */ + { 19152, 0x0000803F }, /* GL_LUMINANCE4_EXT */ + { 19170, 0x00008044 }, /* GL_LUMINANCE6_ALPHA2 */ + { 19191, 0x00008044 }, /* GL_LUMINANCE6_ALPHA2_EXT */ + { 19216, 0x00008040 }, /* GL_LUMINANCE8 */ + { 19230, 0x00008D92 }, /* GL_LUMINANCE8I_EXT */ + { 19249, 0x00008D80 }, /* GL_LUMINANCE8UI_EXT */ + { 19269, 0x00008045 }, /* GL_LUMINANCE8_ALPHA8 */ + { 19290, 0x00008045 }, /* GL_LUMINANCE8_ALPHA8_EXT */ + { 19315, 0x00008040 }, /* GL_LUMINANCE8_EXT */ + { 19333, 0x0000190A }, /* GL_LUMINANCE_ALPHA */ + { 19352, 0x00008D8D }, /* GL_LUMINANCE_ALPHA16I_EXT */ + { 19378, 0x00008D7B }, /* GL_LUMINANCE_ALPHA16UI_EXT */ + { 19405, 0x00008D87 }, /* GL_LUMINANCE_ALPHA32I_EXT */ + { 19431, 0x00008D75 }, /* GL_LUMINANCE_ALPHA32UI_EXT */ + { 19458, 0x00008D93 }, /* GL_LUMINANCE_ALPHA8I_EXT */ + { 19483, 0x00008D81 }, /* GL_LUMINANCE_ALPHA8UI_EXT */ + { 19509, 0x00008D9D }, /* GL_LUMINANCE_ALPHA_INTEGER_EXT */ + { 19540, 0x00008D9C }, /* GL_LUMINANCE_INTEGER_EXT */ + { 19565, 0x0000821B }, /* GL_MAJOR_VERSION */ + { 19582, 0x00000D90 }, /* GL_MAP1_COLOR_4 */ + { 19598, 0x00000DD0 }, /* GL_MAP1_GRID_DOMAIN */ + { 19618, 0x00000DD1 }, /* GL_MAP1_GRID_SEGMENTS */ + { 19640, 0x00000D91 }, /* GL_MAP1_INDEX */ + { 19654, 0x00000D92 }, /* GL_MAP1_NORMAL */ + { 19669, 0x00000D93 }, /* GL_MAP1_TEXTURE_COORD_1 */ + { 19693, 0x00000D94 }, /* GL_MAP1_TEXTURE_COORD_2 */ + { 19717, 0x00000D95 }, /* GL_MAP1_TEXTURE_COORD_3 */ + { 19741, 0x00000D96 }, /* GL_MAP1_TEXTURE_COORD_4 */ + { 19765, 0x00000D97 }, /* GL_MAP1_VERTEX_3 */ + { 19782, 0x00000D98 }, /* GL_MAP1_VERTEX_4 */ + { 19799, 0x00008660 }, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */ + { 19827, 0x0000866A }, /* GL_MAP1_VERTEX_ATTRIB10_4_NV */ + { 19856, 0x0000866B }, /* GL_MAP1_VERTEX_ATTRIB11_4_NV */ + { 19885, 0x0000866C }, /* GL_MAP1_VERTEX_ATTRIB12_4_NV */ + { 19914, 0x0000866D }, /* GL_MAP1_VERTEX_ATTRIB13_4_NV */ + { 19943, 0x0000866E }, /* GL_MAP1_VERTEX_ATTRIB14_4_NV */ + { 19972, 0x0000866F }, /* GL_MAP1_VERTEX_ATTRIB15_4_NV */ + { 20001, 0x00008661 }, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */ + { 20029, 0x00008662 }, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */ + { 20057, 0x00008663 }, /* GL_MAP1_VERTEX_ATTRIB3_4_NV */ + { 20085, 0x00008664 }, /* GL_MAP1_VERTEX_ATTRIB4_4_NV */ + { 20113, 0x00008665 }, /* GL_MAP1_VERTEX_ATTRIB5_4_NV */ + { 20141, 0x00008666 }, /* GL_MAP1_VERTEX_ATTRIB6_4_NV */ + { 20169, 0x00008667 }, /* GL_MAP1_VERTEX_ATTRIB7_4_NV */ + { 20197, 0x00008668 }, /* GL_MAP1_VERTEX_ATTRIB8_4_NV */ + { 20225, 0x00008669 }, /* GL_MAP1_VERTEX_ATTRIB9_4_NV */ + { 20253, 0x00000DB0 }, /* GL_MAP2_COLOR_4 */ + { 20269, 0x00000DD2 }, /* GL_MAP2_GRID_DOMAIN */ + { 20289, 0x00000DD3 }, /* GL_MAP2_GRID_SEGMENTS */ + { 20311, 0x00000DB1 }, /* GL_MAP2_INDEX */ + { 20325, 0x00000DB2 }, /* GL_MAP2_NORMAL */ + { 20340, 0x00000DB3 }, /* GL_MAP2_TEXTURE_COORD_1 */ + { 20364, 0x00000DB4 }, /* GL_MAP2_TEXTURE_COORD_2 */ + { 20388, 0x00000DB5 }, /* GL_MAP2_TEXTURE_COORD_3 */ + { 20412, 0x00000DB6 }, /* GL_MAP2_TEXTURE_COORD_4 */ + { 20436, 0x00000DB7 }, /* GL_MAP2_VERTEX_3 */ + { 20453, 0x00000DB8 }, /* GL_MAP2_VERTEX_4 */ + { 20470, 0x00008670 }, /* GL_MAP2_VERTEX_ATTRIB0_4_NV */ + { 20498, 0x0000867A }, /* GL_MAP2_VERTEX_ATTRIB10_4_NV */ + { 20527, 0x0000867B }, /* GL_MAP2_VERTEX_ATTRIB11_4_NV */ + { 20556, 0x0000867C }, /* GL_MAP2_VERTEX_ATTRIB12_4_NV */ + { 20585, 0x0000867D }, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */ + { 20614, 0x0000867E }, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */ + { 20643, 0x0000867F }, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */ + { 20672, 0x00008671 }, /* GL_MAP2_VERTEX_ATTRIB1_4_NV */ + { 20700, 0x00008672 }, /* GL_MAP2_VERTEX_ATTRIB2_4_NV */ + { 20728, 0x00008673 }, /* GL_MAP2_VERTEX_ATTRIB3_4_NV */ + { 20756, 0x00008674 }, /* GL_MAP2_VERTEX_ATTRIB4_4_NV */ + { 20784, 0x00008675 }, /* GL_MAP2_VERTEX_ATTRIB5_4_NV */ + { 20812, 0x00008676 }, /* GL_MAP2_VERTEX_ATTRIB6_4_NV */ + { 20840, 0x00008677 }, /* GL_MAP2_VERTEX_ATTRIB7_4_NV */ + { 20868, 0x00008678 }, /* GL_MAP2_VERTEX_ATTRIB8_4_NV */ + { 20896, 0x00008679 }, /* GL_MAP2_VERTEX_ATTRIB9_4_NV */ + { 20924, 0x00000D10 }, /* GL_MAP_COLOR */ + { 20937, 0x00000010 }, /* GL_MAP_FLUSH_EXPLICIT_BIT */ + { 20963, 0x00000008 }, /* GL_MAP_INVALIDATE_BUFFER_BIT */ + { 20992, 0x00000004 }, /* GL_MAP_INVALIDATE_RANGE_BIT */ + { 21020, 0x00000001 }, /* GL_MAP_READ_BIT */ + { 21036, 0x00000D11 }, /* GL_MAP_STENCIL */ + { 21051, 0x00000020 }, /* GL_MAP_UNSYNCHRONIZED_BIT */ + { 21077, 0x00000002 }, /* GL_MAP_WRITE_BIT */ + { 21094, 0x000088C0 }, /* GL_MATRIX0_ARB */ + { 21109, 0x00008630 }, /* GL_MATRIX0_NV */ + { 21123, 0x000088CA }, /* GL_MATRIX10_ARB */ + { 21139, 0x000088CB }, /* GL_MATRIX11_ARB */ + { 21155, 0x000088CC }, /* GL_MATRIX12_ARB */ + { 21171, 0x000088CD }, /* GL_MATRIX13_ARB */ + { 21187, 0x000088CE }, /* GL_MATRIX14_ARB */ + { 21203, 0x000088CF }, /* GL_MATRIX15_ARB */ + { 21219, 0x000088D0 }, /* GL_MATRIX16_ARB */ + { 21235, 0x000088D1 }, /* GL_MATRIX17_ARB */ + { 21251, 0x000088D2 }, /* GL_MATRIX18_ARB */ + { 21267, 0x000088D3 }, /* GL_MATRIX19_ARB */ + { 21283, 0x000088C1 }, /* GL_MATRIX1_ARB */ + { 21298, 0x00008631 }, /* GL_MATRIX1_NV */ + { 21312, 0x000088D4 }, /* GL_MATRIX20_ARB */ + { 21328, 0x000088D5 }, /* GL_MATRIX21_ARB */ + { 21344, 0x000088D6 }, /* GL_MATRIX22_ARB */ + { 21360, 0x000088D7 }, /* GL_MATRIX23_ARB */ + { 21376, 0x000088D8 }, /* GL_MATRIX24_ARB */ + { 21392, 0x000088D9 }, /* GL_MATRIX25_ARB */ + { 21408, 0x000088DA }, /* GL_MATRIX26_ARB */ + { 21424, 0x000088DB }, /* GL_MATRIX27_ARB */ + { 21440, 0x000088DC }, /* GL_MATRIX28_ARB */ + { 21456, 0x000088DD }, /* GL_MATRIX29_ARB */ + { 21472, 0x000088C2 }, /* GL_MATRIX2_ARB */ + { 21487, 0x00008632 }, /* GL_MATRIX2_NV */ + { 21501, 0x000088DE }, /* GL_MATRIX30_ARB */ + { 21517, 0x000088DF }, /* GL_MATRIX31_ARB */ + { 21533, 0x000088C3 }, /* GL_MATRIX3_ARB */ + { 21548, 0x00008633 }, /* GL_MATRIX3_NV */ + { 21562, 0x000088C4 }, /* GL_MATRIX4_ARB */ + { 21577, 0x00008634 }, /* GL_MATRIX4_NV */ + { 21591, 0x000088C5 }, /* GL_MATRIX5_ARB */ + { 21606, 0x00008635 }, /* GL_MATRIX5_NV */ + { 21620, 0x000088C6 }, /* GL_MATRIX6_ARB */ + { 21635, 0x00008636 }, /* GL_MATRIX6_NV */ + { 21649, 0x000088C7 }, /* GL_MATRIX7_ARB */ + { 21664, 0x00008637 }, /* GL_MATRIX7_NV */ + { 21678, 0x000088C8 }, /* GL_MATRIX8_ARB */ + { 21693, 0x000088C9 }, /* GL_MATRIX9_ARB */ + { 21708, 0x00008844 }, /* GL_MATRIX_INDEX_ARRAY_ARB */ + { 21734, 0x00008B9E }, /* GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES */ + { 21775, 0x00008844 }, /* GL_MATRIX_INDEX_ARRAY_OES */ + { 21801, 0x00008849 }, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */ + { 21835, 0x00008849 }, /* GL_MATRIX_INDEX_ARRAY_POINTER_OES */ + { 21869, 0x00008846 }, /* GL_MATRIX_INDEX_ARRAY_SIZE_ARB */ + { 21900, 0x00008846 }, /* GL_MATRIX_INDEX_ARRAY_SIZE_OES */ + { 21931, 0x00008848 }, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */ + { 21964, 0x00008848 }, /* GL_MATRIX_INDEX_ARRAY_STRIDE_OES */ + { 21997, 0x00008847 }, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */ + { 22028, 0x00008847 }, /* GL_MATRIX_INDEX_ARRAY_TYPE_OES */ + { 22059, 0x00000BA0 }, /* GL_MATRIX_MODE */ + { 22074, 0x00008840 }, /* GL_MATRIX_PALETTE_ARB */ + { 22096, 0x00008840 }, /* GL_MATRIX_PALETTE_OES */ + { 22118, 0x00008008 }, /* GL_MAX */ + { 22125, 0x00008073 }, /* GL_MAX_3D_TEXTURE_SIZE */ + { 22148, 0x00008073 }, /* GL_MAX_3D_TEXTURE_SIZE_OES */ + { 22175, 0x000088FF }, /* GL_MAX_ARRAY_TEXTURE_LAYERS */ + { 22203, 0x000088FF }, /* GL_MAX_ARRAY_TEXTURE_LAYERS_EXT */ + { 22235, 0x00000D35 }, /* GL_MAX_ATTRIB_STACK_DEPTH */ + { 22261, 0x00000D3B }, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */ + { 22294, 0x00008177 }, /* GL_MAX_CLIPMAP_DEPTH_SGIX */ + { 22320, 0x00008178 }, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */ + { 22354, 0x00000D32 }, /* GL_MAX_CLIP_DISTANCES */ + { 22376, 0x00000D32 }, /* GL_MAX_CLIP_PLANES */ + { 22395, 0x00008CDF }, /* GL_MAX_COLOR_ATTACHMENTS */ + { 22420, 0x00008CDF }, /* GL_MAX_COLOR_ATTACHMENTS_EXT */ + { 22449, 0x000080B3 }, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */ + { 22481, 0x000080B3 }, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI */ + { 22517, 0x00008B4D }, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */ + { 22553, 0x00008B4D }, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB */ + { 22593, 0x0000801B }, /* GL_MAX_CONVOLUTION_HEIGHT */ + { 22619, 0x0000801B }, /* GL_MAX_CONVOLUTION_HEIGHT_EXT */ + { 22649, 0x0000801A }, /* GL_MAX_CONVOLUTION_WIDTH */ + { 22674, 0x0000801A }, /* GL_MAX_CONVOLUTION_WIDTH_EXT */ + { 22703, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */ + { 22732, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB */ + { 22765, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE_OES */ + { 22798, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS */ + { 22818, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_ARB */ + { 22842, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_ATI */ + { 22866, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_NV */ + { 22889, 0x000080E9 }, /* GL_MAX_ELEMENTS_INDICES */ + { 22913, 0x000080E8 }, /* GL_MAX_ELEMENTS_VERTICES */ + { 22938, 0x00000D30 }, /* GL_MAX_EVAL_ORDER */ + { 22956, 0x00008008 }, /* GL_MAX_EXT */ + { 22967, 0x00009125 }, /* GL_MAX_FRAGMENT_INPUT_COMPONENTS */ + { 23000, 0x00008B49 }, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */ + { 23035, 0x00008B49 }, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB */ + { 23074, 0x00008DFD }, /* GL_MAX_FRAGMENT_UNIFORM_VECTORS */ + { 23106, 0x00009123 }, /* GL_MAX_GEOMETRY_INPUT_COMPONENTS */ + { 23139, 0x00009124 }, /* GL_MAX_GEOMETRY_OUTPUT_COMPONENTS */ + { 23173, 0x00008DE0 }, /* GL_MAX_GEOMETRY_OUTPUT_VERTICES */ + { 23205, 0x00008DE0 }, /* GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB */ + { 23241, 0x00008C29 }, /* GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS */ + { 23277, 0x00008C29 }, /* GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB */ + { 23317, 0x00008DE1 }, /* GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS */ + { 23357, 0x00008DE1 }, /* GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB */ + { 23401, 0x00008DDF }, /* GL_MAX_GEOMETRY_UNIFORM_COMPONENTS */ + { 23436, 0x00008DDF }, /* GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB */ + { 23475, 0x00008DDD }, /* GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB */ + { 23514, 0x00000D31 }, /* GL_MAX_LIGHTS */ + { 23528, 0x00000B31 }, /* GL_MAX_LIST_NESTING */ + { 23548, 0x00008841 }, /* GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB */ + { 23586, 0x00000D36 }, /* GL_MAX_MODELVIEW_STACK_DEPTH */ + { 23615, 0x00000D37 }, /* GL_MAX_NAME_STACK_DEPTH */ + { 23639, 0x00008842 }, /* GL_MAX_PALETTE_MATRICES_ARB */ + { 23667, 0x00008842 }, /* GL_MAX_PALETTE_MATRICES_OES */ + { 23695, 0x00000D34 }, /* GL_MAX_PIXEL_MAP_TABLE */ + { 23718, 0x000088B1 }, /* GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB */ + { 23755, 0x0000880B }, /* GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB */ + { 23791, 0x000088AD }, /* GL_MAX_PROGRAM_ATTRIBS_ARB */ + { 23818, 0x000088F5 }, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */ + { 23847, 0x000088B5 }, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */ + { 23881, 0x000088F4 }, /* GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV */ + { 23917, 0x000088F6 }, /* GL_MAX_PROGRAM_IF_DEPTH_NV */ + { 23944, 0x000088A1 }, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */ + { 23976, 0x000088B4 }, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */ + { 24012, 0x000088F8 }, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */ + { 24041, 0x000088F7 }, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */ + { 24070, 0x0000862F }, /* GL_MAX_PROGRAM_MATRICES_ARB */ + { 24098, 0x0000862E }, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */ + { 24136, 0x000088B3 }, /* GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ + { 24180, 0x0000880E }, /* GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ + { 24223, 0x000088AF }, /* GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB */ + { 24257, 0x000088A3 }, /* GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ + { 24296, 0x000088AB }, /* GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB */ + { 24333, 0x000088A7 }, /* GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB */ + { 24371, 0x00008810 }, /* GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ + { 24414, 0x0000880F }, /* GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ + { 24457, 0x000088A9 }, /* GL_MAX_PROGRAM_PARAMETERS_ARB */ + { 24487, 0x000088A5 }, /* GL_MAX_PROGRAM_TEMPORARIES_ARB */ + { 24518, 0x00008905 }, /* GL_MAX_PROGRAM_TEXEL_OFFSET */ + { 24546, 0x00008905 }, /* GL_MAX_PROGRAM_TEXEL_OFFSET_EXT */ + { 24578, 0x0000880D }, /* GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB */ + { 24614, 0x0000880C }, /* GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB */ + { 24650, 0x00000D38 }, /* GL_MAX_PROJECTION_STACK_DEPTH */ + { 24680, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE */ + { 24710, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB */ + { 24744, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_NV */ + { 24777, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE */ + { 24802, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE_EXT */ + { 24831, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE_OES */ + { 24860, 0x00008D57 }, /* GL_MAX_SAMPLES */ + { 24875, 0x00008D57 }, /* GL_MAX_SAMPLES_EXT */ + { 24894, 0x00009111 }, /* GL_MAX_SERVER_WAIT_TIMEOUT */ + { 24921, 0x00008504 }, /* GL_MAX_SHININESS_NV */ + { 24941, 0x00008505 }, /* GL_MAX_SPOT_EXPONENT_NV */ + { 24965, 0x00008C2B }, /* GL_MAX_TEXTURE_BUFFER_SIZE */ + { 24992, 0x00008C2B }, /* GL_MAX_TEXTURE_BUFFER_SIZE_ARB */ + { 25023, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS */ + { 25045, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS_ARB */ + { 25071, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS */ + { 25098, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS_ARB */ + { 25129, 0x000084FD }, /* GL_MAX_TEXTURE_LOD_BIAS */ + { 25153, 0x000084FD }, /* GL_MAX_TEXTURE_LOD_BIAS_EXT */ + { 25181, 0x000084FF }, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */ + { 25215, 0x00000D33 }, /* GL_MAX_TEXTURE_SIZE */ + { 25235, 0x00000D39 }, /* GL_MAX_TEXTURE_STACK_DEPTH */ + { 25262, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS */ + { 25283, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS_ARB */ + { 25308, 0x0000862F }, /* GL_MAX_TRACK_MATRICES_NV */ + { 25333, 0x0000862E }, /* GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV */ + { 25368, 0x00008C8A }, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS */ + { 25417, 0x00008C8A }, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT */ + { 25470, 0x00008C8B }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS */ + { 25513, 0x00008C8B }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT */ + { 25560, 0x00008C80 }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS */ + { 25606, 0x00008C80 }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT */ + { 25656, 0x00008B4B }, /* GL_MAX_VARYING_COMPONENTS */ + { 25682, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS */ + { 25704, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS_ARB */ + { 25730, 0x00008DFC }, /* GL_MAX_VARYING_VECTORS */ + { 25753, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS */ + { 25775, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS_ARB */ + { 25801, 0x00009122 }, /* GL_MAX_VERTEX_OUTPUT_COMPONENTS */ + { 25833, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */ + { 25867, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB */ + { 25905, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */ + { 25938, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB */ + { 25975, 0x00008DFB }, /* GL_MAX_VERTEX_UNIFORM_VECTORS */ + { 26005, 0x000086A4 }, /* GL_MAX_VERTEX_UNITS_ARB */ + { 26029, 0x000086A4 }, /* GL_MAX_VERTEX_UNITS_OES */ + { 26053, 0x00008DDE }, /* GL_MAX_VERTEX_VARYING_COMPONENTS_ARB */ + { 26090, 0x00000D3A }, /* GL_MAX_VIEWPORT_DIMS */ + { 26111, 0x00008DF1 }, /* GL_MEDIUM_FLOAT */ + { 26127, 0x00008DF4 }, /* GL_MEDIUM_INT */ + { 26141, 0x00008007 }, /* GL_MIN */ + { 26148, 0x0000802E }, /* GL_MINMAX */ + { 26158, 0x0000802E }, /* GL_MINMAX_EXT */ + { 26172, 0x0000802F }, /* GL_MINMAX_FORMAT */ + { 26189, 0x0000802F }, /* GL_MINMAX_FORMAT_EXT */ + { 26210, 0x00008030 }, /* GL_MINMAX_SINK */ + { 26225, 0x00008030 }, /* GL_MINMAX_SINK_EXT */ + { 26244, 0x0000821C }, /* GL_MINOR_VERSION */ + { 26261, 0x00008007 }, /* GL_MIN_EXT */ + { 26272, 0x00008904 }, /* GL_MIN_PROGRAM_TEXEL_OFFSET */ + { 26300, 0x00008904 }, /* GL_MIN_PROGRAM_TEXEL_OFFSET_EXT */ + { 26332, 0x00008370 }, /* GL_MIRRORED_REPEAT */ + { 26351, 0x00008370 }, /* GL_MIRRORED_REPEAT_ARB */ + { 26374, 0x00008370 }, /* GL_MIRRORED_REPEAT_IBM */ + { 26397, 0x00008742 }, /* GL_MIRROR_CLAMP_ATI */ + { 26417, 0x00008742 }, /* GL_MIRROR_CLAMP_EXT */ + { 26437, 0x00008912 }, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */ + { 26467, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_ATI */ + { 26495, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */ + { 26523, 0x00001700 }, /* GL_MODELVIEW */ + { 26536, 0x00001700 }, /* GL_MODELVIEW0_ARB */ + { 26554, 0x0000872A }, /* GL_MODELVIEW10_ARB */ + { 26573, 0x0000872B }, /* GL_MODELVIEW11_ARB */ + { 26592, 0x0000872C }, /* GL_MODELVIEW12_ARB */ + { 26611, 0x0000872D }, /* GL_MODELVIEW13_ARB */ + { 26630, 0x0000872E }, /* GL_MODELVIEW14_ARB */ + { 26649, 0x0000872F }, /* GL_MODELVIEW15_ARB */ + { 26668, 0x00008730 }, /* GL_MODELVIEW16_ARB */ + { 26687, 0x00008731 }, /* GL_MODELVIEW17_ARB */ + { 26706, 0x00008732 }, /* GL_MODELVIEW18_ARB */ + { 26725, 0x00008733 }, /* GL_MODELVIEW19_ARB */ + { 26744, 0x0000850A }, /* GL_MODELVIEW1_ARB */ + { 26762, 0x00008734 }, /* GL_MODELVIEW20_ARB */ + { 26781, 0x00008735 }, /* GL_MODELVIEW21_ARB */ + { 26800, 0x00008736 }, /* GL_MODELVIEW22_ARB */ + { 26819, 0x00008737 }, /* GL_MODELVIEW23_ARB */ + { 26838, 0x00008738 }, /* GL_MODELVIEW24_ARB */ + { 26857, 0x00008739 }, /* GL_MODELVIEW25_ARB */ + { 26876, 0x0000873A }, /* GL_MODELVIEW26_ARB */ + { 26895, 0x0000873B }, /* GL_MODELVIEW27_ARB */ + { 26914, 0x0000873C }, /* GL_MODELVIEW28_ARB */ + { 26933, 0x0000873D }, /* GL_MODELVIEW29_ARB */ + { 26952, 0x00008722 }, /* GL_MODELVIEW2_ARB */ + { 26970, 0x0000873E }, /* GL_MODELVIEW30_ARB */ + { 26989, 0x0000873F }, /* GL_MODELVIEW31_ARB */ + { 27008, 0x00008723 }, /* GL_MODELVIEW3_ARB */ + { 27026, 0x00008724 }, /* GL_MODELVIEW4_ARB */ + { 27044, 0x00008725 }, /* GL_MODELVIEW5_ARB */ + { 27062, 0x00008726 }, /* GL_MODELVIEW6_ARB */ + { 27080, 0x00008727 }, /* GL_MODELVIEW7_ARB */ + { 27098, 0x00008728 }, /* GL_MODELVIEW8_ARB */ + { 27116, 0x00008729 }, /* GL_MODELVIEW9_ARB */ + { 27134, 0x00000BA6 }, /* GL_MODELVIEW_MATRIX */ + { 27154, 0x0000898D }, /* GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES */ + { 27196, 0x00008629 }, /* GL_MODELVIEW_PROJECTION_NV */ + { 27223, 0x00000BA3 }, /* GL_MODELVIEW_STACK_DEPTH */ + { 27248, 0x00002100 }, /* GL_MODULATE */ + { 27260, 0x00008744 }, /* GL_MODULATE_ADD_ATI */ + { 27280, 0x00008745 }, /* GL_MODULATE_SIGNED_ADD_ATI */ + { 27307, 0x00008746 }, /* GL_MODULATE_SUBTRACT_ATI */ + { 27332, 0x00000103 }, /* GL_MULT */ + { 27340, 0x0000809D }, /* GL_MULTISAMPLE */ + { 27355, 0x000086B2 }, /* GL_MULTISAMPLE_3DFX */ + { 27375, 0x0000809D }, /* GL_MULTISAMPLE_ARB */ + { 27394, 0x20000000 }, /* GL_MULTISAMPLE_BIT */ + { 27413, 0x20000000 }, /* GL_MULTISAMPLE_BIT_3DFX */ + { 27437, 0x20000000 }, /* GL_MULTISAMPLE_BIT_ARB */ + { 27460, 0x00008534 }, /* GL_MULTISAMPLE_FILTER_HINT_NV */ + { 27490, 0x00002A25 }, /* GL_N3F_V3F */ + { 27501, 0x00000D70 }, /* GL_NAME_STACK_DEPTH */ + { 27521, 0x0000150E }, /* GL_NAND */ + { 27529, 0x00002600 }, /* GL_NEAREST */ + { 27540, 0x0000844E }, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */ + { 27571, 0x0000844D }, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */ + { 27603, 0x00002702 }, /* GL_NEAREST_MIPMAP_LINEAR */ + { 27628, 0x00002700 }, /* GL_NEAREST_MIPMAP_NEAREST */ + { 27654, 0x00000200 }, /* GL_NEVER */ + { 27663, 0x00001102 }, /* GL_NICEST */ + { 27673, 0x00000000 }, /* GL_NONE */ + { 27681, 0x00000000 }, /* GL_NONE_OES */ + { 27693, 0x00001505 }, /* GL_NOOP */ + { 27701, 0x00001508 }, /* GL_NOR */ + { 27708, 0x00000BA1 }, /* GL_NORMALIZE */ + { 27721, 0x00008075 }, /* GL_NORMAL_ARRAY */ + { 27737, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING */ + { 27768, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING_ARB */ + { 27803, 0x0000808F }, /* GL_NORMAL_ARRAY_POINTER */ + { 27827, 0x0000807F }, /* GL_NORMAL_ARRAY_STRIDE */ + { 27850, 0x0000807E }, /* GL_NORMAL_ARRAY_TYPE */ + { 27871, 0x00008511 }, /* GL_NORMAL_MAP */ + { 27885, 0x00008511 }, /* GL_NORMAL_MAP_ARB */ + { 27903, 0x00008511 }, /* GL_NORMAL_MAP_NV */ + { 27920, 0x00008511 }, /* GL_NORMAL_MAP_OES */ + { 27938, 0x00000205 }, /* GL_NOTEQUAL */ + { 27950, 0x00000000 }, /* GL_NO_ERROR */ + { 27962, 0x00008261 }, /* GL_NO_RESET_NOTIFICATION_ARB */ + { 27991, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */ + { 28025, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB */ + { 28063, 0x0000821D }, /* GL_NUM_EXTENSIONS */ + { 28081, 0x000087FE }, /* GL_NUM_PROGRAM_BINARY_FORMATS */ + { 28111, 0x000087FE }, /* GL_NUM_PROGRAM_BINARY_FORMATS_OES */ + { 28145, 0x00008DF9 }, /* GL_NUM_SHADER_BINARY_FORMATS */ + { 28174, 0x00008B89 }, /* GL_OBJECT_ACTIVE_ATTRIBUTES_ARB */ + { 28206, 0x00008B8A }, /* GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB */ + { 28248, 0x00008B86 }, /* GL_OBJECT_ACTIVE_UNIFORMS_ARB */ + { 28278, 0x00008B87 }, /* GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB */ + { 28318, 0x00008B85 }, /* GL_OBJECT_ATTACHED_OBJECTS_ARB */ + { 28349, 0x00008B81 }, /* GL_OBJECT_COMPILE_STATUS_ARB */ + { 28378, 0x00008B80 }, /* GL_OBJECT_DELETE_STATUS_ARB */ + { 28406, 0x00008B84 }, /* GL_OBJECT_INFO_LOG_LENGTH_ARB */ + { 28436, 0x00002401 }, /* GL_OBJECT_LINEAR */ + { 28453, 0x00008B82 }, /* GL_OBJECT_LINK_STATUS_ARB */ + { 28479, 0x00002501 }, /* GL_OBJECT_PLANE */ + { 28495, 0x00008B88 }, /* GL_OBJECT_SHADER_SOURCE_LENGTH_ARB */ + { 28530, 0x00008B4F }, /* GL_OBJECT_SUBTYPE_ARB */ + { 28552, 0x00009112 }, /* GL_OBJECT_TYPE */ + { 28567, 0x00008B4E }, /* GL_OBJECT_TYPE_ARB */ + { 28586, 0x00008B83 }, /* GL_OBJECT_VALIDATE_STATUS_ARB */ + { 28616, 0x00008165 }, /* GL_OCCLUSION_TEST_HP */ + { 28637, 0x00008166 }, /* GL_OCCLUSION_TEST_RESULT_HP */ + { 28665, 0x00000001 }, /* GL_ONE */ + { 28672, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA */ + { 28700, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA_EXT */ + { 28732, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR */ + { 28760, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR_EXT */ + { 28792, 0x00000305 }, /* GL_ONE_MINUS_DST_ALPHA */ + { 28815, 0x00000307 }, /* GL_ONE_MINUS_DST_COLOR */ + { 28838, 0x00000303 }, /* GL_ONE_MINUS_SRC_ALPHA */ + { 28861, 0x00000301 }, /* GL_ONE_MINUS_SRC_COLOR */ + { 28884, 0x00008598 }, /* GL_OPERAND0_ALPHA */ + { 28902, 0x00008598 }, /* GL_OPERAND0_ALPHA_ARB */ + { 28924, 0x00008598 }, /* GL_OPERAND0_ALPHA_EXT */ + { 28946, 0x00008590 }, /* GL_OPERAND0_RGB */ + { 28962, 0x00008590 }, /* GL_OPERAND0_RGB_ARB */ + { 28982, 0x00008590 }, /* GL_OPERAND0_RGB_EXT */ + { 29002, 0x00008599 }, /* GL_OPERAND1_ALPHA */ + { 29020, 0x00008599 }, /* GL_OPERAND1_ALPHA_ARB */ + { 29042, 0x00008599 }, /* GL_OPERAND1_ALPHA_EXT */ + { 29064, 0x00008591 }, /* GL_OPERAND1_RGB */ + { 29080, 0x00008591 }, /* GL_OPERAND1_RGB_ARB */ + { 29100, 0x00008591 }, /* GL_OPERAND1_RGB_EXT */ + { 29120, 0x0000859A }, /* GL_OPERAND2_ALPHA */ + { 29138, 0x0000859A }, /* GL_OPERAND2_ALPHA_ARB */ + { 29160, 0x0000859A }, /* GL_OPERAND2_ALPHA_EXT */ + { 29182, 0x00008592 }, /* GL_OPERAND2_RGB */ + { 29198, 0x00008592 }, /* GL_OPERAND2_RGB_ARB */ + { 29218, 0x00008592 }, /* GL_OPERAND2_RGB_EXT */ + { 29238, 0x0000859B }, /* GL_OPERAND3_ALPHA_NV */ + { 29259, 0x00008593 }, /* GL_OPERAND3_RGB_NV */ + { 29278, 0x00001507 }, /* GL_OR */ + { 29284, 0x00000A01 }, /* GL_ORDER */ + { 29293, 0x0000150D }, /* GL_OR_INVERTED */ + { 29308, 0x0000150B }, /* GL_OR_REVERSE */ + { 29322, 0x00000505 }, /* GL_OUT_OF_MEMORY */ + { 29339, 0x00000D05 }, /* GL_PACK_ALIGNMENT */ + { 29357, 0x0000806C }, /* GL_PACK_IMAGE_HEIGHT */ + { 29378, 0x00008758 }, /* GL_PACK_INVERT_MESA */ + { 29398, 0x00000D01 }, /* GL_PACK_LSB_FIRST */ + { 29416, 0x00000D02 }, /* GL_PACK_ROW_LENGTH */ + { 29435, 0x0000806B }, /* GL_PACK_SKIP_IMAGES */ + { 29455, 0x00000D04 }, /* GL_PACK_SKIP_PIXELS */ + { 29475, 0x00000D03 }, /* GL_PACK_SKIP_ROWS */ + { 29493, 0x00000D00 }, /* GL_PACK_SWAP_BYTES */ + { 29512, 0x00008B92 }, /* GL_PALETTE4_R5_G6_B5_OES */ + { 29537, 0x00008B94 }, /* GL_PALETTE4_RGB5_A1_OES */ + { 29561, 0x00008B90 }, /* GL_PALETTE4_RGB8_OES */ + { 29582, 0x00008B93 }, /* GL_PALETTE4_RGBA4_OES */ + { 29604, 0x00008B91 }, /* GL_PALETTE4_RGBA8_OES */ + { 29626, 0x00008B97 }, /* GL_PALETTE8_R5_G6_B5_OES */ + { 29651, 0x00008B99 }, /* GL_PALETTE8_RGB5_A1_OES */ + { 29675, 0x00008B95 }, /* GL_PALETTE8_RGB8_OES */ + { 29696, 0x00008B98 }, /* GL_PALETTE8_RGBA4_OES */ + { 29718, 0x00008B96 }, /* GL_PALETTE8_RGBA8_OES */ + { 29740, 0x00000700 }, /* GL_PASS_THROUGH_TOKEN */ + { 29762, 0x00000C50 }, /* GL_PERSPECTIVE_CORRECTION_HINT */ + { 29793, 0x00000C79 }, /* GL_PIXEL_MAP_A_TO_A */ + { 29813, 0x00000CB9 }, /* GL_PIXEL_MAP_A_TO_A_SIZE */ + { 29838, 0x00000C78 }, /* GL_PIXEL_MAP_B_TO_B */ + { 29858, 0x00000CB8 }, /* GL_PIXEL_MAP_B_TO_B_SIZE */ + { 29883, 0x00000C77 }, /* GL_PIXEL_MAP_G_TO_G */ + { 29903, 0x00000CB7 }, /* GL_PIXEL_MAP_G_TO_G_SIZE */ + { 29928, 0x00000C75 }, /* GL_PIXEL_MAP_I_TO_A */ + { 29948, 0x00000CB5 }, /* GL_PIXEL_MAP_I_TO_A_SIZE */ + { 29973, 0x00000C74 }, /* GL_PIXEL_MAP_I_TO_B */ + { 29993, 0x00000CB4 }, /* GL_PIXEL_MAP_I_TO_B_SIZE */ + { 30018, 0x00000C73 }, /* GL_PIXEL_MAP_I_TO_G */ + { 30038, 0x00000CB3 }, /* GL_PIXEL_MAP_I_TO_G_SIZE */ + { 30063, 0x00000C70 }, /* GL_PIXEL_MAP_I_TO_I */ + { 30083, 0x00000CB0 }, /* GL_PIXEL_MAP_I_TO_I_SIZE */ + { 30108, 0x00000C72 }, /* GL_PIXEL_MAP_I_TO_R */ + { 30128, 0x00000CB2 }, /* GL_PIXEL_MAP_I_TO_R_SIZE */ + { 30153, 0x00000C76 }, /* GL_PIXEL_MAP_R_TO_R */ + { 30173, 0x00000CB6 }, /* GL_PIXEL_MAP_R_TO_R_SIZE */ + { 30198, 0x00000C71 }, /* GL_PIXEL_MAP_S_TO_S */ + { 30218, 0x00000CB1 }, /* GL_PIXEL_MAP_S_TO_S_SIZE */ + { 30243, 0x00000020 }, /* GL_PIXEL_MODE_BIT */ + { 30261, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER */ + { 30282, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING */ + { 30311, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING_EXT */ + { 30344, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER_EXT */ + { 30369, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER */ + { 30392, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING */ + { 30423, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING_EXT */ + { 30458, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER_EXT */ + { 30485, 0x00001B00 }, /* GL_POINT */ + { 30494, 0x00000000 }, /* GL_POINTS */ + { 30504, 0x00000002 }, /* GL_POINT_BIT */ + { 30517, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION */ + { 30547, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_ARB */ + { 30581, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_EXT */ + { 30615, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_SGIS */ + { 30650, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE */ + { 30679, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_ARB */ + { 30712, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_EXT */ + { 30745, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_SGIS */ + { 30779, 0x00000B11 }, /* GL_POINT_SIZE */ + { 30793, 0x00008B9F }, /* GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES */ + { 30832, 0x00008B9C }, /* GL_POINT_SIZE_ARRAY_OES */ + { 30856, 0x0000898C }, /* GL_POINT_SIZE_ARRAY_POINTER_OES */ + { 30888, 0x0000898B }, /* GL_POINT_SIZE_ARRAY_STRIDE_OES */ + { 30919, 0x0000898A }, /* GL_POINT_SIZE_ARRAY_TYPE_OES */ + { 30948, 0x00000B13 }, /* GL_POINT_SIZE_GRANULARITY */ + { 30974, 0x00008127 }, /* GL_POINT_SIZE_MAX */ + { 30992, 0x00008127 }, /* GL_POINT_SIZE_MAX_ARB */ + { 31014, 0x00008127 }, /* GL_POINT_SIZE_MAX_EXT */ + { 31036, 0x00008127 }, /* GL_POINT_SIZE_MAX_SGIS */ + { 31059, 0x00008126 }, /* GL_POINT_SIZE_MIN */ + { 31077, 0x00008126 }, /* GL_POINT_SIZE_MIN_ARB */ + { 31099, 0x00008126 }, /* GL_POINT_SIZE_MIN_EXT */ + { 31121, 0x00008126 }, /* GL_POINT_SIZE_MIN_SGIS */ + { 31144, 0x00000B12 }, /* GL_POINT_SIZE_RANGE */ + { 31164, 0x00000B10 }, /* GL_POINT_SMOOTH */ + { 31180, 0x00000C51 }, /* GL_POINT_SMOOTH_HINT */ + { 31201, 0x00008861 }, /* GL_POINT_SPRITE */ + { 31217, 0x00008861 }, /* GL_POINT_SPRITE_ARB */ + { 31237, 0x00008CA0 }, /* GL_POINT_SPRITE_COORD_ORIGIN */ + { 31266, 0x00008861 }, /* GL_POINT_SPRITE_NV */ + { 31285, 0x00008861 }, /* GL_POINT_SPRITE_OES */ + { 31305, 0x00008863 }, /* GL_POINT_SPRITE_R_MODE_NV */ + { 31331, 0x00000701 }, /* GL_POINT_TOKEN */ + { 31346, 0x00000009 }, /* GL_POLYGON */ + { 31357, 0x00000008 }, /* GL_POLYGON_BIT */ + { 31372, 0x00000B40 }, /* GL_POLYGON_MODE */ + { 31388, 0x00008039 }, /* GL_POLYGON_OFFSET_BIAS */ + { 31411, 0x00008038 }, /* GL_POLYGON_OFFSET_FACTOR */ + { 31436, 0x00008037 }, /* GL_POLYGON_OFFSET_FILL */ + { 31459, 0x00002A02 }, /* GL_POLYGON_OFFSET_LINE */ + { 31482, 0x00002A01 }, /* GL_POLYGON_OFFSET_POINT */ + { 31506, 0x00002A00 }, /* GL_POLYGON_OFFSET_UNITS */ + { 31530, 0x00000B41 }, /* GL_POLYGON_SMOOTH */ + { 31548, 0x00000C53 }, /* GL_POLYGON_SMOOTH_HINT */ + { 31571, 0x00000B42 }, /* GL_POLYGON_STIPPLE */ + { 31590, 0x00000010 }, /* GL_POLYGON_STIPPLE_BIT */ + { 31613, 0x00000703 }, /* GL_POLYGON_TOKEN */ + { 31630, 0x00001203 }, /* GL_POSITION */ + { 31642, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */ + { 31674, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI */ + { 31710, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */ + { 31743, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI */ + { 31780, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */ + { 31811, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI */ + { 31846, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */ + { 31878, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI */ + { 31914, 0x000080D2 }, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */ + { 31947, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */ + { 31979, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI */ + { 32015, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */ + { 32048, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI */ + { 32085, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS */ + { 32115, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS_SGI */ + { 32149, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE */ + { 32180, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE_SGI */ + { 32215, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS */ + { 32246, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS_EXT */ + { 32281, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE */ + { 32313, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE_EXT */ + { 32349, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS */ + { 32379, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS_EXT */ + { 32413, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE */ + { 32444, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE_EXT */ + { 32479, 0x000080D1 }, /* GL_POST_CONVOLUTION_COLOR_TABLE */ + { 32511, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS */ + { 32542, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS_EXT */ + { 32577, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE */ + { 32609, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE_EXT */ + { 32645, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS */ + { 32674, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS_EXT */ + { 32707, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE */ + { 32737, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE_EXT */ + { 32771, 0x0000817B }, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */ + { 32810, 0x00008179 }, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */ + { 32843, 0x0000817C }, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */ + { 32883, 0x0000817A }, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */ + { 32917, 0x00008578 }, /* GL_PREVIOUS */ + { 32929, 0x00008578 }, /* GL_PREVIOUS_ARB */ + { 32945, 0x00008578 }, /* GL_PREVIOUS_EXT */ + { 32961, 0x00008577 }, /* GL_PRIMARY_COLOR */ + { 32978, 0x00008577 }, /* GL_PRIMARY_COLOR_ARB */ + { 32999, 0x00008577 }, /* GL_PRIMARY_COLOR_EXT */ + { 33020, 0x00008C87 }, /* GL_PRIMITIVES_GENERATED */ + { 33044, 0x00008C87 }, /* GL_PRIMITIVES_GENERATED_EXT */ + { 33072, 0x00008F9D }, /* GL_PRIMITIVE_RESTART */ + { 33093, 0x00008F9E }, /* GL_PRIMITIVE_RESTART_INDEX */ + { 33120, 0x00008559 }, /* GL_PRIMITIVE_RESTART_INDEX_NV */ + { 33150, 0x00008558 }, /* GL_PRIMITIVE_RESTART_NV */ + { 33174, 0x000088B0 }, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */ + { 33207, 0x00008805 }, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */ + { 33239, 0x000088AC }, /* GL_PROGRAM_ATTRIBS_ARB */ + { 33262, 0x000087FF }, /* GL_PROGRAM_BINARY_FORMATS */ + { 33288, 0x000087FF }, /* GL_PROGRAM_BINARY_FORMATS_OES */ + { 33318, 0x00008741 }, /* GL_PROGRAM_BINARY_LENGTH */ + { 33343, 0x00008741 }, /* GL_PROGRAM_BINARY_LENGTH_OES */ + { 33372, 0x00008257 }, /* GL_PROGRAM_BINARY_RETRIEVABLE_HINT */ + { 33407, 0x00008677 }, /* GL_PROGRAM_BINDING_ARB */ + { 33430, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_ARB */ + { 33460, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_NV */ + { 33489, 0x00008874 }, /* GL_PROGRAM_ERROR_STRING_ARB */ + { 33517, 0x00008876 }, /* GL_PROGRAM_FORMAT_ARB */ + { 33539, 0x00008875 }, /* GL_PROGRAM_FORMAT_ASCII_ARB */ + { 33567, 0x000088A0 }, /* GL_PROGRAM_INSTRUCTIONS_ARB */ + { 33595, 0x00008627 }, /* GL_PROGRAM_LENGTH_ARB */ + { 33617, 0x00008627 }, /* GL_PROGRAM_LENGTH_NV */ + { 33638, 0x000088B2 }, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ + { 33678, 0x00008808 }, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ + { 33717, 0x000088AE }, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */ + { 33747, 0x000088A2 }, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ + { 33782, 0x000088AA }, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */ + { 33815, 0x000088A6 }, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */ + { 33849, 0x0000880A }, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ + { 33888, 0x00008809 }, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ + { 33927, 0x00008B40 }, /* GL_PROGRAM_OBJECT_ARB */ + { 33949, 0x000088A8 }, /* GL_PROGRAM_PARAMETERS_ARB */ + { 33975, 0x00008644 }, /* GL_PROGRAM_PARAMETER_NV */ + { 33999, 0x00008642 }, /* GL_PROGRAM_POINT_SIZE */ + { 34021, 0x00008642 }, /* GL_PROGRAM_POINT_SIZE_ARB */ + { 34047, 0x00008647 }, /* GL_PROGRAM_RESIDENT_NV */ + { 34070, 0x00008628 }, /* GL_PROGRAM_STRING_ARB */ + { 34092, 0x00008628 }, /* GL_PROGRAM_STRING_NV */ + { 34113, 0x00008646 }, /* GL_PROGRAM_TARGET_NV */ + { 34134, 0x000088A4 }, /* GL_PROGRAM_TEMPORARIES_ARB */ + { 34161, 0x00008807 }, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */ + { 34193, 0x00008806 }, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */ + { 34225, 0x000088B6 }, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */ + { 34260, 0x00001701 }, /* GL_PROJECTION */ + { 34274, 0x00000BA7 }, /* GL_PROJECTION_MATRIX */ + { 34295, 0x0000898E }, /* GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES */ + { 34338, 0x00000BA4 }, /* GL_PROJECTION_STACK_DEPTH */ + { 34364, 0x00008E4F }, /* GL_PROVOKING_VERTEX */ + { 34384, 0x00008E4F }, /* GL_PROVOKING_VERTEX_EXT */ + { 34408, 0x000080D3 }, /* GL_PROXY_COLOR_TABLE */ + { 34429, 0x00008025 }, /* GL_PROXY_HISTOGRAM */ + { 34448, 0x00008025 }, /* GL_PROXY_HISTOGRAM_EXT */ + { 34471, 0x000080D5 }, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */ + { 34510, 0x000080D4 }, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */ + { 34548, 0x00008063 }, /* GL_PROXY_TEXTURE_1D */ + { 34568, 0x00008C19 }, /* GL_PROXY_TEXTURE_1D_ARRAY */ + { 34594, 0x00008C19 }, /* GL_PROXY_TEXTURE_1D_ARRAY_EXT */ + { 34624, 0x00008063 }, /* GL_PROXY_TEXTURE_1D_EXT */ + { 34648, 0x00008064 }, /* GL_PROXY_TEXTURE_2D */ + { 34668, 0x00008C1B }, /* GL_PROXY_TEXTURE_2D_ARRAY */ + { 34694, 0x00008C1B }, /* GL_PROXY_TEXTURE_2D_ARRAY_EXT */ + { 34724, 0x00008064 }, /* GL_PROXY_TEXTURE_2D_EXT */ + { 34748, 0x00008070 }, /* GL_PROXY_TEXTURE_3D */ + { 34768, 0x000080BD }, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */ + { 34801, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP */ + { 34827, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP_ARB */ + { 34857, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE */ + { 34884, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_ARB */ + { 34915, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_NV */ + { 34945, 0x00008A1D }, /* GL_PURGEABLE_APPLE */ + { 34964, 0x00002003 }, /* GL_Q */ + { 34969, 0x00001209 }, /* GL_QUADRATIC_ATTENUATION */ + { 34994, 0x00000007 }, /* GL_QUADS */ + { 35003, 0x00008E4C }, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION */ + { 35047, 0x00008E4C }, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT */ + { 35095, 0x00008614 }, /* GL_QUAD_MESH_SUN */ + { 35112, 0x00000008 }, /* GL_QUAD_STRIP */ + { 35126, 0x00008E16 }, /* GL_QUERY_BY_REGION_NO_WAIT */ + { 35153, 0x00008E16 }, /* GL_QUERY_BY_REGION_NO_WAIT_NV */ + { 35183, 0x00008E15 }, /* GL_QUERY_BY_REGION_WAIT */ + { 35207, 0x00008E15 }, /* GL_QUERY_BY_REGION_WAIT_NV */ + { 35234, 0x00008864 }, /* GL_QUERY_COUNTER_BITS */ + { 35256, 0x00008864 }, /* GL_QUERY_COUNTER_BITS_ARB */ + { 35282, 0x00008E14 }, /* GL_QUERY_NO_WAIT */ + { 35299, 0x00008E14 }, /* GL_QUERY_NO_WAIT_NV */ + { 35319, 0x00008866 }, /* GL_QUERY_RESULT */ + { 35335, 0x00008866 }, /* GL_QUERY_RESULT_ARB */ + { 35355, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE */ + { 35381, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE_ARB */ + { 35411, 0x00008E13 }, /* GL_QUERY_WAIT */ + { 35425, 0x00008E13 }, /* GL_QUERY_WAIT_NV */ + { 35442, 0x00002002 }, /* GL_R */ + { 35447, 0x00008C3A }, /* GL_R11F_G11F_B10F */ + { 35465, 0x00008F98 }, /* GL_R16_SNORM */ + { 35478, 0x00002A10 }, /* GL_R3_G3_B2 */ + { 35490, 0x00008F94 }, /* GL_R8_SNORM */ + { 35502, 0x00008C89 }, /* GL_RASTERIZER_DISCARD */ + { 35524, 0x00008C89 }, /* GL_RASTERIZER_DISCARD_EXT */ + { 35550, 0x00019262 }, /* GL_RASTER_POSITION_UNCLIPPED_IBM */ + { 35583, 0x00000C02 }, /* GL_READ_BUFFER */ + { 35598, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER */ + { 35618, 0x00008CAA }, /* GL_READ_FRAMEBUFFER_BINDING */ + { 35646, 0x00008CAA }, /* GL_READ_FRAMEBUFFER_BINDING_EXT */ + { 35678, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER_EXT */ + { 35702, 0x000088B8 }, /* GL_READ_ONLY */ + { 35715, 0x000088B8 }, /* GL_READ_ONLY_ARB */ + { 35732, 0x000088BA }, /* GL_READ_WRITE */ + { 35746, 0x000088BA }, /* GL_READ_WRITE_ARB */ + { 35764, 0x00001903 }, /* GL_RED */ + { 35771, 0x00008016 }, /* GL_REDUCE */ + { 35781, 0x00008016 }, /* GL_REDUCE_EXT */ + { 35795, 0x00000D15 }, /* GL_RED_BIAS */ + { 35807, 0x00000D52 }, /* GL_RED_BITS */ + { 35819, 0x00008D94 }, /* GL_RED_INTEGER */ + { 35834, 0x00008D94 }, /* GL_RED_INTEGER_EXT */ + { 35853, 0x00000D14 }, /* GL_RED_SCALE */ + { 35866, 0x00008F90 }, /* GL_RED_SNORM */ + { 35879, 0x00008512 }, /* GL_REFLECTION_MAP */ + { 35897, 0x00008512 }, /* GL_REFLECTION_MAP_ARB */ + { 35919, 0x00008512 }, /* GL_REFLECTION_MAP_NV */ + { 35940, 0x00008512 }, /* GL_REFLECTION_MAP_OES */ + { 35962, 0x00008A19 }, /* GL_RELEASED_APPLE */ + { 35980, 0x00001C00 }, /* GL_RENDER */ + { 35990, 0x00008D41 }, /* GL_RENDERBUFFER */ + { 36006, 0x00008D53 }, /* GL_RENDERBUFFER_ALPHA_SIZE */ + { 36033, 0x00008D53 }, /* GL_RENDERBUFFER_ALPHA_SIZE_OES */ + { 36064, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING */ + { 36088, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING_EXT */ + { 36116, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING_OES */ + { 36144, 0x00008D52 }, /* GL_RENDERBUFFER_BLUE_SIZE */ + { 36170, 0x00008D52 }, /* GL_RENDERBUFFER_BLUE_SIZE_OES */ + { 36200, 0x00008D54 }, /* GL_RENDERBUFFER_DEPTH_SIZE */ + { 36227, 0x00008D54 }, /* GL_RENDERBUFFER_DEPTH_SIZE_OES */ + { 36258, 0x00008D41 }, /* GL_RENDERBUFFER_EXT */ + { 36278, 0x00008D51 }, /* GL_RENDERBUFFER_GREEN_SIZE */ + { 36305, 0x00008D51 }, /* GL_RENDERBUFFER_GREEN_SIZE_OES */ + { 36336, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT */ + { 36359, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT_EXT */ + { 36386, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT_OES */ + { 36413, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT */ + { 36445, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT_EXT */ + { 36481, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT_OES */ + { 36517, 0x00008D41 }, /* GL_RENDERBUFFER_OES */ + { 36537, 0x00008D50 }, /* GL_RENDERBUFFER_RED_SIZE */ + { 36562, 0x00008D50 }, /* GL_RENDERBUFFER_RED_SIZE_OES */ + { 36591, 0x00008CAB }, /* GL_RENDERBUFFER_SAMPLES */ + { 36615, 0x00008CAB }, /* GL_RENDERBUFFER_SAMPLES_EXT */ + { 36643, 0x00008D55 }, /* GL_RENDERBUFFER_STENCIL_SIZE */ + { 36672, 0x00008D55 }, /* GL_RENDERBUFFER_STENCIL_SIZE_OES */ + { 36705, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH */ + { 36727, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH_EXT */ + { 36753, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH_OES */ + { 36779, 0x00001F01 }, /* GL_RENDERER */ + { 36791, 0x00000C40 }, /* GL_RENDER_MODE */ + { 36806, 0x00002901 }, /* GL_REPEAT */ + { 36816, 0x00001E01 }, /* GL_REPLACE */ + { 36827, 0x00008062 }, /* GL_REPLACE_EXT */ + { 36842, 0x00008153 }, /* GL_REPLICATE_BORDER_HP */ + { 36865, 0x0000803A }, /* GL_RESCALE_NORMAL */ + { 36883, 0x0000803A }, /* GL_RESCALE_NORMAL_EXT */ + { 36905, 0x00008256 }, /* GL_RESET_NOTIFICATION_STRATEGY_ARB */ + { 36940, 0x00008A1B }, /* GL_RETAINED_APPLE */ + { 36958, 0x00000102 }, /* GL_RETURN */ + { 36968, 0x00008F99 }, /* GL_RG16_SNORM */ + { 36982, 0x00008F95 }, /* GL_RG8_SNORM */ + { 36995, 0x00001907 }, /* GL_RGB */ + { 37002, 0x00008052 }, /* GL_RGB10 */ + { 37011, 0x00008059 }, /* GL_RGB10_A2 */ + { 37023, 0x00008059 }, /* GL_RGB10_A2_EXT */ + { 37039, 0x00008052 }, /* GL_RGB10_EXT */ + { 37052, 0x00008053 }, /* GL_RGB12 */ + { 37061, 0x00008053 }, /* GL_RGB12_EXT */ + { 37074, 0x00008054 }, /* GL_RGB16 */ + { 37083, 0x0000881B }, /* GL_RGB16F */ + { 37093, 0x00008D89 }, /* GL_RGB16I */ + { 37103, 0x00008D89 }, /* GL_RGB16I_EXT */ + { 37117, 0x00008D77 }, /* GL_RGB16UI */ + { 37128, 0x00008D77 }, /* GL_RGB16UI_EXT */ + { 37143, 0x00008054 }, /* GL_RGB16_EXT */ + { 37156, 0x00008F9A }, /* GL_RGB16_SNORM */ + { 37171, 0x0000804E }, /* GL_RGB2_EXT */ + { 37183, 0x00008815 }, /* GL_RGB32F */ + { 37193, 0x00008D83 }, /* GL_RGB32I */ + { 37203, 0x00008D83 }, /* GL_RGB32I_EXT */ + { 37217, 0x00008D71 }, /* GL_RGB32UI */ + { 37228, 0x00008D71 }, /* GL_RGB32UI_EXT */ + { 37243, 0x0000804F }, /* GL_RGB4 */ + { 37251, 0x0000804F }, /* GL_RGB4_EXT */ + { 37263, 0x000083A1 }, /* GL_RGB4_S3TC */ + { 37276, 0x00008050 }, /* GL_RGB5 */ + { 37284, 0x00008D62 }, /* GL_RGB565 */ + { 37294, 0x00008D62 }, /* GL_RGB565_OES */ + { 37308, 0x00008057 }, /* GL_RGB5_A1 */ + { 37319, 0x00008057 }, /* GL_RGB5_A1_EXT */ + { 37334, 0x00008057 }, /* GL_RGB5_A1_OES */ + { 37349, 0x00008050 }, /* GL_RGB5_EXT */ + { 37361, 0x00008051 }, /* GL_RGB8 */ + { 37369, 0x00008D8F }, /* GL_RGB8I */ + { 37378, 0x00008D8F }, /* GL_RGB8I_EXT */ + { 37391, 0x00008D7D }, /* GL_RGB8UI */ + { 37401, 0x00008D7D }, /* GL_RGB8UI_EXT */ + { 37415, 0x00008051 }, /* GL_RGB8_EXT */ + { 37427, 0x00008051 }, /* GL_RGB8_OES */ + { 37439, 0x00008F96 }, /* GL_RGB8_SNORM */ + { 37453, 0x00008C3D }, /* GL_RGB9_E5 */ + { 37464, 0x00001908 }, /* GL_RGBA */ + { 37472, 0x0000805A }, /* GL_RGBA12 */ + { 37482, 0x0000805A }, /* GL_RGBA12_EXT */ + { 37496, 0x0000805B }, /* GL_RGBA16 */ + { 37506, 0x0000881A }, /* GL_RGBA16F */ + { 37517, 0x00008D88 }, /* GL_RGBA16I */ + { 37528, 0x00008D88 }, /* GL_RGBA16I_EXT */ + { 37543, 0x00008D76 }, /* GL_RGBA16UI */ + { 37555, 0x00008D76 }, /* GL_RGBA16UI_EXT */ + { 37571, 0x0000805B }, /* GL_RGBA16_EXT */ + { 37585, 0x00008F9B }, /* GL_RGBA16_SNORM */ + { 37601, 0x00008055 }, /* GL_RGBA2 */ + { 37610, 0x00008055 }, /* GL_RGBA2_EXT */ + { 37623, 0x00008814 }, /* GL_RGBA32F */ + { 37634, 0x00008D82 }, /* GL_RGBA32I */ + { 37645, 0x00008D82 }, /* GL_RGBA32I_EXT */ + { 37660, 0x00008D70 }, /* GL_RGBA32UI */ + { 37672, 0x00008D70 }, /* GL_RGBA32UI_EXT */ + { 37688, 0x00008056 }, /* GL_RGBA4 */ + { 37697, 0x000083A5 }, /* GL_RGBA4_DXT5_S3TC */ + { 37716, 0x00008056 }, /* GL_RGBA4_EXT */ + { 37729, 0x00008056 }, /* GL_RGBA4_OES */ + { 37742, 0x000083A3 }, /* GL_RGBA4_S3TC */ + { 37756, 0x00008058 }, /* GL_RGBA8 */ + { 37765, 0x00008D8E }, /* GL_RGBA8I */ + { 37775, 0x00008D8E }, /* GL_RGBA8I_EXT */ + { 37789, 0x00008D7C }, /* GL_RGBA8UI */ + { 37800, 0x00008D7C }, /* GL_RGBA8UI_EXT */ + { 37815, 0x00008058 }, /* GL_RGBA8_EXT */ + { 37828, 0x00008058 }, /* GL_RGBA8_OES */ + { 37841, 0x00008F97 }, /* GL_RGBA8_SNORM */ + { 37856, 0x000083A4 }, /* GL_RGBA_DXT5_S3TC */ + { 37874, 0x00008820 }, /* GL_RGBA_FLOAT_MODE_ARB */ + { 37897, 0x00008D99 }, /* GL_RGBA_INTEGER */ + { 37913, 0x00008D99 }, /* GL_RGBA_INTEGER_EXT */ + { 37933, 0x00008D9E }, /* GL_RGBA_INTEGER_MODE_EXT */ + { 37958, 0x00000C31 }, /* GL_RGBA_MODE */ + { 37971, 0x000083A2 }, /* GL_RGBA_S3TC */ + { 37984, 0x00008F93 }, /* GL_RGBA_SNORM */ + { 37998, 0x00008D98 }, /* GL_RGB_INTEGER */ + { 38013, 0x00008D98 }, /* GL_RGB_INTEGER_EXT */ + { 38032, 0x000083A0 }, /* GL_RGB_S3TC */ + { 38044, 0x00008573 }, /* GL_RGB_SCALE */ + { 38057, 0x00008573 }, /* GL_RGB_SCALE_ARB */ + { 38074, 0x00008573 }, /* GL_RGB_SCALE_EXT */ + { 38091, 0x00008F92 }, /* GL_RGB_SNORM */ + { 38104, 0x00008F91 }, /* GL_RG_SNORM */ + { 38116, 0x00000407 }, /* GL_RIGHT */ + { 38125, 0x00002000 }, /* GL_S */ + { 38130, 0x00008B5D }, /* GL_SAMPLER_1D */ + { 38144, 0x00008DC0 }, /* GL_SAMPLER_1D_ARRAY */ + { 38164, 0x00008DC0 }, /* GL_SAMPLER_1D_ARRAY_EXT */ + { 38188, 0x00008DC3 }, /* GL_SAMPLER_1D_ARRAY_SHADOW */ + { 38215, 0x00008DC3 }, /* GL_SAMPLER_1D_ARRAY_SHADOW_EXT */ + { 38246, 0x00008B61 }, /* GL_SAMPLER_1D_SHADOW */ + { 38267, 0x00008B5E }, /* GL_SAMPLER_2D */ + { 38281, 0x00008DC1 }, /* GL_SAMPLER_2D_ARRAY */ + { 38301, 0x00008DC1 }, /* GL_SAMPLER_2D_ARRAY_EXT */ + { 38325, 0x00008DC4 }, /* GL_SAMPLER_2D_ARRAY_SHADOW */ + { 38352, 0x00008DC4 }, /* GL_SAMPLER_2D_ARRAY_SHADOW_EXT */ + { 38383, 0x00008B63 }, /* GL_SAMPLER_2D_RECT */ + { 38402, 0x00008B64 }, /* GL_SAMPLER_2D_RECT_SHADOW */ + { 38428, 0x00008B62 }, /* GL_SAMPLER_2D_SHADOW */ + { 38449, 0x00008B5F }, /* GL_SAMPLER_3D */ + { 38463, 0x00008B5F }, /* GL_SAMPLER_3D_OES */ + { 38481, 0x00008919 }, /* GL_SAMPLER_BINDING */ + { 38500, 0x00008DC2 }, /* GL_SAMPLER_BUFFER */ + { 38518, 0x00008DC2 }, /* GL_SAMPLER_BUFFER_EXT */ + { 38540, 0x00008B60 }, /* GL_SAMPLER_CUBE */ + { 38556, 0x00008DC5 }, /* GL_SAMPLER_CUBE_SHADOW */ + { 38579, 0x00008DC5 }, /* GL_SAMPLER_CUBE_SHADOW_EXT */ + { 38606, 0x000080A9 }, /* GL_SAMPLES */ + { 38617, 0x000086B4 }, /* GL_SAMPLES_3DFX */ + { 38633, 0x000080A9 }, /* GL_SAMPLES_ARB */ + { 38648, 0x00008914 }, /* GL_SAMPLES_PASSED */ + { 38666, 0x00008914 }, /* GL_SAMPLES_PASSED_ARB */ + { 38688, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ + { 38716, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE_ARB */ + { 38748, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE */ + { 38771, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE_ARB */ + { 38798, 0x000080A8 }, /* GL_SAMPLE_BUFFERS */ + { 38816, 0x000086B3 }, /* GL_SAMPLE_BUFFERS_3DFX */ + { 38839, 0x000080A8 }, /* GL_SAMPLE_BUFFERS_ARB */ + { 38861, 0x000080A0 }, /* GL_SAMPLE_COVERAGE */ + { 38880, 0x000080A0 }, /* GL_SAMPLE_COVERAGE_ARB */ + { 38903, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT */ + { 38929, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT_ARB */ + { 38959, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE */ + { 38984, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE_ARB */ + { 39013, 0x00080000 }, /* GL_SCISSOR_BIT */ + { 39028, 0x00000C10 }, /* GL_SCISSOR_BOX */ + { 39043, 0x00000C11 }, /* GL_SCISSOR_TEST */ + { 39059, 0x0000845E }, /* GL_SECONDARY_COLOR_ARRAY */ + { 39084, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ + { 39124, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB */ + { 39168, 0x0000845D }, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ + { 39201, 0x0000845A }, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ + { 39231, 0x0000845C }, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ + { 39263, 0x0000845B }, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ + { 39293, 0x00001C02 }, /* GL_SELECT */ + { 39303, 0x00000DF3 }, /* GL_SELECTION_BUFFER_POINTER */ + { 39331, 0x00000DF4 }, /* GL_SELECTION_BUFFER_SIZE */ + { 39356, 0x00008012 }, /* GL_SEPARABLE_2D */ + { 39372, 0x00008C8D }, /* GL_SEPARATE_ATTRIBS */ + { 39392, 0x00008C8D }, /* GL_SEPARATE_ATTRIBS_EXT */ + { 39416, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR */ + { 39443, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR_EXT */ + { 39474, 0x0000150F }, /* GL_SET */ + { 39481, 0x00008DF8 }, /* GL_SHADER_BINARY_FORMATS */ + { 39506, 0x00008DFA }, /* GL_SHADER_COMPILER */ + { 39525, 0x00008B48 }, /* GL_SHADER_OBJECT_ARB */ + { 39546, 0x00008B88 }, /* GL_SHADER_SOURCE_LENGTH */ + { 39570, 0x00008B4F }, /* GL_SHADER_TYPE */ + { 39585, 0x00000B54 }, /* GL_SHADE_MODEL */ + { 39600, 0x00008B8C }, /* GL_SHADING_LANGUAGE_VERSION */ + { 39628, 0x000080BF }, /* GL_SHADOW_AMBIENT_SGIX */ + { 39651, 0x000081FB }, /* GL_SHARED_TEXTURE_PALETTE_EXT */ + { 39681, 0x00001601 }, /* GL_SHININESS */ + { 39694, 0x00001402 }, /* GL_SHORT */ + { 39703, 0x00009119 }, /* GL_SIGNALED */ + { 39715, 0x00008F9C }, /* GL_SIGNED_NORMALIZED */ + { 39736, 0x000081F9 }, /* GL_SINGLE_COLOR */ + { 39752, 0x000081F9 }, /* GL_SINGLE_COLOR_EXT */ + { 39772, 0x000085CC }, /* GL_SLICE_ACCUM_SUN */ + { 39791, 0x00008C46 }, /* GL_SLUMINANCE */ + { 39805, 0x00008C47 }, /* GL_SLUMINANCE8 */ + { 39820, 0x00008C45 }, /* GL_SLUMINANCE8_ALPHA8 */ + { 39842, 0x00008C44 }, /* GL_SLUMINANCE_ALPHA */ + { 39862, 0x00001D01 }, /* GL_SMOOTH */ + { 39872, 0x00000B23 }, /* GL_SMOOTH_LINE_WIDTH_GRANULARITY */ + { 39905, 0x00000B22 }, /* GL_SMOOTH_LINE_WIDTH_RANGE */ + { 39932, 0x00000B13 }, /* GL_SMOOTH_POINT_SIZE_GRANULARITY */ + { 39965, 0x00000B12 }, /* GL_SMOOTH_POINT_SIZE_RANGE */ + { 39992, 0x00008588 }, /* GL_SOURCE0_ALPHA */ + { 40009, 0x00008588 }, /* GL_SOURCE0_ALPHA_ARB */ + { 40030, 0x00008588 }, /* GL_SOURCE0_ALPHA_EXT */ + { 40051, 0x00008580 }, /* GL_SOURCE0_RGB */ + { 40066, 0x00008580 }, /* GL_SOURCE0_RGB_ARB */ + { 40085, 0x00008580 }, /* GL_SOURCE0_RGB_EXT */ + { 40104, 0x00008589 }, /* GL_SOURCE1_ALPHA */ + { 40121, 0x00008589 }, /* GL_SOURCE1_ALPHA_ARB */ + { 40142, 0x00008589 }, /* GL_SOURCE1_ALPHA_EXT */ + { 40163, 0x00008581 }, /* GL_SOURCE1_RGB */ + { 40178, 0x00008581 }, /* GL_SOURCE1_RGB_ARB */ + { 40197, 0x00008581 }, /* GL_SOURCE1_RGB_EXT */ + { 40216, 0x0000858A }, /* GL_SOURCE2_ALPHA */ + { 40233, 0x0000858A }, /* GL_SOURCE2_ALPHA_ARB */ + { 40254, 0x0000858A }, /* GL_SOURCE2_ALPHA_EXT */ + { 40275, 0x00008582 }, /* GL_SOURCE2_RGB */ + { 40290, 0x00008582 }, /* GL_SOURCE2_RGB_ARB */ + { 40309, 0x00008582 }, /* GL_SOURCE2_RGB_EXT */ + { 40328, 0x0000858B }, /* GL_SOURCE3_ALPHA_NV */ + { 40348, 0x00008583 }, /* GL_SOURCE3_RGB_NV */ + { 40366, 0x00001202 }, /* GL_SPECULAR */ + { 40378, 0x00002402 }, /* GL_SPHERE_MAP */ + { 40392, 0x00001206 }, /* GL_SPOT_CUTOFF */ + { 40407, 0x00001204 }, /* GL_SPOT_DIRECTION */ + { 40425, 0x00001205 }, /* GL_SPOT_EXPONENT */ + { 40442, 0x00008588 }, /* GL_SRC0_ALPHA */ + { 40456, 0x00008580 }, /* GL_SRC0_RGB */ + { 40468, 0x00008589 }, /* GL_SRC1_ALPHA */ + { 40482, 0x00008581 }, /* GL_SRC1_RGB */ + { 40494, 0x0000858A }, /* GL_SRC2_ALPHA */ + { 40508, 0x00008582 }, /* GL_SRC2_RGB */ + { 40520, 0x00000302 }, /* GL_SRC_ALPHA */ + { 40533, 0x00000308 }, /* GL_SRC_ALPHA_SATURATE */ + { 40555, 0x00000300 }, /* GL_SRC_COLOR */ + { 40568, 0x00008C40 }, /* GL_SRGB */ + { 40576, 0x00008C41 }, /* GL_SRGB8 */ + { 40585, 0x00008C43 }, /* GL_SRGB8_ALPHA8 */ + { 40601, 0x00008C42 }, /* GL_SRGB_ALPHA */ + { 40615, 0x00000503 }, /* GL_STACK_OVERFLOW */ + { 40633, 0x00000504 }, /* GL_STACK_UNDERFLOW */ + { 40652, 0x000088E6 }, /* GL_STATIC_COPY */ + { 40667, 0x000088E6 }, /* GL_STATIC_COPY_ARB */ + { 40686, 0x000088E4 }, /* GL_STATIC_DRAW */ + { 40701, 0x000088E4 }, /* GL_STATIC_DRAW_ARB */ + { 40720, 0x000088E5 }, /* GL_STATIC_READ */ + { 40735, 0x000088E5 }, /* GL_STATIC_READ_ARB */ + { 40754, 0x00001802 }, /* GL_STENCIL */ + { 40765, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT */ + { 40787, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_EXT */ + { 40813, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_OES */ + { 40839, 0x00008801 }, /* GL_STENCIL_BACK_FAIL */ + { 40860, 0x00008801 }, /* GL_STENCIL_BACK_FAIL_ATI */ + { 40885, 0x00008800 }, /* GL_STENCIL_BACK_FUNC */ + { 40906, 0x00008800 }, /* GL_STENCIL_BACK_FUNC_ATI */ + { 40931, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ + { 40963, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI */ + { 40999, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ + { 41031, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI */ + { 41067, 0x00008CA3 }, /* GL_STENCIL_BACK_REF */ + { 41087, 0x00008CA4 }, /* GL_STENCIL_BACK_VALUE_MASK */ + { 41114, 0x00008CA5 }, /* GL_STENCIL_BACK_WRITEMASK */ + { 41140, 0x00000D57 }, /* GL_STENCIL_BITS */ + { 41156, 0x00008224 }, /* GL_STENCIL_BUFFER */ + { 41174, 0x00000400 }, /* GL_STENCIL_BUFFER_BIT */ + { 41196, 0x00000B91 }, /* GL_STENCIL_CLEAR_VALUE */ + { 41219, 0x00000B94 }, /* GL_STENCIL_FAIL */ + { 41235, 0x00000B92 }, /* GL_STENCIL_FUNC */ + { 41251, 0x00001901 }, /* GL_STENCIL_INDEX */ + { 41268, 0x00008D46 }, /* GL_STENCIL_INDEX1 */ + { 41286, 0x00008D49 }, /* GL_STENCIL_INDEX16 */ + { 41305, 0x00008D49 }, /* GL_STENCIL_INDEX16_EXT */ + { 41328, 0x00008D46 }, /* GL_STENCIL_INDEX1_EXT */ + { 41350, 0x00008D46 }, /* GL_STENCIL_INDEX1_OES */ + { 41372, 0x00008D47 }, /* GL_STENCIL_INDEX4 */ + { 41390, 0x00008D47 }, /* GL_STENCIL_INDEX4_EXT */ + { 41412, 0x00008D47 }, /* GL_STENCIL_INDEX4_OES */ + { 41434, 0x00008D48 }, /* GL_STENCIL_INDEX8 */ + { 41452, 0x00008D48 }, /* GL_STENCIL_INDEX8_EXT */ + { 41474, 0x00008D48 }, /* GL_STENCIL_INDEX8_OES */ + { 41496, 0x00008D45 }, /* GL_STENCIL_INDEX_EXT */ + { 41517, 0x00000B95 }, /* GL_STENCIL_PASS_DEPTH_FAIL */ + { 41544, 0x00000B96 }, /* GL_STENCIL_PASS_DEPTH_PASS */ + { 41571, 0x00000B97 }, /* GL_STENCIL_REF */ + { 41586, 0x00000B90 }, /* GL_STENCIL_TEST */ + { 41602, 0x00008910 }, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ + { 41631, 0x00000B93 }, /* GL_STENCIL_VALUE_MASK */ + { 41653, 0x00000B98 }, /* GL_STENCIL_WRITEMASK */ + { 41674, 0x00000C33 }, /* GL_STEREO */ + { 41684, 0x000085BE }, /* GL_STORAGE_CACHED_APPLE */ + { 41708, 0x000085BD }, /* GL_STORAGE_PRIVATE_APPLE */ + { 41733, 0x000085BF }, /* GL_STORAGE_SHARED_APPLE */ + { 41757, 0x000088E2 }, /* GL_STREAM_COPY */ + { 41772, 0x000088E2 }, /* GL_STREAM_COPY_ARB */ + { 41791, 0x000088E0 }, /* GL_STREAM_DRAW */ + { 41806, 0x000088E0 }, /* GL_STREAM_DRAW_ARB */ + { 41825, 0x000088E1 }, /* GL_STREAM_READ */ + { 41840, 0x000088E1 }, /* GL_STREAM_READ_ARB */ + { 41859, 0x00000D50 }, /* GL_SUBPIXEL_BITS */ + { 41876, 0x000084E7 }, /* GL_SUBTRACT */ + { 41888, 0x000084E7 }, /* GL_SUBTRACT_ARB */ + { 41904, 0x00009113 }, /* GL_SYNC_CONDITION */ + { 41922, 0x00009116 }, /* GL_SYNC_FENCE */ + { 41936, 0x00009115 }, /* GL_SYNC_FLAGS */ + { 41950, 0x00000001 }, /* GL_SYNC_FLUSH_COMMANDS_BIT */ + { 41977, 0x00009117 }, /* GL_SYNC_GPU_COMMANDS_COMPLETE */ + { 42007, 0x00009114 }, /* GL_SYNC_STATUS */ + { 42022, 0x00002001 }, /* GL_T */ + { 42027, 0x00002A2A }, /* GL_T2F_C3F_V3F */ + { 42042, 0x00002A2C }, /* GL_T2F_C4F_N3F_V3F */ + { 42061, 0x00002A29 }, /* GL_T2F_C4UB_V3F */ + { 42077, 0x00002A2B }, /* GL_T2F_N3F_V3F */ + { 42092, 0x00002A27 }, /* GL_T2F_V3F */ + { 42103, 0x00002A2D }, /* GL_T4F_C4F_N3F_V4F */ + { 42122, 0x00002A28 }, /* GL_T4F_V4F */ + { 42133, 0x00008031 }, /* GL_TABLE_TOO_LARGE_EXT */ + { 42156, 0x00001702 }, /* GL_TEXTURE */ + { 42167, 0x000084C0 }, /* GL_TEXTURE0 */ + { 42179, 0x000084C0 }, /* GL_TEXTURE0_ARB */ + { 42195, 0x000084C1 }, /* GL_TEXTURE1 */ + { 42207, 0x000084CA }, /* GL_TEXTURE10 */ + { 42220, 0x000084CA }, /* GL_TEXTURE10_ARB */ + { 42237, 0x000084CB }, /* GL_TEXTURE11 */ + { 42250, 0x000084CB }, /* GL_TEXTURE11_ARB */ + { 42267, 0x000084CC }, /* GL_TEXTURE12 */ + { 42280, 0x000084CC }, /* GL_TEXTURE12_ARB */ + { 42297, 0x000084CD }, /* GL_TEXTURE13 */ + { 42310, 0x000084CD }, /* GL_TEXTURE13_ARB */ + { 42327, 0x000084CE }, /* GL_TEXTURE14 */ + { 42340, 0x000084CE }, /* GL_TEXTURE14_ARB */ + { 42357, 0x000084CF }, /* GL_TEXTURE15 */ + { 42370, 0x000084CF }, /* GL_TEXTURE15_ARB */ + { 42387, 0x000084D0 }, /* GL_TEXTURE16 */ + { 42400, 0x000084D0 }, /* GL_TEXTURE16_ARB */ + { 42417, 0x000084D1 }, /* GL_TEXTURE17 */ + { 42430, 0x000084D1 }, /* GL_TEXTURE17_ARB */ + { 42447, 0x000084D2 }, /* GL_TEXTURE18 */ + { 42460, 0x000084D2 }, /* GL_TEXTURE18_ARB */ + { 42477, 0x000084D3 }, /* GL_TEXTURE19 */ + { 42490, 0x000084D3 }, /* GL_TEXTURE19_ARB */ + { 42507, 0x000084C1 }, /* GL_TEXTURE1_ARB */ + { 42523, 0x000084C2 }, /* GL_TEXTURE2 */ + { 42535, 0x000084D4 }, /* GL_TEXTURE20 */ + { 42548, 0x000084D4 }, /* GL_TEXTURE20_ARB */ + { 42565, 0x000084D5 }, /* GL_TEXTURE21 */ + { 42578, 0x000084D5 }, /* GL_TEXTURE21_ARB */ + { 42595, 0x000084D6 }, /* GL_TEXTURE22 */ + { 42608, 0x000084D6 }, /* GL_TEXTURE22_ARB */ + { 42625, 0x000084D7 }, /* GL_TEXTURE23 */ + { 42638, 0x000084D7 }, /* GL_TEXTURE23_ARB */ + { 42655, 0x000084D8 }, /* GL_TEXTURE24 */ + { 42668, 0x000084D8 }, /* GL_TEXTURE24_ARB */ + { 42685, 0x000084D9 }, /* GL_TEXTURE25 */ + { 42698, 0x000084D9 }, /* GL_TEXTURE25_ARB */ + { 42715, 0x000084DA }, /* GL_TEXTURE26 */ + { 42728, 0x000084DA }, /* GL_TEXTURE26_ARB */ + { 42745, 0x000084DB }, /* GL_TEXTURE27 */ + { 42758, 0x000084DB }, /* GL_TEXTURE27_ARB */ + { 42775, 0x000084DC }, /* GL_TEXTURE28 */ + { 42788, 0x000084DC }, /* GL_TEXTURE28_ARB */ + { 42805, 0x000084DD }, /* GL_TEXTURE29 */ + { 42818, 0x000084DD }, /* GL_TEXTURE29_ARB */ + { 42835, 0x000084C2 }, /* GL_TEXTURE2_ARB */ + { 42851, 0x000084C3 }, /* GL_TEXTURE3 */ + { 42863, 0x000084DE }, /* GL_TEXTURE30 */ + { 42876, 0x000084DE }, /* GL_TEXTURE30_ARB */ + { 42893, 0x000084DF }, /* GL_TEXTURE31 */ + { 42906, 0x000084DF }, /* GL_TEXTURE31_ARB */ + { 42923, 0x000084C3 }, /* GL_TEXTURE3_ARB */ + { 42939, 0x000084C4 }, /* GL_TEXTURE4 */ + { 42951, 0x000084C4 }, /* GL_TEXTURE4_ARB */ + { 42967, 0x000084C5 }, /* GL_TEXTURE5 */ + { 42979, 0x000084C5 }, /* GL_TEXTURE5_ARB */ + { 42995, 0x000084C6 }, /* GL_TEXTURE6 */ + { 43007, 0x000084C6 }, /* GL_TEXTURE6_ARB */ + { 43023, 0x000084C7 }, /* GL_TEXTURE7 */ + { 43035, 0x000084C7 }, /* GL_TEXTURE7_ARB */ + { 43051, 0x000084C8 }, /* GL_TEXTURE8 */ + { 43063, 0x000084C8 }, /* GL_TEXTURE8_ARB */ + { 43079, 0x000084C9 }, /* GL_TEXTURE9 */ + { 43091, 0x000084C9 }, /* GL_TEXTURE9_ARB */ + { 43107, 0x00000DE0 }, /* GL_TEXTURE_1D */ + { 43121, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY */ + { 43141, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY_EXT */ + { 43165, 0x00000DE1 }, /* GL_TEXTURE_2D */ + { 43179, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY */ + { 43199, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY_EXT */ + { 43223, 0x0000806F }, /* GL_TEXTURE_3D */ + { 43237, 0x0000806F }, /* GL_TEXTURE_3D_OES */ + { 43255, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE */ + { 43277, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE_EXT */ + { 43303, 0x0000813C }, /* GL_TEXTURE_BASE_LEVEL */ + { 43325, 0x00008068 }, /* GL_TEXTURE_BINDING_1D */ + { 43347, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY */ + { 43375, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY_EXT */ + { 43407, 0x00008069 }, /* GL_TEXTURE_BINDING_2D */ + { 43429, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY */ + { 43457, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY_EXT */ + { 43489, 0x0000806A }, /* GL_TEXTURE_BINDING_3D */ + { 43511, 0x0000806A }, /* GL_TEXTURE_BINDING_3D_OES */ + { 43537, 0x00008C2C }, /* GL_TEXTURE_BINDING_BUFFER */ + { 43563, 0x00008C2C }, /* GL_TEXTURE_BINDING_BUFFER_ARB */ + { 43593, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP */ + { 43621, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_ARB */ + { 43653, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_OES */ + { 43685, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE */ + { 43714, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_ARB */ + { 43747, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_NV */ + { 43779, 0x00040000 }, /* GL_TEXTURE_BIT */ + { 43794, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE */ + { 43815, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE_EXT */ + { 43840, 0x00001005 }, /* GL_TEXTURE_BORDER */ + { 43858, 0x00001004 }, /* GL_TEXTURE_BORDER_COLOR */ + { 43882, 0x00008C2A }, /* GL_TEXTURE_BUFFER */ + { 43900, 0x00008C2A }, /* GL_TEXTURE_BUFFER_ARB */ + { 43922, 0x00008C2D }, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING */ + { 43959, 0x00008C2D }, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB */ + { 44000, 0x00008C2E }, /* GL_TEXTURE_BUFFER_FORMAT */ + { 44025, 0x00008C2E }, /* GL_TEXTURE_BUFFER_FORMAT_ARB */ + { 44054, 0x00008171 }, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ + { 44085, 0x00008176 }, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ + { 44115, 0x00008172 }, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ + { 44145, 0x00008175 }, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ + { 44180, 0x00008173 }, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ + { 44211, 0x00008174 }, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ + { 44249, 0x000080BC }, /* GL_TEXTURE_COLOR_TABLE_SGI */ + { 44276, 0x000081EF }, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ + { 44308, 0x000080BF }, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */ + { 44342, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC */ + { 44366, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC_ARB */ + { 44394, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE */ + { 44418, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE_ARB */ + { 44446, 0x0000819B }, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ + { 44479, 0x0000819A }, /* GL_TEXTURE_COMPARE_SGIX */ + { 44503, 0x00001003 }, /* GL_TEXTURE_COMPONENTS */ + { 44525, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED */ + { 44547, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED_ARB */ + { 44573, 0x000086A3 }, /* GL_TEXTURE_COMPRESSED_FORMATS_ARB */ + { 44607, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ + { 44640, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB */ + { 44677, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT */ + { 44705, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT_ARB */ + { 44737, 0x00008078 }, /* GL_TEXTURE_COORD_ARRAY */ + { 44760, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ + { 44798, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB */ + { 44840, 0x00008092 }, /* GL_TEXTURE_COORD_ARRAY_POINTER */ + { 44871, 0x00008088 }, /* GL_TEXTURE_COORD_ARRAY_SIZE */ + { 44899, 0x0000808A }, /* GL_TEXTURE_COORD_ARRAY_STRIDE */ + { 44929, 0x00008089 }, /* GL_TEXTURE_COORD_ARRAY_TYPE */ + { 44957, 0x00008B9D }, /* GL_TEXTURE_CROP_RECT_OES */ + { 44982, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP */ + { 45002, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_ARB */ + { 45026, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ + { 45057, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB */ + { 45092, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES */ + { 45127, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ + { 45158, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB */ + { 45193, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES */ + { 45228, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ + { 45259, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB */ + { 45294, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES */ + { 45329, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_OES */ + { 45353, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ + { 45384, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB */ + { 45419, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES */ + { 45454, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ + { 45485, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB */ + { 45520, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES */ + { 45555, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ + { 45586, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB */ + { 45621, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES */ + { 45656, 0x000088F4 }, /* GL_TEXTURE_CUBE_MAP_SEAMLESS */ + { 45685, 0x00008071 }, /* GL_TEXTURE_DEPTH */ + { 45702, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE */ + { 45724, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE_ARB */ + { 45750, 0x00002300 }, /* GL_TEXTURE_ENV */ + { 45765, 0x00002201 }, /* GL_TEXTURE_ENV_COLOR */ + { 45786, 0x00002200 }, /* GL_TEXTURE_ENV_MODE */ + { 45806, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL */ + { 45832, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL_EXT */ + { 45862, 0x00002500 }, /* GL_TEXTURE_GEN_MODE */ + { 45882, 0x00002500 }, /* GL_TEXTURE_GEN_MODE_OES */ + { 45906, 0x00000C63 }, /* GL_TEXTURE_GEN_Q */ + { 45923, 0x00000C62 }, /* GL_TEXTURE_GEN_R */ + { 45940, 0x00000C60 }, /* GL_TEXTURE_GEN_S */ + { 45957, 0x00008D60 }, /* GL_TEXTURE_GEN_STR_OES */ + { 45980, 0x00000C61 }, /* GL_TEXTURE_GEN_T */ + { 45997, 0x0000819D }, /* GL_TEXTURE_GEQUAL_R_SGIX */ + { 46022, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE */ + { 46044, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE_EXT */ + { 46070, 0x00001001 }, /* GL_TEXTURE_HEIGHT */ + { 46088, 0x000080ED }, /* GL_TEXTURE_INDEX_SIZE_EXT */ + { 46114, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE */ + { 46140, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE_EXT */ + { 46170, 0x00001003 }, /* GL_TEXTURE_INTERNAL_FORMAT */ + { 46197, 0x0000819C }, /* GL_TEXTURE_LEQUAL_R_SGIX */ + { 46222, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS */ + { 46242, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS_EXT */ + { 46266, 0x00008190 }, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ + { 46293, 0x0000818E }, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ + { 46320, 0x0000818F }, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ + { 46347, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE */ + { 46373, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE_EXT */ + { 46403, 0x00002800 }, /* GL_TEXTURE_MAG_FILTER */ + { 46425, 0x00000BA8 }, /* GL_TEXTURE_MATRIX */ + { 46443, 0x0000898F }, /* GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES */ + { 46483, 0x000084FE }, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ + { 46513, 0x0000836B }, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ + { 46541, 0x00008369 }, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ + { 46569, 0x0000836A }, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ + { 46597, 0x0000813D }, /* GL_TEXTURE_MAX_LEVEL */ + { 46618, 0x0000813B }, /* GL_TEXTURE_MAX_LOD */ + { 46637, 0x00002801 }, /* GL_TEXTURE_MIN_FILTER */ + { 46659, 0x0000813A }, /* GL_TEXTURE_MIN_LOD */ + { 46678, 0x00008066 }, /* GL_TEXTURE_PRIORITY */ + { 46698, 0x000085B7 }, /* GL_TEXTURE_RANGE_LENGTH_APPLE */ + { 46728, 0x000085B8 }, /* GL_TEXTURE_RANGE_POINTER_APPLE */ + { 46759, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE */ + { 46780, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_ARB */ + { 46805, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_NV */ + { 46829, 0x0000805C }, /* GL_TEXTURE_RED_SIZE */ + { 46849, 0x0000805C }, /* GL_TEXTURE_RED_SIZE_EXT */ + { 46873, 0x00008067 }, /* GL_TEXTURE_RESIDENT */ + { 46893, 0x00008C3F }, /* GL_TEXTURE_SHARED_SIZE */ + { 46916, 0x00000BA5 }, /* GL_TEXTURE_STACK_DEPTH */ + { 46939, 0x000088F1 }, /* GL_TEXTURE_STENCIL_SIZE */ + { 46963, 0x000088F1 }, /* GL_TEXTURE_STENCIL_SIZE_EXT */ + { 46991, 0x000085BC }, /* GL_TEXTURE_STORAGE_HINT_APPLE */ + { 47021, 0x00008065 }, /* GL_TEXTURE_TOO_LARGE_EXT */ + { 47046, 0x0000888F }, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */ + { 47080, 0x00001000 }, /* GL_TEXTURE_WIDTH */ + { 47097, 0x00008072 }, /* GL_TEXTURE_WRAP_R */ + { 47115, 0x00008072 }, /* GL_TEXTURE_WRAP_R_OES */ + { 47137, 0x00002802 }, /* GL_TEXTURE_WRAP_S */ + { 47155, 0x00002803 }, /* GL_TEXTURE_WRAP_T */ + { 47173, 0x0000911B }, /* GL_TIMEOUT_EXPIRED */ + { 47192, 0x000088BF }, /* GL_TIME_ELAPSED_EXT */ + { 47212, 0x00008648 }, /* GL_TRACK_MATRIX_NV */ + { 47231, 0x00008649 }, /* GL_TRACK_MATRIX_TRANSFORM_NV */ + { 47260, 0x00001000 }, /* GL_TRANSFORM_BIT */ + { 47277, 0x00008E22 }, /* GL_TRANSFORM_FEEDBACK */ + { 47299, 0x00008E25 }, /* GL_TRANSFORM_FEEDBACK_BINDING */ + { 47329, 0x00008C8E }, /* GL_TRANSFORM_FEEDBACK_BUFFER */ + { 47358, 0x00008E24 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE */ + { 47394, 0x00008C8F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING */ + { 47431, 0x00008C8F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT */ + { 47472, 0x00008C8E }, /* GL_TRANSFORM_FEEDBACK_BUFFER_EXT */ + { 47505, 0x00008C7F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE */ + { 47539, 0x00008C7F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE_EXT */ + { 47577, 0x00008E23 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED */ + { 47613, 0x00008C85 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE */ + { 47647, 0x00008C85 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT */ + { 47685, 0x00008C84 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_START */ + { 47720, 0x00008C84 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT */ + { 47759, 0x00008C88 }, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN */ + { 47800, 0x00008C88 }, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT */ + { 47845, 0x00008C83 }, /* GL_TRANSFORM_FEEDBACK_VARYINGS */ + { 47876, 0x00008C83 }, /* GL_TRANSFORM_FEEDBACK_VARYINGS_EXT */ + { 47911, 0x00008C76 }, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH */ + { 47952, 0x00008C76 }, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT */ + { 47997, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX */ + { 48023, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX_ARB */ + { 48053, 0x000088B7 }, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ + { 48085, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ + { 48115, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX_ARB */ + { 48149, 0x0000862C }, /* GL_TRANSPOSE_NV */ + { 48165, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX */ + { 48196, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX_ARB */ + { 48231, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX */ + { 48259, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX_ARB */ + { 48291, 0x00000004 }, /* GL_TRIANGLES */ + { 48304, 0x0000000C }, /* GL_TRIANGLES_ADJACENCY */ + { 48327, 0x0000000C }, /* GL_TRIANGLES_ADJACENCY_ARB */ + { 48354, 0x00000006 }, /* GL_TRIANGLE_FAN */ + { 48370, 0x00008615 }, /* GL_TRIANGLE_MESH_SUN */ + { 48391, 0x00000005 }, /* GL_TRIANGLE_STRIP */ + { 48409, 0x0000000D }, /* GL_TRIANGLE_STRIP_ADJACENCY */ + { 48437, 0x0000000D }, /* GL_TRIANGLE_STRIP_ADJACENCY_ARB */ + { 48469, 0x00000001 }, /* GL_TRUE */ + { 48477, 0x00008A1C }, /* GL_UNDEFINED_APPLE */ + { 48496, 0x00008255 }, /* GL_UNKNOWN_CONTEXT_RESET_ARB */ + { 48525, 0x00000CF5 }, /* GL_UNPACK_ALIGNMENT */ + { 48545, 0x0000806E }, /* GL_UNPACK_IMAGE_HEIGHT */ + { 48568, 0x00000CF1 }, /* GL_UNPACK_LSB_FIRST */ + { 48588, 0x00000CF2 }, /* GL_UNPACK_ROW_LENGTH */ + { 48609, 0x0000806D }, /* GL_UNPACK_SKIP_IMAGES */ + { 48631, 0x00000CF4 }, /* GL_UNPACK_SKIP_PIXELS */ + { 48653, 0x00000CF3 }, /* GL_UNPACK_SKIP_ROWS */ + { 48673, 0x00000CF0 }, /* GL_UNPACK_SWAP_BYTES */ + { 48694, 0x00009118 }, /* GL_UNSIGNALED */ + { 48708, 0x00001401 }, /* GL_UNSIGNED_BYTE */ + { 48725, 0x00008362 }, /* GL_UNSIGNED_BYTE_2_3_3_REV */ + { 48752, 0x00008032 }, /* GL_UNSIGNED_BYTE_3_3_2 */ + { 48775, 0x00001405 }, /* GL_UNSIGNED_INT */ + { 48791, 0x00008C3B }, /* GL_UNSIGNED_INT_10F_11F_11F_REV */ + { 48823, 0x00008036 }, /* GL_UNSIGNED_INT_10_10_10_2 */ + { 48850, 0x00008DF6 }, /* GL_UNSIGNED_INT_10_10_10_2_OES */ + { 48881, 0x000084FA }, /* GL_UNSIGNED_INT_24_8 */ + { 48902, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_EXT */ + { 48927, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_NV */ + { 48951, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_OES */ + { 48976, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV */ + { 49007, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV_EXT */ + { 49042, 0x00008C3E }, /* GL_UNSIGNED_INT_5_9_9_9_REV */ + { 49070, 0x00008035 }, /* GL_UNSIGNED_INT_8_8_8_8 */ + { 49094, 0x00008367 }, /* GL_UNSIGNED_INT_8_8_8_8_REV */ + { 49122, 0x00008DD1 }, /* GL_UNSIGNED_INT_SAMPLER_1D */ + { 49149, 0x00008DD6 }, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY */ + { 49182, 0x00008DD6 }, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT */ + { 49219, 0x00008DD1 }, /* GL_UNSIGNED_INT_SAMPLER_1D_EXT */ + { 49250, 0x00008DD2 }, /* GL_UNSIGNED_INT_SAMPLER_2D */ + { 49277, 0x00008DD7 }, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY */ + { 49310, 0x00008DD7 }, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT */ + { 49347, 0x00008DD2 }, /* GL_UNSIGNED_INT_SAMPLER_2D_EXT */ + { 49378, 0x00008DD5 }, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT */ + { 49410, 0x00008DD5 }, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT */ + { 49446, 0x00008DD3 }, /* GL_UNSIGNED_INT_SAMPLER_3D */ + { 49473, 0x00008DD3 }, /* GL_UNSIGNED_INT_SAMPLER_3D_EXT */ + { 49504, 0x00008DD8 }, /* GL_UNSIGNED_INT_SAMPLER_BUFFER */ + { 49535, 0x00008DD8 }, /* GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT */ + { 49570, 0x00008DD4 }, /* GL_UNSIGNED_INT_SAMPLER_CUBE */ + { 49599, 0x00008DD4 }, /* GL_UNSIGNED_INT_SAMPLER_CUBE_EXT */ + { 49632, 0x00008DC6 }, /* GL_UNSIGNED_INT_VEC2 */ + { 49653, 0x00008DC6 }, /* GL_UNSIGNED_INT_VEC2_EXT */ + { 49678, 0x00008DC7 }, /* GL_UNSIGNED_INT_VEC3 */ + { 49699, 0x00008DC7 }, /* GL_UNSIGNED_INT_VEC3_EXT */ + { 49724, 0x00008DC8 }, /* GL_UNSIGNED_INT_VEC4 */ + { 49745, 0x00008DC8 }, /* GL_UNSIGNED_INT_VEC4_EXT */ + { 49770, 0x00008C17 }, /* GL_UNSIGNED_NORMALIZED */ + { 49793, 0x00001403 }, /* GL_UNSIGNED_SHORT */ + { 49811, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ + { 49841, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT */ + { 49875, 0x00008033 }, /* GL_UNSIGNED_SHORT_4_4_4_4 */ + { 49901, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ + { 49931, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT */ + { 49965, 0x00008034 }, /* GL_UNSIGNED_SHORT_5_5_5_1 */ + { 49991, 0x00008363 }, /* GL_UNSIGNED_SHORT_5_6_5 */ + { 50015, 0x00008364 }, /* GL_UNSIGNED_SHORT_5_6_5_REV */ + { 50043, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_APPLE */ + { 50071, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_MESA */ + { 50098, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ + { 50130, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_MESA */ + { 50161, 0x00008CA2 }, /* GL_UPPER_LEFT */ + { 50175, 0x00002A20 }, /* GL_V2F */ + { 50182, 0x00002A21 }, /* GL_V3F */ + { 50189, 0x00008B83 }, /* GL_VALIDATE_STATUS */ + { 50208, 0x00001F00 }, /* GL_VENDOR */ + { 50218, 0x00001F02 }, /* GL_VERSION */ + { 50229, 0x00008074 }, /* GL_VERTEX_ARRAY */ + { 50245, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING */ + { 50269, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING_APPLE */ + { 50299, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ + { 50330, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING_ARB */ + { 50365, 0x0000808E }, /* GL_VERTEX_ARRAY_POINTER */ + { 50389, 0x0000807A }, /* GL_VERTEX_ARRAY_SIZE */ + { 50410, 0x0000807C }, /* GL_VERTEX_ARRAY_STRIDE */ + { 50433, 0x0000807B }, /* GL_VERTEX_ARRAY_TYPE */ + { 50454, 0x00008650 }, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ + { 50481, 0x0000865A }, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ + { 50509, 0x0000865B }, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ + { 50537, 0x0000865C }, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ + { 50565, 0x0000865D }, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ + { 50593, 0x0000865E }, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ + { 50621, 0x0000865F }, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ + { 50649, 0x00008651 }, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ + { 50676, 0x00008652 }, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ + { 50703, 0x00008653 }, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ + { 50730, 0x00008654 }, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ + { 50757, 0x00008655 }, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ + { 50784, 0x00008656 }, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ + { 50811, 0x00008657 }, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ + { 50838, 0x00008658 }, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ + { 50865, 0x00008659 }, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ + { 50892, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ + { 50930, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB */ + { 50972, 0x000088FE }, /* GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB */ + { 51007, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ + { 51038, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB */ + { 51073, 0x000088FD }, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER */ + { 51104, 0x000088FD }, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT */ + { 51139, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ + { 51173, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB */ + { 51211, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ + { 51242, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB */ + { 51277, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ + { 51305, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB */ + { 51337, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ + { 51367, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB */ + { 51401, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ + { 51429, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB */ + { 51461, 0x000086A7 }, /* GL_VERTEX_BLEND_ARB */ + { 51481, 0x00008620 }, /* GL_VERTEX_PROGRAM_ARB */ + { 51503, 0x0000864A }, /* GL_VERTEX_PROGRAM_BINDING_NV */ + { 51532, 0x00008620 }, /* GL_VERTEX_PROGRAM_NV */ + { 51553, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE */ + { 51582, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_ARB */ + { 51615, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_NV */ + { 51647, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE */ + { 51674, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_ARB */ + { 51705, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_NV */ + { 51735, 0x00008B31 }, /* GL_VERTEX_SHADER */ + { 51752, 0x00008B31 }, /* GL_VERTEX_SHADER_ARB */ + { 51773, 0x00008621 }, /* GL_VERTEX_STATE_PROGRAM_NV */ + { 51800, 0x00000BA2 }, /* GL_VIEWPORT */ + { 51812, 0x00000800 }, /* GL_VIEWPORT_BIT */ + { 51828, 0x00008A1A }, /* GL_VOLATILE_APPLE */ + { 51846, 0x0000911D }, /* GL_WAIT_FAILED */ + { 51861, 0x000086AD }, /* GL_WEIGHT_ARRAY_ARB */ + { 51881, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ + { 51912, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB */ + { 51947, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_OES */ + { 51982, 0x000086AD }, /* GL_WEIGHT_ARRAY_OES */ + { 52002, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_ARB */ + { 52030, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_OES */ + { 52058, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_ARB */ + { 52083, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_OES */ + { 52108, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ + { 52135, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_OES */ + { 52162, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_ARB */ + { 52187, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_OES */ + { 52212, 0x000086A6 }, /* GL_WEIGHT_SUM_UNITY_ARB */ + { 52236, 0x000081D4 }, /* GL_WRAP_BORDER_SUN */ + { 52255, 0x000088B9 }, /* GL_WRITE_ONLY */ + { 52269, 0x000088B9 }, /* GL_WRITE_ONLY_ARB */ + { 52287, 0x000088B9 }, /* GL_WRITE_ONLY_OES */ + { 52305, 0x00001506 }, /* GL_XOR */ + { 52312, 0x000085B9 }, /* GL_YCBCR_422_APPLE */ + { 52331, 0x00008757 }, /* GL_YCBCR_MESA */ + { 52345, 0x00000000 }, /* GL_ZERO */ + { 52353, 0x00000D16 }, /* GL_ZOOM_X */ + { 52363, 0x00000D17 }, /* GL_ZOOM_Y */ }; static const unsigned reduced_enums[1564] = { - 539, /* GL_FALSE */ - 835, /* GL_LINES */ - 839, /* GL_LINE_LOOP */ - 846, /* GL_LINE_STRIP */ - 2157, /* GL_TRIANGLES */ - 2162, /* GL_TRIANGLE_STRIP */ - 2160, /* GL_TRIANGLE_FAN */ - 1522, /* GL_QUADS */ - 1526, /* GL_QUAD_STRIP */ - 1390, /* GL_POLYGON */ - 836, /* GL_LINES_ADJACENCY */ - 847, /* GL_LINE_STRIP_ADJACENCY */ - 2158, /* GL_TRIANGLES_ADJACENCY */ - 2163, /* GL_TRIANGLE_STRIP_ADJACENCY */ - 1402, /* GL_POLYGON_STIPPLE_BIT */ - 1345, /* GL_PIXEL_MODE_BIT */ - 822, /* GL_LIGHTING_BIT */ - 573, /* GL_FOG_BIT */ + 555, /* GL_FALSE */ + 851, /* GL_LINES */ + 855, /* GL_LINE_LOOP */ + 862, /* GL_LINE_STRIP */ + 2174, /* GL_TRIANGLES */ + 2179, /* GL_TRIANGLE_STRIP */ + 2177, /* GL_TRIANGLE_FAN */ + 1539, /* GL_QUADS */ + 1543, /* GL_QUAD_STRIP */ + 1407, /* GL_POLYGON */ + 852, /* GL_LINES_ADJACENCY */ + 863, /* GL_LINE_STRIP_ADJACENCY */ + 2175, /* GL_TRIANGLES_ADJACENCY */ + 2180, /* GL_TRIANGLE_STRIP_ADJACENCY */ + 1419, /* GL_POLYGON_STIPPLE_BIT */ + 1362, /* GL_PIXEL_MODE_BIT */ + 838, /* GL_LIGHTING_BIT */ + 589, /* GL_FOG_BIT */ 8, /* GL_ACCUM */ - 858, /* GL_LOAD */ - 1612, /* GL_RETURN */ - 1210, /* GL_MULT */ + 874, /* GL_LOAD */ + 1629, /* GL_RETURN */ + 1227, /* GL_MULT */ 24, /* GL_ADD */ - 1226, /* GL_NEVER */ - 812, /* GL_LESS */ - 529, /* GL_EQUAL */ - 811, /* GL_LEQUAL */ - 696, /* GL_GREATER */ - 1243, /* GL_NOTEQUAL */ - 695, /* GL_GEQUAL */ + 1243, /* GL_NEVER */ + 828, /* GL_LESS */ + 545, /* GL_EQUAL */ + 827, /* GL_LEQUAL */ + 712, /* GL_GREATER */ + 1260, /* GL_NOTEQUAL */ + 711, /* GL_GEQUAL */ 55, /* GL_ALWAYS */ - 1821, /* GL_SRC_COLOR */ - 1278, /* GL_ONE_MINUS_SRC_COLOR */ - 1819, /* GL_SRC_ALPHA */ - 1277, /* GL_ONE_MINUS_SRC_ALPHA */ - 508, /* GL_DST_ALPHA */ - 1275, /* GL_ONE_MINUS_DST_ALPHA */ - 509, /* GL_DST_COLOR */ - 1276, /* GL_ONE_MINUS_DST_COLOR */ - 1820, /* GL_SRC_ALPHA_SATURATE */ - 672, /* GL_FRONT_LEFT */ - 673, /* GL_FRONT_RIGHT */ + 1838, /* GL_SRC_COLOR */ + 1295, /* GL_ONE_MINUS_SRC_COLOR */ + 1836, /* GL_SRC_ALPHA */ + 1294, /* GL_ONE_MINUS_SRC_ALPHA */ + 524, /* GL_DST_ALPHA */ + 1292, /* GL_ONE_MINUS_DST_ALPHA */ + 525, /* GL_DST_COLOR */ + 1293, /* GL_ONE_MINUS_DST_COLOR */ + 1837, /* GL_SRC_ALPHA_SATURATE */ + 688, /* GL_FRONT_LEFT */ + 689, /* GL_FRONT_RIGHT */ 77, /* GL_BACK_LEFT */ 78, /* GL_BACK_RIGHT */ - 669, /* GL_FRONT */ + 685, /* GL_FRONT */ 76, /* GL_BACK */ - 810, /* GL_LEFT */ - 1702, /* GL_RIGHT */ - 670, /* GL_FRONT_AND_BACK */ + 826, /* GL_LEFT */ + 1719, /* GL_RIGHT */ + 686, /* GL_FRONT_AND_BACK */ 71, /* GL_AUX0 */ 72, /* GL_AUX1 */ 73, /* GL_AUX2 */ 74, /* GL_AUX3 */ - 798, /* GL_INVALID_ENUM */ - 803, /* GL_INVALID_VALUE */ - 802, /* GL_INVALID_OPERATION */ - 1826, /* GL_STACK_OVERFLOW */ - 1827, /* GL_STACK_UNDERFLOW */ - 1303, /* GL_OUT_OF_MEMORY */ - 799, /* GL_INVALID_FRAMEBUFFER_OPERATION */ + 814, /* GL_INVALID_ENUM */ + 819, /* GL_INVALID_VALUE */ + 818, /* GL_INVALID_OPERATION */ + 1843, /* GL_STACK_OVERFLOW */ + 1844, /* GL_STACK_UNDERFLOW */ + 1320, /* GL_OUT_OF_MEMORY */ + 815, /* GL_INVALID_FRAMEBUFFER_OPERATION */ 0, /* GL_2D */ 2, /* GL_3D */ 3, /* GL_3D_COLOR */ 4, /* GL_3D_COLOR_TEXTURE */ 6, /* GL_4D_COLOR_TEXTURE */ - 1323, /* GL_PASS_THROUGH_TOKEN */ - 1389, /* GL_POINT_TOKEN */ - 849, /* GL_LINE_TOKEN */ - 1403, /* GL_POLYGON_TOKEN */ + 1340, /* GL_PASS_THROUGH_TOKEN */ + 1406, /* GL_POINT_TOKEN */ + 865, /* GL_LINE_TOKEN */ + 1420, /* GL_POLYGON_TOKEN */ 87, /* GL_BITMAP_TOKEN */ - 507, /* GL_DRAW_PIXEL_TOKEN */ + 523, /* GL_DRAW_PIXEL_TOKEN */ 353, /* GL_COPY_PIXEL_TOKEN */ - 840, /* GL_LINE_RESET_TOKEN */ - 532, /* GL_EXP */ - 533, /* GL_EXP2 */ + 856, /* GL_LINE_RESET_TOKEN */ + 548, /* GL_EXP */ + 549, /* GL_EXP2 */ 390, /* GL_CW */ 154, /* GL_CCW */ 187, /* GL_COEFF */ - 1300, /* GL_ORDER */ + 1317, /* GL_ORDER */ 444, /* GL_DOMAIN */ 363, /* GL_CURRENT_COLOR */ 366, /* GL_CURRENT_INDEX */ @@ -4771,67 +4805,67 @@ static const unsigned reduced_enums[1564] = 381, /* GL_CURRENT_RASTER_POSITION */ 382, /* GL_CURRENT_RASTER_POSITION_VALID */ 379, /* GL_CURRENT_RASTER_DISTANCE */ - 1381, /* GL_POINT_SMOOTH */ - 1365, /* GL_POINT_SIZE */ - 1380, /* GL_POINT_SIZE_RANGE */ - 1371, /* GL_POINT_SIZE_GRANULARITY */ - 841, /* GL_LINE_SMOOTH */ - 850, /* GL_LINE_WIDTH */ - 852, /* GL_LINE_WIDTH_RANGE */ - 851, /* GL_LINE_WIDTH_GRANULARITY */ - 843, /* GL_LINE_STIPPLE */ - 844, /* GL_LINE_STIPPLE_PATTERN */ - 845, /* GL_LINE_STIPPLE_REPEAT */ - 857, /* GL_LIST_MODE */ - 1065, /* GL_MAX_LIST_NESTING */ - 854, /* GL_LIST_BASE */ - 856, /* GL_LIST_INDEX */ - 1392, /* GL_POLYGON_MODE */ - 1399, /* GL_POLYGON_SMOOTH */ - 1401, /* GL_POLYGON_STIPPLE */ - 518, /* GL_EDGE_FLAG */ + 1398, /* GL_POINT_SMOOTH */ + 1382, /* GL_POINT_SIZE */ + 1397, /* GL_POINT_SIZE_RANGE */ + 1388, /* GL_POINT_SIZE_GRANULARITY */ + 857, /* GL_LINE_SMOOTH */ + 866, /* GL_LINE_WIDTH */ + 868, /* GL_LINE_WIDTH_RANGE */ + 867, /* GL_LINE_WIDTH_GRANULARITY */ + 859, /* GL_LINE_STIPPLE */ + 860, /* GL_LINE_STIPPLE_PATTERN */ + 861, /* GL_LINE_STIPPLE_REPEAT */ + 873, /* GL_LIST_MODE */ + 1082, /* GL_MAX_LIST_NESTING */ + 870, /* GL_LIST_BASE */ + 872, /* GL_LIST_INDEX */ + 1409, /* GL_POLYGON_MODE */ + 1416, /* GL_POLYGON_SMOOTH */ + 1418, /* GL_POLYGON_STIPPLE */ + 534, /* GL_EDGE_FLAG */ 356, /* GL_CULL_FACE */ 357, /* GL_CULL_FACE_MODE */ - 671, /* GL_FRONT_FACE */ - 821, /* GL_LIGHTING */ - 826, /* GL_LIGHT_MODEL_LOCAL_VIEWER */ - 827, /* GL_LIGHT_MODEL_TWO_SIDE */ - 823, /* GL_LIGHT_MODEL_AMBIENT */ - 1768, /* GL_SHADE_MODEL */ + 687, /* GL_FRONT_FACE */ + 837, /* GL_LIGHTING */ + 842, /* GL_LIGHT_MODEL_LOCAL_VIEWER */ + 843, /* GL_LIGHT_MODEL_TWO_SIDE */ + 839, /* GL_LIGHT_MODEL_AMBIENT */ + 1785, /* GL_SHADE_MODEL */ 235, /* GL_COLOR_MATERIAL_FACE */ 236, /* GL_COLOR_MATERIAL_PARAMETER */ 234, /* GL_COLOR_MATERIAL */ - 572, /* GL_FOG */ - 594, /* GL_FOG_INDEX */ - 590, /* GL_FOG_DENSITY */ - 598, /* GL_FOG_START */ - 592, /* GL_FOG_END */ - 595, /* GL_FOG_MODE */ - 574, /* GL_FOG_COLOR */ + 588, /* GL_FOG */ + 610, /* GL_FOG_INDEX */ + 606, /* GL_FOG_DENSITY */ + 614, /* GL_FOG_START */ + 608, /* GL_FOG_END */ + 611, /* GL_FOG_MODE */ + 590, /* GL_FOG_COLOR */ 429, /* GL_DEPTH_RANGE */ 438, /* GL_DEPTH_TEST */ 441, /* GL_DEPTH_WRITEMASK */ 414, /* GL_DEPTH_CLEAR_VALUE */ 428, /* GL_DEPTH_FUNC */ 12, /* GL_ACCUM_CLEAR_VALUE */ - 1871, /* GL_STENCIL_TEST */ - 1852, /* GL_STENCIL_CLEAR_VALUE */ - 1854, /* GL_STENCIL_FUNC */ - 1873, /* GL_STENCIL_VALUE_MASK */ - 1853, /* GL_STENCIL_FAIL */ - 1868, /* GL_STENCIL_PASS_DEPTH_FAIL */ - 1869, /* GL_STENCIL_PASS_DEPTH_PASS */ - 1870, /* GL_STENCIL_REF */ - 1874, /* GL_STENCIL_WRITEMASK */ - 1015, /* GL_MATRIX_MODE */ - 1232, /* GL_NORMALIZE */ - 2290, /* GL_VIEWPORT */ - 1205, /* GL_MODELVIEW_STACK_DEPTH */ - 1496, /* GL_PROJECTION_STACK_DEPTH */ - 2111, /* GL_TEXTURE_STACK_DEPTH */ - 1202, /* GL_MODELVIEW_MATRIX */ - 1494, /* GL_PROJECTION_MATRIX */ - 2091, /* GL_TEXTURE_MATRIX */ + 1888, /* GL_STENCIL_TEST */ + 1869, /* GL_STENCIL_CLEAR_VALUE */ + 1871, /* GL_STENCIL_FUNC */ + 1890, /* GL_STENCIL_VALUE_MASK */ + 1870, /* GL_STENCIL_FAIL */ + 1885, /* GL_STENCIL_PASS_DEPTH_FAIL */ + 1886, /* GL_STENCIL_PASS_DEPTH_PASS */ + 1887, /* GL_STENCIL_REF */ + 1891, /* GL_STENCIL_WRITEMASK */ + 1031, /* GL_MATRIX_MODE */ + 1249, /* GL_NORMALIZE */ + 2307, /* GL_VIEWPORT */ + 1222, /* GL_MODELVIEW_STACK_DEPTH */ + 1513, /* GL_PROJECTION_STACK_DEPTH */ + 2128, /* GL_TEXTURE_STACK_DEPTH */ + 1219, /* GL_MODELVIEW_MATRIX */ + 1511, /* GL_PROJECTION_MATRIX */ + 2108, /* GL_TEXTURE_MATRIX */ 69, /* GL_ATTRIB_STACK_DEPTH */ 169, /* GL_CLIENT_ATTRIB_STACK_DEPTH */ 51, /* GL_ALPHA_TEST */ @@ -4841,267 +4875,267 @@ static const unsigned reduced_enums[1564] = 91, /* GL_BLEND_DST */ 105, /* GL_BLEND_SRC */ 88, /* GL_BLEND */ - 860, /* GL_LOGIC_OP_MODE */ - 745, /* GL_INDEX_LOGIC_OP */ + 876, /* GL_LOGIC_OP_MODE */ + 761, /* GL_INDEX_LOGIC_OP */ 233, /* GL_COLOR_LOGIC_OP */ 75, /* GL_AUX_BUFFERS */ 454, /* GL_DRAW_BUFFER */ - 1549, /* GL_READ_BUFFER */ - 1745, /* GL_SCISSOR_BOX */ - 1746, /* GL_SCISSOR_TEST */ - 744, /* GL_INDEX_CLEAR_VALUE */ - 749, /* GL_INDEX_WRITEMASK */ + 1566, /* GL_READ_BUFFER */ + 1762, /* GL_SCISSOR_BOX */ + 1763, /* GL_SCISSOR_TEST */ + 760, /* GL_INDEX_CLEAR_VALUE */ + 765, /* GL_INDEX_WRITEMASK */ 230, /* GL_COLOR_CLEAR_VALUE */ 272, /* GL_COLOR_WRITEMASK */ - 746, /* GL_INDEX_MODE */ - 1691, /* GL_RGBA_MODE */ + 762, /* GL_INDEX_MODE */ + 1708, /* GL_RGBA_MODE */ 453, /* GL_DOUBLEBUFFER */ - 1875, /* GL_STEREO */ - 1603, /* GL_RENDER_MODE */ - 1324, /* GL_PERSPECTIVE_CORRECTION_HINT */ - 1382, /* GL_POINT_SMOOTH_HINT */ - 842, /* GL_LINE_SMOOTH_HINT */ - 1400, /* GL_POLYGON_SMOOTH_HINT */ - 593, /* GL_FOG_HINT */ - 2071, /* GL_TEXTURE_GEN_S */ - 2073, /* GL_TEXTURE_GEN_T */ - 2070, /* GL_TEXTURE_GEN_R */ - 2069, /* GL_TEXTURE_GEN_Q */ - 1337, /* GL_PIXEL_MAP_I_TO_I */ - 1343, /* GL_PIXEL_MAP_S_TO_S */ - 1339, /* GL_PIXEL_MAP_I_TO_R */ - 1335, /* GL_PIXEL_MAP_I_TO_G */ - 1333, /* GL_PIXEL_MAP_I_TO_B */ - 1331, /* GL_PIXEL_MAP_I_TO_A */ - 1341, /* GL_PIXEL_MAP_R_TO_R */ - 1329, /* GL_PIXEL_MAP_G_TO_G */ - 1327, /* GL_PIXEL_MAP_B_TO_B */ - 1325, /* GL_PIXEL_MAP_A_TO_A */ - 1338, /* GL_PIXEL_MAP_I_TO_I_SIZE */ - 1344, /* GL_PIXEL_MAP_S_TO_S_SIZE */ - 1340, /* GL_PIXEL_MAP_I_TO_R_SIZE */ - 1336, /* GL_PIXEL_MAP_I_TO_G_SIZE */ - 1334, /* GL_PIXEL_MAP_I_TO_B_SIZE */ - 1332, /* GL_PIXEL_MAP_I_TO_A_SIZE */ - 1342, /* GL_PIXEL_MAP_R_TO_R_SIZE */ - 1330, /* GL_PIXEL_MAP_G_TO_G_SIZE */ - 1328, /* GL_PIXEL_MAP_B_TO_B_SIZE */ - 1326, /* GL_PIXEL_MAP_A_TO_A_SIZE */ - 2175, /* GL_UNPACK_SWAP_BYTES */ - 2170, /* GL_UNPACK_LSB_FIRST */ - 2171, /* GL_UNPACK_ROW_LENGTH */ - 2174, /* GL_UNPACK_SKIP_ROWS */ - 2173, /* GL_UNPACK_SKIP_PIXELS */ - 2168, /* GL_UNPACK_ALIGNMENT */ - 1312, /* GL_PACK_SWAP_BYTES */ - 1307, /* GL_PACK_LSB_FIRST */ - 1308, /* GL_PACK_ROW_LENGTH */ - 1311, /* GL_PACK_SKIP_ROWS */ - 1310, /* GL_PACK_SKIP_PIXELS */ - 1304, /* GL_PACK_ALIGNMENT */ - 956, /* GL_MAP_COLOR */ - 961, /* GL_MAP_STENCIL */ - 748, /* GL_INDEX_SHIFT */ - 747, /* GL_INDEX_OFFSET */ - 1565, /* GL_RED_SCALE */ - 1561, /* GL_RED_BIAS */ - 2316, /* GL_ZOOM_X */ - 2317, /* GL_ZOOM_Y */ - 702, /* GL_GREEN_SCALE */ - 698, /* GL_GREEN_BIAS */ + 1892, /* GL_STEREO */ + 1620, /* GL_RENDER_MODE */ + 1341, /* GL_PERSPECTIVE_CORRECTION_HINT */ + 1399, /* GL_POINT_SMOOTH_HINT */ + 858, /* GL_LINE_SMOOTH_HINT */ + 1417, /* GL_POLYGON_SMOOTH_HINT */ + 609, /* GL_FOG_HINT */ + 2088, /* GL_TEXTURE_GEN_S */ + 2090, /* GL_TEXTURE_GEN_T */ + 2087, /* GL_TEXTURE_GEN_R */ + 2086, /* GL_TEXTURE_GEN_Q */ + 1354, /* GL_PIXEL_MAP_I_TO_I */ + 1360, /* GL_PIXEL_MAP_S_TO_S */ + 1356, /* GL_PIXEL_MAP_I_TO_R */ + 1352, /* GL_PIXEL_MAP_I_TO_G */ + 1350, /* GL_PIXEL_MAP_I_TO_B */ + 1348, /* GL_PIXEL_MAP_I_TO_A */ + 1358, /* GL_PIXEL_MAP_R_TO_R */ + 1346, /* GL_PIXEL_MAP_G_TO_G */ + 1344, /* GL_PIXEL_MAP_B_TO_B */ + 1342, /* GL_PIXEL_MAP_A_TO_A */ + 1355, /* GL_PIXEL_MAP_I_TO_I_SIZE */ + 1361, /* GL_PIXEL_MAP_S_TO_S_SIZE */ + 1357, /* GL_PIXEL_MAP_I_TO_R_SIZE */ + 1353, /* GL_PIXEL_MAP_I_TO_G_SIZE */ + 1351, /* GL_PIXEL_MAP_I_TO_B_SIZE */ + 1349, /* GL_PIXEL_MAP_I_TO_A_SIZE */ + 1359, /* GL_PIXEL_MAP_R_TO_R_SIZE */ + 1347, /* GL_PIXEL_MAP_G_TO_G_SIZE */ + 1345, /* GL_PIXEL_MAP_B_TO_B_SIZE */ + 1343, /* GL_PIXEL_MAP_A_TO_A_SIZE */ + 2192, /* GL_UNPACK_SWAP_BYTES */ + 2187, /* GL_UNPACK_LSB_FIRST */ + 2188, /* GL_UNPACK_ROW_LENGTH */ + 2191, /* GL_UNPACK_SKIP_ROWS */ + 2190, /* GL_UNPACK_SKIP_PIXELS */ + 2185, /* GL_UNPACK_ALIGNMENT */ + 1329, /* GL_PACK_SWAP_BYTES */ + 1324, /* GL_PACK_LSB_FIRST */ + 1325, /* GL_PACK_ROW_LENGTH */ + 1328, /* GL_PACK_SKIP_ROWS */ + 1327, /* GL_PACK_SKIP_PIXELS */ + 1321, /* GL_PACK_ALIGNMENT */ + 972, /* GL_MAP_COLOR */ + 977, /* GL_MAP_STENCIL */ + 764, /* GL_INDEX_SHIFT */ + 763, /* GL_INDEX_OFFSET */ + 1582, /* GL_RED_SCALE */ + 1578, /* GL_RED_BIAS */ + 2333, /* GL_ZOOM_X */ + 2334, /* GL_ZOOM_Y */ + 718, /* GL_GREEN_SCALE */ + 714, /* GL_GREEN_BIAS */ 115, /* GL_BLUE_SCALE */ 111, /* GL_BLUE_BIAS */ 50, /* GL_ALPHA_SCALE */ 47, /* GL_ALPHA_BIAS */ 430, /* GL_DEPTH_SCALE */ 406, /* GL_DEPTH_BIAS */ - 1047, /* GL_MAX_EVAL_ORDER */ - 1064, /* GL_MAX_LIGHTS */ - 1027, /* GL_MAX_CLIP_DISTANCES */ - 1120, /* GL_MAX_TEXTURE_SIZE */ - 1071, /* GL_MAX_PIXEL_MAP_TABLE */ - 1023, /* GL_MAX_ATTRIB_STACK_DEPTH */ - 1067, /* GL_MAX_MODELVIEW_STACK_DEPTH */ - 1068, /* GL_MAX_NAME_STACK_DEPTH */ - 1099, /* GL_MAX_PROJECTION_STACK_DEPTH */ - 1121, /* GL_MAX_TEXTURE_STACK_DEPTH */ - 1147, /* GL_MAX_VIEWPORT_DIMS */ - 1024, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */ - 1885, /* GL_SUBPIXEL_BITS */ - 743, /* GL_INDEX_BITS */ - 1562, /* GL_RED_BITS */ - 699, /* GL_GREEN_BITS */ + 1064, /* GL_MAX_EVAL_ORDER */ + 1081, /* GL_MAX_LIGHTS */ + 1043, /* GL_MAX_CLIP_DISTANCES */ + 1137, /* GL_MAX_TEXTURE_SIZE */ + 1088, /* GL_MAX_PIXEL_MAP_TABLE */ + 1039, /* GL_MAX_ATTRIB_STACK_DEPTH */ + 1084, /* GL_MAX_MODELVIEW_STACK_DEPTH */ + 1085, /* GL_MAX_NAME_STACK_DEPTH */ + 1116, /* GL_MAX_PROJECTION_STACK_DEPTH */ + 1138, /* GL_MAX_TEXTURE_STACK_DEPTH */ + 1164, /* GL_MAX_VIEWPORT_DIMS */ + 1040, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */ + 1902, /* GL_SUBPIXEL_BITS */ + 759, /* GL_INDEX_BITS */ + 1579, /* GL_RED_BITS */ + 715, /* GL_GREEN_BITS */ 112, /* GL_BLUE_BITS */ 48, /* GL_ALPHA_BITS */ 407, /* GL_DEPTH_BITS */ - 1849, /* GL_STENCIL_BITS */ + 1866, /* GL_STENCIL_BITS */ 14, /* GL_ACCUM_RED_BITS */ 13, /* GL_ACCUM_GREEN_BITS */ 10, /* GL_ACCUM_BLUE_BITS */ 9, /* GL_ACCUM_ALPHA_BITS */ - 1219, /* GL_NAME_STACK_DEPTH */ + 1236, /* GL_NAME_STACK_DEPTH */ 70, /* GL_AUTO_NORMAL */ - 902, /* GL_MAP1_COLOR_4 */ - 905, /* GL_MAP1_INDEX */ - 906, /* GL_MAP1_NORMAL */ - 907, /* GL_MAP1_TEXTURE_COORD_1 */ - 908, /* GL_MAP1_TEXTURE_COORD_2 */ - 909, /* GL_MAP1_TEXTURE_COORD_3 */ - 910, /* GL_MAP1_TEXTURE_COORD_4 */ - 911, /* GL_MAP1_VERTEX_3 */ - 912, /* GL_MAP1_VERTEX_4 */ - 929, /* GL_MAP2_COLOR_4 */ - 932, /* GL_MAP2_INDEX */ - 933, /* GL_MAP2_NORMAL */ - 934, /* GL_MAP2_TEXTURE_COORD_1 */ - 935, /* GL_MAP2_TEXTURE_COORD_2 */ - 936, /* GL_MAP2_TEXTURE_COORD_3 */ - 937, /* GL_MAP2_TEXTURE_COORD_4 */ - 938, /* GL_MAP2_VERTEX_3 */ - 939, /* GL_MAP2_VERTEX_4 */ - 903, /* GL_MAP1_GRID_DOMAIN */ - 904, /* GL_MAP1_GRID_SEGMENTS */ - 930, /* GL_MAP2_GRID_DOMAIN */ - 931, /* GL_MAP2_GRID_SEGMENTS */ - 1968, /* GL_TEXTURE_1D */ - 1971, /* GL_TEXTURE_2D */ - 542, /* GL_FEEDBACK_BUFFER_POINTER */ - 543, /* GL_FEEDBACK_BUFFER_SIZE */ - 544, /* GL_FEEDBACK_BUFFER_TYPE */ - 1755, /* GL_SELECTION_BUFFER_POINTER */ - 1756, /* GL_SELECTION_BUFFER_SIZE */ - 2117, /* GL_TEXTURE_WIDTH */ - 2077, /* GL_TEXTURE_HEIGHT */ - 2021, /* GL_TEXTURE_COMPONENTS */ - 1999, /* GL_TEXTURE_BORDER_COLOR */ - 1998, /* GL_TEXTURE_BORDER */ + 918, /* GL_MAP1_COLOR_4 */ + 921, /* GL_MAP1_INDEX */ + 922, /* GL_MAP1_NORMAL */ + 923, /* GL_MAP1_TEXTURE_COORD_1 */ + 924, /* GL_MAP1_TEXTURE_COORD_2 */ + 925, /* GL_MAP1_TEXTURE_COORD_3 */ + 926, /* GL_MAP1_TEXTURE_COORD_4 */ + 927, /* GL_MAP1_VERTEX_3 */ + 928, /* GL_MAP1_VERTEX_4 */ + 945, /* GL_MAP2_COLOR_4 */ + 948, /* GL_MAP2_INDEX */ + 949, /* GL_MAP2_NORMAL */ + 950, /* GL_MAP2_TEXTURE_COORD_1 */ + 951, /* GL_MAP2_TEXTURE_COORD_2 */ + 952, /* GL_MAP2_TEXTURE_COORD_3 */ + 953, /* GL_MAP2_TEXTURE_COORD_4 */ + 954, /* GL_MAP2_VERTEX_3 */ + 955, /* GL_MAP2_VERTEX_4 */ + 919, /* GL_MAP1_GRID_DOMAIN */ + 920, /* GL_MAP1_GRID_SEGMENTS */ + 946, /* GL_MAP2_GRID_DOMAIN */ + 947, /* GL_MAP2_GRID_SEGMENTS */ + 1985, /* GL_TEXTURE_1D */ + 1988, /* GL_TEXTURE_2D */ + 558, /* GL_FEEDBACK_BUFFER_POINTER */ + 559, /* GL_FEEDBACK_BUFFER_SIZE */ + 560, /* GL_FEEDBACK_BUFFER_TYPE */ + 1772, /* GL_SELECTION_BUFFER_POINTER */ + 1773, /* GL_SELECTION_BUFFER_SIZE */ + 2134, /* GL_TEXTURE_WIDTH */ + 2094, /* GL_TEXTURE_HEIGHT */ + 2038, /* GL_TEXTURE_COMPONENTS */ + 2016, /* GL_TEXTURE_BORDER_COLOR */ + 2015, /* GL_TEXTURE_BORDER */ 445, /* GL_DONT_CARE */ - 540, /* GL_FASTEST */ - 1227, /* GL_NICEST */ + 556, /* GL_FASTEST */ + 1244, /* GL_NICEST */ 56, /* GL_AMBIENT */ 442, /* GL_DIFFUSE */ - 1808, /* GL_SPECULAR */ - 1404, /* GL_POSITION */ - 1811, /* GL_SPOT_DIRECTION */ - 1812, /* GL_SPOT_EXPONENT */ - 1810, /* GL_SPOT_CUTOFF */ + 1825, /* GL_SPECULAR */ + 1421, /* GL_POSITION */ + 1828, /* GL_SPOT_DIRECTION */ + 1829, /* GL_SPOT_EXPONENT */ + 1827, /* GL_SPOT_CUTOFF */ 320, /* GL_CONSTANT_ATTENUATION */ - 830, /* GL_LINEAR_ATTENUATION */ - 1521, /* GL_QUADRATIC_ATTENUATION */ + 846, /* GL_LINEAR_ATTENUATION */ + 1538, /* GL_QUADRATIC_ATTENUATION */ 287, /* GL_COMPILE */ 288, /* GL_COMPILE_AND_EXECUTE */ 149, /* GL_BYTE */ - 2177, /* GL_UNSIGNED_BYTE */ - 1773, /* GL_SHORT */ - 2216, /* GL_UNSIGNED_SHORT */ - 752, /* GL_INT */ - 2180, /* GL_UNSIGNED_INT */ - 553, /* GL_FLOAT */ + 2194, /* GL_UNSIGNED_BYTE */ + 1790, /* GL_SHORT */ + 2233, /* GL_UNSIGNED_SHORT */ + 768, /* GL_INT */ + 2197, /* GL_UNSIGNED_INT */ + 569, /* GL_FLOAT */ 1, /* GL_2_BYTES */ 5, /* GL_3_BYTES */ 7, /* GL_4_BYTES */ 452, /* GL_DOUBLE */ - 704, /* GL_HALF_FLOAT */ - 548, /* GL_FIXED */ + 720, /* GL_HALF_FLOAT */ + 564, /* GL_FIXED */ 165, /* GL_CLEAR */ 58, /* GL_AND */ 60, /* GL_AND_REVERSE */ 351, /* GL_COPY */ 59, /* GL_AND_INVERTED */ - 1230, /* GL_NOOP */ - 2312, /* GL_XOR */ - 1299, /* GL_OR */ - 1231, /* GL_NOR */ - 530, /* GL_EQUIV */ - 806, /* GL_INVERT */ - 1302, /* GL_OR_REVERSE */ + 1247, /* GL_NOOP */ + 2329, /* GL_XOR */ + 1316, /* GL_OR */ + 1248, /* GL_NOR */ + 546, /* GL_EQUIV */ + 822, /* GL_INVERT */ + 1319, /* GL_OR_REVERSE */ 352, /* GL_COPY_INVERTED */ - 1301, /* GL_OR_INVERTED */ - 1220, /* GL_NAND */ - 1762, /* GL_SET */ - 527, /* GL_EMISSION */ - 1772, /* GL_SHININESS */ + 1318, /* GL_OR_INVERTED */ + 1237, /* GL_NAND */ + 1779, /* GL_SET */ + 543, /* GL_EMISSION */ + 1789, /* GL_SHININESS */ 57, /* GL_AMBIENT_AND_DIFFUSE */ 232, /* GL_COLOR_INDEXES */ - 1169, /* GL_MODELVIEW */ - 1493, /* GL_PROJECTION */ - 1903, /* GL_TEXTURE */ + 1186, /* GL_MODELVIEW */ + 1510, /* GL_PROJECTION */ + 1920, /* GL_TEXTURE */ 188, /* GL_COLOR */ 399, /* GL_DEPTH */ - 1834, /* GL_STENCIL */ + 1851, /* GL_STENCIL */ 231, /* GL_COLOR_INDEX */ - 1855, /* GL_STENCIL_INDEX */ + 1872, /* GL_STENCIL_INDEX */ 415, /* GL_DEPTH_COMPONENT */ - 1558, /* GL_RED */ - 697, /* GL_GREEN */ + 1575, /* GL_RED */ + 713, /* GL_GREEN */ 110, /* GL_BLUE */ 32, /* GL_ALPHA */ - 1615, /* GL_RGB */ - 1655, /* GL_RGBA */ - 865, /* GL_LUMINANCE */ - 892, /* GL_LUMINANCE_ALPHA */ + 1632, /* GL_RGB */ + 1672, /* GL_RGBA */ + 881, /* GL_LUMINANCE */ + 908, /* GL_LUMINANCE_ALPHA */ 86, /* GL_BITMAP */ - 1354, /* GL_POINT */ - 828, /* GL_LINE */ - 545, /* GL_FILL */ - 1572, /* GL_RENDER */ - 541, /* GL_FEEDBACK */ - 1754, /* GL_SELECT */ - 552, /* GL_FLAT */ - 1783, /* GL_SMOOTH */ - 807, /* GL_KEEP */ - 1605, /* GL_REPLACE */ - 733, /* GL_INCR */ + 1371, /* GL_POINT */ + 844, /* GL_LINE */ + 561, /* GL_FILL */ + 1589, /* GL_RENDER */ + 557, /* GL_FEEDBACK */ + 1771, /* GL_SELECT */ + 568, /* GL_FLAT */ + 1800, /* GL_SMOOTH */ + 823, /* GL_KEEP */ + 1622, /* GL_REPLACE */ + 749, /* GL_INCR */ 395, /* GL_DECR */ - 2233, /* GL_VENDOR */ - 1602, /* GL_RENDERER */ - 2234, /* GL_VERSION */ - 534, /* GL_EXTENSIONS */ - 1703, /* GL_S */ - 1894, /* GL_T */ - 1541, /* GL_R */ - 1520, /* GL_Q */ - 1206, /* GL_MODULATE */ + 2250, /* GL_VENDOR */ + 1619, /* GL_RENDERER */ + 2251, /* GL_VERSION */ + 550, /* GL_EXTENSIONS */ + 1720, /* GL_S */ + 1911, /* GL_T */ + 1558, /* GL_R */ + 1537, /* GL_Q */ + 1223, /* GL_MODULATE */ 394, /* GL_DECAL */ - 2064, /* GL_TEXTURE_ENV_MODE */ - 2063, /* GL_TEXTURE_ENV_COLOR */ - 2062, /* GL_TEXTURE_ENV */ - 535, /* GL_EYE_LINEAR */ - 1260, /* GL_OBJECT_LINEAR */ - 1809, /* GL_SPHERE_MAP */ - 2067, /* GL_TEXTURE_GEN_MODE */ - 1262, /* GL_OBJECT_PLANE */ - 536, /* GL_EYE_PLANE */ - 1221, /* GL_NEAREST */ - 829, /* GL_LINEAR */ - 1225, /* GL_NEAREST_MIPMAP_NEAREST */ - 834, /* GL_LINEAR_MIPMAP_NEAREST */ - 1224, /* GL_NEAREST_MIPMAP_LINEAR */ - 833, /* GL_LINEAR_MIPMAP_LINEAR */ - 2090, /* GL_TEXTURE_MAG_FILTER */ - 2099, /* GL_TEXTURE_MIN_FILTER */ - 2120, /* GL_TEXTURE_WRAP_S */ - 2121, /* GL_TEXTURE_WRAP_T */ + 2081, /* GL_TEXTURE_ENV_MODE */ + 2080, /* GL_TEXTURE_ENV_COLOR */ + 2079, /* GL_TEXTURE_ENV */ + 551, /* GL_EYE_LINEAR */ + 1277, /* GL_OBJECT_LINEAR */ + 1826, /* GL_SPHERE_MAP */ + 2084, /* GL_TEXTURE_GEN_MODE */ + 1279, /* GL_OBJECT_PLANE */ + 552, /* GL_EYE_PLANE */ + 1238, /* GL_NEAREST */ + 845, /* GL_LINEAR */ + 1242, /* GL_NEAREST_MIPMAP_NEAREST */ + 850, /* GL_LINEAR_MIPMAP_NEAREST */ + 1241, /* GL_NEAREST_MIPMAP_LINEAR */ + 849, /* GL_LINEAR_MIPMAP_LINEAR */ + 2107, /* GL_TEXTURE_MAG_FILTER */ + 2116, /* GL_TEXTURE_MIN_FILTER */ + 2137, /* GL_TEXTURE_WRAP_S */ + 2138, /* GL_TEXTURE_WRAP_T */ 155, /* GL_CLAMP */ - 1604, /* GL_REPEAT */ - 1398, /* GL_POLYGON_OFFSET_UNITS */ - 1397, /* GL_POLYGON_OFFSET_POINT */ - 1396, /* GL_POLYGON_OFFSET_LINE */ - 1544, /* GL_R3_G3_B2 */ - 2230, /* GL_V2F */ - 2231, /* GL_V3F */ + 1621, /* GL_REPEAT */ + 1415, /* GL_POLYGON_OFFSET_UNITS */ + 1414, /* GL_POLYGON_OFFSET_POINT */ + 1413, /* GL_POLYGON_OFFSET_LINE */ + 1561, /* GL_R3_G3_B2 */ + 2247, /* GL_V2F */ + 2248, /* GL_V3F */ 152, /* GL_C4UB_V2F */ 153, /* GL_C4UB_V3F */ 150, /* GL_C3F_V3F */ - 1218, /* GL_N3F_V3F */ + 1235, /* GL_N3F_V3F */ 151, /* GL_C4F_N3F_V3F */ - 1899, /* GL_T2F_V3F */ - 1901, /* GL_T4F_V4F */ - 1897, /* GL_T2F_C4UB_V3F */ - 1895, /* GL_T2F_C3F_V3F */ - 1898, /* GL_T2F_N3F_V3F */ - 1896, /* GL_T2F_C4F_N3F_V3F */ - 1900, /* GL_T4F_C4F_N3F_V4F */ + 1916, /* GL_T2F_V3F */ + 1918, /* GL_T4F_V4F */ + 1914, /* GL_T2F_C4UB_V3F */ + 1912, /* GL_T2F_C3F_V3F */ + 1915, /* GL_T2F_N3F_V3F */ + 1913, /* GL_T2F_C4F_N3F_V3F */ + 1917, /* GL_T4F_C4F_N3F_V4F */ 172, /* GL_CLIP_DISTANCE0 */ 173, /* GL_CLIP_DISTANCE1 */ 174, /* GL_CLIP_DISTANCE2 */ @@ -5110,184 +5144,184 @@ static const unsigned reduced_enums[1564] = 177, /* GL_CLIP_DISTANCE5 */ 178, /* GL_CLIP_DISTANCE6 */ 179, /* GL_CLIP_DISTANCE7 */ - 813, /* GL_LIGHT0 */ - 814, /* GL_LIGHT1 */ - 815, /* GL_LIGHT2 */ - 816, /* GL_LIGHT3 */ - 817, /* GL_LIGHT4 */ - 818, /* GL_LIGHT5 */ - 819, /* GL_LIGHT6 */ - 820, /* GL_LIGHT7 */ - 708, /* GL_HINT_BIT */ + 829, /* GL_LIGHT0 */ + 830, /* GL_LIGHT1 */ + 831, /* GL_LIGHT2 */ + 832, /* GL_LIGHT3 */ + 833, /* GL_LIGHT4 */ + 834, /* GL_LIGHT5 */ + 835, /* GL_LIGHT6 */ + 836, /* GL_LIGHT7 */ + 724, /* GL_HINT_BIT */ 322, /* GL_CONSTANT_COLOR */ - 1273, /* GL_ONE_MINUS_CONSTANT_COLOR */ + 1290, /* GL_ONE_MINUS_CONSTANT_COLOR */ 317, /* GL_CONSTANT_ALPHA */ - 1271, /* GL_ONE_MINUS_CONSTANT_ALPHA */ + 1288, /* GL_ONE_MINUS_CONSTANT_ALPHA */ 89, /* GL_BLEND_COLOR */ - 674, /* GL_FUNC_ADD */ - 1150, /* GL_MIN */ - 1018, /* GL_MAX */ + 690, /* GL_FUNC_ADD */ + 1167, /* GL_MIN */ + 1034, /* GL_MAX */ 96, /* GL_BLEND_EQUATION */ - 680, /* GL_FUNC_SUBTRACT */ - 677, /* GL_FUNC_REVERSE_SUBTRACT */ + 696, /* GL_FUNC_SUBTRACT */ + 693, /* GL_FUNC_REVERSE_SUBTRACT */ 331, /* GL_CONVOLUTION_1D */ 332, /* GL_CONVOLUTION_2D */ - 1757, /* GL_SEPARABLE_2D */ + 1774, /* GL_SEPARABLE_2D */ 335, /* GL_CONVOLUTION_BORDER_MODE */ 339, /* GL_CONVOLUTION_FILTER_SCALE */ 337, /* GL_CONVOLUTION_FILTER_BIAS */ - 1559, /* GL_REDUCE */ + 1576, /* GL_REDUCE */ 341, /* GL_CONVOLUTION_FORMAT */ 345, /* GL_CONVOLUTION_WIDTH */ 343, /* GL_CONVOLUTION_HEIGHT */ - 1037, /* GL_MAX_CONVOLUTION_WIDTH */ - 1035, /* GL_MAX_CONVOLUTION_HEIGHT */ - 1437, /* GL_POST_CONVOLUTION_RED_SCALE */ - 1433, /* GL_POST_CONVOLUTION_GREEN_SCALE */ - 1428, /* GL_POST_CONVOLUTION_BLUE_SCALE */ - 1424, /* GL_POST_CONVOLUTION_ALPHA_SCALE */ - 1435, /* GL_POST_CONVOLUTION_RED_BIAS */ - 1431, /* GL_POST_CONVOLUTION_GREEN_BIAS */ - 1426, /* GL_POST_CONVOLUTION_BLUE_BIAS */ - 1422, /* GL_POST_CONVOLUTION_ALPHA_BIAS */ - 709, /* GL_HISTOGRAM */ - 1500, /* GL_PROXY_HISTOGRAM */ - 725, /* GL_HISTOGRAM_WIDTH */ - 715, /* GL_HISTOGRAM_FORMAT */ - 721, /* GL_HISTOGRAM_RED_SIZE */ - 717, /* GL_HISTOGRAM_GREEN_SIZE */ - 712, /* GL_HISTOGRAM_BLUE_SIZE */ - 710, /* GL_HISTOGRAM_ALPHA_SIZE */ - 719, /* GL_HISTOGRAM_LUMINANCE_SIZE */ - 723, /* GL_HISTOGRAM_SINK */ - 1151, /* GL_MINMAX */ - 1153, /* GL_MINMAX_FORMAT */ - 1155, /* GL_MINMAX_SINK */ - 1902, /* GL_TABLE_TOO_LARGE_EXT */ - 2179, /* GL_UNSIGNED_BYTE_3_3_2 */ - 2219, /* GL_UNSIGNED_SHORT_4_4_4_4 */ - 2222, /* GL_UNSIGNED_SHORT_5_5_5_1 */ - 2191, /* GL_UNSIGNED_INT_8_8_8_8 */ - 2182, /* GL_UNSIGNED_INT_10_10_10_2 */ - 1395, /* GL_POLYGON_OFFSET_FILL */ - 1394, /* GL_POLYGON_OFFSET_FACTOR */ - 1393, /* GL_POLYGON_OFFSET_BIAS */ - 1608, /* GL_RESCALE_NORMAL */ + 1053, /* GL_MAX_CONVOLUTION_WIDTH */ + 1051, /* GL_MAX_CONVOLUTION_HEIGHT */ + 1454, /* GL_POST_CONVOLUTION_RED_SCALE */ + 1450, /* GL_POST_CONVOLUTION_GREEN_SCALE */ + 1445, /* GL_POST_CONVOLUTION_BLUE_SCALE */ + 1441, /* GL_POST_CONVOLUTION_ALPHA_SCALE */ + 1452, /* GL_POST_CONVOLUTION_RED_BIAS */ + 1448, /* GL_POST_CONVOLUTION_GREEN_BIAS */ + 1443, /* GL_POST_CONVOLUTION_BLUE_BIAS */ + 1439, /* GL_POST_CONVOLUTION_ALPHA_BIAS */ + 725, /* GL_HISTOGRAM */ + 1517, /* GL_PROXY_HISTOGRAM */ + 741, /* GL_HISTOGRAM_WIDTH */ + 731, /* GL_HISTOGRAM_FORMAT */ + 737, /* GL_HISTOGRAM_RED_SIZE */ + 733, /* GL_HISTOGRAM_GREEN_SIZE */ + 728, /* GL_HISTOGRAM_BLUE_SIZE */ + 726, /* GL_HISTOGRAM_ALPHA_SIZE */ + 735, /* GL_HISTOGRAM_LUMINANCE_SIZE */ + 739, /* GL_HISTOGRAM_SINK */ + 1168, /* GL_MINMAX */ + 1170, /* GL_MINMAX_FORMAT */ + 1172, /* GL_MINMAX_SINK */ + 1919, /* GL_TABLE_TOO_LARGE_EXT */ + 2196, /* GL_UNSIGNED_BYTE_3_3_2 */ + 2236, /* GL_UNSIGNED_SHORT_4_4_4_4 */ + 2239, /* GL_UNSIGNED_SHORT_5_5_5_1 */ + 2208, /* GL_UNSIGNED_INT_8_8_8_8 */ + 2199, /* GL_UNSIGNED_INT_10_10_10_2 */ + 1412, /* GL_POLYGON_OFFSET_FILL */ + 1411, /* GL_POLYGON_OFFSET_FACTOR */ + 1410, /* GL_POLYGON_OFFSET_BIAS */ + 1625, /* GL_RESCALE_NORMAL */ 41, /* GL_ALPHA4 */ 43, /* GL_ALPHA8 */ 33, /* GL_ALPHA12 */ 35, /* GL_ALPHA16 */ - 880, /* GL_LUMINANCE4 */ - 886, /* GL_LUMINANCE8 */ - 866, /* GL_LUMINANCE12 */ - 872, /* GL_LUMINANCE16 */ - 881, /* GL_LUMINANCE4_ALPHA4 */ - 884, /* GL_LUMINANCE6_ALPHA2 */ - 889, /* GL_LUMINANCE8_ALPHA8 */ - 869, /* GL_LUMINANCE12_ALPHA4 */ - 867, /* GL_LUMINANCE12_ALPHA12 */ - 875, /* GL_LUMINANCE16_ALPHA16 */ - 753, /* GL_INTENSITY */ - 762, /* GL_INTENSITY4 */ - 764, /* GL_INTENSITY8 */ - 754, /* GL_INTENSITY12 */ - 756, /* GL_INTENSITY16 */ - 1630, /* GL_RGB2_EXT */ - 1636, /* GL_RGB4 */ - 1639, /* GL_RGB5 */ - 1646, /* GL_RGB8 */ - 1616, /* GL_RGB10 */ - 1620, /* GL_RGB12 */ - 1622, /* GL_RGB16 */ - 1666, /* GL_RGBA2 */ - 1673, /* GL_RGBA4 */ - 1642, /* GL_RGB5_A1 */ - 1678, /* GL_RGBA8 */ - 1617, /* GL_RGB10_A2 */ - 1656, /* GL_RGBA12 */ - 1658, /* GL_RGBA16 */ - 2107, /* GL_TEXTURE_RED_SIZE */ - 2075, /* GL_TEXTURE_GREEN_SIZE */ - 1996, /* GL_TEXTURE_BLUE_SIZE */ - 1976, /* GL_TEXTURE_ALPHA_SIZE */ - 2088, /* GL_TEXTURE_LUMINANCE_SIZE */ - 2079, /* GL_TEXTURE_INTENSITY_SIZE */ - 1606, /* GL_REPLACE_EXT */ - 1504, /* GL_PROXY_TEXTURE_1D */ - 1508, /* GL_PROXY_TEXTURE_2D */ - 2115, /* GL_TEXTURE_TOO_LARGE_EXT */ - 2101, /* GL_TEXTURE_PRIORITY */ - 2109, /* GL_TEXTURE_RESIDENT */ - 1979, /* GL_TEXTURE_BINDING_1D */ - 1982, /* GL_TEXTURE_BINDING_2D */ - 1985, /* GL_TEXTURE_BINDING_3D */ - 1309, /* GL_PACK_SKIP_IMAGES */ - 1305, /* GL_PACK_IMAGE_HEIGHT */ - 2172, /* GL_UNPACK_SKIP_IMAGES */ - 2169, /* GL_UNPACK_IMAGE_HEIGHT */ - 1974, /* GL_TEXTURE_3D */ - 1512, /* GL_PROXY_TEXTURE_3D */ - 2059, /* GL_TEXTURE_DEPTH */ - 2118, /* GL_TEXTURE_WRAP_R */ - 1019, /* GL_MAX_3D_TEXTURE_SIZE */ - 2235, /* GL_VERTEX_ARRAY */ - 1233, /* GL_NORMAL_ARRAY */ + 896, /* GL_LUMINANCE4 */ + 902, /* GL_LUMINANCE8 */ + 882, /* GL_LUMINANCE12 */ + 888, /* GL_LUMINANCE16 */ + 897, /* GL_LUMINANCE4_ALPHA4 */ + 900, /* GL_LUMINANCE6_ALPHA2 */ + 905, /* GL_LUMINANCE8_ALPHA8 */ + 885, /* GL_LUMINANCE12_ALPHA4 */ + 883, /* GL_LUMINANCE12_ALPHA12 */ + 891, /* GL_LUMINANCE16_ALPHA16 */ + 769, /* GL_INTENSITY */ + 778, /* GL_INTENSITY4 */ + 780, /* GL_INTENSITY8 */ + 770, /* GL_INTENSITY12 */ + 772, /* GL_INTENSITY16 */ + 1647, /* GL_RGB2_EXT */ + 1653, /* GL_RGB4 */ + 1656, /* GL_RGB5 */ + 1663, /* GL_RGB8 */ + 1633, /* GL_RGB10 */ + 1637, /* GL_RGB12 */ + 1639, /* GL_RGB16 */ + 1683, /* GL_RGBA2 */ + 1690, /* GL_RGBA4 */ + 1659, /* GL_RGB5_A1 */ + 1695, /* GL_RGBA8 */ + 1634, /* GL_RGB10_A2 */ + 1673, /* GL_RGBA12 */ + 1675, /* GL_RGBA16 */ + 2124, /* GL_TEXTURE_RED_SIZE */ + 2092, /* GL_TEXTURE_GREEN_SIZE */ + 2013, /* GL_TEXTURE_BLUE_SIZE */ + 1993, /* GL_TEXTURE_ALPHA_SIZE */ + 2105, /* GL_TEXTURE_LUMINANCE_SIZE */ + 2096, /* GL_TEXTURE_INTENSITY_SIZE */ + 1623, /* GL_REPLACE_EXT */ + 1521, /* GL_PROXY_TEXTURE_1D */ + 1525, /* GL_PROXY_TEXTURE_2D */ + 2132, /* GL_TEXTURE_TOO_LARGE_EXT */ + 2118, /* GL_TEXTURE_PRIORITY */ + 2126, /* GL_TEXTURE_RESIDENT */ + 1996, /* GL_TEXTURE_BINDING_1D */ + 1999, /* GL_TEXTURE_BINDING_2D */ + 2002, /* GL_TEXTURE_BINDING_3D */ + 1326, /* GL_PACK_SKIP_IMAGES */ + 1322, /* GL_PACK_IMAGE_HEIGHT */ + 2189, /* GL_UNPACK_SKIP_IMAGES */ + 2186, /* GL_UNPACK_IMAGE_HEIGHT */ + 1991, /* GL_TEXTURE_3D */ + 1529, /* GL_PROXY_TEXTURE_3D */ + 2076, /* GL_TEXTURE_DEPTH */ + 2135, /* GL_TEXTURE_WRAP_R */ + 1035, /* GL_MAX_3D_TEXTURE_SIZE */ + 2252, /* GL_VERTEX_ARRAY */ + 1250, /* GL_NORMAL_ARRAY */ 189, /* GL_COLOR_ARRAY */ - 737, /* GL_INDEX_ARRAY */ - 2029, /* GL_TEXTURE_COORD_ARRAY */ - 519, /* GL_EDGE_FLAG_ARRAY */ - 2241, /* GL_VERTEX_ARRAY_SIZE */ - 2243, /* GL_VERTEX_ARRAY_TYPE */ - 2242, /* GL_VERTEX_ARRAY_STRIDE */ - 1238, /* GL_NORMAL_ARRAY_TYPE */ - 1237, /* GL_NORMAL_ARRAY_STRIDE */ + 753, /* GL_INDEX_ARRAY */ + 2046, /* GL_TEXTURE_COORD_ARRAY */ + 535, /* GL_EDGE_FLAG_ARRAY */ + 2258, /* GL_VERTEX_ARRAY_SIZE */ + 2260, /* GL_VERTEX_ARRAY_TYPE */ + 2259, /* GL_VERTEX_ARRAY_STRIDE */ + 1255, /* GL_NORMAL_ARRAY_TYPE */ + 1254, /* GL_NORMAL_ARRAY_STRIDE */ 193, /* GL_COLOR_ARRAY_SIZE */ 195, /* GL_COLOR_ARRAY_TYPE */ 194, /* GL_COLOR_ARRAY_STRIDE */ - 742, /* GL_INDEX_ARRAY_TYPE */ - 741, /* GL_INDEX_ARRAY_STRIDE */ - 2033, /* GL_TEXTURE_COORD_ARRAY_SIZE */ - 2035, /* GL_TEXTURE_COORD_ARRAY_TYPE */ - 2034, /* GL_TEXTURE_COORD_ARRAY_STRIDE */ - 523, /* GL_EDGE_FLAG_ARRAY_STRIDE */ - 2240, /* GL_VERTEX_ARRAY_POINTER */ - 1236, /* GL_NORMAL_ARRAY_POINTER */ + 758, /* GL_INDEX_ARRAY_TYPE */ + 757, /* GL_INDEX_ARRAY_STRIDE */ + 2050, /* GL_TEXTURE_COORD_ARRAY_SIZE */ + 2052, /* GL_TEXTURE_COORD_ARRAY_TYPE */ + 2051, /* GL_TEXTURE_COORD_ARRAY_STRIDE */ + 539, /* GL_EDGE_FLAG_ARRAY_STRIDE */ + 2257, /* GL_VERTEX_ARRAY_POINTER */ + 1253, /* GL_NORMAL_ARRAY_POINTER */ 192, /* GL_COLOR_ARRAY_POINTER */ - 740, /* GL_INDEX_ARRAY_POINTER */ - 2032, /* GL_TEXTURE_COORD_ARRAY_POINTER */ - 522, /* GL_EDGE_FLAG_ARRAY_POINTER */ - 1211, /* GL_MULTISAMPLE */ - 1731, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ - 1733, /* GL_SAMPLE_ALPHA_TO_ONE */ - 1738, /* GL_SAMPLE_COVERAGE */ - 1735, /* GL_SAMPLE_BUFFERS */ - 1726, /* GL_SAMPLES */ - 1742, /* GL_SAMPLE_COVERAGE_VALUE */ - 1740, /* GL_SAMPLE_COVERAGE_INVERT */ + 756, /* GL_INDEX_ARRAY_POINTER */ + 2049, /* GL_TEXTURE_COORD_ARRAY_POINTER */ + 538, /* GL_EDGE_FLAG_ARRAY_POINTER */ + 1228, /* GL_MULTISAMPLE */ + 1748, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ + 1750, /* GL_SAMPLE_ALPHA_TO_ONE */ + 1755, /* GL_SAMPLE_COVERAGE */ + 1752, /* GL_SAMPLE_BUFFERS */ + 1743, /* GL_SAMPLES */ + 1759, /* GL_SAMPLE_COVERAGE_VALUE */ + 1757, /* GL_SAMPLE_COVERAGE_INVERT */ 237, /* GL_COLOR_MATRIX */ 239, /* GL_COLOR_MATRIX_STACK_DEPTH */ - 1031, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */ - 1420, /* GL_POST_COLOR_MATRIX_RED_SCALE */ - 1416, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */ - 1411, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */ - 1407, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */ - 1418, /* GL_POST_COLOR_MATRIX_RED_BIAS */ - 1414, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */ - 1409, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */ - 1405, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */ - 2012, /* GL_TEXTURE_COLOR_TABLE_SGI */ - 1513, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */ - 2014, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */ + 1047, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */ + 1437, /* GL_POST_COLOR_MATRIX_RED_SCALE */ + 1433, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */ + 1428, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */ + 1424, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */ + 1435, /* GL_POST_COLOR_MATRIX_RED_BIAS */ + 1431, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */ + 1426, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */ + 1422, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */ + 2029, /* GL_TEXTURE_COLOR_TABLE_SGI */ + 1530, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */ + 2031, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */ 94, /* GL_BLEND_DST_RGB */ 108, /* GL_BLEND_SRC_RGB */ 92, /* GL_BLEND_DST_ALPHA */ 106, /* GL_BLEND_SRC_ALPHA */ 243, /* GL_COLOR_TABLE */ - 1430, /* GL_POST_CONVOLUTION_COLOR_TABLE */ - 1413, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */ - 1499, /* GL_PROXY_COLOR_TABLE */ - 1503, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */ - 1502, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */ + 1447, /* GL_POST_CONVOLUTION_COLOR_TABLE */ + 1430, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */ + 1516, /* GL_PROXY_COLOR_TABLE */ + 1520, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */ + 1519, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */ 267, /* GL_COLOR_TABLE_SCALE */ 247, /* GL_COLOR_TABLE_BIAS */ 252, /* GL_COLOR_TABLE_FORMAT */ @@ -5300,398 +5334,398 @@ static const unsigned reduced_enums[1564] = 258, /* GL_COLOR_TABLE_INTENSITY_SIZE */ 79, /* GL_BGR */ 80, /* GL_BGRA */ - 1046, /* GL_MAX_ELEMENTS_VERTICES */ - 1045, /* GL_MAX_ELEMENTS_INDICES */ - 2078, /* GL_TEXTURE_INDEX_SIZE_EXT */ + 1063, /* GL_MAX_ELEMENTS_VERTICES */ + 1062, /* GL_MAX_ELEMENTS_INDICES */ + 2095, /* GL_TEXTURE_INDEX_SIZE_EXT */ 186, /* GL_CLIP_VOLUME_CLIPPING_HINT_EXT */ - 1376, /* GL_POINT_SIZE_MIN */ - 1372, /* GL_POINT_SIZE_MAX */ - 1361, /* GL_POINT_FADE_THRESHOLD_SIZE */ - 1357, /* GL_POINT_DISTANCE_ATTENUATION */ + 1393, /* GL_POINT_SIZE_MIN */ + 1389, /* GL_POINT_SIZE_MAX */ + 1378, /* GL_POINT_FADE_THRESHOLD_SIZE */ + 1374, /* GL_POINT_DISTANCE_ATTENUATION */ 159, /* GL_CLAMP_TO_BORDER */ 162, /* GL_CLAMP_TO_EDGE */ - 2100, /* GL_TEXTURE_MIN_LOD */ - 2098, /* GL_TEXTURE_MAX_LOD */ - 1978, /* GL_TEXTURE_BASE_LEVEL */ - 2097, /* GL_TEXTURE_MAX_LEVEL */ - 728, /* GL_IGNORE_BORDER_HP */ + 2117, /* GL_TEXTURE_MIN_LOD */ + 2115, /* GL_TEXTURE_MAX_LOD */ + 1995, /* GL_TEXTURE_BASE_LEVEL */ + 2114, /* GL_TEXTURE_MAX_LEVEL */ + 744, /* GL_IGNORE_BORDER_HP */ 321, /* GL_CONSTANT_BORDER_HP */ - 1607, /* GL_REPLICATE_BORDER_HP */ + 1624, /* GL_REPLICATE_BORDER_HP */ 333, /* GL_CONVOLUTION_BORDER_COLOR */ - 1268, /* GL_OCCLUSION_TEST_HP */ - 1269, /* GL_OCCLUSION_TEST_RESULT_HP */ - 831, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */ - 2006, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ - 2008, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ - 2010, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ - 2011, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ - 2009, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ - 2007, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ - 1025, /* GL_MAX_CLIPMAP_DEPTH_SGIX */ - 1026, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */ - 1440, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */ - 1442, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */ - 1439, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */ - 1441, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */ - 2086, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ - 2087, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ - 2085, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ - 683, /* GL_GENERATE_MIPMAP */ - 684, /* GL_GENERATE_MIPMAP_HINT */ - 596, /* GL_FOG_OFFSET_SGIX */ - 597, /* GL_FOG_OFFSET_VALUE_SGIX */ - 2020, /* GL_TEXTURE_COMPARE_SGIX */ - 2019, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ - 2082, /* GL_TEXTURE_LEQUAL_R_SGIX */ - 2074, /* GL_TEXTURE_GEQUAL_R_SGIX */ + 1285, /* GL_OCCLUSION_TEST_HP */ + 1286, /* GL_OCCLUSION_TEST_RESULT_HP */ + 847, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */ + 2023, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ + 2025, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ + 2027, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ + 2028, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ + 2026, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ + 2024, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ + 1041, /* GL_MAX_CLIPMAP_DEPTH_SGIX */ + 1042, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */ + 1457, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */ + 1459, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */ + 1456, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */ + 1458, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */ + 2103, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ + 2104, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ + 2102, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ + 699, /* GL_GENERATE_MIPMAP */ + 700, /* GL_GENERATE_MIPMAP_HINT */ + 612, /* GL_FOG_OFFSET_SGIX */ + 613, /* GL_FOG_OFFSET_VALUE_SGIX */ + 2037, /* GL_TEXTURE_COMPARE_SGIX */ + 2036, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ + 2099, /* GL_TEXTURE_LEQUAL_R_SGIX */ + 2091, /* GL_TEXTURE_GEQUAL_R_SGIX */ 416, /* GL_DEPTH_COMPONENT16 */ 420, /* GL_DEPTH_COMPONENT24 */ 424, /* GL_DEPTH_COMPONENT32 */ 358, /* GL_CULL_VERTEX_EXT */ 360, /* GL_CULL_VERTEX_OBJECT_POSITION_EXT */ 359, /* GL_CULL_VERTEX_EYE_POSITION_EXT */ - 2308, /* GL_WRAP_BORDER_SUN */ - 2013, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ - 824, /* GL_LIGHT_MODEL_COLOR_CONTROL */ - 1776, /* GL_SINGLE_COLOR */ - 1760, /* GL_SEPARATE_SPECULAR_COLOR */ - 1771, /* GL_SHARED_TEXTURE_PALETTE_EXT */ - 608, /* GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING */ - 609, /* GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE */ - 620, /* GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE */ - 611, /* GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE */ - 607, /* GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE */ - 606, /* GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE */ - 610, /* GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE */ - 621, /* GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE */ - 638, /* GL_FRAMEBUFFER_DEFAULT */ - 665, /* GL_FRAMEBUFFER_UNDEFINED */ + 2325, /* GL_WRAP_BORDER_SUN */ + 2030, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ + 840, /* GL_LIGHT_MODEL_COLOR_CONTROL */ + 1793, /* GL_SINGLE_COLOR */ + 1777, /* GL_SEPARATE_SPECULAR_COLOR */ + 1788, /* GL_SHARED_TEXTURE_PALETTE_EXT */ + 624, /* GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING */ + 625, /* GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE */ + 636, /* GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE */ + 627, /* GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE */ + 623, /* GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE */ + 622, /* GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE */ + 626, /* GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE */ + 637, /* GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE */ + 654, /* GL_FRAMEBUFFER_DEFAULT */ + 681, /* GL_FRAMEBUFFER_UNDEFINED */ 432, /* GL_DEPTH_STENCIL_ATTACHMENT */ - 901, /* GL_MAJOR_VERSION */ - 1157, /* GL_MINOR_VERSION */ - 1248, /* GL_NUM_EXTENSIONS */ + 917, /* GL_MAJOR_VERSION */ + 1174, /* GL_MINOR_VERSION */ + 1265, /* GL_NUM_EXTENSIONS */ 327, /* GL_CONTEXT_FLAGS */ - 736, /* GL_INDEX */ + 752, /* GL_INDEX */ 410, /* GL_DEPTH_BUFFER */ - 1850, /* GL_STENCIL_BUFFER */ + 1867, /* GL_STENCIL_BUFFER */ 298, /* GL_COMPRESSED_RED */ 299, /* GL_COMPRESSED_RG */ - 861, /* GL_LOSE_CONTEXT_ON_RESET_ARB */ - 703, /* GL_GUILTY_CONTEXT_RESET_ARB */ - 751, /* GL_INNOCENT_CONTEXT_RESET_ARB */ - 2167, /* GL_UNKNOWN_CONTEXT_RESET_ARB */ - 1610, /* GL_RESET_NOTIFICATION_STRATEGY_ARB */ - 1462, /* GL_PROGRAM_BINARY_RETRIEVABLE_HINT */ - 1245, /* GL_NO_RESET_NOTIFICATION_ARB */ - 2178, /* GL_UNSIGNED_BYTE_2_3_3_REV */ - 2223, /* GL_UNSIGNED_SHORT_5_6_5 */ - 2224, /* GL_UNSIGNED_SHORT_5_6_5_REV */ - 2220, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ - 2217, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ - 2192, /* GL_UNSIGNED_INT_8_8_8_8_REV */ - 2188, /* GL_UNSIGNED_INT_2_10_10_10_REV */ - 2095, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ - 2096, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ - 2094, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ - 1161, /* GL_MIRRORED_REPEAT */ - 1696, /* GL_RGB_S3TC */ - 1638, /* GL_RGB4_S3TC */ - 1692, /* GL_RGBA_S3TC */ - 1677, /* GL_RGBA4_S3TC */ - 1686, /* GL_RGBA_DXT5_S3TC */ - 1674, /* GL_RGBA4_DXT5_S3TC */ + 877, /* GL_LOSE_CONTEXT_ON_RESET_ARB */ + 719, /* GL_GUILTY_CONTEXT_RESET_ARB */ + 767, /* GL_INNOCENT_CONTEXT_RESET_ARB */ + 2184, /* GL_UNKNOWN_CONTEXT_RESET_ARB */ + 1627, /* GL_RESET_NOTIFICATION_STRATEGY_ARB */ + 1479, /* GL_PROGRAM_BINARY_RETRIEVABLE_HINT */ + 1262, /* GL_NO_RESET_NOTIFICATION_ARB */ + 2195, /* GL_UNSIGNED_BYTE_2_3_3_REV */ + 2240, /* GL_UNSIGNED_SHORT_5_6_5 */ + 2241, /* GL_UNSIGNED_SHORT_5_6_5_REV */ + 2237, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ + 2234, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ + 2209, /* GL_UNSIGNED_INT_8_8_8_8_REV */ + 2205, /* GL_UNSIGNED_INT_2_10_10_10_REV */ + 2112, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ + 2113, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ + 2111, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ + 1178, /* GL_MIRRORED_REPEAT */ + 1713, /* GL_RGB_S3TC */ + 1655, /* GL_RGB4_S3TC */ + 1709, /* GL_RGBA_S3TC */ + 1694, /* GL_RGBA4_S3TC */ + 1703, /* GL_RGBA_DXT5_S3TC */ + 1691, /* GL_RGBA4_DXT5_S3TC */ 309, /* GL_COMPRESSED_RGB_S3TC_DXT1_EXT */ 304, /* GL_COMPRESSED_RGBA_S3TC_DXT1_EXT */ 305, /* GL_COMPRESSED_RGBA_S3TC_DXT3_EXT */ 306, /* GL_COMPRESSED_RGBA_S3TC_DXT5_EXT */ - 1223, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */ - 1222, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */ - 832, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */ - 583, /* GL_FOG_COORDINATE_SOURCE */ - 575, /* GL_FOG_COORD */ - 599, /* GL_FRAGMENT_DEPTH */ + 1240, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */ + 1239, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */ + 848, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */ + 599, /* GL_FOG_COORDINATE_SOURCE */ + 591, /* GL_FOG_COORD */ + 615, /* GL_FRAGMENT_DEPTH */ 364, /* GL_CURRENT_FOG_COORD */ - 582, /* GL_FOG_COORDINATE_ARRAY_TYPE */ - 581, /* GL_FOG_COORDINATE_ARRAY_STRIDE */ - 580, /* GL_FOG_COORDINATE_ARRAY_POINTER */ - 577, /* GL_FOG_COORDINATE_ARRAY */ + 598, /* GL_FOG_COORDINATE_ARRAY_TYPE */ + 597, /* GL_FOG_COORDINATE_ARRAY_STRIDE */ + 596, /* GL_FOG_COORDINATE_ARRAY_POINTER */ + 593, /* GL_FOG_COORDINATE_ARRAY */ 241, /* GL_COLOR_SUM */ 385, /* GL_CURRENT_SECONDARY_COLOR */ - 1751, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ - 1753, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ - 1752, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ - 1750, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ - 1747, /* GL_SECONDARY_COLOR_ARRAY */ + 1768, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ + 1770, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ + 1769, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ + 1767, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ + 1764, /* GL_SECONDARY_COLOR_ARRAY */ 383, /* GL_CURRENT_RASTER_SECONDARY_COLOR */ 29, /* GL_ALIASED_POINT_SIZE_RANGE */ 28, /* GL_ALIASED_LINE_WIDTH_RANGE */ - 1904, /* GL_TEXTURE0 */ - 1906, /* GL_TEXTURE1 */ - 1928, /* GL_TEXTURE2 */ - 1950, /* GL_TEXTURE3 */ - 1956, /* GL_TEXTURE4 */ - 1958, /* GL_TEXTURE5 */ - 1960, /* GL_TEXTURE6 */ - 1962, /* GL_TEXTURE7 */ - 1964, /* GL_TEXTURE8 */ - 1966, /* GL_TEXTURE9 */ - 1907, /* GL_TEXTURE10 */ - 1909, /* GL_TEXTURE11 */ - 1911, /* GL_TEXTURE12 */ - 1913, /* GL_TEXTURE13 */ - 1915, /* GL_TEXTURE14 */ - 1917, /* GL_TEXTURE15 */ - 1919, /* GL_TEXTURE16 */ - 1921, /* GL_TEXTURE17 */ - 1923, /* GL_TEXTURE18 */ - 1925, /* GL_TEXTURE19 */ - 1929, /* GL_TEXTURE20 */ - 1931, /* GL_TEXTURE21 */ - 1933, /* GL_TEXTURE22 */ - 1935, /* GL_TEXTURE23 */ - 1937, /* GL_TEXTURE24 */ - 1939, /* GL_TEXTURE25 */ - 1941, /* GL_TEXTURE26 */ - 1943, /* GL_TEXTURE27 */ - 1945, /* GL_TEXTURE28 */ - 1947, /* GL_TEXTURE29 */ - 1951, /* GL_TEXTURE30 */ - 1953, /* GL_TEXTURE31 */ + 1921, /* GL_TEXTURE0 */ + 1923, /* GL_TEXTURE1 */ + 1945, /* GL_TEXTURE2 */ + 1967, /* GL_TEXTURE3 */ + 1973, /* GL_TEXTURE4 */ + 1975, /* GL_TEXTURE5 */ + 1977, /* GL_TEXTURE6 */ + 1979, /* GL_TEXTURE7 */ + 1981, /* GL_TEXTURE8 */ + 1983, /* GL_TEXTURE9 */ + 1924, /* GL_TEXTURE10 */ + 1926, /* GL_TEXTURE11 */ + 1928, /* GL_TEXTURE12 */ + 1930, /* GL_TEXTURE13 */ + 1932, /* GL_TEXTURE14 */ + 1934, /* GL_TEXTURE15 */ + 1936, /* GL_TEXTURE16 */ + 1938, /* GL_TEXTURE17 */ + 1940, /* GL_TEXTURE18 */ + 1942, /* GL_TEXTURE19 */ + 1946, /* GL_TEXTURE20 */ + 1948, /* GL_TEXTURE21 */ + 1950, /* GL_TEXTURE22 */ + 1952, /* GL_TEXTURE23 */ + 1954, /* GL_TEXTURE24 */ + 1956, /* GL_TEXTURE25 */ + 1958, /* GL_TEXTURE26 */ + 1960, /* GL_TEXTURE27 */ + 1962, /* GL_TEXTURE28 */ + 1964, /* GL_TEXTURE29 */ + 1968, /* GL_TEXTURE30 */ + 1970, /* GL_TEXTURE31 */ 19, /* GL_ACTIVE_TEXTURE */ 166, /* GL_CLIENT_ACTIVE_TEXTURE */ - 1122, /* GL_MAX_TEXTURE_UNITS */ - 2150, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ - 2153, /* GL_TRANSPOSE_PROJECTION_MATRIX */ - 2155, /* GL_TRANSPOSE_TEXTURE_MATRIX */ - 2147, /* GL_TRANSPOSE_COLOR_MATRIX */ - 1886, /* GL_SUBTRACT */ - 1103, /* GL_MAX_RENDERBUFFER_SIZE */ + 1139, /* GL_MAX_TEXTURE_UNITS */ + 2167, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ + 2170, /* GL_TRANSPOSE_PROJECTION_MATRIX */ + 2172, /* GL_TRANSPOSE_TEXTURE_MATRIX */ + 2164, /* GL_TRANSPOSE_COLOR_MATRIX */ + 1903, /* GL_SUBTRACT */ + 1120, /* GL_MAX_RENDERBUFFER_SIZE */ 290, /* GL_COMPRESSED_ALPHA */ 294, /* GL_COMPRESSED_LUMINANCE */ 295, /* GL_COMPRESSED_LUMINANCE_ALPHA */ 292, /* GL_COMPRESSED_INTENSITY */ 300, /* GL_COMPRESSED_RGB */ 301, /* GL_COMPRESSED_RGBA */ - 2027, /* GL_TEXTURE_COMPRESSION_HINT */ - 2104, /* GL_TEXTURE_RECTANGLE */ - 1992, /* GL_TEXTURE_BINDING_RECTANGLE */ - 1516, /* GL_PROXY_TEXTURE_RECTANGLE */ - 1100, /* GL_MAX_RECTANGLE_TEXTURE_SIZE */ + 2044, /* GL_TEXTURE_COMPRESSION_HINT */ + 2121, /* GL_TEXTURE_RECTANGLE */ + 2009, /* GL_TEXTURE_BINDING_RECTANGLE */ + 1533, /* GL_PROXY_TEXTURE_RECTANGLE */ + 1117, /* GL_MAX_RECTANGLE_TEXTURE_SIZE */ 431, /* GL_DEPTH_STENCIL */ - 2184, /* GL_UNSIGNED_INT_24_8 */ - 1117, /* GL_MAX_TEXTURE_LOD_BIAS */ - 2093, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ - 1119, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */ - 2065, /* GL_TEXTURE_FILTER_CONTROL */ - 2083, /* GL_TEXTURE_LOD_BIAS */ + 2201, /* GL_UNSIGNED_INT_24_8 */ + 1134, /* GL_MAX_TEXTURE_LOD_BIAS */ + 2110, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ + 1136, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */ + 2082, /* GL_TEXTURE_FILTER_CONTROL */ + 2100, /* GL_TEXTURE_LOD_BIAS */ 274, /* GL_COMBINE4 */ - 1109, /* GL_MAX_SHININESS_NV */ - 1110, /* GL_MAX_SPOT_EXPONENT_NV */ - 734, /* GL_INCR_WRAP */ + 1126, /* GL_MAX_SHININESS_NV */ + 1127, /* GL_MAX_SPOT_EXPONENT_NV */ + 750, /* GL_INCR_WRAP */ 396, /* GL_DECR_WRAP */ - 1181, /* GL_MODELVIEW1_ARB */ - 1239, /* GL_NORMAL_MAP */ - 1567, /* GL_REFLECTION_MAP */ - 2037, /* GL_TEXTURE_CUBE_MAP */ - 1989, /* GL_TEXTURE_BINDING_CUBE_MAP */ - 2049, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ - 2039, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ - 2052, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ - 2042, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ - 2055, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ - 2045, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ - 1514, /* GL_PROXY_TEXTURE_CUBE_MAP */ - 1039, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */ - 1217, /* GL_MULTISAMPLE_FILTER_HINT_NV */ - 1454, /* GL_PRIMITIVE_RESTART_NV */ - 1453, /* GL_PRIMITIVE_RESTART_INDEX_NV */ - 591, /* GL_FOG_DISTANCE_MODE_NV */ - 538, /* GL_EYE_RADIAL_NV */ - 537, /* GL_EYE_PLANE_ABSOLUTE_NV */ + 1198, /* GL_MODELVIEW1_ARB */ + 1256, /* GL_NORMAL_MAP */ + 1584, /* GL_REFLECTION_MAP */ + 2054, /* GL_TEXTURE_CUBE_MAP */ + 2006, /* GL_TEXTURE_BINDING_CUBE_MAP */ + 2066, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ + 2056, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ + 2069, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ + 2059, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ + 2072, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ + 2062, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ + 1531, /* GL_PROXY_TEXTURE_CUBE_MAP */ + 1055, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */ + 1234, /* GL_MULTISAMPLE_FILTER_HINT_NV */ + 1471, /* GL_PRIMITIVE_RESTART_NV */ + 1470, /* GL_PRIMITIVE_RESTART_INDEX_NV */ + 607, /* GL_FOG_DISTANCE_MODE_NV */ + 554, /* GL_EYE_RADIAL_NV */ + 553, /* GL_EYE_PLANE_ABSOLUTE_NV */ 273, /* GL_COMBINE */ 280, /* GL_COMBINE_RGB */ 275, /* GL_COMBINE_ALPHA */ - 1697, /* GL_RGB_SCALE */ + 1714, /* GL_RGB_SCALE */ 25, /* GL_ADD_SIGNED */ - 771, /* GL_INTERPOLATE */ + 787, /* GL_INTERPOLATE */ 316, /* GL_CONSTANT */ - 1446, /* GL_PRIMARY_COLOR */ - 1443, /* GL_PREVIOUS */ - 1791, /* GL_SOURCE0_RGB */ - 1797, /* GL_SOURCE1_RGB */ - 1803, /* GL_SOURCE2_RGB */ - 1807, /* GL_SOURCE3_RGB_NV */ - 1788, /* GL_SOURCE0_ALPHA */ - 1794, /* GL_SOURCE1_ALPHA */ - 1800, /* GL_SOURCE2_ALPHA */ - 1806, /* GL_SOURCE3_ALPHA_NV */ - 1282, /* GL_OPERAND0_RGB */ - 1288, /* GL_OPERAND1_RGB */ - 1294, /* GL_OPERAND2_RGB */ - 1298, /* GL_OPERAND3_RGB_NV */ - 1279, /* GL_OPERAND0_ALPHA */ - 1285, /* GL_OPERAND1_ALPHA */ - 1291, /* GL_OPERAND2_ALPHA */ - 1297, /* GL_OPERAND3_ALPHA_NV */ + 1463, /* GL_PRIMARY_COLOR */ + 1460, /* GL_PREVIOUS */ + 1808, /* GL_SOURCE0_RGB */ + 1814, /* GL_SOURCE1_RGB */ + 1820, /* GL_SOURCE2_RGB */ + 1824, /* GL_SOURCE3_RGB_NV */ + 1805, /* GL_SOURCE0_ALPHA */ + 1811, /* GL_SOURCE1_ALPHA */ + 1817, /* GL_SOURCE2_ALPHA */ + 1823, /* GL_SOURCE3_ALPHA_NV */ + 1299, /* GL_OPERAND0_RGB */ + 1305, /* GL_OPERAND1_RGB */ + 1311, /* GL_OPERAND2_RGB */ + 1315, /* GL_OPERAND3_RGB_NV */ + 1296, /* GL_OPERAND0_ALPHA */ + 1302, /* GL_OPERAND1_ALPHA */ + 1308, /* GL_OPERAND2_ALPHA */ + 1314, /* GL_OPERAND3_ALPHA_NV */ 137, /* GL_BUFFER_OBJECT_APPLE */ - 2236, /* GL_VERTEX_ARRAY_BINDING */ - 2102, /* GL_TEXTURE_RANGE_LENGTH_APPLE */ - 2103, /* GL_TEXTURE_RANGE_POINTER_APPLE */ - 2313, /* GL_YCBCR_422_APPLE */ - 2225, /* GL_UNSIGNED_SHORT_8_8_APPLE */ - 2227, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ - 2114, /* GL_TEXTURE_STORAGE_HINT_APPLE */ - 1877, /* GL_STORAGE_PRIVATE_APPLE */ - 1876, /* GL_STORAGE_CACHED_APPLE */ - 1878, /* GL_STORAGE_SHARED_APPLE */ - 1778, /* GL_SLICE_ACCUM_SUN */ - 1525, /* GL_QUAD_MESH_SUN */ - 2161, /* GL_TRIANGLE_MESH_SUN */ - 2278, /* GL_VERTEX_PROGRAM_ARB */ - 2289, /* GL_VERTEX_STATE_PROGRAM_NV */ - 2263, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ - 2271, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ - 2273, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ - 2275, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ + 2253, /* GL_VERTEX_ARRAY_BINDING */ + 2119, /* GL_TEXTURE_RANGE_LENGTH_APPLE */ + 2120, /* GL_TEXTURE_RANGE_POINTER_APPLE */ + 2330, /* GL_YCBCR_422_APPLE */ + 2242, /* GL_UNSIGNED_SHORT_8_8_APPLE */ + 2244, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ + 2131, /* GL_TEXTURE_STORAGE_HINT_APPLE */ + 1894, /* GL_STORAGE_PRIVATE_APPLE */ + 1893, /* GL_STORAGE_CACHED_APPLE */ + 1895, /* GL_STORAGE_SHARED_APPLE */ + 1795, /* GL_SLICE_ACCUM_SUN */ + 1542, /* GL_QUAD_MESH_SUN */ + 2178, /* GL_TRIANGLE_MESH_SUN */ + 2295, /* GL_VERTEX_PROGRAM_ARB */ + 2306, /* GL_VERTEX_STATE_PROGRAM_NV */ + 2280, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ + 2288, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ + 2290, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ + 2292, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ 387, /* GL_CURRENT_VERTEX_ATTRIB */ - 1470, /* GL_PROGRAM_LENGTH_ARB */ - 1486, /* GL_PROGRAM_STRING_ARB */ - 1204, /* GL_MODELVIEW_PROJECTION_NV */ - 727, /* GL_IDENTITY_NV */ - 804, /* GL_INVERSE_NV */ - 2152, /* GL_TRANSPOSE_NV */ - 805, /* GL_INVERSE_TRANSPOSE_NV */ - 1084, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */ - 1083, /* GL_MAX_PROGRAM_MATRICES_ARB */ - 965, /* GL_MATRIX0_NV */ - 977, /* GL_MATRIX1_NV */ - 989, /* GL_MATRIX2_NV */ - 993, /* GL_MATRIX3_NV */ - 995, /* GL_MATRIX4_NV */ - 997, /* GL_MATRIX5_NV */ - 999, /* GL_MATRIX6_NV */ - 1001, /* GL_MATRIX7_NV */ + 1487, /* GL_PROGRAM_LENGTH_ARB */ + 1503, /* GL_PROGRAM_STRING_ARB */ + 1221, /* GL_MODELVIEW_PROJECTION_NV */ + 743, /* GL_IDENTITY_NV */ + 820, /* GL_INVERSE_NV */ + 2169, /* GL_TRANSPOSE_NV */ + 821, /* GL_INVERSE_TRANSPOSE_NV */ + 1101, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */ + 1100, /* GL_MAX_PROGRAM_MATRICES_ARB */ + 981, /* GL_MATRIX0_NV */ + 993, /* GL_MATRIX1_NV */ + 1005, /* GL_MATRIX2_NV */ + 1009, /* GL_MATRIX3_NV */ + 1011, /* GL_MATRIX4_NV */ + 1013, /* GL_MATRIX5_NV */ + 1015, /* GL_MATRIX6_NV */ + 1017, /* GL_MATRIX7_NV */ 370, /* GL_CURRENT_MATRIX_STACK_DEPTH_ARB */ 367, /* GL_CURRENT_MATRIX_ARB */ - 1483, /* GL_PROGRAM_POINT_SIZE */ - 2284, /* GL_VERTEX_PROGRAM_TWO_SIDE */ - 1482, /* GL_PROGRAM_PARAMETER_NV */ - 2269, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ - 1488, /* GL_PROGRAM_TARGET_NV */ - 1485, /* GL_PROGRAM_RESIDENT_NV */ - 2124, /* GL_TRACK_MATRIX_NV */ - 2125, /* GL_TRACK_MATRIX_TRANSFORM_NV */ - 2279, /* GL_VERTEX_PROGRAM_BINDING_NV */ - 1464, /* GL_PROGRAM_ERROR_POSITION_ARB */ + 1500, /* GL_PROGRAM_POINT_SIZE */ + 2301, /* GL_VERTEX_PROGRAM_TWO_SIDE */ + 1499, /* GL_PROGRAM_PARAMETER_NV */ + 2286, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ + 1505, /* GL_PROGRAM_TARGET_NV */ + 1502, /* GL_PROGRAM_RESIDENT_NV */ + 2141, /* GL_TRACK_MATRIX_NV */ + 2142, /* GL_TRACK_MATRIX_TRANSFORM_NV */ + 2296, /* GL_VERTEX_PROGRAM_BINDING_NV */ + 1481, /* GL_PROGRAM_ERROR_POSITION_ARB */ 412, /* GL_DEPTH_CLAMP */ - 2244, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ - 2251, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ - 2252, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ - 2253, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ - 2254, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ - 2255, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ - 2256, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ - 2257, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ - 2258, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ - 2259, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ - 2245, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ - 2246, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ - 2247, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ - 2248, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ - 2249, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ - 2250, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ - 913, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */ - 920, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */ - 921, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */ - 922, /* GL_MAP1_VERTEX_ATTRIB3_4_NV */ - 923, /* GL_MAP1_VERTEX_ATTRIB4_4_NV */ - 924, /* GL_MAP1_VERTEX_ATTRIB5_4_NV */ - 925, /* GL_MAP1_VERTEX_ATTRIB6_4_NV */ - 926, /* GL_MAP1_VERTEX_ATTRIB7_4_NV */ - 927, /* GL_MAP1_VERTEX_ATTRIB8_4_NV */ - 928, /* GL_MAP1_VERTEX_ATTRIB9_4_NV */ - 914, /* GL_MAP1_VERTEX_ATTRIB10_4_NV */ - 915, /* GL_MAP1_VERTEX_ATTRIB11_4_NV */ - 916, /* GL_MAP1_VERTEX_ATTRIB12_4_NV */ - 917, /* GL_MAP1_VERTEX_ATTRIB13_4_NV */ - 918, /* GL_MAP1_VERTEX_ATTRIB14_4_NV */ - 919, /* GL_MAP1_VERTEX_ATTRIB15_4_NV */ - 940, /* GL_MAP2_VERTEX_ATTRIB0_4_NV */ - 947, /* GL_MAP2_VERTEX_ATTRIB1_4_NV */ - 948, /* GL_MAP2_VERTEX_ATTRIB2_4_NV */ - 949, /* GL_MAP2_VERTEX_ATTRIB3_4_NV */ - 950, /* GL_MAP2_VERTEX_ATTRIB4_4_NV */ - 951, /* GL_MAP2_VERTEX_ATTRIB5_4_NV */ - 952, /* GL_MAP2_VERTEX_ATTRIB6_4_NV */ - 1463, /* GL_PROGRAM_BINDING_ARB */ - 954, /* GL_MAP2_VERTEX_ATTRIB8_4_NV */ - 955, /* GL_MAP2_VERTEX_ATTRIB9_4_NV */ - 941, /* GL_MAP2_VERTEX_ATTRIB10_4_NV */ - 942, /* GL_MAP2_VERTEX_ATTRIB11_4_NV */ - 943, /* GL_MAP2_VERTEX_ATTRIB12_4_NV */ - 944, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */ - 945, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */ - 946, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */ - 2025, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ - 2022, /* GL_TEXTURE_COMPRESSED */ - 1246, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */ + 2261, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ + 2268, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ + 2269, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ + 2270, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ + 2271, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ + 2272, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ + 2273, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ + 2274, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ + 2275, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ + 2276, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ + 2262, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ + 2263, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ + 2264, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ + 2265, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ + 2266, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ + 2267, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ + 929, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */ + 936, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */ + 937, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */ + 938, /* GL_MAP1_VERTEX_ATTRIB3_4_NV */ + 939, /* GL_MAP1_VERTEX_ATTRIB4_4_NV */ + 940, /* GL_MAP1_VERTEX_ATTRIB5_4_NV */ + 941, /* GL_MAP1_VERTEX_ATTRIB6_4_NV */ + 942, /* GL_MAP1_VERTEX_ATTRIB7_4_NV */ + 943, /* GL_MAP1_VERTEX_ATTRIB8_4_NV */ + 944, /* GL_MAP1_VERTEX_ATTRIB9_4_NV */ + 930, /* GL_MAP1_VERTEX_ATTRIB10_4_NV */ + 931, /* GL_MAP1_VERTEX_ATTRIB11_4_NV */ + 932, /* GL_MAP1_VERTEX_ATTRIB12_4_NV */ + 933, /* GL_MAP1_VERTEX_ATTRIB13_4_NV */ + 934, /* GL_MAP1_VERTEX_ATTRIB14_4_NV */ + 935, /* GL_MAP1_VERTEX_ATTRIB15_4_NV */ + 956, /* GL_MAP2_VERTEX_ATTRIB0_4_NV */ + 963, /* GL_MAP2_VERTEX_ATTRIB1_4_NV */ + 964, /* GL_MAP2_VERTEX_ATTRIB2_4_NV */ + 965, /* GL_MAP2_VERTEX_ATTRIB3_4_NV */ + 966, /* GL_MAP2_VERTEX_ATTRIB4_4_NV */ + 967, /* GL_MAP2_VERTEX_ATTRIB5_4_NV */ + 968, /* GL_MAP2_VERTEX_ATTRIB6_4_NV */ + 1480, /* GL_PROGRAM_BINDING_ARB */ + 970, /* GL_MAP2_VERTEX_ATTRIB8_4_NV */ + 971, /* GL_MAP2_VERTEX_ATTRIB9_4_NV */ + 957, /* GL_MAP2_VERTEX_ATTRIB10_4_NV */ + 958, /* GL_MAP2_VERTEX_ATTRIB11_4_NV */ + 959, /* GL_MAP2_VERTEX_ATTRIB12_4_NV */ + 960, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */ + 961, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */ + 962, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */ + 2042, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ + 2039, /* GL_TEXTURE_COMPRESSED */ + 1263, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */ 314, /* GL_COMPRESSED_TEXTURE_FORMATS */ - 1144, /* GL_MAX_VERTEX_UNITS_ARB */ + 1161, /* GL_MAX_VERTEX_UNITS_ARB */ 23, /* GL_ACTIVE_VERTEX_UNITS_ARB */ - 2307, /* GL_WEIGHT_SUM_UNITY_ARB */ - 2277, /* GL_VERTEX_BLEND_ARB */ + 2324, /* GL_WEIGHT_SUM_UNITY_ARB */ + 2294, /* GL_VERTEX_BLEND_ARB */ 389, /* GL_CURRENT_WEIGHT_ARB */ - 2305, /* GL_WEIGHT_ARRAY_TYPE_ARB */ - 2303, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ - 2301, /* GL_WEIGHT_ARRAY_SIZE_ARB */ - 2299, /* GL_WEIGHT_ARRAY_POINTER_ARB */ - 2294, /* GL_WEIGHT_ARRAY_ARB */ + 2322, /* GL_WEIGHT_ARRAY_TYPE_ARB */ + 2320, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ + 2318, /* GL_WEIGHT_ARRAY_SIZE_ARB */ + 2316, /* GL_WEIGHT_ARRAY_POINTER_ARB */ + 2311, /* GL_WEIGHT_ARRAY_ARB */ 446, /* GL_DOT3_RGB */ 447, /* GL_DOT3_RGBA */ 308, /* GL_COMPRESSED_RGB_FXT1_3DFX */ 303, /* GL_COMPRESSED_RGBA_FXT1_3DFX */ - 1212, /* GL_MULTISAMPLE_3DFX */ - 1736, /* GL_SAMPLE_BUFFERS_3DFX */ - 1727, /* GL_SAMPLES_3DFX */ - 1192, /* GL_MODELVIEW2_ARB */ - 1195, /* GL_MODELVIEW3_ARB */ - 1196, /* GL_MODELVIEW4_ARB */ - 1197, /* GL_MODELVIEW5_ARB */ - 1198, /* GL_MODELVIEW6_ARB */ - 1199, /* GL_MODELVIEW7_ARB */ - 1200, /* GL_MODELVIEW8_ARB */ - 1201, /* GL_MODELVIEW9_ARB */ - 1171, /* GL_MODELVIEW10_ARB */ - 1172, /* GL_MODELVIEW11_ARB */ - 1173, /* GL_MODELVIEW12_ARB */ - 1174, /* GL_MODELVIEW13_ARB */ - 1175, /* GL_MODELVIEW14_ARB */ - 1176, /* GL_MODELVIEW15_ARB */ - 1177, /* GL_MODELVIEW16_ARB */ - 1178, /* GL_MODELVIEW17_ARB */ - 1179, /* GL_MODELVIEW18_ARB */ - 1180, /* GL_MODELVIEW19_ARB */ - 1182, /* GL_MODELVIEW20_ARB */ - 1183, /* GL_MODELVIEW21_ARB */ - 1184, /* GL_MODELVIEW22_ARB */ - 1185, /* GL_MODELVIEW23_ARB */ - 1186, /* GL_MODELVIEW24_ARB */ - 1187, /* GL_MODELVIEW25_ARB */ - 1188, /* GL_MODELVIEW26_ARB */ - 1189, /* GL_MODELVIEW27_ARB */ - 1190, /* GL_MODELVIEW28_ARB */ - 1191, /* GL_MODELVIEW29_ARB */ - 1193, /* GL_MODELVIEW30_ARB */ - 1194, /* GL_MODELVIEW31_ARB */ + 1229, /* GL_MULTISAMPLE_3DFX */ + 1753, /* GL_SAMPLE_BUFFERS_3DFX */ + 1744, /* GL_SAMPLES_3DFX */ + 1209, /* GL_MODELVIEW2_ARB */ + 1212, /* GL_MODELVIEW3_ARB */ + 1213, /* GL_MODELVIEW4_ARB */ + 1214, /* GL_MODELVIEW5_ARB */ + 1215, /* GL_MODELVIEW6_ARB */ + 1216, /* GL_MODELVIEW7_ARB */ + 1217, /* GL_MODELVIEW8_ARB */ + 1218, /* GL_MODELVIEW9_ARB */ + 1188, /* GL_MODELVIEW10_ARB */ + 1189, /* GL_MODELVIEW11_ARB */ + 1190, /* GL_MODELVIEW12_ARB */ + 1191, /* GL_MODELVIEW13_ARB */ + 1192, /* GL_MODELVIEW14_ARB */ + 1193, /* GL_MODELVIEW15_ARB */ + 1194, /* GL_MODELVIEW16_ARB */ + 1195, /* GL_MODELVIEW17_ARB */ + 1196, /* GL_MODELVIEW18_ARB */ + 1197, /* GL_MODELVIEW19_ARB */ + 1199, /* GL_MODELVIEW20_ARB */ + 1200, /* GL_MODELVIEW21_ARB */ + 1201, /* GL_MODELVIEW22_ARB */ + 1202, /* GL_MODELVIEW23_ARB */ + 1203, /* GL_MODELVIEW24_ARB */ + 1204, /* GL_MODELVIEW25_ARB */ + 1205, /* GL_MODELVIEW26_ARB */ + 1206, /* GL_MODELVIEW27_ARB */ + 1207, /* GL_MODELVIEW28_ARB */ + 1208, /* GL_MODELVIEW29_ARB */ + 1210, /* GL_MODELVIEW30_ARB */ + 1211, /* GL_MODELVIEW31_ARB */ 451, /* GL_DOT3_RGB_EXT */ - 1460, /* GL_PROGRAM_BINARY_LENGTH */ - 1165, /* GL_MIRROR_CLAMP_EXT */ - 1168, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */ - 1207, /* GL_MODULATE_ADD_ATI */ - 1208, /* GL_MODULATE_SIGNED_ADD_ATI */ - 1209, /* GL_MODULATE_SUBTRACT_ATI */ - 2314, /* GL_YCBCR_MESA */ - 1306, /* GL_PACK_INVERT_MESA */ + 1477, /* GL_PROGRAM_BINARY_LENGTH */ + 1182, /* GL_MIRROR_CLAMP_EXT */ + 1185, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */ + 1224, /* GL_MODULATE_ADD_ATI */ + 1225, /* GL_MODULATE_SIGNED_ADD_ATI */ + 1226, /* GL_MODULATE_SUBTRACT_ATI */ + 2331, /* GL_YCBCR_MESA */ + 1323, /* GL_PACK_INVERT_MESA */ 392, /* GL_DEBUG_OBJECT_MESA */ 393, /* GL_DEBUG_PRINT_MESA */ 391, /* GL_DEBUG_ASSERT_MESA */ @@ -5701,354 +5735,354 @@ static const unsigned reduced_enums[1564] = 146, /* GL_BUMP_ROT_MATRIX_SIZE_ATI */ 144, /* GL_BUMP_NUM_TEX_UNITS_ATI */ 148, /* GL_BUMP_TEX_UNITS_ATI */ - 511, /* GL_DUDV_ATI */ - 510, /* GL_DU8DV8_ATI */ + 527, /* GL_DUDV_ATI */ + 526, /* GL_DU8DV8_ATI */ 143, /* GL_BUMP_ENVMAP_ATI */ 147, /* GL_BUMP_TARGET_ATI */ - 1249, /* GL_NUM_PROGRAM_BINARY_FORMATS */ - 1458, /* GL_PROGRAM_BINARY_FORMATS */ - 1840, /* GL_STENCIL_BACK_FUNC */ - 1838, /* GL_STENCIL_BACK_FAIL */ - 1842, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ - 1844, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ - 600, /* GL_FRAGMENT_PROGRAM_ARB */ - 1456, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */ - 1491, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */ - 1490, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */ - 1473, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ - 1479, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ - 1478, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ - 1073, /* GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB */ - 1098, /* GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB */ - 1097, /* GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB */ - 1086, /* GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ - 1092, /* GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ - 1091, /* GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ - 1668, /* GL_RGBA32F */ - 1631, /* GL_RGB32F */ - 1659, /* GL_RGBA16F */ - 1623, /* GL_RGB16F */ - 1687, /* GL_RGBA_FLOAT_MODE_ARB */ - 1042, /* GL_MAX_DRAW_BUFFERS */ + 1266, /* GL_NUM_PROGRAM_BINARY_FORMATS */ + 1475, /* GL_PROGRAM_BINARY_FORMATS */ + 1857, /* GL_STENCIL_BACK_FUNC */ + 1855, /* GL_STENCIL_BACK_FAIL */ + 1859, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ + 1861, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ + 616, /* GL_FRAGMENT_PROGRAM_ARB */ + 1473, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */ + 1508, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */ + 1507, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */ + 1490, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ + 1496, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ + 1495, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ + 1090, /* GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB */ + 1115, /* GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB */ + 1114, /* GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB */ + 1103, /* GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ + 1109, /* GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ + 1108, /* GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ + 1685, /* GL_RGBA32F */ + 1648, /* GL_RGB32F */ + 1676, /* GL_RGBA16F */ + 1640, /* GL_RGB16F */ + 1704, /* GL_RGBA_FLOAT_MODE_ARB */ + 1058, /* GL_MAX_DRAW_BUFFERS */ 455, /* GL_DRAW_BUFFER0 */ - 458, /* GL_DRAW_BUFFER1 */ - 479, /* GL_DRAW_BUFFER2 */ - 482, /* GL_DRAW_BUFFER3 */ - 485, /* GL_DRAW_BUFFER4 */ - 488, /* GL_DRAW_BUFFER5 */ - 491, /* GL_DRAW_BUFFER6 */ - 494, /* GL_DRAW_BUFFER7 */ - 497, /* GL_DRAW_BUFFER8 */ - 500, /* GL_DRAW_BUFFER9 */ - 459, /* GL_DRAW_BUFFER10 */ - 462, /* GL_DRAW_BUFFER11 */ - 465, /* GL_DRAW_BUFFER12 */ - 468, /* GL_DRAW_BUFFER13 */ - 471, /* GL_DRAW_BUFFER14 */ - 474, /* GL_DRAW_BUFFER15 */ + 459, /* GL_DRAW_BUFFER1 */ + 487, /* GL_DRAW_BUFFER2 */ + 491, /* GL_DRAW_BUFFER3 */ + 495, /* GL_DRAW_BUFFER4 */ + 499, /* GL_DRAW_BUFFER5 */ + 503, /* GL_DRAW_BUFFER6 */ + 507, /* GL_DRAW_BUFFER7 */ + 511, /* GL_DRAW_BUFFER8 */ + 515, /* GL_DRAW_BUFFER9 */ + 460, /* GL_DRAW_BUFFER10 */ + 464, /* GL_DRAW_BUFFER11 */ + 468, /* GL_DRAW_BUFFER12 */ + 472, /* GL_DRAW_BUFFER13 */ + 476, /* GL_DRAW_BUFFER14 */ + 480, /* GL_DRAW_BUFFER15 */ 97, /* GL_BLEND_EQUATION_ALPHA */ - 1016, /* GL_MATRIX_PALETTE_ARB */ - 1066, /* GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB */ - 1069, /* GL_MAX_PALETTE_MATRICES_ARB */ + 1032, /* GL_MATRIX_PALETTE_ARB */ + 1083, /* GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB */ + 1086, /* GL_MAX_PALETTE_MATRICES_ARB */ 373, /* GL_CURRENT_PALETTE_MATRIX_ARB */ - 1004, /* GL_MATRIX_INDEX_ARRAY_ARB */ + 1020, /* GL_MATRIX_INDEX_ARRAY_ARB */ 368, /* GL_CURRENT_MATRIX_INDEX_ARB */ - 1009, /* GL_MATRIX_INDEX_ARRAY_SIZE_ARB */ - 1013, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */ - 1011, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */ - 1007, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */ - 2060, /* GL_TEXTURE_DEPTH_SIZE */ + 1025, /* GL_MATRIX_INDEX_ARRAY_SIZE_ARB */ + 1029, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */ + 1027, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */ + 1023, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */ + 2077, /* GL_TEXTURE_DEPTH_SIZE */ 439, /* GL_DEPTH_TEXTURE_MODE */ - 2017, /* GL_TEXTURE_COMPARE_MODE */ - 2015, /* GL_TEXTURE_COMPARE_FUNC */ + 2034, /* GL_TEXTURE_COMPARE_MODE */ + 2032, /* GL_TEXTURE_COMPARE_FUNC */ 284, /* GL_COMPARE_REF_TO_TEXTURE */ - 1383, /* GL_POINT_SPRITE */ + 1400, /* GL_POINT_SPRITE */ 347, /* GL_COORD_REPLACE */ - 1388, /* GL_POINT_SPRITE_R_MODE_NV */ - 1531, /* GL_QUERY_COUNTER_BITS */ + 1405, /* GL_POINT_SPRITE_R_MODE_NV */ + 1548, /* GL_QUERY_COUNTER_BITS */ 376, /* GL_CURRENT_QUERY */ - 1535, /* GL_QUERY_RESULT */ - 1537, /* GL_QUERY_RESULT_AVAILABLE */ - 1136, /* GL_MAX_VERTEX_ATTRIBS */ - 2267, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ + 1552, /* GL_QUERY_RESULT */ + 1554, /* GL_QUERY_RESULT_AVAILABLE */ + 1153, /* GL_MAX_VERTEX_ATTRIBS */ + 2284, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ 437, /* GL_DEPTH_STENCIL_TO_RGBA_NV */ 436, /* GL_DEPTH_STENCIL_TO_BGRA_NV */ - 1113, /* GL_MAX_TEXTURE_COORDS */ - 1115, /* GL_MAX_TEXTURE_IMAGE_UNITS */ - 1466, /* GL_PROGRAM_ERROR_STRING_ARB */ - 1468, /* GL_PROGRAM_FORMAT_ASCII_ARB */ - 1467, /* GL_PROGRAM_FORMAT_ARB */ - 2116, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */ + 1130, /* GL_MAX_TEXTURE_COORDS */ + 1132, /* GL_MAX_TEXTURE_IMAGE_UNITS */ + 1483, /* GL_PROGRAM_ERROR_STRING_ARB */ + 1485, /* GL_PROGRAM_FORMAT_ASCII_ARB */ + 1484, /* GL_PROGRAM_FORMAT_ARB */ + 2133, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */ 409, /* GL_DEPTH_BOUNDS_TEST_EXT */ 408, /* GL_DEPTH_BOUNDS_EXT */ 61, /* GL_ARRAY_BUFFER */ - 524, /* GL_ELEMENT_ARRAY_BUFFER */ + 540, /* GL_ELEMENT_ARRAY_BUFFER */ 62, /* GL_ARRAY_BUFFER_BINDING */ - 525, /* GL_ELEMENT_ARRAY_BUFFER_BINDING */ - 2238, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ - 1234, /* GL_NORMAL_ARRAY_BUFFER_BINDING */ + 541, /* GL_ELEMENT_ARRAY_BUFFER_BINDING */ + 2255, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ + 1251, /* GL_NORMAL_ARRAY_BUFFER_BINDING */ 190, /* GL_COLOR_ARRAY_BUFFER_BINDING */ - 738, /* GL_INDEX_ARRAY_BUFFER_BINDING */ - 2030, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ - 520, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING */ - 1748, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ - 578, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING */ - 2295, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ - 2260, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ - 1469, /* GL_PROGRAM_INSTRUCTIONS_ARB */ - 1079, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */ - 1475, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ - 1088, /* GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ - 1489, /* GL_PROGRAM_TEMPORARIES_ARB */ - 1094, /* GL_MAX_PROGRAM_TEMPORARIES_ARB */ - 1477, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */ - 1090, /* GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB */ - 1481, /* GL_PROGRAM_PARAMETERS_ARB */ - 1093, /* GL_MAX_PROGRAM_PARAMETERS_ARB */ - 1476, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */ - 1089, /* GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB */ - 1457, /* GL_PROGRAM_ATTRIBS_ARB */ - 1074, /* GL_MAX_PROGRAM_ATTRIBS_ARB */ - 1474, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */ - 1087, /* GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB */ - 1455, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */ - 1072, /* GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB */ - 1472, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ - 1085, /* GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ - 1080, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */ - 1076, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */ - 1492, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */ - 2149, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ - 1554, /* GL_READ_ONLY */ - 2309, /* GL_WRITE_ONLY */ - 1556, /* GL_READ_WRITE */ + 754, /* GL_INDEX_ARRAY_BUFFER_BINDING */ + 2047, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ + 536, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING */ + 1765, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ + 594, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING */ + 2312, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ + 2277, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ + 1486, /* GL_PROGRAM_INSTRUCTIONS_ARB */ + 1096, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */ + 1492, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ + 1105, /* GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ + 1506, /* GL_PROGRAM_TEMPORARIES_ARB */ + 1111, /* GL_MAX_PROGRAM_TEMPORARIES_ARB */ + 1494, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */ + 1107, /* GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB */ + 1498, /* GL_PROGRAM_PARAMETERS_ARB */ + 1110, /* GL_MAX_PROGRAM_PARAMETERS_ARB */ + 1493, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */ + 1106, /* GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB */ + 1474, /* GL_PROGRAM_ATTRIBS_ARB */ + 1091, /* GL_MAX_PROGRAM_ATTRIBS_ARB */ + 1491, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */ + 1104, /* GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB */ + 1472, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */ + 1089, /* GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB */ + 1489, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ + 1102, /* GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ + 1097, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */ + 1093, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */ + 1509, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */ + 2166, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ + 1571, /* GL_READ_ONLY */ + 2326, /* GL_WRITE_ONLY */ + 1573, /* GL_READ_WRITE */ 124, /* GL_BUFFER_ACCESS */ 129, /* GL_BUFFER_MAPPED */ 134, /* GL_BUFFER_MAP_POINTER */ - 2123, /* GL_TIME_ELAPSED_EXT */ - 964, /* GL_MATRIX0_ARB */ - 976, /* GL_MATRIX1_ARB */ - 988, /* GL_MATRIX2_ARB */ - 992, /* GL_MATRIX3_ARB */ - 994, /* GL_MATRIX4_ARB */ - 996, /* GL_MATRIX5_ARB */ - 998, /* GL_MATRIX6_ARB */ - 1000, /* GL_MATRIX7_ARB */ - 1002, /* GL_MATRIX8_ARB */ - 1003, /* GL_MATRIX9_ARB */ - 966, /* GL_MATRIX10_ARB */ - 967, /* GL_MATRIX11_ARB */ - 968, /* GL_MATRIX12_ARB */ - 969, /* GL_MATRIX13_ARB */ - 970, /* GL_MATRIX14_ARB */ - 971, /* GL_MATRIX15_ARB */ - 972, /* GL_MATRIX16_ARB */ - 973, /* GL_MATRIX17_ARB */ - 974, /* GL_MATRIX18_ARB */ - 975, /* GL_MATRIX19_ARB */ - 978, /* GL_MATRIX20_ARB */ - 979, /* GL_MATRIX21_ARB */ - 980, /* GL_MATRIX22_ARB */ - 981, /* GL_MATRIX23_ARB */ - 982, /* GL_MATRIX24_ARB */ - 983, /* GL_MATRIX25_ARB */ - 984, /* GL_MATRIX26_ARB */ - 985, /* GL_MATRIX27_ARB */ - 986, /* GL_MATRIX28_ARB */ - 987, /* GL_MATRIX29_ARB */ - 990, /* GL_MATRIX30_ARB */ - 991, /* GL_MATRIX31_ARB */ - 1881, /* GL_STREAM_DRAW */ - 1883, /* GL_STREAM_READ */ - 1879, /* GL_STREAM_COPY */ - 1830, /* GL_STATIC_DRAW */ - 1832, /* GL_STATIC_READ */ - 1828, /* GL_STATIC_COPY */ - 514, /* GL_DYNAMIC_DRAW */ - 516, /* GL_DYNAMIC_READ */ - 512, /* GL_DYNAMIC_COPY */ - 1346, /* GL_PIXEL_PACK_BUFFER */ - 1350, /* GL_PIXEL_UNPACK_BUFFER */ - 1347, /* GL_PIXEL_PACK_BUFFER_BINDING */ - 1351, /* GL_PIXEL_UNPACK_BUFFER_BINDING */ + 2140, /* GL_TIME_ELAPSED_EXT */ + 980, /* GL_MATRIX0_ARB */ + 992, /* GL_MATRIX1_ARB */ + 1004, /* GL_MATRIX2_ARB */ + 1008, /* GL_MATRIX3_ARB */ + 1010, /* GL_MATRIX4_ARB */ + 1012, /* GL_MATRIX5_ARB */ + 1014, /* GL_MATRIX6_ARB */ + 1016, /* GL_MATRIX7_ARB */ + 1018, /* GL_MATRIX8_ARB */ + 1019, /* GL_MATRIX9_ARB */ + 982, /* GL_MATRIX10_ARB */ + 983, /* GL_MATRIX11_ARB */ + 984, /* GL_MATRIX12_ARB */ + 985, /* GL_MATRIX13_ARB */ + 986, /* GL_MATRIX14_ARB */ + 987, /* GL_MATRIX15_ARB */ + 988, /* GL_MATRIX16_ARB */ + 989, /* GL_MATRIX17_ARB */ + 990, /* GL_MATRIX18_ARB */ + 991, /* GL_MATRIX19_ARB */ + 994, /* GL_MATRIX20_ARB */ + 995, /* GL_MATRIX21_ARB */ + 996, /* GL_MATRIX22_ARB */ + 997, /* GL_MATRIX23_ARB */ + 998, /* GL_MATRIX24_ARB */ + 999, /* GL_MATRIX25_ARB */ + 1000, /* GL_MATRIX26_ARB */ + 1001, /* GL_MATRIX27_ARB */ + 1002, /* GL_MATRIX28_ARB */ + 1003, /* GL_MATRIX29_ARB */ + 1006, /* GL_MATRIX30_ARB */ + 1007, /* GL_MATRIX31_ARB */ + 1898, /* GL_STREAM_DRAW */ + 1900, /* GL_STREAM_READ */ + 1896, /* GL_STREAM_COPY */ + 1847, /* GL_STATIC_DRAW */ + 1849, /* GL_STATIC_READ */ + 1845, /* GL_STATIC_COPY */ + 530, /* GL_DYNAMIC_DRAW */ + 532, /* GL_DYNAMIC_READ */ + 528, /* GL_DYNAMIC_COPY */ + 1363, /* GL_PIXEL_PACK_BUFFER */ + 1367, /* GL_PIXEL_UNPACK_BUFFER */ + 1364, /* GL_PIXEL_PACK_BUFFER_BINDING */ + 1368, /* GL_PIXEL_UNPACK_BUFFER_BINDING */ 400, /* GL_DEPTH24_STENCIL8 */ - 2112, /* GL_TEXTURE_STENCIL_SIZE */ - 2058, /* GL_TEXTURE_CUBE_MAP_SEAMLESS */ - 1075, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */ - 1078, /* GL_MAX_PROGRAM_IF_DEPTH_NV */ - 1082, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */ - 1081, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */ - 2265, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER */ - 2262, /* GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB */ - 1021, /* GL_MAX_ARRAY_TEXTURE_LAYERS */ - 1159, /* GL_MIN_PROGRAM_TEXEL_OFFSET */ - 1095, /* GL_MAX_PROGRAM_TEXEL_OFFSET */ - 1872, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ + 2129, /* GL_TEXTURE_STENCIL_SIZE */ + 2075, /* GL_TEXTURE_CUBE_MAP_SEAMLESS */ + 1092, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */ + 1095, /* GL_MAX_PROGRAM_IF_DEPTH_NV */ + 1099, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */ + 1098, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */ + 2282, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER */ + 2279, /* GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB */ + 1037, /* GL_MAX_ARRAY_TEXTURE_LAYERS */ + 1176, /* GL_MIN_PROGRAM_TEXEL_OFFSET */ + 1112, /* GL_MAX_PROGRAM_TEXEL_OFFSET */ + 1889, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ 18, /* GL_ACTIVE_STENCIL_FACE_EXT */ - 1166, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */ - 1729, /* GL_SAMPLES_PASSED */ - 693, /* GL_GEOMETRY_VERTICES_OUT */ - 687, /* GL_GEOMETRY_INPUT_TYPE */ - 689, /* GL_GEOMETRY_OUTPUT_TYPE */ - 1720, /* GL_SAMPLER_BINDING */ + 1183, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */ + 1746, /* GL_SAMPLES_PASSED */ + 709, /* GL_GEOMETRY_VERTICES_OUT */ + 703, /* GL_GEOMETRY_INPUT_TYPE */ + 705, /* GL_GEOMETRY_OUTPUT_TYPE */ + 1737, /* GL_SAMPLER_BINDING */ 164, /* GL_CLAMP_VERTEX_COLOR_ARB */ 156, /* GL_CLAMP_FRAGMENT_COLOR_ARB */ 157, /* GL_CLAMP_READ_COLOR */ - 550, /* GL_FIXED_ONLY */ - 1370, /* GL_POINT_SIZE_ARRAY_TYPE_OES */ - 1369, /* GL_POINT_SIZE_ARRAY_STRIDE_OES */ - 1368, /* GL_POINT_SIZE_ARRAY_POINTER_OES */ - 1203, /* GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES */ - 1495, /* GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES */ - 2092, /* GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES */ + 566, /* GL_FIXED_ONLY */ + 1387, /* GL_POINT_SIZE_ARRAY_TYPE_OES */ + 1386, /* GL_POINT_SIZE_ARRAY_STRIDE_OES */ + 1385, /* GL_POINT_SIZE_ARRAY_POINTER_OES */ + 1220, /* GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES */ + 1512, /* GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES */ + 2109, /* GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES */ 138, /* GL_BUFFER_SERIALIZED_MODIFY_APPLE */ 128, /* GL_BUFFER_FLUSHING_UNMAP_APPLE */ - 1571, /* GL_RELEASED_APPLE */ - 2292, /* GL_VOLATILE_APPLE */ - 1611, /* GL_RETAINED_APPLE */ - 2166, /* GL_UNDEFINED_APPLE */ - 1519, /* GL_PURGEABLE_APPLE */ - 601, /* GL_FRAGMENT_SHADER */ - 2287, /* GL_VERTEX_SHADER */ - 1480, /* GL_PROGRAM_OBJECT_ARB */ - 1765, /* GL_SHADER_OBJECT_ARB */ - 1050, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */ - 1141, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */ - 1132, /* GL_MAX_VARYING_COMPONENTS */ - 1139, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */ - 1033, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */ - 1266, /* GL_OBJECT_TYPE_ARB */ - 1767, /* GL_SHADER_TYPE */ - 566, /* GL_FLOAT_VEC2 */ - 568, /* GL_FLOAT_VEC3 */ - 570, /* GL_FLOAT_VEC4 */ - 792, /* GL_INT_VEC2 */ - 794, /* GL_INT_VEC3 */ - 796, /* GL_INT_VEC4 */ + 1588, /* GL_RELEASED_APPLE */ + 2309, /* GL_VOLATILE_APPLE */ + 1628, /* GL_RETAINED_APPLE */ + 2183, /* GL_UNDEFINED_APPLE */ + 1536, /* GL_PURGEABLE_APPLE */ + 617, /* GL_FRAGMENT_SHADER */ + 2304, /* GL_VERTEX_SHADER */ + 1497, /* GL_PROGRAM_OBJECT_ARB */ + 1782, /* GL_SHADER_OBJECT_ARB */ + 1067, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */ + 1158, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */ + 1149, /* GL_MAX_VARYING_COMPONENTS */ + 1156, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */ + 1049, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */ + 1283, /* GL_OBJECT_TYPE_ARB */ + 1784, /* GL_SHADER_TYPE */ + 582, /* GL_FLOAT_VEC2 */ + 584, /* GL_FLOAT_VEC3 */ + 586, /* GL_FLOAT_VEC4 */ + 808, /* GL_INT_VEC2 */ + 810, /* GL_INT_VEC3 */ + 812, /* GL_INT_VEC4 */ 116, /* GL_BOOL */ 118, /* GL_BOOL_VEC2 */ 120, /* GL_BOOL_VEC3 */ 122, /* GL_BOOL_VEC4 */ - 554, /* GL_FLOAT_MAT2 */ - 558, /* GL_FLOAT_MAT3 */ - 562, /* GL_FLOAT_MAT4 */ - 1704, /* GL_SAMPLER_1D */ - 1710, /* GL_SAMPLER_2D */ - 1718, /* GL_SAMPLER_3D */ - 1723, /* GL_SAMPLER_CUBE */ - 1709, /* GL_SAMPLER_1D_SHADOW */ - 1717, /* GL_SAMPLER_2D_SHADOW */ - 1715, /* GL_SAMPLER_2D_RECT */ - 1716, /* GL_SAMPLER_2D_RECT_SHADOW */ - 556, /* GL_FLOAT_MAT2x3 */ - 557, /* GL_FLOAT_MAT2x4 */ - 560, /* GL_FLOAT_MAT3x2 */ - 561, /* GL_FLOAT_MAT3x4 */ - 564, /* GL_FLOAT_MAT4x2 */ - 565, /* GL_FLOAT_MAT4x3 */ + 570, /* GL_FLOAT_MAT2 */ + 574, /* GL_FLOAT_MAT3 */ + 578, /* GL_FLOAT_MAT4 */ + 1721, /* GL_SAMPLER_1D */ + 1727, /* GL_SAMPLER_2D */ + 1735, /* GL_SAMPLER_3D */ + 1740, /* GL_SAMPLER_CUBE */ + 1726, /* GL_SAMPLER_1D_SHADOW */ + 1734, /* GL_SAMPLER_2D_SHADOW */ + 1732, /* GL_SAMPLER_2D_RECT */ + 1733, /* GL_SAMPLER_2D_RECT_SHADOW */ + 572, /* GL_FLOAT_MAT2x3 */ + 573, /* GL_FLOAT_MAT2x4 */ + 576, /* GL_FLOAT_MAT3x2 */ + 577, /* GL_FLOAT_MAT3x4 */ + 580, /* GL_FLOAT_MAT4x2 */ + 581, /* GL_FLOAT_MAT4x3 */ 398, /* GL_DELETE_STATUS */ 289, /* GL_COMPILE_STATUS */ - 853, /* GL_LINK_STATUS */ - 2232, /* GL_VALIDATE_STATUS */ - 750, /* GL_INFO_LOG_LENGTH */ + 869, /* GL_LINK_STATUS */ + 2249, /* GL_VALIDATE_STATUS */ + 766, /* GL_INFO_LOG_LENGTH */ 64, /* GL_ATTACHED_SHADERS */ 21, /* GL_ACTIVE_UNIFORMS */ 22, /* GL_ACTIVE_UNIFORM_MAX_LENGTH */ - 1766, /* GL_SHADER_SOURCE_LENGTH */ + 1783, /* GL_SHADER_SOURCE_LENGTH */ 15, /* GL_ACTIVE_ATTRIBUTES */ 16, /* GL_ACTIVE_ATTRIBUTE_MAX_LENGTH */ - 603, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */ - 1769, /* GL_SHADING_LANGUAGE_VERSION */ + 619, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */ + 1786, /* GL_SHADING_LANGUAGE_VERSION */ 375, /* GL_CURRENT_PROGRAM */ - 1315, /* GL_PALETTE4_RGB8_OES */ - 1317, /* GL_PALETTE4_RGBA8_OES */ - 1313, /* GL_PALETTE4_R5_G6_B5_OES */ - 1316, /* GL_PALETTE4_RGBA4_OES */ - 1314, /* GL_PALETTE4_RGB5_A1_OES */ - 1320, /* GL_PALETTE8_RGB8_OES */ - 1322, /* GL_PALETTE8_RGBA8_OES */ - 1318, /* GL_PALETTE8_R5_G6_B5_OES */ - 1321, /* GL_PALETTE8_RGBA4_OES */ - 1319, /* GL_PALETTE8_RGB5_A1_OES */ - 731, /* GL_IMPLEMENTATION_COLOR_READ_TYPE */ - 729, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT */ - 1367, /* GL_POINT_SIZE_ARRAY_OES */ - 2036, /* GL_TEXTURE_CROP_RECT_OES */ - 1005, /* GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES */ - 1366, /* GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES */ - 2215, /* GL_UNSIGNED_NORMALIZED */ - 1969, /* GL_TEXTURE_1D_ARRAY */ - 1505, /* GL_PROXY_TEXTURE_1D_ARRAY */ - 1972, /* GL_TEXTURE_2D_ARRAY */ - 1509, /* GL_PROXY_TEXTURE_2D_ARRAY */ - 1980, /* GL_TEXTURE_BINDING_1D_ARRAY */ - 1983, /* GL_TEXTURE_BINDING_2D_ARRAY */ - 1057, /* GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS */ - 2000, /* GL_TEXTURE_BUFFER */ - 1111, /* GL_MAX_TEXTURE_BUFFER_SIZE */ - 1987, /* GL_TEXTURE_BINDING_BUFFER */ - 2002, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING */ - 2004, /* GL_TEXTURE_BUFFER_FORMAT */ - 1542, /* GL_R11F_G11F_B10F */ - 2181, /* GL_UNSIGNED_INT_10F_11F_11F_REV */ - 1654, /* GL_RGB9_E5 */ - 2190, /* GL_UNSIGNED_INT_5_9_9_9_REV */ - 2110, /* GL_TEXTURE_SHARED_SIZE */ - 1822, /* GL_SRGB */ - 1823, /* GL_SRGB8 */ - 1825, /* GL_SRGB_ALPHA */ - 1824, /* GL_SRGB8_ALPHA8 */ - 1782, /* GL_SLUMINANCE_ALPHA */ - 1781, /* GL_SLUMINANCE8_ALPHA8 */ - 1779, /* GL_SLUMINANCE */ - 1780, /* GL_SLUMINANCE8 */ + 1332, /* GL_PALETTE4_RGB8_OES */ + 1334, /* GL_PALETTE4_RGBA8_OES */ + 1330, /* GL_PALETTE4_R5_G6_B5_OES */ + 1333, /* GL_PALETTE4_RGBA4_OES */ + 1331, /* GL_PALETTE4_RGB5_A1_OES */ + 1337, /* GL_PALETTE8_RGB8_OES */ + 1339, /* GL_PALETTE8_RGBA8_OES */ + 1335, /* GL_PALETTE8_R5_G6_B5_OES */ + 1338, /* GL_PALETTE8_RGBA4_OES */ + 1336, /* GL_PALETTE8_RGB5_A1_OES */ + 747, /* GL_IMPLEMENTATION_COLOR_READ_TYPE */ + 745, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT */ + 1384, /* GL_POINT_SIZE_ARRAY_OES */ + 2053, /* GL_TEXTURE_CROP_RECT_OES */ + 1021, /* GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES */ + 1383, /* GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES */ + 2232, /* GL_UNSIGNED_NORMALIZED */ + 1986, /* GL_TEXTURE_1D_ARRAY */ + 1522, /* GL_PROXY_TEXTURE_1D_ARRAY */ + 1989, /* GL_TEXTURE_2D_ARRAY */ + 1526, /* GL_PROXY_TEXTURE_2D_ARRAY */ + 1997, /* GL_TEXTURE_BINDING_1D_ARRAY */ + 2000, /* GL_TEXTURE_BINDING_2D_ARRAY */ + 1074, /* GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS */ + 2017, /* GL_TEXTURE_BUFFER */ + 1128, /* GL_MAX_TEXTURE_BUFFER_SIZE */ + 2004, /* GL_TEXTURE_BINDING_BUFFER */ + 2019, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING */ + 2021, /* GL_TEXTURE_BUFFER_FORMAT */ + 1559, /* GL_R11F_G11F_B10F */ + 2198, /* GL_UNSIGNED_INT_10F_11F_11F_REV */ + 1671, /* GL_RGB9_E5 */ + 2207, /* GL_UNSIGNED_INT_5_9_9_9_REV */ + 2127, /* GL_TEXTURE_SHARED_SIZE */ + 1839, /* GL_SRGB */ + 1840, /* GL_SRGB8 */ + 1842, /* GL_SRGB_ALPHA */ + 1841, /* GL_SRGB8_ALPHA8 */ + 1799, /* GL_SLUMINANCE_ALPHA */ + 1798, /* GL_SLUMINANCE8_ALPHA8 */ + 1796, /* GL_SLUMINANCE */ + 1797, /* GL_SLUMINANCE8 */ 312, /* GL_COMPRESSED_SRGB */ 313, /* GL_COMPRESSED_SRGB_ALPHA */ 310, /* GL_COMPRESSED_SLUMINANCE */ 311, /* GL_COMPRESSED_SLUMINANCE_ALPHA */ - 2145, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH */ - 2134, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE */ - 1130, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS */ - 2143, /* GL_TRANSFORM_FEEDBACK_VARYINGS */ - 2139, /* GL_TRANSFORM_FEEDBACK_BUFFER_START */ - 2137, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE */ - 1449, /* GL_PRIMITIVES_GENERATED */ - 2141, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN */ - 1546, /* GL_RASTERIZER_DISCARD */ - 1126, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS */ - 1128, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS */ - 769, /* GL_INTERLEAVED_ATTRIBS */ - 1758, /* GL_SEPARATE_ATTRIBS */ - 2129, /* GL_TRANSFORM_FEEDBACK_BUFFER */ - 2131, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING */ - 1385, /* GL_POINT_SPRITE_COORD_ORIGIN */ - 862, /* GL_LOWER_LEFT */ - 2229, /* GL_UPPER_LEFT */ - 1846, /* GL_STENCIL_BACK_REF */ - 1847, /* GL_STENCIL_BACK_VALUE_MASK */ - 1848, /* GL_STENCIL_BACK_WRITEMASK */ - 504, /* GL_DRAW_FRAMEBUFFER_BINDING */ - 1576, /* GL_RENDERBUFFER_BINDING */ - 1550, /* GL_READ_FRAMEBUFFER */ - 503, /* GL_DRAW_FRAMEBUFFER */ - 1551, /* GL_READ_FRAMEBUFFER_BINDING */ - 1595, /* GL_RENDERBUFFER_SAMPLES */ - 617, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE */ - 614, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME */ - 629, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL */ - 624, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE */ - 627, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER */ - 635, /* GL_FRAMEBUFFER_COMPLETE */ - 640, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT */ - 655, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT */ - 649, /* GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT */ - 644, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT */ - 650, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT */ - 646, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER */ - 660, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER */ - 666, /* GL_FRAMEBUFFER_UNSUPPORTED */ - 664, /* GL_FRAMEBUFFER_STATUS_ERROR_EXT */ - 1029, /* GL_MAX_COLOR_ATTACHMENTS */ + 2162, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH */ + 2151, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE */ + 1147, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS */ + 2160, /* GL_TRANSFORM_FEEDBACK_VARYINGS */ + 2156, /* GL_TRANSFORM_FEEDBACK_BUFFER_START */ + 2154, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE */ + 1466, /* GL_PRIMITIVES_GENERATED */ + 2158, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN */ + 1563, /* GL_RASTERIZER_DISCARD */ + 1143, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS */ + 1145, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS */ + 785, /* GL_INTERLEAVED_ATTRIBS */ + 1775, /* GL_SEPARATE_ATTRIBS */ + 2146, /* GL_TRANSFORM_FEEDBACK_BUFFER */ + 2148, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING */ + 1402, /* GL_POINT_SPRITE_COORD_ORIGIN */ + 878, /* GL_LOWER_LEFT */ + 2246, /* GL_UPPER_LEFT */ + 1863, /* GL_STENCIL_BACK_REF */ + 1864, /* GL_STENCIL_BACK_VALUE_MASK */ + 1865, /* GL_STENCIL_BACK_WRITEMASK */ + 520, /* GL_DRAW_FRAMEBUFFER_BINDING */ + 1593, /* GL_RENDERBUFFER_BINDING */ + 1567, /* GL_READ_FRAMEBUFFER */ + 519, /* GL_DRAW_FRAMEBUFFER */ + 1568, /* GL_READ_FRAMEBUFFER_BINDING */ + 1612, /* GL_RENDERBUFFER_SAMPLES */ + 633, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE */ + 630, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME */ + 645, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL */ + 640, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE */ + 643, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER */ + 651, /* GL_FRAMEBUFFER_COMPLETE */ + 656, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT */ + 671, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT */ + 665, /* GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT */ + 660, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT */ + 666, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT */ + 662, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER */ + 676, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER */ + 682, /* GL_FRAMEBUFFER_UNSUPPORTED */ + 680, /* GL_FRAMEBUFFER_STATUS_ERROR_EXT */ + 1045, /* GL_MAX_COLOR_ATTACHMENTS */ 196, /* GL_COLOR_ATTACHMENT0 */ 199, /* GL_COLOR_ATTACHMENT1 */ 213, /* GL_COLOR_ATTACHMENT2 */ @@ -6066,184 +6100,184 @@ static const unsigned reduced_enums[1564] = 208, /* GL_COLOR_ATTACHMENT14 */ 210, /* GL_COLOR_ATTACHMENT15 */ 403, /* GL_DEPTH_ATTACHMENT */ - 1835, /* GL_STENCIL_ATTACHMENT */ - 605, /* GL_FRAMEBUFFER */ - 1573, /* GL_RENDERBUFFER */ - 1599, /* GL_RENDERBUFFER_WIDTH */ - 1586, /* GL_RENDERBUFFER_HEIGHT */ - 1589, /* GL_RENDERBUFFER_INTERNAL_FORMAT */ - 1867, /* GL_STENCIL_INDEX_EXT */ - 1856, /* GL_STENCIL_INDEX1 */ - 1861, /* GL_STENCIL_INDEX4 */ - 1864, /* GL_STENCIL_INDEX8 */ - 1857, /* GL_STENCIL_INDEX16 */ - 1593, /* GL_RENDERBUFFER_RED_SIZE */ - 1584, /* GL_RENDERBUFFER_GREEN_SIZE */ - 1579, /* GL_RENDERBUFFER_BLUE_SIZE */ - 1574, /* GL_RENDERBUFFER_ALPHA_SIZE */ - 1581, /* GL_RENDERBUFFER_DEPTH_SIZE */ - 1597, /* GL_RENDERBUFFER_STENCIL_SIZE */ - 658, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE */ - 1106, /* GL_MAX_SAMPLES */ - 2072, /* GL_TEXTURE_GEN_STR_OES */ - 705, /* GL_HALF_FLOAT_OES */ - 1640, /* GL_RGB565 */ - 1671, /* GL_RGBA32UI */ - 1634, /* GL_RGB32UI */ + 1852, /* GL_STENCIL_ATTACHMENT */ + 621, /* GL_FRAMEBUFFER */ + 1590, /* GL_RENDERBUFFER */ + 1616, /* GL_RENDERBUFFER_WIDTH */ + 1603, /* GL_RENDERBUFFER_HEIGHT */ + 1606, /* GL_RENDERBUFFER_INTERNAL_FORMAT */ + 1884, /* GL_STENCIL_INDEX_EXT */ + 1873, /* GL_STENCIL_INDEX1 */ + 1878, /* GL_STENCIL_INDEX4 */ + 1881, /* GL_STENCIL_INDEX8 */ + 1874, /* GL_STENCIL_INDEX16 */ + 1610, /* GL_RENDERBUFFER_RED_SIZE */ + 1601, /* GL_RENDERBUFFER_GREEN_SIZE */ + 1596, /* GL_RENDERBUFFER_BLUE_SIZE */ + 1591, /* GL_RENDERBUFFER_ALPHA_SIZE */ + 1598, /* GL_RENDERBUFFER_DEPTH_SIZE */ + 1614, /* GL_RENDERBUFFER_STENCIL_SIZE */ + 674, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE */ + 1123, /* GL_MAX_SAMPLES */ + 2089, /* GL_TEXTURE_GEN_STR_OES */ + 721, /* GL_HALF_FLOAT_OES */ + 1657, /* GL_RGB565 */ + 1688, /* GL_RGBA32UI */ + 1651, /* GL_RGB32UI */ 40, /* GL_ALPHA32UI_EXT */ - 761, /* GL_INTENSITY32UI_EXT */ - 879, /* GL_LUMINANCE32UI_EXT */ - 896, /* GL_LUMINANCE_ALPHA32UI_EXT */ - 1662, /* GL_RGBA16UI */ - 1626, /* GL_RGB16UI */ + 777, /* GL_INTENSITY32UI_EXT */ + 895, /* GL_LUMINANCE32UI_EXT */ + 912, /* GL_LUMINANCE_ALPHA32UI_EXT */ + 1679, /* GL_RGBA16UI */ + 1643, /* GL_RGB16UI */ 37, /* GL_ALPHA16UI_EXT */ - 758, /* GL_INTENSITY16UI_EXT */ - 874, /* GL_LUMINANCE16UI_EXT */ - 894, /* GL_LUMINANCE_ALPHA16UI_EXT */ - 1681, /* GL_RGBA8UI */ - 1649, /* GL_RGB8UI */ + 774, /* GL_INTENSITY16UI_EXT */ + 890, /* GL_LUMINANCE16UI_EXT */ + 910, /* GL_LUMINANCE_ALPHA16UI_EXT */ + 1698, /* GL_RGBA8UI */ + 1666, /* GL_RGB8UI */ 45, /* GL_ALPHA8UI_EXT */ - 766, /* GL_INTENSITY8UI_EXT */ - 888, /* GL_LUMINANCE8UI_EXT */ - 898, /* GL_LUMINANCE_ALPHA8UI_EXT */ - 1669, /* GL_RGBA32I */ - 1632, /* GL_RGB32I */ + 782, /* GL_INTENSITY8UI_EXT */ + 904, /* GL_LUMINANCE8UI_EXT */ + 914, /* GL_LUMINANCE_ALPHA8UI_EXT */ + 1686, /* GL_RGBA32I */ + 1649, /* GL_RGB32I */ 39, /* GL_ALPHA32I_EXT */ - 760, /* GL_INTENSITY32I_EXT */ - 878, /* GL_LUMINANCE32I_EXT */ - 895, /* GL_LUMINANCE_ALPHA32I_EXT */ - 1660, /* GL_RGBA16I */ - 1624, /* GL_RGB16I */ + 776, /* GL_INTENSITY32I_EXT */ + 894, /* GL_LUMINANCE32I_EXT */ + 911, /* GL_LUMINANCE_ALPHA32I_EXT */ + 1677, /* GL_RGBA16I */ + 1641, /* GL_RGB16I */ 36, /* GL_ALPHA16I_EXT */ - 757, /* GL_INTENSITY16I_EXT */ - 873, /* GL_LUMINANCE16I_EXT */ - 893, /* GL_LUMINANCE_ALPHA16I_EXT */ - 1679, /* GL_RGBA8I */ - 1647, /* GL_RGB8I */ + 773, /* GL_INTENSITY16I_EXT */ + 889, /* GL_LUMINANCE16I_EXT */ + 909, /* GL_LUMINANCE_ALPHA16I_EXT */ + 1696, /* GL_RGBA8I */ + 1664, /* GL_RGB8I */ 44, /* GL_ALPHA8I_EXT */ - 765, /* GL_INTENSITY8I_EXT */ - 887, /* GL_LUMINANCE8I_EXT */ - 897, /* GL_LUMINANCE_ALPHA8I_EXT */ - 1563, /* GL_RED_INTEGER */ - 700, /* GL_GREEN_INTEGER */ + 781, /* GL_INTENSITY8I_EXT */ + 903, /* GL_LUMINANCE8I_EXT */ + 913, /* GL_LUMINANCE_ALPHA8I_EXT */ + 1580, /* GL_RED_INTEGER */ + 716, /* GL_GREEN_INTEGER */ 113, /* GL_BLUE_INTEGER */ 49, /* GL_ALPHA_INTEGER_EXT */ - 1694, /* GL_RGB_INTEGER */ - 1688, /* GL_RGBA_INTEGER */ + 1711, /* GL_RGB_INTEGER */ + 1705, /* GL_RGBA_INTEGER */ 84, /* GL_BGR_INTEGER */ 82, /* GL_BGRA_INTEGER */ - 900, /* GL_LUMINANCE_INTEGER_EXT */ - 899, /* GL_LUMINANCE_ALPHA_INTEGER_EXT */ - 1690, /* GL_RGBA_INTEGER_MODE_EXT */ - 775, /* GL_INT_2_10_10_10_REV */ - 612, /* GL_FRAMEBUFFER_ATTACHMENT_LAYERED */ - 653, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS */ - 652, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB */ - 1705, /* GL_SAMPLER_1D_ARRAY */ - 1711, /* GL_SAMPLER_2D_ARRAY */ - 1721, /* GL_SAMPLER_BUFFER */ - 1707, /* GL_SAMPLER_1D_ARRAY_SHADOW */ - 1713, /* GL_SAMPLER_2D_ARRAY_SHADOW */ - 1724, /* GL_SAMPLER_CUBE_SHADOW */ - 2209, /* GL_UNSIGNED_INT_VEC2 */ - 2211, /* GL_UNSIGNED_INT_VEC3 */ - 2213, /* GL_UNSIGNED_INT_VEC4 */ - 776, /* GL_INT_SAMPLER_1D */ - 780, /* GL_INT_SAMPLER_2D */ - 786, /* GL_INT_SAMPLER_3D */ - 790, /* GL_INT_SAMPLER_CUBE */ - 784, /* GL_INT_SAMPLER_2D_RECT */ - 777, /* GL_INT_SAMPLER_1D_ARRAY */ - 781, /* GL_INT_SAMPLER_2D_ARRAY */ - 788, /* GL_INT_SAMPLER_BUFFER */ - 2193, /* GL_UNSIGNED_INT_SAMPLER_1D */ - 2197, /* GL_UNSIGNED_INT_SAMPLER_2D */ - 2203, /* GL_UNSIGNED_INT_SAMPLER_3D */ - 2207, /* GL_UNSIGNED_INT_SAMPLER_CUBE */ - 2201, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT */ - 2194, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY */ - 2198, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY */ - 2205, /* GL_UNSIGNED_INT_SAMPLER_BUFFER */ - 691, /* GL_GEOMETRY_SHADER */ - 694, /* GL_GEOMETRY_VERTICES_OUT_ARB */ - 688, /* GL_GEOMETRY_INPUT_TYPE_ARB */ - 690, /* GL_GEOMETRY_OUTPUT_TYPE_ARB */ - 1063, /* GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB */ - 1146, /* GL_MAX_VERTEX_VARYING_COMPONENTS_ARB */ - 1061, /* GL_MAX_GEOMETRY_UNIFORM_COMPONENTS */ - 1055, /* GL_MAX_GEOMETRY_OUTPUT_VERTICES */ - 1059, /* GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS */ - 863, /* GL_LOW_FLOAT */ - 1148, /* GL_MEDIUM_FLOAT */ - 706, /* GL_HIGH_FLOAT */ - 864, /* GL_LOW_INT */ - 1149, /* GL_MEDIUM_INT */ - 707, /* GL_HIGH_INT */ - 2183, /* GL_UNSIGNED_INT_10_10_10_2_OES */ - 774, /* GL_INT_10_10_10_2_OES */ - 1763, /* GL_SHADER_BINARY_FORMATS */ - 1251, /* GL_NUM_SHADER_BINARY_FORMATS */ - 1764, /* GL_SHADER_COMPILER */ - 1143, /* GL_MAX_VERTEX_UNIFORM_VECTORS */ - 1135, /* GL_MAX_VARYING_VECTORS */ - 1052, /* GL_MAX_FRAGMENT_UNIFORM_VECTORS */ - 1539, /* GL_QUERY_WAIT */ - 1533, /* GL_QUERY_NO_WAIT */ - 1529, /* GL_QUERY_BY_REGION_WAIT */ - 1527, /* GL_QUERY_BY_REGION_NO_WAIT */ - 2127, /* GL_TRANSFORM_FEEDBACK */ - 2136, /* GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED */ - 2130, /* GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE */ - 2128, /* GL_TRANSFORM_FEEDBACK_BINDING */ - 1523, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION */ - 546, /* GL_FIRST_VERTEX_CONVENTION */ - 808, /* GL_LAST_VERTEX_CONVENTION */ - 1497, /* GL_PROVOKING_VERTEX */ + 916, /* GL_LUMINANCE_INTEGER_EXT */ + 915, /* GL_LUMINANCE_ALPHA_INTEGER_EXT */ + 1707, /* GL_RGBA_INTEGER_MODE_EXT */ + 791, /* GL_INT_2_10_10_10_REV */ + 628, /* GL_FRAMEBUFFER_ATTACHMENT_LAYERED */ + 669, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS */ + 668, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB */ + 1722, /* GL_SAMPLER_1D_ARRAY */ + 1728, /* GL_SAMPLER_2D_ARRAY */ + 1738, /* GL_SAMPLER_BUFFER */ + 1724, /* GL_SAMPLER_1D_ARRAY_SHADOW */ + 1730, /* GL_SAMPLER_2D_ARRAY_SHADOW */ + 1741, /* GL_SAMPLER_CUBE_SHADOW */ + 2226, /* GL_UNSIGNED_INT_VEC2 */ + 2228, /* GL_UNSIGNED_INT_VEC3 */ + 2230, /* GL_UNSIGNED_INT_VEC4 */ + 792, /* GL_INT_SAMPLER_1D */ + 796, /* GL_INT_SAMPLER_2D */ + 802, /* GL_INT_SAMPLER_3D */ + 806, /* GL_INT_SAMPLER_CUBE */ + 800, /* GL_INT_SAMPLER_2D_RECT */ + 793, /* GL_INT_SAMPLER_1D_ARRAY */ + 797, /* GL_INT_SAMPLER_2D_ARRAY */ + 804, /* GL_INT_SAMPLER_BUFFER */ + 2210, /* GL_UNSIGNED_INT_SAMPLER_1D */ + 2214, /* GL_UNSIGNED_INT_SAMPLER_2D */ + 2220, /* GL_UNSIGNED_INT_SAMPLER_3D */ + 2224, /* GL_UNSIGNED_INT_SAMPLER_CUBE */ + 2218, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT */ + 2211, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY */ + 2215, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY */ + 2222, /* GL_UNSIGNED_INT_SAMPLER_BUFFER */ + 707, /* GL_GEOMETRY_SHADER */ + 710, /* GL_GEOMETRY_VERTICES_OUT_ARB */ + 704, /* GL_GEOMETRY_INPUT_TYPE_ARB */ + 706, /* GL_GEOMETRY_OUTPUT_TYPE_ARB */ + 1080, /* GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB */ + 1163, /* GL_MAX_VERTEX_VARYING_COMPONENTS_ARB */ + 1078, /* GL_MAX_GEOMETRY_UNIFORM_COMPONENTS */ + 1072, /* GL_MAX_GEOMETRY_OUTPUT_VERTICES */ + 1076, /* GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS */ + 879, /* GL_LOW_FLOAT */ + 1165, /* GL_MEDIUM_FLOAT */ + 722, /* GL_HIGH_FLOAT */ + 880, /* GL_LOW_INT */ + 1166, /* GL_MEDIUM_INT */ + 723, /* GL_HIGH_INT */ + 2200, /* GL_UNSIGNED_INT_10_10_10_2_OES */ + 790, /* GL_INT_10_10_10_2_OES */ + 1780, /* GL_SHADER_BINARY_FORMATS */ + 1268, /* GL_NUM_SHADER_BINARY_FORMATS */ + 1781, /* GL_SHADER_COMPILER */ + 1160, /* GL_MAX_VERTEX_UNIFORM_VECTORS */ + 1152, /* GL_MAX_VARYING_VECTORS */ + 1069, /* GL_MAX_FRAGMENT_UNIFORM_VECTORS */ + 1556, /* GL_QUERY_WAIT */ + 1550, /* GL_QUERY_NO_WAIT */ + 1546, /* GL_QUERY_BY_REGION_WAIT */ + 1544, /* GL_QUERY_BY_REGION_NO_WAIT */ + 2144, /* GL_TRANSFORM_FEEDBACK */ + 2153, /* GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED */ + 2147, /* GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE */ + 2145, /* GL_TRANSFORM_FEEDBACK_BINDING */ + 1540, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION */ + 562, /* GL_FIRST_VERTEX_CONVENTION */ + 824, /* GL_LAST_VERTEX_CONVENTION */ + 1514, /* GL_PROVOKING_VERTEX */ 354, /* GL_COPY_READ_BUFFER */ 355, /* GL_COPY_WRITE_BUFFER */ - 1566, /* GL_RED_SNORM */ - 1701, /* GL_RG_SNORM */ - 1700, /* GL_RGB_SNORM */ - 1693, /* GL_RGBA_SNORM */ - 1545, /* GL_R8_SNORM */ - 1614, /* GL_RG8_SNORM */ - 1653, /* GL_RGB8_SNORM */ - 1685, /* GL_RGBA8_SNORM */ - 1543, /* GL_R16_SNORM */ - 1613, /* GL_RG16_SNORM */ - 1629, /* GL_RGB16_SNORM */ - 1665, /* GL_RGBA16_SNORM */ - 1775, /* GL_SIGNED_NORMALIZED */ - 1451, /* GL_PRIMITIVE_RESTART */ - 1452, /* GL_PRIMITIVE_RESTART_INDEX */ - 1108, /* GL_MAX_SERVER_WAIT_TIMEOUT */ - 1265, /* GL_OBJECT_TYPE */ - 1888, /* GL_SYNC_CONDITION */ - 1893, /* GL_SYNC_STATUS */ - 1890, /* GL_SYNC_FLAGS */ - 1889, /* GL_SYNC_FENCE */ - 1892, /* GL_SYNC_GPU_COMMANDS_COMPLETE */ - 2176, /* GL_UNSIGNALED */ - 1774, /* GL_SIGNALED */ + 1583, /* GL_RED_SNORM */ + 1718, /* GL_RG_SNORM */ + 1717, /* GL_RGB_SNORM */ + 1710, /* GL_RGBA_SNORM */ + 1562, /* GL_R8_SNORM */ + 1631, /* GL_RG8_SNORM */ + 1670, /* GL_RGB8_SNORM */ + 1702, /* GL_RGBA8_SNORM */ + 1560, /* GL_R16_SNORM */ + 1630, /* GL_RG16_SNORM */ + 1646, /* GL_RGB16_SNORM */ + 1682, /* GL_RGBA16_SNORM */ + 1792, /* GL_SIGNED_NORMALIZED */ + 1468, /* GL_PRIMITIVE_RESTART */ + 1469, /* GL_PRIMITIVE_RESTART_INDEX */ + 1125, /* GL_MAX_SERVER_WAIT_TIMEOUT */ + 1282, /* GL_OBJECT_TYPE */ + 1905, /* GL_SYNC_CONDITION */ + 1910, /* GL_SYNC_STATUS */ + 1907, /* GL_SYNC_FLAGS */ + 1906, /* GL_SYNC_FENCE */ + 1909, /* GL_SYNC_GPU_COMMANDS_COMPLETE */ + 2193, /* GL_UNSIGNALED */ + 1791, /* GL_SIGNALED */ 54, /* GL_ALREADY_SIGNALED */ - 2122, /* GL_TIMEOUT_EXPIRED */ + 2139, /* GL_TIMEOUT_EXPIRED */ 315, /* GL_CONDITION_SATISFIED */ - 2293, /* GL_WAIT_FAILED */ + 2310, /* GL_WAIT_FAILED */ 126, /* GL_BUFFER_ACCESS_FLAGS */ 132, /* GL_BUFFER_MAP_LENGTH */ 133, /* GL_BUFFER_MAP_OFFSET */ - 1138, /* GL_MAX_VERTEX_OUTPUT_COMPONENTS */ - 1053, /* GL_MAX_GEOMETRY_INPUT_COMPONENTS */ - 1054, /* GL_MAX_GEOMETRY_OUTPUT_COMPONENTS */ - 1049, /* GL_MAX_FRAGMENT_INPUT_COMPONENTS */ + 1155, /* GL_MAX_VERTEX_OUTPUT_COMPONENTS */ + 1070, /* GL_MAX_GEOMETRY_INPUT_COMPONENTS */ + 1071, /* GL_MAX_GEOMETRY_OUTPUT_COMPONENTS */ + 1066, /* GL_MAX_FRAGMENT_INPUT_COMPONENTS */ 330, /* GL_CONTEXT_PROFILE_MASK */ - 531, /* GL_EVAL_BIT */ - 1548, /* GL_RASTER_POSITION_UNCLIPPED_IBM */ - 855, /* GL_LIST_BIT */ - 1995, /* GL_TEXTURE_BIT */ - 1744, /* GL_SCISSOR_BIT */ + 547, /* GL_EVAL_BIT */ + 1565, /* GL_RASTER_POSITION_UNCLIPPED_IBM */ + 871, /* GL_LIST_BIT */ + 2012, /* GL_TEXTURE_BIT */ + 1761, /* GL_SCISSOR_BIT */ 30, /* GL_ALL_ATTRIB_BITS */ - 1214, /* GL_MULTISAMPLE_BIT */ + 1231, /* GL_MULTISAMPLE_BIT */ 31, /* GL_ALL_CLIENT_ATTRIB_BITS */ }; diff --git a/mesalib/src/mesa/main/eval.h b/mesalib/src/mesa/main/eval.h index c6a37c135..5a4203138 100644 --- a/mesalib/src/mesa/main/eval.h +++ b/mesalib/src/mesa/main/eval.h @@ -1,111 +1,111 @@ -/**
- * \file eval.h
- * Eval operations.
- *
- * \if subset
- * (No-op)
- *
- * \endif
- */
-
-/*
- * Mesa 3-D graphics library
- * Version: 3.5
- *
- * Copyright (C) 1999-2001 Brian Paul All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-#ifndef EVAL_H
-#define EVAL_H
-
-
-#include "main/mfeatures.h"
-#include "main/mtypes.h"
-
-
-#if FEATURE_evaluators
-
-#define _MESA_INIT_EVAL_VTXFMT(vfmt, impl) \
- do { \
- (vfmt)->EvalCoord1f = impl ## EvalCoord1f; \
- (vfmt)->EvalCoord1fv = impl ## EvalCoord1fv; \
- (vfmt)->EvalCoord2f = impl ## EvalCoord2f; \
- (vfmt)->EvalCoord2fv = impl ## EvalCoord2fv; \
- (vfmt)->EvalPoint1 = impl ## EvalPoint1; \
- (vfmt)->EvalPoint2 = impl ## EvalPoint2; \
- (vfmt)->EvalMesh1 = impl ## EvalMesh1; \
- (vfmt)->EvalMesh2 = impl ## EvalMesh2; \
- } while (0)
-
-extern GLuint _mesa_evaluator_components( GLenum target );
-
-
-extern void gl_free_control_points( struct gl_context *ctx,
- GLenum target, GLfloat *data );
-
-
-extern GLfloat *_mesa_copy_map_points1f( GLenum target,
- GLint ustride, GLint uorder,
- const GLfloat *points );
-
-extern GLfloat *_mesa_copy_map_points1d( GLenum target,
- GLint ustride, GLint uorder,
- const GLdouble *points );
-
-extern GLfloat *_mesa_copy_map_points2f( GLenum target,
- GLint ustride, GLint uorder,
- GLint vstride, GLint vorder,
- const GLfloat *points );
-
-extern GLfloat *_mesa_copy_map_points2d(GLenum target,
- GLint ustride, GLint uorder,
- GLint vstride, GLint vorder,
- const GLdouble *points );
-
-extern void
-_mesa_install_eval_vtxfmt(struct _glapi_table *disp,
- const GLvertexformat *vfmt);
-
-extern void
-_mesa_init_eval_dispatch(struct _glapi_table *disp);
-
-#else /* FEATURE_evaluators */
-
-#define _MESA_INIT_EVAL_VTXFMT(vfmt, impl) do { } while (0)
-
-static INLINE void
-_mesa_install_eval_vtxfmt(struct _glapi_table *disp,
- const GLvertexformat *vfmt)
-{
-}
-
-static INLINE void
-_mesa_init_eval_dispatch(struct _glapi_table *disp)
-{
-}
-
-#endif /* FEATURE_evaluators */
-
-extern void _mesa_init_eval( struct gl_context *ctx );
-extern void _mesa_free_eval_data( struct gl_context *ctx );
-
-
-#endif /* EVAL_H */
+/** + * \file eval.h + * Eval operations. + * + * \if subset + * (No-op) + * + * \endif + */ + +/* + * Mesa 3-D graphics library + * Version: 3.5 + * + * Copyright (C) 1999-2001 Brian Paul All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + + +#ifndef EVAL_H +#define EVAL_H + + +#include "main/mfeatures.h" +#include "main/mtypes.h" + + +#if FEATURE_evaluators + +#define _MESA_INIT_EVAL_VTXFMT(vfmt, impl) \ + do { \ + (vfmt)->EvalCoord1f = impl ## EvalCoord1f; \ + (vfmt)->EvalCoord1fv = impl ## EvalCoord1fv; \ + (vfmt)->EvalCoord2f = impl ## EvalCoord2f; \ + (vfmt)->EvalCoord2fv = impl ## EvalCoord2fv; \ + (vfmt)->EvalPoint1 = impl ## EvalPoint1; \ + (vfmt)->EvalPoint2 = impl ## EvalPoint2; \ + (vfmt)->EvalMesh1 = impl ## EvalMesh1; \ + (vfmt)->EvalMesh2 = impl ## EvalMesh2; \ + } while (0) + +extern GLuint _mesa_evaluator_components( GLenum target ); + + +extern void gl_free_control_points( struct gl_context *ctx, + GLenum target, GLfloat *data ); + + +extern GLfloat *_mesa_copy_map_points1f( GLenum target, + GLint ustride, GLint uorder, + const GLfloat *points ); + +extern GLfloat *_mesa_copy_map_points1d( GLenum target, + GLint ustride, GLint uorder, + const GLdouble *points ); + +extern GLfloat *_mesa_copy_map_points2f( GLenum target, + GLint ustride, GLint uorder, + GLint vstride, GLint vorder, + const GLfloat *points ); + +extern GLfloat *_mesa_copy_map_points2d(GLenum target, + GLint ustride, GLint uorder, + GLint vstride, GLint vorder, + const GLdouble *points ); + +extern void +_mesa_install_eval_vtxfmt(struct _glapi_table *disp, + const GLvertexformat *vfmt); + +extern void +_mesa_init_eval_dispatch(struct _glapi_table *disp); + +#else /* FEATURE_evaluators */ + +#define _MESA_INIT_EVAL_VTXFMT(vfmt, impl) do { } while (0) + +static inline void +_mesa_install_eval_vtxfmt(struct _glapi_table *disp, + const GLvertexformat *vfmt) +{ +} + +static inline void +_mesa_init_eval_dispatch(struct _glapi_table *disp) +{ +} + +#endif /* FEATURE_evaluators */ + +extern void _mesa_init_eval( struct gl_context *ctx ); +extern void _mesa_free_eval_data( struct gl_context *ctx ); + + +#endif /* EVAL_H */ diff --git a/mesalib/src/mesa/main/extensions.c b/mesalib/src/mesa/main/extensions.c index af1a3ff85..52b928e41 100644 --- a/mesalib/src/mesa/main/extensions.c +++ b/mesalib/src/mesa/main/extensions.c @@ -85,7 +85,7 @@ static const struct extension extension_table[] = { { "GL_ARB_depth_buffer_float", o(ARB_depth_buffer_float), GL, 2008 }, { "GL_ARB_depth_clamp", o(ARB_depth_clamp), GL, 2003 }, { "GL_ARB_depth_texture", o(ARB_depth_texture), GL, 2001 }, - { "GL_ARB_draw_buffers", o(ARB_draw_buffers), GL, 2002 }, + { "GL_ARB_draw_buffers", o(dummy_true), GL, 2002 }, { "GL_ARB_draw_buffers_blend", o(ARB_draw_buffers_blend), GL, 2009 }, { "GL_ARB_draw_elements_base_vertex", o(ARB_draw_elements_base_vertex), GL, 2009 }, { "GL_ARB_draw_instanced", o(ARB_draw_instanced), GL, 2008 }, @@ -263,7 +263,7 @@ static const struct extension extension_table[] = { { "GL_APPLE_packed_pixels", o(APPLE_packed_pixels), GL, 2002 }, { "GL_APPLE_vertex_array_object", o(APPLE_vertex_array_object), GL, 2002 }, { "GL_ATI_blend_equation_separate", o(EXT_blend_equation_separate), GL, 2003 }, - { "GL_ATI_draw_buffers", o(ARB_draw_buffers), GL, 2002 }, + { "GL_ATI_draw_buffers", o(dummy_true), GL, 2002 }, { "GL_ATI_envmap_bumpmap", o(ATI_envmap_bumpmap), GL, 2001 }, { "GL_ATI_fragment_shader", o(ATI_fragment_shader), GL, 2001 }, { "GL_ATI_separate_stencil", o(ATI_separate_stencil), GL, 2006 }, @@ -284,6 +284,8 @@ static const struct extension extension_table[] = { { "GL_NV_blend_square", o(NV_blend_square), GL, 1999 }, { "GL_NV_conditional_render", o(NV_conditional_render), GL, 2008 }, { "GL_NV_depth_clamp", o(ARB_depth_clamp), GL, 2001 }, + { "GL_NV_draw_buffers", o(dummy_true), ES2, 2011 }, + { "GL_NV_fbo_color_attachments", o(EXT_framebuffer_object), ES2, 2010 }, { "GL_NV_fragment_program", o(NV_fragment_program), GL, 2001 }, { "GL_NV_fragment_program_option", o(NV_fragment_program_option), GL, 2005 }, { "GL_NV_light_max_exponent", o(NV_light_max_exponent), GL, 1999 }, @@ -341,7 +343,6 @@ name_to_offset(const char* name) */ static const size_t default_extensions[] = { o(ARB_copy_buffer), - o(ARB_draw_buffers), o(ARB_transpose_matrix), o(ARB_window_pos), @@ -376,7 +377,6 @@ _mesa_enable_sw_extensions(struct gl_context *ctx) /*ctx->Extensions.ARB_copy_buffer = GL_TRUE;*/ ctx->Extensions.ARB_depth_clamp = GL_TRUE; ctx->Extensions.ARB_depth_texture = GL_TRUE; - /*ctx->Extensions.ARB_draw_buffers = GL_TRUE;*/ ctx->Extensions.ARB_draw_elements_base_vertex = GL_TRUE; ctx->Extensions.ARB_draw_instanced = GL_TRUE; ctx->Extensions.ARB_explicit_attrib_location = GL_TRUE; @@ -575,7 +575,6 @@ _mesa_enable_1_5_extensions(struct gl_context *ctx) void _mesa_enable_2_0_extensions(struct gl_context *ctx) { - /*ctx->Extensions.ARB_draw_buffers = GL_TRUE;*/ #if FEATURE_ARB_fragment_shader ctx->Extensions.ARB_fragment_shader = GL_TRUE; #endif diff --git a/mesalib/src/mesa/main/fbobject.c b/mesalib/src/mesa/main/fbobject.c index fd371aba8..757115584 100644 --- a/mesalib/src/mesa/main/fbobject.c +++ b/mesalib/src/mesa/main/fbobject.c @@ -78,7 +78,7 @@ static struct gl_renderbuffer DummyRenderbuffer; static struct gl_framebuffer IncompleteFramebuffer; -static INLINE GLboolean +static inline GLboolean is_cube_face(GLenum target) { return (target >= GL_TEXTURE_CUBE_MAP_POSITIVE_X && @@ -89,7 +89,7 @@ is_cube_face(GLenum target) /** * Is the given FBO a user-created FBO? */ -static INLINE GLboolean +static inline GLboolean is_user_fbo(const struct gl_framebuffer *fb) { return fb->Name != 0; @@ -99,7 +99,7 @@ is_user_fbo(const struct gl_framebuffer *fb) /** * Is the given FBO a window system FBO (like an X window)? */ -static INLINE GLboolean +static inline GLboolean is_winsys_fbo(const struct gl_framebuffer *fb) { return fb->Name == 0; @@ -194,9 +194,11 @@ get_framebuffer_target(struct gl_context *ctx, GLenum target) { switch (target) { case GL_DRAW_FRAMEBUFFER: - return ctx->Extensions.EXT_framebuffer_blit ? ctx->DrawBuffer : NULL; + return ctx->Extensions.EXT_framebuffer_blit && ctx->API == API_OPENGL + ? ctx->DrawBuffer : NULL; case GL_READ_FRAMEBUFFER: - return ctx->Extensions.EXT_framebuffer_blit ? ctx->ReadBuffer : NULL; + return ctx->Extensions.EXT_framebuffer_blit && ctx->API == API_OPENGL + ? ctx->ReadBuffer : NULL; case GL_FRAMEBUFFER_EXT: return ctx->DrawBuffer; default: @@ -238,18 +240,27 @@ _mesa_get_attachment(struct gl_context *ctx, struct gl_framebuffer *fb, case GL_COLOR_ATTACHMENT13_EXT: case GL_COLOR_ATTACHMENT14_EXT: case GL_COLOR_ATTACHMENT15_EXT: + /* Only OpenGL ES 1.x forbids color attachments other than + * GL_COLOR_ATTACHMENT0. For all other APIs the limit set by the + * hardware is used. + */ i = attachment - GL_COLOR_ATTACHMENT0_EXT; - if (i >= ctx->Const.MaxColorAttachments) { + if (i >= ctx->Const.MaxColorAttachments + || (i > 0 && ctx->API == API_OPENGLES)) { return NULL; } return &fb->Attachment[BUFFER_COLOR0 + i]; case GL_DEPTH_STENCIL_ATTACHMENT: + if (ctx->API != API_OPENGL) + return NULL; /* fall-through */ case GL_DEPTH_BUFFER: /* fall-through / new in GL 3.0 */ case GL_DEPTH_ATTACHMENT_EXT: return &fb->Attachment[BUFFER_DEPTH]; case GL_STENCIL_BUFFER: + if (ctx->API != API_OPENGL) + return NULL; /* fall-through / new in GL 3.0 */ case GL_STENCIL_ATTACHMENT_EXT: return &fb->Attachment[BUFFER_STENCIL]; @@ -1220,7 +1231,67 @@ _mesa_base_fbo_format(struct gl_context *ctx, GLenum internalFormat) return ctx->Extensions.EXT_texture_shared_exponent ? GL_RGB : 0; case GL_R11F_G11F_B10F: return ctx->Extensions.EXT_packed_float ? GL_RGB : 0; - /* XXX add integer formats eventually */ + + case GL_RGBA8UI_EXT: + case GL_RGBA16UI_EXT: + case GL_RGBA32UI_EXT: + case GL_RGBA8I_EXT: + case GL_RGBA16I_EXT: + case GL_RGBA32I_EXT: + return ctx->Extensions.EXT_texture_integer ? GL_RGBA : 0; + + case GL_RGB8UI_EXT: + case GL_RGB16UI_EXT: + case GL_RGB32UI_EXT: + case GL_RGB8I_EXT: + case GL_RGB16I_EXT: + case GL_RGB32I_EXT: + return ctx->Extensions.EXT_texture_integer ? GL_RGB : 0; + + case GL_R8UI: + case GL_R8I: + case GL_R16UI: + case GL_R16I: + case GL_R32UI: + case GL_R32I: + return ctx->Extensions.ARB_texture_rg && + ctx->Extensions.EXT_texture_integer ? GL_RED : 0; + + case GL_RG8UI: + case GL_RG8I: + case GL_RG16UI: + case GL_RG16I: + case GL_RG32UI: + case GL_RG32I: + return ctx->Extensions.ARB_texture_rg && + ctx->Extensions.EXT_texture_integer ? GL_RG : 0; + + case GL_INTENSITY8I_EXT: + case GL_INTENSITY8UI_EXT: + case GL_INTENSITY16I_EXT: + case GL_INTENSITY16UI_EXT: + case GL_INTENSITY32I_EXT: + case GL_INTENSITY32UI_EXT: + return ctx->Extensions.EXT_texture_integer && + ctx->Extensions.ARB_framebuffer_object ? GL_INTENSITY : 0; + + case GL_LUMINANCE8I_EXT: + case GL_LUMINANCE8UI_EXT: + case GL_LUMINANCE16I_EXT: + case GL_LUMINANCE16UI_EXT: + case GL_LUMINANCE32I_EXT: + case GL_LUMINANCE32UI_EXT: + return ctx->Extensions.EXT_texture_integer && + ctx->Extensions.ARB_framebuffer_object ? GL_LUMINANCE : 0; + + case GL_LUMINANCE_ALPHA8I_EXT: + case GL_LUMINANCE_ALPHA8UI_EXT: + case GL_LUMINANCE_ALPHA16I_EXT: + case GL_LUMINANCE_ALPHA16UI_EXT: + case GL_LUMINANCE_ALPHA32I_EXT: + case GL_LUMINANCE_ALPHA32UI_EXT: + return ctx->Extensions.EXT_texture_integer && + ctx->Extensions.ARB_framebuffer_object ? GL_LUMINANCE_ALPHA : 0; default: return 0; } diff --git a/mesalib/src/mesa/main/fbobject.h b/mesalib/src/mesa/main/fbobject.h index d9b06b9af..0a70a436d 100644 --- a/mesalib/src/mesa/main/fbobject.h +++ b/mesalib/src/mesa/main/fbobject.h @@ -1,195 +1,195 @@ -/*
- * Mesa 3-D graphics library
- * Version: 7.1
- *
- * Copyright (C) 1999-2008 Brian Paul All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-#ifndef FBOBJECT_H
-#define FBOBJECT_H
-
-#include "compiler.h"
-#include "glheader.h"
-
-struct gl_context;
-struct gl_texture_object;
-
-extern void
-_mesa_init_fbobjects(struct gl_context *ctx);
-
-extern struct gl_framebuffer *
-_mesa_get_incomplete_framebuffer(void);
-
-extern struct gl_renderbuffer *
-_mesa_lookup_renderbuffer(struct gl_context *ctx, GLuint id);
-
-extern struct gl_framebuffer *
-_mesa_lookup_framebuffer(struct gl_context *ctx, GLuint id);
-
-extern struct gl_renderbuffer_attachment *
-_mesa_get_attachment(struct gl_context *ctx, struct gl_framebuffer *fb,
- GLenum attachment);
-
-
-/** Return the texture image for a renderbuffer attachment */
-static INLINE struct gl_texture_image *
-_mesa_get_attachment_teximage(struct gl_renderbuffer_attachment *att)
-{
- assert(att->Type == GL_TEXTURE);
- return att->Texture->Image[att->CubeMapFace][att->TextureLevel];
-}
-
-
-/** Return the (const) texture image for a renderbuffer attachment */
-static INLINE const struct gl_texture_image *
-_mesa_get_attachment_teximage_const(const struct gl_renderbuffer_attachment *att)
-{
- assert(att->Type == GL_TEXTURE);
- return att->Texture->Image[att->CubeMapFace][att->TextureLevel];
-}
-
-
-extern void
-_mesa_remove_attachment(struct gl_context *ctx,
- struct gl_renderbuffer_attachment *att);
-
-extern void
-_mesa_set_texture_attachment(struct gl_context *ctx,
- struct gl_framebuffer *fb,
- struct gl_renderbuffer_attachment *att,
- struct gl_texture_object *texObj,
- GLenum texTarget, GLuint level, GLuint zoffset);
-
-extern void
-_mesa_set_renderbuffer_attachment(struct gl_context *ctx,
- struct gl_renderbuffer_attachment *att,
- struct gl_renderbuffer *rb);
-
-extern void
-_mesa_framebuffer_renderbuffer(struct gl_context *ctx,
- struct gl_framebuffer *fb,
- GLenum attachment, struct gl_renderbuffer *rb);
-
-extern void
-_mesa_validate_framebuffer(struct gl_context *ctx, struct gl_framebuffer *fb);
-
-extern void
-_mesa_test_framebuffer_completeness(struct gl_context *ctx,
- struct gl_framebuffer *fb);
-
-extern GLboolean
-_mesa_is_legal_color_format(const struct gl_context *ctx, GLenum baseFormat);
-
-extern GLenum
-_mesa_base_fbo_format(struct gl_context *ctx, GLenum internalFormat);
-
-extern GLboolean GLAPIENTRY
-_mesa_IsRenderbufferEXT(GLuint renderbuffer);
-
-extern void GLAPIENTRY
-_mesa_BindRenderbufferEXT(GLenum target, GLuint renderbuffer);
-
-extern void GLAPIENTRY
-_mesa_DeleteRenderbuffersEXT(GLsizei n, const GLuint *renderbuffers);
-
-extern void GLAPIENTRY
-_mesa_GenRenderbuffersEXT(GLsizei n, GLuint *renderbuffers);
-
-extern void GLAPIENTRY
-_mesa_RenderbufferStorageEXT(GLenum target, GLenum internalformat,
- GLsizei width, GLsizei height);
-
-extern void GLAPIENTRY
-_mesa_RenderbufferStorageMultisample(GLenum target, GLsizei samples,
- GLenum internalformat,
- GLsizei width, GLsizei height);
-
-extern void GLAPIENTRY
-_es_RenderbufferStorageEXT(GLenum target, GLenum internalFormat,
- GLsizei width, GLsizei height);
-
-extern void GLAPIENTRY
-_mesa_EGLImageTargetRenderbufferStorageOES(GLenum target, GLeglImageOES image);
-
-extern void GLAPIENTRY
-_mesa_GetRenderbufferParameterivEXT(GLenum target, GLenum pname,
- GLint *params);
-
-extern GLboolean GLAPIENTRY
-_mesa_IsFramebufferEXT(GLuint framebuffer);
-
-extern void GLAPIENTRY
-_mesa_BindFramebufferEXT(GLenum target, GLuint framebuffer);
-
-extern void GLAPIENTRY
-_mesa_DeleteFramebuffersEXT(GLsizei n, const GLuint *framebuffers);
-
-extern void GLAPIENTRY
-_mesa_GenFramebuffersEXT(GLsizei n, GLuint *framebuffers);
-
-extern GLenum GLAPIENTRY
-_mesa_CheckFramebufferStatusEXT(GLenum target);
-
-extern void GLAPIENTRY
-_mesa_FramebufferTexture1DEXT(GLenum target, GLenum attachment,
- GLenum textarget, GLuint texture, GLint level);
-
-extern void GLAPIENTRY
-_mesa_FramebufferTexture2DEXT(GLenum target, GLenum attachment,
- GLenum textarget, GLuint texture, GLint level);
-
-extern void GLAPIENTRY
-_mesa_FramebufferTexture3DEXT(GLenum target, GLenum attachment,
- GLenum textarget, GLuint texture,
- GLint level, GLint zoffset);
-
-extern void GLAPIENTRY
-_mesa_FramebufferTextureLayerEXT(GLenum target, GLenum attachment,
- GLuint texture, GLint level, GLint layer);
-
-extern void GLAPIENTRY
-_mesa_FramebufferRenderbufferEXT(GLenum target, GLenum attachment,
- GLenum renderbuffertarget,
- GLuint renderbuffer);
-
-extern void GLAPIENTRY
-_mesa_GetFramebufferAttachmentParameterivEXT(GLenum target, GLenum attachment,
- GLenum pname, GLint *params);
-
-extern void GLAPIENTRY
-_mesa_GenerateMipmapEXT(GLenum target);
-
-
-extern void GLAPIENTRY
-_mesa_BlitFramebufferEXT(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1,
- GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1,
- GLbitfield mask, GLenum filter);
-
-extern void GLAPIENTRY
-_mesa_FramebufferTextureARB(GLenum target, GLenum attachment,
- GLuint texture, GLint level);
-
-extern void GLAPIENTRY
-_mesa_FramebufferTextureFaceARB(GLenum target, GLenum attachment,
- GLuint texture, GLint level, GLenum face);
-
-
-#endif /* FBOBJECT_H */
+/* + * Mesa 3-D graphics library + * Version: 7.1 + * + * Copyright (C) 1999-2008 Brian Paul All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + + +#ifndef FBOBJECT_H +#define FBOBJECT_H + +#include "compiler.h" +#include "glheader.h" + +struct gl_context; +struct gl_texture_object; + +extern void +_mesa_init_fbobjects(struct gl_context *ctx); + +extern struct gl_framebuffer * +_mesa_get_incomplete_framebuffer(void); + +extern struct gl_renderbuffer * +_mesa_lookup_renderbuffer(struct gl_context *ctx, GLuint id); + +extern struct gl_framebuffer * +_mesa_lookup_framebuffer(struct gl_context *ctx, GLuint id); + +extern struct gl_renderbuffer_attachment * +_mesa_get_attachment(struct gl_context *ctx, struct gl_framebuffer *fb, + GLenum attachment); + + +/** Return the texture image for a renderbuffer attachment */ +static inline struct gl_texture_image * +_mesa_get_attachment_teximage(struct gl_renderbuffer_attachment *att) +{ + assert(att->Type == GL_TEXTURE); + return att->Texture->Image[att->CubeMapFace][att->TextureLevel]; +} + + +/** Return the (const) texture image for a renderbuffer attachment */ +static inline const struct gl_texture_image * +_mesa_get_attachment_teximage_const(const struct gl_renderbuffer_attachment *att) +{ + assert(att->Type == GL_TEXTURE); + return att->Texture->Image[att->CubeMapFace][att->TextureLevel]; +} + + +extern void +_mesa_remove_attachment(struct gl_context *ctx, + struct gl_renderbuffer_attachment *att); + +extern void +_mesa_set_texture_attachment(struct gl_context *ctx, + struct gl_framebuffer *fb, + struct gl_renderbuffer_attachment *att, + struct gl_texture_object *texObj, + GLenum texTarget, GLuint level, GLuint zoffset); + +extern void +_mesa_set_renderbuffer_attachment(struct gl_context *ctx, + struct gl_renderbuffer_attachment *att, + struct gl_renderbuffer *rb); + +extern void +_mesa_framebuffer_renderbuffer(struct gl_context *ctx, + struct gl_framebuffer *fb, + GLenum attachment, struct gl_renderbuffer *rb); + +extern void +_mesa_validate_framebuffer(struct gl_context *ctx, struct gl_framebuffer *fb); + +extern void +_mesa_test_framebuffer_completeness(struct gl_context *ctx, + struct gl_framebuffer *fb); + +extern GLboolean +_mesa_is_legal_color_format(const struct gl_context *ctx, GLenum baseFormat); + +extern GLenum +_mesa_base_fbo_format(struct gl_context *ctx, GLenum internalFormat); + +extern GLboolean GLAPIENTRY +_mesa_IsRenderbufferEXT(GLuint renderbuffer); + +extern void GLAPIENTRY +_mesa_BindRenderbufferEXT(GLenum target, GLuint renderbuffer); + +extern void GLAPIENTRY +_mesa_DeleteRenderbuffersEXT(GLsizei n, const GLuint *renderbuffers); + +extern void GLAPIENTRY +_mesa_GenRenderbuffersEXT(GLsizei n, GLuint *renderbuffers); + +extern void GLAPIENTRY +_mesa_RenderbufferStorageEXT(GLenum target, GLenum internalformat, + GLsizei width, GLsizei height); + +extern void GLAPIENTRY +_mesa_RenderbufferStorageMultisample(GLenum target, GLsizei samples, + GLenum internalformat, + GLsizei width, GLsizei height); + +extern void GLAPIENTRY +_es_RenderbufferStorageEXT(GLenum target, GLenum internalFormat, + GLsizei width, GLsizei height); + +extern void GLAPIENTRY +_mesa_EGLImageTargetRenderbufferStorageOES(GLenum target, GLeglImageOES image); + +extern void GLAPIENTRY +_mesa_GetRenderbufferParameterivEXT(GLenum target, GLenum pname, + GLint *params); + +extern GLboolean GLAPIENTRY +_mesa_IsFramebufferEXT(GLuint framebuffer); + +extern void GLAPIENTRY +_mesa_BindFramebufferEXT(GLenum target, GLuint framebuffer); + +extern void GLAPIENTRY +_mesa_DeleteFramebuffersEXT(GLsizei n, const GLuint *framebuffers); + +extern void GLAPIENTRY +_mesa_GenFramebuffersEXT(GLsizei n, GLuint *framebuffers); + +extern GLenum GLAPIENTRY +_mesa_CheckFramebufferStatusEXT(GLenum target); + +extern void GLAPIENTRY +_mesa_FramebufferTexture1DEXT(GLenum target, GLenum attachment, + GLenum textarget, GLuint texture, GLint level); + +extern void GLAPIENTRY +_mesa_FramebufferTexture2DEXT(GLenum target, GLenum attachment, + GLenum textarget, GLuint texture, GLint level); + +extern void GLAPIENTRY +_mesa_FramebufferTexture3DEXT(GLenum target, GLenum attachment, + GLenum textarget, GLuint texture, + GLint level, GLint zoffset); + +extern void GLAPIENTRY +_mesa_FramebufferTextureLayerEXT(GLenum target, GLenum attachment, + GLuint texture, GLint level, GLint layer); + +extern void GLAPIENTRY +_mesa_FramebufferRenderbufferEXT(GLenum target, GLenum attachment, + GLenum renderbuffertarget, + GLuint renderbuffer); + +extern void GLAPIENTRY +_mesa_GetFramebufferAttachmentParameterivEXT(GLenum target, GLenum attachment, + GLenum pname, GLint *params); + +extern void GLAPIENTRY +_mesa_GenerateMipmapEXT(GLenum target); + + +extern void GLAPIENTRY +_mesa_BlitFramebufferEXT(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, + GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, + GLbitfield mask, GLenum filter); + +extern void GLAPIENTRY +_mesa_FramebufferTextureARB(GLenum target, GLenum attachment, + GLuint texture, GLint level); + +extern void GLAPIENTRY +_mesa_FramebufferTextureFaceARB(GLenum target, GLenum attachment, + GLuint texture, GLint level, GLenum face); + + +#endif /* FBOBJECT_H */ diff --git a/mesalib/src/mesa/main/feedback.c b/mesalib/src/mesa/main/feedback.c index d73aa08fa..cb5f49f67 100644 --- a/mesalib/src/mesa/main/feedback.c +++ b/mesalib/src/mesa/main/feedback.c @@ -197,7 +197,7 @@ _mesa_SelectBuffer( GLsizei size, GLuint *buffer ) * Verifies there is free space in the buffer to write the value and * increments the pointer. */ -static INLINE void +static inline void write_record(struct gl_context *ctx, GLuint value) { if (ctx->Select.BufferCount < ctx->Select.BufferSize) { diff --git a/mesalib/src/mesa/main/feedback.h b/mesalib/src/mesa/main/feedback.h index 24ce53af4..6d256ee8f 100644 --- a/mesalib/src/mesa/main/feedback.h +++ b/mesalib/src/mesa/main/feedback.h @@ -1,99 +1,99 @@ -/*
- * Mesa 3-D graphics library
- * Version: 7.5
- *
- * Copyright (C) 1999-2008 Brian Paul All Rights Reserved.
- * Copyright (C) 2009 VMware, Inc. All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-#ifndef FEEDBACK_H
-#define FEEDBACK_H
-
-
-#include "main/mfeatures.h"
-#include "main/mtypes.h"
-
-
-#if FEATURE_feedback
-
-extern void
-_mesa_feedback_vertex( struct gl_context *ctx,
- const GLfloat win[4],
- const GLfloat color[4],
- const GLfloat texcoord[4] );
-
-
-static INLINE void
-_mesa_feedback_token( struct gl_context *ctx, GLfloat token )
-{
- if (ctx->Feedback.Count < ctx->Feedback.BufferSize) {
- ctx->Feedback.Buffer[ctx->Feedback.Count] = token;
- }
- ctx->Feedback.Count++;
-}
-
-
-extern void
-_mesa_update_hitflag( struct gl_context *ctx, GLfloat z );
-
-
-extern void
-_mesa_init_feedback_dispatch(struct _glapi_table *disp);
-
-#else /* FEATURE_feedback */
-
-#include "main/compiler.h"
-
-static INLINE void
-_mesa_feedback_vertex( struct gl_context *ctx,
- const GLfloat win[4],
- const GLfloat color[4],
- const GLfloat texcoord[4] )
-{
- /* render mode is always GL_RENDER */
- ASSERT_NO_FEATURE();
-}
-
-
-static INLINE void
-_mesa_feedback_token( struct gl_context *ctx, GLfloat token )
-{
- /* render mode is always GL_RENDER */
- ASSERT_NO_FEATURE();
-}
-
-static INLINE void
-_mesa_update_hitflag( struct gl_context *ctx, GLfloat z )
-{
- /* render mode is always GL_RENDER */
- ASSERT_NO_FEATURE();
-}
-
-static INLINE void
-_mesa_init_feedback_dispatch(struct _glapi_table *disp)
-{
-}
-
-#endif /* FEATURE_feedback */
-
-extern void
-_mesa_init_feedback( struct gl_context *ctx );
-
-#endif /* FEEDBACK_H */
+/* + * Mesa 3-D graphics library + * Version: 7.5 + * + * Copyright (C) 1999-2008 Brian Paul All Rights Reserved. + * Copyright (C) 2009 VMware, Inc. All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + +#ifndef FEEDBACK_H +#define FEEDBACK_H + + +#include "main/mfeatures.h" +#include "main/mtypes.h" + + +#if FEATURE_feedback + +extern void +_mesa_feedback_vertex( struct gl_context *ctx, + const GLfloat win[4], + const GLfloat color[4], + const GLfloat texcoord[4] ); + + +static inline void +_mesa_feedback_token( struct gl_context *ctx, GLfloat token ) +{ + if (ctx->Feedback.Count < ctx->Feedback.BufferSize) { + ctx->Feedback.Buffer[ctx->Feedback.Count] = token; + } + ctx->Feedback.Count++; +} + + +extern void +_mesa_update_hitflag( struct gl_context *ctx, GLfloat z ); + + +extern void +_mesa_init_feedback_dispatch(struct _glapi_table *disp); + +#else /* FEATURE_feedback */ + +#include "main/compiler.h" + +static inline void +_mesa_feedback_vertex( struct gl_context *ctx, + const GLfloat win[4], + const GLfloat color[4], + const GLfloat texcoord[4] ) +{ + /* render mode is always GL_RENDER */ + ASSERT_NO_FEATURE(); +} + + +static inline void +_mesa_feedback_token( struct gl_context *ctx, GLfloat token ) +{ + /* render mode is always GL_RENDER */ + ASSERT_NO_FEATURE(); +} + +static inline void +_mesa_update_hitflag( struct gl_context *ctx, GLfloat z ) +{ + /* render mode is always GL_RENDER */ + ASSERT_NO_FEATURE(); +} + +static inline void +_mesa_init_feedback_dispatch(struct _glapi_table *disp) +{ +} + +#endif /* FEATURE_feedback */ + +extern void +_mesa_init_feedback( struct gl_context *ctx ); + +#endif /* FEEDBACK_H */ diff --git a/mesalib/src/mesa/main/format_unpack.c b/mesalib/src/mesa/main/format_unpack.c index dadff0556..2051f68fb 100644 --- a/mesalib/src/mesa/main/format_unpack.c +++ b/mesalib/src/mesa/main/format_unpack.c @@ -34,7 +34,7 @@ * linear RGB value in [0, 1]. * Implemented with a 256-entry lookup table. */ -static INLINE GLfloat +static inline GLfloat nonlinear_to_linear(GLubyte cs8) { static GLfloat table[256]; diff --git a/mesalib/src/mesa/main/formats.c b/mesalib/src/mesa/main/formats.c index 11d670689..02b20284b 100644 --- a/mesalib/src/mesa/main/formats.c +++ b/mesalib/src/mesa/main/formats.c @@ -756,6 +756,251 @@ static struct gl_format_info format_info[MESA_FORMAT_COUNT] = }, /* unnormalized signed int formats */ + /* unnormalized unsigned int formats */ + { + MESA_FORMAT_ALPHA_UINT8, + "MESA_FORMAT_ALPHA_UINT8", + GL_ALPHA, + GL_UNSIGNED_INT, + 0, 0, 0, 8, + 0, 0, 0, 0, 0, + 1, 1, 1 + }, + { + MESA_FORMAT_ALPHA_UINT16, + "MESA_FORMAT_ALPHA_UINT16", + GL_ALPHA, + GL_UNSIGNED_INT, + 0, 0, 0, 16, + 0, 0, 0, 0, 0, + 1, 1, 2 + }, + { + MESA_FORMAT_ALPHA_UINT32, + "MESA_FORMAT_ALPHA_UINT32", + GL_ALPHA, + GL_UNSIGNED_INT, + 0, 0, 0, 32, + 0, 0, 0, 0, 0, + 1, 1, 4 + }, + { + MESA_FORMAT_ALPHA_INT8, + "MESA_FORMAT_ALPHA_INT8", + GL_ALPHA, + GL_INT, + 0, 0, 0, 8, + 0, 0, 0, 0, 0, + 1, 1, 1 + }, + { + MESA_FORMAT_ALPHA_INT16, + "MESA_FORMAT_ALPHA_INT16", + GL_ALPHA, + GL_INT, + 0, 0, 0, 16, + 0, 0, 0, 0, 0, + 1, 1, 2 + }, + { + MESA_FORMAT_ALPHA_INT32, + "MESA_FORMAT_ALPHA_INT32", + GL_ALPHA, + GL_INT, + 0, 0, 0, 32, + 0, 0, 0, 0, 0, + 1, 1, 4 + }, + { + MESA_FORMAT_INTENSITY_UINT8, + "MESA_FORMAT_INTENSITY_UINT8", + GL_INTENSITY, + GL_UNSIGNED_INT, + 0, 0, 0, 0, + 0, 8, 0, 0, 0, + 1, 1, 1 + }, + { + MESA_FORMAT_INTENSITY_UINT16, + "MESA_FORMAT_INTENSITY_UINT16", + GL_INTENSITY, + GL_UNSIGNED_INT, + 0, 0, 0, 0, + 0, 16, 0, 0, 0, + 1, 1, 2 + }, + { + MESA_FORMAT_INTENSITY_UINT32, + "MESA_FORMAT_INTENSITY_UINT32", + GL_INTENSITY, + GL_UNSIGNED_INT, + 0, 0, 0, 0, + 0, 32, 0, 0, 0, + 1, 1, 4 + }, + { + MESA_FORMAT_INTENSITY_INT8, + "MESA_FORMAT_INTENSITY_INT8", + GL_INTENSITY, + GL_INT, + 0, 0, 0, 0, + 0, 8, 0, 0, 0, + 1, 1, 1 + }, + { + MESA_FORMAT_INTENSITY_INT16, + "MESA_FORMAT_INTENSITY_INT16", + GL_INTENSITY, + GL_INT, + 0, 0, 0, 0, + 0, 16, 0, 0, 0, + 1, 1, 2 + }, + { + MESA_FORMAT_INTENSITY_INT32, + "MESA_FORMAT_INTENSITY_INT32", + GL_INTENSITY, + GL_INT, + 0, 0, 0, 0, + 0, 32, 0, 0, 0, + 1, 1, 4 + }, + { + MESA_FORMAT_LUMINANCE_UINT8, + "MESA_FORMAT_LUMINANCE_UINT8", + GL_LUMINANCE, + GL_UNSIGNED_INT, + 0, 0, 0, 0, + 8, 0, 0, 0, 0, + 1, 1, 1 + }, + { + MESA_FORMAT_LUMINANCE_UINT16, + "MESA_FORMAT_LUMINANCE_UINT16", + GL_LUMINANCE, + GL_UNSIGNED_INT, + 0, 0, 0, 0, + 16, 0, 0, 0, 0, + 1, 1, 2 + }, + { + MESA_FORMAT_LUMINANCE_UINT32, + "MESA_FORMAT_LUMINANCE_UINT32", + GL_LUMINANCE, + GL_UNSIGNED_INT, + 0, 0, 0, 0, + 32, 0, 0, 0, 0, + 1, 1, 4 + }, + { + MESA_FORMAT_LUMINANCE_INT8, + "MESA_FORMAT_LUMINANCE_INT8", + GL_LUMINANCE, + GL_INT, + 0, 0, 0, 0, + 8, 0, 0, 0, 0, + 1, 1, 1 + }, + { + MESA_FORMAT_LUMINANCE_INT16, + "MESA_FORMAT_LUMINANCE_INT16", + GL_LUMINANCE, + GL_INT, + 0, 0, 0, 0, + 16, 0, 0, 0, 0, + 1, 1, 2 + }, + { + MESA_FORMAT_LUMINANCE_INT32, + "MESA_FORMAT_LUMINANCE_INT32", + GL_LUMINANCE, + GL_INT, + 0, 0, 0, 0, + 32, 0, 0, 0, 0, + 1, 1, 4 + }, + { + MESA_FORMAT_LUMINANCE_ALPHA_UINT8, + "MESA_FORMAT_LUMINANCE_ALPHA_UINT8", + GL_LUMINANCE_ALPHA, + GL_UNSIGNED_INT, + 0, 0, 0, 8, + 8, 0, 0, 0, 0, + 1, 1, 2 + }, + { + MESA_FORMAT_LUMINANCE_ALPHA_UINT16, + "MESA_FORMAT_LUMINANCE_ALPHA_UINT16", + GL_LUMINANCE_ALPHA, + GL_UNSIGNED_INT, + 0, 0, 0, 16, + 16, 0, 0, 0, 0, + 1, 1, 4 + }, + { + MESA_FORMAT_LUMINANCE_ALPHA_UINT32, + "MESA_FORMAT_LUMINANCE_ALPHA_UINT32", + GL_LUMINANCE_ALPHA, + GL_UNSIGNED_INT, + 0, 0, 0, 32, + 32, 0, 0, 0, 0, + 1, 1, 8 + }, + { + MESA_FORMAT_LUMINANCE_ALPHA_INT8, + "MESA_FORMAT_LUMINANCE_ALPHA_INT8", + GL_LUMINANCE_ALPHA, + GL_INT, + 0, 0, 0, 8, + 8, 0, 0, 0, 0, + 1, 1, 2 + }, + { + MESA_FORMAT_LUMINANCE_ALPHA_INT16, + "MESA_FORMAT_LUMINANCE_ALPHA_INT16", + GL_LUMINANCE_ALPHA, + GL_INT, + 0, 0, 0, 16, + 16, 0, 0, 0, 0, + 1, 1, 4 + }, + { + MESA_FORMAT_LUMINANCE_ALPHA_INT32, + "MESA_FORMAT_LUMINANCE_ALPHA_INT32", + GL_LUMINANCE_ALPHA, + GL_INT, + 0, 0, 0, 32, + 32, 0, 0, 0, 0, + 1, 1, 8 + }, + + { + MESA_FORMAT_R_INT8, + "MESA_FORMAT_R_INT8", + GL_RED, + GL_INT, + 8, 0, 0, 0, + 0, 0, 0, 0, 0, + 1, 1, 1 + }, + { + MESA_FORMAT_RG_INT8, + "MESA_FORMAT_RG_INT8", + GL_RG, + GL_INT, + 8, 8, 0, 0, + 0, 0, 0, 0, 0, + 1, 1, 2 + }, + { + MESA_FORMAT_RGB_INT8, + "MESA_FORMAT_RGB_INT8", + GL_RGB, + GL_INT, + 8, 8, 8, 0, + 0, 0, 0, 0, 0, + 1, 1, 3 + }, { MESA_FORMAT_RGBA_INT8, "MESA_FORMAT_RGBA_INT8", @@ -766,6 +1011,33 @@ static struct gl_format_info format_info[MESA_FORMAT_COUNT] = 1, 1, 4 }, { + MESA_FORMAT_R_INT16, + "MESA_FORMAT_R_INT16", + GL_RED, + GL_INT, + 16, 0, 0, 0, + 0, 0, 0, 0, 0, + 1, 1, 2 + }, + { + MESA_FORMAT_RG_INT16, + "MESA_FORMAT_RG_INT16", + GL_RG, + GL_INT, + 16, 16, 0, 0, + 0, 0, 0, 0, 0, + 1, 1, 4 + }, + { + MESA_FORMAT_RGB_INT16, + "MESA_FORMAT_RGB_INT16", + GL_RGB, + GL_INT, + 16, 16, 16, 0, + 0, 0, 0, 0, 0, + 1, 1, 6 + }, + { MESA_FORMAT_RGBA_INT16, "MESA_FORMAT_RGBA_INT16", GL_RGBA, @@ -775,6 +1047,33 @@ static struct gl_format_info format_info[MESA_FORMAT_COUNT] = 1, 1, 8 }, { + MESA_FORMAT_R_INT32, + "MESA_FORMAT_R_INT32", + GL_RED, + GL_INT, + 32, 0, 0, 0, + 0, 0, 0, 0, 0, + 1, 1, 4 + }, + { + MESA_FORMAT_RG_INT32, + "MESA_FORMAT_RG_INT32", + GL_RG, + GL_INT, + 32, 32, 0, 0, + 0, 0, 0, 0, 0, + 1, 1, 8 + }, + { + MESA_FORMAT_RGB_INT32, + "MESA_FORMAT_RGB_INT32", + GL_RGB, + GL_INT, + 32, 32, 32, 0, + 0, 0, 0, 0, 0, + 1, 1, 12 + }, + { MESA_FORMAT_RGBA_INT32, "MESA_FORMAT_RGBA_INT32", GL_RGBA, @@ -783,8 +1082,33 @@ static struct gl_format_info format_info[MESA_FORMAT_COUNT] = 0, 0, 0, 0, 0, 1, 1, 16 }, - - /* unnormalized unsigned int formats */ + { + MESA_FORMAT_R_UINT8, + "MESA_FORMAT_R_UINT8", + GL_RED, + GL_UNSIGNED_INT, + 8, 0, 0, 0, + 0, 0, 0, 0, 0, + 1, 1, 1 + }, + { + MESA_FORMAT_RG_UINT8, + "MESA_FORMAT_RG_UINT8", + GL_RG, + GL_UNSIGNED_INT, + 8, 8, 0, 0, + 0, 0, 0, 0, 0, + 1, 1, 2 + }, + { + MESA_FORMAT_RGB_UINT8, + "MESA_FORMAT_RGB_UINT8", + GL_RGB, + GL_UNSIGNED_INT, + 8, 8, 8, 0, + 0, 0, 0, 0, 0, + 1, 1, 3 + }, { MESA_FORMAT_RGBA_UINT8, "MESA_FORMAT_RGBA_UINT8", @@ -795,6 +1119,33 @@ static struct gl_format_info format_info[MESA_FORMAT_COUNT] = 1, 1, 4 }, { + MESA_FORMAT_R_UINT16, + "MESA_FORMAT_R_UINT16", + GL_RED, + GL_UNSIGNED_INT, + 16, 0, 0, 0, + 0, 0, 0, 0, 0, + 1, 1, 2 + }, + { + MESA_FORMAT_RG_UINT16, + "MESA_FORMAT_RG_UINT16", + GL_RG, + GL_UNSIGNED_INT, + 16, 16, 0, 0, + 0, 0, 0, 0, 0, + 1, 1, 4 + }, + { + MESA_FORMAT_RGB_UINT16, + "MESA_FORMAT_RGB_UINT16", + GL_RGB, + GL_UNSIGNED_INT, + 16, 16, 16, 0, + 0, 0, 0, 0, 0, + 1, 1, 6 + }, + { MESA_FORMAT_RGBA_UINT16, "MESA_FORMAT_RGBA_UINT16", GL_RGBA, @@ -804,6 +1155,33 @@ static struct gl_format_info format_info[MESA_FORMAT_COUNT] = 1, 1, 8 }, { + MESA_FORMAT_R_UINT32, + "MESA_FORMAT_R_UINT32", + GL_RED, + GL_UNSIGNED_INT, + 32, 0, 0, 0, + 0, 0, 0, 0, 0, + 1, 1, 4 + }, + { + MESA_FORMAT_RG_UINT32, + "MESA_FORMAT_RG_UINT32", + GL_RG, + GL_UNSIGNED_INT, + 32, 32, 0, 0, + 0, 0, 0, 0, 0, + 1, 1, 8 + }, + { + MESA_FORMAT_RGB_UINT32, + "MESA_FORMAT_RGB_UINT32", + GL_RGB, + GL_UNSIGNED_INT, + 32, 32, 32, 0, + 0, 0, 0, 0, 0, + 1, 1, 12 + }, + { MESA_FORMAT_RGBA_UINT32, "MESA_FORMAT_RGBA_UINT32", GL_RGBA, @@ -1876,14 +2254,114 @@ _mesa_format_to_type_and_comps(gl_format format, *comps = 1; return; + case MESA_FORMAT_ALPHA_UINT8: + case MESA_FORMAT_LUMINANCE_UINT8: + case MESA_FORMAT_INTENSITY_UINT8: + *datatype = GL_UNSIGNED_BYTE; + *comps = 1; + return; + case MESA_FORMAT_LUMINANCE_ALPHA_UINT8: + *datatype = GL_UNSIGNED_BYTE; + *comps = 2; + return; + + case MESA_FORMAT_ALPHA_UINT16: + case MESA_FORMAT_LUMINANCE_UINT16: + case MESA_FORMAT_INTENSITY_UINT16: + *datatype = GL_UNSIGNED_SHORT; + *comps = 1; + return; + case MESA_FORMAT_LUMINANCE_ALPHA_UINT16: + *datatype = GL_UNSIGNED_SHORT; + *comps = 2; + return; + case MESA_FORMAT_ALPHA_UINT32: + case MESA_FORMAT_LUMINANCE_UINT32: + case MESA_FORMAT_INTENSITY_UINT32: + *datatype = GL_UNSIGNED_INT; + *comps = 1; + return; + case MESA_FORMAT_LUMINANCE_ALPHA_UINT32: + *datatype = GL_UNSIGNED_INT; + *comps = 2; + return; + case MESA_FORMAT_ALPHA_INT8: + case MESA_FORMAT_LUMINANCE_INT8: + case MESA_FORMAT_INTENSITY_INT8: + *datatype = GL_BYTE; + *comps = 1; + return; + case MESA_FORMAT_LUMINANCE_ALPHA_INT8: + *datatype = GL_BYTE; + *comps = 2; + return; + + case MESA_FORMAT_ALPHA_INT16: + case MESA_FORMAT_LUMINANCE_INT16: + case MESA_FORMAT_INTENSITY_INT16: + *datatype = GL_SHORT; + *comps = 1; + return; + case MESA_FORMAT_LUMINANCE_ALPHA_INT16: + *datatype = GL_SHORT; + *comps = 2; + return; + + case MESA_FORMAT_ALPHA_INT32: + case MESA_FORMAT_LUMINANCE_INT32: + case MESA_FORMAT_INTENSITY_INT32: + *datatype = GL_INT; + *comps = 1; + return; + case MESA_FORMAT_LUMINANCE_ALPHA_INT32: + *datatype = GL_INT; + *comps = 2; + return; + + case MESA_FORMAT_R_INT8: + *datatype = GL_BYTE; + *comps = 1; + return; + case MESA_FORMAT_RG_INT8: + *datatype = GL_BYTE; + *comps = 2; + return; + case MESA_FORMAT_RGB_INT8: + *datatype = GL_BYTE; + *comps = 3; + return; case MESA_FORMAT_RGBA_INT8: *datatype = GL_BYTE; *comps = 4; return; + case MESA_FORMAT_R_INT16: + *datatype = GL_SHORT; + *comps = 1; + return; + case MESA_FORMAT_RG_INT16: + *datatype = GL_SHORT; + *comps = 2; + return; + case MESA_FORMAT_RGB_INT16: + *datatype = GL_SHORT; + *comps = 3; + return; case MESA_FORMAT_RGBA_INT16: *datatype = GL_SHORT; *comps = 4; return; + case MESA_FORMAT_R_INT32: + *datatype = GL_INT; + *comps = 1; + return; + case MESA_FORMAT_RG_INT32: + *datatype = GL_INT; + *comps = 2; + return; + case MESA_FORMAT_RGB_INT32: + *datatype = GL_INT; + *comps = 3; + return; case MESA_FORMAT_RGBA_INT32: *datatype = GL_INT; *comps = 4; @@ -1892,14 +2370,50 @@ _mesa_format_to_type_and_comps(gl_format format, /** * \name Non-normalized unsigned integer formats. */ + case MESA_FORMAT_R_UINT8: + *datatype = GL_UNSIGNED_BYTE; + *comps = 1; + return; + case MESA_FORMAT_RG_UINT8: + *datatype = GL_UNSIGNED_BYTE; + *comps = 2; + return; + case MESA_FORMAT_RGB_UINT8: + *datatype = GL_UNSIGNED_BYTE; + *comps = 3; + return; case MESA_FORMAT_RGBA_UINT8: *datatype = GL_UNSIGNED_BYTE; *comps = 4; return; + case MESA_FORMAT_R_UINT16: + *datatype = GL_UNSIGNED_SHORT; + *comps = 1; + return; + case MESA_FORMAT_RG_UINT16: + *datatype = GL_UNSIGNED_SHORT; + *comps = 2; + return; + case MESA_FORMAT_RGB_UINT16: + *datatype = GL_UNSIGNED_SHORT; + *comps = 3; + return; case MESA_FORMAT_RGBA_UINT16: *datatype = GL_UNSIGNED_SHORT; *comps = 4; return; + case MESA_FORMAT_R_UINT32: + *datatype = GL_UNSIGNED_INT; + *comps = 1; + return; + case MESA_FORMAT_RG_UINT32: + *datatype = GL_UNSIGNED_INT; + *comps = 2; + return; + case MESA_FORMAT_RGB_UINT32: + *datatype = GL_UNSIGNED_INT; + *comps = 3; + return; case MESA_FORMAT_RGBA_UINT32: *datatype = GL_UNSIGNED_INT; *comps = 4; diff --git a/mesalib/src/mesa/main/formats.h b/mesalib/src/mesa/main/formats.h index 610204cb3..12758f03e 100644 --- a/mesalib/src/mesa/main/formats.h +++ b/mesalib/src/mesa/main/formats.h @@ -152,15 +152,61 @@ typedef enum * XXX Note: these are just stand-ins for some better hardware * formats TBD such as BGRA or ARGB. */ + MESA_FORMAT_ALPHA_UINT8, + MESA_FORMAT_ALPHA_UINT16, + MESA_FORMAT_ALPHA_UINT32, + MESA_FORMAT_ALPHA_INT8, + MESA_FORMAT_ALPHA_INT16, + MESA_FORMAT_ALPHA_INT32, + + MESA_FORMAT_INTENSITY_UINT8, + MESA_FORMAT_INTENSITY_UINT16, + MESA_FORMAT_INTENSITY_UINT32, + MESA_FORMAT_INTENSITY_INT8, + MESA_FORMAT_INTENSITY_INT16, + MESA_FORMAT_INTENSITY_INT32, + + MESA_FORMAT_LUMINANCE_UINT8, + MESA_FORMAT_LUMINANCE_UINT16, + MESA_FORMAT_LUMINANCE_UINT32, + MESA_FORMAT_LUMINANCE_INT8, + MESA_FORMAT_LUMINANCE_INT16, + MESA_FORMAT_LUMINANCE_INT32, + + MESA_FORMAT_LUMINANCE_ALPHA_UINT8, + MESA_FORMAT_LUMINANCE_ALPHA_UINT16, + MESA_FORMAT_LUMINANCE_ALPHA_UINT32, + MESA_FORMAT_LUMINANCE_ALPHA_INT8, + MESA_FORMAT_LUMINANCE_ALPHA_INT16, + MESA_FORMAT_LUMINANCE_ALPHA_INT32, + + MESA_FORMAT_R_INT8, + MESA_FORMAT_RG_INT8, + MESA_FORMAT_RGB_INT8, MESA_FORMAT_RGBA_INT8, + MESA_FORMAT_R_INT16, + MESA_FORMAT_RG_INT16, + MESA_FORMAT_RGB_INT16, MESA_FORMAT_RGBA_INT16, + MESA_FORMAT_R_INT32, + MESA_FORMAT_RG_INT32, + MESA_FORMAT_RGB_INT32, MESA_FORMAT_RGBA_INT32, /** * \name Non-normalized unsigned integer formats. */ + MESA_FORMAT_R_UINT8, + MESA_FORMAT_RG_UINT8, + MESA_FORMAT_RGB_UINT8, MESA_FORMAT_RGBA_UINT8, + MESA_FORMAT_R_UINT16, + MESA_FORMAT_RG_UINT16, + MESA_FORMAT_RGB_UINT16, MESA_FORMAT_RGBA_UINT16, + MESA_FORMAT_R_UINT32, + MESA_FORMAT_RG_UINT32, + MESA_FORMAT_RGB_UINT32, MESA_FORMAT_RGBA_UINT32, /* msb <------ TEXEL BITS -----------> lsb */ diff --git a/mesalib/src/mesa/main/framebuffer.h b/mesalib/src/mesa/main/framebuffer.h index b2b29a7a1..7aef3e02b 100644 --- a/mesalib/src/mesa/main/framebuffer.h +++ b/mesalib/src/mesa/main/framebuffer.h @@ -54,7 +54,7 @@ extern void _mesa_reference_framebuffer_(struct gl_framebuffer **ptr, struct gl_framebuffer *fb); -static INLINE void +static inline void _mesa_reference_framebuffer(struct gl_framebuffer **ptr, struct gl_framebuffer *fb) { diff --git a/mesalib/src/mesa/main/get.c b/mesalib/src/mesa/main/get.c index 9c1771e16..a869133a1 100644 --- a/mesalib/src/mesa/main/get.c +++ b/mesalib/src/mesa/main/get.c @@ -326,6 +326,7 @@ EXTRA_EXT2(ARB_fragment_program, NV_fragment_program); EXTRA_EXT2(ARB_vertex_program, NV_vertex_program); EXTRA_EXT2(ARB_vertex_program, ARB_fragment_program); EXTRA_EXT(ARB_geometry_shader4); +EXTRA_EXT(ARB_color_buffer_float); EXTRA_EXT(ARB_copy_buffer); EXTRA_EXT(EXT_framebuffer_sRGB); EXTRA_EXT(ARB_texture_buffer_object); @@ -481,6 +482,11 @@ static const struct value_desc values[] = { /* GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB - not supported */ { GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB, LOC_CUSTOM, TYPE_INT, 0, NO_EXTRA }, + /* GL_ARB_color_buffer_float */ + { GL_CLAMP_VERTEX_COLOR, CONTEXT_ENUM(Light.ClampVertexColor), extra_ARB_color_buffer_float }, + { GL_CLAMP_FRAGMENT_COLOR, CONTEXT_ENUM(Color.ClampFragmentColor), extra_ARB_color_buffer_float }, + { GL_CLAMP_READ_COLOR, CONTEXT_ENUM(Color.ClampReadColor), extra_ARB_color_buffer_float }, + /* GL_ARB_copy_buffer */ { GL_COPY_READ_BUFFER, LOC_CUSTOM, TYPE_INT, 0, extra_ARB_copy_buffer }, { GL_COPY_WRITE_BUFFER, LOC_CUSTOM, TYPE_INT, 0, extra_ARB_copy_buffer }, @@ -683,6 +689,27 @@ static const struct value_desc values[] = { /* GL_ARB_draw_buffers */ { GL_MAX_DRAW_BUFFERS_ARB, CONTEXT_INT(Const.MaxDrawBuffers), NO_EXTRA }, + /* GL_EXT_framebuffer_object / GL_NV_fbo_color_attachments */ + { GL_MAX_COLOR_ATTACHMENTS, CONTEXT_INT(Const.MaxColorAttachments), + extra_EXT_framebuffer_object }, + + /* GL_ARB_draw_buffers / GL_NV_draw_buffers (for ES 2.0) */ + { GL_DRAW_BUFFER0_ARB, BUFFER_ENUM(ColorDrawBuffer[0]), NO_EXTRA }, + { GL_DRAW_BUFFER1_ARB, BUFFER_ENUM(ColorDrawBuffer[1]), + extra_valid_draw_buffer }, + { GL_DRAW_BUFFER2_ARB, BUFFER_ENUM(ColorDrawBuffer[2]), + extra_valid_draw_buffer }, + { GL_DRAW_BUFFER3_ARB, BUFFER_ENUM(ColorDrawBuffer[3]), + extra_valid_draw_buffer }, + { GL_DRAW_BUFFER4_ARB, BUFFER_ENUM(ColorDrawBuffer[4]), + extra_valid_draw_buffer }, + { GL_DRAW_BUFFER5_ARB, BUFFER_ENUM(ColorDrawBuffer[5]), + extra_valid_draw_buffer }, + { GL_DRAW_BUFFER6_ARB, BUFFER_ENUM(ColorDrawBuffer[6]), + extra_valid_draw_buffer }, + { GL_DRAW_BUFFER7_ARB, BUFFER_ENUM(ColorDrawBuffer[7]), + extra_valid_draw_buffer }, + { GL_BLEND_COLOR_EXT, LOC_CUSTOM, TYPE_FLOATN_4, 0, extra_new_frag_clamp }, /* GL_ARB_fragment_program */ { GL_MAX_TEXTURE_IMAGE_UNITS_ARB, /* == GL_MAX_TEXTURE_IMAGE_UNITS_NV */ @@ -1119,23 +1146,6 @@ static const struct value_desc values[] = { { GL_DEPTH_CLAMP, CONTEXT_BOOL(Transform.DepthClamp), extra_ARB_depth_clamp }, - /* GL_ARB_draw_buffers */ - { GL_DRAW_BUFFER0_ARB, BUFFER_ENUM(ColorDrawBuffer[0]), NO_EXTRA }, - { GL_DRAW_BUFFER1_ARB, BUFFER_ENUM(ColorDrawBuffer[1]), - extra_valid_draw_buffer }, - { GL_DRAW_BUFFER2_ARB, BUFFER_ENUM(ColorDrawBuffer[2]), - extra_valid_draw_buffer }, - { GL_DRAW_BUFFER3_ARB, BUFFER_ENUM(ColorDrawBuffer[3]), - extra_valid_draw_buffer }, - { GL_DRAW_BUFFER4_ARB, BUFFER_ENUM(ColorDrawBuffer[4]), - extra_valid_draw_buffer }, - { GL_DRAW_BUFFER5_ARB, BUFFER_ENUM(ColorDrawBuffer[5]), - extra_valid_draw_buffer }, - { GL_DRAW_BUFFER6_ARB, BUFFER_ENUM(ColorDrawBuffer[6]), - extra_valid_draw_buffer }, - { GL_DRAW_BUFFER7_ARB, BUFFER_ENUM(ColorDrawBuffer[7]), - extra_valid_draw_buffer }, - /* GL_ATI_fragment_shader */ { GL_NUM_FRAGMENT_REGISTERS_ATI, CONST(6), extra_ATI_fragment_shader }, { GL_NUM_FRAGMENT_CONSTANTS_ATI, CONST(8), extra_ATI_fragment_shader }, @@ -1147,10 +1157,6 @@ static const struct value_desc values[] = { { GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI, CONST(3), extra_ATI_fragment_shader }, - /* GL_EXT_framebuffer_object */ - { GL_MAX_COLOR_ATTACHMENTS_EXT, CONTEXT_INT(Const.MaxColorAttachments), - extra_EXT_framebuffer_object }, - /* GL_EXT_framebuffer_blit * NOTE: GL_DRAW_FRAMEBUFFER_BINDING_EXT == GL_FRAMEBUFFER_BINDING_EXT */ { GL_READ_FRAMEBUFFER_BINDING_EXT, LOC_CUSTOM, TYPE_INT, 0, diff --git a/mesalib/src/mesa/main/hash.c b/mesalib/src/mesa/main/hash.c index 63f5c90fa..4b250ad54 100644 --- a/mesalib/src/mesa/main/hash.c +++ b/mesalib/src/mesa/main/hash.c @@ -1,547 +1,547 @@ -/**
- * \file hash.c
- * Generic hash table.
- *
- * Used for display lists, texture objects, vertex/fragment programs,
- * buffer objects, etc. The hash functions are thread-safe.
- *
- * \note key=0 is illegal.
- *
- * \author Brian Paul
- */
-
-/*
- * Mesa 3-D graphics library
- * Version: 6.5.1
- *
- * Copyright (C) 1999-2006 Brian Paul All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-#include "glheader.h"
-#include "imports.h"
-#include "glapi/glthread.h"
-#include "hash.h"
-
-
-#define TABLE_SIZE 1023 /**< Size of lookup table/array */
-
-#define HASH_FUNC(K) ((K) % TABLE_SIZE)
-
-
-/**
- * An entry in the hash table.
- */
-struct HashEntry {
- GLuint Key; /**< the entry's key */
- void *Data; /**< the entry's data */
- struct HashEntry *Next; /**< pointer to next entry */
-};
-
-
-/**
- * The hash table data structure.
- */
-struct _mesa_HashTable {
- struct HashEntry *Table[TABLE_SIZE]; /**< the lookup table */
- GLuint MaxKey; /**< highest key inserted so far */
- _glthread_Mutex Mutex; /**< mutual exclusion lock */
- _glthread_Mutex WalkMutex; /**< for _mesa_HashWalk() */
- GLboolean InDeleteAll; /**< Debug check */
-};
-
-
-
-/**
- * Create a new hash table.
- *
- * \return pointer to a new, empty hash table.
- */
-struct _mesa_HashTable *
-_mesa_NewHashTable(void)
-{
- struct _mesa_HashTable *table = CALLOC_STRUCT(_mesa_HashTable);
- if (table) {
- _glthread_INIT_MUTEX(table->Mutex);
- _glthread_INIT_MUTEX(table->WalkMutex);
- }
- return table;
-}
-
-
-
-/**
- * Delete a hash table.
- * Frees each entry on the hash table and then the hash table structure itself.
- * Note that the caller should have already traversed the table and deleted
- * the objects in the table (i.e. We don't free the entries' data pointer).
- *
- * \param table the hash table to delete.
- */
-void
-_mesa_DeleteHashTable(struct _mesa_HashTable *table)
-{
- GLuint pos;
- assert(table);
- for (pos = 0; pos < TABLE_SIZE; pos++) {
- struct HashEntry *entry = table->Table[pos];
- while (entry) {
- struct HashEntry *next = entry->Next;
- if (entry->Data) {
- _mesa_problem(NULL,
- "In _mesa_DeleteHashTable, found non-freed data");
- }
- free(entry);
- entry = next;
- }
- }
- _glthread_DESTROY_MUTEX(table->Mutex);
- _glthread_DESTROY_MUTEX(table->WalkMutex);
- free(table);
-}
-
-
-
-/**
- * Lookup an entry in the hash table, without locking.
- * \sa _mesa_HashLookup
- */
-static INLINE void *
-_mesa_HashLookup_unlocked(struct _mesa_HashTable *table, GLuint key)
-{
- GLuint pos;
- const struct HashEntry *entry;
-
- assert(table);
- assert(key);
-
- pos = HASH_FUNC(key);
- entry = table->Table[pos];
- while (entry) {
- if (entry->Key == key) {
- return entry->Data;
- }
- entry = entry->Next;
- }
- return NULL;
-}
-
-
-/**
- * Lookup an entry in the hash table.
- *
- * \param table the hash table.
- * \param key the key.
- *
- * \return pointer to user's data or NULL if key not in table
- */
-void *
-_mesa_HashLookup(struct _mesa_HashTable *table, GLuint key)
-{
- void *res;
- assert(table);
- _glthread_LOCK_MUTEX(table->Mutex);
- res = _mesa_HashLookup_unlocked(table, key);
- _glthread_UNLOCK_MUTEX(table->Mutex);
- return res;
-}
-
-
-/**
- * Insert a key/pointer pair into the hash table.
- * If an entry with this key already exists we'll replace the existing entry.
- *
- * \param table the hash table.
- * \param key the key (not zero).
- * \param data pointer to user data.
- */
-void
-_mesa_HashInsert(struct _mesa_HashTable *table, GLuint key, void *data)
-{
- /* search for existing entry with this key */
- GLuint pos;
- struct HashEntry *entry;
-
- assert(table);
- assert(key);
-
- _glthread_LOCK_MUTEX(table->Mutex);
-
- if (key > table->MaxKey)
- table->MaxKey = key;
-
- pos = HASH_FUNC(key);
-
- /* check if replacing an existing entry with same key */
- for (entry = table->Table[pos]; entry; entry = entry->Next) {
- if (entry->Key == key) {
- /* replace entry's data */
-#if 0 /* not sure this check is always valid */
- if (entry->Data) {
- _mesa_problem(NULL, "Memory leak detected in _mesa_HashInsert");
- }
-#endif
- entry->Data = data;
- _glthread_UNLOCK_MUTEX(table->Mutex);
- return;
- }
- }
-
- /* alloc and insert new table entry */
- entry = MALLOC_STRUCT(HashEntry);
- if (entry) {
- entry->Key = key;
- entry->Data = data;
- entry->Next = table->Table[pos];
- table->Table[pos] = entry;
- }
-
- _glthread_UNLOCK_MUTEX(table->Mutex);
-}
-
-
-
-/**
- * Remove an entry from the hash table.
- *
- * \param table the hash table.
- * \param key key of entry to remove.
- *
- * While holding the hash table's lock, searches the entry with the matching
- * key and unlinks it.
- */
-void
-_mesa_HashRemove(struct _mesa_HashTable *table, GLuint key)
-{
- GLuint pos;
- struct HashEntry *entry, *prev;
-
- assert(table);
- assert(key);
-
- /* have to check this outside of mutex lock */
- if (table->InDeleteAll) {
- _mesa_problem(NULL, "_mesa_HashRemove illegally called from "
- "_mesa_HashDeleteAll callback function");
- return;
- }
-
- _glthread_LOCK_MUTEX(table->Mutex);
-
- pos = HASH_FUNC(key);
- prev = NULL;
- entry = table->Table[pos];
- while (entry) {
- if (entry->Key == key) {
- /* found it! */
- if (prev) {
- prev->Next = entry->Next;
- }
- else {
- table->Table[pos] = entry->Next;
- }
- free(entry);
- _glthread_UNLOCK_MUTEX(table->Mutex);
- return;
- }
- prev = entry;
- entry = entry->Next;
- }
-
- _glthread_UNLOCK_MUTEX(table->Mutex);
-}
-
-
-
-/**
- * Delete all entries in a hash table, but don't delete the table itself.
- * Invoke the given callback function for each table entry.
- *
- * \param table the hash table to delete
- * \param callback the callback function
- * \param userData arbitrary pointer to pass along to the callback
- * (this is typically a struct gl_context pointer)
- */
-void
-_mesa_HashDeleteAll(struct _mesa_HashTable *table,
- void (*callback)(GLuint key, void *data, void *userData),
- void *userData)
-{
- GLuint pos;
- ASSERT(table);
- ASSERT(callback);
- _glthread_LOCK_MUTEX(table->Mutex);
- table->InDeleteAll = GL_TRUE;
- for (pos = 0; pos < TABLE_SIZE; pos++) {
- struct HashEntry *entry, *next;
- for (entry = table->Table[pos]; entry; entry = next) {
- callback(entry->Key, entry->Data, userData);
- next = entry->Next;
- free(entry);
- }
- table->Table[pos] = NULL;
- }
- table->InDeleteAll = GL_FALSE;
- _glthread_UNLOCK_MUTEX(table->Mutex);
-}
-
-
-/**
- * Walk over all entries in a hash table, calling callback function for each.
- * Note: we use a separate mutex in this function to avoid a recursive
- * locking deadlock (in case the callback calls _mesa_HashRemove()) and to
- * prevent multiple threads/contexts from getting tangled up.
- * A lock-less version of this function could be used when the table will
- * not be modified.
- * \param table the hash table to walk
- * \param callback the callback function
- * \param userData arbitrary pointer to pass along to the callback
- * (this is typically a struct gl_context pointer)
- */
-void
-_mesa_HashWalk(const struct _mesa_HashTable *table,
- void (*callback)(GLuint key, void *data, void *userData),
- void *userData)
-{
- /* cast-away const */
- struct _mesa_HashTable *table2 = (struct _mesa_HashTable *) table;
- GLuint pos;
- ASSERT(table);
- ASSERT(callback);
- _glthread_LOCK_MUTEX(table2->WalkMutex);
- for (pos = 0; pos < TABLE_SIZE; pos++) {
- struct HashEntry *entry, *next;
- for (entry = table->Table[pos]; entry; entry = next) {
- /* save 'next' pointer now in case the callback deletes the entry */
- next = entry->Next;
- callback(entry->Key, entry->Data, userData);
- }
- }
- _glthread_UNLOCK_MUTEX(table2->WalkMutex);
-}
-
-
-/**
- * Return the key of the "first" entry in the hash table.
- * While holding the lock, walks through all table positions until finding
- * the first entry of the first non-empty one.
- *
- * \param table the hash table
- * \return key for the "first" entry in the hash table.
- */
-GLuint
-_mesa_HashFirstEntry(struct _mesa_HashTable *table)
-{
- GLuint pos;
- assert(table);
- _glthread_LOCK_MUTEX(table->Mutex);
- for (pos = 0; pos < TABLE_SIZE; pos++) {
- if (table->Table[pos]) {
- _glthread_UNLOCK_MUTEX(table->Mutex);
- return table->Table[pos]->Key;
- }
- }
- _glthread_UNLOCK_MUTEX(table->Mutex);
- return 0;
-}
-
-
-/**
- * Given a hash table key, return the next key. This is used to walk
- * over all entries in the table. Note that the keys returned during
- * walking won't be in any particular order.
- * \return next hash key or 0 if end of table.
- */
-GLuint
-_mesa_HashNextEntry(const struct _mesa_HashTable *table, GLuint key)
-{
- const struct HashEntry *entry;
- GLuint pos;
-
- assert(table);
- assert(key);
-
- /* Find the entry with given key */
- pos = HASH_FUNC(key);
- for (entry = table->Table[pos]; entry ; entry = entry->Next) {
- if (entry->Key == key) {
- break;
- }
- }
-
- if (!entry) {
- /* the given key was not found, so we can't find the next entry */
- return 0;
- }
-
- if (entry->Next) {
- /* return next in linked list */
- return entry->Next->Key;
- }
- else {
- /* look for next non-empty table slot */
- pos++;
- while (pos < TABLE_SIZE) {
- if (table->Table[pos]) {
- return table->Table[pos]->Key;
- }
- pos++;
- }
- return 0;
- }
-}
-
-
-/**
- * Dump contents of hash table for debugging.
- *
- * \param table the hash table.
- */
-void
-_mesa_HashPrint(const struct _mesa_HashTable *table)
-{
- GLuint pos;
- assert(table);
- for (pos = 0; pos < TABLE_SIZE; pos++) {
- const struct HashEntry *entry = table->Table[pos];
- while (entry) {
- _mesa_debug(NULL, "%u %p\n", entry->Key, entry->Data);
- entry = entry->Next;
- }
- }
-}
-
-
-
-/**
- * Find a block of adjacent unused hash keys.
- *
- * \param table the hash table.
- * \param numKeys number of keys needed.
- *
- * \return Starting key of free block or 0 if failure.
- *
- * If there are enough free keys between the maximum key existing in the table
- * (_mesa_HashTable::MaxKey) and the maximum key possible, then simply return
- * the adjacent key. Otherwise do a full search for a free key block in the
- * allowable key range.
- */
-GLuint
-_mesa_HashFindFreeKeyBlock(struct _mesa_HashTable *table, GLuint numKeys)
-{
- const GLuint maxKey = ~((GLuint) 0);
- _glthread_LOCK_MUTEX(table->Mutex);
- if (maxKey - numKeys > table->MaxKey) {
- /* the quick solution */
- _glthread_UNLOCK_MUTEX(table->Mutex);
- return table->MaxKey + 1;
- }
- else {
- /* the slow solution */
- GLuint freeCount = 0;
- GLuint freeStart = 1;
- GLuint key;
- for (key = 1; key != maxKey; key++) {
- if (_mesa_HashLookup_unlocked(table, key)) {
- /* darn, this key is already in use */
- freeCount = 0;
- freeStart = key+1;
- }
- else {
- /* this key not in use, check if we've found enough */
- freeCount++;
- if (freeCount == numKeys) {
- _glthread_UNLOCK_MUTEX(table->Mutex);
- return freeStart;
- }
- }
- }
- /* cannot allocate a block of numKeys consecutive keys */
- _glthread_UNLOCK_MUTEX(table->Mutex);
- return 0;
- }
-}
-
-
-#if 0 /* debug only */
-
-/**
- * Test walking over all the entries in a hash table.
- */
-static void
-test_hash_walking(void)
-{
- struct _mesa_HashTable *t = _mesa_NewHashTable();
- const GLuint limit = 50000;
- GLuint i;
-
- /* create some entries */
- for (i = 0; i < limit; i++) {
- GLuint dummy;
- GLuint k = (rand() % (limit * 10)) + 1;
- while (_mesa_HashLookup(t, k)) {
- /* id already in use, try another */
- k = (rand() % (limit * 10)) + 1;
- }
- _mesa_HashInsert(t, k, &dummy);
- }
-
- /* walk over all entries */
- {
- GLuint k = _mesa_HashFirstEntry(t);
- GLuint count = 0;
- while (k) {
- GLuint knext = _mesa_HashNextEntry(t, k);
- assert(knext != k);
- _mesa_HashRemove(t, k);
- count++;
- k = knext;
- }
- assert(count == limit);
- k = _mesa_HashFirstEntry(t);
- assert(k==0);
- }
-
- _mesa_DeleteHashTable(t);
-}
-
-
-void
-_mesa_test_hash_functions(void)
-{
- int a, b, c;
- struct _mesa_HashTable *t;
-
- t = _mesa_NewHashTable();
- _mesa_HashInsert(t, 501, &a);
- _mesa_HashInsert(t, 10, &c);
- _mesa_HashInsert(t, 0xfffffff8, &b);
- /*_mesa_HashPrint(t);*/
-
- assert(_mesa_HashLookup(t,501));
- assert(!_mesa_HashLookup(t,1313));
- assert(_mesa_HashFindFreeKeyBlock(t, 100));
-
- _mesa_DeleteHashTable(t);
-
- test_hash_walking();
-}
-
-#endif
+/** + * \file hash.c + * Generic hash table. + * + * Used for display lists, texture objects, vertex/fragment programs, + * buffer objects, etc. The hash functions are thread-safe. + * + * \note key=0 is illegal. + * + * \author Brian Paul + */ + +/* + * Mesa 3-D graphics library + * Version: 6.5.1 + * + * Copyright (C) 1999-2006 Brian Paul All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + + +#include "glheader.h" +#include "imports.h" +#include "glapi/glthread.h" +#include "hash.h" + + +#define TABLE_SIZE 1023 /**< Size of lookup table/array */ + +#define HASH_FUNC(K) ((K) % TABLE_SIZE) + + +/** + * An entry in the hash table. + */ +struct HashEntry { + GLuint Key; /**< the entry's key */ + void *Data; /**< the entry's data */ + struct HashEntry *Next; /**< pointer to next entry */ +}; + + +/** + * The hash table data structure. + */ +struct _mesa_HashTable { + struct HashEntry *Table[TABLE_SIZE]; /**< the lookup table */ + GLuint MaxKey; /**< highest key inserted so far */ + _glthread_Mutex Mutex; /**< mutual exclusion lock */ + _glthread_Mutex WalkMutex; /**< for _mesa_HashWalk() */ + GLboolean InDeleteAll; /**< Debug check */ +}; + + + +/** + * Create a new hash table. + * + * \return pointer to a new, empty hash table. + */ +struct _mesa_HashTable * +_mesa_NewHashTable(void) +{ + struct _mesa_HashTable *table = CALLOC_STRUCT(_mesa_HashTable); + if (table) { + _glthread_INIT_MUTEX(table->Mutex); + _glthread_INIT_MUTEX(table->WalkMutex); + } + return table; +} + + + +/** + * Delete a hash table. + * Frees each entry on the hash table and then the hash table structure itself. + * Note that the caller should have already traversed the table and deleted + * the objects in the table (i.e. We don't free the entries' data pointer). + * + * \param table the hash table to delete. + */ +void +_mesa_DeleteHashTable(struct _mesa_HashTable *table) +{ + GLuint pos; + assert(table); + for (pos = 0; pos < TABLE_SIZE; pos++) { + struct HashEntry *entry = table->Table[pos]; + while (entry) { + struct HashEntry *next = entry->Next; + if (entry->Data) { + _mesa_problem(NULL, + "In _mesa_DeleteHashTable, found non-freed data"); + } + free(entry); + entry = next; + } + } + _glthread_DESTROY_MUTEX(table->Mutex); + _glthread_DESTROY_MUTEX(table->WalkMutex); + free(table); +} + + + +/** + * Lookup an entry in the hash table, without locking. + * \sa _mesa_HashLookup + */ +static inline void * +_mesa_HashLookup_unlocked(struct _mesa_HashTable *table, GLuint key) +{ + GLuint pos; + const struct HashEntry *entry; + + assert(table); + assert(key); + + pos = HASH_FUNC(key); + entry = table->Table[pos]; + while (entry) { + if (entry->Key == key) { + return entry->Data; + } + entry = entry->Next; + } + return NULL; +} + + +/** + * Lookup an entry in the hash table. + * + * \param table the hash table. + * \param key the key. + * + * \return pointer to user's data or NULL if key not in table + */ +void * +_mesa_HashLookup(struct _mesa_HashTable *table, GLuint key) +{ + void *res; + assert(table); + _glthread_LOCK_MUTEX(table->Mutex); + res = _mesa_HashLookup_unlocked(table, key); + _glthread_UNLOCK_MUTEX(table->Mutex); + return res; +} + + +/** + * Insert a key/pointer pair into the hash table. + * If an entry with this key already exists we'll replace the existing entry. + * + * \param table the hash table. + * \param key the key (not zero). + * \param data pointer to user data. + */ +void +_mesa_HashInsert(struct _mesa_HashTable *table, GLuint key, void *data) +{ + /* search for existing entry with this key */ + GLuint pos; + struct HashEntry *entry; + + assert(table); + assert(key); + + _glthread_LOCK_MUTEX(table->Mutex); + + if (key > table->MaxKey) + table->MaxKey = key; + + pos = HASH_FUNC(key); + + /* check if replacing an existing entry with same key */ + for (entry = table->Table[pos]; entry; entry = entry->Next) { + if (entry->Key == key) { + /* replace entry's data */ +#if 0 /* not sure this check is always valid */ + if (entry->Data) { + _mesa_problem(NULL, "Memory leak detected in _mesa_HashInsert"); + } +#endif + entry->Data = data; + _glthread_UNLOCK_MUTEX(table->Mutex); + return; + } + } + + /* alloc and insert new table entry */ + entry = MALLOC_STRUCT(HashEntry); + if (entry) { + entry->Key = key; + entry->Data = data; + entry->Next = table->Table[pos]; + table->Table[pos] = entry; + } + + _glthread_UNLOCK_MUTEX(table->Mutex); +} + + + +/** + * Remove an entry from the hash table. + * + * \param table the hash table. + * \param key key of entry to remove. + * + * While holding the hash table's lock, searches the entry with the matching + * key and unlinks it. + */ +void +_mesa_HashRemove(struct _mesa_HashTable *table, GLuint key) +{ + GLuint pos; + struct HashEntry *entry, *prev; + + assert(table); + assert(key); + + /* have to check this outside of mutex lock */ + if (table->InDeleteAll) { + _mesa_problem(NULL, "_mesa_HashRemove illegally called from " + "_mesa_HashDeleteAll callback function"); + return; + } + + _glthread_LOCK_MUTEX(table->Mutex); + + pos = HASH_FUNC(key); + prev = NULL; + entry = table->Table[pos]; + while (entry) { + if (entry->Key == key) { + /* found it! */ + if (prev) { + prev->Next = entry->Next; + } + else { + table->Table[pos] = entry->Next; + } + free(entry); + _glthread_UNLOCK_MUTEX(table->Mutex); + return; + } + prev = entry; + entry = entry->Next; + } + + _glthread_UNLOCK_MUTEX(table->Mutex); +} + + + +/** + * Delete all entries in a hash table, but don't delete the table itself. + * Invoke the given callback function for each table entry. + * + * \param table the hash table to delete + * \param callback the callback function + * \param userData arbitrary pointer to pass along to the callback + * (this is typically a struct gl_context pointer) + */ +void +_mesa_HashDeleteAll(struct _mesa_HashTable *table, + void (*callback)(GLuint key, void *data, void *userData), + void *userData) +{ + GLuint pos; + ASSERT(table); + ASSERT(callback); + _glthread_LOCK_MUTEX(table->Mutex); + table->InDeleteAll = GL_TRUE; + for (pos = 0; pos < TABLE_SIZE; pos++) { + struct HashEntry *entry, *next; + for (entry = table->Table[pos]; entry; entry = next) { + callback(entry->Key, entry->Data, userData); + next = entry->Next; + free(entry); + } + table->Table[pos] = NULL; + } + table->InDeleteAll = GL_FALSE; + _glthread_UNLOCK_MUTEX(table->Mutex); +} + + +/** + * Walk over all entries in a hash table, calling callback function for each. + * Note: we use a separate mutex in this function to avoid a recursive + * locking deadlock (in case the callback calls _mesa_HashRemove()) and to + * prevent multiple threads/contexts from getting tangled up. + * A lock-less version of this function could be used when the table will + * not be modified. + * \param table the hash table to walk + * \param callback the callback function + * \param userData arbitrary pointer to pass along to the callback + * (this is typically a struct gl_context pointer) + */ +void +_mesa_HashWalk(const struct _mesa_HashTable *table, + void (*callback)(GLuint key, void *data, void *userData), + void *userData) +{ + /* cast-away const */ + struct _mesa_HashTable *table2 = (struct _mesa_HashTable *) table; + GLuint pos; + ASSERT(table); + ASSERT(callback); + _glthread_LOCK_MUTEX(table2->WalkMutex); + for (pos = 0; pos < TABLE_SIZE; pos++) { + struct HashEntry *entry, *next; + for (entry = table->Table[pos]; entry; entry = next) { + /* save 'next' pointer now in case the callback deletes the entry */ + next = entry->Next; + callback(entry->Key, entry->Data, userData); + } + } + _glthread_UNLOCK_MUTEX(table2->WalkMutex); +} + + +/** + * Return the key of the "first" entry in the hash table. + * While holding the lock, walks through all table positions until finding + * the first entry of the first non-empty one. + * + * \param table the hash table + * \return key for the "first" entry in the hash table. + */ +GLuint +_mesa_HashFirstEntry(struct _mesa_HashTable *table) +{ + GLuint pos; + assert(table); + _glthread_LOCK_MUTEX(table->Mutex); + for (pos = 0; pos < TABLE_SIZE; pos++) { + if (table->Table[pos]) { + _glthread_UNLOCK_MUTEX(table->Mutex); + return table->Table[pos]->Key; + } + } + _glthread_UNLOCK_MUTEX(table->Mutex); + return 0; +} + + +/** + * Given a hash table key, return the next key. This is used to walk + * over all entries in the table. Note that the keys returned during + * walking won't be in any particular order. + * \return next hash key or 0 if end of table. + */ +GLuint +_mesa_HashNextEntry(const struct _mesa_HashTable *table, GLuint key) +{ + const struct HashEntry *entry; + GLuint pos; + + assert(table); + assert(key); + + /* Find the entry with given key */ + pos = HASH_FUNC(key); + for (entry = table->Table[pos]; entry ; entry = entry->Next) { + if (entry->Key == key) { + break; + } + } + + if (!entry) { + /* the given key was not found, so we can't find the next entry */ + return 0; + } + + if (entry->Next) { + /* return next in linked list */ + return entry->Next->Key; + } + else { + /* look for next non-empty table slot */ + pos++; + while (pos < TABLE_SIZE) { + if (table->Table[pos]) { + return table->Table[pos]->Key; + } + pos++; + } + return 0; + } +} + + +/** + * Dump contents of hash table for debugging. + * + * \param table the hash table. + */ +void +_mesa_HashPrint(const struct _mesa_HashTable *table) +{ + GLuint pos; + assert(table); + for (pos = 0; pos < TABLE_SIZE; pos++) { + const struct HashEntry *entry = table->Table[pos]; + while (entry) { + _mesa_debug(NULL, "%u %p\n", entry->Key, entry->Data); + entry = entry->Next; + } + } +} + + + +/** + * Find a block of adjacent unused hash keys. + * + * \param table the hash table. + * \param numKeys number of keys needed. + * + * \return Starting key of free block or 0 if failure. + * + * If there are enough free keys between the maximum key existing in the table + * (_mesa_HashTable::MaxKey) and the maximum key possible, then simply return + * the adjacent key. Otherwise do a full search for a free key block in the + * allowable key range. + */ +GLuint +_mesa_HashFindFreeKeyBlock(struct _mesa_HashTable *table, GLuint numKeys) +{ + const GLuint maxKey = ~((GLuint) 0); + _glthread_LOCK_MUTEX(table->Mutex); + if (maxKey - numKeys > table->MaxKey) { + /* the quick solution */ + _glthread_UNLOCK_MUTEX(table->Mutex); + return table->MaxKey + 1; + } + else { + /* the slow solution */ + GLuint freeCount = 0; + GLuint freeStart = 1; + GLuint key; + for (key = 1; key != maxKey; key++) { + if (_mesa_HashLookup_unlocked(table, key)) { + /* darn, this key is already in use */ + freeCount = 0; + freeStart = key+1; + } + else { + /* this key not in use, check if we've found enough */ + freeCount++; + if (freeCount == numKeys) { + _glthread_UNLOCK_MUTEX(table->Mutex); + return freeStart; + } + } + } + /* cannot allocate a block of numKeys consecutive keys */ + _glthread_UNLOCK_MUTEX(table->Mutex); + return 0; + } +} + + +#if 0 /* debug only */ + +/** + * Test walking over all the entries in a hash table. + */ +static void +test_hash_walking(void) +{ + struct _mesa_HashTable *t = _mesa_NewHashTable(); + const GLuint limit = 50000; + GLuint i; + + /* create some entries */ + for (i = 0; i < limit; i++) { + GLuint dummy; + GLuint k = (rand() % (limit * 10)) + 1; + while (_mesa_HashLookup(t, k)) { + /* id already in use, try another */ + k = (rand() % (limit * 10)) + 1; + } + _mesa_HashInsert(t, k, &dummy); + } + + /* walk over all entries */ + { + GLuint k = _mesa_HashFirstEntry(t); + GLuint count = 0; + while (k) { + GLuint knext = _mesa_HashNextEntry(t, k); + assert(knext != k); + _mesa_HashRemove(t, k); + count++; + k = knext; + } + assert(count == limit); + k = _mesa_HashFirstEntry(t); + assert(k==0); + } + + _mesa_DeleteHashTable(t); +} + + +void +_mesa_test_hash_functions(void) +{ + int a, b, c; + struct _mesa_HashTable *t; + + t = _mesa_NewHashTable(); + _mesa_HashInsert(t, 501, &a); + _mesa_HashInsert(t, 10, &c); + _mesa_HashInsert(t, 0xfffffff8, &b); + /*_mesa_HashPrint(t);*/ + + assert(_mesa_HashLookup(t,501)); + assert(!_mesa_HashLookup(t,1313)); + assert(_mesa_HashFindFreeKeyBlock(t, 100)); + + _mesa_DeleteHashTable(t); + + test_hash_walking(); +} + +#endif diff --git a/mesalib/src/mesa/main/histogram.h b/mesalib/src/mesa/main/histogram.h index f9c7310fe..d97e74abb 100644 --- a/mesalib/src/mesa/main/histogram.h +++ b/mesalib/src/mesa/main/histogram.h @@ -1,58 +1,58 @@ -/**
- * \file histogram.h
- * Histogram.
- *
- * \if subset
- * (No-op)
- *
- * \endif
- */
-
-/*
- * Mesa 3-D graphics library
- * Version: 5.1
- *
- * Copyright (C) 1999-2003 Brian Paul All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-#ifndef HISTOGRAM_H
-#define HISTOGRAM_H
-
-#include "compiler.h"
-#include "mfeatures.h"
-
-struct _glapi_table;
-
-#if FEATURE_histogram
-
-extern void
-_mesa_init_histogram_dispatch(struct _glapi_table *disp);
-
-#else /* FEATURE_histogram */
-
-static INLINE void
-_mesa_init_histogram_dispatch(struct _glapi_table *disp)
-{
-}
-
-#endif /* FEATURE_histogram */
-
-#endif /* HISTOGRAM_H */
+/** + * \file histogram.h + * Histogram. + * + * \if subset + * (No-op) + * + * \endif + */ + +/* + * Mesa 3-D graphics library + * Version: 5.1 + * + * Copyright (C) 1999-2003 Brian Paul All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + + +#ifndef HISTOGRAM_H +#define HISTOGRAM_H + +#include "compiler.h" +#include "mfeatures.h" + +struct _glapi_table; + +#if FEATURE_histogram + +extern void +_mesa_init_histogram_dispatch(struct _glapi_table *disp); + +#else /* FEATURE_histogram */ + +static inline void +_mesa_init_histogram_dispatch(struct _glapi_table *disp) +{ +} + +#endif /* FEATURE_histogram */ + +#endif /* HISTOGRAM_H */ diff --git a/mesalib/src/mesa/main/image.c b/mesalib/src/mesa/main/image.c index 15f7812e6..7d95dd6be 100644 --- a/mesalib/src/mesa/main/image.c +++ b/mesalib/src/mesa/main/image.c @@ -1756,7 +1756,7 @@ _mesa_clip_to_region(GLint xmin, GLint ymin, /** * Clip dst coords against Xmax (or Ymax). */ -static INLINE void +static inline void clip_right_or_top(GLint *srcX0, GLint *srcX1, GLint *dstX0, GLint *dstX1, GLint maxValue) @@ -1789,7 +1789,7 @@ clip_right_or_top(GLint *srcX0, GLint *srcX1, /** * Clip dst coords against Xmin (or Ymin). */ -static INLINE void +static inline void clip_left_or_bottom(GLint *srcX0, GLint *srcX1, GLint *dstX0, GLint *dstX1, GLint minValue) diff --git a/mesalib/src/mesa/main/imports.h b/mesalib/src/mesa/main/imports.h index 70defdc43..5fb5581ef 100644 --- a/mesalib/src/mesa/main/imports.h +++ b/mesalib/src/mesa/main/imports.h @@ -153,13 +153,13 @@ typedef union { GLfloat f; GLint i; } fi_type; #endif #if defined(_MSC_VER) -static INLINE float truncf(float x) { return x < 0.0f ? ceilf(x) : floorf(x); } -static INLINE float exp2f(float x) { return powf(2.0f, x); } -static INLINE float log2f(float x) { return logf(x) * 1.442695041f; } -static INLINE float asinhf(float x) { return logf(x + sqrtf(x * x + 1.0f)); } -static INLINE float acoshf(float x) { return logf(x + sqrtf(x * x - 1.0f)); } -static INLINE float atanhf(float x) { return (logf(1.0f + x) - logf(1.0f - x)) / 2.0f; } -static INLINE int isblank(int ch) { return ch == ' ' || ch == '\t'; } +static inline float truncf(float x) { return x < 0.0f ? ceilf(x) : floorf(x); } +static inline float exp2f(float x) { return powf(2.0f, x); } +static inline float log2f(float x) { return logf(x) * 1.442695041f; } +static inline float asinhf(float x) { return logf(x + sqrtf(x * x + 1.0f)); } +static inline float acoshf(float x) { return logf(x + sqrtf(x * x - 1.0f)); } +static inline float atanhf(float x) { return (logf(1.0f + x) - logf(1.0f - x)) / 2.0f; } +static inline int isblank(int ch) { return ch == ' ' || ch == '\t'; } #define strtoll(p, e, b) _strtoi64(p, e, b) #endif /*@}*/ @@ -172,7 +172,7 @@ static INLINE int isblank(int ch) { return ch == ' ' || ch == '\t'; } /* This is pretty fast, but not accurate enough (only 2 fractional bits). * Based on code from http://www.stereopsis.com/log2.html */ -static INLINE GLfloat LOG2(GLfloat x) +static inline GLfloat LOG2(GLfloat x) { const GLfloat y = x * x * x * x; const GLuint ix = *((GLuint *) &y); @@ -184,7 +184,7 @@ static INLINE GLfloat LOG2(GLfloat x) /* Pretty fast, and accurate. * Based on code from http://www.flipcode.com/totd/ */ -static INLINE GLfloat LOG2(GLfloat val) +static inline GLfloat LOG2(GLfloat val) { fi_type num; GLint log_2; @@ -208,7 +208,7 @@ static INLINE GLfloat LOG2(GLfloat val) *** IS_INF_OR_NAN: test if float is infinite or NaN ***/ #ifdef USE_IEEE -static INLINE int IS_INF_OR_NAN( float x ) +static inline int IS_INF_OR_NAN( float x ) { fi_type tmp; tmp.f = x; @@ -231,7 +231,7 @@ static INLINE int IS_INF_OR_NAN( float x ) *** IS_NEGATIVE: test if float is negative ***/ #if defined(USE_IEEE) -static INLINE int GET_FLOAT_BITS( float x ) +static inline int GET_FLOAT_BITS( float x ) { fi_type fi; fi.f = x; @@ -289,7 +289,7 @@ static INLINE int GET_FLOAT_BITS( float x ) *** IROUND: return (as an integer) float rounded to nearest integer ***/ #if defined(USE_X86_ASM) && defined(__GNUC__) && defined(__i386__) -static INLINE int iround(float f) +static inline int iround(float f) { int r; __asm__ ("fistpl %0" : "=m" (r) : "t" (f) : "st"); @@ -297,7 +297,7 @@ static INLINE int iround(float f) } #define IROUND(x) iround(x) #elif defined(USE_X86_ASM) && defined(_MSC_VER) -static INLINE int iround(float f) +static inline int iround(float f) { int r; _asm { @@ -344,7 +344,7 @@ long iround(float f); * but uses some IEEE specific tricks for better speed. * Contributed by Josh Vanderhoof */ -static INLINE int ifloor(float f) +static inline int ifloor(float f) { int ai, bi; double af, bf; @@ -357,7 +357,7 @@ static INLINE int ifloor(float f) } #define IFLOOR(x) ifloor(x) #elif defined(USE_IEEE) -static INLINE int ifloor(float f) +static inline int ifloor(float f) { int ai, bi; double af, bf; @@ -371,7 +371,7 @@ static INLINE int ifloor(float f) } #define IFLOOR(x) ifloor(x) #else -static INLINE int ifloor(float f) +static inline int ifloor(float f) { int i = IROUND(f); return (i > f) ? i - 1 : i; @@ -391,7 +391,7 @@ static INLINE int ifloor(float f) * but uses some IEEE specific tricks for better speed. * Contributed by Josh Vanderhoof */ -static INLINE int iceil(float f) +static inline int iceil(float f) { int ai, bi; double af, bf; @@ -404,7 +404,7 @@ static INLINE int iceil(float f) } #define ICEIL(x) iceil(x) #elif defined(USE_IEEE) -static INLINE int iceil(float f) +static inline int iceil(float f) { int ai, bi; double af, bf; @@ -417,7 +417,7 @@ static INLINE int iceil(float f) } #define ICEIL(x) iceil(x) #else -static INLINE int iceil(float f) +static inline int iceil(float f) { int i = IROUND(f); return (i < f) ? i + 1 : i; @@ -429,7 +429,7 @@ static INLINE int iceil(float f) /** * Is x a power of two? */ -static INLINE int +static inline int _mesa_is_pow_two(int x) { return !(x & (x - 1)); @@ -449,7 +449,7 @@ _mesa_is_pow_two(int x) * results would be different depending on optimization * level used for build. */ -static INLINE int32_t +static inline int32_t _mesa_next_pow_two_32(uint32_t x) { #if defined(__GNUC__) && \ @@ -468,7 +468,7 @@ _mesa_next_pow_two_32(uint32_t x) #endif } -static INLINE int64_t +static inline int64_t _mesa_next_pow_two_64(uint64_t x) { #if defined(__GNUC__) && \ @@ -495,7 +495,7 @@ _mesa_next_pow_two_64(uint64_t x) /* * Returns the floor form of binary logarithm for a 32-bit integer. */ -static INLINE GLuint +static inline GLuint _mesa_logbase2(GLuint n) { #if defined(__GNUC__) && \ @@ -516,7 +516,7 @@ _mesa_logbase2(GLuint n) /** * Return 1 if this is a little endian machine, 0 if big endian. */ -static INLINE GLboolean +static inline GLboolean _mesa_little_endian(void) { const GLuint ui = 1; /* intentionally not static */ diff --git a/mesalib/src/mesa/main/mipmap.c b/mesalib/src/mesa/main/mipmap.c index 1ead5ee10..c2f922674 100644 --- a/mesalib/src/mesa/main/mipmap.c +++ b/mesalib/src/mesa/main/mipmap.c @@ -47,9 +47,9 @@ bytes_per_pixel(GLenum datatype, GLuint comps) assert(b >= 0); if (_mesa_type_is_packed(datatype)) - return b; + return b; else - return b * comps; + return b * comps; } @@ -1414,8 +1414,6 @@ make_2d_mipmap(GLenum datatype, GLuint comps, GLint border, const GLint srcWidthNB = srcWidth - 2 * border; /* sizes w/out border */ const GLint dstWidthNB = dstWidth - 2 * border; const GLint dstHeightNB = dstHeight - 2 * border; - const GLint srcRowBytes = bpt * srcRowStride; - const GLint dstRowBytes = bpt * dstRowStride; const GLubyte *srcA, *srcB; GLubyte *dst; GLint row, srcRowStep; @@ -1424,7 +1422,7 @@ make_2d_mipmap(GLenum datatype, GLuint comps, GLint border, srcA = srcPtr + border * ((srcWidth + 1) * bpt); if (srcHeight > 1 && srcHeight > dstHeight) { /* sample from two source rows */ - srcB = srcA + srcRowBytes; + srcB = srcA + srcRowStride; srcRowStep = 2; } else { @@ -1438,9 +1436,9 @@ make_2d_mipmap(GLenum datatype, GLuint comps, GLint border, for (row = 0; row < dstHeightNB; row++) { do_row(datatype, comps, srcWidthNB, srcA, srcB, dstWidthNB, dst); - srcA += srcRowStep * srcRowBytes; - srcB += srcRowStep * srcRowBytes; - dst += dstRowBytes; + srcA += srcRowStep * srcRowStride; + srcB += srcRowStep * srcRowStride; + dst += dstRowStride; } /* This is ugly but probably won't be used much */ @@ -1500,9 +1498,9 @@ make_2d_mipmap(GLenum datatype, GLuint comps, GLint border, static void make_3d_mipmap(GLenum datatype, GLuint comps, GLint border, GLint srcWidth, GLint srcHeight, GLint srcDepth, - const GLubyte *srcPtr, GLint srcRowStride, + const GLubyte **srcPtr, GLint srcRowStride, GLint dstWidth, GLint dstHeight, GLint dstDepth, - GLubyte *dstPtr, GLint dstRowStride) + GLubyte **dstPtr, GLint dstRowStride) { const GLint bpt = bytes_per_pixel(datatype, comps); const GLint srcWidthNB = srcWidth - 2 * border; /* sizes w/out border */ @@ -1525,7 +1523,7 @@ make_3d_mipmap(GLenum datatype, GLuint comps, GLint border, bytesPerDstRow = dstWidth * bpt; /* Offset between adjacent src images to be averaged together */ - srcImageOffset = (srcDepth == dstDepth) ? 0 : bytesPerSrcImage; + srcImageOffset = (srcDepth == dstDepth) ? 0 : 1; /* Offset between adjacent src rows to be averaged together */ srcRowOffset = (srcHeight == dstHeight) ? 0 : srcWidth * bpt; @@ -1545,15 +1543,15 @@ make_3d_mipmap(GLenum datatype, GLuint comps, GLint border, for (img = 0; img < dstDepthNB; img++) { /* first source image pointer, skipping border */ - const GLubyte *imgSrcA = srcPtr - + (bytesPerSrcImage + bytesPerSrcRow + border) * bpt * border - + img * (bytesPerSrcImage + srcImageOffset); + const GLubyte *imgSrcA = srcPtr[img * 2 + border] + + bytesPerSrcRow * border + bpt * border; /* second source image pointer, skipping border */ - const GLubyte *imgSrcB = imgSrcA + srcImageOffset; + const GLubyte *imgSrcB = srcPtr[img * 2 + srcImageOffset + border] + + bytesPerSrcRow * border + bpt * border; + /* address of the dest image, skipping border */ - GLubyte *imgDst = dstPtr - + (bytesPerDstImage + bytesPerDstRow + border) * bpt * border - + img * bytesPerDstImage; + GLubyte *imgDst = dstPtr[img + border] + + bytesPerDstRow * border + bpt * border; /* setup the four source row pointers and the dest row pointer */ const GLubyte *srcImgARowA = imgSrcA; @@ -1581,13 +1579,14 @@ make_3d_mipmap(GLenum datatype, GLuint comps, GLint border, /* Luckily we can leverage the make_2d_mipmap() function here! */ if (border > 0) { /* do front border image */ - make_2d_mipmap(datatype, comps, 1, srcWidth, srcHeight, srcPtr, srcRowStride, - dstWidth, dstHeight, dstPtr, dstRowStride); + make_2d_mipmap(datatype, comps, 1, + srcWidth, srcHeight, srcPtr[0], srcRowStride, + dstWidth, dstHeight, dstPtr[0], dstRowStride); /* do back border image */ - make_2d_mipmap(datatype, comps, 1, srcWidth, srcHeight, - srcPtr + bytesPerSrcImage * (srcDepth - 1), srcRowStride, - dstWidth, dstHeight, - dstPtr + bytesPerDstImage * (dstDepth - 1), dstRowStride); + make_2d_mipmap(datatype, comps, 1, + srcWidth, srcHeight, srcPtr[srcDepth - 1], srcRowStride, + dstWidth, dstHeight, dstPtr[dstDepth - 1], dstRowStride); + /* do four remaining border edges that span the image slices */ if (srcDepth == dstDepth) { /* just copy border pixels from src to dst */ @@ -1596,29 +1595,23 @@ make_3d_mipmap(GLenum datatype, GLuint comps, GLint border, GLubyte *dst; /* do border along [img][row=0][col=0] */ - src = srcPtr + (img + 1) * bytesPerSrcImage; - dst = dstPtr + (img + 1) * bytesPerDstImage; + src = srcPtr[img * 2]; + dst = dstPtr[img]; memcpy(dst, src, bpt); /* do border along [img][row=dstHeight-1][col=0] */ - src = srcPtr + (img * 2 + 1) * bytesPerSrcImage - + (srcHeight - 1) * bytesPerSrcRow; - dst = dstPtr + (img + 1) * bytesPerDstImage - + (dstHeight - 1) * bytesPerDstRow; + src = srcPtr[img * 2] + (srcHeight - 1) * bytesPerSrcRow; + dst = dstPtr[img] + (dstHeight - 1) * bytesPerDstRow; memcpy(dst, src, bpt); /* do border along [img][row=0][col=dstWidth-1] */ - src = srcPtr + (img * 2 + 1) * bytesPerSrcImage - + (srcWidth - 1) * bpt; - dst = dstPtr + (img + 1) * bytesPerDstImage - + (dstWidth - 1) * bpt; + src = srcPtr[img * 2] + (srcWidth - 1) * bpt; + dst = dstPtr[img] + (dstWidth - 1) * bpt; memcpy(dst, src, bpt); /* do border along [img][row=dstHeight-1][col=dstWidth-1] */ - src = srcPtr + (img * 2 + 1) * bytesPerSrcImage - + (bytesPerSrcImage - bpt); - dst = dstPtr + (img + 1) * bytesPerDstImage - + (bytesPerDstImage - bpt); + src = srcPtr[img * 2] + (bytesPerSrcImage - bpt); + dst = dstPtr[img] + (bytesPerDstImage - bpt); memcpy(dst, src, bpt); } } @@ -1626,170 +1619,34 @@ make_3d_mipmap(GLenum datatype, GLuint comps, GLint border, /* average border pixels from adjacent src image pairs */ ASSERT(srcDepthNB == 2 * dstDepthNB); for (img = 0; img < dstDepthNB; img++) { - const GLubyte *src; + const GLubyte *srcA, *srcB; GLubyte *dst; /* do border along [img][row=0][col=0] */ - src = srcPtr + (img * 2 + 1) * bytesPerSrcImage; - dst = dstPtr + (img + 1) * bytesPerDstImage; - do_row(datatype, comps, 1, src, src + srcImageOffset, 1, dst); + srcA = srcPtr[img * 2 + 0]; + srcB = srcPtr[img * 2 + srcImageOffset]; + dst = dstPtr[img]; + do_row(datatype, comps, 1, srcA, srcB, 1, dst); /* do border along [img][row=dstHeight-1][col=0] */ - src = srcPtr + (img * 2 + 1) * bytesPerSrcImage - + (srcHeight - 1) * bytesPerSrcRow; - dst = dstPtr + (img + 1) * bytesPerDstImage - + (dstHeight - 1) * bytesPerDstRow; - do_row(datatype, comps, 1, src, src + srcImageOffset, 1, dst); + srcA = srcPtr[img * 2 + 0] + + (srcHeight - 1) * bytesPerSrcRow; + srcB = srcPtr[img * 2 + srcImageOffset] + + (srcHeight - 1) * bytesPerSrcRow; + dst = dstPtr[img] + (dstHeight - 1) * bytesPerDstRow; + do_row(datatype, comps, 1, srcA, srcB, 1, dst); /* do border along [img][row=0][col=dstWidth-1] */ - src = srcPtr + (img * 2 + 1) * bytesPerSrcImage - + (srcWidth - 1) * bpt; - dst = dstPtr + (img + 1) * bytesPerDstImage - + (dstWidth - 1) * bpt; - do_row(datatype, comps, 1, src, src + srcImageOffset, 1, dst); + srcA = srcPtr[img * 2 + 0] + (srcWidth - 1) * bpt; + srcB = srcPtr[img * 2 + srcImageOffset] + (srcWidth - 1) * bpt; + dst = dstPtr[img] + (dstWidth - 1) * bpt; + do_row(datatype, comps, 1, srcA, srcB, 1, dst); /* do border along [img][row=dstHeight-1][col=dstWidth-1] */ - src = srcPtr + (img * 2 + 1) * bytesPerSrcImage - + (bytesPerSrcImage - bpt); - dst = dstPtr + (img + 1) * bytesPerDstImage - + (bytesPerDstImage - bpt); - do_row(datatype, comps, 1, src, src + srcImageOffset, 1, dst); - } - } - } -} - - -static void -make_1d_stack_mipmap(GLenum datatype, GLuint comps, GLint border, - GLint srcWidth, const GLubyte *srcPtr, GLuint srcRowStride, - GLint dstWidth, GLint dstHeight, - GLubyte *dstPtr, GLuint dstRowStride ) -{ - const GLint bpt = bytes_per_pixel(datatype, comps); - const GLint srcWidthNB = srcWidth - 2 * border; /* sizes w/out border */ - const GLint dstWidthNB = dstWidth - 2 * border; - const GLint dstHeightNB = dstHeight - 2 * border; - const GLint srcRowBytes = bpt * srcRowStride; - const GLint dstRowBytes = bpt * dstRowStride; - const GLubyte *src; - GLubyte *dst; - GLint row; - - /* Compute src and dst pointers, skipping any border */ - src = srcPtr + border * ((srcWidth + 1) * bpt); - dst = dstPtr + border * ((dstWidth + 1) * bpt); - - for (row = 0; row < dstHeightNB; row++) { - do_row(datatype, comps, srcWidthNB, src, src, - dstWidthNB, dst); - src += srcRowBytes; - dst += dstRowBytes; - } - - if (border) { - /* copy left-most pixel from source */ - assert(dstPtr); - assert(srcPtr); - memcpy(dstPtr, srcPtr, bpt); - /* copy right-most pixel from source */ - memcpy(dstPtr + (dstWidth - 1) * bpt, - srcPtr + (srcWidth - 1) * bpt, - bpt); - } -} - - -/** - * \bug - * There is quite a bit of refactoring that could be done with this function - * and \c make_2d_mipmap. - */ -static void -make_2d_stack_mipmap(GLenum datatype, GLuint comps, GLint border, - GLint srcWidth, GLint srcHeight, - const GLubyte *srcPtr, GLint srcRowStride, - GLint dstWidth, GLint dstHeight, GLint dstDepth, - GLubyte *dstPtr, GLint dstRowStride) -{ - const GLint bpt = bytes_per_pixel(datatype, comps); - const GLint srcWidthNB = srcWidth - 2 * border; /* sizes w/out border */ - const GLint dstWidthNB = dstWidth - 2 * border; - const GLint dstHeightNB = dstHeight - 2 * border; - const GLint dstDepthNB = dstDepth - 2 * border; - const GLint srcRowBytes = bpt * srcRowStride; - const GLint dstRowBytes = bpt * dstRowStride; - const GLubyte *srcA, *srcB; - GLubyte *dst; - GLint layer; - GLint row; - - /* Compute src and dst pointers, skipping any border */ - srcA = srcPtr + border * ((srcWidth + 1) * bpt); - if (srcHeight > 1) - srcB = srcA + srcRowBytes; - else - srcB = srcA; - dst = dstPtr + border * ((dstWidth + 1) * bpt); - - for (layer = 0; layer < dstDepthNB; layer++) { - for (row = 0; row < dstHeightNB; row++) { - do_row(datatype, comps, srcWidthNB, srcA, srcB, - dstWidthNB, dst); - srcA += 2 * srcRowBytes; - srcB += 2 * srcRowBytes; - dst += dstRowBytes; - } - - /* This is ugly but probably won't be used much */ - if (border > 0) { - /* fill in dest border */ - /* lower-left border pixel */ - assert(dstPtr); - assert(srcPtr); - memcpy(dstPtr, srcPtr, bpt); - /* lower-right border pixel */ - memcpy(dstPtr + (dstWidth - 1) * bpt, - srcPtr + (srcWidth - 1) * bpt, bpt); - /* upper-left border pixel */ - memcpy(dstPtr + dstWidth * (dstHeight - 1) * bpt, - srcPtr + srcWidth * (srcHeight - 1) * bpt, bpt); - /* upper-right border pixel */ - memcpy(dstPtr + (dstWidth * dstHeight - 1) * bpt, - srcPtr + (srcWidth * srcHeight - 1) * bpt, bpt); - /* lower border */ - do_row(datatype, comps, srcWidthNB, - srcPtr + bpt, - srcPtr + bpt, - dstWidthNB, dstPtr + bpt); - /* upper border */ - do_row(datatype, comps, srcWidthNB, - srcPtr + (srcWidth * (srcHeight - 1) + 1) * bpt, - srcPtr + (srcWidth * (srcHeight - 1) + 1) * bpt, - dstWidthNB, - dstPtr + (dstWidth * (dstHeight - 1) + 1) * bpt); - /* left and right borders */ - if (srcHeight == dstHeight) { - /* copy border pixel from src to dst */ - for (row = 1; row < srcHeight; row++) { - memcpy(dstPtr + dstWidth * row * bpt, - srcPtr + srcWidth * row * bpt, bpt); - memcpy(dstPtr + (dstWidth * row + dstWidth - 1) * bpt, - srcPtr + (srcWidth * row + srcWidth - 1) * bpt, bpt); - } - } - else { - /* average two src pixels each dest pixel */ - for (row = 0; row < dstHeightNB; row += 2) { - do_row(datatype, comps, 1, - srcPtr + (srcWidth * (row * 2 + 1)) * bpt, - srcPtr + (srcWidth * (row * 2 + 2)) * bpt, - 1, dstPtr + (dstWidth * row + 1) * bpt); - do_row(datatype, comps, 1, - srcPtr + (srcWidth * (row * 2 + 1) + srcWidth - 1) * bpt, - srcPtr + (srcWidth * (row * 2 + 2) + srcWidth - 1) * bpt, - 1, dstPtr + (dstWidth * row + 1 + dstWidth - 1) * bpt); - } + srcA = srcPtr[img * 2 + 0] + (bytesPerSrcImage - bpt); + srcB = srcPtr[img * 2 + srcImageOffset] + (bytesPerSrcImage - bpt); + dst = dstPtr[img] + (bytesPerDstImage - bpt); + do_row(datatype, comps, 1, srcA, srcB, 1, dst); } } } @@ -1799,28 +1656,29 @@ make_2d_stack_mipmap(GLenum datatype, GLuint comps, GLint border, /** * Down-sample a texture image to produce the next lower mipmap level. * \param comps components per texel (1, 2, 3 or 4) - * \param srcRowStride stride between source rows, in texels - * \param dstRowStride stride between destination rows, in texels + * \param srcData array[slice] of pointers to source image slices + * \param dstData array[slice] of pointers to dest image slices + * \param srcRowStride stride between source rows, in bytes + * \param dstRowStride stride between destination rows, in bytes */ void _mesa_generate_mipmap_level(GLenum target, GLenum datatype, GLuint comps, GLint border, GLint srcWidth, GLint srcHeight, GLint srcDepth, - const GLubyte *srcData, + const GLubyte **srcData, GLint srcRowStride, GLint dstWidth, GLint dstHeight, GLint dstDepth, - GLubyte *dstData, + GLubyte **dstData, GLint dstRowStride) { - /* - * We use simple 2x2 averaging to compute the next mipmap level. - */ + int i; + switch (target) { case GL_TEXTURE_1D: make_1d_mipmap(datatype, comps, border, - srcWidth, srcData, - dstWidth, dstData); + srcWidth, srcData[0], + dstWidth, dstData[0]); break; case GL_TEXTURE_2D: case GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB: @@ -1830,8 +1688,8 @@ _mesa_generate_mipmap_level(GLenum target, case GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB: case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB: make_2d_mipmap(datatype, comps, border, - srcWidth, srcHeight, srcData, srcRowStride, - dstWidth, dstHeight, dstData, dstRowStride); + srcWidth, srcHeight, srcData[0], srcRowStride, + dstWidth, dstHeight, dstData[0], dstRowStride); break; case GL_TEXTURE_3D: make_3d_mipmap(datatype, comps, border, @@ -1841,23 +1699,26 @@ _mesa_generate_mipmap_level(GLenum target, dstData, dstRowStride); break; case GL_TEXTURE_1D_ARRAY_EXT: - make_1d_stack_mipmap(datatype, comps, border, - srcWidth, srcData, srcRowStride, - dstWidth, dstHeight, - dstData, dstRowStride); + assert(srcHeight == 1); + assert(dstHeight == 1); + for (i = 0; i < dstDepth; i++) { + make_1d_mipmap(datatype, comps, border, + srcWidth, srcData[i], + dstWidth, dstData[i]); + } break; case GL_TEXTURE_2D_ARRAY_EXT: - make_2d_stack_mipmap(datatype, comps, border, - srcWidth, srcHeight, - srcData, srcRowStride, - dstWidth, dstHeight, - dstDepth, dstData, dstRowStride); + for (i = 0; i < dstDepth; i++) { + make_2d_mipmap(datatype, comps, border, + srcWidth, srcHeight, srcData[i], srcRowStride, + dstWidth, dstHeight, dstData[i], dstRowStride); + } break; case GL_TEXTURE_RECTANGLE_NV: /* no mipmaps, do nothing */ break; default: - _mesa_problem(NULL, "bad dimensions in _mesa_generate_mipmaps"); + _mesa_problem(NULL, "bad tex target in _mesa_generate_mipmaps"); return; } } @@ -1919,12 +1780,14 @@ generate_mipmap_uncompressed(struct gl_context *ctx, GLenum target, for (level = texObj->BaseLevel; level < maxLevel; level++) { /* generate image[level+1] from image[level] */ - const struct gl_texture_image *srcImage; - struct gl_texture_image *dstImage; + struct gl_texture_image *srcImage, *dstImage; + GLint srcRowStride, dstRowStride; GLint srcWidth, srcHeight, srcDepth; GLint dstWidth, dstHeight, dstDepth; GLint border; + GLint slice; GLboolean nextLevel; + GLubyte **srcMaps, **dstMaps; /* get src image parameters */ srcImage = _mesa_select_tex_image(ctx, texObj, target, level); @@ -1950,7 +1813,6 @@ generate_mipmap_uncompressed(struct gl_context *ctx, GLenum target, /* Free old image data */ ctx->Driver.FreeTextureImageBuffer(ctx, dstImage); - /* initialize new image */ _mesa_init_teximage_fields(ctx, target, dstImage, dstWidth, dstHeight, dstDepth, border, srcImage->InternalFormat, srcImage->TexFormat); @@ -1967,15 +1829,54 @@ generate_mipmap_uncompressed(struct gl_context *ctx, GLenum target, ASSERT(dstImage->TexFormat); + if (target == GL_TEXTURE_1D_ARRAY) { + srcDepth = srcHeight; + dstDepth = dstHeight; + srcHeight = 1; + dstHeight = 1; + } + + /* Map src texture image slices */ + srcMaps = (GLubyte **) malloc(srcDepth * sizeof(GLubyte *)); + for (slice = 0; slice < srcDepth; slice++) { + ctx->Driver.MapTextureImage(ctx, srcImage, slice, + 0, 0, srcWidth, srcHeight, + GL_MAP_READ_BIT, + &srcMaps[slice], &srcRowStride); + } + + /* Map dst texture image slices */ + dstMaps = (GLubyte **) malloc(dstDepth * sizeof(GLubyte *)); + for (slice = 0; slice < dstDepth; slice++) { + ctx->Driver.MapTextureImage(ctx, dstImage, slice, + 0, 0, dstWidth, dstHeight, + GL_MAP_WRITE_BIT, + &dstMaps[slice], &dstRowStride); + } + + /* generate one mipmap level (for 1D/2D/3D/array/etc texture) */ _mesa_generate_mipmap_level(target, datatype, comps, border, srcWidth, srcHeight, srcDepth, - srcImage->Data, srcImage->RowStride, + (const GLubyte **) srcMaps, srcRowStride, dstWidth, dstHeight, dstDepth, - dstImage->Data, dstImage->RowStride); + dstMaps, dstRowStride); + + /* Unmap src image slices */ + for (slice = 0; slice < srcDepth; slice++) { + ctx->Driver.UnmapTextureImage(ctx, srcImage, slice); + } + free(srcMaps); + + /* Unmap dst image slices */ + for (slice = 0; slice < dstDepth; slice++) { + ctx->Driver.UnmapTextureImage(ctx, dstImage, slice); + } + free(dstMaps); } /* loop over mipmap levels */ } + static void generate_mipmap_compressed(struct gl_context *ctx, GLenum target, struct gl_texture_object *texObj, @@ -1985,7 +1886,7 @@ generate_mipmap_compressed(struct gl_context *ctx, GLenum target, GLint level; gl_format temp_format; GLint components; - GLuint temp_src_stride, temp_dst_stride; /* in bytes */ + GLuint temp_src_stride; /* in bytes */ GLubyte *temp_src = NULL, *temp_dst = NULL; GLenum temp_datatype; GLenum temp_base_format; @@ -2032,9 +1933,10 @@ generate_mipmap_compressed(struct gl_context *ctx, GLenum target, ctx->Pack = ctx->DefaultPacking; /* Get the uncompressed image */ - ctx->Driver.GetTexImage(ctx, target, texObj->BaseLevel, + assert(srcImage->Level == texObj->BaseLevel); + ctx->Driver.GetTexImage(ctx, temp_base_format, temp_datatype, - temp_src, texObj, srcImage); + temp_src, srcImage); /* restore packing mode */ ctx->Pack = save; } @@ -2048,6 +1950,7 @@ generate_mipmap_compressed(struct gl_context *ctx, GLenum target, GLint dstWidth, dstHeight, dstDepth; GLint border; GLboolean nextLevel; + GLuint temp_dst_stride; /* in bytes */ /* get src image parameters */ srcImage = _mesa_select_tex_image(ctx, texObj, target, level); @@ -2084,15 +1987,19 @@ generate_mipmap_compressed(struct gl_context *ctx, GLenum target, _mesa_generate_mipmap_level(target, temp_datatype, components, border, srcWidth, srcHeight, srcDepth, - temp_src, temp_src_stride / components, + (const GLubyte **) &temp_src, + temp_src_stride, dstWidth, dstHeight, dstDepth, - temp_dst, temp_dst_stride / components); + &temp_dst, temp_dst_stride); /* initialize new image */ _mesa_init_teximage_fields(ctx, target, dstImage, dstWidth, dstHeight, dstDepth, border, srcImage->InternalFormat, srcImage->TexFormat); + /* Free old dest texture image buffer */ + ctx->Driver.FreeTextureImageBuffer(ctx, dstImage); + ctx->Driver.TexImage2D(ctx, target, level + 1, srcImage->InternalFormat, dstWidth, dstHeight, border, @@ -2104,7 +2011,6 @@ generate_mipmap_compressed(struct gl_context *ctx, GLenum target, GLubyte *temp = temp_src; temp_src = temp_dst; temp_dst = temp; - temp_src_stride = temp_dst_stride; } } /* loop over mipmap levels */ diff --git a/mesalib/src/mesa/main/mipmap.h b/mesalib/src/mesa/main/mipmap.h index 478395021..8b7cd7d5a 100644 --- a/mesalib/src/mesa/main/mipmap.h +++ b/mesalib/src/mesa/main/mipmap.h @@ -34,10 +34,10 @@ _mesa_generate_mipmap_level(GLenum target, GLenum datatype, GLuint comps, GLint border, GLint srcWidth, GLint srcHeight, GLint srcDepth, - const GLubyte *srcData, + const GLubyte **srcData, GLint srcRowStride, GLint dstWidth, GLint dstHeight, GLint dstDepth, - GLubyte *dstData, + GLubyte **dstData, GLint dstRowStride); diff --git a/mesalib/src/mesa/main/mm.c b/mesalib/src/mesa/main/mm.c index 25a029370..ab32123a4 100644 --- a/mesalib/src/mesa/main/mm.c +++ b/mesalib/src/mesa/main/mm.c @@ -211,7 +211,7 @@ mmFindBlock(struct mem_block *heap, unsigned start) } -static INLINE int +static inline int Join2Blocks(struct mem_block *p) { /* XXX there should be some assertions here */ diff --git a/mesalib/src/mesa/main/mtypes.h b/mesalib/src/mesa/main/mtypes.h index be43434c8..67db4df8f 100644 --- a/mesalib/src/mesa/main/mtypes.h +++ b/mesalib/src/mesa/main/mtypes.h @@ -330,7 +330,7 @@ typedef enum * (VERT_RESULT_PSIZ, VERT_RESULT_BFC0, VERT_RESULT_BFC1, and * VERT_RESULT_EDGE) are converted to a value of -1. */ -static INLINE int +static inline int _mesa_vert_result_to_frag_attrib(gl_vert_result vert_result) { if (vert_result >= VERT_RESULT_CLIP_DIST0) @@ -350,7 +350,7 @@ _mesa_vert_result_to_frag_attrib(gl_vert_result vert_result) * gl_frag_attrib values which have no corresponding gl_vert_result * (FRAG_ATTRIB_FACE and FRAG_ATTRIB_PNTC) are converted to a value of -1. */ -static INLINE int +static inline int _mesa_frag_attrib_to_vert_result(gl_frag_attrib frag_attrib) { if (frag_attrib <= FRAG_ATTRIB_TEX7) @@ -1834,11 +1834,6 @@ struct gl_program /** Numbered local parameters */ GLfloat LocalParams[MAX_PROGRAM_LOCAL_PARAMS][4]; - /** Vertex/fragment shader varying vars */ - struct gl_program_parameter_list *Varying; - /** Vertex program user-defined attributes */ - struct gl_program_parameter_list *Attributes; - /** Map from sampler unit to texture unit (set by glUniform1i()) */ GLubyte SamplerUnits[MAX_SAMPLERS]; /** Which texture target is being sampled (TEXTURE_1D/2D/3D/etc_INDEX) */ @@ -2148,8 +2143,14 @@ struct gl_shader_program GLuint NumShaders; /**< number of attached shaders */ struct gl_shader **Shaders; /**< List of attached the shaders */ - /** User-defined attribute bindings (glBindAttribLocation) */ - struct gl_program_parameter_list *Attributes; + /** + * User-defined attribute bindings + * + * These are set via \c glBindAttribLocation and are used to direct the + * GLSL linker. These are \b not the values used in the compiled shader, + * and they are \b not the values returned by \c glGetAttribLocation. + */ + struct string_to_uint_map *AttributeBindings; /** Transform feedback varyings */ struct { @@ -2751,7 +2752,6 @@ struct gl_extensions GLboolean ARB_depth_buffer_float; GLboolean ARB_depth_clamp; GLboolean ARB_depth_texture; - GLboolean ARB_draw_buffers; GLboolean ARB_draw_buffers_blend; GLboolean ARB_draw_elements_base_vertex; GLboolean ARB_draw_instanced; diff --git a/mesalib/src/mesa/main/pack.c b/mesalib/src/mesa/main/pack.c index 6d6ae59f4..62e352f3f 100644 --- a/mesalib/src/mesa/main/pack.c +++ b/mesalib/src/mesa/main/pack.c @@ -2910,35 +2910,35 @@ extract_float_rgba(GLuint n, GLfloat rgba[][4], } -static INLINE GLuint +static inline GLuint clamp_byte_to_uint(GLbyte b) { return b < 0 ? 0 : b; } -static INLINE GLuint +static inline GLuint clamp_short_to_uint(GLshort s) { return s < 0 ? 0 : s; } -static INLINE GLuint +static inline GLuint clamp_int_to_uint(GLint i) { return i < 0 ? 0 : i; } -static INLINE GLuint +static inline GLuint clamp_float_to_uint(GLfloat f) { return f < 0.0F ? 0 : IROUND(f); } -static INLINE GLuint +static inline GLuint clamp_half_to_uint(GLhalfARB h) { GLfloat f = _mesa_half_to_float(h); diff --git a/mesalib/src/mesa/main/pixel.c b/mesalib/src/mesa/main/pixel.c index c87f5e0e9..e73c5a49a 100644 --- a/mesalib/src/mesa/main/pixel.c +++ b/mesalib/src/mesa/main/pixel.c @@ -506,7 +506,7 @@ _mesa_GetPixelMapusv( GLenum map, GLushort *values ) * Implements glPixelTransfer[fi] whether called immediately or from a * display list. */ -static void GLAPIENTRY +void GLAPIENTRY _mesa_PixelTransferf( GLenum pname, GLfloat param ) { GET_CURRENT_CONTEXT(ctx); diff --git a/mesalib/src/mesa/main/pixel.h b/mesalib/src/mesa/main/pixel.h index c54b1fc5e..797b0d9d6 100644 --- a/mesalib/src/mesa/main/pixel.h +++ b/mesalib/src/mesa/main/pixel.h @@ -1,72 +1,81 @@ -/*
- * Mesa 3-D graphics library
- * Version: 7.1
- *
- * Copyright (C) 1999-2008 Brian Paul All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-/**
- * \file pixel.h
- * Pixel operations.
- */
-
-
-#ifndef PIXEL_H
-#define PIXEL_H
-
-
-#include "compiler.h"
-#include "glheader.h"
-#include "mfeatures.h"
-
-struct _glapi_table;
-struct gl_context;
-
-
-#if FEATURE_pixel_transfer
-
-extern void
-_mesa_update_pixel( struct gl_context *ctx, GLuint newstate );
-
-extern void
-_mesa_init_pixel_dispatch( struct _glapi_table * disp );
-
-#else /* FEATURE_pixel_transfer */
-
-static INLINE void
-_mesa_update_pixel(struct gl_context *ctx, GLuint newstate)
-{
-}
-
-static INLINE void
-_mesa_init_pixel_dispatch(struct _glapi_table *disp)
-{
-}
-
-#endif /* FEATURE_pixel_transfer */
-
-
-extern void
-_mesa_init_pixel( struct gl_context * ctx );
-
-/*@}*/
-
-#endif /* PIXEL_H */
+/* + * Mesa 3-D graphics library + * Version: 7.1 + * + * Copyright (C) 1999-2008 Brian Paul All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + + +/** + * \file pixel.h + * Pixel operations. + */ + + +#ifndef PIXEL_H +#define PIXEL_H + + +#include "compiler.h" +#include "glheader.h" +#include "mfeatures.h" + +struct _glapi_table; +struct gl_context; + + +#if FEATURE_pixel_transfer + +extern void GLAPIENTRY +_mesa_PixelTransferf(GLenum pname, GLfloat param); + +extern void +_mesa_update_pixel( struct gl_context *ctx, GLuint newstate ); + +extern void +_mesa_init_pixel_dispatch( struct _glapi_table * disp ); + +#else /* FEATURE_pixel_transfer */ + +static inline void GLAPIENTRY +_mesa_PixelTransferf(GLenum pname, GLfloat param) +{ +} + + +static inline void +_mesa_update_pixel(struct gl_context *ctx, GLuint newstate) +{ +} + +static inline void +_mesa_init_pixel_dispatch(struct _glapi_table *disp) +{ +} + +#endif /* FEATURE_pixel_transfer */ + + +extern void +_mesa_init_pixel( struct gl_context * ctx ); + +/*@}*/ + +#endif /* PIXEL_H */ diff --git a/mesalib/src/mesa/main/queryobj.h b/mesalib/src/mesa/main/queryobj.h index 16962e55a..e7a133b59 100644 --- a/mesalib/src/mesa/main/queryobj.h +++ b/mesalib/src/mesa/main/queryobj.h @@ -34,7 +34,7 @@ #if FEATURE_queryobj -static INLINE struct gl_query_object * +static inline struct gl_query_object * _mesa_lookup_query_object(struct gl_context *ctx, GLuint id) { return (struct gl_query_object *) @@ -50,18 +50,18 @@ _mesa_init_queryobj_dispatch(struct _glapi_table *disp); #else /* FEATURE_queryobj */ -static INLINE struct gl_query_object * +static inline struct gl_query_object * _mesa_lookup_query_object(struct gl_context *ctx, GLuint id) { return NULL; } -static INLINE void +static inline void _mesa_init_query_object_functions(struct dd_function_table *driver) { } -static INLINE void +static inline void _mesa_init_queryobj_dispatch(struct _glapi_table *disp) { } diff --git a/mesalib/src/mesa/main/rastpos.h b/mesalib/src/mesa/main/rastpos.h index a530ddd76..cdd94a66c 100644 --- a/mesalib/src/mesa/main/rastpos.h +++ b/mesalib/src/mesa/main/rastpos.h @@ -1,60 +1,60 @@ -/**
- * \file rastpos.h
- * Raster position operations.
- */
-
-/*
- * Mesa 3-D graphics library
- * Version: 4.1
- *
- * Copyright (C) 1999-2002 Brian Paul All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-#ifndef RASTPOS_H
-#define RASTPOS_H
-
-
-#include "compiler.h"
-#include "mfeatures.h"
-
-struct _glapi_table;
-struct gl_context;
-
-#if FEATURE_rastpos
-
-extern void
-_mesa_init_rastpos_dispatch(struct _glapi_table *disp);
-
-#else /* FEATURE_rastpos */
-
-static INLINE void
-_mesa_init_rastpos_dispatch(struct _glapi_table *disp)
-{
-}
-
-#endif /* FEATURE_rastpos */
-
-extern void
-_mesa_init_rastpos(struct gl_context *ctx);
-
-/*@}*/
-
-#endif /* RASTPOS_H */
+/** + * \file rastpos.h + * Raster position operations. + */ + +/* + * Mesa 3-D graphics library + * Version: 4.1 + * + * Copyright (C) 1999-2002 Brian Paul All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + + +#ifndef RASTPOS_H +#define RASTPOS_H + + +#include "compiler.h" +#include "mfeatures.h" + +struct _glapi_table; +struct gl_context; + +#if FEATURE_rastpos + +extern void +_mesa_init_rastpos_dispatch(struct _glapi_table *disp); + +#else /* FEATURE_rastpos */ + +static inline void +_mesa_init_rastpos_dispatch(struct _glapi_table *disp) +{ +} + +#endif /* FEATURE_rastpos */ + +extern void +_mesa_init_rastpos(struct gl_context *ctx); + +/*@}*/ + +#endif /* RASTPOS_H */ diff --git a/mesalib/src/mesa/main/remap.h b/mesalib/src/mesa/main/remap.h index ae91a35d9..fa3172487 100644 --- a/mesalib/src/mesa/main/remap.h +++ b/mesalib/src/mesa/main/remap.h @@ -1,98 +1,98 @@ -/*
- * Mesa 3-D graphics library
- * Version: 7.7
- *
- * Copyright (C) 2009 Chia-I Wu <olv@0xlab.org>
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- */
-
-
-#ifndef REMAP_H
-#define REMAP_H
-
-
-#include "main/compiler.h"
-#include "main/mfeatures.h"
-
-struct gl_function_pool_remap {
- int pool_index;
- int remap_index;
-};
-
-struct gl_function_remap {
- int func_index;
- int dispatch_offset; /* for sanity check */
-};
-
-
-#if FEATURE_remap_table
-
-extern int
-driDispatchRemapTable[];
-
-extern const char *
-_mesa_get_function_spec(int func_index);
-
-extern int
-_mesa_map_function_spec(const char *spec);
-
-extern void
-_mesa_map_function_array(const struct gl_function_remap *func_array);
-
-extern void
-_mesa_map_static_functions(void);
-
-extern void
-_mesa_init_remap_table(void);
-
-#else /* FEATURE_remap_table */
-
-static INLINE const char *
-_mesa_get_function_spec(int func_index)
-{
- return NULL;
-}
-
-static INLINE int
-_mesa_map_function_spec(const char *spec)
-{
- return -1;
-}
-
-static INLINE void
-_mesa_map_function_array(const struct gl_function_remap *func_array)
-{
-}
-
-static INLINE void
-_mesa_map_static_functions(void)
-{
-}
-
-
-static INLINE void
-_mesa_init_remap_table(void)
-{
-}
-
-#endif /* FEATURE_remap_table */
-
-
-#endif /* REMAP_H */
+/* + * Mesa 3-D graphics library + * Version: 7.7 + * + * Copyright (C) 2009 Chia-I Wu <olv@0xlab.org> + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. + */ + + +#ifndef REMAP_H +#define REMAP_H + + +#include "main/compiler.h" +#include "main/mfeatures.h" + +struct gl_function_pool_remap { + int pool_index; + int remap_index; +}; + +struct gl_function_remap { + int func_index; + int dispatch_offset; /* for sanity check */ +}; + + +#if FEATURE_remap_table + +extern int +driDispatchRemapTable[]; + +extern const char * +_mesa_get_function_spec(int func_index); + +extern int +_mesa_map_function_spec(const char *spec); + +extern void +_mesa_map_function_array(const struct gl_function_remap *func_array); + +extern void +_mesa_map_static_functions(void); + +extern void +_mesa_init_remap_table(void); + +#else /* FEATURE_remap_table */ + +static inline const char * +_mesa_get_function_spec(int func_index) +{ + return NULL; +} + +static inline int +_mesa_map_function_spec(const char *spec) +{ + return -1; +} + +static inline void +_mesa_map_function_array(const struct gl_function_remap *func_array) +{ +} + +static inline void +_mesa_map_static_functions(void) +{ +} + + +static inline void +_mesa_init_remap_table(void) +{ +} + +#endif /* FEATURE_remap_table */ + + +#endif /* REMAP_H */ diff --git a/mesalib/src/mesa/main/remap_helper.h b/mesalib/src/mesa/main/remap_helper.h index 127266ea7..5ea2bb62c 100644 --- a/mesalib/src/mesa/main/remap_helper.h +++ b/mesalib/src/mesa/main/remap_helper.h @@ -4472,612 +4472,613 @@ static const char _mesa_function_pool[] = "glDrawBuffers\0" "glDrawBuffersARB\0" "glDrawBuffersATI\0" + "glDrawBuffersNV\0" "\0" - /* _mesa_function_pool[31182]: ClearBufferiv (will be remapped) */ + /* _mesa_function_pool[31198]: ClearBufferiv (will be remapped) */ "iip\0" "glClearBufferiv\0" "\0" - /* _mesa_function_pool[31203]: ProgramLocalParameter4fARB (will be remapped) */ + /* _mesa_function_pool[31219]: ProgramLocalParameter4fARB (will be remapped) */ "iiffff\0" "glProgramLocalParameter4fARB\0" "\0" - /* _mesa_function_pool[31240]: SpriteParameterivSGIX (dynamic) */ + /* _mesa_function_pool[31256]: SpriteParameterivSGIX (dynamic) */ "ip\0" "glSpriteParameterivSGIX\0" "\0" - /* _mesa_function_pool[31268]: ProvokingVertexEXT (will be remapped) */ + /* _mesa_function_pool[31284]: ProvokingVertexEXT (will be remapped) */ "i\0" "glProvokingVertexEXT\0" "glProvokingVertex\0" "\0" - /* _mesa_function_pool[31310]: MultiTexCoord1fARB (offset 378) */ + /* _mesa_function_pool[31326]: MultiTexCoord1fARB (offset 378) */ "if\0" "glMultiTexCoord1f\0" "glMultiTexCoord1fARB\0" "\0" - /* _mesa_function_pool[31353]: LoadName (offset 198) */ + /* _mesa_function_pool[31369]: LoadName (offset 198) */ "i\0" "glLoadName\0" "\0" - /* _mesa_function_pool[31367]: VertexAttribs4ubvNV (will be remapped) */ + /* _mesa_function_pool[31383]: VertexAttribs4ubvNV (will be remapped) */ "iip\0" "glVertexAttribs4ubvNV\0" "\0" - /* _mesa_function_pool[31394]: WeightsvARB (dynamic) */ + /* _mesa_function_pool[31410]: WeightsvARB (dynamic) */ "ip\0" "glWeightsvARB\0" "\0" - /* _mesa_function_pool[31412]: NormalP3ui (will be remapped) */ + /* _mesa_function_pool[31428]: NormalP3ui (will be remapped) */ "ii\0" "glNormalP3ui\0" "\0" - /* _mesa_function_pool[31429]: VertexAttribP2ui (will be remapped) */ + /* _mesa_function_pool[31445]: VertexAttribP2ui (will be remapped) */ "iiii\0" "glVertexAttribP2ui\0" "\0" - /* _mesa_function_pool[31454]: Uniform1fvARB (will be remapped) */ + /* _mesa_function_pool[31470]: Uniform1fvARB (will be remapped) */ "iip\0" "glUniform1fv\0" "glUniform1fvARB\0" "\0" - /* _mesa_function_pool[31488]: CopyTexSubImage1D (offset 325) */ + /* _mesa_function_pool[31504]: CopyTexSubImage1D (offset 325) */ "iiiiii\0" "glCopyTexSubImage1D\0" "glCopyTexSubImage1DEXT\0" "\0" - /* _mesa_function_pool[31539]: CullFace (offset 152) */ + /* _mesa_function_pool[31555]: CullFace (offset 152) */ "i\0" "glCullFace\0" "\0" - /* _mesa_function_pool[31553]: BindTexture (offset 307) */ + /* _mesa_function_pool[31569]: BindTexture (offset 307) */ "ii\0" "glBindTexture\0" "glBindTextureEXT\0" "\0" - /* _mesa_function_pool[31588]: BeginFragmentShaderATI (will be remapped) */ + /* _mesa_function_pool[31604]: BeginFragmentShaderATI (will be remapped) */ "\0" "glBeginFragmentShaderATI\0" "\0" - /* _mesa_function_pool[31615]: MultiTexCoord4fARB (offset 402) */ + /* _mesa_function_pool[31631]: MultiTexCoord4fARB (offset 402) */ "iffff\0" "glMultiTexCoord4f\0" "glMultiTexCoord4fARB\0" "\0" - /* _mesa_function_pool[31661]: VertexAttribs3svNV (will be remapped) */ + /* _mesa_function_pool[31677]: VertexAttribs3svNV (will be remapped) */ "iip\0" "glVertexAttribs3svNV\0" "\0" - /* _mesa_function_pool[31687]: StencilFunc (offset 243) */ + /* _mesa_function_pool[31703]: StencilFunc (offset 243) */ "iii\0" "glStencilFunc\0" "\0" - /* _mesa_function_pool[31706]: CopyPixels (offset 255) */ + /* _mesa_function_pool[31722]: CopyPixels (offset 255) */ "iiiii\0" "glCopyPixels\0" "\0" - /* _mesa_function_pool[31726]: Rectsv (offset 93) */ + /* _mesa_function_pool[31742]: Rectsv (offset 93) */ "pp\0" "glRectsv\0" "\0" - /* _mesa_function_pool[31739]: ReplacementCodeuivSUN (dynamic) */ + /* _mesa_function_pool[31755]: ReplacementCodeuivSUN (dynamic) */ "p\0" "glReplacementCodeuivSUN\0" "\0" - /* _mesa_function_pool[31766]: MultiTexCoordP2uiv (will be remapped) */ + /* _mesa_function_pool[31782]: MultiTexCoordP2uiv (will be remapped) */ "iip\0" "glMultiTexCoordP2uiv\0" "\0" - /* _mesa_function_pool[31792]: EnableVertexAttribArrayARB (will be remapped) */ + /* _mesa_function_pool[31808]: EnableVertexAttribArrayARB (will be remapped) */ "i\0" "glEnableVertexAttribArray\0" "glEnableVertexAttribArrayARB\0" "\0" - /* _mesa_function_pool[31850]: NormalPointervINTEL (dynamic) */ + /* _mesa_function_pool[31866]: NormalPointervINTEL (dynamic) */ "ip\0" "glNormalPointervINTEL\0" "\0" - /* _mesa_function_pool[31876]: CopyConvolutionFilter2D (offset 355) */ + /* _mesa_function_pool[31892]: CopyConvolutionFilter2D (offset 355) */ "iiiiii\0" "glCopyConvolutionFilter2D\0" "glCopyConvolutionFilter2DEXT\0" "\0" - /* _mesa_function_pool[31939]: WindowPos3ivMESA (will be remapped) */ + /* _mesa_function_pool[31955]: WindowPos3ivMESA (will be remapped) */ "p\0" "glWindowPos3iv\0" "glWindowPos3ivARB\0" "glWindowPos3ivMESA\0" "\0" - /* _mesa_function_pool[31994]: CopyBufferSubData (will be remapped) */ + /* _mesa_function_pool[32010]: CopyBufferSubData (will be remapped) */ "iiiii\0" "glCopyBufferSubData\0" "\0" - /* _mesa_function_pool[32021]: NormalPointer (offset 318) */ + /* _mesa_function_pool[32037]: NormalPointer (offset 318) */ "iip\0" "glNormalPointer\0" "\0" - /* _mesa_function_pool[32042]: TexParameterfv (offset 179) */ + /* _mesa_function_pool[32058]: TexParameterfv (offset 179) */ "iip\0" "glTexParameterfv\0" "\0" - /* _mesa_function_pool[32064]: IsBufferARB (will be remapped) */ + /* _mesa_function_pool[32080]: IsBufferARB (will be remapped) */ "i\0" "glIsBuffer\0" "glIsBufferARB\0" "\0" - /* _mesa_function_pool[32092]: WindowPos4iMESA (will be remapped) */ + /* _mesa_function_pool[32108]: WindowPos4iMESA (will be remapped) */ "iiii\0" "glWindowPos4iMESA\0" "\0" - /* _mesa_function_pool[32116]: VertexAttrib4uivARB (will be remapped) */ + /* _mesa_function_pool[32132]: VertexAttrib4uivARB (will be remapped) */ "ip\0" "glVertexAttrib4uiv\0" "glVertexAttrib4uivARB\0" "\0" - /* _mesa_function_pool[32161]: Tangent3bvEXT (dynamic) */ + /* _mesa_function_pool[32177]: Tangent3bvEXT (dynamic) */ "p\0" "glTangent3bvEXT\0" "\0" - /* _mesa_function_pool[32180]: VertexAttribI3uivEXT (will be remapped) */ + /* _mesa_function_pool[32196]: VertexAttribI3uivEXT (will be remapped) */ "ip\0" "glVertexAttribI3uivEXT\0" "glVertexAttribI3uiv\0" "\0" - /* _mesa_function_pool[32227]: UniformMatrix3x4fv (will be remapped) */ + /* _mesa_function_pool[32243]: UniformMatrix3x4fv (will be remapped) */ "iiip\0" "glUniformMatrix3x4fv\0" "\0" - /* _mesa_function_pool[32254]: ClipPlane (offset 150) */ + /* _mesa_function_pool[32270]: ClipPlane (offset 150) */ "ip\0" "glClipPlane\0" "\0" - /* _mesa_function_pool[32270]: Recti (offset 90) */ + /* _mesa_function_pool[32286]: Recti (offset 90) */ "iiii\0" "glRecti\0" "\0" - /* _mesa_function_pool[32284]: TrackMatrixNV (will be remapped) */ + /* _mesa_function_pool[32300]: TrackMatrixNV (will be remapped) */ "iiii\0" "glTrackMatrixNV\0" "\0" - /* _mesa_function_pool[32306]: DrawRangeElementsBaseVertex (will be remapped) */ + /* _mesa_function_pool[32322]: DrawRangeElementsBaseVertex (will be remapped) */ "iiiiipi\0" "glDrawRangeElementsBaseVertex\0" "\0" - /* _mesa_function_pool[32345]: SamplerParameterIuiv (will be remapped) */ + /* _mesa_function_pool[32361]: SamplerParameterIuiv (will be remapped) */ "iip\0" "glSamplerParameterIuiv\0" "\0" - /* _mesa_function_pool[32373]: TexCoordPointervINTEL (dynamic) */ + /* _mesa_function_pool[32389]: TexCoordPointervINTEL (dynamic) */ "iip\0" "glTexCoordPointervINTEL\0" "\0" - /* _mesa_function_pool[32402]: DeleteBuffersARB (will be remapped) */ + /* _mesa_function_pool[32418]: DeleteBuffersARB (will be remapped) */ "ip\0" "glDeleteBuffers\0" "glDeleteBuffersARB\0" "\0" - /* _mesa_function_pool[32441]: PixelTransformParameterfvEXT (dynamic) */ + /* _mesa_function_pool[32457]: PixelTransformParameterfvEXT (dynamic) */ "iip\0" "glPixelTransformParameterfvEXT\0" "\0" - /* _mesa_function_pool[32477]: PrimitiveRestartNV (will be remapped) */ + /* _mesa_function_pool[32493]: PrimitiveRestartNV (will be remapped) */ "\0" "glPrimitiveRestartNV\0" "\0" - /* _mesa_function_pool[32500]: WindowPos4fvMESA (will be remapped) */ + /* _mesa_function_pool[32516]: WindowPos4fvMESA (will be remapped) */ "p\0" "glWindowPos4fvMESA\0" "\0" - /* _mesa_function_pool[32522]: GetPixelMapuiv (offset 272) */ + /* _mesa_function_pool[32538]: GetPixelMapuiv (offset 272) */ "ip\0" "glGetPixelMapuiv\0" "\0" - /* _mesa_function_pool[32543]: Rectf (offset 88) */ + /* _mesa_function_pool[32559]: Rectf (offset 88) */ "ffff\0" "glRectf\0" "\0" - /* _mesa_function_pool[32557]: VertexAttrib1sNV (will be remapped) */ + /* _mesa_function_pool[32573]: VertexAttrib1sNV (will be remapped) */ "ii\0" "glVertexAttrib1sNV\0" "\0" - /* _mesa_function_pool[32580]: Indexfv (offset 47) */ + /* _mesa_function_pool[32596]: Indexfv (offset 47) */ "p\0" "glIndexfv\0" "\0" - /* _mesa_function_pool[32593]: ColorP3uiv (will be remapped) */ + /* _mesa_function_pool[32609]: ColorP3uiv (will be remapped) */ "ip\0" "glColorP3uiv\0" "\0" - /* _mesa_function_pool[32610]: SecondaryColor3svEXT (will be remapped) */ + /* _mesa_function_pool[32626]: SecondaryColor3svEXT (will be remapped) */ "p\0" "glSecondaryColor3sv\0" "glSecondaryColor3svEXT\0" "\0" - /* _mesa_function_pool[32656]: LoadTransposeMatrixfARB (will be remapped) */ + /* _mesa_function_pool[32672]: LoadTransposeMatrixfARB (will be remapped) */ "p\0" "glLoadTransposeMatrixf\0" "glLoadTransposeMatrixfARB\0" "\0" - /* _mesa_function_pool[32708]: GetPointerv (offset 329) */ + /* _mesa_function_pool[32724]: GetPointerv (offset 329) */ "ip\0" "glGetPointerv\0" "glGetPointervEXT\0" "\0" - /* _mesa_function_pool[32743]: Tangent3bEXT (dynamic) */ + /* _mesa_function_pool[32759]: Tangent3bEXT (dynamic) */ "iii\0" "glTangent3bEXT\0" "\0" - /* _mesa_function_pool[32763]: CombinerParameterfNV (will be remapped) */ + /* _mesa_function_pool[32779]: CombinerParameterfNV (will be remapped) */ "if\0" "glCombinerParameterfNV\0" "\0" - /* _mesa_function_pool[32790]: IndexMask (offset 212) */ + /* _mesa_function_pool[32806]: IndexMask (offset 212) */ "i\0" "glIndexMask\0" "\0" - /* _mesa_function_pool[32805]: BindProgramNV (will be remapped) */ + /* _mesa_function_pool[32821]: BindProgramNV (will be remapped) */ "ii\0" "glBindProgramARB\0" "glBindProgramNV\0" "\0" - /* _mesa_function_pool[32842]: VertexAttrib4svARB (will be remapped) */ + /* _mesa_function_pool[32858]: VertexAttrib4svARB (will be remapped) */ "ip\0" "glVertexAttrib4sv\0" "glVertexAttrib4svARB\0" "\0" - /* _mesa_function_pool[32885]: GetFloatv (offset 262) */ + /* _mesa_function_pool[32901]: GetFloatv (offset 262) */ "ip\0" "glGetFloatv\0" "\0" - /* _mesa_function_pool[32901]: CreateDebugObjectMESA (dynamic) */ + /* _mesa_function_pool[32917]: CreateDebugObjectMESA (dynamic) */ "\0" "glCreateDebugObjectMESA\0" "\0" - /* _mesa_function_pool[32927]: GetShaderiv (will be remapped) */ + /* _mesa_function_pool[32943]: GetShaderiv (will be remapped) */ "iip\0" "glGetShaderiv\0" "\0" - /* _mesa_function_pool[32946]: ClientWaitSync (will be remapped) */ + /* _mesa_function_pool[32962]: ClientWaitSync (will be remapped) */ "iii\0" "glClientWaitSync\0" "\0" - /* _mesa_function_pool[32968]: TexCoord4s (offset 124) */ + /* _mesa_function_pool[32984]: TexCoord4s (offset 124) */ "iiii\0" "glTexCoord4s\0" "\0" - /* _mesa_function_pool[32987]: TexCoord3sv (offset 117) */ + /* _mesa_function_pool[33003]: TexCoord3sv (offset 117) */ "p\0" "glTexCoord3sv\0" "\0" - /* _mesa_function_pool[33004]: BindFragmentShaderATI (will be remapped) */ + /* _mesa_function_pool[33020]: BindFragmentShaderATI (will be remapped) */ "i\0" "glBindFragmentShaderATI\0" "\0" - /* _mesa_function_pool[33031]: PopAttrib (offset 218) */ + /* _mesa_function_pool[33047]: PopAttrib (offset 218) */ "\0" "glPopAttrib\0" "\0" - /* _mesa_function_pool[33045]: Fogfv (offset 154) */ + /* _mesa_function_pool[33061]: Fogfv (offset 154) */ "ip\0" "glFogfv\0" "\0" - /* _mesa_function_pool[33057]: UnmapBufferARB (will be remapped) */ + /* _mesa_function_pool[33073]: UnmapBufferARB (will be remapped) */ "i\0" "glUnmapBuffer\0" "glUnmapBufferARB\0" "\0" - /* _mesa_function_pool[33091]: InitNames (offset 197) */ + /* _mesa_function_pool[33107]: InitNames (offset 197) */ "\0" "glInitNames\0" "\0" - /* _mesa_function_pool[33105]: Normal3sv (offset 61) */ + /* _mesa_function_pool[33121]: Normal3sv (offset 61) */ "p\0" "glNormal3sv\0" "\0" - /* _mesa_function_pool[33120]: Minmax (offset 368) */ + /* _mesa_function_pool[33136]: Minmax (offset 368) */ "iii\0" "glMinmax\0" "glMinmaxEXT\0" "\0" - /* _mesa_function_pool[33146]: TexCoord4d (offset 118) */ + /* _mesa_function_pool[33162]: TexCoord4d (offset 118) */ "dddd\0" "glTexCoord4d\0" "\0" - /* _mesa_function_pool[33165]: DeformationMap3dSGIX (dynamic) */ + /* _mesa_function_pool[33181]: DeformationMap3dSGIX (dynamic) */ "iddiiddiiddiip\0" "glDeformationMap3dSGIX\0" "\0" - /* _mesa_function_pool[33204]: TexCoord4f (offset 120) */ + /* _mesa_function_pool[33220]: TexCoord4f (offset 120) */ "ffff\0" "glTexCoord4f\0" "\0" - /* _mesa_function_pool[33223]: FogCoorddvEXT (will be remapped) */ + /* _mesa_function_pool[33239]: FogCoorddvEXT (will be remapped) */ "p\0" "glFogCoorddv\0" "glFogCoorddvEXT\0" "\0" - /* _mesa_function_pool[33255]: FinishTextureSUNX (dynamic) */ + /* _mesa_function_pool[33271]: FinishTextureSUNX (dynamic) */ "\0" "glFinishTextureSUNX\0" "\0" - /* _mesa_function_pool[33277]: GetFragmentLightfvSGIX (dynamic) */ + /* _mesa_function_pool[33293]: GetFragmentLightfvSGIX (dynamic) */ "iip\0" "glGetFragmentLightfvSGIX\0" "\0" - /* _mesa_function_pool[33307]: Binormal3fvEXT (dynamic) */ + /* _mesa_function_pool[33323]: Binormal3fvEXT (dynamic) */ "p\0" "glBinormal3fvEXT\0" "\0" - /* _mesa_function_pool[33327]: GetBooleanv (offset 258) */ + /* _mesa_function_pool[33343]: GetBooleanv (offset 258) */ "ip\0" "glGetBooleanv\0" "\0" - /* _mesa_function_pool[33345]: ColorFragmentOp3ATI (will be remapped) */ + /* _mesa_function_pool[33361]: ColorFragmentOp3ATI (will be remapped) */ "iiiiiiiiiiiii\0" "glColorFragmentOp3ATI\0" "\0" - /* _mesa_function_pool[33382]: Hint (offset 158) */ + /* _mesa_function_pool[33398]: Hint (offset 158) */ "ii\0" "glHint\0" "\0" - /* _mesa_function_pool[33393]: Color4dv (offset 28) */ + /* _mesa_function_pool[33409]: Color4dv (offset 28) */ "p\0" "glColor4dv\0" "\0" - /* _mesa_function_pool[33407]: VertexAttrib2svARB (will be remapped) */ + /* _mesa_function_pool[33423]: VertexAttrib2svARB (will be remapped) */ "ip\0" "glVertexAttrib2sv\0" "glVertexAttrib2svARB\0" "\0" - /* _mesa_function_pool[33450]: AreProgramsResidentNV (will be remapped) */ + /* _mesa_function_pool[33466]: AreProgramsResidentNV (will be remapped) */ "ipp\0" "glAreProgramsResidentNV\0" "\0" - /* _mesa_function_pool[33479]: WindowPos3svMESA (will be remapped) */ + /* _mesa_function_pool[33495]: WindowPos3svMESA (will be remapped) */ "p\0" "glWindowPos3sv\0" "glWindowPos3svARB\0" "glWindowPos3svMESA\0" "\0" - /* _mesa_function_pool[33534]: CopyColorSubTable (offset 347) */ + /* _mesa_function_pool[33550]: CopyColorSubTable (offset 347) */ "iiiii\0" "glCopyColorSubTable\0" "glCopyColorSubTableEXT\0" "\0" - /* _mesa_function_pool[33584]: WeightdvARB (dynamic) */ + /* _mesa_function_pool[33600]: WeightdvARB (dynamic) */ "ip\0" "glWeightdvARB\0" "\0" - /* _mesa_function_pool[33602]: DeleteRenderbuffersEXT (will be remapped) */ + /* _mesa_function_pool[33618]: DeleteRenderbuffersEXT (will be remapped) */ "ip\0" "glDeleteRenderbuffers\0" "glDeleteRenderbuffersEXT\0" "\0" - /* _mesa_function_pool[33653]: VertexAttrib4NubvARB (will be remapped) */ + /* _mesa_function_pool[33669]: VertexAttrib4NubvARB (will be remapped) */ "ip\0" "glVertexAttrib4Nubv\0" "glVertexAttrib4NubvARB\0" "\0" - /* _mesa_function_pool[33700]: VertexAttrib3dvNV (will be remapped) */ + /* _mesa_function_pool[33716]: VertexAttrib3dvNV (will be remapped) */ "ip\0" "glVertexAttrib3dvNV\0" "\0" - /* _mesa_function_pool[33724]: GetObjectParameterfvARB (will be remapped) */ + /* _mesa_function_pool[33740]: GetObjectParameterfvARB (will be remapped) */ "iip\0" "glGetObjectParameterfvARB\0" "\0" - /* _mesa_function_pool[33755]: Vertex4iv (offset 147) */ + /* _mesa_function_pool[33771]: Vertex4iv (offset 147) */ "p\0" "glVertex4iv\0" "\0" - /* _mesa_function_pool[33770]: GetProgramEnvParameterdvARB (will be remapped) */ + /* _mesa_function_pool[33786]: GetProgramEnvParameterdvARB (will be remapped) */ "iip\0" "glGetProgramEnvParameterdvARB\0" "\0" - /* _mesa_function_pool[33805]: TexCoord4dv (offset 119) */ + /* _mesa_function_pool[33821]: TexCoord4dv (offset 119) */ "p\0" "glTexCoord4dv\0" "\0" - /* _mesa_function_pool[33822]: LockArraysEXT (will be remapped) */ + /* _mesa_function_pool[33838]: LockArraysEXT (will be remapped) */ "ii\0" "glLockArraysEXT\0" "\0" - /* _mesa_function_pool[33842]: Begin (offset 7) */ + /* _mesa_function_pool[33858]: Begin (offset 7) */ "i\0" "glBegin\0" "\0" - /* _mesa_function_pool[33853]: LightModeli (offset 165) */ + /* _mesa_function_pool[33869]: LightModeli (offset 165) */ "ii\0" "glLightModeli\0" "\0" - /* _mesa_function_pool[33871]: VertexAttribI4ivEXT (will be remapped) */ + /* _mesa_function_pool[33887]: VertexAttribI4ivEXT (will be remapped) */ "ip\0" "glVertexAttribI4ivEXT\0" "glVertexAttribI4iv\0" "\0" - /* _mesa_function_pool[33916]: Rectfv (offset 89) */ + /* _mesa_function_pool[33932]: Rectfv (offset 89) */ "pp\0" "glRectfv\0" "\0" - /* _mesa_function_pool[33929]: LightModelf (offset 163) */ + /* _mesa_function_pool[33945]: LightModelf (offset 163) */ "if\0" "glLightModelf\0" "\0" - /* _mesa_function_pool[33947]: GetTexParameterfv (offset 282) */ + /* _mesa_function_pool[33963]: GetTexParameterfv (offset 282) */ "iip\0" "glGetTexParameterfv\0" "\0" - /* _mesa_function_pool[33972]: GetLightfv (offset 264) */ + /* _mesa_function_pool[33988]: GetLightfv (offset 264) */ "iip\0" "glGetLightfv\0" "\0" - /* _mesa_function_pool[33990]: PixelTransformParameterivEXT (dynamic) */ + /* _mesa_function_pool[34006]: PixelTransformParameterivEXT (dynamic) */ "iip\0" "glPixelTransformParameterivEXT\0" "\0" - /* _mesa_function_pool[34026]: BinormalPointerEXT (dynamic) */ + /* _mesa_function_pool[34042]: BinormalPointerEXT (dynamic) */ "iip\0" "glBinormalPointerEXT\0" "\0" - /* _mesa_function_pool[34052]: VertexAttrib1dNV (will be remapped) */ + /* _mesa_function_pool[34068]: VertexAttrib1dNV (will be remapped) */ "id\0" "glVertexAttrib1dNV\0" "\0" - /* _mesa_function_pool[34075]: GetCombinerInputParameterivNV (will be remapped) */ + /* _mesa_function_pool[34091]: GetCombinerInputParameterivNV (will be remapped) */ "iiiip\0" "glGetCombinerInputParameterivNV\0" "\0" - /* _mesa_function_pool[34114]: Disable (offset 214) */ + /* _mesa_function_pool[34130]: Disable (offset 214) */ "i\0" "glDisable\0" "\0" - /* _mesa_function_pool[34127]: MultiTexCoord2fvARB (offset 387) */ + /* _mesa_function_pool[34143]: MultiTexCoord2fvARB (offset 387) */ "ip\0" "glMultiTexCoord2fv\0" "glMultiTexCoord2fvARB\0" "\0" - /* _mesa_function_pool[34172]: GetRenderbufferParameterivEXT (will be remapped) */ + /* _mesa_function_pool[34188]: GetRenderbufferParameterivEXT (will be remapped) */ "iip\0" "glGetRenderbufferParameteriv\0" "glGetRenderbufferParameterivEXT\0" "\0" - /* _mesa_function_pool[34238]: CombinerParameterivNV (will be remapped) */ + /* _mesa_function_pool[34254]: CombinerParameterivNV (will be remapped) */ "ip\0" "glCombinerParameterivNV\0" "\0" - /* _mesa_function_pool[34266]: GenFragmentShadersATI (will be remapped) */ + /* _mesa_function_pool[34282]: GenFragmentShadersATI (will be remapped) */ "i\0" "glGenFragmentShadersATI\0" "\0" - /* _mesa_function_pool[34293]: DrawArrays (offset 310) */ + /* _mesa_function_pool[34309]: DrawArrays (offset 310) */ "iii\0" "glDrawArrays\0" "glDrawArraysEXT\0" "\0" - /* _mesa_function_pool[34327]: WeightuivARB (dynamic) */ + /* _mesa_function_pool[34343]: WeightuivARB (dynamic) */ "ip\0" "glWeightuivARB\0" "\0" - /* _mesa_function_pool[34346]: GetVertexAttribIivEXT (will be remapped) */ + /* _mesa_function_pool[34362]: GetVertexAttribIivEXT (will be remapped) */ "iip\0" "glGetVertexAttribIivEXT\0" "glGetVertexAttribIiv\0" "\0" - /* _mesa_function_pool[34396]: VertexAttrib2sARB (will be remapped) */ + /* _mesa_function_pool[34412]: VertexAttrib2sARB (will be remapped) */ "iii\0" "glVertexAttrib2s\0" "glVertexAttrib2sARB\0" "\0" - /* _mesa_function_pool[34438]: GetnTexImageARB (will be remapped) */ + /* _mesa_function_pool[34454]: GetnTexImageARB (will be remapped) */ "iiiiip\0" "glGetnTexImageARB\0" "\0" - /* _mesa_function_pool[34464]: ColorMask (offset 210) */ + /* _mesa_function_pool[34480]: ColorMask (offset 210) */ "iiii\0" "glColorMask\0" "\0" - /* _mesa_function_pool[34482]: GenAsyncMarkersSGIX (dynamic) */ + /* _mesa_function_pool[34498]: GenAsyncMarkersSGIX (dynamic) */ "i\0" "glGenAsyncMarkersSGIX\0" "\0" - /* _mesa_function_pool[34507]: Tangent3svEXT (dynamic) */ + /* _mesa_function_pool[34523]: Tangent3svEXT (dynamic) */ "p\0" "glTangent3svEXT\0" "\0" - /* _mesa_function_pool[34526]: GetListParameterivSGIX (dynamic) */ + /* _mesa_function_pool[34542]: GetListParameterivSGIX (dynamic) */ "iip\0" "glGetListParameterivSGIX\0" "\0" - /* _mesa_function_pool[34556]: BindBufferARB (will be remapped) */ + /* _mesa_function_pool[34572]: BindBufferARB (will be remapped) */ "ii\0" "glBindBuffer\0" "glBindBufferARB\0" "\0" - /* _mesa_function_pool[34589]: GetInfoLogARB (will be remapped) */ + /* _mesa_function_pool[34605]: GetInfoLogARB (will be remapped) */ "iipp\0" "glGetInfoLogARB\0" "\0" - /* _mesa_function_pool[34611]: RasterPos4iv (offset 83) */ + /* _mesa_function_pool[34627]: RasterPos4iv (offset 83) */ "p\0" "glRasterPos4iv\0" "\0" - /* _mesa_function_pool[34629]: Enable (offset 215) */ + /* _mesa_function_pool[34645]: Enable (offset 215) */ "i\0" "glEnable\0" "\0" - /* _mesa_function_pool[34641]: LineStipple (offset 167) */ + /* _mesa_function_pool[34657]: LineStipple (offset 167) */ "ii\0" "glLineStipple\0" "\0" - /* _mesa_function_pool[34659]: VertexAttribs4svNV (will be remapped) */ + /* _mesa_function_pool[34675]: VertexAttribs4svNV (will be remapped) */ "iip\0" "glVertexAttribs4svNV\0" "\0" - /* _mesa_function_pool[34685]: EdgeFlagPointerListIBM (dynamic) */ + /* _mesa_function_pool[34701]: EdgeFlagPointerListIBM (dynamic) */ "ipi\0" "glEdgeFlagPointerListIBM\0" "\0" - /* _mesa_function_pool[34715]: UniformMatrix3x2fv (will be remapped) */ + /* _mesa_function_pool[34731]: UniformMatrix3x2fv (will be remapped) */ "iiip\0" "glUniformMatrix3x2fv\0" "\0" - /* _mesa_function_pool[34742]: GetMinmaxParameterfv (offset 365) */ + /* _mesa_function_pool[34758]: GetMinmaxParameterfv (offset 365) */ "iip\0" "glGetMinmaxParameterfv\0" "glGetMinmaxParameterfvEXT\0" "\0" - /* _mesa_function_pool[34796]: VertexAttrib1fvARB (will be remapped) */ + /* _mesa_function_pool[34812]: VertexAttrib1fvARB (will be remapped) */ "ip\0" "glVertexAttrib1fv\0" "glVertexAttrib1fvARB\0" "\0" - /* _mesa_function_pool[34839]: GenBuffersARB (will be remapped) */ + /* _mesa_function_pool[34855]: GenBuffersARB (will be remapped) */ "ip\0" "glGenBuffers\0" "glGenBuffersARB\0" "\0" - /* _mesa_function_pool[34872]: VertexAttribs1svNV (will be remapped) */ + /* _mesa_function_pool[34888]: VertexAttribs1svNV (will be remapped) */ "iip\0" "glVertexAttribs1svNV\0" "\0" - /* _mesa_function_pool[34898]: Vertex3fv (offset 137) */ + /* _mesa_function_pool[34914]: Vertex3fv (offset 137) */ "p\0" "glVertex3fv\0" "\0" - /* _mesa_function_pool[34913]: GetTexBumpParameterivATI (will be remapped) */ + /* _mesa_function_pool[34929]: GetTexBumpParameterivATI (will be remapped) */ "ip\0" "glGetTexBumpParameterivATI\0" "\0" - /* _mesa_function_pool[34944]: Binormal3bEXT (dynamic) */ + /* _mesa_function_pool[34960]: Binormal3bEXT (dynamic) */ "iii\0" "glBinormal3bEXT\0" "\0" - /* _mesa_function_pool[34965]: FragmentMaterialivSGIX (dynamic) */ + /* _mesa_function_pool[34981]: FragmentMaterialivSGIX (dynamic) */ "iip\0" "glFragmentMaterialivSGIX\0" "\0" - /* _mesa_function_pool[34995]: IsRenderbufferEXT (will be remapped) */ + /* _mesa_function_pool[35011]: IsRenderbufferEXT (will be remapped) */ "i\0" "glIsRenderbuffer\0" "glIsRenderbufferEXT\0" "\0" - /* _mesa_function_pool[35035]: GenProgramsNV (will be remapped) */ + /* _mesa_function_pool[35051]: GenProgramsNV (will be remapped) */ "ip\0" "glGenProgramsARB\0" "glGenProgramsNV\0" "\0" - /* _mesa_function_pool[35072]: VertexAttrib4dvNV (will be remapped) */ + /* _mesa_function_pool[35088]: VertexAttrib4dvNV (will be remapped) */ "ip\0" "glVertexAttrib4dvNV\0" "\0" - /* _mesa_function_pool[35096]: EndFragmentShaderATI (will be remapped) */ + /* _mesa_function_pool[35112]: EndFragmentShaderATI (will be remapped) */ "\0" "glEndFragmentShaderATI\0" "\0" - /* _mesa_function_pool[35121]: Binormal3iEXT (dynamic) */ + /* _mesa_function_pool[35137]: Binormal3iEXT (dynamic) */ "iii\0" "glBinormal3iEXT\0" "\0" - /* _mesa_function_pool[35142]: WindowPos2fMESA (will be remapped) */ + /* _mesa_function_pool[35158]: WindowPos2fMESA (will be remapped) */ "ff\0" "glWindowPos2f\0" "glWindowPos2fARB\0" @@ -5097,7 +5098,7 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 5288, GetProgramInfoLog_remap_index }, { 425, GetProgramiv_remap_index }, { 7178, GetShaderInfoLog_remap_index }, - { 32927, GetShaderiv_remap_index }, + { 32943, GetShaderiv_remap_index }, { 14151, IsProgram_remap_index }, { 13052, IsShader_remap_index }, { 10732, StencilFuncSeparate_remap_index }, @@ -5105,14 +5106,14 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 8243, StencilOpSeparate_remap_index }, { 23832, UniformMatrix2x3fv_remap_index }, { 3040, UniformMatrix2x4fv_remap_index }, - { 34715, UniformMatrix3x2fv_remap_index }, - { 32227, UniformMatrix3x4fv_remap_index }, + { 34731, UniformMatrix3x2fv_remap_index }, + { 32243, UniformMatrix3x4fv_remap_index }, { 17280, UniformMatrix4x2fv_remap_index }, { 3531, UniformMatrix4x3fv_remap_index }, { 5511, ClampColor_remap_index }, { 19232, ClearBufferfi_remap_index }, { 18648, ClearBufferfv_remap_index }, - { 31182, ClearBufferiv_remap_index }, + { 31198, ClearBufferiv_remap_index }, { 14356, ClearBufferuiv_remap_index }, { 21354, GetStringi_remap_index }, { 2981, TexBuffer_remap_index }, @@ -5121,7 +5122,7 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 10832, GetInteger64i_v_remap_index }, { 24912, VertexAttribDivisor_remap_index }, { 10620, LoadTransposeMatrixdARB_remap_index }, - { 32656, LoadTransposeMatrixfARB_remap_index }, + { 32672, LoadTransposeMatrixfARB_remap_index }, { 6196, MultTransposeMatrixdARB_remap_index }, { 25278, MultTransposeMatrixfARB_remap_index }, { 236, SampleCoverageARB_remap_index }, @@ -5133,8 +5134,8 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 21776, CompressedTexSubImage3DARB_remap_index }, { 30288, GetCompressedTexImageARB_remap_index }, { 4123, DisableVertexAttribArrayARB_remap_index }, - { 31792, EnableVertexAttribArrayARB_remap_index }, - { 33770, GetProgramEnvParameterdvARB_remap_index }, + { 31808, EnableVertexAttribArrayARB_remap_index }, + { 33786, GetProgramEnvParameterdvARB_remap_index }, { 25158, GetProgramEnvParameterfvARB_remap_index }, { 29205, GetProgramLocalParameterdvARB_remap_index }, { 8719, GetProgramLocalParameterfvARB_remap_index }, @@ -5149,21 +5150,21 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 9594, ProgramEnvParameter4fvARB_remap_index }, { 4292, ProgramLocalParameter4dARB_remap_index }, { 13861, ProgramLocalParameter4dvARB_remap_index }, - { 31203, ProgramLocalParameter4fARB_remap_index }, + { 31219, ProgramLocalParameter4fARB_remap_index }, { 27568, ProgramLocalParameter4fvARB_remap_index }, { 30042, ProgramStringARB_remap_index }, { 21085, VertexAttrib1dARB_remap_index }, { 16689, VertexAttrib1dvARB_remap_index }, { 4488, VertexAttrib1fARB_remap_index }, - { 34796, VertexAttrib1fvARB_remap_index }, + { 34812, VertexAttrib1fvARB_remap_index }, { 7769, VertexAttrib1sARB_remap_index }, { 2361, VertexAttrib1svARB_remap_index }, { 16102, VertexAttrib2dARB_remap_index }, { 18669, VertexAttrib2dvARB_remap_index }, { 1693, VertexAttrib2fARB_remap_index }, { 18782, VertexAttrib2fvARB_remap_index }, - { 34396, VertexAttrib2sARB_remap_index }, - { 33407, VertexAttrib2svARB_remap_index }, + { 34412, VertexAttrib2sARB_remap_index }, + { 33423, VertexAttrib2svARB_remap_index }, { 12036, VertexAttrib3dARB_remap_index }, { 9261, VertexAttrib3dvARB_remap_index }, { 1780, VertexAttrib3fARB_remap_index }, @@ -5174,7 +5175,7 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 19055, VertexAttrib4NivARB_remap_index }, { 24104, VertexAttrib4NsvARB_remap_index }, { 25110, VertexAttrib4NubARB_remap_index }, - { 33653, VertexAttrib4NubvARB_remap_index }, + { 33669, VertexAttrib4NubvARB_remap_index }, { 20442, VertexAttrib4NuivARB_remap_index }, { 3361, VertexAttrib4NusvARB_remap_index }, { 11625, VertexAttrib4bvARB_remap_index }, @@ -5184,22 +5185,22 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 12594, VertexAttrib4fvARB_remap_index }, { 10975, VertexAttrib4ivARB_remap_index }, { 18462, VertexAttrib4sARB_remap_index }, - { 32842, VertexAttrib4svARB_remap_index }, + { 32858, VertexAttrib4svARB_remap_index }, { 17751, VertexAttrib4ubvARB_remap_index }, - { 32116, VertexAttrib4uivARB_remap_index }, + { 32132, VertexAttrib4uivARB_remap_index }, { 21524, VertexAttrib4usvARB_remap_index }, { 23627, VertexAttribPointerARB_remap_index }, - { 34556, BindBufferARB_remap_index }, + { 34572, BindBufferARB_remap_index }, { 7476, BufferDataARB_remap_index }, { 1531, BufferSubDataARB_remap_index }, - { 32402, DeleteBuffersARB_remap_index }, - { 34839, GenBuffersARB_remap_index }, + { 32418, DeleteBuffersARB_remap_index }, + { 34855, GenBuffersARB_remap_index }, { 18825, GetBufferParameterivARB_remap_index }, { 17898, GetBufferPointervARB_remap_index }, { 1484, GetBufferSubDataARB_remap_index }, - { 32064, IsBufferARB_remap_index }, + { 32080, IsBufferARB_remap_index }, { 28052, MapBufferARB_remap_index }, - { 33057, UnmapBufferARB_remap_index }, + { 33073, UnmapBufferARB_remap_index }, { 332, BeginQueryARB_remap_index }, { 21180, DeleteQueriesARB_remap_index }, { 12913, EndQueryARB_remap_index }, @@ -5217,8 +5218,8 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 12658, GetActiveUniformARB_remap_index }, { 10086, GetAttachedObjectsARB_remap_index }, { 10393, GetHandleARB_remap_index }, - { 34589, GetInfoLogARB_remap_index }, - { 33724, GetObjectParameterfvARB_remap_index }, + { 34605, GetInfoLogARB_remap_index }, + { 33740, GetObjectParameterfvARB_remap_index }, { 29079, GetObjectParameterivARB_remap_index }, { 30525, GetShaderSourceARB_remap_index }, { 29749, GetUniformLocationARB_remap_index }, @@ -5227,7 +5228,7 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 21569, LinkProgramARB_remap_index }, { 21627, ShaderSourceARB_remap_index }, { 8143, Uniform1fARB_remap_index }, - { 31454, Uniform1fvARB_remap_index }, + { 31470, Uniform1fvARB_remap_index }, { 23575, Uniform1iARB_remap_index }, { 22424, Uniform1ivARB_remap_index }, { 2310, Uniform2fARB_remap_index }, @@ -5264,8 +5265,8 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 29423, TexBufferARB_remap_index }, { 17418, BindVertexArray_remap_index }, { 15594, GenVertexArrays_remap_index }, - { 31994, CopyBufferSubData_remap_index }, - { 32946, ClientWaitSync_remap_index }, + { 32010, CopyBufferSubData_remap_index }, + { 32962, ClientWaitSync_remap_index }, { 2802, DeleteSync_remap_index }, { 7810, FenceSync_remap_index }, { 16161, GetInteger64v_remap_index }, @@ -5274,7 +5275,7 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 10017, WaitSync_remap_index }, { 4091, DrawElementsBaseVertex_remap_index }, { 19748, DrawElementsInstancedBaseVertex_remap_index }, - { 32306, DrawRangeElementsBaseVertex_remap_index }, + { 32322, DrawRangeElementsBaseVertex_remap_index }, { 28083, MultiDrawElementsBaseVertex_remap_index }, { 17684, BlendEquationSeparateiARB_remap_index }, { 18918, BlendEquationiARB_remap_index }, @@ -5289,24 +5290,24 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 27191, GetSamplerParameteriv_remap_index }, { 15139, IsSampler_remap_index }, { 17371, SamplerParameterIiv_remap_index }, - { 32345, SamplerParameterIuiv_remap_index }, + { 32361, SamplerParameterIuiv_remap_index }, { 23884, SamplerParameterf_remap_index }, { 17545, SamplerParameterfv_remap_index }, { 23859, SamplerParameteri_remap_index }, { 19294, SamplerParameteriv_remap_index }, { 20101, ColorP3ui_remap_index }, - { 32593, ColorP3uiv_remap_index }, + { 32609, ColorP3uiv_remap_index }, { 22530, ColorP4ui_remap_index }, { 4234, ColorP4uiv_remap_index }, { 26733, MultiTexCoordP1ui_remap_index }, { 13349, MultiTexCoordP1uiv_remap_index }, { 1668, MultiTexCoordP2ui_remap_index }, - { 31766, MultiTexCoordP2uiv_remap_index }, + { 31782, MultiTexCoordP2uiv_remap_index }, { 14751, MultiTexCoordP3ui_remap_index }, { 11051, MultiTexCoordP3uiv_remap_index }, { 23428, MultiTexCoordP4ui_remap_index }, { 3953, MultiTexCoordP4uiv_remap_index }, - { 31412, NormalP3ui_remap_index }, + { 31428, NormalP3ui_remap_index }, { 20277, NormalP3uiv_remap_index }, { 26436, SecondaryColorP3ui_remap_index }, { 20295, SecondaryColorP3uiv_remap_index }, @@ -5320,7 +5321,7 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 5780, TexCoordP4uiv_remap_index }, { 10502, VertexAttribP1ui_remap_index }, { 14938, VertexAttribP1uiv_remap_index }, - { 31429, VertexAttribP2ui_remap_index }, + { 31445, VertexAttribP2ui_remap_index }, { 5572, VertexAttribP2uiv_remap_index }, { 3426, VertexAttribP3ui_remap_index }, { 21036, VertexAttribP3uiv_remap_index }, @@ -5358,7 +5359,7 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 3153, GetnPixelMapusvARB_remap_index }, { 1364, GetnPolygonStippleARB_remap_index }, { 22614, GetnSeparableFilterARB_remap_index }, - { 34438, GetnTexImageARB_remap_index }, + { 34454, GetnTexImageARB_remap_index }, { 19723, GetnUniformdvARB_remap_index }, { 4905, GetnUniformfvARB_remap_index }, { 10527, GetnUniformivARB_remap_index }, @@ -5381,7 +5382,7 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 7599, VertexPointerEXT_remap_index }, { 3867, PointParameterfEXT_remap_index }, { 8450, PointParameterfvEXT_remap_index }, - { 33822, LockArraysEXT_remap_index }, + { 33838, LockArraysEXT_remap_index }, { 15854, UnlockArraysEXT_remap_index }, { 1272, SecondaryColor3bEXT_remap_index }, { 8643, SecondaryColor3bvEXT_remap_index }, @@ -5392,7 +5393,7 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 490, SecondaryColor3iEXT_remap_index }, { 17136, SecondaryColor3ivEXT_remap_index }, { 10760, SecondaryColor3sEXT_remap_index }, - { 32610, SecondaryColor3svEXT_remap_index }, + { 32626, SecondaryColor3svEXT_remap_index }, { 28915, SecondaryColor3ubEXT_remap_index }, { 22720, SecondaryColor3ubvEXT_remap_index }, { 13716, SecondaryColor3uiEXT_remap_index }, @@ -5404,7 +5405,7 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 22359, MultiDrawElementsEXT_remap_index }, { 22570, FogCoordPointerEXT_remap_index }, { 4956, FogCoorddEXT_remap_index }, - { 33223, FogCoorddvEXT_remap_index }, + { 33239, FogCoorddvEXT_remap_index }, { 5073, FogCoordfEXT_remap_index }, { 28838, FogCoordfvEXT_remap_index }, { 12637, PixelTexGenSGIX_remap_index }, @@ -5413,13 +5414,13 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 5898, VertexArrayRangeNV_remap_index }, { 29863, CombinerInputNV_remap_index }, { 2232, CombinerOutputNV_remap_index }, - { 32763, CombinerParameterfNV_remap_index }, + { 32779, CombinerParameterfNV_remap_index }, { 5752, CombinerParameterfvNV_remap_index }, { 23909, CombinerParameteriNV_remap_index }, - { 34238, CombinerParameterivNV_remap_index }, + { 34254, CombinerParameterivNV_remap_index }, { 7887, FinalCombinerInputNV_remap_index }, { 1629, GetCombinerInputParameterfvNV_remap_index }, - { 34075, GetCombinerInputParameterivNV_remap_index }, + { 34091, GetCombinerInputParameterivNV_remap_index }, { 14712, GetCombinerOutputParameterfvNV_remap_index }, { 14540, GetCombinerOutputParameterivNV_remap_index }, { 7273, GetFinalCombinerInputParameterfvNV_remap_index }, @@ -5427,7 +5428,7 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 13327, ResizeBuffersMESA_remap_index }, { 11863, WindowPos2dMESA_remap_index }, { 1065, WindowPos2dvMESA_remap_index }, - { 35142, WindowPos2fMESA_remap_index }, + { 35158, WindowPos2fMESA_remap_index }, { 8588, WindowPos2fvMESA_remap_index }, { 19366, WindowPos2iMESA_remap_index }, { 21844, WindowPos2ivMESA_remap_index }, @@ -5438,14 +5439,14 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 536, WindowPos3fMESA_remap_index }, { 15915, WindowPos3fvMESA_remap_index }, { 25639, WindowPos3iMESA_remap_index }, - { 31939, WindowPos3ivMESA_remap_index }, + { 31955, WindowPos3ivMESA_remap_index }, { 20164, WindowPos3sMESA_remap_index }, - { 33479, WindowPos3svMESA_remap_index }, + { 33495, WindowPos3svMESA_remap_index }, { 11814, WindowPos4dMESA_remap_index }, { 18142, WindowPos4dvMESA_remap_index }, { 14842, WindowPos4fMESA_remap_index }, - { 32500, WindowPos4fvMESA_remap_index }, - { 32092, WindowPos4iMESA_remap_index }, + { 32516, WindowPos4fvMESA_remap_index }, + { 32108, WindowPos4iMESA_remap_index }, { 13166, WindowPos4ivMESA_remap_index }, { 20392, WindowPos4sMESA_remap_index }, { 3451, WindowPos4svMESA_remap_index }, @@ -5458,11 +5459,11 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 8856, IsFenceNV_remap_index }, { 14467, SetFenceNV_remap_index }, { 4544, TestFenceNV_remap_index }, - { 33450, AreProgramsResidentNV_remap_index }, - { 32805, BindProgramNV_remap_index }, + { 33466, AreProgramsResidentNV_remap_index }, + { 32821, BindProgramNV_remap_index }, { 27603, DeleteProgramsNV_remap_index }, { 22938, ExecuteProgramNV_remap_index }, - { 35035, GenProgramsNV_remap_index }, + { 35051, GenProgramsNV_remap_index }, { 24938, GetProgramParameterdvNV_remap_index }, { 11240, GetProgramParameterfvNV_remap_index }, { 27986, GetProgramStringNV_remap_index }, @@ -5477,12 +5478,12 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 29539, ProgramParameters4dvNV_remap_index }, { 25946, ProgramParameters4fvNV_remap_index }, { 22148, RequestResidentProgramsNV_remap_index }, - { 32284, TrackMatrixNV_remap_index }, - { 34052, VertexAttrib1dNV_remap_index }, + { 32300, TrackMatrixNV_remap_index }, + { 34068, VertexAttrib1dNV_remap_index }, { 14378, VertexAttrib1dvNV_remap_index }, { 30144, VertexAttrib1fNV_remap_index }, { 2589, VertexAttrib1fvNV_remap_index }, - { 32557, VertexAttrib1sNV_remap_index }, + { 32573, VertexAttrib1sNV_remap_index }, { 15988, VertexAttrib1svNV_remap_index }, { 5264, VertexAttrib2dNV_remap_index }, { 14271, VertexAttrib2dvNV_remap_index }, @@ -5491,13 +5492,13 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 6567, VertexAttrib2sNV_remap_index }, { 20218, VertexAttrib2svNV_remap_index }, { 12011, VertexAttrib3dNV_remap_index }, - { 33700, VertexAttrib3dvNV_remap_index }, + { 33716, VertexAttrib3dvNV_remap_index }, { 11026, VertexAttrib3fNV_remap_index }, { 26338, VertexAttrib3fvNV_remap_index }, { 23682, VertexAttrib3sNV_remap_index }, { 25220, VertexAttrib3svNV_remap_index }, { 30612, VertexAttrib4dNV_remap_index }, - { 35072, VertexAttrib4dvNV_remap_index }, + { 35088, VertexAttrib4dvNV_remap_index }, { 5692, VertexAttrib4fNV_remap_index }, { 10062, VertexAttrib4fvNV_remap_index }, { 28462, VertexAttrib4sNV_remap_index }, @@ -5507,32 +5508,32 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 23118, VertexAttribPointerNV_remap_index }, { 2404, VertexAttribs1dvNV_remap_index }, { 27868, VertexAttribs1fvNV_remap_index }, - { 34872, VertexAttribs1svNV_remap_index }, + { 34888, VertexAttribs1svNV_remap_index }, { 11077, VertexAttribs2dvNV_remap_index }, { 26995, VertexAttribs2fvNV_remap_index }, { 18738, VertexAttribs2svNV_remap_index }, { 5800, VertexAttribs3dvNV_remap_index }, { 2263, VertexAttribs3fvNV_remap_index }, - { 31661, VertexAttribs3svNV_remap_index }, + { 31677, VertexAttribs3svNV_remap_index }, { 28552, VertexAttribs4dvNV_remap_index }, { 5872, VertexAttribs4fvNV_remap_index }, - { 34659, VertexAttribs4svNV_remap_index }, - { 31367, VertexAttribs4ubvNV_remap_index }, + { 34675, VertexAttribs4svNV_remap_index }, + { 31383, VertexAttribs4ubvNV_remap_index }, { 28622, GetTexBumpParameterfvATI_remap_index }, - { 34913, GetTexBumpParameterivATI_remap_index }, + { 34929, GetTexBumpParameterivATI_remap_index }, { 19846, TexBumpParameterfvATI_remap_index }, { 22019, TexBumpParameterivATI_remap_index }, { 16552, AlphaFragmentOp1ATI_remap_index }, { 27286, AlphaFragmentOp2ATI_remap_index }, { 26254, AlphaFragmentOp3ATI_remap_index }, - { 31588, BeginFragmentShaderATI_remap_index }, - { 33004, BindFragmentShaderATI_remap_index }, + { 31604, BeginFragmentShaderATI_remap_index }, + { 33020, BindFragmentShaderATI_remap_index }, { 25349, ColorFragmentOp1ATI_remap_index }, { 4711, ColorFragmentOp2ATI_remap_index }, - { 33345, ColorFragmentOp3ATI_remap_index }, + { 33361, ColorFragmentOp3ATI_remap_index }, { 6038, DeleteFragmentShaderATI_remap_index }, - { 35096, EndFragmentShaderATI_remap_index }, - { 34266, GenFragmentShadersATI_remap_index }, + { 35112, EndFragmentShaderATI_remap_index }, + { 34282, GenFragmentShadersATI_remap_index }, { 27149, PassTexCoordATI_remap_index }, { 7579, SampleMapATI_remap_index }, { 28733, SetFragmentShaderConstantATI_remap_index }, @@ -5550,14 +5551,14 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 9528, ProgramNamedParameter4fNV_remap_index }, { 12502, ProgramNamedParameter4fvNV_remap_index }, { 18053, PrimitiveRestartIndexNV_remap_index }, - { 32477, PrimitiveRestartNV_remap_index }, + { 32493, PrimitiveRestartNV_remap_index }, { 25925, DepthBoundsEXT_remap_index }, { 1164, BlendEquationSeparateEXT_remap_index }, { 15689, BindFramebufferEXT_remap_index }, { 27379, BindRenderbufferEXT_remap_index }, { 10309, CheckFramebufferStatusEXT_remap_index }, { 24254, DeleteFramebuffersEXT_remap_index }, - { 33602, DeleteRenderbuffersEXT_remap_index }, + { 33618, DeleteRenderbuffersEXT_remap_index }, { 14295, FramebufferRenderbufferEXT_remap_index }, { 14484, FramebufferTexture1DEXT_remap_index }, { 12296, FramebufferTexture2DEXT_remap_index }, @@ -5566,9 +5567,9 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 18603, GenRenderbuffersEXT_remap_index }, { 7315, GenerateMipmapEXT_remap_index }, { 23211, GetFramebufferAttachmentParameterivEXT_remap_index }, - { 34172, GetRenderbufferParameterivEXT_remap_index }, + { 34188, GetRenderbufferParameterivEXT_remap_index }, { 21899, IsFramebufferEXT_remap_index }, - { 34995, IsRenderbufferEXT_remap_index }, + { 35011, IsRenderbufferEXT_remap_index }, { 8803, RenderbufferStorageEXT_remap_index }, { 715, BlitFramebufferEXT_remap_index }, { 15255, BufferParameteriAPPLE_remap_index }, @@ -5576,7 +5577,7 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 1912, BindFragDataLocationEXT_remap_index }, { 26038, GetFragDataLocationEXT_remap_index }, { 11355, GetUniformuivEXT_remap_index }, - { 34346, GetVertexAttribIivEXT_remap_index }, + { 34362, GetVertexAttribIivEXT_remap_index }, { 4561, GetVertexAttribIuivEXT_remap_index }, { 12774, Uniform1uiEXT_remap_index }, { 29624, Uniform1uivEXT_remap_index }, @@ -5597,10 +5598,10 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 28254, VertexAttribI3iEXT_remap_index }, { 26688, VertexAttribI3ivEXT_remap_index }, { 3608, VertexAttribI3uiEXT_remap_index }, - { 32180, VertexAttribI3uivEXT_remap_index }, + { 32196, VertexAttribI3uivEXT_remap_index }, { 23487, VertexAttribI4bvEXT_remap_index }, { 15548, VertexAttribI4iEXT_remap_index }, - { 33871, VertexAttribI4ivEXT_remap_index }, + { 33887, VertexAttribI4ivEXT_remap_index }, { 14198, VertexAttribI4svEXT_remap_index }, { 17571, VertexAttribI4ubvEXT_remap_index }, { 17199, VertexAttribI4uiEXT_remap_index }, @@ -5629,7 +5630,7 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 15170, EndTransformFeedbackEXT_remap_index }, { 11553, GetTransformFeedbackVaryingEXT_remap_index }, { 22204, TransformFeedbackVaryingsEXT_remap_index }, - { 31268, ProvokingVertexEXT_remap_index }, + { 31284, ProvokingVertexEXT_remap_index }, { 11501, GetTexParameterPointervAPPLE_remap_index }, { 5528, TextureRangeAPPLE_remap_index }, { 12368, GetObjectParameterivAPPLE_remap_index }, @@ -5657,7 +5658,7 @@ static const struct gl_function_remap MESA_alt_functions[] = { { 11973, _gloffset_BlendEquation }, /* from GL_EXT_color_subtable */ { 18164, _gloffset_ColorSubTable }, - { 33534, _gloffset_CopyColorSubTable }, + { 33550, _gloffset_CopyColorSubTable }, /* from GL_EXT_convolution */ { 277, _gloffset_ConvolutionFilter1D }, { 2628, _gloffset_CopyConvolutionFilter1D }, @@ -5671,13 +5672,13 @@ static const struct gl_function_remap MESA_alt_functions[] = { { 26774, _gloffset_ConvolutionParameterf }, { 28488, _gloffset_GetConvolutionParameterfv }, { 29345, _gloffset_GetConvolutionFilter }, - { 31876, _gloffset_CopyConvolutionFilter2D }, + { 31892, _gloffset_CopyConvolutionFilter2D }, /* from GL_EXT_copy_texture */ { 16048, _gloffset_CopyTexSubImage3D }, { 17851, _gloffset_CopyTexImage2D }, { 26164, _gloffset_CopyTexImage1D }, { 29026, _gloffset_CopyTexSubImage2D }, - { 31488, _gloffset_CopyTexSubImage1D }, + { 31504, _gloffset_CopyTexSubImage1D }, /* from GL_EXT_draw_range_elements */ { 10168, _gloffset_DrawRangeElements }, /* from GL_EXT_histogram */ @@ -5689,8 +5690,8 @@ static const struct gl_function_remap MESA_alt_functions[] = { { 28378, _gloffset_ResetMinmax }, { 29242, _gloffset_GetHistogramParameteriv }, { 30411, _gloffset_GetHistogram }, - { 33120, _gloffset_Minmax }, - { 34742, _gloffset_GetMinmaxParameterfv }, + { 33136, _gloffset_Minmax }, + { 34758, _gloffset_GetMinmaxParameterfv }, /* from GL_EXT_paletted_texture */ { 9014, _gloffset_ColorTable }, { 16228, _gloffset_GetColorTable }, @@ -5708,11 +5709,11 @@ static const struct gl_function_remap MESA_alt_functions[] = { { 14402, _gloffset_GenTextures }, { 16759, _gloffset_DeleteTextures }, { 20988, _gloffset_IsTexture }, - { 31553, _gloffset_BindTexture }, + { 31569, _gloffset_BindTexture }, /* from GL_EXT_vertex_array */ { 25865, _gloffset_ArrayElement }, - { 32708, _gloffset_GetPointerv }, - { 34293, _gloffset_DrawArrays }, + { 32724, _gloffset_GetPointerv }, + { 34309, _gloffset_DrawArrays }, /* from GL_SGI_color_table */ { 8292, _gloffset_ColorTableParameteriv }, { 9014, _gloffset_ColorTable }, @@ -5753,9 +5754,9 @@ static const struct gl_function_remap MESA_alt_functions[] = { { 28963, _gloffset_MultiTexCoord2ivARB }, { 29302, _gloffset_MultiTexCoord1iARB }, { 30686, _gloffset_MultiTexCoord4svARB }, - { 31310, _gloffset_MultiTexCoord1fARB }, - { 31615, _gloffset_MultiTexCoord4fARB }, - { 34127, _gloffset_MultiTexCoord2fvARB }, + { 31326, _gloffset_MultiTexCoord1fARB }, + { 31631, _gloffset_MultiTexCoord4fARB }, + { 34143, _gloffset_MultiTexCoord2fvARB }, { -1, -1 } }; diff --git a/mesalib/src/mesa/main/renderbuffer.h b/mesalib/src/mesa/main/renderbuffer.h index f9329d55f..de471cd6b 100644 --- a/mesalib/src/mesa/main/renderbuffer.h +++ b/mesalib/src/mesa/main/renderbuffer.h @@ -108,7 +108,7 @@ extern void _mesa_reference_renderbuffer_(struct gl_renderbuffer **ptr, struct gl_renderbuffer *rb); -static INLINE void +static inline void _mesa_reference_renderbuffer(struct gl_renderbuffer **ptr, struct gl_renderbuffer *rb) { diff --git a/mesalib/src/mesa/main/samplerobj.c b/mesalib/src/mesa/main/samplerobj.c index 3ee27fb2c..7cf0654ad 100644 --- a/mesalib/src/mesa/main/samplerobj.c +++ b/mesalib/src/mesa/main/samplerobj.c @@ -313,7 +313,7 @@ validate_texture_wrap_mode(struct gl_context *ctx, GLenum wrap) /** * This is called just prior to changing any sampler object state. */ -static INLINE void +static inline void flush(struct gl_context *ctx) { FLUSH_VERTICES(ctx, _NEW_TEXTURE); diff --git a/mesalib/src/mesa/main/samplerobj.h b/mesalib/src/mesa/main/samplerobj.h index a839010b7..fe7d5a7d3 100644 --- a/mesalib/src/mesa/main/samplerobj.h +++ b/mesalib/src/mesa/main/samplerobj.h @@ -28,7 +28,7 @@ struct dd_function_table; -static INLINE struct gl_sampler_object * +static inline struct gl_sampler_object * _mesa_get_samplerobj(struct gl_context *ctx, GLuint unit) { if (ctx->Texture.Unit[unit].Sampler) diff --git a/mesalib/src/mesa/main/shader_query.cpp b/mesalib/src/mesa/main/shader_query.cpp new file mode 100644 index 000000000..bd873a491 --- /dev/null +++ b/mesalib/src/mesa/main/shader_query.cpp @@ -0,0 +1,239 @@ +/* + * Copyright © 2011 Intel Corporation + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice (including the next + * paragraph) shall be included in all copies or substantial portions of the + * Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. + */ + +/** + * \file shader_query.cpp + * C-to-C++ bridge functions to query GLSL shader data + * + * \author Ian Romanick <ian.d.romanick@intel.com> + */ + +#include "main/core.h" +#include "glsl_symbol_table.h" +#include "ir.h" +#include "shaderobj.h" +#include "program/hash_table.h" +#include "../glsl/program.h" + +extern "C" { +#include "shaderapi.h" +} + +void GLAPIENTRY +_mesa_BindAttribLocationARB(GLhandleARB program, GLuint index, + const GLcharARB *name) +{ + GET_CURRENT_CONTEXT(ctx); + + struct gl_shader_program *const shProg = + _mesa_lookup_shader_program_err(ctx, program, "glBindAttribLocation"); + if (!shProg) + return; + + if (!name) + return; + + if (strncmp(name, "gl_", 3) == 0) { + _mesa_error(ctx, GL_INVALID_OPERATION, + "glBindAttribLocation(illegal name)"); + return; + } + + if (index >= ctx->Const.VertexProgram.MaxAttribs) { + _mesa_error(ctx, GL_INVALID_VALUE, "glBindAttribLocation(index)"); + return; + } + + /* Replace the current value if it's already in the list. Add + * VERT_ATTRIB_GENERIC0 because that's how the linker differentiates + * between built-in attributes and user-defined attributes. + */ + shProg->AttributeBindings->put(index + VERT_ATTRIB_GENERIC0, name); + + /* + * Note that this attribute binding won't go into effect until + * glLinkProgram is called again. + */ +} + +void GLAPIENTRY +_mesa_GetActiveAttribARB(GLhandleARB program, GLuint desired_index, + GLsizei maxLength, GLsizei * length, GLint * size, + GLenum * type, GLcharARB * name) +{ + GET_CURRENT_CONTEXT(ctx); + struct gl_shader_program *shProg; + + shProg = _mesa_lookup_shader_program_err(ctx, program, "glGetActiveAttrib"); + if (!shProg) + return; + + if (!shProg->LinkStatus) { + _mesa_error(ctx, GL_INVALID_VALUE, + "glGetActiveAttrib(program not linked)"); + return; + } + + if (shProg->_LinkedShaders[MESA_SHADER_VERTEX] == NULL) { + _mesa_error(ctx, GL_INVALID_VALUE, "glGetActiveAttrib(no vertex shader)"); + return; + } + + exec_list *const ir = shProg->_LinkedShaders[MESA_SHADER_VERTEX]->ir; + unsigned current_index = 0; + + foreach_list(node, ir) { + const ir_variable *const var = ((ir_instruction *) node)->as_variable(); + + if (var == NULL + || var->mode != ir_var_in + || var->location == -1 + || var->location < VERT_ATTRIB_GENERIC0) + continue; + + if (current_index == desired_index) { + _mesa_copy_string(name, maxLength, length, var->name); + + if (size) + *size = (var->type->is_array()) ? var->type->length : 1; + + if (type) + *type = var->type->gl_type; + + return; + } + + current_index++; + } + + /* If the loop did not return early, the caller must have asked for + * an index that did not exit. Set an error. + */ + _mesa_error(ctx, GL_INVALID_VALUE, "glGetActiveAttrib(index)"); +} + +GLint GLAPIENTRY +_mesa_GetAttribLocationARB(GLhandleARB program, const GLcharARB * name) +{ + GET_CURRENT_CONTEXT(ctx); + struct gl_shader_program *const shProg = + _mesa_lookup_shader_program_err(ctx, program, "glGetAttribLocation"); + + if (!shProg) { + return -1; + } + + if (!shProg->LinkStatus) { + _mesa_error(ctx, GL_INVALID_OPERATION, + "glGetAttribLocation(program not linked)"); + return -1; + } + + if (!name) + return -1; + + /* Not having a vertex shader is not an error. + */ + if (shProg->_LinkedShaders[MESA_SHADER_VERTEX] == NULL) + return -1; + + exec_list *ir = shProg->_LinkedShaders[MESA_SHADER_VERTEX]->ir; + foreach_list(node, ir) { + const ir_variable *const var = ((ir_instruction *) node)->as_variable(); + + /* The extra check against VERT_ATTRIB_GENERIC0 is because + * glGetAttribLocation cannot be used on "conventional" attributes. + * + * From page 95 of the OpenGL 3.0 spec: + * + * "If name is not an active attribute, if name is a conventional + * attribute, or if an error occurs, -1 will be returned." + */ + if (var == NULL + || var->mode != ir_var_in + || var->location == -1 + || var->location < VERT_ATTRIB_GENERIC0) + continue; + + if (strcmp(var->name, name) == 0) + return var->location - VERT_ATTRIB_GENERIC0; + } + + return -1; +} + + +unsigned +_mesa_count_active_attribs(struct gl_shader_program *shProg) +{ + if (!shProg->LinkStatus + || shProg->_LinkedShaders[MESA_SHADER_VERTEX] == NULL) { + return 0; + } + + exec_list *const ir = shProg->_LinkedShaders[MESA_SHADER_VERTEX]->ir; + unsigned i = 0; + + foreach_list(node, ir) { + const ir_variable *const var = ((ir_instruction *) node)->as_variable(); + + if (var == NULL + || var->mode != ir_var_in + || var->location == -1 + || var->location < VERT_ATTRIB_GENERIC0) + continue; + + i++; + } + + return i; +} + + +size_t +_mesa_longest_attribute_name_length(struct gl_shader_program *shProg) +{ + if (!shProg->LinkStatus + || shProg->_LinkedShaders[MESA_SHADER_VERTEX] == NULL) { + return 0; + } + + exec_list *const ir = shProg->_LinkedShaders[MESA_SHADER_VERTEX]->ir; + size_t longest = 0; + + foreach_list(node, ir) { + const ir_variable *const var = ((ir_instruction *) node)->as_variable(); + + if (var == NULL + || var->mode != ir_var_in + || var->location == -1 + || var->location < VERT_ATTRIB_GENERIC0) + continue; + + const size_t len = strlen(var->name); + if (len >= longest) + longest = len + 1; + } + + return longest; +} diff --git a/mesalib/src/mesa/main/shaderapi.c b/mesalib/src/mesa/main/shaderapi.c index 3ce14d154..9e0ed9c69 100644 --- a/mesalib/src/mesa/main/shaderapi.c +++ b/mesalib/src/mesa/main/shaderapi.c @@ -324,82 +324,6 @@ attach_shader(struct gl_context *ctx, GLuint program, GLuint shader) } -static GLint -get_attrib_location(struct gl_context *ctx, GLuint program, const GLchar *name) -{ - struct gl_shader_program *shProg - = _mesa_lookup_shader_program_err(ctx, program, "glGetAttribLocation"); - - if (!shProg) { - return -1; - } - - if (!shProg->LinkStatus) { - _mesa_error(ctx, GL_INVALID_OPERATION, - "glGetAttribLocation(program not linked)"); - return -1; - } - - if (!name) - return -1; - - if (shProg->VertexProgram) { - const struct gl_program_parameter_list *attribs = - shProg->VertexProgram->Base.Attributes; - if (attribs) { - GLint i = _mesa_lookup_parameter_index(attribs, -1, name); - if (i >= 0) { - return attribs->Parameters[i].StateIndexes[0]; - } - } - } - return -1; -} - - -static void -bind_attrib_location(struct gl_context *ctx, GLuint program, GLuint index, - const GLchar *name) -{ - struct gl_shader_program *shProg; - const GLint size = -1; /* unknown size */ - GLint i; - GLenum datatype = GL_FLOAT_VEC4; - - shProg = _mesa_lookup_shader_program_err(ctx, program, - "glBindAttribLocation"); - if (!shProg) { - return; - } - - if (!name) - return; - - if (strncmp(name, "gl_", 3) == 0) { - _mesa_error(ctx, GL_INVALID_OPERATION, - "glBindAttribLocation(illegal name)"); - return; - } - - if (index >= ctx->Const.VertexProgram.MaxAttribs) { - _mesa_error(ctx, GL_INVALID_VALUE, "glBindAttribLocation(index)"); - return; - } - - /* this will replace the current value if it's already in the list */ - i = _mesa_add_attribute(shProg->Attributes, name, size, datatype, index); - if (i < 0) { - _mesa_error(ctx, GL_OUT_OF_MEMORY, "glBindAttribLocation"); - return; - } - - /* - * Note that this attribute binding won't go into effect until - * glLinkProgram is called again. - */ -} - - static void bind_frag_data_location(struct gl_context *ctx, GLuint program, GLuint colorNumber, const GLchar *name) @@ -557,38 +481,6 @@ detach_shader(struct gl_context *ctx, GLuint program, GLuint shader) } -static void -get_active_attrib(struct gl_context *ctx, GLuint program, GLuint index, - GLsizei maxLength, GLsizei *length, GLint *size, - GLenum *type, GLchar *nameOut) -{ - const struct gl_program_parameter_list *attribs = NULL; - struct gl_shader_program *shProg; - - shProg = _mesa_lookup_shader_program_err(ctx, program, "glGetActiveAttrib"); - if (!shProg) - return; - - if (shProg->VertexProgram) - attribs = shProg->VertexProgram->Base.Attributes; - - if (!attribs || index >= attribs->NumParameters) { - _mesa_error(ctx, GL_INVALID_VALUE, "glGetActiveAttrib(index)"); - return; - } - - _mesa_copy_string(nameOut, maxLength, length, - attribs->Parameters[index].Name); - - if (size) - *size = attribs->Parameters[index].Size - / _mesa_sizeof_glsl_type(attribs->Parameters[index].DataType); - - if (type) - *type = attribs->Parameters[index].DataType; -} - - /** * Return list of shaders attached to shader program. */ @@ -646,7 +538,6 @@ get_handle(struct gl_context *ctx, GLenum pname) static void get_programiv(struct gl_context *ctx, GLuint program, GLenum pname, GLint *params) { - const struct gl_program_parameter_list *attribs; struct gl_shader_program *shProg = _mesa_lookup_shader_program(ctx, program); @@ -655,11 +546,6 @@ get_programiv(struct gl_context *ctx, GLuint program, GLenum pname, GLint *param return; } - if (shProg->VertexProgram) - attribs = shProg->VertexProgram->Base.Attributes; - else - attribs = NULL; - switch (pname) { case GL_DELETE_STATUS: *params = shProg->DeletePending; @@ -677,10 +563,10 @@ get_programiv(struct gl_context *ctx, GLuint program, GLenum pname, GLint *param *params = shProg->NumShaders; break; case GL_ACTIVE_ATTRIBUTES: - *params = attribs ? attribs->NumParameters : 0; + *params = _mesa_count_active_attribs(shProg); break; case GL_ACTIVE_ATTRIBUTE_MAX_LENGTH: - *params = _mesa_longest_parameter_name(attribs, PROGRAM_INPUT) + 1; + *params = _mesa_longest_attribute_name_length(shProg); break; case GL_ACTIVE_UNIFORMS: *params = shProg->Uniforms ? shProg->Uniforms->NumUniforms : 0; @@ -1161,15 +1047,6 @@ _mesa_AttachShader(GLuint program, GLuint shader) } -void GLAPIENTRY -_mesa_BindAttribLocationARB(GLhandleARB program, GLuint index, - const GLcharARB *name) -{ - GET_CURRENT_CONTEXT(ctx); - bind_attrib_location(ctx, program, index, name); -} - - /* GL_EXT_gpu_shader4, GL3 */ void GLAPIENTRY _mesa_BindFragDataLocation(GLuint program, GLuint colorNumber, @@ -1289,16 +1166,6 @@ _mesa_DetachShader(GLuint program, GLuint shader) void GLAPIENTRY -_mesa_GetActiveAttribARB(GLhandleARB program, GLuint index, - GLsizei maxLength, GLsizei * length, GLint * size, - GLenum * type, GLcharARB * name) -{ - GET_CURRENT_CONTEXT(ctx); - get_active_attrib(ctx, program, index, maxLength, length, size, type, name); -} - - -void GLAPIENTRY _mesa_GetAttachedObjectsARB(GLhandleARB container, GLsizei maxCount, GLsizei * count, GLhandleARB * obj) { @@ -1316,14 +1183,6 @@ _mesa_GetAttachedShaders(GLuint program, GLsizei maxCount, } -GLint GLAPIENTRY -_mesa_GetAttribLocationARB(GLhandleARB program, const GLcharARB * name) -{ - GET_CURRENT_CONTEXT(ctx); - return get_attrib_location(ctx, program, name); -} - - /* GL_EXT_gpu_shader4, GL3 */ GLint GLAPIENTRY _mesa_GetFragDataLocation(GLuint program, const GLchar *name) diff --git a/mesalib/src/mesa/main/shaderapi.h b/mesalib/src/mesa/main/shaderapi.h index 15c7c7ae6..bec448dee 100644 --- a/mesalib/src/mesa/main/shaderapi.h +++ b/mesalib/src/mesa/main/shaderapi.h @@ -1,193 +1,197 @@ -/*
- * Mesa 3-D graphics library
- *
- * Copyright (C) 2004-2007 Brian Paul All Rights Reserved.
- * Copyright (C) 2010 VMware, Inc. All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-#ifndef SHADERAPI_H
-#define SHADERAPI_H
-
-
-#include "glheader.h"
-
-struct _glapi_table;
-struct gl_context;
-struct gl_shader_program;
-
-extern GLint
-_mesa_sizeof_glsl_type(GLenum type);
-
-extern void
-_mesa_copy_string(GLchar *dst, GLsizei maxLength,
- GLsizei *length, const GLchar *src);
-
-extern void
-_mesa_use_program(struct gl_context *ctx, struct gl_shader_program *shProg);
-
-extern void
-_mesa_active_program(struct gl_context *ctx, struct gl_shader_program *shProg,
- const char *caller);
-
-extern void
-_mesa_init_shader_dispatch(struct _glapi_table *exec);
-
-
-
-extern void GLAPIENTRY
-_mesa_AttachObjectARB(GLhandleARB, GLhandleARB);
-
-extern void GLAPIENTRY
-_mesa_CompileShaderARB(GLhandleARB);
-
-extern GLhandleARB GLAPIENTRY
-_mesa_CreateProgramObjectARB(void);
-
-extern GLhandleARB GLAPIENTRY
-_mesa_CreateShaderObjectARB(GLenum type);
-
-extern void GLAPIENTRY
-_mesa_DeleteObjectARB(GLhandleARB obj);
-
-extern void GLAPIENTRY
-_mesa_DetachObjectARB(GLhandleARB, GLhandleARB);
-
-extern void GLAPIENTRY
-_mesa_GetAttachedObjectsARB(GLhandleARB, GLsizei, GLsizei *, GLhandleARB *);
-
-extern GLint GLAPIENTRY
-_mesa_GetFragDataLocation(GLuint program, const GLchar *name);
-
-extern GLhandleARB GLAPIENTRY
-_mesa_GetHandleARB(GLenum pname);
-
-extern void GLAPIENTRY
-_mesa_GetInfoLogARB(GLhandleARB, GLsizei, GLsizei *, GLcharARB *);
-
-extern void GLAPIENTRY
-_mesa_GetObjectParameterfvARB(GLhandleARB, GLenum, GLfloat *);
-
-extern void GLAPIENTRY
-_mesa_GetObjectParameterivARB(GLhandleARB, GLenum, GLint *);
-
-extern void GLAPIENTRY
-_mesa_GetShaderSourceARB(GLhandleARB, GLsizei, GLsizei *, GLcharARB *);
-
-extern GLboolean GLAPIENTRY
-_mesa_IsProgram(GLuint name);
-
-extern GLboolean GLAPIENTRY
-_mesa_IsShader(GLuint name);
-
-extern void GLAPIENTRY
-_mesa_LinkProgramARB(GLhandleARB programObj);
-
-extern void GLAPIENTRY
-_mesa_ShaderSourceARB(GLhandleARB, GLsizei, const GLcharARB* *, const GLint *);
-
-extern void GLAPIENTRY
-_mesa_UseProgramObjectARB(GLhandleARB);
-
-extern void GLAPIENTRY
-_mesa_ValidateProgramARB(GLhandleARB);
-
-
-extern void GLAPIENTRY
-_mesa_BindAttribLocationARB(GLhandleARB, GLuint, const GLcharARB *);
-
-extern void GLAPIENTRY
-_mesa_BindFragDataLocation(GLuint program, GLuint colorNumber,
- const GLchar *name);
-
-extern void GLAPIENTRY
-_mesa_GetActiveAttribARB(GLhandleARB, GLuint, GLsizei, GLsizei *, GLint *,
- GLenum *, GLcharARB *);
-
-extern GLint GLAPIENTRY
-_mesa_GetAttribLocationARB(GLhandleARB, const GLcharARB *);
-
-
-
-extern void GLAPIENTRY
-_mesa_AttachShader(GLuint program, GLuint shader);
-
-extern GLuint GLAPIENTRY
-_mesa_CreateShader(GLenum);
-
-extern GLuint GLAPIENTRY
-_mesa_CreateProgram(void);
-
-extern void GLAPIENTRY
-_mesa_DeleteProgram(GLuint program);
-
-extern void GLAPIENTRY
-_mesa_DeleteShader(GLuint shader);
-
-extern void GLAPIENTRY
-_mesa_DetachShader(GLuint program, GLuint shader);
-
-extern void GLAPIENTRY
-_mesa_GetAttachedShaders(GLuint program, GLsizei maxCount,
- GLsizei *count, GLuint *obj);
-
-extern void GLAPIENTRY
-_mesa_GetProgramiv(GLuint program, GLenum pname, GLint *params);
-
-extern void GLAPIENTRY
-_mesa_GetProgramInfoLog(GLuint program, GLsizei bufSize,
- GLsizei *length, GLchar *infoLog);
-
-extern void GLAPIENTRY
-_mesa_GetShaderiv(GLuint shader, GLenum pname, GLint *params);
-
-extern void GLAPIENTRY
-_mesa_GetShaderInfoLog(GLuint shader, GLsizei bufSize,
- GLsizei *length, GLchar *infoLog);
-
-
-extern void GLAPIENTRY
-_mesa_GetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype,
- GLint *range, GLint *precision);
-
-extern void GLAPIENTRY
-_mesa_ReleaseShaderCompiler(void);
-
-extern void GLAPIENTRY
-_mesa_ShaderBinary(GLint n, const GLuint *shaders, GLenum binaryformat,
- const void* binary, GLint length);
-
-extern void GLAPIENTRY
-_mesa_ProgramParameteriARB(GLuint program, GLenum pname,
- GLint value);
-void
-_mesa_use_shader_program(struct gl_context *ctx, GLenum type,
- struct gl_shader_program *shProg);
-
-extern void GLAPIENTRY
-_mesa_UseShaderProgramEXT(GLenum type, GLuint program);
-
-extern void GLAPIENTRY
-_mesa_ActiveProgramEXT(GLuint program);
-
-extern GLuint GLAPIENTRY
-_mesa_CreateShaderProgramEXT(GLenum type, const GLchar *string);
-
-#endif /* SHADERAPI_H */
+/* + * Mesa 3-D graphics library + * + * Copyright (C) 2004-2007 Brian Paul All Rights Reserved. + * Copyright (C) 2010 VMware, Inc. All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + + +#ifndef SHADERAPI_H +#define SHADERAPI_H + + +#include "glheader.h" + +struct _glapi_table; +struct gl_context; +struct gl_shader_program; + +extern GLint +_mesa_sizeof_glsl_type(GLenum type); + +extern void +_mesa_copy_string(GLchar *dst, GLsizei maxLength, + GLsizei *length, const GLchar *src); + +extern void +_mesa_use_program(struct gl_context *ctx, struct gl_shader_program *shProg); + +extern void +_mesa_active_program(struct gl_context *ctx, struct gl_shader_program *shProg, + const char *caller); + +extern void +_mesa_init_shader_dispatch(struct _glapi_table *exec); + +extern unsigned +_mesa_count_active_attribs(struct gl_shader_program *shProg); + +extern size_t +_mesa_longest_attribute_name_length(struct gl_shader_program *shProg); + +extern void GLAPIENTRY +_mesa_AttachObjectARB(GLhandleARB, GLhandleARB); + +extern void GLAPIENTRY +_mesa_CompileShaderARB(GLhandleARB); + +extern GLhandleARB GLAPIENTRY +_mesa_CreateProgramObjectARB(void); + +extern GLhandleARB GLAPIENTRY +_mesa_CreateShaderObjectARB(GLenum type); + +extern void GLAPIENTRY +_mesa_DeleteObjectARB(GLhandleARB obj); + +extern void GLAPIENTRY +_mesa_DetachObjectARB(GLhandleARB, GLhandleARB); + +extern void GLAPIENTRY +_mesa_GetAttachedObjectsARB(GLhandleARB, GLsizei, GLsizei *, GLhandleARB *); + +extern GLint GLAPIENTRY +_mesa_GetFragDataLocation(GLuint program, const GLchar *name); + +extern GLhandleARB GLAPIENTRY +_mesa_GetHandleARB(GLenum pname); + +extern void GLAPIENTRY +_mesa_GetInfoLogARB(GLhandleARB, GLsizei, GLsizei *, GLcharARB *); + +extern void GLAPIENTRY +_mesa_GetObjectParameterfvARB(GLhandleARB, GLenum, GLfloat *); + +extern void GLAPIENTRY +_mesa_GetObjectParameterivARB(GLhandleARB, GLenum, GLint *); + +extern void GLAPIENTRY +_mesa_GetShaderSourceARB(GLhandleARB, GLsizei, GLsizei *, GLcharARB *); + +extern GLboolean GLAPIENTRY +_mesa_IsProgram(GLuint name); + +extern GLboolean GLAPIENTRY +_mesa_IsShader(GLuint name); + +extern void GLAPIENTRY +_mesa_LinkProgramARB(GLhandleARB programObj); + +extern void GLAPIENTRY +_mesa_ShaderSourceARB(GLhandleARB, GLsizei, const GLcharARB* *, const GLint *); + +extern void GLAPIENTRY +_mesa_UseProgramObjectARB(GLhandleARB); + +extern void GLAPIENTRY +_mesa_ValidateProgramARB(GLhandleARB); + + +extern void GLAPIENTRY +_mesa_BindAttribLocationARB(GLhandleARB, GLuint, const GLcharARB *); + +extern void GLAPIENTRY +_mesa_BindFragDataLocation(GLuint program, GLuint colorNumber, + const GLchar *name); + +extern void GLAPIENTRY +_mesa_GetActiveAttribARB(GLhandleARB, GLuint, GLsizei, GLsizei *, GLint *, + GLenum *, GLcharARB *); + +extern GLint GLAPIENTRY +_mesa_GetAttribLocationARB(GLhandleARB, const GLcharARB *); + + + +extern void GLAPIENTRY +_mesa_AttachShader(GLuint program, GLuint shader); + +extern GLuint GLAPIENTRY +_mesa_CreateShader(GLenum); + +extern GLuint GLAPIENTRY +_mesa_CreateProgram(void); + +extern void GLAPIENTRY +_mesa_DeleteProgram(GLuint program); + +extern void GLAPIENTRY +_mesa_DeleteShader(GLuint shader); + +extern void GLAPIENTRY +_mesa_DetachShader(GLuint program, GLuint shader); + +extern void GLAPIENTRY +_mesa_GetAttachedShaders(GLuint program, GLsizei maxCount, + GLsizei *count, GLuint *obj); + +extern void GLAPIENTRY +_mesa_GetProgramiv(GLuint program, GLenum pname, GLint *params); + +extern void GLAPIENTRY +_mesa_GetProgramInfoLog(GLuint program, GLsizei bufSize, + GLsizei *length, GLchar *infoLog); + +extern void GLAPIENTRY +_mesa_GetShaderiv(GLuint shader, GLenum pname, GLint *params); + +extern void GLAPIENTRY +_mesa_GetShaderInfoLog(GLuint shader, GLsizei bufSize, + GLsizei *length, GLchar *infoLog); + + +extern void GLAPIENTRY +_mesa_GetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, + GLint *range, GLint *precision); + +extern void GLAPIENTRY +_mesa_ReleaseShaderCompiler(void); + +extern void GLAPIENTRY +_mesa_ShaderBinary(GLint n, const GLuint *shaders, GLenum binaryformat, + const void* binary, GLint length); + +extern void GLAPIENTRY +_mesa_ProgramParameteriARB(GLuint program, GLenum pname, + GLint value); +void +_mesa_use_shader_program(struct gl_context *ctx, GLenum type, + struct gl_shader_program *shProg); + +extern void GLAPIENTRY +_mesa_UseShaderProgramEXT(GLenum type, GLuint program); + +extern void GLAPIENTRY +_mesa_ActiveProgramEXT(GLuint program); + +extern GLuint GLAPIENTRY +_mesa_CreateShaderProgramEXT(GLenum type, const GLchar *string); + +#endif /* SHADERAPI_H */ diff --git a/mesalib/src/mesa/main/shaderobj.c b/mesalib/src/mesa/main/shaderobj.c index f128648f4..1eba75697 100644 --- a/mesalib/src/mesa/main/shaderobj.c +++ b/mesalib/src/mesa/main/shaderobj.c @@ -38,6 +38,7 @@ #include "program/program.h" #include "program/prog_parameter.h" #include "program/prog_uniform.h" +#include "program/hash_table.h" #include "ralloc.h" /**********************************************************************/ @@ -238,7 +239,9 @@ _mesa_init_shader_program(struct gl_context *ctx, struct gl_shader_program *prog { prog->Type = GL_SHADER_PROGRAM_MESA; prog->RefCount = 1; - prog->Attributes = _mesa_new_parameter_list(); + + prog->AttributeBindings = string_to_uint_map_ctor(); + #if FEATURE_ARB_geometry_shader4 prog->Geom.VerticesOut = 0; prog->Geom.InputType = GL_TRIANGLES; @@ -307,9 +310,9 @@ _mesa_free_shader_program_data(struct gl_context *ctx, _mesa_clear_shader_program_data(ctx, shProg); - if (shProg->Attributes) { - _mesa_free_parameter_list(shProg->Attributes); - shProg->Attributes = NULL; + if (shProg->AttributeBindings) { + string_to_uint_map_dtor(shProg->AttributeBindings); + shProg->AttributeBindings = NULL; } /* detach shaders */ diff --git a/mesalib/src/mesa/main/shaderobj.h b/mesalib/src/mesa/main/shaderobj.h index 881856a02..941841d43 100644 --- a/mesalib/src/mesa/main/shaderobj.h +++ b/mesalib/src/mesa/main/shaderobj.h @@ -1,137 +1,137 @@ -/*
- * Mesa 3-D graphics library
- * Version: 6.5.3
- *
- * Copyright (C) 2004-2007 Brian Paul All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-#ifndef SHADEROBJ_H
-#define SHADEROBJ_H
-
-
-#include "main/compiler.h"
-#include "main/glheader.h"
-#include "main/mtypes.h"
-#include "program/ir_to_mesa.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-/**
- * Internal functions
- */
-
-extern void
-_mesa_init_shader_state(struct gl_context * ctx);
-
-extern void
-_mesa_free_shader_state(struct gl_context *ctx);
-
-
-extern void
-_mesa_reference_shader(struct gl_context *ctx, struct gl_shader **ptr,
- struct gl_shader *sh);
-
-extern struct gl_shader *
-_mesa_lookup_shader(struct gl_context *ctx, GLuint name);
-
-extern struct gl_shader *
-_mesa_lookup_shader_err(struct gl_context *ctx, GLuint name, const char *caller);
-
-
-
-extern void
-_mesa_reference_shader_program(struct gl_context *ctx,
- struct gl_shader_program **ptr,
- struct gl_shader_program *shProg);
-extern void
-_mesa_init_shader(struct gl_context *ctx, struct gl_shader *shader);
-
-extern struct gl_shader *
-_mesa_new_shader(struct gl_context *ctx, GLuint name, GLenum type);
-
-extern void
-_mesa_init_shader_program(struct gl_context *ctx, struct gl_shader_program *prog);
-
-extern struct gl_shader_program *
-_mesa_lookup_shader_program(struct gl_context *ctx, GLuint name);
-
-extern struct gl_shader_program *
-_mesa_lookup_shader_program_err(struct gl_context *ctx, GLuint name,
- const char *caller);
-
-extern void
-_mesa_clear_shader_program_data(struct gl_context *ctx,
- struct gl_shader_program *shProg);
-
-extern void
-_mesa_free_shader_program_data(struct gl_context *ctx,
- struct gl_shader_program *shProg);
-
-
-
-extern void
-_mesa_init_shader_object_functions(struct dd_function_table *driver);
-
-extern void
-_mesa_init_shader_state(struct gl_context *ctx);
-
-extern void
-_mesa_free_shader_state(struct gl_context *ctx);
-
-
-static INLINE gl_shader_type
-_mesa_shader_type_to_index(GLenum v)
-{
- switch (v) {
- case GL_VERTEX_SHADER:
- return MESA_SHADER_VERTEX;
- case GL_FRAGMENT_SHADER:
- return MESA_SHADER_FRAGMENT;
- case GL_GEOMETRY_SHADER:
- return MESA_SHADER_GEOMETRY;
- default:
- ASSERT(0 && "bad value in _mesa_shader_type_to_index()");
- return MESA_SHADER_TYPES;
- }
-}
-
-
-static INLINE GLenum
-_mesa_shader_index_to_type(GLuint i)
-{
- static const GLenum enums[MESA_SHADER_TYPES] = {
- GL_VERTEX_SHADER,
- GL_FRAGMENT_SHADER,
- GL_GEOMETRY_SHADER ,
- };
- if (i >= MESA_SHADER_TYPES)
- return 0;
- else
- return enums[i];
-}
-
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* SHADEROBJ_H */
+/* + * Mesa 3-D graphics library + * Version: 6.5.3 + * + * Copyright (C) 2004-2007 Brian Paul All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + + +#ifndef SHADEROBJ_H +#define SHADEROBJ_H + + +#include "main/compiler.h" +#include "main/glheader.h" +#include "main/mtypes.h" +#include "program/ir_to_mesa.h" + +#ifdef __cplusplus +extern "C" { +#endif +/** + * Internal functions + */ + +extern void +_mesa_init_shader_state(struct gl_context * ctx); + +extern void +_mesa_free_shader_state(struct gl_context *ctx); + + +extern void +_mesa_reference_shader(struct gl_context *ctx, struct gl_shader **ptr, + struct gl_shader *sh); + +extern struct gl_shader * +_mesa_lookup_shader(struct gl_context *ctx, GLuint name); + +extern struct gl_shader * +_mesa_lookup_shader_err(struct gl_context *ctx, GLuint name, const char *caller); + + + +extern void +_mesa_reference_shader_program(struct gl_context *ctx, + struct gl_shader_program **ptr, + struct gl_shader_program *shProg); +extern void +_mesa_init_shader(struct gl_context *ctx, struct gl_shader *shader); + +extern struct gl_shader * +_mesa_new_shader(struct gl_context *ctx, GLuint name, GLenum type); + +extern void +_mesa_init_shader_program(struct gl_context *ctx, struct gl_shader_program *prog); + +extern struct gl_shader_program * +_mesa_lookup_shader_program(struct gl_context *ctx, GLuint name); + +extern struct gl_shader_program * +_mesa_lookup_shader_program_err(struct gl_context *ctx, GLuint name, + const char *caller); + +extern void +_mesa_clear_shader_program_data(struct gl_context *ctx, + struct gl_shader_program *shProg); + +extern void +_mesa_free_shader_program_data(struct gl_context *ctx, + struct gl_shader_program *shProg); + + + +extern void +_mesa_init_shader_object_functions(struct dd_function_table *driver); + +extern void +_mesa_init_shader_state(struct gl_context *ctx); + +extern void +_mesa_free_shader_state(struct gl_context *ctx); + + +static inline gl_shader_type +_mesa_shader_type_to_index(GLenum v) +{ + switch (v) { + case GL_VERTEX_SHADER: + return MESA_SHADER_VERTEX; + case GL_FRAGMENT_SHADER: + return MESA_SHADER_FRAGMENT; + case GL_GEOMETRY_SHADER: + return MESA_SHADER_GEOMETRY; + default: + ASSERT(0 && "bad value in _mesa_shader_type_to_index()"); + return MESA_SHADER_TYPES; + } +} + + +static inline GLenum +_mesa_shader_index_to_type(GLuint i) +{ + static const GLenum enums[MESA_SHADER_TYPES] = { + GL_VERTEX_SHADER, + GL_FRAGMENT_SHADER, + GL_GEOMETRY_SHADER , + }; + if (i >= MESA_SHADER_TYPES) + return 0; + else + return enums[i]; +} + + +#ifdef __cplusplus +} +#endif + +#endif /* SHADEROBJ_H */ diff --git a/mesalib/src/mesa/main/state.h b/mesalib/src/mesa/main/state.h index 7feeb9007..2b5b3d514 100644 --- a/mesalib/src/mesa/main/state.h +++ b/mesalib/src/mesa/main/state.h @@ -49,7 +49,7 @@ _mesa_set_vp_override(struct gl_context *ctx, GLboolean flag); /** * Is the secondary color needed? */ -static INLINE GLboolean +static inline GLboolean _mesa_need_secondary_color(const struct gl_context *ctx) { if (ctx->Light.Enabled && diff --git a/mesalib/src/mesa/main/syncobj.h b/mesalib/src/mesa/main/syncobj.h index ac1384f61..50a5d1123 100644 --- a/mesalib/src/mesa/main/syncobj.h +++ b/mesalib/src/mesa/main/syncobj.h @@ -1,119 +1,119 @@ -/*
- * Copyright © 2009 Intel Corporation
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice (including the next
- * paragraph) shall be included in all copies or substantial portions of the
- * Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- */
-
-/**
- * \file syncobj.h
- * Sync object management.
- *
- * \author Ian Romanick <ian.d.romanick@intel.com>
- */
-
-#ifndef SYNCOBJ_H
-#define SYNCOBJ_H
-
-#include "glheader.h"
-#include "mfeatures.h"
-
-struct _glapi_table;
-struct dd_function_table;
-struct gl_context;
-struct gl_sync_object;
-
-#if FEATURE_ARB_sync
-
-extern void
-_mesa_init_sync_object_functions(struct dd_function_table *driver);
-
-extern void
-_mesa_init_sync_dispatch(struct _glapi_table *disp);
-
-extern void
-_mesa_init_sync(struct gl_context *);
-
-extern void
-_mesa_free_sync_data(struct gl_context *);
-
-extern void
-_mesa_ref_sync_object(struct gl_context *ctx, struct gl_sync_object *syncObj);
-
-extern void
-_mesa_unref_sync_object(struct gl_context *ctx, struct gl_sync_object *syncObj);
-
-extern GLboolean GLAPIENTRY
-_mesa_IsSync(GLsync sync);
-
-extern void GLAPIENTRY
-_mesa_DeleteSync(GLsync sync);
-
-extern GLsync GLAPIENTRY
-_mesa_FenceSync(GLenum condition, GLbitfield flags);
-
-extern GLenum GLAPIENTRY
-_mesa_ClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
-
-extern void GLAPIENTRY
-_mesa_WaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
-
-extern void GLAPIENTRY
-_mesa_GetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length,
- GLint *values);
-
-#else /* FEATURE_ARB_sync */
-
-#include "main/compiler.h"
-
-static INLINE void
-_mesa_init_sync_object_functions(struct dd_function_table *driver)
-{
-}
-
-static INLINE void
-_mesa_init_sync_dispatch(struct _glapi_table *disp)
-{
-}
-
-static INLINE void
-_mesa_init_sync(struct gl_context *ctx)
-{
-}
-
-static INLINE void
-_mesa_free_sync_data(struct gl_context *ctx)
-{
-}
-
-static INLINE void
-_mesa_ref_sync_object(struct gl_context *ctx, struct gl_sync_object *syncObj)
-{
- ASSERT_NO_FEATURE();
-}
-
-static INLINE void
-_mesa_unref_sync_object(struct gl_context *ctx, struct gl_sync_object *syncObj)
-{
- ASSERT_NO_FEATURE();
-}
-
-#endif /* FEATURE_ARB_sync */
-
-#endif /* SYNCOBJ_H */
+/* + * Copyright © 2009 Intel Corporation + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice (including the next + * paragraph) shall be included in all copies or substantial portions of the + * Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. + */ + +/** + * \file syncobj.h + * Sync object management. + * + * \author Ian Romanick <ian.d.romanick@intel.com> + */ + +#ifndef SYNCOBJ_H +#define SYNCOBJ_H + +#include "glheader.h" +#include "mfeatures.h" + +struct _glapi_table; +struct dd_function_table; +struct gl_context; +struct gl_sync_object; + +#if FEATURE_ARB_sync + +extern void +_mesa_init_sync_object_functions(struct dd_function_table *driver); + +extern void +_mesa_init_sync_dispatch(struct _glapi_table *disp); + +extern void +_mesa_init_sync(struct gl_context *); + +extern void +_mesa_free_sync_data(struct gl_context *); + +extern void +_mesa_ref_sync_object(struct gl_context *ctx, struct gl_sync_object *syncObj); + +extern void +_mesa_unref_sync_object(struct gl_context *ctx, struct gl_sync_object *syncObj); + +extern GLboolean GLAPIENTRY +_mesa_IsSync(GLsync sync); + +extern void GLAPIENTRY +_mesa_DeleteSync(GLsync sync); + +extern GLsync GLAPIENTRY +_mesa_FenceSync(GLenum condition, GLbitfield flags); + +extern GLenum GLAPIENTRY +_mesa_ClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout); + +extern void GLAPIENTRY +_mesa_WaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout); + +extern void GLAPIENTRY +_mesa_GetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, + GLint *values); + +#else /* FEATURE_ARB_sync */ + +#include "main/compiler.h" + +static inline void +_mesa_init_sync_object_functions(struct dd_function_table *driver) +{ +} + +static inline void +_mesa_init_sync_dispatch(struct _glapi_table *disp) +{ +} + +static inline void +_mesa_init_sync(struct gl_context *ctx) +{ +} + +static inline void +_mesa_free_sync_data(struct gl_context *ctx) +{ +} + +static inline void +_mesa_ref_sync_object(struct gl_context *ctx, struct gl_sync_object *syncObj) +{ + ASSERT_NO_FEATURE(); +} + +static inline void +_mesa_unref_sync_object(struct gl_context *ctx, struct gl_sync_object *syncObj) +{ + ASSERT_NO_FEATURE(); +} + +#endif /* FEATURE_ARB_sync */ + +#endif /* SYNCOBJ_H */ diff --git a/mesalib/src/mesa/main/texcompress_s3tc.c b/mesalib/src/mesa/main/texcompress_s3tc.c index 04c5b4476..8c6b1dfad 100644 --- a/mesalib/src/mesa/main/texcompress_s3tc.c +++ b/mesalib/src/mesa/main/texcompress_s3tc.c @@ -66,7 +66,7 @@ * linear RGB value in [0, 1]. * Implemented with a 256-entry lookup table. */ -static INLINE GLfloat +static inline GLfloat nonlinear_to_linear(GLubyte cs8) { static GLfloat table[256]; diff --git a/mesalib/src/mesa/main/texcompress_s3tc.h b/mesalib/src/mesa/main/texcompress_s3tc.h index 709c35ae7..23793d167 100644 --- a/mesalib/src/mesa/main/texcompress_s3tc.h +++ b/mesalib/src/mesa/main/texcompress_s3tc.h @@ -100,7 +100,7 @@ _mesa_init_texture_s3tc(struct gl_context *ctx); #define _mesa_fetch_texel_2d_f_srgba_dxt3 NULL #define _mesa_fetch_texel_2d_f_srgba_dxt5 NULL -static INLINE void +static inline void _mesa_init_texture_s3tc(struct gl_context *ctx) { } diff --git a/mesalib/src/mesa/main/texformat.c b/mesalib/src/mesa/main/texformat.c index b763a689a..ccc3c49f5 100644 --- a/mesalib/src/mesa/main/texformat.c +++ b/mesalib/src/mesa/main/texformat.c @@ -609,35 +609,67 @@ _mesa_choose_tex_format( struct gl_context *ctx, GLint internalFormat, break; case GL_RGBA8UI_EXT: case GL_RGB8UI_EXT: + RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_UINT8); + break; case GL_ALPHA8UI_EXT: + RETURN_IF_SUPPORTED(MESA_FORMAT_ALPHA_UINT8); + break; case GL_INTENSITY8UI_EXT: + RETURN_IF_SUPPORTED(MESA_FORMAT_INTENSITY_UINT8); + break; case GL_LUMINANCE8UI_EXT: + RETURN_IF_SUPPORTED(MESA_FORMAT_LUMINANCE_UINT8); + break; case GL_LUMINANCE_ALPHA8UI_EXT: - RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_UINT8); + RETURN_IF_SUPPORTED(MESA_FORMAT_LUMINANCE_ALPHA_UINT8); break; case GL_RGBA32I_EXT: case GL_RGB32I_EXT: + RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_INT32); + break; case GL_ALPHA32I_EXT: + RETURN_IF_SUPPORTED(MESA_FORMAT_ALPHA_INT32); + break; case GL_INTENSITY32I_EXT: + RETURN_IF_SUPPORTED(MESA_FORMAT_INTENSITY_INT32); + break; case GL_LUMINANCE32I_EXT: + RETURN_IF_SUPPORTED(MESA_FORMAT_LUMINANCE_INT32); + break; case GL_LUMINANCE_ALPHA32I_EXT: - RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_INT32); + RETURN_IF_SUPPORTED(MESA_FORMAT_LUMINANCE_ALPHA_INT32); break; case GL_RGBA16I_EXT: case GL_RGB16I_EXT: + RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_INT16); + break; case GL_ALPHA16I_EXT: + RETURN_IF_SUPPORTED(MESA_FORMAT_ALPHA_INT16); + break; case GL_INTENSITY16I_EXT: + RETURN_IF_SUPPORTED(MESA_FORMAT_INTENSITY_INT16); + break; case GL_LUMINANCE16I_EXT: + RETURN_IF_SUPPORTED(MESA_FORMAT_LUMINANCE_INT16); + break; case GL_LUMINANCE_ALPHA16I_EXT: - RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_INT16); + RETURN_IF_SUPPORTED(MESA_FORMAT_LUMINANCE_ALPHA_INT16); break; case GL_RGBA8I_EXT: case GL_RGB8I_EXT: + RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_INT8); + break; case GL_ALPHA8I_EXT: + RETURN_IF_SUPPORTED(MESA_FORMAT_ALPHA_INT8); + break; case GL_INTENSITY8I_EXT: + RETURN_IF_SUPPORTED(MESA_FORMAT_INTENSITY_INT8); + break; case GL_LUMINANCE8I_EXT: + RETURN_IF_SUPPORTED(MESA_FORMAT_LUMINANCE_INT8); + break; case GL_LUMINANCE_ALPHA8I_EXT: - RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_INT8); + RETURN_IF_SUPPORTED(MESA_FORMAT_LUMINANCE_ALPHA_INT8); break; } } @@ -703,6 +735,49 @@ _mesa_choose_tex_format( struct gl_context *ctx, GLint internalFormat, } } + if (ctx->Extensions.ARB_texture_rg && ctx->Extensions.EXT_texture_integer) { + switch (internalFormat) { + case GL_R8UI: + RETURN_IF_SUPPORTED(MESA_FORMAT_R_UINT8); + break; + case GL_RG8UI: + RETURN_IF_SUPPORTED(MESA_FORMAT_RG_UINT8); + break; + case GL_R16UI: + RETURN_IF_SUPPORTED(MESA_FORMAT_R_UINT16); + break; + case GL_RG16UI: + RETURN_IF_SUPPORTED(MESA_FORMAT_RG_UINT16); + break; + case GL_R32UI: + RETURN_IF_SUPPORTED(MESA_FORMAT_R_UINT32); + break; + case GL_RG32UI: + RETURN_IF_SUPPORTED(MESA_FORMAT_RG_UINT32); + break; + case GL_R8I: + RETURN_IF_SUPPORTED(MESA_FORMAT_R_INT8); + break; + case GL_RG8I: + RETURN_IF_SUPPORTED(MESA_FORMAT_RG_INT8); + break; + case GL_R16I: + RETURN_IF_SUPPORTED(MESA_FORMAT_R_INT16); + break; + case GL_RG16I: + RETURN_IF_SUPPORTED(MESA_FORMAT_RG_INT16); + break; + case GL_R32I: + RETURN_IF_SUPPORTED(MESA_FORMAT_R_INT32); + break; + case GL_RG32I: + RETURN_IF_SUPPORTED(MESA_FORMAT_RG_INT32); + break; + default: + break; + } + } + /* GL_BGRA can be an internal format *only* in OpenGL ES (1.x or 2.0). */ if (ctx->API != API_OPENGL) { diff --git a/mesalib/src/mesa/main/texgen.h b/mesalib/src/mesa/main/texgen.h index 9160af002..60a9522af 100644 --- a/mesalib/src/mesa/main/texgen.h +++ b/mesalib/src/mesa/main/texgen.h @@ -1,85 +1,85 @@ -/*
- * Mesa 3-D graphics library
- * Version: 7.1
- *
- * Copyright (C) 1999-2008 Brian Paul All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-#ifndef TEXGEN_H
-#define TEXGEN_H
-
-
-#include "compiler.h"
-#include "glheader.h"
-#include "mfeatures.h"
-
-struct _glapi_table;
-
-
-#if FEATURE_texgen
-
-extern void GLAPIENTRY
-_mesa_TexGenfv( GLenum coord, GLenum pname, const GLfloat *params );
-
-extern void GLAPIENTRY
-_mesa_TexGenf( GLenum coord, GLenum pname, GLfloat param );
-
-extern void GLAPIENTRY
-_mesa_TexGeni( GLenum coord, GLenum pname, GLint param );
-
-extern void GLAPIENTRY
-_mesa_GetTexGenfv( GLenum coord, GLenum pname, GLfloat *params );
-
-extern void
-_mesa_init_texgen_dispatch(struct _glapi_table *disp);
-
-
-extern void GLAPIENTRY
-_es_GetTexGenfv(GLenum coord, GLenum pname, GLfloat *params);
-
-extern void GLAPIENTRY
-_es_TexGenf(GLenum coord, GLenum pname, GLfloat param);
-
-extern void GLAPIENTRY
-_es_TexGenfv(GLenum coord, GLenum pname, const GLfloat *params);
-
-
-#else /* FEATURE_texgen */
-
-static void
-_mesa_TexGenfv( GLenum coord, GLenum pname, const GLfloat *params )
-{
-}
-
-static void INLINE
-_mesa_TexGeni( GLenum coord, GLenum pname, GLint param )
-{
-}
-
-static INLINE void
-_mesa_init_texgen_dispatch(struct _glapi_table *disp)
-{
-}
-
-#endif /* FEATURE_texgen */
-
-
-#endif /* TEXGEN_H */
+/* + * Mesa 3-D graphics library + * Version: 7.1 + * + * Copyright (C) 1999-2008 Brian Paul All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + + +#ifndef TEXGEN_H +#define TEXGEN_H + + +#include "compiler.h" +#include "glheader.h" +#include "mfeatures.h" + +struct _glapi_table; + + +#if FEATURE_texgen + +extern void GLAPIENTRY +_mesa_TexGenfv( GLenum coord, GLenum pname, const GLfloat *params ); + +extern void GLAPIENTRY +_mesa_TexGenf( GLenum coord, GLenum pname, GLfloat param ); + +extern void GLAPIENTRY +_mesa_TexGeni( GLenum coord, GLenum pname, GLint param ); + +extern void GLAPIENTRY +_mesa_GetTexGenfv( GLenum coord, GLenum pname, GLfloat *params ); + +extern void +_mesa_init_texgen_dispatch(struct _glapi_table *disp); + + +extern void GLAPIENTRY +_es_GetTexGenfv(GLenum coord, GLenum pname, GLfloat *params); + +extern void GLAPIENTRY +_es_TexGenf(GLenum coord, GLenum pname, GLfloat param); + +extern void GLAPIENTRY +_es_TexGenfv(GLenum coord, GLenum pname, const GLfloat *params); + + +#else /* FEATURE_texgen */ + +static void +_mesa_TexGenfv( GLenum coord, GLenum pname, const GLfloat *params ) +{ +} + +static void inline +_mesa_TexGeni( GLenum coord, GLenum pname, GLint param ) +{ +} + +static inline void +_mesa_init_texgen_dispatch(struct _glapi_table *disp) +{ +} + +#endif /* FEATURE_texgen */ + + +#endif /* TEXGEN_H */ diff --git a/mesalib/src/mesa/main/texgetimage.c b/mesalib/src/mesa/main/texgetimage.c index d2f25b9f8..f9118860b 100644 --- a/mesalib/src/mesa/main/texgetimage.c +++ b/mesalib/src/mesa/main/texgetimage.c @@ -49,7 +49,7 @@ /** * Can the given type represent negative values? */ -static INLINE GLboolean +static inline GLboolean type_with_negative_values(GLenum type) { switch (type) { @@ -373,9 +373,9 @@ get_tex_rgba(struct gl_context *ctx, GLuint dimensions, static GLboolean get_tex_memcpy(struct gl_context *ctx, GLenum format, GLenum type, GLvoid *pixels, - struct gl_texture_object *texObj, struct gl_texture_image *texImage) { + const GLenum target = texImage->TexObject->Target; GLboolean memCopy = GL_FALSE; /* @@ -384,11 +384,11 @@ get_tex_memcpy(struct gl_context *ctx, GLenum format, GLenum type, * so we don't have to worry about those. * XXX more format combinations could be supported here. */ - if ((texObj->Target == GL_TEXTURE_1D || - texObj->Target == GL_TEXTURE_2D || - texObj->Target == GL_TEXTURE_RECTANGLE || - (texObj->Target >= GL_TEXTURE_CUBE_MAP_POSITIVE_X && - texObj->Target <= GL_TEXTURE_CUBE_MAP_NEGATIVE_Z))) { + if ((target == GL_TEXTURE_1D || + target == GL_TEXTURE_2D || + target == GL_TEXTURE_RECTANGLE || + (target >= GL_TEXTURE_CUBE_MAP_POSITIVE_X && + target <= GL_TEXTURE_CUBE_MAP_NEGATIVE_Z))) { if ((texImage->TexFormat == MESA_FORMAT_ARGB8888 || texImage->TexFormat == MESA_FORMAT_SARGB8) && format == GL_BGRA && @@ -471,14 +471,13 @@ get_tex_memcpy(struct gl_context *ctx, GLenum format, GLenum type, * unmap with ctx->Driver.UnmapTextureImage(). */ void -_mesa_get_teximage(struct gl_context *ctx, GLenum target, GLint level, +_mesa_get_teximage(struct gl_context *ctx, GLenum format, GLenum type, GLvoid *pixels, - struct gl_texture_object *texObj, struct gl_texture_image *texImage) { GLuint dimensions; - switch (target) { + switch (texImage->TexObject->Target) { case GL_TEXTURE_1D: dimensions = 1; break; @@ -511,7 +510,7 @@ _mesa_get_teximage(struct gl_context *ctx, GLenum target, GLint level, pixels = ADD_POINTERS(buf, pixels); } - if (get_tex_memcpy(ctx, format, type, pixels, texObj, texImage)) { + if (get_tex_memcpy(ctx, format, type, pixels, texImage)) { /* all done */ } else if (format == GL_DEPTH_COMPONENT) { @@ -772,8 +771,7 @@ _mesa_GetnTexImageARB( GLenum target, GLint level, GLenum format, _mesa_lock_texture(ctx, texObj); { - ctx->Driver.GetTexImage(ctx, target, level, format, type, pixels, - texObj, texImage); + ctx->Driver.GetTexImage(ctx, format, type, pixels, texImage); } _mesa_unlock_texture(ctx, texObj); } diff --git a/mesalib/src/mesa/main/texgetimage.h b/mesalib/src/mesa/main/texgetimage.h index 8612705ca..02b1cf459 100644 --- a/mesalib/src/mesa/main/texgetimage.h +++ b/mesalib/src/mesa/main/texgetimage.h @@ -34,9 +34,8 @@ struct gl_texture_image; struct gl_texture_object; extern void -_mesa_get_teximage(struct gl_context *ctx, GLenum target, GLint level, +_mesa_get_teximage(struct gl_context *ctx, GLenum format, GLenum type, GLvoid *pixels, - struct gl_texture_object *texObj, struct gl_texture_image *texImage); diff --git a/mesalib/src/mesa/main/teximage.c b/mesalib/src/mesa/main/teximage.c index daa71fd7b..8efe715fe 100644 --- a/mesalib/src/mesa/main/teximage.c +++ b/mesalib/src/mesa/main/teximage.c @@ -2253,7 +2253,7 @@ update_fbo_texture(struct gl_context *ctx, struct gl_texture_object *texObj, * changed the texture base level image, regenerate the rest of the * mipmap levels now. */ -static INLINE void +static inline void check_gen_mipmap(struct gl_context *ctx, GLenum target, struct gl_texture_object *texObj, GLint level) { diff --git a/mesalib/src/mesa/main/teximage.h b/mesalib/src/mesa/main/teximage.h index 8ef1d4560..6ce0fe92c 100644 --- a/mesalib/src/mesa/main/teximage.h +++ b/mesalib/src/mesa/main/teximage.h @@ -136,7 +136,7 @@ _mesa_get_texture_dimensions(GLenum target); /** * Lock a texture for updating. See also _mesa_lock_context_textures(). */ -static INLINE void +static inline void _mesa_lock_texture(struct gl_context *ctx, struct gl_texture_object *texObj) { _glthread_LOCK_MUTEX(ctx->Shared->TexMutex); @@ -144,7 +144,7 @@ _mesa_lock_texture(struct gl_context *ctx, struct gl_texture_object *texObj) (void) texObj; } -static INLINE void +static inline void _mesa_unlock_texture(struct gl_context *ctx, struct gl_texture_object *texObj) { (void) texObj; diff --git a/mesalib/src/mesa/main/texobj.h b/mesalib/src/mesa/main/texobj.h index 1faae6f7e..9ca7a4c9e 100644 --- a/mesalib/src/mesa/main/texobj.h +++ b/mesalib/src/mesa/main/texobj.h @@ -68,7 +68,7 @@ extern void _mesa_reference_texobj_(struct gl_texture_object **ptr, struct gl_texture_object *tex); -static INLINE void +static inline void _mesa_reference_texobj(struct gl_texture_object **ptr, struct gl_texture_object *tex) { diff --git a/mesalib/src/mesa/main/texparam.c b/mesalib/src/mesa/main/texparam.c index f232cfc86..dc5ee33a2 100644 --- a/mesalib/src/mesa/main/texparam.c +++ b/mesalib/src/mesa/main/texparam.c @@ -180,7 +180,7 @@ set_swizzle_component(GLuint *swizzle, GLuint comp, GLuint swz) * This is called just prior to changing any texture object state which * will not effect texture completeness. */ -static INLINE void +static inline void flush(struct gl_context *ctx) { FLUSH_VERTICES(ctx, _NEW_TEXTURE); @@ -195,7 +195,7 @@ flush(struct gl_context *ctx) * state flag and then mark the texture object as 'incomplete' so that any * per-texture derived state gets recomputed. */ -static INLINE void +static inline void incomplete(struct gl_context *ctx, struct gl_texture_object *texObj) { FLUSH_VERTICES(ctx, _NEW_TEXTURE); diff --git a/mesalib/src/mesa/main/texstate.h b/mesalib/src/mesa/main/texstate.h index 1258a0705..7dc6dc6a2 100644 --- a/mesalib/src/mesa/main/texstate.h +++ b/mesalib/src/mesa/main/texstate.h @@ -1,92 +1,92 @@ -/**
- * \file texstate.h
- * Texture state management.
- */
-
-/*
- * Mesa 3-D graphics library
- * Version: 7.1
- *
- * Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-#ifndef TEXSTATE_H
-#define TEXSTATE_H
-
-
-#include "compiler.h"
-#include "mtypes.h"
-
-
-/**
- * Return pointer to current texture unit.
- * This the texture unit set by glActiveTexture(), not glClientActiveTexture().
- */
-static INLINE struct gl_texture_unit *
-_mesa_get_current_tex_unit(struct gl_context *ctx)
-{
- ASSERT(ctx->Texture.CurrentUnit < Elements(ctx->Texture.Unit));
- return &(ctx->Texture.Unit[ctx->Texture.CurrentUnit]);
-}
-
-
-extern void
-_mesa_copy_texture_state( const struct gl_context *src, struct gl_context *dst );
-
-extern void
-_mesa_print_texunit_state( struct gl_context *ctx, GLuint unit );
-
-
-
-/**
- * \name Called from API
- */
-/*@{*/
-
-extern void GLAPIENTRY
-_mesa_ActiveTextureARB( GLenum target );
-
-extern void GLAPIENTRY
-_mesa_ClientActiveTextureARB( GLenum target );
-
-/*@}*/
-
-
-/**
- * \name Initialization, state maintenance
- */
-/*@{*/
-
-extern void
-_mesa_update_texture( struct gl_context *ctx, GLuint new_state );
-
-extern GLboolean
-_mesa_init_texture( struct gl_context *ctx );
-
-extern void
-_mesa_free_texture_data( struct gl_context *ctx );
-
-extern void
-_mesa_update_default_objects_texture(struct gl_context *ctx);
-
-/*@}*/
-
-#endif
+/** + * \file texstate.h + * Texture state management. + */ + +/* + * Mesa 3-D graphics library + * Version: 7.1 + * + * Copyright (C) 1999-2007 Brian Paul All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + + +#ifndef TEXSTATE_H +#define TEXSTATE_H + + +#include "compiler.h" +#include "mtypes.h" + + +/** + * Return pointer to current texture unit. + * This the texture unit set by glActiveTexture(), not glClientActiveTexture(). + */ +static inline struct gl_texture_unit * +_mesa_get_current_tex_unit(struct gl_context *ctx) +{ + ASSERT(ctx->Texture.CurrentUnit < Elements(ctx->Texture.Unit)); + return &(ctx->Texture.Unit[ctx->Texture.CurrentUnit]); +} + + +extern void +_mesa_copy_texture_state( const struct gl_context *src, struct gl_context *dst ); + +extern void +_mesa_print_texunit_state( struct gl_context *ctx, GLuint unit ); + + + +/** + * \name Called from API + */ +/*@{*/ + +extern void GLAPIENTRY +_mesa_ActiveTextureARB( GLenum target ); + +extern void GLAPIENTRY +_mesa_ClientActiveTextureARB( GLenum target ); + +/*@}*/ + + +/** + * \name Initialization, state maintenance + */ +/*@{*/ + +extern void +_mesa_update_texture( struct gl_context *ctx, GLuint new_state ); + +extern GLboolean +_mesa_init_texture( struct gl_context *ctx ); + +extern void +_mesa_free_texture_data( struct gl_context *ctx ); + +extern void +_mesa_update_default_objects_texture(struct gl_context *ctx); + +/*@}*/ + +#endif diff --git a/mesalib/src/mesa/main/texstore.c b/mesalib/src/mesa/main/texstore.c index cbed26cd4..d70cb8ac7 100644 --- a/mesalib/src/mesa/main/texstore.c +++ b/mesalib/src/mesa/main/texstore.c @@ -458,6 +458,7 @@ make_temp_uint_image(struct gl_context *ctx, GLuint dims, textureBaseFormat == GL_RED || textureBaseFormat == GL_LUMINANCE_ALPHA || textureBaseFormat == GL_LUMINANCE || + textureBaseFormat == GL_INTENSITY || textureBaseFormat == GL_ALPHA); tempImage = (GLuint *) malloc(srcWidth * srcHeight * srcDepth @@ -3636,7 +3637,14 @@ _mesa_texstore_rgba_int8(TEXSTORE_PARAMS) const GLenum baseFormat = _mesa_get_format_base_format(dstFormat); const GLint components = _mesa_components_in_format(baseFormat); - ASSERT(dstFormat == MESA_FORMAT_RGBA_INT8); + ASSERT(dstFormat == MESA_FORMAT_R_INT8 || + dstFormat == MESA_FORMAT_RG_INT8 || + dstFormat == MESA_FORMAT_RGB_INT8 || + dstFormat == MESA_FORMAT_RGBA_INT8 || + dstFormat == MESA_FORMAT_ALPHA_INT8 || + dstFormat == MESA_FORMAT_INTENSITY_INT8 || + dstFormat == MESA_FORMAT_LUMINANCE_INT8 || + dstFormat == MESA_FORMAT_LUMINANCE_ALPHA_INT8); ASSERT(baseInternalFormat == GL_RGBA || baseInternalFormat == GL_RGB || baseInternalFormat == GL_ALPHA || @@ -3701,7 +3709,14 @@ _mesa_texstore_rgba_int16(TEXSTORE_PARAMS) const GLenum baseFormat = _mesa_get_format_base_format(dstFormat); const GLint components = _mesa_components_in_format(baseFormat); - ASSERT(dstFormat == MESA_FORMAT_RGBA_INT16); + ASSERT(dstFormat == MESA_FORMAT_R_INT16 || + dstFormat == MESA_FORMAT_RG_INT16 || + dstFormat == MESA_FORMAT_RGB_INT16 || + dstFormat == MESA_FORMAT_RGBA_INT16 || + dstFormat == MESA_FORMAT_ALPHA_INT16 || + dstFormat == MESA_FORMAT_LUMINANCE_INT16 || + dstFormat == MESA_FORMAT_INTENSITY_INT16 || + dstFormat == MESA_FORMAT_LUMINANCE_ALPHA_INT16); ASSERT(baseInternalFormat == GL_RGBA || baseInternalFormat == GL_RGB || baseInternalFormat == GL_ALPHA || @@ -3766,7 +3781,14 @@ _mesa_texstore_rgba_int32(TEXSTORE_PARAMS) const GLenum baseFormat = _mesa_get_format_base_format(dstFormat); const GLint components = _mesa_components_in_format(baseFormat); - ASSERT(dstFormat == MESA_FORMAT_RGBA_INT32); + ASSERT(dstFormat == MESA_FORMAT_R_INT32 || + dstFormat == MESA_FORMAT_RG_INT32 || + dstFormat == MESA_FORMAT_RGB_INT32 || + dstFormat == MESA_FORMAT_RGBA_INT32 || + dstFormat == MESA_FORMAT_ALPHA_INT32 || + dstFormat == MESA_FORMAT_INTENSITY_INT32 || + dstFormat == MESA_FORMAT_LUMINANCE_INT32 || + dstFormat == MESA_FORMAT_LUMINANCE_ALPHA_INT32); ASSERT(baseInternalFormat == GL_RGBA || baseInternalFormat == GL_RGB || baseInternalFormat == GL_ALPHA || @@ -3831,7 +3853,14 @@ _mesa_texstore_rgba_uint8(TEXSTORE_PARAMS) const GLenum baseFormat = _mesa_get_format_base_format(dstFormat); const GLint components = _mesa_components_in_format(baseFormat); - ASSERT(dstFormat == MESA_FORMAT_RGBA_UINT8); + ASSERT(dstFormat == MESA_FORMAT_R_UINT8 || + dstFormat == MESA_FORMAT_RG_UINT8 || + dstFormat == MESA_FORMAT_RGB_UINT8 || + dstFormat == MESA_FORMAT_RGBA_UINT8 || + dstFormat == MESA_FORMAT_ALPHA_UINT8 || + dstFormat == MESA_FORMAT_INTENSITY_UINT8 || + dstFormat == MESA_FORMAT_LUMINANCE_UINT8 || + dstFormat == MESA_FORMAT_LUMINANCE_ALPHA_UINT8); ASSERT(baseInternalFormat == GL_RGBA || baseInternalFormat == GL_RGB || baseInternalFormat == GL_ALPHA || @@ -3894,7 +3923,14 @@ _mesa_texstore_rgba_uint16(TEXSTORE_PARAMS) const GLenum baseFormat = _mesa_get_format_base_format(dstFormat); const GLint components = _mesa_components_in_format(baseFormat); - ASSERT(dstFormat == MESA_FORMAT_RGBA_UINT16); + ASSERT(dstFormat == MESA_FORMAT_R_UINT16 || + dstFormat == MESA_FORMAT_RG_UINT16 || + dstFormat == MESA_FORMAT_RGB_UINT16 || + dstFormat == MESA_FORMAT_RGBA_UINT16 || + dstFormat == MESA_FORMAT_ALPHA_UINT16 || + dstFormat == MESA_FORMAT_INTENSITY_UINT16 || + dstFormat == MESA_FORMAT_LUMINANCE_UINT16 || + dstFormat == MESA_FORMAT_LUMINANCE_ALPHA_UINT16); ASSERT(baseInternalFormat == GL_RGBA || baseInternalFormat == GL_RGB || baseInternalFormat == GL_ALPHA || @@ -3957,7 +3993,14 @@ _mesa_texstore_rgba_uint32(TEXSTORE_PARAMS) const GLenum baseFormat = _mesa_get_format_base_format(dstFormat); const GLint components = _mesa_components_in_format(baseFormat); - ASSERT(dstFormat == MESA_FORMAT_RGBA_UINT32); + ASSERT(dstFormat == MESA_FORMAT_R_UINT32 || + dstFormat == MESA_FORMAT_RG_UINT32 || + dstFormat == MESA_FORMAT_RGB_UINT32 || + dstFormat == MESA_FORMAT_RGBA_UINT32 || + dstFormat == MESA_FORMAT_ALPHA_UINT32 || + dstFormat == MESA_FORMAT_INTENSITY_UINT32 || + dstFormat == MESA_FORMAT_LUMINANCE_UINT32 || + dstFormat == MESA_FORMAT_LUMINANCE_ALPHA_UINT32); ASSERT(baseInternalFormat == GL_RGBA || baseInternalFormat == GL_RGB || baseInternalFormat == GL_ALPHA || @@ -4307,145 +4350,6 @@ _mesa_texstore_z32f_x24s8(TEXSTORE_PARAMS) return GL_TRUE; } - -/** - * Table mapping MESA_FORMAT_* to _mesa_texstore_*() - * XXX this is somewhat temporary. - */ -static const struct { - gl_format Name; - StoreTexImageFunc Store; -} -texstore_funcs[MESA_FORMAT_COUNT] = -{ - { MESA_FORMAT_NONE, NULL }, - { MESA_FORMAT_RGBA8888, _mesa_texstore_rgba8888 }, - { MESA_FORMAT_RGBA8888_REV, _mesa_texstore_rgba8888 }, - { MESA_FORMAT_ARGB8888, _mesa_texstore_argb8888 }, - { MESA_FORMAT_ARGB8888_REV, _mesa_texstore_argb8888 }, - { MESA_FORMAT_XRGB8888, _mesa_texstore_argb8888 }, - { MESA_FORMAT_XRGB8888_REV, _mesa_texstore_argb8888 }, - { MESA_FORMAT_RGB888, _mesa_texstore_rgb888 }, - { MESA_FORMAT_BGR888, _mesa_texstore_bgr888 }, - { MESA_FORMAT_RGB565, _mesa_texstore_rgb565 }, - { MESA_FORMAT_RGB565_REV, _mesa_texstore_rgb565 }, - { MESA_FORMAT_ARGB4444, _mesa_texstore_argb4444 }, - { MESA_FORMAT_ARGB4444_REV, _mesa_texstore_argb4444 }, - { MESA_FORMAT_RGBA5551, _mesa_texstore_rgba5551 }, - { MESA_FORMAT_ARGB1555, _mesa_texstore_argb1555 }, - { MESA_FORMAT_ARGB1555_REV, _mesa_texstore_argb1555 }, - { MESA_FORMAT_AL44, _mesa_texstore_unorm44 }, - { MESA_FORMAT_AL88, _mesa_texstore_unorm88 }, - { MESA_FORMAT_AL88_REV, _mesa_texstore_unorm88 }, - { MESA_FORMAT_AL1616, _mesa_texstore_unorm1616 }, - { MESA_FORMAT_AL1616_REV, _mesa_texstore_unorm1616 }, - { MESA_FORMAT_RGB332, _mesa_texstore_rgb332 }, - { MESA_FORMAT_A8, _mesa_texstore_unorm8 }, - { MESA_FORMAT_A16, _mesa_texstore_unorm16 }, - { MESA_FORMAT_L8, _mesa_texstore_unorm8 }, - { MESA_FORMAT_L16, _mesa_texstore_unorm16 }, - { MESA_FORMAT_I8, _mesa_texstore_unorm8 }, - { MESA_FORMAT_I16, _mesa_texstore_unorm16 }, - { MESA_FORMAT_YCBCR, _mesa_texstore_ycbcr }, - { MESA_FORMAT_YCBCR_REV, _mesa_texstore_ycbcr }, - { MESA_FORMAT_R8, _mesa_texstore_unorm8 }, - { MESA_FORMAT_RG88, _mesa_texstore_unorm88 }, - { MESA_FORMAT_RG88_REV, _mesa_texstore_unorm88 }, - { MESA_FORMAT_R16, _mesa_texstore_unorm16 }, - { MESA_FORMAT_RG1616, _mesa_texstore_unorm1616 }, - { MESA_FORMAT_RG1616_REV, _mesa_texstore_unorm1616 }, - { MESA_FORMAT_ARGB2101010, _mesa_texstore_argb2101010 }, - { MESA_FORMAT_Z24_S8, _mesa_texstore_z24_s8 }, - { MESA_FORMAT_S8_Z24, _mesa_texstore_s8_z24 }, - { MESA_FORMAT_Z16, _mesa_texstore_z16 }, - { MESA_FORMAT_X8_Z24, _mesa_texstore_x8_z24 }, - { MESA_FORMAT_Z24_X8, _mesa_texstore_z24_x8 }, - { MESA_FORMAT_Z32, _mesa_texstore_z32 }, - { MESA_FORMAT_S8, _mesa_texstore_s8 }, - { MESA_FORMAT_SRGB8, _mesa_texstore_srgb8 }, - { MESA_FORMAT_SRGBA8, _mesa_texstore_srgba8 }, - { MESA_FORMAT_SARGB8, _mesa_texstore_sargb8 }, - { MESA_FORMAT_SL8, _mesa_texstore_sl8 }, - { MESA_FORMAT_SLA8, _mesa_texstore_sla8 }, - { MESA_FORMAT_SRGB_DXT1, _mesa_texstore_rgb_dxt1 }, - { MESA_FORMAT_SRGBA_DXT1, _mesa_texstore_rgba_dxt1 }, - { MESA_FORMAT_SRGBA_DXT3, _mesa_texstore_rgba_dxt3 }, - { MESA_FORMAT_SRGBA_DXT5, _mesa_texstore_rgba_dxt5 }, - { MESA_FORMAT_RGB_FXT1, _mesa_texstore_rgb_fxt1 }, - { MESA_FORMAT_RGBA_FXT1, _mesa_texstore_rgba_fxt1 }, - { MESA_FORMAT_RGB_DXT1, _mesa_texstore_rgb_dxt1 }, - { MESA_FORMAT_RGBA_DXT1, _mesa_texstore_rgba_dxt1 }, - { MESA_FORMAT_RGBA_DXT3, _mesa_texstore_rgba_dxt3 }, - { MESA_FORMAT_RGBA_DXT5, _mesa_texstore_rgba_dxt5 }, - { MESA_FORMAT_RGBA_FLOAT32, _mesa_texstore_rgba_float32 }, - { MESA_FORMAT_RGBA_FLOAT16, _mesa_texstore_rgba_float16 }, - { MESA_FORMAT_RGB_FLOAT32, _mesa_texstore_rgba_float32 }, - { MESA_FORMAT_RGB_FLOAT16, _mesa_texstore_rgba_float16 }, - { MESA_FORMAT_ALPHA_FLOAT32, _mesa_texstore_rgba_float32 }, - { MESA_FORMAT_ALPHA_FLOAT16, _mesa_texstore_rgba_float16 }, - { MESA_FORMAT_LUMINANCE_FLOAT32, _mesa_texstore_rgba_float32 }, - { MESA_FORMAT_LUMINANCE_FLOAT16, _mesa_texstore_rgba_float16 }, - { MESA_FORMAT_LUMINANCE_ALPHA_FLOAT32, _mesa_texstore_rgba_float32 }, - { MESA_FORMAT_LUMINANCE_ALPHA_FLOAT16, _mesa_texstore_rgba_float16 }, - { MESA_FORMAT_INTENSITY_FLOAT32, _mesa_texstore_rgba_float32 }, - { MESA_FORMAT_INTENSITY_FLOAT16, _mesa_texstore_rgba_float16 }, - { MESA_FORMAT_R_FLOAT32, _mesa_texstore_rgba_float32 }, - { MESA_FORMAT_R_FLOAT16, _mesa_texstore_rgba_float16 }, - { MESA_FORMAT_RG_FLOAT32, _mesa_texstore_rgba_float32 }, - { MESA_FORMAT_RG_FLOAT16, _mesa_texstore_rgba_float16 }, - - { MESA_FORMAT_RGBA_INT8, _mesa_texstore_rgba_int8 }, - { MESA_FORMAT_RGBA_INT16, _mesa_texstore_rgba_int16 }, - { MESA_FORMAT_RGBA_INT32, _mesa_texstore_rgba_int32 }, - { MESA_FORMAT_RGBA_UINT8, _mesa_texstore_rgba_uint8 }, - { MESA_FORMAT_RGBA_UINT16, _mesa_texstore_rgba_uint16 }, - { MESA_FORMAT_RGBA_UINT32, _mesa_texstore_rgba_uint32 }, - - { MESA_FORMAT_DUDV8, _mesa_texstore_dudv8 }, - - { MESA_FORMAT_SIGNED_R8, _mesa_texstore_snorm8 }, - { MESA_FORMAT_SIGNED_RG88_REV, _mesa_texstore_snorm88 }, - { MESA_FORMAT_SIGNED_RGBX8888, _mesa_texstore_signed_rgbx8888 }, - - { MESA_FORMAT_SIGNED_RGBA8888, _mesa_texstore_signed_rgba8888 }, - { MESA_FORMAT_SIGNED_RGBA8888_REV, _mesa_texstore_signed_rgba8888 }, - - { MESA_FORMAT_SIGNED_R16, _mesa_texstore_snorm16 }, - { MESA_FORMAT_SIGNED_GR1616, _mesa_texstore_snorm1616 }, - { MESA_FORMAT_SIGNED_RGB_16, _mesa_texstore_signed_rgba_16 }, - { MESA_FORMAT_SIGNED_RGBA_16, _mesa_texstore_signed_rgba_16 }, - { MESA_FORMAT_RGBA_16, _mesa_texstore_rgba_16 }, - - { MESA_FORMAT_RED_RGTC1, _mesa_texstore_red_rgtc1 }, - { MESA_FORMAT_SIGNED_RED_RGTC1, _mesa_texstore_signed_red_rgtc1 }, - { MESA_FORMAT_RG_RGTC2, _mesa_texstore_rg_rgtc2 }, - { MESA_FORMAT_SIGNED_RG_RGTC2, _mesa_texstore_signed_rg_rgtc2 }, - - /* Re-use the R/RG texstore functions. - * The code is generic enough to handle LATC too. */ - { MESA_FORMAT_L_LATC1, _mesa_texstore_red_rgtc1 }, - { MESA_FORMAT_SIGNED_L_LATC1, _mesa_texstore_signed_red_rgtc1 }, - { MESA_FORMAT_LA_LATC2, _mesa_texstore_rg_rgtc2 }, - { MESA_FORMAT_SIGNED_LA_LATC2, _mesa_texstore_signed_rg_rgtc2 }, - - { MESA_FORMAT_SIGNED_A8, _mesa_texstore_snorm8 }, - { MESA_FORMAT_SIGNED_L8, _mesa_texstore_snorm8 }, - { MESA_FORMAT_SIGNED_AL88, _mesa_texstore_snorm88 }, - { MESA_FORMAT_SIGNED_I8, _mesa_texstore_snorm8 }, - - { MESA_FORMAT_SIGNED_A16, _mesa_texstore_snorm16 }, - { MESA_FORMAT_SIGNED_L16, _mesa_texstore_snorm16 }, - { MESA_FORMAT_SIGNED_AL1616, _mesa_texstore_snorm1616 }, - { MESA_FORMAT_SIGNED_I16, _mesa_texstore_snorm16 }, - - { MESA_FORMAT_RGB9_E5_FLOAT, _mesa_texstore_rgb9_e5 }, - { MESA_FORMAT_R11_G11_B10_FLOAT, _mesa_texstore_r11_g11_b10f }, - - { MESA_FORMAT_Z32_FLOAT, _mesa_texstore_z32 }, - { MESA_FORMAT_Z32_FLOAT_X24S8, _mesa_texstore_z32f_x24s8 }, -}; - - static GLboolean _mesa_texstore_null(TEXSTORE_PARAMS) { @@ -4472,18 +4376,177 @@ _mesa_texstore_null(TEXSTORE_PARAMS) static StoreTexImageFunc _mesa_get_texstore_func(gl_format format) { -#ifdef DEBUG - GLuint i; - for (i = 0; i < MESA_FORMAT_COUNT; i++) { - ASSERT(texstore_funcs[i].Name == i); + static StoreTexImageFunc table[MESA_FORMAT_COUNT]; + static GLboolean initialized = GL_FALSE; + + if (!initialized) { + table[MESA_FORMAT_NONE] = _mesa_texstore_null; + + table[MESA_FORMAT_RGBA8888] = _mesa_texstore_rgba8888; + table[MESA_FORMAT_RGBA8888_REV] = _mesa_texstore_rgba8888; + table[MESA_FORMAT_ARGB8888] = _mesa_texstore_argb8888; + table[MESA_FORMAT_ARGB8888_REV] = _mesa_texstore_argb8888; + table[MESA_FORMAT_XRGB8888] = _mesa_texstore_argb8888; + table[MESA_FORMAT_XRGB8888_REV] = _mesa_texstore_argb8888; + table[MESA_FORMAT_RGB888] = _mesa_texstore_rgb888; + table[MESA_FORMAT_BGR888] = _mesa_texstore_bgr888; + table[MESA_FORMAT_RGB565] = _mesa_texstore_rgb565; + table[MESA_FORMAT_RGB565_REV] = _mesa_texstore_rgb565; + table[MESA_FORMAT_ARGB4444] = _mesa_texstore_argb4444; + table[MESA_FORMAT_ARGB4444_REV] = _mesa_texstore_argb4444; + table[MESA_FORMAT_RGBA5551] = _mesa_texstore_rgba5551; + table[MESA_FORMAT_ARGB1555] = _mesa_texstore_argb1555; + table[MESA_FORMAT_ARGB1555_REV] = _mesa_texstore_argb1555; + table[MESA_FORMAT_AL44] = _mesa_texstore_unorm44; + table[MESA_FORMAT_AL88] = _mesa_texstore_unorm88; + table[MESA_FORMAT_AL88_REV] = _mesa_texstore_unorm88; + table[MESA_FORMAT_AL1616] = _mesa_texstore_unorm1616; + table[MESA_FORMAT_AL1616_REV] = _mesa_texstore_unorm1616; + table[MESA_FORMAT_RGB332] = _mesa_texstore_rgb332; + table[MESA_FORMAT_A8] = _mesa_texstore_unorm8; + table[MESA_FORMAT_A16] = _mesa_texstore_unorm16; + table[MESA_FORMAT_L8] = _mesa_texstore_unorm8; + table[MESA_FORMAT_L16] = _mesa_texstore_unorm16; + table[MESA_FORMAT_I8] = _mesa_texstore_unorm8; + table[MESA_FORMAT_I16] = _mesa_texstore_unorm16; + table[MESA_FORMAT_YCBCR] = _mesa_texstore_ycbcr; + table[MESA_FORMAT_YCBCR_REV] = _mesa_texstore_ycbcr; + table[MESA_FORMAT_R8] = _mesa_texstore_unorm8; + table[MESA_FORMAT_RG88] = _mesa_texstore_unorm88; + table[MESA_FORMAT_RG88_REV] = _mesa_texstore_unorm88; + table[MESA_FORMAT_R16] = _mesa_texstore_unorm16; + table[MESA_FORMAT_RG1616] = _mesa_texstore_unorm1616; + table[MESA_FORMAT_RG1616_REV] = _mesa_texstore_unorm1616; + table[MESA_FORMAT_ARGB2101010] = _mesa_texstore_argb2101010; + table[MESA_FORMAT_Z24_S8] = _mesa_texstore_z24_s8; + table[MESA_FORMAT_S8_Z24] = _mesa_texstore_s8_z24; + table[MESA_FORMAT_Z16] = _mesa_texstore_z16; + table[MESA_FORMAT_X8_Z24] = _mesa_texstore_x8_z24; + table[MESA_FORMAT_Z24_X8] = _mesa_texstore_z24_x8; + table[MESA_FORMAT_Z32] = _mesa_texstore_z32; + table[MESA_FORMAT_S8] = _mesa_texstore_s8; + table[MESA_FORMAT_SRGB8] = _mesa_texstore_srgb8; + table[MESA_FORMAT_SRGBA8] = _mesa_texstore_srgba8; + table[MESA_FORMAT_SARGB8] = _mesa_texstore_sargb8; + table[MESA_FORMAT_SL8] = _mesa_texstore_sl8; + table[MESA_FORMAT_SLA8] = _mesa_texstore_sla8; + table[MESA_FORMAT_SRGB_DXT1] = _mesa_texstore_rgb_dxt1; + table[MESA_FORMAT_SRGBA_DXT1] = _mesa_texstore_rgba_dxt1; + table[MESA_FORMAT_SRGBA_DXT3] = _mesa_texstore_rgba_dxt3; + table[MESA_FORMAT_SRGBA_DXT5] = _mesa_texstore_rgba_dxt5; + table[MESA_FORMAT_RGB_FXT1] = _mesa_texstore_rgb_fxt1; + table[MESA_FORMAT_RGBA_FXT1] = _mesa_texstore_rgba_fxt1; + table[MESA_FORMAT_RGB_DXT1] = _mesa_texstore_rgb_dxt1; + table[MESA_FORMAT_RGBA_DXT1] = _mesa_texstore_rgba_dxt1; + table[MESA_FORMAT_RGBA_DXT3] = _mesa_texstore_rgba_dxt3; + table[MESA_FORMAT_RGBA_DXT5] = _mesa_texstore_rgba_dxt5; + table[MESA_FORMAT_RGBA_FLOAT32] = _mesa_texstore_rgba_float32; + table[MESA_FORMAT_RGBA_FLOAT16] = _mesa_texstore_rgba_float16; + table[MESA_FORMAT_RGB_FLOAT32] = _mesa_texstore_rgba_float32; + table[MESA_FORMAT_RGB_FLOAT16] = _mesa_texstore_rgba_float16; + table[MESA_FORMAT_ALPHA_FLOAT32] = _mesa_texstore_rgba_float32; + table[MESA_FORMAT_ALPHA_FLOAT16] = _mesa_texstore_rgba_float16; + table[MESA_FORMAT_LUMINANCE_FLOAT32] = _mesa_texstore_rgba_float32; + table[MESA_FORMAT_LUMINANCE_FLOAT16] = _mesa_texstore_rgba_float16; + table[MESA_FORMAT_LUMINANCE_ALPHA_FLOAT32] = _mesa_texstore_rgba_float32; + table[MESA_FORMAT_LUMINANCE_ALPHA_FLOAT16] = _mesa_texstore_rgba_float16; + table[MESA_FORMAT_INTENSITY_FLOAT32] = _mesa_texstore_rgba_float32; + table[MESA_FORMAT_INTENSITY_FLOAT16] = _mesa_texstore_rgba_float16; + table[MESA_FORMAT_R_FLOAT32] = _mesa_texstore_rgba_float32; + table[MESA_FORMAT_R_FLOAT16] = _mesa_texstore_rgba_float16; + table[MESA_FORMAT_RG_FLOAT32] = _mesa_texstore_rgba_float32; + table[MESA_FORMAT_RG_FLOAT16] = _mesa_texstore_rgba_float16; + table[MESA_FORMAT_DUDV8] = _mesa_texstore_dudv8; + table[MESA_FORMAT_SIGNED_R8] = _mesa_texstore_snorm8; + table[MESA_FORMAT_SIGNED_RG88_REV] = _mesa_texstore_snorm88; + table[MESA_FORMAT_SIGNED_RGBX8888] = _mesa_texstore_signed_rgbx8888; + table[MESA_FORMAT_SIGNED_RGBA8888] = _mesa_texstore_signed_rgba8888; + table[MESA_FORMAT_SIGNED_RGBA8888_REV] = _mesa_texstore_signed_rgba8888; + table[MESA_FORMAT_SIGNED_R16] = _mesa_texstore_snorm16; + table[MESA_FORMAT_SIGNED_GR1616] = _mesa_texstore_snorm1616; + table[MESA_FORMAT_SIGNED_RGB_16] = _mesa_texstore_signed_rgba_16; + table[MESA_FORMAT_SIGNED_RGBA_16] = _mesa_texstore_signed_rgba_16; + table[MESA_FORMAT_RGBA_16] = _mesa_texstore_rgba_16; + table[MESA_FORMAT_RED_RGTC1] = _mesa_texstore_red_rgtc1; + table[MESA_FORMAT_SIGNED_RED_RGTC1] = _mesa_texstore_signed_red_rgtc1; + table[MESA_FORMAT_RG_RGTC2] = _mesa_texstore_rg_rgtc2; + table[MESA_FORMAT_SIGNED_RG_RGTC2] = _mesa_texstore_signed_rg_rgtc2; + table[MESA_FORMAT_L_LATC1] = _mesa_texstore_red_rgtc1; + table[MESA_FORMAT_SIGNED_L_LATC1] = _mesa_texstore_signed_red_rgtc1; + table[MESA_FORMAT_LA_LATC2] = _mesa_texstore_rg_rgtc2; + table[MESA_FORMAT_SIGNED_LA_LATC2] = _mesa_texstore_signed_rg_rgtc2; + table[MESA_FORMAT_SIGNED_A8] = _mesa_texstore_snorm8; + table[MESA_FORMAT_SIGNED_L8] = _mesa_texstore_snorm8; + table[MESA_FORMAT_SIGNED_AL88] = _mesa_texstore_snorm88; + table[MESA_FORMAT_SIGNED_I8] = _mesa_texstore_snorm8; + table[MESA_FORMAT_SIGNED_A16] = _mesa_texstore_snorm16; + table[MESA_FORMAT_SIGNED_L16] = _mesa_texstore_snorm16; + table[MESA_FORMAT_SIGNED_AL1616] = _mesa_texstore_snorm1616; + table[MESA_FORMAT_SIGNED_I16] = _mesa_texstore_snorm16; + table[MESA_FORMAT_RGB9_E5_FLOAT] = _mesa_texstore_rgb9_e5; + table[MESA_FORMAT_R11_G11_B10_FLOAT] = _mesa_texstore_r11_g11_b10f; + table[MESA_FORMAT_Z32_FLOAT] = _mesa_texstore_z32; + table[MESA_FORMAT_Z32_FLOAT_X24S8] = _mesa_texstore_z32f_x24s8; + + table[MESA_FORMAT_ALPHA_UINT8] = _mesa_texstore_rgba_uint8; + table[MESA_FORMAT_ALPHA_UINT16] = _mesa_texstore_rgba_uint16; + table[MESA_FORMAT_ALPHA_UINT32] = _mesa_texstore_rgba_uint32; + table[MESA_FORMAT_ALPHA_INT8] = _mesa_texstore_rgba_int8; + table[MESA_FORMAT_ALPHA_INT16] = _mesa_texstore_rgba_int16; + table[MESA_FORMAT_ALPHA_INT32] = _mesa_texstore_rgba_int32; + + table[MESA_FORMAT_INTENSITY_UINT8] = _mesa_texstore_rgba_uint8; + table[MESA_FORMAT_INTENSITY_UINT16] = _mesa_texstore_rgba_uint16; + table[MESA_FORMAT_INTENSITY_UINT32] = _mesa_texstore_rgba_uint32; + table[MESA_FORMAT_INTENSITY_INT8] = _mesa_texstore_rgba_int8; + table[MESA_FORMAT_INTENSITY_INT16] = _mesa_texstore_rgba_int16; + table[MESA_FORMAT_INTENSITY_INT32] = _mesa_texstore_rgba_int32; + + table[MESA_FORMAT_LUMINANCE_UINT8] = _mesa_texstore_rgba_uint8; + table[MESA_FORMAT_LUMINANCE_UINT16] = _mesa_texstore_rgba_uint16; + table[MESA_FORMAT_LUMINANCE_UINT32] = _mesa_texstore_rgba_uint32; + table[MESA_FORMAT_LUMINANCE_INT8] = _mesa_texstore_rgba_int8; + table[MESA_FORMAT_LUMINANCE_INT16] = _mesa_texstore_rgba_int16; + table[MESA_FORMAT_LUMINANCE_INT32] = _mesa_texstore_rgba_int32; + + table[MESA_FORMAT_LUMINANCE_ALPHA_UINT8] = _mesa_texstore_rgba_uint8; + table[MESA_FORMAT_LUMINANCE_ALPHA_UINT16] = _mesa_texstore_rgba_uint16; + table[MESA_FORMAT_LUMINANCE_ALPHA_UINT32] = _mesa_texstore_rgba_uint32; + table[MESA_FORMAT_LUMINANCE_ALPHA_INT8] = _mesa_texstore_rgba_int8; + table[MESA_FORMAT_LUMINANCE_ALPHA_INT16] = _mesa_texstore_rgba_int16; + table[MESA_FORMAT_LUMINANCE_ALPHA_INT32] = _mesa_texstore_rgba_int32; + + table[MESA_FORMAT_R_INT8] = _mesa_texstore_rgba_int8; + table[MESA_FORMAT_RG_INT8] = _mesa_texstore_rgba_int8; + table[MESA_FORMAT_RGB_INT8] = _mesa_texstore_rgba_int8; + table[MESA_FORMAT_RGBA_INT8] = _mesa_texstore_rgba_int8; + table[MESA_FORMAT_R_INT16] = _mesa_texstore_rgba_int16; + table[MESA_FORMAT_RG_INT16] = _mesa_texstore_rgba_int16; + table[MESA_FORMAT_RGB_INT16] = _mesa_texstore_rgba_int16; + table[MESA_FORMAT_RGBA_INT16] = _mesa_texstore_rgba_int16; + table[MESA_FORMAT_R_INT32] = _mesa_texstore_rgba_int32; + table[MESA_FORMAT_RG_INT32] = _mesa_texstore_rgba_int32; + table[MESA_FORMAT_RGB_INT32] = _mesa_texstore_rgba_int32; + table[MESA_FORMAT_RGBA_INT32] = _mesa_texstore_rgba_int32; + + table[MESA_FORMAT_R_UINT8] = _mesa_texstore_rgba_uint8; + table[MESA_FORMAT_RG_UINT8] = _mesa_texstore_rgba_uint8; + table[MESA_FORMAT_RGB_UINT8] = _mesa_texstore_rgba_uint8; + table[MESA_FORMAT_RGBA_UINT8] = _mesa_texstore_rgba_uint8; + table[MESA_FORMAT_R_UINT16] = _mesa_texstore_rgba_uint16; + table[MESA_FORMAT_RG_UINT16] = _mesa_texstore_rgba_uint16; + table[MESA_FORMAT_RGB_UINT16] = _mesa_texstore_rgba_uint16; + table[MESA_FORMAT_RGBA_UINT16] = _mesa_texstore_rgba_uint16; + table[MESA_FORMAT_R_UINT32] = _mesa_texstore_rgba_uint32; + table[MESA_FORMAT_RG_UINT32] = _mesa_texstore_rgba_uint32; + table[MESA_FORMAT_RGB_UINT32] = _mesa_texstore_rgba_uint32; + table[MESA_FORMAT_RGBA_UINT32] = _mesa_texstore_rgba_uint32; + + initialized = GL_TRUE; } -#endif - ASSERT(texstore_funcs[format].Name == format); - if (texstore_funcs[format].Store) - return texstore_funcs[format].Store; - else - return _mesa_texstore_null; + ASSERT(table[format]); + return table[format]; } @@ -4626,22 +4689,53 @@ _mesa_store_teximage2d(struct gl_context *ctx, GLenum target, GLint level, return; } - /* Map dest texture buffer (write to whole region) */ - ctx->Driver.MapTextureImage(ctx, texImage, 0, - 0, 0, width, height, - rwMode, - &dstMap, &dstRowStride); - assert(dstMap); - success = _mesa_texstore(ctx, 2, texImage->_BaseFormat, - texImage->TexFormat, - dstMap, - 0, 0, 0, /* dstX/Y/Zoffset */ - dstRowStride, - &zeroImageOffset, - width, height, 1, - format, type, pixels, packing); - - ctx->Driver.UnmapTextureImage(ctx, texImage, 0); + if (target == GL_TEXTURE_1D_ARRAY) { + const GLint srcStride = + _mesa_image_row_stride(packing, width, format, type); + int y; + + success = GL_TRUE; + + for (y = 0; y < height; y++) { + /* Map dest texture buffer (write to whole region) */ + ctx->Driver.MapTextureImage(ctx, texImage, y, + 0, 0, width, 1, + rwMode, + &dstMap, &dstRowStride); + assert(dstMap); + success = _mesa_texstore(ctx, 2, texImage->_BaseFormat, + texImage->TexFormat, + dstMap, + 0, 0, 0, /* dstX/Y/Zoffset */ + dstRowStride, + &zeroImageOffset, + width, 1, 1, + format, type, pixels, packing); + ctx->Driver.UnmapTextureImage(ctx, texImage, y); + + if (!success) + break; + + pixels = (const GLubyte *) pixels + srcStride; + } + } else { + /* Map dest texture buffer (write to whole region) */ + ctx->Driver.MapTextureImage(ctx, texImage, 0, + 0, 0, width, height, + rwMode, + &dstMap, &dstRowStride); + assert(dstMap); + success = _mesa_texstore(ctx, 2, texImage->_BaseFormat, + texImage->TexFormat, + dstMap, + 0, 0, 0, /* dstX/Y/Zoffset */ + dstRowStride, + &zeroImageOffset, + width, height, 1, + format, type, pixels, packing); + + ctx->Driver.UnmapTextureImage(ctx, texImage, 0); + } if (!success) _mesa_error(ctx, GL_OUT_OF_MEMORY, "glTexImage2D"); @@ -4691,6 +4785,11 @@ _mesa_store_teximage3d(struct gl_context *ctx, GLenum target, GLint level, return; } + if (target == GL_TEXTURE_1D_ARRAY) { + depth = height; + height = 1; + } + sliceMaps = (GLubyte **) malloc(depth * sizeof(GLubyte *)); dstImageOffsets = (GLuint *) malloc(depth * sizeof(GLuint)); diff --git a/mesalib/src/mesa/main/transformfeedback.h b/mesalib/src/mesa/main/transformfeedback.h index add8d22d6..9447effa9 100644 --- a/mesalib/src/mesa/main/transformfeedback.h +++ b/mesalib/src/mesa/main/transformfeedback.h @@ -1,137 +1,137 @@ -/*
- * Mesa 3-D graphics library
- *
- * Copyright (C) 2010 VMware, Inc. All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-#ifndef TRANSFORM_FEEDBACK_H
-#define TRANSFORM_FEEDBACK_H
-
-#include "compiler.h"
-#include "glheader.h"
-#include "mfeatures.h"
-
-struct _glapi_table;
-struct dd_function_table;
-struct gl_context;
-
-extern void
-_mesa_init_transform_feedback(struct gl_context *ctx);
-
-extern void
-_mesa_free_transform_feedback(struct gl_context *ctx);
-
-#if FEATURE_EXT_transform_feedback
-
-extern GLboolean
-_mesa_validate_primitive_mode(struct gl_context *ctx, GLenum mode);
-
-extern GLboolean
-_mesa_validate_transform_feedback_buffers(struct gl_context *ctx);
-
-
-extern void
-_mesa_init_transform_feedback_functions(struct dd_function_table *driver);
-
-extern void
-_mesa_init_transform_feedback_dispatch(struct _glapi_table *disp);
-
-
-/*** GL_EXT_transform_feedback ***/
-
-extern void GLAPIENTRY
-_mesa_BeginTransformFeedback(GLenum mode);
-
-extern void GLAPIENTRY
-_mesa_EndTransformFeedback(void);
-
-extern void GLAPIENTRY
-_mesa_BindBufferRange(GLenum target, GLuint index,
- GLuint buffer, GLintptr offset, GLsizeiptr size);
-
-extern void GLAPIENTRY
-_mesa_BindBufferBase(GLenum target, GLuint index, GLuint buffer);
-
-extern void GLAPIENTRY
-_mesa_BindBufferOffsetEXT(GLenum target, GLuint index, GLuint buffer,
- GLintptr offset);
-
-extern void GLAPIENTRY
-_mesa_TransformFeedbackVaryings(GLuint program, GLsizei count,
- const GLchar **varyings, GLenum bufferMode);
-
-extern void GLAPIENTRY
-_mesa_GetTransformFeedbackVarying(GLuint program, GLuint index,
- GLsizei bufSize, GLsizei *length,
- GLsizei *size, GLenum *type, GLchar *name);
-
-
-
-/*** GL_ARB_transform_feedback2 ***/
-
-extern void GLAPIENTRY
-_mesa_GenTransformFeedbacks(GLsizei n, GLuint *names);
-
-extern GLboolean GLAPIENTRY
-_mesa_IsTransformFeedback(GLuint name);
-
-extern void GLAPIENTRY
-_mesa_BindTransformFeedback(GLenum target, GLuint name);
-
-extern void GLAPIENTRY
-_mesa_DeleteTransformFeedbacks(GLsizei n, const GLuint *names);
-
-extern void GLAPIENTRY
-_mesa_PauseTransformFeedback(void);
-
-extern void GLAPIENTRY
-_mesa_ResumeTransformFeedback(void);
-
-extern void GLAPIENTRY
-_mesa_DrawTransformFeedback(GLenum mode, GLuint name);
-
-#else /* FEATURE_EXT_transform_feedback */
-
-static INLINE GLboolean
-_mesa_validate_primitive_mode(struct gl_context *ctx, GLenum mode)
-{
- return GL_TRUE;
-}
-
-static INLINE GLboolean
-_mesa_validate_transform_feedback_buffers(struct gl_context *ctx)
-{
- return GL_TRUE;
-}
-
-static INLINE void
-_mesa_init_transform_feedback_functions(struct dd_function_table *driver)
-{
-}
-
-static INLINE void
-_mesa_init_transform_feedback_dispatch(struct _glapi_table *disp)
-{
-}
-
-#endif /* FEATURE_EXT_transform_feedback */
-
-#endif /* TRANSFORM_FEEDBACK_H */
+/* + * Mesa 3-D graphics library + * + * Copyright (C) 2010 VMware, Inc. All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + + +#ifndef TRANSFORM_FEEDBACK_H +#define TRANSFORM_FEEDBACK_H + +#include "compiler.h" +#include "glheader.h" +#include "mfeatures.h" + +struct _glapi_table; +struct dd_function_table; +struct gl_context; + +extern void +_mesa_init_transform_feedback(struct gl_context *ctx); + +extern void +_mesa_free_transform_feedback(struct gl_context *ctx); + +#if FEATURE_EXT_transform_feedback + +extern GLboolean +_mesa_validate_primitive_mode(struct gl_context *ctx, GLenum mode); + +extern GLboolean +_mesa_validate_transform_feedback_buffers(struct gl_context *ctx); + + +extern void +_mesa_init_transform_feedback_functions(struct dd_function_table *driver); + +extern void +_mesa_init_transform_feedback_dispatch(struct _glapi_table *disp); + + +/*** GL_EXT_transform_feedback ***/ + +extern void GLAPIENTRY +_mesa_BeginTransformFeedback(GLenum mode); + +extern void GLAPIENTRY +_mesa_EndTransformFeedback(void); + +extern void GLAPIENTRY +_mesa_BindBufferRange(GLenum target, GLuint index, + GLuint buffer, GLintptr offset, GLsizeiptr size); + +extern void GLAPIENTRY +_mesa_BindBufferBase(GLenum target, GLuint index, GLuint buffer); + +extern void GLAPIENTRY +_mesa_BindBufferOffsetEXT(GLenum target, GLuint index, GLuint buffer, + GLintptr offset); + +extern void GLAPIENTRY +_mesa_TransformFeedbackVaryings(GLuint program, GLsizei count, + const GLchar **varyings, GLenum bufferMode); + +extern void GLAPIENTRY +_mesa_GetTransformFeedbackVarying(GLuint program, GLuint index, + GLsizei bufSize, GLsizei *length, + GLsizei *size, GLenum *type, GLchar *name); + + + +/*** GL_ARB_transform_feedback2 ***/ + +extern void GLAPIENTRY +_mesa_GenTransformFeedbacks(GLsizei n, GLuint *names); + +extern GLboolean GLAPIENTRY +_mesa_IsTransformFeedback(GLuint name); + +extern void GLAPIENTRY +_mesa_BindTransformFeedback(GLenum target, GLuint name); + +extern void GLAPIENTRY +_mesa_DeleteTransformFeedbacks(GLsizei n, const GLuint *names); + +extern void GLAPIENTRY +_mesa_PauseTransformFeedback(void); + +extern void GLAPIENTRY +_mesa_ResumeTransformFeedback(void); + +extern void GLAPIENTRY +_mesa_DrawTransformFeedback(GLenum mode, GLuint name); + +#else /* FEATURE_EXT_transform_feedback */ + +static inline GLboolean +_mesa_validate_primitive_mode(struct gl_context *ctx, GLenum mode) +{ + return GL_TRUE; +} + +static inline GLboolean +_mesa_validate_transform_feedback_buffers(struct gl_context *ctx) +{ + return GL_TRUE; +} + +static inline void +_mesa_init_transform_feedback_functions(struct dd_function_table *driver) +{ +} + +static inline void +_mesa_init_transform_feedback_dispatch(struct _glapi_table *disp) +{ +} + +#endif /* FEATURE_EXT_transform_feedback */ + +#endif /* TRANSFORM_FEEDBACK_H */ diff --git a/mesalib/src/mesa/main/varray.h b/mesalib/src/mesa/main/varray.h index 1c423200f..6fcc0a336 100644 --- a/mesalib/src/mesa/main/varray.h +++ b/mesalib/src/mesa/main/varray.h @@ -41,7 +41,7 @@ struct gl_context; * The array->_MaxElement field will be updated. * Later in glDrawArrays/Elements/etc we can do some bounds checking. */ -static INLINE void +static inline void _mesa_update_array_max_element(struct gl_client_array *array) { assert(array->Enabled); diff --git a/mesalib/src/mesa/main/version.c b/mesalib/src/mesa/main/version.c index a996c145b..17c060059 100644 --- a/mesalib/src/mesa/main/version.c +++ b/mesalib/src/mesa/main/version.c @@ -104,7 +104,6 @@ compute_version(struct gl_context *ctx) ctx->Extensions.ARB_occlusion_query && ctx->Extensions.EXT_shadow_funcs); const GLboolean ver_2_0 = (ver_1_5 && - ctx->Extensions.ARB_draw_buffers && ctx->Extensions.ARB_point_sprite && ctx->Extensions.ARB_shader_objects && ctx->Extensions.ARB_vertex_shader && diff --git a/mesalib/src/mesa/main/vtxfmt.h b/mesalib/src/mesa/main/vtxfmt.h index d403669c2..aac656879 100644 --- a/mesalib/src/mesa/main/vtxfmt.h +++ b/mesalib/src/mesa/main/vtxfmt.h @@ -1,59 +1,59 @@ -/**
- * \file vtxfmt.h
- *
- * \author Keith Whitwell <keith@tungstengraphics.com>
- * \author Gareth Hughes
- */
-
-/*
- * Mesa 3-D graphics library
- * Version: 6.1
- *
- * Copyright (C) 1999-2004 Brian Paul All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-#ifndef _VTXFMT_H_
-#define _VTXFMT_H_
-
-#include "compiler.h"
-#include "mfeatures.h"
-#include "mtypes.h"
-
-#if FEATURE_beginend
-
-extern void _mesa_install_exec_vtxfmt( struct gl_context *ctx, const GLvertexformat *vfmt );
-extern void _mesa_install_save_vtxfmt( struct gl_context *ctx, const GLvertexformat *vfmt );
-
-#else /* FEATURE_beginend */
-
-static INLINE void
-_mesa_install_exec_vtxfmt( struct gl_context *ctx, const GLvertexformat *vfmt )
-{
-}
-
-static INLINE void
-_mesa_install_save_vtxfmt( struct gl_context *ctx, const GLvertexformat *vfmt )
-{
-}
-
-#endif /* FEATURE_beginend */
-
-#endif /* _VTXFMT_H_ */
+/** + * \file vtxfmt.h + * + * \author Keith Whitwell <keith@tungstengraphics.com> + * \author Gareth Hughes + */ + +/* + * Mesa 3-D graphics library + * Version: 6.1 + * + * Copyright (C) 1999-2004 Brian Paul All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + + +#ifndef _VTXFMT_H_ +#define _VTXFMT_H_ + +#include "compiler.h" +#include "mfeatures.h" +#include "mtypes.h" + +#if FEATURE_beginend + +extern void _mesa_install_exec_vtxfmt( struct gl_context *ctx, const GLvertexformat *vfmt ); +extern void _mesa_install_save_vtxfmt( struct gl_context *ctx, const GLvertexformat *vfmt ); + +#else /* FEATURE_beginend */ + +static inline void +_mesa_install_exec_vtxfmt( struct gl_context *ctx, const GLvertexformat *vfmt ) +{ +} + +static inline void +_mesa_install_save_vtxfmt( struct gl_context *ctx, const GLvertexformat *vfmt ) +{ +} + +#endif /* FEATURE_beginend */ + +#endif /* _VTXFMT_H_ */ |