aboutsummaryrefslogtreecommitdiff
path: root/mesalib/src/mesa
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2011-11-04 08:57:20 +0100
committermarha <marha@users.sourceforge.net>2011-11-04 08:57:20 +0100
commit02f377d5e2dd18537d0807ad63675a0970b5a37d (patch)
tree1814c826db4d95a30ad71431d9c84b8d2611ec18 /mesalib/src/mesa
parent6f4feafd4d22beaabfb0202e66b0dea9047ee084 (diff)
downloadvcxsrv-02f377d5e2dd18537d0807ad63675a0970b5a37d.tar.gz
vcxsrv-02f377d5e2dd18537d0807ad63675a0970b5a37d.tar.bz2
vcxsrv-02f377d5e2dd18537d0807ad63675a0970b5a37d.zip
xserver pixman mesa git update 4 nov 2011
Diffstat (limited to 'mesalib/src/mesa')
-rw-r--r--mesalib/src/mesa/SConscript1
-rw-r--r--mesalib/src/mesa/drivers/common/driverfuncs.c6
-rw-r--r--mesalib/src/mesa/drivers/common/meta.c137
-rw-r--r--mesalib/src/mesa/drivers/common/meta.h3
-rw-r--r--mesalib/src/mesa/drivers/dri/common/Makefile.sources5
-rw-r--r--mesalib/src/mesa/drivers/dri/common/dri_util.c596
-rw-r--r--mesalib/src/mesa/drivers/dri/common/dri_util.h285
-rw-r--r--mesalib/src/mesa/drivers/dri/common/drirenderbuffer.c200
-rw-r--r--mesalib/src/mesa/drivers/dri/common/drirenderbuffer.h71
-rw-r--r--mesalib/src/mesa/drivers/dri/common/memops.h17
-rw-r--r--mesalib/src/mesa/drivers/dri/common/spantmp_common.h11
-rw-r--r--mesalib/src/mesa/drivers/dri/common/texmem.c1341
-rw-r--r--mesalib/src/mesa/drivers/dri/common/texmem.h334
-rw-r--r--mesalib/src/mesa/drivers/dri/common/utils.c118
-rw-r--r--mesalib/src/mesa/drivers/dri/common/utils.h25
-rw-r--r--mesalib/src/mesa/drivers/dri/common/vblank.c434
-rw-r--r--mesalib/src/mesa/drivers/dri/common/vblank.h71
-rw-r--r--mesalib/src/mesa/drivers/dri/common/xmlpool/de.po141
-rw-r--r--mesalib/src/mesa/drivers/dri/swrast/swrast.c84
-rw-r--r--mesalib/src/mesa/drivers/dri/swrast/swrast_priv.h281
-rw-r--r--mesalib/src/mesa/drivers/windows/gdi/wgl.c10
-rw-r--r--mesalib/src/mesa/main/APIspec.xml9
-rw-r--r--mesalib/src/mesa/main/api_exec.c9
-rw-r--r--mesalib/src/mesa/main/arrayobj.c1
-rw-r--r--mesalib/src/mesa/main/attrib.c2
-rw-r--r--mesalib/src/mesa/main/dd.h18
-rw-r--r--mesalib/src/mesa/main/debug.c3
-rw-r--r--mesalib/src/mesa/main/dispatch.h1216
-rw-r--r--mesalib/src/mesa/main/dlist.c11
-rw-r--r--mesalib/src/mesa/main/enable.c13
-rw-r--r--mesalib/src/mesa/main/enums.c5525
-rw-r--r--mesalib/src/mesa/main/extensions.c4
-rw-r--r--mesalib/src/mesa/main/fbobject.c6
-rw-r--r--mesalib/src/mesa/main/ff_fragment_shader.cpp9
-rw-r--r--mesalib/src/mesa/main/ffvertex_prog.c43
-rw-r--r--mesalib/src/mesa/main/fog.c14
-rw-r--r--mesalib/src/mesa/main/format_unpack.c128
-rw-r--r--mesalib/src/mesa/main/format_unpack.h8
-rw-r--r--mesalib/src/mesa/main/formats.c318
-rw-r--r--mesalib/src/mesa/main/formats.h3
-rw-r--r--mesalib/src/mesa/main/get.c14
-rw-r--r--mesalib/src/mesa/main/glheader.h8
-rw-r--r--mesalib/src/mesa/main/mipmap.c1
-rw-r--r--mesalib/src/mesa/main/mtypes.h10
-rw-r--r--mesalib/src/mesa/main/pack.c1
-rw-r--r--mesalib/src/mesa/main/remap_helper.h3546
-rw-r--r--mesalib/src/mesa/main/renderbuffer.c29
-rw-r--r--mesalib/src/mesa/main/renderbuffer.h12
-rw-r--r--mesalib/src/mesa/main/shaderapi.c2
-rw-r--r--mesalib/src/mesa/main/shared.c1
-rw-r--r--mesalib/src/mesa/main/texgetimage.c11
-rw-r--r--mesalib/src/mesa/main/teximage.c60
-rw-r--r--mesalib/src/mesa/main/texobj.c22
-rw-r--r--mesalib/src/mesa/main/texparam.c112
-rw-r--r--mesalib/src/mesa/main/texstate.c3
-rw-r--r--mesalib/src/mesa/main/texstorage.c402
-rw-r--r--mesalib/src/mesa/main/texstorage.h61
-rw-r--r--mesalib/src/mesa/main/uniforms.c1
-rw-r--r--mesalib/src/mesa/main/varray.c1
-rw-r--r--mesalib/src/mesa/program/ir_to_mesa.cpp26
-rw-r--r--mesalib/src/mesa/program/nvfragparse.c14
-rw-r--r--mesalib/src/mesa/program/prog_instruction.h2
-rw-r--r--mesalib/src/mesa/program/program.c2
-rw-r--r--mesalib/src/mesa/sources.mak1
-rw-r--r--mesalib/src/mesa/state_tracker/st_cb_texture.c64
-rw-r--r--mesalib/src/mesa/state_tracker/st_extensions.c4
-rw-r--r--mesalib/src/mesa/state_tracker/st_glsl_to_tgsi.cpp3
-rw-r--r--mesalib/src/mesa/state_tracker/st_mesa_to_tgsi.c1
-rw-r--r--mesalib/src/mesa/state_tracker/st_program.c16
-rw-r--r--mesalib/src/mesa/state_tracker/st_texture.c1
-rw-r--r--mesalib/src/mesa/swrast/s_depth.c2885
-rw-r--r--mesalib/src/mesa/swrast/s_depth.h116
-rw-r--r--mesalib/src/mesa/swrast/s_readpix.c596
-rw-r--r--mesalib/src/mesa/swrast/s_texfilter.c22
-rw-r--r--mesalib/src/mesa/swrast/s_texrender.c1
-rw-r--r--mesalib/src/mesa/swrast/s_texture.c32
-rw-r--r--mesalib/src/mesa/swrast/swrast.h7
-rw-r--r--mesalib/src/mesa/vbo/vbo_split_copy.c1
78 files changed, 8916 insertions, 10686 deletions
diff --git a/mesalib/src/mesa/SConscript b/mesalib/src/mesa/SConscript
index 45414bcde..7688ce941 100644
--- a/mesalib/src/mesa/SConscript
+++ b/mesalib/src/mesa/SConscript
@@ -126,6 +126,7 @@ main_sources = [
'main/texpal.c',
'main/texparam.c',
'main/texstate.c',
+ 'main/texstorage.c',
'main/texstore.c',
'main/texturebarrier.c',
'main/transformfeedback.c',
diff --git a/mesalib/src/mesa/drivers/common/driverfuncs.c b/mesalib/src/mesa/drivers/common/driverfuncs.c
index 263d4025f..27ea559b3 100644
--- a/mesalib/src/mesa/drivers/common/driverfuncs.c
+++ b/mesalib/src/mesa/drivers/common/driverfuncs.c
@@ -120,6 +120,7 @@ _mesa_init_driver_functions(struct dd_function_table *driver)
driver->UnmapTexture = NULL;
driver->TextureMemCpy = memcpy;
driver->IsTextureResident = NULL;
+ driver->DrawTex = _mesa_meta_DrawTex;
/* Vertex/fragment programs */
driver->BindProgram = NULL;
@@ -179,6 +180,8 @@ _mesa_init_driver_functions(struct dd_function_table *driver)
driver->NewFramebuffer = _mesa_new_framebuffer;
driver->NewRenderbuffer = _mesa_new_soft_renderbuffer;
+ driver->MapRenderbuffer = _mesa_map_soft_renderbuffer;
+ driver->UnmapRenderbuffer = _mesa_unmap_soft_renderbuffer;
driver->RenderTexture = _swrast_render_texture;
driver->FinishRenderTexture = _swrast_finish_render_texture;
driver->FramebufferRenderbuffer = _mesa_framebuffer_renderbuffer;
@@ -217,6 +220,9 @@ _mesa_init_driver_functions(struct dd_function_table *driver)
driver->EndList = NULL;
driver->BeginCallList = NULL;
driver->EndCallList = NULL;
+
+ /* GL_ARB_texture_storage */
+ driver->AllocTextureStorage = _swrast_AllocTextureStorage;
}
diff --git a/mesalib/src/mesa/drivers/common/meta.c b/mesalib/src/mesa/drivers/common/meta.c
index c7bb93380..3e553341d 100644
--- a/mesalib/src/mesa/drivers/common/meta.c
+++ b/mesalib/src/mesa/drivers/common/meta.c
@@ -278,6 +278,14 @@ struct decompress_state
GLint Width, Height;
};
+/**
+ * State for glDrawTex()
+ */
+struct drawtex_state
+{
+ GLuint ArrayObj;
+ GLuint VBO;
+};
#define MAX_META_OPS_DEPTH 8
/**
@@ -299,6 +307,7 @@ struct gl_meta_state
struct bitmap_state Bitmap; /**< For _mesa_meta_Bitmap() */
struct gen_mipmap_state Mipmap; /**< For _mesa_meta_GenerateMipmap() */
struct decompress_state Decompress; /**< For texture decompression */
+ struct drawtex_state DrawTex; /**< For _mesa_meta_DrawTex() */
};
@@ -3332,3 +3341,131 @@ _mesa_meta_GetTexImage(struct gl_context *ctx,
_mesa_get_teximage(ctx, format, type, pixels, texImage);
}
}
+
+
+/**
+ * Meta implementation of ctx->Driver.DrawTex() in terms
+ * of polygon rendering.
+ */
+void
+_mesa_meta_DrawTex(struct gl_context *ctx, GLfloat x, GLfloat y, GLfloat z,
+ GLfloat width, GLfloat height)
+{
+#if FEATURE_OES_draw_texture
+ struct drawtex_state *drawtex = &ctx->Meta->DrawTex;
+ struct vertex {
+ GLfloat x, y, z, st[MAX_TEXTURE_UNITS][2];
+ };
+ struct vertex verts[4];
+ GLuint i;
+
+ _mesa_meta_begin(ctx, (MESA_META_RASTERIZATION |
+ MESA_META_SHADER |
+ MESA_META_TRANSFORM |
+ MESA_META_VERTEX |
+ MESA_META_VIEWPORT));
+
+ if (drawtex->ArrayObj == 0) {
+ /* one-time setup */
+ GLint active_texture;
+
+ /* create vertex array object */
+ _mesa_GenVertexArrays(1, &drawtex->ArrayObj);
+ _mesa_BindVertexArray(drawtex->ArrayObj);
+
+ /* create vertex array buffer */
+ _mesa_GenBuffersARB(1, &drawtex->VBO);
+ _mesa_BindBufferARB(GL_ARRAY_BUFFER_ARB, drawtex->VBO);
+ _mesa_BufferDataARB(GL_ARRAY_BUFFER_ARB, sizeof(verts),
+ NULL, GL_DYNAMIC_DRAW_ARB);
+
+ /* client active texture is not part of the array object */
+ active_texture = ctx->Array.ActiveTexture;
+
+ /* setup vertex arrays */
+ _mesa_VertexPointer(3, GL_FLOAT, sizeof(struct vertex), OFFSET(x));
+ _mesa_EnableClientState(GL_VERTEX_ARRAY);
+ for (i = 0; i < ctx->Const.MaxTextureUnits; i++) {
+ _mesa_ClientActiveTextureARB(GL_TEXTURE0 + i);
+ _mesa_TexCoordPointer(2, GL_FLOAT, sizeof(struct vertex), OFFSET(st[i]));
+ _mesa_EnableClientState(GL_TEXTURE_COORD_ARRAY);
+ }
+
+ /* restore client active texture */
+ _mesa_ClientActiveTextureARB(GL_TEXTURE0 + active_texture);
+ }
+ else {
+ _mesa_BindVertexArray(drawtex->ArrayObj);
+ _mesa_BindBufferARB(GL_ARRAY_BUFFER_ARB, drawtex->VBO);
+ }
+
+ /* vertex positions, texcoords */
+ {
+ const GLfloat x1 = x + width;
+ const GLfloat y1 = y + height;
+
+ z = CLAMP(z, 0.0, 1.0);
+ z = invert_z(z);
+
+ verts[0].x = x;
+ verts[0].y = y;
+ verts[0].z = z;
+
+ verts[1].x = x1;
+ verts[1].y = y;
+ verts[1].z = z;
+
+ verts[2].x = x1;
+ verts[2].y = y1;
+ verts[2].z = z;
+
+ verts[3].x = x;
+ verts[3].y = y1;
+ verts[3].z = z;
+
+ for (i = 0; i < ctx->Const.MaxTextureUnits; i++) {
+ const struct gl_texture_object *texObj;
+ const struct gl_texture_image *texImage;
+ GLfloat s, t, s1, t1;
+ GLuint tw, th;
+
+ if (!ctx->Texture.Unit[i]._ReallyEnabled) {
+ GLuint j;
+ for (j = 0; j < 4; j++) {
+ verts[j].st[i][0] = 0.0f;
+ verts[j].st[i][1] = 0.0f;
+ }
+ continue;
+ }
+
+ texObj = ctx->Texture.Unit[i]._Current;
+ texImage = texObj->Image[0][texObj->BaseLevel];
+ tw = texImage->Width2;
+ th = texImage->Height2;
+
+ s = (GLfloat) texObj->CropRect[0] / tw;
+ t = (GLfloat) texObj->CropRect[1] / th;
+ s1 = (GLfloat) (texObj->CropRect[0] + texObj->CropRect[2]) / tw;
+ t1 = (GLfloat) (texObj->CropRect[1] + texObj->CropRect[3]) / th;
+
+ verts[0].st[i][0] = s;
+ verts[0].st[i][1] = t;
+
+ verts[1].st[i][0] = s1;
+ verts[1].st[i][1] = t;
+
+ verts[2].st[i][0] = s1;
+ verts[2].st[i][1] = t1;
+
+ verts[3].st[i][0] = s;
+ verts[3].st[i][1] = t1;
+ }
+
+ _mesa_BufferSubDataARB(GL_ARRAY_BUFFER_ARB, 0, sizeof(verts), verts);
+ }
+
+ _mesa_DrawArrays(GL_TRIANGLE_FAN, 0, 4);
+
+ _mesa_meta_end(ctx);
+#endif /* FEATURE_OES_draw_texture */
+}
diff --git a/mesalib/src/mesa/drivers/common/meta.h b/mesalib/src/mesa/drivers/common/meta.h
index e0435a822..719813984 100644
--- a/mesalib/src/mesa/drivers/common/meta.h
+++ b/mesalib/src/mesa/drivers/common/meta.h
@@ -129,5 +129,8 @@ _mesa_meta_GetTexImage(struct gl_context *ctx,
GLenum format, GLenum type, GLvoid *pixels,
struct gl_texture_image *texImage);
+extern void
+_mesa_meta_DrawTex(struct gl_context *ctx, GLfloat x, GLfloat y, GLfloat z,
+ GLfloat width, GLfloat height);
#endif /* META_H */
diff --git a/mesalib/src/mesa/drivers/dri/common/Makefile.sources b/mesalib/src/mesa/drivers/dri/common/Makefile.sources
index 3432dda45..040b71725 100644
--- a/mesalib/src/mesa/drivers/dri/common/Makefile.sources
+++ b/mesalib/src/mesa/drivers/dri/common/Makefile.sources
@@ -1,13 +1,10 @@
mesa_dri_common_gallium_SOURCES := \
utils.c \
- vblank.c \
dri_util.c \
xmlconfig.c
mesa_dri_common_SOURCES := \
- $(mesa_dri_common_gallium_SOURCES) \
- texmem.c \
- drirenderbuffer.c
+ $(mesa_dri_common_gallium_SOURCES)
# Paths are relative to MESA_TOP.
mesa_dri_common_INCLUDES := \
diff --git a/mesalib/src/mesa/drivers/dri/common/dri_util.c b/mesalib/src/mesa/drivers/dri/common/dri_util.c
index cdd413737..da4e39f9c 100644
--- a/mesalib/src/mesa/drivers/dri/common/dri_util.c
+++ b/mesalib/src/mesa/drivers/dri/common/dri_util.c
@@ -17,19 +17,11 @@
#include <assert.h>
#include <stdarg.h>
-#include <unistd.h>
-#include <sys/mman.h>
#include <stdio.h>
-#ifndef MAP_FAILED
-#define MAP_FAILED ((void *)-1)
-#endif
-
#include "main/imports.h"
-#define None 0
#include "dri_util.h"
-#include "drm_sarea.h"
#include "utils.h"
#include "xmlpool.h"
#include "../glsl/glsl_parser_extras.h"
@@ -50,27 +42,6 @@ typedef GLboolean ( * PFNGLXGETMSCRATEOMLPROC) (__DRIdrawable *drawable, int32_t
static void dri_get_drawable(__DRIdrawable *pdp);
static void dri_put_drawable(__DRIdrawable *pdp);
-/**
- * This is just a token extension used to signal that the driver
- * supports setting a read drawable.
- */
-const __DRIextension driReadDrawableExtension = {
- __DRI_READ_DRAWABLE, __DRI_READ_DRAWABLE_VERSION
-};
-
-GLint
-driIntersectArea( drm_clip_rect_t rect1, drm_clip_rect_t rect2 )
-{
- if (rect2.x1 > rect1.x1) rect1.x1 = rect2.x1;
- if (rect2.x2 < rect1.x2) rect1.x2 = rect2.x2;
- if (rect2.y1 > rect1.y1) rect1.y1 = rect2.y1;
- if (rect2.y2 < rect1.y2) rect1.y2 = rect2.y2;
-
- if (rect1.x1 > rect1.x2 || rect1.y1 > rect1.y2) return 0;
-
- return (rect1.x2 - rect1.x1) * (rect1.y2 - rect1.y1);
-}
-
/*****************************************************************/
/** \name Context (un)binding functions */
/*****************************************************************/
@@ -174,294 +145,10 @@ static int driBindContext(__DRIcontext *pcp,
dri_get_drawable(prp);
}
- /*
- ** Now that we have a context associated with this drawable, we can
- ** initialize the drawable information if has not been done before.
- */
-
- if (!psp->dri2.enabled) {
- if (pdp && !pdp->pStamp) {
- DRM_SPINLOCK(&psp->pSAREA->drawable_lock, psp->drawLockID);
- __driUtilUpdateDrawableInfo(pdp);
- DRM_SPINUNLOCK(&psp->pSAREA->drawable_lock, psp->drawLockID);
- }
- if (prp && pdp != prp && !prp->pStamp) {
- DRM_SPINLOCK(&psp->pSAREA->drawable_lock, psp->drawLockID);
- __driUtilUpdateDrawableInfo(prp);
- DRM_SPINUNLOCK(&psp->pSAREA->drawable_lock, psp->drawLockID);
- }
- }
-
/* Call device-specific MakeCurrent */
return (*psp->DriverAPI.MakeCurrent)(pcp, pdp, prp);
}
-/*@}*/
-
-
-/*****************************************************************/
-/** \name Drawable handling functions */
-/*****************************************************************/
-/*@{*/
-
-/**
- * Update private drawable information.
- *
- * \param pdp pointer to the private drawable information to update.
- *
- * This function basically updates the __DRIdrawable struct's
- * cliprect information by calling \c __DRIinterfaceMethods::getDrawableInfo.
- * This is usually called by the DRI_VALIDATE_DRAWABLE_INFO macro which
- * compares the __DRIdrwablePrivate pStamp and lastStamp values. If
- * the values are different that means we have to update the clipping
- * info.
- */
-void
-__driUtilUpdateDrawableInfo(__DRIdrawable *pdp)
-{
- __DRIscreen *psp = pdp->driScreenPriv;
- __DRIcontext *pcp = pdp->driContextPriv;
-
- if (!pcp
- || ((pdp != pcp->driDrawablePriv) && (pdp != pcp->driReadablePriv))) {
- /* ERROR!!!
- * ...but we must ignore it. There can be many contexts bound to a
- * drawable.
- */
- }
-
- if (pdp->pClipRects) {
- free(pdp->pClipRects);
- pdp->pClipRects = NULL;
- }
-
- if (pdp->pBackClipRects) {
- free(pdp->pBackClipRects);
- pdp->pBackClipRects = NULL;
- }
-
- DRM_SPINUNLOCK(&psp->pSAREA->drawable_lock, psp->drawLockID);
-
- if (! (*psp->getDrawableInfo->getDrawableInfo)(pdp,
- &pdp->index, &pdp->lastStamp,
- &pdp->x, &pdp->y, &pdp->w, &pdp->h,
- &pdp->numClipRects, &pdp->pClipRects,
- &pdp->backX,
- &pdp->backY,
- &pdp->numBackClipRects,
- &pdp->pBackClipRects,
- pdp->loaderPrivate)) {
- /* Error -- eg the window may have been destroyed. Keep going
- * with no cliprects.
- */
- pdp->pStamp = &pdp->lastStamp; /* prevent endless loop */
- pdp->numClipRects = 0;
- pdp->pClipRects = NULL;
- pdp->numBackClipRects = 0;
- pdp->pBackClipRects = NULL;
- }
- else
- pdp->pStamp = &(psp->pSAREA->drawableTable[pdp->index].stamp);
-
- DRM_SPINLOCK(&psp->pSAREA->drawable_lock, psp->drawLockID);
-}
-
-/*@}*/
-
-/*****************************************************************/
-/** \name GLX callbacks */
-/*****************************************************************/
-/*@{*/
-
-static void driReportDamage(__DRIdrawable *pdp,
- struct drm_clip_rect *pClipRects, int numClipRects)
-{
- __DRIscreen *psp = pdp->driScreenPriv;
-
- /* Check that we actually have the new damage report method */
- if (psp->damage) {
- /* Report the damage. Currently, all our drivers draw
- * directly to the front buffer, so we report the damage there
- * rather than to the backing storein (if any).
- */
- (*psp->damage->reportDamage)(pdp,
- pdp->x, pdp->y,
- pClipRects, numClipRects,
- GL_TRUE, pdp->loaderPrivate);
- }
-}
-
-
-/**
- * Swap buffers.
- *
- * \param drawablePrivate opaque pointer to the per-drawable private info.
- *
- * \internal
- * This function calls __DRIdrawable::swapBuffers.
- *
- * Is called directly from glXSwapBuffers().
- */
-static void driSwapBuffers(__DRIdrawable *dPriv)
-{
- __DRIscreen *psp = dPriv->driScreenPriv;
- drm_clip_rect_t *rects;
- int i;
-
- psp->DriverAPI.SwapBuffers(dPriv);
-
- if (!dPriv->numClipRects)
- return;
-
- rects = malloc(sizeof(*rects) * dPriv->numClipRects);
-
- if (!rects)
- return;
-
- for (i = 0; i < dPriv->numClipRects; i++) {
- rects[i].x1 = dPriv->pClipRects[i].x1 - dPriv->x;
- rects[i].y1 = dPriv->pClipRects[i].y1 - dPriv->y;
- rects[i].x2 = dPriv->pClipRects[i].x2 - dPriv->x;
- rects[i].y2 = dPriv->pClipRects[i].y2 - dPriv->y;
- }
-
- driReportDamage(dPriv, rects, dPriv->numClipRects);
- free(rects);
-}
-
-static int driDrawableGetMSC( __DRIscreen *sPriv, __DRIdrawable *dPriv,
- int64_t *msc )
-{
- return sPriv->DriverAPI.GetDrawableMSC(sPriv, dPriv, msc);
-}
-
-
-static int driWaitForMSC(__DRIdrawable *dPriv, int64_t target_msc,
- int64_t divisor, int64_t remainder,
- int64_t * msc, int64_t * sbc)
-{
- __DRIswapInfo sInfo;
- int status;
-
- status = dPriv->driScreenPriv->DriverAPI.WaitForMSC( dPriv, target_msc,
- divisor, remainder,
- msc );
-
- /* GetSwapInfo() may not be provided by the driver if GLX_SGI_video_sync
- * is supported but GLX_OML_sync_control is not. Therefore, don't return
- * an error value if GetSwapInfo() is not implemented.
- */
- if ( status == 0
- && dPriv->driScreenPriv->DriverAPI.GetSwapInfo ) {
- status = dPriv->driScreenPriv->DriverAPI.GetSwapInfo( dPriv, & sInfo );
- *sbc = sInfo.swap_count;
- }
-
- return status;
-}
-
-
-const __DRImediaStreamCounterExtension driMediaStreamCounterExtension = {
- { __DRI_MEDIA_STREAM_COUNTER, __DRI_MEDIA_STREAM_COUNTER_VERSION },
- driWaitForMSC,
- driDrawableGetMSC,
-};
-
-
-static void driCopySubBuffer(__DRIdrawable *dPriv,
- int x, int y, int w, int h)
-{
- drm_clip_rect_t rect;
-
- rect.x1 = x;
- rect.y1 = dPriv->h - y - h;
- rect.x2 = x + w;
- rect.y2 = rect.y1 + h;
- driReportDamage(dPriv, &rect, 1);
-
- dPriv->driScreenPriv->DriverAPI.CopySubBuffer(dPriv, x, y, w, h);
-}
-
-const __DRIcopySubBufferExtension driCopySubBufferExtension = {
- { __DRI_COPY_SUB_BUFFER, __DRI_COPY_SUB_BUFFER_VERSION },
- driCopySubBuffer
-};
-
-static void driSetSwapInterval(__DRIdrawable *dPriv, unsigned int interval)
-{
- dPriv->swap_interval = interval;
-}
-
-static unsigned int driGetSwapInterval(__DRIdrawable *dPriv)
-{
- return dPriv->swap_interval;
-}
-
-const __DRIswapControlExtension driSwapControlExtension = {
- { __DRI_SWAP_CONTROL, __DRI_SWAP_CONTROL_VERSION },
- driSetSwapInterval,
- driGetSwapInterval
-};
-
-
-/**
- * This is called via __DRIscreenRec's createNewDrawable pointer.
- */
-static __DRIdrawable *
-driCreateNewDrawable(__DRIscreen *psp, const __DRIconfig *config,
- drm_drawable_t hwDrawable, int renderType,
- const int *attrs, void *data)
-{
- __DRIdrawable *pdp;
-
- /* Since pbuffers are not yet supported, no drawable attributes are
- * supported either.
- */
- (void) attrs;
- (void) renderType;
-
- pdp = malloc(sizeof *pdp);
- if (!pdp) {
- return NULL;
- }
-
- pdp->driContextPriv = NULL;
- pdp->loaderPrivate = data;
- pdp->hHWDrawable = hwDrawable;
- pdp->refcount = 1;
- pdp->pStamp = NULL;
- pdp->lastStamp = 0;
- pdp->index = 0;
- pdp->x = 0;
- pdp->y = 0;
- pdp->w = 0;
- pdp->h = 0;
- pdp->numClipRects = 0;
- pdp->numBackClipRects = 0;
- pdp->pClipRects = NULL;
- pdp->pBackClipRects = NULL;
- pdp->vblSeq = 0;
- pdp->vblFlags = 0;
-
- pdp->driScreenPriv = psp;
-
- if (!(*psp->DriverAPI.CreateBuffer)(psp, pdp, &config->modes, 0)) {
- free(pdp);
- return NULL;
- }
-
- pdp->msc_base = 0;
-
- /* This special default value is replaced with the configured
- * default value when the drawable is first bound to a direct
- * rendering context.
- */
- pdp->swap_interval = (unsigned)-1;
-
- return pdp;
-}
-
-
static __DRIdrawable *
dri2CreateNewDrawable(__DRIscreen *screen,
const __DRIconfig *config,
@@ -469,15 +156,24 @@ dri2CreateNewDrawable(__DRIscreen *screen,
{
__DRIdrawable *pdraw;
- pdraw = driCreateNewDrawable(screen, config, 0, 0, NULL, loaderPrivate);
+ pdraw = malloc(sizeof *pdraw);
if (!pdraw)
- return NULL;
+ return NULL;
- pdraw->pClipRects = &pdraw->dri2.clipRect;
- pdraw->pBackClipRects = &pdraw->dri2.clipRect;
+ pdraw->driContextPriv = NULL;
+ pdraw->loaderPrivate = loaderPrivate;
+ pdraw->refcount = 1;
+ pdraw->lastStamp = 0;
+ pdraw->w = 0;
+ pdraw->h = 0;
+ pdraw->driScreenPriv = screen;
+
+ if (!(*screen->DriverAPI.CreateBuffer)(screen, pdraw, &config->modes, 0)) {
+ free(pdraw);
+ return NULL;
+ }
- pdraw->pStamp = &pdraw->dri2.stamp;
- *pdraw->pStamp = pdraw->lastStamp + 1;
+ pdraw->dri2.stamp = pdraw->lastStamp + 1;
return pdraw;
}
@@ -549,14 +245,6 @@ static void dri_put_drawable(__DRIdrawable *pdp)
psp = pdp->driScreenPriv;
(*psp->DriverAPI.DestroyBuffer)(pdp);
- if (pdp->pClipRects && pdp->pClipRects != &pdp->dri2.clipRect) {
- free(pdp->pClipRects);
- pdp->pClipRects = NULL;
- }
- if (pdp->pBackClipRects && pdp->pClipRects != &pdp->dri2.clipRect) {
- free(pdp->pBackClipRects);
- pdp->pBackClipRects = NULL;
- }
free(pdp);
}
}
@@ -591,58 +279,6 @@ driDestroyContext(__DRIcontext *pcp)
}
}
-
-/**
- * Create the per-drawable private driver information.
- *
- * \param render_type Type of rendering target. \c GLX_RGBA_TYPE is the only
- * type likely to ever be supported for direct-rendering.
- * However, \c GLX_RGBA_FLOAT_TYPE_ARB may eventually be
- * supported by some drivers.
- * \param shared Context with which to share textures, etc. or NULL
- *
- * \returns An opaque pointer to the per-context private information on
- * success, or \c NULL on failure.
- *
- * \internal
- * This function allocates and fills a __DRIcontextRec structure. It
- * performs some device independent initialization and passes all the
- * relevent information to __DriverAPIRec::CreateContext to create the
- * context.
- *
- */
-static __DRIcontext *
-driCreateNewContext(__DRIscreen *psp, const __DRIconfig *config,
- int render_type, __DRIcontext *shared,
- drm_context_t hwContext, void *data)
-{
- __DRIcontext *pcp;
- void * const shareCtx = (shared != NULL) ? shared->driverPrivate : NULL;
-
- (void) render_type;
-
- pcp = malloc(sizeof *pcp);
- if (!pcp)
- return NULL;
-
- pcp->driScreenPriv = psp;
- pcp->driDrawablePriv = NULL;
- pcp->loaderPrivate = data;
-
- pcp->dri2.draw_stamp = 0;
- pcp->dri2.read_stamp = 0;
-
- pcp->hHWContext = hwContext;
-
- if ( !(*psp->DriverAPI.CreateContext)(API_OPENGL,
- &config->modes, pcp, shareCtx) ) {
- free(pcp);
- return NULL;
- }
-
- return pcp;
-}
-
static unsigned int
dri2GetAPIMask(__DRIscreen *screen)
{
@@ -739,14 +375,8 @@ static void driDestroyScreen(__DRIscreen *psp)
if (psp->DriverAPI.DestroyScreen)
(*psp->DriverAPI.DestroyScreen)(psp);
- if (!psp->dri2.enabled) {
- (void)drmUnmap((drmAddress)psp->pSAREA, SAREA_MAX);
- (void)drmUnmap((drmAddress)psp->pFB, psp->fbSize);
- (void)drmCloseOnce(psp->fd);
- } else {
- driDestroyOptionCache(&psp->optionCache);
- driDestroyOptionInfo(&psp->optionInfo);
- }
+ driDestroyOptionCache(&psp->optionCache);
+ driDestroyOptionInfo(&psp->optionInfo);
free(psp);
}
@@ -759,12 +389,6 @@ setupLoaderExtensions(__DRIscreen *psp,
int i;
for (i = 0; extensions[i]; i++) {
- if (strcmp(extensions[i]->name, __DRI_GET_DRAWABLE_INFO) == 0)
- psp->getDrawableInfo = (__DRIgetDrawableInfoExtension *) extensions[i];
- if (strcmp(extensions[i]->name, __DRI_DAMAGE) == 0)
- psp->damage = (__DRIdamageExtension *) extensions[i];
- if (strcmp(extensions[i]->name, __DRI_SYSTEM_TIME) == 0)
- psp->systemTime = (__DRIsystemTimeExtension *) extensions[i];
if (strcmp(extensions[i]->name, __DRI_DRI2_LOADER) == 0)
psp->dri2.loader = (__DRIdri2LoaderExtension *) extensions[i];
if (strcmp(extensions[i]->name, __DRI_IMAGE_LOOKUP) == 0)
@@ -775,99 +399,6 @@ setupLoaderExtensions(__DRIscreen *psp,
}
/**
- * This is the bootstrap function for the driver. libGL supplies all of the
- * requisite information about the system, and the driver initializes itself.
- * This routine also fills in the linked list pointed to by \c driver_modes
- * with the \c struct gl_config that the driver can support for windows or
- * pbuffers.
- *
- * For legacy DRI.
- *
- * \param scrn Index of the screen
- * \param ddx_version Version of the 2D DDX. This may not be meaningful for
- * all drivers.
- * \param dri_version Version of the "server-side" DRI.
- * \param drm_version Version of the kernel DRM.
- * \param frame_buffer Data describing the location and layout of the
- * framebuffer.
- * \param pSAREA Pointer to the SAREA.
- * \param fd Device handle for the DRM.
- * \param extensions ??
- * \param driver_modes Returns modes suppoted by the driver
- * \param loaderPrivate ??
- *
- * \note There is no need to check the minimum API version in this
- * function. Since the name of this function is versioned, it is
- * impossible for a loader that is too old to even load this driver.
- */
-static __DRIscreen *
-driCreateNewScreen(int scrn,
- const __DRIversion *ddx_version,
- const __DRIversion *dri_version,
- const __DRIversion *drm_version,
- const __DRIframebuffer *frame_buffer,
- drmAddress pSAREA, int fd,
- const __DRIextension **extensions,
- const __DRIconfig ***driver_modes,
- void *loaderPrivate)
-{
- static const __DRIextension *emptyExtensionList[] = { NULL };
- __DRIscreen *psp;
-
- (void) loaderPrivate;
-
- if (driDriverAPI.InitScreen == NULL) {
- __driUtilMessage("driver does not support DRI1");
- return NULL;
- }
-
- psp = calloc(1, sizeof *psp);
- if (!psp)
- return NULL;
-
- setupLoaderExtensions(psp, extensions);
-
- /*
- ** NOT_DONE: This is used by the X server to detect when the client
- ** has died while holding the drawable lock. The client sets the
- ** drawable lock to this value.
- */
- psp->drawLockID = 1;
-
- psp->drm_version = *drm_version;
- psp->ddx_version = *ddx_version;
- psp->dri_version = *dri_version;
-
- psp->pSAREA = pSAREA;
- psp->lock = (drmLock *) &psp->pSAREA->lock;
-
- psp->pFB = frame_buffer->base;
- psp->fbSize = frame_buffer->size;
- psp->fbStride = frame_buffer->stride;
- psp->fbWidth = frame_buffer->width;
- psp->fbHeight = frame_buffer->height;
- psp->devPrivSize = frame_buffer->dev_priv_size;
- psp->pDevPriv = frame_buffer->dev_priv;
- psp->fbBPP = psp->fbStride * 8 / frame_buffer->width;
-
- psp->extensions = emptyExtensionList;
- psp->fd = fd;
- psp->myNum = scrn;
- psp->dri2.enabled = GL_FALSE;
-
- psp->DriverAPI = driDriverAPI;
- psp->api_mask = (1 << __DRI_API_OPENGL);
-
- *driver_modes = driDriverAPI.InitScreen(psp);
- if (*driver_modes == NULL) {
- free(psp);
- return NULL;
- }
-
- return psp;
-}
-
-/**
* DRI2
*/
static __DRIscreen *
@@ -899,7 +430,6 @@ dri2CreateNewScreen(int scrn, int fd,
psp->extensions = emptyExtensionList;
psp->fd = fd;
psp->myNum = scrn;
- psp->dri2.enabled = GL_TRUE;
psp->DriverAPI = driDriverAPI;
psp->api_mask = (1 << __DRI_API_OPENGL);
@@ -935,7 +465,7 @@ const __DRIcoreExtension driCoreExtension = {
driIndexConfigAttrib,
NULL,
driDestroyDrawable,
- driSwapBuffers,
+ NULL,
NULL,
driCopyContext,
driDestroyContext,
@@ -943,14 +473,6 @@ const __DRIcoreExtension driCoreExtension = {
driUnbindContext
};
-/** Legacy DRI interface */
-const __DRIlegacyExtension driLegacyExtension = {
- { __DRI_LEGACY, __DRI_LEGACY_VERSION },
- driCreateNewScreen,
- driCreateNewDrawable,
- driCreateNewContext,
-};
-
/** DRI2 interface */
const __DRIdri2Extension driDRI2Extension = {
{ __DRI_DRI2, __DRI_DRI2_VERSION },
@@ -970,73 +492,27 @@ const __DRI2configQueryExtension dri2ConfigQueryExtension = {
dri2ConfigQueryf,
};
-/**
- * Calculate amount of swap interval used between GLX buffer swaps.
- *
- * The usage value, on the range [0,max], is the fraction of total swap
- * interval time used between GLX buffer swaps is calculated.
- *
- * \f$p = t_d / (i * t_r)\f$
- *
- * Where \f$t_d\f$ is the time since the last GLX buffer swap, \f$i\f$ is the
- * swap interval (as set by \c glXSwapIntervalSGI), and \f$t_r\f$ time
- * required for a single vertical refresh period (as returned by \c
- * glXGetMscRateOML).
- *
- * See the documentation for the GLX_MESA_swap_frame_usage extension for more
- * details.
- *
- * \param dPriv Pointer to the private drawable structure.
- * \return If less than a single swap interval time period was required
- * between GLX buffer swaps, a number greater than 0 and less than
- * 1.0 is returned. If exactly one swap interval time period is
- * required, 1.0 is returned, and if more than one is required then
- * a number greater than 1.0 will be returned.
- *
- * \sa glXSwapIntervalSGI glXGetMscRateOML
- *
- * \todo Instead of caching the \c glXGetMscRateOML function pointer, would it
- * be possible to cache the sync rate?
- */
-float
-driCalculateSwapUsage( __DRIdrawable *dPriv, int64_t last_swap_ust,
- int64_t current_ust )
-{
- int32_t n;
- int32_t d;
- int interval;
- float usage = 1.0;
- __DRIscreen *psp = dPriv->driScreenPriv;
-
- if ( (*psp->systemTime->getMSCRate)(dPriv, &n, &d, dPriv->loaderPrivate) ) {
- interval = (dPriv->swap_interval != 0) ? dPriv->swap_interval : 1;
-
-
- /* We want to calculate
- * (current_UST - last_swap_UST) / (interval * us_per_refresh). We get
- * current_UST by calling __glXGetUST. last_swap_UST is stored in
- * dPriv->swap_ust. interval has already been calculated.
- *
- * The only tricky part is us_per_refresh. us_per_refresh is
- * 1000000 / MSC_rate. We know the MSC_rate is n / d. We can flip it
- * around and say us_per_refresh = 1000000 * d / n. Since this goes in
- * the denominator of the final calculation, we calculate
- * (interval * 1000000 * d) and move n into the numerator.
- */
-
- usage = (current_ust - last_swap_ust);
- usage *= n;
- usage /= (interval * d);
- usage /= 1000000.0;
- }
-
- return usage;
-}
-
void
dri2InvalidateDrawable(__DRIdrawable *drawable)
{
drawable->dri2.stamp++;
}
-/*@}*/
+/**
+ * Check that the gl_framebuffer associated with dPriv is the right size.
+ * Resize the gl_framebuffer if needed.
+ * It's expected that the dPriv->driverPrivate member points to a
+ * gl_framebuffer object.
+ */
+void
+driUpdateFramebufferSize(struct gl_context *ctx, const __DRIdrawable *dPriv)
+{
+ struct gl_framebuffer *fb = (struct gl_framebuffer *) dPriv->driverPrivate;
+ if (fb && (dPriv->w != fb->Width || dPriv->h != fb->Height)) {
+ ctx->Driver.ResizeBuffers(ctx, fb, dPriv->w, dPriv->h);
+ /* if the driver needs the hw lock for ResizeBuffers, the drawable
+ might have changed again by now */
+ assert(fb->Width == dPriv->w);
+ assert(fb->Height == dPriv->h);
+ }
+}
diff --git a/mesalib/src/mesa/drivers/dri/common/dri_util.h b/mesalib/src/mesa/drivers/dri/common/dri_util.h
index 3d3d5c9cd..7a3b0a9b2 100644
--- a/mesalib/src/mesa/drivers/dri/common/dri_util.h
+++ b/mesalib/src/mesa/drivers/dri/common/dri_util.h
@@ -58,75 +58,14 @@
#define GLX_BAD_CONTEXT 5
-typedef struct __DRIswapInfoRec __DRIswapInfo;
-
/**
* Extensions.
*/
-extern const __DRIlegacyExtension driLegacyExtension;
extern const __DRIcoreExtension driCoreExtension;
extern const __DRIdri2Extension driDRI2Extension;
-extern const __DRIextension driReadDrawableExtension;
-extern const __DRIcopySubBufferExtension driCopySubBufferExtension;
-extern const __DRIswapControlExtension driSwapControlExtension;
-extern const __DRImediaStreamCounterExtension driMediaStreamCounterExtension;
extern const __DRI2configQueryExtension dri2ConfigQueryExtension;
/**
- * Used by DRI_VALIDATE_DRAWABLE_INFO
- */
-#define DRI_VALIDATE_DRAWABLE_INFO_ONCE(pDrawPriv) \
- do { \
- if (*(pDrawPriv->pStamp) != pDrawPriv->lastStamp) { \
- __driUtilUpdateDrawableInfo(pDrawPriv); \
- } \
- } while (0)
-
-
-/**
- * Utility macro to validate the drawable information.
- *
- * See __DRIdrawable::pStamp and __DRIdrawable::lastStamp.
- */
-#define DRI_VALIDATE_DRAWABLE_INFO(psp, pdp) \
-do { \
- while (*(pdp->pStamp) != pdp->lastStamp) { \
- register unsigned int hwContext = psp->pSAREA->lock.lock & \
- ~(DRM_LOCK_HELD | DRM_LOCK_CONT); \
- DRM_UNLOCK(psp->fd, &psp->pSAREA->lock, hwContext); \
- \
- DRM_SPINLOCK(&psp->pSAREA->drawable_lock, psp->drawLockID); \
- DRI_VALIDATE_DRAWABLE_INFO_ONCE(pdp); \
- DRM_SPINUNLOCK(&psp->pSAREA->drawable_lock, psp->drawLockID); \
- \
- DRM_LIGHT_LOCK(psp->fd, &psp->pSAREA->lock, hwContext); \
- } \
-} while (0)
-
-/**
- * Same as above, but for two drawables simultaneously.
- *
- */
-
-#define DRI_VALIDATE_TWO_DRAWABLES_INFO(psp, pdp, prp) \
-do { \
- while (*((pdp)->pStamp) != (pdp)->lastStamp || \
- *((prp)->pStamp) != (prp)->lastStamp) { \
- register unsigned int hwContext = (psp)->pSAREA->lock.lock & \
- ~(DRM_LOCK_HELD | DRM_LOCK_CONT); \
- DRM_UNLOCK((psp)->fd, &(psp)->pSAREA->lock, hwContext); \
- \
- DRM_SPINLOCK(&(psp)->pSAREA->drawable_lock, (psp)->drawLockID); \
- DRI_VALIDATE_DRAWABLE_INFO_ONCE(pdp); \
- DRI_VALIDATE_DRAWABLE_INFO_ONCE(prp); \
- DRM_SPINUNLOCK(&(psp)->pSAREA->drawable_lock, (psp)->drawLockID); \
- \
- DRM_LIGHT_LOCK((psp)->fd, &(psp)->pSAREA->lock, hwContext); \
- } \
-} while (0)
-
-
-/**
* Driver callback functions.
*
* Each DRI driver must have one of these structures with all the pointers set
@@ -137,8 +76,6 @@ do { \
* this structure.
*/
struct __DriverAPIRec {
- const __DRIconfig **(*InitScreen) (__DRIscreen * priv);
-
/**
* Screen destruction callback
*/
@@ -171,11 +108,6 @@ struct __DriverAPIRec {
void (*DestroyBuffer)(__DRIdrawable *driDrawPriv);
/**
- * Buffer swapping callback
- */
- void (*SwapBuffers)(__DRIdrawable *driDrawPriv);
-
- /**
* Context activation callback
*/
GLboolean (*MakeCurrent)(__DRIcontext *driContextPriv,
@@ -186,40 +118,6 @@ struct __DriverAPIRec {
* Context unbinding callback
*/
GLboolean (*UnbindContext)(__DRIcontext *driContextPriv);
-
- /**
- * Retrieves statistics about buffer swap operations. Required if
- * GLX_OML_sync_control or GLX_MESA_swap_frame_usage is supported.
- */
- int (*GetSwapInfo)( __DRIdrawable *dPriv, __DRIswapInfo * sInfo );
-
-
- /**
- * These are required if GLX_OML_sync_control is supported.
- */
- /*@{*/
- int (*WaitForMSC)( __DRIdrawable *priv, int64_t target_msc,
- int64_t divisor, int64_t remainder,
- int64_t * msc );
- int (*WaitForSBC)( __DRIdrawable *priv, int64_t target_sbc,
- int64_t * msc, int64_t * sbc );
-
- int64_t (*SwapBuffersMSC)( __DRIdrawable *priv, int64_t target_msc,
- int64_t divisor, int64_t remainder );
- /*@}*/
- void (*CopySubBuffer)(__DRIdrawable *driDrawPriv,
- int x, int y, int w, int h);
-
- /**
- * New version of GetMSC so we can pass drawable data to the low
- * level DRM driver (e.g. pipe info). Required if
- * GLX_SGI_video_sync or GLX_OML_sync_control is supported.
- */
- int (*GetDrawableMSC) ( __DRIscreen * priv,
- __DRIdrawable *drawablePrivate,
- int64_t *count);
-
-
/* DRI2 Entry point */
const __DRIconfig **(*InitScreen2) (__DRIscreen * priv);
@@ -234,47 +132,11 @@ struct __DriverAPIRec {
extern const struct __DriverAPIRec driDriverAPI;
-struct __DRIswapInfoRec {
- /**
- * Number of swapBuffers operations that have been *completed*.
- */
- uint64_t swap_count;
-
- /**
- * Unadjusted system time of the last buffer swap. This is the time
- * when the swap completed, not the time when swapBuffers was called.
- */
- int64_t swap_ust;
-
- /**
- * Number of swap operations that occurred after the swap deadline. That
- * is if a swap happens more than swap_interval frames after the previous
- * swap, it has missed its deadline. If swap_interval is 0, then the
- * swap deadline is 1 frame after the previous swap.
- */
- uint64_t swap_missed_count;
-
- /**
- * Amount of time used by the last swap that missed its deadline. This
- * is calculated as (__glXGetUST() - swap_ust) / (swap_interval *
- * time_for_single_vrefresh)). If the actual value of swap_interval is
- * 0, then 1 is used instead. If swap_missed_count is non-zero, this
- * should be greater-than 1.0.
- */
- float swap_missed_usage;
-};
-
-
/**
* Per-drawable private DRI driver information.
*/
struct __DRIdrawableRec {
/**
- * Kernel drawable handle
- */
- drm_drawable_t hHWDrawable;
-
- /**
* Driver's private drawable information.
*
* This structure is opaque.
@@ -298,77 +160,15 @@ struct __DRIdrawableRec {
int refcount;
/**
- * Index of this drawable information in the SAREA.
- */
- unsigned int index;
-
- /**
- * Pointer to the "drawable has changed ID" stamp in the SAREA (or
- * to dri2.stamp if DRI2 is being used).
- */
- unsigned int *pStamp;
-
- /**
* Last value of the stamp.
*
- * If this differs from the value stored at __DRIdrawable::pStamp,
+ * If this differs from the value stored at __DRIdrawable::dri2.stamp,
* then the drawable information has been modified by the X server, and the
* drawable information (below) should be retrieved from the X server.
*/
unsigned int lastStamp;
- /**
- * \name Drawable
- *
- * Drawable information used in software fallbacks.
- */
- /*@{*/
- int x;
- int y;
- int w;
- int h;
- int numClipRects;
- drm_clip_rect_t *pClipRects;
- /*@}*/
-
- /**
- * \name Back and depthbuffer
- *
- * Information about the back and depthbuffer where different from above.
- */
- /*@{*/
- int backX;
- int backY;
- int backClipRectType;
- int numBackClipRects;
- drm_clip_rect_t *pBackClipRects;
- /*@}*/
-
- /**
- * \name Vertical blank tracking information
- * Used for waiting on vertical blank events.
- */
- /*@{*/
- unsigned int vblSeq;
- unsigned int vblFlags;
- /*@}*/
-
- /**
- * \name Monotonic MSC tracking
- *
- * Low level driver is responsible for updating msc_base and
- * vblSeq values so that higher level code can calculate
- * a new msc value or msc target for a WaitMSC call. The new value
- * will be:
- * msc = msc_base + get_vblank_count() - vblank_base;
- *
- * And for waiting on a value, core code will use:
- * actual_target = target_msc - msc_base + vblank_base;
- */
- /*@{*/
- int64_t vblank_base;
- int64_t msc_base;
- /*@}*/
+ int w, h;
/**
* Pointer to context to which this drawable is currently bound.
@@ -381,14 +181,10 @@ struct __DRIdrawableRec {
__DRIscreen *driScreenPriv;
/**
- * Controls swap interval as used by GLX_SGI_swap_control and
- * GLX_MESA_swap_control.
+ * Drawable timestamp. Increased when the loader calls invalidate.
*/
- unsigned int swap_interval;
-
struct {
unsigned int stamp;
- drm_clip_rect_t clipRect;
} dri2;
};
@@ -397,11 +193,6 @@ struct __DRIdrawableRec {
*/
struct __DRIcontextRec {
/**
- * Kernel context handle used to access the device lock.
- */
- drm_context_t hHWContext;
-
- /**
* Device driver's private context data. This structure is opaque.
*/
void *driverPrivate;
@@ -447,15 +238,6 @@ struct __DRIscreenRec {
struct __DriverAPIRec DriverAPI;
const __DRIextension **extensions;
- /**
- * DDX / 2D driver version information.
- */
- __DRIversion ddx_version;
-
- /**
- * DRI X extension version information.
- */
- __DRIversion dri_version;
/**
* DRM (kernel module) version information.
@@ -463,14 +245,6 @@ struct __DRIscreenRec {
__DRIversion drm_version;
/**
- * ID used when the client sets the drawable lock.
- *
- * The X server uses this value to detect if the client has died while
- * holding the drawable lock.
- */
- int drawLockID;
-
- /**
* File descriptor returned when the kernel device driver is opened.
*
* Used to:
@@ -481,39 +255,6 @@ struct __DRIscreenRec {
int fd;
/**
- * SAREA pointer
- *
- * Used to access:
- * - the device lock
- * - the device-independent per-drawable and per-context(?) information
- */
- drm_sarea_t *pSAREA;
-
- /**
- * \name Direct frame buffer access information
- * Used for software fallbacks.
- */
- /*@{*/
- unsigned char *pFB;
- int fbSize;
- int fbOrigin;
- int fbStride;
- int fbWidth;
- int fbHeight;
- int fbBPP;
- /*@}*/
-
- /**
- * \name Device-dependent private information (stored in the SAREA).
- *
- * This data is accessed by the client driver only.
- */
- /*@{*/
- void *pDevPriv;
- int devPrivSize;
- /*@}*/
-
- /**
* Device-dependent private information (not stored in the SAREA).
*
* This pointer is never touched by the DRI layer.
@@ -524,23 +265,14 @@ struct __DRIscreenRec {
void *private;
#endif
- /* Extensions provided by the loader. */
- const __DRIgetDrawableInfoExtension *getDrawableInfo;
- const __DRIsystemTimeExtension *systemTime;
- const __DRIdamageExtension *damage;
-
struct {
/* Flag to indicate that this is a DRI2 screen. Many of the above
* fields will not be valid or initializaed in that case. */
- int enabled;
__DRIdri2LoaderExtension *loader;
__DRIimageLookupExtension *image;
__DRIuseInvalidateExtension *useInvalidate;
} dri2;
- /* The lock actually in use, old sarea or DRI2 */
- drmLock *lock;
-
driOptionCache optionInfo;
driOptionCache optionCache;
unsigned int api_mask;
@@ -548,16 +280,9 @@ struct __DRIscreenRec {
};
extern void
-__driUtilUpdateDrawableInfo(__DRIdrawable *pdp);
-
-extern float
-driCalculateSwapUsage( __DRIdrawable *dPriv,
- int64_t last_swap_ust, int64_t current_ust );
-
-extern GLint
-driIntersectArea( drm_clip_rect_t rect1, drm_clip_rect_t rect2 );
+dri2InvalidateDrawable(__DRIdrawable *drawable);
extern void
-dri2InvalidateDrawable(__DRIdrawable *drawable);
+driUpdateFramebufferSize(struct gl_context *ctx, const __DRIdrawable *dPriv);
#endif /* _DRI_UTIL_H_ */
diff --git a/mesalib/src/mesa/drivers/dri/common/drirenderbuffer.c b/mesalib/src/mesa/drivers/dri/common/drirenderbuffer.c
deleted file mode 100644
index 5e032bd15..000000000
--- a/mesalib/src/mesa/drivers/dri/common/drirenderbuffer.c
+++ /dev/null
@@ -1,200 +0,0 @@
-
-#include "main/mtypes.h"
-#include "main/formats.h"
-#include "main/renderbuffer.h"
-#include "main/imports.h"
-#include "drirenderbuffer.h"
-
-
-/**
- * This will get called when a window (gl_framebuffer) is resized (probably
- * via driUpdateFramebufferSize(), below).
- * Just update width, height and internal format fields for now.
- * There's usually no memory allocation above because the present
- * DRI drivers use statically-allocated full-screen buffers. If that's not
- * the case for a DRI driver, a different AllocStorage method should
- * be used.
- */
-static GLboolean
-driRenderbufferStorage(struct gl_context *ctx, struct gl_renderbuffer *rb,
- GLenum internalFormat, GLuint width, GLuint height)
-{
- rb->Width = width;
- rb->Height = height;
- rb->InternalFormat = internalFormat;
- return GL_TRUE;
-}
-
-
-static void
-driDeleteRenderbuffer(struct gl_renderbuffer *rb)
-{
- /* don't free rb->Data Chances are it's a memory mapped region for
- * the dri drivers.
- */
- free(rb);
-}
-
-
-/**
- * Allocate a new driRenderbuffer object.
- * Individual drivers are free to implement different versions of
- * this function.
- *
- * At this time, this function can only be used for window-system
- * renderbuffers, not user-created RBOs.
- *
- * \param format Either GL_RGBA, GL_DEPTH_COMPONENT16, GL_DEPTH_COMPONENT24,
- * GL_DEPTH_COMPONENT32, or GL_STENCIL_INDEX8_EXT (for now).
- * \param addr address in main memory of the buffer. Probably a memory
- * mapped region.
- * \param cpp chars or bytes per pixel
- * \param offset start of renderbuffer with respect to start of framebuffer
- * \param pitch pixels per row
- */
-driRenderbuffer *
-driNewRenderbuffer(gl_format format, GLvoid *addr,
- GLint cpp, GLint offset, GLint pitch,
- __DRIdrawable *dPriv)
-{
- driRenderbuffer *drb;
-
- assert(cpp > 0);
- assert(pitch > 0);
-
- drb = calloc(1, sizeof(driRenderbuffer));
- if (drb) {
- const GLuint name = 0;
-
- _mesa_init_renderbuffer(&drb->Base, name);
-
- /* Make sure we're using a null-valued GetPointer routine */
- assert(drb->Base.GetPointer(NULL, &drb->Base, 0, 0) == NULL);
-
- switch (format) {
- case MESA_FORMAT_ARGB8888:
- if (cpp == 2) {
- /* override format */
- format = MESA_FORMAT_RGB565;
- }
- drb->Base.DataType = GL_UNSIGNED_BYTE;
- break;
- case MESA_FORMAT_Z16:
- /* Depth */
- /* we always Get/Put 32-bit Z values */
- drb->Base.DataType = GL_UNSIGNED_INT;
- assert(cpp == 2);
- break;
- case MESA_FORMAT_Z32:
- /* Depth */
- /* we always Get/Put 32-bit Z values */
- drb->Base.DataType = GL_UNSIGNED_INT;
- assert(cpp == 4);
- break;
- case MESA_FORMAT_Z24_S8:
- drb->Base.DataType = GL_UNSIGNED_INT_24_8_EXT;
- assert(cpp == 4);
- break;
- case MESA_FORMAT_S8_Z24:
- drb->Base.DataType = GL_UNSIGNED_INT_24_8_EXT;
- assert(cpp == 4);
- break;
- case MESA_FORMAT_S8:
- /* Stencil */
- drb->Base.DataType = GL_UNSIGNED_BYTE;
- break;
- default:
- _mesa_problem(NULL, "Bad format 0x%x in driNewRenderbuffer", format);
- return NULL;
- }
-
- drb->Base.Format = format;
-
- drb->Base.InternalFormat =
- drb->Base._BaseFormat = _mesa_get_format_base_format(format);
-
- drb->Base.AllocStorage = driRenderbufferStorage;
- drb->Base.Delete = driDeleteRenderbuffer;
-
- drb->Base.Data = addr;
-
- /* DRI renderbuffer-specific fields: */
- drb->dPriv = dPriv;
- drb->offset = offset;
- drb->pitch = pitch;
- drb->cpp = cpp;
-
- /* may be changed if page flipping is active: */
- drb->flippedOffset = offset;
- drb->flippedPitch = pitch;
- drb->flippedData = addr;
- }
- return drb;
-}
-
-
-/**
- * Update the front and back renderbuffers' flippedPitch/Offset/Data fields.
- * If stereo, flip both the left and right pairs.
- * This is used when we do double buffering via page flipping.
- * \param fb the framebuffer we're page flipping
- * \param flipped if true, set flipped values, else set non-flipped values
- */
-void
-driFlipRenderbuffers(struct gl_framebuffer *fb, GLboolean flipped)
-{
- const GLuint count = fb->Visual.stereoMode ? 2 : 1;
- GLuint lr; /* left or right */
-
- /* we shouldn't really call this function if single-buffered, but
- * play it safe.
- */
- if (!fb->Visual.doubleBufferMode)
- return;
-
- for (lr = 0; lr < count; lr++) {
- GLuint frontBuf = (lr == 0) ? BUFFER_FRONT_LEFT : BUFFER_FRONT_RIGHT;
- GLuint backBuf = (lr == 0) ? BUFFER_BACK_LEFT : BUFFER_BACK_RIGHT;
- driRenderbuffer *front_drb
- = (driRenderbuffer *) fb->Attachment[frontBuf].Renderbuffer;
- driRenderbuffer *back_drb
- = (driRenderbuffer *) fb->Attachment[backBuf].Renderbuffer;
-
- if (flipped) {
- front_drb->flippedOffset = back_drb->offset;
- front_drb->flippedPitch = back_drb->pitch;
- front_drb->flippedData = back_drb->Base.Data;
- back_drb->flippedOffset = front_drb->offset;
- back_drb->flippedPitch = front_drb->pitch;
- back_drb->flippedData = front_drb->Base.Data;
- }
- else {
- front_drb->flippedOffset = front_drb->offset;
- front_drb->flippedPitch = front_drb->pitch;
- front_drb->flippedData = front_drb->Base.Data;
- back_drb->flippedOffset = back_drb->offset;
- back_drb->flippedPitch = back_drb->pitch;
- back_drb->flippedData = back_drb->Base.Data;
- }
- }
-}
-
-
-/**
- * Check that the gl_framebuffer associated with dPriv is the right size.
- * Resize the gl_framebuffer if needed.
- * It's expected that the dPriv->driverPrivate member points to a
- * gl_framebuffer object.
- */
-void
-driUpdateFramebufferSize(struct gl_context *ctx, const __DRIdrawable *dPriv)
-{
- struct gl_framebuffer *fb = (struct gl_framebuffer *) dPriv->driverPrivate;
- if (fb && (dPriv->w != fb->Width || dPriv->h != fb->Height)) {
- ctx->Driver.ResizeBuffers(ctx, fb, dPriv->w, dPriv->h);
- /* if the driver needs the hw lock for ResizeBuffers, the drawable
- might have changed again by now */
- assert(fb->Width == dPriv->w);
- assert(fb->Height == dPriv->h);
- }
-}
diff --git a/mesalib/src/mesa/drivers/dri/common/drirenderbuffer.h b/mesalib/src/mesa/drivers/dri/common/drirenderbuffer.h
deleted file mode 100644
index b9065b2dd..000000000
--- a/mesalib/src/mesa/drivers/dri/common/drirenderbuffer.h
+++ /dev/null
@@ -1,71 +0,0 @@
-
-/**
- * A driRenderbuffer is dervied from gl_renderbuffer.
- * It describes a color buffer (front or back), a depth buffer, or stencil
- * buffer etc.
- * Specific to DRI drivers are the offset and pitch fields.
- */
-
-
-#ifndef DRIRENDERBUFFER_H
-#define DRIRENDERBUFFER_H
-
-#include "main/mtypes.h"
-#include "main/formats.h"
-#include "dri_util.h"
-
-
-typedef struct {
- struct gl_renderbuffer Base;
-
- /* Chars or bytes per pixel. If Z and Stencil are stored together this
- * will typically be 32 whether this a depth or stencil renderbuffer.
- */
- GLint cpp;
-
- /* Buffer position and pitch (row stride). Recall that for today's DRI
- * drivers, we have statically allocated color/depth/stencil buffers.
- * So this information describes the whole screen, not just a window.
- * To address pixels in a window, we need to know the window's position
- * and size with respect to the screen.
- */
- GLint offset; /* in bytes */
- GLint pitch; /* in pixels */
-
- /* If the driver can do page flipping (full-screen double buffering)
- * the current front/back buffers may get swapped.
- * If page flipping is disabled, these fields will be identical to
- * the offset/pitch/Data above.
- * If page flipping is enabled, and this is the front(back) renderbuffer,
- * flippedOffset/Pitch/Data will have the back(front) renderbuffer's values.
- */
- GLint flippedOffset;
- GLint flippedPitch;
- GLvoid *flippedData; /* mmap'd address of buffer memory, if used */
-
- /* Pointer to corresponding __DRIdrawable. This is used to compute
- * the window's position within the framebuffer.
- */
- __DRIdrawable *dPriv;
-
- /* XXX this is for radeon/r200 only. We should really create a new
- * r200Renderbuffer class, derived from this class... not a huge deal.
- */
- GLboolean depthHasSurface;
-} driRenderbuffer;
-
-
-extern driRenderbuffer *
-driNewRenderbuffer(gl_format format, GLvoid *addr,
- GLint cpp, GLint offset, GLint pitch,
- __DRIdrawable *dPriv);
-
-extern void
-driFlipRenderbuffers(struct gl_framebuffer *fb, GLboolean flipped);
-
-
-extern void
-driUpdateFramebufferSize(struct gl_context *ctx, const __DRIdrawable *dPriv);
-
-
-#endif /* DRIRENDERBUFFER_H */
diff --git a/mesalib/src/mesa/drivers/dri/common/memops.h b/mesalib/src/mesa/drivers/dri/common/memops.h
deleted file mode 100644
index 9cd1d8ec3..000000000
--- a/mesalib/src/mesa/drivers/dri/common/memops.h
+++ /dev/null
@@ -1,17 +0,0 @@
-#ifndef DRIMEMSETIO_H
-#define DRIMEMSETIO_H
-/*
-* memset an area in I/O space
-* We need to be careful about this on some archs
-*/
-static INLINE void drimemsetio(void* address, int c, int size)
-{
-#if defined(__powerpc__) || defined(__ia64__)
- int i;
- for(i=0;i<size;i++)
- *((char *)address + i)=c;
-#else
- memset(address,c,size);
-#endif
-}
-#endif
diff --git a/mesalib/src/mesa/drivers/dri/common/spantmp_common.h b/mesalib/src/mesa/drivers/dri/common/spantmp_common.h
index a4509a569..8916e7b0c 100644
--- a/mesalib/src/mesa/drivers/dri/common/spantmp_common.h
+++ b/mesalib/src/mesa/drivers/dri/common/spantmp_common.h
@@ -49,17 +49,14 @@
#ifndef HW_CLIPLOOP
#define HW_CLIPLOOP() \
do { \
- int _nc = dPriv->numClipRects; \
- while ( _nc-- ) { \
- int minx = dPriv->pClipRects[_nc].x1 - dPriv->x; \
- int miny = dPriv->pClipRects[_nc].y1 - dPriv->y; \
- int maxx = dPriv->pClipRects[_nc].x2 - dPriv->x; \
- int maxy = dPriv->pClipRects[_nc].y2 - dPriv->y;
+ int minx = 0; \
+ int miny = 0; \
+ int maxx = dPriv->w; \
+ int maxy = dPriv->h;
#endif
#ifndef HW_ENDCLIPLOOP
#define HW_ENDCLIPLOOP() \
- } \
} while (0)
#endif
diff --git a/mesalib/src/mesa/drivers/dri/common/texmem.c b/mesalib/src/mesa/drivers/dri/common/texmem.c
deleted file mode 100644
index 798ef1ee8..000000000
--- a/mesalib/src/mesa/drivers/dri/common/texmem.c
+++ /dev/null
@@ -1,1341 +0,0 @@
-/*
- * Copyright 2000-2001 VA Linux Systems, Inc.
- * (C) Copyright IBM Corporation 2002, 2003
- * 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
- * on the rights to use, copy, modify, merge, publish, distribute, sub
- * license, 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 NON-INFRINGEMENT. IN NO EVENT SHALL
- * VA LINUX SYSTEM, IBM AND/OR THEIR SUPPLIERS 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.
- *
- * Authors:
- * Ian Romanick <idr@us.ibm.com>
- * Keith Whitwell <keithw@tungstengraphics.com>
- * Kevin E. Martin <kem@users.sourceforge.net>
- * Gareth Hughes <gareth@nvidia.com>
- */
-
-/** \file texmem.c
- * Implements all of the device-independent texture memory management.
- *
- * Currently, only a simple LRU texture memory management policy is
- * implemented. In the (hopefully very near) future, better policies will be
- * implemented. The idea is that the DRI should be able to run in one of two
- * modes. In the default mode the DRI will dynamically attempt to discover
- * the best texture management policy for the running application. In the
- * other mode, the user (via some sort of as yet TBD mechanism) will select
- * a texture management policy that is known to work well with the
- * application.
- */
-
-#include "main/imports.h"
-#include "main/macros.h"
-#include "main/simple_list.h"
-#include "texmem.h"
-
-
-static unsigned dummy_swap_counter;
-
-
-/**
- * Calculate \f$\log_2\f$ of a value. This is a particularly poor
- * implementation of this function. However, since system performance is in
- * no way dependent on this function, the slowness of the implementation is
- * irrelevent.
- *
- * \param n Value whose \f$\log_2\f$ is to be calculated
- */
-
-static GLuint
-driLog2( GLuint n )
-{
- GLuint log2;
-
- for ( log2 = 1 ; n > 1 ; log2++ ) {
- n >>= 1;
- }
-
- return log2;
-}
-
-
-
-
-/**
- * Determine if a texture is resident in textureable memory. Depending on
- * the driver, this may or may not be on-card memory. It could be AGP memory
- * or anyother type of memory from which the hardware can directly read
- * texels.
- *
- * This function is intended to be used as the \c IsTextureResident function
- * in the device's \c dd_function_table.
- *
- * \param ctx GL context pointer (currently unused)
- * \param texObj Texture object to be tested
- */
-
-GLboolean
-driIsTextureResident( struct gl_context * ctx,
- struct gl_texture_object * texObj )
-{
- driTextureObject * t;
-
-
- t = (driTextureObject *) texObj->DriverData;
- return( (t != NULL) && (t->memBlock != NULL) );
-}
-
-
-
-
-/**
- * (Re)initialize the global circular LRU list. The last element
- * in the array (\a heap->nrRegions) is the sentinal. Keeping it
- * at the end of the array allows the other elements of the array
- * to be addressed rationally when looking up objects at a particular
- * location in texture memory.
- *
- * \param heap Texture heap to be reset
- */
-
-static void resetGlobalLRU( driTexHeap * heap )
-{
- drmTextureRegionPtr list = heap->global_regions;
- unsigned sz = 1U << heap->logGranularity;
- unsigned i;
-
- for (i = 0 ; (i+1) * sz <= heap->size ; i++) {
- list[i].prev = i-1;
- list[i].next = i+1;
- list[i].age = 0;
- }
-
- i--;
- list[0].prev = heap->nrRegions;
- list[i].prev = i-1;
- list[i].next = heap->nrRegions;
- list[heap->nrRegions].prev = i;
- list[heap->nrRegions].next = 0;
- heap->global_age[0] = 0;
-}
-
-/**
- * Print out debugging information about the local texture LRU.
- *
- * \param heap Texture heap to be printed
- * \param callername Name of calling function
- */
-static void printLocalLRU( driTexHeap * heap, const char *callername )
-{
- driTextureObject *t;
- unsigned sz = 1U << heap->logGranularity;
-
- fprintf( stderr, "%s in %s:\nLocal LRU, heap %d:\n",
- __FUNCTION__, callername, heap->heapId );
-
- foreach ( t, &heap->texture_objects ) {
- if (!t->memBlock)
- continue;
- if (!t->tObj) {
- fprintf( stderr, "Placeholder (%p) %d at 0x%x sz 0x%x\n",
- (void *)t,
- t->memBlock->ofs / sz,
- t->memBlock->ofs,
- t->memBlock->size );
- } else {
- fprintf( stderr, "Texture (%p) at 0x%x sz 0x%x\n",
- (void *)t,
- t->memBlock->ofs,
- t->memBlock->size );
- }
- }
- foreach ( t, heap->swapped_objects ) {
- if (!t->tObj) {
- fprintf( stderr, "Swapped Placeholder (%p)\n", (void *)t );
- } else {
- fprintf( stderr, "Swapped Texture (%p)\n", (void *)t );
- }
- }
-
- fprintf( stderr, "\n" );
-}
-
-/**
- * Print out debugging information about the global texture LRU.
- *
- * \param heap Texture heap to be printed
- * \param callername Name of calling function
- */
-static void printGlobalLRU( driTexHeap * heap, const char *callername )
-{
- drmTextureRegionPtr list = heap->global_regions;
- unsigned int i, j;
-
- fprintf( stderr, "%s in %s:\nGlobal LRU, heap %d list %p:\n",
- __FUNCTION__, callername, heap->heapId, (void *)list );
-
- for ( i = 0, j = heap->nrRegions ; i < heap->nrRegions ; i++ ) {
- fprintf( stderr, "list[%d] age %d next %d prev %d in_use %d\n",
- j, list[j].age, list[j].next, list[j].prev, list[j].in_use );
- j = list[j].next;
- if ( j == heap->nrRegions ) break;
- }
-
- if ( j != heap->nrRegions ) {
- fprintf( stderr, "Loop detected in global LRU\n" );
- for ( i = 0 ; i < heap->nrRegions ; i++ ) {
- fprintf( stderr, "list[%d] age %d next %d prev %d in_use %d\n",
- i, list[i].age, list[i].next, list[i].prev, list[i].in_use );
- }
- }
-
- fprintf( stderr, "\n" );
-}
-
-
-/**
- * Called by the client whenever it touches a local texture.
- *
- * \param t Texture object that the client has accessed
- */
-
-void driUpdateTextureLRU( driTextureObject * t )
-{
- driTexHeap * heap;
- drmTextureRegionPtr list;
- unsigned shift;
- unsigned start;
- unsigned end;
- unsigned i;
-
-
- heap = t->heap;
- if ( heap != NULL ) {
- shift = heap->logGranularity;
- start = t->memBlock->ofs >> shift;
- end = (t->memBlock->ofs + t->memBlock->size - 1) >> shift;
-
-
- heap->local_age = ++heap->global_age[0];
- list = heap->global_regions;
-
-
- /* Update the context's local LRU
- */
-
- move_to_head( & heap->texture_objects, t );
-
-
- for (i = start ; i <= end ; i++) {
- list[i].age = heap->local_age;
-
- /* remove_from_list(i)
- */
- list[(unsigned)list[i].next].prev = list[i].prev;
- list[(unsigned)list[i].prev].next = list[i].next;
-
- /* insert_at_head(list, i)
- */
- list[i].prev = heap->nrRegions;
- list[i].next = list[heap->nrRegions].next;
- list[(unsigned)list[heap->nrRegions].next].prev = i;
- list[heap->nrRegions].next = i;
- }
-
- if ( 0 ) {
- printGlobalLRU( heap, __FUNCTION__ );
- printLocalLRU( heap, __FUNCTION__ );
- }
- }
-}
-
-
-
-
-/**
- * Keep track of swapped out texture objects.
- *
- * \param t Texture object to be "swapped" out of its texture heap
- */
-
-void driSwapOutTextureObject( driTextureObject * t )
-{
- unsigned face;
-
-
- if ( t->memBlock != NULL ) {
- assert( t->heap != NULL );
- mmFreeMem( t->memBlock );
- t->memBlock = NULL;
-
- if (t->timestamp > t->heap->timestamp)
- t->heap->timestamp = t->timestamp;
-
- t->heap->texture_swaps[0]++;
- move_to_tail( t->heap->swapped_objects, t );
- t->heap = NULL;
- }
- else {
- assert( t->heap == NULL );
- }
-
-
- for ( face = 0 ; face < 6 ; face++ ) {
- t->dirty_images[face] = ~0;
- }
-}
-
-
-
-
-/**
- * Destroy hardware state associated with texture \a t. Calls the
- * \a destroy_texture_object method associated with the heap from which
- * \a t was allocated.
- *
- * \param t Texture object to be destroyed
- */
-
-void driDestroyTextureObject( driTextureObject * t )
-{
- driTexHeap * heap;
-
-
- if ( 0 ) {
- fprintf( stderr, "[%s:%d] freeing %p (tObj = %p, DriverData = %p)\n",
- __FILE__, __LINE__,
- (void *)t,
- (void *)((t != NULL) ? t->tObj : NULL),
- (void *)((t != NULL && t->tObj != NULL) ? t->tObj->DriverData : NULL ));
- }
-
- if ( t != NULL ) {
- if ( t->memBlock ) {
- heap = t->heap;
- assert( heap != NULL );
-
- heap->texture_swaps[0]++;
-
- mmFreeMem( t->memBlock );
- t->memBlock = NULL;
-
- if (t->timestamp > t->heap->timestamp)
- t->heap->timestamp = t->timestamp;
-
- heap->destroy_texture_object( heap->driverContext, t );
- t->heap = NULL;
- }
-
- if ( t->tObj != NULL ) {
- assert( t->tObj->DriverData == t );
- t->tObj->DriverData = NULL;
- }
-
- remove_from_list( t );
- FREE( t );
- }
-
- if ( 0 ) {
- fprintf( stderr, "[%s:%d] done freeing %p\n", __FILE__, __LINE__, (void *)t );
- }
-}
-
-
-
-
-/**
- * Update the local heap's representation of texture memory based on
- * data in the SAREA. This is done each time it is detected that some other
- * direct rendering client has held the lock. This pertains to both our local
- * textures and the textures belonging to other clients. Keep track of other
- * client's textures by pushing a placeholder texture onto the LRU list --
- * these are denoted by \a tObj being \a NULL.
- *
- * \param heap Heap whose state is to be updated
- * \param offset Byte offset in the heap that has been stolen
- * \param size Size, in bytes, of the stolen block
- * \param in_use Non-zero if the block is pinned/reserved by the kernel
- */
-
-static void driTexturesGone( driTexHeap * heap, int offset, int size,
- int in_use )
-{
- driTextureObject * t;
- driTextureObject * tmp;
-
-
- foreach_s ( t, tmp, & heap->texture_objects ) {
- if ( (t->memBlock->ofs < (offset + size))
- && ((t->memBlock->ofs + t->memBlock->size) > offset) ) {
- /* It overlaps - kick it out. If the texture object is just a
- * place holder, then destroy it all together. Otherwise, mark
- * it as being swapped out.
- */
-
- if ( t->tObj != NULL ) {
- driSwapOutTextureObject( t );
- }
- else {
- driDestroyTextureObject( t );
- }
- }
- }
-
-
- {
- t = (driTextureObject *) CALLOC( heap->texture_object_size );
- if ( t == NULL ) return;
-
- t->memBlock = mmAllocMem( heap->memory_heap, size, 0, offset );
- if ( t->memBlock == NULL ) {
- fprintf( stderr, "Couldn't alloc placeholder: heap %u sz %x ofs %x\n", heap->heapId,
- (int)size, (int)offset );
- mmDumpMemInfo( heap->memory_heap );
- FREE(t);
- return;
- }
- t->heap = heap;
- if (in_use)
- t->reserved = 1;
- insert_at_head( & heap->texture_objects, t );
- }
-}
-
-
-
-
-/**
- * Called by the client on lock contention to determine whether textures have
- * been stolen. If another client has modified a region in which we have
- * textures, then we need to figure out which of our textures have been
- * removed and update our global LRU.
- *
- * \param heap Texture heap to be updated
- */
-
-void driAgeTextures( driTexHeap * heap )
-{
- drmTextureRegionPtr list = heap->global_regions;
- unsigned sz = 1U << (heap->logGranularity);
- unsigned i, nr = 0;
-
-
- /* Have to go right round from the back to ensure stuff ends up
- * LRU in the local list... Fix with a cursor pointer.
- */
-
- for (i = list[heap->nrRegions].prev ;
- i != heap->nrRegions && nr < heap->nrRegions ;
- i = list[i].prev, nr++) {
- /* If switching texturing schemes, then the SAREA might not have been
- * properly cleared, so we need to reset the global texture LRU.
- */
-
- if ( (i * sz) > heap->size ) {
- nr = heap->nrRegions;
- break;
- }
-
- if (list[i].age > heap->local_age)
- driTexturesGone( heap, i * sz, sz, list[i].in_use);
- }
-
- /* Loop or uninitialized heap detected. Reset.
- */
-
- if (nr == heap->nrRegions) {
- driTexturesGone( heap, 0, heap->size, 0);
- resetGlobalLRU( heap );
- }
-
- if ( 0 ) {
- printGlobalLRU( heap, __FUNCTION__ );
- printLocalLRU( heap, __FUNCTION__ );
- }
-
- heap->local_age = heap->global_age[0];
-}
-
-
-
-
-#define INDEX_ARRAY_SIZE 6 /* I'm not aware of driver with more than 2 heaps */
-
-/**
- * Allocate memory from a texture heap to hold a texture object. This
- * routine will attempt to allocate memory for the texture from the heaps
- * specified by \c heap_array in order. That is, first it will try to
- * allocate from \c heap_array[0], then \c heap_array[1], and so on.
- *
- * \param heap_array Array of pointers to texture heaps to use
- * \param nr_heaps Number of heap pointer in \a heap_array
- * \param t Texture object for which space is needed
- * \return The ID of the heap from which memory was allocated, or -1 if
- * memory could not be allocated.
- *
- * \bug The replacement policy implemented by this function is horrible.
- */
-
-
-int
-driAllocateTexture( driTexHeap * const * heap_array, unsigned nr_heaps,
- driTextureObject * t )
-{
- driTexHeap * heap;
- driTextureObject * temp;
- driTextureObject * cursor;
- unsigned id;
-
-
- /* In case it already has texture space, initialize heap. This also
- * prevents GCC from issuing a warning that heap might be used
- * uninitialized.
- */
-
- heap = t->heap;
-
-
- /* Run through each of the existing heaps and try to allocate a buffer
- * to hold the texture.
- */
-
- for ( id = 0 ; (t->memBlock == NULL) && (id < nr_heaps) ; id++ ) {
- heap = heap_array[ id ];
- if ( heap != NULL ) {
- t->memBlock = mmAllocMem( heap->memory_heap, t->totalSize,
- heap->alignmentShift, 0 );
- }
- }
-
-
- /* Kick textures out until the requested texture fits.
- */
-
- if ( t->memBlock == NULL ) {
- unsigned index[INDEX_ARRAY_SIZE];
- unsigned nrGoodHeaps = 0;
-
- /* Trying to avoid dynamic memory allocation. If you have more
- * heaps, increase INDEX_ARRAY_SIZE. I'm not aware of any
- * drivers with more than 2 tex heaps. */
- assert( nr_heaps < INDEX_ARRAY_SIZE );
-
- /* Sort large enough heaps by duty. Insertion sort should be
- * fast enough for such a short array. */
- for ( id = 0 ; id < nr_heaps ; id++ ) {
- heap = heap_array[ id ];
-
- if ( heap != NULL && t->totalSize <= heap->size ) {
- unsigned j;
-
- for ( j = 0 ; j < nrGoodHeaps; j++ ) {
- if ( heap->duty > heap_array[ index[ j ] ]->duty )
- break;
- }
-
- if ( j < nrGoodHeaps ) {
- memmove( &index[ j+1 ], &index[ j ],
- sizeof(index[ 0 ]) * (nrGoodHeaps - j) );
- }
-
- index[ j ] = id;
-
- nrGoodHeaps++;
- }
- }
-
- for ( id = 0 ; (t->memBlock == NULL) && (id < nrGoodHeaps) ; id++ ) {
- heap = heap_array[ index[ id ] ];
-
- for ( cursor = heap->texture_objects.prev, temp = cursor->prev;
- cursor != &heap->texture_objects ;
- cursor = temp, temp = cursor->prev ) {
-
- /* The the LRU element. If the texture is bound to one of
- * the texture units, then we cannot kick it out.
- */
- if ( cursor->bound || cursor->reserved ) {
- continue;
- }
-
- if ( cursor->memBlock )
- heap->duty -= cursor->memBlock->size;
-
- /* If this is a placeholder, there's no need to keep it */
- if (cursor->tObj)
- driSwapOutTextureObject( cursor );
- else
- driDestroyTextureObject( cursor );
-
- t->memBlock = mmAllocMem( heap->memory_heap, t->totalSize,
- heap->alignmentShift, 0 );
-
- if (t->memBlock)
- break;
- }
- }
-
- /* Rebalance duties. If a heap kicked more data than its duty,
- * then all other heaps get that amount multiplied with their
- * relative weight added to their duty. The negative duty is
- * reset to 0. In the end all heaps have a duty >= 0.
- *
- * CAUTION: we must not change the heap pointer here, because it
- * is used below to update the texture object.
- */
- for ( id = 0 ; id < nr_heaps ; id++ )
- if ( heap_array[ id ] != NULL && heap_array[ id ]->duty < 0) {
- int duty = -heap_array[ id ]->duty;
- double weight = heap_array[ id ]->weight;
- unsigned j;
-
- for ( j = 0 ; j < nr_heaps ; j++ )
- if ( j != id && heap_array[ j ] != NULL ) {
- heap_array[ j ]->duty += (double) duty *
- heap_array[ j ]->weight / weight;
- }
-
- heap_array[ id ]->duty = 0;
- }
- }
-
-
- if ( t->memBlock != NULL ) {
- /* id and heap->heapId may or may not be the same value here.
- */
-
- assert( heap != NULL );
- assert( (t->heap == NULL) || (t->heap == heap) );
-
- t->heap = heap;
- return heap->heapId;
- }
- else {
- assert( t->heap == NULL );
-
- fprintf( stderr, "[%s:%d] unable to allocate texture\n",
- __FUNCTION__, __LINE__ );
- return -1;
- }
-}
-
-
-
-
-
-
-/**
- * Set the location where the texture-swap counter is stored.
- */
-
-void
-driSetTextureSwapCounterLocation( driTexHeap * heap, unsigned * counter )
-{
- heap->texture_swaps = (counter == NULL) ? & dummy_swap_counter : counter;
-}
-
-
-
-
-/**
- * Create a new heap for texture data.
- *
- * \param heap_id Device-dependent heap identifier. This value
- * will returned by driAllocateTexture when memory
- * is allocated from this heap.
- * \param context Device-dependent driver context. This is
- * supplied as the first parameter to the
- * \c destroy_tex_obj function.
- * \param size Size, in bytes, of the texture region
- * \param alignmentShift Alignment requirement for textures. If textures
- * must be allocated on a 4096 byte boundry, this
- * would be 12.
- * \param nr_regions Number of regions into which this texture space
- * should be partitioned
- * \param global_regions Array of \c drmTextureRegion structures in the SAREA
- * \param global_age Pointer to the global texture age in the SAREA
- * \param swapped_objects Pointer to the list of texture objects that are
- * not in texture memory (i.e., have been swapped
- * out).
- * \param texture_object_size Size, in bytes, of a device-dependent texture
- * object
- * \param destroy_tex_obj Function used to destroy a device-dependent
- * texture object
- *
- * \sa driDestroyTextureHeap
- */
-
-driTexHeap *
-driCreateTextureHeap( unsigned heap_id, void * context, unsigned size,
- unsigned alignmentShift, unsigned nr_regions,
- drmTextureRegionPtr global_regions, unsigned * global_age,
- driTextureObject * swapped_objects,
- unsigned texture_object_size,
- destroy_texture_object_t * destroy_tex_obj
- )
-{
- driTexHeap * heap;
- unsigned l;
-
-
- if ( 0 )
- fprintf( stderr, "%s( %u, %p, %u, %u, %u )\n",
- __FUNCTION__,
- heap_id, (void *)context, size, alignmentShift, nr_regions );
-
- heap = (driTexHeap *) CALLOC( sizeof( driTexHeap ) );
- if ( heap != NULL ) {
- l = driLog2( (size - 1) / nr_regions );
- if ( l < alignmentShift )
- {
- l = alignmentShift;
- }
-
- heap->logGranularity = l;
- heap->size = size & ~((1L << l) - 1);
-
- heap->memory_heap = mmInit( 0, heap->size );
- if ( heap->memory_heap != NULL ) {
- heap->heapId = heap_id;
- heap->driverContext = context;
-
- heap->alignmentShift = alignmentShift;
- heap->nrRegions = nr_regions;
- heap->global_regions = global_regions;
- heap->global_age = global_age;
- heap->swapped_objects = swapped_objects;
- heap->texture_object_size = texture_object_size;
- heap->destroy_texture_object = destroy_tex_obj;
-
- /* Force global heap init */
- if (heap->global_age[0] == 0)
- heap->local_age = ~0;
- else
- heap->local_age = 0;
-
- make_empty_list( & heap->texture_objects );
- driSetTextureSwapCounterLocation( heap, NULL );
-
- heap->weight = heap->size;
- heap->duty = 0;
- }
- else {
- FREE( heap );
- heap = NULL;
- }
- }
-
-
- if ( 0 )
- fprintf( stderr, "%s returning %p\n", __FUNCTION__, (void *)heap );
-
- return heap;
-}
-
-
-
-
-/** Destroys a texture heap
- *
- * \param heap Texture heap to be destroyed
- */
-
-void
-driDestroyTextureHeap( driTexHeap * heap )
-{
- driTextureObject * t;
- driTextureObject * temp;
-
-
- if ( heap != NULL ) {
- foreach_s( t, temp, & heap->texture_objects ) {
- driDestroyTextureObject( t );
- }
- foreach_s( t, temp, heap->swapped_objects ) {
- driDestroyTextureObject( t );
- }
-
- mmDestroy( heap->memory_heap );
- FREE( heap );
- }
-}
-
-
-
-
-/****************************************************************************/
-/**
- * Determine how many texels (including all mipmap levels) would be required
- * for a texture map of size \f$2^^\c base_size_log2\f$ would require.
- *
- * \param base_size_log2 \f$log_2\f$ of the size of a side of the texture
- * \param dimensions Number of dimensions of the texture. Either 2 or 3.
- * \param faces Number of faces of the texture. Either 1 or 6 (for cube maps).
- * \return Number of texels
- */
-
-static unsigned
-texels_this_map_size( int base_size_log2, unsigned dimensions, unsigned faces )
-{
- unsigned texels;
-
-
- assert( (faces == 1) || (faces == 6) );
- assert( (dimensions == 2) || (dimensions == 3) );
-
- texels = 0;
- if ( base_size_log2 >= 0 ) {
- texels = (1U << (dimensions * base_size_log2));
-
- /* See http://www.mail-archive.com/dri-devel@lists.sourceforge.net/msg03636.html
- * for the complete explaination of why this formulation is used.
- * Basically, the smaller mipmap levels sum to 0.333 the size of the
- * level 0 map. The total size is therefore the size of the map
- * multipled by 1.333. The +2 is there to round up.
- */
-
- texels = (texels * 4 * faces + 2) / 3;
- }
-
- return texels;
-}
-
-
-
-
-struct maps_per_heap {
- unsigned c[32];
-};
-
-static void
-fill_in_maximums( driTexHeap * const * heaps, unsigned nr_heaps,
- unsigned max_bytes_per_texel, unsigned max_size,
- unsigned mipmaps_at_once, unsigned dimensions,
- unsigned faces, struct maps_per_heap * max_textures )
-{
- unsigned heap;
- unsigned log2_size;
- unsigned mask;
-
-
- /* Determine how many textures of each size can be stored in each
- * texture heap.
- */
-
- for ( heap = 0 ; heap < nr_heaps ; heap++ ) {
- if ( heaps[ heap ] == NULL ) {
- (void) memset( max_textures[ heap ].c, 0,
- sizeof( max_textures[ heap ].c ) );
- continue;
- }
-
- mask = (1U << heaps[ heap ]->logGranularity) - 1;
-
- if ( 0 ) {
- fprintf( stderr, "[%s:%d] heap[%u] = %u bytes, mask = 0x%08x\n",
- __FILE__, __LINE__,
- heap, heaps[ heap ]->size, mask );
- }
-
- for ( log2_size = max_size ; log2_size > 0 ; log2_size-- ) {
- unsigned total;
-
-
- /* Determine the total number of bytes required by a texture of
- * size log2_size.
- */
-
- total = texels_this_map_size( log2_size, dimensions, faces )
- - texels_this_map_size( log2_size - mipmaps_at_once,
- dimensions, faces );
- total *= max_bytes_per_texel;
- total = (total + mask) & ~mask;
-
- /* The number of textures of a given size that will fit in a heap
- * is equal to the size of the heap divided by the size of the
- * texture.
- */
-
- max_textures[ heap ].c[ log2_size ] = heaps[ heap ]->size / total;
-
- if ( 0 ) {
- fprintf( stderr, "[%s:%d] max_textures[%u].c[%02u] "
- "= 0x%08x / 0x%08x "
- "= %u (%u)\n",
- __FILE__, __LINE__,
- heap, log2_size,
- heaps[ heap ]->size, total,
- heaps[ heap ]->size / total,
- max_textures[ heap ].c[ log2_size ] );
- }
- }
- }
-}
-
-
-static unsigned
-get_max_size( unsigned nr_heaps,
- unsigned texture_units,
- unsigned max_size,
- int all_textures_one_heap,
- struct maps_per_heap * max_textures )
-{
- unsigned heap;
- unsigned log2_size;
-
-
- /* Determine the largest texture size such that a texture of that size
- * can be bound to each texture unit at the same time. Some hardware
- * may require that all textures be in the same texture heap for
- * multitexturing.
- */
-
- for ( log2_size = max_size ; log2_size > 0 ; log2_size-- ) {
- unsigned total = 0;
-
- for ( heap = 0 ; heap < nr_heaps ; heap++ )
- {
- total += max_textures[ heap ].c[ log2_size ];
-
- if ( 0 ) {
- fprintf( stderr, "[%s:%d] max_textures[%u].c[%02u] = %u, "
- "total = %u\n", __FILE__, __LINE__, heap, log2_size,
- max_textures[ heap ].c[ log2_size ], total );
- }
-
- if ( (max_textures[ heap ].c[ log2_size ] >= texture_units)
- || (!all_textures_one_heap && (total >= texture_units)) ) {
- /* The number of mipmap levels is the log-base-2 of the
- * maximum texture size plus 1. If the maximum texture size
- * is 1x1, the log-base-2 is 0 and 1 mipmap level (the base
- * level) is available.
- */
-
- return log2_size + 1;
- }
- }
- }
-
- /* This should NEVER happen. It should always be possible to have at
- * *least* a 1x1 texture in memory!
- */
- assert( log2_size != 0 );
- return 0;
-}
-
-#define SET_MAX(f,v) \
- do { if ( max_sizes[v] != 0 ) { limits-> f = max_sizes[v]; } } while( 0 )
-
-#define SET_MAX_RECT(f,v) \
- do { if ( max_sizes[v] != 0 ) { limits-> f = 1 << (max_sizes[v] - 1); } } while( 0 )
-
-
-/**
- * Given the amount of texture memory, the number of texture units, and the
- * maximum size of a texel, calculate the maximum texture size the driver can
- * advertise.
- *
- * \param heaps Texture heaps for this card
- * \param nr_heap Number of texture heaps
- * \param limits OpenGL contants. MaxTextureUnits must be set.
- * \param max_bytes_per_texel Maximum size of a single texel, in bytes
- * \param max_2D_size \f$\log_2\f$ of the maximum 2D texture size (i.e.,
- * 1024x1024 textures, this would be 10)
- * \param max_3D_size \f$\log_2\f$ of the maximum 3D texture size (i.e.,
- * 1024x1024x1024 textures, this would be 10)
- * \param max_cube_size \f$\log_2\f$ of the maximum cube texture size (i.e.,
- * 1024x1024 textures, this would be 10)
- * \param max_rect_size \f$\log_2\f$ of the maximum texture rectangle size
- * (i.e., 1024x1024 textures, this would be 10). This is a power-of-2
- * even though texture rectangles need not be a power-of-2.
- * \param mipmaps_at_once Total number of mipmaps that can be used
- * at one time. For most hardware this will be \f$\c max_size + 1\f$.
- * For hardware that does not support mipmapping, this will be 1.
- * \param all_textures_one_heap True if the hardware requires that all
- * textures be in a single texture heap for multitexturing.
- * \param allow_larger_textures 0 conservative, 1 calculate limits
- * so at least one worst-case texture can fit, 2 just use hw limits.
- */
-
-void
-driCalculateMaxTextureLevels( driTexHeap * const * heaps,
- unsigned nr_heaps,
- struct gl_constants * limits,
- unsigned max_bytes_per_texel,
- unsigned max_2D_size,
- unsigned max_3D_size,
- unsigned max_cube_size,
- unsigned max_rect_size,
- unsigned mipmaps_at_once,
- int all_textures_one_heap,
- int allow_larger_textures )
-{
- struct maps_per_heap max_textures[8];
- unsigned i;
- const unsigned dimensions[4] = { 2, 3, 2, 2 };
- const unsigned faces[4] = { 1, 1, 6, 1 };
- unsigned max_sizes[4];
- unsigned mipmaps[4];
-
-
- max_sizes[0] = max_2D_size;
- max_sizes[1] = max_3D_size;
- max_sizes[2] = max_cube_size;
- max_sizes[3] = max_rect_size;
-
- mipmaps[0] = mipmaps_at_once;
- mipmaps[1] = mipmaps_at_once;
- mipmaps[2] = mipmaps_at_once;
- mipmaps[3] = 1;
-
-
- /* Calculate the maximum number of texture levels in two passes. The
- * first pass determines how many textures of each power-of-two size
- * (including all mipmap levels for that size) can fit in each texture
- * heap. The second pass finds the largest texture size that allows
- * a texture of that size to be bound to every texture unit.
- */
-
- for ( i = 0 ; i < 4 ; i++ ) {
- if ( (allow_larger_textures != 2) && (max_sizes[ i ] != 0) ) {
- fill_in_maximums( heaps, nr_heaps, max_bytes_per_texel,
- max_sizes[ i ], mipmaps[ i ],
- dimensions[ i ], faces[ i ],
- max_textures );
-
- max_sizes[ i ] = get_max_size( nr_heaps,
- allow_larger_textures == 1 ?
- 1 : limits->MaxTextureUnits,
- max_sizes[ i ],
- all_textures_one_heap,
- max_textures );
- }
- else if (max_sizes[ i ] != 0) {
- max_sizes[ i ] += 1;
- }
- }
-
- SET_MAX( MaxTextureLevels, 0 );
- SET_MAX( Max3DTextureLevels, 1 );
- SET_MAX( MaxCubeTextureLevels, 2 );
- SET_MAX_RECT( MaxTextureRectSize, 3 );
-}
-
-
-
-
-/**
- * Perform initial binding of default textures objects on a per unit, per
- * texture target basis.
- *
- * \param ctx Current OpenGL context
- * \param swapped List of swapped-out textures
- * \param targets Bit-mask of value texture targets
- */
-
-void driInitTextureObjects( struct gl_context *ctx, driTextureObject * swapped,
- GLuint targets )
-{
- struct gl_texture_object *texObj;
- GLuint tmp = ctx->Texture.CurrentUnit;
- unsigned i;
-
-
- for ( i = 0 ; i < ctx->Const.MaxTextureUnits ; i++ ) {
- ctx->Texture.CurrentUnit = i;
-
- if ( (targets & DRI_TEXMGR_DO_TEXTURE_1D) != 0 ) {
- texObj = ctx->Texture.Unit[i].CurrentTex[TEXTURE_1D_INDEX];
- ctx->Driver.BindTexture( ctx, GL_TEXTURE_1D, texObj );
- move_to_tail( swapped, (driTextureObject *) texObj->DriverData );
- }
-
- if ( (targets & DRI_TEXMGR_DO_TEXTURE_2D) != 0 ) {
- texObj = ctx->Texture.Unit[i].CurrentTex[TEXTURE_2D_INDEX];
- ctx->Driver.BindTexture( ctx, GL_TEXTURE_2D, texObj );
- move_to_tail( swapped, (driTextureObject *) texObj->DriverData );
- }
-
- if ( (targets & DRI_TEXMGR_DO_TEXTURE_3D) != 0 ) {
- texObj = ctx->Texture.Unit[i].CurrentTex[TEXTURE_3D_INDEX];
- ctx->Driver.BindTexture( ctx, GL_TEXTURE_3D, texObj );
- move_to_tail( swapped, (driTextureObject *) texObj->DriverData );
- }
-
- if ( (targets & DRI_TEXMGR_DO_TEXTURE_CUBE) != 0 ) {
- texObj = ctx->Texture.Unit[i].CurrentTex[TEXTURE_CUBE_INDEX];
- ctx->Driver.BindTexture( ctx, GL_TEXTURE_CUBE_MAP_ARB, texObj );
- move_to_tail( swapped, (driTextureObject *) texObj->DriverData );
- }
-
- if ( (targets & DRI_TEXMGR_DO_TEXTURE_RECT) != 0 ) {
- texObj = ctx->Texture.Unit[i].CurrentTex[TEXTURE_RECT_INDEX];
- ctx->Driver.BindTexture( ctx, GL_TEXTURE_RECTANGLE_NV, texObj );
- move_to_tail( swapped, (driTextureObject *) texObj->DriverData );
- }
- }
-
- ctx->Texture.CurrentUnit = tmp;
-}
-
-
-
-
-/**
- * Verify that the specified texture is in the specificed heap.
- *
- * \param tex Texture to be tested.
- * \param heap Texture memory heap to be tested.
- * \return True if the texture is in the heap, false otherwise.
- */
-
-static GLboolean
-check_in_heap( const driTextureObject * tex, const driTexHeap * heap )
-{
-#if 1
- return tex->heap == heap;
-#else
- driTextureObject * curr;
-
- foreach( curr, & heap->texture_objects ) {
- if ( curr == tex ) {
- break;
- }
- }
-
- return curr == tex;
-#endif
-}
-
-
-
-/****************************************************************************/
-/**
- * Validate the consistency of a set of texture heaps.
- * Original version by Keith Whitwell in r200/r200_sanity.c.
- */
-
-GLboolean
-driValidateTextureHeaps( driTexHeap * const * texture_heaps,
- unsigned nr_heaps, const driTextureObject * swapped )
-{
- driTextureObject *t;
- unsigned i;
-
- for ( i = 0 ; i < nr_heaps ; i++ ) {
- int last_end = 0;
- unsigned textures_in_heap = 0;
- unsigned blocks_in_mempool = 0;
- const driTexHeap * heap = texture_heaps[i];
- const struct mem_block *p = heap->memory_heap;
-
- /* Check each texture object has a MemBlock, and is linked into
- * the correct heap.
- *
- * Check the texobj base address corresponds to the MemBlock
- * range. Check the texobj size (recalculate?) fits within
- * the MemBlock.
- *
- * Count the number of texobj's using this heap.
- */
-
- foreach ( t, &heap->texture_objects ) {
- if ( !check_in_heap( t, heap ) ) {
- fprintf( stderr, "%s memory block for texture object @ %p not "
- "found in heap #%d\n",
- __FUNCTION__, (void *)t, i );
- return GL_FALSE;
- }
-
-
- if ( t->totalSize > t->memBlock->size ) {
- fprintf( stderr, "%s: Memory block for texture object @ %p is "
- "only %u bytes, but %u are required\n",
- __FUNCTION__, (void *)t, t->totalSize, t->memBlock->size );
- return GL_FALSE;
- }
-
- textures_in_heap++;
- }
-
- /* Validate the contents of the heap:
- * - Ordering
- * - Overlaps
- * - Bounds
- */
-
- while ( p != NULL ) {
- if (p->reserved) {
- fprintf( stderr, "%s: Block (%08x,%x), is reserved?!\n",
- __FUNCTION__, p->ofs, p->size );
- return GL_FALSE;
- }
-
- if (p->ofs != last_end) {
- fprintf( stderr, "%s: blocks_in_mempool = %d, last_end = %d, p->ofs = %d\n",
- __FUNCTION__, blocks_in_mempool, last_end, p->ofs );
- return GL_FALSE;
- }
-
- if (!p->reserved && !p->free) {
- blocks_in_mempool++;
- }
-
- last_end = p->ofs + p->size;
- p = p->next;
- }
-
- if (textures_in_heap != blocks_in_mempool) {
- fprintf( stderr, "%s: Different number of textures objects (%u) and "
- "inuse memory blocks (%u)\n",
- __FUNCTION__, textures_in_heap, blocks_in_mempool );
- return GL_FALSE;
- }
-
-#if 0
- fprintf( stderr, "%s: textures_in_heap = %u\n",
- __FUNCTION__, textures_in_heap );
-#endif
- }
-
-
- /* Check swapped texobj's have zero memblocks
- */
- i = 0;
- foreach ( t, swapped ) {
- if ( t->memBlock != NULL ) {
- fprintf( stderr, "%s: Swapped texobj %p has non-NULL memblock %p\n",
- __FUNCTION__, (void *)t, (void *)t->memBlock );
- return GL_FALSE;
- }
- i++;
- }
-
-#if 0
- fprintf( stderr, "%s: swapped texture count = %u\n", __FUNCTION__, i );
-#endif
-
- return GL_TRUE;
-}
-
-
-
-
-/****************************************************************************/
-/**
- * Compute which mipmap levels that really need to be sent to the hardware.
- * This depends on the base image size, GL_TEXTURE_MIN_LOD,
- * GL_TEXTURE_MAX_LOD, GL_TEXTURE_BASE_LEVEL, and GL_TEXTURE_MAX_LEVEL.
- */
-
-void
-driCalculateTextureFirstLastLevel( driTextureObject * t )
-{
- struct gl_texture_object * const tObj = t->tObj;
- const struct gl_texture_image * const baseImage =
- tObj->Image[0][tObj->BaseLevel];
-
- /* These must be signed values. MinLod and MaxLod can be negative numbers,
- * and having firstLevel and lastLevel as signed prevents the need for
- * extra sign checks.
- */
- int firstLevel;
- int lastLevel;
-
- /* Yes, this looks overly complicated, but it's all needed.
- */
-
- switch (tObj->Target) {
- case GL_TEXTURE_1D:
- case GL_TEXTURE_2D:
- case GL_TEXTURE_3D:
- case GL_TEXTURE_CUBE_MAP:
- if (tObj->Sampler.MinFilter == GL_NEAREST ||
- tObj->Sampler.MinFilter == GL_LINEAR) {
- /* GL_NEAREST and GL_LINEAR only care about GL_TEXTURE_BASE_LEVEL.
- */
-
- firstLevel = lastLevel = tObj->BaseLevel;
- }
- else {
- firstLevel = tObj->BaseLevel + (GLint)(tObj->Sampler.MinLod + 0.5);
- firstLevel = MAX2(firstLevel, tObj->BaseLevel);
- firstLevel = MIN2(firstLevel, tObj->BaseLevel + baseImage->MaxLog2);
- lastLevel = tObj->BaseLevel + (GLint)(tObj->Sampler.MaxLod + 0.5);
- lastLevel = MAX2(lastLevel, t->tObj->BaseLevel);
- lastLevel = MIN2(lastLevel, t->tObj->BaseLevel + baseImage->MaxLog2);
- lastLevel = MIN2(lastLevel, t->tObj->MaxLevel);
- lastLevel = MAX2(firstLevel, lastLevel); /* need at least one level */
- }
- break;
- case GL_TEXTURE_RECTANGLE_NV:
- case GL_TEXTURE_4D_SGIS:
- firstLevel = lastLevel = 0;
- break;
- default:
- return;
- }
-
- /* save these values */
- t->firstLevel = firstLevel;
- t->lastLevel = lastLevel;
-}
-
-
-
-
-/**
- * \name DRI texture formats. These vars are initialized to either the
- * big- or little-endian Mesa formats.
- */
-/*@{*/
-gl_format _dri_texformat_rgba8888 = MESA_FORMAT_NONE;
-gl_format _dri_texformat_argb8888 = MESA_FORMAT_NONE;
-gl_format _dri_texformat_rgb565 = MESA_FORMAT_NONE;
-gl_format _dri_texformat_argb4444 = MESA_FORMAT_NONE;
-gl_format _dri_texformat_argb1555 = MESA_FORMAT_NONE;
-gl_format _dri_texformat_al88 = MESA_FORMAT_NONE;
-gl_format _dri_texformat_a8 = MESA_FORMAT_A8;
-gl_format _dri_texformat_i8 = MESA_FORMAT_I8;
-gl_format _dri_texformat_l8 = MESA_FORMAT_L8;
-/*@}*/
-
-
-/**
- * Initialize _dri_texformat_* vars according to whether we're on
- * a big or little endian system.
- */
-void
-driInitTextureFormats(void)
-{
- if (_mesa_little_endian()) {
- _dri_texformat_rgba8888 = MESA_FORMAT_RGBA8888;
- _dri_texformat_argb8888 = MESA_FORMAT_ARGB8888;
- _dri_texformat_rgb565 = MESA_FORMAT_RGB565;
- _dri_texformat_argb4444 = MESA_FORMAT_ARGB4444;
- _dri_texformat_argb1555 = MESA_FORMAT_ARGB1555;
- _dri_texformat_al88 = MESA_FORMAT_AL88;
- }
- else {
- _dri_texformat_rgba8888 = MESA_FORMAT_RGBA8888_REV;
- _dri_texformat_argb8888 = MESA_FORMAT_ARGB8888_REV;
- _dri_texformat_rgb565 = MESA_FORMAT_RGB565_REV;
- _dri_texformat_argb4444 = MESA_FORMAT_ARGB4444_REV;
- _dri_texformat_argb1555 = MESA_FORMAT_ARGB1555_REV;
- _dri_texformat_al88 = MESA_FORMAT_AL88_REV;
- }
-}
diff --git a/mesalib/src/mesa/drivers/dri/common/texmem.h b/mesalib/src/mesa/drivers/dri/common/texmem.h
deleted file mode 100644
index 3815c4107..000000000
--- a/mesalib/src/mesa/drivers/dri/common/texmem.h
+++ /dev/null
@@ -1,334 +0,0 @@
-/*
- * Copyright 2000-2001 VA Linux Systems, Inc.
- * (c) Copyright IBM Corporation 2002
- * 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
- * on the rights to use, copy, modify, merge, publish, distribute, sub
- * license, 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 NON-INFRINGEMENT. IN NO EVENT SHALL
- * VA LINUX SYSTEM, IBM AND/OR THEIR SUPPLIERS 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.
- *
- * Authors:
- * Ian Romanick <idr@us.ibm.com>
- * Keith Whitwell <keithw@tungstengraphics.com>
- * Kevin E. Martin <kem@users.sourceforge.net>
- * Gareth Hughes <gareth@nvidia.com>
- */
-
-/** \file texmem.h
- * Public interface to the DRI texture memory management routines.
- *
- * \sa texmem.c
- */
-
-#ifndef DRI_TEXMEM_H
-#define DRI_TEXMEM_H
-
-#include "main/mtypes.h"
-#include "main/formats.h"
-#include "main/mm.h"
-#include "xf86drm.h"
-
-struct dri_tex_heap;
-typedef struct dri_tex_heap driTexHeap;
-
-struct dri_texture_object;
-typedef struct dri_texture_object driTextureObject;
-
-
-/**
- * Base texture object type. Each driver will extend this type with its own
- * private data members.
- */
-
-struct dri_texture_object {
- struct dri_texture_object * next;
- struct dri_texture_object * prev;
-
- driTexHeap * heap; /**< Texture heap currently stored in */
- struct gl_texture_object * tObj;/**< Pointer to Mesa texture object
- * If NULL, this texture object is a
- * "placeholder" object representing
- * texture memory in use by another context.
- * A placeholder should have a heap and a memBlock.
- */
- struct mem_block *memBlock; /**< Memory block containing texture */
-
- unsigned reserved; /**< Cannot be swapped out by user contexts. */
-
- unsigned bound; /**< Bitmask indicating which tex units
- * this texture object is bound to.
- * Bit 0 = unit 0, Bit 1 = unit 1, etc
- */
-
- unsigned totalSize; /**< Total size of the texture,
- * including all mipmap levels
- */
-
- unsigned dirty_images[6]; /**< Flags for whether or not images
- * need to be uploaded to local or
- * AGP texture space. One flag set
- * for each cube face for cubic
- * textures. Bit zero corresponds to
- * the base-level, which may or may
- * not be the level zero mipmap.
- */
-
- unsigned timestamp; /**< Timestamp used to
- * synchronize with 3d engine
- * in hardware where textures
- * are uploaded directly to
- * the framebuffer.
- */
-
- unsigned firstLevel; /**< Image in \c tObj->Image[0] that
- * corresponds to the base-level of
- * this texture object.
- */
-
- unsigned lastLevel; /**< Last image in \c tObj->Image[0]
- * used by the
- * current LOD settings of
- * this texture object. This
- * value must be greater than
- * or equal to \c firstLevel.
- */
-};
-
-
-typedef void (destroy_texture_object_t)( void * driverContext,
- driTextureObject * t );
-
-/**
- * Client-private representation of texture memory state.
- *
- * Clients will place one or more of these structs in their driver
- * context struct to manage one or more global texture heaps.
- */
-
-struct dri_tex_heap {
-
- /** Client-supplied heap identifier
- */
- unsigned heapId;
-
- /** Pointer to the client's private context
- */
- void *driverContext;
-
- /** Total size of the heap, in bytes
- */
- unsigned size;
-
- /** \brief \f$log_2\f$ of size of single heap region
- *
- * Each context takes memory from the global texture heap in
- * \f$2^{logGranularity}\f$ byte blocks. The value of
- * \a logGranularity is based on the amount of memory represented
- * by the heap and the maximum number of regions in the SAREA. Given
- * \a b bytes of texture memory an \a n regions in the SAREA,
- * \a logGranularity will be \f$\lfloor\log_2( b / n )\rfloor\f$.
- */
- unsigned logGranularity;
-
- /** \brief Required alignment of allocations in this heap
- *
- * The alignment shift is supplied to \a mmAllocMem when memory is
- * allocated from this heap. The value of \a alignmentShift will
- * typically reflect some require of the hardware. This value has
- * \b no \b relation to \a logGranularity. \a alignmentShift is a
- * per-context value.
- *
- * \sa mmAllocMem
- */
- unsigned alignmentShift;
-
- /** Number of elements in global list (the SAREA).
- */
- unsigned nrRegions;
-
- /** Pointer to SAREA \a driTexRegion array
- */
- drmTextureRegionPtr global_regions;
-
- /** Pointer to the texture state age (generation number) in the SAREA
- */
- unsigned * global_age;
-
- /** Local age (generation number) of texture state
- */
- unsigned local_age;
-
- /** Memory heap used to manage texture memory represented by
- * this texture heap.
- */
- struct mem_block * memory_heap;
-
- /** List of objects that we currently believe to be in texture
- * memory.
- */
- driTextureObject texture_objects;
-
- /** Pointer to the list of texture objects that are not in
- * texture memory.
- */
- driTextureObject * swapped_objects;
-
- /** Size of the driver-speicific texture object.
- */
- unsigned texture_object_size;
-
-
- /**
- * \brief Function to destroy driver-specific texture object data.
- *
- * This function is supplied by the driver so that the texture manager
- * can release all resources associated with a texture object. This
- * function should only release driver-specific data. That is,
- * \a driDestroyTextureObject will release the texture memory
- * associated with the texture object, it will release the memory
- * for the texture object itself, and it will unlink the texture
- * object from the texture object lists.
- *
- * \param driverContext Pointer to the driver supplied context
- * \param t Texture object that is to be destroyed
- * \sa driDestroyTextureObject
- */
-
- destroy_texture_object_t * destroy_texture_object;
-
-
- /**
- */
- unsigned * texture_swaps;
-
- /**
- * Timestamp used to synchronize with 3d engine in hardware
- * where textures are uploaded directly to the
- * framebuffer.
- */
- unsigned timestamp;
-
- /** \brief Kick/upload weight
- *
- * When not enough free space is available this weight
- * influences the choice of the heap from which textures are
- * kicked. By default the weight is equal to the heap size.
- */
- double weight;
-
- /** \brief Kick/upload duty
- *
- * The heap with the highest duty will be chosen for kicking
- * textures if not enough free space is available. The duty is
- * reduced by the amount of data kicked. Rebalancing of
- * negative duties takes the weights into account.
- */
- int duty;
-};
-
-
-
-
-/**
- * Called by the client on lock contention to determine whether textures have
- * been stolen. If another client has modified a region in which we have
- * textures, then we need to figure out which of our textures have been
- * removed and update our global LRU.
- *
- * \param heap Texture heap to be updated
- * \hideinitializer
- */
-
-#define DRI_AGE_TEXTURES( heap ) \
- do { \
- if ( ((heap) != NULL) \
- && ((heap)->local_age != (heap)->global_age[0]) ) \
- driAgeTextures( heap ); \
- } while( 0 )
-
-
-
-
-/* This should be called whenever there has been contention on the hardware
- * lock. driAgeTextures should not be called directly. Instead, clients
- * should use DRI_AGE_TEXTURES, above.
- */
-
-void driAgeTextures( driTexHeap * heap );
-
-void driUpdateTextureLRU( driTextureObject * t );
-void driSwapOutTextureObject( driTextureObject * t );
-void driDestroyTextureObject( driTextureObject * t );
-int driAllocateTexture( driTexHeap * const * heap_array, unsigned nr_heaps,
- driTextureObject * t );
-
-GLboolean driIsTextureResident( struct gl_context * ctx,
- struct gl_texture_object * texObj );
-
-driTexHeap * driCreateTextureHeap( unsigned heap_id, void * context,
- unsigned size, unsigned alignmentShift, unsigned nr_regions,
- drmTextureRegionPtr global_regions, unsigned * global_age,
- driTextureObject * swapped_objects, unsigned texture_object_size,
- destroy_texture_object_t * destroy_tex_obj );
-void driDestroyTextureHeap( driTexHeap * heap );
-
-void
-driCalculateMaxTextureLevels( driTexHeap * const * heaps,
- unsigned nr_heaps,
- struct gl_constants * limits,
- unsigned max_bytes_per_texel,
- unsigned max_2D_size,
- unsigned max_3D_size,
- unsigned max_cube_size,
- unsigned max_rect_size,
- unsigned mipmaps_at_once,
- int all_textures_one_heap,
- int allow_larger_textures );
-
-void
-driSetTextureSwapCounterLocation( driTexHeap * heap, unsigned * counter );
-
-#define DRI_TEXMGR_DO_TEXTURE_1D 0x0001
-#define DRI_TEXMGR_DO_TEXTURE_2D 0x0002
-#define DRI_TEXMGR_DO_TEXTURE_3D 0x0004
-#define DRI_TEXMGR_DO_TEXTURE_CUBE 0x0008
-#define DRI_TEXMGR_DO_TEXTURE_RECT 0x0010
-
-void driInitTextureObjects( struct gl_context *ctx, driTextureObject * swapped,
- GLuint targets );
-
-GLboolean driValidateTextureHeaps( driTexHeap * const * texture_heaps,
- unsigned nr_heaps, const driTextureObject * swapped );
-
-extern void driCalculateTextureFirstLastLevel( driTextureObject * t );
-
-
-extern gl_format _dri_texformat_rgba8888;
-extern gl_format _dri_texformat_argb8888;
-extern gl_format _dri_texformat_rgb565;
-extern gl_format _dri_texformat_argb4444;
-extern gl_format _dri_texformat_argb1555;
-extern gl_format _dri_texformat_al88;
-extern gl_format _dri_texformat_a8;
-extern gl_format _dri_texformat_ci8;
-extern gl_format _dri_texformat_i8;
-extern gl_format _dri_texformat_l8;
-
-extern void driInitTextureFormats( void );
-
-#endif /* DRI_TEXMEM_H */
diff --git a/mesalib/src/mesa/drivers/dri/common/utils.c b/mesalib/src/mesa/drivers/dri/common/utils.c
index 54156d34a..d8656a784 100644
--- a/mesalib/src/mesa/drivers/dri/common/utils.c
+++ b/mesalib/src/mesa/drivers/dri/common/utils.c
@@ -138,124 +138,6 @@ driGetRendererString( char * buffer, const char * hardware_name,
/**
- * Utility function used by drivers to test the verions of other components.
- *
- * \param driver_name Name of the driver. Used in error messages.
- * \param driActual Actual DRI version supplied __driCreateNewScreen.
- * \param driExpected Minimum DRI version required by the driver.
- * \param ddxActual Actual DDX version supplied __driCreateNewScreen.
- * \param ddxExpected Minimum DDX minor and range of DDX major version required by the driver.
- * \param drmActual Actual DRM version supplied __driCreateNewScreen.
- * \param drmExpected Minimum DRM version required by the driver.
- *
- * \returns \c GL_TRUE if all version requirements are met. Otherwise,
- * \c GL_FALSE is returned.
- *
- * \sa __driCreateNewScreen, driCheckDriDdxDrmVersions2
- *
- * \todo
- * Now that the old \c driCheckDriDdxDrmVersions function is gone, this
- * function and \c driCheckDriDdxDrmVersions2 should be renamed.
- */
-GLboolean
-driCheckDriDdxDrmVersions3(const char * driver_name,
- const __DRIversion * driActual,
- const __DRIversion * driExpected,
- const __DRIversion * ddxActual,
- const __DRIutilversion2 * ddxExpected,
- const __DRIversion * drmActual,
- const __DRIversion * drmExpected)
-{
- static const char format[] = "%s DRI driver expected %s version %d.%d.x "
- "but got version %d.%d.%d\n";
- static const char format2[] = "%s DRI driver expected %s version %d-%d.%d.x "
- "but got version %d.%d.%d\n";
-
-
- /* Check the DRI version */
- if ( (driActual->major != driExpected->major)
- || (driActual->minor < driExpected->minor) ) {
- fprintf(stderr, format, driver_name, "DRI",
- driExpected->major, driExpected->minor,
- driActual->major, driActual->minor, driActual->patch);
- return GL_FALSE;
- }
-
- /* Check that the DDX driver version is compatible */
- if ( (ddxActual->major < ddxExpected->major_min)
- || (ddxActual->major > ddxExpected->major_max)
- || (ddxActual->minor < ddxExpected->minor) ) {
- fprintf(stderr, format2, driver_name, "DDX",
- ddxExpected->major_min, ddxExpected->major_max, ddxExpected->minor,
- ddxActual->major, ddxActual->minor, ddxActual->patch);
- return GL_FALSE;
- }
-
- /* Check that the DRM driver version is compatible */
- if ( (drmActual->major != drmExpected->major)
- || (drmActual->minor < drmExpected->minor) ) {
- fprintf(stderr, format, driver_name, "DRM",
- drmExpected->major, drmExpected->minor,
- drmActual->major, drmActual->minor, drmActual->patch);
- return GL_FALSE;
- }
-
- return GL_TRUE;
-}
-
-GLboolean
-driCheckDriDdxDrmVersions2(const char * driver_name,
- const __DRIversion * driActual,
- const __DRIversion * driExpected,
- const __DRIversion * ddxActual,
- const __DRIversion * ddxExpected,
- const __DRIversion * drmActual,
- const __DRIversion * drmExpected)
-{
- __DRIutilversion2 ddx_expected;
- ddx_expected.major_min = ddxExpected->major;
- ddx_expected.major_max = ddxExpected->major;
- ddx_expected.minor = ddxExpected->minor;
- ddx_expected.patch = ddxExpected->patch;
- return driCheckDriDdxDrmVersions3(driver_name, driActual,
- driExpected, ddxActual, & ddx_expected,
- drmActual, drmExpected);
-}
-
-GLboolean driClipRectToFramebuffer( const struct gl_framebuffer *buffer,
- GLint *x, GLint *y,
- GLsizei *width, GLsizei *height )
-{
- /* left clipping */
- if (*x < buffer->_Xmin) {
- *width -= (buffer->_Xmin - *x);
- *x = buffer->_Xmin;
- }
-
- /* right clipping */
- if (*x + *width > buffer->_Xmax)
- *width -= (*x + *width - buffer->_Xmax - 1);
-
- if (*width <= 0)
- return GL_FALSE;
-
- /* bottom clipping */
- if (*y < buffer->_Ymin) {
- *height -= (buffer->_Ymin - *y);
- *y = buffer->_Ymin;
- }
-
- /* top clipping */
- if (*y + *height > buffer->_Ymax)
- *height -= (*y + *height - buffer->_Ymax - 1);
-
- if (*height <= 0)
- return GL_FALSE;
-
- return GL_TRUE;
-}
-
-/**
* Creates a set of \c struct gl_config that a driver will expose.
*
* A set of \c struct gl_config will be created based on the supplied
diff --git a/mesalib/src/mesa/drivers/dri/common/utils.h b/mesalib/src/mesa/drivers/dri/common/utils.h
index 100d0dd51..c2302de5d 100644
--- a/mesalib/src/mesa/drivers/dri/common/utils.h
+++ b/mesalib/src/mesa/drivers/dri/common/utils.h
@@ -39,17 +39,6 @@ struct dri_debug_control {
unsigned flag;
};
-/**
- * Used to store a version which includes a major range instead of a single
- * major version number.
- */
-struct __DRIutilversionRec2 {
- int major_min; /** min allowed Major version number. */
- int major_max; /** max allowed Major version number. */
- int minor; /**< Minor version number. */
- int patch; /**< Patch-level. */
-};
-
extern void
__driUtilMessage(const char *f, ...);
@@ -59,20 +48,6 @@ extern unsigned driParseDebugString( const char * debug,
extern unsigned driGetRendererString( char * buffer,
const char * hardware_name, GLuint agp_mode );
-extern GLboolean driCheckDriDdxDrmVersions2(const char * driver_name,
- const __DRIversion * driActual, const __DRIversion * driExpected,
- const __DRIversion * ddxActual, const __DRIversion * ddxExpected,
- const __DRIversion * drmActual, const __DRIversion * drmExpected);
-
-extern GLboolean driCheckDriDdxDrmVersions3(const char * driver_name,
- const __DRIversion * driActual, const __DRIversion * driExpected,
- const __DRIversion * ddxActual, const __DRIutilversion2 * ddxExpected,
- const __DRIversion * drmActual, const __DRIversion * drmExpected);
-
-extern GLboolean driClipRectToFramebuffer( const struct gl_framebuffer *buffer,
- GLint *x, GLint *y,
- GLsizei *width, GLsizei *height );
-
struct __DRIconfigRec {
struct gl_config modes;
};
diff --git a/mesalib/src/mesa/drivers/dri/common/vblank.c b/mesalib/src/mesa/drivers/dri/common/vblank.c
deleted file mode 100644
index 3b8136844..000000000
--- a/mesalib/src/mesa/drivers/dri/common/vblank.c
+++ /dev/null
@@ -1,434 +0,0 @@
-/* -*- mode: c; c-basic-offset: 3 -*- */
-/*
- * (c) Copyright IBM Corporation 2002
- * 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
- * on the rights to use, copy, modify, merge, publish, distribute, sub
- * license, 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 NON-INFRINGEMENT. IN NO EVENT SHALL
- * VA LINUX SYSTEM, IBM AND/OR THEIR SUPPLIERS 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.
- *
- * Authors:
- * Ian Romanick <idr@us.ibm.com>
- */
-
-#include "main/glheader.h"
-#include "xf86drm.h"
-#include "main/mtypes.h"
-#include "main/macros.h"
-#include "main/dd.h"
-#include "vblank.h"
-#include "xmlpool.h"
-
-static unsigned int msc_to_vblank(__DRIdrawable * dPriv, int64_t msc)
-{
- return (unsigned int)(msc - dPriv->msc_base + dPriv->vblank_base);
-}
-
-static int64_t vblank_to_msc(__DRIdrawable * dPriv, unsigned int vblank)
-{
- return (int64_t)(vblank - dPriv->vblank_base + dPriv->msc_base);
-}
-
-
-/****************************************************************************/
-/**
- * Get the current MSC refresh counter.
- *
- * Stores the 64-bit count of vertical refreshes since some (arbitrary)
- * point in time in \c count. Unless the value wraps around, which it
- * may, it will never decrease for a given drawable.
- *
- * \warning This function is called from \c glXGetVideoSyncSGI, which expects
- * a \c count of type \c unsigned (32-bit), and \c glXGetSyncValuesOML, which
- * expects a \c count of type \c int64_t (signed 64-bit). The kernel ioctl
- * currently always returns a \c sequence of type \c unsigned.
- *
- * \param priv Pointer to the DRI screen private struct.
- * \param dPriv Pointer to the DRI drawable private struct
- * \param count Storage to hold MSC counter.
- * \return Zero is returned on success. A negative errno value
- * is returned on failure.
- */
-int driDrawableGetMSC32( __DRIscreen * priv,
- __DRIdrawable * dPriv,
- int64_t * count)
-{
- drmVBlank vbl;
- int ret;
-
- /* Don't wait for anything. Just get the current refresh count. */
-
- vbl.request.type = DRM_VBLANK_RELATIVE;
- vbl.request.sequence = 0;
- if ( dPriv && dPriv->vblFlags & VBLANK_FLAG_SECONDARY )
- vbl.request.type |= DRM_VBLANK_SECONDARY;
-
- ret = drmWaitVBlank( priv->fd, &vbl );
-
- if (dPriv) {
- *count = vblank_to_msc(dPriv, vbl.reply.sequence);
- } else {
- /* Old driver (no knowledge of drawable MSC callback) */
- *count = vbl.reply.sequence;
- }
-
- return ret;
-}
-
-/****************************************************************************/
-/**
- * Wait for a specified refresh count. This implements most of the
- * functionality of \c glXWaitForMscOML from the GLX_OML_sync_control spec.
- * Waits for the \c target_msc refresh. If that has already passed, it
- * waits until \f$(MSC \bmod divisor)\f$ is equal to \c remainder. If
- * \c target_msc is 0, use the behavior of glXWaitVideoSyncSGI(), which
- * omits the initial check against a target MSC value.
- *
- * This function is actually something of a hack. The problem is that, at
- * the time of this writing, none of the existing DRM modules support an
- * ioctl that returns a 64-bit count (at least not on 32-bit platforms).
- * However, this function exists to support a GLX function that requires
- * the use of 64-bit counts. As such, there is a little bit of ugly
- * hackery at the end of this function to make the 32-bit count act like
- * a 64-bit count. There are still some cases where this will break, but
- * I believe it catches the most common cases.
- *
- * The real solution is to provide an ioctl that uses a 64-bit count.
- *
- * \param dpy Pointer to the \c Display.
- * \param priv Pointer to the DRI drawable private.
- * \param target_msc Desired refresh count to wait for. A value of 0
- * means to use the glXWaitVideoSyncSGI() behavior.
- * \param divisor MSC divisor if \c target_msc is already reached.
- * \param remainder Desired MSC remainder if \c target_msc is already
- * reached.
- * \param msc Buffer to hold MSC when done waiting.
- *
- * \return Zero on success or \c GLX_BAD_CONTEXT on failure.
- */
-
-int driWaitForMSC32( __DRIdrawable *priv,
- int64_t target_msc, int64_t divisor, int64_t remainder,
- int64_t * msc )
-{
- drmVBlank vbl;
-
-
- if ( divisor != 0 ) {
- int64_t next = target_msc;
- int64_t r;
- int dont_wait = (target_msc == 0);
-
- do {
- /* dont_wait means we're using the glXWaitVideoSyncSGI() behavior.
- * The first time around, just get the current count and proceed
- * to the test for (MSC % divisor) == remainder.
- */
- vbl.request.type = dont_wait ? DRM_VBLANK_RELATIVE :
- DRM_VBLANK_ABSOLUTE;
- vbl.request.sequence = next ? msc_to_vblank(priv, next) : 0;
- if ( priv->vblFlags & VBLANK_FLAG_SECONDARY )
- vbl.request.type |= DRM_VBLANK_SECONDARY;
-
- if ( drmWaitVBlank( priv->driScreenPriv->fd, &vbl ) != 0 ) {
- /* FIXME: This doesn't seem like the right thing to return here.
- */
- return GLX_BAD_CONTEXT;
- }
-
- *msc = vblank_to_msc(priv, vbl.reply.sequence);
-
- if (!dont_wait && *msc == next)
- break;
- dont_wait = 0;
-
- /* Assuming the wait-done test fails, the next refresh to wait for
- * will be one that satisfies (MSC % divisor) == remainder. The
- * value (MSC - (MSC % divisor) + remainder) is the refresh value
- * closest to the current value that would satisfy the equation.
- * If this refresh has already happened, we add divisor to obtain
- * the next refresh after the current one that will satisfy it.
- */
- r = ((uint64_t)*msc % divisor);
- next = (*msc - r + remainder);
- if (next <= *msc)
- next += divisor;
-
- } while (r != remainder);
- }
- else {
- /* If the \c divisor is zero, just wait until the MSC is greater
- * than or equal to \c target_msc.
- */
-
- vbl.request.type = DRM_VBLANK_ABSOLUTE;
- vbl.request.sequence = target_msc ? msc_to_vblank(priv, target_msc) : 0;
-
- if ( priv->vblFlags & VBLANK_FLAG_SECONDARY )
- vbl.request.type |= DRM_VBLANK_SECONDARY;
-
- if ( drmWaitVBlank( priv->driScreenPriv->fd, &vbl ) != 0 ) {
- /* FIXME: This doesn't seem like the right thing to return here.
- */
- return GLX_BAD_CONTEXT;
- }
- }
-
- *msc = vblank_to_msc(priv, vbl.reply.sequence);
-
- if ( *msc < target_msc ) {
- *msc += 0x0000000100000000LL;
- }
-
- return 0;
-}
-
-
-/****************************************************************************/
-/**
- * Gets a set of default vertical-blank-wait flags based on the internal GLX
- * API version and several configuration options.
- */
-
-GLuint driGetDefaultVBlankFlags( const driOptionCache *optionCache )
-{
- GLuint flags = VBLANK_FLAG_INTERVAL;
- int vblank_mode;
-
-
- if ( driCheckOption( optionCache, "vblank_mode", DRI_ENUM ) )
- vblank_mode = driQueryOptioni( optionCache, "vblank_mode" );
- else
- vblank_mode = DRI_CONF_VBLANK_DEF_INTERVAL_1;
-
- switch (vblank_mode) {
- case DRI_CONF_VBLANK_NEVER:
- flags = 0;
- break;
- case DRI_CONF_VBLANK_DEF_INTERVAL_0:
- break;
- case DRI_CONF_VBLANK_DEF_INTERVAL_1:
- flags |= VBLANK_FLAG_THROTTLE;
- break;
- case DRI_CONF_VBLANK_ALWAYS_SYNC:
- flags |= VBLANK_FLAG_SYNC;
- break;
- }
-
- return flags;
-}
-
-
-/****************************************************************************/
-/**
- * Wrapper to call \c drmWaitVBlank. The main purpose of this function is to
- * wrap the error message logging. The error message should only be logged
- * the first time the \c drmWaitVBlank fails. If \c drmWaitVBlank is
- * successful, \c vbl_seq will be set the sequence value in the reply.
- *
- * \param vbl Pointer to drmVBlank packet describing how to wait.
- * \param vbl_seq Location to store the current refresh counter.
- * \param fd File descriptor use to call into the DRM.
- * \return Zero on success or -1 on failure.
- */
-
-static int do_wait( drmVBlank * vbl, GLuint * vbl_seq, int fd )
-{
- int ret;
-
-
- ret = drmWaitVBlank( fd, vbl );
- if ( ret != 0 ) {
- static GLboolean first_time = GL_TRUE;
-
- if ( first_time ) {
- fprintf(stderr,
- "%s: drmWaitVBlank returned %d, IRQs don't seem to be"
- " working correctly.\nTry adjusting the vblank_mode"
- " configuration parameter.\n", __FUNCTION__, ret);
- first_time = GL_FALSE;
- }
-
- return -1;
- }
-
- *vbl_seq = vbl->reply.sequence;
- return 0;
-}
-
-
-/****************************************************************************/
-/**
- * Returns the default swap interval of the given drawable.
- */
-
-static unsigned
-driGetDefaultVBlankInterval( const __DRIdrawable *priv )
-{
- if ( (priv->vblFlags & (VBLANK_FLAG_THROTTLE | VBLANK_FLAG_SYNC)) != 0 ) {
- return 1;
- }
- else {
- return 0;
- }
-}
-
-
-/****************************************************************************/
-/**
- * Sets the default swap interval when the drawable is first bound to a
- * direct rendering context.
- */
-
-void driDrawableInitVBlank( __DRIdrawable *priv )
-{
- if ( priv->swap_interval == (unsigned)-1 &&
- !( priv->vblFlags & VBLANK_FLAG_NO_IRQ ) ) {
- /* Get current vertical blank sequence */
- drmVBlank vbl;
-
- vbl.request.type = DRM_VBLANK_RELATIVE;
- if ( priv->vblFlags & VBLANK_FLAG_SECONDARY )
- vbl.request.type |= DRM_VBLANK_SECONDARY;
- vbl.request.sequence = 0;
- do_wait( &vbl, &priv->vblSeq, priv->driScreenPriv->fd );
- priv->vblank_base = priv->vblSeq;
-
- priv->swap_interval = driGetDefaultVBlankInterval( priv );
- }
-}
-
-
-/****************************************************************************/
-/**
- * Returns the current swap interval of the given drawable.
- */
-
-unsigned
-driGetVBlankInterval( const __DRIdrawable *priv )
-{
- if ( (priv->vblFlags & VBLANK_FLAG_INTERVAL) != 0 ) {
- /* this must have been initialized when the drawable was first bound
- * to a direct rendering context. */
- assert ( priv->swap_interval != (unsigned)-1 );
-
- return priv->swap_interval;
- }
- else
- return driGetDefaultVBlankInterval( priv );
-}
-
-
-/****************************************************************************/
-/**
- * Returns the current vertical blank sequence number of the given drawable.
- */
-
-void
-driGetCurrentVBlank( __DRIdrawable *priv )
-{
- drmVBlank vbl;
-
- vbl.request.type = DRM_VBLANK_RELATIVE;
- if ( priv->vblFlags & VBLANK_FLAG_SECONDARY ) {
- vbl.request.type |= DRM_VBLANK_SECONDARY;
- }
- vbl.request.sequence = 0;
-
- (void) do_wait( &vbl, &priv->vblSeq, priv->driScreenPriv->fd );
-}
-
-
-/****************************************************************************/
-/**
- * Waits for the vertical blank for use with glXSwapBuffers.
- *
- * \param missed_deadline Set to \c GL_TRUE if the MSC after waiting is later
- * than the "target" based on \c priv->vblFlags. The idea is
- * that if \c missed_deadline is set, then the application is
- * not achieving its desired framerate.
- * \return Zero on success, -1 on error.
- */
-
-int
-driWaitForVBlank( __DRIdrawable *priv, GLboolean * missed_deadline )
-{
- drmVBlank vbl;
- unsigned original_seq;
- unsigned deadline;
- unsigned interval;
- unsigned diff;
-
- *missed_deadline = GL_FALSE;
- if ( (priv->vblFlags & (VBLANK_FLAG_INTERVAL |
- VBLANK_FLAG_THROTTLE |
- VBLANK_FLAG_SYNC)) == 0 ||
- (priv->vblFlags & VBLANK_FLAG_NO_IRQ) != 0 ) {
- return 0;
- }
-
-
- /* VBLANK_FLAG_SYNC means to wait for at least one vertical blank. If
- * that flag is not set, do a fake wait for zero vertical blanking
- * periods so that we can get the current MSC.
- *
- * VBLANK_FLAG_INTERVAL and VBLANK_FLAG_THROTTLE mean to wait for at
- * least one vertical blank since the last wait. Since do_wait modifies
- * priv->vblSeq, we have to save the original value of priv->vblSeq for the
- * VBLANK_FLAG_INTERVAL / VBLANK_FLAG_THROTTLE calculation later.
- */
-
- original_seq = priv->vblSeq;
- interval = driGetVBlankInterval(priv);
- deadline = original_seq + interval;
-
- vbl.request.type = DRM_VBLANK_RELATIVE;
- if ( priv->vblFlags & VBLANK_FLAG_SECONDARY ) {
- vbl.request.type |= DRM_VBLANK_SECONDARY;
- }
- vbl.request.sequence = ((priv->vblFlags & VBLANK_FLAG_SYNC) != 0) ? 1 : 0;
-
- if ( do_wait( & vbl, &priv->vblSeq, priv->driScreenPriv->fd ) != 0 ) {
- return -1;
- }
-
- diff = priv->vblSeq - deadline;
-
- /* No need to wait again if we've already reached the target */
- if (diff <= (1 << 23)) {
- *missed_deadline = (priv->vblFlags & VBLANK_FLAG_SYNC) ? (diff > 0) :
- GL_TRUE;
- return 0;
- }
-
- /* Wait until the target vertical blank. */
- vbl.request.type = DRM_VBLANK_ABSOLUTE;
- if ( priv->vblFlags & VBLANK_FLAG_SECONDARY ) {
- vbl.request.type |= DRM_VBLANK_SECONDARY;
- }
- vbl.request.sequence = deadline;
-
- if ( do_wait( & vbl, &priv->vblSeq, priv->driScreenPriv->fd ) != 0 ) {
- return -1;
- }
-
- diff = priv->vblSeq - deadline;
- *missed_deadline = diff > 0 && diff <= (1 << 23);
-
- return 0;
-}
diff --git a/mesalib/src/mesa/drivers/dri/common/vblank.h b/mesalib/src/mesa/drivers/dri/common/vblank.h
deleted file mode 100644
index c46f4ccc3..000000000
--- a/mesalib/src/mesa/drivers/dri/common/vblank.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/* -*- mode: c; c-basic-offset: 3 -*- */
-/*
- * (c) Copyright IBM Corporation 2002
- * 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
- * on the rights to use, copy, modify, merge, publish, distribute, sub
- * license, 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 NON-INFRINGEMENT. IN NO EVENT SHALL
- * VA LINUX SYSTEM, IBM AND/OR THEIR SUPPLIERS 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.
- *
- * Authors:
- * Ian Romanick <idr@us.ibm.com>
- */
-
-#ifndef DRI_VBLANK_H
-#define DRI_VBLANK_H
-
-#include "main/context.h"
-#include "dri_util.h"
-#include "xmlconfig.h"
-
-#define VBLANK_FLAG_INTERVAL (1U << 0) /* Respect the swap_interval setting
- */
-#define VBLANK_FLAG_THROTTLE (1U << 1) /* Wait 1 refresh since last call.
- */
-#define VBLANK_FLAG_SYNC (1U << 2) /* Sync to the next refresh.
- */
-#define VBLANK_FLAG_NO_IRQ (1U << 7) /* DRM has no IRQ to wait on.
- */
-#define VBLANK_FLAG_SECONDARY (1U << 8) /* Wait for secondary vblank.
- */
-
-extern int driGetMSC32( __DRIscreen * priv, int64_t * count );
-extern int driDrawableGetMSC32( __DRIscreen * priv,
- __DRIdrawable * drawablePrivate,
- int64_t * count);
-extern int driWaitForMSC32( __DRIdrawable *priv,
- int64_t target_msc, int64_t divisor, int64_t remainder, int64_t * msc );
-extern GLuint driGetDefaultVBlankFlags( const driOptionCache *optionCache );
-extern void driDrawableInitVBlank ( __DRIdrawable *priv );
-extern unsigned driGetVBlankInterval( const __DRIdrawable *priv );
-extern void driGetCurrentVBlank( __DRIdrawable *priv );
-extern int driWaitForVBlank( __DRIdrawable *priv,
- GLboolean * missed_deadline );
-
-#undef usleep
-#include <unistd.h> /* for usleep() */
-#include <sched.h> /* for sched_yield() */
-
-#define DO_USLEEP(nr) \
- do { \
- if (0) fprintf(stderr, "%s: usleep for %u\n", __FUNCTION__, nr ); \
- if (1) usleep( nr ); \
- sched_yield(); \
- } while( 0 )
-
-#endif /* DRI_VBLANK_H */
diff --git a/mesalib/src/mesa/drivers/dri/common/xmlpool/de.po b/mesalib/src/mesa/drivers/dri/common/xmlpool/de.po
index 4ea82f901..933a05c04 100644
--- a/mesalib/src/mesa/drivers/dri/common/xmlpool/de.po
+++ b/mesalib/src/mesa/drivers/dri/common/xmlpool/de.po
@@ -7,10 +7,11 @@ msgid ""
msgstr ""
"Project-Id-Version: Mesa 6.3\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2005-04-11 23:19+0200\n"
+"POT-Creation-Date: 2011-08-30 11:40+0200\n"
"PO-Revision-Date: 2005-04-11 01:34+0200\n"
"Last-Translator: Felix Kuehling <fxkuehl@gmx.de>\n"
"Language-Team: German <de@li.org>\n"
+"Language: de\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -32,148 +33,148 @@ msgstr "Zeige Performanceboxen"
msgid "Image Quality"
msgstr "Bildqualität"
-#: t_options.h:77
+#: t_options.h:82
msgid "Texture color depth"
msgstr "Texturfarbtiefe"
-#: t_options.h:78
+#: t_options.h:83
msgid "Prefer frame buffer color depth"
msgstr "Bevorzuge Farbtiefe des Framebuffers"
-#: t_options.h:79
+#: t_options.h:84
msgid "Prefer 32 bits per texel"
msgstr "Bevorzuge 32 bits pro Texel"
-#: t_options.h:80
+#: t_options.h:85
msgid "Prefer 16 bits per texel"
msgstr "Bevorzuge 16 bits pro Texel"
-#: t_options.h:81
+#: t_options.h:86
msgid "Force 16 bits per texel"
msgstr "Erzwinge 16 bits pro Texel"
-#: t_options.h:87
+#: t_options.h:92
msgid "Initial maximum value for anisotropic texture filtering"
msgstr "Initialer Maximalwert für anisotropische Texturfilterung"
-#: t_options.h:92
+#: t_options.h:97
msgid "Forbid negative texture LOD bias"
msgstr "Verbiete negative Textur-Detailgradverschiebung"
-#: t_options.h:97
+#: t_options.h:102
msgid ""
"Enable S3TC texture compression even if software support is not available"
msgstr ""
"Aktiviere S3TC Texturkomprimierung auch wenn die nötige "
"Softwareunterstützung fehlt"
-#: t_options.h:104
+#: t_options.h:109
msgid "Initial color reduction method"
msgstr "Initiale Farbreduktionsmethode"
-#: t_options.h:105
+#: t_options.h:110
msgid "Round colors"
msgstr "Farben runden"
-#: t_options.h:106
+#: t_options.h:111
msgid "Dither colors"
msgstr "Farben rastern"
-#: t_options.h:114
+#: t_options.h:119
msgid "Color rounding method"
msgstr "Farbrundungsmethode"
-#: t_options.h:115
+#: t_options.h:120
msgid "Round color components downward"
msgstr "Farbkomponenten abrunden"
-#: t_options.h:116
+#: t_options.h:121
msgid "Round to nearest color"
msgstr "Zur ähnlichsten Farbe runden"
-#: t_options.h:125
+#: t_options.h:130
msgid "Color dithering method"
msgstr "Farbrasterungsmethode"
-#: t_options.h:126
+#: t_options.h:131
msgid "Horizontal error diffusion"
msgstr "Horizontale Fehlerstreuung"
-#: t_options.h:127
+#: t_options.h:132
msgid "Horizontal error diffusion, reset error at line start"
msgstr "Horizontale Fehlerstreuung, Fehler am Zeilenanfang zurücksetzen"
-#: t_options.h:128
+#: t_options.h:133
msgid "Ordered 2D color dithering"
msgstr "Geordnete 2D Farbrasterung"
-#: t_options.h:134
+#: t_options.h:139
msgid "Floating point depth buffer"
msgstr "Fließkomma z-Puffer"
-#: t_options.h:140
+#: t_options.h:145
msgid "Performance"
msgstr "Leistung"
-#: t_options.h:148
+#: t_options.h:153
msgid "TCL mode (Transformation, Clipping, Lighting)"
msgstr "TCL-Modus (Transformation, Clipping, Licht)"
-#: t_options.h:149
+#: t_options.h:154
msgid "Use software TCL pipeline"
msgstr "Benutze die Software-TCL-Pipeline"
-#: t_options.h:150
+#: t_options.h:155
msgid "Use hardware TCL as first TCL pipeline stage"
msgstr "Benutze Hardware TCL als erste Stufe der TCL-Pipeline"
-#: t_options.h:151
+#: t_options.h:156
msgid "Bypass the TCL pipeline"
msgstr "Umgehe die TCL-Pipeline"
-#: t_options.h:152
+#: t_options.h:157
msgid ""
"Bypass the TCL pipeline with state-based machine code generated on-the-fly"
msgstr ""
"Umgehe die TCL-Pipeline mit zur Laufzeit erzeugtem, zustandsbasiertem "
"Maschinencode"
-#: t_options.h:161
+#: t_options.h:166
msgid "Method to limit rendering latency"
msgstr "Methode zur Begrenzung der Bildverzögerung"
-#: t_options.h:162
+#: t_options.h:167
msgid "Busy waiting for the graphics hardware"
msgstr "Aktives Warten auf die Grafikhardware"
-#: t_options.h:163
+#: t_options.h:168
msgid "Sleep for brief intervals while waiting for the graphics hardware"
msgstr "Kurze Schlafintervalle beim Warten auf die Grafikhardware"
-#: t_options.h:164
+#: t_options.h:169
msgid "Let the graphics hardware emit a software interrupt and sleep"
msgstr ""
"Die Grafikhardware eine Softwareunterbrechnung erzeugen lassen und schlafen"
-#: t_options.h:174
+#: t_options.h:179
msgid "Synchronization with vertical refresh (swap intervals)"
msgstr "Synchronisation mit der vertikalen Bildwiederholung"
-#: t_options.h:175
+#: t_options.h:180
msgid "Never synchronize with vertical refresh, ignore application's choice"
msgstr ""
"Niemals mit der Bildwiederholung synchronisieren, Anweisungen der Anwendung "
"ignorieren"
-#: t_options.h:176
+#: t_options.h:181
msgid "Initial swap interval 0, obey application's choice"
msgstr "Initiales Bildinterval 0, Anweisungen der Anwendung gehorchen"
-#: t_options.h:177
+#: t_options.h:182
msgid "Initial swap interval 1, obey application's choice"
msgstr "Initiales Bildinterval 1, Anweisungen der Anwendung gehorchen"
-#: t_options.h:178
+#: t_options.h:183
msgid ""
"Always synchronize with vertical refresh, application chooses the minimum "
"swap interval"
@@ -181,60 +182,100 @@ msgstr ""
"Immer mit der Bildwiederholung synchronisieren, Anwendung wählt das minimale "
"Bildintervall"
-#: t_options.h:186
+#: t_options.h:191
msgid "Use HyperZ to boost performance"
msgstr "HyperZ zur Leistungssteigerung verwenden"
-#: t_options.h:191
+#: t_options.h:196
+msgid "A post-processing filter to cel-shade the output"
+msgstr "Nachbearbeitungsfilter für Cell Shading"
+
+#: t_options.h:201
+msgid "A post-processing filter to remove the red channel"
+msgstr "Nachbearbeitungsfilter zum Entfernen des Rotkanals"
+
+#: t_options.h:206
+msgid "A post-processing filter to remove the green channel"
+msgstr "Nachbearbeitungsfilter zum Entfernen des Grünkanals"
+
+#: t_options.h:211
+msgid "A post-processing filter to remove the blue channel"
+msgstr "Nachbearbeitungsfilter zum Entfernen des Blaukanals"
+
+#: t_options.h:216
+msgid ""
+"Morphological anti-aliasing based on Jimenez\\' MLAA. 0 to disable, 8 for "
+"default quality"
+msgstr "Morphologische Kantenglättung (Anti-Aliasing) basierend auf "
+"Jimenez\' MLAA. 0 für deaktiviert, 8 für Standardqualität"
+
+#: t_options.h:221
+msgid ""
+"Morphological anti-aliasing based on Jimenez\\' MLAA. 0 to disable, 8 for "
+"default quality. Color version, usable with 2d GL apps"
+msgstr "Morphologische Kantenglättung (Anti-Aliasing) basierend auf "
+"Jimenez\' MLAA. 0 für deaktiviert, 8 für Standardqualität. "
+"Farbversion, für 2D-Anwendungen"
+
+#: t_options.h:226
msgid "Number of texture units used"
msgstr "Anzahl der benutzten Textureinheiten"
-#: t_options.h:196
+#: t_options.h:231
msgid "Support larger textures not guaranteed to fit into graphics memory"
-msgstr "Unterstütze grosse Texturen die evtl. nicht in den Grafikspeicher passen"
+msgstr ""
+"Unterstütze grosse Texturen die evtl. nicht in den Grafikspeicher passen"
-#: t_options.h:197
+#: t_options.h:232
msgid "No"
msgstr "Nein"
-#: t_options.h:198
+#: t_options.h:233
msgid "At least 1 texture must fit under worst-case assumptions"
msgstr "Mindestens 1 Textur muss auch im schlechtesten Fall Platz haben"
-#: t_options.h:199
+#: t_options.h:234
msgid "Announce hardware limits"
msgstr "Benutze Hardware-Limits"
-#: t_options.h:205
+#: t_options.h:240
msgid "Texture filtering quality vs. speed, AKA “brilinear” texture filtering"
msgstr ""
"Texturfilterqualität versus -geschwindigkeit, auch bekannt als „brilineare“ "
"Texturfilterung"
-#: t_options.h:213
+#: t_options.h:248
msgid "Used types of texture memory"
msgstr "Benutzte Arten von Texturspeicher"
-#: t_options.h:214
+#: t_options.h:249
msgid "All available memory"
msgstr "Aller verfügbarer Speicher"
-#: t_options.h:215
+#: t_options.h:250
msgid "Only card memory (if available)"
msgstr "Nur Grafikspeicher (falls verfügbar)"
-#: t_options.h:216
+#: t_options.h:251
msgid "Only GART (AGP/PCIE) memory (if available)"
msgstr "Nur GART-Speicher (AGP/PCIE) (falls verfügbar)"
-#: t_options.h:224
+#: t_options.h:259
msgid "Features that are not hardware-accelerated"
msgstr "Funktionalität, die nicht hardwarebeschleunigt ist"
-#: t_options.h:228
+#: t_options.h:263
msgid "Enable extension GL_ARB_vertex_program"
msgstr "Erweiterung GL_ARB_vertex_program aktivieren"
-#: t_options.h:233
+#: t_options.h:268
msgid "Enable extension GL_NV_vertex_program"
msgstr "Erweiterung GL_NV_vertex_program aktivieren"
+
+#: t_options.h:273
+msgid "Enable flushing batchbuffer after each draw call"
+msgstr "Aktiviere sofortige Leerung des Stapelpuffers nach jedem Zeichenaufruf"
+
+#: t_options.h:278
+msgid "Enable flushing GPU caches with each draw call"
+msgstr "Aktiviere sofortige Leerung der GPU-Zwischenspeicher mit jedem Zeichenaufruf"
diff --git a/mesalib/src/mesa/drivers/dri/swrast/swrast.c b/mesalib/src/mesa/drivers/dri/swrast/swrast.c
index 75d25253e..bc115e8cf 100644
--- a/mesalib/src/mesa/drivers/dri/swrast/swrast.c
+++ b/mesalib/src/mesa/drivers/dri/swrast/swrast.c
@@ -291,7 +291,7 @@ swrast_alloc_front_storage(struct gl_context *ctx, struct gl_renderbuffer *rb,
rb->Data = NULL;
rb->Width = width;
rb->Height = height;
-
+ rb->RowStride = width;
xrb->pitch = bytes_per_line(width * xrb->bpp, 32);
return GL_TRUE;
@@ -315,7 +315,8 @@ swrast_alloc_back_storage(struct gl_context *ctx, struct gl_renderbuffer *rb,
}
static struct swrast_renderbuffer *
-swrast_new_renderbuffer(const struct gl_config *visual, GLboolean front)
+swrast_new_renderbuffer(const struct gl_config *visual, __DRIdrawable *dPriv,
+ GLboolean front)
{
struct swrast_renderbuffer *xrb = calloc(1, sizeof *xrb);
GLuint pixel_format;
@@ -329,6 +330,7 @@ swrast_new_renderbuffer(const struct gl_config *visual, GLboolean front)
pixel_format = choose_pixel_format(visual);
+ xrb->dPriv = dPriv;
xrb->Base.Delete = swrast_delete_renderbuffer;
if (front) {
xrb->Base.AllocStorage = swrast_alloc_front_storage;
@@ -375,6 +377,78 @@ swrast_new_renderbuffer(const struct gl_config *visual, GLboolean front)
return xrb;
}
+static void
+swrast_map_renderbuffer(struct gl_context *ctx,
+ struct gl_renderbuffer *rb,
+ GLuint x, GLuint y, GLuint w, GLuint h,
+ GLbitfield mode,
+ GLubyte **out_map,
+ GLint *out_stride)
+{
+ struct swrast_renderbuffer *xrb = swrast_renderbuffer(rb);
+ GLubyte *map = rb->Data;
+ int cpp = _mesa_get_format_bytes(rb->Format);
+ int stride = rb->RowStride * cpp;
+
+ if (rb->AllocStorage == swrast_alloc_front_storage) {
+ __DRIdrawable *dPriv = xrb->dPriv;
+ __DRIscreen *sPriv = dPriv->driScreenPriv;
+
+ xrb->map_mode = mode;
+ xrb->map_x = x;
+ xrb->map_y = y;
+ xrb->map_w = w;
+ xrb->map_h = h;
+
+ stride = w * cpp;
+ rb->Data = malloc(h * stride);
+
+ sPriv->swrast_loader->getImage(dPriv, x, y, w, h,
+ (char *)rb->Data,
+ dPriv->loaderPrivate);
+
+ *out_map = rb->Data;
+ *out_stride = stride;
+ return;
+ }
+
+ ASSERT(rb->Data);
+
+ if (rb->AllocStorage == swrast_alloc_back_storage) {
+ map += (rb->Height - 1) * stride;
+ stride = -stride;
+ }
+
+ map += y * stride;
+ map += x * cpp;
+
+ *out_map = map;
+ *out_stride = stride;
+}
+
+static void
+swrast_unmap_renderbuffer(struct gl_context *ctx,
+ struct gl_renderbuffer *rb)
+{
+ struct swrast_renderbuffer *xrb = swrast_renderbuffer(rb);
+
+ if (rb->AllocStorage == swrast_alloc_front_storage) {
+ __DRIdrawable *dPriv = xrb->dPriv;
+ __DRIscreen *sPriv = dPriv->driScreenPriv;
+
+ if (xrb->map_mode & GL_MAP_WRITE_BIT) {
+ sPriv->swrast_loader->putImage(dPriv, __DRI_SWRAST_IMAGE_OP_DRAW,
+ xrb->map_x, xrb->map_y,
+ xrb->map_w, xrb->map_h,
+ rb->Data,
+ dPriv->loaderPrivate);
+ }
+
+ free(rb->Data);
+ rb->Data = NULL;
+ }
+}
+
static GLboolean
dri_create_buffer(__DRIscreen * sPriv,
__DRIdrawable * dPriv,
@@ -406,12 +480,12 @@ dri_create_buffer(__DRIscreen * sPriv,
_mesa_initialize_window_framebuffer(fb, visual);
/* add front renderbuffer */
- frontrb = swrast_new_renderbuffer(visual, GL_TRUE);
+ frontrb = swrast_new_renderbuffer(visual, dPriv, GL_TRUE);
_mesa_add_renderbuffer(fb, BUFFER_FRONT_LEFT, &frontrb->Base);
/* add back renderbuffer */
if (visual->doubleBufferMode) {
- backrb = swrast_new_renderbuffer(visual, GL_FALSE);
+ backrb = swrast_new_renderbuffer(visual, dPriv, GL_FALSE);
_mesa_add_renderbuffer(fb, BUFFER_BACK_LEFT, &backrb->Base);
}
@@ -576,6 +650,8 @@ swrast_init_driver_functions(struct dd_function_table *driver)
driver->GetBufferSize = NULL;
driver->Viewport = viewport;
driver->ChooseTextureFormat = swrastChooseTextureFormat;
+ driver->MapRenderbuffer = swrast_map_renderbuffer;
+ driver->UnmapRenderbuffer = swrast_unmap_renderbuffer;
}
static const char *es2_extensions[] = {
diff --git a/mesalib/src/mesa/drivers/dri/swrast/swrast_priv.h b/mesalib/src/mesa/drivers/dri/swrast/swrast_priv.h
index 4c3c9830f..50e6a83d5 100644
--- a/mesalib/src/mesa/drivers/dri/swrast/swrast_priv.h
+++ b/mesalib/src/mesa/drivers/dri/swrast/swrast_priv.h
@@ -1,138 +1,143 @@
-/*
- * Mesa 3-D graphics library
- * Version: 7.1
- *
- * Copyright (C) 1999-2008 Brian Paul All Rights Reserved.
- * Copyright 2008, 2010 George Sapountzis <gsapountzis@gmail.com>
- *
- * 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 _SWRAST_PRIV_H
-#define _SWRAST_PRIV_H
-
-#include <GL/gl.h>
-#include <GL/internal/dri_interface.h>
-#include "main/mtypes.h"
-#include "drisw_util.h"
-
-
-/**
- * Debugging
- */
-#define DEBUG_CORE 0
-#define DEBUG_SPAN 0
-
-#if DEBUG_CORE
-#define TRACE printf("--> %s\n", __FUNCTION__)
-#else
-#define TRACE
-#endif
-
-#if DEBUG_SPAN
-#define TRACE_SPAN printf("--> %s\n", __FUNCTION__)
-#else
-#define TRACE_SPAN
-#endif
-
-
-/**
- * Data types
- */
-struct dri_context
-{
- /* mesa, base class, must be first */
- struct gl_context Base;
-
- /* dri */
- __DRIcontext *cPriv;
-};
-
-static INLINE struct dri_context *
-dri_context(__DRIcontext * driContextPriv)
-{
- return (struct dri_context *)driContextPriv->driverPrivate;
-}
-
-static INLINE struct dri_context *
-swrast_context(struct gl_context *ctx)
-{
- return (struct dri_context *) ctx;
-}
-
-struct dri_drawable
-{
- /* mesa, base class, must be first */
- struct gl_framebuffer Base;
-
- /* dri */
- __DRIdrawable *dPriv;
-
- /* scratch row for optimized front-buffer rendering */
- char *row;
-};
-
-static INLINE struct dri_drawable *
-dri_drawable(__DRIdrawable * driDrawPriv)
-{
- return (struct dri_drawable *)driDrawPriv->driverPrivate;
-}
-
-static INLINE struct dri_drawable *
-swrast_drawable(struct gl_framebuffer *fb)
-{
- return (struct dri_drawable *) fb;
-}
-
-struct swrast_renderbuffer {
- struct gl_renderbuffer Base;
-
- /* renderbuffer pitch (in bytes) */
- GLuint pitch;
- /* bits per pixel of storage */
- GLuint bpp;
-};
-
-static INLINE struct swrast_renderbuffer *
-swrast_renderbuffer(struct gl_renderbuffer *rb)
-{
- return (struct swrast_renderbuffer *) rb;
-}
-
-
-/**
- * Pixel formats we support
- */
-#define PF_A8R8G8B8 1 /**< 32bpp TrueColor: 8-A, 8-R, 8-G, 8-B bits */
-#define PF_R5G6B5 2 /**< 16bpp TrueColor: 5-R, 6-G, 5-B bits */
-#define PF_R3G3B2 3 /**< 8bpp TrueColor: 3-R, 3-G, 2-B bits */
-#define PF_X8R8G8B8 4 /**< 32bpp TrueColor: 8-R, 8-G, 8-B bits */
-
-
-/* swrast_span.c */
-
-extern void
-swrast_set_span_funcs_back(struct swrast_renderbuffer *xrb,
- GLuint pixel_format);
-
-extern void
-swrast_set_span_funcs_front(struct swrast_renderbuffer *xrb,
- GLuint pixel_format);
-
-#endif /* _SWRAST_PRIV_H_ */
+/*
+ * Mesa 3-D graphics library
+ * Version: 7.1
+ *
+ * Copyright (C) 1999-2008 Brian Paul All Rights Reserved.
+ * Copyright 2008, 2010 George Sapountzis <gsapountzis@gmail.com>
+ *
+ * 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 _SWRAST_PRIV_H
+#define _SWRAST_PRIV_H
+
+#include <GL/gl.h>
+#include <GL/internal/dri_interface.h>
+#include "main/mtypes.h"
+#include "drisw_util.h"
+
+
+/**
+ * Debugging
+ */
+#define DEBUG_CORE 0
+#define DEBUG_SPAN 0
+
+#if DEBUG_CORE
+#define TRACE printf("--> %s\n", __FUNCTION__)
+#else
+#define TRACE
+#endif
+
+#if DEBUG_SPAN
+#define TRACE_SPAN printf("--> %s\n", __FUNCTION__)
+#else
+#define TRACE_SPAN
+#endif
+
+
+/**
+ * Data types
+ */
+struct dri_context
+{
+ /* mesa, base class, must be first */
+ struct gl_context Base;
+
+ /* dri */
+ __DRIcontext *cPriv;
+};
+
+static INLINE struct dri_context *
+dri_context(__DRIcontext * driContextPriv)
+{
+ return (struct dri_context *)driContextPriv->driverPrivate;
+}
+
+static INLINE struct dri_context *
+swrast_context(struct gl_context *ctx)
+{
+ return (struct dri_context *) ctx;
+}
+
+struct dri_drawable
+{
+ /* mesa, base class, must be first */
+ struct gl_framebuffer Base;
+
+ /* dri */
+ __DRIdrawable *dPriv;
+
+ /* scratch row for optimized front-buffer rendering */
+ char *row;
+};
+
+static INLINE struct dri_drawable *
+dri_drawable(__DRIdrawable * driDrawPriv)
+{
+ return (struct dri_drawable *)driDrawPriv->driverPrivate;
+}
+
+static INLINE struct dri_drawable *
+swrast_drawable(struct gl_framebuffer *fb)
+{
+ return (struct dri_drawable *) fb;
+}
+
+struct swrast_renderbuffer {
+ struct gl_renderbuffer Base;
+ __DRIdrawable *dPriv;
+
+ /* GL_MAP_*_BIT, used for mapping of front buffer. */
+ GLbitfield map_mode;
+ int map_x, map_y, map_w, map_h;
+
+ /* renderbuffer pitch (in bytes) */
+ GLuint pitch;
+ /* bits per pixel of storage */
+ GLuint bpp;
+};
+
+static INLINE struct swrast_renderbuffer *
+swrast_renderbuffer(struct gl_renderbuffer *rb)
+{
+ return (struct swrast_renderbuffer *) rb;
+}
+
+
+/**
+ * Pixel formats we support
+ */
+#define PF_A8R8G8B8 1 /**< 32bpp TrueColor: 8-A, 8-R, 8-G, 8-B bits */
+#define PF_R5G6B5 2 /**< 16bpp TrueColor: 5-R, 6-G, 5-B bits */
+#define PF_R3G3B2 3 /**< 8bpp TrueColor: 3-R, 3-G, 2-B bits */
+#define PF_X8R8G8B8 4 /**< 32bpp TrueColor: 8-R, 8-G, 8-B bits */
+
+
+/* swrast_span.c */
+
+extern void
+swrast_set_span_funcs_back(struct swrast_renderbuffer *xrb,
+ GLuint pixel_format);
+
+extern void
+swrast_set_span_funcs_front(struct swrast_renderbuffer *xrb,
+ GLuint pixel_format);
+
+#endif /* _SWRAST_PRIV_H_ */
diff --git a/mesalib/src/mesa/drivers/windows/gdi/wgl.c b/mesalib/src/mesa/drivers/windows/gdi/wgl.c
index 33baabee6..61850c26f 100644
--- a/mesalib/src/mesa/drivers/windows/gdi/wgl.c
+++ b/mesalib/src/mesa/drivers/windows/gdi/wgl.c
@@ -335,9 +335,13 @@ WINGDIAPI BOOL GLAPIENTRY wglSetPixelFormat(HDC hdc,int iPixelFormat,
const PIXELFORMATDESCRIPTOR *ppfd)
{
(void) hdc;
-
- if(iPixelFormat < 1 || iPixelFormat > npfd ||
- ppfd->nSize != sizeof(PIXELFORMATDESCRIPTOR)) {
+
+ /* SetPixelFormat (hence wglSetPixelFormat) must not touch ppfd, per
+ * http://msdn.microsoft.com/en-us/library/dd369049(v=vs.85).aspx
+ */
+ (void) ppfd;
+
+ if(iPixelFormat < 1 || iPixelFormat > npfd) {
SetLastError(0);
return(FALSE);
}
diff --git a/mesalib/src/mesa/main/APIspec.xml b/mesalib/src/mesa/main/APIspec.xml
index a92bb437c..99c726c83 100644
--- a/mesalib/src/mesa/main/APIspec.xml
+++ b/mesalib/src/mesa/main/APIspec.xml
@@ -288,6 +288,7 @@
<value name="GL_TEXTURE_CUBE_MAP" category="GLES2.0"/>
<value name="GL_TEXTURE_CUBE_MAP_OES" category="OES_texture_cube_map"/>
<value name="GL_TEXTURE_3D_OES" category="OES_texture_3D"/>
+ <value name="GL_TEXTURE_EXTERNAL_OES" category="OES_EGL_image_external"/>
</desc>
<desc name="pname">
@@ -827,6 +828,7 @@
<value name="GL_MATRIX_PALETTE_OES" category="OES_matrix_palette"/>
<value name="GL_TEXTURE_CUBE_MAP_OES" category="OES_texture_cube_map"/>
<value name="GL_TEXTURE_GEN_STR_OES" category="OES_texture_cube_map"/>
+ <value name="GL_TEXTURE_EXTERNAL_OES" category="OES_EGL_image_external"/>
</desc>
<desc name="cap" category="GLES2.0">
@@ -884,6 +886,7 @@
<value name="GL_MATRIX_PALETTE_OES" category="OES_matrix_palette"/>
<value name="GL_TEXTURE_CUBE_MAP_OES" category="OES_texture_cube_map"/>
<value name="GL_TEXTURE_GEN_STR_OES" category="OES_texture_cube_map"/>
+ <value name="GL_TEXTURE_EXTERNAL_OES" category="OES_EGL_image_external"/>
</desc>
<desc name="cap" category="GLES2.0">
@@ -1477,6 +1480,7 @@
<value name="GL_TEXTURE_CUBE_MAP" category="GLES2.0"/>
<value name="GL_TEXTURE_CUBE_MAP_OES" category="OES_texture_cube_map"/>
<value name="GL_TEXTURE_3D_OES" category="OES_texture_3D"/>
+ <value name="GL_TEXTURE_EXTERNAL_OES" category="OES_EGL_image_external"/>
</desc>
<desc name="pname">
@@ -1544,6 +1548,7 @@
<value name="GL_MATRIX_INDEX_ARRAY_OES" category="OES_matrix_palette"/>
<value name="GL_WEIGHT_ARRAY_OES" category="OES_matrix_palette"/>
<value name="GL_POINT_SIZE_ARRAY_OES" category="OES_point_size_array"/>
+ <value name="GL_TEXTURE_EXTERNAL_OES" category="OES_EGL_image_external"/>
</desc>
<desc name="cap" category="GLES2.0">
@@ -2071,6 +2076,7 @@
<value name="GL_TEXTURE_CUBE_MAP" category="GLES2.0"/>
<value name="GL_TEXTURE_CUBE_MAP_OES" category="OES_texture_cube_map"/>
<value name="GL_TEXTURE_3D_OES" category="OES_texture_3D"/>
+ <value name="GL_TEXTURE_EXTERNAL_OES" category="OES_EGL_image_external"/>
</desc>
</template>
@@ -3493,6 +3499,7 @@
<desc name="target">
<value name="GL_TEXTURE_2D"/>
+ <value name="GL_TEXTURE_EXTERNAL_OES" category="OES_EGL_image_external"/>
</desc>
</template>
@@ -3830,6 +3837,7 @@
<category name="EXT_blend_minmax"/>
<category name="EXT_multi_draw_arrays"/>
<category name="OES_EGL_image"/>
+ <category name="OES_EGL_image_external"/>
<category name="OES_matrix_palette"/>
@@ -4118,6 +4126,7 @@
<category name="EXT_blend_minmax"/>
<category name="EXT_multi_draw_arrays"/>
<category name="OES_EGL_image"/>
+ <category name="OES_EGL_image_external"/>
<category name="NV_draw_buffers"/>
<function name="DrawBuffersNV" template="DrawBuffers"/>
diff --git a/mesalib/src/mesa/main/api_exec.c b/mesalib/src/mesa/main/api_exec.c
index 1bc39db55..26fd37e63 100644
--- a/mesalib/src/mesa/main/api_exec.c
+++ b/mesalib/src/mesa/main/api_exec.c
@@ -90,6 +90,7 @@
#include "texobj.h"
#include "texparam.h"
#include "texstate.h"
+#include "texstorage.h"
#include "texturebarrier.h"
#include "transformfeedback.h"
#include "mtypes.h"
@@ -742,6 +743,14 @@ _mesa_create_exec_table(void)
/* GL_ARB_texture_buffer_object */
SET_TexBufferARB(exec, _mesa_TexBuffer);
+ /* GL_ARB_texture_storage */
+ SET_TexStorage1D(exec, _mesa_TexStorage1D);
+ SET_TexStorage2D(exec, _mesa_TexStorage2D);
+ SET_TexStorage3D(exec, _mesa_TexStorage3D);
+ SET_TextureStorage1DEXT(exec, _mesa_TextureStorage1DEXT);
+ SET_TextureStorage2DEXT(exec, _mesa_TextureStorage2DEXT);
+ SET_TextureStorage3DEXT(exec, _mesa_TextureStorage3DEXT);
+
#if FEATURE_ARB_sampler_objects
_mesa_init_sampler_object_dispatch(exec);
#endif
diff --git a/mesalib/src/mesa/main/arrayobj.c b/mesalib/src/mesa/main/arrayobj.c
index 78f56ab00..1283940f7 100644
--- a/mesalib/src/mesa/main/arrayobj.c
+++ b/mesalib/src/mesa/main/arrayobj.c
@@ -208,6 +208,7 @@ init_array(struct gl_context *ctx,
array->Ptr = NULL;
array->Enabled = GL_FALSE;
array->Normalized = GL_FALSE;
+ array->Integer = GL_FALSE;
array->_ElementSize = size * _mesa_sizeof_type(type);
#if FEATURE_ARB_vertex_buffer_object
/* Vertex array buffers */
diff --git a/mesalib/src/mesa/main/attrib.c b/mesalib/src/mesa/main/attrib.c
index 1dc1c1b97..f368eecc1 100644
--- a/mesalib/src/mesa/main/attrib.c
+++ b/mesalib/src/mesa/main/attrib.c
@@ -764,6 +764,8 @@ pop_texture_group(struct gl_context *ctx, struct texture_state *texstate)
}
else if (obj->Target == GL_TEXTURE_BUFFER)
continue;
+ else if (obj->Target == GL_TEXTURE_EXTERNAL_OES)
+ continue;
target = obj->Target;
diff --git a/mesalib/src/mesa/main/dd.h b/mesalib/src/mesa/main/dd.h
index 8607008de..9842540da 100644
--- a/mesalib/src/mesa/main/dd.h
+++ b/mesalib/src/mesa/main/dd.h
@@ -514,6 +514,24 @@ struct dd_function_table {
/** Unmap texture images from user space */
void (*UnmapTexture)( struct gl_context *ctx, struct gl_texture_object *tObj );
+ /** For GL_ARB_texture_storage. Allocate memory for whole mipmap stack.
+ * All the gl_texture_images in the texture object will have their
+ * dimensions, format, etc. initialized already.
+ */
+ GLboolean (*AllocTextureStorage)(struct gl_context *ctx,
+ struct gl_texture_object *texObj,
+ GLsizei levels, GLsizei width,
+ GLsizei height, GLsizei depth);
+
+ void (*MapRenderbuffer)(struct gl_context *ctx,
+ struct gl_renderbuffer *rb,
+ GLuint x, GLuint y, GLuint w, GLuint h,
+ GLbitfield mode,
+ GLubyte **mapOut, GLint *rowStrideOut);
+
+ void (*UnmapRenderbuffer)(struct gl_context *ctx,
+ struct gl_renderbuffer *rb);
+
/**
* Note: no context argument. This function doesn't initially look
* like it belongs here, except that the driver is the only entity
diff --git a/mesalib/src/mesa/main/debug.c b/mesalib/src/mesa/main/debug.c
index 6e695d147..72aa8cb4f 100644
--- a/mesalib/src/mesa/main/debug.c
+++ b/mesalib/src/mesa/main/debug.c
@@ -50,7 +50,8 @@ tex_target_name(GLenum tgt)
{ GL_TEXTURE_CUBE_MAP, "GL_TEXTURE_CUBE_MAP" },
{ GL_TEXTURE_RECTANGLE, "GL_TEXTURE_RECTANGLE" },
{ GL_TEXTURE_1D_ARRAY_EXT, "GL_TEXTURE_1D_ARRAY" },
- { GL_TEXTURE_2D_ARRAY_EXT, "GL_TEXTURE_2D_ARRAY" }
+ { GL_TEXTURE_2D_ARRAY_EXT, "GL_TEXTURE_2D_ARRAY" },
+ { GL_TEXTURE_EXTERNAL_OES, "GL_TEXTURE_EXTERNAL_OES" }
};
GLuint i;
for (i = 0; i < Elements(tex_targets); i++) {
diff --git a/mesalib/src/mesa/main/dispatch.h b/mesalib/src/mesa/main/dispatch.h
index d5e05daa5..4e21b2d6e 100644
--- a/mesalib/src/mesa/main/dispatch.h
+++ b/mesalib/src/mesa/main/dispatch.h
@@ -59,7 +59,7 @@
} while(0)
/* total number of offsets below */
-#define _gloffset_COUNT 967
+#define _gloffset_COUNT 973
#define _gloffset_NewList 0
#define _gloffset_EndList 1
@@ -749,292 +749,298 @@
#define _gloffset_GetnUniformivARB 682
#define _gloffset_GetnUniformuivARB 683
#define _gloffset_ReadnPixelsARB 684
-#define _gloffset_PolygonOffsetEXT 685
-#define _gloffset_GetPixelTexGenParameterfvSGIS 686
-#define _gloffset_GetPixelTexGenParameterivSGIS 687
-#define _gloffset_PixelTexGenParameterfSGIS 688
-#define _gloffset_PixelTexGenParameterfvSGIS 689
-#define _gloffset_PixelTexGenParameteriSGIS 690
-#define _gloffset_PixelTexGenParameterivSGIS 691
-#define _gloffset_SampleMaskSGIS 692
-#define _gloffset_SamplePatternSGIS 693
-#define _gloffset_ColorPointerEXT 694
-#define _gloffset_EdgeFlagPointerEXT 695
-#define _gloffset_IndexPointerEXT 696
-#define _gloffset_NormalPointerEXT 697
-#define _gloffset_TexCoordPointerEXT 698
-#define _gloffset_VertexPointerEXT 699
-#define _gloffset_PointParameterfEXT 700
-#define _gloffset_PointParameterfvEXT 701
-#define _gloffset_LockArraysEXT 702
-#define _gloffset_UnlockArraysEXT 703
-#define _gloffset_SecondaryColor3bEXT 704
-#define _gloffset_SecondaryColor3bvEXT 705
-#define _gloffset_SecondaryColor3dEXT 706
-#define _gloffset_SecondaryColor3dvEXT 707
-#define _gloffset_SecondaryColor3fEXT 708
-#define _gloffset_SecondaryColor3fvEXT 709
-#define _gloffset_SecondaryColor3iEXT 710
-#define _gloffset_SecondaryColor3ivEXT 711
-#define _gloffset_SecondaryColor3sEXT 712
-#define _gloffset_SecondaryColor3svEXT 713
-#define _gloffset_SecondaryColor3ubEXT 714
-#define _gloffset_SecondaryColor3ubvEXT 715
-#define _gloffset_SecondaryColor3uiEXT 716
-#define _gloffset_SecondaryColor3uivEXT 717
-#define _gloffset_SecondaryColor3usEXT 718
-#define _gloffset_SecondaryColor3usvEXT 719
-#define _gloffset_SecondaryColorPointerEXT 720
-#define _gloffset_MultiDrawArraysEXT 721
-#define _gloffset_MultiDrawElementsEXT 722
-#define _gloffset_FogCoordPointerEXT 723
-#define _gloffset_FogCoorddEXT 724
-#define _gloffset_FogCoorddvEXT 725
-#define _gloffset_FogCoordfEXT 726
-#define _gloffset_FogCoordfvEXT 727
-#define _gloffset_PixelTexGenSGIX 728
-#define _gloffset_BlendFuncSeparateEXT 729
-#define _gloffset_FlushVertexArrayRangeNV 730
-#define _gloffset_VertexArrayRangeNV 731
-#define _gloffset_CombinerInputNV 732
-#define _gloffset_CombinerOutputNV 733
-#define _gloffset_CombinerParameterfNV 734
-#define _gloffset_CombinerParameterfvNV 735
-#define _gloffset_CombinerParameteriNV 736
-#define _gloffset_CombinerParameterivNV 737
-#define _gloffset_FinalCombinerInputNV 738
-#define _gloffset_GetCombinerInputParameterfvNV 739
-#define _gloffset_GetCombinerInputParameterivNV 740
-#define _gloffset_GetCombinerOutputParameterfvNV 741
-#define _gloffset_GetCombinerOutputParameterivNV 742
-#define _gloffset_GetFinalCombinerInputParameterfvNV 743
-#define _gloffset_GetFinalCombinerInputParameterivNV 744
-#define _gloffset_ResizeBuffersMESA 745
-#define _gloffset_WindowPos2dMESA 746
-#define _gloffset_WindowPos2dvMESA 747
-#define _gloffset_WindowPos2fMESA 748
-#define _gloffset_WindowPos2fvMESA 749
-#define _gloffset_WindowPos2iMESA 750
-#define _gloffset_WindowPos2ivMESA 751
-#define _gloffset_WindowPos2sMESA 752
-#define _gloffset_WindowPos2svMESA 753
-#define _gloffset_WindowPos3dMESA 754
-#define _gloffset_WindowPos3dvMESA 755
-#define _gloffset_WindowPos3fMESA 756
-#define _gloffset_WindowPos3fvMESA 757
-#define _gloffset_WindowPos3iMESA 758
-#define _gloffset_WindowPos3ivMESA 759
-#define _gloffset_WindowPos3sMESA 760
-#define _gloffset_WindowPos3svMESA 761
-#define _gloffset_WindowPos4dMESA 762
-#define _gloffset_WindowPos4dvMESA 763
-#define _gloffset_WindowPos4fMESA 764
-#define _gloffset_WindowPos4fvMESA 765
-#define _gloffset_WindowPos4iMESA 766
-#define _gloffset_WindowPos4ivMESA 767
-#define _gloffset_WindowPos4sMESA 768
-#define _gloffset_WindowPos4svMESA 769
-#define _gloffset_MultiModeDrawArraysIBM 770
-#define _gloffset_MultiModeDrawElementsIBM 771
-#define _gloffset_DeleteFencesNV 772
-#define _gloffset_FinishFenceNV 773
-#define _gloffset_GenFencesNV 774
-#define _gloffset_GetFenceivNV 775
-#define _gloffset_IsFenceNV 776
-#define _gloffset_SetFenceNV 777
-#define _gloffset_TestFenceNV 778
-#define _gloffset_AreProgramsResidentNV 779
-#define _gloffset_BindProgramNV 780
-#define _gloffset_DeleteProgramsNV 781
-#define _gloffset_ExecuteProgramNV 782
-#define _gloffset_GenProgramsNV 783
-#define _gloffset_GetProgramParameterdvNV 784
-#define _gloffset_GetProgramParameterfvNV 785
-#define _gloffset_GetProgramStringNV 786
-#define _gloffset_GetProgramivNV 787
-#define _gloffset_GetTrackMatrixivNV 788
-#define _gloffset_GetVertexAttribPointervNV 789
-#define _gloffset_GetVertexAttribdvNV 790
-#define _gloffset_GetVertexAttribfvNV 791
-#define _gloffset_GetVertexAttribivNV 792
-#define _gloffset_IsProgramNV 793
-#define _gloffset_LoadProgramNV 794
-#define _gloffset_ProgramParameters4dvNV 795
-#define _gloffset_ProgramParameters4fvNV 796
-#define _gloffset_RequestResidentProgramsNV 797
-#define _gloffset_TrackMatrixNV 798
-#define _gloffset_VertexAttrib1dNV 799
-#define _gloffset_VertexAttrib1dvNV 800
-#define _gloffset_VertexAttrib1fNV 801
-#define _gloffset_VertexAttrib1fvNV 802
-#define _gloffset_VertexAttrib1sNV 803
-#define _gloffset_VertexAttrib1svNV 804
-#define _gloffset_VertexAttrib2dNV 805
-#define _gloffset_VertexAttrib2dvNV 806
-#define _gloffset_VertexAttrib2fNV 807
-#define _gloffset_VertexAttrib2fvNV 808
-#define _gloffset_VertexAttrib2sNV 809
-#define _gloffset_VertexAttrib2svNV 810
-#define _gloffset_VertexAttrib3dNV 811
-#define _gloffset_VertexAttrib3dvNV 812
-#define _gloffset_VertexAttrib3fNV 813
-#define _gloffset_VertexAttrib3fvNV 814
-#define _gloffset_VertexAttrib3sNV 815
-#define _gloffset_VertexAttrib3svNV 816
-#define _gloffset_VertexAttrib4dNV 817
-#define _gloffset_VertexAttrib4dvNV 818
-#define _gloffset_VertexAttrib4fNV 819
-#define _gloffset_VertexAttrib4fvNV 820
-#define _gloffset_VertexAttrib4sNV 821
-#define _gloffset_VertexAttrib4svNV 822
-#define _gloffset_VertexAttrib4ubNV 823
-#define _gloffset_VertexAttrib4ubvNV 824
-#define _gloffset_VertexAttribPointerNV 825
-#define _gloffset_VertexAttribs1dvNV 826
-#define _gloffset_VertexAttribs1fvNV 827
-#define _gloffset_VertexAttribs1svNV 828
-#define _gloffset_VertexAttribs2dvNV 829
-#define _gloffset_VertexAttribs2fvNV 830
-#define _gloffset_VertexAttribs2svNV 831
-#define _gloffset_VertexAttribs3dvNV 832
-#define _gloffset_VertexAttribs3fvNV 833
-#define _gloffset_VertexAttribs3svNV 834
-#define _gloffset_VertexAttribs4dvNV 835
-#define _gloffset_VertexAttribs4fvNV 836
-#define _gloffset_VertexAttribs4svNV 837
-#define _gloffset_VertexAttribs4ubvNV 838
-#define _gloffset_GetTexBumpParameterfvATI 839
-#define _gloffset_GetTexBumpParameterivATI 840
-#define _gloffset_TexBumpParameterfvATI 841
-#define _gloffset_TexBumpParameterivATI 842
-#define _gloffset_AlphaFragmentOp1ATI 843
-#define _gloffset_AlphaFragmentOp2ATI 844
-#define _gloffset_AlphaFragmentOp3ATI 845
-#define _gloffset_BeginFragmentShaderATI 846
-#define _gloffset_BindFragmentShaderATI 847
-#define _gloffset_ColorFragmentOp1ATI 848
-#define _gloffset_ColorFragmentOp2ATI 849
-#define _gloffset_ColorFragmentOp3ATI 850
-#define _gloffset_DeleteFragmentShaderATI 851
-#define _gloffset_EndFragmentShaderATI 852
-#define _gloffset_GenFragmentShadersATI 853
-#define _gloffset_PassTexCoordATI 854
-#define _gloffset_SampleMapATI 855
-#define _gloffset_SetFragmentShaderConstantATI 856
-#define _gloffset_PointParameteriNV 857
-#define _gloffset_PointParameterivNV 858
-#define _gloffset_ActiveStencilFaceEXT 859
-#define _gloffset_BindVertexArrayAPPLE 860
-#define _gloffset_DeleteVertexArraysAPPLE 861
-#define _gloffset_GenVertexArraysAPPLE 862
-#define _gloffset_IsVertexArrayAPPLE 863
-#define _gloffset_GetProgramNamedParameterdvNV 864
-#define _gloffset_GetProgramNamedParameterfvNV 865
-#define _gloffset_ProgramNamedParameter4dNV 866
-#define _gloffset_ProgramNamedParameter4dvNV 867
-#define _gloffset_ProgramNamedParameter4fNV 868
-#define _gloffset_ProgramNamedParameter4fvNV 869
-#define _gloffset_PrimitiveRestartIndexNV 870
-#define _gloffset_PrimitiveRestartNV 871
-#define _gloffset_DepthBoundsEXT 872
-#define _gloffset_BlendEquationSeparateEXT 873
-#define _gloffset_BindFramebufferEXT 874
-#define _gloffset_BindRenderbufferEXT 875
-#define _gloffset_CheckFramebufferStatusEXT 876
-#define _gloffset_DeleteFramebuffersEXT 877
-#define _gloffset_DeleteRenderbuffersEXT 878
-#define _gloffset_FramebufferRenderbufferEXT 879
-#define _gloffset_FramebufferTexture1DEXT 880
-#define _gloffset_FramebufferTexture2DEXT 881
-#define _gloffset_FramebufferTexture3DEXT 882
-#define _gloffset_GenFramebuffersEXT 883
-#define _gloffset_GenRenderbuffersEXT 884
-#define _gloffset_GenerateMipmapEXT 885
-#define _gloffset_GetFramebufferAttachmentParameterivEXT 886
-#define _gloffset_GetRenderbufferParameterivEXT 887
-#define _gloffset_IsFramebufferEXT 888
-#define _gloffset_IsRenderbufferEXT 889
-#define _gloffset_RenderbufferStorageEXT 890
-#define _gloffset_BlitFramebufferEXT 891
-#define _gloffset_BufferParameteriAPPLE 892
-#define _gloffset_FlushMappedBufferRangeAPPLE 893
-#define _gloffset_BindFragDataLocationEXT 894
-#define _gloffset_GetFragDataLocationEXT 895
-#define _gloffset_GetUniformuivEXT 896
-#define _gloffset_GetVertexAttribIivEXT 897
-#define _gloffset_GetVertexAttribIuivEXT 898
-#define _gloffset_Uniform1uiEXT 899
-#define _gloffset_Uniform1uivEXT 900
-#define _gloffset_Uniform2uiEXT 901
-#define _gloffset_Uniform2uivEXT 902
-#define _gloffset_Uniform3uiEXT 903
-#define _gloffset_Uniform3uivEXT 904
-#define _gloffset_Uniform4uiEXT 905
-#define _gloffset_Uniform4uivEXT 906
-#define _gloffset_VertexAttribI1iEXT 907
-#define _gloffset_VertexAttribI1ivEXT 908
-#define _gloffset_VertexAttribI1uiEXT 909
-#define _gloffset_VertexAttribI1uivEXT 910
-#define _gloffset_VertexAttribI2iEXT 911
-#define _gloffset_VertexAttribI2ivEXT 912
-#define _gloffset_VertexAttribI2uiEXT 913
-#define _gloffset_VertexAttribI2uivEXT 914
-#define _gloffset_VertexAttribI3iEXT 915
-#define _gloffset_VertexAttribI3ivEXT 916
-#define _gloffset_VertexAttribI3uiEXT 917
-#define _gloffset_VertexAttribI3uivEXT 918
-#define _gloffset_VertexAttribI4bvEXT 919
-#define _gloffset_VertexAttribI4iEXT 920
-#define _gloffset_VertexAttribI4ivEXT 921
-#define _gloffset_VertexAttribI4svEXT 922
-#define _gloffset_VertexAttribI4ubvEXT 923
-#define _gloffset_VertexAttribI4uiEXT 924
-#define _gloffset_VertexAttribI4uivEXT 925
-#define _gloffset_VertexAttribI4usvEXT 926
-#define _gloffset_VertexAttribIPointerEXT 927
-#define _gloffset_FramebufferTextureLayerEXT 928
-#define _gloffset_ColorMaskIndexedEXT 929
-#define _gloffset_DisableIndexedEXT 930
-#define _gloffset_EnableIndexedEXT 931
-#define _gloffset_GetBooleanIndexedvEXT 932
-#define _gloffset_GetIntegerIndexedvEXT 933
-#define _gloffset_IsEnabledIndexedEXT 934
-#define _gloffset_ClearColorIiEXT 935
-#define _gloffset_ClearColorIuiEXT 936
-#define _gloffset_GetTexParameterIivEXT 937
-#define _gloffset_GetTexParameterIuivEXT 938
-#define _gloffset_TexParameterIivEXT 939
-#define _gloffset_TexParameterIuivEXT 940
-#define _gloffset_BeginConditionalRenderNV 941
-#define _gloffset_EndConditionalRenderNV 942
-#define _gloffset_BeginTransformFeedbackEXT 943
-#define _gloffset_BindBufferBaseEXT 944
-#define _gloffset_BindBufferOffsetEXT 945
-#define _gloffset_BindBufferRangeEXT 946
-#define _gloffset_EndTransformFeedbackEXT 947
-#define _gloffset_GetTransformFeedbackVaryingEXT 948
-#define _gloffset_TransformFeedbackVaryingsEXT 949
-#define _gloffset_ProvokingVertexEXT 950
-#define _gloffset_GetTexParameterPointervAPPLE 951
-#define _gloffset_TextureRangeAPPLE 952
-#define _gloffset_GetObjectParameterivAPPLE 953
-#define _gloffset_ObjectPurgeableAPPLE 954
-#define _gloffset_ObjectUnpurgeableAPPLE 955
-#define _gloffset_ActiveProgramEXT 956
-#define _gloffset_CreateShaderProgramEXT 957
-#define _gloffset_UseShaderProgramEXT 958
-#define _gloffset_TextureBarrierNV 959
-#define _gloffset_StencilFuncSeparateATI 960
-#define _gloffset_ProgramEnvParameters4fvEXT 961
-#define _gloffset_ProgramLocalParameters4fvEXT 962
-#define _gloffset_GetQueryObjecti64vEXT 963
-#define _gloffset_GetQueryObjectui64vEXT 964
-#define _gloffset_EGLImageTargetRenderbufferStorageOES 965
-#define _gloffset_EGLImageTargetTexture2DOES 966
+#define _gloffset_TexStorage1D 685
+#define _gloffset_TexStorage2D 686
+#define _gloffset_TexStorage3D 687
+#define _gloffset_TextureStorage1DEXT 688
+#define _gloffset_TextureStorage2DEXT 689
+#define _gloffset_TextureStorage3DEXT 690
+#define _gloffset_PolygonOffsetEXT 691
+#define _gloffset_GetPixelTexGenParameterfvSGIS 692
+#define _gloffset_GetPixelTexGenParameterivSGIS 693
+#define _gloffset_PixelTexGenParameterfSGIS 694
+#define _gloffset_PixelTexGenParameterfvSGIS 695
+#define _gloffset_PixelTexGenParameteriSGIS 696
+#define _gloffset_PixelTexGenParameterivSGIS 697
+#define _gloffset_SampleMaskSGIS 698
+#define _gloffset_SamplePatternSGIS 699
+#define _gloffset_ColorPointerEXT 700
+#define _gloffset_EdgeFlagPointerEXT 701
+#define _gloffset_IndexPointerEXT 702
+#define _gloffset_NormalPointerEXT 703
+#define _gloffset_TexCoordPointerEXT 704
+#define _gloffset_VertexPointerEXT 705
+#define _gloffset_PointParameterfEXT 706
+#define _gloffset_PointParameterfvEXT 707
+#define _gloffset_LockArraysEXT 708
+#define _gloffset_UnlockArraysEXT 709
+#define _gloffset_SecondaryColor3bEXT 710
+#define _gloffset_SecondaryColor3bvEXT 711
+#define _gloffset_SecondaryColor3dEXT 712
+#define _gloffset_SecondaryColor3dvEXT 713
+#define _gloffset_SecondaryColor3fEXT 714
+#define _gloffset_SecondaryColor3fvEXT 715
+#define _gloffset_SecondaryColor3iEXT 716
+#define _gloffset_SecondaryColor3ivEXT 717
+#define _gloffset_SecondaryColor3sEXT 718
+#define _gloffset_SecondaryColor3svEXT 719
+#define _gloffset_SecondaryColor3ubEXT 720
+#define _gloffset_SecondaryColor3ubvEXT 721
+#define _gloffset_SecondaryColor3uiEXT 722
+#define _gloffset_SecondaryColor3uivEXT 723
+#define _gloffset_SecondaryColor3usEXT 724
+#define _gloffset_SecondaryColor3usvEXT 725
+#define _gloffset_SecondaryColorPointerEXT 726
+#define _gloffset_MultiDrawArraysEXT 727
+#define _gloffset_MultiDrawElementsEXT 728
+#define _gloffset_FogCoordPointerEXT 729
+#define _gloffset_FogCoorddEXT 730
+#define _gloffset_FogCoorddvEXT 731
+#define _gloffset_FogCoordfEXT 732
+#define _gloffset_FogCoordfvEXT 733
+#define _gloffset_PixelTexGenSGIX 734
+#define _gloffset_BlendFuncSeparateEXT 735
+#define _gloffset_FlushVertexArrayRangeNV 736
+#define _gloffset_VertexArrayRangeNV 737
+#define _gloffset_CombinerInputNV 738
+#define _gloffset_CombinerOutputNV 739
+#define _gloffset_CombinerParameterfNV 740
+#define _gloffset_CombinerParameterfvNV 741
+#define _gloffset_CombinerParameteriNV 742
+#define _gloffset_CombinerParameterivNV 743
+#define _gloffset_FinalCombinerInputNV 744
+#define _gloffset_GetCombinerInputParameterfvNV 745
+#define _gloffset_GetCombinerInputParameterivNV 746
+#define _gloffset_GetCombinerOutputParameterfvNV 747
+#define _gloffset_GetCombinerOutputParameterivNV 748
+#define _gloffset_GetFinalCombinerInputParameterfvNV 749
+#define _gloffset_GetFinalCombinerInputParameterivNV 750
+#define _gloffset_ResizeBuffersMESA 751
+#define _gloffset_WindowPos2dMESA 752
+#define _gloffset_WindowPos2dvMESA 753
+#define _gloffset_WindowPos2fMESA 754
+#define _gloffset_WindowPos2fvMESA 755
+#define _gloffset_WindowPos2iMESA 756
+#define _gloffset_WindowPos2ivMESA 757
+#define _gloffset_WindowPos2sMESA 758
+#define _gloffset_WindowPos2svMESA 759
+#define _gloffset_WindowPos3dMESA 760
+#define _gloffset_WindowPos3dvMESA 761
+#define _gloffset_WindowPos3fMESA 762
+#define _gloffset_WindowPos3fvMESA 763
+#define _gloffset_WindowPos3iMESA 764
+#define _gloffset_WindowPos3ivMESA 765
+#define _gloffset_WindowPos3sMESA 766
+#define _gloffset_WindowPos3svMESA 767
+#define _gloffset_WindowPos4dMESA 768
+#define _gloffset_WindowPos4dvMESA 769
+#define _gloffset_WindowPos4fMESA 770
+#define _gloffset_WindowPos4fvMESA 771
+#define _gloffset_WindowPos4iMESA 772
+#define _gloffset_WindowPos4ivMESA 773
+#define _gloffset_WindowPos4sMESA 774
+#define _gloffset_WindowPos4svMESA 775
+#define _gloffset_MultiModeDrawArraysIBM 776
+#define _gloffset_MultiModeDrawElementsIBM 777
+#define _gloffset_DeleteFencesNV 778
+#define _gloffset_FinishFenceNV 779
+#define _gloffset_GenFencesNV 780
+#define _gloffset_GetFenceivNV 781
+#define _gloffset_IsFenceNV 782
+#define _gloffset_SetFenceNV 783
+#define _gloffset_TestFenceNV 784
+#define _gloffset_AreProgramsResidentNV 785
+#define _gloffset_BindProgramNV 786
+#define _gloffset_DeleteProgramsNV 787
+#define _gloffset_ExecuteProgramNV 788
+#define _gloffset_GenProgramsNV 789
+#define _gloffset_GetProgramParameterdvNV 790
+#define _gloffset_GetProgramParameterfvNV 791
+#define _gloffset_GetProgramStringNV 792
+#define _gloffset_GetProgramivNV 793
+#define _gloffset_GetTrackMatrixivNV 794
+#define _gloffset_GetVertexAttribPointervNV 795
+#define _gloffset_GetVertexAttribdvNV 796
+#define _gloffset_GetVertexAttribfvNV 797
+#define _gloffset_GetVertexAttribivNV 798
+#define _gloffset_IsProgramNV 799
+#define _gloffset_LoadProgramNV 800
+#define _gloffset_ProgramParameters4dvNV 801
+#define _gloffset_ProgramParameters4fvNV 802
+#define _gloffset_RequestResidentProgramsNV 803
+#define _gloffset_TrackMatrixNV 804
+#define _gloffset_VertexAttrib1dNV 805
+#define _gloffset_VertexAttrib1dvNV 806
+#define _gloffset_VertexAttrib1fNV 807
+#define _gloffset_VertexAttrib1fvNV 808
+#define _gloffset_VertexAttrib1sNV 809
+#define _gloffset_VertexAttrib1svNV 810
+#define _gloffset_VertexAttrib2dNV 811
+#define _gloffset_VertexAttrib2dvNV 812
+#define _gloffset_VertexAttrib2fNV 813
+#define _gloffset_VertexAttrib2fvNV 814
+#define _gloffset_VertexAttrib2sNV 815
+#define _gloffset_VertexAttrib2svNV 816
+#define _gloffset_VertexAttrib3dNV 817
+#define _gloffset_VertexAttrib3dvNV 818
+#define _gloffset_VertexAttrib3fNV 819
+#define _gloffset_VertexAttrib3fvNV 820
+#define _gloffset_VertexAttrib3sNV 821
+#define _gloffset_VertexAttrib3svNV 822
+#define _gloffset_VertexAttrib4dNV 823
+#define _gloffset_VertexAttrib4dvNV 824
+#define _gloffset_VertexAttrib4fNV 825
+#define _gloffset_VertexAttrib4fvNV 826
+#define _gloffset_VertexAttrib4sNV 827
+#define _gloffset_VertexAttrib4svNV 828
+#define _gloffset_VertexAttrib4ubNV 829
+#define _gloffset_VertexAttrib4ubvNV 830
+#define _gloffset_VertexAttribPointerNV 831
+#define _gloffset_VertexAttribs1dvNV 832
+#define _gloffset_VertexAttribs1fvNV 833
+#define _gloffset_VertexAttribs1svNV 834
+#define _gloffset_VertexAttribs2dvNV 835
+#define _gloffset_VertexAttribs2fvNV 836
+#define _gloffset_VertexAttribs2svNV 837
+#define _gloffset_VertexAttribs3dvNV 838
+#define _gloffset_VertexAttribs3fvNV 839
+#define _gloffset_VertexAttribs3svNV 840
+#define _gloffset_VertexAttribs4dvNV 841
+#define _gloffset_VertexAttribs4fvNV 842
+#define _gloffset_VertexAttribs4svNV 843
+#define _gloffset_VertexAttribs4ubvNV 844
+#define _gloffset_GetTexBumpParameterfvATI 845
+#define _gloffset_GetTexBumpParameterivATI 846
+#define _gloffset_TexBumpParameterfvATI 847
+#define _gloffset_TexBumpParameterivATI 848
+#define _gloffset_AlphaFragmentOp1ATI 849
+#define _gloffset_AlphaFragmentOp2ATI 850
+#define _gloffset_AlphaFragmentOp3ATI 851
+#define _gloffset_BeginFragmentShaderATI 852
+#define _gloffset_BindFragmentShaderATI 853
+#define _gloffset_ColorFragmentOp1ATI 854
+#define _gloffset_ColorFragmentOp2ATI 855
+#define _gloffset_ColorFragmentOp3ATI 856
+#define _gloffset_DeleteFragmentShaderATI 857
+#define _gloffset_EndFragmentShaderATI 858
+#define _gloffset_GenFragmentShadersATI 859
+#define _gloffset_PassTexCoordATI 860
+#define _gloffset_SampleMapATI 861
+#define _gloffset_SetFragmentShaderConstantATI 862
+#define _gloffset_PointParameteriNV 863
+#define _gloffset_PointParameterivNV 864
+#define _gloffset_ActiveStencilFaceEXT 865
+#define _gloffset_BindVertexArrayAPPLE 866
+#define _gloffset_DeleteVertexArraysAPPLE 867
+#define _gloffset_GenVertexArraysAPPLE 868
+#define _gloffset_IsVertexArrayAPPLE 869
+#define _gloffset_GetProgramNamedParameterdvNV 870
+#define _gloffset_GetProgramNamedParameterfvNV 871
+#define _gloffset_ProgramNamedParameter4dNV 872
+#define _gloffset_ProgramNamedParameter4dvNV 873
+#define _gloffset_ProgramNamedParameter4fNV 874
+#define _gloffset_ProgramNamedParameter4fvNV 875
+#define _gloffset_PrimitiveRestartIndexNV 876
+#define _gloffset_PrimitiveRestartNV 877
+#define _gloffset_DepthBoundsEXT 878
+#define _gloffset_BlendEquationSeparateEXT 879
+#define _gloffset_BindFramebufferEXT 880
+#define _gloffset_BindRenderbufferEXT 881
+#define _gloffset_CheckFramebufferStatusEXT 882
+#define _gloffset_DeleteFramebuffersEXT 883
+#define _gloffset_DeleteRenderbuffersEXT 884
+#define _gloffset_FramebufferRenderbufferEXT 885
+#define _gloffset_FramebufferTexture1DEXT 886
+#define _gloffset_FramebufferTexture2DEXT 887
+#define _gloffset_FramebufferTexture3DEXT 888
+#define _gloffset_GenFramebuffersEXT 889
+#define _gloffset_GenRenderbuffersEXT 890
+#define _gloffset_GenerateMipmapEXT 891
+#define _gloffset_GetFramebufferAttachmentParameterivEXT 892
+#define _gloffset_GetRenderbufferParameterivEXT 893
+#define _gloffset_IsFramebufferEXT 894
+#define _gloffset_IsRenderbufferEXT 895
+#define _gloffset_RenderbufferStorageEXT 896
+#define _gloffset_BlitFramebufferEXT 897
+#define _gloffset_BufferParameteriAPPLE 898
+#define _gloffset_FlushMappedBufferRangeAPPLE 899
+#define _gloffset_BindFragDataLocationEXT 900
+#define _gloffset_GetFragDataLocationEXT 901
+#define _gloffset_GetUniformuivEXT 902
+#define _gloffset_GetVertexAttribIivEXT 903
+#define _gloffset_GetVertexAttribIuivEXT 904
+#define _gloffset_Uniform1uiEXT 905
+#define _gloffset_Uniform1uivEXT 906
+#define _gloffset_Uniform2uiEXT 907
+#define _gloffset_Uniform2uivEXT 908
+#define _gloffset_Uniform3uiEXT 909
+#define _gloffset_Uniform3uivEXT 910
+#define _gloffset_Uniform4uiEXT 911
+#define _gloffset_Uniform4uivEXT 912
+#define _gloffset_VertexAttribI1iEXT 913
+#define _gloffset_VertexAttribI1ivEXT 914
+#define _gloffset_VertexAttribI1uiEXT 915
+#define _gloffset_VertexAttribI1uivEXT 916
+#define _gloffset_VertexAttribI2iEXT 917
+#define _gloffset_VertexAttribI2ivEXT 918
+#define _gloffset_VertexAttribI2uiEXT 919
+#define _gloffset_VertexAttribI2uivEXT 920
+#define _gloffset_VertexAttribI3iEXT 921
+#define _gloffset_VertexAttribI3ivEXT 922
+#define _gloffset_VertexAttribI3uiEXT 923
+#define _gloffset_VertexAttribI3uivEXT 924
+#define _gloffset_VertexAttribI4bvEXT 925
+#define _gloffset_VertexAttribI4iEXT 926
+#define _gloffset_VertexAttribI4ivEXT 927
+#define _gloffset_VertexAttribI4svEXT 928
+#define _gloffset_VertexAttribI4ubvEXT 929
+#define _gloffset_VertexAttribI4uiEXT 930
+#define _gloffset_VertexAttribI4uivEXT 931
+#define _gloffset_VertexAttribI4usvEXT 932
+#define _gloffset_VertexAttribIPointerEXT 933
+#define _gloffset_FramebufferTextureLayerEXT 934
+#define _gloffset_ColorMaskIndexedEXT 935
+#define _gloffset_DisableIndexedEXT 936
+#define _gloffset_EnableIndexedEXT 937
+#define _gloffset_GetBooleanIndexedvEXT 938
+#define _gloffset_GetIntegerIndexedvEXT 939
+#define _gloffset_IsEnabledIndexedEXT 940
+#define _gloffset_ClearColorIiEXT 941
+#define _gloffset_ClearColorIuiEXT 942
+#define _gloffset_GetTexParameterIivEXT 943
+#define _gloffset_GetTexParameterIuivEXT 944
+#define _gloffset_TexParameterIivEXT 945
+#define _gloffset_TexParameterIuivEXT 946
+#define _gloffset_BeginConditionalRenderNV 947
+#define _gloffset_EndConditionalRenderNV 948
+#define _gloffset_BeginTransformFeedbackEXT 949
+#define _gloffset_BindBufferBaseEXT 950
+#define _gloffset_BindBufferOffsetEXT 951
+#define _gloffset_BindBufferRangeEXT 952
+#define _gloffset_EndTransformFeedbackEXT 953
+#define _gloffset_GetTransformFeedbackVaryingEXT 954
+#define _gloffset_TransformFeedbackVaryingsEXT 955
+#define _gloffset_ProvokingVertexEXT 956
+#define _gloffset_GetTexParameterPointervAPPLE 957
+#define _gloffset_TextureRangeAPPLE 958
+#define _gloffset_GetObjectParameterivAPPLE 959
+#define _gloffset_ObjectPurgeableAPPLE 960
+#define _gloffset_ObjectUnpurgeableAPPLE 961
+#define _gloffset_ActiveProgramEXT 962
+#define _gloffset_CreateShaderProgramEXT 963
+#define _gloffset_UseShaderProgramEXT 964
+#define _gloffset_TextureBarrierNV 965
+#define _gloffset_StencilFuncSeparateATI 966
+#define _gloffset_ProgramEnvParameters4fvEXT 967
+#define _gloffset_ProgramLocalParameters4fvEXT 968
+#define _gloffset_GetQueryObjecti64vEXT 969
+#define _gloffset_GetQueryObjectui64vEXT 970
+#define _gloffset_EGLImageTargetRenderbufferStorageOES 971
+#define _gloffset_EGLImageTargetTexture2DOES 972
#else /* !FEATURE_remap_table */
-#define driDispatchRemapTable_size 559
+#define driDispatchRemapTable_size 565
extern int driDispatchRemapTable[ driDispatchRemapTable_size ];
#define AttachShader_remap_index 0
@@ -1314,288 +1320,294 @@ extern int driDispatchRemapTable[ driDispatchRemapTable_size ];
#define GetnUniformivARB_remap_index 274
#define GetnUniformuivARB_remap_index 275
#define ReadnPixelsARB_remap_index 276
-#define PolygonOffsetEXT_remap_index 277
-#define GetPixelTexGenParameterfvSGIS_remap_index 278
-#define GetPixelTexGenParameterivSGIS_remap_index 279
-#define PixelTexGenParameterfSGIS_remap_index 280
-#define PixelTexGenParameterfvSGIS_remap_index 281
-#define PixelTexGenParameteriSGIS_remap_index 282
-#define PixelTexGenParameterivSGIS_remap_index 283
-#define SampleMaskSGIS_remap_index 284
-#define SamplePatternSGIS_remap_index 285
-#define ColorPointerEXT_remap_index 286
-#define EdgeFlagPointerEXT_remap_index 287
-#define IndexPointerEXT_remap_index 288
-#define NormalPointerEXT_remap_index 289
-#define TexCoordPointerEXT_remap_index 290
-#define VertexPointerEXT_remap_index 291
-#define PointParameterfEXT_remap_index 292
-#define PointParameterfvEXT_remap_index 293
-#define LockArraysEXT_remap_index 294
-#define UnlockArraysEXT_remap_index 295
-#define SecondaryColor3bEXT_remap_index 296
-#define SecondaryColor3bvEXT_remap_index 297
-#define SecondaryColor3dEXT_remap_index 298
-#define SecondaryColor3dvEXT_remap_index 299
-#define SecondaryColor3fEXT_remap_index 300
-#define SecondaryColor3fvEXT_remap_index 301
-#define SecondaryColor3iEXT_remap_index 302
-#define SecondaryColor3ivEXT_remap_index 303
-#define SecondaryColor3sEXT_remap_index 304
-#define SecondaryColor3svEXT_remap_index 305
-#define SecondaryColor3ubEXT_remap_index 306
-#define SecondaryColor3ubvEXT_remap_index 307
-#define SecondaryColor3uiEXT_remap_index 308
-#define SecondaryColor3uivEXT_remap_index 309
-#define SecondaryColor3usEXT_remap_index 310
-#define SecondaryColor3usvEXT_remap_index 311
-#define SecondaryColorPointerEXT_remap_index 312
-#define MultiDrawArraysEXT_remap_index 313
-#define MultiDrawElementsEXT_remap_index 314
-#define FogCoordPointerEXT_remap_index 315
-#define FogCoorddEXT_remap_index 316
-#define FogCoorddvEXT_remap_index 317
-#define FogCoordfEXT_remap_index 318
-#define FogCoordfvEXT_remap_index 319
-#define PixelTexGenSGIX_remap_index 320
-#define BlendFuncSeparateEXT_remap_index 321
-#define FlushVertexArrayRangeNV_remap_index 322
-#define VertexArrayRangeNV_remap_index 323
-#define CombinerInputNV_remap_index 324
-#define CombinerOutputNV_remap_index 325
-#define CombinerParameterfNV_remap_index 326
-#define CombinerParameterfvNV_remap_index 327
-#define CombinerParameteriNV_remap_index 328
-#define CombinerParameterivNV_remap_index 329
-#define FinalCombinerInputNV_remap_index 330
-#define GetCombinerInputParameterfvNV_remap_index 331
-#define GetCombinerInputParameterivNV_remap_index 332
-#define GetCombinerOutputParameterfvNV_remap_index 333
-#define GetCombinerOutputParameterivNV_remap_index 334
-#define GetFinalCombinerInputParameterfvNV_remap_index 335
-#define GetFinalCombinerInputParameterivNV_remap_index 336
-#define ResizeBuffersMESA_remap_index 337
-#define WindowPos2dMESA_remap_index 338
-#define WindowPos2dvMESA_remap_index 339
-#define WindowPos2fMESA_remap_index 340
-#define WindowPos2fvMESA_remap_index 341
-#define WindowPos2iMESA_remap_index 342
-#define WindowPos2ivMESA_remap_index 343
-#define WindowPos2sMESA_remap_index 344
-#define WindowPos2svMESA_remap_index 345
-#define WindowPos3dMESA_remap_index 346
-#define WindowPos3dvMESA_remap_index 347
-#define WindowPos3fMESA_remap_index 348
-#define WindowPos3fvMESA_remap_index 349
-#define WindowPos3iMESA_remap_index 350
-#define WindowPos3ivMESA_remap_index 351
-#define WindowPos3sMESA_remap_index 352
-#define WindowPos3svMESA_remap_index 353
-#define WindowPos4dMESA_remap_index 354
-#define WindowPos4dvMESA_remap_index 355
-#define WindowPos4fMESA_remap_index 356
-#define WindowPos4fvMESA_remap_index 357
-#define WindowPos4iMESA_remap_index 358
-#define WindowPos4ivMESA_remap_index 359
-#define WindowPos4sMESA_remap_index 360
-#define WindowPos4svMESA_remap_index 361
-#define MultiModeDrawArraysIBM_remap_index 362
-#define MultiModeDrawElementsIBM_remap_index 363
-#define DeleteFencesNV_remap_index 364
-#define FinishFenceNV_remap_index 365
-#define GenFencesNV_remap_index 366
-#define GetFenceivNV_remap_index 367
-#define IsFenceNV_remap_index 368
-#define SetFenceNV_remap_index 369
-#define TestFenceNV_remap_index 370
-#define AreProgramsResidentNV_remap_index 371
-#define BindProgramNV_remap_index 372
-#define DeleteProgramsNV_remap_index 373
-#define ExecuteProgramNV_remap_index 374
-#define GenProgramsNV_remap_index 375
-#define GetProgramParameterdvNV_remap_index 376
-#define GetProgramParameterfvNV_remap_index 377
-#define GetProgramStringNV_remap_index 378
-#define GetProgramivNV_remap_index 379
-#define GetTrackMatrixivNV_remap_index 380
-#define GetVertexAttribPointervNV_remap_index 381
-#define GetVertexAttribdvNV_remap_index 382
-#define GetVertexAttribfvNV_remap_index 383
-#define GetVertexAttribivNV_remap_index 384
-#define IsProgramNV_remap_index 385
-#define LoadProgramNV_remap_index 386
-#define ProgramParameters4dvNV_remap_index 387
-#define ProgramParameters4fvNV_remap_index 388
-#define RequestResidentProgramsNV_remap_index 389
-#define TrackMatrixNV_remap_index 390
-#define VertexAttrib1dNV_remap_index 391
-#define VertexAttrib1dvNV_remap_index 392
-#define VertexAttrib1fNV_remap_index 393
-#define VertexAttrib1fvNV_remap_index 394
-#define VertexAttrib1sNV_remap_index 395
-#define VertexAttrib1svNV_remap_index 396
-#define VertexAttrib2dNV_remap_index 397
-#define VertexAttrib2dvNV_remap_index 398
-#define VertexAttrib2fNV_remap_index 399
-#define VertexAttrib2fvNV_remap_index 400
-#define VertexAttrib2sNV_remap_index 401
-#define VertexAttrib2svNV_remap_index 402
-#define VertexAttrib3dNV_remap_index 403
-#define VertexAttrib3dvNV_remap_index 404
-#define VertexAttrib3fNV_remap_index 405
-#define VertexAttrib3fvNV_remap_index 406
-#define VertexAttrib3sNV_remap_index 407
-#define VertexAttrib3svNV_remap_index 408
-#define VertexAttrib4dNV_remap_index 409
-#define VertexAttrib4dvNV_remap_index 410
-#define VertexAttrib4fNV_remap_index 411
-#define VertexAttrib4fvNV_remap_index 412
-#define VertexAttrib4sNV_remap_index 413
-#define VertexAttrib4svNV_remap_index 414
-#define VertexAttrib4ubNV_remap_index 415
-#define VertexAttrib4ubvNV_remap_index 416
-#define VertexAttribPointerNV_remap_index 417
-#define VertexAttribs1dvNV_remap_index 418
-#define VertexAttribs1fvNV_remap_index 419
-#define VertexAttribs1svNV_remap_index 420
-#define VertexAttribs2dvNV_remap_index 421
-#define VertexAttribs2fvNV_remap_index 422
-#define VertexAttribs2svNV_remap_index 423
-#define VertexAttribs3dvNV_remap_index 424
-#define VertexAttribs3fvNV_remap_index 425
-#define VertexAttribs3svNV_remap_index 426
-#define VertexAttribs4dvNV_remap_index 427
-#define VertexAttribs4fvNV_remap_index 428
-#define VertexAttribs4svNV_remap_index 429
-#define VertexAttribs4ubvNV_remap_index 430
-#define GetTexBumpParameterfvATI_remap_index 431
-#define GetTexBumpParameterivATI_remap_index 432
-#define TexBumpParameterfvATI_remap_index 433
-#define TexBumpParameterivATI_remap_index 434
-#define AlphaFragmentOp1ATI_remap_index 435
-#define AlphaFragmentOp2ATI_remap_index 436
-#define AlphaFragmentOp3ATI_remap_index 437
-#define BeginFragmentShaderATI_remap_index 438
-#define BindFragmentShaderATI_remap_index 439
-#define ColorFragmentOp1ATI_remap_index 440
-#define ColorFragmentOp2ATI_remap_index 441
-#define ColorFragmentOp3ATI_remap_index 442
-#define DeleteFragmentShaderATI_remap_index 443
-#define EndFragmentShaderATI_remap_index 444
-#define GenFragmentShadersATI_remap_index 445
-#define PassTexCoordATI_remap_index 446
-#define SampleMapATI_remap_index 447
-#define SetFragmentShaderConstantATI_remap_index 448
-#define PointParameteriNV_remap_index 449
-#define PointParameterivNV_remap_index 450
-#define ActiveStencilFaceEXT_remap_index 451
-#define BindVertexArrayAPPLE_remap_index 452
-#define DeleteVertexArraysAPPLE_remap_index 453
-#define GenVertexArraysAPPLE_remap_index 454
-#define IsVertexArrayAPPLE_remap_index 455
-#define GetProgramNamedParameterdvNV_remap_index 456
-#define GetProgramNamedParameterfvNV_remap_index 457
-#define ProgramNamedParameter4dNV_remap_index 458
-#define ProgramNamedParameter4dvNV_remap_index 459
-#define ProgramNamedParameter4fNV_remap_index 460
-#define ProgramNamedParameter4fvNV_remap_index 461
-#define PrimitiveRestartIndexNV_remap_index 462
-#define PrimitiveRestartNV_remap_index 463
-#define DepthBoundsEXT_remap_index 464
-#define BlendEquationSeparateEXT_remap_index 465
-#define BindFramebufferEXT_remap_index 466
-#define BindRenderbufferEXT_remap_index 467
-#define CheckFramebufferStatusEXT_remap_index 468
-#define DeleteFramebuffersEXT_remap_index 469
-#define DeleteRenderbuffersEXT_remap_index 470
-#define FramebufferRenderbufferEXT_remap_index 471
-#define FramebufferTexture1DEXT_remap_index 472
-#define FramebufferTexture2DEXT_remap_index 473
-#define FramebufferTexture3DEXT_remap_index 474
-#define GenFramebuffersEXT_remap_index 475
-#define GenRenderbuffersEXT_remap_index 476
-#define GenerateMipmapEXT_remap_index 477
-#define GetFramebufferAttachmentParameterivEXT_remap_index 478
-#define GetRenderbufferParameterivEXT_remap_index 479
-#define IsFramebufferEXT_remap_index 480
-#define IsRenderbufferEXT_remap_index 481
-#define RenderbufferStorageEXT_remap_index 482
-#define BlitFramebufferEXT_remap_index 483
-#define BufferParameteriAPPLE_remap_index 484
-#define FlushMappedBufferRangeAPPLE_remap_index 485
-#define BindFragDataLocationEXT_remap_index 486
-#define GetFragDataLocationEXT_remap_index 487
-#define GetUniformuivEXT_remap_index 488
-#define GetVertexAttribIivEXT_remap_index 489
-#define GetVertexAttribIuivEXT_remap_index 490
-#define Uniform1uiEXT_remap_index 491
-#define Uniform1uivEXT_remap_index 492
-#define Uniform2uiEXT_remap_index 493
-#define Uniform2uivEXT_remap_index 494
-#define Uniform3uiEXT_remap_index 495
-#define Uniform3uivEXT_remap_index 496
-#define Uniform4uiEXT_remap_index 497
-#define Uniform4uivEXT_remap_index 498
-#define VertexAttribI1iEXT_remap_index 499
-#define VertexAttribI1ivEXT_remap_index 500
-#define VertexAttribI1uiEXT_remap_index 501
-#define VertexAttribI1uivEXT_remap_index 502
-#define VertexAttribI2iEXT_remap_index 503
-#define VertexAttribI2ivEXT_remap_index 504
-#define VertexAttribI2uiEXT_remap_index 505
-#define VertexAttribI2uivEXT_remap_index 506
-#define VertexAttribI3iEXT_remap_index 507
-#define VertexAttribI3ivEXT_remap_index 508
-#define VertexAttribI3uiEXT_remap_index 509
-#define VertexAttribI3uivEXT_remap_index 510
-#define VertexAttribI4bvEXT_remap_index 511
-#define VertexAttribI4iEXT_remap_index 512
-#define VertexAttribI4ivEXT_remap_index 513
-#define VertexAttribI4svEXT_remap_index 514
-#define VertexAttribI4ubvEXT_remap_index 515
-#define VertexAttribI4uiEXT_remap_index 516
-#define VertexAttribI4uivEXT_remap_index 517
-#define VertexAttribI4usvEXT_remap_index 518
-#define VertexAttribIPointerEXT_remap_index 519
-#define FramebufferTextureLayerEXT_remap_index 520
-#define ColorMaskIndexedEXT_remap_index 521
-#define DisableIndexedEXT_remap_index 522
-#define EnableIndexedEXT_remap_index 523
-#define GetBooleanIndexedvEXT_remap_index 524
-#define GetIntegerIndexedvEXT_remap_index 525
-#define IsEnabledIndexedEXT_remap_index 526
-#define ClearColorIiEXT_remap_index 527
-#define ClearColorIuiEXT_remap_index 528
-#define GetTexParameterIivEXT_remap_index 529
-#define GetTexParameterIuivEXT_remap_index 530
-#define TexParameterIivEXT_remap_index 531
-#define TexParameterIuivEXT_remap_index 532
-#define BeginConditionalRenderNV_remap_index 533
-#define EndConditionalRenderNV_remap_index 534
-#define BeginTransformFeedbackEXT_remap_index 535
-#define BindBufferBaseEXT_remap_index 536
-#define BindBufferOffsetEXT_remap_index 537
-#define BindBufferRangeEXT_remap_index 538
-#define EndTransformFeedbackEXT_remap_index 539
-#define GetTransformFeedbackVaryingEXT_remap_index 540
-#define TransformFeedbackVaryingsEXT_remap_index 541
-#define ProvokingVertexEXT_remap_index 542
-#define GetTexParameterPointervAPPLE_remap_index 543
-#define TextureRangeAPPLE_remap_index 544
-#define GetObjectParameterivAPPLE_remap_index 545
-#define ObjectPurgeableAPPLE_remap_index 546
-#define ObjectUnpurgeableAPPLE_remap_index 547
-#define ActiveProgramEXT_remap_index 548
-#define CreateShaderProgramEXT_remap_index 549
-#define UseShaderProgramEXT_remap_index 550
-#define TextureBarrierNV_remap_index 551
-#define StencilFuncSeparateATI_remap_index 552
-#define ProgramEnvParameters4fvEXT_remap_index 553
-#define ProgramLocalParameters4fvEXT_remap_index 554
-#define GetQueryObjecti64vEXT_remap_index 555
-#define GetQueryObjectui64vEXT_remap_index 556
-#define EGLImageTargetRenderbufferStorageOES_remap_index 557
-#define EGLImageTargetTexture2DOES_remap_index 558
+#define TexStorage1D_remap_index 277
+#define TexStorage2D_remap_index 278
+#define TexStorage3D_remap_index 279
+#define TextureStorage1DEXT_remap_index 280
+#define TextureStorage2DEXT_remap_index 281
+#define TextureStorage3DEXT_remap_index 282
+#define PolygonOffsetEXT_remap_index 283
+#define GetPixelTexGenParameterfvSGIS_remap_index 284
+#define GetPixelTexGenParameterivSGIS_remap_index 285
+#define PixelTexGenParameterfSGIS_remap_index 286
+#define PixelTexGenParameterfvSGIS_remap_index 287
+#define PixelTexGenParameteriSGIS_remap_index 288
+#define PixelTexGenParameterivSGIS_remap_index 289
+#define SampleMaskSGIS_remap_index 290
+#define SamplePatternSGIS_remap_index 291
+#define ColorPointerEXT_remap_index 292
+#define EdgeFlagPointerEXT_remap_index 293
+#define IndexPointerEXT_remap_index 294
+#define NormalPointerEXT_remap_index 295
+#define TexCoordPointerEXT_remap_index 296
+#define VertexPointerEXT_remap_index 297
+#define PointParameterfEXT_remap_index 298
+#define PointParameterfvEXT_remap_index 299
+#define LockArraysEXT_remap_index 300
+#define UnlockArraysEXT_remap_index 301
+#define SecondaryColor3bEXT_remap_index 302
+#define SecondaryColor3bvEXT_remap_index 303
+#define SecondaryColor3dEXT_remap_index 304
+#define SecondaryColor3dvEXT_remap_index 305
+#define SecondaryColor3fEXT_remap_index 306
+#define SecondaryColor3fvEXT_remap_index 307
+#define SecondaryColor3iEXT_remap_index 308
+#define SecondaryColor3ivEXT_remap_index 309
+#define SecondaryColor3sEXT_remap_index 310
+#define SecondaryColor3svEXT_remap_index 311
+#define SecondaryColor3ubEXT_remap_index 312
+#define SecondaryColor3ubvEXT_remap_index 313
+#define SecondaryColor3uiEXT_remap_index 314
+#define SecondaryColor3uivEXT_remap_index 315
+#define SecondaryColor3usEXT_remap_index 316
+#define SecondaryColor3usvEXT_remap_index 317
+#define SecondaryColorPointerEXT_remap_index 318
+#define MultiDrawArraysEXT_remap_index 319
+#define MultiDrawElementsEXT_remap_index 320
+#define FogCoordPointerEXT_remap_index 321
+#define FogCoorddEXT_remap_index 322
+#define FogCoorddvEXT_remap_index 323
+#define FogCoordfEXT_remap_index 324
+#define FogCoordfvEXT_remap_index 325
+#define PixelTexGenSGIX_remap_index 326
+#define BlendFuncSeparateEXT_remap_index 327
+#define FlushVertexArrayRangeNV_remap_index 328
+#define VertexArrayRangeNV_remap_index 329
+#define CombinerInputNV_remap_index 330
+#define CombinerOutputNV_remap_index 331
+#define CombinerParameterfNV_remap_index 332
+#define CombinerParameterfvNV_remap_index 333
+#define CombinerParameteriNV_remap_index 334
+#define CombinerParameterivNV_remap_index 335
+#define FinalCombinerInputNV_remap_index 336
+#define GetCombinerInputParameterfvNV_remap_index 337
+#define GetCombinerInputParameterivNV_remap_index 338
+#define GetCombinerOutputParameterfvNV_remap_index 339
+#define GetCombinerOutputParameterivNV_remap_index 340
+#define GetFinalCombinerInputParameterfvNV_remap_index 341
+#define GetFinalCombinerInputParameterivNV_remap_index 342
+#define ResizeBuffersMESA_remap_index 343
+#define WindowPos2dMESA_remap_index 344
+#define WindowPos2dvMESA_remap_index 345
+#define WindowPos2fMESA_remap_index 346
+#define WindowPos2fvMESA_remap_index 347
+#define WindowPos2iMESA_remap_index 348
+#define WindowPos2ivMESA_remap_index 349
+#define WindowPos2sMESA_remap_index 350
+#define WindowPos2svMESA_remap_index 351
+#define WindowPos3dMESA_remap_index 352
+#define WindowPos3dvMESA_remap_index 353
+#define WindowPos3fMESA_remap_index 354
+#define WindowPos3fvMESA_remap_index 355
+#define WindowPos3iMESA_remap_index 356
+#define WindowPos3ivMESA_remap_index 357
+#define WindowPos3sMESA_remap_index 358
+#define WindowPos3svMESA_remap_index 359
+#define WindowPos4dMESA_remap_index 360
+#define WindowPos4dvMESA_remap_index 361
+#define WindowPos4fMESA_remap_index 362
+#define WindowPos4fvMESA_remap_index 363
+#define WindowPos4iMESA_remap_index 364
+#define WindowPos4ivMESA_remap_index 365
+#define WindowPos4sMESA_remap_index 366
+#define WindowPos4svMESA_remap_index 367
+#define MultiModeDrawArraysIBM_remap_index 368
+#define MultiModeDrawElementsIBM_remap_index 369
+#define DeleteFencesNV_remap_index 370
+#define FinishFenceNV_remap_index 371
+#define GenFencesNV_remap_index 372
+#define GetFenceivNV_remap_index 373
+#define IsFenceNV_remap_index 374
+#define SetFenceNV_remap_index 375
+#define TestFenceNV_remap_index 376
+#define AreProgramsResidentNV_remap_index 377
+#define BindProgramNV_remap_index 378
+#define DeleteProgramsNV_remap_index 379
+#define ExecuteProgramNV_remap_index 380
+#define GenProgramsNV_remap_index 381
+#define GetProgramParameterdvNV_remap_index 382
+#define GetProgramParameterfvNV_remap_index 383
+#define GetProgramStringNV_remap_index 384
+#define GetProgramivNV_remap_index 385
+#define GetTrackMatrixivNV_remap_index 386
+#define GetVertexAttribPointervNV_remap_index 387
+#define GetVertexAttribdvNV_remap_index 388
+#define GetVertexAttribfvNV_remap_index 389
+#define GetVertexAttribivNV_remap_index 390
+#define IsProgramNV_remap_index 391
+#define LoadProgramNV_remap_index 392
+#define ProgramParameters4dvNV_remap_index 393
+#define ProgramParameters4fvNV_remap_index 394
+#define RequestResidentProgramsNV_remap_index 395
+#define TrackMatrixNV_remap_index 396
+#define VertexAttrib1dNV_remap_index 397
+#define VertexAttrib1dvNV_remap_index 398
+#define VertexAttrib1fNV_remap_index 399
+#define VertexAttrib1fvNV_remap_index 400
+#define VertexAttrib1sNV_remap_index 401
+#define VertexAttrib1svNV_remap_index 402
+#define VertexAttrib2dNV_remap_index 403
+#define VertexAttrib2dvNV_remap_index 404
+#define VertexAttrib2fNV_remap_index 405
+#define VertexAttrib2fvNV_remap_index 406
+#define VertexAttrib2sNV_remap_index 407
+#define VertexAttrib2svNV_remap_index 408
+#define VertexAttrib3dNV_remap_index 409
+#define VertexAttrib3dvNV_remap_index 410
+#define VertexAttrib3fNV_remap_index 411
+#define VertexAttrib3fvNV_remap_index 412
+#define VertexAttrib3sNV_remap_index 413
+#define VertexAttrib3svNV_remap_index 414
+#define VertexAttrib4dNV_remap_index 415
+#define VertexAttrib4dvNV_remap_index 416
+#define VertexAttrib4fNV_remap_index 417
+#define VertexAttrib4fvNV_remap_index 418
+#define VertexAttrib4sNV_remap_index 419
+#define VertexAttrib4svNV_remap_index 420
+#define VertexAttrib4ubNV_remap_index 421
+#define VertexAttrib4ubvNV_remap_index 422
+#define VertexAttribPointerNV_remap_index 423
+#define VertexAttribs1dvNV_remap_index 424
+#define VertexAttribs1fvNV_remap_index 425
+#define VertexAttribs1svNV_remap_index 426
+#define VertexAttribs2dvNV_remap_index 427
+#define VertexAttribs2fvNV_remap_index 428
+#define VertexAttribs2svNV_remap_index 429
+#define VertexAttribs3dvNV_remap_index 430
+#define VertexAttribs3fvNV_remap_index 431
+#define VertexAttribs3svNV_remap_index 432
+#define VertexAttribs4dvNV_remap_index 433
+#define VertexAttribs4fvNV_remap_index 434
+#define VertexAttribs4svNV_remap_index 435
+#define VertexAttribs4ubvNV_remap_index 436
+#define GetTexBumpParameterfvATI_remap_index 437
+#define GetTexBumpParameterivATI_remap_index 438
+#define TexBumpParameterfvATI_remap_index 439
+#define TexBumpParameterivATI_remap_index 440
+#define AlphaFragmentOp1ATI_remap_index 441
+#define AlphaFragmentOp2ATI_remap_index 442
+#define AlphaFragmentOp3ATI_remap_index 443
+#define BeginFragmentShaderATI_remap_index 444
+#define BindFragmentShaderATI_remap_index 445
+#define ColorFragmentOp1ATI_remap_index 446
+#define ColorFragmentOp2ATI_remap_index 447
+#define ColorFragmentOp3ATI_remap_index 448
+#define DeleteFragmentShaderATI_remap_index 449
+#define EndFragmentShaderATI_remap_index 450
+#define GenFragmentShadersATI_remap_index 451
+#define PassTexCoordATI_remap_index 452
+#define SampleMapATI_remap_index 453
+#define SetFragmentShaderConstantATI_remap_index 454
+#define PointParameteriNV_remap_index 455
+#define PointParameterivNV_remap_index 456
+#define ActiveStencilFaceEXT_remap_index 457
+#define BindVertexArrayAPPLE_remap_index 458
+#define DeleteVertexArraysAPPLE_remap_index 459
+#define GenVertexArraysAPPLE_remap_index 460
+#define IsVertexArrayAPPLE_remap_index 461
+#define GetProgramNamedParameterdvNV_remap_index 462
+#define GetProgramNamedParameterfvNV_remap_index 463
+#define ProgramNamedParameter4dNV_remap_index 464
+#define ProgramNamedParameter4dvNV_remap_index 465
+#define ProgramNamedParameter4fNV_remap_index 466
+#define ProgramNamedParameter4fvNV_remap_index 467
+#define PrimitiveRestartIndexNV_remap_index 468
+#define PrimitiveRestartNV_remap_index 469
+#define DepthBoundsEXT_remap_index 470
+#define BlendEquationSeparateEXT_remap_index 471
+#define BindFramebufferEXT_remap_index 472
+#define BindRenderbufferEXT_remap_index 473
+#define CheckFramebufferStatusEXT_remap_index 474
+#define DeleteFramebuffersEXT_remap_index 475
+#define DeleteRenderbuffersEXT_remap_index 476
+#define FramebufferRenderbufferEXT_remap_index 477
+#define FramebufferTexture1DEXT_remap_index 478
+#define FramebufferTexture2DEXT_remap_index 479
+#define FramebufferTexture3DEXT_remap_index 480
+#define GenFramebuffersEXT_remap_index 481
+#define GenRenderbuffersEXT_remap_index 482
+#define GenerateMipmapEXT_remap_index 483
+#define GetFramebufferAttachmentParameterivEXT_remap_index 484
+#define GetRenderbufferParameterivEXT_remap_index 485
+#define IsFramebufferEXT_remap_index 486
+#define IsRenderbufferEXT_remap_index 487
+#define RenderbufferStorageEXT_remap_index 488
+#define BlitFramebufferEXT_remap_index 489
+#define BufferParameteriAPPLE_remap_index 490
+#define FlushMappedBufferRangeAPPLE_remap_index 491
+#define BindFragDataLocationEXT_remap_index 492
+#define GetFragDataLocationEXT_remap_index 493
+#define GetUniformuivEXT_remap_index 494
+#define GetVertexAttribIivEXT_remap_index 495
+#define GetVertexAttribIuivEXT_remap_index 496
+#define Uniform1uiEXT_remap_index 497
+#define Uniform1uivEXT_remap_index 498
+#define Uniform2uiEXT_remap_index 499
+#define Uniform2uivEXT_remap_index 500
+#define Uniform3uiEXT_remap_index 501
+#define Uniform3uivEXT_remap_index 502
+#define Uniform4uiEXT_remap_index 503
+#define Uniform4uivEXT_remap_index 504
+#define VertexAttribI1iEXT_remap_index 505
+#define VertexAttribI1ivEXT_remap_index 506
+#define VertexAttribI1uiEXT_remap_index 507
+#define VertexAttribI1uivEXT_remap_index 508
+#define VertexAttribI2iEXT_remap_index 509
+#define VertexAttribI2ivEXT_remap_index 510
+#define VertexAttribI2uiEXT_remap_index 511
+#define VertexAttribI2uivEXT_remap_index 512
+#define VertexAttribI3iEXT_remap_index 513
+#define VertexAttribI3ivEXT_remap_index 514
+#define VertexAttribI3uiEXT_remap_index 515
+#define VertexAttribI3uivEXT_remap_index 516
+#define VertexAttribI4bvEXT_remap_index 517
+#define VertexAttribI4iEXT_remap_index 518
+#define VertexAttribI4ivEXT_remap_index 519
+#define VertexAttribI4svEXT_remap_index 520
+#define VertexAttribI4ubvEXT_remap_index 521
+#define VertexAttribI4uiEXT_remap_index 522
+#define VertexAttribI4uivEXT_remap_index 523
+#define VertexAttribI4usvEXT_remap_index 524
+#define VertexAttribIPointerEXT_remap_index 525
+#define FramebufferTextureLayerEXT_remap_index 526
+#define ColorMaskIndexedEXT_remap_index 527
+#define DisableIndexedEXT_remap_index 528
+#define EnableIndexedEXT_remap_index 529
+#define GetBooleanIndexedvEXT_remap_index 530
+#define GetIntegerIndexedvEXT_remap_index 531
+#define IsEnabledIndexedEXT_remap_index 532
+#define ClearColorIiEXT_remap_index 533
+#define ClearColorIuiEXT_remap_index 534
+#define GetTexParameterIivEXT_remap_index 535
+#define GetTexParameterIuivEXT_remap_index 536
+#define TexParameterIivEXT_remap_index 537
+#define TexParameterIuivEXT_remap_index 538
+#define BeginConditionalRenderNV_remap_index 539
+#define EndConditionalRenderNV_remap_index 540
+#define BeginTransformFeedbackEXT_remap_index 541
+#define BindBufferBaseEXT_remap_index 542
+#define BindBufferOffsetEXT_remap_index 543
+#define BindBufferRangeEXT_remap_index 544
+#define EndTransformFeedbackEXT_remap_index 545
+#define GetTransformFeedbackVaryingEXT_remap_index 546
+#define TransformFeedbackVaryingsEXT_remap_index 547
+#define ProvokingVertexEXT_remap_index 548
+#define GetTexParameterPointervAPPLE_remap_index 549
+#define TextureRangeAPPLE_remap_index 550
+#define GetObjectParameterivAPPLE_remap_index 551
+#define ObjectPurgeableAPPLE_remap_index 552
+#define ObjectUnpurgeableAPPLE_remap_index 553
+#define ActiveProgramEXT_remap_index 554
+#define CreateShaderProgramEXT_remap_index 555
+#define UseShaderProgramEXT_remap_index 556
+#define TextureBarrierNV_remap_index 557
+#define StencilFuncSeparateATI_remap_index 558
+#define ProgramEnvParameters4fvEXT_remap_index 559
+#define ProgramLocalParameters4fvEXT_remap_index 560
+#define GetQueryObjecti64vEXT_remap_index 561
+#define GetQueryObjectui64vEXT_remap_index 562
+#define EGLImageTargetRenderbufferStorageOES_remap_index 563
+#define EGLImageTargetTexture2DOES_remap_index 564
#define _gloffset_AttachShader driDispatchRemapTable[AttachShader_remap_index]
#define _gloffset_CreateProgram driDispatchRemapTable[CreateProgram_remap_index]
@@ -1874,6 +1886,12 @@ extern int driDispatchRemapTable[ driDispatchRemapTable_size ];
#define _gloffset_GetnUniformivARB driDispatchRemapTable[GetnUniformivARB_remap_index]
#define _gloffset_GetnUniformuivARB driDispatchRemapTable[GetnUniformuivARB_remap_index]
#define _gloffset_ReadnPixelsARB driDispatchRemapTable[ReadnPixelsARB_remap_index]
+#define _gloffset_TexStorage1D driDispatchRemapTable[TexStorage1D_remap_index]
+#define _gloffset_TexStorage2D driDispatchRemapTable[TexStorage2D_remap_index]
+#define _gloffset_TexStorage3D driDispatchRemapTable[TexStorage3D_remap_index]
+#define _gloffset_TextureStorage1DEXT driDispatchRemapTable[TextureStorage1DEXT_remap_index]
+#define _gloffset_TextureStorage2DEXT driDispatchRemapTable[TextureStorage2DEXT_remap_index]
+#define _gloffset_TextureStorage3DEXT driDispatchRemapTable[TextureStorage3DEXT_remap_index]
#define _gloffset_PolygonOffsetEXT driDispatchRemapTable[PolygonOffsetEXT_remap_index]
#define _gloffset_GetPixelTexGenParameterfvSGIS driDispatchRemapTable[GetPixelTexGenParameterfvSGIS_remap_index]
#define _gloffset_GetPixelTexGenParameterivSGIS driDispatchRemapTable[GetPixelTexGenParameterivSGIS_remap_index]
@@ -9694,6 +9712,72 @@ static INLINE void SET_ReadnPixelsARB(struct _glapi_table *disp, void (GLAPIENTR
SET_by_offset(disp, _gloffset_ReadnPixelsARB, fn);
}
+typedef void (GLAPIENTRYP _glptr_TexStorage1D)(GLenum, GLsizei, GLenum, GLsizei);
+#define CALL_TexStorage1D(disp, parameters) \
+ (* GET_TexStorage1D(disp)) parameters
+static INLINE _glptr_TexStorage1D GET_TexStorage1D(struct _glapi_table *disp) {
+ return (_glptr_TexStorage1D) (GET_by_offset(disp, _gloffset_TexStorage1D));
+}
+
+static INLINE void SET_TexStorage1D(struct _glapi_table *disp, void (GLAPIENTRYP fn)(GLenum, GLsizei, GLenum, GLsizei)) {
+ SET_by_offset(disp, _gloffset_TexStorage1D, fn);
+}
+
+typedef void (GLAPIENTRYP _glptr_TexStorage2D)(GLenum, GLsizei, GLenum, GLsizei, GLsizei);
+#define CALL_TexStorage2D(disp, parameters) \
+ (* GET_TexStorage2D(disp)) parameters
+static INLINE _glptr_TexStorage2D GET_TexStorage2D(struct _glapi_table *disp) {
+ return (_glptr_TexStorage2D) (GET_by_offset(disp, _gloffset_TexStorage2D));
+}
+
+static INLINE void SET_TexStorage2D(struct _glapi_table *disp, void (GLAPIENTRYP fn)(GLenum, GLsizei, GLenum, GLsizei, GLsizei)) {
+ SET_by_offset(disp, _gloffset_TexStorage2D, fn);
+}
+
+typedef void (GLAPIENTRYP _glptr_TexStorage3D)(GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLsizei);
+#define CALL_TexStorage3D(disp, parameters) \
+ (* GET_TexStorage3D(disp)) parameters
+static INLINE _glptr_TexStorage3D GET_TexStorage3D(struct _glapi_table *disp) {
+ return (_glptr_TexStorage3D) (GET_by_offset(disp, _gloffset_TexStorage3D));
+}
+
+static INLINE void SET_TexStorage3D(struct _glapi_table *disp, void (GLAPIENTRYP fn)(GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLsizei)) {
+ SET_by_offset(disp, _gloffset_TexStorage3D, fn);
+}
+
+typedef void (GLAPIENTRYP _glptr_TextureStorage1DEXT)(GLuint, GLenum, GLsizei, GLenum, GLsizei);
+#define CALL_TextureStorage1DEXT(disp, parameters) \
+ (* GET_TextureStorage1DEXT(disp)) parameters
+static INLINE _glptr_TextureStorage1DEXT GET_TextureStorage1DEXT(struct _glapi_table *disp) {
+ return (_glptr_TextureStorage1DEXT) (GET_by_offset(disp, _gloffset_TextureStorage1DEXT));
+}
+
+static INLINE void SET_TextureStorage1DEXT(struct _glapi_table *disp, void (GLAPIENTRYP fn)(GLuint, GLenum, GLsizei, GLenum, GLsizei)) {
+ SET_by_offset(disp, _gloffset_TextureStorage1DEXT, fn);
+}
+
+typedef void (GLAPIENTRYP _glptr_TextureStorage2DEXT)(GLuint, GLenum, GLsizei, GLenum, GLsizei, GLsizei);
+#define CALL_TextureStorage2DEXT(disp, parameters) \
+ (* GET_TextureStorage2DEXT(disp)) parameters
+static INLINE _glptr_TextureStorage2DEXT GET_TextureStorage2DEXT(struct _glapi_table *disp) {
+ return (_glptr_TextureStorage2DEXT) (GET_by_offset(disp, _gloffset_TextureStorage2DEXT));
+}
+
+static INLINE void SET_TextureStorage2DEXT(struct _glapi_table *disp, void (GLAPIENTRYP fn)(GLuint, GLenum, GLsizei, GLenum, GLsizei, GLsizei)) {
+ SET_by_offset(disp, _gloffset_TextureStorage2DEXT, fn);
+}
+
+typedef void (GLAPIENTRYP _glptr_TextureStorage3DEXT)(GLuint, GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLsizei);
+#define CALL_TextureStorage3DEXT(disp, parameters) \
+ (* GET_TextureStorage3DEXT(disp)) parameters
+static INLINE _glptr_TextureStorage3DEXT GET_TextureStorage3DEXT(struct _glapi_table *disp) {
+ return (_glptr_TextureStorage3DEXT) (GET_by_offset(disp, _gloffset_TextureStorage3DEXT));
+}
+
+static INLINE void SET_TextureStorage3DEXT(struct _glapi_table *disp, void (GLAPIENTRYP fn)(GLuint, GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLsizei)) {
+ SET_by_offset(disp, _gloffset_TextureStorage3DEXT, fn);
+}
+
typedef void (GLAPIENTRYP _glptr_PolygonOffsetEXT)(GLfloat, GLfloat);
#define CALL_PolygonOffsetEXT(disp, parameters) \
(* GET_PolygonOffsetEXT(disp)) parameters
diff --git a/mesalib/src/mesa/main/dlist.c b/mesalib/src/mesa/main/dlist.c
index 52548fdc1..e1acc8028 100644
--- a/mesalib/src/mesa/main/dlist.c
+++ b/mesalib/src/mesa/main/dlist.c
@@ -61,6 +61,7 @@
#include "shaderapi.h"
#include "syncobj.h"
#include "teximage.h"
+#include "texstorage.h"
#include "mtypes.h"
#include "varray.h"
#if FEATURE_ARB_vertex_program || FEATURE_ARB_fragment_program
@@ -7363,7 +7364,7 @@ save_BeginConditionalRender(GLuint queryId, GLenum mode)
}
static void GLAPIENTRY
-save_EndConditionalRender()
+save_EndConditionalRender(void)
{
GET_CURRENT_CONTEXT(ctx);
ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx);
@@ -10364,6 +10365,14 @@ _mesa_create_save_table(void)
_mesa_init_sync_dispatch(table);
SET_WaitSync(table, save_WaitSync);
+ /* GL_ARB_texture_storage (no dlist support) */
+ SET_TexStorage1D(table, _mesa_TexStorage1D);
+ SET_TexStorage2D(table, _mesa_TexStorage2D);
+ SET_TexStorage3D(table, _mesa_TexStorage3D);
+ SET_TextureStorage1DEXT(table, _mesa_TextureStorage1DEXT);
+ SET_TextureStorage2DEXT(table, _mesa_TextureStorage2DEXT);
+ SET_TextureStorage3DEXT(table, _mesa_TextureStorage3DEXT);
+
return table;
}
diff --git a/mesalib/src/mesa/main/enable.c b/mesalib/src/mesa/main/enable.c
index 689dc8a99..b2c77243b 100644
--- a/mesalib/src/mesa/main/enable.c
+++ b/mesalib/src/mesa/main/enable.c
@@ -916,6 +916,14 @@ _mesa_set_enable(struct gl_context *ctx, GLenum cap, GLboolean state)
ctx->Color.sRGBEnabled = state;
break;
+ /* GL_OES_EGL_image_external */
+ case GL_TEXTURE_EXTERNAL_OES:
+ CHECK_EXTENSION(OES_EGL_image_external, cap);
+ if (!enable_texture(ctx, state, TEXTURE_EXTERNAL_BIT)) {
+ return;
+ }
+ break;
+
default:
goto invalid_enum_error;
}
@@ -1417,6 +1425,11 @@ _mesa_IsEnabled( GLenum cap )
CHECK_EXTENSION(EXT_framebuffer_sRGB);
return ctx->Color.sRGBEnabled;
+ /* GL_OES_EGL_image_external */
+ case GL_TEXTURE_EXTERNAL_OES:
+ CHECK_EXTENSION(OES_EGL_image_external);
+ return is_texture_enabled(ctx, TEXTURE_EXTERNAL_BIT);
+
default:
goto invalid_enum_error;
}
diff --git a/mesalib/src/mesa/main/enums.c b/mesalib/src/mesa/main/enums.c
index fb5ed2922..a75831db3 100644
--- a/mesalib/src/mesa/main/enums.c
+++ b/mesalib/src/mesa/main/enums.c
@@ -749,6 +749,7 @@ LONGSTRING static const char enum_string_table[] =
"GL_GEOMETRY_VERTICES_OUT\0"
"GL_GEOMETRY_VERTICES_OUT_ARB\0"
"GL_GEQUAL\0"
+ "GL_GL_TEXTURE_IMMUTABLE_FORMAT\0"
"GL_GREATER\0"
"GL_GREEN\0"
"GL_GREEN_BIAS\0"
@@ -1662,6 +1663,7 @@ LONGSTRING static const char enum_string_table[] =
"GL_REPLACE\0"
"GL_REPLACE_EXT\0"
"GL_REPLICATE_BORDER_HP\0"
+ "GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES\0"
"GL_RESCALE_NORMAL\0"
"GL_RESCALE_NORMAL_EXT\0"
"GL_RESET_NOTIFICATION_STRATEGY_ARB\0"
@@ -1780,6 +1782,7 @@ LONGSTRING static const char enum_string_table[] =
"GL_SAMPLER_CUBE\0"
"GL_SAMPLER_CUBE_SHADOW\0"
"GL_SAMPLER_CUBE_SHADOW_EXT\0"
+ "GL_SAMPLER_EXTERNAL_OES\0"
"GL_SAMPLES\0"
"GL_SAMPLES_3DFX\0"
"GL_SAMPLES_ARB\0"
@@ -2046,6 +2049,7 @@ LONGSTRING static const char enum_string_table[] =
"GL_TEXTURE_BINDING_CUBE_MAP\0"
"GL_TEXTURE_BINDING_CUBE_MAP_ARB\0"
"GL_TEXTURE_BINDING_CUBE_MAP_OES\0"
+ "GL_TEXTURE_BINDING_EXTERNAL_OES\0"
"GL_TEXTURE_BINDING_RECTANGLE\0"
"GL_TEXTURE_BINDING_RECTANGLE_ARB\0"
"GL_TEXTURE_BINDING_RECTANGLE_NV\0"
@@ -2119,6 +2123,7 @@ LONGSTRING static const char enum_string_table[] =
"GL_TEXTURE_ENV\0"
"GL_TEXTURE_ENV_COLOR\0"
"GL_TEXTURE_ENV_MODE\0"
+ "GL_TEXTURE_EXTERNAL_OES\0"
"GL_TEXTURE_FILTER_CONTROL\0"
"GL_TEXTURE_FILTER_CONTROL_EXT\0"
"GL_TEXTURE_GEN_MODE\0"
@@ -2374,7 +2379,7 @@ LONGSTRING static const char enum_string_table[] =
"GL_ZOOM_Y\0"
;
-static const enum_elt all_enums[2335] =
+static const enum_elt all_enums[2340] =
{
{ 0, 0x00000600 }, /* GL_2D */
{ 6, 0x00001407 }, /* GL_2_BYTES */
@@ -3088,1712 +3093,1717 @@ static const enum_elt all_enums[2335] =
{ 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 */
+ { 15538, 0x0000912F }, /* GL_GL_TEXTURE_IMMUTABLE_FORMAT */
+ { 15569, 0x00000204 }, /* GL_GREATER */
+ { 15580, 0x00001904 }, /* GL_GREEN */
+ { 15589, 0x00000D19 }, /* GL_GREEN_BIAS */
+ { 15603, 0x00000D53 }, /* GL_GREEN_BITS */
+ { 15617, 0x00008D95 }, /* GL_GREEN_INTEGER */
+ { 15634, 0x00008D95 }, /* GL_GREEN_INTEGER_EXT */
+ { 15655, 0x00000D18 }, /* GL_GREEN_SCALE */
+ { 15670, 0x00008253 }, /* GL_GUILTY_CONTEXT_RESET_ARB */
+ { 15698, 0x0000140B }, /* GL_HALF_FLOAT */
+ { 15712, 0x00008D61 }, /* GL_HALF_FLOAT_OES */
+ { 15730, 0x00008DF2 }, /* GL_HIGH_FLOAT */
+ { 15744, 0x00008DF5 }, /* GL_HIGH_INT */
+ { 15756, 0x00008000 }, /* GL_HINT_BIT */
+ { 15768, 0x00008024 }, /* GL_HISTOGRAM */
+ { 15781, 0x0000802B }, /* GL_HISTOGRAM_ALPHA_SIZE */
+ { 15805, 0x0000802B }, /* GL_HISTOGRAM_ALPHA_SIZE_EXT */
+ { 15833, 0x0000802A }, /* GL_HISTOGRAM_BLUE_SIZE */
+ { 15856, 0x0000802A }, /* GL_HISTOGRAM_BLUE_SIZE_EXT */
+ { 15883, 0x00008024 }, /* GL_HISTOGRAM_EXT */
+ { 15900, 0x00008027 }, /* GL_HISTOGRAM_FORMAT */
+ { 15920, 0x00008027 }, /* GL_HISTOGRAM_FORMAT_EXT */
+ { 15944, 0x00008029 }, /* GL_HISTOGRAM_GREEN_SIZE */
+ { 15968, 0x00008029 }, /* GL_HISTOGRAM_GREEN_SIZE_EXT */
+ { 15996, 0x0000802C }, /* GL_HISTOGRAM_LUMINANCE_SIZE */
+ { 16024, 0x0000802C }, /* GL_HISTOGRAM_LUMINANCE_SIZE_EXT */
+ { 16056, 0x00008028 }, /* GL_HISTOGRAM_RED_SIZE */
+ { 16078, 0x00008028 }, /* GL_HISTOGRAM_RED_SIZE_EXT */
+ { 16104, 0x0000802D }, /* GL_HISTOGRAM_SINK */
+ { 16122, 0x0000802D }, /* GL_HISTOGRAM_SINK_EXT */
+ { 16144, 0x00008026 }, /* GL_HISTOGRAM_WIDTH */
+ { 16163, 0x00008026 }, /* GL_HISTOGRAM_WIDTH_EXT */
+ { 16186, 0x0000862A }, /* GL_IDENTITY_NV */
+ { 16201, 0x00008150 }, /* GL_IGNORE_BORDER_HP */
+ { 16221, 0x00008B9B }, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT */
+ { 16257, 0x00008B9B }, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES */
+ { 16297, 0x00008B9A }, /* GL_IMPLEMENTATION_COLOR_READ_TYPE */
+ { 16331, 0x00008B9A }, /* GL_IMPLEMENTATION_COLOR_READ_TYPE_OES */
+ { 16369, 0x00001E02 }, /* GL_INCR */
+ { 16377, 0x00008507 }, /* GL_INCR_WRAP */
+ { 16390, 0x00008507 }, /* GL_INCR_WRAP_EXT */
+ { 16407, 0x00008222 }, /* GL_INDEX */
+ { 16416, 0x00008077 }, /* GL_INDEX_ARRAY */
+ { 16431, 0x00008899 }, /* GL_INDEX_ARRAY_BUFFER_BINDING */
+ { 16461, 0x00008899 }, /* GL_INDEX_ARRAY_BUFFER_BINDING_ARB */
+ { 16495, 0x00008091 }, /* GL_INDEX_ARRAY_POINTER */
+ { 16518, 0x00008086 }, /* GL_INDEX_ARRAY_STRIDE */
+ { 16540, 0x00008085 }, /* GL_INDEX_ARRAY_TYPE */
+ { 16560, 0x00000D51 }, /* GL_INDEX_BITS */
+ { 16574, 0x00000C20 }, /* GL_INDEX_CLEAR_VALUE */
+ { 16595, 0x00000BF1 }, /* GL_INDEX_LOGIC_OP */
+ { 16613, 0x00000C30 }, /* GL_INDEX_MODE */
+ { 16627, 0x00000D13 }, /* GL_INDEX_OFFSET */
+ { 16643, 0x00000D12 }, /* GL_INDEX_SHIFT */
+ { 16658, 0x00000C21 }, /* GL_INDEX_WRITEMASK */
+ { 16677, 0x00008B84 }, /* GL_INFO_LOG_LENGTH */
+ { 16696, 0x00008254 }, /* GL_INNOCENT_CONTEXT_RESET_ARB */
+ { 16726, 0x00001404 }, /* GL_INT */
+ { 16733, 0x00008049 }, /* GL_INTENSITY */
+ { 16746, 0x0000804C }, /* GL_INTENSITY12 */
+ { 16761, 0x0000804C }, /* GL_INTENSITY12_EXT */
+ { 16780, 0x0000804D }, /* GL_INTENSITY16 */
+ { 16795, 0x00008D8B }, /* GL_INTENSITY16I_EXT */
+ { 16815, 0x00008D79 }, /* GL_INTENSITY16UI_EXT */
+ { 16836, 0x0000804D }, /* GL_INTENSITY16_EXT */
+ { 16855, 0x00008D85 }, /* GL_INTENSITY32I_EXT */
+ { 16875, 0x00008D73 }, /* GL_INTENSITY32UI_EXT */
+ { 16896, 0x0000804A }, /* GL_INTENSITY4 */
+ { 16910, 0x0000804A }, /* GL_INTENSITY4_EXT */
+ { 16928, 0x0000804B }, /* GL_INTENSITY8 */
+ { 16942, 0x00008D91 }, /* GL_INTENSITY8I_EXT */
+ { 16961, 0x00008D7F }, /* GL_INTENSITY8UI_EXT */
+ { 16981, 0x0000804B }, /* GL_INTENSITY8_EXT */
+ { 16999, 0x00008049 }, /* GL_INTENSITY_EXT */
+ { 17016, 0x00008C8C }, /* GL_INTERLEAVED_ATTRIBS */
+ { 17039, 0x00008C8C }, /* GL_INTERLEAVED_ATTRIBS_EXT */
+ { 17066, 0x00008575 }, /* GL_INTERPOLATE */
+ { 17081, 0x00008575 }, /* GL_INTERPOLATE_ARB */
+ { 17100, 0x00008575 }, /* GL_INTERPOLATE_EXT */
+ { 17119, 0x00008DF7 }, /* GL_INT_10_10_10_2_OES */
+ { 17141, 0x00008D9F }, /* GL_INT_2_10_10_10_REV */
+ { 17163, 0x00008DC9 }, /* GL_INT_SAMPLER_1D */
+ { 17181, 0x00008DCE }, /* GL_INT_SAMPLER_1D_ARRAY */
+ { 17205, 0x00008DCE }, /* GL_INT_SAMPLER_1D_ARRAY_EXT */
+ { 17233, 0x00008DC9 }, /* GL_INT_SAMPLER_1D_EXT */
+ { 17255, 0x00008DCA }, /* GL_INT_SAMPLER_2D */
+ { 17273, 0x00008DCF }, /* GL_INT_SAMPLER_2D_ARRAY */
+ { 17297, 0x00008DCF }, /* GL_INT_SAMPLER_2D_ARRAY_EXT */
+ { 17325, 0x00008DCA }, /* GL_INT_SAMPLER_2D_EXT */
+ { 17347, 0x00008DCD }, /* GL_INT_SAMPLER_2D_RECT */
+ { 17370, 0x00008DCD }, /* GL_INT_SAMPLER_2D_RECT_EXT */
+ { 17397, 0x00008DCB }, /* GL_INT_SAMPLER_3D */
+ { 17415, 0x00008DCB }, /* GL_INT_SAMPLER_3D_EXT */
+ { 17437, 0x00008DD0 }, /* GL_INT_SAMPLER_BUFFER */
+ { 17459, 0x00008DD0 }, /* GL_INT_SAMPLER_BUFFER_EXT */
+ { 17485, 0x00008DCC }, /* GL_INT_SAMPLER_CUBE */
+ { 17505, 0x00008DCC }, /* GL_INT_SAMPLER_CUBE_EXT */
+ { 17529, 0x00008B53 }, /* GL_INT_VEC2 */
+ { 17541, 0x00008B53 }, /* GL_INT_VEC2_ARB */
+ { 17557, 0x00008B54 }, /* GL_INT_VEC3 */
+ { 17569, 0x00008B54 }, /* GL_INT_VEC3_ARB */
+ { 17585, 0x00008B55 }, /* GL_INT_VEC4 */
+ { 17597, 0x00008B55 }, /* GL_INT_VEC4_ARB */
+ { 17613, 0x00000500 }, /* GL_INVALID_ENUM */
+ { 17629, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION */
+ { 17662, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION_EXT */
+ { 17699, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION_OES */
+ { 17736, 0x00000502 }, /* GL_INVALID_OPERATION */
+ { 17757, 0x00000501 }, /* GL_INVALID_VALUE */
+ { 17774, 0x0000862B }, /* GL_INVERSE_NV */
+ { 17788, 0x0000862D }, /* GL_INVERSE_TRANSPOSE_NV */
+ { 17812, 0x0000150A }, /* GL_INVERT */
+ { 17822, 0x00001E00 }, /* GL_KEEP */
+ { 17830, 0x00008E4E }, /* GL_LAST_VERTEX_CONVENTION */
+ { 17856, 0x00008E4E }, /* GL_LAST_VERTEX_CONVENTION_EXT */
+ { 17886, 0x00000406 }, /* GL_LEFT */
+ { 17894, 0x00000203 }, /* GL_LEQUAL */
+ { 17904, 0x00000201 }, /* GL_LESS */
+ { 17912, 0x00004000 }, /* GL_LIGHT0 */
+ { 17922, 0x00004001 }, /* GL_LIGHT1 */
+ { 17932, 0x00004002 }, /* GL_LIGHT2 */
+ { 17942, 0x00004003 }, /* GL_LIGHT3 */
+ { 17952, 0x00004004 }, /* GL_LIGHT4 */
+ { 17962, 0x00004005 }, /* GL_LIGHT5 */
+ { 17972, 0x00004006 }, /* GL_LIGHT6 */
+ { 17982, 0x00004007 }, /* GL_LIGHT7 */
+ { 17992, 0x00000B50 }, /* GL_LIGHTING */
+ { 18004, 0x00000040 }, /* GL_LIGHTING_BIT */
+ { 18020, 0x00000B53 }, /* GL_LIGHT_MODEL_AMBIENT */
+ { 18043, 0x000081F8 }, /* GL_LIGHT_MODEL_COLOR_CONTROL */
+ { 18072, 0x000081F8 }, /* GL_LIGHT_MODEL_COLOR_CONTROL_EXT */
+ { 18105, 0x00000B51 }, /* GL_LIGHT_MODEL_LOCAL_VIEWER */
+ { 18133, 0x00000B52 }, /* GL_LIGHT_MODEL_TWO_SIDE */
+ { 18157, 0x00001B01 }, /* GL_LINE */
+ { 18165, 0x00002601 }, /* GL_LINEAR */
+ { 18175, 0x00001208 }, /* GL_LINEAR_ATTENUATION */
+ { 18197, 0x00008170 }, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */
+ { 18227, 0x0000844F }, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */
+ { 18258, 0x00002703 }, /* GL_LINEAR_MIPMAP_LINEAR */
+ { 18282, 0x00002701 }, /* GL_LINEAR_MIPMAP_NEAREST */
+ { 18307, 0x00000001 }, /* GL_LINES */
+ { 18316, 0x0000000A }, /* GL_LINES_ADJACENCY */
+ { 18335, 0x0000000A }, /* GL_LINES_ADJACENCY_ARB */
+ { 18358, 0x00000004 }, /* GL_LINE_BIT */
+ { 18370, 0x00000002 }, /* GL_LINE_LOOP */
+ { 18383, 0x00000707 }, /* GL_LINE_RESET_TOKEN */
+ { 18403, 0x00000B20 }, /* GL_LINE_SMOOTH */
+ { 18418, 0x00000C52 }, /* GL_LINE_SMOOTH_HINT */
+ { 18438, 0x00000B24 }, /* GL_LINE_STIPPLE */
+ { 18454, 0x00000B25 }, /* GL_LINE_STIPPLE_PATTERN */
+ { 18478, 0x00000B26 }, /* GL_LINE_STIPPLE_REPEAT */
+ { 18501, 0x00000003 }, /* GL_LINE_STRIP */
+ { 18515, 0x0000000B }, /* GL_LINE_STRIP_ADJACENCY */
+ { 18539, 0x0000000B }, /* GL_LINE_STRIP_ADJACENCY_ARB */
+ { 18567, 0x00000702 }, /* GL_LINE_TOKEN */
+ { 18581, 0x00000B21 }, /* GL_LINE_WIDTH */
+ { 18595, 0x00000B23 }, /* GL_LINE_WIDTH_GRANULARITY */
+ { 18621, 0x00000B22 }, /* GL_LINE_WIDTH_RANGE */
+ { 18641, 0x00008B82 }, /* GL_LINK_STATUS */
+ { 18656, 0x00000B32 }, /* GL_LIST_BASE */
+ { 18669, 0x00020000 }, /* GL_LIST_BIT */
+ { 18681, 0x00000B33 }, /* GL_LIST_INDEX */
+ { 18695, 0x00000B30 }, /* GL_LIST_MODE */
+ { 18708, 0x00000101 }, /* GL_LOAD */
+ { 18716, 0x00000BF1 }, /* GL_LOGIC_OP */
+ { 18728, 0x00000BF0 }, /* GL_LOGIC_OP_MODE */
+ { 18745, 0x00008252 }, /* GL_LOSE_CONTEXT_ON_RESET_ARB */
+ { 18774, 0x00008CA1 }, /* GL_LOWER_LEFT */
+ { 18788, 0x00008DF0 }, /* GL_LOW_FLOAT */
+ { 18801, 0x00008DF3 }, /* GL_LOW_INT */
+ { 18812, 0x00001909 }, /* GL_LUMINANCE */
+ { 18825, 0x00008041 }, /* GL_LUMINANCE12 */
+ { 18840, 0x00008047 }, /* GL_LUMINANCE12_ALPHA12 */
+ { 18863, 0x00008047 }, /* GL_LUMINANCE12_ALPHA12_EXT */
+ { 18890, 0x00008046 }, /* GL_LUMINANCE12_ALPHA4 */
+ { 18912, 0x00008046 }, /* GL_LUMINANCE12_ALPHA4_EXT */
+ { 18938, 0x00008041 }, /* GL_LUMINANCE12_EXT */
+ { 18957, 0x00008042 }, /* GL_LUMINANCE16 */
+ { 18972, 0x00008D8C }, /* GL_LUMINANCE16I_EXT */
+ { 18992, 0x00008D7A }, /* GL_LUMINANCE16UI_EXT */
+ { 19013, 0x00008048 }, /* GL_LUMINANCE16_ALPHA16 */
+ { 19036, 0x00008048 }, /* GL_LUMINANCE16_ALPHA16_EXT */
+ { 19063, 0x00008042 }, /* GL_LUMINANCE16_EXT */
+ { 19082, 0x00008D86 }, /* GL_LUMINANCE32I_EXT */
+ { 19102, 0x00008D74 }, /* GL_LUMINANCE32UI_EXT */
+ { 19123, 0x0000803F }, /* GL_LUMINANCE4 */
+ { 19137, 0x00008043 }, /* GL_LUMINANCE4_ALPHA4 */
+ { 19158, 0x00008043 }, /* GL_LUMINANCE4_ALPHA4_EXT */
+ { 19183, 0x0000803F }, /* GL_LUMINANCE4_EXT */
+ { 19201, 0x00008044 }, /* GL_LUMINANCE6_ALPHA2 */
+ { 19222, 0x00008044 }, /* GL_LUMINANCE6_ALPHA2_EXT */
+ { 19247, 0x00008040 }, /* GL_LUMINANCE8 */
+ { 19261, 0x00008D92 }, /* GL_LUMINANCE8I_EXT */
+ { 19280, 0x00008D80 }, /* GL_LUMINANCE8UI_EXT */
+ { 19300, 0x00008045 }, /* GL_LUMINANCE8_ALPHA8 */
+ { 19321, 0x00008045 }, /* GL_LUMINANCE8_ALPHA8_EXT */
+ { 19346, 0x00008040 }, /* GL_LUMINANCE8_EXT */
+ { 19364, 0x0000190A }, /* GL_LUMINANCE_ALPHA */
+ { 19383, 0x00008D8D }, /* GL_LUMINANCE_ALPHA16I_EXT */
+ { 19409, 0x00008D7B }, /* GL_LUMINANCE_ALPHA16UI_EXT */
+ { 19436, 0x00008D87 }, /* GL_LUMINANCE_ALPHA32I_EXT */
+ { 19462, 0x00008D75 }, /* GL_LUMINANCE_ALPHA32UI_EXT */
+ { 19489, 0x00008D93 }, /* GL_LUMINANCE_ALPHA8I_EXT */
+ { 19514, 0x00008D81 }, /* GL_LUMINANCE_ALPHA8UI_EXT */
+ { 19540, 0x00008D9D }, /* GL_LUMINANCE_ALPHA_INTEGER_EXT */
+ { 19571, 0x00008D9C }, /* GL_LUMINANCE_INTEGER_EXT */
+ { 19596, 0x0000821B }, /* GL_MAJOR_VERSION */
+ { 19613, 0x00000D90 }, /* GL_MAP1_COLOR_4 */
+ { 19629, 0x00000DD0 }, /* GL_MAP1_GRID_DOMAIN */
+ { 19649, 0x00000DD1 }, /* GL_MAP1_GRID_SEGMENTS */
+ { 19671, 0x00000D91 }, /* GL_MAP1_INDEX */
+ { 19685, 0x00000D92 }, /* GL_MAP1_NORMAL */
+ { 19700, 0x00000D93 }, /* GL_MAP1_TEXTURE_COORD_1 */
+ { 19724, 0x00000D94 }, /* GL_MAP1_TEXTURE_COORD_2 */
+ { 19748, 0x00000D95 }, /* GL_MAP1_TEXTURE_COORD_3 */
+ { 19772, 0x00000D96 }, /* GL_MAP1_TEXTURE_COORD_4 */
+ { 19796, 0x00000D97 }, /* GL_MAP1_VERTEX_3 */
+ { 19813, 0x00000D98 }, /* GL_MAP1_VERTEX_4 */
+ { 19830, 0x00008660 }, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */
+ { 19858, 0x0000866A }, /* GL_MAP1_VERTEX_ATTRIB10_4_NV */
+ { 19887, 0x0000866B }, /* GL_MAP1_VERTEX_ATTRIB11_4_NV */
+ { 19916, 0x0000866C }, /* GL_MAP1_VERTEX_ATTRIB12_4_NV */
+ { 19945, 0x0000866D }, /* GL_MAP1_VERTEX_ATTRIB13_4_NV */
+ { 19974, 0x0000866E }, /* GL_MAP1_VERTEX_ATTRIB14_4_NV */
+ { 20003, 0x0000866F }, /* GL_MAP1_VERTEX_ATTRIB15_4_NV */
+ { 20032, 0x00008661 }, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */
+ { 20060, 0x00008662 }, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */
+ { 20088, 0x00008663 }, /* GL_MAP1_VERTEX_ATTRIB3_4_NV */
+ { 20116, 0x00008664 }, /* GL_MAP1_VERTEX_ATTRIB4_4_NV */
+ { 20144, 0x00008665 }, /* GL_MAP1_VERTEX_ATTRIB5_4_NV */
+ { 20172, 0x00008666 }, /* GL_MAP1_VERTEX_ATTRIB6_4_NV */
+ { 20200, 0x00008667 }, /* GL_MAP1_VERTEX_ATTRIB7_4_NV */
+ { 20228, 0x00008668 }, /* GL_MAP1_VERTEX_ATTRIB8_4_NV */
+ { 20256, 0x00008669 }, /* GL_MAP1_VERTEX_ATTRIB9_4_NV */
+ { 20284, 0x00000DB0 }, /* GL_MAP2_COLOR_4 */
+ { 20300, 0x00000DD2 }, /* GL_MAP2_GRID_DOMAIN */
+ { 20320, 0x00000DD3 }, /* GL_MAP2_GRID_SEGMENTS */
+ { 20342, 0x00000DB1 }, /* GL_MAP2_INDEX */
+ { 20356, 0x00000DB2 }, /* GL_MAP2_NORMAL */
+ { 20371, 0x00000DB3 }, /* GL_MAP2_TEXTURE_COORD_1 */
+ { 20395, 0x00000DB4 }, /* GL_MAP2_TEXTURE_COORD_2 */
+ { 20419, 0x00000DB5 }, /* GL_MAP2_TEXTURE_COORD_3 */
+ { 20443, 0x00000DB6 }, /* GL_MAP2_TEXTURE_COORD_4 */
+ { 20467, 0x00000DB7 }, /* GL_MAP2_VERTEX_3 */
+ { 20484, 0x00000DB8 }, /* GL_MAP2_VERTEX_4 */
+ { 20501, 0x00008670 }, /* GL_MAP2_VERTEX_ATTRIB0_4_NV */
+ { 20529, 0x0000867A }, /* GL_MAP2_VERTEX_ATTRIB10_4_NV */
+ { 20558, 0x0000867B }, /* GL_MAP2_VERTEX_ATTRIB11_4_NV */
+ { 20587, 0x0000867C }, /* GL_MAP2_VERTEX_ATTRIB12_4_NV */
+ { 20616, 0x0000867D }, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */
+ { 20645, 0x0000867E }, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */
+ { 20674, 0x0000867F }, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */
+ { 20703, 0x00008671 }, /* GL_MAP2_VERTEX_ATTRIB1_4_NV */
+ { 20731, 0x00008672 }, /* GL_MAP2_VERTEX_ATTRIB2_4_NV */
+ { 20759, 0x00008673 }, /* GL_MAP2_VERTEX_ATTRIB3_4_NV */
+ { 20787, 0x00008674 }, /* GL_MAP2_VERTEX_ATTRIB4_4_NV */
+ { 20815, 0x00008675 }, /* GL_MAP2_VERTEX_ATTRIB5_4_NV */
+ { 20843, 0x00008676 }, /* GL_MAP2_VERTEX_ATTRIB6_4_NV */
+ { 20871, 0x00008677 }, /* GL_MAP2_VERTEX_ATTRIB7_4_NV */
+ { 20899, 0x00008678 }, /* GL_MAP2_VERTEX_ATTRIB8_4_NV */
+ { 20927, 0x00008679 }, /* GL_MAP2_VERTEX_ATTRIB9_4_NV */
+ { 20955, 0x00000D10 }, /* GL_MAP_COLOR */
+ { 20968, 0x00000010 }, /* GL_MAP_FLUSH_EXPLICIT_BIT */
+ { 20994, 0x00000008 }, /* GL_MAP_INVALIDATE_BUFFER_BIT */
+ { 21023, 0x00000004 }, /* GL_MAP_INVALIDATE_RANGE_BIT */
+ { 21051, 0x00000001 }, /* GL_MAP_READ_BIT */
+ { 21067, 0x00000D11 }, /* GL_MAP_STENCIL */
+ { 21082, 0x00000020 }, /* GL_MAP_UNSYNCHRONIZED_BIT */
+ { 21108, 0x00000002 }, /* GL_MAP_WRITE_BIT */
+ { 21125, 0x000088C0 }, /* GL_MATRIX0_ARB */
+ { 21140, 0x00008630 }, /* GL_MATRIX0_NV */
+ { 21154, 0x000088CA }, /* GL_MATRIX10_ARB */
+ { 21170, 0x000088CB }, /* GL_MATRIX11_ARB */
+ { 21186, 0x000088CC }, /* GL_MATRIX12_ARB */
+ { 21202, 0x000088CD }, /* GL_MATRIX13_ARB */
+ { 21218, 0x000088CE }, /* GL_MATRIX14_ARB */
+ { 21234, 0x000088CF }, /* GL_MATRIX15_ARB */
+ { 21250, 0x000088D0 }, /* GL_MATRIX16_ARB */
+ { 21266, 0x000088D1 }, /* GL_MATRIX17_ARB */
+ { 21282, 0x000088D2 }, /* GL_MATRIX18_ARB */
+ { 21298, 0x000088D3 }, /* GL_MATRIX19_ARB */
+ { 21314, 0x000088C1 }, /* GL_MATRIX1_ARB */
+ { 21329, 0x00008631 }, /* GL_MATRIX1_NV */
+ { 21343, 0x000088D4 }, /* GL_MATRIX20_ARB */
+ { 21359, 0x000088D5 }, /* GL_MATRIX21_ARB */
+ { 21375, 0x000088D6 }, /* GL_MATRIX22_ARB */
+ { 21391, 0x000088D7 }, /* GL_MATRIX23_ARB */
+ { 21407, 0x000088D8 }, /* GL_MATRIX24_ARB */
+ { 21423, 0x000088D9 }, /* GL_MATRIX25_ARB */
+ { 21439, 0x000088DA }, /* GL_MATRIX26_ARB */
+ { 21455, 0x000088DB }, /* GL_MATRIX27_ARB */
+ { 21471, 0x000088DC }, /* GL_MATRIX28_ARB */
+ { 21487, 0x000088DD }, /* GL_MATRIX29_ARB */
+ { 21503, 0x000088C2 }, /* GL_MATRIX2_ARB */
+ { 21518, 0x00008632 }, /* GL_MATRIX2_NV */
+ { 21532, 0x000088DE }, /* GL_MATRIX30_ARB */
+ { 21548, 0x000088DF }, /* GL_MATRIX31_ARB */
+ { 21564, 0x000088C3 }, /* GL_MATRIX3_ARB */
+ { 21579, 0x00008633 }, /* GL_MATRIX3_NV */
+ { 21593, 0x000088C4 }, /* GL_MATRIX4_ARB */
+ { 21608, 0x00008634 }, /* GL_MATRIX4_NV */
+ { 21622, 0x000088C5 }, /* GL_MATRIX5_ARB */
+ { 21637, 0x00008635 }, /* GL_MATRIX5_NV */
+ { 21651, 0x000088C6 }, /* GL_MATRIX6_ARB */
+ { 21666, 0x00008636 }, /* GL_MATRIX6_NV */
+ { 21680, 0x000088C7 }, /* GL_MATRIX7_ARB */
+ { 21695, 0x00008637 }, /* GL_MATRIX7_NV */
+ { 21709, 0x000088C8 }, /* GL_MATRIX8_ARB */
+ { 21724, 0x000088C9 }, /* GL_MATRIX9_ARB */
+ { 21739, 0x00008844 }, /* GL_MATRIX_INDEX_ARRAY_ARB */
+ { 21765, 0x00008B9E }, /* GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES */
+ { 21806, 0x00008844 }, /* GL_MATRIX_INDEX_ARRAY_OES */
+ { 21832, 0x00008849 }, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */
+ { 21866, 0x00008849 }, /* GL_MATRIX_INDEX_ARRAY_POINTER_OES */
+ { 21900, 0x00008846 }, /* GL_MATRIX_INDEX_ARRAY_SIZE_ARB */
+ { 21931, 0x00008846 }, /* GL_MATRIX_INDEX_ARRAY_SIZE_OES */
+ { 21962, 0x00008848 }, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */
+ { 21995, 0x00008848 }, /* GL_MATRIX_INDEX_ARRAY_STRIDE_OES */
+ { 22028, 0x00008847 }, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */
+ { 22059, 0x00008847 }, /* GL_MATRIX_INDEX_ARRAY_TYPE_OES */
+ { 22090, 0x00000BA0 }, /* GL_MATRIX_MODE */
+ { 22105, 0x00008840 }, /* GL_MATRIX_PALETTE_ARB */
+ { 22127, 0x00008840 }, /* GL_MATRIX_PALETTE_OES */
+ { 22149, 0x00008008 }, /* GL_MAX */
+ { 22156, 0x00008073 }, /* GL_MAX_3D_TEXTURE_SIZE */
+ { 22179, 0x00008073 }, /* GL_MAX_3D_TEXTURE_SIZE_OES */
+ { 22206, 0x000088FF }, /* GL_MAX_ARRAY_TEXTURE_LAYERS */
+ { 22234, 0x000088FF }, /* GL_MAX_ARRAY_TEXTURE_LAYERS_EXT */
+ { 22266, 0x00000D35 }, /* GL_MAX_ATTRIB_STACK_DEPTH */
+ { 22292, 0x00000D3B }, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */
+ { 22325, 0x00008177 }, /* GL_MAX_CLIPMAP_DEPTH_SGIX */
+ { 22351, 0x00008178 }, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */
+ { 22385, 0x00000D32 }, /* GL_MAX_CLIP_DISTANCES */
+ { 22407, 0x00000D32 }, /* GL_MAX_CLIP_PLANES */
+ { 22426, 0x00008CDF }, /* GL_MAX_COLOR_ATTACHMENTS */
+ { 22451, 0x00008CDF }, /* GL_MAX_COLOR_ATTACHMENTS_EXT */
+ { 22480, 0x000080B3 }, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */
+ { 22512, 0x000080B3 }, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI */
+ { 22548, 0x00008B4D }, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */
+ { 22584, 0x00008B4D }, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB */
+ { 22624, 0x0000801B }, /* GL_MAX_CONVOLUTION_HEIGHT */
+ { 22650, 0x0000801B }, /* GL_MAX_CONVOLUTION_HEIGHT_EXT */
+ { 22680, 0x0000801A }, /* GL_MAX_CONVOLUTION_WIDTH */
+ { 22705, 0x0000801A }, /* GL_MAX_CONVOLUTION_WIDTH_EXT */
+ { 22734, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */
+ { 22763, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB */
+ { 22796, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE_OES */
+ { 22829, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS */
+ { 22849, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_ARB */
+ { 22873, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_ATI */
+ { 22897, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_NV */
+ { 22920, 0x000080E9 }, /* GL_MAX_ELEMENTS_INDICES */
+ { 22944, 0x000080E8 }, /* GL_MAX_ELEMENTS_VERTICES */
+ { 22969, 0x00000D30 }, /* GL_MAX_EVAL_ORDER */
+ { 22987, 0x00008008 }, /* GL_MAX_EXT */
+ { 22998, 0x00009125 }, /* GL_MAX_FRAGMENT_INPUT_COMPONENTS */
+ { 23031, 0x00008B49 }, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */
+ { 23066, 0x00008B49 }, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB */
+ { 23105, 0x00008DFD }, /* GL_MAX_FRAGMENT_UNIFORM_VECTORS */
+ { 23137, 0x00009123 }, /* GL_MAX_GEOMETRY_INPUT_COMPONENTS */
+ { 23170, 0x00009124 }, /* GL_MAX_GEOMETRY_OUTPUT_COMPONENTS */
+ { 23204, 0x00008DE0 }, /* GL_MAX_GEOMETRY_OUTPUT_VERTICES */
+ { 23236, 0x00008DE0 }, /* GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB */
+ { 23272, 0x00008C29 }, /* GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS */
+ { 23308, 0x00008C29 }, /* GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB */
+ { 23348, 0x00008DE1 }, /* GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS */
+ { 23388, 0x00008DE1 }, /* GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB */
+ { 23432, 0x00008DDF }, /* GL_MAX_GEOMETRY_UNIFORM_COMPONENTS */
+ { 23467, 0x00008DDF }, /* GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB */
+ { 23506, 0x00008DDD }, /* GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB */
+ { 23545, 0x00000D31 }, /* GL_MAX_LIGHTS */
+ { 23559, 0x00000B31 }, /* GL_MAX_LIST_NESTING */
+ { 23579, 0x00008841 }, /* GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB */
+ { 23617, 0x00000D36 }, /* GL_MAX_MODELVIEW_STACK_DEPTH */
+ { 23646, 0x00000D37 }, /* GL_MAX_NAME_STACK_DEPTH */
+ { 23670, 0x00008842 }, /* GL_MAX_PALETTE_MATRICES_ARB */
+ { 23698, 0x00008842 }, /* GL_MAX_PALETTE_MATRICES_OES */
+ { 23726, 0x00000D34 }, /* GL_MAX_PIXEL_MAP_TABLE */
+ { 23749, 0x000088B1 }, /* GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB */
+ { 23786, 0x0000880B }, /* GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB */
+ { 23822, 0x000088AD }, /* GL_MAX_PROGRAM_ATTRIBS_ARB */
+ { 23849, 0x000088F5 }, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */
+ { 23878, 0x000088B5 }, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */
+ { 23912, 0x000088F4 }, /* GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV */
+ { 23948, 0x000088F6 }, /* GL_MAX_PROGRAM_IF_DEPTH_NV */
+ { 23975, 0x000088A1 }, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */
+ { 24007, 0x000088B4 }, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */
+ { 24043, 0x000088F8 }, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */
+ { 24072, 0x000088F7 }, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */
+ { 24101, 0x0000862F }, /* GL_MAX_PROGRAM_MATRICES_ARB */
+ { 24129, 0x0000862E }, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */
+ { 24167, 0x000088B3 }, /* GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */
+ { 24211, 0x0000880E }, /* GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */
+ { 24254, 0x000088AF }, /* GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB */
+ { 24288, 0x000088A3 }, /* GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB */
+ { 24327, 0x000088AB }, /* GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB */
+ { 24364, 0x000088A7 }, /* GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB */
+ { 24402, 0x00008810 }, /* GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */
+ { 24445, 0x0000880F }, /* GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */
+ { 24488, 0x000088A9 }, /* GL_MAX_PROGRAM_PARAMETERS_ARB */
+ { 24518, 0x000088A5 }, /* GL_MAX_PROGRAM_TEMPORARIES_ARB */
+ { 24549, 0x00008905 }, /* GL_MAX_PROGRAM_TEXEL_OFFSET */
+ { 24577, 0x00008905 }, /* GL_MAX_PROGRAM_TEXEL_OFFSET_EXT */
+ { 24609, 0x0000880D }, /* GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB */
+ { 24645, 0x0000880C }, /* GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB */
+ { 24681, 0x00000D38 }, /* GL_MAX_PROJECTION_STACK_DEPTH */
+ { 24711, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE */
+ { 24741, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB */
+ { 24775, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_NV */
+ { 24808, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE */
+ { 24833, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE_EXT */
+ { 24862, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE_OES */
+ { 24891, 0x00008D57 }, /* GL_MAX_SAMPLES */
+ { 24906, 0x00008D57 }, /* GL_MAX_SAMPLES_EXT */
+ { 24925, 0x00009111 }, /* GL_MAX_SERVER_WAIT_TIMEOUT */
+ { 24952, 0x00008504 }, /* GL_MAX_SHININESS_NV */
+ { 24972, 0x00008505 }, /* GL_MAX_SPOT_EXPONENT_NV */
+ { 24996, 0x00008C2B }, /* GL_MAX_TEXTURE_BUFFER_SIZE */
+ { 25023, 0x00008C2B }, /* GL_MAX_TEXTURE_BUFFER_SIZE_ARB */
+ { 25054, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS */
+ { 25076, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS_ARB */
+ { 25102, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS */
+ { 25129, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS_ARB */
+ { 25160, 0x000084FD }, /* GL_MAX_TEXTURE_LOD_BIAS */
+ { 25184, 0x000084FD }, /* GL_MAX_TEXTURE_LOD_BIAS_EXT */
+ { 25212, 0x000084FF }, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */
+ { 25246, 0x00000D33 }, /* GL_MAX_TEXTURE_SIZE */
+ { 25266, 0x00000D39 }, /* GL_MAX_TEXTURE_STACK_DEPTH */
+ { 25293, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS */
+ { 25314, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS_ARB */
+ { 25339, 0x0000862F }, /* GL_MAX_TRACK_MATRICES_NV */
+ { 25364, 0x0000862E }, /* GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV */
+ { 25399, 0x00008C8A }, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS */
+ { 25448, 0x00008C8A }, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT */
+ { 25501, 0x00008C8B }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS */
+ { 25544, 0x00008C8B }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT */
+ { 25591, 0x00008C80 }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS */
+ { 25637, 0x00008C80 }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT */
+ { 25687, 0x00008B4B }, /* GL_MAX_VARYING_COMPONENTS */
+ { 25713, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS */
+ { 25735, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS_ARB */
+ { 25761, 0x00008DFC }, /* GL_MAX_VARYING_VECTORS */
+ { 25784, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS */
+ { 25806, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS_ARB */
+ { 25832, 0x00009122 }, /* GL_MAX_VERTEX_OUTPUT_COMPONENTS */
+ { 25864, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */
+ { 25898, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB */
+ { 25936, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */
+ { 25969, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB */
+ { 26006, 0x00008DFB }, /* GL_MAX_VERTEX_UNIFORM_VECTORS */
+ { 26036, 0x000086A4 }, /* GL_MAX_VERTEX_UNITS_ARB */
+ { 26060, 0x000086A4 }, /* GL_MAX_VERTEX_UNITS_OES */
+ { 26084, 0x00008DDE }, /* GL_MAX_VERTEX_VARYING_COMPONENTS_ARB */
+ { 26121, 0x00000D3A }, /* GL_MAX_VIEWPORT_DIMS */
+ { 26142, 0x00008DF1 }, /* GL_MEDIUM_FLOAT */
+ { 26158, 0x00008DF4 }, /* GL_MEDIUM_INT */
+ { 26172, 0x00008007 }, /* GL_MIN */
+ { 26179, 0x0000802E }, /* GL_MINMAX */
+ { 26189, 0x0000802E }, /* GL_MINMAX_EXT */
+ { 26203, 0x0000802F }, /* GL_MINMAX_FORMAT */
+ { 26220, 0x0000802F }, /* GL_MINMAX_FORMAT_EXT */
+ { 26241, 0x00008030 }, /* GL_MINMAX_SINK */
+ { 26256, 0x00008030 }, /* GL_MINMAX_SINK_EXT */
+ { 26275, 0x0000821C }, /* GL_MINOR_VERSION */
+ { 26292, 0x00008007 }, /* GL_MIN_EXT */
+ { 26303, 0x00008904 }, /* GL_MIN_PROGRAM_TEXEL_OFFSET */
+ { 26331, 0x00008904 }, /* GL_MIN_PROGRAM_TEXEL_OFFSET_EXT */
+ { 26363, 0x00008370 }, /* GL_MIRRORED_REPEAT */
+ { 26382, 0x00008370 }, /* GL_MIRRORED_REPEAT_ARB */
+ { 26405, 0x00008370 }, /* GL_MIRRORED_REPEAT_IBM */
+ { 26428, 0x00008742 }, /* GL_MIRROR_CLAMP_ATI */
+ { 26448, 0x00008742 }, /* GL_MIRROR_CLAMP_EXT */
+ { 26468, 0x00008912 }, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */
+ { 26498, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_ATI */
+ { 26526, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */
+ { 26554, 0x00001700 }, /* GL_MODELVIEW */
+ { 26567, 0x00001700 }, /* GL_MODELVIEW0_ARB */
+ { 26585, 0x0000872A }, /* GL_MODELVIEW10_ARB */
+ { 26604, 0x0000872B }, /* GL_MODELVIEW11_ARB */
+ { 26623, 0x0000872C }, /* GL_MODELVIEW12_ARB */
+ { 26642, 0x0000872D }, /* GL_MODELVIEW13_ARB */
+ { 26661, 0x0000872E }, /* GL_MODELVIEW14_ARB */
+ { 26680, 0x0000872F }, /* GL_MODELVIEW15_ARB */
+ { 26699, 0x00008730 }, /* GL_MODELVIEW16_ARB */
+ { 26718, 0x00008731 }, /* GL_MODELVIEW17_ARB */
+ { 26737, 0x00008732 }, /* GL_MODELVIEW18_ARB */
+ { 26756, 0x00008733 }, /* GL_MODELVIEW19_ARB */
+ { 26775, 0x0000850A }, /* GL_MODELVIEW1_ARB */
+ { 26793, 0x00008734 }, /* GL_MODELVIEW20_ARB */
+ { 26812, 0x00008735 }, /* GL_MODELVIEW21_ARB */
+ { 26831, 0x00008736 }, /* GL_MODELVIEW22_ARB */
+ { 26850, 0x00008737 }, /* GL_MODELVIEW23_ARB */
+ { 26869, 0x00008738 }, /* GL_MODELVIEW24_ARB */
+ { 26888, 0x00008739 }, /* GL_MODELVIEW25_ARB */
+ { 26907, 0x0000873A }, /* GL_MODELVIEW26_ARB */
+ { 26926, 0x0000873B }, /* GL_MODELVIEW27_ARB */
+ { 26945, 0x0000873C }, /* GL_MODELVIEW28_ARB */
+ { 26964, 0x0000873D }, /* GL_MODELVIEW29_ARB */
+ { 26983, 0x00008722 }, /* GL_MODELVIEW2_ARB */
+ { 27001, 0x0000873E }, /* GL_MODELVIEW30_ARB */
+ { 27020, 0x0000873F }, /* GL_MODELVIEW31_ARB */
+ { 27039, 0x00008723 }, /* GL_MODELVIEW3_ARB */
+ { 27057, 0x00008724 }, /* GL_MODELVIEW4_ARB */
+ { 27075, 0x00008725 }, /* GL_MODELVIEW5_ARB */
+ { 27093, 0x00008726 }, /* GL_MODELVIEW6_ARB */
+ { 27111, 0x00008727 }, /* GL_MODELVIEW7_ARB */
+ { 27129, 0x00008728 }, /* GL_MODELVIEW8_ARB */
+ { 27147, 0x00008729 }, /* GL_MODELVIEW9_ARB */
+ { 27165, 0x00000BA6 }, /* GL_MODELVIEW_MATRIX */
+ { 27185, 0x0000898D }, /* GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES */
+ { 27227, 0x00008629 }, /* GL_MODELVIEW_PROJECTION_NV */
+ { 27254, 0x00000BA3 }, /* GL_MODELVIEW_STACK_DEPTH */
+ { 27279, 0x00002100 }, /* GL_MODULATE */
+ { 27291, 0x00008744 }, /* GL_MODULATE_ADD_ATI */
+ { 27311, 0x00008745 }, /* GL_MODULATE_SIGNED_ADD_ATI */
+ { 27338, 0x00008746 }, /* GL_MODULATE_SUBTRACT_ATI */
+ { 27363, 0x00000103 }, /* GL_MULT */
+ { 27371, 0x0000809D }, /* GL_MULTISAMPLE */
+ { 27386, 0x000086B2 }, /* GL_MULTISAMPLE_3DFX */
+ { 27406, 0x0000809D }, /* GL_MULTISAMPLE_ARB */
+ { 27425, 0x20000000 }, /* GL_MULTISAMPLE_BIT */
+ { 27444, 0x20000000 }, /* GL_MULTISAMPLE_BIT_3DFX */
+ { 27468, 0x20000000 }, /* GL_MULTISAMPLE_BIT_ARB */
+ { 27491, 0x00008534 }, /* GL_MULTISAMPLE_FILTER_HINT_NV */
+ { 27521, 0x00002A25 }, /* GL_N3F_V3F */
+ { 27532, 0x00000D70 }, /* GL_NAME_STACK_DEPTH */
+ { 27552, 0x0000150E }, /* GL_NAND */
+ { 27560, 0x00002600 }, /* GL_NEAREST */
+ { 27571, 0x0000844E }, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */
+ { 27602, 0x0000844D }, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */
+ { 27634, 0x00002702 }, /* GL_NEAREST_MIPMAP_LINEAR */
+ { 27659, 0x00002700 }, /* GL_NEAREST_MIPMAP_NEAREST */
+ { 27685, 0x00000200 }, /* GL_NEVER */
+ { 27694, 0x00001102 }, /* GL_NICEST */
+ { 27704, 0x00000000 }, /* GL_NONE */
+ { 27712, 0x00000000 }, /* GL_NONE_OES */
+ { 27724, 0x00001505 }, /* GL_NOOP */
+ { 27732, 0x00001508 }, /* GL_NOR */
+ { 27739, 0x00000BA1 }, /* GL_NORMALIZE */
+ { 27752, 0x00008075 }, /* GL_NORMAL_ARRAY */
+ { 27768, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING */
+ { 27799, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING_ARB */
+ { 27834, 0x0000808F }, /* GL_NORMAL_ARRAY_POINTER */
+ { 27858, 0x0000807F }, /* GL_NORMAL_ARRAY_STRIDE */
+ { 27881, 0x0000807E }, /* GL_NORMAL_ARRAY_TYPE */
+ { 27902, 0x00008511 }, /* GL_NORMAL_MAP */
+ { 27916, 0x00008511 }, /* GL_NORMAL_MAP_ARB */
+ { 27934, 0x00008511 }, /* GL_NORMAL_MAP_NV */
+ { 27951, 0x00008511 }, /* GL_NORMAL_MAP_OES */
+ { 27969, 0x00000205 }, /* GL_NOTEQUAL */
+ { 27981, 0x00000000 }, /* GL_NO_ERROR */
+ { 27993, 0x00008261 }, /* GL_NO_RESET_NOTIFICATION_ARB */
+ { 28022, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */
+ { 28056, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB */
+ { 28094, 0x0000821D }, /* GL_NUM_EXTENSIONS */
+ { 28112, 0x000087FE }, /* GL_NUM_PROGRAM_BINARY_FORMATS */
+ { 28142, 0x000087FE }, /* GL_NUM_PROGRAM_BINARY_FORMATS_OES */
+ { 28176, 0x00008DF9 }, /* GL_NUM_SHADER_BINARY_FORMATS */
+ { 28205, 0x00008B89 }, /* GL_OBJECT_ACTIVE_ATTRIBUTES_ARB */
+ { 28237, 0x00008B8A }, /* GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB */
+ { 28279, 0x00008B86 }, /* GL_OBJECT_ACTIVE_UNIFORMS_ARB */
+ { 28309, 0x00008B87 }, /* GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB */
+ { 28349, 0x00008B85 }, /* GL_OBJECT_ATTACHED_OBJECTS_ARB */
+ { 28380, 0x00008B81 }, /* GL_OBJECT_COMPILE_STATUS_ARB */
+ { 28409, 0x00008B80 }, /* GL_OBJECT_DELETE_STATUS_ARB */
+ { 28437, 0x00008B84 }, /* GL_OBJECT_INFO_LOG_LENGTH_ARB */
+ { 28467, 0x00002401 }, /* GL_OBJECT_LINEAR */
+ { 28484, 0x00008B82 }, /* GL_OBJECT_LINK_STATUS_ARB */
+ { 28510, 0x00002501 }, /* GL_OBJECT_PLANE */
+ { 28526, 0x00008B88 }, /* GL_OBJECT_SHADER_SOURCE_LENGTH_ARB */
+ { 28561, 0x00008B4F }, /* GL_OBJECT_SUBTYPE_ARB */
+ { 28583, 0x00009112 }, /* GL_OBJECT_TYPE */
+ { 28598, 0x00008B4E }, /* GL_OBJECT_TYPE_ARB */
+ { 28617, 0x00008B83 }, /* GL_OBJECT_VALIDATE_STATUS_ARB */
+ { 28647, 0x00008165 }, /* GL_OCCLUSION_TEST_HP */
+ { 28668, 0x00008166 }, /* GL_OCCLUSION_TEST_RESULT_HP */
+ { 28696, 0x00000001 }, /* GL_ONE */
+ { 28703, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA */
+ { 28731, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA_EXT */
+ { 28763, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR */
+ { 28791, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR_EXT */
+ { 28823, 0x00000305 }, /* GL_ONE_MINUS_DST_ALPHA */
+ { 28846, 0x00000307 }, /* GL_ONE_MINUS_DST_COLOR */
+ { 28869, 0x00000303 }, /* GL_ONE_MINUS_SRC_ALPHA */
+ { 28892, 0x00000301 }, /* GL_ONE_MINUS_SRC_COLOR */
+ { 28915, 0x00008598 }, /* GL_OPERAND0_ALPHA */
+ { 28933, 0x00008598 }, /* GL_OPERAND0_ALPHA_ARB */
+ { 28955, 0x00008598 }, /* GL_OPERAND0_ALPHA_EXT */
+ { 28977, 0x00008590 }, /* GL_OPERAND0_RGB */
+ { 28993, 0x00008590 }, /* GL_OPERAND0_RGB_ARB */
+ { 29013, 0x00008590 }, /* GL_OPERAND0_RGB_EXT */
+ { 29033, 0x00008599 }, /* GL_OPERAND1_ALPHA */
+ { 29051, 0x00008599 }, /* GL_OPERAND1_ALPHA_ARB */
+ { 29073, 0x00008599 }, /* GL_OPERAND1_ALPHA_EXT */
+ { 29095, 0x00008591 }, /* GL_OPERAND1_RGB */
+ { 29111, 0x00008591 }, /* GL_OPERAND1_RGB_ARB */
+ { 29131, 0x00008591 }, /* GL_OPERAND1_RGB_EXT */
+ { 29151, 0x0000859A }, /* GL_OPERAND2_ALPHA */
+ { 29169, 0x0000859A }, /* GL_OPERAND2_ALPHA_ARB */
+ { 29191, 0x0000859A }, /* GL_OPERAND2_ALPHA_EXT */
+ { 29213, 0x00008592 }, /* GL_OPERAND2_RGB */
+ { 29229, 0x00008592 }, /* GL_OPERAND2_RGB_ARB */
+ { 29249, 0x00008592 }, /* GL_OPERAND2_RGB_EXT */
+ { 29269, 0x0000859B }, /* GL_OPERAND3_ALPHA_NV */
+ { 29290, 0x00008593 }, /* GL_OPERAND3_RGB_NV */
+ { 29309, 0x00001507 }, /* GL_OR */
+ { 29315, 0x00000A01 }, /* GL_ORDER */
+ { 29324, 0x0000150D }, /* GL_OR_INVERTED */
+ { 29339, 0x0000150B }, /* GL_OR_REVERSE */
+ { 29353, 0x00000505 }, /* GL_OUT_OF_MEMORY */
+ { 29370, 0x00000D05 }, /* GL_PACK_ALIGNMENT */
+ { 29388, 0x0000806C }, /* GL_PACK_IMAGE_HEIGHT */
+ { 29409, 0x00008758 }, /* GL_PACK_INVERT_MESA */
+ { 29429, 0x00000D01 }, /* GL_PACK_LSB_FIRST */
+ { 29447, 0x00000D02 }, /* GL_PACK_ROW_LENGTH */
+ { 29466, 0x0000806B }, /* GL_PACK_SKIP_IMAGES */
+ { 29486, 0x00000D04 }, /* GL_PACK_SKIP_PIXELS */
+ { 29506, 0x00000D03 }, /* GL_PACK_SKIP_ROWS */
+ { 29524, 0x00000D00 }, /* GL_PACK_SWAP_BYTES */
+ { 29543, 0x00008B92 }, /* GL_PALETTE4_R5_G6_B5_OES */
+ { 29568, 0x00008B94 }, /* GL_PALETTE4_RGB5_A1_OES */
+ { 29592, 0x00008B90 }, /* GL_PALETTE4_RGB8_OES */
+ { 29613, 0x00008B93 }, /* GL_PALETTE4_RGBA4_OES */
+ { 29635, 0x00008B91 }, /* GL_PALETTE4_RGBA8_OES */
+ { 29657, 0x00008B97 }, /* GL_PALETTE8_R5_G6_B5_OES */
+ { 29682, 0x00008B99 }, /* GL_PALETTE8_RGB5_A1_OES */
+ { 29706, 0x00008B95 }, /* GL_PALETTE8_RGB8_OES */
+ { 29727, 0x00008B98 }, /* GL_PALETTE8_RGBA4_OES */
+ { 29749, 0x00008B96 }, /* GL_PALETTE8_RGBA8_OES */
+ { 29771, 0x00000700 }, /* GL_PASS_THROUGH_TOKEN */
+ { 29793, 0x00000C50 }, /* GL_PERSPECTIVE_CORRECTION_HINT */
+ { 29824, 0x00000C79 }, /* GL_PIXEL_MAP_A_TO_A */
+ { 29844, 0x00000CB9 }, /* GL_PIXEL_MAP_A_TO_A_SIZE */
+ { 29869, 0x00000C78 }, /* GL_PIXEL_MAP_B_TO_B */
+ { 29889, 0x00000CB8 }, /* GL_PIXEL_MAP_B_TO_B_SIZE */
+ { 29914, 0x00000C77 }, /* GL_PIXEL_MAP_G_TO_G */
+ { 29934, 0x00000CB7 }, /* GL_PIXEL_MAP_G_TO_G_SIZE */
+ { 29959, 0x00000C75 }, /* GL_PIXEL_MAP_I_TO_A */
+ { 29979, 0x00000CB5 }, /* GL_PIXEL_MAP_I_TO_A_SIZE */
+ { 30004, 0x00000C74 }, /* GL_PIXEL_MAP_I_TO_B */
+ { 30024, 0x00000CB4 }, /* GL_PIXEL_MAP_I_TO_B_SIZE */
+ { 30049, 0x00000C73 }, /* GL_PIXEL_MAP_I_TO_G */
+ { 30069, 0x00000CB3 }, /* GL_PIXEL_MAP_I_TO_G_SIZE */
+ { 30094, 0x00000C70 }, /* GL_PIXEL_MAP_I_TO_I */
+ { 30114, 0x00000CB0 }, /* GL_PIXEL_MAP_I_TO_I_SIZE */
+ { 30139, 0x00000C72 }, /* GL_PIXEL_MAP_I_TO_R */
+ { 30159, 0x00000CB2 }, /* GL_PIXEL_MAP_I_TO_R_SIZE */
+ { 30184, 0x00000C76 }, /* GL_PIXEL_MAP_R_TO_R */
+ { 30204, 0x00000CB6 }, /* GL_PIXEL_MAP_R_TO_R_SIZE */
+ { 30229, 0x00000C71 }, /* GL_PIXEL_MAP_S_TO_S */
+ { 30249, 0x00000CB1 }, /* GL_PIXEL_MAP_S_TO_S_SIZE */
+ { 30274, 0x00000020 }, /* GL_PIXEL_MODE_BIT */
+ { 30292, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER */
+ { 30313, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING */
+ { 30342, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING_EXT */
+ { 30375, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER_EXT */
+ { 30400, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER */
+ { 30423, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING */
+ { 30454, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING_EXT */
+ { 30489, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER_EXT */
+ { 30516, 0x00001B00 }, /* GL_POINT */
+ { 30525, 0x00000000 }, /* GL_POINTS */
+ { 30535, 0x00000002 }, /* GL_POINT_BIT */
+ { 30548, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION */
+ { 30578, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_ARB */
+ { 30612, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_EXT */
+ { 30646, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_SGIS */
+ { 30681, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE */
+ { 30710, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_ARB */
+ { 30743, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_EXT */
+ { 30776, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_SGIS */
+ { 30810, 0x00000B11 }, /* GL_POINT_SIZE */
+ { 30824, 0x00008B9F }, /* GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES */
+ { 30863, 0x00008B9C }, /* GL_POINT_SIZE_ARRAY_OES */
+ { 30887, 0x0000898C }, /* GL_POINT_SIZE_ARRAY_POINTER_OES */
+ { 30919, 0x0000898B }, /* GL_POINT_SIZE_ARRAY_STRIDE_OES */
+ { 30950, 0x0000898A }, /* GL_POINT_SIZE_ARRAY_TYPE_OES */
+ { 30979, 0x00000B13 }, /* GL_POINT_SIZE_GRANULARITY */
+ { 31005, 0x00008127 }, /* GL_POINT_SIZE_MAX */
+ { 31023, 0x00008127 }, /* GL_POINT_SIZE_MAX_ARB */
+ { 31045, 0x00008127 }, /* GL_POINT_SIZE_MAX_EXT */
+ { 31067, 0x00008127 }, /* GL_POINT_SIZE_MAX_SGIS */
+ { 31090, 0x00008126 }, /* GL_POINT_SIZE_MIN */
+ { 31108, 0x00008126 }, /* GL_POINT_SIZE_MIN_ARB */
+ { 31130, 0x00008126 }, /* GL_POINT_SIZE_MIN_EXT */
+ { 31152, 0x00008126 }, /* GL_POINT_SIZE_MIN_SGIS */
+ { 31175, 0x00000B12 }, /* GL_POINT_SIZE_RANGE */
+ { 31195, 0x00000B10 }, /* GL_POINT_SMOOTH */
+ { 31211, 0x00000C51 }, /* GL_POINT_SMOOTH_HINT */
+ { 31232, 0x00008861 }, /* GL_POINT_SPRITE */
+ { 31248, 0x00008861 }, /* GL_POINT_SPRITE_ARB */
+ { 31268, 0x00008CA0 }, /* GL_POINT_SPRITE_COORD_ORIGIN */
+ { 31297, 0x00008861 }, /* GL_POINT_SPRITE_NV */
+ { 31316, 0x00008861 }, /* GL_POINT_SPRITE_OES */
+ { 31336, 0x00008863 }, /* GL_POINT_SPRITE_R_MODE_NV */
+ { 31362, 0x00000701 }, /* GL_POINT_TOKEN */
+ { 31377, 0x00000009 }, /* GL_POLYGON */
+ { 31388, 0x00000008 }, /* GL_POLYGON_BIT */
+ { 31403, 0x00000B40 }, /* GL_POLYGON_MODE */
+ { 31419, 0x00008039 }, /* GL_POLYGON_OFFSET_BIAS */
+ { 31442, 0x00008038 }, /* GL_POLYGON_OFFSET_FACTOR */
+ { 31467, 0x00008037 }, /* GL_POLYGON_OFFSET_FILL */
+ { 31490, 0x00002A02 }, /* GL_POLYGON_OFFSET_LINE */
+ { 31513, 0x00002A01 }, /* GL_POLYGON_OFFSET_POINT */
+ { 31537, 0x00002A00 }, /* GL_POLYGON_OFFSET_UNITS */
+ { 31561, 0x00000B41 }, /* GL_POLYGON_SMOOTH */
+ { 31579, 0x00000C53 }, /* GL_POLYGON_SMOOTH_HINT */
+ { 31602, 0x00000B42 }, /* GL_POLYGON_STIPPLE */
+ { 31621, 0x00000010 }, /* GL_POLYGON_STIPPLE_BIT */
+ { 31644, 0x00000703 }, /* GL_POLYGON_TOKEN */
+ { 31661, 0x00001203 }, /* GL_POSITION */
+ { 31673, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */
+ { 31705, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI */
+ { 31741, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */
+ { 31774, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI */
+ { 31811, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */
+ { 31842, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI */
+ { 31877, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */
+ { 31909, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI */
+ { 31945, 0x000080D2 }, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */
+ { 31978, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */
+ { 32010, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI */
+ { 32046, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */
+ { 32079, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI */
+ { 32116, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS */
+ { 32146, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS_SGI */
+ { 32180, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE */
+ { 32211, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE_SGI */
+ { 32246, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS */
+ { 32277, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS_EXT */
+ { 32312, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE */
+ { 32344, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE_EXT */
+ { 32380, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS */
+ { 32410, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS_EXT */
+ { 32444, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE */
+ { 32475, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE_EXT */
+ { 32510, 0x000080D1 }, /* GL_POST_CONVOLUTION_COLOR_TABLE */
+ { 32542, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS */
+ { 32573, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS_EXT */
+ { 32608, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE */
+ { 32640, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE_EXT */
+ { 32676, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS */
+ { 32705, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS_EXT */
+ { 32738, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE */
+ { 32768, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE_EXT */
+ { 32802, 0x0000817B }, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */
+ { 32841, 0x00008179 }, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */
+ { 32874, 0x0000817C }, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */
+ { 32914, 0x0000817A }, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */
+ { 32948, 0x00008578 }, /* GL_PREVIOUS */
+ { 32960, 0x00008578 }, /* GL_PREVIOUS_ARB */
+ { 32976, 0x00008578 }, /* GL_PREVIOUS_EXT */
+ { 32992, 0x00008577 }, /* GL_PRIMARY_COLOR */
+ { 33009, 0x00008577 }, /* GL_PRIMARY_COLOR_ARB */
+ { 33030, 0x00008577 }, /* GL_PRIMARY_COLOR_EXT */
+ { 33051, 0x00008C87 }, /* GL_PRIMITIVES_GENERATED */
+ { 33075, 0x00008C87 }, /* GL_PRIMITIVES_GENERATED_EXT */
+ { 33103, 0x00008F9D }, /* GL_PRIMITIVE_RESTART */
+ { 33124, 0x00008F9E }, /* GL_PRIMITIVE_RESTART_INDEX */
+ { 33151, 0x00008559 }, /* GL_PRIMITIVE_RESTART_INDEX_NV */
+ { 33181, 0x00008558 }, /* GL_PRIMITIVE_RESTART_NV */
+ { 33205, 0x000088B0 }, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */
+ { 33238, 0x00008805 }, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */
+ { 33270, 0x000088AC }, /* GL_PROGRAM_ATTRIBS_ARB */
+ { 33293, 0x000087FF }, /* GL_PROGRAM_BINARY_FORMATS */
+ { 33319, 0x000087FF }, /* GL_PROGRAM_BINARY_FORMATS_OES */
+ { 33349, 0x00008741 }, /* GL_PROGRAM_BINARY_LENGTH */
+ { 33374, 0x00008741 }, /* GL_PROGRAM_BINARY_LENGTH_OES */
+ { 33403, 0x00008257 }, /* GL_PROGRAM_BINARY_RETRIEVABLE_HINT */
+ { 33438, 0x00008677 }, /* GL_PROGRAM_BINDING_ARB */
+ { 33461, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_ARB */
+ { 33491, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_NV */
+ { 33520, 0x00008874 }, /* GL_PROGRAM_ERROR_STRING_ARB */
+ { 33548, 0x00008876 }, /* GL_PROGRAM_FORMAT_ARB */
+ { 33570, 0x00008875 }, /* GL_PROGRAM_FORMAT_ASCII_ARB */
+ { 33598, 0x000088A0 }, /* GL_PROGRAM_INSTRUCTIONS_ARB */
+ { 33626, 0x00008627 }, /* GL_PROGRAM_LENGTH_ARB */
+ { 33648, 0x00008627 }, /* GL_PROGRAM_LENGTH_NV */
+ { 33669, 0x000088B2 }, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */
+ { 33709, 0x00008808 }, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */
+ { 33748, 0x000088AE }, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */
+ { 33778, 0x000088A2 }, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */
+ { 33813, 0x000088AA }, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */
+ { 33846, 0x000088A6 }, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */
+ { 33880, 0x0000880A }, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */
+ { 33919, 0x00008809 }, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */
+ { 33958, 0x00008B40 }, /* GL_PROGRAM_OBJECT_ARB */
+ { 33980, 0x000088A8 }, /* GL_PROGRAM_PARAMETERS_ARB */
+ { 34006, 0x00008644 }, /* GL_PROGRAM_PARAMETER_NV */
+ { 34030, 0x00008642 }, /* GL_PROGRAM_POINT_SIZE */
+ { 34052, 0x00008642 }, /* GL_PROGRAM_POINT_SIZE_ARB */
+ { 34078, 0x00008647 }, /* GL_PROGRAM_RESIDENT_NV */
+ { 34101, 0x00008628 }, /* GL_PROGRAM_STRING_ARB */
+ { 34123, 0x00008628 }, /* GL_PROGRAM_STRING_NV */
+ { 34144, 0x00008646 }, /* GL_PROGRAM_TARGET_NV */
+ { 34165, 0x000088A4 }, /* GL_PROGRAM_TEMPORARIES_ARB */
+ { 34192, 0x00008807 }, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */
+ { 34224, 0x00008806 }, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */
+ { 34256, 0x000088B6 }, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */
+ { 34291, 0x00001701 }, /* GL_PROJECTION */
+ { 34305, 0x00000BA7 }, /* GL_PROJECTION_MATRIX */
+ { 34326, 0x0000898E }, /* GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES */
+ { 34369, 0x00000BA4 }, /* GL_PROJECTION_STACK_DEPTH */
+ { 34395, 0x00008E4F }, /* GL_PROVOKING_VERTEX */
+ { 34415, 0x00008E4F }, /* GL_PROVOKING_VERTEX_EXT */
+ { 34439, 0x000080D3 }, /* GL_PROXY_COLOR_TABLE */
+ { 34460, 0x00008025 }, /* GL_PROXY_HISTOGRAM */
+ { 34479, 0x00008025 }, /* GL_PROXY_HISTOGRAM_EXT */
+ { 34502, 0x000080D5 }, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */
+ { 34541, 0x000080D4 }, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */
+ { 34579, 0x00008063 }, /* GL_PROXY_TEXTURE_1D */
+ { 34599, 0x00008C19 }, /* GL_PROXY_TEXTURE_1D_ARRAY */
+ { 34625, 0x00008C19 }, /* GL_PROXY_TEXTURE_1D_ARRAY_EXT */
+ { 34655, 0x00008063 }, /* GL_PROXY_TEXTURE_1D_EXT */
+ { 34679, 0x00008064 }, /* GL_PROXY_TEXTURE_2D */
+ { 34699, 0x00008C1B }, /* GL_PROXY_TEXTURE_2D_ARRAY */
+ { 34725, 0x00008C1B }, /* GL_PROXY_TEXTURE_2D_ARRAY_EXT */
+ { 34755, 0x00008064 }, /* GL_PROXY_TEXTURE_2D_EXT */
+ { 34779, 0x00008070 }, /* GL_PROXY_TEXTURE_3D */
+ { 34799, 0x000080BD }, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */
+ { 34832, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP */
+ { 34858, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP_ARB */
+ { 34888, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE */
+ { 34915, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_ARB */
+ { 34946, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_NV */
+ { 34976, 0x00008A1D }, /* GL_PURGEABLE_APPLE */
+ { 34995, 0x00002003 }, /* GL_Q */
+ { 35000, 0x00001209 }, /* GL_QUADRATIC_ATTENUATION */
+ { 35025, 0x00000007 }, /* GL_QUADS */
+ { 35034, 0x00008E4C }, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION */
+ { 35078, 0x00008E4C }, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT */
+ { 35126, 0x00008614 }, /* GL_QUAD_MESH_SUN */
+ { 35143, 0x00000008 }, /* GL_QUAD_STRIP */
+ { 35157, 0x00008E16 }, /* GL_QUERY_BY_REGION_NO_WAIT */
+ { 35184, 0x00008E16 }, /* GL_QUERY_BY_REGION_NO_WAIT_NV */
+ { 35214, 0x00008E15 }, /* GL_QUERY_BY_REGION_WAIT */
+ { 35238, 0x00008E15 }, /* GL_QUERY_BY_REGION_WAIT_NV */
+ { 35265, 0x00008864 }, /* GL_QUERY_COUNTER_BITS */
+ { 35287, 0x00008864 }, /* GL_QUERY_COUNTER_BITS_ARB */
+ { 35313, 0x00008E14 }, /* GL_QUERY_NO_WAIT */
+ { 35330, 0x00008E14 }, /* GL_QUERY_NO_WAIT_NV */
+ { 35350, 0x00008866 }, /* GL_QUERY_RESULT */
+ { 35366, 0x00008866 }, /* GL_QUERY_RESULT_ARB */
+ { 35386, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE */
+ { 35412, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE_ARB */
+ { 35442, 0x00008E13 }, /* GL_QUERY_WAIT */
+ { 35456, 0x00008E13 }, /* GL_QUERY_WAIT_NV */
+ { 35473, 0x00002002 }, /* GL_R */
+ { 35478, 0x00008C3A }, /* GL_R11F_G11F_B10F */
+ { 35496, 0x00008F98 }, /* GL_R16_SNORM */
+ { 35509, 0x00002A10 }, /* GL_R3_G3_B2 */
+ { 35521, 0x00008F94 }, /* GL_R8_SNORM */
+ { 35533, 0x00008C89 }, /* GL_RASTERIZER_DISCARD */
+ { 35555, 0x00008C89 }, /* GL_RASTERIZER_DISCARD_EXT */
+ { 35581, 0x00019262 }, /* GL_RASTER_POSITION_UNCLIPPED_IBM */
+ { 35614, 0x00000C02 }, /* GL_READ_BUFFER */
+ { 35629, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER */
+ { 35649, 0x00008CAA }, /* GL_READ_FRAMEBUFFER_BINDING */
+ { 35677, 0x00008CAA }, /* GL_READ_FRAMEBUFFER_BINDING_EXT */
+ { 35709, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER_EXT */
+ { 35733, 0x000088B8 }, /* GL_READ_ONLY */
+ { 35746, 0x000088B8 }, /* GL_READ_ONLY_ARB */
+ { 35763, 0x000088BA }, /* GL_READ_WRITE */
+ { 35777, 0x000088BA }, /* GL_READ_WRITE_ARB */
+ { 35795, 0x00001903 }, /* GL_RED */
+ { 35802, 0x00008016 }, /* GL_REDUCE */
+ { 35812, 0x00008016 }, /* GL_REDUCE_EXT */
+ { 35826, 0x00000D15 }, /* GL_RED_BIAS */
+ { 35838, 0x00000D52 }, /* GL_RED_BITS */
+ { 35850, 0x00008D94 }, /* GL_RED_INTEGER */
+ { 35865, 0x00008D94 }, /* GL_RED_INTEGER_EXT */
+ { 35884, 0x00000D14 }, /* GL_RED_SCALE */
+ { 35897, 0x00008F90 }, /* GL_RED_SNORM */
+ { 35910, 0x00008512 }, /* GL_REFLECTION_MAP */
+ { 35928, 0x00008512 }, /* GL_REFLECTION_MAP_ARB */
+ { 35950, 0x00008512 }, /* GL_REFLECTION_MAP_NV */
+ { 35971, 0x00008512 }, /* GL_REFLECTION_MAP_OES */
+ { 35993, 0x00008A19 }, /* GL_RELEASED_APPLE */
+ { 36011, 0x00001C00 }, /* GL_RENDER */
+ { 36021, 0x00008D41 }, /* GL_RENDERBUFFER */
+ { 36037, 0x00008D53 }, /* GL_RENDERBUFFER_ALPHA_SIZE */
+ { 36064, 0x00008D53 }, /* GL_RENDERBUFFER_ALPHA_SIZE_OES */
+ { 36095, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING */
+ { 36119, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING_EXT */
+ { 36147, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING_OES */
+ { 36175, 0x00008D52 }, /* GL_RENDERBUFFER_BLUE_SIZE */
+ { 36201, 0x00008D52 }, /* GL_RENDERBUFFER_BLUE_SIZE_OES */
+ { 36231, 0x00008D54 }, /* GL_RENDERBUFFER_DEPTH_SIZE */
+ { 36258, 0x00008D54 }, /* GL_RENDERBUFFER_DEPTH_SIZE_OES */
+ { 36289, 0x00008D41 }, /* GL_RENDERBUFFER_EXT */
+ { 36309, 0x00008D51 }, /* GL_RENDERBUFFER_GREEN_SIZE */
+ { 36336, 0x00008D51 }, /* GL_RENDERBUFFER_GREEN_SIZE_OES */
+ { 36367, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT */
+ { 36390, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT_EXT */
+ { 36417, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT_OES */
+ { 36444, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT */
+ { 36476, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT_EXT */
+ { 36512, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT_OES */
+ { 36548, 0x00008D41 }, /* GL_RENDERBUFFER_OES */
+ { 36568, 0x00008D50 }, /* GL_RENDERBUFFER_RED_SIZE */
+ { 36593, 0x00008D50 }, /* GL_RENDERBUFFER_RED_SIZE_OES */
+ { 36622, 0x00008CAB }, /* GL_RENDERBUFFER_SAMPLES */
+ { 36646, 0x00008CAB }, /* GL_RENDERBUFFER_SAMPLES_EXT */
+ { 36674, 0x00008D55 }, /* GL_RENDERBUFFER_STENCIL_SIZE */
+ { 36703, 0x00008D55 }, /* GL_RENDERBUFFER_STENCIL_SIZE_OES */
+ { 36736, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH */
+ { 36758, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH_EXT */
+ { 36784, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH_OES */
+ { 36810, 0x00001F01 }, /* GL_RENDERER */
+ { 36822, 0x00000C40 }, /* GL_RENDER_MODE */
+ { 36837, 0x00002901 }, /* GL_REPEAT */
+ { 36847, 0x00001E01 }, /* GL_REPLACE */
+ { 36858, 0x00008062 }, /* GL_REPLACE_EXT */
+ { 36873, 0x00008153 }, /* GL_REPLICATE_BORDER_HP */
+ { 36896, 0x00008D68 }, /* GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES */
+ { 36932, 0x0000803A }, /* GL_RESCALE_NORMAL */
+ { 36950, 0x0000803A }, /* GL_RESCALE_NORMAL_EXT */
+ { 36972, 0x00008256 }, /* GL_RESET_NOTIFICATION_STRATEGY_ARB */
+ { 37007, 0x00008A1B }, /* GL_RETAINED_APPLE */
+ { 37025, 0x00000102 }, /* GL_RETURN */
+ { 37035, 0x00008F99 }, /* GL_RG16_SNORM */
+ { 37049, 0x00008F95 }, /* GL_RG8_SNORM */
+ { 37062, 0x00001907 }, /* GL_RGB */
+ { 37069, 0x00008052 }, /* GL_RGB10 */
+ { 37078, 0x00008059 }, /* GL_RGB10_A2 */
+ { 37090, 0x00008059 }, /* GL_RGB10_A2_EXT */
+ { 37106, 0x00008052 }, /* GL_RGB10_EXT */
+ { 37119, 0x00008053 }, /* GL_RGB12 */
+ { 37128, 0x00008053 }, /* GL_RGB12_EXT */
+ { 37141, 0x00008054 }, /* GL_RGB16 */
+ { 37150, 0x0000881B }, /* GL_RGB16F */
+ { 37160, 0x00008D89 }, /* GL_RGB16I */
+ { 37170, 0x00008D89 }, /* GL_RGB16I_EXT */
+ { 37184, 0x00008D77 }, /* GL_RGB16UI */
+ { 37195, 0x00008D77 }, /* GL_RGB16UI_EXT */
+ { 37210, 0x00008054 }, /* GL_RGB16_EXT */
+ { 37223, 0x00008F9A }, /* GL_RGB16_SNORM */
+ { 37238, 0x0000804E }, /* GL_RGB2_EXT */
+ { 37250, 0x00008815 }, /* GL_RGB32F */
+ { 37260, 0x00008D83 }, /* GL_RGB32I */
+ { 37270, 0x00008D83 }, /* GL_RGB32I_EXT */
+ { 37284, 0x00008D71 }, /* GL_RGB32UI */
+ { 37295, 0x00008D71 }, /* GL_RGB32UI_EXT */
+ { 37310, 0x0000804F }, /* GL_RGB4 */
+ { 37318, 0x0000804F }, /* GL_RGB4_EXT */
+ { 37330, 0x000083A1 }, /* GL_RGB4_S3TC */
+ { 37343, 0x00008050 }, /* GL_RGB5 */
+ { 37351, 0x00008D62 }, /* GL_RGB565 */
+ { 37361, 0x00008D62 }, /* GL_RGB565_OES */
+ { 37375, 0x00008057 }, /* GL_RGB5_A1 */
+ { 37386, 0x00008057 }, /* GL_RGB5_A1_EXT */
+ { 37401, 0x00008057 }, /* GL_RGB5_A1_OES */
+ { 37416, 0x00008050 }, /* GL_RGB5_EXT */
+ { 37428, 0x00008051 }, /* GL_RGB8 */
+ { 37436, 0x00008D8F }, /* GL_RGB8I */
+ { 37445, 0x00008D8F }, /* GL_RGB8I_EXT */
+ { 37458, 0x00008D7D }, /* GL_RGB8UI */
+ { 37468, 0x00008D7D }, /* GL_RGB8UI_EXT */
+ { 37482, 0x00008051 }, /* GL_RGB8_EXT */
+ { 37494, 0x00008051 }, /* GL_RGB8_OES */
+ { 37506, 0x00008F96 }, /* GL_RGB8_SNORM */
+ { 37520, 0x00008C3D }, /* GL_RGB9_E5 */
+ { 37531, 0x00001908 }, /* GL_RGBA */
+ { 37539, 0x0000805A }, /* GL_RGBA12 */
+ { 37549, 0x0000805A }, /* GL_RGBA12_EXT */
+ { 37563, 0x0000805B }, /* GL_RGBA16 */
+ { 37573, 0x0000881A }, /* GL_RGBA16F */
+ { 37584, 0x00008D88 }, /* GL_RGBA16I */
+ { 37595, 0x00008D88 }, /* GL_RGBA16I_EXT */
+ { 37610, 0x00008D76 }, /* GL_RGBA16UI */
+ { 37622, 0x00008D76 }, /* GL_RGBA16UI_EXT */
+ { 37638, 0x0000805B }, /* GL_RGBA16_EXT */
+ { 37652, 0x00008F9B }, /* GL_RGBA16_SNORM */
+ { 37668, 0x00008055 }, /* GL_RGBA2 */
+ { 37677, 0x00008055 }, /* GL_RGBA2_EXT */
+ { 37690, 0x00008814 }, /* GL_RGBA32F */
+ { 37701, 0x00008D82 }, /* GL_RGBA32I */
+ { 37712, 0x00008D82 }, /* GL_RGBA32I_EXT */
+ { 37727, 0x00008D70 }, /* GL_RGBA32UI */
+ { 37739, 0x00008D70 }, /* GL_RGBA32UI_EXT */
+ { 37755, 0x00008056 }, /* GL_RGBA4 */
+ { 37764, 0x000083A5 }, /* GL_RGBA4_DXT5_S3TC */
+ { 37783, 0x00008056 }, /* GL_RGBA4_EXT */
+ { 37796, 0x00008056 }, /* GL_RGBA4_OES */
+ { 37809, 0x000083A3 }, /* GL_RGBA4_S3TC */
+ { 37823, 0x00008058 }, /* GL_RGBA8 */
+ { 37832, 0x00008D8E }, /* GL_RGBA8I */
+ { 37842, 0x00008D8E }, /* GL_RGBA8I_EXT */
+ { 37856, 0x00008D7C }, /* GL_RGBA8UI */
+ { 37867, 0x00008D7C }, /* GL_RGBA8UI_EXT */
+ { 37882, 0x00008058 }, /* GL_RGBA8_EXT */
+ { 37895, 0x00008058 }, /* GL_RGBA8_OES */
+ { 37908, 0x00008F97 }, /* GL_RGBA8_SNORM */
+ { 37923, 0x000083A4 }, /* GL_RGBA_DXT5_S3TC */
+ { 37941, 0x00008820 }, /* GL_RGBA_FLOAT_MODE_ARB */
+ { 37964, 0x00008D99 }, /* GL_RGBA_INTEGER */
+ { 37980, 0x00008D99 }, /* GL_RGBA_INTEGER_EXT */
+ { 38000, 0x00008D9E }, /* GL_RGBA_INTEGER_MODE_EXT */
+ { 38025, 0x00000C31 }, /* GL_RGBA_MODE */
+ { 38038, 0x000083A2 }, /* GL_RGBA_S3TC */
+ { 38051, 0x00008F93 }, /* GL_RGBA_SNORM */
+ { 38065, 0x00008D98 }, /* GL_RGB_INTEGER */
+ { 38080, 0x00008D98 }, /* GL_RGB_INTEGER_EXT */
+ { 38099, 0x000083A0 }, /* GL_RGB_S3TC */
+ { 38111, 0x00008573 }, /* GL_RGB_SCALE */
+ { 38124, 0x00008573 }, /* GL_RGB_SCALE_ARB */
+ { 38141, 0x00008573 }, /* GL_RGB_SCALE_EXT */
+ { 38158, 0x00008F92 }, /* GL_RGB_SNORM */
+ { 38171, 0x00008F91 }, /* GL_RG_SNORM */
+ { 38183, 0x00000407 }, /* GL_RIGHT */
+ { 38192, 0x00002000 }, /* GL_S */
+ { 38197, 0x00008B5D }, /* GL_SAMPLER_1D */
+ { 38211, 0x00008DC0 }, /* GL_SAMPLER_1D_ARRAY */
+ { 38231, 0x00008DC0 }, /* GL_SAMPLER_1D_ARRAY_EXT */
+ { 38255, 0x00008DC3 }, /* GL_SAMPLER_1D_ARRAY_SHADOW */
+ { 38282, 0x00008DC3 }, /* GL_SAMPLER_1D_ARRAY_SHADOW_EXT */
+ { 38313, 0x00008B61 }, /* GL_SAMPLER_1D_SHADOW */
+ { 38334, 0x00008B5E }, /* GL_SAMPLER_2D */
+ { 38348, 0x00008DC1 }, /* GL_SAMPLER_2D_ARRAY */
+ { 38368, 0x00008DC1 }, /* GL_SAMPLER_2D_ARRAY_EXT */
+ { 38392, 0x00008DC4 }, /* GL_SAMPLER_2D_ARRAY_SHADOW */
+ { 38419, 0x00008DC4 }, /* GL_SAMPLER_2D_ARRAY_SHADOW_EXT */
+ { 38450, 0x00008B63 }, /* GL_SAMPLER_2D_RECT */
+ { 38469, 0x00008B64 }, /* GL_SAMPLER_2D_RECT_SHADOW */
+ { 38495, 0x00008B62 }, /* GL_SAMPLER_2D_SHADOW */
+ { 38516, 0x00008B5F }, /* GL_SAMPLER_3D */
+ { 38530, 0x00008B5F }, /* GL_SAMPLER_3D_OES */
+ { 38548, 0x00008919 }, /* GL_SAMPLER_BINDING */
+ { 38567, 0x00008DC2 }, /* GL_SAMPLER_BUFFER */
+ { 38585, 0x00008DC2 }, /* GL_SAMPLER_BUFFER_EXT */
+ { 38607, 0x00008B60 }, /* GL_SAMPLER_CUBE */
+ { 38623, 0x00008DC5 }, /* GL_SAMPLER_CUBE_SHADOW */
+ { 38646, 0x00008DC5 }, /* GL_SAMPLER_CUBE_SHADOW_EXT */
+ { 38673, 0x00008D66 }, /* GL_SAMPLER_EXTERNAL_OES */
+ { 38697, 0x000080A9 }, /* GL_SAMPLES */
+ { 38708, 0x000086B4 }, /* GL_SAMPLES_3DFX */
+ { 38724, 0x000080A9 }, /* GL_SAMPLES_ARB */
+ { 38739, 0x00008914 }, /* GL_SAMPLES_PASSED */
+ { 38757, 0x00008914 }, /* GL_SAMPLES_PASSED_ARB */
+ { 38779, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE */
+ { 38807, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE_ARB */
+ { 38839, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE */
+ { 38862, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE_ARB */
+ { 38889, 0x000080A8 }, /* GL_SAMPLE_BUFFERS */
+ { 38907, 0x000086B3 }, /* GL_SAMPLE_BUFFERS_3DFX */
+ { 38930, 0x000080A8 }, /* GL_SAMPLE_BUFFERS_ARB */
+ { 38952, 0x000080A0 }, /* GL_SAMPLE_COVERAGE */
+ { 38971, 0x000080A0 }, /* GL_SAMPLE_COVERAGE_ARB */
+ { 38994, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT */
+ { 39020, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT_ARB */
+ { 39050, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE */
+ { 39075, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE_ARB */
+ { 39104, 0x00080000 }, /* GL_SCISSOR_BIT */
+ { 39119, 0x00000C10 }, /* GL_SCISSOR_BOX */
+ { 39134, 0x00000C11 }, /* GL_SCISSOR_TEST */
+ { 39150, 0x0000845E }, /* GL_SECONDARY_COLOR_ARRAY */
+ { 39175, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */
+ { 39215, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB */
+ { 39259, 0x0000845D }, /* GL_SECONDARY_COLOR_ARRAY_POINTER */
+ { 39292, 0x0000845A }, /* GL_SECONDARY_COLOR_ARRAY_SIZE */
+ { 39322, 0x0000845C }, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */
+ { 39354, 0x0000845B }, /* GL_SECONDARY_COLOR_ARRAY_TYPE */
+ { 39384, 0x00001C02 }, /* GL_SELECT */
+ { 39394, 0x00000DF3 }, /* GL_SELECTION_BUFFER_POINTER */
+ { 39422, 0x00000DF4 }, /* GL_SELECTION_BUFFER_SIZE */
+ { 39447, 0x00008012 }, /* GL_SEPARABLE_2D */
+ { 39463, 0x00008C8D }, /* GL_SEPARATE_ATTRIBS */
+ { 39483, 0x00008C8D }, /* GL_SEPARATE_ATTRIBS_EXT */
+ { 39507, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR */
+ { 39534, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR_EXT */
+ { 39565, 0x0000150F }, /* GL_SET */
+ { 39572, 0x00008DF8 }, /* GL_SHADER_BINARY_FORMATS */
+ { 39597, 0x00008DFA }, /* GL_SHADER_COMPILER */
+ { 39616, 0x00008B48 }, /* GL_SHADER_OBJECT_ARB */
+ { 39637, 0x00008B88 }, /* GL_SHADER_SOURCE_LENGTH */
+ { 39661, 0x00008B4F }, /* GL_SHADER_TYPE */
+ { 39676, 0x00000B54 }, /* GL_SHADE_MODEL */
+ { 39691, 0x00008B8C }, /* GL_SHADING_LANGUAGE_VERSION */
+ { 39719, 0x000080BF }, /* GL_SHADOW_AMBIENT_SGIX */
+ { 39742, 0x000081FB }, /* GL_SHARED_TEXTURE_PALETTE_EXT */
+ { 39772, 0x00001601 }, /* GL_SHININESS */
+ { 39785, 0x00001402 }, /* GL_SHORT */
+ { 39794, 0x00009119 }, /* GL_SIGNALED */
+ { 39806, 0x00008F9C }, /* GL_SIGNED_NORMALIZED */
+ { 39827, 0x000081F9 }, /* GL_SINGLE_COLOR */
+ { 39843, 0x000081F9 }, /* GL_SINGLE_COLOR_EXT */
+ { 39863, 0x000085CC }, /* GL_SLICE_ACCUM_SUN */
+ { 39882, 0x00008C46 }, /* GL_SLUMINANCE */
+ { 39896, 0x00008C47 }, /* GL_SLUMINANCE8 */
+ { 39911, 0x00008C45 }, /* GL_SLUMINANCE8_ALPHA8 */
+ { 39933, 0x00008C44 }, /* GL_SLUMINANCE_ALPHA */
+ { 39953, 0x00001D01 }, /* GL_SMOOTH */
+ { 39963, 0x00000B23 }, /* GL_SMOOTH_LINE_WIDTH_GRANULARITY */
+ { 39996, 0x00000B22 }, /* GL_SMOOTH_LINE_WIDTH_RANGE */
+ { 40023, 0x00000B13 }, /* GL_SMOOTH_POINT_SIZE_GRANULARITY */
+ { 40056, 0x00000B12 }, /* GL_SMOOTH_POINT_SIZE_RANGE */
+ { 40083, 0x00008588 }, /* GL_SOURCE0_ALPHA */
+ { 40100, 0x00008588 }, /* GL_SOURCE0_ALPHA_ARB */
+ { 40121, 0x00008588 }, /* GL_SOURCE0_ALPHA_EXT */
+ { 40142, 0x00008580 }, /* GL_SOURCE0_RGB */
+ { 40157, 0x00008580 }, /* GL_SOURCE0_RGB_ARB */
+ { 40176, 0x00008580 }, /* GL_SOURCE0_RGB_EXT */
+ { 40195, 0x00008589 }, /* GL_SOURCE1_ALPHA */
+ { 40212, 0x00008589 }, /* GL_SOURCE1_ALPHA_ARB */
+ { 40233, 0x00008589 }, /* GL_SOURCE1_ALPHA_EXT */
+ { 40254, 0x00008581 }, /* GL_SOURCE1_RGB */
+ { 40269, 0x00008581 }, /* GL_SOURCE1_RGB_ARB */
+ { 40288, 0x00008581 }, /* GL_SOURCE1_RGB_EXT */
+ { 40307, 0x0000858A }, /* GL_SOURCE2_ALPHA */
+ { 40324, 0x0000858A }, /* GL_SOURCE2_ALPHA_ARB */
+ { 40345, 0x0000858A }, /* GL_SOURCE2_ALPHA_EXT */
+ { 40366, 0x00008582 }, /* GL_SOURCE2_RGB */
+ { 40381, 0x00008582 }, /* GL_SOURCE2_RGB_ARB */
+ { 40400, 0x00008582 }, /* GL_SOURCE2_RGB_EXT */
+ { 40419, 0x0000858B }, /* GL_SOURCE3_ALPHA_NV */
+ { 40439, 0x00008583 }, /* GL_SOURCE3_RGB_NV */
+ { 40457, 0x00001202 }, /* GL_SPECULAR */
+ { 40469, 0x00002402 }, /* GL_SPHERE_MAP */
+ { 40483, 0x00001206 }, /* GL_SPOT_CUTOFF */
+ { 40498, 0x00001204 }, /* GL_SPOT_DIRECTION */
+ { 40516, 0x00001205 }, /* GL_SPOT_EXPONENT */
+ { 40533, 0x00008588 }, /* GL_SRC0_ALPHA */
+ { 40547, 0x00008580 }, /* GL_SRC0_RGB */
+ { 40559, 0x00008589 }, /* GL_SRC1_ALPHA */
+ { 40573, 0x00008581 }, /* GL_SRC1_RGB */
+ { 40585, 0x0000858A }, /* GL_SRC2_ALPHA */
+ { 40599, 0x00008582 }, /* GL_SRC2_RGB */
+ { 40611, 0x00000302 }, /* GL_SRC_ALPHA */
+ { 40624, 0x00000308 }, /* GL_SRC_ALPHA_SATURATE */
+ { 40646, 0x00000300 }, /* GL_SRC_COLOR */
+ { 40659, 0x00008C40 }, /* GL_SRGB */
+ { 40667, 0x00008C41 }, /* GL_SRGB8 */
+ { 40676, 0x00008C43 }, /* GL_SRGB8_ALPHA8 */
+ { 40692, 0x00008C42 }, /* GL_SRGB_ALPHA */
+ { 40706, 0x00000503 }, /* GL_STACK_OVERFLOW */
+ { 40724, 0x00000504 }, /* GL_STACK_UNDERFLOW */
+ { 40743, 0x000088E6 }, /* GL_STATIC_COPY */
+ { 40758, 0x000088E6 }, /* GL_STATIC_COPY_ARB */
+ { 40777, 0x000088E4 }, /* GL_STATIC_DRAW */
+ { 40792, 0x000088E4 }, /* GL_STATIC_DRAW_ARB */
+ { 40811, 0x000088E5 }, /* GL_STATIC_READ */
+ { 40826, 0x000088E5 }, /* GL_STATIC_READ_ARB */
+ { 40845, 0x00001802 }, /* GL_STENCIL */
+ { 40856, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT */
+ { 40878, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_EXT */
+ { 40904, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_OES */
+ { 40930, 0x00008801 }, /* GL_STENCIL_BACK_FAIL */
+ { 40951, 0x00008801 }, /* GL_STENCIL_BACK_FAIL_ATI */
+ { 40976, 0x00008800 }, /* GL_STENCIL_BACK_FUNC */
+ { 40997, 0x00008800 }, /* GL_STENCIL_BACK_FUNC_ATI */
+ { 41022, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */
+ { 41054, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI */
+ { 41090, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */
+ { 41122, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI */
+ { 41158, 0x00008CA3 }, /* GL_STENCIL_BACK_REF */
+ { 41178, 0x00008CA4 }, /* GL_STENCIL_BACK_VALUE_MASK */
+ { 41205, 0x00008CA5 }, /* GL_STENCIL_BACK_WRITEMASK */
+ { 41231, 0x00000D57 }, /* GL_STENCIL_BITS */
+ { 41247, 0x00008224 }, /* GL_STENCIL_BUFFER */
+ { 41265, 0x00000400 }, /* GL_STENCIL_BUFFER_BIT */
+ { 41287, 0x00000B91 }, /* GL_STENCIL_CLEAR_VALUE */
+ { 41310, 0x00000B94 }, /* GL_STENCIL_FAIL */
+ { 41326, 0x00000B92 }, /* GL_STENCIL_FUNC */
+ { 41342, 0x00001901 }, /* GL_STENCIL_INDEX */
+ { 41359, 0x00008D46 }, /* GL_STENCIL_INDEX1 */
+ { 41377, 0x00008D49 }, /* GL_STENCIL_INDEX16 */
+ { 41396, 0x00008D49 }, /* GL_STENCIL_INDEX16_EXT */
+ { 41419, 0x00008D46 }, /* GL_STENCIL_INDEX1_EXT */
+ { 41441, 0x00008D46 }, /* GL_STENCIL_INDEX1_OES */
+ { 41463, 0x00008D47 }, /* GL_STENCIL_INDEX4 */
+ { 41481, 0x00008D47 }, /* GL_STENCIL_INDEX4_EXT */
+ { 41503, 0x00008D47 }, /* GL_STENCIL_INDEX4_OES */
+ { 41525, 0x00008D48 }, /* GL_STENCIL_INDEX8 */
+ { 41543, 0x00008D48 }, /* GL_STENCIL_INDEX8_EXT */
+ { 41565, 0x00008D48 }, /* GL_STENCIL_INDEX8_OES */
+ { 41587, 0x00008D45 }, /* GL_STENCIL_INDEX_EXT */
+ { 41608, 0x00000B95 }, /* GL_STENCIL_PASS_DEPTH_FAIL */
+ { 41635, 0x00000B96 }, /* GL_STENCIL_PASS_DEPTH_PASS */
+ { 41662, 0x00000B97 }, /* GL_STENCIL_REF */
+ { 41677, 0x00000B90 }, /* GL_STENCIL_TEST */
+ { 41693, 0x00008910 }, /* GL_STENCIL_TEST_TWO_SIDE_EXT */
+ { 41722, 0x00000B93 }, /* GL_STENCIL_VALUE_MASK */
+ { 41744, 0x00000B98 }, /* GL_STENCIL_WRITEMASK */
+ { 41765, 0x00000C33 }, /* GL_STEREO */
+ { 41775, 0x000085BE }, /* GL_STORAGE_CACHED_APPLE */
+ { 41799, 0x000085BD }, /* GL_STORAGE_PRIVATE_APPLE */
+ { 41824, 0x000085BF }, /* GL_STORAGE_SHARED_APPLE */
+ { 41848, 0x000088E2 }, /* GL_STREAM_COPY */
+ { 41863, 0x000088E2 }, /* GL_STREAM_COPY_ARB */
+ { 41882, 0x000088E0 }, /* GL_STREAM_DRAW */
+ { 41897, 0x000088E0 }, /* GL_STREAM_DRAW_ARB */
+ { 41916, 0x000088E1 }, /* GL_STREAM_READ */
+ { 41931, 0x000088E1 }, /* GL_STREAM_READ_ARB */
+ { 41950, 0x00000D50 }, /* GL_SUBPIXEL_BITS */
+ { 41967, 0x000084E7 }, /* GL_SUBTRACT */
+ { 41979, 0x000084E7 }, /* GL_SUBTRACT_ARB */
+ { 41995, 0x00009113 }, /* GL_SYNC_CONDITION */
+ { 42013, 0x00009116 }, /* GL_SYNC_FENCE */
+ { 42027, 0x00009115 }, /* GL_SYNC_FLAGS */
+ { 42041, 0x00000001 }, /* GL_SYNC_FLUSH_COMMANDS_BIT */
+ { 42068, 0x00009117 }, /* GL_SYNC_GPU_COMMANDS_COMPLETE */
+ { 42098, 0x00009114 }, /* GL_SYNC_STATUS */
+ { 42113, 0x00002001 }, /* GL_T */
+ { 42118, 0x00002A2A }, /* GL_T2F_C3F_V3F */
+ { 42133, 0x00002A2C }, /* GL_T2F_C4F_N3F_V3F */
+ { 42152, 0x00002A29 }, /* GL_T2F_C4UB_V3F */
+ { 42168, 0x00002A2B }, /* GL_T2F_N3F_V3F */
+ { 42183, 0x00002A27 }, /* GL_T2F_V3F */
+ { 42194, 0x00002A2D }, /* GL_T4F_C4F_N3F_V4F */
+ { 42213, 0x00002A28 }, /* GL_T4F_V4F */
+ { 42224, 0x00008031 }, /* GL_TABLE_TOO_LARGE_EXT */
+ { 42247, 0x00001702 }, /* GL_TEXTURE */
+ { 42258, 0x000084C0 }, /* GL_TEXTURE0 */
+ { 42270, 0x000084C0 }, /* GL_TEXTURE0_ARB */
+ { 42286, 0x000084C1 }, /* GL_TEXTURE1 */
+ { 42298, 0x000084CA }, /* GL_TEXTURE10 */
+ { 42311, 0x000084CA }, /* GL_TEXTURE10_ARB */
+ { 42328, 0x000084CB }, /* GL_TEXTURE11 */
+ { 42341, 0x000084CB }, /* GL_TEXTURE11_ARB */
+ { 42358, 0x000084CC }, /* GL_TEXTURE12 */
+ { 42371, 0x000084CC }, /* GL_TEXTURE12_ARB */
+ { 42388, 0x000084CD }, /* GL_TEXTURE13 */
+ { 42401, 0x000084CD }, /* GL_TEXTURE13_ARB */
+ { 42418, 0x000084CE }, /* GL_TEXTURE14 */
+ { 42431, 0x000084CE }, /* GL_TEXTURE14_ARB */
+ { 42448, 0x000084CF }, /* GL_TEXTURE15 */
+ { 42461, 0x000084CF }, /* GL_TEXTURE15_ARB */
+ { 42478, 0x000084D0 }, /* GL_TEXTURE16 */
+ { 42491, 0x000084D0 }, /* GL_TEXTURE16_ARB */
+ { 42508, 0x000084D1 }, /* GL_TEXTURE17 */
+ { 42521, 0x000084D1 }, /* GL_TEXTURE17_ARB */
+ { 42538, 0x000084D2 }, /* GL_TEXTURE18 */
+ { 42551, 0x000084D2 }, /* GL_TEXTURE18_ARB */
+ { 42568, 0x000084D3 }, /* GL_TEXTURE19 */
+ { 42581, 0x000084D3 }, /* GL_TEXTURE19_ARB */
+ { 42598, 0x000084C1 }, /* GL_TEXTURE1_ARB */
+ { 42614, 0x000084C2 }, /* GL_TEXTURE2 */
+ { 42626, 0x000084D4 }, /* GL_TEXTURE20 */
+ { 42639, 0x000084D4 }, /* GL_TEXTURE20_ARB */
+ { 42656, 0x000084D5 }, /* GL_TEXTURE21 */
+ { 42669, 0x000084D5 }, /* GL_TEXTURE21_ARB */
+ { 42686, 0x000084D6 }, /* GL_TEXTURE22 */
+ { 42699, 0x000084D6 }, /* GL_TEXTURE22_ARB */
+ { 42716, 0x000084D7 }, /* GL_TEXTURE23 */
+ { 42729, 0x000084D7 }, /* GL_TEXTURE23_ARB */
+ { 42746, 0x000084D8 }, /* GL_TEXTURE24 */
+ { 42759, 0x000084D8 }, /* GL_TEXTURE24_ARB */
+ { 42776, 0x000084D9 }, /* GL_TEXTURE25 */
+ { 42789, 0x000084D9 }, /* GL_TEXTURE25_ARB */
+ { 42806, 0x000084DA }, /* GL_TEXTURE26 */
+ { 42819, 0x000084DA }, /* GL_TEXTURE26_ARB */
+ { 42836, 0x000084DB }, /* GL_TEXTURE27 */
+ { 42849, 0x000084DB }, /* GL_TEXTURE27_ARB */
+ { 42866, 0x000084DC }, /* GL_TEXTURE28 */
+ { 42879, 0x000084DC }, /* GL_TEXTURE28_ARB */
+ { 42896, 0x000084DD }, /* GL_TEXTURE29 */
+ { 42909, 0x000084DD }, /* GL_TEXTURE29_ARB */
+ { 42926, 0x000084C2 }, /* GL_TEXTURE2_ARB */
+ { 42942, 0x000084C3 }, /* GL_TEXTURE3 */
+ { 42954, 0x000084DE }, /* GL_TEXTURE30 */
+ { 42967, 0x000084DE }, /* GL_TEXTURE30_ARB */
+ { 42984, 0x000084DF }, /* GL_TEXTURE31 */
+ { 42997, 0x000084DF }, /* GL_TEXTURE31_ARB */
+ { 43014, 0x000084C3 }, /* GL_TEXTURE3_ARB */
+ { 43030, 0x000084C4 }, /* GL_TEXTURE4 */
+ { 43042, 0x000084C4 }, /* GL_TEXTURE4_ARB */
+ { 43058, 0x000084C5 }, /* GL_TEXTURE5 */
+ { 43070, 0x000084C5 }, /* GL_TEXTURE5_ARB */
+ { 43086, 0x000084C6 }, /* GL_TEXTURE6 */
+ { 43098, 0x000084C6 }, /* GL_TEXTURE6_ARB */
+ { 43114, 0x000084C7 }, /* GL_TEXTURE7 */
+ { 43126, 0x000084C7 }, /* GL_TEXTURE7_ARB */
+ { 43142, 0x000084C8 }, /* GL_TEXTURE8 */
+ { 43154, 0x000084C8 }, /* GL_TEXTURE8_ARB */
+ { 43170, 0x000084C9 }, /* GL_TEXTURE9 */
+ { 43182, 0x000084C9 }, /* GL_TEXTURE9_ARB */
+ { 43198, 0x00000DE0 }, /* GL_TEXTURE_1D */
+ { 43212, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY */
+ { 43232, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY_EXT */
+ { 43256, 0x00000DE1 }, /* GL_TEXTURE_2D */
+ { 43270, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY */
+ { 43290, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY_EXT */
+ { 43314, 0x0000806F }, /* GL_TEXTURE_3D */
+ { 43328, 0x0000806F }, /* GL_TEXTURE_3D_OES */
+ { 43346, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE */
+ { 43368, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE_EXT */
+ { 43394, 0x0000813C }, /* GL_TEXTURE_BASE_LEVEL */
+ { 43416, 0x00008068 }, /* GL_TEXTURE_BINDING_1D */
+ { 43438, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY */
+ { 43466, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY_EXT */
+ { 43498, 0x00008069 }, /* GL_TEXTURE_BINDING_2D */
+ { 43520, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY */
+ { 43548, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY_EXT */
+ { 43580, 0x0000806A }, /* GL_TEXTURE_BINDING_3D */
+ { 43602, 0x0000806A }, /* GL_TEXTURE_BINDING_3D_OES */
+ { 43628, 0x00008C2C }, /* GL_TEXTURE_BINDING_BUFFER */
+ { 43654, 0x00008C2C }, /* GL_TEXTURE_BINDING_BUFFER_ARB */
+ { 43684, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP */
+ { 43712, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_ARB */
+ { 43744, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_OES */
+ { 43776, 0x00008D67 }, /* GL_TEXTURE_BINDING_EXTERNAL_OES */
+ { 43808, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE */
+ { 43837, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_ARB */
+ { 43870, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_NV */
+ { 43902, 0x00040000 }, /* GL_TEXTURE_BIT */
+ { 43917, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE */
+ { 43938, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE_EXT */
+ { 43963, 0x00001005 }, /* GL_TEXTURE_BORDER */
+ { 43981, 0x00001004 }, /* GL_TEXTURE_BORDER_COLOR */
+ { 44005, 0x00008C2A }, /* GL_TEXTURE_BUFFER */
+ { 44023, 0x00008C2A }, /* GL_TEXTURE_BUFFER_ARB */
+ { 44045, 0x00008C2D }, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING */
+ { 44082, 0x00008C2D }, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB */
+ { 44123, 0x00008C2E }, /* GL_TEXTURE_BUFFER_FORMAT */
+ { 44148, 0x00008C2E }, /* GL_TEXTURE_BUFFER_FORMAT_ARB */
+ { 44177, 0x00008171 }, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */
+ { 44208, 0x00008176 }, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */
+ { 44238, 0x00008172 }, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */
+ { 44268, 0x00008175 }, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */
+ { 44303, 0x00008173 }, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */
+ { 44334, 0x00008174 }, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */
+ { 44372, 0x000080BC }, /* GL_TEXTURE_COLOR_TABLE_SGI */
+ { 44399, 0x000081EF }, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */
+ { 44431, 0x000080BF }, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */
+ { 44465, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC */
+ { 44489, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC_ARB */
+ { 44517, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE */
+ { 44541, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE_ARB */
+ { 44569, 0x0000819B }, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */
+ { 44602, 0x0000819A }, /* GL_TEXTURE_COMPARE_SGIX */
+ { 44626, 0x00001003 }, /* GL_TEXTURE_COMPONENTS */
+ { 44648, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED */
+ { 44670, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED_ARB */
+ { 44696, 0x000086A3 }, /* GL_TEXTURE_COMPRESSED_FORMATS_ARB */
+ { 44730, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */
+ { 44763, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB */
+ { 44800, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT */
+ { 44828, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT_ARB */
+ { 44860, 0x00008078 }, /* GL_TEXTURE_COORD_ARRAY */
+ { 44883, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */
+ { 44921, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB */
+ { 44963, 0x00008092 }, /* GL_TEXTURE_COORD_ARRAY_POINTER */
+ { 44994, 0x00008088 }, /* GL_TEXTURE_COORD_ARRAY_SIZE */
+ { 45022, 0x0000808A }, /* GL_TEXTURE_COORD_ARRAY_STRIDE */
+ { 45052, 0x00008089 }, /* GL_TEXTURE_COORD_ARRAY_TYPE */
+ { 45080, 0x00008B9D }, /* GL_TEXTURE_CROP_RECT_OES */
+ { 45105, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP */
+ { 45125, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_ARB */
+ { 45149, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */
+ { 45180, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB */
+ { 45215, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES */
+ { 45250, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */
+ { 45281, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB */
+ { 45316, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES */
+ { 45351, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */
+ { 45382, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB */
+ { 45417, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES */
+ { 45452, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_OES */
+ { 45476, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */
+ { 45507, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB */
+ { 45542, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES */
+ { 45577, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */
+ { 45608, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB */
+ { 45643, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES */
+ { 45678, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */
+ { 45709, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB */
+ { 45744, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES */
+ { 45779, 0x000088F4 }, /* GL_TEXTURE_CUBE_MAP_SEAMLESS */
+ { 45808, 0x00008071 }, /* GL_TEXTURE_DEPTH */
+ { 45825, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE */
+ { 45847, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE_ARB */
+ { 45873, 0x00002300 }, /* GL_TEXTURE_ENV */
+ { 45888, 0x00002201 }, /* GL_TEXTURE_ENV_COLOR */
+ { 45909, 0x00002200 }, /* GL_TEXTURE_ENV_MODE */
+ { 45929, 0x00008D65 }, /* GL_TEXTURE_EXTERNAL_OES */
+ { 45953, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL */
+ { 45979, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL_EXT */
+ { 46009, 0x00002500 }, /* GL_TEXTURE_GEN_MODE */
+ { 46029, 0x00002500 }, /* GL_TEXTURE_GEN_MODE_OES */
+ { 46053, 0x00000C63 }, /* GL_TEXTURE_GEN_Q */
+ { 46070, 0x00000C62 }, /* GL_TEXTURE_GEN_R */
+ { 46087, 0x00000C60 }, /* GL_TEXTURE_GEN_S */
+ { 46104, 0x00008D60 }, /* GL_TEXTURE_GEN_STR_OES */
+ { 46127, 0x00000C61 }, /* GL_TEXTURE_GEN_T */
+ { 46144, 0x0000819D }, /* GL_TEXTURE_GEQUAL_R_SGIX */
+ { 46169, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE */
+ { 46191, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE_EXT */
+ { 46217, 0x00001001 }, /* GL_TEXTURE_HEIGHT */
+ { 46235, 0x000080ED }, /* GL_TEXTURE_INDEX_SIZE_EXT */
+ { 46261, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE */
+ { 46287, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE_EXT */
+ { 46317, 0x00001003 }, /* GL_TEXTURE_INTERNAL_FORMAT */
+ { 46344, 0x0000819C }, /* GL_TEXTURE_LEQUAL_R_SGIX */
+ { 46369, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS */
+ { 46389, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS_EXT */
+ { 46413, 0x00008190 }, /* GL_TEXTURE_LOD_BIAS_R_SGIX */
+ { 46440, 0x0000818E }, /* GL_TEXTURE_LOD_BIAS_S_SGIX */
+ { 46467, 0x0000818F }, /* GL_TEXTURE_LOD_BIAS_T_SGIX */
+ { 46494, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE */
+ { 46520, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE_EXT */
+ { 46550, 0x00002800 }, /* GL_TEXTURE_MAG_FILTER */
+ { 46572, 0x00000BA8 }, /* GL_TEXTURE_MATRIX */
+ { 46590, 0x0000898F }, /* GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES */
+ { 46630, 0x000084FE }, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */
+ { 46660, 0x0000836B }, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */
+ { 46688, 0x00008369 }, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */
+ { 46716, 0x0000836A }, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */
+ { 46744, 0x0000813D }, /* GL_TEXTURE_MAX_LEVEL */
+ { 46765, 0x0000813B }, /* GL_TEXTURE_MAX_LOD */
+ { 46784, 0x00002801 }, /* GL_TEXTURE_MIN_FILTER */
+ { 46806, 0x0000813A }, /* GL_TEXTURE_MIN_LOD */
+ { 46825, 0x00008066 }, /* GL_TEXTURE_PRIORITY */
+ { 46845, 0x000085B7 }, /* GL_TEXTURE_RANGE_LENGTH_APPLE */
+ { 46875, 0x000085B8 }, /* GL_TEXTURE_RANGE_POINTER_APPLE */
+ { 46906, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE */
+ { 46927, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_ARB */
+ { 46952, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_NV */
+ { 46976, 0x0000805C }, /* GL_TEXTURE_RED_SIZE */
+ { 46996, 0x0000805C }, /* GL_TEXTURE_RED_SIZE_EXT */
+ { 47020, 0x00008067 }, /* GL_TEXTURE_RESIDENT */
+ { 47040, 0x00008C3F }, /* GL_TEXTURE_SHARED_SIZE */
+ { 47063, 0x00000BA5 }, /* GL_TEXTURE_STACK_DEPTH */
+ { 47086, 0x000088F1 }, /* GL_TEXTURE_STENCIL_SIZE */
+ { 47110, 0x000088F1 }, /* GL_TEXTURE_STENCIL_SIZE_EXT */
+ { 47138, 0x000085BC }, /* GL_TEXTURE_STORAGE_HINT_APPLE */
+ { 47168, 0x00008065 }, /* GL_TEXTURE_TOO_LARGE_EXT */
+ { 47193, 0x0000888F }, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */
+ { 47227, 0x00001000 }, /* GL_TEXTURE_WIDTH */
+ { 47244, 0x00008072 }, /* GL_TEXTURE_WRAP_R */
+ { 47262, 0x00008072 }, /* GL_TEXTURE_WRAP_R_OES */
+ { 47284, 0x00002802 }, /* GL_TEXTURE_WRAP_S */
+ { 47302, 0x00002803 }, /* GL_TEXTURE_WRAP_T */
+ { 47320, 0x0000911B }, /* GL_TIMEOUT_EXPIRED */
+ { 47339, 0x000088BF }, /* GL_TIME_ELAPSED_EXT */
+ { 47359, 0x00008648 }, /* GL_TRACK_MATRIX_NV */
+ { 47378, 0x00008649 }, /* GL_TRACK_MATRIX_TRANSFORM_NV */
+ { 47407, 0x00001000 }, /* GL_TRANSFORM_BIT */
+ { 47424, 0x00008E22 }, /* GL_TRANSFORM_FEEDBACK */
+ { 47446, 0x00008E25 }, /* GL_TRANSFORM_FEEDBACK_BINDING */
+ { 47476, 0x00008C8E }, /* GL_TRANSFORM_FEEDBACK_BUFFER */
+ { 47505, 0x00008E24 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE */
+ { 47541, 0x00008C8F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING */
+ { 47578, 0x00008C8F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT */
+ { 47619, 0x00008C8E }, /* GL_TRANSFORM_FEEDBACK_BUFFER_EXT */
+ { 47652, 0x00008C7F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE */
+ { 47686, 0x00008C7F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE_EXT */
+ { 47724, 0x00008E23 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED */
+ { 47760, 0x00008C85 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE */
+ { 47794, 0x00008C85 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT */
+ { 47832, 0x00008C84 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_START */
+ { 47867, 0x00008C84 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT */
+ { 47906, 0x00008C88 }, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN */
+ { 47947, 0x00008C88 }, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT */
+ { 47992, 0x00008C83 }, /* GL_TRANSFORM_FEEDBACK_VARYINGS */
+ { 48023, 0x00008C83 }, /* GL_TRANSFORM_FEEDBACK_VARYINGS_EXT */
+ { 48058, 0x00008C76 }, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH */
+ { 48099, 0x00008C76 }, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT */
+ { 48144, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX */
+ { 48170, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX_ARB */
+ { 48200, 0x000088B7 }, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */
+ { 48232, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX */
+ { 48262, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX_ARB */
+ { 48296, 0x0000862C }, /* GL_TRANSPOSE_NV */
+ { 48312, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX */
+ { 48343, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX_ARB */
+ { 48378, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX */
+ { 48406, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX_ARB */
+ { 48438, 0x00000004 }, /* GL_TRIANGLES */
+ { 48451, 0x0000000C }, /* GL_TRIANGLES_ADJACENCY */
+ { 48474, 0x0000000C }, /* GL_TRIANGLES_ADJACENCY_ARB */
+ { 48501, 0x00000006 }, /* GL_TRIANGLE_FAN */
+ { 48517, 0x00008615 }, /* GL_TRIANGLE_MESH_SUN */
+ { 48538, 0x00000005 }, /* GL_TRIANGLE_STRIP */
+ { 48556, 0x0000000D }, /* GL_TRIANGLE_STRIP_ADJACENCY */
+ { 48584, 0x0000000D }, /* GL_TRIANGLE_STRIP_ADJACENCY_ARB */
+ { 48616, 0x00000001 }, /* GL_TRUE */
+ { 48624, 0x00008A1C }, /* GL_UNDEFINED_APPLE */
+ { 48643, 0x00008255 }, /* GL_UNKNOWN_CONTEXT_RESET_ARB */
+ { 48672, 0x00000CF5 }, /* GL_UNPACK_ALIGNMENT */
+ { 48692, 0x0000806E }, /* GL_UNPACK_IMAGE_HEIGHT */
+ { 48715, 0x00000CF1 }, /* GL_UNPACK_LSB_FIRST */
+ { 48735, 0x00000CF2 }, /* GL_UNPACK_ROW_LENGTH */
+ { 48756, 0x0000806D }, /* GL_UNPACK_SKIP_IMAGES */
+ { 48778, 0x00000CF4 }, /* GL_UNPACK_SKIP_PIXELS */
+ { 48800, 0x00000CF3 }, /* GL_UNPACK_SKIP_ROWS */
+ { 48820, 0x00000CF0 }, /* GL_UNPACK_SWAP_BYTES */
+ { 48841, 0x00009118 }, /* GL_UNSIGNALED */
+ { 48855, 0x00001401 }, /* GL_UNSIGNED_BYTE */
+ { 48872, 0x00008362 }, /* GL_UNSIGNED_BYTE_2_3_3_REV */
+ { 48899, 0x00008032 }, /* GL_UNSIGNED_BYTE_3_3_2 */
+ { 48922, 0x00001405 }, /* GL_UNSIGNED_INT */
+ { 48938, 0x00008C3B }, /* GL_UNSIGNED_INT_10F_11F_11F_REV */
+ { 48970, 0x00008036 }, /* GL_UNSIGNED_INT_10_10_10_2 */
+ { 48997, 0x00008DF6 }, /* GL_UNSIGNED_INT_10_10_10_2_OES */
+ { 49028, 0x000084FA }, /* GL_UNSIGNED_INT_24_8 */
+ { 49049, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_EXT */
+ { 49074, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_NV */
+ { 49098, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_OES */
+ { 49123, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV */
+ { 49154, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV_EXT */
+ { 49189, 0x00008C3E }, /* GL_UNSIGNED_INT_5_9_9_9_REV */
+ { 49217, 0x00008035 }, /* GL_UNSIGNED_INT_8_8_8_8 */
+ { 49241, 0x00008367 }, /* GL_UNSIGNED_INT_8_8_8_8_REV */
+ { 49269, 0x00008DD1 }, /* GL_UNSIGNED_INT_SAMPLER_1D */
+ { 49296, 0x00008DD6 }, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY */
+ { 49329, 0x00008DD6 }, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT */
+ { 49366, 0x00008DD1 }, /* GL_UNSIGNED_INT_SAMPLER_1D_EXT */
+ { 49397, 0x00008DD2 }, /* GL_UNSIGNED_INT_SAMPLER_2D */
+ { 49424, 0x00008DD7 }, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY */
+ { 49457, 0x00008DD7 }, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT */
+ { 49494, 0x00008DD2 }, /* GL_UNSIGNED_INT_SAMPLER_2D_EXT */
+ { 49525, 0x00008DD5 }, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT */
+ { 49557, 0x00008DD5 }, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT */
+ { 49593, 0x00008DD3 }, /* GL_UNSIGNED_INT_SAMPLER_3D */
+ { 49620, 0x00008DD3 }, /* GL_UNSIGNED_INT_SAMPLER_3D_EXT */
+ { 49651, 0x00008DD8 }, /* GL_UNSIGNED_INT_SAMPLER_BUFFER */
+ { 49682, 0x00008DD8 }, /* GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT */
+ { 49717, 0x00008DD4 }, /* GL_UNSIGNED_INT_SAMPLER_CUBE */
+ { 49746, 0x00008DD4 }, /* GL_UNSIGNED_INT_SAMPLER_CUBE_EXT */
+ { 49779, 0x00008DC6 }, /* GL_UNSIGNED_INT_VEC2 */
+ { 49800, 0x00008DC6 }, /* GL_UNSIGNED_INT_VEC2_EXT */
+ { 49825, 0x00008DC7 }, /* GL_UNSIGNED_INT_VEC3 */
+ { 49846, 0x00008DC7 }, /* GL_UNSIGNED_INT_VEC3_EXT */
+ { 49871, 0x00008DC8 }, /* GL_UNSIGNED_INT_VEC4 */
+ { 49892, 0x00008DC8 }, /* GL_UNSIGNED_INT_VEC4_EXT */
+ { 49917, 0x00008C17 }, /* GL_UNSIGNED_NORMALIZED */
+ { 49940, 0x00001403 }, /* GL_UNSIGNED_SHORT */
+ { 49958, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */
+ { 49988, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT */
+ { 50022, 0x00008033 }, /* GL_UNSIGNED_SHORT_4_4_4_4 */
+ { 50048, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */
+ { 50078, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT */
+ { 50112, 0x00008034 }, /* GL_UNSIGNED_SHORT_5_5_5_1 */
+ { 50138, 0x00008363 }, /* GL_UNSIGNED_SHORT_5_6_5 */
+ { 50162, 0x00008364 }, /* GL_UNSIGNED_SHORT_5_6_5_REV */
+ { 50190, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_APPLE */
+ { 50218, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_MESA */
+ { 50245, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */
+ { 50277, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_MESA */
+ { 50308, 0x00008CA2 }, /* GL_UPPER_LEFT */
+ { 50322, 0x00002A20 }, /* GL_V2F */
+ { 50329, 0x00002A21 }, /* GL_V3F */
+ { 50336, 0x00008B83 }, /* GL_VALIDATE_STATUS */
+ { 50355, 0x00001F00 }, /* GL_VENDOR */
+ { 50365, 0x00001F02 }, /* GL_VERSION */
+ { 50376, 0x00008074 }, /* GL_VERTEX_ARRAY */
+ { 50392, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING */
+ { 50416, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING_APPLE */
+ { 50446, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING */
+ { 50477, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING_ARB */
+ { 50512, 0x0000808E }, /* GL_VERTEX_ARRAY_POINTER */
+ { 50536, 0x0000807A }, /* GL_VERTEX_ARRAY_SIZE */
+ { 50557, 0x0000807C }, /* GL_VERTEX_ARRAY_STRIDE */
+ { 50580, 0x0000807B }, /* GL_VERTEX_ARRAY_TYPE */
+ { 50601, 0x00008650 }, /* GL_VERTEX_ATTRIB_ARRAY0_NV */
+ { 50628, 0x0000865A }, /* GL_VERTEX_ATTRIB_ARRAY10_NV */
+ { 50656, 0x0000865B }, /* GL_VERTEX_ATTRIB_ARRAY11_NV */
+ { 50684, 0x0000865C }, /* GL_VERTEX_ATTRIB_ARRAY12_NV */
+ { 50712, 0x0000865D }, /* GL_VERTEX_ATTRIB_ARRAY13_NV */
+ { 50740, 0x0000865E }, /* GL_VERTEX_ATTRIB_ARRAY14_NV */
+ { 50768, 0x0000865F }, /* GL_VERTEX_ATTRIB_ARRAY15_NV */
+ { 50796, 0x00008651 }, /* GL_VERTEX_ATTRIB_ARRAY1_NV */
+ { 50823, 0x00008652 }, /* GL_VERTEX_ATTRIB_ARRAY2_NV */
+ { 50850, 0x00008653 }, /* GL_VERTEX_ATTRIB_ARRAY3_NV */
+ { 50877, 0x00008654 }, /* GL_VERTEX_ATTRIB_ARRAY4_NV */
+ { 50904, 0x00008655 }, /* GL_VERTEX_ATTRIB_ARRAY5_NV */
+ { 50931, 0x00008656 }, /* GL_VERTEX_ATTRIB_ARRAY6_NV */
+ { 50958, 0x00008657 }, /* GL_VERTEX_ATTRIB_ARRAY7_NV */
+ { 50985, 0x00008658 }, /* GL_VERTEX_ATTRIB_ARRAY8_NV */
+ { 51012, 0x00008659 }, /* GL_VERTEX_ATTRIB_ARRAY9_NV */
+ { 51039, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */
+ { 51077, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB */
+ { 51119, 0x000088FE }, /* GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB */
+ { 51154, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */
+ { 51185, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB */
+ { 51220, 0x000088FD }, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER */
+ { 51251, 0x000088FD }, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT */
+ { 51286, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */
+ { 51320, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB */
+ { 51358, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */
+ { 51389, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB */
+ { 51424, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */
+ { 51452, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB */
+ { 51484, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */
+ { 51514, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB */
+ { 51548, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */
+ { 51576, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB */
+ { 51608, 0x000086A7 }, /* GL_VERTEX_BLEND_ARB */
+ { 51628, 0x00008620 }, /* GL_VERTEX_PROGRAM_ARB */
+ { 51650, 0x0000864A }, /* GL_VERTEX_PROGRAM_BINDING_NV */
+ { 51679, 0x00008620 }, /* GL_VERTEX_PROGRAM_NV */
+ { 51700, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE */
+ { 51729, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_ARB */
+ { 51762, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_NV */
+ { 51794, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE */
+ { 51821, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_ARB */
+ { 51852, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_NV */
+ { 51882, 0x00008B31 }, /* GL_VERTEX_SHADER */
+ { 51899, 0x00008B31 }, /* GL_VERTEX_SHADER_ARB */
+ { 51920, 0x00008621 }, /* GL_VERTEX_STATE_PROGRAM_NV */
+ { 51947, 0x00000BA2 }, /* GL_VIEWPORT */
+ { 51959, 0x00000800 }, /* GL_VIEWPORT_BIT */
+ { 51975, 0x00008A1A }, /* GL_VOLATILE_APPLE */
+ { 51993, 0x0000911D }, /* GL_WAIT_FAILED */
+ { 52008, 0x000086AD }, /* GL_WEIGHT_ARRAY_ARB */
+ { 52028, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */
+ { 52059, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB */
+ { 52094, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_OES */
+ { 52129, 0x000086AD }, /* GL_WEIGHT_ARRAY_OES */
+ { 52149, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_ARB */
+ { 52177, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_OES */
+ { 52205, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_ARB */
+ { 52230, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_OES */
+ { 52255, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_ARB */
+ { 52282, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_OES */
+ { 52309, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_ARB */
+ { 52334, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_OES */
+ { 52359, 0x000086A6 }, /* GL_WEIGHT_SUM_UNITY_ARB */
+ { 52383, 0x000081D4 }, /* GL_WRAP_BORDER_SUN */
+ { 52402, 0x000088B9 }, /* GL_WRITE_ONLY */
+ { 52416, 0x000088B9 }, /* GL_WRITE_ONLY_ARB */
+ { 52434, 0x000088B9 }, /* GL_WRITE_ONLY_OES */
+ { 52452, 0x00001506 }, /* GL_XOR */
+ { 52459, 0x000085B9 }, /* GL_YCBCR_422_APPLE */
+ { 52478, 0x00008757 }, /* GL_YCBCR_MESA */
+ { 52492, 0x00000000 }, /* GL_ZERO */
+ { 52500, 0x00000D16 }, /* GL_ZOOM_X */
+ { 52510, 0x00000D17 }, /* GL_ZOOM_Y */
};
-static const unsigned reduced_enums[1564] =
+static const unsigned reduced_enums[1569] =
{
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 */
+ 852, /* GL_LINES */
+ 856, /* GL_LINE_LOOP */
+ 863, /* GL_LINE_STRIP */
+ 2179, /* GL_TRIANGLES */
+ 2184, /* GL_TRIANGLE_STRIP */
+ 2182, /* GL_TRIANGLE_FAN */
+ 1540, /* GL_QUADS */
+ 1544, /* GL_QUAD_STRIP */
+ 1408, /* GL_POLYGON */
+ 853, /* GL_LINES_ADJACENCY */
+ 864, /* GL_LINE_STRIP_ADJACENCY */
+ 2180, /* GL_TRIANGLES_ADJACENCY */
+ 2185, /* GL_TRIANGLE_STRIP_ADJACENCY */
+ 1420, /* GL_POLYGON_STIPPLE_BIT */
+ 1363, /* GL_PIXEL_MODE_BIT */
+ 839, /* GL_LIGHTING_BIT */
589, /* GL_FOG_BIT */
8, /* GL_ACCUM */
- 874, /* GL_LOAD */
- 1629, /* GL_RETURN */
- 1227, /* GL_MULT */
+ 875, /* GL_LOAD */
+ 1631, /* GL_RETURN */
+ 1228, /* GL_MULT */
24, /* GL_ADD */
- 1243, /* GL_NEVER */
- 828, /* GL_LESS */
+ 1244, /* GL_NEVER */
+ 829, /* GL_LESS */
545, /* GL_EQUAL */
- 827, /* GL_LEQUAL */
- 712, /* GL_GREATER */
- 1260, /* GL_NOTEQUAL */
+ 828, /* GL_LEQUAL */
+ 713, /* GL_GREATER */
+ 1261, /* GL_NOTEQUAL */
711, /* GL_GEQUAL */
55, /* GL_ALWAYS */
- 1838, /* GL_SRC_COLOR */
- 1295, /* GL_ONE_MINUS_SRC_COLOR */
- 1836, /* GL_SRC_ALPHA */
- 1294, /* GL_ONE_MINUS_SRC_ALPHA */
+ 1841, /* GL_SRC_COLOR */
+ 1296, /* GL_ONE_MINUS_SRC_COLOR */
+ 1839, /* GL_SRC_ALPHA */
+ 1295, /* GL_ONE_MINUS_SRC_ALPHA */
524, /* GL_DST_ALPHA */
- 1292, /* GL_ONE_MINUS_DST_ALPHA */
+ 1293, /* GL_ONE_MINUS_DST_ALPHA */
525, /* GL_DST_COLOR */
- 1293, /* GL_ONE_MINUS_DST_COLOR */
- 1837, /* GL_SRC_ALPHA_SATURATE */
+ 1294, /* GL_ONE_MINUS_DST_COLOR */
+ 1840, /* GL_SRC_ALPHA_SATURATE */
688, /* GL_FRONT_LEFT */
689, /* GL_FRONT_RIGHT */
77, /* GL_BACK_LEFT */
78, /* GL_BACK_RIGHT */
685, /* GL_FRONT */
76, /* GL_BACK */
- 826, /* GL_LEFT */
- 1719, /* GL_RIGHT */
+ 827, /* GL_LEFT */
+ 1721, /* GL_RIGHT */
686, /* GL_FRONT_AND_BACK */
71, /* GL_AUX0 */
72, /* GL_AUX1 */
73, /* GL_AUX2 */
74, /* GL_AUX3 */
- 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 */
+ 815, /* GL_INVALID_ENUM */
+ 820, /* GL_INVALID_VALUE */
+ 819, /* GL_INVALID_OPERATION */
+ 1846, /* GL_STACK_OVERFLOW */
+ 1847, /* GL_STACK_UNDERFLOW */
+ 1321, /* GL_OUT_OF_MEMORY */
+ 816, /* GL_INVALID_FRAMEBUFFER_OPERATION */
0, /* GL_2D */
2, /* GL_3D */
3, /* GL_3D_COLOR */
4, /* GL_3D_COLOR_TEXTURE */
6, /* GL_4D_COLOR_TEXTURE */
- 1340, /* GL_PASS_THROUGH_TOKEN */
- 1406, /* GL_POINT_TOKEN */
- 865, /* GL_LINE_TOKEN */
- 1420, /* GL_POLYGON_TOKEN */
+ 1341, /* GL_PASS_THROUGH_TOKEN */
+ 1407, /* GL_POINT_TOKEN */
+ 866, /* GL_LINE_TOKEN */
+ 1421, /* GL_POLYGON_TOKEN */
87, /* GL_BITMAP_TOKEN */
523, /* GL_DRAW_PIXEL_TOKEN */
353, /* GL_COPY_PIXEL_TOKEN */
- 856, /* GL_LINE_RESET_TOKEN */
+ 857, /* GL_LINE_RESET_TOKEN */
548, /* GL_EXP */
549, /* GL_EXP2 */
390, /* GL_CW */
154, /* GL_CCW */
187, /* GL_COEFF */
- 1317, /* GL_ORDER */
+ 1318, /* GL_ORDER */
444, /* GL_DOMAIN */
363, /* GL_CURRENT_COLOR */
366, /* GL_CURRENT_INDEX */
@@ -4805,33 +4815,33 @@ static const unsigned reduced_enums[1564] =
381, /* GL_CURRENT_RASTER_POSITION */
382, /* GL_CURRENT_RASTER_POSITION_VALID */
379, /* GL_CURRENT_RASTER_DISTANCE */
- 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 */
+ 1399, /* GL_POINT_SMOOTH */
+ 1383, /* GL_POINT_SIZE */
+ 1398, /* GL_POINT_SIZE_RANGE */
+ 1389, /* GL_POINT_SIZE_GRANULARITY */
+ 858, /* GL_LINE_SMOOTH */
+ 867, /* GL_LINE_WIDTH */
+ 869, /* GL_LINE_WIDTH_RANGE */
+ 868, /* GL_LINE_WIDTH_GRANULARITY */
+ 860, /* GL_LINE_STIPPLE */
+ 861, /* GL_LINE_STIPPLE_PATTERN */
+ 862, /* GL_LINE_STIPPLE_REPEAT */
+ 874, /* GL_LIST_MODE */
+ 1083, /* GL_MAX_LIST_NESTING */
+ 871, /* GL_LIST_BASE */
+ 873, /* GL_LIST_INDEX */
+ 1410, /* GL_POLYGON_MODE */
+ 1417, /* GL_POLYGON_SMOOTH */
+ 1419, /* GL_POLYGON_STIPPLE */
534, /* GL_EDGE_FLAG */
356, /* GL_CULL_FACE */
357, /* GL_CULL_FACE_MODE */
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 */
+ 838, /* GL_LIGHTING */
+ 843, /* GL_LIGHT_MODEL_LOCAL_VIEWER */
+ 844, /* GL_LIGHT_MODEL_TWO_SIDE */
+ 840, /* GL_LIGHT_MODEL_AMBIENT */
+ 1788, /* GL_SHADE_MODEL */
235, /* GL_COLOR_MATERIAL_FACE */
236, /* GL_COLOR_MATERIAL_PARAMETER */
234, /* GL_COLOR_MATERIAL */
@@ -4848,24 +4858,24 @@ static const unsigned reduced_enums[1564] =
414, /* GL_DEPTH_CLEAR_VALUE */
428, /* GL_DEPTH_FUNC */
12, /* GL_ACCUM_CLEAR_VALUE */
- 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 */
+ 1891, /* GL_STENCIL_TEST */
+ 1872, /* GL_STENCIL_CLEAR_VALUE */
+ 1874, /* GL_STENCIL_FUNC */
+ 1893, /* GL_STENCIL_VALUE_MASK */
+ 1873, /* GL_STENCIL_FAIL */
+ 1888, /* GL_STENCIL_PASS_DEPTH_FAIL */
+ 1889, /* GL_STENCIL_PASS_DEPTH_PASS */
+ 1890, /* GL_STENCIL_REF */
+ 1894, /* GL_STENCIL_WRITEMASK */
+ 1032, /* GL_MATRIX_MODE */
+ 1250, /* GL_NORMALIZE */
+ 2312, /* GL_VIEWPORT */
+ 1223, /* GL_MODELVIEW_STACK_DEPTH */
+ 1514, /* GL_PROJECTION_STACK_DEPTH */
+ 2133, /* GL_TEXTURE_STACK_DEPTH */
+ 1220, /* GL_MODELVIEW_MATRIX */
+ 1512, /* GL_PROJECTION_MATRIX */
+ 2113, /* GL_TEXTURE_MATRIX */
69, /* GL_ATTRIB_STACK_DEPTH */
169, /* GL_CLIENT_ATTRIB_STACK_DEPTH */
51, /* GL_ALPHA_TEST */
@@ -4875,267 +4885,267 @@ static const unsigned reduced_enums[1564] =
91, /* GL_BLEND_DST */
105, /* GL_BLEND_SRC */
88, /* GL_BLEND */
- 876, /* GL_LOGIC_OP_MODE */
- 761, /* GL_INDEX_LOGIC_OP */
+ 877, /* GL_LOGIC_OP_MODE */
+ 762, /* GL_INDEX_LOGIC_OP */
233, /* GL_COLOR_LOGIC_OP */
75, /* GL_AUX_BUFFERS */
454, /* GL_DRAW_BUFFER */
- 1566, /* GL_READ_BUFFER */
- 1762, /* GL_SCISSOR_BOX */
- 1763, /* GL_SCISSOR_TEST */
- 760, /* GL_INDEX_CLEAR_VALUE */
- 765, /* GL_INDEX_WRITEMASK */
+ 1567, /* GL_READ_BUFFER */
+ 1765, /* GL_SCISSOR_BOX */
+ 1766, /* GL_SCISSOR_TEST */
+ 761, /* GL_INDEX_CLEAR_VALUE */
+ 766, /* GL_INDEX_WRITEMASK */
230, /* GL_COLOR_CLEAR_VALUE */
272, /* GL_COLOR_WRITEMASK */
- 762, /* GL_INDEX_MODE */
- 1708, /* GL_RGBA_MODE */
+ 763, /* GL_INDEX_MODE */
+ 1710, /* GL_RGBA_MODE */
453, /* GL_DOUBLEBUFFER */
- 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 */
+ 1895, /* GL_STEREO */
+ 1621, /* GL_RENDER_MODE */
+ 1342, /* GL_PERSPECTIVE_CORRECTION_HINT */
+ 1400, /* GL_POINT_SMOOTH_HINT */
+ 859, /* GL_LINE_SMOOTH_HINT */
+ 1418, /* 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 */
+ 2093, /* GL_TEXTURE_GEN_S */
+ 2095, /* GL_TEXTURE_GEN_T */
+ 2092, /* GL_TEXTURE_GEN_R */
+ 2091, /* GL_TEXTURE_GEN_Q */
+ 1355, /* GL_PIXEL_MAP_I_TO_I */
+ 1361, /* GL_PIXEL_MAP_S_TO_S */
+ 1357, /* GL_PIXEL_MAP_I_TO_R */
+ 1353, /* GL_PIXEL_MAP_I_TO_G */
+ 1351, /* GL_PIXEL_MAP_I_TO_B */
+ 1349, /* GL_PIXEL_MAP_I_TO_A */
+ 1359, /* GL_PIXEL_MAP_R_TO_R */
+ 1347, /* GL_PIXEL_MAP_G_TO_G */
+ 1345, /* GL_PIXEL_MAP_B_TO_B */
+ 1343, /* GL_PIXEL_MAP_A_TO_A */
+ 1356, /* GL_PIXEL_MAP_I_TO_I_SIZE */
+ 1362, /* GL_PIXEL_MAP_S_TO_S_SIZE */
+ 1358, /* GL_PIXEL_MAP_I_TO_R_SIZE */
+ 1354, /* GL_PIXEL_MAP_I_TO_G_SIZE */
+ 1352, /* GL_PIXEL_MAP_I_TO_B_SIZE */
+ 1350, /* GL_PIXEL_MAP_I_TO_A_SIZE */
+ 1360, /* GL_PIXEL_MAP_R_TO_R_SIZE */
+ 1348, /* GL_PIXEL_MAP_G_TO_G_SIZE */
+ 1346, /* GL_PIXEL_MAP_B_TO_B_SIZE */
+ 1344, /* GL_PIXEL_MAP_A_TO_A_SIZE */
+ 2197, /* GL_UNPACK_SWAP_BYTES */
+ 2192, /* GL_UNPACK_LSB_FIRST */
+ 2193, /* GL_UNPACK_ROW_LENGTH */
+ 2196, /* GL_UNPACK_SKIP_ROWS */
+ 2195, /* GL_UNPACK_SKIP_PIXELS */
+ 2190, /* GL_UNPACK_ALIGNMENT */
+ 1330, /* GL_PACK_SWAP_BYTES */
+ 1325, /* GL_PACK_LSB_FIRST */
+ 1326, /* GL_PACK_ROW_LENGTH */
+ 1329, /* GL_PACK_SKIP_ROWS */
+ 1328, /* GL_PACK_SKIP_PIXELS */
+ 1322, /* GL_PACK_ALIGNMENT */
+ 973, /* GL_MAP_COLOR */
+ 978, /* GL_MAP_STENCIL */
+ 765, /* GL_INDEX_SHIFT */
+ 764, /* GL_INDEX_OFFSET */
+ 1583, /* GL_RED_SCALE */
+ 1579, /* GL_RED_BIAS */
+ 2338, /* GL_ZOOM_X */
+ 2339, /* GL_ZOOM_Y */
+ 719, /* GL_GREEN_SCALE */
+ 715, /* 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 */
- 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 */
+ 1065, /* GL_MAX_EVAL_ORDER */
+ 1082, /* GL_MAX_LIGHTS */
+ 1044, /* GL_MAX_CLIP_DISTANCES */
+ 1138, /* GL_MAX_TEXTURE_SIZE */
+ 1089, /* GL_MAX_PIXEL_MAP_TABLE */
+ 1040, /* GL_MAX_ATTRIB_STACK_DEPTH */
+ 1085, /* GL_MAX_MODELVIEW_STACK_DEPTH */
+ 1086, /* GL_MAX_NAME_STACK_DEPTH */
+ 1117, /* GL_MAX_PROJECTION_STACK_DEPTH */
+ 1139, /* GL_MAX_TEXTURE_STACK_DEPTH */
+ 1165, /* GL_MAX_VIEWPORT_DIMS */
+ 1041, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */
+ 1905, /* GL_SUBPIXEL_BITS */
+ 760, /* GL_INDEX_BITS */
+ 1580, /* GL_RED_BITS */
+ 716, /* GL_GREEN_BITS */
112, /* GL_BLUE_BITS */
48, /* GL_ALPHA_BITS */
407, /* GL_DEPTH_BITS */
- 1866, /* GL_STENCIL_BITS */
+ 1869, /* GL_STENCIL_BITS */
14, /* GL_ACCUM_RED_BITS */
13, /* GL_ACCUM_GREEN_BITS */
10, /* GL_ACCUM_BLUE_BITS */
9, /* GL_ACCUM_ALPHA_BITS */
- 1236, /* GL_NAME_STACK_DEPTH */
+ 1237, /* GL_NAME_STACK_DEPTH */
70, /* GL_AUTO_NORMAL */
- 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 */
+ 919, /* GL_MAP1_COLOR_4 */
+ 922, /* GL_MAP1_INDEX */
+ 923, /* GL_MAP1_NORMAL */
+ 924, /* GL_MAP1_TEXTURE_COORD_1 */
+ 925, /* GL_MAP1_TEXTURE_COORD_2 */
+ 926, /* GL_MAP1_TEXTURE_COORD_3 */
+ 927, /* GL_MAP1_TEXTURE_COORD_4 */
+ 928, /* GL_MAP1_VERTEX_3 */
+ 929, /* GL_MAP1_VERTEX_4 */
+ 946, /* GL_MAP2_COLOR_4 */
+ 949, /* GL_MAP2_INDEX */
+ 950, /* GL_MAP2_NORMAL */
+ 951, /* GL_MAP2_TEXTURE_COORD_1 */
+ 952, /* GL_MAP2_TEXTURE_COORD_2 */
+ 953, /* GL_MAP2_TEXTURE_COORD_3 */
+ 954, /* GL_MAP2_TEXTURE_COORD_4 */
+ 955, /* GL_MAP2_VERTEX_3 */
+ 956, /* GL_MAP2_VERTEX_4 */
+ 920, /* GL_MAP1_GRID_DOMAIN */
+ 921, /* GL_MAP1_GRID_SEGMENTS */
+ 947, /* GL_MAP2_GRID_DOMAIN */
+ 948, /* GL_MAP2_GRID_SEGMENTS */
+ 1988, /* GL_TEXTURE_1D */
+ 1991, /* 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 */
+ 1775, /* GL_SELECTION_BUFFER_POINTER */
+ 1776, /* GL_SELECTION_BUFFER_SIZE */
+ 2139, /* GL_TEXTURE_WIDTH */
+ 2099, /* GL_TEXTURE_HEIGHT */
+ 2042, /* GL_TEXTURE_COMPONENTS */
+ 2020, /* GL_TEXTURE_BORDER_COLOR */
+ 2019, /* GL_TEXTURE_BORDER */
445, /* GL_DONT_CARE */
556, /* GL_FASTEST */
- 1244, /* GL_NICEST */
+ 1245, /* GL_NICEST */
56, /* GL_AMBIENT */
442, /* GL_DIFFUSE */
- 1825, /* GL_SPECULAR */
- 1421, /* GL_POSITION */
- 1828, /* GL_SPOT_DIRECTION */
- 1829, /* GL_SPOT_EXPONENT */
- 1827, /* GL_SPOT_CUTOFF */
+ 1828, /* GL_SPECULAR */
+ 1422, /* GL_POSITION */
+ 1831, /* GL_SPOT_DIRECTION */
+ 1832, /* GL_SPOT_EXPONENT */
+ 1830, /* GL_SPOT_CUTOFF */
320, /* GL_CONSTANT_ATTENUATION */
- 846, /* GL_LINEAR_ATTENUATION */
- 1538, /* GL_QUADRATIC_ATTENUATION */
+ 847, /* GL_LINEAR_ATTENUATION */
+ 1539, /* GL_QUADRATIC_ATTENUATION */
287, /* GL_COMPILE */
288, /* GL_COMPILE_AND_EXECUTE */
149, /* GL_BYTE */
- 2194, /* GL_UNSIGNED_BYTE */
- 1790, /* GL_SHORT */
- 2233, /* GL_UNSIGNED_SHORT */
- 768, /* GL_INT */
- 2197, /* GL_UNSIGNED_INT */
+ 2199, /* GL_UNSIGNED_BYTE */
+ 1793, /* GL_SHORT */
+ 2238, /* GL_UNSIGNED_SHORT */
+ 769, /* GL_INT */
+ 2202, /* GL_UNSIGNED_INT */
569, /* GL_FLOAT */
1, /* GL_2_BYTES */
5, /* GL_3_BYTES */
7, /* GL_4_BYTES */
452, /* GL_DOUBLE */
- 720, /* GL_HALF_FLOAT */
+ 721, /* GL_HALF_FLOAT */
564, /* GL_FIXED */
165, /* GL_CLEAR */
58, /* GL_AND */
60, /* GL_AND_REVERSE */
351, /* GL_COPY */
59, /* GL_AND_INVERTED */
- 1247, /* GL_NOOP */
- 2329, /* GL_XOR */
- 1316, /* GL_OR */
- 1248, /* GL_NOR */
+ 1248, /* GL_NOOP */
+ 2334, /* GL_XOR */
+ 1317, /* GL_OR */
+ 1249, /* GL_NOR */
546, /* GL_EQUIV */
- 822, /* GL_INVERT */
- 1319, /* GL_OR_REVERSE */
+ 823, /* GL_INVERT */
+ 1320, /* GL_OR_REVERSE */
352, /* GL_COPY_INVERTED */
- 1318, /* GL_OR_INVERTED */
- 1237, /* GL_NAND */
- 1779, /* GL_SET */
+ 1319, /* GL_OR_INVERTED */
+ 1238, /* GL_NAND */
+ 1782, /* GL_SET */
543, /* GL_EMISSION */
- 1789, /* GL_SHININESS */
+ 1792, /* GL_SHININESS */
57, /* GL_AMBIENT_AND_DIFFUSE */
232, /* GL_COLOR_INDEXES */
- 1186, /* GL_MODELVIEW */
- 1510, /* GL_PROJECTION */
- 1920, /* GL_TEXTURE */
+ 1187, /* GL_MODELVIEW */
+ 1511, /* GL_PROJECTION */
+ 1923, /* GL_TEXTURE */
188, /* GL_COLOR */
399, /* GL_DEPTH */
- 1851, /* GL_STENCIL */
+ 1854, /* GL_STENCIL */
231, /* GL_COLOR_INDEX */
- 1872, /* GL_STENCIL_INDEX */
+ 1875, /* GL_STENCIL_INDEX */
415, /* GL_DEPTH_COMPONENT */
- 1575, /* GL_RED */
- 713, /* GL_GREEN */
+ 1576, /* GL_RED */
+ 714, /* GL_GREEN */
110, /* GL_BLUE */
32, /* GL_ALPHA */
- 1632, /* GL_RGB */
- 1672, /* GL_RGBA */
- 881, /* GL_LUMINANCE */
- 908, /* GL_LUMINANCE_ALPHA */
+ 1634, /* GL_RGB */
+ 1674, /* GL_RGBA */
+ 882, /* GL_LUMINANCE */
+ 909, /* GL_LUMINANCE_ALPHA */
86, /* GL_BITMAP */
- 1371, /* GL_POINT */
- 844, /* GL_LINE */
+ 1372, /* GL_POINT */
+ 845, /* GL_LINE */
561, /* GL_FILL */
- 1589, /* GL_RENDER */
+ 1590, /* GL_RENDER */
557, /* GL_FEEDBACK */
- 1771, /* GL_SELECT */
+ 1774, /* GL_SELECT */
568, /* GL_FLAT */
- 1800, /* GL_SMOOTH */
- 823, /* GL_KEEP */
- 1622, /* GL_REPLACE */
- 749, /* GL_INCR */
+ 1803, /* GL_SMOOTH */
+ 824, /* GL_KEEP */
+ 1623, /* GL_REPLACE */
+ 750, /* GL_INCR */
395, /* GL_DECR */
- 2250, /* GL_VENDOR */
- 1619, /* GL_RENDERER */
- 2251, /* GL_VERSION */
+ 2255, /* GL_VENDOR */
+ 1620, /* GL_RENDERER */
+ 2256, /* GL_VERSION */
550, /* GL_EXTENSIONS */
- 1720, /* GL_S */
- 1911, /* GL_T */
- 1558, /* GL_R */
- 1537, /* GL_Q */
- 1223, /* GL_MODULATE */
+ 1722, /* GL_S */
+ 1914, /* GL_T */
+ 1559, /* GL_R */
+ 1538, /* GL_Q */
+ 1224, /* GL_MODULATE */
394, /* GL_DECAL */
- 2081, /* GL_TEXTURE_ENV_MODE */
- 2080, /* GL_TEXTURE_ENV_COLOR */
- 2079, /* GL_TEXTURE_ENV */
+ 2085, /* GL_TEXTURE_ENV_MODE */
+ 2084, /* GL_TEXTURE_ENV_COLOR */
+ 2083, /* GL_TEXTURE_ENV */
551, /* GL_EYE_LINEAR */
- 1277, /* GL_OBJECT_LINEAR */
- 1826, /* GL_SPHERE_MAP */
- 2084, /* GL_TEXTURE_GEN_MODE */
- 1279, /* GL_OBJECT_PLANE */
+ 1278, /* GL_OBJECT_LINEAR */
+ 1829, /* GL_SPHERE_MAP */
+ 2089, /* GL_TEXTURE_GEN_MODE */
+ 1280, /* 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 */
+ 1239, /* GL_NEAREST */
+ 846, /* GL_LINEAR */
+ 1243, /* GL_NEAREST_MIPMAP_NEAREST */
+ 851, /* GL_LINEAR_MIPMAP_NEAREST */
+ 1242, /* GL_NEAREST_MIPMAP_LINEAR */
+ 850, /* GL_LINEAR_MIPMAP_LINEAR */
+ 2112, /* GL_TEXTURE_MAG_FILTER */
+ 2121, /* GL_TEXTURE_MIN_FILTER */
+ 2142, /* GL_TEXTURE_WRAP_S */
+ 2143, /* GL_TEXTURE_WRAP_T */
155, /* GL_CLAMP */
- 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 */
+ 1622, /* GL_REPEAT */
+ 1416, /* GL_POLYGON_OFFSET_UNITS */
+ 1415, /* GL_POLYGON_OFFSET_POINT */
+ 1414, /* GL_POLYGON_OFFSET_LINE */
+ 1562, /* GL_R3_G3_B2 */
+ 2252, /* GL_V2F */
+ 2253, /* GL_V3F */
152, /* GL_C4UB_V2F */
153, /* GL_C4UB_V3F */
150, /* GL_C3F_V3F */
- 1235, /* GL_N3F_V3F */
+ 1236, /* GL_N3F_V3F */
151, /* GL_C4F_N3F_V3F */
- 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 */
+ 1919, /* GL_T2F_V3F */
+ 1921, /* GL_T4F_V4F */
+ 1917, /* GL_T2F_C4UB_V3F */
+ 1915, /* GL_T2F_C3F_V3F */
+ 1918, /* GL_T2F_N3F_V3F */
+ 1916, /* GL_T2F_C4F_N3F_V3F */
+ 1920, /* GL_T4F_C4F_N3F_V4F */
172, /* GL_CLIP_DISTANCE0 */
173, /* GL_CLIP_DISTANCE1 */
174, /* GL_CLIP_DISTANCE2 */
@@ -5144,184 +5154,184 @@ static const unsigned reduced_enums[1564] =
177, /* GL_CLIP_DISTANCE5 */
178, /* GL_CLIP_DISTANCE6 */
179, /* GL_CLIP_DISTANCE7 */
- 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 */
+ 830, /* GL_LIGHT0 */
+ 831, /* GL_LIGHT1 */
+ 832, /* GL_LIGHT2 */
+ 833, /* GL_LIGHT3 */
+ 834, /* GL_LIGHT4 */
+ 835, /* GL_LIGHT5 */
+ 836, /* GL_LIGHT6 */
+ 837, /* GL_LIGHT7 */
+ 725, /* GL_HINT_BIT */
322, /* GL_CONSTANT_COLOR */
- 1290, /* GL_ONE_MINUS_CONSTANT_COLOR */
+ 1291, /* GL_ONE_MINUS_CONSTANT_COLOR */
317, /* GL_CONSTANT_ALPHA */
- 1288, /* GL_ONE_MINUS_CONSTANT_ALPHA */
+ 1289, /* GL_ONE_MINUS_CONSTANT_ALPHA */
89, /* GL_BLEND_COLOR */
690, /* GL_FUNC_ADD */
- 1167, /* GL_MIN */
- 1034, /* GL_MAX */
+ 1168, /* GL_MIN */
+ 1035, /* GL_MAX */
96, /* GL_BLEND_EQUATION */
696, /* GL_FUNC_SUBTRACT */
693, /* GL_FUNC_REVERSE_SUBTRACT */
331, /* GL_CONVOLUTION_1D */
332, /* GL_CONVOLUTION_2D */
- 1774, /* GL_SEPARABLE_2D */
+ 1777, /* GL_SEPARABLE_2D */
335, /* GL_CONVOLUTION_BORDER_MODE */
339, /* GL_CONVOLUTION_FILTER_SCALE */
337, /* GL_CONVOLUTION_FILTER_BIAS */
- 1576, /* GL_REDUCE */
+ 1577, /* GL_REDUCE */
341, /* GL_CONVOLUTION_FORMAT */
345, /* GL_CONVOLUTION_WIDTH */
343, /* GL_CONVOLUTION_HEIGHT */
- 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 */
+ 1054, /* GL_MAX_CONVOLUTION_WIDTH */
+ 1052, /* GL_MAX_CONVOLUTION_HEIGHT */
+ 1455, /* GL_POST_CONVOLUTION_RED_SCALE */
+ 1451, /* GL_POST_CONVOLUTION_GREEN_SCALE */
+ 1446, /* GL_POST_CONVOLUTION_BLUE_SCALE */
+ 1442, /* GL_POST_CONVOLUTION_ALPHA_SCALE */
+ 1453, /* GL_POST_CONVOLUTION_RED_BIAS */
+ 1449, /* GL_POST_CONVOLUTION_GREEN_BIAS */
+ 1444, /* GL_POST_CONVOLUTION_BLUE_BIAS */
+ 1440, /* GL_POST_CONVOLUTION_ALPHA_BIAS */
+ 726, /* GL_HISTOGRAM */
+ 1518, /* GL_PROXY_HISTOGRAM */
+ 742, /* GL_HISTOGRAM_WIDTH */
+ 732, /* GL_HISTOGRAM_FORMAT */
+ 738, /* GL_HISTOGRAM_RED_SIZE */
+ 734, /* GL_HISTOGRAM_GREEN_SIZE */
+ 729, /* GL_HISTOGRAM_BLUE_SIZE */
+ 727, /* GL_HISTOGRAM_ALPHA_SIZE */
+ 736, /* GL_HISTOGRAM_LUMINANCE_SIZE */
+ 740, /* GL_HISTOGRAM_SINK */
+ 1169, /* GL_MINMAX */
+ 1171, /* GL_MINMAX_FORMAT */
+ 1173, /* GL_MINMAX_SINK */
+ 1922, /* GL_TABLE_TOO_LARGE_EXT */
+ 2201, /* GL_UNSIGNED_BYTE_3_3_2 */
+ 2241, /* GL_UNSIGNED_SHORT_4_4_4_4 */
+ 2244, /* GL_UNSIGNED_SHORT_5_5_5_1 */
+ 2213, /* GL_UNSIGNED_INT_8_8_8_8 */
+ 2204, /* GL_UNSIGNED_INT_10_10_10_2 */
+ 1413, /* GL_POLYGON_OFFSET_FILL */
+ 1412, /* GL_POLYGON_OFFSET_FACTOR */
+ 1411, /* GL_POLYGON_OFFSET_BIAS */
+ 1627, /* GL_RESCALE_NORMAL */
41, /* GL_ALPHA4 */
43, /* GL_ALPHA8 */
33, /* GL_ALPHA12 */
35, /* GL_ALPHA16 */
- 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 */
+ 897, /* GL_LUMINANCE4 */
+ 903, /* GL_LUMINANCE8 */
+ 883, /* GL_LUMINANCE12 */
+ 889, /* GL_LUMINANCE16 */
+ 898, /* GL_LUMINANCE4_ALPHA4 */
+ 901, /* GL_LUMINANCE6_ALPHA2 */
+ 906, /* GL_LUMINANCE8_ALPHA8 */
+ 886, /* GL_LUMINANCE12_ALPHA4 */
+ 884, /* GL_LUMINANCE12_ALPHA12 */
+ 892, /* GL_LUMINANCE16_ALPHA16 */
+ 770, /* GL_INTENSITY */
+ 779, /* GL_INTENSITY4 */
+ 781, /* GL_INTENSITY8 */
+ 771, /* GL_INTENSITY12 */
+ 773, /* GL_INTENSITY16 */
+ 1649, /* GL_RGB2_EXT */
+ 1655, /* GL_RGB4 */
+ 1658, /* GL_RGB5 */
+ 1665, /* GL_RGB8 */
+ 1635, /* GL_RGB10 */
+ 1639, /* GL_RGB12 */
+ 1641, /* GL_RGB16 */
+ 1685, /* GL_RGBA2 */
+ 1692, /* GL_RGBA4 */
+ 1661, /* GL_RGB5_A1 */
+ 1697, /* GL_RGBA8 */
+ 1636, /* GL_RGB10_A2 */
+ 1675, /* GL_RGBA12 */
+ 1677, /* GL_RGBA16 */
+ 2129, /* GL_TEXTURE_RED_SIZE */
+ 2097, /* GL_TEXTURE_GREEN_SIZE */
+ 2017, /* GL_TEXTURE_BLUE_SIZE */
+ 1996, /* GL_TEXTURE_ALPHA_SIZE */
+ 2110, /* GL_TEXTURE_LUMINANCE_SIZE */
+ 2101, /* GL_TEXTURE_INTENSITY_SIZE */
+ 1624, /* GL_REPLACE_EXT */
+ 1522, /* GL_PROXY_TEXTURE_1D */
+ 1526, /* GL_PROXY_TEXTURE_2D */
+ 2137, /* GL_TEXTURE_TOO_LARGE_EXT */
+ 2123, /* GL_TEXTURE_PRIORITY */
+ 2131, /* GL_TEXTURE_RESIDENT */
+ 1999, /* GL_TEXTURE_BINDING_1D */
+ 2002, /* GL_TEXTURE_BINDING_2D */
+ 2005, /* GL_TEXTURE_BINDING_3D */
+ 1327, /* GL_PACK_SKIP_IMAGES */
+ 1323, /* GL_PACK_IMAGE_HEIGHT */
+ 2194, /* GL_UNPACK_SKIP_IMAGES */
+ 2191, /* GL_UNPACK_IMAGE_HEIGHT */
+ 1994, /* GL_TEXTURE_3D */
+ 1530, /* GL_PROXY_TEXTURE_3D */
+ 2080, /* GL_TEXTURE_DEPTH */
+ 2140, /* GL_TEXTURE_WRAP_R */
+ 1036, /* GL_MAX_3D_TEXTURE_SIZE */
+ 2257, /* GL_VERTEX_ARRAY */
+ 1251, /* GL_NORMAL_ARRAY */
189, /* GL_COLOR_ARRAY */
- 753, /* GL_INDEX_ARRAY */
- 2046, /* GL_TEXTURE_COORD_ARRAY */
+ 754, /* GL_INDEX_ARRAY */
+ 2050, /* 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 */
+ 2263, /* GL_VERTEX_ARRAY_SIZE */
+ 2265, /* GL_VERTEX_ARRAY_TYPE */
+ 2264, /* GL_VERTEX_ARRAY_STRIDE */
+ 1256, /* GL_NORMAL_ARRAY_TYPE */
+ 1255, /* GL_NORMAL_ARRAY_STRIDE */
193, /* GL_COLOR_ARRAY_SIZE */
195, /* GL_COLOR_ARRAY_TYPE */
194, /* GL_COLOR_ARRAY_STRIDE */
- 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 */
+ 759, /* GL_INDEX_ARRAY_TYPE */
+ 758, /* GL_INDEX_ARRAY_STRIDE */
+ 2054, /* GL_TEXTURE_COORD_ARRAY_SIZE */
+ 2056, /* GL_TEXTURE_COORD_ARRAY_TYPE */
+ 2055, /* GL_TEXTURE_COORD_ARRAY_STRIDE */
539, /* GL_EDGE_FLAG_ARRAY_STRIDE */
- 2257, /* GL_VERTEX_ARRAY_POINTER */
- 1253, /* GL_NORMAL_ARRAY_POINTER */
+ 2262, /* GL_VERTEX_ARRAY_POINTER */
+ 1254, /* GL_NORMAL_ARRAY_POINTER */
192, /* GL_COLOR_ARRAY_POINTER */
- 756, /* GL_INDEX_ARRAY_POINTER */
- 2049, /* GL_TEXTURE_COORD_ARRAY_POINTER */
+ 757, /* GL_INDEX_ARRAY_POINTER */
+ 2053, /* 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 */
+ 1229, /* GL_MULTISAMPLE */
+ 1751, /* GL_SAMPLE_ALPHA_TO_COVERAGE */
+ 1753, /* GL_SAMPLE_ALPHA_TO_ONE */
+ 1758, /* GL_SAMPLE_COVERAGE */
+ 1755, /* GL_SAMPLE_BUFFERS */
+ 1746, /* GL_SAMPLES */
+ 1762, /* GL_SAMPLE_COVERAGE_VALUE */
+ 1760, /* GL_SAMPLE_COVERAGE_INVERT */
237, /* GL_COLOR_MATRIX */
239, /* GL_COLOR_MATRIX_STACK_DEPTH */
- 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 */
+ 1048, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */
+ 1438, /* GL_POST_COLOR_MATRIX_RED_SCALE */
+ 1434, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */
+ 1429, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */
+ 1425, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */
+ 1436, /* GL_POST_COLOR_MATRIX_RED_BIAS */
+ 1432, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */
+ 1427, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */
+ 1423, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */
+ 2033, /* GL_TEXTURE_COLOR_TABLE_SGI */
+ 1531, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */
+ 2035, /* 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 */
- 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 */
+ 1448, /* GL_POST_CONVOLUTION_COLOR_TABLE */
+ 1431, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */
+ 1517, /* GL_PROXY_COLOR_TABLE */
+ 1521, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */
+ 1520, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */
267, /* GL_COLOR_TABLE_SCALE */
247, /* GL_COLOR_TABLE_BIAS */
252, /* GL_COLOR_TABLE_FORMAT */
@@ -5334,62 +5344,62 @@ static const unsigned reduced_enums[1564] =
258, /* GL_COLOR_TABLE_INTENSITY_SIZE */
79, /* GL_BGR */
80, /* GL_BGRA */
- 1063, /* GL_MAX_ELEMENTS_VERTICES */
- 1062, /* GL_MAX_ELEMENTS_INDICES */
- 2095, /* GL_TEXTURE_INDEX_SIZE_EXT */
+ 1064, /* GL_MAX_ELEMENTS_VERTICES */
+ 1063, /* GL_MAX_ELEMENTS_INDICES */
+ 2100, /* GL_TEXTURE_INDEX_SIZE_EXT */
186, /* GL_CLIP_VOLUME_CLIPPING_HINT_EXT */
- 1393, /* GL_POINT_SIZE_MIN */
- 1389, /* GL_POINT_SIZE_MAX */
- 1378, /* GL_POINT_FADE_THRESHOLD_SIZE */
- 1374, /* GL_POINT_DISTANCE_ATTENUATION */
+ 1394, /* GL_POINT_SIZE_MIN */
+ 1390, /* GL_POINT_SIZE_MAX */
+ 1379, /* GL_POINT_FADE_THRESHOLD_SIZE */
+ 1375, /* GL_POINT_DISTANCE_ATTENUATION */
159, /* GL_CLAMP_TO_BORDER */
162, /* GL_CLAMP_TO_EDGE */
- 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 */
+ 2122, /* GL_TEXTURE_MIN_LOD */
+ 2120, /* GL_TEXTURE_MAX_LOD */
+ 1998, /* GL_TEXTURE_BASE_LEVEL */
+ 2119, /* GL_TEXTURE_MAX_LEVEL */
+ 745, /* GL_IGNORE_BORDER_HP */
321, /* GL_CONSTANT_BORDER_HP */
- 1624, /* GL_REPLICATE_BORDER_HP */
+ 1625, /* GL_REPLICATE_BORDER_HP */
333, /* GL_CONVOLUTION_BORDER_COLOR */
- 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 */
+ 1286, /* GL_OCCLUSION_TEST_HP */
+ 1287, /* GL_OCCLUSION_TEST_RESULT_HP */
+ 848, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */
+ 2027, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */
+ 2029, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */
+ 2031, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */
+ 2032, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */
+ 2030, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */
+ 2028, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */
+ 1042, /* GL_MAX_CLIPMAP_DEPTH_SGIX */
+ 1043, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */
+ 1458, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */
+ 1460, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */
+ 1457, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */
+ 1459, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */
+ 2108, /* GL_TEXTURE_LOD_BIAS_S_SGIX */
+ 2109, /* GL_TEXTURE_LOD_BIAS_T_SGIX */
+ 2107, /* 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 */
+ 2041, /* GL_TEXTURE_COMPARE_SGIX */
+ 2040, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */
+ 2104, /* GL_TEXTURE_LEQUAL_R_SGIX */
+ 2096, /* 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 */
- 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 */
+ 2330, /* GL_WRAP_BORDER_SUN */
+ 2034, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */
+ 841, /* GL_LIGHT_MODEL_COLOR_CONTROL */
+ 1796, /* GL_SINGLE_COLOR */
+ 1780, /* GL_SEPARATE_SPECULAR_COLOR */
+ 1791, /* GL_SHARED_TEXTURE_PALETTE_EXT */
624, /* GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING */
625, /* GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE */
636, /* GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE */
@@ -5401,46 +5411,46 @@ static const unsigned reduced_enums[1564] =
654, /* GL_FRAMEBUFFER_DEFAULT */
681, /* GL_FRAMEBUFFER_UNDEFINED */
432, /* GL_DEPTH_STENCIL_ATTACHMENT */
- 917, /* GL_MAJOR_VERSION */
- 1174, /* GL_MINOR_VERSION */
- 1265, /* GL_NUM_EXTENSIONS */
+ 918, /* GL_MAJOR_VERSION */
+ 1175, /* GL_MINOR_VERSION */
+ 1266, /* GL_NUM_EXTENSIONS */
327, /* GL_CONTEXT_FLAGS */
- 752, /* GL_INDEX */
+ 753, /* GL_INDEX */
410, /* GL_DEPTH_BUFFER */
- 1867, /* GL_STENCIL_BUFFER */
+ 1870, /* GL_STENCIL_BUFFER */
298, /* GL_COMPRESSED_RED */
299, /* GL_COMPRESSED_RG */
- 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 */
+ 878, /* GL_LOSE_CONTEXT_ON_RESET_ARB */
+ 720, /* GL_GUILTY_CONTEXT_RESET_ARB */
+ 768, /* GL_INNOCENT_CONTEXT_RESET_ARB */
+ 2189, /* GL_UNKNOWN_CONTEXT_RESET_ARB */
+ 1629, /* GL_RESET_NOTIFICATION_STRATEGY_ARB */
+ 1480, /* GL_PROGRAM_BINARY_RETRIEVABLE_HINT */
+ 1263, /* GL_NO_RESET_NOTIFICATION_ARB */
+ 2200, /* GL_UNSIGNED_BYTE_2_3_3_REV */
+ 2245, /* GL_UNSIGNED_SHORT_5_6_5 */
+ 2246, /* GL_UNSIGNED_SHORT_5_6_5_REV */
+ 2242, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */
+ 2239, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */
+ 2214, /* GL_UNSIGNED_INT_8_8_8_8_REV */
+ 2210, /* GL_UNSIGNED_INT_2_10_10_10_REV */
+ 2117, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */
+ 2118, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */
+ 2116, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */
+ 1179, /* GL_MIRRORED_REPEAT */
+ 1715, /* GL_RGB_S3TC */
+ 1657, /* GL_RGB4_S3TC */
+ 1711, /* GL_RGBA_S3TC */
+ 1696, /* GL_RGBA4_S3TC */
+ 1705, /* GL_RGBA_DXT5_S3TC */
+ 1693, /* 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 */
- 1240, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */
- 1239, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */
- 848, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */
+ 1241, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */
+ 1240, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */
+ 849, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */
599, /* GL_FOG_COORDINATE_SOURCE */
591, /* GL_FOG_COORD */
615, /* GL_FRAGMENT_DEPTH */
@@ -5451,281 +5461,281 @@ static const unsigned reduced_enums[1564] =
593, /* GL_FOG_COORDINATE_ARRAY */
241, /* GL_COLOR_SUM */
385, /* GL_CURRENT_SECONDARY_COLOR */
- 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 */
+ 1771, /* GL_SECONDARY_COLOR_ARRAY_SIZE */
+ 1773, /* GL_SECONDARY_COLOR_ARRAY_TYPE */
+ 1772, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */
+ 1770, /* GL_SECONDARY_COLOR_ARRAY_POINTER */
+ 1767, /* GL_SECONDARY_COLOR_ARRAY */
383, /* GL_CURRENT_RASTER_SECONDARY_COLOR */
29, /* GL_ALIASED_POINT_SIZE_RANGE */
28, /* GL_ALIASED_LINE_WIDTH_RANGE */
- 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 */
+ 1924, /* GL_TEXTURE0 */
+ 1926, /* GL_TEXTURE1 */
+ 1948, /* GL_TEXTURE2 */
+ 1970, /* GL_TEXTURE3 */
+ 1976, /* GL_TEXTURE4 */
+ 1978, /* GL_TEXTURE5 */
+ 1980, /* GL_TEXTURE6 */
+ 1982, /* GL_TEXTURE7 */
+ 1984, /* GL_TEXTURE8 */
+ 1986, /* GL_TEXTURE9 */
+ 1927, /* GL_TEXTURE10 */
+ 1929, /* GL_TEXTURE11 */
+ 1931, /* GL_TEXTURE12 */
+ 1933, /* GL_TEXTURE13 */
+ 1935, /* GL_TEXTURE14 */
+ 1937, /* GL_TEXTURE15 */
+ 1939, /* GL_TEXTURE16 */
+ 1941, /* GL_TEXTURE17 */
+ 1943, /* GL_TEXTURE18 */
+ 1945, /* GL_TEXTURE19 */
+ 1949, /* GL_TEXTURE20 */
+ 1951, /* GL_TEXTURE21 */
+ 1953, /* GL_TEXTURE22 */
+ 1955, /* GL_TEXTURE23 */
+ 1957, /* GL_TEXTURE24 */
+ 1959, /* GL_TEXTURE25 */
+ 1961, /* GL_TEXTURE26 */
+ 1963, /* GL_TEXTURE27 */
+ 1965, /* GL_TEXTURE28 */
+ 1967, /* GL_TEXTURE29 */
+ 1971, /* GL_TEXTURE30 */
+ 1973, /* GL_TEXTURE31 */
19, /* GL_ACTIVE_TEXTURE */
166, /* GL_CLIENT_ACTIVE_TEXTURE */
- 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 */
+ 1140, /* GL_MAX_TEXTURE_UNITS */
+ 2172, /* GL_TRANSPOSE_MODELVIEW_MATRIX */
+ 2175, /* GL_TRANSPOSE_PROJECTION_MATRIX */
+ 2177, /* GL_TRANSPOSE_TEXTURE_MATRIX */
+ 2169, /* GL_TRANSPOSE_COLOR_MATRIX */
+ 1906, /* GL_SUBTRACT */
+ 1121, /* 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 */
- 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 */
+ 2048, /* GL_TEXTURE_COMPRESSION_HINT */
+ 2126, /* GL_TEXTURE_RECTANGLE */
+ 2013, /* GL_TEXTURE_BINDING_RECTANGLE */
+ 1534, /* GL_PROXY_TEXTURE_RECTANGLE */
+ 1118, /* GL_MAX_RECTANGLE_TEXTURE_SIZE */
431, /* GL_DEPTH_STENCIL */
- 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 */
+ 2206, /* GL_UNSIGNED_INT_24_8 */
+ 1135, /* GL_MAX_TEXTURE_LOD_BIAS */
+ 2115, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */
+ 1137, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */
+ 2087, /* GL_TEXTURE_FILTER_CONTROL */
+ 2105, /* GL_TEXTURE_LOD_BIAS */
274, /* GL_COMBINE4 */
- 1126, /* GL_MAX_SHININESS_NV */
- 1127, /* GL_MAX_SPOT_EXPONENT_NV */
- 750, /* GL_INCR_WRAP */
+ 1127, /* GL_MAX_SHININESS_NV */
+ 1128, /* GL_MAX_SPOT_EXPONENT_NV */
+ 751, /* GL_INCR_WRAP */
396, /* GL_DECR_WRAP */
- 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 */
+ 1199, /* GL_MODELVIEW1_ARB */
+ 1257, /* GL_NORMAL_MAP */
+ 1585, /* GL_REFLECTION_MAP */
+ 2058, /* GL_TEXTURE_CUBE_MAP */
+ 2009, /* GL_TEXTURE_BINDING_CUBE_MAP */
+ 2070, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */
+ 2060, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */
+ 2073, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */
+ 2063, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */
+ 2076, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */
+ 2066, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */
+ 1532, /* GL_PROXY_TEXTURE_CUBE_MAP */
+ 1056, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */
+ 1235, /* GL_MULTISAMPLE_FILTER_HINT_NV */
+ 1472, /* GL_PRIMITIVE_RESTART_NV */
+ 1471, /* 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 */
- 1714, /* GL_RGB_SCALE */
+ 1716, /* GL_RGB_SCALE */
25, /* GL_ADD_SIGNED */
- 787, /* GL_INTERPOLATE */
+ 788, /* GL_INTERPOLATE */
316, /* GL_CONSTANT */
- 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 */
+ 1464, /* GL_PRIMARY_COLOR */
+ 1461, /* GL_PREVIOUS */
+ 1811, /* GL_SOURCE0_RGB */
+ 1817, /* GL_SOURCE1_RGB */
+ 1823, /* GL_SOURCE2_RGB */
+ 1827, /* GL_SOURCE3_RGB_NV */
+ 1808, /* GL_SOURCE0_ALPHA */
+ 1814, /* GL_SOURCE1_ALPHA */
+ 1820, /* GL_SOURCE2_ALPHA */
+ 1826, /* GL_SOURCE3_ALPHA_NV */
+ 1300, /* GL_OPERAND0_RGB */
+ 1306, /* GL_OPERAND1_RGB */
+ 1312, /* GL_OPERAND2_RGB */
+ 1316, /* GL_OPERAND3_RGB_NV */
+ 1297, /* GL_OPERAND0_ALPHA */
+ 1303, /* GL_OPERAND1_ALPHA */
+ 1309, /* GL_OPERAND2_ALPHA */
+ 1315, /* GL_OPERAND3_ALPHA_NV */
137, /* GL_BUFFER_OBJECT_APPLE */
- 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 */
+ 2258, /* GL_VERTEX_ARRAY_BINDING */
+ 2124, /* GL_TEXTURE_RANGE_LENGTH_APPLE */
+ 2125, /* GL_TEXTURE_RANGE_POINTER_APPLE */
+ 2335, /* GL_YCBCR_422_APPLE */
+ 2247, /* GL_UNSIGNED_SHORT_8_8_APPLE */
+ 2249, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */
+ 2136, /* GL_TEXTURE_STORAGE_HINT_APPLE */
+ 1897, /* GL_STORAGE_PRIVATE_APPLE */
+ 1896, /* GL_STORAGE_CACHED_APPLE */
+ 1898, /* GL_STORAGE_SHARED_APPLE */
+ 1798, /* GL_SLICE_ACCUM_SUN */
+ 1543, /* GL_QUAD_MESH_SUN */
+ 2183, /* GL_TRIANGLE_MESH_SUN */
+ 2300, /* GL_VERTEX_PROGRAM_ARB */
+ 2311, /* GL_VERTEX_STATE_PROGRAM_NV */
+ 2285, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */
+ 2293, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */
+ 2295, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */
+ 2297, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */
387, /* GL_CURRENT_VERTEX_ATTRIB */
- 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 */
+ 1488, /* GL_PROGRAM_LENGTH_ARB */
+ 1504, /* GL_PROGRAM_STRING_ARB */
+ 1222, /* GL_MODELVIEW_PROJECTION_NV */
+ 744, /* GL_IDENTITY_NV */
+ 821, /* GL_INVERSE_NV */
+ 2174, /* GL_TRANSPOSE_NV */
+ 822, /* GL_INVERSE_TRANSPOSE_NV */
+ 1102, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */
+ 1101, /* GL_MAX_PROGRAM_MATRICES_ARB */
+ 982, /* GL_MATRIX0_NV */
+ 994, /* GL_MATRIX1_NV */
+ 1006, /* GL_MATRIX2_NV */
+ 1010, /* GL_MATRIX3_NV */
+ 1012, /* GL_MATRIX4_NV */
+ 1014, /* GL_MATRIX5_NV */
+ 1016, /* GL_MATRIX6_NV */
+ 1018, /* GL_MATRIX7_NV */
370, /* GL_CURRENT_MATRIX_STACK_DEPTH_ARB */
367, /* GL_CURRENT_MATRIX_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 */
+ 1501, /* GL_PROGRAM_POINT_SIZE */
+ 2306, /* GL_VERTEX_PROGRAM_TWO_SIDE */
+ 1500, /* GL_PROGRAM_PARAMETER_NV */
+ 2291, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */
+ 1506, /* GL_PROGRAM_TARGET_NV */
+ 1503, /* GL_PROGRAM_RESIDENT_NV */
+ 2146, /* GL_TRACK_MATRIX_NV */
+ 2147, /* GL_TRACK_MATRIX_TRANSFORM_NV */
+ 2301, /* GL_VERTEX_PROGRAM_BINDING_NV */
+ 1482, /* GL_PROGRAM_ERROR_POSITION_ARB */
412, /* GL_DEPTH_CLAMP */
- 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 */
+ 2266, /* GL_VERTEX_ATTRIB_ARRAY0_NV */
+ 2273, /* GL_VERTEX_ATTRIB_ARRAY1_NV */
+ 2274, /* GL_VERTEX_ATTRIB_ARRAY2_NV */
+ 2275, /* GL_VERTEX_ATTRIB_ARRAY3_NV */
+ 2276, /* GL_VERTEX_ATTRIB_ARRAY4_NV */
+ 2277, /* GL_VERTEX_ATTRIB_ARRAY5_NV */
+ 2278, /* GL_VERTEX_ATTRIB_ARRAY6_NV */
+ 2279, /* GL_VERTEX_ATTRIB_ARRAY7_NV */
+ 2280, /* GL_VERTEX_ATTRIB_ARRAY8_NV */
+ 2281, /* GL_VERTEX_ATTRIB_ARRAY9_NV */
+ 2267, /* GL_VERTEX_ATTRIB_ARRAY10_NV */
+ 2268, /* GL_VERTEX_ATTRIB_ARRAY11_NV */
+ 2269, /* GL_VERTEX_ATTRIB_ARRAY12_NV */
+ 2270, /* GL_VERTEX_ATTRIB_ARRAY13_NV */
+ 2271, /* GL_VERTEX_ATTRIB_ARRAY14_NV */
+ 2272, /* GL_VERTEX_ATTRIB_ARRAY15_NV */
+ 930, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */
+ 937, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */
+ 938, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */
+ 939, /* GL_MAP1_VERTEX_ATTRIB3_4_NV */
+ 940, /* GL_MAP1_VERTEX_ATTRIB4_4_NV */
+ 941, /* GL_MAP1_VERTEX_ATTRIB5_4_NV */
+ 942, /* GL_MAP1_VERTEX_ATTRIB6_4_NV */
+ 943, /* GL_MAP1_VERTEX_ATTRIB7_4_NV */
+ 944, /* GL_MAP1_VERTEX_ATTRIB8_4_NV */
+ 945, /* GL_MAP1_VERTEX_ATTRIB9_4_NV */
+ 931, /* GL_MAP1_VERTEX_ATTRIB10_4_NV */
+ 932, /* GL_MAP1_VERTEX_ATTRIB11_4_NV */
+ 933, /* GL_MAP1_VERTEX_ATTRIB12_4_NV */
+ 934, /* GL_MAP1_VERTEX_ATTRIB13_4_NV */
+ 935, /* GL_MAP1_VERTEX_ATTRIB14_4_NV */
+ 936, /* GL_MAP1_VERTEX_ATTRIB15_4_NV */
+ 957, /* GL_MAP2_VERTEX_ATTRIB0_4_NV */
+ 964, /* GL_MAP2_VERTEX_ATTRIB1_4_NV */
+ 965, /* GL_MAP2_VERTEX_ATTRIB2_4_NV */
+ 966, /* GL_MAP2_VERTEX_ATTRIB3_4_NV */
+ 967, /* GL_MAP2_VERTEX_ATTRIB4_4_NV */
+ 968, /* GL_MAP2_VERTEX_ATTRIB5_4_NV */
+ 969, /* GL_MAP2_VERTEX_ATTRIB6_4_NV */
+ 1481, /* GL_PROGRAM_BINDING_ARB */
+ 971, /* GL_MAP2_VERTEX_ATTRIB8_4_NV */
+ 972, /* GL_MAP2_VERTEX_ATTRIB9_4_NV */
+ 958, /* GL_MAP2_VERTEX_ATTRIB10_4_NV */
+ 959, /* GL_MAP2_VERTEX_ATTRIB11_4_NV */
+ 960, /* GL_MAP2_VERTEX_ATTRIB12_4_NV */
+ 961, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */
+ 962, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */
+ 963, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */
+ 2046, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */
+ 2043, /* GL_TEXTURE_COMPRESSED */
+ 1264, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */
314, /* GL_COMPRESSED_TEXTURE_FORMATS */
- 1161, /* GL_MAX_VERTEX_UNITS_ARB */
+ 1162, /* GL_MAX_VERTEX_UNITS_ARB */
23, /* GL_ACTIVE_VERTEX_UNITS_ARB */
- 2324, /* GL_WEIGHT_SUM_UNITY_ARB */
- 2294, /* GL_VERTEX_BLEND_ARB */
+ 2329, /* GL_WEIGHT_SUM_UNITY_ARB */
+ 2299, /* GL_VERTEX_BLEND_ARB */
389, /* GL_CURRENT_WEIGHT_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 */
+ 2327, /* GL_WEIGHT_ARRAY_TYPE_ARB */
+ 2325, /* GL_WEIGHT_ARRAY_STRIDE_ARB */
+ 2323, /* GL_WEIGHT_ARRAY_SIZE_ARB */
+ 2321, /* GL_WEIGHT_ARRAY_POINTER_ARB */
+ 2316, /* GL_WEIGHT_ARRAY_ARB */
446, /* GL_DOT3_RGB */
447, /* GL_DOT3_RGBA */
308, /* GL_COMPRESSED_RGB_FXT1_3DFX */
303, /* GL_COMPRESSED_RGBA_FXT1_3DFX */
- 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 */
+ 1230, /* GL_MULTISAMPLE_3DFX */
+ 1756, /* GL_SAMPLE_BUFFERS_3DFX */
+ 1747, /* GL_SAMPLES_3DFX */
+ 1210, /* GL_MODELVIEW2_ARB */
+ 1213, /* GL_MODELVIEW3_ARB */
+ 1214, /* GL_MODELVIEW4_ARB */
+ 1215, /* GL_MODELVIEW5_ARB */
+ 1216, /* GL_MODELVIEW6_ARB */
+ 1217, /* GL_MODELVIEW7_ARB */
+ 1218, /* GL_MODELVIEW8_ARB */
+ 1219, /* GL_MODELVIEW9_ARB */
+ 1189, /* GL_MODELVIEW10_ARB */
+ 1190, /* GL_MODELVIEW11_ARB */
+ 1191, /* GL_MODELVIEW12_ARB */
+ 1192, /* GL_MODELVIEW13_ARB */
+ 1193, /* GL_MODELVIEW14_ARB */
+ 1194, /* GL_MODELVIEW15_ARB */
+ 1195, /* GL_MODELVIEW16_ARB */
+ 1196, /* GL_MODELVIEW17_ARB */
+ 1197, /* GL_MODELVIEW18_ARB */
+ 1198, /* GL_MODELVIEW19_ARB */
+ 1200, /* GL_MODELVIEW20_ARB */
+ 1201, /* GL_MODELVIEW21_ARB */
+ 1202, /* GL_MODELVIEW22_ARB */
+ 1203, /* GL_MODELVIEW23_ARB */
+ 1204, /* GL_MODELVIEW24_ARB */
+ 1205, /* GL_MODELVIEW25_ARB */
+ 1206, /* GL_MODELVIEW26_ARB */
+ 1207, /* GL_MODELVIEW27_ARB */
+ 1208, /* GL_MODELVIEW28_ARB */
+ 1209, /* GL_MODELVIEW29_ARB */
+ 1211, /* GL_MODELVIEW30_ARB */
+ 1212, /* GL_MODELVIEW31_ARB */
451, /* GL_DOT3_RGB_EXT */
- 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 */
+ 1478, /* GL_PROGRAM_BINARY_LENGTH */
+ 1183, /* GL_MIRROR_CLAMP_EXT */
+ 1186, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */
+ 1225, /* GL_MODULATE_ADD_ATI */
+ 1226, /* GL_MODULATE_SIGNED_ADD_ATI */
+ 1227, /* GL_MODULATE_SUBTRACT_ATI */
+ 2336, /* GL_YCBCR_MESA */
+ 1324, /* GL_PACK_INVERT_MESA */
392, /* GL_DEBUG_OBJECT_MESA */
393, /* GL_DEBUG_PRINT_MESA */
391, /* GL_DEBUG_ASSERT_MESA */
@@ -5739,31 +5749,31 @@ static const unsigned reduced_enums[1564] =
526, /* GL_DU8DV8_ATI */
143, /* GL_BUMP_ENVMAP_ATI */
147, /* GL_BUMP_TARGET_ATI */
- 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 */
+ 1267, /* GL_NUM_PROGRAM_BINARY_FORMATS */
+ 1476, /* GL_PROGRAM_BINARY_FORMATS */
+ 1860, /* GL_STENCIL_BACK_FUNC */
+ 1858, /* GL_STENCIL_BACK_FAIL */
+ 1862, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */
+ 1864, /* 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 */
+ 1474, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */
+ 1509, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */
+ 1508, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */
+ 1491, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */
+ 1497, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */
+ 1496, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */
+ 1091, /* GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB */
+ 1116, /* GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB */
+ 1115, /* GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB */
+ 1104, /* GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */
+ 1110, /* GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */
+ 1109, /* GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */
+ 1687, /* GL_RGBA32F */
+ 1650, /* GL_RGB32F */
+ 1678, /* GL_RGBA16F */
+ 1642, /* GL_RGB16F */
+ 1706, /* GL_RGBA_FLOAT_MODE_ARB */
+ 1059, /* GL_MAX_DRAW_BUFFERS */
455, /* GL_DRAW_BUFFER0 */
459, /* GL_DRAW_BUFFER1 */
487, /* GL_DRAW_BUFFER2 */
@@ -5781,184 +5791,184 @@ static const unsigned reduced_enums[1564] =
476, /* GL_DRAW_BUFFER14 */
480, /* GL_DRAW_BUFFER15 */
97, /* GL_BLEND_EQUATION_ALPHA */
- 1032, /* GL_MATRIX_PALETTE_ARB */
- 1083, /* GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB */
- 1086, /* GL_MAX_PALETTE_MATRICES_ARB */
+ 1033, /* GL_MATRIX_PALETTE_ARB */
+ 1084, /* GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB */
+ 1087, /* GL_MAX_PALETTE_MATRICES_ARB */
373, /* GL_CURRENT_PALETTE_MATRIX_ARB */
- 1020, /* GL_MATRIX_INDEX_ARRAY_ARB */
+ 1021, /* GL_MATRIX_INDEX_ARRAY_ARB */
368, /* GL_CURRENT_MATRIX_INDEX_ARB */
- 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 */
+ 1026, /* GL_MATRIX_INDEX_ARRAY_SIZE_ARB */
+ 1030, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */
+ 1028, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */
+ 1024, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */
+ 2081, /* GL_TEXTURE_DEPTH_SIZE */
439, /* GL_DEPTH_TEXTURE_MODE */
- 2034, /* GL_TEXTURE_COMPARE_MODE */
- 2032, /* GL_TEXTURE_COMPARE_FUNC */
+ 2038, /* GL_TEXTURE_COMPARE_MODE */
+ 2036, /* GL_TEXTURE_COMPARE_FUNC */
284, /* GL_COMPARE_REF_TO_TEXTURE */
- 1400, /* GL_POINT_SPRITE */
+ 1401, /* GL_POINT_SPRITE */
347, /* GL_COORD_REPLACE */
- 1405, /* GL_POINT_SPRITE_R_MODE_NV */
- 1548, /* GL_QUERY_COUNTER_BITS */
+ 1406, /* GL_POINT_SPRITE_R_MODE_NV */
+ 1549, /* GL_QUERY_COUNTER_BITS */
376, /* GL_CURRENT_QUERY */
- 1552, /* GL_QUERY_RESULT */
- 1554, /* GL_QUERY_RESULT_AVAILABLE */
- 1153, /* GL_MAX_VERTEX_ATTRIBS */
- 2284, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */
+ 1553, /* GL_QUERY_RESULT */
+ 1555, /* GL_QUERY_RESULT_AVAILABLE */
+ 1154, /* GL_MAX_VERTEX_ATTRIBS */
+ 2289, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */
437, /* GL_DEPTH_STENCIL_TO_RGBA_NV */
436, /* GL_DEPTH_STENCIL_TO_BGRA_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 */
+ 1131, /* GL_MAX_TEXTURE_COORDS */
+ 1133, /* GL_MAX_TEXTURE_IMAGE_UNITS */
+ 1484, /* GL_PROGRAM_ERROR_STRING_ARB */
+ 1486, /* GL_PROGRAM_FORMAT_ASCII_ARB */
+ 1485, /* GL_PROGRAM_FORMAT_ARB */
+ 2138, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */
409, /* GL_DEPTH_BOUNDS_TEST_EXT */
408, /* GL_DEPTH_BOUNDS_EXT */
61, /* GL_ARRAY_BUFFER */
540, /* GL_ELEMENT_ARRAY_BUFFER */
62, /* GL_ARRAY_BUFFER_BINDING */
541, /* GL_ELEMENT_ARRAY_BUFFER_BINDING */
- 2255, /* GL_VERTEX_ARRAY_BUFFER_BINDING */
- 1251, /* GL_NORMAL_ARRAY_BUFFER_BINDING */
+ 2260, /* GL_VERTEX_ARRAY_BUFFER_BINDING */
+ 1252, /* GL_NORMAL_ARRAY_BUFFER_BINDING */
190, /* GL_COLOR_ARRAY_BUFFER_BINDING */
- 754, /* GL_INDEX_ARRAY_BUFFER_BINDING */
- 2047, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */
+ 755, /* GL_INDEX_ARRAY_BUFFER_BINDING */
+ 2051, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */
536, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING */
- 1765, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */
+ 1768, /* 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 */
+ 2317, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */
+ 2282, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */
+ 1487, /* GL_PROGRAM_INSTRUCTIONS_ARB */
+ 1097, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */
+ 1493, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */
+ 1106, /* GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB */
+ 1507, /* GL_PROGRAM_TEMPORARIES_ARB */
+ 1112, /* GL_MAX_PROGRAM_TEMPORARIES_ARB */
+ 1495, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */
+ 1108, /* GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB */
+ 1499, /* GL_PROGRAM_PARAMETERS_ARB */
+ 1111, /* GL_MAX_PROGRAM_PARAMETERS_ARB */
+ 1494, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */
+ 1107, /* GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB */
+ 1475, /* GL_PROGRAM_ATTRIBS_ARB */
+ 1092, /* GL_MAX_PROGRAM_ATTRIBS_ARB */
+ 1492, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */
+ 1105, /* GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB */
+ 1473, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */
+ 1090, /* GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB */
+ 1490, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */
+ 1103, /* GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */
+ 1098, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */
+ 1094, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */
+ 1510, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */
+ 2171, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */
+ 1572, /* GL_READ_ONLY */
+ 2331, /* GL_WRITE_ONLY */
+ 1574, /* GL_READ_WRITE */
124, /* GL_BUFFER_ACCESS */
129, /* GL_BUFFER_MAPPED */
134, /* GL_BUFFER_MAP_POINTER */
- 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 */
+ 2145, /* GL_TIME_ELAPSED_EXT */
+ 981, /* GL_MATRIX0_ARB */
+ 993, /* GL_MATRIX1_ARB */
+ 1005, /* GL_MATRIX2_ARB */
+ 1009, /* GL_MATRIX3_ARB */
+ 1011, /* GL_MATRIX4_ARB */
+ 1013, /* GL_MATRIX5_ARB */
+ 1015, /* GL_MATRIX6_ARB */
+ 1017, /* GL_MATRIX7_ARB */
+ 1019, /* GL_MATRIX8_ARB */
+ 1020, /* GL_MATRIX9_ARB */
+ 983, /* GL_MATRIX10_ARB */
+ 984, /* GL_MATRIX11_ARB */
+ 985, /* GL_MATRIX12_ARB */
+ 986, /* GL_MATRIX13_ARB */
+ 987, /* GL_MATRIX14_ARB */
+ 988, /* GL_MATRIX15_ARB */
+ 989, /* GL_MATRIX16_ARB */
+ 990, /* GL_MATRIX17_ARB */
+ 991, /* GL_MATRIX18_ARB */
+ 992, /* GL_MATRIX19_ARB */
+ 995, /* GL_MATRIX20_ARB */
+ 996, /* GL_MATRIX21_ARB */
+ 997, /* GL_MATRIX22_ARB */
+ 998, /* GL_MATRIX23_ARB */
+ 999, /* GL_MATRIX24_ARB */
+ 1000, /* GL_MATRIX25_ARB */
+ 1001, /* GL_MATRIX26_ARB */
+ 1002, /* GL_MATRIX27_ARB */
+ 1003, /* GL_MATRIX28_ARB */
+ 1004, /* GL_MATRIX29_ARB */
+ 1007, /* GL_MATRIX30_ARB */
+ 1008, /* GL_MATRIX31_ARB */
+ 1901, /* GL_STREAM_DRAW */
+ 1903, /* GL_STREAM_READ */
+ 1899, /* GL_STREAM_COPY */
+ 1850, /* GL_STATIC_DRAW */
+ 1852, /* GL_STATIC_READ */
+ 1848, /* 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 */
+ 1364, /* GL_PIXEL_PACK_BUFFER */
+ 1368, /* GL_PIXEL_UNPACK_BUFFER */
+ 1365, /* GL_PIXEL_PACK_BUFFER_BINDING */
+ 1369, /* GL_PIXEL_UNPACK_BUFFER_BINDING */
400, /* GL_DEPTH24_STENCIL8 */
- 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 */
+ 2134, /* GL_TEXTURE_STENCIL_SIZE */
+ 2079, /* GL_TEXTURE_CUBE_MAP_SEAMLESS */
+ 1093, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */
+ 1096, /* GL_MAX_PROGRAM_IF_DEPTH_NV */
+ 1100, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */
+ 1099, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */
+ 2287, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER */
+ 2284, /* GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB */
+ 1038, /* GL_MAX_ARRAY_TEXTURE_LAYERS */
+ 1177, /* GL_MIN_PROGRAM_TEXEL_OFFSET */
+ 1113, /* GL_MAX_PROGRAM_TEXEL_OFFSET */
+ 1892, /* GL_STENCIL_TEST_TWO_SIDE_EXT */
18, /* GL_ACTIVE_STENCIL_FACE_EXT */
- 1183, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */
- 1746, /* GL_SAMPLES_PASSED */
+ 1184, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */
+ 1749, /* GL_SAMPLES_PASSED */
709, /* GL_GEOMETRY_VERTICES_OUT */
703, /* GL_GEOMETRY_INPUT_TYPE */
705, /* GL_GEOMETRY_OUTPUT_TYPE */
- 1737, /* GL_SAMPLER_BINDING */
+ 1739, /* GL_SAMPLER_BINDING */
164, /* GL_CLAMP_VERTEX_COLOR_ARB */
156, /* GL_CLAMP_FRAGMENT_COLOR_ARB */
157, /* GL_CLAMP_READ_COLOR */
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 */
+ 1388, /* GL_POINT_SIZE_ARRAY_TYPE_OES */
+ 1387, /* GL_POINT_SIZE_ARRAY_STRIDE_OES */
+ 1386, /* GL_POINT_SIZE_ARRAY_POINTER_OES */
+ 1221, /* GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES */
+ 1513, /* GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES */
+ 2114, /* GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES */
138, /* GL_BUFFER_SERIALIZED_MODIFY_APPLE */
128, /* GL_BUFFER_FLUSHING_UNMAP_APPLE */
- 1588, /* GL_RELEASED_APPLE */
- 2309, /* GL_VOLATILE_APPLE */
- 1628, /* GL_RETAINED_APPLE */
- 2183, /* GL_UNDEFINED_APPLE */
- 1536, /* GL_PURGEABLE_APPLE */
+ 1589, /* GL_RELEASED_APPLE */
+ 2314, /* GL_VOLATILE_APPLE */
+ 1630, /* GL_RETAINED_APPLE */
+ 2188, /* GL_UNDEFINED_APPLE */
+ 1537, /* 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 */
+ 2309, /* GL_VERTEX_SHADER */
+ 1498, /* GL_PROGRAM_OBJECT_ARB */
+ 1785, /* GL_SHADER_OBJECT_ARB */
+ 1068, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */
+ 1159, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */
+ 1150, /* GL_MAX_VARYING_COMPONENTS */
+ 1157, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */
+ 1050, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */
+ 1284, /* GL_OBJECT_TYPE_ARB */
+ 1787, /* 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 */
+ 809, /* GL_INT_VEC2 */
+ 811, /* GL_INT_VEC3 */
+ 813, /* GL_INT_VEC4 */
116, /* GL_BOOL */
118, /* GL_BOOL_VEC2 */
120, /* GL_BOOL_VEC3 */
@@ -5966,14 +5976,14 @@ static const unsigned reduced_enums[1564] =
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 */
+ 1723, /* GL_SAMPLER_1D */
+ 1729, /* GL_SAMPLER_2D */
+ 1737, /* GL_SAMPLER_3D */
+ 1742, /* GL_SAMPLER_CUBE */
+ 1728, /* GL_SAMPLER_1D_SHADOW */
+ 1736, /* GL_SAMPLER_2D_SHADOW */
+ 1734, /* GL_SAMPLER_2D_RECT */
+ 1735, /* GL_SAMPLER_2D_RECT_SHADOW */
572, /* GL_FLOAT_MAT2x3 */
573, /* GL_FLOAT_MAT2x4 */
576, /* GL_FLOAT_MAT3x2 */
@@ -5982,91 +5992,91 @@ static const unsigned reduced_enums[1564] =
581, /* GL_FLOAT_MAT4x3 */
398, /* GL_DELETE_STATUS */
289, /* GL_COMPILE_STATUS */
- 869, /* GL_LINK_STATUS */
- 2249, /* GL_VALIDATE_STATUS */
- 766, /* GL_INFO_LOG_LENGTH */
+ 870, /* GL_LINK_STATUS */
+ 2254, /* GL_VALIDATE_STATUS */
+ 767, /* GL_INFO_LOG_LENGTH */
64, /* GL_ATTACHED_SHADERS */
21, /* GL_ACTIVE_UNIFORMS */
22, /* GL_ACTIVE_UNIFORM_MAX_LENGTH */
- 1783, /* GL_SHADER_SOURCE_LENGTH */
+ 1786, /* GL_SHADER_SOURCE_LENGTH */
15, /* GL_ACTIVE_ATTRIBUTES */
16, /* GL_ACTIVE_ATTRIBUTE_MAX_LENGTH */
619, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */
- 1786, /* GL_SHADING_LANGUAGE_VERSION */
+ 1789, /* GL_SHADING_LANGUAGE_VERSION */
375, /* GL_CURRENT_PROGRAM */
- 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 */
+ 1333, /* GL_PALETTE4_RGB8_OES */
+ 1335, /* GL_PALETTE4_RGBA8_OES */
+ 1331, /* GL_PALETTE4_R5_G6_B5_OES */
+ 1334, /* GL_PALETTE4_RGBA4_OES */
+ 1332, /* GL_PALETTE4_RGB5_A1_OES */
+ 1338, /* GL_PALETTE8_RGB8_OES */
+ 1340, /* GL_PALETTE8_RGBA8_OES */
+ 1336, /* GL_PALETTE8_R5_G6_B5_OES */
+ 1339, /* GL_PALETTE8_RGBA4_OES */
+ 1337, /* GL_PALETTE8_RGB5_A1_OES */
+ 748, /* GL_IMPLEMENTATION_COLOR_READ_TYPE */
+ 746, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT */
+ 1385, /* GL_POINT_SIZE_ARRAY_OES */
+ 2057, /* GL_TEXTURE_CROP_RECT_OES */
+ 1022, /* GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES */
+ 1384, /* GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES */
+ 2237, /* GL_UNSIGNED_NORMALIZED */
+ 1989, /* GL_TEXTURE_1D_ARRAY */
+ 1523, /* GL_PROXY_TEXTURE_1D_ARRAY */
+ 1992, /* GL_TEXTURE_2D_ARRAY */
+ 1527, /* GL_PROXY_TEXTURE_2D_ARRAY */
+ 2000, /* GL_TEXTURE_BINDING_1D_ARRAY */
+ 2003, /* GL_TEXTURE_BINDING_2D_ARRAY */
+ 1075, /* GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS */
+ 2021, /* GL_TEXTURE_BUFFER */
+ 1129, /* GL_MAX_TEXTURE_BUFFER_SIZE */
+ 2007, /* GL_TEXTURE_BINDING_BUFFER */
+ 2023, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING */
+ 2025, /* GL_TEXTURE_BUFFER_FORMAT */
+ 1560, /* GL_R11F_G11F_B10F */
+ 2203, /* GL_UNSIGNED_INT_10F_11F_11F_REV */
+ 1673, /* GL_RGB9_E5 */
+ 2212, /* GL_UNSIGNED_INT_5_9_9_9_REV */
+ 2132, /* GL_TEXTURE_SHARED_SIZE */
+ 1842, /* GL_SRGB */
+ 1843, /* GL_SRGB8 */
+ 1845, /* GL_SRGB_ALPHA */
+ 1844, /* GL_SRGB8_ALPHA8 */
+ 1802, /* GL_SLUMINANCE_ALPHA */
+ 1801, /* GL_SLUMINANCE8_ALPHA8 */
+ 1799, /* GL_SLUMINANCE */
+ 1800, /* GL_SLUMINANCE8 */
312, /* GL_COMPRESSED_SRGB */
313, /* GL_COMPRESSED_SRGB_ALPHA */
310, /* GL_COMPRESSED_SLUMINANCE */
311, /* GL_COMPRESSED_SLUMINANCE_ALPHA */
- 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 */
+ 2167, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH */
+ 2156, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE */
+ 1148, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS */
+ 2165, /* GL_TRANSFORM_FEEDBACK_VARYINGS */
+ 2161, /* GL_TRANSFORM_FEEDBACK_BUFFER_START */
+ 2159, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE */
+ 1467, /* GL_PRIMITIVES_GENERATED */
+ 2163, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN */
+ 1564, /* GL_RASTERIZER_DISCARD */
+ 1144, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS */
+ 1146, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS */
+ 786, /* GL_INTERLEAVED_ATTRIBS */
+ 1778, /* GL_SEPARATE_ATTRIBS */
+ 2151, /* GL_TRANSFORM_FEEDBACK_BUFFER */
+ 2153, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING */
+ 1403, /* GL_POINT_SPRITE_COORD_ORIGIN */
+ 879, /* GL_LOWER_LEFT */
+ 2251, /* GL_UPPER_LEFT */
+ 1866, /* GL_STENCIL_BACK_REF */
+ 1867, /* GL_STENCIL_BACK_VALUE_MASK */
+ 1868, /* GL_STENCIL_BACK_WRITEMASK */
520, /* GL_DRAW_FRAMEBUFFER_BINDING */
- 1593, /* GL_RENDERBUFFER_BINDING */
- 1567, /* GL_READ_FRAMEBUFFER */
+ 1594, /* GL_RENDERBUFFER_BINDING */
+ 1568, /* GL_READ_FRAMEBUFFER */
519, /* GL_DRAW_FRAMEBUFFER */
- 1568, /* GL_READ_FRAMEBUFFER_BINDING */
- 1612, /* GL_RENDERBUFFER_SAMPLES */
+ 1569, /* GL_READ_FRAMEBUFFER_BINDING */
+ 1613, /* GL_RENDERBUFFER_SAMPLES */
633, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE */
630, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME */
645, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL */
@@ -6082,7 +6092,7 @@ static const unsigned reduced_enums[1564] =
676, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER */
682, /* GL_FRAMEBUFFER_UNSUPPORTED */
680, /* GL_FRAMEBUFFER_STATUS_ERROR_EXT */
- 1045, /* GL_MAX_COLOR_ATTACHMENTS */
+ 1046, /* GL_MAX_COLOR_ATTACHMENTS */
196, /* GL_COLOR_ATTACHMENT0 */
199, /* GL_COLOR_ATTACHMENT1 */
213, /* GL_COLOR_ATTACHMENT2 */
@@ -6100,184 +6110,189 @@ static const unsigned reduced_enums[1564] =
208, /* GL_COLOR_ATTACHMENT14 */
210, /* GL_COLOR_ATTACHMENT15 */
403, /* GL_DEPTH_ATTACHMENT */
- 1852, /* GL_STENCIL_ATTACHMENT */
+ 1855, /* 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 */
+ 1591, /* GL_RENDERBUFFER */
+ 1617, /* GL_RENDERBUFFER_WIDTH */
+ 1604, /* GL_RENDERBUFFER_HEIGHT */
+ 1607, /* GL_RENDERBUFFER_INTERNAL_FORMAT */
+ 1887, /* GL_STENCIL_INDEX_EXT */
+ 1876, /* GL_STENCIL_INDEX1 */
+ 1881, /* GL_STENCIL_INDEX4 */
+ 1884, /* GL_STENCIL_INDEX8 */
+ 1877, /* GL_STENCIL_INDEX16 */
+ 1611, /* GL_RENDERBUFFER_RED_SIZE */
+ 1602, /* GL_RENDERBUFFER_GREEN_SIZE */
+ 1597, /* GL_RENDERBUFFER_BLUE_SIZE */
+ 1592, /* GL_RENDERBUFFER_ALPHA_SIZE */
+ 1599, /* GL_RENDERBUFFER_DEPTH_SIZE */
+ 1615, /* 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 */
+ 1124, /* GL_MAX_SAMPLES */
+ 2094, /* GL_TEXTURE_GEN_STR_OES */
+ 722, /* GL_HALF_FLOAT_OES */
+ 1659, /* GL_RGB565 */
+ 2086, /* GL_TEXTURE_EXTERNAL_OES */
+ 1745, /* GL_SAMPLER_EXTERNAL_OES */
+ 2012, /* GL_TEXTURE_BINDING_EXTERNAL_OES */
+ 1626, /* GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES */
+ 1690, /* GL_RGBA32UI */
+ 1653, /* GL_RGB32UI */
40, /* GL_ALPHA32UI_EXT */
- 777, /* GL_INTENSITY32UI_EXT */
- 895, /* GL_LUMINANCE32UI_EXT */
- 912, /* GL_LUMINANCE_ALPHA32UI_EXT */
- 1679, /* GL_RGBA16UI */
- 1643, /* GL_RGB16UI */
+ 778, /* GL_INTENSITY32UI_EXT */
+ 896, /* GL_LUMINANCE32UI_EXT */
+ 913, /* GL_LUMINANCE_ALPHA32UI_EXT */
+ 1681, /* GL_RGBA16UI */
+ 1645, /* GL_RGB16UI */
37, /* GL_ALPHA16UI_EXT */
- 774, /* GL_INTENSITY16UI_EXT */
- 890, /* GL_LUMINANCE16UI_EXT */
- 910, /* GL_LUMINANCE_ALPHA16UI_EXT */
- 1698, /* GL_RGBA8UI */
- 1666, /* GL_RGB8UI */
+ 775, /* GL_INTENSITY16UI_EXT */
+ 891, /* GL_LUMINANCE16UI_EXT */
+ 911, /* GL_LUMINANCE_ALPHA16UI_EXT */
+ 1700, /* GL_RGBA8UI */
+ 1668, /* GL_RGB8UI */
45, /* GL_ALPHA8UI_EXT */
- 782, /* GL_INTENSITY8UI_EXT */
- 904, /* GL_LUMINANCE8UI_EXT */
- 914, /* GL_LUMINANCE_ALPHA8UI_EXT */
- 1686, /* GL_RGBA32I */
- 1649, /* GL_RGB32I */
+ 783, /* GL_INTENSITY8UI_EXT */
+ 905, /* GL_LUMINANCE8UI_EXT */
+ 915, /* GL_LUMINANCE_ALPHA8UI_EXT */
+ 1688, /* GL_RGBA32I */
+ 1651, /* GL_RGB32I */
39, /* GL_ALPHA32I_EXT */
- 776, /* GL_INTENSITY32I_EXT */
- 894, /* GL_LUMINANCE32I_EXT */
- 911, /* GL_LUMINANCE_ALPHA32I_EXT */
- 1677, /* GL_RGBA16I */
- 1641, /* GL_RGB16I */
+ 777, /* GL_INTENSITY32I_EXT */
+ 895, /* GL_LUMINANCE32I_EXT */
+ 912, /* GL_LUMINANCE_ALPHA32I_EXT */
+ 1679, /* GL_RGBA16I */
+ 1643, /* GL_RGB16I */
36, /* GL_ALPHA16I_EXT */
- 773, /* GL_INTENSITY16I_EXT */
- 889, /* GL_LUMINANCE16I_EXT */
- 909, /* GL_LUMINANCE_ALPHA16I_EXT */
- 1696, /* GL_RGBA8I */
- 1664, /* GL_RGB8I */
+ 774, /* GL_INTENSITY16I_EXT */
+ 890, /* GL_LUMINANCE16I_EXT */
+ 910, /* GL_LUMINANCE_ALPHA16I_EXT */
+ 1698, /* GL_RGBA8I */
+ 1666, /* GL_RGB8I */
44, /* GL_ALPHA8I_EXT */
- 781, /* GL_INTENSITY8I_EXT */
- 903, /* GL_LUMINANCE8I_EXT */
- 913, /* GL_LUMINANCE_ALPHA8I_EXT */
- 1580, /* GL_RED_INTEGER */
- 716, /* GL_GREEN_INTEGER */
+ 782, /* GL_INTENSITY8I_EXT */
+ 904, /* GL_LUMINANCE8I_EXT */
+ 914, /* GL_LUMINANCE_ALPHA8I_EXT */
+ 1581, /* GL_RED_INTEGER */
+ 717, /* GL_GREEN_INTEGER */
113, /* GL_BLUE_INTEGER */
49, /* GL_ALPHA_INTEGER_EXT */
- 1711, /* GL_RGB_INTEGER */
- 1705, /* GL_RGBA_INTEGER */
+ 1713, /* GL_RGB_INTEGER */
+ 1707, /* GL_RGBA_INTEGER */
84, /* GL_BGR_INTEGER */
82, /* GL_BGRA_INTEGER */
- 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 */
+ 917, /* GL_LUMINANCE_INTEGER_EXT */
+ 916, /* GL_LUMINANCE_ALPHA_INTEGER_EXT */
+ 1709, /* GL_RGBA_INTEGER_MODE_EXT */
+ 792, /* 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 */
+ 1724, /* GL_SAMPLER_1D_ARRAY */
+ 1730, /* GL_SAMPLER_2D_ARRAY */
+ 1740, /* GL_SAMPLER_BUFFER */
+ 1726, /* GL_SAMPLER_1D_ARRAY_SHADOW */
+ 1732, /* GL_SAMPLER_2D_ARRAY_SHADOW */
+ 1743, /* GL_SAMPLER_CUBE_SHADOW */
+ 2231, /* GL_UNSIGNED_INT_VEC2 */
+ 2233, /* GL_UNSIGNED_INT_VEC3 */
+ 2235, /* GL_UNSIGNED_INT_VEC4 */
+ 793, /* GL_INT_SAMPLER_1D */
+ 797, /* GL_INT_SAMPLER_2D */
+ 803, /* GL_INT_SAMPLER_3D */
+ 807, /* GL_INT_SAMPLER_CUBE */
+ 801, /* GL_INT_SAMPLER_2D_RECT */
+ 794, /* GL_INT_SAMPLER_1D_ARRAY */
+ 798, /* GL_INT_SAMPLER_2D_ARRAY */
+ 805, /* GL_INT_SAMPLER_BUFFER */
+ 2215, /* GL_UNSIGNED_INT_SAMPLER_1D */
+ 2219, /* GL_UNSIGNED_INT_SAMPLER_2D */
+ 2225, /* GL_UNSIGNED_INT_SAMPLER_3D */
+ 2229, /* GL_UNSIGNED_INT_SAMPLER_CUBE */
+ 2223, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT */
+ 2216, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY */
+ 2220, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY */
+ 2227, /* 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 */
+ 1081, /* GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB */
+ 1164, /* GL_MAX_VERTEX_VARYING_COMPONENTS_ARB */
+ 1079, /* GL_MAX_GEOMETRY_UNIFORM_COMPONENTS */
+ 1073, /* GL_MAX_GEOMETRY_OUTPUT_VERTICES */
+ 1077, /* GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS */
+ 880, /* GL_LOW_FLOAT */
+ 1166, /* GL_MEDIUM_FLOAT */
+ 723, /* GL_HIGH_FLOAT */
+ 881, /* GL_LOW_INT */
+ 1167, /* GL_MEDIUM_INT */
+ 724, /* GL_HIGH_INT */
+ 2205, /* GL_UNSIGNED_INT_10_10_10_2_OES */
+ 791, /* GL_INT_10_10_10_2_OES */
+ 1783, /* GL_SHADER_BINARY_FORMATS */
+ 1269, /* GL_NUM_SHADER_BINARY_FORMATS */
+ 1784, /* GL_SHADER_COMPILER */
+ 1161, /* GL_MAX_VERTEX_UNIFORM_VECTORS */
+ 1153, /* GL_MAX_VARYING_VECTORS */
+ 1070, /* GL_MAX_FRAGMENT_UNIFORM_VECTORS */
+ 1557, /* GL_QUERY_WAIT */
+ 1551, /* GL_QUERY_NO_WAIT */
+ 1547, /* GL_QUERY_BY_REGION_WAIT */
+ 1545, /* GL_QUERY_BY_REGION_NO_WAIT */
+ 2149, /* GL_TRANSFORM_FEEDBACK */
+ 2158, /* GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED */
+ 2152, /* GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE */
+ 2150, /* GL_TRANSFORM_FEEDBACK_BINDING */
+ 1541, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION */
562, /* GL_FIRST_VERTEX_CONVENTION */
- 824, /* GL_LAST_VERTEX_CONVENTION */
- 1514, /* GL_PROVOKING_VERTEX */
+ 825, /* GL_LAST_VERTEX_CONVENTION */
+ 1515, /* GL_PROVOKING_VERTEX */
354, /* GL_COPY_READ_BUFFER */
355, /* GL_COPY_WRITE_BUFFER */
- 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 */
+ 1584, /* GL_RED_SNORM */
+ 1720, /* GL_RG_SNORM */
+ 1719, /* GL_RGB_SNORM */
+ 1712, /* GL_RGBA_SNORM */
+ 1563, /* GL_R8_SNORM */
+ 1633, /* GL_RG8_SNORM */
+ 1672, /* GL_RGB8_SNORM */
+ 1704, /* GL_RGBA8_SNORM */
+ 1561, /* GL_R16_SNORM */
+ 1632, /* GL_RG16_SNORM */
+ 1648, /* GL_RGB16_SNORM */
+ 1684, /* GL_RGBA16_SNORM */
+ 1795, /* GL_SIGNED_NORMALIZED */
+ 1469, /* GL_PRIMITIVE_RESTART */
+ 1470, /* GL_PRIMITIVE_RESTART_INDEX */
+ 1126, /* GL_MAX_SERVER_WAIT_TIMEOUT */
+ 1283, /* GL_OBJECT_TYPE */
+ 1908, /* GL_SYNC_CONDITION */
+ 1913, /* GL_SYNC_STATUS */
+ 1910, /* GL_SYNC_FLAGS */
+ 1909, /* GL_SYNC_FENCE */
+ 1912, /* GL_SYNC_GPU_COMMANDS_COMPLETE */
+ 2198, /* GL_UNSIGNALED */
+ 1794, /* GL_SIGNALED */
54, /* GL_ALREADY_SIGNALED */
- 2139, /* GL_TIMEOUT_EXPIRED */
+ 2144, /* GL_TIMEOUT_EXPIRED */
315, /* GL_CONDITION_SATISFIED */
- 2310, /* GL_WAIT_FAILED */
+ 2315, /* GL_WAIT_FAILED */
126, /* GL_BUFFER_ACCESS_FLAGS */
132, /* GL_BUFFER_MAP_LENGTH */
133, /* GL_BUFFER_MAP_OFFSET */
- 1155, /* GL_MAX_VERTEX_OUTPUT_COMPONENTS */
- 1070, /* GL_MAX_GEOMETRY_INPUT_COMPONENTS */
- 1071, /* GL_MAX_GEOMETRY_OUTPUT_COMPONENTS */
- 1066, /* GL_MAX_FRAGMENT_INPUT_COMPONENTS */
+ 1156, /* GL_MAX_VERTEX_OUTPUT_COMPONENTS */
+ 1071, /* GL_MAX_GEOMETRY_INPUT_COMPONENTS */
+ 1072, /* GL_MAX_GEOMETRY_OUTPUT_COMPONENTS */
+ 1067, /* GL_MAX_FRAGMENT_INPUT_COMPONENTS */
330, /* GL_CONTEXT_PROFILE_MASK */
+ 712, /* GL_GL_TEXTURE_IMMUTABLE_FORMAT */
547, /* GL_EVAL_BIT */
- 1565, /* GL_RASTER_POSITION_UNCLIPPED_IBM */
- 871, /* GL_LIST_BIT */
- 2012, /* GL_TEXTURE_BIT */
- 1761, /* GL_SCISSOR_BIT */
+ 1566, /* GL_RASTER_POSITION_UNCLIPPED_IBM */
+ 872, /* GL_LIST_BIT */
+ 2016, /* GL_TEXTURE_BIT */
+ 1764, /* GL_SCISSOR_BIT */
30, /* GL_ALL_ATTRIB_BITS */
- 1231, /* GL_MULTISAMPLE_BIT */
+ 1232, /* GL_MULTISAMPLE_BIT */
31, /* GL_ALL_CLIENT_ATTRIB_BITS */
};
diff --git a/mesalib/src/mesa/main/extensions.c b/mesalib/src/mesa/main/extensions.c
index 52b928e41..d5a891435 100644
--- a/mesalib/src/mesa/main/extensions.c
+++ b/mesalib/src/mesa/main/extensions.c
@@ -134,6 +134,7 @@ static const struct extension extension_table[] = {
{ "GL_ARB_texture_rectangle", o(NV_texture_rectangle), GL, 2004 },
{ "GL_ARB_texture_rgb10_a2ui", o(ARB_texture_rgb10_a2ui), GL, 2009 },
{ "GL_ARB_texture_rg", o(ARB_texture_rg), GL, 2008 },
+ { "GL_ARB_texture_storage", o(ARB_texture_storage), GL, 2011 },
{ "GL_ARB_texture_swizzle", o(EXT_texture_swizzle), GL, 2008 },
{ "GL_ARB_transform_feedback2", o(ARB_transform_feedback2), GL, 2010 },
{ "GL_ARB_transpose_matrix", o(ARB_transpose_matrix), GL, 1999 },
@@ -228,6 +229,7 @@ static const struct extension extension_table[] = {
#if FEATURE_OES_EGL_image
/* FIXME: Mesa expects GL_OES_EGL_image to be available in OpenGL contexts. */
{ "GL_OES_EGL_image", o(OES_EGL_image), GL | ES1 | ES2, 2006 },
+ { "GL_OES_EGL_image_external", o(OES_EGL_image_external), ES1 | ES2, 2010 },
#endif
{ "GL_OES_element_index_uint", o(dummy_true), ES1 | ES2, 2005 },
{ "GL_OES_fbo_render_mipmap", o(EXT_framebuffer_object), ES1 | ES2, 2005 },
@@ -286,6 +288,7 @@ static const struct extension extension_table[] = {
{ "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_fog_distance", o(NV_fog_distance), GL, 2001 },
{ "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 },
@@ -421,6 +424,7 @@ _mesa_enable_sw_extensions(struct gl_context *ctx)
ctx->Extensions.ARB_texture_non_power_of_two = GL_TRUE;
ctx->Extensions.ARB_texture_rg = GL_TRUE;
ctx->Extensions.ARB_texture_compression_rgtc = GL_TRUE;
+ ctx->Extensions.ARB_texture_storage = GL_TRUE;
ctx->Extensions.ARB_vertex_array_object = GL_TRUE;
#if FEATURE_ARB_vertex_program
ctx->Extensions.ARB_vertex_program = GL_TRUE;
diff --git a/mesalib/src/mesa/main/fbobject.c b/mesalib/src/mesa/main/fbobject.c
index c56062ac6..bcebf1240 100644
--- a/mesalib/src/mesa/main/fbobject.c
+++ b/mesalib/src/mesa/main/fbobject.c
@@ -1370,12 +1370,12 @@ renderbuffer_storage(GLenum target, GLenum internalFormat,
return;
}
- if (width < 1 || width > (GLsizei) ctx->Const.MaxRenderbufferSize) {
+ if (width < 0 || width > (GLsizei) ctx->Const.MaxRenderbufferSize) {
_mesa_error(ctx, GL_INVALID_VALUE, "%s(width)", func);
return;
}
- if (height < 1 || height > (GLsizei) ctx->Const.MaxRenderbufferSize) {
+ if (height < 0 || height > (GLsizei) ctx->Const.MaxRenderbufferSize) {
_mesa_error(ctx, GL_INVALID_VALUE, "%s(height)", func);
return;
}
@@ -2125,7 +2125,7 @@ _mesa_FramebufferTexture2DEXT(GLenum target, GLenum attachment,
error = !ctx->Extensions.EXT_texture_array;
break;
default:
- error = GL_FALSE;
+ error = GL_TRUE;
}
if (error) {
diff --git a/mesalib/src/mesa/main/ff_fragment_shader.cpp b/mesalib/src/mesa/main/ff_fragment_shader.cpp
index b5500714b..2ce81fef6 100644
--- a/mesalib/src/mesa/main/ff_fragment_shader.cpp
+++ b/mesalib/src/mesa/main/ff_fragment_shader.cpp
@@ -108,7 +108,7 @@ struct state_key {
/* NOTE: This array of structs must be last! (see "keySize" below) */
struct {
GLuint enabled:1;
- GLuint source_index:3; /**< TEXTURE_x_INDEX */
+ GLuint source_index:4; /**< TEXTURE_x_INDEX */
GLuint shadow:1;
GLuint ScaleShiftRGB:2;
GLuint ScaleShiftA:2;
@@ -1041,6 +1041,11 @@ static void load_texture( struct texenv_fragment_program *p, GLuint unit )
sampler_type = p->shader->symbols->get_type("samplerCube");
coords = 3;
break;
+ case TEXTURE_EXTERNAL_INDEX:
+ assert(!p->state->unit[unit].shadow);
+ sampler_type = p->shader->symbols->get_type("samplerExternalOES");
+ coords = 2;
+ break;
}
p->src_texture[unit] = new(p->mem_ctx) ir_variable(glsl_type::vec4_type,
@@ -1437,6 +1442,8 @@ create_new_program(struct gl_context *ctx, struct state_key *key)
p.shader_program->InternalSeparateShader = GL_TRUE;
state->language_version = 130;
+ if (ctx->Extensions.OES_EGL_image_external)
+ state->OES_EGL_image_external_enable = true;
_mesa_glsl_initialize_types(state);
_mesa_glsl_initialize_variables(p.instructions, state);
diff --git a/mesalib/src/mesa/main/ffvertex_prog.c b/mesalib/src/mesa/main/ffvertex_prog.c
index 2d2485c9e..846907842 100644
--- a/mesalib/src/mesa/main/ffvertex_prog.c
+++ b/mesalib/src/mesa/main/ffvertex_prog.c
@@ -61,6 +61,7 @@ struct state_key {
unsigned rescale_normals:1;
unsigned fog_source_is_depth:1;
+ unsigned fog_distance_mode:2;
unsigned separate_specular:1;
unsigned point_attenuated:1;
unsigned point_array:1;
@@ -108,7 +109,22 @@ static GLuint translate_texgen( GLboolean enabled, GLenum mode )
}
}
+#define FDM_EYE_RADIAL 0
+#define FDM_EYE_PLANE 1
+#define FDM_EYE_PLANE_ABS 2
+static GLuint translate_fog_distance_mode( GLenum mode )
+{
+ switch (mode) {
+ case GL_EYE_RADIAL_NV:
+ return FDM_EYE_RADIAL;
+ case GL_EYE_PLANE:
+ return FDM_EYE_PLANE;
+ default: /* shouldn't happen; fall through to a sensible default */
+ case GL_EYE_PLANE_ABSOLUTE_NV:
+ return FDM_EYE_PLANE_ABS;
+ }
+}
static GLboolean check_active_shininess( struct gl_context *ctx,
const struct state_key *key,
@@ -205,8 +221,10 @@ static void make_state_key( struct gl_context *ctx, struct state_key *key )
if (ctx->Transform.RescaleNormals)
key->rescale_normals = 1;
- if (ctx->Fog.FogCoordinateSource == GL_FRAGMENT_DEPTH_EXT)
+ if (ctx->Fog.FogCoordinateSource == GL_FRAGMENT_DEPTH_EXT) {
key->fog_source_is_depth = 1;
+ key->fog_distance_mode = translate_fog_distance_mode(ctx->Fog.FogDistanceMode);
+ }
if (ctx->Point._Attenuated)
key->point_attenuated = 1;
@@ -1308,14 +1326,31 @@ static void build_fog( struct tnl_program *p )
struct ureg input;
if (p->state->fog_source_is_depth) {
- input = get_eye_position_z(p);
+
+ switch (p->state->fog_distance_mode) {
+ case FDM_EYE_RADIAL: /* Z = sqrt(Xe*Xe + Ye*Ye + Ze*Ze) */
+ input = get_eye_position(p);
+ emit_op2(p, OPCODE_DP3, fog, WRITEMASK_X, input, input);
+ emit_op1(p, OPCODE_RSQ, fog, WRITEMASK_X, fog);
+ emit_op1(p, OPCODE_RCP, fog, WRITEMASK_X, fog);
+ break;
+ case FDM_EYE_PLANE: /* Z = Ze */
+ input = get_eye_position_z(p);
+ emit_op1(p, OPCODE_MOV, fog, WRITEMASK_X, input);
+ break;
+ case FDM_EYE_PLANE_ABS: /* Z = abs(Ze) */
+ input = get_eye_position_z(p);
+ emit_op1(p, OPCODE_ABS, fog, WRITEMASK_X, input);
+ break;
+ default: assert(0); break; /* can't happen */
+ }
+
}
else {
input = swizzle1(register_input(p, VERT_ATTRIB_FOG), X);
+ emit_op1(p, OPCODE_ABS, fog, WRITEMASK_X, input);
}
- /* result.fog = {abs(f),0,0,1}; */
- emit_op1(p, OPCODE_ABS, fog, WRITEMASK_X, input);
emit_op1(p, OPCODE_MOV, fog, WRITEMASK_YZW, get_identity_param(p));
}
diff --git a/mesalib/src/mesa/main/fog.c b/mesalib/src/mesa/main/fog.c
index 88aa31a7f..d65add930 100644
--- a/mesalib/src/mesa/main/fog.c
+++ b/mesalib/src/mesa/main/fog.c
@@ -172,6 +172,19 @@ _mesa_Fogfv( GLenum pname, const GLfloat *params )
ctx->Fog.FogCoordinateSource = p;
break;
}
+ case GL_FOG_DISTANCE_MODE_NV: {
+ GLenum p = (GLenum) (GLint) *params;
+ if (!ctx->Extensions.NV_fog_distance ||
+ (p != GL_EYE_RADIAL_NV && p != GL_EYE_PLANE && p != GL_EYE_PLANE_ABSOLUTE_NV)) {
+ _mesa_error(ctx, GL_INVALID_ENUM, "glFog");
+ return;
+ }
+ if (ctx->Fog.FogDistanceMode == p)
+ return;
+ FLUSH_VERTICES(ctx, _NEW_FOG);
+ ctx->Fog.FogDistanceMode = p;
+ break;
+ }
default:
_mesa_error( ctx, GL_INVALID_ENUM, "glFog" );
return;
@@ -201,4 +214,5 @@ void _mesa_init_fog( struct gl_context * ctx )
ctx->Fog.ColorSumEnabled = GL_FALSE;
ctx->Fog.FogCoordinateSource = GL_FRAGMENT_DEPTH_EXT;
ctx->Fog._Scale = 1.0f;
+ ctx->Fog.FogDistanceMode = GL_EYE_PLANE_ABSOLUTE_NV;
}
diff --git a/mesalib/src/mesa/main/format_unpack.c b/mesalib/src/mesa/main/format_unpack.c
index 2051f68fb..eaa33dfdb 100644
--- a/mesalib/src/mesa/main/format_unpack.c
+++ b/mesalib/src/mesa/main/format_unpack.c
@@ -1415,37 +1415,26 @@ _mesa_unpack_float_z_row(gl_format format, GLuint n,
typedef void (*unpack_uint_z_func)(const void *src, GLuint *dst);
static void
-unpack_uint_z_Z24_S8(const void *src, GLuint *dst)
+unpack_uint_z_Z24_X8(const void *src, GLuint *dst)
{
/* only return Z, not stencil data */
const GLuint s = *((const GLuint *) src);
- *dst = (s >> 8);
+ *dst = (s & 0xffffff00) | (s >> 24);
}
static void
-unpack_uint_z_S8_Z24(const void *src, GLuint *dst)
+unpack_uint_z_X8_Z24(const void *src, GLuint *dst)
{
/* only return Z, not stencil data */
const GLuint s = *((const GLuint *) src);
- *dst = s & 0x00ffffff;
+ *dst = (s << 8) | ((s >> 16) & 0xff);
}
static void
unpack_uint_z_Z16(const void *src, GLuint *dst)
{
- *dst = *((const GLushort *) src);
-}
-
-static void
-unpack_uint_z_X8_Z24(const void *src, GLuint *dst)
-{
- unpack_uint_z_S8_Z24(src, dst);
-}
-
-static void
-unpack_uint_z_Z24_X8(const void *src, GLuint *dst)
-{
- unpack_uint_z_Z24_S8(src, dst);
+ const GLushort s = *((const GLushort *)src);
+ *dst = (s << 16) | s;
}
static void
@@ -1466,19 +1455,15 @@ _mesa_unpack_uint_z_row(gl_format format, GLuint n,
switch (format) {
case MESA_FORMAT_Z24_S8:
- unpack = unpack_uint_z_Z24_S8;
+ case MESA_FORMAT_Z24_X8:
+ unpack = unpack_uint_z_Z24_X8;
break;
case MESA_FORMAT_S8_Z24:
- unpack = unpack_uint_z_S8_Z24;
- break;
- case MESA_FORMAT_Z16:
- unpack = unpack_uint_z_Z16;
- break;
case MESA_FORMAT_X8_Z24:
unpack = unpack_uint_z_X8_Z24;
break;
- case MESA_FORMAT_Z24_X8:
- unpack = unpack_uint_z_Z24_X8;
+ case MESA_FORMAT_Z16:
+ unpack = unpack_uint_z_Z16;
break;
case MESA_FORMAT_Z32:
unpack = unpack_uint_z_Z32;
@@ -1495,4 +1480,97 @@ _mesa_unpack_uint_z_row(gl_format format, GLuint n,
}
}
+static void
+unpack_ubyte_s_S8(const void *src, GLubyte *dst, GLuint n)
+{
+ memcpy(dst, src, n);
+}
+static void
+unpack_ubyte_s_Z24_S8(const void *src, GLubyte *dst, GLuint n)
+{
+ GLuint i;
+ const GLuint *src32 = src;
+
+ for (i = 0; i < n; i++)
+ dst[i] = src32[i] & 0xff;
+}
+
+static void
+unpack_ubyte_s_S8_Z24(const void *src, GLubyte *dst, GLuint n)
+{
+ GLuint i;
+ const GLuint *src32 = src;
+
+ for (i = 0; i < n; i++)
+ dst[i] = src32[i] >> 24;
+}
+
+static void
+unpack_ubyte_s_Z32_FLOAT_X24S8(const void *src, GLubyte *dst, GLuint n)
+{
+ GLuint i;
+ const GLuint *src32 = src;
+
+ for (i = 0; i < n; i++)
+ dst[i] = src32[i * 2 + 1] & 0xff;
+}
+
+void
+_mesa_unpack_ubyte_stencil_row(gl_format format, GLuint n,
+ const void *src, GLubyte *dst)
+{
+ switch (format) {
+ case MESA_FORMAT_S8:
+ unpack_ubyte_s_S8(src, dst, n);
+ break;
+ case MESA_FORMAT_Z24_S8:
+ unpack_ubyte_s_Z24_S8(src, dst, n);
+ break;
+ case MESA_FORMAT_S8_Z24:
+ unpack_ubyte_s_S8_Z24(src, dst, n);
+ break;
+ case MESA_FORMAT_Z32_FLOAT_X24S8:
+ unpack_ubyte_s_Z32_FLOAT_X24S8(src, dst, n);
+ break;
+ default:
+ _mesa_problem(NULL, "bad format %s in _mesa_unpack_ubyte_s_row",
+ _mesa_get_format_name(format));
+ return;
+ }
+}
+
+static void
+unpack_uint_24_8_depth_stencil_S8_Z24(const GLuint *src, GLuint *dst, GLuint n)
+{
+ GLuint i;
+
+ for (i = 0; i < n; i++) {
+ GLuint val = src[i];
+ dst[i] = val >> 24 | val << 8;
+ }
+}
+
+static void
+unpack_uint_24_8_depth_stencil_Z24_S8(const GLuint *src, GLuint *dst, GLuint n)
+{
+ memcpy(dst, src, n * 4);
+}
+
+void
+_mesa_unpack_uint_24_8_depth_stencil_row(gl_format format, GLuint n,
+ const void *src, GLuint *dst)
+{
+ switch (format) {
+ case MESA_FORMAT_Z24_S8:
+ unpack_uint_24_8_depth_stencil_Z24_S8(src, dst, n);
+ break;
+ case MESA_FORMAT_S8_Z24:
+ unpack_uint_24_8_depth_stencil_S8_Z24(src, dst, n);
+ break;
+ default:
+ _mesa_problem(NULL, "bad format %s in _mesa_unpack_ubyte_s_row",
+ _mesa_get_format_name(format));
+ return;
+ }
+}
diff --git a/mesalib/src/mesa/main/format_unpack.h b/mesalib/src/mesa/main/format_unpack.h
index c37727d91..a8a829c88 100644
--- a/mesalib/src/mesa/main/format_unpack.h
+++ b/mesalib/src/mesa/main/format_unpack.h
@@ -45,5 +45,13 @@ void
_mesa_unpack_uint_z_row(gl_format format, GLuint n,
const void *src, GLuint *dst);
+void
+_mesa_unpack_ubyte_stencil_row(gl_format format, GLuint n,
+ const void *src, GLubyte *dst);
+
+void
+_mesa_unpack_uint_24_8_depth_stencil_row(gl_format format, GLuint n,
+ const void *src, GLuint *dst);
+
#endif /* FORMAT_UNPACK_H */
diff --git a/mesalib/src/mesa/main/formats.c b/mesalib/src/mesa/main/formats.c
index 6307f8e4d..c6febb0e5 100644
--- a/mesalib/src/mesa/main/formats.c
+++ b/mesalib/src/mesa/main/formats.c
@@ -2444,3 +2444,321 @@ _mesa_format_to_type_and_comps(gl_format format,
*comps = 1;
}
}
+
+/**
+ * Returns a MESA_FORMAT describing pixels with the given format/type if
+ * available, or MESA_FORMAT_NONE.
+ *
+ * If a format is returned, it should be suitable to memcpy
+ * _mesa_get_format_bytes() at a time to move the pixel data.
+ */
+GLboolean
+_mesa_format_matches_format_and_type(gl_format gl_format,
+ GLenum format, GLenum type)
+{
+ const GLboolean littleEndian = _mesa_little_endian();
+
+ /* Note: When reading a GL format/type combination, the format lists channel
+ * assignments from most significant channel in the type to least
+ * significant. A type with _REV indicates that the assignments are swapped,
+ * so they are listed from least significant to most significant.
+ *
+ * For sanity, please keep this switch statement ordered the same as the enum
+ * in formats.h.
+ *
+ * This matching assumes that GL_PACK/UNPACK_SWAP_BYTES is unset.
+ */
+
+ switch (gl_format) {
+
+ case MESA_FORMAT_NONE:
+ case MESA_FORMAT_COUNT:
+ return GL_FALSE;
+
+ case MESA_FORMAT_RGBA8888:
+ return ((format == GL_RGBA && (type == GL_UNSIGNED_INT_8_8_8_8 ||
+ (type == GL_UNSIGNED_BYTE && !littleEndian))) ||
+ (format == GL_ABGR_EXT && (type == GL_UNSIGNED_INT_8_8_8_8_REV ||
+ (type == GL_UNSIGNED_BYTE && littleEndian))));
+
+ case MESA_FORMAT_RGBA8888_REV:
+ return ((format == GL_RGBA && type == GL_UNSIGNED_INT_8_8_8_8_REV));
+
+ case MESA_FORMAT_ARGB8888:
+ return ((format == GL_BGRA && (type == GL_UNSIGNED_INT_8_8_8_8_REV ||
+ (type == GL_UNSIGNED_BYTE && littleEndian))));
+
+ case MESA_FORMAT_ARGB8888_REV:
+ return ((format == GL_BGRA && (type == GL_UNSIGNED_INT_8_8_8_8 ||
+ (type == GL_UNSIGNED_BYTE && !littleEndian))));
+
+ case MESA_FORMAT_XRGB8888:
+ case MESA_FORMAT_XRGB8888_REV:
+ return GL_FALSE;
+
+ case MESA_FORMAT_RGB888:
+ return format == GL_RGB && type == GL_UNSIGNED_BYTE && littleEndian;
+
+ case MESA_FORMAT_BGR888:
+ return GL_FALSE;
+
+ case MESA_FORMAT_RGB565:
+ return format == GL_RGB && type == GL_UNSIGNED_SHORT_5_6_5;
+ case MESA_FORMAT_RGB565_REV:
+ /* Some of the 16-bit MESA_FORMATs that would seem to correspond to
+ * GL_UNSIGNED_SHORT_* are byte-swapped instead of channel-reversed,
+ * according to formats.h, so they can't be matched.
+ */
+ return GL_FALSE;
+
+ case MESA_FORMAT_ARGB4444:
+ return format == GL_BGRA && type == GL_UNSIGNED_SHORT_4_4_4_4_REV;
+ case MESA_FORMAT_ARGB4444_REV:
+ return GL_FALSE;
+
+ case MESA_FORMAT_RGBA5551:
+ return format == GL_RGBA && type == GL_UNSIGNED_SHORT_5_5_5_1;
+
+ case MESA_FORMAT_ARGB1555:
+ return format == GL_BGRA && type == GL_UNSIGNED_SHORT_1_5_5_5_REV;
+ case MESA_FORMAT_ARGB1555_REV:
+ return GL_FALSE;
+
+ case MESA_FORMAT_AL44:
+ return GL_FALSE;
+ case MESA_FORMAT_AL88:
+ return format == GL_LUMINANCE_ALPHA && type == GL_UNSIGNED_BYTE && littleEndian;
+ case MESA_FORMAT_AL88_REV:
+ return GL_FALSE;
+
+ case MESA_FORMAT_AL1616:
+ return format == GL_LUMINANCE_ALPHA && type == GL_UNSIGNED_SHORT && littleEndian;
+ case MESA_FORMAT_AL1616_REV:
+ return GL_FALSE;
+
+ case MESA_FORMAT_RGB332:
+ return format == GL_RGB && type == GL_UNSIGNED_BYTE_3_3_2;
+
+ case MESA_FORMAT_A8:
+ return format == GL_ALPHA && type == GL_UNSIGNED_BYTE;
+ case MESA_FORMAT_A16:
+ return format == GL_ALPHA && type == GL_UNSIGNED_SHORT && littleEndian;
+ case MESA_FORMAT_L8:
+ return format == GL_LUMINANCE && type == GL_UNSIGNED_BYTE;
+ case MESA_FORMAT_L16:
+ return format == GL_LUMINANCE && type == GL_UNSIGNED_SHORT && littleEndian;
+ case MESA_FORMAT_I8:
+ return format == GL_INTENSITY && type == GL_UNSIGNED_BYTE;
+ case MESA_FORMAT_I16:
+ return format == GL_INTENSITY && type == GL_UNSIGNED_SHORT && littleEndian;
+
+ case MESA_FORMAT_YCBCR:
+ case MESA_FORMAT_YCBCR_REV:
+ return GL_FALSE;
+
+ case MESA_FORMAT_R8:
+ return format == GL_RED && type == GL_UNSIGNED_BYTE;
+ case MESA_FORMAT_RG88:
+ return format == GL_LUMINANCE_ALPHA && type == GL_UNSIGNED_BYTE && littleEndian;
+ case MESA_FORMAT_RG88_REV:
+ return GL_FALSE;
+
+ case MESA_FORMAT_R16:
+ return format == GL_RED && type == GL_UNSIGNED_SHORT && littleEndian;
+ case MESA_FORMAT_RG1616:
+ return format == GL_RG && type == GL_UNSIGNED_SHORT && littleEndian;
+ case MESA_FORMAT_RG1616_REV:
+ return GL_FALSE;
+
+ case MESA_FORMAT_ARGB2101010:
+ return format == GL_BGRA && type == GL_UNSIGNED_INT_2_10_10_10_REV;
+
+ case MESA_FORMAT_Z24_S8:
+ return format == GL_DEPTH_STENCIL && type == GL_UNSIGNED_INT_24_8;
+ case MESA_FORMAT_Z24_X8:
+ case MESA_FORMAT_S8_Z24:
+ return GL_FALSE;
+
+ case MESA_FORMAT_Z16:
+ return format == GL_DEPTH_COMPONENT && type == GL_UNSIGNED_SHORT;
+
+ case MESA_FORMAT_X8_Z24:
+ return GL_FALSE;
+
+ case MESA_FORMAT_Z32:
+ return format == GL_DEPTH_COMPONENT && type == GL_UNSIGNED_INT;
+
+ case MESA_FORMAT_S8:
+ return GL_FALSE;
+
+ case MESA_FORMAT_SRGB8:
+ case MESA_FORMAT_SRGBA8:
+ case MESA_FORMAT_SARGB8:
+ case MESA_FORMAT_SL8:
+ case MESA_FORMAT_SLA8:
+ case MESA_FORMAT_SRGB_DXT1:
+ case MESA_FORMAT_SRGBA_DXT1:
+ case MESA_FORMAT_SRGBA_DXT3:
+ case MESA_FORMAT_SRGBA_DXT5:
+ return GL_FALSE;
+
+ case MESA_FORMAT_RGB_FXT1:
+ case MESA_FORMAT_RGBA_FXT1:
+ case MESA_FORMAT_RGB_DXT1:
+ case MESA_FORMAT_RGBA_DXT1:
+ case MESA_FORMAT_RGBA_DXT3:
+ case MESA_FORMAT_RGBA_DXT5:
+ return GL_FALSE;
+
+ case MESA_FORMAT_RGBA_FLOAT32:
+ return format == GL_RGBA && type == GL_FLOAT;
+ case MESA_FORMAT_RGBA_FLOAT16:
+ return format == GL_RGBA && type == GL_HALF_FLOAT;
+
+ case MESA_FORMAT_RGB_FLOAT32:
+ return format == GL_RGB && type == GL_FLOAT;
+ case MESA_FORMAT_RGB_FLOAT16:
+ return format == GL_RGB && type == GL_HALF_FLOAT;
+
+ case MESA_FORMAT_ALPHA_FLOAT32:
+ return format == GL_ALPHA && type == GL_FLOAT;
+ case MESA_FORMAT_ALPHA_FLOAT16:
+ return format == GL_ALPHA && type == GL_HALF_FLOAT;
+
+ case MESA_FORMAT_LUMINANCE_FLOAT32:
+ return format == GL_LUMINANCE && type == GL_FLOAT;
+ case MESA_FORMAT_LUMINANCE_FLOAT16:
+ return format == GL_LUMINANCE && type == GL_HALF_FLOAT;
+
+ case MESA_FORMAT_LUMINANCE_ALPHA_FLOAT32:
+ return format == GL_LUMINANCE_ALPHA && type == GL_FLOAT;
+ case MESA_FORMAT_LUMINANCE_ALPHA_FLOAT16:
+ return format == GL_LUMINANCE_ALPHA && type == GL_HALF_FLOAT;
+
+ case MESA_FORMAT_INTENSITY_FLOAT32:
+ return format == GL_INTENSITY && type == GL_FLOAT;
+ case MESA_FORMAT_INTENSITY_FLOAT16:
+ return format == GL_INTENSITY && type == GL_HALF_FLOAT;
+
+ case MESA_FORMAT_R_FLOAT32:
+ return format == GL_RED && type == GL_FLOAT;
+ case MESA_FORMAT_R_FLOAT16:
+ return format == GL_RED && type == GL_HALF_FLOAT;
+
+ case MESA_FORMAT_RG_FLOAT32:
+ return format == GL_RG && type == GL_FLOAT;
+ case MESA_FORMAT_RG_FLOAT16:
+ return format == GL_RG && type == GL_HALF_FLOAT;
+
+ /* FINISHME: What do we want to do for GL_EXT_texture_integer? */
+ case MESA_FORMAT_ALPHA_UINT8:
+ case MESA_FORMAT_ALPHA_UINT16:
+ case MESA_FORMAT_ALPHA_UINT32:
+ case MESA_FORMAT_ALPHA_INT8:
+ case MESA_FORMAT_ALPHA_INT16:
+ case MESA_FORMAT_ALPHA_INT32:
+ return GL_FALSE;
+
+ case MESA_FORMAT_INTENSITY_UINT8:
+ case MESA_FORMAT_INTENSITY_UINT16:
+ case MESA_FORMAT_INTENSITY_UINT32:
+ case MESA_FORMAT_INTENSITY_INT8:
+ case MESA_FORMAT_INTENSITY_INT16:
+ case MESA_FORMAT_INTENSITY_INT32:
+ return GL_FALSE;
+
+ case MESA_FORMAT_LUMINANCE_UINT8:
+ case MESA_FORMAT_LUMINANCE_UINT16:
+ case MESA_FORMAT_LUMINANCE_UINT32:
+ case MESA_FORMAT_LUMINANCE_INT8:
+ case MESA_FORMAT_LUMINANCE_INT16:
+ case MESA_FORMAT_LUMINANCE_INT32:
+ return GL_FALSE;
+
+ case MESA_FORMAT_LUMINANCE_ALPHA_UINT8:
+ case MESA_FORMAT_LUMINANCE_ALPHA_UINT16:
+ case MESA_FORMAT_LUMINANCE_ALPHA_UINT32:
+ case MESA_FORMAT_LUMINANCE_ALPHA_INT8:
+ case MESA_FORMAT_LUMINANCE_ALPHA_INT16:
+ case MESA_FORMAT_LUMINANCE_ALPHA_INT32:
+ return GL_FALSE;
+
+ case MESA_FORMAT_R_INT8:
+ case MESA_FORMAT_RG_INT8:
+ case MESA_FORMAT_RGB_INT8:
+ case MESA_FORMAT_RGBA_INT8:
+ case MESA_FORMAT_R_INT16:
+ case MESA_FORMAT_RG_INT16:
+ case MESA_FORMAT_RGB_INT16:
+ case MESA_FORMAT_RGBA_INT16:
+ case MESA_FORMAT_R_INT32:
+ case MESA_FORMAT_RG_INT32:
+ case MESA_FORMAT_RGB_INT32:
+ case MESA_FORMAT_RGBA_INT32:
+ return GL_FALSE;
+
+ case MESA_FORMAT_R_UINT8:
+ case MESA_FORMAT_RG_UINT8:
+ case MESA_FORMAT_RGB_UINT8:
+ case MESA_FORMAT_RGBA_UINT8:
+ case MESA_FORMAT_R_UINT16:
+ case MESA_FORMAT_RG_UINT16:
+ case MESA_FORMAT_RGB_UINT16:
+ case MESA_FORMAT_RGBA_UINT16:
+ case MESA_FORMAT_R_UINT32:
+ case MESA_FORMAT_RG_UINT32:
+ case MESA_FORMAT_RGB_UINT32:
+ case MESA_FORMAT_RGBA_UINT32:
+ return GL_FALSE;
+
+ case MESA_FORMAT_DUDV8:
+ case MESA_FORMAT_SIGNED_R8:
+ case MESA_FORMAT_SIGNED_RG88_REV:
+ case MESA_FORMAT_SIGNED_RGBX8888:
+ case MESA_FORMAT_SIGNED_RGBA8888:
+ case MESA_FORMAT_SIGNED_RGBA8888_REV:
+ case MESA_FORMAT_SIGNED_R16:
+ case MESA_FORMAT_SIGNED_GR1616:
+ case MESA_FORMAT_SIGNED_RGB_16:
+ case MESA_FORMAT_SIGNED_RGBA_16:
+ case MESA_FORMAT_RGBA_16:
+ /* FINISHME: SNORM */
+ return GL_FALSE;
+
+ case MESA_FORMAT_RED_RGTC1:
+ case MESA_FORMAT_SIGNED_RED_RGTC1:
+ case MESA_FORMAT_RG_RGTC2:
+ case MESA_FORMAT_SIGNED_RG_RGTC2:
+ return GL_FALSE;
+
+ case MESA_FORMAT_L_LATC1:
+ case MESA_FORMAT_SIGNED_L_LATC1:
+ case MESA_FORMAT_LA_LATC2:
+ case MESA_FORMAT_SIGNED_LA_LATC2:
+ return GL_FALSE;
+
+ case MESA_FORMAT_SIGNED_A8:
+ case MESA_FORMAT_SIGNED_L8:
+ case MESA_FORMAT_SIGNED_AL88:
+ case MESA_FORMAT_SIGNED_I8:
+ case MESA_FORMAT_SIGNED_A16:
+ case MESA_FORMAT_SIGNED_L16:
+ case MESA_FORMAT_SIGNED_AL1616:
+ case MESA_FORMAT_SIGNED_I16:
+ /* FINISHME: SNORM */
+ return GL_FALSE;
+
+ case MESA_FORMAT_RGB9_E5_FLOAT:
+ return format == GL_RGB && type == GL_UNSIGNED_INT_5_9_9_9_REV;
+ case MESA_FORMAT_R11_G11_B10_FLOAT:
+ return format == GL_RGB && type == GL_UNSIGNED_INT_10F_11F_11F_REV;
+
+ case MESA_FORMAT_Z32_FLOAT:
+ return format == GL_DEPTH_COMPONENT && type == GL_FLOAT;
+
+ case MESA_FORMAT_Z32_FLOAT_X24S8:
+ return GL_FALSE;
+ }
+
+ return GL_FALSE;
+}
diff --git a/mesalib/src/mesa/main/formats.h b/mesalib/src/mesa/main/formats.h
index 12758f03e..f24d52548 100644
--- a/mesalib/src/mesa/main/formats.h
+++ b/mesalib/src/mesa/main/formats.h
@@ -318,5 +318,8 @@ _mesa_get_uncompressed_format(gl_format format);
extern GLuint
_mesa_format_num_components(gl_format format);
+GLboolean
+_mesa_format_matches_format_and_type(gl_format gl_format,
+ GLenum format, GLenum type);
#endif /* FORMATS_H */
diff --git a/mesalib/src/mesa/main/get.c b/mesalib/src/mesa/main/get.c
index 3c388e56e..d8a063876 100644
--- a/mesalib/src/mesa/main/get.c
+++ b/mesalib/src/mesa/main/get.c
@@ -295,6 +295,7 @@ EXTRA_EXT(MESA_texture_array);
EXTRA_EXT2(EXT_secondary_color, ARB_vertex_program);
EXTRA_EXT(EXT_secondary_color);
EXTRA_EXT(EXT_fog_coord);
+EXTRA_EXT(NV_fog_distance);
EXTRA_EXT(EXT_texture_filter_anisotropic);
EXTRA_EXT(IBM_rasterpos_clip);
EXTRA_EXT(NV_point_sprite);
@@ -331,6 +332,7 @@ EXTRA_EXT(ARB_color_buffer_float);
EXTRA_EXT(ARB_copy_buffer);
EXTRA_EXT(EXT_framebuffer_sRGB);
EXTRA_EXT(ARB_texture_buffer_object);
+EXTRA_EXT(OES_EGL_image_external);
static const int
extra_ARB_vertex_program_ARB_fragment_program_NV_vertex_program[] = {
@@ -761,6 +763,12 @@ static const struct value_desc values[] = {
{ GL_SHADER_BINARY_FORMATS, CONST(0), NO_EXTRA },
#endif /* FEATURE_ES2 */
+ /* GL_OES_EGL_image_external */
+ { GL_TEXTURE_BINDING_EXTERNAL_OES, LOC_CUSTOM,
+ TYPE_INT, TEXTURE_EXTERNAL_INDEX, extra_OES_EGL_image_external },
+ { GL_TEXTURE_EXTERNAL_OES, LOC_CUSTOM,
+ TYPE_BOOLEAN, 0, extra_OES_EGL_image_external },
+
#if FEATURE_GL
/* Remaining enums are only in OpenGL */
{ 0, 0, TYPE_API_MASK, API_OPENGL_BIT, NO_EXTRA },
@@ -972,6 +980,10 @@ static const struct value_desc values[] = {
{ GL_FOG_COORDINATE_SOURCE_EXT, CONTEXT_ENUM(Fog.FogCoordinateSource),
extra_EXT_fog_coord },
+ /* GL_NV_fog_distance */
+ { GL_FOG_DISTANCE_MODE_NV, CONTEXT_ENUM(Fog.FogDistanceMode),
+ extra_NV_fog_distance },
+
/* GL_IBM_rasterpos_clip */
{ GL_RASTER_POSITION_UNCLIPPED_IBM,
CONTEXT_BOOL(Transform.RasterPositionUnclipped),
@@ -1414,6 +1426,7 @@ find_custom_value(struct gl_context *ctx, const struct value_desc *d, union valu
case GL_TEXTURE_2D_ARRAY_EXT:
case GL_TEXTURE_CUBE_MAP_ARB:
case GL_TEXTURE_RECTANGLE_NV:
+ case GL_TEXTURE_EXTERNAL_OES:
v->value_bool = _mesa_IsEnabled(d->pname);
break;
@@ -1591,6 +1604,7 @@ find_custom_value(struct gl_context *ctx, const struct value_desc *d, union valu
case GL_TEXTURE_BINDING_2D_ARRAY_EXT:
case GL_TEXTURE_BINDING_CUBE_MAP_ARB:
case GL_TEXTURE_BINDING_RECTANGLE_NV:
+ case GL_TEXTURE_BINDING_EXTERNAL_OES:
unit = ctx->Texture.CurrentUnit;
v->value_int =
ctx->Texture.Unit[unit].CurrentTex[d->offset]->Name;
diff --git a/mesalib/src/mesa/main/glheader.h b/mesalib/src/mesa/main/glheader.h
index 0df811986..c4fb1570d 100644
--- a/mesalib/src/mesa/main/glheader.h
+++ b/mesalib/src/mesa/main/glheader.h
@@ -66,6 +66,14 @@ typedef void *GLeglImageOES;
#endif
+#ifndef GL_OES_EGL_image_external
+#define GL_TEXTURE_EXTERNAL_OES 0x8D65
+#define GL_SAMPLER_EXTERNAL_OES 0x8D66
+#define GL_TEXTURE_BINDING_EXTERNAL_OES 0x8D67
+#define GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES 0x8D68
+#endif
+
+
#ifndef GL_OES_point_size_array
#define GL_POINT_SIZE_ARRAY_OES 0x8B9C
#define GL_POINT_SIZE_ARRAY_TYPE_OES 0x898A
diff --git a/mesalib/src/mesa/main/mipmap.c b/mesalib/src/mesa/main/mipmap.c
index 46d71bb22..461de9d1b 100644
--- a/mesalib/src/mesa/main/mipmap.c
+++ b/mesalib/src/mesa/main/mipmap.c
@@ -1751,6 +1751,7 @@ _mesa_generate_mipmap_level(GLenum target,
}
break;
case GL_TEXTURE_RECTANGLE_NV:
+ case GL_TEXTURE_EXTERNAL_OES:
/* no mipmaps, do nothing */
break;
default:
diff --git a/mesalib/src/mesa/main/mtypes.h b/mesalib/src/mesa/main/mtypes.h
index aa3fa6aec..61909727d 100644
--- a/mesalib/src/mesa/main/mtypes.h
+++ b/mesalib/src/mesa/main/mtypes.h
@@ -884,6 +884,7 @@ struct gl_fog_attrib
GLboolean ColorSumEnabled;
GLenum FogCoordinateSource; /**< GL_EXT_fog_coord */
GLfloat _Scale; /**< (End == Start) ? 1.0 : 1.0 / (End - Start) */
+ GLenum FogDistanceMode; /**< GL_NV_fog_distance */
};
@@ -1165,6 +1166,7 @@ typedef enum
TEXTURE_BUFFER_INDEX,
TEXTURE_2D_ARRAY_INDEX,
TEXTURE_1D_ARRAY_INDEX,
+ TEXTURE_EXTERNAL_INDEX,
TEXTURE_CUBE_INDEX,
TEXTURE_3D_INDEX,
TEXTURE_RECT_INDEX,
@@ -1182,6 +1184,7 @@ typedef enum
#define TEXTURE_BUFFER_BIT (1 << TEXTURE_BUFFER_INDEX)
#define TEXTURE_2D_ARRAY_BIT (1 << TEXTURE_2D_ARRAY_INDEX)
#define TEXTURE_1D_ARRAY_BIT (1 << TEXTURE_1D_ARRAY_INDEX)
+#define TEXTURE_EXTERNAL_BIT (1 << TEXTURE_EXTERNAL_INDEX)
#define TEXTURE_CUBE_BIT (1 << TEXTURE_CUBE_INDEX)
#define TEXTURE_3D_BIT (1 << TEXTURE_3D_INDEX)
#define TEXTURE_RECT_BIT (1 << TEXTURE_RECT_INDEX)
@@ -1334,6 +1337,7 @@ struct gl_texture_object
GLboolean _Complete; /**< Is texture object complete? */
GLboolean _RenderToTexture; /**< Any rendering to this texture? */
GLboolean Purgeable; /**< Is the buffer purgeable under memory pressure? */
+ GLboolean Immutable; /**< GL_ARB_texture_storage */
/** Actual texture images, indexed by [cube face] and [mipmap level] */
struct gl_texture_image *Image[MAX_FACES][MAX_TEXTURE_LEVELS];
@@ -1342,6 +1346,9 @@ struct gl_texture_object
struct gl_buffer_object *BufferObject;
GLenum BufferObjectFormat;
+ /** GL_OES_EGL_image_external */
+ GLint RequiredTextureImageUnits;
+
/**
* \name For device driver.
* Note: instead of attaching driver data to this pointer, it's preferable
@@ -2826,6 +2833,7 @@ struct gl_extensions
GLboolean ARB_texture_non_power_of_two;
GLboolean ARB_texture_rg;
GLboolean ARB_texture_rgb10_a2ui;
+ GLboolean ARB_texture_storage;
GLboolean ARB_timer_query;
GLboolean ARB_transform_feedback2;
GLboolean ARB_transpose_matrix;
@@ -2900,6 +2908,7 @@ struct gl_extensions
GLboolean MESA_texture_array;
GLboolean NV_blend_square;
GLboolean NV_conditional_render;
+ GLboolean NV_fog_distance;
GLboolean NV_fragment_program;
GLboolean NV_fragment_program_option;
GLboolean NV_light_max_exponent;
@@ -2916,6 +2925,7 @@ struct gl_extensions
GLboolean S3_s3tc;
GLboolean OES_EGL_image;
GLboolean OES_draw_texture;
+ GLboolean OES_EGL_image_external;
GLboolean extension_sentinel;
/** The extension string */
const GLubyte *String;
diff --git a/mesalib/src/mesa/main/pack.c b/mesalib/src/mesa/main/pack.c
index ecdeaf5dc..539a06c9a 100644
--- a/mesalib/src/mesa/main/pack.c
+++ b/mesalib/src/mesa/main/pack.c
@@ -1983,6 +1983,7 @@ _mesa_pack_rgba_span_float(struct gl_context *ctx, GLuint n, GLfloat rgba[][4],
break;
default:
_mesa_problem(ctx, "bad type in _mesa_pack_rgba_span_float");
+ free(luminance);
return;
}
diff --git a/mesalib/src/mesa/main/remap_helper.h b/mesalib/src/mesa/main/remap_helper.h
index 5ea2bb62c..db13fb985 100644
--- a/mesalib/src/mesa/main/remap_helper.h
+++ b/mesalib/src/mesa/main/remap_helper.h
@@ -220,4865 +220,4889 @@ static const char _mesa_function_pool[] =
"iif\0"
"glListParameterfSGIX\0"
"\0"
- /* _mesa_function_pool[1272]: SecondaryColor3bEXT (will be remapped) */
+ /* _mesa_function_pool[1272]: TexStorage1D (will be remapped) */
+ "iiii\0"
+ "glTexStorage1D\0"
+ "\0"
+ /* _mesa_function_pool[1293]: SecondaryColor3bEXT (will be remapped) */
"iii\0"
"glSecondaryColor3b\0"
"glSecondaryColor3bEXT\0"
"\0"
- /* _mesa_function_pool[1318]: TexCoord4fColor4fNormal3fVertex4fvSUN (dynamic) */
+ /* _mesa_function_pool[1339]: TexCoord4fColor4fNormal3fVertex4fvSUN (dynamic) */
"pppp\0"
"glTexCoord4fColor4fNormal3fVertex4fvSUN\0"
"\0"
- /* _mesa_function_pool[1364]: GetnPolygonStippleARB (will be remapped) */
+ /* _mesa_function_pool[1385]: GetnPolygonStippleARB (will be remapped) */
"ip\0"
"glGetnPolygonStippleARB\0"
"\0"
- /* _mesa_function_pool[1392]: GetPixelMapfv (offset 271) */
+ /* _mesa_function_pool[1413]: GetPixelMapfv (offset 271) */
"ip\0"
"glGetPixelMapfv\0"
"\0"
- /* _mesa_function_pool[1412]: Color3uiv (offset 22) */
+ /* _mesa_function_pool[1433]: Color3uiv (offset 22) */
"p\0"
"glColor3uiv\0"
"\0"
- /* _mesa_function_pool[1427]: IsEnabled (offset 286) */
+ /* _mesa_function_pool[1448]: IsEnabled (offset 286) */
"i\0"
"glIsEnabled\0"
"\0"
- /* _mesa_function_pool[1442]: VertexAttrib4svNV (will be remapped) */
+ /* _mesa_function_pool[1463]: VertexAttrib4svNV (will be remapped) */
"ip\0"
"glVertexAttrib4svNV\0"
"\0"
- /* _mesa_function_pool[1466]: EvalCoord2fv (offset 235) */
+ /* _mesa_function_pool[1487]: EvalCoord2fv (offset 235) */
"p\0"
"glEvalCoord2fv\0"
"\0"
- /* _mesa_function_pool[1484]: GetBufferSubDataARB (will be remapped) */
+ /* _mesa_function_pool[1505]: GetBufferSubDataARB (will be remapped) */
"iiip\0"
"glGetBufferSubData\0"
"glGetBufferSubDataARB\0"
"\0"
- /* _mesa_function_pool[1531]: BufferSubDataARB (will be remapped) */
+ /* _mesa_function_pool[1552]: BufferSubDataARB (will be remapped) */
"iiip\0"
"glBufferSubData\0"
"glBufferSubDataARB\0"
"\0"
- /* _mesa_function_pool[1572]: TexCoord2fColor4ubVertex3fvSUN (dynamic) */
+ /* _mesa_function_pool[1593]: TexCoord2fColor4ubVertex3fvSUN (dynamic) */
"ppp\0"
"glTexCoord2fColor4ubVertex3fvSUN\0"
"\0"
- /* _mesa_function_pool[1610]: AttachShader (will be remapped) */
+ /* _mesa_function_pool[1631]: AttachShader (will be remapped) */
"ii\0"
"glAttachShader\0"
"\0"
- /* _mesa_function_pool[1629]: GetCombinerInputParameterfvNV (will be remapped) */
+ /* _mesa_function_pool[1650]: GetCombinerInputParameterfvNV (will be remapped) */
"iiiip\0"
"glGetCombinerInputParameterfvNV\0"
"\0"
- /* _mesa_function_pool[1668]: MultiTexCoordP2ui (will be remapped) */
+ /* _mesa_function_pool[1689]: MultiTexCoordP2ui (will be remapped) */
"iii\0"
"glMultiTexCoordP2ui\0"
"\0"
- /* _mesa_function_pool[1693]: VertexAttrib2fARB (will be remapped) */
+ /* _mesa_function_pool[1714]: VertexAttrib2fARB (will be remapped) */
"iff\0"
"glVertexAttrib2f\0"
"glVertexAttrib2fARB\0"
"\0"
- /* _mesa_function_pool[1735]: GetDebugLogLengthMESA (dynamic) */
+ /* _mesa_function_pool[1756]: GetDebugLogLengthMESA (dynamic) */
"iii\0"
"glGetDebugLogLengthMESA\0"
"\0"
- /* _mesa_function_pool[1764]: GetMapiv (offset 268) */
+ /* _mesa_function_pool[1785]: GetMapiv (offset 268) */
"iip\0"
"glGetMapiv\0"
"\0"
- /* _mesa_function_pool[1780]: VertexAttrib3fARB (will be remapped) */
+ /* _mesa_function_pool[1801]: VertexAttrib3fARB (will be remapped) */
"ifff\0"
"glVertexAttrib3f\0"
"glVertexAttrib3fARB\0"
"\0"
- /* _mesa_function_pool[1823]: Indexubv (offset 316) */
+ /* _mesa_function_pool[1844]: Indexubv (offset 316) */
"p\0"
"glIndexubv\0"
"\0"
- /* _mesa_function_pool[1837]: GetQueryivARB (will be remapped) */
+ /* _mesa_function_pool[1858]: GetQueryivARB (will be remapped) */
"iip\0"
"glGetQueryiv\0"
"glGetQueryivARB\0"
"\0"
- /* _mesa_function_pool[1871]: TexImage3D (offset 371) */
+ /* _mesa_function_pool[1892]: TexImage3D (offset 371) */
"iiiiiiiiip\0"
"glTexImage3D\0"
"glTexImage3DEXT\0"
"\0"
- /* _mesa_function_pool[1912]: BindFragDataLocationEXT (will be remapped) */
+ /* _mesa_function_pool[1933]: BindFragDataLocationEXT (will be remapped) */
"iip\0"
"glBindFragDataLocationEXT\0"
"glBindFragDataLocation\0"
"\0"
- /* _mesa_function_pool[1966]: TexCoordP4ui (will be remapped) */
+ /* _mesa_function_pool[1987]: TexCoordP4ui (will be remapped) */
"ii\0"
"glTexCoordP4ui\0"
"\0"
- /* _mesa_function_pool[1985]: ReplacementCodeuiVertex3fvSUN (dynamic) */
+ /* _mesa_function_pool[2006]: ReplacementCodeuiVertex3fvSUN (dynamic) */
"pp\0"
"glReplacementCodeuiVertex3fvSUN\0"
"\0"
- /* _mesa_function_pool[2021]: EdgeFlagPointer (offset 312) */
+ /* _mesa_function_pool[2042]: EdgeFlagPointer (offset 312) */
"ip\0"
"glEdgeFlagPointer\0"
"\0"
- /* _mesa_function_pool[2043]: Color3ubv (offset 20) */
+ /* _mesa_function_pool[2064]: Color3ubv (offset 20) */
"p\0"
"glColor3ubv\0"
"\0"
- /* _mesa_function_pool[2058]: GetQueryObjectivARB (will be remapped) */
+ /* _mesa_function_pool[2079]: GetQueryObjectivARB (will be remapped) */
"iip\0"
"glGetQueryObjectiv\0"
"glGetQueryObjectivARB\0"
"\0"
- /* _mesa_function_pool[2104]: Vertex3dv (offset 135) */
+ /* _mesa_function_pool[2125]: Vertex3dv (offset 135) */
"p\0"
"glVertex3dv\0"
"\0"
- /* _mesa_function_pool[2119]: ReplacementCodeuiTexCoord2fVertex3fvSUN (dynamic) */
+ /* _mesa_function_pool[2140]: ReplacementCodeuiTexCoord2fVertex3fvSUN (dynamic) */
"ppp\0"
"glReplacementCodeuiTexCoord2fVertex3fvSUN\0"
"\0"
- /* _mesa_function_pool[2166]: CompressedTexSubImage2DARB (will be remapped) */
+ /* _mesa_function_pool[2187]: CompressedTexSubImage2DARB (will be remapped) */
"iiiiiiiip\0"
"glCompressedTexSubImage2D\0"
"glCompressedTexSubImage2DARB\0"
"\0"
- /* _mesa_function_pool[2232]: CombinerOutputNV (will be remapped) */
+ /* _mesa_function_pool[2253]: CombinerOutputNV (will be remapped) */
"iiiiiiiiii\0"
"glCombinerOutputNV\0"
"\0"
- /* _mesa_function_pool[2263]: VertexAttribs3fvNV (will be remapped) */
+ /* _mesa_function_pool[2284]: VertexAttribs3fvNV (will be remapped) */
"iip\0"
"glVertexAttribs3fvNV\0"
"\0"
- /* _mesa_function_pool[2289]: GetnMapivARB (will be remapped) */
+ /* _mesa_function_pool[2310]: GetnMapivARB (will be remapped) */
"iiip\0"
"glGetnMapivARB\0"
"\0"
- /* _mesa_function_pool[2310]: Uniform2fARB (will be remapped) */
+ /* _mesa_function_pool[2331]: Uniform2fARB (will be remapped) */
"iff\0"
"glUniform2f\0"
"glUniform2fARB\0"
"\0"
- /* _mesa_function_pool[2342]: LightModeliv (offset 166) */
+ /* _mesa_function_pool[2363]: LightModeliv (offset 166) */
"ip\0"
"glLightModeliv\0"
"\0"
- /* _mesa_function_pool[2361]: VertexAttrib1svARB (will be remapped) */
+ /* _mesa_function_pool[2382]: VertexAttrib1svARB (will be remapped) */
"ip\0"
"glVertexAttrib1sv\0"
"glVertexAttrib1svARB\0"
"\0"
- /* _mesa_function_pool[2404]: VertexAttribs1dvNV (will be remapped) */
+ /* _mesa_function_pool[2425]: VertexAttribs1dvNV (will be remapped) */
"iip\0"
"glVertexAttribs1dvNV\0"
"\0"
- /* _mesa_function_pool[2430]: VertexP3ui (will be remapped) */
+ /* _mesa_function_pool[2451]: VertexP3ui (will be remapped) */
"ii\0"
"glVertexP3ui\0"
"\0"
- /* _mesa_function_pool[2447]: Uniform2ivARB (will be remapped) */
+ /* _mesa_function_pool[2468]: Uniform2ivARB (will be remapped) */
"iip\0"
"glUniform2iv\0"
"glUniform2ivARB\0"
"\0"
- /* _mesa_function_pool[2481]: GetImageTransformParameterfvHP (dynamic) */
+ /* _mesa_function_pool[2502]: GetImageTransformParameterfvHP (dynamic) */
"iip\0"
"glGetImageTransformParameterfvHP\0"
"\0"
- /* _mesa_function_pool[2519]: Normal3bv (offset 53) */
+ /* _mesa_function_pool[2540]: Normal3bv (offset 53) */
"p\0"
"glNormal3bv\0"
"\0"
- /* _mesa_function_pool[2534]: TexGeniv (offset 193) */
+ /* _mesa_function_pool[2555]: TexGeniv (offset 193) */
"iip\0"
"glTexGeniv\0"
"\0"
- /* _mesa_function_pool[2550]: TexCoordP1uiv (will be remapped) */
+ /* _mesa_function_pool[2571]: TexCoordP1uiv (will be remapped) */
"ip\0"
"glTexCoordP1uiv\0"
"\0"
- /* _mesa_function_pool[2570]: WeightubvARB (dynamic) */
+ /* _mesa_function_pool[2591]: WeightubvARB (dynamic) */
"ip\0"
"glWeightubvARB\0"
"\0"
- /* _mesa_function_pool[2589]: VertexAttrib1fvNV (will be remapped) */
+ /* _mesa_function_pool[2610]: VertexAttrib1fvNV (will be remapped) */
"ip\0"
"glVertexAttrib1fvNV\0"
"\0"
- /* _mesa_function_pool[2613]: Vertex3iv (offset 139) */
+ /* _mesa_function_pool[2634]: Vertex3iv (offset 139) */
"p\0"
"glVertex3iv\0"
"\0"
- /* _mesa_function_pool[2628]: CopyConvolutionFilter1D (offset 354) */
+ /* _mesa_function_pool[2649]: CopyConvolutionFilter1D (offset 354) */
"iiiii\0"
"glCopyConvolutionFilter1D\0"
"glCopyConvolutionFilter1DEXT\0"
"\0"
- /* _mesa_function_pool[2690]: VertexAttribI1uiEXT (will be remapped) */
+ /* _mesa_function_pool[2711]: VertexAttribI1uiEXT (will be remapped) */
"ii\0"
"glVertexAttribI1uiEXT\0"
"glVertexAttribI1ui\0"
"\0"
- /* _mesa_function_pool[2735]: ReplacementCodeuiNormal3fVertex3fSUN (dynamic) */
+ /* _mesa_function_pool[2756]: ReplacementCodeuiNormal3fVertex3fSUN (dynamic) */
"iffffff\0"
"glReplacementCodeuiNormal3fVertex3fSUN\0"
"\0"
- /* _mesa_function_pool[2783]: TexCoordP1ui (will be remapped) */
+ /* _mesa_function_pool[2804]: TexCoordP1ui (will be remapped) */
"ii\0"
"glTexCoordP1ui\0"
"\0"
- /* _mesa_function_pool[2802]: DeleteSync (will be remapped) */
+ /* _mesa_function_pool[2823]: DeleteSync (will be remapped) */
"i\0"
"glDeleteSync\0"
"\0"
- /* _mesa_function_pool[2818]: FragmentMaterialfvSGIX (dynamic) */
+ /* _mesa_function_pool[2839]: FragmentMaterialfvSGIX (dynamic) */
"iip\0"
"glFragmentMaterialfvSGIX\0"
"\0"
- /* _mesa_function_pool[2848]: BlendColor (offset 336) */
+ /* _mesa_function_pool[2869]: BlendColor (offset 336) */
"ffff\0"
"glBlendColor\0"
"glBlendColorEXT\0"
"\0"
- /* _mesa_function_pool[2883]: UniformMatrix4fvARB (will be remapped) */
+ /* _mesa_function_pool[2904]: UniformMatrix4fvARB (will be remapped) */
"iiip\0"
"glUniformMatrix4fv\0"
"glUniformMatrix4fvARB\0"
"\0"
- /* _mesa_function_pool[2930]: DeleteVertexArraysAPPLE (will be remapped) */
+ /* _mesa_function_pool[2951]: DeleteVertexArraysAPPLE (will be remapped) */
"ip\0"
"glDeleteVertexArrays\0"
"glDeleteVertexArraysAPPLE\0"
"\0"
- /* _mesa_function_pool[2981]: TexBuffer (will be remapped) */
+ /* _mesa_function_pool[3002]: TexBuffer (will be remapped) */
"iii\0"
"glTexBuffer\0"
"\0"
- /* _mesa_function_pool[2998]: ReadInstrumentsSGIX (dynamic) */
+ /* _mesa_function_pool[3019]: ReadInstrumentsSGIX (dynamic) */
"i\0"
"glReadInstrumentsSGIX\0"
"\0"
- /* _mesa_function_pool[3023]: CallLists (offset 3) */
+ /* _mesa_function_pool[3044]: CallLists (offset 3) */
"iip\0"
"glCallLists\0"
"\0"
- /* _mesa_function_pool[3040]: UniformMatrix2x4fv (will be remapped) */
+ /* _mesa_function_pool[3061]: UniformMatrix2x4fv (will be remapped) */
"iiip\0"
"glUniformMatrix2x4fv\0"
"\0"
- /* _mesa_function_pool[3067]: ReadnPixelsARB (will be remapped) */
+ /* _mesa_function_pool[3088]: ReadnPixelsARB (will be remapped) */
"iiiiiiip\0"
"glReadnPixelsARB\0"
"\0"
- /* _mesa_function_pool[3094]: Color4ubVertex3fvSUN (dynamic) */
+ /* _mesa_function_pool[3115]: Color4ubVertex3fvSUN (dynamic) */
"pp\0"
"glColor4ubVertex3fvSUN\0"
"\0"
- /* _mesa_function_pool[3121]: Normal3iv (offset 59) */
+ /* _mesa_function_pool[3142]: Normal3iv (offset 59) */
"p\0"
"glNormal3iv\0"
"\0"
- /* _mesa_function_pool[3136]: PassThrough (offset 199) */
+ /* _mesa_function_pool[3157]: PassThrough (offset 199) */
"f\0"
"glPassThrough\0"
"\0"
- /* _mesa_function_pool[3153]: GetnPixelMapusvARB (will be remapped) */
+ /* _mesa_function_pool[3174]: GetnPixelMapusvARB (will be remapped) */
"iip\0"
"glGetnPixelMapusvARB\0"
"\0"
- /* _mesa_function_pool[3179]: TexParameterIivEXT (will be remapped) */
+ /* _mesa_function_pool[3200]: TexParameterIivEXT (will be remapped) */
"iip\0"
"glTexParameterIivEXT\0"
"glTexParameterIiv\0"
"\0"
- /* _mesa_function_pool[3223]: FramebufferTextureLayerEXT (will be remapped) */
+ /* _mesa_function_pool[3244]: FramebufferTextureLayerEXT (will be remapped) */
"iiiii\0"
"glFramebufferTextureLayer\0"
"glFramebufferTextureLayerARB\0"
"glFramebufferTextureLayerEXT\0"
"\0"
- /* _mesa_function_pool[3314]: GetListParameterfvSGIX (dynamic) */
+ /* _mesa_function_pool[3335]: GetListParameterfvSGIX (dynamic) */
"iip\0"
"glGetListParameterfvSGIX\0"
"\0"
- /* _mesa_function_pool[3344]: Viewport (offset 305) */
+ /* _mesa_function_pool[3365]: Viewport (offset 305) */
"iiii\0"
"glViewport\0"
"\0"
- /* _mesa_function_pool[3361]: VertexAttrib4NusvARB (will be remapped) */
+ /* _mesa_function_pool[3382]: VertexAttrib4NusvARB (will be remapped) */
"ip\0"
"glVertexAttrib4Nusv\0"
"glVertexAttrib4NusvARB\0"
"\0"
- /* _mesa_function_pool[3408]: VertexP4uiv (will be remapped) */
+ /* _mesa_function_pool[3429]: VertexP4uiv (will be remapped) */
"ip\0"
"glVertexP4uiv\0"
"\0"
- /* _mesa_function_pool[3426]: VertexAttribP3ui (will be remapped) */
+ /* _mesa_function_pool[3447]: VertexAttribP3ui (will be remapped) */
"iiii\0"
"glVertexAttribP3ui\0"
"\0"
- /* _mesa_function_pool[3451]: WindowPos4svMESA (will be remapped) */
+ /* _mesa_function_pool[3472]: WindowPos4svMESA (will be remapped) */
"p\0"
"glWindowPos4svMESA\0"
"\0"
- /* _mesa_function_pool[3473]: CreateProgramObjectARB (will be remapped) */
+ /* _mesa_function_pool[3494]: CreateProgramObjectARB (will be remapped) */
"\0"
"glCreateProgramObjectARB\0"
"\0"
- /* _mesa_function_pool[3500]: DeleteTransformFeedbacks (will be remapped) */
+ /* _mesa_function_pool[3521]: DeleteTransformFeedbacks (will be remapped) */
"ip\0"
"glDeleteTransformFeedbacks\0"
"\0"
- /* _mesa_function_pool[3531]: UniformMatrix4x3fv (will be remapped) */
+ /* _mesa_function_pool[3552]: UniformMatrix4x3fv (will be remapped) */
"iiip\0"
"glUniformMatrix4x3fv\0"
"\0"
- /* _mesa_function_pool[3558]: PrioritizeTextures (offset 331) */
+ /* _mesa_function_pool[3579]: PrioritizeTextures (offset 331) */
"ipp\0"
"glPrioritizeTextures\0"
"glPrioritizeTexturesEXT\0"
"\0"
- /* _mesa_function_pool[3608]: VertexAttribI3uiEXT (will be remapped) */
+ /* _mesa_function_pool[3629]: VertexAttribI3uiEXT (will be remapped) */
"iiii\0"
"glVertexAttribI3uiEXT\0"
"glVertexAttribI3ui\0"
"\0"
- /* _mesa_function_pool[3655]: AsyncMarkerSGIX (dynamic) */
+ /* _mesa_function_pool[3676]: AsyncMarkerSGIX (dynamic) */
"i\0"
"glAsyncMarkerSGIX\0"
"\0"
- /* _mesa_function_pool[3676]: GlobalAlphaFactorubSUN (dynamic) */
+ /* _mesa_function_pool[3697]: GlobalAlphaFactorubSUN (dynamic) */
"i\0"
"glGlobalAlphaFactorubSUN\0"
"\0"
- /* _mesa_function_pool[3704]: ClearColorIuiEXT (will be remapped) */
+ /* _mesa_function_pool[3725]: ClearColorIuiEXT (will be remapped) */
"iiii\0"
"glClearColorIuiEXT\0"
"\0"
- /* _mesa_function_pool[3729]: ClearDebugLogMESA (dynamic) */
+ /* _mesa_function_pool[3750]: ClearDebugLogMESA (dynamic) */
"iii\0"
"glClearDebugLogMESA\0"
"\0"
- /* _mesa_function_pool[3754]: Uniform4uiEXT (will be remapped) */
+ /* _mesa_function_pool[3775]: Uniform4uiEXT (will be remapped) */
"iiiii\0"
"glUniform4uiEXT\0"
"glUniform4ui\0"
"\0"
- /* _mesa_function_pool[3790]: ResetHistogram (offset 369) */
+ /* _mesa_function_pool[3811]: ResetHistogram (offset 369) */
"i\0"
"glResetHistogram\0"
"glResetHistogramEXT\0"
"\0"
- /* _mesa_function_pool[3830]: GetProgramNamedParameterfvNV (will be remapped) */
+ /* _mesa_function_pool[3851]: GetProgramNamedParameterfvNV (will be remapped) */
"iipp\0"
"glGetProgramNamedParameterfvNV\0"
"\0"
- /* _mesa_function_pool[3867]: PointParameterfEXT (will be remapped) */
+ /* _mesa_function_pool[3888]: PointParameterfEXT (will be remapped) */
"if\0"
"glPointParameterf\0"
"glPointParameterfARB\0"
"glPointParameterfEXT\0"
"glPointParameterfSGIS\0"
"\0"
- /* _mesa_function_pool[3953]: MultiTexCoordP4uiv (will be remapped) */
+ /* _mesa_function_pool[3974]: MultiTexCoordP4uiv (will be remapped) */
"iip\0"
"glMultiTexCoordP4uiv\0"
"\0"
- /* _mesa_function_pool[3979]: LoadIdentityDeformationMapSGIX (dynamic) */
+ /* _mesa_function_pool[4000]: LoadIdentityDeformationMapSGIX (dynamic) */
"i\0"
"glLoadIdentityDeformationMapSGIX\0"
"\0"
- /* _mesa_function_pool[4015]: GenFencesNV (will be remapped) */
+ /* _mesa_function_pool[4036]: GenFencesNV (will be remapped) */
"ip\0"
"glGenFencesNV\0"
"\0"
- /* _mesa_function_pool[4033]: ImageTransformParameterfHP (dynamic) */
+ /* _mesa_function_pool[4054]: ImageTransformParameterfHP (dynamic) */
"iif\0"
"glImageTransformParameterfHP\0"
"\0"
- /* _mesa_function_pool[4067]: MatrixIndexusvARB (dynamic) */
+ /* _mesa_function_pool[4088]: MatrixIndexusvARB (dynamic) */
"ip\0"
"glMatrixIndexusvARB\0"
"\0"
- /* _mesa_function_pool[4091]: DrawElementsBaseVertex (will be remapped) */
+ /* _mesa_function_pool[4112]: DrawElementsBaseVertex (will be remapped) */
"iiipi\0"
"glDrawElementsBaseVertex\0"
"\0"
- /* _mesa_function_pool[4123]: DisableVertexAttribArrayARB (will be remapped) */
+ /* _mesa_function_pool[4144]: DisableVertexAttribArrayARB (will be remapped) */
"i\0"
"glDisableVertexAttribArray\0"
"glDisableVertexAttribArrayARB\0"
"\0"
- /* _mesa_function_pool[4183]: GetnConvolutionFilterARB (will be remapped) */
+ /* _mesa_function_pool[4204]: GetnConvolutionFilterARB (will be remapped) */
"iiiip\0"
"glGetnConvolutionFilterARB\0"
"\0"
- /* _mesa_function_pool[4217]: TexCoord2sv (offset 109) */
+ /* _mesa_function_pool[4238]: TexCoord2sv (offset 109) */
"p\0"
"glTexCoord2sv\0"
"\0"
- /* _mesa_function_pool[4234]: ColorP4uiv (will be remapped) */
+ /* _mesa_function_pool[4255]: ColorP4uiv (will be remapped) */
"ip\0"
"glColorP4uiv\0"
"\0"
- /* _mesa_function_pool[4251]: Vertex4dv (offset 143) */
+ /* _mesa_function_pool[4272]: Vertex4dv (offset 143) */
"p\0"
"glVertex4dv\0"
"\0"
- /* _mesa_function_pool[4266]: StencilMaskSeparate (will be remapped) */
+ /* _mesa_function_pool[4287]: StencilMaskSeparate (will be remapped) */
"ii\0"
"glStencilMaskSeparate\0"
"\0"
- /* _mesa_function_pool[4292]: ProgramLocalParameter4dARB (will be remapped) */
+ /* _mesa_function_pool[4313]: ProgramLocalParameter4dARB (will be remapped) */
"iidddd\0"
"glProgramLocalParameter4dARB\0"
"\0"
- /* _mesa_function_pool[4329]: CompressedTexImage3DARB (will be remapped) */
+ /* _mesa_function_pool[4350]: CompressedTexImage3DARB (will be remapped) */
"iiiiiiiip\0"
"glCompressedTexImage3D\0"
"glCompressedTexImage3DARB\0"
"\0"
- /* _mesa_function_pool[4389]: Color3sv (offset 18) */
+ /* _mesa_function_pool[4410]: Color3sv (offset 18) */
"p\0"
"glColor3sv\0"
"\0"
- /* _mesa_function_pool[4403]: GetConvolutionParameteriv (offset 358) */
+ /* _mesa_function_pool[4424]: GetConvolutionParameteriv (offset 358) */
"iip\0"
"glGetConvolutionParameteriv\0"
"glGetConvolutionParameterivEXT\0"
"\0"
- /* _mesa_function_pool[4467]: DeleteSamplers (will be remapped) */
+ /* _mesa_function_pool[4488]: DeleteSamplers (will be remapped) */
"ip\0"
"glDeleteSamplers\0"
"\0"
- /* _mesa_function_pool[4488]: VertexAttrib1fARB (will be remapped) */
+ /* _mesa_function_pool[4509]: VertexAttrib1fARB (will be remapped) */
"if\0"
"glVertexAttrib1f\0"
"glVertexAttrib1fARB\0"
"\0"
- /* _mesa_function_pool[4529]: Vertex2dv (offset 127) */
+ /* _mesa_function_pool[4550]: Vertex2dv (offset 127) */
"p\0"
"glVertex2dv\0"
"\0"
- /* _mesa_function_pool[4544]: TestFenceNV (will be remapped) */
+ /* _mesa_function_pool[4565]: TestFenceNV (will be remapped) */
"i\0"
"glTestFenceNV\0"
"\0"
- /* _mesa_function_pool[4561]: GetVertexAttribIuivEXT (will be remapped) */
+ /* _mesa_function_pool[4582]: GetVertexAttribIuivEXT (will be remapped) */
"iip\0"
"glGetVertexAttribIuivEXT\0"
"glGetVertexAttribIuiv\0"
"\0"
- /* _mesa_function_pool[4613]: MultiTexCoord1fvARB (offset 379) */
+ /* _mesa_function_pool[4634]: MultiTexCoord1fvARB (offset 379) */
"ip\0"
"glMultiTexCoord1fv\0"
"glMultiTexCoord1fvARB\0"
"\0"
- /* _mesa_function_pool[4658]: TexCoord3iv (offset 115) */
+ /* _mesa_function_pool[4679]: TexCoord3iv (offset 115) */
"p\0"
"glTexCoord3iv\0"
"\0"
- /* _mesa_function_pool[4675]: Uniform2uivEXT (will be remapped) */
+ /* _mesa_function_pool[4696]: Uniform2uivEXT (will be remapped) */
"iip\0"
"glUniform2uivEXT\0"
"glUniform2uiv\0"
"\0"
- /* _mesa_function_pool[4711]: ColorFragmentOp2ATI (will be remapped) */
+ /* _mesa_function_pool[4732]: ColorFragmentOp2ATI (will be remapped) */
"iiiiiiiiii\0"
"glColorFragmentOp2ATI\0"
"\0"
- /* _mesa_function_pool[4745]: SecondaryColorPointerListIBM (dynamic) */
+ /* _mesa_function_pool[4766]: TexStorage2D (will be remapped) */
+ "iiiii\0"
+ "glTexStorage2D\0"
+ "\0"
+ /* _mesa_function_pool[4788]: SecondaryColorPointerListIBM (dynamic) */
"iiipi\0"
"glSecondaryColorPointerListIBM\0"
"\0"
- /* _mesa_function_pool[4783]: GetPixelTexGenParameterivSGIS (will be remapped) */
+ /* _mesa_function_pool[4826]: GetPixelTexGenParameterivSGIS (will be remapped) */
"ip\0"
"glGetPixelTexGenParameterivSGIS\0"
"\0"
- /* _mesa_function_pool[4819]: Color3fv (offset 14) */
+ /* _mesa_function_pool[4862]: Color3fv (offset 14) */
"p\0"
"glColor3fv\0"
"\0"
- /* _mesa_function_pool[4833]: GetnPixelMapfvARB (will be remapped) */
+ /* _mesa_function_pool[4876]: GetnPixelMapfvARB (will be remapped) */
"iip\0"
"glGetnPixelMapfvARB\0"
"\0"
- /* _mesa_function_pool[4858]: ReplacementCodeubSUN (dynamic) */
+ /* _mesa_function_pool[4901]: TextureStorage1DEXT (will be remapped) */
+ "iiiii\0"
+ "glTextureStorage1DEXT\0"
+ "\0"
+ /* _mesa_function_pool[4930]: ReplacementCodeubSUN (dynamic) */
"i\0"
"glReplacementCodeubSUN\0"
"\0"
- /* _mesa_function_pool[4884]: FinishAsyncSGIX (dynamic) */
+ /* _mesa_function_pool[4956]: FinishAsyncSGIX (dynamic) */
"p\0"
"glFinishAsyncSGIX\0"
"\0"
- /* _mesa_function_pool[4905]: GetnUniformfvARB (will be remapped) */
+ /* _mesa_function_pool[4977]: GetnUniformfvARB (will be remapped) */
"iiip\0"
"glGetnUniformfvARB\0"
"\0"
- /* _mesa_function_pool[4930]: GetDebugLogMESA (dynamic) */
+ /* _mesa_function_pool[5002]: GetDebugLogMESA (dynamic) */
"iiiipp\0"
"glGetDebugLogMESA\0"
"\0"
- /* _mesa_function_pool[4956]: FogCoorddEXT (will be remapped) */
+ /* _mesa_function_pool[5028]: FogCoorddEXT (will be remapped) */
"d\0"
"glFogCoordd\0"
"glFogCoorddEXT\0"
"\0"
- /* _mesa_function_pool[4986]: BeginConditionalRenderNV (will be remapped) */
+ /* _mesa_function_pool[5058]: BeginConditionalRenderNV (will be remapped) */
"ii\0"
"glBeginConditionalRenderNV\0"
"glBeginConditionalRender\0"
"\0"
- /* _mesa_function_pool[5042]: Color4ubVertex3fSUN (dynamic) */
+ /* _mesa_function_pool[5114]: Color4ubVertex3fSUN (dynamic) */
"iiiifff\0"
"glColor4ubVertex3fSUN\0"
"\0"
- /* _mesa_function_pool[5073]: FogCoordfEXT (will be remapped) */
+ /* _mesa_function_pool[5145]: FogCoordfEXT (will be remapped) */
"f\0"
"glFogCoordf\0"
"glFogCoordfEXT\0"
"\0"
- /* _mesa_function_pool[5103]: PointSize (offset 173) */
+ /* _mesa_function_pool[5175]: PointSize (offset 173) */
"f\0"
"glPointSize\0"
"\0"
- /* _mesa_function_pool[5118]: VertexAttribI2uivEXT (will be remapped) */
+ /* _mesa_function_pool[5190]: VertexAttribI2uivEXT (will be remapped) */
"ip\0"
"glVertexAttribI2uivEXT\0"
"glVertexAttribI2uiv\0"
"\0"
- /* _mesa_function_pool[5165]: TexCoord2fVertex3fSUN (dynamic) */
+ /* _mesa_function_pool[5237]: TexCoord2fVertex3fSUN (dynamic) */
"fffff\0"
"glTexCoord2fVertex3fSUN\0"
"\0"
- /* _mesa_function_pool[5196]: PopName (offset 200) */
+ /* _mesa_function_pool[5268]: PopName (offset 200) */
"\0"
"glPopName\0"
"\0"
- /* _mesa_function_pool[5208]: GetSamplerParameterfv (will be remapped) */
+ /* _mesa_function_pool[5280]: GetSamplerParameterfv (will be remapped) */
"iip\0"
"glGetSamplerParameterfv\0"
"\0"
- /* _mesa_function_pool[5237]: GlobalAlphaFactoriSUN (dynamic) */
+ /* _mesa_function_pool[5309]: GlobalAlphaFactoriSUN (dynamic) */
"i\0"
"glGlobalAlphaFactoriSUN\0"
"\0"
- /* _mesa_function_pool[5264]: VertexAttrib2dNV (will be remapped) */
+ /* _mesa_function_pool[5336]: VertexAttrib2dNV (will be remapped) */
"idd\0"
"glVertexAttrib2dNV\0"
"\0"
- /* _mesa_function_pool[5288]: GetProgramInfoLog (will be remapped) */
+ /* _mesa_function_pool[5360]: GetProgramInfoLog (will be remapped) */
"iipp\0"
"glGetProgramInfoLog\0"
"\0"
- /* _mesa_function_pool[5314]: VertexP2ui (will be remapped) */
+ /* _mesa_function_pool[5386]: VertexP2ui (will be remapped) */
"ii\0"
"glVertexP2ui\0"
"\0"
- /* _mesa_function_pool[5331]: VertexAttrib4NbvARB (will be remapped) */
+ /* _mesa_function_pool[5403]: VertexAttrib4NbvARB (will be remapped) */
"ip\0"
"glVertexAttrib4Nbv\0"
"glVertexAttrib4NbvARB\0"
"\0"
- /* _mesa_function_pool[5376]: GetActiveAttribARB (will be remapped) */
+ /* _mesa_function_pool[5448]: GetActiveAttribARB (will be remapped) */
"iiipppp\0"
"glGetActiveAttrib\0"
"glGetActiveAttribARB\0"
"\0"
- /* _mesa_function_pool[5424]: Vertex4sv (offset 149) */
+ /* _mesa_function_pool[5496]: Vertex4sv (offset 149) */
"p\0"
"glVertex4sv\0"
"\0"
- /* _mesa_function_pool[5439]: VertexAttrib4ubNV (will be remapped) */
+ /* _mesa_function_pool[5511]: VertexAttrib4ubNV (will be remapped) */
"iiiii\0"
"glVertexAttrib4ubNV\0"
"\0"
- /* _mesa_function_pool[5466]: VertexAttribI1ivEXT (will be remapped) */
+ /* _mesa_function_pool[5538]: VertexAttribI1ivEXT (will be remapped) */
"ip\0"
"glVertexAttribI1ivEXT\0"
"glVertexAttribI1iv\0"
"\0"
- /* _mesa_function_pool[5511]: ClampColor (will be remapped) */
+ /* _mesa_function_pool[5583]: ClampColor (will be remapped) */
"ii\0"
"glClampColor\0"
"\0"
- /* _mesa_function_pool[5528]: TextureRangeAPPLE (will be remapped) */
+ /* _mesa_function_pool[5600]: TextureRangeAPPLE (will be remapped) */
"iip\0"
"glTextureRangeAPPLE\0"
"\0"
- /* _mesa_function_pool[5553]: GetTexEnvfv (offset 276) */
+ /* _mesa_function_pool[5625]: GetTexEnvfv (offset 276) */
"iip\0"
"glGetTexEnvfv\0"
"\0"
- /* _mesa_function_pool[5572]: VertexAttribP2uiv (will be remapped) */
+ /* _mesa_function_pool[5644]: VertexAttribP2uiv (will be remapped) */
"iiip\0"
"glVertexAttribP2uiv\0"
"\0"
- /* _mesa_function_pool[5598]: BindTransformFeedback (will be remapped) */
+ /* _mesa_function_pool[5670]: BindTransformFeedback (will be remapped) */
"ii\0"
"glBindTransformFeedback\0"
"\0"
- /* _mesa_function_pool[5626]: TexCoord2fColor4fNormal3fVertex3fSUN (dynamic) */
+ /* _mesa_function_pool[5698]: TexCoord2fColor4fNormal3fVertex3fSUN (dynamic) */
"ffffffffffff\0"
"glTexCoord2fColor4fNormal3fVertex3fSUN\0"
"\0"
- /* _mesa_function_pool[5679]: Indexub (offset 315) */
+ /* _mesa_function_pool[5751]: Indexub (offset 315) */
"i\0"
"glIndexub\0"
"\0"
- /* _mesa_function_pool[5692]: VertexAttrib4fNV (will be remapped) */
+ /* _mesa_function_pool[5764]: VertexAttrib4fNV (will be remapped) */
"iffff\0"
"glVertexAttrib4fNV\0"
"\0"
- /* _mesa_function_pool[5718]: TexEnvi (offset 186) */
+ /* _mesa_function_pool[5790]: TexEnvi (offset 186) */
"iii\0"
"glTexEnvi\0"
"\0"
- /* _mesa_function_pool[5733]: GetClipPlane (offset 259) */
+ /* _mesa_function_pool[5805]: GetClipPlane (offset 259) */
"ip\0"
"glGetClipPlane\0"
"\0"
- /* _mesa_function_pool[5752]: CombinerParameterfvNV (will be remapped) */
+ /* _mesa_function_pool[5824]: CombinerParameterfvNV (will be remapped) */
"ip\0"
"glCombinerParameterfvNV\0"
"\0"
- /* _mesa_function_pool[5780]: TexCoordP4uiv (will be remapped) */
+ /* _mesa_function_pool[5852]: TexCoordP4uiv (will be remapped) */
"ip\0"
"glTexCoordP4uiv\0"
"\0"
- /* _mesa_function_pool[5800]: VertexAttribs3dvNV (will be remapped) */
+ /* _mesa_function_pool[5872]: VertexAttribs3dvNV (will be remapped) */
"iip\0"
"glVertexAttribs3dvNV\0"
"\0"
- /* _mesa_function_pool[5826]: VertexAttribI2uiEXT (will be remapped) */
+ /* _mesa_function_pool[5898]: VertexAttribI2uiEXT (will be remapped) */
"iii\0"
"glVertexAttribI2uiEXT\0"
"glVertexAttribI2ui\0"
"\0"
- /* _mesa_function_pool[5872]: VertexAttribs4fvNV (will be remapped) */
+ /* _mesa_function_pool[5944]: VertexAttribs4fvNV (will be remapped) */
"iip\0"
"glVertexAttribs4fvNV\0"
"\0"
- /* _mesa_function_pool[5898]: VertexArrayRangeNV (will be remapped) */
+ /* _mesa_function_pool[5970]: VertexArrayRangeNV (will be remapped) */
"ip\0"
"glVertexArrayRangeNV\0"
"\0"
- /* _mesa_function_pool[5923]: FragmentLightiSGIX (dynamic) */
+ /* _mesa_function_pool[5995]: FragmentLightiSGIX (dynamic) */
"iii\0"
"glFragmentLightiSGIX\0"
"\0"
- /* _mesa_function_pool[5949]: PolygonOffsetEXT (will be remapped) */
+ /* _mesa_function_pool[6021]: PolygonOffsetEXT (will be remapped) */
"ff\0"
"glPolygonOffsetEXT\0"
"\0"
- /* _mesa_function_pool[5972]: VertexAttribI4uivEXT (will be remapped) */
+ /* _mesa_function_pool[6044]: VertexAttribI4uivEXT (will be remapped) */
"ip\0"
"glVertexAttribI4uivEXT\0"
"glVertexAttribI4uiv\0"
"\0"
- /* _mesa_function_pool[6019]: PollAsyncSGIX (dynamic) */
+ /* _mesa_function_pool[6091]: PollAsyncSGIX (dynamic) */
"p\0"
"glPollAsyncSGIX\0"
"\0"
- /* _mesa_function_pool[6038]: DeleteFragmentShaderATI (will be remapped) */
+ /* _mesa_function_pool[6110]: DeleteFragmentShaderATI (will be remapped) */
"i\0"
"glDeleteFragmentShaderATI\0"
"\0"
- /* _mesa_function_pool[6067]: Scaled (offset 301) */
+ /* _mesa_function_pool[6139]: Scaled (offset 301) */
"ddd\0"
"glScaled\0"
"\0"
- /* _mesa_function_pool[6081]: ResumeTransformFeedback (will be remapped) */
+ /* _mesa_function_pool[6153]: ResumeTransformFeedback (will be remapped) */
"\0"
"glResumeTransformFeedback\0"
"\0"
- /* _mesa_function_pool[6109]: Scalef (offset 302) */
+ /* _mesa_function_pool[6181]: Scalef (offset 302) */
"fff\0"
"glScalef\0"
"\0"
- /* _mesa_function_pool[6123]: TexCoord2fNormal3fVertex3fvSUN (dynamic) */
+ /* _mesa_function_pool[6195]: TexCoord2fNormal3fVertex3fvSUN (dynamic) */
"ppp\0"
"glTexCoord2fNormal3fVertex3fvSUN\0"
"\0"
- /* _mesa_function_pool[6161]: ProgramEnvParameters4fvEXT (will be remapped) */
+ /* _mesa_function_pool[6233]: ProgramEnvParameters4fvEXT (will be remapped) */
"iiip\0"
"glProgramEnvParameters4fvEXT\0"
"\0"
- /* _mesa_function_pool[6196]: MultTransposeMatrixdARB (will be remapped) */
+ /* _mesa_function_pool[6268]: MultTransposeMatrixdARB (will be remapped) */
"p\0"
"glMultTransposeMatrixd\0"
"glMultTransposeMatrixdARB\0"
"\0"
- /* _mesa_function_pool[6248]: ColorMaskIndexedEXT (will be remapped) */
+ /* _mesa_function_pool[6320]: ColorMaskIndexedEXT (will be remapped) */
"iiiii\0"
"glColorMaskIndexedEXT\0"
"glColorMaski\0"
"\0"
- /* _mesa_function_pool[6290]: ObjectUnpurgeableAPPLE (will be remapped) */
+ /* _mesa_function_pool[6362]: ObjectUnpurgeableAPPLE (will be remapped) */
"iii\0"
"glObjectUnpurgeableAPPLE\0"
"\0"
- /* _mesa_function_pool[6320]: TexCoordP3ui (will be remapped) */
+ /* _mesa_function_pool[6392]: TexCoordP3ui (will be remapped) */
"ii\0"
"glTexCoordP3ui\0"
"\0"
- /* _mesa_function_pool[6339]: AlphaFunc (offset 240) */
+ /* _mesa_function_pool[6411]: AlphaFunc (offset 240) */
"if\0"
"glAlphaFunc\0"
"\0"
- /* _mesa_function_pool[6355]: WindowPos2svMESA (will be remapped) */
+ /* _mesa_function_pool[6427]: WindowPos2svMESA (will be remapped) */
"p\0"
"glWindowPos2sv\0"
"glWindowPos2svARB\0"
"glWindowPos2svMESA\0"
"\0"
- /* _mesa_function_pool[6410]: EdgeFlag (offset 41) */
+ /* _mesa_function_pool[6482]: EdgeFlag (offset 41) */
"i\0"
"glEdgeFlag\0"
"\0"
- /* _mesa_function_pool[6424]: TexCoord2iv (offset 107) */
+ /* _mesa_function_pool[6496]: TexCoord2iv (offset 107) */
"p\0"
"glTexCoord2iv\0"
"\0"
- /* _mesa_function_pool[6441]: CompressedTexImage1DARB (will be remapped) */
+ /* _mesa_function_pool[6513]: CompressedTexImage1DARB (will be remapped) */
"iiiiiip\0"
"glCompressedTexImage1D\0"
"glCompressedTexImage1DARB\0"
"\0"
- /* _mesa_function_pool[6499]: Rotated (offset 299) */
+ /* _mesa_function_pool[6571]: Rotated (offset 299) */
"dddd\0"
"glRotated\0"
"\0"
- /* _mesa_function_pool[6515]: GetTexParameterIuivEXT (will be remapped) */
+ /* _mesa_function_pool[6587]: GetTexParameterIuivEXT (will be remapped) */
"iip\0"
"glGetTexParameterIuivEXT\0"
"glGetTexParameterIuiv\0"
"\0"
- /* _mesa_function_pool[6567]: VertexAttrib2sNV (will be remapped) */
+ /* _mesa_function_pool[6639]: VertexAttrib2sNV (will be remapped) */
"iii\0"
"glVertexAttrib2sNV\0"
"\0"
- /* _mesa_function_pool[6591]: ReadPixels (offset 256) */
+ /* _mesa_function_pool[6663]: ReadPixels (offset 256) */
"iiiiiip\0"
"glReadPixels\0"
"\0"
- /* _mesa_function_pool[6613]: VertexAttribDivisorARB (will be remapped) */
+ /* _mesa_function_pool[6685]: VertexAttribDivisorARB (will be remapped) */
"ii\0"
"glVertexAttribDivisorARB\0"
"\0"
- /* _mesa_function_pool[6642]: EdgeFlagv (offset 42) */
+ /* _mesa_function_pool[6714]: EdgeFlagv (offset 42) */
"p\0"
"glEdgeFlagv\0"
"\0"
- /* _mesa_function_pool[6657]: NormalPointerListIBM (dynamic) */
+ /* _mesa_function_pool[6729]: NormalPointerListIBM (dynamic) */
"iipi\0"
"glNormalPointerListIBM\0"
"\0"
- /* _mesa_function_pool[6686]: IndexPointerEXT (will be remapped) */
+ /* _mesa_function_pool[6758]: IndexPointerEXT (will be remapped) */
"iiip\0"
"glIndexPointerEXT\0"
"\0"
- /* _mesa_function_pool[6710]: Color4iv (offset 32) */
+ /* _mesa_function_pool[6782]: Color4iv (offset 32) */
"p\0"
"glColor4iv\0"
"\0"
- /* _mesa_function_pool[6724]: TexParameterf (offset 178) */
+ /* _mesa_function_pool[6796]: TexParameterf (offset 178) */
"iif\0"
"glTexParameterf\0"
"\0"
- /* _mesa_function_pool[6745]: TexParameteri (offset 180) */
+ /* _mesa_function_pool[6817]: TexParameteri (offset 180) */
"iii\0"
"glTexParameteri\0"
"\0"
- /* _mesa_function_pool[6766]: NormalPointerEXT (will be remapped) */
+ /* _mesa_function_pool[6838]: NormalPointerEXT (will be remapped) */
"iiip\0"
"glNormalPointerEXT\0"
"\0"
- /* _mesa_function_pool[6791]: MultiTexCoord3dARB (offset 392) */
+ /* _mesa_function_pool[6863]: MultiTexCoord3dARB (offset 392) */
"iddd\0"
"glMultiTexCoord3d\0"
"glMultiTexCoord3dARB\0"
"\0"
- /* _mesa_function_pool[6836]: MultiTexCoord2iARB (offset 388) */
+ /* _mesa_function_pool[6908]: MultiTexCoord2iARB (offset 388) */
"iii\0"
"glMultiTexCoord2i\0"
"glMultiTexCoord2iARB\0"
"\0"
- /* _mesa_function_pool[6880]: DrawPixels (offset 257) */
+ /* _mesa_function_pool[6952]: DrawPixels (offset 257) */
"iiiip\0"
"glDrawPixels\0"
"\0"
- /* _mesa_function_pool[6900]: ReplacementCodeuiTexCoord2fNormal3fVertex3fSUN (dynamic) */
+ /* _mesa_function_pool[6972]: ReplacementCodeuiTexCoord2fNormal3fVertex3fSUN (dynamic) */
"iffffffff\0"
"glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN\0"
"\0"
- /* _mesa_function_pool[6960]: MultiTexCoord2svARB (offset 391) */
+ /* _mesa_function_pool[7032]: MultiTexCoord2svARB (offset 391) */
"ip\0"
"glMultiTexCoord2sv\0"
"glMultiTexCoord2svARB\0"
"\0"
- /* _mesa_function_pool[7005]: ReplacementCodeubvSUN (dynamic) */
+ /* _mesa_function_pool[7077]: ReplacementCodeubvSUN (dynamic) */
"p\0"
"glReplacementCodeubvSUN\0"
"\0"
- /* _mesa_function_pool[7032]: Uniform3iARB (will be remapped) */
+ /* _mesa_function_pool[7104]: Uniform3iARB (will be remapped) */
"iiii\0"
"glUniform3i\0"
"glUniform3iARB\0"
"\0"
- /* _mesa_function_pool[7065]: DrawTransformFeedback (will be remapped) */
+ /* _mesa_function_pool[7137]: DrawTransformFeedback (will be remapped) */
"ii\0"
"glDrawTransformFeedback\0"
"\0"
- /* _mesa_function_pool[7093]: DrawElementsInstancedARB (will be remapped) */
+ /* _mesa_function_pool[7165]: DrawElementsInstancedARB (will be remapped) */
"iiipi\0"
"glDrawElementsInstancedARB\0"
"glDrawElementsInstancedEXT\0"
"glDrawElementsInstanced\0"
"\0"
- /* _mesa_function_pool[7178]: GetShaderInfoLog (will be remapped) */
+ /* _mesa_function_pool[7250]: GetShaderInfoLog (will be remapped) */
"iipp\0"
"glGetShaderInfoLog\0"
"\0"
- /* _mesa_function_pool[7203]: WeightivARB (dynamic) */
+ /* _mesa_function_pool[7275]: WeightivARB (dynamic) */
"ip\0"
"glWeightivARB\0"
"\0"
- /* _mesa_function_pool[7221]: PollInstrumentsSGIX (dynamic) */
+ /* _mesa_function_pool[7293]: PollInstrumentsSGIX (dynamic) */
"p\0"
"glPollInstrumentsSGIX\0"
"\0"
- /* _mesa_function_pool[7246]: GlobalAlphaFactordSUN (dynamic) */
+ /* _mesa_function_pool[7318]: GlobalAlphaFactordSUN (dynamic) */
"d\0"
"glGlobalAlphaFactordSUN\0"
"\0"
- /* _mesa_function_pool[7273]: GetFinalCombinerInputParameterfvNV (will be remapped) */
+ /* _mesa_function_pool[7345]: GetFinalCombinerInputParameterfvNV (will be remapped) */
"iip\0"
"glGetFinalCombinerInputParameterfvNV\0"
"\0"
- /* _mesa_function_pool[7315]: GenerateMipmapEXT (will be remapped) */
+ /* _mesa_function_pool[7387]: GenerateMipmapEXT (will be remapped) */
"i\0"
"glGenerateMipmap\0"
"glGenerateMipmapEXT\0"
"\0"
- /* _mesa_function_pool[7355]: GenLists (offset 5) */
+ /* _mesa_function_pool[7427]: GenLists (offset 5) */
"i\0"
"glGenLists\0"
"\0"
- /* _mesa_function_pool[7369]: DepthRangef (will be remapped) */
+ /* _mesa_function_pool[7441]: DepthRangef (will be remapped) */
"ff\0"
"glDepthRangef\0"
"\0"
- /* _mesa_function_pool[7387]: GetMapAttribParameterivNV (dynamic) */
+ /* _mesa_function_pool[7459]: GetMapAttribParameterivNV (dynamic) */
"iiip\0"
"glGetMapAttribParameterivNV\0"
"\0"
- /* _mesa_function_pool[7421]: CreateShaderObjectARB (will be remapped) */
+ /* _mesa_function_pool[7493]: CreateShaderObjectARB (will be remapped) */
"i\0"
"glCreateShaderObjectARB\0"
"\0"
- /* _mesa_function_pool[7448]: GetSharpenTexFuncSGIS (dynamic) */
+ /* _mesa_function_pool[7520]: GetSharpenTexFuncSGIS (dynamic) */
"ip\0"
"glGetSharpenTexFuncSGIS\0"
"\0"
- /* _mesa_function_pool[7476]: BufferDataARB (will be remapped) */
+ /* _mesa_function_pool[7548]: BufferDataARB (will be remapped) */
"iipi\0"
"glBufferData\0"
"glBufferDataARB\0"
"\0"
- /* _mesa_function_pool[7511]: FlushVertexArrayRangeNV (will be remapped) */
+ /* _mesa_function_pool[7583]: FlushVertexArrayRangeNV (will be remapped) */
"\0"
"glFlushVertexArrayRangeNV\0"
"\0"
- /* _mesa_function_pool[7539]: MapGrid2d (offset 226) */
+ /* _mesa_function_pool[7611]: MapGrid2d (offset 226) */
"iddidd\0"
"glMapGrid2d\0"
"\0"
- /* _mesa_function_pool[7559]: MapGrid2f (offset 227) */
+ /* _mesa_function_pool[7631]: MapGrid2f (offset 227) */
"iffiff\0"
"glMapGrid2f\0"
"\0"
- /* _mesa_function_pool[7579]: SampleMapATI (will be remapped) */
+ /* _mesa_function_pool[7651]: SampleMapATI (will be remapped) */
"iii\0"
"glSampleMapATI\0"
"\0"
- /* _mesa_function_pool[7599]: VertexPointerEXT (will be remapped) */
+ /* _mesa_function_pool[7671]: VertexPointerEXT (will be remapped) */
"iiiip\0"
"glVertexPointerEXT\0"
"\0"
- /* _mesa_function_pool[7625]: GetTexFilterFuncSGIS (dynamic) */
+ /* _mesa_function_pool[7697]: GetTexFilterFuncSGIS (dynamic) */
"iip\0"
"glGetTexFilterFuncSGIS\0"
"\0"
- /* _mesa_function_pool[7653]: Scissor (offset 176) */
+ /* _mesa_function_pool[7725]: Scissor (offset 176) */
"iiii\0"
"glScissor\0"
"\0"
- /* _mesa_function_pool[7669]: Fogf (offset 153) */
+ /* _mesa_function_pool[7741]: Fogf (offset 153) */
"if\0"
"glFogf\0"
"\0"
- /* _mesa_function_pool[7680]: ReplacementCodeuiColor4ubVertex3fvSUN (dynamic) */
+ /* _mesa_function_pool[7752]: ReplacementCodeuiColor4ubVertex3fvSUN (dynamic) */
"ppp\0"
"glReplacementCodeuiColor4ubVertex3fvSUN\0"
"\0"
- /* _mesa_function_pool[7725]: TexSubImage1D (offset 332) */
+ /* _mesa_function_pool[7797]: TexSubImage1D (offset 332) */
"iiiiiip\0"
"glTexSubImage1D\0"
"glTexSubImage1DEXT\0"
"\0"
- /* _mesa_function_pool[7769]: VertexAttrib1sARB (will be remapped) */
+ /* _mesa_function_pool[7841]: VertexAttrib1sARB (will be remapped) */
"ii\0"
"glVertexAttrib1s\0"
"glVertexAttrib1sARB\0"
"\0"
- /* _mesa_function_pool[7810]: FenceSync (will be remapped) */
+ /* _mesa_function_pool[7882]: FenceSync (will be remapped) */
"ii\0"
"glFenceSync\0"
"\0"
- /* _mesa_function_pool[7826]: Color4usv (offset 40) */
+ /* _mesa_function_pool[7898]: Color4usv (offset 40) */
"p\0"
"glColor4usv\0"
"\0"
- /* _mesa_function_pool[7841]: Fogi (offset 155) */
+ /* _mesa_function_pool[7913]: Fogi (offset 155) */
"ii\0"
"glFogi\0"
"\0"
- /* _mesa_function_pool[7852]: DepthRange (offset 288) */
+ /* _mesa_function_pool[7924]: DepthRange (offset 288) */
"dd\0"
"glDepthRange\0"
"\0"
- /* _mesa_function_pool[7869]: RasterPos3iv (offset 75) */
+ /* _mesa_function_pool[7941]: RasterPos3iv (offset 75) */
"p\0"
"glRasterPos3iv\0"
"\0"
- /* _mesa_function_pool[7887]: FinalCombinerInputNV (will be remapped) */
+ /* _mesa_function_pool[7959]: FinalCombinerInputNV (will be remapped) */
"iiii\0"
"glFinalCombinerInputNV\0"
"\0"
- /* _mesa_function_pool[7916]: TexCoord2i (offset 106) */
+ /* _mesa_function_pool[7988]: TexCoord2i (offset 106) */
"ii\0"
"glTexCoord2i\0"
"\0"
- /* _mesa_function_pool[7933]: PixelMapfv (offset 251) */
+ /* _mesa_function_pool[8005]: PixelMapfv (offset 251) */
"iip\0"
"glPixelMapfv\0"
"\0"
- /* _mesa_function_pool[7951]: Color4ui (offset 37) */
+ /* _mesa_function_pool[8023]: Color4ui (offset 37) */
"iiii\0"
"glColor4ui\0"
"\0"
- /* _mesa_function_pool[7968]: RasterPos3s (offset 76) */
+ /* _mesa_function_pool[8040]: RasterPos3s (offset 76) */
"iii\0"
"glRasterPos3s\0"
"\0"
- /* _mesa_function_pool[7987]: Color3usv (offset 24) */
+ /* _mesa_function_pool[8059]: Color3usv (offset 24) */
"p\0"
"glColor3usv\0"
"\0"
- /* _mesa_function_pool[8002]: FlushRasterSGIX (dynamic) */
+ /* _mesa_function_pool[8074]: FlushRasterSGIX (dynamic) */
"\0"
"glFlushRasterSGIX\0"
"\0"
- /* _mesa_function_pool[8022]: TexCoord2f (offset 104) */
+ /* _mesa_function_pool[8094]: TexCoord2f (offset 104) */
"ff\0"
"glTexCoord2f\0"
"\0"
- /* _mesa_function_pool[8039]: ReplacementCodeuiTexCoord2fVertex3fSUN (dynamic) */
+ /* _mesa_function_pool[8111]: ReplacementCodeuiTexCoord2fVertex3fSUN (dynamic) */
"ifffff\0"
"glReplacementCodeuiTexCoord2fVertex3fSUN\0"
"\0"
- /* _mesa_function_pool[8088]: TexCoord2d (offset 102) */
+ /* _mesa_function_pool[8160]: TexCoord2d (offset 102) */
"dd\0"
"glTexCoord2d\0"
"\0"
- /* _mesa_function_pool[8105]: RasterPos3d (offset 70) */
+ /* _mesa_function_pool[8177]: RasterPos3d (offset 70) */
"ddd\0"
"glRasterPos3d\0"
"\0"
- /* _mesa_function_pool[8124]: RasterPos3f (offset 72) */
+ /* _mesa_function_pool[8196]: RasterPos3f (offset 72) */
"fff\0"
"glRasterPos3f\0"
"\0"
- /* _mesa_function_pool[8143]: Uniform1fARB (will be remapped) */
+ /* _mesa_function_pool[8215]: Uniform1fARB (will be remapped) */
"if\0"
"glUniform1f\0"
"glUniform1fARB\0"
"\0"
- /* _mesa_function_pool[8174]: AreTexturesResident (offset 322) */
+ /* _mesa_function_pool[8246]: AreTexturesResident (offset 322) */
"ipp\0"
"glAreTexturesResident\0"
"glAreTexturesResidentEXT\0"
"\0"
- /* _mesa_function_pool[8226]: TexCoord2s (offset 108) */
+ /* _mesa_function_pool[8298]: TexCoord2s (offset 108) */
"ii\0"
"glTexCoord2s\0"
"\0"
- /* _mesa_function_pool[8243]: StencilOpSeparate (will be remapped) */
+ /* _mesa_function_pool[8315]: StencilOpSeparate (will be remapped) */
"iiii\0"
"glStencilOpSeparate\0"
"glStencilOpSeparateATI\0"
"\0"
- /* _mesa_function_pool[8292]: ColorTableParameteriv (offset 341) */
+ /* _mesa_function_pool[8364]: ColorTableParameteriv (offset 341) */
"iip\0"
"glColorTableParameteriv\0"
"glColorTableParameterivSGI\0"
"\0"
- /* _mesa_function_pool[8348]: FogCoordPointerListIBM (dynamic) */
+ /* _mesa_function_pool[8420]: FogCoordPointerListIBM (dynamic) */
"iipi\0"
"glFogCoordPointerListIBM\0"
"\0"
- /* _mesa_function_pool[8379]: WindowPos3dMESA (will be remapped) */
+ /* _mesa_function_pool[8451]: WindowPos3dMESA (will be remapped) */
"ddd\0"
"glWindowPos3d\0"
"glWindowPos3dARB\0"
"glWindowPos3dMESA\0"
"\0"
- /* _mesa_function_pool[8433]: Color4us (offset 39) */
+ /* _mesa_function_pool[8505]: Color4us (offset 39) */
"iiii\0"
"glColor4us\0"
"\0"
- /* _mesa_function_pool[8450]: PointParameterfvEXT (will be remapped) */
+ /* _mesa_function_pool[8522]: PointParameterfvEXT (will be remapped) */
"ip\0"
"glPointParameterfv\0"
"glPointParameterfvARB\0"
"glPointParameterfvEXT\0"
"glPointParameterfvSGIS\0"
"\0"
- /* _mesa_function_pool[8540]: Color3bv (offset 10) */
+ /* _mesa_function_pool[8612]: Color3bv (offset 10) */
"p\0"
"glColor3bv\0"
"\0"
- /* _mesa_function_pool[8554]: GetnCompressedTexImageARB (will be remapped) */
+ /* _mesa_function_pool[8626]: GetnCompressedTexImageARB (will be remapped) */
"iiip\0"
"glGetnCompressedTexImageARB\0"
"\0"
- /* _mesa_function_pool[8588]: WindowPos2fvMESA (will be remapped) */
+ /* _mesa_function_pool[8660]: WindowPos2fvMESA (will be remapped) */
"p\0"
"glWindowPos2fv\0"
"glWindowPos2fvARB\0"
"glWindowPos2fvMESA\0"
"\0"
- /* _mesa_function_pool[8643]: SecondaryColor3bvEXT (will be remapped) */
+ /* _mesa_function_pool[8715]: SecondaryColor3bvEXT (will be remapped) */
"p\0"
"glSecondaryColor3bv\0"
"glSecondaryColor3bvEXT\0"
"\0"
- /* _mesa_function_pool[8689]: VertexPointerListIBM (dynamic) */
+ /* _mesa_function_pool[8761]: VertexPointerListIBM (dynamic) */
"iiipi\0"
"glVertexPointerListIBM\0"
"\0"
- /* _mesa_function_pool[8719]: GetProgramLocalParameterfvARB (will be remapped) */
+ /* _mesa_function_pool[8791]: GetProgramLocalParameterfvARB (will be remapped) */
"iip\0"
"glGetProgramLocalParameterfvARB\0"
"\0"
- /* _mesa_function_pool[8756]: FragmentMaterialfSGIX (dynamic) */
+ /* _mesa_function_pool[8828]: FragmentMaterialfSGIX (dynamic) */
"iif\0"
"glFragmentMaterialfSGIX\0"
"\0"
- /* _mesa_function_pool[8785]: BindSampler (will be remapped) */
+ /* _mesa_function_pool[8857]: BindSampler (will be remapped) */
"ii\0"
"glBindSampler\0"
"\0"
- /* _mesa_function_pool[8803]: RenderbufferStorageEXT (will be remapped) */
+ /* _mesa_function_pool[8875]: RenderbufferStorageEXT (will be remapped) */
"iiii\0"
"glRenderbufferStorage\0"
"glRenderbufferStorageEXT\0"
"\0"
- /* _mesa_function_pool[8856]: IsFenceNV (will be remapped) */
+ /* _mesa_function_pool[8928]: IsFenceNV (will be remapped) */
"i\0"
"glIsFenceNV\0"
"\0"
- /* _mesa_function_pool[8871]: AttachObjectARB (will be remapped) */
+ /* _mesa_function_pool[8943]: AttachObjectARB (will be remapped) */
"ii\0"
"glAttachObjectARB\0"
"\0"
- /* _mesa_function_pool[8893]: GetFragmentLightivSGIX (dynamic) */
+ /* _mesa_function_pool[8965]: GetFragmentLightivSGIX (dynamic) */
"iip\0"
"glGetFragmentLightivSGIX\0"
"\0"
- /* _mesa_function_pool[8923]: UniformMatrix2fvARB (will be remapped) */
+ /* _mesa_function_pool[8995]: UniformMatrix2fvARB (will be remapped) */
"iiip\0"
"glUniformMatrix2fv\0"
"glUniformMatrix2fvARB\0"
"\0"
- /* _mesa_function_pool[8970]: MultiTexCoord2fARB (offset 386) */
+ /* _mesa_function_pool[9042]: MultiTexCoord2fARB (offset 386) */
"iff\0"
"glMultiTexCoord2f\0"
"glMultiTexCoord2fARB\0"
"\0"
- /* _mesa_function_pool[9014]: ColorTable (offset 339) */
+ /* _mesa_function_pool[9086]: ColorTable (offset 339) */
"iiiiip\0"
"glColorTable\0"
"glColorTableSGI\0"
"glColorTableEXT\0"
"\0"
- /* _mesa_function_pool[9067]: IndexPointer (offset 314) */
+ /* _mesa_function_pool[9139]: IndexPointer (offset 314) */
"iip\0"
"glIndexPointer\0"
"\0"
- /* _mesa_function_pool[9087]: Accum (offset 213) */
+ /* _mesa_function_pool[9159]: Accum (offset 213) */
"if\0"
"glAccum\0"
"\0"
- /* _mesa_function_pool[9099]: GetTexImage (offset 281) */
+ /* _mesa_function_pool[9171]: GetTexImage (offset 281) */
"iiiip\0"
"glGetTexImage\0"
"\0"
- /* _mesa_function_pool[9120]: MapControlPointsNV (dynamic) */
+ /* _mesa_function_pool[9192]: MapControlPointsNV (dynamic) */
"iiiiiiiip\0"
"glMapControlPointsNV\0"
"\0"
- /* _mesa_function_pool[9152]: ConvolutionFilter2D (offset 349) */
+ /* _mesa_function_pool[9224]: ConvolutionFilter2D (offset 349) */
"iiiiiip\0"
"glConvolutionFilter2D\0"
"glConvolutionFilter2DEXT\0"
"\0"
- /* _mesa_function_pool[9208]: Finish (offset 216) */
+ /* _mesa_function_pool[9280]: Finish (offset 216) */
"\0"
"glFinish\0"
"\0"
- /* _mesa_function_pool[9219]: MapParameterfvNV (dynamic) */
+ /* _mesa_function_pool[9291]: MapParameterfvNV (dynamic) */
"iip\0"
"glMapParameterfvNV\0"
"\0"
- /* _mesa_function_pool[9243]: ClearStencil (offset 207) */
+ /* _mesa_function_pool[9315]: ClearStencil (offset 207) */
"i\0"
"glClearStencil\0"
"\0"
- /* _mesa_function_pool[9261]: VertexAttrib3dvARB (will be remapped) */
+ /* _mesa_function_pool[9333]: VertexAttrib3dvARB (will be remapped) */
"ip\0"
"glVertexAttrib3dv\0"
"glVertexAttrib3dvARB\0"
"\0"
- /* _mesa_function_pool[9304]: Uniform4uivEXT (will be remapped) */
+ /* _mesa_function_pool[9376]: Uniform4uivEXT (will be remapped) */
"iip\0"
"glUniform4uivEXT\0"
"glUniform4uiv\0"
"\0"
- /* _mesa_function_pool[9340]: HintPGI (dynamic) */
+ /* _mesa_function_pool[9412]: HintPGI (dynamic) */
"ii\0"
"glHintPGI\0"
"\0"
- /* _mesa_function_pool[9354]: ConvolutionParameteriv (offset 353) */
+ /* _mesa_function_pool[9426]: ConvolutionParameteriv (offset 353) */
"iip\0"
"glConvolutionParameteriv\0"
"glConvolutionParameterivEXT\0"
"\0"
- /* _mesa_function_pool[9412]: Color4s (offset 33) */
+ /* _mesa_function_pool[9484]: Color4s (offset 33) */
"iiii\0"
"glColor4s\0"
"\0"
- /* _mesa_function_pool[9428]: InterleavedArrays (offset 317) */
+ /* _mesa_function_pool[9500]: InterleavedArrays (offset 317) */
"iip\0"
"glInterleavedArrays\0"
"\0"
- /* _mesa_function_pool[9453]: RasterPos2fv (offset 65) */
+ /* _mesa_function_pool[9525]: RasterPos2fv (offset 65) */
"p\0"
"glRasterPos2fv\0"
"\0"
- /* _mesa_function_pool[9471]: TexCoord1fv (offset 97) */
+ /* _mesa_function_pool[9543]: TexCoord1fv (offset 97) */
"p\0"
"glTexCoord1fv\0"
"\0"
- /* _mesa_function_pool[9488]: Vertex2d (offset 126) */
+ /* _mesa_function_pool[9560]: Vertex2d (offset 126) */
"dd\0"
"glVertex2d\0"
"\0"
- /* _mesa_function_pool[9503]: CullParameterdvEXT (dynamic) */
+ /* _mesa_function_pool[9575]: CullParameterdvEXT (dynamic) */
"ip\0"
"glCullParameterdvEXT\0"
"\0"
- /* _mesa_function_pool[9528]: ProgramNamedParameter4fNV (will be remapped) */
+ /* _mesa_function_pool[9600]: ProgramNamedParameter4fNV (will be remapped) */
"iipffff\0"
"glProgramNamedParameter4fNV\0"
"\0"
- /* _mesa_function_pool[9565]: Color3fVertex3fSUN (dynamic) */
+ /* _mesa_function_pool[9637]: Color3fVertex3fSUN (dynamic) */
"ffffff\0"
"glColor3fVertex3fSUN\0"
"\0"
- /* _mesa_function_pool[9594]: ProgramEnvParameter4fvARB (will be remapped) */
+ /* _mesa_function_pool[9666]: ProgramEnvParameter4fvARB (will be remapped) */
"iip\0"
"glProgramEnvParameter4fvARB\0"
"glProgramParameter4fvNV\0"
"\0"
- /* _mesa_function_pool[9651]: Color4i (offset 31) */
+ /* _mesa_function_pool[9723]: Color4i (offset 31) */
"iiii\0"
"glColor4i\0"
"\0"
- /* _mesa_function_pool[9667]: Color4f (offset 29) */
+ /* _mesa_function_pool[9739]: Color4f (offset 29) */
"ffff\0"
"glColor4f\0"
"\0"
- /* _mesa_function_pool[9683]: RasterPos4fv (offset 81) */
+ /* _mesa_function_pool[9755]: RasterPos4fv (offset 81) */
"p\0"
"glRasterPos4fv\0"
"\0"
- /* _mesa_function_pool[9701]: Color4d (offset 27) */
+ /* _mesa_function_pool[9773]: Color4d (offset 27) */
"dddd\0"
"glColor4d\0"
"\0"
- /* _mesa_function_pool[9717]: ClearIndex (offset 205) */
+ /* _mesa_function_pool[9789]: ClearIndex (offset 205) */
"f\0"
"glClearIndex\0"
"\0"
- /* _mesa_function_pool[9733]: Color4b (offset 25) */
+ /* _mesa_function_pool[9805]: Color4b (offset 25) */
"iiii\0"
"glColor4b\0"
"\0"
- /* _mesa_function_pool[9749]: LoadMatrixd (offset 292) */
+ /* _mesa_function_pool[9821]: LoadMatrixd (offset 292) */
"p\0"
"glLoadMatrixd\0"
"\0"
- /* _mesa_function_pool[9766]: FragmentLightModeliSGIX (dynamic) */
+ /* _mesa_function_pool[9838]: FragmentLightModeliSGIX (dynamic) */
"ii\0"
"glFragmentLightModeliSGIX\0"
"\0"
- /* _mesa_function_pool[9796]: RasterPos2dv (offset 63) */
+ /* _mesa_function_pool[9868]: RasterPos2dv (offset 63) */
"p\0"
"glRasterPos2dv\0"
"\0"
- /* _mesa_function_pool[9814]: ConvolutionParameterfv (offset 351) */
+ /* _mesa_function_pool[9886]: ConvolutionParameterfv (offset 351) */
"iip\0"
"glConvolutionParameterfv\0"
"glConvolutionParameterfvEXT\0"
"\0"
- /* _mesa_function_pool[9872]: TbufferMask3DFX (dynamic) */
+ /* _mesa_function_pool[9944]: TbufferMask3DFX (dynamic) */
"i\0"
"glTbufferMask3DFX\0"
"\0"
- /* _mesa_function_pool[9893]: GetTexGendv (offset 278) */
+ /* _mesa_function_pool[9965]: GetTexGendv (offset 278) */
"iip\0"
"glGetTexGendv\0"
"\0"
- /* _mesa_function_pool[9912]: GetVertexAttribfvNV (will be remapped) */
+ /* _mesa_function_pool[9984]: GetVertexAttribfvNV (will be remapped) */
"iip\0"
"glGetVertexAttribfvNV\0"
"\0"
- /* _mesa_function_pool[9939]: BeginTransformFeedbackEXT (will be remapped) */
+ /* _mesa_function_pool[10011]: BeginTransformFeedbackEXT (will be remapped) */
"i\0"
"glBeginTransformFeedbackEXT\0"
"glBeginTransformFeedback\0"
"\0"
- /* _mesa_function_pool[9995]: LoadProgramNV (will be remapped) */
+ /* _mesa_function_pool[10067]: LoadProgramNV (will be remapped) */
"iiip\0"
"glLoadProgramNV\0"
"\0"
- /* _mesa_function_pool[10017]: WaitSync (will be remapped) */
+ /* _mesa_function_pool[10089]: WaitSync (will be remapped) */
"iii\0"
"glWaitSync\0"
"\0"
- /* _mesa_function_pool[10033]: EndList (offset 1) */
+ /* _mesa_function_pool[10105]: EndList (offset 1) */
"\0"
"glEndList\0"
"\0"
- /* _mesa_function_pool[10045]: VertexP4ui (will be remapped) */
+ /* _mesa_function_pool[10117]: VertexP4ui (will be remapped) */
"ii\0"
"glVertexP4ui\0"
"\0"
- /* _mesa_function_pool[10062]: VertexAttrib4fvNV (will be remapped) */
+ /* _mesa_function_pool[10134]: VertexAttrib4fvNV (will be remapped) */
"ip\0"
"glVertexAttrib4fvNV\0"
"\0"
- /* _mesa_function_pool[10086]: GetAttachedObjectsARB (will be remapped) */
+ /* _mesa_function_pool[10158]: GetAttachedObjectsARB (will be remapped) */
"iipp\0"
"glGetAttachedObjectsARB\0"
"\0"
- /* _mesa_function_pool[10116]: Uniform3fvARB (will be remapped) */
+ /* _mesa_function_pool[10188]: Uniform3fvARB (will be remapped) */
"iip\0"
"glUniform3fv\0"
"glUniform3fvARB\0"
"\0"
- /* _mesa_function_pool[10150]: EvalCoord1fv (offset 231) */
+ /* _mesa_function_pool[10222]: EvalCoord1fv (offset 231) */
"p\0"
"glEvalCoord1fv\0"
"\0"
- /* _mesa_function_pool[10168]: DrawRangeElements (offset 338) */
+ /* _mesa_function_pool[10240]: DrawRangeElements (offset 338) */
"iiiiip\0"
"glDrawRangeElements\0"
"glDrawRangeElementsEXT\0"
"\0"
- /* _mesa_function_pool[10219]: EvalMesh2 (offset 238) */
+ /* _mesa_function_pool[10291]: EvalMesh2 (offset 238) */
"iiiii\0"
"glEvalMesh2\0"
"\0"
- /* _mesa_function_pool[10238]: Vertex4fv (offset 145) */
+ /* _mesa_function_pool[10310]: Vertex4fv (offset 145) */
"p\0"
"glVertex4fv\0"
"\0"
- /* _mesa_function_pool[10253]: GenTransformFeedbacks (will be remapped) */
+ /* _mesa_function_pool[10325]: GenTransformFeedbacks (will be remapped) */
"ip\0"
"glGenTransformFeedbacks\0"
"\0"
- /* _mesa_function_pool[10281]: SpriteParameterfvSGIX (dynamic) */
+ /* _mesa_function_pool[10353]: SpriteParameterfvSGIX (dynamic) */
"ip\0"
"glSpriteParameterfvSGIX\0"
"\0"
- /* _mesa_function_pool[10309]: CheckFramebufferStatusEXT (will be remapped) */
+ /* _mesa_function_pool[10381]: CheckFramebufferStatusEXT (will be remapped) */
"i\0"
"glCheckFramebufferStatus\0"
"glCheckFramebufferStatusEXT\0"
"\0"
- /* _mesa_function_pool[10365]: GlobalAlphaFactoruiSUN (dynamic) */
+ /* _mesa_function_pool[10437]: GlobalAlphaFactoruiSUN (dynamic) */
"i\0"
"glGlobalAlphaFactoruiSUN\0"
"\0"
- /* _mesa_function_pool[10393]: GetHandleARB (will be remapped) */
+ /* _mesa_function_pool[10465]: GetHandleARB (will be remapped) */
"i\0"
"glGetHandleARB\0"
"\0"
- /* _mesa_function_pool[10411]: GetVertexAttribivARB (will be remapped) */
+ /* _mesa_function_pool[10483]: GetVertexAttribivARB (will be remapped) */
"iip\0"
"glGetVertexAttribiv\0"
"glGetVertexAttribivARB\0"
"\0"
- /* _mesa_function_pool[10459]: BlendFunciARB (will be remapped) */
+ /* _mesa_function_pool[10531]: BlendFunciARB (will be remapped) */
"iii\0"
"glBlendFunciARB\0"
"glBlendFuncIndexedAMD\0"
"\0"
- /* _mesa_function_pool[10502]: VertexAttribP1ui (will be remapped) */
+ /* _mesa_function_pool[10574]: VertexAttribP1ui (will be remapped) */
"iiii\0"
"glVertexAttribP1ui\0"
"\0"
- /* _mesa_function_pool[10527]: GetnUniformivARB (will be remapped) */
+ /* _mesa_function_pool[10599]: GetnUniformivARB (will be remapped) */
"iiip\0"
"glGetnUniformivARB\0"
"\0"
- /* _mesa_function_pool[10552]: GetTexParameterIivEXT (will be remapped) */
+ /* _mesa_function_pool[10624]: GetTexParameterIivEXT (will be remapped) */
"iip\0"
"glGetTexParameterIivEXT\0"
"glGetTexParameterIiv\0"
"\0"
- /* _mesa_function_pool[10602]: CreateProgram (will be remapped) */
+ /* _mesa_function_pool[10674]: CreateProgram (will be remapped) */
"\0"
"glCreateProgram\0"
"\0"
- /* _mesa_function_pool[10620]: LoadTransposeMatrixdARB (will be remapped) */
+ /* _mesa_function_pool[10692]: LoadTransposeMatrixdARB (will be remapped) */
"p\0"
"glLoadTransposeMatrixd\0"
"glLoadTransposeMatrixdARB\0"
"\0"
- /* _mesa_function_pool[10672]: ReleaseShaderCompiler (will be remapped) */
+ /* _mesa_function_pool[10744]: ReleaseShaderCompiler (will be remapped) */
"\0"
"glReleaseShaderCompiler\0"
"\0"
- /* _mesa_function_pool[10698]: GetMinmax (offset 364) */
+ /* _mesa_function_pool[10770]: GetMinmax (offset 364) */
"iiiip\0"
"glGetMinmax\0"
"glGetMinmaxEXT\0"
"\0"
- /* _mesa_function_pool[10732]: StencilFuncSeparate (will be remapped) */
+ /* _mesa_function_pool[10804]: StencilFuncSeparate (will be remapped) */
"iiii\0"
"glStencilFuncSeparate\0"
"\0"
- /* _mesa_function_pool[10760]: SecondaryColor3sEXT (will be remapped) */
+ /* _mesa_function_pool[10832]: SecondaryColor3sEXT (will be remapped) */
"iii\0"
"glSecondaryColor3s\0"
"glSecondaryColor3sEXT\0"
"\0"
- /* _mesa_function_pool[10806]: Color3fVertex3fvSUN (dynamic) */
+ /* _mesa_function_pool[10878]: Color3fVertex3fvSUN (dynamic) */
"pp\0"
"glColor3fVertex3fvSUN\0"
"\0"
- /* _mesa_function_pool[10832]: GetInteger64i_v (will be remapped) */
+ /* _mesa_function_pool[10904]: GetInteger64i_v (will be remapped) */
"iip\0"
"glGetInteger64i_v\0"
"\0"
- /* _mesa_function_pool[10855]: GetVertexAttribdvNV (will be remapped) */
+ /* _mesa_function_pool[10927]: GetVertexAttribdvNV (will be remapped) */
"iip\0"
"glGetVertexAttribdvNV\0"
"\0"
- /* _mesa_function_pool[10882]: Normal3fv (offset 57) */
+ /* _mesa_function_pool[10954]: Normal3fv (offset 57) */
"p\0"
"glNormal3fv\0"
"\0"
- /* _mesa_function_pool[10897]: GlobalAlphaFactorbSUN (dynamic) */
+ /* _mesa_function_pool[10969]: GlobalAlphaFactorbSUN (dynamic) */
"i\0"
"glGlobalAlphaFactorbSUN\0"
"\0"
- /* _mesa_function_pool[10924]: Color3us (offset 23) */
+ /* _mesa_function_pool[10996]: Color3us (offset 23) */
"iii\0"
"glColor3us\0"
"\0"
- /* _mesa_function_pool[10940]: ImageTransformParameterfvHP (dynamic) */
+ /* _mesa_function_pool[11012]: ImageTransformParameterfvHP (dynamic) */
"iip\0"
"glImageTransformParameterfvHP\0"
"\0"
- /* _mesa_function_pool[10975]: VertexAttrib4ivARB (will be remapped) */
+ /* _mesa_function_pool[11047]: VertexAttrib4ivARB (will be remapped) */
"ip\0"
"glVertexAttrib4iv\0"
"glVertexAttrib4ivARB\0"
"\0"
- /* _mesa_function_pool[11018]: End (offset 43) */
+ /* _mesa_function_pool[11090]: End (offset 43) */
"\0"
"glEnd\0"
"\0"
- /* _mesa_function_pool[11026]: VertexAttrib3fNV (will be remapped) */
+ /* _mesa_function_pool[11098]: VertexAttrib3fNV (will be remapped) */
"ifff\0"
"glVertexAttrib3fNV\0"
"\0"
- /* _mesa_function_pool[11051]: MultiTexCoordP3uiv (will be remapped) */
+ /* _mesa_function_pool[11123]: MultiTexCoordP3uiv (will be remapped) */
"iip\0"
"glMultiTexCoordP3uiv\0"
"\0"
- /* _mesa_function_pool[11077]: VertexAttribs2dvNV (will be remapped) */
+ /* _mesa_function_pool[11149]: VertexAttribs2dvNV (will be remapped) */
"iip\0"
"glVertexAttribs2dvNV\0"
"\0"
- /* _mesa_function_pool[11103]: GetQueryObjectui64vEXT (will be remapped) */
+ /* _mesa_function_pool[11175]: GetQueryObjectui64vEXT (will be remapped) */
"iip\0"
"glGetQueryObjectui64vEXT\0"
"\0"
- /* _mesa_function_pool[11133]: MultiTexCoord3fvARB (offset 395) */
+ /* _mesa_function_pool[11205]: MultiTexCoord3fvARB (offset 395) */
"ip\0"
"glMultiTexCoord3fv\0"
"glMultiTexCoord3fvARB\0"
"\0"
- /* _mesa_function_pool[11178]: SecondaryColor3dEXT (will be remapped) */
+ /* _mesa_function_pool[11250]: SecondaryColor3dEXT (will be remapped) */
"ddd\0"
"glSecondaryColor3d\0"
"glSecondaryColor3dEXT\0"
"\0"
- /* _mesa_function_pool[11224]: Color3ub (offset 19) */
+ /* _mesa_function_pool[11296]: Color3ub (offset 19) */
"iii\0"
"glColor3ub\0"
"\0"
- /* _mesa_function_pool[11240]: GetProgramParameterfvNV (will be remapped) */
+ /* _mesa_function_pool[11312]: GetProgramParameterfvNV (will be remapped) */
"iiip\0"
"glGetProgramParameterfvNV\0"
"\0"
- /* _mesa_function_pool[11272]: TangentPointerEXT (dynamic) */
+ /* _mesa_function_pool[11344]: TangentPointerEXT (dynamic) */
"iip\0"
"glTangentPointerEXT\0"
"\0"
- /* _mesa_function_pool[11297]: Color4fNormal3fVertex3fvSUN (dynamic) */
+ /* _mesa_function_pool[11369]: Color4fNormal3fVertex3fvSUN (dynamic) */
"ppp\0"
"glColor4fNormal3fVertex3fvSUN\0"
"\0"
- /* _mesa_function_pool[11332]: GetInstrumentsSGIX (dynamic) */
+ /* _mesa_function_pool[11404]: GetInstrumentsSGIX (dynamic) */
"\0"
"glGetInstrumentsSGIX\0"
"\0"
- /* _mesa_function_pool[11355]: GetUniformuivEXT (will be remapped) */
+ /* _mesa_function_pool[11427]: GetUniformuivEXT (will be remapped) */
"iip\0"
"glGetUniformuivEXT\0"
"glGetUniformuiv\0"
"\0"
- /* _mesa_function_pool[11395]: Color3ui (offset 21) */
+ /* _mesa_function_pool[11467]: Color3ui (offset 21) */
"iii\0"
"glColor3ui\0"
"\0"
- /* _mesa_function_pool[11411]: EvalMapsNV (dynamic) */
+ /* _mesa_function_pool[11483]: EvalMapsNV (dynamic) */
"ii\0"
"glEvalMapsNV\0"
"\0"
- /* _mesa_function_pool[11428]: TexSubImage2D (offset 333) */
+ /* _mesa_function_pool[11500]: TexSubImage2D (offset 333) */
"iiiiiiiip\0"
"glTexSubImage2D\0"
"glTexSubImage2DEXT\0"
"\0"
- /* _mesa_function_pool[11474]: FragmentLightivSGIX (dynamic) */
+ /* _mesa_function_pool[11546]: FragmentLightivSGIX (dynamic) */
"iip\0"
"glFragmentLightivSGIX\0"
"\0"
- /* _mesa_function_pool[11501]: GetTexParameterPointervAPPLE (will be remapped) */
+ /* _mesa_function_pool[11573]: GetTexParameterPointervAPPLE (will be remapped) */
"iip\0"
"glGetTexParameterPointervAPPLE\0"
"\0"
- /* _mesa_function_pool[11537]: TexGenfv (offset 191) */
+ /* _mesa_function_pool[11609]: TexGenfv (offset 191) */
"iip\0"
"glTexGenfv\0"
"\0"
- /* _mesa_function_pool[11553]: GetTransformFeedbackVaryingEXT (will be remapped) */
+ /* _mesa_function_pool[11625]: GetTransformFeedbackVaryingEXT (will be remapped) */
"iiipppp\0"
"glGetTransformFeedbackVaryingEXT\0"
"glGetTransformFeedbackVarying\0"
"\0"
- /* _mesa_function_pool[11625]: VertexAttrib4bvARB (will be remapped) */
+ /* _mesa_function_pool[11697]: VertexAttrib4bvARB (will be remapped) */
"ip\0"
"glVertexAttrib4bv\0"
"glVertexAttrib4bvARB\0"
"\0"
- /* _mesa_function_pool[11668]: ShaderBinary (will be remapped) */
+ /* _mesa_function_pool[11740]: ShaderBinary (will be remapped) */
"ipipi\0"
"glShaderBinary\0"
"\0"
- /* _mesa_function_pool[11690]: GetIntegerIndexedvEXT (will be remapped) */
+ /* _mesa_function_pool[11762]: GetIntegerIndexedvEXT (will be remapped) */
"iip\0"
"glGetIntegerIndexedvEXT\0"
"glGetIntegeri_v\0"
"\0"
- /* _mesa_function_pool[11735]: MultiTexCoord4sARB (offset 406) */
+ /* _mesa_function_pool[11807]: MultiTexCoord4sARB (offset 406) */
"iiiii\0"
"glMultiTexCoord4s\0"
"glMultiTexCoord4sARB\0"
"\0"
- /* _mesa_function_pool[11781]: GetFragmentMaterialivSGIX (dynamic) */
+ /* _mesa_function_pool[11853]: GetFragmentMaterialivSGIX (dynamic) */
"iip\0"
"glGetFragmentMaterialivSGIX\0"
"\0"
- /* _mesa_function_pool[11814]: WindowPos4dMESA (will be remapped) */
+ /* _mesa_function_pool[11886]: WindowPos4dMESA (will be remapped) */
"dddd\0"
"glWindowPos4dMESA\0"
"\0"
- /* _mesa_function_pool[11838]: WeightPointerARB (dynamic) */
+ /* _mesa_function_pool[11910]: WeightPointerARB (dynamic) */
"iiip\0"
"glWeightPointerARB\0"
"\0"
- /* _mesa_function_pool[11863]: WindowPos2dMESA (will be remapped) */
+ /* _mesa_function_pool[11935]: WindowPos2dMESA (will be remapped) */
"dd\0"
"glWindowPos2d\0"
"glWindowPos2dARB\0"
"glWindowPos2dMESA\0"
"\0"
- /* _mesa_function_pool[11916]: FramebufferTexture3DEXT (will be remapped) */
+ /* _mesa_function_pool[11988]: FramebufferTexture3DEXT (will be remapped) */
"iiiiii\0"
"glFramebufferTexture3D\0"
"glFramebufferTexture3DEXT\0"
"\0"
- /* _mesa_function_pool[11973]: BlendEquation (offset 337) */
+ /* _mesa_function_pool[12045]: BlendEquation (offset 337) */
"i\0"
"glBlendEquation\0"
"glBlendEquationEXT\0"
"\0"
- /* _mesa_function_pool[12011]: VertexAttrib3dNV (will be remapped) */
+ /* _mesa_function_pool[12083]: VertexAttrib3dNV (will be remapped) */
"iddd\0"
"glVertexAttrib3dNV\0"
"\0"
- /* _mesa_function_pool[12036]: VertexAttrib3dARB (will be remapped) */
+ /* _mesa_function_pool[12108]: VertexAttrib3dARB (will be remapped) */
"iddd\0"
"glVertexAttrib3d\0"
"glVertexAttrib3dARB\0"
"\0"
- /* _mesa_function_pool[12079]: VertexAttribI4usvEXT (will be remapped) */
+ /* _mesa_function_pool[12151]: VertexAttribI4usvEXT (will be remapped) */
"ip\0"
"glVertexAttribI4usvEXT\0"
"glVertexAttribI4usv\0"
"\0"
- /* _mesa_function_pool[12126]: ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN (dynamic) */
+ /* _mesa_function_pool[12198]: ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN (dynamic) */
"ppppp\0"
"glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN\0"
"\0"
- /* _mesa_function_pool[12190]: VertexAttrib4fARB (will be remapped) */
+ /* _mesa_function_pool[12262]: VertexAttrib4fARB (will be remapped) */
"iffff\0"
"glVertexAttrib4f\0"
"glVertexAttrib4fARB\0"
"\0"
- /* _mesa_function_pool[12234]: GetError (offset 261) */
+ /* _mesa_function_pool[12306]: GetError (offset 261) */
"\0"
"glGetError\0"
"\0"
- /* _mesa_function_pool[12247]: IndexFuncEXT (dynamic) */
+ /* _mesa_function_pool[12319]: IndexFuncEXT (dynamic) */
"if\0"
"glIndexFuncEXT\0"
"\0"
- /* _mesa_function_pool[12266]: TexCoord3dv (offset 111) */
+ /* _mesa_function_pool[12338]: TexCoord3dv (offset 111) */
"p\0"
"glTexCoord3dv\0"
"\0"
- /* _mesa_function_pool[12283]: Indexdv (offset 45) */
+ /* _mesa_function_pool[12355]: Indexdv (offset 45) */
"p\0"
"glIndexdv\0"
"\0"
- /* _mesa_function_pool[12296]: FramebufferTexture2DEXT (will be remapped) */
+ /* _mesa_function_pool[12368]: FramebufferTexture2DEXT (will be remapped) */
"iiiii\0"
"glFramebufferTexture2D\0"
"glFramebufferTexture2DEXT\0"
"\0"
- /* _mesa_function_pool[12352]: Normal3s (offset 60) */
+ /* _mesa_function_pool[12424]: Normal3s (offset 60) */
"iii\0"
"glNormal3s\0"
"\0"
- /* _mesa_function_pool[12368]: GetObjectParameterivAPPLE (will be remapped) */
+ /* _mesa_function_pool[12440]: GetObjectParameterivAPPLE (will be remapped) */
"iiip\0"
"glGetObjectParameterivAPPLE\0"
"\0"
- /* _mesa_function_pool[12402]: PushName (offset 201) */
+ /* _mesa_function_pool[12474]: PushName (offset 201) */
"i\0"
"glPushName\0"
"\0"
- /* _mesa_function_pool[12416]: MultiTexCoord2dvARB (offset 385) */
+ /* _mesa_function_pool[12488]: MultiTexCoord2dvARB (offset 385) */
"ip\0"
"glMultiTexCoord2dv\0"
"glMultiTexCoord2dvARB\0"
"\0"
- /* _mesa_function_pool[12461]: CullParameterfvEXT (dynamic) */
+ /* _mesa_function_pool[12533]: CullParameterfvEXT (dynamic) */
"ip\0"
"glCullParameterfvEXT\0"
"\0"
- /* _mesa_function_pool[12486]: Normal3i (offset 58) */
+ /* _mesa_function_pool[12558]: Normal3i (offset 58) */
"iii\0"
"glNormal3i\0"
"\0"
- /* _mesa_function_pool[12502]: ProgramNamedParameter4fvNV (will be remapped) */
+ /* _mesa_function_pool[12574]: ProgramNamedParameter4fvNV (will be remapped) */
"iipp\0"
"glProgramNamedParameter4fvNV\0"
"\0"
- /* _mesa_function_pool[12537]: SecondaryColorPointerEXT (will be remapped) */
+ /* _mesa_function_pool[12609]: SecondaryColorPointerEXT (will be remapped) */
"iiip\0"
"glSecondaryColorPointer\0"
"glSecondaryColorPointerEXT\0"
"\0"
- /* _mesa_function_pool[12594]: VertexAttrib4fvARB (will be remapped) */
+ /* _mesa_function_pool[12666]: VertexAttrib4fvARB (will be remapped) */
"ip\0"
"glVertexAttrib4fv\0"
"glVertexAttrib4fvARB\0"
"\0"
- /* _mesa_function_pool[12637]: PixelTexGenSGIX (will be remapped) */
+ /* _mesa_function_pool[12709]: PixelTexGenSGIX (will be remapped) */
"i\0"
"glPixelTexGenSGIX\0"
"\0"
- /* _mesa_function_pool[12658]: GetActiveUniformARB (will be remapped) */
+ /* _mesa_function_pool[12730]: GetActiveUniformARB (will be remapped) */
"iiipppp\0"
"glGetActiveUniform\0"
"glGetActiveUniformARB\0"
"\0"
- /* _mesa_function_pool[12708]: ImageTransformParameteriHP (dynamic) */
+ /* _mesa_function_pool[12780]: ImageTransformParameteriHP (dynamic) */
"iii\0"
"glImageTransformParameteriHP\0"
"\0"
- /* _mesa_function_pool[12742]: Normal3b (offset 52) */
+ /* _mesa_function_pool[12814]: Normal3b (offset 52) */
"iii\0"
"glNormal3b\0"
"\0"
- /* _mesa_function_pool[12758]: Normal3d (offset 54) */
+ /* _mesa_function_pool[12830]: Normal3d (offset 54) */
"ddd\0"
"glNormal3d\0"
"\0"
- /* _mesa_function_pool[12774]: Uniform1uiEXT (will be remapped) */
+ /* _mesa_function_pool[12846]: Uniform1uiEXT (will be remapped) */
"ii\0"
"glUniform1uiEXT\0"
"glUniform1ui\0"
"\0"
- /* _mesa_function_pool[12807]: Normal3f (offset 56) */
+ /* _mesa_function_pool[12879]: Normal3f (offset 56) */
"fff\0"
"glNormal3f\0"
"\0"
- /* _mesa_function_pool[12823]: MultiTexCoord1svARB (offset 383) */
+ /* _mesa_function_pool[12895]: MultiTexCoord1svARB (offset 383) */
"ip\0"
"glMultiTexCoord1sv\0"
"glMultiTexCoord1svARB\0"
"\0"
- /* _mesa_function_pool[12868]: Indexi (offset 48) */
+ /* _mesa_function_pool[12940]: Indexi (offset 48) */
"i\0"
"glIndexi\0"
"\0"
- /* _mesa_function_pool[12880]: EGLImageTargetTexture2DOES (will be remapped) */
+ /* _mesa_function_pool[12952]: EGLImageTargetTexture2DOES (will be remapped) */
"ip\0"
"glEGLImageTargetTexture2DOES\0"
"\0"
- /* _mesa_function_pool[12913]: EndQueryARB (will be remapped) */
+ /* _mesa_function_pool[12985]: EndQueryARB (will be remapped) */
"i\0"
"glEndQuery\0"
"glEndQueryARB\0"
"\0"
- /* _mesa_function_pool[12941]: DeleteFencesNV (will be remapped) */
+ /* _mesa_function_pool[13013]: DeleteFencesNV (will be remapped) */
"ip\0"
"glDeleteFencesNV\0"
"\0"
- /* _mesa_function_pool[12962]: ColorPointerListIBM (dynamic) */
+ /* _mesa_function_pool[13034]: ColorPointerListIBM (dynamic) */
"iiipi\0"
"glColorPointerListIBM\0"
"\0"
- /* _mesa_function_pool[12991]: BindBufferRangeEXT (will be remapped) */
+ /* _mesa_function_pool[13063]: BindBufferRangeEXT (will be remapped) */
"iiiii\0"
"glBindBufferRangeEXT\0"
"glBindBufferRange\0"
"\0"
- /* _mesa_function_pool[13037]: DepthMask (offset 211) */
+ /* _mesa_function_pool[13109]: DepthMask (offset 211) */
"i\0"
"glDepthMask\0"
"\0"
- /* _mesa_function_pool[13052]: IsShader (will be remapped) */
+ /* _mesa_function_pool[13124]: IsShader (will be remapped) */
"i\0"
"glIsShader\0"
"\0"
- /* _mesa_function_pool[13066]: Indexf (offset 46) */
+ /* _mesa_function_pool[13138]: Indexf (offset 46) */
"f\0"
"glIndexf\0"
"\0"
- /* _mesa_function_pool[13078]: GetImageTransformParameterivHP (dynamic) */
+ /* _mesa_function_pool[13150]: GetImageTransformParameterivHP (dynamic) */
"iip\0"
"glGetImageTransformParameterivHP\0"
"\0"
- /* _mesa_function_pool[13116]: Indexd (offset 44) */
+ /* _mesa_function_pool[13188]: Indexd (offset 44) */
"d\0"
"glIndexd\0"
"\0"
- /* _mesa_function_pool[13128]: GetMaterialiv (offset 270) */
+ /* _mesa_function_pool[13200]: GetMaterialiv (offset 270) */
"iip\0"
"glGetMaterialiv\0"
"\0"
- /* _mesa_function_pool[13149]: StencilOp (offset 244) */
+ /* _mesa_function_pool[13221]: StencilOp (offset 244) */
"iii\0"
"glStencilOp\0"
"\0"
- /* _mesa_function_pool[13166]: WindowPos4ivMESA (will be remapped) */
+ /* _mesa_function_pool[13238]: WindowPos4ivMESA (will be remapped) */
"p\0"
"glWindowPos4ivMESA\0"
"\0"
- /* _mesa_function_pool[13188]: MultiTexCoord3svARB (offset 399) */
+ /* _mesa_function_pool[13260]: MultiTexCoord3svARB (offset 399) */
"ip\0"
"glMultiTexCoord3sv\0"
"glMultiTexCoord3svARB\0"
"\0"
- /* _mesa_function_pool[13233]: TexEnvfv (offset 185) */
+ /* _mesa_function_pool[13305]: TexEnvfv (offset 185) */
"iip\0"
"glTexEnvfv\0"
"\0"
- /* _mesa_function_pool[13249]: MultiTexCoord4iARB (offset 404) */
+ /* _mesa_function_pool[13321]: MultiTexCoord4iARB (offset 404) */
"iiiii\0"
"glMultiTexCoord4i\0"
"glMultiTexCoord4iARB\0"
"\0"
- /* _mesa_function_pool[13295]: Indexs (offset 50) */
+ /* _mesa_function_pool[13367]: Indexs (offset 50) */
"i\0"
"glIndexs\0"
"\0"
- /* _mesa_function_pool[13307]: Binormal3ivEXT (dynamic) */
+ /* _mesa_function_pool[13379]: Binormal3ivEXT (dynamic) */
"p\0"
"glBinormal3ivEXT\0"
"\0"
- /* _mesa_function_pool[13327]: ResizeBuffersMESA (will be remapped) */
+ /* _mesa_function_pool[13399]: ResizeBuffersMESA (will be remapped) */
"\0"
"glResizeBuffersMESA\0"
"\0"
- /* _mesa_function_pool[13349]: MultiTexCoordP1uiv (will be remapped) */
+ /* _mesa_function_pool[13421]: MultiTexCoordP1uiv (will be remapped) */
"iip\0"
"glMultiTexCoordP1uiv\0"
"\0"
- /* _mesa_function_pool[13375]: BlendFuncSeparateiARB (will be remapped) */
+ /* _mesa_function_pool[13447]: BlendFuncSeparateiARB (will be remapped) */
"iiiii\0"
"glBlendFuncSeparateiARB\0"
"glBlendFuncSeparateIndexedAMD\0"
"\0"
- /* _mesa_function_pool[13436]: GetUniformivARB (will be remapped) */
+ /* _mesa_function_pool[13508]: GetUniformivARB (will be remapped) */
"iip\0"
"glGetUniformiv\0"
"glGetUniformivARB\0"
"\0"
- /* _mesa_function_pool[13474]: PixelTexGenParameteriSGIS (will be remapped) */
+ /* _mesa_function_pool[13546]: PixelTexGenParameteriSGIS (will be remapped) */
"ii\0"
"glPixelTexGenParameteriSGIS\0"
"\0"
- /* _mesa_function_pool[13506]: VertexPointervINTEL (dynamic) */
+ /* _mesa_function_pool[13578]: VertexPointervINTEL (dynamic) */
"iip\0"
"glVertexPointervINTEL\0"
"\0"
- /* _mesa_function_pool[13533]: Vertex2i (offset 130) */
+ /* _mesa_function_pool[13605]: Vertex2i (offset 130) */
"ii\0"
"glVertex2i\0"
"\0"
- /* _mesa_function_pool[13548]: LoadMatrixf (offset 291) */
+ /* _mesa_function_pool[13620]: LoadMatrixf (offset 291) */
"p\0"
"glLoadMatrixf\0"
"\0"
- /* _mesa_function_pool[13565]: VertexAttribI1uivEXT (will be remapped) */
+ /* _mesa_function_pool[13637]: VertexAttribI1uivEXT (will be remapped) */
"ip\0"
"glVertexAttribI1uivEXT\0"
"glVertexAttribI1uiv\0"
"\0"
- /* _mesa_function_pool[13612]: Vertex2f (offset 128) */
+ /* _mesa_function_pool[13684]: Vertex2f (offset 128) */
"ff\0"
"glVertex2f\0"
"\0"
- /* _mesa_function_pool[13627]: ReplacementCodeuiColor4fNormal3fVertex3fvSUN (dynamic) */
+ /* _mesa_function_pool[13699]: ReplacementCodeuiColor4fNormal3fVertex3fvSUN (dynamic) */
"pppp\0"
"glReplacementCodeuiColor4fNormal3fVertex3fvSUN\0"
"\0"
- /* _mesa_function_pool[13680]: Color4bv (offset 26) */
+ /* _mesa_function_pool[13752]: Color4bv (offset 26) */
"p\0"
"glColor4bv\0"
"\0"
- /* _mesa_function_pool[13694]: VertexPointer (offset 321) */
+ /* _mesa_function_pool[13766]: VertexPointer (offset 321) */
"iiip\0"
"glVertexPointer\0"
"\0"
- /* _mesa_function_pool[13716]: SecondaryColor3uiEXT (will be remapped) */
+ /* _mesa_function_pool[13788]: SecondaryColor3uiEXT (will be remapped) */
"iii\0"
"glSecondaryColor3ui\0"
"glSecondaryColor3uiEXT\0"
"\0"
- /* _mesa_function_pool[13764]: StartInstrumentsSGIX (dynamic) */
+ /* _mesa_function_pool[13836]: StartInstrumentsSGIX (dynamic) */
"\0"
"glStartInstrumentsSGIX\0"
"\0"
- /* _mesa_function_pool[13789]: SecondaryColor3usvEXT (will be remapped) */
+ /* _mesa_function_pool[13861]: SecondaryColor3usvEXT (will be remapped) */
"p\0"
"glSecondaryColor3usv\0"
"glSecondaryColor3usvEXT\0"
"\0"
- /* _mesa_function_pool[13837]: VertexAttrib2fvNV (will be remapped) */
+ /* _mesa_function_pool[13909]: VertexAttrib2fvNV (will be remapped) */
"ip\0"
"glVertexAttrib2fvNV\0"
"\0"
- /* _mesa_function_pool[13861]: ProgramLocalParameter4dvARB (will be remapped) */
+ /* _mesa_function_pool[13933]: ProgramLocalParameter4dvARB (will be remapped) */
"iip\0"
"glProgramLocalParameter4dvARB\0"
"\0"
- /* _mesa_function_pool[13896]: DeleteLists (offset 4) */
+ /* _mesa_function_pool[13968]: DeleteLists (offset 4) */
"ii\0"
"glDeleteLists\0"
"\0"
- /* _mesa_function_pool[13914]: LogicOp (offset 242) */
+ /* _mesa_function_pool[13986]: LogicOp (offset 242) */
"i\0"
"glLogicOp\0"
"\0"
- /* _mesa_function_pool[13927]: MatrixIndexuivARB (dynamic) */
+ /* _mesa_function_pool[13999]: MatrixIndexuivARB (dynamic) */
"ip\0"
"glMatrixIndexuivARB\0"
"\0"
- /* _mesa_function_pool[13951]: Vertex2s (offset 132) */
+ /* _mesa_function_pool[14023]: Vertex2s (offset 132) */
"ii\0"
"glVertex2s\0"
"\0"
- /* _mesa_function_pool[13966]: RenderbufferStorageMultisample (will be remapped) */
+ /* _mesa_function_pool[14038]: RenderbufferStorageMultisample (will be remapped) */
"iiiii\0"
"glRenderbufferStorageMultisample\0"
"glRenderbufferStorageMultisampleEXT\0"
"\0"
- /* _mesa_function_pool[14042]: TexCoord4fv (offset 121) */
+ /* _mesa_function_pool[14114]: TexCoord4fv (offset 121) */
"p\0"
"glTexCoord4fv\0"
"\0"
- /* _mesa_function_pool[14059]: Tangent3sEXT (dynamic) */
+ /* _mesa_function_pool[14131]: Tangent3sEXT (dynamic) */
"iii\0"
"glTangent3sEXT\0"
"\0"
- /* _mesa_function_pool[14079]: GlobalAlphaFactorfSUN (dynamic) */
+ /* _mesa_function_pool[14151]: GlobalAlphaFactorfSUN (dynamic) */
"f\0"
"glGlobalAlphaFactorfSUN\0"
"\0"
- /* _mesa_function_pool[14106]: MultiTexCoord3iARB (offset 396) */
+ /* _mesa_function_pool[14178]: MultiTexCoord3iARB (offset 396) */
"iiii\0"
"glMultiTexCoord3i\0"
"glMultiTexCoord3iARB\0"
"\0"
- /* _mesa_function_pool[14151]: IsProgram (will be remapped) */
+ /* _mesa_function_pool[14223]: IsProgram (will be remapped) */
"i\0"
"glIsProgram\0"
"\0"
- /* _mesa_function_pool[14166]: TexCoordPointerListIBM (dynamic) */
+ /* _mesa_function_pool[14238]: TexCoordPointerListIBM (dynamic) */
"iiipi\0"
"glTexCoordPointerListIBM\0"
"\0"
- /* _mesa_function_pool[14198]: VertexAttribI4svEXT (will be remapped) */
+ /* _mesa_function_pool[14270]: VertexAttribI4svEXT (will be remapped) */
"ip\0"
"glVertexAttribI4svEXT\0"
"glVertexAttribI4sv\0"
"\0"
- /* _mesa_function_pool[14243]: GlobalAlphaFactorusSUN (dynamic) */
+ /* _mesa_function_pool[14315]: GlobalAlphaFactorusSUN (dynamic) */
"i\0"
"glGlobalAlphaFactorusSUN\0"
"\0"
- /* _mesa_function_pool[14271]: VertexAttrib2dvNV (will be remapped) */
+ /* _mesa_function_pool[14343]: VertexAttrib2dvNV (will be remapped) */
"ip\0"
"glVertexAttrib2dvNV\0"
"\0"
- /* _mesa_function_pool[14295]: FramebufferRenderbufferEXT (will be remapped) */
+ /* _mesa_function_pool[14367]: FramebufferRenderbufferEXT (will be remapped) */
"iiii\0"
"glFramebufferRenderbuffer\0"
"glFramebufferRenderbufferEXT\0"
"\0"
- /* _mesa_function_pool[14356]: ClearBufferuiv (will be remapped) */
+ /* _mesa_function_pool[14428]: ClearBufferuiv (will be remapped) */
"iip\0"
"glClearBufferuiv\0"
"\0"
- /* _mesa_function_pool[14378]: VertexAttrib1dvNV (will be remapped) */
+ /* _mesa_function_pool[14450]: VertexAttrib1dvNV (will be remapped) */
"ip\0"
"glVertexAttrib1dvNV\0"
"\0"
- /* _mesa_function_pool[14402]: GenTextures (offset 328) */
+ /* _mesa_function_pool[14474]: GenTextures (offset 328) */
"ip\0"
"glGenTextures\0"
"glGenTexturesEXT\0"
"\0"
- /* _mesa_function_pool[14437]: FramebufferTextureARB (will be remapped) */
+ /* _mesa_function_pool[14509]: FramebufferTextureARB (will be remapped) */
"iiii\0"
"glFramebufferTextureARB\0"
"\0"
- /* _mesa_function_pool[14467]: SetFenceNV (will be remapped) */
+ /* _mesa_function_pool[14539]: SetFenceNV (will be remapped) */
"ii\0"
"glSetFenceNV\0"
"\0"
- /* _mesa_function_pool[14484]: FramebufferTexture1DEXT (will be remapped) */
+ /* _mesa_function_pool[14556]: FramebufferTexture1DEXT (will be remapped) */
"iiiii\0"
"glFramebufferTexture1D\0"
"glFramebufferTexture1DEXT\0"
"\0"
- /* _mesa_function_pool[14540]: GetCombinerOutputParameterivNV (will be remapped) */
+ /* _mesa_function_pool[14612]: GetCombinerOutputParameterivNV (will be remapped) */
"iiip\0"
"glGetCombinerOutputParameterivNV\0"
"\0"
- /* _mesa_function_pool[14579]: MultiModeDrawArraysIBM (will be remapped) */
+ /* _mesa_function_pool[14651]: MultiModeDrawArraysIBM (will be remapped) */
"pppii\0"
"glMultiModeDrawArraysIBM\0"
"\0"
- /* _mesa_function_pool[14611]: PixelTexGenParameterivSGIS (will be remapped) */
+ /* _mesa_function_pool[14683]: PixelTexGenParameterivSGIS (will be remapped) */
"ip\0"
"glPixelTexGenParameterivSGIS\0"
"\0"
- /* _mesa_function_pool[14644]: TextureNormalEXT (dynamic) */
+ /* _mesa_function_pool[14716]: TextureNormalEXT (dynamic) */
"i\0"
"glTextureNormalEXT\0"
"\0"
- /* _mesa_function_pool[14666]: IndexPointerListIBM (dynamic) */
+ /* _mesa_function_pool[14738]: IndexPointerListIBM (dynamic) */
"iipi\0"
"glIndexPointerListIBM\0"
"\0"
- /* _mesa_function_pool[14694]: WeightfvARB (dynamic) */
+ /* _mesa_function_pool[14766]: WeightfvARB (dynamic) */
"ip\0"
"glWeightfvARB\0"
"\0"
- /* _mesa_function_pool[14712]: GetCombinerOutputParameterfvNV (will be remapped) */
+ /* _mesa_function_pool[14784]: GetCombinerOutputParameterfvNV (will be remapped) */
"iiip\0"
"glGetCombinerOutputParameterfvNV\0"
"\0"
- /* _mesa_function_pool[14751]: MultiTexCoordP3ui (will be remapped) */
+ /* _mesa_function_pool[14823]: MultiTexCoordP3ui (will be remapped) */
"iii\0"
"glMultiTexCoordP3ui\0"
"\0"
- /* _mesa_function_pool[14776]: RasterPos2sv (offset 69) */
+ /* _mesa_function_pool[14848]: RasterPos2sv (offset 69) */
"p\0"
"glRasterPos2sv\0"
"\0"
- /* _mesa_function_pool[14794]: Color4ubv (offset 36) */
+ /* _mesa_function_pool[14866]: Color4ubv (offset 36) */
"p\0"
"glColor4ubv\0"
"\0"
- /* _mesa_function_pool[14809]: DrawBuffer (offset 202) */
+ /* _mesa_function_pool[14881]: DrawBuffer (offset 202) */
"i\0"
"glDrawBuffer\0"
"\0"
- /* _mesa_function_pool[14825]: TexCoord2fv (offset 105) */
+ /* _mesa_function_pool[14897]: TexCoord2fv (offset 105) */
"p\0"
"glTexCoord2fv\0"
"\0"
- /* _mesa_function_pool[14842]: WindowPos4fMESA (will be remapped) */
+ /* _mesa_function_pool[14914]: WindowPos4fMESA (will be remapped) */
"ffff\0"
"glWindowPos4fMESA\0"
"\0"
- /* _mesa_function_pool[14866]: TexCoord1sv (offset 101) */
+ /* _mesa_function_pool[14938]: TexCoord1sv (offset 101) */
"p\0"
"glTexCoord1sv\0"
"\0"
- /* _mesa_function_pool[14883]: WindowPos3dvMESA (will be remapped) */
+ /* _mesa_function_pool[14955]: WindowPos3dvMESA (will be remapped) */
"p\0"
"glWindowPos3dv\0"
"glWindowPos3dvARB\0"
"glWindowPos3dvMESA\0"
"\0"
- /* _mesa_function_pool[14938]: VertexAttribP1uiv (will be remapped) */
+ /* _mesa_function_pool[15010]: VertexAttribP1uiv (will be remapped) */
"iiip\0"
"glVertexAttribP1uiv\0"
"\0"
- /* _mesa_function_pool[14964]: VertexAttribP4ui (will be remapped) */
+ /* _mesa_function_pool[15036]: VertexAttribP4ui (will be remapped) */
"iiii\0"
"glVertexAttribP4ui\0"
"\0"
- /* _mesa_function_pool[14989]: DepthFunc (offset 245) */
+ /* _mesa_function_pool[15061]: DepthFunc (offset 245) */
"i\0"
"glDepthFunc\0"
"\0"
- /* _mesa_function_pool[15004]: PixelMapusv (offset 253) */
+ /* _mesa_function_pool[15076]: PixelMapusv (offset 253) */
"iip\0"
"glPixelMapusv\0"
"\0"
- /* _mesa_function_pool[15023]: GetQueryObjecti64vEXT (will be remapped) */
+ /* _mesa_function_pool[15095]: GetQueryObjecti64vEXT (will be remapped) */
"iip\0"
"glGetQueryObjecti64vEXT\0"
"\0"
- /* _mesa_function_pool[15052]: MultiTexCoord1dARB (offset 376) */
+ /* _mesa_function_pool[15124]: MultiTexCoord1dARB (offset 376) */
"id\0"
"glMultiTexCoord1d\0"
"glMultiTexCoord1dARB\0"
"\0"
- /* _mesa_function_pool[15095]: PointParameterivNV (will be remapped) */
+ /* _mesa_function_pool[15167]: PointParameterivNV (will be remapped) */
"ip\0"
"glPointParameteriv\0"
"glPointParameterivNV\0"
"\0"
- /* _mesa_function_pool[15139]: IsSampler (will be remapped) */
+ /* _mesa_function_pool[15211]: IsSampler (will be remapped) */
"i\0"
"glIsSampler\0"
"\0"
- /* _mesa_function_pool[15154]: BlendFunc (offset 241) */
+ /* _mesa_function_pool[15226]: BlendFunc (offset 241) */
"ii\0"
"glBlendFunc\0"
"\0"
- /* _mesa_function_pool[15170]: EndTransformFeedbackEXT (will be remapped) */
+ /* _mesa_function_pool[15242]: EndTransformFeedbackEXT (will be remapped) */
"\0"
"glEndTransformFeedbackEXT\0"
"glEndTransformFeedback\0"
"\0"
- /* _mesa_function_pool[15221]: Uniform2fvARB (will be remapped) */
+ /* _mesa_function_pool[15293]: Uniform2fvARB (will be remapped) */
"iip\0"
"glUniform2fv\0"
"glUniform2fvARB\0"
"\0"
- /* _mesa_function_pool[15255]: BufferParameteriAPPLE (will be remapped) */
+ /* _mesa_function_pool[15327]: BufferParameteriAPPLE (will be remapped) */
"iii\0"
"glBufferParameteriAPPLE\0"
"\0"
- /* _mesa_function_pool[15284]: MultiTexCoord3dvARB (offset 393) */
+ /* _mesa_function_pool[15356]: MultiTexCoord3dvARB (offset 393) */
"ip\0"
"glMultiTexCoord3dv\0"
"glMultiTexCoord3dvARB\0"
"\0"
- /* _mesa_function_pool[15329]: ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN (dynamic) */
+ /* _mesa_function_pool[15401]: ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN (dynamic) */
"pppp\0"
"glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN\0"
"\0"
- /* _mesa_function_pool[15385]: DeleteObjectARB (will be remapped) */
+ /* _mesa_function_pool[15457]: DeleteObjectARB (will be remapped) */
"i\0"
"glDeleteObjectARB\0"
"\0"
- /* _mesa_function_pool[15406]: GetShaderPrecisionFormat (will be remapped) */
+ /* _mesa_function_pool[15478]: GetShaderPrecisionFormat (will be remapped) */
"iipp\0"
"glGetShaderPrecisionFormat\0"
"\0"
- /* _mesa_function_pool[15439]: MatrixIndexPointerARB (dynamic) */
+ /* _mesa_function_pool[15511]: MatrixIndexPointerARB (dynamic) */
"iiip\0"
"glMatrixIndexPointerARB\0"
"\0"
- /* _mesa_function_pool[15469]: ProgramNamedParameter4dvNV (will be remapped) */
+ /* _mesa_function_pool[15541]: ProgramNamedParameter4dvNV (will be remapped) */
"iipp\0"
"glProgramNamedParameter4dvNV\0"
"\0"
- /* _mesa_function_pool[15504]: Tangent3fvEXT (dynamic) */
+ /* _mesa_function_pool[15576]: Tangent3fvEXT (dynamic) */
"p\0"
"glTangent3fvEXT\0"
"\0"
- /* _mesa_function_pool[15523]: Flush (offset 217) */
+ /* _mesa_function_pool[15595]: Flush (offset 217) */
"\0"
"glFlush\0"
"\0"
- /* _mesa_function_pool[15533]: Color4uiv (offset 38) */
+ /* _mesa_function_pool[15605]: Color4uiv (offset 38) */
"p\0"
"glColor4uiv\0"
"\0"
- /* _mesa_function_pool[15548]: VertexAttribI4iEXT (will be remapped) */
+ /* _mesa_function_pool[15620]: VertexAttribI4iEXT (will be remapped) */
"iiiii\0"
"glVertexAttribI4iEXT\0"
"glVertexAttribI4i\0"
"\0"
- /* _mesa_function_pool[15594]: GenVertexArrays (will be remapped) */
+ /* _mesa_function_pool[15666]: GenVertexArrays (will be remapped) */
"ip\0"
"glGenVertexArrays\0"
"\0"
- /* _mesa_function_pool[15616]: Uniform3uivEXT (will be remapped) */
+ /* _mesa_function_pool[15688]: Uniform3uivEXT (will be remapped) */
"iip\0"
"glUniform3uivEXT\0"
"glUniform3uiv\0"
"\0"
- /* _mesa_function_pool[15652]: RasterPos3sv (offset 77) */
+ /* _mesa_function_pool[15724]: RasterPos3sv (offset 77) */
"p\0"
"glRasterPos3sv\0"
"\0"
- /* _mesa_function_pool[15670]: TexCoordP2ui (will be remapped) */
+ /* _mesa_function_pool[15742]: TexCoordP2ui (will be remapped) */
"ii\0"
"glTexCoordP2ui\0"
"\0"
- /* _mesa_function_pool[15689]: BindFramebufferEXT (will be remapped) */
+ /* _mesa_function_pool[15761]: BindFramebufferEXT (will be remapped) */
"ii\0"
"glBindFramebuffer\0"
"glBindFramebufferEXT\0"
"\0"
- /* _mesa_function_pool[15732]: ReferencePlaneSGIX (dynamic) */
+ /* _mesa_function_pool[15804]: ReferencePlaneSGIX (dynamic) */
"p\0"
"glReferencePlaneSGIX\0"
"\0"
- /* _mesa_function_pool[15756]: PushAttrib (offset 219) */
+ /* _mesa_function_pool[15828]: PushAttrib (offset 219) */
"i\0"
"glPushAttrib\0"
"\0"
- /* _mesa_function_pool[15772]: RasterPos2i (offset 66) */
+ /* _mesa_function_pool[15844]: RasterPos2i (offset 66) */
"ii\0"
"glRasterPos2i\0"
"\0"
- /* _mesa_function_pool[15790]: ValidateProgramARB (will be remapped) */
+ /* _mesa_function_pool[15862]: ValidateProgramARB (will be remapped) */
"i\0"
"glValidateProgram\0"
"glValidateProgramARB\0"
"\0"
- /* _mesa_function_pool[15832]: TexParameteriv (offset 181) */
+ /* _mesa_function_pool[15904]: TexParameteriv (offset 181) */
"iip\0"
"glTexParameteriv\0"
"\0"
- /* _mesa_function_pool[15854]: UnlockArraysEXT (will be remapped) */
+ /* _mesa_function_pool[15926]: UnlockArraysEXT (will be remapped) */
"\0"
"glUnlockArraysEXT\0"
"\0"
- /* _mesa_function_pool[15874]: TexCoord2fColor3fVertex3fSUN (dynamic) */
+ /* _mesa_function_pool[15946]: TexCoord2fColor3fVertex3fSUN (dynamic) */
"ffffffff\0"
"glTexCoord2fColor3fVertex3fSUN\0"
"\0"
- /* _mesa_function_pool[15915]: WindowPos3fvMESA (will be remapped) */
+ /* _mesa_function_pool[15987]: WindowPos3fvMESA (will be remapped) */
"p\0"
"glWindowPos3fv\0"
"glWindowPos3fvARB\0"
"glWindowPos3fvMESA\0"
"\0"
- /* _mesa_function_pool[15970]: RasterPos2f (offset 64) */
+ /* _mesa_function_pool[16042]: RasterPos2f (offset 64) */
"ff\0"
"glRasterPos2f\0"
"\0"
- /* _mesa_function_pool[15988]: VertexAttrib1svNV (will be remapped) */
+ /* _mesa_function_pool[16060]: VertexAttrib1svNV (will be remapped) */
"ip\0"
"glVertexAttrib1svNV\0"
"\0"
- /* _mesa_function_pool[16012]: RasterPos2d (offset 62) */
+ /* _mesa_function_pool[16084]: RasterPos2d (offset 62) */
"dd\0"
"glRasterPos2d\0"
"\0"
- /* _mesa_function_pool[16030]: RasterPos3fv (offset 73) */
+ /* _mesa_function_pool[16102]: RasterPos3fv (offset 73) */
"p\0"
"glRasterPos3fv\0"
"\0"
- /* _mesa_function_pool[16048]: CopyTexSubImage3D (offset 373) */
+ /* _mesa_function_pool[16120]: CopyTexSubImage3D (offset 373) */
"iiiiiiiii\0"
"glCopyTexSubImage3D\0"
"glCopyTexSubImage3DEXT\0"
"\0"
- /* _mesa_function_pool[16102]: VertexAttrib2dARB (will be remapped) */
+ /* _mesa_function_pool[16174]: VertexAttrib2dARB (will be remapped) */
"idd\0"
"glVertexAttrib2d\0"
"glVertexAttrib2dARB\0"
"\0"
- /* _mesa_function_pool[16144]: Color4ub (offset 35) */
+ /* _mesa_function_pool[16216]: Color4ub (offset 35) */
"iiii\0"
"glColor4ub\0"
"\0"
- /* _mesa_function_pool[16161]: GetInteger64v (will be remapped) */
+ /* _mesa_function_pool[16233]: GetInteger64v (will be remapped) */
"ip\0"
"glGetInteger64v\0"
"\0"
- /* _mesa_function_pool[16181]: TextureColorMaskSGIS (dynamic) */
+ /* _mesa_function_pool[16253]: TextureColorMaskSGIS (dynamic) */
"iiii\0"
"glTextureColorMaskSGIS\0"
"\0"
- /* _mesa_function_pool[16210]: RasterPos2s (offset 68) */
+ /* _mesa_function_pool[16282]: RasterPos2s (offset 68) */
"ii\0"
"glRasterPos2s\0"
"\0"
- /* _mesa_function_pool[16228]: GetColorTable (offset 343) */
+ /* _mesa_function_pool[16300]: GetColorTable (offset 343) */
"iiip\0"
"glGetColorTable\0"
"glGetColorTableSGI\0"
"glGetColorTableEXT\0"
"\0"
- /* _mesa_function_pool[16288]: SelectBuffer (offset 195) */
+ /* _mesa_function_pool[16360]: SelectBuffer (offset 195) */
"ip\0"
"glSelectBuffer\0"
"\0"
- /* _mesa_function_pool[16307]: Indexiv (offset 49) */
+ /* _mesa_function_pool[16379]: Indexiv (offset 49) */
"p\0"
"glIndexiv\0"
"\0"
- /* _mesa_function_pool[16320]: TexCoord3i (offset 114) */
+ /* _mesa_function_pool[16392]: TexCoord3i (offset 114) */
"iii\0"
"glTexCoord3i\0"
"\0"
- /* _mesa_function_pool[16338]: CopyColorTable (offset 342) */
+ /* _mesa_function_pool[16410]: CopyColorTable (offset 342) */
"iiiii\0"
"glCopyColorTable\0"
"glCopyColorTableSGI\0"
"\0"
- /* _mesa_function_pool[16382]: GetHistogramParameterfv (offset 362) */
+ /* _mesa_function_pool[16454]: GetHistogramParameterfv (offset 362) */
"iip\0"
"glGetHistogramParameterfv\0"
"glGetHistogramParameterfvEXT\0"
"\0"
- /* _mesa_function_pool[16442]: Frustum (offset 289) */
+ /* _mesa_function_pool[16514]: Frustum (offset 289) */
"dddddd\0"
"glFrustum\0"
"\0"
- /* _mesa_function_pool[16460]: GetString (offset 275) */
+ /* _mesa_function_pool[16532]: GetString (offset 275) */
"i\0"
"glGetString\0"
"\0"
- /* _mesa_function_pool[16475]: ColorPointervINTEL (dynamic) */
+ /* _mesa_function_pool[16547]: ColorPointervINTEL (dynamic) */
"iip\0"
"glColorPointervINTEL\0"
"\0"
- /* _mesa_function_pool[16501]: TexEnvf (offset 184) */
+ /* _mesa_function_pool[16573]: TexEnvf (offset 184) */
"iif\0"
"glTexEnvf\0"
"\0"
- /* _mesa_function_pool[16516]: VertexP2uiv (will be remapped) */
+ /* _mesa_function_pool[16588]: VertexP2uiv (will be remapped) */
"ip\0"
"glVertexP2uiv\0"
"\0"
- /* _mesa_function_pool[16534]: TexCoord3d (offset 110) */
+ /* _mesa_function_pool[16606]: TexCoord3d (offset 110) */
"ddd\0"
"glTexCoord3d\0"
"\0"
- /* _mesa_function_pool[16552]: AlphaFragmentOp1ATI (will be remapped) */
+ /* _mesa_function_pool[16624]: AlphaFragmentOp1ATI (will be remapped) */
"iiiiii\0"
"glAlphaFragmentOp1ATI\0"
"\0"
- /* _mesa_function_pool[16582]: TexCoord3f (offset 112) */
+ /* _mesa_function_pool[16654]: TexCoord3f (offset 112) */
"fff\0"
"glTexCoord3f\0"
"\0"
- /* _mesa_function_pool[16600]: MultiTexCoord3ivARB (offset 397) */
+ /* _mesa_function_pool[16672]: MultiTexCoord3ivARB (offset 397) */
"ip\0"
"glMultiTexCoord3iv\0"
"glMultiTexCoord3ivARB\0"
"\0"
- /* _mesa_function_pool[16645]: MultiTexCoord2sARB (offset 390) */
+ /* _mesa_function_pool[16717]: MultiTexCoord2sARB (offset 390) */
"iii\0"
"glMultiTexCoord2s\0"
"glMultiTexCoord2sARB\0"
"\0"
- /* _mesa_function_pool[16689]: VertexAttrib1dvARB (will be remapped) */
+ /* _mesa_function_pool[16761]: VertexAttrib1dvARB (will be remapped) */
"ip\0"
"glVertexAttrib1dv\0"
"glVertexAttrib1dvARB\0"
"\0"
- /* _mesa_function_pool[16732]: GetnHistogramARB (will be remapped) */
+ /* _mesa_function_pool[16804]: GetnHistogramARB (will be remapped) */
"iiiiip\0"
"glGetnHistogramARB\0"
"\0"
- /* _mesa_function_pool[16759]: DeleteTextures (offset 327) */
+ /* _mesa_function_pool[16831]: DeleteTextures (offset 327) */
"ip\0"
"glDeleteTextures\0"
"glDeleteTexturesEXT\0"
"\0"
- /* _mesa_function_pool[16800]: TexCoordPointerEXT (will be remapped) */
+ /* _mesa_function_pool[16872]: TexCoordPointerEXT (will be remapped) */
"iiiip\0"
"glTexCoordPointerEXT\0"
"\0"
- /* _mesa_function_pool[16828]: TexSubImage4DSGIS (dynamic) */
+ /* _mesa_function_pool[16900]: TexSubImage4DSGIS (dynamic) */
"iiiiiiiiiiiip\0"
"glTexSubImage4DSGIS\0"
"\0"
- /* _mesa_function_pool[16863]: TexCoord3s (offset 116) */
+ /* _mesa_function_pool[16935]: TexCoord3s (offset 116) */
"iii\0"
"glTexCoord3s\0"
"\0"
- /* _mesa_function_pool[16881]: GetTexLevelParameteriv (offset 285) */
+ /* _mesa_function_pool[16953]: GetTexLevelParameteriv (offset 285) */
"iiip\0"
"glGetTexLevelParameteriv\0"
"\0"
- /* _mesa_function_pool[16912]: CombinerStageParameterfvNV (dynamic) */
+ /* _mesa_function_pool[16984]: CombinerStageParameterfvNV (dynamic) */
"iip\0"
"glCombinerStageParameterfvNV\0"
"\0"
- /* _mesa_function_pool[16946]: VertexAttribP4uiv (will be remapped) */
+ /* _mesa_function_pool[17018]: VertexAttribP4uiv (will be remapped) */
"iiip\0"
"glVertexAttribP4uiv\0"
"\0"
- /* _mesa_function_pool[16972]: StopInstrumentsSGIX (dynamic) */
+ /* _mesa_function_pool[17044]: StopInstrumentsSGIX (dynamic) */
"i\0"
"glStopInstrumentsSGIX\0"
"\0"
- /* _mesa_function_pool[16997]: TexCoord4fColor4fNormal3fVertex4fSUN (dynamic) */
+ /* _mesa_function_pool[17069]: TexCoord4fColor4fNormal3fVertex4fSUN (dynamic) */
"fffffffffffffff\0"
"glTexCoord4fColor4fNormal3fVertex4fSUN\0"
"\0"
- /* _mesa_function_pool[17053]: ClearAccum (offset 204) */
+ /* _mesa_function_pool[17125]: ClearAccum (offset 204) */
"ffff\0"
"glClearAccum\0"
"\0"
- /* _mesa_function_pool[17072]: DeformSGIX (dynamic) */
+ /* _mesa_function_pool[17144]: DeformSGIX (dynamic) */
"i\0"
"glDeformSGIX\0"
"\0"
- /* _mesa_function_pool[17088]: GetVertexAttribfvARB (will be remapped) */
+ /* _mesa_function_pool[17160]: GetVertexAttribfvARB (will be remapped) */
"iip\0"
"glGetVertexAttribfv\0"
"glGetVertexAttribfvARB\0"
"\0"
- /* _mesa_function_pool[17136]: SecondaryColor3ivEXT (will be remapped) */
+ /* _mesa_function_pool[17208]: SecondaryColor3ivEXT (will be remapped) */
"p\0"
"glSecondaryColor3iv\0"
"glSecondaryColor3ivEXT\0"
"\0"
- /* _mesa_function_pool[17182]: TexCoord4iv (offset 123) */
+ /* _mesa_function_pool[17254]: TexCoord4iv (offset 123) */
"p\0"
"glTexCoord4iv\0"
"\0"
- /* _mesa_function_pool[17199]: VertexAttribI4uiEXT (will be remapped) */
+ /* _mesa_function_pool[17271]: VertexAttribI4uiEXT (will be remapped) */
"iiiii\0"
"glVertexAttribI4uiEXT\0"
"glVertexAttribI4ui\0"
"\0"
- /* _mesa_function_pool[17247]: GetFragmentMaterialfvSGIX (dynamic) */
+ /* _mesa_function_pool[17319]: GetFragmentMaterialfvSGIX (dynamic) */
"iip\0"
"glGetFragmentMaterialfvSGIX\0"
"\0"
- /* _mesa_function_pool[17280]: UniformMatrix4x2fv (will be remapped) */
+ /* _mesa_function_pool[17352]: UniformMatrix4x2fv (will be remapped) */
"iiip\0"
"glUniformMatrix4x2fv\0"
"\0"
- /* _mesa_function_pool[17307]: GetDetailTexFuncSGIS (dynamic) */
+ /* _mesa_function_pool[17379]: GetDetailTexFuncSGIS (dynamic) */
"ip\0"
"glGetDetailTexFuncSGIS\0"
"\0"
- /* _mesa_function_pool[17334]: GetCombinerStageParameterfvNV (dynamic) */
+ /* _mesa_function_pool[17406]: GetCombinerStageParameterfvNV (dynamic) */
"iip\0"
"glGetCombinerStageParameterfvNV\0"
"\0"
- /* _mesa_function_pool[17371]: SamplerParameterIiv (will be remapped) */
+ /* _mesa_function_pool[17443]: SamplerParameterIiv (will be remapped) */
"iip\0"
"glSamplerParameterIiv\0"
"\0"
- /* _mesa_function_pool[17398]: PolygonOffset (offset 319) */
+ /* _mesa_function_pool[17470]: PolygonOffset (offset 319) */
"ff\0"
"glPolygonOffset\0"
"\0"
- /* _mesa_function_pool[17418]: BindVertexArray (will be remapped) */
+ /* _mesa_function_pool[17490]: BindVertexArray (will be remapped) */
"i\0"
"glBindVertexArray\0"
"\0"
- /* _mesa_function_pool[17439]: Color4ubVertex2fvSUN (dynamic) */
+ /* _mesa_function_pool[17511]: Color4ubVertex2fvSUN (dynamic) */
"pp\0"
"glColor4ubVertex2fvSUN\0"
"\0"
- /* _mesa_function_pool[17466]: VertexP3uiv (will be remapped) */
+ /* _mesa_function_pool[17538]: VertexP3uiv (will be remapped) */
"ip\0"
"glVertexP3uiv\0"
"\0"
- /* _mesa_function_pool[17484]: Rectd (offset 86) */
+ /* _mesa_function_pool[17556]: Rectd (offset 86) */
"dddd\0"
"glRectd\0"
"\0"
- /* _mesa_function_pool[17498]: TexFilterFuncSGIS (dynamic) */
+ /* _mesa_function_pool[17570]: TexFilterFuncSGIS (dynamic) */
"iiip\0"
"glTexFilterFuncSGIS\0"
"\0"
- /* _mesa_function_pool[17524]: TextureBarrierNV (will be remapped) */
+ /* _mesa_function_pool[17596]: TextureBarrierNV (will be remapped) */
"\0"
"glTextureBarrierNV\0"
"\0"
- /* _mesa_function_pool[17545]: SamplerParameterfv (will be remapped) */
+ /* _mesa_function_pool[17617]: SamplerParameterfv (will be remapped) */
"iip\0"
"glSamplerParameterfv\0"
"\0"
- /* _mesa_function_pool[17571]: VertexAttribI4ubvEXT (will be remapped) */
+ /* _mesa_function_pool[17643]: VertexAttribI4ubvEXT (will be remapped) */
"ip\0"
"glVertexAttribI4ubvEXT\0"
"glVertexAttribI4ubv\0"
"\0"
- /* _mesa_function_pool[17618]: GetAttribLocationARB (will be remapped) */
+ /* _mesa_function_pool[17690]: GetAttribLocationARB (will be remapped) */
"ip\0"
"glGetAttribLocation\0"
"glGetAttribLocationARB\0"
"\0"
- /* _mesa_function_pool[17665]: RasterPos3i (offset 74) */
+ /* _mesa_function_pool[17737]: RasterPos3i (offset 74) */
"iii\0"
"glRasterPos3i\0"
"\0"
- /* _mesa_function_pool[17684]: BlendEquationSeparateiARB (will be remapped) */
+ /* _mesa_function_pool[17756]: BlendEquationSeparateiARB (will be remapped) */
"iii\0"
"glBlendEquationSeparateiARB\0"
"glBlendEquationSeparateIndexedAMD\0"
"\0"
- /* _mesa_function_pool[17751]: VertexAttrib4ubvARB (will be remapped) */
+ /* _mesa_function_pool[17823]: VertexAttrib4ubvARB (will be remapped) */
"ip\0"
"glVertexAttrib4ubv\0"
"glVertexAttrib4ubvARB\0"
"\0"
- /* _mesa_function_pool[17796]: DetailTexFuncSGIS (dynamic) */
+ /* _mesa_function_pool[17868]: DetailTexFuncSGIS (dynamic) */
"iip\0"
"glDetailTexFuncSGIS\0"
"\0"
- /* _mesa_function_pool[17821]: Normal3fVertex3fSUN (dynamic) */
+ /* _mesa_function_pool[17893]: Normal3fVertex3fSUN (dynamic) */
"ffffff\0"
"glNormal3fVertex3fSUN\0"
"\0"
- /* _mesa_function_pool[17851]: CopyTexImage2D (offset 324) */
+ /* _mesa_function_pool[17923]: CopyTexImage2D (offset 324) */
"iiiiiiii\0"
"glCopyTexImage2D\0"
"glCopyTexImage2DEXT\0"
"\0"
- /* _mesa_function_pool[17898]: GetBufferPointervARB (will be remapped) */
+ /* _mesa_function_pool[17970]: GetBufferPointervARB (will be remapped) */
"iip\0"
"glGetBufferPointerv\0"
"glGetBufferPointervARB\0"
"\0"
- /* _mesa_function_pool[17946]: ProgramEnvParameter4fARB (will be remapped) */
+ /* _mesa_function_pool[18018]: ProgramEnvParameter4fARB (will be remapped) */
"iiffff\0"
"glProgramEnvParameter4fARB\0"
"glProgramParameter4fNV\0"
"\0"
- /* _mesa_function_pool[18004]: Uniform3ivARB (will be remapped) */
+ /* _mesa_function_pool[18076]: Uniform3ivARB (will be remapped) */
"iip\0"
"glUniform3iv\0"
"glUniform3ivARB\0"
"\0"
- /* _mesa_function_pool[18038]: Lightfv (offset 160) */
+ /* _mesa_function_pool[18110]: Lightfv (offset 160) */
"iip\0"
"glLightfv\0"
"\0"
- /* _mesa_function_pool[18053]: PrimitiveRestartIndexNV (will be remapped) */
+ /* _mesa_function_pool[18125]: PrimitiveRestartIndexNV (will be remapped) */
"i\0"
"glPrimitiveRestartIndexNV\0"
"glPrimitiveRestartIndex\0"
"\0"
- /* _mesa_function_pool[18106]: ClearDepth (offset 208) */
+ /* _mesa_function_pool[18178]: ClearDepth (offset 208) */
"d\0"
"glClearDepth\0"
"\0"
- /* _mesa_function_pool[18122]: GetFenceivNV (will be remapped) */
+ /* _mesa_function_pool[18194]: GetFenceivNV (will be remapped) */
"iip\0"
"glGetFenceivNV\0"
"\0"
- /* _mesa_function_pool[18142]: WindowPos4dvMESA (will be remapped) */
+ /* _mesa_function_pool[18214]: WindowPos4dvMESA (will be remapped) */
"p\0"
"glWindowPos4dvMESA\0"
"\0"
- /* _mesa_function_pool[18164]: ColorSubTable (offset 346) */
+ /* _mesa_function_pool[18236]: ColorSubTable (offset 346) */
"iiiiip\0"
"glColorSubTable\0"
"glColorSubTableEXT\0"
"\0"
- /* _mesa_function_pool[18207]: Color4fv (offset 30) */
+ /* _mesa_function_pool[18279]: Color4fv (offset 30) */
"p\0"
"glColor4fv\0"
"\0"
- /* _mesa_function_pool[18221]: MultiTexCoord4ivARB (offset 405) */
+ /* _mesa_function_pool[18293]: MultiTexCoord4ivARB (offset 405) */
"ip\0"
"glMultiTexCoord4iv\0"
"glMultiTexCoord4ivARB\0"
"\0"
- /* _mesa_function_pool[18266]: GetnMinmaxARB (will be remapped) */
+ /* _mesa_function_pool[18338]: GetnMinmaxARB (will be remapped) */
"iiiiip\0"
"glGetnMinmaxARB\0"
"\0"
- /* _mesa_function_pool[18290]: ProgramLocalParameters4fvEXT (will be remapped) */
+ /* _mesa_function_pool[18362]: ProgramLocalParameters4fvEXT (will be remapped) */
"iiip\0"
"glProgramLocalParameters4fvEXT\0"
"\0"
- /* _mesa_function_pool[18327]: ColorPointer (offset 308) */
+ /* _mesa_function_pool[18399]: ColorPointer (offset 308) */
"iiip\0"
"glColorPointer\0"
"\0"
- /* _mesa_function_pool[18348]: Rects (offset 92) */
+ /* _mesa_function_pool[18420]: Rects (offset 92) */
"iiii\0"
"glRects\0"
"\0"
- /* _mesa_function_pool[18362]: GetMapAttribParameterfvNV (dynamic) */
+ /* _mesa_function_pool[18434]: GetMapAttribParameterfvNV (dynamic) */
"iiip\0"
"glGetMapAttribParameterfvNV\0"
"\0"
- /* _mesa_function_pool[18396]: CreateShaderProgramEXT (will be remapped) */
+ /* _mesa_function_pool[18468]: CreateShaderProgramEXT (will be remapped) */
"ip\0"
"glCreateShaderProgramEXT\0"
"\0"
- /* _mesa_function_pool[18425]: ActiveProgramEXT (will be remapped) */
+ /* _mesa_function_pool[18497]: ActiveProgramEXT (will be remapped) */
"i\0"
"glActiveProgramEXT\0"
"\0"
- /* _mesa_function_pool[18447]: Lightiv (offset 162) */
+ /* _mesa_function_pool[18519]: Lightiv (offset 162) */
"iip\0"
"glLightiv\0"
"\0"
- /* _mesa_function_pool[18462]: VertexAttrib4sARB (will be remapped) */
+ /* _mesa_function_pool[18534]: VertexAttrib4sARB (will be remapped) */
"iiiii\0"
"glVertexAttrib4s\0"
"glVertexAttrib4sARB\0"
"\0"
- /* _mesa_function_pool[18506]: GetQueryObjectuivARB (will be remapped) */
+ /* _mesa_function_pool[18578]: GetQueryObjectuivARB (will be remapped) */
"iip\0"
"glGetQueryObjectuiv\0"
"glGetQueryObjectuivARB\0"
"\0"
- /* _mesa_function_pool[18554]: GetTexParameteriv (offset 283) */
+ /* _mesa_function_pool[18626]: GetTexParameteriv (offset 283) */
"iip\0"
"glGetTexParameteriv\0"
"\0"
- /* _mesa_function_pool[18579]: MapParameterivNV (dynamic) */
+ /* _mesa_function_pool[18651]: MapParameterivNV (dynamic) */
"iip\0"
"glMapParameterivNV\0"
"\0"
- /* _mesa_function_pool[18603]: GenRenderbuffersEXT (will be remapped) */
+ /* _mesa_function_pool[18675]: GenRenderbuffersEXT (will be remapped) */
"ip\0"
"glGenRenderbuffers\0"
"glGenRenderbuffersEXT\0"
"\0"
- /* _mesa_function_pool[18648]: ClearBufferfv (will be remapped) */
+ /* _mesa_function_pool[18720]: ClearBufferfv (will be remapped) */
"iip\0"
"glClearBufferfv\0"
"\0"
- /* _mesa_function_pool[18669]: VertexAttrib2dvARB (will be remapped) */
+ /* _mesa_function_pool[18741]: VertexAttrib2dvARB (will be remapped) */
"ip\0"
"glVertexAttrib2dv\0"
"glVertexAttrib2dvARB\0"
"\0"
- /* _mesa_function_pool[18712]: EdgeFlagPointerEXT (will be remapped) */
+ /* _mesa_function_pool[18784]: EdgeFlagPointerEXT (will be remapped) */
"iip\0"
"glEdgeFlagPointerEXT\0"
"\0"
- /* _mesa_function_pool[18738]: VertexAttribs2svNV (will be remapped) */
+ /* _mesa_function_pool[18810]: VertexAttribs2svNV (will be remapped) */
"iip\0"
"glVertexAttribs2svNV\0"
"\0"
- /* _mesa_function_pool[18764]: WeightbvARB (dynamic) */
+ /* _mesa_function_pool[18836]: WeightbvARB (dynamic) */
"ip\0"
"glWeightbvARB\0"
"\0"
- /* _mesa_function_pool[18782]: VertexAttrib2fvARB (will be remapped) */
+ /* _mesa_function_pool[18854]: VertexAttrib2fvARB (will be remapped) */
"ip\0"
"glVertexAttrib2fv\0"
"glVertexAttrib2fvARB\0"
"\0"
- /* _mesa_function_pool[18825]: GetBufferParameterivARB (will be remapped) */
+ /* _mesa_function_pool[18897]: GetBufferParameterivARB (will be remapped) */
"iip\0"
"glGetBufferParameteriv\0"
"glGetBufferParameterivARB\0"
"\0"
- /* _mesa_function_pool[18879]: Rectdv (offset 87) */
+ /* _mesa_function_pool[18951]: Rectdv (offset 87) */
"pp\0"
"glRectdv\0"
"\0"
- /* _mesa_function_pool[18892]: ListParameteriSGIX (dynamic) */
+ /* _mesa_function_pool[18964]: ListParameteriSGIX (dynamic) */
"iii\0"
"glListParameteriSGIX\0"
"\0"
- /* _mesa_function_pool[18918]: BlendEquationiARB (will be remapped) */
+ /* _mesa_function_pool[18990]: BlendEquationiARB (will be remapped) */
"ii\0"
"glBlendEquationiARB\0"
"glBlendEquationIndexedAMD\0"
"\0"
- /* _mesa_function_pool[18968]: ReplacementCodeuiColor4fNormal3fVertex3fSUN (dynamic) */
+ /* _mesa_function_pool[19040]: ReplacementCodeuiColor4fNormal3fVertex3fSUN (dynamic) */
"iffffffffff\0"
"glReplacementCodeuiColor4fNormal3fVertex3fSUN\0"
"\0"
- /* _mesa_function_pool[19027]: InstrumentsBufferSGIX (dynamic) */
+ /* _mesa_function_pool[19099]: InstrumentsBufferSGIX (dynamic) */
"ip\0"
"glInstrumentsBufferSGIX\0"
"\0"
- /* _mesa_function_pool[19055]: VertexAttrib4NivARB (will be remapped) */
+ /* _mesa_function_pool[19127]: VertexAttrib4NivARB (will be remapped) */
"ip\0"
"glVertexAttrib4Niv\0"
"glVertexAttrib4NivARB\0"
"\0"
- /* _mesa_function_pool[19100]: DrawArraysInstancedARB (will be remapped) */
+ /* _mesa_function_pool[19172]: DrawArraysInstancedARB (will be remapped) */
"iiii\0"
"glDrawArraysInstancedARB\0"
"glDrawArraysInstancedEXT\0"
"glDrawArraysInstanced\0"
"\0"
- /* _mesa_function_pool[19178]: GetAttachedShaders (will be remapped) */
+ /* _mesa_function_pool[19250]: GetAttachedShaders (will be remapped) */
"iipp\0"
"glGetAttachedShaders\0"
"\0"
- /* _mesa_function_pool[19205]: GenVertexArraysAPPLE (will be remapped) */
+ /* _mesa_function_pool[19277]: GenVertexArraysAPPLE (will be remapped) */
"ip\0"
"glGenVertexArraysAPPLE\0"
"\0"
- /* _mesa_function_pool[19232]: ClearBufferfi (will be remapped) */
+ /* _mesa_function_pool[19304]: ClearBufferfi (will be remapped) */
"iifi\0"
"glClearBufferfi\0"
"\0"
- /* _mesa_function_pool[19254]: Materialiv (offset 172) */
+ /* _mesa_function_pool[19326]: Materialiv (offset 172) */
"iip\0"
"glMaterialiv\0"
"\0"
- /* _mesa_function_pool[19272]: PushClientAttrib (offset 335) */
+ /* _mesa_function_pool[19344]: PushClientAttrib (offset 335) */
"i\0"
"glPushClientAttrib\0"
"\0"
- /* _mesa_function_pool[19294]: SamplerParameteriv (will be remapped) */
+ /* _mesa_function_pool[19366]: SamplerParameteriv (will be remapped) */
"iip\0"
"glSamplerParameteriv\0"
"\0"
- /* _mesa_function_pool[19320]: TexCoord2fColor4fNormal3fVertex3fvSUN (dynamic) */
+ /* _mesa_function_pool[19392]: TexCoord2fColor4fNormal3fVertex3fvSUN (dynamic) */
"pppp\0"
"glTexCoord2fColor4fNormal3fVertex3fvSUN\0"
"\0"
- /* _mesa_function_pool[19366]: WindowPos2iMESA (will be remapped) */
+ /* _mesa_function_pool[19438]: WindowPos2iMESA (will be remapped) */
"ii\0"
"glWindowPos2i\0"
"glWindowPos2iARB\0"
"glWindowPos2iMESA\0"
"\0"
- /* _mesa_function_pool[19419]: SampleMaskSGIS (will be remapped) */
+ /* _mesa_function_pool[19491]: SampleMaskSGIS (will be remapped) */
"fi\0"
"glSampleMaskSGIS\0"
"glSampleMaskEXT\0"
"\0"
- /* _mesa_function_pool[19456]: SecondaryColor3fvEXT (will be remapped) */
+ /* _mesa_function_pool[19528]: SecondaryColor3fvEXT (will be remapped) */
"p\0"
"glSecondaryColor3fv\0"
"glSecondaryColor3fvEXT\0"
"\0"
- /* _mesa_function_pool[19502]: PolygonMode (offset 174) */
+ /* _mesa_function_pool[19574]: PolygonMode (offset 174) */
"ii\0"
"glPolygonMode\0"
"\0"
- /* _mesa_function_pool[19520]: CompressedTexSubImage1DARB (will be remapped) */
+ /* _mesa_function_pool[19592]: CompressedTexSubImage1DARB (will be remapped) */
"iiiiiip\0"
"glCompressedTexSubImage1D\0"
"glCompressedTexSubImage1DARB\0"
"\0"
- /* _mesa_function_pool[19584]: VertexAttribI1iEXT (will be remapped) */
+ /* _mesa_function_pool[19656]: VertexAttribI1iEXT (will be remapped) */
"ii\0"
"glVertexAttribI1iEXT\0"
"glVertexAttribI1i\0"
"\0"
- /* _mesa_function_pool[19627]: TexCoord2fNormal3fVertex3fSUN (dynamic) */
+ /* _mesa_function_pool[19699]: TexCoord2fNormal3fVertex3fSUN (dynamic) */
"ffffffff\0"
"glTexCoord2fNormal3fVertex3fSUN\0"
"\0"
- /* _mesa_function_pool[19669]: GetVertexAttribivNV (will be remapped) */
+ /* _mesa_function_pool[19741]: GetVertexAttribivNV (will be remapped) */
"iip\0"
"glGetVertexAttribivNV\0"
"\0"
- /* _mesa_function_pool[19696]: GetProgramStringARB (will be remapped) */
+ /* _mesa_function_pool[19768]: GetProgramStringARB (will be remapped) */
"iip\0"
"glGetProgramStringARB\0"
"\0"
- /* _mesa_function_pool[19723]: GetnUniformdvARB (will be remapped) */
+ /* _mesa_function_pool[19795]: GetnUniformdvARB (will be remapped) */
"iiip\0"
"glGetnUniformdvARB\0"
"\0"
- /* _mesa_function_pool[19748]: DrawElementsInstancedBaseVertex (will be remapped) */
+ /* _mesa_function_pool[19820]: DrawElementsInstancedBaseVertex (will be remapped) */
"iiipii\0"
"glDrawElementsInstancedBaseVertex\0"
"\0"
- /* _mesa_function_pool[19790]: VertexAttribIPointerEXT (will be remapped) */
+ /* _mesa_function_pool[19862]: VertexAttribIPointerEXT (will be remapped) */
"iiiip\0"
"glVertexAttribIPointerEXT\0"
"glVertexAttribIPointer\0"
"\0"
- /* _mesa_function_pool[19846]: TexBumpParameterfvATI (will be remapped) */
+ /* _mesa_function_pool[19918]: TexBumpParameterfvATI (will be remapped) */
"ip\0"
"glTexBumpParameterfvATI\0"
"\0"
- /* _mesa_function_pool[19874]: Tangent3ivEXT (dynamic) */
+ /* _mesa_function_pool[19946]: Tangent3ivEXT (dynamic) */
"p\0"
"glTangent3ivEXT\0"
"\0"
- /* _mesa_function_pool[19893]: CompileShaderARB (will be remapped) */
+ /* _mesa_function_pool[19965]: CompileShaderARB (will be remapped) */
"i\0"
"glCompileShader\0"
"glCompileShaderARB\0"
"\0"
- /* _mesa_function_pool[19931]: DeleteShader (will be remapped) */
+ /* _mesa_function_pool[20003]: DeleteShader (will be remapped) */
"i\0"
"glDeleteShader\0"
"\0"
- /* _mesa_function_pool[19949]: DisableClientState (offset 309) */
+ /* _mesa_function_pool[20021]: DisableClientState (offset 309) */
"i\0"
"glDisableClientState\0"
"\0"
- /* _mesa_function_pool[19973]: TexGeni (offset 192) */
+ /* _mesa_function_pool[20045]: TexGeni (offset 192) */
"iii\0"
"glTexGeni\0"
"\0"
- /* _mesa_function_pool[19988]: TexGenf (offset 190) */
+ /* _mesa_function_pool[20060]: TexGenf (offset 190) */
"iif\0"
"glTexGenf\0"
"\0"
- /* _mesa_function_pool[20003]: Uniform3fARB (will be remapped) */
+ /* _mesa_function_pool[20075]: Uniform3fARB (will be remapped) */
"ifff\0"
"glUniform3f\0"
"glUniform3fARB\0"
"\0"
- /* _mesa_function_pool[20036]: TexGend (offset 188) */
+ /* _mesa_function_pool[20108]: TexGend (offset 188) */
"iid\0"
"glTexGend\0"
"\0"
- /* _mesa_function_pool[20051]: ListParameterfvSGIX (dynamic) */
+ /* _mesa_function_pool[20123]: ListParameterfvSGIX (dynamic) */
"iip\0"
"glListParameterfvSGIX\0"
"\0"
- /* _mesa_function_pool[20078]: GetPolygonStipple (offset 274) */
+ /* _mesa_function_pool[20150]: GetPolygonStipple (offset 274) */
"p\0"
"glGetPolygonStipple\0"
"\0"
- /* _mesa_function_pool[20101]: ColorP3ui (will be remapped) */
+ /* _mesa_function_pool[20173]: ColorP3ui (will be remapped) */
"ii\0"
"glColorP3ui\0"
"\0"
- /* _mesa_function_pool[20117]: Tangent3dvEXT (dynamic) */
+ /* _mesa_function_pool[20189]: Tangent3dvEXT (dynamic) */
"p\0"
"glTangent3dvEXT\0"
"\0"
- /* _mesa_function_pool[20136]: BindBufferOffsetEXT (will be remapped) */
+ /* _mesa_function_pool[20208]: BindBufferOffsetEXT (will be remapped) */
"iiii\0"
"glBindBufferOffsetEXT\0"
"\0"
- /* _mesa_function_pool[20164]: WindowPos3sMESA (will be remapped) */
+ /* _mesa_function_pool[20236]: WindowPos3sMESA (will be remapped) */
"iii\0"
"glWindowPos3s\0"
"glWindowPos3sARB\0"
"glWindowPos3sMESA\0"
"\0"
- /* _mesa_function_pool[20218]: VertexAttrib2svNV (will be remapped) */
+ /* _mesa_function_pool[20290]: VertexAttrib2svNV (will be remapped) */
"ip\0"
"glVertexAttrib2svNV\0"
"\0"
- /* _mesa_function_pool[20242]: DisableIndexedEXT (will be remapped) */
+ /* _mesa_function_pool[20314]: DisableIndexedEXT (will be remapped) */
"ii\0"
"glDisableIndexedEXT\0"
"glDisablei\0"
"\0"
- /* _mesa_function_pool[20277]: NormalP3uiv (will be remapped) */
+ /* _mesa_function_pool[20349]: NormalP3uiv (will be remapped) */
"ip\0"
"glNormalP3uiv\0"
"\0"
- /* _mesa_function_pool[20295]: SecondaryColorP3uiv (will be remapped) */
+ /* _mesa_function_pool[20367]: SecondaryColorP3uiv (will be remapped) */
"ip\0"
"glSecondaryColorP3uiv\0"
"\0"
- /* _mesa_function_pool[20321]: BindBufferBaseEXT (will be remapped) */
+ /* _mesa_function_pool[20393]: BindBufferBaseEXT (will be remapped) */
"iii\0"
"glBindBufferBaseEXT\0"
"glBindBufferBase\0"
"\0"
- /* _mesa_function_pool[20363]: TexCoord2fVertex3fvSUN (dynamic) */
+ /* _mesa_function_pool[20435]: TexCoord2fVertex3fvSUN (dynamic) */
"pp\0"
"glTexCoord2fVertex3fvSUN\0"
"\0"
- /* _mesa_function_pool[20392]: WindowPos4sMESA (will be remapped) */
+ /* _mesa_function_pool[20464]: WindowPos4sMESA (will be remapped) */
"iiii\0"
"glWindowPos4sMESA\0"
"\0"
- /* _mesa_function_pool[20416]: GetnPixelMapuivARB (will be remapped) */
+ /* _mesa_function_pool[20488]: GetnPixelMapuivARB (will be remapped) */
"iip\0"
"glGetnPixelMapuivARB\0"
"\0"
- /* _mesa_function_pool[20442]: VertexAttrib4NuivARB (will be remapped) */
+ /* _mesa_function_pool[20514]: VertexAttrib4NuivARB (will be remapped) */
"ip\0"
"glVertexAttrib4Nuiv\0"
"glVertexAttrib4NuivARB\0"
"\0"
- /* _mesa_function_pool[20489]: ClientActiveTextureARB (offset 375) */
+ /* _mesa_function_pool[20561]: ClientActiveTextureARB (offset 375) */
"i\0"
"glClientActiveTexture\0"
"glClientActiveTextureARB\0"
"\0"
- /* _mesa_function_pool[20539]: GetSamplerParameterIuiv (will be remapped) */
+ /* _mesa_function_pool[20611]: GetSamplerParameterIuiv (will be remapped) */
"iip\0"
"glGetSamplerParameterIuiv\0"
"\0"
- /* _mesa_function_pool[20570]: ReplacementCodeusvSUN (dynamic) */
+ /* _mesa_function_pool[20642]: ReplacementCodeusvSUN (dynamic) */
"p\0"
"glReplacementCodeusvSUN\0"
"\0"
- /* _mesa_function_pool[20597]: Uniform4fARB (will be remapped) */
+ /* _mesa_function_pool[20669]: Uniform4fARB (will be remapped) */
"iffff\0"
"glUniform4f\0"
"glUniform4fARB\0"
"\0"
- /* _mesa_function_pool[20631]: Color4sv (offset 34) */
+ /* _mesa_function_pool[20703]: Color4sv (offset 34) */
"p\0"
"glColor4sv\0"
"\0"
- /* _mesa_function_pool[20645]: FlushMappedBufferRange (will be remapped) */
+ /* _mesa_function_pool[20717]: FlushMappedBufferRange (will be remapped) */
"iii\0"
"glFlushMappedBufferRange\0"
"\0"
- /* _mesa_function_pool[20675]: IsProgramNV (will be remapped) */
+ /* _mesa_function_pool[20747]: IsProgramNV (will be remapped) */
"i\0"
"glIsProgramARB\0"
"glIsProgramNV\0"
"\0"
- /* _mesa_function_pool[20707]: FlushMappedBufferRangeAPPLE (will be remapped) */
+ /* _mesa_function_pool[20779]: FlushMappedBufferRangeAPPLE (will be remapped) */
"iii\0"
"glFlushMappedBufferRangeAPPLE\0"
"\0"
- /* _mesa_function_pool[20742]: PixelZoom (offset 246) */
+ /* _mesa_function_pool[20814]: PixelZoom (offset 246) */
"ff\0"
"glPixelZoom\0"
"\0"
- /* _mesa_function_pool[20758]: ReplacementCodePointerSUN (dynamic) */
+ /* _mesa_function_pool[20830]: ReplacementCodePointerSUN (dynamic) */
"iip\0"
"glReplacementCodePointerSUN\0"
"\0"
- /* _mesa_function_pool[20791]: ProgramEnvParameter4dARB (will be remapped) */
+ /* _mesa_function_pool[20863]: ProgramEnvParameter4dARB (will be remapped) */
"iidddd\0"
"glProgramEnvParameter4dARB\0"
"glProgramParameter4dNV\0"
"\0"
- /* _mesa_function_pool[20849]: ColorTableParameterfv (offset 340) */
+ /* _mesa_function_pool[20921]: ColorTableParameterfv (offset 340) */
"iip\0"
"glColorTableParameterfv\0"
"glColorTableParameterfvSGI\0"
"\0"
- /* _mesa_function_pool[20905]: FragmentLightModelfSGIX (dynamic) */
+ /* _mesa_function_pool[20977]: FragmentLightModelfSGIX (dynamic) */
"if\0"
"glFragmentLightModelfSGIX\0"
"\0"
- /* _mesa_function_pool[20935]: Binormal3bvEXT (dynamic) */
+ /* _mesa_function_pool[21007]: Binormal3bvEXT (dynamic) */
"p\0"
"glBinormal3bvEXT\0"
"\0"
- /* _mesa_function_pool[20955]: PixelMapuiv (offset 252) */
+ /* _mesa_function_pool[21027]: PixelMapuiv (offset 252) */
"iip\0"
"glPixelMapuiv\0"
"\0"
- /* _mesa_function_pool[20974]: Color3dv (offset 12) */
+ /* _mesa_function_pool[21046]: Color3dv (offset 12) */
"p\0"
"glColor3dv\0"
"\0"
- /* _mesa_function_pool[20988]: IsTexture (offset 330) */
+ /* _mesa_function_pool[21060]: IsTexture (offset 330) */
"i\0"
"glIsTexture\0"
"glIsTextureEXT\0"
"\0"
- /* _mesa_function_pool[21018]: GenSamplers (will be remapped) */
+ /* _mesa_function_pool[21090]: GenSamplers (will be remapped) */
"ip\0"
"glGenSamplers\0"
"\0"
- /* _mesa_function_pool[21036]: VertexAttribP3uiv (will be remapped) */
+ /* _mesa_function_pool[21108]: VertexAttribP3uiv (will be remapped) */
"iiip\0"
"glVertexAttribP3uiv\0"
"\0"
- /* _mesa_function_pool[21062]: VertexWeightfvEXT (dynamic) */
+ /* _mesa_function_pool[21134]: VertexWeightfvEXT (dynamic) */
"p\0"
"glVertexWeightfvEXT\0"
"\0"
- /* _mesa_function_pool[21085]: VertexAttrib1dARB (will be remapped) */
+ /* _mesa_function_pool[21157]: VertexAttrib1dARB (will be remapped) */
"id\0"
"glVertexAttrib1d\0"
"glVertexAttrib1dARB\0"
"\0"
- /* _mesa_function_pool[21126]: ImageTransformParameterivHP (dynamic) */
+ /* _mesa_function_pool[21198]: ImageTransformParameterivHP (dynamic) */
"iip\0"
"glImageTransformParameterivHP\0"
"\0"
- /* _mesa_function_pool[21161]: TexCoord4i (offset 122) */
+ /* _mesa_function_pool[21233]: TexCoord4i (offset 122) */
"iiii\0"
"glTexCoord4i\0"
"\0"
- /* _mesa_function_pool[21180]: DeleteQueriesARB (will be remapped) */
+ /* _mesa_function_pool[21252]: DeleteQueriesARB (will be remapped) */
"ip\0"
"glDeleteQueries\0"
"glDeleteQueriesARB\0"
"\0"
- /* _mesa_function_pool[21219]: Color4ubVertex2fSUN (dynamic) */
+ /* _mesa_function_pool[21291]: Color4ubVertex2fSUN (dynamic) */
"iiiiff\0"
"glColor4ubVertex2fSUN\0"
"\0"
- /* _mesa_function_pool[21249]: FragmentColorMaterialSGIX (dynamic) */
+ /* _mesa_function_pool[21321]: FragmentColorMaterialSGIX (dynamic) */
"ii\0"
"glFragmentColorMaterialSGIX\0"
"\0"
- /* _mesa_function_pool[21281]: CurrentPaletteMatrixARB (dynamic) */
+ /* _mesa_function_pool[21353]: CurrentPaletteMatrixARB (dynamic) */
"i\0"
"glCurrentPaletteMatrixARB\0"
"\0"
- /* _mesa_function_pool[21310]: GetMapdv (offset 266) */
+ /* _mesa_function_pool[21382]: GetMapdv (offset 266) */
"iip\0"
"glGetMapdv\0"
"\0"
- /* _mesa_function_pool[21326]: ObjectPurgeableAPPLE (will be remapped) */
+ /* _mesa_function_pool[21398]: ObjectPurgeableAPPLE (will be remapped) */
"iii\0"
"glObjectPurgeableAPPLE\0"
"\0"
- /* _mesa_function_pool[21354]: GetStringi (will be remapped) */
+ /* _mesa_function_pool[21426]: GetStringi (will be remapped) */
"ii\0"
"glGetStringi\0"
"\0"
- /* _mesa_function_pool[21371]: SamplePatternSGIS (will be remapped) */
+ /* _mesa_function_pool[21443]: SamplePatternSGIS (will be remapped) */
"i\0"
"glSamplePatternSGIS\0"
"glSamplePatternEXT\0"
"\0"
- /* _mesa_function_pool[21413]: PixelStoref (offset 249) */
+ /* _mesa_function_pool[21485]: PixelStoref (offset 249) */
"if\0"
"glPixelStoref\0"
"\0"
- /* _mesa_function_pool[21431]: IsQueryARB (will be remapped) */
+ /* _mesa_function_pool[21503]: IsQueryARB (will be remapped) */
"i\0"
"glIsQuery\0"
"glIsQueryARB\0"
"\0"
- /* _mesa_function_pool[21457]: ReplacementCodeuiColor4ubVertex3fSUN (dynamic) */
+ /* _mesa_function_pool[21529]: ReplacementCodeuiColor4ubVertex3fSUN (dynamic) */
"iiiiifff\0"
"glReplacementCodeuiColor4ubVertex3fSUN\0"
"\0"
- /* _mesa_function_pool[21506]: PixelStorei (offset 250) */
+ /* _mesa_function_pool[21578]: PixelStorei (offset 250) */
"ii\0"
"glPixelStorei\0"
"\0"
- /* _mesa_function_pool[21524]: VertexAttrib4usvARB (will be remapped) */
+ /* _mesa_function_pool[21596]: VertexAttrib4usvARB (will be remapped) */
"ip\0"
"glVertexAttrib4usv\0"
"glVertexAttrib4usvARB\0"
"\0"
- /* _mesa_function_pool[21569]: LinkProgramARB (will be remapped) */
+ /* _mesa_function_pool[21641]: LinkProgramARB (will be remapped) */
"i\0"
"glLinkProgram\0"
"glLinkProgramARB\0"
"\0"
- /* _mesa_function_pool[21603]: VertexAttrib2fNV (will be remapped) */
+ /* _mesa_function_pool[21675]: VertexAttrib2fNV (will be remapped) */
"iff\0"
"glVertexAttrib2fNV\0"
"\0"
- /* _mesa_function_pool[21627]: ShaderSourceARB (will be remapped) */
+ /* _mesa_function_pool[21699]: ShaderSourceARB (will be remapped) */
"iipp\0"
"glShaderSource\0"
"glShaderSourceARB\0"
"\0"
- /* _mesa_function_pool[21666]: FragmentMaterialiSGIX (dynamic) */
+ /* _mesa_function_pool[21738]: FragmentMaterialiSGIX (dynamic) */
"iii\0"
"glFragmentMaterialiSGIX\0"
"\0"
- /* _mesa_function_pool[21695]: EvalCoord2dv (offset 233) */
+ /* _mesa_function_pool[21767]: EvalCoord2dv (offset 233) */
"p\0"
"glEvalCoord2dv\0"
"\0"
- /* _mesa_function_pool[21713]: VertexAttrib3svARB (will be remapped) */
+ /* _mesa_function_pool[21785]: VertexAttrib3svARB (will be remapped) */
"ip\0"
"glVertexAttrib3sv\0"
"glVertexAttrib3svARB\0"
"\0"
- /* _mesa_function_pool[21756]: ColorMaterial (offset 151) */
+ /* _mesa_function_pool[21828]: ColorMaterial (offset 151) */
"ii\0"
"glColorMaterial\0"
"\0"
- /* _mesa_function_pool[21776]: CompressedTexSubImage3DARB (will be remapped) */
+ /* _mesa_function_pool[21848]: CompressedTexSubImage3DARB (will be remapped) */
"iiiiiiiiiip\0"
"glCompressedTexSubImage3D\0"
"glCompressedTexSubImage3DARB\0"
"\0"
- /* _mesa_function_pool[21844]: WindowPos2ivMESA (will be remapped) */
+ /* _mesa_function_pool[21916]: WindowPos2ivMESA (will be remapped) */
"p\0"
"glWindowPos2iv\0"
"glWindowPos2ivARB\0"
"glWindowPos2ivMESA\0"
"\0"
- /* _mesa_function_pool[21899]: IsFramebufferEXT (will be remapped) */
+ /* _mesa_function_pool[21971]: IsFramebufferEXT (will be remapped) */
"i\0"
"glIsFramebuffer\0"
"glIsFramebufferEXT\0"
"\0"
- /* _mesa_function_pool[21937]: Uniform4ivARB (will be remapped) */
+ /* _mesa_function_pool[22009]: Uniform4ivARB (will be remapped) */
"iip\0"
"glUniform4iv\0"
"glUniform4ivARB\0"
"\0"
- /* _mesa_function_pool[21971]: GetVertexAttribdvARB (will be remapped) */
+ /* _mesa_function_pool[22043]: GetVertexAttribdvARB (will be remapped) */
"iip\0"
"glGetVertexAttribdv\0"
"glGetVertexAttribdvARB\0"
"\0"
- /* _mesa_function_pool[22019]: TexBumpParameterivATI (will be remapped) */
+ /* _mesa_function_pool[22091]: TexBumpParameterivATI (will be remapped) */
"ip\0"
"glTexBumpParameterivATI\0"
"\0"
- /* _mesa_function_pool[22047]: GetSeparableFilter (offset 359) */
+ /* _mesa_function_pool[22119]: GetSeparableFilter (offset 359) */
"iiippp\0"
"glGetSeparableFilter\0"
"glGetSeparableFilterEXT\0"
"\0"
- /* _mesa_function_pool[22100]: Binormal3dEXT (dynamic) */
+ /* _mesa_function_pool[22172]: Binormal3dEXT (dynamic) */
"ddd\0"
"glBinormal3dEXT\0"
"\0"
- /* _mesa_function_pool[22121]: SpriteParameteriSGIX (dynamic) */
+ /* _mesa_function_pool[22193]: SpriteParameteriSGIX (dynamic) */
"ii\0"
"glSpriteParameteriSGIX\0"
"\0"
- /* _mesa_function_pool[22148]: RequestResidentProgramsNV (will be remapped) */
+ /* _mesa_function_pool[22220]: RequestResidentProgramsNV (will be remapped) */
"ip\0"
"glRequestResidentProgramsNV\0"
"\0"
- /* _mesa_function_pool[22180]: TagSampleBufferSGIX (dynamic) */
+ /* _mesa_function_pool[22252]: TagSampleBufferSGIX (dynamic) */
"\0"
"glTagSampleBufferSGIX\0"
"\0"
- /* _mesa_function_pool[22204]: TransformFeedbackVaryingsEXT (will be remapped) */
+ /* _mesa_function_pool[22276]: TransformFeedbackVaryingsEXT (will be remapped) */
"iipi\0"
"glTransformFeedbackVaryingsEXT\0"
"glTransformFeedbackVaryings\0"
"\0"
- /* _mesa_function_pool[22269]: FeedbackBuffer (offset 194) */
+ /* _mesa_function_pool[22341]: FeedbackBuffer (offset 194) */
"iip\0"
"glFeedbackBuffer\0"
"\0"
- /* _mesa_function_pool[22291]: RasterPos2iv (offset 67) */
+ /* _mesa_function_pool[22363]: RasterPos2iv (offset 67) */
"p\0"
"glRasterPos2iv\0"
"\0"
- /* _mesa_function_pool[22309]: TexImage1D (offset 182) */
+ /* _mesa_function_pool[22381]: TexImage1D (offset 182) */
"iiiiiiip\0"
"glTexImage1D\0"
"\0"
- /* _mesa_function_pool[22332]: ListParameterivSGIX (dynamic) */
+ /* _mesa_function_pool[22404]: ListParameterivSGIX (dynamic) */
"iip\0"
"glListParameterivSGIX\0"
"\0"
- /* _mesa_function_pool[22359]: MultiDrawElementsEXT (will be remapped) */
+ /* _mesa_function_pool[22431]: MultiDrawElementsEXT (will be remapped) */
"ipipi\0"
"glMultiDrawElements\0"
"glMultiDrawElementsEXT\0"
"\0"
- /* _mesa_function_pool[22409]: Color3s (offset 17) */
+ /* _mesa_function_pool[22481]: Color3s (offset 17) */
"iii\0"
"glColor3s\0"
"\0"
- /* _mesa_function_pool[22424]: Uniform1ivARB (will be remapped) */
+ /* _mesa_function_pool[22496]: Uniform1ivARB (will be remapped) */
"iip\0"
"glUniform1iv\0"
"glUniform1ivARB\0"
"\0"
- /* _mesa_function_pool[22458]: WindowPos2sMESA (will be remapped) */
+ /* _mesa_function_pool[22530]: WindowPos2sMESA (will be remapped) */
"ii\0"
"glWindowPos2s\0"
"glWindowPos2sARB\0"
"glWindowPos2sMESA\0"
"\0"
- /* _mesa_function_pool[22511]: WeightusvARB (dynamic) */
+ /* _mesa_function_pool[22583]: WeightusvARB (dynamic) */
"ip\0"
"glWeightusvARB\0"
"\0"
- /* _mesa_function_pool[22530]: ColorP4ui (will be remapped) */
+ /* _mesa_function_pool[22602]: ColorP4ui (will be remapped) */
"ii\0"
"glColorP4ui\0"
"\0"
- /* _mesa_function_pool[22546]: TexCoordPointer (offset 320) */
+ /* _mesa_function_pool[22618]: TexCoordPointer (offset 320) */
"iiip\0"
"glTexCoordPointer\0"
"\0"
- /* _mesa_function_pool[22570]: FogCoordPointerEXT (will be remapped) */
+ /* _mesa_function_pool[22642]: FogCoordPointerEXT (will be remapped) */
"iip\0"
"glFogCoordPointer\0"
"glFogCoordPointerEXT\0"
"\0"
- /* _mesa_function_pool[22614]: GetnSeparableFilterARB (will be remapped) */
+ /* _mesa_function_pool[22686]: GetnSeparableFilterARB (will be remapped) */
"iiiipipp\0"
"glGetnSeparableFilterARB\0"
"\0"
- /* _mesa_function_pool[22649]: IndexMaterialEXT (dynamic) */
+ /* _mesa_function_pool[22721]: IndexMaterialEXT (dynamic) */
"ii\0"
"glIndexMaterialEXT\0"
"\0"
- /* _mesa_function_pool[22672]: Color3i (offset 15) */
+ /* _mesa_function_pool[22744]: Color3i (offset 15) */
"iii\0"
"glColor3i\0"
"\0"
- /* _mesa_function_pool[22687]: FrontFace (offset 157) */
+ /* _mesa_function_pool[22759]: FrontFace (offset 157) */
"i\0"
"glFrontFace\0"
"\0"
- /* _mesa_function_pool[22702]: EvalCoord2d (offset 232) */
+ /* _mesa_function_pool[22774]: EvalCoord2d (offset 232) */
"dd\0"
"glEvalCoord2d\0"
"\0"
- /* _mesa_function_pool[22720]: SecondaryColor3ubvEXT (will be remapped) */
+ /* _mesa_function_pool[22792]: SecondaryColor3ubvEXT (will be remapped) */
"p\0"
"glSecondaryColor3ubv\0"
"glSecondaryColor3ubvEXT\0"
"\0"
- /* _mesa_function_pool[22768]: EvalCoord2f (offset 234) */
+ /* _mesa_function_pool[22840]: EvalCoord2f (offset 234) */
"ff\0"
"glEvalCoord2f\0"
"\0"
- /* _mesa_function_pool[22786]: VertexAttrib4dvARB (will be remapped) */
+ /* _mesa_function_pool[22858]: VertexAttrib4dvARB (will be remapped) */
"ip\0"
"glVertexAttrib4dv\0"
"glVertexAttrib4dvARB\0"
"\0"
- /* _mesa_function_pool[22829]: BindAttribLocationARB (will be remapped) */
+ /* _mesa_function_pool[22901]: BindAttribLocationARB (will be remapped) */
"iip\0"
"glBindAttribLocation\0"
"glBindAttribLocationARB\0"
"\0"
- /* _mesa_function_pool[22879]: Color3b (offset 9) */
+ /* _mesa_function_pool[22951]: Color3b (offset 9) */
"iii\0"
"glColor3b\0"
"\0"
- /* _mesa_function_pool[22894]: MultiTexCoord2dARB (offset 384) */
+ /* _mesa_function_pool[22966]: MultiTexCoord2dARB (offset 384) */
"idd\0"
"glMultiTexCoord2d\0"
"glMultiTexCoord2dARB\0"
"\0"
- /* _mesa_function_pool[22938]: ExecuteProgramNV (will be remapped) */
+ /* _mesa_function_pool[23010]: ExecuteProgramNV (will be remapped) */
"iip\0"
"glExecuteProgramNV\0"
"\0"
- /* _mesa_function_pool[22962]: Color3f (offset 13) */
+ /* _mesa_function_pool[23034]: Color3f (offset 13) */
"fff\0"
"glColor3f\0"
"\0"
- /* _mesa_function_pool[22977]: LightEnviSGIX (dynamic) */
+ /* _mesa_function_pool[23049]: LightEnviSGIX (dynamic) */
"ii\0"
"glLightEnviSGIX\0"
"\0"
- /* _mesa_function_pool[22997]: Color3d (offset 11) */
+ /* _mesa_function_pool[23069]: Color3d (offset 11) */
"ddd\0"
"glColor3d\0"
"\0"
- /* _mesa_function_pool[23012]: Normal3dv (offset 55) */
+ /* _mesa_function_pool[23084]: Normal3dv (offset 55) */
"p\0"
"glNormal3dv\0"
"\0"
- /* _mesa_function_pool[23027]: Lightf (offset 159) */
+ /* _mesa_function_pool[23099]: Lightf (offset 159) */
"iif\0"
"glLightf\0"
"\0"
- /* _mesa_function_pool[23041]: ReplacementCodeuiSUN (dynamic) */
+ /* _mesa_function_pool[23113]: ReplacementCodeuiSUN (dynamic) */
"i\0"
"glReplacementCodeuiSUN\0"
"\0"
- /* _mesa_function_pool[23067]: MatrixMode (offset 293) */
+ /* _mesa_function_pool[23139]: MatrixMode (offset 293) */
"i\0"
"glMatrixMode\0"
"\0"
- /* _mesa_function_pool[23083]: GetPixelMapusv (offset 273) */
+ /* _mesa_function_pool[23155]: GetPixelMapusv (offset 273) */
"ip\0"
"glGetPixelMapusv\0"
"\0"
- /* _mesa_function_pool[23104]: Lighti (offset 161) */
+ /* _mesa_function_pool[23176]: Lighti (offset 161) */
"iii\0"
"glLighti\0"
"\0"
- /* _mesa_function_pool[23118]: VertexAttribPointerNV (will be remapped) */
+ /* _mesa_function_pool[23190]: VertexAttribPointerNV (will be remapped) */
"iiiip\0"
"glVertexAttribPointerNV\0"
"\0"
- /* _mesa_function_pool[23149]: ClearDepthf (will be remapped) */
+ /* _mesa_function_pool[23221]: ClearDepthf (will be remapped) */
"f\0"
"glClearDepthf\0"
"\0"
- /* _mesa_function_pool[23166]: GetBooleanIndexedvEXT (will be remapped) */
+ /* _mesa_function_pool[23238]: GetBooleanIndexedvEXT (will be remapped) */
"iip\0"
"glGetBooleanIndexedvEXT\0"
"glGetBooleani_v\0"
"\0"
- /* _mesa_function_pool[23211]: GetFramebufferAttachmentParameterivEXT (will be remapped) */
+ /* _mesa_function_pool[23283]: GetFramebufferAttachmentParameterivEXT (will be remapped) */
"iiip\0"
"glGetFramebufferAttachmentParameteriv\0"
"glGetFramebufferAttachmentParameterivEXT\0"
"\0"
- /* _mesa_function_pool[23296]: PixelTransformParameterfEXT (dynamic) */
+ /* _mesa_function_pool[23368]: PixelTransformParameterfEXT (dynamic) */
"iif\0"
"glPixelTransformParameterfEXT\0"
"\0"
- /* _mesa_function_pool[23331]: MultiTexCoord4dvARB (offset 401) */
+ /* _mesa_function_pool[23403]: MultiTexCoord4dvARB (offset 401) */
"ip\0"
"glMultiTexCoord4dv\0"
"glMultiTexCoord4dvARB\0"
"\0"
- /* _mesa_function_pool[23376]: PixelTransformParameteriEXT (dynamic) */
+ /* _mesa_function_pool[23448]: PixelTransformParameteriEXT (dynamic) */
"iii\0"
"glPixelTransformParameteriEXT\0"
"\0"
- /* _mesa_function_pool[23411]: GetDoublev (offset 260) */
+ /* _mesa_function_pool[23483]: GetDoublev (offset 260) */
"ip\0"
"glGetDoublev\0"
"\0"
- /* _mesa_function_pool[23428]: MultiTexCoordP4ui (will be remapped) */
+ /* _mesa_function_pool[23500]: MultiTexCoordP4ui (will be remapped) */
"iii\0"
"glMultiTexCoordP4ui\0"
"\0"
- /* _mesa_function_pool[23453]: MultMatrixd (offset 295) */
+ /* _mesa_function_pool[23525]: MultMatrixd (offset 295) */
"p\0"
"glMultMatrixd\0"
"\0"
- /* _mesa_function_pool[23470]: MultMatrixf (offset 294) */
+ /* _mesa_function_pool[23542]: MultMatrixf (offset 294) */
"p\0"
"glMultMatrixf\0"
"\0"
- /* _mesa_function_pool[23487]: VertexAttribI4bvEXT (will be remapped) */
+ /* _mesa_function_pool[23559]: VertexAttribI4bvEXT (will be remapped) */
"ip\0"
"glVertexAttribI4bvEXT\0"
"glVertexAttribI4bv\0"
"\0"
- /* _mesa_function_pool[23532]: TexCoord2fColor4ubVertex3fSUN (dynamic) */
+ /* _mesa_function_pool[23604]: TexCoord2fColor4ubVertex3fSUN (dynamic) */
"ffiiiifff\0"
"glTexCoord2fColor4ubVertex3fSUN\0"
"\0"
- /* _mesa_function_pool[23575]: Uniform1iARB (will be remapped) */
+ /* _mesa_function_pool[23647]: Uniform1iARB (will be remapped) */
"ii\0"
"glUniform1i\0"
"glUniform1iARB\0"
"\0"
- /* _mesa_function_pool[23606]: GetnMapfvARB (will be remapped) */
+ /* _mesa_function_pool[23678]: GetnMapfvARB (will be remapped) */
"iiip\0"
"glGetnMapfvARB\0"
"\0"
- /* _mesa_function_pool[23627]: VertexAttribPointerARB (will be remapped) */
+ /* _mesa_function_pool[23699]: VertexAttribPointerARB (will be remapped) */
"iiiiip\0"
"glVertexAttribPointer\0"
"glVertexAttribPointerARB\0"
"\0"
- /* _mesa_function_pool[23682]: VertexAttrib3sNV (will be remapped) */
+ /* _mesa_function_pool[23754]: VertexAttrib3sNV (will be remapped) */
"iiii\0"
"glVertexAttrib3sNV\0"
"\0"
- /* _mesa_function_pool[23707]: SharpenTexFuncSGIS (dynamic) */
+ /* _mesa_function_pool[23779]: SharpenTexFuncSGIS (dynamic) */
"iip\0"
"glSharpenTexFuncSGIS\0"
"\0"
- /* _mesa_function_pool[23733]: MultiTexCoord4fvARB (offset 403) */
+ /* _mesa_function_pool[23805]: MultiTexCoord4fvARB (offset 403) */
"ip\0"
"glMultiTexCoord4fv\0"
"glMultiTexCoord4fvARB\0"
"\0"
- /* _mesa_function_pool[23778]: Uniform2uiEXT (will be remapped) */
+ /* _mesa_function_pool[23850]: Uniform2uiEXT (will be remapped) */
"iii\0"
"glUniform2uiEXT\0"
"glUniform2ui\0"
"\0"
- /* _mesa_function_pool[23812]: TexCoordP3uiv (will be remapped) */
+ /* _mesa_function_pool[23884]: TexCoordP3uiv (will be remapped) */
"ip\0"
"glTexCoordP3uiv\0"
"\0"
- /* _mesa_function_pool[23832]: UniformMatrix2x3fv (will be remapped) */
+ /* _mesa_function_pool[23904]: UniformMatrix2x3fv (will be remapped) */
"iiip\0"
"glUniformMatrix2x3fv\0"
"\0"
- /* _mesa_function_pool[23859]: SamplerParameteri (will be remapped) */
+ /* _mesa_function_pool[23931]: SamplerParameteri (will be remapped) */
"iii\0"
"glSamplerParameteri\0"
"\0"
- /* _mesa_function_pool[23884]: SamplerParameterf (will be remapped) */
+ /* _mesa_function_pool[23956]: SamplerParameterf (will be remapped) */
"iif\0"
"glSamplerParameterf\0"
"\0"
- /* _mesa_function_pool[23909]: CombinerParameteriNV (will be remapped) */
+ /* _mesa_function_pool[23981]: CombinerParameteriNV (will be remapped) */
"ii\0"
"glCombinerParameteriNV\0"
"\0"
- /* _mesa_function_pool[23936]: DeleteAsyncMarkersSGIX (dynamic) */
+ /* _mesa_function_pool[24008]: DeleteAsyncMarkersSGIX (dynamic) */
"ii\0"
"glDeleteAsyncMarkersSGIX\0"
"\0"
- /* _mesa_function_pool[23965]: ReplacementCodeusSUN (dynamic) */
+ /* _mesa_function_pool[24037]: ReplacementCodeusSUN (dynamic) */
"i\0"
"glReplacementCodeusSUN\0"
"\0"
- /* _mesa_function_pool[23991]: IsAsyncMarkerSGIX (dynamic) */
+ /* _mesa_function_pool[24063]: IsAsyncMarkerSGIX (dynamic) */
"i\0"
"glIsAsyncMarkerSGIX\0"
"\0"
- /* _mesa_function_pool[24014]: FrameZoomSGIX (dynamic) */
+ /* _mesa_function_pool[24086]: FrameZoomSGIX (dynamic) */
"i\0"
"glFrameZoomSGIX\0"
"\0"
- /* _mesa_function_pool[24033]: Normal3fVertex3fvSUN (dynamic) */
+ /* _mesa_function_pool[24105]: Normal3fVertex3fvSUN (dynamic) */
"pp\0"
"glNormal3fVertex3fvSUN\0"
"\0"
- /* _mesa_function_pool[24060]: GetnUniformuivARB (will be remapped) */
+ /* _mesa_function_pool[24132]: GetnUniformuivARB (will be remapped) */
"iiip\0"
"glGetnUniformuivARB\0"
"\0"
- /* _mesa_function_pool[24086]: RasterPos4sv (offset 85) */
+ /* _mesa_function_pool[24158]: RasterPos4sv (offset 85) */
"p\0"
"glRasterPos4sv\0"
"\0"
- /* _mesa_function_pool[24104]: VertexAttrib4NsvARB (will be remapped) */
+ /* _mesa_function_pool[24176]: VertexAttrib4NsvARB (will be remapped) */
"ip\0"
"glVertexAttrib4Nsv\0"
"glVertexAttrib4NsvARB\0"
"\0"
- /* _mesa_function_pool[24149]: VertexAttrib3fvARB (will be remapped) */
+ /* _mesa_function_pool[24221]: VertexAttrib3fvARB (will be remapped) */
"ip\0"
"glVertexAttrib3fv\0"
"glVertexAttrib3fvARB\0"
"\0"
- /* _mesa_function_pool[24192]: ClearColor (offset 206) */
+ /* _mesa_function_pool[24264]: ClearColor (offset 206) */
"ffff\0"
"glClearColor\0"
"\0"
- /* _mesa_function_pool[24211]: GetSynciv (will be remapped) */
+ /* _mesa_function_pool[24283]: GetSynciv (will be remapped) */
"iiipp\0"
"glGetSynciv\0"
"\0"
- /* _mesa_function_pool[24230]: ClearColorIiEXT (will be remapped) */
+ /* _mesa_function_pool[24302]: ClearColorIiEXT (will be remapped) */
"iiii\0"
"glClearColorIiEXT\0"
"\0"
- /* _mesa_function_pool[24254]: DeleteFramebuffersEXT (will be remapped) */
+ /* _mesa_function_pool[24326]: DeleteFramebuffersEXT (will be remapped) */
"ip\0"
"glDeleteFramebuffers\0"
"glDeleteFramebuffersEXT\0"
"\0"
- /* _mesa_function_pool[24303]: GlobalAlphaFactorsSUN (dynamic) */
+ /* _mesa_function_pool[24375]: GlobalAlphaFactorsSUN (dynamic) */
"i\0"
"glGlobalAlphaFactorsSUN\0"
"\0"
- /* _mesa_function_pool[24330]: IsEnabledIndexedEXT (will be remapped) */
+ /* _mesa_function_pool[24402]: IsEnabledIndexedEXT (will be remapped) */
"ii\0"
"glIsEnabledIndexedEXT\0"
"glIsEnabledi\0"
"\0"
- /* _mesa_function_pool[24369]: TexEnviv (offset 187) */
+ /* _mesa_function_pool[24441]: TexEnviv (offset 187) */
"iip\0"
"glTexEnviv\0"
"\0"
- /* _mesa_function_pool[24385]: TexSubImage3D (offset 372) */
+ /* _mesa_function_pool[24457]: TexSubImage3D (offset 372) */
"iiiiiiiiiip\0"
"glTexSubImage3D\0"
"glTexSubImage3DEXT\0"
"\0"
- /* _mesa_function_pool[24433]: Tangent3fEXT (dynamic) */
+ /* _mesa_function_pool[24505]: Tangent3fEXT (dynamic) */
"fff\0"
"glTangent3fEXT\0"
"\0"
- /* _mesa_function_pool[24453]: SecondaryColor3uivEXT (will be remapped) */
+ /* _mesa_function_pool[24525]: SecondaryColor3uivEXT (will be remapped) */
"p\0"
"glSecondaryColor3uiv\0"
"glSecondaryColor3uivEXT\0"
"\0"
- /* _mesa_function_pool[24501]: MatrixIndexubvARB (dynamic) */
+ /* _mesa_function_pool[24573]: MatrixIndexubvARB (dynamic) */
"ip\0"
"glMatrixIndexubvARB\0"
"\0"
- /* _mesa_function_pool[24525]: Color4fNormal3fVertex3fSUN (dynamic) */
+ /* _mesa_function_pool[24597]: Color4fNormal3fVertex3fSUN (dynamic) */
"ffffffffff\0"
"glColor4fNormal3fVertex3fSUN\0"
"\0"
- /* _mesa_function_pool[24566]: PixelTexGenParameterfSGIS (will be remapped) */
+ /* _mesa_function_pool[24638]: PixelTexGenParameterfSGIS (will be remapped) */
"if\0"
"glPixelTexGenParameterfSGIS\0"
"\0"
- /* _mesa_function_pool[24598]: CreateShader (will be remapped) */
+ /* _mesa_function_pool[24670]: CreateShader (will be remapped) */
"i\0"
"glCreateShader\0"
"\0"
- /* _mesa_function_pool[24616]: GetColorTableParameterfv (offset 344) */
+ /* _mesa_function_pool[24688]: GetColorTableParameterfv (offset 344) */
"iip\0"
"glGetColorTableParameterfv\0"
"glGetColorTableParameterfvSGI\0"
"glGetColorTableParameterfvEXT\0"
"\0"
- /* _mesa_function_pool[24708]: FragmentLightModelfvSGIX (dynamic) */
+ /* _mesa_function_pool[24780]: FragmentLightModelfvSGIX (dynamic) */
"ip\0"
"glFragmentLightModelfvSGIX\0"
"\0"
- /* _mesa_function_pool[24739]: Bitmap (offset 8) */
+ /* _mesa_function_pool[24811]: Bitmap (offset 8) */
"iiffffp\0"
"glBitmap\0"
"\0"
- /* _mesa_function_pool[24757]: MultiTexCoord3fARB (offset 394) */
+ /* _mesa_function_pool[24829]: MultiTexCoord3fARB (offset 394) */
"ifff\0"
"glMultiTexCoord3f\0"
"glMultiTexCoord3fARB\0"
"\0"
- /* _mesa_function_pool[24802]: GetTexLevelParameterfv (offset 284) */
+ /* _mesa_function_pool[24874]: GetTexLevelParameterfv (offset 284) */
"iiip\0"
"glGetTexLevelParameterfv\0"
"\0"
- /* _mesa_function_pool[24833]: GetPixelTexGenParameterfvSGIS (will be remapped) */
+ /* _mesa_function_pool[24905]: GetPixelTexGenParameterfvSGIS (will be remapped) */
"ip\0"
"glGetPixelTexGenParameterfvSGIS\0"
"\0"
- /* _mesa_function_pool[24869]: GenFramebuffersEXT (will be remapped) */
+ /* _mesa_function_pool[24941]: GenFramebuffersEXT (will be remapped) */
"ip\0"
"glGenFramebuffers\0"
"glGenFramebuffersEXT\0"
"\0"
- /* _mesa_function_pool[24912]: VertexAttribDivisor (will be remapped) */
+ /* _mesa_function_pool[24984]: VertexAttribDivisor (will be remapped) */
"ii\0"
"glVertexAttribDivisor\0"
"\0"
- /* _mesa_function_pool[24938]: GetProgramParameterdvNV (will be remapped) */
+ /* _mesa_function_pool[25010]: GetProgramParameterdvNV (will be remapped) */
"iiip\0"
"glGetProgramParameterdvNV\0"
"\0"
- /* _mesa_function_pool[24970]: Vertex2sv (offset 133) */
+ /* _mesa_function_pool[25042]: Vertex2sv (offset 133) */
"p\0"
"glVertex2sv\0"
"\0"
- /* _mesa_function_pool[24985]: GetIntegerv (offset 263) */
+ /* _mesa_function_pool[25057]: GetIntegerv (offset 263) */
"ip\0"
"glGetIntegerv\0"
"\0"
- /* _mesa_function_pool[25003]: IsVertexArrayAPPLE (will be remapped) */
+ /* _mesa_function_pool[25075]: IsVertexArrayAPPLE (will be remapped) */
"i\0"
"glIsVertexArray\0"
"glIsVertexArrayAPPLE\0"
"\0"
- /* _mesa_function_pool[25043]: FragmentLightfvSGIX (dynamic) */
+ /* _mesa_function_pool[25115]: FragmentLightfvSGIX (dynamic) */
"iip\0"
"glFragmentLightfvSGIX\0"
"\0"
- /* _mesa_function_pool[25070]: GetnMapdvARB (will be remapped) */
+ /* _mesa_function_pool[25142]: GetnMapdvARB (will be remapped) */
"iiip\0"
"glGetnMapdvARB\0"
"\0"
- /* _mesa_function_pool[25091]: DetachShader (will be remapped) */
+ /* _mesa_function_pool[25163]: DetachShader (will be remapped) */
"ii\0"
"glDetachShader\0"
"\0"
- /* _mesa_function_pool[25110]: VertexAttrib4NubARB (will be remapped) */
+ /* _mesa_function_pool[25182]: VertexAttrib4NubARB (will be remapped) */
"iiiii\0"
"glVertexAttrib4Nub\0"
"glVertexAttrib4NubARB\0"
"\0"
- /* _mesa_function_pool[25158]: GetProgramEnvParameterfvARB (will be remapped) */
+ /* _mesa_function_pool[25230]: GetProgramEnvParameterfvARB (will be remapped) */
"iip\0"
"glGetProgramEnvParameterfvARB\0"
"\0"
- /* _mesa_function_pool[25193]: GetTrackMatrixivNV (will be remapped) */
+ /* _mesa_function_pool[25265]: GetTrackMatrixivNV (will be remapped) */
"iiip\0"
"glGetTrackMatrixivNV\0"
"\0"
- /* _mesa_function_pool[25220]: VertexAttrib3svNV (will be remapped) */
+ /* _mesa_function_pool[25292]: VertexAttrib3svNV (will be remapped) */
"ip\0"
"glVertexAttrib3svNV\0"
"\0"
- /* _mesa_function_pool[25244]: Uniform4fvARB (will be remapped) */
+ /* _mesa_function_pool[25316]: Uniform4fvARB (will be remapped) */
"iip\0"
"glUniform4fv\0"
"glUniform4fvARB\0"
"\0"
- /* _mesa_function_pool[25278]: MultTransposeMatrixfARB (will be remapped) */
+ /* _mesa_function_pool[25350]: MultTransposeMatrixfARB (will be remapped) */
"p\0"
"glMultTransposeMatrixf\0"
"glMultTransposeMatrixfARB\0"
"\0"
- /* _mesa_function_pool[25330]: GetTexEnviv (offset 277) */
+ /* _mesa_function_pool[25402]: GetTexEnviv (offset 277) */
"iip\0"
"glGetTexEnviv\0"
"\0"
- /* _mesa_function_pool[25349]: ColorFragmentOp1ATI (will be remapped) */
+ /* _mesa_function_pool[25421]: ColorFragmentOp1ATI (will be remapped) */
"iiiiiii\0"
"glColorFragmentOp1ATI\0"
"\0"
- /* _mesa_function_pool[25380]: GetUniformfvARB (will be remapped) */
+ /* _mesa_function_pool[25452]: GetUniformfvARB (will be remapped) */
"iip\0"
"glGetUniformfv\0"
"glGetUniformfvARB\0"
"\0"
- /* _mesa_function_pool[25418]: EGLImageTargetRenderbufferStorageOES (will be remapped) */
+ /* _mesa_function_pool[25490]: EGLImageTargetRenderbufferStorageOES (will be remapped) */
"ip\0"
"glEGLImageTargetRenderbufferStorageOES\0"
"\0"
- /* _mesa_function_pool[25461]: VertexAttribI2ivEXT (will be remapped) */
+ /* _mesa_function_pool[25533]: VertexAttribI2ivEXT (will be remapped) */
"ip\0"
"glVertexAttribI2ivEXT\0"
"glVertexAttribI2iv\0"
"\0"
- /* _mesa_function_pool[25506]: PopClientAttrib (offset 334) */
+ /* _mesa_function_pool[25578]: PopClientAttrib (offset 334) */
"\0"
"glPopClientAttrib\0"
"\0"
- /* _mesa_function_pool[25526]: ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN (dynamic) */
+ /* _mesa_function_pool[25598]: ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN (dynamic) */
"iffffffffffff\0"
"glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN\0"
"\0"
- /* _mesa_function_pool[25597]: DetachObjectARB (will be remapped) */
+ /* _mesa_function_pool[25669]: DetachObjectARB (will be remapped) */
"ii\0"
"glDetachObjectARB\0"
"\0"
- /* _mesa_function_pool[25619]: VertexBlendARB (dynamic) */
+ /* _mesa_function_pool[25691]: VertexBlendARB (dynamic) */
"i\0"
"glVertexBlendARB\0"
"\0"
- /* _mesa_function_pool[25639]: WindowPos3iMESA (will be remapped) */
+ /* _mesa_function_pool[25711]: WindowPos3iMESA (will be remapped) */
"iii\0"
"glWindowPos3i\0"
"glWindowPos3iARB\0"
"glWindowPos3iMESA\0"
"\0"
- /* _mesa_function_pool[25693]: SeparableFilter2D (offset 360) */
+ /* _mesa_function_pool[25765]: SeparableFilter2D (offset 360) */
"iiiiiipp\0"
"glSeparableFilter2D\0"
"glSeparableFilter2DEXT\0"
"\0"
- /* _mesa_function_pool[25746]: ProgramParameteriARB (will be remapped) */
+ /* _mesa_function_pool[25818]: ProgramParameteriARB (will be remapped) */
"iii\0"
"glProgramParameteriARB\0"
"\0"
- /* _mesa_function_pool[25774]: Map1d (offset 220) */
+ /* _mesa_function_pool[25846]: Map1d (offset 220) */
"iddiip\0"
"glMap1d\0"
"\0"
- /* _mesa_function_pool[25790]: Map1f (offset 221) */
+ /* _mesa_function_pool[25862]: Map1f (offset 221) */
"iffiip\0"
"glMap1f\0"
"\0"
- /* _mesa_function_pool[25806]: CompressedTexImage2DARB (will be remapped) */
+ /* _mesa_function_pool[25878]: CompressedTexImage2DARB (will be remapped) */
"iiiiiiip\0"
"glCompressedTexImage2D\0"
"glCompressedTexImage2DARB\0"
"\0"
- /* _mesa_function_pool[25865]: ArrayElement (offset 306) */
+ /* _mesa_function_pool[25937]: ArrayElement (offset 306) */
"i\0"
"glArrayElement\0"
"glArrayElementEXT\0"
"\0"
- /* _mesa_function_pool[25901]: TexImage2D (offset 183) */
+ /* _mesa_function_pool[25973]: TexImage2D (offset 183) */
"iiiiiiiip\0"
"glTexImage2D\0"
"\0"
- /* _mesa_function_pool[25925]: DepthBoundsEXT (will be remapped) */
+ /* _mesa_function_pool[25997]: DepthBoundsEXT (will be remapped) */
"dd\0"
"glDepthBoundsEXT\0"
"\0"
- /* _mesa_function_pool[25946]: ProgramParameters4fvNV (will be remapped) */
+ /* _mesa_function_pool[26018]: ProgramParameters4fvNV (will be remapped) */
"iiip\0"
"glProgramParameters4fvNV\0"
"\0"
- /* _mesa_function_pool[25977]: DeformationMap3fSGIX (dynamic) */
+ /* _mesa_function_pool[26049]: DeformationMap3fSGIX (dynamic) */
"iffiiffiiffiip\0"
"glDeformationMap3fSGIX\0"
"\0"
- /* _mesa_function_pool[26016]: GetProgramivNV (will be remapped) */
+ /* _mesa_function_pool[26088]: GetProgramivNV (will be remapped) */
"iip\0"
"glGetProgramivNV\0"
"\0"
- /* _mesa_function_pool[26038]: GetFragDataLocationEXT (will be remapped) */
+ /* _mesa_function_pool[26110]: GetFragDataLocationEXT (will be remapped) */
"ip\0"
"glGetFragDataLocationEXT\0"
"glGetFragDataLocation\0"
"\0"
- /* _mesa_function_pool[26089]: GetMinmaxParameteriv (offset 366) */
+ /* _mesa_function_pool[26161]: GetMinmaxParameteriv (offset 366) */
"iip\0"
"glGetMinmaxParameteriv\0"
"glGetMinmaxParameterivEXT\0"
"\0"
- /* _mesa_function_pool[26143]: PixelTransferf (offset 247) */
+ /* _mesa_function_pool[26215]: PixelTransferf (offset 247) */
"if\0"
"glPixelTransferf\0"
"\0"
- /* _mesa_function_pool[26164]: CopyTexImage1D (offset 323) */
+ /* _mesa_function_pool[26236]: CopyTexImage1D (offset 323) */
"iiiiiii\0"
"glCopyTexImage1D\0"
"glCopyTexImage1DEXT\0"
"\0"
- /* _mesa_function_pool[26210]: PushMatrix (offset 298) */
+ /* _mesa_function_pool[26282]: PushMatrix (offset 298) */
"\0"
"glPushMatrix\0"
"\0"
- /* _mesa_function_pool[26225]: Fogiv (offset 156) */
+ /* _mesa_function_pool[26297]: Fogiv (offset 156) */
"ip\0"
"glFogiv\0"
"\0"
- /* _mesa_function_pool[26237]: TexCoord1dv (offset 95) */
+ /* _mesa_function_pool[26309]: TexCoord1dv (offset 95) */
"p\0"
"glTexCoord1dv\0"
"\0"
- /* _mesa_function_pool[26254]: AlphaFragmentOp3ATI (will be remapped) */
+ /* _mesa_function_pool[26326]: AlphaFragmentOp3ATI (will be remapped) */
"iiiiiiiiiiii\0"
"glAlphaFragmentOp3ATI\0"
"\0"
- /* _mesa_function_pool[26290]: PixelTransferi (offset 248) */
+ /* _mesa_function_pool[26362]: PixelTransferi (offset 248) */
"ii\0"
"glPixelTransferi\0"
"\0"
- /* _mesa_function_pool[26311]: GetnColorTableARB (will be remapped) */
+ /* _mesa_function_pool[26383]: GetnColorTableARB (will be remapped) */
"iiiip\0"
"glGetnColorTableARB\0"
"\0"
- /* _mesa_function_pool[26338]: VertexAttrib3fvNV (will be remapped) */
+ /* _mesa_function_pool[26410]: VertexAttrib3fvNV (will be remapped) */
"ip\0"
"glVertexAttrib3fvNV\0"
"\0"
- /* _mesa_function_pool[26362]: Rotatef (offset 300) */
+ /* _mesa_function_pool[26434]: Rotatef (offset 300) */
"ffff\0"
"glRotatef\0"
"\0"
- /* _mesa_function_pool[26378]: GetFinalCombinerInputParameterivNV (will be remapped) */
+ /* _mesa_function_pool[26450]: GetFinalCombinerInputParameterivNV (will be remapped) */
"iip\0"
"glGetFinalCombinerInputParameterivNV\0"
"\0"
- /* _mesa_function_pool[26420]: Vertex3i (offset 138) */
+ /* _mesa_function_pool[26492]: Vertex3i (offset 138) */
"iii\0"
"glVertex3i\0"
"\0"
- /* _mesa_function_pool[26436]: SecondaryColorP3ui (will be remapped) */
+ /* _mesa_function_pool[26508]: SecondaryColorP3ui (will be remapped) */
"ii\0"
"glSecondaryColorP3ui\0"
"\0"
- /* _mesa_function_pool[26461]: Vertex3f (offset 136) */
+ /* _mesa_function_pool[26533]: Vertex3f (offset 136) */
"fff\0"
"glVertex3f\0"
"\0"
- /* _mesa_function_pool[26477]: Clear (offset 203) */
+ /* _mesa_function_pool[26549]: Clear (offset 203) */
"i\0"
"glClear\0"
"\0"
- /* _mesa_function_pool[26488]: Vertex3d (offset 134) */
+ /* _mesa_function_pool[26560]: Vertex3d (offset 134) */
"ddd\0"
"glVertex3d\0"
"\0"
- /* _mesa_function_pool[26504]: GetMapParameterivNV (dynamic) */
+ /* _mesa_function_pool[26576]: GetMapParameterivNV (dynamic) */
"iip\0"
"glGetMapParameterivNV\0"
"\0"
- /* _mesa_function_pool[26531]: Uniform4iARB (will be remapped) */
+ /* _mesa_function_pool[26603]: Uniform4iARB (will be remapped) */
"iiiii\0"
"glUniform4i\0"
"glUniform4iARB\0"
"\0"
- /* _mesa_function_pool[26565]: ReadBuffer (offset 254) */
+ /* _mesa_function_pool[26637]: ReadBuffer (offset 254) */
"i\0"
"glReadBuffer\0"
"\0"
- /* _mesa_function_pool[26581]: ConvolutionParameteri (offset 352) */
+ /* _mesa_function_pool[26653]: ConvolutionParameteri (offset 352) */
"iii\0"
"glConvolutionParameteri\0"
"glConvolutionParameteriEXT\0"
"\0"
- /* _mesa_function_pool[26637]: Ortho (offset 296) */
+ /* _mesa_function_pool[26709]: Ortho (offset 296) */
"dddddd\0"
"glOrtho\0"
"\0"
- /* _mesa_function_pool[26653]: Binormal3sEXT (dynamic) */
+ /* _mesa_function_pool[26725]: Binormal3sEXT (dynamic) */
"iii\0"
"glBinormal3sEXT\0"
"\0"
- /* _mesa_function_pool[26674]: ListBase (offset 6) */
+ /* _mesa_function_pool[26746]: ListBase (offset 6) */
"i\0"
"glListBase\0"
"\0"
- /* _mesa_function_pool[26688]: VertexAttribI3ivEXT (will be remapped) */
+ /* _mesa_function_pool[26760]: VertexAttribI3ivEXT (will be remapped) */
"ip\0"
"glVertexAttribI3ivEXT\0"
"glVertexAttribI3iv\0"
"\0"
- /* _mesa_function_pool[26733]: MultiTexCoordP1ui (will be remapped) */
+ /* _mesa_function_pool[26805]: MultiTexCoordP1ui (will be remapped) */
"iii\0"
"glMultiTexCoordP1ui\0"
"\0"
- /* _mesa_function_pool[26758]: Vertex3s (offset 140) */
+ /* _mesa_function_pool[26830]: Vertex3s (offset 140) */
"iii\0"
"glVertex3s\0"
"\0"
- /* _mesa_function_pool[26774]: ConvolutionParameterf (offset 350) */
+ /* _mesa_function_pool[26846]: ConvolutionParameterf (offset 350) */
"iif\0"
"glConvolutionParameterf\0"
"glConvolutionParameterfEXT\0"
"\0"
- /* _mesa_function_pool[26830]: GetColorTableParameteriv (offset 345) */
+ /* _mesa_function_pool[26902]: GetColorTableParameteriv (offset 345) */
"iip\0"
"glGetColorTableParameteriv\0"
"glGetColorTableParameterivSGI\0"
"glGetColorTableParameterivEXT\0"
"\0"
- /* _mesa_function_pool[26922]: ProgramEnvParameter4dvARB (will be remapped) */
+ /* _mesa_function_pool[26994]: ProgramEnvParameter4dvARB (will be remapped) */
"iip\0"
"glProgramEnvParameter4dvARB\0"
"glProgramParameter4dvNV\0"
"\0"
- /* _mesa_function_pool[26979]: ShadeModel (offset 177) */
+ /* _mesa_function_pool[27051]: ShadeModel (offset 177) */
"i\0"
"glShadeModel\0"
"\0"
- /* _mesa_function_pool[26995]: VertexAttribs2fvNV (will be remapped) */
+ /* _mesa_function_pool[27067]: VertexAttribs2fvNV (will be remapped) */
"iip\0"
"glVertexAttribs2fvNV\0"
"\0"
- /* _mesa_function_pool[27021]: Rectiv (offset 91) */
+ /* _mesa_function_pool[27093]: Rectiv (offset 91) */
"pp\0"
"glRectiv\0"
"\0"
- /* _mesa_function_pool[27034]: UseProgramObjectARB (will be remapped) */
+ /* _mesa_function_pool[27106]: UseProgramObjectARB (will be remapped) */
"i\0"
"glUseProgram\0"
"glUseProgramObjectARB\0"
"\0"
- /* _mesa_function_pool[27072]: GetMapParameterfvNV (dynamic) */
+ /* _mesa_function_pool[27144]: GetMapParameterfvNV (dynamic) */
"iip\0"
"glGetMapParameterfvNV\0"
"\0"
- /* _mesa_function_pool[27099]: EndConditionalRenderNV (will be remapped) */
+ /* _mesa_function_pool[27171]: EndConditionalRenderNV (will be remapped) */
"\0"
"glEndConditionalRenderNV\0"
"glEndConditionalRender\0"
"\0"
- /* _mesa_function_pool[27149]: PassTexCoordATI (will be remapped) */
+ /* _mesa_function_pool[27221]: PassTexCoordATI (will be remapped) */
"iii\0"
"glPassTexCoordATI\0"
"\0"
- /* _mesa_function_pool[27172]: DeleteProgram (will be remapped) */
+ /* _mesa_function_pool[27244]: DeleteProgram (will be remapped) */
"i\0"
"glDeleteProgram\0"
"\0"
- /* _mesa_function_pool[27191]: GetSamplerParameteriv (will be remapped) */
+ /* _mesa_function_pool[27263]: GetSamplerParameteriv (will be remapped) */
"iip\0"
"glGetSamplerParameteriv\0"
"\0"
- /* _mesa_function_pool[27220]: Tangent3dEXT (dynamic) */
+ /* _mesa_function_pool[27292]: Tangent3dEXT (dynamic) */
"ddd\0"
"glTangent3dEXT\0"
"\0"
- /* _mesa_function_pool[27240]: SecondaryColor3dvEXT (will be remapped) */
+ /* _mesa_function_pool[27312]: SecondaryColor3dvEXT (will be remapped) */
"p\0"
"glSecondaryColor3dv\0"
"glSecondaryColor3dvEXT\0"
"\0"
- /* _mesa_function_pool[27286]: AlphaFragmentOp2ATI (will be remapped) */
+ /* _mesa_function_pool[27358]: AlphaFragmentOp2ATI (will be remapped) */
"iiiiiiiii\0"
"glAlphaFragmentOp2ATI\0"
"\0"
- /* _mesa_function_pool[27319]: Vertex2fv (offset 129) */
+ /* _mesa_function_pool[27391]: Vertex2fv (offset 129) */
"p\0"
"glVertex2fv\0"
"\0"
- /* _mesa_function_pool[27334]: MultiDrawArraysEXT (will be remapped) */
+ /* _mesa_function_pool[27406]: MultiDrawArraysEXT (will be remapped) */
"ippi\0"
"glMultiDrawArrays\0"
"glMultiDrawArraysEXT\0"
"\0"
- /* _mesa_function_pool[27379]: BindRenderbufferEXT (will be remapped) */
+ /* _mesa_function_pool[27451]: BindRenderbufferEXT (will be remapped) */
"ii\0"
"glBindRenderbuffer\0"
"glBindRenderbufferEXT\0"
"\0"
- /* _mesa_function_pool[27424]: MultiTexCoord4dARB (offset 400) */
+ /* _mesa_function_pool[27496]: MultiTexCoord4dARB (offset 400) */
"idddd\0"
"glMultiTexCoord4d\0"
"glMultiTexCoord4dARB\0"
"\0"
- /* _mesa_function_pool[27470]: FramebufferTextureFaceARB (will be remapped) */
+ /* _mesa_function_pool[27542]: FramebufferTextureFaceARB (will be remapped) */
"iiiii\0"
"glFramebufferTextureFaceARB\0"
"\0"
- /* _mesa_function_pool[27505]: Vertex3sv (offset 141) */
+ /* _mesa_function_pool[27577]: Vertex3sv (offset 141) */
"p\0"
"glVertex3sv\0"
"\0"
- /* _mesa_function_pool[27520]: SecondaryColor3usEXT (will be remapped) */
+ /* _mesa_function_pool[27592]: SecondaryColor3usEXT (will be remapped) */
"iii\0"
"glSecondaryColor3us\0"
"glSecondaryColor3usEXT\0"
"\0"
- /* _mesa_function_pool[27568]: ProgramLocalParameter4fvARB (will be remapped) */
+ /* _mesa_function_pool[27640]: ProgramLocalParameter4fvARB (will be remapped) */
"iip\0"
"glProgramLocalParameter4fvARB\0"
"\0"
- /* _mesa_function_pool[27603]: DeleteProgramsNV (will be remapped) */
+ /* _mesa_function_pool[27675]: DeleteProgramsNV (will be remapped) */
"ip\0"
"glDeleteProgramsARB\0"
"glDeleteProgramsNV\0"
"\0"
- /* _mesa_function_pool[27646]: EvalMesh1 (offset 236) */
+ /* _mesa_function_pool[27718]: EvalMesh1 (offset 236) */
"iii\0"
"glEvalMesh1\0"
"\0"
- /* _mesa_function_pool[27663]: PauseTransformFeedback (will be remapped) */
+ /* _mesa_function_pool[27735]: PauseTransformFeedback (will be remapped) */
"\0"
"glPauseTransformFeedback\0"
"\0"
- /* _mesa_function_pool[27690]: MultiTexCoord1sARB (offset 382) */
+ /* _mesa_function_pool[27762]: MultiTexCoord1sARB (offset 382) */
"ii\0"
"glMultiTexCoord1s\0"
"glMultiTexCoord1sARB\0"
"\0"
- /* _mesa_function_pool[27733]: ReplacementCodeuiColor3fVertex3fSUN (dynamic) */
+ /* _mesa_function_pool[27805]: ReplacementCodeuiColor3fVertex3fSUN (dynamic) */
"iffffff\0"
"glReplacementCodeuiColor3fVertex3fSUN\0"
"\0"
- /* _mesa_function_pool[27780]: GetVertexAttribPointervNV (will be remapped) */
+ /* _mesa_function_pool[27852]: GetVertexAttribPointervNV (will be remapped) */
"iip\0"
"glGetVertexAttribPointerv\0"
"glGetVertexAttribPointervARB\0"
"glGetVertexAttribPointervNV\0"
"\0"
- /* _mesa_function_pool[27868]: VertexAttribs1fvNV (will be remapped) */
+ /* _mesa_function_pool[27940]: VertexAttribs1fvNV (will be remapped) */
"iip\0"
"glVertexAttribs1fvNV\0"
"\0"
- /* _mesa_function_pool[27894]: MultiTexCoord1dvARB (offset 377) */
+ /* _mesa_function_pool[27966]: MultiTexCoord1dvARB (offset 377) */
"ip\0"
"glMultiTexCoord1dv\0"
"glMultiTexCoord1dvARB\0"
"\0"
- /* _mesa_function_pool[27939]: Uniform2iARB (will be remapped) */
+ /* _mesa_function_pool[28011]: Uniform2iARB (will be remapped) */
"iii\0"
"glUniform2i\0"
"glUniform2iARB\0"
"\0"
- /* _mesa_function_pool[27971]: Vertex2iv (offset 131) */
+ /* _mesa_function_pool[28043]: Vertex2iv (offset 131) */
"p\0"
"glVertex2iv\0"
"\0"
- /* _mesa_function_pool[27986]: GetProgramStringNV (will be remapped) */
+ /* _mesa_function_pool[28058]: GetProgramStringNV (will be remapped) */
"iip\0"
"glGetProgramStringNV\0"
"\0"
- /* _mesa_function_pool[28012]: ColorPointerEXT (will be remapped) */
+ /* _mesa_function_pool[28084]: ColorPointerEXT (will be remapped) */
"iiiip\0"
"glColorPointerEXT\0"
"\0"
- /* _mesa_function_pool[28037]: LineWidth (offset 168) */
+ /* _mesa_function_pool[28109]: LineWidth (offset 168) */
"f\0"
"glLineWidth\0"
"\0"
- /* _mesa_function_pool[28052]: MapBufferARB (will be remapped) */
+ /* _mesa_function_pool[28124]: MapBufferARB (will be remapped) */
"ii\0"
"glMapBuffer\0"
"glMapBufferARB\0"
"\0"
- /* _mesa_function_pool[28083]: MultiDrawElementsBaseVertex (will be remapped) */
+ /* _mesa_function_pool[28155]: MultiDrawElementsBaseVertex (will be remapped) */
"ipipip\0"
"glMultiDrawElementsBaseVertex\0"
"\0"
- /* _mesa_function_pool[28121]: TexParameterIuivEXT (will be remapped) */
+ /* _mesa_function_pool[28193]: TexParameterIuivEXT (will be remapped) */
"iip\0"
"glTexParameterIuivEXT\0"
"glTexParameterIuiv\0"
"\0"
- /* _mesa_function_pool[28167]: Binormal3svEXT (dynamic) */
+ /* _mesa_function_pool[28239]: Binormal3svEXT (dynamic) */
"p\0"
"glBinormal3svEXT\0"
"\0"
- /* _mesa_function_pool[28187]: ApplyTextureEXT (dynamic) */
+ /* _mesa_function_pool[28259]: ApplyTextureEXT (dynamic) */
"i\0"
"glApplyTextureEXT\0"
"\0"
- /* _mesa_function_pool[28208]: GetBufferParameteri64v (will be remapped) */
+ /* _mesa_function_pool[28280]: GetBufferParameteri64v (will be remapped) */
"iip\0"
"glGetBufferParameteri64v\0"
"\0"
- /* _mesa_function_pool[28238]: TexGendv (offset 189) */
+ /* _mesa_function_pool[28310]: TexGendv (offset 189) */
"iip\0"
"glTexGendv\0"
"\0"
- /* _mesa_function_pool[28254]: VertexAttribI3iEXT (will be remapped) */
+ /* _mesa_function_pool[28326]: VertexAttribI3iEXT (will be remapped) */
"iiii\0"
"glVertexAttribI3iEXT\0"
"glVertexAttribI3i\0"
"\0"
- /* _mesa_function_pool[28299]: EnableIndexedEXT (will be remapped) */
+ /* _mesa_function_pool[28371]: EnableIndexedEXT (will be remapped) */
"ii\0"
"glEnableIndexedEXT\0"
"glEnablei\0"
"\0"
- /* _mesa_function_pool[28332]: TextureMaterialEXT (dynamic) */
+ /* _mesa_function_pool[28404]: TextureMaterialEXT (dynamic) */
"ii\0"
"glTextureMaterialEXT\0"
"\0"
- /* _mesa_function_pool[28357]: TextureLightEXT (dynamic) */
+ /* _mesa_function_pool[28429]: TextureLightEXT (dynamic) */
"i\0"
"glTextureLightEXT\0"
"\0"
- /* _mesa_function_pool[28378]: ResetMinmax (offset 370) */
+ /* _mesa_function_pool[28450]: ResetMinmax (offset 370) */
"i\0"
"glResetMinmax\0"
"glResetMinmaxEXT\0"
"\0"
- /* _mesa_function_pool[28412]: SpriteParameterfSGIX (dynamic) */
+ /* _mesa_function_pool[28484]: SpriteParameterfSGIX (dynamic) */
"if\0"
"glSpriteParameterfSGIX\0"
"\0"
- /* _mesa_function_pool[28439]: EnableClientState (offset 313) */
+ /* _mesa_function_pool[28511]: EnableClientState (offset 313) */
"i\0"
"glEnableClientState\0"
"\0"
- /* _mesa_function_pool[28462]: VertexAttrib4sNV (will be remapped) */
+ /* _mesa_function_pool[28534]: VertexAttrib4sNV (will be remapped) */
"iiiii\0"
"glVertexAttrib4sNV\0"
"\0"
- /* _mesa_function_pool[28488]: GetConvolutionParameterfv (offset 357) */
+ /* _mesa_function_pool[28560]: GetConvolutionParameterfv (offset 357) */
"iip\0"
"glGetConvolutionParameterfv\0"
"glGetConvolutionParameterfvEXT\0"
"\0"
- /* _mesa_function_pool[28552]: VertexAttribs4dvNV (will be remapped) */
+ /* _mesa_function_pool[28624]: VertexAttribs4dvNV (will be remapped) */
"iip\0"
"glVertexAttribs4dvNV\0"
"\0"
- /* _mesa_function_pool[28578]: VertexAttrib4dARB (will be remapped) */
+ /* _mesa_function_pool[28650]: VertexAttrib4dARB (will be remapped) */
"idddd\0"
"glVertexAttrib4d\0"
"glVertexAttrib4dARB\0"
"\0"
- /* _mesa_function_pool[28622]: GetTexBumpParameterfvATI (will be remapped) */
+ /* _mesa_function_pool[28694]: GetTexBumpParameterfvATI (will be remapped) */
"ip\0"
"glGetTexBumpParameterfvATI\0"
"\0"
- /* _mesa_function_pool[28653]: ProgramNamedParameter4dNV (will be remapped) */
+ /* _mesa_function_pool[28725]: ProgramNamedParameter4dNV (will be remapped) */
"iipdddd\0"
"glProgramNamedParameter4dNV\0"
"\0"
- /* _mesa_function_pool[28690]: GetMaterialfv (offset 269) */
+ /* _mesa_function_pool[28762]: GetMaterialfv (offset 269) */
"iip\0"
"glGetMaterialfv\0"
"\0"
- /* _mesa_function_pool[28711]: VertexWeightfEXT (dynamic) */
+ /* _mesa_function_pool[28783]: VertexWeightfEXT (dynamic) */
"f\0"
"glVertexWeightfEXT\0"
"\0"
- /* _mesa_function_pool[28733]: SetFragmentShaderConstantATI (will be remapped) */
+ /* _mesa_function_pool[28805]: SetFragmentShaderConstantATI (will be remapped) */
"ip\0"
"glSetFragmentShaderConstantATI\0"
"\0"
- /* _mesa_function_pool[28768]: Binormal3fEXT (dynamic) */
+ /* _mesa_function_pool[28840]: Binormal3fEXT (dynamic) */
"fff\0"
"glBinormal3fEXT\0"
"\0"
- /* _mesa_function_pool[28789]: CallList (offset 2) */
+ /* _mesa_function_pool[28861]: CallList (offset 2) */
"i\0"
"glCallList\0"
"\0"
- /* _mesa_function_pool[28803]: Materialfv (offset 170) */
+ /* _mesa_function_pool[28875]: Materialfv (offset 170) */
"iip\0"
"glMaterialfv\0"
"\0"
- /* _mesa_function_pool[28821]: TexCoord3fv (offset 113) */
+ /* _mesa_function_pool[28893]: TexCoord3fv (offset 113) */
"p\0"
"glTexCoord3fv\0"
"\0"
- /* _mesa_function_pool[28838]: FogCoordfvEXT (will be remapped) */
+ /* _mesa_function_pool[28910]: FogCoordfvEXT (will be remapped) */
"p\0"
"glFogCoordfv\0"
"glFogCoordfvEXT\0"
"\0"
- /* _mesa_function_pool[28870]: MultiTexCoord1ivARB (offset 381) */
+ /* _mesa_function_pool[28942]: MultiTexCoord1ivARB (offset 381) */
"ip\0"
"glMultiTexCoord1iv\0"
"glMultiTexCoord1ivARB\0"
"\0"
- /* _mesa_function_pool[28915]: SecondaryColor3ubEXT (will be remapped) */
+ /* _mesa_function_pool[28987]: SecondaryColor3ubEXT (will be remapped) */
"iii\0"
"glSecondaryColor3ub\0"
"glSecondaryColor3ubEXT\0"
"\0"
- /* _mesa_function_pool[28963]: MultiTexCoord2ivARB (offset 389) */
+ /* _mesa_function_pool[29035]: MultiTexCoord2ivARB (offset 389) */
"ip\0"
"glMultiTexCoord2iv\0"
"glMultiTexCoord2ivARB\0"
"\0"
- /* _mesa_function_pool[29008]: FogFuncSGIS (dynamic) */
+ /* _mesa_function_pool[29080]: FogFuncSGIS (dynamic) */
"ip\0"
"glFogFuncSGIS\0"
"\0"
- /* _mesa_function_pool[29026]: CopyTexSubImage2D (offset 326) */
+ /* _mesa_function_pool[29098]: CopyTexSubImage2D (offset 326) */
"iiiiiiii\0"
"glCopyTexSubImage2D\0"
"glCopyTexSubImage2DEXT\0"
"\0"
- /* _mesa_function_pool[29079]: GetObjectParameterivARB (will be remapped) */
+ /* _mesa_function_pool[29151]: GetObjectParameterivARB (will be remapped) */
"iip\0"
"glGetObjectParameterivARB\0"
"\0"
- /* _mesa_function_pool[29110]: Color3iv (offset 16) */
+ /* _mesa_function_pool[29182]: Color3iv (offset 16) */
"p\0"
"glColor3iv\0"
"\0"
- /* _mesa_function_pool[29124]: TexCoord4fVertex4fSUN (dynamic) */
+ /* _mesa_function_pool[29196]: TexCoord4fVertex4fSUN (dynamic) */
"ffffffff\0"
"glTexCoord4fVertex4fSUN\0"
"\0"
- /* _mesa_function_pool[29158]: DrawElements (offset 311) */
+ /* _mesa_function_pool[29230]: DrawElements (offset 311) */
"iiip\0"
"glDrawElements\0"
"\0"
- /* _mesa_function_pool[29179]: BindVertexArrayAPPLE (will be remapped) */
+ /* _mesa_function_pool[29251]: BindVertexArrayAPPLE (will be remapped) */
"i\0"
"glBindVertexArrayAPPLE\0"
"\0"
- /* _mesa_function_pool[29205]: GetProgramLocalParameterdvARB (will be remapped) */
+ /* _mesa_function_pool[29277]: GetProgramLocalParameterdvARB (will be remapped) */
"iip\0"
"glGetProgramLocalParameterdvARB\0"
"\0"
- /* _mesa_function_pool[29242]: GetHistogramParameteriv (offset 363) */
+ /* _mesa_function_pool[29314]: GetHistogramParameteriv (offset 363) */
"iip\0"
"glGetHistogramParameteriv\0"
"glGetHistogramParameterivEXT\0"
"\0"
- /* _mesa_function_pool[29302]: MultiTexCoord1iARB (offset 380) */
+ /* _mesa_function_pool[29374]: MultiTexCoord1iARB (offset 380) */
"ii\0"
"glMultiTexCoord1i\0"
"glMultiTexCoord1iARB\0"
"\0"
- /* _mesa_function_pool[29345]: GetConvolutionFilter (offset 356) */
+ /* _mesa_function_pool[29417]: GetConvolutionFilter (offset 356) */
"iiip\0"
"glGetConvolutionFilter\0"
"glGetConvolutionFilterEXT\0"
"\0"
- /* _mesa_function_pool[29400]: GetProgramivARB (will be remapped) */
+ /* _mesa_function_pool[29472]: GetProgramivARB (will be remapped) */
"iip\0"
"glGetProgramivARB\0"
"\0"
- /* _mesa_function_pool[29423]: TexBufferARB (will be remapped) */
+ /* _mesa_function_pool[29495]: TexBufferARB (will be remapped) */
"iii\0"
"glTexBufferARB\0"
"\0"
- /* _mesa_function_pool[29443]: BlendFuncSeparateEXT (will be remapped) */
+ /* _mesa_function_pool[29515]: BlendFuncSeparateEXT (will be remapped) */
"iiii\0"
"glBlendFuncSeparate\0"
"glBlendFuncSeparateEXT\0"
"glBlendFuncSeparateINGR\0"
"\0"
- /* _mesa_function_pool[29516]: MapBufferRange (will be remapped) */
+ /* _mesa_function_pool[29588]: MapBufferRange (will be remapped) */
"iiii\0"
"glMapBufferRange\0"
"\0"
- /* _mesa_function_pool[29539]: ProgramParameters4dvNV (will be remapped) */
+ /* _mesa_function_pool[29611]: ProgramParameters4dvNV (will be remapped) */
"iiip\0"
"glProgramParameters4dvNV\0"
"\0"
- /* _mesa_function_pool[29570]: TexCoord2fColor3fVertex3fvSUN (dynamic) */
+ /* _mesa_function_pool[29642]: TexCoord2fColor3fVertex3fvSUN (dynamic) */
"ppp\0"
"glTexCoord2fColor3fVertex3fvSUN\0"
"\0"
- /* _mesa_function_pool[29607]: EvalPoint2 (offset 239) */
+ /* _mesa_function_pool[29679]: EvalPoint2 (offset 239) */
"ii\0"
"glEvalPoint2\0"
"\0"
- /* _mesa_function_pool[29624]: Uniform1uivEXT (will be remapped) */
+ /* _mesa_function_pool[29696]: Uniform1uivEXT (will be remapped) */
"iip\0"
"glUniform1uivEXT\0"
"glUniform1uiv\0"
"\0"
- /* _mesa_function_pool[29660]: EvalPoint1 (offset 237) */
+ /* _mesa_function_pool[29732]: EvalPoint1 (offset 237) */
"i\0"
"glEvalPoint1\0"
"\0"
- /* _mesa_function_pool[29676]: Binormal3dvEXT (dynamic) */
+ /* _mesa_function_pool[29748]: Binormal3dvEXT (dynamic) */
"p\0"
"glBinormal3dvEXT\0"
"\0"
- /* _mesa_function_pool[29696]: PopMatrix (offset 297) */
+ /* _mesa_function_pool[29768]: PopMatrix (offset 297) */
"\0"
"glPopMatrix\0"
"\0"
- /* _mesa_function_pool[29710]: FinishFenceNV (will be remapped) */
+ /* _mesa_function_pool[29782]: FinishFenceNV (will be remapped) */
"i\0"
"glFinishFenceNV\0"
"\0"
- /* _mesa_function_pool[29729]: GetFogFuncSGIS (dynamic) */
+ /* _mesa_function_pool[29801]: GetFogFuncSGIS (dynamic) */
"p\0"
"glGetFogFuncSGIS\0"
"\0"
- /* _mesa_function_pool[29749]: GetUniformLocationARB (will be remapped) */
+ /* _mesa_function_pool[29821]: GetUniformLocationARB (will be remapped) */
"ip\0"
"glGetUniformLocation\0"
"glGetUniformLocationARB\0"
"\0"
- /* _mesa_function_pool[29798]: SecondaryColor3fEXT (will be remapped) */
+ /* _mesa_function_pool[29870]: SecondaryColor3fEXT (will be remapped) */
"fff\0"
"glSecondaryColor3f\0"
"glSecondaryColor3fEXT\0"
"\0"
- /* _mesa_function_pool[29844]: GetTexGeniv (offset 280) */
+ /* _mesa_function_pool[29916]: GetTexGeniv (offset 280) */
"iip\0"
"glGetTexGeniv\0"
"\0"
- /* _mesa_function_pool[29863]: CombinerInputNV (will be remapped) */
+ /* _mesa_function_pool[29935]: CombinerInputNV (will be remapped) */
"iiiiii\0"
"glCombinerInputNV\0"
"\0"
- /* _mesa_function_pool[29889]: VertexAttrib3sARB (will be remapped) */
+ /* _mesa_function_pool[29961]: VertexAttrib3sARB (will be remapped) */
"iiii\0"
"glVertexAttrib3s\0"
"glVertexAttrib3sARB\0"
"\0"
- /* _mesa_function_pool[29932]: IsTransformFeedback (will be remapped) */
+ /* _mesa_function_pool[30004]: IsTransformFeedback (will be remapped) */
"i\0"
"glIsTransformFeedback\0"
"\0"
- /* _mesa_function_pool[29957]: ReplacementCodeuiNormal3fVertex3fvSUN (dynamic) */
+ /* _mesa_function_pool[30029]: ReplacementCodeuiNormal3fVertex3fvSUN (dynamic) */
"ppp\0"
"glReplacementCodeuiNormal3fVertex3fvSUN\0"
"\0"
- /* _mesa_function_pool[30002]: Map2d (offset 222) */
+ /* _mesa_function_pool[30074]: Map2d (offset 222) */
"iddiiddiip\0"
"glMap2d\0"
"\0"
- /* _mesa_function_pool[30022]: Map2f (offset 223) */
+ /* _mesa_function_pool[30094]: Map2f (offset 223) */
"iffiiffiip\0"
"glMap2f\0"
"\0"
- /* _mesa_function_pool[30042]: ProgramStringARB (will be remapped) */
+ /* _mesa_function_pool[30114]: ProgramStringARB (will be remapped) */
"iiip\0"
"glProgramStringARB\0"
"\0"
- /* _mesa_function_pool[30067]: Vertex4s (offset 148) */
+ /* _mesa_function_pool[30139]: Vertex4s (offset 148) */
"iiii\0"
"glVertex4s\0"
"\0"
- /* _mesa_function_pool[30084]: TexCoord4fVertex4fvSUN (dynamic) */
+ /* _mesa_function_pool[30156]: TexCoord4fVertex4fvSUN (dynamic) */
"pp\0"
"glTexCoord4fVertex4fvSUN\0"
"\0"
- /* _mesa_function_pool[30113]: FragmentLightModelivSGIX (dynamic) */
+ /* _mesa_function_pool[30185]: TextureStorage3DEXT (will be remapped) */
+ "iiiiiii\0"
+ "glTextureStorage3DEXT\0"
+ "\0"
+ /* _mesa_function_pool[30216]: FragmentLightModelivSGIX (dynamic) */
"ip\0"
"glFragmentLightModelivSGIX\0"
"\0"
- /* _mesa_function_pool[30144]: VertexAttrib1fNV (will be remapped) */
+ /* _mesa_function_pool[30247]: VertexAttrib1fNV (will be remapped) */
"if\0"
"glVertexAttrib1fNV\0"
"\0"
- /* _mesa_function_pool[30167]: Vertex4f (offset 144) */
+ /* _mesa_function_pool[30270]: Vertex4f (offset 144) */
"ffff\0"
"glVertex4f\0"
"\0"
- /* _mesa_function_pool[30184]: EvalCoord1d (offset 228) */
+ /* _mesa_function_pool[30287]: EvalCoord1d (offset 228) */
"d\0"
"glEvalCoord1d\0"
"\0"
- /* _mesa_function_pool[30201]: Vertex4d (offset 142) */
+ /* _mesa_function_pool[30304]: Vertex4d (offset 142) */
"dddd\0"
"glVertex4d\0"
"\0"
- /* _mesa_function_pool[30218]: RasterPos4dv (offset 79) */
+ /* _mesa_function_pool[30321]: RasterPos4dv (offset 79) */
"p\0"
"glRasterPos4dv\0"
"\0"
- /* _mesa_function_pool[30236]: UseShaderProgramEXT (will be remapped) */
+ /* _mesa_function_pool[30339]: UseShaderProgramEXT (will be remapped) */
"ii\0"
"glUseShaderProgramEXT\0"
"\0"
- /* _mesa_function_pool[30262]: FragmentLightfSGIX (dynamic) */
+ /* _mesa_function_pool[30365]: FragmentLightfSGIX (dynamic) */
"iif\0"
"glFragmentLightfSGIX\0"
"\0"
- /* _mesa_function_pool[30288]: GetCompressedTexImageARB (will be remapped) */
+ /* _mesa_function_pool[30391]: TextureStorage2DEXT (will be remapped) */
+ "iiiiii\0"
+ "glTextureStorage2DEXT\0"
+ "\0"
+ /* _mesa_function_pool[30421]: GetCompressedTexImageARB (will be remapped) */
"iip\0"
"glGetCompressedTexImage\0"
"glGetCompressedTexImageARB\0"
"\0"
- /* _mesa_function_pool[30344]: GetTexGenfv (offset 279) */
+ /* _mesa_function_pool[30477]: GetTexGenfv (offset 279) */
"iip\0"
"glGetTexGenfv\0"
"\0"
- /* _mesa_function_pool[30363]: Vertex4i (offset 146) */
+ /* _mesa_function_pool[30496]: Vertex4i (offset 146) */
"iiii\0"
"glVertex4i\0"
"\0"
- /* _mesa_function_pool[30380]: VertexWeightPointerEXT (dynamic) */
+ /* _mesa_function_pool[30513]: VertexWeightPointerEXT (dynamic) */
"iiip\0"
"glVertexWeightPointerEXT\0"
"\0"
- /* _mesa_function_pool[30411]: GetHistogram (offset 361) */
+ /* _mesa_function_pool[30544]: GetHistogram (offset 361) */
"iiiip\0"
"glGetHistogram\0"
"glGetHistogramEXT\0"
"\0"
- /* _mesa_function_pool[30451]: ActiveStencilFaceEXT (will be remapped) */
+ /* _mesa_function_pool[30584]: ActiveStencilFaceEXT (will be remapped) */
"i\0"
"glActiveStencilFaceEXT\0"
"\0"
- /* _mesa_function_pool[30477]: StencilFuncSeparateATI (will be remapped) */
+ /* _mesa_function_pool[30610]: TexStorage3D (will be remapped) */
+ "iiiiii\0"
+ "glTexStorage3D\0"
+ "\0"
+ /* _mesa_function_pool[30633]: StencilFuncSeparateATI (will be remapped) */
"iiii\0"
"glStencilFuncSeparateATI\0"
"\0"
- /* _mesa_function_pool[30508]: Materialf (offset 169) */
+ /* _mesa_function_pool[30664]: Materialf (offset 169) */
"iif\0"
"glMaterialf\0"
"\0"
- /* _mesa_function_pool[30525]: GetShaderSourceARB (will be remapped) */
+ /* _mesa_function_pool[30681]: GetShaderSourceARB (will be remapped) */
"iipp\0"
"glGetShaderSource\0"
"glGetShaderSourceARB\0"
"\0"
- /* _mesa_function_pool[30570]: IglooInterfaceSGIX (dynamic) */
+ /* _mesa_function_pool[30726]: IglooInterfaceSGIX (dynamic) */
"ip\0"
"glIglooInterfaceSGIX\0"
"\0"
- /* _mesa_function_pool[30595]: Materiali (offset 171) */
+ /* _mesa_function_pool[30751]: Materiali (offset 171) */
"iii\0"
"glMateriali\0"
"\0"
- /* _mesa_function_pool[30612]: VertexAttrib4dNV (will be remapped) */
+ /* _mesa_function_pool[30768]: VertexAttrib4dNV (will be remapped) */
"idddd\0"
"glVertexAttrib4dNV\0"
"\0"
- /* _mesa_function_pool[30638]: MultiModeDrawElementsIBM (will be remapped) */
+ /* _mesa_function_pool[30794]: MultiModeDrawElementsIBM (will be remapped) */
"ppipii\0"
"glMultiModeDrawElementsIBM\0"
"\0"
- /* _mesa_function_pool[30673]: Indexsv (offset 51) */
+ /* _mesa_function_pool[30829]: Indexsv (offset 51) */
"p\0"
"glIndexsv\0"
"\0"
- /* _mesa_function_pool[30686]: MultiTexCoord4svARB (offset 407) */
+ /* _mesa_function_pool[30842]: MultiTexCoord4svARB (offset 407) */
"ip\0"
"glMultiTexCoord4sv\0"
"glMultiTexCoord4svARB\0"
"\0"
- /* _mesa_function_pool[30731]: LightModelfv (offset 164) */
+ /* _mesa_function_pool[30887]: LightModelfv (offset 164) */
"ip\0"
"glLightModelfv\0"
"\0"
- /* _mesa_function_pool[30750]: TexCoord2dv (offset 103) */
+ /* _mesa_function_pool[30906]: TexCoord2dv (offset 103) */
"p\0"
"glTexCoord2dv\0"
"\0"
- /* _mesa_function_pool[30767]: GenQueriesARB (will be remapped) */
+ /* _mesa_function_pool[30923]: GenQueriesARB (will be remapped) */
"ip\0"
"glGenQueries\0"
"glGenQueriesARB\0"
"\0"
- /* _mesa_function_pool[30800]: EvalCoord1dv (offset 229) */
+ /* _mesa_function_pool[30956]: EvalCoord1dv (offset 229) */
"p\0"
"glEvalCoord1dv\0"
"\0"
- /* _mesa_function_pool[30818]: ReplacementCodeuiVertex3fSUN (dynamic) */
+ /* _mesa_function_pool[30974]: ReplacementCodeuiVertex3fSUN (dynamic) */
"ifff\0"
"glReplacementCodeuiVertex3fSUN\0"
"\0"
- /* _mesa_function_pool[30855]: Translated (offset 303) */
+ /* _mesa_function_pool[31011]: Translated (offset 303) */
"ddd\0"
"glTranslated\0"
"\0"
- /* _mesa_function_pool[30873]: Translatef (offset 304) */
+ /* _mesa_function_pool[31029]: Translatef (offset 304) */
"fff\0"
"glTranslatef\0"
"\0"
- /* _mesa_function_pool[30891]: Uniform3uiEXT (will be remapped) */
+ /* _mesa_function_pool[31047]: Uniform3uiEXT (will be remapped) */
"iiii\0"
"glUniform3uiEXT\0"
"glUniform3ui\0"
"\0"
- /* _mesa_function_pool[30926]: StencilMask (offset 209) */
+ /* _mesa_function_pool[31082]: StencilMask (offset 209) */
"i\0"
"glStencilMask\0"
"\0"
- /* _mesa_function_pool[30943]: Tangent3iEXT (dynamic) */
+ /* _mesa_function_pool[31099]: Tangent3iEXT (dynamic) */
"iii\0"
"glTangent3iEXT\0"
"\0"
- /* _mesa_function_pool[30963]: ClampColorARB (will be remapped) */
+ /* _mesa_function_pool[31119]: ClampColorARB (will be remapped) */
"ii\0"
"glClampColorARB\0"
"\0"
- /* _mesa_function_pool[30983]: GetLightiv (offset 265) */
+ /* _mesa_function_pool[31139]: GetLightiv (offset 265) */
"iip\0"
"glGetLightiv\0"
"\0"
- /* _mesa_function_pool[31001]: GetSamplerParameterIiv (will be remapped) */
+ /* _mesa_function_pool[31157]: GetSamplerParameterIiv (will be remapped) */
"iip\0"
"glGetSamplerParameterIiv\0"
"\0"
- /* _mesa_function_pool[31031]: DrawMeshArraysSUN (dynamic) */
+ /* _mesa_function_pool[31187]: DrawMeshArraysSUN (dynamic) */
"iiii\0"
"glDrawMeshArraysSUN\0"
"\0"
- /* _mesa_function_pool[31057]: IsList (offset 287) */
+ /* _mesa_function_pool[31213]: IsList (offset 287) */
"i\0"
"glIsList\0"
"\0"
- /* _mesa_function_pool[31069]: IsSync (will be remapped) */
+ /* _mesa_function_pool[31225]: IsSync (will be remapped) */
"i\0"
"glIsSync\0"
"\0"
- /* _mesa_function_pool[31081]: RenderMode (offset 196) */
+ /* _mesa_function_pool[31237]: RenderMode (offset 196) */
"i\0"
"glRenderMode\0"
"\0"
- /* _mesa_function_pool[31097]: GetMapControlPointsNV (dynamic) */
+ /* _mesa_function_pool[31253]: GetMapControlPointsNV (dynamic) */
"iiiiiip\0"
"glGetMapControlPointsNV\0"
"\0"
- /* _mesa_function_pool[31130]: DrawBuffersARB (will be remapped) */
+ /* _mesa_function_pool[31286]: DrawBuffersARB (will be remapped) */
"ip\0"
"glDrawBuffers\0"
"glDrawBuffersARB\0"
"glDrawBuffersATI\0"
"glDrawBuffersNV\0"
"\0"
- /* _mesa_function_pool[31198]: ClearBufferiv (will be remapped) */
+ /* _mesa_function_pool[31354]: ClearBufferiv (will be remapped) */
"iip\0"
"glClearBufferiv\0"
"\0"
- /* _mesa_function_pool[31219]: ProgramLocalParameter4fARB (will be remapped) */
+ /* _mesa_function_pool[31375]: ProgramLocalParameter4fARB (will be remapped) */
"iiffff\0"
"glProgramLocalParameter4fARB\0"
"\0"
- /* _mesa_function_pool[31256]: SpriteParameterivSGIX (dynamic) */
+ /* _mesa_function_pool[31412]: SpriteParameterivSGIX (dynamic) */
"ip\0"
"glSpriteParameterivSGIX\0"
"\0"
- /* _mesa_function_pool[31284]: ProvokingVertexEXT (will be remapped) */
+ /* _mesa_function_pool[31440]: ProvokingVertexEXT (will be remapped) */
"i\0"
"glProvokingVertexEXT\0"
"glProvokingVertex\0"
"\0"
- /* _mesa_function_pool[31326]: MultiTexCoord1fARB (offset 378) */
+ /* _mesa_function_pool[31482]: MultiTexCoord1fARB (offset 378) */
"if\0"
"glMultiTexCoord1f\0"
"glMultiTexCoord1fARB\0"
"\0"
- /* _mesa_function_pool[31369]: LoadName (offset 198) */
+ /* _mesa_function_pool[31525]: LoadName (offset 198) */
"i\0"
"glLoadName\0"
"\0"
- /* _mesa_function_pool[31383]: VertexAttribs4ubvNV (will be remapped) */
+ /* _mesa_function_pool[31539]: VertexAttribs4ubvNV (will be remapped) */
"iip\0"
"glVertexAttribs4ubvNV\0"
"\0"
- /* _mesa_function_pool[31410]: WeightsvARB (dynamic) */
+ /* _mesa_function_pool[31566]: WeightsvARB (dynamic) */
"ip\0"
"glWeightsvARB\0"
"\0"
- /* _mesa_function_pool[31428]: NormalP3ui (will be remapped) */
+ /* _mesa_function_pool[31584]: NormalP3ui (will be remapped) */
"ii\0"
"glNormalP3ui\0"
"\0"
- /* _mesa_function_pool[31445]: VertexAttribP2ui (will be remapped) */
+ /* _mesa_function_pool[31601]: VertexAttribP2ui (will be remapped) */
"iiii\0"
"glVertexAttribP2ui\0"
"\0"
- /* _mesa_function_pool[31470]: Uniform1fvARB (will be remapped) */
+ /* _mesa_function_pool[31626]: Uniform1fvARB (will be remapped) */
"iip\0"
"glUniform1fv\0"
"glUniform1fvARB\0"
"\0"
- /* _mesa_function_pool[31504]: CopyTexSubImage1D (offset 325) */
+ /* _mesa_function_pool[31660]: CopyTexSubImage1D (offset 325) */
"iiiiii\0"
"glCopyTexSubImage1D\0"
"glCopyTexSubImage1DEXT\0"
"\0"
- /* _mesa_function_pool[31555]: CullFace (offset 152) */
+ /* _mesa_function_pool[31711]: CullFace (offset 152) */
"i\0"
"glCullFace\0"
"\0"
- /* _mesa_function_pool[31569]: BindTexture (offset 307) */
+ /* _mesa_function_pool[31725]: BindTexture (offset 307) */
"ii\0"
"glBindTexture\0"
"glBindTextureEXT\0"
"\0"
- /* _mesa_function_pool[31604]: BeginFragmentShaderATI (will be remapped) */
+ /* _mesa_function_pool[31760]: BeginFragmentShaderATI (will be remapped) */
"\0"
"glBeginFragmentShaderATI\0"
"\0"
- /* _mesa_function_pool[31631]: MultiTexCoord4fARB (offset 402) */
+ /* _mesa_function_pool[31787]: MultiTexCoord4fARB (offset 402) */
"iffff\0"
"glMultiTexCoord4f\0"
"glMultiTexCoord4fARB\0"
"\0"
- /* _mesa_function_pool[31677]: VertexAttribs3svNV (will be remapped) */
+ /* _mesa_function_pool[31833]: VertexAttribs3svNV (will be remapped) */
"iip\0"
"glVertexAttribs3svNV\0"
"\0"
- /* _mesa_function_pool[31703]: StencilFunc (offset 243) */
+ /* _mesa_function_pool[31859]: StencilFunc (offset 243) */
"iii\0"
"glStencilFunc\0"
"\0"
- /* _mesa_function_pool[31722]: CopyPixels (offset 255) */
+ /* _mesa_function_pool[31878]: CopyPixels (offset 255) */
"iiiii\0"
"glCopyPixels\0"
"\0"
- /* _mesa_function_pool[31742]: Rectsv (offset 93) */
+ /* _mesa_function_pool[31898]: Rectsv (offset 93) */
"pp\0"
"glRectsv\0"
"\0"
- /* _mesa_function_pool[31755]: ReplacementCodeuivSUN (dynamic) */
+ /* _mesa_function_pool[31911]: ReplacementCodeuivSUN (dynamic) */
"p\0"
"glReplacementCodeuivSUN\0"
"\0"
- /* _mesa_function_pool[31782]: MultiTexCoordP2uiv (will be remapped) */
+ /* _mesa_function_pool[31938]: MultiTexCoordP2uiv (will be remapped) */
"iip\0"
"glMultiTexCoordP2uiv\0"
"\0"
- /* _mesa_function_pool[31808]: EnableVertexAttribArrayARB (will be remapped) */
+ /* _mesa_function_pool[31964]: EnableVertexAttribArrayARB (will be remapped) */
"i\0"
"glEnableVertexAttribArray\0"
"glEnableVertexAttribArrayARB\0"
"\0"
- /* _mesa_function_pool[31866]: NormalPointervINTEL (dynamic) */
+ /* _mesa_function_pool[32022]: NormalPointervINTEL (dynamic) */
"ip\0"
"glNormalPointervINTEL\0"
"\0"
- /* _mesa_function_pool[31892]: CopyConvolutionFilter2D (offset 355) */
+ /* _mesa_function_pool[32048]: CopyConvolutionFilter2D (offset 355) */
"iiiiii\0"
"glCopyConvolutionFilter2D\0"
"glCopyConvolutionFilter2DEXT\0"
"\0"
- /* _mesa_function_pool[31955]: WindowPos3ivMESA (will be remapped) */
+ /* _mesa_function_pool[32111]: WindowPos3ivMESA (will be remapped) */
"p\0"
"glWindowPos3iv\0"
"glWindowPos3ivARB\0"
"glWindowPos3ivMESA\0"
"\0"
- /* _mesa_function_pool[32010]: CopyBufferSubData (will be remapped) */
+ /* _mesa_function_pool[32166]: CopyBufferSubData (will be remapped) */
"iiiii\0"
"glCopyBufferSubData\0"
"\0"
- /* _mesa_function_pool[32037]: NormalPointer (offset 318) */
+ /* _mesa_function_pool[32193]: NormalPointer (offset 318) */
"iip\0"
"glNormalPointer\0"
"\0"
- /* _mesa_function_pool[32058]: TexParameterfv (offset 179) */
+ /* _mesa_function_pool[32214]: TexParameterfv (offset 179) */
"iip\0"
"glTexParameterfv\0"
"\0"
- /* _mesa_function_pool[32080]: IsBufferARB (will be remapped) */
+ /* _mesa_function_pool[32236]: IsBufferARB (will be remapped) */
"i\0"
"glIsBuffer\0"
"glIsBufferARB\0"
"\0"
- /* _mesa_function_pool[32108]: WindowPos4iMESA (will be remapped) */
+ /* _mesa_function_pool[32264]: WindowPos4iMESA (will be remapped) */
"iiii\0"
"glWindowPos4iMESA\0"
"\0"
- /* _mesa_function_pool[32132]: VertexAttrib4uivARB (will be remapped) */
+ /* _mesa_function_pool[32288]: VertexAttrib4uivARB (will be remapped) */
"ip\0"
"glVertexAttrib4uiv\0"
"glVertexAttrib4uivARB\0"
"\0"
- /* _mesa_function_pool[32177]: Tangent3bvEXT (dynamic) */
+ /* _mesa_function_pool[32333]: Tangent3bvEXT (dynamic) */
"p\0"
"glTangent3bvEXT\0"
"\0"
- /* _mesa_function_pool[32196]: VertexAttribI3uivEXT (will be remapped) */
+ /* _mesa_function_pool[32352]: VertexAttribI3uivEXT (will be remapped) */
"ip\0"
"glVertexAttribI3uivEXT\0"
"glVertexAttribI3uiv\0"
"\0"
- /* _mesa_function_pool[32243]: UniformMatrix3x4fv (will be remapped) */
+ /* _mesa_function_pool[32399]: UniformMatrix3x4fv (will be remapped) */
"iiip\0"
"glUniformMatrix3x4fv\0"
"\0"
- /* _mesa_function_pool[32270]: ClipPlane (offset 150) */
+ /* _mesa_function_pool[32426]: ClipPlane (offset 150) */
"ip\0"
"glClipPlane\0"
"\0"
- /* _mesa_function_pool[32286]: Recti (offset 90) */
+ /* _mesa_function_pool[32442]: Recti (offset 90) */
"iiii\0"
"glRecti\0"
"\0"
- /* _mesa_function_pool[32300]: TrackMatrixNV (will be remapped) */
+ /* _mesa_function_pool[32456]: TrackMatrixNV (will be remapped) */
"iiii\0"
"glTrackMatrixNV\0"
"\0"
- /* _mesa_function_pool[32322]: DrawRangeElementsBaseVertex (will be remapped) */
+ /* _mesa_function_pool[32478]: DrawRangeElementsBaseVertex (will be remapped) */
"iiiiipi\0"
"glDrawRangeElementsBaseVertex\0"
"\0"
- /* _mesa_function_pool[32361]: SamplerParameterIuiv (will be remapped) */
+ /* _mesa_function_pool[32517]: SamplerParameterIuiv (will be remapped) */
"iip\0"
"glSamplerParameterIuiv\0"
"\0"
- /* _mesa_function_pool[32389]: TexCoordPointervINTEL (dynamic) */
+ /* _mesa_function_pool[32545]: TexCoordPointervINTEL (dynamic) */
"iip\0"
"glTexCoordPointervINTEL\0"
"\0"
- /* _mesa_function_pool[32418]: DeleteBuffersARB (will be remapped) */
+ /* _mesa_function_pool[32574]: DeleteBuffersARB (will be remapped) */
"ip\0"
"glDeleteBuffers\0"
"glDeleteBuffersARB\0"
"\0"
- /* _mesa_function_pool[32457]: PixelTransformParameterfvEXT (dynamic) */
+ /* _mesa_function_pool[32613]: PixelTransformParameterfvEXT (dynamic) */
"iip\0"
"glPixelTransformParameterfvEXT\0"
"\0"
- /* _mesa_function_pool[32493]: PrimitiveRestartNV (will be remapped) */
+ /* _mesa_function_pool[32649]: PrimitiveRestartNV (will be remapped) */
"\0"
"glPrimitiveRestartNV\0"
"\0"
- /* _mesa_function_pool[32516]: WindowPos4fvMESA (will be remapped) */
+ /* _mesa_function_pool[32672]: WindowPos4fvMESA (will be remapped) */
"p\0"
"glWindowPos4fvMESA\0"
"\0"
- /* _mesa_function_pool[32538]: GetPixelMapuiv (offset 272) */
+ /* _mesa_function_pool[32694]: GetPixelMapuiv (offset 272) */
"ip\0"
"glGetPixelMapuiv\0"
"\0"
- /* _mesa_function_pool[32559]: Rectf (offset 88) */
+ /* _mesa_function_pool[32715]: Rectf (offset 88) */
"ffff\0"
"glRectf\0"
"\0"
- /* _mesa_function_pool[32573]: VertexAttrib1sNV (will be remapped) */
+ /* _mesa_function_pool[32729]: VertexAttrib1sNV (will be remapped) */
"ii\0"
"glVertexAttrib1sNV\0"
"\0"
- /* _mesa_function_pool[32596]: Indexfv (offset 47) */
+ /* _mesa_function_pool[32752]: Indexfv (offset 47) */
"p\0"
"glIndexfv\0"
"\0"
- /* _mesa_function_pool[32609]: ColorP3uiv (will be remapped) */
+ /* _mesa_function_pool[32765]: ColorP3uiv (will be remapped) */
"ip\0"
"glColorP3uiv\0"
"\0"
- /* _mesa_function_pool[32626]: SecondaryColor3svEXT (will be remapped) */
+ /* _mesa_function_pool[32782]: SecondaryColor3svEXT (will be remapped) */
"p\0"
"glSecondaryColor3sv\0"
"glSecondaryColor3svEXT\0"
"\0"
- /* _mesa_function_pool[32672]: LoadTransposeMatrixfARB (will be remapped) */
+ /* _mesa_function_pool[32828]: LoadTransposeMatrixfARB (will be remapped) */
"p\0"
"glLoadTransposeMatrixf\0"
"glLoadTransposeMatrixfARB\0"
"\0"
- /* _mesa_function_pool[32724]: GetPointerv (offset 329) */
+ /* _mesa_function_pool[32880]: GetPointerv (offset 329) */
"ip\0"
"glGetPointerv\0"
"glGetPointervEXT\0"
"\0"
- /* _mesa_function_pool[32759]: Tangent3bEXT (dynamic) */
+ /* _mesa_function_pool[32915]: Tangent3bEXT (dynamic) */
"iii\0"
"glTangent3bEXT\0"
"\0"
- /* _mesa_function_pool[32779]: CombinerParameterfNV (will be remapped) */
+ /* _mesa_function_pool[32935]: CombinerParameterfNV (will be remapped) */
"if\0"
"glCombinerParameterfNV\0"
"\0"
- /* _mesa_function_pool[32806]: IndexMask (offset 212) */
+ /* _mesa_function_pool[32962]: IndexMask (offset 212) */
"i\0"
"glIndexMask\0"
"\0"
- /* _mesa_function_pool[32821]: BindProgramNV (will be remapped) */
+ /* _mesa_function_pool[32977]: BindProgramNV (will be remapped) */
"ii\0"
"glBindProgramARB\0"
"glBindProgramNV\0"
"\0"
- /* _mesa_function_pool[32858]: VertexAttrib4svARB (will be remapped) */
+ /* _mesa_function_pool[33014]: VertexAttrib4svARB (will be remapped) */
"ip\0"
"glVertexAttrib4sv\0"
"glVertexAttrib4svARB\0"
"\0"
- /* _mesa_function_pool[32901]: GetFloatv (offset 262) */
+ /* _mesa_function_pool[33057]: GetFloatv (offset 262) */
"ip\0"
"glGetFloatv\0"
"\0"
- /* _mesa_function_pool[32917]: CreateDebugObjectMESA (dynamic) */
+ /* _mesa_function_pool[33073]: CreateDebugObjectMESA (dynamic) */
"\0"
"glCreateDebugObjectMESA\0"
"\0"
- /* _mesa_function_pool[32943]: GetShaderiv (will be remapped) */
+ /* _mesa_function_pool[33099]: GetShaderiv (will be remapped) */
"iip\0"
"glGetShaderiv\0"
"\0"
- /* _mesa_function_pool[32962]: ClientWaitSync (will be remapped) */
+ /* _mesa_function_pool[33118]: ClientWaitSync (will be remapped) */
"iii\0"
"glClientWaitSync\0"
"\0"
- /* _mesa_function_pool[32984]: TexCoord4s (offset 124) */
+ /* _mesa_function_pool[33140]: TexCoord4s (offset 124) */
"iiii\0"
"glTexCoord4s\0"
"\0"
- /* _mesa_function_pool[33003]: TexCoord3sv (offset 117) */
+ /* _mesa_function_pool[33159]: TexCoord3sv (offset 117) */
"p\0"
"glTexCoord3sv\0"
"\0"
- /* _mesa_function_pool[33020]: BindFragmentShaderATI (will be remapped) */
+ /* _mesa_function_pool[33176]: BindFragmentShaderATI (will be remapped) */
"i\0"
"glBindFragmentShaderATI\0"
"\0"
- /* _mesa_function_pool[33047]: PopAttrib (offset 218) */
+ /* _mesa_function_pool[33203]: PopAttrib (offset 218) */
"\0"
"glPopAttrib\0"
"\0"
- /* _mesa_function_pool[33061]: Fogfv (offset 154) */
+ /* _mesa_function_pool[33217]: Fogfv (offset 154) */
"ip\0"
"glFogfv\0"
"\0"
- /* _mesa_function_pool[33073]: UnmapBufferARB (will be remapped) */
+ /* _mesa_function_pool[33229]: UnmapBufferARB (will be remapped) */
"i\0"
"glUnmapBuffer\0"
"glUnmapBufferARB\0"
"\0"
- /* _mesa_function_pool[33107]: InitNames (offset 197) */
+ /* _mesa_function_pool[33263]: InitNames (offset 197) */
"\0"
"glInitNames\0"
"\0"
- /* _mesa_function_pool[33121]: Normal3sv (offset 61) */
+ /* _mesa_function_pool[33277]: Normal3sv (offset 61) */
"p\0"
"glNormal3sv\0"
"\0"
- /* _mesa_function_pool[33136]: Minmax (offset 368) */
+ /* _mesa_function_pool[33292]: Minmax (offset 368) */
"iii\0"
"glMinmax\0"
"glMinmaxEXT\0"
"\0"
- /* _mesa_function_pool[33162]: TexCoord4d (offset 118) */
+ /* _mesa_function_pool[33318]: TexCoord4d (offset 118) */
"dddd\0"
"glTexCoord4d\0"
"\0"
- /* _mesa_function_pool[33181]: DeformationMap3dSGIX (dynamic) */
+ /* _mesa_function_pool[33337]: DeformationMap3dSGIX (dynamic) */
"iddiiddiiddiip\0"
"glDeformationMap3dSGIX\0"
"\0"
- /* _mesa_function_pool[33220]: TexCoord4f (offset 120) */
+ /* _mesa_function_pool[33376]: TexCoord4f (offset 120) */
"ffff\0"
"glTexCoord4f\0"
"\0"
- /* _mesa_function_pool[33239]: FogCoorddvEXT (will be remapped) */
+ /* _mesa_function_pool[33395]: FogCoorddvEXT (will be remapped) */
"p\0"
"glFogCoorddv\0"
"glFogCoorddvEXT\0"
"\0"
- /* _mesa_function_pool[33271]: FinishTextureSUNX (dynamic) */
+ /* _mesa_function_pool[33427]: FinishTextureSUNX (dynamic) */
"\0"
"glFinishTextureSUNX\0"
"\0"
- /* _mesa_function_pool[33293]: GetFragmentLightfvSGIX (dynamic) */
+ /* _mesa_function_pool[33449]: GetFragmentLightfvSGIX (dynamic) */
"iip\0"
"glGetFragmentLightfvSGIX\0"
"\0"
- /* _mesa_function_pool[33323]: Binormal3fvEXT (dynamic) */
+ /* _mesa_function_pool[33479]: Binormal3fvEXT (dynamic) */
"p\0"
"glBinormal3fvEXT\0"
"\0"
- /* _mesa_function_pool[33343]: GetBooleanv (offset 258) */
+ /* _mesa_function_pool[33499]: GetBooleanv (offset 258) */
"ip\0"
"glGetBooleanv\0"
"\0"
- /* _mesa_function_pool[33361]: ColorFragmentOp3ATI (will be remapped) */
+ /* _mesa_function_pool[33517]: ColorFragmentOp3ATI (will be remapped) */
"iiiiiiiiiiiii\0"
"glColorFragmentOp3ATI\0"
"\0"
- /* _mesa_function_pool[33398]: Hint (offset 158) */
+ /* _mesa_function_pool[33554]: Hint (offset 158) */
"ii\0"
"glHint\0"
"\0"
- /* _mesa_function_pool[33409]: Color4dv (offset 28) */
+ /* _mesa_function_pool[33565]: Color4dv (offset 28) */
"p\0"
"glColor4dv\0"
"\0"
- /* _mesa_function_pool[33423]: VertexAttrib2svARB (will be remapped) */
+ /* _mesa_function_pool[33579]: VertexAttrib2svARB (will be remapped) */
"ip\0"
"glVertexAttrib2sv\0"
"glVertexAttrib2svARB\0"
"\0"
- /* _mesa_function_pool[33466]: AreProgramsResidentNV (will be remapped) */
+ /* _mesa_function_pool[33622]: AreProgramsResidentNV (will be remapped) */
"ipp\0"
"glAreProgramsResidentNV\0"
"\0"
- /* _mesa_function_pool[33495]: WindowPos3svMESA (will be remapped) */
+ /* _mesa_function_pool[33651]: WindowPos3svMESA (will be remapped) */
"p\0"
"glWindowPos3sv\0"
"glWindowPos3svARB\0"
"glWindowPos3svMESA\0"
"\0"
- /* _mesa_function_pool[33550]: CopyColorSubTable (offset 347) */
+ /* _mesa_function_pool[33706]: CopyColorSubTable (offset 347) */
"iiiii\0"
"glCopyColorSubTable\0"
"glCopyColorSubTableEXT\0"
"\0"
- /* _mesa_function_pool[33600]: WeightdvARB (dynamic) */
+ /* _mesa_function_pool[33756]: WeightdvARB (dynamic) */
"ip\0"
"glWeightdvARB\0"
"\0"
- /* _mesa_function_pool[33618]: DeleteRenderbuffersEXT (will be remapped) */
+ /* _mesa_function_pool[33774]: DeleteRenderbuffersEXT (will be remapped) */
"ip\0"
"glDeleteRenderbuffers\0"
"glDeleteRenderbuffersEXT\0"
"\0"
- /* _mesa_function_pool[33669]: VertexAttrib4NubvARB (will be remapped) */
+ /* _mesa_function_pool[33825]: VertexAttrib4NubvARB (will be remapped) */
"ip\0"
"glVertexAttrib4Nubv\0"
"glVertexAttrib4NubvARB\0"
"\0"
- /* _mesa_function_pool[33716]: VertexAttrib3dvNV (will be remapped) */
+ /* _mesa_function_pool[33872]: VertexAttrib3dvNV (will be remapped) */
"ip\0"
"glVertexAttrib3dvNV\0"
"\0"
- /* _mesa_function_pool[33740]: GetObjectParameterfvARB (will be remapped) */
+ /* _mesa_function_pool[33896]: GetObjectParameterfvARB (will be remapped) */
"iip\0"
"glGetObjectParameterfvARB\0"
"\0"
- /* _mesa_function_pool[33771]: Vertex4iv (offset 147) */
+ /* _mesa_function_pool[33927]: Vertex4iv (offset 147) */
"p\0"
"glVertex4iv\0"
"\0"
- /* _mesa_function_pool[33786]: GetProgramEnvParameterdvARB (will be remapped) */
+ /* _mesa_function_pool[33942]: GetProgramEnvParameterdvARB (will be remapped) */
"iip\0"
"glGetProgramEnvParameterdvARB\0"
"\0"
- /* _mesa_function_pool[33821]: TexCoord4dv (offset 119) */
+ /* _mesa_function_pool[33977]: TexCoord4dv (offset 119) */
"p\0"
"glTexCoord4dv\0"
"\0"
- /* _mesa_function_pool[33838]: LockArraysEXT (will be remapped) */
+ /* _mesa_function_pool[33994]: LockArraysEXT (will be remapped) */
"ii\0"
"glLockArraysEXT\0"
"\0"
- /* _mesa_function_pool[33858]: Begin (offset 7) */
+ /* _mesa_function_pool[34014]: Begin (offset 7) */
"i\0"
"glBegin\0"
"\0"
- /* _mesa_function_pool[33869]: LightModeli (offset 165) */
+ /* _mesa_function_pool[34025]: LightModeli (offset 165) */
"ii\0"
"glLightModeli\0"
"\0"
- /* _mesa_function_pool[33887]: VertexAttribI4ivEXT (will be remapped) */
+ /* _mesa_function_pool[34043]: VertexAttribI4ivEXT (will be remapped) */
"ip\0"
"glVertexAttribI4ivEXT\0"
"glVertexAttribI4iv\0"
"\0"
- /* _mesa_function_pool[33932]: Rectfv (offset 89) */
+ /* _mesa_function_pool[34088]: Rectfv (offset 89) */
"pp\0"
"glRectfv\0"
"\0"
- /* _mesa_function_pool[33945]: LightModelf (offset 163) */
+ /* _mesa_function_pool[34101]: LightModelf (offset 163) */
"if\0"
"glLightModelf\0"
"\0"
- /* _mesa_function_pool[33963]: GetTexParameterfv (offset 282) */
+ /* _mesa_function_pool[34119]: GetTexParameterfv (offset 282) */
"iip\0"
"glGetTexParameterfv\0"
"\0"
- /* _mesa_function_pool[33988]: GetLightfv (offset 264) */
+ /* _mesa_function_pool[34144]: GetLightfv (offset 264) */
"iip\0"
"glGetLightfv\0"
"\0"
- /* _mesa_function_pool[34006]: PixelTransformParameterivEXT (dynamic) */
+ /* _mesa_function_pool[34162]: PixelTransformParameterivEXT (dynamic) */
"iip\0"
"glPixelTransformParameterivEXT\0"
"\0"
- /* _mesa_function_pool[34042]: BinormalPointerEXT (dynamic) */
+ /* _mesa_function_pool[34198]: BinormalPointerEXT (dynamic) */
"iip\0"
"glBinormalPointerEXT\0"
"\0"
- /* _mesa_function_pool[34068]: VertexAttrib1dNV (will be remapped) */
+ /* _mesa_function_pool[34224]: VertexAttrib1dNV (will be remapped) */
"id\0"
"glVertexAttrib1dNV\0"
"\0"
- /* _mesa_function_pool[34091]: GetCombinerInputParameterivNV (will be remapped) */
+ /* _mesa_function_pool[34247]: GetCombinerInputParameterivNV (will be remapped) */
"iiiip\0"
"glGetCombinerInputParameterivNV\0"
"\0"
- /* _mesa_function_pool[34130]: Disable (offset 214) */
+ /* _mesa_function_pool[34286]: Disable (offset 214) */
"i\0"
"glDisable\0"
"\0"
- /* _mesa_function_pool[34143]: MultiTexCoord2fvARB (offset 387) */
+ /* _mesa_function_pool[34299]: MultiTexCoord2fvARB (offset 387) */
"ip\0"
"glMultiTexCoord2fv\0"
"glMultiTexCoord2fvARB\0"
"\0"
- /* _mesa_function_pool[34188]: GetRenderbufferParameterivEXT (will be remapped) */
+ /* _mesa_function_pool[34344]: GetRenderbufferParameterivEXT (will be remapped) */
"iip\0"
"glGetRenderbufferParameteriv\0"
"glGetRenderbufferParameterivEXT\0"
"\0"
- /* _mesa_function_pool[34254]: CombinerParameterivNV (will be remapped) */
+ /* _mesa_function_pool[34410]: CombinerParameterivNV (will be remapped) */
"ip\0"
"glCombinerParameterivNV\0"
"\0"
- /* _mesa_function_pool[34282]: GenFragmentShadersATI (will be remapped) */
+ /* _mesa_function_pool[34438]: GenFragmentShadersATI (will be remapped) */
"i\0"
"glGenFragmentShadersATI\0"
"\0"
- /* _mesa_function_pool[34309]: DrawArrays (offset 310) */
+ /* _mesa_function_pool[34465]: DrawArrays (offset 310) */
"iii\0"
"glDrawArrays\0"
"glDrawArraysEXT\0"
"\0"
- /* _mesa_function_pool[34343]: WeightuivARB (dynamic) */
+ /* _mesa_function_pool[34499]: WeightuivARB (dynamic) */
"ip\0"
"glWeightuivARB\0"
"\0"
- /* _mesa_function_pool[34362]: GetVertexAttribIivEXT (will be remapped) */
+ /* _mesa_function_pool[34518]: GetVertexAttribIivEXT (will be remapped) */
"iip\0"
"glGetVertexAttribIivEXT\0"
"glGetVertexAttribIiv\0"
"\0"
- /* _mesa_function_pool[34412]: VertexAttrib2sARB (will be remapped) */
+ /* _mesa_function_pool[34568]: VertexAttrib2sARB (will be remapped) */
"iii\0"
"glVertexAttrib2s\0"
"glVertexAttrib2sARB\0"
"\0"
- /* _mesa_function_pool[34454]: GetnTexImageARB (will be remapped) */
+ /* _mesa_function_pool[34610]: GetnTexImageARB (will be remapped) */
"iiiiip\0"
"glGetnTexImageARB\0"
"\0"
- /* _mesa_function_pool[34480]: ColorMask (offset 210) */
+ /* _mesa_function_pool[34636]: ColorMask (offset 210) */
"iiii\0"
"glColorMask\0"
"\0"
- /* _mesa_function_pool[34498]: GenAsyncMarkersSGIX (dynamic) */
+ /* _mesa_function_pool[34654]: GenAsyncMarkersSGIX (dynamic) */
"i\0"
"glGenAsyncMarkersSGIX\0"
"\0"
- /* _mesa_function_pool[34523]: Tangent3svEXT (dynamic) */
+ /* _mesa_function_pool[34679]: Tangent3svEXT (dynamic) */
"p\0"
"glTangent3svEXT\0"
"\0"
- /* _mesa_function_pool[34542]: GetListParameterivSGIX (dynamic) */
+ /* _mesa_function_pool[34698]: GetListParameterivSGIX (dynamic) */
"iip\0"
"glGetListParameterivSGIX\0"
"\0"
- /* _mesa_function_pool[34572]: BindBufferARB (will be remapped) */
+ /* _mesa_function_pool[34728]: BindBufferARB (will be remapped) */
"ii\0"
"glBindBuffer\0"
"glBindBufferARB\0"
"\0"
- /* _mesa_function_pool[34605]: GetInfoLogARB (will be remapped) */
+ /* _mesa_function_pool[34761]: GetInfoLogARB (will be remapped) */
"iipp\0"
"glGetInfoLogARB\0"
"\0"
- /* _mesa_function_pool[34627]: RasterPos4iv (offset 83) */
+ /* _mesa_function_pool[34783]: RasterPos4iv (offset 83) */
"p\0"
"glRasterPos4iv\0"
"\0"
- /* _mesa_function_pool[34645]: Enable (offset 215) */
+ /* _mesa_function_pool[34801]: Enable (offset 215) */
"i\0"
"glEnable\0"
"\0"
- /* _mesa_function_pool[34657]: LineStipple (offset 167) */
+ /* _mesa_function_pool[34813]: LineStipple (offset 167) */
"ii\0"
"glLineStipple\0"
"\0"
- /* _mesa_function_pool[34675]: VertexAttribs4svNV (will be remapped) */
+ /* _mesa_function_pool[34831]: VertexAttribs4svNV (will be remapped) */
"iip\0"
"glVertexAttribs4svNV\0"
"\0"
- /* _mesa_function_pool[34701]: EdgeFlagPointerListIBM (dynamic) */
+ /* _mesa_function_pool[34857]: EdgeFlagPointerListIBM (dynamic) */
"ipi\0"
"glEdgeFlagPointerListIBM\0"
"\0"
- /* _mesa_function_pool[34731]: UniformMatrix3x2fv (will be remapped) */
+ /* _mesa_function_pool[34887]: UniformMatrix3x2fv (will be remapped) */
"iiip\0"
"glUniformMatrix3x2fv\0"
"\0"
- /* _mesa_function_pool[34758]: GetMinmaxParameterfv (offset 365) */
+ /* _mesa_function_pool[34914]: GetMinmaxParameterfv (offset 365) */
"iip\0"
"glGetMinmaxParameterfv\0"
"glGetMinmaxParameterfvEXT\0"
"\0"
- /* _mesa_function_pool[34812]: VertexAttrib1fvARB (will be remapped) */
+ /* _mesa_function_pool[34968]: VertexAttrib1fvARB (will be remapped) */
"ip\0"
"glVertexAttrib1fv\0"
"glVertexAttrib1fvARB\0"
"\0"
- /* _mesa_function_pool[34855]: GenBuffersARB (will be remapped) */
+ /* _mesa_function_pool[35011]: GenBuffersARB (will be remapped) */
"ip\0"
"glGenBuffers\0"
"glGenBuffersARB\0"
"\0"
- /* _mesa_function_pool[34888]: VertexAttribs1svNV (will be remapped) */
+ /* _mesa_function_pool[35044]: VertexAttribs1svNV (will be remapped) */
"iip\0"
"glVertexAttribs1svNV\0"
"\0"
- /* _mesa_function_pool[34914]: Vertex3fv (offset 137) */
+ /* _mesa_function_pool[35070]: Vertex3fv (offset 137) */
"p\0"
"glVertex3fv\0"
"\0"
- /* _mesa_function_pool[34929]: GetTexBumpParameterivATI (will be remapped) */
+ /* _mesa_function_pool[35085]: GetTexBumpParameterivATI (will be remapped) */
"ip\0"
"glGetTexBumpParameterivATI\0"
"\0"
- /* _mesa_function_pool[34960]: Binormal3bEXT (dynamic) */
+ /* _mesa_function_pool[35116]: Binormal3bEXT (dynamic) */
"iii\0"
"glBinormal3bEXT\0"
"\0"
- /* _mesa_function_pool[34981]: FragmentMaterialivSGIX (dynamic) */
+ /* _mesa_function_pool[35137]: FragmentMaterialivSGIX (dynamic) */
"iip\0"
"glFragmentMaterialivSGIX\0"
"\0"
- /* _mesa_function_pool[35011]: IsRenderbufferEXT (will be remapped) */
+ /* _mesa_function_pool[35167]: IsRenderbufferEXT (will be remapped) */
"i\0"
"glIsRenderbuffer\0"
"glIsRenderbufferEXT\0"
"\0"
- /* _mesa_function_pool[35051]: GenProgramsNV (will be remapped) */
+ /* _mesa_function_pool[35207]: GenProgramsNV (will be remapped) */
"ip\0"
"glGenProgramsARB\0"
"glGenProgramsNV\0"
"\0"
- /* _mesa_function_pool[35088]: VertexAttrib4dvNV (will be remapped) */
+ /* _mesa_function_pool[35244]: VertexAttrib4dvNV (will be remapped) */
"ip\0"
"glVertexAttrib4dvNV\0"
"\0"
- /* _mesa_function_pool[35112]: EndFragmentShaderATI (will be remapped) */
+ /* _mesa_function_pool[35268]: EndFragmentShaderATI (will be remapped) */
"\0"
"glEndFragmentShaderATI\0"
"\0"
- /* _mesa_function_pool[35137]: Binormal3iEXT (dynamic) */
+ /* _mesa_function_pool[35293]: Binormal3iEXT (dynamic) */
"iii\0"
"glBinormal3iEXT\0"
"\0"
- /* _mesa_function_pool[35158]: WindowPos2fMESA (will be remapped) */
+ /* _mesa_function_pool[35314]: WindowPos2fMESA (will be remapped) */
"ff\0"
"glWindowPos2f\0"
"glWindowPos2fARB\0"
@@ -5088,675 +5112,681 @@ static const char _mesa_function_pool[] =
/* these functions need to be remapped */
static const struct gl_function_pool_remap MESA_remap_table_functions[] = {
- { 1610, AttachShader_remap_index },
- { 10602, CreateProgram_remap_index },
- { 24598, CreateShader_remap_index },
- { 27172, DeleteProgram_remap_index },
- { 19931, DeleteShader_remap_index },
- { 25091, DetachShader_remap_index },
- { 19178, GetAttachedShaders_remap_index },
- { 5288, GetProgramInfoLog_remap_index },
+ { 1631, AttachShader_remap_index },
+ { 10674, CreateProgram_remap_index },
+ { 24670, CreateShader_remap_index },
+ { 27244, DeleteProgram_remap_index },
+ { 20003, DeleteShader_remap_index },
+ { 25163, DetachShader_remap_index },
+ { 19250, GetAttachedShaders_remap_index },
+ { 5360, GetProgramInfoLog_remap_index },
{ 425, GetProgramiv_remap_index },
- { 7178, GetShaderInfoLog_remap_index },
- { 32943, GetShaderiv_remap_index },
- { 14151, IsProgram_remap_index },
- { 13052, IsShader_remap_index },
- { 10732, StencilFuncSeparate_remap_index },
- { 4266, StencilMaskSeparate_remap_index },
- { 8243, StencilOpSeparate_remap_index },
- { 23832, UniformMatrix2x3fv_remap_index },
- { 3040, UniformMatrix2x4fv_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 },
- { 31198, ClearBufferiv_remap_index },
- { 14356, ClearBufferuiv_remap_index },
- { 21354, GetStringi_remap_index },
- { 2981, TexBuffer_remap_index },
+ { 7250, GetShaderInfoLog_remap_index },
+ { 33099, GetShaderiv_remap_index },
+ { 14223, IsProgram_remap_index },
+ { 13124, IsShader_remap_index },
+ { 10804, StencilFuncSeparate_remap_index },
+ { 4287, StencilMaskSeparate_remap_index },
+ { 8315, StencilOpSeparate_remap_index },
+ { 23904, UniformMatrix2x3fv_remap_index },
+ { 3061, UniformMatrix2x4fv_remap_index },
+ { 34887, UniformMatrix3x2fv_remap_index },
+ { 32399, UniformMatrix3x4fv_remap_index },
+ { 17352, UniformMatrix4x2fv_remap_index },
+ { 3552, UniformMatrix4x3fv_remap_index },
+ { 5583, ClampColor_remap_index },
+ { 19304, ClearBufferfi_remap_index },
+ { 18720, ClearBufferfv_remap_index },
+ { 31354, ClearBufferiv_remap_index },
+ { 14428, ClearBufferuiv_remap_index },
+ { 21426, GetStringi_remap_index },
+ { 3002, TexBuffer_remap_index },
{ 958, FramebufferTexture_remap_index },
- { 28208, GetBufferParameteri64v_remap_index },
- { 10832, GetInteger64i_v_remap_index },
- { 24912, VertexAttribDivisor_remap_index },
- { 10620, LoadTransposeMatrixdARB_remap_index },
- { 32672, LoadTransposeMatrixfARB_remap_index },
- { 6196, MultTransposeMatrixdARB_remap_index },
- { 25278, MultTransposeMatrixfARB_remap_index },
+ { 28280, GetBufferParameteri64v_remap_index },
+ { 10904, GetInteger64i_v_remap_index },
+ { 24984, VertexAttribDivisor_remap_index },
+ { 10692, LoadTransposeMatrixdARB_remap_index },
+ { 32828, LoadTransposeMatrixfARB_remap_index },
+ { 6268, MultTransposeMatrixdARB_remap_index },
+ { 25350, MultTransposeMatrixfARB_remap_index },
{ 236, SampleCoverageARB_remap_index },
- { 6441, CompressedTexImage1DARB_remap_index },
- { 25806, CompressedTexImage2DARB_remap_index },
- { 4329, CompressedTexImage3DARB_remap_index },
- { 19520, CompressedTexSubImage1DARB_remap_index },
- { 2166, CompressedTexSubImage2DARB_remap_index },
- { 21776, CompressedTexSubImage3DARB_remap_index },
- { 30288, GetCompressedTexImageARB_remap_index },
- { 4123, DisableVertexAttribArrayARB_remap_index },
- { 31808, EnableVertexAttribArrayARB_remap_index },
- { 33786, GetProgramEnvParameterdvARB_remap_index },
- { 25158, GetProgramEnvParameterfvARB_remap_index },
- { 29205, GetProgramLocalParameterdvARB_remap_index },
- { 8719, GetProgramLocalParameterfvARB_remap_index },
- { 19696, GetProgramStringARB_remap_index },
- { 29400, GetProgramivARB_remap_index },
- { 21971, GetVertexAttribdvARB_remap_index },
- { 17088, GetVertexAttribfvARB_remap_index },
- { 10411, GetVertexAttribivARB_remap_index },
- { 20791, ProgramEnvParameter4dARB_remap_index },
- { 26922, ProgramEnvParameter4dvARB_remap_index },
- { 17946, ProgramEnvParameter4fARB_remap_index },
- { 9594, ProgramEnvParameter4fvARB_remap_index },
- { 4292, ProgramLocalParameter4dARB_remap_index },
- { 13861, ProgramLocalParameter4dvARB_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 },
- { 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 },
- { 34412, VertexAttrib2sARB_remap_index },
- { 33423, VertexAttrib2svARB_remap_index },
- { 12036, VertexAttrib3dARB_remap_index },
- { 9261, VertexAttrib3dvARB_remap_index },
- { 1780, VertexAttrib3fARB_remap_index },
- { 24149, VertexAttrib3fvARB_remap_index },
- { 29889, VertexAttrib3sARB_remap_index },
- { 21713, VertexAttrib3svARB_remap_index },
- { 5331, VertexAttrib4NbvARB_remap_index },
- { 19055, VertexAttrib4NivARB_remap_index },
- { 24104, VertexAttrib4NsvARB_remap_index },
- { 25110, VertexAttrib4NubARB_remap_index },
- { 33669, VertexAttrib4NubvARB_remap_index },
- { 20442, VertexAttrib4NuivARB_remap_index },
- { 3361, VertexAttrib4NusvARB_remap_index },
- { 11625, VertexAttrib4bvARB_remap_index },
- { 28578, VertexAttrib4dARB_remap_index },
- { 22786, VertexAttrib4dvARB_remap_index },
- { 12190, VertexAttrib4fARB_remap_index },
- { 12594, VertexAttrib4fvARB_remap_index },
- { 10975, VertexAttrib4ivARB_remap_index },
- { 18462, VertexAttrib4sARB_remap_index },
- { 32858, VertexAttrib4svARB_remap_index },
- { 17751, VertexAttrib4ubvARB_remap_index },
- { 32132, VertexAttrib4uivARB_remap_index },
- { 21524, VertexAttrib4usvARB_remap_index },
- { 23627, VertexAttribPointerARB_remap_index },
- { 34572, BindBufferARB_remap_index },
- { 7476, BufferDataARB_remap_index },
- { 1531, BufferSubDataARB_remap_index },
- { 32418, DeleteBuffersARB_remap_index },
- { 34855, GenBuffersARB_remap_index },
- { 18825, GetBufferParameterivARB_remap_index },
- { 17898, GetBufferPointervARB_remap_index },
- { 1484, GetBufferSubDataARB_remap_index },
- { 32080, IsBufferARB_remap_index },
- { 28052, MapBufferARB_remap_index },
- { 33073, UnmapBufferARB_remap_index },
+ { 6513, CompressedTexImage1DARB_remap_index },
+ { 25878, CompressedTexImage2DARB_remap_index },
+ { 4350, CompressedTexImage3DARB_remap_index },
+ { 19592, CompressedTexSubImage1DARB_remap_index },
+ { 2187, CompressedTexSubImage2DARB_remap_index },
+ { 21848, CompressedTexSubImage3DARB_remap_index },
+ { 30421, GetCompressedTexImageARB_remap_index },
+ { 4144, DisableVertexAttribArrayARB_remap_index },
+ { 31964, EnableVertexAttribArrayARB_remap_index },
+ { 33942, GetProgramEnvParameterdvARB_remap_index },
+ { 25230, GetProgramEnvParameterfvARB_remap_index },
+ { 29277, GetProgramLocalParameterdvARB_remap_index },
+ { 8791, GetProgramLocalParameterfvARB_remap_index },
+ { 19768, GetProgramStringARB_remap_index },
+ { 29472, GetProgramivARB_remap_index },
+ { 22043, GetVertexAttribdvARB_remap_index },
+ { 17160, GetVertexAttribfvARB_remap_index },
+ { 10483, GetVertexAttribivARB_remap_index },
+ { 20863, ProgramEnvParameter4dARB_remap_index },
+ { 26994, ProgramEnvParameter4dvARB_remap_index },
+ { 18018, ProgramEnvParameter4fARB_remap_index },
+ { 9666, ProgramEnvParameter4fvARB_remap_index },
+ { 4313, ProgramLocalParameter4dARB_remap_index },
+ { 13933, ProgramLocalParameter4dvARB_remap_index },
+ { 31375, ProgramLocalParameter4fARB_remap_index },
+ { 27640, ProgramLocalParameter4fvARB_remap_index },
+ { 30114, ProgramStringARB_remap_index },
+ { 21157, VertexAttrib1dARB_remap_index },
+ { 16761, VertexAttrib1dvARB_remap_index },
+ { 4509, VertexAttrib1fARB_remap_index },
+ { 34968, VertexAttrib1fvARB_remap_index },
+ { 7841, VertexAttrib1sARB_remap_index },
+ { 2382, VertexAttrib1svARB_remap_index },
+ { 16174, VertexAttrib2dARB_remap_index },
+ { 18741, VertexAttrib2dvARB_remap_index },
+ { 1714, VertexAttrib2fARB_remap_index },
+ { 18854, VertexAttrib2fvARB_remap_index },
+ { 34568, VertexAttrib2sARB_remap_index },
+ { 33579, VertexAttrib2svARB_remap_index },
+ { 12108, VertexAttrib3dARB_remap_index },
+ { 9333, VertexAttrib3dvARB_remap_index },
+ { 1801, VertexAttrib3fARB_remap_index },
+ { 24221, VertexAttrib3fvARB_remap_index },
+ { 29961, VertexAttrib3sARB_remap_index },
+ { 21785, VertexAttrib3svARB_remap_index },
+ { 5403, VertexAttrib4NbvARB_remap_index },
+ { 19127, VertexAttrib4NivARB_remap_index },
+ { 24176, VertexAttrib4NsvARB_remap_index },
+ { 25182, VertexAttrib4NubARB_remap_index },
+ { 33825, VertexAttrib4NubvARB_remap_index },
+ { 20514, VertexAttrib4NuivARB_remap_index },
+ { 3382, VertexAttrib4NusvARB_remap_index },
+ { 11697, VertexAttrib4bvARB_remap_index },
+ { 28650, VertexAttrib4dARB_remap_index },
+ { 22858, VertexAttrib4dvARB_remap_index },
+ { 12262, VertexAttrib4fARB_remap_index },
+ { 12666, VertexAttrib4fvARB_remap_index },
+ { 11047, VertexAttrib4ivARB_remap_index },
+ { 18534, VertexAttrib4sARB_remap_index },
+ { 33014, VertexAttrib4svARB_remap_index },
+ { 17823, VertexAttrib4ubvARB_remap_index },
+ { 32288, VertexAttrib4uivARB_remap_index },
+ { 21596, VertexAttrib4usvARB_remap_index },
+ { 23699, VertexAttribPointerARB_remap_index },
+ { 34728, BindBufferARB_remap_index },
+ { 7548, BufferDataARB_remap_index },
+ { 1552, BufferSubDataARB_remap_index },
+ { 32574, DeleteBuffersARB_remap_index },
+ { 35011, GenBuffersARB_remap_index },
+ { 18897, GetBufferParameterivARB_remap_index },
+ { 17970, GetBufferPointervARB_remap_index },
+ { 1505, GetBufferSubDataARB_remap_index },
+ { 32236, IsBufferARB_remap_index },
+ { 28124, MapBufferARB_remap_index },
+ { 33229, UnmapBufferARB_remap_index },
{ 332, BeginQueryARB_remap_index },
- { 21180, DeleteQueriesARB_remap_index },
- { 12913, EndQueryARB_remap_index },
- { 30767, GenQueriesARB_remap_index },
- { 2058, GetQueryObjectivARB_remap_index },
- { 18506, GetQueryObjectuivARB_remap_index },
- { 1837, GetQueryivARB_remap_index },
- { 21431, IsQueryARB_remap_index },
- { 8871, AttachObjectARB_remap_index },
- { 19893, CompileShaderARB_remap_index },
- { 3473, CreateProgramObjectARB_remap_index },
- { 7421, CreateShaderObjectARB_remap_index },
- { 15385, DeleteObjectARB_remap_index },
- { 25597, DetachObjectARB_remap_index },
- { 12658, GetActiveUniformARB_remap_index },
- { 10086, GetAttachedObjectsARB_remap_index },
- { 10393, GetHandleARB_remap_index },
- { 34605, GetInfoLogARB_remap_index },
- { 33740, GetObjectParameterfvARB_remap_index },
- { 29079, GetObjectParameterivARB_remap_index },
- { 30525, GetShaderSourceARB_remap_index },
- { 29749, GetUniformLocationARB_remap_index },
- { 25380, GetUniformfvARB_remap_index },
- { 13436, GetUniformivARB_remap_index },
- { 21569, LinkProgramARB_remap_index },
- { 21627, ShaderSourceARB_remap_index },
- { 8143, Uniform1fARB_remap_index },
- { 31470, Uniform1fvARB_remap_index },
- { 23575, Uniform1iARB_remap_index },
- { 22424, Uniform1ivARB_remap_index },
- { 2310, Uniform2fARB_remap_index },
- { 15221, Uniform2fvARB_remap_index },
- { 27939, Uniform2iARB_remap_index },
- { 2447, Uniform2ivARB_remap_index },
- { 20003, Uniform3fARB_remap_index },
- { 10116, Uniform3fvARB_remap_index },
- { 7032, Uniform3iARB_remap_index },
- { 18004, Uniform3ivARB_remap_index },
- { 20597, Uniform4fARB_remap_index },
- { 25244, Uniform4fvARB_remap_index },
- { 26531, Uniform4iARB_remap_index },
- { 21937, Uniform4ivARB_remap_index },
- { 8923, UniformMatrix2fvARB_remap_index },
+ { 21252, DeleteQueriesARB_remap_index },
+ { 12985, EndQueryARB_remap_index },
+ { 30923, GenQueriesARB_remap_index },
+ { 2079, GetQueryObjectivARB_remap_index },
+ { 18578, GetQueryObjectuivARB_remap_index },
+ { 1858, GetQueryivARB_remap_index },
+ { 21503, IsQueryARB_remap_index },
+ { 8943, AttachObjectARB_remap_index },
+ { 19965, CompileShaderARB_remap_index },
+ { 3494, CreateProgramObjectARB_remap_index },
+ { 7493, CreateShaderObjectARB_remap_index },
+ { 15457, DeleteObjectARB_remap_index },
+ { 25669, DetachObjectARB_remap_index },
+ { 12730, GetActiveUniformARB_remap_index },
+ { 10158, GetAttachedObjectsARB_remap_index },
+ { 10465, GetHandleARB_remap_index },
+ { 34761, GetInfoLogARB_remap_index },
+ { 33896, GetObjectParameterfvARB_remap_index },
+ { 29151, GetObjectParameterivARB_remap_index },
+ { 30681, GetShaderSourceARB_remap_index },
+ { 29821, GetUniformLocationARB_remap_index },
+ { 25452, GetUniformfvARB_remap_index },
+ { 13508, GetUniformivARB_remap_index },
+ { 21641, LinkProgramARB_remap_index },
+ { 21699, ShaderSourceARB_remap_index },
+ { 8215, Uniform1fARB_remap_index },
+ { 31626, Uniform1fvARB_remap_index },
+ { 23647, Uniform1iARB_remap_index },
+ { 22496, Uniform1ivARB_remap_index },
+ { 2331, Uniform2fARB_remap_index },
+ { 15293, Uniform2fvARB_remap_index },
+ { 28011, Uniform2iARB_remap_index },
+ { 2468, Uniform2ivARB_remap_index },
+ { 20075, Uniform3fARB_remap_index },
+ { 10188, Uniform3fvARB_remap_index },
+ { 7104, Uniform3iARB_remap_index },
+ { 18076, Uniform3ivARB_remap_index },
+ { 20669, Uniform4fARB_remap_index },
+ { 25316, Uniform4fvARB_remap_index },
+ { 26603, Uniform4iARB_remap_index },
+ { 22009, Uniform4ivARB_remap_index },
+ { 8995, UniformMatrix2fvARB_remap_index },
{ 17, UniformMatrix3fvARB_remap_index },
- { 2883, UniformMatrix4fvARB_remap_index },
- { 27034, UseProgramObjectARB_remap_index },
- { 15790, ValidateProgramARB_remap_index },
- { 22829, BindAttribLocationARB_remap_index },
- { 5376, GetActiveAttribARB_remap_index },
- { 17618, GetAttribLocationARB_remap_index },
- { 31130, DrawBuffersARB_remap_index },
- { 30963, ClampColorARB_remap_index },
- { 19100, DrawArraysInstancedARB_remap_index },
- { 7093, DrawElementsInstancedARB_remap_index },
- { 13966, RenderbufferStorageMultisample_remap_index },
- { 14437, FramebufferTextureARB_remap_index },
- { 27470, FramebufferTextureFaceARB_remap_index },
- { 25746, ProgramParameteriARB_remap_index },
- { 6613, VertexAttribDivisorARB_remap_index },
- { 20645, FlushMappedBufferRange_remap_index },
- { 29516, MapBufferRange_remap_index },
- { 29423, TexBufferARB_remap_index },
- { 17418, BindVertexArray_remap_index },
- { 15594, GenVertexArrays_remap_index },
- { 32010, CopyBufferSubData_remap_index },
- { 32962, ClientWaitSync_remap_index },
- { 2802, DeleteSync_remap_index },
- { 7810, FenceSync_remap_index },
- { 16161, GetInteger64v_remap_index },
- { 24211, GetSynciv_remap_index },
- { 31069, IsSync_remap_index },
- { 10017, WaitSync_remap_index },
- { 4091, DrawElementsBaseVertex_remap_index },
- { 19748, DrawElementsInstancedBaseVertex_remap_index },
- { 32322, DrawRangeElementsBaseVertex_remap_index },
- { 28083, MultiDrawElementsBaseVertex_remap_index },
- { 17684, BlendEquationSeparateiARB_remap_index },
- { 18918, BlendEquationiARB_remap_index },
- { 13375, BlendFuncSeparateiARB_remap_index },
- { 10459, BlendFunciARB_remap_index },
- { 8785, BindSampler_remap_index },
- { 4467, DeleteSamplers_remap_index },
- { 21018, GenSamplers_remap_index },
- { 31001, GetSamplerParameterIiv_remap_index },
- { 20539, GetSamplerParameterIuiv_remap_index },
- { 5208, GetSamplerParameterfv_remap_index },
- { 27191, GetSamplerParameteriv_remap_index },
- { 15139, IsSampler_remap_index },
- { 17371, SamplerParameterIiv_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 },
- { 32609, ColorP3uiv_remap_index },
- { 22530, ColorP4ui_remap_index },
- { 4234, ColorP4uiv_remap_index },
- { 26733, MultiTexCoordP1ui_remap_index },
- { 13349, MultiTexCoordP1uiv_remap_index },
- { 1668, MultiTexCoordP2ui_remap_index },
- { 31782, MultiTexCoordP2uiv_remap_index },
- { 14751, MultiTexCoordP3ui_remap_index },
- { 11051, MultiTexCoordP3uiv_remap_index },
- { 23428, MultiTexCoordP4ui_remap_index },
- { 3953, MultiTexCoordP4uiv_remap_index },
- { 31428, NormalP3ui_remap_index },
- { 20277, NormalP3uiv_remap_index },
- { 26436, SecondaryColorP3ui_remap_index },
- { 20295, SecondaryColorP3uiv_remap_index },
- { 2783, TexCoordP1ui_remap_index },
- { 2550, TexCoordP1uiv_remap_index },
- { 15670, TexCoordP2ui_remap_index },
+ { 2904, UniformMatrix4fvARB_remap_index },
+ { 27106, UseProgramObjectARB_remap_index },
+ { 15862, ValidateProgramARB_remap_index },
+ { 22901, BindAttribLocationARB_remap_index },
+ { 5448, GetActiveAttribARB_remap_index },
+ { 17690, GetAttribLocationARB_remap_index },
+ { 31286, DrawBuffersARB_remap_index },
+ { 31119, ClampColorARB_remap_index },
+ { 19172, DrawArraysInstancedARB_remap_index },
+ { 7165, DrawElementsInstancedARB_remap_index },
+ { 14038, RenderbufferStorageMultisample_remap_index },
+ { 14509, FramebufferTextureARB_remap_index },
+ { 27542, FramebufferTextureFaceARB_remap_index },
+ { 25818, ProgramParameteriARB_remap_index },
+ { 6685, VertexAttribDivisorARB_remap_index },
+ { 20717, FlushMappedBufferRange_remap_index },
+ { 29588, MapBufferRange_remap_index },
+ { 29495, TexBufferARB_remap_index },
+ { 17490, BindVertexArray_remap_index },
+ { 15666, GenVertexArrays_remap_index },
+ { 32166, CopyBufferSubData_remap_index },
+ { 33118, ClientWaitSync_remap_index },
+ { 2823, DeleteSync_remap_index },
+ { 7882, FenceSync_remap_index },
+ { 16233, GetInteger64v_remap_index },
+ { 24283, GetSynciv_remap_index },
+ { 31225, IsSync_remap_index },
+ { 10089, WaitSync_remap_index },
+ { 4112, DrawElementsBaseVertex_remap_index },
+ { 19820, DrawElementsInstancedBaseVertex_remap_index },
+ { 32478, DrawRangeElementsBaseVertex_remap_index },
+ { 28155, MultiDrawElementsBaseVertex_remap_index },
+ { 17756, BlendEquationSeparateiARB_remap_index },
+ { 18990, BlendEquationiARB_remap_index },
+ { 13447, BlendFuncSeparateiARB_remap_index },
+ { 10531, BlendFunciARB_remap_index },
+ { 8857, BindSampler_remap_index },
+ { 4488, DeleteSamplers_remap_index },
+ { 21090, GenSamplers_remap_index },
+ { 31157, GetSamplerParameterIiv_remap_index },
+ { 20611, GetSamplerParameterIuiv_remap_index },
+ { 5280, GetSamplerParameterfv_remap_index },
+ { 27263, GetSamplerParameteriv_remap_index },
+ { 15211, IsSampler_remap_index },
+ { 17443, SamplerParameterIiv_remap_index },
+ { 32517, SamplerParameterIuiv_remap_index },
+ { 23956, SamplerParameterf_remap_index },
+ { 17617, SamplerParameterfv_remap_index },
+ { 23931, SamplerParameteri_remap_index },
+ { 19366, SamplerParameteriv_remap_index },
+ { 20173, ColorP3ui_remap_index },
+ { 32765, ColorP3uiv_remap_index },
+ { 22602, ColorP4ui_remap_index },
+ { 4255, ColorP4uiv_remap_index },
+ { 26805, MultiTexCoordP1ui_remap_index },
+ { 13421, MultiTexCoordP1uiv_remap_index },
+ { 1689, MultiTexCoordP2ui_remap_index },
+ { 31938, MultiTexCoordP2uiv_remap_index },
+ { 14823, MultiTexCoordP3ui_remap_index },
+ { 11123, MultiTexCoordP3uiv_remap_index },
+ { 23500, MultiTexCoordP4ui_remap_index },
+ { 3974, MultiTexCoordP4uiv_remap_index },
+ { 31584, NormalP3ui_remap_index },
+ { 20349, NormalP3uiv_remap_index },
+ { 26508, SecondaryColorP3ui_remap_index },
+ { 20367, SecondaryColorP3uiv_remap_index },
+ { 2804, TexCoordP1ui_remap_index },
+ { 2571, TexCoordP1uiv_remap_index },
+ { 15742, TexCoordP2ui_remap_index },
{ 216, TexCoordP2uiv_remap_index },
- { 6320, TexCoordP3ui_remap_index },
- { 23812, TexCoordP3uiv_remap_index },
- { 1966, TexCoordP4ui_remap_index },
- { 5780, TexCoordP4uiv_remap_index },
- { 10502, VertexAttribP1ui_remap_index },
- { 14938, VertexAttribP1uiv_remap_index },
- { 31445, VertexAttribP2ui_remap_index },
- { 5572, VertexAttribP2uiv_remap_index },
- { 3426, VertexAttribP3ui_remap_index },
- { 21036, VertexAttribP3uiv_remap_index },
- { 14964, VertexAttribP4ui_remap_index },
- { 16946, VertexAttribP4uiv_remap_index },
- { 5314, VertexP2ui_remap_index },
- { 16516, VertexP2uiv_remap_index },
- { 2430, VertexP3ui_remap_index },
- { 17466, VertexP3uiv_remap_index },
- { 10045, VertexP4ui_remap_index },
- { 3408, VertexP4uiv_remap_index },
- { 5598, BindTransformFeedback_remap_index },
- { 3500, DeleteTransformFeedbacks_remap_index },
- { 7065, DrawTransformFeedback_remap_index },
- { 10253, GenTransformFeedbacks_remap_index },
- { 29932, IsTransformFeedback_remap_index },
- { 27663, PauseTransformFeedback_remap_index },
- { 6081, ResumeTransformFeedback_remap_index },
- { 23149, ClearDepthf_remap_index },
- { 7369, DepthRangef_remap_index },
- { 15406, GetShaderPrecisionFormat_remap_index },
- { 10672, ReleaseShaderCompiler_remap_index },
- { 11668, ShaderBinary_remap_index },
+ { 6392, TexCoordP3ui_remap_index },
+ { 23884, TexCoordP3uiv_remap_index },
+ { 1987, TexCoordP4ui_remap_index },
+ { 5852, TexCoordP4uiv_remap_index },
+ { 10574, VertexAttribP1ui_remap_index },
+ { 15010, VertexAttribP1uiv_remap_index },
+ { 31601, VertexAttribP2ui_remap_index },
+ { 5644, VertexAttribP2uiv_remap_index },
+ { 3447, VertexAttribP3ui_remap_index },
+ { 21108, VertexAttribP3uiv_remap_index },
+ { 15036, VertexAttribP4ui_remap_index },
+ { 17018, VertexAttribP4uiv_remap_index },
+ { 5386, VertexP2ui_remap_index },
+ { 16588, VertexP2uiv_remap_index },
+ { 2451, VertexP3ui_remap_index },
+ { 17538, VertexP3uiv_remap_index },
+ { 10117, VertexP4ui_remap_index },
+ { 3429, VertexP4uiv_remap_index },
+ { 5670, BindTransformFeedback_remap_index },
+ { 3521, DeleteTransformFeedbacks_remap_index },
+ { 7137, DrawTransformFeedback_remap_index },
+ { 10325, GenTransformFeedbacks_remap_index },
+ { 30004, IsTransformFeedback_remap_index },
+ { 27735, PauseTransformFeedback_remap_index },
+ { 6153, ResumeTransformFeedback_remap_index },
+ { 23221, ClearDepthf_remap_index },
+ { 7441, DepthRangef_remap_index },
+ { 15478, GetShaderPrecisionFormat_remap_index },
+ { 10744, ReleaseShaderCompiler_remap_index },
+ { 11740, ShaderBinary_remap_index },
{ 985, GetGraphicsResetStatusARB_remap_index },
- { 26311, GetnColorTableARB_remap_index },
- { 8554, GetnCompressedTexImageARB_remap_index },
- { 4183, GetnConvolutionFilterARB_remap_index },
- { 16732, GetnHistogramARB_remap_index },
- { 25070, GetnMapdvARB_remap_index },
- { 23606, GetnMapfvARB_remap_index },
- { 2289, GetnMapivARB_remap_index },
- { 18266, GetnMinmaxARB_remap_index },
- { 4833, GetnPixelMapfvARB_remap_index },
- { 20416, GetnPixelMapuivARB_remap_index },
- { 3153, GetnPixelMapusvARB_remap_index },
- { 1364, GetnPolygonStippleARB_remap_index },
- { 22614, GetnSeparableFilterARB_remap_index },
- { 34454, GetnTexImageARB_remap_index },
- { 19723, GetnUniformdvARB_remap_index },
- { 4905, GetnUniformfvARB_remap_index },
- { 10527, GetnUniformivARB_remap_index },
- { 24060, GetnUniformuivARB_remap_index },
- { 3067, ReadnPixelsARB_remap_index },
- { 5949, PolygonOffsetEXT_remap_index },
- { 24833, GetPixelTexGenParameterfvSGIS_remap_index },
- { 4783, GetPixelTexGenParameterivSGIS_remap_index },
- { 24566, PixelTexGenParameterfSGIS_remap_index },
+ { 26383, GetnColorTableARB_remap_index },
+ { 8626, GetnCompressedTexImageARB_remap_index },
+ { 4204, GetnConvolutionFilterARB_remap_index },
+ { 16804, GetnHistogramARB_remap_index },
+ { 25142, GetnMapdvARB_remap_index },
+ { 23678, GetnMapfvARB_remap_index },
+ { 2310, GetnMapivARB_remap_index },
+ { 18338, GetnMinmaxARB_remap_index },
+ { 4876, GetnPixelMapfvARB_remap_index },
+ { 20488, GetnPixelMapuivARB_remap_index },
+ { 3174, GetnPixelMapusvARB_remap_index },
+ { 1385, GetnPolygonStippleARB_remap_index },
+ { 22686, GetnSeparableFilterARB_remap_index },
+ { 34610, GetnTexImageARB_remap_index },
+ { 19795, GetnUniformdvARB_remap_index },
+ { 4977, GetnUniformfvARB_remap_index },
+ { 10599, GetnUniformivARB_remap_index },
+ { 24132, GetnUniformuivARB_remap_index },
+ { 3088, ReadnPixelsARB_remap_index },
+ { 1272, TexStorage1D_remap_index },
+ { 4766, TexStorage2D_remap_index },
+ { 30610, TexStorage3D_remap_index },
+ { 4901, TextureStorage1DEXT_remap_index },
+ { 30391, TextureStorage2DEXT_remap_index },
+ { 30185, TextureStorage3DEXT_remap_index },
+ { 6021, PolygonOffsetEXT_remap_index },
+ { 24905, GetPixelTexGenParameterfvSGIS_remap_index },
+ { 4826, GetPixelTexGenParameterivSGIS_remap_index },
+ { 24638, PixelTexGenParameterfSGIS_remap_index },
{ 644, PixelTexGenParameterfvSGIS_remap_index },
- { 13474, PixelTexGenParameteriSGIS_remap_index },
- { 14611, PixelTexGenParameterivSGIS_remap_index },
- { 19419, SampleMaskSGIS_remap_index },
- { 21371, SamplePatternSGIS_remap_index },
- { 28012, ColorPointerEXT_remap_index },
- { 18712, EdgeFlagPointerEXT_remap_index },
- { 6686, IndexPointerEXT_remap_index },
- { 6766, NormalPointerEXT_remap_index },
- { 16800, TexCoordPointerEXT_remap_index },
- { 7599, VertexPointerEXT_remap_index },
- { 3867, PointParameterfEXT_remap_index },
- { 8450, PointParameterfvEXT_remap_index },
- { 33838, LockArraysEXT_remap_index },
- { 15854, UnlockArraysEXT_remap_index },
- { 1272, SecondaryColor3bEXT_remap_index },
- { 8643, SecondaryColor3bvEXT_remap_index },
- { 11178, SecondaryColor3dEXT_remap_index },
- { 27240, SecondaryColor3dvEXT_remap_index },
- { 29798, SecondaryColor3fEXT_remap_index },
- { 19456, SecondaryColor3fvEXT_remap_index },
+ { 13546, PixelTexGenParameteriSGIS_remap_index },
+ { 14683, PixelTexGenParameterivSGIS_remap_index },
+ { 19491, SampleMaskSGIS_remap_index },
+ { 21443, SamplePatternSGIS_remap_index },
+ { 28084, ColorPointerEXT_remap_index },
+ { 18784, EdgeFlagPointerEXT_remap_index },
+ { 6758, IndexPointerEXT_remap_index },
+ { 6838, NormalPointerEXT_remap_index },
+ { 16872, TexCoordPointerEXT_remap_index },
+ { 7671, VertexPointerEXT_remap_index },
+ { 3888, PointParameterfEXT_remap_index },
+ { 8522, PointParameterfvEXT_remap_index },
+ { 33994, LockArraysEXT_remap_index },
+ { 15926, UnlockArraysEXT_remap_index },
+ { 1293, SecondaryColor3bEXT_remap_index },
+ { 8715, SecondaryColor3bvEXT_remap_index },
+ { 11250, SecondaryColor3dEXT_remap_index },
+ { 27312, SecondaryColor3dvEXT_remap_index },
+ { 29870, SecondaryColor3fEXT_remap_index },
+ { 19528, SecondaryColor3fvEXT_remap_index },
{ 490, SecondaryColor3iEXT_remap_index },
- { 17136, SecondaryColor3ivEXT_remap_index },
- { 10760, SecondaryColor3sEXT_remap_index },
- { 32626, SecondaryColor3svEXT_remap_index },
- { 28915, SecondaryColor3ubEXT_remap_index },
- { 22720, SecondaryColor3ubvEXT_remap_index },
- { 13716, SecondaryColor3uiEXT_remap_index },
- { 24453, SecondaryColor3uivEXT_remap_index },
- { 27520, SecondaryColor3usEXT_remap_index },
- { 13789, SecondaryColor3usvEXT_remap_index },
- { 12537, SecondaryColorPointerEXT_remap_index },
- { 27334, MultiDrawArraysEXT_remap_index },
- { 22359, MultiDrawElementsEXT_remap_index },
- { 22570, FogCoordPointerEXT_remap_index },
- { 4956, FogCoorddEXT_remap_index },
- { 33239, FogCoorddvEXT_remap_index },
- { 5073, FogCoordfEXT_remap_index },
- { 28838, FogCoordfvEXT_remap_index },
- { 12637, PixelTexGenSGIX_remap_index },
- { 29443, BlendFuncSeparateEXT_remap_index },
- { 7511, FlushVertexArrayRangeNV_remap_index },
- { 5898, VertexArrayRangeNV_remap_index },
- { 29863, CombinerInputNV_remap_index },
- { 2232, CombinerOutputNV_remap_index },
- { 32779, CombinerParameterfNV_remap_index },
- { 5752, CombinerParameterfvNV_remap_index },
- { 23909, CombinerParameteriNV_remap_index },
- { 34254, CombinerParameterivNV_remap_index },
- { 7887, FinalCombinerInputNV_remap_index },
- { 1629, GetCombinerInputParameterfvNV_remap_index },
- { 34091, GetCombinerInputParameterivNV_remap_index },
- { 14712, GetCombinerOutputParameterfvNV_remap_index },
- { 14540, GetCombinerOutputParameterivNV_remap_index },
- { 7273, GetFinalCombinerInputParameterfvNV_remap_index },
- { 26378, GetFinalCombinerInputParameterivNV_remap_index },
- { 13327, ResizeBuffersMESA_remap_index },
- { 11863, WindowPos2dMESA_remap_index },
+ { 17208, SecondaryColor3ivEXT_remap_index },
+ { 10832, SecondaryColor3sEXT_remap_index },
+ { 32782, SecondaryColor3svEXT_remap_index },
+ { 28987, SecondaryColor3ubEXT_remap_index },
+ { 22792, SecondaryColor3ubvEXT_remap_index },
+ { 13788, SecondaryColor3uiEXT_remap_index },
+ { 24525, SecondaryColor3uivEXT_remap_index },
+ { 27592, SecondaryColor3usEXT_remap_index },
+ { 13861, SecondaryColor3usvEXT_remap_index },
+ { 12609, SecondaryColorPointerEXT_remap_index },
+ { 27406, MultiDrawArraysEXT_remap_index },
+ { 22431, MultiDrawElementsEXT_remap_index },
+ { 22642, FogCoordPointerEXT_remap_index },
+ { 5028, FogCoorddEXT_remap_index },
+ { 33395, FogCoorddvEXT_remap_index },
+ { 5145, FogCoordfEXT_remap_index },
+ { 28910, FogCoordfvEXT_remap_index },
+ { 12709, PixelTexGenSGIX_remap_index },
+ { 29515, BlendFuncSeparateEXT_remap_index },
+ { 7583, FlushVertexArrayRangeNV_remap_index },
+ { 5970, VertexArrayRangeNV_remap_index },
+ { 29935, CombinerInputNV_remap_index },
+ { 2253, CombinerOutputNV_remap_index },
+ { 32935, CombinerParameterfNV_remap_index },
+ { 5824, CombinerParameterfvNV_remap_index },
+ { 23981, CombinerParameteriNV_remap_index },
+ { 34410, CombinerParameterivNV_remap_index },
+ { 7959, FinalCombinerInputNV_remap_index },
+ { 1650, GetCombinerInputParameterfvNV_remap_index },
+ { 34247, GetCombinerInputParameterivNV_remap_index },
+ { 14784, GetCombinerOutputParameterfvNV_remap_index },
+ { 14612, GetCombinerOutputParameterivNV_remap_index },
+ { 7345, GetFinalCombinerInputParameterfvNV_remap_index },
+ { 26450, GetFinalCombinerInputParameterivNV_remap_index },
+ { 13399, ResizeBuffersMESA_remap_index },
+ { 11935, WindowPos2dMESA_remap_index },
{ 1065, WindowPos2dvMESA_remap_index },
- { 35158, WindowPos2fMESA_remap_index },
- { 8588, WindowPos2fvMESA_remap_index },
- { 19366, WindowPos2iMESA_remap_index },
- { 21844, WindowPos2ivMESA_remap_index },
- { 22458, WindowPos2sMESA_remap_index },
- { 6355, WindowPos2svMESA_remap_index },
- { 8379, WindowPos3dMESA_remap_index },
- { 14883, WindowPos3dvMESA_remap_index },
+ { 35314, WindowPos2fMESA_remap_index },
+ { 8660, WindowPos2fvMESA_remap_index },
+ { 19438, WindowPos2iMESA_remap_index },
+ { 21916, WindowPos2ivMESA_remap_index },
+ { 22530, WindowPos2sMESA_remap_index },
+ { 6427, WindowPos2svMESA_remap_index },
+ { 8451, WindowPos3dMESA_remap_index },
+ { 14955, WindowPos3dvMESA_remap_index },
{ 536, WindowPos3fMESA_remap_index },
- { 15915, WindowPos3fvMESA_remap_index },
- { 25639, WindowPos3iMESA_remap_index },
- { 31955, WindowPos3ivMESA_remap_index },
- { 20164, WindowPos3sMESA_remap_index },
- { 33495, WindowPos3svMESA_remap_index },
- { 11814, WindowPos4dMESA_remap_index },
- { 18142, WindowPos4dvMESA_remap_index },
- { 14842, WindowPos4fMESA_remap_index },
- { 32516, WindowPos4fvMESA_remap_index },
- { 32108, WindowPos4iMESA_remap_index },
- { 13166, WindowPos4ivMESA_remap_index },
- { 20392, WindowPos4sMESA_remap_index },
- { 3451, WindowPos4svMESA_remap_index },
- { 14579, MultiModeDrawArraysIBM_remap_index },
- { 30638, MultiModeDrawElementsIBM_remap_index },
- { 12941, DeleteFencesNV_remap_index },
- { 29710, FinishFenceNV_remap_index },
- { 4015, GenFencesNV_remap_index },
- { 18122, GetFenceivNV_remap_index },
- { 8856, IsFenceNV_remap_index },
- { 14467, SetFenceNV_remap_index },
- { 4544, TestFenceNV_remap_index },
- { 33466, AreProgramsResidentNV_remap_index },
- { 32821, BindProgramNV_remap_index },
- { 27603, DeleteProgramsNV_remap_index },
- { 22938, ExecuteProgramNV_remap_index },
- { 35051, GenProgramsNV_remap_index },
- { 24938, GetProgramParameterdvNV_remap_index },
- { 11240, GetProgramParameterfvNV_remap_index },
- { 27986, GetProgramStringNV_remap_index },
- { 26016, GetProgramivNV_remap_index },
- { 25193, GetTrackMatrixivNV_remap_index },
- { 27780, GetVertexAttribPointervNV_remap_index },
- { 10855, GetVertexAttribdvNV_remap_index },
- { 9912, GetVertexAttribfvNV_remap_index },
- { 19669, GetVertexAttribivNV_remap_index },
- { 20675, IsProgramNV_remap_index },
- { 9995, LoadProgramNV_remap_index },
- { 29539, ProgramParameters4dvNV_remap_index },
- { 25946, ProgramParameters4fvNV_remap_index },
- { 22148, RequestResidentProgramsNV_remap_index },
- { 32300, TrackMatrixNV_remap_index },
- { 34068, VertexAttrib1dNV_remap_index },
- { 14378, VertexAttrib1dvNV_remap_index },
- { 30144, VertexAttrib1fNV_remap_index },
- { 2589, VertexAttrib1fvNV_remap_index },
- { 32573, VertexAttrib1sNV_remap_index },
- { 15988, VertexAttrib1svNV_remap_index },
- { 5264, VertexAttrib2dNV_remap_index },
- { 14271, VertexAttrib2dvNV_remap_index },
- { 21603, VertexAttrib2fNV_remap_index },
- { 13837, VertexAttrib2fvNV_remap_index },
- { 6567, VertexAttrib2sNV_remap_index },
- { 20218, VertexAttrib2svNV_remap_index },
- { 12011, VertexAttrib3dNV_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 },
- { 35088, VertexAttrib4dvNV_remap_index },
- { 5692, VertexAttrib4fNV_remap_index },
- { 10062, VertexAttrib4fvNV_remap_index },
- { 28462, VertexAttrib4sNV_remap_index },
- { 1442, VertexAttrib4svNV_remap_index },
- { 5439, VertexAttrib4ubNV_remap_index },
+ { 15987, WindowPos3fvMESA_remap_index },
+ { 25711, WindowPos3iMESA_remap_index },
+ { 32111, WindowPos3ivMESA_remap_index },
+ { 20236, WindowPos3sMESA_remap_index },
+ { 33651, WindowPos3svMESA_remap_index },
+ { 11886, WindowPos4dMESA_remap_index },
+ { 18214, WindowPos4dvMESA_remap_index },
+ { 14914, WindowPos4fMESA_remap_index },
+ { 32672, WindowPos4fvMESA_remap_index },
+ { 32264, WindowPos4iMESA_remap_index },
+ { 13238, WindowPos4ivMESA_remap_index },
+ { 20464, WindowPos4sMESA_remap_index },
+ { 3472, WindowPos4svMESA_remap_index },
+ { 14651, MultiModeDrawArraysIBM_remap_index },
+ { 30794, MultiModeDrawElementsIBM_remap_index },
+ { 13013, DeleteFencesNV_remap_index },
+ { 29782, FinishFenceNV_remap_index },
+ { 4036, GenFencesNV_remap_index },
+ { 18194, GetFenceivNV_remap_index },
+ { 8928, IsFenceNV_remap_index },
+ { 14539, SetFenceNV_remap_index },
+ { 4565, TestFenceNV_remap_index },
+ { 33622, AreProgramsResidentNV_remap_index },
+ { 32977, BindProgramNV_remap_index },
+ { 27675, DeleteProgramsNV_remap_index },
+ { 23010, ExecuteProgramNV_remap_index },
+ { 35207, GenProgramsNV_remap_index },
+ { 25010, GetProgramParameterdvNV_remap_index },
+ { 11312, GetProgramParameterfvNV_remap_index },
+ { 28058, GetProgramStringNV_remap_index },
+ { 26088, GetProgramivNV_remap_index },
+ { 25265, GetTrackMatrixivNV_remap_index },
+ { 27852, GetVertexAttribPointervNV_remap_index },
+ { 10927, GetVertexAttribdvNV_remap_index },
+ { 9984, GetVertexAttribfvNV_remap_index },
+ { 19741, GetVertexAttribivNV_remap_index },
+ { 20747, IsProgramNV_remap_index },
+ { 10067, LoadProgramNV_remap_index },
+ { 29611, ProgramParameters4dvNV_remap_index },
+ { 26018, ProgramParameters4fvNV_remap_index },
+ { 22220, RequestResidentProgramsNV_remap_index },
+ { 32456, TrackMatrixNV_remap_index },
+ { 34224, VertexAttrib1dNV_remap_index },
+ { 14450, VertexAttrib1dvNV_remap_index },
+ { 30247, VertexAttrib1fNV_remap_index },
+ { 2610, VertexAttrib1fvNV_remap_index },
+ { 32729, VertexAttrib1sNV_remap_index },
+ { 16060, VertexAttrib1svNV_remap_index },
+ { 5336, VertexAttrib2dNV_remap_index },
+ { 14343, VertexAttrib2dvNV_remap_index },
+ { 21675, VertexAttrib2fNV_remap_index },
+ { 13909, VertexAttrib2fvNV_remap_index },
+ { 6639, VertexAttrib2sNV_remap_index },
+ { 20290, VertexAttrib2svNV_remap_index },
+ { 12083, VertexAttrib3dNV_remap_index },
+ { 33872, VertexAttrib3dvNV_remap_index },
+ { 11098, VertexAttrib3fNV_remap_index },
+ { 26410, VertexAttrib3fvNV_remap_index },
+ { 23754, VertexAttrib3sNV_remap_index },
+ { 25292, VertexAttrib3svNV_remap_index },
+ { 30768, VertexAttrib4dNV_remap_index },
+ { 35244, VertexAttrib4dvNV_remap_index },
+ { 5764, VertexAttrib4fNV_remap_index },
+ { 10134, VertexAttrib4fvNV_remap_index },
+ { 28534, VertexAttrib4sNV_remap_index },
+ { 1463, VertexAttrib4svNV_remap_index },
+ { 5511, VertexAttrib4ubNV_remap_index },
{ 798, VertexAttrib4ubvNV_remap_index },
- { 23118, VertexAttribPointerNV_remap_index },
- { 2404, VertexAttribs1dvNV_remap_index },
- { 27868, VertexAttribs1fvNV_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 },
- { 31677, VertexAttribs3svNV_remap_index },
- { 28552, VertexAttribs4dvNV_remap_index },
- { 5872, VertexAttribs4fvNV_remap_index },
- { 34675, VertexAttribs4svNV_remap_index },
- { 31383, VertexAttribs4ubvNV_remap_index },
- { 28622, GetTexBumpParameterfvATI_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 },
- { 31604, BeginFragmentShaderATI_remap_index },
- { 33020, BindFragmentShaderATI_remap_index },
- { 25349, ColorFragmentOp1ATI_remap_index },
- { 4711, ColorFragmentOp2ATI_remap_index },
- { 33361, ColorFragmentOp3ATI_remap_index },
- { 6038, DeleteFragmentShaderATI_remap_index },
- { 35112, EndFragmentShaderATI_remap_index },
- { 34282, GenFragmentShadersATI_remap_index },
- { 27149, PassTexCoordATI_remap_index },
- { 7579, SampleMapATI_remap_index },
- { 28733, SetFragmentShaderConstantATI_remap_index },
+ { 23190, VertexAttribPointerNV_remap_index },
+ { 2425, VertexAttribs1dvNV_remap_index },
+ { 27940, VertexAttribs1fvNV_remap_index },
+ { 35044, VertexAttribs1svNV_remap_index },
+ { 11149, VertexAttribs2dvNV_remap_index },
+ { 27067, VertexAttribs2fvNV_remap_index },
+ { 18810, VertexAttribs2svNV_remap_index },
+ { 5872, VertexAttribs3dvNV_remap_index },
+ { 2284, VertexAttribs3fvNV_remap_index },
+ { 31833, VertexAttribs3svNV_remap_index },
+ { 28624, VertexAttribs4dvNV_remap_index },
+ { 5944, VertexAttribs4fvNV_remap_index },
+ { 34831, VertexAttribs4svNV_remap_index },
+ { 31539, VertexAttribs4ubvNV_remap_index },
+ { 28694, GetTexBumpParameterfvATI_remap_index },
+ { 35085, GetTexBumpParameterivATI_remap_index },
+ { 19918, TexBumpParameterfvATI_remap_index },
+ { 22091, TexBumpParameterivATI_remap_index },
+ { 16624, AlphaFragmentOp1ATI_remap_index },
+ { 27358, AlphaFragmentOp2ATI_remap_index },
+ { 26326, AlphaFragmentOp3ATI_remap_index },
+ { 31760, BeginFragmentShaderATI_remap_index },
+ { 33176, BindFragmentShaderATI_remap_index },
+ { 25421, ColorFragmentOp1ATI_remap_index },
+ { 4732, ColorFragmentOp2ATI_remap_index },
+ { 33517, ColorFragmentOp3ATI_remap_index },
+ { 6110, DeleteFragmentShaderATI_remap_index },
+ { 35268, EndFragmentShaderATI_remap_index },
+ { 34438, GenFragmentShadersATI_remap_index },
+ { 27221, PassTexCoordATI_remap_index },
+ { 7651, SampleMapATI_remap_index },
+ { 28805, SetFragmentShaderConstantATI_remap_index },
{ 383, PointParameteriNV_remap_index },
- { 15095, PointParameterivNV_remap_index },
- { 30451, ActiveStencilFaceEXT_remap_index },
- { 29179, BindVertexArrayAPPLE_remap_index },
- { 2930, DeleteVertexArraysAPPLE_remap_index },
- { 19205, GenVertexArraysAPPLE_remap_index },
- { 25003, IsVertexArrayAPPLE_remap_index },
+ { 15167, PointParameterivNV_remap_index },
+ { 30584, ActiveStencilFaceEXT_remap_index },
+ { 29251, BindVertexArrayAPPLE_remap_index },
+ { 2951, DeleteVertexArraysAPPLE_remap_index },
+ { 19277, GenVertexArraysAPPLE_remap_index },
+ { 25075, IsVertexArrayAPPLE_remap_index },
{ 839, GetProgramNamedParameterdvNV_remap_index },
- { 3830, GetProgramNamedParameterfvNV_remap_index },
- { 28653, ProgramNamedParameter4dNV_remap_index },
- { 15469, ProgramNamedParameter4dvNV_remap_index },
- { 9528, ProgramNamedParameter4fNV_remap_index },
- { 12502, ProgramNamedParameter4fvNV_remap_index },
- { 18053, PrimitiveRestartIndexNV_remap_index },
- { 32493, PrimitiveRestartNV_remap_index },
- { 25925, DepthBoundsEXT_remap_index },
+ { 3851, GetProgramNamedParameterfvNV_remap_index },
+ { 28725, ProgramNamedParameter4dNV_remap_index },
+ { 15541, ProgramNamedParameter4dvNV_remap_index },
+ { 9600, ProgramNamedParameter4fNV_remap_index },
+ { 12574, ProgramNamedParameter4fvNV_remap_index },
+ { 18125, PrimitiveRestartIndexNV_remap_index },
+ { 32649, PrimitiveRestartNV_remap_index },
+ { 25997, DepthBoundsEXT_remap_index },
{ 1164, BlendEquationSeparateEXT_remap_index },
- { 15689, BindFramebufferEXT_remap_index },
- { 27379, BindRenderbufferEXT_remap_index },
- { 10309, CheckFramebufferStatusEXT_remap_index },
- { 24254, DeleteFramebuffersEXT_remap_index },
- { 33618, DeleteRenderbuffersEXT_remap_index },
- { 14295, FramebufferRenderbufferEXT_remap_index },
- { 14484, FramebufferTexture1DEXT_remap_index },
- { 12296, FramebufferTexture2DEXT_remap_index },
- { 11916, FramebufferTexture3DEXT_remap_index },
- { 24869, GenFramebuffersEXT_remap_index },
- { 18603, GenRenderbuffersEXT_remap_index },
- { 7315, GenerateMipmapEXT_remap_index },
- { 23211, GetFramebufferAttachmentParameterivEXT_remap_index },
- { 34188, GetRenderbufferParameterivEXT_remap_index },
- { 21899, IsFramebufferEXT_remap_index },
- { 35011, IsRenderbufferEXT_remap_index },
- { 8803, RenderbufferStorageEXT_remap_index },
+ { 15761, BindFramebufferEXT_remap_index },
+ { 27451, BindRenderbufferEXT_remap_index },
+ { 10381, CheckFramebufferStatusEXT_remap_index },
+ { 24326, DeleteFramebuffersEXT_remap_index },
+ { 33774, DeleteRenderbuffersEXT_remap_index },
+ { 14367, FramebufferRenderbufferEXT_remap_index },
+ { 14556, FramebufferTexture1DEXT_remap_index },
+ { 12368, FramebufferTexture2DEXT_remap_index },
+ { 11988, FramebufferTexture3DEXT_remap_index },
+ { 24941, GenFramebuffersEXT_remap_index },
+ { 18675, GenRenderbuffersEXT_remap_index },
+ { 7387, GenerateMipmapEXT_remap_index },
+ { 23283, GetFramebufferAttachmentParameterivEXT_remap_index },
+ { 34344, GetRenderbufferParameterivEXT_remap_index },
+ { 21971, IsFramebufferEXT_remap_index },
+ { 35167, IsRenderbufferEXT_remap_index },
+ { 8875, RenderbufferStorageEXT_remap_index },
{ 715, BlitFramebufferEXT_remap_index },
- { 15255, BufferParameteriAPPLE_remap_index },
- { 20707, FlushMappedBufferRangeAPPLE_remap_index },
- { 1912, BindFragDataLocationEXT_remap_index },
- { 26038, GetFragDataLocationEXT_remap_index },
- { 11355, GetUniformuivEXT_remap_index },
- { 34362, GetVertexAttribIivEXT_remap_index },
- { 4561, GetVertexAttribIuivEXT_remap_index },
- { 12774, Uniform1uiEXT_remap_index },
- { 29624, Uniform1uivEXT_remap_index },
- { 23778, Uniform2uiEXT_remap_index },
- { 4675, Uniform2uivEXT_remap_index },
- { 30891, Uniform3uiEXT_remap_index },
- { 15616, Uniform3uivEXT_remap_index },
- { 3754, Uniform4uiEXT_remap_index },
- { 9304, Uniform4uivEXT_remap_index },
- { 19584, VertexAttribI1iEXT_remap_index },
- { 5466, VertexAttribI1ivEXT_remap_index },
- { 2690, VertexAttribI1uiEXT_remap_index },
- { 13565, VertexAttribI1uivEXT_remap_index },
+ { 15327, BufferParameteriAPPLE_remap_index },
+ { 20779, FlushMappedBufferRangeAPPLE_remap_index },
+ { 1933, BindFragDataLocationEXT_remap_index },
+ { 26110, GetFragDataLocationEXT_remap_index },
+ { 11427, GetUniformuivEXT_remap_index },
+ { 34518, GetVertexAttribIivEXT_remap_index },
+ { 4582, GetVertexAttribIuivEXT_remap_index },
+ { 12846, Uniform1uiEXT_remap_index },
+ { 29696, Uniform1uivEXT_remap_index },
+ { 23850, Uniform2uiEXT_remap_index },
+ { 4696, Uniform2uivEXT_remap_index },
+ { 31047, Uniform3uiEXT_remap_index },
+ { 15688, Uniform3uivEXT_remap_index },
+ { 3775, Uniform4uiEXT_remap_index },
+ { 9376, Uniform4uivEXT_remap_index },
+ { 19656, VertexAttribI1iEXT_remap_index },
+ { 5538, VertexAttribI1ivEXT_remap_index },
+ { 2711, VertexAttribI1uiEXT_remap_index },
+ { 13637, VertexAttribI1uivEXT_remap_index },
{ 81, VertexAttribI2iEXT_remap_index },
- { 25461, VertexAttribI2ivEXT_remap_index },
- { 5826, VertexAttribI2uiEXT_remap_index },
- { 5118, VertexAttribI2uivEXT_remap_index },
- { 28254, VertexAttribI3iEXT_remap_index },
- { 26688, VertexAttribI3ivEXT_remap_index },
- { 3608, VertexAttribI3uiEXT_remap_index },
- { 32196, VertexAttribI3uivEXT_remap_index },
- { 23487, VertexAttribI4bvEXT_remap_index },
- { 15548, VertexAttribI4iEXT_remap_index },
- { 33887, VertexAttribI4ivEXT_remap_index },
- { 14198, VertexAttribI4svEXT_remap_index },
- { 17571, VertexAttribI4ubvEXT_remap_index },
- { 17199, VertexAttribI4uiEXT_remap_index },
- { 5972, VertexAttribI4uivEXT_remap_index },
- { 12079, VertexAttribI4usvEXT_remap_index },
- { 19790, VertexAttribIPointerEXT_remap_index },
- { 3223, FramebufferTextureLayerEXT_remap_index },
- { 6248, ColorMaskIndexedEXT_remap_index },
- { 20242, DisableIndexedEXT_remap_index },
- { 28299, EnableIndexedEXT_remap_index },
- { 23166, GetBooleanIndexedvEXT_remap_index },
- { 11690, GetIntegerIndexedvEXT_remap_index },
- { 24330, IsEnabledIndexedEXT_remap_index },
- { 24230, ClearColorIiEXT_remap_index },
- { 3704, ClearColorIuiEXT_remap_index },
- { 10552, GetTexParameterIivEXT_remap_index },
- { 6515, GetTexParameterIuivEXT_remap_index },
- { 3179, TexParameterIivEXT_remap_index },
- { 28121, TexParameterIuivEXT_remap_index },
- { 4986, BeginConditionalRenderNV_remap_index },
- { 27099, EndConditionalRenderNV_remap_index },
- { 9939, BeginTransformFeedbackEXT_remap_index },
- { 20321, BindBufferBaseEXT_remap_index },
- { 20136, BindBufferOffsetEXT_remap_index },
- { 12991, BindBufferRangeEXT_remap_index },
- { 15170, EndTransformFeedbackEXT_remap_index },
- { 11553, GetTransformFeedbackVaryingEXT_remap_index },
- { 22204, TransformFeedbackVaryingsEXT_remap_index },
- { 31284, ProvokingVertexEXT_remap_index },
- { 11501, GetTexParameterPointervAPPLE_remap_index },
- { 5528, TextureRangeAPPLE_remap_index },
- { 12368, GetObjectParameterivAPPLE_remap_index },
- { 21326, ObjectPurgeableAPPLE_remap_index },
- { 6290, ObjectUnpurgeableAPPLE_remap_index },
- { 18425, ActiveProgramEXT_remap_index },
- { 18396, CreateShaderProgramEXT_remap_index },
- { 30236, UseShaderProgramEXT_remap_index },
- { 17524, TextureBarrierNV_remap_index },
- { 30477, StencilFuncSeparateATI_remap_index },
- { 6161, ProgramEnvParameters4fvEXT_remap_index },
- { 18290, ProgramLocalParameters4fvEXT_remap_index },
- { 15023, GetQueryObjecti64vEXT_remap_index },
- { 11103, GetQueryObjectui64vEXT_remap_index },
- { 25418, EGLImageTargetRenderbufferStorageOES_remap_index },
- { 12880, EGLImageTargetTexture2DOES_remap_index },
+ { 25533, VertexAttribI2ivEXT_remap_index },
+ { 5898, VertexAttribI2uiEXT_remap_index },
+ { 5190, VertexAttribI2uivEXT_remap_index },
+ { 28326, VertexAttribI3iEXT_remap_index },
+ { 26760, VertexAttribI3ivEXT_remap_index },
+ { 3629, VertexAttribI3uiEXT_remap_index },
+ { 32352, VertexAttribI3uivEXT_remap_index },
+ { 23559, VertexAttribI4bvEXT_remap_index },
+ { 15620, VertexAttribI4iEXT_remap_index },
+ { 34043, VertexAttribI4ivEXT_remap_index },
+ { 14270, VertexAttribI4svEXT_remap_index },
+ { 17643, VertexAttribI4ubvEXT_remap_index },
+ { 17271, VertexAttribI4uiEXT_remap_index },
+ { 6044, VertexAttribI4uivEXT_remap_index },
+ { 12151, VertexAttribI4usvEXT_remap_index },
+ { 19862, VertexAttribIPointerEXT_remap_index },
+ { 3244, FramebufferTextureLayerEXT_remap_index },
+ { 6320, ColorMaskIndexedEXT_remap_index },
+ { 20314, DisableIndexedEXT_remap_index },
+ { 28371, EnableIndexedEXT_remap_index },
+ { 23238, GetBooleanIndexedvEXT_remap_index },
+ { 11762, GetIntegerIndexedvEXT_remap_index },
+ { 24402, IsEnabledIndexedEXT_remap_index },
+ { 24302, ClearColorIiEXT_remap_index },
+ { 3725, ClearColorIuiEXT_remap_index },
+ { 10624, GetTexParameterIivEXT_remap_index },
+ { 6587, GetTexParameterIuivEXT_remap_index },
+ { 3200, TexParameterIivEXT_remap_index },
+ { 28193, TexParameterIuivEXT_remap_index },
+ { 5058, BeginConditionalRenderNV_remap_index },
+ { 27171, EndConditionalRenderNV_remap_index },
+ { 10011, BeginTransformFeedbackEXT_remap_index },
+ { 20393, BindBufferBaseEXT_remap_index },
+ { 20208, BindBufferOffsetEXT_remap_index },
+ { 13063, BindBufferRangeEXT_remap_index },
+ { 15242, EndTransformFeedbackEXT_remap_index },
+ { 11625, GetTransformFeedbackVaryingEXT_remap_index },
+ { 22276, TransformFeedbackVaryingsEXT_remap_index },
+ { 31440, ProvokingVertexEXT_remap_index },
+ { 11573, GetTexParameterPointervAPPLE_remap_index },
+ { 5600, TextureRangeAPPLE_remap_index },
+ { 12440, GetObjectParameterivAPPLE_remap_index },
+ { 21398, ObjectPurgeableAPPLE_remap_index },
+ { 6362, ObjectUnpurgeableAPPLE_remap_index },
+ { 18497, ActiveProgramEXT_remap_index },
+ { 18468, CreateShaderProgramEXT_remap_index },
+ { 30339, UseShaderProgramEXT_remap_index },
+ { 17596, TextureBarrierNV_remap_index },
+ { 30633, StencilFuncSeparateATI_remap_index },
+ { 6233, ProgramEnvParameters4fvEXT_remap_index },
+ { 18362, ProgramLocalParameters4fvEXT_remap_index },
+ { 15095, GetQueryObjecti64vEXT_remap_index },
+ { 11175, GetQueryObjectui64vEXT_remap_index },
+ { 25490, EGLImageTargetRenderbufferStorageOES_remap_index },
+ { 12952, EGLImageTargetTexture2DOES_remap_index },
{ -1, -1 }
};
/* these functions are in the ABI, but have alternative names */
static const struct gl_function_remap MESA_alt_functions[] = {
/* from GL_EXT_blend_color */
- { 2848, _gloffset_BlendColor },
+ { 2869, _gloffset_BlendColor },
/* from GL_EXT_blend_minmax */
- { 11973, _gloffset_BlendEquation },
+ { 12045, _gloffset_BlendEquation },
/* from GL_EXT_color_subtable */
- { 18164, _gloffset_ColorSubTable },
- { 33550, _gloffset_CopyColorSubTable },
+ { 18236, _gloffset_ColorSubTable },
+ { 33706, _gloffset_CopyColorSubTable },
/* from GL_EXT_convolution */
{ 277, _gloffset_ConvolutionFilter1D },
- { 2628, _gloffset_CopyConvolutionFilter1D },
- { 4403, _gloffset_GetConvolutionParameteriv },
- { 9152, _gloffset_ConvolutionFilter2D },
- { 9354, _gloffset_ConvolutionParameteriv },
- { 9814, _gloffset_ConvolutionParameterfv },
- { 22047, _gloffset_GetSeparableFilter },
- { 25693, _gloffset_SeparableFilter2D },
- { 26581, _gloffset_ConvolutionParameteri },
- { 26774, _gloffset_ConvolutionParameterf },
- { 28488, _gloffset_GetConvolutionParameterfv },
- { 29345, _gloffset_GetConvolutionFilter },
- { 31892, _gloffset_CopyConvolutionFilter2D },
+ { 2649, _gloffset_CopyConvolutionFilter1D },
+ { 4424, _gloffset_GetConvolutionParameteriv },
+ { 9224, _gloffset_ConvolutionFilter2D },
+ { 9426, _gloffset_ConvolutionParameteriv },
+ { 9886, _gloffset_ConvolutionParameterfv },
+ { 22119, _gloffset_GetSeparableFilter },
+ { 25765, _gloffset_SeparableFilter2D },
+ { 26653, _gloffset_ConvolutionParameteri },
+ { 26846, _gloffset_ConvolutionParameterf },
+ { 28560, _gloffset_GetConvolutionParameterfv },
+ { 29417, _gloffset_GetConvolutionFilter },
+ { 32048, _gloffset_CopyConvolutionFilter2D },
/* from GL_EXT_copy_texture */
- { 16048, _gloffset_CopyTexSubImage3D },
- { 17851, _gloffset_CopyTexImage2D },
- { 26164, _gloffset_CopyTexImage1D },
- { 29026, _gloffset_CopyTexSubImage2D },
- { 31504, _gloffset_CopyTexSubImage1D },
+ { 16120, _gloffset_CopyTexSubImage3D },
+ { 17923, _gloffset_CopyTexImage2D },
+ { 26236, _gloffset_CopyTexImage1D },
+ { 29098, _gloffset_CopyTexSubImage2D },
+ { 31660, _gloffset_CopyTexSubImage1D },
/* from GL_EXT_draw_range_elements */
- { 10168, _gloffset_DrawRangeElements },
+ { 10240, _gloffset_DrawRangeElements },
/* from GL_EXT_histogram */
{ 876, _gloffset_Histogram },
- { 3790, _gloffset_ResetHistogram },
- { 10698, _gloffset_GetMinmax },
- { 16382, _gloffset_GetHistogramParameterfv },
- { 26089, _gloffset_GetMinmaxParameteriv },
- { 28378, _gloffset_ResetMinmax },
- { 29242, _gloffset_GetHistogramParameteriv },
- { 30411, _gloffset_GetHistogram },
- { 33136, _gloffset_Minmax },
- { 34758, _gloffset_GetMinmaxParameterfv },
+ { 3811, _gloffset_ResetHistogram },
+ { 10770, _gloffset_GetMinmax },
+ { 16454, _gloffset_GetHistogramParameterfv },
+ { 26161, _gloffset_GetMinmaxParameteriv },
+ { 28450, _gloffset_ResetMinmax },
+ { 29314, _gloffset_GetHistogramParameteriv },
+ { 30544, _gloffset_GetHistogram },
+ { 33292, _gloffset_Minmax },
+ { 34914, _gloffset_GetMinmaxParameterfv },
/* from GL_EXT_paletted_texture */
- { 9014, _gloffset_ColorTable },
- { 16228, _gloffset_GetColorTable },
- { 24616, _gloffset_GetColorTableParameterfv },
- { 26830, _gloffset_GetColorTableParameteriv },
+ { 9086, _gloffset_ColorTable },
+ { 16300, _gloffset_GetColorTable },
+ { 24688, _gloffset_GetColorTableParameterfv },
+ { 26902, _gloffset_GetColorTableParameteriv },
/* from GL_EXT_subtexture */
- { 7725, _gloffset_TexSubImage1D },
- { 11428, _gloffset_TexSubImage2D },
+ { 7797, _gloffset_TexSubImage1D },
+ { 11500, _gloffset_TexSubImage2D },
/* from GL_EXT_texture3D */
- { 1871, _gloffset_TexImage3D },
- { 24385, _gloffset_TexSubImage3D },
+ { 1892, _gloffset_TexImage3D },
+ { 24457, _gloffset_TexSubImage3D },
/* from GL_EXT_texture_object */
- { 3558, _gloffset_PrioritizeTextures },
- { 8174, _gloffset_AreTexturesResident },
- { 14402, _gloffset_GenTextures },
- { 16759, _gloffset_DeleteTextures },
- { 20988, _gloffset_IsTexture },
- { 31569, _gloffset_BindTexture },
+ { 3579, _gloffset_PrioritizeTextures },
+ { 8246, _gloffset_AreTexturesResident },
+ { 14474, _gloffset_GenTextures },
+ { 16831, _gloffset_DeleteTextures },
+ { 21060, _gloffset_IsTexture },
+ { 31725, _gloffset_BindTexture },
/* from GL_EXT_vertex_array */
- { 25865, _gloffset_ArrayElement },
- { 32724, _gloffset_GetPointerv },
- { 34309, _gloffset_DrawArrays },
+ { 25937, _gloffset_ArrayElement },
+ { 32880, _gloffset_GetPointerv },
+ { 34465, _gloffset_DrawArrays },
/* from GL_SGI_color_table */
- { 8292, _gloffset_ColorTableParameteriv },
- { 9014, _gloffset_ColorTable },
- { 16228, _gloffset_GetColorTable },
- { 16338, _gloffset_CopyColorTable },
- { 20849, _gloffset_ColorTableParameterfv },
- { 24616, _gloffset_GetColorTableParameterfv },
- { 26830, _gloffset_GetColorTableParameteriv },
+ { 8364, _gloffset_ColorTableParameteriv },
+ { 9086, _gloffset_ColorTable },
+ { 16300, _gloffset_GetColorTable },
+ { 16410, _gloffset_CopyColorTable },
+ { 20921, _gloffset_ColorTableParameterfv },
+ { 24688, _gloffset_GetColorTableParameterfv },
+ { 26902, _gloffset_GetColorTableParameteriv },
/* from GL_VERSION_1_3 */
{ 445, _gloffset_MultiTexCoord3sARB },
{ 677, _gloffset_ActiveTextureARB },
- { 4613, _gloffset_MultiTexCoord1fvARB },
- { 6791, _gloffset_MultiTexCoord3dARB },
- { 6836, _gloffset_MultiTexCoord2iARB },
- { 6960, _gloffset_MultiTexCoord2svARB },
- { 8970, _gloffset_MultiTexCoord2fARB },
- { 11133, _gloffset_MultiTexCoord3fvARB },
- { 11735, _gloffset_MultiTexCoord4sARB },
- { 12416, _gloffset_MultiTexCoord2dvARB },
- { 12823, _gloffset_MultiTexCoord1svARB },
- { 13188, _gloffset_MultiTexCoord3svARB },
- { 13249, _gloffset_MultiTexCoord4iARB },
- { 14106, _gloffset_MultiTexCoord3iARB },
- { 15052, _gloffset_MultiTexCoord1dARB },
- { 15284, _gloffset_MultiTexCoord3dvARB },
- { 16600, _gloffset_MultiTexCoord3ivARB },
- { 16645, _gloffset_MultiTexCoord2sARB },
- { 18221, _gloffset_MultiTexCoord4ivARB },
- { 20489, _gloffset_ClientActiveTextureARB },
- { 22894, _gloffset_MultiTexCoord2dARB },
- { 23331, _gloffset_MultiTexCoord4dvARB },
- { 23733, _gloffset_MultiTexCoord4fvARB },
- { 24757, _gloffset_MultiTexCoord3fARB },
- { 27424, _gloffset_MultiTexCoord4dARB },
- { 27690, _gloffset_MultiTexCoord1sARB },
- { 27894, _gloffset_MultiTexCoord1dvARB },
- { 28870, _gloffset_MultiTexCoord1ivARB },
- { 28963, _gloffset_MultiTexCoord2ivARB },
- { 29302, _gloffset_MultiTexCoord1iARB },
- { 30686, _gloffset_MultiTexCoord4svARB },
- { 31326, _gloffset_MultiTexCoord1fARB },
- { 31631, _gloffset_MultiTexCoord4fARB },
- { 34143, _gloffset_MultiTexCoord2fvARB },
+ { 4634, _gloffset_MultiTexCoord1fvARB },
+ { 6863, _gloffset_MultiTexCoord3dARB },
+ { 6908, _gloffset_MultiTexCoord2iARB },
+ { 7032, _gloffset_MultiTexCoord2svARB },
+ { 9042, _gloffset_MultiTexCoord2fARB },
+ { 11205, _gloffset_MultiTexCoord3fvARB },
+ { 11807, _gloffset_MultiTexCoord4sARB },
+ { 12488, _gloffset_MultiTexCoord2dvARB },
+ { 12895, _gloffset_MultiTexCoord1svARB },
+ { 13260, _gloffset_MultiTexCoord3svARB },
+ { 13321, _gloffset_MultiTexCoord4iARB },
+ { 14178, _gloffset_MultiTexCoord3iARB },
+ { 15124, _gloffset_MultiTexCoord1dARB },
+ { 15356, _gloffset_MultiTexCoord3dvARB },
+ { 16672, _gloffset_MultiTexCoord3ivARB },
+ { 16717, _gloffset_MultiTexCoord2sARB },
+ { 18293, _gloffset_MultiTexCoord4ivARB },
+ { 20561, _gloffset_ClientActiveTextureARB },
+ { 22966, _gloffset_MultiTexCoord2dARB },
+ { 23403, _gloffset_MultiTexCoord4dvARB },
+ { 23805, _gloffset_MultiTexCoord4fvARB },
+ { 24829, _gloffset_MultiTexCoord3fARB },
+ { 27496, _gloffset_MultiTexCoord4dARB },
+ { 27762, _gloffset_MultiTexCoord1sARB },
+ { 27966, _gloffset_MultiTexCoord1dvARB },
+ { 28942, _gloffset_MultiTexCoord1ivARB },
+ { 29035, _gloffset_MultiTexCoord2ivARB },
+ { 29374, _gloffset_MultiTexCoord1iARB },
+ { 30842, _gloffset_MultiTexCoord4svARB },
+ { 31482, _gloffset_MultiTexCoord1fARB },
+ { 31787, _gloffset_MultiTexCoord4fARB },
+ { 34299, _gloffset_MultiTexCoord2fvARB },
{ -1, -1 }
};
diff --git a/mesalib/src/mesa/main/renderbuffer.c b/mesalib/src/mesa/main/renderbuffer.c
index 70011e6b2..33bec42d9 100644
--- a/mesalib/src/mesa/main/renderbuffer.c
+++ b/mesalib/src/mesa/main/renderbuffer.c
@@ -1716,6 +1716,33 @@ _mesa_soft_renderbuffer_storage(struct gl_context *ctx, struct gl_renderbuffer *
}
+void
+_mesa_map_soft_renderbuffer(struct gl_context *ctx,
+ struct gl_renderbuffer *rb,
+ GLuint x, GLuint y, GLuint w, GLuint h,
+ GLbitfield mode,
+ GLubyte **out_map,
+ GLint *out_stride)
+{
+ GLubyte *map = rb->Data;
+ int cpp = _mesa_get_format_bytes(rb->Format);
+ int stride = rb->RowStride * cpp;
+
+ ASSERT(rb->Data);
+
+ map += y * stride;
+ map += x * cpp;
+
+ *out_map = map;
+ *out_stride = stride;
+}
+
+void
+_mesa_unmap_soft_renderbuffer(struct gl_context *ctx,
+ struct gl_renderbuffer *rb)
+{
+}
+
/**********************************************************************/
/**********************************************************************/
@@ -1984,7 +2011,7 @@ _mesa_init_renderbuffer(struct gl_renderbuffer *rb, GLuint name)
rb->Width = 0;
rb->Height = 0;
- rb->InternalFormat = GL_NONE;
+ rb->InternalFormat = GL_RGBA;
rb->Format = MESA_FORMAT_NONE;
rb->DataType = GL_NONE;
diff --git a/mesalib/src/mesa/main/renderbuffer.h b/mesalib/src/mesa/main/renderbuffer.h
index de471cd6b..cb0d712eb 100644
--- a/mesalib/src/mesa/main/renderbuffer.h
+++ b/mesalib/src/mesa/main/renderbuffer.h
@@ -46,6 +46,18 @@ _mesa_delete_renderbuffer(struct gl_renderbuffer *rb);
extern struct gl_renderbuffer *
_mesa_new_soft_renderbuffer(struct gl_context *ctx, GLuint name);
+void
+_mesa_map_soft_renderbuffer(struct gl_context *ctx,
+ struct gl_renderbuffer *rb,
+ GLuint x, GLuint y, GLuint w, GLuint h,
+ GLbitfield mode,
+ GLubyte **out_map,
+ GLint *out_stride);
+
+void
+_mesa_unmap_soft_renderbuffer(struct gl_context *ctx,
+ struct gl_renderbuffer *rb);
+
extern void
_mesa_set_renderbuffer_accessors(struct gl_renderbuffer *rb);
diff --git a/mesalib/src/mesa/main/shaderapi.c b/mesalib/src/mesa/main/shaderapi.c
index 6868dfab0..56d955c53 100644
--- a/mesalib/src/mesa/main/shaderapi.c
+++ b/mesalib/src/mesa/main/shaderapi.c
@@ -152,6 +152,7 @@ _mesa_sizeof_glsl_type(GLenum type)
case GL_SAMPLER_1D_ARRAY_SHADOW_EXT:
case GL_SAMPLER_2D_ARRAY_SHADOW_EXT:
case GL_SAMPLER_CUBE_SHADOW_EXT:
+ case GL_SAMPLER_EXTERNAL_OES:
return 1;
case GL_FLOAT_VEC2:
case GL_INT_VEC2:
@@ -918,6 +919,7 @@ validate_samplers(const struct gl_program *prog, char *errMsg)
"TEXTURE_BUFFER",
"TEXTURE_2D_ARRAY",
"TEXTURE_1D_ARRAY",
+ "TEXTURE_EXTERNAL",
"TEXTURE_CUBE",
"TEXTURE_3D",
"TEXTURE_RECT",
diff --git a/mesalib/src/mesa/main/shared.c b/mesalib/src/mesa/main/shared.c
index 8b7159db0..caa6132d4 100644
--- a/mesalib/src/mesa/main/shared.c
+++ b/mesalib/src/mesa/main/shared.c
@@ -108,6 +108,7 @@ _mesa_alloc_shared_state(struct gl_context *ctx)
GL_TEXTURE_BUFFER,
GL_TEXTURE_2D_ARRAY_EXT,
GL_TEXTURE_1D_ARRAY_EXT,
+ GL_TEXTURE_EXTERNAL_OES,
GL_TEXTURE_CUBE_MAP,
GL_TEXTURE_3D,
GL_TEXTURE_RECTANGLE_NV,
diff --git a/mesalib/src/mesa/main/texgetimage.c b/mesalib/src/mesa/main/texgetimage.c
index 06e032396..31d49f2d8 100644
--- a/mesalib/src/mesa/main/texgetimage.c
+++ b/mesalib/src/mesa/main/texgetimage.c
@@ -50,7 +50,7 @@
* Can the given type represent negative values?
*/
static inline GLboolean
-type_with_negative_values(GLenum type)
+type_needs_clamping(GLenum type)
{
switch (type) {
case GL_BYTE:
@@ -58,9 +58,11 @@ type_with_negative_values(GLenum type)
case GL_INT:
case GL_FLOAT:
case GL_HALF_FLOAT_ARB:
- return GL_TRUE;
- default:
+ case GL_UNSIGNED_INT_10F_11F_11F_REV:
+ case GL_UNSIGNED_INT_5_9_9_9_REV:
return GL_FALSE;
+ default:
+ return GL_TRUE;
}
}
@@ -219,7 +221,7 @@ get_tex_rgba(struct gl_context *ctx, GLuint dimensions,
/* In general, clamping does not apply to glGetTexImage, except when
* the returned type of the image can't hold negative values.
*/
- if (!type_with_negative_values(type)) {
+ if (type_needs_clamping(type)) {
/* the returned image type can't have negative values */
if (dataType == GL_FLOAT ||
dataType == GL_SIGNED_NORMALIZED ||
@@ -849,6 +851,7 @@ getcompressedteximage_error_check(struct gl_context *ctx, GLenum target,
_mesa_error(ctx, GL_INVALID_OPERATION,
"glGetnCompressedTexImageARB(out of bounds access:"
" bufSize (%d) is too small)", clientMemSize);
+ return GL_TRUE;
}
} else {
/* do bounds checking on PBO write */
diff --git a/mesalib/src/mesa/main/teximage.c b/mesalib/src/mesa/main/teximage.c
index acf7187fd..a84d6873d 100644
--- a/mesalib/src/mesa/main/teximage.c
+++ b/mesalib/src/mesa/main/teximage.c
@@ -549,7 +549,8 @@ _mesa_set_tex_image(struct gl_texture_object *tObj,
ASSERT(tObj);
ASSERT(texImage);
- ASSERT(target != GL_TEXTURE_RECTANGLE_NV || level == 0);
+ if (target == GL_TEXTURE_RECTANGLE_NV || target == GL_TEXTURE_EXTERNAL_OES)
+ assert(level == 0);
tObj->Image[face][level] = texImage;
@@ -607,10 +608,11 @@ _mesa_delete_texture_image(struct gl_context *ctx,
GLboolean
_mesa_is_proxy_texture(GLenum target)
{
- /* NUM_TEXTURE_TARGETS should match number of terms below,
- * except there's no proxy for GL_TEXTURE_BUFFER.
+ /*
+ * NUM_TEXTURE_TARGETS should match number of terms below, except there's no
+ * proxy for GL_TEXTURE_BUFFER and GL_TEXTURE_EXTERNAL_OES.
*/
- assert(NUM_TEXTURE_TARGETS == 8);
+ assert(NUM_TEXTURE_TARGETS == 7 + 2);
return (target == GL_PROXY_TEXTURE_1D ||
target == GL_PROXY_TEXTURE_2D ||
@@ -723,6 +725,9 @@ _mesa_select_tex_object(struct gl_context *ctx,
case GL_TEXTURE_BUFFER:
return ctx->Extensions.ARB_texture_buffer_object
? texUnit->CurrentTex[TEXTURE_BUFFER_INDEX] : NULL;
+ case GL_TEXTURE_EXTERNAL_OES:
+ return ctx->Extensions.OES_EGL_image_external
+ ? texUnit->CurrentTex[TEXTURE_EXTERNAL_INDEX] : NULL;
default:
_mesa_problem(NULL, "bad target in _mesa_select_tex_object()");
return NULL;
@@ -911,6 +916,7 @@ _mesa_max_texture_levels(struct gl_context *ctx, GLenum target)
ctx->Extensions.EXT_texture_array)
? ctx->Const.MaxTextureLevels : 0;
case GL_TEXTURE_BUFFER:
+ case GL_TEXTURE_EXTERNAL_OES:
/* fall-through */
default:
return 0; /* bad target */
@@ -942,6 +948,7 @@ _mesa_get_texture_dimensions(GLenum target)
case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z:
case GL_TEXTURE_1D_ARRAY:
case GL_PROXY_TEXTURE_1D_ARRAY:
+ case GL_TEXTURE_EXTERNAL_OES:
return 2;
case GL_TEXTURE_3D:
case GL_PROXY_TEXTURE_3D:
@@ -1433,6 +1440,23 @@ legal_texsubimage_target(struct gl_context *ctx, GLuint dims, GLenum target)
/**
+ * Helper function to determine if a texture object is mutable (in terms
+ * of GL_ARB_texture_storage).
+ */
+static GLboolean
+mutable_tex_object(struct gl_context *ctx, GLenum target)
+{
+ if (ctx->Extensions.ARB_texture_storage) {
+ struct gl_texture_object *texObj =
+ _mesa_get_current_tex_object(ctx, target);
+ return !texObj->Immutable;
+ }
+ return GL_TRUE;
+}
+
+
+
+/**
* Test the glTexImage[123]D() parameters for errors.
*
* \param ctx GL context.
@@ -1643,6 +1667,12 @@ texture_error_check( struct gl_context *ctx,
return GL_TRUE;
}
+ if (!mutable_tex_object(ctx, target)) {
+ _mesa_error(ctx, GL_INVALID_OPERATION,
+ "glTexImage%dD(immutable texture)", dimensions);
+ return GL_TRUE;
+ }
+
/* if we get here, the parameters are OK */
return GL_FALSE;
}
@@ -1906,6 +1936,12 @@ copytexture_error_check( struct gl_context *ctx, GLuint dimensions,
}
}
+ if (!mutable_tex_object(ctx, target)) {
+ _mesa_error(ctx, GL_INVALID_OPERATION,
+ "glCopyTexImage%dD(immutable texture)", dimensions);
+ return GL_TRUE;
+ }
+
/* if we get here, the parameters are OK */
return GL_FALSE;
}
@@ -2504,13 +2540,10 @@ _mesa_EGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image)
GET_CURRENT_CONTEXT(ctx);
ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx);
- if (!ctx->Extensions.OES_EGL_image) {
- _mesa_error(ctx, GL_INVALID_OPERATION,
- "glEGLImageTargetTexture2DOES(unsupported)");
- return;
- }
-
- if (target != GL_TEXTURE_2D) {
+ if ((target == GL_TEXTURE_2D &&
+ !ctx->Extensions.OES_EGL_image) ||
+ (target == GL_TEXTURE_EXTERNAL_OES &&
+ !ctx->Extensions.OES_EGL_image_external)) {
_mesa_error(ctx, GL_INVALID_ENUM,
"glEGLImageTargetTexture2D(target=%d)", target);
return;
@@ -3107,6 +3140,11 @@ compressed_texture_error_check(struct gl_context *ctx, GLint dimensions,
return GL_INVALID_VALUE;
}
+ if (!mutable_tex_object(ctx, target)) {
+ *reason = "immutable texture";
+ return GL_INVALID_OPERATION;
+ }
+
return GL_NO_ERROR;
}
diff --git a/mesalib/src/mesa/main/texobj.c b/mesalib/src/mesa/main/texobj.c
index 4d9942ba8..e2f0dc8b6 100644
--- a/mesalib/src/mesa/main/texobj.c
+++ b/mesalib/src/mesa/main/texobj.c
@@ -107,6 +107,7 @@ _mesa_initialize_texture_object( struct gl_texture_object *obj,
target == GL_TEXTURE_RECTANGLE_NV ||
target == GL_TEXTURE_1D_ARRAY_EXT ||
target == GL_TEXTURE_2D_ARRAY_EXT ||
+ target == GL_TEXTURE_EXTERNAL_OES ||
target == GL_TEXTURE_BUFFER);
memset(obj, 0, sizeof(*obj));
@@ -119,8 +120,12 @@ _mesa_initialize_texture_object( struct gl_texture_object *obj,
obj->BaseLevel = 0;
obj->MaxLevel = 1000;
+ /* must be one; no support for (YUV) planes in separate buffers */
+ obj->RequiredTextureImageUnits = 1;
+
/* sampler state */
- if (target == GL_TEXTURE_RECTANGLE_NV) {
+ if (target == GL_TEXTURE_RECTANGLE_NV ||
+ target == GL_TEXTURE_EXTERNAL_OES) {
obj->Sampler.WrapS = GL_CLAMP_TO_EDGE;
obj->Sampler.WrapT = GL_CLAMP_TO_EDGE;
obj->Sampler.WrapR = GL_CLAMP_TO_EDGE;
@@ -161,7 +166,8 @@ finish_texture_init(struct gl_context *ctx, GLenum target,
{
assert(obj->Target == 0);
- if (target == GL_TEXTURE_RECTANGLE_NV) {
+ if (target == GL_TEXTURE_RECTANGLE_NV ||
+ target == GL_TEXTURE_EXTERNAL_OES) {
/* have to init wrap and filter state here - kind of klunky */
obj->Sampler.WrapS = GL_CLAMP_TO_EDGE;
obj->Sampler.WrapT = GL_CLAMP_TO_EDGE;
@@ -259,6 +265,8 @@ _mesa_copy_texture_object( struct gl_texture_object *dest,
dest->_Complete = src->_Complete;
COPY_4V(dest->Swizzle, src->Swizzle);
dest->_Swizzle = src->_Swizzle;
+
+ dest->RequiredTextureImageUnits = src->RequiredTextureImageUnits;
}
@@ -306,6 +314,7 @@ valid_texture_object(const struct gl_texture_object *tex)
case GL_TEXTURE_1D_ARRAY_EXT:
case GL_TEXTURE_2D_ARRAY_EXT:
case GL_TEXTURE_BUFFER:
+ case GL_TEXTURE_EXTERNAL_OES:
return GL_TRUE;
case 0x99:
_mesa_problem(NULL, "invalid reference to a deleted texture object");
@@ -406,6 +415,10 @@ incomplete(struct gl_texture_object *t, const char *fmt, ...)
* The gl_texture_object::Complete flag will be set to GL_TRUE or GL_FALSE
* accordingly.
*
+ * XXX TODO: For immutable textures (GL_ARB_texture_storage) we can skip
+ * many of the checks below since we know the mipmap images will have
+ * consistent sizes.
+ *
* \param ctx GL context.
* \param t texture object.
*
@@ -466,7 +479,8 @@ _mesa_test_texobj_completeness( const struct gl_context *ctx,
t->Image[0][baseLevel]->HeightLog2);
maxLevels = ctx->Const.MaxCubeTextureLevels;
}
- else if (t->Target == GL_TEXTURE_RECTANGLE_NV) {
+ else if (t->Target == GL_TEXTURE_RECTANGLE_NV ||
+ t->Target == GL_TEXTURE_EXTERNAL_OES) {
maxLog2 = 0; /* not applicable */
maxLevels = 1; /* no mipmapping */
}
@@ -1001,6 +1015,8 @@ target_enum_to_index(GLenum target)
return TEXTURE_2D_ARRAY_INDEX;
case GL_TEXTURE_BUFFER_ARB:
return TEXTURE_BUFFER_INDEX;
+ case GL_TEXTURE_EXTERNAL_OES:
+ return TEXTURE_EXTERNAL_INDEX;
default:
return -1;
}
diff --git a/mesalib/src/mesa/main/texparam.c b/mesalib/src/mesa/main/texparam.c
index dc5ee33a2..17eac5fc9 100644
--- a/mesalib/src/mesa/main/texparam.c
+++ b/mesalib/src/mesa/main/texparam.c
@@ -55,22 +55,38 @@ validate_texture_wrap_mode(struct gl_context * ctx, GLenum target, GLenum wrap)
{
const struct gl_extensions * const e = & ctx->Extensions;
- if (wrap == GL_CLAMP || wrap == GL_CLAMP_TO_EDGE ||
- (wrap == GL_CLAMP_TO_BORDER && e->ARB_texture_border_clamp)) {
- /* any texture target */
- return GL_TRUE;
+ if (target == GL_TEXTURE_RECTANGLE_NV) {
+ if (wrap == GL_CLAMP || wrap == GL_CLAMP_TO_EDGE ||
+ (wrap == GL_CLAMP_TO_BORDER && e->ARB_texture_border_clamp))
+ return GL_TRUE;
}
- else if (target != GL_TEXTURE_RECTANGLE_NV &&
- (wrap == GL_REPEAT ||
- wrap == GL_MIRRORED_REPEAT ||
- (wrap == GL_MIRROR_CLAMP_EXT &&
- (e->ATI_texture_mirror_once || e->EXT_texture_mirror_clamp)) ||
- (wrap == GL_MIRROR_CLAMP_TO_EDGE_EXT &&
- (e->ATI_texture_mirror_once || e->EXT_texture_mirror_clamp)) ||
- (wrap == GL_MIRROR_CLAMP_TO_BORDER_EXT &&
- (e->EXT_texture_mirror_clamp)))) {
- /* non-rectangle texture */
- return GL_TRUE;
+ else if (target == GL_TEXTURE_EXTERNAL_OES) {
+ if (wrap == GL_CLAMP_TO_EDGE)
+ return GL_TRUE;
+ }
+ else {
+ switch (wrap) {
+ case GL_CLAMP:
+ case GL_REPEAT:
+ case GL_CLAMP_TO_EDGE:
+ case GL_MIRRORED_REPEAT:
+ return GL_TRUE;
+ case GL_CLAMP_TO_BORDER:
+ if (e->ARB_texture_border_clamp)
+ return GL_TRUE;
+ break;
+ case GL_MIRROR_CLAMP_EXT:
+ case GL_MIRROR_CLAMP_TO_EDGE_EXT:
+ if (e->ATI_texture_mirror_once || e->EXT_texture_mirror_clamp)
+ return GL_TRUE;
+ break;
+ case GL_MIRROR_CLAMP_TO_BORDER_EXT:
+ if (e->EXT_texture_mirror_clamp)
+ return GL_TRUE;
+ break;
+ default:
+ break;
+ }
}
_mesa_error( ctx, GL_INVALID_ENUM, "glTexParameter(param=0x%x)", wrap );
@@ -127,6 +143,11 @@ get_texobj(struct gl_context *ctx, GLenum target, GLboolean get)
return texUnit->CurrentTex[TEXTURE_2D_ARRAY_INDEX];
}
break;
+ case GL_TEXTURE_EXTERNAL_OES:
+ if (ctx->Extensions.OES_EGL_image_external) {
+ return texUnit->CurrentTex[TEXTURE_EXTERNAL_INDEX];
+ }
+ break;
default:
;
}
@@ -226,7 +247,8 @@ set_tex_parameteri(struct gl_context *ctx,
case GL_LINEAR_MIPMAP_NEAREST:
case GL_NEAREST_MIPMAP_LINEAR:
case GL_LINEAR_MIPMAP_LINEAR:
- if (texObj->Target != GL_TEXTURE_RECTANGLE_NV) {
+ if (texObj->Target != GL_TEXTURE_RECTANGLE_NV &&
+ texObj->Target != GL_TEXTURE_EXTERNAL_OES) {
incomplete(ctx, texObj);
texObj->Sampler.MinFilter = params[0];
return GL_TRUE;
@@ -307,6 +329,8 @@ set_tex_parameteri(struct gl_context *ctx,
return GL_TRUE;
case GL_GENERATE_MIPMAP_SGIS:
+ if (params[0] && texObj->Target == GL_TEXTURE_EXTERNAL_OES)
+ goto invalid_param;
if (texObj->GenerateMipmap != params[0]) {
/* no flush() */
texObj->GenerateMipmap = params[0] ? GL_TRUE : GL_FALSE;
@@ -394,12 +418,11 @@ set_tex_parameteri(struct gl_context *ctx,
return GL_FALSE;
}
ASSERT(comp < 4);
- if (swz >= 0) {
- flush(ctx);
- texObj->Swizzle[comp] = params[0];
- set_swizzle_component(&texObj->_Swizzle, comp, swz);
- return GL_TRUE;
- }
+
+ flush(ctx);
+ texObj->Swizzle[comp] = params[0];
+ set_swizzle_component(&texObj->_Swizzle, comp, swz);
+ return GL_TRUE;
}
goto invalid_pname;
@@ -597,6 +620,17 @@ _mesa_TexParameterf(GLenum target, GLenum pname, GLfloat param)
need_update = set_tex_parameteri(ctx, texObj, pname, p);
}
break;
+ case GL_TEXTURE_SWIZZLE_R_EXT:
+ case GL_TEXTURE_SWIZZLE_G_EXT:
+ case GL_TEXTURE_SWIZZLE_B_EXT:
+ case GL_TEXTURE_SWIZZLE_A_EXT:
+ {
+ GLint p[4];
+ p[0] = (GLint) param;
+ p[1] = p[2] = p[3] = 0;
+ need_update = set_tex_parameteri(ctx, texObj, pname, p);
+ }
+ break;
default:
{
/* this will generate an error if pname is illegal */
@@ -662,6 +696,22 @@ _mesa_TexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
break;
#endif
+ case GL_TEXTURE_SWIZZLE_R_EXT:
+ case GL_TEXTURE_SWIZZLE_G_EXT:
+ case GL_TEXTURE_SWIZZLE_B_EXT:
+ case GL_TEXTURE_SWIZZLE_A_EXT:
+ case GL_TEXTURE_SWIZZLE_RGBA_EXT:
+ {
+ GLint p[4] = {0, 0, 0, 0};
+ p[0] = (GLint) params[0];
+ if (pname == GL_TEXTURE_SWIZZLE_RGBA_EXT) {
+ p[1] = (GLint) params[1];
+ p[2] = (GLint) params[2];
+ p[3] = (GLint) params[3];
+ }
+ need_update = set_tex_parameteri(ctx, texObj, pname, p);
+ }
+ break;
default:
/* this will generate an error if pname is illegal */
need_update = set_tex_parameterf(ctx, texObj, pname, params);
@@ -1204,6 +1254,12 @@ _mesa_GetTexParameterfv( GLenum target, GLenum pname, GLfloat *params )
*params = (GLfloat) obj->Sampler.CubeMapSeamless;
break;
+ case GL_TEXTURE_IMMUTABLE_FORMAT:
+ if (!ctx->Extensions.ARB_texture_storage)
+ goto invalid_pname;
+ *params = (GLfloat) obj->Immutable;
+ break;
+
default:
goto invalid_pname;
}
@@ -1338,6 +1394,18 @@ _mesa_GetTexParameteriv( GLenum target, GLenum pname, GLint *params )
*params = (GLint) obj->Sampler.CubeMapSeamless;
break;
+ case GL_TEXTURE_IMMUTABLE_FORMAT:
+ if (!ctx->Extensions.ARB_texture_storage)
+ goto invalid_pname;
+ *params = (GLint) obj->Immutable;
+ break;
+
+ case GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES:
+ if (!ctx->Extensions.OES_EGL_image_external)
+ goto invalid_pname;
+ *params = obj->RequiredTextureImageUnits;
+ break;
+
default:
goto invalid_pname;
}
diff --git a/mesalib/src/mesa/main/texstate.c b/mesalib/src/mesa/main/texstate.c
index 9f14d8a0d..7cd285803 100644
--- a/mesalib/src/mesa/main/texstate.c
+++ b/mesalib/src/mesa/main/texstate.c
@@ -690,7 +690,8 @@ alloc_proxy_textures( struct gl_context *ctx )
GL_TEXTURE_RECTANGLE_NV,
GL_TEXTURE_1D_ARRAY_EXT,
GL_TEXTURE_2D_ARRAY_EXT,
- GL_TEXTURE_BUFFER
+ GL_TEXTURE_BUFFER,
+ GL_TEXTURE_EXTERNAL_OES
};
GLint tgt;
diff --git a/mesalib/src/mesa/main/texstorage.c b/mesalib/src/mesa/main/texstorage.c
new file mode 100644
index 000000000..241a940cc
--- /dev/null
+++ b/mesalib/src/mesa/main/texstorage.c
@@ -0,0 +1,402 @@
+/*
+ * Mesa 3-D graphics library
+ *
+ * Copyright (C) 2011 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.
+ */
+
+
+/**
+ * \file texstorage.c
+ * GL_ARB_texture_storage functions
+ */
+
+
+
+#include "glheader.h"
+#include "context.h"
+#include "enums.h"
+#include "imports.h"
+#include "macros.h"
+#include "mfeatures.h"
+#include "teximage.h"
+#include "texstorage.h"
+#include "mtypes.h"
+
+
+
+/**
+ * Check if the given texture target is a legal texture object target
+ * for a glTexStorage() command.
+ * This is a bit different than legal_teximage_target() when it comes
+ * to cube maps.
+ */
+static GLboolean
+legal_texobj_target(struct gl_context *ctx, GLuint dims, GLenum target)
+{
+ switch (dims) {
+ case 1:
+ switch (target) {
+ case GL_TEXTURE_1D:
+ case GL_PROXY_TEXTURE_1D:
+ return GL_TRUE;
+ default:
+ return GL_FALSE;
+ }
+ case 2:
+ switch (target) {
+ case GL_TEXTURE_2D:
+ case GL_PROXY_TEXTURE_2D:
+ return GL_TRUE;
+ case GL_TEXTURE_CUBE_MAP:
+ case GL_PROXY_TEXTURE_CUBE_MAP:
+ return ctx->Extensions.ARB_texture_cube_map;
+ case GL_TEXTURE_RECTANGLE:
+ case GL_PROXY_TEXTURE_RECTANGLE:
+ return ctx->Extensions.NV_texture_rectangle;
+ case GL_TEXTURE_1D_ARRAY:
+ case GL_PROXY_TEXTURE_1D_ARRAY:
+ return (ctx->Extensions.MESA_texture_array ||
+ ctx->Extensions.EXT_texture_array);
+ default:
+ return GL_FALSE;
+ }
+ case 3:
+ switch (target) {
+ case GL_TEXTURE_3D:
+ case GL_PROXY_TEXTURE_3D:
+ return GL_TRUE;
+ case GL_TEXTURE_2D_ARRAY:
+ case GL_PROXY_TEXTURE_2D_ARRAY:
+ return (ctx->Extensions.MESA_texture_array ||
+ ctx->Extensions.EXT_texture_array);
+ default:
+ return GL_FALSE;
+ }
+ default:
+ _mesa_problem(ctx, "invalid dims=%u in legal_texobj_target()", dims);
+ return GL_FALSE;
+ }
+}
+
+
+/**
+ * Compute the size of the next mipmap level.
+ */
+static void
+next_mipmap_level_size(GLenum target,
+ GLint *width, GLint *height, GLint *depth)
+{
+ if (*width > 1) {
+ *width /= 2;
+ }
+
+ if ((*height > 1) && (target != GL_TEXTURE_1D_ARRAY)) {
+ *height /= 2;
+ }
+
+ if ((*depth > 1) && (target != GL_TEXTURE_2D_ARRAY)) {
+ *depth /= 2;
+ }
+}
+
+
+/**
+ * Do actual memory allocation for glTexStorage1/2/3D().
+ */
+static void
+setup_texstorage(struct gl_context *ctx,
+ struct gl_texture_object *texObj,
+ GLuint dims,
+ GLsizei levels, GLenum internalFormat,
+ GLsizei width, GLsizei height, GLsizei depth)
+{
+ const GLenum target = texObj->Target;
+ const GLuint numFaces = (target == GL_TEXTURE_CUBE_MAP) ? 6 : 1;
+ gl_format texFormat;
+ GLint level, levelWidth = width, levelHeight = height, levelDepth = depth;
+ GLuint face;
+
+ assert(levels > 0);
+ assert(width > 0);
+ assert(height > 0);
+ assert(depth > 0);
+
+ texFormat = _mesa_choose_texture_format(ctx, texObj, target, 0,
+ internalFormat, GL_NONE, GL_NONE);
+
+ /* Set up all the texture object's gl_texture_images */
+ for (level = 0; level < levels; level++) {
+ for (face = 0; face < numFaces; face++) {
+ const GLenum faceTarget =
+ (target == GL_TEXTURE_CUBE_MAP)
+ ? GL_TEXTURE_CUBE_MAP_POSITIVE_X + face : target;
+ struct gl_texture_image *texImage =
+ _mesa_get_tex_image(ctx, texObj, faceTarget, level);
+
+ if (!texImage) {
+ _mesa_error(ctx, GL_OUT_OF_MEMORY, "glTexImage%uD", dims);
+ return;
+ }
+
+ _mesa_init_teximage_fields(ctx, target, texImage,
+ levelWidth, levelHeight, levelDepth,
+ 0, internalFormat, texFormat);
+ }
+
+ next_mipmap_level_size(target, &levelWidth, &levelHeight, &levelDepth);
+ }
+
+ assert(levelWidth > 0);
+ assert(levelHeight > 0);
+ assert(levelDepth > 0);
+
+ if (!_mesa_is_proxy_texture(texObj->Target)) {
+ /* Do actual texture memory allocation */
+ if (!ctx->Driver.AllocTextureStorage(ctx, texObj, levels,
+ width, height, depth)) {
+ /* Reset the texture images' info to zeros.
+ * Strictly speaking, we probably don't have to do this since
+ * generating GL_OUT_OF_MEMORY can leave things in an undefined
+ * state but this puts things in a consistent state.
+ */
+ for (level = 0; level < levels; level++) {
+ for (face = 0; face < numFaces; face++) {
+ struct gl_texture_image *texImage = texObj->Image[face][level];
+ if (texImage) {
+ _mesa_init_teximage_fields(ctx, target, texImage,
+ 0, 0, 0, 0,
+ GL_NONE, MESA_FORMAT_NONE);
+ }
+ }
+ }
+
+ _mesa_error(ctx, GL_OUT_OF_MEMORY, "glTexStorage%uD", dims);
+
+ return;
+ }
+ }
+
+ texObj->Immutable = GL_TRUE;
+}
+
+
+/**
+ * Clear all fields of texture object to zeros. Used for proxy texture tests.
+ */
+static void
+clear_image_fields(struct gl_context *ctx,
+ GLuint dims,
+ struct gl_texture_object *texObj)
+{
+ const GLenum target = texObj->Target;
+ const GLuint numFaces = (target == GL_TEXTURE_CUBE_MAP) ? 6 : 1;
+ GLint level;
+ GLuint face;
+
+ for (level = 0; level < Elements(texObj->Image[0]); level++) {
+ for (face = 0; face < numFaces; face++) {
+ const GLenum faceTarget =
+ (target == GL_TEXTURE_CUBE_MAP)
+ ? GL_TEXTURE_CUBE_MAP_POSITIVE_X + face : target;
+ struct gl_texture_image *texImage =
+ _mesa_get_tex_image(ctx, texObj, faceTarget, level);
+
+ if (!texImage) {
+ _mesa_error(ctx, GL_OUT_OF_MEMORY, "glTexStorage%uD", dims);
+ return;
+ }
+
+ _mesa_init_teximage_fields(ctx, target, texImage,
+ 0, 0, 0, 0, GL_NONE, MESA_FORMAT_NONE);
+ }
+ }
+}
+
+
+/**
+ * Do error checking for calls to glTexStorage1/2/3D().
+ * If an error is found, record it with _mesa_error(), unless the target
+ * is a proxy texture.
+ * \return GL_TRUE if any error, GL_FALSE otherwise.
+ */
+static GLboolean
+tex_storage_error_check(struct gl_context *ctx, GLuint dims, GLenum target,
+ GLsizei levels, GLenum internalformat,
+ GLsizei width, GLsizei height, GLsizei depth)
+{
+ const GLboolean isProxy = _mesa_is_proxy_texture(target);
+ struct gl_texture_object *texObj;
+ GLuint maxDim;
+
+ /* size check */
+ if (width < 1 || height < 1 || depth < 1) {
+ if (!isProxy) {
+ _mesa_error(ctx, GL_INVALID_VALUE,
+ "glTexStorage%uD(width, height or depth < 1)", dims);
+ }
+ return GL_TRUE;
+ }
+
+ /* levels check */
+ if (levels < 1 || height < 1 || depth < 1) {
+ if (!isProxy) {
+ _mesa_error(ctx, GL_INVALID_VALUE, "glTexStorage%uD(levels < 1)",
+ dims);
+ }
+ return GL_TRUE;
+ }
+
+ /* target check */
+ if (!legal_texobj_target(ctx, dims, target)) {
+ _mesa_error(ctx, GL_INVALID_ENUM,
+ "glTexStorage%uD(illegal target=%s)",
+ dims, _mesa_lookup_enum_by_nr(target));
+ return GL_TRUE;
+ }
+
+ /* check levels against maximum */
+ if (levels > _mesa_max_texture_levels(ctx, target)) {
+ if (!isProxy) {
+ _mesa_error(ctx, GL_INVALID_OPERATION,
+ "glTexStorage%uD(levels too large)", dims);
+ }
+ return GL_TRUE;
+ }
+
+ /* check levels against width/height/depth */
+ maxDim = MAX3(width, height, depth);
+ if (levels > _mesa_logbase2(maxDim) + 1) {
+ if (!isProxy) {
+ _mesa_error(ctx, GL_INVALID_OPERATION,
+ "glTexStorage%uD(too many levels for max texture dimension)",
+ dims);
+ }
+ return GL_TRUE;
+ }
+
+ /* non-default texture object check */
+ texObj = _mesa_get_current_tex_object(ctx, target);
+ if (!texObj || (texObj->Name == 0 && !isProxy)) {
+ if (!isProxy) {
+ _mesa_error(ctx, GL_INVALID_OPERATION,
+ "glTexStorage%uD(texture object 0)", dims);
+ }
+ return GL_TRUE;
+ }
+
+ /* Check if texObj->Immutable is set */
+ if (texObj->Immutable) {
+ if (!isProxy) {
+ _mesa_error(ctx, GL_INVALID_OPERATION, "glTexStorage%uD(immutable)",
+ dims);
+ }
+ return GL_TRUE;
+ }
+
+ return GL_FALSE;
+}
+
+
+/**
+ * Helper used by _mesa_TexStorage1/2/3D().
+ */
+static void
+texstorage(GLuint dims, GLenum target, GLsizei levels, GLenum internalformat,
+ GLsizei width, GLsizei height, GLsizei depth)
+{
+ struct gl_texture_object *texObj;
+ GLboolean error;
+
+ GET_CURRENT_CONTEXT(ctx);
+
+ texObj = _mesa_get_current_tex_object(ctx, target);
+
+ error = tex_storage_error_check(ctx, dims, target, levels,
+ internalformat, width, height, depth);
+ if (!error) {
+ setup_texstorage(ctx, texObj, dims, levels, internalformat,
+ width, height, depth);
+ }
+ else if (_mesa_is_proxy_texture(target)) {
+ /* clear all image fields for [levels] */
+ clear_image_fields(ctx, dims, texObj);
+ }
+}
+
+
+void GLAPIENTRY
+_mesa_TexStorage1D(GLenum target, GLsizei levels, GLenum internalformat,
+ GLsizei width)
+{
+ texstorage(1, target, levels, internalformat, width, 1, 1);
+}
+
+
+void GLAPIENTRY
+_mesa_TexStorage2D(GLenum target, GLsizei levels, GLenum internalformat,
+ GLsizei width, GLsizei height)
+{
+ texstorage(2, target, levels, internalformat, width, height, 1);
+}
+
+
+void GLAPIENTRY
+_mesa_TexStorage3D(GLenum target, GLsizei levels, GLenum internalformat,
+ GLsizei width, GLsizei height, GLsizei depth)
+{
+ texstorage(3, target, levels, internalformat, width, height, depth);
+}
+
+
+
+/*
+ * Note: we don't support GL_EXT_direct_state_access and the spec says
+ * we don't need the following functions. However, glew checks for the
+ * presence of all six functions and will say that GL_ARB_texture_storage
+ * is not supported if these functions are missing.
+ */
+
+
+void GLAPIENTRY
+_mesa_TextureStorage1DEXT(GLuint texture, GLenum target, GLsizei levels,
+ GLenum internalformat,
+ GLsizei width)
+{
+ /* no-op */
+}
+
+
+void GLAPIENTRY
+_mesa_TextureStorage2DEXT(GLuint texture, GLenum target, GLsizei levels,
+ GLenum internalformat,
+ GLsizei width, GLsizei height)
+{
+ /* no-op */
+}
+
+
+
+void GLAPIENTRY
+_mesa_TextureStorage3DEXT(GLuint texture, GLenum target, GLsizei levels,
+ GLenum internalformat,
+ GLsizei width, GLsizei height, GLsizei depth)
+{
+ /* no-op */
+}
diff --git a/mesalib/src/mesa/main/texstorage.h b/mesalib/src/mesa/main/texstorage.h
new file mode 100644
index 000000000..99382df51
--- /dev/null
+++ b/mesalib/src/mesa/main/texstorage.h
@@ -0,0 +1,61 @@
+/*
+ * Mesa 3-D graphics library
+ *
+ * Copyright (C) 2011 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 TEXSTORAGE_H
+#define TEXSTORAGE_H
+
+
+extern void GLAPIENTRY
+_mesa_TexStorage1D(GLenum target, GLsizei levels, GLenum internalformat,
+ GLsizei width);
+
+
+extern void GLAPIENTRY
+_mesa_TexStorage2D(GLenum target, GLsizei levels, GLenum internalformat,
+ GLsizei width, GLsizei height);
+
+
+extern void GLAPIENTRY
+_mesa_TexStorage3D(GLenum target, GLsizei levels, GLenum internalformat,
+ GLsizei width, GLsizei height, GLsizei depth);
+
+
+
+extern void GLAPIENTRY
+_mesa_TextureStorage1DEXT(GLuint texture, GLenum target, GLsizei levels,
+ GLenum internalformat,
+ GLsizei width);
+
+extern void GLAPIENTRY
+_mesa_TextureStorage2DEXT(GLuint texture, GLenum target, GLsizei levels,
+ GLenum internalformat,
+ GLsizei width, GLsizei height);
+
+extern void GLAPIENTRY
+_mesa_TextureStorage3DEXT(GLuint texture, GLenum target, GLsizei levels,
+ GLenum internalformat,
+ GLsizei width, GLsizei height, GLsizei depth);
+
+
+#endif /* TEXSTORAGE_H */
diff --git a/mesalib/src/mesa/main/uniforms.c b/mesalib/src/mesa/main/uniforms.c
index ccaedf9f1..68e44b272 100644
--- a/mesalib/src/mesa/main/uniforms.c
+++ b/mesalib/src/mesa/main/uniforms.c
@@ -148,6 +148,7 @@ is_sampler_type(GLenum type)
case GL_SAMPLER_2D_MULTISAMPLE_ARRAY:
case GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY:
case GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY:
+ case GL_SAMPLER_EXTERNAL_OES:
return GL_TRUE;
default:
return GL_FALSE;
diff --git a/mesalib/src/mesa/main/varray.c b/mesalib/src/mesa/main/varray.c
index 13b3405e5..f1a57c1f0 100644
--- a/mesalib/src/mesa/main/varray.c
+++ b/mesalib/src/mesa/main/varray.c
@@ -212,6 +212,7 @@ update_array(struct gl_context *ctx,
array->Stride = stride;
array->StrideB = stride ? stride : elementSize;
array->Normalized = normalized;
+ array->Integer = integer;
array->Ptr = (const GLubyte *) ptr;
array->_ElementSize = elementSize;
diff --git a/mesalib/src/mesa/program/ir_to_mesa.cpp b/mesalib/src/mesa/program/ir_to_mesa.cpp
index 93563bdaa..3c2eb5707 100644
--- a/mesalib/src/mesa/program/ir_to_mesa.cpp
+++ b/mesalib/src/mesa/program/ir_to_mesa.cpp
@@ -2273,6 +2273,9 @@ ir_to_mesa_visitor::visit(ir_texture *ir)
case GLSL_SAMPLER_DIM_BUF:
assert(!"FINISHME: Implement ARB_texture_buffer_object");
break;
+ case GLSL_SAMPLER_DIM_EXTERNAL:
+ inst->tex_target = TEXTURE_EXTERNAL_INDEX;
+ break;
default:
assert(!"Should not get here.");
}
@@ -2546,7 +2549,7 @@ count_resources(struct gl_program *prog)
*
* XXX more checks are needed...
*/
-static void
+static bool
check_resources(const struct gl_context *ctx,
struct gl_shader_program *shader_program,
struct gl_program *prog)
@@ -2586,6 +2589,8 @@ check_resources(const struct gl_context *ctx,
default:
_mesa_problem(ctx, "unexpected program type in check_resources()");
}
+
+ return shader_program->LinkStatus;
}
class add_uniform_to_shader : public uniform_field_visitor {
@@ -3168,9 +3173,7 @@ get_mesa_program(struct gl_context *ctx,
}
if (!shader_program->LinkStatus) {
- free(mesa_instructions);
- _mesa_reference_program(ctx, &shader->Program, NULL);
- return NULL;
+ goto fail_exit;
}
set_branchtargets(&v, mesa_instructions, num_instructions);
@@ -3191,10 +3194,16 @@ get_mesa_program(struct gl_context *ctx,
prog->Instructions = mesa_instructions;
prog->NumInstructions = num_instructions;
+ /* Setting this to NULL prevents a possible double free in the fail_exit
+ * path (far below).
+ */
+ mesa_instructions = NULL;
+
do_set_program_inouts(shader->ir, prog, shader->Type == GL_FRAGMENT_SHADER);
count_resources(prog);
- check_resources(ctx, shader_program, prog);
+ if (!check_resources(ctx, shader_program, prog))
+ goto fail_exit;
_mesa_reference_program(ctx, &shader->Program, prog);
@@ -3203,6 +3212,11 @@ get_mesa_program(struct gl_context *ctx,
}
return prog;
+
+fail_exit:
+ free(mesa_instructions);
+ _mesa_reference_program(ctx, &shader->Program, NULL);
+ return NULL;
}
extern "C" {
@@ -3301,7 +3315,7 @@ _mesa_ir_link_shader(struct gl_context *ctx, struct gl_shader_program *prog)
_mesa_reference_program(ctx, &linked_prog, NULL);
}
- return GL_TRUE;
+ return prog->LinkStatus;
}
diff --git a/mesalib/src/mesa/program/nvfragparse.c b/mesalib/src/mesa/program/nvfragparse.c
index ce72c610d..bcc553a9b 100644
--- a/mesalib/src/mesa/program/nvfragparse.c
+++ b/mesalib/src/mesa/program/nvfragparse.c
@@ -568,7 +568,7 @@ Parse_VectorOrScalarConstant(struct parse_state *parseState, GLfloat *vec)
*/
static GLboolean
Parse_TextureImageId(struct parse_state *parseState,
- GLubyte *texUnit, GLubyte *texTargetBit)
+ GLubyte *texUnit, GLubyte *texTarget)
{
GLubyte imageSrc[100];
GLint unit;
@@ -592,26 +592,26 @@ Parse_TextureImageId(struct parse_state *parseState,
RETURN_ERROR1("Expected ,");
if (Parse_String(parseState, "1D")) {
- *texTargetBit = TEXTURE_1D_BIT;
+ *texTarget = TEXTURE_1D_INDEX;
}
else if (Parse_String(parseState, "2D")) {
- *texTargetBit = TEXTURE_2D_BIT;
+ *texTarget = TEXTURE_2D_INDEX;
}
else if (Parse_String(parseState, "3D")) {
- *texTargetBit = TEXTURE_3D_BIT;
+ *texTarget = TEXTURE_3D_INDEX;
}
else if (Parse_String(parseState, "CUBE")) {
- *texTargetBit = TEXTURE_CUBE_BIT;
+ *texTarget = TEXTURE_CUBE_INDEX;
}
else if (Parse_String(parseState, "RECT")) {
- *texTargetBit = TEXTURE_RECT_BIT;
+ *texTarget = TEXTURE_RECT_INDEX;
}
else {
RETURN_ERROR1("Invalid texture target token");
}
/* update record of referenced texture units */
- parseState->texturesUsed[*texUnit] |= *texTargetBit;
+ parseState->texturesUsed[*texUnit] |= (1 << *texTarget);
if (_mesa_bitcount(parseState->texturesUsed[*texUnit]) > 1) {
RETURN_ERROR1("Only one texture target can be used per texture unit.");
}
diff --git a/mesalib/src/mesa/program/prog_instruction.h b/mesalib/src/mesa/program/prog_instruction.h
index db2b594e7..09659ce9c 100644
--- a/mesalib/src/mesa/program/prog_instruction.h
+++ b/mesalib/src/mesa/program/prog_instruction.h
@@ -392,7 +392,7 @@ struct prog_instruction
GLuint TexSrcUnit:5;
/** Source texture target, one of TEXTURE_{1D,2D,3D,CUBE,RECT}_INDEX */
- GLuint TexSrcTarget:3;
+ GLuint TexSrcTarget:4;
/** True if tex instruction should do shadow comparison */
GLuint TexShadow:1;
diff --git a/mesalib/src/mesa/program/program.c b/mesalib/src/mesa/program/program.c
index 736652529..582cbccf8 100644
--- a/mesalib/src/mesa/program/program.c
+++ b/mesalib/src/mesa/program/program.c
@@ -78,7 +78,7 @@ _mesa_init_program(struct gl_context *ctx)
ASSERT(MAX_TEXTURE_UNITS <= (1 << 5));
/* If this fails, increase prog_instruction::TexSrcTarget size */
- ASSERT(NUM_TEXTURE_TARGETS <= (1 << 3));
+ ASSERT(NUM_TEXTURE_TARGETS <= (1 << 4));
ctx->Program.ErrorPos = -1;
ctx->Program.ErrorString = _mesa_strdup("");
diff --git a/mesalib/src/mesa/sources.mak b/mesalib/src/mesa/sources.mak
index aedee3d1c..6e327a472 100644
--- a/mesalib/src/mesa/sources.mak
+++ b/mesalib/src/mesa/sources.mak
@@ -93,6 +93,7 @@ MAIN_SOURCES = \
main/texpal.c \
main/texparam.c \
main/texstate.c \
+ main/texstorage.c \
main/texstore.c \
main/texturebarrier.c \
main/transformfeedback.c \
diff --git a/mesalib/src/mesa/state_tracker/st_cb_texture.c b/mesalib/src/mesa/state_tracker/st_cb_texture.c
index f82346bc6..c58a9df56 100644
--- a/mesalib/src/mesa/state_tracker/st_cb_texture.c
+++ b/mesalib/src/mesa/state_tracker/st_cb_texture.c
@@ -75,6 +75,7 @@ gl_target_to_pipe(GLenum target)
case GL_TEXTURE_1D:
return PIPE_TEXTURE_1D;
case GL_TEXTURE_2D:
+ case GL_TEXTURE_EXTERNAL_OES:
return PIPE_TEXTURE_2D;
case GL_TEXTURE_RECTANGLE_NV:
return PIPE_TEXTURE_RECT;
@@ -310,6 +311,7 @@ get_texture_dims(GLenum target)
case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB:
case GL_TEXTURE_RECTANGLE_NV:
case GL_TEXTURE_2D_ARRAY_EXT:
+ case GL_TEXTURE_EXTERNAL_OES:
return 2;
case GL_TEXTURE_3D:
return 3;
@@ -1842,6 +1844,66 @@ st_get_default_texture(struct st_context *st)
}
+/**
+ * Called via ctx->Driver.AllocTextureStorage() to allocate texture memory
+ * for a whole mipmap stack.
+ */
+static GLboolean
+st_AllocTextureStorage(struct gl_context *ctx,
+ struct gl_texture_object *texObj,
+ GLsizei levels, GLsizei width,
+ GLsizei height, GLsizei depth)
+{
+ const GLuint numFaces = (texObj->Target == GL_TEXTURE_CUBE_MAP) ? 6 : 1;
+ struct st_context *st = st_context(ctx);
+ struct st_texture_object *stObj = st_texture_object(texObj);
+ GLuint ptWidth, ptHeight, ptDepth, ptLayers, bindings;
+ enum pipe_format fmt;
+ GLint level;
+
+ assert(levels > 0);
+
+ /* Save the level=0 dimensions */
+ stObj->width0 = width;
+ stObj->height0 = height;
+ stObj->depth0 = depth;
+ stObj->lastLevel = levels - 1;
+
+ fmt = st_mesa_format_to_pipe_format(texObj->Image[0][0]->TexFormat);
+
+ bindings = default_bindings(st, fmt);
+
+ st_gl_texture_dims_to_pipe_dims(texObj->Target,
+ width, height, depth,
+ &ptWidth, &ptHeight, &ptDepth, &ptLayers);
+
+ stObj->pt = st_texture_create(st,
+ gl_target_to_pipe(texObj->Target),
+ fmt,
+ levels,
+ ptWidth,
+ ptHeight,
+ ptDepth,
+ ptLayers,
+ bindings);
+ if (!stObj->pt)
+ return GL_FALSE;
+
+ /* Set image resource pointers */
+ for (level = 0; level < levels; level++) {
+ GLuint face;
+ for (face = 0; face < numFaces; face++) {
+ struct st_texture_image *stImage =
+ st_texture_image(texObj->Image[face][level]);
+ pipe_resource_reference(&stImage->pt, stObj->pt);
+ }
+ }
+
+ return GL_TRUE;
+}
+
+
+
void
st_init_texture_functions(struct dd_function_table *functions)
{
@@ -1879,4 +1941,6 @@ st_init_texture_functions(struct dd_function_table *functions)
/* XXX Temporary until we can query pipe's texture sizes */
functions->TestProxyTexImage = _mesa_test_proxy_teximage;
+
+ functions->AllocTextureStorage = st_AllocTextureStorage;
}
diff --git a/mesalib/src/mesa/state_tracker/st_extensions.c b/mesalib/src/mesa/state_tracker/st_extensions.c
index 6b9ff6b72..af8cc0476 100644
--- a/mesalib/src/mesa/state_tracker/st_extensions.c
+++ b/mesalib/src/mesa/state_tracker/st_extensions.c
@@ -264,6 +264,7 @@ void st_init_extensions(struct st_context *st)
ctx->Extensions.ARB_texture_env_combine = GL_TRUE;
ctx->Extensions.ARB_texture_env_crossbar = GL_TRUE;
ctx->Extensions.ARB_texture_env_dot3 = GL_TRUE;
+ ctx->Extensions.ARB_texture_storage = GL_TRUE;
ctx->Extensions.ARB_vertex_array_object = GL_TRUE;
ctx->Extensions.ARB_vertex_program = GL_TRUE;
ctx->Extensions.ARB_window_pos = GL_TRUE;
@@ -290,6 +291,7 @@ void st_init_extensions(struct st_context *st)
ctx->Extensions.MESA_pack_invert = GL_TRUE;
ctx->Extensions.NV_blend_square = GL_TRUE;
+ ctx->Extensions.NV_fog_distance = GL_TRUE;
ctx->Extensions.NV_texgen_reflection = GL_TRUE;
ctx->Extensions.NV_texture_env_combine4 = GL_TRUE;
ctx->Extensions.NV_texture_rectangle = GL_TRUE;
@@ -301,6 +303,8 @@ void st_init_extensions(struct st_context *st)
#if FEATURE_OES_EGL_image
ctx->Extensions.OES_EGL_image = GL_TRUE;
+ if (ctx->API != API_OPENGL)
+ ctx->Extensions.OES_EGL_image_external = GL_TRUE;
#endif
#if FEATURE_OES_draw_texture
ctx->Extensions.OES_draw_texture = GL_TRUE;
diff --git a/mesalib/src/mesa/state_tracker/st_glsl_to_tgsi.cpp b/mesalib/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
index 67a1b513b..6b841f1e9 100644
--- a/mesalib/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
+++ b/mesalib/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
@@ -2725,6 +2725,9 @@ glsl_to_tgsi_visitor::visit(ir_texture *ir)
case GLSL_SAMPLER_DIM_BUF:
assert(!"FINISHME: Implement ARB_texture_buffer_object");
break;
+ case GLSL_SAMPLER_DIM_EXTERNAL:
+ inst->tex_target = TEXTURE_EXTERNAL_INDEX;
+ break;
default:
assert(!"Should not get here.");
}
diff --git a/mesalib/src/mesa/state_tracker/st_mesa_to_tgsi.c b/mesalib/src/mesa/state_tracker/st_mesa_to_tgsi.c
index b4111b00d..27ebb1ad7 100644
--- a/mesalib/src/mesa/state_tracker/st_mesa_to_tgsi.c
+++ b/mesalib/src/mesa/state_tracker/st_mesa_to_tgsi.c
@@ -290,6 +290,7 @@ translate_texture_target( GLuint textarget,
case TEXTURE_RECT_INDEX: return TGSI_TEXTURE_RECT;
case TEXTURE_1D_ARRAY_INDEX: return TGSI_TEXTURE_1D_ARRAY;
case TEXTURE_2D_ARRAY_INDEX: return TGSI_TEXTURE_2D_ARRAY;
+ case TEXTURE_EXTERNAL_INDEX: return TGSI_TEXTURE_2D;
default:
debug_assert( 0 );
return TGSI_TEXTURE_1D;
diff --git a/mesalib/src/mesa/state_tracker/st_program.c b/mesalib/src/mesa/state_tracker/st_program.c
index c419c4066..146e77f9d 100644
--- a/mesalib/src/mesa/state_tracker/st_program.c
+++ b/mesalib/src/mesa/state_tracker/st_program.c
@@ -416,6 +416,20 @@ st_get_vp_variant(struct st_context *st,
return vpv;
}
+static int st_translate_interp(enum glsl_interp_qualifier glsl_qual)
+{
+ switch (glsl_qual) {
+ case INTERP_QUALIFIER_NONE:
+ case INTERP_QUALIFIER_SMOOTH:
+ return TGSI_INTERPOLATE_PERSPECTIVE;
+ case INTERP_QUALIFIER_FLAT:
+ return TGSI_INTERPOLATE_CONSTANT;
+ case INTERP_QUALIFIER_NOPERSPECTIVE:
+ return TGSI_INTERPOLATE_LINEAR;
+ }
+ assert(0);
+ return TGSI_INTERPOLATE_PERSPECTIVE;
+}
/**
* Translate a Mesa fragment shader into a TGSI shader using extra info in
@@ -558,7 +572,7 @@ st_translate_fragment_program(struct st_context *st,
if (attr == FRAG_ATTRIB_PNTC)
interpMode[slot] = TGSI_INTERPOLATE_LINEAR;
else
- interpMode[slot] = TGSI_INTERPOLATE_PERSPECTIVE;
+ interpMode[slot] = st_translate_interp(stfp->Base.InterpQualifier[attr]);
break;
}
}
diff --git a/mesalib/src/mesa/state_tracker/st_texture.c b/mesalib/src/mesa/state_tracker/st_texture.c
index ca8106b52..3323bbbbe 100644
--- a/mesalib/src/mesa/state_tracker/st_texture.c
+++ b/mesalib/src/mesa/state_tracker/st_texture.c
@@ -133,6 +133,7 @@ st_gl_texture_dims_to_pipe_dims(GLenum texture,
break;
case GL_TEXTURE_2D:
case GL_TEXTURE_RECTANGLE:
+ case GL_TEXTURE_EXTERNAL_OES:
assert(depthIn == 1);
*widthOut = widthIn;
*heightOut = heightIn;
diff --git a/mesalib/src/mesa/swrast/s_depth.c b/mesalib/src/mesa/swrast/s_depth.c
index 90b9ee572..6ffa0a310 100644
--- a/mesalib/src/mesa/swrast/s_depth.c
+++ b/mesalib/src/mesa/swrast/s_depth.c
@@ -1,1484 +1,1401 @@
-/*
- * Mesa 3-D graphics library
- * Version: 7.2.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.
- */
-
-
-#include "main/glheader.h"
-#include "main/context.h"
-#include "main/formats.h"
-#include "main/macros.h"
-#include "main/imports.h"
-
-#include "s_depth.h"
-#include "s_span.h"
-
-
-/**
- * Do depth test for a horizontal span of fragments.
- * Input: zbuffer - array of z values in the zbuffer
- * z - array of fragment z values
- * Return: number of fragments which pass the test.
- */
-static GLuint
-depth_test_span16( struct gl_context *ctx, GLuint n,
- GLushort zbuffer[], const GLuint z[], GLubyte mask[] )
-{
- GLuint passed = 0;
-
- /* switch cases ordered from most frequent to less frequent */
- switch (ctx->Depth.Func) {
- case GL_LESS:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- if (z[i] < zbuffer[i]) {
- /* pass */
- zbuffer[i] = z[i];
- passed++;
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- else {
- /* Don't update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- if (z[i] < zbuffer[i]) {
- /* pass */
- passed++;
- }
- else {
- mask[i] = 0;
- }
- }
- }
- }
- break;
- case GL_LEQUAL:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0;i<n;i++) {
- if (mask[i]) {
- if (z[i] <= zbuffer[i]) {
- zbuffer[i] = z[i];
- passed++;
- }
- else {
- mask[i] = 0;
- }
- }
- }
- }
- else {
- /* Don't update Z buffer */
- GLuint i;
- for (i=0;i<n;i++) {
- if (mask[i]) {
- if (z[i] <= zbuffer[i]) {
- /* pass */
- passed++;
- }
- else {
- mask[i] = 0;
- }
- }
- }
- }
- break;
- case GL_GEQUAL:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0;i<n;i++) {
- if (mask[i]) {
- if (z[i] >= zbuffer[i]) {
- zbuffer[i] = z[i];
- passed++;
- }
- else {
- mask[i] = 0;
- }
- }
- }
- }
- else {
- /* Don't update Z buffer */
- GLuint i;
- for (i=0;i<n;i++) {
- if (mask[i]) {
- if (z[i] >= zbuffer[i]) {
- /* pass */
- passed++;
- }
- else {
- mask[i] = 0;
- }
- }
- }
- }
- break;
- case GL_GREATER:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0;i<n;i++) {
- if (mask[i]) {
- if (z[i] > zbuffer[i]) {
- zbuffer[i] = z[i];
- passed++;
- }
- else {
- mask[i] = 0;
- }
- }
- }
- }
- else {
- /* Don't update Z buffer */
- GLuint i;
- for (i=0;i<n;i++) {
- if (mask[i]) {
- if (z[i] > zbuffer[i]) {
- /* pass */
- passed++;
- }
- else {
- mask[i] = 0;
- }
- }
- }
- }
- break;
- case GL_NOTEQUAL:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0;i<n;i++) {
- if (mask[i]) {
- if (z[i] != zbuffer[i]) {
- zbuffer[i] = z[i];
- passed++;
- }
- else {
- mask[i] = 0;
- }
- }
- }
- }
- else {
- /* Don't update Z buffer */
- GLuint i;
- for (i=0;i<n;i++) {
- if (mask[i]) {
- if (z[i] != zbuffer[i]) {
- /* pass */
- passed++;
- }
- else {
- mask[i] = 0;
- }
- }
- }
- }
- break;
- case GL_EQUAL:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0;i<n;i++) {
- if (mask[i]) {
- if (z[i] == zbuffer[i]) {
- zbuffer[i] = z[i];
- passed++;
- }
- else {
- mask[i] = 0;
- }
- }
- }
- }
- else {
- /* Don't update Z buffer */
- GLuint i;
- for (i=0;i<n;i++) {
- if (mask[i]) {
- if (z[i] == zbuffer[i]) {
- /* pass */
- passed++;
- }
- else {
- mask[i] = 0;
- }
- }
- }
- }
- break;
- case GL_ALWAYS:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0;i<n;i++) {
- if (mask[i]) {
- zbuffer[i] = z[i];
- passed++;
- }
- }
- }
- else {
- /* Don't update Z buffer or mask */
- passed = n;
- }
- break;
- case GL_NEVER:
- memset(mask, 0, n * sizeof(GLubyte));
- break;
- default:
- _mesa_problem(ctx, "Bad depth func in depth_test_span16");
- }
-
- return passed;
-}
-
-
-static GLuint
-depth_test_span32( struct gl_context *ctx, GLuint n,
- GLuint zbuffer[], const GLuint z[], GLubyte mask[] )
-{
- GLuint passed = 0;
-
- /* switch cases ordered from most frequent to less frequent */
- switch (ctx->Depth.Func) {
- case GL_LESS:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- if (z[i] < zbuffer[i]) {
- /* pass */
- zbuffer[i] = z[i];
- passed++;
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- else {
- /* Don't update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- if (z[i] < zbuffer[i]) {
- /* pass */
- passed++;
- }
- else {
- mask[i] = 0;
- }
- }
- }
- }
- break;
- case GL_LEQUAL:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0;i<n;i++) {
- if (mask[i]) {
- if (z[i] <= zbuffer[i]) {
- zbuffer[i] = z[i];
- passed++;
- }
- else {
- mask[i] = 0;
- }
- }
- }
- }
- else {
- /* Don't update Z buffer */
- GLuint i;
- for (i=0;i<n;i++) {
- if (mask[i]) {
- if (z[i] <= zbuffer[i]) {
- /* pass */
- passed++;
- }
- else {
- mask[i] = 0;
- }
- }
- }
- }
- break;
- case GL_GEQUAL:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0;i<n;i++) {
- if (mask[i]) {
- if (z[i] >= zbuffer[i]) {
- zbuffer[i] = z[i];
- passed++;
- }
- else {
- mask[i] = 0;
- }
- }
- }
- }
- else {
- /* Don't update Z buffer */
- GLuint i;
- for (i=0;i<n;i++) {
- if (mask[i]) {
- if (z[i] >= zbuffer[i]) {
- /* pass */
- passed++;
- }
- else {
- mask[i] = 0;
- }
- }
- }
- }
- break;
- case GL_GREATER:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0;i<n;i++) {
- if (mask[i]) {
- if (z[i] > zbuffer[i]) {
- zbuffer[i] = z[i];
- passed++;
- }
- else {
- mask[i] = 0;
- }
- }
- }
- }
- else {
- /* Don't update Z buffer */
- GLuint i;
- for (i=0;i<n;i++) {
- if (mask[i]) {
- if (z[i] > zbuffer[i]) {
- /* pass */
- passed++;
- }
- else {
- mask[i] = 0;
- }
- }
- }
- }
- break;
- case GL_NOTEQUAL:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0;i<n;i++) {
- if (mask[i]) {
- if (z[i] != zbuffer[i]) {
- zbuffer[i] = z[i];
- passed++;
- }
- else {
- mask[i] = 0;
- }
- }
- }
- }
- else {
- /* Don't update Z buffer */
- GLuint i;
- for (i=0;i<n;i++) {
- if (mask[i]) {
- if (z[i] != zbuffer[i]) {
- /* pass */
- passed++;
- }
- else {
- mask[i] = 0;
- }
- }
- }
- }
- break;
- case GL_EQUAL:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0;i<n;i++) {
- if (mask[i]) {
- if (z[i] == zbuffer[i]) {
- zbuffer[i] = z[i];
- passed++;
- }
- else {
- mask[i] = 0;
- }
- }
- }
- }
- else {
- /* Don't update Z buffer */
- GLuint i;
- for (i=0;i<n;i++) {
- if (mask[i]) {
- if (z[i] == zbuffer[i]) {
- /* pass */
- passed++;
- }
- else {
- mask[i] = 0;
- }
- }
- }
- }
- break;
- case GL_ALWAYS:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0;i<n;i++) {
- if (mask[i]) {
- zbuffer[i] = z[i];
- passed++;
- }
- }
- }
- else {
- /* Don't update Z buffer or mask */
- passed = n;
- }
- break;
- case GL_NEVER:
- memset(mask, 0, n * sizeof(GLubyte));
- break;
- default:
- _mesa_problem(ctx, "Bad depth func in depth_test_span32");
- }
-
- return passed;
-}
-
-
-
-/**
- * Clamp fragment Z values to the depth near/far range (glDepthRange()).
- * This is used when GL_ARB_depth_clamp/GL_DEPTH_CLAMP is turned on.
- * In that case, vertexes are not clipped against the near/far planes
- * so rasterization will produce fragment Z values outside the usual
- * [0,1] range.
- */
-void
-_swrast_depth_clamp_span( struct gl_context *ctx, SWspan *span )
-{
- struct gl_framebuffer *fb = ctx->DrawBuffer;
- const GLuint count = span->end;
- GLint *zValues = (GLint *) span->array->z; /* sign change */
- GLint min, max;
- GLfloat min_f, max_f;
- GLuint i;
-
- if (ctx->Viewport.Near < ctx->Viewport.Far) {
- min_f = ctx->Viewport.Near;
- max_f = ctx->Viewport.Far;
- } else {
- min_f = ctx->Viewport.Far;
- max_f = ctx->Viewport.Near;
- }
-
- /* Convert floating point values in [0,1] to device Z coordinates in
- * [0, DepthMax].
- * ex: If the Z buffer has 24 bits, DepthMax = 0xffffff.
- *
- * XXX this all falls apart if we have 31 or more bits of Z because
- * the triangle rasterization code produces unsigned Z values. Negative
- * vertex Z values come out as large fragment Z uints.
- */
- min = (GLint) (min_f * fb->_DepthMaxF);
- max = (GLint) (max_f * fb->_DepthMaxF);
- if (max < 0)
- max = 0x7fffffff; /* catch over flow for 30-bit z */
-
- /* Note that we do the comparisons here using signed integers.
- */
- for (i = 0; i < count; i++) {
- if (zValues[i] < min)
- zValues[i] = min;
- if (zValues[i] > max)
- zValues[i] = max;
- }
-}
-
-
-
-/*
- * Apply depth test to span of fragments.
- */
-static GLuint
-depth_test_span( struct gl_context *ctx, SWspan *span)
-{
- struct gl_framebuffer *fb = ctx->DrawBuffer;
- struct gl_renderbuffer *rb = fb->_DepthBuffer;
- const GLint x = span->x;
- const GLint y = span->y;
- const GLuint count = span->end;
- const GLuint *zValues = span->array->z;
- GLubyte *mask = span->array->mask;
- GLuint passed;
-
- ASSERT((span->arrayMask & SPAN_XY) == 0);
- ASSERT(span->arrayMask & SPAN_Z);
-
- if (rb->GetPointer(ctx, rb, 0, 0)) {
- /* Directly access buffer */
- if (rb->DataType == GL_UNSIGNED_SHORT) {
- GLushort *zbuffer = (GLushort *) rb->GetPointer(ctx, rb, x, y);
- passed = depth_test_span16(ctx, count, zbuffer, zValues, mask);
- }
- else {
- GLuint *zbuffer = (GLuint *) rb->GetPointer(ctx, rb, x, y);
- ASSERT(rb->DataType == GL_UNSIGNED_INT);
- passed = depth_test_span32(ctx, count, zbuffer, zValues, mask);
- }
- }
- else {
- /* read depth values from buffer, test, write back */
- if (rb->DataType == GL_UNSIGNED_SHORT) {
- GLushort zbuffer[MAX_WIDTH];
- rb->GetRow(ctx, rb, count, x, y, zbuffer);
- passed = depth_test_span16(ctx, count, zbuffer, zValues, mask);
- rb->PutRow(ctx, rb, count, x, y, zbuffer, mask);
- }
- else {
- GLuint zbuffer[MAX_WIDTH];
- ASSERT(rb->DataType == GL_UNSIGNED_INT);
- rb->GetRow(ctx, rb, count, x, y, zbuffer);
- passed = depth_test_span32(ctx, count, zbuffer, zValues, mask);
- rb->PutRow(ctx, rb, count, x, y, zbuffer, mask);
- }
- }
-
- if (passed < count) {
- span->writeAll = GL_FALSE;
- }
- return passed;
-}
-
-
-
-#define Z_ADDRESS(X, Y) (zStart + (Y) * stride + (X))
-
-
-/*
- * Do depth testing for an array of fragments at assorted locations.
- */
-static void
-direct_depth_test_pixels16(struct gl_context *ctx, GLushort *zStart, GLuint stride,
- GLuint n, const GLint x[], const GLint y[],
- const GLuint z[], GLubyte mask[] )
-{
- /* switch cases ordered from most frequent to less frequent */
- switch (ctx->Depth.Func) {
- case GL_LESS:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLushort *zptr = Z_ADDRESS(x[i], y[i]);
- if (z[i] < *zptr) {
- /* pass */
- *zptr = z[i];
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- else {
- /* Don't update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLushort *zptr = Z_ADDRESS(x[i], y[i]);
- if (z[i] < *zptr) {
- /* pass */
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- break;
- case GL_LEQUAL:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLushort *zptr = Z_ADDRESS(x[i], y[i]);
- if (z[i] <= *zptr) {
- /* pass */
- *zptr = z[i];
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- else {
- /* Don't update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLushort *zptr = Z_ADDRESS(x[i], y[i]);
- if (z[i] <= *zptr) {
- /* pass */
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- break;
- case GL_GEQUAL:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLushort *zptr = Z_ADDRESS(x[i], y[i]);
- if (z[i] >= *zptr) {
- /* pass */
- *zptr = z[i];
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- else {
- /* Don't update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLushort *zptr = Z_ADDRESS(x[i], y[i]);
- if (z[i] >= *zptr) {
- /* pass */
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- break;
- case GL_GREATER:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLushort *zptr = Z_ADDRESS(x[i], y[i]);
- if (z[i] > *zptr) {
- /* pass */
- *zptr = z[i];
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- else {
- /* Don't update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLushort *zptr = Z_ADDRESS(x[i], y[i]);
- if (z[i] > *zptr) {
- /* pass */
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- break;
- case GL_NOTEQUAL:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLushort *zptr = Z_ADDRESS(x[i], y[i]);
- if (z[i] != *zptr) {
- /* pass */
- *zptr = z[i];
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- else {
- /* Don't update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLushort *zptr = Z_ADDRESS(x[i], y[i]);
- if (z[i] != *zptr) {
- /* pass */
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- break;
- case GL_EQUAL:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLushort *zptr = Z_ADDRESS(x[i], y[i]);
- if (z[i] == *zptr) {
- /* pass */
- *zptr = z[i];
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- else {
- /* Don't update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLushort *zptr = Z_ADDRESS(x[i], y[i]);
- if (z[i] == *zptr) {
- /* pass */
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- break;
- case GL_ALWAYS:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLushort *zptr = Z_ADDRESS(x[i], y[i]);
- *zptr = z[i];
- }
- }
- }
- else {
- /* Don't update Z buffer or mask */
- }
- break;
- case GL_NEVER:
- /* depth test never passes */
- memset(mask, 0, n * sizeof(GLubyte));
- break;
- default:
- _mesa_problem(ctx, "Bad depth func in direct_depth_test_pixels");
- }
-}
-
-
-
-/*
- * Do depth testing for an array of fragments with direct access to zbuffer.
- */
-static void
-direct_depth_test_pixels32(struct gl_context *ctx, GLuint *zStart, GLuint stride,
- GLuint n, const GLint x[], const GLint y[],
- const GLuint z[], GLubyte mask[] )
-{
- /* switch cases ordered from most frequent to less frequent */
- switch (ctx->Depth.Func) {
- case GL_LESS:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLuint *zptr = Z_ADDRESS(x[i], y[i]);
- if (z[i] < *zptr) {
- /* pass */
- *zptr = z[i];
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- else {
- /* Don't update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLuint *zptr = Z_ADDRESS(x[i], y[i]);
- if (z[i] < *zptr) {
- /* pass */
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- break;
- case GL_LEQUAL:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLuint *zptr = Z_ADDRESS(x[i], y[i]);
- if (z[i] <= *zptr) {
- /* pass */
- *zptr = z[i];
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- else {
- /* Don't update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLuint *zptr = Z_ADDRESS(x[i], y[i]);
- if (z[i] <= *zptr) {
- /* pass */
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- break;
- case GL_GEQUAL:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLuint *zptr = Z_ADDRESS(x[i], y[i]);
- if (z[i] >= *zptr) {
- /* pass */
- *zptr = z[i];
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- else {
- /* Don't update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLuint *zptr = Z_ADDRESS(x[i], y[i]);
- if (z[i] >= *zptr) {
- /* pass */
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- break;
- case GL_GREATER:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLuint *zptr = Z_ADDRESS(x[i], y[i]);
- if (z[i] > *zptr) {
- /* pass */
- *zptr = z[i];
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- else {
- /* Don't update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLuint *zptr = Z_ADDRESS(x[i], y[i]);
- if (z[i] > *zptr) {
- /* pass */
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- break;
- case GL_NOTEQUAL:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLuint *zptr = Z_ADDRESS(x[i], y[i]);
- if (z[i] != *zptr) {
- /* pass */
- *zptr = z[i];
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- else {
- /* Don't update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLuint *zptr = Z_ADDRESS(x[i], y[i]);
- if (z[i] != *zptr) {
- /* pass */
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- break;
- case GL_EQUAL:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLuint *zptr = Z_ADDRESS(x[i], y[i]);
- if (z[i] == *zptr) {
- /* pass */
- *zptr = z[i];
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- else {
- /* Don't update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLuint *zptr = Z_ADDRESS(x[i], y[i]);
- if (z[i] == *zptr) {
- /* pass */
- }
- else {
- /* fail */
- mask[i] = 0;
- }
- }
- }
- }
- break;
- case GL_ALWAYS:
- if (ctx->Depth.Mask) {
- /* Update Z buffer */
- GLuint i;
- for (i=0; i<n; i++) {
- if (mask[i]) {
- GLuint *zptr = Z_ADDRESS(x[i], y[i]);
- *zptr = z[i];
- }
- }
- }
- else {
- /* Don't update Z buffer or mask */
- }
- break;
- case GL_NEVER:
- /* depth test never passes */
- memset(mask, 0, n * sizeof(GLubyte));
- break;
- default:
- _mesa_problem(ctx, "Bad depth func in direct_depth_test_pixels");
- }
-}
-
-
-
-
-static GLuint
-depth_test_pixels( struct gl_context *ctx, SWspan *span )
-{
- struct gl_framebuffer *fb = ctx->DrawBuffer;
- struct gl_renderbuffer *rb = fb->_DepthBuffer;
- const GLuint count = span->end;
- const GLint *x = span->array->x;
- const GLint *y = span->array->y;
- const GLuint *z = span->array->z;
- GLubyte *mask = span->array->mask;
-
- if (rb->GetPointer(ctx, rb, 0, 0)) {
- /* Directly access values */
- if (rb->DataType == GL_UNSIGNED_SHORT) {
- GLushort *zStart = (GLushort *) rb->Data;
- GLuint stride = rb->Width;
- direct_depth_test_pixels16(ctx, zStart, stride, count, x, y, z, mask);
- }
- else {
- GLuint *zStart = (GLuint *) rb->Data;
- GLuint stride = rb->Width;
- ASSERT(rb->DataType == GL_UNSIGNED_INT);
- direct_depth_test_pixels32(ctx, zStart, stride, count, x, y, z, mask);
- }
- }
- else {
- /* read depth values from buffer, test, write back */
- if (rb->DataType == GL_UNSIGNED_SHORT) {
- GLushort zbuffer[MAX_WIDTH];
- _swrast_get_values(ctx, rb, count, x, y, zbuffer, sizeof(GLushort));
- depth_test_span16(ctx, count, zbuffer, z, mask);
- rb->PutValues(ctx, rb, count, x, y, zbuffer, mask);
- }
- else {
- GLuint zbuffer[MAX_WIDTH];
- ASSERT(rb->DataType == GL_UNSIGNED_INT);
- _swrast_get_values(ctx, rb, count, x, y, zbuffer, sizeof(GLuint));
- depth_test_span32(ctx, count, zbuffer, z, mask);
- rb->PutValues(ctx, rb, count, x, y, zbuffer, mask);
- }
- }
-
- return count; /* not really correct, but OK */
-}
-
-
-/**
- * Apply depth (Z) buffer testing to the span.
- * \return approx number of pixels that passed (only zero is reliable)
- */
-GLuint
-_swrast_depth_test_span( struct gl_context *ctx, SWspan *span)
-{
- if (span->arrayMask & SPAN_XY)
- return depth_test_pixels(ctx, span);
- else
- return depth_test_span(ctx, span);
-}
-
-
-/**
- * GL_EXT_depth_bounds_test extension.
- * Discard fragments depending on whether the corresponding Z-buffer
- * values are outside the depth bounds test range.
- * Note: we test the Z buffer values, not the fragment Z values!
- * \return GL_TRUE if any fragments pass, GL_FALSE if no fragments pass
- */
-GLboolean
-_swrast_depth_bounds_test( struct gl_context *ctx, SWspan *span )
-{
- struct gl_framebuffer *fb = ctx->DrawBuffer;
- struct gl_renderbuffer *rb = fb->_DepthBuffer;
- GLuint zMin = (GLuint) (ctx->Depth.BoundsMin * fb->_DepthMaxF + 0.5F);
- GLuint zMax = (GLuint) (ctx->Depth.BoundsMax * fb->_DepthMaxF + 0.5F);
- GLubyte *mask = span->array->mask;
- const GLuint count = span->end;
- GLuint i;
- GLboolean anyPass = GL_FALSE;
-
- if (rb->DataType == GL_UNSIGNED_SHORT) {
- /* get 16-bit values */
- GLushort zbuffer16[MAX_WIDTH], *zbuffer;
- if (span->arrayMask & SPAN_XY) {
- _swrast_get_values(ctx, rb, count, span->array->x, span->array->y,
- zbuffer16, sizeof(GLushort));
- zbuffer = zbuffer16;
- }
- else {
- zbuffer = (GLushort*) rb->GetPointer(ctx, rb, span->x, span->y);
- if (!zbuffer) {
- rb->GetRow(ctx, rb, count, span->x, span->y, zbuffer16);
- zbuffer = zbuffer16;
- }
- }
- assert(zbuffer);
-
- /* Now do the tests */
- for (i = 0; i < count; i++) {
- if (mask[i]) {
- if (zbuffer[i] < zMin || zbuffer[i] > zMax)
- mask[i] = GL_FALSE;
- else
- anyPass = GL_TRUE;
- }
- }
- }
- else {
- /* get 32-bit values */
- GLuint zbuffer32[MAX_WIDTH], *zbuffer;
- ASSERT(rb->DataType == GL_UNSIGNED_INT);
- if (span->arrayMask & SPAN_XY) {
- _swrast_get_values(ctx, rb, count, span->array->x, span->array->y,
- zbuffer32, sizeof(GLuint));
- zbuffer = zbuffer32;
- }
- else {
- zbuffer = (GLuint*) rb->GetPointer(ctx, rb, span->x, span->y);
- if (!zbuffer) {
- rb->GetRow(ctx, rb, count, span->x, span->y, zbuffer32);
- zbuffer = zbuffer32;
- }
- }
- assert(zbuffer);
-
- /* Now do the tests */
- for (i = 0; i < count; i++) {
- if (mask[i]) {
- if (zbuffer[i] < zMin || zbuffer[i] > zMax)
- mask[i] = GL_FALSE;
- else
- anyPass = GL_TRUE;
- }
- }
- }
-
- return anyPass;
-}
-
-
-
-/**********************************************************************/
-/***** Read Depth Buffer *****/
-/**********************************************************************/
-
-
-/**
- * Read a span of depth values from the given depth renderbuffer, returning
- * the values as GLfloats.
- * This function does clipping to prevent reading outside the depth buffer's
- * bounds. Though the clipping is redundant when we're called from
- * _swrast_ReadPixels.
- */
-void
-_swrast_read_depth_span_float( struct gl_context *ctx, struct gl_renderbuffer *rb,
- GLint n, GLint x, GLint y, GLfloat depth[] )
-{
- const GLfloat scale = 1.0F / ctx->DrawBuffer->_DepthMaxF;
-
- if (!rb) {
- /* really only doing this to prevent FP exceptions later */
- memset(depth, 0, n * sizeof(GLfloat));
- return;
- }
-
- ASSERT(rb->_BaseFormat == GL_DEPTH_COMPONENT);
-
- if (y < 0 || y >= (GLint) rb->Height ||
- x + n <= 0 || x >= (GLint) rb->Width) {
- /* span is completely outside framebuffer */
- memset(depth, 0, n * sizeof(GLfloat));
- return;
- }
-
- if (x < 0) {
- GLint dx = -x;
- GLint i;
- for (i = 0; i < dx; i++)
- depth[i] = 0.0;
- x = 0;
- n -= dx;
- depth += dx;
- }
- if (x + n > (GLint) rb->Width) {
- GLint dx = x + n - (GLint) rb->Width;
- GLint i;
- for (i = 0; i < dx; i++)
- depth[n - i - 1] = 0.0;
- n -= dx;
- }
- if (n <= 0) {
- return;
- }
-
- if (rb->DataType == GL_UNSIGNED_INT) {
- GLuint temp[MAX_WIDTH];
- GLint i;
- rb->GetRow(ctx, rb, n, x, y, temp);
- for (i = 0; i < n; i++) {
- depth[i] = temp[i] * scale;
- }
- }
- else if (rb->DataType == GL_UNSIGNED_SHORT) {
- GLushort temp[MAX_WIDTH];
- GLint i;
- rb->GetRow(ctx, rb, n, x, y, temp);
- for (i = 0; i < n; i++) {
- depth[i] = temp[i] * scale;
- }
- }
- else {
- _mesa_problem(ctx, "Invalid depth renderbuffer data type");
- }
-}
-
-
-/**
- * As above, but return 32-bit GLuint values.
- */
-void
-_swrast_read_depth_span_uint( struct gl_context *ctx, struct gl_renderbuffer *rb,
- GLint n, GLint x, GLint y, GLuint depth[] )
-{
- GLuint depthBits;
-
- if (!rb) {
- /* really only doing this to prevent FP exceptions later */
- memset(depth, 0, n * sizeof(GLuint));
- return;
- }
-
- depthBits = _mesa_get_format_bits(rb->Format, GL_DEPTH_BITS);
-
- ASSERT(rb->_BaseFormat == GL_DEPTH_COMPONENT);
-
- if (y < 0 || y >= (GLint) rb->Height ||
- x + n <= 0 || x >= (GLint) rb->Width) {
- /* span is completely outside framebuffer */
- memset(depth, 0, n * sizeof(GLfloat));
- return;
- }
-
- if (x < 0) {
- GLint dx = -x;
- GLint i;
- for (i = 0; i < dx; i++)
- depth[i] = 0;
- x = 0;
- n -= dx;
- depth += dx;
- }
- if (x + n > (GLint) rb->Width) {
- GLint dx = x + n - (GLint) rb->Width;
- GLint i;
- for (i = 0; i < dx; i++)
- depth[n - i - 1] = 0;
- n -= dx;
- }
- if (n <= 0) {
- return;
- }
-
- if (rb->DataType == GL_UNSIGNED_INT) {
- rb->GetRow(ctx, rb, n, x, y, depth);
- if (depthBits < 32) {
- GLuint shift = 32 - depthBits;
- GLint i;
- for (i = 0; i < n; i++) {
- GLuint z = depth[i];
- depth[i] = z << shift; /* XXX lsb bits? */
- }
- }
- }
- else if (rb->DataType == GL_UNSIGNED_SHORT) {
- GLushort temp[MAX_WIDTH];
- GLint i;
- rb->GetRow(ctx, rb, n, x, y, temp);
- if (depthBits == 16) {
- for (i = 0; i < n; i++) {
- GLuint z = temp[i];
- depth[i] = (z << 16) | z;
- }
- }
- else {
- GLuint shift = 16 - depthBits;
- for (i = 0; i < n; i++) {
- GLuint z = temp[i];
- depth[i] = (z << (shift + 16)) | (z << shift); /* XXX lsb bits? */
- }
- }
- }
- else {
- _mesa_problem(ctx, "Invalid depth renderbuffer data type");
- }
-}
-
-
-
-/**
- * Clear the given z/depth renderbuffer.
- */
-void
-_swrast_clear_depth_buffer( struct gl_context *ctx, struct gl_renderbuffer *rb )
-{
- GLuint clearValue;
- GLint x, y, width, height;
-
- if (!rb || !ctx->Depth.Mask) {
- /* no depth buffer, or writing to it is disabled */
- return;
- }
-
- /* compute integer clearing value */
- if (ctx->Depth.Clear == 1.0) {
- clearValue = ctx->DrawBuffer->_DepthMax;
- }
- else {
- clearValue = (GLuint) (ctx->Depth.Clear * ctx->DrawBuffer->_DepthMaxF);
- }
-
- assert(rb->_BaseFormat == GL_DEPTH_COMPONENT);
-
- /* compute region to clear */
- x = ctx->DrawBuffer->_Xmin;
- y = ctx->DrawBuffer->_Ymin;
- width = ctx->DrawBuffer->_Xmax - ctx->DrawBuffer->_Xmin;
- height = ctx->DrawBuffer->_Ymax - ctx->DrawBuffer->_Ymin;
-
- if (rb->GetPointer(ctx, rb, 0, 0)) {
- /* Direct buffer access is possible. Either this is just malloc'd
- * memory, or perhaps the driver mmap'd the zbuffer memory.
- */
- if (rb->DataType == GL_UNSIGNED_SHORT) {
- if ((clearValue & 0xff) == ((clearValue >> 8) & 0xff) &&
- ((GLushort *) rb->GetPointer(ctx, rb, 0, 0) + width ==
- (GLushort *) rb->GetPointer(ctx, rb, 0, 1))) {
- /* optimized case */
- GLushort *dst = (GLushort *) rb->GetPointer(ctx, rb, x, y);
- GLuint len = width * height * sizeof(GLushort);
- memset(dst, (clearValue & 0xff), len);
- }
- else {
- /* general case */
- GLint i, j;
- for (i = 0; i < height; i++) {
- GLushort *dst = (GLushort *) rb->GetPointer(ctx, rb, x, y + i);
- for (j = 0; j < width; j++) {
- dst[j] = clearValue;
- }
- }
- }
- }
- else {
- GLint i, j;
- ASSERT(rb->DataType == GL_UNSIGNED_INT);
- for (i = 0; i < height; i++) {
- GLuint *dst = (GLuint *) rb->GetPointer(ctx, rb, x, y + i);
- for (j = 0; j < width; j++) {
- dst[j] = clearValue;
- }
- }
- }
- }
- else {
- /* Direct access not possible. Use PutRow to write new values. */
- if (rb->DataType == GL_UNSIGNED_SHORT) {
- GLushort clearVal16 = (GLushort) (clearValue & 0xffff);
- GLint i;
- for (i = 0; i < height; i++) {
- rb->PutMonoRow(ctx, rb, width, x, y + i, &clearVal16, NULL);
- }
- }
- else if (rb->DataType == GL_UNSIGNED_INT) {
- GLint i;
- ASSERT(sizeof(clearValue) == sizeof(GLuint));
- for (i = 0; i < height; i++) {
- rb->PutMonoRow(ctx, rb, width, x, y + i, &clearValue, NULL);
- }
- }
- else {
- _mesa_problem(ctx, "bad depth renderbuffer DataType");
- }
- }
-}
+/*
+ * Mesa 3-D graphics library
+ * Version: 7.2.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.
+ */
+
+
+#include "main/glheader.h"
+#include "main/context.h"
+#include "main/formats.h"
+#include "main/macros.h"
+#include "main/imports.h"
+
+#include "s_depth.h"
+#include "s_span.h"
+
+
+/**
+ * Do depth test for a horizontal span of fragments.
+ * Input: zbuffer - array of z values in the zbuffer
+ * z - array of fragment z values
+ * Return: number of fragments which pass the test.
+ */
+static GLuint
+depth_test_span16( struct gl_context *ctx, GLuint n,
+ GLushort zbuffer[], const GLuint z[], GLubyte mask[] )
+{
+ GLuint passed = 0;
+
+ /* switch cases ordered from most frequent to less frequent */
+ switch (ctx->Depth.Func) {
+ case GL_LESS:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ if (z[i] < zbuffer[i]) {
+ /* pass */
+ zbuffer[i] = z[i];
+ passed++;
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ if (z[i] < zbuffer[i]) {
+ /* pass */
+ passed++;
+ }
+ else {
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ break;
+ case GL_LEQUAL:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0;i<n;i++) {
+ if (mask[i]) {
+ if (z[i] <= zbuffer[i]) {
+ zbuffer[i] = z[i];
+ passed++;
+ }
+ else {
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer */
+ GLuint i;
+ for (i=0;i<n;i++) {
+ if (mask[i]) {
+ if (z[i] <= zbuffer[i]) {
+ /* pass */
+ passed++;
+ }
+ else {
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ break;
+ case GL_GEQUAL:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0;i<n;i++) {
+ if (mask[i]) {
+ if (z[i] >= zbuffer[i]) {
+ zbuffer[i] = z[i];
+ passed++;
+ }
+ else {
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer */
+ GLuint i;
+ for (i=0;i<n;i++) {
+ if (mask[i]) {
+ if (z[i] >= zbuffer[i]) {
+ /* pass */
+ passed++;
+ }
+ else {
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ break;
+ case GL_GREATER:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0;i<n;i++) {
+ if (mask[i]) {
+ if (z[i] > zbuffer[i]) {
+ zbuffer[i] = z[i];
+ passed++;
+ }
+ else {
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer */
+ GLuint i;
+ for (i=0;i<n;i++) {
+ if (mask[i]) {
+ if (z[i] > zbuffer[i]) {
+ /* pass */
+ passed++;
+ }
+ else {
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ break;
+ case GL_NOTEQUAL:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0;i<n;i++) {
+ if (mask[i]) {
+ if (z[i] != zbuffer[i]) {
+ zbuffer[i] = z[i];
+ passed++;
+ }
+ else {
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer */
+ GLuint i;
+ for (i=0;i<n;i++) {
+ if (mask[i]) {
+ if (z[i] != zbuffer[i]) {
+ /* pass */
+ passed++;
+ }
+ else {
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ break;
+ case GL_EQUAL:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0;i<n;i++) {
+ if (mask[i]) {
+ if (z[i] == zbuffer[i]) {
+ zbuffer[i] = z[i];
+ passed++;
+ }
+ else {
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer */
+ GLuint i;
+ for (i=0;i<n;i++) {
+ if (mask[i]) {
+ if (z[i] == zbuffer[i]) {
+ /* pass */
+ passed++;
+ }
+ else {
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ break;
+ case GL_ALWAYS:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0;i<n;i++) {
+ if (mask[i]) {
+ zbuffer[i] = z[i];
+ passed++;
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer or mask */
+ passed = n;
+ }
+ break;
+ case GL_NEVER:
+ memset(mask, 0, n * sizeof(GLubyte));
+ break;
+ default:
+ _mesa_problem(ctx, "Bad depth func in depth_test_span16");
+ }
+
+ return passed;
+}
+
+
+static GLuint
+depth_test_span32( struct gl_context *ctx, GLuint n,
+ GLuint zbuffer[], const GLuint z[], GLubyte mask[] )
+{
+ GLuint passed = 0;
+
+ /* switch cases ordered from most frequent to less frequent */
+ switch (ctx->Depth.Func) {
+ case GL_LESS:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ if (z[i] < zbuffer[i]) {
+ /* pass */
+ zbuffer[i] = z[i];
+ passed++;
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ if (z[i] < zbuffer[i]) {
+ /* pass */
+ passed++;
+ }
+ else {
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ break;
+ case GL_LEQUAL:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0;i<n;i++) {
+ if (mask[i]) {
+ if (z[i] <= zbuffer[i]) {
+ zbuffer[i] = z[i];
+ passed++;
+ }
+ else {
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer */
+ GLuint i;
+ for (i=0;i<n;i++) {
+ if (mask[i]) {
+ if (z[i] <= zbuffer[i]) {
+ /* pass */
+ passed++;
+ }
+ else {
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ break;
+ case GL_GEQUAL:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0;i<n;i++) {
+ if (mask[i]) {
+ if (z[i] >= zbuffer[i]) {
+ zbuffer[i] = z[i];
+ passed++;
+ }
+ else {
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer */
+ GLuint i;
+ for (i=0;i<n;i++) {
+ if (mask[i]) {
+ if (z[i] >= zbuffer[i]) {
+ /* pass */
+ passed++;
+ }
+ else {
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ break;
+ case GL_GREATER:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0;i<n;i++) {
+ if (mask[i]) {
+ if (z[i] > zbuffer[i]) {
+ zbuffer[i] = z[i];
+ passed++;
+ }
+ else {
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer */
+ GLuint i;
+ for (i=0;i<n;i++) {
+ if (mask[i]) {
+ if (z[i] > zbuffer[i]) {
+ /* pass */
+ passed++;
+ }
+ else {
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ break;
+ case GL_NOTEQUAL:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0;i<n;i++) {
+ if (mask[i]) {
+ if (z[i] != zbuffer[i]) {
+ zbuffer[i] = z[i];
+ passed++;
+ }
+ else {
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer */
+ GLuint i;
+ for (i=0;i<n;i++) {
+ if (mask[i]) {
+ if (z[i] != zbuffer[i]) {
+ /* pass */
+ passed++;
+ }
+ else {
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ break;
+ case GL_EQUAL:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0;i<n;i++) {
+ if (mask[i]) {
+ if (z[i] == zbuffer[i]) {
+ zbuffer[i] = z[i];
+ passed++;
+ }
+ else {
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer */
+ GLuint i;
+ for (i=0;i<n;i++) {
+ if (mask[i]) {
+ if (z[i] == zbuffer[i]) {
+ /* pass */
+ passed++;
+ }
+ else {
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ break;
+ case GL_ALWAYS:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0;i<n;i++) {
+ if (mask[i]) {
+ zbuffer[i] = z[i];
+ passed++;
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer or mask */
+ passed = n;
+ }
+ break;
+ case GL_NEVER:
+ memset(mask, 0, n * sizeof(GLubyte));
+ break;
+ default:
+ _mesa_problem(ctx, "Bad depth func in depth_test_span32");
+ }
+
+ return passed;
+}
+
+
+
+/**
+ * Clamp fragment Z values to the depth near/far range (glDepthRange()).
+ * This is used when GL_ARB_depth_clamp/GL_DEPTH_CLAMP is turned on.
+ * In that case, vertexes are not clipped against the near/far planes
+ * so rasterization will produce fragment Z values outside the usual
+ * [0,1] range.
+ */
+void
+_swrast_depth_clamp_span( struct gl_context *ctx, SWspan *span )
+{
+ struct gl_framebuffer *fb = ctx->DrawBuffer;
+ const GLuint count = span->end;
+ GLint *zValues = (GLint *) span->array->z; /* sign change */
+ GLint min, max;
+ GLfloat min_f, max_f;
+ GLuint i;
+
+ if (ctx->Viewport.Near < ctx->Viewport.Far) {
+ min_f = ctx->Viewport.Near;
+ max_f = ctx->Viewport.Far;
+ } else {
+ min_f = ctx->Viewport.Far;
+ max_f = ctx->Viewport.Near;
+ }
+
+ /* Convert floating point values in [0,1] to device Z coordinates in
+ * [0, DepthMax].
+ * ex: If the Z buffer has 24 bits, DepthMax = 0xffffff.
+ *
+ * XXX this all falls apart if we have 31 or more bits of Z because
+ * the triangle rasterization code produces unsigned Z values. Negative
+ * vertex Z values come out as large fragment Z uints.
+ */
+ min = (GLint) (min_f * fb->_DepthMaxF);
+ max = (GLint) (max_f * fb->_DepthMaxF);
+ if (max < 0)
+ max = 0x7fffffff; /* catch over flow for 30-bit z */
+
+ /* Note that we do the comparisons here using signed integers.
+ */
+ for (i = 0; i < count; i++) {
+ if (zValues[i] < min)
+ zValues[i] = min;
+ if (zValues[i] > max)
+ zValues[i] = max;
+ }
+}
+
+
+
+/*
+ * Apply depth test to span of fragments.
+ */
+static GLuint
+depth_test_span( struct gl_context *ctx, SWspan *span)
+{
+ struct gl_framebuffer *fb = ctx->DrawBuffer;
+ struct gl_renderbuffer *rb = fb->_DepthBuffer;
+ const GLint x = span->x;
+ const GLint y = span->y;
+ const GLuint count = span->end;
+ const GLuint *zValues = span->array->z;
+ GLubyte *mask = span->array->mask;
+ GLuint passed;
+
+ ASSERT((span->arrayMask & SPAN_XY) == 0);
+ ASSERT(span->arrayMask & SPAN_Z);
+
+ if (rb->GetPointer(ctx, rb, 0, 0)) {
+ /* Directly access buffer */
+ if (rb->DataType == GL_UNSIGNED_SHORT) {
+ GLushort *zbuffer = (GLushort *) rb->GetPointer(ctx, rb, x, y);
+ passed = depth_test_span16(ctx, count, zbuffer, zValues, mask);
+ }
+ else {
+ GLuint *zbuffer = (GLuint *) rb->GetPointer(ctx, rb, x, y);
+ ASSERT(rb->DataType == GL_UNSIGNED_INT);
+ passed = depth_test_span32(ctx, count, zbuffer, zValues, mask);
+ }
+ }
+ else {
+ /* read depth values from buffer, test, write back */
+ if (rb->DataType == GL_UNSIGNED_SHORT) {
+ GLushort zbuffer[MAX_WIDTH];
+ rb->GetRow(ctx, rb, count, x, y, zbuffer);
+ passed = depth_test_span16(ctx, count, zbuffer, zValues, mask);
+ rb->PutRow(ctx, rb, count, x, y, zbuffer, mask);
+ }
+ else {
+ GLuint zbuffer[MAX_WIDTH];
+ ASSERT(rb->DataType == GL_UNSIGNED_INT);
+ rb->GetRow(ctx, rb, count, x, y, zbuffer);
+ passed = depth_test_span32(ctx, count, zbuffer, zValues, mask);
+ rb->PutRow(ctx, rb, count, x, y, zbuffer, mask);
+ }
+ }
+
+ if (passed < count) {
+ span->writeAll = GL_FALSE;
+ }
+ return passed;
+}
+
+
+
+#define Z_ADDRESS(X, Y) (zStart + (Y) * stride + (X))
+
+
+/*
+ * Do depth testing for an array of fragments at assorted locations.
+ */
+static void
+direct_depth_test_pixels16(struct gl_context *ctx, GLushort *zStart, GLuint stride,
+ GLuint n, const GLint x[], const GLint y[],
+ const GLuint z[], GLubyte mask[] )
+{
+ /* switch cases ordered from most frequent to less frequent */
+ switch (ctx->Depth.Func) {
+ case GL_LESS:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLushort *zptr = Z_ADDRESS(x[i], y[i]);
+ if (z[i] < *zptr) {
+ /* pass */
+ *zptr = z[i];
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLushort *zptr = Z_ADDRESS(x[i], y[i]);
+ if (z[i] < *zptr) {
+ /* pass */
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ break;
+ case GL_LEQUAL:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLushort *zptr = Z_ADDRESS(x[i], y[i]);
+ if (z[i] <= *zptr) {
+ /* pass */
+ *zptr = z[i];
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLushort *zptr = Z_ADDRESS(x[i], y[i]);
+ if (z[i] <= *zptr) {
+ /* pass */
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ break;
+ case GL_GEQUAL:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLushort *zptr = Z_ADDRESS(x[i], y[i]);
+ if (z[i] >= *zptr) {
+ /* pass */
+ *zptr = z[i];
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLushort *zptr = Z_ADDRESS(x[i], y[i]);
+ if (z[i] >= *zptr) {
+ /* pass */
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ break;
+ case GL_GREATER:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLushort *zptr = Z_ADDRESS(x[i], y[i]);
+ if (z[i] > *zptr) {
+ /* pass */
+ *zptr = z[i];
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLushort *zptr = Z_ADDRESS(x[i], y[i]);
+ if (z[i] > *zptr) {
+ /* pass */
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ break;
+ case GL_NOTEQUAL:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLushort *zptr = Z_ADDRESS(x[i], y[i]);
+ if (z[i] != *zptr) {
+ /* pass */
+ *zptr = z[i];
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLushort *zptr = Z_ADDRESS(x[i], y[i]);
+ if (z[i] != *zptr) {
+ /* pass */
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ break;
+ case GL_EQUAL:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLushort *zptr = Z_ADDRESS(x[i], y[i]);
+ if (z[i] == *zptr) {
+ /* pass */
+ *zptr = z[i];
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLushort *zptr = Z_ADDRESS(x[i], y[i]);
+ if (z[i] == *zptr) {
+ /* pass */
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ break;
+ case GL_ALWAYS:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLushort *zptr = Z_ADDRESS(x[i], y[i]);
+ *zptr = z[i];
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer or mask */
+ }
+ break;
+ case GL_NEVER:
+ /* depth test never passes */
+ memset(mask, 0, n * sizeof(GLubyte));
+ break;
+ default:
+ _mesa_problem(ctx, "Bad depth func in direct_depth_test_pixels");
+ }
+}
+
+
+
+/*
+ * Do depth testing for an array of fragments with direct access to zbuffer.
+ */
+static void
+direct_depth_test_pixels32(struct gl_context *ctx, GLuint *zStart, GLuint stride,
+ GLuint n, const GLint x[], const GLint y[],
+ const GLuint z[], GLubyte mask[] )
+{
+ /* switch cases ordered from most frequent to less frequent */
+ switch (ctx->Depth.Func) {
+ case GL_LESS:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLuint *zptr = Z_ADDRESS(x[i], y[i]);
+ if (z[i] < *zptr) {
+ /* pass */
+ *zptr = z[i];
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLuint *zptr = Z_ADDRESS(x[i], y[i]);
+ if (z[i] < *zptr) {
+ /* pass */
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ break;
+ case GL_LEQUAL:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLuint *zptr = Z_ADDRESS(x[i], y[i]);
+ if (z[i] <= *zptr) {
+ /* pass */
+ *zptr = z[i];
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLuint *zptr = Z_ADDRESS(x[i], y[i]);
+ if (z[i] <= *zptr) {
+ /* pass */
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ break;
+ case GL_GEQUAL:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLuint *zptr = Z_ADDRESS(x[i], y[i]);
+ if (z[i] >= *zptr) {
+ /* pass */
+ *zptr = z[i];
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLuint *zptr = Z_ADDRESS(x[i], y[i]);
+ if (z[i] >= *zptr) {
+ /* pass */
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ break;
+ case GL_GREATER:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLuint *zptr = Z_ADDRESS(x[i], y[i]);
+ if (z[i] > *zptr) {
+ /* pass */
+ *zptr = z[i];
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLuint *zptr = Z_ADDRESS(x[i], y[i]);
+ if (z[i] > *zptr) {
+ /* pass */
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ break;
+ case GL_NOTEQUAL:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLuint *zptr = Z_ADDRESS(x[i], y[i]);
+ if (z[i] != *zptr) {
+ /* pass */
+ *zptr = z[i];
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLuint *zptr = Z_ADDRESS(x[i], y[i]);
+ if (z[i] != *zptr) {
+ /* pass */
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ break;
+ case GL_EQUAL:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLuint *zptr = Z_ADDRESS(x[i], y[i]);
+ if (z[i] == *zptr) {
+ /* pass */
+ *zptr = z[i];
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLuint *zptr = Z_ADDRESS(x[i], y[i]);
+ if (z[i] == *zptr) {
+ /* pass */
+ }
+ else {
+ /* fail */
+ mask[i] = 0;
+ }
+ }
+ }
+ }
+ break;
+ case GL_ALWAYS:
+ if (ctx->Depth.Mask) {
+ /* Update Z buffer */
+ GLuint i;
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ GLuint *zptr = Z_ADDRESS(x[i], y[i]);
+ *zptr = z[i];
+ }
+ }
+ }
+ else {
+ /* Don't update Z buffer or mask */
+ }
+ break;
+ case GL_NEVER:
+ /* depth test never passes */
+ memset(mask, 0, n * sizeof(GLubyte));
+ break;
+ default:
+ _mesa_problem(ctx, "Bad depth func in direct_depth_test_pixels");
+ }
+}
+
+
+
+
+static GLuint
+depth_test_pixels( struct gl_context *ctx, SWspan *span )
+{
+ struct gl_framebuffer *fb = ctx->DrawBuffer;
+ struct gl_renderbuffer *rb = fb->_DepthBuffer;
+ const GLuint count = span->end;
+ const GLint *x = span->array->x;
+ const GLint *y = span->array->y;
+ const GLuint *z = span->array->z;
+ GLubyte *mask = span->array->mask;
+
+ if (rb->GetPointer(ctx, rb, 0, 0)) {
+ /* Directly access values */
+ if (rb->DataType == GL_UNSIGNED_SHORT) {
+ GLushort *zStart = (GLushort *) rb->Data;
+ GLuint stride = rb->Width;
+ direct_depth_test_pixels16(ctx, zStart, stride, count, x, y, z, mask);
+ }
+ else {
+ GLuint *zStart = (GLuint *) rb->Data;
+ GLuint stride = rb->Width;
+ ASSERT(rb->DataType == GL_UNSIGNED_INT);
+ direct_depth_test_pixels32(ctx, zStart, stride, count, x, y, z, mask);
+ }
+ }
+ else {
+ /* read depth values from buffer, test, write back */
+ if (rb->DataType == GL_UNSIGNED_SHORT) {
+ GLushort zbuffer[MAX_WIDTH];
+ _swrast_get_values(ctx, rb, count, x, y, zbuffer, sizeof(GLushort));
+ depth_test_span16(ctx, count, zbuffer, z, mask);
+ rb->PutValues(ctx, rb, count, x, y, zbuffer, mask);
+ }
+ else {
+ GLuint zbuffer[MAX_WIDTH];
+ ASSERT(rb->DataType == GL_UNSIGNED_INT);
+ _swrast_get_values(ctx, rb, count, x, y, zbuffer, sizeof(GLuint));
+ depth_test_span32(ctx, count, zbuffer, z, mask);
+ rb->PutValues(ctx, rb, count, x, y, zbuffer, mask);
+ }
+ }
+
+ return count; /* not really correct, but OK */
+}
+
+
+/**
+ * Apply depth (Z) buffer testing to the span.
+ * \return approx number of pixels that passed (only zero is reliable)
+ */
+GLuint
+_swrast_depth_test_span( struct gl_context *ctx, SWspan *span)
+{
+ if (span->arrayMask & SPAN_XY)
+ return depth_test_pixels(ctx, span);
+ else
+ return depth_test_span(ctx, span);
+}
+
+
+/**
+ * GL_EXT_depth_bounds_test extension.
+ * Discard fragments depending on whether the corresponding Z-buffer
+ * values are outside the depth bounds test range.
+ * Note: we test the Z buffer values, not the fragment Z values!
+ * \return GL_TRUE if any fragments pass, GL_FALSE if no fragments pass
+ */
+GLboolean
+_swrast_depth_bounds_test( struct gl_context *ctx, SWspan *span )
+{
+ struct gl_framebuffer *fb = ctx->DrawBuffer;
+ struct gl_renderbuffer *rb = fb->_DepthBuffer;
+ GLuint zMin = (GLuint) (ctx->Depth.BoundsMin * fb->_DepthMaxF + 0.5F);
+ GLuint zMax = (GLuint) (ctx->Depth.BoundsMax * fb->_DepthMaxF + 0.5F);
+ GLubyte *mask = span->array->mask;
+ const GLuint count = span->end;
+ GLuint i;
+ GLboolean anyPass = GL_FALSE;
+
+ if (rb->DataType == GL_UNSIGNED_SHORT) {
+ /* get 16-bit values */
+ GLushort zbuffer16[MAX_WIDTH], *zbuffer;
+ if (span->arrayMask & SPAN_XY) {
+ _swrast_get_values(ctx, rb, count, span->array->x, span->array->y,
+ zbuffer16, sizeof(GLushort));
+ zbuffer = zbuffer16;
+ }
+ else {
+ zbuffer = (GLushort*) rb->GetPointer(ctx, rb, span->x, span->y);
+ if (!zbuffer) {
+ rb->GetRow(ctx, rb, count, span->x, span->y, zbuffer16);
+ zbuffer = zbuffer16;
+ }
+ }
+ assert(zbuffer);
+
+ /* Now do the tests */
+ for (i = 0; i < count; i++) {
+ if (mask[i]) {
+ if (zbuffer[i] < zMin || zbuffer[i] > zMax)
+ mask[i] = GL_FALSE;
+ else
+ anyPass = GL_TRUE;
+ }
+ }
+ }
+ else {
+ /* get 32-bit values */
+ GLuint zbuffer32[MAX_WIDTH], *zbuffer;
+ ASSERT(rb->DataType == GL_UNSIGNED_INT);
+ if (span->arrayMask & SPAN_XY) {
+ _swrast_get_values(ctx, rb, count, span->array->x, span->array->y,
+ zbuffer32, sizeof(GLuint));
+ zbuffer = zbuffer32;
+ }
+ else {
+ zbuffer = (GLuint*) rb->GetPointer(ctx, rb, span->x, span->y);
+ if (!zbuffer) {
+ rb->GetRow(ctx, rb, count, span->x, span->y, zbuffer32);
+ zbuffer = zbuffer32;
+ }
+ }
+ assert(zbuffer);
+
+ /* Now do the tests */
+ for (i = 0; i < count; i++) {
+ if (mask[i]) {
+ if (zbuffer[i] < zMin || zbuffer[i] > zMax)
+ mask[i] = GL_FALSE;
+ else
+ anyPass = GL_TRUE;
+ }
+ }
+ }
+
+ return anyPass;
+}
+
+
+
+/**********************************************************************/
+/***** Read Depth Buffer *****/
+/**********************************************************************/
+
+
+/**
+ * Read a span of depth values from the given depth renderbuffer, returning
+ * the values as GLfloats.
+ * This function does clipping to prevent reading outside the depth buffer's
+ * bounds. Though the clipping is redundant when we're called from
+ * _swrast_ReadPixels.
+ */
+void
+_swrast_read_depth_span_float( struct gl_context *ctx, struct gl_renderbuffer *rb,
+ GLint n, GLint x, GLint y, GLfloat depth[] )
+{
+ const GLfloat scale = 1.0F / ctx->DrawBuffer->_DepthMaxF;
+
+ if (!rb) {
+ /* really only doing this to prevent FP exceptions later */
+ memset(depth, 0, n * sizeof(GLfloat));
+ return;
+ }
+
+ ASSERT(rb->_BaseFormat == GL_DEPTH_COMPONENT);
+
+ if (y < 0 || y >= (GLint) rb->Height ||
+ x + n <= 0 || x >= (GLint) rb->Width) {
+ /* span is completely outside framebuffer */
+ memset(depth, 0, n * sizeof(GLfloat));
+ return;
+ }
+
+ if (x < 0) {
+ GLint dx = -x;
+ GLint i;
+ for (i = 0; i < dx; i++)
+ depth[i] = 0.0;
+ x = 0;
+ n -= dx;
+ depth += dx;
+ }
+ if (x + n > (GLint) rb->Width) {
+ GLint dx = x + n - (GLint) rb->Width;
+ GLint i;
+ for (i = 0; i < dx; i++)
+ depth[n - i - 1] = 0.0;
+ n -= dx;
+ }
+ if (n <= 0) {
+ return;
+ }
+
+ if (rb->DataType == GL_UNSIGNED_INT) {
+ GLuint temp[MAX_WIDTH];
+ GLint i;
+ rb->GetRow(ctx, rb, n, x, y, temp);
+ for (i = 0; i < n; i++) {
+ depth[i] = temp[i] * scale;
+ }
+ }
+ else if (rb->DataType == GL_UNSIGNED_SHORT) {
+ GLushort temp[MAX_WIDTH];
+ GLint i;
+ rb->GetRow(ctx, rb, n, x, y, temp);
+ for (i = 0; i < n; i++) {
+ depth[i] = temp[i] * scale;
+ }
+ }
+ else {
+ _mesa_problem(ctx, "Invalid depth renderbuffer data type");
+ }
+}
+
+/**
+ * Clear the given z/depth renderbuffer.
+ */
+void
+_swrast_clear_depth_buffer( struct gl_context *ctx, struct gl_renderbuffer *rb )
+{
+ GLuint clearValue;
+ GLint x, y, width, height;
+
+ if (!rb || !ctx->Depth.Mask) {
+ /* no depth buffer, or writing to it is disabled */
+ return;
+ }
+
+ /* compute integer clearing value */
+ if (ctx->Depth.Clear == 1.0) {
+ clearValue = ctx->DrawBuffer->_DepthMax;
+ }
+ else {
+ clearValue = (GLuint) (ctx->Depth.Clear * ctx->DrawBuffer->_DepthMaxF);
+ }
+
+ assert(rb->_BaseFormat == GL_DEPTH_COMPONENT);
+
+ /* compute region to clear */
+ x = ctx->DrawBuffer->_Xmin;
+ y = ctx->DrawBuffer->_Ymin;
+ width = ctx->DrawBuffer->_Xmax - ctx->DrawBuffer->_Xmin;
+ height = ctx->DrawBuffer->_Ymax - ctx->DrawBuffer->_Ymin;
+
+ if (rb->GetPointer(ctx, rb, 0, 0)) {
+ /* Direct buffer access is possible. Either this is just malloc'd
+ * memory, or perhaps the driver mmap'd the zbuffer memory.
+ */
+ if (rb->DataType == GL_UNSIGNED_SHORT) {
+ if ((clearValue & 0xff) == ((clearValue >> 8) & 0xff) &&
+ ((GLushort *) rb->GetPointer(ctx, rb, 0, 0) + width ==
+ (GLushort *) rb->GetPointer(ctx, rb, 0, 1))) {
+ /* optimized case */
+ GLushort *dst = (GLushort *) rb->GetPointer(ctx, rb, x, y);
+ GLuint len = width * height * sizeof(GLushort);
+ memset(dst, (clearValue & 0xff), len);
+ }
+ else {
+ /* general case */
+ GLint i, j;
+ for (i = 0; i < height; i++) {
+ GLushort *dst = (GLushort *) rb->GetPointer(ctx, rb, x, y + i);
+ for (j = 0; j < width; j++) {
+ dst[j] = clearValue;
+ }
+ }
+ }
+ }
+ else {
+ GLint i, j;
+ ASSERT(rb->DataType == GL_UNSIGNED_INT);
+ for (i = 0; i < height; i++) {
+ GLuint *dst = (GLuint *) rb->GetPointer(ctx, rb, x, y + i);
+ for (j = 0; j < width; j++) {
+ dst[j] = clearValue;
+ }
+ }
+ }
+ }
+ else {
+ /* Direct access not possible. Use PutRow to write new values. */
+ if (rb->DataType == GL_UNSIGNED_SHORT) {
+ GLushort clearVal16 = (GLushort) (clearValue & 0xffff);
+ GLint i;
+ for (i = 0; i < height; i++) {
+ rb->PutMonoRow(ctx, rb, width, x, y + i, &clearVal16, NULL);
+ }
+ }
+ else if (rb->DataType == GL_UNSIGNED_INT) {
+ GLint i;
+ ASSERT(sizeof(clearValue) == sizeof(GLuint));
+ for (i = 0; i < height; i++) {
+ rb->PutMonoRow(ctx, rb, width, x, y + i, &clearValue, NULL);
+ }
+ }
+ else {
+ _mesa_problem(ctx, "bad depth renderbuffer DataType");
+ }
+ }
+}
diff --git a/mesalib/src/mesa/swrast/s_depth.h b/mesalib/src/mesa/swrast/s_depth.h
index a35ed66bc..2caea82e0 100644
--- a/mesalib/src/mesa/swrast/s_depth.h
+++ b/mesalib/src/mesa/swrast/s_depth.h
@@ -1,61 +1,55 @@
-/*
- * 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 S_DEPTH_H
-#define S_DEPTH_H
-
-
-#include "main/glheader.h"
-#include "s_span.h"
-
-struct gl_context;
-struct gl_renderbuffer;
-
-
-extern GLuint
-_swrast_depth_test_span( struct gl_context *ctx, SWspan *span);
-
-extern void
-_swrast_depth_clamp_span( struct gl_context *ctx, SWspan *span );
-
-extern GLboolean
-_swrast_depth_bounds_test( struct gl_context *ctx, SWspan *span );
-
-
-extern void
-_swrast_read_depth_span_float( struct gl_context *ctx, struct gl_renderbuffer *rb,
- GLint n, GLint x, GLint y, GLfloat depth[] );
-
-
-extern void
-_swrast_read_depth_span_uint( struct gl_context *ctx, struct gl_renderbuffer *rb,
- GLint n, GLint x, GLint y, GLuint depth[] );
-
-
-extern void
-_swrast_clear_depth_buffer( struct gl_context *ctx, struct gl_renderbuffer *rb );
-
-
-#endif
+/*
+ * 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 S_DEPTH_H
+#define S_DEPTH_H
+
+
+#include "main/glheader.h"
+#include "s_span.h"
+
+struct gl_context;
+struct gl_renderbuffer;
+
+
+extern GLuint
+_swrast_depth_test_span( struct gl_context *ctx, SWspan *span);
+
+extern void
+_swrast_depth_clamp_span( struct gl_context *ctx, SWspan *span );
+
+extern GLboolean
+_swrast_depth_bounds_test( struct gl_context *ctx, SWspan *span );
+
+
+extern void
+_swrast_read_depth_span_float( struct gl_context *ctx, struct gl_renderbuffer *rb,
+ GLint n, GLint x, GLint y, GLfloat depth[] );
+
+extern void
+_swrast_clear_depth_buffer( struct gl_context *ctx, struct gl_renderbuffer *rb );
+
+
+#endif
diff --git a/mesalib/src/mesa/swrast/s_readpix.c b/mesalib/src/mesa/swrast/s_readpix.c
index 0d2e63f72..c36746caf 100644
--- a/mesalib/src/mesa/swrast/s_readpix.c
+++ b/mesalib/src/mesa/swrast/s_readpix.c
@@ -27,6 +27,7 @@
#include "main/colormac.h"
#include "main/feedback.h"
#include "main/formats.h"
+#include "main/format_unpack.h"
#include "main/image.h"
#include "main/imports.h"
#include "main/macros.h"
@@ -39,6 +40,57 @@
#include "s_span.h"
#include "s_stencil.h"
+/**
+ * Tries to implement glReadPixels() of GL_DEPTH_COMPONENT using memcpy of the
+ * mapping.
+ */
+static GLboolean
+fast_read_depth_pixels( struct gl_context *ctx,
+ GLint x, GLint y,
+ GLsizei width, GLsizei height,
+ GLenum type, GLvoid *pixels,
+ const struct gl_pixelstore_attrib *packing )
+{
+ struct gl_framebuffer *fb = ctx->ReadBuffer;
+ struct gl_renderbuffer *rb = fb->Attachment[BUFFER_DEPTH].Renderbuffer;
+ GLubyte *map, *dst;
+ int stride, dstStride, j;
+
+ if (ctx->Pixel.DepthScale != 1.0 || ctx->Pixel.DepthBias != 0.0)
+ return GL_FALSE;
+
+ if (packing->SwapBytes)
+ return GL_FALSE;
+
+ if (_mesa_get_format_datatype(rb->Format) != GL_UNSIGNED_INT)
+ return GL_FALSE;
+
+ if (!((type == GL_UNSIGNED_SHORT && rb->Format == MESA_FORMAT_Z16) ||
+ type == GL_UNSIGNED_INT))
+ return GL_FALSE;
+
+ ctx->Driver.MapRenderbuffer(ctx, rb, x, y, width, height, GL_MAP_READ_BIT,
+ &map, &stride);
+
+ dstStride = _mesa_image_row_stride(packing, width, GL_DEPTH_COMPONENT, type);
+ dst = (GLubyte *) _mesa_image_address2d(packing, pixels, width, height,
+ GL_DEPTH_COMPONENT, type, 0, 0);
+
+ for (j = 0; j < height; j++) {
+ if (type == GL_UNSIGNED_INT) {
+ _mesa_unpack_uint_z_row(rb->Format, width, map, (GLuint *)dst);
+ } else {
+ ASSERT(type == GL_UNSIGNED_SHORT && rb->Format == MESA_FORMAT_Z16);
+ memcpy(dst, map, width * 2);
+ }
+
+ map += stride;
+ dst += dstStride;
+ }
+ ctx->Driver.UnmapRenderbuffer(ctx, rb);
+
+ return GL_TRUE;
+}
/**
* Read pixels for format=GL_DEPTH_COMPONENT.
@@ -51,9 +103,10 @@ read_depth_pixels( struct gl_context *ctx,
const struct gl_pixelstore_attrib *packing )
{
struct gl_framebuffer *fb = ctx->ReadBuffer;
- struct gl_renderbuffer *rb = fb->_DepthBuffer;
- const GLboolean biasOrScale
- = ctx->Pixel.DepthScale != 1.0 || ctx->Pixel.DepthBias != 0.0;
+ struct gl_renderbuffer *rb = fb->Attachment[BUFFER_DEPTH].Renderbuffer;
+ GLint j;
+ GLubyte *dst, *map;
+ int dstStride, stride;
if (!rb)
return;
@@ -66,73 +119,27 @@ read_depth_pixels( struct gl_context *ctx,
/* width should never be > MAX_WIDTH since we did clipping earlier */
ASSERT(width <= MAX_WIDTH);
- if (type == GL_UNSIGNED_SHORT && fb->Visual.depthBits == 16
- && !biasOrScale && !packing->SwapBytes) {
- /* Special case: directly read 16-bit unsigned depth values. */
- GLint j;
- ASSERT(rb->Format == MESA_FORMAT_Z16);
- ASSERT(rb->DataType == GL_UNSIGNED_SHORT);
- for (j = 0; j < height; j++, y++) {
- void *dest =_mesa_image_address2d(packing, pixels, width, height,
- GL_DEPTH_COMPONENT, type, j, 0);
- rb->GetRow(ctx, rb, width, x, y, dest);
- }
- }
- else if (type == GL_UNSIGNED_INT && fb->Visual.depthBits == 24
- && !biasOrScale && !packing->SwapBytes) {
- /* Special case: directly read 24-bit unsigned depth values. */
- GLint j;
- ASSERT(rb->Format == MESA_FORMAT_X8_Z24 ||
- rb->Format == MESA_FORMAT_S8_Z24 ||
- rb->Format == MESA_FORMAT_Z24_X8 ||
- rb->Format == MESA_FORMAT_Z24_S8);
- ASSERT(rb->DataType == GL_UNSIGNED_INT ||
- rb->DataType == GL_UNSIGNED_INT_24_8);
- for (j = 0; j < height; j++, y++) {
- GLuint *dest = (GLuint *)
- _mesa_image_address2d(packing, pixels, width, height,
- GL_DEPTH_COMPONENT, type, j, 0);
- GLint k;
- rb->GetRow(ctx, rb, width, x, y, dest);
- /* convert range from 24-bit to 32-bit */
- if (rb->Format == MESA_FORMAT_X8_Z24 ||
- rb->Format == MESA_FORMAT_S8_Z24) {
- for (k = 0; k < width; k++) {
- /* Note: put MSByte of 24-bit value into LSByte */
- dest[k] = (dest[k] << 8) | ((dest[k] >> 16) & 0xff);
- }
- }
- else {
- for (k = 0; k < width; k++) {
- /* Note: fill in LSByte by replication */
- dest[k] = dest[k] | ((dest[k] >> 8) & 0xff);
- }
- }
- }
- }
- else if (type == GL_UNSIGNED_INT && fb->Visual.depthBits == 32
- && !biasOrScale && !packing->SwapBytes) {
- /* Special case: directly read 32-bit unsigned depth values. */
- GLint j;
- ASSERT(rb->Format == MESA_FORMAT_Z32);
- ASSERT(rb->DataType == GL_UNSIGNED_INT);
- for (j = 0; j < height; j++, y++) {
- void *dest = _mesa_image_address2d(packing, pixels, width, height,
- GL_DEPTH_COMPONENT, type, j, 0);
- rb->GetRow(ctx, rb, width, x, y, dest);
- }
- }
- else {
- /* General case (slower) */
- GLint j;
- for (j = 0; j < height; j++, y++) {
- GLfloat depthValues[MAX_WIDTH];
- GLvoid *dest = _mesa_image_address2d(packing, pixels, width, height,
- GL_DEPTH_COMPONENT, type, j, 0);
- _swrast_read_depth_span_float(ctx, rb, width, x, y, depthValues);
- _mesa_pack_depth_span(ctx, width, dest, type, depthValues, packing);
- }
+ if (fast_read_depth_pixels(ctx, x, y, width, height, type, pixels, packing))
+ return;
+
+ dstStride = _mesa_image_row_stride(packing, width, GL_DEPTH_COMPONENT, type);
+ dst = (GLubyte *) _mesa_image_address2d(packing, pixels, width, height,
+ GL_DEPTH_COMPONENT, type, 0, 0);
+
+ ctx->Driver.MapRenderbuffer(ctx, rb, x, y, width, height, GL_MAP_READ_BIT,
+ &map, &stride);
+
+ /* General case (slower) */
+ for (j = 0; j < height; j++, y++) {
+ GLfloat depthValues[MAX_WIDTH];
+ _mesa_unpack_float_z_row(rb->Format, width, map, depthValues);
+ _mesa_pack_depth_span(ctx, width, dst, type, depthValues, packing);
+
+ dst += dstStride;
+ map += stride;
}
+
+ ctx->Driver.UnmapRenderbuffer(ctx, rb);
}
@@ -147,8 +154,10 @@ read_stencil_pixels( struct gl_context *ctx,
const struct gl_pixelstore_attrib *packing )
{
struct gl_framebuffer *fb = ctx->ReadBuffer;
- struct gl_renderbuffer *rb = fb->_StencilBuffer;
+ struct gl_renderbuffer *rb = fb->Attachment[BUFFER_STENCIL].Renderbuffer;
GLint j;
+ GLubyte *map;
+ GLint stride;
if (!rb)
return;
@@ -156,149 +165,102 @@ read_stencil_pixels( struct gl_context *ctx,
/* width should never be > MAX_WIDTH since we did clipping earlier */
ASSERT(width <= MAX_WIDTH);
+ ctx->Driver.MapRenderbuffer(ctx, rb, x, y, width, height, GL_MAP_READ_BIT,
+ &map, &stride);
+
/* process image row by row */
- for (j=0;j<height;j++,y++) {
+ for (j = 0; j < height; j++) {
GLvoid *dest;
GLstencil stencil[MAX_WIDTH];
- _swrast_read_stencil_span(ctx, rb, width, x, y, stencil);
-
+ _mesa_unpack_ubyte_stencil_row(rb->Format, width, map, stencil);
dest = _mesa_image_address2d(packing, pixels, width, height,
GL_STENCIL_INDEX, type, j, 0);
_mesa_pack_stencil_span(ctx, width, type, dest, stencil, packing);
- }
-}
+ map += stride;
+ }
+ ctx->Driver.UnmapRenderbuffer(ctx, rb);
+}
-/**
- * Optimized glReadPixels for particular pixel formats when pixel
- * scaling, biasing, mapping, etc. are disabled.
- * \return GL_TRUE if success, GL_FALSE if unable to do the readpixels
- */
static GLboolean
-fast_read_rgba_pixels( struct gl_context *ctx,
- GLint x, GLint y,
- GLsizei width, GLsizei height,
- GLenum format, GLenum type,
- GLvoid *pixels,
- const struct gl_pixelstore_attrib *packing,
- GLbitfield transferOps)
+fast_read_rgba_pixels_memcpy( struct gl_context *ctx,
+ GLint x, GLint y,
+ GLsizei width, GLsizei height,
+ GLenum format, GLenum type,
+ GLvoid *pixels,
+ const struct gl_pixelstore_attrib *packing,
+ GLbitfield transferOps )
{
struct gl_renderbuffer *rb = ctx->ReadBuffer->_ColorReadBuffer;
+ GLubyte *dst, *map;
+ int dstStride, stride, j, texelBytes;
- if (!rb)
+ if (!_mesa_format_matches_format_and_type(rb->Format, format, type))
return GL_FALSE;
- ASSERT(rb->_BaseFormat == GL_RGBA ||
- rb->_BaseFormat == GL_RGB ||
- rb->_BaseFormat == GL_RG ||
- rb->_BaseFormat == GL_RED ||
- rb->_BaseFormat == GL_LUMINANCE ||
- rb->_BaseFormat == GL_INTENSITY ||
- rb->_BaseFormat == GL_LUMINANCE_ALPHA ||
- rb->_BaseFormat == GL_ALPHA);
-
- /* clipping should have already been done */
- ASSERT(x + width <= (GLint) rb->Width);
- ASSERT(y + height <= (GLint) rb->Height);
-
/* check for things we can't handle here */
- if (transferOps ||
- packing->SwapBytes ||
+ if (packing->SwapBytes ||
packing->LsbFirst) {
return GL_FALSE;
}
- if (format == GL_RGBA && rb->DataType == type) {
- const GLint dstStride = _mesa_image_row_stride(packing, width,
- format, type);
- GLubyte *dest
- = (GLubyte *) _mesa_image_address2d(packing, pixels, width, height,
- format, type, 0, 0);
- GLint row;
- ASSERT(rb->GetRow);
- for (row = 0; row < height; row++) {
- rb->GetRow(ctx, rb, width, x, y + row, dest);
- dest += dstStride;
- }
- return GL_TRUE;
- }
+ dstStride = _mesa_image_row_stride(packing, width, format, type);
+ dst = (GLubyte *) _mesa_image_address2d(packing, pixels, width, height,
+ format, type, 0, 0);
- if (format == GL_RGB &&
- rb->DataType == GL_UNSIGNED_BYTE &&
- type == GL_UNSIGNED_BYTE) {
- const GLint dstStride = _mesa_image_row_stride(packing, width,
- format, type);
- GLubyte *dest
- = (GLubyte *) _mesa_image_address2d(packing, pixels, width, height,
- format, type, 0, 0);
- GLint row;
- ASSERT(rb->GetRow);
- for (row = 0; row < height; row++) {
- GLubyte tempRow[MAX_WIDTH][4];
- GLint col;
- rb->GetRow(ctx, rb, width, x, y + row, tempRow);
- /* convert RGBA to RGB */
- for (col = 0; col < width; col++) {
- dest[col * 3 + 0] = tempRow[col][0];
- dest[col * 3 + 1] = tempRow[col][1];
- dest[col * 3 + 2] = tempRow[col][2];
- }
- dest += dstStride;
- }
- return GL_TRUE;
+ ctx->Driver.MapRenderbuffer(ctx, rb, x, y, width, height, GL_MAP_READ_BIT,
+ &map, &stride);
+
+ texelBytes = _mesa_get_format_bytes(rb->Format);
+ for (j = 0; j < height; j++) {
+ memcpy(dst, map, width * texelBytes);
+ dst += dstStride;
+ map += stride;
}
- /* not handled */
- return GL_FALSE;
-}
+ ctx->Driver.UnmapRenderbuffer(ctx, rb);
+ return GL_TRUE;
+}
-/**
- * When we're using a low-precision color buffer (like 16-bit 5/6/5)
- * we have to adjust our color values a bit to pass conformance.
- * The problem is when a 5 or 6-bit color value is converted to an 8-bit
- * value and then a floating point value, the floating point values don't
- * increment uniformly as the 5 or 6-bit value is incremented.
- *
- * This function adjusts floating point values to compensate.
- */
-static void
-adjust_colors(const struct gl_framebuffer *fb, GLuint n, GLfloat rgba[][4])
+static GLboolean
+slow_read_rgba_pixels( struct gl_context *ctx,
+ GLint x, GLint y,
+ GLsizei width, GLsizei height,
+ GLenum format, GLenum type,
+ GLvoid *pixels,
+ const struct gl_pixelstore_attrib *packing,
+ GLbitfield transferOps )
{
- const GLuint rShift = 8 - fb->Visual.redBits;
- const GLuint gShift = 8 - fb->Visual.greenBits;
- const GLuint bShift = 8 - fb->Visual.blueBits;
- GLfloat rScale = 1.0F / (GLfloat) ((1 << fb->Visual.redBits ) - 1);
- GLfloat gScale = 1.0F / (GLfloat) ((1 << fb->Visual.greenBits) - 1);
- GLfloat bScale = 1.0F / (GLfloat) ((1 << fb->Visual.blueBits ) - 1);
- GLuint i;
-
- if (fb->Visual.redBits == 0)
- rScale = 0;
- if (fb->Visual.greenBits == 0)
- gScale = 0;
- if (fb->Visual.blueBits == 0)
- bScale = 0;
-
- for (i = 0; i < n; i++) {
- GLint r, g, b;
- /* convert float back to ubyte */
- CLAMPED_FLOAT_TO_UBYTE(r, rgba[i][RCOMP]);
- CLAMPED_FLOAT_TO_UBYTE(g, rgba[i][GCOMP]);
- CLAMPED_FLOAT_TO_UBYTE(b, rgba[i][BCOMP]);
- /* using only the N most significant bits of the ubyte value, convert to
- * float in [0,1].
- */
- rgba[i][RCOMP] = (GLfloat) (r >> rShift) * rScale;
- rgba[i][GCOMP] = (GLfloat) (g >> gShift) * gScale;
- rgba[i][BCOMP] = (GLfloat) (b >> bShift) * bScale;
+ struct gl_renderbuffer *rb = ctx->ReadBuffer->_ColorReadBuffer;
+ GLfloat rgba[MAX_WIDTH][4];
+ GLubyte *dst, *map;
+ int dstStride, stride, j;
+
+ dstStride = _mesa_image_row_stride(packing, width, format, type);
+ dst = (GLubyte *) _mesa_image_address2d(packing, pixels, width, height,
+ format, type, 0, 0);
+
+ ctx->Driver.MapRenderbuffer(ctx, rb, x, y, width, height, GL_MAP_READ_BIT,
+ &map, &stride);
+
+ for (j = 0; j < height; j++) {
+ _mesa_unpack_rgba_row(_mesa_get_srgb_format_linear(rb->Format),
+ width, map, rgba);
+ _mesa_pack_rgba_span_float(ctx, width, rgba, format, type, dst,
+ packing, transferOps);
+
+ dst += dstStride;
+ map += stride;
}
-}
+ ctx->Driver.UnmapRenderbuffer(ctx, rb);
+ return GL_TRUE;
+}
/*
* Read R, G, B, A, RGB, L, or LA pixels.
@@ -310,7 +272,6 @@ read_rgba_pixels( struct gl_context *ctx,
GLenum format, GLenum type, GLvoid *pixels,
const struct gl_pixelstore_attrib *packing )
{
- SWcontext *swrast = SWRAST_CONTEXT(ctx);
GLbitfield transferOps = ctx->_ImageTransferState;
struct gl_framebuffer *fb = ctx->ReadBuffer;
struct gl_renderbuffer *rb = fb->_ColorReadBuffer;
@@ -323,43 +284,142 @@ read_rgba_pixels( struct gl_context *ctx,
transferOps |= IMAGE_CLAMP_BIT;
}
- /* Try the optimized path first. */
- if (fast_read_rgba_pixels(ctx, x, y, width, height,
- format, type, pixels, packing, transferOps)) {
- return; /* done! */
+ if (!transferOps) {
+ /* Try the optimized paths first. */
+ if (fast_read_rgba_pixels_memcpy(ctx, x, y, width, height,
+ format, type, pixels, packing,
+ transferOps)) {
+ return;
+ }
}
- /* width should never be > MAX_WIDTH since we did clipping earlier */
- ASSERT(width <= MAX_WIDTH);
+ slow_read_rgba_pixels(ctx, x, y, width, height,
+ format, type, pixels, packing, transferOps);
+}
- {
- const GLint dstStride
- = _mesa_image_row_stride(packing, width, format, type);
- GLfloat (*rgba)[4] = swrast->SpanArrays->attribs[FRAG_ATTRIB_COL0];
- GLint row;
- GLubyte *dst
- = (GLubyte *) _mesa_image_address2d(packing, pixels, width, height,
- format, type, 0, 0);
-
- for (row = 0; row < height; row++, y++) {
-
- /* Get float rgba pixels */
- _swrast_read_rgba_span(ctx, rb, width, x, y, GL_FLOAT, rgba);
-
- /* apply fudge factor for shallow color buffers */
- if ((fb->Visual.redBits < 8 && fb->Visual.redBits != 0) ||
- (fb->Visual.greenBits < 8 && fb->Visual.greenBits != 0) ||
- (fb->Visual.blueBits < 8 && fb->Visual.blueBits != 0)) {
- adjust_colors(fb, width, rgba);
- }
+/**
+ * For a packed depth/stencil buffer being read as depth/stencil, just memcpy the
+ * data (possibly swapping 8/24 vs 24/8 as we go).
+ */
+static GLboolean
+fast_read_depth_stencil_pixels(struct gl_context *ctx,
+ GLint x, GLint y,
+ GLsizei width, GLsizei height,
+ GLvoid *dst, int dstStride)
+{
+ struct gl_framebuffer *fb = ctx->ReadBuffer;
+ struct gl_renderbuffer *rb = fb->Attachment[BUFFER_DEPTH].Renderbuffer;
+ struct gl_renderbuffer *stencilRb = fb->Attachment[BUFFER_STENCIL].Renderbuffer;
+ GLubyte *map;
+ int stride, i;
+
+ if (rb != stencilRb)
+ return GL_FALSE;
+
+ if (rb->Format != MESA_FORMAT_Z24_S8 &&
+ rb->Format != MESA_FORMAT_S8_Z24)
+ return GL_FALSE;
+
+ ctx->Driver.MapRenderbuffer(ctx, rb, x, y, width, height, GL_MAP_READ_BIT,
+ &map, &stride);
+
+ for (i = 0; i < height; i++) {
+ _mesa_unpack_uint_24_8_depth_stencil_row(rb->Format, width,
+ map, (GLuint *)dst);
+ map += stride;
+ dst += dstStride;
+ }
+
+ ctx->Driver.UnmapRenderbuffer(ctx, rb);
+
+ return GL_TRUE;
+}
+
+
+/**
+ * For non-float-depth and stencil buffers being read as 24/8 depth/stencil,
+ * copy the integer data directly instead of converting depth to float and
+ * re-packing.
+ */
+static GLboolean
+fast_read_depth_stencil_pixels_separate(struct gl_context *ctx,
+ GLint x, GLint y,
+ GLsizei width, GLsizei height,
+ uint32_t *dst, int dstStride)
+{
+ struct gl_framebuffer *fb = ctx->ReadBuffer;
+ struct gl_renderbuffer *depthRb = fb->Attachment[BUFFER_DEPTH].Renderbuffer;
+ struct gl_renderbuffer *stencilRb = fb->Attachment[BUFFER_STENCIL].Renderbuffer;
+ GLubyte *depthMap, *stencilMap;
+ int depthStride, stencilStride, i, j;
+
+ if (_mesa_get_format_datatype(depthRb->Format) != GL_UNSIGNED_INT)
+ return GL_FALSE;
+
+ ctx->Driver.MapRenderbuffer(ctx, depthRb, x, y, width, height,
+ GL_MAP_READ_BIT, &depthMap, &depthStride);
+ ctx->Driver.MapRenderbuffer(ctx, stencilRb, x, y, width, height,
+ GL_MAP_READ_BIT, &stencilMap, &stencilStride);
+
+ for (j = 0; j < height; j++) {
+ GLstencil stencilVals[MAX_WIDTH];
- /* pack the row of RGBA pixels into user's buffer */
- _mesa_pack_rgba_span_float(ctx, width, rgba, format, type, dst,
- packing, transferOps);
+ _mesa_unpack_uint_z_row(depthRb->Format, width, depthMap, dst);
+ _mesa_unpack_ubyte_stencil_row(stencilRb->Format, width,
+ stencilMap, stencilVals);
- dst += dstStride;
+ for (i = 0; i < width; i++) {
+ dst[i] = (dst[i] & 0xffffff00) | stencilVals[i];
}
+
+ depthMap += depthStride;
+ stencilMap += stencilStride;
+ dst += dstStride / 4;
}
+
+ ctx->Driver.UnmapRenderbuffer(ctx, depthRb);
+ ctx->Driver.UnmapRenderbuffer(ctx, stencilRb);
+
+ return GL_TRUE;
+}
+
+static void
+slow_read_depth_stencil_pixels_separate(struct gl_context *ctx,
+ GLint x, GLint y,
+ GLsizei width, GLsizei height,
+ GLenum type,
+ const struct gl_pixelstore_attrib *packing,
+ GLubyte *dst, int dstStride)
+{
+ struct gl_framebuffer *fb = ctx->ReadBuffer;
+ struct gl_renderbuffer *depthRb = fb->Attachment[BUFFER_DEPTH].Renderbuffer;
+ struct gl_renderbuffer *stencilRb = fb->Attachment[BUFFER_STENCIL].Renderbuffer;
+ GLubyte *depthMap, *stencilMap;
+ int depthStride, stencilStride, j;
+
+ ctx->Driver.MapRenderbuffer(ctx, depthRb, x, y, width, height,
+ GL_MAP_READ_BIT, &depthMap, &depthStride);
+ ctx->Driver.MapRenderbuffer(ctx, stencilRb, x, y, width, height,
+ GL_MAP_READ_BIT, &stencilMap, &stencilStride);
+
+ for (j = 0; j < height; j++) {
+ GLstencil stencilVals[MAX_WIDTH];
+ GLfloat depthVals[MAX_WIDTH];
+
+ _mesa_unpack_float_z_row(depthRb->Format, width, depthMap, depthVals);
+ _mesa_unpack_ubyte_stencil_row(stencilRb->Format, width,
+ stencilMap, stencilVals);
+
+ _mesa_pack_depth_stencil_span(ctx, width, type, (GLuint *)dst,
+ depthVals, stencilVals, packing);
+
+ depthMap += depthStride;
+ stencilMap += stencilStride;
+ dst += dstStride;
+ }
+
+ ctx->Driver.UnmapRenderbuffer(ctx, depthRb);
+ ctx->Driver.UnmapRenderbuffer(ctx, stencilRb);
}
@@ -379,81 +439,31 @@ read_depth_stencil_pixels(struct gl_context *ctx,
= ctx->Pixel.DepthScale != 1.0 || ctx->Pixel.DepthBias != 0.0;
const GLboolean stencilTransfer = ctx->Pixel.IndexShift
|| ctx->Pixel.IndexOffset || ctx->Pixel.MapStencilFlag;
- struct gl_renderbuffer *depthRb, *stencilRb;
-
- depthRb = ctx->ReadBuffer->_DepthBuffer;
- stencilRb = ctx->ReadBuffer->_StencilBuffer;
-
- if (!depthRb || !stencilRb)
- return;
-
- depthRb = ctx->ReadBuffer->Attachment[BUFFER_DEPTH].Renderbuffer;
- stencilRb = ctx->ReadBuffer->Attachment[BUFFER_STENCIL].Renderbuffer;
-
- if (depthRb->_BaseFormat == GL_DEPTH_STENCIL_EXT &&
- depthRb->Format == MESA_FORMAT_Z24_S8 &&
- type == GL_UNSIGNED_INT_24_8 &&
- depthRb == stencilRb &&
- depthRb->GetRow && /* May be null if depthRb is a wrapper around
- * separate depth and stencil buffers. */
- !scaleOrBias &&
- !stencilTransfer) {
- /* This is the ideal case.
- * Reading GL_DEPTH_STENCIL pixels from combined depth/stencil buffer.
- * Plus, no pixel transfer ops to worry about!
- */
- GLint i;
- GLint dstStride = _mesa_image_row_stride(packing, width,
- GL_DEPTH_STENCIL_EXT, type);
- GLubyte *dst = (GLubyte *) _mesa_image_address2d(packing, pixels,
- width, height,
- GL_DEPTH_STENCIL_EXT,
- type, 0, 0);
- for (i = 0; i < height; i++) {
- depthRb->GetRow(ctx, depthRb, width, x, y + i, dst);
- dst += dstStride;
- }
- }
- else {
- /* Reading GL_DEPTH_STENCIL pixels from separate depth/stencil buffers,
- * or we need pixel transfer.
- */
- GLint i;
- depthRb = ctx->ReadBuffer->_DepthBuffer;
- stencilRb = ctx->ReadBuffer->_StencilBuffer;
-
- for (i = 0; i < height; i++) {
- GLstencil stencilVals[MAX_WIDTH];
-
- GLuint *depthStencilDst = (GLuint *)
- _mesa_image_address2d(packing, pixels, width, height,
- GL_DEPTH_STENCIL_EXT, type, i, 0);
-
- _swrast_read_stencil_span(ctx, stencilRb, width,
- x, y + i, stencilVals);
-
- if (!scaleOrBias && !stencilTransfer
- && ctx->ReadBuffer->Visual.depthBits == 24) {
- /* ideal case */
- GLuint zVals[MAX_WIDTH]; /* 24-bit values! */
- GLint j;
- ASSERT(depthRb->DataType == GL_UNSIGNED_INT);
- /* note, we've already been clipped */
- depthRb->GetRow(ctx, depthRb, width, x, y + i, zVals);
- for (j = 0; j < width; j++) {
- depthStencilDst[j] = (zVals[j] << 8) | (stencilVals[j] & 0xff);
- }
- }
- else {
- /* general case */
- GLfloat depthVals[MAX_WIDTH];
- _swrast_read_depth_span_float(ctx, depthRb, width, x, y + i,
- depthVals);
- _mesa_pack_depth_stencil_span(ctx, width, type, depthStencilDst,
- depthVals, stencilVals, packing);
- }
- }
+ GLubyte *dst;
+ int dstStride;
+
+ dst = (GLubyte *) _mesa_image_address2d(packing, pixels,
+ width, height,
+ GL_DEPTH_STENCIL_EXT,
+ type, 0, 0);
+ dstStride = _mesa_image_row_stride(packing, width,
+ GL_DEPTH_STENCIL_EXT, type);
+
+ /* Fast 24/8 reads. */
+ if (type == GL_UNSIGNED_INT_24_8 &&
+ !scaleOrBias && !stencilTransfer && !packing->SwapBytes) {
+ if (fast_read_depth_stencil_pixels(ctx, x, y, width, height,
+ dst, dstStride))
+ return;
+
+ if (fast_read_depth_stencil_pixels_separate(ctx, x, y, width, height,
+ (uint32_t *)dst, dstStride))
+ return;
}
+
+ slow_read_depth_stencil_pixels_separate(ctx, x, y, width, height,
+ type, packing,
+ dst, dstStride);
}
@@ -469,21 +479,11 @@ _swrast_ReadPixels( struct gl_context *ctx,
const struct gl_pixelstore_attrib *packing,
GLvoid *pixels )
{
- SWcontext *swrast = SWRAST_CONTEXT(ctx);
struct gl_pixelstore_attrib clippedPacking = *packing;
if (ctx->NewState)
_mesa_update_state(ctx);
- /* Need to do swrast_render_start() before clipping or anything else
- * since this is where a driver may grab the hw lock and get an updated
- * window size.
- */
- swrast_render_start(ctx);
-
- if (swrast->NewState)
- _swrast_validate_derived( ctx );
-
/* Do all needed clipping here, so that we can forget about it later */
if (_mesa_clip_readpixels(ctx, &x, &y, &width, &height, &clippedPacking)) {
@@ -512,6 +512,4 @@ _swrast_ReadPixels( struct gl_context *ctx,
_mesa_unmap_pbo_dest(ctx, &clippedPacking);
}
}
-
- swrast_render_finish(ctx);
}
diff --git a/mesalib/src/mesa/swrast/s_texfilter.c b/mesalib/src/mesa/swrast/s_texfilter.c
index 9de5c0276..566262557 100644
--- a/mesalib/src/mesa/swrast/s_texfilter.c
+++ b/mesalib/src/mesa/swrast/s_texfilter.c
@@ -3647,25 +3647,21 @@ _swrast_choose_texture_sample_func( struct gl_context *ctx,
const struct gl_texture_image *img = t->Image[0][t->BaseLevel];
const struct swrast_texture_image *swImg =
swrast_texture_image_const(img);
+ texture_sample_func func;
ASSERT(t->Sampler.MinFilter == GL_NEAREST);
+ func = &sample_nearest_2d;
if (t->Sampler.WrapS == GL_REPEAT &&
t->Sampler.WrapT == GL_REPEAT &&
swImg->_IsPowerOfTwo &&
- img->Border == 0 &&
- img->TexFormat == MESA_FORMAT_RGB888) {
- return &opt_sample_rgb_2d;
- }
- else if (t->Sampler.WrapS == GL_REPEAT &&
- t->Sampler.WrapT == GL_REPEAT &&
- swImg->_IsPowerOfTwo &&
- img->Border == 0 &&
- img->TexFormat == MESA_FORMAT_RGBA8888) {
- return &opt_sample_rgba_2d;
- }
- else {
- return &sample_nearest_2d;
+ img->Border == 0) {
+ if (img->TexFormat == MESA_FORMAT_RGB888)
+ func = &opt_sample_rgb_2d;
+ else if (img->TexFormat == MESA_FORMAT_RGBA8888)
+ func = &opt_sample_rgba_2d;
}
+
+ return func;
}
case GL_TEXTURE_3D:
if (needLambda) {
diff --git a/mesalib/src/mesa/swrast/s_texrender.c b/mesalib/src/mesa/swrast/s_texrender.c
index e2b921512..83e7a6a03 100644
--- a/mesalib/src/mesa/swrast/s_texrender.c
+++ b/mesalib/src/mesa/swrast/s_texrender.c
@@ -563,6 +563,7 @@ update_wrapper(struct gl_context *ctx, struct gl_renderbuffer_attachment *att)
trb->Base.Width = trb->TexImage->Base.Width;
trb->Base.Height = trb->TexImage->Base.Height;
+ trb->Base.RowStride = trb->TexImage->RowStride;
trb->Base.InternalFormat = trb->TexImage->Base.InternalFormat;
trb->Base.Format = trb->TexImage->Base.TexFormat;
diff --git a/mesalib/src/mesa/swrast/s_texture.c b/mesalib/src/mesa/swrast/s_texture.c
index fb1edb318..ba67c6fa4 100644
--- a/mesalib/src/mesa/swrast/s_texture.c
+++ b/mesalib/src/mesa/swrast/s_texture.c
@@ -359,3 +359,35 @@ _swrast_unmap_renderbuffers(struct gl_context *ctx)
if (ctx->ReadBuffer != ctx->DrawBuffer)
map_unmap_renderbuffers(ctx, ctx->ReadBuffer, GL_FALSE);
}
+
+
+
+/**
+ * Called via ctx->Driver.AllocTextureStorage()
+ * Just have to allocate memory for the texture images.
+ */
+GLboolean
+_swrast_AllocTextureStorage(struct gl_context *ctx,
+ struct gl_texture_object *texObj,
+ GLsizei levels, GLsizei width,
+ GLsizei height, GLsizei depth)
+{
+ const GLint numFaces = (texObj->Target == GL_TEXTURE_CUBE_MAP) ? 6 : 1;
+ GLint face, level;
+
+ for (face = 0; face < numFaces; face++) {
+ for (level = 0; level < levels; level++) {
+ struct gl_texture_image *texImage = texObj->Image[face][level];
+ if (!_swrast_alloc_texture_image_buffer(ctx, texImage,
+ texImage->TexFormat,
+ texImage->Width,
+ texImage->Height,
+ texImage->Depth)) {
+ return GL_FALSE;
+ }
+ }
+ }
+
+ return GL_TRUE;
+}
+
diff --git a/mesalib/src/mesa/swrast/swrast.h b/mesalib/src/mesa/swrast/swrast.h
index 06cc65158..08d565ba0 100644
--- a/mesalib/src/mesa/swrast/swrast.h
+++ b/mesalib/src/mesa/swrast/swrast.h
@@ -249,6 +249,13 @@ _swrast_finish_render_texture(struct gl_context *ctx,
+extern GLboolean
+_swrast_AllocTextureStorage(struct gl_context *ctx,
+ struct gl_texture_object *texObj,
+ GLsizei levels, GLsizei width,
+ GLsizei height, GLsizei depth);
+
+
/**
* The driver interface for the software rasterizer.
* XXX this may go away.
diff --git a/mesalib/src/mesa/vbo/vbo_split_copy.c b/mesalib/src/mesa/vbo/vbo_split_copy.c
index 40906e389..4dcf71ef5 100644
--- a/mesalib/src/mesa/vbo/vbo_split_copy.c
+++ b/mesalib/src/mesa/vbo/vbo_split_copy.c
@@ -518,6 +518,7 @@ replay_init( struct copy_context *copy )
dst->Ptr = copy->dstbuf + offset;
dst->Enabled = GL_TRUE;
dst->Normalized = src->Normalized;
+ dst->Integer = src->Integer;
dst->BufferObj = ctx->Shared->NullBufferObj;
dst->_ElementSize = src->_ElementSize;
dst->_MaxElement = copy->dstbuf_size; /* may be less! */