From 9d2ef284bb3ec419b8f53f56bff7f6dd5492ee4c Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Fri, 18 Mar 2011 11:06:47 -0700 Subject: [PATCH 001/420] r300/compiler: Use a 4-bit writemask in pair instructions We now use a 4-bit writemask for all instruction types, which makes it easier to write generic helper functions to manipulte writemasks. NOTE: This is a candidate for the 7.10 branch. --- src/mesa/drivers/dri/r300/compiler/r500_fragprog_emit.c | 3 ++- src/mesa/drivers/dri/r300/compiler/radeon_pair_translate.c | 2 +- src/mesa/drivers/dri/r300/compiler/radeon_program_pair.h | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/mesa/drivers/dri/r300/compiler/r500_fragprog_emit.c b/src/mesa/drivers/dri/r300/compiler/r500_fragprog_emit.c index 301b4446693..2f8d6e4d04b 100644 --- a/src/mesa/drivers/dri/r300/compiler/r500_fragprog_emit.c +++ b/src/mesa/drivers/dri/r300/compiler/r500_fragprog_emit.c @@ -259,7 +259,8 @@ static void emit_paired(struct r300_fragment_program_compiler *c, struct rc_pair } code->inst[ip].inst0 |= R500_INST_TEX_SEM_WAIT; - code->inst[ip].inst0 |= (inst->RGB.WriteMask << 11) | (inst->Alpha.WriteMask << 14); + code->inst[ip].inst0 |= (inst->RGB.WriteMask << 11); + code->inst[ip].inst0 |= inst->Alpha.WriteMask ? 1 << 14 : 0; code->inst[ip].inst0 |= (inst->RGB.OutputWriteMask << 15) | (inst->Alpha.OutputWriteMask << 18); if (inst->Nop) { code->inst[ip].inst0 |= R500_INST_NOP; diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_pair_translate.c b/src/mesa/drivers/dri/r300/compiler/radeon_pair_translate.c index 9e03eb1aca8..fed3a3f7642 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_pair_translate.c +++ b/src/mesa/drivers/dri/r300/compiler/radeon_pair_translate.c @@ -289,7 +289,7 @@ static void set_pair_instruction(struct r300_fragment_program_compiler *c, } if (needalpha) { - pair->Alpha.WriteMask |= GET_BIT(inst->DstReg.WriteMask, 3); + pair->Alpha.WriteMask |= (GET_BIT(inst->DstReg.WriteMask, 3) << 3); if (pair->Alpha.WriteMask) { pair->Alpha.DestIndex = inst->DstReg.Index; } diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_program_pair.h b/src/mesa/drivers/dri/r300/compiler/radeon_program_pair.h index 6708b16d29a..d1a435fc530 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_program_pair.h +++ b/src/mesa/drivers/dri/r300/compiler/radeon_program_pair.h @@ -71,7 +71,7 @@ struct rc_pair_instruction_arg { struct rc_pair_sub_instruction { unsigned int Opcode:8; unsigned int DestIndex:RC_REGISTER_INDEX_BITS; - unsigned int WriteMask:3; + unsigned int WriteMask:4; unsigned int Target:2; unsigned int OutputWriteMask:3; unsigned int DepthWriteMask:1; From 83ff3809f1bf081964dc63ae48dc91f031e0a859 Mon Sep 17 00:00:00 2001 From: Christoph Bumiller Date: Thu, 17 Mar 2011 17:07:30 +0100 Subject: [PATCH 002/420] nv50,nvc0: implement texture barrier --- src/gallium/drivers/nv50/nv50_context.c | 12 ++++++++++++ src/gallium/drivers/nvc0/nvc0_context.c | 10 ++++++++++ 2 files changed, 22 insertions(+) diff --git a/src/gallium/drivers/nv50/nv50_context.c b/src/gallium/drivers/nv50/nv50_context.c index 930cee7c1e7..632ca4daf74 100644 --- a/src/gallium/drivers/nv50/nv50_context.c +++ b/src/gallium/drivers/nv50/nv50_context.c @@ -46,6 +46,17 @@ nv50_flush(struct pipe_context *pipe, FIRE_RING(screen->channel); } +static void +nv50_texture_barrier(struct pipe_context *pipe) +{ + struct nouveau_channel *chan = nv50_context(pipe)->screen->base.channel; + + BEGIN_RING(chan, RING_3D(SERIALIZE), 1); + OUT_RING (chan, 0); + BEGIN_RING(chan, RING_3D(TEX_CACHE_CTL), 1); + OUT_RING (chan, 0x20); +} + void nv50_default_flush_notify(struct nouveau_channel *chan) { @@ -125,6 +136,7 @@ nv50_create(struct pipe_screen *pscreen, void *priv) pipe->clear = nv50_clear; pipe->flush = nv50_flush; + pipe->texture_barrier = nv50_texture_barrier; if (!screen->cur_ctx) screen->cur_ctx = nv50; diff --git a/src/gallium/drivers/nvc0/nvc0_context.c b/src/gallium/drivers/nvc0/nvc0_context.c index 5d2168e600b..2f2a3da7c44 100644 --- a/src/gallium/drivers/nvc0/nvc0_context.c +++ b/src/gallium/drivers/nvc0/nvc0_context.c @@ -46,6 +46,15 @@ nvc0_flush(struct pipe_context *pipe, FIRE_RING(screen->channel); } +static void +nvc0_texture_barrier(struct pipe_context *pipe) +{ + struct nouveau_channel *chan = nvc0_context(pipe)->screen->base.channel; + + IMMED_RING(chan, RING_3D(SERIALIZE), 0); + IMMED_RING(chan, RING_3D(TEX_CACHE_CTL), 0); +} + static void nvc0_context_unreference_resources(struct nvc0_context *nvc0) { @@ -128,6 +137,7 @@ nvc0_create(struct pipe_screen *pscreen, void *priv) pipe->clear = nvc0_clear; pipe->flush = nvc0_flush; + pipe->texture_barrier = nvc0_texture_barrier; if (!screen->cur_ctx) screen->cur_ctx = nvc0; From 79f4281a52e18f7068543547631acb22c29909c2 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Sat, 19 Mar 2011 14:17:40 -0600 Subject: [PATCH 003/420] mesa: 80-column wrapping --- src/mesa/main/bufferobj.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/mesa/main/bufferobj.c b/src/mesa/main/bufferobj.c index 3343bb2f40e..b4fadf39853 100644 --- a/src/mesa/main/bufferobj.c +++ b/src/mesa/main/bufferobj.c @@ -216,7 +216,8 @@ _mesa_new_buffer_object( struct gl_context *ctx, GLuint name, GLenum target ) * Default callback for the \c dd_function_table::DeleteBuffer() hook. */ static void -_mesa_delete_buffer_object( struct gl_context *ctx, struct gl_buffer_object *bufObj ) +_mesa_delete_buffer_object(struct gl_context *ctx, + struct gl_buffer_object *bufObj) { (void) ctx; @@ -414,7 +415,8 @@ _mesa_buffer_subdata( struct gl_context *ctx, GLenum target, GLintptrARB offset, * \sa glBufferGetSubDataARB, dd_function_table::GetBufferSubData. */ static void -_mesa_buffer_get_subdata( struct gl_context *ctx, GLenum target, GLintptrARB offset, +_mesa_buffer_get_subdata( struct gl_context *ctx, + GLenum target, GLintptrARB offset, GLsizeiptrARB size, GLvoid * data, struct gl_buffer_object * bufObj ) { From 630d925666766f1c5c9ee2fc31ed307c987d76ff Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Sat, 19 Mar 2011 14:17:40 -0600 Subject: [PATCH 004/420] mesa: rename functions to follow Mesa conventions --- src/mesa/main/bufferobj.c | 64 ++++++++++++++++++--------------------- 1 file changed, 29 insertions(+), 35 deletions(-) diff --git a/src/mesa/main/bufferobj.c b/src/mesa/main/bufferobj.c index b4fadf39853..c969a8da47d 100644 --- a/src/mesa/main/bufferobj.c +++ b/src/mesa/main/bufferobj.c @@ -1538,7 +1538,7 @@ _mesa_FlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length) #if FEATURE_APPLE_object_purgeable static GLenum -_mesa_BufferObjectPurgeable(struct gl_context *ctx, GLuint name, GLenum option) +buffer_object_purgeable(struct gl_context *ctx, GLuint name, GLenum option) { struct gl_buffer_object *bufObj; GLenum retval; @@ -1571,7 +1571,7 @@ _mesa_BufferObjectPurgeable(struct gl_context *ctx, GLuint name, GLenum option) static GLenum -_mesa_RenderObjectPurgeable(struct gl_context *ctx, GLuint name, GLenum option) +renderbuffer_purgeable(struct gl_context *ctx, GLuint name, GLenum option) { struct gl_renderbuffer *bufObj; GLenum retval; @@ -1600,7 +1600,7 @@ _mesa_RenderObjectPurgeable(struct gl_context *ctx, GLuint name, GLenum option) static GLenum -_mesa_TextureObjectPurgeable(struct gl_context *ctx, GLuint name, GLenum option) +texture_object_purgeable(struct gl_context *ctx, GLuint name, GLenum option) { struct gl_texture_object *bufObj; GLenum retval; @@ -1656,13 +1656,13 @@ _mesa_ObjectPurgeableAPPLE(GLenum objectType, GLuint name, GLenum option) switch (objectType) { case GL_TEXTURE: - retval = _mesa_TextureObjectPurgeable (ctx, name, option); + retval = texture_object_purgeable(ctx, name, option); break; case GL_RENDERBUFFER_EXT: - retval = _mesa_RenderObjectPurgeable (ctx, name, option); + retval = renderbuffer_purgeable(ctx, name, option); break; case GL_BUFFER_OBJECT_APPLE: - retval = _mesa_BufferObjectPurgeable (ctx, name, option); + retval = buffer_object_purgeable(ctx, name, option); break; default: _mesa_error(ctx, GL_INVALID_ENUM, @@ -1681,7 +1681,7 @@ _mesa_ObjectPurgeableAPPLE(GLenum objectType, GLuint name, GLenum option) static GLenum -_mesa_BufferObjectUnpurgeable(struct gl_context *ctx, GLuint name, GLenum option) +buffer_object_unpurgeable(struct gl_context *ctx, GLuint name, GLenum option) { struct gl_buffer_object *bufObj; GLenum retval; @@ -1711,7 +1711,7 @@ _mesa_BufferObjectUnpurgeable(struct gl_context *ctx, GLuint name, GLenum option static GLenum -_mesa_RenderObjectUnpurgeable(struct gl_context *ctx, GLuint name, GLenum option) +renderbuffer_unpurgeable(struct gl_context *ctx, GLuint name, GLenum option) { struct gl_renderbuffer *bufObj; GLenum retval; @@ -1741,7 +1741,7 @@ _mesa_RenderObjectUnpurgeable(struct gl_context *ctx, GLuint name, GLenum option static GLenum -_mesa_TextureObjectUnpurgeable(struct gl_context *ctx, GLuint name, GLenum option) +texture_object_unpurgeable(struct gl_context *ctx, GLuint name, GLenum option) { struct gl_texture_object *bufObj; GLenum retval; @@ -1796,11 +1796,11 @@ _mesa_ObjectUnpurgeableAPPLE(GLenum objectType, GLuint name, GLenum option) switch (objectType) { case GL_BUFFER_OBJECT_APPLE: - return _mesa_BufferObjectUnpurgeable(ctx, name, option); + return buffer_object_unpurgeable(ctx, name, option); case GL_TEXTURE: - return _mesa_TextureObjectUnpurgeable(ctx, name, option); + return texture_object_unpurgeable(ctx, name, option); case GL_RENDERBUFFER_EXT: - return _mesa_RenderObjectUnpurgeable(ctx, name, option); + return renderbuffer_unpurgeable(ctx, name, option); default: _mesa_error(ctx, GL_INVALID_ENUM, "glObjectUnpurgeable(name = 0x%x) invalid type: %d", @@ -1811,12 +1811,10 @@ _mesa_ObjectUnpurgeableAPPLE(GLenum objectType, GLuint name, GLenum option) static void -_mesa_GetBufferObjectParameterivAPPLE(struct gl_context *ctx, GLuint name, - GLenum pname, GLint* params) +get_buffer_object_parameteriv(struct gl_context *ctx, GLuint name, + GLenum pname, GLint *params) { - struct gl_buffer_object *bufObj; - - bufObj = _mesa_lookup_bufferobj(ctx, name); + struct gl_buffer_object *bufObj = _mesa_lookup_bufferobj(ctx, name); if (!bufObj) { _mesa_error(ctx, GL_INVALID_VALUE, "glGetObjectParameteriv(name = 0x%x) invalid object", name); @@ -1837,13 +1835,11 @@ _mesa_GetBufferObjectParameterivAPPLE(struct gl_context *ctx, GLuint name, static void -_mesa_GetRenderObjectParameterivAPPLE(struct gl_context *ctx, GLuint name, - GLenum pname, GLint* params) +get_renderbuffer_parameteriv(struct gl_context *ctx, GLuint name, + GLenum pname, GLint *params) { - struct gl_renderbuffer *bufObj; - - bufObj = _mesa_lookup_renderbuffer(ctx, name); - if (!bufObj) { + struct gl_renderbuffer *rb = _mesa_lookup_renderbuffer(ctx, name); + if (!rb) { _mesa_error(ctx, GL_INVALID_VALUE, "glObjectUnpurgeable(name = 0x%x)", name); return; @@ -1851,7 +1847,7 @@ _mesa_GetRenderObjectParameterivAPPLE(struct gl_context *ctx, GLuint name, switch (pname) { case GL_PURGEABLE_APPLE: - *params = bufObj->Purgeable; + *params = rb->Purgeable; break; default: _mesa_error(ctx, GL_INVALID_ENUM, @@ -1863,13 +1859,11 @@ _mesa_GetRenderObjectParameterivAPPLE(struct gl_context *ctx, GLuint name, static void -_mesa_GetTextureObjectParameterivAPPLE(struct gl_context *ctx, GLuint name, - GLenum pname, GLint* params) +get_texture_object_parameteriv(struct gl_context *ctx, GLuint name, + GLenum pname, GLint *params) { - struct gl_texture_object *bufObj; - - bufObj = _mesa_lookup_texture(ctx, name); - if (!bufObj) { + struct gl_texture_object *texObj = _mesa_lookup_texture(ctx, name); + if (!texObj) { _mesa_error(ctx, GL_INVALID_VALUE, "glObjectUnpurgeable(name = 0x%x)", name); return; @@ -1877,7 +1871,7 @@ _mesa_GetTextureObjectParameterivAPPLE(struct gl_context *ctx, GLuint name, switch (pname) { case GL_PURGEABLE_APPLE: - *params = bufObj->Purgeable; + *params = texObj->Purgeable; break; default: _mesa_error(ctx, GL_INVALID_ENUM, @@ -1890,7 +1884,7 @@ _mesa_GetTextureObjectParameterivAPPLE(struct gl_context *ctx, GLuint name, void GLAPIENTRY _mesa_GetObjectParameterivAPPLE(GLenum objectType, GLuint name, GLenum pname, - GLint* params) + GLint *params) { GET_CURRENT_CONTEXT(ctx); @@ -1902,13 +1896,13 @@ _mesa_GetObjectParameterivAPPLE(GLenum objectType, GLuint name, GLenum pname, switch (objectType) { case GL_TEXTURE: - _mesa_GetTextureObjectParameterivAPPLE (ctx, name, pname, params); + get_texture_object_parameteriv(ctx, name, pname, params); break; case GL_BUFFER_OBJECT_APPLE: - _mesa_GetBufferObjectParameterivAPPLE (ctx, name, pname, params); + get_buffer_object_parameteriv(ctx, name, pname, params); break; case GL_RENDERBUFFER_EXT: - _mesa_GetRenderObjectParameterivAPPLE (ctx, name, pname, params); + get_renderbuffer_parameteriv(ctx, name, pname, params); break; default: _mesa_error(ctx, GL_INVALID_ENUM, From 9459cc593c7fc7f8e5e0a7e9e673c075d91ae057 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Sat, 19 Mar 2011 14:17:41 -0600 Subject: [PATCH 005/420] mesa: 80-column wrapping --- src/mesa/main/arrayobj.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/mesa/main/arrayobj.c b/src/mesa/main/arrayobj.c index 46010223370..d357ffb421d 100644 --- a/src/mesa/main/arrayobj.c +++ b/src/mesa/main/arrayobj.c @@ -497,7 +497,8 @@ _mesa_DeleteVertexArraysAPPLE(GLsizei n, const GLuint *ids) * \param vboOnly Will arrays have to reside in VBOs? */ static void -gen_vertex_arrays(struct gl_context *ctx, GLsizei n, GLuint *arrays, GLboolean vboOnly) +gen_vertex_arrays(struct gl_context *ctx, GLsizei n, GLuint *arrays, + GLboolean vboOnly) { GLuint first; GLint i; From aafcbd2cf726e9f300d6a9cdfd62ee0fd64f85c9 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Sat, 19 Mar 2011 14:17:41 -0600 Subject: [PATCH 006/420] mesa: replace macro with function --- src/mesa/main/fog.c | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/src/mesa/main/fog.c b/src/mesa/main/fog.c index fd64bd1fd89..439232248e6 100644 --- a/src/mesa/main/fog.c +++ b/src/mesa/main/fog.c @@ -79,12 +79,17 @@ _mesa_Fogiv(GLenum pname, const GLint *params ) } -#define UPDATE_FOG_SCALE(ctx) do {\ - if (ctx->Fog.End == ctx->Fog.Start)\ - ctx->Fog._Scale = 1.0f;\ - else\ - ctx->Fog._Scale = 1.0f / (ctx->Fog.End - ctx->Fog.Start);\ - } while(0) +/** + * Update the gl_fog_attrib::_Scale field. + */ +static void +update_fog_scale(struct gl_context *ctx) +{ + if (ctx->Fog.End == ctx->Fog.Start) + ctx->Fog._Scale = 1.0f; + else + ctx->Fog._Scale = 1.0f / (ctx->Fog.End - ctx->Fog.Start); +} void GLAPIENTRY @@ -126,14 +131,14 @@ _mesa_Fogfv( GLenum pname, const GLfloat *params ) return; FLUSH_VERTICES(ctx, _NEW_FOG); ctx->Fog.Start = *params; - UPDATE_FOG_SCALE(ctx); + update_fog_scale(ctx); break; case GL_FOG_END: if (ctx->Fog.End == *params) return; FLUSH_VERTICES(ctx, _NEW_FOG); ctx->Fog.End = *params; - UPDATE_FOG_SCALE(ctx); + update_fog_scale(ctx); break; case GL_FOG_INDEX: if (ctx->Fog.Index == *params) From 957552fce0c272b476d89bee374724e8a94a8d8a Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Sat, 19 Mar 2011 14:17:41 -0600 Subject: [PATCH 007/420] mesa: 80-column wrapping --- src/mesa/main/readpix.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mesa/main/readpix.c b/src/mesa/main/readpix.c index 6e09a52c88a..a172a0000f5 100644 --- a/src/mesa/main/readpix.c +++ b/src/mesa/main/readpix.c @@ -44,8 +44,8 @@ * \return GL_TRUE if error detected, GL_FALSE if no errors */ GLboolean -_mesa_error_check_format_type(struct gl_context *ctx, GLenum format, GLenum type, - GLboolean drawing) +_mesa_error_check_format_type(struct gl_context *ctx, GLenum format, + GLenum type, GLboolean drawing) { const char *readDraw = drawing ? "Draw" : "Read"; const GLboolean reading = !drawing; From ec4a21b0e21e8c706f26db5308fb267b6979b631 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Sat, 19 Mar 2011 14:17:41 -0600 Subject: [PATCH 008/420] mesa: consolidate clip plane update code --- src/mesa/main/clip.c | 28 ++++++++++++++-------------- src/mesa/main/clip.h | 5 +++++ src/mesa/main/enable.c | 13 ++----------- 3 files changed, 21 insertions(+), 25 deletions(-) diff --git a/src/mesa/main/clip.c b/src/mesa/main/clip.c index be8ce4278cd..ba2028cf2e1 100644 --- a/src/mesa/main/clip.c +++ b/src/mesa/main/clip.c @@ -32,11 +32,20 @@ #include "math/m_matrix.h" +/** + * Update derived clip plane state. + */ +void +_mesa_update_clip_plane(struct gl_context *ctx, GLuint plane) +{ + if (_math_matrix_is_dirty(ctx->ProjectionMatrixStack.Top)) + _math_matrix_analyse( ctx->ProjectionMatrixStack.Top ); -/**********************************************************************/ -/* Get/Set User clip-planes. */ -/**********************************************************************/ - + /* Clip-Space Plane = Eye-Space Plane * Projection Matrix */ + _mesa_transform_vector(ctx->Transform._ClipUserPlane[plane], + ctx->Transform.EyeUserPlane[plane], + ctx->ProjectionMatrixStack.Top->inv); +} void GLAPIENTRY @@ -78,17 +87,8 @@ _mesa_ClipPlane( GLenum plane, const GLdouble *eq ) FLUSH_VERTICES(ctx, _NEW_TRANSFORM); COPY_4FV(ctx->Transform.EyeUserPlane[p], equation); - /* Update derived state. This state also depends on the projection - * matrix, and is recalculated on changes to the projection matrix by - * code in _mesa_update_state(). - */ if (ctx->Transform.ClipPlanesEnabled & (1 << p)) { - if (_math_matrix_is_dirty(ctx->ProjectionMatrixStack.Top)) - _math_matrix_analyse( ctx->ProjectionMatrixStack.Top ); - - _mesa_transform_vector( ctx->Transform._ClipUserPlane[p], - ctx->Transform.EyeUserPlane[p], - ctx->ProjectionMatrixStack.Top->inv ); + _mesa_update_clip_plane(ctx, p); } if (ctx->Driver.ClipPlane) diff --git a/src/mesa/main/clip.h b/src/mesa/main/clip.h index 11431dcfce0..a8e6d768758 100644 --- a/src/mesa/main/clip.h +++ b/src/mesa/main/clip.h @@ -33,6 +33,11 @@ #include "glheader.h" +struct gl_context; + +extern void +_mesa_update_clip_plane(struct gl_context *ctx, GLuint plane); + extern void GLAPIENTRY _mesa_ClipPlane( GLenum plane, const GLdouble *equation ); diff --git a/src/mesa/main/enable.c b/src/mesa/main/enable.c index f247092410b..60255d78eaf 100644 --- a/src/mesa/main/enable.c +++ b/src/mesa/main/enable.c @@ -29,6 +29,7 @@ #include "glheader.h" +#include "clip.h" #include "context.h" #include "enable.h" #include "light.h" @@ -310,17 +311,7 @@ _mesa_set_enable(struct gl_context *ctx, GLenum cap, GLboolean state) if (state) { ctx->Transform.ClipPlanesEnabled |= (1 << p); - - if (_math_matrix_is_dirty(ctx->ProjectionMatrixStack.Top)) - _math_matrix_analyse( ctx->ProjectionMatrixStack.Top ); - - /* This derived state also calculated in clip.c and - * from _mesa_update_state() on changes to EyeUserPlane - * and ctx->ProjectionMatrix respectively. - */ - _mesa_transform_vector( ctx->Transform._ClipUserPlane[p], - ctx->Transform.EyeUserPlane[p], - ctx->ProjectionMatrixStack.Top->inv ); + _mesa_update_clip_plane(ctx, p); } else { ctx->Transform.ClipPlanesEnabled &= ~(1 << p); From 933b99f113c97588b616daad2fb19456eece96e2 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Sat, 19 Mar 2011 14:17:41 -0600 Subject: [PATCH 009/420] mesa: consolidate enable/disable code for GL_TEXTURE_GEN_S/T/R/Q --- src/mesa/main/enable.c | 80 ++++++------------------------------------ 1 file changed, 11 insertions(+), 69 deletions(-) diff --git a/src/mesa/main/enable.c b/src/mesa/main/enable.c index 60255d78eaf..38e3322f978 100644 --- a/src/mesa/main/enable.c +++ b/src/mesa/main/enable.c @@ -603,55 +603,17 @@ _mesa_set_enable(struct gl_context *ctx, GLenum cap, GLboolean state) return; } break; + case GL_TEXTURE_GEN_S: + case GL_TEXTURE_GEN_T: + case GL_TEXTURE_GEN_R: case GL_TEXTURE_GEN_Q: { struct gl_texture_unit *texUnit = get_texcoord_unit(ctx); if (texUnit) { - GLuint newenabled = texUnit->TexGenEnabled & ~Q_BIT; + GLbitfield coordBit = S_BIT << (cap - GL_TEXTURE_GEN_S); + GLbitfield newenabled = texUnit->TexGenEnabled & ~coordBit; if (state) - newenabled |= Q_BIT; - if (texUnit->TexGenEnabled == newenabled) - return; - FLUSH_VERTICES(ctx, _NEW_TEXTURE); - texUnit->TexGenEnabled = newenabled; - } - } - break; - case GL_TEXTURE_GEN_R: - { - struct gl_texture_unit *texUnit = get_texcoord_unit(ctx); - if (texUnit) { - GLuint newenabled = texUnit->TexGenEnabled & ~R_BIT; - if (state) - newenabled |= R_BIT; - if (texUnit->TexGenEnabled == newenabled) - return; - FLUSH_VERTICES(ctx, _NEW_TEXTURE); - texUnit->TexGenEnabled = newenabled; - } - } - break; - case GL_TEXTURE_GEN_S: - { - struct gl_texture_unit *texUnit = get_texcoord_unit(ctx); - if (texUnit) { - GLuint newenabled = texUnit->TexGenEnabled & ~S_BIT; - if (state) - newenabled |= S_BIT; - if (texUnit->TexGenEnabled == newenabled) - return; - FLUSH_VERTICES(ctx, _NEW_TEXTURE); - texUnit->TexGenEnabled = newenabled; - } - } - break; - case GL_TEXTURE_GEN_T: - { - struct gl_texture_unit *texUnit = get_texcoord_unit(ctx); - if (texUnit) { - GLuint newenabled = texUnit->TexGenEnabled & ~T_BIT; - if (state) - newenabled |= T_BIT; + newenabled |= coordBit; if (texUnit->TexGenEnabled == newenabled) return; FLUSH_VERTICES(ctx, _NEW_TEXTURE); @@ -1222,35 +1184,15 @@ _mesa_IsEnabled( GLenum cap ) return is_texture_enabled(ctx, TEXTURE_2D_BIT); case GL_TEXTURE_3D: return is_texture_enabled(ctx, TEXTURE_3D_BIT); + case GL_TEXTURE_GEN_S: + case GL_TEXTURE_GEN_T: + case GL_TEXTURE_GEN_R: case GL_TEXTURE_GEN_Q: { const struct gl_texture_unit *texUnit = get_texcoord_unit(ctx); if (texUnit) { - return (texUnit->TexGenEnabled & Q_BIT) ? GL_TRUE : GL_FALSE; - } - } - return GL_FALSE; - case GL_TEXTURE_GEN_R: - { - const struct gl_texture_unit *texUnit = get_texcoord_unit(ctx); - if (texUnit) { - return (texUnit->TexGenEnabled & R_BIT) ? GL_TRUE : GL_FALSE; - } - } - return GL_FALSE; - case GL_TEXTURE_GEN_S: - { - const struct gl_texture_unit *texUnit = get_texcoord_unit(ctx); - if (texUnit) { - return (texUnit->TexGenEnabled & S_BIT) ? GL_TRUE : GL_FALSE; - } - } - return GL_FALSE; - case GL_TEXTURE_GEN_T: - { - const struct gl_texture_unit *texUnit = get_texcoord_unit(ctx); - if (texUnit) { - return (texUnit->TexGenEnabled & T_BIT) ? GL_TRUE : GL_FALSE; + GLbitfield coordBit = S_BIT << (cap - GL_TEXTURE_GEN_S); + return (texUnit->TexGenEnabled & coordBit) ? GL_TRUE : GL_FALSE; } } return GL_FALSE; From 912c4ec6dfda03d06b6edc59cf62f1a61f22ee29 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Sat, 19 Mar 2011 14:17:41 -0600 Subject: [PATCH 010/420] gl.h: reorder some #defines --- include/GL/gl.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/GL/gl.h b/include/GL/gl.h index 8e5f1383ffa..bca550fa2d4 100644 --- a/include/GL/gl.h +++ b/include/GL/gl.h @@ -655,6 +655,8 @@ typedef double GLclampd; /* double precision float in [0,1] */ #define GL_TEXTURE_ENV_COLOR 0x2201 #define GL_TEXTURE_GEN_S 0x0C60 #define GL_TEXTURE_GEN_T 0x0C61 +#define GL_TEXTURE_GEN_R 0x0C62 +#define GL_TEXTURE_GEN_Q 0x0C63 #define GL_TEXTURE_GEN_MODE 0x2500 #define GL_TEXTURE_BORDER_COLOR 0x1004 #define GL_TEXTURE_WIDTH 0x1000 @@ -685,8 +687,6 @@ typedef double GLclampd; /* double precision float in [0,1] */ #define GL_T 0x2001 #define GL_R 0x2002 #define GL_Q 0x2003 -#define GL_TEXTURE_GEN_R 0x0C62 -#define GL_TEXTURE_GEN_Q 0x0C63 /* Utility */ #define GL_VENDOR 0x1F00 From d0d767ad4c6ee13c72577b072b24aa06841f6357 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Sat, 19 Mar 2011 14:17:41 -0600 Subject: [PATCH 011/420] mesa: 80-column wrapping, update comment --- src/mesa/main/enable.c | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/mesa/main/enable.c b/src/mesa/main/enable.c index 38e3322f978..2ec19c8afbd 100644 --- a/src/mesa/main/enable.c +++ b/src/mesa/main/enable.c @@ -214,8 +214,8 @@ _mesa_DisableClientState( GLenum cap ) /** * Return pointer to current texture unit for setting/getting coordinate * state. - * Note that we'll set GL_INVALID_OPERATION if the active texture unit is - * higher than the number of supported coordinate units. And we'll return NULL. + * Note that we'll set GL_INVALID_OPERATION and return NULL if the active + * texture unit is higher than the number of supported coordinate units. */ static struct gl_texture_unit * get_texcoord_unit(struct gl_context *ctx) @@ -287,7 +287,8 @@ _mesa_set_enable(struct gl_context *ctx, GLenum cap, GLboolean state) break; case GL_BLEND: { - GLbitfield newEnabled = state * ((1 << ctx->Const.MaxDrawBuffers) - 1); + GLbitfield newEnabled = + state * ((1 << ctx->Const.MaxDrawBuffers) - 1); if (newEnabled != ctx->Color.BlendEnabled) { FLUSH_VERTICES(ctx, _NEW_COLOR); ctx->Color.BlendEnabled = newEnabled; @@ -304,7 +305,8 @@ _mesa_set_enable(struct gl_context *ctx, GLenum cap, GLboolean state) { const GLuint p = cap - GL_CLIP_PLANE0; - if ((ctx->Transform.ClipPlanesEnabled & (1 << p)) == ((GLuint) state << p)) + if ((ctx->Transform.ClipPlanesEnabled & (1 << p)) + == ((GLuint) state << p)) return; FLUSH_VERTICES(ctx, _NEW_TRANSFORM); @@ -965,7 +967,8 @@ _mesa_Disable( GLenum cap ) * Enable/disable an indexed state var. */ void -_mesa_set_enablei(struct gl_context *ctx, GLenum cap, GLuint index, GLboolean state) +_mesa_set_enablei(struct gl_context *ctx, GLenum cap, + GLuint index, GLboolean state) { ASSERT(state == 0 || state == 1); switch (cap) { @@ -1201,7 +1204,8 @@ _mesa_IsEnabled( GLenum cap ) { const struct gl_texture_unit *texUnit = get_texcoord_unit(ctx); if (texUnit) { - return (texUnit->TexGenEnabled & STR_BITS) == STR_BITS ? GL_TRUE : GL_FALSE; + return (texUnit->TexGenEnabled & STR_BITS) == STR_BITS + ? GL_TRUE : GL_FALSE; } } #endif @@ -1218,7 +1222,8 @@ _mesa_IsEnabled( GLenum cap ) case GL_INDEX_ARRAY: return (ctx->Array.ArrayObj->Index.Enabled != 0); case GL_TEXTURE_COORD_ARRAY: - return (ctx->Array.ArrayObj->TexCoord[ctx->Array.ActiveTexture].Enabled != 0); + return (ctx->Array.ArrayObj->TexCoord[ctx->Array.ActiveTexture] + .Enabled != 0); case GL_EDGE_FLAG_ARRAY: return (ctx->Array.ArrayObj->EdgeFlag.Enabled != 0); case GL_FOG_COORDINATE_ARRAY_EXT: From cfc7ded3ff5bdaff17e1022e11fd0e3aeee870a1 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Sat, 19 Mar 2011 14:17:42 -0600 Subject: [PATCH 012/420] mesa: 80-column wrapping and comment updates --- src/mesa/main/matrix.c | 39 ++++++++++++++++++++------------------- 1 file changed, 20 insertions(+), 19 deletions(-) diff --git a/src/mesa/main/matrix.c b/src/mesa/main/matrix.c index 76c7e1c9d1b..56973661cea 100644 --- a/src/mesa/main/matrix.c +++ b/src/mesa/main/matrix.c @@ -140,8 +140,8 @@ _mesa_Ortho( GLdouble left, GLdouble right, * \sa glMatrixMode(). * * Flushes the vertices, validates the parameter and updates - * __struct gl_contextRec::CurrentStack and gl_transform_attrib::MatrixMode with the - * specified matrix stack. + * __struct gl_contextRec::CurrentStack and gl_transform_attrib::MatrixMode + * with the specified matrix stack. */ void GLAPIENTRY _mesa_MatrixMode( GLenum mode ) @@ -170,7 +170,8 @@ _mesa_MatrixMode( GLenum mode ) */ #if 0 if (ctx->Texture.CurrentUnit >= ctx->Const.MaxTextureCoordUnits) { - _mesa_error(ctx, GL_INVALID_OPERATION, "glMatrixMode(invalid tex unit %d)", + _mesa_error(ctx, GL_INVALID_OPERATION, + "glMatrixMode(invalid tex unit %d)", ctx->Texture.CurrentUnit); return; } @@ -232,8 +233,8 @@ _mesa_MatrixMode( GLenum mode ) * \sa glPushMatrix(). * * Verifies the current matrix stack is not full, and duplicates the top-most - * matrix in the stack. Marks __struct gl_contextRec::NewState with the stack dirty - * flag. + * matrix in the stack. + * Marks __struct gl_contextRec::NewState with the stack dirty flag. */ void GLAPIENTRY _mesa_PushMatrix( void ) @@ -272,8 +273,8 @@ _mesa_PushMatrix( void ) * \sa glPopMatrix(). * * Flushes the vertices, verifies the current matrix stack is not empty, and - * moves the stack head down. Marks __struct gl_contextRec::NewState with the dirty - * stack flag. + * moves the stack head down. + * Marks __struct gl_contextRec::NewState with the dirty stack flag. */ void GLAPIENTRY _mesa_PopMatrix( void ) @@ -309,9 +310,9 @@ _mesa_PopMatrix( void ) * * \sa glLoadIdentity(). * - * Flushes the vertices and calls _math_matrix_set_identity() with the top-most - * matrix in the current stack. Marks __struct gl_contextRec::NewState with the stack - * dirty flag. + * Flushes the vertices and calls _math_matrix_set_identity() with the + * top-most matrix in the current stack. + * Marks __struct gl_contextRec::NewState with the stack dirty flag. */ void GLAPIENTRY _mesa_LoadIdentity( void ) @@ -334,9 +335,9 @@ _mesa_LoadIdentity( void ) * * \sa glLoadMatrixf(). * - * Flushes the vertices and calls _math_matrix_loadf() with the top-most matrix - * in the current stack and the given matrix. Marks __struct gl_contextRec::NewState - * with the dirty stack flag. + * Flushes the vertices and calls _math_matrix_loadf() with the top-most + * matrix in the current stack and the given matrix. + * Marks __struct gl_contextRec::NewState with the dirty stack flag. */ void GLAPIENTRY _mesa_LoadMatrixf( const GLfloat *m ) @@ -560,8 +561,8 @@ _mesa_MultTransposeMatrixdARB( const GLdouble *m ) * Calls _math_matrix_analyse() with the top-matrix of the projection matrix * stack, and recomputes user clip positions if necessary. * - * \note This routine references __struct gl_contextRec::Tranform attribute values to - * compute userclip positions in clip space, but is only called on + * \note This routine references __struct gl_contextRec::Tranform attribute + * values to compute userclip positions in clip space, but is only called on * _NEW_PROJECTION. The _mesa_ClipPlane() function keeps these values up to * date across changes to the __struct gl_contextRec::Transform attributes. */ @@ -594,8 +595,8 @@ update_projection( struct gl_context *ctx ) * \param ctx GL context. * * Multiplies the top matrices of the projection and model view stacks into - * __struct gl_contextRec::_ModelProjectMatrix via _math_matrix_mul_matrix() and - * analyzes the resulting matrix via _math_matrix_analyse(). + * __struct gl_contextRec::_ModelProjectMatrix via _math_matrix_mul_matrix() + * and analyzes the resulting matrix via _math_matrix_analyse(). */ static void calculate_model_project_matrix( struct gl_context *ctx ) @@ -624,7 +625,7 @@ void _mesa_update_modelview_project( struct gl_context *ctx, GLuint new_state ) if (new_state & _NEW_MODELVIEW) { _math_matrix_analyse( ctx->ModelviewMatrixStack.Top ); - /* Bring cull position uptodate. + /* Bring cull position up to date. */ TRANSFORM_POINT3( ctx->Transform.CullObjPos, ctx->ModelviewMatrixStack.Top->inv, @@ -635,7 +636,7 @@ void _mesa_update_modelview_project( struct gl_context *ctx, GLuint new_state ) if (new_state & _NEW_PROJECTION) update_projection( ctx ); - /* Keep ModelviewProject uptodate always to allow tnl + /* Keep ModelviewProject up to date always to allow tnl * implementations that go model->clip even when eye is required. */ calculate_model_project_matrix(ctx); From 9b13c988acbf56018c52724e902a15c92ad89db3 Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Mon, 21 Mar 2011 12:03:20 +1000 Subject: [PATCH 013/420] glapi: drop glapi.[ch] and glapitemp.h from being copied to the X server. These files are no longer considered shared as the X code is a lot simpler without sharing them. Signed-off-by: Dave Airlie --- src/mapi/glapi/gen/Makefile | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/mapi/glapi/gen/Makefile b/src/mapi/glapi/gen/Makefile index 1f4642af559..42eed167969 100644 --- a/src/mapi/glapi/gen/Makefile +++ b/src/mapi/glapi/gen/Makefile @@ -41,8 +41,6 @@ XORG_GLX_DIR = $(XORG_BASE)/glx XORG_GLAPI_DIR = $(XORG_BASE)/glx XORG_GLAPI_FILES = \ - $(XORG_GLAPI_DIR)/glapi.h \ - $(XORG_GLAPI_DIR)/glapi.c \ $(XORG_GLAPI_DIR)/glapi_getproc.c \ $(XORG_GLAPI_DIR)/glapi_nop.c \ $(XORG_GLAPI_DIR)/glthread.c \ @@ -50,7 +48,6 @@ XORG_GLAPI_FILES = \ XORG_GLAPI_OUTPUTS = \ $(XORG_GLAPI_DIR)/glprocs.h \ - $(XORG_GLAPI_DIR)/glapitemp.h \ $(XORG_GLAPI_DIR)/glapioffsets.h \ $(XORG_GLAPI_DIR)/glapitable.h \ $(XORG_GLAPI_DIR)/glapidispatch.h From 29288249e35693a33b7873ed11b09c313b2e49f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Thu, 17 Mar 2011 23:33:50 +0000 Subject: [PATCH 014/420] svga: Undo the DMA buffer size limiting. Move this to the winsys, given it is not a virtual device limitation, but a limitation specific to certain winsyses. Also update debug message. --- .../drivers/svga/svga_resource_buffer_upload.c | 15 ++------------- 1 file changed, 2 insertions(+), 13 deletions(-) diff --git a/src/gallium/drivers/svga/svga_resource_buffer_upload.c b/src/gallium/drivers/svga/svga_resource_buffer_upload.c index e5fcec08d6e..923958674b4 100644 --- a/src/gallium/drivers/svga/svga_resource_buffer_upload.c +++ b/src/gallium/drivers/svga/svga_resource_buffer_upload.c @@ -40,9 +40,6 @@ #include "svga_debug.h" -#define MAX_DMA_SIZE (4 * 1024 * 1024) - - /** * Allocate a winsys_buffer (ie. DMA, aka GMR memory). * @@ -60,18 +57,10 @@ svga_winsys_buffer_create( struct svga_context *svga, struct svga_winsys_screen *sws = svgascreen->sws; struct svga_winsys_buffer *buf; - /* XXX this shouldn't be a hard-coded number; it should be queried - * somehow. - */ - if (size > MAX_DMA_SIZE) { - return NULL; - } - /* Just try */ buf = sws->buffer_create(sws, alignment, usage, size); - if(!buf) { - - SVGA_DBG(DEBUG_DMA|DEBUG_PERF, "flushing screen to find %d bytes GMR\n", + if (!buf) { + SVGA_DBG(DEBUG_DMA|DEBUG_PERF, "flushing context to find %d bytes GMR\n", size); /* Try flushing all pending DMAs */ From b881ea87f1d59482420047e6d7454c78dd4f0e89 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Mon, 21 Mar 2011 17:28:21 +0000 Subject: [PATCH 015/420] svga: Avoid synchronizing when doing piecewise upload of textures. --- src/gallium/drivers/svga/svga_resource_texture.c | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/gallium/drivers/svga/svga_resource_texture.c b/src/gallium/drivers/svga/svga_resource_texture.c index b61f85955a2..f9eb4949b2c 100644 --- a/src/gallium/drivers/svga/svga_resource_texture.c +++ b/src/gallium/drivers/svga/svga_resource_texture.c @@ -231,18 +231,19 @@ svga_transfer_dma(struct svga_context *svga, sw = (uint8_t *)st->swbuf + offset; - if(transfer == SVGA3D_WRITE_HOST_VRAM) { + if (transfer == SVGA3D_WRITE_HOST_VRAM) { + unsigned usage = PIPE_TRANSFER_WRITE; + /* Wait for the previous DMAs to complete */ /* TODO: keep one DMA (at half the size) in the background */ - if(y) { - svga_context_flush(svga, &fence); - sws->fence_finish(sws, fence, 0); - sws->fence_reference(sws, &fence, NULL); + if (y) { + svga_context_flush(svga, NULL); + usage |= PIPE_TRANSFER_DISCARD_WHOLE_RESOURCE; } - hw = sws->buffer_map(sws, st->hwbuf, PIPE_TRANSFER_WRITE); + hw = sws->buffer_map(sws, st->hwbuf, usage); assert(hw); - if(hw) { + if (hw) { memcpy(hw, sw, length); sws->buffer_unmap(sws, st->hwbuf); } From e4b040c2b922ff1887651cbf658b06b48b5992c5 Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Mon, 21 Mar 2011 19:56:26 +1000 Subject: [PATCH 016/420] r600g: fix bo names causing -35 EDEADLCK this is a port of the r300 winsys code to do the same thing. --- src/gallium/winsys/r600/drm/r600_drm.c | 18 ++++++++++++++++++ src/gallium/winsys/r600/drm/r600_priv.h | 6 ++++++ src/gallium/winsys/r600/drm/radeon_bo.c | 24 ++++++++++++++++++++++++ 3 files changed, 48 insertions(+) diff --git a/src/gallium/winsys/r600/drm/r600_drm.c b/src/gallium/winsys/r600/drm/r600_drm.c index c081abb4dcd..ddd8ee3d6dd 100644 --- a/src/gallium/winsys/r600/drm/r600_drm.c +++ b/src/gallium/winsys/r600/drm/r600_drm.c @@ -30,6 +30,7 @@ #include #include "util/u_inlines.h" #include "util/u_debug.h" +#include "util/u_hash_table.h" #include #include "r600.h" #include "r600_priv.h" @@ -242,6 +243,18 @@ static int radeon_init_fence(struct radeon *radeon) return 0; } +#define PTR_TO_UINT(x) ((unsigned)((intptr_t)(x))) + +static unsigned handle_hash(void *key) +{ + return PTR_TO_UINT(key); +} + +static int handle_compare(void *key1, void *key2) +{ + return PTR_TO_UINT(key1) != PTR_TO_UINT(key2); +} + static struct radeon *radeon_new(int fd, unsigned device) { struct radeon *radeon; @@ -340,6 +353,9 @@ static struct radeon *radeon_new(int fd, unsigned device) radeon_decref(radeon); return NULL; } + + radeon->bo_handles = util_hash_table_create(handle_hash, handle_compare); + pipe_mutex_init(radeon->bo_handles_mutex); return radeon; } @@ -356,6 +372,8 @@ struct radeon *radeon_decref(struct radeon *radeon) return NULL; } + util_hash_table_destroy(radeon->bo_handles); + pipe_mutex_destroy(radeon->bo_handles_mutex); if (radeon->fence_bo) { r600_bo_reference(radeon, &radeon->fence_bo, NULL); } diff --git a/src/gallium/winsys/r600/drm/r600_priv.h b/src/gallium/winsys/r600/drm/r600_priv.h index 41c5ee02c38..a958c95ab62 100644 --- a/src/gallium/winsys/r600/drm/r600_priv.h +++ b/src/gallium/winsys/r600/drm/r600_priv.h @@ -32,6 +32,7 @@ #include #include #include +#include "util/u_hash_table.h" #include #include "r600.h" @@ -52,6 +53,10 @@ struct radeon { unsigned clock_crystal_freq; unsigned num_backends; unsigned minor_version; + + /* List of buffer handles and its mutex. */ + struct util_hash_table *bo_handles; + pipe_mutex bo_handles_mutex; }; struct r600_reg { @@ -77,6 +82,7 @@ struct radeon_bo { struct r600_reloc *reloc; unsigned reloc_id; unsigned last_flush; + unsigned name; }; struct r600_bo { diff --git a/src/gallium/winsys/r600/drm/radeon_bo.c b/src/gallium/winsys/r600/drm/radeon_bo.c index 3643ddbcb93..13b1d50b6e5 100644 --- a/src/gallium/winsys/r600/drm/radeon_bo.c +++ b/src/gallium/winsys/r600/drm/radeon_bo.c @@ -74,6 +74,16 @@ struct radeon_bo *radeon_bo(struct radeon *radeon, unsigned handle, struct radeon_bo *bo; int r; + if (handle) { + pipe_mutex_lock(radeon->bo_handles_mutex); + bo = util_hash_table_get(radeon->bo_handles, + (void *)(uintptr_t)handle); + if (bo) { + struct radeon_bo *b = NULL; + radeon_bo_reference(radeon, &b, bo); + goto done; + } + } bo = calloc(1, sizeof(*bo)); if (bo == NULL) { return NULL; @@ -94,6 +104,7 @@ struct radeon_bo *radeon_bo(struct radeon *radeon, unsigned handle, free(bo); return NULL; } + bo->name = handle; bo->handle = open_arg.handle; bo->size = open_arg.size; bo->shared = TRUE; @@ -121,6 +132,13 @@ struct radeon_bo *radeon_bo(struct radeon *radeon, unsigned handle, radeon_bo_reference(radeon, &bo, NULL); return bo; } + + if (handle) + util_hash_table_set(radeon->bo_handles, (void *)(uintptr_t)handle, bo); +done: + if (handle) + pipe_mutex_unlock(radeon->bo_handles_mutex); + return bo; } @@ -128,6 +146,12 @@ static void radeon_bo_destroy(struct radeon *radeon, struct radeon_bo *bo) { struct drm_gem_close args; + if (bo->name) { + pipe_mutex_lock(radeon->bo_handles_mutex); + util_hash_table_remove(radeon->bo_handles, + (void *)(uintptr_t)bo->name); + pipe_mutex_unlock(radeon->bo_handles_mutex); + } LIST_DEL(&bo->fencedlist); radeon_bo_fixed_unmap(radeon, bo); memset(&args, 0, sizeof(args)); From 8d7c12de1e3bce6c14ed6b79b64c2bce48e560a5 Mon Sep 17 00:00:00 2001 From: Fabian Bieler Date: Thu, 3 Mar 2011 10:08:08 +0100 Subject: [PATCH 017/420] r600g: Check for relative addressing in destination register when trying to merge instruction groups Signed-off-by: Henri Verbeet --- src/gallium/drivers/r600/r600_asm.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/r600/r600_asm.c b/src/gallium/drivers/r600/r600_asm.c index 240093f9b9d..c22bd8e228c 100644 --- a/src/gallium/drivers/r600/r600_asm.c +++ b/src/gallium/drivers/r600/r600_asm.c @@ -953,10 +953,17 @@ static int merge_inst_groups(struct r600_bc *bc, struct r600_bc_alu *slots[5], } else result[i] = slots[i]; - // let's check source gprs alu = slots[i]; num_once_inst += is_alu_once_inst(bc, alu); + // let's check dst gpr + if (alu->dst.rel) { + if (have_mova) + return 0; + have_rel = 1; + } + + // let's check source gprs num_src = r600_bc_get_num_operands(bc, alu); for (src = 0; src < num_src; ++src) { if (alu->src[src].rel) { From f6970872c083a813a6d6ce9ce0cde2375da6dcbc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Tue, 22 Mar 2011 22:45:21 +0000 Subject: [PATCH 018/420] mesa: Fix typo glGet*v(GL_TEXTURE_COORD_ARRAY_*). --- src/mesa/main/get.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/mesa/main/get.c b/src/mesa/main/get.c index 7d1a5cf6002..f87cb0df10e 100644 --- a/src/mesa/main/get.c +++ b/src/mesa/main/get.c @@ -582,11 +582,11 @@ static const struct value_desc values[] = { { GL_TEXTURE_COORD_ARRAY, LOC_CUSTOM, TYPE_BOOLEAN, offsetof(struct gl_client_array, Enabled), NO_EXTRA }, { GL_TEXTURE_COORD_ARRAY_SIZE, - LOC_CUSTOM, TYPE_BOOLEAN, offsetof(struct gl_client_array, Size), NO_EXTRA }, + LOC_CUSTOM, TYPE_INT, offsetof(struct gl_client_array, Size), NO_EXTRA }, { GL_TEXTURE_COORD_ARRAY_TYPE, - LOC_CUSTOM, TYPE_BOOLEAN, offsetof(struct gl_client_array, Type), NO_EXTRA }, + LOC_CUSTOM, TYPE_ENUM, offsetof(struct gl_client_array, Type), NO_EXTRA }, { GL_TEXTURE_COORD_ARRAY_STRIDE, - LOC_CUSTOM, TYPE_BOOLEAN, offsetof(struct gl_client_array, Stride), NO_EXTRA }, + LOC_CUSTOM, TYPE_INT, offsetof(struct gl_client_array, Stride), NO_EXTRA }, /* GL_ARB_ES2_compatibility */ { GL_SHADER_COMPILER, CONST(1), extra_ARB_ES2_compatibility }, From 7ecb61c30c4984a8513b306b640f9d274d8ecf61 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Wed, 23 Mar 2011 09:04:22 -0600 Subject: [PATCH 019/420] mesa: remove _MESA_NEW_TRANSFER_STATE --- src/mesa/main/mtypes.h | 2 -- src/mesa/main/pixel.c | 2 +- src/mesa/main/state.c | 2 +- src/mesa/main/teximage.c | 10 ++++------ 4 files changed, 6 insertions(+), 10 deletions(-) diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index 831774fa4b1..b558ba1a8c1 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -3025,8 +3025,6 @@ struct gl_matrix_stack #define _MESA_NEW_NEED_NORMALS (_NEW_LIGHT | \ _NEW_TEXTURE) - -#define _MESA_NEW_TRANSFER_STATE (_NEW_PIXEL) /*@}*/ diff --git a/src/mesa/main/pixel.c b/src/mesa/main/pixel.c index 195fa234be2..da99c9b6f35 100644 --- a/src/mesa/main/pixel.c +++ b/src/mesa/main/pixel.c @@ -617,7 +617,7 @@ update_image_transfer_state(struct gl_context *ctx) */ void _mesa_update_pixel( struct gl_context *ctx, GLuint new_state ) { - if (new_state & _MESA_NEW_TRANSFER_STATE) + if (new_state & _NEW_PIXEL) update_image_transfer_state(ctx); } diff --git a/src/mesa/main/state.c b/src/mesa/main/state.c index 19c9bbabda2..118ed1d284a 100644 --- a/src/mesa/main/state.c +++ b/src/mesa/main/state.c @@ -602,7 +602,7 @@ _mesa_update_state_locked( struct gl_context *ctx ) if (new_state & (_NEW_STENCIL | _NEW_BUFFERS)) _mesa_update_stencil( ctx ); - if (new_state & _MESA_NEW_TRANSFER_STATE) + if (new_state & _NEW_PIXEL) _mesa_update_pixel( ctx, new_state ); if (new_state & _DD_NEW_SEPARATE_SPECULAR) diff --git a/src/mesa/main/teximage.c b/src/mesa/main/teximage.c index 2a3037f6189..c6b8c05b100 100644 --- a/src/mesa/main/teximage.c +++ b/src/mesa/main/teximage.c @@ -55,9 +55,7 @@ * In particular, we care about pixel transfer state and buffer state * (such as glReadBuffer to make sure we read from the right renderbuffer). */ -#define NEW_COPY_TEX_STATE (_MESA_NEW_TRANSFER_STATE | \ - _NEW_BUFFERS | \ - _NEW_PIXEL) +#define NEW_COPY_TEX_STATE (_NEW_BUFFERS | _NEW_PIXEL) @@ -2434,7 +2432,7 @@ teximage(struct gl_context *ctx, GLuint dims, return; /* error was recorded */ } - if (ctx->NewState & _MESA_NEW_TRANSFER_STATE) + if (ctx->NewState & _NEW_PIXEL) _mesa_update_state(ctx); texObj = _mesa_get_current_tex_object(ctx, target); @@ -2580,7 +2578,7 @@ _mesa_EGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image) return; } - if (ctx->NewState & _MESA_NEW_TRANSFER_STATE) + if (ctx->NewState & _NEW_PIXEL) _mesa_update_state(ctx); texObj = _mesa_get_current_tex_object(ctx, target); @@ -2637,7 +2635,7 @@ texsubimage(struct gl_context *ctx, GLuint dims, GLenum target, GLint level, return; } - if (ctx->NewState & _MESA_NEW_TRANSFER_STATE) + if (ctx->NewState & _NEW_PIXEL) _mesa_update_state(ctx); if (subtexture_error_check(ctx, dims, target, level, xoffset, yoffset, zoffset, From 12b9e079665915e610c1dbb5f830057bb319efbb Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Wed, 23 Mar 2011 09:05:04 -0600 Subject: [PATCH 020/420] mesa: remove unused _MESA_NEW_NEED_NORMALS --- src/mesa/main/mtypes.h | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index b558ba1a8c1..39577bb0254 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -3022,9 +3022,6 @@ struct gl_matrix_stack _NEW_POINT | \ _NEW_PROGRAM | \ _NEW_MODELVIEW) - -#define _MESA_NEW_NEED_NORMALS (_NEW_LIGHT | \ - _NEW_TEXTURE) /*@}*/ From 81992010b57e5b137c9319b47f282e267a086582 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Wed, 23 Mar 2011 16:36:59 +0000 Subject: [PATCH 021/420] mesa: More glGet* fixes. glGet(GL_NORMAL_ARRAY) giving potentially wrong results. Most of glGet(GL_XXX_ARRAY_BUFFER_BINDING) giving totally bogus results. --- src/mesa/main/get.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/mesa/main/get.c b/src/mesa/main/get.c index f87cb0df10e..81a2a4e7c9f 100644 --- a/src/mesa/main/get.c +++ b/src/mesa/main/get.c @@ -572,7 +572,7 @@ static const struct value_desc values[] = { { GL_VERTEX_ARRAY_SIZE, ARRAY_INT(Vertex.Size), NO_EXTRA }, { GL_VERTEX_ARRAY_TYPE, ARRAY_ENUM(Vertex.Type), NO_EXTRA }, { GL_VERTEX_ARRAY_STRIDE, ARRAY_INT(Vertex.Stride), NO_EXTRA }, - { GL_NORMAL_ARRAY, ARRAY_ENUM(Normal.Enabled), NO_EXTRA }, + { GL_NORMAL_ARRAY, ARRAY_BOOL(Normal.Enabled), NO_EXTRA }, { GL_NORMAL_ARRAY_TYPE, ARRAY_ENUM(Normal.Type), NO_EXTRA }, { GL_NORMAL_ARRAY_STRIDE, ARRAY_INT(Normal.Stride), NO_EXTRA }, { GL_COLOR_ARRAY, ARRAY_BOOL(Color.Enabled), NO_EXTRA }, @@ -1367,7 +1367,7 @@ void _mesa_init_get_hash(struct gl_context *ctx) static void find_custom_value(struct gl_context *ctx, const struct value_desc *d, union value *v) { - struct gl_buffer_object *buffer_obj; + struct gl_buffer_object **buffer_obj; struct gl_client_array *array; GLuint unit, *p; @@ -1569,9 +1569,9 @@ find_custom_value(struct gl_context *ctx, const struct value_desc *d, union valu case GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB: case GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB: case GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB: - buffer_obj = (struct gl_buffer_object *) + buffer_obj = (struct gl_buffer_object **) ((char *) ctx->Array.ArrayObj + d->offset); - v->value_int = buffer_obj->Name; + v->value_int = (*buffer_obj)->Name; break; case GL_ARRAY_BUFFER_BINDING_ARB: v->value_int = ctx->Array.ArrayBufferObj->Name; From f4e392bf8d35a87f84c8a58f9d2bd174ec29ebd9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Thu, 24 Mar 2011 10:43:27 +0000 Subject: [PATCH 022/420] st/wgl: Adjust the pbuffer invisible window size. Thanks to Brian Paul for diagnosing the issue. --- .../state_trackers/wgl/stw_ext_pbuffer.c | 61 ++++++++++++++++--- 1 file changed, 53 insertions(+), 8 deletions(-) diff --git a/src/gallium/state_trackers/wgl/stw_ext_pbuffer.c b/src/gallium/state_trackers/wgl/stw_ext_pbuffer.c index 32636c603dc..fb5d5e8b929 100644 --- a/src/gallium/state_trackers/wgl/stw_ext_pbuffer.c +++ b/src/gallium/state_trackers/wgl/stw_ext_pbuffer.c @@ -52,6 +52,9 @@ wglCreatePbufferARB(HDC _hDC, int useLargest = 0; const struct stw_pixelformat_info *info; struct stw_framebuffer *fb; + DWORD dwExStyle; + DWORD dwStyle; + RECT rect; HWND hWnd; HDC hDC; @@ -113,15 +116,45 @@ wglCreatePbufferARB(HDC _hDC, first = FALSE; } - hWnd = CreateWindowEx(0, + dwExStyle = 0; + dwStyle = WS_CLIPSIBLINGS | WS_CLIPCHILDREN; + + if (0) { + /* + * Don't hide the window -- useful for debugging what the application is + * drawing + */ + + dwStyle |= WS_VISIBLE | WS_OVERLAPPEDWINDOW; + } else { + dwStyle |= WS_POPUPWINDOW; + } + + rect.left = 0; + rect.top = 0; + rect.right = rect.left + iWidth; + rect.bottom = rect.top + iHeight; + + /* + * The CreateWindowEx parameters are the total (outside) dimensions of the + * window, which can vary with Windows version and user settings. Use + * AdjustWindowRect to get the required total area for the given client area. + * + * AdjustWindowRectEx does not accept WS_OVERLAPPED style (which is defined + * as 0), which means we need to use some other style instead, e.g., + * WS_OVERLAPPEDWINDOW or WS_POPUPWINDOW as above. + */ + + AdjustWindowRectEx(&rect, dwStyle, FALSE, dwExStyle); + + hWnd = CreateWindowEx(dwExStyle, "wglpbuffer", /* wc.lpszClassName */ - "wglpbuffer", -#if 0 /* Useful for debugging what the application is drawing */ - WS_VISIBLE | -#endif - WS_CLIPSIBLINGS | WS_CLIPCHILDREN, - CW_USEDEFAULT, CW_USEDEFAULT, /* x, y */ - iWidth, iHeight, + NULL, + dwStyle, + CW_USEDEFAULT, /* x */ + CW_USEDEFAULT, /* y */ + rect.right - rect.left, /* width */ + rect.bottom - rect.top, /* height */ NULL, NULL, NULL, @@ -130,6 +163,18 @@ wglCreatePbufferARB(HDC _hDC, return 0; } +#ifdef DEBUG + /* + * Verify the client area size matches the specified size. + */ + + GetClientRect(hWnd, &rect); + assert(rect.left == 0); + assert(rect.top == 0); + assert(rect.right - rect.left == iWidth); + assert(rect.bottom - rect.top == iHeight); +#endif + hDC = GetDC(hWnd); if (!hDC) { return 0; From 7d40bf25662feea57a804502814634ffa908b58c Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Thu, 24 Mar 2011 08:29:28 -0600 Subject: [PATCH 023/420] radeon: fix radeon_create_image_from_name() wrong parameter type --- src/mesa/drivers/dri/radeon/radeon_screen.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/mesa/drivers/dri/radeon/radeon_screen.c b/src/mesa/drivers/dri/radeon/radeon_screen.c index 56c5959b0aa..9a6e2feeef4 100644 --- a/src/mesa/drivers/dri/radeon/radeon_screen.c +++ b/src/mesa/drivers/dri/radeon/radeon_screen.c @@ -401,12 +401,12 @@ static const struct __DRI2flushExtensionRec radeonFlushExtension = { }; static __DRIimage * -radeon_create_image_from_name(__DRIcontext *context, +radeon_create_image_from_name(__DRIscreen *screen, int width, int height, int format, int name, int pitch, void *loaderPrivate) { __DRIimage *image; - radeonContextPtr radeon = context->driverPrivate; + radeonScreenPtr radeonScreen = screen->private; if (name == 0) return NULL; @@ -442,7 +442,7 @@ radeon_create_image_from_name(__DRIcontext *context, image->pitch = pitch; image->height = height; - image->bo = radeon_bo_open(radeon->radeonScreen->bom, + image->bo = radeon_bo_open(radeonScreen->bom, (uint32_t)name, image->pitch * image->height * image->cpp, 0, From b5745429d733f2b381b8afef74448c29e7c3c2ed Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Thu, 24 Mar 2011 08:29:28 -0600 Subject: [PATCH 024/420] r128: fix an old annoying warning --- src/mesa/drivers/dri/r128/r128_span.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mesa/drivers/dri/r128/r128_span.c b/src/mesa/drivers/dri/r128/r128_span.c index 307de56ee13..04bdbe612e5 100644 --- a/src/mesa/drivers/dri/r128/r128_span.c +++ b/src/mesa/drivers/dri/r128/r128_span.c @@ -135,7 +135,7 @@ do { \ r128WriteDepthSpanLocked( rmesa, n, \ x + dPriv->x, \ y + dPriv->y, \ - depth, mask ); \ + (const GLuint *) depth, mask ); \ } while (0) #define WRITE_DEPTH_PIXELS() \ @@ -146,7 +146,7 @@ do { \ ox[i] = x[i] + dPriv->x; \ oy[i] = Y_FLIP( y[i] ) + dPriv->y; \ } \ - r128WriteDepthPixelsLocked( rmesa, n, ox, oy, depth, mask ); \ + r128WriteDepthPixelsLocked( rmesa, n, ox, oy, (const GLuint *) depth, mask ); \ } while (0) #define READ_DEPTH_SPAN() \ From ff2950dd690a2ed9ee96823030ba9edf073c8229 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Thu, 24 Mar 2011 08:34:19 -0600 Subject: [PATCH 025/420] radeon: reorder #includes to silence warnings Silences warnings about RADEON_TILING_SURFACE being redefined. Only compile tested, not run tested. --- src/mesa/drivers/dri/radeon/radeon_bocs_wrapper.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/mesa/drivers/dri/radeon/radeon_bocs_wrapper.h b/src/mesa/drivers/dri/radeon/radeon_bocs_wrapper.h index 60f10496026..607b7470d4b 100644 --- a/src/mesa/drivers/dri/radeon/radeon_bocs_wrapper.h +++ b/src/mesa/drivers/dri/radeon/radeon_bocs_wrapper.h @@ -1,6 +1,10 @@ #ifndef RADEON_CS_WRAPPER_H #define RADEON_CS_WRAPPER_H +/* to be used to build locally in mesa with no libdrm bits */ +#include "../radeon/radeon_bo_drm.h" +#include "../radeon/radeon_cs_drm.h" + #ifdef HAVE_LIBDRM_RADEON #include "radeon_bo.h" @@ -24,10 +28,6 @@ * when mapped - i.e. front buffer */ #endif -/* to be used to build locally in mesa with no libdrm bits */ -#include "../radeon/radeon_bo_drm.h" -#include "../radeon/radeon_cs_drm.h" - #ifndef DRM_RADEON_GEM_INFO #define DRM_RADEON_GEM_INFO 0x1c From c22a7f9045ff7a4a9505225a133b25e262958e1c Mon Sep 17 00:00:00 2001 From: Iain Hibbert Date: Thu, 24 Mar 2011 08:35:48 -0600 Subject: [PATCH 026/420] radeon: use C99 style in macros with variable arguments Signed-off-by: Iain Hibbert --- src/mesa/drivers/dri/radeon/radeon_debug.h | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/mesa/drivers/dri/radeon/radeon_debug.h b/src/mesa/drivers/dri/radeon/radeon_debug.h index ef8b9671ac9..449c27a3fe1 100644 --- a/src/mesa/drivers/dri/radeon/radeon_debug.h +++ b/src/mesa/drivers/dri/radeon/radeon_debug.h @@ -110,30 +110,30 @@ extern void _radeon_print(const radeon_debug_type_t type, * Print out debug message if channel specified by type is enabled * and compile time debugging level is at least as high as level parameter */ -#define radeon_print(type, level, message, ...) do { \ +#define radeon_print(type, level, ...) do { \ const radeon_debug_level_t _debug_level = (level); \ const radeon_debug_type_t _debug_type = (type); \ /* Compile out if level of message is too high */ \ if (radeon_is_debug_enabled(type, level)) { \ _radeon_print(_debug_type, _debug_level, \ - (message), ## __VA_ARGS__); \ + __VA_ARGS__); \ } \ } while(0) /** * printf style function for writing error messages. */ -#define radeon_error(message, ...) do { \ +#define radeon_error(...) do { \ radeon_print(RADEON_GENERAL, RADEON_CRITICAL, \ - (message), ## __VA_ARGS__); \ + __VA_ARGS__); \ } while(0) /** * printf style function for writing warnings. */ -#define radeon_warning(message, ...) do { \ +#define radeon_warning(...) do { \ radeon_print(RADEON_GENERAL, RADEON_IMPORTANT, \ - (message), ## __VA_ARGS__); \ + __VA_ARGS__); \ } while(0) extern void radeon_init_debug(void); @@ -158,13 +158,13 @@ static inline void radeon_debug_remove_indent(void) I suppose we could inline this and use macro to fetch out __LINE__ and stuff in case we run into trouble with other compilers ... GLUE! */ -#define WARN_ONCE(a, ...) do { \ +#define WARN_ONCE(...) do { \ static int __warn_once=1; \ if(__warn_once){ \ radeon_warning("*********************************WARN_ONCE*********************************\n"); \ radeon_warning("File %s function %s line %d\n", \ __FILE__, __FUNCTION__, __LINE__); \ - radeon_warning( (a), ## __VA_ARGS__);\ + radeon_warning(__VA_ARGS__);\ radeon_warning("***************************************************************************\n"); \ __warn_once=0;\ } \ From 4c75d5ae63c356ac9b6d23009ccc9af6205dbb4a Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Thu, 24 Mar 2011 11:32:33 -0600 Subject: [PATCH 027/420] svga: adjust triangle rasterization offset Fixes minor sub-pixel positioning error in some apps. --- src/gallium/drivers/svga/svga_state_framebuffer.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gallium/drivers/svga/svga_state_framebuffer.c b/src/gallium/drivers/svga/svga_state_framebuffer.c index cdadb20c178..8ad6ab4c29c 100644 --- a/src/gallium/drivers/svga/svga_state_framebuffer.c +++ b/src/gallium/drivers/svga/svga_state_framebuffer.c @@ -296,7 +296,7 @@ static int emit_viewport( struct svga_context *svga, break; case PIPE_PRIM_POINTS: case PIPE_PRIM_TRIANGLES: - adjust_x = -0.375; + adjust_x = -0.25; adjust_y = -0.5; break; } From 82dd62fb22c8f88d62e3c77666c6805a2ac6ecd3 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Thu, 24 Mar 2011 11:39:21 -0600 Subject: [PATCH 028/420] mesa: new MESA_EXTENSION_MAX_YEAR env var If set to year X, only report extensions up to that year. This is a work-around for games that try to copy the extensions string to a fixed size buffer and overflow. If a game was released in year X, setting MESA_EXTENSION_MAX_YEAR to that year will likely fix the problem. --- docs/envvars.html | 9 +++++++++ src/mesa/main/extensions.c | 18 ++++++++++++++++-- 2 files changed, 25 insertions(+), 2 deletions(-) diff --git a/docs/envvars.html b/docs/envvars.html index c8be8437176..986d2f8eb35 100644 --- a/docs/envvars.html +++ b/docs/envvars.html @@ -49,6 +49,15 @@ Setting this variable automatically sets the MESA_TEX_PROG variable as well.
  • MESA_EXTENSION_OVERRIDE - can be used to enable/disable extensions. A value such as "GL_EXT_foo -GL_EXT_bar" will enable the GL_EXT_foo extension and disable the GL_EXT_bar extension. +
  • MESA_EXTENSION_MAX_YEAR - The GL_EXTENSIONS string returned by Mesa is sorted +by extension year. +If this variable is set to year X, only extensions defined on or before year +X will be reported. +This is to work-around a bug in some games where the extension string is +copied into a fixed-size buffer without truncating. +If the extension string is too long, the buffer overrun can cause the game +to crash. +This is a work-around for that.
  • MESA_GLSL - shading language compiler options diff --git a/src/mesa/main/extensions.c b/src/mesa/main/extensions.c index 4b6e91c4f31..728c73c10ae 100644 --- a/src/mesa/main/extensions.c +++ b/src/mesa/main/extensions.c @@ -875,12 +875,24 @@ _mesa_make_extension_string(struct gl_context *ctx) GLboolean *base = (GLboolean *) &ctx->Extensions; const struct extension *i; unsigned j; + unsigned maxYear = ~0; + /* Check if the MESA_EXTENSION_MAX_YEAR env var is set */ + { + const char *env = getenv("MESA_EXTENSION_MAX_YEAR"); + if (env) { + maxYear = atoi(env); + _mesa_debug(ctx, "Note: limiting GL extensions to %u or earlier\n", + maxYear); + } + } /* Compute length of the extension string. */ count = 0; for (i = extension_table; i->name != 0; ++i) { - if (base[i->offset] && (i->api_set & (1 << ctx->API))) { + if (base[i->offset] && + i->year <= maxYear && + (i->api_set & (1 << ctx->API))) { length += strlen(i->name) + 1; /* +1 for space */ ++count; } @@ -908,7 +920,9 @@ _mesa_make_extension_string(struct gl_context *ctx) */ j = 0; for (i = extension_table; i->name != 0; ++i) { - if (base[i->offset] && (i->api_set & (1 << ctx->API))) { + if (base[i->offset] && + i->year <= maxYear && + (i->api_set & (1 << ctx->API))) { extension_indices[j++] = i - extension_table; } } From 53d78be3bde68bfb6416fb9c1abfbc24030f390e Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Sun, 13 Mar 2011 00:23:40 -0800 Subject: [PATCH 029/420] i965/fs: Clean up the emit calls by introducing emit() overload helpers. I think the code ends up a lot more legible this way, though we've still got the overloads in the fs_inst as well (even though there's only one caller left currently). --- src/mesa/drivers/dri/i965/brw_fs.cpp | 400 ++++++++++++--------------- src/mesa/drivers/dri/i965/brw_fs.h | 26 ++ 2 files changed, 203 insertions(+), 223 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp index 8b3f5adb9f9..1651eea0f03 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp @@ -451,15 +451,15 @@ fs_visitor::emit_fragcoord_interpolation(ir_variable *ir) /* gl_FragCoord.x */ if (ir->pixel_center_integer) { - emit(fs_inst(BRW_OPCODE_MOV, wpos, this->pixel_x)); + emit(BRW_OPCODE_MOV, wpos, this->pixel_x); } else { - emit(fs_inst(BRW_OPCODE_ADD, wpos, this->pixel_x, fs_reg(0.5f))); + emit(BRW_OPCODE_ADD, wpos, this->pixel_x, fs_reg(0.5f)); } wpos.reg_offset++; /* gl_FragCoord.y */ if (!flip && ir->pixel_center_integer) { - emit(fs_inst(BRW_OPCODE_MOV, wpos, this->pixel_y)); + emit(BRW_OPCODE_MOV, wpos, this->pixel_y); } else { fs_reg pixel_y = this->pixel_y; float offset = (ir->pixel_center_integer ? 0.0 : 0.5); @@ -469,22 +469,22 @@ fs_visitor::emit_fragcoord_interpolation(ir_variable *ir) offset += c->key.drawable_height - 1.0; } - emit(fs_inst(BRW_OPCODE_ADD, wpos, pixel_y, fs_reg(offset))); + emit(BRW_OPCODE_ADD, wpos, pixel_y, fs_reg(offset)); } wpos.reg_offset++; /* gl_FragCoord.z */ if (intel->gen >= 6) { - emit(fs_inst(BRW_OPCODE_MOV, wpos, - fs_reg(brw_vec8_grf(c->source_depth_reg, 0)))); + emit(BRW_OPCODE_MOV, wpos, + fs_reg(brw_vec8_grf(c->source_depth_reg, 0))); } else { - emit(fs_inst(FS_OPCODE_LINTERP, wpos, this->delta_x, this->delta_y, - interp_reg(FRAG_ATTRIB_WPOS, 2))); + emit(FS_OPCODE_LINTERP, wpos, this->delta_x, this->delta_y, + interp_reg(FRAG_ATTRIB_WPOS, 2)); } wpos.reg_offset++; /* gl_FragCoord.w: Already set up in emit_interpolation */ - emit(fs_inst(BRW_OPCODE_MOV, wpos, this->wpos_w)); + emit(BRW_OPCODE_MOV, wpos, this->wpos_w); return reg; } @@ -532,28 +532,22 @@ fs_visitor::emit_general_interpolation(ir_variable *ir) for (unsigned int c = 0; c < type->vector_elements; c++) { struct brw_reg interp = interp_reg(location, c); interp = suboffset(interp, 3); - emit(fs_inst(FS_OPCODE_CINTERP, attr, fs_reg(interp))); + emit(FS_OPCODE_CINTERP, attr, fs_reg(interp)); attr.reg_offset++; } } else { /* Perspective interpolation case. */ for (unsigned int c = 0; c < type->vector_elements; c++) { struct brw_reg interp = interp_reg(location, c); - emit(fs_inst(FS_OPCODE_LINTERP, - attr, - this->delta_x, - this->delta_y, - fs_reg(interp))); + emit(FS_OPCODE_LINTERP, attr, + this->delta_x, this->delta_y, fs_reg(interp)); attr.reg_offset++; } if (intel->gen < 6) { attr.reg_offset -= type->vector_elements; for (unsigned int c = 0; c < type->vector_elements; c++) { - emit(fs_inst(BRW_OPCODE_MUL, - attr, - attr, - this->pixel_w)); + emit(BRW_OPCODE_MUL, attr, attr, this->pixel_w); attr.reg_offset++; } } @@ -572,28 +566,21 @@ fs_visitor::emit_frontfacing_interpolation(ir_variable *ir) /* The frontfacing comes in as a bit in the thread payload. */ if (intel->gen >= 6) { - emit(fs_inst(BRW_OPCODE_ASR, - *reg, - fs_reg(retype(brw_vec1_grf(0, 0), BRW_REGISTER_TYPE_D)), - fs_reg(15))); - emit(fs_inst(BRW_OPCODE_NOT, - *reg, - *reg)); - emit(fs_inst(BRW_OPCODE_AND, - *reg, - *reg, - fs_reg(1))); + emit(BRW_OPCODE_ASR, *reg, + fs_reg(retype(brw_vec1_grf(0, 0), BRW_REGISTER_TYPE_D)), + fs_reg(15)); + emit(BRW_OPCODE_NOT, *reg, *reg); + emit(BRW_OPCODE_AND, *reg, *reg, fs_reg(1)); } else { struct brw_reg r1_6ud = retype(brw_vec1_grf(1, 6), BRW_REGISTER_TYPE_UD); /* bit 31 is "primitive is back face", so checking < (1 << 31) gives * us front face */ - fs_inst *inst = emit(fs_inst(BRW_OPCODE_CMP, - *reg, - fs_reg(r1_6ud), - fs_reg(1u << 31))); + fs_inst *inst = emit(BRW_OPCODE_CMP, *reg, + fs_reg(r1_6ud), + fs_reg(1u << 31)); inst->conditional_mod = BRW_CONDITIONAL_L; - emit(fs_inst(BRW_OPCODE_AND, *reg, *reg, fs_reg(1u))); + emit(BRW_OPCODE_AND, *reg, *reg, fs_reg(1u)); } return reg; @@ -628,11 +615,11 @@ fs_visitor::emit_math(fs_opcodes opcode, fs_reg dst, fs_reg src) src.abs || src.negate)) { fs_reg expanded = fs_reg(this, glsl_type::float_type); - emit(fs_inst(BRW_OPCODE_MOV, expanded, src)); + emit(BRW_OPCODE_MOV, expanded, src); src = expanded; } - fs_inst *inst = emit(fs_inst(opcode, dst, src)); + fs_inst *inst = emit(opcode, dst, src); if (intel->gen < 6) { inst->base_mrf = 2; @@ -658,20 +645,20 @@ fs_visitor::emit_math(fs_opcodes opcode, fs_reg dst, fs_reg src0, fs_reg src1) */ if (src0.file == UNIFORM || src0.abs || src0.negate) { fs_reg expanded = fs_reg(this, glsl_type::float_type); - emit(fs_inst(BRW_OPCODE_MOV, expanded, src0)); + emit(BRW_OPCODE_MOV, expanded, src0); src0 = expanded; } if (src1.file == UNIFORM || src1.abs || src1.negate) { fs_reg expanded = fs_reg(this, glsl_type::float_type); - emit(fs_inst(BRW_OPCODE_MOV, expanded, src1)); + emit(BRW_OPCODE_MOV, expanded, src1); src1 = expanded; } - inst = emit(fs_inst(opcode, dst, src0, src1)); + inst = emit(opcode, dst, src0, src1); } else { - emit(fs_inst(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + 1), src1)); - inst = emit(fs_inst(opcode, dst, src0, reg_null_f)); + emit(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + 1), src1); + inst = emit(opcode, dst, src0, reg_null_f); inst->base_mrf = base_mrf; inst->mlen = 2; @@ -788,7 +775,7 @@ fs_visitor::try_emit_saturate(ir_expression *ir) fs_reg src = this->result; this->result = fs_reg(this, ir->type); - fs_inst *inst = emit(fs_inst(BRW_OPCODE_MOV, this->result, src)); + fs_inst *inst = emit(BRW_OPCODE_MOV, this->result, src); inst->saturate = true; return true; @@ -859,7 +846,7 @@ fs_visitor::visit(ir_expression *ir) /* Note that BRW_OPCODE_NOT is not appropriate here, since it is * ones complement of the whole register, not just bit 0. */ - emit(fs_inst(BRW_OPCODE_XOR, this->result, op[0], fs_reg(1))); + emit(BRW_OPCODE_XOR, this->result, op[0], fs_reg(1)); break; case ir_unop_neg: op[0].negate = !op[0].negate; @@ -873,16 +860,16 @@ fs_visitor::visit(ir_expression *ir) case ir_unop_sign: temp = fs_reg(this, ir->type); - emit(fs_inst(BRW_OPCODE_MOV, this->result, fs_reg(0.0f))); + emit(BRW_OPCODE_MOV, this->result, fs_reg(0.0f)); - inst = emit(fs_inst(BRW_OPCODE_CMP, reg_null_f, op[0], fs_reg(0.0f))); + inst = emit(BRW_OPCODE_CMP, reg_null_f, op[0], fs_reg(0.0f)); inst->conditional_mod = BRW_CONDITIONAL_G; - inst = emit(fs_inst(BRW_OPCODE_MOV, this->result, fs_reg(1.0f))); + inst = emit(BRW_OPCODE_MOV, this->result, fs_reg(1.0f)); inst->predicated = true; - inst = emit(fs_inst(BRW_OPCODE_CMP, reg_null_f, op[0], fs_reg(0.0f))); + inst = emit(BRW_OPCODE_CMP, reg_null_f, op[0], fs_reg(0.0f)); inst->conditional_mod = BRW_CONDITIONAL_L; - inst = emit(fs_inst(BRW_OPCODE_MOV, this->result, fs_reg(-1.0f))); + inst = emit(BRW_OPCODE_MOV, this->result, fs_reg(-1.0f)); inst->predicated = true; break; @@ -910,21 +897,21 @@ fs_visitor::visit(ir_expression *ir) break; case ir_unop_dFdx: - emit(fs_inst(FS_OPCODE_DDX, this->result, op[0])); + emit(FS_OPCODE_DDX, this->result, op[0]); break; case ir_unop_dFdy: - emit(fs_inst(FS_OPCODE_DDY, this->result, op[0])); + emit(FS_OPCODE_DDY, this->result, op[0]); break; case ir_binop_add: - emit(fs_inst(BRW_OPCODE_ADD, this->result, op[0], op[1])); + emit(BRW_OPCODE_ADD, this->result, op[0], op[1]); break; case ir_binop_sub: assert(!"not reached: should be handled by ir_sub_to_add_neg"); break; case ir_binop_mul: - emit(fs_inst(BRW_OPCODE_MUL, this->result, op[0], op[1])); + emit(BRW_OPCODE_MUL, this->result, op[0], op[1]); break; case ir_binop_div: assert(!"not reached: should be handled by ir_div_to_mul_rcp"); @@ -946,21 +933,21 @@ fs_visitor::visit(ir_expression *ir) if (intel->gen < 5) temp.type = op[0].type; - inst = emit(fs_inst(BRW_OPCODE_CMP, temp, op[0], op[1])); + inst = emit(BRW_OPCODE_CMP, temp, op[0], op[1]); inst->conditional_mod = brw_conditional_for_comparison(ir->operation); - emit(fs_inst(BRW_OPCODE_AND, this->result, this->result, fs_reg(0x1))); + emit(BRW_OPCODE_AND, this->result, this->result, fs_reg(0x1)); break; case ir_binop_logic_xor: - emit(fs_inst(BRW_OPCODE_XOR, this->result, op[0], op[1])); + emit(BRW_OPCODE_XOR, this->result, op[0], op[1]); break; case ir_binop_logic_or: - emit(fs_inst(BRW_OPCODE_OR, this->result, op[0], op[1])); + emit(BRW_OPCODE_OR, this->result, op[0], op[1]); break; case ir_binop_logic_and: - emit(fs_inst(BRW_OPCODE_AND, this->result, op[0], op[1])); + emit(BRW_OPCODE_AND, this->result, op[0], op[1]); break; case ir_binop_dot: @@ -988,7 +975,7 @@ fs_visitor::visit(ir_expression *ir) case ir_unop_b2f: case ir_unop_b2i: case ir_unop_f2i: - emit(fs_inst(BRW_OPCODE_MOV, this->result, op[0])); + emit(BRW_OPCODE_MOV, this->result, op[0]); break; case ir_unop_f2b: case ir_unop_i2b: @@ -997,42 +984,41 @@ fs_visitor::visit(ir_expression *ir) if (intel->gen < 5) temp.type = op[0].type; - inst = emit(fs_inst(BRW_OPCODE_CMP, temp, op[0], fs_reg(0.0f))); + inst = emit(BRW_OPCODE_CMP, temp, op[0], fs_reg(0.0f)); inst->conditional_mod = BRW_CONDITIONAL_NZ; - inst = emit(fs_inst(BRW_OPCODE_AND, this->result, - this->result, fs_reg(1))); + inst = emit(BRW_OPCODE_AND, this->result, this->result, fs_reg(1)); break; case ir_unop_trunc: - emit(fs_inst(BRW_OPCODE_RNDZ, this->result, op[0])); + emit(BRW_OPCODE_RNDZ, this->result, op[0]); break; case ir_unop_ceil: op[0].negate = !op[0].negate; - inst = emit(fs_inst(BRW_OPCODE_RNDD, this->result, op[0])); + inst = emit(BRW_OPCODE_RNDD, this->result, op[0]); this->result.negate = true; break; case ir_unop_floor: - inst = emit(fs_inst(BRW_OPCODE_RNDD, this->result, op[0])); + inst = emit(BRW_OPCODE_RNDD, this->result, op[0]); break; case ir_unop_fract: - inst = emit(fs_inst(BRW_OPCODE_FRC, this->result, op[0])); + inst = emit(BRW_OPCODE_FRC, this->result, op[0]); break; case ir_unop_round_even: - emit(fs_inst(BRW_OPCODE_RNDE, this->result, op[0])); + emit(BRW_OPCODE_RNDE, this->result, op[0]); break; case ir_binop_min: - inst = emit(fs_inst(BRW_OPCODE_CMP, this->result, op[0], op[1])); + inst = emit(BRW_OPCODE_CMP, this->result, op[0], op[1]); inst->conditional_mod = BRW_CONDITIONAL_L; - inst = emit(fs_inst(BRW_OPCODE_SEL, this->result, op[0], op[1])); + inst = emit(BRW_OPCODE_SEL, this->result, op[0], op[1]); inst->predicated = true; break; case ir_binop_max: - inst = emit(fs_inst(BRW_OPCODE_CMP, this->result, op[0], op[1])); + inst = emit(BRW_OPCODE_CMP, this->result, op[0], op[1]); inst->conditional_mod = BRW_CONDITIONAL_G; - inst = emit(fs_inst(BRW_OPCODE_SEL, this->result, op[0], op[1])); + inst = emit(BRW_OPCODE_SEL, this->result, op[0], op[1]); inst->predicated = true; break; @@ -1041,16 +1027,16 @@ fs_visitor::visit(ir_expression *ir) break; case ir_unop_bit_not: - inst = emit(fs_inst(BRW_OPCODE_NOT, this->result, op[0])); + inst = emit(BRW_OPCODE_NOT, this->result, op[0]); break; case ir_binop_bit_and: - inst = emit(fs_inst(BRW_OPCODE_AND, this->result, op[0], op[1])); + inst = emit(BRW_OPCODE_AND, this->result, op[0], op[1]); break; case ir_binop_bit_xor: - inst = emit(fs_inst(BRW_OPCODE_XOR, this->result, op[0], op[1])); + inst = emit(BRW_OPCODE_XOR, this->result, op[0], op[1]); break; case ir_binop_bit_or: - inst = emit(fs_inst(BRW_OPCODE_OR, this->result, op[0], op[1])); + inst = emit(BRW_OPCODE_OR, this->result, op[0], op[1]); break; case ir_unop_u2f: @@ -1074,7 +1060,7 @@ fs_visitor::emit_assignment_writes(fs_reg &l, fs_reg &r, l.type = brw_type_for_base_type(type); r.type = brw_type_for_base_type(type); - fs_inst *inst = emit(fs_inst(BRW_OPCODE_MOV, l, r)); + fs_inst *inst = emit(BRW_OPCODE_MOV, l, r); inst->predicated = predicated; l.reg_offset++; @@ -1127,7 +1113,7 @@ fs_visitor::visit(ir_assignment *ir) ir->lhs->type->is_vector()) { for (int i = 0; i < ir->lhs->type->vector_elements; i++) { if (ir->write_mask & (1 << i)) { - inst = emit(fs_inst(BRW_OPCODE_MOV, l, r)); + inst = emit(BRW_OPCODE_MOV, l, r); if (ir->condition) inst->predicated = true; r.reg_offset++; @@ -1152,8 +1138,7 @@ fs_visitor::emit_texture_gen4(ir_texture *ir, fs_reg dst, fs_reg coordinate) if (ir->shadow_comparitor) { for (int i = 0; i < ir->coordinate->type->vector_elements; i++) { - emit(fs_inst(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen + i), - coordinate)); + emit(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen + i), coordinate); coordinate.reg_offset++; } /* gen4's SIMD8 sampler always has the slots for u,v,r present. */ @@ -1163,29 +1148,25 @@ fs_visitor::emit_texture_gen4(ir_texture *ir, fs_reg dst, fs_reg coordinate) /* There's no plain shadow compare message, so we use shadow * compare with a bias of 0.0. */ - emit(fs_inst(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), - fs_reg(0.0f))); + emit(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), fs_reg(0.0f)); mlen++; } else if (ir->op == ir_txb) { ir->lod_info.bias->accept(this); - emit(fs_inst(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), - this->result)); + emit(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), this->result); mlen++; } else { assert(ir->op == ir_txl); ir->lod_info.lod->accept(this); - emit(fs_inst(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), - this->result)); + emit(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), this->result); mlen++; } ir->shadow_comparitor->accept(this); - emit(fs_inst(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), this->result)); + emit(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), this->result); mlen++; } else if (ir->op == ir_tex) { for (int i = 0; i < ir->coordinate->type->vector_elements; i++) { - emit(fs_inst(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen + i), - coordinate)); + emit(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen + i), coordinate); coordinate.reg_offset++; } /* gen4's SIMD8 sampler always has the slots for u,v,r present. */ @@ -1199,8 +1180,7 @@ fs_visitor::emit_texture_gen4(ir_texture *ir, fs_reg dst, fs_reg coordinate) assert(ir->op == ir_txb || ir->op == ir_txl); for (int i = 0; i < ir->coordinate->type->vector_elements; i++) { - emit(fs_inst(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen + i * 2), - coordinate)); + emit(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen + i * 2), coordinate); coordinate.reg_offset++; } @@ -1209,13 +1189,11 @@ fs_visitor::emit_texture_gen4(ir_texture *ir, fs_reg dst, fs_reg coordinate) if (ir->op == ir_txb) { ir->lod_info.bias->accept(this); - emit(fs_inst(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), - this->result)); + emit(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), this->result); mlen++; } else { ir->lod_info.lod->accept(this); - emit(fs_inst(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), - this->result)); + emit(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), this->result); mlen++; } @@ -1236,16 +1214,16 @@ fs_visitor::emit_texture_gen4(ir_texture *ir, fs_reg dst, fs_reg coordinate) fs_inst *inst = NULL; switch (ir->op) { case ir_tex: - inst = emit(fs_inst(FS_OPCODE_TEX, dst)); + inst = emit(FS_OPCODE_TEX, dst); break; case ir_txb: - inst = emit(fs_inst(FS_OPCODE_TXB, dst)); + inst = emit(FS_OPCODE_TXB, dst); break; case ir_txl: - inst = emit(fs_inst(FS_OPCODE_TXL, dst)); + inst = emit(FS_OPCODE_TXL, dst); break; case ir_txd: - inst = emit(fs_inst(FS_OPCODE_TXD, dst)); + inst = emit(FS_OPCODE_TXD, dst); break; case ir_txf: assert(!"GLSL 1.30 features unsupported"); @@ -1256,7 +1234,7 @@ fs_visitor::emit_texture_gen4(ir_texture *ir, fs_reg dst, fs_reg coordinate) if (simd16) { for (int i = 0; i < 4; i++) { - emit(fs_inst(BRW_OPCODE_MOV, orig_dst, dst)); + emit(BRW_OPCODE_MOV, orig_dst, dst); orig_dst.reg_offset++; dst.reg_offset += 2; } @@ -1280,8 +1258,7 @@ fs_visitor::emit_texture_gen5(ir_texture *ir, fs_reg dst, fs_reg coordinate) int base_mrf = 1; for (int i = 0; i < ir->coordinate->type->vector_elements; i++) { - emit(fs_inst(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen + i), - coordinate)); + emit(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen + i), coordinate); coordinate.reg_offset++; } mlen += ir->coordinate->type->vector_elements; @@ -1290,30 +1267,30 @@ fs_visitor::emit_texture_gen5(ir_texture *ir, fs_reg dst, fs_reg coordinate) mlen = MAX2(mlen, 5); ir->shadow_comparitor->accept(this); - emit(fs_inst(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), this->result)); + emit(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), this->result); mlen++; } fs_inst *inst = NULL; switch (ir->op) { case ir_tex: - inst = emit(fs_inst(FS_OPCODE_TEX, dst)); + inst = emit(FS_OPCODE_TEX, dst); break; case ir_txb: ir->lod_info.bias->accept(this); mlen = MAX2(mlen, 5); - emit(fs_inst(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), this->result)); + emit(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), this->result); mlen++; - inst = emit(fs_inst(FS_OPCODE_TXB, dst)); + inst = emit(FS_OPCODE_TXB, dst); break; case ir_txl: ir->lod_info.lod->accept(this); mlen = MAX2(mlen, 5); - emit(fs_inst(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), this->result)); + emit(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), this->result); mlen++; - inst = emit(fs_inst(FS_OPCODE_TXL, dst)); + inst = emit(FS_OPCODE_TXL, dst); break; case ir_txd: case ir_txf: @@ -1356,14 +1333,14 @@ fs_visitor::visit(ir_texture *ir) } /* Explicitly set up the message header by copying g0 to msg reg m1. */ - emit(fs_inst(BRW_OPCODE_MOV, fs_reg(MRF, 1, BRW_REGISTER_TYPE_UD), - fs_reg(GRF, 0, BRW_REGISTER_TYPE_UD))); + emit(BRW_OPCODE_MOV, fs_reg(MRF, 1, BRW_REGISTER_TYPE_UD), + fs_reg(GRF, 0, BRW_REGISTER_TYPE_UD)); /* Then set the offset bits in DWord 2 of the message header. */ - emit(fs_inst(BRW_OPCODE_MOV, - fs_reg(retype(brw_vec1_reg(BRW_MESSAGE_REGISTER_FILE, 1, 2), - BRW_REGISTER_TYPE_UD)), - fs_reg(brw_imm_uw(offset_bits)))); + emit(BRW_OPCODE_MOV, + fs_reg(retype(brw_vec1_reg(BRW_MESSAGE_REGISTER_FILE, 1, 2), + BRW_REGISTER_TYPE_UD)), + fs_reg(brw_imm_uw(offset_bits))); } /* Should be lowered by do_lower_texture_projection */ @@ -1409,10 +1386,10 @@ fs_visitor::visit(ir_texture *ir) fs_reg src = coordinate; coordinate = dst; - emit(fs_inst(BRW_OPCODE_MUL, dst, src, scale_x)); + emit(BRW_OPCODE_MUL, dst, src, scale_x); dst.reg_offset++; src.reg_offset++; - emit(fs_inst(BRW_OPCODE_MUL, dst, src, scale_y)); + emit(BRW_OPCODE_MUL, dst, src, scale_y); } /* Writemasking doesn't eliminate channels on SIMD8 texture @@ -1453,13 +1430,13 @@ fs_visitor::visit(ir_texture *ir) l.reg_offset += i; if (swiz == SWIZZLE_ZERO) { - emit(fs_inst(BRW_OPCODE_MOV, l, fs_reg(0.0f))); + emit(BRW_OPCODE_MOV, l, fs_reg(0.0f)); } else if (swiz == SWIZZLE_ONE) { - emit(fs_inst(BRW_OPCODE_MOV, l, fs_reg(1.0f))); + emit(BRW_OPCODE_MOV, l, fs_reg(1.0f)); } else { fs_reg r = dst; r.reg_offset += GET_SWZ(c->key.tex_swizzles[inst->sampler], i); - emit(fs_inst(BRW_OPCODE_MOV, l, r)); + emit(BRW_OPCODE_MOV, l, r); } } this->result = swizzle_dst; @@ -1500,7 +1477,7 @@ fs_visitor::visit(ir_swizzle *ir) } channel.reg_offset += swiz; - emit(fs_inst(BRW_OPCODE_MOV, result, channel)); + emit(BRW_OPCODE_MOV, result, channel); result.reg_offset++; } } @@ -1512,8 +1489,8 @@ fs_visitor::visit(ir_discard *ir) assert(ir->condition == NULL); /* FINISHME */ - emit(fs_inst(FS_OPCODE_DISCARD_NOT, temp, reg_null_d)); - emit(fs_inst(FS_OPCODE_DISCARD_AND, reg_null_d, temp)); + emit(FS_OPCODE_DISCARD_NOT, temp, reg_null_d); + emit(FS_OPCODE_DISCARD_AND, reg_null_d, temp); kill_emitted = true; } @@ -1539,7 +1516,7 @@ fs_visitor::visit(ir_constant *ir) dst_reg.type = src_reg.type; for (unsigned j = 0; j < size; j++) { - emit(fs_inst(BRW_OPCODE_MOV, dst_reg, src_reg)); + emit(BRW_OPCODE_MOV, dst_reg, src_reg); src_reg.reg_offset++; dst_reg.reg_offset++; } @@ -1554,7 +1531,7 @@ fs_visitor::visit(ir_constant *ir) dst_reg.type = src_reg.type; for (unsigned j = 0; j < size; j++) { - emit(fs_inst(BRW_OPCODE_MOV, dst_reg, src_reg)); + emit(BRW_OPCODE_MOV, dst_reg, src_reg); src_reg.reg_offset++; dst_reg.reg_offset++; } @@ -1565,16 +1542,16 @@ fs_visitor::visit(ir_constant *ir) for (unsigned i = 0; i < size; i++) { switch (ir->type->base_type) { case GLSL_TYPE_FLOAT: - emit(fs_inst(BRW_OPCODE_MOV, dst_reg, fs_reg(ir->value.f[i]))); + emit(BRW_OPCODE_MOV, dst_reg, fs_reg(ir->value.f[i])); break; case GLSL_TYPE_UINT: - emit(fs_inst(BRW_OPCODE_MOV, dst_reg, fs_reg(ir->value.u[i]))); + emit(BRW_OPCODE_MOV, dst_reg, fs_reg(ir->value.u[i])); break; case GLSL_TYPE_INT: - emit(fs_inst(BRW_OPCODE_MOV, dst_reg, fs_reg(ir->value.i[i]))); + emit(BRW_OPCODE_MOV, dst_reg, fs_reg(ir->value.i[i])); break; case GLSL_TYPE_BOOL: - emit(fs_inst(BRW_OPCODE_MOV, dst_reg, fs_reg((int)ir->value.b[i]))); + emit(BRW_OPCODE_MOV, dst_reg, fs_reg((int)ir->value.b[i])); break; default: assert(!"Non-float/uint/int/bool constant"); @@ -1605,40 +1582,39 @@ fs_visitor::emit_bool_to_cond_code(ir_rvalue *ir) switch (expr->operation) { case ir_unop_logic_not: - inst = emit(fs_inst(BRW_OPCODE_AND, reg_null_d, op[0], fs_reg(1))); + inst = emit(BRW_OPCODE_AND, reg_null_d, op[0], fs_reg(1)); inst->conditional_mod = BRW_CONDITIONAL_Z; break; case ir_binop_logic_xor: - inst = emit(fs_inst(BRW_OPCODE_XOR, reg_null_d, op[0], op[1])); + inst = emit(BRW_OPCODE_XOR, reg_null_d, op[0], op[1]); inst->conditional_mod = BRW_CONDITIONAL_NZ; break; case ir_binop_logic_or: - inst = emit(fs_inst(BRW_OPCODE_OR, reg_null_d, op[0], op[1])); + inst = emit(BRW_OPCODE_OR, reg_null_d, op[0], op[1]); inst->conditional_mod = BRW_CONDITIONAL_NZ; break; case ir_binop_logic_and: - inst = emit(fs_inst(BRW_OPCODE_AND, reg_null_d, op[0], op[1])); + inst = emit(BRW_OPCODE_AND, reg_null_d, op[0], op[1]); inst->conditional_mod = BRW_CONDITIONAL_NZ; break; case ir_unop_f2b: if (intel->gen >= 6) { - inst = emit(fs_inst(BRW_OPCODE_CMP, reg_null_d, - op[0], fs_reg(0.0f))); + inst = emit(BRW_OPCODE_CMP, reg_null_d, op[0], fs_reg(0.0f)); } else { - inst = emit(fs_inst(BRW_OPCODE_MOV, reg_null_f, op[0])); + inst = emit(BRW_OPCODE_MOV, reg_null_f, op[0]); } inst->conditional_mod = BRW_CONDITIONAL_NZ; break; case ir_unop_i2b: if (intel->gen >= 6) { - inst = emit(fs_inst(BRW_OPCODE_CMP, reg_null_d, op[0], fs_reg(0))); + inst = emit(BRW_OPCODE_CMP, reg_null_d, op[0], fs_reg(0)); } else { - inst = emit(fs_inst(BRW_OPCODE_MOV, reg_null_d, op[0])); + inst = emit(BRW_OPCODE_MOV, reg_null_d, op[0]); } inst->conditional_mod = BRW_CONDITIONAL_NZ; break; @@ -1651,7 +1627,7 @@ fs_visitor::emit_bool_to_cond_code(ir_rvalue *ir) case ir_binop_all_equal: case ir_binop_nequal: case ir_binop_any_nequal: - inst = emit(fs_inst(BRW_OPCODE_CMP, reg_null_cmp, op[0], op[1])); + inst = emit(BRW_OPCODE_CMP, reg_null_cmp, op[0], op[1]); inst->conditional_mod = brw_conditional_for_comparison(expr->operation); break; @@ -1667,11 +1643,10 @@ fs_visitor::emit_bool_to_cond_code(ir_rvalue *ir) ir->accept(this); if (intel->gen >= 6) { - fs_inst *inst = emit(fs_inst(BRW_OPCODE_AND, reg_null_d, - this->result, fs_reg(1))); + fs_inst *inst = emit(BRW_OPCODE_AND, reg_null_d, this->result, fs_reg(1)); inst->conditional_mod = BRW_CONDITIONAL_NZ; } else { - fs_inst *inst = emit(fs_inst(BRW_OPCODE_MOV, reg_null_d, this->result)); + fs_inst *inst = emit(BRW_OPCODE_MOV, reg_null_d, this->result); inst->conditional_mod = BRW_CONDITIONAL_NZ; } } @@ -1700,36 +1675,36 @@ fs_visitor::emit_if_gen6(ir_if *ir) switch (expr->operation) { case ir_unop_logic_not: - inst = emit(fs_inst(BRW_OPCODE_IF, temp, op[0], fs_reg(0))); + inst = emit(BRW_OPCODE_IF, temp, op[0], fs_reg(0)); inst->conditional_mod = BRW_CONDITIONAL_Z; return; case ir_binop_logic_xor: - inst = emit(fs_inst(BRW_OPCODE_IF, reg_null_d, op[0], op[1])); + inst = emit(BRW_OPCODE_IF, reg_null_d, op[0], op[1]); inst->conditional_mod = BRW_CONDITIONAL_NZ; return; case ir_binop_logic_or: temp = fs_reg(this, glsl_type::bool_type); - emit(fs_inst(BRW_OPCODE_OR, temp, op[0], op[1])); - inst = emit(fs_inst(BRW_OPCODE_IF, reg_null_d, temp, fs_reg(0))); + emit(BRW_OPCODE_OR, temp, op[0], op[1]); + inst = emit(BRW_OPCODE_IF, reg_null_d, temp, fs_reg(0)); inst->conditional_mod = BRW_CONDITIONAL_NZ; return; case ir_binop_logic_and: temp = fs_reg(this, glsl_type::bool_type); - emit(fs_inst(BRW_OPCODE_AND, temp, op[0], op[1])); - inst = emit(fs_inst(BRW_OPCODE_IF, reg_null_d, temp, fs_reg(0))); + emit(BRW_OPCODE_AND, temp, op[0], op[1]); + inst = emit(BRW_OPCODE_IF, reg_null_d, temp, fs_reg(0)); inst->conditional_mod = BRW_CONDITIONAL_NZ; return; case ir_unop_f2b: - inst = emit(fs_inst(BRW_OPCODE_IF, reg_null_f, op[0], fs_reg(0))); + inst = emit(BRW_OPCODE_IF, reg_null_f, op[0], fs_reg(0)); inst->conditional_mod = BRW_CONDITIONAL_NZ; return; case ir_unop_i2b: - inst = emit(fs_inst(BRW_OPCODE_IF, reg_null_d, op[0], fs_reg(0))); + inst = emit(BRW_OPCODE_IF, reg_null_d, op[0], fs_reg(0)); inst->conditional_mod = BRW_CONDITIONAL_NZ; return; @@ -1741,13 +1716,13 @@ fs_visitor::emit_if_gen6(ir_if *ir) case ir_binop_all_equal: case ir_binop_nequal: case ir_binop_any_nequal: - inst = emit(fs_inst(BRW_OPCODE_IF, reg_null_d, op[0], op[1])); + inst = emit(BRW_OPCODE_IF, reg_null_d, op[0], op[1]); inst->conditional_mod = brw_conditional_for_comparison(expr->operation); return; default: assert(!"not reached"); - inst = emit(fs_inst(BRW_OPCODE_IF, reg_null_d, op[0], fs_reg(0))); + inst = emit(BRW_OPCODE_IF, reg_null_d, op[0], fs_reg(0)); inst->conditional_mod = BRW_CONDITIONAL_NZ; this->fail = true; return; @@ -1757,7 +1732,7 @@ fs_visitor::emit_if_gen6(ir_if *ir) ir->condition->accept(this); - fs_inst *inst = emit(fs_inst(BRW_OPCODE_IF, reg_null_d, this->result, fs_reg(0))); + fs_inst *inst = emit(BRW_OPCODE_IF, reg_null_d, this->result, fs_reg(0)); inst->conditional_mod = BRW_CONDITIONAL_NZ; } @@ -1776,7 +1751,7 @@ fs_visitor::visit(ir_if *ir) } else { emit_bool_to_cond_code(ir->condition); - inst = emit(fs_inst(BRW_OPCODE_IF)); + inst = emit(BRW_OPCODE_IF); inst->predicated = true; } @@ -1788,7 +1763,7 @@ fs_visitor::visit(ir_if *ir) } if (!ir->else_instructions.is_empty()) { - emit(fs_inst(BRW_OPCODE_ELSE)); + emit(BRW_OPCODE_ELSE); foreach_iter(exec_list_iterator, iter, ir->else_instructions) { ir_instruction *ir = (ir_instruction *)iter.get(); @@ -1798,7 +1773,7 @@ fs_visitor::visit(ir_if *ir) } } - emit(fs_inst(BRW_OPCODE_ENDIF)); + emit(BRW_OPCODE_ENDIF); } void @@ -1815,21 +1790,20 @@ fs_visitor::visit(ir_loop *ir) this->base_ir = ir->from; ir->from->accept(this); - emit(fs_inst(BRW_OPCODE_MOV, counter, this->result)); + emit(BRW_OPCODE_MOV, counter, this->result); } } - emit(fs_inst(BRW_OPCODE_DO)); + emit(BRW_OPCODE_DO); if (ir->to) { this->base_ir = ir->to; ir->to->accept(this); - fs_inst *inst = emit(fs_inst(BRW_OPCODE_CMP, reg_null_cmp, - counter, this->result)); + fs_inst *inst = emit(BRW_OPCODE_CMP, reg_null_cmp, counter, this->result); inst->conditional_mod = brw_conditional_for_comparison(ir->cmp); - inst = emit(fs_inst(BRW_OPCODE_BREAK)); + inst = emit(BRW_OPCODE_BREAK); inst->predicated = true; } @@ -1843,10 +1817,10 @@ fs_visitor::visit(ir_loop *ir) if (ir->increment) { this->base_ir = ir->increment; ir->increment->accept(this); - emit(fs_inst(BRW_OPCODE_ADD, counter, counter, this->result)); + emit(BRW_OPCODE_ADD, counter, counter, this->result); } - emit(fs_inst(BRW_OPCODE_WHILE)); + emit(BRW_OPCODE_WHILE); } void @@ -1854,10 +1828,10 @@ fs_visitor::visit(ir_loop_jump *ir) { switch (ir->mode) { case ir_loop_jump::jump_break: - emit(fs_inst(BRW_OPCODE_BREAK)); + emit(BRW_OPCODE_BREAK); break; case ir_loop_jump::jump_continue: - emit(fs_inst(BRW_OPCODE_CONTINUE)); + emit(BRW_OPCODE_CONTINUE); break; } } @@ -1923,23 +1897,13 @@ void fs_visitor::emit_dummy_fs() { /* Everyone's favorite color. */ - emit(fs_inst(BRW_OPCODE_MOV, - fs_reg(MRF, 2), - fs_reg(1.0f))); - emit(fs_inst(BRW_OPCODE_MOV, - fs_reg(MRF, 3), - fs_reg(0.0f))); - emit(fs_inst(BRW_OPCODE_MOV, - fs_reg(MRF, 4), - fs_reg(1.0f))); - emit(fs_inst(BRW_OPCODE_MOV, - fs_reg(MRF, 5), - fs_reg(0.0f))); + emit(BRW_OPCODE_MOV, fs_reg(MRF, 2), fs_reg(1.0f)); + emit(BRW_OPCODE_MOV, fs_reg(MRF, 3), fs_reg(0.0f)); + emit(BRW_OPCODE_MOV, fs_reg(MRF, 4), fs_reg(1.0f)); + emit(BRW_OPCODE_MOV, fs_reg(MRF, 5), fs_reg(0.0f)); fs_inst *write; - write = emit(fs_inst(FS_OPCODE_FB_WRITE, - fs_reg(0), - fs_reg(0))); + write = emit(FS_OPCODE_FB_WRITE, fs_reg(0), fs_reg(0)); write->base_mrf = 0; } @@ -1969,14 +1933,14 @@ fs_visitor::emit_interpolation_setup_gen4() this->pixel_y = fs_reg(this, glsl_type::uint_type); this->pixel_x.type = BRW_REGISTER_TYPE_UW; this->pixel_y.type = BRW_REGISTER_TYPE_UW; - emit(fs_inst(BRW_OPCODE_ADD, - this->pixel_x, - fs_reg(stride(suboffset(g1_uw, 4), 2, 4, 0)), - fs_reg(brw_imm_v(0x10101010)))); - emit(fs_inst(BRW_OPCODE_ADD, - this->pixel_y, - fs_reg(stride(suboffset(g1_uw, 5), 2, 4, 0)), - fs_reg(brw_imm_v(0x11001100)))); + emit(BRW_OPCODE_ADD, + this->pixel_x, + fs_reg(stride(suboffset(g1_uw, 4), 2, 4, 0)), + fs_reg(brw_imm_v(0x10101010))); + emit(BRW_OPCODE_ADD, + this->pixel_y, + fs_reg(stride(suboffset(g1_uw, 5), 2, 4, 0)), + fs_reg(brw_imm_v(0x11001100))); this->current_annotation = "compute pixel deltas from v0"; if (brw->has_pln) { @@ -1987,22 +1951,18 @@ fs_visitor::emit_interpolation_setup_gen4() this->delta_x = fs_reg(this, glsl_type::float_type); this->delta_y = fs_reg(this, glsl_type::float_type); } - emit(fs_inst(BRW_OPCODE_ADD, - this->delta_x, - this->pixel_x, - fs_reg(negate(brw_vec1_grf(1, 0))))); - emit(fs_inst(BRW_OPCODE_ADD, - this->delta_y, - this->pixel_y, - fs_reg(negate(brw_vec1_grf(1, 1))))); + emit(BRW_OPCODE_ADD, this->delta_x, + this->pixel_x, fs_reg(negate(brw_vec1_grf(1, 0)))); + emit(BRW_OPCODE_ADD, this->delta_y, + this->pixel_y, fs_reg(negate(brw_vec1_grf(1, 1)))); this->current_annotation = "compute pos.w and 1/pos.w"; /* Compute wpos.w. It's always in our setup, since it's needed to * interpolate the other attributes. */ this->wpos_w = fs_reg(this, glsl_type::float_type); - emit(fs_inst(FS_OPCODE_LINTERP, wpos_w, this->delta_x, this->delta_y, - interp_reg(FRAG_ATTRIB_WPOS, 3))); + emit(FS_OPCODE_LINTERP, wpos_w, this->delta_x, this->delta_y, + interp_reg(FRAG_ATTRIB_WPOS, 3)); /* Compute the pixel 1/W value from wpos.w. */ this->pixel_w = fs_reg(this, glsl_type::float_type); emit_math(FS_OPCODE_RCP, this->pixel_w, wpos_w); @@ -2021,14 +1981,14 @@ fs_visitor::emit_interpolation_setup_gen6() fs_reg int_pixel_y = fs_reg(this, glsl_type::uint_type); int_pixel_x.type = BRW_REGISTER_TYPE_UW; int_pixel_y.type = BRW_REGISTER_TYPE_UW; - emit(fs_inst(BRW_OPCODE_ADD, - int_pixel_x, - fs_reg(stride(suboffset(g1_uw, 4), 2, 4, 0)), - fs_reg(brw_imm_v(0x10101010)))); - emit(fs_inst(BRW_OPCODE_ADD, - int_pixel_y, - fs_reg(stride(suboffset(g1_uw, 5), 2, 4, 0)), - fs_reg(brw_imm_v(0x11001100)))); + emit(BRW_OPCODE_ADD, + int_pixel_x, + fs_reg(stride(suboffset(g1_uw, 4), 2, 4, 0)), + fs_reg(brw_imm_v(0x10101010))); + emit(BRW_OPCODE_ADD, + int_pixel_y, + fs_reg(stride(suboffset(g1_uw, 5), 2, 4, 0)), + fs_reg(brw_imm_v(0x11001100))); /* As of gen6, we can no longer mix float and int sources. We have * to turn the integer pixel centers into floats for their actual @@ -2036,8 +1996,8 @@ fs_visitor::emit_interpolation_setup_gen6() */ this->pixel_x = fs_reg(this, glsl_type::float_type); this->pixel_y = fs_reg(this, glsl_type::float_type); - emit(fs_inst(BRW_OPCODE_MOV, this->pixel_x, int_pixel_x)); - emit(fs_inst(BRW_OPCODE_MOV, this->pixel_y, int_pixel_y)); + emit(BRW_OPCODE_MOV, this->pixel_x, int_pixel_x); + emit(BRW_OPCODE_MOV, this->pixel_y, int_pixel_y); this->current_annotation = "compute 1/pos.w"; this->wpos_w = fs_reg(brw_vec8_grf(c->source_w_reg, 0)); @@ -2069,8 +2029,8 @@ fs_visitor::emit_fb_writes() } if (c->aa_dest_stencil_reg) { - emit(fs_inst(BRW_OPCODE_MOV, fs_reg(MRF, nr++), - fs_reg(brw_vec8_grf(c->aa_dest_stencil_reg, 0)))); + emit(BRW_OPCODE_MOV, fs_reg(MRF, nr++), + fs_reg(brw_vec8_grf(c->aa_dest_stencil_reg, 0))); } /* Reserve space for color. It'll be filled in per MRT below. */ @@ -2083,17 +2043,17 @@ fs_visitor::emit_fb_writes() assert(this->frag_depth); fs_reg depth = *(variable_storage(this->frag_depth)); - emit(fs_inst(BRW_OPCODE_MOV, fs_reg(MRF, nr++), depth)); + emit(BRW_OPCODE_MOV, fs_reg(MRF, nr++), depth); } else { /* Pass through the payload depth. */ - emit(fs_inst(BRW_OPCODE_MOV, fs_reg(MRF, nr++), - fs_reg(brw_vec8_grf(c->source_depth_reg, 0)))); + emit(BRW_OPCODE_MOV, fs_reg(MRF, nr++), + fs_reg(brw_vec8_grf(c->source_depth_reg, 0))); } } if (c->dest_depth_reg) { - emit(fs_inst(BRW_OPCODE_MOV, fs_reg(MRF, nr++), - fs_reg(brw_vec8_grf(c->dest_depth_reg, 0)))); + emit(BRW_OPCODE_MOV, fs_reg(MRF, nr++), + fs_reg(brw_vec8_grf(c->dest_depth_reg, 0))); } fs_reg color = reg_undef; @@ -2110,9 +2070,7 @@ fs_visitor::emit_fb_writes() target); if (this->frag_color || this->frag_data) { for (int i = 0; i < 4; i++) { - emit(fs_inst(BRW_OPCODE_MOV, - fs_reg(MRF, color_mrf + i), - color)); + emit(BRW_OPCODE_MOV, fs_reg(MRF, color_mrf + i), color); color.reg_offset++; } } @@ -2120,8 +2078,7 @@ fs_visitor::emit_fb_writes() if (this->frag_color) color.reg_offset -= 4; - fs_inst *inst = emit(fs_inst(FS_OPCODE_FB_WRITE, - reg_undef, reg_undef)); + fs_inst *inst = emit(FS_OPCODE_FB_WRITE, reg_undef, reg_undef); inst->target = target; inst->base_mrf = 0; inst->mlen = nr; @@ -2137,13 +2094,10 @@ fs_visitor::emit_fb_writes() * renderbuffer. */ color.reg_offset += 3; - emit(fs_inst(BRW_OPCODE_MOV, - fs_reg(MRF, color_mrf + 3), - color)); + emit(BRW_OPCODE_MOV, fs_reg(MRF, color_mrf + 3), color); } - fs_inst *inst = emit(fs_inst(FS_OPCODE_FB_WRITE, - reg_undef, reg_undef)); + fs_inst *inst = emit(FS_OPCODE_FB_WRITE, reg_undef, reg_undef); inst->base_mrf = 0; inst->mlen = nr; inst->eot = true; diff --git a/src/mesa/drivers/dri/i965/brw_fs.h b/src/mesa/drivers/dri/i965/brw_fs.h index dc030ae5b50..6551247559f 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.h +++ b/src/mesa/drivers/dri/i965/brw_fs.h @@ -432,6 +432,32 @@ public: void visit(ir_function_signature *ir); fs_inst *emit(fs_inst inst); + + fs_inst *emit(int opcode) + { + return emit(fs_inst(opcode)); + } + + fs_inst *emit(int opcode, fs_reg dst) + { + return emit(fs_inst(opcode, dst)); + } + + fs_inst *emit(int opcode, fs_reg dst, fs_reg src0) + { + return emit(fs_inst(opcode, dst, src0)); + } + + fs_inst *emit(int opcode, fs_reg dst, fs_reg src0, fs_reg src1) + { + return emit(fs_inst(opcode, dst, src0, src1)); + } + + fs_inst *emit(int opcode, fs_reg dst, fs_reg src0, fs_reg src1, fs_reg src2) + { + return emit(fs_inst(opcode, dst, src0, src1, src2)); + } + void setup_paramvalues_refs(); void assign_curb_setup(); void calculate_urb_setup(); From 4a101f957714dea2bc956d516d34c5b56ecb2c64 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Sun, 13 Mar 2011 00:25:36 -0800 Subject: [PATCH 030/420] i965/fs: Clean up reg_undef args from long ago lack of fs_inst overloads. --- src/mesa/drivers/dri/i965/brw_fs.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp index 1651eea0f03..cdc9926c81c 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp @@ -2078,7 +2078,7 @@ fs_visitor::emit_fb_writes() if (this->frag_color) color.reg_offset -= 4; - fs_inst *inst = emit(FS_OPCODE_FB_WRITE, reg_undef, reg_undef); + fs_inst *inst = emit(FS_OPCODE_FB_WRITE); inst->target = target; inst->base_mrf = 0; inst->mlen = nr; @@ -2097,7 +2097,7 @@ fs_visitor::emit_fb_writes() emit(BRW_OPCODE_MOV, fs_reg(MRF, color_mrf + 3), color); } - fs_inst *inst = emit(FS_OPCODE_FB_WRITE, reg_undef, reg_undef); + fs_inst *inst = emit(FS_OPCODE_FB_WRITE); inst->base_mrf = 0; inst->mlen = nr; inst->eot = true; From 2911fa0cca86f7acbc5423cab4dd328a412253cd Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Sun, 13 Mar 2011 13:43:05 -0700 Subject: [PATCH 031/420] i965/fs: Make compile failure more verbose with INTEL_DEBUG=wm. --- src/mesa/drivers/dri/i965/brw_fs.cpp | 39 +++++++++++++------ src/mesa/drivers/dri/i965/brw_fs.h | 5 ++- .../drivers/dri/i965/brw_fs_reg_allocate.cpp | 10 +++-- 3 files changed, 36 insertions(+), 18 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp index cdc9926c81c..ecc4d482b60 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp @@ -177,6 +177,23 @@ type_size(const struct glsl_type *type) } } +void +fs_visitor::fail(const char *format, ...) +{ + if (!failed) { + failed = true; + + if (INTEL_DEBUG & DEBUG_WM) { + fprintf(stderr, "FS compile failed: "); + + va_list va; + va_start(va, format); + vfprintf(stderr, format, va); + va_end(va); + } + } +} + /** * Returns how many MRFs an FS opcode will write over. * @@ -391,8 +408,7 @@ fs_visitor::setup_builtin_uniform_values(ir_variable *ir) } if (!statevar->name) { - this->fail = true; - printf("Failed to find builtin uniform `%s'\n", ir->name); + fail("Failed to find builtin uniform `%s'\n", ir->name); return; } @@ -503,7 +519,7 @@ fs_visitor::emit_general_interpolation(ir_variable *ir) if (ir->type->is_array()) { array_elements = ir->type->length; if (array_elements == 0) { - this->fail = true; + fail("dereferenced array '%s' has length 0\n", ir->name); } type = ir->type->fields.array; } else { @@ -821,9 +837,8 @@ fs_visitor::visit(ir_expression *ir) ir->operands[operand]->accept(this); if (this->result.file == BAD_FILE) { ir_print_visitor v; - printf("Failed to get tree for expression operand:\n"); + fail("Failed to get tree for expression operand:\n"); ir->operands[operand]->accept(&v); - this->fail = true; } op[operand] = this->result; @@ -1634,7 +1649,7 @@ fs_visitor::emit_bool_to_cond_code(ir_rvalue *ir) default: assert(!"not reached"); - this->fail = true; + fail("bad cond code\n"); break; } return; @@ -1724,7 +1739,7 @@ fs_visitor::emit_if_gen6(ir_if *ir) assert(!"not reached"); inst = emit(BRW_OPCODE_IF, reg_null_d, op[0], fs_reg(0)); inst->conditional_mod = BRW_CONDITIONAL_NZ; - this->fail = true; + fail("bad condition\n"); return; } return; @@ -3631,7 +3646,7 @@ fs_visitor::generate_code() } else { _mesa_problem(ctx, "Unsupported opcode %d in FS", inst->opcode); } - this->fail = true; + fail("unsupported opcode in FS\n"); } if (unlikely(INTEL_DEBUG & DEBUG_WM)) { @@ -3762,18 +3777,18 @@ brw_wm_fs_emit(struct brw_context *brw, struct brw_wm_compile *c) v.assign_regs_trivial(); else { while (!v.assign_regs()) { - if (v.fail) + if (v.failed) break; } } } - if (!v.fail) + if (!v.failed) v.generate_code(); - assert(!v.fail); /* FINISHME: Cleanly fail, tested at link time, etc. */ + assert(!v.failed); /* FINISHME: Cleanly fail, tested at link time, etc. */ - if (v.fail) + if (v.failed) return GL_FALSE; c->prog_data.total_grf = v.grf_used; diff --git a/src/mesa/drivers/dri/i965/brw_fs.h b/src/mesa/drivers/dri/i965/brw_fs.h index 6551247559f..e48bf40e3e4 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.h +++ b/src/mesa/drivers/dri/i965/brw_fs.h @@ -364,7 +364,7 @@ public: this->ctx = &intel->ctx; this->mem_ctx = ralloc_context(NULL); this->shader = shader; - this->fail = false; + this->failed = false; this->variable_ht = hash_table_ctor(0, hash_table_pointer_hash, hash_table_pointer_compare); @@ -476,6 +476,7 @@ public: bool remove_duplicate_mrf_writes(); bool virtual_grf_interferes(int a, int b); void schedule_instructions(); + void fail(const char *msg, ...); void generate_code(); void generate_fb_write(fs_inst *inst); @@ -549,7 +550,7 @@ public: ir_instruction *base_ir; /** @} */ - bool fail; + bool failed; /* Result of last visit() method. */ fs_reg result; diff --git a/src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp b/src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp index f0277423170..479a91436a7 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp @@ -119,8 +119,7 @@ fs_visitor::assign_regs() } if (i == class_count) { if (this->virtual_grf_sizes[r] >= base_reg_count) { - fprintf(stderr, "Object too large to register allocate.\n"); - this->fail = true; + fail("Object too large to register allocate.\n"); } class_sizes[class_count++] = this->virtual_grf_sizes[r]; @@ -226,8 +225,11 @@ fs_visitor::assign_regs() * loop back into here to try again. */ int reg = choose_spill_reg(g); - if (reg == -1 || intel->gen >= 6) { - this->fail = true; + + if (reg == -1) { + fail("no register to spill\n"); + } else if (intel->gen >= 6) { + fail("no spilling support on gen6 yet\n"); } else { spill_reg(reg); } From e4852ae4d24396daa323652023655fb3b6456ff5 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Thu, 24 Mar 2011 13:15:29 -0600 Subject: [PATCH 032/420] mesa: minor whitespace fixes --- src/mesa/main/atifragshader.c | 4 ++-- src/mesa/main/drawpix.c | 2 +- src/mesa/main/extensions.c | 4 ++-- src/mesa/main/pbo.c | 4 ++-- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/mesa/main/atifragshader.c b/src/mesa/main/atifragshader.c index 44097e1a266..c74c999f808 100644 --- a/src/mesa/main/atifragshader.c +++ b/src/mesa/main/atifragshader.c @@ -494,7 +494,7 @@ _mesa_PassTexCoordATI(GLuint dst, GLuint coord, GLenum swizzle) } } - curProg->regsAssigned[curProg->cur_pass >> 1] |= 1 << (dst - GL_REG_0_ATI); + curProg->regsAssigned[curProg->cur_pass >> 1] |= 1 << (dst - GL_REG_0_ATI); new_tex_inst(curProg); /* add the instructions */ @@ -567,7 +567,7 @@ _mesa_SampleMapATI(GLuint dst, GLuint interp, GLenum swizzle) } } - curProg->regsAssigned[curProg->cur_pass >> 1] |= 1 << (dst - GL_REG_0_ATI); + curProg->regsAssigned[curProg->cur_pass >> 1] |= 1 << (dst - GL_REG_0_ATI); new_tex_inst(curProg); /* add the instructions */ diff --git a/src/mesa/main/drawpix.c b/src/mesa/main/drawpix.c index fb86036a188..ee379f71bf5 100644 --- a/src/mesa/main/drawpix.c +++ b/src/mesa/main/drawpix.c @@ -188,7 +188,7 @@ _mesa_CopyPixels( GLint srcx, GLint srcy, GLsizei width, GLsizei height, goto end; } - if (!ctx->Current.RasterPosValid || width ==0 || height == 0) { + if (!ctx->Current.RasterPosValid || width == 0 || height == 0) { goto end; /* no-op, not an error */ } diff --git a/src/mesa/main/extensions.c b/src/mesa/main/extensions.c index 728c73c10ae..d0c08ca719a 100644 --- a/src/mesa/main/extensions.c +++ b/src/mesa/main/extensions.c @@ -753,7 +753,7 @@ _mesa_extension_is_enabled( struct gl_context *ctx, const char *name ) static char * get_extension_override( struct gl_context *ctx ) { - const char *env_const= _mesa_getenv("MESA_EXTENSION_OVERRIDE"); + const char *env_const = _mesa_getenv("MESA_EXTENSION_OVERRIDE"); char *env; char *ext; char *extra_exts; @@ -794,7 +794,7 @@ get_extension_override( struct gl_context *ctx ) } /* Remove trailing space. */ - len = strlen(extra_exts); + len = strlen(extra_exts); if (extra_exts[len - 1] == ' ') extra_exts[len - 1] = '\0'; diff --git a/src/mesa/main/pbo.c b/src/mesa/main/pbo.c index dc00d423ba9..56b26a954bd 100644 --- a/src/mesa/main/pbo.c +++ b/src/mesa/main/pbo.c @@ -81,8 +81,8 @@ _mesa_validate_pbo_access(GLuint dimensions, format, type, 0, 0, 0); /* get address just past the last pixel we'll read */ - end = _mesa_image_address(dimensions, pack, ptr, width, height, - format, type, depth-1, height-1, width); + end = _mesa_image_address(dimensions, pack, ptr, width, height, + format, type, depth-1, height-1, width); sizeAddr = ((const GLubyte *) 0) + pack->BufferObj->Size; From e1a9ef2304e9dc688b604fab889964922e76b6fe Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Thu, 24 Mar 2011 13:38:04 -0600 Subject: [PATCH 033/420] mesa: added _mesa_dump_image() for debugging --- src/mesa/main/debug.c | 24 ++++++++++++++++++++++++ src/mesa/main/debug.h | 4 ++++ 2 files changed, 28 insertions(+) diff --git a/src/mesa/main/debug.c b/src/mesa/main/debug.c index 78881668e49..2a8fd08806c 100644 --- a/src/mesa/main/debug.c +++ b/src/mesa/main/debug.c @@ -251,6 +251,9 @@ write_ppm(const char *filename, const GLubyte *buffer, int width, int height, } fclose(f); } + else { + fprintf(stderr, "Unable to create %s in write_ppm()\n", filename); + } } @@ -549,6 +552,27 @@ _mesa_dump_stencil_buffer(const char *filename) } +void +_mesa_dump_image(const char *filename, const void *image, GLuint w, GLuint h, + GLenum format, GLenum type) +{ + GLboolean invert = GL_TRUE; + + if (format == GL_RGBA && type == GL_UNSIGNED_BYTE) { + write_ppm(filename, image, w, h, 4, 0, 1, 2, invert); + } + else if (format == GL_BGRA && type == GL_UNSIGNED_BYTE) { + write_ppm(filename, image, w, h, 4, 2, 1, 0, invert); + } + else if (format == GL_LUMINANCE_ALPHA && type == GL_UNSIGNED_BYTE) { + write_ppm(filename, image, w, h, 2, 1, 0, 0, invert); + } + else { + _mesa_problem(NULL, "Unsupported format/type in _mesa_dump_image()"); + } +} + + /** * Quick and dirty function to "print" a texture to stdout. */ diff --git a/src/mesa/main/debug.h b/src/mesa/main/debug.h index 4968a9f1979..d7c53b65504 100644 --- a/src/mesa/main/debug.h +++ b/src/mesa/main/debug.h @@ -84,6 +84,10 @@ _mesa_dump_depth_buffer(const char *filename); extern void _mesa_dump_stencil_buffer(const char *filename); +extern void +_mesa_dump_image(const char *filename, const void *image, GLuint w, GLuint h, + GLenum format, GLenum type); + extern void _mesa_print_texture(struct gl_context *ctx, const struct gl_texture_image *img); From 226ae9d6c8f282de788404b4d98af7ddf8ee30f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Thu, 24 Mar 2011 23:35:16 +0100 Subject: [PATCH 034/420] r300g: fix alpha-test with no colorbuffer Piglit: - fbo-alphatest-nocolor NOTE: This is a candidate for the stable branches. --- src/gallium/drivers/r300/r300_emit.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/gallium/drivers/r300/r300_emit.c b/src/gallium/drivers/r300/r300_emit.c index e17a907e77e..3b79b36221d 100644 --- a/src/gallium/drivers/r300/r300_emit.c +++ b/src/gallium/drivers/r300/r300_emit.c @@ -495,6 +495,11 @@ void r300_emit_fb_state_pipelined(struct r300_context *r300, for (i = 0; i < num_cbufs; i++) { OUT_CS(r300_surface(fb->cbufs[i])->format); } + for (; i < 1; i++) { + OUT_CS(R300_US_OUT_FMT_C4_8 | + R300_C0_SEL_B | R300_C1_SEL_G | + R300_C2_SEL_R | R300_C3_SEL_A); + } for (; i < 4; i++) { OUT_CS(R300_US_OUT_FMT_UNUSED); } From acd7ce57f79b3bd729041dc97c04a78386d13404 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Fri, 25 Mar 2011 11:23:16 +0000 Subject: [PATCH 035/420] mesa,mapi: Remove spurious const keyword from ClearBufferfi args. --- src/mapi/glapi/gen/GL3x.xml | 4 ++-- src/mapi/glapi/glapi_mapi_tmp.h | 6 +++--- src/mapi/glapi/glapitable.h | 2 +- src/mapi/glapi/glapitemp.h | 2 +- src/mesa/main/glapidispatch.h | 2 +- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/mapi/glapi/gen/GL3x.xml b/src/mapi/glapi/gen/GL3x.xml index 8d15c94970c..cec9c916eff 100644 --- a/src/mapi/glapi/gen/GL3x.xml +++ b/src/mapi/glapi/gen/GL3x.xml @@ -133,8 +133,8 @@ - - + + diff --git a/src/mapi/glapi/glapi_mapi_tmp.h b/src/mapi/glapi/glapi_mapi_tmp.h index c3f9cd227ce..ce22c916ba0 100644 --- a/src/mapi/glapi/glapi_mapi_tmp.h +++ b/src/mapi/glapi/glapi_mapi_tmp.h @@ -522,7 +522,7 @@ GLAPI void APIENTRY GLAPI_PREFIX(UniformMatrix3x4fv)(GLint location, GLsizei cou GLAPI void APIENTRY GLAPI_PREFIX(UniformMatrix4x2fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); GLAPI void APIENTRY GLAPI_PREFIX(UniformMatrix4x3fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); GLAPI void APIENTRY GLAPI_PREFIX(ClampColor)(GLenum target, GLenum clamp); -GLAPI void APIENTRY GLAPI_PREFIX(ClearBufferfi)(GLenum buffer, GLint drawbuffer, const GLfloat depth, const GLint stencil); +GLAPI void APIENTRY GLAPI_PREFIX(ClearBufferfi)(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil); GLAPI void APIENTRY GLAPI_PREFIX(ClearBufferfv)(GLenum buffer, GLint drawbuffer, const GLfloat *value); GLAPI void APIENTRY GLAPI_PREFIX(ClearBufferiv)(GLenum buffer, GLint drawbuffer, const GLint *value); GLAPI void APIENTRY GLAPI_PREFIX(ClearBufferuiv)(GLenum buffer, GLint drawbuffer, const GLuint *value); @@ -4751,11 +4751,11 @@ GLAPI void APIENTRY GLAPI_PREFIX(ClampColor)(GLenum target, GLenum clamp) ((void (APIENTRY *)(GLenum target, GLenum clamp)) _func)(target, clamp); } -GLAPI void APIENTRY GLAPI_PREFIX(ClearBufferfi)(GLenum buffer, GLint drawbuffer, const GLfloat depth, const GLint stencil) +GLAPI void APIENTRY GLAPI_PREFIX(ClearBufferfi)(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil) { const struct mapi_table *_tbl = entry_current_get(); mapi_func _func = ((const mapi_func *) _tbl)[431]; - ((void (APIENTRY *)(GLenum buffer, GLint drawbuffer, const GLfloat depth, const GLint stencil)) _func)(buffer, drawbuffer, depth, stencil); + ((void (APIENTRY *)(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)) _func)(buffer, drawbuffer, depth, stencil); } GLAPI void APIENTRY GLAPI_PREFIX(ClearBufferfv)(GLenum buffer, GLint drawbuffer, const GLfloat *value) diff --git a/src/mapi/glapi/glapitable.h b/src/mapi/glapi/glapitable.h index 1de71b97daf..bc6f25f9d18 100644 --- a/src/mapi/glapi/glapitable.h +++ b/src/mapi/glapi/glapitable.h @@ -471,7 +471,7 @@ struct _glapi_table void (GLAPIENTRYP UniformMatrix4x2fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value); /* 428 */ void (GLAPIENTRYP UniformMatrix4x3fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value); /* 429 */ void (GLAPIENTRYP ClampColor)(GLenum target, GLenum clamp); /* 430 */ - void (GLAPIENTRYP ClearBufferfi)(GLenum buffer, GLint drawbuffer, const GLfloat depth, const GLint stencil); /* 431 */ + void (GLAPIENTRYP ClearBufferfi)(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil); /* 431 */ void (GLAPIENTRYP ClearBufferfv)(GLenum buffer, GLint drawbuffer, const GLfloat * value); /* 432 */ void (GLAPIENTRYP ClearBufferiv)(GLenum buffer, GLint drawbuffer, const GLint * value); /* 433 */ void (GLAPIENTRYP ClearBufferuiv)(GLenum buffer, GLint drawbuffer, const GLuint * value); /* 434 */ diff --git a/src/mapi/glapi/glapitemp.h b/src/mapi/glapi/glapitemp.h index 941532046e0..893bd200341 100644 --- a/src/mapi/glapi/glapitemp.h +++ b/src/mapi/glapi/glapitemp.h @@ -2637,7 +2637,7 @@ KEYWORD1 void KEYWORD2 NAME(ClampColor)(GLenum target, GLenum clamp) DISPATCH(ClampColor, (target, clamp), (F, "glClampColor(0x%x, 0x%x);\n", target, clamp)); } -KEYWORD1 void KEYWORD2 NAME(ClearBufferfi)(GLenum buffer, GLint drawbuffer, const GLfloat depth, const GLint stencil) +KEYWORD1 void KEYWORD2 NAME(ClearBufferfi)(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil) { DISPATCH(ClearBufferfi, (buffer, drawbuffer, depth, stencil), (F, "glClearBufferfi(0x%x, %d, %f, %d);\n", buffer, drawbuffer, depth, stencil)); } diff --git a/src/mesa/main/glapidispatch.h b/src/mesa/main/glapidispatch.h index cbfe6400e42..b29c7cb78e6 100644 --- a/src/mesa/main/glapidispatch.h +++ b/src/mesa/main/glapidispatch.h @@ -3227,7 +3227,7 @@ extern int driDispatchRemapTable[ driDispatchRemapTable_size ]; #define CALL_ClampColor(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum)), _gloffset_ClampColor, parameters) #define GET_ClampColor(disp) GET_by_offset(disp, _gloffset_ClampColor) #define SET_ClampColor(disp, fn) SET_by_offset(disp, _gloffset_ClampColor, fn) -#define CALL_ClearBufferfi(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, const GLfloat, const GLint)), _gloffset_ClearBufferfi, parameters) +#define CALL_ClearBufferfi(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLfloat, GLint)), _gloffset_ClearBufferfi, parameters) #define GET_ClearBufferfi(disp) GET_by_offset(disp, _gloffset_ClearBufferfi) #define SET_ClearBufferfi(disp, fn) SET_by_offset(disp, _gloffset_ClearBufferfi, fn) #define CALL_ClearBufferfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, const GLfloat *)), _gloffset_ClearBufferfv, parameters) From 5858abec6efd01d6d190d9116ff803c096bc279b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Fri, 25 Mar 2011 11:37:24 +0000 Subject: [PATCH 036/420] gallium: Avoid redefinition of likely/unlikely macros on non gcc compilers. --- src/gallium/include/pipe/p_compiler.h | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/gallium/include/pipe/p_compiler.h b/src/gallium/include/pipe/p_compiler.h index 3441db685ce..8c788f4bb0e 100644 --- a/src/gallium/include/pipe/p_compiler.h +++ b/src/gallium/include/pipe/p_compiler.h @@ -292,12 +292,14 @@ void _ReadWriteBarrier(void); * Note that profile guided optimization can offer better results, but * needs an appropriate coverage suite and does not inform human readers. */ -#ifdef __GNUC__ -#define likely(x) __builtin_expect(!!(x), 1) -#define unlikely(x) __builtin_expect(!!(x), 0) -#else -#define likely(x) !!(x) -#define unlikely(x) !!(x) +#ifndef likely +# if defined(__GNUC__) +# define likely(x) __builtin_expect(!!(x), 1) +# define unlikely(x) __builtin_expect(!!(x), 0) +# else +# define likely(x) (x) +# define unlikely(x) (x) +# endif #endif From 7fbe020bbcfeefbb2b6d6d8d0e23bca99bc06bf1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Fri, 25 Mar 2011 15:41:43 +0000 Subject: [PATCH 037/420] mesa: Use appropriate call convention in VertexAttribI*v. We were using typecasts because the functions pointers are polymorphic in the second argument type, which. Surprisingly the wrong calling convention didn't cause crashes on Windows, but it was causing certain registers to be trashed in MSVC optimized builds, when processing callists in the ClearView RC Flight Simulator. --- src/mesa/main/api_arrayelt.c | 272 +++++++++++++++++------------------ 1 file changed, 136 insertions(+), 136 deletions(-) diff --git a/src/mesa/main/api_arrayelt.c b/src/mesa/main/api_arrayelt.c index b429e2627e3..f88da845853 100644 --- a/src/mesa/main/api_arrayelt.c +++ b/src/mesa/main/api_arrayelt.c @@ -175,31 +175,31 @@ static int FogCoordFuncs[NUM_TYPES]; /* GL_BYTE attributes */ -static void +static void GLAPIENTRY VertexAttrib1NbvNV(GLuint index, const GLbyte *v) { CALL_VertexAttrib1fNV(GET_DISPATCH(), (index, BYTE_TO_FLOAT(v[0]))); } -static void +static void GLAPIENTRY VertexAttrib1bvNV(GLuint index, const GLbyte *v) { CALL_VertexAttrib1fNV(GET_DISPATCH(), (index, (GLfloat)v[0])); } -static void +static void GLAPIENTRY VertexAttrib2NbvNV(GLuint index, const GLbyte *v) { CALL_VertexAttrib2fNV(GET_DISPATCH(), (index, BYTE_TO_FLOAT(v[0]), BYTE_TO_FLOAT(v[1]))); } -static void +static void GLAPIENTRY VertexAttrib2bvNV(GLuint index, const GLbyte *v) { CALL_VertexAttrib2fNV(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1])); } -static void +static void GLAPIENTRY VertexAttrib3NbvNV(GLuint index, const GLbyte *v) { CALL_VertexAttrib3fNV(GET_DISPATCH(), (index, BYTE_TO_FLOAT(v[0]), @@ -207,13 +207,13 @@ VertexAttrib3NbvNV(GLuint index, const GLbyte *v) BYTE_TO_FLOAT(v[2]))); } -static void +static void GLAPIENTRY VertexAttrib3bvNV(GLuint index, const GLbyte *v) { CALL_VertexAttrib3fNV(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1], (GLfloat)v[2])); } -static void +static void GLAPIENTRY VertexAttrib4NbvNV(GLuint index, const GLbyte *v) { CALL_VertexAttrib4fNV(GET_DISPATCH(), (index, BYTE_TO_FLOAT(v[0]), @@ -222,7 +222,7 @@ VertexAttrib4NbvNV(GLuint index, const GLbyte *v) BYTE_TO_FLOAT(v[3]))); } -static void +static void GLAPIENTRY VertexAttrib4bvNV(GLuint index, const GLbyte *v) { CALL_VertexAttrib4fNV(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1], (GLfloat)v[2], (GLfloat)v[3])); @@ -230,46 +230,46 @@ VertexAttrib4bvNV(GLuint index, const GLbyte *v) /* GL_UNSIGNED_BYTE attributes */ -static void +static void GLAPIENTRY VertexAttrib1NubvNV(GLuint index, const GLubyte *v) { CALL_VertexAttrib1fNV(GET_DISPATCH(), (index, UBYTE_TO_FLOAT(v[0]))); } -static void +static void GLAPIENTRY VertexAttrib1ubvNV(GLuint index, const GLubyte *v) { CALL_VertexAttrib1fNV(GET_DISPATCH(), (index, (GLfloat)v[0])); } -static void +static void GLAPIENTRY VertexAttrib2NubvNV(GLuint index, const GLubyte *v) { CALL_VertexAttrib2fNV(GET_DISPATCH(), (index, UBYTE_TO_FLOAT(v[0]), UBYTE_TO_FLOAT(v[1]))); } -static void +static void GLAPIENTRY VertexAttrib2ubvNV(GLuint index, const GLubyte *v) { CALL_VertexAttrib2fNV(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1])); } -static void +static void GLAPIENTRY VertexAttrib3NubvNV(GLuint index, const GLubyte *v) { CALL_VertexAttrib3fNV(GET_DISPATCH(), (index, UBYTE_TO_FLOAT(v[0]), UBYTE_TO_FLOAT(v[1]), UBYTE_TO_FLOAT(v[2]))); } -static void +static void GLAPIENTRY VertexAttrib3ubvNV(GLuint index, const GLubyte *v) { CALL_VertexAttrib3fNV(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1], (GLfloat)v[2])); } -static void +static void GLAPIENTRY VertexAttrib4NubvNV(GLuint index, const GLubyte *v) { CALL_VertexAttrib4fNV(GET_DISPATCH(), (index, UBYTE_TO_FLOAT(v[0]), @@ -278,7 +278,7 @@ VertexAttrib4NubvNV(GLuint index, const GLubyte *v) UBYTE_TO_FLOAT(v[3]))); } -static void +static void GLAPIENTRY VertexAttrib4ubvNV(GLuint index, const GLubyte *v) { CALL_VertexAttrib4fNV(GET_DISPATCH(), (index, (GLfloat)v[0], @@ -288,32 +288,32 @@ VertexAttrib4ubvNV(GLuint index, const GLubyte *v) /* GL_SHORT attributes */ -static void +static void GLAPIENTRY VertexAttrib1NsvNV(GLuint index, const GLshort *v) { CALL_VertexAttrib1fNV(GET_DISPATCH(), (index, SHORT_TO_FLOAT(v[0]))); } -static void +static void GLAPIENTRY VertexAttrib1svNV(GLuint index, const GLshort *v) { CALL_VertexAttrib1fNV(GET_DISPATCH(), (index, (GLfloat)v[0])); } -static void +static void GLAPIENTRY VertexAttrib2NsvNV(GLuint index, const GLshort *v) { CALL_VertexAttrib2fNV(GET_DISPATCH(), (index, SHORT_TO_FLOAT(v[0]), SHORT_TO_FLOAT(v[1]))); } -static void +static void GLAPIENTRY VertexAttrib2svNV(GLuint index, const GLshort *v) { CALL_VertexAttrib2fNV(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1])); } -static void +static void GLAPIENTRY VertexAttrib3NsvNV(GLuint index, const GLshort *v) { CALL_VertexAttrib3fNV(GET_DISPATCH(), (index, SHORT_TO_FLOAT(v[0]), @@ -321,14 +321,14 @@ VertexAttrib3NsvNV(GLuint index, const GLshort *v) SHORT_TO_FLOAT(v[2]))); } -static void +static void GLAPIENTRY VertexAttrib3svNV(GLuint index, const GLshort *v) { CALL_VertexAttrib3fNV(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1], (GLfloat)v[2])); } -static void +static void GLAPIENTRY VertexAttrib4NsvNV(GLuint index, const GLshort *v) { CALL_VertexAttrib4fNV(GET_DISPATCH(), (index, SHORT_TO_FLOAT(v[0]), @@ -337,7 +337,7 @@ VertexAttrib4NsvNV(GLuint index, const GLshort *v) SHORT_TO_FLOAT(v[3]))); } -static void +static void GLAPIENTRY VertexAttrib4svNV(GLuint index, const GLshort *v) { CALL_VertexAttrib4fNV(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1], @@ -346,33 +346,33 @@ VertexAttrib4svNV(GLuint index, const GLshort *v) /* GL_UNSIGNED_SHORT attributes */ -static void +static void GLAPIENTRY VertexAttrib1NusvNV(GLuint index, const GLushort *v) { CALL_VertexAttrib1fNV(GET_DISPATCH(), (index, USHORT_TO_FLOAT(v[0]))); } -static void +static void GLAPIENTRY VertexAttrib1usvNV(GLuint index, const GLushort *v) { CALL_VertexAttrib1fNV(GET_DISPATCH(), (index, (GLfloat)v[0])); } -static void +static void GLAPIENTRY VertexAttrib2NusvNV(GLuint index, const GLushort *v) { CALL_VertexAttrib2fNV(GET_DISPATCH(), (index, USHORT_TO_FLOAT(v[0]), USHORT_TO_FLOAT(v[1]))); } -static void +static void GLAPIENTRY VertexAttrib2usvNV(GLuint index, const GLushort *v) { CALL_VertexAttrib2fNV(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1])); } -static void +static void GLAPIENTRY VertexAttrib3NusvNV(GLuint index, const GLushort *v) { CALL_VertexAttrib3fNV(GET_DISPATCH(), (index, USHORT_TO_FLOAT(v[0]), @@ -380,14 +380,14 @@ VertexAttrib3NusvNV(GLuint index, const GLushort *v) USHORT_TO_FLOAT(v[2]))); } -static void +static void GLAPIENTRY VertexAttrib3usvNV(GLuint index, const GLushort *v) { CALL_VertexAttrib3fNV(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1], (GLfloat)v[2])); } -static void +static void GLAPIENTRY VertexAttrib4NusvNV(GLuint index, const GLushort *v) { CALL_VertexAttrib4fNV(GET_DISPATCH(), (index, USHORT_TO_FLOAT(v[0]), @@ -396,7 +396,7 @@ VertexAttrib4NusvNV(GLuint index, const GLushort *v) USHORT_TO_FLOAT(v[3]))); } -static void +static void GLAPIENTRY VertexAttrib4usvNV(GLuint index, const GLushort *v) { CALL_VertexAttrib4fNV(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1], @@ -405,32 +405,32 @@ VertexAttrib4usvNV(GLuint index, const GLushort *v) /* GL_INT attributes */ -static void +static void GLAPIENTRY VertexAttrib1NivNV(GLuint index, const GLint *v) { CALL_VertexAttrib1fNV(GET_DISPATCH(), (index, INT_TO_FLOAT(v[0]))); } -static void +static void GLAPIENTRY VertexAttrib1ivNV(GLuint index, const GLint *v) { CALL_VertexAttrib1fNV(GET_DISPATCH(), (index, (GLfloat)v[0])); } -static void +static void GLAPIENTRY VertexAttrib2NivNV(GLuint index, const GLint *v) { CALL_VertexAttrib2fNV(GET_DISPATCH(), (index, INT_TO_FLOAT(v[0]), INT_TO_FLOAT(v[1]))); } -static void +static void GLAPIENTRY VertexAttrib2ivNV(GLuint index, const GLint *v) { CALL_VertexAttrib2fNV(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1])); } -static void +static void GLAPIENTRY VertexAttrib3NivNV(GLuint index, const GLint *v) { CALL_VertexAttrib3fNV(GET_DISPATCH(), (index, INT_TO_FLOAT(v[0]), @@ -438,14 +438,14 @@ VertexAttrib3NivNV(GLuint index, const GLint *v) INT_TO_FLOAT(v[2]))); } -static void +static void GLAPIENTRY VertexAttrib3ivNV(GLuint index, const GLint *v) { CALL_VertexAttrib3fNV(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1], (GLfloat)v[2])); } -static void +static void GLAPIENTRY VertexAttrib4NivNV(GLuint index, const GLint *v) { CALL_VertexAttrib4fNV(GET_DISPATCH(), (index, INT_TO_FLOAT(v[0]), @@ -454,7 +454,7 @@ VertexAttrib4NivNV(GLuint index, const GLint *v) INT_TO_FLOAT(v[3]))); } -static void +static void GLAPIENTRY VertexAttrib4ivNV(GLuint index, const GLint *v) { CALL_VertexAttrib4fNV(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1], @@ -463,33 +463,33 @@ VertexAttrib4ivNV(GLuint index, const GLint *v) /* GL_UNSIGNED_INT attributes */ -static void +static void GLAPIENTRY VertexAttrib1NuivNV(GLuint index, const GLuint *v) { CALL_VertexAttrib1fNV(GET_DISPATCH(), (index, UINT_TO_FLOAT(v[0]))); } -static void +static void GLAPIENTRY VertexAttrib1uivNV(GLuint index, const GLuint *v) { CALL_VertexAttrib1fNV(GET_DISPATCH(), (index, (GLfloat)v[0])); } -static void +static void GLAPIENTRY VertexAttrib2NuivNV(GLuint index, const GLuint *v) { CALL_VertexAttrib2fNV(GET_DISPATCH(), (index, UINT_TO_FLOAT(v[0]), UINT_TO_FLOAT(v[1]))); } -static void +static void GLAPIENTRY VertexAttrib2uivNV(GLuint index, const GLuint *v) { CALL_VertexAttrib2fNV(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1])); } -static void +static void GLAPIENTRY VertexAttrib3NuivNV(GLuint index, const GLuint *v) { CALL_VertexAttrib3fNV(GET_DISPATCH(), (index, UINT_TO_FLOAT(v[0]), @@ -497,14 +497,14 @@ VertexAttrib3NuivNV(GLuint index, const GLuint *v) UINT_TO_FLOAT(v[2]))); } -static void +static void GLAPIENTRY VertexAttrib3uivNV(GLuint index, const GLuint *v) { CALL_VertexAttrib3fNV(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1], (GLfloat)v[2])); } -static void +static void GLAPIENTRY VertexAttrib4NuivNV(GLuint index, const GLuint *v) { CALL_VertexAttrib4fNV(GET_DISPATCH(), (index, UINT_TO_FLOAT(v[0]), @@ -513,7 +513,7 @@ VertexAttrib4NuivNV(GLuint index, const GLuint *v) UINT_TO_FLOAT(v[3]))); } -static void +static void GLAPIENTRY VertexAttrib4uivNV(GLuint index, const GLuint *v) { CALL_VertexAttrib4fNV(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1], @@ -522,25 +522,25 @@ VertexAttrib4uivNV(GLuint index, const GLuint *v) /* GL_FLOAT attributes */ -static void +static void GLAPIENTRY VertexAttrib1fvNV(GLuint index, const GLfloat *v) { CALL_VertexAttrib1fvNV(GET_DISPATCH(), (index, v)); } -static void +static void GLAPIENTRY VertexAttrib2fvNV(GLuint index, const GLfloat *v) { CALL_VertexAttrib2fvNV(GET_DISPATCH(), (index, v)); } -static void +static void GLAPIENTRY VertexAttrib3fvNV(GLuint index, const GLfloat *v) { CALL_VertexAttrib3fvNV(GET_DISPATCH(), (index, v)); } -static void +static void GLAPIENTRY VertexAttrib4fvNV(GLuint index, const GLfloat *v) { CALL_VertexAttrib4fvNV(GET_DISPATCH(), (index, v)); @@ -548,25 +548,25 @@ VertexAttrib4fvNV(GLuint index, const GLfloat *v) /* GL_DOUBLE attributes */ -static void +static void GLAPIENTRY VertexAttrib1dvNV(GLuint index, const GLdouble *v) { CALL_VertexAttrib1dvNV(GET_DISPATCH(), (index, v)); } -static void +static void GLAPIENTRY VertexAttrib2dvNV(GLuint index, const GLdouble *v) { CALL_VertexAttrib2dvNV(GET_DISPATCH(), (index, v)); } -static void +static void GLAPIENTRY VertexAttrib3dvNV(GLuint index, const GLdouble *v) { CALL_VertexAttrib3dvNV(GET_DISPATCH(), (index, v)); } -static void +static void GLAPIENTRY VertexAttrib4dvNV(GLuint index, const GLdouble *v) { CALL_VertexAttrib4dvNV(GET_DISPATCH(), (index, v)); @@ -680,31 +680,31 @@ static attrib_func AttribFuncsNV[2][4][NUM_TYPES] = { /* GL_BYTE attributes */ -static void +static void GLAPIENTRY VertexAttrib1NbvARB(GLuint index, const GLbyte *v) { CALL_VertexAttrib1fARB(GET_DISPATCH(), (index, BYTE_TO_FLOAT(v[0]))); } -static void +static void GLAPIENTRY VertexAttrib1bvARB(GLuint index, const GLbyte *v) { CALL_VertexAttrib1fARB(GET_DISPATCH(), (index, (GLfloat)v[0])); } -static void +static void GLAPIENTRY VertexAttrib2NbvARB(GLuint index, const GLbyte *v) { CALL_VertexAttrib2fARB(GET_DISPATCH(), (index, BYTE_TO_FLOAT(v[0]), BYTE_TO_FLOAT(v[1]))); } -static void +static void GLAPIENTRY VertexAttrib2bvARB(GLuint index, const GLbyte *v) { CALL_VertexAttrib2fARB(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1])); } -static void +static void GLAPIENTRY VertexAttrib3NbvARB(GLuint index, const GLbyte *v) { CALL_VertexAttrib3fARB(GET_DISPATCH(), (index, BYTE_TO_FLOAT(v[0]), @@ -712,13 +712,13 @@ VertexAttrib3NbvARB(GLuint index, const GLbyte *v) BYTE_TO_FLOAT(v[2]))); } -static void +static void GLAPIENTRY VertexAttrib3bvARB(GLuint index, const GLbyte *v) { CALL_VertexAttrib3fARB(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1], (GLfloat)v[2])); } -static void +static void GLAPIENTRY VertexAttrib4NbvARB(GLuint index, const GLbyte *v) { CALL_VertexAttrib4fARB(GET_DISPATCH(), (index, BYTE_TO_FLOAT(v[0]), @@ -727,7 +727,7 @@ VertexAttrib4NbvARB(GLuint index, const GLbyte *v) BYTE_TO_FLOAT(v[3]))); } -static void +static void GLAPIENTRY VertexAttrib4bvARB(GLuint index, const GLbyte *v) { CALL_VertexAttrib4fARB(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1], (GLfloat)v[2], (GLfloat)v[3])); @@ -735,19 +735,19 @@ VertexAttrib4bvARB(GLuint index, const GLbyte *v) /* GL_UNSIGNED_BYTE attributes */ -static void +static void GLAPIENTRY VertexAttrib1NubvARB(GLuint index, const GLubyte *v) { CALL_VertexAttrib1fARB(GET_DISPATCH(), (index, UBYTE_TO_FLOAT(v[0]))); } -static void +static void GLAPIENTRY VertexAttrib1ubvARB(GLuint index, const GLubyte *v) { CALL_VertexAttrib1fARB(GET_DISPATCH(), (index, (GLfloat)v[0])); } -static void +static void GLAPIENTRY VertexAttrib2NubvARB(GLuint index, const GLubyte *v) { CALL_VertexAttrib2fARB(GET_DISPATCH(), (index, @@ -755,14 +755,14 @@ VertexAttrib2NubvARB(GLuint index, const GLubyte *v) UBYTE_TO_FLOAT(v[1]))); } -static void +static void GLAPIENTRY VertexAttrib2ubvARB(GLuint index, const GLubyte *v) { CALL_VertexAttrib2fARB(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1])); } -static void +static void GLAPIENTRY VertexAttrib3NubvARB(GLuint index, const GLubyte *v) { CALL_VertexAttrib3fARB(GET_DISPATCH(), (index, @@ -770,7 +770,7 @@ VertexAttrib3NubvARB(GLuint index, const GLubyte *v) UBYTE_TO_FLOAT(v[1]), UBYTE_TO_FLOAT(v[2]))); } -static void +static void GLAPIENTRY VertexAttrib3ubvARB(GLuint index, const GLubyte *v) { CALL_VertexAttrib3fARB(GET_DISPATCH(), (index, @@ -779,7 +779,7 @@ VertexAttrib3ubvARB(GLuint index, const GLubyte *v) (GLfloat)v[2])); } -static void +static void GLAPIENTRY VertexAttrib4NubvARB(GLuint index, const GLubyte *v) { CALL_VertexAttrib4fARB(GET_DISPATCH(), @@ -790,7 +790,7 @@ VertexAttrib4NubvARB(GLuint index, const GLubyte *v) UBYTE_TO_FLOAT(v[3]))); } -static void +static void GLAPIENTRY VertexAttrib4ubvARB(GLuint index, const GLubyte *v) { CALL_VertexAttrib4fARB(GET_DISPATCH(), @@ -801,19 +801,19 @@ VertexAttrib4ubvARB(GLuint index, const GLubyte *v) /* GL_SHORT attributes */ -static void +static void GLAPIENTRY VertexAttrib1NsvARB(GLuint index, const GLshort *v) { CALL_VertexAttrib1fARB(GET_DISPATCH(), (index, SHORT_TO_FLOAT(v[0]))); } -static void +static void GLAPIENTRY VertexAttrib1svARB(GLuint index, const GLshort *v) { CALL_VertexAttrib1fARB(GET_DISPATCH(), (index, (GLfloat)v[0])); } -static void +static void GLAPIENTRY VertexAttrib2NsvARB(GLuint index, const GLshort *v) { CALL_VertexAttrib2fARB(GET_DISPATCH(), @@ -821,14 +821,14 @@ VertexAttrib2NsvARB(GLuint index, const GLshort *v) SHORT_TO_FLOAT(v[1]))); } -static void +static void GLAPIENTRY VertexAttrib2svARB(GLuint index, const GLshort *v) { CALL_VertexAttrib2fARB(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1])); } -static void +static void GLAPIENTRY VertexAttrib3NsvARB(GLuint index, const GLshort *v) { CALL_VertexAttrib3fARB(GET_DISPATCH(), @@ -838,7 +838,7 @@ VertexAttrib3NsvARB(GLuint index, const GLshort *v) SHORT_TO_FLOAT(v[2]))); } -static void +static void GLAPIENTRY VertexAttrib3svARB(GLuint index, const GLshort *v) { CALL_VertexAttrib3fARB(GET_DISPATCH(), @@ -846,7 +846,7 @@ VertexAttrib3svARB(GLuint index, const GLshort *v) (GLfloat)v[0], (GLfloat)v[1], (GLfloat)v[2])); } -static void +static void GLAPIENTRY VertexAttrib4NsvARB(GLuint index, const GLshort *v) { CALL_VertexAttrib4fARB(GET_DISPATCH(), @@ -857,7 +857,7 @@ VertexAttrib4NsvARB(GLuint index, const GLshort *v) SHORT_TO_FLOAT(v[3]))); } -static void +static void GLAPIENTRY VertexAttrib4svARB(GLuint index, const GLshort *v) { CALL_VertexAttrib4fARB(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1], @@ -866,33 +866,33 @@ VertexAttrib4svARB(GLuint index, const GLshort *v) /* GL_UNSIGNED_SHORT attributes */ -static void +static void GLAPIENTRY VertexAttrib1NusvARB(GLuint index, const GLushort *v) { CALL_VertexAttrib1fARB(GET_DISPATCH(), (index, USHORT_TO_FLOAT(v[0]))); } -static void +static void GLAPIENTRY VertexAttrib1usvARB(GLuint index, const GLushort *v) { CALL_VertexAttrib1fARB(GET_DISPATCH(), (index, (GLfloat)v[0])); } -static void +static void GLAPIENTRY VertexAttrib2NusvARB(GLuint index, const GLushort *v) { CALL_VertexAttrib2fARB(GET_DISPATCH(), (index, USHORT_TO_FLOAT(v[0]), USHORT_TO_FLOAT(v[1]))); } -static void +static void GLAPIENTRY VertexAttrib2usvARB(GLuint index, const GLushort *v) { CALL_VertexAttrib2fARB(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1])); } -static void +static void GLAPIENTRY VertexAttrib3NusvARB(GLuint index, const GLushort *v) { CALL_VertexAttrib3fARB(GET_DISPATCH(), (index, USHORT_TO_FLOAT(v[0]), @@ -900,14 +900,14 @@ VertexAttrib3NusvARB(GLuint index, const GLushort *v) USHORT_TO_FLOAT(v[2]))); } -static void +static void GLAPIENTRY VertexAttrib3usvARB(GLuint index, const GLushort *v) { CALL_VertexAttrib3fARB(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1], (GLfloat)v[2])); } -static void +static void GLAPIENTRY VertexAttrib4NusvARB(GLuint index, const GLushort *v) { CALL_VertexAttrib4fARB(GET_DISPATCH(), (index, USHORT_TO_FLOAT(v[0]), @@ -916,7 +916,7 @@ VertexAttrib4NusvARB(GLuint index, const GLushort *v) USHORT_TO_FLOAT(v[3]))); } -static void +static void GLAPIENTRY VertexAttrib4usvARB(GLuint index, const GLushort *v) { CALL_VertexAttrib4fARB(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1], (GLfloat)v[2], (GLfloat)v[3])); @@ -924,33 +924,33 @@ VertexAttrib4usvARB(GLuint index, const GLushort *v) /* GL_INT attributes */ -static void +static void GLAPIENTRY VertexAttrib1NivARB(GLuint index, const GLint *v) { CALL_VertexAttrib1fARB(GET_DISPATCH(), (index, INT_TO_FLOAT(v[0]))); } -static void +static void GLAPIENTRY VertexAttrib1ivARB(GLuint index, const GLint *v) { CALL_VertexAttrib1fARB(GET_DISPATCH(), (index, (GLfloat)v[0])); } -static void +static void GLAPIENTRY VertexAttrib2NivARB(GLuint index, const GLint *v) { CALL_VertexAttrib2fARB(GET_DISPATCH(), (index, INT_TO_FLOAT(v[0]), INT_TO_FLOAT(v[1]))); } -static void +static void GLAPIENTRY VertexAttrib2ivARB(GLuint index, const GLint *v) { CALL_VertexAttrib2fARB(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1])); } -static void +static void GLAPIENTRY VertexAttrib3NivARB(GLuint index, const GLint *v) { CALL_VertexAttrib3fARB(GET_DISPATCH(), (index, INT_TO_FLOAT(v[0]), @@ -958,14 +958,14 @@ VertexAttrib3NivARB(GLuint index, const GLint *v) INT_TO_FLOAT(v[2]))); } -static void +static void GLAPIENTRY VertexAttrib3ivARB(GLuint index, const GLint *v) { CALL_VertexAttrib3fARB(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1], (GLfloat)v[2])); } -static void +static void GLAPIENTRY VertexAttrib4NivARB(GLuint index, const GLint *v) { CALL_VertexAttrib4fARB(GET_DISPATCH(), (index, INT_TO_FLOAT(v[0]), @@ -974,7 +974,7 @@ VertexAttrib4NivARB(GLuint index, const GLint *v) INT_TO_FLOAT(v[3]))); } -static void +static void GLAPIENTRY VertexAttrib4ivARB(GLuint index, const GLint *v) { CALL_VertexAttrib4fARB(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1], @@ -983,33 +983,33 @@ VertexAttrib4ivARB(GLuint index, const GLint *v) /* GL_UNSIGNED_INT attributes */ -static void +static void GLAPIENTRY VertexAttrib1NuivARB(GLuint index, const GLuint *v) { CALL_VertexAttrib1fARB(GET_DISPATCH(), (index, UINT_TO_FLOAT(v[0]))); } -static void +static void GLAPIENTRY VertexAttrib1uivARB(GLuint index, const GLuint *v) { CALL_VertexAttrib1fARB(GET_DISPATCH(), (index, (GLfloat)v[0])); } -static void +static void GLAPIENTRY VertexAttrib2NuivARB(GLuint index, const GLuint *v) { CALL_VertexAttrib2fARB(GET_DISPATCH(), (index, UINT_TO_FLOAT(v[0]), UINT_TO_FLOAT(v[1]))); } -static void +static void GLAPIENTRY VertexAttrib2uivARB(GLuint index, const GLuint *v) { CALL_VertexAttrib2fARB(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1])); } -static void +static void GLAPIENTRY VertexAttrib3NuivARB(GLuint index, const GLuint *v) { CALL_VertexAttrib3fARB(GET_DISPATCH(), (index, UINT_TO_FLOAT(v[0]), @@ -1017,14 +1017,14 @@ VertexAttrib3NuivARB(GLuint index, const GLuint *v) UINT_TO_FLOAT(v[2]))); } -static void +static void GLAPIENTRY VertexAttrib3uivARB(GLuint index, const GLuint *v) { CALL_VertexAttrib3fARB(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1], (GLfloat)v[2])); } -static void +static void GLAPIENTRY VertexAttrib4NuivARB(GLuint index, const GLuint *v) { CALL_VertexAttrib4fARB(GET_DISPATCH(), (index, UINT_TO_FLOAT(v[0]), @@ -1033,7 +1033,7 @@ VertexAttrib4NuivARB(GLuint index, const GLuint *v) UINT_TO_FLOAT(v[3]))); } -static void +static void GLAPIENTRY VertexAttrib4uivARB(GLuint index, const GLuint *v) { CALL_VertexAttrib4fARB(GET_DISPATCH(), (index, (GLfloat)v[0], (GLfloat)v[1], @@ -1042,25 +1042,25 @@ VertexAttrib4uivARB(GLuint index, const GLuint *v) /* GL_FLOAT attributes */ -static void +static void GLAPIENTRY VertexAttrib1fvARB(GLuint index, const GLfloat *v) { CALL_VertexAttrib1fvARB(GET_DISPATCH(), (index, v)); } -static void +static void GLAPIENTRY VertexAttrib2fvARB(GLuint index, const GLfloat *v) { CALL_VertexAttrib2fvARB(GET_DISPATCH(), (index, v)); } -static void +static void GLAPIENTRY VertexAttrib3fvARB(GLuint index, const GLfloat *v) { CALL_VertexAttrib3fvARB(GET_DISPATCH(), (index, v)); } -static void +static void GLAPIENTRY VertexAttrib4fvARB(GLuint index, const GLfloat *v) { CALL_VertexAttrib4fvARB(GET_DISPATCH(), (index, v)); @@ -1068,25 +1068,25 @@ VertexAttrib4fvARB(GLuint index, const GLfloat *v) /* GL_DOUBLE attributes */ -static void +static void GLAPIENTRY VertexAttrib1dvARB(GLuint index, const GLdouble *v) { CALL_VertexAttrib1dvARB(GET_DISPATCH(), (index, v)); } -static void +static void GLAPIENTRY VertexAttrib2dvARB(GLuint index, const GLdouble *v) { CALL_VertexAttrib2dvARB(GET_DISPATCH(), (index, v)); } -static void +static void GLAPIENTRY VertexAttrib3dvARB(GLuint index, const GLdouble *v) { CALL_VertexAttrib3dvARB(GET_DISPATCH(), (index, v)); } -static void +static void GLAPIENTRY VertexAttrib4dvARB(GLuint index, const GLdouble *v) { CALL_VertexAttrib4dvARB(GET_DISPATCH(), (index, v)); @@ -1096,50 +1096,50 @@ VertexAttrib4dvARB(GLuint index, const GLdouble *v) /** * Integer-valued attributes */ -static void +static void GLAPIENTRY VertexAttribI1bv(GLuint index, const GLbyte *v) { CALL_VertexAttribI1iEXT(GET_DISPATCH(), (index, v[0])); } -static void +static void GLAPIENTRY VertexAttribI2bv(GLuint index, const GLbyte *v) { CALL_VertexAttribI2iEXT(GET_DISPATCH(), (index, v[0], v[1])); } -static void +static void GLAPIENTRY VertexAttribI3bv(GLuint index, const GLbyte *v) { CALL_VertexAttribI3iEXT(GET_DISPATCH(), (index, v[0], v[1], v[2])); } -static void +static void GLAPIENTRY VertexAttribI4bv(GLuint index, const GLbyte *v) { CALL_VertexAttribI4bvEXT(GET_DISPATCH(), (index, v)); } -static void +static void GLAPIENTRY VertexAttribI1ubv(GLuint index, const GLubyte *v) { CALL_VertexAttribI1uiEXT(GET_DISPATCH(), (index, v[0])); } -static void +static void GLAPIENTRY VertexAttribI2ubv(GLuint index, const GLubyte *v) { CALL_VertexAttribI2uiEXT(GET_DISPATCH(), (index, v[0], v[1])); } -static void +static void GLAPIENTRY VertexAttribI3ubv(GLuint index, const GLubyte *v) { CALL_VertexAttribI3uiEXT(GET_DISPATCH(), (index, v[0], v[1], v[2])); } -static void +static void GLAPIENTRY VertexAttribI4ubv(GLuint index, const GLubyte *v) { CALL_VertexAttribI4ubvEXT(GET_DISPATCH(), (index, v)); @@ -1147,50 +1147,50 @@ VertexAttribI4ubv(GLuint index, const GLubyte *v) -static void +static void GLAPIENTRY VertexAttribI1sv(GLuint index, const GLshort *v) { CALL_VertexAttribI1iEXT(GET_DISPATCH(), (index, v[0])); } -static void +static void GLAPIENTRY VertexAttribI2sv(GLuint index, const GLshort *v) { CALL_VertexAttribI2iEXT(GET_DISPATCH(), (index, v[0], v[1])); } -static void +static void GLAPIENTRY VertexAttribI3sv(GLuint index, const GLshort *v) { CALL_VertexAttribI3iEXT(GET_DISPATCH(), (index, v[0], v[1], v[2])); } -static void +static void GLAPIENTRY VertexAttribI4sv(GLuint index, const GLshort *v) { CALL_VertexAttribI4svEXT(GET_DISPATCH(), (index, v)); } -static void +static void GLAPIENTRY VertexAttribI1usv(GLuint index, const GLushort *v) { CALL_VertexAttribI1uiEXT(GET_DISPATCH(), (index, v[0])); } -static void +static void GLAPIENTRY VertexAttribI2usv(GLuint index, const GLushort *v) { CALL_VertexAttribI2uiEXT(GET_DISPATCH(), (index, v[0], v[1])); } -static void +static void GLAPIENTRY VertexAttribI3usv(GLuint index, const GLushort *v) { CALL_VertexAttribI3uiEXT(GET_DISPATCH(), (index, v[0], v[1], v[2])); } -static void +static void GLAPIENTRY VertexAttribI4usv(GLuint index, const GLushort *v) { CALL_VertexAttribI4usvEXT(GET_DISPATCH(), (index, v)); @@ -1198,50 +1198,50 @@ VertexAttribI4usv(GLuint index, const GLushort *v) -static void +static void GLAPIENTRY VertexAttribI1iv(GLuint index, const GLint *v) { CALL_VertexAttribI1iEXT(GET_DISPATCH(), (index, v[0])); } -static void +static void GLAPIENTRY VertexAttribI2iv(GLuint index, const GLint *v) { CALL_VertexAttribI2iEXT(GET_DISPATCH(), (index, v[0], v[1])); } -static void +static void GLAPIENTRY VertexAttribI3iv(GLuint index, const GLint *v) { CALL_VertexAttribI3iEXT(GET_DISPATCH(), (index, v[0], v[1], v[2])); } -static void +static void GLAPIENTRY VertexAttribI4iv(GLuint index, const GLint *v) { CALL_VertexAttribI4ivEXT(GET_DISPATCH(), (index, v)); } -static void +static void GLAPIENTRY VertexAttribI1uiv(GLuint index, const GLuint *v) { CALL_VertexAttribI1uiEXT(GET_DISPATCH(), (index, v[0])); } -static void +static void GLAPIENTRY VertexAttribI2uiv(GLuint index, const GLuint *v) { CALL_VertexAttribI2uiEXT(GET_DISPATCH(), (index, v[0], v[1])); } -static void +static void GLAPIENTRY VertexAttribI3uiv(GLuint index, const GLuint *v) { CALL_VertexAttribI3uiEXT(GET_DISPATCH(), (index, v[0], v[1], v[2])); } -static void +static void GLAPIENTRY VertexAttribI4uiv(GLuint index, const GLuint *v) { CALL_VertexAttribI4uivEXT(GET_DISPATCH(), (index, v)); From a81828cb962e747644dd5b479179cd4f55932c1e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Fri, 25 Mar 2011 15:59:03 +0000 Subject: [PATCH 038/420] mesa: Avoid redefining PUBLIC/USE/likely/unlikely macros. --- src/mesa/main/compiler.h | 30 +++++++++++++++++------------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/src/mesa/main/compiler.h b/src/mesa/main/compiler.h index 5557a3b5cb5..e17fd0ff6fd 100644 --- a/src/mesa/main/compiler.h +++ b/src/mesa/main/compiler.h @@ -171,12 +171,14 @@ extern "C" { * We also need to define a USED attribute, so the optimizer doesn't * inline a static function that we later use in an alias. - ajax */ -#if defined(__GNUC__) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)) -# define PUBLIC __attribute__((visibility("default"))) -# define USED __attribute__((used)) -#else -# define PUBLIC -# define USED +#ifndef PUBLIC +# if defined(__GNUC__) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)) +# define PUBLIC __attribute__((visibility("default"))) +# define USED __attribute__((used)) +# else +# define PUBLIC +# define USED +# endif #endif @@ -195,15 +197,17 @@ extern "C" { * __builtin_expect macros */ #if !defined(__GNUC__) -# define __builtin_expect(x, y) x +# define __builtin_expect(x, y) (x) #endif -#ifdef __GNUC__ -#define likely(x) __builtin_expect(!!(x), 1) -#define unlikely(x) __builtin_expect(!!(x), 0) -#else -#define likely(x) !!(x) -#define unlikely(x) !!(x) +#ifndef likely +# ifdef __GNUC__ +# define likely(x) __builtin_expect(!!(x), 1) +# define unlikely(x) __builtin_expect(!!(x), 0) +# else +# define likely(x) (x) +# define unlikely(x) (x) +# endif #endif /** From 28f1d6ab4913a9e37cacc7e903f8ce04bb3c8e1c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Fri, 25 Mar 2011 16:00:11 +0000 Subject: [PATCH 039/420] glsl: Add void to _mesa_destroy_shader_compiler() argument list. At least MSVC sees a distinction between foo() and foo(void) and warns about it. --- src/glsl/glsl_parser_extras.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/glsl/glsl_parser_extras.h b/src/glsl/glsl_parser_extras.h index b5c016fb399..6df0e160ae3 100644 --- a/src/glsl/glsl_parser_extras.h +++ b/src/glsl/glsl_parser_extras.h @@ -268,8 +268,8 @@ extern "C" { extern int preprocess(void *ctx, const char **shader, char **info_log, const struct gl_extensions *extensions, int api); -extern void _mesa_destroy_shader_compiler(); -extern void _mesa_destroy_shader_compiler_caches(); +extern void _mesa_destroy_shader_compiler(void); +extern void _mesa_destroy_shader_compiler_caches(void); #ifdef __cplusplus } From cf290344cc6c61b81452a28d739021a7f11b11bc Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Fri, 25 Mar 2011 10:33:51 -0600 Subject: [PATCH 040/420] mesa: add void to save_TextureBarrierNV() --- src/mesa/main/dlist.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mesa/main/dlist.c b/src/mesa/main/dlist.c index 0112d9dde36..3de6832d3cd 100644 --- a/src/mesa/main/dlist.c +++ b/src/mesa/main/dlist.c @@ -7036,7 +7036,7 @@ save_VertexAttribDivisor(GLuint index, GLuint divisor) /* GL_NV_texture_barrier */ static void -save_TextureBarrierNV() +save_TextureBarrierNV(void) { GET_CURRENT_CONTEXT(ctx); ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx); From bc83f6bd585bba6dee3fa2264d32ab59e9a9c99e Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Thu, 24 Mar 2011 16:49:21 -0700 Subject: [PATCH 041/420] glsl: Add array access bounds checking to ir_validate --- src/glsl/ir_validate.cpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/glsl/ir_validate.cpp b/src/glsl/ir_validate.cpp index 0fc3baf8690..ec79d05cae9 100644 --- a/src/glsl/ir_validate.cpp +++ b/src/glsl/ir_validate.cpp @@ -473,6 +473,21 @@ ir_validate::visit(ir_variable *ir) assert(ralloc_parent(ir->name) == ir); hash_table_insert(ht, ir, ir); + + + /* If a variable is an array, verify that the maximum array index is in + * bounds. There was once an error in AST-to-HIR conversion that set this + * to be out of bounds. + */ + if (ir->type->array_size() > 0) { + if (ir->max_array_access >= ir->type->length) { + printf("ir_variable has maximum access out of bounds (%d vs %d)\n", + ir->max_array_access, ir->type->length - 1); + ir->print(); + abort(); + } + } + return visit_continue; } From 0d9d036004f135c38990c60f46074b70cff6e663 Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Thu, 24 Mar 2011 16:50:23 -0700 Subject: [PATCH 042/420] glsl: Fix off-by-one error setting max_array_access for non-constant indexing NOTE: This is a candidate for the stable branches. --- src/glsl/ast_to_hir.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/glsl/ast_to_hir.cpp b/src/glsl/ast_to_hir.cpp index cdb16fd492b..a1c76e834af 100644 --- a/src/glsl/ast_to_hir.cpp +++ b/src/glsl/ast_to_hir.cpp @@ -1577,7 +1577,7 @@ ast_expression::hir(exec_list *instructions, */ ir_variable *v = array->whole_variable_referenced(); if (v != NULL) - v->max_array_access = array->type->array_size(); + v->max_array_access = array->type->array_size() - 1; } } From 4e994e150f65c854229b4af12eae5519ebd9dda1 Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Thu, 24 Mar 2011 18:01:37 -0700 Subject: [PATCH 043/420] i965/fs: Use different name for inner loop counter 'i' is already used for the outer loop. This caused some problems while doing other work in this area. No bug exists here... until you want to use the outer loop counter in the inner loop. --- src/mesa/drivers/dri/i965/brw_fs.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp index ecc4d482b60..74596e91c35 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp @@ -440,8 +440,8 @@ fs_visitor::setup_builtin_uniform_values(ir_variable *ir) * the array/matrix/structure we're trying to fill in. */ int last_swiz = -1; - for (unsigned int i = 0; i < 4; i++) { - int swiz = GET_SWZ(element->swizzle, i); + for (unsigned int j = 0; j < 4; j++) { + int swiz = GET_SWZ(element->swizzle, j); if (swiz == last_swiz) break; last_swiz = swiz; From dfdff940b6cb69b882595e16cdab12b9f440c201 Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Mon, 24 Jan 2011 16:45:11 -0800 Subject: [PATCH 044/420] glsl: Make add_variable, add_uniform, et. al. have similar signatures While making some other changes in this area I was finding it annoying each of these functions took mostly the same set of parameters in differing orders. --- src/glsl/ir_variable.cpp | 213 ++++++++++++++++++++------------------- 1 file changed, 108 insertions(+), 105 deletions(-) diff --git a/src/glsl/ir_variable.cpp b/src/glsl/ir_variable.cpp index 18a3e0fb0d9..68d9ab2055d 100644 --- a/src/glsl/ir_variable.cpp +++ b/src/glsl/ir_variable.cpp @@ -36,9 +36,9 @@ generate_ARB_draw_instanced_variables(exec_list *, bool, _mesa_glsl_parser_targets); static ir_variable * -add_variable(const char *name, enum ir_variable_mode mode, int slot, - const glsl_type *type, exec_list *instructions, - glsl_symbol_table *symtab) +add_variable(exec_list *instructions, glsl_symbol_table *symtab, + const char *name, const glsl_type *type, + enum ir_variable_mode mode, int slot) { ir_variable *var = new(symtab) ir_variable(type, name, mode); @@ -71,17 +71,15 @@ add_variable(const char *name, enum ir_variable_mode mode, int slot, } static ir_variable * -add_uniform(exec_list *instructions, - struct _mesa_glsl_parse_state *state, +add_uniform(exec_list *instructions, glsl_symbol_table *symtab, const char *name, const glsl_type *type) { - return add_variable(name, ir_var_uniform, -1, type, instructions, - state->symbols); + return add_variable(instructions, symtab, name, type, ir_var_uniform, -1); } static void -add_builtin_variable(const builtin_variable *proto, exec_list *instructions, - glsl_symbol_table *symtab) +add_builtin_variable(exec_list *instructions, glsl_symbol_table *symtab, + const builtin_variable *proto) { /* Create a new variable declaration from the description supplied by * the caller. @@ -90,18 +88,17 @@ add_builtin_variable(const builtin_variable *proto, exec_list *instructions, assert(type != NULL); - add_variable(proto->name, proto->mode, proto->slot, type, instructions, - symtab); + add_variable(instructions, symtab, proto->name, type, proto->mode, + proto->slot); } static void -add_builtin_constant(exec_list *instructions, - struct _mesa_glsl_parse_state *state, +add_builtin_constant(exec_list *instructions, glsl_symbol_table *symtab, const char *name, int value) { - ir_variable *const var = add_variable(name, ir_var_auto, - -1, glsl_type::int_type, - instructions, state->symbols); + ir_variable *const var = add_variable(instructions, symtab, + name, glsl_type::int_type, + ir_var_auto, -1); var->constant_value = new(var) ir_constant(value); } @@ -112,22 +109,24 @@ static void generate_100ES_uniforms(exec_list *instructions, struct _mesa_glsl_parse_state *state) { - add_builtin_constant(instructions, state, "gl_MaxVertexAttribs", + glsl_symbol_table *const symtab = state->symbols; + + add_builtin_constant(instructions, symtab, "gl_MaxVertexAttribs", state->Const.MaxVertexAttribs); - add_builtin_constant(instructions, state, "gl_MaxVertexUniformVectors", + add_builtin_constant(instructions, symtab, "gl_MaxVertexUniformVectors", state->Const.MaxVertexUniformComponents); - add_builtin_constant(instructions, state, "gl_MaxVaryingVectors", + add_builtin_constant(instructions, symtab, "gl_MaxVaryingVectors", state->Const.MaxVaryingFloats / 4); - add_builtin_constant(instructions, state, "gl_MaxVertexTextureImageUnits", + add_builtin_constant(instructions, symtab, "gl_MaxVertexTextureImageUnits", state->Const.MaxVertexTextureImageUnits); - add_builtin_constant(instructions, state, "gl_MaxCombinedTextureImageUnits", + add_builtin_constant(instructions, symtab, "gl_MaxCombinedTextureImageUnits", state->Const.MaxCombinedTextureImageUnits); - add_builtin_constant(instructions, state, "gl_MaxTextureImageUnits", + add_builtin_constant(instructions, symtab, "gl_MaxTextureImageUnits", state->Const.MaxTextureImageUnits); - add_builtin_constant(instructions, state, "gl_MaxFragmentUniformVectors", + add_builtin_constant(instructions, symtab, "gl_MaxFragmentUniformVectors", state->Const.MaxFragmentUniformComponents); - add_uniform(instructions, state, "gl_DepthRange", + add_uniform(instructions, symtab, "gl_DepthRange", state->symbols->get_type("gl_DepthRangeParameters")); } @@ -135,95 +134,97 @@ static void generate_110_uniforms(exec_list *instructions, struct _mesa_glsl_parse_state *state) { + glsl_symbol_table *const symtab = state->symbols; + for (unsigned i = 0 ; i < Elements(builtin_110_deprecated_uniforms) ; i++) { - add_builtin_variable(& builtin_110_deprecated_uniforms[i], - instructions, state->symbols); + add_builtin_variable(instructions, symtab, + & builtin_110_deprecated_uniforms[i]); } - add_builtin_constant(instructions, state, "gl_MaxLights", + add_builtin_constant(instructions, symtab, "gl_MaxLights", state->Const.MaxLights); - add_builtin_constant(instructions, state, "gl_MaxClipPlanes", + add_builtin_constant(instructions, symtab, "gl_MaxClipPlanes", state->Const.MaxClipPlanes); - add_builtin_constant(instructions, state, "gl_MaxTextureUnits", + add_builtin_constant(instructions, symtab, "gl_MaxTextureUnits", state->Const.MaxTextureUnits); - add_builtin_constant(instructions, state, "gl_MaxTextureCoords", + add_builtin_constant(instructions, symtab, "gl_MaxTextureCoords", state->Const.MaxTextureCoords); - add_builtin_constant(instructions, state, "gl_MaxVertexAttribs", + add_builtin_constant(instructions, symtab, "gl_MaxVertexAttribs", state->Const.MaxVertexAttribs); - add_builtin_constant(instructions, state, "gl_MaxVertexUniformComponents", + add_builtin_constant(instructions, symtab, "gl_MaxVertexUniformComponents", state->Const.MaxVertexUniformComponents); - add_builtin_constant(instructions, state, "gl_MaxVaryingFloats", + add_builtin_constant(instructions, symtab, "gl_MaxVaryingFloats", state->Const.MaxVaryingFloats); - add_builtin_constant(instructions, state, "gl_MaxVertexTextureImageUnits", + add_builtin_constant(instructions, symtab, "gl_MaxVertexTextureImageUnits", state->Const.MaxVertexTextureImageUnits); - add_builtin_constant(instructions, state, "gl_MaxCombinedTextureImageUnits", + add_builtin_constant(instructions, symtab, "gl_MaxCombinedTextureImageUnits", state->Const.MaxCombinedTextureImageUnits); - add_builtin_constant(instructions, state, "gl_MaxTextureImageUnits", + add_builtin_constant(instructions, symtab, "gl_MaxTextureImageUnits", state->Const.MaxTextureImageUnits); - add_builtin_constant(instructions, state, "gl_MaxFragmentUniformComponents", + add_builtin_constant(instructions, symtab, "gl_MaxFragmentUniformComponents", state->Const.MaxFragmentUniformComponents); const glsl_type *const mat4_array_type = glsl_type::get_array_instance(glsl_type::mat4_type, state->Const.MaxTextureCoords); - add_uniform(instructions, state, "gl_TextureMatrix", mat4_array_type); - add_uniform(instructions, state, "gl_TextureMatrixInverse", mat4_array_type); - add_uniform(instructions, state, "gl_TextureMatrixTranspose", mat4_array_type); - add_uniform(instructions, state, "gl_TextureMatrixInverseTranspose", mat4_array_type); + add_uniform(instructions, symtab, "gl_TextureMatrix", mat4_array_type); + add_uniform(instructions, symtab, "gl_TextureMatrixInverse", mat4_array_type); + add_uniform(instructions, symtab, "gl_TextureMatrixTranspose", mat4_array_type); + add_uniform(instructions, symtab, "gl_TextureMatrixInverseTranspose", mat4_array_type); - add_uniform(instructions, state, "gl_DepthRange", - state->symbols->get_type("gl_DepthRangeParameters")); + add_uniform(instructions, symtab, "gl_DepthRange", + symtab->get_type("gl_DepthRangeParameters")); - add_uniform(instructions, state, "gl_ClipPlane", + add_uniform(instructions, symtab, "gl_ClipPlane", glsl_type::get_array_instance(glsl_type::vec4_type, state->Const.MaxClipPlanes)); - add_uniform(instructions, state, "gl_Point", - state->symbols->get_type("gl_PointParameters")); + add_uniform(instructions, symtab, "gl_Point", + symtab->get_type("gl_PointParameters")); const glsl_type *const material_parameters_type = - state->symbols->get_type("gl_MaterialParameters"); - add_uniform(instructions, state, "gl_FrontMaterial", material_parameters_type); - add_uniform(instructions, state, "gl_BackMaterial", material_parameters_type); + symtab->get_type("gl_MaterialParameters"); + add_uniform(instructions, symtab, "gl_FrontMaterial", material_parameters_type); + add_uniform(instructions, symtab, "gl_BackMaterial", material_parameters_type); const glsl_type *const light_source_array_type = - glsl_type::get_array_instance(state->symbols->get_type("gl_LightSourceParameters"), state->Const.MaxLights); + glsl_type::get_array_instance(symtab->get_type("gl_LightSourceParameters"), state->Const.MaxLights); - add_uniform(instructions, state, "gl_LightSource", light_source_array_type); + add_uniform(instructions, symtab, "gl_LightSource", light_source_array_type); const glsl_type *const light_model_products_type = - state->symbols->get_type("gl_LightModelProducts"); - add_uniform(instructions, state, "gl_FrontLightModelProduct", + symtab->get_type("gl_LightModelProducts"); + add_uniform(instructions, symtab, "gl_FrontLightModelProduct", light_model_products_type); - add_uniform(instructions, state, "gl_BackLightModelProduct", + add_uniform(instructions, symtab, "gl_BackLightModelProduct", light_model_products_type); const glsl_type *const light_products_type = - glsl_type::get_array_instance(state->symbols->get_type("gl_LightProducts"), + glsl_type::get_array_instance(symtab->get_type("gl_LightProducts"), state->Const.MaxLights); - add_uniform(instructions, state, "gl_FrontLightProduct", light_products_type); - add_uniform(instructions, state, "gl_BackLightProduct", light_products_type); + add_uniform(instructions, symtab, "gl_FrontLightProduct", light_products_type); + add_uniform(instructions, symtab, "gl_BackLightProduct", light_products_type); - add_uniform(instructions, state, "gl_TextureEnvColor", + add_uniform(instructions, symtab, "gl_TextureEnvColor", glsl_type::get_array_instance(glsl_type::vec4_type, state->Const.MaxTextureUnits)); const glsl_type *const texcoords_vec4 = glsl_type::get_array_instance(glsl_type::vec4_type, state->Const.MaxTextureCoords); - add_uniform(instructions, state, "gl_EyePlaneS", texcoords_vec4); - add_uniform(instructions, state, "gl_EyePlaneT", texcoords_vec4); - add_uniform(instructions, state, "gl_EyePlaneR", texcoords_vec4); - add_uniform(instructions, state, "gl_EyePlaneQ", texcoords_vec4); - add_uniform(instructions, state, "gl_ObjectPlaneS", texcoords_vec4); - add_uniform(instructions, state, "gl_ObjectPlaneT", texcoords_vec4); - add_uniform(instructions, state, "gl_ObjectPlaneR", texcoords_vec4); - add_uniform(instructions, state, "gl_ObjectPlaneQ", texcoords_vec4); + add_uniform(instructions, symtab, "gl_EyePlaneS", texcoords_vec4); + add_uniform(instructions, symtab, "gl_EyePlaneT", texcoords_vec4); + add_uniform(instructions, symtab, "gl_EyePlaneR", texcoords_vec4); + add_uniform(instructions, symtab, "gl_EyePlaneQ", texcoords_vec4); + add_uniform(instructions, symtab, "gl_ObjectPlaneS", texcoords_vec4); + add_uniform(instructions, symtab, "gl_ObjectPlaneT", texcoords_vec4); + add_uniform(instructions, symtab, "gl_ObjectPlaneR", texcoords_vec4); + add_uniform(instructions, symtab, "gl_ObjectPlaneQ", texcoords_vec4); - add_uniform(instructions, state, "gl_Fog", - state->symbols->get_type("gl_FogParameters")); + add_uniform(instructions, symtab, "gl_Fog", + symtab->get_type("gl_FogParameters")); } /* This function should only be called for ES, not desktop GL. */ @@ -232,8 +233,8 @@ generate_100ES_vs_variables(exec_list *instructions, struct _mesa_glsl_parse_state *state) { for (unsigned i = 0; i < Elements(builtin_core_vs_variables); i++) { - add_builtin_variable(& builtin_core_vs_variables[i], - instructions, state->symbols); + add_builtin_variable(instructions, state->symbols, + & builtin_core_vs_variables[i]); } generate_100ES_uniforms(instructions, state); @@ -248,15 +249,15 @@ generate_110_vs_variables(exec_list *instructions, struct _mesa_glsl_parse_state *state) { for (unsigned i = 0; i < Elements(builtin_core_vs_variables); i++) { - add_builtin_variable(& builtin_core_vs_variables[i], - instructions, state->symbols); + add_builtin_variable(instructions, state->symbols, + & builtin_core_vs_variables[i]); } for (unsigned i = 0 ; i < Elements(builtin_110_deprecated_vs_variables) ; i++) { - add_builtin_variable(& builtin_110_deprecated_vs_variables[i], - instructions, state->symbols); + add_builtin_variable(instructions, state->symbols, + & builtin_110_deprecated_vs_variables[i]); } generate_110_uniforms(instructions, state); @@ -271,8 +272,8 @@ generate_110_vs_variables(exec_list *instructions, const glsl_type *const vec4_array_type = glsl_type::get_array_instance(glsl_type::vec4_type, 0); - add_variable("gl_TexCoord", ir_var_out, VERT_RESULT_TEX0, vec4_array_type, - instructions, state->symbols); + add_variable(instructions, state->symbols, + "gl_TexCoord", vec4_array_type, ir_var_out, VERT_RESULT_TEX0); generate_ARB_draw_buffers_variables(instructions, state, false, vertex_shader); @@ -297,8 +298,8 @@ generate_130_vs_variables(exec_list *instructions, generate_120_vs_variables(instructions, state); for (unsigned i = 0; i < Elements(builtin_130_vs_variables); i++) { - add_builtin_variable(& builtin_130_vs_variables[i], - instructions, state->symbols); + add_builtin_variable(instructions, state->symbols, + & builtin_130_vs_variables[i]); } const glsl_type *const clip_distance_array_type = @@ -306,8 +307,8 @@ generate_130_vs_variables(exec_list *instructions, state->Const.MaxClipPlanes); /* FINISHME: gl_ClipDistance needs a real location assigned. */ - add_variable("gl_ClipDistance", ir_var_out, -1, clip_distance_array_type, - instructions, state->symbols); + add_variable(instructions, state->symbols, + "gl_ClipDistance", clip_distance_array_type, ir_var_out, -1); } @@ -344,13 +345,13 @@ generate_100ES_fs_variables(exec_list *instructions, struct _mesa_glsl_parse_state *state) { for (unsigned i = 0; i < Elements(builtin_core_fs_variables); i++) { - add_builtin_variable(& builtin_core_fs_variables[i], - instructions, state->symbols); + add_builtin_variable(instructions, state->symbols, + & builtin_core_fs_variables[i]); } for (unsigned i = 0; i < Elements(builtin_100ES_fs_variables); i++) { - add_builtin_variable(& builtin_100ES_fs_variables[i], - instructions, state->symbols); + add_builtin_variable(instructions, state->symbols, + & builtin_100ES_fs_variables[i]); } generate_100ES_uniforms(instructions, state); @@ -364,20 +365,20 @@ generate_110_fs_variables(exec_list *instructions, struct _mesa_glsl_parse_state *state) { for (unsigned i = 0; i < Elements(builtin_core_fs_variables); i++) { - add_builtin_variable(& builtin_core_fs_variables[i], - instructions, state->symbols); + add_builtin_variable(instructions, state->symbols, + & builtin_core_fs_variables[i]); } for (unsigned i = 0; i < Elements(builtin_110_fs_variables); i++) { - add_builtin_variable(& builtin_110_fs_variables[i], - instructions, state->symbols); + add_builtin_variable(instructions, state->symbols, + & builtin_110_fs_variables[i]); } for (unsigned i = 0 ; i < Elements(builtin_110_deprecated_fs_variables) ; i++) { - add_builtin_variable(& builtin_110_deprecated_fs_variables[i], - instructions, state->symbols); + add_builtin_variable(instructions, state->symbols, + & builtin_110_deprecated_fs_variables[i]); } generate_110_uniforms(instructions, state); @@ -392,8 +393,8 @@ generate_110_fs_variables(exec_list *instructions, const glsl_type *const vec4_array_type = glsl_type::get_array_instance(glsl_type::vec4_type, 0); - add_variable("gl_TexCoord", ir_var_in, FRAG_ATTRIB_TEX0, vec4_array_type, - instructions, state->symbols); + add_variable(instructions, state->symbols, + "gl_TexCoord", vec4_array_type, ir_var_in, FRAG_ATTRIB_TEX0); generate_ARB_draw_buffers_variables(instructions, state, false, fragment_shader); @@ -408,8 +409,8 @@ generate_ARB_draw_buffers_variables(exec_list *instructions, /* gl_MaxDrawBuffers is available in all shader stages. */ ir_variable *const mdb = - add_variable("gl_MaxDrawBuffers", ir_var_auto, -1, - glsl_type::int_type, instructions, state->symbols); + add_variable(instructions, state->symbols, + "gl_MaxDrawBuffers", glsl_type::int_type, ir_var_auto, -1); if (warn) mdb->warn_extension = "GL_ARB_draw_buffers"; @@ -426,8 +427,9 @@ generate_ARB_draw_buffers_variables(exec_list *instructions, state->Const.MaxDrawBuffers); ir_variable *const fd = - add_variable("gl_FragData", ir_var_out, FRAG_RESULT_DATA0, - vec4_array_type, instructions, state->symbols); + add_variable(instructions, state->symbols, + "gl_FragData", vec4_array_type, + ir_var_out, FRAG_RESULT_DATA0); if (warn) fd->warn_extension = "GL_ARB_draw_buffers"; @@ -445,9 +447,9 @@ generate_ARB_draw_instanced_variables(exec_list *instructions, */ if (target == vertex_shader) { ir_variable *const inst = - add_variable("gl_InstanceIDARB", ir_var_system_value, - SYSTEM_VALUE_INSTANCE_ID, - glsl_type::int_type, instructions, state->symbols); + add_variable(instructions, state->symbols, + "gl_InstanceIDARB", glsl_type::int_type, + ir_var_system_value, SYSTEM_VALUE_INSTANCE_ID); if (warn) inst->warn_extension = "GL_ARB_draw_instanced"; @@ -463,8 +465,9 @@ generate_ARB_shader_stencil_export_variables(exec_list *instructions, /* gl_FragStencilRefARB is only available in the fragment shader. */ ir_variable *const fd = - add_variable("gl_FragStencilRefARB", ir_var_out, FRAG_RESULT_STENCIL, - glsl_type::int_type, instructions, state->symbols); + add_variable(instructions, state->symbols, + "gl_FragStencilRefARB", glsl_type::int_type, + ir_var_out, FRAG_RESULT_STENCIL); if (warn) fd->warn_extension = "GL_ARB_shader_stencil_export"; @@ -479,8 +482,8 @@ generate_120_fs_variables(exec_list *instructions, for (unsigned i = 0 ; i < Elements(builtin_120_fs_variables) ; i++) { - add_builtin_variable(& builtin_120_fs_variables[i], - instructions, state->symbols); + add_builtin_variable(instructions, state->symbols, + & builtin_120_fs_variables[i]); } } @@ -495,8 +498,8 @@ generate_130_fs_variables(exec_list *instructions, state->Const.MaxClipPlanes); /* FINISHME: gl_ClipDistance needs a real location assigned. */ - add_variable("gl_ClipDistance", ir_var_in, -1, clip_distance_array_type, - instructions, state->symbols); + add_variable(instructions, state->symbols, + "gl_ClipDistance", clip_distance_array_type, ir_var_in, -1); } static void From eb0dd370945b9e3f5eb548a1a4a8184bb0e604fc Mon Sep 17 00:00:00 2001 From: Vinson Lee Date: Fri, 25 Mar 2011 12:47:06 -0700 Subject: [PATCH 045/420] gallivm: Fix build with llvm-2.9. In llvm-2.9, the header file llvm/System/Host.h has been moved to llvm/Support/Host.h. --- src/gallium/auxiliary/gallivm/lp_bld_debug.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp b/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp index bb2c82fe0ed..1f24cb6f572 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp +++ b/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp @@ -32,7 +32,12 @@ #include #include #include + +#if HAVE_LLVM >= 0x0209 +#include +#else #include +#endif #if HAVE_LLVM >= 0x0207 #include From 56ef62d9885f805bbfb2243dc860ff425d5b4d3b Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Fri, 25 Mar 2011 10:59:46 -0700 Subject: [PATCH 046/420] glsl: Generate readable unique names at print time. Since GLSL IR allows multiple ir_variables to share the same name, we need to generate unique names when printing the IR. Previously, we always used %s@%p, appending the ir_variable's memory address. While this worked, it had two drawbacks: - When there aren't duplicates, the extra "@0x669a3e88" is useless and makes the code harder to read. - Real duplicates were hard to tell apart: channel_expressions@0x6699e3c8 vs. channel_expressions@0x6699ddd8 We now append @2, @3, @4, and so on, but only where necessary to distinguish duplicates. Since we only do this at print time, any performance impact is irrelevant. Signed-off-by: Kenneth Graunke Reviewed-by: Eric Anholt Reviewed-by: Ian Romanick --- src/glsl/ir_print_visitor.cpp | 45 +++++++++++++++++++++++++++++++++-- src/glsl/ir_print_visitor.h | 29 +++++++++++++++------- 2 files changed, 63 insertions(+), 11 deletions(-) diff --git a/src/glsl/ir_print_visitor.cpp b/src/glsl/ir_print_visitor.cpp index a84f8dfc8a1..02f3d814926 100644 --- a/src/glsl/ir_print_visitor.cpp +++ b/src/glsl/ir_print_visitor.cpp @@ -25,6 +25,10 @@ #include "glsl_types.h" #include "glsl_parser_extras.h" +extern "C" { +#include "program/hash_table.h" +} + static void print_type(const glsl_type *t); void @@ -67,6 +71,21 @@ _mesa_print_ir(exec_list *instructions, printf("\n)"); } +ir_print_visitor::ir_print_visitor() +{ + indentation = 0; + printable_names = + hash_table_ctor(32, hash_table_pointer_hash, hash_table_pointer_compare); + symbols = _mesa_symbol_table_ctor(); + mem_ctx = ralloc_context(NULL); +} + +ir_print_visitor::~ir_print_visitor() +{ + hash_table_dtor(printable_names); + _mesa_symbol_table_dtor(symbols); + ralloc_free(mem_ctx); +} void ir_print_visitor::indent(void) { @@ -74,6 +93,26 @@ void ir_print_visitor::indent(void) printf(" "); } +const char * +ir_print_visitor::unique_name(ir_variable *var) +{ + /* Do we already have a name for this variable? */ + const char *name = (const char *) hash_table_find(this->printable_names, var); + if (name != NULL) + return name; + + /* If there's no conflict, just use the original name */ + if (_mesa_symbol_table_find_symbol(this->symbols, -1, var->name) == NULL) { + name = var->name; + } else { + static unsigned i = 1; + name = ralloc_asprintf(this->mem_ctx, "%s@%u", var->name, ++i); + } + hash_table_insert(this->printable_names, (void *) name, var); + _mesa_symbol_table_add_symbol(this->symbols, -1, name, var); + return name; +} + static void print_type(const glsl_type *t) { @@ -104,12 +143,13 @@ void ir_print_visitor::visit(ir_variable *ir) cent, inv, mode[ir->mode], interp[ir->interpolation]); print_type(ir->type); - printf(" %s@%p)", ir->name, (void *) ir); + printf(" %s)", unique_name(ir)); } void ir_print_visitor::visit(ir_function_signature *ir) { + _mesa_symbol_table_push_scope(symbols); printf("(signature "); indentation++; @@ -148,6 +188,7 @@ void ir_print_visitor::visit(ir_function_signature *ir) indent(); printf("))\n"); indentation--; + _mesa_symbol_table_pop_scope(symbols); } @@ -265,7 +306,7 @@ void ir_print_visitor::visit(ir_swizzle *ir) void ir_print_visitor::visit(ir_dereference_variable *ir) { ir_variable *var = ir->variable_referenced(); - printf("(var_ref %s@%p) ", var->name, (void *) var); + printf("(var_ref %s) ", unique_name(var)); } diff --git a/src/glsl/ir_print_visitor.h b/src/glsl/ir_print_visitor.h index 4feeb8c184d..c7136f11a3b 100644 --- a/src/glsl/ir_print_visitor.h +++ b/src/glsl/ir_print_visitor.h @@ -29,6 +29,10 @@ #include "ir.h" #include "ir_visitor.h" +extern "C" { +#include "program/symbol_table.h" +} + extern void _mesa_print_ir(exec_list *instructions, struct _mesa_glsl_parse_state *state); @@ -37,15 +41,8 @@ extern void _mesa_print_ir(exec_list *instructions, */ class ir_print_visitor : public ir_visitor { public: - ir_print_visitor() - { - indentation = 0; - } - - virtual ~ir_print_visitor() - { - /* empty */ - } + ir_print_visitor(); + virtual ~ir_print_visitor(); void indent(void); @@ -77,6 +74,20 @@ public: /*@}*/ private: + /** + * Fetch/generate a unique name for ir_variable. + * + * GLSL IR permits multiple ir_variables to share the same name. This works + * fine until we try to print it, when we really need a unique one. + */ + const char *unique_name(ir_variable *var); + + /** A mapping from ir_variable * -> unique printable names. */ + hash_table *printable_names; + _mesa_symbol_table *symbols; + + void *mem_ctx; + int indentation; }; From 981e338611699ed965966a161b7ba0aaa3e87ee0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kristian=20H=C3=B8gsberg?= Date: Mon, 7 Mar 2011 20:18:29 -0500 Subject: [PATCH 047/420] egl_dri2: Enable image extensions in one place We know what we can support in egl_dri2.c so just enable the extensions there. --- src/egl/drivers/dri2/egl_dri2.c | 7 +++++++ src/egl/drivers/dri2/platform_drm.c | 5 ----- src/egl/drivers/dri2/platform_wayland.c | 4 ---- src/egl/drivers/dri2/platform_x11.c | 4 ---- 4 files changed, 7 insertions(+), 13 deletions(-) diff --git a/src/egl/drivers/dri2/egl_dri2.c b/src/egl/drivers/dri2/egl_dri2.c index f7e063b3524..e5dee555482 100644 --- a/src/egl/drivers/dri2/egl_dri2.c +++ b/src/egl/drivers/dri2/egl_dri2.c @@ -462,6 +462,13 @@ dri2_create_screen(_EGLDisplay *disp) } } + if (dri2_dpy->image) { + disp->Extensions.MESA_drm_image = EGL_TRUE; + disp->Extensions.KHR_image_base = EGL_TRUE; + disp->Extensions.KHR_gl_renderbuffer_image = EGL_TRUE; + disp->Extensions.KHR_gl_texture_2D_image = EGL_TRUE; + } + return EGL_TRUE; cleanup_dri_screen: diff --git a/src/egl/drivers/dri2/platform_drm.c b/src/egl/drivers/dri2/platform_drm.c index bd4fa80af59..9c6d3ddac22 100644 --- a/src/egl/drivers/dri2/platform_drm.c +++ b/src/egl/drivers/dri2/platform_drm.c @@ -708,11 +708,6 @@ dri2_initialize_drm(_EGLDriver *drv, _EGLDisplay *disp) for (i = 0; dri2_dpy->driver_configs[i]; i++) dri2_add_config(disp, dri2_dpy->driver_configs[i], i + 1, 0, 0, NULL); - disp->Extensions.MESA_drm_image = EGL_TRUE; - disp->Extensions.KHR_image_base = EGL_TRUE; - disp->Extensions.KHR_gl_renderbuffer_image = EGL_TRUE; - disp->Extensions.KHR_gl_texture_2D_image = EGL_TRUE; - #ifdef HAVE_WAYLAND_PLATFORM disp->Extensions.WL_bind_wayland_display = EGL_TRUE; #endif diff --git a/src/egl/drivers/dri2/platform_wayland.c b/src/egl/drivers/dri2/platform_wayland.c index 6ae3f6554b1..6969c137da8 100644 --- a/src/egl/drivers/dri2/platform_wayland.c +++ b/src/egl/drivers/dri2/platform_wayland.c @@ -677,11 +677,7 @@ dri2_initialize_wayland(_EGLDriver *drv, _EGLDisplay *disp) EGL_WINDOW_BIT | EGL_PIXMAP_BIT, NULL); - disp->Extensions.MESA_drm_image = EGL_TRUE; - disp->Extensions.KHR_image_base = EGL_TRUE; disp->Extensions.KHR_image_pixmap = EGL_TRUE; - disp->Extensions.KHR_gl_renderbuffer_image = EGL_TRUE; - disp->Extensions.KHR_gl_texture_2D_image = EGL_TRUE; disp->Extensions.WL_bind_wayland_display = EGL_TRUE; dri2_dpy->authenticate = dri2_wayland_authenticate; diff --git a/src/egl/drivers/dri2/platform_x11.c b/src/egl/drivers/dri2/platform_x11.c index b3e60b8a115..30372caadcd 100644 --- a/src/egl/drivers/dri2/platform_x11.c +++ b/src/egl/drivers/dri2/platform_x11.c @@ -1030,11 +1030,7 @@ dri2_initialize_x11_dri2(_EGLDriver *drv, _EGLDisplay *disp) goto cleanup_configs; } - disp->Extensions.MESA_drm_image = EGL_TRUE; - disp->Extensions.KHR_image_base = EGL_TRUE; disp->Extensions.KHR_image_pixmap = EGL_TRUE; - disp->Extensions.KHR_gl_renderbuffer_image = EGL_TRUE; - disp->Extensions.KHR_gl_texture_2D_image = EGL_TRUE; disp->Extensions.NOK_swap_region = EGL_TRUE; disp->Extensions.NOK_texture_from_pixmap = EGL_TRUE; From a1bd01247320d73cc296cce53f2408c0aa4af05a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kristian=20H=C3=B8gsberg?= Date: Mon, 7 Mar 2011 20:19:10 -0500 Subject: [PATCH 048/420] egl_dri2: We don't actually support KHR_gl_texture_2D_image --- src/egl/drivers/dri2/egl_dri2.c | 1 - 1 file changed, 1 deletion(-) diff --git a/src/egl/drivers/dri2/egl_dri2.c b/src/egl/drivers/dri2/egl_dri2.c index e5dee555482..5e47fbe126a 100644 --- a/src/egl/drivers/dri2/egl_dri2.c +++ b/src/egl/drivers/dri2/egl_dri2.c @@ -466,7 +466,6 @@ dri2_create_screen(_EGLDisplay *disp) disp->Extensions.MESA_drm_image = EGL_TRUE; disp->Extensions.KHR_image_base = EGL_TRUE; disp->Extensions.KHR_gl_renderbuffer_image = EGL_TRUE; - disp->Extensions.KHR_gl_texture_2D_image = EGL_TRUE; } return EGL_TRUE; From 62d5f7a04a0b3b11dc3bcf1f416f3b7646eef4f5 Mon Sep 17 00:00:00 2001 From: Benjamin Franzke Date: Wed, 16 Mar 2011 13:51:22 +0100 Subject: [PATCH 049/420] egl/wayland-drm: Fix include path src/egl/main/egltypedefs.h needs the path for EGL/egl.h Reported by jlind on irc. --- src/egl/wayland/wayland-drm/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/egl/wayland/wayland-drm/Makefile b/src/egl/wayland/wayland-drm/Makefile index c232769697a..789b020a592 100644 --- a/src/egl/wayland/wayland-drm/Makefile +++ b/src/egl/wayland/wayland-drm/Makefile @@ -12,7 +12,8 @@ wayland_drm_OBJECTS = $(wayland_drm_SOURCES:.c=.o) wayland_drm_INCLUDES = \ $(WAYLAND_CFLAGS) \ - -I$(TOP)/src/egl/main + -I$(TOP)/src/egl/main \ + -I$(TOP)/include # Generate protocol sources prefix=$(shell pkg-config --variable=prefix wayland-server) From 0c8beb0ab5e72a9d2ecaad51db16a7d5291e120b Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Sat, 26 Mar 2011 22:04:23 -0700 Subject: [PATCH 050/420] i965/fs: Fix linear gl_Color interpolation on pre-gen6 hardware. Civilization 4's shaders make heavy use of gl_Color and don't use perspective interpolation. This resulted in rivers, units, trees, and so on being rendered almost entirely white. This is a regression compared to the old fragment shader backend. Found by inspection (comparing the old and new FS backend code). References: https://bugs.freedesktop.org/show_bug.cgi?id=32949 NOTE: This is a candidate for the 7.10 branch. --- src/mesa/drivers/dri/i965/brw_fs.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp index 74596e91c35..b2336b70f0a 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp @@ -539,8 +539,10 @@ fs_visitor::emit_general_interpolation(ir_variable *ir) continue; } - if (c->key.flat_shade && (location == FRAG_ATTRIB_COL0 || - location == FRAG_ATTRIB_COL1)) { + bool is_gl_Color = + location == FRAG_ATTRIB_COL0 || location == FRAG_ATTRIB_COL1; + + if (c->key.flat_shade && is_gl_Color) { /* Constant interpolation (flat shading) case. The SF has * handed us defined values in only the constant offset * field of the setup reg. @@ -560,7 +562,7 @@ fs_visitor::emit_general_interpolation(ir_variable *ir) attr.reg_offset++; } - if (intel->gen < 6) { + if (intel->gen < 6 && !(is_gl_Color && c->key.linear_color)) { attr.reg_offset -= type->vector_elements; for (unsigned int c = 0; c < type->vector_elements; c++) { emit(BRW_OPCODE_MUL, attr, attr, this->pixel_w); From 8752824f27c979986ae855667337e89637b005fb Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Sat, 26 Mar 2011 23:37:09 -0700 Subject: [PATCH 051/420] glsl: Accept precision qualifiers on sampler types, but only in ES. GLSL 1.30 states clearly that only float and int are allowed, while the GLSL ES specification's issues section states that sampler types may take precision qualifiers. Fixes compilation failures in 3DMarkMobileES 2.0 and GLBenchmark 2.0. NOTE: This is a candidate for stable release branches. --- src/glsl/ast_to_hir.cpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/glsl/ast_to_hir.cpp b/src/glsl/ast_to_hir.cpp index a1c76e834af..9538aa62b37 100644 --- a/src/glsl/ast_to_hir.cpp +++ b/src/glsl/ast_to_hir.cpp @@ -2676,17 +2676,24 @@ ast_declarator_list::hir(exec_list *instructions, * preceded by one of these precision qualifiers [...] Literal * constants do not have precision qualifiers. Neither do Boolean * variables. + * + * In GLSL ES, sampler types are also allowed. + * + * From page 87 of the GLSL ES spec: + * "RESOLUTION: Allow sampler types to take a precision qualifier." */ if (this->type->specifier->precision != ast_precision_none && !var->type->is_float() && !var->type->is_integer() + && !(var->type->is_sampler() && state->es_shader) && !(var->type->is_array() && (var->type->fields.array->is_float() || var->type->fields.array->is_integer()))) { _mesa_glsl_error(&loc, state, - "precision qualifiers apply only to floating point " - "and integer types"); + "precision qualifiers apply only to floating point" + "%s types", state->es_shader ? ", integer, and sampler" + : "and integer"); } /* Process the initializer and add its instructions to a temporary From 78037d95da06b81799e75410154c8141b0a30ec0 Mon Sep 17 00:00:00 2001 From: Fabian Bieler Date: Wed, 23 Mar 2011 18:12:44 +0100 Subject: [PATCH 052/420] r600g: Handle texture fetch instructions with swizzle on source register Signed-off-by: Henri Verbeet --- src/gallium/drivers/r600/r600_shader.c | 30 +++++++++++++++++--------- 1 file changed, 20 insertions(+), 10 deletions(-) diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c index e7285d624e3..0fe689e2716 100644 --- a/src/gallium/drivers/r600/r600_shader.c +++ b/src/gallium/drivers/r600/r600_shader.c @@ -1526,9 +1526,11 @@ static int tgsi_tex(struct r600_shader_ctx *ctx) unsigned src_gpr; int r, i; int opcode; - boolean src_not_temp = + /* Texture fetch instructions can only use gprs as source. */ + const boolean src_requires_loading = inst->Src[0].Register.File != TGSI_FILE_TEMPORARY && inst->Src[0].Register.File != TGSI_FILE_INPUT; + boolean src_loaded = FALSE; src_gpr = ctx->file_offset[inst->Src[0].Register.File] + inst->Src[0].Register.Index; @@ -1570,7 +1572,7 @@ static int tgsi_tex(struct r600_shader_ctx *ctx) r = r600_bc_add_alu(ctx->bc, &alu); if (r) return r; - src_not_temp = FALSE; + src_loaded = TRUE; src_gpr = ctx->temp_reg; } @@ -1655,11 +1657,11 @@ static int tgsi_tex(struct r600_shader_ctx *ctx) if (r) return r; - src_not_temp = FALSE; + src_loaded = TRUE; src_gpr = ctx->temp_reg; } - if (src_not_temp) { + if (src_requires_loading && !src_loaded) { for (i = 0; i < 4; i++) { memset(&alu, 0, sizeof(struct r600_bc_alu)); alu.inst = CTX_INST(V_SQ_ALU_WORD1_OP2_SQ_OP2_INST_MOV); @@ -1673,6 +1675,7 @@ static int tgsi_tex(struct r600_shader_ctx *ctx) if (r) return r; } + src_loaded = TRUE; src_gpr = ctx->temp_reg; } @@ -1691,10 +1694,17 @@ static int tgsi_tex(struct r600_shader_ctx *ctx) tex.dst_sel_y = (inst->Dst[0].Register.WriteMask & 2) ? 1 : 7; tex.dst_sel_z = (inst->Dst[0].Register.WriteMask & 4) ? 2 : 7; tex.dst_sel_w = (inst->Dst[0].Register.WriteMask & 8) ? 3 : 7; - tex.src_sel_x = 0; - tex.src_sel_y = 1; - tex.src_sel_z = 2; - tex.src_sel_w = 3; + if (src_loaded) { + tex.src_sel_x = 0; + tex.src_sel_y = 1; + tex.src_sel_z = 2; + tex.src_sel_w = 3; + } else { + tex.src_sel_x = ctx->src[0].swizzle[0]; + tex.src_sel_y = ctx->src[0].swizzle[1]; + tex.src_sel_z = ctx->src[0].swizzle[2]; + tex.src_sel_w = ctx->src[0].swizzle[3]; + } if (inst->Texture.Texture == TGSI_TEXTURE_CUBE) { tex.src_sel_x = 1; @@ -1712,12 +1722,12 @@ static int tgsi_tex(struct r600_shader_ctx *ctx) if (inst->Texture.Texture == TGSI_TEXTURE_1D_ARRAY) { tex.coord_type_z = 0; - tex.src_sel_z = 1; + tex.src_sel_z = tex.src_sel_y; } else if (inst->Texture.Texture == TGSI_TEXTURE_2D_ARRAY) tex.coord_type_z = 0; if (inst->Texture.Texture == TGSI_TEXTURE_SHADOW1D || inst->Texture.Texture == TGSI_TEXTURE_SHADOW2D) - tex.src_sel_w = 2; + tex.src_sel_w = tex.src_sel_z; r = r600_bc_add_tex(ctx->bc, &tex); if (r) From da5b4764b28a1efd2e9dbf0741247288da36f546 Mon Sep 17 00:00:00 2001 From: Fabian Bieler Date: Wed, 23 Mar 2011 23:26:41 +0100 Subject: [PATCH 053/420] r600g: Handle texture fetch instructions with neg or abs on source register Signed-off-by: Henri Verbeet --- src/gallium/drivers/r600/r600_shader.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c index 0fe689e2716..a835e1c0a38 100644 --- a/src/gallium/drivers/r600/r600_shader.c +++ b/src/gallium/drivers/r600/r600_shader.c @@ -1526,10 +1526,12 @@ static int tgsi_tex(struct r600_shader_ctx *ctx) unsigned src_gpr; int r, i; int opcode; - /* Texture fetch instructions can only use gprs as source. */ + /* Texture fetch instructions can only use gprs as source. + * Also they cannot negate the source or take the absolute value */ const boolean src_requires_loading = - inst->Src[0].Register.File != TGSI_FILE_TEMPORARY && - inst->Src[0].Register.File != TGSI_FILE_INPUT; + (inst->Src[0].Register.File != TGSI_FILE_TEMPORARY && + inst->Src[0].Register.File != TGSI_FILE_INPUT) || + ctx->src[0].neg || ctx->src[0].abs; boolean src_loaded = FALSE; src_gpr = ctx->file_offset[inst->Src[0].Register.File] + inst->Src[0].Register.Index; From 244a3bbf14ef4f739e7f3be298c8613a2667fce0 Mon Sep 17 00:00:00 2001 From: Fabian Bieler Date: Wed, 23 Mar 2011 23:27:01 +0100 Subject: [PATCH 054/420] r600g: Handle texture fetch instructions with relative addressing Signed-off-by: Henri Verbeet --- src/gallium/drivers/r600/r600_shader.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c index a835e1c0a38..6eac1f724af 100644 --- a/src/gallium/drivers/r600/r600_shader.c +++ b/src/gallium/drivers/r600/r600_shader.c @@ -1706,6 +1706,7 @@ static int tgsi_tex(struct r600_shader_ctx *ctx) tex.src_sel_y = ctx->src[0].swizzle[1]; tex.src_sel_z = ctx->src[0].swizzle[2]; tex.src_sel_w = ctx->src[0].swizzle[3]; + tex.src_rel = ctx->src[0].rel; } if (inst->Texture.Texture == TGSI_TEXTURE_CUBE) { From 5d7c27f5ec2f30c264dc2d53c4980970b3a13ee5 Mon Sep 17 00:00:00 2001 From: Henri Verbeet Date: Wed, 23 Mar 2011 21:58:06 +0100 Subject: [PATCH 055/420] st/mesa: Validate state before doing blits. Specifically, this ensures things like the front buffer actually exist. This fixes piglt fbo/fbo-sys-blit and fd.o bug 35483. Signed-off-by: Henri Verbeet --- src/mesa/state_tracker/st_cb_blit.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/mesa/state_tracker/st_cb_blit.c b/src/mesa/state_tracker/st_cb_blit.c index 6d02a7dccd4..25c95c7b9dc 100644 --- a/src/mesa/state_tracker/st_cb_blit.c +++ b/src/mesa/state_tracker/st_cb_blit.c @@ -39,6 +39,7 @@ #include "st_texture.h" #include "st_cb_blit.h" #include "st_cb_fbo.h" +#include "st_atom.h" #include "util/u_blit.h" @@ -75,6 +76,8 @@ st_BlitFramebuffer(struct gl_context *ctx, struct gl_framebuffer *readFB = ctx->ReadBuffer; struct gl_framebuffer *drawFB = ctx->DrawBuffer; + st_validate_state(st); + if (!_mesa_clip_blit(ctx, &srcX0, &srcY0, &srcX1, &srcY1, &dstX0, &dstY0, &dstX1, &dstY1)) { return; /* nothing to draw/blit */ From 40ae214067673edbda79371969d1730b6194d83e Mon Sep 17 00:00:00 2001 From: Tobias Droste Date: Sun, 27 Mar 2011 08:11:14 -0700 Subject: [PATCH 056/420] gallivm: Fix build with llvm-2.9 In llvm-2.9 Target->createMCInstPrinter() takes different arguments Signed-off-by: Tobias Droste --- src/gallium/auxiliary/gallivm/lp_bld_debug.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp b/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp index 1f24cb6f572..76d63ced2de 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp +++ b/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp @@ -207,9 +207,17 @@ lp_disassemble(const void* func) } raw_debug_ostream Out; + TargetMachine *TM = T->createTargetMachine(Triple, ""); +#if HAVE_LLVM >= 0x0209 + unsigned int AsmPrinterVariant = AsmInfo->getAssemblerDialect(); +#else int AsmPrinterVariant = AsmInfo->getAssemblerDialect(); -#if HAVE_LLVM >= 0x0208 +#endif +#if HAVE_LLVM >= 0x0209 + OwningPtr Printer( + T->createMCInstPrinter(*TM, AsmPrinterVariant, *AsmInfo)); +#elif HAVE_LLVM >= 0x0208 OwningPtr Printer( T->createMCInstPrinter(AsmPrinterVariant, *AsmInfo)); #else @@ -221,8 +229,6 @@ lp_disassemble(const void* func) return; } - TargetMachine *TM = T->createTargetMachine(Triple, ""); - const TargetInstrInfo *TII = TM->getInstrInfo(); /* From 0fbb64a52931ba5871aa2c5eb01b81d391f678d1 Mon Sep 17 00:00:00 2001 From: Daniel Vetter Date: Mon, 28 Mar 2011 21:16:12 +0200 Subject: [PATCH 057/420] i915g: use drm ioctl to get pci devid Signed-off-by: Daniel Vetter --- src/gallium/winsys/i915/drm/i915_drm_winsys.c | 22 +++++-------------- 1 file changed, 6 insertions(+), 16 deletions(-) diff --git a/src/gallium/winsys/i915/drm/i915_drm_winsys.c b/src/gallium/winsys/i915/drm/i915_drm_winsys.c index 2c3b508d056..a2b61cde2c2 100644 --- a/src/gallium/winsys/i915/drm/i915_drm_winsys.c +++ b/src/gallium/winsys/i915/drm/i915_drm_winsys.c @@ -15,24 +15,14 @@ static void i915_drm_get_device_id(unsigned int *device_id) { - char path[512]; - FILE *file; - void *shutup_gcc; + int ret; + struct drm_i915_getparam gp; - /* - * FIXME: Fix this up to use a drm ioctl or whatever. - */ + gp.param = I915_PARAM_CHIPSET_ID; + gp.value = (int *)devid; - snprintf(path, sizeof(path), "/sys/class/drm/card0/device/device"); - file = fopen(path, "r"); - if (!file) { - return; - } - - shutup_gcc = fgets(path, sizeof(path), file); - (void) shutup_gcc; - sscanf(path, "%x", device_id); - fclose(file); + ret = ioctl(fd, DRM_IOCTL_I915_GETPARAM, &gp, sizeof(gp)); + assert(ret == 0); } static void From 2737350157cf048b436d7b64d420881ff6df9223 Mon Sep 17 00:00:00 2001 From: Vinson Lee Date: Mon, 28 Mar 2011 17:37:33 -0700 Subject: [PATCH 058/420] i915g: Fix build. Fix build failures introduced with commit 0fbb64a52931ba5871aa2c5eb01b81d391f678d1. Reviewed-by: Jakob Bornecrantz --- src/gallium/winsys/i915/drm/i915_drm_winsys.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/gallium/winsys/i915/drm/i915_drm_winsys.c b/src/gallium/winsys/i915/drm/i915_drm_winsys.c index a2b61cde2c2..6c8a10d800f 100644 --- a/src/gallium/winsys/i915/drm/i915_drm_winsys.c +++ b/src/gallium/winsys/i915/drm/i915_drm_winsys.c @@ -1,4 +1,7 @@ #include +#include + +#include "i915_drm.h" #include "state_tracker/drm_driver.h" @@ -13,13 +16,13 @@ static void -i915_drm_get_device_id(unsigned int *device_id) +i915_drm_get_device_id(int fd, unsigned int *device_id) { int ret; struct drm_i915_getparam gp; gp.param = I915_PARAM_CHIPSET_ID; - gp.value = (int *)devid; + gp.value = (int *)device_id; ret = ioctl(fd, DRM_IOCTL_I915_GETPARAM, &gp, sizeof(gp)); assert(ret == 0); @@ -45,7 +48,7 @@ i915_drm_winsys_create(int drmFD) if (!idws) return NULL; - i915_drm_get_device_id(&deviceID); + i915_drm_get_device_id(drmFD, &deviceID); i915_drm_winsys_init_batchbuffer_functions(idws); i915_drm_winsys_init_buffer_functions(idws); From 92e29dc5b0474c073b0f05d60629fc6c3decfca4 Mon Sep 17 00:00:00 2001 From: Vinson Lee Date: Mon, 28 Mar 2011 17:48:37 -0700 Subject: [PATCH 059/420] gallivm: Fix build with llvm-2.9. The build fix of commit 40ae214067673edbda79371969d1730b6194d83e does not apply to llvm-2.9 but rather to llvm-3.0svn. --- src/gallium/auxiliary/gallivm/lp_bld_debug.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp b/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp index 76d63ced2de..0b724a34948 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp +++ b/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp @@ -209,12 +209,12 @@ lp_disassemble(const void* func) raw_debug_ostream Out; TargetMachine *TM = T->createTargetMachine(Triple, ""); -#if HAVE_LLVM >= 0x0209 +#if HAVE_LLVM >= 0x0300 unsigned int AsmPrinterVariant = AsmInfo->getAssemblerDialect(); #else int AsmPrinterVariant = AsmInfo->getAssemblerDialect(); #endif -#if HAVE_LLVM >= 0x0209 +#if HAVE_LLVM >= 0x0300 OwningPtr Printer( T->createMCInstPrinter(*TM, AsmPrinterVariant, *AsmInfo)); #elif HAVE_LLVM >= 0x0208 From e21beaeb10711a38276d704c4e058cb07f9b23e6 Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Mon, 28 Mar 2011 10:13:25 -0700 Subject: [PATCH 060/420] intel: Don't leak the tex object miptree when replacing it Eventually the miptree refcounting interface should be cleaned up. The assymmetry dramatically increases the probability of bugs like this. It should be made to like like libdrm refcounting or the refcounting style used in other parts of Mesa. Fixes https://bugs.freedesktop.org/show_bug.cgi?id=33046 Reviewed-by: Eric Anholt --- src/mesa/drivers/dri/intel/intel_tex_image.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/mesa/drivers/dri/intel/intel_tex_image.c b/src/mesa/drivers/dri/intel/intel_tex_image.c index 906f8a62710..b3a2b1b0c85 100644 --- a/src/mesa/drivers/dri/intel/intel_tex_image.c +++ b/src/mesa/drivers/dri/intel/intel_tex_image.c @@ -370,8 +370,10 @@ intelTexImage(struct gl_context * ctx, * whole object since our level didn't fit what was there * before, and any lower levels would fit into our miptree. */ - if (intelImage->mt) + if (intelImage->mt) { + intel_miptree_release(intel, &intelObj->mt); intel_miptree_reference(&intelObj->mt, intelImage->mt); + } } /* PBO fastpaths: From 4f94e0b76ab75a5f0d629431395754b6339d3a98 Mon Sep 17 00:00:00 2001 From: Vinson Lee Date: Mon, 28 Mar 2011 20:32:01 -0700 Subject: [PATCH 061/420] mesa: Add missing parentheses in glBlitFramebufferEXT error strings. --- src/mesa/main/fbobject.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c index ffdd0842562..cc13103de40 100644 --- a/src/mesa/main/fbobject.c +++ b/src/mesa/main/fbobject.c @@ -2321,7 +2321,7 @@ _mesa_BlitFramebufferEXT(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, if ((mask & (GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT)) && filter != GL_NEAREST) { _mesa_error(ctx, GL_INVALID_OPERATION, - "glBlitFramebufferEXT(depth/stencil requires GL_NEAREST filter"); + "glBlitFramebufferEXT(depth/stencil requires GL_NEAREST filter)"); return; } @@ -2342,7 +2342,7 @@ _mesa_BlitFramebufferEXT(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, _mesa_get_format_bits(readRb->Format, GL_STENCIL_BITS) != _mesa_get_format_bits(drawRb->Format, GL_STENCIL_BITS)) { _mesa_error(ctx, GL_INVALID_OPERATION, - "glBlitFramebufferEXT(stencil buffer size mismatch"); + "glBlitFramebufferEXT(stencil buffer size mismatch)"); return; } } @@ -2355,7 +2355,7 @@ _mesa_BlitFramebufferEXT(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, _mesa_get_format_bits(readRb->Format, GL_DEPTH_BITS) != _mesa_get_format_bits(drawRb->Format, GL_DEPTH_BITS)) { _mesa_error(ctx, GL_INVALID_OPERATION, - "glBlitFramebufferEXT(depth buffer size mismatch"); + "glBlitFramebufferEXT(depth buffer size mismatch)"); return; } } @@ -2374,7 +2374,7 @@ _mesa_BlitFramebufferEXT(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, if (srcX1 - srcX0 != dstX1 - dstX0 || srcY1 - srcY0 != dstY1 - dstY0) { _mesa_error(ctx, GL_INVALID_OPERATION, - "glBlitFramebufferEXT(bad src/dst multisample region sizes"); + "glBlitFramebufferEXT(bad src/dst multisample region sizes)"); return; } @@ -2383,7 +2383,7 @@ _mesa_BlitFramebufferEXT(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, colorDrawRb && colorReadRb->Format != colorDrawRb->Format) { _mesa_error(ctx, GL_INVALID_OPERATION, - "glBlitFramebufferEXT(bad src/dst multisample pixel formats"); + "glBlitFramebufferEXT(bad src/dst multisample pixel formats)"); return; } } From 9a21bc640188e4078075b9f8e6701853a4f0bbe4 Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Wed, 16 Mar 2011 14:09:17 -0700 Subject: [PATCH 062/420] i965: Refactor Sandybridge implied move handling. This was open-coded in three different places, and more are necessary. Extract this into a function so it can be reused. Unfortunately, not all variations were the same: in particular, one set compression control and checked that the source register was not ARF_NULL. This seemed like a good idea, so all cases now do so. --- src/mesa/drivers/dri/i965/brw_eu_emit.c | 68 ++++++++++++------------- 1 file changed, 32 insertions(+), 36 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_eu_emit.c b/src/mesa/drivers/dri/i965/brw_eu_emit.c index 21ce92c9173..b66359467ec 100644 --- a/src/mesa/drivers/dri/i965/brw_eu_emit.c +++ b/src/mesa/drivers/dri/i965/brw_eu_emit.c @@ -52,6 +52,35 @@ static void guess_execution_size(struct brw_compile *p, } +/** + * Prior to Sandybridge, the SEND instruction accepted non-MRF source + * registers, implicitly moving the operand to a message register. + * + * On Sandybridge, this is no longer the case. This function performs the + * explicit move; it should be called before emitting a SEND instruction. + */ +static void +gen6_resolve_implied_move(struct brw_compile *p, + struct brw_reg *src, + GLuint msg_reg_nr) +{ + struct intel_context *intel = &p->brw->intel; + if (intel->gen != 6) + return; + + if (src->file == BRW_ARCHITECTURE_REGISTER_FILE && src->nr == BRW_ARF_NULL) + return; + + brw_push_insn_state(p); + brw_set_mask_control(p, BRW_MASK_DISABLE); + brw_set_compression_control(p, BRW_COMPRESSION_NONE); + brw_MOV(p, retype(brw_message_reg(msg_reg_nr), BRW_REGISTER_TYPE_UD), + retype(*src, BRW_REGISTER_TYPE_UD)); + brw_pop_insn_state(p); + *src = brw_message_reg(msg_reg_nr); +} + + static void brw_set_dest(struct brw_compile *p, struct brw_instruction *insn, struct brw_reg dest) @@ -1966,20 +1995,7 @@ void brw_SAMPLE(struct brw_compile *p, { struct brw_instruction *insn; - /* Sandybridge doesn't have the implied move for SENDs, - * and the first message register index comes from src0. - */ - if (intel->gen >= 6) { - if (src0.file != BRW_ARCHITECTURE_REGISTER_FILE || - src0.nr != BRW_ARF_NULL) { - brw_push_insn_state(p); - brw_set_mask_control( p, BRW_MASK_DISABLE ); - brw_set_compression_control(p, BRW_COMPRESSION_NONE); - brw_MOV(p, retype(brw_message_reg(msg_reg_nr), src0.type), src0); - brw_pop_insn_state(p); - } - src0 = brw_message_reg(msg_reg_nr); - } + gen6_resolve_implied_move(p, &src0, msg_reg_nr); insn = next_insn(p, BRW_OPCODE_SEND); insn->header.predicate_control = 0; /* XXX */ @@ -2034,17 +2050,7 @@ void brw_urb_WRITE(struct brw_compile *p, struct intel_context *intel = &p->brw->intel; struct brw_instruction *insn; - /* Sandybridge doesn't have the implied move for SENDs, - * and the first message register index comes from src0. - */ - if (intel->gen >= 6) { - brw_push_insn_state(p); - brw_set_mask_control( p, BRW_MASK_DISABLE ); - brw_MOV(p, retype(brw_message_reg(msg_reg_nr), BRW_REGISTER_TYPE_UD), - retype(src0, BRW_REGISTER_TYPE_UD)); - brw_pop_insn_state(p); - src0 = brw_message_reg(msg_reg_nr); - } + gen6_resolve_implied_move(p, &src0, msg_reg_nr); insn = next_insn(p, BRW_OPCODE_SEND); @@ -2154,17 +2160,7 @@ void brw_ff_sync(struct brw_compile *p, struct intel_context *intel = &p->brw->intel; struct brw_instruction *insn; - /* Sandybridge doesn't have the implied move for SENDs, - * and the first message register index comes from src0. - */ - if (intel->gen >= 6) { - brw_push_insn_state(p); - brw_set_mask_control( p, BRW_MASK_DISABLE ); - brw_MOV(p, retype(brw_message_reg(msg_reg_nr), BRW_REGISTER_TYPE_UD), - retype(src0, BRW_REGISTER_TYPE_UD)); - brw_pop_insn_state(p); - src0 = brw_message_reg(msg_reg_nr); - } + gen6_resolve_implied_move(p, &src0, msg_reg_nr); insn = next_insn(p, BRW_OPCODE_SEND); brw_set_dest(p, insn, dest); From 9d60a7ce08a67eb8b79c60f829d090ba4a37ed7e Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Tue, 29 Mar 2011 05:49:40 -0700 Subject: [PATCH 063/420] i965: Resolve implied moves in brw_dp_READ_4_vs_relative. Fixes piglit test glsl-vs-arrays-3 on Sandybridge, as well as garbage rendering in 3DMarkMobileES 2.0's Taiji demo and GLBenchmark 2.0's Egypt and PRO demos. NOTE: This a candidate for stable release branches. It depends on commit 9a21bc640188e4078075b9f8e6701853a4f0bbe4. --- src/mesa/drivers/dri/i965/brw_eu_emit.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/mesa/drivers/dri/i965/brw_eu_emit.c b/src/mesa/drivers/dri/i965/brw_eu_emit.c index b66359467ec..32ee37f8020 100644 --- a/src/mesa/drivers/dri/i965/brw_eu_emit.c +++ b/src/mesa/drivers/dri/i965/brw_eu_emit.c @@ -1800,6 +1800,7 @@ void brw_dp_READ_4_vs_relative(struct brw_compile *p, GLuint bind_table_index) { struct intel_context *intel = &p->brw->intel; + struct brw_reg src = brw_vec8_grf(0, 0); int msg_type; /* Setup MRF[1] with offset into const buffer */ @@ -1816,6 +1817,7 @@ void brw_dp_READ_4_vs_relative(struct brw_compile *p, addr_reg, brw_imm_d(offset)); brw_pop_insn_state(p); + gen6_resolve_implied_move(p, &src, 0); struct brw_instruction *insn = next_insn(p, BRW_OPCODE_SEND); insn->header.predicate_control = BRW_PREDICATE_NONE; @@ -1824,7 +1826,7 @@ void brw_dp_READ_4_vs_relative(struct brw_compile *p, insn->header.mask_control = BRW_MASK_DISABLE; brw_set_dest(p, insn, dest); - brw_set_src0(insn, brw_vec8_grf(0, 0)); + brw_set_src0(insn, src); if (intel->gen == 6) msg_type = GEN6_DATAPORT_READ_MESSAGE_OWORD_DUAL_BLOCK_READ; From 3bdd12ecb57e9cdc2b21cd665fab14698c1c07df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Wed, 16 Feb 2011 00:02:15 +0100 Subject: [PATCH 064/420] mesa: regenerate glapi files --- src/glx/indirect.c | 15 + src/glx/indirect.h | 1 + src/glx/indirect_init.c | 4 + src/mapi/glapi/glapi_mapi_tmp.h | 1667 +++---- src/mapi/glapi/glapi_sparc.S | 603 +-- src/mapi/glapi/glapi_x86-64.S | 3051 ++++++------- src/mapi/glapi/glapi_x86.S | 959 ++--- src/mapi/glapi/glapitable.h | 641 +-- src/mapi/glapi/glapitemp.h | 186 +- src/mapi/glapi/glprocs.h | 1438 +++---- src/mesa/main/enums.c | 7171 ++++++++++++++++--------------- src/mesa/main/glapidispatch.h | 1290 +++--- src/mesa/main/remap_helper.h | 518 +-- 13 files changed, 8827 insertions(+), 8717 deletions(-) diff --git a/src/glx/indirect.c b/src/glx/indirect.c index b2675c2958f..c80a237bedc 100644 --- a/src/glx/indirect.c +++ b/src/glx/indirect.c @@ -8597,6 +8597,21 @@ __indirect_glDrawBuffersARB(GLsizei n, const GLenum * bufs) } } +#define X_GLrop_ClampColorARB 234 +void +__indirect_glClampColorARB(GLenum target, GLenum clamp) +{ + struct glx_context *const gc = __glXGetCurrentContext(); + const GLuint cmdlen = 12; + emit_header(gc->pc, X_GLrop_ClampColorARB, cmdlen); + (void) memcpy((void *) (gc->pc + 4), (void *) (&target), 4); + (void) memcpy((void *) (gc->pc + 8), (void *) (&clamp), 4); + gc->pc += cmdlen; + if (__builtin_expect(gc->pc > gc->limit, 0)) { + (void) __glXFlushRenderBuffer(gc, gc->pc); + } +} + #define X_GLrop_RenderbufferStorageMultisample 4331 void __indirect_glRenderbufferStorageMultisample(GLenum target, GLsizei samples, diff --git a/src/glx/indirect.h b/src/glx/indirect.h index b610cc20279..22bdb827d96 100644 --- a/src/glx/indirect.h +++ b/src/glx/indirect.h @@ -573,6 +573,7 @@ extern HIDDEN void __indirect_glGetQueryObjectuivARB(GLuint id, GLenum pname, GL extern HIDDEN void __indirect_glGetQueryivARB(GLenum target, GLenum pname, GLint * params); extern HIDDEN GLboolean __indirect_glIsQueryARB(GLuint id); extern HIDDEN void __indirect_glDrawBuffersARB(GLsizei n, const GLenum * bufs); +extern HIDDEN void __indirect_glClampColorARB(GLenum target, GLenum clamp); extern HIDDEN void __indirect_glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); extern HIDDEN void __indirect_glSampleMaskSGIS(GLclampf value, GLboolean invert); extern HIDDEN void __indirect_glSamplePatternSGIS(GLenum pattern); diff --git a/src/glx/indirect_init.c b/src/glx/indirect_init.c index 9f1ee5930fc..7bb6754e38f 100644 --- a/src/glx/indirect_init.c +++ b/src/glx/indirect_init.c @@ -588,6 +588,10 @@ struct _glapi_table * __glXNewIndirectAPI( void ) glAPI->DrawBuffersARB = __indirect_glDrawBuffersARB; + /* 39. GL_ARB_color_buffer_float */ + + glAPI->ClampColorARB = __indirect_glClampColorARB; + /* 45. GL_ARB_framebuffer_object */ glAPI->RenderbufferStorageMultisample = __indirect_glRenderbufferStorageMultisample; diff --git a/src/mapi/glapi/glapi_mapi_tmp.h b/src/mapi/glapi/glapi_mapi_tmp.h index ce22c916ba0..b5d4490751e 100644 --- a/src/mapi/glapi/glapi_mapi_tmp.h +++ b/src/mapi/glapi/glapi_mapi_tmp.h @@ -774,6 +774,7 @@ GLAPI GLint APIENTRY GLAPI_PREFIX(GetAttribLocation)(GLuint program, const GLcha GLAPI void APIENTRY GLAPI_PREFIX(DrawBuffersARB)(GLsizei n, const GLenum *bufs); GLAPI void APIENTRY GLAPI_PREFIX(DrawBuffers)(GLsizei n, const GLenum *bufs); GLAPI void APIENTRY GLAPI_PREFIX(DrawBuffersATI)(GLsizei n, const GLenum *bufs); +GLAPI void APIENTRY GLAPI_PREFIX(ClampColorARB)(GLenum target, GLenum clamp); GLAPI void APIENTRY GLAPI_PREFIX(DrawArraysInstancedARB)(GLenum mode, GLint first, GLsizei count, GLsizei primcount); GLAPI void APIENTRY GLAPI_PREFIX(DrawArraysInstanced)(GLenum mode, GLint first, GLsizei count, GLsizei primcount); GLAPI void APIENTRY GLAPI_PREFIX(DrawArraysInstancedEXT)(GLenum mode, GLint first, GLsizei count, GLsizei primcount); @@ -817,28 +818,28 @@ GLAPI void APIENTRY GLAPI_PREFIX(DepthRangef)(GLclampf zNear, GLclampf zFar); GLAPI void APIENTRY GLAPI_PREFIX(GetShaderPrecisionFormat)(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision); GLAPI void APIENTRY GLAPI_PREFIX(ReleaseShaderCompiler)(void); GLAPI void APIENTRY GLAPI_PREFIX(ShaderBinary)(GLsizei n, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_610)(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_611)(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_612)(GLuint program, GLenum pname, GLint value); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_611)(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_612)(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_613)(GLuint program, GLenum pname, GLint value); GLAPI void APIENTRY GLAPI_PREFIX(PolygonOffsetEXT)(GLfloat factor, GLfloat bias); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_614)(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_615)(const GLfloat *coords); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_616)(GLint x, GLint y, GLint z, GLint width, GLint height); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_617)(const GLint *coords); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_618)(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_619)(const GLshort *coords); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_620)(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_621)(const GLfixed *coords); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_622)(GLenum type, GLsizei stride, const GLvoid *pointer); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_623)(GLenum pname, GLfloat *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_624)(GLenum pname, GLint *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_625)(GLenum pname, GLfloat param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_626)(GLenum pname, const GLfloat *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_627)(GLenum pname, GLint param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_628)(GLenum pname, const GLint *params); -GLbitfield APIENTRY GLAPI_PREFIX(_dispatch_stub_629)(GLfixed *mantissa, GLint *exponent); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_630)(GLclampf value, GLboolean invert); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_631)(GLenum pattern); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_615)(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_616)(const GLfloat *coords); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_617)(GLint x, GLint y, GLint z, GLint width, GLint height); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_618)(const GLint *coords); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_619)(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_620)(const GLshort *coords); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_621)(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_622)(const GLfixed *coords); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_623)(GLenum type, GLsizei stride, const GLvoid *pointer); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_624)(GLenum pname, GLfloat *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_625)(GLenum pname, GLint *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_626)(GLenum pname, GLfloat param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_627)(GLenum pname, const GLfloat *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_628)(GLenum pname, GLint param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_629)(GLenum pname, const GLint *params); +GLbitfield APIENTRY GLAPI_PREFIX(_dispatch_stub_630)(GLfixed *mantissa, GLint *exponent); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_631)(GLclampf value, GLboolean invert); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_632)(GLenum pattern); GLAPI void APIENTRY GLAPI_PREFIX(ColorPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer); GLAPI void APIENTRY GLAPI_PREFIX(EdgeFlagPointerEXT)(GLsizei stride, GLsizei count, const GLboolean *pointer); GLAPI void APIENTRY GLAPI_PREFIX(IndexPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer); @@ -901,7 +902,7 @@ GLAPI void APIENTRY GLAPI_PREFIX(FogCoordfEXT)(GLfloat coord); GLAPI void APIENTRY GLAPI_PREFIX(FogCoordf)(GLfloat coord); GLAPI void APIENTRY GLAPI_PREFIX(FogCoordfvEXT)(const GLfloat *coord); GLAPI void APIENTRY GLAPI_PREFIX(FogCoordfv)(const GLfloat *coord); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_666)(GLenum mode); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_667)(GLenum mode); GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncSeparateEXT)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncSeparate)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); GLAPI void APIENTRY GLAPI_PREFIX(FlushVertexArrayRangeNV)(void); @@ -976,15 +977,15 @@ GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4iMESA)(GLint x, GLint y, GLint z, GLi GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4ivMESA)(const GLint *v); GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4sMESA)(GLshort x, GLshort y, GLshort z, GLshort w); GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4svMESA)(const GLshort *v); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_708)(const GLenum *mode, const GLint *first, const GLsizei *count, GLsizei primcount, GLint modestride); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_709)(const GLenum *mode, const GLsizei *count, GLenum type, const GLvoid * const *indices, GLsizei primcount, GLint modestride); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_710)(GLsizei n, const GLuint *fences); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_711)(GLuint fence); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_712)(GLsizei n, GLuint *fences); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_713)(GLuint fence, GLenum pname, GLint *params); -GLboolean APIENTRY GLAPI_PREFIX(_dispatch_stub_714)(GLuint fence); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_715)(GLuint fence, GLenum condition); -GLboolean APIENTRY GLAPI_PREFIX(_dispatch_stub_716)(GLuint fence); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_709)(const GLenum *mode, const GLint *first, const GLsizei *count, GLsizei primcount, GLint modestride); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_710)(const GLenum *mode, const GLsizei *count, GLenum type, const GLvoid * const *indices, GLsizei primcount, GLint modestride); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_711)(GLsizei n, const GLuint *fences); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_712)(GLuint fence); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_713)(GLsizei n, GLuint *fences); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_714)(GLuint fence, GLenum pname, GLint *params); +GLboolean APIENTRY GLAPI_PREFIX(_dispatch_stub_715)(GLuint fence); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_716)(GLuint fence, GLenum condition); +GLboolean APIENTRY GLAPI_PREFIX(_dispatch_stub_717)(GLuint fence); GLAPI GLboolean APIENTRY GLAPI_PREFIX(AreProgramsResidentNV)(GLsizei n, const GLuint *ids, GLboolean *residences); GLAPI void APIENTRY GLAPI_PREFIX(BindProgramNV)(GLenum target, GLuint program); GLAPI void APIENTRY GLAPI_PREFIX(BindProgramARB)(GLenum target, GLuint program); @@ -1073,12 +1074,12 @@ GLAPI void APIENTRY GLAPI_PREFIX(PointParameteriNV)(GLenum pname, GLint param); GLAPI void APIENTRY GLAPI_PREFIX(PointParameteri)(GLenum pname, GLint param); GLAPI void APIENTRY GLAPI_PREFIX(PointParameterivNV)(GLenum pname, const GLint *params); GLAPI void APIENTRY GLAPI_PREFIX(PointParameteriv)(GLenum pname, const GLint *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_797)(GLenum face); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_798)(GLuint array); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_799)(GLsizei n, const GLuint *arrays); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_798)(GLenum face); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_799)(GLuint array); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_800)(GLsizei n, const GLuint *arrays); GLAPI void APIENTRY GLAPI_PREFIX(DeleteVertexArrays)(GLsizei n, const GLuint *arrays); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_800)(GLsizei n, GLuint *arrays); -GLboolean APIENTRY GLAPI_PREFIX(_dispatch_stub_801)(GLuint array); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_801)(GLsizei n, GLuint *arrays); +GLboolean APIENTRY GLAPI_PREFIX(_dispatch_stub_802)(GLuint array); GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsVertexArray)(GLuint array); GLAPI void APIENTRY GLAPI_PREFIX(GetProgramNamedParameterdvNV)(GLuint id, GLsizei len, const GLubyte *name, GLdouble *params); GLAPI void APIENTRY GLAPI_PREFIX(GetProgramNamedParameterfvNV)(GLuint id, GLsizei len, const GLubyte *name, GLfloat *params); @@ -1089,54 +1090,54 @@ GLAPI void APIENTRY GLAPI_PREFIX(ProgramNamedParameter4fvNV)(GLuint id, GLsizei GLAPI void APIENTRY GLAPI_PREFIX(PrimitiveRestartIndexNV)(GLuint index); GLAPI void APIENTRY GLAPI_PREFIX(PrimitiveRestartIndex)(GLuint index); GLAPI void APIENTRY GLAPI_PREFIX(PrimitiveRestartNV)(void); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_810)(GLenum func, GLclampx ref); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_811)(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_812)(GLclampx depth); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_813)(GLenum plane, const GLfixed *equation); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_814)(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_815)(GLclampx zNear, GLclampx zFar); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_816)(GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_817)(GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_818)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_819)(GLenum plane, GLfixed *equation); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_820)(GLenum pname, GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_821)(GLenum light, GLenum pname, GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_822)(GLenum face, GLenum pname, GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_823)(GLenum target, GLenum pname, GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_824)(GLenum coord, GLenum pname, GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_825)(GLenum target, GLenum pname, GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_826)(GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_827)(GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_828)(GLenum light, GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_829)(GLenum light, GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_830)(GLfixed width); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_831)(const GLfixed *m); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_832)(GLenum face, GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_833)(GLenum face, GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_834)(const GLfixed *m); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_835)(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_836)(GLfixed nx, GLfixed ny, GLfixed nz); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_837)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_838)(GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_839)(GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_840)(GLfixed size); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_841)(GLfixed factor, GLfixed units); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_842)(GLfixed angle, GLfixed x, GLfixed y, GLfixed z); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_843)(GLclampx value, GLboolean invert); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_844)(GLfixed x, GLfixed y, GLfixed z); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_845)(GLenum target, GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_846)(GLenum target, GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_847)(GLenum coord, GLenum pname, GLint param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_848)(GLenum coord, GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_849)(GLenum target, GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_850)(GLenum target, GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_851)(GLfixed x, GLfixed y, GLfixed z); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_852)(GLenum plane, const GLfloat *equation); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_853)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_854)(GLenum plane, GLfloat *equation); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_855)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_856)(GLclampd zmin, GLclampd zmax); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_857)(GLenum modeRGB, GLenum modeA); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_811)(GLenum func, GLclampx ref); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_812)(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_813)(GLclampx depth); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_814)(GLenum plane, const GLfixed *equation); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_815)(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_816)(GLclampx zNear, GLclampx zFar); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_817)(GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_818)(GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_819)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_820)(GLenum plane, GLfixed *equation); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_821)(GLenum pname, GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_822)(GLenum light, GLenum pname, GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_823)(GLenum face, GLenum pname, GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_824)(GLenum target, GLenum pname, GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_825)(GLenum coord, GLenum pname, GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_826)(GLenum target, GLenum pname, GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_827)(GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_828)(GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_829)(GLenum light, GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_830)(GLenum light, GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_831)(GLfixed width); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_832)(const GLfixed *m); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_833)(GLenum face, GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_834)(GLenum face, GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_835)(const GLfixed *m); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_836)(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_837)(GLfixed nx, GLfixed ny, GLfixed nz); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_838)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_839)(GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_840)(GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_841)(GLfixed size); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_842)(GLfixed factor, GLfixed units); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_843)(GLfixed angle, GLfixed x, GLfixed y, GLfixed z); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_844)(GLclampx value, GLboolean invert); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_845)(GLfixed x, GLfixed y, GLfixed z); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_846)(GLenum target, GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_847)(GLenum target, GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_848)(GLenum coord, GLenum pname, GLint param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_849)(GLenum coord, GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_850)(GLenum target, GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_851)(GLenum target, GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_852)(GLfixed x, GLfixed y, GLfixed z); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_853)(GLenum plane, const GLfloat *equation); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_854)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_855)(GLenum plane, GLfloat *equation); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_856)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_857)(GLclampd zmin, GLclampd zmax); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_858)(GLenum modeRGB, GLenum modeA); GLAPI void APIENTRY GLAPI_PREFIX(BlendEquationSeparate)(GLenum modeRGB, GLenum modeA); GLAPI void APIENTRY GLAPI_PREFIX(BindFramebufferEXT)(GLenum target, GLuint framebuffer); GLAPI void APIENTRY GLAPI_PREFIX(BindFramebuffer)(GLenum target, GLuint framebuffer); @@ -1172,10 +1173,10 @@ GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsRenderbufferEXT)(GLuint renderbuffer); GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsRenderbuffer)(GLuint renderbuffer); GLAPI void APIENTRY GLAPI_PREFIX(RenderbufferStorageEXT)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height); GLAPI void APIENTRY GLAPI_PREFIX(RenderbufferStorage)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_875)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_876)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); GLAPI void APIENTRY GLAPI_PREFIX(BlitFramebuffer)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_876)(GLenum target, GLenum pname, GLint param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_877)(GLenum target, GLintptr offset, GLsizeiptr size); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_877)(GLenum target, GLenum pname, GLint param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_878)(GLenum target, GLintptr offset, GLsizeiptr size); GLAPI void APIENTRY GLAPI_PREFIX(BindFragDataLocationEXT)(GLuint program, GLuint colorNumber, const GLchar *name); GLAPI void APIENTRY GLAPI_PREFIX(BindFragDataLocation)(GLuint program, GLuint colorNumber, const GLchar *name); GLAPI GLint APIENTRY GLAPI_PREFIX(GetFragDataLocationEXT)(GLuint program, const GLchar *name); @@ -1287,8 +1288,8 @@ GLAPI void APIENTRY GLAPI_PREFIX(TransformFeedbackVaryingsEXT)(GLuint program, G GLAPI void APIENTRY GLAPI_PREFIX(TransformFeedbackVaryings)(GLuint program, GLsizei count, const GLchar* *varyings, GLenum bufferMode); GLAPI void APIENTRY GLAPI_PREFIX(ProvokingVertexEXT)(GLenum mode); GLAPI void APIENTRY GLAPI_PREFIX(ProvokingVertex)(GLenum mode); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_935)(GLenum target, GLenum pname, GLvoid **params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_936)(GLenum target, GLsizei length, GLvoid *pointer); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_936)(GLenum target, GLenum pname, GLvoid **params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_937)(GLenum target, GLsizei length, GLvoid *pointer); GLAPI void APIENTRY GLAPI_PREFIX(GetObjectParameterivAPPLE)(GLenum objectType, GLuint name, GLenum pname, GLint *value); GLAPI GLenum APIENTRY GLAPI_PREFIX(ObjectPurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); GLAPI GLenum APIENTRY GLAPI_PREFIX(ObjectUnpurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); @@ -1296,11 +1297,11 @@ GLAPI void APIENTRY GLAPI_PREFIX(ActiveProgramEXT)(GLuint program); GLAPI GLuint APIENTRY GLAPI_PREFIX(CreateShaderProgramEXT)(GLenum type, const GLchar *string); GLAPI void APIENTRY GLAPI_PREFIX(UseShaderProgramEXT)(GLenum type, GLuint program); GLAPI void APIENTRY GLAPI_PREFIX(TextureBarrierNV)(void); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_944)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_945)(GLenum target, GLuint index, GLsizei count, const GLfloat *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_945)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); void APIENTRY GLAPI_PREFIX(_dispatch_stub_946)(GLenum target, GLuint index, GLsizei count, const GLfloat *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_947)(GLuint id, GLenum pname, GLint64EXT *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_948)(GLuint id, GLenum pname, GLuint64EXT *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_947)(GLenum target, GLuint index, GLsizei count, const GLfloat *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_948)(GLuint id, GLenum pname, GLint64EXT *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_949)(GLuint id, GLenum pname, GLuint64EXT *params); GLAPI void APIENTRY GLAPI_PREFIX(EGLImageTargetRenderbufferStorageOES)(GLenum target, GLvoid *writeOffset); GLAPI void APIENTRY GLAPI_PREFIX(EGLImageTargetTexture2DOES)(GLenum target, GLvoid *writeOffset); #undef MAPI_TMP_DEFINES @@ -6515,3048 +6516,3055 @@ GLAPI void APIENTRY GLAPI_PREFIX(DrawBuffersATI)(GLsizei n, const GLenum *bufs) ((void (APIENTRY *)(GLsizei n, const GLenum *bufs)) _func)(n, bufs); } -GLAPI void APIENTRY GLAPI_PREFIX(DrawArraysInstancedARB)(GLenum mode, GLint first, GLsizei count, GLsizei primcount) +GLAPI void APIENTRY GLAPI_PREFIX(ClampColorARB)(GLenum target, GLenum clamp) { const struct mapi_table *_tbl = entry_current_get(); mapi_func _func = ((const mapi_func *) _tbl)[572]; + ((void (APIENTRY *)(GLenum target, GLenum clamp)) _func)(target, clamp); +} + +GLAPI void APIENTRY GLAPI_PREFIX(DrawArraysInstancedARB)(GLenum mode, GLint first, GLsizei count, GLsizei primcount) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[573]; ((void (APIENTRY *)(GLenum mode, GLint first, GLsizei count, GLsizei primcount)) _func)(mode, first, count, primcount); } GLAPI void APIENTRY GLAPI_PREFIX(DrawArraysInstanced)(GLenum mode, GLint first, GLsizei count, GLsizei primcount) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[572]; + mapi_func _func = ((const mapi_func *) _tbl)[573]; ((void (APIENTRY *)(GLenum mode, GLint first, GLsizei count, GLsizei primcount)) _func)(mode, first, count, primcount); } GLAPI void APIENTRY GLAPI_PREFIX(DrawArraysInstancedEXT)(GLenum mode, GLint first, GLsizei count, GLsizei primcount) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[572]; + mapi_func _func = ((const mapi_func *) _tbl)[573]; ((void (APIENTRY *)(GLenum mode, GLint first, GLsizei count, GLsizei primcount)) _func)(mode, first, count, primcount); } GLAPI void APIENTRY GLAPI_PREFIX(DrawElementsInstancedARB)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[573]; + mapi_func _func = ((const mapi_func *) _tbl)[574]; ((void (APIENTRY *)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount)) _func)(mode, count, type, indices, primcount); } GLAPI void APIENTRY GLAPI_PREFIX(DrawElementsInstanced)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[573]; + mapi_func _func = ((const mapi_func *) _tbl)[574]; ((void (APIENTRY *)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount)) _func)(mode, count, type, indices, primcount); } GLAPI void APIENTRY GLAPI_PREFIX(DrawElementsInstancedEXT)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[573]; + mapi_func _func = ((const mapi_func *) _tbl)[574]; ((void (APIENTRY *)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount)) _func)(mode, count, type, indices, primcount); } GLAPI void APIENTRY GLAPI_PREFIX(RenderbufferStorageMultisample)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[574]; + mapi_func _func = ((const mapi_func *) _tbl)[575]; ((void (APIENTRY *)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)) _func)(target, samples, internalformat, width, height); } GLAPI void APIENTRY GLAPI_PREFIX(RenderbufferStorageMultisampleEXT)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[574]; + mapi_func _func = ((const mapi_func *) _tbl)[575]; ((void (APIENTRY *)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)) _func)(target, samples, internalformat, width, height); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTextureARB)(GLenum target, GLenum attachment, GLuint texture, GLint level) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[575]; + mapi_func _func = ((const mapi_func *) _tbl)[576]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLuint texture, GLint level)) _func)(target, attachment, texture, level); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTextureFaceARB)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[576]; + mapi_func _func = ((const mapi_func *) _tbl)[577]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face)) _func)(target, attachment, texture, level, face); } GLAPI void APIENTRY GLAPI_PREFIX(ProgramParameteriARB)(GLuint program, GLenum pname, GLint value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[577]; + mapi_func _func = ((const mapi_func *) _tbl)[578]; ((void (APIENTRY *)(GLuint program, GLenum pname, GLint value)) _func)(program, pname, value); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribDivisorARB)(GLuint index, GLuint divisor) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[578]; + mapi_func _func = ((const mapi_func *) _tbl)[579]; ((void (APIENTRY *)(GLuint index, GLuint divisor)) _func)(index, divisor); } GLAPI void APIENTRY GLAPI_PREFIX(FlushMappedBufferRange)(GLenum target, GLintptr offset, GLsizeiptr length) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[579]; + mapi_func _func = ((const mapi_func *) _tbl)[580]; ((void (APIENTRY *)(GLenum target, GLintptr offset, GLsizeiptr length)) _func)(target, offset, length); } GLAPI GLvoid * APIENTRY GLAPI_PREFIX(MapBufferRange)(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[580]; + mapi_func _func = ((const mapi_func *) _tbl)[581]; return ((GLvoid * (APIENTRY *)(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)) _func)(target, offset, length, access); } GLAPI void APIENTRY GLAPI_PREFIX(BindVertexArray)(GLuint array) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[581]; + mapi_func _func = ((const mapi_func *) _tbl)[582]; ((void (APIENTRY *)(GLuint array)) _func)(array); } GLAPI void APIENTRY GLAPI_PREFIX(GenVertexArrays)(GLsizei n, GLuint *arrays) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[582]; + mapi_func _func = ((const mapi_func *) _tbl)[583]; ((void (APIENTRY *)(GLsizei n, GLuint *arrays)) _func)(n, arrays); } GLAPI void APIENTRY GLAPI_PREFIX(CopyBufferSubData)(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[583]; + mapi_func _func = ((const mapi_func *) _tbl)[584]; ((void (APIENTRY *)(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)) _func)(readTarget, writeTarget, readOffset, writeOffset, size); } GLAPI GLenum APIENTRY GLAPI_PREFIX(ClientWaitSync)(GLsync sync, GLbitfield flags, GLuint64 timeout) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[584]; + mapi_func _func = ((const mapi_func *) _tbl)[585]; return ((GLenum (APIENTRY *)(GLsync sync, GLbitfield flags, GLuint64 timeout)) _func)(sync, flags, timeout); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteSync)(GLsync sync) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[585]; + mapi_func _func = ((const mapi_func *) _tbl)[586]; ((void (APIENTRY *)(GLsync sync)) _func)(sync); } GLAPI GLsync APIENTRY GLAPI_PREFIX(FenceSync)(GLenum condition, GLbitfield flags) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[586]; + mapi_func _func = ((const mapi_func *) _tbl)[587]; return ((GLsync (APIENTRY *)(GLenum condition, GLbitfield flags)) _func)(condition, flags); } GLAPI void APIENTRY GLAPI_PREFIX(GetInteger64v)(GLenum pname, GLint64 *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[587]; + mapi_func _func = ((const mapi_func *) _tbl)[588]; ((void (APIENTRY *)(GLenum pname, GLint64 *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetSynciv)(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[588]; + mapi_func _func = ((const mapi_func *) _tbl)[589]; ((void (APIENTRY *)(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)) _func)(sync, pname, bufSize, length, values); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsSync)(GLsync sync) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[589]; + mapi_func _func = ((const mapi_func *) _tbl)[590]; return ((GLboolean (APIENTRY *)(GLsync sync)) _func)(sync); } GLAPI void APIENTRY GLAPI_PREFIX(WaitSync)(GLsync sync, GLbitfield flags, GLuint64 timeout) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[590]; + mapi_func _func = ((const mapi_func *) _tbl)[591]; ((void (APIENTRY *)(GLsync sync, GLbitfield flags, GLuint64 timeout)) _func)(sync, flags, timeout); } GLAPI void APIENTRY GLAPI_PREFIX(DrawElementsBaseVertex)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[591]; + mapi_func _func = ((const mapi_func *) _tbl)[592]; ((void (APIENTRY *)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)) _func)(mode, count, type, indices, basevertex); } GLAPI void APIENTRY GLAPI_PREFIX(DrawRangeElementsBaseVertex)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[592]; + mapi_func _func = ((const mapi_func *) _tbl)[593]; ((void (APIENTRY *)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)) _func)(mode, start, end, count, type, indices, basevertex); } GLAPI void APIENTRY GLAPI_PREFIX(MultiDrawElementsBaseVertex)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount, const GLint *basevertex) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[593]; + mapi_func _func = ((const mapi_func *) _tbl)[594]; ((void (APIENTRY *)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount, const GLint *basevertex)) _func)(mode, count, type, indices, primcount, basevertex); } GLAPI void APIENTRY GLAPI_PREFIX(BlendEquationSeparateiARB)(GLuint buf, GLenum modeRGB, GLenum modeA) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[594]; + mapi_func _func = ((const mapi_func *) _tbl)[595]; ((void (APIENTRY *)(GLuint buf, GLenum modeRGB, GLenum modeA)) _func)(buf, modeRGB, modeA); } GLAPI void APIENTRY GLAPI_PREFIX(BlendEquationiARB)(GLuint buf, GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[595]; + mapi_func _func = ((const mapi_func *) _tbl)[596]; ((void (APIENTRY *)(GLuint buf, GLenum mode)) _func)(buf, mode); } GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncSeparateiARB)(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcA, GLenum dstA) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[596]; + mapi_func _func = ((const mapi_func *) _tbl)[597]; ((void (APIENTRY *)(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcA, GLenum dstA)) _func)(buf, srcRGB, dstRGB, srcA, dstA); } GLAPI void APIENTRY GLAPI_PREFIX(BlendFunciARB)(GLuint buf, GLenum src, GLenum dst) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[597]; + mapi_func _func = ((const mapi_func *) _tbl)[598]; ((void (APIENTRY *)(GLuint buf, GLenum src, GLenum dst)) _func)(buf, src, dst); } GLAPI void APIENTRY GLAPI_PREFIX(BindTransformFeedback)(GLenum target, GLuint id) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[598]; + mapi_func _func = ((const mapi_func *) _tbl)[599]; ((void (APIENTRY *)(GLenum target, GLuint id)) _func)(target, id); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteTransformFeedbacks)(GLsizei n, const GLuint *ids) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[599]; + mapi_func _func = ((const mapi_func *) _tbl)[600]; ((void (APIENTRY *)(GLsizei n, const GLuint *ids)) _func)(n, ids); } GLAPI void APIENTRY GLAPI_PREFIX(DrawTransformFeedback)(GLenum mode, GLuint id) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[600]; + mapi_func _func = ((const mapi_func *) _tbl)[601]; ((void (APIENTRY *)(GLenum mode, GLuint id)) _func)(mode, id); } GLAPI void APIENTRY GLAPI_PREFIX(GenTransformFeedbacks)(GLsizei n, GLuint *ids) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[601]; + mapi_func _func = ((const mapi_func *) _tbl)[602]; ((void (APIENTRY *)(GLsizei n, GLuint *ids)) _func)(n, ids); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsTransformFeedback)(GLuint id) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[602]; + mapi_func _func = ((const mapi_func *) _tbl)[603]; return ((GLboolean (APIENTRY *)(GLuint id)) _func)(id); } GLAPI void APIENTRY GLAPI_PREFIX(PauseTransformFeedback)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[603]; + mapi_func _func = ((const mapi_func *) _tbl)[604]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(ResumeTransformFeedback)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[604]; + mapi_func _func = ((const mapi_func *) _tbl)[605]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(ClearDepthf)(GLclampf depth) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[605]; + mapi_func _func = ((const mapi_func *) _tbl)[606]; ((void (APIENTRY *)(GLclampf depth)) _func)(depth); } GLAPI void APIENTRY GLAPI_PREFIX(DepthRangef)(GLclampf zNear, GLclampf zFar) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[606]; + mapi_func _func = ((const mapi_func *) _tbl)[607]; ((void (APIENTRY *)(GLclampf zNear, GLclampf zFar)) _func)(zNear, zFar); } GLAPI void APIENTRY GLAPI_PREFIX(GetShaderPrecisionFormat)(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[607]; + mapi_func _func = ((const mapi_func *) _tbl)[608]; ((void (APIENTRY *)(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision)) _func)(shadertype, precisiontype, range, precision); } GLAPI void APIENTRY GLAPI_PREFIX(ReleaseShaderCompiler)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[608]; + mapi_func _func = ((const mapi_func *) _tbl)[609]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(ShaderBinary)(GLsizei n, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[609]; + mapi_func _func = ((const mapi_func *) _tbl)[610]; ((void (APIENTRY *)(GLsizei n, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length)) _func)(n, shaders, binaryformat, binary, length); } GLAPI void APIENTRY GLAPI_PREFIX(PolygonOffsetEXT)(GLfloat factor, GLfloat bias) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[613]; + mapi_func _func = ((const mapi_func *) _tbl)[614]; ((void (APIENTRY *)(GLfloat factor, GLfloat bias)) _func)(factor, bias); } GLAPI void APIENTRY GLAPI_PREFIX(ColorPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[632]; + mapi_func _func = ((const mapi_func *) _tbl)[633]; ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)) _func)(size, type, stride, count, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(EdgeFlagPointerEXT)(GLsizei stride, GLsizei count, const GLboolean *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[633]; + mapi_func _func = ((const mapi_func *) _tbl)[634]; ((void (APIENTRY *)(GLsizei stride, GLsizei count, const GLboolean *pointer)) _func)(stride, count, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(IndexPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[634]; + mapi_func _func = ((const mapi_func *) _tbl)[635]; ((void (APIENTRY *)(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)) _func)(type, stride, count, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(NormalPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[635]; + mapi_func _func = ((const mapi_func *) _tbl)[636]; ((void (APIENTRY *)(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)) _func)(type, stride, count, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(TexCoordPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[636]; + mapi_func _func = ((const mapi_func *) _tbl)[637]; ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)) _func)(size, type, stride, count, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(VertexPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[637]; + mapi_func _func = ((const mapi_func *) _tbl)[638]; ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)) _func)(size, type, stride, count, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterfEXT)(GLenum pname, GLfloat param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[638]; + mapi_func _func = ((const mapi_func *) _tbl)[639]; ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterf)(GLenum pname, GLfloat param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[638]; + mapi_func _func = ((const mapi_func *) _tbl)[639]; ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterfARB)(GLenum pname, GLfloat param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[638]; + mapi_func _func = ((const mapi_func *) _tbl)[639]; ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterfvEXT)(GLenum pname, const GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[639]; + mapi_func _func = ((const mapi_func *) _tbl)[640]; ((void (APIENTRY *)(GLenum pname, const GLfloat *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterfv)(GLenum pname, const GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[639]; + mapi_func _func = ((const mapi_func *) _tbl)[640]; ((void (APIENTRY *)(GLenum pname, const GLfloat *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterfvARB)(GLenum pname, const GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[639]; + mapi_func _func = ((const mapi_func *) _tbl)[640]; ((void (APIENTRY *)(GLenum pname, const GLfloat *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(LockArraysEXT)(GLint first, GLsizei count) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[640]; + mapi_func _func = ((const mapi_func *) _tbl)[641]; ((void (APIENTRY *)(GLint first, GLsizei count)) _func)(first, count); } GLAPI void APIENTRY GLAPI_PREFIX(UnlockArraysEXT)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[641]; + mapi_func _func = ((const mapi_func *) _tbl)[642]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3bEXT)(GLbyte red, GLbyte green, GLbyte blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[642]; + mapi_func _func = ((const mapi_func *) _tbl)[643]; ((void (APIENTRY *)(GLbyte red, GLbyte green, GLbyte blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3b)(GLbyte red, GLbyte green, GLbyte blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[642]; + mapi_func _func = ((const mapi_func *) _tbl)[643]; ((void (APIENTRY *)(GLbyte red, GLbyte green, GLbyte blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3bvEXT)(const GLbyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[643]; + mapi_func _func = ((const mapi_func *) _tbl)[644]; ((void (APIENTRY *)(const GLbyte *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3bv)(const GLbyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[643]; + mapi_func _func = ((const mapi_func *) _tbl)[644]; ((void (APIENTRY *)(const GLbyte *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3dEXT)(GLdouble red, GLdouble green, GLdouble blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[644]; + mapi_func _func = ((const mapi_func *) _tbl)[645]; ((void (APIENTRY *)(GLdouble red, GLdouble green, GLdouble blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3d)(GLdouble red, GLdouble green, GLdouble blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[644]; + mapi_func _func = ((const mapi_func *) _tbl)[645]; ((void (APIENTRY *)(GLdouble red, GLdouble green, GLdouble blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3dvEXT)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[645]; + mapi_func _func = ((const mapi_func *) _tbl)[646]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3dv)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[645]; + mapi_func _func = ((const mapi_func *) _tbl)[646]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3fEXT)(GLfloat red, GLfloat green, GLfloat blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[646]; + mapi_func _func = ((const mapi_func *) _tbl)[647]; ((void (APIENTRY *)(GLfloat red, GLfloat green, GLfloat blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3f)(GLfloat red, GLfloat green, GLfloat blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[646]; + mapi_func _func = ((const mapi_func *) _tbl)[647]; ((void (APIENTRY *)(GLfloat red, GLfloat green, GLfloat blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3fvEXT)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[647]; + mapi_func _func = ((const mapi_func *) _tbl)[648]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3fv)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[647]; + mapi_func _func = ((const mapi_func *) _tbl)[648]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3iEXT)(GLint red, GLint green, GLint blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[648]; + mapi_func _func = ((const mapi_func *) _tbl)[649]; ((void (APIENTRY *)(GLint red, GLint green, GLint blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3i)(GLint red, GLint green, GLint blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[648]; + mapi_func _func = ((const mapi_func *) _tbl)[649]; ((void (APIENTRY *)(GLint red, GLint green, GLint blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3ivEXT)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[649]; + mapi_func _func = ((const mapi_func *) _tbl)[650]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3iv)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[649]; + mapi_func _func = ((const mapi_func *) _tbl)[650]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3sEXT)(GLshort red, GLshort green, GLshort blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[650]; + mapi_func _func = ((const mapi_func *) _tbl)[651]; ((void (APIENTRY *)(GLshort red, GLshort green, GLshort blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3s)(GLshort red, GLshort green, GLshort blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[650]; + mapi_func _func = ((const mapi_func *) _tbl)[651]; ((void (APIENTRY *)(GLshort red, GLshort green, GLshort blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3svEXT)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[651]; + mapi_func _func = ((const mapi_func *) _tbl)[652]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3sv)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[651]; + mapi_func _func = ((const mapi_func *) _tbl)[652]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3ubEXT)(GLubyte red, GLubyte green, GLubyte blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[652]; + mapi_func _func = ((const mapi_func *) _tbl)[653]; ((void (APIENTRY *)(GLubyte red, GLubyte green, GLubyte blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3ub)(GLubyte red, GLubyte green, GLubyte blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[652]; + mapi_func _func = ((const mapi_func *) _tbl)[653]; ((void (APIENTRY *)(GLubyte red, GLubyte green, GLubyte blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3ubvEXT)(const GLubyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[653]; + mapi_func _func = ((const mapi_func *) _tbl)[654]; ((void (APIENTRY *)(const GLubyte *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3ubv)(const GLubyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[653]; + mapi_func _func = ((const mapi_func *) _tbl)[654]; ((void (APIENTRY *)(const GLubyte *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3uiEXT)(GLuint red, GLuint green, GLuint blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[654]; + mapi_func _func = ((const mapi_func *) _tbl)[655]; ((void (APIENTRY *)(GLuint red, GLuint green, GLuint blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3ui)(GLuint red, GLuint green, GLuint blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[654]; + mapi_func _func = ((const mapi_func *) _tbl)[655]; ((void (APIENTRY *)(GLuint red, GLuint green, GLuint blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3uivEXT)(const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[655]; + mapi_func _func = ((const mapi_func *) _tbl)[656]; ((void (APIENTRY *)(const GLuint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3uiv)(const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[655]; + mapi_func _func = ((const mapi_func *) _tbl)[656]; ((void (APIENTRY *)(const GLuint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3usEXT)(GLushort red, GLushort green, GLushort blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[656]; + mapi_func _func = ((const mapi_func *) _tbl)[657]; ((void (APIENTRY *)(GLushort red, GLushort green, GLushort blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3us)(GLushort red, GLushort green, GLushort blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[656]; + mapi_func _func = ((const mapi_func *) _tbl)[657]; ((void (APIENTRY *)(GLushort red, GLushort green, GLushort blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3usvEXT)(const GLushort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[657]; + mapi_func _func = ((const mapi_func *) _tbl)[658]; ((void (APIENTRY *)(const GLushort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3usv)(const GLushort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[657]; + mapi_func _func = ((const mapi_func *) _tbl)[658]; ((void (APIENTRY *)(const GLushort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColorPointerEXT)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[658]; + mapi_func _func = ((const mapi_func *) _tbl)[659]; ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(size, type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColorPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[658]; + mapi_func _func = ((const mapi_func *) _tbl)[659]; ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(size, type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(MultiDrawArraysEXT)(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[659]; + mapi_func _func = ((const mapi_func *) _tbl)[660]; ((void (APIENTRY *)(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount)) _func)(mode, first, count, primcount); } GLAPI void APIENTRY GLAPI_PREFIX(MultiDrawArrays)(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[659]; + mapi_func _func = ((const mapi_func *) _tbl)[660]; ((void (APIENTRY *)(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount)) _func)(mode, first, count, primcount); } GLAPI void APIENTRY GLAPI_PREFIX(MultiDrawElementsEXT)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[660]; + mapi_func _func = ((const mapi_func *) _tbl)[661]; ((void (APIENTRY *)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount)) _func)(mode, count, type, indices, primcount); } GLAPI void APIENTRY GLAPI_PREFIX(MultiDrawElements)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[660]; + mapi_func _func = ((const mapi_func *) _tbl)[661]; ((void (APIENTRY *)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount)) _func)(mode, count, type, indices, primcount); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordPointerEXT)(GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[661]; + mapi_func _func = ((const mapi_func *) _tbl)[662]; ((void (APIENTRY *)(GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordPointer)(GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[661]; + mapi_func _func = ((const mapi_func *) _tbl)[662]; ((void (APIENTRY *)(GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoorddEXT)(GLdouble coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[662]; + mapi_func _func = ((const mapi_func *) _tbl)[663]; ((void (APIENTRY *)(GLdouble coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordd)(GLdouble coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[662]; + mapi_func _func = ((const mapi_func *) _tbl)[663]; ((void (APIENTRY *)(GLdouble coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoorddvEXT)(const GLdouble *coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[663]; + mapi_func _func = ((const mapi_func *) _tbl)[664]; ((void (APIENTRY *)(const GLdouble *coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoorddv)(const GLdouble *coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[663]; + mapi_func _func = ((const mapi_func *) _tbl)[664]; ((void (APIENTRY *)(const GLdouble *coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordfEXT)(GLfloat coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[664]; + mapi_func _func = ((const mapi_func *) _tbl)[665]; ((void (APIENTRY *)(GLfloat coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordf)(GLfloat coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[664]; + mapi_func _func = ((const mapi_func *) _tbl)[665]; ((void (APIENTRY *)(GLfloat coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordfvEXT)(const GLfloat *coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[665]; + mapi_func _func = ((const mapi_func *) _tbl)[666]; ((void (APIENTRY *)(const GLfloat *coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordfv)(const GLfloat *coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[665]; + mapi_func _func = ((const mapi_func *) _tbl)[666]; ((void (APIENTRY *)(const GLfloat *coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncSeparateEXT)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[667]; + mapi_func _func = ((const mapi_func *) _tbl)[668]; ((void (APIENTRY *)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)) _func)(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha); } GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncSeparate)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[667]; + mapi_func _func = ((const mapi_func *) _tbl)[668]; ((void (APIENTRY *)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)) _func)(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha); } GLAPI void APIENTRY GLAPI_PREFIX(FlushVertexArrayRangeNV)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[668]; + mapi_func _func = ((const mapi_func *) _tbl)[669]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(VertexArrayRangeNV)(GLsizei length, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[669]; + mapi_func _func = ((const mapi_func *) _tbl)[670]; ((void (APIENTRY *)(GLsizei length, const GLvoid *pointer)) _func)(length, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(CombinerInputNV)(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[670]; + mapi_func _func = ((const mapi_func *) _tbl)[671]; ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage)) _func)(stage, portion, variable, input, mapping, componentUsage); } GLAPI void APIENTRY GLAPI_PREFIX(CombinerOutputNV)(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[671]; + mapi_func _func = ((const mapi_func *) _tbl)[672]; ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum)) _func)(stage, portion, abOutput, cdOutput, sumOutput, scale, bias, abDotProduct, cdDotProduct, muxSum); } GLAPI void APIENTRY GLAPI_PREFIX(CombinerParameterfNV)(GLenum pname, GLfloat param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[672]; + mapi_func _func = ((const mapi_func *) _tbl)[673]; ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(CombinerParameterfvNV)(GLenum pname, const GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[673]; + mapi_func _func = ((const mapi_func *) _tbl)[674]; ((void (APIENTRY *)(GLenum pname, const GLfloat *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(CombinerParameteriNV)(GLenum pname, GLint param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[674]; + mapi_func _func = ((const mapi_func *) _tbl)[675]; ((void (APIENTRY *)(GLenum pname, GLint param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(CombinerParameterivNV)(GLenum pname, const GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[675]; + mapi_func _func = ((const mapi_func *) _tbl)[676]; ((void (APIENTRY *)(GLenum pname, const GLint *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(FinalCombinerInputNV)(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[676]; + mapi_func _func = ((const mapi_func *) _tbl)[677]; ((void (APIENTRY *)(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage)) _func)(variable, input, mapping, componentUsage); } GLAPI void APIENTRY GLAPI_PREFIX(GetCombinerInputParameterfvNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[677]; + mapi_func _func = ((const mapi_func *) _tbl)[678]; ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat *params)) _func)(stage, portion, variable, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetCombinerInputParameterivNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[678]; + mapi_func _func = ((const mapi_func *) _tbl)[679]; ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint *params)) _func)(stage, portion, variable, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetCombinerOutputParameterfvNV)(GLenum stage, GLenum portion, GLenum pname, GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[679]; + mapi_func _func = ((const mapi_func *) _tbl)[680]; ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum pname, GLfloat *params)) _func)(stage, portion, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetCombinerOutputParameterivNV)(GLenum stage, GLenum portion, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[680]; + mapi_func _func = ((const mapi_func *) _tbl)[681]; ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum pname, GLint *params)) _func)(stage, portion, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetFinalCombinerInputParameterfvNV)(GLenum variable, GLenum pname, GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[681]; + mapi_func _func = ((const mapi_func *) _tbl)[682]; ((void (APIENTRY *)(GLenum variable, GLenum pname, GLfloat *params)) _func)(variable, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetFinalCombinerInputParameterivNV)(GLenum variable, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[682]; + mapi_func _func = ((const mapi_func *) _tbl)[683]; ((void (APIENTRY *)(GLenum variable, GLenum pname, GLint *params)) _func)(variable, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(ResizeBuffersMESA)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[683]; + mapi_func _func = ((const mapi_func *) _tbl)[684]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2dMESA)(GLdouble x, GLdouble y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[684]; + mapi_func _func = ((const mapi_func *) _tbl)[685]; ((void (APIENTRY *)(GLdouble x, GLdouble y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2d)(GLdouble x, GLdouble y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[684]; + mapi_func _func = ((const mapi_func *) _tbl)[685]; ((void (APIENTRY *)(GLdouble x, GLdouble y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2dARB)(GLdouble x, GLdouble y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[684]; + mapi_func _func = ((const mapi_func *) _tbl)[685]; ((void (APIENTRY *)(GLdouble x, GLdouble y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2dvMESA)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[685]; + mapi_func _func = ((const mapi_func *) _tbl)[686]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2dv)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[685]; + mapi_func _func = ((const mapi_func *) _tbl)[686]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2dvARB)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[685]; + mapi_func _func = ((const mapi_func *) _tbl)[686]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2fMESA)(GLfloat x, GLfloat y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[686]; + mapi_func _func = ((const mapi_func *) _tbl)[687]; ((void (APIENTRY *)(GLfloat x, GLfloat y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2f)(GLfloat x, GLfloat y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[686]; + mapi_func _func = ((const mapi_func *) _tbl)[687]; ((void (APIENTRY *)(GLfloat x, GLfloat y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2fARB)(GLfloat x, GLfloat y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[686]; + mapi_func _func = ((const mapi_func *) _tbl)[687]; ((void (APIENTRY *)(GLfloat x, GLfloat y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2fvMESA)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[687]; + mapi_func _func = ((const mapi_func *) _tbl)[688]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2fv)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[687]; + mapi_func _func = ((const mapi_func *) _tbl)[688]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2fvARB)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[687]; + mapi_func _func = ((const mapi_func *) _tbl)[688]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2iMESA)(GLint x, GLint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[688]; + mapi_func _func = ((const mapi_func *) _tbl)[689]; ((void (APIENTRY *)(GLint x, GLint y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2i)(GLint x, GLint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[688]; + mapi_func _func = ((const mapi_func *) _tbl)[689]; ((void (APIENTRY *)(GLint x, GLint y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2iARB)(GLint x, GLint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[688]; + mapi_func _func = ((const mapi_func *) _tbl)[689]; ((void (APIENTRY *)(GLint x, GLint y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2ivMESA)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[689]; + mapi_func _func = ((const mapi_func *) _tbl)[690]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2iv)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[689]; + mapi_func _func = ((const mapi_func *) _tbl)[690]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2ivARB)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[689]; + mapi_func _func = ((const mapi_func *) _tbl)[690]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2sMESA)(GLshort x, GLshort y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[690]; + mapi_func _func = ((const mapi_func *) _tbl)[691]; ((void (APIENTRY *)(GLshort x, GLshort y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2s)(GLshort x, GLshort y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[690]; + mapi_func _func = ((const mapi_func *) _tbl)[691]; ((void (APIENTRY *)(GLshort x, GLshort y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2sARB)(GLshort x, GLshort y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[690]; + mapi_func _func = ((const mapi_func *) _tbl)[691]; ((void (APIENTRY *)(GLshort x, GLshort y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2svMESA)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[691]; + mapi_func _func = ((const mapi_func *) _tbl)[692]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2sv)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[691]; + mapi_func _func = ((const mapi_func *) _tbl)[692]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2svARB)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[691]; + mapi_func _func = ((const mapi_func *) _tbl)[692]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3dMESA)(GLdouble x, GLdouble y, GLdouble z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[692]; + mapi_func _func = ((const mapi_func *) _tbl)[693]; ((void (APIENTRY *)(GLdouble x, GLdouble y, GLdouble z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3d)(GLdouble x, GLdouble y, GLdouble z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[692]; + mapi_func _func = ((const mapi_func *) _tbl)[693]; ((void (APIENTRY *)(GLdouble x, GLdouble y, GLdouble z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3dARB)(GLdouble x, GLdouble y, GLdouble z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[692]; + mapi_func _func = ((const mapi_func *) _tbl)[693]; ((void (APIENTRY *)(GLdouble x, GLdouble y, GLdouble z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3dvMESA)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[693]; + mapi_func _func = ((const mapi_func *) _tbl)[694]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3dv)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[693]; + mapi_func _func = ((const mapi_func *) _tbl)[694]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3dvARB)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[693]; + mapi_func _func = ((const mapi_func *) _tbl)[694]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3fMESA)(GLfloat x, GLfloat y, GLfloat z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[694]; + mapi_func _func = ((const mapi_func *) _tbl)[695]; ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3f)(GLfloat x, GLfloat y, GLfloat z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[694]; + mapi_func _func = ((const mapi_func *) _tbl)[695]; ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3fARB)(GLfloat x, GLfloat y, GLfloat z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[694]; + mapi_func _func = ((const mapi_func *) _tbl)[695]; ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3fvMESA)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[695]; + mapi_func _func = ((const mapi_func *) _tbl)[696]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3fv)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[695]; + mapi_func _func = ((const mapi_func *) _tbl)[696]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3fvARB)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[695]; + mapi_func _func = ((const mapi_func *) _tbl)[696]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3iMESA)(GLint x, GLint y, GLint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[696]; + mapi_func _func = ((const mapi_func *) _tbl)[697]; ((void (APIENTRY *)(GLint x, GLint y, GLint z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3i)(GLint x, GLint y, GLint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[696]; + mapi_func _func = ((const mapi_func *) _tbl)[697]; ((void (APIENTRY *)(GLint x, GLint y, GLint z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3iARB)(GLint x, GLint y, GLint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[696]; + mapi_func _func = ((const mapi_func *) _tbl)[697]; ((void (APIENTRY *)(GLint x, GLint y, GLint z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3ivMESA)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[697]; + mapi_func _func = ((const mapi_func *) _tbl)[698]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3iv)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[697]; + mapi_func _func = ((const mapi_func *) _tbl)[698]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3ivARB)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[697]; + mapi_func _func = ((const mapi_func *) _tbl)[698]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3sMESA)(GLshort x, GLshort y, GLshort z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[698]; + mapi_func _func = ((const mapi_func *) _tbl)[699]; ((void (APIENTRY *)(GLshort x, GLshort y, GLshort z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3s)(GLshort x, GLshort y, GLshort z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[698]; + mapi_func _func = ((const mapi_func *) _tbl)[699]; ((void (APIENTRY *)(GLshort x, GLshort y, GLshort z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3sARB)(GLshort x, GLshort y, GLshort z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[698]; + mapi_func _func = ((const mapi_func *) _tbl)[699]; ((void (APIENTRY *)(GLshort x, GLshort y, GLshort z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3svMESA)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[699]; + mapi_func _func = ((const mapi_func *) _tbl)[700]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3sv)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[699]; + mapi_func _func = ((const mapi_func *) _tbl)[700]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3svARB)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[699]; + mapi_func _func = ((const mapi_func *) _tbl)[700]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4dMESA)(GLdouble x, GLdouble y, GLdouble z, GLdouble w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[700]; + mapi_func _func = ((const mapi_func *) _tbl)[701]; ((void (APIENTRY *)(GLdouble x, GLdouble y, GLdouble z, GLdouble w)) _func)(x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4dvMESA)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[701]; + mapi_func _func = ((const mapi_func *) _tbl)[702]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4fMESA)(GLfloat x, GLfloat y, GLfloat z, GLfloat w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[702]; + mapi_func _func = ((const mapi_func *) _tbl)[703]; ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z, GLfloat w)) _func)(x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4fvMESA)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[703]; + mapi_func _func = ((const mapi_func *) _tbl)[704]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4iMESA)(GLint x, GLint y, GLint z, GLint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[704]; + mapi_func _func = ((const mapi_func *) _tbl)[705]; ((void (APIENTRY *)(GLint x, GLint y, GLint z, GLint w)) _func)(x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4ivMESA)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[705]; + mapi_func _func = ((const mapi_func *) _tbl)[706]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4sMESA)(GLshort x, GLshort y, GLshort z, GLshort w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[706]; + mapi_func _func = ((const mapi_func *) _tbl)[707]; ((void (APIENTRY *)(GLshort x, GLshort y, GLshort z, GLshort w)) _func)(x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4svMESA)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[707]; + mapi_func _func = ((const mapi_func *) _tbl)[708]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(AreProgramsResidentNV)(GLsizei n, const GLuint *ids, GLboolean *residences) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[717]; + mapi_func _func = ((const mapi_func *) _tbl)[718]; return ((GLboolean (APIENTRY *)(GLsizei n, const GLuint *ids, GLboolean *residences)) _func)(n, ids, residences); } GLAPI void APIENTRY GLAPI_PREFIX(BindProgramNV)(GLenum target, GLuint program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[718]; + mapi_func _func = ((const mapi_func *) _tbl)[719]; ((void (APIENTRY *)(GLenum target, GLuint program)) _func)(target, program); } GLAPI void APIENTRY GLAPI_PREFIX(BindProgramARB)(GLenum target, GLuint program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[718]; + mapi_func _func = ((const mapi_func *) _tbl)[719]; ((void (APIENTRY *)(GLenum target, GLuint program)) _func)(target, program); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteProgramsNV)(GLsizei n, const GLuint *programs) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[719]; + mapi_func _func = ((const mapi_func *) _tbl)[720]; ((void (APIENTRY *)(GLsizei n, const GLuint *programs)) _func)(n, programs); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteProgramsARB)(GLsizei n, const GLuint *programs) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[719]; + mapi_func _func = ((const mapi_func *) _tbl)[720]; ((void (APIENTRY *)(GLsizei n, const GLuint *programs)) _func)(n, programs); } GLAPI void APIENTRY GLAPI_PREFIX(ExecuteProgramNV)(GLenum target, GLuint id, const GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[720]; + mapi_func _func = ((const mapi_func *) _tbl)[721]; ((void (APIENTRY *)(GLenum target, GLuint id, const GLfloat *params)) _func)(target, id, params); } GLAPI void APIENTRY GLAPI_PREFIX(GenProgramsNV)(GLsizei n, GLuint *programs) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[721]; + mapi_func _func = ((const mapi_func *) _tbl)[722]; ((void (APIENTRY *)(GLsizei n, GLuint *programs)) _func)(n, programs); } GLAPI void APIENTRY GLAPI_PREFIX(GenProgramsARB)(GLsizei n, GLuint *programs) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[721]; + mapi_func _func = ((const mapi_func *) _tbl)[722]; ((void (APIENTRY *)(GLsizei n, GLuint *programs)) _func)(n, programs); } GLAPI void APIENTRY GLAPI_PREFIX(GetProgramParameterdvNV)(GLenum target, GLuint index, GLenum pname, GLdouble *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[722]; + mapi_func _func = ((const mapi_func *) _tbl)[723]; ((void (APIENTRY *)(GLenum target, GLuint index, GLenum pname, GLdouble *params)) _func)(target, index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetProgramParameterfvNV)(GLenum target, GLuint index, GLenum pname, GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[723]; + mapi_func _func = ((const mapi_func *) _tbl)[724]; ((void (APIENTRY *)(GLenum target, GLuint index, GLenum pname, GLfloat *params)) _func)(target, index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetProgramStringNV)(GLuint id, GLenum pname, GLubyte *program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[724]; + mapi_func _func = ((const mapi_func *) _tbl)[725]; ((void (APIENTRY *)(GLuint id, GLenum pname, GLubyte *program)) _func)(id, pname, program); } GLAPI void APIENTRY GLAPI_PREFIX(GetProgramivNV)(GLuint id, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[725]; + mapi_func _func = ((const mapi_func *) _tbl)[726]; ((void (APIENTRY *)(GLuint id, GLenum pname, GLint *params)) _func)(id, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetTrackMatrixivNV)(GLenum target, GLuint address, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[726]; + mapi_func _func = ((const mapi_func *) _tbl)[727]; ((void (APIENTRY *)(GLenum target, GLuint address, GLenum pname, GLint *params)) _func)(target, address, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribPointervNV)(GLuint index, GLenum pname, GLvoid **pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[727]; + mapi_func _func = ((const mapi_func *) _tbl)[728]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLvoid **pointer)) _func)(index, pname, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribPointerv)(GLuint index, GLenum pname, GLvoid **pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[727]; + mapi_func _func = ((const mapi_func *) _tbl)[728]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLvoid **pointer)) _func)(index, pname, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribPointervARB)(GLuint index, GLenum pname, GLvoid **pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[727]; + mapi_func _func = ((const mapi_func *) _tbl)[728]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLvoid **pointer)) _func)(index, pname, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribdvNV)(GLuint index, GLenum pname, GLdouble *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[728]; + mapi_func _func = ((const mapi_func *) _tbl)[729]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLdouble *params)) _func)(index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribfvNV)(GLuint index, GLenum pname, GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[729]; + mapi_func _func = ((const mapi_func *) _tbl)[730]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLfloat *params)) _func)(index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribivNV)(GLuint index, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[730]; + mapi_func _func = ((const mapi_func *) _tbl)[731]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLint *params)) _func)(index, pname, params); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsProgramNV)(GLuint program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[731]; + mapi_func _func = ((const mapi_func *) _tbl)[732]; return ((GLboolean (APIENTRY *)(GLuint program)) _func)(program); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsProgramARB)(GLuint program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[731]; + mapi_func _func = ((const mapi_func *) _tbl)[732]; return ((GLboolean (APIENTRY *)(GLuint program)) _func)(program); } GLAPI void APIENTRY GLAPI_PREFIX(LoadProgramNV)(GLenum target, GLuint id, GLsizei len, const GLubyte *program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[732]; + mapi_func _func = ((const mapi_func *) _tbl)[733]; ((void (APIENTRY *)(GLenum target, GLuint id, GLsizei len, const GLubyte *program)) _func)(target, id, len, program); } GLAPI void APIENTRY GLAPI_PREFIX(ProgramParameters4dvNV)(GLenum target, GLuint index, GLsizei num, const GLdouble *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[733]; + mapi_func _func = ((const mapi_func *) _tbl)[734]; ((void (APIENTRY *)(GLenum target, GLuint index, GLsizei num, const GLdouble *params)) _func)(target, index, num, params); } GLAPI void APIENTRY GLAPI_PREFIX(ProgramParameters4fvNV)(GLenum target, GLuint index, GLsizei num, const GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[734]; + mapi_func _func = ((const mapi_func *) _tbl)[735]; ((void (APIENTRY *)(GLenum target, GLuint index, GLsizei num, const GLfloat *params)) _func)(target, index, num, params); } GLAPI void APIENTRY GLAPI_PREFIX(RequestResidentProgramsNV)(GLsizei n, const GLuint *ids) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[735]; + mapi_func _func = ((const mapi_func *) _tbl)[736]; ((void (APIENTRY *)(GLsizei n, const GLuint *ids)) _func)(n, ids); } GLAPI void APIENTRY GLAPI_PREFIX(TrackMatrixNV)(GLenum target, GLuint address, GLenum matrix, GLenum transform) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[736]; + mapi_func _func = ((const mapi_func *) _tbl)[737]; ((void (APIENTRY *)(GLenum target, GLuint address, GLenum matrix, GLenum transform)) _func)(target, address, matrix, transform); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib1dNV)(GLuint index, GLdouble x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[737]; + mapi_func _func = ((const mapi_func *) _tbl)[738]; ((void (APIENTRY *)(GLuint index, GLdouble x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib1dvNV)(GLuint index, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[738]; + mapi_func _func = ((const mapi_func *) _tbl)[739]; ((void (APIENTRY *)(GLuint index, const GLdouble *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib1fNV)(GLuint index, GLfloat x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[739]; + mapi_func _func = ((const mapi_func *) _tbl)[740]; ((void (APIENTRY *)(GLuint index, GLfloat x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib1fvNV)(GLuint index, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[740]; + mapi_func _func = ((const mapi_func *) _tbl)[741]; ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib1sNV)(GLuint index, GLshort x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[741]; + mapi_func _func = ((const mapi_func *) _tbl)[742]; ((void (APIENTRY *)(GLuint index, GLshort x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib1svNV)(GLuint index, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[742]; + mapi_func _func = ((const mapi_func *) _tbl)[743]; ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib2dNV)(GLuint index, GLdouble x, GLdouble y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[743]; + mapi_func _func = ((const mapi_func *) _tbl)[744]; ((void (APIENTRY *)(GLuint index, GLdouble x, GLdouble y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib2dvNV)(GLuint index, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[744]; + mapi_func _func = ((const mapi_func *) _tbl)[745]; ((void (APIENTRY *)(GLuint index, const GLdouble *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib2fNV)(GLuint index, GLfloat x, GLfloat y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[745]; + mapi_func _func = ((const mapi_func *) _tbl)[746]; ((void (APIENTRY *)(GLuint index, GLfloat x, GLfloat y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib2fvNV)(GLuint index, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[746]; + mapi_func _func = ((const mapi_func *) _tbl)[747]; ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib2sNV)(GLuint index, GLshort x, GLshort y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[747]; + mapi_func _func = ((const mapi_func *) _tbl)[748]; ((void (APIENTRY *)(GLuint index, GLshort x, GLshort y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib2svNV)(GLuint index, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[748]; + mapi_func _func = ((const mapi_func *) _tbl)[749]; ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib3dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[749]; + mapi_func _func = ((const mapi_func *) _tbl)[750]; ((void (APIENTRY *)(GLuint index, GLdouble x, GLdouble y, GLdouble z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib3dvNV)(GLuint index, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[750]; + mapi_func _func = ((const mapi_func *) _tbl)[751]; ((void (APIENTRY *)(GLuint index, const GLdouble *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib3fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[751]; + mapi_func _func = ((const mapi_func *) _tbl)[752]; ((void (APIENTRY *)(GLuint index, GLfloat x, GLfloat y, GLfloat z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib3fvNV)(GLuint index, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[752]; + mapi_func _func = ((const mapi_func *) _tbl)[753]; ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib3sNV)(GLuint index, GLshort x, GLshort y, GLshort z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[753]; + mapi_func _func = ((const mapi_func *) _tbl)[754]; ((void (APIENTRY *)(GLuint index, GLshort x, GLshort y, GLshort z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib3svNV)(GLuint index, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[754]; + mapi_func _func = ((const mapi_func *) _tbl)[755]; ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[755]; + mapi_func _func = ((const mapi_func *) _tbl)[756]; ((void (APIENTRY *)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4dvNV)(GLuint index, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[756]; + mapi_func _func = ((const mapi_func *) _tbl)[757]; ((void (APIENTRY *)(GLuint index, const GLdouble *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[757]; + mapi_func _func = ((const mapi_func *) _tbl)[758]; ((void (APIENTRY *)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4fvNV)(GLuint index, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[758]; + mapi_func _func = ((const mapi_func *) _tbl)[759]; ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4sNV)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[759]; + mapi_func _func = ((const mapi_func *) _tbl)[760]; ((void (APIENTRY *)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4svNV)(GLuint index, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[760]; + mapi_func _func = ((const mapi_func *) _tbl)[761]; ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4ubNV)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[761]; + mapi_func _func = ((const mapi_func *) _tbl)[762]; ((void (APIENTRY *)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4ubvNV)(GLuint index, const GLubyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[762]; + mapi_func _func = ((const mapi_func *) _tbl)[763]; ((void (APIENTRY *)(GLuint index, const GLubyte *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribPointerNV)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[763]; + mapi_func _func = ((const mapi_func *) _tbl)[764]; ((void (APIENTRY *)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(index, size, type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs1dvNV)(GLuint index, GLsizei n, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[764]; + mapi_func _func = ((const mapi_func *) _tbl)[765]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLdouble *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs1fvNV)(GLuint index, GLsizei n, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[765]; + mapi_func _func = ((const mapi_func *) _tbl)[766]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLfloat *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs1svNV)(GLuint index, GLsizei n, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[766]; + mapi_func _func = ((const mapi_func *) _tbl)[767]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLshort *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs2dvNV)(GLuint index, GLsizei n, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[767]; + mapi_func _func = ((const mapi_func *) _tbl)[768]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLdouble *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs2fvNV)(GLuint index, GLsizei n, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[768]; + mapi_func _func = ((const mapi_func *) _tbl)[769]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLfloat *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs2svNV)(GLuint index, GLsizei n, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[769]; + mapi_func _func = ((const mapi_func *) _tbl)[770]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLshort *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs3dvNV)(GLuint index, GLsizei n, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[770]; + mapi_func _func = ((const mapi_func *) _tbl)[771]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLdouble *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs3fvNV)(GLuint index, GLsizei n, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[771]; + mapi_func _func = ((const mapi_func *) _tbl)[772]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLfloat *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs3svNV)(GLuint index, GLsizei n, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[772]; + mapi_func _func = ((const mapi_func *) _tbl)[773]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLshort *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs4dvNV)(GLuint index, GLsizei n, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[773]; + mapi_func _func = ((const mapi_func *) _tbl)[774]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLdouble *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs4fvNV)(GLuint index, GLsizei n, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[774]; + mapi_func _func = ((const mapi_func *) _tbl)[775]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLfloat *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs4svNV)(GLuint index, GLsizei n, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[775]; + mapi_func _func = ((const mapi_func *) _tbl)[776]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLshort *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs4ubvNV)(GLuint index, GLsizei n, const GLubyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[776]; + mapi_func _func = ((const mapi_func *) _tbl)[777]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLubyte *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(GetTexBumpParameterfvATI)(GLenum pname, GLfloat *param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[777]; + mapi_func _func = ((const mapi_func *) _tbl)[778]; ((void (APIENTRY *)(GLenum pname, GLfloat *param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(GetTexBumpParameterivATI)(GLenum pname, GLint *param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[778]; + mapi_func _func = ((const mapi_func *) _tbl)[779]; ((void (APIENTRY *)(GLenum pname, GLint *param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(TexBumpParameterfvATI)(GLenum pname, const GLfloat *param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[779]; + mapi_func _func = ((const mapi_func *) _tbl)[780]; ((void (APIENTRY *)(GLenum pname, const GLfloat *param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(TexBumpParameterivATI)(GLenum pname, const GLint *param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[780]; + mapi_func _func = ((const mapi_func *) _tbl)[781]; ((void (APIENTRY *)(GLenum pname, const GLint *param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(AlphaFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[781]; + mapi_func _func = ((const mapi_func *) _tbl)[782]; ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod)) _func)(op, dst, dstMod, arg1, arg1Rep, arg1Mod); } GLAPI void APIENTRY GLAPI_PREFIX(AlphaFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[782]; + mapi_func _func = ((const mapi_func *) _tbl)[783]; ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod)) _func)(op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod); } GLAPI void APIENTRY GLAPI_PREFIX(AlphaFragmentOp3ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[783]; + mapi_func _func = ((const mapi_func *) _tbl)[784]; ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod)) _func)(op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod); } GLAPI void APIENTRY GLAPI_PREFIX(BeginFragmentShaderATI)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[784]; + mapi_func _func = ((const mapi_func *) _tbl)[785]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(BindFragmentShaderATI)(GLuint id) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[785]; + mapi_func _func = ((const mapi_func *) _tbl)[786]; ((void (APIENTRY *)(GLuint id)) _func)(id); } GLAPI void APIENTRY GLAPI_PREFIX(ColorFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[786]; + mapi_func _func = ((const mapi_func *) _tbl)[787]; ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod)) _func)(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod); } GLAPI void APIENTRY GLAPI_PREFIX(ColorFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[787]; + mapi_func _func = ((const mapi_func *) _tbl)[788]; ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod)) _func)(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod); } GLAPI void APIENTRY GLAPI_PREFIX(ColorFragmentOp3ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[788]; + mapi_func _func = ((const mapi_func *) _tbl)[789]; ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod)) _func)(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteFragmentShaderATI)(GLuint id) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[789]; + mapi_func _func = ((const mapi_func *) _tbl)[790]; ((void (APIENTRY *)(GLuint id)) _func)(id); } GLAPI void APIENTRY GLAPI_PREFIX(EndFragmentShaderATI)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[790]; + mapi_func _func = ((const mapi_func *) _tbl)[791]; ((void (APIENTRY *)(void)) _func)(); } GLAPI GLuint APIENTRY GLAPI_PREFIX(GenFragmentShadersATI)(GLuint range) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[791]; + mapi_func _func = ((const mapi_func *) _tbl)[792]; return ((GLuint (APIENTRY *)(GLuint range)) _func)(range); } GLAPI void APIENTRY GLAPI_PREFIX(PassTexCoordATI)(GLuint dst, GLuint coord, GLenum swizzle) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[792]; + mapi_func _func = ((const mapi_func *) _tbl)[793]; ((void (APIENTRY *)(GLuint dst, GLuint coord, GLenum swizzle)) _func)(dst, coord, swizzle); } GLAPI void APIENTRY GLAPI_PREFIX(SampleMapATI)(GLuint dst, GLuint interp, GLenum swizzle) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[793]; + mapi_func _func = ((const mapi_func *) _tbl)[794]; ((void (APIENTRY *)(GLuint dst, GLuint interp, GLenum swizzle)) _func)(dst, interp, swizzle); } GLAPI void APIENTRY GLAPI_PREFIX(SetFragmentShaderConstantATI)(GLuint dst, const GLfloat *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[794]; + mapi_func _func = ((const mapi_func *) _tbl)[795]; ((void (APIENTRY *)(GLuint dst, const GLfloat *value)) _func)(dst, value); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameteriNV)(GLenum pname, GLint param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[795]; + mapi_func _func = ((const mapi_func *) _tbl)[796]; ((void (APIENTRY *)(GLenum pname, GLint param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameteri)(GLenum pname, GLint param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[795]; + mapi_func _func = ((const mapi_func *) _tbl)[796]; ((void (APIENTRY *)(GLenum pname, GLint param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterivNV)(GLenum pname, const GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[796]; + mapi_func _func = ((const mapi_func *) _tbl)[797]; ((void (APIENTRY *)(GLenum pname, const GLint *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameteriv)(GLenum pname, const GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[796]; + mapi_func _func = ((const mapi_func *) _tbl)[797]; ((void (APIENTRY *)(GLenum pname, const GLint *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteVertexArrays)(GLsizei n, const GLuint *arrays) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[799]; + mapi_func _func = ((const mapi_func *) _tbl)[800]; ((void (APIENTRY *)(GLsizei n, const GLuint *arrays)) _func)(n, arrays); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsVertexArray)(GLuint array) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[801]; + mapi_func _func = ((const mapi_func *) _tbl)[802]; return ((GLboolean (APIENTRY *)(GLuint array)) _func)(array); } GLAPI void APIENTRY GLAPI_PREFIX(GetProgramNamedParameterdvNV)(GLuint id, GLsizei len, const GLubyte *name, GLdouble *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[802]; + mapi_func _func = ((const mapi_func *) _tbl)[803]; ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, GLdouble *params)) _func)(id, len, name, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetProgramNamedParameterfvNV)(GLuint id, GLsizei len, const GLubyte *name, GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[803]; + mapi_func _func = ((const mapi_func *) _tbl)[804]; ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, GLfloat *params)) _func)(id, len, name, params); } GLAPI void APIENTRY GLAPI_PREFIX(ProgramNamedParameter4dNV)(GLuint id, GLsizei len, const GLubyte *name, GLdouble x, GLdouble y, GLdouble z, GLdouble w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[804]; + mapi_func _func = ((const mapi_func *) _tbl)[805]; ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, GLdouble x, GLdouble y, GLdouble z, GLdouble w)) _func)(id, len, name, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(ProgramNamedParameter4dvNV)(GLuint id, GLsizei len, const GLubyte *name, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[805]; + mapi_func _func = ((const mapi_func *) _tbl)[806]; ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, const GLdouble *v)) _func)(id, len, name, v); } GLAPI void APIENTRY GLAPI_PREFIX(ProgramNamedParameter4fNV)(GLuint id, GLsizei len, const GLubyte *name, GLfloat x, GLfloat y, GLfloat z, GLfloat w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[806]; + mapi_func _func = ((const mapi_func *) _tbl)[807]; ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, GLfloat x, GLfloat y, GLfloat z, GLfloat w)) _func)(id, len, name, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(ProgramNamedParameter4fvNV)(GLuint id, GLsizei len, const GLubyte *name, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[807]; + mapi_func _func = ((const mapi_func *) _tbl)[808]; ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, const GLfloat *v)) _func)(id, len, name, v); } GLAPI void APIENTRY GLAPI_PREFIX(PrimitiveRestartIndexNV)(GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[808]; + mapi_func _func = ((const mapi_func *) _tbl)[809]; ((void (APIENTRY *)(GLuint index)) _func)(index); } GLAPI void APIENTRY GLAPI_PREFIX(PrimitiveRestartIndex)(GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[808]; + mapi_func _func = ((const mapi_func *) _tbl)[809]; ((void (APIENTRY *)(GLuint index)) _func)(index); } GLAPI void APIENTRY GLAPI_PREFIX(PrimitiveRestartNV)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[809]; + mapi_func _func = ((const mapi_func *) _tbl)[810]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(BlendEquationSeparate)(GLenum modeRGB, GLenum modeA) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[857]; + mapi_func _func = ((const mapi_func *) _tbl)[858]; ((void (APIENTRY *)(GLenum modeRGB, GLenum modeA)) _func)(modeRGB, modeA); } GLAPI void APIENTRY GLAPI_PREFIX(BindFramebufferEXT)(GLenum target, GLuint framebuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[858]; + mapi_func _func = ((const mapi_func *) _tbl)[859]; ((void (APIENTRY *)(GLenum target, GLuint framebuffer)) _func)(target, framebuffer); } GLAPI void APIENTRY GLAPI_PREFIX(BindFramebuffer)(GLenum target, GLuint framebuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[858]; + mapi_func _func = ((const mapi_func *) _tbl)[859]; ((void (APIENTRY *)(GLenum target, GLuint framebuffer)) _func)(target, framebuffer); } GLAPI void APIENTRY GLAPI_PREFIX(BindRenderbufferEXT)(GLenum target, GLuint renderbuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[859]; + mapi_func _func = ((const mapi_func *) _tbl)[860]; ((void (APIENTRY *)(GLenum target, GLuint renderbuffer)) _func)(target, renderbuffer); } GLAPI void APIENTRY GLAPI_PREFIX(BindRenderbuffer)(GLenum target, GLuint renderbuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[859]; + mapi_func _func = ((const mapi_func *) _tbl)[860]; ((void (APIENTRY *)(GLenum target, GLuint renderbuffer)) _func)(target, renderbuffer); } GLAPI GLenum APIENTRY GLAPI_PREFIX(CheckFramebufferStatusEXT)(GLenum target) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[860]; + mapi_func _func = ((const mapi_func *) _tbl)[861]; return ((GLenum (APIENTRY *)(GLenum target)) _func)(target); } GLAPI GLenum APIENTRY GLAPI_PREFIX(CheckFramebufferStatus)(GLenum target) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[860]; + mapi_func _func = ((const mapi_func *) _tbl)[861]; return ((GLenum (APIENTRY *)(GLenum target)) _func)(target); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteFramebuffersEXT)(GLsizei n, const GLuint *framebuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[861]; + mapi_func _func = ((const mapi_func *) _tbl)[862]; ((void (APIENTRY *)(GLsizei n, const GLuint *framebuffers)) _func)(n, framebuffers); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteFramebuffers)(GLsizei n, const GLuint *framebuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[861]; + mapi_func _func = ((const mapi_func *) _tbl)[862]; ((void (APIENTRY *)(GLsizei n, const GLuint *framebuffers)) _func)(n, framebuffers); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteRenderbuffersEXT)(GLsizei n, const GLuint *renderbuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[862]; + mapi_func _func = ((const mapi_func *) _tbl)[863]; ((void (APIENTRY *)(GLsizei n, const GLuint *renderbuffers)) _func)(n, renderbuffers); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteRenderbuffers)(GLsizei n, const GLuint *renderbuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[862]; + mapi_func _func = ((const mapi_func *) _tbl)[863]; ((void (APIENTRY *)(GLsizei n, const GLuint *renderbuffers)) _func)(n, renderbuffers); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferRenderbufferEXT)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[863]; + mapi_func _func = ((const mapi_func *) _tbl)[864]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)) _func)(target, attachment, renderbuffertarget, renderbuffer); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferRenderbuffer)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[863]; + mapi_func _func = ((const mapi_func *) _tbl)[864]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)) _func)(target, attachment, renderbuffertarget, renderbuffer); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTexture1DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[864]; + mapi_func _func = ((const mapi_func *) _tbl)[865]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)) _func)(target, attachment, textarget, texture, level); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTexture1D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[864]; + mapi_func _func = ((const mapi_func *) _tbl)[865]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)) _func)(target, attachment, textarget, texture, level); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTexture2DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[865]; + mapi_func _func = ((const mapi_func *) _tbl)[866]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)) _func)(target, attachment, textarget, texture, level); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTexture2D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[865]; + mapi_func _func = ((const mapi_func *) _tbl)[866]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)) _func)(target, attachment, textarget, texture, level); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTexture3DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[866]; + mapi_func _func = ((const mapi_func *) _tbl)[867]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)) _func)(target, attachment, textarget, texture, level, zoffset); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTexture3D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[866]; + mapi_func _func = ((const mapi_func *) _tbl)[867]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)) _func)(target, attachment, textarget, texture, level, zoffset); } GLAPI void APIENTRY GLAPI_PREFIX(GenFramebuffersEXT)(GLsizei n, GLuint *framebuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[867]; + mapi_func _func = ((const mapi_func *) _tbl)[868]; ((void (APIENTRY *)(GLsizei n, GLuint *framebuffers)) _func)(n, framebuffers); } GLAPI void APIENTRY GLAPI_PREFIX(GenFramebuffers)(GLsizei n, GLuint *framebuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[867]; + mapi_func _func = ((const mapi_func *) _tbl)[868]; ((void (APIENTRY *)(GLsizei n, GLuint *framebuffers)) _func)(n, framebuffers); } GLAPI void APIENTRY GLAPI_PREFIX(GenRenderbuffersEXT)(GLsizei n, GLuint *renderbuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[868]; + mapi_func _func = ((const mapi_func *) _tbl)[869]; ((void (APIENTRY *)(GLsizei n, GLuint *renderbuffers)) _func)(n, renderbuffers); } GLAPI void APIENTRY GLAPI_PREFIX(GenRenderbuffers)(GLsizei n, GLuint *renderbuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[868]; + mapi_func _func = ((const mapi_func *) _tbl)[869]; ((void (APIENTRY *)(GLsizei n, GLuint *renderbuffers)) _func)(n, renderbuffers); } GLAPI void APIENTRY GLAPI_PREFIX(GenerateMipmapEXT)(GLenum target) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[869]; + mapi_func _func = ((const mapi_func *) _tbl)[870]; ((void (APIENTRY *)(GLenum target)) _func)(target); } GLAPI void APIENTRY GLAPI_PREFIX(GenerateMipmap)(GLenum target) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[869]; + mapi_func _func = ((const mapi_func *) _tbl)[870]; ((void (APIENTRY *)(GLenum target)) _func)(target); } GLAPI void APIENTRY GLAPI_PREFIX(GetFramebufferAttachmentParameterivEXT)(GLenum target, GLenum attachment, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[870]; + mapi_func _func = ((const mapi_func *) _tbl)[871]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum pname, GLint *params)) _func)(target, attachment, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetFramebufferAttachmentParameteriv)(GLenum target, GLenum attachment, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[870]; + mapi_func _func = ((const mapi_func *) _tbl)[871]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum pname, GLint *params)) _func)(target, attachment, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetRenderbufferParameterivEXT)(GLenum target, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[871]; + mapi_func _func = ((const mapi_func *) _tbl)[872]; ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetRenderbufferParameteriv)(GLenum target, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[871]; + mapi_func _func = ((const mapi_func *) _tbl)[872]; ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsFramebufferEXT)(GLuint framebuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[872]; + mapi_func _func = ((const mapi_func *) _tbl)[873]; return ((GLboolean (APIENTRY *)(GLuint framebuffer)) _func)(framebuffer); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsFramebuffer)(GLuint framebuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[872]; + mapi_func _func = ((const mapi_func *) _tbl)[873]; return ((GLboolean (APIENTRY *)(GLuint framebuffer)) _func)(framebuffer); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsRenderbufferEXT)(GLuint renderbuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[873]; + mapi_func _func = ((const mapi_func *) _tbl)[874]; return ((GLboolean (APIENTRY *)(GLuint renderbuffer)) _func)(renderbuffer); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsRenderbuffer)(GLuint renderbuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[873]; + mapi_func _func = ((const mapi_func *) _tbl)[874]; return ((GLboolean (APIENTRY *)(GLuint renderbuffer)) _func)(renderbuffer); } GLAPI void APIENTRY GLAPI_PREFIX(RenderbufferStorageEXT)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[874]; + mapi_func _func = ((const mapi_func *) _tbl)[875]; ((void (APIENTRY *)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)) _func)(target, internalformat, width, height); } GLAPI void APIENTRY GLAPI_PREFIX(RenderbufferStorage)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[874]; + mapi_func _func = ((const mapi_func *) _tbl)[875]; ((void (APIENTRY *)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)) _func)(target, internalformat, width, height); } GLAPI void APIENTRY GLAPI_PREFIX(BlitFramebuffer)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[875]; + mapi_func _func = ((const mapi_func *) _tbl)[876]; ((void (APIENTRY *)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)) _func)(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter); } GLAPI void APIENTRY GLAPI_PREFIX(BindFragDataLocationEXT)(GLuint program, GLuint colorNumber, const GLchar *name) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[878]; + mapi_func _func = ((const mapi_func *) _tbl)[879]; ((void (APIENTRY *)(GLuint program, GLuint colorNumber, const GLchar *name)) _func)(program, colorNumber, name); } GLAPI void APIENTRY GLAPI_PREFIX(BindFragDataLocation)(GLuint program, GLuint colorNumber, const GLchar *name) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[878]; + mapi_func _func = ((const mapi_func *) _tbl)[879]; ((void (APIENTRY *)(GLuint program, GLuint colorNumber, const GLchar *name)) _func)(program, colorNumber, name); } GLAPI GLint APIENTRY GLAPI_PREFIX(GetFragDataLocationEXT)(GLuint program, const GLchar *name) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[879]; + mapi_func _func = ((const mapi_func *) _tbl)[880]; return ((GLint (APIENTRY *)(GLuint program, const GLchar *name)) _func)(program, name); } GLAPI GLint APIENTRY GLAPI_PREFIX(GetFragDataLocation)(GLuint program, const GLchar *name) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[879]; + mapi_func _func = ((const mapi_func *) _tbl)[880]; return ((GLint (APIENTRY *)(GLuint program, const GLchar *name)) _func)(program, name); } GLAPI void APIENTRY GLAPI_PREFIX(GetUniformuivEXT)(GLuint program, GLint location, GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[880]; + mapi_func _func = ((const mapi_func *) _tbl)[881]; ((void (APIENTRY *)(GLuint program, GLint location, GLuint *params)) _func)(program, location, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetUniformuiv)(GLuint program, GLint location, GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[880]; + mapi_func _func = ((const mapi_func *) _tbl)[881]; ((void (APIENTRY *)(GLuint program, GLint location, GLuint *params)) _func)(program, location, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribIivEXT)(GLuint index, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[881]; + mapi_func _func = ((const mapi_func *) _tbl)[882]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLint *params)) _func)(index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribIiv)(GLuint index, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[881]; + mapi_func _func = ((const mapi_func *) _tbl)[882]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLint *params)) _func)(index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribIuivEXT)(GLuint index, GLenum pname, GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[882]; + mapi_func _func = ((const mapi_func *) _tbl)[883]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLuint *params)) _func)(index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribIuiv)(GLuint index, GLenum pname, GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[882]; + mapi_func _func = ((const mapi_func *) _tbl)[883]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLuint *params)) _func)(index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform1uiEXT)(GLint location, GLuint x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[883]; + mapi_func _func = ((const mapi_func *) _tbl)[884]; ((void (APIENTRY *)(GLint location, GLuint x)) _func)(location, x); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform1ui)(GLint location, GLuint x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[883]; + mapi_func _func = ((const mapi_func *) _tbl)[884]; ((void (APIENTRY *)(GLint location, GLuint x)) _func)(location, x); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform1uivEXT)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[884]; + mapi_func _func = ((const mapi_func *) _tbl)[885]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform1uiv)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[884]; + mapi_func _func = ((const mapi_func *) _tbl)[885]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform2uiEXT)(GLint location, GLuint x, GLuint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[885]; + mapi_func _func = ((const mapi_func *) _tbl)[886]; ((void (APIENTRY *)(GLint location, GLuint x, GLuint y)) _func)(location, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform2ui)(GLint location, GLuint x, GLuint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[885]; + mapi_func _func = ((const mapi_func *) _tbl)[886]; ((void (APIENTRY *)(GLint location, GLuint x, GLuint y)) _func)(location, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform2uivEXT)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[886]; + mapi_func _func = ((const mapi_func *) _tbl)[887]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform2uiv)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[886]; + mapi_func _func = ((const mapi_func *) _tbl)[887]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform3uiEXT)(GLint location, GLuint x, GLuint y, GLuint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[887]; + mapi_func _func = ((const mapi_func *) _tbl)[888]; ((void (APIENTRY *)(GLint location, GLuint x, GLuint y, GLuint z)) _func)(location, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform3ui)(GLint location, GLuint x, GLuint y, GLuint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[887]; + mapi_func _func = ((const mapi_func *) _tbl)[888]; ((void (APIENTRY *)(GLint location, GLuint x, GLuint y, GLuint z)) _func)(location, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform3uivEXT)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[888]; + mapi_func _func = ((const mapi_func *) _tbl)[889]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform3uiv)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[888]; + mapi_func _func = ((const mapi_func *) _tbl)[889]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform4uiEXT)(GLint location, GLuint x, GLuint y, GLuint z, GLuint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[889]; + mapi_func _func = ((const mapi_func *) _tbl)[890]; ((void (APIENTRY *)(GLint location, GLuint x, GLuint y, GLuint z, GLuint w)) _func)(location, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform4ui)(GLint location, GLuint x, GLuint y, GLuint z, GLuint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[889]; + mapi_func _func = ((const mapi_func *) _tbl)[890]; ((void (APIENTRY *)(GLint location, GLuint x, GLuint y, GLuint z, GLuint w)) _func)(location, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform4uivEXT)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[890]; + mapi_func _func = ((const mapi_func *) _tbl)[891]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform4uiv)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[890]; + mapi_func _func = ((const mapi_func *) _tbl)[891]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1iEXT)(GLuint index, GLint x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[891]; + mapi_func _func = ((const mapi_func *) _tbl)[892]; ((void (APIENTRY *)(GLuint index, GLint x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1i)(GLuint index, GLint x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[891]; + mapi_func _func = ((const mapi_func *) _tbl)[892]; ((void (APIENTRY *)(GLuint index, GLint x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1ivEXT)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[892]; + mapi_func _func = ((const mapi_func *) _tbl)[893]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1iv)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[892]; + mapi_func _func = ((const mapi_func *) _tbl)[893]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1uiEXT)(GLuint index, GLuint x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[893]; + mapi_func _func = ((const mapi_func *) _tbl)[894]; ((void (APIENTRY *)(GLuint index, GLuint x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1ui)(GLuint index, GLuint x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[893]; + mapi_func _func = ((const mapi_func *) _tbl)[894]; ((void (APIENTRY *)(GLuint index, GLuint x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1uivEXT)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[894]; + mapi_func _func = ((const mapi_func *) _tbl)[895]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1uiv)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[894]; + mapi_func _func = ((const mapi_func *) _tbl)[895]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2iEXT)(GLuint index, GLint x, GLint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[895]; + mapi_func _func = ((const mapi_func *) _tbl)[896]; ((void (APIENTRY *)(GLuint index, GLint x, GLint y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2i)(GLuint index, GLint x, GLint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[895]; + mapi_func _func = ((const mapi_func *) _tbl)[896]; ((void (APIENTRY *)(GLuint index, GLint x, GLint y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2ivEXT)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[896]; + mapi_func _func = ((const mapi_func *) _tbl)[897]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2iv)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[896]; + mapi_func _func = ((const mapi_func *) _tbl)[897]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2uiEXT)(GLuint index, GLuint x, GLuint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[897]; + mapi_func _func = ((const mapi_func *) _tbl)[898]; ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2ui)(GLuint index, GLuint x, GLuint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[897]; + mapi_func _func = ((const mapi_func *) _tbl)[898]; ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2uivEXT)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[898]; + mapi_func _func = ((const mapi_func *) _tbl)[899]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2uiv)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[898]; + mapi_func _func = ((const mapi_func *) _tbl)[899]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3iEXT)(GLuint index, GLint x, GLint y, GLint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[899]; + mapi_func _func = ((const mapi_func *) _tbl)[900]; ((void (APIENTRY *)(GLuint index, GLint x, GLint y, GLint z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3i)(GLuint index, GLint x, GLint y, GLint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[899]; + mapi_func _func = ((const mapi_func *) _tbl)[900]; ((void (APIENTRY *)(GLuint index, GLint x, GLint y, GLint z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3ivEXT)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[900]; + mapi_func _func = ((const mapi_func *) _tbl)[901]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3iv)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[900]; + mapi_func _func = ((const mapi_func *) _tbl)[901]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3uiEXT)(GLuint index, GLuint x, GLuint y, GLuint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[901]; + mapi_func _func = ((const mapi_func *) _tbl)[902]; ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y, GLuint z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3ui)(GLuint index, GLuint x, GLuint y, GLuint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[901]; + mapi_func _func = ((const mapi_func *) _tbl)[902]; ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y, GLuint z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3uivEXT)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[902]; + mapi_func _func = ((const mapi_func *) _tbl)[903]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3uiv)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[902]; + mapi_func _func = ((const mapi_func *) _tbl)[903]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4bvEXT)(GLuint index, const GLbyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[903]; + mapi_func _func = ((const mapi_func *) _tbl)[904]; ((void (APIENTRY *)(GLuint index, const GLbyte *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4bv)(GLuint index, const GLbyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[903]; + mapi_func _func = ((const mapi_func *) _tbl)[904]; ((void (APIENTRY *)(GLuint index, const GLbyte *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4iEXT)(GLuint index, GLint x, GLint y, GLint z, GLint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[904]; + mapi_func _func = ((const mapi_func *) _tbl)[905]; ((void (APIENTRY *)(GLuint index, GLint x, GLint y, GLint z, GLint w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4i)(GLuint index, GLint x, GLint y, GLint z, GLint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[904]; + mapi_func _func = ((const mapi_func *) _tbl)[905]; ((void (APIENTRY *)(GLuint index, GLint x, GLint y, GLint z, GLint w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4ivEXT)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[905]; + mapi_func _func = ((const mapi_func *) _tbl)[906]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4iv)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[905]; + mapi_func _func = ((const mapi_func *) _tbl)[906]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4svEXT)(GLuint index, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[906]; + mapi_func _func = ((const mapi_func *) _tbl)[907]; ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4sv)(GLuint index, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[906]; + mapi_func _func = ((const mapi_func *) _tbl)[907]; ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4ubvEXT)(GLuint index, const GLubyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[907]; + mapi_func _func = ((const mapi_func *) _tbl)[908]; ((void (APIENTRY *)(GLuint index, const GLubyte *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4ubv)(GLuint index, const GLubyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[907]; + mapi_func _func = ((const mapi_func *) _tbl)[908]; ((void (APIENTRY *)(GLuint index, const GLubyte *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4uiEXT)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[908]; + mapi_func _func = ((const mapi_func *) _tbl)[909]; ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4ui)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[908]; + mapi_func _func = ((const mapi_func *) _tbl)[909]; ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4uivEXT)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[909]; + mapi_func _func = ((const mapi_func *) _tbl)[910]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4uiv)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[909]; + mapi_func _func = ((const mapi_func *) _tbl)[910]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4usvEXT)(GLuint index, const GLushort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[910]; + mapi_func _func = ((const mapi_func *) _tbl)[911]; ((void (APIENTRY *)(GLuint index, const GLushort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4usv)(GLuint index, const GLushort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[910]; + mapi_func _func = ((const mapi_func *) _tbl)[911]; ((void (APIENTRY *)(GLuint index, const GLushort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribIPointerEXT)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[911]; + mapi_func _func = ((const mapi_func *) _tbl)[912]; ((void (APIENTRY *)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(index, size, type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribIPointer)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[911]; + mapi_func _func = ((const mapi_func *) _tbl)[912]; ((void (APIENTRY *)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(index, size, type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTextureLayerEXT)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[912]; + mapi_func _func = ((const mapi_func *) _tbl)[913]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)) _func)(target, attachment, texture, level, layer); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTextureLayer)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[912]; + mapi_func _func = ((const mapi_func *) _tbl)[913]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)) _func)(target, attachment, texture, level, layer); } GLAPI void APIENTRY GLAPI_PREFIX(ColorMaskIndexedEXT)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[913]; + mapi_func _func = ((const mapi_func *) _tbl)[914]; ((void (APIENTRY *)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a)) _func)(buf, r, g, b, a); } GLAPI void APIENTRY GLAPI_PREFIX(ColorMaski)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[913]; + mapi_func _func = ((const mapi_func *) _tbl)[914]; ((void (APIENTRY *)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a)) _func)(buf, r, g, b, a); } GLAPI void APIENTRY GLAPI_PREFIX(DisableIndexedEXT)(GLenum target, GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[914]; + mapi_func _func = ((const mapi_func *) _tbl)[915]; ((void (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index); } GLAPI void APIENTRY GLAPI_PREFIX(Disablei)(GLenum target, GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[914]; + mapi_func _func = ((const mapi_func *) _tbl)[915]; ((void (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index); } GLAPI void APIENTRY GLAPI_PREFIX(EnableIndexedEXT)(GLenum target, GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[915]; + mapi_func _func = ((const mapi_func *) _tbl)[916]; ((void (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index); } GLAPI void APIENTRY GLAPI_PREFIX(Enablei)(GLenum target, GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[915]; + mapi_func _func = ((const mapi_func *) _tbl)[916]; ((void (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index); } GLAPI void APIENTRY GLAPI_PREFIX(GetBooleanIndexedvEXT)(GLenum value, GLuint index, GLboolean *data) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[916]; + mapi_func _func = ((const mapi_func *) _tbl)[917]; ((void (APIENTRY *)(GLenum value, GLuint index, GLboolean *data)) _func)(value, index, data); } GLAPI void APIENTRY GLAPI_PREFIX(GetBooleani_v)(GLenum value, GLuint index, GLboolean *data) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[916]; + mapi_func _func = ((const mapi_func *) _tbl)[917]; ((void (APIENTRY *)(GLenum value, GLuint index, GLboolean *data)) _func)(value, index, data); } GLAPI void APIENTRY GLAPI_PREFIX(GetIntegerIndexedvEXT)(GLenum value, GLuint index, GLint *data) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[917]; + mapi_func _func = ((const mapi_func *) _tbl)[918]; ((void (APIENTRY *)(GLenum value, GLuint index, GLint *data)) _func)(value, index, data); } GLAPI void APIENTRY GLAPI_PREFIX(GetIntegeri_v)(GLenum value, GLuint index, GLint *data) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[917]; + mapi_func _func = ((const mapi_func *) _tbl)[918]; ((void (APIENTRY *)(GLenum value, GLuint index, GLint *data)) _func)(value, index, data); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsEnabledIndexedEXT)(GLenum target, GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[918]; + mapi_func _func = ((const mapi_func *) _tbl)[919]; return ((GLboolean (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsEnabledi)(GLenum target, GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[918]; + mapi_func _func = ((const mapi_func *) _tbl)[919]; return ((GLboolean (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index); } GLAPI void APIENTRY GLAPI_PREFIX(ClearColorIiEXT)(GLint r, GLint g, GLint b, GLint a) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[919]; + mapi_func _func = ((const mapi_func *) _tbl)[920]; ((void (APIENTRY *)(GLint r, GLint g, GLint b, GLint a)) _func)(r, g, b, a); } GLAPI void APIENTRY GLAPI_PREFIX(ClearColorIuiEXT)(GLuint r, GLuint g, GLuint b, GLuint a) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[920]; + mapi_func _func = ((const mapi_func *) _tbl)[921]; ((void (APIENTRY *)(GLuint r, GLuint g, GLuint b, GLuint a)) _func)(r, g, b, a); } GLAPI void APIENTRY GLAPI_PREFIX(GetTexParameterIivEXT)(GLenum target, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[921]; + mapi_func _func = ((const mapi_func *) _tbl)[922]; ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetTexParameterIiv)(GLenum target, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[921]; + mapi_func _func = ((const mapi_func *) _tbl)[922]; ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetTexParameterIuivEXT)(GLenum target, GLenum pname, GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[922]; + mapi_func _func = ((const mapi_func *) _tbl)[923]; ((void (APIENTRY *)(GLenum target, GLenum pname, GLuint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetTexParameterIuiv)(GLenum target, GLenum pname, GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[922]; + mapi_func _func = ((const mapi_func *) _tbl)[923]; ((void (APIENTRY *)(GLenum target, GLenum pname, GLuint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(TexParameterIivEXT)(GLenum target, GLenum pname, const GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[923]; + mapi_func _func = ((const mapi_func *) _tbl)[924]; ((void (APIENTRY *)(GLenum target, GLenum pname, const GLint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(TexParameterIiv)(GLenum target, GLenum pname, const GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[923]; + mapi_func _func = ((const mapi_func *) _tbl)[924]; ((void (APIENTRY *)(GLenum target, GLenum pname, const GLint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(TexParameterIuivEXT)(GLenum target, GLenum pname, const GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[924]; + mapi_func _func = ((const mapi_func *) _tbl)[925]; ((void (APIENTRY *)(GLenum target, GLenum pname, const GLuint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(TexParameterIuiv)(GLenum target, GLenum pname, const GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[924]; + mapi_func _func = ((const mapi_func *) _tbl)[925]; ((void (APIENTRY *)(GLenum target, GLenum pname, const GLuint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(BeginConditionalRenderNV)(GLuint query, GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[925]; + mapi_func _func = ((const mapi_func *) _tbl)[926]; ((void (APIENTRY *)(GLuint query, GLenum mode)) _func)(query, mode); } GLAPI void APIENTRY GLAPI_PREFIX(BeginConditionalRender)(GLuint query, GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[925]; + mapi_func _func = ((const mapi_func *) _tbl)[926]; ((void (APIENTRY *)(GLuint query, GLenum mode)) _func)(query, mode); } GLAPI void APIENTRY GLAPI_PREFIX(EndConditionalRenderNV)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[926]; + mapi_func _func = ((const mapi_func *) _tbl)[927]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(EndConditionalRender)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[926]; + mapi_func _func = ((const mapi_func *) _tbl)[927]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(BeginTransformFeedbackEXT)(GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[927]; + mapi_func _func = ((const mapi_func *) _tbl)[928]; ((void (APIENTRY *)(GLenum mode)) _func)(mode); } GLAPI void APIENTRY GLAPI_PREFIX(BeginTransformFeedback)(GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[927]; + mapi_func _func = ((const mapi_func *) _tbl)[928]; ((void (APIENTRY *)(GLenum mode)) _func)(mode); } GLAPI void APIENTRY GLAPI_PREFIX(BindBufferBaseEXT)(GLenum target, GLuint index, GLuint buffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[928]; + mapi_func _func = ((const mapi_func *) _tbl)[929]; ((void (APIENTRY *)(GLenum target, GLuint index, GLuint buffer)) _func)(target, index, buffer); } GLAPI void APIENTRY GLAPI_PREFIX(BindBufferBase)(GLenum target, GLuint index, GLuint buffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[928]; + mapi_func _func = ((const mapi_func *) _tbl)[929]; ((void (APIENTRY *)(GLenum target, GLuint index, GLuint buffer)) _func)(target, index, buffer); } GLAPI void APIENTRY GLAPI_PREFIX(BindBufferOffsetEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[929]; + mapi_func _func = ((const mapi_func *) _tbl)[930]; ((void (APIENTRY *)(GLenum target, GLuint index, GLuint buffer, GLintptr offset)) _func)(target, index, buffer, offset); } GLAPI void APIENTRY GLAPI_PREFIX(BindBufferRangeEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[930]; + mapi_func _func = ((const mapi_func *) _tbl)[931]; ((void (APIENTRY *)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)) _func)(target, index, buffer, offset, size); } GLAPI void APIENTRY GLAPI_PREFIX(BindBufferRange)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[930]; + mapi_func _func = ((const mapi_func *) _tbl)[931]; ((void (APIENTRY *)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)) _func)(target, index, buffer, offset, size); } GLAPI void APIENTRY GLAPI_PREFIX(EndTransformFeedbackEXT)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[931]; + mapi_func _func = ((const mapi_func *) _tbl)[932]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(EndTransformFeedback)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[931]; + mapi_func _func = ((const mapi_func *) _tbl)[932]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(GetTransformFeedbackVaryingEXT)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[932]; + mapi_func _func = ((const mapi_func *) _tbl)[933]; ((void (APIENTRY *)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)) _func)(program, index, bufSize, length, size, type, name); } GLAPI void APIENTRY GLAPI_PREFIX(GetTransformFeedbackVarying)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[932]; + mapi_func _func = ((const mapi_func *) _tbl)[933]; ((void (APIENTRY *)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)) _func)(program, index, bufSize, length, size, type, name); } GLAPI void APIENTRY GLAPI_PREFIX(TransformFeedbackVaryingsEXT)(GLuint program, GLsizei count, const char **varyings, GLenum bufferMode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[933]; + mapi_func _func = ((const mapi_func *) _tbl)[934]; ((void (APIENTRY *)(GLuint program, GLsizei count, const char **varyings, GLenum bufferMode)) _func)(program, count, varyings, bufferMode); } GLAPI void APIENTRY GLAPI_PREFIX(TransformFeedbackVaryings)(GLuint program, GLsizei count, const GLchar* *varyings, GLenum bufferMode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[933]; + mapi_func _func = ((const mapi_func *) _tbl)[934]; ((void (APIENTRY *)(GLuint program, GLsizei count, const GLchar* *varyings, GLenum bufferMode)) _func)(program, count, varyings, bufferMode); } GLAPI void APIENTRY GLAPI_PREFIX(ProvokingVertexEXT)(GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[934]; + mapi_func _func = ((const mapi_func *) _tbl)[935]; ((void (APIENTRY *)(GLenum mode)) _func)(mode); } GLAPI void APIENTRY GLAPI_PREFIX(ProvokingVertex)(GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[934]; + mapi_func _func = ((const mapi_func *) _tbl)[935]; ((void (APIENTRY *)(GLenum mode)) _func)(mode); } GLAPI void APIENTRY GLAPI_PREFIX(GetObjectParameterivAPPLE)(GLenum objectType, GLuint name, GLenum pname, GLint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[937]; + mapi_func _func = ((const mapi_func *) _tbl)[938]; ((void (APIENTRY *)(GLenum objectType, GLuint name, GLenum pname, GLint *value)) _func)(objectType, name, pname, value); } GLAPI GLenum APIENTRY GLAPI_PREFIX(ObjectPurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[938]; + mapi_func _func = ((const mapi_func *) _tbl)[939]; return ((GLenum (APIENTRY *)(GLenum objectType, GLuint name, GLenum option)) _func)(objectType, name, option); } GLAPI GLenum APIENTRY GLAPI_PREFIX(ObjectUnpurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[939]; + mapi_func _func = ((const mapi_func *) _tbl)[940]; return ((GLenum (APIENTRY *)(GLenum objectType, GLuint name, GLenum option)) _func)(objectType, name, option); } GLAPI void APIENTRY GLAPI_PREFIX(ActiveProgramEXT)(GLuint program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[940]; + mapi_func _func = ((const mapi_func *) _tbl)[941]; ((void (APIENTRY *)(GLuint program)) _func)(program); } GLAPI GLuint APIENTRY GLAPI_PREFIX(CreateShaderProgramEXT)(GLenum type, const GLchar *string) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[941]; + mapi_func _func = ((const mapi_func *) _tbl)[942]; return ((GLuint (APIENTRY *)(GLenum type, const GLchar *string)) _func)(type, string); } GLAPI void APIENTRY GLAPI_PREFIX(UseShaderProgramEXT)(GLenum type, GLuint program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[942]; + mapi_func _func = ((const mapi_func *) _tbl)[943]; ((void (APIENTRY *)(GLenum type, GLuint program)) _func)(type, program); } GLAPI void APIENTRY GLAPI_PREFIX(TextureBarrierNV)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[943]; + mapi_func _func = ((const mapi_func *) _tbl)[944]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(EGLImageTargetRenderbufferStorageOES)(GLenum target, GLvoid *writeOffset) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[949]; + mapi_func _func = ((const mapi_func *) _tbl)[950]; ((void (APIENTRY *)(GLenum target, GLvoid *writeOffset)) _func)(target, writeOffset); } GLAPI void APIENTRY GLAPI_PREFIX(EGLImageTargetTexture2DOES)(GLenum target, GLvoid *writeOffset) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[950]; + mapi_func _func = ((const mapi_func *) _tbl)[951]; ((void (APIENTRY *)(GLenum target, GLvoid *writeOffset)) _func)(target, writeOffset); } @@ -11806,9 +11814,12 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DrawBuffersARB))"\n" ".globl "GLAPI_PREFIX_STR(DrawBuffersATI)"\n" ".set "GLAPI_PREFIX_STR(DrawBuffersATI)", "GLAPI_PREFIX_STR(DrawBuffersARB)"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DrawArraysInstancedARB))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ClampColorARB))"\n" "\t"STUB_ASM_CODE("572")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DrawArraysInstancedARB))"\n" +"\t"STUB_ASM_CODE("573")"\n" + ".globl "GLAPI_PREFIX_STR(DrawArraysInstanced)"\n" ".set "GLAPI_PREFIX_STR(DrawArraysInstanced)", "GLAPI_PREFIX_STR(DrawArraysInstancedARB)"\n" @@ -11816,7 +11827,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DrawArraysInstancedARB))"\n" ".set "GLAPI_PREFIX_STR(DrawArraysInstancedEXT)", "GLAPI_PREFIX_STR(DrawArraysInstancedARB)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DrawElementsInstancedARB))"\n" -"\t"STUB_ASM_CODE("573")"\n" +"\t"STUB_ASM_CODE("574")"\n" ".globl "GLAPI_PREFIX_STR(DrawElementsInstanced)"\n" ".set "GLAPI_PREFIX_STR(DrawElementsInstanced)", "GLAPI_PREFIX_STR(DrawElementsInstancedARB)"\n" @@ -11825,140 +11836,140 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DrawElementsInstancedARB))"\n" ".set "GLAPI_PREFIX_STR(DrawElementsInstancedEXT)", "GLAPI_PREFIX_STR(DrawElementsInstancedARB)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(RenderbufferStorageMultisample))"\n" -"\t"STUB_ASM_CODE("574")"\n" +"\t"STUB_ASM_CODE("575")"\n" ".globl "GLAPI_PREFIX_STR(RenderbufferStorageMultisampleEXT)"\n" ".set "GLAPI_PREFIX_STR(RenderbufferStorageMultisampleEXT)", "GLAPI_PREFIX_STR(RenderbufferStorageMultisample)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FramebufferTextureARB))"\n" -"\t"STUB_ASM_CODE("575")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FramebufferTextureFaceARB))"\n" "\t"STUB_ASM_CODE("576")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramParameteriARB))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FramebufferTextureFaceARB))"\n" "\t"STUB_ASM_CODE("577")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribDivisorARB))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramParameteriARB))"\n" "\t"STUB_ASM_CODE("578")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FlushMappedBufferRange))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribDivisorARB))"\n" "\t"STUB_ASM_CODE("579")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(MapBufferRange))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FlushMappedBufferRange))"\n" "\t"STUB_ASM_CODE("580")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindVertexArray))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(MapBufferRange))"\n" "\t"STUB_ASM_CODE("581")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenVertexArrays))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindVertexArray))"\n" "\t"STUB_ASM_CODE("582")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CopyBufferSubData))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenVertexArrays))"\n" "\t"STUB_ASM_CODE("583")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ClientWaitSync))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CopyBufferSubData))"\n" "\t"STUB_ASM_CODE("584")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteSync))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ClientWaitSync))"\n" "\t"STUB_ASM_CODE("585")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FenceSync))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteSync))"\n" "\t"STUB_ASM_CODE("586")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetInteger64v))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FenceSync))"\n" "\t"STUB_ASM_CODE("587")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetSynciv))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetInteger64v))"\n" "\t"STUB_ASM_CODE("588")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsSync))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetSynciv))"\n" "\t"STUB_ASM_CODE("589")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WaitSync))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsSync))"\n" "\t"STUB_ASM_CODE("590")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DrawElementsBaseVertex))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WaitSync))"\n" "\t"STUB_ASM_CODE("591")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DrawRangeElementsBaseVertex))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DrawElementsBaseVertex))"\n" "\t"STUB_ASM_CODE("592")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(MultiDrawElementsBaseVertex))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DrawRangeElementsBaseVertex))"\n" "\t"STUB_ASM_CODE("593")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendEquationSeparateiARB))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(MultiDrawElementsBaseVertex))"\n" "\t"STUB_ASM_CODE("594")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendEquationiARB))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendEquationSeparateiARB))"\n" "\t"STUB_ASM_CODE("595")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendFuncSeparateiARB))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendEquationiARB))"\n" "\t"STUB_ASM_CODE("596")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendFunciARB))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendFuncSeparateiARB))"\n" "\t"STUB_ASM_CODE("597")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindTransformFeedback))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendFunciARB))"\n" "\t"STUB_ASM_CODE("598")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteTransformFeedbacks))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindTransformFeedback))"\n" "\t"STUB_ASM_CODE("599")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DrawTransformFeedback))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteTransformFeedbacks))"\n" "\t"STUB_ASM_CODE("600")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenTransformFeedbacks))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DrawTransformFeedback))"\n" "\t"STUB_ASM_CODE("601")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsTransformFeedback))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenTransformFeedbacks))"\n" "\t"STUB_ASM_CODE("602")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PauseTransformFeedback))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsTransformFeedback))"\n" "\t"STUB_ASM_CODE("603")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ResumeTransformFeedback))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PauseTransformFeedback))"\n" "\t"STUB_ASM_CODE("604")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ClearDepthf))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ResumeTransformFeedback))"\n" "\t"STUB_ASM_CODE("605")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DepthRangef))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ClearDepthf))"\n" "\t"STUB_ASM_CODE("606")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetShaderPrecisionFormat))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DepthRangef))"\n" "\t"STUB_ASM_CODE("607")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ReleaseShaderCompiler))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetShaderPrecisionFormat))"\n" "\t"STUB_ASM_CODE("608")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ShaderBinary))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ReleaseShaderCompiler))"\n" "\t"STUB_ASM_CODE("609")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ShaderBinary))"\n" +"\t"STUB_ASM_CODE("610")"\n" + STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PolygonOffsetEXT))"\n" -"\t"STUB_ASM_CODE("613")"\n" +"\t"STUB_ASM_CODE("614")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorPointerEXT))"\n" -"\t"STUB_ASM_CODE("632")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EdgeFlagPointerEXT))"\n" "\t"STUB_ASM_CODE("633")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IndexPointerEXT))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EdgeFlagPointerEXT))"\n" "\t"STUB_ASM_CODE("634")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(NormalPointerEXT))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IndexPointerEXT))"\n" "\t"STUB_ASM_CODE("635")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexCoordPointerEXT))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(NormalPointerEXT))"\n" "\t"STUB_ASM_CODE("636")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexPointerEXT))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexCoordPointerEXT))"\n" "\t"STUB_ASM_CODE("637")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameterfEXT))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexPointerEXT))"\n" "\t"STUB_ASM_CODE("638")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameterfEXT))"\n" +"\t"STUB_ASM_CODE("639")"\n" + ".globl "GLAPI_PREFIX_STR(PointParameterf)"\n" ".set "GLAPI_PREFIX_STR(PointParameterf)", "GLAPI_PREFIX_STR(PointParameterfEXT)"\n" @@ -11966,7 +11977,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameterfEXT))"\n" ".set "GLAPI_PREFIX_STR(PointParameterfARB)", "GLAPI_PREFIX_STR(PointParameterfEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameterfvEXT))"\n" -"\t"STUB_ASM_CODE("639")"\n" +"\t"STUB_ASM_CODE("640")"\n" ".globl "GLAPI_PREFIX_STR(PointParameterfv)"\n" ".set "GLAPI_PREFIX_STR(PointParameterfv)", "GLAPI_PREFIX_STR(PointParameterfvEXT)"\n" @@ -11975,212 +11986,212 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameterfvEXT))"\n" ".set "GLAPI_PREFIX_STR(PointParameterfvARB)", "GLAPI_PREFIX_STR(PointParameterfvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(LockArraysEXT))"\n" -"\t"STUB_ASM_CODE("640")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(UnlockArraysEXT))"\n" "\t"STUB_ASM_CODE("641")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3bEXT))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(UnlockArraysEXT))"\n" "\t"STUB_ASM_CODE("642")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3bEXT))"\n" +"\t"STUB_ASM_CODE("643")"\n" + ".globl "GLAPI_PREFIX_STR(SecondaryColor3b)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3b)", "GLAPI_PREFIX_STR(SecondaryColor3bEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3bvEXT))"\n" -"\t"STUB_ASM_CODE("643")"\n" +"\t"STUB_ASM_CODE("644")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3bv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3bv)", "GLAPI_PREFIX_STR(SecondaryColor3bvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3dEXT))"\n" -"\t"STUB_ASM_CODE("644")"\n" +"\t"STUB_ASM_CODE("645")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3d)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3d)", "GLAPI_PREFIX_STR(SecondaryColor3dEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3dvEXT))"\n" -"\t"STUB_ASM_CODE("645")"\n" +"\t"STUB_ASM_CODE("646")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3dv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3dv)", "GLAPI_PREFIX_STR(SecondaryColor3dvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3fEXT))"\n" -"\t"STUB_ASM_CODE("646")"\n" +"\t"STUB_ASM_CODE("647")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3f)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3f)", "GLAPI_PREFIX_STR(SecondaryColor3fEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3fvEXT))"\n" -"\t"STUB_ASM_CODE("647")"\n" +"\t"STUB_ASM_CODE("648")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3fv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3fv)", "GLAPI_PREFIX_STR(SecondaryColor3fvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3iEXT))"\n" -"\t"STUB_ASM_CODE("648")"\n" +"\t"STUB_ASM_CODE("649")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3i)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3i)", "GLAPI_PREFIX_STR(SecondaryColor3iEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3ivEXT))"\n" -"\t"STUB_ASM_CODE("649")"\n" +"\t"STUB_ASM_CODE("650")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3iv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3iv)", "GLAPI_PREFIX_STR(SecondaryColor3ivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3sEXT))"\n" -"\t"STUB_ASM_CODE("650")"\n" +"\t"STUB_ASM_CODE("651")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3s)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3s)", "GLAPI_PREFIX_STR(SecondaryColor3sEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3svEXT))"\n" -"\t"STUB_ASM_CODE("651")"\n" +"\t"STUB_ASM_CODE("652")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3sv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3sv)", "GLAPI_PREFIX_STR(SecondaryColor3svEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3ubEXT))"\n" -"\t"STUB_ASM_CODE("652")"\n" +"\t"STUB_ASM_CODE("653")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3ub)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3ub)", "GLAPI_PREFIX_STR(SecondaryColor3ubEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3ubvEXT))"\n" -"\t"STUB_ASM_CODE("653")"\n" +"\t"STUB_ASM_CODE("654")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3ubv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3ubv)", "GLAPI_PREFIX_STR(SecondaryColor3ubvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3uiEXT))"\n" -"\t"STUB_ASM_CODE("654")"\n" +"\t"STUB_ASM_CODE("655")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3ui)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3ui)", "GLAPI_PREFIX_STR(SecondaryColor3uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3uivEXT))"\n" -"\t"STUB_ASM_CODE("655")"\n" +"\t"STUB_ASM_CODE("656")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3uiv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3uiv)", "GLAPI_PREFIX_STR(SecondaryColor3uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3usEXT))"\n" -"\t"STUB_ASM_CODE("656")"\n" +"\t"STUB_ASM_CODE("657")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3us)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3us)", "GLAPI_PREFIX_STR(SecondaryColor3usEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3usvEXT))"\n" -"\t"STUB_ASM_CODE("657")"\n" +"\t"STUB_ASM_CODE("658")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3usv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3usv)", "GLAPI_PREFIX_STR(SecondaryColor3usvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColorPointerEXT))"\n" -"\t"STUB_ASM_CODE("658")"\n" +"\t"STUB_ASM_CODE("659")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColorPointer)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColorPointer)", "GLAPI_PREFIX_STR(SecondaryColorPointerEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(MultiDrawArraysEXT))"\n" -"\t"STUB_ASM_CODE("659")"\n" +"\t"STUB_ASM_CODE("660")"\n" ".globl "GLAPI_PREFIX_STR(MultiDrawArrays)"\n" ".set "GLAPI_PREFIX_STR(MultiDrawArrays)", "GLAPI_PREFIX_STR(MultiDrawArraysEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(MultiDrawElementsEXT))"\n" -"\t"STUB_ASM_CODE("660")"\n" +"\t"STUB_ASM_CODE("661")"\n" ".globl "GLAPI_PREFIX_STR(MultiDrawElements)"\n" ".set "GLAPI_PREFIX_STR(MultiDrawElements)", "GLAPI_PREFIX_STR(MultiDrawElementsEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FogCoordPointerEXT))"\n" -"\t"STUB_ASM_CODE("661")"\n" +"\t"STUB_ASM_CODE("662")"\n" ".globl "GLAPI_PREFIX_STR(FogCoordPointer)"\n" ".set "GLAPI_PREFIX_STR(FogCoordPointer)", "GLAPI_PREFIX_STR(FogCoordPointerEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FogCoorddEXT))"\n" -"\t"STUB_ASM_CODE("662")"\n" +"\t"STUB_ASM_CODE("663")"\n" ".globl "GLAPI_PREFIX_STR(FogCoordd)"\n" ".set "GLAPI_PREFIX_STR(FogCoordd)", "GLAPI_PREFIX_STR(FogCoorddEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FogCoorddvEXT))"\n" -"\t"STUB_ASM_CODE("663")"\n" +"\t"STUB_ASM_CODE("664")"\n" ".globl "GLAPI_PREFIX_STR(FogCoorddv)"\n" ".set "GLAPI_PREFIX_STR(FogCoorddv)", "GLAPI_PREFIX_STR(FogCoorddvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FogCoordfEXT))"\n" -"\t"STUB_ASM_CODE("664")"\n" +"\t"STUB_ASM_CODE("665")"\n" ".globl "GLAPI_PREFIX_STR(FogCoordf)"\n" ".set "GLAPI_PREFIX_STR(FogCoordf)", "GLAPI_PREFIX_STR(FogCoordfEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FogCoordfvEXT))"\n" -"\t"STUB_ASM_CODE("665")"\n" +"\t"STUB_ASM_CODE("666")"\n" ".globl "GLAPI_PREFIX_STR(FogCoordfv)"\n" ".set "GLAPI_PREFIX_STR(FogCoordfv)", "GLAPI_PREFIX_STR(FogCoordfvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendFuncSeparateEXT))"\n" -"\t"STUB_ASM_CODE("667")"\n" +"\t"STUB_ASM_CODE("668")"\n" ".globl "GLAPI_PREFIX_STR(BlendFuncSeparate)"\n" ".set "GLAPI_PREFIX_STR(BlendFuncSeparate)", "GLAPI_PREFIX_STR(BlendFuncSeparateEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FlushVertexArrayRangeNV))"\n" -"\t"STUB_ASM_CODE("668")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexArrayRangeNV))"\n" "\t"STUB_ASM_CODE("669")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerInputNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexArrayRangeNV))"\n" "\t"STUB_ASM_CODE("670")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerOutputNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerInputNV))"\n" "\t"STUB_ASM_CODE("671")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameterfNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerOutputNV))"\n" "\t"STUB_ASM_CODE("672")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameterfvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameterfNV))"\n" "\t"STUB_ASM_CODE("673")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameteriNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameterfvNV))"\n" "\t"STUB_ASM_CODE("674")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameterivNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameteriNV))"\n" "\t"STUB_ASM_CODE("675")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FinalCombinerInputNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameterivNV))"\n" "\t"STUB_ASM_CODE("676")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerInputParameterfvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FinalCombinerInputNV))"\n" "\t"STUB_ASM_CODE("677")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerInputParameterivNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerInputParameterfvNV))"\n" "\t"STUB_ASM_CODE("678")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerOutputParameterfvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerInputParameterivNV))"\n" "\t"STUB_ASM_CODE("679")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerOutputParameterivNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerOutputParameterfvNV))"\n" "\t"STUB_ASM_CODE("680")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetFinalCombinerInputParameterfvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerOutputParameterivNV))"\n" "\t"STUB_ASM_CODE("681")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetFinalCombinerInputParameterivNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetFinalCombinerInputParameterfvNV))"\n" "\t"STUB_ASM_CODE("682")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ResizeBuffersMESA))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetFinalCombinerInputParameterivNV))"\n" "\t"STUB_ASM_CODE("683")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2dMESA))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ResizeBuffersMESA))"\n" "\t"STUB_ASM_CODE("684")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2dMESA))"\n" +"\t"STUB_ASM_CODE("685")"\n" + ".globl "GLAPI_PREFIX_STR(WindowPos2d)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2d)", "GLAPI_PREFIX_STR(WindowPos2dMESA)"\n" @@ -12188,7 +12199,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2dMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2dARB)", "GLAPI_PREFIX_STR(WindowPos2dMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2dvMESA))"\n" -"\t"STUB_ASM_CODE("685")"\n" +"\t"STUB_ASM_CODE("686")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2dv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2dv)", "GLAPI_PREFIX_STR(WindowPos2dvMESA)"\n" @@ -12197,7 +12208,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2dvMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2dvARB)", "GLAPI_PREFIX_STR(WindowPos2dvMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2fMESA))"\n" -"\t"STUB_ASM_CODE("686")"\n" +"\t"STUB_ASM_CODE("687")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2f)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2f)", "GLAPI_PREFIX_STR(WindowPos2fMESA)"\n" @@ -12206,7 +12217,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2fMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2fARB)", "GLAPI_PREFIX_STR(WindowPos2fMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2fvMESA))"\n" -"\t"STUB_ASM_CODE("687")"\n" +"\t"STUB_ASM_CODE("688")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2fv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2fv)", "GLAPI_PREFIX_STR(WindowPos2fvMESA)"\n" @@ -12215,7 +12226,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2fvMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2fvARB)", "GLAPI_PREFIX_STR(WindowPos2fvMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2iMESA))"\n" -"\t"STUB_ASM_CODE("688")"\n" +"\t"STUB_ASM_CODE("689")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2i)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2i)", "GLAPI_PREFIX_STR(WindowPos2iMESA)"\n" @@ -12224,7 +12235,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2iMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2iARB)", "GLAPI_PREFIX_STR(WindowPos2iMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2ivMESA))"\n" -"\t"STUB_ASM_CODE("689")"\n" +"\t"STUB_ASM_CODE("690")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2iv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2iv)", "GLAPI_PREFIX_STR(WindowPos2ivMESA)"\n" @@ -12233,7 +12244,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2ivMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2ivARB)", "GLAPI_PREFIX_STR(WindowPos2ivMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2sMESA))"\n" -"\t"STUB_ASM_CODE("690")"\n" +"\t"STUB_ASM_CODE("691")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2s)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2s)", "GLAPI_PREFIX_STR(WindowPos2sMESA)"\n" @@ -12242,7 +12253,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2sMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2sARB)", "GLAPI_PREFIX_STR(WindowPos2sMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2svMESA))"\n" -"\t"STUB_ASM_CODE("691")"\n" +"\t"STUB_ASM_CODE("692")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2sv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2sv)", "GLAPI_PREFIX_STR(WindowPos2svMESA)"\n" @@ -12251,7 +12262,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2svMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2svARB)", "GLAPI_PREFIX_STR(WindowPos2svMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3dMESA))"\n" -"\t"STUB_ASM_CODE("692")"\n" +"\t"STUB_ASM_CODE("693")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3d)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3d)", "GLAPI_PREFIX_STR(WindowPos3dMESA)"\n" @@ -12260,7 +12271,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3dMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3dARB)", "GLAPI_PREFIX_STR(WindowPos3dMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3dvMESA))"\n" -"\t"STUB_ASM_CODE("693")"\n" +"\t"STUB_ASM_CODE("694")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3dv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3dv)", "GLAPI_PREFIX_STR(WindowPos3dvMESA)"\n" @@ -12269,7 +12280,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3dvMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3dvARB)", "GLAPI_PREFIX_STR(WindowPos3dvMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3fMESA))"\n" -"\t"STUB_ASM_CODE("694")"\n" +"\t"STUB_ASM_CODE("695")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3f)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3f)", "GLAPI_PREFIX_STR(WindowPos3fMESA)"\n" @@ -12278,7 +12289,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3fMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3fARB)", "GLAPI_PREFIX_STR(WindowPos3fMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3fvMESA))"\n" -"\t"STUB_ASM_CODE("695")"\n" +"\t"STUB_ASM_CODE("696")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3fv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3fv)", "GLAPI_PREFIX_STR(WindowPos3fvMESA)"\n" @@ -12287,7 +12298,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3fvMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3fvARB)", "GLAPI_PREFIX_STR(WindowPos3fvMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3iMESA))"\n" -"\t"STUB_ASM_CODE("696")"\n" +"\t"STUB_ASM_CODE("697")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3i)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3i)", "GLAPI_PREFIX_STR(WindowPos3iMESA)"\n" @@ -12296,7 +12307,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3iMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3iARB)", "GLAPI_PREFIX_STR(WindowPos3iMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3ivMESA))"\n" -"\t"STUB_ASM_CODE("697")"\n" +"\t"STUB_ASM_CODE("698")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3iv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3iv)", "GLAPI_PREFIX_STR(WindowPos3ivMESA)"\n" @@ -12305,7 +12316,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3ivMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3ivARB)", "GLAPI_PREFIX_STR(WindowPos3ivMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3sMESA))"\n" -"\t"STUB_ASM_CODE("698")"\n" +"\t"STUB_ASM_CODE("699")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3s)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3s)", "GLAPI_PREFIX_STR(WindowPos3sMESA)"\n" @@ -12314,7 +12325,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3sMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3sARB)", "GLAPI_PREFIX_STR(WindowPos3sMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3svMESA))"\n" -"\t"STUB_ASM_CODE("699")"\n" +"\t"STUB_ASM_CODE("700")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3sv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3sv)", "GLAPI_PREFIX_STR(WindowPos3svMESA)"\n" @@ -12323,71 +12334,71 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3svMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3svARB)", "GLAPI_PREFIX_STR(WindowPos3svMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4dMESA))"\n" -"\t"STUB_ASM_CODE("700")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4dvMESA))"\n" "\t"STUB_ASM_CODE("701")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4fMESA))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4dvMESA))"\n" "\t"STUB_ASM_CODE("702")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4fvMESA))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4fMESA))"\n" "\t"STUB_ASM_CODE("703")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4iMESA))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4fvMESA))"\n" "\t"STUB_ASM_CODE("704")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4ivMESA))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4iMESA))"\n" "\t"STUB_ASM_CODE("705")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4sMESA))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4ivMESA))"\n" "\t"STUB_ASM_CODE("706")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4svMESA))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4sMESA))"\n" "\t"STUB_ASM_CODE("707")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4svMESA))"\n" +"\t"STUB_ASM_CODE("708")"\n" + STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AreProgramsResidentNV))"\n" -"\t"STUB_ASM_CODE("717")"\n" +"\t"STUB_ASM_CODE("718")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindProgramNV))"\n" -"\t"STUB_ASM_CODE("718")"\n" +"\t"STUB_ASM_CODE("719")"\n" ".globl "GLAPI_PREFIX_STR(BindProgramARB)"\n" ".set "GLAPI_PREFIX_STR(BindProgramARB)", "GLAPI_PREFIX_STR(BindProgramNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteProgramsNV))"\n" -"\t"STUB_ASM_CODE("719")"\n" +"\t"STUB_ASM_CODE("720")"\n" ".globl "GLAPI_PREFIX_STR(DeleteProgramsARB)"\n" ".set "GLAPI_PREFIX_STR(DeleteProgramsARB)", "GLAPI_PREFIX_STR(DeleteProgramsNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ExecuteProgramNV))"\n" -"\t"STUB_ASM_CODE("720")"\n" +"\t"STUB_ASM_CODE("721")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenProgramsNV))"\n" -"\t"STUB_ASM_CODE("721")"\n" +"\t"STUB_ASM_CODE("722")"\n" ".globl "GLAPI_PREFIX_STR(GenProgramsARB)"\n" ".set "GLAPI_PREFIX_STR(GenProgramsARB)", "GLAPI_PREFIX_STR(GenProgramsNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramParameterdvNV))"\n" -"\t"STUB_ASM_CODE("722")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramParameterfvNV))"\n" "\t"STUB_ASM_CODE("723")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramStringNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramParameterfvNV))"\n" "\t"STUB_ASM_CODE("724")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramivNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramStringNV))"\n" "\t"STUB_ASM_CODE("725")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTrackMatrixivNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramivNV))"\n" "\t"STUB_ASM_CODE("726")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribPointervNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTrackMatrixivNV))"\n" "\t"STUB_ASM_CODE("727")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribPointervNV))"\n" +"\t"STUB_ASM_CODE("728")"\n" + ".globl "GLAPI_PREFIX_STR(GetVertexAttribPointerv)"\n" ".set "GLAPI_PREFIX_STR(GetVertexAttribPointerv)", "GLAPI_PREFIX_STR(GetVertexAttribPointervNV)"\n" @@ -12395,721 +12406,721 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribPointervNV))"\n" ".set "GLAPI_PREFIX_STR(GetVertexAttribPointervARB)", "GLAPI_PREFIX_STR(GetVertexAttribPointervNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribdvNV))"\n" -"\t"STUB_ASM_CODE("728")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribfvNV))"\n" "\t"STUB_ASM_CODE("729")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribivNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribfvNV))"\n" "\t"STUB_ASM_CODE("730")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsProgramNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribivNV))"\n" "\t"STUB_ASM_CODE("731")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsProgramNV))"\n" +"\t"STUB_ASM_CODE("732")"\n" + ".globl "GLAPI_PREFIX_STR(IsProgramARB)"\n" ".set "GLAPI_PREFIX_STR(IsProgramARB)", "GLAPI_PREFIX_STR(IsProgramNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(LoadProgramNV))"\n" -"\t"STUB_ASM_CODE("732")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramParameters4dvNV))"\n" "\t"STUB_ASM_CODE("733")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramParameters4fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramParameters4dvNV))"\n" "\t"STUB_ASM_CODE("734")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(RequestResidentProgramsNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramParameters4fvNV))"\n" "\t"STUB_ASM_CODE("735")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TrackMatrixNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(RequestResidentProgramsNV))"\n" "\t"STUB_ASM_CODE("736")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1dNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TrackMatrixNV))"\n" "\t"STUB_ASM_CODE("737")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1dvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1dNV))"\n" "\t"STUB_ASM_CODE("738")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1fNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1dvNV))"\n" "\t"STUB_ASM_CODE("739")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1fNV))"\n" "\t"STUB_ASM_CODE("740")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1sNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1fvNV))"\n" "\t"STUB_ASM_CODE("741")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1svNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1sNV))"\n" "\t"STUB_ASM_CODE("742")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2dNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1svNV))"\n" "\t"STUB_ASM_CODE("743")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2dvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2dNV))"\n" "\t"STUB_ASM_CODE("744")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2fNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2dvNV))"\n" "\t"STUB_ASM_CODE("745")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2fNV))"\n" "\t"STUB_ASM_CODE("746")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2sNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2fvNV))"\n" "\t"STUB_ASM_CODE("747")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2svNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2sNV))"\n" "\t"STUB_ASM_CODE("748")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3dNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2svNV))"\n" "\t"STUB_ASM_CODE("749")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3dvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3dNV))"\n" "\t"STUB_ASM_CODE("750")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3fNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3dvNV))"\n" "\t"STUB_ASM_CODE("751")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3fNV))"\n" "\t"STUB_ASM_CODE("752")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3sNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3fvNV))"\n" "\t"STUB_ASM_CODE("753")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3svNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3sNV))"\n" "\t"STUB_ASM_CODE("754")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4dNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3svNV))"\n" "\t"STUB_ASM_CODE("755")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4dvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4dNV))"\n" "\t"STUB_ASM_CODE("756")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4fNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4dvNV))"\n" "\t"STUB_ASM_CODE("757")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4fNV))"\n" "\t"STUB_ASM_CODE("758")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4sNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4fvNV))"\n" "\t"STUB_ASM_CODE("759")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4svNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4sNV))"\n" "\t"STUB_ASM_CODE("760")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4ubNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4svNV))"\n" "\t"STUB_ASM_CODE("761")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4ubvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4ubNV))"\n" "\t"STUB_ASM_CODE("762")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribPointerNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4ubvNV))"\n" "\t"STUB_ASM_CODE("763")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs1dvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribPointerNV))"\n" "\t"STUB_ASM_CODE("764")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs1fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs1dvNV))"\n" "\t"STUB_ASM_CODE("765")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs1svNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs1fvNV))"\n" "\t"STUB_ASM_CODE("766")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs2dvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs1svNV))"\n" "\t"STUB_ASM_CODE("767")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs2fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs2dvNV))"\n" "\t"STUB_ASM_CODE("768")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs2svNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs2fvNV))"\n" "\t"STUB_ASM_CODE("769")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs3dvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs2svNV))"\n" "\t"STUB_ASM_CODE("770")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs3fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs3dvNV))"\n" "\t"STUB_ASM_CODE("771")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs3svNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs3fvNV))"\n" "\t"STUB_ASM_CODE("772")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4dvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs3svNV))"\n" "\t"STUB_ASM_CODE("773")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4dvNV))"\n" "\t"STUB_ASM_CODE("774")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4svNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4fvNV))"\n" "\t"STUB_ASM_CODE("775")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4ubvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4svNV))"\n" "\t"STUB_ASM_CODE("776")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTexBumpParameterfvATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4ubvNV))"\n" "\t"STUB_ASM_CODE("777")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTexBumpParameterivATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTexBumpParameterfvATI))"\n" "\t"STUB_ASM_CODE("778")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexBumpParameterfvATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTexBumpParameterivATI))"\n" "\t"STUB_ASM_CODE("779")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexBumpParameterivATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexBumpParameterfvATI))"\n" "\t"STUB_ASM_CODE("780")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AlphaFragmentOp1ATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexBumpParameterivATI))"\n" "\t"STUB_ASM_CODE("781")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AlphaFragmentOp2ATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AlphaFragmentOp1ATI))"\n" "\t"STUB_ASM_CODE("782")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AlphaFragmentOp3ATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AlphaFragmentOp2ATI))"\n" "\t"STUB_ASM_CODE("783")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BeginFragmentShaderATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AlphaFragmentOp3ATI))"\n" "\t"STUB_ASM_CODE("784")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindFragmentShaderATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BeginFragmentShaderATI))"\n" "\t"STUB_ASM_CODE("785")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorFragmentOp1ATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindFragmentShaderATI))"\n" "\t"STUB_ASM_CODE("786")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorFragmentOp2ATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorFragmentOp1ATI))"\n" "\t"STUB_ASM_CODE("787")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorFragmentOp3ATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorFragmentOp2ATI))"\n" "\t"STUB_ASM_CODE("788")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteFragmentShaderATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorFragmentOp3ATI))"\n" "\t"STUB_ASM_CODE("789")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EndFragmentShaderATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteFragmentShaderATI))"\n" "\t"STUB_ASM_CODE("790")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenFragmentShadersATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EndFragmentShaderATI))"\n" "\t"STUB_ASM_CODE("791")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PassTexCoordATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenFragmentShadersATI))"\n" "\t"STUB_ASM_CODE("792")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SampleMapATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PassTexCoordATI))"\n" "\t"STUB_ASM_CODE("793")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SetFragmentShaderConstantATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SampleMapATI))"\n" "\t"STUB_ASM_CODE("794")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameteriNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SetFragmentShaderConstantATI))"\n" "\t"STUB_ASM_CODE("795")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameteriNV))"\n" +"\t"STUB_ASM_CODE("796")"\n" + ".globl "GLAPI_PREFIX_STR(PointParameteri)"\n" ".set "GLAPI_PREFIX_STR(PointParameteri)", "GLAPI_PREFIX_STR(PointParameteriNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameterivNV))"\n" -"\t"STUB_ASM_CODE("796")"\n" +"\t"STUB_ASM_CODE("797")"\n" ".globl "GLAPI_PREFIX_STR(PointParameteriv)"\n" ".set "GLAPI_PREFIX_STR(PointParameteriv)", "GLAPI_PREFIX_STR(PointParameterivNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteVertexArrays))"\n" -"\t"STUB_ASM_CODE("799")"\n" +"\t"STUB_ASM_CODE("800")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsVertexArray))"\n" -"\t"STUB_ASM_CODE("801")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramNamedParameterdvNV))"\n" "\t"STUB_ASM_CODE("802")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramNamedParameterfvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramNamedParameterdvNV))"\n" "\t"STUB_ASM_CODE("803")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramNamedParameter4dNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramNamedParameterfvNV))"\n" "\t"STUB_ASM_CODE("804")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramNamedParameter4dvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramNamedParameter4dNV))"\n" "\t"STUB_ASM_CODE("805")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramNamedParameter4fNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramNamedParameter4dvNV))"\n" "\t"STUB_ASM_CODE("806")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramNamedParameter4fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramNamedParameter4fNV))"\n" "\t"STUB_ASM_CODE("807")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PrimitiveRestartIndexNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramNamedParameter4fvNV))"\n" "\t"STUB_ASM_CODE("808")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PrimitiveRestartIndexNV))"\n" +"\t"STUB_ASM_CODE("809")"\n" + ".globl "GLAPI_PREFIX_STR(PrimitiveRestartIndex)"\n" ".set "GLAPI_PREFIX_STR(PrimitiveRestartIndex)", "GLAPI_PREFIX_STR(PrimitiveRestartIndexNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PrimitiveRestartNV))"\n" -"\t"STUB_ASM_CODE("809")"\n" +"\t"STUB_ASM_CODE("810")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendEquationSeparate))"\n" -"\t"STUB_ASM_CODE("857")"\n" +"\t"STUB_ASM_CODE("858")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindFramebufferEXT))"\n" -"\t"STUB_ASM_CODE("858")"\n" +"\t"STUB_ASM_CODE("859")"\n" ".globl "GLAPI_PREFIX_STR(BindFramebuffer)"\n" ".set "GLAPI_PREFIX_STR(BindFramebuffer)", "GLAPI_PREFIX_STR(BindFramebufferEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindRenderbufferEXT))"\n" -"\t"STUB_ASM_CODE("859")"\n" +"\t"STUB_ASM_CODE("860")"\n" ".globl "GLAPI_PREFIX_STR(BindRenderbuffer)"\n" ".set "GLAPI_PREFIX_STR(BindRenderbuffer)", "GLAPI_PREFIX_STR(BindRenderbufferEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CheckFramebufferStatusEXT))"\n" -"\t"STUB_ASM_CODE("860")"\n" +"\t"STUB_ASM_CODE("861")"\n" ".globl "GLAPI_PREFIX_STR(CheckFramebufferStatus)"\n" ".set "GLAPI_PREFIX_STR(CheckFramebufferStatus)", "GLAPI_PREFIX_STR(CheckFramebufferStatusEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteFramebuffersEXT))"\n" -"\t"STUB_ASM_CODE("861")"\n" +"\t"STUB_ASM_CODE("862")"\n" ".globl "GLAPI_PREFIX_STR(DeleteFramebuffers)"\n" ".set "GLAPI_PREFIX_STR(DeleteFramebuffers)", "GLAPI_PREFIX_STR(DeleteFramebuffersEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteRenderbuffersEXT))"\n" -"\t"STUB_ASM_CODE("862")"\n" +"\t"STUB_ASM_CODE("863")"\n" ".globl "GLAPI_PREFIX_STR(DeleteRenderbuffers)"\n" ".set "GLAPI_PREFIX_STR(DeleteRenderbuffers)", "GLAPI_PREFIX_STR(DeleteRenderbuffersEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FramebufferRenderbufferEXT))"\n" -"\t"STUB_ASM_CODE("863")"\n" +"\t"STUB_ASM_CODE("864")"\n" ".globl "GLAPI_PREFIX_STR(FramebufferRenderbuffer)"\n" ".set "GLAPI_PREFIX_STR(FramebufferRenderbuffer)", "GLAPI_PREFIX_STR(FramebufferRenderbufferEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FramebufferTexture1DEXT))"\n" -"\t"STUB_ASM_CODE("864")"\n" +"\t"STUB_ASM_CODE("865")"\n" ".globl "GLAPI_PREFIX_STR(FramebufferTexture1D)"\n" ".set "GLAPI_PREFIX_STR(FramebufferTexture1D)", "GLAPI_PREFIX_STR(FramebufferTexture1DEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FramebufferTexture2DEXT))"\n" -"\t"STUB_ASM_CODE("865")"\n" +"\t"STUB_ASM_CODE("866")"\n" ".globl "GLAPI_PREFIX_STR(FramebufferTexture2D)"\n" ".set "GLAPI_PREFIX_STR(FramebufferTexture2D)", "GLAPI_PREFIX_STR(FramebufferTexture2DEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FramebufferTexture3DEXT))"\n" -"\t"STUB_ASM_CODE("866")"\n" +"\t"STUB_ASM_CODE("867")"\n" ".globl "GLAPI_PREFIX_STR(FramebufferTexture3D)"\n" ".set "GLAPI_PREFIX_STR(FramebufferTexture3D)", "GLAPI_PREFIX_STR(FramebufferTexture3DEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenFramebuffersEXT))"\n" -"\t"STUB_ASM_CODE("867")"\n" +"\t"STUB_ASM_CODE("868")"\n" ".globl "GLAPI_PREFIX_STR(GenFramebuffers)"\n" ".set "GLAPI_PREFIX_STR(GenFramebuffers)", "GLAPI_PREFIX_STR(GenFramebuffersEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenRenderbuffersEXT))"\n" -"\t"STUB_ASM_CODE("868")"\n" +"\t"STUB_ASM_CODE("869")"\n" ".globl "GLAPI_PREFIX_STR(GenRenderbuffers)"\n" ".set "GLAPI_PREFIX_STR(GenRenderbuffers)", "GLAPI_PREFIX_STR(GenRenderbuffersEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenerateMipmapEXT))"\n" -"\t"STUB_ASM_CODE("869")"\n" +"\t"STUB_ASM_CODE("870")"\n" ".globl "GLAPI_PREFIX_STR(GenerateMipmap)"\n" ".set "GLAPI_PREFIX_STR(GenerateMipmap)", "GLAPI_PREFIX_STR(GenerateMipmapEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetFramebufferAttachmentParameterivEXT))"\n" -"\t"STUB_ASM_CODE("870")"\n" +"\t"STUB_ASM_CODE("871")"\n" ".globl "GLAPI_PREFIX_STR(GetFramebufferAttachmentParameteriv)"\n" ".set "GLAPI_PREFIX_STR(GetFramebufferAttachmentParameteriv)", "GLAPI_PREFIX_STR(GetFramebufferAttachmentParameterivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetRenderbufferParameterivEXT))"\n" -"\t"STUB_ASM_CODE("871")"\n" +"\t"STUB_ASM_CODE("872")"\n" ".globl "GLAPI_PREFIX_STR(GetRenderbufferParameteriv)"\n" ".set "GLAPI_PREFIX_STR(GetRenderbufferParameteriv)", "GLAPI_PREFIX_STR(GetRenderbufferParameterivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsFramebufferEXT))"\n" -"\t"STUB_ASM_CODE("872")"\n" +"\t"STUB_ASM_CODE("873")"\n" ".globl "GLAPI_PREFIX_STR(IsFramebuffer)"\n" ".set "GLAPI_PREFIX_STR(IsFramebuffer)", "GLAPI_PREFIX_STR(IsFramebufferEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsRenderbufferEXT))"\n" -"\t"STUB_ASM_CODE("873")"\n" +"\t"STUB_ASM_CODE("874")"\n" ".globl "GLAPI_PREFIX_STR(IsRenderbuffer)"\n" ".set "GLAPI_PREFIX_STR(IsRenderbuffer)", "GLAPI_PREFIX_STR(IsRenderbufferEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(RenderbufferStorageEXT))"\n" -"\t"STUB_ASM_CODE("874")"\n" +"\t"STUB_ASM_CODE("875")"\n" ".globl "GLAPI_PREFIX_STR(RenderbufferStorage)"\n" ".set "GLAPI_PREFIX_STR(RenderbufferStorage)", "GLAPI_PREFIX_STR(RenderbufferStorageEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlitFramebuffer))"\n" -"\t"STUB_ASM_CODE("875")"\n" +"\t"STUB_ASM_CODE("876")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindFragDataLocationEXT))"\n" -"\t"STUB_ASM_CODE("878")"\n" +"\t"STUB_ASM_CODE("879")"\n" ".globl "GLAPI_PREFIX_STR(BindFragDataLocation)"\n" ".set "GLAPI_PREFIX_STR(BindFragDataLocation)", "GLAPI_PREFIX_STR(BindFragDataLocationEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetFragDataLocationEXT))"\n" -"\t"STUB_ASM_CODE("879")"\n" +"\t"STUB_ASM_CODE("880")"\n" ".globl "GLAPI_PREFIX_STR(GetFragDataLocation)"\n" ".set "GLAPI_PREFIX_STR(GetFragDataLocation)", "GLAPI_PREFIX_STR(GetFragDataLocationEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetUniformuivEXT))"\n" -"\t"STUB_ASM_CODE("880")"\n" +"\t"STUB_ASM_CODE("881")"\n" ".globl "GLAPI_PREFIX_STR(GetUniformuiv)"\n" ".set "GLAPI_PREFIX_STR(GetUniformuiv)", "GLAPI_PREFIX_STR(GetUniformuivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribIivEXT))"\n" -"\t"STUB_ASM_CODE("881")"\n" +"\t"STUB_ASM_CODE("882")"\n" ".globl "GLAPI_PREFIX_STR(GetVertexAttribIiv)"\n" ".set "GLAPI_PREFIX_STR(GetVertexAttribIiv)", "GLAPI_PREFIX_STR(GetVertexAttribIivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribIuivEXT))"\n" -"\t"STUB_ASM_CODE("882")"\n" +"\t"STUB_ASM_CODE("883")"\n" ".globl "GLAPI_PREFIX_STR(GetVertexAttribIuiv)"\n" ".set "GLAPI_PREFIX_STR(GetVertexAttribIuiv)", "GLAPI_PREFIX_STR(GetVertexAttribIuivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform1uiEXT))"\n" -"\t"STUB_ASM_CODE("883")"\n" +"\t"STUB_ASM_CODE("884")"\n" ".globl "GLAPI_PREFIX_STR(Uniform1ui)"\n" ".set "GLAPI_PREFIX_STR(Uniform1ui)", "GLAPI_PREFIX_STR(Uniform1uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform1uivEXT))"\n" -"\t"STUB_ASM_CODE("884")"\n" +"\t"STUB_ASM_CODE("885")"\n" ".globl "GLAPI_PREFIX_STR(Uniform1uiv)"\n" ".set "GLAPI_PREFIX_STR(Uniform1uiv)", "GLAPI_PREFIX_STR(Uniform1uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform2uiEXT))"\n" -"\t"STUB_ASM_CODE("885")"\n" +"\t"STUB_ASM_CODE("886")"\n" ".globl "GLAPI_PREFIX_STR(Uniform2ui)"\n" ".set "GLAPI_PREFIX_STR(Uniform2ui)", "GLAPI_PREFIX_STR(Uniform2uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform2uivEXT))"\n" -"\t"STUB_ASM_CODE("886")"\n" +"\t"STUB_ASM_CODE("887")"\n" ".globl "GLAPI_PREFIX_STR(Uniform2uiv)"\n" ".set "GLAPI_PREFIX_STR(Uniform2uiv)", "GLAPI_PREFIX_STR(Uniform2uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform3uiEXT))"\n" -"\t"STUB_ASM_CODE("887")"\n" +"\t"STUB_ASM_CODE("888")"\n" ".globl "GLAPI_PREFIX_STR(Uniform3ui)"\n" ".set "GLAPI_PREFIX_STR(Uniform3ui)", "GLAPI_PREFIX_STR(Uniform3uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform3uivEXT))"\n" -"\t"STUB_ASM_CODE("888")"\n" +"\t"STUB_ASM_CODE("889")"\n" ".globl "GLAPI_PREFIX_STR(Uniform3uiv)"\n" ".set "GLAPI_PREFIX_STR(Uniform3uiv)", "GLAPI_PREFIX_STR(Uniform3uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform4uiEXT))"\n" -"\t"STUB_ASM_CODE("889")"\n" +"\t"STUB_ASM_CODE("890")"\n" ".globl "GLAPI_PREFIX_STR(Uniform4ui)"\n" ".set "GLAPI_PREFIX_STR(Uniform4ui)", "GLAPI_PREFIX_STR(Uniform4uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform4uivEXT))"\n" -"\t"STUB_ASM_CODE("890")"\n" +"\t"STUB_ASM_CODE("891")"\n" ".globl "GLAPI_PREFIX_STR(Uniform4uiv)"\n" ".set "GLAPI_PREFIX_STR(Uniform4uiv)", "GLAPI_PREFIX_STR(Uniform4uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI1iEXT))"\n" -"\t"STUB_ASM_CODE("891")"\n" +"\t"STUB_ASM_CODE("892")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI1i)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI1i)", "GLAPI_PREFIX_STR(VertexAttribI1iEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI1ivEXT))"\n" -"\t"STUB_ASM_CODE("892")"\n" +"\t"STUB_ASM_CODE("893")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI1iv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI1iv)", "GLAPI_PREFIX_STR(VertexAttribI1ivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI1uiEXT))"\n" -"\t"STUB_ASM_CODE("893")"\n" +"\t"STUB_ASM_CODE("894")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI1ui)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI1ui)", "GLAPI_PREFIX_STR(VertexAttribI1uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI1uivEXT))"\n" -"\t"STUB_ASM_CODE("894")"\n" +"\t"STUB_ASM_CODE("895")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI1uiv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI1uiv)", "GLAPI_PREFIX_STR(VertexAttribI1uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI2iEXT))"\n" -"\t"STUB_ASM_CODE("895")"\n" +"\t"STUB_ASM_CODE("896")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI2i)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI2i)", "GLAPI_PREFIX_STR(VertexAttribI2iEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI2ivEXT))"\n" -"\t"STUB_ASM_CODE("896")"\n" +"\t"STUB_ASM_CODE("897")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI2iv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI2iv)", "GLAPI_PREFIX_STR(VertexAttribI2ivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI2uiEXT))"\n" -"\t"STUB_ASM_CODE("897")"\n" +"\t"STUB_ASM_CODE("898")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI2ui)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI2ui)", "GLAPI_PREFIX_STR(VertexAttribI2uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI2uivEXT))"\n" -"\t"STUB_ASM_CODE("898")"\n" +"\t"STUB_ASM_CODE("899")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI2uiv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI2uiv)", "GLAPI_PREFIX_STR(VertexAttribI2uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI3iEXT))"\n" -"\t"STUB_ASM_CODE("899")"\n" +"\t"STUB_ASM_CODE("900")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI3i)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI3i)", "GLAPI_PREFIX_STR(VertexAttribI3iEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI3ivEXT))"\n" -"\t"STUB_ASM_CODE("900")"\n" +"\t"STUB_ASM_CODE("901")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI3iv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI3iv)", "GLAPI_PREFIX_STR(VertexAttribI3ivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI3uiEXT))"\n" -"\t"STUB_ASM_CODE("901")"\n" +"\t"STUB_ASM_CODE("902")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI3ui)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI3ui)", "GLAPI_PREFIX_STR(VertexAttribI3uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI3uivEXT))"\n" -"\t"STUB_ASM_CODE("902")"\n" +"\t"STUB_ASM_CODE("903")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI3uiv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI3uiv)", "GLAPI_PREFIX_STR(VertexAttribI3uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4bvEXT))"\n" -"\t"STUB_ASM_CODE("903")"\n" +"\t"STUB_ASM_CODE("904")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4bv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4bv)", "GLAPI_PREFIX_STR(VertexAttribI4bvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4iEXT))"\n" -"\t"STUB_ASM_CODE("904")"\n" +"\t"STUB_ASM_CODE("905")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4i)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4i)", "GLAPI_PREFIX_STR(VertexAttribI4iEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4ivEXT))"\n" -"\t"STUB_ASM_CODE("905")"\n" +"\t"STUB_ASM_CODE("906")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4iv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4iv)", "GLAPI_PREFIX_STR(VertexAttribI4ivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4svEXT))"\n" -"\t"STUB_ASM_CODE("906")"\n" +"\t"STUB_ASM_CODE("907")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4sv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4sv)", "GLAPI_PREFIX_STR(VertexAttribI4svEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4ubvEXT))"\n" -"\t"STUB_ASM_CODE("907")"\n" +"\t"STUB_ASM_CODE("908")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4ubv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4ubv)", "GLAPI_PREFIX_STR(VertexAttribI4ubvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4uiEXT))"\n" -"\t"STUB_ASM_CODE("908")"\n" +"\t"STUB_ASM_CODE("909")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4ui)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4ui)", "GLAPI_PREFIX_STR(VertexAttribI4uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4uivEXT))"\n" -"\t"STUB_ASM_CODE("909")"\n" +"\t"STUB_ASM_CODE("910")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4uiv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4uiv)", "GLAPI_PREFIX_STR(VertexAttribI4uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4usvEXT))"\n" -"\t"STUB_ASM_CODE("910")"\n" +"\t"STUB_ASM_CODE("911")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4usv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4usv)", "GLAPI_PREFIX_STR(VertexAttribI4usvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribIPointerEXT))"\n" -"\t"STUB_ASM_CODE("911")"\n" +"\t"STUB_ASM_CODE("912")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribIPointer)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribIPointer)", "GLAPI_PREFIX_STR(VertexAttribIPointerEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FramebufferTextureLayerEXT))"\n" -"\t"STUB_ASM_CODE("912")"\n" +"\t"STUB_ASM_CODE("913")"\n" ".globl "GLAPI_PREFIX_STR(FramebufferTextureLayer)"\n" ".set "GLAPI_PREFIX_STR(FramebufferTextureLayer)", "GLAPI_PREFIX_STR(FramebufferTextureLayerEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorMaskIndexedEXT))"\n" -"\t"STUB_ASM_CODE("913")"\n" +"\t"STUB_ASM_CODE("914")"\n" ".globl "GLAPI_PREFIX_STR(ColorMaski)"\n" ".set "GLAPI_PREFIX_STR(ColorMaski)", "GLAPI_PREFIX_STR(ColorMaskIndexedEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DisableIndexedEXT))"\n" -"\t"STUB_ASM_CODE("914")"\n" +"\t"STUB_ASM_CODE("915")"\n" ".globl "GLAPI_PREFIX_STR(Disablei)"\n" ".set "GLAPI_PREFIX_STR(Disablei)", "GLAPI_PREFIX_STR(DisableIndexedEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EnableIndexedEXT))"\n" -"\t"STUB_ASM_CODE("915")"\n" +"\t"STUB_ASM_CODE("916")"\n" ".globl "GLAPI_PREFIX_STR(Enablei)"\n" ".set "GLAPI_PREFIX_STR(Enablei)", "GLAPI_PREFIX_STR(EnableIndexedEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetBooleanIndexedvEXT))"\n" -"\t"STUB_ASM_CODE("916")"\n" +"\t"STUB_ASM_CODE("917")"\n" ".globl "GLAPI_PREFIX_STR(GetBooleani_v)"\n" ".set "GLAPI_PREFIX_STR(GetBooleani_v)", "GLAPI_PREFIX_STR(GetBooleanIndexedvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetIntegerIndexedvEXT))"\n" -"\t"STUB_ASM_CODE("917")"\n" +"\t"STUB_ASM_CODE("918")"\n" ".globl "GLAPI_PREFIX_STR(GetIntegeri_v)"\n" ".set "GLAPI_PREFIX_STR(GetIntegeri_v)", "GLAPI_PREFIX_STR(GetIntegerIndexedvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsEnabledIndexedEXT))"\n" -"\t"STUB_ASM_CODE("918")"\n" +"\t"STUB_ASM_CODE("919")"\n" ".globl "GLAPI_PREFIX_STR(IsEnabledi)"\n" ".set "GLAPI_PREFIX_STR(IsEnabledi)", "GLAPI_PREFIX_STR(IsEnabledIndexedEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ClearColorIiEXT))"\n" -"\t"STUB_ASM_CODE("919")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ClearColorIuiEXT))"\n" "\t"STUB_ASM_CODE("920")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTexParameterIivEXT))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ClearColorIuiEXT))"\n" "\t"STUB_ASM_CODE("921")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTexParameterIivEXT))"\n" +"\t"STUB_ASM_CODE("922")"\n" + ".globl "GLAPI_PREFIX_STR(GetTexParameterIiv)"\n" ".set "GLAPI_PREFIX_STR(GetTexParameterIiv)", "GLAPI_PREFIX_STR(GetTexParameterIivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTexParameterIuivEXT))"\n" -"\t"STUB_ASM_CODE("922")"\n" +"\t"STUB_ASM_CODE("923")"\n" ".globl "GLAPI_PREFIX_STR(GetTexParameterIuiv)"\n" ".set "GLAPI_PREFIX_STR(GetTexParameterIuiv)", "GLAPI_PREFIX_STR(GetTexParameterIuivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexParameterIivEXT))"\n" -"\t"STUB_ASM_CODE("923")"\n" +"\t"STUB_ASM_CODE("924")"\n" ".globl "GLAPI_PREFIX_STR(TexParameterIiv)"\n" ".set "GLAPI_PREFIX_STR(TexParameterIiv)", "GLAPI_PREFIX_STR(TexParameterIivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexParameterIuivEXT))"\n" -"\t"STUB_ASM_CODE("924")"\n" +"\t"STUB_ASM_CODE("925")"\n" ".globl "GLAPI_PREFIX_STR(TexParameterIuiv)"\n" ".set "GLAPI_PREFIX_STR(TexParameterIuiv)", "GLAPI_PREFIX_STR(TexParameterIuivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BeginConditionalRenderNV))"\n" -"\t"STUB_ASM_CODE("925")"\n" +"\t"STUB_ASM_CODE("926")"\n" ".globl "GLAPI_PREFIX_STR(BeginConditionalRender)"\n" ".set "GLAPI_PREFIX_STR(BeginConditionalRender)", "GLAPI_PREFIX_STR(BeginConditionalRenderNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EndConditionalRenderNV))"\n" -"\t"STUB_ASM_CODE("926")"\n" +"\t"STUB_ASM_CODE("927")"\n" ".globl "GLAPI_PREFIX_STR(EndConditionalRender)"\n" ".set "GLAPI_PREFIX_STR(EndConditionalRender)", "GLAPI_PREFIX_STR(EndConditionalRenderNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BeginTransformFeedbackEXT))"\n" -"\t"STUB_ASM_CODE("927")"\n" +"\t"STUB_ASM_CODE("928")"\n" ".globl "GLAPI_PREFIX_STR(BeginTransformFeedback)"\n" ".set "GLAPI_PREFIX_STR(BeginTransformFeedback)", "GLAPI_PREFIX_STR(BeginTransformFeedbackEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindBufferBaseEXT))"\n" -"\t"STUB_ASM_CODE("928")"\n" +"\t"STUB_ASM_CODE("929")"\n" ".globl "GLAPI_PREFIX_STR(BindBufferBase)"\n" ".set "GLAPI_PREFIX_STR(BindBufferBase)", "GLAPI_PREFIX_STR(BindBufferBaseEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindBufferOffsetEXT))"\n" -"\t"STUB_ASM_CODE("929")"\n" +"\t"STUB_ASM_CODE("930")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindBufferRangeEXT))"\n" -"\t"STUB_ASM_CODE("930")"\n" +"\t"STUB_ASM_CODE("931")"\n" ".globl "GLAPI_PREFIX_STR(BindBufferRange)"\n" ".set "GLAPI_PREFIX_STR(BindBufferRange)", "GLAPI_PREFIX_STR(BindBufferRangeEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EndTransformFeedbackEXT))"\n" -"\t"STUB_ASM_CODE("931")"\n" +"\t"STUB_ASM_CODE("932")"\n" ".globl "GLAPI_PREFIX_STR(EndTransformFeedback)"\n" ".set "GLAPI_PREFIX_STR(EndTransformFeedback)", "GLAPI_PREFIX_STR(EndTransformFeedbackEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTransformFeedbackVaryingEXT))"\n" -"\t"STUB_ASM_CODE("932")"\n" +"\t"STUB_ASM_CODE("933")"\n" ".globl "GLAPI_PREFIX_STR(GetTransformFeedbackVarying)"\n" ".set "GLAPI_PREFIX_STR(GetTransformFeedbackVarying)", "GLAPI_PREFIX_STR(GetTransformFeedbackVaryingEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TransformFeedbackVaryingsEXT))"\n" -"\t"STUB_ASM_CODE("933")"\n" +"\t"STUB_ASM_CODE("934")"\n" ".globl "GLAPI_PREFIX_STR(TransformFeedbackVaryings)"\n" ".set "GLAPI_PREFIX_STR(TransformFeedbackVaryings)", "GLAPI_PREFIX_STR(TransformFeedbackVaryingsEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProvokingVertexEXT))"\n" -"\t"STUB_ASM_CODE("934")"\n" +"\t"STUB_ASM_CODE("935")"\n" ".globl "GLAPI_PREFIX_STR(ProvokingVertex)"\n" ".set "GLAPI_PREFIX_STR(ProvokingVertex)", "GLAPI_PREFIX_STR(ProvokingVertexEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetObjectParameterivAPPLE))"\n" -"\t"STUB_ASM_CODE("937")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ObjectPurgeableAPPLE))"\n" "\t"STUB_ASM_CODE("938")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ObjectUnpurgeableAPPLE))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ObjectPurgeableAPPLE))"\n" "\t"STUB_ASM_CODE("939")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ActiveProgramEXT))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ObjectUnpurgeableAPPLE))"\n" "\t"STUB_ASM_CODE("940")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CreateShaderProgramEXT))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ActiveProgramEXT))"\n" "\t"STUB_ASM_CODE("941")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(UseShaderProgramEXT))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CreateShaderProgramEXT))"\n" "\t"STUB_ASM_CODE("942")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TextureBarrierNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(UseShaderProgramEXT))"\n" "\t"STUB_ASM_CODE("943")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TextureBarrierNV))"\n" +"\t"STUB_ASM_CODE("944")"\n" + STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EGLImageTargetRenderbufferStorageOES))"\n" -"\t"STUB_ASM_CODE("949")"\n" +"\t"STUB_ASM_CODE("950")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EGLImageTargetTexture2DOES))"\n" -"\t"STUB_ASM_CODE("950")"\n" +"\t"STUB_ASM_CODE("951")"\n" ); #undef MAPI_TMP_STUB_ASM_GCC_NO_HIDDEN diff --git a/src/mapi/glapi/glapi_sparc.S b/src/mapi/glapi/glapi_sparc.S index ca39b175d81..767189805f8 100644 --- a/src/mapi/glapi/glapi_sparc.S +++ b/src/mapi/glapi/glapi_sparc.S @@ -767,47 +767,46 @@ gl_dispatch_functions_start: GL_STUB(glGetActiveAttribARB, 569) GL_STUB(glGetAttribLocationARB, 570) GL_STUB(glDrawBuffersARB, 571) - GL_STUB(glDrawArraysInstancedARB, 572) - GL_STUB(glDrawElementsInstancedARB, 573) - GL_STUB(glRenderbufferStorageMultisample, 574) - GL_STUB(glFramebufferTextureARB, 575) - GL_STUB(glFramebufferTextureFaceARB, 576) - GL_STUB(glProgramParameteriARB, 577) - GL_STUB(glVertexAttribDivisorARB, 578) - GL_STUB(glFlushMappedBufferRange, 579) - GL_STUB(glMapBufferRange, 580) - GL_STUB(glBindVertexArray, 581) - GL_STUB(glGenVertexArrays, 582) - GL_STUB(glCopyBufferSubData, 583) - GL_STUB(glClientWaitSync, 584) - GL_STUB(glDeleteSync, 585) - GL_STUB(glFenceSync, 586) - GL_STUB(glGetInteger64v, 587) - GL_STUB(glGetSynciv, 588) - GL_STUB(glIsSync, 589) - GL_STUB(glWaitSync, 590) - GL_STUB(glDrawElementsBaseVertex, 591) - GL_STUB(glDrawRangeElementsBaseVertex, 592) - GL_STUB(glMultiDrawElementsBaseVertex, 593) - GL_STUB(glBlendEquationSeparateiARB, 594) - GL_STUB(glBlendEquationiARB, 595) - GL_STUB(glBlendFuncSeparateiARB, 596) - GL_STUB(glBlendFunciARB, 597) - GL_STUB(glBindTransformFeedback, 598) - GL_STUB(glDeleteTransformFeedbacks, 599) - GL_STUB(glDrawTransformFeedback, 600) - GL_STUB(glGenTransformFeedbacks, 601) - GL_STUB(glIsTransformFeedback, 602) - GL_STUB(glPauseTransformFeedback, 603) - GL_STUB(glResumeTransformFeedback, 604) - GL_STUB(glClearDepthf, 605) - GL_STUB(glDepthRangef, 606) - GL_STUB(glGetShaderPrecisionFormat, 607) - GL_STUB(glReleaseShaderCompiler, 608) - GL_STUB(glShaderBinary, 609) - GL_STUB(glPolygonOffsetEXT, 610) - GL_STUB(gl_dispatch_stub_611, 611) - HIDDEN(gl_dispatch_stub_611) + GL_STUB(glClampColorARB, 572) + GL_STUB(glDrawArraysInstancedARB, 573) + GL_STUB(glDrawElementsInstancedARB, 574) + GL_STUB(glRenderbufferStorageMultisample, 575) + GL_STUB(glFramebufferTextureARB, 576) + GL_STUB(glFramebufferTextureFaceARB, 577) + GL_STUB(glProgramParameteriARB, 578) + GL_STUB(glVertexAttribDivisorARB, 579) + GL_STUB(glFlushMappedBufferRange, 580) + GL_STUB(glMapBufferRange, 581) + GL_STUB(glBindVertexArray, 582) + GL_STUB(glGenVertexArrays, 583) + GL_STUB(glCopyBufferSubData, 584) + GL_STUB(glClientWaitSync, 585) + GL_STUB(glDeleteSync, 586) + GL_STUB(glFenceSync, 587) + GL_STUB(glGetInteger64v, 588) + GL_STUB(glGetSynciv, 589) + GL_STUB(glIsSync, 590) + GL_STUB(glWaitSync, 591) + GL_STUB(glDrawElementsBaseVertex, 592) + GL_STUB(glDrawRangeElementsBaseVertex, 593) + GL_STUB(glMultiDrawElementsBaseVertex, 594) + GL_STUB(glBlendEquationSeparateiARB, 595) + GL_STUB(glBlendEquationiARB, 596) + GL_STUB(glBlendFuncSeparateiARB, 597) + GL_STUB(glBlendFunciARB, 598) + GL_STUB(glBindTransformFeedback, 599) + GL_STUB(glDeleteTransformFeedbacks, 600) + GL_STUB(glDrawTransformFeedback, 601) + GL_STUB(glGenTransformFeedbacks, 602) + GL_STUB(glIsTransformFeedback, 603) + GL_STUB(glPauseTransformFeedback, 604) + GL_STUB(glResumeTransformFeedback, 605) + GL_STUB(glClearDepthf, 606) + GL_STUB(glDepthRangef, 607) + GL_STUB(glGetShaderPrecisionFormat, 608) + GL_STUB(glReleaseShaderCompiler, 609) + GL_STUB(glShaderBinary, 610) + GL_STUB(glPolygonOffsetEXT, 611) GL_STUB(gl_dispatch_stub_612, 612) HIDDEN(gl_dispatch_stub_612) GL_STUB(gl_dispatch_stub_613, 613) @@ -822,85 +821,85 @@ gl_dispatch_functions_start: HIDDEN(gl_dispatch_stub_617) GL_STUB(gl_dispatch_stub_618, 618) HIDDEN(gl_dispatch_stub_618) - GL_STUB(glColorPointerEXT, 619) - GL_STUB(glEdgeFlagPointerEXT, 620) - GL_STUB(glIndexPointerEXT, 621) - GL_STUB(glNormalPointerEXT, 622) - GL_STUB(glTexCoordPointerEXT, 623) - GL_STUB(glVertexPointerEXT, 624) - GL_STUB(glPointParameterfEXT, 625) - GL_STUB(glPointParameterfvEXT, 626) - GL_STUB(glLockArraysEXT, 627) - GL_STUB(glUnlockArraysEXT, 628) - GL_STUB(glSecondaryColor3bEXT, 629) - GL_STUB(glSecondaryColor3bvEXT, 630) - GL_STUB(glSecondaryColor3dEXT, 631) - GL_STUB(glSecondaryColor3dvEXT, 632) - GL_STUB(glSecondaryColor3fEXT, 633) - GL_STUB(glSecondaryColor3fvEXT, 634) - GL_STUB(glSecondaryColor3iEXT, 635) - GL_STUB(glSecondaryColor3ivEXT, 636) - GL_STUB(glSecondaryColor3sEXT, 637) - GL_STUB(glSecondaryColor3svEXT, 638) - GL_STUB(glSecondaryColor3ubEXT, 639) - GL_STUB(glSecondaryColor3ubvEXT, 640) - GL_STUB(glSecondaryColor3uiEXT, 641) - GL_STUB(glSecondaryColor3uivEXT, 642) - GL_STUB(glSecondaryColor3usEXT, 643) - GL_STUB(glSecondaryColor3usvEXT, 644) - GL_STUB(glSecondaryColorPointerEXT, 645) - GL_STUB(glMultiDrawArraysEXT, 646) - GL_STUB(glMultiDrawElementsEXT, 647) - GL_STUB(glFogCoordPointerEXT, 648) - GL_STUB(glFogCoorddEXT, 649) - GL_STUB(glFogCoorddvEXT, 650) - GL_STUB(glFogCoordfEXT, 651) - GL_STUB(glFogCoordfvEXT, 652) - GL_STUB(gl_dispatch_stub_653, 653) - HIDDEN(gl_dispatch_stub_653) - GL_STUB(glBlendFuncSeparateEXT, 654) - GL_STUB(glFlushVertexArrayRangeNV, 655) - GL_STUB(glVertexArrayRangeNV, 656) - GL_STUB(glCombinerInputNV, 657) - GL_STUB(glCombinerOutputNV, 658) - GL_STUB(glCombinerParameterfNV, 659) - GL_STUB(glCombinerParameterfvNV, 660) - GL_STUB(glCombinerParameteriNV, 661) - GL_STUB(glCombinerParameterivNV, 662) - GL_STUB(glFinalCombinerInputNV, 663) - GL_STUB(glGetCombinerInputParameterfvNV, 664) - GL_STUB(glGetCombinerInputParameterivNV, 665) - GL_STUB(glGetCombinerOutputParameterfvNV, 666) - GL_STUB(glGetCombinerOutputParameterivNV, 667) - GL_STUB(glGetFinalCombinerInputParameterfvNV, 668) - GL_STUB(glGetFinalCombinerInputParameterivNV, 669) - GL_STUB(glResizeBuffersMESA, 670) - GL_STUB(glWindowPos2dMESA, 671) - GL_STUB(glWindowPos2dvMESA, 672) - GL_STUB(glWindowPos2fMESA, 673) - GL_STUB(glWindowPos2fvMESA, 674) - GL_STUB(glWindowPos2iMESA, 675) - GL_STUB(glWindowPos2ivMESA, 676) - GL_STUB(glWindowPos2sMESA, 677) - GL_STUB(glWindowPos2svMESA, 678) - GL_STUB(glWindowPos3dMESA, 679) - GL_STUB(glWindowPos3dvMESA, 680) - GL_STUB(glWindowPos3fMESA, 681) - GL_STUB(glWindowPos3fvMESA, 682) - GL_STUB(glWindowPos3iMESA, 683) - GL_STUB(glWindowPos3ivMESA, 684) - GL_STUB(glWindowPos3sMESA, 685) - GL_STUB(glWindowPos3svMESA, 686) - GL_STUB(glWindowPos4dMESA, 687) - GL_STUB(glWindowPos4dvMESA, 688) - GL_STUB(glWindowPos4fMESA, 689) - GL_STUB(glWindowPos4fvMESA, 690) - GL_STUB(glWindowPos4iMESA, 691) - GL_STUB(glWindowPos4ivMESA, 692) - GL_STUB(glWindowPos4sMESA, 693) - GL_STUB(glWindowPos4svMESA, 694) - GL_STUB(gl_dispatch_stub_695, 695) - HIDDEN(gl_dispatch_stub_695) + GL_STUB(gl_dispatch_stub_619, 619) + HIDDEN(gl_dispatch_stub_619) + GL_STUB(glColorPointerEXT, 620) + GL_STUB(glEdgeFlagPointerEXT, 621) + GL_STUB(glIndexPointerEXT, 622) + GL_STUB(glNormalPointerEXT, 623) + GL_STUB(glTexCoordPointerEXT, 624) + GL_STUB(glVertexPointerEXT, 625) + GL_STUB(glPointParameterfEXT, 626) + GL_STUB(glPointParameterfvEXT, 627) + GL_STUB(glLockArraysEXT, 628) + GL_STUB(glUnlockArraysEXT, 629) + GL_STUB(glSecondaryColor3bEXT, 630) + GL_STUB(glSecondaryColor3bvEXT, 631) + GL_STUB(glSecondaryColor3dEXT, 632) + GL_STUB(glSecondaryColor3dvEXT, 633) + GL_STUB(glSecondaryColor3fEXT, 634) + GL_STUB(glSecondaryColor3fvEXT, 635) + GL_STUB(glSecondaryColor3iEXT, 636) + GL_STUB(glSecondaryColor3ivEXT, 637) + GL_STUB(glSecondaryColor3sEXT, 638) + GL_STUB(glSecondaryColor3svEXT, 639) + GL_STUB(glSecondaryColor3ubEXT, 640) + GL_STUB(glSecondaryColor3ubvEXT, 641) + GL_STUB(glSecondaryColor3uiEXT, 642) + GL_STUB(glSecondaryColor3uivEXT, 643) + GL_STUB(glSecondaryColor3usEXT, 644) + GL_STUB(glSecondaryColor3usvEXT, 645) + GL_STUB(glSecondaryColorPointerEXT, 646) + GL_STUB(glMultiDrawArraysEXT, 647) + GL_STUB(glMultiDrawElementsEXT, 648) + GL_STUB(glFogCoordPointerEXT, 649) + GL_STUB(glFogCoorddEXT, 650) + GL_STUB(glFogCoorddvEXT, 651) + GL_STUB(glFogCoordfEXT, 652) + GL_STUB(glFogCoordfvEXT, 653) + GL_STUB(gl_dispatch_stub_654, 654) + HIDDEN(gl_dispatch_stub_654) + GL_STUB(glBlendFuncSeparateEXT, 655) + GL_STUB(glFlushVertexArrayRangeNV, 656) + GL_STUB(glVertexArrayRangeNV, 657) + GL_STUB(glCombinerInputNV, 658) + GL_STUB(glCombinerOutputNV, 659) + GL_STUB(glCombinerParameterfNV, 660) + GL_STUB(glCombinerParameterfvNV, 661) + GL_STUB(glCombinerParameteriNV, 662) + GL_STUB(glCombinerParameterivNV, 663) + GL_STUB(glFinalCombinerInputNV, 664) + GL_STUB(glGetCombinerInputParameterfvNV, 665) + GL_STUB(glGetCombinerInputParameterivNV, 666) + GL_STUB(glGetCombinerOutputParameterfvNV, 667) + GL_STUB(glGetCombinerOutputParameterivNV, 668) + GL_STUB(glGetFinalCombinerInputParameterfvNV, 669) + GL_STUB(glGetFinalCombinerInputParameterivNV, 670) + GL_STUB(glResizeBuffersMESA, 671) + GL_STUB(glWindowPos2dMESA, 672) + GL_STUB(glWindowPos2dvMESA, 673) + GL_STUB(glWindowPos2fMESA, 674) + GL_STUB(glWindowPos2fvMESA, 675) + GL_STUB(glWindowPos2iMESA, 676) + GL_STUB(glWindowPos2ivMESA, 677) + GL_STUB(glWindowPos2sMESA, 678) + GL_STUB(glWindowPos2svMESA, 679) + GL_STUB(glWindowPos3dMESA, 680) + GL_STUB(glWindowPos3dvMESA, 681) + GL_STUB(glWindowPos3fMESA, 682) + GL_STUB(glWindowPos3fvMESA, 683) + GL_STUB(glWindowPos3iMESA, 684) + GL_STUB(glWindowPos3ivMESA, 685) + GL_STUB(glWindowPos3sMESA, 686) + GL_STUB(glWindowPos3svMESA, 687) + GL_STUB(glWindowPos4dMESA, 688) + GL_STUB(glWindowPos4dvMESA, 689) + GL_STUB(glWindowPos4fMESA, 690) + GL_STUB(glWindowPos4fvMESA, 691) + GL_STUB(glWindowPos4iMESA, 692) + GL_STUB(glWindowPos4ivMESA, 693) + GL_STUB(glWindowPos4sMESA, 694) + GL_STUB(glWindowPos4svMESA, 695) GL_STUB(gl_dispatch_stub_696, 696) HIDDEN(gl_dispatch_stub_696) GL_STUB(gl_dispatch_stub_697, 697) @@ -917,88 +916,88 @@ gl_dispatch_functions_start: HIDDEN(gl_dispatch_stub_702) GL_STUB(gl_dispatch_stub_703, 703) HIDDEN(gl_dispatch_stub_703) - GL_STUB(glAreProgramsResidentNV, 704) - GL_STUB(glBindProgramNV, 705) - GL_STUB(glDeleteProgramsNV, 706) - GL_STUB(glExecuteProgramNV, 707) - GL_STUB(glGenProgramsNV, 708) - GL_STUB(glGetProgramParameterdvNV, 709) - GL_STUB(glGetProgramParameterfvNV, 710) - GL_STUB(glGetProgramStringNV, 711) - GL_STUB(glGetProgramivNV, 712) - GL_STUB(glGetTrackMatrixivNV, 713) - GL_STUB(glGetVertexAttribPointervNV, 714) - GL_STUB(glGetVertexAttribdvNV, 715) - GL_STUB(glGetVertexAttribfvNV, 716) - GL_STUB(glGetVertexAttribivNV, 717) - GL_STUB(glIsProgramNV, 718) - GL_STUB(glLoadProgramNV, 719) - GL_STUB(glProgramParameters4dvNV, 720) - GL_STUB(glProgramParameters4fvNV, 721) - GL_STUB(glRequestResidentProgramsNV, 722) - GL_STUB(glTrackMatrixNV, 723) - GL_STUB(glVertexAttrib1dNV, 724) - GL_STUB(glVertexAttrib1dvNV, 725) - GL_STUB(glVertexAttrib1fNV, 726) - GL_STUB(glVertexAttrib1fvNV, 727) - GL_STUB(glVertexAttrib1sNV, 728) - GL_STUB(glVertexAttrib1svNV, 729) - GL_STUB(glVertexAttrib2dNV, 730) - GL_STUB(glVertexAttrib2dvNV, 731) - GL_STUB(glVertexAttrib2fNV, 732) - GL_STUB(glVertexAttrib2fvNV, 733) - GL_STUB(glVertexAttrib2sNV, 734) - GL_STUB(glVertexAttrib2svNV, 735) - GL_STUB(glVertexAttrib3dNV, 736) - GL_STUB(glVertexAttrib3dvNV, 737) - GL_STUB(glVertexAttrib3fNV, 738) - GL_STUB(glVertexAttrib3fvNV, 739) - GL_STUB(glVertexAttrib3sNV, 740) - GL_STUB(glVertexAttrib3svNV, 741) - GL_STUB(glVertexAttrib4dNV, 742) - GL_STUB(glVertexAttrib4dvNV, 743) - GL_STUB(glVertexAttrib4fNV, 744) - GL_STUB(glVertexAttrib4fvNV, 745) - GL_STUB(glVertexAttrib4sNV, 746) - GL_STUB(glVertexAttrib4svNV, 747) - GL_STUB(glVertexAttrib4ubNV, 748) - GL_STUB(glVertexAttrib4ubvNV, 749) - GL_STUB(glVertexAttribPointerNV, 750) - GL_STUB(glVertexAttribs1dvNV, 751) - GL_STUB(glVertexAttribs1fvNV, 752) - GL_STUB(glVertexAttribs1svNV, 753) - GL_STUB(glVertexAttribs2dvNV, 754) - GL_STUB(glVertexAttribs2fvNV, 755) - GL_STUB(glVertexAttribs2svNV, 756) - GL_STUB(glVertexAttribs3dvNV, 757) - GL_STUB(glVertexAttribs3fvNV, 758) - GL_STUB(glVertexAttribs3svNV, 759) - GL_STUB(glVertexAttribs4dvNV, 760) - GL_STUB(glVertexAttribs4fvNV, 761) - GL_STUB(glVertexAttribs4svNV, 762) - GL_STUB(glVertexAttribs4ubvNV, 763) - GL_STUB(glGetTexBumpParameterfvATI, 764) - GL_STUB(glGetTexBumpParameterivATI, 765) - GL_STUB(glTexBumpParameterfvATI, 766) - GL_STUB(glTexBumpParameterivATI, 767) - GL_STUB(glAlphaFragmentOp1ATI, 768) - GL_STUB(glAlphaFragmentOp2ATI, 769) - GL_STUB(glAlphaFragmentOp3ATI, 770) - GL_STUB(glBeginFragmentShaderATI, 771) - GL_STUB(glBindFragmentShaderATI, 772) - GL_STUB(glColorFragmentOp1ATI, 773) - GL_STUB(glColorFragmentOp2ATI, 774) - GL_STUB(glColorFragmentOp3ATI, 775) - GL_STUB(glDeleteFragmentShaderATI, 776) - GL_STUB(glEndFragmentShaderATI, 777) - GL_STUB(glGenFragmentShadersATI, 778) - GL_STUB(glPassTexCoordATI, 779) - GL_STUB(glSampleMapATI, 780) - GL_STUB(glSetFragmentShaderConstantATI, 781) - GL_STUB(glPointParameteriNV, 782) - GL_STUB(glPointParameterivNV, 783) - GL_STUB(gl_dispatch_stub_784, 784) - HIDDEN(gl_dispatch_stub_784) + GL_STUB(gl_dispatch_stub_704, 704) + HIDDEN(gl_dispatch_stub_704) + GL_STUB(glAreProgramsResidentNV, 705) + GL_STUB(glBindProgramNV, 706) + GL_STUB(glDeleteProgramsNV, 707) + GL_STUB(glExecuteProgramNV, 708) + GL_STUB(glGenProgramsNV, 709) + GL_STUB(glGetProgramParameterdvNV, 710) + GL_STUB(glGetProgramParameterfvNV, 711) + GL_STUB(glGetProgramStringNV, 712) + GL_STUB(glGetProgramivNV, 713) + GL_STUB(glGetTrackMatrixivNV, 714) + GL_STUB(glGetVertexAttribPointervNV, 715) + GL_STUB(glGetVertexAttribdvNV, 716) + GL_STUB(glGetVertexAttribfvNV, 717) + GL_STUB(glGetVertexAttribivNV, 718) + GL_STUB(glIsProgramNV, 719) + GL_STUB(glLoadProgramNV, 720) + GL_STUB(glProgramParameters4dvNV, 721) + GL_STUB(glProgramParameters4fvNV, 722) + GL_STUB(glRequestResidentProgramsNV, 723) + GL_STUB(glTrackMatrixNV, 724) + GL_STUB(glVertexAttrib1dNV, 725) + GL_STUB(glVertexAttrib1dvNV, 726) + GL_STUB(glVertexAttrib1fNV, 727) + GL_STUB(glVertexAttrib1fvNV, 728) + GL_STUB(glVertexAttrib1sNV, 729) + GL_STUB(glVertexAttrib1svNV, 730) + GL_STUB(glVertexAttrib2dNV, 731) + GL_STUB(glVertexAttrib2dvNV, 732) + GL_STUB(glVertexAttrib2fNV, 733) + GL_STUB(glVertexAttrib2fvNV, 734) + GL_STUB(glVertexAttrib2sNV, 735) + GL_STUB(glVertexAttrib2svNV, 736) + GL_STUB(glVertexAttrib3dNV, 737) + GL_STUB(glVertexAttrib3dvNV, 738) + GL_STUB(glVertexAttrib3fNV, 739) + GL_STUB(glVertexAttrib3fvNV, 740) + GL_STUB(glVertexAttrib3sNV, 741) + GL_STUB(glVertexAttrib3svNV, 742) + GL_STUB(glVertexAttrib4dNV, 743) + GL_STUB(glVertexAttrib4dvNV, 744) + GL_STUB(glVertexAttrib4fNV, 745) + GL_STUB(glVertexAttrib4fvNV, 746) + GL_STUB(glVertexAttrib4sNV, 747) + GL_STUB(glVertexAttrib4svNV, 748) + GL_STUB(glVertexAttrib4ubNV, 749) + GL_STUB(glVertexAttrib4ubvNV, 750) + GL_STUB(glVertexAttribPointerNV, 751) + GL_STUB(glVertexAttribs1dvNV, 752) + GL_STUB(glVertexAttribs1fvNV, 753) + GL_STUB(glVertexAttribs1svNV, 754) + GL_STUB(glVertexAttribs2dvNV, 755) + GL_STUB(glVertexAttribs2fvNV, 756) + GL_STUB(glVertexAttribs2svNV, 757) + GL_STUB(glVertexAttribs3dvNV, 758) + GL_STUB(glVertexAttribs3fvNV, 759) + GL_STUB(glVertexAttribs3svNV, 760) + GL_STUB(glVertexAttribs4dvNV, 761) + GL_STUB(glVertexAttribs4fvNV, 762) + GL_STUB(glVertexAttribs4svNV, 763) + GL_STUB(glVertexAttribs4ubvNV, 764) + GL_STUB(glGetTexBumpParameterfvATI, 765) + GL_STUB(glGetTexBumpParameterivATI, 766) + GL_STUB(glTexBumpParameterfvATI, 767) + GL_STUB(glTexBumpParameterivATI, 768) + GL_STUB(glAlphaFragmentOp1ATI, 769) + GL_STUB(glAlphaFragmentOp2ATI, 770) + GL_STUB(glAlphaFragmentOp3ATI, 771) + GL_STUB(glBeginFragmentShaderATI, 772) + GL_STUB(glBindFragmentShaderATI, 773) + GL_STUB(glColorFragmentOp1ATI, 774) + GL_STUB(glColorFragmentOp2ATI, 775) + GL_STUB(glColorFragmentOp3ATI, 776) + GL_STUB(glDeleteFragmentShaderATI, 777) + GL_STUB(glEndFragmentShaderATI, 778) + GL_STUB(glGenFragmentShadersATI, 779) + GL_STUB(glPassTexCoordATI, 780) + GL_STUB(glSampleMapATI, 781) + GL_STUB(glSetFragmentShaderConstantATI, 782) + GL_STUB(glPointParameteriNV, 783) + GL_STUB(glPointParameterivNV, 784) GL_STUB(gl_dispatch_stub_785, 785) HIDDEN(gl_dispatch_stub_785) GL_STUB(gl_dispatch_stub_786, 786) @@ -1007,111 +1006,111 @@ gl_dispatch_functions_start: HIDDEN(gl_dispatch_stub_787) GL_STUB(gl_dispatch_stub_788, 788) HIDDEN(gl_dispatch_stub_788) - GL_STUB(glGetProgramNamedParameterdvNV, 789) - GL_STUB(glGetProgramNamedParameterfvNV, 790) - GL_STUB(glProgramNamedParameter4dNV, 791) - GL_STUB(glProgramNamedParameter4dvNV, 792) - GL_STUB(glProgramNamedParameter4fNV, 793) - GL_STUB(glProgramNamedParameter4fvNV, 794) - GL_STUB(glPrimitiveRestartIndexNV, 795) - GL_STUB(glPrimitiveRestartNV, 796) - GL_STUB(gl_dispatch_stub_797, 797) - HIDDEN(gl_dispatch_stub_797) + GL_STUB(gl_dispatch_stub_789, 789) + HIDDEN(gl_dispatch_stub_789) + GL_STUB(glGetProgramNamedParameterdvNV, 790) + GL_STUB(glGetProgramNamedParameterfvNV, 791) + GL_STUB(glProgramNamedParameter4dNV, 792) + GL_STUB(glProgramNamedParameter4dvNV, 793) + GL_STUB(glProgramNamedParameter4fNV, 794) + GL_STUB(glProgramNamedParameter4fvNV, 795) + GL_STUB(glPrimitiveRestartIndexNV, 796) + GL_STUB(glPrimitiveRestartNV, 797) GL_STUB(gl_dispatch_stub_798, 798) HIDDEN(gl_dispatch_stub_798) - GL_STUB(glBindFramebufferEXT, 799) - GL_STUB(glBindRenderbufferEXT, 800) - GL_STUB(glCheckFramebufferStatusEXT, 801) - GL_STUB(glDeleteFramebuffersEXT, 802) - GL_STUB(glDeleteRenderbuffersEXT, 803) - GL_STUB(glFramebufferRenderbufferEXT, 804) - GL_STUB(glFramebufferTexture1DEXT, 805) - GL_STUB(glFramebufferTexture2DEXT, 806) - GL_STUB(glFramebufferTexture3DEXT, 807) - GL_STUB(glGenFramebuffersEXT, 808) - GL_STUB(glGenRenderbuffersEXT, 809) - GL_STUB(glGenerateMipmapEXT, 810) - GL_STUB(glGetFramebufferAttachmentParameterivEXT, 811) - GL_STUB(glGetRenderbufferParameterivEXT, 812) - GL_STUB(glIsFramebufferEXT, 813) - GL_STUB(glIsRenderbufferEXT, 814) - GL_STUB(glRenderbufferStorageEXT, 815) - GL_STUB(gl_dispatch_stub_816, 816) - HIDDEN(gl_dispatch_stub_816) + GL_STUB(gl_dispatch_stub_799, 799) + HIDDEN(gl_dispatch_stub_799) + GL_STUB(glBindFramebufferEXT, 800) + GL_STUB(glBindRenderbufferEXT, 801) + GL_STUB(glCheckFramebufferStatusEXT, 802) + GL_STUB(glDeleteFramebuffersEXT, 803) + GL_STUB(glDeleteRenderbuffersEXT, 804) + GL_STUB(glFramebufferRenderbufferEXT, 805) + GL_STUB(glFramebufferTexture1DEXT, 806) + GL_STUB(glFramebufferTexture2DEXT, 807) + GL_STUB(glFramebufferTexture3DEXT, 808) + GL_STUB(glGenFramebuffersEXT, 809) + GL_STUB(glGenRenderbuffersEXT, 810) + GL_STUB(glGenerateMipmapEXT, 811) + GL_STUB(glGetFramebufferAttachmentParameterivEXT, 812) + GL_STUB(glGetRenderbufferParameterivEXT, 813) + GL_STUB(glIsFramebufferEXT, 814) + GL_STUB(glIsRenderbufferEXT, 815) + GL_STUB(glRenderbufferStorageEXT, 816) GL_STUB(gl_dispatch_stub_817, 817) HIDDEN(gl_dispatch_stub_817) GL_STUB(gl_dispatch_stub_818, 818) HIDDEN(gl_dispatch_stub_818) - GL_STUB(glBindFragDataLocationEXT, 819) - GL_STUB(glGetFragDataLocationEXT, 820) - GL_STUB(glGetUniformuivEXT, 821) - GL_STUB(glGetVertexAttribIivEXT, 822) - GL_STUB(glGetVertexAttribIuivEXT, 823) - GL_STUB(glUniform1uiEXT, 824) - GL_STUB(glUniform1uivEXT, 825) - GL_STUB(glUniform2uiEXT, 826) - GL_STUB(glUniform2uivEXT, 827) - GL_STUB(glUniform3uiEXT, 828) - GL_STUB(glUniform3uivEXT, 829) - GL_STUB(glUniform4uiEXT, 830) - GL_STUB(glUniform4uivEXT, 831) - GL_STUB(glVertexAttribI1iEXT, 832) - GL_STUB(glVertexAttribI1ivEXT, 833) - GL_STUB(glVertexAttribI1uiEXT, 834) - GL_STUB(glVertexAttribI1uivEXT, 835) - GL_STUB(glVertexAttribI2iEXT, 836) - GL_STUB(glVertexAttribI2ivEXT, 837) - GL_STUB(glVertexAttribI2uiEXT, 838) - GL_STUB(glVertexAttribI2uivEXT, 839) - GL_STUB(glVertexAttribI3iEXT, 840) - GL_STUB(glVertexAttribI3ivEXT, 841) - GL_STUB(glVertexAttribI3uiEXT, 842) - GL_STUB(glVertexAttribI3uivEXT, 843) - GL_STUB(glVertexAttribI4bvEXT, 844) - GL_STUB(glVertexAttribI4iEXT, 845) - GL_STUB(glVertexAttribI4ivEXT, 846) - GL_STUB(glVertexAttribI4svEXT, 847) - GL_STUB(glVertexAttribI4ubvEXT, 848) - GL_STUB(glVertexAttribI4uiEXT, 849) - GL_STUB(glVertexAttribI4uivEXT, 850) - GL_STUB(glVertexAttribI4usvEXT, 851) - GL_STUB(glVertexAttribIPointerEXT, 852) - GL_STUB(glFramebufferTextureLayerEXT, 853) - GL_STUB(glColorMaskIndexedEXT, 854) - GL_STUB(glDisableIndexedEXT, 855) - GL_STUB(glEnableIndexedEXT, 856) - GL_STUB(glGetBooleanIndexedvEXT, 857) - GL_STUB(glGetIntegerIndexedvEXT, 858) - GL_STUB(glIsEnabledIndexedEXT, 859) - GL_STUB(glClearColorIiEXT, 860) - GL_STUB(glClearColorIuiEXT, 861) - GL_STUB(glGetTexParameterIivEXT, 862) - GL_STUB(glGetTexParameterIuivEXT, 863) - GL_STUB(glTexParameterIivEXT, 864) - GL_STUB(glTexParameterIuivEXT, 865) - GL_STUB(glBeginConditionalRenderNV, 866) - GL_STUB(glEndConditionalRenderNV, 867) - GL_STUB(glBeginTransformFeedbackEXT, 868) - GL_STUB(glBindBufferBaseEXT, 869) - GL_STUB(glBindBufferOffsetEXT, 870) - GL_STUB(glBindBufferRangeEXT, 871) - GL_STUB(glEndTransformFeedbackEXT, 872) - GL_STUB(glGetTransformFeedbackVaryingEXT, 873) - GL_STUB(glTransformFeedbackVaryingsEXT, 874) - GL_STUB(glProvokingVertexEXT, 875) - GL_STUB(gl_dispatch_stub_876, 876) - HIDDEN(gl_dispatch_stub_876) + GL_STUB(gl_dispatch_stub_819, 819) + HIDDEN(gl_dispatch_stub_819) + GL_STUB(glBindFragDataLocationEXT, 820) + GL_STUB(glGetFragDataLocationEXT, 821) + GL_STUB(glGetUniformuivEXT, 822) + GL_STUB(glGetVertexAttribIivEXT, 823) + GL_STUB(glGetVertexAttribIuivEXT, 824) + GL_STUB(glUniform1uiEXT, 825) + GL_STUB(glUniform1uivEXT, 826) + GL_STUB(glUniform2uiEXT, 827) + GL_STUB(glUniform2uivEXT, 828) + GL_STUB(glUniform3uiEXT, 829) + GL_STUB(glUniform3uivEXT, 830) + GL_STUB(glUniform4uiEXT, 831) + GL_STUB(glUniform4uivEXT, 832) + GL_STUB(glVertexAttribI1iEXT, 833) + GL_STUB(glVertexAttribI1ivEXT, 834) + GL_STUB(glVertexAttribI1uiEXT, 835) + GL_STUB(glVertexAttribI1uivEXT, 836) + GL_STUB(glVertexAttribI2iEXT, 837) + GL_STUB(glVertexAttribI2ivEXT, 838) + GL_STUB(glVertexAttribI2uiEXT, 839) + GL_STUB(glVertexAttribI2uivEXT, 840) + GL_STUB(glVertexAttribI3iEXT, 841) + GL_STUB(glVertexAttribI3ivEXT, 842) + GL_STUB(glVertexAttribI3uiEXT, 843) + GL_STUB(glVertexAttribI3uivEXT, 844) + GL_STUB(glVertexAttribI4bvEXT, 845) + GL_STUB(glVertexAttribI4iEXT, 846) + GL_STUB(glVertexAttribI4ivEXT, 847) + GL_STUB(glVertexAttribI4svEXT, 848) + GL_STUB(glVertexAttribI4ubvEXT, 849) + GL_STUB(glVertexAttribI4uiEXT, 850) + GL_STUB(glVertexAttribI4uivEXT, 851) + GL_STUB(glVertexAttribI4usvEXT, 852) + GL_STUB(glVertexAttribIPointerEXT, 853) + GL_STUB(glFramebufferTextureLayerEXT, 854) + GL_STUB(glColorMaskIndexedEXT, 855) + GL_STUB(glDisableIndexedEXT, 856) + GL_STUB(glEnableIndexedEXT, 857) + GL_STUB(glGetBooleanIndexedvEXT, 858) + GL_STUB(glGetIntegerIndexedvEXT, 859) + GL_STUB(glIsEnabledIndexedEXT, 860) + GL_STUB(glClearColorIiEXT, 861) + GL_STUB(glClearColorIuiEXT, 862) + GL_STUB(glGetTexParameterIivEXT, 863) + GL_STUB(glGetTexParameterIuivEXT, 864) + GL_STUB(glTexParameterIivEXT, 865) + GL_STUB(glTexParameterIuivEXT, 866) + GL_STUB(glBeginConditionalRenderNV, 867) + GL_STUB(glEndConditionalRenderNV, 868) + GL_STUB(glBeginTransformFeedbackEXT, 869) + GL_STUB(glBindBufferBaseEXT, 870) + GL_STUB(glBindBufferOffsetEXT, 871) + GL_STUB(glBindBufferRangeEXT, 872) + GL_STUB(glEndTransformFeedbackEXT, 873) + GL_STUB(glGetTransformFeedbackVaryingEXT, 874) + GL_STUB(glTransformFeedbackVaryingsEXT, 875) + GL_STUB(glProvokingVertexEXT, 876) GL_STUB(gl_dispatch_stub_877, 877) HIDDEN(gl_dispatch_stub_877) - GL_STUB(glGetObjectParameterivAPPLE, 878) - GL_STUB(glObjectPurgeableAPPLE, 879) - GL_STUB(glObjectUnpurgeableAPPLE, 880) - GL_STUB(glActiveProgramEXT, 881) - GL_STUB(glCreateShaderProgramEXT, 882) - GL_STUB(glUseShaderProgramEXT, 883) - GL_STUB(glTextureBarrierNV, 884) - GL_STUB(gl_dispatch_stub_885, 885) - HIDDEN(gl_dispatch_stub_885) + GL_STUB(gl_dispatch_stub_878, 878) + HIDDEN(gl_dispatch_stub_878) + GL_STUB(glGetObjectParameterivAPPLE, 879) + GL_STUB(glObjectPurgeableAPPLE, 880) + GL_STUB(glObjectUnpurgeableAPPLE, 881) + GL_STUB(glActiveProgramEXT, 882) + GL_STUB(glCreateShaderProgramEXT, 883) + GL_STUB(glUseShaderProgramEXT, 884) + GL_STUB(glTextureBarrierNV, 885) GL_STUB(gl_dispatch_stub_886, 886) HIDDEN(gl_dispatch_stub_886) GL_STUB(gl_dispatch_stub_887, 887) @@ -1120,8 +1119,10 @@ gl_dispatch_functions_start: HIDDEN(gl_dispatch_stub_888) GL_STUB(gl_dispatch_stub_889, 889) HIDDEN(gl_dispatch_stub_889) - GL_STUB(glEGLImageTargetRenderbufferStorageOES, 890) - GL_STUB(glEGLImageTargetTexture2DOES, 891) + GL_STUB(gl_dispatch_stub_890, 890) + HIDDEN(gl_dispatch_stub_890) + GL_STUB(glEGLImageTargetRenderbufferStorageOES, 891) + GL_STUB(glEGLImageTargetTexture2DOES, 892) GL_STUB_ALIAS(glArrayElementEXT, glArrayElement) GL_STUB_ALIAS(glBindTextureEXT, glBindTexture) GL_STUB_ALIAS(glDrawArraysEXT, glDrawArrays) diff --git a/src/mapi/glapi/glapi_x86-64.S b/src/mapi/glapi/glapi_x86-64.S index 2dec611c5df..d82eb1558bb 100644 --- a/src/mapi/glapi/glapi_x86-64.S +++ b/src/mapi/glapi/glapi_x86-64.S @@ -21536,9 +21536,9 @@ GL_PREFIX(DrawBuffersARB): .size GL_PREFIX(DrawBuffersARB), .-GL_PREFIX(DrawBuffersARB) .p2align 4,,15 - .globl GL_PREFIX(DrawArraysInstancedARB) - .type GL_PREFIX(DrawArraysInstancedARB), @function -GL_PREFIX(DrawArraysInstancedARB): + .globl GL_PREFIX(ClampColorARB) + .type GL_PREFIX(ClampColorARB), @function +GL_PREFIX(ClampColorARB): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 4576(%rax), %r11 @@ -21546,13 +21546,9 @@ GL_PREFIX(DrawArraysInstancedARB): #elif defined(PTHREADS) pushq %rdi pushq %rsi - pushq %rdx - pushq %rcx pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - popq %rcx - popq %rdx popq %rsi popq %rdi movq 4576(%rax), %r11 @@ -21563,6 +21559,47 @@ GL_PREFIX(DrawArraysInstancedARB): je 1f movq 4576(%rax), %r11 jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %rsi + popq %rdi + movq 4576(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(ClampColorARB), .-GL_PREFIX(ClampColorARB) + + .p2align 4,,15 + .globl GL_PREFIX(DrawArraysInstancedARB) + .type GL_PREFIX(DrawArraysInstancedARB), @function +GL_PREFIX(DrawArraysInstancedARB): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 4584(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rcx + popq %rdx + popq %rsi + popq %rdi + movq 4584(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 4584(%rax), %r11 + jmp *%r11 1: pushq %rdi pushq %rsi @@ -21575,7 +21612,7 @@ GL_PREFIX(DrawArraysInstancedARB): popq %rdx popq %rsi popq %rdi - movq 4576(%rax), %r11 + movq 4584(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DrawArraysInstancedARB), .-GL_PREFIX(DrawArraysInstancedARB) @@ -21586,7 +21623,7 @@ GL_PREFIX(DrawArraysInstancedARB): GL_PREFIX(DrawElementsInstancedARB): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4584(%rax), %r11 + movq 4592(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -21600,13 +21637,13 @@ GL_PREFIX(DrawElementsInstancedARB): popq %rdx popq %rsi popq %rdi - movq 4584(%rax), %r11 + movq 4592(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4584(%rax), %r11 + movq 4592(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -21620,7 +21657,7 @@ GL_PREFIX(DrawElementsInstancedARB): popq %rdx popq %rsi popq %rdi - movq 4584(%rax), %r11 + movq 4592(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DrawElementsInstancedARB), .-GL_PREFIX(DrawElementsInstancedARB) @@ -21631,7 +21668,7 @@ GL_PREFIX(DrawElementsInstancedARB): GL_PREFIX(RenderbufferStorageMultisample): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4592(%rax), %r11 + movq 4600(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -21645,13 +21682,13 @@ GL_PREFIX(RenderbufferStorageMultisample): popq %rdx popq %rsi popq %rdi - movq 4592(%rax), %r11 + movq 4600(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4592(%rax), %r11 + movq 4600(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -21665,7 +21702,7 @@ GL_PREFIX(RenderbufferStorageMultisample): popq %rdx popq %rsi popq %rdi - movq 4592(%rax), %r11 + movq 4600(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(RenderbufferStorageMultisample), .-GL_PREFIX(RenderbufferStorageMultisample) @@ -21676,7 +21713,7 @@ GL_PREFIX(RenderbufferStorageMultisample): GL_PREFIX(FramebufferTextureARB): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4600(%rax), %r11 + movq 4608(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -21690,13 +21727,13 @@ GL_PREFIX(FramebufferTextureARB): popq %rdx popq %rsi popq %rdi - movq 4600(%rax), %r11 + movq 4608(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4600(%rax), %r11 + movq 4608(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -21710,7 +21747,7 @@ GL_PREFIX(FramebufferTextureARB): popq %rdx popq %rsi popq %rdi - movq 4600(%rax), %r11 + movq 4608(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FramebufferTextureARB), .-GL_PREFIX(FramebufferTextureARB) @@ -21721,7 +21758,7 @@ GL_PREFIX(FramebufferTextureARB): GL_PREFIX(FramebufferTextureFaceARB): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4608(%rax), %r11 + movq 4616(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -21735,13 +21772,13 @@ GL_PREFIX(FramebufferTextureFaceARB): popq %rdx popq %rsi popq %rdi - movq 4608(%rax), %r11 + movq 4616(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4608(%rax), %r11 + movq 4616(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -21755,7 +21792,7 @@ GL_PREFIX(FramebufferTextureFaceARB): popq %rdx popq %rsi popq %rdi - movq 4608(%rax), %r11 + movq 4616(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FramebufferTextureFaceARB), .-GL_PREFIX(FramebufferTextureFaceARB) @@ -21766,7 +21803,7 @@ GL_PREFIX(FramebufferTextureFaceARB): GL_PREFIX(ProgramParameteriARB): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4616(%rax), %r11 + movq 4624(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -21776,13 +21813,13 @@ GL_PREFIX(ProgramParameteriARB): popq %rdx popq %rsi popq %rdi - movq 4616(%rax), %r11 + movq 4624(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4616(%rax), %r11 + movq 4624(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -21792,7 +21829,7 @@ GL_PREFIX(ProgramParameteriARB): popq %rdx popq %rsi popq %rdi - movq 4616(%rax), %r11 + movq 4624(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ProgramParameteriARB), .-GL_PREFIX(ProgramParameteriARB) @@ -21803,7 +21840,7 @@ GL_PREFIX(ProgramParameteriARB): GL_PREFIX(VertexAttribDivisorARB): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4624(%rax), %r11 + movq 4632(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -21813,13 +21850,13 @@ GL_PREFIX(VertexAttribDivisorARB): popq %rbp popq %rsi popq %rdi - movq 4624(%rax), %r11 + movq 4632(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4624(%rax), %r11 + movq 4632(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -21829,7 +21866,7 @@ GL_PREFIX(VertexAttribDivisorARB): popq %rbp popq %rsi popq %rdi - movq 4624(%rax), %r11 + movq 4632(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribDivisorARB), .-GL_PREFIX(VertexAttribDivisorARB) @@ -21840,7 +21877,7 @@ GL_PREFIX(VertexAttribDivisorARB): GL_PREFIX(FlushMappedBufferRange): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4632(%rax), %r11 + movq 4640(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -21850,13 +21887,13 @@ GL_PREFIX(FlushMappedBufferRange): popq %rdx popq %rsi popq %rdi - movq 4632(%rax), %r11 + movq 4640(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4632(%rax), %r11 + movq 4640(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -21866,7 +21903,7 @@ GL_PREFIX(FlushMappedBufferRange): popq %rdx popq %rsi popq %rdi - movq 4632(%rax), %r11 + movq 4640(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FlushMappedBufferRange), .-GL_PREFIX(FlushMappedBufferRange) @@ -21877,7 +21914,7 @@ GL_PREFIX(FlushMappedBufferRange): GL_PREFIX(MapBufferRange): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4640(%rax), %r11 + movq 4648(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -21891,13 +21928,13 @@ GL_PREFIX(MapBufferRange): popq %rdx popq %rsi popq %rdi - movq 4640(%rax), %r11 + movq 4648(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4640(%rax), %r11 + movq 4648(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -21911,7 +21948,7 @@ GL_PREFIX(MapBufferRange): popq %rdx popq %rsi popq %rdi - movq 4640(%rax), %r11 + movq 4648(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(MapBufferRange), .-GL_PREFIX(MapBufferRange) @@ -21922,25 +21959,25 @@ GL_PREFIX(MapBufferRange): GL_PREFIX(BindVertexArray): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4648(%rax), %r11 + movq 4656(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 4648(%rax), %r11 + movq 4656(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4648(%rax), %r11 + movq 4656(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 4648(%rax), %r11 + movq 4656(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindVertexArray), .-GL_PREFIX(BindVertexArray) @@ -21951,7 +21988,7 @@ GL_PREFIX(BindVertexArray): GL_PREFIX(GenVertexArrays): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4656(%rax), %r11 + movq 4664(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -21961,13 +21998,13 @@ GL_PREFIX(GenVertexArrays): popq %rbp popq %rsi popq %rdi - movq 4656(%rax), %r11 + movq 4664(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4656(%rax), %r11 + movq 4664(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -21977,7 +22014,7 @@ GL_PREFIX(GenVertexArrays): popq %rbp popq %rsi popq %rdi - movq 4656(%rax), %r11 + movq 4664(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GenVertexArrays), .-GL_PREFIX(GenVertexArrays) @@ -21988,7 +22025,7 @@ GL_PREFIX(GenVertexArrays): GL_PREFIX(CopyBufferSubData): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4664(%rax), %r11 + movq 4672(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22002,13 +22039,13 @@ GL_PREFIX(CopyBufferSubData): popq %rdx popq %rsi popq %rdi - movq 4664(%rax), %r11 + movq 4672(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4664(%rax), %r11 + movq 4672(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22022,7 +22059,7 @@ GL_PREFIX(CopyBufferSubData): popq %rdx popq %rsi popq %rdi - movq 4664(%rax), %r11 + movq 4672(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CopyBufferSubData), .-GL_PREFIX(CopyBufferSubData) @@ -22033,7 +22070,7 @@ GL_PREFIX(CopyBufferSubData): GL_PREFIX(ClientWaitSync): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4672(%rax), %r11 + movq 4680(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22043,13 +22080,13 @@ GL_PREFIX(ClientWaitSync): popq %rdx popq %rsi popq %rdi - movq 4672(%rax), %r11 + movq 4680(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4672(%rax), %r11 + movq 4680(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22059,7 +22096,7 @@ GL_PREFIX(ClientWaitSync): popq %rdx popq %rsi popq %rdi - movq 4672(%rax), %r11 + movq 4680(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ClientWaitSync), .-GL_PREFIX(ClientWaitSync) @@ -22070,25 +22107,25 @@ GL_PREFIX(ClientWaitSync): GL_PREFIX(DeleteSync): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4680(%rax), %r11 + movq 4688(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 4680(%rax), %r11 + movq 4688(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4680(%rax), %r11 + movq 4688(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 4680(%rax), %r11 + movq 4688(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DeleteSync), .-GL_PREFIX(DeleteSync) @@ -22099,7 +22136,7 @@ GL_PREFIX(DeleteSync): GL_PREFIX(FenceSync): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4688(%rax), %r11 + movq 4696(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22109,13 +22146,13 @@ GL_PREFIX(FenceSync): popq %rbp popq %rsi popq %rdi - movq 4688(%rax), %r11 + movq 4696(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4688(%rax), %r11 + movq 4696(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22125,7 +22162,7 @@ GL_PREFIX(FenceSync): popq %rbp popq %rsi popq %rdi - movq 4688(%rax), %r11 + movq 4696(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FenceSync), .-GL_PREFIX(FenceSync) @@ -22136,7 +22173,7 @@ GL_PREFIX(FenceSync): GL_PREFIX(GetInteger64v): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4696(%rax), %r11 + movq 4704(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22146,13 +22183,13 @@ GL_PREFIX(GetInteger64v): popq %rbp popq %rsi popq %rdi - movq 4696(%rax), %r11 + movq 4704(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4696(%rax), %r11 + movq 4704(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22162,7 +22199,7 @@ GL_PREFIX(GetInteger64v): popq %rbp popq %rsi popq %rdi - movq 4696(%rax), %r11 + movq 4704(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetInteger64v), .-GL_PREFIX(GetInteger64v) @@ -22173,7 +22210,7 @@ GL_PREFIX(GetInteger64v): GL_PREFIX(GetSynciv): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4704(%rax), %r11 + movq 4712(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22187,13 +22224,13 @@ GL_PREFIX(GetSynciv): popq %rdx popq %rsi popq %rdi - movq 4704(%rax), %r11 + movq 4712(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4704(%rax), %r11 + movq 4712(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22207,7 +22244,7 @@ GL_PREFIX(GetSynciv): popq %rdx popq %rsi popq %rdi - movq 4704(%rax), %r11 + movq 4712(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetSynciv), .-GL_PREFIX(GetSynciv) @@ -22218,25 +22255,25 @@ GL_PREFIX(GetSynciv): GL_PREFIX(IsSync): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4712(%rax), %r11 + movq 4720(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 4712(%rax), %r11 + movq 4720(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4712(%rax), %r11 + movq 4720(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 4712(%rax), %r11 + movq 4720(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(IsSync), .-GL_PREFIX(IsSync) @@ -22247,7 +22284,7 @@ GL_PREFIX(IsSync): GL_PREFIX(WaitSync): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4720(%rax), %r11 + movq 4728(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22257,13 +22294,13 @@ GL_PREFIX(WaitSync): popq %rdx popq %rsi popq %rdi - movq 4720(%rax), %r11 + movq 4728(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4720(%rax), %r11 + movq 4728(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22273,7 +22310,7 @@ GL_PREFIX(WaitSync): popq %rdx popq %rsi popq %rdi - movq 4720(%rax), %r11 + movq 4728(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WaitSync), .-GL_PREFIX(WaitSync) @@ -22284,7 +22321,7 @@ GL_PREFIX(WaitSync): GL_PREFIX(DrawElementsBaseVertex): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4728(%rax), %r11 + movq 4736(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22298,13 +22335,13 @@ GL_PREFIX(DrawElementsBaseVertex): popq %rdx popq %rsi popq %rdi - movq 4728(%rax), %r11 + movq 4736(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4728(%rax), %r11 + movq 4736(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22318,7 +22355,7 @@ GL_PREFIX(DrawElementsBaseVertex): popq %rdx popq %rsi popq %rdi - movq 4728(%rax), %r11 + movq 4736(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DrawElementsBaseVertex), .-GL_PREFIX(DrawElementsBaseVertex) @@ -22329,7 +22366,7 @@ GL_PREFIX(DrawElementsBaseVertex): GL_PREFIX(DrawRangeElementsBaseVertex): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4736(%rax), %r11 + movq 4744(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22347,13 +22384,13 @@ GL_PREFIX(DrawRangeElementsBaseVertex): popq %rdx popq %rsi popq %rdi - movq 4736(%rax), %r11 + movq 4744(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4736(%rax), %r11 + movq 4744(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22371,7 +22408,7 @@ GL_PREFIX(DrawRangeElementsBaseVertex): popq %rdx popq %rsi popq %rdi - movq 4736(%rax), %r11 + movq 4744(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DrawRangeElementsBaseVertex), .-GL_PREFIX(DrawRangeElementsBaseVertex) @@ -22382,7 +22419,7 @@ GL_PREFIX(DrawRangeElementsBaseVertex): GL_PREFIX(MultiDrawElementsBaseVertex): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4744(%rax), %r11 + movq 4752(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22400,13 +22437,13 @@ GL_PREFIX(MultiDrawElementsBaseVertex): popq %rdx popq %rsi popq %rdi - movq 4744(%rax), %r11 + movq 4752(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4744(%rax), %r11 + movq 4752(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22424,7 +22461,7 @@ GL_PREFIX(MultiDrawElementsBaseVertex): popq %rdx popq %rsi popq %rdi - movq 4744(%rax), %r11 + movq 4752(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(MultiDrawElementsBaseVertex), .-GL_PREFIX(MultiDrawElementsBaseVertex) @@ -22435,7 +22472,7 @@ GL_PREFIX(MultiDrawElementsBaseVertex): GL_PREFIX(BlendEquationSeparateiARB): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4752(%rax), %r11 + movq 4760(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22445,13 +22482,13 @@ GL_PREFIX(BlendEquationSeparateiARB): popq %rdx popq %rsi popq %rdi - movq 4752(%rax), %r11 + movq 4760(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4752(%rax), %r11 + movq 4760(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22461,7 +22498,7 @@ GL_PREFIX(BlendEquationSeparateiARB): popq %rdx popq %rsi popq %rdi - movq 4752(%rax), %r11 + movq 4760(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BlendEquationSeparateiARB), .-GL_PREFIX(BlendEquationSeparateiARB) @@ -22472,7 +22509,7 @@ GL_PREFIX(BlendEquationSeparateiARB): GL_PREFIX(BlendEquationiARB): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4760(%rax), %r11 + movq 4768(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22482,13 +22519,13 @@ GL_PREFIX(BlendEquationiARB): popq %rbp popq %rsi popq %rdi - movq 4760(%rax), %r11 + movq 4768(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4760(%rax), %r11 + movq 4768(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22498,7 +22535,7 @@ GL_PREFIX(BlendEquationiARB): popq %rbp popq %rsi popq %rdi - movq 4760(%rax), %r11 + movq 4768(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BlendEquationiARB), .-GL_PREFIX(BlendEquationiARB) @@ -22509,7 +22546,7 @@ GL_PREFIX(BlendEquationiARB): GL_PREFIX(BlendFuncSeparateiARB): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4768(%rax), %r11 + movq 4776(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22523,13 +22560,13 @@ GL_PREFIX(BlendFuncSeparateiARB): popq %rdx popq %rsi popq %rdi - movq 4768(%rax), %r11 + movq 4776(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4768(%rax), %r11 + movq 4776(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22543,7 +22580,7 @@ GL_PREFIX(BlendFuncSeparateiARB): popq %rdx popq %rsi popq %rdi - movq 4768(%rax), %r11 + movq 4776(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BlendFuncSeparateiARB), .-GL_PREFIX(BlendFuncSeparateiARB) @@ -22554,7 +22591,7 @@ GL_PREFIX(BlendFuncSeparateiARB): GL_PREFIX(BlendFunciARB): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4776(%rax), %r11 + movq 4784(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22564,13 +22601,13 @@ GL_PREFIX(BlendFunciARB): popq %rdx popq %rsi popq %rdi - movq 4776(%rax), %r11 + movq 4784(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4776(%rax), %r11 + movq 4784(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22580,7 +22617,7 @@ GL_PREFIX(BlendFunciARB): popq %rdx popq %rsi popq %rdi - movq 4776(%rax), %r11 + movq 4784(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BlendFunciARB), .-GL_PREFIX(BlendFunciARB) @@ -22591,7 +22628,7 @@ GL_PREFIX(BlendFunciARB): GL_PREFIX(BindTransformFeedback): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4784(%rax), %r11 + movq 4792(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22601,13 +22638,13 @@ GL_PREFIX(BindTransformFeedback): popq %rbp popq %rsi popq %rdi - movq 4784(%rax), %r11 + movq 4792(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4784(%rax), %r11 + movq 4792(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22617,7 +22654,7 @@ GL_PREFIX(BindTransformFeedback): popq %rbp popq %rsi popq %rdi - movq 4784(%rax), %r11 + movq 4792(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindTransformFeedback), .-GL_PREFIX(BindTransformFeedback) @@ -22628,7 +22665,7 @@ GL_PREFIX(BindTransformFeedback): GL_PREFIX(DeleteTransformFeedbacks): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4792(%rax), %r11 + movq 4800(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22638,13 +22675,13 @@ GL_PREFIX(DeleteTransformFeedbacks): popq %rbp popq %rsi popq %rdi - movq 4792(%rax), %r11 + movq 4800(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4792(%rax), %r11 + movq 4800(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22654,7 +22691,7 @@ GL_PREFIX(DeleteTransformFeedbacks): popq %rbp popq %rsi popq %rdi - movq 4792(%rax), %r11 + movq 4800(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DeleteTransformFeedbacks), .-GL_PREFIX(DeleteTransformFeedbacks) @@ -22665,7 +22702,7 @@ GL_PREFIX(DeleteTransformFeedbacks): GL_PREFIX(DrawTransformFeedback): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4800(%rax), %r11 + movq 4808(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22675,13 +22712,13 @@ GL_PREFIX(DrawTransformFeedback): popq %rbp popq %rsi popq %rdi - movq 4800(%rax), %r11 + movq 4808(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4800(%rax), %r11 + movq 4808(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22691,7 +22728,7 @@ GL_PREFIX(DrawTransformFeedback): popq %rbp popq %rsi popq %rdi - movq 4800(%rax), %r11 + movq 4808(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DrawTransformFeedback), .-GL_PREFIX(DrawTransformFeedback) @@ -22702,7 +22739,7 @@ GL_PREFIX(DrawTransformFeedback): GL_PREFIX(GenTransformFeedbacks): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4808(%rax), %r11 + movq 4816(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22712,13 +22749,13 @@ GL_PREFIX(GenTransformFeedbacks): popq %rbp popq %rsi popq %rdi - movq 4808(%rax), %r11 + movq 4816(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4808(%rax), %r11 + movq 4816(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22728,7 +22765,7 @@ GL_PREFIX(GenTransformFeedbacks): popq %rbp popq %rsi popq %rdi - movq 4808(%rax), %r11 + movq 4816(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GenTransformFeedbacks), .-GL_PREFIX(GenTransformFeedbacks) @@ -22739,25 +22776,25 @@ GL_PREFIX(GenTransformFeedbacks): GL_PREFIX(IsTransformFeedback): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4816(%rax), %r11 + movq 4824(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 4816(%rax), %r11 + movq 4824(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4816(%rax), %r11 + movq 4824(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 4816(%rax), %r11 + movq 4824(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(IsTransformFeedback), .-GL_PREFIX(IsTransformFeedback) @@ -22768,25 +22805,25 @@ GL_PREFIX(IsTransformFeedback): GL_PREFIX(PauseTransformFeedback): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4824(%rax), %r11 + movq 4832(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 4824(%rax), %r11 + movq 4832(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4824(%rax), %r11 + movq 4832(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 4824(%rax), %r11 + movq 4832(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PauseTransformFeedback), .-GL_PREFIX(PauseTransformFeedback) @@ -22797,25 +22834,25 @@ GL_PREFIX(PauseTransformFeedback): GL_PREFIX(ResumeTransformFeedback): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4832(%rax), %r11 + movq 4840(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 4832(%rax), %r11 + movq 4840(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4832(%rax), %r11 + movq 4840(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 4832(%rax), %r11 + movq 4840(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ResumeTransformFeedback), .-GL_PREFIX(ResumeTransformFeedback) @@ -22826,25 +22863,25 @@ GL_PREFIX(ResumeTransformFeedback): GL_PREFIX(ClearDepthf): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4840(%rax), %r11 + movq 4848(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 4840(%rax), %r11 + movq 4848(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4840(%rax), %r11 + movq 4848(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 4840(%rax), %r11 + movq 4848(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ClearDepthf), .-GL_PREFIX(ClearDepthf) @@ -22855,7 +22892,7 @@ GL_PREFIX(ClearDepthf): GL_PREFIX(DepthRangef): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4848(%rax), %r11 + movq 4856(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22865,13 +22902,13 @@ GL_PREFIX(DepthRangef): popq %rbp popq %rsi popq %rdi - movq 4848(%rax), %r11 + movq 4856(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4848(%rax), %r11 + movq 4856(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22881,7 +22918,7 @@ GL_PREFIX(DepthRangef): popq %rbp popq %rsi popq %rdi - movq 4848(%rax), %r11 + movq 4856(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DepthRangef), .-GL_PREFIX(DepthRangef) @@ -22892,7 +22929,7 @@ GL_PREFIX(DepthRangef): GL_PREFIX(GetShaderPrecisionFormat): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4856(%rax), %r11 + movq 4864(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22906,13 +22943,13 @@ GL_PREFIX(GetShaderPrecisionFormat): popq %rdx popq %rsi popq %rdi - movq 4856(%rax), %r11 + movq 4864(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4856(%rax), %r11 + movq 4864(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22926,7 +22963,7 @@ GL_PREFIX(GetShaderPrecisionFormat): popq %rdx popq %rsi popq %rdi - movq 4856(%rax), %r11 + movq 4864(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetShaderPrecisionFormat), .-GL_PREFIX(GetShaderPrecisionFormat) @@ -22937,25 +22974,25 @@ GL_PREFIX(GetShaderPrecisionFormat): GL_PREFIX(ReleaseShaderCompiler): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4864(%rax), %r11 + movq 4872(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 4864(%rax), %r11 + movq 4872(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4864(%rax), %r11 + movq 4872(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 4864(%rax), %r11 + movq 4872(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ReleaseShaderCompiler), .-GL_PREFIX(ReleaseShaderCompiler) @@ -22966,7 +23003,7 @@ GL_PREFIX(ReleaseShaderCompiler): GL_PREFIX(ShaderBinary): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4872(%rax), %r11 + movq 4880(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22980,13 +23017,13 @@ GL_PREFIX(ShaderBinary): popq %rdx popq %rsi popq %rdi - movq 4872(%rax), %r11 + movq 4880(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4872(%rax), %r11 + movq 4880(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23000,7 +23037,7 @@ GL_PREFIX(ShaderBinary): popq %rdx popq %rsi popq %rdi - movq 4872(%rax), %r11 + movq 4880(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ShaderBinary), .-GL_PREFIX(ShaderBinary) @@ -23011,7 +23048,7 @@ GL_PREFIX(ShaderBinary): GL_PREFIX(PolygonOffsetEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4880(%rax), %r11 + movq 4888(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -23021,13 +23058,13 @@ GL_PREFIX(PolygonOffsetEXT): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 4880(%rax), %r11 + movq 4888(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4880(%rax), %r11 + movq 4888(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -23037,49 +23074,11 @@ GL_PREFIX(PolygonOffsetEXT): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 4880(%rax), %r11 + movq 4888(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PolygonOffsetEXT), .-GL_PREFIX(PolygonOffsetEXT) - .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_611) - .type GL_PREFIX(_dispatch_stub_611), @function - HIDDEN(GL_PREFIX(_dispatch_stub_611)) -GL_PREFIX(_dispatch_stub_611): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 4888(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rdi - pushq %rsi - pushq %rbp - call _x86_64_get_dispatch@PLT - popq %rbp - popq %rsi - popq %rdi - movq 4888(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 4888(%rax), %r11 - jmp *%r11 -1: - pushq %rdi - pushq %rsi - pushq %rbp - call _glapi_get_dispatch - popq %rbp - popq %rsi - popq %rdi - movq 4888(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_611), .-GL_PREFIX(_dispatch_stub_611) - .p2align 4,,15 .globl GL_PREFIX(_dispatch_stub_612) .type GL_PREFIX(_dispatch_stub_612), @function @@ -23128,13 +23127,13 @@ GL_PREFIX(_dispatch_stub_613): movq 4904(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) - subq $24, %rsp - movq %rdi, (%rsp) - movq %xmm0, 8(%rsp) + pushq %rdi + pushq %rsi + pushq %rbp call _x86_64_get_dispatch@PLT - movq 8(%rsp), %xmm0 - movq (%rsp), %rdi - addq $24, %rsp + popq %rbp + popq %rsi + popq %rdi movq 4904(%rax), %r11 jmp *%r11 #else @@ -23144,13 +23143,13 @@ GL_PREFIX(_dispatch_stub_613): movq 4904(%rax), %r11 jmp *%r11 1: - subq $24, %rsp - movq %rdi, (%rsp) - movq %xmm0, 8(%rsp) + pushq %rdi + pushq %rsi + pushq %rbp call _glapi_get_dispatch - movq 8(%rsp), %xmm0 - movq (%rsp), %rdi - addq $24, %rsp + popq %rbp + popq %rsi + popq %rdi movq 4904(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ @@ -23166,13 +23165,13 @@ GL_PREFIX(_dispatch_stub_614): movq 4912(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) - pushq %rdi - pushq %rsi - pushq %rbp + subq $24, %rsp + movq %rdi, (%rsp) + movq %xmm0, 8(%rsp) call _x86_64_get_dispatch@PLT - popq %rbp - popq %rsi - popq %rdi + movq 8(%rsp), %xmm0 + movq (%rsp), %rdi + addq $24, %rsp movq 4912(%rax), %r11 jmp *%r11 #else @@ -23182,13 +23181,13 @@ GL_PREFIX(_dispatch_stub_614): movq 4912(%rax), %r11 jmp *%r11 1: - pushq %rdi - pushq %rsi - pushq %rbp + subq $24, %rsp + movq %rdi, (%rsp) + movq %xmm0, 8(%rsp) call _glapi_get_dispatch - popq %rbp - popq %rsi - popq %rdi + movq 8(%rsp), %xmm0 + movq (%rsp), %rdi + addq $24, %rsp movq 4912(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ @@ -23319,7 +23318,11 @@ GL_PREFIX(_dispatch_stub_618): jmp *%r11 #elif defined(PTHREADS) pushq %rdi + pushq %rsi + pushq %rbp call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi popq %rdi movq 4944(%rax), %r11 jmp *%r11 @@ -23331,20 +23334,54 @@ GL_PREFIX(_dispatch_stub_618): jmp *%r11 1: pushq %rdi + pushq %rsi + pushq %rbp call _glapi_get_dispatch + popq %rbp + popq %rsi popq %rdi movq 4944(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(_dispatch_stub_618), .-GL_PREFIX(_dispatch_stub_618) + .p2align 4,,15 + .globl GL_PREFIX(_dispatch_stub_619) + .type GL_PREFIX(_dispatch_stub_619), @function + HIDDEN(GL_PREFIX(_dispatch_stub_619)) +GL_PREFIX(_dispatch_stub_619): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 4952(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + call _x86_64_get_dispatch@PLT + popq %rdi + movq 4952(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 4952(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + call _glapi_get_dispatch + popq %rdi + movq 4952(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_619), .-GL_PREFIX(_dispatch_stub_619) + .p2align 4,,15 .globl GL_PREFIX(ColorPointerEXT) .type GL_PREFIX(ColorPointerEXT), @function GL_PREFIX(ColorPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4952(%rax), %r11 + movq 4960(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23358,13 +23395,13 @@ GL_PREFIX(ColorPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4952(%rax), %r11 + movq 4960(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4952(%rax), %r11 + movq 4960(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23378,7 +23415,7 @@ GL_PREFIX(ColorPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4952(%rax), %r11 + movq 4960(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ColorPointerEXT), .-GL_PREFIX(ColorPointerEXT) @@ -23389,7 +23426,7 @@ GL_PREFIX(ColorPointerEXT): GL_PREFIX(EdgeFlagPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4960(%rax), %r11 + movq 4968(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23399,13 +23436,13 @@ GL_PREFIX(EdgeFlagPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4960(%rax), %r11 + movq 4968(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4960(%rax), %r11 + movq 4968(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23415,7 +23452,7 @@ GL_PREFIX(EdgeFlagPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4960(%rax), %r11 + movq 4968(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EdgeFlagPointerEXT), .-GL_PREFIX(EdgeFlagPointerEXT) @@ -23426,7 +23463,7 @@ GL_PREFIX(EdgeFlagPointerEXT): GL_PREFIX(IndexPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4968(%rax), %r11 + movq 4976(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23440,13 +23477,13 @@ GL_PREFIX(IndexPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4968(%rax), %r11 + movq 4976(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4968(%rax), %r11 + movq 4976(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23460,7 +23497,7 @@ GL_PREFIX(IndexPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4968(%rax), %r11 + movq 4976(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(IndexPointerEXT), .-GL_PREFIX(IndexPointerEXT) @@ -23471,7 +23508,7 @@ GL_PREFIX(IndexPointerEXT): GL_PREFIX(NormalPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4976(%rax), %r11 + movq 4984(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23485,13 +23522,13 @@ GL_PREFIX(NormalPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4976(%rax), %r11 + movq 4984(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4976(%rax), %r11 + movq 4984(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23505,7 +23542,7 @@ GL_PREFIX(NormalPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4976(%rax), %r11 + movq 4984(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(NormalPointerEXT), .-GL_PREFIX(NormalPointerEXT) @@ -23516,7 +23553,7 @@ GL_PREFIX(NormalPointerEXT): GL_PREFIX(TexCoordPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4984(%rax), %r11 + movq 4992(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23530,13 +23567,13 @@ GL_PREFIX(TexCoordPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4984(%rax), %r11 + movq 4992(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4984(%rax), %r11 + movq 4992(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23550,7 +23587,7 @@ GL_PREFIX(TexCoordPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4984(%rax), %r11 + movq 4992(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TexCoordPointerEXT), .-GL_PREFIX(TexCoordPointerEXT) @@ -23561,7 +23598,7 @@ GL_PREFIX(TexCoordPointerEXT): GL_PREFIX(VertexPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4992(%rax), %r11 + movq 5000(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23575,13 +23612,13 @@ GL_PREFIX(VertexPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4992(%rax), %r11 + movq 5000(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4992(%rax), %r11 + movq 5000(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23595,7 +23632,7 @@ GL_PREFIX(VertexPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4992(%rax), %r11 + movq 5000(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexPointerEXT), .-GL_PREFIX(VertexPointerEXT) @@ -23606,7 +23643,7 @@ GL_PREFIX(VertexPointerEXT): GL_PREFIX(PointParameterfEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5000(%rax), %r11 + movq 5008(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -23616,13 +23653,13 @@ GL_PREFIX(PointParameterfEXT): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5000(%rax), %r11 + movq 5008(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5000(%rax), %r11 + movq 5008(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -23632,7 +23669,7 @@ GL_PREFIX(PointParameterfEXT): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5000(%rax), %r11 + movq 5008(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PointParameterfEXT), .-GL_PREFIX(PointParameterfEXT) @@ -23643,7 +23680,7 @@ GL_PREFIX(PointParameterfEXT): GL_PREFIX(PointParameterfvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5008(%rax), %r11 + movq 5016(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23653,13 +23690,13 @@ GL_PREFIX(PointParameterfvEXT): popq %rbp popq %rsi popq %rdi - movq 5008(%rax), %r11 + movq 5016(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5008(%rax), %r11 + movq 5016(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23669,7 +23706,7 @@ GL_PREFIX(PointParameterfvEXT): popq %rbp popq %rsi popq %rdi - movq 5008(%rax), %r11 + movq 5016(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PointParameterfvEXT), .-GL_PREFIX(PointParameterfvEXT) @@ -23680,7 +23717,7 @@ GL_PREFIX(PointParameterfvEXT): GL_PREFIX(LockArraysEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5016(%rax), %r11 + movq 5024(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23690,13 +23727,13 @@ GL_PREFIX(LockArraysEXT): popq %rbp popq %rsi popq %rdi - movq 5016(%rax), %r11 + movq 5024(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5016(%rax), %r11 + movq 5024(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23706,7 +23743,7 @@ GL_PREFIX(LockArraysEXT): popq %rbp popq %rsi popq %rdi - movq 5016(%rax), %r11 + movq 5024(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(LockArraysEXT), .-GL_PREFIX(LockArraysEXT) @@ -23717,25 +23754,25 @@ GL_PREFIX(LockArraysEXT): GL_PREFIX(UnlockArraysEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5024(%rax), %r11 + movq 5032(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 5024(%rax), %r11 + movq 5032(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5024(%rax), %r11 + movq 5032(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 5024(%rax), %r11 + movq 5032(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(UnlockArraysEXT), .-GL_PREFIX(UnlockArraysEXT) @@ -23746,7 +23783,7 @@ GL_PREFIX(UnlockArraysEXT): GL_PREFIX(SecondaryColor3bEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5032(%rax), %r11 + movq 5040(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23756,13 +23793,13 @@ GL_PREFIX(SecondaryColor3bEXT): popq %rdx popq %rsi popq %rdi - movq 5032(%rax), %r11 + movq 5040(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5032(%rax), %r11 + movq 5040(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23772,7 +23809,7 @@ GL_PREFIX(SecondaryColor3bEXT): popq %rdx popq %rsi popq %rdi - movq 5032(%rax), %r11 + movq 5040(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3bEXT), .-GL_PREFIX(SecondaryColor3bEXT) @@ -23783,25 +23820,25 @@ GL_PREFIX(SecondaryColor3bEXT): GL_PREFIX(SecondaryColor3bvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5040(%rax), %r11 + movq 5048(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5040(%rax), %r11 + movq 5048(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5040(%rax), %r11 + movq 5048(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5040(%rax), %r11 + movq 5048(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3bvEXT), .-GL_PREFIX(SecondaryColor3bvEXT) @@ -23812,7 +23849,7 @@ GL_PREFIX(SecondaryColor3bvEXT): GL_PREFIX(SecondaryColor3dEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5048(%rax), %r11 + movq 5056(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -23824,13 +23861,13 @@ GL_PREFIX(SecondaryColor3dEXT): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5048(%rax), %r11 + movq 5056(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5048(%rax), %r11 + movq 5056(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -23842,7 +23879,7 @@ GL_PREFIX(SecondaryColor3dEXT): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5048(%rax), %r11 + movq 5056(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3dEXT), .-GL_PREFIX(SecondaryColor3dEXT) @@ -23853,25 +23890,25 @@ GL_PREFIX(SecondaryColor3dEXT): GL_PREFIX(SecondaryColor3dvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5056(%rax), %r11 + movq 5064(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5056(%rax), %r11 + movq 5064(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5056(%rax), %r11 + movq 5064(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5056(%rax), %r11 + movq 5064(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3dvEXT), .-GL_PREFIX(SecondaryColor3dvEXT) @@ -23882,7 +23919,7 @@ GL_PREFIX(SecondaryColor3dvEXT): GL_PREFIX(SecondaryColor3fEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5064(%rax), %r11 + movq 5072(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -23894,13 +23931,13 @@ GL_PREFIX(SecondaryColor3fEXT): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5064(%rax), %r11 + movq 5072(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5064(%rax), %r11 + movq 5072(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -23912,7 +23949,7 @@ GL_PREFIX(SecondaryColor3fEXT): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5064(%rax), %r11 + movq 5072(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3fEXT), .-GL_PREFIX(SecondaryColor3fEXT) @@ -23923,25 +23960,25 @@ GL_PREFIX(SecondaryColor3fEXT): GL_PREFIX(SecondaryColor3fvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5072(%rax), %r11 + movq 5080(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5072(%rax), %r11 + movq 5080(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5072(%rax), %r11 + movq 5080(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5072(%rax), %r11 + movq 5080(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3fvEXT), .-GL_PREFIX(SecondaryColor3fvEXT) @@ -23952,7 +23989,7 @@ GL_PREFIX(SecondaryColor3fvEXT): GL_PREFIX(SecondaryColor3iEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5080(%rax), %r11 + movq 5088(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23962,13 +23999,13 @@ GL_PREFIX(SecondaryColor3iEXT): popq %rdx popq %rsi popq %rdi - movq 5080(%rax), %r11 + movq 5088(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5080(%rax), %r11 + movq 5088(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23978,7 +24015,7 @@ GL_PREFIX(SecondaryColor3iEXT): popq %rdx popq %rsi popq %rdi - movq 5080(%rax), %r11 + movq 5088(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3iEXT), .-GL_PREFIX(SecondaryColor3iEXT) @@ -23989,25 +24026,25 @@ GL_PREFIX(SecondaryColor3iEXT): GL_PREFIX(SecondaryColor3ivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5088(%rax), %r11 + movq 5096(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5088(%rax), %r11 + movq 5096(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5088(%rax), %r11 + movq 5096(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5088(%rax), %r11 + movq 5096(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3ivEXT), .-GL_PREFIX(SecondaryColor3ivEXT) @@ -24018,7 +24055,7 @@ GL_PREFIX(SecondaryColor3ivEXT): GL_PREFIX(SecondaryColor3sEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5096(%rax), %r11 + movq 5104(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24028,13 +24065,13 @@ GL_PREFIX(SecondaryColor3sEXT): popq %rdx popq %rsi popq %rdi - movq 5096(%rax), %r11 + movq 5104(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5096(%rax), %r11 + movq 5104(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24044,7 +24081,7 @@ GL_PREFIX(SecondaryColor3sEXT): popq %rdx popq %rsi popq %rdi - movq 5096(%rax), %r11 + movq 5104(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3sEXT), .-GL_PREFIX(SecondaryColor3sEXT) @@ -24055,25 +24092,25 @@ GL_PREFIX(SecondaryColor3sEXT): GL_PREFIX(SecondaryColor3svEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5104(%rax), %r11 + movq 5112(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5104(%rax), %r11 + movq 5112(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5104(%rax), %r11 + movq 5112(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5104(%rax), %r11 + movq 5112(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3svEXT), .-GL_PREFIX(SecondaryColor3svEXT) @@ -24084,7 +24121,7 @@ GL_PREFIX(SecondaryColor3svEXT): GL_PREFIX(SecondaryColor3ubEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5112(%rax), %r11 + movq 5120(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24094,13 +24131,13 @@ GL_PREFIX(SecondaryColor3ubEXT): popq %rdx popq %rsi popq %rdi - movq 5112(%rax), %r11 + movq 5120(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5112(%rax), %r11 + movq 5120(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24110,7 +24147,7 @@ GL_PREFIX(SecondaryColor3ubEXT): popq %rdx popq %rsi popq %rdi - movq 5112(%rax), %r11 + movq 5120(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3ubEXT), .-GL_PREFIX(SecondaryColor3ubEXT) @@ -24121,25 +24158,25 @@ GL_PREFIX(SecondaryColor3ubEXT): GL_PREFIX(SecondaryColor3ubvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5120(%rax), %r11 + movq 5128(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5120(%rax), %r11 + movq 5128(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5120(%rax), %r11 + movq 5128(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5120(%rax), %r11 + movq 5128(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3ubvEXT), .-GL_PREFIX(SecondaryColor3ubvEXT) @@ -24150,7 +24187,7 @@ GL_PREFIX(SecondaryColor3ubvEXT): GL_PREFIX(SecondaryColor3uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5128(%rax), %r11 + movq 5136(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24160,13 +24197,13 @@ GL_PREFIX(SecondaryColor3uiEXT): popq %rdx popq %rsi popq %rdi - movq 5128(%rax), %r11 + movq 5136(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5128(%rax), %r11 + movq 5136(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24176,7 +24213,7 @@ GL_PREFIX(SecondaryColor3uiEXT): popq %rdx popq %rsi popq %rdi - movq 5128(%rax), %r11 + movq 5136(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3uiEXT), .-GL_PREFIX(SecondaryColor3uiEXT) @@ -24187,25 +24224,25 @@ GL_PREFIX(SecondaryColor3uiEXT): GL_PREFIX(SecondaryColor3uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5136(%rax), %r11 + movq 5144(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5136(%rax), %r11 + movq 5144(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5136(%rax), %r11 + movq 5144(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5136(%rax), %r11 + movq 5144(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3uivEXT), .-GL_PREFIX(SecondaryColor3uivEXT) @@ -24216,7 +24253,7 @@ GL_PREFIX(SecondaryColor3uivEXT): GL_PREFIX(SecondaryColor3usEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5144(%rax), %r11 + movq 5152(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24226,13 +24263,13 @@ GL_PREFIX(SecondaryColor3usEXT): popq %rdx popq %rsi popq %rdi - movq 5144(%rax), %r11 + movq 5152(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5144(%rax), %r11 + movq 5152(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24242,7 +24279,7 @@ GL_PREFIX(SecondaryColor3usEXT): popq %rdx popq %rsi popq %rdi - movq 5144(%rax), %r11 + movq 5152(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3usEXT), .-GL_PREFIX(SecondaryColor3usEXT) @@ -24253,25 +24290,25 @@ GL_PREFIX(SecondaryColor3usEXT): GL_PREFIX(SecondaryColor3usvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5152(%rax), %r11 + movq 5160(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5152(%rax), %r11 + movq 5160(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5152(%rax), %r11 + movq 5160(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5152(%rax), %r11 + movq 5160(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3usvEXT), .-GL_PREFIX(SecondaryColor3usvEXT) @@ -24282,7 +24319,7 @@ GL_PREFIX(SecondaryColor3usvEXT): GL_PREFIX(SecondaryColorPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5160(%rax), %r11 + movq 5168(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24296,13 +24333,13 @@ GL_PREFIX(SecondaryColorPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5160(%rax), %r11 + movq 5168(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5160(%rax), %r11 + movq 5168(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24316,7 +24353,7 @@ GL_PREFIX(SecondaryColorPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5160(%rax), %r11 + movq 5168(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColorPointerEXT), .-GL_PREFIX(SecondaryColorPointerEXT) @@ -24327,7 +24364,7 @@ GL_PREFIX(SecondaryColorPointerEXT): GL_PREFIX(MultiDrawArraysEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5168(%rax), %r11 + movq 5176(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24341,13 +24378,13 @@ GL_PREFIX(MultiDrawArraysEXT): popq %rdx popq %rsi popq %rdi - movq 5168(%rax), %r11 + movq 5176(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5168(%rax), %r11 + movq 5176(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24361,7 +24398,7 @@ GL_PREFIX(MultiDrawArraysEXT): popq %rdx popq %rsi popq %rdi - movq 5168(%rax), %r11 + movq 5176(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(MultiDrawArraysEXT), .-GL_PREFIX(MultiDrawArraysEXT) @@ -24372,7 +24409,7 @@ GL_PREFIX(MultiDrawArraysEXT): GL_PREFIX(MultiDrawElementsEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5176(%rax), %r11 + movq 5184(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24386,13 +24423,13 @@ GL_PREFIX(MultiDrawElementsEXT): popq %rdx popq %rsi popq %rdi - movq 5176(%rax), %r11 + movq 5184(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5176(%rax), %r11 + movq 5184(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24406,7 +24443,7 @@ GL_PREFIX(MultiDrawElementsEXT): popq %rdx popq %rsi popq %rdi - movq 5176(%rax), %r11 + movq 5184(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(MultiDrawElementsEXT), .-GL_PREFIX(MultiDrawElementsEXT) @@ -24417,7 +24454,7 @@ GL_PREFIX(MultiDrawElementsEXT): GL_PREFIX(FogCoordPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5184(%rax), %r11 + movq 5192(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24427,13 +24464,13 @@ GL_PREFIX(FogCoordPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5184(%rax), %r11 + movq 5192(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5184(%rax), %r11 + movq 5192(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24443,7 +24480,7 @@ GL_PREFIX(FogCoordPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5184(%rax), %r11 + movq 5192(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FogCoordPointerEXT), .-GL_PREFIX(FogCoordPointerEXT) @@ -24454,7 +24491,7 @@ GL_PREFIX(FogCoordPointerEXT): GL_PREFIX(FogCoorddEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5192(%rax), %r11 + movq 5200(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $8, %rsp @@ -24462,13 +24499,13 @@ GL_PREFIX(FogCoorddEXT): call _x86_64_get_dispatch@PLT movq (%rsp), %xmm0 addq $8, %rsp - movq 5192(%rax), %r11 + movq 5200(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5192(%rax), %r11 + movq 5200(%rax), %r11 jmp *%r11 1: subq $8, %rsp @@ -24476,7 +24513,7 @@ GL_PREFIX(FogCoorddEXT): call _glapi_get_dispatch movq (%rsp), %xmm0 addq $8, %rsp - movq 5192(%rax), %r11 + movq 5200(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FogCoorddEXT), .-GL_PREFIX(FogCoorddEXT) @@ -24487,25 +24524,25 @@ GL_PREFIX(FogCoorddEXT): GL_PREFIX(FogCoorddvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5200(%rax), %r11 + movq 5208(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5200(%rax), %r11 + movq 5208(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5200(%rax), %r11 + movq 5208(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5200(%rax), %r11 + movq 5208(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FogCoorddvEXT), .-GL_PREFIX(FogCoorddvEXT) @@ -24516,7 +24553,7 @@ GL_PREFIX(FogCoorddvEXT): GL_PREFIX(FogCoordfEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5208(%rax), %r11 + movq 5216(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $8, %rsp @@ -24524,13 +24561,13 @@ GL_PREFIX(FogCoordfEXT): call _x86_64_get_dispatch@PLT movq (%rsp), %xmm0 addq $8, %rsp - movq 5208(%rax), %r11 + movq 5216(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5208(%rax), %r11 + movq 5216(%rax), %r11 jmp *%r11 1: subq $8, %rsp @@ -24538,7 +24575,7 @@ GL_PREFIX(FogCoordfEXT): call _glapi_get_dispatch movq (%rsp), %xmm0 addq $8, %rsp - movq 5208(%rax), %r11 + movq 5216(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FogCoordfEXT), .-GL_PREFIX(FogCoordfEXT) @@ -24549,58 +24586,58 @@ GL_PREFIX(FogCoordfEXT): GL_PREFIX(FogCoordfvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5216(%rax), %r11 + movq 5224(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5216(%rax), %r11 + movq 5224(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5216(%rax), %r11 + movq 5224(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5216(%rax), %r11 + movq 5224(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FogCoordfvEXT), .-GL_PREFIX(FogCoordfvEXT) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_653) - .type GL_PREFIX(_dispatch_stub_653), @function - HIDDEN(GL_PREFIX(_dispatch_stub_653)) -GL_PREFIX(_dispatch_stub_653): + .globl GL_PREFIX(_dispatch_stub_654) + .type GL_PREFIX(_dispatch_stub_654), @function + HIDDEN(GL_PREFIX(_dispatch_stub_654)) +GL_PREFIX(_dispatch_stub_654): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5224(%rax), %r11 + movq 5232(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5224(%rax), %r11 + movq 5232(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5224(%rax), %r11 + movq 5232(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5224(%rax), %r11 + movq 5232(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_653), .-GL_PREFIX(_dispatch_stub_653) + .size GL_PREFIX(_dispatch_stub_654), .-GL_PREFIX(_dispatch_stub_654) .p2align 4,,15 .globl GL_PREFIX(BlendFuncSeparateEXT) @@ -24608,7 +24645,7 @@ GL_PREFIX(_dispatch_stub_653): GL_PREFIX(BlendFuncSeparateEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5232(%rax), %r11 + movq 5240(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24622,13 +24659,13 @@ GL_PREFIX(BlendFuncSeparateEXT): popq %rdx popq %rsi popq %rdi - movq 5232(%rax), %r11 + movq 5240(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5232(%rax), %r11 + movq 5240(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24642,7 +24679,7 @@ GL_PREFIX(BlendFuncSeparateEXT): popq %rdx popq %rsi popq %rdi - movq 5232(%rax), %r11 + movq 5240(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BlendFuncSeparateEXT), .-GL_PREFIX(BlendFuncSeparateEXT) @@ -24653,25 +24690,25 @@ GL_PREFIX(BlendFuncSeparateEXT): GL_PREFIX(FlushVertexArrayRangeNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5240(%rax), %r11 + movq 5248(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 5240(%rax), %r11 + movq 5248(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5240(%rax), %r11 + movq 5248(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 5240(%rax), %r11 + movq 5248(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FlushVertexArrayRangeNV), .-GL_PREFIX(FlushVertexArrayRangeNV) @@ -24682,7 +24719,7 @@ GL_PREFIX(FlushVertexArrayRangeNV): GL_PREFIX(VertexArrayRangeNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5248(%rax), %r11 + movq 5256(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24692,13 +24729,13 @@ GL_PREFIX(VertexArrayRangeNV): popq %rbp popq %rsi popq %rdi - movq 5248(%rax), %r11 + movq 5256(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5248(%rax), %r11 + movq 5256(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24708,7 +24745,7 @@ GL_PREFIX(VertexArrayRangeNV): popq %rbp popq %rsi popq %rdi - movq 5248(%rax), %r11 + movq 5256(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexArrayRangeNV), .-GL_PREFIX(VertexArrayRangeNV) @@ -24719,7 +24756,7 @@ GL_PREFIX(VertexArrayRangeNV): GL_PREFIX(CombinerInputNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5256(%rax), %r11 + movq 5264(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24737,13 +24774,13 @@ GL_PREFIX(CombinerInputNV): popq %rdx popq %rsi popq %rdi - movq 5256(%rax), %r11 + movq 5264(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5256(%rax), %r11 + movq 5264(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24761,7 +24798,7 @@ GL_PREFIX(CombinerInputNV): popq %rdx popq %rsi popq %rdi - movq 5256(%rax), %r11 + movq 5264(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CombinerInputNV), .-GL_PREFIX(CombinerInputNV) @@ -24772,7 +24809,7 @@ GL_PREFIX(CombinerInputNV): GL_PREFIX(CombinerOutputNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5264(%rax), %r11 + movq 5272(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24790,13 +24827,13 @@ GL_PREFIX(CombinerOutputNV): popq %rdx popq %rsi popq %rdi - movq 5264(%rax), %r11 + movq 5272(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5264(%rax), %r11 + movq 5272(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24814,7 +24851,7 @@ GL_PREFIX(CombinerOutputNV): popq %rdx popq %rsi popq %rdi - movq 5264(%rax), %r11 + movq 5272(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CombinerOutputNV), .-GL_PREFIX(CombinerOutputNV) @@ -24825,7 +24862,7 @@ GL_PREFIX(CombinerOutputNV): GL_PREFIX(CombinerParameterfNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5272(%rax), %r11 + movq 5280(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -24835,13 +24872,13 @@ GL_PREFIX(CombinerParameterfNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5272(%rax), %r11 + movq 5280(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5272(%rax), %r11 + movq 5280(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -24851,7 +24888,7 @@ GL_PREFIX(CombinerParameterfNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5272(%rax), %r11 + movq 5280(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CombinerParameterfNV), .-GL_PREFIX(CombinerParameterfNV) @@ -24862,7 +24899,7 @@ GL_PREFIX(CombinerParameterfNV): GL_PREFIX(CombinerParameterfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5280(%rax), %r11 + movq 5288(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24872,13 +24909,13 @@ GL_PREFIX(CombinerParameterfvNV): popq %rbp popq %rsi popq %rdi - movq 5280(%rax), %r11 + movq 5288(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5280(%rax), %r11 + movq 5288(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24888,7 +24925,7 @@ GL_PREFIX(CombinerParameterfvNV): popq %rbp popq %rsi popq %rdi - movq 5280(%rax), %r11 + movq 5288(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CombinerParameterfvNV), .-GL_PREFIX(CombinerParameterfvNV) @@ -24899,7 +24936,7 @@ GL_PREFIX(CombinerParameterfvNV): GL_PREFIX(CombinerParameteriNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5288(%rax), %r11 + movq 5296(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24909,13 +24946,13 @@ GL_PREFIX(CombinerParameteriNV): popq %rbp popq %rsi popq %rdi - movq 5288(%rax), %r11 + movq 5296(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5288(%rax), %r11 + movq 5296(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24925,7 +24962,7 @@ GL_PREFIX(CombinerParameteriNV): popq %rbp popq %rsi popq %rdi - movq 5288(%rax), %r11 + movq 5296(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CombinerParameteriNV), .-GL_PREFIX(CombinerParameteriNV) @@ -24936,7 +24973,7 @@ GL_PREFIX(CombinerParameteriNV): GL_PREFIX(CombinerParameterivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5296(%rax), %r11 + movq 5304(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24946,13 +24983,13 @@ GL_PREFIX(CombinerParameterivNV): popq %rbp popq %rsi popq %rdi - movq 5296(%rax), %r11 + movq 5304(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5296(%rax), %r11 + movq 5304(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24962,7 +24999,7 @@ GL_PREFIX(CombinerParameterivNV): popq %rbp popq %rsi popq %rdi - movq 5296(%rax), %r11 + movq 5304(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CombinerParameterivNV), .-GL_PREFIX(CombinerParameterivNV) @@ -24973,7 +25010,7 @@ GL_PREFIX(CombinerParameterivNV): GL_PREFIX(FinalCombinerInputNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5304(%rax), %r11 + movq 5312(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24987,13 +25024,13 @@ GL_PREFIX(FinalCombinerInputNV): popq %rdx popq %rsi popq %rdi - movq 5304(%rax), %r11 + movq 5312(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5304(%rax), %r11 + movq 5312(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25007,7 +25044,7 @@ GL_PREFIX(FinalCombinerInputNV): popq %rdx popq %rsi popq %rdi - movq 5304(%rax), %r11 + movq 5312(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FinalCombinerInputNV), .-GL_PREFIX(FinalCombinerInputNV) @@ -25018,7 +25055,7 @@ GL_PREFIX(FinalCombinerInputNV): GL_PREFIX(GetCombinerInputParameterfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5312(%rax), %r11 + movq 5320(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25032,13 +25069,13 @@ GL_PREFIX(GetCombinerInputParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5312(%rax), %r11 + movq 5320(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5312(%rax), %r11 + movq 5320(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25052,7 +25089,7 @@ GL_PREFIX(GetCombinerInputParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5312(%rax), %r11 + movq 5320(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetCombinerInputParameterfvNV), .-GL_PREFIX(GetCombinerInputParameterfvNV) @@ -25063,7 +25100,7 @@ GL_PREFIX(GetCombinerInputParameterfvNV): GL_PREFIX(GetCombinerInputParameterivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5320(%rax), %r11 + movq 5328(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25077,13 +25114,13 @@ GL_PREFIX(GetCombinerInputParameterivNV): popq %rdx popq %rsi popq %rdi - movq 5320(%rax), %r11 + movq 5328(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5320(%rax), %r11 + movq 5328(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25097,7 +25134,7 @@ GL_PREFIX(GetCombinerInputParameterivNV): popq %rdx popq %rsi popq %rdi - movq 5320(%rax), %r11 + movq 5328(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetCombinerInputParameterivNV), .-GL_PREFIX(GetCombinerInputParameterivNV) @@ -25108,7 +25145,7 @@ GL_PREFIX(GetCombinerInputParameterivNV): GL_PREFIX(GetCombinerOutputParameterfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5328(%rax), %r11 + movq 5336(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25122,13 +25159,13 @@ GL_PREFIX(GetCombinerOutputParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5328(%rax), %r11 + movq 5336(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5328(%rax), %r11 + movq 5336(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25142,7 +25179,7 @@ GL_PREFIX(GetCombinerOutputParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5328(%rax), %r11 + movq 5336(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetCombinerOutputParameterfvNV), .-GL_PREFIX(GetCombinerOutputParameterfvNV) @@ -25153,7 +25190,7 @@ GL_PREFIX(GetCombinerOutputParameterfvNV): GL_PREFIX(GetCombinerOutputParameterivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5336(%rax), %r11 + movq 5344(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25167,13 +25204,13 @@ GL_PREFIX(GetCombinerOutputParameterivNV): popq %rdx popq %rsi popq %rdi - movq 5336(%rax), %r11 + movq 5344(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5336(%rax), %r11 + movq 5344(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25187,7 +25224,7 @@ GL_PREFIX(GetCombinerOutputParameterivNV): popq %rdx popq %rsi popq %rdi - movq 5336(%rax), %r11 + movq 5344(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetCombinerOutputParameterivNV), .-GL_PREFIX(GetCombinerOutputParameterivNV) @@ -25198,7 +25235,7 @@ GL_PREFIX(GetCombinerOutputParameterivNV): GL_PREFIX(GetFinalCombinerInputParameterfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5344(%rax), %r11 + movq 5352(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25208,13 +25245,13 @@ GL_PREFIX(GetFinalCombinerInputParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5344(%rax), %r11 + movq 5352(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5344(%rax), %r11 + movq 5352(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25224,7 +25261,7 @@ GL_PREFIX(GetFinalCombinerInputParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5344(%rax), %r11 + movq 5352(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetFinalCombinerInputParameterfvNV), .-GL_PREFIX(GetFinalCombinerInputParameterfvNV) @@ -25235,7 +25272,7 @@ GL_PREFIX(GetFinalCombinerInputParameterfvNV): GL_PREFIX(GetFinalCombinerInputParameterivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5352(%rax), %r11 + movq 5360(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25245,13 +25282,13 @@ GL_PREFIX(GetFinalCombinerInputParameterivNV): popq %rdx popq %rsi popq %rdi - movq 5352(%rax), %r11 + movq 5360(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5352(%rax), %r11 + movq 5360(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25261,7 +25298,7 @@ GL_PREFIX(GetFinalCombinerInputParameterivNV): popq %rdx popq %rsi popq %rdi - movq 5352(%rax), %r11 + movq 5360(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetFinalCombinerInputParameterivNV), .-GL_PREFIX(GetFinalCombinerInputParameterivNV) @@ -25272,25 +25309,25 @@ GL_PREFIX(GetFinalCombinerInputParameterivNV): GL_PREFIX(ResizeBuffersMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5360(%rax), %r11 + movq 5368(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 5360(%rax), %r11 + movq 5368(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5360(%rax), %r11 + movq 5368(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 5360(%rax), %r11 + movq 5368(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ResizeBuffersMESA), .-GL_PREFIX(ResizeBuffersMESA) @@ -25301,7 +25338,7 @@ GL_PREFIX(ResizeBuffersMESA): GL_PREFIX(WindowPos2dMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5368(%rax), %r11 + movq 5376(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -25311,13 +25348,13 @@ GL_PREFIX(WindowPos2dMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5368(%rax), %r11 + movq 5376(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5368(%rax), %r11 + movq 5376(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -25327,7 +25364,7 @@ GL_PREFIX(WindowPos2dMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5368(%rax), %r11 + movq 5376(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2dMESA), .-GL_PREFIX(WindowPos2dMESA) @@ -25338,25 +25375,25 @@ GL_PREFIX(WindowPos2dMESA): GL_PREFIX(WindowPos2dvMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5376(%rax), %r11 + movq 5384(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5376(%rax), %r11 + movq 5384(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5376(%rax), %r11 + movq 5384(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5376(%rax), %r11 + movq 5384(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2dvMESA), .-GL_PREFIX(WindowPos2dvMESA) @@ -25367,7 +25404,7 @@ GL_PREFIX(WindowPos2dvMESA): GL_PREFIX(WindowPos2fMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5384(%rax), %r11 + movq 5392(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -25377,13 +25414,13 @@ GL_PREFIX(WindowPos2fMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5384(%rax), %r11 + movq 5392(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5384(%rax), %r11 + movq 5392(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -25393,7 +25430,7 @@ GL_PREFIX(WindowPos2fMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5384(%rax), %r11 + movq 5392(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2fMESA), .-GL_PREFIX(WindowPos2fMESA) @@ -25404,25 +25441,25 @@ GL_PREFIX(WindowPos2fMESA): GL_PREFIX(WindowPos2fvMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5392(%rax), %r11 + movq 5400(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5392(%rax), %r11 + movq 5400(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5392(%rax), %r11 + movq 5400(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5392(%rax), %r11 + movq 5400(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2fvMESA), .-GL_PREFIX(WindowPos2fvMESA) @@ -25433,7 +25470,7 @@ GL_PREFIX(WindowPos2fvMESA): GL_PREFIX(WindowPos2iMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5400(%rax), %r11 + movq 5408(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25443,13 +25480,13 @@ GL_PREFIX(WindowPos2iMESA): popq %rbp popq %rsi popq %rdi - movq 5400(%rax), %r11 + movq 5408(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5400(%rax), %r11 + movq 5408(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25459,7 +25496,7 @@ GL_PREFIX(WindowPos2iMESA): popq %rbp popq %rsi popq %rdi - movq 5400(%rax), %r11 + movq 5408(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2iMESA), .-GL_PREFIX(WindowPos2iMESA) @@ -25470,25 +25507,25 @@ GL_PREFIX(WindowPos2iMESA): GL_PREFIX(WindowPos2ivMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5408(%rax), %r11 + movq 5416(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5408(%rax), %r11 + movq 5416(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5408(%rax), %r11 + movq 5416(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5408(%rax), %r11 + movq 5416(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2ivMESA), .-GL_PREFIX(WindowPos2ivMESA) @@ -25499,7 +25536,7 @@ GL_PREFIX(WindowPos2ivMESA): GL_PREFIX(WindowPos2sMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5416(%rax), %r11 + movq 5424(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25509,13 +25546,13 @@ GL_PREFIX(WindowPos2sMESA): popq %rbp popq %rsi popq %rdi - movq 5416(%rax), %r11 + movq 5424(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5416(%rax), %r11 + movq 5424(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25525,7 +25562,7 @@ GL_PREFIX(WindowPos2sMESA): popq %rbp popq %rsi popq %rdi - movq 5416(%rax), %r11 + movq 5424(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2sMESA), .-GL_PREFIX(WindowPos2sMESA) @@ -25536,25 +25573,25 @@ GL_PREFIX(WindowPos2sMESA): GL_PREFIX(WindowPos2svMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5424(%rax), %r11 + movq 5432(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5424(%rax), %r11 + movq 5432(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5424(%rax), %r11 + movq 5432(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5424(%rax), %r11 + movq 5432(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2svMESA), .-GL_PREFIX(WindowPos2svMESA) @@ -25565,7 +25602,7 @@ GL_PREFIX(WindowPos2svMESA): GL_PREFIX(WindowPos3dMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5432(%rax), %r11 + movq 5440(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -25577,13 +25614,13 @@ GL_PREFIX(WindowPos3dMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5432(%rax), %r11 + movq 5440(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5432(%rax), %r11 + movq 5440(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -25595,7 +25632,7 @@ GL_PREFIX(WindowPos3dMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5432(%rax), %r11 + movq 5440(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3dMESA), .-GL_PREFIX(WindowPos3dMESA) @@ -25606,25 +25643,25 @@ GL_PREFIX(WindowPos3dMESA): GL_PREFIX(WindowPos3dvMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5440(%rax), %r11 + movq 5448(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5440(%rax), %r11 + movq 5448(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5440(%rax), %r11 + movq 5448(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5440(%rax), %r11 + movq 5448(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3dvMESA), .-GL_PREFIX(WindowPos3dvMESA) @@ -25635,7 +25672,7 @@ GL_PREFIX(WindowPos3dvMESA): GL_PREFIX(WindowPos3fMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5448(%rax), %r11 + movq 5456(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -25647,13 +25684,13 @@ GL_PREFIX(WindowPos3fMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5448(%rax), %r11 + movq 5456(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5448(%rax), %r11 + movq 5456(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -25665,7 +25702,7 @@ GL_PREFIX(WindowPos3fMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5448(%rax), %r11 + movq 5456(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3fMESA), .-GL_PREFIX(WindowPos3fMESA) @@ -25676,25 +25713,25 @@ GL_PREFIX(WindowPos3fMESA): GL_PREFIX(WindowPos3fvMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5456(%rax), %r11 + movq 5464(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5456(%rax), %r11 + movq 5464(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5456(%rax), %r11 + movq 5464(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5456(%rax), %r11 + movq 5464(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3fvMESA), .-GL_PREFIX(WindowPos3fvMESA) @@ -25705,7 +25742,7 @@ GL_PREFIX(WindowPos3fvMESA): GL_PREFIX(WindowPos3iMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5464(%rax), %r11 + movq 5472(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25715,13 +25752,13 @@ GL_PREFIX(WindowPos3iMESA): popq %rdx popq %rsi popq %rdi - movq 5464(%rax), %r11 + movq 5472(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5464(%rax), %r11 + movq 5472(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25731,7 +25768,7 @@ GL_PREFIX(WindowPos3iMESA): popq %rdx popq %rsi popq %rdi - movq 5464(%rax), %r11 + movq 5472(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3iMESA), .-GL_PREFIX(WindowPos3iMESA) @@ -25742,25 +25779,25 @@ GL_PREFIX(WindowPos3iMESA): GL_PREFIX(WindowPos3ivMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5472(%rax), %r11 + movq 5480(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5472(%rax), %r11 + movq 5480(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5472(%rax), %r11 + movq 5480(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5472(%rax), %r11 + movq 5480(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3ivMESA), .-GL_PREFIX(WindowPos3ivMESA) @@ -25771,7 +25808,7 @@ GL_PREFIX(WindowPos3ivMESA): GL_PREFIX(WindowPos3sMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5480(%rax), %r11 + movq 5488(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25781,13 +25818,13 @@ GL_PREFIX(WindowPos3sMESA): popq %rdx popq %rsi popq %rdi - movq 5480(%rax), %r11 + movq 5488(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5480(%rax), %r11 + movq 5488(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25797,7 +25834,7 @@ GL_PREFIX(WindowPos3sMESA): popq %rdx popq %rsi popq %rdi - movq 5480(%rax), %r11 + movq 5488(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3sMESA), .-GL_PREFIX(WindowPos3sMESA) @@ -25808,25 +25845,25 @@ GL_PREFIX(WindowPos3sMESA): GL_PREFIX(WindowPos3svMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5488(%rax), %r11 + movq 5496(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5488(%rax), %r11 + movq 5496(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5488(%rax), %r11 + movq 5496(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5488(%rax), %r11 + movq 5496(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3svMESA), .-GL_PREFIX(WindowPos3svMESA) @@ -25837,7 +25874,7 @@ GL_PREFIX(WindowPos3svMESA): GL_PREFIX(WindowPos4dMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5496(%rax), %r11 + movq 5504(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $40, %rsp @@ -25851,13 +25888,13 @@ GL_PREFIX(WindowPos4dMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $40, %rsp - movq 5496(%rax), %r11 + movq 5504(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5496(%rax), %r11 + movq 5504(%rax), %r11 jmp *%r11 1: subq $40, %rsp @@ -25871,7 +25908,7 @@ GL_PREFIX(WindowPos4dMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $40, %rsp - movq 5496(%rax), %r11 + movq 5504(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4dMESA), .-GL_PREFIX(WindowPos4dMESA) @@ -25882,25 +25919,25 @@ GL_PREFIX(WindowPos4dMESA): GL_PREFIX(WindowPos4dvMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5504(%rax), %r11 + movq 5512(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5504(%rax), %r11 + movq 5512(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5504(%rax), %r11 + movq 5512(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5504(%rax), %r11 + movq 5512(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4dvMESA), .-GL_PREFIX(WindowPos4dvMESA) @@ -25911,7 +25948,7 @@ GL_PREFIX(WindowPos4dvMESA): GL_PREFIX(WindowPos4fMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5512(%rax), %r11 + movq 5520(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $40, %rsp @@ -25925,13 +25962,13 @@ GL_PREFIX(WindowPos4fMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $40, %rsp - movq 5512(%rax), %r11 + movq 5520(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5512(%rax), %r11 + movq 5520(%rax), %r11 jmp *%r11 1: subq $40, %rsp @@ -25945,7 +25982,7 @@ GL_PREFIX(WindowPos4fMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $40, %rsp - movq 5512(%rax), %r11 + movq 5520(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4fMESA), .-GL_PREFIX(WindowPos4fMESA) @@ -25956,25 +25993,25 @@ GL_PREFIX(WindowPos4fMESA): GL_PREFIX(WindowPos4fvMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5520(%rax), %r11 + movq 5528(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5520(%rax), %r11 + movq 5528(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5520(%rax), %r11 + movq 5528(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5520(%rax), %r11 + movq 5528(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4fvMESA), .-GL_PREFIX(WindowPos4fvMESA) @@ -25985,7 +26022,7 @@ GL_PREFIX(WindowPos4fvMESA): GL_PREFIX(WindowPos4iMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5528(%rax), %r11 + movq 5536(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25999,13 +26036,13 @@ GL_PREFIX(WindowPos4iMESA): popq %rdx popq %rsi popq %rdi - movq 5528(%rax), %r11 + movq 5536(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5528(%rax), %r11 + movq 5536(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26019,7 +26056,7 @@ GL_PREFIX(WindowPos4iMESA): popq %rdx popq %rsi popq %rdi - movq 5528(%rax), %r11 + movq 5536(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4iMESA), .-GL_PREFIX(WindowPos4iMESA) @@ -26030,25 +26067,25 @@ GL_PREFIX(WindowPos4iMESA): GL_PREFIX(WindowPos4ivMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5536(%rax), %r11 + movq 5544(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5536(%rax), %r11 + movq 5544(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5536(%rax), %r11 + movq 5544(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5536(%rax), %r11 + movq 5544(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4ivMESA), .-GL_PREFIX(WindowPos4ivMESA) @@ -26059,7 +26096,7 @@ GL_PREFIX(WindowPos4ivMESA): GL_PREFIX(WindowPos4sMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5544(%rax), %r11 + movq 5552(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26073,13 +26110,13 @@ GL_PREFIX(WindowPos4sMESA): popq %rdx popq %rsi popq %rdi - movq 5544(%rax), %r11 + movq 5552(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5544(%rax), %r11 + movq 5552(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26093,7 +26130,7 @@ GL_PREFIX(WindowPos4sMESA): popq %rdx popq %rsi popq %rdi - movq 5544(%rax), %r11 + movq 5552(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4sMESA), .-GL_PREFIX(WindowPos4sMESA) @@ -26102,51 +26139,13 @@ GL_PREFIX(WindowPos4sMESA): .globl GL_PREFIX(WindowPos4svMESA) .type GL_PREFIX(WindowPos4svMESA), @function GL_PREFIX(WindowPos4svMESA): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 5552(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rdi - call _x86_64_get_dispatch@PLT - popq %rdi - movq 5552(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 5552(%rax), %r11 - jmp *%r11 -1: - pushq %rdi - call _glapi_get_dispatch - popq %rdi - movq 5552(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(WindowPos4svMESA), .-GL_PREFIX(WindowPos4svMESA) - - .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_695) - .type GL_PREFIX(_dispatch_stub_695), @function - HIDDEN(GL_PREFIX(_dispatch_stub_695)) -GL_PREFIX(_dispatch_stub_695): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 5560(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi - pushq %rsi - pushq %rdx - pushq %rcx - pushq %r8 call _x86_64_get_dispatch@PLT - popq %r8 - popq %rcx - popq %rdx - popq %rsi popq %rdi movq 5560(%rax), %r11 jmp *%r11 @@ -26158,20 +26157,12 @@ GL_PREFIX(_dispatch_stub_695): jmp *%r11 1: pushq %rdi - pushq %rsi - pushq %rdx - pushq %rcx - pushq %r8 call _glapi_get_dispatch - popq %r8 - popq %rcx - popq %rdx - popq %rsi popq %rdi movq 5560(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_695), .-GL_PREFIX(_dispatch_stub_695) + .size GL_PREFIX(WindowPos4svMESA), .-GL_PREFIX(WindowPos4svMESA) .p2align 4,,15 .globl GL_PREFIX(_dispatch_stub_696) @@ -26188,11 +26179,7 @@ GL_PREFIX(_dispatch_stub_696): pushq %rdx pushq %rcx pushq %r8 - pushq %r9 - pushq %rbp call _x86_64_get_dispatch@PLT - popq %rbp - popq %r9 popq %r8 popq %rcx popq %rdx @@ -26212,11 +26199,7 @@ GL_PREFIX(_dispatch_stub_696): pushq %rdx pushq %rcx pushq %r8 - pushq %r9 - pushq %rbp call _glapi_get_dispatch - popq %rbp - popq %r9 popq %r8 popq %rcx popq %rdx @@ -26239,9 +26222,17 @@ GL_PREFIX(_dispatch_stub_697): #elif defined(PTHREADS) pushq %rdi pushq %rsi + pushq %rdx + pushq %rcx + pushq %r8 + pushq %r9 pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp + popq %r9 + popq %r8 + popq %rcx + popq %rdx popq %rsi popq %rdi movq 5576(%rax), %r11 @@ -26255,9 +26246,17 @@ GL_PREFIX(_dispatch_stub_697): 1: pushq %rdi pushq %rsi + pushq %rdx + pushq %rcx + pushq %r8 + pushq %r9 pushq %rbp call _glapi_get_dispatch popq %rbp + popq %r9 + popq %r8 + popq %rcx + popq %rdx popq %rsi popq %rdi movq 5576(%rax), %r11 @@ -26276,7 +26275,11 @@ GL_PREFIX(_dispatch_stub_698): jmp *%r11 #elif defined(PTHREADS) pushq %rdi + pushq %rsi + pushq %rbp call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi popq %rdi movq 5584(%rax), %r11 jmp *%r11 @@ -26288,7 +26291,11 @@ GL_PREFIX(_dispatch_stub_698): jmp *%r11 1: pushq %rdi + pushq %rsi + pushq %rbp call _glapi_get_dispatch + popq %rbp + popq %rsi popq %rdi movq 5584(%rax), %r11 jmp *%r11 @@ -26306,11 +26313,7 @@ GL_PREFIX(_dispatch_stub_699): jmp *%r11 #elif defined(PTHREADS) pushq %rdi - pushq %rsi - pushq %rbp call _x86_64_get_dispatch@PLT - popq %rbp - popq %rsi popq %rdi movq 5592(%rax), %r11 jmp *%r11 @@ -26322,11 +26325,7 @@ GL_PREFIX(_dispatch_stub_699): jmp *%r11 1: pushq %rdi - pushq %rsi - pushq %rbp call _glapi_get_dispatch - popq %rbp - popq %rsi popq %rdi movq 5592(%rax), %r11 jmp *%r11 @@ -26345,9 +26344,9 @@ GL_PREFIX(_dispatch_stub_700): #elif defined(PTHREADS) pushq %rdi pushq %rsi - pushq %rdx + pushq %rbp call _x86_64_get_dispatch@PLT - popq %rdx + popq %rbp popq %rsi popq %rdi movq 5600(%rax), %r11 @@ -26361,9 +26360,9 @@ GL_PREFIX(_dispatch_stub_700): 1: pushq %rdi pushq %rsi - pushq %rdx + pushq %rbp call _glapi_get_dispatch - popq %rdx + popq %rbp popq %rsi popq %rdi movq 5600(%rax), %r11 @@ -26382,7 +26381,11 @@ GL_PREFIX(_dispatch_stub_701): jmp *%r11 #elif defined(PTHREADS) pushq %rdi + pushq %rsi + pushq %rdx call _x86_64_get_dispatch@PLT + popq %rdx + popq %rsi popq %rdi movq 5608(%rax), %r11 jmp *%r11 @@ -26394,7 +26397,11 @@ GL_PREFIX(_dispatch_stub_701): jmp *%r11 1: pushq %rdi + pushq %rsi + pushq %rdx call _glapi_get_dispatch + popq %rdx + popq %rsi popq %rdi movq 5608(%rax), %r11 jmp *%r11 @@ -26412,11 +26419,7 @@ GL_PREFIX(_dispatch_stub_702): jmp *%r11 #elif defined(PTHREADS) pushq %rdi - pushq %rsi - pushq %rbp call _x86_64_get_dispatch@PLT - popq %rbp - popq %rsi popq %rdi movq 5616(%rax), %r11 jmp *%r11 @@ -26428,11 +26431,7 @@ GL_PREFIX(_dispatch_stub_702): jmp *%r11 1: pushq %rdi - pushq %rsi - pushq %rbp call _glapi_get_dispatch - popq %rbp - popq %rsi popq %rdi movq 5616(%rax), %r11 jmp *%r11 @@ -26450,7 +26449,11 @@ GL_PREFIX(_dispatch_stub_703): jmp *%r11 #elif defined(PTHREADS) pushq %rdi + pushq %rsi + pushq %rbp call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi popq %rdi movq 5624(%rax), %r11 jmp *%r11 @@ -26462,20 +26465,54 @@ GL_PREFIX(_dispatch_stub_703): jmp *%r11 1: pushq %rdi + pushq %rsi + pushq %rbp call _glapi_get_dispatch + popq %rbp + popq %rsi popq %rdi movq 5624(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(_dispatch_stub_703), .-GL_PREFIX(_dispatch_stub_703) + .p2align 4,,15 + .globl GL_PREFIX(_dispatch_stub_704) + .type GL_PREFIX(_dispatch_stub_704), @function + HIDDEN(GL_PREFIX(_dispatch_stub_704)) +GL_PREFIX(_dispatch_stub_704): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 5632(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + call _x86_64_get_dispatch@PLT + popq %rdi + movq 5632(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 5632(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + call _glapi_get_dispatch + popq %rdi + movq 5632(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_704), .-GL_PREFIX(_dispatch_stub_704) + .p2align 4,,15 .globl GL_PREFIX(AreProgramsResidentNV) .type GL_PREFIX(AreProgramsResidentNV), @function GL_PREFIX(AreProgramsResidentNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5632(%rax), %r11 + movq 5640(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26485,13 +26522,13 @@ GL_PREFIX(AreProgramsResidentNV): popq %rdx popq %rsi popq %rdi - movq 5632(%rax), %r11 + movq 5640(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5632(%rax), %r11 + movq 5640(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26501,7 +26538,7 @@ GL_PREFIX(AreProgramsResidentNV): popq %rdx popq %rsi popq %rdi - movq 5632(%rax), %r11 + movq 5640(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(AreProgramsResidentNV), .-GL_PREFIX(AreProgramsResidentNV) @@ -26512,7 +26549,7 @@ GL_PREFIX(AreProgramsResidentNV): GL_PREFIX(BindProgramNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5640(%rax), %r11 + movq 5648(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26522,13 +26559,13 @@ GL_PREFIX(BindProgramNV): popq %rbp popq %rsi popq %rdi - movq 5640(%rax), %r11 + movq 5648(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5640(%rax), %r11 + movq 5648(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26538,7 +26575,7 @@ GL_PREFIX(BindProgramNV): popq %rbp popq %rsi popq %rdi - movq 5640(%rax), %r11 + movq 5648(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindProgramNV), .-GL_PREFIX(BindProgramNV) @@ -26549,7 +26586,7 @@ GL_PREFIX(BindProgramNV): GL_PREFIX(DeleteProgramsNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5648(%rax), %r11 + movq 5656(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26559,13 +26596,13 @@ GL_PREFIX(DeleteProgramsNV): popq %rbp popq %rsi popq %rdi - movq 5648(%rax), %r11 + movq 5656(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5648(%rax), %r11 + movq 5656(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26575,7 +26612,7 @@ GL_PREFIX(DeleteProgramsNV): popq %rbp popq %rsi popq %rdi - movq 5648(%rax), %r11 + movq 5656(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DeleteProgramsNV), .-GL_PREFIX(DeleteProgramsNV) @@ -26586,7 +26623,7 @@ GL_PREFIX(DeleteProgramsNV): GL_PREFIX(ExecuteProgramNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5656(%rax), %r11 + movq 5664(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26596,13 +26633,13 @@ GL_PREFIX(ExecuteProgramNV): popq %rdx popq %rsi popq %rdi - movq 5656(%rax), %r11 + movq 5664(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5656(%rax), %r11 + movq 5664(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26612,7 +26649,7 @@ GL_PREFIX(ExecuteProgramNV): popq %rdx popq %rsi popq %rdi - movq 5656(%rax), %r11 + movq 5664(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ExecuteProgramNV), .-GL_PREFIX(ExecuteProgramNV) @@ -26623,7 +26660,7 @@ GL_PREFIX(ExecuteProgramNV): GL_PREFIX(GenProgramsNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5664(%rax), %r11 + movq 5672(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26633,13 +26670,13 @@ GL_PREFIX(GenProgramsNV): popq %rbp popq %rsi popq %rdi - movq 5664(%rax), %r11 + movq 5672(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5664(%rax), %r11 + movq 5672(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26649,7 +26686,7 @@ GL_PREFIX(GenProgramsNV): popq %rbp popq %rsi popq %rdi - movq 5664(%rax), %r11 + movq 5672(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GenProgramsNV), .-GL_PREFIX(GenProgramsNV) @@ -26660,7 +26697,7 @@ GL_PREFIX(GenProgramsNV): GL_PREFIX(GetProgramParameterdvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5672(%rax), %r11 + movq 5680(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26674,13 +26711,13 @@ GL_PREFIX(GetProgramParameterdvNV): popq %rdx popq %rsi popq %rdi - movq 5672(%rax), %r11 + movq 5680(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5672(%rax), %r11 + movq 5680(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26694,7 +26731,7 @@ GL_PREFIX(GetProgramParameterdvNV): popq %rdx popq %rsi popq %rdi - movq 5672(%rax), %r11 + movq 5680(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetProgramParameterdvNV), .-GL_PREFIX(GetProgramParameterdvNV) @@ -26705,7 +26742,7 @@ GL_PREFIX(GetProgramParameterdvNV): GL_PREFIX(GetProgramParameterfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5680(%rax), %r11 + movq 5688(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26719,13 +26756,13 @@ GL_PREFIX(GetProgramParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5680(%rax), %r11 + movq 5688(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5680(%rax), %r11 + movq 5688(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26739,7 +26776,7 @@ GL_PREFIX(GetProgramParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5680(%rax), %r11 + movq 5688(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetProgramParameterfvNV), .-GL_PREFIX(GetProgramParameterfvNV) @@ -26750,7 +26787,7 @@ GL_PREFIX(GetProgramParameterfvNV): GL_PREFIX(GetProgramStringNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5688(%rax), %r11 + movq 5696(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26760,13 +26797,13 @@ GL_PREFIX(GetProgramStringNV): popq %rdx popq %rsi popq %rdi - movq 5688(%rax), %r11 + movq 5696(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5688(%rax), %r11 + movq 5696(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26776,7 +26813,7 @@ GL_PREFIX(GetProgramStringNV): popq %rdx popq %rsi popq %rdi - movq 5688(%rax), %r11 + movq 5696(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetProgramStringNV), .-GL_PREFIX(GetProgramStringNV) @@ -26787,7 +26824,7 @@ GL_PREFIX(GetProgramStringNV): GL_PREFIX(GetProgramivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5696(%rax), %r11 + movq 5704(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26797,13 +26834,13 @@ GL_PREFIX(GetProgramivNV): popq %rdx popq %rsi popq %rdi - movq 5696(%rax), %r11 + movq 5704(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5696(%rax), %r11 + movq 5704(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26813,7 +26850,7 @@ GL_PREFIX(GetProgramivNV): popq %rdx popq %rsi popq %rdi - movq 5696(%rax), %r11 + movq 5704(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetProgramivNV), .-GL_PREFIX(GetProgramivNV) @@ -26824,7 +26861,7 @@ GL_PREFIX(GetProgramivNV): GL_PREFIX(GetTrackMatrixivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5704(%rax), %r11 + movq 5712(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26838,13 +26875,13 @@ GL_PREFIX(GetTrackMatrixivNV): popq %rdx popq %rsi popq %rdi - movq 5704(%rax), %r11 + movq 5712(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5704(%rax), %r11 + movq 5712(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26858,7 +26895,7 @@ GL_PREFIX(GetTrackMatrixivNV): popq %rdx popq %rsi popq %rdi - movq 5704(%rax), %r11 + movq 5712(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetTrackMatrixivNV), .-GL_PREFIX(GetTrackMatrixivNV) @@ -26869,7 +26906,7 @@ GL_PREFIX(GetTrackMatrixivNV): GL_PREFIX(GetVertexAttribPointervNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5712(%rax), %r11 + movq 5720(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26879,13 +26916,13 @@ GL_PREFIX(GetVertexAttribPointervNV): popq %rdx popq %rsi popq %rdi - movq 5712(%rax), %r11 + movq 5720(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5712(%rax), %r11 + movq 5720(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26895,7 +26932,7 @@ GL_PREFIX(GetVertexAttribPointervNV): popq %rdx popq %rsi popq %rdi - movq 5712(%rax), %r11 + movq 5720(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetVertexAttribPointervNV), .-GL_PREFIX(GetVertexAttribPointervNV) @@ -26906,7 +26943,7 @@ GL_PREFIX(GetVertexAttribPointervNV): GL_PREFIX(GetVertexAttribdvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5720(%rax), %r11 + movq 5728(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26916,13 +26953,13 @@ GL_PREFIX(GetVertexAttribdvNV): popq %rdx popq %rsi popq %rdi - movq 5720(%rax), %r11 + movq 5728(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5720(%rax), %r11 + movq 5728(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26932,7 +26969,7 @@ GL_PREFIX(GetVertexAttribdvNV): popq %rdx popq %rsi popq %rdi - movq 5720(%rax), %r11 + movq 5728(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetVertexAttribdvNV), .-GL_PREFIX(GetVertexAttribdvNV) @@ -26943,7 +26980,7 @@ GL_PREFIX(GetVertexAttribdvNV): GL_PREFIX(GetVertexAttribfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5728(%rax), %r11 + movq 5736(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26953,13 +26990,13 @@ GL_PREFIX(GetVertexAttribfvNV): popq %rdx popq %rsi popq %rdi - movq 5728(%rax), %r11 + movq 5736(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5728(%rax), %r11 + movq 5736(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26969,7 +27006,7 @@ GL_PREFIX(GetVertexAttribfvNV): popq %rdx popq %rsi popq %rdi - movq 5728(%rax), %r11 + movq 5736(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetVertexAttribfvNV), .-GL_PREFIX(GetVertexAttribfvNV) @@ -26980,7 +27017,7 @@ GL_PREFIX(GetVertexAttribfvNV): GL_PREFIX(GetVertexAttribivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5736(%rax), %r11 + movq 5744(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26990,13 +27027,13 @@ GL_PREFIX(GetVertexAttribivNV): popq %rdx popq %rsi popq %rdi - movq 5736(%rax), %r11 + movq 5744(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5736(%rax), %r11 + movq 5744(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27006,7 +27043,7 @@ GL_PREFIX(GetVertexAttribivNV): popq %rdx popq %rsi popq %rdi - movq 5736(%rax), %r11 + movq 5744(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetVertexAttribivNV), .-GL_PREFIX(GetVertexAttribivNV) @@ -27017,25 +27054,25 @@ GL_PREFIX(GetVertexAttribivNV): GL_PREFIX(IsProgramNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5744(%rax), %r11 + movq 5752(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5744(%rax), %r11 + movq 5752(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5744(%rax), %r11 + movq 5752(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5744(%rax), %r11 + movq 5752(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(IsProgramNV), .-GL_PREFIX(IsProgramNV) @@ -27046,7 +27083,7 @@ GL_PREFIX(IsProgramNV): GL_PREFIX(LoadProgramNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5752(%rax), %r11 + movq 5760(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27060,13 +27097,13 @@ GL_PREFIX(LoadProgramNV): popq %rdx popq %rsi popq %rdi - movq 5752(%rax), %r11 + movq 5760(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5752(%rax), %r11 + movq 5760(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27080,7 +27117,7 @@ GL_PREFIX(LoadProgramNV): popq %rdx popq %rsi popq %rdi - movq 5752(%rax), %r11 + movq 5760(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(LoadProgramNV), .-GL_PREFIX(LoadProgramNV) @@ -27091,7 +27128,7 @@ GL_PREFIX(LoadProgramNV): GL_PREFIX(ProgramParameters4dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5760(%rax), %r11 + movq 5768(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27105,13 +27142,13 @@ GL_PREFIX(ProgramParameters4dvNV): popq %rdx popq %rsi popq %rdi - movq 5760(%rax), %r11 + movq 5768(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5760(%rax), %r11 + movq 5768(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27125,7 +27162,7 @@ GL_PREFIX(ProgramParameters4dvNV): popq %rdx popq %rsi popq %rdi - movq 5760(%rax), %r11 + movq 5768(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ProgramParameters4dvNV), .-GL_PREFIX(ProgramParameters4dvNV) @@ -27136,7 +27173,7 @@ GL_PREFIX(ProgramParameters4dvNV): GL_PREFIX(ProgramParameters4fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5768(%rax), %r11 + movq 5776(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27150,13 +27187,13 @@ GL_PREFIX(ProgramParameters4fvNV): popq %rdx popq %rsi popq %rdi - movq 5768(%rax), %r11 + movq 5776(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5768(%rax), %r11 + movq 5776(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27170,7 +27207,7 @@ GL_PREFIX(ProgramParameters4fvNV): popq %rdx popq %rsi popq %rdi - movq 5768(%rax), %r11 + movq 5776(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ProgramParameters4fvNV), .-GL_PREFIX(ProgramParameters4fvNV) @@ -27181,7 +27218,7 @@ GL_PREFIX(ProgramParameters4fvNV): GL_PREFIX(RequestResidentProgramsNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5776(%rax), %r11 + movq 5784(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27191,13 +27228,13 @@ GL_PREFIX(RequestResidentProgramsNV): popq %rbp popq %rsi popq %rdi - movq 5776(%rax), %r11 + movq 5784(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5776(%rax), %r11 + movq 5784(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27207,7 +27244,7 @@ GL_PREFIX(RequestResidentProgramsNV): popq %rbp popq %rsi popq %rdi - movq 5776(%rax), %r11 + movq 5784(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(RequestResidentProgramsNV), .-GL_PREFIX(RequestResidentProgramsNV) @@ -27218,7 +27255,7 @@ GL_PREFIX(RequestResidentProgramsNV): GL_PREFIX(TrackMatrixNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5784(%rax), %r11 + movq 5792(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27232,13 +27269,13 @@ GL_PREFIX(TrackMatrixNV): popq %rdx popq %rsi popq %rdi - movq 5784(%rax), %r11 + movq 5792(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5784(%rax), %r11 + movq 5792(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27252,7 +27289,7 @@ GL_PREFIX(TrackMatrixNV): popq %rdx popq %rsi popq %rdi - movq 5784(%rax), %r11 + movq 5792(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TrackMatrixNV), .-GL_PREFIX(TrackMatrixNV) @@ -27263,7 +27300,7 @@ GL_PREFIX(TrackMatrixNV): GL_PREFIX(VertexAttrib1dNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5792(%rax), %r11 + movq 5800(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -27273,13 +27310,13 @@ GL_PREFIX(VertexAttrib1dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5792(%rax), %r11 + movq 5800(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5792(%rax), %r11 + movq 5800(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -27289,7 +27326,7 @@ GL_PREFIX(VertexAttrib1dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5792(%rax), %r11 + movq 5800(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib1dNV), .-GL_PREFIX(VertexAttrib1dNV) @@ -27300,7 +27337,7 @@ GL_PREFIX(VertexAttrib1dNV): GL_PREFIX(VertexAttrib1dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5800(%rax), %r11 + movq 5808(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27310,13 +27347,13 @@ GL_PREFIX(VertexAttrib1dvNV): popq %rbp popq %rsi popq %rdi - movq 5800(%rax), %r11 + movq 5808(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5800(%rax), %r11 + movq 5808(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27326,7 +27363,7 @@ GL_PREFIX(VertexAttrib1dvNV): popq %rbp popq %rsi popq %rdi - movq 5800(%rax), %r11 + movq 5808(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib1dvNV), .-GL_PREFIX(VertexAttrib1dvNV) @@ -27337,7 +27374,7 @@ GL_PREFIX(VertexAttrib1dvNV): GL_PREFIX(VertexAttrib1fNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5808(%rax), %r11 + movq 5816(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -27347,13 +27384,13 @@ GL_PREFIX(VertexAttrib1fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5808(%rax), %r11 + movq 5816(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5808(%rax), %r11 + movq 5816(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -27363,7 +27400,7 @@ GL_PREFIX(VertexAttrib1fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5808(%rax), %r11 + movq 5816(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib1fNV), .-GL_PREFIX(VertexAttrib1fNV) @@ -27374,7 +27411,7 @@ GL_PREFIX(VertexAttrib1fNV): GL_PREFIX(VertexAttrib1fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5816(%rax), %r11 + movq 5824(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27384,13 +27421,13 @@ GL_PREFIX(VertexAttrib1fvNV): popq %rbp popq %rsi popq %rdi - movq 5816(%rax), %r11 + movq 5824(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5816(%rax), %r11 + movq 5824(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27400,7 +27437,7 @@ GL_PREFIX(VertexAttrib1fvNV): popq %rbp popq %rsi popq %rdi - movq 5816(%rax), %r11 + movq 5824(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib1fvNV), .-GL_PREFIX(VertexAttrib1fvNV) @@ -27411,7 +27448,7 @@ GL_PREFIX(VertexAttrib1fvNV): GL_PREFIX(VertexAttrib1sNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5824(%rax), %r11 + movq 5832(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27421,13 +27458,13 @@ GL_PREFIX(VertexAttrib1sNV): popq %rbp popq %rsi popq %rdi - movq 5824(%rax), %r11 + movq 5832(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5824(%rax), %r11 + movq 5832(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27437,7 +27474,7 @@ GL_PREFIX(VertexAttrib1sNV): popq %rbp popq %rsi popq %rdi - movq 5824(%rax), %r11 + movq 5832(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib1sNV), .-GL_PREFIX(VertexAttrib1sNV) @@ -27448,7 +27485,7 @@ GL_PREFIX(VertexAttrib1sNV): GL_PREFIX(VertexAttrib1svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5832(%rax), %r11 + movq 5840(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27458,13 +27495,13 @@ GL_PREFIX(VertexAttrib1svNV): popq %rbp popq %rsi popq %rdi - movq 5832(%rax), %r11 + movq 5840(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5832(%rax), %r11 + movq 5840(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27474,7 +27511,7 @@ GL_PREFIX(VertexAttrib1svNV): popq %rbp popq %rsi popq %rdi - movq 5832(%rax), %r11 + movq 5840(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib1svNV), .-GL_PREFIX(VertexAttrib1svNV) @@ -27485,7 +27522,7 @@ GL_PREFIX(VertexAttrib1svNV): GL_PREFIX(VertexAttrib2dNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5840(%rax), %r11 + movq 5848(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -27497,13 +27534,13 @@ GL_PREFIX(VertexAttrib2dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5840(%rax), %r11 + movq 5848(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5840(%rax), %r11 + movq 5848(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -27515,7 +27552,7 @@ GL_PREFIX(VertexAttrib2dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5840(%rax), %r11 + movq 5848(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib2dNV), .-GL_PREFIX(VertexAttrib2dNV) @@ -27526,7 +27563,7 @@ GL_PREFIX(VertexAttrib2dNV): GL_PREFIX(VertexAttrib2dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5848(%rax), %r11 + movq 5856(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27536,13 +27573,13 @@ GL_PREFIX(VertexAttrib2dvNV): popq %rbp popq %rsi popq %rdi - movq 5848(%rax), %r11 + movq 5856(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5848(%rax), %r11 + movq 5856(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27552,7 +27589,7 @@ GL_PREFIX(VertexAttrib2dvNV): popq %rbp popq %rsi popq %rdi - movq 5848(%rax), %r11 + movq 5856(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib2dvNV), .-GL_PREFIX(VertexAttrib2dvNV) @@ -27563,7 +27600,7 @@ GL_PREFIX(VertexAttrib2dvNV): GL_PREFIX(VertexAttrib2fNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5856(%rax), %r11 + movq 5864(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -27575,13 +27612,13 @@ GL_PREFIX(VertexAttrib2fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5856(%rax), %r11 + movq 5864(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5856(%rax), %r11 + movq 5864(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -27593,7 +27630,7 @@ GL_PREFIX(VertexAttrib2fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5856(%rax), %r11 + movq 5864(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib2fNV), .-GL_PREFIX(VertexAttrib2fNV) @@ -27604,7 +27641,7 @@ GL_PREFIX(VertexAttrib2fNV): GL_PREFIX(VertexAttrib2fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5864(%rax), %r11 + movq 5872(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27614,13 +27651,13 @@ GL_PREFIX(VertexAttrib2fvNV): popq %rbp popq %rsi popq %rdi - movq 5864(%rax), %r11 + movq 5872(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5864(%rax), %r11 + movq 5872(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27630,7 +27667,7 @@ GL_PREFIX(VertexAttrib2fvNV): popq %rbp popq %rsi popq %rdi - movq 5864(%rax), %r11 + movq 5872(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib2fvNV), .-GL_PREFIX(VertexAttrib2fvNV) @@ -27641,7 +27678,7 @@ GL_PREFIX(VertexAttrib2fvNV): GL_PREFIX(VertexAttrib2sNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5872(%rax), %r11 + movq 5880(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27651,13 +27688,13 @@ GL_PREFIX(VertexAttrib2sNV): popq %rdx popq %rsi popq %rdi - movq 5872(%rax), %r11 + movq 5880(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5872(%rax), %r11 + movq 5880(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27667,7 +27704,7 @@ GL_PREFIX(VertexAttrib2sNV): popq %rdx popq %rsi popq %rdi - movq 5872(%rax), %r11 + movq 5880(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib2sNV), .-GL_PREFIX(VertexAttrib2sNV) @@ -27678,7 +27715,7 @@ GL_PREFIX(VertexAttrib2sNV): GL_PREFIX(VertexAttrib2svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5880(%rax), %r11 + movq 5888(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27688,13 +27725,13 @@ GL_PREFIX(VertexAttrib2svNV): popq %rbp popq %rsi popq %rdi - movq 5880(%rax), %r11 + movq 5888(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5880(%rax), %r11 + movq 5888(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27704,7 +27741,7 @@ GL_PREFIX(VertexAttrib2svNV): popq %rbp popq %rsi popq %rdi - movq 5880(%rax), %r11 + movq 5888(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib2svNV), .-GL_PREFIX(VertexAttrib2svNV) @@ -27715,7 +27752,7 @@ GL_PREFIX(VertexAttrib2svNV): GL_PREFIX(VertexAttrib3dNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5888(%rax), %r11 + movq 5896(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $40, %rsp @@ -27729,13 +27766,13 @@ GL_PREFIX(VertexAttrib3dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 5888(%rax), %r11 + movq 5896(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5888(%rax), %r11 + movq 5896(%rax), %r11 jmp *%r11 1: subq $40, %rsp @@ -27749,7 +27786,7 @@ GL_PREFIX(VertexAttrib3dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 5888(%rax), %r11 + movq 5896(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib3dNV), .-GL_PREFIX(VertexAttrib3dNV) @@ -27760,7 +27797,7 @@ GL_PREFIX(VertexAttrib3dNV): GL_PREFIX(VertexAttrib3dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5896(%rax), %r11 + movq 5904(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27770,13 +27807,13 @@ GL_PREFIX(VertexAttrib3dvNV): popq %rbp popq %rsi popq %rdi - movq 5896(%rax), %r11 + movq 5904(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5896(%rax), %r11 + movq 5904(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27786,7 +27823,7 @@ GL_PREFIX(VertexAttrib3dvNV): popq %rbp popq %rsi popq %rdi - movq 5896(%rax), %r11 + movq 5904(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib3dvNV), .-GL_PREFIX(VertexAttrib3dvNV) @@ -27797,7 +27834,7 @@ GL_PREFIX(VertexAttrib3dvNV): GL_PREFIX(VertexAttrib3fNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5904(%rax), %r11 + movq 5912(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $40, %rsp @@ -27811,13 +27848,13 @@ GL_PREFIX(VertexAttrib3fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 5904(%rax), %r11 + movq 5912(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5904(%rax), %r11 + movq 5912(%rax), %r11 jmp *%r11 1: subq $40, %rsp @@ -27831,7 +27868,7 @@ GL_PREFIX(VertexAttrib3fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 5904(%rax), %r11 + movq 5912(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib3fNV), .-GL_PREFIX(VertexAttrib3fNV) @@ -27842,7 +27879,7 @@ GL_PREFIX(VertexAttrib3fNV): GL_PREFIX(VertexAttrib3fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5912(%rax), %r11 + movq 5920(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27852,13 +27889,13 @@ GL_PREFIX(VertexAttrib3fvNV): popq %rbp popq %rsi popq %rdi - movq 5912(%rax), %r11 + movq 5920(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5912(%rax), %r11 + movq 5920(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27868,7 +27905,7 @@ GL_PREFIX(VertexAttrib3fvNV): popq %rbp popq %rsi popq %rdi - movq 5912(%rax), %r11 + movq 5920(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib3fvNV), .-GL_PREFIX(VertexAttrib3fvNV) @@ -27879,7 +27916,7 @@ GL_PREFIX(VertexAttrib3fvNV): GL_PREFIX(VertexAttrib3sNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5920(%rax), %r11 + movq 5928(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27893,13 +27930,13 @@ GL_PREFIX(VertexAttrib3sNV): popq %rdx popq %rsi popq %rdi - movq 5920(%rax), %r11 + movq 5928(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5920(%rax), %r11 + movq 5928(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27913,7 +27950,7 @@ GL_PREFIX(VertexAttrib3sNV): popq %rdx popq %rsi popq %rdi - movq 5920(%rax), %r11 + movq 5928(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib3sNV), .-GL_PREFIX(VertexAttrib3sNV) @@ -27924,7 +27961,7 @@ GL_PREFIX(VertexAttrib3sNV): GL_PREFIX(VertexAttrib3svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5928(%rax), %r11 + movq 5936(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27934,13 +27971,13 @@ GL_PREFIX(VertexAttrib3svNV): popq %rbp popq %rsi popq %rdi - movq 5928(%rax), %r11 + movq 5936(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5928(%rax), %r11 + movq 5936(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27950,7 +27987,7 @@ GL_PREFIX(VertexAttrib3svNV): popq %rbp popq %rsi popq %rdi - movq 5928(%rax), %r11 + movq 5936(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib3svNV), .-GL_PREFIX(VertexAttrib3svNV) @@ -27961,7 +27998,7 @@ GL_PREFIX(VertexAttrib3svNV): GL_PREFIX(VertexAttrib4dNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5936(%rax), %r11 + movq 5944(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $40, %rsp @@ -27977,13 +28014,13 @@ GL_PREFIX(VertexAttrib4dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 5936(%rax), %r11 + movq 5944(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5936(%rax), %r11 + movq 5944(%rax), %r11 jmp *%r11 1: subq $40, %rsp @@ -27999,7 +28036,7 @@ GL_PREFIX(VertexAttrib4dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 5936(%rax), %r11 + movq 5944(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4dNV), .-GL_PREFIX(VertexAttrib4dNV) @@ -28010,7 +28047,7 @@ GL_PREFIX(VertexAttrib4dNV): GL_PREFIX(VertexAttrib4dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5944(%rax), %r11 + movq 5952(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28020,13 +28057,13 @@ GL_PREFIX(VertexAttrib4dvNV): popq %rbp popq %rsi popq %rdi - movq 5944(%rax), %r11 + movq 5952(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5944(%rax), %r11 + movq 5952(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28036,7 +28073,7 @@ GL_PREFIX(VertexAttrib4dvNV): popq %rbp popq %rsi popq %rdi - movq 5944(%rax), %r11 + movq 5952(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4dvNV), .-GL_PREFIX(VertexAttrib4dvNV) @@ -28047,7 +28084,7 @@ GL_PREFIX(VertexAttrib4dvNV): GL_PREFIX(VertexAttrib4fNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5952(%rax), %r11 + movq 5960(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $40, %rsp @@ -28063,13 +28100,13 @@ GL_PREFIX(VertexAttrib4fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 5952(%rax), %r11 + movq 5960(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5952(%rax), %r11 + movq 5960(%rax), %r11 jmp *%r11 1: subq $40, %rsp @@ -28085,7 +28122,7 @@ GL_PREFIX(VertexAttrib4fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 5952(%rax), %r11 + movq 5960(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4fNV), .-GL_PREFIX(VertexAttrib4fNV) @@ -28096,7 +28133,7 @@ GL_PREFIX(VertexAttrib4fNV): GL_PREFIX(VertexAttrib4fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5960(%rax), %r11 + movq 5968(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28106,13 +28143,13 @@ GL_PREFIX(VertexAttrib4fvNV): popq %rbp popq %rsi popq %rdi - movq 5960(%rax), %r11 + movq 5968(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5960(%rax), %r11 + movq 5968(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28122,7 +28159,7 @@ GL_PREFIX(VertexAttrib4fvNV): popq %rbp popq %rsi popq %rdi - movq 5960(%rax), %r11 + movq 5968(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4fvNV), .-GL_PREFIX(VertexAttrib4fvNV) @@ -28133,7 +28170,7 @@ GL_PREFIX(VertexAttrib4fvNV): GL_PREFIX(VertexAttrib4sNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5968(%rax), %r11 + movq 5976(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28147,13 +28184,13 @@ GL_PREFIX(VertexAttrib4sNV): popq %rdx popq %rsi popq %rdi - movq 5968(%rax), %r11 + movq 5976(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5968(%rax), %r11 + movq 5976(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28167,7 +28204,7 @@ GL_PREFIX(VertexAttrib4sNV): popq %rdx popq %rsi popq %rdi - movq 5968(%rax), %r11 + movq 5976(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4sNV), .-GL_PREFIX(VertexAttrib4sNV) @@ -28178,7 +28215,7 @@ GL_PREFIX(VertexAttrib4sNV): GL_PREFIX(VertexAttrib4svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5976(%rax), %r11 + movq 5984(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28188,13 +28225,13 @@ GL_PREFIX(VertexAttrib4svNV): popq %rbp popq %rsi popq %rdi - movq 5976(%rax), %r11 + movq 5984(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5976(%rax), %r11 + movq 5984(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28204,7 +28241,7 @@ GL_PREFIX(VertexAttrib4svNV): popq %rbp popq %rsi popq %rdi - movq 5976(%rax), %r11 + movq 5984(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4svNV), .-GL_PREFIX(VertexAttrib4svNV) @@ -28215,7 +28252,7 @@ GL_PREFIX(VertexAttrib4svNV): GL_PREFIX(VertexAttrib4ubNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5984(%rax), %r11 + movq 5992(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28229,13 +28266,13 @@ GL_PREFIX(VertexAttrib4ubNV): popq %rdx popq %rsi popq %rdi - movq 5984(%rax), %r11 + movq 5992(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5984(%rax), %r11 + movq 5992(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28249,7 +28286,7 @@ GL_PREFIX(VertexAttrib4ubNV): popq %rdx popq %rsi popq %rdi - movq 5984(%rax), %r11 + movq 5992(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4ubNV), .-GL_PREFIX(VertexAttrib4ubNV) @@ -28260,7 +28297,7 @@ GL_PREFIX(VertexAttrib4ubNV): GL_PREFIX(VertexAttrib4ubvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5992(%rax), %r11 + movq 6000(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28270,13 +28307,13 @@ GL_PREFIX(VertexAttrib4ubvNV): popq %rbp popq %rsi popq %rdi - movq 5992(%rax), %r11 + movq 6000(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5992(%rax), %r11 + movq 6000(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28286,7 +28323,7 @@ GL_PREFIX(VertexAttrib4ubvNV): popq %rbp popq %rsi popq %rdi - movq 5992(%rax), %r11 + movq 6000(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4ubvNV), .-GL_PREFIX(VertexAttrib4ubvNV) @@ -28297,7 +28334,7 @@ GL_PREFIX(VertexAttrib4ubvNV): GL_PREFIX(VertexAttribPointerNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6000(%rax), %r11 + movq 6008(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28311,13 +28348,13 @@ GL_PREFIX(VertexAttribPointerNV): popq %rdx popq %rsi popq %rdi - movq 6000(%rax), %r11 + movq 6008(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6000(%rax), %r11 + movq 6008(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28331,7 +28368,7 @@ GL_PREFIX(VertexAttribPointerNV): popq %rdx popq %rsi popq %rdi - movq 6000(%rax), %r11 + movq 6008(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribPointerNV), .-GL_PREFIX(VertexAttribPointerNV) @@ -28342,7 +28379,7 @@ GL_PREFIX(VertexAttribPointerNV): GL_PREFIX(VertexAttribs1dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6008(%rax), %r11 + movq 6016(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28352,13 +28389,13 @@ GL_PREFIX(VertexAttribs1dvNV): popq %rdx popq %rsi popq %rdi - movq 6008(%rax), %r11 + movq 6016(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6008(%rax), %r11 + movq 6016(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28368,7 +28405,7 @@ GL_PREFIX(VertexAttribs1dvNV): popq %rdx popq %rsi popq %rdi - movq 6008(%rax), %r11 + movq 6016(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs1dvNV), .-GL_PREFIX(VertexAttribs1dvNV) @@ -28379,7 +28416,7 @@ GL_PREFIX(VertexAttribs1dvNV): GL_PREFIX(VertexAttribs1fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6016(%rax), %r11 + movq 6024(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28389,13 +28426,13 @@ GL_PREFIX(VertexAttribs1fvNV): popq %rdx popq %rsi popq %rdi - movq 6016(%rax), %r11 + movq 6024(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6016(%rax), %r11 + movq 6024(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28405,7 +28442,7 @@ GL_PREFIX(VertexAttribs1fvNV): popq %rdx popq %rsi popq %rdi - movq 6016(%rax), %r11 + movq 6024(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs1fvNV), .-GL_PREFIX(VertexAttribs1fvNV) @@ -28416,7 +28453,7 @@ GL_PREFIX(VertexAttribs1fvNV): GL_PREFIX(VertexAttribs1svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6024(%rax), %r11 + movq 6032(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28426,13 +28463,13 @@ GL_PREFIX(VertexAttribs1svNV): popq %rdx popq %rsi popq %rdi - movq 6024(%rax), %r11 + movq 6032(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6024(%rax), %r11 + movq 6032(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28442,7 +28479,7 @@ GL_PREFIX(VertexAttribs1svNV): popq %rdx popq %rsi popq %rdi - movq 6024(%rax), %r11 + movq 6032(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs1svNV), .-GL_PREFIX(VertexAttribs1svNV) @@ -28453,7 +28490,7 @@ GL_PREFIX(VertexAttribs1svNV): GL_PREFIX(VertexAttribs2dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6032(%rax), %r11 + movq 6040(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28463,13 +28500,13 @@ GL_PREFIX(VertexAttribs2dvNV): popq %rdx popq %rsi popq %rdi - movq 6032(%rax), %r11 + movq 6040(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6032(%rax), %r11 + movq 6040(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28479,7 +28516,7 @@ GL_PREFIX(VertexAttribs2dvNV): popq %rdx popq %rsi popq %rdi - movq 6032(%rax), %r11 + movq 6040(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs2dvNV), .-GL_PREFIX(VertexAttribs2dvNV) @@ -28490,7 +28527,7 @@ GL_PREFIX(VertexAttribs2dvNV): GL_PREFIX(VertexAttribs2fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6040(%rax), %r11 + movq 6048(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28500,13 +28537,13 @@ GL_PREFIX(VertexAttribs2fvNV): popq %rdx popq %rsi popq %rdi - movq 6040(%rax), %r11 + movq 6048(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6040(%rax), %r11 + movq 6048(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28516,7 +28553,7 @@ GL_PREFIX(VertexAttribs2fvNV): popq %rdx popq %rsi popq %rdi - movq 6040(%rax), %r11 + movq 6048(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs2fvNV), .-GL_PREFIX(VertexAttribs2fvNV) @@ -28527,7 +28564,7 @@ GL_PREFIX(VertexAttribs2fvNV): GL_PREFIX(VertexAttribs2svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6048(%rax), %r11 + movq 6056(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28537,13 +28574,13 @@ GL_PREFIX(VertexAttribs2svNV): popq %rdx popq %rsi popq %rdi - movq 6048(%rax), %r11 + movq 6056(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6048(%rax), %r11 + movq 6056(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28553,7 +28590,7 @@ GL_PREFIX(VertexAttribs2svNV): popq %rdx popq %rsi popq %rdi - movq 6048(%rax), %r11 + movq 6056(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs2svNV), .-GL_PREFIX(VertexAttribs2svNV) @@ -28564,7 +28601,7 @@ GL_PREFIX(VertexAttribs2svNV): GL_PREFIX(VertexAttribs3dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6056(%rax), %r11 + movq 6064(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28574,13 +28611,13 @@ GL_PREFIX(VertexAttribs3dvNV): popq %rdx popq %rsi popq %rdi - movq 6056(%rax), %r11 + movq 6064(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6056(%rax), %r11 + movq 6064(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28590,7 +28627,7 @@ GL_PREFIX(VertexAttribs3dvNV): popq %rdx popq %rsi popq %rdi - movq 6056(%rax), %r11 + movq 6064(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs3dvNV), .-GL_PREFIX(VertexAttribs3dvNV) @@ -28601,7 +28638,7 @@ GL_PREFIX(VertexAttribs3dvNV): GL_PREFIX(VertexAttribs3fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6064(%rax), %r11 + movq 6072(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28611,13 +28648,13 @@ GL_PREFIX(VertexAttribs3fvNV): popq %rdx popq %rsi popq %rdi - movq 6064(%rax), %r11 + movq 6072(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6064(%rax), %r11 + movq 6072(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28627,7 +28664,7 @@ GL_PREFIX(VertexAttribs3fvNV): popq %rdx popq %rsi popq %rdi - movq 6064(%rax), %r11 + movq 6072(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs3fvNV), .-GL_PREFIX(VertexAttribs3fvNV) @@ -28638,7 +28675,7 @@ GL_PREFIX(VertexAttribs3fvNV): GL_PREFIX(VertexAttribs3svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6072(%rax), %r11 + movq 6080(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28648,13 +28685,13 @@ GL_PREFIX(VertexAttribs3svNV): popq %rdx popq %rsi popq %rdi - movq 6072(%rax), %r11 + movq 6080(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6072(%rax), %r11 + movq 6080(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28664,7 +28701,7 @@ GL_PREFIX(VertexAttribs3svNV): popq %rdx popq %rsi popq %rdi - movq 6072(%rax), %r11 + movq 6080(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs3svNV), .-GL_PREFIX(VertexAttribs3svNV) @@ -28675,7 +28712,7 @@ GL_PREFIX(VertexAttribs3svNV): GL_PREFIX(VertexAttribs4dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6080(%rax), %r11 + movq 6088(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28685,13 +28722,13 @@ GL_PREFIX(VertexAttribs4dvNV): popq %rdx popq %rsi popq %rdi - movq 6080(%rax), %r11 + movq 6088(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6080(%rax), %r11 + movq 6088(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28701,7 +28738,7 @@ GL_PREFIX(VertexAttribs4dvNV): popq %rdx popq %rsi popq %rdi - movq 6080(%rax), %r11 + movq 6088(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs4dvNV), .-GL_PREFIX(VertexAttribs4dvNV) @@ -28712,7 +28749,7 @@ GL_PREFIX(VertexAttribs4dvNV): GL_PREFIX(VertexAttribs4fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6088(%rax), %r11 + movq 6096(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28722,13 +28759,13 @@ GL_PREFIX(VertexAttribs4fvNV): popq %rdx popq %rsi popq %rdi - movq 6088(%rax), %r11 + movq 6096(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6088(%rax), %r11 + movq 6096(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28738,7 +28775,7 @@ GL_PREFIX(VertexAttribs4fvNV): popq %rdx popq %rsi popq %rdi - movq 6088(%rax), %r11 + movq 6096(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs4fvNV), .-GL_PREFIX(VertexAttribs4fvNV) @@ -28749,7 +28786,7 @@ GL_PREFIX(VertexAttribs4fvNV): GL_PREFIX(VertexAttribs4svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6096(%rax), %r11 + movq 6104(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28759,13 +28796,13 @@ GL_PREFIX(VertexAttribs4svNV): popq %rdx popq %rsi popq %rdi - movq 6096(%rax), %r11 + movq 6104(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6096(%rax), %r11 + movq 6104(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28775,7 +28812,7 @@ GL_PREFIX(VertexAttribs4svNV): popq %rdx popq %rsi popq %rdi - movq 6096(%rax), %r11 + movq 6104(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs4svNV), .-GL_PREFIX(VertexAttribs4svNV) @@ -28786,7 +28823,7 @@ GL_PREFIX(VertexAttribs4svNV): GL_PREFIX(VertexAttribs4ubvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6104(%rax), %r11 + movq 6112(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28796,13 +28833,13 @@ GL_PREFIX(VertexAttribs4ubvNV): popq %rdx popq %rsi popq %rdi - movq 6104(%rax), %r11 + movq 6112(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6104(%rax), %r11 + movq 6112(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28812,7 +28849,7 @@ GL_PREFIX(VertexAttribs4ubvNV): popq %rdx popq %rsi popq %rdi - movq 6104(%rax), %r11 + movq 6112(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs4ubvNV), .-GL_PREFIX(VertexAttribs4ubvNV) @@ -28823,7 +28860,7 @@ GL_PREFIX(VertexAttribs4ubvNV): GL_PREFIX(GetTexBumpParameterfvATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6112(%rax), %r11 + movq 6120(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28833,13 +28870,13 @@ GL_PREFIX(GetTexBumpParameterfvATI): popq %rbp popq %rsi popq %rdi - movq 6112(%rax), %r11 + movq 6120(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6112(%rax), %r11 + movq 6120(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28849,7 +28886,7 @@ GL_PREFIX(GetTexBumpParameterfvATI): popq %rbp popq %rsi popq %rdi - movq 6112(%rax), %r11 + movq 6120(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetTexBumpParameterfvATI), .-GL_PREFIX(GetTexBumpParameterfvATI) @@ -28860,7 +28897,7 @@ GL_PREFIX(GetTexBumpParameterfvATI): GL_PREFIX(GetTexBumpParameterivATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6120(%rax), %r11 + movq 6128(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28870,13 +28907,13 @@ GL_PREFIX(GetTexBumpParameterivATI): popq %rbp popq %rsi popq %rdi - movq 6120(%rax), %r11 + movq 6128(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6120(%rax), %r11 + movq 6128(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28886,7 +28923,7 @@ GL_PREFIX(GetTexBumpParameterivATI): popq %rbp popq %rsi popq %rdi - movq 6120(%rax), %r11 + movq 6128(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetTexBumpParameterivATI), .-GL_PREFIX(GetTexBumpParameterivATI) @@ -28897,7 +28934,7 @@ GL_PREFIX(GetTexBumpParameterivATI): GL_PREFIX(TexBumpParameterfvATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6128(%rax), %r11 + movq 6136(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28907,13 +28944,13 @@ GL_PREFIX(TexBumpParameterfvATI): popq %rbp popq %rsi popq %rdi - movq 6128(%rax), %r11 + movq 6136(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6128(%rax), %r11 + movq 6136(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28923,7 +28960,7 @@ GL_PREFIX(TexBumpParameterfvATI): popq %rbp popq %rsi popq %rdi - movq 6128(%rax), %r11 + movq 6136(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TexBumpParameterfvATI), .-GL_PREFIX(TexBumpParameterfvATI) @@ -28934,7 +28971,7 @@ GL_PREFIX(TexBumpParameterfvATI): GL_PREFIX(TexBumpParameterivATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6136(%rax), %r11 + movq 6144(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28944,13 +28981,13 @@ GL_PREFIX(TexBumpParameterivATI): popq %rbp popq %rsi popq %rdi - movq 6136(%rax), %r11 + movq 6144(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6136(%rax), %r11 + movq 6144(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28960,7 +28997,7 @@ GL_PREFIX(TexBumpParameterivATI): popq %rbp popq %rsi popq %rdi - movq 6136(%rax), %r11 + movq 6144(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TexBumpParameterivATI), .-GL_PREFIX(TexBumpParameterivATI) @@ -28971,7 +29008,7 @@ GL_PREFIX(TexBumpParameterivATI): GL_PREFIX(AlphaFragmentOp1ATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6144(%rax), %r11 + movq 6152(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28989,13 +29026,13 @@ GL_PREFIX(AlphaFragmentOp1ATI): popq %rdx popq %rsi popq %rdi - movq 6144(%rax), %r11 + movq 6152(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6144(%rax), %r11 + movq 6152(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29013,7 +29050,7 @@ GL_PREFIX(AlphaFragmentOp1ATI): popq %rdx popq %rsi popq %rdi - movq 6144(%rax), %r11 + movq 6152(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(AlphaFragmentOp1ATI), .-GL_PREFIX(AlphaFragmentOp1ATI) @@ -29024,7 +29061,7 @@ GL_PREFIX(AlphaFragmentOp1ATI): GL_PREFIX(AlphaFragmentOp2ATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6152(%rax), %r11 + movq 6160(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29042,13 +29079,13 @@ GL_PREFIX(AlphaFragmentOp2ATI): popq %rdx popq %rsi popq %rdi - movq 6152(%rax), %r11 + movq 6160(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6152(%rax), %r11 + movq 6160(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29066,7 +29103,7 @@ GL_PREFIX(AlphaFragmentOp2ATI): popq %rdx popq %rsi popq %rdi - movq 6152(%rax), %r11 + movq 6160(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(AlphaFragmentOp2ATI), .-GL_PREFIX(AlphaFragmentOp2ATI) @@ -29077,7 +29114,7 @@ GL_PREFIX(AlphaFragmentOp2ATI): GL_PREFIX(AlphaFragmentOp3ATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6160(%rax), %r11 + movq 6168(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29095,13 +29132,13 @@ GL_PREFIX(AlphaFragmentOp3ATI): popq %rdx popq %rsi popq %rdi - movq 6160(%rax), %r11 + movq 6168(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6160(%rax), %r11 + movq 6168(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29119,7 +29156,7 @@ GL_PREFIX(AlphaFragmentOp3ATI): popq %rdx popq %rsi popq %rdi - movq 6160(%rax), %r11 + movq 6168(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(AlphaFragmentOp3ATI), .-GL_PREFIX(AlphaFragmentOp3ATI) @@ -29130,25 +29167,25 @@ GL_PREFIX(AlphaFragmentOp3ATI): GL_PREFIX(BeginFragmentShaderATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6168(%rax), %r11 + movq 6176(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 6168(%rax), %r11 + movq 6176(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6168(%rax), %r11 + movq 6176(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 6168(%rax), %r11 + movq 6176(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BeginFragmentShaderATI), .-GL_PREFIX(BeginFragmentShaderATI) @@ -29159,25 +29196,25 @@ GL_PREFIX(BeginFragmentShaderATI): GL_PREFIX(BindFragmentShaderATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6176(%rax), %r11 + movq 6184(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6176(%rax), %r11 + movq 6184(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6176(%rax), %r11 + movq 6184(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6176(%rax), %r11 + movq 6184(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindFragmentShaderATI), .-GL_PREFIX(BindFragmentShaderATI) @@ -29188,7 +29225,7 @@ GL_PREFIX(BindFragmentShaderATI): GL_PREFIX(ColorFragmentOp1ATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6184(%rax), %r11 + movq 6192(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29206,13 +29243,13 @@ GL_PREFIX(ColorFragmentOp1ATI): popq %rdx popq %rsi popq %rdi - movq 6184(%rax), %r11 + movq 6192(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6184(%rax), %r11 + movq 6192(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29230,7 +29267,7 @@ GL_PREFIX(ColorFragmentOp1ATI): popq %rdx popq %rsi popq %rdi - movq 6184(%rax), %r11 + movq 6192(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ColorFragmentOp1ATI), .-GL_PREFIX(ColorFragmentOp1ATI) @@ -29241,7 +29278,7 @@ GL_PREFIX(ColorFragmentOp1ATI): GL_PREFIX(ColorFragmentOp2ATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6192(%rax), %r11 + movq 6200(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29259,13 +29296,13 @@ GL_PREFIX(ColorFragmentOp2ATI): popq %rdx popq %rsi popq %rdi - movq 6192(%rax), %r11 + movq 6200(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6192(%rax), %r11 + movq 6200(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29283,7 +29320,7 @@ GL_PREFIX(ColorFragmentOp2ATI): popq %rdx popq %rsi popq %rdi - movq 6192(%rax), %r11 + movq 6200(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ColorFragmentOp2ATI), .-GL_PREFIX(ColorFragmentOp2ATI) @@ -29294,7 +29331,7 @@ GL_PREFIX(ColorFragmentOp2ATI): GL_PREFIX(ColorFragmentOp3ATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6200(%rax), %r11 + movq 6208(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29312,13 +29349,13 @@ GL_PREFIX(ColorFragmentOp3ATI): popq %rdx popq %rsi popq %rdi - movq 6200(%rax), %r11 + movq 6208(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6200(%rax), %r11 + movq 6208(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29336,7 +29373,7 @@ GL_PREFIX(ColorFragmentOp3ATI): popq %rdx popq %rsi popq %rdi - movq 6200(%rax), %r11 + movq 6208(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ColorFragmentOp3ATI), .-GL_PREFIX(ColorFragmentOp3ATI) @@ -29347,25 +29384,25 @@ GL_PREFIX(ColorFragmentOp3ATI): GL_PREFIX(DeleteFragmentShaderATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6208(%rax), %r11 + movq 6216(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6208(%rax), %r11 + movq 6216(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6208(%rax), %r11 + movq 6216(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6208(%rax), %r11 + movq 6216(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DeleteFragmentShaderATI), .-GL_PREFIX(DeleteFragmentShaderATI) @@ -29376,25 +29413,25 @@ GL_PREFIX(DeleteFragmentShaderATI): GL_PREFIX(EndFragmentShaderATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6216(%rax), %r11 + movq 6224(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 6216(%rax), %r11 + movq 6224(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6216(%rax), %r11 + movq 6224(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 6216(%rax), %r11 + movq 6224(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EndFragmentShaderATI), .-GL_PREFIX(EndFragmentShaderATI) @@ -29405,25 +29442,25 @@ GL_PREFIX(EndFragmentShaderATI): GL_PREFIX(GenFragmentShadersATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6224(%rax), %r11 + movq 6232(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6224(%rax), %r11 + movq 6232(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6224(%rax), %r11 + movq 6232(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6224(%rax), %r11 + movq 6232(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GenFragmentShadersATI), .-GL_PREFIX(GenFragmentShadersATI) @@ -29434,7 +29471,7 @@ GL_PREFIX(GenFragmentShadersATI): GL_PREFIX(PassTexCoordATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6232(%rax), %r11 + movq 6240(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29444,13 +29481,13 @@ GL_PREFIX(PassTexCoordATI): popq %rdx popq %rsi popq %rdi - movq 6232(%rax), %r11 + movq 6240(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6232(%rax), %r11 + movq 6240(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29460,7 +29497,7 @@ GL_PREFIX(PassTexCoordATI): popq %rdx popq %rsi popq %rdi - movq 6232(%rax), %r11 + movq 6240(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PassTexCoordATI), .-GL_PREFIX(PassTexCoordATI) @@ -29471,7 +29508,7 @@ GL_PREFIX(PassTexCoordATI): GL_PREFIX(SampleMapATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6240(%rax), %r11 + movq 6248(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29481,13 +29518,13 @@ GL_PREFIX(SampleMapATI): popq %rdx popq %rsi popq %rdi - movq 6240(%rax), %r11 + movq 6248(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6240(%rax), %r11 + movq 6248(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29497,7 +29534,7 @@ GL_PREFIX(SampleMapATI): popq %rdx popq %rsi popq %rdi - movq 6240(%rax), %r11 + movq 6248(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SampleMapATI), .-GL_PREFIX(SampleMapATI) @@ -29508,7 +29545,7 @@ GL_PREFIX(SampleMapATI): GL_PREFIX(SetFragmentShaderConstantATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6248(%rax), %r11 + movq 6256(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29518,13 +29555,13 @@ GL_PREFIX(SetFragmentShaderConstantATI): popq %rbp popq %rsi popq %rdi - movq 6248(%rax), %r11 + movq 6256(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6248(%rax), %r11 + movq 6256(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29534,7 +29571,7 @@ GL_PREFIX(SetFragmentShaderConstantATI): popq %rbp popq %rsi popq %rdi - movq 6248(%rax), %r11 + movq 6256(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SetFragmentShaderConstantATI), .-GL_PREFIX(SetFragmentShaderConstantATI) @@ -29545,7 +29582,7 @@ GL_PREFIX(SetFragmentShaderConstantATI): GL_PREFIX(PointParameteriNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6256(%rax), %r11 + movq 6264(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29555,13 +29592,13 @@ GL_PREFIX(PointParameteriNV): popq %rbp popq %rsi popq %rdi - movq 6256(%rax), %r11 + movq 6264(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6256(%rax), %r11 + movq 6264(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29571,7 +29608,7 @@ GL_PREFIX(PointParameteriNV): popq %rbp popq %rsi popq %rdi - movq 6256(%rax), %r11 + movq 6264(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PointParameteriNV), .-GL_PREFIX(PointParameteriNV) @@ -29580,51 +29617,17 @@ GL_PREFIX(PointParameteriNV): .globl GL_PREFIX(PointParameterivNV) .type GL_PREFIX(PointParameterivNV), @function GL_PREFIX(PointParameterivNV): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 6264(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rdi - pushq %rsi - pushq %rbp - call _x86_64_get_dispatch@PLT - popq %rbp - popq %rsi - popq %rdi - movq 6264(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 6264(%rax), %r11 - jmp *%r11 -1: - pushq %rdi - pushq %rsi - pushq %rbp - call _glapi_get_dispatch - popq %rbp - popq %rsi - popq %rdi - movq 6264(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(PointParameterivNV), .-GL_PREFIX(PointParameterivNV) - - .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_784) - .type GL_PREFIX(_dispatch_stub_784), @function - HIDDEN(GL_PREFIX(_dispatch_stub_784)) -GL_PREFIX(_dispatch_stub_784): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 6272(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi + pushq %rsi + pushq %rbp call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi popq %rdi movq 6272(%rax), %r11 jmp *%r11 @@ -29636,12 +29639,16 @@ GL_PREFIX(_dispatch_stub_784): jmp *%r11 1: pushq %rdi + pushq %rsi + pushq %rbp call _glapi_get_dispatch + popq %rbp + popq %rsi popq %rdi movq 6272(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_784), .-GL_PREFIX(_dispatch_stub_784) + .size GL_PREFIX(PointParameterivNV), .-GL_PREFIX(PointParameterivNV) .p2align 4,,15 .globl GL_PREFIX(_dispatch_stub_785) @@ -29684,11 +29691,7 @@ GL_PREFIX(_dispatch_stub_786): jmp *%r11 #elif defined(PTHREADS) pushq %rdi - pushq %rsi - pushq %rbp call _x86_64_get_dispatch@PLT - popq %rbp - popq %rsi popq %rdi movq 6288(%rax), %r11 jmp *%r11 @@ -29700,11 +29703,7 @@ GL_PREFIX(_dispatch_stub_786): jmp *%r11 1: pushq %rdi - pushq %rsi - pushq %rbp call _glapi_get_dispatch - popq %rbp - popq %rsi popq %rdi movq 6288(%rax), %r11 jmp *%r11 @@ -29760,7 +29759,11 @@ GL_PREFIX(_dispatch_stub_788): jmp *%r11 #elif defined(PTHREADS) pushq %rdi + pushq %rsi + pushq %rbp call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi popq %rdi movq 6304(%rax), %r11 jmp *%r11 @@ -29772,20 +29775,54 @@ GL_PREFIX(_dispatch_stub_788): jmp *%r11 1: pushq %rdi + pushq %rsi + pushq %rbp call _glapi_get_dispatch + popq %rbp + popq %rsi popq %rdi movq 6304(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(_dispatch_stub_788), .-GL_PREFIX(_dispatch_stub_788) + .p2align 4,,15 + .globl GL_PREFIX(_dispatch_stub_789) + .type GL_PREFIX(_dispatch_stub_789), @function + HIDDEN(GL_PREFIX(_dispatch_stub_789)) +GL_PREFIX(_dispatch_stub_789): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 6312(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + call _x86_64_get_dispatch@PLT + popq %rdi + movq 6312(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 6312(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + call _glapi_get_dispatch + popq %rdi + movq 6312(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_789), .-GL_PREFIX(_dispatch_stub_789) + .p2align 4,,15 .globl GL_PREFIX(GetProgramNamedParameterdvNV) .type GL_PREFIX(GetProgramNamedParameterdvNV), @function GL_PREFIX(GetProgramNamedParameterdvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6312(%rax), %r11 + movq 6320(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29799,13 +29836,13 @@ GL_PREFIX(GetProgramNamedParameterdvNV): popq %rdx popq %rsi popq %rdi - movq 6312(%rax), %r11 + movq 6320(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6312(%rax), %r11 + movq 6320(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29819,7 +29856,7 @@ GL_PREFIX(GetProgramNamedParameterdvNV): popq %rdx popq %rsi popq %rdi - movq 6312(%rax), %r11 + movq 6320(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetProgramNamedParameterdvNV), .-GL_PREFIX(GetProgramNamedParameterdvNV) @@ -29830,7 +29867,7 @@ GL_PREFIX(GetProgramNamedParameterdvNV): GL_PREFIX(GetProgramNamedParameterfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6320(%rax), %r11 + movq 6328(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29844,13 +29881,13 @@ GL_PREFIX(GetProgramNamedParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 6320(%rax), %r11 + movq 6328(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6320(%rax), %r11 + movq 6328(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29864,7 +29901,7 @@ GL_PREFIX(GetProgramNamedParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 6320(%rax), %r11 + movq 6328(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetProgramNamedParameterfvNV), .-GL_PREFIX(GetProgramNamedParameterfvNV) @@ -29875,7 +29912,7 @@ GL_PREFIX(GetProgramNamedParameterfvNV): GL_PREFIX(ProgramNamedParameter4dNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6328(%rax), %r11 + movq 6336(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $56, %rsp @@ -29895,13 +29932,13 @@ GL_PREFIX(ProgramNamedParameter4dNV): movq 8(%rsp), %rsi movq (%rsp), %rdi addq $56, %rsp - movq 6328(%rax), %r11 + movq 6336(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6328(%rax), %r11 + movq 6336(%rax), %r11 jmp *%r11 1: subq $56, %rsp @@ -29921,7 +29958,7 @@ GL_PREFIX(ProgramNamedParameter4dNV): movq 8(%rsp), %rsi movq (%rsp), %rdi addq $56, %rsp - movq 6328(%rax), %r11 + movq 6336(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ProgramNamedParameter4dNV), .-GL_PREFIX(ProgramNamedParameter4dNV) @@ -29932,7 +29969,7 @@ GL_PREFIX(ProgramNamedParameter4dNV): GL_PREFIX(ProgramNamedParameter4dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6336(%rax), %r11 + movq 6344(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29946,13 +29983,13 @@ GL_PREFIX(ProgramNamedParameter4dvNV): popq %rdx popq %rsi popq %rdi - movq 6336(%rax), %r11 + movq 6344(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6336(%rax), %r11 + movq 6344(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29966,7 +30003,7 @@ GL_PREFIX(ProgramNamedParameter4dvNV): popq %rdx popq %rsi popq %rdi - movq 6336(%rax), %r11 + movq 6344(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ProgramNamedParameter4dvNV), .-GL_PREFIX(ProgramNamedParameter4dvNV) @@ -29977,7 +30014,7 @@ GL_PREFIX(ProgramNamedParameter4dvNV): GL_PREFIX(ProgramNamedParameter4fNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6344(%rax), %r11 + movq 6352(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $56, %rsp @@ -29997,13 +30034,13 @@ GL_PREFIX(ProgramNamedParameter4fNV): movq 8(%rsp), %rsi movq (%rsp), %rdi addq $56, %rsp - movq 6344(%rax), %r11 + movq 6352(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6344(%rax), %r11 + movq 6352(%rax), %r11 jmp *%r11 1: subq $56, %rsp @@ -30023,7 +30060,7 @@ GL_PREFIX(ProgramNamedParameter4fNV): movq 8(%rsp), %rsi movq (%rsp), %rdi addq $56, %rsp - movq 6344(%rax), %r11 + movq 6352(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ProgramNamedParameter4fNV), .-GL_PREFIX(ProgramNamedParameter4fNV) @@ -30034,7 +30071,7 @@ GL_PREFIX(ProgramNamedParameter4fNV): GL_PREFIX(ProgramNamedParameter4fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6352(%rax), %r11 + movq 6360(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30048,13 +30085,13 @@ GL_PREFIX(ProgramNamedParameter4fvNV): popq %rdx popq %rsi popq %rdi - movq 6352(%rax), %r11 + movq 6360(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6352(%rax), %r11 + movq 6360(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30068,7 +30105,7 @@ GL_PREFIX(ProgramNamedParameter4fvNV): popq %rdx popq %rsi popq %rdi - movq 6352(%rax), %r11 + movq 6360(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ProgramNamedParameter4fvNV), .-GL_PREFIX(ProgramNamedParameter4fvNV) @@ -30079,25 +30116,25 @@ GL_PREFIX(ProgramNamedParameter4fvNV): GL_PREFIX(PrimitiveRestartIndexNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6360(%rax), %r11 + movq 6368(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6360(%rax), %r11 + movq 6368(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6360(%rax), %r11 + movq 6368(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6360(%rax), %r11 + movq 6368(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PrimitiveRestartIndexNV), .-GL_PREFIX(PrimitiveRestartIndexNV) @@ -30108,67 +30145,29 @@ GL_PREFIX(PrimitiveRestartIndexNV): GL_PREFIX(PrimitiveRestartNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6368(%rax), %r11 + movq 6376(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 6368(%rax), %r11 + movq 6376(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6368(%rax), %r11 + movq 6376(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 6368(%rax), %r11 + movq 6376(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PrimitiveRestartNV), .-GL_PREFIX(PrimitiveRestartNV) - .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_797) - .type GL_PREFIX(_dispatch_stub_797), @function - HIDDEN(GL_PREFIX(_dispatch_stub_797)) -GL_PREFIX(_dispatch_stub_797): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 6376(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rdi - pushq %rsi - pushq %rbp - call _x86_64_get_dispatch@PLT - popq %rbp - popq %rsi - popq %rdi - movq 6376(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 6376(%rax), %r11 - jmp *%r11 -1: - pushq %rdi - pushq %rsi - pushq %rbp - call _glapi_get_dispatch - popq %rbp - popq %rsi - popq %rdi - movq 6376(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_797), .-GL_PREFIX(_dispatch_stub_797) - .p2align 4,,15 .globl GL_PREFIX(_dispatch_stub_798) .type GL_PREFIX(_dispatch_stub_798), @function @@ -30208,9 +30207,10 @@ GL_PREFIX(_dispatch_stub_798): .size GL_PREFIX(_dispatch_stub_798), .-GL_PREFIX(_dispatch_stub_798) .p2align 4,,15 - .globl GL_PREFIX(BindFramebufferEXT) - .type GL_PREFIX(BindFramebufferEXT), @function -GL_PREFIX(BindFramebufferEXT): + .globl GL_PREFIX(_dispatch_stub_799) + .type GL_PREFIX(_dispatch_stub_799), @function + HIDDEN(GL_PREFIX(_dispatch_stub_799)) +GL_PREFIX(_dispatch_stub_799): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 6392(%rax), %r11 @@ -30241,6 +30241,43 @@ GL_PREFIX(BindFramebufferEXT): popq %rdi movq 6392(%rax), %r11 jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_799), .-GL_PREFIX(_dispatch_stub_799) + + .p2align 4,,15 + .globl GL_PREFIX(BindFramebufferEXT) + .type GL_PREFIX(BindFramebufferEXT), @function +GL_PREFIX(BindFramebufferEXT): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 6400(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi + popq %rdi + movq 6400(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 6400(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %rsi + popq %rdi + movq 6400(%rax), %r11 + jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindFramebufferEXT), .-GL_PREFIX(BindFramebufferEXT) @@ -30250,7 +30287,7 @@ GL_PREFIX(BindFramebufferEXT): GL_PREFIX(BindRenderbufferEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6400(%rax), %r11 + movq 6408(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30260,13 +30297,13 @@ GL_PREFIX(BindRenderbufferEXT): popq %rbp popq %rsi popq %rdi - movq 6400(%rax), %r11 + movq 6408(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6400(%rax), %r11 + movq 6408(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30276,7 +30313,7 @@ GL_PREFIX(BindRenderbufferEXT): popq %rbp popq %rsi popq %rdi - movq 6400(%rax), %r11 + movq 6408(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindRenderbufferEXT), .-GL_PREFIX(BindRenderbufferEXT) @@ -30287,25 +30324,25 @@ GL_PREFIX(BindRenderbufferEXT): GL_PREFIX(CheckFramebufferStatusEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6408(%rax), %r11 + movq 6416(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6408(%rax), %r11 + movq 6416(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6408(%rax), %r11 + movq 6416(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6408(%rax), %r11 + movq 6416(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CheckFramebufferStatusEXT), .-GL_PREFIX(CheckFramebufferStatusEXT) @@ -30316,7 +30353,7 @@ GL_PREFIX(CheckFramebufferStatusEXT): GL_PREFIX(DeleteFramebuffersEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6416(%rax), %r11 + movq 6424(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30326,13 +30363,13 @@ GL_PREFIX(DeleteFramebuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6416(%rax), %r11 + movq 6424(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6416(%rax), %r11 + movq 6424(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30342,7 +30379,7 @@ GL_PREFIX(DeleteFramebuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6416(%rax), %r11 + movq 6424(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DeleteFramebuffersEXT), .-GL_PREFIX(DeleteFramebuffersEXT) @@ -30353,7 +30390,7 @@ GL_PREFIX(DeleteFramebuffersEXT): GL_PREFIX(DeleteRenderbuffersEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6424(%rax), %r11 + movq 6432(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30363,13 +30400,13 @@ GL_PREFIX(DeleteRenderbuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6424(%rax), %r11 + movq 6432(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6424(%rax), %r11 + movq 6432(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30379,7 +30416,7 @@ GL_PREFIX(DeleteRenderbuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6424(%rax), %r11 + movq 6432(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DeleteRenderbuffersEXT), .-GL_PREFIX(DeleteRenderbuffersEXT) @@ -30390,7 +30427,7 @@ GL_PREFIX(DeleteRenderbuffersEXT): GL_PREFIX(FramebufferRenderbufferEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6432(%rax), %r11 + movq 6440(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30404,13 +30441,13 @@ GL_PREFIX(FramebufferRenderbufferEXT): popq %rdx popq %rsi popq %rdi - movq 6432(%rax), %r11 + movq 6440(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6432(%rax), %r11 + movq 6440(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30424,7 +30461,7 @@ GL_PREFIX(FramebufferRenderbufferEXT): popq %rdx popq %rsi popq %rdi - movq 6432(%rax), %r11 + movq 6440(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FramebufferRenderbufferEXT), .-GL_PREFIX(FramebufferRenderbufferEXT) @@ -30435,7 +30472,7 @@ GL_PREFIX(FramebufferRenderbufferEXT): GL_PREFIX(FramebufferTexture1DEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6440(%rax), %r11 + movq 6448(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30449,13 +30486,13 @@ GL_PREFIX(FramebufferTexture1DEXT): popq %rdx popq %rsi popq %rdi - movq 6440(%rax), %r11 + movq 6448(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6440(%rax), %r11 + movq 6448(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30469,7 +30506,7 @@ GL_PREFIX(FramebufferTexture1DEXT): popq %rdx popq %rsi popq %rdi - movq 6440(%rax), %r11 + movq 6448(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FramebufferTexture1DEXT), .-GL_PREFIX(FramebufferTexture1DEXT) @@ -30480,7 +30517,7 @@ GL_PREFIX(FramebufferTexture1DEXT): GL_PREFIX(FramebufferTexture2DEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6448(%rax), %r11 + movq 6456(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30494,13 +30531,13 @@ GL_PREFIX(FramebufferTexture2DEXT): popq %rdx popq %rsi popq %rdi - movq 6448(%rax), %r11 + movq 6456(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6448(%rax), %r11 + movq 6456(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30514,7 +30551,7 @@ GL_PREFIX(FramebufferTexture2DEXT): popq %rdx popq %rsi popq %rdi - movq 6448(%rax), %r11 + movq 6456(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FramebufferTexture2DEXT), .-GL_PREFIX(FramebufferTexture2DEXT) @@ -30525,7 +30562,7 @@ GL_PREFIX(FramebufferTexture2DEXT): GL_PREFIX(FramebufferTexture3DEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6456(%rax), %r11 + movq 6464(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30543,13 +30580,13 @@ GL_PREFIX(FramebufferTexture3DEXT): popq %rdx popq %rsi popq %rdi - movq 6456(%rax), %r11 + movq 6464(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6456(%rax), %r11 + movq 6464(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30567,7 +30604,7 @@ GL_PREFIX(FramebufferTexture3DEXT): popq %rdx popq %rsi popq %rdi - movq 6456(%rax), %r11 + movq 6464(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FramebufferTexture3DEXT), .-GL_PREFIX(FramebufferTexture3DEXT) @@ -30578,7 +30615,7 @@ GL_PREFIX(FramebufferTexture3DEXT): GL_PREFIX(GenFramebuffersEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6464(%rax), %r11 + movq 6472(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30588,13 +30625,13 @@ GL_PREFIX(GenFramebuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6464(%rax), %r11 + movq 6472(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6464(%rax), %r11 + movq 6472(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30604,7 +30641,7 @@ GL_PREFIX(GenFramebuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6464(%rax), %r11 + movq 6472(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GenFramebuffersEXT), .-GL_PREFIX(GenFramebuffersEXT) @@ -30615,7 +30652,7 @@ GL_PREFIX(GenFramebuffersEXT): GL_PREFIX(GenRenderbuffersEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6472(%rax), %r11 + movq 6480(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30625,13 +30662,13 @@ GL_PREFIX(GenRenderbuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6472(%rax), %r11 + movq 6480(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6472(%rax), %r11 + movq 6480(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30641,7 +30678,7 @@ GL_PREFIX(GenRenderbuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6472(%rax), %r11 + movq 6480(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GenRenderbuffersEXT), .-GL_PREFIX(GenRenderbuffersEXT) @@ -30652,25 +30689,25 @@ GL_PREFIX(GenRenderbuffersEXT): GL_PREFIX(GenerateMipmapEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6480(%rax), %r11 + movq 6488(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6480(%rax), %r11 + movq 6488(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6480(%rax), %r11 + movq 6488(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6480(%rax), %r11 + movq 6488(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GenerateMipmapEXT), .-GL_PREFIX(GenerateMipmapEXT) @@ -30681,7 +30718,7 @@ GL_PREFIX(GenerateMipmapEXT): GL_PREFIX(GetFramebufferAttachmentParameterivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6488(%rax), %r11 + movq 6496(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30695,13 +30732,13 @@ GL_PREFIX(GetFramebufferAttachmentParameterivEXT): popq %rdx popq %rsi popq %rdi - movq 6488(%rax), %r11 + movq 6496(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6488(%rax), %r11 + movq 6496(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30715,7 +30752,7 @@ GL_PREFIX(GetFramebufferAttachmentParameterivEXT): popq %rdx popq %rsi popq %rdi - movq 6488(%rax), %r11 + movq 6496(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetFramebufferAttachmentParameterivEXT), .-GL_PREFIX(GetFramebufferAttachmentParameterivEXT) @@ -30726,7 +30763,7 @@ GL_PREFIX(GetFramebufferAttachmentParameterivEXT): GL_PREFIX(GetRenderbufferParameterivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6496(%rax), %r11 + movq 6504(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30736,13 +30773,13 @@ GL_PREFIX(GetRenderbufferParameterivEXT): popq %rdx popq %rsi popq %rdi - movq 6496(%rax), %r11 + movq 6504(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6496(%rax), %r11 + movq 6504(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30752,7 +30789,7 @@ GL_PREFIX(GetRenderbufferParameterivEXT): popq %rdx popq %rsi popq %rdi - movq 6496(%rax), %r11 + movq 6504(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetRenderbufferParameterivEXT), .-GL_PREFIX(GetRenderbufferParameterivEXT) @@ -30763,25 +30800,25 @@ GL_PREFIX(GetRenderbufferParameterivEXT): GL_PREFIX(IsFramebufferEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6504(%rax), %r11 + movq 6512(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6504(%rax), %r11 + movq 6512(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6504(%rax), %r11 + movq 6512(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6504(%rax), %r11 + movq 6512(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(IsFramebufferEXT), .-GL_PREFIX(IsFramebufferEXT) @@ -30792,25 +30829,25 @@ GL_PREFIX(IsFramebufferEXT): GL_PREFIX(IsRenderbufferEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6512(%rax), %r11 + movq 6520(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6512(%rax), %r11 + movq 6520(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6512(%rax), %r11 + movq 6520(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6512(%rax), %r11 + movq 6520(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(IsRenderbufferEXT), .-GL_PREFIX(IsRenderbufferEXT) @@ -30819,52 +30856,6 @@ GL_PREFIX(IsRenderbufferEXT): .globl GL_PREFIX(RenderbufferStorageEXT) .type GL_PREFIX(RenderbufferStorageEXT), @function GL_PREFIX(RenderbufferStorageEXT): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 6520(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rdi - pushq %rsi - pushq %rdx - pushq %rcx - pushq %rbp - call _x86_64_get_dispatch@PLT - popq %rbp - popq %rcx - popq %rdx - popq %rsi - popq %rdi - movq 6520(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 6520(%rax), %r11 - jmp *%r11 -1: - pushq %rdi - pushq %rsi - pushq %rdx - pushq %rcx - pushq %rbp - call _glapi_get_dispatch - popq %rbp - popq %rcx - popq %rdx - popq %rsi - popq %rdi - movq 6520(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(RenderbufferStorageEXT), .-GL_PREFIX(RenderbufferStorageEXT) - - .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_816) - .type GL_PREFIX(_dispatch_stub_816), @function - HIDDEN(GL_PREFIX(_dispatch_stub_816)) -GL_PREFIX(_dispatch_stub_816): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 6528(%rax), %r11 @@ -30874,13 +30865,9 @@ GL_PREFIX(_dispatch_stub_816): pushq %rsi pushq %rdx pushq %rcx - pushq %r8 - pushq %r9 pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - popq %r9 - popq %r8 popq %rcx popq %rdx popq %rsi @@ -30898,13 +30885,9 @@ GL_PREFIX(_dispatch_stub_816): pushq %rsi pushq %rdx pushq %rcx - pushq %r8 - pushq %r9 pushq %rbp call _glapi_get_dispatch popq %rbp - popq %r9 - popq %r8 popq %rcx popq %rdx popq %rsi @@ -30912,7 +30895,7 @@ GL_PREFIX(_dispatch_stub_816): movq 6528(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_816), .-GL_PREFIX(_dispatch_stub_816) + .size GL_PREFIX(RenderbufferStorageEXT), .-GL_PREFIX(RenderbufferStorageEXT) .p2align 4,,15 .globl GL_PREFIX(_dispatch_stub_817) @@ -30927,7 +30910,15 @@ GL_PREFIX(_dispatch_stub_817): pushq %rdi pushq %rsi pushq %rdx + pushq %rcx + pushq %r8 + pushq %r9 + pushq %rbp call _x86_64_get_dispatch@PLT + popq %rbp + popq %r9 + popq %r8 + popq %rcx popq %rdx popq %rsi popq %rdi @@ -30943,7 +30934,15 @@ GL_PREFIX(_dispatch_stub_817): pushq %rdi pushq %rsi pushq %rdx + pushq %rcx + pushq %r8 + pushq %r9 + pushq %rbp call _glapi_get_dispatch + popq %rbp + popq %r9 + popq %r8 + popq %rcx popq %rdx popq %rsi popq %rdi @@ -30991,9 +30990,10 @@ GL_PREFIX(_dispatch_stub_818): .size GL_PREFIX(_dispatch_stub_818), .-GL_PREFIX(_dispatch_stub_818) .p2align 4,,15 - .globl GL_PREFIX(BindFragDataLocationEXT) - .type GL_PREFIX(BindFragDataLocationEXT), @function -GL_PREFIX(BindFragDataLocationEXT): + .globl GL_PREFIX(_dispatch_stub_819) + .type GL_PREFIX(_dispatch_stub_819), @function + HIDDEN(GL_PREFIX(_dispatch_stub_819)) +GL_PREFIX(_dispatch_stub_819): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 6552(%rax), %r11 @@ -31024,6 +31024,43 @@ GL_PREFIX(BindFragDataLocationEXT): popq %rdi movq 6552(%rax), %r11 jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_819), .-GL_PREFIX(_dispatch_stub_819) + + .p2align 4,,15 + .globl GL_PREFIX(BindFragDataLocationEXT) + .type GL_PREFIX(BindFragDataLocationEXT), @function +GL_PREFIX(BindFragDataLocationEXT): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 6560(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + call _x86_64_get_dispatch@PLT + popq %rdx + popq %rsi + popq %rdi + movq 6560(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 6560(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + call _glapi_get_dispatch + popq %rdx + popq %rsi + popq %rdi + movq 6560(%rax), %r11 + jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindFragDataLocationEXT), .-GL_PREFIX(BindFragDataLocationEXT) @@ -31033,7 +31070,7 @@ GL_PREFIX(BindFragDataLocationEXT): GL_PREFIX(GetFragDataLocationEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6560(%rax), %r11 + movq 6568(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31043,13 +31080,13 @@ GL_PREFIX(GetFragDataLocationEXT): popq %rbp popq %rsi popq %rdi - movq 6560(%rax), %r11 + movq 6568(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6560(%rax), %r11 + movq 6568(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31059,7 +31096,7 @@ GL_PREFIX(GetFragDataLocationEXT): popq %rbp popq %rsi popq %rdi - movq 6560(%rax), %r11 + movq 6568(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetFragDataLocationEXT), .-GL_PREFIX(GetFragDataLocationEXT) @@ -31070,7 +31107,7 @@ GL_PREFIX(GetFragDataLocationEXT): GL_PREFIX(GetUniformuivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6568(%rax), %r11 + movq 6576(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31080,13 +31117,13 @@ GL_PREFIX(GetUniformuivEXT): popq %rdx popq %rsi popq %rdi - movq 6568(%rax), %r11 + movq 6576(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6568(%rax), %r11 + movq 6576(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31096,7 +31133,7 @@ GL_PREFIX(GetUniformuivEXT): popq %rdx popq %rsi popq %rdi - movq 6568(%rax), %r11 + movq 6576(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetUniformuivEXT), .-GL_PREFIX(GetUniformuivEXT) @@ -31107,7 +31144,7 @@ GL_PREFIX(GetUniformuivEXT): GL_PREFIX(GetVertexAttribIivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6576(%rax), %r11 + movq 6584(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31117,13 +31154,13 @@ GL_PREFIX(GetVertexAttribIivEXT): popq %rdx popq %rsi popq %rdi - movq 6576(%rax), %r11 + movq 6584(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6576(%rax), %r11 + movq 6584(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31133,7 +31170,7 @@ GL_PREFIX(GetVertexAttribIivEXT): popq %rdx popq %rsi popq %rdi - movq 6576(%rax), %r11 + movq 6584(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetVertexAttribIivEXT), .-GL_PREFIX(GetVertexAttribIivEXT) @@ -31144,7 +31181,7 @@ GL_PREFIX(GetVertexAttribIivEXT): GL_PREFIX(GetVertexAttribIuivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6584(%rax), %r11 + movq 6592(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31154,13 +31191,13 @@ GL_PREFIX(GetVertexAttribIuivEXT): popq %rdx popq %rsi popq %rdi - movq 6584(%rax), %r11 + movq 6592(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6584(%rax), %r11 + movq 6592(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31170,7 +31207,7 @@ GL_PREFIX(GetVertexAttribIuivEXT): popq %rdx popq %rsi popq %rdi - movq 6584(%rax), %r11 + movq 6592(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetVertexAttribIuivEXT), .-GL_PREFIX(GetVertexAttribIuivEXT) @@ -31181,7 +31218,7 @@ GL_PREFIX(GetVertexAttribIuivEXT): GL_PREFIX(Uniform1uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6592(%rax), %r11 + movq 6600(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31191,13 +31228,13 @@ GL_PREFIX(Uniform1uiEXT): popq %rbp popq %rsi popq %rdi - movq 6592(%rax), %r11 + movq 6600(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6592(%rax), %r11 + movq 6600(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31207,7 +31244,7 @@ GL_PREFIX(Uniform1uiEXT): popq %rbp popq %rsi popq %rdi - movq 6592(%rax), %r11 + movq 6600(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform1uiEXT), .-GL_PREFIX(Uniform1uiEXT) @@ -31218,7 +31255,7 @@ GL_PREFIX(Uniform1uiEXT): GL_PREFIX(Uniform1uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6600(%rax), %r11 + movq 6608(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31228,13 +31265,13 @@ GL_PREFIX(Uniform1uivEXT): popq %rdx popq %rsi popq %rdi - movq 6600(%rax), %r11 + movq 6608(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6600(%rax), %r11 + movq 6608(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31244,7 +31281,7 @@ GL_PREFIX(Uniform1uivEXT): popq %rdx popq %rsi popq %rdi - movq 6600(%rax), %r11 + movq 6608(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform1uivEXT), .-GL_PREFIX(Uniform1uivEXT) @@ -31255,7 +31292,7 @@ GL_PREFIX(Uniform1uivEXT): GL_PREFIX(Uniform2uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6608(%rax), %r11 + movq 6616(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31265,13 +31302,13 @@ GL_PREFIX(Uniform2uiEXT): popq %rdx popq %rsi popq %rdi - movq 6608(%rax), %r11 + movq 6616(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6608(%rax), %r11 + movq 6616(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31281,7 +31318,7 @@ GL_PREFIX(Uniform2uiEXT): popq %rdx popq %rsi popq %rdi - movq 6608(%rax), %r11 + movq 6616(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform2uiEXT), .-GL_PREFIX(Uniform2uiEXT) @@ -31292,7 +31329,7 @@ GL_PREFIX(Uniform2uiEXT): GL_PREFIX(Uniform2uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6616(%rax), %r11 + movq 6624(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31302,13 +31339,13 @@ GL_PREFIX(Uniform2uivEXT): popq %rdx popq %rsi popq %rdi - movq 6616(%rax), %r11 + movq 6624(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6616(%rax), %r11 + movq 6624(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31318,7 +31355,7 @@ GL_PREFIX(Uniform2uivEXT): popq %rdx popq %rsi popq %rdi - movq 6616(%rax), %r11 + movq 6624(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform2uivEXT), .-GL_PREFIX(Uniform2uivEXT) @@ -31329,7 +31366,7 @@ GL_PREFIX(Uniform2uivEXT): GL_PREFIX(Uniform3uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6624(%rax), %r11 + movq 6632(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31343,13 +31380,13 @@ GL_PREFIX(Uniform3uiEXT): popq %rdx popq %rsi popq %rdi - movq 6624(%rax), %r11 + movq 6632(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6624(%rax), %r11 + movq 6632(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31363,7 +31400,7 @@ GL_PREFIX(Uniform3uiEXT): popq %rdx popq %rsi popq %rdi - movq 6624(%rax), %r11 + movq 6632(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform3uiEXT), .-GL_PREFIX(Uniform3uiEXT) @@ -31374,7 +31411,7 @@ GL_PREFIX(Uniform3uiEXT): GL_PREFIX(Uniform3uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6632(%rax), %r11 + movq 6640(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31384,13 +31421,13 @@ GL_PREFIX(Uniform3uivEXT): popq %rdx popq %rsi popq %rdi - movq 6632(%rax), %r11 + movq 6640(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6632(%rax), %r11 + movq 6640(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31400,7 +31437,7 @@ GL_PREFIX(Uniform3uivEXT): popq %rdx popq %rsi popq %rdi - movq 6632(%rax), %r11 + movq 6640(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform3uivEXT), .-GL_PREFIX(Uniform3uivEXT) @@ -31411,7 +31448,7 @@ GL_PREFIX(Uniform3uivEXT): GL_PREFIX(Uniform4uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6640(%rax), %r11 + movq 6648(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31425,13 +31462,13 @@ GL_PREFIX(Uniform4uiEXT): popq %rdx popq %rsi popq %rdi - movq 6640(%rax), %r11 + movq 6648(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6640(%rax), %r11 + movq 6648(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31445,7 +31482,7 @@ GL_PREFIX(Uniform4uiEXT): popq %rdx popq %rsi popq %rdi - movq 6640(%rax), %r11 + movq 6648(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform4uiEXT), .-GL_PREFIX(Uniform4uiEXT) @@ -31456,7 +31493,7 @@ GL_PREFIX(Uniform4uiEXT): GL_PREFIX(Uniform4uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6648(%rax), %r11 + movq 6656(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31466,13 +31503,13 @@ GL_PREFIX(Uniform4uivEXT): popq %rdx popq %rsi popq %rdi - movq 6648(%rax), %r11 + movq 6656(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6648(%rax), %r11 + movq 6656(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31482,7 +31519,7 @@ GL_PREFIX(Uniform4uivEXT): popq %rdx popq %rsi popq %rdi - movq 6648(%rax), %r11 + movq 6656(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform4uivEXT), .-GL_PREFIX(Uniform4uivEXT) @@ -31493,7 +31530,7 @@ GL_PREFIX(Uniform4uivEXT): GL_PREFIX(VertexAttribI1iEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6656(%rax), %r11 + movq 6664(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31503,13 +31540,13 @@ GL_PREFIX(VertexAttribI1iEXT): popq %rbp popq %rsi popq %rdi - movq 6656(%rax), %r11 + movq 6664(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6656(%rax), %r11 + movq 6664(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31519,7 +31556,7 @@ GL_PREFIX(VertexAttribI1iEXT): popq %rbp popq %rsi popq %rdi - movq 6656(%rax), %r11 + movq 6664(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI1iEXT), .-GL_PREFIX(VertexAttribI1iEXT) @@ -31530,7 +31567,7 @@ GL_PREFIX(VertexAttribI1iEXT): GL_PREFIX(VertexAttribI1ivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6664(%rax), %r11 + movq 6672(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31540,13 +31577,13 @@ GL_PREFIX(VertexAttribI1ivEXT): popq %rbp popq %rsi popq %rdi - movq 6664(%rax), %r11 + movq 6672(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6664(%rax), %r11 + movq 6672(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31556,7 +31593,7 @@ GL_PREFIX(VertexAttribI1ivEXT): popq %rbp popq %rsi popq %rdi - movq 6664(%rax), %r11 + movq 6672(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI1ivEXT), .-GL_PREFIX(VertexAttribI1ivEXT) @@ -31567,7 +31604,7 @@ GL_PREFIX(VertexAttribI1ivEXT): GL_PREFIX(VertexAttribI1uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6672(%rax), %r11 + movq 6680(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31577,13 +31614,13 @@ GL_PREFIX(VertexAttribI1uiEXT): popq %rbp popq %rsi popq %rdi - movq 6672(%rax), %r11 + movq 6680(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6672(%rax), %r11 + movq 6680(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31593,7 +31630,7 @@ GL_PREFIX(VertexAttribI1uiEXT): popq %rbp popq %rsi popq %rdi - movq 6672(%rax), %r11 + movq 6680(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI1uiEXT), .-GL_PREFIX(VertexAttribI1uiEXT) @@ -31604,7 +31641,7 @@ GL_PREFIX(VertexAttribI1uiEXT): GL_PREFIX(VertexAttribI1uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6680(%rax), %r11 + movq 6688(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31614,13 +31651,13 @@ GL_PREFIX(VertexAttribI1uivEXT): popq %rbp popq %rsi popq %rdi - movq 6680(%rax), %r11 + movq 6688(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6680(%rax), %r11 + movq 6688(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31630,7 +31667,7 @@ GL_PREFIX(VertexAttribI1uivEXT): popq %rbp popq %rsi popq %rdi - movq 6680(%rax), %r11 + movq 6688(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI1uivEXT), .-GL_PREFIX(VertexAttribI1uivEXT) @@ -31641,7 +31678,7 @@ GL_PREFIX(VertexAttribI1uivEXT): GL_PREFIX(VertexAttribI2iEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6688(%rax), %r11 + movq 6696(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31651,13 +31688,13 @@ GL_PREFIX(VertexAttribI2iEXT): popq %rdx popq %rsi popq %rdi - movq 6688(%rax), %r11 + movq 6696(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6688(%rax), %r11 + movq 6696(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31667,7 +31704,7 @@ GL_PREFIX(VertexAttribI2iEXT): popq %rdx popq %rsi popq %rdi - movq 6688(%rax), %r11 + movq 6696(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI2iEXT), .-GL_PREFIX(VertexAttribI2iEXT) @@ -31678,7 +31715,7 @@ GL_PREFIX(VertexAttribI2iEXT): GL_PREFIX(VertexAttribI2ivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6696(%rax), %r11 + movq 6704(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31688,13 +31725,13 @@ GL_PREFIX(VertexAttribI2ivEXT): popq %rbp popq %rsi popq %rdi - movq 6696(%rax), %r11 + movq 6704(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6696(%rax), %r11 + movq 6704(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31704,7 +31741,7 @@ GL_PREFIX(VertexAttribI2ivEXT): popq %rbp popq %rsi popq %rdi - movq 6696(%rax), %r11 + movq 6704(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI2ivEXT), .-GL_PREFIX(VertexAttribI2ivEXT) @@ -31715,7 +31752,7 @@ GL_PREFIX(VertexAttribI2ivEXT): GL_PREFIX(VertexAttribI2uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6704(%rax), %r11 + movq 6712(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31725,13 +31762,13 @@ GL_PREFIX(VertexAttribI2uiEXT): popq %rdx popq %rsi popq %rdi - movq 6704(%rax), %r11 + movq 6712(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6704(%rax), %r11 + movq 6712(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31741,7 +31778,7 @@ GL_PREFIX(VertexAttribI2uiEXT): popq %rdx popq %rsi popq %rdi - movq 6704(%rax), %r11 + movq 6712(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI2uiEXT), .-GL_PREFIX(VertexAttribI2uiEXT) @@ -31752,7 +31789,7 @@ GL_PREFIX(VertexAttribI2uiEXT): GL_PREFIX(VertexAttribI2uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6712(%rax), %r11 + movq 6720(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31762,13 +31799,13 @@ GL_PREFIX(VertexAttribI2uivEXT): popq %rbp popq %rsi popq %rdi - movq 6712(%rax), %r11 + movq 6720(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6712(%rax), %r11 + movq 6720(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31778,7 +31815,7 @@ GL_PREFIX(VertexAttribI2uivEXT): popq %rbp popq %rsi popq %rdi - movq 6712(%rax), %r11 + movq 6720(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI2uivEXT), .-GL_PREFIX(VertexAttribI2uivEXT) @@ -31789,7 +31826,7 @@ GL_PREFIX(VertexAttribI2uivEXT): GL_PREFIX(VertexAttribI3iEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6720(%rax), %r11 + movq 6728(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31803,13 +31840,13 @@ GL_PREFIX(VertexAttribI3iEXT): popq %rdx popq %rsi popq %rdi - movq 6720(%rax), %r11 + movq 6728(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6720(%rax), %r11 + movq 6728(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31823,7 +31860,7 @@ GL_PREFIX(VertexAttribI3iEXT): popq %rdx popq %rsi popq %rdi - movq 6720(%rax), %r11 + movq 6728(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI3iEXT), .-GL_PREFIX(VertexAttribI3iEXT) @@ -31834,7 +31871,7 @@ GL_PREFIX(VertexAttribI3iEXT): GL_PREFIX(VertexAttribI3ivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6728(%rax), %r11 + movq 6736(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31844,13 +31881,13 @@ GL_PREFIX(VertexAttribI3ivEXT): popq %rbp popq %rsi popq %rdi - movq 6728(%rax), %r11 + movq 6736(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6728(%rax), %r11 + movq 6736(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31860,7 +31897,7 @@ GL_PREFIX(VertexAttribI3ivEXT): popq %rbp popq %rsi popq %rdi - movq 6728(%rax), %r11 + movq 6736(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI3ivEXT), .-GL_PREFIX(VertexAttribI3ivEXT) @@ -31871,7 +31908,7 @@ GL_PREFIX(VertexAttribI3ivEXT): GL_PREFIX(VertexAttribI3uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6736(%rax), %r11 + movq 6744(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31885,13 +31922,13 @@ GL_PREFIX(VertexAttribI3uiEXT): popq %rdx popq %rsi popq %rdi - movq 6736(%rax), %r11 + movq 6744(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6736(%rax), %r11 + movq 6744(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31905,7 +31942,7 @@ GL_PREFIX(VertexAttribI3uiEXT): popq %rdx popq %rsi popq %rdi - movq 6736(%rax), %r11 + movq 6744(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI3uiEXT), .-GL_PREFIX(VertexAttribI3uiEXT) @@ -31916,7 +31953,7 @@ GL_PREFIX(VertexAttribI3uiEXT): GL_PREFIX(VertexAttribI3uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6744(%rax), %r11 + movq 6752(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31926,13 +31963,13 @@ GL_PREFIX(VertexAttribI3uivEXT): popq %rbp popq %rsi popq %rdi - movq 6744(%rax), %r11 + movq 6752(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6744(%rax), %r11 + movq 6752(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31942,7 +31979,7 @@ GL_PREFIX(VertexAttribI3uivEXT): popq %rbp popq %rsi popq %rdi - movq 6744(%rax), %r11 + movq 6752(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI3uivEXT), .-GL_PREFIX(VertexAttribI3uivEXT) @@ -31953,7 +31990,7 @@ GL_PREFIX(VertexAttribI3uivEXT): GL_PREFIX(VertexAttribI4bvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6752(%rax), %r11 + movq 6760(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31963,13 +32000,13 @@ GL_PREFIX(VertexAttribI4bvEXT): popq %rbp popq %rsi popq %rdi - movq 6752(%rax), %r11 + movq 6760(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6752(%rax), %r11 + movq 6760(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31979,7 +32016,7 @@ GL_PREFIX(VertexAttribI4bvEXT): popq %rbp popq %rsi popq %rdi - movq 6752(%rax), %r11 + movq 6760(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4bvEXT), .-GL_PREFIX(VertexAttribI4bvEXT) @@ -31990,7 +32027,7 @@ GL_PREFIX(VertexAttribI4bvEXT): GL_PREFIX(VertexAttribI4iEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6760(%rax), %r11 + movq 6768(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32004,13 +32041,13 @@ GL_PREFIX(VertexAttribI4iEXT): popq %rdx popq %rsi popq %rdi - movq 6760(%rax), %r11 + movq 6768(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6760(%rax), %r11 + movq 6768(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32024,7 +32061,7 @@ GL_PREFIX(VertexAttribI4iEXT): popq %rdx popq %rsi popq %rdi - movq 6760(%rax), %r11 + movq 6768(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4iEXT), .-GL_PREFIX(VertexAttribI4iEXT) @@ -32035,7 +32072,7 @@ GL_PREFIX(VertexAttribI4iEXT): GL_PREFIX(VertexAttribI4ivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6768(%rax), %r11 + movq 6776(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32045,13 +32082,13 @@ GL_PREFIX(VertexAttribI4ivEXT): popq %rbp popq %rsi popq %rdi - movq 6768(%rax), %r11 + movq 6776(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6768(%rax), %r11 + movq 6776(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32061,7 +32098,7 @@ GL_PREFIX(VertexAttribI4ivEXT): popq %rbp popq %rsi popq %rdi - movq 6768(%rax), %r11 + movq 6776(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4ivEXT), .-GL_PREFIX(VertexAttribI4ivEXT) @@ -32072,7 +32109,7 @@ GL_PREFIX(VertexAttribI4ivEXT): GL_PREFIX(VertexAttribI4svEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6776(%rax), %r11 + movq 6784(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32082,13 +32119,13 @@ GL_PREFIX(VertexAttribI4svEXT): popq %rbp popq %rsi popq %rdi - movq 6776(%rax), %r11 + movq 6784(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6776(%rax), %r11 + movq 6784(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32098,7 +32135,7 @@ GL_PREFIX(VertexAttribI4svEXT): popq %rbp popq %rsi popq %rdi - movq 6776(%rax), %r11 + movq 6784(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4svEXT), .-GL_PREFIX(VertexAttribI4svEXT) @@ -32109,7 +32146,7 @@ GL_PREFIX(VertexAttribI4svEXT): GL_PREFIX(VertexAttribI4ubvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6784(%rax), %r11 + movq 6792(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32119,13 +32156,13 @@ GL_PREFIX(VertexAttribI4ubvEXT): popq %rbp popq %rsi popq %rdi - movq 6784(%rax), %r11 + movq 6792(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6784(%rax), %r11 + movq 6792(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32135,7 +32172,7 @@ GL_PREFIX(VertexAttribI4ubvEXT): popq %rbp popq %rsi popq %rdi - movq 6784(%rax), %r11 + movq 6792(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4ubvEXT), .-GL_PREFIX(VertexAttribI4ubvEXT) @@ -32146,7 +32183,7 @@ GL_PREFIX(VertexAttribI4ubvEXT): GL_PREFIX(VertexAttribI4uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6792(%rax), %r11 + movq 6800(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32160,13 +32197,13 @@ GL_PREFIX(VertexAttribI4uiEXT): popq %rdx popq %rsi popq %rdi - movq 6792(%rax), %r11 + movq 6800(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6792(%rax), %r11 + movq 6800(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32180,7 +32217,7 @@ GL_PREFIX(VertexAttribI4uiEXT): popq %rdx popq %rsi popq %rdi - movq 6792(%rax), %r11 + movq 6800(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4uiEXT), .-GL_PREFIX(VertexAttribI4uiEXT) @@ -32191,7 +32228,7 @@ GL_PREFIX(VertexAttribI4uiEXT): GL_PREFIX(VertexAttribI4uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6800(%rax), %r11 + movq 6808(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32201,13 +32238,13 @@ GL_PREFIX(VertexAttribI4uivEXT): popq %rbp popq %rsi popq %rdi - movq 6800(%rax), %r11 + movq 6808(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6800(%rax), %r11 + movq 6808(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32217,7 +32254,7 @@ GL_PREFIX(VertexAttribI4uivEXT): popq %rbp popq %rsi popq %rdi - movq 6800(%rax), %r11 + movq 6808(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4uivEXT), .-GL_PREFIX(VertexAttribI4uivEXT) @@ -32228,7 +32265,7 @@ GL_PREFIX(VertexAttribI4uivEXT): GL_PREFIX(VertexAttribI4usvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6808(%rax), %r11 + movq 6816(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32238,13 +32275,13 @@ GL_PREFIX(VertexAttribI4usvEXT): popq %rbp popq %rsi popq %rdi - movq 6808(%rax), %r11 + movq 6816(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6808(%rax), %r11 + movq 6816(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32254,7 +32291,7 @@ GL_PREFIX(VertexAttribI4usvEXT): popq %rbp popq %rsi popq %rdi - movq 6808(%rax), %r11 + movq 6816(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4usvEXT), .-GL_PREFIX(VertexAttribI4usvEXT) @@ -32265,7 +32302,7 @@ GL_PREFIX(VertexAttribI4usvEXT): GL_PREFIX(VertexAttribIPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6816(%rax), %r11 + movq 6824(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32279,13 +32316,13 @@ GL_PREFIX(VertexAttribIPointerEXT): popq %rdx popq %rsi popq %rdi - movq 6816(%rax), %r11 + movq 6824(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6816(%rax), %r11 + movq 6824(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32299,7 +32336,7 @@ GL_PREFIX(VertexAttribIPointerEXT): popq %rdx popq %rsi popq %rdi - movq 6816(%rax), %r11 + movq 6824(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribIPointerEXT), .-GL_PREFIX(VertexAttribIPointerEXT) @@ -32310,7 +32347,7 @@ GL_PREFIX(VertexAttribIPointerEXT): GL_PREFIX(FramebufferTextureLayerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6824(%rax), %r11 + movq 6832(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32324,13 +32361,13 @@ GL_PREFIX(FramebufferTextureLayerEXT): popq %rdx popq %rsi popq %rdi - movq 6824(%rax), %r11 + movq 6832(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6824(%rax), %r11 + movq 6832(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32344,7 +32381,7 @@ GL_PREFIX(FramebufferTextureLayerEXT): popq %rdx popq %rsi popq %rdi - movq 6824(%rax), %r11 + movq 6832(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FramebufferTextureLayerEXT), .-GL_PREFIX(FramebufferTextureLayerEXT) @@ -32355,7 +32392,7 @@ GL_PREFIX(FramebufferTextureLayerEXT): GL_PREFIX(ColorMaskIndexedEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6832(%rax), %r11 + movq 6840(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32369,13 +32406,13 @@ GL_PREFIX(ColorMaskIndexedEXT): popq %rdx popq %rsi popq %rdi - movq 6832(%rax), %r11 + movq 6840(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6832(%rax), %r11 + movq 6840(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32389,7 +32426,7 @@ GL_PREFIX(ColorMaskIndexedEXT): popq %rdx popq %rsi popq %rdi - movq 6832(%rax), %r11 + movq 6840(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ColorMaskIndexedEXT), .-GL_PREFIX(ColorMaskIndexedEXT) @@ -32400,7 +32437,7 @@ GL_PREFIX(ColorMaskIndexedEXT): GL_PREFIX(DisableIndexedEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6840(%rax), %r11 + movq 6848(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32410,13 +32447,13 @@ GL_PREFIX(DisableIndexedEXT): popq %rbp popq %rsi popq %rdi - movq 6840(%rax), %r11 + movq 6848(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6840(%rax), %r11 + movq 6848(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32426,7 +32463,7 @@ GL_PREFIX(DisableIndexedEXT): popq %rbp popq %rsi popq %rdi - movq 6840(%rax), %r11 + movq 6848(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DisableIndexedEXT), .-GL_PREFIX(DisableIndexedEXT) @@ -32437,7 +32474,7 @@ GL_PREFIX(DisableIndexedEXT): GL_PREFIX(EnableIndexedEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6848(%rax), %r11 + movq 6856(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32447,13 +32484,13 @@ GL_PREFIX(EnableIndexedEXT): popq %rbp popq %rsi popq %rdi - movq 6848(%rax), %r11 + movq 6856(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6848(%rax), %r11 + movq 6856(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32463,7 +32500,7 @@ GL_PREFIX(EnableIndexedEXT): popq %rbp popq %rsi popq %rdi - movq 6848(%rax), %r11 + movq 6856(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EnableIndexedEXT), .-GL_PREFIX(EnableIndexedEXT) @@ -32474,7 +32511,7 @@ GL_PREFIX(EnableIndexedEXT): GL_PREFIX(GetBooleanIndexedvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6856(%rax), %r11 + movq 6864(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32484,13 +32521,13 @@ GL_PREFIX(GetBooleanIndexedvEXT): popq %rdx popq %rsi popq %rdi - movq 6856(%rax), %r11 + movq 6864(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6856(%rax), %r11 + movq 6864(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32500,7 +32537,7 @@ GL_PREFIX(GetBooleanIndexedvEXT): popq %rdx popq %rsi popq %rdi - movq 6856(%rax), %r11 + movq 6864(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetBooleanIndexedvEXT), .-GL_PREFIX(GetBooleanIndexedvEXT) @@ -32511,7 +32548,7 @@ GL_PREFIX(GetBooleanIndexedvEXT): GL_PREFIX(GetIntegerIndexedvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6864(%rax), %r11 + movq 6872(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32521,13 +32558,13 @@ GL_PREFIX(GetIntegerIndexedvEXT): popq %rdx popq %rsi popq %rdi - movq 6864(%rax), %r11 + movq 6872(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6864(%rax), %r11 + movq 6872(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32537,7 +32574,7 @@ GL_PREFIX(GetIntegerIndexedvEXT): popq %rdx popq %rsi popq %rdi - movq 6864(%rax), %r11 + movq 6872(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetIntegerIndexedvEXT), .-GL_PREFIX(GetIntegerIndexedvEXT) @@ -32548,7 +32585,7 @@ GL_PREFIX(GetIntegerIndexedvEXT): GL_PREFIX(IsEnabledIndexedEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6872(%rax), %r11 + movq 6880(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32558,13 +32595,13 @@ GL_PREFIX(IsEnabledIndexedEXT): popq %rbp popq %rsi popq %rdi - movq 6872(%rax), %r11 + movq 6880(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6872(%rax), %r11 + movq 6880(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32574,7 +32611,7 @@ GL_PREFIX(IsEnabledIndexedEXT): popq %rbp popq %rsi popq %rdi - movq 6872(%rax), %r11 + movq 6880(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(IsEnabledIndexedEXT), .-GL_PREFIX(IsEnabledIndexedEXT) @@ -32585,7 +32622,7 @@ GL_PREFIX(IsEnabledIndexedEXT): GL_PREFIX(ClearColorIiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6880(%rax), %r11 + movq 6888(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32599,13 +32636,13 @@ GL_PREFIX(ClearColorIiEXT): popq %rdx popq %rsi popq %rdi - movq 6880(%rax), %r11 + movq 6888(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6880(%rax), %r11 + movq 6888(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32619,7 +32656,7 @@ GL_PREFIX(ClearColorIiEXT): popq %rdx popq %rsi popq %rdi - movq 6880(%rax), %r11 + movq 6888(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ClearColorIiEXT), .-GL_PREFIX(ClearColorIiEXT) @@ -32630,7 +32667,7 @@ GL_PREFIX(ClearColorIiEXT): GL_PREFIX(ClearColorIuiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6888(%rax), %r11 + movq 6896(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32644,13 +32681,13 @@ GL_PREFIX(ClearColorIuiEXT): popq %rdx popq %rsi popq %rdi - movq 6888(%rax), %r11 + movq 6896(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6888(%rax), %r11 + movq 6896(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32664,7 +32701,7 @@ GL_PREFIX(ClearColorIuiEXT): popq %rdx popq %rsi popq %rdi - movq 6888(%rax), %r11 + movq 6896(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ClearColorIuiEXT), .-GL_PREFIX(ClearColorIuiEXT) @@ -32675,7 +32712,7 @@ GL_PREFIX(ClearColorIuiEXT): GL_PREFIX(GetTexParameterIivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6896(%rax), %r11 + movq 6904(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32685,13 +32722,13 @@ GL_PREFIX(GetTexParameterIivEXT): popq %rdx popq %rsi popq %rdi - movq 6896(%rax), %r11 + movq 6904(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6896(%rax), %r11 + movq 6904(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32701,7 +32738,7 @@ GL_PREFIX(GetTexParameterIivEXT): popq %rdx popq %rsi popq %rdi - movq 6896(%rax), %r11 + movq 6904(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetTexParameterIivEXT), .-GL_PREFIX(GetTexParameterIivEXT) @@ -32712,7 +32749,7 @@ GL_PREFIX(GetTexParameterIivEXT): GL_PREFIX(GetTexParameterIuivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6904(%rax), %r11 + movq 6912(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32722,13 +32759,13 @@ GL_PREFIX(GetTexParameterIuivEXT): popq %rdx popq %rsi popq %rdi - movq 6904(%rax), %r11 + movq 6912(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6904(%rax), %r11 + movq 6912(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32738,7 +32775,7 @@ GL_PREFIX(GetTexParameterIuivEXT): popq %rdx popq %rsi popq %rdi - movq 6904(%rax), %r11 + movq 6912(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetTexParameterIuivEXT), .-GL_PREFIX(GetTexParameterIuivEXT) @@ -32749,7 +32786,7 @@ GL_PREFIX(GetTexParameterIuivEXT): GL_PREFIX(TexParameterIivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6912(%rax), %r11 + movq 6920(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32759,13 +32796,13 @@ GL_PREFIX(TexParameterIivEXT): popq %rdx popq %rsi popq %rdi - movq 6912(%rax), %r11 + movq 6920(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6912(%rax), %r11 + movq 6920(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32775,7 +32812,7 @@ GL_PREFIX(TexParameterIivEXT): popq %rdx popq %rsi popq %rdi - movq 6912(%rax), %r11 + movq 6920(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TexParameterIivEXT), .-GL_PREFIX(TexParameterIivEXT) @@ -32786,7 +32823,7 @@ GL_PREFIX(TexParameterIivEXT): GL_PREFIX(TexParameterIuivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6920(%rax), %r11 + movq 6928(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32796,13 +32833,13 @@ GL_PREFIX(TexParameterIuivEXT): popq %rdx popq %rsi popq %rdi - movq 6920(%rax), %r11 + movq 6928(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6920(%rax), %r11 + movq 6928(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32812,7 +32849,7 @@ GL_PREFIX(TexParameterIuivEXT): popq %rdx popq %rsi popq %rdi - movq 6920(%rax), %r11 + movq 6928(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TexParameterIuivEXT), .-GL_PREFIX(TexParameterIuivEXT) @@ -32823,7 +32860,7 @@ GL_PREFIX(TexParameterIuivEXT): GL_PREFIX(BeginConditionalRenderNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6928(%rax), %r11 + movq 6936(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32833,13 +32870,13 @@ GL_PREFIX(BeginConditionalRenderNV): popq %rbp popq %rsi popq %rdi - movq 6928(%rax), %r11 + movq 6936(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6928(%rax), %r11 + movq 6936(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32849,7 +32886,7 @@ GL_PREFIX(BeginConditionalRenderNV): popq %rbp popq %rsi popq %rdi - movq 6928(%rax), %r11 + movq 6936(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BeginConditionalRenderNV), .-GL_PREFIX(BeginConditionalRenderNV) @@ -32860,25 +32897,25 @@ GL_PREFIX(BeginConditionalRenderNV): GL_PREFIX(EndConditionalRenderNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6936(%rax), %r11 + movq 6944(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 6936(%rax), %r11 + movq 6944(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6936(%rax), %r11 + movq 6944(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 6936(%rax), %r11 + movq 6944(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EndConditionalRenderNV), .-GL_PREFIX(EndConditionalRenderNV) @@ -32889,25 +32926,25 @@ GL_PREFIX(EndConditionalRenderNV): GL_PREFIX(BeginTransformFeedbackEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6944(%rax), %r11 + movq 6952(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6944(%rax), %r11 + movq 6952(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6944(%rax), %r11 + movq 6952(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6944(%rax), %r11 + movq 6952(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BeginTransformFeedbackEXT), .-GL_PREFIX(BeginTransformFeedbackEXT) @@ -32918,7 +32955,7 @@ GL_PREFIX(BeginTransformFeedbackEXT): GL_PREFIX(BindBufferBaseEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6952(%rax), %r11 + movq 6960(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32928,13 +32965,13 @@ GL_PREFIX(BindBufferBaseEXT): popq %rdx popq %rsi popq %rdi - movq 6952(%rax), %r11 + movq 6960(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6952(%rax), %r11 + movq 6960(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32944,7 +32981,7 @@ GL_PREFIX(BindBufferBaseEXT): popq %rdx popq %rsi popq %rdi - movq 6952(%rax), %r11 + movq 6960(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindBufferBaseEXT), .-GL_PREFIX(BindBufferBaseEXT) @@ -32955,7 +32992,7 @@ GL_PREFIX(BindBufferBaseEXT): GL_PREFIX(BindBufferOffsetEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6960(%rax), %r11 + movq 6968(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32969,13 +33006,13 @@ GL_PREFIX(BindBufferOffsetEXT): popq %rdx popq %rsi popq %rdi - movq 6960(%rax), %r11 + movq 6968(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6960(%rax), %r11 + movq 6968(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32989,7 +33026,7 @@ GL_PREFIX(BindBufferOffsetEXT): popq %rdx popq %rsi popq %rdi - movq 6960(%rax), %r11 + movq 6968(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindBufferOffsetEXT), .-GL_PREFIX(BindBufferOffsetEXT) @@ -33000,7 +33037,7 @@ GL_PREFIX(BindBufferOffsetEXT): GL_PREFIX(BindBufferRangeEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6968(%rax), %r11 + movq 6976(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33014,13 +33051,13 @@ GL_PREFIX(BindBufferRangeEXT): popq %rdx popq %rsi popq %rdi - movq 6968(%rax), %r11 + movq 6976(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6968(%rax), %r11 + movq 6976(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33034,7 +33071,7 @@ GL_PREFIX(BindBufferRangeEXT): popq %rdx popq %rsi popq %rdi - movq 6968(%rax), %r11 + movq 6976(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindBufferRangeEXT), .-GL_PREFIX(BindBufferRangeEXT) @@ -33045,25 +33082,25 @@ GL_PREFIX(BindBufferRangeEXT): GL_PREFIX(EndTransformFeedbackEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6976(%rax), %r11 + movq 6984(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 6976(%rax), %r11 + movq 6984(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6976(%rax), %r11 + movq 6984(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 6976(%rax), %r11 + movq 6984(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EndTransformFeedbackEXT), .-GL_PREFIX(EndTransformFeedbackEXT) @@ -33074,7 +33111,7 @@ GL_PREFIX(EndTransformFeedbackEXT): GL_PREFIX(GetTransformFeedbackVaryingEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6984(%rax), %r11 + movq 6992(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33092,13 +33129,13 @@ GL_PREFIX(GetTransformFeedbackVaryingEXT): popq %rdx popq %rsi popq %rdi - movq 6984(%rax), %r11 + movq 6992(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6984(%rax), %r11 + movq 6992(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33116,7 +33153,7 @@ GL_PREFIX(GetTransformFeedbackVaryingEXT): popq %rdx popq %rsi popq %rdi - movq 6984(%rax), %r11 + movq 6992(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetTransformFeedbackVaryingEXT), .-GL_PREFIX(GetTransformFeedbackVaryingEXT) @@ -33127,7 +33164,7 @@ GL_PREFIX(GetTransformFeedbackVaryingEXT): GL_PREFIX(TransformFeedbackVaryingsEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6992(%rax), %r11 + movq 7000(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33141,13 +33178,13 @@ GL_PREFIX(TransformFeedbackVaryingsEXT): popq %rdx popq %rsi popq %rdi - movq 6992(%rax), %r11 + movq 7000(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6992(%rax), %r11 + movq 7000(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33161,7 +33198,7 @@ GL_PREFIX(TransformFeedbackVaryingsEXT): popq %rdx popq %rsi popq %rdi - movq 6992(%rax), %r11 + movq 7000(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TransformFeedbackVaryingsEXT), .-GL_PREFIX(TransformFeedbackVaryingsEXT) @@ -33170,47 +33207,13 @@ GL_PREFIX(TransformFeedbackVaryingsEXT): .globl GL_PREFIX(ProvokingVertexEXT) .type GL_PREFIX(ProvokingVertexEXT), @function GL_PREFIX(ProvokingVertexEXT): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 7000(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rdi - call _x86_64_get_dispatch@PLT - popq %rdi - movq 7000(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 7000(%rax), %r11 - jmp *%r11 -1: - pushq %rdi - call _glapi_get_dispatch - popq %rdi - movq 7000(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(ProvokingVertexEXT), .-GL_PREFIX(ProvokingVertexEXT) - - .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_876) - .type GL_PREFIX(_dispatch_stub_876), @function - HIDDEN(GL_PREFIX(_dispatch_stub_876)) -GL_PREFIX(_dispatch_stub_876): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 7008(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi - pushq %rsi - pushq %rdx call _x86_64_get_dispatch@PLT - popq %rdx - popq %rsi popq %rdi movq 7008(%rax), %r11 jmp *%r11 @@ -33222,16 +33225,12 @@ GL_PREFIX(_dispatch_stub_876): jmp *%r11 1: pushq %rdi - pushq %rsi - pushq %rdx call _glapi_get_dispatch - popq %rdx - popq %rsi popq %rdi movq 7008(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_876), .-GL_PREFIX(_dispatch_stub_876) + .size GL_PREFIX(ProvokingVertexEXT), .-GL_PREFIX(ProvokingVertexEXT) .p2align 4,,15 .globl GL_PREFIX(_dispatch_stub_877) @@ -33272,9 +33271,10 @@ GL_PREFIX(_dispatch_stub_877): .size GL_PREFIX(_dispatch_stub_877), .-GL_PREFIX(_dispatch_stub_877) .p2align 4,,15 - .globl GL_PREFIX(GetObjectParameterivAPPLE) - .type GL_PREFIX(GetObjectParameterivAPPLE), @function -GL_PREFIX(GetObjectParameterivAPPLE): + .globl GL_PREFIX(_dispatch_stub_878) + .type GL_PREFIX(_dispatch_stub_878), @function + HIDDEN(GL_PREFIX(_dispatch_stub_878)) +GL_PREFIX(_dispatch_stub_878): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 7024(%rax), %r11 @@ -33283,11 +33283,7 @@ GL_PREFIX(GetObjectParameterivAPPLE): pushq %rdi pushq %rsi pushq %rdx - pushq %rcx - pushq %rbp call _x86_64_get_dispatch@PLT - popq %rbp - popq %rcx popq %rdx popq %rsi popq %rdi @@ -33299,6 +33295,47 @@ GL_PREFIX(GetObjectParameterivAPPLE): je 1f movq 7024(%rax), %r11 jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + call _glapi_get_dispatch + popq %rdx + popq %rsi + popq %rdi + movq 7024(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_878), .-GL_PREFIX(_dispatch_stub_878) + + .p2align 4,,15 + .globl GL_PREFIX(GetObjectParameterivAPPLE) + .type GL_PREFIX(GetObjectParameterivAPPLE), @function +GL_PREFIX(GetObjectParameterivAPPLE): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 7032(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rcx + popq %rdx + popq %rsi + popq %rdi + movq 7032(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 7032(%rax), %r11 + jmp *%r11 1: pushq %rdi pushq %rsi @@ -33311,7 +33348,7 @@ GL_PREFIX(GetObjectParameterivAPPLE): popq %rdx popq %rsi popq %rdi - movq 7024(%rax), %r11 + movq 7032(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetObjectParameterivAPPLE), .-GL_PREFIX(GetObjectParameterivAPPLE) @@ -33322,7 +33359,7 @@ GL_PREFIX(GetObjectParameterivAPPLE): GL_PREFIX(ObjectPurgeableAPPLE): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7032(%rax), %r11 + movq 7040(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33332,13 +33369,13 @@ GL_PREFIX(ObjectPurgeableAPPLE): popq %rdx popq %rsi popq %rdi - movq 7032(%rax), %r11 + movq 7040(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7032(%rax), %r11 + movq 7040(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33348,7 +33385,7 @@ GL_PREFIX(ObjectPurgeableAPPLE): popq %rdx popq %rsi popq %rdi - movq 7032(%rax), %r11 + movq 7040(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ObjectPurgeableAPPLE), .-GL_PREFIX(ObjectPurgeableAPPLE) @@ -33359,7 +33396,7 @@ GL_PREFIX(ObjectPurgeableAPPLE): GL_PREFIX(ObjectUnpurgeableAPPLE): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7040(%rax), %r11 + movq 7048(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33369,13 +33406,13 @@ GL_PREFIX(ObjectUnpurgeableAPPLE): popq %rdx popq %rsi popq %rdi - movq 7040(%rax), %r11 + movq 7048(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7040(%rax), %r11 + movq 7048(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33385,7 +33422,7 @@ GL_PREFIX(ObjectUnpurgeableAPPLE): popq %rdx popq %rsi popq %rdi - movq 7040(%rax), %r11 + movq 7048(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ObjectUnpurgeableAPPLE), .-GL_PREFIX(ObjectUnpurgeableAPPLE) @@ -33396,25 +33433,25 @@ GL_PREFIX(ObjectUnpurgeableAPPLE): GL_PREFIX(ActiveProgramEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7048(%rax), %r11 + movq 7056(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 7048(%rax), %r11 + movq 7056(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7048(%rax), %r11 + movq 7056(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 7048(%rax), %r11 + movq 7056(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ActiveProgramEXT), .-GL_PREFIX(ActiveProgramEXT) @@ -33425,7 +33462,7 @@ GL_PREFIX(ActiveProgramEXT): GL_PREFIX(CreateShaderProgramEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7056(%rax), %r11 + movq 7064(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33435,13 +33472,13 @@ GL_PREFIX(CreateShaderProgramEXT): popq %rbp popq %rsi popq %rdi - movq 7056(%rax), %r11 + movq 7064(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7056(%rax), %r11 + movq 7064(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33451,7 +33488,7 @@ GL_PREFIX(CreateShaderProgramEXT): popq %rbp popq %rsi popq %rdi - movq 7056(%rax), %r11 + movq 7064(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CreateShaderProgramEXT), .-GL_PREFIX(CreateShaderProgramEXT) @@ -33462,7 +33499,7 @@ GL_PREFIX(CreateShaderProgramEXT): GL_PREFIX(UseShaderProgramEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7064(%rax), %r11 + movq 7072(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33472,13 +33509,13 @@ GL_PREFIX(UseShaderProgramEXT): popq %rbp popq %rsi popq %rdi - movq 7064(%rax), %r11 + movq 7072(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7064(%rax), %r11 + movq 7072(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33488,7 +33525,7 @@ GL_PREFIX(UseShaderProgramEXT): popq %rbp popq %rsi popq %rdi - movq 7064(%rax), %r11 + movq 7072(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(UseShaderProgramEXT), .-GL_PREFIX(UseShaderProgramEXT) @@ -33499,75 +33536,29 @@ GL_PREFIX(UseShaderProgramEXT): GL_PREFIX(TextureBarrierNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7072(%rax), %r11 + movq 7080(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 7072(%rax), %r11 + movq 7080(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7072(%rax), %r11 + movq 7080(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 7072(%rax), %r11 + movq 7080(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TextureBarrierNV), .-GL_PREFIX(TextureBarrierNV) - .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_885) - .type GL_PREFIX(_dispatch_stub_885), @function - HIDDEN(GL_PREFIX(_dispatch_stub_885)) -GL_PREFIX(_dispatch_stub_885): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 7080(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rdi - pushq %rsi - pushq %rdx - pushq %rcx - pushq %rbp - call _x86_64_get_dispatch@PLT - popq %rbp - popq %rcx - popq %rdx - popq %rsi - popq %rdi - movq 7080(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 7080(%rax), %r11 - jmp *%r11 -1: - pushq %rdi - pushq %rsi - pushq %rdx - pushq %rcx - pushq %rbp - call _glapi_get_dispatch - popq %rbp - popq %rcx - popq %rdx - popq %rsi - popq %rdi - movq 7080(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_885), .-GL_PREFIX(_dispatch_stub_885) - .p2align 4,,15 .globl GL_PREFIX(_dispatch_stub_886) .type GL_PREFIX(_dispatch_stub_886), @function @@ -33673,7 +33664,11 @@ GL_PREFIX(_dispatch_stub_888): pushq %rdi pushq %rsi pushq %rdx + pushq %rcx + pushq %rbp call _x86_64_get_dispatch@PLT + popq %rbp + popq %rcx popq %rdx popq %rsi popq %rdi @@ -33689,7 +33684,11 @@ GL_PREFIX(_dispatch_stub_888): pushq %rdi pushq %rsi pushq %rdx + pushq %rcx + pushq %rbp call _glapi_get_dispatch + popq %rbp + popq %rcx popq %rdx popq %rsi popq %rdi @@ -33737,9 +33736,10 @@ GL_PREFIX(_dispatch_stub_889): .size GL_PREFIX(_dispatch_stub_889), .-GL_PREFIX(_dispatch_stub_889) .p2align 4,,15 - .globl GL_PREFIX(EGLImageTargetRenderbufferStorageOES) - .type GL_PREFIX(EGLImageTargetRenderbufferStorageOES), @function -GL_PREFIX(EGLImageTargetRenderbufferStorageOES): + .globl GL_PREFIX(_dispatch_stub_890) + .type GL_PREFIX(_dispatch_stub_890), @function + HIDDEN(GL_PREFIX(_dispatch_stub_890)) +GL_PREFIX(_dispatch_stub_890): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 7120(%rax), %r11 @@ -33747,9 +33747,9 @@ GL_PREFIX(EGLImageTargetRenderbufferStorageOES): #elif defined(PTHREADS) pushq %rdi pushq %rsi - pushq %rbp + pushq %rdx call _x86_64_get_dispatch@PLT - popq %rbp + popq %rdx popq %rsi popq %rdi movq 7120(%rax), %r11 @@ -33760,6 +33760,43 @@ GL_PREFIX(EGLImageTargetRenderbufferStorageOES): je 1f movq 7120(%rax), %r11 jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + call _glapi_get_dispatch + popq %rdx + popq %rsi + popq %rdi + movq 7120(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_890), .-GL_PREFIX(_dispatch_stub_890) + + .p2align 4,,15 + .globl GL_PREFIX(EGLImageTargetRenderbufferStorageOES) + .type GL_PREFIX(EGLImageTargetRenderbufferStorageOES), @function +GL_PREFIX(EGLImageTargetRenderbufferStorageOES): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 7128(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi + popq %rdi + movq 7128(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 7128(%rax), %r11 + jmp *%r11 1: pushq %rdi pushq %rsi @@ -33768,7 +33805,7 @@ GL_PREFIX(EGLImageTargetRenderbufferStorageOES): popq %rbp popq %rsi popq %rdi - movq 7120(%rax), %r11 + movq 7128(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EGLImageTargetRenderbufferStorageOES), .-GL_PREFIX(EGLImageTargetRenderbufferStorageOES) @@ -33779,7 +33816,7 @@ GL_PREFIX(EGLImageTargetRenderbufferStorageOES): GL_PREFIX(EGLImageTargetTexture2DOES): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7128(%rax), %r11 + movq 7136(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33789,13 +33826,13 @@ GL_PREFIX(EGLImageTargetTexture2DOES): popq %rbp popq %rsi popq %rdi - movq 7128(%rax), %r11 + movq 7136(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7128(%rax), %r11 + movq 7136(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33805,7 +33842,7 @@ GL_PREFIX(EGLImageTargetTexture2DOES): popq %rbp popq %rsi popq %rdi - movq 7128(%rax), %r11 + movq 7136(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EGLImageTargetTexture2DOES), .-GL_PREFIX(EGLImageTargetTexture2DOES) @@ -34068,10 +34105,10 @@ GL_PREFIX(EGLImageTargetTexture2DOES): .globl GL_PREFIX(IsProgramARB) ; .set GL_PREFIX(IsProgramARB), GL_PREFIX(IsProgramNV) .globl GL_PREFIX(PointParameteri) ; .set GL_PREFIX(PointParameteri), GL_PREFIX(PointParameteriNV) .globl GL_PREFIX(PointParameteriv) ; .set GL_PREFIX(PointParameteriv), GL_PREFIX(PointParameterivNV) - .globl GL_PREFIX(DeleteVertexArrays) ; .set GL_PREFIX(DeleteVertexArrays), GL_PREFIX(_dispatch_stub_786) - .globl GL_PREFIX(IsVertexArray) ; .set GL_PREFIX(IsVertexArray), GL_PREFIX(_dispatch_stub_788) + .globl GL_PREFIX(DeleteVertexArrays) ; .set GL_PREFIX(DeleteVertexArrays), GL_PREFIX(_dispatch_stub_787) + .globl GL_PREFIX(IsVertexArray) ; .set GL_PREFIX(IsVertexArray), GL_PREFIX(_dispatch_stub_789) .globl GL_PREFIX(PrimitiveRestartIndex) ; .set GL_PREFIX(PrimitiveRestartIndex), GL_PREFIX(PrimitiveRestartIndexNV) - .globl GL_PREFIX(BlendEquationSeparate) ; .set GL_PREFIX(BlendEquationSeparate), GL_PREFIX(_dispatch_stub_798) + .globl GL_PREFIX(BlendEquationSeparate) ; .set GL_PREFIX(BlendEquationSeparate), GL_PREFIX(_dispatch_stub_799) .globl GL_PREFIX(BindFramebuffer) ; .set GL_PREFIX(BindFramebuffer), GL_PREFIX(BindFramebufferEXT) .globl GL_PREFIX(BindRenderbuffer) ; .set GL_PREFIX(BindRenderbuffer), GL_PREFIX(BindRenderbufferEXT) .globl GL_PREFIX(CheckFramebufferStatus) ; .set GL_PREFIX(CheckFramebufferStatus), GL_PREFIX(CheckFramebufferStatusEXT) @@ -34089,7 +34126,7 @@ GL_PREFIX(EGLImageTargetTexture2DOES): .globl GL_PREFIX(IsFramebuffer) ; .set GL_PREFIX(IsFramebuffer), GL_PREFIX(IsFramebufferEXT) .globl GL_PREFIX(IsRenderbuffer) ; .set GL_PREFIX(IsRenderbuffer), GL_PREFIX(IsRenderbufferEXT) .globl GL_PREFIX(RenderbufferStorage) ; .set GL_PREFIX(RenderbufferStorage), GL_PREFIX(RenderbufferStorageEXT) - .globl GL_PREFIX(BlitFramebuffer) ; .set GL_PREFIX(BlitFramebuffer), GL_PREFIX(_dispatch_stub_816) + .globl GL_PREFIX(BlitFramebuffer) ; .set GL_PREFIX(BlitFramebuffer), GL_PREFIX(_dispatch_stub_817) .globl GL_PREFIX(BindFragDataLocation) ; .set GL_PREFIX(BindFragDataLocation), GL_PREFIX(BindFragDataLocationEXT) .globl GL_PREFIX(GetFragDataLocation) ; .set GL_PREFIX(GetFragDataLocation), GL_PREFIX(GetFragDataLocationEXT) .globl GL_PREFIX(GetUniformuiv) ; .set GL_PREFIX(GetUniformuiv), GL_PREFIX(GetUniformuivEXT) diff --git a/src/mapi/glapi/glapi_x86.S b/src/mapi/glapi/glapi_x86.S index 2ef45f3b734..7b3da73365f 100644 --- a/src/mapi/glapi/glapi_x86.S +++ b/src/mapi/glapi/glapi_x86.S @@ -722,47 +722,46 @@ GLNAME(gl_dispatch_functions_start): GL_STUB(GetActiveAttribARB, 569, GetActiveAttribARB@28) GL_STUB(GetAttribLocationARB, 570, GetAttribLocationARB@8) GL_STUB(DrawBuffersARB, 571, DrawBuffersARB@8) - GL_STUB(DrawArraysInstancedARB, 572, DrawArraysInstancedARB@16) - GL_STUB(DrawElementsInstancedARB, 573, DrawElementsInstancedARB@20) - GL_STUB(RenderbufferStorageMultisample, 574, RenderbufferStorageMultisample@20) - GL_STUB(FramebufferTextureARB, 575, FramebufferTextureARB@16) - GL_STUB(FramebufferTextureFaceARB, 576, FramebufferTextureFaceARB@20) - GL_STUB(ProgramParameteriARB, 577, ProgramParameteriARB@12) - GL_STUB(VertexAttribDivisorARB, 578, VertexAttribDivisorARB@8) - GL_STUB(FlushMappedBufferRange, 579, FlushMappedBufferRange@12) - GL_STUB(MapBufferRange, 580, MapBufferRange@16) - GL_STUB(BindVertexArray, 581, BindVertexArray@4) - GL_STUB(GenVertexArrays, 582, GenVertexArrays@8) - GL_STUB(CopyBufferSubData, 583, CopyBufferSubData@20) - GL_STUB(ClientWaitSync, 584, ClientWaitSync@12) - GL_STUB(DeleteSync, 585, DeleteSync@4) - GL_STUB(FenceSync, 586, FenceSync@8) - GL_STUB(GetInteger64v, 587, GetInteger64v@8) - GL_STUB(GetSynciv, 588, GetSynciv@20) - GL_STUB(IsSync, 589, IsSync@4) - GL_STUB(WaitSync, 590, WaitSync@12) - GL_STUB(DrawElementsBaseVertex, 591, DrawElementsBaseVertex@20) - GL_STUB(DrawRangeElementsBaseVertex, 592, DrawRangeElementsBaseVertex@28) - GL_STUB(MultiDrawElementsBaseVertex, 593, MultiDrawElementsBaseVertex@24) - GL_STUB(BlendEquationSeparateiARB, 594, BlendEquationSeparateiARB@12) - GL_STUB(BlendEquationiARB, 595, BlendEquationiARB@8) - GL_STUB(BlendFuncSeparateiARB, 596, BlendFuncSeparateiARB@20) - GL_STUB(BlendFunciARB, 597, BlendFunciARB@12) - GL_STUB(BindTransformFeedback, 598, BindTransformFeedback@8) - GL_STUB(DeleteTransformFeedbacks, 599, DeleteTransformFeedbacks@8) - GL_STUB(DrawTransformFeedback, 600, DrawTransformFeedback@8) - GL_STUB(GenTransformFeedbacks, 601, GenTransformFeedbacks@8) - GL_STUB(IsTransformFeedback, 602, IsTransformFeedback@4) - GL_STUB(PauseTransformFeedback, 603, PauseTransformFeedback@0) - GL_STUB(ResumeTransformFeedback, 604, ResumeTransformFeedback@0) - GL_STUB(ClearDepthf, 605, ClearDepthf@4) - GL_STUB(DepthRangef, 606, DepthRangef@8) - GL_STUB(GetShaderPrecisionFormat, 607, GetShaderPrecisionFormat@16) - GL_STUB(ReleaseShaderCompiler, 608, ReleaseShaderCompiler@0) - GL_STUB(ShaderBinary, 609, ShaderBinary@20) - GL_STUB(PolygonOffsetEXT, 610, PolygonOffsetEXT@8) - GL_STUB(_dispatch_stub_611, 611, _dispatch_stub_611@8) - HIDDEN(GL_PREFIX(_dispatch_stub_611, _dispatch_stub_611@8)) + GL_STUB(ClampColorARB, 572, ClampColorARB@8) + GL_STUB(DrawArraysInstancedARB, 573, DrawArraysInstancedARB@16) + GL_STUB(DrawElementsInstancedARB, 574, DrawElementsInstancedARB@20) + GL_STUB(RenderbufferStorageMultisample, 575, RenderbufferStorageMultisample@20) + GL_STUB(FramebufferTextureARB, 576, FramebufferTextureARB@16) + GL_STUB(FramebufferTextureFaceARB, 577, FramebufferTextureFaceARB@20) + GL_STUB(ProgramParameteriARB, 578, ProgramParameteriARB@12) + GL_STUB(VertexAttribDivisorARB, 579, VertexAttribDivisorARB@8) + GL_STUB(FlushMappedBufferRange, 580, FlushMappedBufferRange@12) + GL_STUB(MapBufferRange, 581, MapBufferRange@16) + GL_STUB(BindVertexArray, 582, BindVertexArray@4) + GL_STUB(GenVertexArrays, 583, GenVertexArrays@8) + GL_STUB(CopyBufferSubData, 584, CopyBufferSubData@20) + GL_STUB(ClientWaitSync, 585, ClientWaitSync@12) + GL_STUB(DeleteSync, 586, DeleteSync@4) + GL_STUB(FenceSync, 587, FenceSync@8) + GL_STUB(GetInteger64v, 588, GetInteger64v@8) + GL_STUB(GetSynciv, 589, GetSynciv@20) + GL_STUB(IsSync, 590, IsSync@4) + GL_STUB(WaitSync, 591, WaitSync@12) + GL_STUB(DrawElementsBaseVertex, 592, DrawElementsBaseVertex@20) + GL_STUB(DrawRangeElementsBaseVertex, 593, DrawRangeElementsBaseVertex@28) + GL_STUB(MultiDrawElementsBaseVertex, 594, MultiDrawElementsBaseVertex@24) + GL_STUB(BlendEquationSeparateiARB, 595, BlendEquationSeparateiARB@12) + GL_STUB(BlendEquationiARB, 596, BlendEquationiARB@8) + GL_STUB(BlendFuncSeparateiARB, 597, BlendFuncSeparateiARB@20) + GL_STUB(BlendFunciARB, 598, BlendFunciARB@12) + GL_STUB(BindTransformFeedback, 599, BindTransformFeedback@8) + GL_STUB(DeleteTransformFeedbacks, 600, DeleteTransformFeedbacks@8) + GL_STUB(DrawTransformFeedback, 601, DrawTransformFeedback@8) + GL_STUB(GenTransformFeedbacks, 602, GenTransformFeedbacks@8) + GL_STUB(IsTransformFeedback, 603, IsTransformFeedback@4) + GL_STUB(PauseTransformFeedback, 604, PauseTransformFeedback@0) + GL_STUB(ResumeTransformFeedback, 605, ResumeTransformFeedback@0) + GL_STUB(ClearDepthf, 606, ClearDepthf@4) + GL_STUB(DepthRangef, 607, DepthRangef@8) + GL_STUB(GetShaderPrecisionFormat, 608, GetShaderPrecisionFormat@16) + GL_STUB(ReleaseShaderCompiler, 609, ReleaseShaderCompiler@0) + GL_STUB(ShaderBinary, 610, ShaderBinary@20) + GL_STUB(PolygonOffsetEXT, 611, PolygonOffsetEXT@8) GL_STUB(_dispatch_stub_612, 612, _dispatch_stub_612@8) HIDDEN(GL_PREFIX(_dispatch_stub_612, _dispatch_stub_612@8)) GL_STUB(_dispatch_stub_613, 613, _dispatch_stub_613@8) @@ -775,308 +774,310 @@ GLNAME(gl_dispatch_functions_start): HIDDEN(GL_PREFIX(_dispatch_stub_616, _dispatch_stub_616@8)) GL_STUB(_dispatch_stub_617, 617, _dispatch_stub_617@8) HIDDEN(GL_PREFIX(_dispatch_stub_617, _dispatch_stub_617@8)) - GL_STUB(_dispatch_stub_618, 618, _dispatch_stub_618@4) - HIDDEN(GL_PREFIX(_dispatch_stub_618, _dispatch_stub_618@4)) - GL_STUB(ColorPointerEXT, 619, ColorPointerEXT@20) - GL_STUB(EdgeFlagPointerEXT, 620, EdgeFlagPointerEXT@12) - GL_STUB(IndexPointerEXT, 621, IndexPointerEXT@16) - GL_STUB(NormalPointerEXT, 622, NormalPointerEXT@16) - GL_STUB(TexCoordPointerEXT, 623, TexCoordPointerEXT@20) - GL_STUB(VertexPointerEXT, 624, VertexPointerEXT@20) - GL_STUB(PointParameterfEXT, 625, PointParameterfEXT@8) - GL_STUB(PointParameterfvEXT, 626, PointParameterfvEXT@8) - GL_STUB(LockArraysEXT, 627, LockArraysEXT@8) - GL_STUB(UnlockArraysEXT, 628, UnlockArraysEXT@0) - GL_STUB(SecondaryColor3bEXT, 629, SecondaryColor3bEXT@12) - GL_STUB(SecondaryColor3bvEXT, 630, SecondaryColor3bvEXT@4) - GL_STUB(SecondaryColor3dEXT, 631, SecondaryColor3dEXT@24) - GL_STUB(SecondaryColor3dvEXT, 632, SecondaryColor3dvEXT@4) - GL_STUB(SecondaryColor3fEXT, 633, SecondaryColor3fEXT@12) - GL_STUB(SecondaryColor3fvEXT, 634, SecondaryColor3fvEXT@4) - GL_STUB(SecondaryColor3iEXT, 635, SecondaryColor3iEXT@12) - GL_STUB(SecondaryColor3ivEXT, 636, SecondaryColor3ivEXT@4) - GL_STUB(SecondaryColor3sEXT, 637, SecondaryColor3sEXT@12) - GL_STUB(SecondaryColor3svEXT, 638, SecondaryColor3svEXT@4) - GL_STUB(SecondaryColor3ubEXT, 639, SecondaryColor3ubEXT@12) - GL_STUB(SecondaryColor3ubvEXT, 640, SecondaryColor3ubvEXT@4) - GL_STUB(SecondaryColor3uiEXT, 641, SecondaryColor3uiEXT@12) - GL_STUB(SecondaryColor3uivEXT, 642, SecondaryColor3uivEXT@4) - GL_STUB(SecondaryColor3usEXT, 643, SecondaryColor3usEXT@12) - GL_STUB(SecondaryColor3usvEXT, 644, SecondaryColor3usvEXT@4) - GL_STUB(SecondaryColorPointerEXT, 645, SecondaryColorPointerEXT@16) - GL_STUB(MultiDrawArraysEXT, 646, MultiDrawArraysEXT@16) - GL_STUB(MultiDrawElementsEXT, 647, MultiDrawElementsEXT@20) - GL_STUB(FogCoordPointerEXT, 648, FogCoordPointerEXT@12) - GL_STUB(FogCoorddEXT, 649, FogCoorddEXT@8) - GL_STUB(FogCoorddvEXT, 650, FogCoorddvEXT@4) - GL_STUB(FogCoordfEXT, 651, FogCoordfEXT@4) - GL_STUB(FogCoordfvEXT, 652, FogCoordfvEXT@4) - GL_STUB(_dispatch_stub_653, 653, _dispatch_stub_653@4) - HIDDEN(GL_PREFIX(_dispatch_stub_653, _dispatch_stub_653@4)) - GL_STUB(BlendFuncSeparateEXT, 654, BlendFuncSeparateEXT@16) - GL_STUB(FlushVertexArrayRangeNV, 655, FlushVertexArrayRangeNV@0) - GL_STUB(VertexArrayRangeNV, 656, VertexArrayRangeNV@8) - GL_STUB(CombinerInputNV, 657, CombinerInputNV@24) - GL_STUB(CombinerOutputNV, 658, CombinerOutputNV@40) - GL_STUB(CombinerParameterfNV, 659, CombinerParameterfNV@8) - GL_STUB(CombinerParameterfvNV, 660, CombinerParameterfvNV@8) - GL_STUB(CombinerParameteriNV, 661, CombinerParameteriNV@8) - GL_STUB(CombinerParameterivNV, 662, CombinerParameterivNV@8) - GL_STUB(FinalCombinerInputNV, 663, FinalCombinerInputNV@16) - GL_STUB(GetCombinerInputParameterfvNV, 664, GetCombinerInputParameterfvNV@20) - GL_STUB(GetCombinerInputParameterivNV, 665, GetCombinerInputParameterivNV@20) - GL_STUB(GetCombinerOutputParameterfvNV, 666, GetCombinerOutputParameterfvNV@16) - GL_STUB(GetCombinerOutputParameterivNV, 667, GetCombinerOutputParameterivNV@16) - GL_STUB(GetFinalCombinerInputParameterfvNV, 668, GetFinalCombinerInputParameterfvNV@12) - GL_STUB(GetFinalCombinerInputParameterivNV, 669, GetFinalCombinerInputParameterivNV@12) - GL_STUB(ResizeBuffersMESA, 670, ResizeBuffersMESA@0) - GL_STUB(WindowPos2dMESA, 671, WindowPos2dMESA@16) - GL_STUB(WindowPos2dvMESA, 672, WindowPos2dvMESA@4) - GL_STUB(WindowPos2fMESA, 673, WindowPos2fMESA@8) - GL_STUB(WindowPos2fvMESA, 674, WindowPos2fvMESA@4) - GL_STUB(WindowPos2iMESA, 675, WindowPos2iMESA@8) - GL_STUB(WindowPos2ivMESA, 676, WindowPos2ivMESA@4) - GL_STUB(WindowPos2sMESA, 677, WindowPos2sMESA@8) - GL_STUB(WindowPos2svMESA, 678, WindowPos2svMESA@4) - GL_STUB(WindowPos3dMESA, 679, WindowPos3dMESA@24) - GL_STUB(WindowPos3dvMESA, 680, WindowPos3dvMESA@4) - GL_STUB(WindowPos3fMESA, 681, WindowPos3fMESA@12) - GL_STUB(WindowPos3fvMESA, 682, WindowPos3fvMESA@4) - GL_STUB(WindowPos3iMESA, 683, WindowPos3iMESA@12) - GL_STUB(WindowPos3ivMESA, 684, WindowPos3ivMESA@4) - GL_STUB(WindowPos3sMESA, 685, WindowPos3sMESA@12) - GL_STUB(WindowPos3svMESA, 686, WindowPos3svMESA@4) - GL_STUB(WindowPos4dMESA, 687, WindowPos4dMESA@32) - GL_STUB(WindowPos4dvMESA, 688, WindowPos4dvMESA@4) - GL_STUB(WindowPos4fMESA, 689, WindowPos4fMESA@16) - GL_STUB(WindowPos4fvMESA, 690, WindowPos4fvMESA@4) - GL_STUB(WindowPos4iMESA, 691, WindowPos4iMESA@16) - GL_STUB(WindowPos4ivMESA, 692, WindowPos4ivMESA@4) - GL_STUB(WindowPos4sMESA, 693, WindowPos4sMESA@16) - GL_STUB(WindowPos4svMESA, 694, WindowPos4svMESA@4) - GL_STUB(_dispatch_stub_695, 695, _dispatch_stub_695@20) - HIDDEN(GL_PREFIX(_dispatch_stub_695, _dispatch_stub_695@20)) - GL_STUB(_dispatch_stub_696, 696, _dispatch_stub_696@24) - HIDDEN(GL_PREFIX(_dispatch_stub_696, _dispatch_stub_696@24)) - GL_STUB(_dispatch_stub_697, 697, _dispatch_stub_697@8) - HIDDEN(GL_PREFIX(_dispatch_stub_697, _dispatch_stub_697@8)) - GL_STUB(_dispatch_stub_698, 698, _dispatch_stub_698@4) - HIDDEN(GL_PREFIX(_dispatch_stub_698, _dispatch_stub_698@4)) - GL_STUB(_dispatch_stub_699, 699, _dispatch_stub_699@8) - HIDDEN(GL_PREFIX(_dispatch_stub_699, _dispatch_stub_699@8)) - GL_STUB(_dispatch_stub_700, 700, _dispatch_stub_700@12) - HIDDEN(GL_PREFIX(_dispatch_stub_700, _dispatch_stub_700@12)) - GL_STUB(_dispatch_stub_701, 701, _dispatch_stub_701@4) - HIDDEN(GL_PREFIX(_dispatch_stub_701, _dispatch_stub_701@4)) - GL_STUB(_dispatch_stub_702, 702, _dispatch_stub_702@8) - HIDDEN(GL_PREFIX(_dispatch_stub_702, _dispatch_stub_702@8)) - GL_STUB(_dispatch_stub_703, 703, _dispatch_stub_703@4) - HIDDEN(GL_PREFIX(_dispatch_stub_703, _dispatch_stub_703@4)) - GL_STUB(AreProgramsResidentNV, 704, AreProgramsResidentNV@12) - GL_STUB(BindProgramNV, 705, BindProgramNV@8) - GL_STUB(DeleteProgramsNV, 706, DeleteProgramsNV@8) - GL_STUB(ExecuteProgramNV, 707, ExecuteProgramNV@12) - GL_STUB(GenProgramsNV, 708, GenProgramsNV@8) - GL_STUB(GetProgramParameterdvNV, 709, GetProgramParameterdvNV@16) - GL_STUB(GetProgramParameterfvNV, 710, GetProgramParameterfvNV@16) - GL_STUB(GetProgramStringNV, 711, GetProgramStringNV@12) - GL_STUB(GetProgramivNV, 712, GetProgramivNV@12) - GL_STUB(GetTrackMatrixivNV, 713, GetTrackMatrixivNV@16) - GL_STUB(GetVertexAttribPointervNV, 714, GetVertexAttribPointervNV@12) - GL_STUB(GetVertexAttribdvNV, 715, GetVertexAttribdvNV@12) - GL_STUB(GetVertexAttribfvNV, 716, GetVertexAttribfvNV@12) - GL_STUB(GetVertexAttribivNV, 717, GetVertexAttribivNV@12) - GL_STUB(IsProgramNV, 718, IsProgramNV@4) - GL_STUB(LoadProgramNV, 719, LoadProgramNV@16) - GL_STUB(ProgramParameters4dvNV, 720, ProgramParameters4dvNV@16) - GL_STUB(ProgramParameters4fvNV, 721, ProgramParameters4fvNV@16) - GL_STUB(RequestResidentProgramsNV, 722, RequestResidentProgramsNV@8) - GL_STUB(TrackMatrixNV, 723, TrackMatrixNV@16) - GL_STUB(VertexAttrib1dNV, 724, VertexAttrib1dNV@12) - GL_STUB(VertexAttrib1dvNV, 725, VertexAttrib1dvNV@8) - GL_STUB(VertexAttrib1fNV, 726, VertexAttrib1fNV@8) - GL_STUB(VertexAttrib1fvNV, 727, VertexAttrib1fvNV@8) - GL_STUB(VertexAttrib1sNV, 728, VertexAttrib1sNV@8) - GL_STUB(VertexAttrib1svNV, 729, VertexAttrib1svNV@8) - GL_STUB(VertexAttrib2dNV, 730, VertexAttrib2dNV@20) - GL_STUB(VertexAttrib2dvNV, 731, VertexAttrib2dvNV@8) - GL_STUB(VertexAttrib2fNV, 732, VertexAttrib2fNV@12) - GL_STUB(VertexAttrib2fvNV, 733, VertexAttrib2fvNV@8) - GL_STUB(VertexAttrib2sNV, 734, VertexAttrib2sNV@12) - GL_STUB(VertexAttrib2svNV, 735, VertexAttrib2svNV@8) - GL_STUB(VertexAttrib3dNV, 736, VertexAttrib3dNV@28) - GL_STUB(VertexAttrib3dvNV, 737, VertexAttrib3dvNV@8) - GL_STUB(VertexAttrib3fNV, 738, VertexAttrib3fNV@16) - GL_STUB(VertexAttrib3fvNV, 739, VertexAttrib3fvNV@8) - GL_STUB(VertexAttrib3sNV, 740, VertexAttrib3sNV@16) - GL_STUB(VertexAttrib3svNV, 741, VertexAttrib3svNV@8) - GL_STUB(VertexAttrib4dNV, 742, VertexAttrib4dNV@36) - GL_STUB(VertexAttrib4dvNV, 743, VertexAttrib4dvNV@8) - GL_STUB(VertexAttrib4fNV, 744, VertexAttrib4fNV@20) - GL_STUB(VertexAttrib4fvNV, 745, VertexAttrib4fvNV@8) - GL_STUB(VertexAttrib4sNV, 746, VertexAttrib4sNV@20) - GL_STUB(VertexAttrib4svNV, 747, VertexAttrib4svNV@8) - GL_STUB(VertexAttrib4ubNV, 748, VertexAttrib4ubNV@20) - GL_STUB(VertexAttrib4ubvNV, 749, VertexAttrib4ubvNV@8) - GL_STUB(VertexAttribPointerNV, 750, VertexAttribPointerNV@20) - GL_STUB(VertexAttribs1dvNV, 751, VertexAttribs1dvNV@12) - GL_STUB(VertexAttribs1fvNV, 752, VertexAttribs1fvNV@12) - GL_STUB(VertexAttribs1svNV, 753, VertexAttribs1svNV@12) - GL_STUB(VertexAttribs2dvNV, 754, VertexAttribs2dvNV@12) - GL_STUB(VertexAttribs2fvNV, 755, VertexAttribs2fvNV@12) - GL_STUB(VertexAttribs2svNV, 756, VertexAttribs2svNV@12) - GL_STUB(VertexAttribs3dvNV, 757, VertexAttribs3dvNV@12) - GL_STUB(VertexAttribs3fvNV, 758, VertexAttribs3fvNV@12) - GL_STUB(VertexAttribs3svNV, 759, VertexAttribs3svNV@12) - GL_STUB(VertexAttribs4dvNV, 760, VertexAttribs4dvNV@12) - GL_STUB(VertexAttribs4fvNV, 761, VertexAttribs4fvNV@12) - GL_STUB(VertexAttribs4svNV, 762, VertexAttribs4svNV@12) - GL_STUB(VertexAttribs4ubvNV, 763, VertexAttribs4ubvNV@12) - GL_STUB(GetTexBumpParameterfvATI, 764, GetTexBumpParameterfvATI@8) - GL_STUB(GetTexBumpParameterivATI, 765, GetTexBumpParameterivATI@8) - GL_STUB(TexBumpParameterfvATI, 766, TexBumpParameterfvATI@8) - GL_STUB(TexBumpParameterivATI, 767, TexBumpParameterivATI@8) - GL_STUB(AlphaFragmentOp1ATI, 768, AlphaFragmentOp1ATI@24) - GL_STUB(AlphaFragmentOp2ATI, 769, AlphaFragmentOp2ATI@36) - GL_STUB(AlphaFragmentOp3ATI, 770, AlphaFragmentOp3ATI@48) - GL_STUB(BeginFragmentShaderATI, 771, BeginFragmentShaderATI@0) - GL_STUB(BindFragmentShaderATI, 772, BindFragmentShaderATI@4) - GL_STUB(ColorFragmentOp1ATI, 773, ColorFragmentOp1ATI@28) - GL_STUB(ColorFragmentOp2ATI, 774, ColorFragmentOp2ATI@40) - GL_STUB(ColorFragmentOp3ATI, 775, ColorFragmentOp3ATI@52) - GL_STUB(DeleteFragmentShaderATI, 776, DeleteFragmentShaderATI@4) - GL_STUB(EndFragmentShaderATI, 777, EndFragmentShaderATI@0) - GL_STUB(GenFragmentShadersATI, 778, GenFragmentShadersATI@4) - GL_STUB(PassTexCoordATI, 779, PassTexCoordATI@12) - GL_STUB(SampleMapATI, 780, SampleMapATI@12) - GL_STUB(SetFragmentShaderConstantATI, 781, SetFragmentShaderConstantATI@8) - GL_STUB(PointParameteriNV, 782, PointParameteriNV@8) - GL_STUB(PointParameterivNV, 783, PointParameterivNV@8) - GL_STUB(_dispatch_stub_784, 784, _dispatch_stub_784@4) - HIDDEN(GL_PREFIX(_dispatch_stub_784, _dispatch_stub_784@4)) + GL_STUB(_dispatch_stub_618, 618, _dispatch_stub_618@8) + HIDDEN(GL_PREFIX(_dispatch_stub_618, _dispatch_stub_618@8)) + GL_STUB(_dispatch_stub_619, 619, _dispatch_stub_619@4) + HIDDEN(GL_PREFIX(_dispatch_stub_619, _dispatch_stub_619@4)) + GL_STUB(ColorPointerEXT, 620, ColorPointerEXT@20) + GL_STUB(EdgeFlagPointerEXT, 621, EdgeFlagPointerEXT@12) + GL_STUB(IndexPointerEXT, 622, IndexPointerEXT@16) + GL_STUB(NormalPointerEXT, 623, NormalPointerEXT@16) + GL_STUB(TexCoordPointerEXT, 624, TexCoordPointerEXT@20) + GL_STUB(VertexPointerEXT, 625, VertexPointerEXT@20) + GL_STUB(PointParameterfEXT, 626, PointParameterfEXT@8) + GL_STUB(PointParameterfvEXT, 627, PointParameterfvEXT@8) + GL_STUB(LockArraysEXT, 628, LockArraysEXT@8) + GL_STUB(UnlockArraysEXT, 629, UnlockArraysEXT@0) + GL_STUB(SecondaryColor3bEXT, 630, SecondaryColor3bEXT@12) + GL_STUB(SecondaryColor3bvEXT, 631, SecondaryColor3bvEXT@4) + GL_STUB(SecondaryColor3dEXT, 632, SecondaryColor3dEXT@24) + GL_STUB(SecondaryColor3dvEXT, 633, SecondaryColor3dvEXT@4) + GL_STUB(SecondaryColor3fEXT, 634, SecondaryColor3fEXT@12) + GL_STUB(SecondaryColor3fvEXT, 635, SecondaryColor3fvEXT@4) + GL_STUB(SecondaryColor3iEXT, 636, SecondaryColor3iEXT@12) + GL_STUB(SecondaryColor3ivEXT, 637, SecondaryColor3ivEXT@4) + GL_STUB(SecondaryColor3sEXT, 638, SecondaryColor3sEXT@12) + GL_STUB(SecondaryColor3svEXT, 639, SecondaryColor3svEXT@4) + GL_STUB(SecondaryColor3ubEXT, 640, SecondaryColor3ubEXT@12) + GL_STUB(SecondaryColor3ubvEXT, 641, SecondaryColor3ubvEXT@4) + GL_STUB(SecondaryColor3uiEXT, 642, SecondaryColor3uiEXT@12) + GL_STUB(SecondaryColor3uivEXT, 643, SecondaryColor3uivEXT@4) + GL_STUB(SecondaryColor3usEXT, 644, SecondaryColor3usEXT@12) + GL_STUB(SecondaryColor3usvEXT, 645, SecondaryColor3usvEXT@4) + GL_STUB(SecondaryColorPointerEXT, 646, SecondaryColorPointerEXT@16) + GL_STUB(MultiDrawArraysEXT, 647, MultiDrawArraysEXT@16) + GL_STUB(MultiDrawElementsEXT, 648, MultiDrawElementsEXT@20) + GL_STUB(FogCoordPointerEXT, 649, FogCoordPointerEXT@12) + GL_STUB(FogCoorddEXT, 650, FogCoorddEXT@8) + GL_STUB(FogCoorddvEXT, 651, FogCoorddvEXT@4) + GL_STUB(FogCoordfEXT, 652, FogCoordfEXT@4) + GL_STUB(FogCoordfvEXT, 653, FogCoordfvEXT@4) + GL_STUB(_dispatch_stub_654, 654, _dispatch_stub_654@4) + HIDDEN(GL_PREFIX(_dispatch_stub_654, _dispatch_stub_654@4)) + GL_STUB(BlendFuncSeparateEXT, 655, BlendFuncSeparateEXT@16) + GL_STUB(FlushVertexArrayRangeNV, 656, FlushVertexArrayRangeNV@0) + GL_STUB(VertexArrayRangeNV, 657, VertexArrayRangeNV@8) + GL_STUB(CombinerInputNV, 658, CombinerInputNV@24) + GL_STUB(CombinerOutputNV, 659, CombinerOutputNV@40) + GL_STUB(CombinerParameterfNV, 660, CombinerParameterfNV@8) + GL_STUB(CombinerParameterfvNV, 661, CombinerParameterfvNV@8) + GL_STUB(CombinerParameteriNV, 662, CombinerParameteriNV@8) + GL_STUB(CombinerParameterivNV, 663, CombinerParameterivNV@8) + GL_STUB(FinalCombinerInputNV, 664, FinalCombinerInputNV@16) + GL_STUB(GetCombinerInputParameterfvNV, 665, GetCombinerInputParameterfvNV@20) + GL_STUB(GetCombinerInputParameterivNV, 666, GetCombinerInputParameterivNV@20) + GL_STUB(GetCombinerOutputParameterfvNV, 667, GetCombinerOutputParameterfvNV@16) + GL_STUB(GetCombinerOutputParameterivNV, 668, GetCombinerOutputParameterivNV@16) + GL_STUB(GetFinalCombinerInputParameterfvNV, 669, GetFinalCombinerInputParameterfvNV@12) + GL_STUB(GetFinalCombinerInputParameterivNV, 670, GetFinalCombinerInputParameterivNV@12) + GL_STUB(ResizeBuffersMESA, 671, ResizeBuffersMESA@0) + GL_STUB(WindowPos2dMESA, 672, WindowPos2dMESA@16) + GL_STUB(WindowPos2dvMESA, 673, WindowPos2dvMESA@4) + GL_STUB(WindowPos2fMESA, 674, WindowPos2fMESA@8) + GL_STUB(WindowPos2fvMESA, 675, WindowPos2fvMESA@4) + GL_STUB(WindowPos2iMESA, 676, WindowPos2iMESA@8) + GL_STUB(WindowPos2ivMESA, 677, WindowPos2ivMESA@4) + GL_STUB(WindowPos2sMESA, 678, WindowPos2sMESA@8) + GL_STUB(WindowPos2svMESA, 679, WindowPos2svMESA@4) + GL_STUB(WindowPos3dMESA, 680, WindowPos3dMESA@24) + GL_STUB(WindowPos3dvMESA, 681, WindowPos3dvMESA@4) + GL_STUB(WindowPos3fMESA, 682, WindowPos3fMESA@12) + GL_STUB(WindowPos3fvMESA, 683, WindowPos3fvMESA@4) + GL_STUB(WindowPos3iMESA, 684, WindowPos3iMESA@12) + GL_STUB(WindowPos3ivMESA, 685, WindowPos3ivMESA@4) + GL_STUB(WindowPos3sMESA, 686, WindowPos3sMESA@12) + GL_STUB(WindowPos3svMESA, 687, WindowPos3svMESA@4) + GL_STUB(WindowPos4dMESA, 688, WindowPos4dMESA@32) + GL_STUB(WindowPos4dvMESA, 689, WindowPos4dvMESA@4) + GL_STUB(WindowPos4fMESA, 690, WindowPos4fMESA@16) + GL_STUB(WindowPos4fvMESA, 691, WindowPos4fvMESA@4) + GL_STUB(WindowPos4iMESA, 692, WindowPos4iMESA@16) + GL_STUB(WindowPos4ivMESA, 693, WindowPos4ivMESA@4) + GL_STUB(WindowPos4sMESA, 694, WindowPos4sMESA@16) + GL_STUB(WindowPos4svMESA, 695, WindowPos4svMESA@4) + GL_STUB(_dispatch_stub_696, 696, _dispatch_stub_696@20) + HIDDEN(GL_PREFIX(_dispatch_stub_696, _dispatch_stub_696@20)) + GL_STUB(_dispatch_stub_697, 697, _dispatch_stub_697@24) + HIDDEN(GL_PREFIX(_dispatch_stub_697, _dispatch_stub_697@24)) + GL_STUB(_dispatch_stub_698, 698, _dispatch_stub_698@8) + HIDDEN(GL_PREFIX(_dispatch_stub_698, _dispatch_stub_698@8)) + GL_STUB(_dispatch_stub_699, 699, _dispatch_stub_699@4) + HIDDEN(GL_PREFIX(_dispatch_stub_699, _dispatch_stub_699@4)) + GL_STUB(_dispatch_stub_700, 700, _dispatch_stub_700@8) + HIDDEN(GL_PREFIX(_dispatch_stub_700, _dispatch_stub_700@8)) + GL_STUB(_dispatch_stub_701, 701, _dispatch_stub_701@12) + HIDDEN(GL_PREFIX(_dispatch_stub_701, _dispatch_stub_701@12)) + GL_STUB(_dispatch_stub_702, 702, _dispatch_stub_702@4) + HIDDEN(GL_PREFIX(_dispatch_stub_702, _dispatch_stub_702@4)) + GL_STUB(_dispatch_stub_703, 703, _dispatch_stub_703@8) + HIDDEN(GL_PREFIX(_dispatch_stub_703, _dispatch_stub_703@8)) + GL_STUB(_dispatch_stub_704, 704, _dispatch_stub_704@4) + HIDDEN(GL_PREFIX(_dispatch_stub_704, _dispatch_stub_704@4)) + GL_STUB(AreProgramsResidentNV, 705, AreProgramsResidentNV@12) + GL_STUB(BindProgramNV, 706, BindProgramNV@8) + GL_STUB(DeleteProgramsNV, 707, DeleteProgramsNV@8) + GL_STUB(ExecuteProgramNV, 708, ExecuteProgramNV@12) + GL_STUB(GenProgramsNV, 709, GenProgramsNV@8) + GL_STUB(GetProgramParameterdvNV, 710, GetProgramParameterdvNV@16) + GL_STUB(GetProgramParameterfvNV, 711, GetProgramParameterfvNV@16) + GL_STUB(GetProgramStringNV, 712, GetProgramStringNV@12) + GL_STUB(GetProgramivNV, 713, GetProgramivNV@12) + GL_STUB(GetTrackMatrixivNV, 714, GetTrackMatrixivNV@16) + GL_STUB(GetVertexAttribPointervNV, 715, GetVertexAttribPointervNV@12) + GL_STUB(GetVertexAttribdvNV, 716, GetVertexAttribdvNV@12) + GL_STUB(GetVertexAttribfvNV, 717, GetVertexAttribfvNV@12) + GL_STUB(GetVertexAttribivNV, 718, GetVertexAttribivNV@12) + GL_STUB(IsProgramNV, 719, IsProgramNV@4) + GL_STUB(LoadProgramNV, 720, LoadProgramNV@16) + GL_STUB(ProgramParameters4dvNV, 721, ProgramParameters4dvNV@16) + GL_STUB(ProgramParameters4fvNV, 722, ProgramParameters4fvNV@16) + GL_STUB(RequestResidentProgramsNV, 723, RequestResidentProgramsNV@8) + GL_STUB(TrackMatrixNV, 724, TrackMatrixNV@16) + GL_STUB(VertexAttrib1dNV, 725, VertexAttrib1dNV@12) + GL_STUB(VertexAttrib1dvNV, 726, VertexAttrib1dvNV@8) + GL_STUB(VertexAttrib1fNV, 727, VertexAttrib1fNV@8) + GL_STUB(VertexAttrib1fvNV, 728, VertexAttrib1fvNV@8) + GL_STUB(VertexAttrib1sNV, 729, VertexAttrib1sNV@8) + GL_STUB(VertexAttrib1svNV, 730, VertexAttrib1svNV@8) + GL_STUB(VertexAttrib2dNV, 731, VertexAttrib2dNV@20) + GL_STUB(VertexAttrib2dvNV, 732, VertexAttrib2dvNV@8) + GL_STUB(VertexAttrib2fNV, 733, VertexAttrib2fNV@12) + GL_STUB(VertexAttrib2fvNV, 734, VertexAttrib2fvNV@8) + GL_STUB(VertexAttrib2sNV, 735, VertexAttrib2sNV@12) + GL_STUB(VertexAttrib2svNV, 736, VertexAttrib2svNV@8) + GL_STUB(VertexAttrib3dNV, 737, VertexAttrib3dNV@28) + GL_STUB(VertexAttrib3dvNV, 738, VertexAttrib3dvNV@8) + GL_STUB(VertexAttrib3fNV, 739, VertexAttrib3fNV@16) + GL_STUB(VertexAttrib3fvNV, 740, VertexAttrib3fvNV@8) + GL_STUB(VertexAttrib3sNV, 741, VertexAttrib3sNV@16) + GL_STUB(VertexAttrib3svNV, 742, VertexAttrib3svNV@8) + GL_STUB(VertexAttrib4dNV, 743, VertexAttrib4dNV@36) + GL_STUB(VertexAttrib4dvNV, 744, VertexAttrib4dvNV@8) + GL_STUB(VertexAttrib4fNV, 745, VertexAttrib4fNV@20) + GL_STUB(VertexAttrib4fvNV, 746, VertexAttrib4fvNV@8) + GL_STUB(VertexAttrib4sNV, 747, VertexAttrib4sNV@20) + GL_STUB(VertexAttrib4svNV, 748, VertexAttrib4svNV@8) + GL_STUB(VertexAttrib4ubNV, 749, VertexAttrib4ubNV@20) + GL_STUB(VertexAttrib4ubvNV, 750, VertexAttrib4ubvNV@8) + GL_STUB(VertexAttribPointerNV, 751, VertexAttribPointerNV@20) + GL_STUB(VertexAttribs1dvNV, 752, VertexAttribs1dvNV@12) + GL_STUB(VertexAttribs1fvNV, 753, VertexAttribs1fvNV@12) + GL_STUB(VertexAttribs1svNV, 754, VertexAttribs1svNV@12) + GL_STUB(VertexAttribs2dvNV, 755, VertexAttribs2dvNV@12) + GL_STUB(VertexAttribs2fvNV, 756, VertexAttribs2fvNV@12) + GL_STUB(VertexAttribs2svNV, 757, VertexAttribs2svNV@12) + GL_STUB(VertexAttribs3dvNV, 758, VertexAttribs3dvNV@12) + GL_STUB(VertexAttribs3fvNV, 759, VertexAttribs3fvNV@12) + GL_STUB(VertexAttribs3svNV, 760, VertexAttribs3svNV@12) + GL_STUB(VertexAttribs4dvNV, 761, VertexAttribs4dvNV@12) + GL_STUB(VertexAttribs4fvNV, 762, VertexAttribs4fvNV@12) + GL_STUB(VertexAttribs4svNV, 763, VertexAttribs4svNV@12) + GL_STUB(VertexAttribs4ubvNV, 764, VertexAttribs4ubvNV@12) + GL_STUB(GetTexBumpParameterfvATI, 765, GetTexBumpParameterfvATI@8) + GL_STUB(GetTexBumpParameterivATI, 766, GetTexBumpParameterivATI@8) + GL_STUB(TexBumpParameterfvATI, 767, TexBumpParameterfvATI@8) + GL_STUB(TexBumpParameterivATI, 768, TexBumpParameterivATI@8) + GL_STUB(AlphaFragmentOp1ATI, 769, AlphaFragmentOp1ATI@24) + GL_STUB(AlphaFragmentOp2ATI, 770, AlphaFragmentOp2ATI@36) + GL_STUB(AlphaFragmentOp3ATI, 771, AlphaFragmentOp3ATI@48) + GL_STUB(BeginFragmentShaderATI, 772, BeginFragmentShaderATI@0) + GL_STUB(BindFragmentShaderATI, 773, BindFragmentShaderATI@4) + GL_STUB(ColorFragmentOp1ATI, 774, ColorFragmentOp1ATI@28) + GL_STUB(ColorFragmentOp2ATI, 775, ColorFragmentOp2ATI@40) + GL_STUB(ColorFragmentOp3ATI, 776, ColorFragmentOp3ATI@52) + GL_STUB(DeleteFragmentShaderATI, 777, DeleteFragmentShaderATI@4) + GL_STUB(EndFragmentShaderATI, 778, EndFragmentShaderATI@0) + GL_STUB(GenFragmentShadersATI, 779, GenFragmentShadersATI@4) + GL_STUB(PassTexCoordATI, 780, PassTexCoordATI@12) + GL_STUB(SampleMapATI, 781, SampleMapATI@12) + GL_STUB(SetFragmentShaderConstantATI, 782, SetFragmentShaderConstantATI@8) + GL_STUB(PointParameteriNV, 783, PointParameteriNV@8) + GL_STUB(PointParameterivNV, 784, PointParameterivNV@8) GL_STUB(_dispatch_stub_785, 785, _dispatch_stub_785@4) HIDDEN(GL_PREFIX(_dispatch_stub_785, _dispatch_stub_785@4)) - GL_STUB(_dispatch_stub_786, 786, _dispatch_stub_786@8) - HIDDEN(GL_PREFIX(_dispatch_stub_786, _dispatch_stub_786@8)) + GL_STUB(_dispatch_stub_786, 786, _dispatch_stub_786@4) + HIDDEN(GL_PREFIX(_dispatch_stub_786, _dispatch_stub_786@4)) GL_STUB(_dispatch_stub_787, 787, _dispatch_stub_787@8) HIDDEN(GL_PREFIX(_dispatch_stub_787, _dispatch_stub_787@8)) - GL_STUB(_dispatch_stub_788, 788, _dispatch_stub_788@4) - HIDDEN(GL_PREFIX(_dispatch_stub_788, _dispatch_stub_788@4)) - GL_STUB(GetProgramNamedParameterdvNV, 789, GetProgramNamedParameterdvNV@16) - GL_STUB(GetProgramNamedParameterfvNV, 790, GetProgramNamedParameterfvNV@16) - GL_STUB(ProgramNamedParameter4dNV, 791, ProgramNamedParameter4dNV@44) - GL_STUB(ProgramNamedParameter4dvNV, 792, ProgramNamedParameter4dvNV@16) - GL_STUB(ProgramNamedParameter4fNV, 793, ProgramNamedParameter4fNV@28) - GL_STUB(ProgramNamedParameter4fvNV, 794, ProgramNamedParameter4fvNV@16) - GL_STUB(PrimitiveRestartIndexNV, 795, PrimitiveRestartIndexNV@4) - GL_STUB(PrimitiveRestartNV, 796, PrimitiveRestartNV@0) - GL_STUB(_dispatch_stub_797, 797, _dispatch_stub_797@16) - HIDDEN(GL_PREFIX(_dispatch_stub_797, _dispatch_stub_797@16)) - GL_STUB(_dispatch_stub_798, 798, _dispatch_stub_798@8) - HIDDEN(GL_PREFIX(_dispatch_stub_798, _dispatch_stub_798@8)) - GL_STUB(BindFramebufferEXT, 799, BindFramebufferEXT@8) - GL_STUB(BindRenderbufferEXT, 800, BindRenderbufferEXT@8) - GL_STUB(CheckFramebufferStatusEXT, 801, CheckFramebufferStatusEXT@4) - GL_STUB(DeleteFramebuffersEXT, 802, DeleteFramebuffersEXT@8) - GL_STUB(DeleteRenderbuffersEXT, 803, DeleteRenderbuffersEXT@8) - GL_STUB(FramebufferRenderbufferEXT, 804, FramebufferRenderbufferEXT@16) - GL_STUB(FramebufferTexture1DEXT, 805, FramebufferTexture1DEXT@20) - GL_STUB(FramebufferTexture2DEXT, 806, FramebufferTexture2DEXT@20) - GL_STUB(FramebufferTexture3DEXT, 807, FramebufferTexture3DEXT@24) - GL_STUB(GenFramebuffersEXT, 808, GenFramebuffersEXT@8) - GL_STUB(GenRenderbuffersEXT, 809, GenRenderbuffersEXT@8) - GL_STUB(GenerateMipmapEXT, 810, GenerateMipmapEXT@4) - GL_STUB(GetFramebufferAttachmentParameterivEXT, 811, GetFramebufferAttachmentParameterivEXT@16) - GL_STUB(GetRenderbufferParameterivEXT, 812, GetRenderbufferParameterivEXT@12) - GL_STUB(IsFramebufferEXT, 813, IsFramebufferEXT@4) - GL_STUB(IsRenderbufferEXT, 814, IsRenderbufferEXT@4) - GL_STUB(RenderbufferStorageEXT, 815, RenderbufferStorageEXT@16) - GL_STUB(_dispatch_stub_816, 816, _dispatch_stub_816@40) - HIDDEN(GL_PREFIX(_dispatch_stub_816, _dispatch_stub_816@40)) - GL_STUB(_dispatch_stub_817, 817, _dispatch_stub_817@12) - HIDDEN(GL_PREFIX(_dispatch_stub_817, _dispatch_stub_817@12)) + GL_STUB(_dispatch_stub_788, 788, _dispatch_stub_788@8) + HIDDEN(GL_PREFIX(_dispatch_stub_788, _dispatch_stub_788@8)) + GL_STUB(_dispatch_stub_789, 789, _dispatch_stub_789@4) + HIDDEN(GL_PREFIX(_dispatch_stub_789, _dispatch_stub_789@4)) + GL_STUB(GetProgramNamedParameterdvNV, 790, GetProgramNamedParameterdvNV@16) + GL_STUB(GetProgramNamedParameterfvNV, 791, GetProgramNamedParameterfvNV@16) + GL_STUB(ProgramNamedParameter4dNV, 792, ProgramNamedParameter4dNV@44) + GL_STUB(ProgramNamedParameter4dvNV, 793, ProgramNamedParameter4dvNV@16) + GL_STUB(ProgramNamedParameter4fNV, 794, ProgramNamedParameter4fNV@28) + GL_STUB(ProgramNamedParameter4fvNV, 795, ProgramNamedParameter4fvNV@16) + GL_STUB(PrimitiveRestartIndexNV, 796, PrimitiveRestartIndexNV@4) + GL_STUB(PrimitiveRestartNV, 797, PrimitiveRestartNV@0) + GL_STUB(_dispatch_stub_798, 798, _dispatch_stub_798@16) + HIDDEN(GL_PREFIX(_dispatch_stub_798, _dispatch_stub_798@16)) + GL_STUB(_dispatch_stub_799, 799, _dispatch_stub_799@8) + HIDDEN(GL_PREFIX(_dispatch_stub_799, _dispatch_stub_799@8)) + GL_STUB(BindFramebufferEXT, 800, BindFramebufferEXT@8) + GL_STUB(BindRenderbufferEXT, 801, BindRenderbufferEXT@8) + GL_STUB(CheckFramebufferStatusEXT, 802, CheckFramebufferStatusEXT@4) + GL_STUB(DeleteFramebuffersEXT, 803, DeleteFramebuffersEXT@8) + GL_STUB(DeleteRenderbuffersEXT, 804, DeleteRenderbuffersEXT@8) + GL_STUB(FramebufferRenderbufferEXT, 805, FramebufferRenderbufferEXT@16) + GL_STUB(FramebufferTexture1DEXT, 806, FramebufferTexture1DEXT@20) + GL_STUB(FramebufferTexture2DEXT, 807, FramebufferTexture2DEXT@20) + GL_STUB(FramebufferTexture3DEXT, 808, FramebufferTexture3DEXT@24) + GL_STUB(GenFramebuffersEXT, 809, GenFramebuffersEXT@8) + GL_STUB(GenRenderbuffersEXT, 810, GenRenderbuffersEXT@8) + GL_STUB(GenerateMipmapEXT, 811, GenerateMipmapEXT@4) + GL_STUB(GetFramebufferAttachmentParameterivEXT, 812, GetFramebufferAttachmentParameterivEXT@16) + GL_STUB(GetRenderbufferParameterivEXT, 813, GetRenderbufferParameterivEXT@12) + GL_STUB(IsFramebufferEXT, 814, IsFramebufferEXT@4) + GL_STUB(IsRenderbufferEXT, 815, IsRenderbufferEXT@4) + GL_STUB(RenderbufferStorageEXT, 816, RenderbufferStorageEXT@16) + GL_STUB(_dispatch_stub_817, 817, _dispatch_stub_817@40) + HIDDEN(GL_PREFIX(_dispatch_stub_817, _dispatch_stub_817@40)) GL_STUB(_dispatch_stub_818, 818, _dispatch_stub_818@12) HIDDEN(GL_PREFIX(_dispatch_stub_818, _dispatch_stub_818@12)) - GL_STUB(BindFragDataLocationEXT, 819, BindFragDataLocationEXT@12) - GL_STUB(GetFragDataLocationEXT, 820, GetFragDataLocationEXT@8) - GL_STUB(GetUniformuivEXT, 821, GetUniformuivEXT@12) - GL_STUB(GetVertexAttribIivEXT, 822, GetVertexAttribIivEXT@12) - GL_STUB(GetVertexAttribIuivEXT, 823, GetVertexAttribIuivEXT@12) - GL_STUB(Uniform1uiEXT, 824, Uniform1uiEXT@8) - GL_STUB(Uniform1uivEXT, 825, Uniform1uivEXT@12) - GL_STUB(Uniform2uiEXT, 826, Uniform2uiEXT@12) - GL_STUB(Uniform2uivEXT, 827, Uniform2uivEXT@12) - GL_STUB(Uniform3uiEXT, 828, Uniform3uiEXT@16) - GL_STUB(Uniform3uivEXT, 829, Uniform3uivEXT@12) - GL_STUB(Uniform4uiEXT, 830, Uniform4uiEXT@20) - GL_STUB(Uniform4uivEXT, 831, Uniform4uivEXT@12) - GL_STUB(VertexAttribI1iEXT, 832, VertexAttribI1iEXT@8) - GL_STUB(VertexAttribI1ivEXT, 833, VertexAttribI1ivEXT@8) - GL_STUB(VertexAttribI1uiEXT, 834, VertexAttribI1uiEXT@8) - GL_STUB(VertexAttribI1uivEXT, 835, VertexAttribI1uivEXT@8) - GL_STUB(VertexAttribI2iEXT, 836, VertexAttribI2iEXT@12) - GL_STUB(VertexAttribI2ivEXT, 837, VertexAttribI2ivEXT@8) - GL_STUB(VertexAttribI2uiEXT, 838, VertexAttribI2uiEXT@12) - GL_STUB(VertexAttribI2uivEXT, 839, VertexAttribI2uivEXT@8) - GL_STUB(VertexAttribI3iEXT, 840, VertexAttribI3iEXT@16) - GL_STUB(VertexAttribI3ivEXT, 841, VertexAttribI3ivEXT@8) - GL_STUB(VertexAttribI3uiEXT, 842, VertexAttribI3uiEXT@16) - GL_STUB(VertexAttribI3uivEXT, 843, VertexAttribI3uivEXT@8) - GL_STUB(VertexAttribI4bvEXT, 844, VertexAttribI4bvEXT@8) - GL_STUB(VertexAttribI4iEXT, 845, VertexAttribI4iEXT@20) - GL_STUB(VertexAttribI4ivEXT, 846, VertexAttribI4ivEXT@8) - GL_STUB(VertexAttribI4svEXT, 847, VertexAttribI4svEXT@8) - GL_STUB(VertexAttribI4ubvEXT, 848, VertexAttribI4ubvEXT@8) - GL_STUB(VertexAttribI4uiEXT, 849, VertexAttribI4uiEXT@20) - GL_STUB(VertexAttribI4uivEXT, 850, VertexAttribI4uivEXT@8) - GL_STUB(VertexAttribI4usvEXT, 851, VertexAttribI4usvEXT@8) - GL_STUB(VertexAttribIPointerEXT, 852, VertexAttribIPointerEXT@20) - GL_STUB(FramebufferTextureLayerEXT, 853, FramebufferTextureLayerEXT@20) - GL_STUB(ColorMaskIndexedEXT, 854, ColorMaskIndexedEXT@20) - GL_STUB(DisableIndexedEXT, 855, DisableIndexedEXT@8) - GL_STUB(EnableIndexedEXT, 856, EnableIndexedEXT@8) - GL_STUB(GetBooleanIndexedvEXT, 857, GetBooleanIndexedvEXT@12) - GL_STUB(GetIntegerIndexedvEXT, 858, GetIntegerIndexedvEXT@12) - GL_STUB(IsEnabledIndexedEXT, 859, IsEnabledIndexedEXT@8) - GL_STUB(ClearColorIiEXT, 860, ClearColorIiEXT@16) - GL_STUB(ClearColorIuiEXT, 861, ClearColorIuiEXT@16) - GL_STUB(GetTexParameterIivEXT, 862, GetTexParameterIivEXT@12) - GL_STUB(GetTexParameterIuivEXT, 863, GetTexParameterIuivEXT@12) - GL_STUB(TexParameterIivEXT, 864, TexParameterIivEXT@12) - GL_STUB(TexParameterIuivEXT, 865, TexParameterIuivEXT@12) - GL_STUB(BeginConditionalRenderNV, 866, BeginConditionalRenderNV@8) - GL_STUB(EndConditionalRenderNV, 867, EndConditionalRenderNV@0) - GL_STUB(BeginTransformFeedbackEXT, 868, BeginTransformFeedbackEXT@4) - GL_STUB(BindBufferBaseEXT, 869, BindBufferBaseEXT@12) - GL_STUB(BindBufferOffsetEXT, 870, BindBufferOffsetEXT@16) - GL_STUB(BindBufferRangeEXT, 871, BindBufferRangeEXT@20) - GL_STUB(EndTransformFeedbackEXT, 872, EndTransformFeedbackEXT@0) - GL_STUB(GetTransformFeedbackVaryingEXT, 873, GetTransformFeedbackVaryingEXT@28) - GL_STUB(TransformFeedbackVaryingsEXT, 874, TransformFeedbackVaryingsEXT@16) - GL_STUB(ProvokingVertexEXT, 875, ProvokingVertexEXT@4) - GL_STUB(_dispatch_stub_876, 876, _dispatch_stub_876@12) - HIDDEN(GL_PREFIX(_dispatch_stub_876, _dispatch_stub_876@12)) + GL_STUB(_dispatch_stub_819, 819, _dispatch_stub_819@12) + HIDDEN(GL_PREFIX(_dispatch_stub_819, _dispatch_stub_819@12)) + GL_STUB(BindFragDataLocationEXT, 820, BindFragDataLocationEXT@12) + GL_STUB(GetFragDataLocationEXT, 821, GetFragDataLocationEXT@8) + GL_STUB(GetUniformuivEXT, 822, GetUniformuivEXT@12) + GL_STUB(GetVertexAttribIivEXT, 823, GetVertexAttribIivEXT@12) + GL_STUB(GetVertexAttribIuivEXT, 824, GetVertexAttribIuivEXT@12) + GL_STUB(Uniform1uiEXT, 825, Uniform1uiEXT@8) + GL_STUB(Uniform1uivEXT, 826, Uniform1uivEXT@12) + GL_STUB(Uniform2uiEXT, 827, Uniform2uiEXT@12) + GL_STUB(Uniform2uivEXT, 828, Uniform2uivEXT@12) + GL_STUB(Uniform3uiEXT, 829, Uniform3uiEXT@16) + GL_STUB(Uniform3uivEXT, 830, Uniform3uivEXT@12) + GL_STUB(Uniform4uiEXT, 831, Uniform4uiEXT@20) + GL_STUB(Uniform4uivEXT, 832, Uniform4uivEXT@12) + GL_STUB(VertexAttribI1iEXT, 833, VertexAttribI1iEXT@8) + GL_STUB(VertexAttribI1ivEXT, 834, VertexAttribI1ivEXT@8) + GL_STUB(VertexAttribI1uiEXT, 835, VertexAttribI1uiEXT@8) + GL_STUB(VertexAttribI1uivEXT, 836, VertexAttribI1uivEXT@8) + GL_STUB(VertexAttribI2iEXT, 837, VertexAttribI2iEXT@12) + GL_STUB(VertexAttribI2ivEXT, 838, VertexAttribI2ivEXT@8) + GL_STUB(VertexAttribI2uiEXT, 839, VertexAttribI2uiEXT@12) + GL_STUB(VertexAttribI2uivEXT, 840, VertexAttribI2uivEXT@8) + GL_STUB(VertexAttribI3iEXT, 841, VertexAttribI3iEXT@16) + GL_STUB(VertexAttribI3ivEXT, 842, VertexAttribI3ivEXT@8) + GL_STUB(VertexAttribI3uiEXT, 843, VertexAttribI3uiEXT@16) + GL_STUB(VertexAttribI3uivEXT, 844, VertexAttribI3uivEXT@8) + GL_STUB(VertexAttribI4bvEXT, 845, VertexAttribI4bvEXT@8) + GL_STUB(VertexAttribI4iEXT, 846, VertexAttribI4iEXT@20) + GL_STUB(VertexAttribI4ivEXT, 847, VertexAttribI4ivEXT@8) + GL_STUB(VertexAttribI4svEXT, 848, VertexAttribI4svEXT@8) + GL_STUB(VertexAttribI4ubvEXT, 849, VertexAttribI4ubvEXT@8) + GL_STUB(VertexAttribI4uiEXT, 850, VertexAttribI4uiEXT@20) + GL_STUB(VertexAttribI4uivEXT, 851, VertexAttribI4uivEXT@8) + GL_STUB(VertexAttribI4usvEXT, 852, VertexAttribI4usvEXT@8) + GL_STUB(VertexAttribIPointerEXT, 853, VertexAttribIPointerEXT@20) + GL_STUB(FramebufferTextureLayerEXT, 854, FramebufferTextureLayerEXT@20) + GL_STUB(ColorMaskIndexedEXT, 855, ColorMaskIndexedEXT@20) + GL_STUB(DisableIndexedEXT, 856, DisableIndexedEXT@8) + GL_STUB(EnableIndexedEXT, 857, EnableIndexedEXT@8) + GL_STUB(GetBooleanIndexedvEXT, 858, GetBooleanIndexedvEXT@12) + GL_STUB(GetIntegerIndexedvEXT, 859, GetIntegerIndexedvEXT@12) + GL_STUB(IsEnabledIndexedEXT, 860, IsEnabledIndexedEXT@8) + GL_STUB(ClearColorIiEXT, 861, ClearColorIiEXT@16) + GL_STUB(ClearColorIuiEXT, 862, ClearColorIuiEXT@16) + GL_STUB(GetTexParameterIivEXT, 863, GetTexParameterIivEXT@12) + GL_STUB(GetTexParameterIuivEXT, 864, GetTexParameterIuivEXT@12) + GL_STUB(TexParameterIivEXT, 865, TexParameterIivEXT@12) + GL_STUB(TexParameterIuivEXT, 866, TexParameterIuivEXT@12) + GL_STUB(BeginConditionalRenderNV, 867, BeginConditionalRenderNV@8) + GL_STUB(EndConditionalRenderNV, 868, EndConditionalRenderNV@0) + GL_STUB(BeginTransformFeedbackEXT, 869, BeginTransformFeedbackEXT@4) + GL_STUB(BindBufferBaseEXT, 870, BindBufferBaseEXT@12) + GL_STUB(BindBufferOffsetEXT, 871, BindBufferOffsetEXT@16) + GL_STUB(BindBufferRangeEXT, 872, BindBufferRangeEXT@20) + GL_STUB(EndTransformFeedbackEXT, 873, EndTransformFeedbackEXT@0) + GL_STUB(GetTransformFeedbackVaryingEXT, 874, GetTransformFeedbackVaryingEXT@28) + GL_STUB(TransformFeedbackVaryingsEXT, 875, TransformFeedbackVaryingsEXT@16) + GL_STUB(ProvokingVertexEXT, 876, ProvokingVertexEXT@4) GL_STUB(_dispatch_stub_877, 877, _dispatch_stub_877@12) HIDDEN(GL_PREFIX(_dispatch_stub_877, _dispatch_stub_877@12)) - GL_STUB(GetObjectParameterivAPPLE, 878, GetObjectParameterivAPPLE@16) - GL_STUB(ObjectPurgeableAPPLE, 879, ObjectPurgeableAPPLE@12) - GL_STUB(ObjectUnpurgeableAPPLE, 880, ObjectUnpurgeableAPPLE@12) - GL_STUB(ActiveProgramEXT, 881, ActiveProgramEXT@4) - GL_STUB(CreateShaderProgramEXT, 882, CreateShaderProgramEXT@8) - GL_STUB(UseShaderProgramEXT, 883, UseShaderProgramEXT@8) - GL_STUB(TextureBarrierNV, 884, TextureBarrierNV@0) - GL_STUB(_dispatch_stub_885, 885, _dispatch_stub_885@16) - HIDDEN(GL_PREFIX(_dispatch_stub_885, _dispatch_stub_885@16)) + GL_STUB(_dispatch_stub_878, 878, _dispatch_stub_878@12) + HIDDEN(GL_PREFIX(_dispatch_stub_878, _dispatch_stub_878@12)) + GL_STUB(GetObjectParameterivAPPLE, 879, GetObjectParameterivAPPLE@16) + GL_STUB(ObjectPurgeableAPPLE, 880, ObjectPurgeableAPPLE@12) + GL_STUB(ObjectUnpurgeableAPPLE, 881, ObjectUnpurgeableAPPLE@12) + GL_STUB(ActiveProgramEXT, 882, ActiveProgramEXT@4) + GL_STUB(CreateShaderProgramEXT, 883, CreateShaderProgramEXT@8) + GL_STUB(UseShaderProgramEXT, 884, UseShaderProgramEXT@8) + GL_STUB(TextureBarrierNV, 885, TextureBarrierNV@0) GL_STUB(_dispatch_stub_886, 886, _dispatch_stub_886@16) HIDDEN(GL_PREFIX(_dispatch_stub_886, _dispatch_stub_886@16)) GL_STUB(_dispatch_stub_887, 887, _dispatch_stub_887@16) HIDDEN(GL_PREFIX(_dispatch_stub_887, _dispatch_stub_887@16)) - GL_STUB(_dispatch_stub_888, 888, _dispatch_stub_888@12) - HIDDEN(GL_PREFIX(_dispatch_stub_888, _dispatch_stub_888@12)) + GL_STUB(_dispatch_stub_888, 888, _dispatch_stub_888@16) + HIDDEN(GL_PREFIX(_dispatch_stub_888, _dispatch_stub_888@16)) GL_STUB(_dispatch_stub_889, 889, _dispatch_stub_889@12) HIDDEN(GL_PREFIX(_dispatch_stub_889, _dispatch_stub_889@12)) - GL_STUB(EGLImageTargetRenderbufferStorageOES, 890, EGLImageTargetRenderbufferStorageOES@8) - GL_STUB(EGLImageTargetTexture2DOES, 891, EGLImageTargetTexture2DOES@8) + GL_STUB(_dispatch_stub_890, 890, _dispatch_stub_890@12) + HIDDEN(GL_PREFIX(_dispatch_stub_890, _dispatch_stub_890@12)) + GL_STUB(EGLImageTargetRenderbufferStorageOES, 891, EGLImageTargetRenderbufferStorageOES@8) + GL_STUB(EGLImageTargetTexture2DOES, 892, EGLImageTargetTexture2DOES@8) GL_STUB_ALIAS(ArrayElementEXT, 306, ArrayElementEXT@4, ArrayElement, ArrayElement@4) GL_STUB_ALIAS(BindTextureEXT, 307, BindTextureEXT@8, BindTexture, BindTexture@8) GL_STUB_ALIAS(DrawArraysEXT, 310, DrawArraysEXT@12, DrawArrays, DrawArrays@12) @@ -1261,156 +1262,156 @@ GLNAME(gl_dispatch_functions_start): GL_STUB_ALIAS(GetAttribLocation, 570, GetAttribLocation@8, GetAttribLocationARB, GetAttribLocationARB@8) GL_STUB_ALIAS(DrawBuffers, 571, DrawBuffers@8, DrawBuffersARB, DrawBuffersARB@8) GL_STUB_ALIAS(DrawBuffersATI, 571, DrawBuffersATI@8, DrawBuffersARB, DrawBuffersARB@8) - GL_STUB_ALIAS(DrawArraysInstancedEXT, 572, DrawArraysInstancedEXT@16, DrawArraysInstancedARB, DrawArraysInstancedARB@16) - GL_STUB_ALIAS(DrawArraysInstanced, 572, DrawArraysInstanced@16, DrawArraysInstancedARB, DrawArraysInstancedARB@16) - GL_STUB_ALIAS(DrawElementsInstancedEXT, 573, DrawElementsInstancedEXT@20, DrawElementsInstancedARB, DrawElementsInstancedARB@20) - GL_STUB_ALIAS(DrawElementsInstanced, 573, DrawElementsInstanced@20, DrawElementsInstancedARB, DrawElementsInstancedARB@20) - GL_STUB_ALIAS(RenderbufferStorageMultisampleEXT, 574, RenderbufferStorageMultisampleEXT@20, RenderbufferStorageMultisample, RenderbufferStorageMultisample@20) - GL_STUB_ALIAS(PointParameterf, 625, PointParameterf@8, PointParameterfEXT, PointParameterfEXT@8) - GL_STUB_ALIAS(PointParameterfARB, 625, PointParameterfARB@8, PointParameterfEXT, PointParameterfEXT@8) - GL_STUB_ALIAS(PointParameterfv, 626, PointParameterfv@8, PointParameterfvEXT, PointParameterfvEXT@8) - GL_STUB_ALIAS(PointParameterfvARB, 626, PointParameterfvARB@8, PointParameterfvEXT, PointParameterfvEXT@8) - GL_STUB_ALIAS(SecondaryColor3b, 629, SecondaryColor3b@12, SecondaryColor3bEXT, SecondaryColor3bEXT@12) - GL_STUB_ALIAS(SecondaryColor3bv, 630, SecondaryColor3bv@4, SecondaryColor3bvEXT, SecondaryColor3bvEXT@4) - GL_STUB_ALIAS(SecondaryColor3d, 631, SecondaryColor3d@24, SecondaryColor3dEXT, SecondaryColor3dEXT@24) - GL_STUB_ALIAS(SecondaryColor3dv, 632, SecondaryColor3dv@4, SecondaryColor3dvEXT, SecondaryColor3dvEXT@4) - GL_STUB_ALIAS(SecondaryColor3f, 633, SecondaryColor3f@12, SecondaryColor3fEXT, SecondaryColor3fEXT@12) - GL_STUB_ALIAS(SecondaryColor3fv, 634, SecondaryColor3fv@4, SecondaryColor3fvEXT, SecondaryColor3fvEXT@4) - GL_STUB_ALIAS(SecondaryColor3i, 635, SecondaryColor3i@12, SecondaryColor3iEXT, SecondaryColor3iEXT@12) - GL_STUB_ALIAS(SecondaryColor3iv, 636, SecondaryColor3iv@4, SecondaryColor3ivEXT, SecondaryColor3ivEXT@4) - GL_STUB_ALIAS(SecondaryColor3s, 637, SecondaryColor3s@12, SecondaryColor3sEXT, SecondaryColor3sEXT@12) - GL_STUB_ALIAS(SecondaryColor3sv, 638, SecondaryColor3sv@4, SecondaryColor3svEXT, SecondaryColor3svEXT@4) - GL_STUB_ALIAS(SecondaryColor3ub, 639, SecondaryColor3ub@12, SecondaryColor3ubEXT, SecondaryColor3ubEXT@12) - GL_STUB_ALIAS(SecondaryColor3ubv, 640, SecondaryColor3ubv@4, SecondaryColor3ubvEXT, SecondaryColor3ubvEXT@4) - GL_STUB_ALIAS(SecondaryColor3ui, 641, SecondaryColor3ui@12, SecondaryColor3uiEXT, SecondaryColor3uiEXT@12) - GL_STUB_ALIAS(SecondaryColor3uiv, 642, SecondaryColor3uiv@4, SecondaryColor3uivEXT, SecondaryColor3uivEXT@4) - GL_STUB_ALIAS(SecondaryColor3us, 643, SecondaryColor3us@12, SecondaryColor3usEXT, SecondaryColor3usEXT@12) - GL_STUB_ALIAS(SecondaryColor3usv, 644, SecondaryColor3usv@4, SecondaryColor3usvEXT, SecondaryColor3usvEXT@4) - GL_STUB_ALIAS(SecondaryColorPointer, 645, SecondaryColorPointer@16, SecondaryColorPointerEXT, SecondaryColorPointerEXT@16) - GL_STUB_ALIAS(MultiDrawArrays, 646, MultiDrawArrays@16, MultiDrawArraysEXT, MultiDrawArraysEXT@16) - GL_STUB_ALIAS(MultiDrawElements, 647, MultiDrawElements@20, MultiDrawElementsEXT, MultiDrawElementsEXT@20) - GL_STUB_ALIAS(FogCoordPointer, 648, FogCoordPointer@12, FogCoordPointerEXT, FogCoordPointerEXT@12) - GL_STUB_ALIAS(FogCoordd, 649, FogCoordd@8, FogCoorddEXT, FogCoorddEXT@8) - GL_STUB_ALIAS(FogCoorddv, 650, FogCoorddv@4, FogCoorddvEXT, FogCoorddvEXT@4) - GL_STUB_ALIAS(FogCoordf, 651, FogCoordf@4, FogCoordfEXT, FogCoordfEXT@4) - GL_STUB_ALIAS(FogCoordfv, 652, FogCoordfv@4, FogCoordfvEXT, FogCoordfvEXT@4) - GL_STUB_ALIAS(BlendFuncSeparate, 654, BlendFuncSeparate@16, BlendFuncSeparateEXT, BlendFuncSeparateEXT@16) - GL_STUB_ALIAS(WindowPos2d, 671, WindowPos2d@16, WindowPos2dMESA, WindowPos2dMESA@16) - GL_STUB_ALIAS(WindowPos2dARB, 671, WindowPos2dARB@16, WindowPos2dMESA, WindowPos2dMESA@16) - GL_STUB_ALIAS(WindowPos2dv, 672, WindowPos2dv@4, WindowPos2dvMESA, WindowPos2dvMESA@4) - GL_STUB_ALIAS(WindowPos2dvARB, 672, WindowPos2dvARB@4, WindowPos2dvMESA, WindowPos2dvMESA@4) - GL_STUB_ALIAS(WindowPos2f, 673, WindowPos2f@8, WindowPos2fMESA, WindowPos2fMESA@8) - GL_STUB_ALIAS(WindowPos2fARB, 673, WindowPos2fARB@8, WindowPos2fMESA, WindowPos2fMESA@8) - GL_STUB_ALIAS(WindowPos2fv, 674, WindowPos2fv@4, WindowPos2fvMESA, WindowPos2fvMESA@4) - GL_STUB_ALIAS(WindowPos2fvARB, 674, WindowPos2fvARB@4, WindowPos2fvMESA, WindowPos2fvMESA@4) - GL_STUB_ALIAS(WindowPos2i, 675, WindowPos2i@8, WindowPos2iMESA, WindowPos2iMESA@8) - GL_STUB_ALIAS(WindowPos2iARB, 675, WindowPos2iARB@8, WindowPos2iMESA, WindowPos2iMESA@8) - GL_STUB_ALIAS(WindowPos2iv, 676, WindowPos2iv@4, WindowPos2ivMESA, WindowPos2ivMESA@4) - GL_STUB_ALIAS(WindowPos2ivARB, 676, WindowPos2ivARB@4, WindowPos2ivMESA, WindowPos2ivMESA@4) - GL_STUB_ALIAS(WindowPos2s, 677, WindowPos2s@8, WindowPos2sMESA, WindowPos2sMESA@8) - GL_STUB_ALIAS(WindowPos2sARB, 677, WindowPos2sARB@8, WindowPos2sMESA, WindowPos2sMESA@8) - GL_STUB_ALIAS(WindowPos2sv, 678, WindowPos2sv@4, WindowPos2svMESA, WindowPos2svMESA@4) - GL_STUB_ALIAS(WindowPos2svARB, 678, WindowPos2svARB@4, WindowPos2svMESA, WindowPos2svMESA@4) - GL_STUB_ALIAS(WindowPos3d, 679, WindowPos3d@24, WindowPos3dMESA, WindowPos3dMESA@24) - GL_STUB_ALIAS(WindowPos3dARB, 679, WindowPos3dARB@24, WindowPos3dMESA, WindowPos3dMESA@24) - GL_STUB_ALIAS(WindowPos3dv, 680, WindowPos3dv@4, WindowPos3dvMESA, WindowPos3dvMESA@4) - GL_STUB_ALIAS(WindowPos3dvARB, 680, WindowPos3dvARB@4, WindowPos3dvMESA, WindowPos3dvMESA@4) - GL_STUB_ALIAS(WindowPos3f, 681, WindowPos3f@12, WindowPos3fMESA, WindowPos3fMESA@12) - GL_STUB_ALIAS(WindowPos3fARB, 681, WindowPos3fARB@12, WindowPos3fMESA, WindowPos3fMESA@12) - GL_STUB_ALIAS(WindowPos3fv, 682, WindowPos3fv@4, WindowPos3fvMESA, WindowPos3fvMESA@4) - GL_STUB_ALIAS(WindowPos3fvARB, 682, WindowPos3fvARB@4, WindowPos3fvMESA, WindowPos3fvMESA@4) - GL_STUB_ALIAS(WindowPos3i, 683, WindowPos3i@12, WindowPos3iMESA, WindowPos3iMESA@12) - GL_STUB_ALIAS(WindowPos3iARB, 683, WindowPos3iARB@12, WindowPos3iMESA, WindowPos3iMESA@12) - GL_STUB_ALIAS(WindowPos3iv, 684, WindowPos3iv@4, WindowPos3ivMESA, WindowPos3ivMESA@4) - GL_STUB_ALIAS(WindowPos3ivARB, 684, WindowPos3ivARB@4, WindowPos3ivMESA, WindowPos3ivMESA@4) - GL_STUB_ALIAS(WindowPos3s, 685, WindowPos3s@12, WindowPos3sMESA, WindowPos3sMESA@12) - GL_STUB_ALIAS(WindowPos3sARB, 685, WindowPos3sARB@12, WindowPos3sMESA, WindowPos3sMESA@12) - GL_STUB_ALIAS(WindowPos3sv, 686, WindowPos3sv@4, WindowPos3svMESA, WindowPos3svMESA@4) - GL_STUB_ALIAS(WindowPos3svARB, 686, WindowPos3svARB@4, WindowPos3svMESA, WindowPos3svMESA@4) - GL_STUB_ALIAS(BindProgramARB, 705, BindProgramARB@8, BindProgramNV, BindProgramNV@8) - GL_STUB_ALIAS(DeleteProgramsARB, 706, DeleteProgramsARB@8, DeleteProgramsNV, DeleteProgramsNV@8) - GL_STUB_ALIAS(GenProgramsARB, 708, GenProgramsARB@8, GenProgramsNV, GenProgramsNV@8) - GL_STUB_ALIAS(GetVertexAttribPointerv, 714, GetVertexAttribPointerv@12, GetVertexAttribPointervNV, GetVertexAttribPointervNV@12) - GL_STUB_ALIAS(GetVertexAttribPointervARB, 714, GetVertexAttribPointervARB@12, GetVertexAttribPointervNV, GetVertexAttribPointervNV@12) - GL_STUB_ALIAS(IsProgramARB, 718, IsProgramARB@4, IsProgramNV, IsProgramNV@4) - GL_STUB_ALIAS(PointParameteri, 782, PointParameteri@8, PointParameteriNV, PointParameteriNV@8) - GL_STUB_ALIAS(PointParameteriv, 783, PointParameteriv@8, PointParameterivNV, PointParameterivNV@8) - GL_STUB_ALIAS(DeleteVertexArrays, 786, DeleteVertexArrays@8, _dispatch_stub_786, _dispatch_stub_786@8) - GL_STUB_ALIAS(IsVertexArray, 788, IsVertexArray@4, _dispatch_stub_788, _dispatch_stub_788@4) - GL_STUB_ALIAS(PrimitiveRestartIndex, 795, PrimitiveRestartIndex@4, PrimitiveRestartIndexNV, PrimitiveRestartIndexNV@4) - GL_STUB_ALIAS(BlendEquationSeparate, 798, BlendEquationSeparate@8, _dispatch_stub_798, _dispatch_stub_798@8) - GL_STUB_ALIAS(BindFramebuffer, 799, BindFramebuffer@8, BindFramebufferEXT, BindFramebufferEXT@8) - GL_STUB_ALIAS(BindRenderbuffer, 800, BindRenderbuffer@8, BindRenderbufferEXT, BindRenderbufferEXT@8) - GL_STUB_ALIAS(CheckFramebufferStatus, 801, CheckFramebufferStatus@4, CheckFramebufferStatusEXT, CheckFramebufferStatusEXT@4) - GL_STUB_ALIAS(DeleteFramebuffers, 802, DeleteFramebuffers@8, DeleteFramebuffersEXT, DeleteFramebuffersEXT@8) - GL_STUB_ALIAS(DeleteRenderbuffers, 803, DeleteRenderbuffers@8, DeleteRenderbuffersEXT, DeleteRenderbuffersEXT@8) - GL_STUB_ALIAS(FramebufferRenderbuffer, 804, FramebufferRenderbuffer@16, FramebufferRenderbufferEXT, FramebufferRenderbufferEXT@16) - GL_STUB_ALIAS(FramebufferTexture1D, 805, FramebufferTexture1D@20, FramebufferTexture1DEXT, FramebufferTexture1DEXT@20) - GL_STUB_ALIAS(FramebufferTexture2D, 806, FramebufferTexture2D@20, FramebufferTexture2DEXT, FramebufferTexture2DEXT@20) - GL_STUB_ALIAS(FramebufferTexture3D, 807, FramebufferTexture3D@24, FramebufferTexture3DEXT, FramebufferTexture3DEXT@24) - GL_STUB_ALIAS(GenFramebuffers, 808, GenFramebuffers@8, GenFramebuffersEXT, GenFramebuffersEXT@8) - GL_STUB_ALIAS(GenRenderbuffers, 809, GenRenderbuffers@8, GenRenderbuffersEXT, GenRenderbuffersEXT@8) - GL_STUB_ALIAS(GenerateMipmap, 810, GenerateMipmap@4, GenerateMipmapEXT, GenerateMipmapEXT@4) - GL_STUB_ALIAS(GetFramebufferAttachmentParameteriv, 811, GetFramebufferAttachmentParameteriv@16, GetFramebufferAttachmentParameterivEXT, GetFramebufferAttachmentParameterivEXT@16) - GL_STUB_ALIAS(GetRenderbufferParameteriv, 812, GetRenderbufferParameteriv@12, GetRenderbufferParameterivEXT, GetRenderbufferParameterivEXT@12) - GL_STUB_ALIAS(IsFramebuffer, 813, IsFramebuffer@4, IsFramebufferEXT, IsFramebufferEXT@4) - GL_STUB_ALIAS(IsRenderbuffer, 814, IsRenderbuffer@4, IsRenderbufferEXT, IsRenderbufferEXT@4) - GL_STUB_ALIAS(RenderbufferStorage, 815, RenderbufferStorage@16, RenderbufferStorageEXT, RenderbufferStorageEXT@16) - GL_STUB_ALIAS(BlitFramebuffer, 816, BlitFramebuffer@40, _dispatch_stub_816, _dispatch_stub_816@40) - GL_STUB_ALIAS(BindFragDataLocation, 819, BindFragDataLocation@12, BindFragDataLocationEXT, BindFragDataLocationEXT@12) - GL_STUB_ALIAS(GetFragDataLocation, 820, GetFragDataLocation@8, GetFragDataLocationEXT, GetFragDataLocationEXT@8) - GL_STUB_ALIAS(GetUniformuiv, 821, GetUniformuiv@12, GetUniformuivEXT, GetUniformuivEXT@12) - GL_STUB_ALIAS(GetVertexAttribIiv, 822, GetVertexAttribIiv@12, GetVertexAttribIivEXT, GetVertexAttribIivEXT@12) - GL_STUB_ALIAS(GetVertexAttribIuiv, 823, GetVertexAttribIuiv@12, GetVertexAttribIuivEXT, GetVertexAttribIuivEXT@12) - GL_STUB_ALIAS(Uniform1ui, 824, Uniform1ui@8, Uniform1uiEXT, Uniform1uiEXT@8) - GL_STUB_ALIAS(Uniform1uiv, 825, Uniform1uiv@12, Uniform1uivEXT, Uniform1uivEXT@12) - GL_STUB_ALIAS(Uniform2ui, 826, Uniform2ui@12, Uniform2uiEXT, Uniform2uiEXT@12) - GL_STUB_ALIAS(Uniform2uiv, 827, Uniform2uiv@12, Uniform2uivEXT, Uniform2uivEXT@12) - GL_STUB_ALIAS(Uniform3ui, 828, Uniform3ui@16, Uniform3uiEXT, Uniform3uiEXT@16) - GL_STUB_ALIAS(Uniform3uiv, 829, Uniform3uiv@12, Uniform3uivEXT, Uniform3uivEXT@12) - GL_STUB_ALIAS(Uniform4ui, 830, Uniform4ui@20, Uniform4uiEXT, Uniform4uiEXT@20) - GL_STUB_ALIAS(Uniform4uiv, 831, Uniform4uiv@12, Uniform4uivEXT, Uniform4uivEXT@12) - GL_STUB_ALIAS(VertexAttribI1i, 832, VertexAttribI1i@8, VertexAttribI1iEXT, VertexAttribI1iEXT@8) - GL_STUB_ALIAS(VertexAttribI1iv, 833, VertexAttribI1iv@8, VertexAttribI1ivEXT, VertexAttribI1ivEXT@8) - GL_STUB_ALIAS(VertexAttribI1ui, 834, VertexAttribI1ui@8, VertexAttribI1uiEXT, VertexAttribI1uiEXT@8) - GL_STUB_ALIAS(VertexAttribI1uiv, 835, VertexAttribI1uiv@8, VertexAttribI1uivEXT, VertexAttribI1uivEXT@8) - GL_STUB_ALIAS(VertexAttribI2i, 836, VertexAttribI2i@12, VertexAttribI2iEXT, VertexAttribI2iEXT@12) - GL_STUB_ALIAS(VertexAttribI2iv, 837, VertexAttribI2iv@8, VertexAttribI2ivEXT, VertexAttribI2ivEXT@8) - GL_STUB_ALIAS(VertexAttribI2ui, 838, VertexAttribI2ui@12, VertexAttribI2uiEXT, VertexAttribI2uiEXT@12) - GL_STUB_ALIAS(VertexAttribI2uiv, 839, VertexAttribI2uiv@8, VertexAttribI2uivEXT, VertexAttribI2uivEXT@8) - GL_STUB_ALIAS(VertexAttribI3i, 840, VertexAttribI3i@16, VertexAttribI3iEXT, VertexAttribI3iEXT@16) - GL_STUB_ALIAS(VertexAttribI3iv, 841, VertexAttribI3iv@8, VertexAttribI3ivEXT, VertexAttribI3ivEXT@8) - GL_STUB_ALIAS(VertexAttribI3ui, 842, VertexAttribI3ui@16, VertexAttribI3uiEXT, VertexAttribI3uiEXT@16) - GL_STUB_ALIAS(VertexAttribI3uiv, 843, VertexAttribI3uiv@8, VertexAttribI3uivEXT, VertexAttribI3uivEXT@8) - GL_STUB_ALIAS(VertexAttribI4bv, 844, VertexAttribI4bv@8, VertexAttribI4bvEXT, VertexAttribI4bvEXT@8) - GL_STUB_ALIAS(VertexAttribI4i, 845, VertexAttribI4i@20, VertexAttribI4iEXT, VertexAttribI4iEXT@20) - GL_STUB_ALIAS(VertexAttribI4iv, 846, VertexAttribI4iv@8, VertexAttribI4ivEXT, VertexAttribI4ivEXT@8) - GL_STUB_ALIAS(VertexAttribI4sv, 847, VertexAttribI4sv@8, VertexAttribI4svEXT, VertexAttribI4svEXT@8) - GL_STUB_ALIAS(VertexAttribI4ubv, 848, VertexAttribI4ubv@8, VertexAttribI4ubvEXT, VertexAttribI4ubvEXT@8) - GL_STUB_ALIAS(VertexAttribI4ui, 849, VertexAttribI4ui@20, VertexAttribI4uiEXT, VertexAttribI4uiEXT@20) - GL_STUB_ALIAS(VertexAttribI4uiv, 850, VertexAttribI4uiv@8, VertexAttribI4uivEXT, VertexAttribI4uivEXT@8) - GL_STUB_ALIAS(VertexAttribI4usv, 851, VertexAttribI4usv@8, VertexAttribI4usvEXT, VertexAttribI4usvEXT@8) - GL_STUB_ALIAS(VertexAttribIPointer, 852, VertexAttribIPointer@20, VertexAttribIPointerEXT, VertexAttribIPointerEXT@20) - GL_STUB_ALIAS(FramebufferTextureLayer, 853, FramebufferTextureLayer@20, FramebufferTextureLayerEXT, FramebufferTextureLayerEXT@20) - GL_STUB_ALIAS(ColorMaski, 854, ColorMaski@20, ColorMaskIndexedEXT, ColorMaskIndexedEXT@20) - GL_STUB_ALIAS(Disablei, 855, Disablei@8, DisableIndexedEXT, DisableIndexedEXT@8) - GL_STUB_ALIAS(Enablei, 856, Enablei@8, EnableIndexedEXT, EnableIndexedEXT@8) - GL_STUB_ALIAS(GetBooleani_v, 857, GetBooleani_v@12, GetBooleanIndexedvEXT, GetBooleanIndexedvEXT@12) - GL_STUB_ALIAS(GetIntegeri_v, 858, GetIntegeri_v@12, GetIntegerIndexedvEXT, GetIntegerIndexedvEXT@12) - GL_STUB_ALIAS(IsEnabledi, 859, IsEnabledi@8, IsEnabledIndexedEXT, IsEnabledIndexedEXT@8) - GL_STUB_ALIAS(GetTexParameterIiv, 862, GetTexParameterIiv@12, GetTexParameterIivEXT, GetTexParameterIivEXT@12) - GL_STUB_ALIAS(GetTexParameterIuiv, 863, GetTexParameterIuiv@12, GetTexParameterIuivEXT, GetTexParameterIuivEXT@12) - GL_STUB_ALIAS(TexParameterIiv, 864, TexParameterIiv@12, TexParameterIivEXT, TexParameterIivEXT@12) - GL_STUB_ALIAS(TexParameterIuiv, 865, TexParameterIuiv@12, TexParameterIuivEXT, TexParameterIuivEXT@12) - GL_STUB_ALIAS(BeginConditionalRender, 866, BeginConditionalRender@8, BeginConditionalRenderNV, BeginConditionalRenderNV@8) - GL_STUB_ALIAS(EndConditionalRender, 867, EndConditionalRender@0, EndConditionalRenderNV, EndConditionalRenderNV@0) - GL_STUB_ALIAS(BeginTransformFeedback, 868, BeginTransformFeedback@4, BeginTransformFeedbackEXT, BeginTransformFeedbackEXT@4) - GL_STUB_ALIAS(BindBufferBase, 869, BindBufferBase@12, BindBufferBaseEXT, BindBufferBaseEXT@12) - GL_STUB_ALIAS(BindBufferRange, 871, BindBufferRange@20, BindBufferRangeEXT, BindBufferRangeEXT@20) - GL_STUB_ALIAS(EndTransformFeedback, 872, EndTransformFeedback@0, EndTransformFeedbackEXT, EndTransformFeedbackEXT@0) - GL_STUB_ALIAS(GetTransformFeedbackVarying, 873, GetTransformFeedbackVarying@28, GetTransformFeedbackVaryingEXT, GetTransformFeedbackVaryingEXT@28) - GL_STUB_ALIAS(TransformFeedbackVaryings, 874, TransformFeedbackVaryings@16, TransformFeedbackVaryingsEXT, TransformFeedbackVaryingsEXT@16) - GL_STUB_ALIAS(ProvokingVertex, 875, ProvokingVertex@4, ProvokingVertexEXT, ProvokingVertexEXT@4) + GL_STUB_ALIAS(DrawArraysInstancedEXT, 573, DrawArraysInstancedEXT@16, DrawArraysInstancedARB, DrawArraysInstancedARB@16) + GL_STUB_ALIAS(DrawArraysInstanced, 573, DrawArraysInstanced@16, DrawArraysInstancedARB, DrawArraysInstancedARB@16) + GL_STUB_ALIAS(DrawElementsInstancedEXT, 574, DrawElementsInstancedEXT@20, DrawElementsInstancedARB, DrawElementsInstancedARB@20) + GL_STUB_ALIAS(DrawElementsInstanced, 574, DrawElementsInstanced@20, DrawElementsInstancedARB, DrawElementsInstancedARB@20) + GL_STUB_ALIAS(RenderbufferStorageMultisampleEXT, 575, RenderbufferStorageMultisampleEXT@20, RenderbufferStorageMultisample, RenderbufferStorageMultisample@20) + GL_STUB_ALIAS(PointParameterf, 626, PointParameterf@8, PointParameterfEXT, PointParameterfEXT@8) + GL_STUB_ALIAS(PointParameterfARB, 626, PointParameterfARB@8, PointParameterfEXT, PointParameterfEXT@8) + GL_STUB_ALIAS(PointParameterfv, 627, PointParameterfv@8, PointParameterfvEXT, PointParameterfvEXT@8) + GL_STUB_ALIAS(PointParameterfvARB, 627, PointParameterfvARB@8, PointParameterfvEXT, PointParameterfvEXT@8) + GL_STUB_ALIAS(SecondaryColor3b, 630, SecondaryColor3b@12, SecondaryColor3bEXT, SecondaryColor3bEXT@12) + GL_STUB_ALIAS(SecondaryColor3bv, 631, SecondaryColor3bv@4, SecondaryColor3bvEXT, SecondaryColor3bvEXT@4) + GL_STUB_ALIAS(SecondaryColor3d, 632, SecondaryColor3d@24, SecondaryColor3dEXT, SecondaryColor3dEXT@24) + GL_STUB_ALIAS(SecondaryColor3dv, 633, SecondaryColor3dv@4, SecondaryColor3dvEXT, SecondaryColor3dvEXT@4) + GL_STUB_ALIAS(SecondaryColor3f, 634, SecondaryColor3f@12, SecondaryColor3fEXT, SecondaryColor3fEXT@12) + GL_STUB_ALIAS(SecondaryColor3fv, 635, SecondaryColor3fv@4, SecondaryColor3fvEXT, SecondaryColor3fvEXT@4) + GL_STUB_ALIAS(SecondaryColor3i, 636, SecondaryColor3i@12, SecondaryColor3iEXT, SecondaryColor3iEXT@12) + GL_STUB_ALIAS(SecondaryColor3iv, 637, SecondaryColor3iv@4, SecondaryColor3ivEXT, SecondaryColor3ivEXT@4) + GL_STUB_ALIAS(SecondaryColor3s, 638, SecondaryColor3s@12, SecondaryColor3sEXT, SecondaryColor3sEXT@12) + GL_STUB_ALIAS(SecondaryColor3sv, 639, SecondaryColor3sv@4, SecondaryColor3svEXT, SecondaryColor3svEXT@4) + GL_STUB_ALIAS(SecondaryColor3ub, 640, SecondaryColor3ub@12, SecondaryColor3ubEXT, SecondaryColor3ubEXT@12) + GL_STUB_ALIAS(SecondaryColor3ubv, 641, SecondaryColor3ubv@4, SecondaryColor3ubvEXT, SecondaryColor3ubvEXT@4) + GL_STUB_ALIAS(SecondaryColor3ui, 642, SecondaryColor3ui@12, SecondaryColor3uiEXT, SecondaryColor3uiEXT@12) + GL_STUB_ALIAS(SecondaryColor3uiv, 643, SecondaryColor3uiv@4, SecondaryColor3uivEXT, SecondaryColor3uivEXT@4) + GL_STUB_ALIAS(SecondaryColor3us, 644, SecondaryColor3us@12, SecondaryColor3usEXT, SecondaryColor3usEXT@12) + GL_STUB_ALIAS(SecondaryColor3usv, 645, SecondaryColor3usv@4, SecondaryColor3usvEXT, SecondaryColor3usvEXT@4) + GL_STUB_ALIAS(SecondaryColorPointer, 646, SecondaryColorPointer@16, SecondaryColorPointerEXT, SecondaryColorPointerEXT@16) + GL_STUB_ALIAS(MultiDrawArrays, 647, MultiDrawArrays@16, MultiDrawArraysEXT, MultiDrawArraysEXT@16) + GL_STUB_ALIAS(MultiDrawElements, 648, MultiDrawElements@20, MultiDrawElementsEXT, MultiDrawElementsEXT@20) + GL_STUB_ALIAS(FogCoordPointer, 649, FogCoordPointer@12, FogCoordPointerEXT, FogCoordPointerEXT@12) + GL_STUB_ALIAS(FogCoordd, 650, FogCoordd@8, FogCoorddEXT, FogCoorddEXT@8) + GL_STUB_ALIAS(FogCoorddv, 651, FogCoorddv@4, FogCoorddvEXT, FogCoorddvEXT@4) + GL_STUB_ALIAS(FogCoordf, 652, FogCoordf@4, FogCoordfEXT, FogCoordfEXT@4) + GL_STUB_ALIAS(FogCoordfv, 653, FogCoordfv@4, FogCoordfvEXT, FogCoordfvEXT@4) + GL_STUB_ALIAS(BlendFuncSeparate, 655, BlendFuncSeparate@16, BlendFuncSeparateEXT, BlendFuncSeparateEXT@16) + GL_STUB_ALIAS(WindowPos2d, 672, WindowPos2d@16, WindowPos2dMESA, WindowPos2dMESA@16) + GL_STUB_ALIAS(WindowPos2dARB, 672, WindowPos2dARB@16, WindowPos2dMESA, WindowPos2dMESA@16) + GL_STUB_ALIAS(WindowPos2dv, 673, WindowPos2dv@4, WindowPos2dvMESA, WindowPos2dvMESA@4) + GL_STUB_ALIAS(WindowPos2dvARB, 673, WindowPos2dvARB@4, WindowPos2dvMESA, WindowPos2dvMESA@4) + GL_STUB_ALIAS(WindowPos2f, 674, WindowPos2f@8, WindowPos2fMESA, WindowPos2fMESA@8) + GL_STUB_ALIAS(WindowPos2fARB, 674, WindowPos2fARB@8, WindowPos2fMESA, WindowPos2fMESA@8) + GL_STUB_ALIAS(WindowPos2fv, 675, WindowPos2fv@4, WindowPos2fvMESA, WindowPos2fvMESA@4) + GL_STUB_ALIAS(WindowPos2fvARB, 675, WindowPos2fvARB@4, WindowPos2fvMESA, WindowPos2fvMESA@4) + GL_STUB_ALIAS(WindowPos2i, 676, WindowPos2i@8, WindowPos2iMESA, WindowPos2iMESA@8) + GL_STUB_ALIAS(WindowPos2iARB, 676, WindowPos2iARB@8, WindowPos2iMESA, WindowPos2iMESA@8) + GL_STUB_ALIAS(WindowPos2iv, 677, WindowPos2iv@4, WindowPos2ivMESA, WindowPos2ivMESA@4) + GL_STUB_ALIAS(WindowPos2ivARB, 677, WindowPos2ivARB@4, WindowPos2ivMESA, WindowPos2ivMESA@4) + GL_STUB_ALIAS(WindowPos2s, 678, WindowPos2s@8, WindowPos2sMESA, WindowPos2sMESA@8) + GL_STUB_ALIAS(WindowPos2sARB, 678, WindowPos2sARB@8, WindowPos2sMESA, WindowPos2sMESA@8) + GL_STUB_ALIAS(WindowPos2sv, 679, WindowPos2sv@4, WindowPos2svMESA, WindowPos2svMESA@4) + GL_STUB_ALIAS(WindowPos2svARB, 679, WindowPos2svARB@4, WindowPos2svMESA, WindowPos2svMESA@4) + GL_STUB_ALIAS(WindowPos3d, 680, WindowPos3d@24, WindowPos3dMESA, WindowPos3dMESA@24) + GL_STUB_ALIAS(WindowPos3dARB, 680, WindowPos3dARB@24, WindowPos3dMESA, WindowPos3dMESA@24) + GL_STUB_ALIAS(WindowPos3dv, 681, WindowPos3dv@4, WindowPos3dvMESA, WindowPos3dvMESA@4) + GL_STUB_ALIAS(WindowPos3dvARB, 681, WindowPos3dvARB@4, WindowPos3dvMESA, WindowPos3dvMESA@4) + GL_STUB_ALIAS(WindowPos3f, 682, WindowPos3f@12, WindowPos3fMESA, WindowPos3fMESA@12) + GL_STUB_ALIAS(WindowPos3fARB, 682, WindowPos3fARB@12, WindowPos3fMESA, WindowPos3fMESA@12) + GL_STUB_ALIAS(WindowPos3fv, 683, WindowPos3fv@4, WindowPos3fvMESA, WindowPos3fvMESA@4) + GL_STUB_ALIAS(WindowPos3fvARB, 683, WindowPos3fvARB@4, WindowPos3fvMESA, WindowPos3fvMESA@4) + GL_STUB_ALIAS(WindowPos3i, 684, WindowPos3i@12, WindowPos3iMESA, WindowPos3iMESA@12) + GL_STUB_ALIAS(WindowPos3iARB, 684, WindowPos3iARB@12, WindowPos3iMESA, WindowPos3iMESA@12) + GL_STUB_ALIAS(WindowPos3iv, 685, WindowPos3iv@4, WindowPos3ivMESA, WindowPos3ivMESA@4) + GL_STUB_ALIAS(WindowPos3ivARB, 685, WindowPos3ivARB@4, WindowPos3ivMESA, WindowPos3ivMESA@4) + GL_STUB_ALIAS(WindowPos3s, 686, WindowPos3s@12, WindowPos3sMESA, WindowPos3sMESA@12) + GL_STUB_ALIAS(WindowPos3sARB, 686, WindowPos3sARB@12, WindowPos3sMESA, WindowPos3sMESA@12) + GL_STUB_ALIAS(WindowPos3sv, 687, WindowPos3sv@4, WindowPos3svMESA, WindowPos3svMESA@4) + GL_STUB_ALIAS(WindowPos3svARB, 687, WindowPos3svARB@4, WindowPos3svMESA, WindowPos3svMESA@4) + GL_STUB_ALIAS(BindProgramARB, 706, BindProgramARB@8, BindProgramNV, BindProgramNV@8) + GL_STUB_ALIAS(DeleteProgramsARB, 707, DeleteProgramsARB@8, DeleteProgramsNV, DeleteProgramsNV@8) + GL_STUB_ALIAS(GenProgramsARB, 709, GenProgramsARB@8, GenProgramsNV, GenProgramsNV@8) + GL_STUB_ALIAS(GetVertexAttribPointerv, 715, GetVertexAttribPointerv@12, GetVertexAttribPointervNV, GetVertexAttribPointervNV@12) + GL_STUB_ALIAS(GetVertexAttribPointervARB, 715, GetVertexAttribPointervARB@12, GetVertexAttribPointervNV, GetVertexAttribPointervNV@12) + GL_STUB_ALIAS(IsProgramARB, 719, IsProgramARB@4, IsProgramNV, IsProgramNV@4) + GL_STUB_ALIAS(PointParameteri, 783, PointParameteri@8, PointParameteriNV, PointParameteriNV@8) + GL_STUB_ALIAS(PointParameteriv, 784, PointParameteriv@8, PointParameterivNV, PointParameterivNV@8) + GL_STUB_ALIAS(DeleteVertexArrays, 787, DeleteVertexArrays@8, _dispatch_stub_787, _dispatch_stub_787@8) + GL_STUB_ALIAS(IsVertexArray, 789, IsVertexArray@4, _dispatch_stub_789, _dispatch_stub_789@4) + GL_STUB_ALIAS(PrimitiveRestartIndex, 796, PrimitiveRestartIndex@4, PrimitiveRestartIndexNV, PrimitiveRestartIndexNV@4) + GL_STUB_ALIAS(BlendEquationSeparate, 799, BlendEquationSeparate@8, _dispatch_stub_799, _dispatch_stub_799@8) + GL_STUB_ALIAS(BindFramebuffer, 800, BindFramebuffer@8, BindFramebufferEXT, BindFramebufferEXT@8) + GL_STUB_ALIAS(BindRenderbuffer, 801, BindRenderbuffer@8, BindRenderbufferEXT, BindRenderbufferEXT@8) + GL_STUB_ALIAS(CheckFramebufferStatus, 802, CheckFramebufferStatus@4, CheckFramebufferStatusEXT, CheckFramebufferStatusEXT@4) + GL_STUB_ALIAS(DeleteFramebuffers, 803, DeleteFramebuffers@8, DeleteFramebuffersEXT, DeleteFramebuffersEXT@8) + GL_STUB_ALIAS(DeleteRenderbuffers, 804, DeleteRenderbuffers@8, DeleteRenderbuffersEXT, DeleteRenderbuffersEXT@8) + GL_STUB_ALIAS(FramebufferRenderbuffer, 805, FramebufferRenderbuffer@16, FramebufferRenderbufferEXT, FramebufferRenderbufferEXT@16) + GL_STUB_ALIAS(FramebufferTexture1D, 806, FramebufferTexture1D@20, FramebufferTexture1DEXT, FramebufferTexture1DEXT@20) + GL_STUB_ALIAS(FramebufferTexture2D, 807, FramebufferTexture2D@20, FramebufferTexture2DEXT, FramebufferTexture2DEXT@20) + GL_STUB_ALIAS(FramebufferTexture3D, 808, FramebufferTexture3D@24, FramebufferTexture3DEXT, FramebufferTexture3DEXT@24) + GL_STUB_ALIAS(GenFramebuffers, 809, GenFramebuffers@8, GenFramebuffersEXT, GenFramebuffersEXT@8) + GL_STUB_ALIAS(GenRenderbuffers, 810, GenRenderbuffers@8, GenRenderbuffersEXT, GenRenderbuffersEXT@8) + GL_STUB_ALIAS(GenerateMipmap, 811, GenerateMipmap@4, GenerateMipmapEXT, GenerateMipmapEXT@4) + GL_STUB_ALIAS(GetFramebufferAttachmentParameteriv, 812, GetFramebufferAttachmentParameteriv@16, GetFramebufferAttachmentParameterivEXT, GetFramebufferAttachmentParameterivEXT@16) + GL_STUB_ALIAS(GetRenderbufferParameteriv, 813, GetRenderbufferParameteriv@12, GetRenderbufferParameterivEXT, GetRenderbufferParameterivEXT@12) + GL_STUB_ALIAS(IsFramebuffer, 814, IsFramebuffer@4, IsFramebufferEXT, IsFramebufferEXT@4) + GL_STUB_ALIAS(IsRenderbuffer, 815, IsRenderbuffer@4, IsRenderbufferEXT, IsRenderbufferEXT@4) + GL_STUB_ALIAS(RenderbufferStorage, 816, RenderbufferStorage@16, RenderbufferStorageEXT, RenderbufferStorageEXT@16) + GL_STUB_ALIAS(BlitFramebuffer, 817, BlitFramebuffer@40, _dispatch_stub_817, _dispatch_stub_817@40) + GL_STUB_ALIAS(BindFragDataLocation, 820, BindFragDataLocation@12, BindFragDataLocationEXT, BindFragDataLocationEXT@12) + GL_STUB_ALIAS(GetFragDataLocation, 821, GetFragDataLocation@8, GetFragDataLocationEXT, GetFragDataLocationEXT@8) + GL_STUB_ALIAS(GetUniformuiv, 822, GetUniformuiv@12, GetUniformuivEXT, GetUniformuivEXT@12) + GL_STUB_ALIAS(GetVertexAttribIiv, 823, GetVertexAttribIiv@12, GetVertexAttribIivEXT, GetVertexAttribIivEXT@12) + GL_STUB_ALIAS(GetVertexAttribIuiv, 824, GetVertexAttribIuiv@12, GetVertexAttribIuivEXT, GetVertexAttribIuivEXT@12) + GL_STUB_ALIAS(Uniform1ui, 825, Uniform1ui@8, Uniform1uiEXT, Uniform1uiEXT@8) + GL_STUB_ALIAS(Uniform1uiv, 826, Uniform1uiv@12, Uniform1uivEXT, Uniform1uivEXT@12) + GL_STUB_ALIAS(Uniform2ui, 827, Uniform2ui@12, Uniform2uiEXT, Uniform2uiEXT@12) + GL_STUB_ALIAS(Uniform2uiv, 828, Uniform2uiv@12, Uniform2uivEXT, Uniform2uivEXT@12) + GL_STUB_ALIAS(Uniform3ui, 829, Uniform3ui@16, Uniform3uiEXT, Uniform3uiEXT@16) + GL_STUB_ALIAS(Uniform3uiv, 830, Uniform3uiv@12, Uniform3uivEXT, Uniform3uivEXT@12) + GL_STUB_ALIAS(Uniform4ui, 831, Uniform4ui@20, Uniform4uiEXT, Uniform4uiEXT@20) + GL_STUB_ALIAS(Uniform4uiv, 832, Uniform4uiv@12, Uniform4uivEXT, Uniform4uivEXT@12) + GL_STUB_ALIAS(VertexAttribI1i, 833, VertexAttribI1i@8, VertexAttribI1iEXT, VertexAttribI1iEXT@8) + GL_STUB_ALIAS(VertexAttribI1iv, 834, VertexAttribI1iv@8, VertexAttribI1ivEXT, VertexAttribI1ivEXT@8) + GL_STUB_ALIAS(VertexAttribI1ui, 835, VertexAttribI1ui@8, VertexAttribI1uiEXT, VertexAttribI1uiEXT@8) + GL_STUB_ALIAS(VertexAttribI1uiv, 836, VertexAttribI1uiv@8, VertexAttribI1uivEXT, VertexAttribI1uivEXT@8) + GL_STUB_ALIAS(VertexAttribI2i, 837, VertexAttribI2i@12, VertexAttribI2iEXT, VertexAttribI2iEXT@12) + GL_STUB_ALIAS(VertexAttribI2iv, 838, VertexAttribI2iv@8, VertexAttribI2ivEXT, VertexAttribI2ivEXT@8) + GL_STUB_ALIAS(VertexAttribI2ui, 839, VertexAttribI2ui@12, VertexAttribI2uiEXT, VertexAttribI2uiEXT@12) + GL_STUB_ALIAS(VertexAttribI2uiv, 840, VertexAttribI2uiv@8, VertexAttribI2uivEXT, VertexAttribI2uivEXT@8) + GL_STUB_ALIAS(VertexAttribI3i, 841, VertexAttribI3i@16, VertexAttribI3iEXT, VertexAttribI3iEXT@16) + GL_STUB_ALIAS(VertexAttribI3iv, 842, VertexAttribI3iv@8, VertexAttribI3ivEXT, VertexAttribI3ivEXT@8) + GL_STUB_ALIAS(VertexAttribI3ui, 843, VertexAttribI3ui@16, VertexAttribI3uiEXT, VertexAttribI3uiEXT@16) + GL_STUB_ALIAS(VertexAttribI3uiv, 844, VertexAttribI3uiv@8, VertexAttribI3uivEXT, VertexAttribI3uivEXT@8) + GL_STUB_ALIAS(VertexAttribI4bv, 845, VertexAttribI4bv@8, VertexAttribI4bvEXT, VertexAttribI4bvEXT@8) + GL_STUB_ALIAS(VertexAttribI4i, 846, VertexAttribI4i@20, VertexAttribI4iEXT, VertexAttribI4iEXT@20) + GL_STUB_ALIAS(VertexAttribI4iv, 847, VertexAttribI4iv@8, VertexAttribI4ivEXT, VertexAttribI4ivEXT@8) + GL_STUB_ALIAS(VertexAttribI4sv, 848, VertexAttribI4sv@8, VertexAttribI4svEXT, VertexAttribI4svEXT@8) + GL_STUB_ALIAS(VertexAttribI4ubv, 849, VertexAttribI4ubv@8, VertexAttribI4ubvEXT, VertexAttribI4ubvEXT@8) + GL_STUB_ALIAS(VertexAttribI4ui, 850, VertexAttribI4ui@20, VertexAttribI4uiEXT, VertexAttribI4uiEXT@20) + GL_STUB_ALIAS(VertexAttribI4uiv, 851, VertexAttribI4uiv@8, VertexAttribI4uivEXT, VertexAttribI4uivEXT@8) + GL_STUB_ALIAS(VertexAttribI4usv, 852, VertexAttribI4usv@8, VertexAttribI4usvEXT, VertexAttribI4usvEXT@8) + GL_STUB_ALIAS(VertexAttribIPointer, 853, VertexAttribIPointer@20, VertexAttribIPointerEXT, VertexAttribIPointerEXT@20) + GL_STUB_ALIAS(FramebufferTextureLayer, 854, FramebufferTextureLayer@20, FramebufferTextureLayerEXT, FramebufferTextureLayerEXT@20) + GL_STUB_ALIAS(ColorMaski, 855, ColorMaski@20, ColorMaskIndexedEXT, ColorMaskIndexedEXT@20) + GL_STUB_ALIAS(Disablei, 856, Disablei@8, DisableIndexedEXT, DisableIndexedEXT@8) + GL_STUB_ALIAS(Enablei, 857, Enablei@8, EnableIndexedEXT, EnableIndexedEXT@8) + GL_STUB_ALIAS(GetBooleani_v, 858, GetBooleani_v@12, GetBooleanIndexedvEXT, GetBooleanIndexedvEXT@12) + GL_STUB_ALIAS(GetIntegeri_v, 859, GetIntegeri_v@12, GetIntegerIndexedvEXT, GetIntegerIndexedvEXT@12) + GL_STUB_ALIAS(IsEnabledi, 860, IsEnabledi@8, IsEnabledIndexedEXT, IsEnabledIndexedEXT@8) + GL_STUB_ALIAS(GetTexParameterIiv, 863, GetTexParameterIiv@12, GetTexParameterIivEXT, GetTexParameterIivEXT@12) + GL_STUB_ALIAS(GetTexParameterIuiv, 864, GetTexParameterIuiv@12, GetTexParameterIuivEXT, GetTexParameterIuivEXT@12) + GL_STUB_ALIAS(TexParameterIiv, 865, TexParameterIiv@12, TexParameterIivEXT, TexParameterIivEXT@12) + GL_STUB_ALIAS(TexParameterIuiv, 866, TexParameterIuiv@12, TexParameterIuivEXT, TexParameterIuivEXT@12) + GL_STUB_ALIAS(BeginConditionalRender, 867, BeginConditionalRender@8, BeginConditionalRenderNV, BeginConditionalRenderNV@8) + GL_STUB_ALIAS(EndConditionalRender, 868, EndConditionalRender@0, EndConditionalRenderNV, EndConditionalRenderNV@0) + GL_STUB_ALIAS(BeginTransformFeedback, 869, BeginTransformFeedback@4, BeginTransformFeedbackEXT, BeginTransformFeedbackEXT@4) + GL_STUB_ALIAS(BindBufferBase, 870, BindBufferBase@12, BindBufferBaseEXT, BindBufferBaseEXT@12) + GL_STUB_ALIAS(BindBufferRange, 872, BindBufferRange@20, BindBufferRangeEXT, BindBufferRangeEXT@20) + GL_STUB_ALIAS(EndTransformFeedback, 873, EndTransformFeedback@0, EndTransformFeedbackEXT, EndTransformFeedbackEXT@0) + GL_STUB_ALIAS(GetTransformFeedbackVarying, 874, GetTransformFeedbackVarying@28, GetTransformFeedbackVaryingEXT, GetTransformFeedbackVaryingEXT@28) + GL_STUB_ALIAS(TransformFeedbackVaryings, 875, TransformFeedbackVaryings@16, TransformFeedbackVaryingsEXT, TransformFeedbackVaryingsEXT@16) + GL_STUB_ALIAS(ProvokingVertex, 876, ProvokingVertex@4, ProvokingVertexEXT, ProvokingVertexEXT@4) GLOBL GLNAME(gl_dispatch_functions_end) HIDDEN(GLNAME(gl_dispatch_functions_end)) diff --git a/src/mapi/glapi/glapitable.h b/src/mapi/glapi/glapitable.h index bc6f25f9d18..fe27e566fae 100644 --- a/src/mapi/glapi/glapitable.h +++ b/src/mapi/glapi/glapitable.h @@ -612,326 +612,327 @@ struct _glapi_table void (GLAPIENTRYP GetActiveAttribARB)(GLhandleARB program, GLuint index, GLsizei bufSize, GLsizei * length, GLint * size, GLenum * type, GLcharARB * name); /* 569 */ GLint (GLAPIENTRYP GetAttribLocationARB)(GLhandleARB program, const GLcharARB * name); /* 570 */ void (GLAPIENTRYP DrawBuffersARB)(GLsizei n, const GLenum * bufs); /* 571 */ - void (GLAPIENTRYP DrawArraysInstancedARB)(GLenum mode, GLint first, GLsizei count, GLsizei primcount); /* 572 */ - void (GLAPIENTRYP DrawElementsInstancedARB)(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices, GLsizei primcount); /* 573 */ - void (GLAPIENTRYP RenderbufferStorageMultisample)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); /* 574 */ - void (GLAPIENTRYP FramebufferTextureARB)(GLenum target, GLenum attachment, GLuint texture, GLint level); /* 575 */ - void (GLAPIENTRYP FramebufferTextureFaceARB)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face); /* 576 */ - void (GLAPIENTRYP ProgramParameteriARB)(GLuint program, GLenum pname, GLint value); /* 577 */ - void (GLAPIENTRYP VertexAttribDivisorARB)(GLuint index, GLuint divisor); /* 578 */ - void (GLAPIENTRYP FlushMappedBufferRange)(GLenum target, GLintptr offset, GLsizeiptr length); /* 579 */ - GLvoid * (GLAPIENTRYP MapBufferRange)(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access); /* 580 */ - void (GLAPIENTRYP BindVertexArray)(GLuint array); /* 581 */ - void (GLAPIENTRYP GenVertexArrays)(GLsizei n, GLuint * arrays); /* 582 */ - void (GLAPIENTRYP CopyBufferSubData)(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); /* 583 */ - GLenum (GLAPIENTRYP ClientWaitSync)(GLsync sync, GLbitfield flags, GLuint64 timeout); /* 584 */ - void (GLAPIENTRYP DeleteSync)(GLsync sync); /* 585 */ - GLsync (GLAPIENTRYP FenceSync)(GLenum condition, GLbitfield flags); /* 586 */ - void (GLAPIENTRYP GetInteger64v)(GLenum pname, GLint64 * params); /* 587 */ - void (GLAPIENTRYP GetSynciv)(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei * length, GLint * values); /* 588 */ - GLboolean (GLAPIENTRYP IsSync)(GLsync sync); /* 589 */ - void (GLAPIENTRYP WaitSync)(GLsync sync, GLbitfield flags, GLuint64 timeout); /* 590 */ - void (GLAPIENTRYP DrawElementsBaseVertex)(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices, GLint basevertex); /* 591 */ - void (GLAPIENTRYP DrawRangeElementsBaseVertex)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid * indices, GLint basevertex); /* 592 */ - void (GLAPIENTRYP MultiDrawElementsBaseVertex)(GLenum mode, const GLsizei * count, GLenum type, const GLvoid ** indices, GLsizei primcount, const GLint * basevertex); /* 593 */ - void (GLAPIENTRYP BlendEquationSeparateiARB)(GLuint buf, GLenum modeRGB, GLenum modeA); /* 594 */ - void (GLAPIENTRYP BlendEquationiARB)(GLuint buf, GLenum mode); /* 595 */ - void (GLAPIENTRYP BlendFuncSeparateiARB)(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcA, GLenum dstA); /* 596 */ - void (GLAPIENTRYP BlendFunciARB)(GLuint buf, GLenum src, GLenum dst); /* 597 */ - void (GLAPIENTRYP BindTransformFeedback)(GLenum target, GLuint id); /* 598 */ - void (GLAPIENTRYP DeleteTransformFeedbacks)(GLsizei n, const GLuint * ids); /* 599 */ - void (GLAPIENTRYP DrawTransformFeedback)(GLenum mode, GLuint id); /* 600 */ - void (GLAPIENTRYP GenTransformFeedbacks)(GLsizei n, GLuint * ids); /* 601 */ - GLboolean (GLAPIENTRYP IsTransformFeedback)(GLuint id); /* 602 */ - void (GLAPIENTRYP PauseTransformFeedback)(void); /* 603 */ - void (GLAPIENTRYP ResumeTransformFeedback)(void); /* 604 */ - void (GLAPIENTRYP ClearDepthf)(GLclampf depth); /* 605 */ - void (GLAPIENTRYP DepthRangef)(GLclampf zNear, GLclampf zFar); /* 606 */ - void (GLAPIENTRYP GetShaderPrecisionFormat)(GLenum shadertype, GLenum precisiontype, GLint * range, GLint * precision); /* 607 */ - void (GLAPIENTRYP ReleaseShaderCompiler)(void); /* 608 */ - void (GLAPIENTRYP ShaderBinary)(GLsizei n, const GLuint * shaders, GLenum binaryformat, const GLvoid * binary, GLsizei length); /* 609 */ - void (GLAPIENTRYP PolygonOffsetEXT)(GLfloat factor, GLfloat bias); /* 610 */ - void (GLAPIENTRYP GetPixelTexGenParameterfvSGIS)(GLenum pname, GLfloat * params); /* 611 */ - void (GLAPIENTRYP GetPixelTexGenParameterivSGIS)(GLenum pname, GLint * params); /* 612 */ - void (GLAPIENTRYP PixelTexGenParameterfSGIS)(GLenum pname, GLfloat param); /* 613 */ - void (GLAPIENTRYP PixelTexGenParameterfvSGIS)(GLenum pname, const GLfloat * params); /* 614 */ - void (GLAPIENTRYP PixelTexGenParameteriSGIS)(GLenum pname, GLint param); /* 615 */ - void (GLAPIENTRYP PixelTexGenParameterivSGIS)(GLenum pname, const GLint * params); /* 616 */ - void (GLAPIENTRYP SampleMaskSGIS)(GLclampf value, GLboolean invert); /* 617 */ - void (GLAPIENTRYP SamplePatternSGIS)(GLenum pattern); /* 618 */ - void (GLAPIENTRYP ColorPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 619 */ - void (GLAPIENTRYP EdgeFlagPointerEXT)(GLsizei stride, GLsizei count, const GLboolean * pointer); /* 620 */ - void (GLAPIENTRYP IndexPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 621 */ - void (GLAPIENTRYP NormalPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 622 */ - void (GLAPIENTRYP TexCoordPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 623 */ - void (GLAPIENTRYP VertexPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 624 */ - void (GLAPIENTRYP PointParameterfEXT)(GLenum pname, GLfloat param); /* 625 */ - void (GLAPIENTRYP PointParameterfvEXT)(GLenum pname, const GLfloat * params); /* 626 */ - void (GLAPIENTRYP LockArraysEXT)(GLint first, GLsizei count); /* 627 */ - void (GLAPIENTRYP UnlockArraysEXT)(void); /* 628 */ - void (GLAPIENTRYP SecondaryColor3bEXT)(GLbyte red, GLbyte green, GLbyte blue); /* 629 */ - void (GLAPIENTRYP SecondaryColor3bvEXT)(const GLbyte * v); /* 630 */ - void (GLAPIENTRYP SecondaryColor3dEXT)(GLdouble red, GLdouble green, GLdouble blue); /* 631 */ - void (GLAPIENTRYP SecondaryColor3dvEXT)(const GLdouble * v); /* 632 */ - void (GLAPIENTRYP SecondaryColor3fEXT)(GLfloat red, GLfloat green, GLfloat blue); /* 633 */ - void (GLAPIENTRYP SecondaryColor3fvEXT)(const GLfloat * v); /* 634 */ - void (GLAPIENTRYP SecondaryColor3iEXT)(GLint red, GLint green, GLint blue); /* 635 */ - void (GLAPIENTRYP SecondaryColor3ivEXT)(const GLint * v); /* 636 */ - void (GLAPIENTRYP SecondaryColor3sEXT)(GLshort red, GLshort green, GLshort blue); /* 637 */ - void (GLAPIENTRYP SecondaryColor3svEXT)(const GLshort * v); /* 638 */ - void (GLAPIENTRYP SecondaryColor3ubEXT)(GLubyte red, GLubyte green, GLubyte blue); /* 639 */ - void (GLAPIENTRYP SecondaryColor3ubvEXT)(const GLubyte * v); /* 640 */ - void (GLAPIENTRYP SecondaryColor3uiEXT)(GLuint red, GLuint green, GLuint blue); /* 641 */ - void (GLAPIENTRYP SecondaryColor3uivEXT)(const GLuint * v); /* 642 */ - void (GLAPIENTRYP SecondaryColor3usEXT)(GLushort red, GLushort green, GLushort blue); /* 643 */ - void (GLAPIENTRYP SecondaryColor3usvEXT)(const GLushort * v); /* 644 */ - void (GLAPIENTRYP SecondaryColorPointerEXT)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 645 */ - void (GLAPIENTRYP MultiDrawArraysEXT)(GLenum mode, const GLint * first, const GLsizei * count, GLsizei primcount); /* 646 */ - void (GLAPIENTRYP MultiDrawElementsEXT)(GLenum mode, const GLsizei * count, GLenum type, const GLvoid ** indices, GLsizei primcount); /* 647 */ - void (GLAPIENTRYP FogCoordPointerEXT)(GLenum type, GLsizei stride, const GLvoid * pointer); /* 648 */ - void (GLAPIENTRYP FogCoorddEXT)(GLdouble coord); /* 649 */ - void (GLAPIENTRYP FogCoorddvEXT)(const GLdouble * coord); /* 650 */ - void (GLAPIENTRYP FogCoordfEXT)(GLfloat coord); /* 651 */ - void (GLAPIENTRYP FogCoordfvEXT)(const GLfloat * coord); /* 652 */ - void (GLAPIENTRYP PixelTexGenSGIX)(GLenum mode); /* 653 */ - void (GLAPIENTRYP BlendFuncSeparateEXT)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); /* 654 */ - void (GLAPIENTRYP FlushVertexArrayRangeNV)(void); /* 655 */ - void (GLAPIENTRYP VertexArrayRangeNV)(GLsizei length, const GLvoid * pointer); /* 656 */ - void (GLAPIENTRYP CombinerInputNV)(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); /* 657 */ - void (GLAPIENTRYP CombinerOutputNV)(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum); /* 658 */ - void (GLAPIENTRYP CombinerParameterfNV)(GLenum pname, GLfloat param); /* 659 */ - void (GLAPIENTRYP CombinerParameterfvNV)(GLenum pname, const GLfloat * params); /* 660 */ - void (GLAPIENTRYP CombinerParameteriNV)(GLenum pname, GLint param); /* 661 */ - void (GLAPIENTRYP CombinerParameterivNV)(GLenum pname, const GLint * params); /* 662 */ - void (GLAPIENTRYP FinalCombinerInputNV)(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); /* 663 */ - void (GLAPIENTRYP GetCombinerInputParameterfvNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat * params); /* 664 */ - void (GLAPIENTRYP GetCombinerInputParameterivNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint * params); /* 665 */ - void (GLAPIENTRYP GetCombinerOutputParameterfvNV)(GLenum stage, GLenum portion, GLenum pname, GLfloat * params); /* 666 */ - void (GLAPIENTRYP GetCombinerOutputParameterivNV)(GLenum stage, GLenum portion, GLenum pname, GLint * params); /* 667 */ - void (GLAPIENTRYP GetFinalCombinerInputParameterfvNV)(GLenum variable, GLenum pname, GLfloat * params); /* 668 */ - void (GLAPIENTRYP GetFinalCombinerInputParameterivNV)(GLenum variable, GLenum pname, GLint * params); /* 669 */ - void (GLAPIENTRYP ResizeBuffersMESA)(void); /* 670 */ - void (GLAPIENTRYP WindowPos2dMESA)(GLdouble x, GLdouble y); /* 671 */ - void (GLAPIENTRYP WindowPos2dvMESA)(const GLdouble * v); /* 672 */ - void (GLAPIENTRYP WindowPos2fMESA)(GLfloat x, GLfloat y); /* 673 */ - void (GLAPIENTRYP WindowPos2fvMESA)(const GLfloat * v); /* 674 */ - void (GLAPIENTRYP WindowPos2iMESA)(GLint x, GLint y); /* 675 */ - void (GLAPIENTRYP WindowPos2ivMESA)(const GLint * v); /* 676 */ - void (GLAPIENTRYP WindowPos2sMESA)(GLshort x, GLshort y); /* 677 */ - void (GLAPIENTRYP WindowPos2svMESA)(const GLshort * v); /* 678 */ - void (GLAPIENTRYP WindowPos3dMESA)(GLdouble x, GLdouble y, GLdouble z); /* 679 */ - void (GLAPIENTRYP WindowPos3dvMESA)(const GLdouble * v); /* 680 */ - void (GLAPIENTRYP WindowPos3fMESA)(GLfloat x, GLfloat y, GLfloat z); /* 681 */ - void (GLAPIENTRYP WindowPos3fvMESA)(const GLfloat * v); /* 682 */ - void (GLAPIENTRYP WindowPos3iMESA)(GLint x, GLint y, GLint z); /* 683 */ - void (GLAPIENTRYP WindowPos3ivMESA)(const GLint * v); /* 684 */ - void (GLAPIENTRYP WindowPos3sMESA)(GLshort x, GLshort y, GLshort z); /* 685 */ - void (GLAPIENTRYP WindowPos3svMESA)(const GLshort * v); /* 686 */ - void (GLAPIENTRYP WindowPos4dMESA)(GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 687 */ - void (GLAPIENTRYP WindowPos4dvMESA)(const GLdouble * v); /* 688 */ - void (GLAPIENTRYP WindowPos4fMESA)(GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 689 */ - void (GLAPIENTRYP WindowPos4fvMESA)(const GLfloat * v); /* 690 */ - void (GLAPIENTRYP WindowPos4iMESA)(GLint x, GLint y, GLint z, GLint w); /* 691 */ - void (GLAPIENTRYP WindowPos4ivMESA)(const GLint * v); /* 692 */ - void (GLAPIENTRYP WindowPos4sMESA)(GLshort x, GLshort y, GLshort z, GLshort w); /* 693 */ - void (GLAPIENTRYP WindowPos4svMESA)(const GLshort * v); /* 694 */ - void (GLAPIENTRYP MultiModeDrawArraysIBM)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); /* 695 */ - void (GLAPIENTRYP MultiModeDrawElementsIBM)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); /* 696 */ - void (GLAPIENTRYP DeleteFencesNV)(GLsizei n, const GLuint * fences); /* 697 */ - void (GLAPIENTRYP FinishFenceNV)(GLuint fence); /* 698 */ - void (GLAPIENTRYP GenFencesNV)(GLsizei n, GLuint * fences); /* 699 */ - void (GLAPIENTRYP GetFenceivNV)(GLuint fence, GLenum pname, GLint * params); /* 700 */ - GLboolean (GLAPIENTRYP IsFenceNV)(GLuint fence); /* 701 */ - void (GLAPIENTRYP SetFenceNV)(GLuint fence, GLenum condition); /* 702 */ - GLboolean (GLAPIENTRYP TestFenceNV)(GLuint fence); /* 703 */ - GLboolean (GLAPIENTRYP AreProgramsResidentNV)(GLsizei n, const GLuint * ids, GLboolean * residences); /* 704 */ - void (GLAPIENTRYP BindProgramNV)(GLenum target, GLuint program); /* 705 */ - void (GLAPIENTRYP DeleteProgramsNV)(GLsizei n, const GLuint * programs); /* 706 */ - void (GLAPIENTRYP ExecuteProgramNV)(GLenum target, GLuint id, const GLfloat * params); /* 707 */ - void (GLAPIENTRYP GenProgramsNV)(GLsizei n, GLuint * programs); /* 708 */ - void (GLAPIENTRYP GetProgramParameterdvNV)(GLenum target, GLuint index, GLenum pname, GLdouble * params); /* 709 */ - void (GLAPIENTRYP GetProgramParameterfvNV)(GLenum target, GLuint index, GLenum pname, GLfloat * params); /* 710 */ - void (GLAPIENTRYP GetProgramStringNV)(GLuint id, GLenum pname, GLubyte * program); /* 711 */ - void (GLAPIENTRYP GetProgramivNV)(GLuint id, GLenum pname, GLint * params); /* 712 */ - void (GLAPIENTRYP GetTrackMatrixivNV)(GLenum target, GLuint address, GLenum pname, GLint * params); /* 713 */ - void (GLAPIENTRYP GetVertexAttribPointervNV)(GLuint index, GLenum pname, GLvoid ** pointer); /* 714 */ - void (GLAPIENTRYP GetVertexAttribdvNV)(GLuint index, GLenum pname, GLdouble * params); /* 715 */ - void (GLAPIENTRYP GetVertexAttribfvNV)(GLuint index, GLenum pname, GLfloat * params); /* 716 */ - void (GLAPIENTRYP GetVertexAttribivNV)(GLuint index, GLenum pname, GLint * params); /* 717 */ - GLboolean (GLAPIENTRYP IsProgramNV)(GLuint program); /* 718 */ - void (GLAPIENTRYP LoadProgramNV)(GLenum target, GLuint id, GLsizei len, const GLubyte * program); /* 719 */ - void (GLAPIENTRYP ProgramParameters4dvNV)(GLenum target, GLuint index, GLsizei num, const GLdouble * params); /* 720 */ - void (GLAPIENTRYP ProgramParameters4fvNV)(GLenum target, GLuint index, GLsizei num, const GLfloat * params); /* 721 */ - void (GLAPIENTRYP RequestResidentProgramsNV)(GLsizei n, const GLuint * ids); /* 722 */ - void (GLAPIENTRYP TrackMatrixNV)(GLenum target, GLuint address, GLenum matrix, GLenum transform); /* 723 */ - void (GLAPIENTRYP VertexAttrib1dNV)(GLuint index, GLdouble x); /* 724 */ - void (GLAPIENTRYP VertexAttrib1dvNV)(GLuint index, const GLdouble * v); /* 725 */ - void (GLAPIENTRYP VertexAttrib1fNV)(GLuint index, GLfloat x); /* 726 */ - void (GLAPIENTRYP VertexAttrib1fvNV)(GLuint index, const GLfloat * v); /* 727 */ - void (GLAPIENTRYP VertexAttrib1sNV)(GLuint index, GLshort x); /* 728 */ - void (GLAPIENTRYP VertexAttrib1svNV)(GLuint index, const GLshort * v); /* 729 */ - void (GLAPIENTRYP VertexAttrib2dNV)(GLuint index, GLdouble x, GLdouble y); /* 730 */ - void (GLAPIENTRYP VertexAttrib2dvNV)(GLuint index, const GLdouble * v); /* 731 */ - void (GLAPIENTRYP VertexAttrib2fNV)(GLuint index, GLfloat x, GLfloat y); /* 732 */ - void (GLAPIENTRYP VertexAttrib2fvNV)(GLuint index, const GLfloat * v); /* 733 */ - void (GLAPIENTRYP VertexAttrib2sNV)(GLuint index, GLshort x, GLshort y); /* 734 */ - void (GLAPIENTRYP VertexAttrib2svNV)(GLuint index, const GLshort * v); /* 735 */ - void (GLAPIENTRYP VertexAttrib3dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z); /* 736 */ - void (GLAPIENTRYP VertexAttrib3dvNV)(GLuint index, const GLdouble * v); /* 737 */ - void (GLAPIENTRYP VertexAttrib3fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z); /* 738 */ - void (GLAPIENTRYP VertexAttrib3fvNV)(GLuint index, const GLfloat * v); /* 739 */ - void (GLAPIENTRYP VertexAttrib3sNV)(GLuint index, GLshort x, GLshort y, GLshort z); /* 740 */ - void (GLAPIENTRYP VertexAttrib3svNV)(GLuint index, const GLshort * v); /* 741 */ - void (GLAPIENTRYP VertexAttrib4dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 742 */ - void (GLAPIENTRYP VertexAttrib4dvNV)(GLuint index, const GLdouble * v); /* 743 */ - void (GLAPIENTRYP VertexAttrib4fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 744 */ - void (GLAPIENTRYP VertexAttrib4fvNV)(GLuint index, const GLfloat * v); /* 745 */ - void (GLAPIENTRYP VertexAttrib4sNV)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); /* 746 */ - void (GLAPIENTRYP VertexAttrib4svNV)(GLuint index, const GLshort * v); /* 747 */ - void (GLAPIENTRYP VertexAttrib4ubNV)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); /* 748 */ - void (GLAPIENTRYP VertexAttrib4ubvNV)(GLuint index, const GLubyte * v); /* 749 */ - void (GLAPIENTRYP VertexAttribPointerNV)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 750 */ - void (GLAPIENTRYP VertexAttribs1dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 751 */ - void (GLAPIENTRYP VertexAttribs1fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 752 */ - void (GLAPIENTRYP VertexAttribs1svNV)(GLuint index, GLsizei n, const GLshort * v); /* 753 */ - void (GLAPIENTRYP VertexAttribs2dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 754 */ - void (GLAPIENTRYP VertexAttribs2fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 755 */ - void (GLAPIENTRYP VertexAttribs2svNV)(GLuint index, GLsizei n, const GLshort * v); /* 756 */ - void (GLAPIENTRYP VertexAttribs3dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 757 */ - void (GLAPIENTRYP VertexAttribs3fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 758 */ - void (GLAPIENTRYP VertexAttribs3svNV)(GLuint index, GLsizei n, const GLshort * v); /* 759 */ - void (GLAPIENTRYP VertexAttribs4dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 760 */ - void (GLAPIENTRYP VertexAttribs4fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 761 */ - void (GLAPIENTRYP VertexAttribs4svNV)(GLuint index, GLsizei n, const GLshort * v); /* 762 */ - void (GLAPIENTRYP VertexAttribs4ubvNV)(GLuint index, GLsizei n, const GLubyte * v); /* 763 */ - void (GLAPIENTRYP GetTexBumpParameterfvATI)(GLenum pname, GLfloat * param); /* 764 */ - void (GLAPIENTRYP GetTexBumpParameterivATI)(GLenum pname, GLint * param); /* 765 */ - void (GLAPIENTRYP TexBumpParameterfvATI)(GLenum pname, const GLfloat * param); /* 766 */ - void (GLAPIENTRYP TexBumpParameterivATI)(GLenum pname, const GLint * param); /* 767 */ - void (GLAPIENTRYP AlphaFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); /* 768 */ - void (GLAPIENTRYP AlphaFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); /* 769 */ - void (GLAPIENTRYP AlphaFragmentOp3ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); /* 770 */ - void (GLAPIENTRYP BeginFragmentShaderATI)(void); /* 771 */ - void (GLAPIENTRYP BindFragmentShaderATI)(GLuint id); /* 772 */ - void (GLAPIENTRYP ColorFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); /* 773 */ - void (GLAPIENTRYP ColorFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); /* 774 */ - void (GLAPIENTRYP ColorFragmentOp3ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); /* 775 */ - void (GLAPIENTRYP DeleteFragmentShaderATI)(GLuint id); /* 776 */ - void (GLAPIENTRYP EndFragmentShaderATI)(void); /* 777 */ - GLuint (GLAPIENTRYP GenFragmentShadersATI)(GLuint range); /* 778 */ - void (GLAPIENTRYP PassTexCoordATI)(GLuint dst, GLuint coord, GLenum swizzle); /* 779 */ - void (GLAPIENTRYP SampleMapATI)(GLuint dst, GLuint interp, GLenum swizzle); /* 780 */ - void (GLAPIENTRYP SetFragmentShaderConstantATI)(GLuint dst, const GLfloat * value); /* 781 */ - void (GLAPIENTRYP PointParameteriNV)(GLenum pname, GLint param); /* 782 */ - void (GLAPIENTRYP PointParameterivNV)(GLenum pname, const GLint * params); /* 783 */ - void (GLAPIENTRYP ActiveStencilFaceEXT)(GLenum face); /* 784 */ - void (GLAPIENTRYP BindVertexArrayAPPLE)(GLuint array); /* 785 */ - void (GLAPIENTRYP DeleteVertexArraysAPPLE)(GLsizei n, const GLuint * arrays); /* 786 */ - void (GLAPIENTRYP GenVertexArraysAPPLE)(GLsizei n, GLuint * arrays); /* 787 */ - GLboolean (GLAPIENTRYP IsVertexArrayAPPLE)(GLuint array); /* 788 */ - void (GLAPIENTRYP GetProgramNamedParameterdvNV)(GLuint id, GLsizei len, const GLubyte * name, GLdouble * params); /* 789 */ - void (GLAPIENTRYP GetProgramNamedParameterfvNV)(GLuint id, GLsizei len, const GLubyte * name, GLfloat * params); /* 790 */ - void (GLAPIENTRYP ProgramNamedParameter4dNV)(GLuint id, GLsizei len, const GLubyte * name, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 791 */ - void (GLAPIENTRYP ProgramNamedParameter4dvNV)(GLuint id, GLsizei len, const GLubyte * name, const GLdouble * v); /* 792 */ - void (GLAPIENTRYP ProgramNamedParameter4fNV)(GLuint id, GLsizei len, const GLubyte * name, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 793 */ - void (GLAPIENTRYP ProgramNamedParameter4fvNV)(GLuint id, GLsizei len, const GLubyte * name, const GLfloat * v); /* 794 */ - void (GLAPIENTRYP PrimitiveRestartIndexNV)(GLuint index); /* 795 */ - void (GLAPIENTRYP PrimitiveRestartNV)(void); /* 796 */ - void (GLAPIENTRYP DepthBoundsEXT)(GLclampd zmin, GLclampd zmax); /* 797 */ - void (GLAPIENTRYP BlendEquationSeparateEXT)(GLenum modeRGB, GLenum modeA); /* 798 */ - void (GLAPIENTRYP BindFramebufferEXT)(GLenum target, GLuint framebuffer); /* 799 */ - void (GLAPIENTRYP BindRenderbufferEXT)(GLenum target, GLuint renderbuffer); /* 800 */ - GLenum (GLAPIENTRYP CheckFramebufferStatusEXT)(GLenum target); /* 801 */ - void (GLAPIENTRYP DeleteFramebuffersEXT)(GLsizei n, const GLuint * framebuffers); /* 802 */ - void (GLAPIENTRYP DeleteRenderbuffersEXT)(GLsizei n, const GLuint * renderbuffers); /* 803 */ - void (GLAPIENTRYP FramebufferRenderbufferEXT)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); /* 804 */ - void (GLAPIENTRYP FramebufferTexture1DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); /* 805 */ - void (GLAPIENTRYP FramebufferTexture2DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); /* 806 */ - void (GLAPIENTRYP FramebufferTexture3DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); /* 807 */ - void (GLAPIENTRYP GenFramebuffersEXT)(GLsizei n, GLuint * framebuffers); /* 808 */ - void (GLAPIENTRYP GenRenderbuffersEXT)(GLsizei n, GLuint * renderbuffers); /* 809 */ - void (GLAPIENTRYP GenerateMipmapEXT)(GLenum target); /* 810 */ - void (GLAPIENTRYP GetFramebufferAttachmentParameterivEXT)(GLenum target, GLenum attachment, GLenum pname, GLint * params); /* 811 */ - void (GLAPIENTRYP GetRenderbufferParameterivEXT)(GLenum target, GLenum pname, GLint * params); /* 812 */ - GLboolean (GLAPIENTRYP IsFramebufferEXT)(GLuint framebuffer); /* 813 */ - GLboolean (GLAPIENTRYP IsRenderbufferEXT)(GLuint renderbuffer); /* 814 */ - void (GLAPIENTRYP RenderbufferStorageEXT)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height); /* 815 */ - void (GLAPIENTRYP BlitFramebufferEXT)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); /* 816 */ - void (GLAPIENTRYP BufferParameteriAPPLE)(GLenum target, GLenum pname, GLint param); /* 817 */ - void (GLAPIENTRYP FlushMappedBufferRangeAPPLE)(GLenum target, GLintptr offset, GLsizeiptr size); /* 818 */ - void (GLAPIENTRYP BindFragDataLocationEXT)(GLuint program, GLuint colorNumber, const GLchar * name); /* 819 */ - GLint (GLAPIENTRYP GetFragDataLocationEXT)(GLuint program, const GLchar * name); /* 820 */ - void (GLAPIENTRYP GetUniformuivEXT)(GLuint program, GLint location, GLuint * params); /* 821 */ - void (GLAPIENTRYP GetVertexAttribIivEXT)(GLuint index, GLenum pname, GLint * params); /* 822 */ - void (GLAPIENTRYP GetVertexAttribIuivEXT)(GLuint index, GLenum pname, GLuint * params); /* 823 */ - void (GLAPIENTRYP Uniform1uiEXT)(GLint location, GLuint x); /* 824 */ - void (GLAPIENTRYP Uniform1uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 825 */ - void (GLAPIENTRYP Uniform2uiEXT)(GLint location, GLuint x, GLuint y); /* 826 */ - void (GLAPIENTRYP Uniform2uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 827 */ - void (GLAPIENTRYP Uniform3uiEXT)(GLint location, GLuint x, GLuint y, GLuint z); /* 828 */ - void (GLAPIENTRYP Uniform3uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 829 */ - void (GLAPIENTRYP Uniform4uiEXT)(GLint location, GLuint x, GLuint y, GLuint z, GLuint w); /* 830 */ - void (GLAPIENTRYP Uniform4uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 831 */ - void (GLAPIENTRYP VertexAttribI1iEXT)(GLuint index, GLint x); /* 832 */ - void (GLAPIENTRYP VertexAttribI1ivEXT)(GLuint index, const GLint * v); /* 833 */ - void (GLAPIENTRYP VertexAttribI1uiEXT)(GLuint index, GLuint x); /* 834 */ - void (GLAPIENTRYP VertexAttribI1uivEXT)(GLuint index, const GLuint * v); /* 835 */ - void (GLAPIENTRYP VertexAttribI2iEXT)(GLuint index, GLint x, GLint y); /* 836 */ - void (GLAPIENTRYP VertexAttribI2ivEXT)(GLuint index, const GLint * v); /* 837 */ - void (GLAPIENTRYP VertexAttribI2uiEXT)(GLuint index, GLuint x, GLuint y); /* 838 */ - void (GLAPIENTRYP VertexAttribI2uivEXT)(GLuint index, const GLuint * v); /* 839 */ - void (GLAPIENTRYP VertexAttribI3iEXT)(GLuint index, GLint x, GLint y, GLint z); /* 840 */ - void (GLAPIENTRYP VertexAttribI3ivEXT)(GLuint index, const GLint * v); /* 841 */ - void (GLAPIENTRYP VertexAttribI3uiEXT)(GLuint index, GLuint x, GLuint y, GLuint z); /* 842 */ - void (GLAPIENTRYP VertexAttribI3uivEXT)(GLuint index, const GLuint * v); /* 843 */ - void (GLAPIENTRYP VertexAttribI4bvEXT)(GLuint index, const GLbyte * v); /* 844 */ - void (GLAPIENTRYP VertexAttribI4iEXT)(GLuint index, GLint x, GLint y, GLint z, GLint w); /* 845 */ - void (GLAPIENTRYP VertexAttribI4ivEXT)(GLuint index, const GLint * v); /* 846 */ - void (GLAPIENTRYP VertexAttribI4svEXT)(GLuint index, const GLshort * v); /* 847 */ - void (GLAPIENTRYP VertexAttribI4ubvEXT)(GLuint index, const GLubyte * v); /* 848 */ - void (GLAPIENTRYP VertexAttribI4uiEXT)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w); /* 849 */ - void (GLAPIENTRYP VertexAttribI4uivEXT)(GLuint index, const GLuint * v); /* 850 */ - void (GLAPIENTRYP VertexAttribI4usvEXT)(GLuint index, const GLushort * v); /* 851 */ - void (GLAPIENTRYP VertexAttribIPointerEXT)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 852 */ - void (GLAPIENTRYP FramebufferTextureLayerEXT)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer); /* 853 */ - void (GLAPIENTRYP ColorMaskIndexedEXT)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a); /* 854 */ - void (GLAPIENTRYP DisableIndexedEXT)(GLenum target, GLuint index); /* 855 */ - void (GLAPIENTRYP EnableIndexedEXT)(GLenum target, GLuint index); /* 856 */ - void (GLAPIENTRYP GetBooleanIndexedvEXT)(GLenum value, GLuint index, GLboolean * data); /* 857 */ - void (GLAPIENTRYP GetIntegerIndexedvEXT)(GLenum value, GLuint index, GLint * data); /* 858 */ - GLboolean (GLAPIENTRYP IsEnabledIndexedEXT)(GLenum target, GLuint index); /* 859 */ - void (GLAPIENTRYP ClearColorIiEXT)(GLint r, GLint g, GLint b, GLint a); /* 860 */ - void (GLAPIENTRYP ClearColorIuiEXT)(GLuint r, GLuint g, GLuint b, GLuint a); /* 861 */ - void (GLAPIENTRYP GetTexParameterIivEXT)(GLenum target, GLenum pname, GLint * params); /* 862 */ - void (GLAPIENTRYP GetTexParameterIuivEXT)(GLenum target, GLenum pname, GLuint * params); /* 863 */ - void (GLAPIENTRYP TexParameterIivEXT)(GLenum target, GLenum pname, const GLint * params); /* 864 */ - void (GLAPIENTRYP TexParameterIuivEXT)(GLenum target, GLenum pname, const GLuint * params); /* 865 */ - void (GLAPIENTRYP BeginConditionalRenderNV)(GLuint query, GLenum mode); /* 866 */ - void (GLAPIENTRYP EndConditionalRenderNV)(void); /* 867 */ - void (GLAPIENTRYP BeginTransformFeedbackEXT)(GLenum mode); /* 868 */ - void (GLAPIENTRYP BindBufferBaseEXT)(GLenum target, GLuint index, GLuint buffer); /* 869 */ - void (GLAPIENTRYP BindBufferOffsetEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset); /* 870 */ - void (GLAPIENTRYP BindBufferRangeEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size); /* 871 */ - void (GLAPIENTRYP EndTransformFeedbackEXT)(void); /* 872 */ - void (GLAPIENTRYP GetTransformFeedbackVaryingEXT)(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLsizei * size, GLenum * type, GLchar * name); /* 873 */ - void (GLAPIENTRYP TransformFeedbackVaryingsEXT)(GLuint program, GLsizei count, const char ** varyings, GLenum bufferMode); /* 874 */ - void (GLAPIENTRYP ProvokingVertexEXT)(GLenum mode); /* 875 */ - void (GLAPIENTRYP GetTexParameterPointervAPPLE)(GLenum target, GLenum pname, GLvoid ** params); /* 876 */ - void (GLAPIENTRYP TextureRangeAPPLE)(GLenum target, GLsizei length, GLvoid * pointer); /* 877 */ - void (GLAPIENTRYP GetObjectParameterivAPPLE)(GLenum objectType, GLuint name, GLenum pname, GLint * value); /* 878 */ - GLenum (GLAPIENTRYP ObjectPurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); /* 879 */ - GLenum (GLAPIENTRYP ObjectUnpurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); /* 880 */ - void (GLAPIENTRYP ActiveProgramEXT)(GLuint program); /* 881 */ - GLuint (GLAPIENTRYP CreateShaderProgramEXT)(GLenum type, const GLchar * string); /* 882 */ - void (GLAPIENTRYP UseShaderProgramEXT)(GLenum type, GLuint program); /* 883 */ - void (GLAPIENTRYP TextureBarrierNV)(void); /* 884 */ - void (GLAPIENTRYP StencilFuncSeparateATI)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); /* 885 */ - void (GLAPIENTRYP ProgramEnvParameters4fvEXT)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); /* 886 */ - void (GLAPIENTRYP ProgramLocalParameters4fvEXT)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); /* 887 */ - void (GLAPIENTRYP GetQueryObjecti64vEXT)(GLuint id, GLenum pname, GLint64EXT * params); /* 888 */ - void (GLAPIENTRYP GetQueryObjectui64vEXT)(GLuint id, GLenum pname, GLuint64EXT * params); /* 889 */ - void (GLAPIENTRYP EGLImageTargetRenderbufferStorageOES)(GLenum target, GLvoid * writeOffset); /* 890 */ - void (GLAPIENTRYP EGLImageTargetTexture2DOES)(GLenum target, GLvoid * writeOffset); /* 891 */ + void (GLAPIENTRYP ClampColorARB)(GLenum target, GLenum clamp); /* 572 */ + void (GLAPIENTRYP DrawArraysInstancedARB)(GLenum mode, GLint first, GLsizei count, GLsizei primcount); /* 573 */ + void (GLAPIENTRYP DrawElementsInstancedARB)(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices, GLsizei primcount); /* 574 */ + void (GLAPIENTRYP RenderbufferStorageMultisample)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); /* 575 */ + void (GLAPIENTRYP FramebufferTextureARB)(GLenum target, GLenum attachment, GLuint texture, GLint level); /* 576 */ + void (GLAPIENTRYP FramebufferTextureFaceARB)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face); /* 577 */ + void (GLAPIENTRYP ProgramParameteriARB)(GLuint program, GLenum pname, GLint value); /* 578 */ + void (GLAPIENTRYP VertexAttribDivisorARB)(GLuint index, GLuint divisor); /* 579 */ + void (GLAPIENTRYP FlushMappedBufferRange)(GLenum target, GLintptr offset, GLsizeiptr length); /* 580 */ + GLvoid * (GLAPIENTRYP MapBufferRange)(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access); /* 581 */ + void (GLAPIENTRYP BindVertexArray)(GLuint array); /* 582 */ + void (GLAPIENTRYP GenVertexArrays)(GLsizei n, GLuint * arrays); /* 583 */ + void (GLAPIENTRYP CopyBufferSubData)(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); /* 584 */ + GLenum (GLAPIENTRYP ClientWaitSync)(GLsync sync, GLbitfield flags, GLuint64 timeout); /* 585 */ + void (GLAPIENTRYP DeleteSync)(GLsync sync); /* 586 */ + GLsync (GLAPIENTRYP FenceSync)(GLenum condition, GLbitfield flags); /* 587 */ + void (GLAPIENTRYP GetInteger64v)(GLenum pname, GLint64 * params); /* 588 */ + void (GLAPIENTRYP GetSynciv)(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei * length, GLint * values); /* 589 */ + GLboolean (GLAPIENTRYP IsSync)(GLsync sync); /* 590 */ + void (GLAPIENTRYP WaitSync)(GLsync sync, GLbitfield flags, GLuint64 timeout); /* 591 */ + void (GLAPIENTRYP DrawElementsBaseVertex)(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices, GLint basevertex); /* 592 */ + void (GLAPIENTRYP DrawRangeElementsBaseVertex)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid * indices, GLint basevertex); /* 593 */ + void (GLAPIENTRYP MultiDrawElementsBaseVertex)(GLenum mode, const GLsizei * count, GLenum type, const GLvoid ** indices, GLsizei primcount, const GLint * basevertex); /* 594 */ + void (GLAPIENTRYP BlendEquationSeparateiARB)(GLuint buf, GLenum modeRGB, GLenum modeA); /* 595 */ + void (GLAPIENTRYP BlendEquationiARB)(GLuint buf, GLenum mode); /* 596 */ + void (GLAPIENTRYP BlendFuncSeparateiARB)(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcA, GLenum dstA); /* 597 */ + void (GLAPIENTRYP BlendFunciARB)(GLuint buf, GLenum src, GLenum dst); /* 598 */ + void (GLAPIENTRYP BindTransformFeedback)(GLenum target, GLuint id); /* 599 */ + void (GLAPIENTRYP DeleteTransformFeedbacks)(GLsizei n, const GLuint * ids); /* 600 */ + void (GLAPIENTRYP DrawTransformFeedback)(GLenum mode, GLuint id); /* 601 */ + void (GLAPIENTRYP GenTransformFeedbacks)(GLsizei n, GLuint * ids); /* 602 */ + GLboolean (GLAPIENTRYP IsTransformFeedback)(GLuint id); /* 603 */ + void (GLAPIENTRYP PauseTransformFeedback)(void); /* 604 */ + void (GLAPIENTRYP ResumeTransformFeedback)(void); /* 605 */ + void (GLAPIENTRYP ClearDepthf)(GLclampf depth); /* 606 */ + void (GLAPIENTRYP DepthRangef)(GLclampf zNear, GLclampf zFar); /* 607 */ + void (GLAPIENTRYP GetShaderPrecisionFormat)(GLenum shadertype, GLenum precisiontype, GLint * range, GLint * precision); /* 608 */ + void (GLAPIENTRYP ReleaseShaderCompiler)(void); /* 609 */ + void (GLAPIENTRYP ShaderBinary)(GLsizei n, const GLuint * shaders, GLenum binaryformat, const GLvoid * binary, GLsizei length); /* 610 */ + void (GLAPIENTRYP PolygonOffsetEXT)(GLfloat factor, GLfloat bias); /* 611 */ + void (GLAPIENTRYP GetPixelTexGenParameterfvSGIS)(GLenum pname, GLfloat * params); /* 612 */ + void (GLAPIENTRYP GetPixelTexGenParameterivSGIS)(GLenum pname, GLint * params); /* 613 */ + void (GLAPIENTRYP PixelTexGenParameterfSGIS)(GLenum pname, GLfloat param); /* 614 */ + void (GLAPIENTRYP PixelTexGenParameterfvSGIS)(GLenum pname, const GLfloat * params); /* 615 */ + void (GLAPIENTRYP PixelTexGenParameteriSGIS)(GLenum pname, GLint param); /* 616 */ + void (GLAPIENTRYP PixelTexGenParameterivSGIS)(GLenum pname, const GLint * params); /* 617 */ + void (GLAPIENTRYP SampleMaskSGIS)(GLclampf value, GLboolean invert); /* 618 */ + void (GLAPIENTRYP SamplePatternSGIS)(GLenum pattern); /* 619 */ + void (GLAPIENTRYP ColorPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 620 */ + void (GLAPIENTRYP EdgeFlagPointerEXT)(GLsizei stride, GLsizei count, const GLboolean * pointer); /* 621 */ + void (GLAPIENTRYP IndexPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 622 */ + void (GLAPIENTRYP NormalPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 623 */ + void (GLAPIENTRYP TexCoordPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 624 */ + void (GLAPIENTRYP VertexPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 625 */ + void (GLAPIENTRYP PointParameterfEXT)(GLenum pname, GLfloat param); /* 626 */ + void (GLAPIENTRYP PointParameterfvEXT)(GLenum pname, const GLfloat * params); /* 627 */ + void (GLAPIENTRYP LockArraysEXT)(GLint first, GLsizei count); /* 628 */ + void (GLAPIENTRYP UnlockArraysEXT)(void); /* 629 */ + void (GLAPIENTRYP SecondaryColor3bEXT)(GLbyte red, GLbyte green, GLbyte blue); /* 630 */ + void (GLAPIENTRYP SecondaryColor3bvEXT)(const GLbyte * v); /* 631 */ + void (GLAPIENTRYP SecondaryColor3dEXT)(GLdouble red, GLdouble green, GLdouble blue); /* 632 */ + void (GLAPIENTRYP SecondaryColor3dvEXT)(const GLdouble * v); /* 633 */ + void (GLAPIENTRYP SecondaryColor3fEXT)(GLfloat red, GLfloat green, GLfloat blue); /* 634 */ + void (GLAPIENTRYP SecondaryColor3fvEXT)(const GLfloat * v); /* 635 */ + void (GLAPIENTRYP SecondaryColor3iEXT)(GLint red, GLint green, GLint blue); /* 636 */ + void (GLAPIENTRYP SecondaryColor3ivEXT)(const GLint * v); /* 637 */ + void (GLAPIENTRYP SecondaryColor3sEXT)(GLshort red, GLshort green, GLshort blue); /* 638 */ + void (GLAPIENTRYP SecondaryColor3svEXT)(const GLshort * v); /* 639 */ + void (GLAPIENTRYP SecondaryColor3ubEXT)(GLubyte red, GLubyte green, GLubyte blue); /* 640 */ + void (GLAPIENTRYP SecondaryColor3ubvEXT)(const GLubyte * v); /* 641 */ + void (GLAPIENTRYP SecondaryColor3uiEXT)(GLuint red, GLuint green, GLuint blue); /* 642 */ + void (GLAPIENTRYP SecondaryColor3uivEXT)(const GLuint * v); /* 643 */ + void (GLAPIENTRYP SecondaryColor3usEXT)(GLushort red, GLushort green, GLushort blue); /* 644 */ + void (GLAPIENTRYP SecondaryColor3usvEXT)(const GLushort * v); /* 645 */ + void (GLAPIENTRYP SecondaryColorPointerEXT)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 646 */ + void (GLAPIENTRYP MultiDrawArraysEXT)(GLenum mode, const GLint * first, const GLsizei * count, GLsizei primcount); /* 647 */ + void (GLAPIENTRYP MultiDrawElementsEXT)(GLenum mode, const GLsizei * count, GLenum type, const GLvoid ** indices, GLsizei primcount); /* 648 */ + void (GLAPIENTRYP FogCoordPointerEXT)(GLenum type, GLsizei stride, const GLvoid * pointer); /* 649 */ + void (GLAPIENTRYP FogCoorddEXT)(GLdouble coord); /* 650 */ + void (GLAPIENTRYP FogCoorddvEXT)(const GLdouble * coord); /* 651 */ + void (GLAPIENTRYP FogCoordfEXT)(GLfloat coord); /* 652 */ + void (GLAPIENTRYP FogCoordfvEXT)(const GLfloat * coord); /* 653 */ + void (GLAPIENTRYP PixelTexGenSGIX)(GLenum mode); /* 654 */ + void (GLAPIENTRYP BlendFuncSeparateEXT)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); /* 655 */ + void (GLAPIENTRYP FlushVertexArrayRangeNV)(void); /* 656 */ + void (GLAPIENTRYP VertexArrayRangeNV)(GLsizei length, const GLvoid * pointer); /* 657 */ + void (GLAPIENTRYP CombinerInputNV)(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); /* 658 */ + void (GLAPIENTRYP CombinerOutputNV)(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum); /* 659 */ + void (GLAPIENTRYP CombinerParameterfNV)(GLenum pname, GLfloat param); /* 660 */ + void (GLAPIENTRYP CombinerParameterfvNV)(GLenum pname, const GLfloat * params); /* 661 */ + void (GLAPIENTRYP CombinerParameteriNV)(GLenum pname, GLint param); /* 662 */ + void (GLAPIENTRYP CombinerParameterivNV)(GLenum pname, const GLint * params); /* 663 */ + void (GLAPIENTRYP FinalCombinerInputNV)(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); /* 664 */ + void (GLAPIENTRYP GetCombinerInputParameterfvNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat * params); /* 665 */ + void (GLAPIENTRYP GetCombinerInputParameterivNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint * params); /* 666 */ + void (GLAPIENTRYP GetCombinerOutputParameterfvNV)(GLenum stage, GLenum portion, GLenum pname, GLfloat * params); /* 667 */ + void (GLAPIENTRYP GetCombinerOutputParameterivNV)(GLenum stage, GLenum portion, GLenum pname, GLint * params); /* 668 */ + void (GLAPIENTRYP GetFinalCombinerInputParameterfvNV)(GLenum variable, GLenum pname, GLfloat * params); /* 669 */ + void (GLAPIENTRYP GetFinalCombinerInputParameterivNV)(GLenum variable, GLenum pname, GLint * params); /* 670 */ + void (GLAPIENTRYP ResizeBuffersMESA)(void); /* 671 */ + void (GLAPIENTRYP WindowPos2dMESA)(GLdouble x, GLdouble y); /* 672 */ + void (GLAPIENTRYP WindowPos2dvMESA)(const GLdouble * v); /* 673 */ + void (GLAPIENTRYP WindowPos2fMESA)(GLfloat x, GLfloat y); /* 674 */ + void (GLAPIENTRYP WindowPos2fvMESA)(const GLfloat * v); /* 675 */ + void (GLAPIENTRYP WindowPos2iMESA)(GLint x, GLint y); /* 676 */ + void (GLAPIENTRYP WindowPos2ivMESA)(const GLint * v); /* 677 */ + void (GLAPIENTRYP WindowPos2sMESA)(GLshort x, GLshort y); /* 678 */ + void (GLAPIENTRYP WindowPos2svMESA)(const GLshort * v); /* 679 */ + void (GLAPIENTRYP WindowPos3dMESA)(GLdouble x, GLdouble y, GLdouble z); /* 680 */ + void (GLAPIENTRYP WindowPos3dvMESA)(const GLdouble * v); /* 681 */ + void (GLAPIENTRYP WindowPos3fMESA)(GLfloat x, GLfloat y, GLfloat z); /* 682 */ + void (GLAPIENTRYP WindowPos3fvMESA)(const GLfloat * v); /* 683 */ + void (GLAPIENTRYP WindowPos3iMESA)(GLint x, GLint y, GLint z); /* 684 */ + void (GLAPIENTRYP WindowPos3ivMESA)(const GLint * v); /* 685 */ + void (GLAPIENTRYP WindowPos3sMESA)(GLshort x, GLshort y, GLshort z); /* 686 */ + void (GLAPIENTRYP WindowPos3svMESA)(const GLshort * v); /* 687 */ + void (GLAPIENTRYP WindowPos4dMESA)(GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 688 */ + void (GLAPIENTRYP WindowPos4dvMESA)(const GLdouble * v); /* 689 */ + void (GLAPIENTRYP WindowPos4fMESA)(GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 690 */ + void (GLAPIENTRYP WindowPos4fvMESA)(const GLfloat * v); /* 691 */ + void (GLAPIENTRYP WindowPos4iMESA)(GLint x, GLint y, GLint z, GLint w); /* 692 */ + void (GLAPIENTRYP WindowPos4ivMESA)(const GLint * v); /* 693 */ + void (GLAPIENTRYP WindowPos4sMESA)(GLshort x, GLshort y, GLshort z, GLshort w); /* 694 */ + void (GLAPIENTRYP WindowPos4svMESA)(const GLshort * v); /* 695 */ + void (GLAPIENTRYP MultiModeDrawArraysIBM)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); /* 696 */ + void (GLAPIENTRYP MultiModeDrawElementsIBM)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); /* 697 */ + void (GLAPIENTRYP DeleteFencesNV)(GLsizei n, const GLuint * fences); /* 698 */ + void (GLAPIENTRYP FinishFenceNV)(GLuint fence); /* 699 */ + void (GLAPIENTRYP GenFencesNV)(GLsizei n, GLuint * fences); /* 700 */ + void (GLAPIENTRYP GetFenceivNV)(GLuint fence, GLenum pname, GLint * params); /* 701 */ + GLboolean (GLAPIENTRYP IsFenceNV)(GLuint fence); /* 702 */ + void (GLAPIENTRYP SetFenceNV)(GLuint fence, GLenum condition); /* 703 */ + GLboolean (GLAPIENTRYP TestFenceNV)(GLuint fence); /* 704 */ + GLboolean (GLAPIENTRYP AreProgramsResidentNV)(GLsizei n, const GLuint * ids, GLboolean * residences); /* 705 */ + void (GLAPIENTRYP BindProgramNV)(GLenum target, GLuint program); /* 706 */ + void (GLAPIENTRYP DeleteProgramsNV)(GLsizei n, const GLuint * programs); /* 707 */ + void (GLAPIENTRYP ExecuteProgramNV)(GLenum target, GLuint id, const GLfloat * params); /* 708 */ + void (GLAPIENTRYP GenProgramsNV)(GLsizei n, GLuint * programs); /* 709 */ + void (GLAPIENTRYP GetProgramParameterdvNV)(GLenum target, GLuint index, GLenum pname, GLdouble * params); /* 710 */ + void (GLAPIENTRYP GetProgramParameterfvNV)(GLenum target, GLuint index, GLenum pname, GLfloat * params); /* 711 */ + void (GLAPIENTRYP GetProgramStringNV)(GLuint id, GLenum pname, GLubyte * program); /* 712 */ + void (GLAPIENTRYP GetProgramivNV)(GLuint id, GLenum pname, GLint * params); /* 713 */ + void (GLAPIENTRYP GetTrackMatrixivNV)(GLenum target, GLuint address, GLenum pname, GLint * params); /* 714 */ + void (GLAPIENTRYP GetVertexAttribPointervNV)(GLuint index, GLenum pname, GLvoid ** pointer); /* 715 */ + void (GLAPIENTRYP GetVertexAttribdvNV)(GLuint index, GLenum pname, GLdouble * params); /* 716 */ + void (GLAPIENTRYP GetVertexAttribfvNV)(GLuint index, GLenum pname, GLfloat * params); /* 717 */ + void (GLAPIENTRYP GetVertexAttribivNV)(GLuint index, GLenum pname, GLint * params); /* 718 */ + GLboolean (GLAPIENTRYP IsProgramNV)(GLuint program); /* 719 */ + void (GLAPIENTRYP LoadProgramNV)(GLenum target, GLuint id, GLsizei len, const GLubyte * program); /* 720 */ + void (GLAPIENTRYP ProgramParameters4dvNV)(GLenum target, GLuint index, GLsizei num, const GLdouble * params); /* 721 */ + void (GLAPIENTRYP ProgramParameters4fvNV)(GLenum target, GLuint index, GLsizei num, const GLfloat * params); /* 722 */ + void (GLAPIENTRYP RequestResidentProgramsNV)(GLsizei n, const GLuint * ids); /* 723 */ + void (GLAPIENTRYP TrackMatrixNV)(GLenum target, GLuint address, GLenum matrix, GLenum transform); /* 724 */ + void (GLAPIENTRYP VertexAttrib1dNV)(GLuint index, GLdouble x); /* 725 */ + void (GLAPIENTRYP VertexAttrib1dvNV)(GLuint index, const GLdouble * v); /* 726 */ + void (GLAPIENTRYP VertexAttrib1fNV)(GLuint index, GLfloat x); /* 727 */ + void (GLAPIENTRYP VertexAttrib1fvNV)(GLuint index, const GLfloat * v); /* 728 */ + void (GLAPIENTRYP VertexAttrib1sNV)(GLuint index, GLshort x); /* 729 */ + void (GLAPIENTRYP VertexAttrib1svNV)(GLuint index, const GLshort * v); /* 730 */ + void (GLAPIENTRYP VertexAttrib2dNV)(GLuint index, GLdouble x, GLdouble y); /* 731 */ + void (GLAPIENTRYP VertexAttrib2dvNV)(GLuint index, const GLdouble * v); /* 732 */ + void (GLAPIENTRYP VertexAttrib2fNV)(GLuint index, GLfloat x, GLfloat y); /* 733 */ + void (GLAPIENTRYP VertexAttrib2fvNV)(GLuint index, const GLfloat * v); /* 734 */ + void (GLAPIENTRYP VertexAttrib2sNV)(GLuint index, GLshort x, GLshort y); /* 735 */ + void (GLAPIENTRYP VertexAttrib2svNV)(GLuint index, const GLshort * v); /* 736 */ + void (GLAPIENTRYP VertexAttrib3dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z); /* 737 */ + void (GLAPIENTRYP VertexAttrib3dvNV)(GLuint index, const GLdouble * v); /* 738 */ + void (GLAPIENTRYP VertexAttrib3fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z); /* 739 */ + void (GLAPIENTRYP VertexAttrib3fvNV)(GLuint index, const GLfloat * v); /* 740 */ + void (GLAPIENTRYP VertexAttrib3sNV)(GLuint index, GLshort x, GLshort y, GLshort z); /* 741 */ + void (GLAPIENTRYP VertexAttrib3svNV)(GLuint index, const GLshort * v); /* 742 */ + void (GLAPIENTRYP VertexAttrib4dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 743 */ + void (GLAPIENTRYP VertexAttrib4dvNV)(GLuint index, const GLdouble * v); /* 744 */ + void (GLAPIENTRYP VertexAttrib4fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 745 */ + void (GLAPIENTRYP VertexAttrib4fvNV)(GLuint index, const GLfloat * v); /* 746 */ + void (GLAPIENTRYP VertexAttrib4sNV)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); /* 747 */ + void (GLAPIENTRYP VertexAttrib4svNV)(GLuint index, const GLshort * v); /* 748 */ + void (GLAPIENTRYP VertexAttrib4ubNV)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); /* 749 */ + void (GLAPIENTRYP VertexAttrib4ubvNV)(GLuint index, const GLubyte * v); /* 750 */ + void (GLAPIENTRYP VertexAttribPointerNV)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 751 */ + void (GLAPIENTRYP VertexAttribs1dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 752 */ + void (GLAPIENTRYP VertexAttribs1fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 753 */ + void (GLAPIENTRYP VertexAttribs1svNV)(GLuint index, GLsizei n, const GLshort * v); /* 754 */ + void (GLAPIENTRYP VertexAttribs2dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 755 */ + void (GLAPIENTRYP VertexAttribs2fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 756 */ + void (GLAPIENTRYP VertexAttribs2svNV)(GLuint index, GLsizei n, const GLshort * v); /* 757 */ + void (GLAPIENTRYP VertexAttribs3dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 758 */ + void (GLAPIENTRYP VertexAttribs3fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 759 */ + void (GLAPIENTRYP VertexAttribs3svNV)(GLuint index, GLsizei n, const GLshort * v); /* 760 */ + void (GLAPIENTRYP VertexAttribs4dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 761 */ + void (GLAPIENTRYP VertexAttribs4fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 762 */ + void (GLAPIENTRYP VertexAttribs4svNV)(GLuint index, GLsizei n, const GLshort * v); /* 763 */ + void (GLAPIENTRYP VertexAttribs4ubvNV)(GLuint index, GLsizei n, const GLubyte * v); /* 764 */ + void (GLAPIENTRYP GetTexBumpParameterfvATI)(GLenum pname, GLfloat * param); /* 765 */ + void (GLAPIENTRYP GetTexBumpParameterivATI)(GLenum pname, GLint * param); /* 766 */ + void (GLAPIENTRYP TexBumpParameterfvATI)(GLenum pname, const GLfloat * param); /* 767 */ + void (GLAPIENTRYP TexBumpParameterivATI)(GLenum pname, const GLint * param); /* 768 */ + void (GLAPIENTRYP AlphaFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); /* 769 */ + void (GLAPIENTRYP AlphaFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); /* 770 */ + void (GLAPIENTRYP AlphaFragmentOp3ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); /* 771 */ + void (GLAPIENTRYP BeginFragmentShaderATI)(void); /* 772 */ + void (GLAPIENTRYP BindFragmentShaderATI)(GLuint id); /* 773 */ + void (GLAPIENTRYP ColorFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); /* 774 */ + void (GLAPIENTRYP ColorFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); /* 775 */ + void (GLAPIENTRYP ColorFragmentOp3ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); /* 776 */ + void (GLAPIENTRYP DeleteFragmentShaderATI)(GLuint id); /* 777 */ + void (GLAPIENTRYP EndFragmentShaderATI)(void); /* 778 */ + GLuint (GLAPIENTRYP GenFragmentShadersATI)(GLuint range); /* 779 */ + void (GLAPIENTRYP PassTexCoordATI)(GLuint dst, GLuint coord, GLenum swizzle); /* 780 */ + void (GLAPIENTRYP SampleMapATI)(GLuint dst, GLuint interp, GLenum swizzle); /* 781 */ + void (GLAPIENTRYP SetFragmentShaderConstantATI)(GLuint dst, const GLfloat * value); /* 782 */ + void (GLAPIENTRYP PointParameteriNV)(GLenum pname, GLint param); /* 783 */ + void (GLAPIENTRYP PointParameterivNV)(GLenum pname, const GLint * params); /* 784 */ + void (GLAPIENTRYP ActiveStencilFaceEXT)(GLenum face); /* 785 */ + void (GLAPIENTRYP BindVertexArrayAPPLE)(GLuint array); /* 786 */ + void (GLAPIENTRYP DeleteVertexArraysAPPLE)(GLsizei n, const GLuint * arrays); /* 787 */ + void (GLAPIENTRYP GenVertexArraysAPPLE)(GLsizei n, GLuint * arrays); /* 788 */ + GLboolean (GLAPIENTRYP IsVertexArrayAPPLE)(GLuint array); /* 789 */ + void (GLAPIENTRYP GetProgramNamedParameterdvNV)(GLuint id, GLsizei len, const GLubyte * name, GLdouble * params); /* 790 */ + void (GLAPIENTRYP GetProgramNamedParameterfvNV)(GLuint id, GLsizei len, const GLubyte * name, GLfloat * params); /* 791 */ + void (GLAPIENTRYP ProgramNamedParameter4dNV)(GLuint id, GLsizei len, const GLubyte * name, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 792 */ + void (GLAPIENTRYP ProgramNamedParameter4dvNV)(GLuint id, GLsizei len, const GLubyte * name, const GLdouble * v); /* 793 */ + void (GLAPIENTRYP ProgramNamedParameter4fNV)(GLuint id, GLsizei len, const GLubyte * name, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 794 */ + void (GLAPIENTRYP ProgramNamedParameter4fvNV)(GLuint id, GLsizei len, const GLubyte * name, const GLfloat * v); /* 795 */ + void (GLAPIENTRYP PrimitiveRestartIndexNV)(GLuint index); /* 796 */ + void (GLAPIENTRYP PrimitiveRestartNV)(void); /* 797 */ + void (GLAPIENTRYP DepthBoundsEXT)(GLclampd zmin, GLclampd zmax); /* 798 */ + void (GLAPIENTRYP BlendEquationSeparateEXT)(GLenum modeRGB, GLenum modeA); /* 799 */ + void (GLAPIENTRYP BindFramebufferEXT)(GLenum target, GLuint framebuffer); /* 800 */ + void (GLAPIENTRYP BindRenderbufferEXT)(GLenum target, GLuint renderbuffer); /* 801 */ + GLenum (GLAPIENTRYP CheckFramebufferStatusEXT)(GLenum target); /* 802 */ + void (GLAPIENTRYP DeleteFramebuffersEXT)(GLsizei n, const GLuint * framebuffers); /* 803 */ + void (GLAPIENTRYP DeleteRenderbuffersEXT)(GLsizei n, const GLuint * renderbuffers); /* 804 */ + void (GLAPIENTRYP FramebufferRenderbufferEXT)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); /* 805 */ + void (GLAPIENTRYP FramebufferTexture1DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); /* 806 */ + void (GLAPIENTRYP FramebufferTexture2DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); /* 807 */ + void (GLAPIENTRYP FramebufferTexture3DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); /* 808 */ + void (GLAPIENTRYP GenFramebuffersEXT)(GLsizei n, GLuint * framebuffers); /* 809 */ + void (GLAPIENTRYP GenRenderbuffersEXT)(GLsizei n, GLuint * renderbuffers); /* 810 */ + void (GLAPIENTRYP GenerateMipmapEXT)(GLenum target); /* 811 */ + void (GLAPIENTRYP GetFramebufferAttachmentParameterivEXT)(GLenum target, GLenum attachment, GLenum pname, GLint * params); /* 812 */ + void (GLAPIENTRYP GetRenderbufferParameterivEXT)(GLenum target, GLenum pname, GLint * params); /* 813 */ + GLboolean (GLAPIENTRYP IsFramebufferEXT)(GLuint framebuffer); /* 814 */ + GLboolean (GLAPIENTRYP IsRenderbufferEXT)(GLuint renderbuffer); /* 815 */ + void (GLAPIENTRYP RenderbufferStorageEXT)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height); /* 816 */ + void (GLAPIENTRYP BlitFramebufferEXT)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); /* 817 */ + void (GLAPIENTRYP BufferParameteriAPPLE)(GLenum target, GLenum pname, GLint param); /* 818 */ + void (GLAPIENTRYP FlushMappedBufferRangeAPPLE)(GLenum target, GLintptr offset, GLsizeiptr size); /* 819 */ + void (GLAPIENTRYP BindFragDataLocationEXT)(GLuint program, GLuint colorNumber, const GLchar * name); /* 820 */ + GLint (GLAPIENTRYP GetFragDataLocationEXT)(GLuint program, const GLchar * name); /* 821 */ + void (GLAPIENTRYP GetUniformuivEXT)(GLuint program, GLint location, GLuint * params); /* 822 */ + void (GLAPIENTRYP GetVertexAttribIivEXT)(GLuint index, GLenum pname, GLint * params); /* 823 */ + void (GLAPIENTRYP GetVertexAttribIuivEXT)(GLuint index, GLenum pname, GLuint * params); /* 824 */ + void (GLAPIENTRYP Uniform1uiEXT)(GLint location, GLuint x); /* 825 */ + void (GLAPIENTRYP Uniform1uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 826 */ + void (GLAPIENTRYP Uniform2uiEXT)(GLint location, GLuint x, GLuint y); /* 827 */ + void (GLAPIENTRYP Uniform2uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 828 */ + void (GLAPIENTRYP Uniform3uiEXT)(GLint location, GLuint x, GLuint y, GLuint z); /* 829 */ + void (GLAPIENTRYP Uniform3uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 830 */ + void (GLAPIENTRYP Uniform4uiEXT)(GLint location, GLuint x, GLuint y, GLuint z, GLuint w); /* 831 */ + void (GLAPIENTRYP Uniform4uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 832 */ + void (GLAPIENTRYP VertexAttribI1iEXT)(GLuint index, GLint x); /* 833 */ + void (GLAPIENTRYP VertexAttribI1ivEXT)(GLuint index, const GLint * v); /* 834 */ + void (GLAPIENTRYP VertexAttribI1uiEXT)(GLuint index, GLuint x); /* 835 */ + void (GLAPIENTRYP VertexAttribI1uivEXT)(GLuint index, const GLuint * v); /* 836 */ + void (GLAPIENTRYP VertexAttribI2iEXT)(GLuint index, GLint x, GLint y); /* 837 */ + void (GLAPIENTRYP VertexAttribI2ivEXT)(GLuint index, const GLint * v); /* 838 */ + void (GLAPIENTRYP VertexAttribI2uiEXT)(GLuint index, GLuint x, GLuint y); /* 839 */ + void (GLAPIENTRYP VertexAttribI2uivEXT)(GLuint index, const GLuint * v); /* 840 */ + void (GLAPIENTRYP VertexAttribI3iEXT)(GLuint index, GLint x, GLint y, GLint z); /* 841 */ + void (GLAPIENTRYP VertexAttribI3ivEXT)(GLuint index, const GLint * v); /* 842 */ + void (GLAPIENTRYP VertexAttribI3uiEXT)(GLuint index, GLuint x, GLuint y, GLuint z); /* 843 */ + void (GLAPIENTRYP VertexAttribI3uivEXT)(GLuint index, const GLuint * v); /* 844 */ + void (GLAPIENTRYP VertexAttribI4bvEXT)(GLuint index, const GLbyte * v); /* 845 */ + void (GLAPIENTRYP VertexAttribI4iEXT)(GLuint index, GLint x, GLint y, GLint z, GLint w); /* 846 */ + void (GLAPIENTRYP VertexAttribI4ivEXT)(GLuint index, const GLint * v); /* 847 */ + void (GLAPIENTRYP VertexAttribI4svEXT)(GLuint index, const GLshort * v); /* 848 */ + void (GLAPIENTRYP VertexAttribI4ubvEXT)(GLuint index, const GLubyte * v); /* 849 */ + void (GLAPIENTRYP VertexAttribI4uiEXT)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w); /* 850 */ + void (GLAPIENTRYP VertexAttribI4uivEXT)(GLuint index, const GLuint * v); /* 851 */ + void (GLAPIENTRYP VertexAttribI4usvEXT)(GLuint index, const GLushort * v); /* 852 */ + void (GLAPIENTRYP VertexAttribIPointerEXT)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 853 */ + void (GLAPIENTRYP FramebufferTextureLayerEXT)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer); /* 854 */ + void (GLAPIENTRYP ColorMaskIndexedEXT)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a); /* 855 */ + void (GLAPIENTRYP DisableIndexedEXT)(GLenum target, GLuint index); /* 856 */ + void (GLAPIENTRYP EnableIndexedEXT)(GLenum target, GLuint index); /* 857 */ + void (GLAPIENTRYP GetBooleanIndexedvEXT)(GLenum value, GLuint index, GLboolean * data); /* 858 */ + void (GLAPIENTRYP GetIntegerIndexedvEXT)(GLenum value, GLuint index, GLint * data); /* 859 */ + GLboolean (GLAPIENTRYP IsEnabledIndexedEXT)(GLenum target, GLuint index); /* 860 */ + void (GLAPIENTRYP ClearColorIiEXT)(GLint r, GLint g, GLint b, GLint a); /* 861 */ + void (GLAPIENTRYP ClearColorIuiEXT)(GLuint r, GLuint g, GLuint b, GLuint a); /* 862 */ + void (GLAPIENTRYP GetTexParameterIivEXT)(GLenum target, GLenum pname, GLint * params); /* 863 */ + void (GLAPIENTRYP GetTexParameterIuivEXT)(GLenum target, GLenum pname, GLuint * params); /* 864 */ + void (GLAPIENTRYP TexParameterIivEXT)(GLenum target, GLenum pname, const GLint * params); /* 865 */ + void (GLAPIENTRYP TexParameterIuivEXT)(GLenum target, GLenum pname, const GLuint * params); /* 866 */ + void (GLAPIENTRYP BeginConditionalRenderNV)(GLuint query, GLenum mode); /* 867 */ + void (GLAPIENTRYP EndConditionalRenderNV)(void); /* 868 */ + void (GLAPIENTRYP BeginTransformFeedbackEXT)(GLenum mode); /* 869 */ + void (GLAPIENTRYP BindBufferBaseEXT)(GLenum target, GLuint index, GLuint buffer); /* 870 */ + void (GLAPIENTRYP BindBufferOffsetEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset); /* 871 */ + void (GLAPIENTRYP BindBufferRangeEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size); /* 872 */ + void (GLAPIENTRYP EndTransformFeedbackEXT)(void); /* 873 */ + void (GLAPIENTRYP GetTransformFeedbackVaryingEXT)(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLsizei * size, GLenum * type, GLchar * name); /* 874 */ + void (GLAPIENTRYP TransformFeedbackVaryingsEXT)(GLuint program, GLsizei count, const char ** varyings, GLenum bufferMode); /* 875 */ + void (GLAPIENTRYP ProvokingVertexEXT)(GLenum mode); /* 876 */ + void (GLAPIENTRYP GetTexParameterPointervAPPLE)(GLenum target, GLenum pname, GLvoid ** params); /* 877 */ + void (GLAPIENTRYP TextureRangeAPPLE)(GLenum target, GLsizei length, GLvoid * pointer); /* 878 */ + void (GLAPIENTRYP GetObjectParameterivAPPLE)(GLenum objectType, GLuint name, GLenum pname, GLint * value); /* 879 */ + GLenum (GLAPIENTRYP ObjectPurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); /* 880 */ + GLenum (GLAPIENTRYP ObjectUnpurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); /* 881 */ + void (GLAPIENTRYP ActiveProgramEXT)(GLuint program); /* 882 */ + GLuint (GLAPIENTRYP CreateShaderProgramEXT)(GLenum type, const GLchar * string); /* 883 */ + void (GLAPIENTRYP UseShaderProgramEXT)(GLenum type, GLuint program); /* 884 */ + void (GLAPIENTRYP TextureBarrierNV)(void); /* 885 */ + void (GLAPIENTRYP StencilFuncSeparateATI)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); /* 886 */ + void (GLAPIENTRYP ProgramEnvParameters4fvEXT)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); /* 887 */ + void (GLAPIENTRYP ProgramLocalParameters4fvEXT)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); /* 888 */ + void (GLAPIENTRYP GetQueryObjecti64vEXT)(GLuint id, GLenum pname, GLint64EXT * params); /* 889 */ + void (GLAPIENTRYP GetQueryObjectui64vEXT)(GLuint id, GLenum pname, GLuint64EXT * params); /* 890 */ + void (GLAPIENTRYP EGLImageTargetRenderbufferStorageOES)(GLenum target, GLvoid * writeOffset); /* 891 */ + void (GLAPIENTRYP EGLImageTargetTexture2DOES)(GLenum target, GLvoid * writeOffset); /* 892 */ }; #endif /* !defined( _GLAPI_TABLE_H_ ) */ diff --git a/src/mapi/glapi/glapitemp.h b/src/mapi/glapi/glapitemp.h index 893bd200341..28997bab455 100644 --- a/src/mapi/glapi/glapitemp.h +++ b/src/mapi/glapi/glapitemp.h @@ -3897,6 +3897,11 @@ KEYWORD1 void KEYWORD2 NAME(DrawBuffersATI)(GLsizei n, const GLenum * bufs) DISPATCH(DrawBuffersARB, (n, bufs), (F, "glDrawBuffersATI(%d, %p);\n", n, (const void *) bufs)); } +KEYWORD1 void KEYWORD2 NAME(ClampColorARB)(GLenum target, GLenum clamp) +{ + DISPATCH(ClampColorARB, (target, clamp), (F, "glClampColorARB(0x%x, 0x%x);\n", target, clamp)); +} + KEYWORD1 void KEYWORD2 NAME(DrawArraysInstancedARB)(GLenum mode, GLint first, GLsizei count, GLsizei primcount) { DISPATCH(DrawArraysInstancedARB, (mode, first, count, primcount), (F, "glDrawArraysInstancedARB(0x%x, %d, %d, %d);\n", mode, first, count, primcount)); @@ -4117,58 +4122,58 @@ KEYWORD1 void KEYWORD2 NAME(PolygonOffsetEXT)(GLfloat factor, GLfloat bias) DISPATCH(PolygonOffsetEXT, (factor, bias), (F, "glPolygonOffsetEXT(%f, %f);\n", factor, bias)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_611)(GLenum pname, GLfloat * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_612)(GLenum pname, GLfloat * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_611)(GLenum pname, GLfloat * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_612)(GLenum pname, GLfloat * params) { DISPATCH(GetPixelTexGenParameterfvSGIS, (pname, params), (F, "glGetPixelTexGenParameterfvSGIS(0x%x, %p);\n", pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_612)(GLenum pname, GLint * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_613)(GLenum pname, GLint * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_612)(GLenum pname, GLint * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_613)(GLenum pname, GLint * params) { DISPATCH(GetPixelTexGenParameterivSGIS, (pname, params), (F, "glGetPixelTexGenParameterivSGIS(0x%x, %p);\n", pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_613)(GLenum pname, GLfloat param); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_614)(GLenum pname, GLfloat param); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_613)(GLenum pname, GLfloat param) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_614)(GLenum pname, GLfloat param) { DISPATCH(PixelTexGenParameterfSGIS, (pname, param), (F, "glPixelTexGenParameterfSGIS(0x%x, %f);\n", pname, param)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_614)(GLenum pname, const GLfloat * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_615)(GLenum pname, const GLfloat * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_614)(GLenum pname, const GLfloat * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_615)(GLenum pname, const GLfloat * params) { DISPATCH(PixelTexGenParameterfvSGIS, (pname, params), (F, "glPixelTexGenParameterfvSGIS(0x%x, %p);\n", pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_615)(GLenum pname, GLint param); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_616)(GLenum pname, GLint param); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_615)(GLenum pname, GLint param) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_616)(GLenum pname, GLint param) { DISPATCH(PixelTexGenParameteriSGIS, (pname, param), (F, "glPixelTexGenParameteriSGIS(0x%x, %d);\n", pname, param)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_616)(GLenum pname, const GLint * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_617)(GLenum pname, const GLint * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_616)(GLenum pname, const GLint * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_617)(GLenum pname, const GLint * params) { DISPATCH(PixelTexGenParameterivSGIS, (pname, params), (F, "glPixelTexGenParameterivSGIS(0x%x, %p);\n", pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_617)(GLclampf value, GLboolean invert); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_618)(GLclampf value, GLboolean invert); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_617)(GLclampf value, GLboolean invert) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_618)(GLclampf value, GLboolean invert) { DISPATCH(SampleMaskSGIS, (value, invert), (F, "glSampleMaskSGIS(%f, %d);\n", value, invert)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_618)(GLenum pattern); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_619)(GLenum pattern); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_618)(GLenum pattern) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_619)(GLenum pattern) { DISPATCH(SamplePatternSGIS, (pattern), (F, "glSamplePatternSGIS(0x%x);\n", pattern)); } @@ -4218,9 +4223,9 @@ KEYWORD1 void KEYWORD2 NAME(PointParameterfEXT)(GLenum pname, GLfloat param) DISPATCH(PointParameterfEXT, (pname, param), (F, "glPointParameterfEXT(0x%x, %f);\n", pname, param)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_625)(GLenum pname, GLfloat param); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_626)(GLenum pname, GLfloat param); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_625)(GLenum pname, GLfloat param) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_626)(GLenum pname, GLfloat param) { DISPATCH(PointParameterfEXT, (pname, param), (F, "glPointParameterfSGIS(0x%x, %f);\n", pname, param)); } @@ -4240,9 +4245,9 @@ KEYWORD1 void KEYWORD2 NAME(PointParameterfvEXT)(GLenum pname, const GLfloat * p DISPATCH(PointParameterfvEXT, (pname, params), (F, "glPointParameterfvEXT(0x%x, %p);\n", pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_626)(GLenum pname, const GLfloat * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_627)(GLenum pname, const GLfloat * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_626)(GLenum pname, const GLfloat * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_627)(GLenum pname, const GLfloat * params) { DISPATCH(PointParameterfvEXT, (pname, params), (F, "glPointParameterfvSGIS(0x%x, %p);\n", pname, (const void *) params)); } @@ -4497,9 +4502,9 @@ KEYWORD1 void KEYWORD2 NAME(FogCoordfvEXT)(const GLfloat * coord) DISPATCH(FogCoordfvEXT, (coord), (F, "glFogCoordfvEXT(%p);\n", (const void *) coord)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_653)(GLenum mode); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_654)(GLenum mode); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_653)(GLenum mode) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_654)(GLenum mode) { DISPATCH(PixelTexGenSGIX, (mode), (F, "glPixelTexGenSGIX(0x%x);\n", mode)); } @@ -4514,9 +4519,9 @@ KEYWORD1 void KEYWORD2 NAME(BlendFuncSeparateEXT)(GLenum sfactorRGB, GLenum dfac DISPATCH(BlendFuncSeparateEXT, (sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha), (F, "glBlendFuncSeparateEXT(0x%x, 0x%x, 0x%x, 0x%x);\n", sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_654)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_655)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_654)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_655)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha) { DISPATCH(BlendFuncSeparateEXT, (sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha), (F, "glBlendFuncSeparateINGR(0x%x, 0x%x, 0x%x, 0x%x);\n", sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha)); } @@ -4881,65 +4886,65 @@ KEYWORD1 void KEYWORD2 NAME(WindowPos4svMESA)(const GLshort * v) DISPATCH(WindowPos4svMESA, (v), (F, "glWindowPos4svMESA(%p);\n", (const void *) v)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_695)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_696)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_695)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_696)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride) { DISPATCH(MultiModeDrawArraysIBM, (mode, first, count, primcount, modestride), (F, "glMultiModeDrawArraysIBM(%p, %p, %p, %d, %d);\n", (const void *) mode, (const void *) first, (const void *) count, primcount, modestride)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_696)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_697)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_696)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_697)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride) { DISPATCH(MultiModeDrawElementsIBM, (mode, count, type, indices, primcount, modestride), (F, "glMultiModeDrawElementsIBM(%p, %p, 0x%x, %p, %d, %d);\n", (const void *) mode, (const void *) count, type, (const void *) indices, primcount, modestride)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_697)(GLsizei n, const GLuint * fences); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_698)(GLsizei n, const GLuint * fences); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_697)(GLsizei n, const GLuint * fences) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_698)(GLsizei n, const GLuint * fences) { DISPATCH(DeleteFencesNV, (n, fences), (F, "glDeleteFencesNV(%d, %p);\n", n, (const void *) fences)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_698)(GLuint fence); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_699)(GLuint fence); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_698)(GLuint fence) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_699)(GLuint fence) { DISPATCH(FinishFenceNV, (fence), (F, "glFinishFenceNV(%d);\n", fence)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_699)(GLsizei n, GLuint * fences); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_700)(GLsizei n, GLuint * fences); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_699)(GLsizei n, GLuint * fences) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_700)(GLsizei n, GLuint * fences) { DISPATCH(GenFencesNV, (n, fences), (F, "glGenFencesNV(%d, %p);\n", n, (const void *) fences)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_700)(GLuint fence, GLenum pname, GLint * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_701)(GLuint fence, GLenum pname, GLint * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_700)(GLuint fence, GLenum pname, GLint * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_701)(GLuint fence, GLenum pname, GLint * params) { DISPATCH(GetFenceivNV, (fence, pname, params), (F, "glGetFenceivNV(%d, 0x%x, %p);\n", fence, pname, (const void *) params)); } -KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_701)(GLuint fence); +KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_702)(GLuint fence); -KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_701)(GLuint fence) +KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_702)(GLuint fence) { RETURN_DISPATCH(IsFenceNV, (fence), (F, "glIsFenceNV(%d);\n", fence)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_702)(GLuint fence, GLenum condition); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_703)(GLuint fence, GLenum condition); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_702)(GLuint fence, GLenum condition) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_703)(GLuint fence, GLenum condition) { DISPATCH(SetFenceNV, (fence, condition), (F, "glSetFenceNV(%d, 0x%x);\n", fence, condition)); } -KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_703)(GLuint fence); +KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_704)(GLuint fence); -KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_703)(GLuint fence) +KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_704)(GLuint fence) { RETURN_DISPATCH(TestFenceNV, (fence), (F, "glTestFenceNV(%d);\n", fence)); } @@ -5384,16 +5389,16 @@ KEYWORD1 void KEYWORD2 NAME(PointParameterivNV)(GLenum pname, const GLint * para DISPATCH(PointParameterivNV, (pname, params), (F, "glPointParameterivNV(0x%x, %p);\n", pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_784)(GLenum face); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_785)(GLenum face); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_784)(GLenum face) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_785)(GLenum face) { DISPATCH(ActiveStencilFaceEXT, (face), (F, "glActiveStencilFaceEXT(0x%x);\n", face)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_785)(GLuint array); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_786)(GLuint array); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_785)(GLuint array) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_786)(GLuint array) { DISPATCH(BindVertexArrayAPPLE, (array), (F, "glBindVertexArrayAPPLE(%d);\n", array)); } @@ -5403,16 +5408,16 @@ KEYWORD1 void KEYWORD2 NAME(DeleteVertexArrays)(GLsizei n, const GLuint * arrays DISPATCH(DeleteVertexArraysAPPLE, (n, arrays), (F, "glDeleteVertexArrays(%d, %p);\n", n, (const void *) arrays)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_786)(GLsizei n, const GLuint * arrays); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_787)(GLsizei n, const GLuint * arrays); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_786)(GLsizei n, const GLuint * arrays) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_787)(GLsizei n, const GLuint * arrays) { DISPATCH(DeleteVertexArraysAPPLE, (n, arrays), (F, "glDeleteVertexArraysAPPLE(%d, %p);\n", n, (const void *) arrays)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_787)(GLsizei n, GLuint * arrays); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_788)(GLsizei n, GLuint * arrays); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_787)(GLsizei n, GLuint * arrays) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_788)(GLsizei n, GLuint * arrays) { DISPATCH(GenVertexArraysAPPLE, (n, arrays), (F, "glGenVertexArraysAPPLE(%d, %p);\n", n, (const void *) arrays)); } @@ -5422,9 +5427,9 @@ KEYWORD1 GLboolean KEYWORD2 NAME(IsVertexArray)(GLuint array) RETURN_DISPATCH(IsVertexArrayAPPLE, (array), (F, "glIsVertexArray(%d);\n", array)); } -KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_788)(GLuint array); +KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_789)(GLuint array); -KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_788)(GLuint array) +KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_789)(GLuint array) { RETURN_DISPATCH(IsVertexArrayAPPLE, (array), (F, "glIsVertexArrayAPPLE(%d);\n", array)); } @@ -5474,9 +5479,9 @@ KEYWORD1 void KEYWORD2 NAME(PrimitiveRestartNV)(void) DISPATCH(PrimitiveRestartNV, (), (F, "glPrimitiveRestartNV();\n")); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_797)(GLclampd zmin, GLclampd zmax); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_798)(GLclampd zmin, GLclampd zmax); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_797)(GLclampd zmin, GLclampd zmax) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_798)(GLclampd zmin, GLclampd zmax) { DISPATCH(DepthBoundsEXT, (zmin, zmax), (F, "glDepthBoundsEXT(%f, %f);\n", zmin, zmax)); } @@ -5486,9 +5491,9 @@ KEYWORD1 void KEYWORD2 NAME(BlendEquationSeparate)(GLenum modeRGB, GLenum modeA) DISPATCH(BlendEquationSeparateEXT, (modeRGB, modeA), (F, "glBlendEquationSeparate(0x%x, 0x%x);\n", modeRGB, modeA)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_798)(GLenum modeRGB, GLenum modeA); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_799)(GLenum modeRGB, GLenum modeA); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_798)(GLenum modeRGB, GLenum modeA) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_799)(GLenum modeRGB, GLenum modeA) { DISPATCH(BlendEquationSeparateEXT, (modeRGB, modeA), (F, "glBlendEquationSeparateEXT(0x%x, 0x%x);\n", modeRGB, modeA)); } @@ -5668,23 +5673,23 @@ KEYWORD1 void KEYWORD2 NAME(BlitFramebuffer)(GLint srcX0, GLint srcY0, GLint src DISPATCH(BlitFramebufferEXT, (srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter), (F, "glBlitFramebuffer(%d, %d, %d, %d, %d, %d, %d, %d, %d, 0x%x);\n", srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_816)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_817)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_816)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_817)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) { DISPATCH(BlitFramebufferEXT, (srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter), (F, "glBlitFramebufferEXT(%d, %d, %d, %d, %d, %d, %d, %d, %d, 0x%x);\n", srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_817)(GLenum target, GLenum pname, GLint param); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_818)(GLenum target, GLenum pname, GLint param); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_817)(GLenum target, GLenum pname, GLint param) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_818)(GLenum target, GLenum pname, GLint param) { DISPATCH(BufferParameteriAPPLE, (target, pname, param), (F, "glBufferParameteriAPPLE(0x%x, 0x%x, %d);\n", target, pname, param)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_818)(GLenum target, GLintptr offset, GLsizeiptr size); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_819)(GLenum target, GLintptr offset, GLsizeiptr size); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_818)(GLenum target, GLintptr offset, GLsizeiptr size) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_819)(GLenum target, GLintptr offset, GLsizeiptr size) { DISPATCH(FlushMappedBufferRangeAPPLE, (target, offset, size), (F, "glFlushMappedBufferRangeAPPLE(0x%x, %d, %d);\n", target, offset, size)); } @@ -6244,16 +6249,16 @@ KEYWORD1 void KEYWORD2 NAME(ProvokingVertex)(GLenum mode) DISPATCH(ProvokingVertexEXT, (mode), (F, "glProvokingVertex(0x%x);\n", mode)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_876)(GLenum target, GLenum pname, GLvoid ** params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_877)(GLenum target, GLenum pname, GLvoid ** params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_876)(GLenum target, GLenum pname, GLvoid ** params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_877)(GLenum target, GLenum pname, GLvoid ** params) { DISPATCH(GetTexParameterPointervAPPLE, (target, pname, params), (F, "glGetTexParameterPointervAPPLE(0x%x, 0x%x, %p);\n", target, pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_877)(GLenum target, GLsizei length, GLvoid * pointer); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_878)(GLenum target, GLsizei length, GLvoid * pointer); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_877)(GLenum target, GLsizei length, GLvoid * pointer) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_878)(GLenum target, GLsizei length, GLvoid * pointer) { DISPATCH(TextureRangeAPPLE, (target, length, pointer), (F, "glTextureRangeAPPLE(0x%x, %d, %p);\n", target, length, (const void *) pointer)); } @@ -6293,37 +6298,37 @@ KEYWORD1 void KEYWORD2 NAME(TextureBarrierNV)(void) DISPATCH(TextureBarrierNV, (), (F, "glTextureBarrierNV();\n")); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_885)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_886)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_885)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_886)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask) { DISPATCH(StencilFuncSeparateATI, (frontfunc, backfunc, ref, mask), (F, "glStencilFuncSeparateATI(0x%x, 0x%x, %d, %d);\n", frontfunc, backfunc, ref, mask)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_886)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); - -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_886)(GLenum target, GLuint index, GLsizei count, const GLfloat * params) -{ - DISPATCH(ProgramEnvParameters4fvEXT, (target, index, count, params), (F, "glProgramEnvParameters4fvEXT(0x%x, %d, %d, %p);\n", target, index, count, (const void *) params)); -} - KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_887)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_887)(GLenum target, GLuint index, GLsizei count, const GLfloat * params) +{ + DISPATCH(ProgramEnvParameters4fvEXT, (target, index, count, params), (F, "glProgramEnvParameters4fvEXT(0x%x, %d, %d, %p);\n", target, index, count, (const void *) params)); +} + +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_888)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); + +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_888)(GLenum target, GLuint index, GLsizei count, const GLfloat * params) { DISPATCH(ProgramLocalParameters4fvEXT, (target, index, count, params), (F, "glProgramLocalParameters4fvEXT(0x%x, %d, %d, %p);\n", target, index, count, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_888)(GLuint id, GLenum pname, GLint64EXT * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_889)(GLuint id, GLenum pname, GLint64EXT * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_888)(GLuint id, GLenum pname, GLint64EXT * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_889)(GLuint id, GLenum pname, GLint64EXT * params) { DISPATCH(GetQueryObjecti64vEXT, (id, pname, params), (F, "glGetQueryObjecti64vEXT(%d, 0x%x, %p);\n", id, pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_889)(GLuint id, GLenum pname, GLuint64EXT * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_890)(GLuint id, GLenum pname, GLuint64EXT * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_889)(GLuint id, GLenum pname, GLuint64EXT * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_890)(GLuint id, GLenum pname, GLuint64EXT * params) { DISPATCH(GetQueryObjectui64vEXT, (id, pname, params), (F, "glGetQueryObjectui64vEXT(%d, 0x%x, %p);\n", id, pname, (const void *) params)); } @@ -7063,6 +7068,7 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(GetActiveAttribARB), TABLE_ENTRY(GetAttribLocationARB), TABLE_ENTRY(DrawBuffersARB), + TABLE_ENTRY(ClampColorARB), TABLE_ENTRY(DrawArraysInstancedARB), TABLE_ENTRY(DrawElementsInstancedARB), TABLE_ENTRY(RenderbufferStorageMultisample), @@ -7102,7 +7108,6 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(ReleaseShaderCompiler), TABLE_ENTRY(ShaderBinary), TABLE_ENTRY(PolygonOffsetEXT), - TABLE_ENTRY(_dispatch_stub_611), TABLE_ENTRY(_dispatch_stub_612), TABLE_ENTRY(_dispatch_stub_613), TABLE_ENTRY(_dispatch_stub_614), @@ -7110,6 +7115,7 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(_dispatch_stub_616), TABLE_ENTRY(_dispatch_stub_617), TABLE_ENTRY(_dispatch_stub_618), + TABLE_ENTRY(_dispatch_stub_619), TABLE_ENTRY(ColorPointerEXT), TABLE_ENTRY(EdgeFlagPointerEXT), TABLE_ENTRY(IndexPointerEXT), @@ -7144,7 +7150,7 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(FogCoorddvEXT), TABLE_ENTRY(FogCoordfEXT), TABLE_ENTRY(FogCoordfvEXT), - TABLE_ENTRY(_dispatch_stub_653), + TABLE_ENTRY(_dispatch_stub_654), TABLE_ENTRY(BlendFuncSeparateEXT), TABLE_ENTRY(FlushVertexArrayRangeNV), TABLE_ENTRY(VertexArrayRangeNV), @@ -7186,7 +7192,6 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(WindowPos4ivMESA), TABLE_ENTRY(WindowPos4sMESA), TABLE_ENTRY(WindowPos4svMESA), - TABLE_ENTRY(_dispatch_stub_695), TABLE_ENTRY(_dispatch_stub_696), TABLE_ENTRY(_dispatch_stub_697), TABLE_ENTRY(_dispatch_stub_698), @@ -7195,6 +7200,7 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(_dispatch_stub_701), TABLE_ENTRY(_dispatch_stub_702), TABLE_ENTRY(_dispatch_stub_703), + TABLE_ENTRY(_dispatch_stub_704), TABLE_ENTRY(AreProgramsResidentNV), TABLE_ENTRY(BindProgramNV), TABLE_ENTRY(DeleteProgramsNV), @@ -7275,11 +7281,11 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(SetFragmentShaderConstantATI), TABLE_ENTRY(PointParameteriNV), TABLE_ENTRY(PointParameterivNV), - TABLE_ENTRY(_dispatch_stub_784), TABLE_ENTRY(_dispatch_stub_785), TABLE_ENTRY(_dispatch_stub_786), TABLE_ENTRY(_dispatch_stub_787), TABLE_ENTRY(_dispatch_stub_788), + TABLE_ENTRY(_dispatch_stub_789), TABLE_ENTRY(GetProgramNamedParameterdvNV), TABLE_ENTRY(GetProgramNamedParameterfvNV), TABLE_ENTRY(ProgramNamedParameter4dNV), @@ -7288,8 +7294,8 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(ProgramNamedParameter4fvNV), TABLE_ENTRY(PrimitiveRestartIndexNV), TABLE_ENTRY(PrimitiveRestartNV), - TABLE_ENTRY(_dispatch_stub_797), TABLE_ENTRY(_dispatch_stub_798), + TABLE_ENTRY(_dispatch_stub_799), TABLE_ENTRY(BindFramebufferEXT), TABLE_ENTRY(BindRenderbufferEXT), TABLE_ENTRY(CheckFramebufferStatusEXT), @@ -7307,9 +7313,9 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(IsFramebufferEXT), TABLE_ENTRY(IsRenderbufferEXT), TABLE_ENTRY(RenderbufferStorageEXT), - TABLE_ENTRY(_dispatch_stub_816), TABLE_ENTRY(_dispatch_stub_817), TABLE_ENTRY(_dispatch_stub_818), + TABLE_ENTRY(_dispatch_stub_819), TABLE_ENTRY(BindFragDataLocationEXT), TABLE_ENTRY(GetFragDataLocationEXT), TABLE_ENTRY(GetUniformuivEXT), @@ -7367,8 +7373,8 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(GetTransformFeedbackVaryingEXT), TABLE_ENTRY(TransformFeedbackVaryingsEXT), TABLE_ENTRY(ProvokingVertexEXT), - TABLE_ENTRY(_dispatch_stub_876), TABLE_ENTRY(_dispatch_stub_877), + TABLE_ENTRY(_dispatch_stub_878), TABLE_ENTRY(GetObjectParameterivAPPLE), TABLE_ENTRY(ObjectPurgeableAPPLE), TABLE_ENTRY(ObjectUnpurgeableAPPLE), @@ -7376,11 +7382,11 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(CreateShaderProgramEXT), TABLE_ENTRY(UseShaderProgramEXT), TABLE_ENTRY(TextureBarrierNV), - TABLE_ENTRY(_dispatch_stub_885), TABLE_ENTRY(_dispatch_stub_886), TABLE_ENTRY(_dispatch_stub_887), TABLE_ENTRY(_dispatch_stub_888), TABLE_ENTRY(_dispatch_stub_889), + TABLE_ENTRY(_dispatch_stub_890), TABLE_ENTRY(EGLImageTargetRenderbufferStorageOES), TABLE_ENTRY(EGLImageTargetTexture2DOES), /* A whole bunch of no-op functions. These might be called @@ -7687,10 +7693,10 @@ _glapi_proc UNUSED_TABLE_NAME[] = { TABLE_ENTRY(RenderbufferStorageMultisampleEXT), TABLE_ENTRY(PointParameterf), TABLE_ENTRY(PointParameterfARB), - TABLE_ENTRY(_dispatch_stub_625), + TABLE_ENTRY(_dispatch_stub_626), TABLE_ENTRY(PointParameterfv), TABLE_ENTRY(PointParameterfvARB), - TABLE_ENTRY(_dispatch_stub_626), + TABLE_ENTRY(_dispatch_stub_627), TABLE_ENTRY(SecondaryColor3b), TABLE_ENTRY(SecondaryColor3bv), TABLE_ENTRY(SecondaryColor3d), @@ -7716,7 +7722,7 @@ _glapi_proc UNUSED_TABLE_NAME[] = { TABLE_ENTRY(FogCoordf), TABLE_ENTRY(FogCoordfv), TABLE_ENTRY(BlendFuncSeparate), - TABLE_ENTRY(_dispatch_stub_654), + TABLE_ENTRY(_dispatch_stub_655), TABLE_ENTRY(WindowPos2d), TABLE_ENTRY(WindowPos2dARB), TABLE_ENTRY(WindowPos2dv), diff --git a/src/mapi/glapi/glprocs.h b/src/mapi/glapi/glprocs.h index b66ae381218..8495cb6bf35 100644 --- a/src/mapi/glapi/glprocs.h +++ b/src/mapi/glapi/glprocs.h @@ -624,6 +624,7 @@ static const char gl_string_table[] = "glGetActiveAttribARB\0" "glGetAttribLocationARB\0" "glDrawBuffersARB\0" + "glClampColorARB\0" "glDrawArraysInstancedARB\0" "glDrawElementsInstancedARB\0" "glRenderbufferStorageMultisample\0" @@ -1320,7 +1321,6 @@ static const char gl_string_table[] = #define gl_dispatch_stub_364 mgl_dispatch_stub_364 #define gl_dispatch_stub_365 mgl_dispatch_stub_365 #define gl_dispatch_stub_366 mgl_dispatch_stub_366 -#define gl_dispatch_stub_611 mgl_dispatch_stub_611 #define gl_dispatch_stub_612 mgl_dispatch_stub_612 #define gl_dispatch_stub_613 mgl_dispatch_stub_613 #define gl_dispatch_stub_614 mgl_dispatch_stub_614 @@ -1328,8 +1328,8 @@ static const char gl_string_table[] = #define gl_dispatch_stub_616 mgl_dispatch_stub_616 #define gl_dispatch_stub_617 mgl_dispatch_stub_617 #define gl_dispatch_stub_618 mgl_dispatch_stub_618 -#define gl_dispatch_stub_653 mgl_dispatch_stub_653 -#define gl_dispatch_stub_695 mgl_dispatch_stub_695 +#define gl_dispatch_stub_619 mgl_dispatch_stub_619 +#define gl_dispatch_stub_654 mgl_dispatch_stub_654 #define gl_dispatch_stub_696 mgl_dispatch_stub_696 #define gl_dispatch_stub_697 mgl_dispatch_stub_697 #define gl_dispatch_stub_698 mgl_dispatch_stub_698 @@ -1338,23 +1338,24 @@ static const char gl_string_table[] = #define gl_dispatch_stub_701 mgl_dispatch_stub_701 #define gl_dispatch_stub_702 mgl_dispatch_stub_702 #define gl_dispatch_stub_703 mgl_dispatch_stub_703 -#define gl_dispatch_stub_784 mgl_dispatch_stub_784 +#define gl_dispatch_stub_704 mgl_dispatch_stub_704 #define gl_dispatch_stub_785 mgl_dispatch_stub_785 #define gl_dispatch_stub_786 mgl_dispatch_stub_786 #define gl_dispatch_stub_787 mgl_dispatch_stub_787 #define gl_dispatch_stub_788 mgl_dispatch_stub_788 -#define gl_dispatch_stub_797 mgl_dispatch_stub_797 +#define gl_dispatch_stub_789 mgl_dispatch_stub_789 #define gl_dispatch_stub_798 mgl_dispatch_stub_798 -#define gl_dispatch_stub_816 mgl_dispatch_stub_816 +#define gl_dispatch_stub_799 mgl_dispatch_stub_799 #define gl_dispatch_stub_817 mgl_dispatch_stub_817 #define gl_dispatch_stub_818 mgl_dispatch_stub_818 -#define gl_dispatch_stub_876 mgl_dispatch_stub_876 +#define gl_dispatch_stub_819 mgl_dispatch_stub_819 #define gl_dispatch_stub_877 mgl_dispatch_stub_877 -#define gl_dispatch_stub_885 mgl_dispatch_stub_885 +#define gl_dispatch_stub_878 mgl_dispatch_stub_878 #define gl_dispatch_stub_886 mgl_dispatch_stub_886 #define gl_dispatch_stub_887 mgl_dispatch_stub_887 #define gl_dispatch_stub_888 mgl_dispatch_stub_888 #define gl_dispatch_stub_889 mgl_dispatch_stub_889 +#define gl_dispatch_stub_890 mgl_dispatch_stub_890 #endif /* USE_MGL_NAMESPACE */ @@ -1372,41 +1373,41 @@ void GLAPIENTRY gl_dispatch_stub_363(GLenum target, GLenum pname, GLint * params void GLAPIENTRY gl_dispatch_stub_364(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid * values); void GLAPIENTRY gl_dispatch_stub_365(GLenum target, GLenum pname, GLfloat * params); void GLAPIENTRY gl_dispatch_stub_366(GLenum target, GLenum pname, GLint * params); -void GLAPIENTRY gl_dispatch_stub_611(GLenum pname, GLfloat * params); -void GLAPIENTRY gl_dispatch_stub_612(GLenum pname, GLint * params); -void GLAPIENTRY gl_dispatch_stub_613(GLenum pname, GLfloat param); -void GLAPIENTRY gl_dispatch_stub_614(GLenum pname, const GLfloat * params); -void GLAPIENTRY gl_dispatch_stub_615(GLenum pname, GLint param); -void GLAPIENTRY gl_dispatch_stub_616(GLenum pname, const GLint * params); -void GLAPIENTRY gl_dispatch_stub_617(GLclampf value, GLboolean invert); -void GLAPIENTRY gl_dispatch_stub_618(GLenum pattern); -void GLAPIENTRY gl_dispatch_stub_653(GLenum mode); -void GLAPIENTRY gl_dispatch_stub_695(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); -void GLAPIENTRY gl_dispatch_stub_696(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); -void GLAPIENTRY gl_dispatch_stub_697(GLsizei n, const GLuint * fences); -void GLAPIENTRY gl_dispatch_stub_698(GLuint fence); -void GLAPIENTRY gl_dispatch_stub_699(GLsizei n, GLuint * fences); -void GLAPIENTRY gl_dispatch_stub_700(GLuint fence, GLenum pname, GLint * params); -GLboolean GLAPIENTRY gl_dispatch_stub_701(GLuint fence); -void GLAPIENTRY gl_dispatch_stub_702(GLuint fence, GLenum condition); -GLboolean GLAPIENTRY gl_dispatch_stub_703(GLuint fence); -void GLAPIENTRY gl_dispatch_stub_784(GLenum face); -void GLAPIENTRY gl_dispatch_stub_785(GLuint array); -void GLAPIENTRY gl_dispatch_stub_786(GLsizei n, const GLuint * arrays); -void GLAPIENTRY gl_dispatch_stub_787(GLsizei n, GLuint * arrays); -GLboolean GLAPIENTRY gl_dispatch_stub_788(GLuint array); -void GLAPIENTRY gl_dispatch_stub_797(GLclampd zmin, GLclampd zmax); -void GLAPIENTRY gl_dispatch_stub_798(GLenum modeRGB, GLenum modeA); -void GLAPIENTRY gl_dispatch_stub_816(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); -void GLAPIENTRY gl_dispatch_stub_817(GLenum target, GLenum pname, GLint param); -void GLAPIENTRY gl_dispatch_stub_818(GLenum target, GLintptr offset, GLsizeiptr size); -void GLAPIENTRY gl_dispatch_stub_876(GLenum target, GLenum pname, GLvoid ** params); -void GLAPIENTRY gl_dispatch_stub_877(GLenum target, GLsizei length, GLvoid * pointer); -void GLAPIENTRY gl_dispatch_stub_885(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); -void GLAPIENTRY gl_dispatch_stub_886(GLenum target, GLuint index, GLsizei count, const GLfloat * params); +void GLAPIENTRY gl_dispatch_stub_612(GLenum pname, GLfloat * params); +void GLAPIENTRY gl_dispatch_stub_613(GLenum pname, GLint * params); +void GLAPIENTRY gl_dispatch_stub_614(GLenum pname, GLfloat param); +void GLAPIENTRY gl_dispatch_stub_615(GLenum pname, const GLfloat * params); +void GLAPIENTRY gl_dispatch_stub_616(GLenum pname, GLint param); +void GLAPIENTRY gl_dispatch_stub_617(GLenum pname, const GLint * params); +void GLAPIENTRY gl_dispatch_stub_618(GLclampf value, GLboolean invert); +void GLAPIENTRY gl_dispatch_stub_619(GLenum pattern); +void GLAPIENTRY gl_dispatch_stub_654(GLenum mode); +void GLAPIENTRY gl_dispatch_stub_696(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); +void GLAPIENTRY gl_dispatch_stub_697(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); +void GLAPIENTRY gl_dispatch_stub_698(GLsizei n, const GLuint * fences); +void GLAPIENTRY gl_dispatch_stub_699(GLuint fence); +void GLAPIENTRY gl_dispatch_stub_700(GLsizei n, GLuint * fences); +void GLAPIENTRY gl_dispatch_stub_701(GLuint fence, GLenum pname, GLint * params); +GLboolean GLAPIENTRY gl_dispatch_stub_702(GLuint fence); +void GLAPIENTRY gl_dispatch_stub_703(GLuint fence, GLenum condition); +GLboolean GLAPIENTRY gl_dispatch_stub_704(GLuint fence); +void GLAPIENTRY gl_dispatch_stub_785(GLenum face); +void GLAPIENTRY gl_dispatch_stub_786(GLuint array); +void GLAPIENTRY gl_dispatch_stub_787(GLsizei n, const GLuint * arrays); +void GLAPIENTRY gl_dispatch_stub_788(GLsizei n, GLuint * arrays); +GLboolean GLAPIENTRY gl_dispatch_stub_789(GLuint array); +void GLAPIENTRY gl_dispatch_stub_798(GLclampd zmin, GLclampd zmax); +void GLAPIENTRY gl_dispatch_stub_799(GLenum modeRGB, GLenum modeA); +void GLAPIENTRY gl_dispatch_stub_817(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); +void GLAPIENTRY gl_dispatch_stub_818(GLenum target, GLenum pname, GLint param); +void GLAPIENTRY gl_dispatch_stub_819(GLenum target, GLintptr offset, GLsizeiptr size); +void GLAPIENTRY gl_dispatch_stub_877(GLenum target, GLenum pname, GLvoid ** params); +void GLAPIENTRY gl_dispatch_stub_878(GLenum target, GLsizei length, GLvoid * pointer); +void GLAPIENTRY gl_dispatch_stub_886(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); void GLAPIENTRY gl_dispatch_stub_887(GLenum target, GLuint index, GLsizei count, const GLfloat * params); -void GLAPIENTRY gl_dispatch_stub_888(GLuint id, GLenum pname, GLint64EXT * params); -void GLAPIENTRY gl_dispatch_stub_889(GLuint id, GLenum pname, GLuint64EXT * params); +void GLAPIENTRY gl_dispatch_stub_888(GLenum target, GLuint index, GLsizei count, const GLfloat * params); +void GLAPIENTRY gl_dispatch_stub_889(GLuint id, GLenum pname, GLint64EXT * params); +void GLAPIENTRY gl_dispatch_stub_890(GLuint id, GLenum pname, GLuint64EXT * params); #endif /* defined(NEED_FUNCTION_POINTER) || defined(GLX_INDIRECT_RENDERING) */ static const glprocs_table_t static_functions[] = { @@ -1982,685 +1983,686 @@ static const glprocs_table_t static_functions[] = { NAME_FUNC_OFFSET( 9079, glGetActiveAttribARB, glGetActiveAttribARB, NULL, 569), NAME_FUNC_OFFSET( 9100, glGetAttribLocationARB, glGetAttribLocationARB, NULL, 570), NAME_FUNC_OFFSET( 9123, glDrawBuffersARB, glDrawBuffersARB, NULL, 571), - NAME_FUNC_OFFSET( 9140, glDrawArraysInstancedARB, glDrawArraysInstancedARB, NULL, 572), - NAME_FUNC_OFFSET( 9165, glDrawElementsInstancedARB, glDrawElementsInstancedARB, NULL, 573), - NAME_FUNC_OFFSET( 9192, glRenderbufferStorageMultisample, glRenderbufferStorageMultisample, NULL, 574), - NAME_FUNC_OFFSET( 9225, glFramebufferTextureARB, glFramebufferTextureARB, NULL, 575), - NAME_FUNC_OFFSET( 9249, glFramebufferTextureFaceARB, glFramebufferTextureFaceARB, NULL, 576), - NAME_FUNC_OFFSET( 9277, glProgramParameteriARB, glProgramParameteriARB, NULL, 577), - NAME_FUNC_OFFSET( 9300, glVertexAttribDivisorARB, glVertexAttribDivisorARB, NULL, 578), - NAME_FUNC_OFFSET( 9325, glFlushMappedBufferRange, glFlushMappedBufferRange, NULL, 579), - NAME_FUNC_OFFSET( 9350, glMapBufferRange, glMapBufferRange, NULL, 580), - NAME_FUNC_OFFSET( 9367, glBindVertexArray, glBindVertexArray, NULL, 581), - NAME_FUNC_OFFSET( 9385, glGenVertexArrays, glGenVertexArrays, NULL, 582), - NAME_FUNC_OFFSET( 9403, glCopyBufferSubData, glCopyBufferSubData, NULL, 583), - NAME_FUNC_OFFSET( 9423, glClientWaitSync, glClientWaitSync, NULL, 584), - NAME_FUNC_OFFSET( 9440, glDeleteSync, glDeleteSync, NULL, 585), - NAME_FUNC_OFFSET( 9453, glFenceSync, glFenceSync, NULL, 586), - NAME_FUNC_OFFSET( 9465, glGetInteger64v, glGetInteger64v, NULL, 587), - NAME_FUNC_OFFSET( 9481, glGetSynciv, glGetSynciv, NULL, 588), - NAME_FUNC_OFFSET( 9493, glIsSync, glIsSync, NULL, 589), - NAME_FUNC_OFFSET( 9502, glWaitSync, glWaitSync, NULL, 590), - NAME_FUNC_OFFSET( 9513, glDrawElementsBaseVertex, glDrawElementsBaseVertex, NULL, 591), - NAME_FUNC_OFFSET( 9538, glDrawRangeElementsBaseVertex, glDrawRangeElementsBaseVertex, NULL, 592), - NAME_FUNC_OFFSET( 9568, glMultiDrawElementsBaseVertex, glMultiDrawElementsBaseVertex, NULL, 593), - NAME_FUNC_OFFSET( 9598, glBlendEquationSeparateiARB, glBlendEquationSeparateiARB, NULL, 594), - NAME_FUNC_OFFSET( 9626, glBlendEquationiARB, glBlendEquationiARB, NULL, 595), - NAME_FUNC_OFFSET( 9646, glBlendFuncSeparateiARB, glBlendFuncSeparateiARB, NULL, 596), - NAME_FUNC_OFFSET( 9670, glBlendFunciARB, glBlendFunciARB, NULL, 597), - NAME_FUNC_OFFSET( 9686, glBindTransformFeedback, glBindTransformFeedback, NULL, 598), - NAME_FUNC_OFFSET( 9710, glDeleteTransformFeedbacks, glDeleteTransformFeedbacks, NULL, 599), - NAME_FUNC_OFFSET( 9737, glDrawTransformFeedback, glDrawTransformFeedback, NULL, 600), - NAME_FUNC_OFFSET( 9761, glGenTransformFeedbacks, glGenTransformFeedbacks, NULL, 601), - NAME_FUNC_OFFSET( 9785, glIsTransformFeedback, glIsTransformFeedback, NULL, 602), - NAME_FUNC_OFFSET( 9807, glPauseTransformFeedback, glPauseTransformFeedback, NULL, 603), - NAME_FUNC_OFFSET( 9832, glResumeTransformFeedback, glResumeTransformFeedback, NULL, 604), - NAME_FUNC_OFFSET( 9858, glClearDepthf, glClearDepthf, NULL, 605), - NAME_FUNC_OFFSET( 9872, glDepthRangef, glDepthRangef, NULL, 606), - NAME_FUNC_OFFSET( 9886, glGetShaderPrecisionFormat, glGetShaderPrecisionFormat, NULL, 607), - NAME_FUNC_OFFSET( 9913, glReleaseShaderCompiler, glReleaseShaderCompiler, NULL, 608), - NAME_FUNC_OFFSET( 9937, glShaderBinary, glShaderBinary, NULL, 609), - NAME_FUNC_OFFSET( 9952, glPolygonOffsetEXT, glPolygonOffsetEXT, NULL, 610), - NAME_FUNC_OFFSET( 9971, gl_dispatch_stub_611, gl_dispatch_stub_611, NULL, 611), - NAME_FUNC_OFFSET(10003, gl_dispatch_stub_612, gl_dispatch_stub_612, NULL, 612), - NAME_FUNC_OFFSET(10035, gl_dispatch_stub_613, gl_dispatch_stub_613, NULL, 613), - NAME_FUNC_OFFSET(10063, gl_dispatch_stub_614, gl_dispatch_stub_614, NULL, 614), - NAME_FUNC_OFFSET(10092, gl_dispatch_stub_615, gl_dispatch_stub_615, NULL, 615), - NAME_FUNC_OFFSET(10120, gl_dispatch_stub_616, gl_dispatch_stub_616, NULL, 616), - NAME_FUNC_OFFSET(10149, gl_dispatch_stub_617, gl_dispatch_stub_617, NULL, 617), - NAME_FUNC_OFFSET(10166, gl_dispatch_stub_618, gl_dispatch_stub_618, NULL, 618), - NAME_FUNC_OFFSET(10186, glColorPointerEXT, glColorPointerEXT, NULL, 619), - NAME_FUNC_OFFSET(10204, glEdgeFlagPointerEXT, glEdgeFlagPointerEXT, NULL, 620), - NAME_FUNC_OFFSET(10225, glIndexPointerEXT, glIndexPointerEXT, NULL, 621), - NAME_FUNC_OFFSET(10243, glNormalPointerEXT, glNormalPointerEXT, NULL, 622), - NAME_FUNC_OFFSET(10262, glTexCoordPointerEXT, glTexCoordPointerEXT, NULL, 623), - NAME_FUNC_OFFSET(10283, glVertexPointerEXT, glVertexPointerEXT, NULL, 624), - NAME_FUNC_OFFSET(10302, glPointParameterfEXT, glPointParameterfEXT, NULL, 625), - NAME_FUNC_OFFSET(10323, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 626), - NAME_FUNC_OFFSET(10345, glLockArraysEXT, glLockArraysEXT, NULL, 627), - NAME_FUNC_OFFSET(10361, glUnlockArraysEXT, glUnlockArraysEXT, NULL, 628), - NAME_FUNC_OFFSET(10379, glSecondaryColor3bEXT, glSecondaryColor3bEXT, NULL, 629), - NAME_FUNC_OFFSET(10401, glSecondaryColor3bvEXT, glSecondaryColor3bvEXT, NULL, 630), - NAME_FUNC_OFFSET(10424, glSecondaryColor3dEXT, glSecondaryColor3dEXT, NULL, 631), - NAME_FUNC_OFFSET(10446, glSecondaryColor3dvEXT, glSecondaryColor3dvEXT, NULL, 632), - NAME_FUNC_OFFSET(10469, glSecondaryColor3fEXT, glSecondaryColor3fEXT, NULL, 633), - NAME_FUNC_OFFSET(10491, glSecondaryColor3fvEXT, glSecondaryColor3fvEXT, NULL, 634), - NAME_FUNC_OFFSET(10514, glSecondaryColor3iEXT, glSecondaryColor3iEXT, NULL, 635), - NAME_FUNC_OFFSET(10536, glSecondaryColor3ivEXT, glSecondaryColor3ivEXT, NULL, 636), - NAME_FUNC_OFFSET(10559, glSecondaryColor3sEXT, glSecondaryColor3sEXT, NULL, 637), - NAME_FUNC_OFFSET(10581, glSecondaryColor3svEXT, glSecondaryColor3svEXT, NULL, 638), - NAME_FUNC_OFFSET(10604, glSecondaryColor3ubEXT, glSecondaryColor3ubEXT, NULL, 639), - NAME_FUNC_OFFSET(10627, glSecondaryColor3ubvEXT, glSecondaryColor3ubvEXT, NULL, 640), - NAME_FUNC_OFFSET(10651, glSecondaryColor3uiEXT, glSecondaryColor3uiEXT, NULL, 641), - NAME_FUNC_OFFSET(10674, glSecondaryColor3uivEXT, glSecondaryColor3uivEXT, NULL, 642), - NAME_FUNC_OFFSET(10698, glSecondaryColor3usEXT, glSecondaryColor3usEXT, NULL, 643), - NAME_FUNC_OFFSET(10721, glSecondaryColor3usvEXT, glSecondaryColor3usvEXT, NULL, 644), - NAME_FUNC_OFFSET(10745, glSecondaryColorPointerEXT, glSecondaryColorPointerEXT, NULL, 645), - NAME_FUNC_OFFSET(10772, glMultiDrawArraysEXT, glMultiDrawArraysEXT, NULL, 646), - NAME_FUNC_OFFSET(10793, glMultiDrawElementsEXT, glMultiDrawElementsEXT, NULL, 647), - NAME_FUNC_OFFSET(10816, glFogCoordPointerEXT, glFogCoordPointerEXT, NULL, 648), - NAME_FUNC_OFFSET(10837, glFogCoorddEXT, glFogCoorddEXT, NULL, 649), - NAME_FUNC_OFFSET(10852, glFogCoorddvEXT, glFogCoorddvEXT, NULL, 650), - NAME_FUNC_OFFSET(10868, glFogCoordfEXT, glFogCoordfEXT, NULL, 651), - NAME_FUNC_OFFSET(10883, glFogCoordfvEXT, glFogCoordfvEXT, NULL, 652), - NAME_FUNC_OFFSET(10899, gl_dispatch_stub_653, gl_dispatch_stub_653, NULL, 653), - NAME_FUNC_OFFSET(10917, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, 654), - NAME_FUNC_OFFSET(10940, glFlushVertexArrayRangeNV, glFlushVertexArrayRangeNV, NULL, 655), - NAME_FUNC_OFFSET(10966, glVertexArrayRangeNV, glVertexArrayRangeNV, NULL, 656), - NAME_FUNC_OFFSET(10987, glCombinerInputNV, glCombinerInputNV, NULL, 657), - NAME_FUNC_OFFSET(11005, glCombinerOutputNV, glCombinerOutputNV, NULL, 658), - NAME_FUNC_OFFSET(11024, glCombinerParameterfNV, glCombinerParameterfNV, NULL, 659), - NAME_FUNC_OFFSET(11047, glCombinerParameterfvNV, glCombinerParameterfvNV, NULL, 660), - NAME_FUNC_OFFSET(11071, glCombinerParameteriNV, glCombinerParameteriNV, NULL, 661), - NAME_FUNC_OFFSET(11094, glCombinerParameterivNV, glCombinerParameterivNV, NULL, 662), - NAME_FUNC_OFFSET(11118, glFinalCombinerInputNV, glFinalCombinerInputNV, NULL, 663), - NAME_FUNC_OFFSET(11141, glGetCombinerInputParameterfvNV, glGetCombinerInputParameterfvNV, NULL, 664), - NAME_FUNC_OFFSET(11173, glGetCombinerInputParameterivNV, glGetCombinerInputParameterivNV, NULL, 665), - NAME_FUNC_OFFSET(11205, glGetCombinerOutputParameterfvNV, glGetCombinerOutputParameterfvNV, NULL, 666), - NAME_FUNC_OFFSET(11238, glGetCombinerOutputParameterivNV, glGetCombinerOutputParameterivNV, NULL, 667), - NAME_FUNC_OFFSET(11271, glGetFinalCombinerInputParameterfvNV, glGetFinalCombinerInputParameterfvNV, NULL, 668), - NAME_FUNC_OFFSET(11308, glGetFinalCombinerInputParameterivNV, glGetFinalCombinerInputParameterivNV, NULL, 669), - NAME_FUNC_OFFSET(11345, glResizeBuffersMESA, glResizeBuffersMESA, NULL, 670), - NAME_FUNC_OFFSET(11365, glWindowPos2dMESA, glWindowPos2dMESA, NULL, 671), - NAME_FUNC_OFFSET(11383, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, 672), - NAME_FUNC_OFFSET(11402, glWindowPos2fMESA, glWindowPos2fMESA, NULL, 673), - NAME_FUNC_OFFSET(11420, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, 674), - NAME_FUNC_OFFSET(11439, glWindowPos2iMESA, glWindowPos2iMESA, NULL, 675), - NAME_FUNC_OFFSET(11457, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, 676), - NAME_FUNC_OFFSET(11476, glWindowPos2sMESA, glWindowPos2sMESA, NULL, 677), - NAME_FUNC_OFFSET(11494, glWindowPos2svMESA, glWindowPos2svMESA, NULL, 678), - NAME_FUNC_OFFSET(11513, glWindowPos3dMESA, glWindowPos3dMESA, NULL, 679), - NAME_FUNC_OFFSET(11531, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, 680), - NAME_FUNC_OFFSET(11550, glWindowPos3fMESA, glWindowPos3fMESA, NULL, 681), - NAME_FUNC_OFFSET(11568, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, 682), - NAME_FUNC_OFFSET(11587, glWindowPos3iMESA, glWindowPos3iMESA, NULL, 683), - NAME_FUNC_OFFSET(11605, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, 684), - NAME_FUNC_OFFSET(11624, glWindowPos3sMESA, glWindowPos3sMESA, NULL, 685), - NAME_FUNC_OFFSET(11642, glWindowPos3svMESA, glWindowPos3svMESA, NULL, 686), - NAME_FUNC_OFFSET(11661, glWindowPos4dMESA, glWindowPos4dMESA, NULL, 687), - NAME_FUNC_OFFSET(11679, glWindowPos4dvMESA, glWindowPos4dvMESA, NULL, 688), - NAME_FUNC_OFFSET(11698, glWindowPos4fMESA, glWindowPos4fMESA, NULL, 689), - NAME_FUNC_OFFSET(11716, glWindowPos4fvMESA, glWindowPos4fvMESA, NULL, 690), - NAME_FUNC_OFFSET(11735, glWindowPos4iMESA, glWindowPos4iMESA, NULL, 691), - NAME_FUNC_OFFSET(11753, glWindowPos4ivMESA, glWindowPos4ivMESA, NULL, 692), - NAME_FUNC_OFFSET(11772, glWindowPos4sMESA, glWindowPos4sMESA, NULL, 693), - NAME_FUNC_OFFSET(11790, glWindowPos4svMESA, glWindowPos4svMESA, NULL, 694), - NAME_FUNC_OFFSET(11809, gl_dispatch_stub_695, gl_dispatch_stub_695, NULL, 695), - NAME_FUNC_OFFSET(11834, gl_dispatch_stub_696, gl_dispatch_stub_696, NULL, 696), - NAME_FUNC_OFFSET(11861, gl_dispatch_stub_697, gl_dispatch_stub_697, NULL, 697), - NAME_FUNC_OFFSET(11878, gl_dispatch_stub_698, gl_dispatch_stub_698, NULL, 698), + NAME_FUNC_OFFSET( 9140, glClampColorARB, glClampColorARB, NULL, 572), + NAME_FUNC_OFFSET( 9156, glDrawArraysInstancedARB, glDrawArraysInstancedARB, NULL, 573), + NAME_FUNC_OFFSET( 9181, glDrawElementsInstancedARB, glDrawElementsInstancedARB, NULL, 574), + NAME_FUNC_OFFSET( 9208, glRenderbufferStorageMultisample, glRenderbufferStorageMultisample, NULL, 575), + NAME_FUNC_OFFSET( 9241, glFramebufferTextureARB, glFramebufferTextureARB, NULL, 576), + NAME_FUNC_OFFSET( 9265, glFramebufferTextureFaceARB, glFramebufferTextureFaceARB, NULL, 577), + NAME_FUNC_OFFSET( 9293, glProgramParameteriARB, glProgramParameteriARB, NULL, 578), + NAME_FUNC_OFFSET( 9316, glVertexAttribDivisorARB, glVertexAttribDivisorARB, NULL, 579), + NAME_FUNC_OFFSET( 9341, glFlushMappedBufferRange, glFlushMappedBufferRange, NULL, 580), + NAME_FUNC_OFFSET( 9366, glMapBufferRange, glMapBufferRange, NULL, 581), + NAME_FUNC_OFFSET( 9383, glBindVertexArray, glBindVertexArray, NULL, 582), + NAME_FUNC_OFFSET( 9401, glGenVertexArrays, glGenVertexArrays, NULL, 583), + NAME_FUNC_OFFSET( 9419, glCopyBufferSubData, glCopyBufferSubData, NULL, 584), + NAME_FUNC_OFFSET( 9439, glClientWaitSync, glClientWaitSync, NULL, 585), + NAME_FUNC_OFFSET( 9456, glDeleteSync, glDeleteSync, NULL, 586), + NAME_FUNC_OFFSET( 9469, glFenceSync, glFenceSync, NULL, 587), + NAME_FUNC_OFFSET( 9481, glGetInteger64v, glGetInteger64v, NULL, 588), + NAME_FUNC_OFFSET( 9497, glGetSynciv, glGetSynciv, NULL, 589), + NAME_FUNC_OFFSET( 9509, glIsSync, glIsSync, NULL, 590), + NAME_FUNC_OFFSET( 9518, glWaitSync, glWaitSync, NULL, 591), + NAME_FUNC_OFFSET( 9529, glDrawElementsBaseVertex, glDrawElementsBaseVertex, NULL, 592), + NAME_FUNC_OFFSET( 9554, glDrawRangeElementsBaseVertex, glDrawRangeElementsBaseVertex, NULL, 593), + NAME_FUNC_OFFSET( 9584, glMultiDrawElementsBaseVertex, glMultiDrawElementsBaseVertex, NULL, 594), + NAME_FUNC_OFFSET( 9614, glBlendEquationSeparateiARB, glBlendEquationSeparateiARB, NULL, 595), + NAME_FUNC_OFFSET( 9642, glBlendEquationiARB, glBlendEquationiARB, NULL, 596), + NAME_FUNC_OFFSET( 9662, glBlendFuncSeparateiARB, glBlendFuncSeparateiARB, NULL, 597), + NAME_FUNC_OFFSET( 9686, glBlendFunciARB, glBlendFunciARB, NULL, 598), + NAME_FUNC_OFFSET( 9702, glBindTransformFeedback, glBindTransformFeedback, NULL, 599), + NAME_FUNC_OFFSET( 9726, glDeleteTransformFeedbacks, glDeleteTransformFeedbacks, NULL, 600), + NAME_FUNC_OFFSET( 9753, glDrawTransformFeedback, glDrawTransformFeedback, NULL, 601), + NAME_FUNC_OFFSET( 9777, glGenTransformFeedbacks, glGenTransformFeedbacks, NULL, 602), + NAME_FUNC_OFFSET( 9801, glIsTransformFeedback, glIsTransformFeedback, NULL, 603), + NAME_FUNC_OFFSET( 9823, glPauseTransformFeedback, glPauseTransformFeedback, NULL, 604), + NAME_FUNC_OFFSET( 9848, glResumeTransformFeedback, glResumeTransformFeedback, NULL, 605), + NAME_FUNC_OFFSET( 9874, glClearDepthf, glClearDepthf, NULL, 606), + NAME_FUNC_OFFSET( 9888, glDepthRangef, glDepthRangef, NULL, 607), + NAME_FUNC_OFFSET( 9902, glGetShaderPrecisionFormat, glGetShaderPrecisionFormat, NULL, 608), + NAME_FUNC_OFFSET( 9929, glReleaseShaderCompiler, glReleaseShaderCompiler, NULL, 609), + NAME_FUNC_OFFSET( 9953, glShaderBinary, glShaderBinary, NULL, 610), + NAME_FUNC_OFFSET( 9968, glPolygonOffsetEXT, glPolygonOffsetEXT, NULL, 611), + NAME_FUNC_OFFSET( 9987, gl_dispatch_stub_612, gl_dispatch_stub_612, NULL, 612), + NAME_FUNC_OFFSET(10019, gl_dispatch_stub_613, gl_dispatch_stub_613, NULL, 613), + NAME_FUNC_OFFSET(10051, gl_dispatch_stub_614, gl_dispatch_stub_614, NULL, 614), + NAME_FUNC_OFFSET(10079, gl_dispatch_stub_615, gl_dispatch_stub_615, NULL, 615), + NAME_FUNC_OFFSET(10108, gl_dispatch_stub_616, gl_dispatch_stub_616, NULL, 616), + NAME_FUNC_OFFSET(10136, gl_dispatch_stub_617, gl_dispatch_stub_617, NULL, 617), + NAME_FUNC_OFFSET(10165, gl_dispatch_stub_618, gl_dispatch_stub_618, NULL, 618), + NAME_FUNC_OFFSET(10182, gl_dispatch_stub_619, gl_dispatch_stub_619, NULL, 619), + NAME_FUNC_OFFSET(10202, glColorPointerEXT, glColorPointerEXT, NULL, 620), + NAME_FUNC_OFFSET(10220, glEdgeFlagPointerEXT, glEdgeFlagPointerEXT, NULL, 621), + NAME_FUNC_OFFSET(10241, glIndexPointerEXT, glIndexPointerEXT, NULL, 622), + NAME_FUNC_OFFSET(10259, glNormalPointerEXT, glNormalPointerEXT, NULL, 623), + NAME_FUNC_OFFSET(10278, glTexCoordPointerEXT, glTexCoordPointerEXT, NULL, 624), + NAME_FUNC_OFFSET(10299, glVertexPointerEXT, glVertexPointerEXT, NULL, 625), + NAME_FUNC_OFFSET(10318, glPointParameterfEXT, glPointParameterfEXT, NULL, 626), + NAME_FUNC_OFFSET(10339, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 627), + NAME_FUNC_OFFSET(10361, glLockArraysEXT, glLockArraysEXT, NULL, 628), + NAME_FUNC_OFFSET(10377, glUnlockArraysEXT, glUnlockArraysEXT, NULL, 629), + NAME_FUNC_OFFSET(10395, glSecondaryColor3bEXT, glSecondaryColor3bEXT, NULL, 630), + NAME_FUNC_OFFSET(10417, glSecondaryColor3bvEXT, glSecondaryColor3bvEXT, NULL, 631), + NAME_FUNC_OFFSET(10440, glSecondaryColor3dEXT, glSecondaryColor3dEXT, NULL, 632), + NAME_FUNC_OFFSET(10462, glSecondaryColor3dvEXT, glSecondaryColor3dvEXT, NULL, 633), + NAME_FUNC_OFFSET(10485, glSecondaryColor3fEXT, glSecondaryColor3fEXT, NULL, 634), + NAME_FUNC_OFFSET(10507, glSecondaryColor3fvEXT, glSecondaryColor3fvEXT, NULL, 635), + NAME_FUNC_OFFSET(10530, glSecondaryColor3iEXT, glSecondaryColor3iEXT, NULL, 636), + NAME_FUNC_OFFSET(10552, glSecondaryColor3ivEXT, glSecondaryColor3ivEXT, NULL, 637), + NAME_FUNC_OFFSET(10575, glSecondaryColor3sEXT, glSecondaryColor3sEXT, NULL, 638), + NAME_FUNC_OFFSET(10597, glSecondaryColor3svEXT, glSecondaryColor3svEXT, NULL, 639), + NAME_FUNC_OFFSET(10620, glSecondaryColor3ubEXT, glSecondaryColor3ubEXT, NULL, 640), + NAME_FUNC_OFFSET(10643, glSecondaryColor3ubvEXT, glSecondaryColor3ubvEXT, NULL, 641), + NAME_FUNC_OFFSET(10667, glSecondaryColor3uiEXT, glSecondaryColor3uiEXT, NULL, 642), + NAME_FUNC_OFFSET(10690, glSecondaryColor3uivEXT, glSecondaryColor3uivEXT, NULL, 643), + NAME_FUNC_OFFSET(10714, glSecondaryColor3usEXT, glSecondaryColor3usEXT, NULL, 644), + NAME_FUNC_OFFSET(10737, glSecondaryColor3usvEXT, glSecondaryColor3usvEXT, NULL, 645), + NAME_FUNC_OFFSET(10761, glSecondaryColorPointerEXT, glSecondaryColorPointerEXT, NULL, 646), + NAME_FUNC_OFFSET(10788, glMultiDrawArraysEXT, glMultiDrawArraysEXT, NULL, 647), + NAME_FUNC_OFFSET(10809, glMultiDrawElementsEXT, glMultiDrawElementsEXT, NULL, 648), + NAME_FUNC_OFFSET(10832, glFogCoordPointerEXT, glFogCoordPointerEXT, NULL, 649), + NAME_FUNC_OFFSET(10853, glFogCoorddEXT, glFogCoorddEXT, NULL, 650), + NAME_FUNC_OFFSET(10868, glFogCoorddvEXT, glFogCoorddvEXT, NULL, 651), + NAME_FUNC_OFFSET(10884, glFogCoordfEXT, glFogCoordfEXT, NULL, 652), + NAME_FUNC_OFFSET(10899, glFogCoordfvEXT, glFogCoordfvEXT, NULL, 653), + NAME_FUNC_OFFSET(10915, gl_dispatch_stub_654, gl_dispatch_stub_654, NULL, 654), + NAME_FUNC_OFFSET(10933, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, 655), + NAME_FUNC_OFFSET(10956, glFlushVertexArrayRangeNV, glFlushVertexArrayRangeNV, NULL, 656), + NAME_FUNC_OFFSET(10982, glVertexArrayRangeNV, glVertexArrayRangeNV, NULL, 657), + NAME_FUNC_OFFSET(11003, glCombinerInputNV, glCombinerInputNV, NULL, 658), + NAME_FUNC_OFFSET(11021, glCombinerOutputNV, glCombinerOutputNV, NULL, 659), + NAME_FUNC_OFFSET(11040, glCombinerParameterfNV, glCombinerParameterfNV, NULL, 660), + NAME_FUNC_OFFSET(11063, glCombinerParameterfvNV, glCombinerParameterfvNV, NULL, 661), + NAME_FUNC_OFFSET(11087, glCombinerParameteriNV, glCombinerParameteriNV, NULL, 662), + NAME_FUNC_OFFSET(11110, glCombinerParameterivNV, glCombinerParameterivNV, NULL, 663), + NAME_FUNC_OFFSET(11134, glFinalCombinerInputNV, glFinalCombinerInputNV, NULL, 664), + NAME_FUNC_OFFSET(11157, glGetCombinerInputParameterfvNV, glGetCombinerInputParameterfvNV, NULL, 665), + NAME_FUNC_OFFSET(11189, glGetCombinerInputParameterivNV, glGetCombinerInputParameterivNV, NULL, 666), + NAME_FUNC_OFFSET(11221, glGetCombinerOutputParameterfvNV, glGetCombinerOutputParameterfvNV, NULL, 667), + NAME_FUNC_OFFSET(11254, glGetCombinerOutputParameterivNV, glGetCombinerOutputParameterivNV, NULL, 668), + NAME_FUNC_OFFSET(11287, glGetFinalCombinerInputParameterfvNV, glGetFinalCombinerInputParameterfvNV, NULL, 669), + NAME_FUNC_OFFSET(11324, glGetFinalCombinerInputParameterivNV, glGetFinalCombinerInputParameterivNV, NULL, 670), + NAME_FUNC_OFFSET(11361, glResizeBuffersMESA, glResizeBuffersMESA, NULL, 671), + NAME_FUNC_OFFSET(11381, glWindowPos2dMESA, glWindowPos2dMESA, NULL, 672), + NAME_FUNC_OFFSET(11399, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, 673), + NAME_FUNC_OFFSET(11418, glWindowPos2fMESA, glWindowPos2fMESA, NULL, 674), + NAME_FUNC_OFFSET(11436, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, 675), + NAME_FUNC_OFFSET(11455, glWindowPos2iMESA, glWindowPos2iMESA, NULL, 676), + NAME_FUNC_OFFSET(11473, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, 677), + NAME_FUNC_OFFSET(11492, glWindowPos2sMESA, glWindowPos2sMESA, NULL, 678), + NAME_FUNC_OFFSET(11510, glWindowPos2svMESA, glWindowPos2svMESA, NULL, 679), + NAME_FUNC_OFFSET(11529, glWindowPos3dMESA, glWindowPos3dMESA, NULL, 680), + NAME_FUNC_OFFSET(11547, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, 681), + NAME_FUNC_OFFSET(11566, glWindowPos3fMESA, glWindowPos3fMESA, NULL, 682), + NAME_FUNC_OFFSET(11584, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, 683), + NAME_FUNC_OFFSET(11603, glWindowPos3iMESA, glWindowPos3iMESA, NULL, 684), + NAME_FUNC_OFFSET(11621, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, 685), + NAME_FUNC_OFFSET(11640, glWindowPos3sMESA, glWindowPos3sMESA, NULL, 686), + NAME_FUNC_OFFSET(11658, glWindowPos3svMESA, glWindowPos3svMESA, NULL, 687), + NAME_FUNC_OFFSET(11677, glWindowPos4dMESA, glWindowPos4dMESA, NULL, 688), + NAME_FUNC_OFFSET(11695, glWindowPos4dvMESA, glWindowPos4dvMESA, NULL, 689), + NAME_FUNC_OFFSET(11714, glWindowPos4fMESA, glWindowPos4fMESA, NULL, 690), + NAME_FUNC_OFFSET(11732, glWindowPos4fvMESA, glWindowPos4fvMESA, NULL, 691), + NAME_FUNC_OFFSET(11751, glWindowPos4iMESA, glWindowPos4iMESA, NULL, 692), + NAME_FUNC_OFFSET(11769, glWindowPos4ivMESA, glWindowPos4ivMESA, NULL, 693), + NAME_FUNC_OFFSET(11788, glWindowPos4sMESA, glWindowPos4sMESA, NULL, 694), + NAME_FUNC_OFFSET(11806, glWindowPos4svMESA, glWindowPos4svMESA, NULL, 695), + NAME_FUNC_OFFSET(11825, gl_dispatch_stub_696, gl_dispatch_stub_696, NULL, 696), + NAME_FUNC_OFFSET(11850, gl_dispatch_stub_697, gl_dispatch_stub_697, NULL, 697), + NAME_FUNC_OFFSET(11877, gl_dispatch_stub_698, gl_dispatch_stub_698, NULL, 698), NAME_FUNC_OFFSET(11894, gl_dispatch_stub_699, gl_dispatch_stub_699, NULL, 699), - NAME_FUNC_OFFSET(11908, gl_dispatch_stub_700, gl_dispatch_stub_700, NULL, 700), - NAME_FUNC_OFFSET(11923, gl_dispatch_stub_701, gl_dispatch_stub_701, NULL, 701), - NAME_FUNC_OFFSET(11935, gl_dispatch_stub_702, gl_dispatch_stub_702, NULL, 702), - NAME_FUNC_OFFSET(11948, gl_dispatch_stub_703, gl_dispatch_stub_703, NULL, 703), - NAME_FUNC_OFFSET(11962, glAreProgramsResidentNV, glAreProgramsResidentNV, NULL, 704), - NAME_FUNC_OFFSET(11986, glBindProgramNV, glBindProgramNV, NULL, 705), - NAME_FUNC_OFFSET(12002, glDeleteProgramsNV, glDeleteProgramsNV, NULL, 706), - NAME_FUNC_OFFSET(12021, glExecuteProgramNV, glExecuteProgramNV, NULL, 707), - NAME_FUNC_OFFSET(12040, glGenProgramsNV, glGenProgramsNV, NULL, 708), - NAME_FUNC_OFFSET(12056, glGetProgramParameterdvNV, glGetProgramParameterdvNV, NULL, 709), - NAME_FUNC_OFFSET(12082, glGetProgramParameterfvNV, glGetProgramParameterfvNV, NULL, 710), - NAME_FUNC_OFFSET(12108, glGetProgramStringNV, glGetProgramStringNV, NULL, 711), - NAME_FUNC_OFFSET(12129, glGetProgramivNV, glGetProgramivNV, NULL, 712), - NAME_FUNC_OFFSET(12146, glGetTrackMatrixivNV, glGetTrackMatrixivNV, NULL, 713), - NAME_FUNC_OFFSET(12167, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, 714), - NAME_FUNC_OFFSET(12195, glGetVertexAttribdvNV, glGetVertexAttribdvNV, NULL, 715), - NAME_FUNC_OFFSET(12217, glGetVertexAttribfvNV, glGetVertexAttribfvNV, NULL, 716), - NAME_FUNC_OFFSET(12239, glGetVertexAttribivNV, glGetVertexAttribivNV, NULL, 717), - NAME_FUNC_OFFSET(12261, glIsProgramNV, glIsProgramNV, NULL, 718), - NAME_FUNC_OFFSET(12275, glLoadProgramNV, glLoadProgramNV, NULL, 719), - NAME_FUNC_OFFSET(12291, glProgramParameters4dvNV, glProgramParameters4dvNV, NULL, 720), - NAME_FUNC_OFFSET(12316, glProgramParameters4fvNV, glProgramParameters4fvNV, NULL, 721), - NAME_FUNC_OFFSET(12341, glRequestResidentProgramsNV, glRequestResidentProgramsNV, NULL, 722), - NAME_FUNC_OFFSET(12369, glTrackMatrixNV, glTrackMatrixNV, NULL, 723), - NAME_FUNC_OFFSET(12385, glVertexAttrib1dNV, glVertexAttrib1dNV, NULL, 724), - NAME_FUNC_OFFSET(12404, glVertexAttrib1dvNV, glVertexAttrib1dvNV, NULL, 725), - NAME_FUNC_OFFSET(12424, glVertexAttrib1fNV, glVertexAttrib1fNV, NULL, 726), - NAME_FUNC_OFFSET(12443, glVertexAttrib1fvNV, glVertexAttrib1fvNV, NULL, 727), - NAME_FUNC_OFFSET(12463, glVertexAttrib1sNV, glVertexAttrib1sNV, NULL, 728), - NAME_FUNC_OFFSET(12482, glVertexAttrib1svNV, glVertexAttrib1svNV, NULL, 729), - NAME_FUNC_OFFSET(12502, glVertexAttrib2dNV, glVertexAttrib2dNV, NULL, 730), - NAME_FUNC_OFFSET(12521, glVertexAttrib2dvNV, glVertexAttrib2dvNV, NULL, 731), - NAME_FUNC_OFFSET(12541, glVertexAttrib2fNV, glVertexAttrib2fNV, NULL, 732), - NAME_FUNC_OFFSET(12560, glVertexAttrib2fvNV, glVertexAttrib2fvNV, NULL, 733), - NAME_FUNC_OFFSET(12580, glVertexAttrib2sNV, glVertexAttrib2sNV, NULL, 734), - NAME_FUNC_OFFSET(12599, glVertexAttrib2svNV, glVertexAttrib2svNV, NULL, 735), - NAME_FUNC_OFFSET(12619, glVertexAttrib3dNV, glVertexAttrib3dNV, NULL, 736), - NAME_FUNC_OFFSET(12638, glVertexAttrib3dvNV, glVertexAttrib3dvNV, NULL, 737), - NAME_FUNC_OFFSET(12658, glVertexAttrib3fNV, glVertexAttrib3fNV, NULL, 738), - NAME_FUNC_OFFSET(12677, glVertexAttrib3fvNV, glVertexAttrib3fvNV, NULL, 739), - NAME_FUNC_OFFSET(12697, glVertexAttrib3sNV, glVertexAttrib3sNV, NULL, 740), - NAME_FUNC_OFFSET(12716, glVertexAttrib3svNV, glVertexAttrib3svNV, NULL, 741), - NAME_FUNC_OFFSET(12736, glVertexAttrib4dNV, glVertexAttrib4dNV, NULL, 742), - NAME_FUNC_OFFSET(12755, glVertexAttrib4dvNV, glVertexAttrib4dvNV, NULL, 743), - NAME_FUNC_OFFSET(12775, glVertexAttrib4fNV, glVertexAttrib4fNV, NULL, 744), - NAME_FUNC_OFFSET(12794, glVertexAttrib4fvNV, glVertexAttrib4fvNV, NULL, 745), - NAME_FUNC_OFFSET(12814, glVertexAttrib4sNV, glVertexAttrib4sNV, NULL, 746), - NAME_FUNC_OFFSET(12833, glVertexAttrib4svNV, glVertexAttrib4svNV, NULL, 747), - NAME_FUNC_OFFSET(12853, glVertexAttrib4ubNV, glVertexAttrib4ubNV, NULL, 748), - NAME_FUNC_OFFSET(12873, glVertexAttrib4ubvNV, glVertexAttrib4ubvNV, NULL, 749), - NAME_FUNC_OFFSET(12894, glVertexAttribPointerNV, glVertexAttribPointerNV, NULL, 750), - NAME_FUNC_OFFSET(12918, glVertexAttribs1dvNV, glVertexAttribs1dvNV, NULL, 751), - NAME_FUNC_OFFSET(12939, glVertexAttribs1fvNV, glVertexAttribs1fvNV, NULL, 752), - NAME_FUNC_OFFSET(12960, glVertexAttribs1svNV, glVertexAttribs1svNV, NULL, 753), - NAME_FUNC_OFFSET(12981, glVertexAttribs2dvNV, glVertexAttribs2dvNV, NULL, 754), - NAME_FUNC_OFFSET(13002, glVertexAttribs2fvNV, glVertexAttribs2fvNV, NULL, 755), - NAME_FUNC_OFFSET(13023, glVertexAttribs2svNV, glVertexAttribs2svNV, NULL, 756), - NAME_FUNC_OFFSET(13044, glVertexAttribs3dvNV, glVertexAttribs3dvNV, NULL, 757), - NAME_FUNC_OFFSET(13065, glVertexAttribs3fvNV, glVertexAttribs3fvNV, NULL, 758), - NAME_FUNC_OFFSET(13086, glVertexAttribs3svNV, glVertexAttribs3svNV, NULL, 759), - NAME_FUNC_OFFSET(13107, glVertexAttribs4dvNV, glVertexAttribs4dvNV, NULL, 760), - NAME_FUNC_OFFSET(13128, glVertexAttribs4fvNV, glVertexAttribs4fvNV, NULL, 761), - NAME_FUNC_OFFSET(13149, glVertexAttribs4svNV, glVertexAttribs4svNV, NULL, 762), - NAME_FUNC_OFFSET(13170, glVertexAttribs4ubvNV, glVertexAttribs4ubvNV, NULL, 763), - NAME_FUNC_OFFSET(13192, glGetTexBumpParameterfvATI, glGetTexBumpParameterfvATI, NULL, 764), - NAME_FUNC_OFFSET(13219, glGetTexBumpParameterivATI, glGetTexBumpParameterivATI, NULL, 765), - NAME_FUNC_OFFSET(13246, glTexBumpParameterfvATI, glTexBumpParameterfvATI, NULL, 766), - NAME_FUNC_OFFSET(13270, glTexBumpParameterivATI, glTexBumpParameterivATI, NULL, 767), - NAME_FUNC_OFFSET(13294, glAlphaFragmentOp1ATI, glAlphaFragmentOp1ATI, NULL, 768), - NAME_FUNC_OFFSET(13316, glAlphaFragmentOp2ATI, glAlphaFragmentOp2ATI, NULL, 769), - NAME_FUNC_OFFSET(13338, glAlphaFragmentOp3ATI, glAlphaFragmentOp3ATI, NULL, 770), - NAME_FUNC_OFFSET(13360, glBeginFragmentShaderATI, glBeginFragmentShaderATI, NULL, 771), - NAME_FUNC_OFFSET(13385, glBindFragmentShaderATI, glBindFragmentShaderATI, NULL, 772), - NAME_FUNC_OFFSET(13409, glColorFragmentOp1ATI, glColorFragmentOp1ATI, NULL, 773), - NAME_FUNC_OFFSET(13431, glColorFragmentOp2ATI, glColorFragmentOp2ATI, NULL, 774), - NAME_FUNC_OFFSET(13453, glColorFragmentOp3ATI, glColorFragmentOp3ATI, NULL, 775), - NAME_FUNC_OFFSET(13475, glDeleteFragmentShaderATI, glDeleteFragmentShaderATI, NULL, 776), - NAME_FUNC_OFFSET(13501, glEndFragmentShaderATI, glEndFragmentShaderATI, NULL, 777), - NAME_FUNC_OFFSET(13524, glGenFragmentShadersATI, glGenFragmentShadersATI, NULL, 778), - NAME_FUNC_OFFSET(13548, glPassTexCoordATI, glPassTexCoordATI, NULL, 779), - NAME_FUNC_OFFSET(13566, glSampleMapATI, glSampleMapATI, NULL, 780), - NAME_FUNC_OFFSET(13581, glSetFragmentShaderConstantATI, glSetFragmentShaderConstantATI, NULL, 781), - NAME_FUNC_OFFSET(13612, glPointParameteriNV, glPointParameteriNV, NULL, 782), - NAME_FUNC_OFFSET(13632, glPointParameterivNV, glPointParameterivNV, NULL, 783), - NAME_FUNC_OFFSET(13653, gl_dispatch_stub_784, gl_dispatch_stub_784, NULL, 784), - NAME_FUNC_OFFSET(13676, gl_dispatch_stub_785, gl_dispatch_stub_785, NULL, 785), - NAME_FUNC_OFFSET(13699, gl_dispatch_stub_786, gl_dispatch_stub_786, NULL, 786), - NAME_FUNC_OFFSET(13725, gl_dispatch_stub_787, gl_dispatch_stub_787, NULL, 787), - NAME_FUNC_OFFSET(13748, gl_dispatch_stub_788, gl_dispatch_stub_788, NULL, 788), - NAME_FUNC_OFFSET(13769, glGetProgramNamedParameterdvNV, glGetProgramNamedParameterdvNV, NULL, 789), - NAME_FUNC_OFFSET(13800, glGetProgramNamedParameterfvNV, glGetProgramNamedParameterfvNV, NULL, 790), - NAME_FUNC_OFFSET(13831, glProgramNamedParameter4dNV, glProgramNamedParameter4dNV, NULL, 791), - NAME_FUNC_OFFSET(13859, glProgramNamedParameter4dvNV, glProgramNamedParameter4dvNV, NULL, 792), - NAME_FUNC_OFFSET(13888, glProgramNamedParameter4fNV, glProgramNamedParameter4fNV, NULL, 793), - NAME_FUNC_OFFSET(13916, glProgramNamedParameter4fvNV, glProgramNamedParameter4fvNV, NULL, 794), - NAME_FUNC_OFFSET(13945, glPrimitiveRestartIndexNV, glPrimitiveRestartIndexNV, NULL, 795), - NAME_FUNC_OFFSET(13971, glPrimitiveRestartNV, glPrimitiveRestartNV, NULL, 796), - NAME_FUNC_OFFSET(13992, gl_dispatch_stub_797, gl_dispatch_stub_797, NULL, 797), - NAME_FUNC_OFFSET(14009, gl_dispatch_stub_798, gl_dispatch_stub_798, NULL, 798), - NAME_FUNC_OFFSET(14036, glBindFramebufferEXT, glBindFramebufferEXT, NULL, 799), - NAME_FUNC_OFFSET(14057, glBindRenderbufferEXT, glBindRenderbufferEXT, NULL, 800), - NAME_FUNC_OFFSET(14079, glCheckFramebufferStatusEXT, glCheckFramebufferStatusEXT, NULL, 801), - NAME_FUNC_OFFSET(14107, glDeleteFramebuffersEXT, glDeleteFramebuffersEXT, NULL, 802), - NAME_FUNC_OFFSET(14131, glDeleteRenderbuffersEXT, glDeleteRenderbuffersEXT, NULL, 803), - NAME_FUNC_OFFSET(14156, glFramebufferRenderbufferEXT, glFramebufferRenderbufferEXT, NULL, 804), - NAME_FUNC_OFFSET(14185, glFramebufferTexture1DEXT, glFramebufferTexture1DEXT, NULL, 805), - NAME_FUNC_OFFSET(14211, glFramebufferTexture2DEXT, glFramebufferTexture2DEXT, NULL, 806), - NAME_FUNC_OFFSET(14237, glFramebufferTexture3DEXT, glFramebufferTexture3DEXT, NULL, 807), - NAME_FUNC_OFFSET(14263, glGenFramebuffersEXT, glGenFramebuffersEXT, NULL, 808), - NAME_FUNC_OFFSET(14284, glGenRenderbuffersEXT, glGenRenderbuffersEXT, NULL, 809), - NAME_FUNC_OFFSET(14306, glGenerateMipmapEXT, glGenerateMipmapEXT, NULL, 810), - NAME_FUNC_OFFSET(14326, glGetFramebufferAttachmentParameterivEXT, glGetFramebufferAttachmentParameterivEXT, NULL, 811), - NAME_FUNC_OFFSET(14367, glGetRenderbufferParameterivEXT, glGetRenderbufferParameterivEXT, NULL, 812), - NAME_FUNC_OFFSET(14399, glIsFramebufferEXT, glIsFramebufferEXT, NULL, 813), - NAME_FUNC_OFFSET(14418, glIsRenderbufferEXT, glIsRenderbufferEXT, NULL, 814), - NAME_FUNC_OFFSET(14438, glRenderbufferStorageEXT, glRenderbufferStorageEXT, NULL, 815), - NAME_FUNC_OFFSET(14463, gl_dispatch_stub_816, gl_dispatch_stub_816, NULL, 816), - NAME_FUNC_OFFSET(14484, gl_dispatch_stub_817, gl_dispatch_stub_817, NULL, 817), - NAME_FUNC_OFFSET(14508, gl_dispatch_stub_818, gl_dispatch_stub_818, NULL, 818), - NAME_FUNC_OFFSET(14538, glBindFragDataLocationEXT, glBindFragDataLocationEXT, NULL, 819), - NAME_FUNC_OFFSET(14564, glGetFragDataLocationEXT, glGetFragDataLocationEXT, NULL, 820), - NAME_FUNC_OFFSET(14589, glGetUniformuivEXT, glGetUniformuivEXT, NULL, 821), - NAME_FUNC_OFFSET(14608, glGetVertexAttribIivEXT, glGetVertexAttribIivEXT, NULL, 822), - NAME_FUNC_OFFSET(14632, glGetVertexAttribIuivEXT, glGetVertexAttribIuivEXT, NULL, 823), - NAME_FUNC_OFFSET(14657, glUniform1uiEXT, glUniform1uiEXT, NULL, 824), - NAME_FUNC_OFFSET(14673, glUniform1uivEXT, glUniform1uivEXT, NULL, 825), - NAME_FUNC_OFFSET(14690, glUniform2uiEXT, glUniform2uiEXT, NULL, 826), - NAME_FUNC_OFFSET(14706, glUniform2uivEXT, glUniform2uivEXT, NULL, 827), - NAME_FUNC_OFFSET(14723, glUniform3uiEXT, glUniform3uiEXT, NULL, 828), - NAME_FUNC_OFFSET(14739, glUniform3uivEXT, glUniform3uivEXT, NULL, 829), - NAME_FUNC_OFFSET(14756, glUniform4uiEXT, glUniform4uiEXT, NULL, 830), - NAME_FUNC_OFFSET(14772, glUniform4uivEXT, glUniform4uivEXT, NULL, 831), - NAME_FUNC_OFFSET(14789, glVertexAttribI1iEXT, glVertexAttribI1iEXT, NULL, 832), - NAME_FUNC_OFFSET(14810, glVertexAttribI1ivEXT, glVertexAttribI1ivEXT, NULL, 833), - NAME_FUNC_OFFSET(14832, glVertexAttribI1uiEXT, glVertexAttribI1uiEXT, NULL, 834), - NAME_FUNC_OFFSET(14854, glVertexAttribI1uivEXT, glVertexAttribI1uivEXT, NULL, 835), - NAME_FUNC_OFFSET(14877, glVertexAttribI2iEXT, glVertexAttribI2iEXT, NULL, 836), - NAME_FUNC_OFFSET(14898, glVertexAttribI2ivEXT, glVertexAttribI2ivEXT, NULL, 837), - NAME_FUNC_OFFSET(14920, glVertexAttribI2uiEXT, glVertexAttribI2uiEXT, NULL, 838), - NAME_FUNC_OFFSET(14942, glVertexAttribI2uivEXT, glVertexAttribI2uivEXT, NULL, 839), - NAME_FUNC_OFFSET(14965, glVertexAttribI3iEXT, glVertexAttribI3iEXT, NULL, 840), - NAME_FUNC_OFFSET(14986, glVertexAttribI3ivEXT, glVertexAttribI3ivEXT, NULL, 841), - NAME_FUNC_OFFSET(15008, glVertexAttribI3uiEXT, glVertexAttribI3uiEXT, NULL, 842), - NAME_FUNC_OFFSET(15030, glVertexAttribI3uivEXT, glVertexAttribI3uivEXT, NULL, 843), - NAME_FUNC_OFFSET(15053, glVertexAttribI4bvEXT, glVertexAttribI4bvEXT, NULL, 844), - NAME_FUNC_OFFSET(15075, glVertexAttribI4iEXT, glVertexAttribI4iEXT, NULL, 845), - NAME_FUNC_OFFSET(15096, glVertexAttribI4ivEXT, glVertexAttribI4ivEXT, NULL, 846), - NAME_FUNC_OFFSET(15118, glVertexAttribI4svEXT, glVertexAttribI4svEXT, NULL, 847), - NAME_FUNC_OFFSET(15140, glVertexAttribI4ubvEXT, glVertexAttribI4ubvEXT, NULL, 848), - NAME_FUNC_OFFSET(15163, glVertexAttribI4uiEXT, glVertexAttribI4uiEXT, NULL, 849), - NAME_FUNC_OFFSET(15185, glVertexAttribI4uivEXT, glVertexAttribI4uivEXT, NULL, 850), - NAME_FUNC_OFFSET(15208, glVertexAttribI4usvEXT, glVertexAttribI4usvEXT, NULL, 851), - NAME_FUNC_OFFSET(15231, glVertexAttribIPointerEXT, glVertexAttribIPointerEXT, NULL, 852), - NAME_FUNC_OFFSET(15257, glFramebufferTextureLayerEXT, glFramebufferTextureLayerEXT, NULL, 853), - NAME_FUNC_OFFSET(15286, glColorMaskIndexedEXT, glColorMaskIndexedEXT, NULL, 854), - NAME_FUNC_OFFSET(15308, glDisableIndexedEXT, glDisableIndexedEXT, NULL, 855), - NAME_FUNC_OFFSET(15328, glEnableIndexedEXT, glEnableIndexedEXT, NULL, 856), - NAME_FUNC_OFFSET(15347, glGetBooleanIndexedvEXT, glGetBooleanIndexedvEXT, NULL, 857), - NAME_FUNC_OFFSET(15371, glGetIntegerIndexedvEXT, glGetIntegerIndexedvEXT, NULL, 858), - NAME_FUNC_OFFSET(15395, glIsEnabledIndexedEXT, glIsEnabledIndexedEXT, NULL, 859), - NAME_FUNC_OFFSET(15417, glClearColorIiEXT, glClearColorIiEXT, NULL, 860), - NAME_FUNC_OFFSET(15435, glClearColorIuiEXT, glClearColorIuiEXT, NULL, 861), - NAME_FUNC_OFFSET(15454, glGetTexParameterIivEXT, glGetTexParameterIivEXT, NULL, 862), - NAME_FUNC_OFFSET(15478, glGetTexParameterIuivEXT, glGetTexParameterIuivEXT, NULL, 863), - NAME_FUNC_OFFSET(15503, glTexParameterIivEXT, glTexParameterIivEXT, NULL, 864), - NAME_FUNC_OFFSET(15524, glTexParameterIuivEXT, glTexParameterIuivEXT, NULL, 865), - NAME_FUNC_OFFSET(15546, glBeginConditionalRenderNV, glBeginConditionalRenderNV, NULL, 866), - NAME_FUNC_OFFSET(15573, glEndConditionalRenderNV, glEndConditionalRenderNV, NULL, 867), - NAME_FUNC_OFFSET(15598, glBeginTransformFeedbackEXT, glBeginTransformFeedbackEXT, NULL, 868), - NAME_FUNC_OFFSET(15626, glBindBufferBaseEXT, glBindBufferBaseEXT, NULL, 869), - NAME_FUNC_OFFSET(15646, glBindBufferOffsetEXT, glBindBufferOffsetEXT, NULL, 870), - NAME_FUNC_OFFSET(15668, glBindBufferRangeEXT, glBindBufferRangeEXT, NULL, 871), - NAME_FUNC_OFFSET(15689, glEndTransformFeedbackEXT, glEndTransformFeedbackEXT, NULL, 872), - NAME_FUNC_OFFSET(15715, glGetTransformFeedbackVaryingEXT, glGetTransformFeedbackVaryingEXT, NULL, 873), - NAME_FUNC_OFFSET(15748, glTransformFeedbackVaryingsEXT, glTransformFeedbackVaryingsEXT, NULL, 874), - NAME_FUNC_OFFSET(15779, glProvokingVertexEXT, glProvokingVertexEXT, NULL, 875), - NAME_FUNC_OFFSET(15800, gl_dispatch_stub_876, gl_dispatch_stub_876, NULL, 876), - NAME_FUNC_OFFSET(15831, gl_dispatch_stub_877, gl_dispatch_stub_877, NULL, 877), - NAME_FUNC_OFFSET(15851, glGetObjectParameterivAPPLE, glGetObjectParameterivAPPLE, NULL, 878), - NAME_FUNC_OFFSET(15879, glObjectPurgeableAPPLE, glObjectPurgeableAPPLE, NULL, 879), - NAME_FUNC_OFFSET(15902, glObjectUnpurgeableAPPLE, glObjectUnpurgeableAPPLE, NULL, 880), - NAME_FUNC_OFFSET(15927, glActiveProgramEXT, glActiveProgramEXT, NULL, 881), - NAME_FUNC_OFFSET(15946, glCreateShaderProgramEXT, glCreateShaderProgramEXT, NULL, 882), - NAME_FUNC_OFFSET(15971, glUseShaderProgramEXT, glUseShaderProgramEXT, NULL, 883), - NAME_FUNC_OFFSET(15993, glTextureBarrierNV, glTextureBarrierNV, NULL, 884), - NAME_FUNC_OFFSET(16012, gl_dispatch_stub_885, gl_dispatch_stub_885, NULL, 885), - NAME_FUNC_OFFSET(16037, gl_dispatch_stub_886, gl_dispatch_stub_886, NULL, 886), - NAME_FUNC_OFFSET(16066, gl_dispatch_stub_887, gl_dispatch_stub_887, NULL, 887), - NAME_FUNC_OFFSET(16097, gl_dispatch_stub_888, gl_dispatch_stub_888, NULL, 888), - NAME_FUNC_OFFSET(16121, gl_dispatch_stub_889, gl_dispatch_stub_889, NULL, 889), - NAME_FUNC_OFFSET(16146, glEGLImageTargetRenderbufferStorageOES, glEGLImageTargetRenderbufferStorageOES, NULL, 890), - NAME_FUNC_OFFSET(16185, glEGLImageTargetTexture2DOES, glEGLImageTargetTexture2DOES, NULL, 891), - NAME_FUNC_OFFSET(16214, glArrayElement, glArrayElement, NULL, 306), - NAME_FUNC_OFFSET(16232, glBindTexture, glBindTexture, NULL, 307), - NAME_FUNC_OFFSET(16249, glDrawArrays, glDrawArrays, NULL, 310), - NAME_FUNC_OFFSET(16265, glAreTexturesResident, glAreTexturesResidentEXT, glAreTexturesResidentEXT, 322), - NAME_FUNC_OFFSET(16290, glCopyTexImage1D, glCopyTexImage1D, NULL, 323), - NAME_FUNC_OFFSET(16310, glCopyTexImage2D, glCopyTexImage2D, NULL, 324), - NAME_FUNC_OFFSET(16330, glCopyTexSubImage1D, glCopyTexSubImage1D, NULL, 325), - NAME_FUNC_OFFSET(16353, glCopyTexSubImage2D, glCopyTexSubImage2D, NULL, 326), - NAME_FUNC_OFFSET(16376, glDeleteTextures, glDeleteTexturesEXT, glDeleteTexturesEXT, 327), - NAME_FUNC_OFFSET(16396, glGenTextures, glGenTexturesEXT, glGenTexturesEXT, 328), - NAME_FUNC_OFFSET(16413, glGetPointerv, glGetPointerv, NULL, 329), - NAME_FUNC_OFFSET(16430, glIsTexture, glIsTextureEXT, glIsTextureEXT, 330), - NAME_FUNC_OFFSET(16445, glPrioritizeTextures, glPrioritizeTextures, NULL, 331), - NAME_FUNC_OFFSET(16469, glTexSubImage1D, glTexSubImage1D, NULL, 332), - NAME_FUNC_OFFSET(16488, glTexSubImage2D, glTexSubImage2D, NULL, 333), - NAME_FUNC_OFFSET(16507, glBlendColor, glBlendColor, NULL, 336), - NAME_FUNC_OFFSET(16523, glBlendEquation, glBlendEquation, NULL, 337), - NAME_FUNC_OFFSET(16542, glDrawRangeElements, glDrawRangeElements, NULL, 338), - NAME_FUNC_OFFSET(16565, glColorTable, glColorTable, NULL, 339), + NAME_FUNC_OFFSET(11910, gl_dispatch_stub_700, gl_dispatch_stub_700, NULL, 700), + NAME_FUNC_OFFSET(11924, gl_dispatch_stub_701, gl_dispatch_stub_701, NULL, 701), + NAME_FUNC_OFFSET(11939, gl_dispatch_stub_702, gl_dispatch_stub_702, NULL, 702), + NAME_FUNC_OFFSET(11951, gl_dispatch_stub_703, gl_dispatch_stub_703, NULL, 703), + NAME_FUNC_OFFSET(11964, gl_dispatch_stub_704, gl_dispatch_stub_704, NULL, 704), + NAME_FUNC_OFFSET(11978, glAreProgramsResidentNV, glAreProgramsResidentNV, NULL, 705), + NAME_FUNC_OFFSET(12002, glBindProgramNV, glBindProgramNV, NULL, 706), + NAME_FUNC_OFFSET(12018, glDeleteProgramsNV, glDeleteProgramsNV, NULL, 707), + NAME_FUNC_OFFSET(12037, glExecuteProgramNV, glExecuteProgramNV, NULL, 708), + NAME_FUNC_OFFSET(12056, glGenProgramsNV, glGenProgramsNV, NULL, 709), + NAME_FUNC_OFFSET(12072, glGetProgramParameterdvNV, glGetProgramParameterdvNV, NULL, 710), + NAME_FUNC_OFFSET(12098, glGetProgramParameterfvNV, glGetProgramParameterfvNV, NULL, 711), + NAME_FUNC_OFFSET(12124, glGetProgramStringNV, glGetProgramStringNV, NULL, 712), + NAME_FUNC_OFFSET(12145, glGetProgramivNV, glGetProgramivNV, NULL, 713), + NAME_FUNC_OFFSET(12162, glGetTrackMatrixivNV, glGetTrackMatrixivNV, NULL, 714), + NAME_FUNC_OFFSET(12183, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, 715), + NAME_FUNC_OFFSET(12211, glGetVertexAttribdvNV, glGetVertexAttribdvNV, NULL, 716), + NAME_FUNC_OFFSET(12233, glGetVertexAttribfvNV, glGetVertexAttribfvNV, NULL, 717), + NAME_FUNC_OFFSET(12255, glGetVertexAttribivNV, glGetVertexAttribivNV, NULL, 718), + NAME_FUNC_OFFSET(12277, glIsProgramNV, glIsProgramNV, NULL, 719), + NAME_FUNC_OFFSET(12291, glLoadProgramNV, glLoadProgramNV, NULL, 720), + NAME_FUNC_OFFSET(12307, glProgramParameters4dvNV, glProgramParameters4dvNV, NULL, 721), + NAME_FUNC_OFFSET(12332, glProgramParameters4fvNV, glProgramParameters4fvNV, NULL, 722), + NAME_FUNC_OFFSET(12357, glRequestResidentProgramsNV, glRequestResidentProgramsNV, NULL, 723), + NAME_FUNC_OFFSET(12385, glTrackMatrixNV, glTrackMatrixNV, NULL, 724), + NAME_FUNC_OFFSET(12401, glVertexAttrib1dNV, glVertexAttrib1dNV, NULL, 725), + NAME_FUNC_OFFSET(12420, glVertexAttrib1dvNV, glVertexAttrib1dvNV, NULL, 726), + NAME_FUNC_OFFSET(12440, glVertexAttrib1fNV, glVertexAttrib1fNV, NULL, 727), + NAME_FUNC_OFFSET(12459, glVertexAttrib1fvNV, glVertexAttrib1fvNV, NULL, 728), + NAME_FUNC_OFFSET(12479, glVertexAttrib1sNV, glVertexAttrib1sNV, NULL, 729), + NAME_FUNC_OFFSET(12498, glVertexAttrib1svNV, glVertexAttrib1svNV, NULL, 730), + NAME_FUNC_OFFSET(12518, glVertexAttrib2dNV, glVertexAttrib2dNV, NULL, 731), + NAME_FUNC_OFFSET(12537, glVertexAttrib2dvNV, glVertexAttrib2dvNV, NULL, 732), + NAME_FUNC_OFFSET(12557, glVertexAttrib2fNV, glVertexAttrib2fNV, NULL, 733), + NAME_FUNC_OFFSET(12576, glVertexAttrib2fvNV, glVertexAttrib2fvNV, NULL, 734), + NAME_FUNC_OFFSET(12596, glVertexAttrib2sNV, glVertexAttrib2sNV, NULL, 735), + NAME_FUNC_OFFSET(12615, glVertexAttrib2svNV, glVertexAttrib2svNV, NULL, 736), + NAME_FUNC_OFFSET(12635, glVertexAttrib3dNV, glVertexAttrib3dNV, NULL, 737), + NAME_FUNC_OFFSET(12654, glVertexAttrib3dvNV, glVertexAttrib3dvNV, NULL, 738), + NAME_FUNC_OFFSET(12674, glVertexAttrib3fNV, glVertexAttrib3fNV, NULL, 739), + NAME_FUNC_OFFSET(12693, glVertexAttrib3fvNV, glVertexAttrib3fvNV, NULL, 740), + NAME_FUNC_OFFSET(12713, glVertexAttrib3sNV, glVertexAttrib3sNV, NULL, 741), + NAME_FUNC_OFFSET(12732, glVertexAttrib3svNV, glVertexAttrib3svNV, NULL, 742), + NAME_FUNC_OFFSET(12752, glVertexAttrib4dNV, glVertexAttrib4dNV, NULL, 743), + NAME_FUNC_OFFSET(12771, glVertexAttrib4dvNV, glVertexAttrib4dvNV, NULL, 744), + NAME_FUNC_OFFSET(12791, glVertexAttrib4fNV, glVertexAttrib4fNV, NULL, 745), + NAME_FUNC_OFFSET(12810, glVertexAttrib4fvNV, glVertexAttrib4fvNV, NULL, 746), + NAME_FUNC_OFFSET(12830, glVertexAttrib4sNV, glVertexAttrib4sNV, NULL, 747), + NAME_FUNC_OFFSET(12849, glVertexAttrib4svNV, glVertexAttrib4svNV, NULL, 748), + NAME_FUNC_OFFSET(12869, glVertexAttrib4ubNV, glVertexAttrib4ubNV, NULL, 749), + NAME_FUNC_OFFSET(12889, glVertexAttrib4ubvNV, glVertexAttrib4ubvNV, NULL, 750), + NAME_FUNC_OFFSET(12910, glVertexAttribPointerNV, glVertexAttribPointerNV, NULL, 751), + NAME_FUNC_OFFSET(12934, glVertexAttribs1dvNV, glVertexAttribs1dvNV, NULL, 752), + NAME_FUNC_OFFSET(12955, glVertexAttribs1fvNV, glVertexAttribs1fvNV, NULL, 753), + NAME_FUNC_OFFSET(12976, glVertexAttribs1svNV, glVertexAttribs1svNV, NULL, 754), + NAME_FUNC_OFFSET(12997, glVertexAttribs2dvNV, glVertexAttribs2dvNV, NULL, 755), + NAME_FUNC_OFFSET(13018, glVertexAttribs2fvNV, glVertexAttribs2fvNV, NULL, 756), + NAME_FUNC_OFFSET(13039, glVertexAttribs2svNV, glVertexAttribs2svNV, NULL, 757), + NAME_FUNC_OFFSET(13060, glVertexAttribs3dvNV, glVertexAttribs3dvNV, NULL, 758), + NAME_FUNC_OFFSET(13081, glVertexAttribs3fvNV, glVertexAttribs3fvNV, NULL, 759), + NAME_FUNC_OFFSET(13102, glVertexAttribs3svNV, glVertexAttribs3svNV, NULL, 760), + NAME_FUNC_OFFSET(13123, glVertexAttribs4dvNV, glVertexAttribs4dvNV, NULL, 761), + NAME_FUNC_OFFSET(13144, glVertexAttribs4fvNV, glVertexAttribs4fvNV, NULL, 762), + NAME_FUNC_OFFSET(13165, glVertexAttribs4svNV, glVertexAttribs4svNV, NULL, 763), + NAME_FUNC_OFFSET(13186, glVertexAttribs4ubvNV, glVertexAttribs4ubvNV, NULL, 764), + NAME_FUNC_OFFSET(13208, glGetTexBumpParameterfvATI, glGetTexBumpParameterfvATI, NULL, 765), + NAME_FUNC_OFFSET(13235, glGetTexBumpParameterivATI, glGetTexBumpParameterivATI, NULL, 766), + NAME_FUNC_OFFSET(13262, glTexBumpParameterfvATI, glTexBumpParameterfvATI, NULL, 767), + NAME_FUNC_OFFSET(13286, glTexBumpParameterivATI, glTexBumpParameterivATI, NULL, 768), + NAME_FUNC_OFFSET(13310, glAlphaFragmentOp1ATI, glAlphaFragmentOp1ATI, NULL, 769), + NAME_FUNC_OFFSET(13332, glAlphaFragmentOp2ATI, glAlphaFragmentOp2ATI, NULL, 770), + NAME_FUNC_OFFSET(13354, glAlphaFragmentOp3ATI, glAlphaFragmentOp3ATI, NULL, 771), + NAME_FUNC_OFFSET(13376, glBeginFragmentShaderATI, glBeginFragmentShaderATI, NULL, 772), + NAME_FUNC_OFFSET(13401, glBindFragmentShaderATI, glBindFragmentShaderATI, NULL, 773), + NAME_FUNC_OFFSET(13425, glColorFragmentOp1ATI, glColorFragmentOp1ATI, NULL, 774), + NAME_FUNC_OFFSET(13447, glColorFragmentOp2ATI, glColorFragmentOp2ATI, NULL, 775), + NAME_FUNC_OFFSET(13469, glColorFragmentOp3ATI, glColorFragmentOp3ATI, NULL, 776), + NAME_FUNC_OFFSET(13491, glDeleteFragmentShaderATI, glDeleteFragmentShaderATI, NULL, 777), + NAME_FUNC_OFFSET(13517, glEndFragmentShaderATI, glEndFragmentShaderATI, NULL, 778), + NAME_FUNC_OFFSET(13540, glGenFragmentShadersATI, glGenFragmentShadersATI, NULL, 779), + NAME_FUNC_OFFSET(13564, glPassTexCoordATI, glPassTexCoordATI, NULL, 780), + NAME_FUNC_OFFSET(13582, glSampleMapATI, glSampleMapATI, NULL, 781), + NAME_FUNC_OFFSET(13597, glSetFragmentShaderConstantATI, glSetFragmentShaderConstantATI, NULL, 782), + NAME_FUNC_OFFSET(13628, glPointParameteriNV, glPointParameteriNV, NULL, 783), + NAME_FUNC_OFFSET(13648, glPointParameterivNV, glPointParameterivNV, NULL, 784), + NAME_FUNC_OFFSET(13669, gl_dispatch_stub_785, gl_dispatch_stub_785, NULL, 785), + NAME_FUNC_OFFSET(13692, gl_dispatch_stub_786, gl_dispatch_stub_786, NULL, 786), + NAME_FUNC_OFFSET(13715, gl_dispatch_stub_787, gl_dispatch_stub_787, NULL, 787), + NAME_FUNC_OFFSET(13741, gl_dispatch_stub_788, gl_dispatch_stub_788, NULL, 788), + NAME_FUNC_OFFSET(13764, gl_dispatch_stub_789, gl_dispatch_stub_789, NULL, 789), + NAME_FUNC_OFFSET(13785, glGetProgramNamedParameterdvNV, glGetProgramNamedParameterdvNV, NULL, 790), + NAME_FUNC_OFFSET(13816, glGetProgramNamedParameterfvNV, glGetProgramNamedParameterfvNV, NULL, 791), + NAME_FUNC_OFFSET(13847, glProgramNamedParameter4dNV, glProgramNamedParameter4dNV, NULL, 792), + NAME_FUNC_OFFSET(13875, glProgramNamedParameter4dvNV, glProgramNamedParameter4dvNV, NULL, 793), + NAME_FUNC_OFFSET(13904, glProgramNamedParameter4fNV, glProgramNamedParameter4fNV, NULL, 794), + NAME_FUNC_OFFSET(13932, glProgramNamedParameter4fvNV, glProgramNamedParameter4fvNV, NULL, 795), + NAME_FUNC_OFFSET(13961, glPrimitiveRestartIndexNV, glPrimitiveRestartIndexNV, NULL, 796), + NAME_FUNC_OFFSET(13987, glPrimitiveRestartNV, glPrimitiveRestartNV, NULL, 797), + NAME_FUNC_OFFSET(14008, gl_dispatch_stub_798, gl_dispatch_stub_798, NULL, 798), + NAME_FUNC_OFFSET(14025, gl_dispatch_stub_799, gl_dispatch_stub_799, NULL, 799), + NAME_FUNC_OFFSET(14052, glBindFramebufferEXT, glBindFramebufferEXT, NULL, 800), + NAME_FUNC_OFFSET(14073, glBindRenderbufferEXT, glBindRenderbufferEXT, NULL, 801), + NAME_FUNC_OFFSET(14095, glCheckFramebufferStatusEXT, glCheckFramebufferStatusEXT, NULL, 802), + NAME_FUNC_OFFSET(14123, glDeleteFramebuffersEXT, glDeleteFramebuffersEXT, NULL, 803), + NAME_FUNC_OFFSET(14147, glDeleteRenderbuffersEXT, glDeleteRenderbuffersEXT, NULL, 804), + NAME_FUNC_OFFSET(14172, glFramebufferRenderbufferEXT, glFramebufferRenderbufferEXT, NULL, 805), + NAME_FUNC_OFFSET(14201, glFramebufferTexture1DEXT, glFramebufferTexture1DEXT, NULL, 806), + NAME_FUNC_OFFSET(14227, glFramebufferTexture2DEXT, glFramebufferTexture2DEXT, NULL, 807), + NAME_FUNC_OFFSET(14253, glFramebufferTexture3DEXT, glFramebufferTexture3DEXT, NULL, 808), + NAME_FUNC_OFFSET(14279, glGenFramebuffersEXT, glGenFramebuffersEXT, NULL, 809), + NAME_FUNC_OFFSET(14300, glGenRenderbuffersEXT, glGenRenderbuffersEXT, NULL, 810), + NAME_FUNC_OFFSET(14322, glGenerateMipmapEXT, glGenerateMipmapEXT, NULL, 811), + NAME_FUNC_OFFSET(14342, glGetFramebufferAttachmentParameterivEXT, glGetFramebufferAttachmentParameterivEXT, NULL, 812), + NAME_FUNC_OFFSET(14383, glGetRenderbufferParameterivEXT, glGetRenderbufferParameterivEXT, NULL, 813), + NAME_FUNC_OFFSET(14415, glIsFramebufferEXT, glIsFramebufferEXT, NULL, 814), + NAME_FUNC_OFFSET(14434, glIsRenderbufferEXT, glIsRenderbufferEXT, NULL, 815), + NAME_FUNC_OFFSET(14454, glRenderbufferStorageEXT, glRenderbufferStorageEXT, NULL, 816), + NAME_FUNC_OFFSET(14479, gl_dispatch_stub_817, gl_dispatch_stub_817, NULL, 817), + NAME_FUNC_OFFSET(14500, gl_dispatch_stub_818, gl_dispatch_stub_818, NULL, 818), + NAME_FUNC_OFFSET(14524, gl_dispatch_stub_819, gl_dispatch_stub_819, NULL, 819), + NAME_FUNC_OFFSET(14554, glBindFragDataLocationEXT, glBindFragDataLocationEXT, NULL, 820), + NAME_FUNC_OFFSET(14580, glGetFragDataLocationEXT, glGetFragDataLocationEXT, NULL, 821), + NAME_FUNC_OFFSET(14605, glGetUniformuivEXT, glGetUniformuivEXT, NULL, 822), + NAME_FUNC_OFFSET(14624, glGetVertexAttribIivEXT, glGetVertexAttribIivEXT, NULL, 823), + NAME_FUNC_OFFSET(14648, glGetVertexAttribIuivEXT, glGetVertexAttribIuivEXT, NULL, 824), + NAME_FUNC_OFFSET(14673, glUniform1uiEXT, glUniform1uiEXT, NULL, 825), + NAME_FUNC_OFFSET(14689, glUniform1uivEXT, glUniform1uivEXT, NULL, 826), + NAME_FUNC_OFFSET(14706, glUniform2uiEXT, glUniform2uiEXT, NULL, 827), + NAME_FUNC_OFFSET(14722, glUniform2uivEXT, glUniform2uivEXT, NULL, 828), + NAME_FUNC_OFFSET(14739, glUniform3uiEXT, glUniform3uiEXT, NULL, 829), + NAME_FUNC_OFFSET(14755, glUniform3uivEXT, glUniform3uivEXT, NULL, 830), + NAME_FUNC_OFFSET(14772, glUniform4uiEXT, glUniform4uiEXT, NULL, 831), + NAME_FUNC_OFFSET(14788, glUniform4uivEXT, glUniform4uivEXT, NULL, 832), + NAME_FUNC_OFFSET(14805, glVertexAttribI1iEXT, glVertexAttribI1iEXT, NULL, 833), + NAME_FUNC_OFFSET(14826, glVertexAttribI1ivEXT, glVertexAttribI1ivEXT, NULL, 834), + NAME_FUNC_OFFSET(14848, glVertexAttribI1uiEXT, glVertexAttribI1uiEXT, NULL, 835), + NAME_FUNC_OFFSET(14870, glVertexAttribI1uivEXT, glVertexAttribI1uivEXT, NULL, 836), + NAME_FUNC_OFFSET(14893, glVertexAttribI2iEXT, glVertexAttribI2iEXT, NULL, 837), + NAME_FUNC_OFFSET(14914, glVertexAttribI2ivEXT, glVertexAttribI2ivEXT, NULL, 838), + NAME_FUNC_OFFSET(14936, glVertexAttribI2uiEXT, glVertexAttribI2uiEXT, NULL, 839), + NAME_FUNC_OFFSET(14958, glVertexAttribI2uivEXT, glVertexAttribI2uivEXT, NULL, 840), + NAME_FUNC_OFFSET(14981, glVertexAttribI3iEXT, glVertexAttribI3iEXT, NULL, 841), + NAME_FUNC_OFFSET(15002, glVertexAttribI3ivEXT, glVertexAttribI3ivEXT, NULL, 842), + NAME_FUNC_OFFSET(15024, glVertexAttribI3uiEXT, glVertexAttribI3uiEXT, NULL, 843), + NAME_FUNC_OFFSET(15046, glVertexAttribI3uivEXT, glVertexAttribI3uivEXT, NULL, 844), + NAME_FUNC_OFFSET(15069, glVertexAttribI4bvEXT, glVertexAttribI4bvEXT, NULL, 845), + NAME_FUNC_OFFSET(15091, glVertexAttribI4iEXT, glVertexAttribI4iEXT, NULL, 846), + NAME_FUNC_OFFSET(15112, glVertexAttribI4ivEXT, glVertexAttribI4ivEXT, NULL, 847), + NAME_FUNC_OFFSET(15134, glVertexAttribI4svEXT, glVertexAttribI4svEXT, NULL, 848), + NAME_FUNC_OFFSET(15156, glVertexAttribI4ubvEXT, glVertexAttribI4ubvEXT, NULL, 849), + NAME_FUNC_OFFSET(15179, glVertexAttribI4uiEXT, glVertexAttribI4uiEXT, NULL, 850), + NAME_FUNC_OFFSET(15201, glVertexAttribI4uivEXT, glVertexAttribI4uivEXT, NULL, 851), + NAME_FUNC_OFFSET(15224, glVertexAttribI4usvEXT, glVertexAttribI4usvEXT, NULL, 852), + NAME_FUNC_OFFSET(15247, glVertexAttribIPointerEXT, glVertexAttribIPointerEXT, NULL, 853), + NAME_FUNC_OFFSET(15273, glFramebufferTextureLayerEXT, glFramebufferTextureLayerEXT, NULL, 854), + NAME_FUNC_OFFSET(15302, glColorMaskIndexedEXT, glColorMaskIndexedEXT, NULL, 855), + NAME_FUNC_OFFSET(15324, glDisableIndexedEXT, glDisableIndexedEXT, NULL, 856), + NAME_FUNC_OFFSET(15344, glEnableIndexedEXT, glEnableIndexedEXT, NULL, 857), + NAME_FUNC_OFFSET(15363, glGetBooleanIndexedvEXT, glGetBooleanIndexedvEXT, NULL, 858), + NAME_FUNC_OFFSET(15387, glGetIntegerIndexedvEXT, glGetIntegerIndexedvEXT, NULL, 859), + NAME_FUNC_OFFSET(15411, glIsEnabledIndexedEXT, glIsEnabledIndexedEXT, NULL, 860), + NAME_FUNC_OFFSET(15433, glClearColorIiEXT, glClearColorIiEXT, NULL, 861), + NAME_FUNC_OFFSET(15451, glClearColorIuiEXT, glClearColorIuiEXT, NULL, 862), + NAME_FUNC_OFFSET(15470, glGetTexParameterIivEXT, glGetTexParameterIivEXT, NULL, 863), + NAME_FUNC_OFFSET(15494, glGetTexParameterIuivEXT, glGetTexParameterIuivEXT, NULL, 864), + NAME_FUNC_OFFSET(15519, glTexParameterIivEXT, glTexParameterIivEXT, NULL, 865), + NAME_FUNC_OFFSET(15540, glTexParameterIuivEXT, glTexParameterIuivEXT, NULL, 866), + NAME_FUNC_OFFSET(15562, glBeginConditionalRenderNV, glBeginConditionalRenderNV, NULL, 867), + NAME_FUNC_OFFSET(15589, glEndConditionalRenderNV, glEndConditionalRenderNV, NULL, 868), + NAME_FUNC_OFFSET(15614, glBeginTransformFeedbackEXT, glBeginTransformFeedbackEXT, NULL, 869), + NAME_FUNC_OFFSET(15642, glBindBufferBaseEXT, glBindBufferBaseEXT, NULL, 870), + NAME_FUNC_OFFSET(15662, glBindBufferOffsetEXT, glBindBufferOffsetEXT, NULL, 871), + NAME_FUNC_OFFSET(15684, glBindBufferRangeEXT, glBindBufferRangeEXT, NULL, 872), + NAME_FUNC_OFFSET(15705, glEndTransformFeedbackEXT, glEndTransformFeedbackEXT, NULL, 873), + NAME_FUNC_OFFSET(15731, glGetTransformFeedbackVaryingEXT, glGetTransformFeedbackVaryingEXT, NULL, 874), + NAME_FUNC_OFFSET(15764, glTransformFeedbackVaryingsEXT, glTransformFeedbackVaryingsEXT, NULL, 875), + NAME_FUNC_OFFSET(15795, glProvokingVertexEXT, glProvokingVertexEXT, NULL, 876), + NAME_FUNC_OFFSET(15816, gl_dispatch_stub_877, gl_dispatch_stub_877, NULL, 877), + NAME_FUNC_OFFSET(15847, gl_dispatch_stub_878, gl_dispatch_stub_878, NULL, 878), + NAME_FUNC_OFFSET(15867, glGetObjectParameterivAPPLE, glGetObjectParameterivAPPLE, NULL, 879), + NAME_FUNC_OFFSET(15895, glObjectPurgeableAPPLE, glObjectPurgeableAPPLE, NULL, 880), + NAME_FUNC_OFFSET(15918, glObjectUnpurgeableAPPLE, glObjectUnpurgeableAPPLE, NULL, 881), + NAME_FUNC_OFFSET(15943, glActiveProgramEXT, glActiveProgramEXT, NULL, 882), + NAME_FUNC_OFFSET(15962, glCreateShaderProgramEXT, glCreateShaderProgramEXT, NULL, 883), + NAME_FUNC_OFFSET(15987, glUseShaderProgramEXT, glUseShaderProgramEXT, NULL, 884), + NAME_FUNC_OFFSET(16009, glTextureBarrierNV, glTextureBarrierNV, NULL, 885), + NAME_FUNC_OFFSET(16028, gl_dispatch_stub_886, gl_dispatch_stub_886, NULL, 886), + NAME_FUNC_OFFSET(16053, gl_dispatch_stub_887, gl_dispatch_stub_887, NULL, 887), + NAME_FUNC_OFFSET(16082, gl_dispatch_stub_888, gl_dispatch_stub_888, NULL, 888), + NAME_FUNC_OFFSET(16113, gl_dispatch_stub_889, gl_dispatch_stub_889, NULL, 889), + NAME_FUNC_OFFSET(16137, gl_dispatch_stub_890, gl_dispatch_stub_890, NULL, 890), + NAME_FUNC_OFFSET(16162, glEGLImageTargetRenderbufferStorageOES, glEGLImageTargetRenderbufferStorageOES, NULL, 891), + NAME_FUNC_OFFSET(16201, glEGLImageTargetTexture2DOES, glEGLImageTargetTexture2DOES, NULL, 892), + NAME_FUNC_OFFSET(16230, glArrayElement, glArrayElement, NULL, 306), + NAME_FUNC_OFFSET(16248, glBindTexture, glBindTexture, NULL, 307), + NAME_FUNC_OFFSET(16265, glDrawArrays, glDrawArrays, NULL, 310), + NAME_FUNC_OFFSET(16281, glAreTexturesResident, glAreTexturesResidentEXT, glAreTexturesResidentEXT, 322), + NAME_FUNC_OFFSET(16306, glCopyTexImage1D, glCopyTexImage1D, NULL, 323), + NAME_FUNC_OFFSET(16326, glCopyTexImage2D, glCopyTexImage2D, NULL, 324), + NAME_FUNC_OFFSET(16346, glCopyTexSubImage1D, glCopyTexSubImage1D, NULL, 325), + NAME_FUNC_OFFSET(16369, glCopyTexSubImage2D, glCopyTexSubImage2D, NULL, 326), + NAME_FUNC_OFFSET(16392, glDeleteTextures, glDeleteTexturesEXT, glDeleteTexturesEXT, 327), + NAME_FUNC_OFFSET(16412, glGenTextures, glGenTexturesEXT, glGenTexturesEXT, 328), + NAME_FUNC_OFFSET(16429, glGetPointerv, glGetPointerv, NULL, 329), + NAME_FUNC_OFFSET(16446, glIsTexture, glIsTextureEXT, glIsTextureEXT, 330), + NAME_FUNC_OFFSET(16461, glPrioritizeTextures, glPrioritizeTextures, NULL, 331), + NAME_FUNC_OFFSET(16485, glTexSubImage1D, glTexSubImage1D, NULL, 332), + NAME_FUNC_OFFSET(16504, glTexSubImage2D, glTexSubImage2D, NULL, 333), + NAME_FUNC_OFFSET(16523, glBlendColor, glBlendColor, NULL, 336), + NAME_FUNC_OFFSET(16539, glBlendEquation, glBlendEquation, NULL, 337), + NAME_FUNC_OFFSET(16558, glDrawRangeElements, glDrawRangeElements, NULL, 338), NAME_FUNC_OFFSET(16581, glColorTable, glColorTable, NULL, 339), - NAME_FUNC_OFFSET(16597, glColorTableParameterfv, glColorTableParameterfv, NULL, 340), - NAME_FUNC_OFFSET(16624, glColorTableParameteriv, glColorTableParameteriv, NULL, 341), - NAME_FUNC_OFFSET(16651, glCopyColorTable, glCopyColorTable, NULL, 342), - NAME_FUNC_OFFSET(16671, glGetColorTable, glGetColorTableEXT, glGetColorTableEXT, 343), - NAME_FUNC_OFFSET(16690, glGetColorTable, glGetColorTableEXT, glGetColorTableEXT, 343), - NAME_FUNC_OFFSET(16709, glGetColorTableParameterfv, glGetColorTableParameterfvEXT, glGetColorTableParameterfvEXT, 344), - NAME_FUNC_OFFSET(16739, glGetColorTableParameterfv, glGetColorTableParameterfvEXT, glGetColorTableParameterfvEXT, 344), - NAME_FUNC_OFFSET(16769, glGetColorTableParameteriv, glGetColorTableParameterivEXT, glGetColorTableParameterivEXT, 345), - NAME_FUNC_OFFSET(16799, glGetColorTableParameteriv, glGetColorTableParameterivEXT, glGetColorTableParameterivEXT, 345), - NAME_FUNC_OFFSET(16829, glColorSubTable, glColorSubTable, NULL, 346), - NAME_FUNC_OFFSET(16848, glCopyColorSubTable, glCopyColorSubTable, NULL, 347), - NAME_FUNC_OFFSET(16871, glConvolutionFilter1D, glConvolutionFilter1D, NULL, 348), - NAME_FUNC_OFFSET(16896, glConvolutionFilter2D, glConvolutionFilter2D, NULL, 349), - NAME_FUNC_OFFSET(16921, glConvolutionParameterf, glConvolutionParameterf, NULL, 350), - NAME_FUNC_OFFSET(16948, glConvolutionParameterfv, glConvolutionParameterfv, NULL, 351), - NAME_FUNC_OFFSET(16976, glConvolutionParameteri, glConvolutionParameteri, NULL, 352), - NAME_FUNC_OFFSET(17003, glConvolutionParameteriv, glConvolutionParameteriv, NULL, 353), - NAME_FUNC_OFFSET(17031, glCopyConvolutionFilter1D, glCopyConvolutionFilter1D, NULL, 354), - NAME_FUNC_OFFSET(17060, glCopyConvolutionFilter2D, glCopyConvolutionFilter2D, NULL, 355), - NAME_FUNC_OFFSET(17089, glGetConvolutionFilter, gl_dispatch_stub_356, gl_dispatch_stub_356, 356), - NAME_FUNC_OFFSET(17115, glGetConvolutionParameterfv, gl_dispatch_stub_357, gl_dispatch_stub_357, 357), - NAME_FUNC_OFFSET(17146, glGetConvolutionParameteriv, gl_dispatch_stub_358, gl_dispatch_stub_358, 358), - NAME_FUNC_OFFSET(17177, glGetSeparableFilter, gl_dispatch_stub_359, gl_dispatch_stub_359, 359), - NAME_FUNC_OFFSET(17201, glSeparableFilter2D, glSeparableFilter2D, NULL, 360), - NAME_FUNC_OFFSET(17224, glGetHistogram, gl_dispatch_stub_361, gl_dispatch_stub_361, 361), - NAME_FUNC_OFFSET(17242, glGetHistogramParameterfv, gl_dispatch_stub_362, gl_dispatch_stub_362, 362), - NAME_FUNC_OFFSET(17271, glGetHistogramParameteriv, gl_dispatch_stub_363, gl_dispatch_stub_363, 363), - NAME_FUNC_OFFSET(17300, glGetMinmax, gl_dispatch_stub_364, gl_dispatch_stub_364, 364), - NAME_FUNC_OFFSET(17315, glGetMinmaxParameterfv, gl_dispatch_stub_365, gl_dispatch_stub_365, 365), - NAME_FUNC_OFFSET(17341, glGetMinmaxParameteriv, gl_dispatch_stub_366, gl_dispatch_stub_366, 366), - NAME_FUNC_OFFSET(17367, glHistogram, glHistogram, NULL, 367), - NAME_FUNC_OFFSET(17382, glMinmax, glMinmax, NULL, 368), - NAME_FUNC_OFFSET(17394, glResetHistogram, glResetHistogram, NULL, 369), - NAME_FUNC_OFFSET(17414, glResetMinmax, glResetMinmax, NULL, 370), - NAME_FUNC_OFFSET(17431, glTexImage3D, glTexImage3D, NULL, 371), - NAME_FUNC_OFFSET(17447, glTexSubImage3D, glTexSubImage3D, NULL, 372), - NAME_FUNC_OFFSET(17466, glCopyTexSubImage3D, glCopyTexSubImage3D, NULL, 373), - NAME_FUNC_OFFSET(17489, glActiveTextureARB, glActiveTextureARB, NULL, 374), - NAME_FUNC_OFFSET(17505, glClientActiveTextureARB, glClientActiveTextureARB, NULL, 375), - NAME_FUNC_OFFSET(17527, glMultiTexCoord1dARB, glMultiTexCoord1dARB, NULL, 376), - NAME_FUNC_OFFSET(17545, glMultiTexCoord1dvARB, glMultiTexCoord1dvARB, NULL, 377), - NAME_FUNC_OFFSET(17564, glMultiTexCoord1fARB, glMultiTexCoord1fARB, NULL, 378), - NAME_FUNC_OFFSET(17582, glMultiTexCoord1fvARB, glMultiTexCoord1fvARB, NULL, 379), - NAME_FUNC_OFFSET(17601, glMultiTexCoord1iARB, glMultiTexCoord1iARB, NULL, 380), - NAME_FUNC_OFFSET(17619, glMultiTexCoord1ivARB, glMultiTexCoord1ivARB, NULL, 381), - NAME_FUNC_OFFSET(17638, glMultiTexCoord1sARB, glMultiTexCoord1sARB, NULL, 382), - NAME_FUNC_OFFSET(17656, glMultiTexCoord1svARB, glMultiTexCoord1svARB, NULL, 383), - NAME_FUNC_OFFSET(17675, glMultiTexCoord2dARB, glMultiTexCoord2dARB, NULL, 384), - NAME_FUNC_OFFSET(17693, glMultiTexCoord2dvARB, glMultiTexCoord2dvARB, NULL, 385), - NAME_FUNC_OFFSET(17712, glMultiTexCoord2fARB, glMultiTexCoord2fARB, NULL, 386), - NAME_FUNC_OFFSET(17730, glMultiTexCoord2fvARB, glMultiTexCoord2fvARB, NULL, 387), - NAME_FUNC_OFFSET(17749, glMultiTexCoord2iARB, glMultiTexCoord2iARB, NULL, 388), - NAME_FUNC_OFFSET(17767, glMultiTexCoord2ivARB, glMultiTexCoord2ivARB, NULL, 389), - NAME_FUNC_OFFSET(17786, glMultiTexCoord2sARB, glMultiTexCoord2sARB, NULL, 390), - NAME_FUNC_OFFSET(17804, glMultiTexCoord2svARB, glMultiTexCoord2svARB, NULL, 391), - NAME_FUNC_OFFSET(17823, glMultiTexCoord3dARB, glMultiTexCoord3dARB, NULL, 392), - NAME_FUNC_OFFSET(17841, glMultiTexCoord3dvARB, glMultiTexCoord3dvARB, NULL, 393), - NAME_FUNC_OFFSET(17860, glMultiTexCoord3fARB, glMultiTexCoord3fARB, NULL, 394), - NAME_FUNC_OFFSET(17878, glMultiTexCoord3fvARB, glMultiTexCoord3fvARB, NULL, 395), - NAME_FUNC_OFFSET(17897, glMultiTexCoord3iARB, glMultiTexCoord3iARB, NULL, 396), - NAME_FUNC_OFFSET(17915, glMultiTexCoord3ivARB, glMultiTexCoord3ivARB, NULL, 397), - NAME_FUNC_OFFSET(17934, glMultiTexCoord3sARB, glMultiTexCoord3sARB, NULL, 398), - NAME_FUNC_OFFSET(17952, glMultiTexCoord3svARB, glMultiTexCoord3svARB, NULL, 399), - NAME_FUNC_OFFSET(17971, glMultiTexCoord4dARB, glMultiTexCoord4dARB, NULL, 400), - NAME_FUNC_OFFSET(17989, glMultiTexCoord4dvARB, glMultiTexCoord4dvARB, NULL, 401), - NAME_FUNC_OFFSET(18008, glMultiTexCoord4fARB, glMultiTexCoord4fARB, NULL, 402), - NAME_FUNC_OFFSET(18026, glMultiTexCoord4fvARB, glMultiTexCoord4fvARB, NULL, 403), - NAME_FUNC_OFFSET(18045, glMultiTexCoord4iARB, glMultiTexCoord4iARB, NULL, 404), - NAME_FUNC_OFFSET(18063, glMultiTexCoord4ivARB, glMultiTexCoord4ivARB, NULL, 405), - NAME_FUNC_OFFSET(18082, glMultiTexCoord4sARB, glMultiTexCoord4sARB, NULL, 406), - NAME_FUNC_OFFSET(18100, glMultiTexCoord4svARB, glMultiTexCoord4svARB, NULL, 407), - NAME_FUNC_OFFSET(18119, glStencilOpSeparate, glStencilOpSeparate, NULL, 423), - NAME_FUNC_OFFSET(18142, glLoadTransposeMatrixdARB, glLoadTransposeMatrixdARB, NULL, 441), - NAME_FUNC_OFFSET(18165, glLoadTransposeMatrixfARB, glLoadTransposeMatrixfARB, NULL, 442), - NAME_FUNC_OFFSET(18188, glMultTransposeMatrixdARB, glMultTransposeMatrixdARB, NULL, 443), - NAME_FUNC_OFFSET(18211, glMultTransposeMatrixfARB, glMultTransposeMatrixfARB, NULL, 444), - NAME_FUNC_OFFSET(18234, glSampleCoverageARB, glSampleCoverageARB, NULL, 445), - NAME_FUNC_OFFSET(18251, glCompressedTexImage1DARB, glCompressedTexImage1DARB, NULL, 446), - NAME_FUNC_OFFSET(18274, glCompressedTexImage2DARB, glCompressedTexImage2DARB, NULL, 447), - NAME_FUNC_OFFSET(18297, glCompressedTexImage3DARB, glCompressedTexImage3DARB, NULL, 448), - NAME_FUNC_OFFSET(18320, glCompressedTexSubImage1DARB, glCompressedTexSubImage1DARB, NULL, 449), - NAME_FUNC_OFFSET(18346, glCompressedTexSubImage2DARB, glCompressedTexSubImage2DARB, NULL, 450), - NAME_FUNC_OFFSET(18372, glCompressedTexSubImage3DARB, glCompressedTexSubImage3DARB, NULL, 451), - NAME_FUNC_OFFSET(18398, glGetCompressedTexImageARB, glGetCompressedTexImageARB, NULL, 452), - NAME_FUNC_OFFSET(18422, glDisableVertexAttribArrayARB, glDisableVertexAttribArrayARB, NULL, 453), - NAME_FUNC_OFFSET(18449, glEnableVertexAttribArrayARB, glEnableVertexAttribArrayARB, NULL, 454), - NAME_FUNC_OFFSET(18475, glGetVertexAttribdvARB, glGetVertexAttribdvARB, NULL, 461), - NAME_FUNC_OFFSET(18495, glGetVertexAttribfvARB, glGetVertexAttribfvARB, NULL, 462), - NAME_FUNC_OFFSET(18515, glGetVertexAttribivARB, glGetVertexAttribivARB, NULL, 463), - NAME_FUNC_OFFSET(18535, glProgramEnvParameter4dARB, glProgramEnvParameter4dARB, NULL, 464), - NAME_FUNC_OFFSET(18558, glProgramEnvParameter4dvARB, glProgramEnvParameter4dvARB, NULL, 465), - NAME_FUNC_OFFSET(18582, glProgramEnvParameter4fARB, glProgramEnvParameter4fARB, NULL, 466), - NAME_FUNC_OFFSET(18605, glProgramEnvParameter4fvARB, glProgramEnvParameter4fvARB, NULL, 467), - NAME_FUNC_OFFSET(18629, glVertexAttrib1dARB, glVertexAttrib1dARB, NULL, 473), - NAME_FUNC_OFFSET(18646, glVertexAttrib1dvARB, glVertexAttrib1dvARB, NULL, 474), - NAME_FUNC_OFFSET(18664, glVertexAttrib1fARB, glVertexAttrib1fARB, NULL, 475), - NAME_FUNC_OFFSET(18681, glVertexAttrib1fvARB, glVertexAttrib1fvARB, NULL, 476), - NAME_FUNC_OFFSET(18699, glVertexAttrib1sARB, glVertexAttrib1sARB, NULL, 477), - NAME_FUNC_OFFSET(18716, glVertexAttrib1svARB, glVertexAttrib1svARB, NULL, 478), - NAME_FUNC_OFFSET(18734, glVertexAttrib2dARB, glVertexAttrib2dARB, NULL, 479), - NAME_FUNC_OFFSET(18751, glVertexAttrib2dvARB, glVertexAttrib2dvARB, NULL, 480), - NAME_FUNC_OFFSET(18769, glVertexAttrib2fARB, glVertexAttrib2fARB, NULL, 481), - NAME_FUNC_OFFSET(18786, glVertexAttrib2fvARB, glVertexAttrib2fvARB, NULL, 482), - NAME_FUNC_OFFSET(18804, glVertexAttrib2sARB, glVertexAttrib2sARB, NULL, 483), - NAME_FUNC_OFFSET(18821, glVertexAttrib2svARB, glVertexAttrib2svARB, NULL, 484), - NAME_FUNC_OFFSET(18839, glVertexAttrib3dARB, glVertexAttrib3dARB, NULL, 485), - NAME_FUNC_OFFSET(18856, glVertexAttrib3dvARB, glVertexAttrib3dvARB, NULL, 486), - NAME_FUNC_OFFSET(18874, glVertexAttrib3fARB, glVertexAttrib3fARB, NULL, 487), - NAME_FUNC_OFFSET(18891, glVertexAttrib3fvARB, glVertexAttrib3fvARB, NULL, 488), - NAME_FUNC_OFFSET(18909, glVertexAttrib3sARB, glVertexAttrib3sARB, NULL, 489), - NAME_FUNC_OFFSET(18926, glVertexAttrib3svARB, glVertexAttrib3svARB, NULL, 490), - NAME_FUNC_OFFSET(18944, glVertexAttrib4NbvARB, glVertexAttrib4NbvARB, NULL, 491), - NAME_FUNC_OFFSET(18963, glVertexAttrib4NivARB, glVertexAttrib4NivARB, NULL, 492), - NAME_FUNC_OFFSET(18982, glVertexAttrib4NsvARB, glVertexAttrib4NsvARB, NULL, 493), - NAME_FUNC_OFFSET(19001, glVertexAttrib4NubARB, glVertexAttrib4NubARB, NULL, 494), - NAME_FUNC_OFFSET(19020, glVertexAttrib4NubvARB, glVertexAttrib4NubvARB, NULL, 495), - NAME_FUNC_OFFSET(19040, glVertexAttrib4NuivARB, glVertexAttrib4NuivARB, NULL, 496), - NAME_FUNC_OFFSET(19060, glVertexAttrib4NusvARB, glVertexAttrib4NusvARB, NULL, 497), - NAME_FUNC_OFFSET(19080, glVertexAttrib4bvARB, glVertexAttrib4bvARB, NULL, 498), - NAME_FUNC_OFFSET(19098, glVertexAttrib4dARB, glVertexAttrib4dARB, NULL, 499), - NAME_FUNC_OFFSET(19115, glVertexAttrib4dvARB, glVertexAttrib4dvARB, NULL, 500), - NAME_FUNC_OFFSET(19133, glVertexAttrib4fARB, glVertexAttrib4fARB, NULL, 501), - NAME_FUNC_OFFSET(19150, glVertexAttrib4fvARB, glVertexAttrib4fvARB, NULL, 502), - NAME_FUNC_OFFSET(19168, glVertexAttrib4ivARB, glVertexAttrib4ivARB, NULL, 503), - NAME_FUNC_OFFSET(19186, glVertexAttrib4sARB, glVertexAttrib4sARB, NULL, 504), - NAME_FUNC_OFFSET(19203, glVertexAttrib4svARB, glVertexAttrib4svARB, NULL, 505), - NAME_FUNC_OFFSET(19221, glVertexAttrib4ubvARB, glVertexAttrib4ubvARB, NULL, 506), - NAME_FUNC_OFFSET(19240, glVertexAttrib4uivARB, glVertexAttrib4uivARB, NULL, 507), - NAME_FUNC_OFFSET(19259, glVertexAttrib4usvARB, glVertexAttrib4usvARB, NULL, 508), - NAME_FUNC_OFFSET(19278, glVertexAttribPointerARB, glVertexAttribPointerARB, NULL, 509), - NAME_FUNC_OFFSET(19300, glBindBufferARB, glBindBufferARB, NULL, 510), - NAME_FUNC_OFFSET(19313, glBufferDataARB, glBufferDataARB, NULL, 511), - NAME_FUNC_OFFSET(19326, glBufferSubDataARB, glBufferSubDataARB, NULL, 512), - NAME_FUNC_OFFSET(19342, glDeleteBuffersARB, glDeleteBuffersARB, NULL, 513), - NAME_FUNC_OFFSET(19358, glGenBuffersARB, glGenBuffersARB, NULL, 514), - NAME_FUNC_OFFSET(19371, glGetBufferParameterivARB, glGetBufferParameterivARB, NULL, 515), - NAME_FUNC_OFFSET(19394, glGetBufferPointervARB, glGetBufferPointervARB, NULL, 516), - NAME_FUNC_OFFSET(19414, glGetBufferSubDataARB, glGetBufferSubDataARB, NULL, 517), - NAME_FUNC_OFFSET(19433, glIsBufferARB, glIsBufferARB, NULL, 518), - NAME_FUNC_OFFSET(19444, glMapBufferARB, glMapBufferARB, NULL, 519), - NAME_FUNC_OFFSET(19456, glUnmapBufferARB, glUnmapBufferARB, NULL, 520), - NAME_FUNC_OFFSET(19470, glBeginQueryARB, glBeginQueryARB, NULL, 521), - NAME_FUNC_OFFSET(19483, glDeleteQueriesARB, glDeleteQueriesARB, NULL, 522), - NAME_FUNC_OFFSET(19499, glEndQueryARB, glEndQueryARB, NULL, 523), - NAME_FUNC_OFFSET(19510, glGenQueriesARB, glGenQueriesARB, NULL, 524), - NAME_FUNC_OFFSET(19523, glGetQueryObjectivARB, glGetQueryObjectivARB, NULL, 525), - NAME_FUNC_OFFSET(19542, glGetQueryObjectuivARB, glGetQueryObjectuivARB, NULL, 526), - NAME_FUNC_OFFSET(19562, glGetQueryivARB, glGetQueryivARB, NULL, 527), - NAME_FUNC_OFFSET(19575, glIsQueryARB, glIsQueryARB, NULL, 528), - NAME_FUNC_OFFSET(19585, glCompileShaderARB, glCompileShaderARB, NULL, 530), - NAME_FUNC_OFFSET(19601, glGetActiveUniformARB, glGetActiveUniformARB, NULL, 535), - NAME_FUNC_OFFSET(19620, glGetShaderSourceARB, glGetShaderSourceARB, NULL, 541), - NAME_FUNC_OFFSET(19638, glGetUniformLocationARB, glGetUniformLocationARB, NULL, 542), - NAME_FUNC_OFFSET(19659, glGetUniformfvARB, glGetUniformfvARB, NULL, 543), - NAME_FUNC_OFFSET(19674, glGetUniformivARB, glGetUniformivARB, NULL, 544), - NAME_FUNC_OFFSET(19689, glLinkProgramARB, glLinkProgramARB, NULL, 545), - NAME_FUNC_OFFSET(19703, glShaderSourceARB, glShaderSourceARB, NULL, 546), - NAME_FUNC_OFFSET(19718, glUniform1fARB, glUniform1fARB, NULL, 547), - NAME_FUNC_OFFSET(19730, glUniform1fvARB, glUniform1fvARB, NULL, 548), - NAME_FUNC_OFFSET(19743, glUniform1iARB, glUniform1iARB, NULL, 549), - NAME_FUNC_OFFSET(19755, glUniform1ivARB, glUniform1ivARB, NULL, 550), - NAME_FUNC_OFFSET(19768, glUniform2fARB, glUniform2fARB, NULL, 551), - NAME_FUNC_OFFSET(19780, glUniform2fvARB, glUniform2fvARB, NULL, 552), - NAME_FUNC_OFFSET(19793, glUniform2iARB, glUniform2iARB, NULL, 553), - NAME_FUNC_OFFSET(19805, glUniform2ivARB, glUniform2ivARB, NULL, 554), - NAME_FUNC_OFFSET(19818, glUniform3fARB, glUniform3fARB, NULL, 555), - NAME_FUNC_OFFSET(19830, glUniform3fvARB, glUniform3fvARB, NULL, 556), - NAME_FUNC_OFFSET(19843, glUniform3iARB, glUniform3iARB, NULL, 557), - NAME_FUNC_OFFSET(19855, glUniform3ivARB, glUniform3ivARB, NULL, 558), - NAME_FUNC_OFFSET(19868, glUniform4fARB, glUniform4fARB, NULL, 559), - NAME_FUNC_OFFSET(19880, glUniform4fvARB, glUniform4fvARB, NULL, 560), - NAME_FUNC_OFFSET(19893, glUniform4iARB, glUniform4iARB, NULL, 561), - NAME_FUNC_OFFSET(19905, glUniform4ivARB, glUniform4ivARB, NULL, 562), - NAME_FUNC_OFFSET(19918, glUniformMatrix2fvARB, glUniformMatrix2fvARB, NULL, 563), - NAME_FUNC_OFFSET(19937, glUniformMatrix3fvARB, glUniformMatrix3fvARB, NULL, 564), - NAME_FUNC_OFFSET(19956, glUniformMatrix4fvARB, glUniformMatrix4fvARB, NULL, 565), - NAME_FUNC_OFFSET(19975, glUseProgramObjectARB, glUseProgramObjectARB, NULL, 566), - NAME_FUNC_OFFSET(19988, glValidateProgramARB, glValidateProgramARB, NULL, 567), - NAME_FUNC_OFFSET(20006, glBindAttribLocationARB, glBindAttribLocationARB, NULL, 568), - NAME_FUNC_OFFSET(20027, glGetActiveAttribARB, glGetActiveAttribARB, NULL, 569), - NAME_FUNC_OFFSET(20045, glGetAttribLocationARB, glGetAttribLocationARB, NULL, 570), - NAME_FUNC_OFFSET(20065, glDrawBuffersARB, glDrawBuffersARB, NULL, 571), - NAME_FUNC_OFFSET(20079, glDrawBuffersARB, glDrawBuffersARB, NULL, 571), - NAME_FUNC_OFFSET(20096, glDrawArraysInstancedARB, glDrawArraysInstancedARB, NULL, 572), - NAME_FUNC_OFFSET(20121, glDrawArraysInstancedARB, glDrawArraysInstancedARB, NULL, 572), - NAME_FUNC_OFFSET(20143, glDrawElementsInstancedARB, glDrawElementsInstancedARB, NULL, 573), - NAME_FUNC_OFFSET(20170, glDrawElementsInstancedARB, glDrawElementsInstancedARB, NULL, 573), - NAME_FUNC_OFFSET(20194, glRenderbufferStorageMultisample, glRenderbufferStorageMultisample, NULL, 574), - NAME_FUNC_OFFSET(20230, gl_dispatch_stub_617, gl_dispatch_stub_617, NULL, 617), + NAME_FUNC_OFFSET(16597, glColorTable, glColorTable, NULL, 339), + NAME_FUNC_OFFSET(16613, glColorTableParameterfv, glColorTableParameterfv, NULL, 340), + NAME_FUNC_OFFSET(16640, glColorTableParameteriv, glColorTableParameteriv, NULL, 341), + NAME_FUNC_OFFSET(16667, glCopyColorTable, glCopyColorTable, NULL, 342), + NAME_FUNC_OFFSET(16687, glGetColorTable, glGetColorTableEXT, glGetColorTableEXT, 343), + NAME_FUNC_OFFSET(16706, glGetColorTable, glGetColorTableEXT, glGetColorTableEXT, 343), + NAME_FUNC_OFFSET(16725, glGetColorTableParameterfv, glGetColorTableParameterfvEXT, glGetColorTableParameterfvEXT, 344), + NAME_FUNC_OFFSET(16755, glGetColorTableParameterfv, glGetColorTableParameterfvEXT, glGetColorTableParameterfvEXT, 344), + NAME_FUNC_OFFSET(16785, glGetColorTableParameteriv, glGetColorTableParameterivEXT, glGetColorTableParameterivEXT, 345), + NAME_FUNC_OFFSET(16815, glGetColorTableParameteriv, glGetColorTableParameterivEXT, glGetColorTableParameterivEXT, 345), + NAME_FUNC_OFFSET(16845, glColorSubTable, glColorSubTable, NULL, 346), + NAME_FUNC_OFFSET(16864, glCopyColorSubTable, glCopyColorSubTable, NULL, 347), + NAME_FUNC_OFFSET(16887, glConvolutionFilter1D, glConvolutionFilter1D, NULL, 348), + NAME_FUNC_OFFSET(16912, glConvolutionFilter2D, glConvolutionFilter2D, NULL, 349), + NAME_FUNC_OFFSET(16937, glConvolutionParameterf, glConvolutionParameterf, NULL, 350), + NAME_FUNC_OFFSET(16964, glConvolutionParameterfv, glConvolutionParameterfv, NULL, 351), + NAME_FUNC_OFFSET(16992, glConvolutionParameteri, glConvolutionParameteri, NULL, 352), + NAME_FUNC_OFFSET(17019, glConvolutionParameteriv, glConvolutionParameteriv, NULL, 353), + NAME_FUNC_OFFSET(17047, glCopyConvolutionFilter1D, glCopyConvolutionFilter1D, NULL, 354), + NAME_FUNC_OFFSET(17076, glCopyConvolutionFilter2D, glCopyConvolutionFilter2D, NULL, 355), + NAME_FUNC_OFFSET(17105, glGetConvolutionFilter, gl_dispatch_stub_356, gl_dispatch_stub_356, 356), + NAME_FUNC_OFFSET(17131, glGetConvolutionParameterfv, gl_dispatch_stub_357, gl_dispatch_stub_357, 357), + NAME_FUNC_OFFSET(17162, glGetConvolutionParameteriv, gl_dispatch_stub_358, gl_dispatch_stub_358, 358), + NAME_FUNC_OFFSET(17193, glGetSeparableFilter, gl_dispatch_stub_359, gl_dispatch_stub_359, 359), + NAME_FUNC_OFFSET(17217, glSeparableFilter2D, glSeparableFilter2D, NULL, 360), + NAME_FUNC_OFFSET(17240, glGetHistogram, gl_dispatch_stub_361, gl_dispatch_stub_361, 361), + NAME_FUNC_OFFSET(17258, glGetHistogramParameterfv, gl_dispatch_stub_362, gl_dispatch_stub_362, 362), + NAME_FUNC_OFFSET(17287, glGetHistogramParameteriv, gl_dispatch_stub_363, gl_dispatch_stub_363, 363), + NAME_FUNC_OFFSET(17316, glGetMinmax, gl_dispatch_stub_364, gl_dispatch_stub_364, 364), + NAME_FUNC_OFFSET(17331, glGetMinmaxParameterfv, gl_dispatch_stub_365, gl_dispatch_stub_365, 365), + NAME_FUNC_OFFSET(17357, glGetMinmaxParameteriv, gl_dispatch_stub_366, gl_dispatch_stub_366, 366), + NAME_FUNC_OFFSET(17383, glHistogram, glHistogram, NULL, 367), + NAME_FUNC_OFFSET(17398, glMinmax, glMinmax, NULL, 368), + NAME_FUNC_OFFSET(17410, glResetHistogram, glResetHistogram, NULL, 369), + NAME_FUNC_OFFSET(17430, glResetMinmax, glResetMinmax, NULL, 370), + NAME_FUNC_OFFSET(17447, glTexImage3D, glTexImage3D, NULL, 371), + NAME_FUNC_OFFSET(17463, glTexSubImage3D, glTexSubImage3D, NULL, 372), + NAME_FUNC_OFFSET(17482, glCopyTexSubImage3D, glCopyTexSubImage3D, NULL, 373), + NAME_FUNC_OFFSET(17505, glActiveTextureARB, glActiveTextureARB, NULL, 374), + NAME_FUNC_OFFSET(17521, glClientActiveTextureARB, glClientActiveTextureARB, NULL, 375), + NAME_FUNC_OFFSET(17543, glMultiTexCoord1dARB, glMultiTexCoord1dARB, NULL, 376), + NAME_FUNC_OFFSET(17561, glMultiTexCoord1dvARB, glMultiTexCoord1dvARB, NULL, 377), + NAME_FUNC_OFFSET(17580, glMultiTexCoord1fARB, glMultiTexCoord1fARB, NULL, 378), + NAME_FUNC_OFFSET(17598, glMultiTexCoord1fvARB, glMultiTexCoord1fvARB, NULL, 379), + NAME_FUNC_OFFSET(17617, glMultiTexCoord1iARB, glMultiTexCoord1iARB, NULL, 380), + NAME_FUNC_OFFSET(17635, glMultiTexCoord1ivARB, glMultiTexCoord1ivARB, NULL, 381), + NAME_FUNC_OFFSET(17654, glMultiTexCoord1sARB, glMultiTexCoord1sARB, NULL, 382), + NAME_FUNC_OFFSET(17672, glMultiTexCoord1svARB, glMultiTexCoord1svARB, NULL, 383), + NAME_FUNC_OFFSET(17691, glMultiTexCoord2dARB, glMultiTexCoord2dARB, NULL, 384), + NAME_FUNC_OFFSET(17709, glMultiTexCoord2dvARB, glMultiTexCoord2dvARB, NULL, 385), + NAME_FUNC_OFFSET(17728, glMultiTexCoord2fARB, glMultiTexCoord2fARB, NULL, 386), + NAME_FUNC_OFFSET(17746, glMultiTexCoord2fvARB, glMultiTexCoord2fvARB, NULL, 387), + NAME_FUNC_OFFSET(17765, glMultiTexCoord2iARB, glMultiTexCoord2iARB, NULL, 388), + NAME_FUNC_OFFSET(17783, glMultiTexCoord2ivARB, glMultiTexCoord2ivARB, NULL, 389), + NAME_FUNC_OFFSET(17802, glMultiTexCoord2sARB, glMultiTexCoord2sARB, NULL, 390), + NAME_FUNC_OFFSET(17820, glMultiTexCoord2svARB, glMultiTexCoord2svARB, NULL, 391), + NAME_FUNC_OFFSET(17839, glMultiTexCoord3dARB, glMultiTexCoord3dARB, NULL, 392), + NAME_FUNC_OFFSET(17857, glMultiTexCoord3dvARB, glMultiTexCoord3dvARB, NULL, 393), + NAME_FUNC_OFFSET(17876, glMultiTexCoord3fARB, glMultiTexCoord3fARB, NULL, 394), + NAME_FUNC_OFFSET(17894, glMultiTexCoord3fvARB, glMultiTexCoord3fvARB, NULL, 395), + NAME_FUNC_OFFSET(17913, glMultiTexCoord3iARB, glMultiTexCoord3iARB, NULL, 396), + NAME_FUNC_OFFSET(17931, glMultiTexCoord3ivARB, glMultiTexCoord3ivARB, NULL, 397), + NAME_FUNC_OFFSET(17950, glMultiTexCoord3sARB, glMultiTexCoord3sARB, NULL, 398), + NAME_FUNC_OFFSET(17968, glMultiTexCoord3svARB, glMultiTexCoord3svARB, NULL, 399), + NAME_FUNC_OFFSET(17987, glMultiTexCoord4dARB, glMultiTexCoord4dARB, NULL, 400), + NAME_FUNC_OFFSET(18005, glMultiTexCoord4dvARB, glMultiTexCoord4dvARB, NULL, 401), + NAME_FUNC_OFFSET(18024, glMultiTexCoord4fARB, glMultiTexCoord4fARB, NULL, 402), + NAME_FUNC_OFFSET(18042, glMultiTexCoord4fvARB, glMultiTexCoord4fvARB, NULL, 403), + NAME_FUNC_OFFSET(18061, glMultiTexCoord4iARB, glMultiTexCoord4iARB, NULL, 404), + NAME_FUNC_OFFSET(18079, glMultiTexCoord4ivARB, glMultiTexCoord4ivARB, NULL, 405), + NAME_FUNC_OFFSET(18098, glMultiTexCoord4sARB, glMultiTexCoord4sARB, NULL, 406), + NAME_FUNC_OFFSET(18116, glMultiTexCoord4svARB, glMultiTexCoord4svARB, NULL, 407), + NAME_FUNC_OFFSET(18135, glStencilOpSeparate, glStencilOpSeparate, NULL, 423), + NAME_FUNC_OFFSET(18158, glLoadTransposeMatrixdARB, glLoadTransposeMatrixdARB, NULL, 441), + NAME_FUNC_OFFSET(18181, glLoadTransposeMatrixfARB, glLoadTransposeMatrixfARB, NULL, 442), + NAME_FUNC_OFFSET(18204, glMultTransposeMatrixdARB, glMultTransposeMatrixdARB, NULL, 443), + NAME_FUNC_OFFSET(18227, glMultTransposeMatrixfARB, glMultTransposeMatrixfARB, NULL, 444), + NAME_FUNC_OFFSET(18250, glSampleCoverageARB, glSampleCoverageARB, NULL, 445), + NAME_FUNC_OFFSET(18267, glCompressedTexImage1DARB, glCompressedTexImage1DARB, NULL, 446), + NAME_FUNC_OFFSET(18290, glCompressedTexImage2DARB, glCompressedTexImage2DARB, NULL, 447), + NAME_FUNC_OFFSET(18313, glCompressedTexImage3DARB, glCompressedTexImage3DARB, NULL, 448), + NAME_FUNC_OFFSET(18336, glCompressedTexSubImage1DARB, glCompressedTexSubImage1DARB, NULL, 449), + NAME_FUNC_OFFSET(18362, glCompressedTexSubImage2DARB, glCompressedTexSubImage2DARB, NULL, 450), + NAME_FUNC_OFFSET(18388, glCompressedTexSubImage3DARB, glCompressedTexSubImage3DARB, NULL, 451), + NAME_FUNC_OFFSET(18414, glGetCompressedTexImageARB, glGetCompressedTexImageARB, NULL, 452), + NAME_FUNC_OFFSET(18438, glDisableVertexAttribArrayARB, glDisableVertexAttribArrayARB, NULL, 453), + NAME_FUNC_OFFSET(18465, glEnableVertexAttribArrayARB, glEnableVertexAttribArrayARB, NULL, 454), + NAME_FUNC_OFFSET(18491, glGetVertexAttribdvARB, glGetVertexAttribdvARB, NULL, 461), + NAME_FUNC_OFFSET(18511, glGetVertexAttribfvARB, glGetVertexAttribfvARB, NULL, 462), + NAME_FUNC_OFFSET(18531, glGetVertexAttribivARB, glGetVertexAttribivARB, NULL, 463), + NAME_FUNC_OFFSET(18551, glProgramEnvParameter4dARB, glProgramEnvParameter4dARB, NULL, 464), + NAME_FUNC_OFFSET(18574, glProgramEnvParameter4dvARB, glProgramEnvParameter4dvARB, NULL, 465), + NAME_FUNC_OFFSET(18598, glProgramEnvParameter4fARB, glProgramEnvParameter4fARB, NULL, 466), + NAME_FUNC_OFFSET(18621, glProgramEnvParameter4fvARB, glProgramEnvParameter4fvARB, NULL, 467), + NAME_FUNC_OFFSET(18645, glVertexAttrib1dARB, glVertexAttrib1dARB, NULL, 473), + NAME_FUNC_OFFSET(18662, glVertexAttrib1dvARB, glVertexAttrib1dvARB, NULL, 474), + NAME_FUNC_OFFSET(18680, glVertexAttrib1fARB, glVertexAttrib1fARB, NULL, 475), + NAME_FUNC_OFFSET(18697, glVertexAttrib1fvARB, glVertexAttrib1fvARB, NULL, 476), + NAME_FUNC_OFFSET(18715, glVertexAttrib1sARB, glVertexAttrib1sARB, NULL, 477), + NAME_FUNC_OFFSET(18732, glVertexAttrib1svARB, glVertexAttrib1svARB, NULL, 478), + NAME_FUNC_OFFSET(18750, glVertexAttrib2dARB, glVertexAttrib2dARB, NULL, 479), + NAME_FUNC_OFFSET(18767, glVertexAttrib2dvARB, glVertexAttrib2dvARB, NULL, 480), + NAME_FUNC_OFFSET(18785, glVertexAttrib2fARB, glVertexAttrib2fARB, NULL, 481), + NAME_FUNC_OFFSET(18802, glVertexAttrib2fvARB, glVertexAttrib2fvARB, NULL, 482), + NAME_FUNC_OFFSET(18820, glVertexAttrib2sARB, glVertexAttrib2sARB, NULL, 483), + NAME_FUNC_OFFSET(18837, glVertexAttrib2svARB, glVertexAttrib2svARB, NULL, 484), + NAME_FUNC_OFFSET(18855, glVertexAttrib3dARB, glVertexAttrib3dARB, NULL, 485), + NAME_FUNC_OFFSET(18872, glVertexAttrib3dvARB, glVertexAttrib3dvARB, NULL, 486), + NAME_FUNC_OFFSET(18890, glVertexAttrib3fARB, glVertexAttrib3fARB, NULL, 487), + NAME_FUNC_OFFSET(18907, glVertexAttrib3fvARB, glVertexAttrib3fvARB, NULL, 488), + NAME_FUNC_OFFSET(18925, glVertexAttrib3sARB, glVertexAttrib3sARB, NULL, 489), + NAME_FUNC_OFFSET(18942, glVertexAttrib3svARB, glVertexAttrib3svARB, NULL, 490), + NAME_FUNC_OFFSET(18960, glVertexAttrib4NbvARB, glVertexAttrib4NbvARB, NULL, 491), + NAME_FUNC_OFFSET(18979, glVertexAttrib4NivARB, glVertexAttrib4NivARB, NULL, 492), + NAME_FUNC_OFFSET(18998, glVertexAttrib4NsvARB, glVertexAttrib4NsvARB, NULL, 493), + NAME_FUNC_OFFSET(19017, glVertexAttrib4NubARB, glVertexAttrib4NubARB, NULL, 494), + NAME_FUNC_OFFSET(19036, glVertexAttrib4NubvARB, glVertexAttrib4NubvARB, NULL, 495), + NAME_FUNC_OFFSET(19056, glVertexAttrib4NuivARB, glVertexAttrib4NuivARB, NULL, 496), + NAME_FUNC_OFFSET(19076, glVertexAttrib4NusvARB, glVertexAttrib4NusvARB, NULL, 497), + NAME_FUNC_OFFSET(19096, glVertexAttrib4bvARB, glVertexAttrib4bvARB, NULL, 498), + NAME_FUNC_OFFSET(19114, glVertexAttrib4dARB, glVertexAttrib4dARB, NULL, 499), + NAME_FUNC_OFFSET(19131, glVertexAttrib4dvARB, glVertexAttrib4dvARB, NULL, 500), + NAME_FUNC_OFFSET(19149, glVertexAttrib4fARB, glVertexAttrib4fARB, NULL, 501), + NAME_FUNC_OFFSET(19166, glVertexAttrib4fvARB, glVertexAttrib4fvARB, NULL, 502), + NAME_FUNC_OFFSET(19184, glVertexAttrib4ivARB, glVertexAttrib4ivARB, NULL, 503), + NAME_FUNC_OFFSET(19202, glVertexAttrib4sARB, glVertexAttrib4sARB, NULL, 504), + NAME_FUNC_OFFSET(19219, glVertexAttrib4svARB, glVertexAttrib4svARB, NULL, 505), + NAME_FUNC_OFFSET(19237, glVertexAttrib4ubvARB, glVertexAttrib4ubvARB, NULL, 506), + NAME_FUNC_OFFSET(19256, glVertexAttrib4uivARB, glVertexAttrib4uivARB, NULL, 507), + NAME_FUNC_OFFSET(19275, glVertexAttrib4usvARB, glVertexAttrib4usvARB, NULL, 508), + NAME_FUNC_OFFSET(19294, glVertexAttribPointerARB, glVertexAttribPointerARB, NULL, 509), + NAME_FUNC_OFFSET(19316, glBindBufferARB, glBindBufferARB, NULL, 510), + NAME_FUNC_OFFSET(19329, glBufferDataARB, glBufferDataARB, NULL, 511), + NAME_FUNC_OFFSET(19342, glBufferSubDataARB, glBufferSubDataARB, NULL, 512), + NAME_FUNC_OFFSET(19358, glDeleteBuffersARB, glDeleteBuffersARB, NULL, 513), + NAME_FUNC_OFFSET(19374, glGenBuffersARB, glGenBuffersARB, NULL, 514), + NAME_FUNC_OFFSET(19387, glGetBufferParameterivARB, glGetBufferParameterivARB, NULL, 515), + NAME_FUNC_OFFSET(19410, glGetBufferPointervARB, glGetBufferPointervARB, NULL, 516), + NAME_FUNC_OFFSET(19430, glGetBufferSubDataARB, glGetBufferSubDataARB, NULL, 517), + NAME_FUNC_OFFSET(19449, glIsBufferARB, glIsBufferARB, NULL, 518), + NAME_FUNC_OFFSET(19460, glMapBufferARB, glMapBufferARB, NULL, 519), + NAME_FUNC_OFFSET(19472, glUnmapBufferARB, glUnmapBufferARB, NULL, 520), + NAME_FUNC_OFFSET(19486, glBeginQueryARB, glBeginQueryARB, NULL, 521), + NAME_FUNC_OFFSET(19499, glDeleteQueriesARB, glDeleteQueriesARB, NULL, 522), + NAME_FUNC_OFFSET(19515, glEndQueryARB, glEndQueryARB, NULL, 523), + NAME_FUNC_OFFSET(19526, glGenQueriesARB, glGenQueriesARB, NULL, 524), + NAME_FUNC_OFFSET(19539, glGetQueryObjectivARB, glGetQueryObjectivARB, NULL, 525), + NAME_FUNC_OFFSET(19558, glGetQueryObjectuivARB, glGetQueryObjectuivARB, NULL, 526), + NAME_FUNC_OFFSET(19578, glGetQueryivARB, glGetQueryivARB, NULL, 527), + NAME_FUNC_OFFSET(19591, glIsQueryARB, glIsQueryARB, NULL, 528), + NAME_FUNC_OFFSET(19601, glCompileShaderARB, glCompileShaderARB, NULL, 530), + NAME_FUNC_OFFSET(19617, glGetActiveUniformARB, glGetActiveUniformARB, NULL, 535), + NAME_FUNC_OFFSET(19636, glGetShaderSourceARB, glGetShaderSourceARB, NULL, 541), + NAME_FUNC_OFFSET(19654, glGetUniformLocationARB, glGetUniformLocationARB, NULL, 542), + NAME_FUNC_OFFSET(19675, glGetUniformfvARB, glGetUniformfvARB, NULL, 543), + NAME_FUNC_OFFSET(19690, glGetUniformivARB, glGetUniformivARB, NULL, 544), + NAME_FUNC_OFFSET(19705, glLinkProgramARB, glLinkProgramARB, NULL, 545), + NAME_FUNC_OFFSET(19719, glShaderSourceARB, glShaderSourceARB, NULL, 546), + NAME_FUNC_OFFSET(19734, glUniform1fARB, glUniform1fARB, NULL, 547), + NAME_FUNC_OFFSET(19746, glUniform1fvARB, glUniform1fvARB, NULL, 548), + NAME_FUNC_OFFSET(19759, glUniform1iARB, glUniform1iARB, NULL, 549), + NAME_FUNC_OFFSET(19771, glUniform1ivARB, glUniform1ivARB, NULL, 550), + NAME_FUNC_OFFSET(19784, glUniform2fARB, glUniform2fARB, NULL, 551), + NAME_FUNC_OFFSET(19796, glUniform2fvARB, glUniform2fvARB, NULL, 552), + NAME_FUNC_OFFSET(19809, glUniform2iARB, glUniform2iARB, NULL, 553), + NAME_FUNC_OFFSET(19821, glUniform2ivARB, glUniform2ivARB, NULL, 554), + NAME_FUNC_OFFSET(19834, glUniform3fARB, glUniform3fARB, NULL, 555), + NAME_FUNC_OFFSET(19846, glUniform3fvARB, glUniform3fvARB, NULL, 556), + NAME_FUNC_OFFSET(19859, glUniform3iARB, glUniform3iARB, NULL, 557), + NAME_FUNC_OFFSET(19871, glUniform3ivARB, glUniform3ivARB, NULL, 558), + NAME_FUNC_OFFSET(19884, glUniform4fARB, glUniform4fARB, NULL, 559), + NAME_FUNC_OFFSET(19896, glUniform4fvARB, glUniform4fvARB, NULL, 560), + NAME_FUNC_OFFSET(19909, glUniform4iARB, glUniform4iARB, NULL, 561), + NAME_FUNC_OFFSET(19921, glUniform4ivARB, glUniform4ivARB, NULL, 562), + NAME_FUNC_OFFSET(19934, glUniformMatrix2fvARB, glUniformMatrix2fvARB, NULL, 563), + NAME_FUNC_OFFSET(19953, glUniformMatrix3fvARB, glUniformMatrix3fvARB, NULL, 564), + NAME_FUNC_OFFSET(19972, glUniformMatrix4fvARB, glUniformMatrix4fvARB, NULL, 565), + NAME_FUNC_OFFSET(19991, glUseProgramObjectARB, glUseProgramObjectARB, NULL, 566), + NAME_FUNC_OFFSET(20004, glValidateProgramARB, glValidateProgramARB, NULL, 567), + NAME_FUNC_OFFSET(20022, glBindAttribLocationARB, glBindAttribLocationARB, NULL, 568), + NAME_FUNC_OFFSET(20043, glGetActiveAttribARB, glGetActiveAttribARB, NULL, 569), + NAME_FUNC_OFFSET(20061, glGetAttribLocationARB, glGetAttribLocationARB, NULL, 570), + NAME_FUNC_OFFSET(20081, glDrawBuffersARB, glDrawBuffersARB, NULL, 571), + NAME_FUNC_OFFSET(20095, glDrawBuffersARB, glDrawBuffersARB, NULL, 571), + NAME_FUNC_OFFSET(20112, glDrawArraysInstancedARB, glDrawArraysInstancedARB, NULL, 573), + NAME_FUNC_OFFSET(20137, glDrawArraysInstancedARB, glDrawArraysInstancedARB, NULL, 573), + NAME_FUNC_OFFSET(20159, glDrawElementsInstancedARB, glDrawElementsInstancedARB, NULL, 574), + NAME_FUNC_OFFSET(20186, glDrawElementsInstancedARB, glDrawElementsInstancedARB, NULL, 574), + NAME_FUNC_OFFSET(20210, glRenderbufferStorageMultisample, glRenderbufferStorageMultisample, NULL, 575), NAME_FUNC_OFFSET(20246, gl_dispatch_stub_618, gl_dispatch_stub_618, NULL, 618), - NAME_FUNC_OFFSET(20265, glPointParameterfEXT, glPointParameterfEXT, NULL, 625), - NAME_FUNC_OFFSET(20283, glPointParameterfEXT, glPointParameterfEXT, NULL, 625), - NAME_FUNC_OFFSET(20304, glPointParameterfEXT, glPointParameterfEXT, NULL, 625), - NAME_FUNC_OFFSET(20326, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 626), - NAME_FUNC_OFFSET(20345, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 626), - NAME_FUNC_OFFSET(20367, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 626), - NAME_FUNC_OFFSET(20390, glSecondaryColor3bEXT, glSecondaryColor3bEXT, NULL, 629), - NAME_FUNC_OFFSET(20409, glSecondaryColor3bvEXT, glSecondaryColor3bvEXT, NULL, 630), - NAME_FUNC_OFFSET(20429, glSecondaryColor3dEXT, glSecondaryColor3dEXT, NULL, 631), - NAME_FUNC_OFFSET(20448, glSecondaryColor3dvEXT, glSecondaryColor3dvEXT, NULL, 632), - NAME_FUNC_OFFSET(20468, glSecondaryColor3fEXT, glSecondaryColor3fEXT, NULL, 633), - NAME_FUNC_OFFSET(20487, glSecondaryColor3fvEXT, glSecondaryColor3fvEXT, NULL, 634), - NAME_FUNC_OFFSET(20507, glSecondaryColor3iEXT, glSecondaryColor3iEXT, NULL, 635), - NAME_FUNC_OFFSET(20526, glSecondaryColor3ivEXT, glSecondaryColor3ivEXT, NULL, 636), - NAME_FUNC_OFFSET(20546, glSecondaryColor3sEXT, glSecondaryColor3sEXT, NULL, 637), - NAME_FUNC_OFFSET(20565, glSecondaryColor3svEXT, glSecondaryColor3svEXT, NULL, 638), - NAME_FUNC_OFFSET(20585, glSecondaryColor3ubEXT, glSecondaryColor3ubEXT, NULL, 639), - NAME_FUNC_OFFSET(20605, glSecondaryColor3ubvEXT, glSecondaryColor3ubvEXT, NULL, 640), - NAME_FUNC_OFFSET(20626, glSecondaryColor3uiEXT, glSecondaryColor3uiEXT, NULL, 641), - NAME_FUNC_OFFSET(20646, glSecondaryColor3uivEXT, glSecondaryColor3uivEXT, NULL, 642), - NAME_FUNC_OFFSET(20667, glSecondaryColor3usEXT, glSecondaryColor3usEXT, NULL, 643), - NAME_FUNC_OFFSET(20687, glSecondaryColor3usvEXT, glSecondaryColor3usvEXT, NULL, 644), - NAME_FUNC_OFFSET(20708, glSecondaryColorPointerEXT, glSecondaryColorPointerEXT, NULL, 645), - NAME_FUNC_OFFSET(20732, glMultiDrawArraysEXT, glMultiDrawArraysEXT, NULL, 646), - NAME_FUNC_OFFSET(20750, glMultiDrawElementsEXT, glMultiDrawElementsEXT, NULL, 647), - NAME_FUNC_OFFSET(20770, glFogCoordPointerEXT, glFogCoordPointerEXT, NULL, 648), - NAME_FUNC_OFFSET(20788, glFogCoorddEXT, glFogCoorddEXT, NULL, 649), - NAME_FUNC_OFFSET(20800, glFogCoorddvEXT, glFogCoorddvEXT, NULL, 650), - NAME_FUNC_OFFSET(20813, glFogCoordfEXT, glFogCoordfEXT, NULL, 651), - NAME_FUNC_OFFSET(20825, glFogCoordfvEXT, glFogCoordfvEXT, NULL, 652), - NAME_FUNC_OFFSET(20838, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, 654), - NAME_FUNC_OFFSET(20858, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, 654), - NAME_FUNC_OFFSET(20882, glWindowPos2dMESA, glWindowPos2dMESA, NULL, 671), - NAME_FUNC_OFFSET(20896, glWindowPos2dMESA, glWindowPos2dMESA, NULL, 671), - NAME_FUNC_OFFSET(20913, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, 672), - NAME_FUNC_OFFSET(20928, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, 672), - NAME_FUNC_OFFSET(20946, glWindowPos2fMESA, glWindowPos2fMESA, NULL, 673), - NAME_FUNC_OFFSET(20960, glWindowPos2fMESA, glWindowPos2fMESA, NULL, 673), - NAME_FUNC_OFFSET(20977, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, 674), - NAME_FUNC_OFFSET(20992, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, 674), - NAME_FUNC_OFFSET(21010, glWindowPos2iMESA, glWindowPos2iMESA, NULL, 675), - NAME_FUNC_OFFSET(21024, glWindowPos2iMESA, glWindowPos2iMESA, NULL, 675), - NAME_FUNC_OFFSET(21041, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, 676), - NAME_FUNC_OFFSET(21056, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, 676), - NAME_FUNC_OFFSET(21074, glWindowPos2sMESA, glWindowPos2sMESA, NULL, 677), - NAME_FUNC_OFFSET(21088, glWindowPos2sMESA, glWindowPos2sMESA, NULL, 677), - NAME_FUNC_OFFSET(21105, glWindowPos2svMESA, glWindowPos2svMESA, NULL, 678), - NAME_FUNC_OFFSET(21120, glWindowPos2svMESA, glWindowPos2svMESA, NULL, 678), - NAME_FUNC_OFFSET(21138, glWindowPos3dMESA, glWindowPos3dMESA, NULL, 679), - NAME_FUNC_OFFSET(21152, glWindowPos3dMESA, glWindowPos3dMESA, NULL, 679), - NAME_FUNC_OFFSET(21169, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, 680), - NAME_FUNC_OFFSET(21184, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, 680), - NAME_FUNC_OFFSET(21202, glWindowPos3fMESA, glWindowPos3fMESA, NULL, 681), - NAME_FUNC_OFFSET(21216, glWindowPos3fMESA, glWindowPos3fMESA, NULL, 681), - NAME_FUNC_OFFSET(21233, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, 682), - NAME_FUNC_OFFSET(21248, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, 682), - NAME_FUNC_OFFSET(21266, glWindowPos3iMESA, glWindowPos3iMESA, NULL, 683), - NAME_FUNC_OFFSET(21280, glWindowPos3iMESA, glWindowPos3iMESA, NULL, 683), - NAME_FUNC_OFFSET(21297, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, 684), - NAME_FUNC_OFFSET(21312, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, 684), - NAME_FUNC_OFFSET(21330, glWindowPos3sMESA, glWindowPos3sMESA, NULL, 685), - NAME_FUNC_OFFSET(21344, glWindowPos3sMESA, glWindowPos3sMESA, NULL, 685), - NAME_FUNC_OFFSET(21361, glWindowPos3svMESA, glWindowPos3svMESA, NULL, 686), - NAME_FUNC_OFFSET(21376, glWindowPos3svMESA, glWindowPos3svMESA, NULL, 686), - NAME_FUNC_OFFSET(21394, glBindProgramNV, glBindProgramNV, NULL, 705), - NAME_FUNC_OFFSET(21411, glDeleteProgramsNV, glDeleteProgramsNV, NULL, 706), - NAME_FUNC_OFFSET(21431, glGenProgramsNV, glGenProgramsNV, NULL, 708), - NAME_FUNC_OFFSET(21448, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, 714), - NAME_FUNC_OFFSET(21474, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, 714), - NAME_FUNC_OFFSET(21503, glIsProgramNV, glIsProgramNV, NULL, 718), - NAME_FUNC_OFFSET(21518, glPointParameteriNV, glPointParameteriNV, NULL, 782), - NAME_FUNC_OFFSET(21536, glPointParameterivNV, glPointParameterivNV, NULL, 783), - NAME_FUNC_OFFSET(21555, gl_dispatch_stub_786, gl_dispatch_stub_786, NULL, 786), - NAME_FUNC_OFFSET(21576, gl_dispatch_stub_788, gl_dispatch_stub_788, NULL, 788), - NAME_FUNC_OFFSET(21592, glPrimitiveRestartIndexNV, glPrimitiveRestartIndexNV, NULL, 795), - NAME_FUNC_OFFSET(21616, gl_dispatch_stub_798, gl_dispatch_stub_798, NULL, 798), - NAME_FUNC_OFFSET(21640, gl_dispatch_stub_798, gl_dispatch_stub_798, NULL, 798), - NAME_FUNC_OFFSET(21667, glBindFramebufferEXT, glBindFramebufferEXT, NULL, 799), - NAME_FUNC_OFFSET(21685, glBindRenderbufferEXT, glBindRenderbufferEXT, NULL, 800), - NAME_FUNC_OFFSET(21704, glCheckFramebufferStatusEXT, glCheckFramebufferStatusEXT, NULL, 801), - NAME_FUNC_OFFSET(21729, glDeleteFramebuffersEXT, glDeleteFramebuffersEXT, NULL, 802), - NAME_FUNC_OFFSET(21750, glDeleteRenderbuffersEXT, glDeleteRenderbuffersEXT, NULL, 803), - NAME_FUNC_OFFSET(21772, glFramebufferRenderbufferEXT, glFramebufferRenderbufferEXT, NULL, 804), - NAME_FUNC_OFFSET(21798, glFramebufferTexture1DEXT, glFramebufferTexture1DEXT, NULL, 805), - NAME_FUNC_OFFSET(21821, glFramebufferTexture2DEXT, glFramebufferTexture2DEXT, NULL, 806), - NAME_FUNC_OFFSET(21844, glFramebufferTexture3DEXT, glFramebufferTexture3DEXT, NULL, 807), - NAME_FUNC_OFFSET(21867, glGenFramebuffersEXT, glGenFramebuffersEXT, NULL, 808), - NAME_FUNC_OFFSET(21885, glGenRenderbuffersEXT, glGenRenderbuffersEXT, NULL, 809), - NAME_FUNC_OFFSET(21904, glGenerateMipmapEXT, glGenerateMipmapEXT, NULL, 810), - NAME_FUNC_OFFSET(21921, glGetFramebufferAttachmentParameterivEXT, glGetFramebufferAttachmentParameterivEXT, NULL, 811), - NAME_FUNC_OFFSET(21959, glGetRenderbufferParameterivEXT, glGetRenderbufferParameterivEXT, NULL, 812), - NAME_FUNC_OFFSET(21988, glIsFramebufferEXT, glIsFramebufferEXT, NULL, 813), - NAME_FUNC_OFFSET(22004, glIsRenderbufferEXT, glIsRenderbufferEXT, NULL, 814), - NAME_FUNC_OFFSET(22021, glRenderbufferStorageEXT, glRenderbufferStorageEXT, NULL, 815), - NAME_FUNC_OFFSET(22043, gl_dispatch_stub_816, gl_dispatch_stub_816, NULL, 816), - NAME_FUNC_OFFSET(22061, glBindFragDataLocationEXT, glBindFragDataLocationEXT, NULL, 819), - NAME_FUNC_OFFSET(22084, glGetFragDataLocationEXT, glGetFragDataLocationEXT, NULL, 820), - NAME_FUNC_OFFSET(22106, glGetUniformuivEXT, glGetUniformuivEXT, NULL, 821), - NAME_FUNC_OFFSET(22122, glGetVertexAttribIivEXT, glGetVertexAttribIivEXT, NULL, 822), - NAME_FUNC_OFFSET(22143, glGetVertexAttribIuivEXT, glGetVertexAttribIuivEXT, NULL, 823), - NAME_FUNC_OFFSET(22165, glUniform1uiEXT, glUniform1uiEXT, NULL, 824), - NAME_FUNC_OFFSET(22178, glUniform1uivEXT, glUniform1uivEXT, NULL, 825), - NAME_FUNC_OFFSET(22192, glUniform2uiEXT, glUniform2uiEXT, NULL, 826), - NAME_FUNC_OFFSET(22205, glUniform2uivEXT, glUniform2uivEXT, NULL, 827), - NAME_FUNC_OFFSET(22219, glUniform3uiEXT, glUniform3uiEXT, NULL, 828), - NAME_FUNC_OFFSET(22232, glUniform3uivEXT, glUniform3uivEXT, NULL, 829), - NAME_FUNC_OFFSET(22246, glUniform4uiEXT, glUniform4uiEXT, NULL, 830), - NAME_FUNC_OFFSET(22259, glUniform4uivEXT, glUniform4uivEXT, NULL, 831), - NAME_FUNC_OFFSET(22273, glVertexAttribI1iEXT, glVertexAttribI1iEXT, NULL, 832), - NAME_FUNC_OFFSET(22291, glVertexAttribI1ivEXT, glVertexAttribI1ivEXT, NULL, 833), - NAME_FUNC_OFFSET(22310, glVertexAttribI1uiEXT, glVertexAttribI1uiEXT, NULL, 834), - NAME_FUNC_OFFSET(22329, glVertexAttribI1uivEXT, glVertexAttribI1uivEXT, NULL, 835), - NAME_FUNC_OFFSET(22349, glVertexAttribI2iEXT, glVertexAttribI2iEXT, NULL, 836), - NAME_FUNC_OFFSET(22367, glVertexAttribI2ivEXT, glVertexAttribI2ivEXT, NULL, 837), - NAME_FUNC_OFFSET(22386, glVertexAttribI2uiEXT, glVertexAttribI2uiEXT, NULL, 838), - NAME_FUNC_OFFSET(22405, glVertexAttribI2uivEXT, glVertexAttribI2uivEXT, NULL, 839), - NAME_FUNC_OFFSET(22425, glVertexAttribI3iEXT, glVertexAttribI3iEXT, NULL, 840), - NAME_FUNC_OFFSET(22443, glVertexAttribI3ivEXT, glVertexAttribI3ivEXT, NULL, 841), - NAME_FUNC_OFFSET(22462, glVertexAttribI3uiEXT, glVertexAttribI3uiEXT, NULL, 842), - NAME_FUNC_OFFSET(22481, glVertexAttribI3uivEXT, glVertexAttribI3uivEXT, NULL, 843), - NAME_FUNC_OFFSET(22501, glVertexAttribI4bvEXT, glVertexAttribI4bvEXT, NULL, 844), - NAME_FUNC_OFFSET(22520, glVertexAttribI4iEXT, glVertexAttribI4iEXT, NULL, 845), - NAME_FUNC_OFFSET(22538, glVertexAttribI4ivEXT, glVertexAttribI4ivEXT, NULL, 846), - NAME_FUNC_OFFSET(22557, glVertexAttribI4svEXT, glVertexAttribI4svEXT, NULL, 847), - NAME_FUNC_OFFSET(22576, glVertexAttribI4ubvEXT, glVertexAttribI4ubvEXT, NULL, 848), - NAME_FUNC_OFFSET(22596, glVertexAttribI4uiEXT, glVertexAttribI4uiEXT, NULL, 849), - NAME_FUNC_OFFSET(22615, glVertexAttribI4uivEXT, glVertexAttribI4uivEXT, NULL, 850), - NAME_FUNC_OFFSET(22635, glVertexAttribI4usvEXT, glVertexAttribI4usvEXT, NULL, 851), - NAME_FUNC_OFFSET(22655, glVertexAttribIPointerEXT, glVertexAttribIPointerEXT, NULL, 852), - NAME_FUNC_OFFSET(22678, glFramebufferTextureLayerEXT, glFramebufferTextureLayerEXT, NULL, 853), - NAME_FUNC_OFFSET(22704, glColorMaskIndexedEXT, glColorMaskIndexedEXT, NULL, 854), - NAME_FUNC_OFFSET(22717, glDisableIndexedEXT, glDisableIndexedEXT, NULL, 855), - NAME_FUNC_OFFSET(22728, glEnableIndexedEXT, glEnableIndexedEXT, NULL, 856), - NAME_FUNC_OFFSET(22738, glGetBooleanIndexedvEXT, glGetBooleanIndexedvEXT, NULL, 857), - NAME_FUNC_OFFSET(22754, glGetIntegerIndexedvEXT, glGetIntegerIndexedvEXT, NULL, 858), - NAME_FUNC_OFFSET(22770, glIsEnabledIndexedEXT, glIsEnabledIndexedEXT, NULL, 859), - NAME_FUNC_OFFSET(22783, glGetTexParameterIivEXT, glGetTexParameterIivEXT, NULL, 862), - NAME_FUNC_OFFSET(22804, glGetTexParameterIuivEXT, glGetTexParameterIuivEXT, NULL, 863), - NAME_FUNC_OFFSET(22826, glTexParameterIivEXT, glTexParameterIivEXT, NULL, 864), - NAME_FUNC_OFFSET(22844, glTexParameterIuivEXT, glTexParameterIuivEXT, NULL, 865), - NAME_FUNC_OFFSET(22863, glBeginConditionalRenderNV, glBeginConditionalRenderNV, NULL, 866), - NAME_FUNC_OFFSET(22888, glEndConditionalRenderNV, glEndConditionalRenderNV, NULL, 867), - NAME_FUNC_OFFSET(22911, glBeginTransformFeedbackEXT, glBeginTransformFeedbackEXT, NULL, 868), - NAME_FUNC_OFFSET(22936, glBindBufferBaseEXT, glBindBufferBaseEXT, NULL, 869), - NAME_FUNC_OFFSET(22953, glBindBufferRangeEXT, glBindBufferRangeEXT, NULL, 871), - NAME_FUNC_OFFSET(22971, glEndTransformFeedbackEXT, glEndTransformFeedbackEXT, NULL, 872), - NAME_FUNC_OFFSET(22994, glGetTransformFeedbackVaryingEXT, glGetTransformFeedbackVaryingEXT, NULL, 873), - NAME_FUNC_OFFSET(23024, glTransformFeedbackVaryingsEXT, glTransformFeedbackVaryingsEXT, NULL, 874), - NAME_FUNC_OFFSET(23052, glProvokingVertexEXT, glProvokingVertexEXT, NULL, 875), + NAME_FUNC_OFFSET(20262, gl_dispatch_stub_619, gl_dispatch_stub_619, NULL, 619), + NAME_FUNC_OFFSET(20281, glPointParameterfEXT, glPointParameterfEXT, NULL, 626), + NAME_FUNC_OFFSET(20299, glPointParameterfEXT, glPointParameterfEXT, NULL, 626), + NAME_FUNC_OFFSET(20320, glPointParameterfEXT, glPointParameterfEXT, NULL, 626), + NAME_FUNC_OFFSET(20342, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 627), + NAME_FUNC_OFFSET(20361, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 627), + NAME_FUNC_OFFSET(20383, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 627), + NAME_FUNC_OFFSET(20406, glSecondaryColor3bEXT, glSecondaryColor3bEXT, NULL, 630), + NAME_FUNC_OFFSET(20425, glSecondaryColor3bvEXT, glSecondaryColor3bvEXT, NULL, 631), + NAME_FUNC_OFFSET(20445, glSecondaryColor3dEXT, glSecondaryColor3dEXT, NULL, 632), + NAME_FUNC_OFFSET(20464, glSecondaryColor3dvEXT, glSecondaryColor3dvEXT, NULL, 633), + NAME_FUNC_OFFSET(20484, glSecondaryColor3fEXT, glSecondaryColor3fEXT, NULL, 634), + NAME_FUNC_OFFSET(20503, glSecondaryColor3fvEXT, glSecondaryColor3fvEXT, NULL, 635), + NAME_FUNC_OFFSET(20523, glSecondaryColor3iEXT, glSecondaryColor3iEXT, NULL, 636), + NAME_FUNC_OFFSET(20542, glSecondaryColor3ivEXT, glSecondaryColor3ivEXT, NULL, 637), + NAME_FUNC_OFFSET(20562, glSecondaryColor3sEXT, glSecondaryColor3sEXT, NULL, 638), + NAME_FUNC_OFFSET(20581, glSecondaryColor3svEXT, glSecondaryColor3svEXT, NULL, 639), + NAME_FUNC_OFFSET(20601, glSecondaryColor3ubEXT, glSecondaryColor3ubEXT, NULL, 640), + NAME_FUNC_OFFSET(20621, glSecondaryColor3ubvEXT, glSecondaryColor3ubvEXT, NULL, 641), + NAME_FUNC_OFFSET(20642, glSecondaryColor3uiEXT, glSecondaryColor3uiEXT, NULL, 642), + NAME_FUNC_OFFSET(20662, glSecondaryColor3uivEXT, glSecondaryColor3uivEXT, NULL, 643), + NAME_FUNC_OFFSET(20683, glSecondaryColor3usEXT, glSecondaryColor3usEXT, NULL, 644), + NAME_FUNC_OFFSET(20703, glSecondaryColor3usvEXT, glSecondaryColor3usvEXT, NULL, 645), + NAME_FUNC_OFFSET(20724, glSecondaryColorPointerEXT, glSecondaryColorPointerEXT, NULL, 646), + NAME_FUNC_OFFSET(20748, glMultiDrawArraysEXT, glMultiDrawArraysEXT, NULL, 647), + NAME_FUNC_OFFSET(20766, glMultiDrawElementsEXT, glMultiDrawElementsEXT, NULL, 648), + NAME_FUNC_OFFSET(20786, glFogCoordPointerEXT, glFogCoordPointerEXT, NULL, 649), + NAME_FUNC_OFFSET(20804, glFogCoorddEXT, glFogCoorddEXT, NULL, 650), + NAME_FUNC_OFFSET(20816, glFogCoorddvEXT, glFogCoorddvEXT, NULL, 651), + NAME_FUNC_OFFSET(20829, glFogCoordfEXT, glFogCoordfEXT, NULL, 652), + NAME_FUNC_OFFSET(20841, glFogCoordfvEXT, glFogCoordfvEXT, NULL, 653), + NAME_FUNC_OFFSET(20854, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, 655), + NAME_FUNC_OFFSET(20874, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, 655), + NAME_FUNC_OFFSET(20898, glWindowPos2dMESA, glWindowPos2dMESA, NULL, 672), + NAME_FUNC_OFFSET(20912, glWindowPos2dMESA, glWindowPos2dMESA, NULL, 672), + NAME_FUNC_OFFSET(20929, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, 673), + NAME_FUNC_OFFSET(20944, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, 673), + NAME_FUNC_OFFSET(20962, glWindowPos2fMESA, glWindowPos2fMESA, NULL, 674), + NAME_FUNC_OFFSET(20976, glWindowPos2fMESA, glWindowPos2fMESA, NULL, 674), + NAME_FUNC_OFFSET(20993, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, 675), + NAME_FUNC_OFFSET(21008, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, 675), + NAME_FUNC_OFFSET(21026, glWindowPos2iMESA, glWindowPos2iMESA, NULL, 676), + NAME_FUNC_OFFSET(21040, glWindowPos2iMESA, glWindowPos2iMESA, NULL, 676), + NAME_FUNC_OFFSET(21057, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, 677), + NAME_FUNC_OFFSET(21072, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, 677), + NAME_FUNC_OFFSET(21090, glWindowPos2sMESA, glWindowPos2sMESA, NULL, 678), + NAME_FUNC_OFFSET(21104, glWindowPos2sMESA, glWindowPos2sMESA, NULL, 678), + NAME_FUNC_OFFSET(21121, glWindowPos2svMESA, glWindowPos2svMESA, NULL, 679), + NAME_FUNC_OFFSET(21136, glWindowPos2svMESA, glWindowPos2svMESA, NULL, 679), + NAME_FUNC_OFFSET(21154, glWindowPos3dMESA, glWindowPos3dMESA, NULL, 680), + NAME_FUNC_OFFSET(21168, glWindowPos3dMESA, glWindowPos3dMESA, NULL, 680), + NAME_FUNC_OFFSET(21185, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, 681), + NAME_FUNC_OFFSET(21200, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, 681), + NAME_FUNC_OFFSET(21218, glWindowPos3fMESA, glWindowPos3fMESA, NULL, 682), + NAME_FUNC_OFFSET(21232, glWindowPos3fMESA, glWindowPos3fMESA, NULL, 682), + NAME_FUNC_OFFSET(21249, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, 683), + NAME_FUNC_OFFSET(21264, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, 683), + NAME_FUNC_OFFSET(21282, glWindowPos3iMESA, glWindowPos3iMESA, NULL, 684), + NAME_FUNC_OFFSET(21296, glWindowPos3iMESA, glWindowPos3iMESA, NULL, 684), + NAME_FUNC_OFFSET(21313, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, 685), + NAME_FUNC_OFFSET(21328, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, 685), + NAME_FUNC_OFFSET(21346, glWindowPos3sMESA, glWindowPos3sMESA, NULL, 686), + NAME_FUNC_OFFSET(21360, glWindowPos3sMESA, glWindowPos3sMESA, NULL, 686), + NAME_FUNC_OFFSET(21377, glWindowPos3svMESA, glWindowPos3svMESA, NULL, 687), + NAME_FUNC_OFFSET(21392, glWindowPos3svMESA, glWindowPos3svMESA, NULL, 687), + NAME_FUNC_OFFSET(21410, glBindProgramNV, glBindProgramNV, NULL, 706), + NAME_FUNC_OFFSET(21427, glDeleteProgramsNV, glDeleteProgramsNV, NULL, 707), + NAME_FUNC_OFFSET(21447, glGenProgramsNV, glGenProgramsNV, NULL, 709), + NAME_FUNC_OFFSET(21464, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, 715), + NAME_FUNC_OFFSET(21490, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, 715), + NAME_FUNC_OFFSET(21519, glIsProgramNV, glIsProgramNV, NULL, 719), + NAME_FUNC_OFFSET(21534, glPointParameteriNV, glPointParameteriNV, NULL, 783), + NAME_FUNC_OFFSET(21552, glPointParameterivNV, glPointParameterivNV, NULL, 784), + NAME_FUNC_OFFSET(21571, gl_dispatch_stub_787, gl_dispatch_stub_787, NULL, 787), + NAME_FUNC_OFFSET(21592, gl_dispatch_stub_789, gl_dispatch_stub_789, NULL, 789), + NAME_FUNC_OFFSET(21608, glPrimitiveRestartIndexNV, glPrimitiveRestartIndexNV, NULL, 796), + NAME_FUNC_OFFSET(21632, gl_dispatch_stub_799, gl_dispatch_stub_799, NULL, 799), + NAME_FUNC_OFFSET(21656, gl_dispatch_stub_799, gl_dispatch_stub_799, NULL, 799), + NAME_FUNC_OFFSET(21683, glBindFramebufferEXT, glBindFramebufferEXT, NULL, 800), + NAME_FUNC_OFFSET(21701, glBindRenderbufferEXT, glBindRenderbufferEXT, NULL, 801), + NAME_FUNC_OFFSET(21720, glCheckFramebufferStatusEXT, glCheckFramebufferStatusEXT, NULL, 802), + NAME_FUNC_OFFSET(21745, glDeleteFramebuffersEXT, glDeleteFramebuffersEXT, NULL, 803), + NAME_FUNC_OFFSET(21766, glDeleteRenderbuffersEXT, glDeleteRenderbuffersEXT, NULL, 804), + NAME_FUNC_OFFSET(21788, glFramebufferRenderbufferEXT, glFramebufferRenderbufferEXT, NULL, 805), + NAME_FUNC_OFFSET(21814, glFramebufferTexture1DEXT, glFramebufferTexture1DEXT, NULL, 806), + NAME_FUNC_OFFSET(21837, glFramebufferTexture2DEXT, glFramebufferTexture2DEXT, NULL, 807), + NAME_FUNC_OFFSET(21860, glFramebufferTexture3DEXT, glFramebufferTexture3DEXT, NULL, 808), + NAME_FUNC_OFFSET(21883, glGenFramebuffersEXT, glGenFramebuffersEXT, NULL, 809), + NAME_FUNC_OFFSET(21901, glGenRenderbuffersEXT, glGenRenderbuffersEXT, NULL, 810), + NAME_FUNC_OFFSET(21920, glGenerateMipmapEXT, glGenerateMipmapEXT, NULL, 811), + NAME_FUNC_OFFSET(21937, glGetFramebufferAttachmentParameterivEXT, glGetFramebufferAttachmentParameterivEXT, NULL, 812), + NAME_FUNC_OFFSET(21975, glGetRenderbufferParameterivEXT, glGetRenderbufferParameterivEXT, NULL, 813), + NAME_FUNC_OFFSET(22004, glIsFramebufferEXT, glIsFramebufferEXT, NULL, 814), + NAME_FUNC_OFFSET(22020, glIsRenderbufferEXT, glIsRenderbufferEXT, NULL, 815), + NAME_FUNC_OFFSET(22037, glRenderbufferStorageEXT, glRenderbufferStorageEXT, NULL, 816), + NAME_FUNC_OFFSET(22059, gl_dispatch_stub_817, gl_dispatch_stub_817, NULL, 817), + NAME_FUNC_OFFSET(22077, glBindFragDataLocationEXT, glBindFragDataLocationEXT, NULL, 820), + NAME_FUNC_OFFSET(22100, glGetFragDataLocationEXT, glGetFragDataLocationEXT, NULL, 821), + NAME_FUNC_OFFSET(22122, glGetUniformuivEXT, glGetUniformuivEXT, NULL, 822), + NAME_FUNC_OFFSET(22138, glGetVertexAttribIivEXT, glGetVertexAttribIivEXT, NULL, 823), + NAME_FUNC_OFFSET(22159, glGetVertexAttribIuivEXT, glGetVertexAttribIuivEXT, NULL, 824), + NAME_FUNC_OFFSET(22181, glUniform1uiEXT, glUniform1uiEXT, NULL, 825), + NAME_FUNC_OFFSET(22194, glUniform1uivEXT, glUniform1uivEXT, NULL, 826), + NAME_FUNC_OFFSET(22208, glUniform2uiEXT, glUniform2uiEXT, NULL, 827), + NAME_FUNC_OFFSET(22221, glUniform2uivEXT, glUniform2uivEXT, NULL, 828), + NAME_FUNC_OFFSET(22235, glUniform3uiEXT, glUniform3uiEXT, NULL, 829), + NAME_FUNC_OFFSET(22248, glUniform3uivEXT, glUniform3uivEXT, NULL, 830), + NAME_FUNC_OFFSET(22262, glUniform4uiEXT, glUniform4uiEXT, NULL, 831), + NAME_FUNC_OFFSET(22275, glUniform4uivEXT, glUniform4uivEXT, NULL, 832), + NAME_FUNC_OFFSET(22289, glVertexAttribI1iEXT, glVertexAttribI1iEXT, NULL, 833), + NAME_FUNC_OFFSET(22307, glVertexAttribI1ivEXT, glVertexAttribI1ivEXT, NULL, 834), + NAME_FUNC_OFFSET(22326, glVertexAttribI1uiEXT, glVertexAttribI1uiEXT, NULL, 835), + NAME_FUNC_OFFSET(22345, glVertexAttribI1uivEXT, glVertexAttribI1uivEXT, NULL, 836), + NAME_FUNC_OFFSET(22365, glVertexAttribI2iEXT, glVertexAttribI2iEXT, NULL, 837), + NAME_FUNC_OFFSET(22383, glVertexAttribI2ivEXT, glVertexAttribI2ivEXT, NULL, 838), + NAME_FUNC_OFFSET(22402, glVertexAttribI2uiEXT, glVertexAttribI2uiEXT, NULL, 839), + NAME_FUNC_OFFSET(22421, glVertexAttribI2uivEXT, glVertexAttribI2uivEXT, NULL, 840), + NAME_FUNC_OFFSET(22441, glVertexAttribI3iEXT, glVertexAttribI3iEXT, NULL, 841), + NAME_FUNC_OFFSET(22459, glVertexAttribI3ivEXT, glVertexAttribI3ivEXT, NULL, 842), + NAME_FUNC_OFFSET(22478, glVertexAttribI3uiEXT, glVertexAttribI3uiEXT, NULL, 843), + NAME_FUNC_OFFSET(22497, glVertexAttribI3uivEXT, glVertexAttribI3uivEXT, NULL, 844), + NAME_FUNC_OFFSET(22517, glVertexAttribI4bvEXT, glVertexAttribI4bvEXT, NULL, 845), + NAME_FUNC_OFFSET(22536, glVertexAttribI4iEXT, glVertexAttribI4iEXT, NULL, 846), + NAME_FUNC_OFFSET(22554, glVertexAttribI4ivEXT, glVertexAttribI4ivEXT, NULL, 847), + NAME_FUNC_OFFSET(22573, glVertexAttribI4svEXT, glVertexAttribI4svEXT, NULL, 848), + NAME_FUNC_OFFSET(22592, glVertexAttribI4ubvEXT, glVertexAttribI4ubvEXT, NULL, 849), + NAME_FUNC_OFFSET(22612, glVertexAttribI4uiEXT, glVertexAttribI4uiEXT, NULL, 850), + NAME_FUNC_OFFSET(22631, glVertexAttribI4uivEXT, glVertexAttribI4uivEXT, NULL, 851), + NAME_FUNC_OFFSET(22651, glVertexAttribI4usvEXT, glVertexAttribI4usvEXT, NULL, 852), + NAME_FUNC_OFFSET(22671, glVertexAttribIPointerEXT, glVertexAttribIPointerEXT, NULL, 853), + NAME_FUNC_OFFSET(22694, glFramebufferTextureLayerEXT, glFramebufferTextureLayerEXT, NULL, 854), + NAME_FUNC_OFFSET(22720, glColorMaskIndexedEXT, glColorMaskIndexedEXT, NULL, 855), + NAME_FUNC_OFFSET(22733, glDisableIndexedEXT, glDisableIndexedEXT, NULL, 856), + NAME_FUNC_OFFSET(22744, glEnableIndexedEXT, glEnableIndexedEXT, NULL, 857), + NAME_FUNC_OFFSET(22754, glGetBooleanIndexedvEXT, glGetBooleanIndexedvEXT, NULL, 858), + NAME_FUNC_OFFSET(22770, glGetIntegerIndexedvEXT, glGetIntegerIndexedvEXT, NULL, 859), + NAME_FUNC_OFFSET(22786, glIsEnabledIndexedEXT, glIsEnabledIndexedEXT, NULL, 860), + NAME_FUNC_OFFSET(22799, glGetTexParameterIivEXT, glGetTexParameterIivEXT, NULL, 863), + NAME_FUNC_OFFSET(22820, glGetTexParameterIuivEXT, glGetTexParameterIuivEXT, NULL, 864), + NAME_FUNC_OFFSET(22842, glTexParameterIivEXT, glTexParameterIivEXT, NULL, 865), + NAME_FUNC_OFFSET(22860, glTexParameterIuivEXT, glTexParameterIuivEXT, NULL, 866), + NAME_FUNC_OFFSET(22879, glBeginConditionalRenderNV, glBeginConditionalRenderNV, NULL, 867), + NAME_FUNC_OFFSET(22904, glEndConditionalRenderNV, glEndConditionalRenderNV, NULL, 868), + NAME_FUNC_OFFSET(22927, glBeginTransformFeedbackEXT, glBeginTransformFeedbackEXT, NULL, 869), + NAME_FUNC_OFFSET(22952, glBindBufferBaseEXT, glBindBufferBaseEXT, NULL, 870), + NAME_FUNC_OFFSET(22969, glBindBufferRangeEXT, glBindBufferRangeEXT, NULL, 872), + NAME_FUNC_OFFSET(22987, glEndTransformFeedbackEXT, glEndTransformFeedbackEXT, NULL, 873), + NAME_FUNC_OFFSET(23010, glGetTransformFeedbackVaryingEXT, glGetTransformFeedbackVaryingEXT, NULL, 874), + NAME_FUNC_OFFSET(23040, glTransformFeedbackVaryingsEXT, glTransformFeedbackVaryingsEXT, NULL, 875), + NAME_FUNC_OFFSET(23068, glProvokingVertexEXT, glProvokingVertexEXT, NULL, 876), NAME_FUNC_OFFSET(-1, NULL, NULL, NULL, 0) }; diff --git a/src/mesa/main/enums.c b/src/mesa/main/enums.c index e9d6b6b156c..14be3ff44f1 100644 --- a/src/mesa/main/enums.c +++ b/src/mesa/main/enums.c @@ -193,12 +193,15 @@ LONGSTRING static const char enum_string_table[] = "GL_C4UB_V3F\0" "GL_CCW\0" "GL_CLAMP\0" + "GL_CLAMP_FRAGMENT_COLOR_ARB\0" "GL_CLAMP_READ_COLOR\0" + "GL_CLAMP_READ_COLOR_ARB\0" "GL_CLAMP_TO_BORDER\0" "GL_CLAMP_TO_BORDER_ARB\0" "GL_CLAMP_TO_BORDER_SGIS\0" "GL_CLAMP_TO_EDGE\0" "GL_CLAMP_TO_EDGE_SGIS\0" + "GL_CLAMP_VERTEX_COLOR_ARB\0" "GL_CLEAR\0" "GL_CLIENT_ACTIVE_TEXTURE\0" "GL_CLIENT_ACTIVE_TEXTURE_ARB\0" @@ -584,6 +587,7 @@ LONGSTRING static const char enum_string_table[] = "GL_FIXED\0" "GL_FIXED_OES\0" "GL_FIXED_ONLY\0" + "GL_FIXED_ONLY_ARB\0" "GL_FLAT\0" "GL_FLOAT\0" "GL_FLOAT_MAT2\0" @@ -1708,6 +1712,7 @@ LONGSTRING static const char enum_string_table[] = "GL_RGBA8_OES\0" "GL_RGBA8_SNORM\0" "GL_RGBA_DXT5_S3TC\0" + "GL_RGBA_FLOAT_MODE_ARB\0" "GL_RGBA_INTEGER\0" "GL_RGBA_INTEGER_EXT\0" "GL_RGBA_INTEGER_MODE_EXT\0" @@ -2334,7 +2339,7 @@ LONGSTRING static const char enum_string_table[] = "GL_ZOOM_Y\0" ; -static const enum_elt all_enums[2295] = +static const enum_elt all_enums[2300] = { { 0, 0x00000600 }, /* GL_2D */ { 6, 0x00001407 }, /* GL_2_BYTES */ @@ -2492,3700 +2497,3708 @@ static const enum_elt all_enums[2295] = { 2689, 0x00002A23 }, /* GL_C4UB_V3F */ { 2701, 0x00000901 }, /* GL_CCW */ { 2708, 0x00002900 }, /* GL_CLAMP */ - { 2717, 0x0000891C }, /* GL_CLAMP_READ_COLOR */ - { 2737, 0x0000812D }, /* GL_CLAMP_TO_BORDER */ - { 2756, 0x0000812D }, /* GL_CLAMP_TO_BORDER_ARB */ - { 2779, 0x0000812D }, /* GL_CLAMP_TO_BORDER_SGIS */ - { 2803, 0x0000812F }, /* GL_CLAMP_TO_EDGE */ - { 2820, 0x0000812F }, /* GL_CLAMP_TO_EDGE_SGIS */ - { 2842, 0x00001500 }, /* GL_CLEAR */ - { 2851, 0x000084E1 }, /* GL_CLIENT_ACTIVE_TEXTURE */ - { 2876, 0x000084E1 }, /* GL_CLIENT_ACTIVE_TEXTURE_ARB */ - { 2905, 0xFFFFFFFF }, /* GL_CLIENT_ALL_ATTRIB_BITS */ - { 2931, 0x00000BB1 }, /* GL_CLIENT_ATTRIB_STACK_DEPTH */ - { 2960, 0x00000001 }, /* GL_CLIENT_PIXEL_STORE_BIT */ - { 2986, 0x00000002 }, /* GL_CLIENT_VERTEX_ARRAY_BIT */ - { 3013, 0x00003000 }, /* GL_CLIP_DISTANCE0 */ - { 3031, 0x00003001 }, /* GL_CLIP_DISTANCE1 */ - { 3049, 0x00003002 }, /* GL_CLIP_DISTANCE2 */ - { 3067, 0x00003003 }, /* GL_CLIP_DISTANCE3 */ - { 3085, 0x00003004 }, /* GL_CLIP_DISTANCE4 */ - { 3103, 0x00003005 }, /* GL_CLIP_DISTANCE5 */ - { 3121, 0x00003006 }, /* GL_CLIP_DISTANCE6 */ - { 3139, 0x00003007 }, /* GL_CLIP_DISTANCE7 */ - { 3157, 0x00003000 }, /* GL_CLIP_PLANE0 */ - { 3172, 0x00003001 }, /* GL_CLIP_PLANE1 */ - { 3187, 0x00003002 }, /* GL_CLIP_PLANE2 */ - { 3202, 0x00003003 }, /* GL_CLIP_PLANE3 */ - { 3217, 0x00003004 }, /* GL_CLIP_PLANE4 */ - { 3232, 0x00003005 }, /* GL_CLIP_PLANE5 */ - { 3247, 0x000080F0 }, /* GL_CLIP_VOLUME_CLIPPING_HINT_EXT */ - { 3280, 0x00000A00 }, /* GL_COEFF */ - { 3289, 0x00001800 }, /* GL_COLOR */ - { 3298, 0x00008076 }, /* GL_COLOR_ARRAY */ - { 3313, 0x00008898 }, /* GL_COLOR_ARRAY_BUFFER_BINDING */ - { 3343, 0x00008898 }, /* GL_COLOR_ARRAY_BUFFER_BINDING_ARB */ - { 3377, 0x00008090 }, /* GL_COLOR_ARRAY_POINTER */ - { 3400, 0x00008081 }, /* GL_COLOR_ARRAY_SIZE */ - { 3420, 0x00008083 }, /* GL_COLOR_ARRAY_STRIDE */ - { 3442, 0x00008082 }, /* GL_COLOR_ARRAY_TYPE */ - { 3462, 0x00008CE0 }, /* GL_COLOR_ATTACHMENT0 */ - { 3483, 0x00008CE0 }, /* GL_COLOR_ATTACHMENT0_EXT */ - { 3508, 0x00008CE0 }, /* GL_COLOR_ATTACHMENT0_OES */ - { 3533, 0x00008CE1 }, /* GL_COLOR_ATTACHMENT1 */ - { 3554, 0x00008CEA }, /* GL_COLOR_ATTACHMENT10 */ - { 3576, 0x00008CEA }, /* GL_COLOR_ATTACHMENT10_EXT */ - { 3602, 0x00008CEB }, /* GL_COLOR_ATTACHMENT11 */ - { 3624, 0x00008CEB }, /* GL_COLOR_ATTACHMENT11_EXT */ - { 3650, 0x00008CEC }, /* GL_COLOR_ATTACHMENT12 */ - { 3672, 0x00008CEC }, /* GL_COLOR_ATTACHMENT12_EXT */ - { 3698, 0x00008CED }, /* GL_COLOR_ATTACHMENT13 */ - { 3720, 0x00008CED }, /* GL_COLOR_ATTACHMENT13_EXT */ - { 3746, 0x00008CEE }, /* GL_COLOR_ATTACHMENT14 */ - { 3768, 0x00008CEE }, /* GL_COLOR_ATTACHMENT14_EXT */ - { 3794, 0x00008CEF }, /* GL_COLOR_ATTACHMENT15 */ - { 3816, 0x00008CEF }, /* GL_COLOR_ATTACHMENT15_EXT */ - { 3842, 0x00008CE1 }, /* GL_COLOR_ATTACHMENT1_EXT */ - { 3867, 0x00008CE2 }, /* GL_COLOR_ATTACHMENT2 */ - { 3888, 0x00008CE2 }, /* GL_COLOR_ATTACHMENT2_EXT */ - { 3913, 0x00008CE3 }, /* GL_COLOR_ATTACHMENT3 */ - { 3934, 0x00008CE3 }, /* GL_COLOR_ATTACHMENT3_EXT */ - { 3959, 0x00008CE4 }, /* GL_COLOR_ATTACHMENT4 */ - { 3980, 0x00008CE4 }, /* GL_COLOR_ATTACHMENT4_EXT */ - { 4005, 0x00008CE5 }, /* GL_COLOR_ATTACHMENT5 */ - { 4026, 0x00008CE5 }, /* GL_COLOR_ATTACHMENT5_EXT */ - { 4051, 0x00008CE6 }, /* GL_COLOR_ATTACHMENT6 */ - { 4072, 0x00008CE6 }, /* GL_COLOR_ATTACHMENT6_EXT */ - { 4097, 0x00008CE7 }, /* GL_COLOR_ATTACHMENT7 */ - { 4118, 0x00008CE7 }, /* GL_COLOR_ATTACHMENT7_EXT */ - { 4143, 0x00008CE8 }, /* GL_COLOR_ATTACHMENT8 */ - { 4164, 0x00008CE8 }, /* GL_COLOR_ATTACHMENT8_EXT */ - { 4189, 0x00008CE9 }, /* GL_COLOR_ATTACHMENT9 */ - { 4210, 0x00008CE9 }, /* GL_COLOR_ATTACHMENT9_EXT */ - { 4235, 0x00004000 }, /* GL_COLOR_BUFFER_BIT */ - { 4255, 0x00000C22 }, /* GL_COLOR_CLEAR_VALUE */ - { 4276, 0x00001900 }, /* GL_COLOR_INDEX */ - { 4291, 0x00001603 }, /* GL_COLOR_INDEXES */ - { 4308, 0x00000BF2 }, /* GL_COLOR_LOGIC_OP */ - { 4326, 0x00000B57 }, /* GL_COLOR_MATERIAL */ - { 4344, 0x00000B55 }, /* GL_COLOR_MATERIAL_FACE */ - { 4367, 0x00000B56 }, /* GL_COLOR_MATERIAL_PARAMETER */ - { 4395, 0x000080B1 }, /* GL_COLOR_MATRIX */ - { 4411, 0x000080B1 }, /* GL_COLOR_MATRIX_SGI */ - { 4431, 0x000080B2 }, /* GL_COLOR_MATRIX_STACK_DEPTH */ - { 4459, 0x000080B2 }, /* GL_COLOR_MATRIX_STACK_DEPTH_SGI */ - { 4491, 0x00008458 }, /* GL_COLOR_SUM */ - { 4504, 0x00008458 }, /* GL_COLOR_SUM_ARB */ - { 4521, 0x000080D0 }, /* GL_COLOR_TABLE */ - { 4536, 0x000080DD }, /* GL_COLOR_TABLE_ALPHA_SIZE */ - { 4562, 0x000080DD }, /* GL_COLOR_TABLE_ALPHA_SIZE_EXT */ - { 4592, 0x000080DD }, /* GL_COLOR_TABLE_ALPHA_SIZE_SGI */ - { 4622, 0x000080D7 }, /* GL_COLOR_TABLE_BIAS */ - { 4642, 0x000080D7 }, /* GL_COLOR_TABLE_BIAS_SGI */ - { 4666, 0x000080DC }, /* GL_COLOR_TABLE_BLUE_SIZE */ - { 4691, 0x000080DC }, /* GL_COLOR_TABLE_BLUE_SIZE_EXT */ - { 4720, 0x000080DC }, /* GL_COLOR_TABLE_BLUE_SIZE_SGI */ - { 4749, 0x000080D8 }, /* GL_COLOR_TABLE_FORMAT */ - { 4771, 0x000080D8 }, /* GL_COLOR_TABLE_FORMAT_EXT */ - { 4797, 0x000080D8 }, /* GL_COLOR_TABLE_FORMAT_SGI */ - { 4823, 0x000080DB }, /* GL_COLOR_TABLE_GREEN_SIZE */ - { 4849, 0x000080DB }, /* GL_COLOR_TABLE_GREEN_SIZE_EXT */ - { 4879, 0x000080DB }, /* GL_COLOR_TABLE_GREEN_SIZE_SGI */ - { 4909, 0x000080DF }, /* GL_COLOR_TABLE_INTENSITY_SIZE */ - { 4939, 0x000080DF }, /* GL_COLOR_TABLE_INTENSITY_SIZE_EXT */ - { 4973, 0x000080DF }, /* GL_COLOR_TABLE_INTENSITY_SIZE_SGI */ - { 5007, 0x000080DE }, /* GL_COLOR_TABLE_LUMINANCE_SIZE */ - { 5037, 0x000080DE }, /* GL_COLOR_TABLE_LUMINANCE_SIZE_EXT */ - { 5071, 0x000080DE }, /* GL_COLOR_TABLE_LUMINANCE_SIZE_SGI */ - { 5105, 0x000080DA }, /* GL_COLOR_TABLE_RED_SIZE */ - { 5129, 0x000080DA }, /* GL_COLOR_TABLE_RED_SIZE_EXT */ - { 5157, 0x000080DA }, /* GL_COLOR_TABLE_RED_SIZE_SGI */ - { 5185, 0x000080D6 }, /* GL_COLOR_TABLE_SCALE */ - { 5206, 0x000080D6 }, /* GL_COLOR_TABLE_SCALE_SGI */ - { 5231, 0x000080D9 }, /* GL_COLOR_TABLE_WIDTH */ - { 5252, 0x000080D9 }, /* GL_COLOR_TABLE_WIDTH_EXT */ - { 5277, 0x000080D9 }, /* GL_COLOR_TABLE_WIDTH_SGI */ - { 5302, 0x00000C23 }, /* GL_COLOR_WRITEMASK */ - { 5321, 0x00008570 }, /* GL_COMBINE */ - { 5332, 0x00008503 }, /* GL_COMBINE4 */ - { 5344, 0x00008572 }, /* GL_COMBINE_ALPHA */ - { 5361, 0x00008572 }, /* GL_COMBINE_ALPHA_ARB */ - { 5382, 0x00008572 }, /* GL_COMBINE_ALPHA_EXT */ - { 5403, 0x00008570 }, /* GL_COMBINE_ARB */ - { 5418, 0x00008570 }, /* GL_COMBINE_EXT */ - { 5433, 0x00008571 }, /* GL_COMBINE_RGB */ - { 5448, 0x00008571 }, /* GL_COMBINE_RGB_ARB */ - { 5467, 0x00008571 }, /* GL_COMBINE_RGB_EXT */ - { 5486, 0x0000884E }, /* GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT */ - { 5522, 0x0000884E }, /* GL_COMPARE_REF_TO_TEXTURE */ - { 5548, 0x0000884E }, /* GL_COMPARE_R_TO_TEXTURE */ - { 5572, 0x0000884E }, /* GL_COMPARE_R_TO_TEXTURE_ARB */ - { 5600, 0x00001300 }, /* GL_COMPILE */ - { 5611, 0x00001301 }, /* GL_COMPILE_AND_EXECUTE */ - { 5634, 0x00008B81 }, /* GL_COMPILE_STATUS */ - { 5652, 0x000084E9 }, /* GL_COMPRESSED_ALPHA */ - { 5672, 0x000084E9 }, /* GL_COMPRESSED_ALPHA_ARB */ - { 5696, 0x000084EC }, /* GL_COMPRESSED_INTENSITY */ - { 5720, 0x000084EC }, /* GL_COMPRESSED_INTENSITY_ARB */ - { 5748, 0x000084EA }, /* GL_COMPRESSED_LUMINANCE */ - { 5772, 0x000084EB }, /* GL_COMPRESSED_LUMINANCE_ALPHA */ - { 5802, 0x000084EB }, /* GL_COMPRESSED_LUMINANCE_ALPHA_ARB */ - { 5836, 0x000084EA }, /* GL_COMPRESSED_LUMINANCE_ARB */ - { 5864, 0x00008225 }, /* GL_COMPRESSED_RED */ - { 5882, 0x00008226 }, /* GL_COMPRESSED_RG */ - { 5899, 0x000084ED }, /* GL_COMPRESSED_RGB */ - { 5917, 0x000084EE }, /* GL_COMPRESSED_RGBA */ - { 5936, 0x000084EE }, /* GL_COMPRESSED_RGBA_ARB */ - { 5959, 0x000086B1 }, /* GL_COMPRESSED_RGBA_FXT1_3DFX */ - { 5988, 0x000083F1 }, /* GL_COMPRESSED_RGBA_S3TC_DXT1_EXT */ - { 6021, 0x000083F2 }, /* GL_COMPRESSED_RGBA_S3TC_DXT3_EXT */ - { 6054, 0x000083F3 }, /* GL_COMPRESSED_RGBA_S3TC_DXT5_EXT */ - { 6087, 0x000084ED }, /* GL_COMPRESSED_RGB_ARB */ - { 6109, 0x000086B0 }, /* GL_COMPRESSED_RGB_FXT1_3DFX */ - { 6137, 0x000083F0 }, /* GL_COMPRESSED_RGB_S3TC_DXT1_EXT */ - { 6169, 0x00008C4A }, /* GL_COMPRESSED_SLUMINANCE */ - { 6194, 0x00008C4B }, /* GL_COMPRESSED_SLUMINANCE_ALPHA */ - { 6225, 0x00008C48 }, /* GL_COMPRESSED_SRGB */ - { 6244, 0x00008C49 }, /* GL_COMPRESSED_SRGB_ALPHA */ - { 6269, 0x000086A3 }, /* GL_COMPRESSED_TEXTURE_FORMATS */ - { 6299, 0x0000911C }, /* GL_CONDITION_SATISFIED */ - { 6322, 0x00008576 }, /* GL_CONSTANT */ - { 6334, 0x00008003 }, /* GL_CONSTANT_ALPHA */ - { 6352, 0x00008003 }, /* GL_CONSTANT_ALPHA_EXT */ - { 6374, 0x00008576 }, /* GL_CONSTANT_ARB */ - { 6390, 0x00001207 }, /* GL_CONSTANT_ATTENUATION */ - { 6414, 0x00008151 }, /* GL_CONSTANT_BORDER_HP */ - { 6436, 0x00008001 }, /* GL_CONSTANT_COLOR */ - { 6454, 0x00008001 }, /* GL_CONSTANT_COLOR_EXT */ - { 6476, 0x00008576 }, /* GL_CONSTANT_EXT */ - { 6492, 0x00000002 }, /* GL_CONTEXT_COMPATIBILITY_PROFILE_BIT */ - { 6529, 0x00000001 }, /* GL_CONTEXT_CORE_PROFILE_BIT */ - { 6557, 0x0000821E }, /* GL_CONTEXT_FLAGS */ - { 6574, 0x00000001 }, /* GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT */ - { 6613, 0x00009126 }, /* GL_CONTEXT_PROFILE_MASK */ - { 6637, 0x00008010 }, /* GL_CONVOLUTION_1D */ - { 6655, 0x00008011 }, /* GL_CONVOLUTION_2D */ - { 6673, 0x00008154 }, /* GL_CONVOLUTION_BORDER_COLOR */ - { 6701, 0x00008154 }, /* GL_CONVOLUTION_BORDER_COLOR_HP */ - { 6732, 0x00008013 }, /* GL_CONVOLUTION_BORDER_MODE */ - { 6759, 0x00008013 }, /* GL_CONVOLUTION_BORDER_MODE_EXT */ - { 6790, 0x00008015 }, /* GL_CONVOLUTION_FILTER_BIAS */ - { 6817, 0x00008015 }, /* GL_CONVOLUTION_FILTER_BIAS_EXT */ - { 6848, 0x00008014 }, /* GL_CONVOLUTION_FILTER_SCALE */ - { 6876, 0x00008014 }, /* GL_CONVOLUTION_FILTER_SCALE_EXT */ - { 6908, 0x00008017 }, /* GL_CONVOLUTION_FORMAT */ - { 6930, 0x00008017 }, /* GL_CONVOLUTION_FORMAT_EXT */ - { 6956, 0x00008019 }, /* GL_CONVOLUTION_HEIGHT */ - { 6978, 0x00008019 }, /* GL_CONVOLUTION_HEIGHT_EXT */ - { 7004, 0x00008018 }, /* GL_CONVOLUTION_WIDTH */ - { 7025, 0x00008018 }, /* GL_CONVOLUTION_WIDTH_EXT */ - { 7050, 0x00008862 }, /* GL_COORD_REPLACE */ - { 7067, 0x00008862 }, /* GL_COORD_REPLACE_ARB */ - { 7088, 0x00008862 }, /* GL_COORD_REPLACE_NV */ - { 7108, 0x00008862 }, /* GL_COORD_REPLACE_OES */ - { 7129, 0x00001503 }, /* GL_COPY */ - { 7137, 0x0000150C }, /* GL_COPY_INVERTED */ - { 7154, 0x00000706 }, /* GL_COPY_PIXEL_TOKEN */ - { 7174, 0x00008F36 }, /* GL_COPY_READ_BUFFER */ - { 7194, 0x00008F37 }, /* GL_COPY_WRITE_BUFFER */ - { 7215, 0x00000B44 }, /* GL_CULL_FACE */ - { 7228, 0x00000B45 }, /* GL_CULL_FACE_MODE */ - { 7246, 0x000081AA }, /* GL_CULL_VERTEX_EXT */ - { 7265, 0x000081AC }, /* GL_CULL_VERTEX_EYE_POSITION_EXT */ - { 7297, 0x000081AB }, /* GL_CULL_VERTEX_OBJECT_POSITION_EXT */ - { 7332, 0x00008626 }, /* GL_CURRENT_ATTRIB_NV */ - { 7353, 0x00000001 }, /* GL_CURRENT_BIT */ - { 7368, 0x00000B00 }, /* GL_CURRENT_COLOR */ - { 7385, 0x00008453 }, /* GL_CURRENT_FOG_COORD */ - { 7406, 0x00008453 }, /* GL_CURRENT_FOG_COORDINATE */ - { 7432, 0x00000B01 }, /* GL_CURRENT_INDEX */ - { 7449, 0x00008641 }, /* GL_CURRENT_MATRIX_ARB */ - { 7471, 0x00008845 }, /* GL_CURRENT_MATRIX_INDEX_ARB */ - { 7499, 0x00008641 }, /* GL_CURRENT_MATRIX_NV */ - { 7520, 0x00008640 }, /* GL_CURRENT_MATRIX_STACK_DEPTH_ARB */ - { 7554, 0x00008640 }, /* GL_CURRENT_MATRIX_STACK_DEPTH_NV */ - { 7587, 0x00000B02 }, /* GL_CURRENT_NORMAL */ - { 7605, 0x00008843 }, /* GL_CURRENT_PALETTE_MATRIX_ARB */ - { 7635, 0x00008843 }, /* GL_CURRENT_PALETTE_MATRIX_OES */ - { 7665, 0x00008B8D }, /* GL_CURRENT_PROGRAM */ - { 7684, 0x00008865 }, /* GL_CURRENT_QUERY */ - { 7701, 0x00008865 }, /* GL_CURRENT_QUERY_ARB */ - { 7722, 0x00000B04 }, /* GL_CURRENT_RASTER_COLOR */ - { 7746, 0x00000B09 }, /* GL_CURRENT_RASTER_DISTANCE */ - { 7773, 0x00000B05 }, /* GL_CURRENT_RASTER_INDEX */ - { 7797, 0x00000B07 }, /* GL_CURRENT_RASTER_POSITION */ - { 7824, 0x00000B08 }, /* GL_CURRENT_RASTER_POSITION_VALID */ - { 7857, 0x0000845F }, /* GL_CURRENT_RASTER_SECONDARY_COLOR */ - { 7891, 0x00000B06 }, /* GL_CURRENT_RASTER_TEXTURE_COORDS */ - { 7924, 0x00008459 }, /* GL_CURRENT_SECONDARY_COLOR */ - { 7951, 0x00000B03 }, /* GL_CURRENT_TEXTURE_COORDS */ - { 7977, 0x00008626 }, /* GL_CURRENT_VERTEX_ATTRIB */ - { 8002, 0x00008626 }, /* GL_CURRENT_VERTEX_ATTRIB_ARB */ - { 8031, 0x000086A8 }, /* GL_CURRENT_WEIGHT_ARB */ - { 8053, 0x00000900 }, /* GL_CW */ - { 8059, 0x0000875B }, /* GL_DEBUG_ASSERT_MESA */ - { 8080, 0x00008759 }, /* GL_DEBUG_OBJECT_MESA */ - { 8101, 0x0000875A }, /* GL_DEBUG_PRINT_MESA */ - { 8121, 0x00002101 }, /* GL_DECAL */ - { 8130, 0x00001E03 }, /* GL_DECR */ - { 8138, 0x00008508 }, /* GL_DECR_WRAP */ - { 8151, 0x00008508 }, /* GL_DECR_WRAP_EXT */ - { 8168, 0x00008B80 }, /* GL_DELETE_STATUS */ - { 8185, 0x00001801 }, /* GL_DEPTH */ - { 8194, 0x000088F0 }, /* GL_DEPTH24_STENCIL8 */ - { 8214, 0x000088F0 }, /* GL_DEPTH24_STENCIL8_EXT */ - { 8238, 0x000088F0 }, /* GL_DEPTH24_STENCIL8_OES */ - { 8262, 0x00008D00 }, /* GL_DEPTH_ATTACHMENT */ - { 8282, 0x00008D00 }, /* GL_DEPTH_ATTACHMENT_EXT */ - { 8306, 0x00008D00 }, /* GL_DEPTH_ATTACHMENT_OES */ - { 8330, 0x00000D1F }, /* GL_DEPTH_BIAS */ - { 8344, 0x00000D56 }, /* GL_DEPTH_BITS */ - { 8358, 0x00008891 }, /* GL_DEPTH_BOUNDS_EXT */ - { 8378, 0x00008890 }, /* GL_DEPTH_BOUNDS_TEST_EXT */ - { 8403, 0x00008223 }, /* GL_DEPTH_BUFFER */ - { 8419, 0x00000100 }, /* GL_DEPTH_BUFFER_BIT */ - { 8439, 0x0000864F }, /* GL_DEPTH_CLAMP */ - { 8454, 0x0000864F }, /* GL_DEPTH_CLAMP_NV */ - { 8472, 0x00000B73 }, /* GL_DEPTH_CLEAR_VALUE */ - { 8493, 0x00001902 }, /* GL_DEPTH_COMPONENT */ - { 8512, 0x000081A5 }, /* GL_DEPTH_COMPONENT16 */ - { 8533, 0x000081A5 }, /* GL_DEPTH_COMPONENT16_ARB */ - { 8558, 0x000081A5 }, /* GL_DEPTH_COMPONENT16_OES */ - { 8583, 0x000081A5 }, /* GL_DEPTH_COMPONENT16_SGIX */ - { 8609, 0x000081A6 }, /* GL_DEPTH_COMPONENT24 */ - { 8630, 0x000081A6 }, /* GL_DEPTH_COMPONENT24_ARB */ - { 8655, 0x000081A6 }, /* GL_DEPTH_COMPONENT24_OES */ - { 8680, 0x000081A6 }, /* GL_DEPTH_COMPONENT24_SGIX */ - { 8706, 0x000081A7 }, /* GL_DEPTH_COMPONENT32 */ - { 8727, 0x000081A7 }, /* GL_DEPTH_COMPONENT32_ARB */ - { 8752, 0x000081A7 }, /* GL_DEPTH_COMPONENT32_OES */ - { 8777, 0x000081A7 }, /* GL_DEPTH_COMPONENT32_SGIX */ - { 8803, 0x00000B74 }, /* GL_DEPTH_FUNC */ - { 8817, 0x00000B70 }, /* GL_DEPTH_RANGE */ - { 8832, 0x00000D1E }, /* GL_DEPTH_SCALE */ - { 8847, 0x000084F9 }, /* GL_DEPTH_STENCIL */ - { 8864, 0x0000821A }, /* GL_DEPTH_STENCIL_ATTACHMENT */ - { 8892, 0x000084F9 }, /* GL_DEPTH_STENCIL_EXT */ - { 8913, 0x000084F9 }, /* GL_DEPTH_STENCIL_NV */ - { 8933, 0x000084F9 }, /* GL_DEPTH_STENCIL_OES */ - { 8954, 0x0000886F }, /* GL_DEPTH_STENCIL_TO_BGRA_NV */ - { 8982, 0x0000886E }, /* GL_DEPTH_STENCIL_TO_RGBA_NV */ - { 9010, 0x00000B71 }, /* GL_DEPTH_TEST */ - { 9024, 0x0000884B }, /* GL_DEPTH_TEXTURE_MODE */ - { 9046, 0x0000884B }, /* GL_DEPTH_TEXTURE_MODE_ARB */ - { 9072, 0x00000B72 }, /* GL_DEPTH_WRITEMASK */ - { 9091, 0x00001201 }, /* GL_DIFFUSE */ - { 9102, 0x00000BD0 }, /* GL_DITHER */ - { 9112, 0x00000A02 }, /* GL_DOMAIN */ - { 9122, 0x00001100 }, /* GL_DONT_CARE */ - { 9135, 0x000086AE }, /* GL_DOT3_RGB */ - { 9147, 0x000086AF }, /* GL_DOT3_RGBA */ - { 9160, 0x000086AF }, /* GL_DOT3_RGBA_ARB */ - { 9177, 0x00008741 }, /* GL_DOT3_RGBA_EXT */ - { 9194, 0x000086AE }, /* GL_DOT3_RGB_ARB */ - { 9210, 0x00008740 }, /* GL_DOT3_RGB_EXT */ - { 9226, 0x0000140A }, /* GL_DOUBLE */ - { 9236, 0x00000C32 }, /* GL_DOUBLEBUFFER */ - { 9252, 0x00000C01 }, /* GL_DRAW_BUFFER */ - { 9267, 0x00008825 }, /* GL_DRAW_BUFFER0 */ - { 9283, 0x00008825 }, /* GL_DRAW_BUFFER0_ARB */ - { 9303, 0x00008825 }, /* GL_DRAW_BUFFER0_ATI */ - { 9323, 0x00008826 }, /* GL_DRAW_BUFFER1 */ - { 9339, 0x0000882F }, /* GL_DRAW_BUFFER10 */ - { 9356, 0x0000882F }, /* GL_DRAW_BUFFER10_ARB */ - { 9377, 0x0000882F }, /* GL_DRAW_BUFFER10_ATI */ - { 9398, 0x00008830 }, /* GL_DRAW_BUFFER11 */ - { 9415, 0x00008830 }, /* GL_DRAW_BUFFER11_ARB */ - { 9436, 0x00008830 }, /* GL_DRAW_BUFFER11_ATI */ - { 9457, 0x00008831 }, /* GL_DRAW_BUFFER12 */ - { 9474, 0x00008831 }, /* GL_DRAW_BUFFER12_ARB */ - { 9495, 0x00008831 }, /* GL_DRAW_BUFFER12_ATI */ - { 9516, 0x00008832 }, /* GL_DRAW_BUFFER13 */ - { 9533, 0x00008832 }, /* GL_DRAW_BUFFER13_ARB */ - { 9554, 0x00008832 }, /* GL_DRAW_BUFFER13_ATI */ - { 9575, 0x00008833 }, /* GL_DRAW_BUFFER14 */ - { 9592, 0x00008833 }, /* GL_DRAW_BUFFER14_ARB */ - { 9613, 0x00008833 }, /* GL_DRAW_BUFFER14_ATI */ - { 9634, 0x00008834 }, /* GL_DRAW_BUFFER15 */ - { 9651, 0x00008834 }, /* GL_DRAW_BUFFER15_ARB */ - { 9672, 0x00008834 }, /* GL_DRAW_BUFFER15_ATI */ - { 9693, 0x00008826 }, /* GL_DRAW_BUFFER1_ARB */ - { 9713, 0x00008826 }, /* GL_DRAW_BUFFER1_ATI */ - { 9733, 0x00008827 }, /* GL_DRAW_BUFFER2 */ - { 9749, 0x00008827 }, /* GL_DRAW_BUFFER2_ARB */ - { 9769, 0x00008827 }, /* GL_DRAW_BUFFER2_ATI */ - { 9789, 0x00008828 }, /* GL_DRAW_BUFFER3 */ - { 9805, 0x00008828 }, /* GL_DRAW_BUFFER3_ARB */ - { 9825, 0x00008828 }, /* GL_DRAW_BUFFER3_ATI */ - { 9845, 0x00008829 }, /* GL_DRAW_BUFFER4 */ - { 9861, 0x00008829 }, /* GL_DRAW_BUFFER4_ARB */ - { 9881, 0x00008829 }, /* GL_DRAW_BUFFER4_ATI */ - { 9901, 0x0000882A }, /* GL_DRAW_BUFFER5 */ - { 9917, 0x0000882A }, /* GL_DRAW_BUFFER5_ARB */ - { 9937, 0x0000882A }, /* GL_DRAW_BUFFER5_ATI */ - { 9957, 0x0000882B }, /* GL_DRAW_BUFFER6 */ - { 9973, 0x0000882B }, /* GL_DRAW_BUFFER6_ARB */ - { 9993, 0x0000882B }, /* GL_DRAW_BUFFER6_ATI */ - { 10013, 0x0000882C }, /* GL_DRAW_BUFFER7 */ - { 10029, 0x0000882C }, /* GL_DRAW_BUFFER7_ARB */ - { 10049, 0x0000882C }, /* GL_DRAW_BUFFER7_ATI */ - { 10069, 0x0000882D }, /* GL_DRAW_BUFFER8 */ - { 10085, 0x0000882D }, /* GL_DRAW_BUFFER8_ARB */ - { 10105, 0x0000882D }, /* GL_DRAW_BUFFER8_ATI */ - { 10125, 0x0000882E }, /* GL_DRAW_BUFFER9 */ - { 10141, 0x0000882E }, /* GL_DRAW_BUFFER9_ARB */ - { 10161, 0x0000882E }, /* GL_DRAW_BUFFER9_ATI */ - { 10181, 0x00008CA9 }, /* GL_DRAW_FRAMEBUFFER */ - { 10201, 0x00008CA6 }, /* GL_DRAW_FRAMEBUFFER_BINDING */ - { 10229, 0x00008CA6 }, /* GL_DRAW_FRAMEBUFFER_BINDING_EXT */ - { 10261, 0x00008CA9 }, /* GL_DRAW_FRAMEBUFFER_EXT */ - { 10285, 0x00000705 }, /* GL_DRAW_PIXEL_TOKEN */ - { 10305, 0x00000304 }, /* GL_DST_ALPHA */ - { 10318, 0x00000306 }, /* GL_DST_COLOR */ - { 10331, 0x0000877A }, /* GL_DU8DV8_ATI */ - { 10345, 0x00008779 }, /* GL_DUDV_ATI */ - { 10357, 0x000088EA }, /* GL_DYNAMIC_COPY */ - { 10373, 0x000088EA }, /* GL_DYNAMIC_COPY_ARB */ - { 10393, 0x000088E8 }, /* GL_DYNAMIC_DRAW */ - { 10409, 0x000088E8 }, /* GL_DYNAMIC_DRAW_ARB */ - { 10429, 0x000088E9 }, /* GL_DYNAMIC_READ */ - { 10445, 0x000088E9 }, /* GL_DYNAMIC_READ_ARB */ - { 10465, 0x00000B43 }, /* GL_EDGE_FLAG */ - { 10478, 0x00008079 }, /* GL_EDGE_FLAG_ARRAY */ - { 10497, 0x0000889B }, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING */ - { 10531, 0x0000889B }, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB */ - { 10569, 0x00008093 }, /* GL_EDGE_FLAG_ARRAY_POINTER */ - { 10596, 0x0000808C }, /* GL_EDGE_FLAG_ARRAY_STRIDE */ - { 10622, 0x00008893 }, /* GL_ELEMENT_ARRAY_BUFFER */ - { 10646, 0x00008895 }, /* GL_ELEMENT_ARRAY_BUFFER_BINDING */ - { 10678, 0x00008895 }, /* GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB */ - { 10714, 0x00001600 }, /* GL_EMISSION */ - { 10726, 0x00002000 }, /* GL_ENABLE_BIT */ - { 10740, 0x00000202 }, /* GL_EQUAL */ - { 10749, 0x00001509 }, /* GL_EQUIV */ - { 10758, 0x00010000 }, /* GL_EVAL_BIT */ - { 10770, 0x00000800 }, /* GL_EXP */ - { 10777, 0x00000801 }, /* GL_EXP2 */ - { 10785, 0x00001F03 }, /* GL_EXTENSIONS */ - { 10799, 0x00002400 }, /* GL_EYE_LINEAR */ - { 10813, 0x00002502 }, /* GL_EYE_PLANE */ - { 10826, 0x0000855C }, /* GL_EYE_PLANE_ABSOLUTE_NV */ - { 10851, 0x0000855B }, /* GL_EYE_RADIAL_NV */ - { 10868, 0x00000000 }, /* GL_FALSE */ - { 10877, 0x00001101 }, /* GL_FASTEST */ - { 10888, 0x00001C01 }, /* GL_FEEDBACK */ - { 10900, 0x00000DF0 }, /* GL_FEEDBACK_BUFFER_POINTER */ - { 10927, 0x00000DF1 }, /* GL_FEEDBACK_BUFFER_SIZE */ - { 10951, 0x00000DF2 }, /* GL_FEEDBACK_BUFFER_TYPE */ - { 10975, 0x00001B02 }, /* GL_FILL */ - { 10983, 0x00008E4D }, /* GL_FIRST_VERTEX_CONVENTION */ - { 11010, 0x00008E4D }, /* GL_FIRST_VERTEX_CONVENTION_EXT */ - { 11041, 0x0000140C }, /* GL_FIXED */ - { 11050, 0x0000140C }, /* GL_FIXED_OES */ - { 11063, 0x0000891D }, /* GL_FIXED_ONLY */ - { 11077, 0x00001D00 }, /* GL_FLAT */ - { 11085, 0x00001406 }, /* GL_FLOAT */ - { 11094, 0x00008B5A }, /* GL_FLOAT_MAT2 */ - { 11108, 0x00008B5A }, /* GL_FLOAT_MAT2_ARB */ - { 11126, 0x00008B65 }, /* GL_FLOAT_MAT2x3 */ - { 11142, 0x00008B66 }, /* GL_FLOAT_MAT2x4 */ - { 11158, 0x00008B5B }, /* GL_FLOAT_MAT3 */ - { 11172, 0x00008B5B }, /* GL_FLOAT_MAT3_ARB */ - { 11190, 0x00008B67 }, /* GL_FLOAT_MAT3x2 */ - { 11206, 0x00008B68 }, /* GL_FLOAT_MAT3x4 */ - { 11222, 0x00008B5C }, /* GL_FLOAT_MAT4 */ - { 11236, 0x00008B5C }, /* GL_FLOAT_MAT4_ARB */ - { 11254, 0x00008B69 }, /* GL_FLOAT_MAT4x2 */ - { 11270, 0x00008B6A }, /* GL_FLOAT_MAT4x3 */ - { 11286, 0x00008B50 }, /* GL_FLOAT_VEC2 */ - { 11300, 0x00008B50 }, /* GL_FLOAT_VEC2_ARB */ - { 11318, 0x00008B51 }, /* GL_FLOAT_VEC3 */ - { 11332, 0x00008B51 }, /* GL_FLOAT_VEC3_ARB */ - { 11350, 0x00008B52 }, /* GL_FLOAT_VEC4 */ - { 11364, 0x00008B52 }, /* GL_FLOAT_VEC4_ARB */ - { 11382, 0x00000B60 }, /* GL_FOG */ - { 11389, 0x00000080 }, /* GL_FOG_BIT */ - { 11400, 0x00000B66 }, /* GL_FOG_COLOR */ - { 11413, 0x00008451 }, /* GL_FOG_COORD */ - { 11426, 0x00008451 }, /* GL_FOG_COORDINATE */ - { 11444, 0x00008457 }, /* GL_FOG_COORDINATE_ARRAY */ - { 11468, 0x0000889D }, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING */ - { 11507, 0x0000889D }, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB */ - { 11550, 0x00008456 }, /* GL_FOG_COORDINATE_ARRAY_POINTER */ - { 11582, 0x00008455 }, /* GL_FOG_COORDINATE_ARRAY_STRIDE */ - { 11613, 0x00008454 }, /* GL_FOG_COORDINATE_ARRAY_TYPE */ - { 11642, 0x00008450 }, /* GL_FOG_COORDINATE_SOURCE */ - { 11667, 0x00008457 }, /* GL_FOG_COORD_ARRAY */ - { 11686, 0x0000889D }, /* GL_FOG_COORD_ARRAY_BUFFER_BINDING */ - { 11720, 0x00008456 }, /* GL_FOG_COORD_ARRAY_POINTER */ - { 11747, 0x00008455 }, /* GL_FOG_COORD_ARRAY_STRIDE */ - { 11773, 0x00008454 }, /* GL_FOG_COORD_ARRAY_TYPE */ - { 11797, 0x00008450 }, /* GL_FOG_COORD_SRC */ - { 11814, 0x00000B62 }, /* GL_FOG_DENSITY */ - { 11829, 0x0000855A }, /* GL_FOG_DISTANCE_MODE_NV */ - { 11853, 0x00000B64 }, /* GL_FOG_END */ - { 11864, 0x00000C54 }, /* GL_FOG_HINT */ - { 11876, 0x00000B61 }, /* GL_FOG_INDEX */ - { 11889, 0x00000B65 }, /* GL_FOG_MODE */ - { 11901, 0x00008198 }, /* GL_FOG_OFFSET_SGIX */ - { 11920, 0x00008199 }, /* GL_FOG_OFFSET_VALUE_SGIX */ - { 11945, 0x00000B63 }, /* GL_FOG_START */ - { 11958, 0x00008452 }, /* GL_FRAGMENT_DEPTH */ - { 11976, 0x00008804 }, /* GL_FRAGMENT_PROGRAM_ARB */ - { 12000, 0x00008B30 }, /* GL_FRAGMENT_SHADER */ - { 12019, 0x00008B30 }, /* GL_FRAGMENT_SHADER_ARB */ - { 12042, 0x00008B8B }, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */ - { 12077, 0x00008B8B }, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES */ - { 12116, 0x00008D40 }, /* GL_FRAMEBUFFER */ - { 12131, 0x00008215 }, /* GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE */ - { 12168, 0x00008214 }, /* GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE */ - { 12204, 0x00008210 }, /* GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING */ - { 12245, 0x00008211 }, /* GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE */ - { 12286, 0x00008216 }, /* GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE */ - { 12323, 0x00008213 }, /* GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE */ - { 12360, 0x00008DA7 }, /* GL_FRAMEBUFFER_ATTACHMENT_LAYERED */ - { 12394, 0x00008DA7 }, /* GL_FRAMEBUFFER_ATTACHMENT_LAYERED_ARB */ - { 12432, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME */ - { 12470, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT */ - { 12512, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES */ - { 12554, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE */ - { 12592, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT */ - { 12634, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES */ - { 12676, 0x00008212 }, /* GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE */ - { 12711, 0x00008217 }, /* GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE */ - { 12750, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT */ - { 12799, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES */ - { 12848, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE */ - { 12896, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT */ - { 12948, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES */ - { 13000, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER */ - { 13040, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT */ - { 13084, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL */ - { 13124, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT */ - { 13168, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES */ - { 13212, 0x00008CA6 }, /* GL_FRAMEBUFFER_BINDING */ - { 13235, 0x00008CA6 }, /* GL_FRAMEBUFFER_BINDING_EXT */ - { 13262, 0x00008CA6 }, /* GL_FRAMEBUFFER_BINDING_OES */ - { 13289, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE */ - { 13313, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE_EXT */ - { 13341, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE_OES */ - { 13369, 0x00008218 }, /* GL_FRAMEBUFFER_DEFAULT */ - { 13392, 0x00008D40 }, /* GL_FRAMEBUFFER_EXT */ - { 13411, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT */ - { 13448, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT */ - { 13489, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES */ - { 13530, 0x00008CD9 }, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS */ - { 13567, 0x00008CD9 }, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT */ - { 13608, 0x00008CD9 }, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES */ - { 13649, 0x00008CDB }, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER */ - { 13687, 0x00008CDB }, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT */ - { 13729, 0x00008CDB }, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_OES */ - { 13771, 0x00008CD8 }, /* GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT */ - { 13822, 0x00008CDA }, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT */ - { 13860, 0x00008CDA }, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES */ - { 13898, 0x00008DA9 }, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB */ - { 13940, 0x00008DA8 }, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS */ - { 13980, 0x00008DA8 }, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_ARB */ - { 14024, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT */ - { 14069, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT */ - { 14118, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES */ - { 14167, 0x00008D56 }, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE */ - { 14205, 0x00008D56 }, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT */ - { 14247, 0x00008CDC }, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER */ - { 14285, 0x00008CDC }, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT */ - { 14327, 0x00008CDC }, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_OES */ - { 14369, 0x00008D40 }, /* GL_FRAMEBUFFER_OES */ - { 14388, 0x00008CDE }, /* GL_FRAMEBUFFER_STATUS_ERROR_EXT */ - { 14420, 0x00008219 }, /* GL_FRAMEBUFFER_UNDEFINED */ - { 14445, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED */ - { 14472, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED_EXT */ - { 14503, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED_OES */ - { 14534, 0x00000404 }, /* GL_FRONT */ - { 14543, 0x00000408 }, /* GL_FRONT_AND_BACK */ - { 14561, 0x00000B46 }, /* GL_FRONT_FACE */ - { 14575, 0x00000400 }, /* GL_FRONT_LEFT */ - { 14589, 0x00000401 }, /* GL_FRONT_RIGHT */ - { 14604, 0x00008006 }, /* GL_FUNC_ADD */ - { 14616, 0x00008006 }, /* GL_FUNC_ADD_EXT */ - { 14632, 0x00008006 }, /* GL_FUNC_ADD_OES */ - { 14648, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT */ - { 14673, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT_EXT */ - { 14702, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT_OES */ - { 14731, 0x0000800A }, /* GL_FUNC_SUBTRACT */ - { 14748, 0x0000800A }, /* GL_FUNC_SUBTRACT_EXT */ - { 14769, 0x0000800A }, /* GL_FUNC_SUBTRACT_OES */ - { 14790, 0x00008191 }, /* GL_GENERATE_MIPMAP */ - { 14809, 0x00008192 }, /* GL_GENERATE_MIPMAP_HINT */ - { 14833, 0x00008192 }, /* GL_GENERATE_MIPMAP_HINT_SGIS */ - { 14862, 0x00008191 }, /* GL_GENERATE_MIPMAP_SGIS */ - { 14886, 0x00008917 }, /* GL_GEOMETRY_INPUT_TYPE */ - { 14909, 0x00008DDB }, /* GL_GEOMETRY_INPUT_TYPE_ARB */ - { 14936, 0x00008918 }, /* GL_GEOMETRY_OUTPUT_TYPE */ - { 14960, 0x00008DDC }, /* GL_GEOMETRY_OUTPUT_TYPE_ARB */ - { 14988, 0x00008DD9 }, /* GL_GEOMETRY_SHADER */ - { 15007, 0x00008DD9 }, /* GL_GEOMETRY_SHADER_ARB */ - { 15030, 0x00008916 }, /* GL_GEOMETRY_VERTICES_OUT */ - { 15055, 0x00008DDA }, /* GL_GEOMETRY_VERTICES_OUT_ARB */ - { 15084, 0x00000206 }, /* GL_GEQUAL */ - { 15094, 0x00000204 }, /* GL_GREATER */ - { 15105, 0x00001904 }, /* GL_GREEN */ - { 15114, 0x00000D19 }, /* GL_GREEN_BIAS */ - { 15128, 0x00000D53 }, /* GL_GREEN_BITS */ - { 15142, 0x00008D95 }, /* GL_GREEN_INTEGER */ - { 15159, 0x00008D95 }, /* GL_GREEN_INTEGER_EXT */ - { 15180, 0x00000D18 }, /* GL_GREEN_SCALE */ - { 15195, 0x0000140B }, /* GL_HALF_FLOAT */ - { 15209, 0x00008D61 }, /* GL_HALF_FLOAT_OES */ - { 15227, 0x00008DF2 }, /* GL_HIGH_FLOAT */ - { 15241, 0x00008DF5 }, /* GL_HIGH_INT */ - { 15253, 0x00008000 }, /* GL_HINT_BIT */ - { 15265, 0x00008024 }, /* GL_HISTOGRAM */ - { 15278, 0x0000802B }, /* GL_HISTOGRAM_ALPHA_SIZE */ - { 15302, 0x0000802B }, /* GL_HISTOGRAM_ALPHA_SIZE_EXT */ - { 15330, 0x0000802A }, /* GL_HISTOGRAM_BLUE_SIZE */ - { 15353, 0x0000802A }, /* GL_HISTOGRAM_BLUE_SIZE_EXT */ - { 15380, 0x00008024 }, /* GL_HISTOGRAM_EXT */ - { 15397, 0x00008027 }, /* GL_HISTOGRAM_FORMAT */ - { 15417, 0x00008027 }, /* GL_HISTOGRAM_FORMAT_EXT */ - { 15441, 0x00008029 }, /* GL_HISTOGRAM_GREEN_SIZE */ - { 15465, 0x00008029 }, /* GL_HISTOGRAM_GREEN_SIZE_EXT */ - { 15493, 0x0000802C }, /* GL_HISTOGRAM_LUMINANCE_SIZE */ - { 15521, 0x0000802C }, /* GL_HISTOGRAM_LUMINANCE_SIZE_EXT */ - { 15553, 0x00008028 }, /* GL_HISTOGRAM_RED_SIZE */ - { 15575, 0x00008028 }, /* GL_HISTOGRAM_RED_SIZE_EXT */ - { 15601, 0x0000802D }, /* GL_HISTOGRAM_SINK */ - { 15619, 0x0000802D }, /* GL_HISTOGRAM_SINK_EXT */ - { 15641, 0x00008026 }, /* GL_HISTOGRAM_WIDTH */ - { 15660, 0x00008026 }, /* GL_HISTOGRAM_WIDTH_EXT */ - { 15683, 0x0000862A }, /* GL_IDENTITY_NV */ - { 15698, 0x00008150 }, /* GL_IGNORE_BORDER_HP */ - { 15718, 0x00008B9B }, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT */ - { 15754, 0x00008B9B }, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES */ - { 15794, 0x00008B9A }, /* GL_IMPLEMENTATION_COLOR_READ_TYPE */ - { 15828, 0x00008B9A }, /* GL_IMPLEMENTATION_COLOR_READ_TYPE_OES */ - { 15866, 0x00001E02 }, /* GL_INCR */ - { 15874, 0x00008507 }, /* GL_INCR_WRAP */ - { 15887, 0x00008507 }, /* GL_INCR_WRAP_EXT */ - { 15904, 0x00008222 }, /* GL_INDEX */ - { 15913, 0x00008077 }, /* GL_INDEX_ARRAY */ - { 15928, 0x00008899 }, /* GL_INDEX_ARRAY_BUFFER_BINDING */ - { 15958, 0x00008899 }, /* GL_INDEX_ARRAY_BUFFER_BINDING_ARB */ - { 15992, 0x00008091 }, /* GL_INDEX_ARRAY_POINTER */ - { 16015, 0x00008086 }, /* GL_INDEX_ARRAY_STRIDE */ - { 16037, 0x00008085 }, /* GL_INDEX_ARRAY_TYPE */ - { 16057, 0x00000D51 }, /* GL_INDEX_BITS */ - { 16071, 0x00000C20 }, /* GL_INDEX_CLEAR_VALUE */ - { 16092, 0x00000BF1 }, /* GL_INDEX_LOGIC_OP */ - { 16110, 0x00000C30 }, /* GL_INDEX_MODE */ - { 16124, 0x00000D13 }, /* GL_INDEX_OFFSET */ - { 16140, 0x00000D12 }, /* GL_INDEX_SHIFT */ - { 16155, 0x00000C21 }, /* GL_INDEX_WRITEMASK */ - { 16174, 0x00008B84 }, /* GL_INFO_LOG_LENGTH */ - { 16193, 0x00001404 }, /* GL_INT */ - { 16200, 0x00008049 }, /* GL_INTENSITY */ - { 16213, 0x0000804C }, /* GL_INTENSITY12 */ - { 16228, 0x0000804C }, /* GL_INTENSITY12_EXT */ - { 16247, 0x0000804D }, /* GL_INTENSITY16 */ - { 16262, 0x00008D8B }, /* GL_INTENSITY16I_EXT */ - { 16282, 0x00008D79 }, /* GL_INTENSITY16UI_EXT */ - { 16303, 0x0000804D }, /* GL_INTENSITY16_EXT */ - { 16322, 0x00008D85 }, /* GL_INTENSITY32I_EXT */ - { 16342, 0x00008D73 }, /* GL_INTENSITY32UI_EXT */ - { 16363, 0x0000804A }, /* GL_INTENSITY4 */ - { 16377, 0x0000804A }, /* GL_INTENSITY4_EXT */ - { 16395, 0x0000804B }, /* GL_INTENSITY8 */ - { 16409, 0x00008D91 }, /* GL_INTENSITY8I_EXT */ - { 16428, 0x00008D7F }, /* GL_INTENSITY8UI_EXT */ - { 16448, 0x0000804B }, /* GL_INTENSITY8_EXT */ - { 16466, 0x00008049 }, /* GL_INTENSITY_EXT */ - { 16483, 0x00008C8C }, /* GL_INTERLEAVED_ATTRIBS */ - { 16506, 0x00008C8C }, /* GL_INTERLEAVED_ATTRIBS_EXT */ - { 16533, 0x00008575 }, /* GL_INTERPOLATE */ - { 16548, 0x00008575 }, /* GL_INTERPOLATE_ARB */ - { 16567, 0x00008575 }, /* GL_INTERPOLATE_EXT */ - { 16586, 0x00008DF7 }, /* GL_INT_10_10_10_2_OES */ - { 16608, 0x00008DC9 }, /* GL_INT_SAMPLER_1D */ - { 16626, 0x00008DCE }, /* GL_INT_SAMPLER_1D_ARRAY */ - { 16650, 0x00008DCE }, /* GL_INT_SAMPLER_1D_ARRAY_EXT */ - { 16678, 0x00008DC9 }, /* GL_INT_SAMPLER_1D_EXT */ - { 16700, 0x00008DCA }, /* GL_INT_SAMPLER_2D */ - { 16718, 0x00008DCF }, /* GL_INT_SAMPLER_2D_ARRAY */ - { 16742, 0x00008DCF }, /* GL_INT_SAMPLER_2D_ARRAY_EXT */ - { 16770, 0x00008DCA }, /* GL_INT_SAMPLER_2D_EXT */ - { 16792, 0x00008DCD }, /* GL_INT_SAMPLER_2D_RECT */ - { 16815, 0x00008DCD }, /* GL_INT_SAMPLER_2D_RECT_EXT */ - { 16842, 0x00008DCB }, /* GL_INT_SAMPLER_3D */ - { 16860, 0x00008DCB }, /* GL_INT_SAMPLER_3D_EXT */ - { 16882, 0x00008DD0 }, /* GL_INT_SAMPLER_BUFFER */ - { 16904, 0x00008DD0 }, /* GL_INT_SAMPLER_BUFFER_EXT */ - { 16930, 0x00008DCC }, /* GL_INT_SAMPLER_CUBE */ - { 16950, 0x00008DCC }, /* GL_INT_SAMPLER_CUBE_EXT */ - { 16974, 0x00008B53 }, /* GL_INT_VEC2 */ - { 16986, 0x00008B53 }, /* GL_INT_VEC2_ARB */ - { 17002, 0x00008B54 }, /* GL_INT_VEC3 */ - { 17014, 0x00008B54 }, /* GL_INT_VEC3_ARB */ - { 17030, 0x00008B55 }, /* GL_INT_VEC4 */ - { 17042, 0x00008B55 }, /* GL_INT_VEC4_ARB */ - { 17058, 0x00000500 }, /* GL_INVALID_ENUM */ - { 17074, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION */ - { 17107, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION_EXT */ - { 17144, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION_OES */ - { 17181, 0x00000502 }, /* GL_INVALID_OPERATION */ - { 17202, 0x00000501 }, /* GL_INVALID_VALUE */ - { 17219, 0x0000862B }, /* GL_INVERSE_NV */ - { 17233, 0x0000862D }, /* GL_INVERSE_TRANSPOSE_NV */ - { 17257, 0x0000150A }, /* GL_INVERT */ - { 17267, 0x00001E00 }, /* GL_KEEP */ - { 17275, 0x00008E4E }, /* GL_LAST_VERTEX_CONVENTION */ - { 17301, 0x00008E4E }, /* GL_LAST_VERTEX_CONVENTION_EXT */ - { 17331, 0x00000406 }, /* GL_LEFT */ - { 17339, 0x00000203 }, /* GL_LEQUAL */ - { 17349, 0x00000201 }, /* GL_LESS */ - { 17357, 0x00004000 }, /* GL_LIGHT0 */ - { 17367, 0x00004001 }, /* GL_LIGHT1 */ - { 17377, 0x00004002 }, /* GL_LIGHT2 */ - { 17387, 0x00004003 }, /* GL_LIGHT3 */ - { 17397, 0x00004004 }, /* GL_LIGHT4 */ - { 17407, 0x00004005 }, /* GL_LIGHT5 */ - { 17417, 0x00004006 }, /* GL_LIGHT6 */ - { 17427, 0x00004007 }, /* GL_LIGHT7 */ - { 17437, 0x00000B50 }, /* GL_LIGHTING */ - { 17449, 0x00000040 }, /* GL_LIGHTING_BIT */ - { 17465, 0x00000B53 }, /* GL_LIGHT_MODEL_AMBIENT */ - { 17488, 0x000081F8 }, /* GL_LIGHT_MODEL_COLOR_CONTROL */ - { 17517, 0x000081F8 }, /* GL_LIGHT_MODEL_COLOR_CONTROL_EXT */ - { 17550, 0x00000B51 }, /* GL_LIGHT_MODEL_LOCAL_VIEWER */ - { 17578, 0x00000B52 }, /* GL_LIGHT_MODEL_TWO_SIDE */ - { 17602, 0x00001B01 }, /* GL_LINE */ - { 17610, 0x00002601 }, /* GL_LINEAR */ - { 17620, 0x00001208 }, /* GL_LINEAR_ATTENUATION */ - { 17642, 0x00008170 }, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */ - { 17672, 0x0000844F }, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */ - { 17703, 0x00002703 }, /* GL_LINEAR_MIPMAP_LINEAR */ - { 17727, 0x00002701 }, /* GL_LINEAR_MIPMAP_NEAREST */ - { 17752, 0x00000001 }, /* GL_LINES */ - { 17761, 0x0000000A }, /* GL_LINES_ADJACENCY */ - { 17780, 0x0000000A }, /* GL_LINES_ADJACENCY_ARB */ - { 17803, 0x00000004 }, /* GL_LINE_BIT */ - { 17815, 0x00000002 }, /* GL_LINE_LOOP */ - { 17828, 0x00000707 }, /* GL_LINE_RESET_TOKEN */ - { 17848, 0x00000B20 }, /* GL_LINE_SMOOTH */ - { 17863, 0x00000C52 }, /* GL_LINE_SMOOTH_HINT */ - { 17883, 0x00000B24 }, /* GL_LINE_STIPPLE */ - { 17899, 0x00000B25 }, /* GL_LINE_STIPPLE_PATTERN */ - { 17923, 0x00000B26 }, /* GL_LINE_STIPPLE_REPEAT */ - { 17946, 0x00000003 }, /* GL_LINE_STRIP */ - { 17960, 0x0000000B }, /* GL_LINE_STRIP_ADJACENCY */ - { 17984, 0x0000000B }, /* GL_LINE_STRIP_ADJACENCY_ARB */ - { 18012, 0x00000702 }, /* GL_LINE_TOKEN */ - { 18026, 0x00000B21 }, /* GL_LINE_WIDTH */ - { 18040, 0x00000B23 }, /* GL_LINE_WIDTH_GRANULARITY */ - { 18066, 0x00000B22 }, /* GL_LINE_WIDTH_RANGE */ - { 18086, 0x00008B82 }, /* GL_LINK_STATUS */ - { 18101, 0x00000B32 }, /* GL_LIST_BASE */ - { 18114, 0x00020000 }, /* GL_LIST_BIT */ - { 18126, 0x00000B33 }, /* GL_LIST_INDEX */ - { 18140, 0x00000B30 }, /* GL_LIST_MODE */ - { 18153, 0x00000101 }, /* GL_LOAD */ - { 18161, 0x00000BF1 }, /* GL_LOGIC_OP */ - { 18173, 0x00000BF0 }, /* GL_LOGIC_OP_MODE */ - { 18190, 0x00008CA1 }, /* GL_LOWER_LEFT */ - { 18204, 0x00008DF0 }, /* GL_LOW_FLOAT */ - { 18217, 0x00008DF3 }, /* GL_LOW_INT */ - { 18228, 0x00001909 }, /* GL_LUMINANCE */ - { 18241, 0x00008041 }, /* GL_LUMINANCE12 */ - { 18256, 0x00008047 }, /* GL_LUMINANCE12_ALPHA12 */ - { 18279, 0x00008047 }, /* GL_LUMINANCE12_ALPHA12_EXT */ - { 18306, 0x00008046 }, /* GL_LUMINANCE12_ALPHA4 */ - { 18328, 0x00008046 }, /* GL_LUMINANCE12_ALPHA4_EXT */ - { 18354, 0x00008041 }, /* GL_LUMINANCE12_EXT */ - { 18373, 0x00008042 }, /* GL_LUMINANCE16 */ - { 18388, 0x00008D8C }, /* GL_LUMINANCE16I_EXT */ - { 18408, 0x00008D7A }, /* GL_LUMINANCE16UI_EXT */ - { 18429, 0x00008048 }, /* GL_LUMINANCE16_ALPHA16 */ - { 18452, 0x00008048 }, /* GL_LUMINANCE16_ALPHA16_EXT */ - { 18479, 0x00008042 }, /* GL_LUMINANCE16_EXT */ - { 18498, 0x00008D86 }, /* GL_LUMINANCE32I_EXT */ - { 18518, 0x00008D74 }, /* GL_LUMINANCE32UI_EXT */ - { 18539, 0x0000803F }, /* GL_LUMINANCE4 */ - { 18553, 0x00008043 }, /* GL_LUMINANCE4_ALPHA4 */ - { 18574, 0x00008043 }, /* GL_LUMINANCE4_ALPHA4_EXT */ - { 18599, 0x0000803F }, /* GL_LUMINANCE4_EXT */ - { 18617, 0x00008044 }, /* GL_LUMINANCE6_ALPHA2 */ - { 18638, 0x00008044 }, /* GL_LUMINANCE6_ALPHA2_EXT */ - { 18663, 0x00008040 }, /* GL_LUMINANCE8 */ - { 18677, 0x00008D92 }, /* GL_LUMINANCE8I_EXT */ - { 18696, 0x00008D80 }, /* GL_LUMINANCE8UI_EXT */ - { 18716, 0x00008045 }, /* GL_LUMINANCE8_ALPHA8 */ - { 18737, 0x00008045 }, /* GL_LUMINANCE8_ALPHA8_EXT */ - { 18762, 0x00008040 }, /* GL_LUMINANCE8_EXT */ - { 18780, 0x0000190A }, /* GL_LUMINANCE_ALPHA */ - { 18799, 0x00008D8D }, /* GL_LUMINANCE_ALPHA16I_EXT */ - { 18825, 0x00008D7B }, /* GL_LUMINANCE_ALPHA16UI_EXT */ - { 18852, 0x00008D87 }, /* GL_LUMINANCE_ALPHA32I_EXT */ - { 18878, 0x00008D75 }, /* GL_LUMINANCE_ALPHA32UI_EXT */ - { 18905, 0x00008D93 }, /* GL_LUMINANCE_ALPHA8I_EXT */ - { 18930, 0x00008D81 }, /* GL_LUMINANCE_ALPHA8UI_EXT */ - { 18956, 0x00008D9D }, /* GL_LUMINANCE_ALPHA_INTEGER_EXT */ - { 18987, 0x00008D9C }, /* GL_LUMINANCE_INTEGER_EXT */ - { 19012, 0x0000821B }, /* GL_MAJOR_VERSION */ - { 19029, 0x00000D90 }, /* GL_MAP1_COLOR_4 */ - { 19045, 0x00000DD0 }, /* GL_MAP1_GRID_DOMAIN */ - { 19065, 0x00000DD1 }, /* GL_MAP1_GRID_SEGMENTS */ - { 19087, 0x00000D91 }, /* GL_MAP1_INDEX */ - { 19101, 0x00000D92 }, /* GL_MAP1_NORMAL */ - { 19116, 0x00000D93 }, /* GL_MAP1_TEXTURE_COORD_1 */ - { 19140, 0x00000D94 }, /* GL_MAP1_TEXTURE_COORD_2 */ - { 19164, 0x00000D95 }, /* GL_MAP1_TEXTURE_COORD_3 */ - { 19188, 0x00000D96 }, /* GL_MAP1_TEXTURE_COORD_4 */ - { 19212, 0x00000D97 }, /* GL_MAP1_VERTEX_3 */ - { 19229, 0x00000D98 }, /* GL_MAP1_VERTEX_4 */ - { 19246, 0x00008660 }, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */ - { 19274, 0x0000866A }, /* GL_MAP1_VERTEX_ATTRIB10_4_NV */ - { 19303, 0x0000866B }, /* GL_MAP1_VERTEX_ATTRIB11_4_NV */ - { 19332, 0x0000866C }, /* GL_MAP1_VERTEX_ATTRIB12_4_NV */ - { 19361, 0x0000866D }, /* GL_MAP1_VERTEX_ATTRIB13_4_NV */ - { 19390, 0x0000866E }, /* GL_MAP1_VERTEX_ATTRIB14_4_NV */ - { 19419, 0x0000866F }, /* GL_MAP1_VERTEX_ATTRIB15_4_NV */ - { 19448, 0x00008661 }, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */ - { 19476, 0x00008662 }, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */ - { 19504, 0x00008663 }, /* GL_MAP1_VERTEX_ATTRIB3_4_NV */ - { 19532, 0x00008664 }, /* GL_MAP1_VERTEX_ATTRIB4_4_NV */ - { 19560, 0x00008665 }, /* GL_MAP1_VERTEX_ATTRIB5_4_NV */ - { 19588, 0x00008666 }, /* GL_MAP1_VERTEX_ATTRIB6_4_NV */ - { 19616, 0x00008667 }, /* GL_MAP1_VERTEX_ATTRIB7_4_NV */ - { 19644, 0x00008668 }, /* GL_MAP1_VERTEX_ATTRIB8_4_NV */ - { 19672, 0x00008669 }, /* GL_MAP1_VERTEX_ATTRIB9_4_NV */ - { 19700, 0x00000DB0 }, /* GL_MAP2_COLOR_4 */ - { 19716, 0x00000DD2 }, /* GL_MAP2_GRID_DOMAIN */ - { 19736, 0x00000DD3 }, /* GL_MAP2_GRID_SEGMENTS */ - { 19758, 0x00000DB1 }, /* GL_MAP2_INDEX */ - { 19772, 0x00000DB2 }, /* GL_MAP2_NORMAL */ - { 19787, 0x00000DB3 }, /* GL_MAP2_TEXTURE_COORD_1 */ - { 19811, 0x00000DB4 }, /* GL_MAP2_TEXTURE_COORD_2 */ - { 19835, 0x00000DB5 }, /* GL_MAP2_TEXTURE_COORD_3 */ - { 19859, 0x00000DB6 }, /* GL_MAP2_TEXTURE_COORD_4 */ - { 19883, 0x00000DB7 }, /* GL_MAP2_VERTEX_3 */ - { 19900, 0x00000DB8 }, /* GL_MAP2_VERTEX_4 */ - { 19917, 0x00008670 }, /* GL_MAP2_VERTEX_ATTRIB0_4_NV */ - { 19945, 0x0000867A }, /* GL_MAP2_VERTEX_ATTRIB10_4_NV */ - { 19974, 0x0000867B }, /* GL_MAP2_VERTEX_ATTRIB11_4_NV */ - { 20003, 0x0000867C }, /* GL_MAP2_VERTEX_ATTRIB12_4_NV */ - { 20032, 0x0000867D }, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */ - { 20061, 0x0000867E }, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */ - { 20090, 0x0000867F }, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */ - { 20119, 0x00008671 }, /* GL_MAP2_VERTEX_ATTRIB1_4_NV */ - { 20147, 0x00008672 }, /* GL_MAP2_VERTEX_ATTRIB2_4_NV */ - { 20175, 0x00008673 }, /* GL_MAP2_VERTEX_ATTRIB3_4_NV */ - { 20203, 0x00008674 }, /* GL_MAP2_VERTEX_ATTRIB4_4_NV */ - { 20231, 0x00008675 }, /* GL_MAP2_VERTEX_ATTRIB5_4_NV */ - { 20259, 0x00008676 }, /* GL_MAP2_VERTEX_ATTRIB6_4_NV */ - { 20287, 0x00008677 }, /* GL_MAP2_VERTEX_ATTRIB7_4_NV */ - { 20315, 0x00008678 }, /* GL_MAP2_VERTEX_ATTRIB8_4_NV */ - { 20343, 0x00008679 }, /* GL_MAP2_VERTEX_ATTRIB9_4_NV */ - { 20371, 0x00000D10 }, /* GL_MAP_COLOR */ - { 20384, 0x00000010 }, /* GL_MAP_FLUSH_EXPLICIT_BIT */ - { 20410, 0x00000008 }, /* GL_MAP_INVALIDATE_BUFFER_BIT */ - { 20439, 0x00000004 }, /* GL_MAP_INVALIDATE_RANGE_BIT */ - { 20467, 0x00000001 }, /* GL_MAP_READ_BIT */ - { 20483, 0x00000D11 }, /* GL_MAP_STENCIL */ - { 20498, 0x00000020 }, /* GL_MAP_UNSYNCHRONIZED_BIT */ - { 20524, 0x00000002 }, /* GL_MAP_WRITE_BIT */ - { 20541, 0x000088C0 }, /* GL_MATRIX0_ARB */ - { 20556, 0x00008630 }, /* GL_MATRIX0_NV */ - { 20570, 0x000088CA }, /* GL_MATRIX10_ARB */ - { 20586, 0x000088CB }, /* GL_MATRIX11_ARB */ - { 20602, 0x000088CC }, /* GL_MATRIX12_ARB */ - { 20618, 0x000088CD }, /* GL_MATRIX13_ARB */ - { 20634, 0x000088CE }, /* GL_MATRIX14_ARB */ - { 20650, 0x000088CF }, /* GL_MATRIX15_ARB */ - { 20666, 0x000088D0 }, /* GL_MATRIX16_ARB */ - { 20682, 0x000088D1 }, /* GL_MATRIX17_ARB */ - { 20698, 0x000088D2 }, /* GL_MATRIX18_ARB */ - { 20714, 0x000088D3 }, /* GL_MATRIX19_ARB */ - { 20730, 0x000088C1 }, /* GL_MATRIX1_ARB */ - { 20745, 0x00008631 }, /* GL_MATRIX1_NV */ - { 20759, 0x000088D4 }, /* GL_MATRIX20_ARB */ - { 20775, 0x000088D5 }, /* GL_MATRIX21_ARB */ - { 20791, 0x000088D6 }, /* GL_MATRIX22_ARB */ - { 20807, 0x000088D7 }, /* GL_MATRIX23_ARB */ - { 20823, 0x000088D8 }, /* GL_MATRIX24_ARB */ - { 20839, 0x000088D9 }, /* GL_MATRIX25_ARB */ - { 20855, 0x000088DA }, /* GL_MATRIX26_ARB */ - { 20871, 0x000088DB }, /* GL_MATRIX27_ARB */ - { 20887, 0x000088DC }, /* GL_MATRIX28_ARB */ - { 20903, 0x000088DD }, /* GL_MATRIX29_ARB */ - { 20919, 0x000088C2 }, /* GL_MATRIX2_ARB */ - { 20934, 0x00008632 }, /* GL_MATRIX2_NV */ - { 20948, 0x000088DE }, /* GL_MATRIX30_ARB */ - { 20964, 0x000088DF }, /* GL_MATRIX31_ARB */ - { 20980, 0x000088C3 }, /* GL_MATRIX3_ARB */ - { 20995, 0x00008633 }, /* GL_MATRIX3_NV */ - { 21009, 0x000088C4 }, /* GL_MATRIX4_ARB */ - { 21024, 0x00008634 }, /* GL_MATRIX4_NV */ - { 21038, 0x000088C5 }, /* GL_MATRIX5_ARB */ - { 21053, 0x00008635 }, /* GL_MATRIX5_NV */ - { 21067, 0x000088C6 }, /* GL_MATRIX6_ARB */ - { 21082, 0x00008636 }, /* GL_MATRIX6_NV */ - { 21096, 0x000088C7 }, /* GL_MATRIX7_ARB */ - { 21111, 0x00008637 }, /* GL_MATRIX7_NV */ - { 21125, 0x000088C8 }, /* GL_MATRIX8_ARB */ - { 21140, 0x000088C9 }, /* GL_MATRIX9_ARB */ - { 21155, 0x00008844 }, /* GL_MATRIX_INDEX_ARRAY_ARB */ - { 21181, 0x00008B9E }, /* GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES */ - { 21222, 0x00008844 }, /* GL_MATRIX_INDEX_ARRAY_OES */ - { 21248, 0x00008849 }, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */ - { 21282, 0x00008849 }, /* GL_MATRIX_INDEX_ARRAY_POINTER_OES */ - { 21316, 0x00008846 }, /* GL_MATRIX_INDEX_ARRAY_SIZE_ARB */ - { 21347, 0x00008846 }, /* GL_MATRIX_INDEX_ARRAY_SIZE_OES */ - { 21378, 0x00008848 }, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */ - { 21411, 0x00008848 }, /* GL_MATRIX_INDEX_ARRAY_STRIDE_OES */ - { 21444, 0x00008847 }, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */ - { 21475, 0x00008847 }, /* GL_MATRIX_INDEX_ARRAY_TYPE_OES */ - { 21506, 0x00000BA0 }, /* GL_MATRIX_MODE */ - { 21521, 0x00008840 }, /* GL_MATRIX_PALETTE_ARB */ - { 21543, 0x00008840 }, /* GL_MATRIX_PALETTE_OES */ - { 21565, 0x00008008 }, /* GL_MAX */ - { 21572, 0x00008073 }, /* GL_MAX_3D_TEXTURE_SIZE */ - { 21595, 0x00008073 }, /* GL_MAX_3D_TEXTURE_SIZE_OES */ - { 21622, 0x000088FF }, /* GL_MAX_ARRAY_TEXTURE_LAYERS */ - { 21650, 0x000088FF }, /* GL_MAX_ARRAY_TEXTURE_LAYERS_EXT */ - { 21682, 0x00000D35 }, /* GL_MAX_ATTRIB_STACK_DEPTH */ - { 21708, 0x00000D3B }, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */ - { 21741, 0x00008177 }, /* GL_MAX_CLIPMAP_DEPTH_SGIX */ - { 21767, 0x00008178 }, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */ - { 21801, 0x00000D32 }, /* GL_MAX_CLIP_DISTANCES */ - { 21823, 0x00000D32 }, /* GL_MAX_CLIP_PLANES */ - { 21842, 0x00008CDF }, /* GL_MAX_COLOR_ATTACHMENTS */ - { 21867, 0x00008CDF }, /* GL_MAX_COLOR_ATTACHMENTS_EXT */ - { 21896, 0x000080B3 }, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */ - { 21928, 0x000080B3 }, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI */ - { 21964, 0x00008B4D }, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */ - { 22000, 0x00008B4D }, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB */ - { 22040, 0x0000801B }, /* GL_MAX_CONVOLUTION_HEIGHT */ - { 22066, 0x0000801B }, /* GL_MAX_CONVOLUTION_HEIGHT_EXT */ - { 22096, 0x0000801A }, /* GL_MAX_CONVOLUTION_WIDTH */ - { 22121, 0x0000801A }, /* GL_MAX_CONVOLUTION_WIDTH_EXT */ - { 22150, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */ - { 22179, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB */ - { 22212, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE_OES */ - { 22245, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS */ - { 22265, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_ARB */ - { 22289, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_ATI */ - { 22313, 0x000080E9 }, /* GL_MAX_ELEMENTS_INDICES */ - { 22337, 0x000080E8 }, /* GL_MAX_ELEMENTS_VERTICES */ - { 22362, 0x00000D30 }, /* GL_MAX_EVAL_ORDER */ - { 22380, 0x00008008 }, /* GL_MAX_EXT */ - { 22391, 0x00009125 }, /* GL_MAX_FRAGMENT_INPUT_COMPONENTS */ - { 22424, 0x00008B49 }, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */ - { 22459, 0x00008B49 }, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB */ - { 22498, 0x00008DFD }, /* GL_MAX_FRAGMENT_UNIFORM_VECTORS */ - { 22530, 0x00009123 }, /* GL_MAX_GEOMETRY_INPUT_COMPONENTS */ - { 22563, 0x00009124 }, /* GL_MAX_GEOMETRY_OUTPUT_COMPONENTS */ - { 22597, 0x00008DE0 }, /* GL_MAX_GEOMETRY_OUTPUT_VERTICES */ - { 22629, 0x00008DE0 }, /* GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB */ - { 22665, 0x00008C29 }, /* GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS */ - { 22701, 0x00008C29 }, /* GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB */ - { 22741, 0x00008DE1 }, /* GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS */ - { 22781, 0x00008DE1 }, /* GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB */ - { 22825, 0x00008DDF }, /* GL_MAX_GEOMETRY_UNIFORM_COMPONENTS */ - { 22860, 0x00008DDF }, /* GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB */ - { 22899, 0x00008DDD }, /* GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB */ - { 22938, 0x00000D31 }, /* GL_MAX_LIGHTS */ - { 22952, 0x00000B31 }, /* GL_MAX_LIST_NESTING */ - { 22972, 0x00008841 }, /* GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB */ - { 23010, 0x00000D36 }, /* GL_MAX_MODELVIEW_STACK_DEPTH */ - { 23039, 0x00000D37 }, /* GL_MAX_NAME_STACK_DEPTH */ - { 23063, 0x00008842 }, /* GL_MAX_PALETTE_MATRICES_ARB */ - { 23091, 0x00008842 }, /* GL_MAX_PALETTE_MATRICES_OES */ - { 23119, 0x00000D34 }, /* GL_MAX_PIXEL_MAP_TABLE */ - { 23142, 0x000088B1 }, /* GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB */ - { 23179, 0x0000880B }, /* GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB */ - { 23215, 0x000088AD }, /* GL_MAX_PROGRAM_ATTRIBS_ARB */ - { 23242, 0x000088F5 }, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */ - { 23271, 0x000088B5 }, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */ - { 23305, 0x000088F4 }, /* GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV */ - { 23341, 0x000088F6 }, /* GL_MAX_PROGRAM_IF_DEPTH_NV */ - { 23368, 0x000088A1 }, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */ - { 23400, 0x000088B4 }, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */ - { 23436, 0x000088F8 }, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */ - { 23465, 0x000088F7 }, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */ - { 23494, 0x0000862F }, /* GL_MAX_PROGRAM_MATRICES_ARB */ - { 23522, 0x0000862E }, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */ - { 23560, 0x000088B3 }, /* GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ - { 23604, 0x0000880E }, /* GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ - { 23647, 0x000088AF }, /* GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB */ - { 23681, 0x000088A3 }, /* GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ - { 23720, 0x000088AB }, /* GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB */ - { 23757, 0x000088A7 }, /* GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB */ - { 23795, 0x00008810 }, /* GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ - { 23838, 0x0000880F }, /* GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ - { 23881, 0x000088A9 }, /* GL_MAX_PROGRAM_PARAMETERS_ARB */ - { 23911, 0x000088A5 }, /* GL_MAX_PROGRAM_TEMPORARIES_ARB */ - { 23942, 0x00008905 }, /* GL_MAX_PROGRAM_TEXEL_OFFSET */ - { 23970, 0x00008905 }, /* GL_MAX_PROGRAM_TEXEL_OFFSET_EXT */ - { 24002, 0x0000880D }, /* GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB */ - { 24038, 0x0000880C }, /* GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB */ - { 24074, 0x00000D38 }, /* GL_MAX_PROJECTION_STACK_DEPTH */ - { 24104, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE */ - { 24134, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB */ - { 24168, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_NV */ - { 24201, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE */ - { 24226, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE_EXT */ - { 24255, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE_OES */ - { 24284, 0x00008D57 }, /* GL_MAX_SAMPLES */ - { 24299, 0x00008D57 }, /* GL_MAX_SAMPLES_EXT */ - { 24318, 0x00009111 }, /* GL_MAX_SERVER_WAIT_TIMEOUT */ - { 24345, 0x00008504 }, /* GL_MAX_SHININESS_NV */ - { 24365, 0x00008505 }, /* GL_MAX_SPOT_EXPONENT_NV */ - { 24389, 0x00008C2B }, /* GL_MAX_TEXTURE_BUFFER_SIZE */ - { 24416, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS */ - { 24438, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS_ARB */ - { 24464, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS */ - { 24491, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS_ARB */ - { 24522, 0x000084FD }, /* GL_MAX_TEXTURE_LOD_BIAS */ - { 24546, 0x000084FD }, /* GL_MAX_TEXTURE_LOD_BIAS_EXT */ - { 24574, 0x000084FF }, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */ - { 24608, 0x00000D33 }, /* GL_MAX_TEXTURE_SIZE */ - { 24628, 0x00000D39 }, /* GL_MAX_TEXTURE_STACK_DEPTH */ - { 24655, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS */ - { 24676, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS_ARB */ - { 24701, 0x0000862F }, /* GL_MAX_TRACK_MATRICES_NV */ - { 24726, 0x0000862E }, /* GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV */ - { 24761, 0x00008C8A }, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS */ - { 24810, 0x00008C8A }, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT */ - { 24863, 0x00008C8B }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS */ - { 24906, 0x00008C8B }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT */ - { 24953, 0x00008C80 }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS */ - { 24999, 0x00008C80 }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT */ - { 25049, 0x00008B4B }, /* GL_MAX_VARYING_COMPONENTS */ - { 25075, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS */ - { 25097, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS_ARB */ - { 25123, 0x00008DFC }, /* GL_MAX_VARYING_VECTORS */ - { 25146, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS */ - { 25168, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS_ARB */ - { 25194, 0x00009122 }, /* GL_MAX_VERTEX_OUTPUT_COMPONENTS */ - { 25226, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */ - { 25260, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB */ - { 25298, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */ - { 25331, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB */ - { 25368, 0x00008DFB }, /* GL_MAX_VERTEX_UNIFORM_VECTORS */ - { 25398, 0x000086A4 }, /* GL_MAX_VERTEX_UNITS_ARB */ - { 25422, 0x000086A4 }, /* GL_MAX_VERTEX_UNITS_OES */ - { 25446, 0x00008DDE }, /* GL_MAX_VERTEX_VARYING_COMPONENTS_ARB */ - { 25483, 0x00000D3A }, /* GL_MAX_VIEWPORT_DIMS */ - { 25504, 0x00008DF1 }, /* GL_MEDIUM_FLOAT */ - { 25520, 0x00008DF4 }, /* GL_MEDIUM_INT */ - { 25534, 0x00008007 }, /* GL_MIN */ - { 25541, 0x0000802E }, /* GL_MINMAX */ - { 25551, 0x0000802E }, /* GL_MINMAX_EXT */ - { 25565, 0x0000802F }, /* GL_MINMAX_FORMAT */ - { 25582, 0x0000802F }, /* GL_MINMAX_FORMAT_EXT */ - { 25603, 0x00008030 }, /* GL_MINMAX_SINK */ - { 25618, 0x00008030 }, /* GL_MINMAX_SINK_EXT */ - { 25637, 0x0000821C }, /* GL_MINOR_VERSION */ - { 25654, 0x00008007 }, /* GL_MIN_EXT */ - { 25665, 0x00008904 }, /* GL_MIN_PROGRAM_TEXEL_OFFSET */ - { 25693, 0x00008904 }, /* GL_MIN_PROGRAM_TEXEL_OFFSET_EXT */ - { 25725, 0x00008370 }, /* GL_MIRRORED_REPEAT */ - { 25744, 0x00008370 }, /* GL_MIRRORED_REPEAT_ARB */ - { 25767, 0x00008370 }, /* GL_MIRRORED_REPEAT_IBM */ - { 25790, 0x00008742 }, /* GL_MIRROR_CLAMP_ATI */ - { 25810, 0x00008742 }, /* GL_MIRROR_CLAMP_EXT */ - { 25830, 0x00008912 }, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */ - { 25860, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_ATI */ - { 25888, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */ - { 25916, 0x00001700 }, /* GL_MODELVIEW */ - { 25929, 0x00001700 }, /* GL_MODELVIEW0_ARB */ - { 25947, 0x0000872A }, /* GL_MODELVIEW10_ARB */ - { 25966, 0x0000872B }, /* GL_MODELVIEW11_ARB */ - { 25985, 0x0000872C }, /* GL_MODELVIEW12_ARB */ - { 26004, 0x0000872D }, /* GL_MODELVIEW13_ARB */ - { 26023, 0x0000872E }, /* GL_MODELVIEW14_ARB */ - { 26042, 0x0000872F }, /* GL_MODELVIEW15_ARB */ - { 26061, 0x00008730 }, /* GL_MODELVIEW16_ARB */ - { 26080, 0x00008731 }, /* GL_MODELVIEW17_ARB */ - { 26099, 0x00008732 }, /* GL_MODELVIEW18_ARB */ - { 26118, 0x00008733 }, /* GL_MODELVIEW19_ARB */ - { 26137, 0x0000850A }, /* GL_MODELVIEW1_ARB */ - { 26155, 0x00008734 }, /* GL_MODELVIEW20_ARB */ - { 26174, 0x00008735 }, /* GL_MODELVIEW21_ARB */ - { 26193, 0x00008736 }, /* GL_MODELVIEW22_ARB */ - { 26212, 0x00008737 }, /* GL_MODELVIEW23_ARB */ - { 26231, 0x00008738 }, /* GL_MODELVIEW24_ARB */ - { 26250, 0x00008739 }, /* GL_MODELVIEW25_ARB */ - { 26269, 0x0000873A }, /* GL_MODELVIEW26_ARB */ - { 26288, 0x0000873B }, /* GL_MODELVIEW27_ARB */ - { 26307, 0x0000873C }, /* GL_MODELVIEW28_ARB */ - { 26326, 0x0000873D }, /* GL_MODELVIEW29_ARB */ - { 26345, 0x00008722 }, /* GL_MODELVIEW2_ARB */ - { 26363, 0x0000873E }, /* GL_MODELVIEW30_ARB */ - { 26382, 0x0000873F }, /* GL_MODELVIEW31_ARB */ - { 26401, 0x00008723 }, /* GL_MODELVIEW3_ARB */ - { 26419, 0x00008724 }, /* GL_MODELVIEW4_ARB */ - { 26437, 0x00008725 }, /* GL_MODELVIEW5_ARB */ - { 26455, 0x00008726 }, /* GL_MODELVIEW6_ARB */ - { 26473, 0x00008727 }, /* GL_MODELVIEW7_ARB */ - { 26491, 0x00008728 }, /* GL_MODELVIEW8_ARB */ - { 26509, 0x00008729 }, /* GL_MODELVIEW9_ARB */ - { 26527, 0x00000BA6 }, /* GL_MODELVIEW_MATRIX */ - { 26547, 0x0000898D }, /* GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES */ - { 26589, 0x00008629 }, /* GL_MODELVIEW_PROJECTION_NV */ - { 26616, 0x00000BA3 }, /* GL_MODELVIEW_STACK_DEPTH */ - { 26641, 0x00002100 }, /* GL_MODULATE */ - { 26653, 0x00008744 }, /* GL_MODULATE_ADD_ATI */ - { 26673, 0x00008745 }, /* GL_MODULATE_SIGNED_ADD_ATI */ - { 26700, 0x00008746 }, /* GL_MODULATE_SUBTRACT_ATI */ - { 26725, 0x00000103 }, /* GL_MULT */ - { 26733, 0x0000809D }, /* GL_MULTISAMPLE */ - { 26748, 0x000086B2 }, /* GL_MULTISAMPLE_3DFX */ - { 26768, 0x0000809D }, /* GL_MULTISAMPLE_ARB */ - { 26787, 0x20000000 }, /* GL_MULTISAMPLE_BIT */ - { 26806, 0x20000000 }, /* GL_MULTISAMPLE_BIT_3DFX */ - { 26830, 0x20000000 }, /* GL_MULTISAMPLE_BIT_ARB */ - { 26853, 0x00008534 }, /* GL_MULTISAMPLE_FILTER_HINT_NV */ - { 26883, 0x00002A25 }, /* GL_N3F_V3F */ - { 26894, 0x00000D70 }, /* GL_NAME_STACK_DEPTH */ - { 26914, 0x0000150E }, /* GL_NAND */ - { 26922, 0x00002600 }, /* GL_NEAREST */ - { 26933, 0x0000844E }, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */ - { 26964, 0x0000844D }, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */ - { 26996, 0x00002702 }, /* GL_NEAREST_MIPMAP_LINEAR */ - { 27021, 0x00002700 }, /* GL_NEAREST_MIPMAP_NEAREST */ - { 27047, 0x00000200 }, /* GL_NEVER */ - { 27056, 0x00001102 }, /* GL_NICEST */ - { 27066, 0x00000000 }, /* GL_NONE */ - { 27074, 0x00000000 }, /* GL_NONE_OES */ - { 27086, 0x00001505 }, /* GL_NOOP */ - { 27094, 0x00001508 }, /* GL_NOR */ - { 27101, 0x00000BA1 }, /* GL_NORMALIZE */ - { 27114, 0x00008075 }, /* GL_NORMAL_ARRAY */ - { 27130, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING */ - { 27161, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING_ARB */ - { 27196, 0x0000808F }, /* GL_NORMAL_ARRAY_POINTER */ - { 27220, 0x0000807F }, /* GL_NORMAL_ARRAY_STRIDE */ - { 27243, 0x0000807E }, /* GL_NORMAL_ARRAY_TYPE */ - { 27264, 0x00008511 }, /* GL_NORMAL_MAP */ - { 27278, 0x00008511 }, /* GL_NORMAL_MAP_ARB */ - { 27296, 0x00008511 }, /* GL_NORMAL_MAP_NV */ - { 27313, 0x00008511 }, /* GL_NORMAL_MAP_OES */ - { 27331, 0x00000205 }, /* GL_NOTEQUAL */ - { 27343, 0x00000000 }, /* GL_NO_ERROR */ - { 27355, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */ - { 27389, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB */ - { 27427, 0x0000821D }, /* GL_NUM_EXTENSIONS */ - { 27445, 0x000087FE }, /* GL_NUM_PROGRAM_BINARY_FORMATS_OES */ - { 27479, 0x00008DF9 }, /* GL_NUM_SHADER_BINARY_FORMATS */ - { 27508, 0x00008B89 }, /* GL_OBJECT_ACTIVE_ATTRIBUTES_ARB */ - { 27540, 0x00008B8A }, /* GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB */ - { 27582, 0x00008B86 }, /* GL_OBJECT_ACTIVE_UNIFORMS_ARB */ - { 27612, 0x00008B87 }, /* GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB */ - { 27652, 0x00008B85 }, /* GL_OBJECT_ATTACHED_OBJECTS_ARB */ - { 27683, 0x00008B81 }, /* GL_OBJECT_COMPILE_STATUS_ARB */ - { 27712, 0x00008B80 }, /* GL_OBJECT_DELETE_STATUS_ARB */ - { 27740, 0x00008B84 }, /* GL_OBJECT_INFO_LOG_LENGTH_ARB */ - { 27770, 0x00002401 }, /* GL_OBJECT_LINEAR */ - { 27787, 0x00008B82 }, /* GL_OBJECT_LINK_STATUS_ARB */ - { 27813, 0x00002501 }, /* GL_OBJECT_PLANE */ - { 27829, 0x00008B88 }, /* GL_OBJECT_SHADER_SOURCE_LENGTH_ARB */ - { 27864, 0x00008B4F }, /* GL_OBJECT_SUBTYPE_ARB */ - { 27886, 0x00009112 }, /* GL_OBJECT_TYPE */ - { 27901, 0x00008B4E }, /* GL_OBJECT_TYPE_ARB */ - { 27920, 0x00008B83 }, /* GL_OBJECT_VALIDATE_STATUS_ARB */ - { 27950, 0x00008165 }, /* GL_OCCLUSION_TEST_HP */ - { 27971, 0x00008166 }, /* GL_OCCLUSION_TEST_RESULT_HP */ - { 27999, 0x00000001 }, /* GL_ONE */ - { 28006, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA */ - { 28034, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA_EXT */ - { 28066, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR */ - { 28094, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR_EXT */ - { 28126, 0x00000305 }, /* GL_ONE_MINUS_DST_ALPHA */ - { 28149, 0x00000307 }, /* GL_ONE_MINUS_DST_COLOR */ - { 28172, 0x00000303 }, /* GL_ONE_MINUS_SRC_ALPHA */ - { 28195, 0x00000301 }, /* GL_ONE_MINUS_SRC_COLOR */ - { 28218, 0x00008598 }, /* GL_OPERAND0_ALPHA */ - { 28236, 0x00008598 }, /* GL_OPERAND0_ALPHA_ARB */ - { 28258, 0x00008598 }, /* GL_OPERAND0_ALPHA_EXT */ - { 28280, 0x00008590 }, /* GL_OPERAND0_RGB */ - { 28296, 0x00008590 }, /* GL_OPERAND0_RGB_ARB */ - { 28316, 0x00008590 }, /* GL_OPERAND0_RGB_EXT */ - { 28336, 0x00008599 }, /* GL_OPERAND1_ALPHA */ - { 28354, 0x00008599 }, /* GL_OPERAND1_ALPHA_ARB */ - { 28376, 0x00008599 }, /* GL_OPERAND1_ALPHA_EXT */ - { 28398, 0x00008591 }, /* GL_OPERAND1_RGB */ - { 28414, 0x00008591 }, /* GL_OPERAND1_RGB_ARB */ - { 28434, 0x00008591 }, /* GL_OPERAND1_RGB_EXT */ - { 28454, 0x0000859A }, /* GL_OPERAND2_ALPHA */ - { 28472, 0x0000859A }, /* GL_OPERAND2_ALPHA_ARB */ - { 28494, 0x0000859A }, /* GL_OPERAND2_ALPHA_EXT */ - { 28516, 0x00008592 }, /* GL_OPERAND2_RGB */ - { 28532, 0x00008592 }, /* GL_OPERAND2_RGB_ARB */ - { 28552, 0x00008592 }, /* GL_OPERAND2_RGB_EXT */ - { 28572, 0x0000859B }, /* GL_OPERAND3_ALPHA_NV */ - { 28593, 0x00008593 }, /* GL_OPERAND3_RGB_NV */ - { 28612, 0x00001507 }, /* GL_OR */ - { 28618, 0x00000A01 }, /* GL_ORDER */ - { 28627, 0x0000150D }, /* GL_OR_INVERTED */ - { 28642, 0x0000150B }, /* GL_OR_REVERSE */ - { 28656, 0x00000505 }, /* GL_OUT_OF_MEMORY */ - { 28673, 0x00000D05 }, /* GL_PACK_ALIGNMENT */ - { 28691, 0x0000806C }, /* GL_PACK_IMAGE_HEIGHT */ - { 28712, 0x00008758 }, /* GL_PACK_INVERT_MESA */ - { 28732, 0x00000D01 }, /* GL_PACK_LSB_FIRST */ - { 28750, 0x00000D02 }, /* GL_PACK_ROW_LENGTH */ - { 28769, 0x0000806B }, /* GL_PACK_SKIP_IMAGES */ - { 28789, 0x00000D04 }, /* GL_PACK_SKIP_PIXELS */ - { 28809, 0x00000D03 }, /* GL_PACK_SKIP_ROWS */ - { 28827, 0x00000D00 }, /* GL_PACK_SWAP_BYTES */ - { 28846, 0x00008B92 }, /* GL_PALETTE4_R5_G6_B5_OES */ - { 28871, 0x00008B94 }, /* GL_PALETTE4_RGB5_A1_OES */ - { 28895, 0x00008B90 }, /* GL_PALETTE4_RGB8_OES */ - { 28916, 0x00008B93 }, /* GL_PALETTE4_RGBA4_OES */ - { 28938, 0x00008B91 }, /* GL_PALETTE4_RGBA8_OES */ - { 28960, 0x00008B97 }, /* GL_PALETTE8_R5_G6_B5_OES */ - { 28985, 0x00008B99 }, /* GL_PALETTE8_RGB5_A1_OES */ - { 29009, 0x00008B95 }, /* GL_PALETTE8_RGB8_OES */ - { 29030, 0x00008B98 }, /* GL_PALETTE8_RGBA4_OES */ - { 29052, 0x00008B96 }, /* GL_PALETTE8_RGBA8_OES */ - { 29074, 0x00000700 }, /* GL_PASS_THROUGH_TOKEN */ - { 29096, 0x00000C50 }, /* GL_PERSPECTIVE_CORRECTION_HINT */ - { 29127, 0x00000C79 }, /* GL_PIXEL_MAP_A_TO_A */ - { 29147, 0x00000CB9 }, /* GL_PIXEL_MAP_A_TO_A_SIZE */ - { 29172, 0x00000C78 }, /* GL_PIXEL_MAP_B_TO_B */ - { 29192, 0x00000CB8 }, /* GL_PIXEL_MAP_B_TO_B_SIZE */ - { 29217, 0x00000C77 }, /* GL_PIXEL_MAP_G_TO_G */ - { 29237, 0x00000CB7 }, /* GL_PIXEL_MAP_G_TO_G_SIZE */ - { 29262, 0x00000C75 }, /* GL_PIXEL_MAP_I_TO_A */ - { 29282, 0x00000CB5 }, /* GL_PIXEL_MAP_I_TO_A_SIZE */ - { 29307, 0x00000C74 }, /* GL_PIXEL_MAP_I_TO_B */ - { 29327, 0x00000CB4 }, /* GL_PIXEL_MAP_I_TO_B_SIZE */ - { 29352, 0x00000C73 }, /* GL_PIXEL_MAP_I_TO_G */ - { 29372, 0x00000CB3 }, /* GL_PIXEL_MAP_I_TO_G_SIZE */ - { 29397, 0x00000C70 }, /* GL_PIXEL_MAP_I_TO_I */ - { 29417, 0x00000CB0 }, /* GL_PIXEL_MAP_I_TO_I_SIZE */ - { 29442, 0x00000C72 }, /* GL_PIXEL_MAP_I_TO_R */ - { 29462, 0x00000CB2 }, /* GL_PIXEL_MAP_I_TO_R_SIZE */ - { 29487, 0x00000C76 }, /* GL_PIXEL_MAP_R_TO_R */ - { 29507, 0x00000CB6 }, /* GL_PIXEL_MAP_R_TO_R_SIZE */ - { 29532, 0x00000C71 }, /* GL_PIXEL_MAP_S_TO_S */ - { 29552, 0x00000CB1 }, /* GL_PIXEL_MAP_S_TO_S_SIZE */ - { 29577, 0x00000020 }, /* GL_PIXEL_MODE_BIT */ - { 29595, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER */ - { 29616, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING */ - { 29645, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING_EXT */ - { 29678, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER_EXT */ - { 29703, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER */ - { 29726, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING */ - { 29757, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING_EXT */ - { 29792, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER_EXT */ - { 29819, 0x00001B00 }, /* GL_POINT */ - { 29828, 0x00000000 }, /* GL_POINTS */ - { 29838, 0x00000002 }, /* GL_POINT_BIT */ - { 29851, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION */ - { 29881, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_ARB */ - { 29915, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_EXT */ - { 29949, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_SGIS */ - { 29984, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE */ - { 30013, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_ARB */ - { 30046, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_EXT */ - { 30079, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_SGIS */ - { 30113, 0x00000B11 }, /* GL_POINT_SIZE */ - { 30127, 0x00008B9F }, /* GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES */ - { 30166, 0x00008B9C }, /* GL_POINT_SIZE_ARRAY_OES */ - { 30190, 0x0000898C }, /* GL_POINT_SIZE_ARRAY_POINTER_OES */ - { 30222, 0x0000898B }, /* GL_POINT_SIZE_ARRAY_STRIDE_OES */ - { 30253, 0x0000898A }, /* GL_POINT_SIZE_ARRAY_TYPE_OES */ - { 30282, 0x00000B13 }, /* GL_POINT_SIZE_GRANULARITY */ - { 30308, 0x00008127 }, /* GL_POINT_SIZE_MAX */ - { 30326, 0x00008127 }, /* GL_POINT_SIZE_MAX_ARB */ - { 30348, 0x00008127 }, /* GL_POINT_SIZE_MAX_EXT */ - { 30370, 0x00008127 }, /* GL_POINT_SIZE_MAX_SGIS */ - { 30393, 0x00008126 }, /* GL_POINT_SIZE_MIN */ - { 30411, 0x00008126 }, /* GL_POINT_SIZE_MIN_ARB */ - { 30433, 0x00008126 }, /* GL_POINT_SIZE_MIN_EXT */ - { 30455, 0x00008126 }, /* GL_POINT_SIZE_MIN_SGIS */ - { 30478, 0x00000B12 }, /* GL_POINT_SIZE_RANGE */ - { 30498, 0x00000B10 }, /* GL_POINT_SMOOTH */ - { 30514, 0x00000C51 }, /* GL_POINT_SMOOTH_HINT */ - { 30535, 0x00008861 }, /* GL_POINT_SPRITE */ - { 30551, 0x00008861 }, /* GL_POINT_SPRITE_ARB */ - { 30571, 0x00008CA0 }, /* GL_POINT_SPRITE_COORD_ORIGIN */ - { 30600, 0x00008861 }, /* GL_POINT_SPRITE_NV */ - { 30619, 0x00008861 }, /* GL_POINT_SPRITE_OES */ - { 30639, 0x00008863 }, /* GL_POINT_SPRITE_R_MODE_NV */ - { 30665, 0x00000701 }, /* GL_POINT_TOKEN */ - { 30680, 0x00000009 }, /* GL_POLYGON */ - { 30691, 0x00000008 }, /* GL_POLYGON_BIT */ - { 30706, 0x00000B40 }, /* GL_POLYGON_MODE */ - { 30722, 0x00008039 }, /* GL_POLYGON_OFFSET_BIAS */ - { 30745, 0x00008038 }, /* GL_POLYGON_OFFSET_FACTOR */ - { 30770, 0x00008037 }, /* GL_POLYGON_OFFSET_FILL */ - { 30793, 0x00002A02 }, /* GL_POLYGON_OFFSET_LINE */ - { 30816, 0x00002A01 }, /* GL_POLYGON_OFFSET_POINT */ - { 30840, 0x00002A00 }, /* GL_POLYGON_OFFSET_UNITS */ - { 30864, 0x00000B41 }, /* GL_POLYGON_SMOOTH */ - { 30882, 0x00000C53 }, /* GL_POLYGON_SMOOTH_HINT */ - { 30905, 0x00000B42 }, /* GL_POLYGON_STIPPLE */ - { 30924, 0x00000010 }, /* GL_POLYGON_STIPPLE_BIT */ - { 30947, 0x00000703 }, /* GL_POLYGON_TOKEN */ - { 30964, 0x00001203 }, /* GL_POSITION */ - { 30976, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */ - { 31008, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI */ - { 31044, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */ - { 31077, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI */ - { 31114, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */ - { 31145, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI */ - { 31180, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */ - { 31212, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI */ - { 31248, 0x000080D2 }, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */ - { 31281, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */ - { 31313, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI */ - { 31349, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */ - { 31382, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI */ - { 31419, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS */ - { 31449, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS_SGI */ - { 31483, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE */ - { 31514, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE_SGI */ - { 31549, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS */ - { 31580, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS_EXT */ - { 31615, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE */ - { 31647, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE_EXT */ - { 31683, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS */ - { 31713, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS_EXT */ - { 31747, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE */ - { 31778, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE_EXT */ - { 31813, 0x000080D1 }, /* GL_POST_CONVOLUTION_COLOR_TABLE */ - { 31845, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS */ - { 31876, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS_EXT */ - { 31911, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE */ - { 31943, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE_EXT */ - { 31979, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS */ - { 32008, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS_EXT */ - { 32041, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE */ - { 32071, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE_EXT */ - { 32105, 0x0000817B }, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */ - { 32144, 0x00008179 }, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */ - { 32177, 0x0000817C }, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */ - { 32217, 0x0000817A }, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */ - { 32251, 0x00008578 }, /* GL_PREVIOUS */ - { 32263, 0x00008578 }, /* GL_PREVIOUS_ARB */ - { 32279, 0x00008578 }, /* GL_PREVIOUS_EXT */ - { 32295, 0x00008577 }, /* GL_PRIMARY_COLOR */ - { 32312, 0x00008577 }, /* GL_PRIMARY_COLOR_ARB */ - { 32333, 0x00008577 }, /* GL_PRIMARY_COLOR_EXT */ - { 32354, 0x00008C87 }, /* GL_PRIMITIVES_GENERATED */ - { 32378, 0x00008C87 }, /* GL_PRIMITIVES_GENERATED_EXT */ - { 32406, 0x00008F9D }, /* GL_PRIMITIVE_RESTART */ - { 32427, 0x00008F9E }, /* GL_PRIMITIVE_RESTART_INDEX */ - { 32454, 0x00008559 }, /* GL_PRIMITIVE_RESTART_INDEX_NV */ - { 32484, 0x00008558 }, /* GL_PRIMITIVE_RESTART_NV */ - { 32508, 0x000088B0 }, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */ - { 32541, 0x00008805 }, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */ - { 32573, 0x000088AC }, /* GL_PROGRAM_ATTRIBS_ARB */ - { 32596, 0x000087FF }, /* GL_PROGRAM_BINARY_FORMATS_OES */ - { 32626, 0x00008741 }, /* GL_PROGRAM_BINARY_LENGTH_OES */ - { 32655, 0x00008677 }, /* GL_PROGRAM_BINDING_ARB */ - { 32678, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_ARB */ - { 32708, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_NV */ - { 32737, 0x00008874 }, /* GL_PROGRAM_ERROR_STRING_ARB */ - { 32765, 0x00008876 }, /* GL_PROGRAM_FORMAT_ARB */ - { 32787, 0x00008875 }, /* GL_PROGRAM_FORMAT_ASCII_ARB */ - { 32815, 0x000088A0 }, /* GL_PROGRAM_INSTRUCTIONS_ARB */ - { 32843, 0x00008627 }, /* GL_PROGRAM_LENGTH_ARB */ - { 32865, 0x00008627 }, /* GL_PROGRAM_LENGTH_NV */ - { 32886, 0x000088B2 }, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ - { 32926, 0x00008808 }, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ - { 32965, 0x000088AE }, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */ - { 32995, 0x000088A2 }, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ - { 33030, 0x000088AA }, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */ - { 33063, 0x000088A6 }, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */ - { 33097, 0x0000880A }, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ - { 33136, 0x00008809 }, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ - { 33175, 0x00008B40 }, /* GL_PROGRAM_OBJECT_ARB */ - { 33197, 0x000088A8 }, /* GL_PROGRAM_PARAMETERS_ARB */ - { 33223, 0x00008644 }, /* GL_PROGRAM_PARAMETER_NV */ - { 33247, 0x00008642 }, /* GL_PROGRAM_POINT_SIZE */ - { 33269, 0x00008642 }, /* GL_PROGRAM_POINT_SIZE_ARB */ - { 33295, 0x00008647 }, /* GL_PROGRAM_RESIDENT_NV */ - { 33318, 0x00008628 }, /* GL_PROGRAM_STRING_ARB */ - { 33340, 0x00008628 }, /* GL_PROGRAM_STRING_NV */ - { 33361, 0x00008646 }, /* GL_PROGRAM_TARGET_NV */ - { 33382, 0x000088A4 }, /* GL_PROGRAM_TEMPORARIES_ARB */ - { 33409, 0x00008807 }, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */ - { 33441, 0x00008806 }, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */ - { 33473, 0x000088B6 }, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */ - { 33508, 0x00001701 }, /* GL_PROJECTION */ - { 33522, 0x00000BA7 }, /* GL_PROJECTION_MATRIX */ - { 33543, 0x0000898E }, /* GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES */ - { 33586, 0x00000BA4 }, /* GL_PROJECTION_STACK_DEPTH */ - { 33612, 0x00008E4F }, /* GL_PROVOKING_VERTEX */ - { 33632, 0x00008E4F }, /* GL_PROVOKING_VERTEX_EXT */ - { 33656, 0x000080D3 }, /* GL_PROXY_COLOR_TABLE */ - { 33677, 0x00008025 }, /* GL_PROXY_HISTOGRAM */ - { 33696, 0x00008025 }, /* GL_PROXY_HISTOGRAM_EXT */ - { 33719, 0x000080D5 }, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */ - { 33758, 0x000080D4 }, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */ - { 33796, 0x00008063 }, /* GL_PROXY_TEXTURE_1D */ - { 33816, 0x00008C19 }, /* GL_PROXY_TEXTURE_1D_ARRAY */ - { 33842, 0x00008C19 }, /* GL_PROXY_TEXTURE_1D_ARRAY_EXT */ - { 33872, 0x00008063 }, /* GL_PROXY_TEXTURE_1D_EXT */ - { 33896, 0x00008064 }, /* GL_PROXY_TEXTURE_2D */ - { 33916, 0x00008C1B }, /* GL_PROXY_TEXTURE_2D_ARRAY */ - { 33942, 0x00008C1B }, /* GL_PROXY_TEXTURE_2D_ARRAY_EXT */ - { 33972, 0x00008064 }, /* GL_PROXY_TEXTURE_2D_EXT */ - { 33996, 0x00008070 }, /* GL_PROXY_TEXTURE_3D */ - { 34016, 0x000080BD }, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */ - { 34049, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP */ - { 34075, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP_ARB */ - { 34105, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE */ - { 34132, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_ARB */ - { 34163, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_NV */ - { 34193, 0x00008A1D }, /* GL_PURGEABLE_APPLE */ - { 34212, 0x00002003 }, /* GL_Q */ - { 34217, 0x00001209 }, /* GL_QUADRATIC_ATTENUATION */ - { 34242, 0x00000007 }, /* GL_QUADS */ - { 34251, 0x00008E4C }, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION */ - { 34295, 0x00008E4C }, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT */ - { 34343, 0x00008614 }, /* GL_QUAD_MESH_SUN */ - { 34360, 0x00000008 }, /* GL_QUAD_STRIP */ - { 34374, 0x00008E16 }, /* GL_QUERY_BY_REGION_NO_WAIT */ - { 34401, 0x00008E16 }, /* GL_QUERY_BY_REGION_NO_WAIT_NV */ - { 34431, 0x00008E15 }, /* GL_QUERY_BY_REGION_WAIT */ - { 34455, 0x00008E15 }, /* GL_QUERY_BY_REGION_WAIT_NV */ - { 34482, 0x00008864 }, /* GL_QUERY_COUNTER_BITS */ - { 34504, 0x00008864 }, /* GL_QUERY_COUNTER_BITS_ARB */ - { 34530, 0x00008E14 }, /* GL_QUERY_NO_WAIT */ - { 34547, 0x00008E14 }, /* GL_QUERY_NO_WAIT_NV */ - { 34567, 0x00008866 }, /* GL_QUERY_RESULT */ - { 34583, 0x00008866 }, /* GL_QUERY_RESULT_ARB */ - { 34603, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE */ - { 34629, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE_ARB */ - { 34659, 0x00008E13 }, /* GL_QUERY_WAIT */ - { 34673, 0x00008E13 }, /* GL_QUERY_WAIT_NV */ - { 34690, 0x00002002 }, /* GL_R */ - { 34695, 0x00008C3A }, /* GL_R11F_G11F_B10F */ - { 34713, 0x00008F98 }, /* GL_R16_SNORM */ - { 34726, 0x00002A10 }, /* GL_R3_G3_B2 */ - { 34738, 0x00008F94 }, /* GL_R8_SNORM */ - { 34750, 0x00008C89 }, /* GL_RASTERIZER_DISCARD */ - { 34772, 0x00008C89 }, /* GL_RASTERIZER_DISCARD_EXT */ - { 34798, 0x00019262 }, /* GL_RASTER_POSITION_UNCLIPPED_IBM */ - { 34831, 0x00000C02 }, /* GL_READ_BUFFER */ - { 34846, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER */ - { 34866, 0x00008CAA }, /* GL_READ_FRAMEBUFFER_BINDING */ - { 34894, 0x00008CAA }, /* GL_READ_FRAMEBUFFER_BINDING_EXT */ - { 34926, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER_EXT */ - { 34950, 0x000088B8 }, /* GL_READ_ONLY */ - { 34963, 0x000088B8 }, /* GL_READ_ONLY_ARB */ - { 34980, 0x000088BA }, /* GL_READ_WRITE */ - { 34994, 0x000088BA }, /* GL_READ_WRITE_ARB */ - { 35012, 0x00001903 }, /* GL_RED */ - { 35019, 0x00008016 }, /* GL_REDUCE */ - { 35029, 0x00008016 }, /* GL_REDUCE_EXT */ - { 35043, 0x00000D15 }, /* GL_RED_BIAS */ - { 35055, 0x00000D52 }, /* GL_RED_BITS */ - { 35067, 0x00008D94 }, /* GL_RED_INTEGER */ - { 35082, 0x00008D94 }, /* GL_RED_INTEGER_EXT */ - { 35101, 0x00000D14 }, /* GL_RED_SCALE */ - { 35114, 0x00008F90 }, /* GL_RED_SNORM */ - { 35127, 0x00008512 }, /* GL_REFLECTION_MAP */ - { 35145, 0x00008512 }, /* GL_REFLECTION_MAP_ARB */ - { 35167, 0x00008512 }, /* GL_REFLECTION_MAP_NV */ - { 35188, 0x00008512 }, /* GL_REFLECTION_MAP_OES */ - { 35210, 0x00008A19 }, /* GL_RELEASED_APPLE */ - { 35228, 0x00001C00 }, /* GL_RENDER */ - { 35238, 0x00008D41 }, /* GL_RENDERBUFFER */ - { 35254, 0x00008D53 }, /* GL_RENDERBUFFER_ALPHA_SIZE */ - { 35281, 0x00008D53 }, /* GL_RENDERBUFFER_ALPHA_SIZE_OES */ - { 35312, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING */ - { 35336, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING_EXT */ - { 35364, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING_OES */ - { 35392, 0x00008D52 }, /* GL_RENDERBUFFER_BLUE_SIZE */ - { 35418, 0x00008D52 }, /* GL_RENDERBUFFER_BLUE_SIZE_OES */ - { 35448, 0x00008D54 }, /* GL_RENDERBUFFER_DEPTH_SIZE */ - { 35475, 0x00008D54 }, /* GL_RENDERBUFFER_DEPTH_SIZE_OES */ - { 35506, 0x00008D41 }, /* GL_RENDERBUFFER_EXT */ - { 35526, 0x00008D51 }, /* GL_RENDERBUFFER_GREEN_SIZE */ - { 35553, 0x00008D51 }, /* GL_RENDERBUFFER_GREEN_SIZE_OES */ - { 35584, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT */ - { 35607, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT_EXT */ - { 35634, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT_OES */ - { 35661, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT */ - { 35693, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT_EXT */ - { 35729, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT_OES */ - { 35765, 0x00008D41 }, /* GL_RENDERBUFFER_OES */ - { 35785, 0x00008D50 }, /* GL_RENDERBUFFER_RED_SIZE */ - { 35810, 0x00008D50 }, /* GL_RENDERBUFFER_RED_SIZE_OES */ - { 35839, 0x00008CAB }, /* GL_RENDERBUFFER_SAMPLES */ - { 35863, 0x00008CAB }, /* GL_RENDERBUFFER_SAMPLES_EXT */ - { 35891, 0x00008D55 }, /* GL_RENDERBUFFER_STENCIL_SIZE */ - { 35920, 0x00008D55 }, /* GL_RENDERBUFFER_STENCIL_SIZE_OES */ - { 35953, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH */ - { 35975, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH_EXT */ - { 36001, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH_OES */ - { 36027, 0x00001F01 }, /* GL_RENDERER */ - { 36039, 0x00000C40 }, /* GL_RENDER_MODE */ - { 36054, 0x00002901 }, /* GL_REPEAT */ - { 36064, 0x00001E01 }, /* GL_REPLACE */ - { 36075, 0x00008062 }, /* GL_REPLACE_EXT */ - { 36090, 0x00008153 }, /* GL_REPLICATE_BORDER_HP */ - { 36113, 0x0000803A }, /* GL_RESCALE_NORMAL */ - { 36131, 0x0000803A }, /* GL_RESCALE_NORMAL_EXT */ - { 36153, 0x00008A1B }, /* GL_RETAINED_APPLE */ - { 36171, 0x00000102 }, /* GL_RETURN */ - { 36181, 0x00008F99 }, /* GL_RG16_SNORM */ - { 36195, 0x00008F95 }, /* GL_RG8_SNORM */ - { 36208, 0x00001907 }, /* GL_RGB */ - { 36215, 0x00008052 }, /* GL_RGB10 */ - { 36224, 0x00008059 }, /* GL_RGB10_A2 */ - { 36236, 0x00008059 }, /* GL_RGB10_A2_EXT */ - { 36252, 0x00008052 }, /* GL_RGB10_EXT */ - { 36265, 0x00008053 }, /* GL_RGB12 */ - { 36274, 0x00008053 }, /* GL_RGB12_EXT */ - { 36287, 0x00008054 }, /* GL_RGB16 */ - { 36296, 0x0000881B }, /* GL_RGB16F */ - { 36306, 0x00008D89 }, /* GL_RGB16I */ - { 36316, 0x00008D89 }, /* GL_RGB16I_EXT */ - { 36330, 0x00008D77 }, /* GL_RGB16UI */ - { 36341, 0x00008D77 }, /* GL_RGB16UI_EXT */ - { 36356, 0x00008054 }, /* GL_RGB16_EXT */ - { 36369, 0x00008F9A }, /* GL_RGB16_SNORM */ - { 36384, 0x0000804E }, /* GL_RGB2_EXT */ - { 36396, 0x00008815 }, /* GL_RGB32F */ - { 36406, 0x00008D83 }, /* GL_RGB32I */ - { 36416, 0x00008D83 }, /* GL_RGB32I_EXT */ - { 36430, 0x00008D71 }, /* GL_RGB32UI */ - { 36441, 0x00008D71 }, /* GL_RGB32UI_EXT */ - { 36456, 0x0000804F }, /* GL_RGB4 */ - { 36464, 0x0000804F }, /* GL_RGB4_EXT */ - { 36476, 0x000083A1 }, /* GL_RGB4_S3TC */ - { 36489, 0x00008050 }, /* GL_RGB5 */ - { 36497, 0x00008D62 }, /* GL_RGB565 */ - { 36507, 0x00008D62 }, /* GL_RGB565_OES */ - { 36521, 0x00008057 }, /* GL_RGB5_A1 */ - { 36532, 0x00008057 }, /* GL_RGB5_A1_EXT */ - { 36547, 0x00008057 }, /* GL_RGB5_A1_OES */ - { 36562, 0x00008050 }, /* GL_RGB5_EXT */ - { 36574, 0x00008051 }, /* GL_RGB8 */ - { 36582, 0x00008D8F }, /* GL_RGB8I */ - { 36591, 0x00008D8F }, /* GL_RGB8I_EXT */ - { 36604, 0x00008D7D }, /* GL_RGB8UI */ - { 36614, 0x00008D7D }, /* GL_RGB8UI_EXT */ - { 36628, 0x00008051 }, /* GL_RGB8_EXT */ - { 36640, 0x00008051 }, /* GL_RGB8_OES */ - { 36652, 0x00008F96 }, /* GL_RGB8_SNORM */ - { 36666, 0x00008C3D }, /* GL_RGB9_E5 */ - { 36677, 0x00001908 }, /* GL_RGBA */ - { 36685, 0x0000805A }, /* GL_RGBA12 */ - { 36695, 0x0000805A }, /* GL_RGBA12_EXT */ - { 36709, 0x0000805B }, /* GL_RGBA16 */ - { 36719, 0x0000881A }, /* GL_RGBA16F */ - { 36730, 0x00008D88 }, /* GL_RGBA16I */ - { 36741, 0x00008D88 }, /* GL_RGBA16I_EXT */ - { 36756, 0x00008D76 }, /* GL_RGBA16UI */ - { 36768, 0x00008D76 }, /* GL_RGBA16UI_EXT */ - { 36784, 0x0000805B }, /* GL_RGBA16_EXT */ - { 36798, 0x00008F9B }, /* GL_RGBA16_SNORM */ - { 36814, 0x00008055 }, /* GL_RGBA2 */ - { 36823, 0x00008055 }, /* GL_RGBA2_EXT */ - { 36836, 0x00008814 }, /* GL_RGBA32F */ - { 36847, 0x00008D82 }, /* GL_RGBA32I */ - { 36858, 0x00008D82 }, /* GL_RGBA32I_EXT */ - { 36873, 0x00008D70 }, /* GL_RGBA32UI */ - { 36885, 0x00008D70 }, /* GL_RGBA32UI_EXT */ - { 36901, 0x00008056 }, /* GL_RGBA4 */ - { 36910, 0x000083A5 }, /* GL_RGBA4_DXT5_S3TC */ - { 36929, 0x00008056 }, /* GL_RGBA4_EXT */ - { 36942, 0x00008056 }, /* GL_RGBA4_OES */ - { 36955, 0x000083A3 }, /* GL_RGBA4_S3TC */ - { 36969, 0x00008058 }, /* GL_RGBA8 */ - { 36978, 0x00008D8E }, /* GL_RGBA8I */ - { 36988, 0x00008D8E }, /* GL_RGBA8I_EXT */ - { 37002, 0x00008D7C }, /* GL_RGBA8UI */ - { 37013, 0x00008D7C }, /* GL_RGBA8UI_EXT */ - { 37028, 0x00008058 }, /* GL_RGBA8_EXT */ - { 37041, 0x00008058 }, /* GL_RGBA8_OES */ - { 37054, 0x00008F97 }, /* GL_RGBA8_SNORM */ - { 37069, 0x000083A4 }, /* GL_RGBA_DXT5_S3TC */ - { 37087, 0x00008D99 }, /* GL_RGBA_INTEGER */ - { 37103, 0x00008D99 }, /* GL_RGBA_INTEGER_EXT */ - { 37123, 0x00008D9E }, /* GL_RGBA_INTEGER_MODE_EXT */ - { 37148, 0x00000C31 }, /* GL_RGBA_MODE */ - { 37161, 0x000083A2 }, /* GL_RGBA_S3TC */ - { 37174, 0x00008F93 }, /* GL_RGBA_SNORM */ - { 37188, 0x00008D98 }, /* GL_RGB_INTEGER */ - { 37203, 0x00008D98 }, /* GL_RGB_INTEGER_EXT */ - { 37222, 0x000083A0 }, /* GL_RGB_S3TC */ - { 37234, 0x00008573 }, /* GL_RGB_SCALE */ - { 37247, 0x00008573 }, /* GL_RGB_SCALE_ARB */ - { 37264, 0x00008573 }, /* GL_RGB_SCALE_EXT */ - { 37281, 0x00008F92 }, /* GL_RGB_SNORM */ - { 37294, 0x00008F91 }, /* GL_RG_SNORM */ - { 37306, 0x00000407 }, /* GL_RIGHT */ - { 37315, 0x00002000 }, /* GL_S */ - { 37320, 0x00008B5D }, /* GL_SAMPLER_1D */ - { 37334, 0x00008DC0 }, /* GL_SAMPLER_1D_ARRAY */ - { 37354, 0x00008DC0 }, /* GL_SAMPLER_1D_ARRAY_EXT */ - { 37378, 0x00008DC3 }, /* GL_SAMPLER_1D_ARRAY_SHADOW */ - { 37405, 0x00008DC3 }, /* GL_SAMPLER_1D_ARRAY_SHADOW_EXT */ - { 37436, 0x00008B61 }, /* GL_SAMPLER_1D_SHADOW */ - { 37457, 0x00008B5E }, /* GL_SAMPLER_2D */ - { 37471, 0x00008DC1 }, /* GL_SAMPLER_2D_ARRAY */ - { 37491, 0x00008DC1 }, /* GL_SAMPLER_2D_ARRAY_EXT */ - { 37515, 0x00008DC4 }, /* GL_SAMPLER_2D_ARRAY_SHADOW */ - { 37542, 0x00008DC4 }, /* GL_SAMPLER_2D_ARRAY_SHADOW_EXT */ - { 37573, 0x00008B63 }, /* GL_SAMPLER_2D_RECT */ - { 37592, 0x00008B64 }, /* GL_SAMPLER_2D_RECT_SHADOW */ - { 37618, 0x00008B62 }, /* GL_SAMPLER_2D_SHADOW */ - { 37639, 0x00008B5F }, /* GL_SAMPLER_3D */ - { 37653, 0x00008B5F }, /* GL_SAMPLER_3D_OES */ - { 37671, 0x00008DC2 }, /* GL_SAMPLER_BUFFER */ - { 37689, 0x00008DC2 }, /* GL_SAMPLER_BUFFER_EXT */ - { 37711, 0x00008B60 }, /* GL_SAMPLER_CUBE */ - { 37727, 0x00008DC5 }, /* GL_SAMPLER_CUBE_SHADOW */ - { 37750, 0x00008DC5 }, /* GL_SAMPLER_CUBE_SHADOW_EXT */ - { 37777, 0x000080A9 }, /* GL_SAMPLES */ - { 37788, 0x000086B4 }, /* GL_SAMPLES_3DFX */ - { 37804, 0x000080A9 }, /* GL_SAMPLES_ARB */ - { 37819, 0x00008914 }, /* GL_SAMPLES_PASSED */ - { 37837, 0x00008914 }, /* GL_SAMPLES_PASSED_ARB */ - { 37859, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ - { 37887, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE_ARB */ - { 37919, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE */ - { 37942, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE_ARB */ - { 37969, 0x000080A8 }, /* GL_SAMPLE_BUFFERS */ - { 37987, 0x000086B3 }, /* GL_SAMPLE_BUFFERS_3DFX */ - { 38010, 0x000080A8 }, /* GL_SAMPLE_BUFFERS_ARB */ - { 38032, 0x000080A0 }, /* GL_SAMPLE_COVERAGE */ - { 38051, 0x000080A0 }, /* GL_SAMPLE_COVERAGE_ARB */ - { 38074, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT */ - { 38100, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT_ARB */ - { 38130, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE */ - { 38155, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE_ARB */ - { 38184, 0x00080000 }, /* GL_SCISSOR_BIT */ - { 38199, 0x00000C10 }, /* GL_SCISSOR_BOX */ - { 38214, 0x00000C11 }, /* GL_SCISSOR_TEST */ - { 38230, 0x0000845E }, /* GL_SECONDARY_COLOR_ARRAY */ - { 38255, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ - { 38295, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB */ - { 38339, 0x0000845D }, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ - { 38372, 0x0000845A }, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ - { 38402, 0x0000845C }, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ - { 38434, 0x0000845B }, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ - { 38464, 0x00001C02 }, /* GL_SELECT */ - { 38474, 0x00000DF3 }, /* GL_SELECTION_BUFFER_POINTER */ - { 38502, 0x00000DF4 }, /* GL_SELECTION_BUFFER_SIZE */ - { 38527, 0x00008012 }, /* GL_SEPARABLE_2D */ - { 38543, 0x00008C8D }, /* GL_SEPARATE_ATTRIBS */ - { 38563, 0x00008C8D }, /* GL_SEPARATE_ATTRIBS_EXT */ - { 38587, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR */ - { 38614, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR_EXT */ - { 38645, 0x0000150F }, /* GL_SET */ - { 38652, 0x00008DF8 }, /* GL_SHADER_BINARY_FORMATS */ - { 38677, 0x00008DFA }, /* GL_SHADER_COMPILER */ - { 38696, 0x00008B48 }, /* GL_SHADER_OBJECT_ARB */ - { 38717, 0x00008B88 }, /* GL_SHADER_SOURCE_LENGTH */ - { 38741, 0x00008B4F }, /* GL_SHADER_TYPE */ - { 38756, 0x00000B54 }, /* GL_SHADE_MODEL */ - { 38771, 0x00008B8C }, /* GL_SHADING_LANGUAGE_VERSION */ - { 38799, 0x000080BF }, /* GL_SHADOW_AMBIENT_SGIX */ - { 38822, 0x000081FB }, /* GL_SHARED_TEXTURE_PALETTE_EXT */ - { 38852, 0x00001601 }, /* GL_SHININESS */ - { 38865, 0x00001402 }, /* GL_SHORT */ - { 38874, 0x00009119 }, /* GL_SIGNALED */ - { 38886, 0x00008F9C }, /* GL_SIGNED_NORMALIZED */ - { 38907, 0x000081F9 }, /* GL_SINGLE_COLOR */ - { 38923, 0x000081F9 }, /* GL_SINGLE_COLOR_EXT */ - { 38943, 0x000085CC }, /* GL_SLICE_ACCUM_SUN */ - { 38962, 0x00008C46 }, /* GL_SLUMINANCE */ - { 38976, 0x00008C47 }, /* GL_SLUMINANCE8 */ - { 38991, 0x00008C45 }, /* GL_SLUMINANCE8_ALPHA8 */ - { 39013, 0x00008C44 }, /* GL_SLUMINANCE_ALPHA */ - { 39033, 0x00001D01 }, /* GL_SMOOTH */ - { 39043, 0x00000B23 }, /* GL_SMOOTH_LINE_WIDTH_GRANULARITY */ - { 39076, 0x00000B22 }, /* GL_SMOOTH_LINE_WIDTH_RANGE */ - { 39103, 0x00000B13 }, /* GL_SMOOTH_POINT_SIZE_GRANULARITY */ - { 39136, 0x00000B12 }, /* GL_SMOOTH_POINT_SIZE_RANGE */ - { 39163, 0x00008588 }, /* GL_SOURCE0_ALPHA */ - { 39180, 0x00008588 }, /* GL_SOURCE0_ALPHA_ARB */ - { 39201, 0x00008588 }, /* GL_SOURCE0_ALPHA_EXT */ - { 39222, 0x00008580 }, /* GL_SOURCE0_RGB */ - { 39237, 0x00008580 }, /* GL_SOURCE0_RGB_ARB */ - { 39256, 0x00008580 }, /* GL_SOURCE0_RGB_EXT */ - { 39275, 0x00008589 }, /* GL_SOURCE1_ALPHA */ - { 39292, 0x00008589 }, /* GL_SOURCE1_ALPHA_ARB */ - { 39313, 0x00008589 }, /* GL_SOURCE1_ALPHA_EXT */ - { 39334, 0x00008581 }, /* GL_SOURCE1_RGB */ - { 39349, 0x00008581 }, /* GL_SOURCE1_RGB_ARB */ - { 39368, 0x00008581 }, /* GL_SOURCE1_RGB_EXT */ - { 39387, 0x0000858A }, /* GL_SOURCE2_ALPHA */ - { 39404, 0x0000858A }, /* GL_SOURCE2_ALPHA_ARB */ - { 39425, 0x0000858A }, /* GL_SOURCE2_ALPHA_EXT */ - { 39446, 0x00008582 }, /* GL_SOURCE2_RGB */ - { 39461, 0x00008582 }, /* GL_SOURCE2_RGB_ARB */ - { 39480, 0x00008582 }, /* GL_SOURCE2_RGB_EXT */ - { 39499, 0x0000858B }, /* GL_SOURCE3_ALPHA_NV */ - { 39519, 0x00008583 }, /* GL_SOURCE3_RGB_NV */ - { 39537, 0x00001202 }, /* GL_SPECULAR */ - { 39549, 0x00002402 }, /* GL_SPHERE_MAP */ - { 39563, 0x00001206 }, /* GL_SPOT_CUTOFF */ - { 39578, 0x00001204 }, /* GL_SPOT_DIRECTION */ - { 39596, 0x00001205 }, /* GL_SPOT_EXPONENT */ - { 39613, 0x00008588 }, /* GL_SRC0_ALPHA */ - { 39627, 0x00008580 }, /* GL_SRC0_RGB */ - { 39639, 0x00008589 }, /* GL_SRC1_ALPHA */ - { 39653, 0x00008581 }, /* GL_SRC1_RGB */ - { 39665, 0x0000858A }, /* GL_SRC2_ALPHA */ - { 39679, 0x00008582 }, /* GL_SRC2_RGB */ - { 39691, 0x00000302 }, /* GL_SRC_ALPHA */ - { 39704, 0x00000308 }, /* GL_SRC_ALPHA_SATURATE */ - { 39726, 0x00000300 }, /* GL_SRC_COLOR */ - { 39739, 0x00008C40 }, /* GL_SRGB */ - { 39747, 0x00008C41 }, /* GL_SRGB8 */ - { 39756, 0x00008C43 }, /* GL_SRGB8_ALPHA8 */ - { 39772, 0x00008C42 }, /* GL_SRGB_ALPHA */ - { 39786, 0x00000503 }, /* GL_STACK_OVERFLOW */ - { 39804, 0x00000504 }, /* GL_STACK_UNDERFLOW */ - { 39823, 0x000088E6 }, /* GL_STATIC_COPY */ - { 39838, 0x000088E6 }, /* GL_STATIC_COPY_ARB */ - { 39857, 0x000088E4 }, /* GL_STATIC_DRAW */ - { 39872, 0x000088E4 }, /* GL_STATIC_DRAW_ARB */ - { 39891, 0x000088E5 }, /* GL_STATIC_READ */ - { 39906, 0x000088E5 }, /* GL_STATIC_READ_ARB */ - { 39925, 0x00001802 }, /* GL_STENCIL */ - { 39936, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT */ - { 39958, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_EXT */ - { 39984, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_OES */ - { 40010, 0x00008801 }, /* GL_STENCIL_BACK_FAIL */ - { 40031, 0x00008801 }, /* GL_STENCIL_BACK_FAIL_ATI */ - { 40056, 0x00008800 }, /* GL_STENCIL_BACK_FUNC */ - { 40077, 0x00008800 }, /* GL_STENCIL_BACK_FUNC_ATI */ - { 40102, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ - { 40134, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI */ - { 40170, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ - { 40202, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI */ - { 40238, 0x00008CA3 }, /* GL_STENCIL_BACK_REF */ - { 40258, 0x00008CA4 }, /* GL_STENCIL_BACK_VALUE_MASK */ - { 40285, 0x00008CA5 }, /* GL_STENCIL_BACK_WRITEMASK */ - { 40311, 0x00000D57 }, /* GL_STENCIL_BITS */ - { 40327, 0x00008224 }, /* GL_STENCIL_BUFFER */ - { 40345, 0x00000400 }, /* GL_STENCIL_BUFFER_BIT */ - { 40367, 0x00000B91 }, /* GL_STENCIL_CLEAR_VALUE */ - { 40390, 0x00000B94 }, /* GL_STENCIL_FAIL */ - { 40406, 0x00000B92 }, /* GL_STENCIL_FUNC */ - { 40422, 0x00001901 }, /* GL_STENCIL_INDEX */ - { 40439, 0x00008D46 }, /* GL_STENCIL_INDEX1 */ - { 40457, 0x00008D49 }, /* GL_STENCIL_INDEX16 */ - { 40476, 0x00008D49 }, /* GL_STENCIL_INDEX16_EXT */ - { 40499, 0x00008D46 }, /* GL_STENCIL_INDEX1_EXT */ - { 40521, 0x00008D46 }, /* GL_STENCIL_INDEX1_OES */ - { 40543, 0x00008D47 }, /* GL_STENCIL_INDEX4 */ - { 40561, 0x00008D47 }, /* GL_STENCIL_INDEX4_EXT */ - { 40583, 0x00008D47 }, /* GL_STENCIL_INDEX4_OES */ - { 40605, 0x00008D48 }, /* GL_STENCIL_INDEX8 */ - { 40623, 0x00008D48 }, /* GL_STENCIL_INDEX8_EXT */ - { 40645, 0x00008D48 }, /* GL_STENCIL_INDEX8_OES */ - { 40667, 0x00008D45 }, /* GL_STENCIL_INDEX_EXT */ - { 40688, 0x00000B95 }, /* GL_STENCIL_PASS_DEPTH_FAIL */ - { 40715, 0x00000B96 }, /* GL_STENCIL_PASS_DEPTH_PASS */ - { 40742, 0x00000B97 }, /* GL_STENCIL_REF */ - { 40757, 0x00000B90 }, /* GL_STENCIL_TEST */ - { 40773, 0x00008910 }, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ - { 40802, 0x00000B93 }, /* GL_STENCIL_VALUE_MASK */ - { 40824, 0x00000B98 }, /* GL_STENCIL_WRITEMASK */ - { 40845, 0x00000C33 }, /* GL_STEREO */ - { 40855, 0x000085BE }, /* GL_STORAGE_CACHED_APPLE */ - { 40879, 0x000085BD }, /* GL_STORAGE_PRIVATE_APPLE */ - { 40904, 0x000085BF }, /* GL_STORAGE_SHARED_APPLE */ - { 40928, 0x000088E2 }, /* GL_STREAM_COPY */ - { 40943, 0x000088E2 }, /* GL_STREAM_COPY_ARB */ - { 40962, 0x000088E0 }, /* GL_STREAM_DRAW */ - { 40977, 0x000088E0 }, /* GL_STREAM_DRAW_ARB */ - { 40996, 0x000088E1 }, /* GL_STREAM_READ */ - { 41011, 0x000088E1 }, /* GL_STREAM_READ_ARB */ - { 41030, 0x00000D50 }, /* GL_SUBPIXEL_BITS */ - { 41047, 0x000084E7 }, /* GL_SUBTRACT */ - { 41059, 0x000084E7 }, /* GL_SUBTRACT_ARB */ - { 41075, 0x00009113 }, /* GL_SYNC_CONDITION */ - { 41093, 0x00009116 }, /* GL_SYNC_FENCE */ - { 41107, 0x00009115 }, /* GL_SYNC_FLAGS */ - { 41121, 0x00000001 }, /* GL_SYNC_FLUSH_COMMANDS_BIT */ - { 41148, 0x00009117 }, /* GL_SYNC_GPU_COMMANDS_COMPLETE */ - { 41178, 0x00009114 }, /* GL_SYNC_STATUS */ - { 41193, 0x00002001 }, /* GL_T */ - { 41198, 0x00002A2A }, /* GL_T2F_C3F_V3F */ - { 41213, 0x00002A2C }, /* GL_T2F_C4F_N3F_V3F */ - { 41232, 0x00002A29 }, /* GL_T2F_C4UB_V3F */ - { 41248, 0x00002A2B }, /* GL_T2F_N3F_V3F */ - { 41263, 0x00002A27 }, /* GL_T2F_V3F */ - { 41274, 0x00002A2D }, /* GL_T4F_C4F_N3F_V4F */ - { 41293, 0x00002A28 }, /* GL_T4F_V4F */ - { 41304, 0x00008031 }, /* GL_TABLE_TOO_LARGE_EXT */ - { 41327, 0x00001702 }, /* GL_TEXTURE */ - { 41338, 0x000084C0 }, /* GL_TEXTURE0 */ - { 41350, 0x000084C0 }, /* GL_TEXTURE0_ARB */ - { 41366, 0x000084C1 }, /* GL_TEXTURE1 */ - { 41378, 0x000084CA }, /* GL_TEXTURE10 */ - { 41391, 0x000084CA }, /* GL_TEXTURE10_ARB */ - { 41408, 0x000084CB }, /* GL_TEXTURE11 */ - { 41421, 0x000084CB }, /* GL_TEXTURE11_ARB */ - { 41438, 0x000084CC }, /* GL_TEXTURE12 */ - { 41451, 0x000084CC }, /* GL_TEXTURE12_ARB */ - { 41468, 0x000084CD }, /* GL_TEXTURE13 */ - { 41481, 0x000084CD }, /* GL_TEXTURE13_ARB */ - { 41498, 0x000084CE }, /* GL_TEXTURE14 */ - { 41511, 0x000084CE }, /* GL_TEXTURE14_ARB */ - { 41528, 0x000084CF }, /* GL_TEXTURE15 */ - { 41541, 0x000084CF }, /* GL_TEXTURE15_ARB */ - { 41558, 0x000084D0 }, /* GL_TEXTURE16 */ - { 41571, 0x000084D0 }, /* GL_TEXTURE16_ARB */ - { 41588, 0x000084D1 }, /* GL_TEXTURE17 */ - { 41601, 0x000084D1 }, /* GL_TEXTURE17_ARB */ - { 41618, 0x000084D2 }, /* GL_TEXTURE18 */ - { 41631, 0x000084D2 }, /* GL_TEXTURE18_ARB */ - { 41648, 0x000084D3 }, /* GL_TEXTURE19 */ - { 41661, 0x000084D3 }, /* GL_TEXTURE19_ARB */ - { 41678, 0x000084C1 }, /* GL_TEXTURE1_ARB */ - { 41694, 0x000084C2 }, /* GL_TEXTURE2 */ - { 41706, 0x000084D4 }, /* GL_TEXTURE20 */ - { 41719, 0x000084D4 }, /* GL_TEXTURE20_ARB */ - { 41736, 0x000084D5 }, /* GL_TEXTURE21 */ - { 41749, 0x000084D5 }, /* GL_TEXTURE21_ARB */ - { 41766, 0x000084D6 }, /* GL_TEXTURE22 */ - { 41779, 0x000084D6 }, /* GL_TEXTURE22_ARB */ - { 41796, 0x000084D7 }, /* GL_TEXTURE23 */ - { 41809, 0x000084D7 }, /* GL_TEXTURE23_ARB */ - { 41826, 0x000084D8 }, /* GL_TEXTURE24 */ - { 41839, 0x000084D8 }, /* GL_TEXTURE24_ARB */ - { 41856, 0x000084D9 }, /* GL_TEXTURE25 */ - { 41869, 0x000084D9 }, /* GL_TEXTURE25_ARB */ - { 41886, 0x000084DA }, /* GL_TEXTURE26 */ - { 41899, 0x000084DA }, /* GL_TEXTURE26_ARB */ - { 41916, 0x000084DB }, /* GL_TEXTURE27 */ - { 41929, 0x000084DB }, /* GL_TEXTURE27_ARB */ - { 41946, 0x000084DC }, /* GL_TEXTURE28 */ - { 41959, 0x000084DC }, /* GL_TEXTURE28_ARB */ - { 41976, 0x000084DD }, /* GL_TEXTURE29 */ - { 41989, 0x000084DD }, /* GL_TEXTURE29_ARB */ - { 42006, 0x000084C2 }, /* GL_TEXTURE2_ARB */ - { 42022, 0x000084C3 }, /* GL_TEXTURE3 */ - { 42034, 0x000084DE }, /* GL_TEXTURE30 */ - { 42047, 0x000084DE }, /* GL_TEXTURE30_ARB */ - { 42064, 0x000084DF }, /* GL_TEXTURE31 */ - { 42077, 0x000084DF }, /* GL_TEXTURE31_ARB */ - { 42094, 0x000084C3 }, /* GL_TEXTURE3_ARB */ - { 42110, 0x000084C4 }, /* GL_TEXTURE4 */ - { 42122, 0x000084C4 }, /* GL_TEXTURE4_ARB */ - { 42138, 0x000084C5 }, /* GL_TEXTURE5 */ - { 42150, 0x000084C5 }, /* GL_TEXTURE5_ARB */ - { 42166, 0x000084C6 }, /* GL_TEXTURE6 */ - { 42178, 0x000084C6 }, /* GL_TEXTURE6_ARB */ - { 42194, 0x000084C7 }, /* GL_TEXTURE7 */ - { 42206, 0x000084C7 }, /* GL_TEXTURE7_ARB */ - { 42222, 0x000084C8 }, /* GL_TEXTURE8 */ - { 42234, 0x000084C8 }, /* GL_TEXTURE8_ARB */ - { 42250, 0x000084C9 }, /* GL_TEXTURE9 */ - { 42262, 0x000084C9 }, /* GL_TEXTURE9_ARB */ - { 42278, 0x00000DE0 }, /* GL_TEXTURE_1D */ - { 42292, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY */ - { 42312, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY_EXT */ - { 42336, 0x00000DE1 }, /* GL_TEXTURE_2D */ - { 42350, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY */ - { 42370, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY_EXT */ - { 42394, 0x0000806F }, /* GL_TEXTURE_3D */ - { 42408, 0x0000806F }, /* GL_TEXTURE_3D_OES */ - { 42426, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE */ - { 42448, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE_EXT */ - { 42474, 0x0000813C }, /* GL_TEXTURE_BASE_LEVEL */ - { 42496, 0x00008068 }, /* GL_TEXTURE_BINDING_1D */ - { 42518, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY */ - { 42546, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY_EXT */ - { 42578, 0x00008069 }, /* GL_TEXTURE_BINDING_2D */ - { 42600, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY */ - { 42628, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY_EXT */ - { 42660, 0x0000806A }, /* GL_TEXTURE_BINDING_3D */ - { 42682, 0x0000806A }, /* GL_TEXTURE_BINDING_3D_OES */ - { 42708, 0x00008C2C }, /* GL_TEXTURE_BINDING_BUFFER */ - { 42734, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP */ - { 42762, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_ARB */ - { 42794, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_OES */ - { 42826, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE */ - { 42855, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_ARB */ - { 42888, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_NV */ - { 42920, 0x00040000 }, /* GL_TEXTURE_BIT */ - { 42935, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE */ - { 42956, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE_EXT */ - { 42981, 0x00001005 }, /* GL_TEXTURE_BORDER */ - { 42999, 0x00001004 }, /* GL_TEXTURE_BORDER_COLOR */ - { 43023, 0x00008C2A }, /* GL_TEXTURE_BUFFER */ - { 43041, 0x00008C2D }, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING */ - { 43078, 0x00008C2E }, /* GL_TEXTURE_BUFFER_FORMAT */ - { 43103, 0x00008171 }, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ - { 43134, 0x00008176 }, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ - { 43164, 0x00008172 }, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ - { 43194, 0x00008175 }, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ - { 43229, 0x00008173 }, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ - { 43260, 0x00008174 }, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ - { 43298, 0x000080BC }, /* GL_TEXTURE_COLOR_TABLE_SGI */ - { 43325, 0x000081EF }, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ - { 43357, 0x000080BF }, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */ - { 43391, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC */ - { 43415, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC_ARB */ - { 43443, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE */ - { 43467, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE_ARB */ - { 43495, 0x0000819B }, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ - { 43528, 0x0000819A }, /* GL_TEXTURE_COMPARE_SGIX */ - { 43552, 0x00001003 }, /* GL_TEXTURE_COMPONENTS */ - { 43574, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED */ - { 43596, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED_ARB */ - { 43622, 0x000086A3 }, /* GL_TEXTURE_COMPRESSED_FORMATS_ARB */ - { 43656, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ - { 43689, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB */ - { 43726, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT */ - { 43754, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT_ARB */ - { 43786, 0x00008078 }, /* GL_TEXTURE_COORD_ARRAY */ - { 43809, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ - { 43847, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB */ - { 43889, 0x00008092 }, /* GL_TEXTURE_COORD_ARRAY_POINTER */ - { 43920, 0x00008088 }, /* GL_TEXTURE_COORD_ARRAY_SIZE */ - { 43948, 0x0000808A }, /* GL_TEXTURE_COORD_ARRAY_STRIDE */ - { 43978, 0x00008089 }, /* GL_TEXTURE_COORD_ARRAY_TYPE */ - { 44006, 0x00008B9D }, /* GL_TEXTURE_CROP_RECT_OES */ - { 44031, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP */ - { 44051, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_ARB */ - { 44075, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ - { 44106, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB */ - { 44141, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES */ - { 44176, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ - { 44207, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB */ - { 44242, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES */ - { 44277, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ - { 44308, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB */ - { 44343, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES */ - { 44378, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_OES */ - { 44402, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ - { 44433, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB */ - { 44468, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES */ - { 44503, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ - { 44534, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB */ - { 44569, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES */ - { 44604, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ - { 44635, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB */ - { 44670, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES */ - { 44705, 0x000088F4 }, /* GL_TEXTURE_CUBE_MAP_SEAMLESS */ - { 44734, 0x00008071 }, /* GL_TEXTURE_DEPTH */ - { 44751, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE */ - { 44773, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE_ARB */ - { 44799, 0x00002300 }, /* GL_TEXTURE_ENV */ - { 44814, 0x00002201 }, /* GL_TEXTURE_ENV_COLOR */ - { 44835, 0x00002200 }, /* GL_TEXTURE_ENV_MODE */ - { 44855, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL */ - { 44881, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL_EXT */ - { 44911, 0x00002500 }, /* GL_TEXTURE_GEN_MODE */ - { 44931, 0x00002500 }, /* GL_TEXTURE_GEN_MODE_OES */ - { 44955, 0x00000C63 }, /* GL_TEXTURE_GEN_Q */ - { 44972, 0x00000C62 }, /* GL_TEXTURE_GEN_R */ - { 44989, 0x00000C60 }, /* GL_TEXTURE_GEN_S */ - { 45006, 0x00008D60 }, /* GL_TEXTURE_GEN_STR_OES */ - { 45029, 0x00000C61 }, /* GL_TEXTURE_GEN_T */ - { 45046, 0x0000819D }, /* GL_TEXTURE_GEQUAL_R_SGIX */ - { 45071, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE */ - { 45093, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE_EXT */ - { 45119, 0x00001001 }, /* GL_TEXTURE_HEIGHT */ - { 45137, 0x000080ED }, /* GL_TEXTURE_INDEX_SIZE_EXT */ - { 45163, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE */ - { 45189, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE_EXT */ - { 45219, 0x00001003 }, /* GL_TEXTURE_INTERNAL_FORMAT */ - { 45246, 0x0000819C }, /* GL_TEXTURE_LEQUAL_R_SGIX */ - { 45271, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS */ - { 45291, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS_EXT */ - { 45315, 0x00008190 }, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ - { 45342, 0x0000818E }, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ - { 45369, 0x0000818F }, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ - { 45396, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE */ - { 45422, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE_EXT */ - { 45452, 0x00002800 }, /* GL_TEXTURE_MAG_FILTER */ - { 45474, 0x00000BA8 }, /* GL_TEXTURE_MATRIX */ - { 45492, 0x0000898F }, /* GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES */ - { 45532, 0x000084FE }, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ - { 45562, 0x0000836B }, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ - { 45590, 0x00008369 }, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ - { 45618, 0x0000836A }, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ - { 45646, 0x0000813D }, /* GL_TEXTURE_MAX_LEVEL */ - { 45667, 0x0000813B }, /* GL_TEXTURE_MAX_LOD */ - { 45686, 0x00002801 }, /* GL_TEXTURE_MIN_FILTER */ - { 45708, 0x0000813A }, /* GL_TEXTURE_MIN_LOD */ - { 45727, 0x00008066 }, /* GL_TEXTURE_PRIORITY */ - { 45747, 0x000085B7 }, /* GL_TEXTURE_RANGE_LENGTH_APPLE */ - { 45777, 0x000085B8 }, /* GL_TEXTURE_RANGE_POINTER_APPLE */ - { 45808, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE */ - { 45829, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_ARB */ - { 45854, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_NV */ - { 45878, 0x0000805C }, /* GL_TEXTURE_RED_SIZE */ - { 45898, 0x0000805C }, /* GL_TEXTURE_RED_SIZE_EXT */ - { 45922, 0x00008067 }, /* GL_TEXTURE_RESIDENT */ - { 45942, 0x00008C3F }, /* GL_TEXTURE_SHARED_SIZE */ - { 45965, 0x00000BA5 }, /* GL_TEXTURE_STACK_DEPTH */ - { 45988, 0x000088F1 }, /* GL_TEXTURE_STENCIL_SIZE */ - { 46012, 0x000088F1 }, /* GL_TEXTURE_STENCIL_SIZE_EXT */ - { 46040, 0x000085BC }, /* GL_TEXTURE_STORAGE_HINT_APPLE */ - { 46070, 0x00008065 }, /* GL_TEXTURE_TOO_LARGE_EXT */ - { 46095, 0x0000888F }, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */ - { 46129, 0x00001000 }, /* GL_TEXTURE_WIDTH */ - { 46146, 0x00008072 }, /* GL_TEXTURE_WRAP_R */ - { 46164, 0x00008072 }, /* GL_TEXTURE_WRAP_R_OES */ - { 46186, 0x00002802 }, /* GL_TEXTURE_WRAP_S */ - { 46204, 0x00002803 }, /* GL_TEXTURE_WRAP_T */ - { 46222, 0x0000911B }, /* GL_TIMEOUT_EXPIRED */ - { 46241, 0x000088BF }, /* GL_TIME_ELAPSED_EXT */ - { 46261, 0x00008648 }, /* GL_TRACK_MATRIX_NV */ - { 46280, 0x00008649 }, /* GL_TRACK_MATRIX_TRANSFORM_NV */ - { 46309, 0x00001000 }, /* GL_TRANSFORM_BIT */ - { 46326, 0x00008E22 }, /* GL_TRANSFORM_FEEDBACK */ - { 46348, 0x00008E25 }, /* GL_TRANSFORM_FEEDBACK_BINDING */ - { 46378, 0x00008C8E }, /* GL_TRANSFORM_FEEDBACK_BUFFER */ - { 46407, 0x00008E24 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE */ - { 46443, 0x00008C8F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING */ - { 46480, 0x00008C8F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT */ - { 46521, 0x00008C8E }, /* GL_TRANSFORM_FEEDBACK_BUFFER_EXT */ - { 46554, 0x00008C7F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE */ - { 46588, 0x00008C7F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE_EXT */ - { 46626, 0x00008E23 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED */ - { 46662, 0x00008C85 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE */ - { 46696, 0x00008C85 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT */ - { 46734, 0x00008C84 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_START */ - { 46769, 0x00008C84 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT */ - { 46808, 0x00008C88 }, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN */ - { 46849, 0x00008C88 }, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT */ - { 46894, 0x00008C83 }, /* GL_TRANSFORM_FEEDBACK_VARYINGS */ - { 46925, 0x00008C83 }, /* GL_TRANSFORM_FEEDBACK_VARYINGS_EXT */ - { 46960, 0x00008C76 }, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH */ - { 47001, 0x00008C76 }, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT */ - { 47046, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX */ - { 47072, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX_ARB */ - { 47102, 0x000088B7 }, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ - { 47134, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ - { 47164, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX_ARB */ - { 47198, 0x0000862C }, /* GL_TRANSPOSE_NV */ - { 47214, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX */ - { 47245, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX_ARB */ - { 47280, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX */ - { 47308, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX_ARB */ - { 47340, 0x00000004 }, /* GL_TRIANGLES */ - { 47353, 0x0000000C }, /* GL_TRIANGLES_ADJACENCY */ - { 47376, 0x0000000C }, /* GL_TRIANGLES_ADJACENCY_ARB */ - { 47403, 0x00000006 }, /* GL_TRIANGLE_FAN */ - { 47419, 0x00008615 }, /* GL_TRIANGLE_MESH_SUN */ - { 47440, 0x00000005 }, /* GL_TRIANGLE_STRIP */ - { 47458, 0x0000000D }, /* GL_TRIANGLE_STRIP_ADJACENCY */ - { 47486, 0x0000000D }, /* GL_TRIANGLE_STRIP_ADJACENCY_ARB */ - { 47518, 0x00000001 }, /* GL_TRUE */ - { 47526, 0x00008A1C }, /* GL_UNDEFINED_APPLE */ - { 47545, 0x00000CF5 }, /* GL_UNPACK_ALIGNMENT */ - { 47565, 0x0000806E }, /* GL_UNPACK_IMAGE_HEIGHT */ - { 47588, 0x00000CF1 }, /* GL_UNPACK_LSB_FIRST */ - { 47608, 0x00000CF2 }, /* GL_UNPACK_ROW_LENGTH */ - { 47629, 0x0000806D }, /* GL_UNPACK_SKIP_IMAGES */ - { 47651, 0x00000CF4 }, /* GL_UNPACK_SKIP_PIXELS */ - { 47673, 0x00000CF3 }, /* GL_UNPACK_SKIP_ROWS */ - { 47693, 0x00000CF0 }, /* GL_UNPACK_SWAP_BYTES */ - { 47714, 0x00009118 }, /* GL_UNSIGNALED */ - { 47728, 0x00001401 }, /* GL_UNSIGNED_BYTE */ - { 47745, 0x00008362 }, /* GL_UNSIGNED_BYTE_2_3_3_REV */ - { 47772, 0x00008032 }, /* GL_UNSIGNED_BYTE_3_3_2 */ - { 47795, 0x00001405 }, /* GL_UNSIGNED_INT */ - { 47811, 0x00008C3B }, /* GL_UNSIGNED_INT_10F_11F_11F_REV */ - { 47843, 0x00008036 }, /* GL_UNSIGNED_INT_10_10_10_2 */ - { 47870, 0x00008DF6 }, /* GL_UNSIGNED_INT_10_10_10_2_OES */ - { 47901, 0x000084FA }, /* GL_UNSIGNED_INT_24_8 */ - { 47922, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_EXT */ - { 47947, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_NV */ - { 47971, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_OES */ - { 47996, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV */ - { 48027, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV_EXT */ - { 48062, 0x00008C3E }, /* GL_UNSIGNED_INT_5_9_9_9_REV */ - { 48090, 0x00008035 }, /* GL_UNSIGNED_INT_8_8_8_8 */ - { 48114, 0x00008367 }, /* GL_UNSIGNED_INT_8_8_8_8_REV */ - { 48142, 0x00008DD1 }, /* GL_UNSIGNED_INT_SAMPLER_1D */ - { 48169, 0x00008DD6 }, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY */ - { 48202, 0x00008DD6 }, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT */ - { 48239, 0x00008DD1 }, /* GL_UNSIGNED_INT_SAMPLER_1D_EXT */ - { 48270, 0x00008DD2 }, /* GL_UNSIGNED_INT_SAMPLER_2D */ - { 48297, 0x00008DD7 }, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY */ - { 48330, 0x00008DD7 }, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT */ - { 48367, 0x00008DD2 }, /* GL_UNSIGNED_INT_SAMPLER_2D_EXT */ - { 48398, 0x00008DD5 }, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT */ - { 48430, 0x00008DD5 }, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT */ - { 48466, 0x00008DD3 }, /* GL_UNSIGNED_INT_SAMPLER_3D */ - { 48493, 0x00008DD3 }, /* GL_UNSIGNED_INT_SAMPLER_3D_EXT */ - { 48524, 0x00008DD8 }, /* GL_UNSIGNED_INT_SAMPLER_BUFFER */ - { 48555, 0x00008DD8 }, /* GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT */ - { 48590, 0x00008DD4 }, /* GL_UNSIGNED_INT_SAMPLER_CUBE */ - { 48619, 0x00008DD4 }, /* GL_UNSIGNED_INT_SAMPLER_CUBE_EXT */ - { 48652, 0x00008DC6 }, /* GL_UNSIGNED_INT_VEC2 */ - { 48673, 0x00008DC6 }, /* GL_UNSIGNED_INT_VEC2_EXT */ - { 48698, 0x00008DC7 }, /* GL_UNSIGNED_INT_VEC3 */ - { 48719, 0x00008DC7 }, /* GL_UNSIGNED_INT_VEC3_EXT */ - { 48744, 0x00008DC8 }, /* GL_UNSIGNED_INT_VEC4 */ - { 48765, 0x00008DC8 }, /* GL_UNSIGNED_INT_VEC4_EXT */ - { 48790, 0x00008C17 }, /* GL_UNSIGNED_NORMALIZED */ - { 48813, 0x00001403 }, /* GL_UNSIGNED_SHORT */ - { 48831, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ - { 48861, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT */ - { 48895, 0x00008033 }, /* GL_UNSIGNED_SHORT_4_4_4_4 */ - { 48921, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ - { 48951, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT */ - { 48985, 0x00008034 }, /* GL_UNSIGNED_SHORT_5_5_5_1 */ - { 49011, 0x00008363 }, /* GL_UNSIGNED_SHORT_5_6_5 */ - { 49035, 0x00008364 }, /* GL_UNSIGNED_SHORT_5_6_5_REV */ - { 49063, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_APPLE */ - { 49091, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_MESA */ - { 49118, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ - { 49150, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_MESA */ - { 49181, 0x00008CA2 }, /* GL_UPPER_LEFT */ - { 49195, 0x00002A20 }, /* GL_V2F */ - { 49202, 0x00002A21 }, /* GL_V3F */ - { 49209, 0x00008B83 }, /* GL_VALIDATE_STATUS */ - { 49228, 0x00001F00 }, /* GL_VENDOR */ - { 49238, 0x00001F02 }, /* GL_VERSION */ - { 49249, 0x00008074 }, /* GL_VERTEX_ARRAY */ - { 49265, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING */ - { 49289, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING_APPLE */ - { 49319, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ - { 49350, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING_ARB */ - { 49385, 0x0000808E }, /* GL_VERTEX_ARRAY_POINTER */ - { 49409, 0x0000807A }, /* GL_VERTEX_ARRAY_SIZE */ - { 49430, 0x0000807C }, /* GL_VERTEX_ARRAY_STRIDE */ - { 49453, 0x0000807B }, /* GL_VERTEX_ARRAY_TYPE */ - { 49474, 0x00008650 }, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ - { 49501, 0x0000865A }, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ - { 49529, 0x0000865B }, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ - { 49557, 0x0000865C }, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ - { 49585, 0x0000865D }, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ - { 49613, 0x0000865E }, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ - { 49641, 0x0000865F }, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ - { 49669, 0x00008651 }, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ - { 49696, 0x00008652 }, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ - { 49723, 0x00008653 }, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ - { 49750, 0x00008654 }, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ - { 49777, 0x00008655 }, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ - { 49804, 0x00008656 }, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ - { 49831, 0x00008657 }, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ - { 49858, 0x00008658 }, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ - { 49885, 0x00008659 }, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ - { 49912, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ - { 49950, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB */ - { 49992, 0x000088FE }, /* GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB */ - { 50027, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ - { 50058, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB */ - { 50093, 0x000088FD }, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER */ - { 50124, 0x000088FD }, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT */ - { 50159, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ - { 50193, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB */ - { 50231, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ - { 50262, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB */ - { 50297, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ - { 50325, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB */ - { 50357, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ - { 50387, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB */ - { 50421, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ - { 50449, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB */ - { 50481, 0x000086A7 }, /* GL_VERTEX_BLEND_ARB */ - { 50501, 0x00008620 }, /* GL_VERTEX_PROGRAM_ARB */ - { 50523, 0x0000864A }, /* GL_VERTEX_PROGRAM_BINDING_NV */ - { 50552, 0x00008620 }, /* GL_VERTEX_PROGRAM_NV */ - { 50573, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE */ - { 50602, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_ARB */ - { 50635, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_NV */ - { 50667, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE */ - { 50694, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_ARB */ - { 50725, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_NV */ - { 50755, 0x00008B31 }, /* GL_VERTEX_SHADER */ - { 50772, 0x00008B31 }, /* GL_VERTEX_SHADER_ARB */ - { 50793, 0x00008621 }, /* GL_VERTEX_STATE_PROGRAM_NV */ - { 50820, 0x00000BA2 }, /* GL_VIEWPORT */ - { 50832, 0x00000800 }, /* GL_VIEWPORT_BIT */ - { 50848, 0x00008A1A }, /* GL_VOLATILE_APPLE */ - { 50866, 0x0000911D }, /* GL_WAIT_FAILED */ - { 50881, 0x000086AD }, /* GL_WEIGHT_ARRAY_ARB */ - { 50901, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ - { 50932, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB */ - { 50967, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_OES */ - { 51002, 0x000086AD }, /* GL_WEIGHT_ARRAY_OES */ - { 51022, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_ARB */ - { 51050, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_OES */ - { 51078, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_ARB */ - { 51103, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_OES */ - { 51128, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ - { 51155, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_OES */ - { 51182, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_ARB */ - { 51207, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_OES */ - { 51232, 0x000086A6 }, /* GL_WEIGHT_SUM_UNITY_ARB */ - { 51256, 0x000081D4 }, /* GL_WRAP_BORDER_SUN */ - { 51275, 0x000088B9 }, /* GL_WRITE_ONLY */ - { 51289, 0x000088B9 }, /* GL_WRITE_ONLY_ARB */ - { 51307, 0x000088B9 }, /* GL_WRITE_ONLY_OES */ - { 51325, 0x00001506 }, /* GL_XOR */ - { 51332, 0x000085B9 }, /* GL_YCBCR_422_APPLE */ - { 51351, 0x00008757 }, /* GL_YCBCR_MESA */ - { 51365, 0x00000000 }, /* GL_ZERO */ - { 51373, 0x00000D16 }, /* GL_ZOOM_X */ - { 51383, 0x00000D17 }, /* GL_ZOOM_Y */ + { 2717, 0x0000891B }, /* GL_CLAMP_FRAGMENT_COLOR_ARB */ + { 2745, 0x0000891C }, /* GL_CLAMP_READ_COLOR */ + { 2765, 0x0000891C }, /* GL_CLAMP_READ_COLOR_ARB */ + { 2789, 0x0000812D }, /* GL_CLAMP_TO_BORDER */ + { 2808, 0x0000812D }, /* GL_CLAMP_TO_BORDER_ARB */ + { 2831, 0x0000812D }, /* GL_CLAMP_TO_BORDER_SGIS */ + { 2855, 0x0000812F }, /* GL_CLAMP_TO_EDGE */ + { 2872, 0x0000812F }, /* GL_CLAMP_TO_EDGE_SGIS */ + { 2894, 0x0000891A }, /* GL_CLAMP_VERTEX_COLOR_ARB */ + { 2920, 0x00001500 }, /* GL_CLEAR */ + { 2929, 0x000084E1 }, /* GL_CLIENT_ACTIVE_TEXTURE */ + { 2954, 0x000084E1 }, /* GL_CLIENT_ACTIVE_TEXTURE_ARB */ + { 2983, 0xFFFFFFFF }, /* GL_CLIENT_ALL_ATTRIB_BITS */ + { 3009, 0x00000BB1 }, /* GL_CLIENT_ATTRIB_STACK_DEPTH */ + { 3038, 0x00000001 }, /* GL_CLIENT_PIXEL_STORE_BIT */ + { 3064, 0x00000002 }, /* GL_CLIENT_VERTEX_ARRAY_BIT */ + { 3091, 0x00003000 }, /* GL_CLIP_DISTANCE0 */ + { 3109, 0x00003001 }, /* GL_CLIP_DISTANCE1 */ + { 3127, 0x00003002 }, /* GL_CLIP_DISTANCE2 */ + { 3145, 0x00003003 }, /* GL_CLIP_DISTANCE3 */ + { 3163, 0x00003004 }, /* GL_CLIP_DISTANCE4 */ + { 3181, 0x00003005 }, /* GL_CLIP_DISTANCE5 */ + { 3199, 0x00003006 }, /* GL_CLIP_DISTANCE6 */ + { 3217, 0x00003007 }, /* GL_CLIP_DISTANCE7 */ + { 3235, 0x00003000 }, /* GL_CLIP_PLANE0 */ + { 3250, 0x00003001 }, /* GL_CLIP_PLANE1 */ + { 3265, 0x00003002 }, /* GL_CLIP_PLANE2 */ + { 3280, 0x00003003 }, /* GL_CLIP_PLANE3 */ + { 3295, 0x00003004 }, /* GL_CLIP_PLANE4 */ + { 3310, 0x00003005 }, /* GL_CLIP_PLANE5 */ + { 3325, 0x000080F0 }, /* GL_CLIP_VOLUME_CLIPPING_HINT_EXT */ + { 3358, 0x00000A00 }, /* GL_COEFF */ + { 3367, 0x00001800 }, /* GL_COLOR */ + { 3376, 0x00008076 }, /* GL_COLOR_ARRAY */ + { 3391, 0x00008898 }, /* GL_COLOR_ARRAY_BUFFER_BINDING */ + { 3421, 0x00008898 }, /* GL_COLOR_ARRAY_BUFFER_BINDING_ARB */ + { 3455, 0x00008090 }, /* GL_COLOR_ARRAY_POINTER */ + { 3478, 0x00008081 }, /* GL_COLOR_ARRAY_SIZE */ + { 3498, 0x00008083 }, /* GL_COLOR_ARRAY_STRIDE */ + { 3520, 0x00008082 }, /* GL_COLOR_ARRAY_TYPE */ + { 3540, 0x00008CE0 }, /* GL_COLOR_ATTACHMENT0 */ + { 3561, 0x00008CE0 }, /* GL_COLOR_ATTACHMENT0_EXT */ + { 3586, 0x00008CE0 }, /* GL_COLOR_ATTACHMENT0_OES */ + { 3611, 0x00008CE1 }, /* GL_COLOR_ATTACHMENT1 */ + { 3632, 0x00008CEA }, /* GL_COLOR_ATTACHMENT10 */ + { 3654, 0x00008CEA }, /* GL_COLOR_ATTACHMENT10_EXT */ + { 3680, 0x00008CEB }, /* GL_COLOR_ATTACHMENT11 */ + { 3702, 0x00008CEB }, /* GL_COLOR_ATTACHMENT11_EXT */ + { 3728, 0x00008CEC }, /* GL_COLOR_ATTACHMENT12 */ + { 3750, 0x00008CEC }, /* GL_COLOR_ATTACHMENT12_EXT */ + { 3776, 0x00008CED }, /* GL_COLOR_ATTACHMENT13 */ + { 3798, 0x00008CED }, /* GL_COLOR_ATTACHMENT13_EXT */ + { 3824, 0x00008CEE }, /* GL_COLOR_ATTACHMENT14 */ + { 3846, 0x00008CEE }, /* GL_COLOR_ATTACHMENT14_EXT */ + { 3872, 0x00008CEF }, /* GL_COLOR_ATTACHMENT15 */ + { 3894, 0x00008CEF }, /* GL_COLOR_ATTACHMENT15_EXT */ + { 3920, 0x00008CE1 }, /* GL_COLOR_ATTACHMENT1_EXT */ + { 3945, 0x00008CE2 }, /* GL_COLOR_ATTACHMENT2 */ + { 3966, 0x00008CE2 }, /* GL_COLOR_ATTACHMENT2_EXT */ + { 3991, 0x00008CE3 }, /* GL_COLOR_ATTACHMENT3 */ + { 4012, 0x00008CE3 }, /* GL_COLOR_ATTACHMENT3_EXT */ + { 4037, 0x00008CE4 }, /* GL_COLOR_ATTACHMENT4 */ + { 4058, 0x00008CE4 }, /* GL_COLOR_ATTACHMENT4_EXT */ + { 4083, 0x00008CE5 }, /* GL_COLOR_ATTACHMENT5 */ + { 4104, 0x00008CE5 }, /* GL_COLOR_ATTACHMENT5_EXT */ + { 4129, 0x00008CE6 }, /* GL_COLOR_ATTACHMENT6 */ + { 4150, 0x00008CE6 }, /* GL_COLOR_ATTACHMENT6_EXT */ + { 4175, 0x00008CE7 }, /* GL_COLOR_ATTACHMENT7 */ + { 4196, 0x00008CE7 }, /* GL_COLOR_ATTACHMENT7_EXT */ + { 4221, 0x00008CE8 }, /* GL_COLOR_ATTACHMENT8 */ + { 4242, 0x00008CE8 }, /* GL_COLOR_ATTACHMENT8_EXT */ + { 4267, 0x00008CE9 }, /* GL_COLOR_ATTACHMENT9 */ + { 4288, 0x00008CE9 }, /* GL_COLOR_ATTACHMENT9_EXT */ + { 4313, 0x00004000 }, /* GL_COLOR_BUFFER_BIT */ + { 4333, 0x00000C22 }, /* GL_COLOR_CLEAR_VALUE */ + { 4354, 0x00001900 }, /* GL_COLOR_INDEX */ + { 4369, 0x00001603 }, /* GL_COLOR_INDEXES */ + { 4386, 0x00000BF2 }, /* GL_COLOR_LOGIC_OP */ + { 4404, 0x00000B57 }, /* GL_COLOR_MATERIAL */ + { 4422, 0x00000B55 }, /* GL_COLOR_MATERIAL_FACE */ + { 4445, 0x00000B56 }, /* GL_COLOR_MATERIAL_PARAMETER */ + { 4473, 0x000080B1 }, /* GL_COLOR_MATRIX */ + { 4489, 0x000080B1 }, /* GL_COLOR_MATRIX_SGI */ + { 4509, 0x000080B2 }, /* GL_COLOR_MATRIX_STACK_DEPTH */ + { 4537, 0x000080B2 }, /* GL_COLOR_MATRIX_STACK_DEPTH_SGI */ + { 4569, 0x00008458 }, /* GL_COLOR_SUM */ + { 4582, 0x00008458 }, /* GL_COLOR_SUM_ARB */ + { 4599, 0x000080D0 }, /* GL_COLOR_TABLE */ + { 4614, 0x000080DD }, /* GL_COLOR_TABLE_ALPHA_SIZE */ + { 4640, 0x000080DD }, /* GL_COLOR_TABLE_ALPHA_SIZE_EXT */ + { 4670, 0x000080DD }, /* GL_COLOR_TABLE_ALPHA_SIZE_SGI */ + { 4700, 0x000080D7 }, /* GL_COLOR_TABLE_BIAS */ + { 4720, 0x000080D7 }, /* GL_COLOR_TABLE_BIAS_SGI */ + { 4744, 0x000080DC }, /* GL_COLOR_TABLE_BLUE_SIZE */ + { 4769, 0x000080DC }, /* GL_COLOR_TABLE_BLUE_SIZE_EXT */ + { 4798, 0x000080DC }, /* GL_COLOR_TABLE_BLUE_SIZE_SGI */ + { 4827, 0x000080D8 }, /* GL_COLOR_TABLE_FORMAT */ + { 4849, 0x000080D8 }, /* GL_COLOR_TABLE_FORMAT_EXT */ + { 4875, 0x000080D8 }, /* GL_COLOR_TABLE_FORMAT_SGI */ + { 4901, 0x000080DB }, /* GL_COLOR_TABLE_GREEN_SIZE */ + { 4927, 0x000080DB }, /* GL_COLOR_TABLE_GREEN_SIZE_EXT */ + { 4957, 0x000080DB }, /* GL_COLOR_TABLE_GREEN_SIZE_SGI */ + { 4987, 0x000080DF }, /* GL_COLOR_TABLE_INTENSITY_SIZE */ + { 5017, 0x000080DF }, /* GL_COLOR_TABLE_INTENSITY_SIZE_EXT */ + { 5051, 0x000080DF }, /* GL_COLOR_TABLE_INTENSITY_SIZE_SGI */ + { 5085, 0x000080DE }, /* GL_COLOR_TABLE_LUMINANCE_SIZE */ + { 5115, 0x000080DE }, /* GL_COLOR_TABLE_LUMINANCE_SIZE_EXT */ + { 5149, 0x000080DE }, /* GL_COLOR_TABLE_LUMINANCE_SIZE_SGI */ + { 5183, 0x000080DA }, /* GL_COLOR_TABLE_RED_SIZE */ + { 5207, 0x000080DA }, /* GL_COLOR_TABLE_RED_SIZE_EXT */ + { 5235, 0x000080DA }, /* GL_COLOR_TABLE_RED_SIZE_SGI */ + { 5263, 0x000080D6 }, /* GL_COLOR_TABLE_SCALE */ + { 5284, 0x000080D6 }, /* GL_COLOR_TABLE_SCALE_SGI */ + { 5309, 0x000080D9 }, /* GL_COLOR_TABLE_WIDTH */ + { 5330, 0x000080D9 }, /* GL_COLOR_TABLE_WIDTH_EXT */ + { 5355, 0x000080D9 }, /* GL_COLOR_TABLE_WIDTH_SGI */ + { 5380, 0x00000C23 }, /* GL_COLOR_WRITEMASK */ + { 5399, 0x00008570 }, /* GL_COMBINE */ + { 5410, 0x00008503 }, /* GL_COMBINE4 */ + { 5422, 0x00008572 }, /* GL_COMBINE_ALPHA */ + { 5439, 0x00008572 }, /* GL_COMBINE_ALPHA_ARB */ + { 5460, 0x00008572 }, /* GL_COMBINE_ALPHA_EXT */ + { 5481, 0x00008570 }, /* GL_COMBINE_ARB */ + { 5496, 0x00008570 }, /* GL_COMBINE_EXT */ + { 5511, 0x00008571 }, /* GL_COMBINE_RGB */ + { 5526, 0x00008571 }, /* GL_COMBINE_RGB_ARB */ + { 5545, 0x00008571 }, /* GL_COMBINE_RGB_EXT */ + { 5564, 0x0000884E }, /* GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT */ + { 5600, 0x0000884E }, /* GL_COMPARE_REF_TO_TEXTURE */ + { 5626, 0x0000884E }, /* GL_COMPARE_R_TO_TEXTURE */ + { 5650, 0x0000884E }, /* GL_COMPARE_R_TO_TEXTURE_ARB */ + { 5678, 0x00001300 }, /* GL_COMPILE */ + { 5689, 0x00001301 }, /* GL_COMPILE_AND_EXECUTE */ + { 5712, 0x00008B81 }, /* GL_COMPILE_STATUS */ + { 5730, 0x000084E9 }, /* GL_COMPRESSED_ALPHA */ + { 5750, 0x000084E9 }, /* GL_COMPRESSED_ALPHA_ARB */ + { 5774, 0x000084EC }, /* GL_COMPRESSED_INTENSITY */ + { 5798, 0x000084EC }, /* GL_COMPRESSED_INTENSITY_ARB */ + { 5826, 0x000084EA }, /* GL_COMPRESSED_LUMINANCE */ + { 5850, 0x000084EB }, /* GL_COMPRESSED_LUMINANCE_ALPHA */ + { 5880, 0x000084EB }, /* GL_COMPRESSED_LUMINANCE_ALPHA_ARB */ + { 5914, 0x000084EA }, /* GL_COMPRESSED_LUMINANCE_ARB */ + { 5942, 0x00008225 }, /* GL_COMPRESSED_RED */ + { 5960, 0x00008226 }, /* GL_COMPRESSED_RG */ + { 5977, 0x000084ED }, /* GL_COMPRESSED_RGB */ + { 5995, 0x000084EE }, /* GL_COMPRESSED_RGBA */ + { 6014, 0x000084EE }, /* GL_COMPRESSED_RGBA_ARB */ + { 6037, 0x000086B1 }, /* GL_COMPRESSED_RGBA_FXT1_3DFX */ + { 6066, 0x000083F1 }, /* GL_COMPRESSED_RGBA_S3TC_DXT1_EXT */ + { 6099, 0x000083F2 }, /* GL_COMPRESSED_RGBA_S3TC_DXT3_EXT */ + { 6132, 0x000083F3 }, /* GL_COMPRESSED_RGBA_S3TC_DXT5_EXT */ + { 6165, 0x000084ED }, /* GL_COMPRESSED_RGB_ARB */ + { 6187, 0x000086B0 }, /* GL_COMPRESSED_RGB_FXT1_3DFX */ + { 6215, 0x000083F0 }, /* GL_COMPRESSED_RGB_S3TC_DXT1_EXT */ + { 6247, 0x00008C4A }, /* GL_COMPRESSED_SLUMINANCE */ + { 6272, 0x00008C4B }, /* GL_COMPRESSED_SLUMINANCE_ALPHA */ + { 6303, 0x00008C48 }, /* GL_COMPRESSED_SRGB */ + { 6322, 0x00008C49 }, /* GL_COMPRESSED_SRGB_ALPHA */ + { 6347, 0x000086A3 }, /* GL_COMPRESSED_TEXTURE_FORMATS */ + { 6377, 0x0000911C }, /* GL_CONDITION_SATISFIED */ + { 6400, 0x00008576 }, /* GL_CONSTANT */ + { 6412, 0x00008003 }, /* GL_CONSTANT_ALPHA */ + { 6430, 0x00008003 }, /* GL_CONSTANT_ALPHA_EXT */ + { 6452, 0x00008576 }, /* GL_CONSTANT_ARB */ + { 6468, 0x00001207 }, /* GL_CONSTANT_ATTENUATION */ + { 6492, 0x00008151 }, /* GL_CONSTANT_BORDER_HP */ + { 6514, 0x00008001 }, /* GL_CONSTANT_COLOR */ + { 6532, 0x00008001 }, /* GL_CONSTANT_COLOR_EXT */ + { 6554, 0x00008576 }, /* GL_CONSTANT_EXT */ + { 6570, 0x00000002 }, /* GL_CONTEXT_COMPATIBILITY_PROFILE_BIT */ + { 6607, 0x00000001 }, /* GL_CONTEXT_CORE_PROFILE_BIT */ + { 6635, 0x0000821E }, /* GL_CONTEXT_FLAGS */ + { 6652, 0x00000001 }, /* GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT */ + { 6691, 0x00009126 }, /* GL_CONTEXT_PROFILE_MASK */ + { 6715, 0x00008010 }, /* GL_CONVOLUTION_1D */ + { 6733, 0x00008011 }, /* GL_CONVOLUTION_2D */ + { 6751, 0x00008154 }, /* GL_CONVOLUTION_BORDER_COLOR */ + { 6779, 0x00008154 }, /* GL_CONVOLUTION_BORDER_COLOR_HP */ + { 6810, 0x00008013 }, /* GL_CONVOLUTION_BORDER_MODE */ + { 6837, 0x00008013 }, /* GL_CONVOLUTION_BORDER_MODE_EXT */ + { 6868, 0x00008015 }, /* GL_CONVOLUTION_FILTER_BIAS */ + { 6895, 0x00008015 }, /* GL_CONVOLUTION_FILTER_BIAS_EXT */ + { 6926, 0x00008014 }, /* GL_CONVOLUTION_FILTER_SCALE */ + { 6954, 0x00008014 }, /* GL_CONVOLUTION_FILTER_SCALE_EXT */ + { 6986, 0x00008017 }, /* GL_CONVOLUTION_FORMAT */ + { 7008, 0x00008017 }, /* GL_CONVOLUTION_FORMAT_EXT */ + { 7034, 0x00008019 }, /* GL_CONVOLUTION_HEIGHT */ + { 7056, 0x00008019 }, /* GL_CONVOLUTION_HEIGHT_EXT */ + { 7082, 0x00008018 }, /* GL_CONVOLUTION_WIDTH */ + { 7103, 0x00008018 }, /* GL_CONVOLUTION_WIDTH_EXT */ + { 7128, 0x00008862 }, /* GL_COORD_REPLACE */ + { 7145, 0x00008862 }, /* GL_COORD_REPLACE_ARB */ + { 7166, 0x00008862 }, /* GL_COORD_REPLACE_NV */ + { 7186, 0x00008862 }, /* GL_COORD_REPLACE_OES */ + { 7207, 0x00001503 }, /* GL_COPY */ + { 7215, 0x0000150C }, /* GL_COPY_INVERTED */ + { 7232, 0x00000706 }, /* GL_COPY_PIXEL_TOKEN */ + { 7252, 0x00008F36 }, /* GL_COPY_READ_BUFFER */ + { 7272, 0x00008F37 }, /* GL_COPY_WRITE_BUFFER */ + { 7293, 0x00000B44 }, /* GL_CULL_FACE */ + { 7306, 0x00000B45 }, /* GL_CULL_FACE_MODE */ + { 7324, 0x000081AA }, /* GL_CULL_VERTEX_EXT */ + { 7343, 0x000081AC }, /* GL_CULL_VERTEX_EYE_POSITION_EXT */ + { 7375, 0x000081AB }, /* GL_CULL_VERTEX_OBJECT_POSITION_EXT */ + { 7410, 0x00008626 }, /* GL_CURRENT_ATTRIB_NV */ + { 7431, 0x00000001 }, /* GL_CURRENT_BIT */ + { 7446, 0x00000B00 }, /* GL_CURRENT_COLOR */ + { 7463, 0x00008453 }, /* GL_CURRENT_FOG_COORD */ + { 7484, 0x00008453 }, /* GL_CURRENT_FOG_COORDINATE */ + { 7510, 0x00000B01 }, /* GL_CURRENT_INDEX */ + { 7527, 0x00008641 }, /* GL_CURRENT_MATRIX_ARB */ + { 7549, 0x00008845 }, /* GL_CURRENT_MATRIX_INDEX_ARB */ + { 7577, 0x00008641 }, /* GL_CURRENT_MATRIX_NV */ + { 7598, 0x00008640 }, /* GL_CURRENT_MATRIX_STACK_DEPTH_ARB */ + { 7632, 0x00008640 }, /* GL_CURRENT_MATRIX_STACK_DEPTH_NV */ + { 7665, 0x00000B02 }, /* GL_CURRENT_NORMAL */ + { 7683, 0x00008843 }, /* GL_CURRENT_PALETTE_MATRIX_ARB */ + { 7713, 0x00008843 }, /* GL_CURRENT_PALETTE_MATRIX_OES */ + { 7743, 0x00008B8D }, /* GL_CURRENT_PROGRAM */ + { 7762, 0x00008865 }, /* GL_CURRENT_QUERY */ + { 7779, 0x00008865 }, /* GL_CURRENT_QUERY_ARB */ + { 7800, 0x00000B04 }, /* GL_CURRENT_RASTER_COLOR */ + { 7824, 0x00000B09 }, /* GL_CURRENT_RASTER_DISTANCE */ + { 7851, 0x00000B05 }, /* GL_CURRENT_RASTER_INDEX */ + { 7875, 0x00000B07 }, /* GL_CURRENT_RASTER_POSITION */ + { 7902, 0x00000B08 }, /* GL_CURRENT_RASTER_POSITION_VALID */ + { 7935, 0x0000845F }, /* GL_CURRENT_RASTER_SECONDARY_COLOR */ + { 7969, 0x00000B06 }, /* GL_CURRENT_RASTER_TEXTURE_COORDS */ + { 8002, 0x00008459 }, /* GL_CURRENT_SECONDARY_COLOR */ + { 8029, 0x00000B03 }, /* GL_CURRENT_TEXTURE_COORDS */ + { 8055, 0x00008626 }, /* GL_CURRENT_VERTEX_ATTRIB */ + { 8080, 0x00008626 }, /* GL_CURRENT_VERTEX_ATTRIB_ARB */ + { 8109, 0x000086A8 }, /* GL_CURRENT_WEIGHT_ARB */ + { 8131, 0x00000900 }, /* GL_CW */ + { 8137, 0x0000875B }, /* GL_DEBUG_ASSERT_MESA */ + { 8158, 0x00008759 }, /* GL_DEBUG_OBJECT_MESA */ + { 8179, 0x0000875A }, /* GL_DEBUG_PRINT_MESA */ + { 8199, 0x00002101 }, /* GL_DECAL */ + { 8208, 0x00001E03 }, /* GL_DECR */ + { 8216, 0x00008508 }, /* GL_DECR_WRAP */ + { 8229, 0x00008508 }, /* GL_DECR_WRAP_EXT */ + { 8246, 0x00008B80 }, /* GL_DELETE_STATUS */ + { 8263, 0x00001801 }, /* GL_DEPTH */ + { 8272, 0x000088F0 }, /* GL_DEPTH24_STENCIL8 */ + { 8292, 0x000088F0 }, /* GL_DEPTH24_STENCIL8_EXT */ + { 8316, 0x000088F0 }, /* GL_DEPTH24_STENCIL8_OES */ + { 8340, 0x00008D00 }, /* GL_DEPTH_ATTACHMENT */ + { 8360, 0x00008D00 }, /* GL_DEPTH_ATTACHMENT_EXT */ + { 8384, 0x00008D00 }, /* GL_DEPTH_ATTACHMENT_OES */ + { 8408, 0x00000D1F }, /* GL_DEPTH_BIAS */ + { 8422, 0x00000D56 }, /* GL_DEPTH_BITS */ + { 8436, 0x00008891 }, /* GL_DEPTH_BOUNDS_EXT */ + { 8456, 0x00008890 }, /* GL_DEPTH_BOUNDS_TEST_EXT */ + { 8481, 0x00008223 }, /* GL_DEPTH_BUFFER */ + { 8497, 0x00000100 }, /* GL_DEPTH_BUFFER_BIT */ + { 8517, 0x0000864F }, /* GL_DEPTH_CLAMP */ + { 8532, 0x0000864F }, /* GL_DEPTH_CLAMP_NV */ + { 8550, 0x00000B73 }, /* GL_DEPTH_CLEAR_VALUE */ + { 8571, 0x00001902 }, /* GL_DEPTH_COMPONENT */ + { 8590, 0x000081A5 }, /* GL_DEPTH_COMPONENT16 */ + { 8611, 0x000081A5 }, /* GL_DEPTH_COMPONENT16_ARB */ + { 8636, 0x000081A5 }, /* GL_DEPTH_COMPONENT16_OES */ + { 8661, 0x000081A5 }, /* GL_DEPTH_COMPONENT16_SGIX */ + { 8687, 0x000081A6 }, /* GL_DEPTH_COMPONENT24 */ + { 8708, 0x000081A6 }, /* GL_DEPTH_COMPONENT24_ARB */ + { 8733, 0x000081A6 }, /* GL_DEPTH_COMPONENT24_OES */ + { 8758, 0x000081A6 }, /* GL_DEPTH_COMPONENT24_SGIX */ + { 8784, 0x000081A7 }, /* GL_DEPTH_COMPONENT32 */ + { 8805, 0x000081A7 }, /* GL_DEPTH_COMPONENT32_ARB */ + { 8830, 0x000081A7 }, /* GL_DEPTH_COMPONENT32_OES */ + { 8855, 0x000081A7 }, /* GL_DEPTH_COMPONENT32_SGIX */ + { 8881, 0x00000B74 }, /* GL_DEPTH_FUNC */ + { 8895, 0x00000B70 }, /* GL_DEPTH_RANGE */ + { 8910, 0x00000D1E }, /* GL_DEPTH_SCALE */ + { 8925, 0x000084F9 }, /* GL_DEPTH_STENCIL */ + { 8942, 0x0000821A }, /* GL_DEPTH_STENCIL_ATTACHMENT */ + { 8970, 0x000084F9 }, /* GL_DEPTH_STENCIL_EXT */ + { 8991, 0x000084F9 }, /* GL_DEPTH_STENCIL_NV */ + { 9011, 0x000084F9 }, /* GL_DEPTH_STENCIL_OES */ + { 9032, 0x0000886F }, /* GL_DEPTH_STENCIL_TO_BGRA_NV */ + { 9060, 0x0000886E }, /* GL_DEPTH_STENCIL_TO_RGBA_NV */ + { 9088, 0x00000B71 }, /* GL_DEPTH_TEST */ + { 9102, 0x0000884B }, /* GL_DEPTH_TEXTURE_MODE */ + { 9124, 0x0000884B }, /* GL_DEPTH_TEXTURE_MODE_ARB */ + { 9150, 0x00000B72 }, /* GL_DEPTH_WRITEMASK */ + { 9169, 0x00001201 }, /* GL_DIFFUSE */ + { 9180, 0x00000BD0 }, /* GL_DITHER */ + { 9190, 0x00000A02 }, /* GL_DOMAIN */ + { 9200, 0x00001100 }, /* GL_DONT_CARE */ + { 9213, 0x000086AE }, /* GL_DOT3_RGB */ + { 9225, 0x000086AF }, /* GL_DOT3_RGBA */ + { 9238, 0x000086AF }, /* GL_DOT3_RGBA_ARB */ + { 9255, 0x00008741 }, /* GL_DOT3_RGBA_EXT */ + { 9272, 0x000086AE }, /* GL_DOT3_RGB_ARB */ + { 9288, 0x00008740 }, /* GL_DOT3_RGB_EXT */ + { 9304, 0x0000140A }, /* GL_DOUBLE */ + { 9314, 0x00000C32 }, /* GL_DOUBLEBUFFER */ + { 9330, 0x00000C01 }, /* GL_DRAW_BUFFER */ + { 9345, 0x00008825 }, /* GL_DRAW_BUFFER0 */ + { 9361, 0x00008825 }, /* GL_DRAW_BUFFER0_ARB */ + { 9381, 0x00008825 }, /* GL_DRAW_BUFFER0_ATI */ + { 9401, 0x00008826 }, /* GL_DRAW_BUFFER1 */ + { 9417, 0x0000882F }, /* GL_DRAW_BUFFER10 */ + { 9434, 0x0000882F }, /* GL_DRAW_BUFFER10_ARB */ + { 9455, 0x0000882F }, /* GL_DRAW_BUFFER10_ATI */ + { 9476, 0x00008830 }, /* GL_DRAW_BUFFER11 */ + { 9493, 0x00008830 }, /* GL_DRAW_BUFFER11_ARB */ + { 9514, 0x00008830 }, /* GL_DRAW_BUFFER11_ATI */ + { 9535, 0x00008831 }, /* GL_DRAW_BUFFER12 */ + { 9552, 0x00008831 }, /* GL_DRAW_BUFFER12_ARB */ + { 9573, 0x00008831 }, /* GL_DRAW_BUFFER12_ATI */ + { 9594, 0x00008832 }, /* GL_DRAW_BUFFER13 */ + { 9611, 0x00008832 }, /* GL_DRAW_BUFFER13_ARB */ + { 9632, 0x00008832 }, /* GL_DRAW_BUFFER13_ATI */ + { 9653, 0x00008833 }, /* GL_DRAW_BUFFER14 */ + { 9670, 0x00008833 }, /* GL_DRAW_BUFFER14_ARB */ + { 9691, 0x00008833 }, /* GL_DRAW_BUFFER14_ATI */ + { 9712, 0x00008834 }, /* GL_DRAW_BUFFER15 */ + { 9729, 0x00008834 }, /* GL_DRAW_BUFFER15_ARB */ + { 9750, 0x00008834 }, /* GL_DRAW_BUFFER15_ATI */ + { 9771, 0x00008826 }, /* GL_DRAW_BUFFER1_ARB */ + { 9791, 0x00008826 }, /* GL_DRAW_BUFFER1_ATI */ + { 9811, 0x00008827 }, /* GL_DRAW_BUFFER2 */ + { 9827, 0x00008827 }, /* GL_DRAW_BUFFER2_ARB */ + { 9847, 0x00008827 }, /* GL_DRAW_BUFFER2_ATI */ + { 9867, 0x00008828 }, /* GL_DRAW_BUFFER3 */ + { 9883, 0x00008828 }, /* GL_DRAW_BUFFER3_ARB */ + { 9903, 0x00008828 }, /* GL_DRAW_BUFFER3_ATI */ + { 9923, 0x00008829 }, /* GL_DRAW_BUFFER4 */ + { 9939, 0x00008829 }, /* GL_DRAW_BUFFER4_ARB */ + { 9959, 0x00008829 }, /* GL_DRAW_BUFFER4_ATI */ + { 9979, 0x0000882A }, /* GL_DRAW_BUFFER5 */ + { 9995, 0x0000882A }, /* GL_DRAW_BUFFER5_ARB */ + { 10015, 0x0000882A }, /* GL_DRAW_BUFFER5_ATI */ + { 10035, 0x0000882B }, /* GL_DRAW_BUFFER6 */ + { 10051, 0x0000882B }, /* GL_DRAW_BUFFER6_ARB */ + { 10071, 0x0000882B }, /* GL_DRAW_BUFFER6_ATI */ + { 10091, 0x0000882C }, /* GL_DRAW_BUFFER7 */ + { 10107, 0x0000882C }, /* GL_DRAW_BUFFER7_ARB */ + { 10127, 0x0000882C }, /* GL_DRAW_BUFFER7_ATI */ + { 10147, 0x0000882D }, /* GL_DRAW_BUFFER8 */ + { 10163, 0x0000882D }, /* GL_DRAW_BUFFER8_ARB */ + { 10183, 0x0000882D }, /* GL_DRAW_BUFFER8_ATI */ + { 10203, 0x0000882E }, /* GL_DRAW_BUFFER9 */ + { 10219, 0x0000882E }, /* GL_DRAW_BUFFER9_ARB */ + { 10239, 0x0000882E }, /* GL_DRAW_BUFFER9_ATI */ + { 10259, 0x00008CA9 }, /* GL_DRAW_FRAMEBUFFER */ + { 10279, 0x00008CA6 }, /* GL_DRAW_FRAMEBUFFER_BINDING */ + { 10307, 0x00008CA6 }, /* GL_DRAW_FRAMEBUFFER_BINDING_EXT */ + { 10339, 0x00008CA9 }, /* GL_DRAW_FRAMEBUFFER_EXT */ + { 10363, 0x00000705 }, /* GL_DRAW_PIXEL_TOKEN */ + { 10383, 0x00000304 }, /* GL_DST_ALPHA */ + { 10396, 0x00000306 }, /* GL_DST_COLOR */ + { 10409, 0x0000877A }, /* GL_DU8DV8_ATI */ + { 10423, 0x00008779 }, /* GL_DUDV_ATI */ + { 10435, 0x000088EA }, /* GL_DYNAMIC_COPY */ + { 10451, 0x000088EA }, /* GL_DYNAMIC_COPY_ARB */ + { 10471, 0x000088E8 }, /* GL_DYNAMIC_DRAW */ + { 10487, 0x000088E8 }, /* GL_DYNAMIC_DRAW_ARB */ + { 10507, 0x000088E9 }, /* GL_DYNAMIC_READ */ + { 10523, 0x000088E9 }, /* GL_DYNAMIC_READ_ARB */ + { 10543, 0x00000B43 }, /* GL_EDGE_FLAG */ + { 10556, 0x00008079 }, /* GL_EDGE_FLAG_ARRAY */ + { 10575, 0x0000889B }, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING */ + { 10609, 0x0000889B }, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB */ + { 10647, 0x00008093 }, /* GL_EDGE_FLAG_ARRAY_POINTER */ + { 10674, 0x0000808C }, /* GL_EDGE_FLAG_ARRAY_STRIDE */ + { 10700, 0x00008893 }, /* GL_ELEMENT_ARRAY_BUFFER */ + { 10724, 0x00008895 }, /* GL_ELEMENT_ARRAY_BUFFER_BINDING */ + { 10756, 0x00008895 }, /* GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB */ + { 10792, 0x00001600 }, /* GL_EMISSION */ + { 10804, 0x00002000 }, /* GL_ENABLE_BIT */ + { 10818, 0x00000202 }, /* GL_EQUAL */ + { 10827, 0x00001509 }, /* GL_EQUIV */ + { 10836, 0x00010000 }, /* GL_EVAL_BIT */ + { 10848, 0x00000800 }, /* GL_EXP */ + { 10855, 0x00000801 }, /* GL_EXP2 */ + { 10863, 0x00001F03 }, /* GL_EXTENSIONS */ + { 10877, 0x00002400 }, /* GL_EYE_LINEAR */ + { 10891, 0x00002502 }, /* GL_EYE_PLANE */ + { 10904, 0x0000855C }, /* GL_EYE_PLANE_ABSOLUTE_NV */ + { 10929, 0x0000855B }, /* GL_EYE_RADIAL_NV */ + { 10946, 0x00000000 }, /* GL_FALSE */ + { 10955, 0x00001101 }, /* GL_FASTEST */ + { 10966, 0x00001C01 }, /* GL_FEEDBACK */ + { 10978, 0x00000DF0 }, /* GL_FEEDBACK_BUFFER_POINTER */ + { 11005, 0x00000DF1 }, /* GL_FEEDBACK_BUFFER_SIZE */ + { 11029, 0x00000DF2 }, /* GL_FEEDBACK_BUFFER_TYPE */ + { 11053, 0x00001B02 }, /* GL_FILL */ + { 11061, 0x00008E4D }, /* GL_FIRST_VERTEX_CONVENTION */ + { 11088, 0x00008E4D }, /* GL_FIRST_VERTEX_CONVENTION_EXT */ + { 11119, 0x0000140C }, /* GL_FIXED */ + { 11128, 0x0000140C }, /* GL_FIXED_OES */ + { 11141, 0x0000891D }, /* GL_FIXED_ONLY */ + { 11155, 0x0000891D }, /* GL_FIXED_ONLY_ARB */ + { 11173, 0x00001D00 }, /* GL_FLAT */ + { 11181, 0x00001406 }, /* GL_FLOAT */ + { 11190, 0x00008B5A }, /* GL_FLOAT_MAT2 */ + { 11204, 0x00008B5A }, /* GL_FLOAT_MAT2_ARB */ + { 11222, 0x00008B65 }, /* GL_FLOAT_MAT2x3 */ + { 11238, 0x00008B66 }, /* GL_FLOAT_MAT2x4 */ + { 11254, 0x00008B5B }, /* GL_FLOAT_MAT3 */ + { 11268, 0x00008B5B }, /* GL_FLOAT_MAT3_ARB */ + { 11286, 0x00008B67 }, /* GL_FLOAT_MAT3x2 */ + { 11302, 0x00008B68 }, /* GL_FLOAT_MAT3x4 */ + { 11318, 0x00008B5C }, /* GL_FLOAT_MAT4 */ + { 11332, 0x00008B5C }, /* GL_FLOAT_MAT4_ARB */ + { 11350, 0x00008B69 }, /* GL_FLOAT_MAT4x2 */ + { 11366, 0x00008B6A }, /* GL_FLOAT_MAT4x3 */ + { 11382, 0x00008B50 }, /* GL_FLOAT_VEC2 */ + { 11396, 0x00008B50 }, /* GL_FLOAT_VEC2_ARB */ + { 11414, 0x00008B51 }, /* GL_FLOAT_VEC3 */ + { 11428, 0x00008B51 }, /* GL_FLOAT_VEC3_ARB */ + { 11446, 0x00008B52 }, /* GL_FLOAT_VEC4 */ + { 11460, 0x00008B52 }, /* GL_FLOAT_VEC4_ARB */ + { 11478, 0x00000B60 }, /* GL_FOG */ + { 11485, 0x00000080 }, /* GL_FOG_BIT */ + { 11496, 0x00000B66 }, /* GL_FOG_COLOR */ + { 11509, 0x00008451 }, /* GL_FOG_COORD */ + { 11522, 0x00008451 }, /* GL_FOG_COORDINATE */ + { 11540, 0x00008457 }, /* GL_FOG_COORDINATE_ARRAY */ + { 11564, 0x0000889D }, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING */ + { 11603, 0x0000889D }, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB */ + { 11646, 0x00008456 }, /* GL_FOG_COORDINATE_ARRAY_POINTER */ + { 11678, 0x00008455 }, /* GL_FOG_COORDINATE_ARRAY_STRIDE */ + { 11709, 0x00008454 }, /* GL_FOG_COORDINATE_ARRAY_TYPE */ + { 11738, 0x00008450 }, /* GL_FOG_COORDINATE_SOURCE */ + { 11763, 0x00008457 }, /* GL_FOG_COORD_ARRAY */ + { 11782, 0x0000889D }, /* GL_FOG_COORD_ARRAY_BUFFER_BINDING */ + { 11816, 0x00008456 }, /* GL_FOG_COORD_ARRAY_POINTER */ + { 11843, 0x00008455 }, /* GL_FOG_COORD_ARRAY_STRIDE */ + { 11869, 0x00008454 }, /* GL_FOG_COORD_ARRAY_TYPE */ + { 11893, 0x00008450 }, /* GL_FOG_COORD_SRC */ + { 11910, 0x00000B62 }, /* GL_FOG_DENSITY */ + { 11925, 0x0000855A }, /* GL_FOG_DISTANCE_MODE_NV */ + { 11949, 0x00000B64 }, /* GL_FOG_END */ + { 11960, 0x00000C54 }, /* GL_FOG_HINT */ + { 11972, 0x00000B61 }, /* GL_FOG_INDEX */ + { 11985, 0x00000B65 }, /* GL_FOG_MODE */ + { 11997, 0x00008198 }, /* GL_FOG_OFFSET_SGIX */ + { 12016, 0x00008199 }, /* GL_FOG_OFFSET_VALUE_SGIX */ + { 12041, 0x00000B63 }, /* GL_FOG_START */ + { 12054, 0x00008452 }, /* GL_FRAGMENT_DEPTH */ + { 12072, 0x00008804 }, /* GL_FRAGMENT_PROGRAM_ARB */ + { 12096, 0x00008B30 }, /* GL_FRAGMENT_SHADER */ + { 12115, 0x00008B30 }, /* GL_FRAGMENT_SHADER_ARB */ + { 12138, 0x00008B8B }, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */ + { 12173, 0x00008B8B }, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES */ + { 12212, 0x00008D40 }, /* GL_FRAMEBUFFER */ + { 12227, 0x00008215 }, /* GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE */ + { 12264, 0x00008214 }, /* GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE */ + { 12300, 0x00008210 }, /* GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING */ + { 12341, 0x00008211 }, /* GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE */ + { 12382, 0x00008216 }, /* GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE */ + { 12419, 0x00008213 }, /* GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE */ + { 12456, 0x00008DA7 }, /* GL_FRAMEBUFFER_ATTACHMENT_LAYERED */ + { 12490, 0x00008DA7 }, /* GL_FRAMEBUFFER_ATTACHMENT_LAYERED_ARB */ + { 12528, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME */ + { 12566, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT */ + { 12608, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES */ + { 12650, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE */ + { 12688, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT */ + { 12730, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES */ + { 12772, 0x00008212 }, /* GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE */ + { 12807, 0x00008217 }, /* GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE */ + { 12846, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT */ + { 12895, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES */ + { 12944, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE */ + { 12992, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT */ + { 13044, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES */ + { 13096, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER */ + { 13136, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT */ + { 13180, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL */ + { 13220, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT */ + { 13264, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES */ + { 13308, 0x00008CA6 }, /* GL_FRAMEBUFFER_BINDING */ + { 13331, 0x00008CA6 }, /* GL_FRAMEBUFFER_BINDING_EXT */ + { 13358, 0x00008CA6 }, /* GL_FRAMEBUFFER_BINDING_OES */ + { 13385, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE */ + { 13409, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE_EXT */ + { 13437, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE_OES */ + { 13465, 0x00008218 }, /* GL_FRAMEBUFFER_DEFAULT */ + { 13488, 0x00008D40 }, /* GL_FRAMEBUFFER_EXT */ + { 13507, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT */ + { 13544, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT */ + { 13585, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES */ + { 13626, 0x00008CD9 }, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS */ + { 13663, 0x00008CD9 }, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT */ + { 13704, 0x00008CD9 }, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES */ + { 13745, 0x00008CDB }, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER */ + { 13783, 0x00008CDB }, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT */ + { 13825, 0x00008CDB }, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_OES */ + { 13867, 0x00008CD8 }, /* GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT */ + { 13918, 0x00008CDA }, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT */ + { 13956, 0x00008CDA }, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES */ + { 13994, 0x00008DA9 }, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB */ + { 14036, 0x00008DA8 }, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS */ + { 14076, 0x00008DA8 }, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_ARB */ + { 14120, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT */ + { 14165, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT */ + { 14214, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES */ + { 14263, 0x00008D56 }, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE */ + { 14301, 0x00008D56 }, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT */ + { 14343, 0x00008CDC }, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER */ + { 14381, 0x00008CDC }, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT */ + { 14423, 0x00008CDC }, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_OES */ + { 14465, 0x00008D40 }, /* GL_FRAMEBUFFER_OES */ + { 14484, 0x00008CDE }, /* GL_FRAMEBUFFER_STATUS_ERROR_EXT */ + { 14516, 0x00008219 }, /* GL_FRAMEBUFFER_UNDEFINED */ + { 14541, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED */ + { 14568, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED_EXT */ + { 14599, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED_OES */ + { 14630, 0x00000404 }, /* GL_FRONT */ + { 14639, 0x00000408 }, /* GL_FRONT_AND_BACK */ + { 14657, 0x00000B46 }, /* GL_FRONT_FACE */ + { 14671, 0x00000400 }, /* GL_FRONT_LEFT */ + { 14685, 0x00000401 }, /* GL_FRONT_RIGHT */ + { 14700, 0x00008006 }, /* GL_FUNC_ADD */ + { 14712, 0x00008006 }, /* GL_FUNC_ADD_EXT */ + { 14728, 0x00008006 }, /* GL_FUNC_ADD_OES */ + { 14744, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT */ + { 14769, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT_EXT */ + { 14798, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT_OES */ + { 14827, 0x0000800A }, /* GL_FUNC_SUBTRACT */ + { 14844, 0x0000800A }, /* GL_FUNC_SUBTRACT_EXT */ + { 14865, 0x0000800A }, /* GL_FUNC_SUBTRACT_OES */ + { 14886, 0x00008191 }, /* GL_GENERATE_MIPMAP */ + { 14905, 0x00008192 }, /* GL_GENERATE_MIPMAP_HINT */ + { 14929, 0x00008192 }, /* GL_GENERATE_MIPMAP_HINT_SGIS */ + { 14958, 0x00008191 }, /* GL_GENERATE_MIPMAP_SGIS */ + { 14982, 0x00008917 }, /* GL_GEOMETRY_INPUT_TYPE */ + { 15005, 0x00008DDB }, /* GL_GEOMETRY_INPUT_TYPE_ARB */ + { 15032, 0x00008918 }, /* GL_GEOMETRY_OUTPUT_TYPE */ + { 15056, 0x00008DDC }, /* GL_GEOMETRY_OUTPUT_TYPE_ARB */ + { 15084, 0x00008DD9 }, /* GL_GEOMETRY_SHADER */ + { 15103, 0x00008DD9 }, /* GL_GEOMETRY_SHADER_ARB */ + { 15126, 0x00008916 }, /* GL_GEOMETRY_VERTICES_OUT */ + { 15151, 0x00008DDA }, /* GL_GEOMETRY_VERTICES_OUT_ARB */ + { 15180, 0x00000206 }, /* GL_GEQUAL */ + { 15190, 0x00000204 }, /* GL_GREATER */ + { 15201, 0x00001904 }, /* GL_GREEN */ + { 15210, 0x00000D19 }, /* GL_GREEN_BIAS */ + { 15224, 0x00000D53 }, /* GL_GREEN_BITS */ + { 15238, 0x00008D95 }, /* GL_GREEN_INTEGER */ + { 15255, 0x00008D95 }, /* GL_GREEN_INTEGER_EXT */ + { 15276, 0x00000D18 }, /* GL_GREEN_SCALE */ + { 15291, 0x0000140B }, /* GL_HALF_FLOAT */ + { 15305, 0x00008D61 }, /* GL_HALF_FLOAT_OES */ + { 15323, 0x00008DF2 }, /* GL_HIGH_FLOAT */ + { 15337, 0x00008DF5 }, /* GL_HIGH_INT */ + { 15349, 0x00008000 }, /* GL_HINT_BIT */ + { 15361, 0x00008024 }, /* GL_HISTOGRAM */ + { 15374, 0x0000802B }, /* GL_HISTOGRAM_ALPHA_SIZE */ + { 15398, 0x0000802B }, /* GL_HISTOGRAM_ALPHA_SIZE_EXT */ + { 15426, 0x0000802A }, /* GL_HISTOGRAM_BLUE_SIZE */ + { 15449, 0x0000802A }, /* GL_HISTOGRAM_BLUE_SIZE_EXT */ + { 15476, 0x00008024 }, /* GL_HISTOGRAM_EXT */ + { 15493, 0x00008027 }, /* GL_HISTOGRAM_FORMAT */ + { 15513, 0x00008027 }, /* GL_HISTOGRAM_FORMAT_EXT */ + { 15537, 0x00008029 }, /* GL_HISTOGRAM_GREEN_SIZE */ + { 15561, 0x00008029 }, /* GL_HISTOGRAM_GREEN_SIZE_EXT */ + { 15589, 0x0000802C }, /* GL_HISTOGRAM_LUMINANCE_SIZE */ + { 15617, 0x0000802C }, /* GL_HISTOGRAM_LUMINANCE_SIZE_EXT */ + { 15649, 0x00008028 }, /* GL_HISTOGRAM_RED_SIZE */ + { 15671, 0x00008028 }, /* GL_HISTOGRAM_RED_SIZE_EXT */ + { 15697, 0x0000802D }, /* GL_HISTOGRAM_SINK */ + { 15715, 0x0000802D }, /* GL_HISTOGRAM_SINK_EXT */ + { 15737, 0x00008026 }, /* GL_HISTOGRAM_WIDTH */ + { 15756, 0x00008026 }, /* GL_HISTOGRAM_WIDTH_EXT */ + { 15779, 0x0000862A }, /* GL_IDENTITY_NV */ + { 15794, 0x00008150 }, /* GL_IGNORE_BORDER_HP */ + { 15814, 0x00008B9B }, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT */ + { 15850, 0x00008B9B }, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES */ + { 15890, 0x00008B9A }, /* GL_IMPLEMENTATION_COLOR_READ_TYPE */ + { 15924, 0x00008B9A }, /* GL_IMPLEMENTATION_COLOR_READ_TYPE_OES */ + { 15962, 0x00001E02 }, /* GL_INCR */ + { 15970, 0x00008507 }, /* GL_INCR_WRAP */ + { 15983, 0x00008507 }, /* GL_INCR_WRAP_EXT */ + { 16000, 0x00008222 }, /* GL_INDEX */ + { 16009, 0x00008077 }, /* GL_INDEX_ARRAY */ + { 16024, 0x00008899 }, /* GL_INDEX_ARRAY_BUFFER_BINDING */ + { 16054, 0x00008899 }, /* GL_INDEX_ARRAY_BUFFER_BINDING_ARB */ + { 16088, 0x00008091 }, /* GL_INDEX_ARRAY_POINTER */ + { 16111, 0x00008086 }, /* GL_INDEX_ARRAY_STRIDE */ + { 16133, 0x00008085 }, /* GL_INDEX_ARRAY_TYPE */ + { 16153, 0x00000D51 }, /* GL_INDEX_BITS */ + { 16167, 0x00000C20 }, /* GL_INDEX_CLEAR_VALUE */ + { 16188, 0x00000BF1 }, /* GL_INDEX_LOGIC_OP */ + { 16206, 0x00000C30 }, /* GL_INDEX_MODE */ + { 16220, 0x00000D13 }, /* GL_INDEX_OFFSET */ + { 16236, 0x00000D12 }, /* GL_INDEX_SHIFT */ + { 16251, 0x00000C21 }, /* GL_INDEX_WRITEMASK */ + { 16270, 0x00008B84 }, /* GL_INFO_LOG_LENGTH */ + { 16289, 0x00001404 }, /* GL_INT */ + { 16296, 0x00008049 }, /* GL_INTENSITY */ + { 16309, 0x0000804C }, /* GL_INTENSITY12 */ + { 16324, 0x0000804C }, /* GL_INTENSITY12_EXT */ + { 16343, 0x0000804D }, /* GL_INTENSITY16 */ + { 16358, 0x00008D8B }, /* GL_INTENSITY16I_EXT */ + { 16378, 0x00008D79 }, /* GL_INTENSITY16UI_EXT */ + { 16399, 0x0000804D }, /* GL_INTENSITY16_EXT */ + { 16418, 0x00008D85 }, /* GL_INTENSITY32I_EXT */ + { 16438, 0x00008D73 }, /* GL_INTENSITY32UI_EXT */ + { 16459, 0x0000804A }, /* GL_INTENSITY4 */ + { 16473, 0x0000804A }, /* GL_INTENSITY4_EXT */ + { 16491, 0x0000804B }, /* GL_INTENSITY8 */ + { 16505, 0x00008D91 }, /* GL_INTENSITY8I_EXT */ + { 16524, 0x00008D7F }, /* GL_INTENSITY8UI_EXT */ + { 16544, 0x0000804B }, /* GL_INTENSITY8_EXT */ + { 16562, 0x00008049 }, /* GL_INTENSITY_EXT */ + { 16579, 0x00008C8C }, /* GL_INTERLEAVED_ATTRIBS */ + { 16602, 0x00008C8C }, /* GL_INTERLEAVED_ATTRIBS_EXT */ + { 16629, 0x00008575 }, /* GL_INTERPOLATE */ + { 16644, 0x00008575 }, /* GL_INTERPOLATE_ARB */ + { 16663, 0x00008575 }, /* GL_INTERPOLATE_EXT */ + { 16682, 0x00008DF7 }, /* GL_INT_10_10_10_2_OES */ + { 16704, 0x00008DC9 }, /* GL_INT_SAMPLER_1D */ + { 16722, 0x00008DCE }, /* GL_INT_SAMPLER_1D_ARRAY */ + { 16746, 0x00008DCE }, /* GL_INT_SAMPLER_1D_ARRAY_EXT */ + { 16774, 0x00008DC9 }, /* GL_INT_SAMPLER_1D_EXT */ + { 16796, 0x00008DCA }, /* GL_INT_SAMPLER_2D */ + { 16814, 0x00008DCF }, /* GL_INT_SAMPLER_2D_ARRAY */ + { 16838, 0x00008DCF }, /* GL_INT_SAMPLER_2D_ARRAY_EXT */ + { 16866, 0x00008DCA }, /* GL_INT_SAMPLER_2D_EXT */ + { 16888, 0x00008DCD }, /* GL_INT_SAMPLER_2D_RECT */ + { 16911, 0x00008DCD }, /* GL_INT_SAMPLER_2D_RECT_EXT */ + { 16938, 0x00008DCB }, /* GL_INT_SAMPLER_3D */ + { 16956, 0x00008DCB }, /* GL_INT_SAMPLER_3D_EXT */ + { 16978, 0x00008DD0 }, /* GL_INT_SAMPLER_BUFFER */ + { 17000, 0x00008DD0 }, /* GL_INT_SAMPLER_BUFFER_EXT */ + { 17026, 0x00008DCC }, /* GL_INT_SAMPLER_CUBE */ + { 17046, 0x00008DCC }, /* GL_INT_SAMPLER_CUBE_EXT */ + { 17070, 0x00008B53 }, /* GL_INT_VEC2 */ + { 17082, 0x00008B53 }, /* GL_INT_VEC2_ARB */ + { 17098, 0x00008B54 }, /* GL_INT_VEC3 */ + { 17110, 0x00008B54 }, /* GL_INT_VEC3_ARB */ + { 17126, 0x00008B55 }, /* GL_INT_VEC4 */ + { 17138, 0x00008B55 }, /* GL_INT_VEC4_ARB */ + { 17154, 0x00000500 }, /* GL_INVALID_ENUM */ + { 17170, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION */ + { 17203, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION_EXT */ + { 17240, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION_OES */ + { 17277, 0x00000502 }, /* GL_INVALID_OPERATION */ + { 17298, 0x00000501 }, /* GL_INVALID_VALUE */ + { 17315, 0x0000862B }, /* GL_INVERSE_NV */ + { 17329, 0x0000862D }, /* GL_INVERSE_TRANSPOSE_NV */ + { 17353, 0x0000150A }, /* GL_INVERT */ + { 17363, 0x00001E00 }, /* GL_KEEP */ + { 17371, 0x00008E4E }, /* GL_LAST_VERTEX_CONVENTION */ + { 17397, 0x00008E4E }, /* GL_LAST_VERTEX_CONVENTION_EXT */ + { 17427, 0x00000406 }, /* GL_LEFT */ + { 17435, 0x00000203 }, /* GL_LEQUAL */ + { 17445, 0x00000201 }, /* GL_LESS */ + { 17453, 0x00004000 }, /* GL_LIGHT0 */ + { 17463, 0x00004001 }, /* GL_LIGHT1 */ + { 17473, 0x00004002 }, /* GL_LIGHT2 */ + { 17483, 0x00004003 }, /* GL_LIGHT3 */ + { 17493, 0x00004004 }, /* GL_LIGHT4 */ + { 17503, 0x00004005 }, /* GL_LIGHT5 */ + { 17513, 0x00004006 }, /* GL_LIGHT6 */ + { 17523, 0x00004007 }, /* GL_LIGHT7 */ + { 17533, 0x00000B50 }, /* GL_LIGHTING */ + { 17545, 0x00000040 }, /* GL_LIGHTING_BIT */ + { 17561, 0x00000B53 }, /* GL_LIGHT_MODEL_AMBIENT */ + { 17584, 0x000081F8 }, /* GL_LIGHT_MODEL_COLOR_CONTROL */ + { 17613, 0x000081F8 }, /* GL_LIGHT_MODEL_COLOR_CONTROL_EXT */ + { 17646, 0x00000B51 }, /* GL_LIGHT_MODEL_LOCAL_VIEWER */ + { 17674, 0x00000B52 }, /* GL_LIGHT_MODEL_TWO_SIDE */ + { 17698, 0x00001B01 }, /* GL_LINE */ + { 17706, 0x00002601 }, /* GL_LINEAR */ + { 17716, 0x00001208 }, /* GL_LINEAR_ATTENUATION */ + { 17738, 0x00008170 }, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */ + { 17768, 0x0000844F }, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */ + { 17799, 0x00002703 }, /* GL_LINEAR_MIPMAP_LINEAR */ + { 17823, 0x00002701 }, /* GL_LINEAR_MIPMAP_NEAREST */ + { 17848, 0x00000001 }, /* GL_LINES */ + { 17857, 0x0000000A }, /* GL_LINES_ADJACENCY */ + { 17876, 0x0000000A }, /* GL_LINES_ADJACENCY_ARB */ + { 17899, 0x00000004 }, /* GL_LINE_BIT */ + { 17911, 0x00000002 }, /* GL_LINE_LOOP */ + { 17924, 0x00000707 }, /* GL_LINE_RESET_TOKEN */ + { 17944, 0x00000B20 }, /* GL_LINE_SMOOTH */ + { 17959, 0x00000C52 }, /* GL_LINE_SMOOTH_HINT */ + { 17979, 0x00000B24 }, /* GL_LINE_STIPPLE */ + { 17995, 0x00000B25 }, /* GL_LINE_STIPPLE_PATTERN */ + { 18019, 0x00000B26 }, /* GL_LINE_STIPPLE_REPEAT */ + { 18042, 0x00000003 }, /* GL_LINE_STRIP */ + { 18056, 0x0000000B }, /* GL_LINE_STRIP_ADJACENCY */ + { 18080, 0x0000000B }, /* GL_LINE_STRIP_ADJACENCY_ARB */ + { 18108, 0x00000702 }, /* GL_LINE_TOKEN */ + { 18122, 0x00000B21 }, /* GL_LINE_WIDTH */ + { 18136, 0x00000B23 }, /* GL_LINE_WIDTH_GRANULARITY */ + { 18162, 0x00000B22 }, /* GL_LINE_WIDTH_RANGE */ + { 18182, 0x00008B82 }, /* GL_LINK_STATUS */ + { 18197, 0x00000B32 }, /* GL_LIST_BASE */ + { 18210, 0x00020000 }, /* GL_LIST_BIT */ + { 18222, 0x00000B33 }, /* GL_LIST_INDEX */ + { 18236, 0x00000B30 }, /* GL_LIST_MODE */ + { 18249, 0x00000101 }, /* GL_LOAD */ + { 18257, 0x00000BF1 }, /* GL_LOGIC_OP */ + { 18269, 0x00000BF0 }, /* GL_LOGIC_OP_MODE */ + { 18286, 0x00008CA1 }, /* GL_LOWER_LEFT */ + { 18300, 0x00008DF0 }, /* GL_LOW_FLOAT */ + { 18313, 0x00008DF3 }, /* GL_LOW_INT */ + { 18324, 0x00001909 }, /* GL_LUMINANCE */ + { 18337, 0x00008041 }, /* GL_LUMINANCE12 */ + { 18352, 0x00008047 }, /* GL_LUMINANCE12_ALPHA12 */ + { 18375, 0x00008047 }, /* GL_LUMINANCE12_ALPHA12_EXT */ + { 18402, 0x00008046 }, /* GL_LUMINANCE12_ALPHA4 */ + { 18424, 0x00008046 }, /* GL_LUMINANCE12_ALPHA4_EXT */ + { 18450, 0x00008041 }, /* GL_LUMINANCE12_EXT */ + { 18469, 0x00008042 }, /* GL_LUMINANCE16 */ + { 18484, 0x00008D8C }, /* GL_LUMINANCE16I_EXT */ + { 18504, 0x00008D7A }, /* GL_LUMINANCE16UI_EXT */ + { 18525, 0x00008048 }, /* GL_LUMINANCE16_ALPHA16 */ + { 18548, 0x00008048 }, /* GL_LUMINANCE16_ALPHA16_EXT */ + { 18575, 0x00008042 }, /* GL_LUMINANCE16_EXT */ + { 18594, 0x00008D86 }, /* GL_LUMINANCE32I_EXT */ + { 18614, 0x00008D74 }, /* GL_LUMINANCE32UI_EXT */ + { 18635, 0x0000803F }, /* GL_LUMINANCE4 */ + { 18649, 0x00008043 }, /* GL_LUMINANCE4_ALPHA4 */ + { 18670, 0x00008043 }, /* GL_LUMINANCE4_ALPHA4_EXT */ + { 18695, 0x0000803F }, /* GL_LUMINANCE4_EXT */ + { 18713, 0x00008044 }, /* GL_LUMINANCE6_ALPHA2 */ + { 18734, 0x00008044 }, /* GL_LUMINANCE6_ALPHA2_EXT */ + { 18759, 0x00008040 }, /* GL_LUMINANCE8 */ + { 18773, 0x00008D92 }, /* GL_LUMINANCE8I_EXT */ + { 18792, 0x00008D80 }, /* GL_LUMINANCE8UI_EXT */ + { 18812, 0x00008045 }, /* GL_LUMINANCE8_ALPHA8 */ + { 18833, 0x00008045 }, /* GL_LUMINANCE8_ALPHA8_EXT */ + { 18858, 0x00008040 }, /* GL_LUMINANCE8_EXT */ + { 18876, 0x0000190A }, /* GL_LUMINANCE_ALPHA */ + { 18895, 0x00008D8D }, /* GL_LUMINANCE_ALPHA16I_EXT */ + { 18921, 0x00008D7B }, /* GL_LUMINANCE_ALPHA16UI_EXT */ + { 18948, 0x00008D87 }, /* GL_LUMINANCE_ALPHA32I_EXT */ + { 18974, 0x00008D75 }, /* GL_LUMINANCE_ALPHA32UI_EXT */ + { 19001, 0x00008D93 }, /* GL_LUMINANCE_ALPHA8I_EXT */ + { 19026, 0x00008D81 }, /* GL_LUMINANCE_ALPHA8UI_EXT */ + { 19052, 0x00008D9D }, /* GL_LUMINANCE_ALPHA_INTEGER_EXT */ + { 19083, 0x00008D9C }, /* GL_LUMINANCE_INTEGER_EXT */ + { 19108, 0x0000821B }, /* GL_MAJOR_VERSION */ + { 19125, 0x00000D90 }, /* GL_MAP1_COLOR_4 */ + { 19141, 0x00000DD0 }, /* GL_MAP1_GRID_DOMAIN */ + { 19161, 0x00000DD1 }, /* GL_MAP1_GRID_SEGMENTS */ + { 19183, 0x00000D91 }, /* GL_MAP1_INDEX */ + { 19197, 0x00000D92 }, /* GL_MAP1_NORMAL */ + { 19212, 0x00000D93 }, /* GL_MAP1_TEXTURE_COORD_1 */ + { 19236, 0x00000D94 }, /* GL_MAP1_TEXTURE_COORD_2 */ + { 19260, 0x00000D95 }, /* GL_MAP1_TEXTURE_COORD_3 */ + { 19284, 0x00000D96 }, /* GL_MAP1_TEXTURE_COORD_4 */ + { 19308, 0x00000D97 }, /* GL_MAP1_VERTEX_3 */ + { 19325, 0x00000D98 }, /* GL_MAP1_VERTEX_4 */ + { 19342, 0x00008660 }, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */ + { 19370, 0x0000866A }, /* GL_MAP1_VERTEX_ATTRIB10_4_NV */ + { 19399, 0x0000866B }, /* GL_MAP1_VERTEX_ATTRIB11_4_NV */ + { 19428, 0x0000866C }, /* GL_MAP1_VERTEX_ATTRIB12_4_NV */ + { 19457, 0x0000866D }, /* GL_MAP1_VERTEX_ATTRIB13_4_NV */ + { 19486, 0x0000866E }, /* GL_MAP1_VERTEX_ATTRIB14_4_NV */ + { 19515, 0x0000866F }, /* GL_MAP1_VERTEX_ATTRIB15_4_NV */ + { 19544, 0x00008661 }, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */ + { 19572, 0x00008662 }, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */ + { 19600, 0x00008663 }, /* GL_MAP1_VERTEX_ATTRIB3_4_NV */ + { 19628, 0x00008664 }, /* GL_MAP1_VERTEX_ATTRIB4_4_NV */ + { 19656, 0x00008665 }, /* GL_MAP1_VERTEX_ATTRIB5_4_NV */ + { 19684, 0x00008666 }, /* GL_MAP1_VERTEX_ATTRIB6_4_NV */ + { 19712, 0x00008667 }, /* GL_MAP1_VERTEX_ATTRIB7_4_NV */ + { 19740, 0x00008668 }, /* GL_MAP1_VERTEX_ATTRIB8_4_NV */ + { 19768, 0x00008669 }, /* GL_MAP1_VERTEX_ATTRIB9_4_NV */ + { 19796, 0x00000DB0 }, /* GL_MAP2_COLOR_4 */ + { 19812, 0x00000DD2 }, /* GL_MAP2_GRID_DOMAIN */ + { 19832, 0x00000DD3 }, /* GL_MAP2_GRID_SEGMENTS */ + { 19854, 0x00000DB1 }, /* GL_MAP2_INDEX */ + { 19868, 0x00000DB2 }, /* GL_MAP2_NORMAL */ + { 19883, 0x00000DB3 }, /* GL_MAP2_TEXTURE_COORD_1 */ + { 19907, 0x00000DB4 }, /* GL_MAP2_TEXTURE_COORD_2 */ + { 19931, 0x00000DB5 }, /* GL_MAP2_TEXTURE_COORD_3 */ + { 19955, 0x00000DB6 }, /* GL_MAP2_TEXTURE_COORD_4 */ + { 19979, 0x00000DB7 }, /* GL_MAP2_VERTEX_3 */ + { 19996, 0x00000DB8 }, /* GL_MAP2_VERTEX_4 */ + { 20013, 0x00008670 }, /* GL_MAP2_VERTEX_ATTRIB0_4_NV */ + { 20041, 0x0000867A }, /* GL_MAP2_VERTEX_ATTRIB10_4_NV */ + { 20070, 0x0000867B }, /* GL_MAP2_VERTEX_ATTRIB11_4_NV */ + { 20099, 0x0000867C }, /* GL_MAP2_VERTEX_ATTRIB12_4_NV */ + { 20128, 0x0000867D }, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */ + { 20157, 0x0000867E }, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */ + { 20186, 0x0000867F }, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */ + { 20215, 0x00008671 }, /* GL_MAP2_VERTEX_ATTRIB1_4_NV */ + { 20243, 0x00008672 }, /* GL_MAP2_VERTEX_ATTRIB2_4_NV */ + { 20271, 0x00008673 }, /* GL_MAP2_VERTEX_ATTRIB3_4_NV */ + { 20299, 0x00008674 }, /* GL_MAP2_VERTEX_ATTRIB4_4_NV */ + { 20327, 0x00008675 }, /* GL_MAP2_VERTEX_ATTRIB5_4_NV */ + { 20355, 0x00008676 }, /* GL_MAP2_VERTEX_ATTRIB6_4_NV */ + { 20383, 0x00008677 }, /* GL_MAP2_VERTEX_ATTRIB7_4_NV */ + { 20411, 0x00008678 }, /* GL_MAP2_VERTEX_ATTRIB8_4_NV */ + { 20439, 0x00008679 }, /* GL_MAP2_VERTEX_ATTRIB9_4_NV */ + { 20467, 0x00000D10 }, /* GL_MAP_COLOR */ + { 20480, 0x00000010 }, /* GL_MAP_FLUSH_EXPLICIT_BIT */ + { 20506, 0x00000008 }, /* GL_MAP_INVALIDATE_BUFFER_BIT */ + { 20535, 0x00000004 }, /* GL_MAP_INVALIDATE_RANGE_BIT */ + { 20563, 0x00000001 }, /* GL_MAP_READ_BIT */ + { 20579, 0x00000D11 }, /* GL_MAP_STENCIL */ + { 20594, 0x00000020 }, /* GL_MAP_UNSYNCHRONIZED_BIT */ + { 20620, 0x00000002 }, /* GL_MAP_WRITE_BIT */ + { 20637, 0x000088C0 }, /* GL_MATRIX0_ARB */ + { 20652, 0x00008630 }, /* GL_MATRIX0_NV */ + { 20666, 0x000088CA }, /* GL_MATRIX10_ARB */ + { 20682, 0x000088CB }, /* GL_MATRIX11_ARB */ + { 20698, 0x000088CC }, /* GL_MATRIX12_ARB */ + { 20714, 0x000088CD }, /* GL_MATRIX13_ARB */ + { 20730, 0x000088CE }, /* GL_MATRIX14_ARB */ + { 20746, 0x000088CF }, /* GL_MATRIX15_ARB */ + { 20762, 0x000088D0 }, /* GL_MATRIX16_ARB */ + { 20778, 0x000088D1 }, /* GL_MATRIX17_ARB */ + { 20794, 0x000088D2 }, /* GL_MATRIX18_ARB */ + { 20810, 0x000088D3 }, /* GL_MATRIX19_ARB */ + { 20826, 0x000088C1 }, /* GL_MATRIX1_ARB */ + { 20841, 0x00008631 }, /* GL_MATRIX1_NV */ + { 20855, 0x000088D4 }, /* GL_MATRIX20_ARB */ + { 20871, 0x000088D5 }, /* GL_MATRIX21_ARB */ + { 20887, 0x000088D6 }, /* GL_MATRIX22_ARB */ + { 20903, 0x000088D7 }, /* GL_MATRIX23_ARB */ + { 20919, 0x000088D8 }, /* GL_MATRIX24_ARB */ + { 20935, 0x000088D9 }, /* GL_MATRIX25_ARB */ + { 20951, 0x000088DA }, /* GL_MATRIX26_ARB */ + { 20967, 0x000088DB }, /* GL_MATRIX27_ARB */ + { 20983, 0x000088DC }, /* GL_MATRIX28_ARB */ + { 20999, 0x000088DD }, /* GL_MATRIX29_ARB */ + { 21015, 0x000088C2 }, /* GL_MATRIX2_ARB */ + { 21030, 0x00008632 }, /* GL_MATRIX2_NV */ + { 21044, 0x000088DE }, /* GL_MATRIX30_ARB */ + { 21060, 0x000088DF }, /* GL_MATRIX31_ARB */ + { 21076, 0x000088C3 }, /* GL_MATRIX3_ARB */ + { 21091, 0x00008633 }, /* GL_MATRIX3_NV */ + { 21105, 0x000088C4 }, /* GL_MATRIX4_ARB */ + { 21120, 0x00008634 }, /* GL_MATRIX4_NV */ + { 21134, 0x000088C5 }, /* GL_MATRIX5_ARB */ + { 21149, 0x00008635 }, /* GL_MATRIX5_NV */ + { 21163, 0x000088C6 }, /* GL_MATRIX6_ARB */ + { 21178, 0x00008636 }, /* GL_MATRIX6_NV */ + { 21192, 0x000088C7 }, /* GL_MATRIX7_ARB */ + { 21207, 0x00008637 }, /* GL_MATRIX7_NV */ + { 21221, 0x000088C8 }, /* GL_MATRIX8_ARB */ + { 21236, 0x000088C9 }, /* GL_MATRIX9_ARB */ + { 21251, 0x00008844 }, /* GL_MATRIX_INDEX_ARRAY_ARB */ + { 21277, 0x00008B9E }, /* GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES */ + { 21318, 0x00008844 }, /* GL_MATRIX_INDEX_ARRAY_OES */ + { 21344, 0x00008849 }, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */ + { 21378, 0x00008849 }, /* GL_MATRIX_INDEX_ARRAY_POINTER_OES */ + { 21412, 0x00008846 }, /* GL_MATRIX_INDEX_ARRAY_SIZE_ARB */ + { 21443, 0x00008846 }, /* GL_MATRIX_INDEX_ARRAY_SIZE_OES */ + { 21474, 0x00008848 }, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */ + { 21507, 0x00008848 }, /* GL_MATRIX_INDEX_ARRAY_STRIDE_OES */ + { 21540, 0x00008847 }, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */ + { 21571, 0x00008847 }, /* GL_MATRIX_INDEX_ARRAY_TYPE_OES */ + { 21602, 0x00000BA0 }, /* GL_MATRIX_MODE */ + { 21617, 0x00008840 }, /* GL_MATRIX_PALETTE_ARB */ + { 21639, 0x00008840 }, /* GL_MATRIX_PALETTE_OES */ + { 21661, 0x00008008 }, /* GL_MAX */ + { 21668, 0x00008073 }, /* GL_MAX_3D_TEXTURE_SIZE */ + { 21691, 0x00008073 }, /* GL_MAX_3D_TEXTURE_SIZE_OES */ + { 21718, 0x000088FF }, /* GL_MAX_ARRAY_TEXTURE_LAYERS */ + { 21746, 0x000088FF }, /* GL_MAX_ARRAY_TEXTURE_LAYERS_EXT */ + { 21778, 0x00000D35 }, /* GL_MAX_ATTRIB_STACK_DEPTH */ + { 21804, 0x00000D3B }, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */ + { 21837, 0x00008177 }, /* GL_MAX_CLIPMAP_DEPTH_SGIX */ + { 21863, 0x00008178 }, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */ + { 21897, 0x00000D32 }, /* GL_MAX_CLIP_DISTANCES */ + { 21919, 0x00000D32 }, /* GL_MAX_CLIP_PLANES */ + { 21938, 0x00008CDF }, /* GL_MAX_COLOR_ATTACHMENTS */ + { 21963, 0x00008CDF }, /* GL_MAX_COLOR_ATTACHMENTS_EXT */ + { 21992, 0x000080B3 }, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */ + { 22024, 0x000080B3 }, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI */ + { 22060, 0x00008B4D }, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */ + { 22096, 0x00008B4D }, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB */ + { 22136, 0x0000801B }, /* GL_MAX_CONVOLUTION_HEIGHT */ + { 22162, 0x0000801B }, /* GL_MAX_CONVOLUTION_HEIGHT_EXT */ + { 22192, 0x0000801A }, /* GL_MAX_CONVOLUTION_WIDTH */ + { 22217, 0x0000801A }, /* GL_MAX_CONVOLUTION_WIDTH_EXT */ + { 22246, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */ + { 22275, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB */ + { 22308, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE_OES */ + { 22341, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS */ + { 22361, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_ARB */ + { 22385, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_ATI */ + { 22409, 0x000080E9 }, /* GL_MAX_ELEMENTS_INDICES */ + { 22433, 0x000080E8 }, /* GL_MAX_ELEMENTS_VERTICES */ + { 22458, 0x00000D30 }, /* GL_MAX_EVAL_ORDER */ + { 22476, 0x00008008 }, /* GL_MAX_EXT */ + { 22487, 0x00009125 }, /* GL_MAX_FRAGMENT_INPUT_COMPONENTS */ + { 22520, 0x00008B49 }, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */ + { 22555, 0x00008B49 }, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB */ + { 22594, 0x00008DFD }, /* GL_MAX_FRAGMENT_UNIFORM_VECTORS */ + { 22626, 0x00009123 }, /* GL_MAX_GEOMETRY_INPUT_COMPONENTS */ + { 22659, 0x00009124 }, /* GL_MAX_GEOMETRY_OUTPUT_COMPONENTS */ + { 22693, 0x00008DE0 }, /* GL_MAX_GEOMETRY_OUTPUT_VERTICES */ + { 22725, 0x00008DE0 }, /* GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB */ + { 22761, 0x00008C29 }, /* GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS */ + { 22797, 0x00008C29 }, /* GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB */ + { 22837, 0x00008DE1 }, /* GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS */ + { 22877, 0x00008DE1 }, /* GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB */ + { 22921, 0x00008DDF }, /* GL_MAX_GEOMETRY_UNIFORM_COMPONENTS */ + { 22956, 0x00008DDF }, /* GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB */ + { 22995, 0x00008DDD }, /* GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB */ + { 23034, 0x00000D31 }, /* GL_MAX_LIGHTS */ + { 23048, 0x00000B31 }, /* GL_MAX_LIST_NESTING */ + { 23068, 0x00008841 }, /* GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB */ + { 23106, 0x00000D36 }, /* GL_MAX_MODELVIEW_STACK_DEPTH */ + { 23135, 0x00000D37 }, /* GL_MAX_NAME_STACK_DEPTH */ + { 23159, 0x00008842 }, /* GL_MAX_PALETTE_MATRICES_ARB */ + { 23187, 0x00008842 }, /* GL_MAX_PALETTE_MATRICES_OES */ + { 23215, 0x00000D34 }, /* GL_MAX_PIXEL_MAP_TABLE */ + { 23238, 0x000088B1 }, /* GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB */ + { 23275, 0x0000880B }, /* GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB */ + { 23311, 0x000088AD }, /* GL_MAX_PROGRAM_ATTRIBS_ARB */ + { 23338, 0x000088F5 }, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */ + { 23367, 0x000088B5 }, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */ + { 23401, 0x000088F4 }, /* GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV */ + { 23437, 0x000088F6 }, /* GL_MAX_PROGRAM_IF_DEPTH_NV */ + { 23464, 0x000088A1 }, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */ + { 23496, 0x000088B4 }, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */ + { 23532, 0x000088F8 }, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */ + { 23561, 0x000088F7 }, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */ + { 23590, 0x0000862F }, /* GL_MAX_PROGRAM_MATRICES_ARB */ + { 23618, 0x0000862E }, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */ + { 23656, 0x000088B3 }, /* GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ + { 23700, 0x0000880E }, /* GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ + { 23743, 0x000088AF }, /* GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB */ + { 23777, 0x000088A3 }, /* GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ + { 23816, 0x000088AB }, /* GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB */ + { 23853, 0x000088A7 }, /* GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB */ + { 23891, 0x00008810 }, /* GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ + { 23934, 0x0000880F }, /* GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ + { 23977, 0x000088A9 }, /* GL_MAX_PROGRAM_PARAMETERS_ARB */ + { 24007, 0x000088A5 }, /* GL_MAX_PROGRAM_TEMPORARIES_ARB */ + { 24038, 0x00008905 }, /* GL_MAX_PROGRAM_TEXEL_OFFSET */ + { 24066, 0x00008905 }, /* GL_MAX_PROGRAM_TEXEL_OFFSET_EXT */ + { 24098, 0x0000880D }, /* GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB */ + { 24134, 0x0000880C }, /* GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB */ + { 24170, 0x00000D38 }, /* GL_MAX_PROJECTION_STACK_DEPTH */ + { 24200, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE */ + { 24230, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB */ + { 24264, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_NV */ + { 24297, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE */ + { 24322, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE_EXT */ + { 24351, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE_OES */ + { 24380, 0x00008D57 }, /* GL_MAX_SAMPLES */ + { 24395, 0x00008D57 }, /* GL_MAX_SAMPLES_EXT */ + { 24414, 0x00009111 }, /* GL_MAX_SERVER_WAIT_TIMEOUT */ + { 24441, 0x00008504 }, /* GL_MAX_SHININESS_NV */ + { 24461, 0x00008505 }, /* GL_MAX_SPOT_EXPONENT_NV */ + { 24485, 0x00008C2B }, /* GL_MAX_TEXTURE_BUFFER_SIZE */ + { 24512, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS */ + { 24534, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS_ARB */ + { 24560, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS */ + { 24587, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS_ARB */ + { 24618, 0x000084FD }, /* GL_MAX_TEXTURE_LOD_BIAS */ + { 24642, 0x000084FD }, /* GL_MAX_TEXTURE_LOD_BIAS_EXT */ + { 24670, 0x000084FF }, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */ + { 24704, 0x00000D33 }, /* GL_MAX_TEXTURE_SIZE */ + { 24724, 0x00000D39 }, /* GL_MAX_TEXTURE_STACK_DEPTH */ + { 24751, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS */ + { 24772, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS_ARB */ + { 24797, 0x0000862F }, /* GL_MAX_TRACK_MATRICES_NV */ + { 24822, 0x0000862E }, /* GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV */ + { 24857, 0x00008C8A }, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS */ + { 24906, 0x00008C8A }, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT */ + { 24959, 0x00008C8B }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS */ + { 25002, 0x00008C8B }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT */ + { 25049, 0x00008C80 }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS */ + { 25095, 0x00008C80 }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT */ + { 25145, 0x00008B4B }, /* GL_MAX_VARYING_COMPONENTS */ + { 25171, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS */ + { 25193, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS_ARB */ + { 25219, 0x00008DFC }, /* GL_MAX_VARYING_VECTORS */ + { 25242, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS */ + { 25264, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS_ARB */ + { 25290, 0x00009122 }, /* GL_MAX_VERTEX_OUTPUT_COMPONENTS */ + { 25322, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */ + { 25356, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB */ + { 25394, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */ + { 25427, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB */ + { 25464, 0x00008DFB }, /* GL_MAX_VERTEX_UNIFORM_VECTORS */ + { 25494, 0x000086A4 }, /* GL_MAX_VERTEX_UNITS_ARB */ + { 25518, 0x000086A4 }, /* GL_MAX_VERTEX_UNITS_OES */ + { 25542, 0x00008DDE }, /* GL_MAX_VERTEX_VARYING_COMPONENTS_ARB */ + { 25579, 0x00000D3A }, /* GL_MAX_VIEWPORT_DIMS */ + { 25600, 0x00008DF1 }, /* GL_MEDIUM_FLOAT */ + { 25616, 0x00008DF4 }, /* GL_MEDIUM_INT */ + { 25630, 0x00008007 }, /* GL_MIN */ + { 25637, 0x0000802E }, /* GL_MINMAX */ + { 25647, 0x0000802E }, /* GL_MINMAX_EXT */ + { 25661, 0x0000802F }, /* GL_MINMAX_FORMAT */ + { 25678, 0x0000802F }, /* GL_MINMAX_FORMAT_EXT */ + { 25699, 0x00008030 }, /* GL_MINMAX_SINK */ + { 25714, 0x00008030 }, /* GL_MINMAX_SINK_EXT */ + { 25733, 0x0000821C }, /* GL_MINOR_VERSION */ + { 25750, 0x00008007 }, /* GL_MIN_EXT */ + { 25761, 0x00008904 }, /* GL_MIN_PROGRAM_TEXEL_OFFSET */ + { 25789, 0x00008904 }, /* GL_MIN_PROGRAM_TEXEL_OFFSET_EXT */ + { 25821, 0x00008370 }, /* GL_MIRRORED_REPEAT */ + { 25840, 0x00008370 }, /* GL_MIRRORED_REPEAT_ARB */ + { 25863, 0x00008370 }, /* GL_MIRRORED_REPEAT_IBM */ + { 25886, 0x00008742 }, /* GL_MIRROR_CLAMP_ATI */ + { 25906, 0x00008742 }, /* GL_MIRROR_CLAMP_EXT */ + { 25926, 0x00008912 }, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */ + { 25956, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_ATI */ + { 25984, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */ + { 26012, 0x00001700 }, /* GL_MODELVIEW */ + { 26025, 0x00001700 }, /* GL_MODELVIEW0_ARB */ + { 26043, 0x0000872A }, /* GL_MODELVIEW10_ARB */ + { 26062, 0x0000872B }, /* GL_MODELVIEW11_ARB */ + { 26081, 0x0000872C }, /* GL_MODELVIEW12_ARB */ + { 26100, 0x0000872D }, /* GL_MODELVIEW13_ARB */ + { 26119, 0x0000872E }, /* GL_MODELVIEW14_ARB */ + { 26138, 0x0000872F }, /* GL_MODELVIEW15_ARB */ + { 26157, 0x00008730 }, /* GL_MODELVIEW16_ARB */ + { 26176, 0x00008731 }, /* GL_MODELVIEW17_ARB */ + { 26195, 0x00008732 }, /* GL_MODELVIEW18_ARB */ + { 26214, 0x00008733 }, /* GL_MODELVIEW19_ARB */ + { 26233, 0x0000850A }, /* GL_MODELVIEW1_ARB */ + { 26251, 0x00008734 }, /* GL_MODELVIEW20_ARB */ + { 26270, 0x00008735 }, /* GL_MODELVIEW21_ARB */ + { 26289, 0x00008736 }, /* GL_MODELVIEW22_ARB */ + { 26308, 0x00008737 }, /* GL_MODELVIEW23_ARB */ + { 26327, 0x00008738 }, /* GL_MODELVIEW24_ARB */ + { 26346, 0x00008739 }, /* GL_MODELVIEW25_ARB */ + { 26365, 0x0000873A }, /* GL_MODELVIEW26_ARB */ + { 26384, 0x0000873B }, /* GL_MODELVIEW27_ARB */ + { 26403, 0x0000873C }, /* GL_MODELVIEW28_ARB */ + { 26422, 0x0000873D }, /* GL_MODELVIEW29_ARB */ + { 26441, 0x00008722 }, /* GL_MODELVIEW2_ARB */ + { 26459, 0x0000873E }, /* GL_MODELVIEW30_ARB */ + { 26478, 0x0000873F }, /* GL_MODELVIEW31_ARB */ + { 26497, 0x00008723 }, /* GL_MODELVIEW3_ARB */ + { 26515, 0x00008724 }, /* GL_MODELVIEW4_ARB */ + { 26533, 0x00008725 }, /* GL_MODELVIEW5_ARB */ + { 26551, 0x00008726 }, /* GL_MODELVIEW6_ARB */ + { 26569, 0x00008727 }, /* GL_MODELVIEW7_ARB */ + { 26587, 0x00008728 }, /* GL_MODELVIEW8_ARB */ + { 26605, 0x00008729 }, /* GL_MODELVIEW9_ARB */ + { 26623, 0x00000BA6 }, /* GL_MODELVIEW_MATRIX */ + { 26643, 0x0000898D }, /* GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES */ + { 26685, 0x00008629 }, /* GL_MODELVIEW_PROJECTION_NV */ + { 26712, 0x00000BA3 }, /* GL_MODELVIEW_STACK_DEPTH */ + { 26737, 0x00002100 }, /* GL_MODULATE */ + { 26749, 0x00008744 }, /* GL_MODULATE_ADD_ATI */ + { 26769, 0x00008745 }, /* GL_MODULATE_SIGNED_ADD_ATI */ + { 26796, 0x00008746 }, /* GL_MODULATE_SUBTRACT_ATI */ + { 26821, 0x00000103 }, /* GL_MULT */ + { 26829, 0x0000809D }, /* GL_MULTISAMPLE */ + { 26844, 0x000086B2 }, /* GL_MULTISAMPLE_3DFX */ + { 26864, 0x0000809D }, /* GL_MULTISAMPLE_ARB */ + { 26883, 0x20000000 }, /* GL_MULTISAMPLE_BIT */ + { 26902, 0x20000000 }, /* GL_MULTISAMPLE_BIT_3DFX */ + { 26926, 0x20000000 }, /* GL_MULTISAMPLE_BIT_ARB */ + { 26949, 0x00008534 }, /* GL_MULTISAMPLE_FILTER_HINT_NV */ + { 26979, 0x00002A25 }, /* GL_N3F_V3F */ + { 26990, 0x00000D70 }, /* GL_NAME_STACK_DEPTH */ + { 27010, 0x0000150E }, /* GL_NAND */ + { 27018, 0x00002600 }, /* GL_NEAREST */ + { 27029, 0x0000844E }, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */ + { 27060, 0x0000844D }, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */ + { 27092, 0x00002702 }, /* GL_NEAREST_MIPMAP_LINEAR */ + { 27117, 0x00002700 }, /* GL_NEAREST_MIPMAP_NEAREST */ + { 27143, 0x00000200 }, /* GL_NEVER */ + { 27152, 0x00001102 }, /* GL_NICEST */ + { 27162, 0x00000000 }, /* GL_NONE */ + { 27170, 0x00000000 }, /* GL_NONE_OES */ + { 27182, 0x00001505 }, /* GL_NOOP */ + { 27190, 0x00001508 }, /* GL_NOR */ + { 27197, 0x00000BA1 }, /* GL_NORMALIZE */ + { 27210, 0x00008075 }, /* GL_NORMAL_ARRAY */ + { 27226, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING */ + { 27257, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING_ARB */ + { 27292, 0x0000808F }, /* GL_NORMAL_ARRAY_POINTER */ + { 27316, 0x0000807F }, /* GL_NORMAL_ARRAY_STRIDE */ + { 27339, 0x0000807E }, /* GL_NORMAL_ARRAY_TYPE */ + { 27360, 0x00008511 }, /* GL_NORMAL_MAP */ + { 27374, 0x00008511 }, /* GL_NORMAL_MAP_ARB */ + { 27392, 0x00008511 }, /* GL_NORMAL_MAP_NV */ + { 27409, 0x00008511 }, /* GL_NORMAL_MAP_OES */ + { 27427, 0x00000205 }, /* GL_NOTEQUAL */ + { 27439, 0x00000000 }, /* GL_NO_ERROR */ + { 27451, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */ + { 27485, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB */ + { 27523, 0x0000821D }, /* GL_NUM_EXTENSIONS */ + { 27541, 0x000087FE }, /* GL_NUM_PROGRAM_BINARY_FORMATS_OES */ + { 27575, 0x00008DF9 }, /* GL_NUM_SHADER_BINARY_FORMATS */ + { 27604, 0x00008B89 }, /* GL_OBJECT_ACTIVE_ATTRIBUTES_ARB */ + { 27636, 0x00008B8A }, /* GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB */ + { 27678, 0x00008B86 }, /* GL_OBJECT_ACTIVE_UNIFORMS_ARB */ + { 27708, 0x00008B87 }, /* GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB */ + { 27748, 0x00008B85 }, /* GL_OBJECT_ATTACHED_OBJECTS_ARB */ + { 27779, 0x00008B81 }, /* GL_OBJECT_COMPILE_STATUS_ARB */ + { 27808, 0x00008B80 }, /* GL_OBJECT_DELETE_STATUS_ARB */ + { 27836, 0x00008B84 }, /* GL_OBJECT_INFO_LOG_LENGTH_ARB */ + { 27866, 0x00002401 }, /* GL_OBJECT_LINEAR */ + { 27883, 0x00008B82 }, /* GL_OBJECT_LINK_STATUS_ARB */ + { 27909, 0x00002501 }, /* GL_OBJECT_PLANE */ + { 27925, 0x00008B88 }, /* GL_OBJECT_SHADER_SOURCE_LENGTH_ARB */ + { 27960, 0x00008B4F }, /* GL_OBJECT_SUBTYPE_ARB */ + { 27982, 0x00009112 }, /* GL_OBJECT_TYPE */ + { 27997, 0x00008B4E }, /* GL_OBJECT_TYPE_ARB */ + { 28016, 0x00008B83 }, /* GL_OBJECT_VALIDATE_STATUS_ARB */ + { 28046, 0x00008165 }, /* GL_OCCLUSION_TEST_HP */ + { 28067, 0x00008166 }, /* GL_OCCLUSION_TEST_RESULT_HP */ + { 28095, 0x00000001 }, /* GL_ONE */ + { 28102, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA */ + { 28130, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA_EXT */ + { 28162, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR */ + { 28190, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR_EXT */ + { 28222, 0x00000305 }, /* GL_ONE_MINUS_DST_ALPHA */ + { 28245, 0x00000307 }, /* GL_ONE_MINUS_DST_COLOR */ + { 28268, 0x00000303 }, /* GL_ONE_MINUS_SRC_ALPHA */ + { 28291, 0x00000301 }, /* GL_ONE_MINUS_SRC_COLOR */ + { 28314, 0x00008598 }, /* GL_OPERAND0_ALPHA */ + { 28332, 0x00008598 }, /* GL_OPERAND0_ALPHA_ARB */ + { 28354, 0x00008598 }, /* GL_OPERAND0_ALPHA_EXT */ + { 28376, 0x00008590 }, /* GL_OPERAND0_RGB */ + { 28392, 0x00008590 }, /* GL_OPERAND0_RGB_ARB */ + { 28412, 0x00008590 }, /* GL_OPERAND0_RGB_EXT */ + { 28432, 0x00008599 }, /* GL_OPERAND1_ALPHA */ + { 28450, 0x00008599 }, /* GL_OPERAND1_ALPHA_ARB */ + { 28472, 0x00008599 }, /* GL_OPERAND1_ALPHA_EXT */ + { 28494, 0x00008591 }, /* GL_OPERAND1_RGB */ + { 28510, 0x00008591 }, /* GL_OPERAND1_RGB_ARB */ + { 28530, 0x00008591 }, /* GL_OPERAND1_RGB_EXT */ + { 28550, 0x0000859A }, /* GL_OPERAND2_ALPHA */ + { 28568, 0x0000859A }, /* GL_OPERAND2_ALPHA_ARB */ + { 28590, 0x0000859A }, /* GL_OPERAND2_ALPHA_EXT */ + { 28612, 0x00008592 }, /* GL_OPERAND2_RGB */ + { 28628, 0x00008592 }, /* GL_OPERAND2_RGB_ARB */ + { 28648, 0x00008592 }, /* GL_OPERAND2_RGB_EXT */ + { 28668, 0x0000859B }, /* GL_OPERAND3_ALPHA_NV */ + { 28689, 0x00008593 }, /* GL_OPERAND3_RGB_NV */ + { 28708, 0x00001507 }, /* GL_OR */ + { 28714, 0x00000A01 }, /* GL_ORDER */ + { 28723, 0x0000150D }, /* GL_OR_INVERTED */ + { 28738, 0x0000150B }, /* GL_OR_REVERSE */ + { 28752, 0x00000505 }, /* GL_OUT_OF_MEMORY */ + { 28769, 0x00000D05 }, /* GL_PACK_ALIGNMENT */ + { 28787, 0x0000806C }, /* GL_PACK_IMAGE_HEIGHT */ + { 28808, 0x00008758 }, /* GL_PACK_INVERT_MESA */ + { 28828, 0x00000D01 }, /* GL_PACK_LSB_FIRST */ + { 28846, 0x00000D02 }, /* GL_PACK_ROW_LENGTH */ + { 28865, 0x0000806B }, /* GL_PACK_SKIP_IMAGES */ + { 28885, 0x00000D04 }, /* GL_PACK_SKIP_PIXELS */ + { 28905, 0x00000D03 }, /* GL_PACK_SKIP_ROWS */ + { 28923, 0x00000D00 }, /* GL_PACK_SWAP_BYTES */ + { 28942, 0x00008B92 }, /* GL_PALETTE4_R5_G6_B5_OES */ + { 28967, 0x00008B94 }, /* GL_PALETTE4_RGB5_A1_OES */ + { 28991, 0x00008B90 }, /* GL_PALETTE4_RGB8_OES */ + { 29012, 0x00008B93 }, /* GL_PALETTE4_RGBA4_OES */ + { 29034, 0x00008B91 }, /* GL_PALETTE4_RGBA8_OES */ + { 29056, 0x00008B97 }, /* GL_PALETTE8_R5_G6_B5_OES */ + { 29081, 0x00008B99 }, /* GL_PALETTE8_RGB5_A1_OES */ + { 29105, 0x00008B95 }, /* GL_PALETTE8_RGB8_OES */ + { 29126, 0x00008B98 }, /* GL_PALETTE8_RGBA4_OES */ + { 29148, 0x00008B96 }, /* GL_PALETTE8_RGBA8_OES */ + { 29170, 0x00000700 }, /* GL_PASS_THROUGH_TOKEN */ + { 29192, 0x00000C50 }, /* GL_PERSPECTIVE_CORRECTION_HINT */ + { 29223, 0x00000C79 }, /* GL_PIXEL_MAP_A_TO_A */ + { 29243, 0x00000CB9 }, /* GL_PIXEL_MAP_A_TO_A_SIZE */ + { 29268, 0x00000C78 }, /* GL_PIXEL_MAP_B_TO_B */ + { 29288, 0x00000CB8 }, /* GL_PIXEL_MAP_B_TO_B_SIZE */ + { 29313, 0x00000C77 }, /* GL_PIXEL_MAP_G_TO_G */ + { 29333, 0x00000CB7 }, /* GL_PIXEL_MAP_G_TO_G_SIZE */ + { 29358, 0x00000C75 }, /* GL_PIXEL_MAP_I_TO_A */ + { 29378, 0x00000CB5 }, /* GL_PIXEL_MAP_I_TO_A_SIZE */ + { 29403, 0x00000C74 }, /* GL_PIXEL_MAP_I_TO_B */ + { 29423, 0x00000CB4 }, /* GL_PIXEL_MAP_I_TO_B_SIZE */ + { 29448, 0x00000C73 }, /* GL_PIXEL_MAP_I_TO_G */ + { 29468, 0x00000CB3 }, /* GL_PIXEL_MAP_I_TO_G_SIZE */ + { 29493, 0x00000C70 }, /* GL_PIXEL_MAP_I_TO_I */ + { 29513, 0x00000CB0 }, /* GL_PIXEL_MAP_I_TO_I_SIZE */ + { 29538, 0x00000C72 }, /* GL_PIXEL_MAP_I_TO_R */ + { 29558, 0x00000CB2 }, /* GL_PIXEL_MAP_I_TO_R_SIZE */ + { 29583, 0x00000C76 }, /* GL_PIXEL_MAP_R_TO_R */ + { 29603, 0x00000CB6 }, /* GL_PIXEL_MAP_R_TO_R_SIZE */ + { 29628, 0x00000C71 }, /* GL_PIXEL_MAP_S_TO_S */ + { 29648, 0x00000CB1 }, /* GL_PIXEL_MAP_S_TO_S_SIZE */ + { 29673, 0x00000020 }, /* GL_PIXEL_MODE_BIT */ + { 29691, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER */ + { 29712, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING */ + { 29741, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING_EXT */ + { 29774, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER_EXT */ + { 29799, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER */ + { 29822, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING */ + { 29853, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING_EXT */ + { 29888, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER_EXT */ + { 29915, 0x00001B00 }, /* GL_POINT */ + { 29924, 0x00000000 }, /* GL_POINTS */ + { 29934, 0x00000002 }, /* GL_POINT_BIT */ + { 29947, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION */ + { 29977, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_ARB */ + { 30011, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_EXT */ + { 30045, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_SGIS */ + { 30080, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE */ + { 30109, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_ARB */ + { 30142, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_EXT */ + { 30175, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_SGIS */ + { 30209, 0x00000B11 }, /* GL_POINT_SIZE */ + { 30223, 0x00008B9F }, /* GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES */ + { 30262, 0x00008B9C }, /* GL_POINT_SIZE_ARRAY_OES */ + { 30286, 0x0000898C }, /* GL_POINT_SIZE_ARRAY_POINTER_OES */ + { 30318, 0x0000898B }, /* GL_POINT_SIZE_ARRAY_STRIDE_OES */ + { 30349, 0x0000898A }, /* GL_POINT_SIZE_ARRAY_TYPE_OES */ + { 30378, 0x00000B13 }, /* GL_POINT_SIZE_GRANULARITY */ + { 30404, 0x00008127 }, /* GL_POINT_SIZE_MAX */ + { 30422, 0x00008127 }, /* GL_POINT_SIZE_MAX_ARB */ + { 30444, 0x00008127 }, /* GL_POINT_SIZE_MAX_EXT */ + { 30466, 0x00008127 }, /* GL_POINT_SIZE_MAX_SGIS */ + { 30489, 0x00008126 }, /* GL_POINT_SIZE_MIN */ + { 30507, 0x00008126 }, /* GL_POINT_SIZE_MIN_ARB */ + { 30529, 0x00008126 }, /* GL_POINT_SIZE_MIN_EXT */ + { 30551, 0x00008126 }, /* GL_POINT_SIZE_MIN_SGIS */ + { 30574, 0x00000B12 }, /* GL_POINT_SIZE_RANGE */ + { 30594, 0x00000B10 }, /* GL_POINT_SMOOTH */ + { 30610, 0x00000C51 }, /* GL_POINT_SMOOTH_HINT */ + { 30631, 0x00008861 }, /* GL_POINT_SPRITE */ + { 30647, 0x00008861 }, /* GL_POINT_SPRITE_ARB */ + { 30667, 0x00008CA0 }, /* GL_POINT_SPRITE_COORD_ORIGIN */ + { 30696, 0x00008861 }, /* GL_POINT_SPRITE_NV */ + { 30715, 0x00008861 }, /* GL_POINT_SPRITE_OES */ + { 30735, 0x00008863 }, /* GL_POINT_SPRITE_R_MODE_NV */ + { 30761, 0x00000701 }, /* GL_POINT_TOKEN */ + { 30776, 0x00000009 }, /* GL_POLYGON */ + { 30787, 0x00000008 }, /* GL_POLYGON_BIT */ + { 30802, 0x00000B40 }, /* GL_POLYGON_MODE */ + { 30818, 0x00008039 }, /* GL_POLYGON_OFFSET_BIAS */ + { 30841, 0x00008038 }, /* GL_POLYGON_OFFSET_FACTOR */ + { 30866, 0x00008037 }, /* GL_POLYGON_OFFSET_FILL */ + { 30889, 0x00002A02 }, /* GL_POLYGON_OFFSET_LINE */ + { 30912, 0x00002A01 }, /* GL_POLYGON_OFFSET_POINT */ + { 30936, 0x00002A00 }, /* GL_POLYGON_OFFSET_UNITS */ + { 30960, 0x00000B41 }, /* GL_POLYGON_SMOOTH */ + { 30978, 0x00000C53 }, /* GL_POLYGON_SMOOTH_HINT */ + { 31001, 0x00000B42 }, /* GL_POLYGON_STIPPLE */ + { 31020, 0x00000010 }, /* GL_POLYGON_STIPPLE_BIT */ + { 31043, 0x00000703 }, /* GL_POLYGON_TOKEN */ + { 31060, 0x00001203 }, /* GL_POSITION */ + { 31072, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */ + { 31104, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI */ + { 31140, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */ + { 31173, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI */ + { 31210, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */ + { 31241, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI */ + { 31276, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */ + { 31308, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI */ + { 31344, 0x000080D2 }, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */ + { 31377, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */ + { 31409, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI */ + { 31445, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */ + { 31478, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI */ + { 31515, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS */ + { 31545, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS_SGI */ + { 31579, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE */ + { 31610, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE_SGI */ + { 31645, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS */ + { 31676, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS_EXT */ + { 31711, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE */ + { 31743, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE_EXT */ + { 31779, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS */ + { 31809, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS_EXT */ + { 31843, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE */ + { 31874, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE_EXT */ + { 31909, 0x000080D1 }, /* GL_POST_CONVOLUTION_COLOR_TABLE */ + { 31941, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS */ + { 31972, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS_EXT */ + { 32007, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE */ + { 32039, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE_EXT */ + { 32075, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS */ + { 32104, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS_EXT */ + { 32137, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE */ + { 32167, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE_EXT */ + { 32201, 0x0000817B }, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */ + { 32240, 0x00008179 }, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */ + { 32273, 0x0000817C }, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */ + { 32313, 0x0000817A }, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */ + { 32347, 0x00008578 }, /* GL_PREVIOUS */ + { 32359, 0x00008578 }, /* GL_PREVIOUS_ARB */ + { 32375, 0x00008578 }, /* GL_PREVIOUS_EXT */ + { 32391, 0x00008577 }, /* GL_PRIMARY_COLOR */ + { 32408, 0x00008577 }, /* GL_PRIMARY_COLOR_ARB */ + { 32429, 0x00008577 }, /* GL_PRIMARY_COLOR_EXT */ + { 32450, 0x00008C87 }, /* GL_PRIMITIVES_GENERATED */ + { 32474, 0x00008C87 }, /* GL_PRIMITIVES_GENERATED_EXT */ + { 32502, 0x00008F9D }, /* GL_PRIMITIVE_RESTART */ + { 32523, 0x00008F9E }, /* GL_PRIMITIVE_RESTART_INDEX */ + { 32550, 0x00008559 }, /* GL_PRIMITIVE_RESTART_INDEX_NV */ + { 32580, 0x00008558 }, /* GL_PRIMITIVE_RESTART_NV */ + { 32604, 0x000088B0 }, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */ + { 32637, 0x00008805 }, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */ + { 32669, 0x000088AC }, /* GL_PROGRAM_ATTRIBS_ARB */ + { 32692, 0x000087FF }, /* GL_PROGRAM_BINARY_FORMATS_OES */ + { 32722, 0x00008741 }, /* GL_PROGRAM_BINARY_LENGTH_OES */ + { 32751, 0x00008677 }, /* GL_PROGRAM_BINDING_ARB */ + { 32774, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_ARB */ + { 32804, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_NV */ + { 32833, 0x00008874 }, /* GL_PROGRAM_ERROR_STRING_ARB */ + { 32861, 0x00008876 }, /* GL_PROGRAM_FORMAT_ARB */ + { 32883, 0x00008875 }, /* GL_PROGRAM_FORMAT_ASCII_ARB */ + { 32911, 0x000088A0 }, /* GL_PROGRAM_INSTRUCTIONS_ARB */ + { 32939, 0x00008627 }, /* GL_PROGRAM_LENGTH_ARB */ + { 32961, 0x00008627 }, /* GL_PROGRAM_LENGTH_NV */ + { 32982, 0x000088B2 }, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ + { 33022, 0x00008808 }, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ + { 33061, 0x000088AE }, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */ + { 33091, 0x000088A2 }, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ + { 33126, 0x000088AA }, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */ + { 33159, 0x000088A6 }, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */ + { 33193, 0x0000880A }, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ + { 33232, 0x00008809 }, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ + { 33271, 0x00008B40 }, /* GL_PROGRAM_OBJECT_ARB */ + { 33293, 0x000088A8 }, /* GL_PROGRAM_PARAMETERS_ARB */ + { 33319, 0x00008644 }, /* GL_PROGRAM_PARAMETER_NV */ + { 33343, 0x00008642 }, /* GL_PROGRAM_POINT_SIZE */ + { 33365, 0x00008642 }, /* GL_PROGRAM_POINT_SIZE_ARB */ + { 33391, 0x00008647 }, /* GL_PROGRAM_RESIDENT_NV */ + { 33414, 0x00008628 }, /* GL_PROGRAM_STRING_ARB */ + { 33436, 0x00008628 }, /* GL_PROGRAM_STRING_NV */ + { 33457, 0x00008646 }, /* GL_PROGRAM_TARGET_NV */ + { 33478, 0x000088A4 }, /* GL_PROGRAM_TEMPORARIES_ARB */ + { 33505, 0x00008807 }, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */ + { 33537, 0x00008806 }, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */ + { 33569, 0x000088B6 }, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */ + { 33604, 0x00001701 }, /* GL_PROJECTION */ + { 33618, 0x00000BA7 }, /* GL_PROJECTION_MATRIX */ + { 33639, 0x0000898E }, /* GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES */ + { 33682, 0x00000BA4 }, /* GL_PROJECTION_STACK_DEPTH */ + { 33708, 0x00008E4F }, /* GL_PROVOKING_VERTEX */ + { 33728, 0x00008E4F }, /* GL_PROVOKING_VERTEX_EXT */ + { 33752, 0x000080D3 }, /* GL_PROXY_COLOR_TABLE */ + { 33773, 0x00008025 }, /* GL_PROXY_HISTOGRAM */ + { 33792, 0x00008025 }, /* GL_PROXY_HISTOGRAM_EXT */ + { 33815, 0x000080D5 }, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */ + { 33854, 0x000080D4 }, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */ + { 33892, 0x00008063 }, /* GL_PROXY_TEXTURE_1D */ + { 33912, 0x00008C19 }, /* GL_PROXY_TEXTURE_1D_ARRAY */ + { 33938, 0x00008C19 }, /* GL_PROXY_TEXTURE_1D_ARRAY_EXT */ + { 33968, 0x00008063 }, /* GL_PROXY_TEXTURE_1D_EXT */ + { 33992, 0x00008064 }, /* GL_PROXY_TEXTURE_2D */ + { 34012, 0x00008C1B }, /* GL_PROXY_TEXTURE_2D_ARRAY */ + { 34038, 0x00008C1B }, /* GL_PROXY_TEXTURE_2D_ARRAY_EXT */ + { 34068, 0x00008064 }, /* GL_PROXY_TEXTURE_2D_EXT */ + { 34092, 0x00008070 }, /* GL_PROXY_TEXTURE_3D */ + { 34112, 0x000080BD }, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */ + { 34145, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP */ + { 34171, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP_ARB */ + { 34201, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE */ + { 34228, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_ARB */ + { 34259, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_NV */ + { 34289, 0x00008A1D }, /* GL_PURGEABLE_APPLE */ + { 34308, 0x00002003 }, /* GL_Q */ + { 34313, 0x00001209 }, /* GL_QUADRATIC_ATTENUATION */ + { 34338, 0x00000007 }, /* GL_QUADS */ + { 34347, 0x00008E4C }, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION */ + { 34391, 0x00008E4C }, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT */ + { 34439, 0x00008614 }, /* GL_QUAD_MESH_SUN */ + { 34456, 0x00000008 }, /* GL_QUAD_STRIP */ + { 34470, 0x00008E16 }, /* GL_QUERY_BY_REGION_NO_WAIT */ + { 34497, 0x00008E16 }, /* GL_QUERY_BY_REGION_NO_WAIT_NV */ + { 34527, 0x00008E15 }, /* GL_QUERY_BY_REGION_WAIT */ + { 34551, 0x00008E15 }, /* GL_QUERY_BY_REGION_WAIT_NV */ + { 34578, 0x00008864 }, /* GL_QUERY_COUNTER_BITS */ + { 34600, 0x00008864 }, /* GL_QUERY_COUNTER_BITS_ARB */ + { 34626, 0x00008E14 }, /* GL_QUERY_NO_WAIT */ + { 34643, 0x00008E14 }, /* GL_QUERY_NO_WAIT_NV */ + { 34663, 0x00008866 }, /* GL_QUERY_RESULT */ + { 34679, 0x00008866 }, /* GL_QUERY_RESULT_ARB */ + { 34699, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE */ + { 34725, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE_ARB */ + { 34755, 0x00008E13 }, /* GL_QUERY_WAIT */ + { 34769, 0x00008E13 }, /* GL_QUERY_WAIT_NV */ + { 34786, 0x00002002 }, /* GL_R */ + { 34791, 0x00008C3A }, /* GL_R11F_G11F_B10F */ + { 34809, 0x00008F98 }, /* GL_R16_SNORM */ + { 34822, 0x00002A10 }, /* GL_R3_G3_B2 */ + { 34834, 0x00008F94 }, /* GL_R8_SNORM */ + { 34846, 0x00008C89 }, /* GL_RASTERIZER_DISCARD */ + { 34868, 0x00008C89 }, /* GL_RASTERIZER_DISCARD_EXT */ + { 34894, 0x00019262 }, /* GL_RASTER_POSITION_UNCLIPPED_IBM */ + { 34927, 0x00000C02 }, /* GL_READ_BUFFER */ + { 34942, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER */ + { 34962, 0x00008CAA }, /* GL_READ_FRAMEBUFFER_BINDING */ + { 34990, 0x00008CAA }, /* GL_READ_FRAMEBUFFER_BINDING_EXT */ + { 35022, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER_EXT */ + { 35046, 0x000088B8 }, /* GL_READ_ONLY */ + { 35059, 0x000088B8 }, /* GL_READ_ONLY_ARB */ + { 35076, 0x000088BA }, /* GL_READ_WRITE */ + { 35090, 0x000088BA }, /* GL_READ_WRITE_ARB */ + { 35108, 0x00001903 }, /* GL_RED */ + { 35115, 0x00008016 }, /* GL_REDUCE */ + { 35125, 0x00008016 }, /* GL_REDUCE_EXT */ + { 35139, 0x00000D15 }, /* GL_RED_BIAS */ + { 35151, 0x00000D52 }, /* GL_RED_BITS */ + { 35163, 0x00008D94 }, /* GL_RED_INTEGER */ + { 35178, 0x00008D94 }, /* GL_RED_INTEGER_EXT */ + { 35197, 0x00000D14 }, /* GL_RED_SCALE */ + { 35210, 0x00008F90 }, /* GL_RED_SNORM */ + { 35223, 0x00008512 }, /* GL_REFLECTION_MAP */ + { 35241, 0x00008512 }, /* GL_REFLECTION_MAP_ARB */ + { 35263, 0x00008512 }, /* GL_REFLECTION_MAP_NV */ + { 35284, 0x00008512 }, /* GL_REFLECTION_MAP_OES */ + { 35306, 0x00008A19 }, /* GL_RELEASED_APPLE */ + { 35324, 0x00001C00 }, /* GL_RENDER */ + { 35334, 0x00008D41 }, /* GL_RENDERBUFFER */ + { 35350, 0x00008D53 }, /* GL_RENDERBUFFER_ALPHA_SIZE */ + { 35377, 0x00008D53 }, /* GL_RENDERBUFFER_ALPHA_SIZE_OES */ + { 35408, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING */ + { 35432, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING_EXT */ + { 35460, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING_OES */ + { 35488, 0x00008D52 }, /* GL_RENDERBUFFER_BLUE_SIZE */ + { 35514, 0x00008D52 }, /* GL_RENDERBUFFER_BLUE_SIZE_OES */ + { 35544, 0x00008D54 }, /* GL_RENDERBUFFER_DEPTH_SIZE */ + { 35571, 0x00008D54 }, /* GL_RENDERBUFFER_DEPTH_SIZE_OES */ + { 35602, 0x00008D41 }, /* GL_RENDERBUFFER_EXT */ + { 35622, 0x00008D51 }, /* GL_RENDERBUFFER_GREEN_SIZE */ + { 35649, 0x00008D51 }, /* GL_RENDERBUFFER_GREEN_SIZE_OES */ + { 35680, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT */ + { 35703, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT_EXT */ + { 35730, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT_OES */ + { 35757, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT */ + { 35789, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT_EXT */ + { 35825, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT_OES */ + { 35861, 0x00008D41 }, /* GL_RENDERBUFFER_OES */ + { 35881, 0x00008D50 }, /* GL_RENDERBUFFER_RED_SIZE */ + { 35906, 0x00008D50 }, /* GL_RENDERBUFFER_RED_SIZE_OES */ + { 35935, 0x00008CAB }, /* GL_RENDERBUFFER_SAMPLES */ + { 35959, 0x00008CAB }, /* GL_RENDERBUFFER_SAMPLES_EXT */ + { 35987, 0x00008D55 }, /* GL_RENDERBUFFER_STENCIL_SIZE */ + { 36016, 0x00008D55 }, /* GL_RENDERBUFFER_STENCIL_SIZE_OES */ + { 36049, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH */ + { 36071, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH_EXT */ + { 36097, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH_OES */ + { 36123, 0x00001F01 }, /* GL_RENDERER */ + { 36135, 0x00000C40 }, /* GL_RENDER_MODE */ + { 36150, 0x00002901 }, /* GL_REPEAT */ + { 36160, 0x00001E01 }, /* GL_REPLACE */ + { 36171, 0x00008062 }, /* GL_REPLACE_EXT */ + { 36186, 0x00008153 }, /* GL_REPLICATE_BORDER_HP */ + { 36209, 0x0000803A }, /* GL_RESCALE_NORMAL */ + { 36227, 0x0000803A }, /* GL_RESCALE_NORMAL_EXT */ + { 36249, 0x00008A1B }, /* GL_RETAINED_APPLE */ + { 36267, 0x00000102 }, /* GL_RETURN */ + { 36277, 0x00008F99 }, /* GL_RG16_SNORM */ + { 36291, 0x00008F95 }, /* GL_RG8_SNORM */ + { 36304, 0x00001907 }, /* GL_RGB */ + { 36311, 0x00008052 }, /* GL_RGB10 */ + { 36320, 0x00008059 }, /* GL_RGB10_A2 */ + { 36332, 0x00008059 }, /* GL_RGB10_A2_EXT */ + { 36348, 0x00008052 }, /* GL_RGB10_EXT */ + { 36361, 0x00008053 }, /* GL_RGB12 */ + { 36370, 0x00008053 }, /* GL_RGB12_EXT */ + { 36383, 0x00008054 }, /* GL_RGB16 */ + { 36392, 0x0000881B }, /* GL_RGB16F */ + { 36402, 0x00008D89 }, /* GL_RGB16I */ + { 36412, 0x00008D89 }, /* GL_RGB16I_EXT */ + { 36426, 0x00008D77 }, /* GL_RGB16UI */ + { 36437, 0x00008D77 }, /* GL_RGB16UI_EXT */ + { 36452, 0x00008054 }, /* GL_RGB16_EXT */ + { 36465, 0x00008F9A }, /* GL_RGB16_SNORM */ + { 36480, 0x0000804E }, /* GL_RGB2_EXT */ + { 36492, 0x00008815 }, /* GL_RGB32F */ + { 36502, 0x00008D83 }, /* GL_RGB32I */ + { 36512, 0x00008D83 }, /* GL_RGB32I_EXT */ + { 36526, 0x00008D71 }, /* GL_RGB32UI */ + { 36537, 0x00008D71 }, /* GL_RGB32UI_EXT */ + { 36552, 0x0000804F }, /* GL_RGB4 */ + { 36560, 0x0000804F }, /* GL_RGB4_EXT */ + { 36572, 0x000083A1 }, /* GL_RGB4_S3TC */ + { 36585, 0x00008050 }, /* GL_RGB5 */ + { 36593, 0x00008D62 }, /* GL_RGB565 */ + { 36603, 0x00008D62 }, /* GL_RGB565_OES */ + { 36617, 0x00008057 }, /* GL_RGB5_A1 */ + { 36628, 0x00008057 }, /* GL_RGB5_A1_EXT */ + { 36643, 0x00008057 }, /* GL_RGB5_A1_OES */ + { 36658, 0x00008050 }, /* GL_RGB5_EXT */ + { 36670, 0x00008051 }, /* GL_RGB8 */ + { 36678, 0x00008D8F }, /* GL_RGB8I */ + { 36687, 0x00008D8F }, /* GL_RGB8I_EXT */ + { 36700, 0x00008D7D }, /* GL_RGB8UI */ + { 36710, 0x00008D7D }, /* GL_RGB8UI_EXT */ + { 36724, 0x00008051 }, /* GL_RGB8_EXT */ + { 36736, 0x00008051 }, /* GL_RGB8_OES */ + { 36748, 0x00008F96 }, /* GL_RGB8_SNORM */ + { 36762, 0x00008C3D }, /* GL_RGB9_E5 */ + { 36773, 0x00001908 }, /* GL_RGBA */ + { 36781, 0x0000805A }, /* GL_RGBA12 */ + { 36791, 0x0000805A }, /* GL_RGBA12_EXT */ + { 36805, 0x0000805B }, /* GL_RGBA16 */ + { 36815, 0x0000881A }, /* GL_RGBA16F */ + { 36826, 0x00008D88 }, /* GL_RGBA16I */ + { 36837, 0x00008D88 }, /* GL_RGBA16I_EXT */ + { 36852, 0x00008D76 }, /* GL_RGBA16UI */ + { 36864, 0x00008D76 }, /* GL_RGBA16UI_EXT */ + { 36880, 0x0000805B }, /* GL_RGBA16_EXT */ + { 36894, 0x00008F9B }, /* GL_RGBA16_SNORM */ + { 36910, 0x00008055 }, /* GL_RGBA2 */ + { 36919, 0x00008055 }, /* GL_RGBA2_EXT */ + { 36932, 0x00008814 }, /* GL_RGBA32F */ + { 36943, 0x00008D82 }, /* GL_RGBA32I */ + { 36954, 0x00008D82 }, /* GL_RGBA32I_EXT */ + { 36969, 0x00008D70 }, /* GL_RGBA32UI */ + { 36981, 0x00008D70 }, /* GL_RGBA32UI_EXT */ + { 36997, 0x00008056 }, /* GL_RGBA4 */ + { 37006, 0x000083A5 }, /* GL_RGBA4_DXT5_S3TC */ + { 37025, 0x00008056 }, /* GL_RGBA4_EXT */ + { 37038, 0x00008056 }, /* GL_RGBA4_OES */ + { 37051, 0x000083A3 }, /* GL_RGBA4_S3TC */ + { 37065, 0x00008058 }, /* GL_RGBA8 */ + { 37074, 0x00008D8E }, /* GL_RGBA8I */ + { 37084, 0x00008D8E }, /* GL_RGBA8I_EXT */ + { 37098, 0x00008D7C }, /* GL_RGBA8UI */ + { 37109, 0x00008D7C }, /* GL_RGBA8UI_EXT */ + { 37124, 0x00008058 }, /* GL_RGBA8_EXT */ + { 37137, 0x00008058 }, /* GL_RGBA8_OES */ + { 37150, 0x00008F97 }, /* GL_RGBA8_SNORM */ + { 37165, 0x000083A4 }, /* GL_RGBA_DXT5_S3TC */ + { 37183, 0x00008820 }, /* GL_RGBA_FLOAT_MODE_ARB */ + { 37206, 0x00008D99 }, /* GL_RGBA_INTEGER */ + { 37222, 0x00008D99 }, /* GL_RGBA_INTEGER_EXT */ + { 37242, 0x00008D9E }, /* GL_RGBA_INTEGER_MODE_EXT */ + { 37267, 0x00000C31 }, /* GL_RGBA_MODE */ + { 37280, 0x000083A2 }, /* GL_RGBA_S3TC */ + { 37293, 0x00008F93 }, /* GL_RGBA_SNORM */ + { 37307, 0x00008D98 }, /* GL_RGB_INTEGER */ + { 37322, 0x00008D98 }, /* GL_RGB_INTEGER_EXT */ + { 37341, 0x000083A0 }, /* GL_RGB_S3TC */ + { 37353, 0x00008573 }, /* GL_RGB_SCALE */ + { 37366, 0x00008573 }, /* GL_RGB_SCALE_ARB */ + { 37383, 0x00008573 }, /* GL_RGB_SCALE_EXT */ + { 37400, 0x00008F92 }, /* GL_RGB_SNORM */ + { 37413, 0x00008F91 }, /* GL_RG_SNORM */ + { 37425, 0x00000407 }, /* GL_RIGHT */ + { 37434, 0x00002000 }, /* GL_S */ + { 37439, 0x00008B5D }, /* GL_SAMPLER_1D */ + { 37453, 0x00008DC0 }, /* GL_SAMPLER_1D_ARRAY */ + { 37473, 0x00008DC0 }, /* GL_SAMPLER_1D_ARRAY_EXT */ + { 37497, 0x00008DC3 }, /* GL_SAMPLER_1D_ARRAY_SHADOW */ + { 37524, 0x00008DC3 }, /* GL_SAMPLER_1D_ARRAY_SHADOW_EXT */ + { 37555, 0x00008B61 }, /* GL_SAMPLER_1D_SHADOW */ + { 37576, 0x00008B5E }, /* GL_SAMPLER_2D */ + { 37590, 0x00008DC1 }, /* GL_SAMPLER_2D_ARRAY */ + { 37610, 0x00008DC1 }, /* GL_SAMPLER_2D_ARRAY_EXT */ + { 37634, 0x00008DC4 }, /* GL_SAMPLER_2D_ARRAY_SHADOW */ + { 37661, 0x00008DC4 }, /* GL_SAMPLER_2D_ARRAY_SHADOW_EXT */ + { 37692, 0x00008B63 }, /* GL_SAMPLER_2D_RECT */ + { 37711, 0x00008B64 }, /* GL_SAMPLER_2D_RECT_SHADOW */ + { 37737, 0x00008B62 }, /* GL_SAMPLER_2D_SHADOW */ + { 37758, 0x00008B5F }, /* GL_SAMPLER_3D */ + { 37772, 0x00008B5F }, /* GL_SAMPLER_3D_OES */ + { 37790, 0x00008DC2 }, /* GL_SAMPLER_BUFFER */ + { 37808, 0x00008DC2 }, /* GL_SAMPLER_BUFFER_EXT */ + { 37830, 0x00008B60 }, /* GL_SAMPLER_CUBE */ + { 37846, 0x00008DC5 }, /* GL_SAMPLER_CUBE_SHADOW */ + { 37869, 0x00008DC5 }, /* GL_SAMPLER_CUBE_SHADOW_EXT */ + { 37896, 0x000080A9 }, /* GL_SAMPLES */ + { 37907, 0x000086B4 }, /* GL_SAMPLES_3DFX */ + { 37923, 0x000080A9 }, /* GL_SAMPLES_ARB */ + { 37938, 0x00008914 }, /* GL_SAMPLES_PASSED */ + { 37956, 0x00008914 }, /* GL_SAMPLES_PASSED_ARB */ + { 37978, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ + { 38006, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE_ARB */ + { 38038, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE */ + { 38061, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE_ARB */ + { 38088, 0x000080A8 }, /* GL_SAMPLE_BUFFERS */ + { 38106, 0x000086B3 }, /* GL_SAMPLE_BUFFERS_3DFX */ + { 38129, 0x000080A8 }, /* GL_SAMPLE_BUFFERS_ARB */ + { 38151, 0x000080A0 }, /* GL_SAMPLE_COVERAGE */ + { 38170, 0x000080A0 }, /* GL_SAMPLE_COVERAGE_ARB */ + { 38193, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT */ + { 38219, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT_ARB */ + { 38249, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE */ + { 38274, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE_ARB */ + { 38303, 0x00080000 }, /* GL_SCISSOR_BIT */ + { 38318, 0x00000C10 }, /* GL_SCISSOR_BOX */ + { 38333, 0x00000C11 }, /* GL_SCISSOR_TEST */ + { 38349, 0x0000845E }, /* GL_SECONDARY_COLOR_ARRAY */ + { 38374, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ + { 38414, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB */ + { 38458, 0x0000845D }, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ + { 38491, 0x0000845A }, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ + { 38521, 0x0000845C }, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ + { 38553, 0x0000845B }, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ + { 38583, 0x00001C02 }, /* GL_SELECT */ + { 38593, 0x00000DF3 }, /* GL_SELECTION_BUFFER_POINTER */ + { 38621, 0x00000DF4 }, /* GL_SELECTION_BUFFER_SIZE */ + { 38646, 0x00008012 }, /* GL_SEPARABLE_2D */ + { 38662, 0x00008C8D }, /* GL_SEPARATE_ATTRIBS */ + { 38682, 0x00008C8D }, /* GL_SEPARATE_ATTRIBS_EXT */ + { 38706, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR */ + { 38733, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR_EXT */ + { 38764, 0x0000150F }, /* GL_SET */ + { 38771, 0x00008DF8 }, /* GL_SHADER_BINARY_FORMATS */ + { 38796, 0x00008DFA }, /* GL_SHADER_COMPILER */ + { 38815, 0x00008B48 }, /* GL_SHADER_OBJECT_ARB */ + { 38836, 0x00008B88 }, /* GL_SHADER_SOURCE_LENGTH */ + { 38860, 0x00008B4F }, /* GL_SHADER_TYPE */ + { 38875, 0x00000B54 }, /* GL_SHADE_MODEL */ + { 38890, 0x00008B8C }, /* GL_SHADING_LANGUAGE_VERSION */ + { 38918, 0x000080BF }, /* GL_SHADOW_AMBIENT_SGIX */ + { 38941, 0x000081FB }, /* GL_SHARED_TEXTURE_PALETTE_EXT */ + { 38971, 0x00001601 }, /* GL_SHININESS */ + { 38984, 0x00001402 }, /* GL_SHORT */ + { 38993, 0x00009119 }, /* GL_SIGNALED */ + { 39005, 0x00008F9C }, /* GL_SIGNED_NORMALIZED */ + { 39026, 0x000081F9 }, /* GL_SINGLE_COLOR */ + { 39042, 0x000081F9 }, /* GL_SINGLE_COLOR_EXT */ + { 39062, 0x000085CC }, /* GL_SLICE_ACCUM_SUN */ + { 39081, 0x00008C46 }, /* GL_SLUMINANCE */ + { 39095, 0x00008C47 }, /* GL_SLUMINANCE8 */ + { 39110, 0x00008C45 }, /* GL_SLUMINANCE8_ALPHA8 */ + { 39132, 0x00008C44 }, /* GL_SLUMINANCE_ALPHA */ + { 39152, 0x00001D01 }, /* GL_SMOOTH */ + { 39162, 0x00000B23 }, /* GL_SMOOTH_LINE_WIDTH_GRANULARITY */ + { 39195, 0x00000B22 }, /* GL_SMOOTH_LINE_WIDTH_RANGE */ + { 39222, 0x00000B13 }, /* GL_SMOOTH_POINT_SIZE_GRANULARITY */ + { 39255, 0x00000B12 }, /* GL_SMOOTH_POINT_SIZE_RANGE */ + { 39282, 0x00008588 }, /* GL_SOURCE0_ALPHA */ + { 39299, 0x00008588 }, /* GL_SOURCE0_ALPHA_ARB */ + { 39320, 0x00008588 }, /* GL_SOURCE0_ALPHA_EXT */ + { 39341, 0x00008580 }, /* GL_SOURCE0_RGB */ + { 39356, 0x00008580 }, /* GL_SOURCE0_RGB_ARB */ + { 39375, 0x00008580 }, /* GL_SOURCE0_RGB_EXT */ + { 39394, 0x00008589 }, /* GL_SOURCE1_ALPHA */ + { 39411, 0x00008589 }, /* GL_SOURCE1_ALPHA_ARB */ + { 39432, 0x00008589 }, /* GL_SOURCE1_ALPHA_EXT */ + { 39453, 0x00008581 }, /* GL_SOURCE1_RGB */ + { 39468, 0x00008581 }, /* GL_SOURCE1_RGB_ARB */ + { 39487, 0x00008581 }, /* GL_SOURCE1_RGB_EXT */ + { 39506, 0x0000858A }, /* GL_SOURCE2_ALPHA */ + { 39523, 0x0000858A }, /* GL_SOURCE2_ALPHA_ARB */ + { 39544, 0x0000858A }, /* GL_SOURCE2_ALPHA_EXT */ + { 39565, 0x00008582 }, /* GL_SOURCE2_RGB */ + { 39580, 0x00008582 }, /* GL_SOURCE2_RGB_ARB */ + { 39599, 0x00008582 }, /* GL_SOURCE2_RGB_EXT */ + { 39618, 0x0000858B }, /* GL_SOURCE3_ALPHA_NV */ + { 39638, 0x00008583 }, /* GL_SOURCE3_RGB_NV */ + { 39656, 0x00001202 }, /* GL_SPECULAR */ + { 39668, 0x00002402 }, /* GL_SPHERE_MAP */ + { 39682, 0x00001206 }, /* GL_SPOT_CUTOFF */ + { 39697, 0x00001204 }, /* GL_SPOT_DIRECTION */ + { 39715, 0x00001205 }, /* GL_SPOT_EXPONENT */ + { 39732, 0x00008588 }, /* GL_SRC0_ALPHA */ + { 39746, 0x00008580 }, /* GL_SRC0_RGB */ + { 39758, 0x00008589 }, /* GL_SRC1_ALPHA */ + { 39772, 0x00008581 }, /* GL_SRC1_RGB */ + { 39784, 0x0000858A }, /* GL_SRC2_ALPHA */ + { 39798, 0x00008582 }, /* GL_SRC2_RGB */ + { 39810, 0x00000302 }, /* GL_SRC_ALPHA */ + { 39823, 0x00000308 }, /* GL_SRC_ALPHA_SATURATE */ + { 39845, 0x00000300 }, /* GL_SRC_COLOR */ + { 39858, 0x00008C40 }, /* GL_SRGB */ + { 39866, 0x00008C41 }, /* GL_SRGB8 */ + { 39875, 0x00008C43 }, /* GL_SRGB8_ALPHA8 */ + { 39891, 0x00008C42 }, /* GL_SRGB_ALPHA */ + { 39905, 0x00000503 }, /* GL_STACK_OVERFLOW */ + { 39923, 0x00000504 }, /* GL_STACK_UNDERFLOW */ + { 39942, 0x000088E6 }, /* GL_STATIC_COPY */ + { 39957, 0x000088E6 }, /* GL_STATIC_COPY_ARB */ + { 39976, 0x000088E4 }, /* GL_STATIC_DRAW */ + { 39991, 0x000088E4 }, /* GL_STATIC_DRAW_ARB */ + { 40010, 0x000088E5 }, /* GL_STATIC_READ */ + { 40025, 0x000088E5 }, /* GL_STATIC_READ_ARB */ + { 40044, 0x00001802 }, /* GL_STENCIL */ + { 40055, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT */ + { 40077, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_EXT */ + { 40103, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_OES */ + { 40129, 0x00008801 }, /* GL_STENCIL_BACK_FAIL */ + { 40150, 0x00008801 }, /* GL_STENCIL_BACK_FAIL_ATI */ + { 40175, 0x00008800 }, /* GL_STENCIL_BACK_FUNC */ + { 40196, 0x00008800 }, /* GL_STENCIL_BACK_FUNC_ATI */ + { 40221, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ + { 40253, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI */ + { 40289, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ + { 40321, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI */ + { 40357, 0x00008CA3 }, /* GL_STENCIL_BACK_REF */ + { 40377, 0x00008CA4 }, /* GL_STENCIL_BACK_VALUE_MASK */ + { 40404, 0x00008CA5 }, /* GL_STENCIL_BACK_WRITEMASK */ + { 40430, 0x00000D57 }, /* GL_STENCIL_BITS */ + { 40446, 0x00008224 }, /* GL_STENCIL_BUFFER */ + { 40464, 0x00000400 }, /* GL_STENCIL_BUFFER_BIT */ + { 40486, 0x00000B91 }, /* GL_STENCIL_CLEAR_VALUE */ + { 40509, 0x00000B94 }, /* GL_STENCIL_FAIL */ + { 40525, 0x00000B92 }, /* GL_STENCIL_FUNC */ + { 40541, 0x00001901 }, /* GL_STENCIL_INDEX */ + { 40558, 0x00008D46 }, /* GL_STENCIL_INDEX1 */ + { 40576, 0x00008D49 }, /* GL_STENCIL_INDEX16 */ + { 40595, 0x00008D49 }, /* GL_STENCIL_INDEX16_EXT */ + { 40618, 0x00008D46 }, /* GL_STENCIL_INDEX1_EXT */ + { 40640, 0x00008D46 }, /* GL_STENCIL_INDEX1_OES */ + { 40662, 0x00008D47 }, /* GL_STENCIL_INDEX4 */ + { 40680, 0x00008D47 }, /* GL_STENCIL_INDEX4_EXT */ + { 40702, 0x00008D47 }, /* GL_STENCIL_INDEX4_OES */ + { 40724, 0x00008D48 }, /* GL_STENCIL_INDEX8 */ + { 40742, 0x00008D48 }, /* GL_STENCIL_INDEX8_EXT */ + { 40764, 0x00008D48 }, /* GL_STENCIL_INDEX8_OES */ + { 40786, 0x00008D45 }, /* GL_STENCIL_INDEX_EXT */ + { 40807, 0x00000B95 }, /* GL_STENCIL_PASS_DEPTH_FAIL */ + { 40834, 0x00000B96 }, /* GL_STENCIL_PASS_DEPTH_PASS */ + { 40861, 0x00000B97 }, /* GL_STENCIL_REF */ + { 40876, 0x00000B90 }, /* GL_STENCIL_TEST */ + { 40892, 0x00008910 }, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ + { 40921, 0x00000B93 }, /* GL_STENCIL_VALUE_MASK */ + { 40943, 0x00000B98 }, /* GL_STENCIL_WRITEMASK */ + { 40964, 0x00000C33 }, /* GL_STEREO */ + { 40974, 0x000085BE }, /* GL_STORAGE_CACHED_APPLE */ + { 40998, 0x000085BD }, /* GL_STORAGE_PRIVATE_APPLE */ + { 41023, 0x000085BF }, /* GL_STORAGE_SHARED_APPLE */ + { 41047, 0x000088E2 }, /* GL_STREAM_COPY */ + { 41062, 0x000088E2 }, /* GL_STREAM_COPY_ARB */ + { 41081, 0x000088E0 }, /* GL_STREAM_DRAW */ + { 41096, 0x000088E0 }, /* GL_STREAM_DRAW_ARB */ + { 41115, 0x000088E1 }, /* GL_STREAM_READ */ + { 41130, 0x000088E1 }, /* GL_STREAM_READ_ARB */ + { 41149, 0x00000D50 }, /* GL_SUBPIXEL_BITS */ + { 41166, 0x000084E7 }, /* GL_SUBTRACT */ + { 41178, 0x000084E7 }, /* GL_SUBTRACT_ARB */ + { 41194, 0x00009113 }, /* GL_SYNC_CONDITION */ + { 41212, 0x00009116 }, /* GL_SYNC_FENCE */ + { 41226, 0x00009115 }, /* GL_SYNC_FLAGS */ + { 41240, 0x00000001 }, /* GL_SYNC_FLUSH_COMMANDS_BIT */ + { 41267, 0x00009117 }, /* GL_SYNC_GPU_COMMANDS_COMPLETE */ + { 41297, 0x00009114 }, /* GL_SYNC_STATUS */ + { 41312, 0x00002001 }, /* GL_T */ + { 41317, 0x00002A2A }, /* GL_T2F_C3F_V3F */ + { 41332, 0x00002A2C }, /* GL_T2F_C4F_N3F_V3F */ + { 41351, 0x00002A29 }, /* GL_T2F_C4UB_V3F */ + { 41367, 0x00002A2B }, /* GL_T2F_N3F_V3F */ + { 41382, 0x00002A27 }, /* GL_T2F_V3F */ + { 41393, 0x00002A2D }, /* GL_T4F_C4F_N3F_V4F */ + { 41412, 0x00002A28 }, /* GL_T4F_V4F */ + { 41423, 0x00008031 }, /* GL_TABLE_TOO_LARGE_EXT */ + { 41446, 0x00001702 }, /* GL_TEXTURE */ + { 41457, 0x000084C0 }, /* GL_TEXTURE0 */ + { 41469, 0x000084C0 }, /* GL_TEXTURE0_ARB */ + { 41485, 0x000084C1 }, /* GL_TEXTURE1 */ + { 41497, 0x000084CA }, /* GL_TEXTURE10 */ + { 41510, 0x000084CA }, /* GL_TEXTURE10_ARB */ + { 41527, 0x000084CB }, /* GL_TEXTURE11 */ + { 41540, 0x000084CB }, /* GL_TEXTURE11_ARB */ + { 41557, 0x000084CC }, /* GL_TEXTURE12 */ + { 41570, 0x000084CC }, /* GL_TEXTURE12_ARB */ + { 41587, 0x000084CD }, /* GL_TEXTURE13 */ + { 41600, 0x000084CD }, /* GL_TEXTURE13_ARB */ + { 41617, 0x000084CE }, /* GL_TEXTURE14 */ + { 41630, 0x000084CE }, /* GL_TEXTURE14_ARB */ + { 41647, 0x000084CF }, /* GL_TEXTURE15 */ + { 41660, 0x000084CF }, /* GL_TEXTURE15_ARB */ + { 41677, 0x000084D0 }, /* GL_TEXTURE16 */ + { 41690, 0x000084D0 }, /* GL_TEXTURE16_ARB */ + { 41707, 0x000084D1 }, /* GL_TEXTURE17 */ + { 41720, 0x000084D1 }, /* GL_TEXTURE17_ARB */ + { 41737, 0x000084D2 }, /* GL_TEXTURE18 */ + { 41750, 0x000084D2 }, /* GL_TEXTURE18_ARB */ + { 41767, 0x000084D3 }, /* GL_TEXTURE19 */ + { 41780, 0x000084D3 }, /* GL_TEXTURE19_ARB */ + { 41797, 0x000084C1 }, /* GL_TEXTURE1_ARB */ + { 41813, 0x000084C2 }, /* GL_TEXTURE2 */ + { 41825, 0x000084D4 }, /* GL_TEXTURE20 */ + { 41838, 0x000084D4 }, /* GL_TEXTURE20_ARB */ + { 41855, 0x000084D5 }, /* GL_TEXTURE21 */ + { 41868, 0x000084D5 }, /* GL_TEXTURE21_ARB */ + { 41885, 0x000084D6 }, /* GL_TEXTURE22 */ + { 41898, 0x000084D6 }, /* GL_TEXTURE22_ARB */ + { 41915, 0x000084D7 }, /* GL_TEXTURE23 */ + { 41928, 0x000084D7 }, /* GL_TEXTURE23_ARB */ + { 41945, 0x000084D8 }, /* GL_TEXTURE24 */ + { 41958, 0x000084D8 }, /* GL_TEXTURE24_ARB */ + { 41975, 0x000084D9 }, /* GL_TEXTURE25 */ + { 41988, 0x000084D9 }, /* GL_TEXTURE25_ARB */ + { 42005, 0x000084DA }, /* GL_TEXTURE26 */ + { 42018, 0x000084DA }, /* GL_TEXTURE26_ARB */ + { 42035, 0x000084DB }, /* GL_TEXTURE27 */ + { 42048, 0x000084DB }, /* GL_TEXTURE27_ARB */ + { 42065, 0x000084DC }, /* GL_TEXTURE28 */ + { 42078, 0x000084DC }, /* GL_TEXTURE28_ARB */ + { 42095, 0x000084DD }, /* GL_TEXTURE29 */ + { 42108, 0x000084DD }, /* GL_TEXTURE29_ARB */ + { 42125, 0x000084C2 }, /* GL_TEXTURE2_ARB */ + { 42141, 0x000084C3 }, /* GL_TEXTURE3 */ + { 42153, 0x000084DE }, /* GL_TEXTURE30 */ + { 42166, 0x000084DE }, /* GL_TEXTURE30_ARB */ + { 42183, 0x000084DF }, /* GL_TEXTURE31 */ + { 42196, 0x000084DF }, /* GL_TEXTURE31_ARB */ + { 42213, 0x000084C3 }, /* GL_TEXTURE3_ARB */ + { 42229, 0x000084C4 }, /* GL_TEXTURE4 */ + { 42241, 0x000084C4 }, /* GL_TEXTURE4_ARB */ + { 42257, 0x000084C5 }, /* GL_TEXTURE5 */ + { 42269, 0x000084C5 }, /* GL_TEXTURE5_ARB */ + { 42285, 0x000084C6 }, /* GL_TEXTURE6 */ + { 42297, 0x000084C6 }, /* GL_TEXTURE6_ARB */ + { 42313, 0x000084C7 }, /* GL_TEXTURE7 */ + { 42325, 0x000084C7 }, /* GL_TEXTURE7_ARB */ + { 42341, 0x000084C8 }, /* GL_TEXTURE8 */ + { 42353, 0x000084C8 }, /* GL_TEXTURE8_ARB */ + { 42369, 0x000084C9 }, /* GL_TEXTURE9 */ + { 42381, 0x000084C9 }, /* GL_TEXTURE9_ARB */ + { 42397, 0x00000DE0 }, /* GL_TEXTURE_1D */ + { 42411, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY */ + { 42431, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY_EXT */ + { 42455, 0x00000DE1 }, /* GL_TEXTURE_2D */ + { 42469, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY */ + { 42489, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY_EXT */ + { 42513, 0x0000806F }, /* GL_TEXTURE_3D */ + { 42527, 0x0000806F }, /* GL_TEXTURE_3D_OES */ + { 42545, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE */ + { 42567, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE_EXT */ + { 42593, 0x0000813C }, /* GL_TEXTURE_BASE_LEVEL */ + { 42615, 0x00008068 }, /* GL_TEXTURE_BINDING_1D */ + { 42637, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY */ + { 42665, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY_EXT */ + { 42697, 0x00008069 }, /* GL_TEXTURE_BINDING_2D */ + { 42719, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY */ + { 42747, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY_EXT */ + { 42779, 0x0000806A }, /* GL_TEXTURE_BINDING_3D */ + { 42801, 0x0000806A }, /* GL_TEXTURE_BINDING_3D_OES */ + { 42827, 0x00008C2C }, /* GL_TEXTURE_BINDING_BUFFER */ + { 42853, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP */ + { 42881, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_ARB */ + { 42913, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_OES */ + { 42945, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE */ + { 42974, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_ARB */ + { 43007, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_NV */ + { 43039, 0x00040000 }, /* GL_TEXTURE_BIT */ + { 43054, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE */ + { 43075, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE_EXT */ + { 43100, 0x00001005 }, /* GL_TEXTURE_BORDER */ + { 43118, 0x00001004 }, /* GL_TEXTURE_BORDER_COLOR */ + { 43142, 0x00008C2A }, /* GL_TEXTURE_BUFFER */ + { 43160, 0x00008C2D }, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING */ + { 43197, 0x00008C2E }, /* GL_TEXTURE_BUFFER_FORMAT */ + { 43222, 0x00008171 }, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ + { 43253, 0x00008176 }, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ + { 43283, 0x00008172 }, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ + { 43313, 0x00008175 }, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ + { 43348, 0x00008173 }, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ + { 43379, 0x00008174 }, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ + { 43417, 0x000080BC }, /* GL_TEXTURE_COLOR_TABLE_SGI */ + { 43444, 0x000081EF }, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ + { 43476, 0x000080BF }, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */ + { 43510, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC */ + { 43534, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC_ARB */ + { 43562, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE */ + { 43586, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE_ARB */ + { 43614, 0x0000819B }, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ + { 43647, 0x0000819A }, /* GL_TEXTURE_COMPARE_SGIX */ + { 43671, 0x00001003 }, /* GL_TEXTURE_COMPONENTS */ + { 43693, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED */ + { 43715, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED_ARB */ + { 43741, 0x000086A3 }, /* GL_TEXTURE_COMPRESSED_FORMATS_ARB */ + { 43775, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ + { 43808, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB */ + { 43845, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT */ + { 43873, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT_ARB */ + { 43905, 0x00008078 }, /* GL_TEXTURE_COORD_ARRAY */ + { 43928, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ + { 43966, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB */ + { 44008, 0x00008092 }, /* GL_TEXTURE_COORD_ARRAY_POINTER */ + { 44039, 0x00008088 }, /* GL_TEXTURE_COORD_ARRAY_SIZE */ + { 44067, 0x0000808A }, /* GL_TEXTURE_COORD_ARRAY_STRIDE */ + { 44097, 0x00008089 }, /* GL_TEXTURE_COORD_ARRAY_TYPE */ + { 44125, 0x00008B9D }, /* GL_TEXTURE_CROP_RECT_OES */ + { 44150, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP */ + { 44170, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_ARB */ + { 44194, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ + { 44225, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB */ + { 44260, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES */ + { 44295, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ + { 44326, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB */ + { 44361, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES */ + { 44396, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ + { 44427, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB */ + { 44462, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES */ + { 44497, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_OES */ + { 44521, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ + { 44552, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB */ + { 44587, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES */ + { 44622, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ + { 44653, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB */ + { 44688, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES */ + { 44723, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ + { 44754, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB */ + { 44789, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES */ + { 44824, 0x000088F4 }, /* GL_TEXTURE_CUBE_MAP_SEAMLESS */ + { 44853, 0x00008071 }, /* GL_TEXTURE_DEPTH */ + { 44870, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE */ + { 44892, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE_ARB */ + { 44918, 0x00002300 }, /* GL_TEXTURE_ENV */ + { 44933, 0x00002201 }, /* GL_TEXTURE_ENV_COLOR */ + { 44954, 0x00002200 }, /* GL_TEXTURE_ENV_MODE */ + { 44974, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL */ + { 45000, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL_EXT */ + { 45030, 0x00002500 }, /* GL_TEXTURE_GEN_MODE */ + { 45050, 0x00002500 }, /* GL_TEXTURE_GEN_MODE_OES */ + { 45074, 0x00000C63 }, /* GL_TEXTURE_GEN_Q */ + { 45091, 0x00000C62 }, /* GL_TEXTURE_GEN_R */ + { 45108, 0x00000C60 }, /* GL_TEXTURE_GEN_S */ + { 45125, 0x00008D60 }, /* GL_TEXTURE_GEN_STR_OES */ + { 45148, 0x00000C61 }, /* GL_TEXTURE_GEN_T */ + { 45165, 0x0000819D }, /* GL_TEXTURE_GEQUAL_R_SGIX */ + { 45190, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE */ + { 45212, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE_EXT */ + { 45238, 0x00001001 }, /* GL_TEXTURE_HEIGHT */ + { 45256, 0x000080ED }, /* GL_TEXTURE_INDEX_SIZE_EXT */ + { 45282, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE */ + { 45308, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE_EXT */ + { 45338, 0x00001003 }, /* GL_TEXTURE_INTERNAL_FORMAT */ + { 45365, 0x0000819C }, /* GL_TEXTURE_LEQUAL_R_SGIX */ + { 45390, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS */ + { 45410, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS_EXT */ + { 45434, 0x00008190 }, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ + { 45461, 0x0000818E }, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ + { 45488, 0x0000818F }, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ + { 45515, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE */ + { 45541, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE_EXT */ + { 45571, 0x00002800 }, /* GL_TEXTURE_MAG_FILTER */ + { 45593, 0x00000BA8 }, /* GL_TEXTURE_MATRIX */ + { 45611, 0x0000898F }, /* GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES */ + { 45651, 0x000084FE }, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ + { 45681, 0x0000836B }, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ + { 45709, 0x00008369 }, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ + { 45737, 0x0000836A }, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ + { 45765, 0x0000813D }, /* GL_TEXTURE_MAX_LEVEL */ + { 45786, 0x0000813B }, /* GL_TEXTURE_MAX_LOD */ + { 45805, 0x00002801 }, /* GL_TEXTURE_MIN_FILTER */ + { 45827, 0x0000813A }, /* GL_TEXTURE_MIN_LOD */ + { 45846, 0x00008066 }, /* GL_TEXTURE_PRIORITY */ + { 45866, 0x000085B7 }, /* GL_TEXTURE_RANGE_LENGTH_APPLE */ + { 45896, 0x000085B8 }, /* GL_TEXTURE_RANGE_POINTER_APPLE */ + { 45927, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE */ + { 45948, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_ARB */ + { 45973, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_NV */ + { 45997, 0x0000805C }, /* GL_TEXTURE_RED_SIZE */ + { 46017, 0x0000805C }, /* GL_TEXTURE_RED_SIZE_EXT */ + { 46041, 0x00008067 }, /* GL_TEXTURE_RESIDENT */ + { 46061, 0x00008C3F }, /* GL_TEXTURE_SHARED_SIZE */ + { 46084, 0x00000BA5 }, /* GL_TEXTURE_STACK_DEPTH */ + { 46107, 0x000088F1 }, /* GL_TEXTURE_STENCIL_SIZE */ + { 46131, 0x000088F1 }, /* GL_TEXTURE_STENCIL_SIZE_EXT */ + { 46159, 0x000085BC }, /* GL_TEXTURE_STORAGE_HINT_APPLE */ + { 46189, 0x00008065 }, /* GL_TEXTURE_TOO_LARGE_EXT */ + { 46214, 0x0000888F }, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */ + { 46248, 0x00001000 }, /* GL_TEXTURE_WIDTH */ + { 46265, 0x00008072 }, /* GL_TEXTURE_WRAP_R */ + { 46283, 0x00008072 }, /* GL_TEXTURE_WRAP_R_OES */ + { 46305, 0x00002802 }, /* GL_TEXTURE_WRAP_S */ + { 46323, 0x00002803 }, /* GL_TEXTURE_WRAP_T */ + { 46341, 0x0000911B }, /* GL_TIMEOUT_EXPIRED */ + { 46360, 0x000088BF }, /* GL_TIME_ELAPSED_EXT */ + { 46380, 0x00008648 }, /* GL_TRACK_MATRIX_NV */ + { 46399, 0x00008649 }, /* GL_TRACK_MATRIX_TRANSFORM_NV */ + { 46428, 0x00001000 }, /* GL_TRANSFORM_BIT */ + { 46445, 0x00008E22 }, /* GL_TRANSFORM_FEEDBACK */ + { 46467, 0x00008E25 }, /* GL_TRANSFORM_FEEDBACK_BINDING */ + { 46497, 0x00008C8E }, /* GL_TRANSFORM_FEEDBACK_BUFFER */ + { 46526, 0x00008E24 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE */ + { 46562, 0x00008C8F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING */ + { 46599, 0x00008C8F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT */ + { 46640, 0x00008C8E }, /* GL_TRANSFORM_FEEDBACK_BUFFER_EXT */ + { 46673, 0x00008C7F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE */ + { 46707, 0x00008C7F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE_EXT */ + { 46745, 0x00008E23 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED */ + { 46781, 0x00008C85 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE */ + { 46815, 0x00008C85 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT */ + { 46853, 0x00008C84 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_START */ + { 46888, 0x00008C84 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT */ + { 46927, 0x00008C88 }, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN */ + { 46968, 0x00008C88 }, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT */ + { 47013, 0x00008C83 }, /* GL_TRANSFORM_FEEDBACK_VARYINGS */ + { 47044, 0x00008C83 }, /* GL_TRANSFORM_FEEDBACK_VARYINGS_EXT */ + { 47079, 0x00008C76 }, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH */ + { 47120, 0x00008C76 }, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT */ + { 47165, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX */ + { 47191, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX_ARB */ + { 47221, 0x000088B7 }, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ + { 47253, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ + { 47283, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX_ARB */ + { 47317, 0x0000862C }, /* GL_TRANSPOSE_NV */ + { 47333, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX */ + { 47364, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX_ARB */ + { 47399, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX */ + { 47427, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX_ARB */ + { 47459, 0x00000004 }, /* GL_TRIANGLES */ + { 47472, 0x0000000C }, /* GL_TRIANGLES_ADJACENCY */ + { 47495, 0x0000000C }, /* GL_TRIANGLES_ADJACENCY_ARB */ + { 47522, 0x00000006 }, /* GL_TRIANGLE_FAN */ + { 47538, 0x00008615 }, /* GL_TRIANGLE_MESH_SUN */ + { 47559, 0x00000005 }, /* GL_TRIANGLE_STRIP */ + { 47577, 0x0000000D }, /* GL_TRIANGLE_STRIP_ADJACENCY */ + { 47605, 0x0000000D }, /* GL_TRIANGLE_STRIP_ADJACENCY_ARB */ + { 47637, 0x00000001 }, /* GL_TRUE */ + { 47645, 0x00008A1C }, /* GL_UNDEFINED_APPLE */ + { 47664, 0x00000CF5 }, /* GL_UNPACK_ALIGNMENT */ + { 47684, 0x0000806E }, /* GL_UNPACK_IMAGE_HEIGHT */ + { 47707, 0x00000CF1 }, /* GL_UNPACK_LSB_FIRST */ + { 47727, 0x00000CF2 }, /* GL_UNPACK_ROW_LENGTH */ + { 47748, 0x0000806D }, /* GL_UNPACK_SKIP_IMAGES */ + { 47770, 0x00000CF4 }, /* GL_UNPACK_SKIP_PIXELS */ + { 47792, 0x00000CF3 }, /* GL_UNPACK_SKIP_ROWS */ + { 47812, 0x00000CF0 }, /* GL_UNPACK_SWAP_BYTES */ + { 47833, 0x00009118 }, /* GL_UNSIGNALED */ + { 47847, 0x00001401 }, /* GL_UNSIGNED_BYTE */ + { 47864, 0x00008362 }, /* GL_UNSIGNED_BYTE_2_3_3_REV */ + { 47891, 0x00008032 }, /* GL_UNSIGNED_BYTE_3_3_2 */ + { 47914, 0x00001405 }, /* GL_UNSIGNED_INT */ + { 47930, 0x00008C3B }, /* GL_UNSIGNED_INT_10F_11F_11F_REV */ + { 47962, 0x00008036 }, /* GL_UNSIGNED_INT_10_10_10_2 */ + { 47989, 0x00008DF6 }, /* GL_UNSIGNED_INT_10_10_10_2_OES */ + { 48020, 0x000084FA }, /* GL_UNSIGNED_INT_24_8 */ + { 48041, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_EXT */ + { 48066, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_NV */ + { 48090, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_OES */ + { 48115, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV */ + { 48146, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV_EXT */ + { 48181, 0x00008C3E }, /* GL_UNSIGNED_INT_5_9_9_9_REV */ + { 48209, 0x00008035 }, /* GL_UNSIGNED_INT_8_8_8_8 */ + { 48233, 0x00008367 }, /* GL_UNSIGNED_INT_8_8_8_8_REV */ + { 48261, 0x00008DD1 }, /* GL_UNSIGNED_INT_SAMPLER_1D */ + { 48288, 0x00008DD6 }, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY */ + { 48321, 0x00008DD6 }, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT */ + { 48358, 0x00008DD1 }, /* GL_UNSIGNED_INT_SAMPLER_1D_EXT */ + { 48389, 0x00008DD2 }, /* GL_UNSIGNED_INT_SAMPLER_2D */ + { 48416, 0x00008DD7 }, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY */ + { 48449, 0x00008DD7 }, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT */ + { 48486, 0x00008DD2 }, /* GL_UNSIGNED_INT_SAMPLER_2D_EXT */ + { 48517, 0x00008DD5 }, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT */ + { 48549, 0x00008DD5 }, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT */ + { 48585, 0x00008DD3 }, /* GL_UNSIGNED_INT_SAMPLER_3D */ + { 48612, 0x00008DD3 }, /* GL_UNSIGNED_INT_SAMPLER_3D_EXT */ + { 48643, 0x00008DD8 }, /* GL_UNSIGNED_INT_SAMPLER_BUFFER */ + { 48674, 0x00008DD8 }, /* GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT */ + { 48709, 0x00008DD4 }, /* GL_UNSIGNED_INT_SAMPLER_CUBE */ + { 48738, 0x00008DD4 }, /* GL_UNSIGNED_INT_SAMPLER_CUBE_EXT */ + { 48771, 0x00008DC6 }, /* GL_UNSIGNED_INT_VEC2 */ + { 48792, 0x00008DC6 }, /* GL_UNSIGNED_INT_VEC2_EXT */ + { 48817, 0x00008DC7 }, /* GL_UNSIGNED_INT_VEC3 */ + { 48838, 0x00008DC7 }, /* GL_UNSIGNED_INT_VEC3_EXT */ + { 48863, 0x00008DC8 }, /* GL_UNSIGNED_INT_VEC4 */ + { 48884, 0x00008DC8 }, /* GL_UNSIGNED_INT_VEC4_EXT */ + { 48909, 0x00008C17 }, /* GL_UNSIGNED_NORMALIZED */ + { 48932, 0x00001403 }, /* GL_UNSIGNED_SHORT */ + { 48950, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ + { 48980, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT */ + { 49014, 0x00008033 }, /* GL_UNSIGNED_SHORT_4_4_4_4 */ + { 49040, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ + { 49070, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT */ + { 49104, 0x00008034 }, /* GL_UNSIGNED_SHORT_5_5_5_1 */ + { 49130, 0x00008363 }, /* GL_UNSIGNED_SHORT_5_6_5 */ + { 49154, 0x00008364 }, /* GL_UNSIGNED_SHORT_5_6_5_REV */ + { 49182, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_APPLE */ + { 49210, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_MESA */ + { 49237, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ + { 49269, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_MESA */ + { 49300, 0x00008CA2 }, /* GL_UPPER_LEFT */ + { 49314, 0x00002A20 }, /* GL_V2F */ + { 49321, 0x00002A21 }, /* GL_V3F */ + { 49328, 0x00008B83 }, /* GL_VALIDATE_STATUS */ + { 49347, 0x00001F00 }, /* GL_VENDOR */ + { 49357, 0x00001F02 }, /* GL_VERSION */ + { 49368, 0x00008074 }, /* GL_VERTEX_ARRAY */ + { 49384, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING */ + { 49408, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING_APPLE */ + { 49438, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ + { 49469, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING_ARB */ + { 49504, 0x0000808E }, /* GL_VERTEX_ARRAY_POINTER */ + { 49528, 0x0000807A }, /* GL_VERTEX_ARRAY_SIZE */ + { 49549, 0x0000807C }, /* GL_VERTEX_ARRAY_STRIDE */ + { 49572, 0x0000807B }, /* GL_VERTEX_ARRAY_TYPE */ + { 49593, 0x00008650 }, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ + { 49620, 0x0000865A }, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ + { 49648, 0x0000865B }, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ + { 49676, 0x0000865C }, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ + { 49704, 0x0000865D }, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ + { 49732, 0x0000865E }, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ + { 49760, 0x0000865F }, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ + { 49788, 0x00008651 }, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ + { 49815, 0x00008652 }, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ + { 49842, 0x00008653 }, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ + { 49869, 0x00008654 }, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ + { 49896, 0x00008655 }, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ + { 49923, 0x00008656 }, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ + { 49950, 0x00008657 }, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ + { 49977, 0x00008658 }, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ + { 50004, 0x00008659 }, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ + { 50031, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ + { 50069, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB */ + { 50111, 0x000088FE }, /* GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB */ + { 50146, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ + { 50177, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB */ + { 50212, 0x000088FD }, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER */ + { 50243, 0x000088FD }, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT */ + { 50278, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ + { 50312, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB */ + { 50350, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ + { 50381, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB */ + { 50416, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ + { 50444, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB */ + { 50476, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ + { 50506, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB */ + { 50540, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ + { 50568, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB */ + { 50600, 0x000086A7 }, /* GL_VERTEX_BLEND_ARB */ + { 50620, 0x00008620 }, /* GL_VERTEX_PROGRAM_ARB */ + { 50642, 0x0000864A }, /* GL_VERTEX_PROGRAM_BINDING_NV */ + { 50671, 0x00008620 }, /* GL_VERTEX_PROGRAM_NV */ + { 50692, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE */ + { 50721, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_ARB */ + { 50754, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_NV */ + { 50786, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE */ + { 50813, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_ARB */ + { 50844, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_NV */ + { 50874, 0x00008B31 }, /* GL_VERTEX_SHADER */ + { 50891, 0x00008B31 }, /* GL_VERTEX_SHADER_ARB */ + { 50912, 0x00008621 }, /* GL_VERTEX_STATE_PROGRAM_NV */ + { 50939, 0x00000BA2 }, /* GL_VIEWPORT */ + { 50951, 0x00000800 }, /* GL_VIEWPORT_BIT */ + { 50967, 0x00008A1A }, /* GL_VOLATILE_APPLE */ + { 50985, 0x0000911D }, /* GL_WAIT_FAILED */ + { 51000, 0x000086AD }, /* GL_WEIGHT_ARRAY_ARB */ + { 51020, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ + { 51051, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB */ + { 51086, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_OES */ + { 51121, 0x000086AD }, /* GL_WEIGHT_ARRAY_OES */ + { 51141, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_ARB */ + { 51169, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_OES */ + { 51197, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_ARB */ + { 51222, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_OES */ + { 51247, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ + { 51274, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_OES */ + { 51301, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_ARB */ + { 51326, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_OES */ + { 51351, 0x000086A6 }, /* GL_WEIGHT_SUM_UNITY_ARB */ + { 51375, 0x000081D4 }, /* GL_WRAP_BORDER_SUN */ + { 51394, 0x000088B9 }, /* GL_WRITE_ONLY */ + { 51408, 0x000088B9 }, /* GL_WRITE_ONLY_ARB */ + { 51426, 0x000088B9 }, /* GL_WRITE_ONLY_OES */ + { 51444, 0x00001506 }, /* GL_XOR */ + { 51451, 0x000085B9 }, /* GL_YCBCR_422_APPLE */ + { 51470, 0x00008757 }, /* GL_YCBCR_MESA */ + { 51484, 0x00000000 }, /* GL_ZERO */ + { 51492, 0x00000D16 }, /* GL_ZOOM_X */ + { 51502, 0x00000D17 }, /* GL_ZOOM_Y */ }; -static const unsigned reduced_enums[1552] = +static const unsigned reduced_enums[1555] = { - 535, /* GL_FALSE */ - 827, /* GL_LINES */ - 831, /* GL_LINE_LOOP */ - 838, /* GL_LINE_STRIP */ - 2135, /* GL_TRIANGLES */ - 2140, /* GL_TRIANGLE_STRIP */ - 2138, /* GL_TRIANGLE_FAN */ - 1507, /* GL_QUADS */ - 1511, /* GL_QUAD_STRIP */ - 1378, /* GL_POLYGON */ - 828, /* GL_LINES_ADJACENCY */ - 839, /* GL_LINE_STRIP_ADJACENCY */ - 2136, /* GL_TRIANGLES_ADJACENCY */ - 2141, /* GL_TRIANGLE_STRIP_ADJACENCY */ - 1390, /* GL_POLYGON_STIPPLE_BIT */ - 1333, /* GL_PIXEL_MODE_BIT */ - 814, /* GL_LIGHTING_BIT */ - 568, /* GL_FOG_BIT */ + 538, /* GL_FALSE */ + 831, /* GL_LINES */ + 835, /* GL_LINE_LOOP */ + 842, /* GL_LINE_STRIP */ + 2140, /* GL_TRIANGLES */ + 2145, /* GL_TRIANGLE_STRIP */ + 2143, /* GL_TRIANGLE_FAN */ + 1511, /* GL_QUADS */ + 1515, /* GL_QUAD_STRIP */ + 1382, /* GL_POLYGON */ + 832, /* GL_LINES_ADJACENCY */ + 843, /* GL_LINE_STRIP_ADJACENCY */ + 2141, /* GL_TRIANGLES_ADJACENCY */ + 2146, /* GL_TRIANGLE_STRIP_ADJACENCY */ + 1394, /* GL_POLYGON_STIPPLE_BIT */ + 1337, /* GL_PIXEL_MODE_BIT */ + 818, /* GL_LIGHTING_BIT */ + 572, /* GL_FOG_BIT */ 8, /* GL_ACCUM */ - 850, /* GL_LOAD */ - 1596, /* GL_RETURN */ - 1200, /* GL_MULT */ + 854, /* GL_LOAD */ + 1600, /* GL_RETURN */ + 1204, /* GL_MULT */ 24, /* GL_ADD */ - 1216, /* GL_NEVER */ - 804, /* GL_LESS */ - 525, /* GL_EQUAL */ - 803, /* GL_LEQUAL */ - 691, /* GL_GREATER */ - 1233, /* GL_NOTEQUAL */ - 690, /* GL_GEQUAL */ + 1220, /* GL_NEVER */ + 808, /* GL_LESS */ + 528, /* GL_EQUAL */ + 807, /* GL_LEQUAL */ + 695, /* GL_GREATER */ + 1237, /* GL_NOTEQUAL */ + 694, /* GL_GEQUAL */ 55, /* GL_ALWAYS */ - 1803, /* GL_SRC_COLOR */ - 1266, /* GL_ONE_MINUS_SRC_COLOR */ - 1801, /* GL_SRC_ALPHA */ - 1265, /* GL_ONE_MINUS_SRC_ALPHA */ - 504, /* GL_DST_ALPHA */ - 1263, /* GL_ONE_MINUS_DST_ALPHA */ - 505, /* GL_DST_COLOR */ - 1264, /* GL_ONE_MINUS_DST_COLOR */ - 1802, /* GL_SRC_ALPHA_SATURATE */ - 667, /* GL_FRONT_LEFT */ - 668, /* GL_FRONT_RIGHT */ + 1808, /* GL_SRC_COLOR */ + 1270, /* GL_ONE_MINUS_SRC_COLOR */ + 1806, /* GL_SRC_ALPHA */ + 1269, /* GL_ONE_MINUS_SRC_ALPHA */ + 507, /* GL_DST_ALPHA */ + 1267, /* GL_ONE_MINUS_DST_ALPHA */ + 508, /* GL_DST_COLOR */ + 1268, /* GL_ONE_MINUS_DST_COLOR */ + 1807, /* GL_SRC_ALPHA_SATURATE */ + 671, /* GL_FRONT_LEFT */ + 672, /* GL_FRONT_RIGHT */ 77, /* GL_BACK_LEFT */ 78, /* GL_BACK_RIGHT */ - 664, /* GL_FRONT */ + 668, /* GL_FRONT */ 76, /* GL_BACK */ - 802, /* GL_LEFT */ - 1685, /* GL_RIGHT */ - 665, /* GL_FRONT_AND_BACK */ + 806, /* GL_LEFT */ + 1690, /* GL_RIGHT */ + 669, /* GL_FRONT_AND_BACK */ 71, /* GL_AUX0 */ 72, /* GL_AUX1 */ 73, /* GL_AUX2 */ 74, /* GL_AUX3 */ - 790, /* GL_INVALID_ENUM */ - 795, /* GL_INVALID_VALUE */ - 794, /* GL_INVALID_OPERATION */ - 1808, /* GL_STACK_OVERFLOW */ - 1809, /* GL_STACK_UNDERFLOW */ - 1291, /* GL_OUT_OF_MEMORY */ - 791, /* GL_INVALID_FRAMEBUFFER_OPERATION */ + 794, /* GL_INVALID_ENUM */ + 799, /* GL_INVALID_VALUE */ + 798, /* GL_INVALID_OPERATION */ + 1813, /* GL_STACK_OVERFLOW */ + 1814, /* GL_STACK_UNDERFLOW */ + 1295, /* GL_OUT_OF_MEMORY */ + 795, /* GL_INVALID_FRAMEBUFFER_OPERATION */ 0, /* GL_2D */ 2, /* GL_3D */ 3, /* GL_3D_COLOR */ 4, /* GL_3D_COLOR_TEXTURE */ 6, /* GL_4D_COLOR_TEXTURE */ - 1311, /* GL_PASS_THROUGH_TOKEN */ - 1377, /* GL_POINT_TOKEN */ - 841, /* GL_LINE_TOKEN */ - 1391, /* GL_POLYGON_TOKEN */ + 1315, /* GL_PASS_THROUGH_TOKEN */ + 1381, /* GL_POINT_TOKEN */ + 845, /* GL_LINE_TOKEN */ + 1395, /* GL_POLYGON_TOKEN */ 87, /* GL_BITMAP_TOKEN */ - 503, /* GL_DRAW_PIXEL_TOKEN */ - 349, /* GL_COPY_PIXEL_TOKEN */ - 832, /* GL_LINE_RESET_TOKEN */ - 528, /* GL_EXP */ - 529, /* GL_EXP2 */ - 386, /* GL_CW */ + 506, /* GL_DRAW_PIXEL_TOKEN */ + 352, /* GL_COPY_PIXEL_TOKEN */ + 836, /* GL_LINE_RESET_TOKEN */ + 531, /* GL_EXP */ + 532, /* GL_EXP2 */ + 389, /* GL_CW */ 154, /* GL_CCW */ - 184, /* GL_COEFF */ - 1288, /* GL_ORDER */ - 440, /* GL_DOMAIN */ - 359, /* GL_CURRENT_COLOR */ - 362, /* GL_CURRENT_INDEX */ - 368, /* GL_CURRENT_NORMAL */ - 382, /* GL_CURRENT_TEXTURE_COORDS */ - 374, /* GL_CURRENT_RASTER_COLOR */ - 376, /* GL_CURRENT_RASTER_INDEX */ - 380, /* GL_CURRENT_RASTER_TEXTURE_COORDS */ - 377, /* GL_CURRENT_RASTER_POSITION */ - 378, /* GL_CURRENT_RASTER_POSITION_VALID */ - 375, /* GL_CURRENT_RASTER_DISTANCE */ - 1369, /* GL_POINT_SMOOTH */ - 1353, /* GL_POINT_SIZE */ - 1368, /* GL_POINT_SIZE_RANGE */ - 1359, /* GL_POINT_SIZE_GRANULARITY */ - 833, /* GL_LINE_SMOOTH */ - 842, /* GL_LINE_WIDTH */ - 844, /* GL_LINE_WIDTH_RANGE */ - 843, /* GL_LINE_WIDTH_GRANULARITY */ - 835, /* GL_LINE_STIPPLE */ - 836, /* GL_LINE_STIPPLE_PATTERN */ - 837, /* GL_LINE_STIPPLE_REPEAT */ - 849, /* GL_LIST_MODE */ - 1056, /* GL_MAX_LIST_NESTING */ - 846, /* GL_LIST_BASE */ - 848, /* GL_LIST_INDEX */ - 1380, /* GL_POLYGON_MODE */ - 1387, /* GL_POLYGON_SMOOTH */ - 1389, /* GL_POLYGON_STIPPLE */ - 514, /* GL_EDGE_FLAG */ - 352, /* GL_CULL_FACE */ - 353, /* GL_CULL_FACE_MODE */ - 666, /* GL_FRONT_FACE */ - 813, /* GL_LIGHTING */ - 818, /* GL_LIGHT_MODEL_LOCAL_VIEWER */ - 819, /* GL_LIGHT_MODEL_TWO_SIDE */ - 815, /* GL_LIGHT_MODEL_AMBIENT */ - 1750, /* GL_SHADE_MODEL */ - 232, /* GL_COLOR_MATERIAL_FACE */ - 233, /* GL_COLOR_MATERIAL_PARAMETER */ - 231, /* GL_COLOR_MATERIAL */ - 567, /* GL_FOG */ - 589, /* GL_FOG_INDEX */ - 585, /* GL_FOG_DENSITY */ - 593, /* GL_FOG_START */ - 587, /* GL_FOG_END */ - 590, /* GL_FOG_MODE */ - 569, /* GL_FOG_COLOR */ - 425, /* GL_DEPTH_RANGE */ - 434, /* GL_DEPTH_TEST */ - 437, /* GL_DEPTH_WRITEMASK */ - 410, /* GL_DEPTH_CLEAR_VALUE */ - 424, /* GL_DEPTH_FUNC */ + 187, /* GL_COEFF */ + 1292, /* GL_ORDER */ + 443, /* GL_DOMAIN */ + 362, /* GL_CURRENT_COLOR */ + 365, /* GL_CURRENT_INDEX */ + 371, /* GL_CURRENT_NORMAL */ + 385, /* GL_CURRENT_TEXTURE_COORDS */ + 377, /* GL_CURRENT_RASTER_COLOR */ + 379, /* GL_CURRENT_RASTER_INDEX */ + 383, /* GL_CURRENT_RASTER_TEXTURE_COORDS */ + 380, /* GL_CURRENT_RASTER_POSITION */ + 381, /* GL_CURRENT_RASTER_POSITION_VALID */ + 378, /* GL_CURRENT_RASTER_DISTANCE */ + 1373, /* GL_POINT_SMOOTH */ + 1357, /* GL_POINT_SIZE */ + 1372, /* GL_POINT_SIZE_RANGE */ + 1363, /* GL_POINT_SIZE_GRANULARITY */ + 837, /* GL_LINE_SMOOTH */ + 846, /* GL_LINE_WIDTH */ + 848, /* GL_LINE_WIDTH_RANGE */ + 847, /* GL_LINE_WIDTH_GRANULARITY */ + 839, /* GL_LINE_STIPPLE */ + 840, /* GL_LINE_STIPPLE_PATTERN */ + 841, /* GL_LINE_STIPPLE_REPEAT */ + 853, /* GL_LIST_MODE */ + 1060, /* GL_MAX_LIST_NESTING */ + 850, /* GL_LIST_BASE */ + 852, /* GL_LIST_INDEX */ + 1384, /* GL_POLYGON_MODE */ + 1391, /* GL_POLYGON_SMOOTH */ + 1393, /* GL_POLYGON_STIPPLE */ + 517, /* GL_EDGE_FLAG */ + 355, /* GL_CULL_FACE */ + 356, /* GL_CULL_FACE_MODE */ + 670, /* GL_FRONT_FACE */ + 817, /* GL_LIGHTING */ + 822, /* GL_LIGHT_MODEL_LOCAL_VIEWER */ + 823, /* GL_LIGHT_MODEL_TWO_SIDE */ + 819, /* GL_LIGHT_MODEL_AMBIENT */ + 1755, /* GL_SHADE_MODEL */ + 235, /* GL_COLOR_MATERIAL_FACE */ + 236, /* GL_COLOR_MATERIAL_PARAMETER */ + 234, /* GL_COLOR_MATERIAL */ + 571, /* GL_FOG */ + 593, /* GL_FOG_INDEX */ + 589, /* GL_FOG_DENSITY */ + 597, /* GL_FOG_START */ + 591, /* GL_FOG_END */ + 594, /* GL_FOG_MODE */ + 573, /* GL_FOG_COLOR */ + 428, /* GL_DEPTH_RANGE */ + 437, /* GL_DEPTH_TEST */ + 440, /* GL_DEPTH_WRITEMASK */ + 413, /* GL_DEPTH_CLEAR_VALUE */ + 427, /* GL_DEPTH_FUNC */ 12, /* GL_ACCUM_CLEAR_VALUE */ - 1853, /* GL_STENCIL_TEST */ - 1834, /* GL_STENCIL_CLEAR_VALUE */ - 1836, /* GL_STENCIL_FUNC */ - 1855, /* GL_STENCIL_VALUE_MASK */ - 1835, /* GL_STENCIL_FAIL */ - 1850, /* GL_STENCIL_PASS_DEPTH_FAIL */ - 1851, /* GL_STENCIL_PASS_DEPTH_PASS */ - 1852, /* GL_STENCIL_REF */ - 1856, /* GL_STENCIL_WRITEMASK */ - 1006, /* GL_MATRIX_MODE */ - 1222, /* GL_NORMALIZE */ - 2267, /* GL_VIEWPORT */ - 1195, /* GL_MODELVIEW_STACK_DEPTH */ - 1481, /* GL_PROJECTION_STACK_DEPTH */ - 2089, /* GL_TEXTURE_STACK_DEPTH */ - 1192, /* GL_MODELVIEW_MATRIX */ - 1479, /* GL_PROJECTION_MATRIX */ - 2069, /* GL_TEXTURE_MATRIX */ + 1858, /* GL_STENCIL_TEST */ + 1839, /* GL_STENCIL_CLEAR_VALUE */ + 1841, /* GL_STENCIL_FUNC */ + 1860, /* GL_STENCIL_VALUE_MASK */ + 1840, /* GL_STENCIL_FAIL */ + 1855, /* GL_STENCIL_PASS_DEPTH_FAIL */ + 1856, /* GL_STENCIL_PASS_DEPTH_PASS */ + 1857, /* GL_STENCIL_REF */ + 1861, /* GL_STENCIL_WRITEMASK */ + 1010, /* GL_MATRIX_MODE */ + 1226, /* GL_NORMALIZE */ + 2272, /* GL_VIEWPORT */ + 1199, /* GL_MODELVIEW_STACK_DEPTH */ + 1485, /* GL_PROJECTION_STACK_DEPTH */ + 2094, /* GL_TEXTURE_STACK_DEPTH */ + 1196, /* GL_MODELVIEW_MATRIX */ + 1483, /* GL_PROJECTION_MATRIX */ + 2074, /* GL_TEXTURE_MATRIX */ 69, /* GL_ATTRIB_STACK_DEPTH */ - 166, /* GL_CLIENT_ATTRIB_STACK_DEPTH */ + 169, /* GL_CLIENT_ATTRIB_STACK_DEPTH */ 51, /* GL_ALPHA_TEST */ 52, /* GL_ALPHA_TEST_FUNC */ 53, /* GL_ALPHA_TEST_REF */ - 439, /* GL_DITHER */ + 442, /* GL_DITHER */ 91, /* GL_BLEND_DST */ 105, /* GL_BLEND_SRC */ 88, /* GL_BLEND */ - 852, /* GL_LOGIC_OP_MODE */ - 739, /* GL_INDEX_LOGIC_OP */ - 230, /* GL_COLOR_LOGIC_OP */ + 856, /* GL_LOGIC_OP_MODE */ + 743, /* GL_INDEX_LOGIC_OP */ + 233, /* GL_COLOR_LOGIC_OP */ 75, /* GL_AUX_BUFFERS */ - 450, /* GL_DRAW_BUFFER */ - 1534, /* GL_READ_BUFFER */ - 1727, /* GL_SCISSOR_BOX */ - 1728, /* GL_SCISSOR_TEST */ - 738, /* GL_INDEX_CLEAR_VALUE */ - 743, /* GL_INDEX_WRITEMASK */ - 227, /* GL_COLOR_CLEAR_VALUE */ - 269, /* GL_COLOR_WRITEMASK */ - 740, /* GL_INDEX_MODE */ - 1674, /* GL_RGBA_MODE */ - 449, /* GL_DOUBLEBUFFER */ - 1857, /* GL_STEREO */ - 1588, /* GL_RENDER_MODE */ - 1312, /* GL_PERSPECTIVE_CORRECTION_HINT */ - 1370, /* GL_POINT_SMOOTH_HINT */ - 834, /* GL_LINE_SMOOTH_HINT */ - 1388, /* GL_POLYGON_SMOOTH_HINT */ - 588, /* GL_FOG_HINT */ - 2049, /* GL_TEXTURE_GEN_S */ - 2051, /* GL_TEXTURE_GEN_T */ - 2048, /* GL_TEXTURE_GEN_R */ - 2047, /* GL_TEXTURE_GEN_Q */ - 1325, /* GL_PIXEL_MAP_I_TO_I */ - 1331, /* GL_PIXEL_MAP_S_TO_S */ - 1327, /* GL_PIXEL_MAP_I_TO_R */ - 1323, /* GL_PIXEL_MAP_I_TO_G */ - 1321, /* GL_PIXEL_MAP_I_TO_B */ - 1319, /* GL_PIXEL_MAP_I_TO_A */ - 1329, /* GL_PIXEL_MAP_R_TO_R */ - 1317, /* GL_PIXEL_MAP_G_TO_G */ - 1315, /* GL_PIXEL_MAP_B_TO_B */ - 1313, /* GL_PIXEL_MAP_A_TO_A */ - 1326, /* GL_PIXEL_MAP_I_TO_I_SIZE */ - 1332, /* GL_PIXEL_MAP_S_TO_S_SIZE */ - 1328, /* GL_PIXEL_MAP_I_TO_R_SIZE */ - 1324, /* GL_PIXEL_MAP_I_TO_G_SIZE */ - 1322, /* GL_PIXEL_MAP_I_TO_B_SIZE */ - 1320, /* GL_PIXEL_MAP_I_TO_A_SIZE */ - 1330, /* GL_PIXEL_MAP_R_TO_R_SIZE */ - 1318, /* GL_PIXEL_MAP_G_TO_G_SIZE */ - 1316, /* GL_PIXEL_MAP_B_TO_B_SIZE */ - 1314, /* GL_PIXEL_MAP_A_TO_A_SIZE */ - 2152, /* GL_UNPACK_SWAP_BYTES */ - 2147, /* GL_UNPACK_LSB_FIRST */ - 2148, /* GL_UNPACK_ROW_LENGTH */ - 2151, /* GL_UNPACK_SKIP_ROWS */ - 2150, /* GL_UNPACK_SKIP_PIXELS */ - 2145, /* GL_UNPACK_ALIGNMENT */ - 1300, /* GL_PACK_SWAP_BYTES */ - 1295, /* GL_PACK_LSB_FIRST */ - 1296, /* GL_PACK_ROW_LENGTH */ - 1299, /* GL_PACK_SKIP_ROWS */ - 1298, /* GL_PACK_SKIP_PIXELS */ - 1292, /* GL_PACK_ALIGNMENT */ - 947, /* GL_MAP_COLOR */ - 952, /* GL_MAP_STENCIL */ - 742, /* GL_INDEX_SHIFT */ - 741, /* GL_INDEX_OFFSET */ - 1550, /* GL_RED_SCALE */ - 1546, /* GL_RED_BIAS */ - 2293, /* GL_ZOOM_X */ - 2294, /* GL_ZOOM_Y */ - 697, /* GL_GREEN_SCALE */ - 693, /* GL_GREEN_BIAS */ + 453, /* GL_DRAW_BUFFER */ + 1538, /* GL_READ_BUFFER */ + 1732, /* GL_SCISSOR_BOX */ + 1733, /* GL_SCISSOR_TEST */ + 742, /* GL_INDEX_CLEAR_VALUE */ + 747, /* GL_INDEX_WRITEMASK */ + 230, /* GL_COLOR_CLEAR_VALUE */ + 272, /* GL_COLOR_WRITEMASK */ + 744, /* GL_INDEX_MODE */ + 1679, /* GL_RGBA_MODE */ + 452, /* GL_DOUBLEBUFFER */ + 1862, /* GL_STEREO */ + 1592, /* GL_RENDER_MODE */ + 1316, /* GL_PERSPECTIVE_CORRECTION_HINT */ + 1374, /* GL_POINT_SMOOTH_HINT */ + 838, /* GL_LINE_SMOOTH_HINT */ + 1392, /* GL_POLYGON_SMOOTH_HINT */ + 592, /* GL_FOG_HINT */ + 2054, /* GL_TEXTURE_GEN_S */ + 2056, /* GL_TEXTURE_GEN_T */ + 2053, /* GL_TEXTURE_GEN_R */ + 2052, /* GL_TEXTURE_GEN_Q */ + 1329, /* GL_PIXEL_MAP_I_TO_I */ + 1335, /* GL_PIXEL_MAP_S_TO_S */ + 1331, /* GL_PIXEL_MAP_I_TO_R */ + 1327, /* GL_PIXEL_MAP_I_TO_G */ + 1325, /* GL_PIXEL_MAP_I_TO_B */ + 1323, /* GL_PIXEL_MAP_I_TO_A */ + 1333, /* GL_PIXEL_MAP_R_TO_R */ + 1321, /* GL_PIXEL_MAP_G_TO_G */ + 1319, /* GL_PIXEL_MAP_B_TO_B */ + 1317, /* GL_PIXEL_MAP_A_TO_A */ + 1330, /* GL_PIXEL_MAP_I_TO_I_SIZE */ + 1336, /* GL_PIXEL_MAP_S_TO_S_SIZE */ + 1332, /* GL_PIXEL_MAP_I_TO_R_SIZE */ + 1328, /* GL_PIXEL_MAP_I_TO_G_SIZE */ + 1326, /* GL_PIXEL_MAP_I_TO_B_SIZE */ + 1324, /* GL_PIXEL_MAP_I_TO_A_SIZE */ + 1334, /* GL_PIXEL_MAP_R_TO_R_SIZE */ + 1322, /* GL_PIXEL_MAP_G_TO_G_SIZE */ + 1320, /* GL_PIXEL_MAP_B_TO_B_SIZE */ + 1318, /* GL_PIXEL_MAP_A_TO_A_SIZE */ + 2157, /* GL_UNPACK_SWAP_BYTES */ + 2152, /* GL_UNPACK_LSB_FIRST */ + 2153, /* GL_UNPACK_ROW_LENGTH */ + 2156, /* GL_UNPACK_SKIP_ROWS */ + 2155, /* GL_UNPACK_SKIP_PIXELS */ + 2150, /* GL_UNPACK_ALIGNMENT */ + 1304, /* GL_PACK_SWAP_BYTES */ + 1299, /* GL_PACK_LSB_FIRST */ + 1300, /* GL_PACK_ROW_LENGTH */ + 1303, /* GL_PACK_SKIP_ROWS */ + 1302, /* GL_PACK_SKIP_PIXELS */ + 1296, /* GL_PACK_ALIGNMENT */ + 951, /* GL_MAP_COLOR */ + 956, /* GL_MAP_STENCIL */ + 746, /* GL_INDEX_SHIFT */ + 745, /* GL_INDEX_OFFSET */ + 1554, /* GL_RED_SCALE */ + 1550, /* GL_RED_BIAS */ + 2298, /* GL_ZOOM_X */ + 2299, /* GL_ZOOM_Y */ + 701, /* GL_GREEN_SCALE */ + 697, /* GL_GREEN_BIAS */ 115, /* GL_BLUE_SCALE */ 111, /* GL_BLUE_BIAS */ 50, /* GL_ALPHA_SCALE */ 47, /* GL_ALPHA_BIAS */ - 426, /* GL_DEPTH_SCALE */ - 402, /* GL_DEPTH_BIAS */ - 1038, /* GL_MAX_EVAL_ORDER */ - 1055, /* GL_MAX_LIGHTS */ - 1018, /* GL_MAX_CLIP_DISTANCES */ - 1110, /* GL_MAX_TEXTURE_SIZE */ - 1062, /* GL_MAX_PIXEL_MAP_TABLE */ - 1014, /* GL_MAX_ATTRIB_STACK_DEPTH */ - 1058, /* GL_MAX_MODELVIEW_STACK_DEPTH */ - 1059, /* GL_MAX_NAME_STACK_DEPTH */ - 1090, /* GL_MAX_PROJECTION_STACK_DEPTH */ - 1111, /* GL_MAX_TEXTURE_STACK_DEPTH */ - 1137, /* GL_MAX_VIEWPORT_DIMS */ - 1015, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */ - 1867, /* GL_SUBPIXEL_BITS */ - 737, /* GL_INDEX_BITS */ - 1547, /* GL_RED_BITS */ - 694, /* GL_GREEN_BITS */ + 429, /* GL_DEPTH_SCALE */ + 405, /* GL_DEPTH_BIAS */ + 1042, /* GL_MAX_EVAL_ORDER */ + 1059, /* GL_MAX_LIGHTS */ + 1022, /* GL_MAX_CLIP_DISTANCES */ + 1114, /* GL_MAX_TEXTURE_SIZE */ + 1066, /* GL_MAX_PIXEL_MAP_TABLE */ + 1018, /* GL_MAX_ATTRIB_STACK_DEPTH */ + 1062, /* GL_MAX_MODELVIEW_STACK_DEPTH */ + 1063, /* GL_MAX_NAME_STACK_DEPTH */ + 1094, /* GL_MAX_PROJECTION_STACK_DEPTH */ + 1115, /* GL_MAX_TEXTURE_STACK_DEPTH */ + 1141, /* GL_MAX_VIEWPORT_DIMS */ + 1019, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */ + 1872, /* GL_SUBPIXEL_BITS */ + 741, /* GL_INDEX_BITS */ + 1551, /* GL_RED_BITS */ + 698, /* GL_GREEN_BITS */ 112, /* GL_BLUE_BITS */ 48, /* GL_ALPHA_BITS */ - 403, /* GL_DEPTH_BITS */ - 1831, /* GL_STENCIL_BITS */ + 406, /* GL_DEPTH_BITS */ + 1836, /* GL_STENCIL_BITS */ 14, /* GL_ACCUM_RED_BITS */ 13, /* GL_ACCUM_GREEN_BITS */ 10, /* GL_ACCUM_BLUE_BITS */ 9, /* GL_ACCUM_ALPHA_BITS */ - 1209, /* GL_NAME_STACK_DEPTH */ + 1213, /* GL_NAME_STACK_DEPTH */ 70, /* GL_AUTO_NORMAL */ - 893, /* GL_MAP1_COLOR_4 */ - 896, /* GL_MAP1_INDEX */ - 897, /* GL_MAP1_NORMAL */ - 898, /* GL_MAP1_TEXTURE_COORD_1 */ - 899, /* GL_MAP1_TEXTURE_COORD_2 */ - 900, /* GL_MAP1_TEXTURE_COORD_3 */ - 901, /* GL_MAP1_TEXTURE_COORD_4 */ - 902, /* GL_MAP1_VERTEX_3 */ - 903, /* GL_MAP1_VERTEX_4 */ - 920, /* GL_MAP2_COLOR_4 */ - 923, /* GL_MAP2_INDEX */ - 924, /* GL_MAP2_NORMAL */ - 925, /* GL_MAP2_TEXTURE_COORD_1 */ - 926, /* GL_MAP2_TEXTURE_COORD_2 */ - 927, /* GL_MAP2_TEXTURE_COORD_3 */ - 928, /* GL_MAP2_TEXTURE_COORD_4 */ - 929, /* GL_MAP2_VERTEX_3 */ - 930, /* GL_MAP2_VERTEX_4 */ - 894, /* GL_MAP1_GRID_DOMAIN */ - 895, /* GL_MAP1_GRID_SEGMENTS */ - 921, /* GL_MAP2_GRID_DOMAIN */ - 922, /* GL_MAP2_GRID_SEGMENTS */ - 1950, /* GL_TEXTURE_1D */ - 1953, /* GL_TEXTURE_2D */ - 538, /* GL_FEEDBACK_BUFFER_POINTER */ - 539, /* GL_FEEDBACK_BUFFER_SIZE */ - 540, /* GL_FEEDBACK_BUFFER_TYPE */ - 1737, /* GL_SELECTION_BUFFER_POINTER */ - 1738, /* GL_SELECTION_BUFFER_SIZE */ - 2095, /* GL_TEXTURE_WIDTH */ - 2055, /* GL_TEXTURE_HEIGHT */ - 1999, /* GL_TEXTURE_COMPONENTS */ - 1980, /* GL_TEXTURE_BORDER_COLOR */ - 1979, /* GL_TEXTURE_BORDER */ - 441, /* GL_DONT_CARE */ - 536, /* GL_FASTEST */ - 1217, /* GL_NICEST */ + 897, /* GL_MAP1_COLOR_4 */ + 900, /* GL_MAP1_INDEX */ + 901, /* GL_MAP1_NORMAL */ + 902, /* GL_MAP1_TEXTURE_COORD_1 */ + 903, /* GL_MAP1_TEXTURE_COORD_2 */ + 904, /* GL_MAP1_TEXTURE_COORD_3 */ + 905, /* GL_MAP1_TEXTURE_COORD_4 */ + 906, /* GL_MAP1_VERTEX_3 */ + 907, /* GL_MAP1_VERTEX_4 */ + 924, /* GL_MAP2_COLOR_4 */ + 927, /* GL_MAP2_INDEX */ + 928, /* GL_MAP2_NORMAL */ + 929, /* GL_MAP2_TEXTURE_COORD_1 */ + 930, /* GL_MAP2_TEXTURE_COORD_2 */ + 931, /* GL_MAP2_TEXTURE_COORD_3 */ + 932, /* GL_MAP2_TEXTURE_COORD_4 */ + 933, /* GL_MAP2_VERTEX_3 */ + 934, /* GL_MAP2_VERTEX_4 */ + 898, /* GL_MAP1_GRID_DOMAIN */ + 899, /* GL_MAP1_GRID_SEGMENTS */ + 925, /* GL_MAP2_GRID_DOMAIN */ + 926, /* GL_MAP2_GRID_SEGMENTS */ + 1955, /* GL_TEXTURE_1D */ + 1958, /* GL_TEXTURE_2D */ + 541, /* GL_FEEDBACK_BUFFER_POINTER */ + 542, /* GL_FEEDBACK_BUFFER_SIZE */ + 543, /* GL_FEEDBACK_BUFFER_TYPE */ + 1742, /* GL_SELECTION_BUFFER_POINTER */ + 1743, /* GL_SELECTION_BUFFER_SIZE */ + 2100, /* GL_TEXTURE_WIDTH */ + 2060, /* GL_TEXTURE_HEIGHT */ + 2004, /* GL_TEXTURE_COMPONENTS */ + 1985, /* GL_TEXTURE_BORDER_COLOR */ + 1984, /* GL_TEXTURE_BORDER */ + 444, /* GL_DONT_CARE */ + 539, /* GL_FASTEST */ + 1221, /* GL_NICEST */ 56, /* GL_AMBIENT */ - 438, /* GL_DIFFUSE */ - 1790, /* GL_SPECULAR */ - 1392, /* GL_POSITION */ - 1793, /* GL_SPOT_DIRECTION */ - 1794, /* GL_SPOT_EXPONENT */ - 1792, /* GL_SPOT_CUTOFF */ - 317, /* GL_CONSTANT_ATTENUATION */ - 822, /* GL_LINEAR_ATTENUATION */ - 1506, /* GL_QUADRATIC_ATTENUATION */ - 284, /* GL_COMPILE */ - 285, /* GL_COMPILE_AND_EXECUTE */ + 441, /* GL_DIFFUSE */ + 1795, /* GL_SPECULAR */ + 1396, /* GL_POSITION */ + 1798, /* GL_SPOT_DIRECTION */ + 1799, /* GL_SPOT_EXPONENT */ + 1797, /* GL_SPOT_CUTOFF */ + 320, /* GL_CONSTANT_ATTENUATION */ + 826, /* GL_LINEAR_ATTENUATION */ + 1510, /* GL_QUADRATIC_ATTENUATION */ + 287, /* GL_COMPILE */ + 288, /* GL_COMPILE_AND_EXECUTE */ 149, /* GL_BYTE */ - 2154, /* GL_UNSIGNED_BYTE */ - 1755, /* GL_SHORT */ - 2193, /* GL_UNSIGNED_SHORT */ - 745, /* GL_INT */ - 2157, /* GL_UNSIGNED_INT */ - 548, /* GL_FLOAT */ + 2159, /* GL_UNSIGNED_BYTE */ + 1760, /* GL_SHORT */ + 2198, /* GL_UNSIGNED_SHORT */ + 749, /* GL_INT */ + 2162, /* GL_UNSIGNED_INT */ + 552, /* GL_FLOAT */ 1, /* GL_2_BYTES */ 5, /* GL_3_BYTES */ 7, /* GL_4_BYTES */ - 448, /* GL_DOUBLE */ - 698, /* GL_HALF_FLOAT */ - 544, /* GL_FIXED */ - 162, /* GL_CLEAR */ + 451, /* GL_DOUBLE */ + 702, /* GL_HALF_FLOAT */ + 547, /* GL_FIXED */ + 165, /* GL_CLEAR */ 58, /* GL_AND */ 60, /* GL_AND_REVERSE */ - 347, /* GL_COPY */ + 350, /* GL_COPY */ 59, /* GL_AND_INVERTED */ - 1220, /* GL_NOOP */ - 2289, /* GL_XOR */ - 1287, /* GL_OR */ - 1221, /* GL_NOR */ - 526, /* GL_EQUIV */ - 798, /* GL_INVERT */ - 1290, /* GL_OR_REVERSE */ - 348, /* GL_COPY_INVERTED */ - 1289, /* GL_OR_INVERTED */ - 1210, /* GL_NAND */ - 1744, /* GL_SET */ - 523, /* GL_EMISSION */ - 1754, /* GL_SHININESS */ + 1224, /* GL_NOOP */ + 2294, /* GL_XOR */ + 1291, /* GL_OR */ + 1225, /* GL_NOR */ + 529, /* GL_EQUIV */ + 802, /* GL_INVERT */ + 1294, /* GL_OR_REVERSE */ + 351, /* GL_COPY_INVERTED */ + 1293, /* GL_OR_INVERTED */ + 1214, /* GL_NAND */ + 1749, /* GL_SET */ + 526, /* GL_EMISSION */ + 1759, /* GL_SHININESS */ 57, /* GL_AMBIENT_AND_DIFFUSE */ - 229, /* GL_COLOR_INDEXES */ - 1159, /* GL_MODELVIEW */ - 1478, /* GL_PROJECTION */ - 1885, /* GL_TEXTURE */ - 185, /* GL_COLOR */ - 395, /* GL_DEPTH */ - 1816, /* GL_STENCIL */ - 228, /* GL_COLOR_INDEX */ - 1837, /* GL_STENCIL_INDEX */ - 411, /* GL_DEPTH_COMPONENT */ - 1543, /* GL_RED */ - 692, /* GL_GREEN */ + 232, /* GL_COLOR_INDEXES */ + 1163, /* GL_MODELVIEW */ + 1482, /* GL_PROJECTION */ + 1890, /* GL_TEXTURE */ + 188, /* GL_COLOR */ + 398, /* GL_DEPTH */ + 1821, /* GL_STENCIL */ + 231, /* GL_COLOR_INDEX */ + 1842, /* GL_STENCIL_INDEX */ + 414, /* GL_DEPTH_COMPONENT */ + 1547, /* GL_RED */ + 696, /* GL_GREEN */ 110, /* GL_BLUE */ 32, /* GL_ALPHA */ - 1599, /* GL_RGB */ - 1639, /* GL_RGBA */ - 856, /* GL_LUMINANCE */ - 883, /* GL_LUMINANCE_ALPHA */ + 1603, /* GL_RGB */ + 1643, /* GL_RGBA */ + 860, /* GL_LUMINANCE */ + 887, /* GL_LUMINANCE_ALPHA */ 86, /* GL_BITMAP */ - 1342, /* GL_POINT */ - 820, /* GL_LINE */ - 541, /* GL_FILL */ - 1557, /* GL_RENDER */ - 537, /* GL_FEEDBACK */ - 1736, /* GL_SELECT */ - 547, /* GL_FLAT */ - 1765, /* GL_SMOOTH */ - 799, /* GL_KEEP */ - 1590, /* GL_REPLACE */ - 727, /* GL_INCR */ - 391, /* GL_DECR */ - 2210, /* GL_VENDOR */ - 1587, /* GL_RENDERER */ - 2211, /* GL_VERSION */ - 530, /* GL_EXTENSIONS */ - 1686, /* GL_S */ - 1876, /* GL_T */ - 1526, /* GL_R */ - 1505, /* GL_Q */ - 1196, /* GL_MODULATE */ - 390, /* GL_DECAL */ - 2042, /* GL_TEXTURE_ENV_MODE */ - 2041, /* GL_TEXTURE_ENV_COLOR */ - 2040, /* GL_TEXTURE_ENV */ - 531, /* GL_EYE_LINEAR */ - 1248, /* GL_OBJECT_LINEAR */ - 1791, /* GL_SPHERE_MAP */ - 2045, /* GL_TEXTURE_GEN_MODE */ - 1250, /* GL_OBJECT_PLANE */ - 532, /* GL_EYE_PLANE */ - 1211, /* GL_NEAREST */ - 821, /* GL_LINEAR */ - 1215, /* GL_NEAREST_MIPMAP_NEAREST */ - 826, /* GL_LINEAR_MIPMAP_NEAREST */ - 1214, /* GL_NEAREST_MIPMAP_LINEAR */ - 825, /* GL_LINEAR_MIPMAP_LINEAR */ - 2068, /* GL_TEXTURE_MAG_FILTER */ - 2077, /* GL_TEXTURE_MIN_FILTER */ - 2098, /* GL_TEXTURE_WRAP_S */ - 2099, /* GL_TEXTURE_WRAP_T */ + 1346, /* GL_POINT */ + 824, /* GL_LINE */ + 544, /* GL_FILL */ + 1561, /* GL_RENDER */ + 540, /* GL_FEEDBACK */ + 1741, /* GL_SELECT */ + 551, /* GL_FLAT */ + 1770, /* GL_SMOOTH */ + 803, /* GL_KEEP */ + 1594, /* GL_REPLACE */ + 731, /* GL_INCR */ + 394, /* GL_DECR */ + 2215, /* GL_VENDOR */ + 1591, /* GL_RENDERER */ + 2216, /* GL_VERSION */ + 533, /* GL_EXTENSIONS */ + 1691, /* GL_S */ + 1881, /* GL_T */ + 1530, /* GL_R */ + 1509, /* GL_Q */ + 1200, /* GL_MODULATE */ + 393, /* GL_DECAL */ + 2047, /* GL_TEXTURE_ENV_MODE */ + 2046, /* GL_TEXTURE_ENV_COLOR */ + 2045, /* GL_TEXTURE_ENV */ + 534, /* GL_EYE_LINEAR */ + 1252, /* GL_OBJECT_LINEAR */ + 1796, /* GL_SPHERE_MAP */ + 2050, /* GL_TEXTURE_GEN_MODE */ + 1254, /* GL_OBJECT_PLANE */ + 535, /* GL_EYE_PLANE */ + 1215, /* GL_NEAREST */ + 825, /* GL_LINEAR */ + 1219, /* GL_NEAREST_MIPMAP_NEAREST */ + 830, /* GL_LINEAR_MIPMAP_NEAREST */ + 1218, /* GL_NEAREST_MIPMAP_LINEAR */ + 829, /* GL_LINEAR_MIPMAP_LINEAR */ + 2073, /* GL_TEXTURE_MAG_FILTER */ + 2082, /* GL_TEXTURE_MIN_FILTER */ + 2103, /* GL_TEXTURE_WRAP_S */ + 2104, /* GL_TEXTURE_WRAP_T */ 155, /* GL_CLAMP */ - 1589, /* GL_REPEAT */ - 1386, /* GL_POLYGON_OFFSET_UNITS */ - 1385, /* GL_POLYGON_OFFSET_POINT */ - 1384, /* GL_POLYGON_OFFSET_LINE */ - 1529, /* GL_R3_G3_B2 */ - 2207, /* GL_V2F */ - 2208, /* GL_V3F */ + 1593, /* GL_REPEAT */ + 1390, /* GL_POLYGON_OFFSET_UNITS */ + 1389, /* GL_POLYGON_OFFSET_POINT */ + 1388, /* GL_POLYGON_OFFSET_LINE */ + 1533, /* GL_R3_G3_B2 */ + 2212, /* GL_V2F */ + 2213, /* GL_V3F */ 152, /* GL_C4UB_V2F */ 153, /* GL_C4UB_V3F */ 150, /* GL_C3F_V3F */ - 1208, /* GL_N3F_V3F */ + 1212, /* GL_N3F_V3F */ 151, /* GL_C4F_N3F_V3F */ - 1881, /* GL_T2F_V3F */ - 1883, /* GL_T4F_V4F */ - 1879, /* GL_T2F_C4UB_V3F */ - 1877, /* GL_T2F_C3F_V3F */ - 1880, /* GL_T2F_N3F_V3F */ - 1878, /* GL_T2F_C4F_N3F_V3F */ - 1882, /* GL_T4F_C4F_N3F_V4F */ - 169, /* GL_CLIP_DISTANCE0 */ - 170, /* GL_CLIP_DISTANCE1 */ - 171, /* GL_CLIP_DISTANCE2 */ - 172, /* GL_CLIP_DISTANCE3 */ - 173, /* GL_CLIP_DISTANCE4 */ - 174, /* GL_CLIP_DISTANCE5 */ - 175, /* GL_CLIP_DISTANCE6 */ - 176, /* GL_CLIP_DISTANCE7 */ - 805, /* GL_LIGHT0 */ - 806, /* GL_LIGHT1 */ - 807, /* GL_LIGHT2 */ - 808, /* GL_LIGHT3 */ - 809, /* GL_LIGHT4 */ - 810, /* GL_LIGHT5 */ - 811, /* GL_LIGHT6 */ - 812, /* GL_LIGHT7 */ - 702, /* GL_HINT_BIT */ - 319, /* GL_CONSTANT_COLOR */ - 1261, /* GL_ONE_MINUS_CONSTANT_COLOR */ - 314, /* GL_CONSTANT_ALPHA */ - 1259, /* GL_ONE_MINUS_CONSTANT_ALPHA */ + 1886, /* GL_T2F_V3F */ + 1888, /* GL_T4F_V4F */ + 1884, /* GL_T2F_C4UB_V3F */ + 1882, /* GL_T2F_C3F_V3F */ + 1885, /* GL_T2F_N3F_V3F */ + 1883, /* GL_T2F_C4F_N3F_V3F */ + 1887, /* GL_T4F_C4F_N3F_V4F */ + 172, /* GL_CLIP_DISTANCE0 */ + 173, /* GL_CLIP_DISTANCE1 */ + 174, /* GL_CLIP_DISTANCE2 */ + 175, /* GL_CLIP_DISTANCE3 */ + 176, /* GL_CLIP_DISTANCE4 */ + 177, /* GL_CLIP_DISTANCE5 */ + 178, /* GL_CLIP_DISTANCE6 */ + 179, /* GL_CLIP_DISTANCE7 */ + 809, /* GL_LIGHT0 */ + 810, /* GL_LIGHT1 */ + 811, /* GL_LIGHT2 */ + 812, /* GL_LIGHT3 */ + 813, /* GL_LIGHT4 */ + 814, /* GL_LIGHT5 */ + 815, /* GL_LIGHT6 */ + 816, /* GL_LIGHT7 */ + 706, /* GL_HINT_BIT */ + 322, /* GL_CONSTANT_COLOR */ + 1265, /* GL_ONE_MINUS_CONSTANT_COLOR */ + 317, /* GL_CONSTANT_ALPHA */ + 1263, /* GL_ONE_MINUS_CONSTANT_ALPHA */ 89, /* GL_BLEND_COLOR */ - 669, /* GL_FUNC_ADD */ - 1140, /* GL_MIN */ - 1009, /* GL_MAX */ + 673, /* GL_FUNC_ADD */ + 1144, /* GL_MIN */ + 1013, /* GL_MAX */ 96, /* GL_BLEND_EQUATION */ - 675, /* GL_FUNC_SUBTRACT */ - 672, /* GL_FUNC_REVERSE_SUBTRACT */ - 327, /* GL_CONVOLUTION_1D */ - 328, /* GL_CONVOLUTION_2D */ - 1739, /* GL_SEPARABLE_2D */ - 331, /* GL_CONVOLUTION_BORDER_MODE */ - 335, /* GL_CONVOLUTION_FILTER_SCALE */ - 333, /* GL_CONVOLUTION_FILTER_BIAS */ - 1544, /* GL_REDUCE */ - 337, /* GL_CONVOLUTION_FORMAT */ - 341, /* GL_CONVOLUTION_WIDTH */ - 339, /* GL_CONVOLUTION_HEIGHT */ - 1028, /* GL_MAX_CONVOLUTION_WIDTH */ - 1026, /* GL_MAX_CONVOLUTION_HEIGHT */ - 1425, /* GL_POST_CONVOLUTION_RED_SCALE */ - 1421, /* GL_POST_CONVOLUTION_GREEN_SCALE */ - 1416, /* GL_POST_CONVOLUTION_BLUE_SCALE */ - 1412, /* GL_POST_CONVOLUTION_ALPHA_SCALE */ - 1423, /* GL_POST_CONVOLUTION_RED_BIAS */ - 1419, /* GL_POST_CONVOLUTION_GREEN_BIAS */ - 1414, /* GL_POST_CONVOLUTION_BLUE_BIAS */ - 1410, /* GL_POST_CONVOLUTION_ALPHA_BIAS */ - 703, /* GL_HISTOGRAM */ - 1485, /* GL_PROXY_HISTOGRAM */ - 719, /* GL_HISTOGRAM_WIDTH */ - 709, /* GL_HISTOGRAM_FORMAT */ - 715, /* GL_HISTOGRAM_RED_SIZE */ - 711, /* GL_HISTOGRAM_GREEN_SIZE */ - 706, /* GL_HISTOGRAM_BLUE_SIZE */ - 704, /* GL_HISTOGRAM_ALPHA_SIZE */ - 713, /* GL_HISTOGRAM_LUMINANCE_SIZE */ - 717, /* GL_HISTOGRAM_SINK */ - 1141, /* GL_MINMAX */ - 1143, /* GL_MINMAX_FORMAT */ - 1145, /* GL_MINMAX_SINK */ - 1884, /* GL_TABLE_TOO_LARGE_EXT */ - 2156, /* GL_UNSIGNED_BYTE_3_3_2 */ - 2196, /* GL_UNSIGNED_SHORT_4_4_4_4 */ - 2199, /* GL_UNSIGNED_SHORT_5_5_5_1 */ - 2168, /* GL_UNSIGNED_INT_8_8_8_8 */ - 2159, /* GL_UNSIGNED_INT_10_10_10_2 */ - 1383, /* GL_POLYGON_OFFSET_FILL */ - 1382, /* GL_POLYGON_OFFSET_FACTOR */ - 1381, /* GL_POLYGON_OFFSET_BIAS */ - 1593, /* GL_RESCALE_NORMAL */ + 679, /* GL_FUNC_SUBTRACT */ + 676, /* GL_FUNC_REVERSE_SUBTRACT */ + 330, /* GL_CONVOLUTION_1D */ + 331, /* GL_CONVOLUTION_2D */ + 1744, /* GL_SEPARABLE_2D */ + 334, /* GL_CONVOLUTION_BORDER_MODE */ + 338, /* GL_CONVOLUTION_FILTER_SCALE */ + 336, /* GL_CONVOLUTION_FILTER_BIAS */ + 1548, /* GL_REDUCE */ + 340, /* GL_CONVOLUTION_FORMAT */ + 344, /* GL_CONVOLUTION_WIDTH */ + 342, /* GL_CONVOLUTION_HEIGHT */ + 1032, /* GL_MAX_CONVOLUTION_WIDTH */ + 1030, /* GL_MAX_CONVOLUTION_HEIGHT */ + 1429, /* GL_POST_CONVOLUTION_RED_SCALE */ + 1425, /* GL_POST_CONVOLUTION_GREEN_SCALE */ + 1420, /* GL_POST_CONVOLUTION_BLUE_SCALE */ + 1416, /* GL_POST_CONVOLUTION_ALPHA_SCALE */ + 1427, /* GL_POST_CONVOLUTION_RED_BIAS */ + 1423, /* GL_POST_CONVOLUTION_GREEN_BIAS */ + 1418, /* GL_POST_CONVOLUTION_BLUE_BIAS */ + 1414, /* GL_POST_CONVOLUTION_ALPHA_BIAS */ + 707, /* GL_HISTOGRAM */ + 1489, /* GL_PROXY_HISTOGRAM */ + 723, /* GL_HISTOGRAM_WIDTH */ + 713, /* GL_HISTOGRAM_FORMAT */ + 719, /* GL_HISTOGRAM_RED_SIZE */ + 715, /* GL_HISTOGRAM_GREEN_SIZE */ + 710, /* GL_HISTOGRAM_BLUE_SIZE */ + 708, /* GL_HISTOGRAM_ALPHA_SIZE */ + 717, /* GL_HISTOGRAM_LUMINANCE_SIZE */ + 721, /* GL_HISTOGRAM_SINK */ + 1145, /* GL_MINMAX */ + 1147, /* GL_MINMAX_FORMAT */ + 1149, /* GL_MINMAX_SINK */ + 1889, /* GL_TABLE_TOO_LARGE_EXT */ + 2161, /* GL_UNSIGNED_BYTE_3_3_2 */ + 2201, /* GL_UNSIGNED_SHORT_4_4_4_4 */ + 2204, /* GL_UNSIGNED_SHORT_5_5_5_1 */ + 2173, /* GL_UNSIGNED_INT_8_8_8_8 */ + 2164, /* GL_UNSIGNED_INT_10_10_10_2 */ + 1387, /* GL_POLYGON_OFFSET_FILL */ + 1386, /* GL_POLYGON_OFFSET_FACTOR */ + 1385, /* GL_POLYGON_OFFSET_BIAS */ + 1597, /* GL_RESCALE_NORMAL */ 41, /* GL_ALPHA4 */ 43, /* GL_ALPHA8 */ 33, /* GL_ALPHA12 */ 35, /* GL_ALPHA16 */ - 871, /* GL_LUMINANCE4 */ - 877, /* GL_LUMINANCE8 */ - 857, /* GL_LUMINANCE12 */ - 863, /* GL_LUMINANCE16 */ - 872, /* GL_LUMINANCE4_ALPHA4 */ - 875, /* GL_LUMINANCE6_ALPHA2 */ - 880, /* GL_LUMINANCE8_ALPHA8 */ - 860, /* GL_LUMINANCE12_ALPHA4 */ - 858, /* GL_LUMINANCE12_ALPHA12 */ - 866, /* GL_LUMINANCE16_ALPHA16 */ - 746, /* GL_INTENSITY */ - 755, /* GL_INTENSITY4 */ - 757, /* GL_INTENSITY8 */ - 747, /* GL_INTENSITY12 */ - 749, /* GL_INTENSITY16 */ - 1614, /* GL_RGB2_EXT */ - 1620, /* GL_RGB4 */ - 1623, /* GL_RGB5 */ - 1630, /* GL_RGB8 */ - 1600, /* GL_RGB10 */ - 1604, /* GL_RGB12 */ - 1606, /* GL_RGB16 */ - 1650, /* GL_RGBA2 */ - 1657, /* GL_RGBA4 */ - 1626, /* GL_RGB5_A1 */ - 1662, /* GL_RGBA8 */ - 1601, /* GL_RGB10_A2 */ - 1640, /* GL_RGBA12 */ - 1642, /* GL_RGBA16 */ - 2085, /* GL_TEXTURE_RED_SIZE */ - 2053, /* GL_TEXTURE_GREEN_SIZE */ - 1977, /* GL_TEXTURE_BLUE_SIZE */ - 1958, /* GL_TEXTURE_ALPHA_SIZE */ - 2066, /* GL_TEXTURE_LUMINANCE_SIZE */ - 2057, /* GL_TEXTURE_INTENSITY_SIZE */ - 1591, /* GL_REPLACE_EXT */ - 1489, /* GL_PROXY_TEXTURE_1D */ - 1493, /* GL_PROXY_TEXTURE_2D */ - 2093, /* GL_TEXTURE_TOO_LARGE_EXT */ - 2079, /* GL_TEXTURE_PRIORITY */ - 2087, /* GL_TEXTURE_RESIDENT */ - 1961, /* GL_TEXTURE_BINDING_1D */ - 1964, /* GL_TEXTURE_BINDING_2D */ - 1967, /* GL_TEXTURE_BINDING_3D */ - 1297, /* GL_PACK_SKIP_IMAGES */ - 1293, /* GL_PACK_IMAGE_HEIGHT */ - 2149, /* GL_UNPACK_SKIP_IMAGES */ - 2146, /* GL_UNPACK_IMAGE_HEIGHT */ - 1956, /* GL_TEXTURE_3D */ - 1497, /* GL_PROXY_TEXTURE_3D */ - 2037, /* GL_TEXTURE_DEPTH */ - 2096, /* GL_TEXTURE_WRAP_R */ - 1010, /* GL_MAX_3D_TEXTURE_SIZE */ - 2212, /* GL_VERTEX_ARRAY */ - 1223, /* GL_NORMAL_ARRAY */ - 186, /* GL_COLOR_ARRAY */ - 731, /* GL_INDEX_ARRAY */ - 2007, /* GL_TEXTURE_COORD_ARRAY */ - 515, /* GL_EDGE_FLAG_ARRAY */ - 2218, /* GL_VERTEX_ARRAY_SIZE */ - 2220, /* GL_VERTEX_ARRAY_TYPE */ - 2219, /* GL_VERTEX_ARRAY_STRIDE */ - 1228, /* GL_NORMAL_ARRAY_TYPE */ - 1227, /* GL_NORMAL_ARRAY_STRIDE */ - 190, /* GL_COLOR_ARRAY_SIZE */ - 192, /* GL_COLOR_ARRAY_TYPE */ - 191, /* GL_COLOR_ARRAY_STRIDE */ - 736, /* GL_INDEX_ARRAY_TYPE */ - 735, /* GL_INDEX_ARRAY_STRIDE */ - 2011, /* GL_TEXTURE_COORD_ARRAY_SIZE */ - 2013, /* GL_TEXTURE_COORD_ARRAY_TYPE */ - 2012, /* GL_TEXTURE_COORD_ARRAY_STRIDE */ - 519, /* GL_EDGE_FLAG_ARRAY_STRIDE */ - 2217, /* GL_VERTEX_ARRAY_POINTER */ - 1226, /* GL_NORMAL_ARRAY_POINTER */ - 189, /* GL_COLOR_ARRAY_POINTER */ - 734, /* GL_INDEX_ARRAY_POINTER */ - 2010, /* GL_TEXTURE_COORD_ARRAY_POINTER */ - 518, /* GL_EDGE_FLAG_ARRAY_POINTER */ - 1201, /* GL_MULTISAMPLE */ - 1713, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ - 1715, /* GL_SAMPLE_ALPHA_TO_ONE */ - 1720, /* GL_SAMPLE_COVERAGE */ - 1717, /* GL_SAMPLE_BUFFERS */ - 1708, /* GL_SAMPLES */ - 1724, /* GL_SAMPLE_COVERAGE_VALUE */ - 1722, /* GL_SAMPLE_COVERAGE_INVERT */ - 234, /* GL_COLOR_MATRIX */ - 236, /* GL_COLOR_MATRIX_STACK_DEPTH */ - 1022, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */ - 1408, /* GL_POST_COLOR_MATRIX_RED_SCALE */ - 1404, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */ - 1399, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */ - 1395, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */ - 1406, /* GL_POST_COLOR_MATRIX_RED_BIAS */ - 1402, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */ - 1397, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */ - 1393, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */ - 1990, /* GL_TEXTURE_COLOR_TABLE_SGI */ - 1498, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */ - 1992, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */ + 875, /* GL_LUMINANCE4 */ + 881, /* GL_LUMINANCE8 */ + 861, /* GL_LUMINANCE12 */ + 867, /* GL_LUMINANCE16 */ + 876, /* GL_LUMINANCE4_ALPHA4 */ + 879, /* GL_LUMINANCE6_ALPHA2 */ + 884, /* GL_LUMINANCE8_ALPHA8 */ + 864, /* GL_LUMINANCE12_ALPHA4 */ + 862, /* GL_LUMINANCE12_ALPHA12 */ + 870, /* GL_LUMINANCE16_ALPHA16 */ + 750, /* GL_INTENSITY */ + 759, /* GL_INTENSITY4 */ + 761, /* GL_INTENSITY8 */ + 751, /* GL_INTENSITY12 */ + 753, /* GL_INTENSITY16 */ + 1618, /* GL_RGB2_EXT */ + 1624, /* GL_RGB4 */ + 1627, /* GL_RGB5 */ + 1634, /* GL_RGB8 */ + 1604, /* GL_RGB10 */ + 1608, /* GL_RGB12 */ + 1610, /* GL_RGB16 */ + 1654, /* GL_RGBA2 */ + 1661, /* GL_RGBA4 */ + 1630, /* GL_RGB5_A1 */ + 1666, /* GL_RGBA8 */ + 1605, /* GL_RGB10_A2 */ + 1644, /* GL_RGBA12 */ + 1646, /* GL_RGBA16 */ + 2090, /* GL_TEXTURE_RED_SIZE */ + 2058, /* GL_TEXTURE_GREEN_SIZE */ + 1982, /* GL_TEXTURE_BLUE_SIZE */ + 1963, /* GL_TEXTURE_ALPHA_SIZE */ + 2071, /* GL_TEXTURE_LUMINANCE_SIZE */ + 2062, /* GL_TEXTURE_INTENSITY_SIZE */ + 1595, /* GL_REPLACE_EXT */ + 1493, /* GL_PROXY_TEXTURE_1D */ + 1497, /* GL_PROXY_TEXTURE_2D */ + 2098, /* GL_TEXTURE_TOO_LARGE_EXT */ + 2084, /* GL_TEXTURE_PRIORITY */ + 2092, /* GL_TEXTURE_RESIDENT */ + 1966, /* GL_TEXTURE_BINDING_1D */ + 1969, /* GL_TEXTURE_BINDING_2D */ + 1972, /* GL_TEXTURE_BINDING_3D */ + 1301, /* GL_PACK_SKIP_IMAGES */ + 1297, /* GL_PACK_IMAGE_HEIGHT */ + 2154, /* GL_UNPACK_SKIP_IMAGES */ + 2151, /* GL_UNPACK_IMAGE_HEIGHT */ + 1961, /* GL_TEXTURE_3D */ + 1501, /* GL_PROXY_TEXTURE_3D */ + 2042, /* GL_TEXTURE_DEPTH */ + 2101, /* GL_TEXTURE_WRAP_R */ + 1014, /* GL_MAX_3D_TEXTURE_SIZE */ + 2217, /* GL_VERTEX_ARRAY */ + 1227, /* GL_NORMAL_ARRAY */ + 189, /* GL_COLOR_ARRAY */ + 735, /* GL_INDEX_ARRAY */ + 2012, /* GL_TEXTURE_COORD_ARRAY */ + 518, /* GL_EDGE_FLAG_ARRAY */ + 2223, /* GL_VERTEX_ARRAY_SIZE */ + 2225, /* GL_VERTEX_ARRAY_TYPE */ + 2224, /* GL_VERTEX_ARRAY_STRIDE */ + 1232, /* GL_NORMAL_ARRAY_TYPE */ + 1231, /* GL_NORMAL_ARRAY_STRIDE */ + 193, /* GL_COLOR_ARRAY_SIZE */ + 195, /* GL_COLOR_ARRAY_TYPE */ + 194, /* GL_COLOR_ARRAY_STRIDE */ + 740, /* GL_INDEX_ARRAY_TYPE */ + 739, /* GL_INDEX_ARRAY_STRIDE */ + 2016, /* GL_TEXTURE_COORD_ARRAY_SIZE */ + 2018, /* GL_TEXTURE_COORD_ARRAY_TYPE */ + 2017, /* GL_TEXTURE_COORD_ARRAY_STRIDE */ + 522, /* GL_EDGE_FLAG_ARRAY_STRIDE */ + 2222, /* GL_VERTEX_ARRAY_POINTER */ + 1230, /* GL_NORMAL_ARRAY_POINTER */ + 192, /* GL_COLOR_ARRAY_POINTER */ + 738, /* GL_INDEX_ARRAY_POINTER */ + 2015, /* GL_TEXTURE_COORD_ARRAY_POINTER */ + 521, /* GL_EDGE_FLAG_ARRAY_POINTER */ + 1205, /* GL_MULTISAMPLE */ + 1718, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ + 1720, /* GL_SAMPLE_ALPHA_TO_ONE */ + 1725, /* GL_SAMPLE_COVERAGE */ + 1722, /* GL_SAMPLE_BUFFERS */ + 1713, /* GL_SAMPLES */ + 1729, /* GL_SAMPLE_COVERAGE_VALUE */ + 1727, /* GL_SAMPLE_COVERAGE_INVERT */ + 237, /* GL_COLOR_MATRIX */ + 239, /* GL_COLOR_MATRIX_STACK_DEPTH */ + 1026, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */ + 1412, /* GL_POST_COLOR_MATRIX_RED_SCALE */ + 1408, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */ + 1403, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */ + 1399, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */ + 1410, /* GL_POST_COLOR_MATRIX_RED_BIAS */ + 1406, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */ + 1401, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */ + 1397, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */ + 1995, /* GL_TEXTURE_COLOR_TABLE_SGI */ + 1502, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */ + 1997, /* 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 */ - 240, /* GL_COLOR_TABLE */ - 1418, /* GL_POST_CONVOLUTION_COLOR_TABLE */ - 1401, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */ - 1484, /* GL_PROXY_COLOR_TABLE */ - 1488, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */ - 1487, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */ - 264, /* GL_COLOR_TABLE_SCALE */ - 244, /* GL_COLOR_TABLE_BIAS */ - 249, /* GL_COLOR_TABLE_FORMAT */ - 266, /* GL_COLOR_TABLE_WIDTH */ - 261, /* GL_COLOR_TABLE_RED_SIZE */ - 252, /* GL_COLOR_TABLE_GREEN_SIZE */ - 246, /* GL_COLOR_TABLE_BLUE_SIZE */ - 241, /* GL_COLOR_TABLE_ALPHA_SIZE */ - 258, /* GL_COLOR_TABLE_LUMINANCE_SIZE */ - 255, /* GL_COLOR_TABLE_INTENSITY_SIZE */ + 243, /* GL_COLOR_TABLE */ + 1422, /* GL_POST_CONVOLUTION_COLOR_TABLE */ + 1405, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */ + 1488, /* GL_PROXY_COLOR_TABLE */ + 1492, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */ + 1491, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */ + 267, /* GL_COLOR_TABLE_SCALE */ + 247, /* GL_COLOR_TABLE_BIAS */ + 252, /* GL_COLOR_TABLE_FORMAT */ + 269, /* GL_COLOR_TABLE_WIDTH */ + 264, /* GL_COLOR_TABLE_RED_SIZE */ + 255, /* GL_COLOR_TABLE_GREEN_SIZE */ + 249, /* GL_COLOR_TABLE_BLUE_SIZE */ + 244, /* GL_COLOR_TABLE_ALPHA_SIZE */ + 261, /* GL_COLOR_TABLE_LUMINANCE_SIZE */ + 258, /* GL_COLOR_TABLE_INTENSITY_SIZE */ 79, /* GL_BGR */ 80, /* GL_BGRA */ - 1037, /* GL_MAX_ELEMENTS_VERTICES */ - 1036, /* GL_MAX_ELEMENTS_INDICES */ - 2056, /* GL_TEXTURE_INDEX_SIZE_EXT */ - 183, /* GL_CLIP_VOLUME_CLIPPING_HINT_EXT */ - 1364, /* GL_POINT_SIZE_MIN */ - 1360, /* GL_POINT_SIZE_MAX */ - 1349, /* GL_POINT_FADE_THRESHOLD_SIZE */ - 1345, /* GL_POINT_DISTANCE_ATTENUATION */ - 157, /* GL_CLAMP_TO_BORDER */ - 160, /* GL_CLAMP_TO_EDGE */ - 2078, /* GL_TEXTURE_MIN_LOD */ - 2076, /* GL_TEXTURE_MAX_LOD */ - 1960, /* GL_TEXTURE_BASE_LEVEL */ - 2075, /* GL_TEXTURE_MAX_LEVEL */ - 722, /* GL_IGNORE_BORDER_HP */ - 318, /* GL_CONSTANT_BORDER_HP */ - 1592, /* GL_REPLICATE_BORDER_HP */ - 329, /* GL_CONVOLUTION_BORDER_COLOR */ - 1256, /* GL_OCCLUSION_TEST_HP */ - 1257, /* GL_OCCLUSION_TEST_RESULT_HP */ - 823, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */ - 1984, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ - 1986, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ - 1988, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ - 1989, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ - 1987, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ - 1985, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ - 1016, /* GL_MAX_CLIPMAP_DEPTH_SGIX */ - 1017, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */ - 1428, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */ - 1430, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */ - 1427, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */ - 1429, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */ - 2064, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ - 2065, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ - 2063, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ - 678, /* GL_GENERATE_MIPMAP */ - 679, /* GL_GENERATE_MIPMAP_HINT */ - 591, /* GL_FOG_OFFSET_SGIX */ - 592, /* GL_FOG_OFFSET_VALUE_SGIX */ - 1998, /* GL_TEXTURE_COMPARE_SGIX */ - 1997, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ - 2060, /* GL_TEXTURE_LEQUAL_R_SGIX */ - 2052, /* GL_TEXTURE_GEQUAL_R_SGIX */ - 412, /* GL_DEPTH_COMPONENT16 */ - 416, /* GL_DEPTH_COMPONENT24 */ - 420, /* GL_DEPTH_COMPONENT32 */ - 354, /* GL_CULL_VERTEX_EXT */ - 356, /* GL_CULL_VERTEX_OBJECT_POSITION_EXT */ - 355, /* GL_CULL_VERTEX_EYE_POSITION_EXT */ - 2285, /* GL_WRAP_BORDER_SUN */ - 1991, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ - 816, /* GL_LIGHT_MODEL_COLOR_CONTROL */ - 1758, /* GL_SINGLE_COLOR */ - 1742, /* GL_SEPARATE_SPECULAR_COLOR */ - 1753, /* GL_SHARED_TEXTURE_PALETTE_EXT */ - 603, /* GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING */ - 604, /* GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE */ - 615, /* GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE */ - 606, /* GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE */ - 602, /* GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE */ - 601, /* GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE */ - 605, /* GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE */ - 616, /* GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE */ - 633, /* GL_FRAMEBUFFER_DEFAULT */ - 660, /* GL_FRAMEBUFFER_UNDEFINED */ - 428, /* GL_DEPTH_STENCIL_ATTACHMENT */ - 892, /* GL_MAJOR_VERSION */ - 1147, /* GL_MINOR_VERSION */ - 1237, /* GL_NUM_EXTENSIONS */ - 324, /* GL_CONTEXT_FLAGS */ - 730, /* GL_INDEX */ - 406, /* GL_DEPTH_BUFFER */ - 1832, /* GL_STENCIL_BUFFER */ - 295, /* GL_COMPRESSED_RED */ - 296, /* GL_COMPRESSED_RG */ - 2155, /* GL_UNSIGNED_BYTE_2_3_3_REV */ - 2200, /* GL_UNSIGNED_SHORT_5_6_5 */ - 2201, /* GL_UNSIGNED_SHORT_5_6_5_REV */ - 2197, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ - 2194, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ - 2169, /* GL_UNSIGNED_INT_8_8_8_8_REV */ - 2165, /* GL_UNSIGNED_INT_2_10_10_10_REV */ - 2073, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ - 2074, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ - 2072, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ - 1151, /* GL_MIRRORED_REPEAT */ - 1679, /* GL_RGB_S3TC */ - 1622, /* GL_RGB4_S3TC */ - 1675, /* GL_RGBA_S3TC */ - 1661, /* GL_RGBA4_S3TC */ - 1670, /* GL_RGBA_DXT5_S3TC */ - 1658, /* GL_RGBA4_DXT5_S3TC */ - 306, /* GL_COMPRESSED_RGB_S3TC_DXT1_EXT */ - 301, /* GL_COMPRESSED_RGBA_S3TC_DXT1_EXT */ - 302, /* GL_COMPRESSED_RGBA_S3TC_DXT3_EXT */ - 303, /* GL_COMPRESSED_RGBA_S3TC_DXT5_EXT */ - 1213, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */ - 1212, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */ - 824, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */ - 578, /* GL_FOG_COORDINATE_SOURCE */ - 570, /* GL_FOG_COORD */ - 594, /* GL_FRAGMENT_DEPTH */ - 360, /* GL_CURRENT_FOG_COORD */ - 577, /* GL_FOG_COORDINATE_ARRAY_TYPE */ - 576, /* GL_FOG_COORDINATE_ARRAY_STRIDE */ - 575, /* GL_FOG_COORDINATE_ARRAY_POINTER */ - 572, /* GL_FOG_COORDINATE_ARRAY */ - 238, /* GL_COLOR_SUM */ - 381, /* GL_CURRENT_SECONDARY_COLOR */ - 1733, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ - 1735, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ - 1734, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ - 1732, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ - 1729, /* GL_SECONDARY_COLOR_ARRAY */ - 379, /* GL_CURRENT_RASTER_SECONDARY_COLOR */ + 1041, /* GL_MAX_ELEMENTS_VERTICES */ + 1040, /* GL_MAX_ELEMENTS_INDICES */ + 2061, /* GL_TEXTURE_INDEX_SIZE_EXT */ + 186, /* GL_CLIP_VOLUME_CLIPPING_HINT_EXT */ + 1368, /* GL_POINT_SIZE_MIN */ + 1364, /* GL_POINT_SIZE_MAX */ + 1353, /* GL_POINT_FADE_THRESHOLD_SIZE */ + 1349, /* GL_POINT_DISTANCE_ATTENUATION */ + 159, /* GL_CLAMP_TO_BORDER */ + 162, /* GL_CLAMP_TO_EDGE */ + 2083, /* GL_TEXTURE_MIN_LOD */ + 2081, /* GL_TEXTURE_MAX_LOD */ + 1965, /* GL_TEXTURE_BASE_LEVEL */ + 2080, /* GL_TEXTURE_MAX_LEVEL */ + 726, /* GL_IGNORE_BORDER_HP */ + 321, /* GL_CONSTANT_BORDER_HP */ + 1596, /* GL_REPLICATE_BORDER_HP */ + 332, /* GL_CONVOLUTION_BORDER_COLOR */ + 1260, /* GL_OCCLUSION_TEST_HP */ + 1261, /* GL_OCCLUSION_TEST_RESULT_HP */ + 827, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */ + 1989, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ + 1991, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ + 1993, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ + 1994, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ + 1992, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ + 1990, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ + 1020, /* GL_MAX_CLIPMAP_DEPTH_SGIX */ + 1021, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */ + 1432, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */ + 1434, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */ + 1431, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */ + 1433, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */ + 2069, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ + 2070, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ + 2068, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ + 682, /* GL_GENERATE_MIPMAP */ + 683, /* GL_GENERATE_MIPMAP_HINT */ + 595, /* GL_FOG_OFFSET_SGIX */ + 596, /* GL_FOG_OFFSET_VALUE_SGIX */ + 2003, /* GL_TEXTURE_COMPARE_SGIX */ + 2002, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ + 2065, /* GL_TEXTURE_LEQUAL_R_SGIX */ + 2057, /* GL_TEXTURE_GEQUAL_R_SGIX */ + 415, /* GL_DEPTH_COMPONENT16 */ + 419, /* GL_DEPTH_COMPONENT24 */ + 423, /* GL_DEPTH_COMPONENT32 */ + 357, /* GL_CULL_VERTEX_EXT */ + 359, /* GL_CULL_VERTEX_OBJECT_POSITION_EXT */ + 358, /* GL_CULL_VERTEX_EYE_POSITION_EXT */ + 2290, /* GL_WRAP_BORDER_SUN */ + 1996, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ + 820, /* GL_LIGHT_MODEL_COLOR_CONTROL */ + 1763, /* GL_SINGLE_COLOR */ + 1747, /* GL_SEPARATE_SPECULAR_COLOR */ + 1758, /* GL_SHARED_TEXTURE_PALETTE_EXT */ + 607, /* GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING */ + 608, /* GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE */ + 619, /* GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE */ + 610, /* GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE */ + 606, /* GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE */ + 605, /* GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE */ + 609, /* GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE */ + 620, /* GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE */ + 637, /* GL_FRAMEBUFFER_DEFAULT */ + 664, /* GL_FRAMEBUFFER_UNDEFINED */ + 431, /* GL_DEPTH_STENCIL_ATTACHMENT */ + 896, /* GL_MAJOR_VERSION */ + 1151, /* GL_MINOR_VERSION */ + 1241, /* GL_NUM_EXTENSIONS */ + 327, /* GL_CONTEXT_FLAGS */ + 734, /* GL_INDEX */ + 409, /* GL_DEPTH_BUFFER */ + 1837, /* GL_STENCIL_BUFFER */ + 298, /* GL_COMPRESSED_RED */ + 299, /* GL_COMPRESSED_RG */ + 2160, /* GL_UNSIGNED_BYTE_2_3_3_REV */ + 2205, /* GL_UNSIGNED_SHORT_5_6_5 */ + 2206, /* GL_UNSIGNED_SHORT_5_6_5_REV */ + 2202, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ + 2199, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ + 2174, /* GL_UNSIGNED_INT_8_8_8_8_REV */ + 2170, /* GL_UNSIGNED_INT_2_10_10_10_REV */ + 2078, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ + 2079, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ + 2077, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ + 1155, /* GL_MIRRORED_REPEAT */ + 1684, /* GL_RGB_S3TC */ + 1626, /* GL_RGB4_S3TC */ + 1680, /* GL_RGBA_S3TC */ + 1665, /* GL_RGBA4_S3TC */ + 1674, /* GL_RGBA_DXT5_S3TC */ + 1662, /* 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 */ + 1217, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */ + 1216, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */ + 828, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */ + 582, /* GL_FOG_COORDINATE_SOURCE */ + 574, /* GL_FOG_COORD */ + 598, /* GL_FRAGMENT_DEPTH */ + 363, /* GL_CURRENT_FOG_COORD */ + 581, /* GL_FOG_COORDINATE_ARRAY_TYPE */ + 580, /* GL_FOG_COORDINATE_ARRAY_STRIDE */ + 579, /* GL_FOG_COORDINATE_ARRAY_POINTER */ + 576, /* GL_FOG_COORDINATE_ARRAY */ + 241, /* GL_COLOR_SUM */ + 384, /* GL_CURRENT_SECONDARY_COLOR */ + 1738, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ + 1740, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ + 1739, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ + 1737, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ + 1734, /* GL_SECONDARY_COLOR_ARRAY */ + 382, /* GL_CURRENT_RASTER_SECONDARY_COLOR */ 29, /* GL_ALIASED_POINT_SIZE_RANGE */ 28, /* GL_ALIASED_LINE_WIDTH_RANGE */ - 1886, /* GL_TEXTURE0 */ - 1888, /* GL_TEXTURE1 */ - 1910, /* GL_TEXTURE2 */ - 1932, /* GL_TEXTURE3 */ - 1938, /* GL_TEXTURE4 */ - 1940, /* GL_TEXTURE5 */ - 1942, /* GL_TEXTURE6 */ - 1944, /* GL_TEXTURE7 */ - 1946, /* GL_TEXTURE8 */ - 1948, /* GL_TEXTURE9 */ - 1889, /* GL_TEXTURE10 */ - 1891, /* GL_TEXTURE11 */ - 1893, /* GL_TEXTURE12 */ - 1895, /* GL_TEXTURE13 */ - 1897, /* GL_TEXTURE14 */ - 1899, /* GL_TEXTURE15 */ - 1901, /* GL_TEXTURE16 */ - 1903, /* GL_TEXTURE17 */ - 1905, /* GL_TEXTURE18 */ - 1907, /* GL_TEXTURE19 */ - 1911, /* GL_TEXTURE20 */ - 1913, /* GL_TEXTURE21 */ - 1915, /* GL_TEXTURE22 */ - 1917, /* GL_TEXTURE23 */ - 1919, /* GL_TEXTURE24 */ - 1921, /* GL_TEXTURE25 */ - 1923, /* GL_TEXTURE26 */ - 1925, /* GL_TEXTURE27 */ - 1927, /* GL_TEXTURE28 */ - 1929, /* GL_TEXTURE29 */ - 1933, /* GL_TEXTURE30 */ - 1935, /* GL_TEXTURE31 */ + 1891, /* GL_TEXTURE0 */ + 1893, /* GL_TEXTURE1 */ + 1915, /* GL_TEXTURE2 */ + 1937, /* GL_TEXTURE3 */ + 1943, /* GL_TEXTURE4 */ + 1945, /* GL_TEXTURE5 */ + 1947, /* GL_TEXTURE6 */ + 1949, /* GL_TEXTURE7 */ + 1951, /* GL_TEXTURE8 */ + 1953, /* GL_TEXTURE9 */ + 1894, /* GL_TEXTURE10 */ + 1896, /* GL_TEXTURE11 */ + 1898, /* GL_TEXTURE12 */ + 1900, /* GL_TEXTURE13 */ + 1902, /* GL_TEXTURE14 */ + 1904, /* GL_TEXTURE15 */ + 1906, /* GL_TEXTURE16 */ + 1908, /* GL_TEXTURE17 */ + 1910, /* GL_TEXTURE18 */ + 1912, /* GL_TEXTURE19 */ + 1916, /* GL_TEXTURE20 */ + 1918, /* GL_TEXTURE21 */ + 1920, /* GL_TEXTURE22 */ + 1922, /* GL_TEXTURE23 */ + 1924, /* GL_TEXTURE24 */ + 1926, /* GL_TEXTURE25 */ + 1928, /* GL_TEXTURE26 */ + 1930, /* GL_TEXTURE27 */ + 1932, /* GL_TEXTURE28 */ + 1934, /* GL_TEXTURE29 */ + 1938, /* GL_TEXTURE30 */ + 1940, /* GL_TEXTURE31 */ 19, /* GL_ACTIVE_TEXTURE */ - 163, /* GL_CLIENT_ACTIVE_TEXTURE */ - 1112, /* GL_MAX_TEXTURE_UNITS */ - 2128, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ - 2131, /* GL_TRANSPOSE_PROJECTION_MATRIX */ - 2133, /* GL_TRANSPOSE_TEXTURE_MATRIX */ - 2125, /* GL_TRANSPOSE_COLOR_MATRIX */ - 1868, /* GL_SUBTRACT */ - 1094, /* GL_MAX_RENDERBUFFER_SIZE */ - 287, /* GL_COMPRESSED_ALPHA */ - 291, /* GL_COMPRESSED_LUMINANCE */ - 292, /* GL_COMPRESSED_LUMINANCE_ALPHA */ - 289, /* GL_COMPRESSED_INTENSITY */ - 297, /* GL_COMPRESSED_RGB */ - 298, /* GL_COMPRESSED_RGBA */ - 2005, /* GL_TEXTURE_COMPRESSION_HINT */ - 2082, /* GL_TEXTURE_RECTANGLE */ - 1973, /* GL_TEXTURE_BINDING_RECTANGLE */ - 1501, /* GL_PROXY_TEXTURE_RECTANGLE */ - 1091, /* GL_MAX_RECTANGLE_TEXTURE_SIZE */ - 427, /* GL_DEPTH_STENCIL */ - 2161, /* GL_UNSIGNED_INT_24_8 */ - 1107, /* GL_MAX_TEXTURE_LOD_BIAS */ - 2071, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ - 1109, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */ - 2043, /* GL_TEXTURE_FILTER_CONTROL */ - 2061, /* GL_TEXTURE_LOD_BIAS */ - 271, /* GL_COMBINE4 */ - 1100, /* GL_MAX_SHININESS_NV */ - 1101, /* GL_MAX_SPOT_EXPONENT_NV */ - 728, /* GL_INCR_WRAP */ - 392, /* GL_DECR_WRAP */ - 1171, /* GL_MODELVIEW1_ARB */ - 1229, /* GL_NORMAL_MAP */ - 1552, /* GL_REFLECTION_MAP */ - 2015, /* GL_TEXTURE_CUBE_MAP */ - 1970, /* GL_TEXTURE_BINDING_CUBE_MAP */ - 2027, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ - 2017, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ - 2030, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ - 2020, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ - 2033, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ - 2023, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ - 1499, /* GL_PROXY_TEXTURE_CUBE_MAP */ - 1030, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */ - 1207, /* GL_MULTISAMPLE_FILTER_HINT_NV */ - 1442, /* GL_PRIMITIVE_RESTART_NV */ - 1441, /* GL_PRIMITIVE_RESTART_INDEX_NV */ - 586, /* GL_FOG_DISTANCE_MODE_NV */ - 534, /* GL_EYE_RADIAL_NV */ - 533, /* GL_EYE_PLANE_ABSOLUTE_NV */ - 270, /* GL_COMBINE */ - 277, /* GL_COMBINE_RGB */ - 272, /* GL_COMBINE_ALPHA */ - 1680, /* GL_RGB_SCALE */ + 166, /* GL_CLIENT_ACTIVE_TEXTURE */ + 1116, /* GL_MAX_TEXTURE_UNITS */ + 2133, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ + 2136, /* GL_TRANSPOSE_PROJECTION_MATRIX */ + 2138, /* GL_TRANSPOSE_TEXTURE_MATRIX */ + 2130, /* GL_TRANSPOSE_COLOR_MATRIX */ + 1873, /* GL_SUBTRACT */ + 1098, /* 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 */ + 2010, /* GL_TEXTURE_COMPRESSION_HINT */ + 2087, /* GL_TEXTURE_RECTANGLE */ + 1978, /* GL_TEXTURE_BINDING_RECTANGLE */ + 1505, /* GL_PROXY_TEXTURE_RECTANGLE */ + 1095, /* GL_MAX_RECTANGLE_TEXTURE_SIZE */ + 430, /* GL_DEPTH_STENCIL */ + 2166, /* GL_UNSIGNED_INT_24_8 */ + 1111, /* GL_MAX_TEXTURE_LOD_BIAS */ + 2076, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ + 1113, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */ + 2048, /* GL_TEXTURE_FILTER_CONTROL */ + 2066, /* GL_TEXTURE_LOD_BIAS */ + 274, /* GL_COMBINE4 */ + 1104, /* GL_MAX_SHININESS_NV */ + 1105, /* GL_MAX_SPOT_EXPONENT_NV */ + 732, /* GL_INCR_WRAP */ + 395, /* GL_DECR_WRAP */ + 1175, /* GL_MODELVIEW1_ARB */ + 1233, /* GL_NORMAL_MAP */ + 1556, /* GL_REFLECTION_MAP */ + 2020, /* GL_TEXTURE_CUBE_MAP */ + 1975, /* GL_TEXTURE_BINDING_CUBE_MAP */ + 2032, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ + 2022, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ + 2035, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ + 2025, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ + 2038, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ + 2028, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ + 1503, /* GL_PROXY_TEXTURE_CUBE_MAP */ + 1034, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */ + 1211, /* GL_MULTISAMPLE_FILTER_HINT_NV */ + 1446, /* GL_PRIMITIVE_RESTART_NV */ + 1445, /* GL_PRIMITIVE_RESTART_INDEX_NV */ + 590, /* GL_FOG_DISTANCE_MODE_NV */ + 537, /* GL_EYE_RADIAL_NV */ + 536, /* GL_EYE_PLANE_ABSOLUTE_NV */ + 273, /* GL_COMBINE */ + 280, /* GL_COMBINE_RGB */ + 275, /* GL_COMBINE_ALPHA */ + 1685, /* GL_RGB_SCALE */ 25, /* GL_ADD_SIGNED */ - 764, /* GL_INTERPOLATE */ - 313, /* GL_CONSTANT */ - 1434, /* GL_PRIMARY_COLOR */ - 1431, /* GL_PREVIOUS */ - 1773, /* GL_SOURCE0_RGB */ - 1779, /* GL_SOURCE1_RGB */ - 1785, /* GL_SOURCE2_RGB */ - 1789, /* GL_SOURCE3_RGB_NV */ - 1770, /* GL_SOURCE0_ALPHA */ - 1776, /* GL_SOURCE1_ALPHA */ - 1782, /* GL_SOURCE2_ALPHA */ - 1788, /* GL_SOURCE3_ALPHA_NV */ - 1270, /* GL_OPERAND0_RGB */ - 1276, /* GL_OPERAND1_RGB */ - 1282, /* GL_OPERAND2_RGB */ - 1286, /* GL_OPERAND3_RGB_NV */ - 1267, /* GL_OPERAND0_ALPHA */ - 1273, /* GL_OPERAND1_ALPHA */ - 1279, /* GL_OPERAND2_ALPHA */ - 1285, /* GL_OPERAND3_ALPHA_NV */ + 768, /* GL_INTERPOLATE */ + 316, /* GL_CONSTANT */ + 1438, /* GL_PRIMARY_COLOR */ + 1435, /* GL_PREVIOUS */ + 1778, /* GL_SOURCE0_RGB */ + 1784, /* GL_SOURCE1_RGB */ + 1790, /* GL_SOURCE2_RGB */ + 1794, /* GL_SOURCE3_RGB_NV */ + 1775, /* GL_SOURCE0_ALPHA */ + 1781, /* GL_SOURCE1_ALPHA */ + 1787, /* GL_SOURCE2_ALPHA */ + 1793, /* GL_SOURCE3_ALPHA_NV */ + 1274, /* GL_OPERAND0_RGB */ + 1280, /* GL_OPERAND1_RGB */ + 1286, /* GL_OPERAND2_RGB */ + 1290, /* GL_OPERAND3_RGB_NV */ + 1271, /* GL_OPERAND0_ALPHA */ + 1277, /* GL_OPERAND1_ALPHA */ + 1283, /* GL_OPERAND2_ALPHA */ + 1289, /* GL_OPERAND3_ALPHA_NV */ 137, /* GL_BUFFER_OBJECT_APPLE */ - 2213, /* GL_VERTEX_ARRAY_BINDING */ - 2080, /* GL_TEXTURE_RANGE_LENGTH_APPLE */ - 2081, /* GL_TEXTURE_RANGE_POINTER_APPLE */ - 2290, /* GL_YCBCR_422_APPLE */ - 2202, /* GL_UNSIGNED_SHORT_8_8_APPLE */ - 2204, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ - 2092, /* GL_TEXTURE_STORAGE_HINT_APPLE */ - 1859, /* GL_STORAGE_PRIVATE_APPLE */ - 1858, /* GL_STORAGE_CACHED_APPLE */ - 1860, /* GL_STORAGE_SHARED_APPLE */ - 1760, /* GL_SLICE_ACCUM_SUN */ - 1510, /* GL_QUAD_MESH_SUN */ - 2139, /* GL_TRIANGLE_MESH_SUN */ - 2255, /* GL_VERTEX_PROGRAM_ARB */ - 2266, /* GL_VERTEX_STATE_PROGRAM_NV */ - 2240, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ - 2248, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ - 2250, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ - 2252, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ - 383, /* GL_CURRENT_VERTEX_ATTRIB */ - 1455, /* GL_PROGRAM_LENGTH_ARB */ - 1471, /* GL_PROGRAM_STRING_ARB */ - 1194, /* GL_MODELVIEW_PROJECTION_NV */ - 721, /* GL_IDENTITY_NV */ - 796, /* GL_INVERSE_NV */ - 2130, /* GL_TRANSPOSE_NV */ - 797, /* GL_INVERSE_TRANSPOSE_NV */ - 1075, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */ - 1074, /* GL_MAX_PROGRAM_MATRICES_ARB */ - 956, /* GL_MATRIX0_NV */ - 968, /* GL_MATRIX1_NV */ - 980, /* GL_MATRIX2_NV */ - 984, /* GL_MATRIX3_NV */ - 986, /* GL_MATRIX4_NV */ - 988, /* GL_MATRIX5_NV */ - 990, /* GL_MATRIX6_NV */ - 992, /* GL_MATRIX7_NV */ - 366, /* GL_CURRENT_MATRIX_STACK_DEPTH_ARB */ - 363, /* GL_CURRENT_MATRIX_ARB */ - 1468, /* GL_PROGRAM_POINT_SIZE */ - 2261, /* GL_VERTEX_PROGRAM_TWO_SIDE */ - 1467, /* GL_PROGRAM_PARAMETER_NV */ - 2246, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ - 1473, /* GL_PROGRAM_TARGET_NV */ - 1470, /* GL_PROGRAM_RESIDENT_NV */ - 2102, /* GL_TRACK_MATRIX_NV */ - 2103, /* GL_TRACK_MATRIX_TRANSFORM_NV */ - 2256, /* GL_VERTEX_PROGRAM_BINDING_NV */ - 1449, /* GL_PROGRAM_ERROR_POSITION_ARB */ - 408, /* GL_DEPTH_CLAMP */ - 2221, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ - 2228, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ - 2229, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ - 2230, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ - 2231, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ - 2232, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ - 2233, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ - 2234, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ - 2235, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ - 2236, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ - 2222, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ - 2223, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ - 2224, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ - 2225, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ - 2226, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ - 2227, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ - 904, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */ - 911, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */ - 912, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */ - 913, /* GL_MAP1_VERTEX_ATTRIB3_4_NV */ - 914, /* GL_MAP1_VERTEX_ATTRIB4_4_NV */ - 915, /* GL_MAP1_VERTEX_ATTRIB5_4_NV */ - 916, /* GL_MAP1_VERTEX_ATTRIB6_4_NV */ - 917, /* GL_MAP1_VERTEX_ATTRIB7_4_NV */ - 918, /* GL_MAP1_VERTEX_ATTRIB8_4_NV */ - 919, /* GL_MAP1_VERTEX_ATTRIB9_4_NV */ - 905, /* GL_MAP1_VERTEX_ATTRIB10_4_NV */ - 906, /* GL_MAP1_VERTEX_ATTRIB11_4_NV */ - 907, /* GL_MAP1_VERTEX_ATTRIB12_4_NV */ - 908, /* GL_MAP1_VERTEX_ATTRIB13_4_NV */ - 909, /* GL_MAP1_VERTEX_ATTRIB14_4_NV */ - 910, /* GL_MAP1_VERTEX_ATTRIB15_4_NV */ - 931, /* GL_MAP2_VERTEX_ATTRIB0_4_NV */ - 938, /* GL_MAP2_VERTEX_ATTRIB1_4_NV */ - 939, /* GL_MAP2_VERTEX_ATTRIB2_4_NV */ - 940, /* GL_MAP2_VERTEX_ATTRIB3_4_NV */ - 941, /* GL_MAP2_VERTEX_ATTRIB4_4_NV */ - 942, /* GL_MAP2_VERTEX_ATTRIB5_4_NV */ - 943, /* GL_MAP2_VERTEX_ATTRIB6_4_NV */ - 1448, /* GL_PROGRAM_BINDING_ARB */ - 945, /* GL_MAP2_VERTEX_ATTRIB8_4_NV */ - 946, /* GL_MAP2_VERTEX_ATTRIB9_4_NV */ - 932, /* GL_MAP2_VERTEX_ATTRIB10_4_NV */ - 933, /* GL_MAP2_VERTEX_ATTRIB11_4_NV */ - 934, /* GL_MAP2_VERTEX_ATTRIB12_4_NV */ - 935, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */ - 936, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */ - 937, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */ - 2003, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ - 2000, /* GL_TEXTURE_COMPRESSED */ - 1235, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */ - 311, /* GL_COMPRESSED_TEXTURE_FORMATS */ - 1134, /* GL_MAX_VERTEX_UNITS_ARB */ + 2218, /* GL_VERTEX_ARRAY_BINDING */ + 2085, /* GL_TEXTURE_RANGE_LENGTH_APPLE */ + 2086, /* GL_TEXTURE_RANGE_POINTER_APPLE */ + 2295, /* GL_YCBCR_422_APPLE */ + 2207, /* GL_UNSIGNED_SHORT_8_8_APPLE */ + 2209, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ + 2097, /* GL_TEXTURE_STORAGE_HINT_APPLE */ + 1864, /* GL_STORAGE_PRIVATE_APPLE */ + 1863, /* GL_STORAGE_CACHED_APPLE */ + 1865, /* GL_STORAGE_SHARED_APPLE */ + 1765, /* GL_SLICE_ACCUM_SUN */ + 1514, /* GL_QUAD_MESH_SUN */ + 2144, /* GL_TRIANGLE_MESH_SUN */ + 2260, /* GL_VERTEX_PROGRAM_ARB */ + 2271, /* GL_VERTEX_STATE_PROGRAM_NV */ + 2245, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ + 2253, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ + 2255, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ + 2257, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ + 386, /* GL_CURRENT_VERTEX_ATTRIB */ + 1459, /* GL_PROGRAM_LENGTH_ARB */ + 1475, /* GL_PROGRAM_STRING_ARB */ + 1198, /* GL_MODELVIEW_PROJECTION_NV */ + 725, /* GL_IDENTITY_NV */ + 800, /* GL_INVERSE_NV */ + 2135, /* GL_TRANSPOSE_NV */ + 801, /* GL_INVERSE_TRANSPOSE_NV */ + 1079, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */ + 1078, /* GL_MAX_PROGRAM_MATRICES_ARB */ + 960, /* GL_MATRIX0_NV */ + 972, /* GL_MATRIX1_NV */ + 984, /* GL_MATRIX2_NV */ + 988, /* GL_MATRIX3_NV */ + 990, /* GL_MATRIX4_NV */ + 992, /* GL_MATRIX5_NV */ + 994, /* GL_MATRIX6_NV */ + 996, /* GL_MATRIX7_NV */ + 369, /* GL_CURRENT_MATRIX_STACK_DEPTH_ARB */ + 366, /* GL_CURRENT_MATRIX_ARB */ + 1472, /* GL_PROGRAM_POINT_SIZE */ + 2266, /* GL_VERTEX_PROGRAM_TWO_SIDE */ + 1471, /* GL_PROGRAM_PARAMETER_NV */ + 2251, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ + 1477, /* GL_PROGRAM_TARGET_NV */ + 1474, /* GL_PROGRAM_RESIDENT_NV */ + 2107, /* GL_TRACK_MATRIX_NV */ + 2108, /* GL_TRACK_MATRIX_TRANSFORM_NV */ + 2261, /* GL_VERTEX_PROGRAM_BINDING_NV */ + 1453, /* GL_PROGRAM_ERROR_POSITION_ARB */ + 411, /* GL_DEPTH_CLAMP */ + 2226, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ + 2233, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ + 2234, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ + 2235, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ + 2236, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ + 2237, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ + 2238, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ + 2239, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ + 2240, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ + 2241, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ + 2227, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ + 2228, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ + 2229, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ + 2230, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ + 2231, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ + 2232, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ + 908, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */ + 915, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */ + 916, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */ + 917, /* GL_MAP1_VERTEX_ATTRIB3_4_NV */ + 918, /* GL_MAP1_VERTEX_ATTRIB4_4_NV */ + 919, /* GL_MAP1_VERTEX_ATTRIB5_4_NV */ + 920, /* GL_MAP1_VERTEX_ATTRIB6_4_NV */ + 921, /* GL_MAP1_VERTEX_ATTRIB7_4_NV */ + 922, /* GL_MAP1_VERTEX_ATTRIB8_4_NV */ + 923, /* GL_MAP1_VERTEX_ATTRIB9_4_NV */ + 909, /* GL_MAP1_VERTEX_ATTRIB10_4_NV */ + 910, /* GL_MAP1_VERTEX_ATTRIB11_4_NV */ + 911, /* GL_MAP1_VERTEX_ATTRIB12_4_NV */ + 912, /* GL_MAP1_VERTEX_ATTRIB13_4_NV */ + 913, /* GL_MAP1_VERTEX_ATTRIB14_4_NV */ + 914, /* GL_MAP1_VERTEX_ATTRIB15_4_NV */ + 935, /* GL_MAP2_VERTEX_ATTRIB0_4_NV */ + 942, /* GL_MAP2_VERTEX_ATTRIB1_4_NV */ + 943, /* GL_MAP2_VERTEX_ATTRIB2_4_NV */ + 944, /* GL_MAP2_VERTEX_ATTRIB3_4_NV */ + 945, /* GL_MAP2_VERTEX_ATTRIB4_4_NV */ + 946, /* GL_MAP2_VERTEX_ATTRIB5_4_NV */ + 947, /* GL_MAP2_VERTEX_ATTRIB6_4_NV */ + 1452, /* GL_PROGRAM_BINDING_ARB */ + 949, /* GL_MAP2_VERTEX_ATTRIB8_4_NV */ + 950, /* GL_MAP2_VERTEX_ATTRIB9_4_NV */ + 936, /* GL_MAP2_VERTEX_ATTRIB10_4_NV */ + 937, /* GL_MAP2_VERTEX_ATTRIB11_4_NV */ + 938, /* GL_MAP2_VERTEX_ATTRIB12_4_NV */ + 939, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */ + 940, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */ + 941, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */ + 2008, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ + 2005, /* GL_TEXTURE_COMPRESSED */ + 1239, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */ + 314, /* GL_COMPRESSED_TEXTURE_FORMATS */ + 1138, /* GL_MAX_VERTEX_UNITS_ARB */ 23, /* GL_ACTIVE_VERTEX_UNITS_ARB */ - 2284, /* GL_WEIGHT_SUM_UNITY_ARB */ - 2254, /* GL_VERTEX_BLEND_ARB */ - 385, /* GL_CURRENT_WEIGHT_ARB */ - 2282, /* GL_WEIGHT_ARRAY_TYPE_ARB */ - 2280, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ - 2278, /* GL_WEIGHT_ARRAY_SIZE_ARB */ - 2276, /* GL_WEIGHT_ARRAY_POINTER_ARB */ - 2271, /* GL_WEIGHT_ARRAY_ARB */ - 442, /* GL_DOT3_RGB */ - 443, /* GL_DOT3_RGBA */ - 305, /* GL_COMPRESSED_RGB_FXT1_3DFX */ - 300, /* GL_COMPRESSED_RGBA_FXT1_3DFX */ - 1202, /* GL_MULTISAMPLE_3DFX */ - 1718, /* GL_SAMPLE_BUFFERS_3DFX */ - 1709, /* GL_SAMPLES_3DFX */ - 1182, /* GL_MODELVIEW2_ARB */ - 1185, /* GL_MODELVIEW3_ARB */ - 1186, /* GL_MODELVIEW4_ARB */ - 1187, /* GL_MODELVIEW5_ARB */ - 1188, /* GL_MODELVIEW6_ARB */ - 1189, /* GL_MODELVIEW7_ARB */ - 1190, /* GL_MODELVIEW8_ARB */ - 1191, /* GL_MODELVIEW9_ARB */ - 1161, /* GL_MODELVIEW10_ARB */ - 1162, /* GL_MODELVIEW11_ARB */ - 1163, /* GL_MODELVIEW12_ARB */ - 1164, /* GL_MODELVIEW13_ARB */ - 1165, /* GL_MODELVIEW14_ARB */ - 1166, /* GL_MODELVIEW15_ARB */ - 1167, /* GL_MODELVIEW16_ARB */ - 1168, /* GL_MODELVIEW17_ARB */ - 1169, /* GL_MODELVIEW18_ARB */ - 1170, /* GL_MODELVIEW19_ARB */ - 1172, /* GL_MODELVIEW20_ARB */ - 1173, /* GL_MODELVIEW21_ARB */ - 1174, /* GL_MODELVIEW22_ARB */ - 1175, /* GL_MODELVIEW23_ARB */ - 1176, /* GL_MODELVIEW24_ARB */ - 1177, /* GL_MODELVIEW25_ARB */ - 1178, /* GL_MODELVIEW26_ARB */ - 1179, /* GL_MODELVIEW27_ARB */ - 1180, /* GL_MODELVIEW28_ARB */ - 1181, /* GL_MODELVIEW29_ARB */ - 1183, /* GL_MODELVIEW30_ARB */ - 1184, /* GL_MODELVIEW31_ARB */ - 447, /* GL_DOT3_RGB_EXT */ - 445, /* GL_DOT3_RGBA_EXT */ - 1155, /* GL_MIRROR_CLAMP_EXT */ - 1158, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */ - 1197, /* GL_MODULATE_ADD_ATI */ - 1198, /* GL_MODULATE_SIGNED_ADD_ATI */ - 1199, /* GL_MODULATE_SUBTRACT_ATI */ - 2291, /* GL_YCBCR_MESA */ - 1294, /* GL_PACK_INVERT_MESA */ - 388, /* GL_DEBUG_OBJECT_MESA */ - 389, /* GL_DEBUG_PRINT_MESA */ - 387, /* GL_DEBUG_ASSERT_MESA */ + 2289, /* GL_WEIGHT_SUM_UNITY_ARB */ + 2259, /* GL_VERTEX_BLEND_ARB */ + 388, /* GL_CURRENT_WEIGHT_ARB */ + 2287, /* GL_WEIGHT_ARRAY_TYPE_ARB */ + 2285, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ + 2283, /* GL_WEIGHT_ARRAY_SIZE_ARB */ + 2281, /* GL_WEIGHT_ARRAY_POINTER_ARB */ + 2276, /* GL_WEIGHT_ARRAY_ARB */ + 445, /* GL_DOT3_RGB */ + 446, /* GL_DOT3_RGBA */ + 308, /* GL_COMPRESSED_RGB_FXT1_3DFX */ + 303, /* GL_COMPRESSED_RGBA_FXT1_3DFX */ + 1206, /* GL_MULTISAMPLE_3DFX */ + 1723, /* GL_SAMPLE_BUFFERS_3DFX */ + 1714, /* GL_SAMPLES_3DFX */ + 1186, /* GL_MODELVIEW2_ARB */ + 1189, /* GL_MODELVIEW3_ARB */ + 1190, /* GL_MODELVIEW4_ARB */ + 1191, /* GL_MODELVIEW5_ARB */ + 1192, /* GL_MODELVIEW6_ARB */ + 1193, /* GL_MODELVIEW7_ARB */ + 1194, /* GL_MODELVIEW8_ARB */ + 1195, /* GL_MODELVIEW9_ARB */ + 1165, /* GL_MODELVIEW10_ARB */ + 1166, /* GL_MODELVIEW11_ARB */ + 1167, /* GL_MODELVIEW12_ARB */ + 1168, /* GL_MODELVIEW13_ARB */ + 1169, /* GL_MODELVIEW14_ARB */ + 1170, /* GL_MODELVIEW15_ARB */ + 1171, /* GL_MODELVIEW16_ARB */ + 1172, /* GL_MODELVIEW17_ARB */ + 1173, /* GL_MODELVIEW18_ARB */ + 1174, /* GL_MODELVIEW19_ARB */ + 1176, /* GL_MODELVIEW20_ARB */ + 1177, /* GL_MODELVIEW21_ARB */ + 1178, /* GL_MODELVIEW22_ARB */ + 1179, /* GL_MODELVIEW23_ARB */ + 1180, /* GL_MODELVIEW24_ARB */ + 1181, /* GL_MODELVIEW25_ARB */ + 1182, /* GL_MODELVIEW26_ARB */ + 1183, /* GL_MODELVIEW27_ARB */ + 1184, /* GL_MODELVIEW28_ARB */ + 1185, /* GL_MODELVIEW29_ARB */ + 1187, /* GL_MODELVIEW30_ARB */ + 1188, /* GL_MODELVIEW31_ARB */ + 450, /* GL_DOT3_RGB_EXT */ + 448, /* GL_DOT3_RGBA_EXT */ + 1159, /* GL_MIRROR_CLAMP_EXT */ + 1162, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */ + 1201, /* GL_MODULATE_ADD_ATI */ + 1202, /* GL_MODULATE_SIGNED_ADD_ATI */ + 1203, /* GL_MODULATE_SUBTRACT_ATI */ + 2296, /* GL_YCBCR_MESA */ + 1298, /* GL_PACK_INVERT_MESA */ + 391, /* GL_DEBUG_OBJECT_MESA */ + 392, /* GL_DEBUG_PRINT_MESA */ + 390, /* GL_DEBUG_ASSERT_MESA */ 139, /* GL_BUFFER_SIZE */ 141, /* GL_BUFFER_USAGE */ 145, /* GL_BUMP_ROT_MATRIX_ATI */ 146, /* GL_BUMP_ROT_MATRIX_SIZE_ATI */ 144, /* GL_BUMP_NUM_TEX_UNITS_ATI */ 148, /* GL_BUMP_TEX_UNITS_ATI */ - 507, /* GL_DUDV_ATI */ - 506, /* GL_DU8DV8_ATI */ + 510, /* GL_DUDV_ATI */ + 509, /* GL_DU8DV8_ATI */ 143, /* GL_BUMP_ENVMAP_ATI */ 147, /* GL_BUMP_TARGET_ATI */ - 1238, /* GL_NUM_PROGRAM_BINARY_FORMATS_OES */ - 1446, /* GL_PROGRAM_BINARY_FORMATS_OES */ - 1822, /* GL_STENCIL_BACK_FUNC */ - 1820, /* GL_STENCIL_BACK_FAIL */ - 1824, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ - 1826, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ - 595, /* GL_FRAGMENT_PROGRAM_ARB */ - 1444, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */ - 1476, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */ - 1475, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */ - 1458, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ - 1464, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ - 1463, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ - 1064, /* GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB */ - 1089, /* GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB */ - 1088, /* GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB */ - 1077, /* GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ - 1083, /* GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ - 1082, /* GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ - 1652, /* GL_RGBA32F */ - 1615, /* GL_RGB32F */ - 1643, /* GL_RGBA16F */ - 1607, /* GL_RGB16F */ - 1033, /* GL_MAX_DRAW_BUFFERS */ - 451, /* GL_DRAW_BUFFER0 */ - 454, /* GL_DRAW_BUFFER1 */ - 475, /* GL_DRAW_BUFFER2 */ - 478, /* GL_DRAW_BUFFER3 */ - 481, /* GL_DRAW_BUFFER4 */ - 484, /* GL_DRAW_BUFFER5 */ - 487, /* GL_DRAW_BUFFER6 */ - 490, /* GL_DRAW_BUFFER7 */ - 493, /* GL_DRAW_BUFFER8 */ - 496, /* GL_DRAW_BUFFER9 */ - 455, /* GL_DRAW_BUFFER10 */ - 458, /* GL_DRAW_BUFFER11 */ - 461, /* GL_DRAW_BUFFER12 */ - 464, /* GL_DRAW_BUFFER13 */ - 467, /* GL_DRAW_BUFFER14 */ - 470, /* GL_DRAW_BUFFER15 */ + 1242, /* GL_NUM_PROGRAM_BINARY_FORMATS_OES */ + 1450, /* GL_PROGRAM_BINARY_FORMATS_OES */ + 1827, /* GL_STENCIL_BACK_FUNC */ + 1825, /* GL_STENCIL_BACK_FAIL */ + 1829, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ + 1831, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ + 599, /* GL_FRAGMENT_PROGRAM_ARB */ + 1448, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */ + 1480, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */ + 1479, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */ + 1462, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ + 1468, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ + 1467, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ + 1068, /* GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB */ + 1093, /* GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB */ + 1092, /* GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB */ + 1081, /* GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ + 1087, /* GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ + 1086, /* GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ + 1656, /* GL_RGBA32F */ + 1619, /* GL_RGB32F */ + 1647, /* GL_RGBA16F */ + 1611, /* GL_RGB16F */ + 1675, /* GL_RGBA_FLOAT_MODE_ARB */ + 1037, /* GL_MAX_DRAW_BUFFERS */ + 454, /* GL_DRAW_BUFFER0 */ + 457, /* GL_DRAW_BUFFER1 */ + 478, /* GL_DRAW_BUFFER2 */ + 481, /* GL_DRAW_BUFFER3 */ + 484, /* GL_DRAW_BUFFER4 */ + 487, /* GL_DRAW_BUFFER5 */ + 490, /* GL_DRAW_BUFFER6 */ + 493, /* GL_DRAW_BUFFER7 */ + 496, /* GL_DRAW_BUFFER8 */ + 499, /* GL_DRAW_BUFFER9 */ + 458, /* GL_DRAW_BUFFER10 */ + 461, /* GL_DRAW_BUFFER11 */ + 464, /* GL_DRAW_BUFFER12 */ + 467, /* GL_DRAW_BUFFER13 */ + 470, /* GL_DRAW_BUFFER14 */ + 473, /* GL_DRAW_BUFFER15 */ 97, /* GL_BLEND_EQUATION_ALPHA */ - 1007, /* GL_MATRIX_PALETTE_ARB */ - 1057, /* GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB */ - 1060, /* GL_MAX_PALETTE_MATRICES_ARB */ - 369, /* GL_CURRENT_PALETTE_MATRIX_ARB */ - 995, /* GL_MATRIX_INDEX_ARRAY_ARB */ - 364, /* GL_CURRENT_MATRIX_INDEX_ARB */ - 1000, /* GL_MATRIX_INDEX_ARRAY_SIZE_ARB */ - 1004, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */ - 1002, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */ - 998, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */ - 2038, /* GL_TEXTURE_DEPTH_SIZE */ - 435, /* GL_DEPTH_TEXTURE_MODE */ - 1995, /* GL_TEXTURE_COMPARE_MODE */ - 1993, /* GL_TEXTURE_COMPARE_FUNC */ - 281, /* GL_COMPARE_REF_TO_TEXTURE */ - 1371, /* GL_POINT_SPRITE */ - 343, /* GL_COORD_REPLACE */ - 1376, /* GL_POINT_SPRITE_R_MODE_NV */ - 1516, /* GL_QUERY_COUNTER_BITS */ - 372, /* GL_CURRENT_QUERY */ - 1520, /* GL_QUERY_RESULT */ - 1522, /* GL_QUERY_RESULT_AVAILABLE */ - 1126, /* GL_MAX_VERTEX_ATTRIBS */ - 2244, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ - 433, /* GL_DEPTH_STENCIL_TO_RGBA_NV */ - 432, /* GL_DEPTH_STENCIL_TO_BGRA_NV */ - 1103, /* GL_MAX_TEXTURE_COORDS */ - 1105, /* GL_MAX_TEXTURE_IMAGE_UNITS */ - 1451, /* GL_PROGRAM_ERROR_STRING_ARB */ - 1453, /* GL_PROGRAM_FORMAT_ASCII_ARB */ - 1452, /* GL_PROGRAM_FORMAT_ARB */ - 2094, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */ - 405, /* GL_DEPTH_BOUNDS_TEST_EXT */ - 404, /* GL_DEPTH_BOUNDS_EXT */ + 1011, /* GL_MATRIX_PALETTE_ARB */ + 1061, /* GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB */ + 1064, /* GL_MAX_PALETTE_MATRICES_ARB */ + 372, /* GL_CURRENT_PALETTE_MATRIX_ARB */ + 999, /* GL_MATRIX_INDEX_ARRAY_ARB */ + 367, /* GL_CURRENT_MATRIX_INDEX_ARB */ + 1004, /* GL_MATRIX_INDEX_ARRAY_SIZE_ARB */ + 1008, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */ + 1006, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */ + 1002, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */ + 2043, /* GL_TEXTURE_DEPTH_SIZE */ + 438, /* GL_DEPTH_TEXTURE_MODE */ + 2000, /* GL_TEXTURE_COMPARE_MODE */ + 1998, /* GL_TEXTURE_COMPARE_FUNC */ + 284, /* GL_COMPARE_REF_TO_TEXTURE */ + 1375, /* GL_POINT_SPRITE */ + 346, /* GL_COORD_REPLACE */ + 1380, /* GL_POINT_SPRITE_R_MODE_NV */ + 1520, /* GL_QUERY_COUNTER_BITS */ + 375, /* GL_CURRENT_QUERY */ + 1524, /* GL_QUERY_RESULT */ + 1526, /* GL_QUERY_RESULT_AVAILABLE */ + 1130, /* GL_MAX_VERTEX_ATTRIBS */ + 2249, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ + 436, /* GL_DEPTH_STENCIL_TO_RGBA_NV */ + 435, /* GL_DEPTH_STENCIL_TO_BGRA_NV */ + 1107, /* GL_MAX_TEXTURE_COORDS */ + 1109, /* GL_MAX_TEXTURE_IMAGE_UNITS */ + 1455, /* GL_PROGRAM_ERROR_STRING_ARB */ + 1457, /* GL_PROGRAM_FORMAT_ASCII_ARB */ + 1456, /* GL_PROGRAM_FORMAT_ARB */ + 2099, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */ + 408, /* GL_DEPTH_BOUNDS_TEST_EXT */ + 407, /* GL_DEPTH_BOUNDS_EXT */ 61, /* GL_ARRAY_BUFFER */ - 520, /* GL_ELEMENT_ARRAY_BUFFER */ + 523, /* GL_ELEMENT_ARRAY_BUFFER */ 62, /* GL_ARRAY_BUFFER_BINDING */ - 521, /* GL_ELEMENT_ARRAY_BUFFER_BINDING */ - 2215, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ - 1224, /* GL_NORMAL_ARRAY_BUFFER_BINDING */ - 187, /* GL_COLOR_ARRAY_BUFFER_BINDING */ - 732, /* GL_INDEX_ARRAY_BUFFER_BINDING */ - 2008, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ - 516, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING */ - 1730, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ - 573, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING */ - 2272, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ - 2237, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ - 1454, /* GL_PROGRAM_INSTRUCTIONS_ARB */ - 1070, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */ - 1460, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ - 1079, /* GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ - 1474, /* GL_PROGRAM_TEMPORARIES_ARB */ - 1085, /* GL_MAX_PROGRAM_TEMPORARIES_ARB */ - 1462, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */ - 1081, /* GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB */ - 1466, /* GL_PROGRAM_PARAMETERS_ARB */ - 1084, /* GL_MAX_PROGRAM_PARAMETERS_ARB */ - 1461, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */ - 1080, /* GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB */ - 1445, /* GL_PROGRAM_ATTRIBS_ARB */ - 1065, /* GL_MAX_PROGRAM_ATTRIBS_ARB */ - 1459, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */ - 1078, /* GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB */ - 1443, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */ - 1063, /* GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB */ - 1457, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ - 1076, /* GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ - 1071, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */ - 1067, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */ - 1477, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */ - 2127, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ - 1539, /* GL_READ_ONLY */ - 2286, /* GL_WRITE_ONLY */ - 1541, /* GL_READ_WRITE */ + 524, /* GL_ELEMENT_ARRAY_BUFFER_BINDING */ + 2220, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ + 1228, /* GL_NORMAL_ARRAY_BUFFER_BINDING */ + 190, /* GL_COLOR_ARRAY_BUFFER_BINDING */ + 736, /* GL_INDEX_ARRAY_BUFFER_BINDING */ + 2013, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ + 519, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING */ + 1735, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ + 577, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING */ + 2277, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ + 2242, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ + 1458, /* GL_PROGRAM_INSTRUCTIONS_ARB */ + 1074, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */ + 1464, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ + 1083, /* GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ + 1478, /* GL_PROGRAM_TEMPORARIES_ARB */ + 1089, /* GL_MAX_PROGRAM_TEMPORARIES_ARB */ + 1466, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */ + 1085, /* GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB */ + 1470, /* GL_PROGRAM_PARAMETERS_ARB */ + 1088, /* GL_MAX_PROGRAM_PARAMETERS_ARB */ + 1465, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */ + 1084, /* GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB */ + 1449, /* GL_PROGRAM_ATTRIBS_ARB */ + 1069, /* GL_MAX_PROGRAM_ATTRIBS_ARB */ + 1463, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */ + 1082, /* GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB */ + 1447, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */ + 1067, /* GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB */ + 1461, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ + 1080, /* GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ + 1075, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */ + 1071, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */ + 1481, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */ + 2132, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ + 1543, /* GL_READ_ONLY */ + 2291, /* GL_WRITE_ONLY */ + 1545, /* GL_READ_WRITE */ 124, /* GL_BUFFER_ACCESS */ 129, /* GL_BUFFER_MAPPED */ 134, /* GL_BUFFER_MAP_POINTER */ - 2101, /* GL_TIME_ELAPSED_EXT */ - 955, /* GL_MATRIX0_ARB */ - 967, /* GL_MATRIX1_ARB */ - 979, /* GL_MATRIX2_ARB */ - 983, /* GL_MATRIX3_ARB */ - 985, /* GL_MATRIX4_ARB */ - 987, /* GL_MATRIX5_ARB */ - 989, /* GL_MATRIX6_ARB */ - 991, /* GL_MATRIX7_ARB */ - 993, /* GL_MATRIX8_ARB */ - 994, /* GL_MATRIX9_ARB */ - 957, /* GL_MATRIX10_ARB */ - 958, /* GL_MATRIX11_ARB */ - 959, /* GL_MATRIX12_ARB */ - 960, /* GL_MATRIX13_ARB */ - 961, /* GL_MATRIX14_ARB */ - 962, /* GL_MATRIX15_ARB */ - 963, /* GL_MATRIX16_ARB */ - 964, /* GL_MATRIX17_ARB */ - 965, /* GL_MATRIX18_ARB */ - 966, /* GL_MATRIX19_ARB */ - 969, /* GL_MATRIX20_ARB */ - 970, /* GL_MATRIX21_ARB */ - 971, /* GL_MATRIX22_ARB */ - 972, /* GL_MATRIX23_ARB */ - 973, /* GL_MATRIX24_ARB */ - 974, /* GL_MATRIX25_ARB */ - 975, /* GL_MATRIX26_ARB */ - 976, /* GL_MATRIX27_ARB */ - 977, /* GL_MATRIX28_ARB */ - 978, /* GL_MATRIX29_ARB */ - 981, /* GL_MATRIX30_ARB */ - 982, /* GL_MATRIX31_ARB */ - 1863, /* GL_STREAM_DRAW */ - 1865, /* GL_STREAM_READ */ - 1861, /* GL_STREAM_COPY */ - 1812, /* GL_STATIC_DRAW */ - 1814, /* GL_STATIC_READ */ - 1810, /* GL_STATIC_COPY */ - 510, /* GL_DYNAMIC_DRAW */ - 512, /* GL_DYNAMIC_READ */ - 508, /* GL_DYNAMIC_COPY */ - 1334, /* GL_PIXEL_PACK_BUFFER */ - 1338, /* GL_PIXEL_UNPACK_BUFFER */ - 1335, /* GL_PIXEL_PACK_BUFFER_BINDING */ - 1339, /* GL_PIXEL_UNPACK_BUFFER_BINDING */ - 396, /* GL_DEPTH24_STENCIL8 */ - 2090, /* GL_TEXTURE_STENCIL_SIZE */ - 2036, /* GL_TEXTURE_CUBE_MAP_SEAMLESS */ - 1066, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */ - 1069, /* GL_MAX_PROGRAM_IF_DEPTH_NV */ - 1073, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */ - 1072, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */ - 2242, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER */ - 2239, /* GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB */ - 1012, /* GL_MAX_ARRAY_TEXTURE_LAYERS */ - 1149, /* GL_MIN_PROGRAM_TEXEL_OFFSET */ - 1086, /* GL_MAX_PROGRAM_TEXEL_OFFSET */ - 1854, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ + 2106, /* GL_TIME_ELAPSED_EXT */ + 959, /* GL_MATRIX0_ARB */ + 971, /* GL_MATRIX1_ARB */ + 983, /* GL_MATRIX2_ARB */ + 987, /* GL_MATRIX3_ARB */ + 989, /* GL_MATRIX4_ARB */ + 991, /* GL_MATRIX5_ARB */ + 993, /* GL_MATRIX6_ARB */ + 995, /* GL_MATRIX7_ARB */ + 997, /* GL_MATRIX8_ARB */ + 998, /* GL_MATRIX9_ARB */ + 961, /* GL_MATRIX10_ARB */ + 962, /* GL_MATRIX11_ARB */ + 963, /* GL_MATRIX12_ARB */ + 964, /* GL_MATRIX13_ARB */ + 965, /* GL_MATRIX14_ARB */ + 966, /* GL_MATRIX15_ARB */ + 967, /* GL_MATRIX16_ARB */ + 968, /* GL_MATRIX17_ARB */ + 969, /* GL_MATRIX18_ARB */ + 970, /* GL_MATRIX19_ARB */ + 973, /* GL_MATRIX20_ARB */ + 974, /* GL_MATRIX21_ARB */ + 975, /* GL_MATRIX22_ARB */ + 976, /* GL_MATRIX23_ARB */ + 977, /* GL_MATRIX24_ARB */ + 978, /* GL_MATRIX25_ARB */ + 979, /* GL_MATRIX26_ARB */ + 980, /* GL_MATRIX27_ARB */ + 981, /* GL_MATRIX28_ARB */ + 982, /* GL_MATRIX29_ARB */ + 985, /* GL_MATRIX30_ARB */ + 986, /* GL_MATRIX31_ARB */ + 1868, /* GL_STREAM_DRAW */ + 1870, /* GL_STREAM_READ */ + 1866, /* GL_STREAM_COPY */ + 1817, /* GL_STATIC_DRAW */ + 1819, /* GL_STATIC_READ */ + 1815, /* GL_STATIC_COPY */ + 513, /* GL_DYNAMIC_DRAW */ + 515, /* GL_DYNAMIC_READ */ + 511, /* GL_DYNAMIC_COPY */ + 1338, /* GL_PIXEL_PACK_BUFFER */ + 1342, /* GL_PIXEL_UNPACK_BUFFER */ + 1339, /* GL_PIXEL_PACK_BUFFER_BINDING */ + 1343, /* GL_PIXEL_UNPACK_BUFFER_BINDING */ + 399, /* GL_DEPTH24_STENCIL8 */ + 2095, /* GL_TEXTURE_STENCIL_SIZE */ + 2041, /* GL_TEXTURE_CUBE_MAP_SEAMLESS */ + 1070, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */ + 1073, /* GL_MAX_PROGRAM_IF_DEPTH_NV */ + 1077, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */ + 1076, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */ + 2247, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER */ + 2244, /* GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB */ + 1016, /* GL_MAX_ARRAY_TEXTURE_LAYERS */ + 1153, /* GL_MIN_PROGRAM_TEXEL_OFFSET */ + 1090, /* GL_MAX_PROGRAM_TEXEL_OFFSET */ + 1859, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ 18, /* GL_ACTIVE_STENCIL_FACE_EXT */ - 1156, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */ - 1711, /* GL_SAMPLES_PASSED */ - 688, /* GL_GEOMETRY_VERTICES_OUT */ - 682, /* GL_GEOMETRY_INPUT_TYPE */ - 684, /* GL_GEOMETRY_OUTPUT_TYPE */ - 156, /* GL_CLAMP_READ_COLOR */ - 546, /* GL_FIXED_ONLY */ - 1358, /* GL_POINT_SIZE_ARRAY_TYPE_OES */ - 1357, /* GL_POINT_SIZE_ARRAY_STRIDE_OES */ - 1356, /* GL_POINT_SIZE_ARRAY_POINTER_OES */ - 1193, /* GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES */ - 1480, /* GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES */ - 2070, /* GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES */ + 1160, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */ + 1716, /* GL_SAMPLES_PASSED */ + 692, /* GL_GEOMETRY_VERTICES_OUT */ + 686, /* GL_GEOMETRY_INPUT_TYPE */ + 688, /* GL_GEOMETRY_OUTPUT_TYPE */ + 164, /* GL_CLAMP_VERTEX_COLOR_ARB */ + 156, /* GL_CLAMP_FRAGMENT_COLOR_ARB */ + 157, /* GL_CLAMP_READ_COLOR */ + 549, /* GL_FIXED_ONLY */ + 1362, /* GL_POINT_SIZE_ARRAY_TYPE_OES */ + 1361, /* GL_POINT_SIZE_ARRAY_STRIDE_OES */ + 1360, /* GL_POINT_SIZE_ARRAY_POINTER_OES */ + 1197, /* GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES */ + 1484, /* GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES */ + 2075, /* GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES */ 138, /* GL_BUFFER_SERIALIZED_MODIFY_APPLE */ 128, /* GL_BUFFER_FLUSHING_UNMAP_APPLE */ - 1556, /* GL_RELEASED_APPLE */ - 2269, /* GL_VOLATILE_APPLE */ - 1595, /* GL_RETAINED_APPLE */ - 2144, /* GL_UNDEFINED_APPLE */ - 1504, /* GL_PURGEABLE_APPLE */ - 596, /* GL_FRAGMENT_SHADER */ - 2264, /* GL_VERTEX_SHADER */ - 1465, /* GL_PROGRAM_OBJECT_ARB */ - 1747, /* GL_SHADER_OBJECT_ARB */ - 1041, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */ - 1131, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */ - 1122, /* GL_MAX_VARYING_COMPONENTS */ - 1129, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */ - 1024, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */ - 1254, /* GL_OBJECT_TYPE_ARB */ - 1749, /* GL_SHADER_TYPE */ - 561, /* GL_FLOAT_VEC2 */ - 563, /* GL_FLOAT_VEC3 */ - 565, /* GL_FLOAT_VEC4 */ - 784, /* GL_INT_VEC2 */ - 786, /* GL_INT_VEC3 */ - 788, /* GL_INT_VEC4 */ + 1560, /* GL_RELEASED_APPLE */ + 2274, /* GL_VOLATILE_APPLE */ + 1599, /* GL_RETAINED_APPLE */ + 2149, /* GL_UNDEFINED_APPLE */ + 1508, /* GL_PURGEABLE_APPLE */ + 600, /* GL_FRAGMENT_SHADER */ + 2269, /* GL_VERTEX_SHADER */ + 1469, /* GL_PROGRAM_OBJECT_ARB */ + 1752, /* GL_SHADER_OBJECT_ARB */ + 1045, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */ + 1135, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */ + 1126, /* GL_MAX_VARYING_COMPONENTS */ + 1133, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */ + 1028, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */ + 1258, /* GL_OBJECT_TYPE_ARB */ + 1754, /* GL_SHADER_TYPE */ + 565, /* GL_FLOAT_VEC2 */ + 567, /* GL_FLOAT_VEC3 */ + 569, /* GL_FLOAT_VEC4 */ + 788, /* GL_INT_VEC2 */ + 790, /* GL_INT_VEC3 */ + 792, /* GL_INT_VEC4 */ 116, /* GL_BOOL */ 118, /* GL_BOOL_VEC2 */ 120, /* GL_BOOL_VEC3 */ 122, /* GL_BOOL_VEC4 */ - 549, /* GL_FLOAT_MAT2 */ - 553, /* GL_FLOAT_MAT3 */ - 557, /* GL_FLOAT_MAT4 */ - 1687, /* GL_SAMPLER_1D */ - 1693, /* GL_SAMPLER_2D */ - 1701, /* GL_SAMPLER_3D */ - 1705, /* GL_SAMPLER_CUBE */ - 1692, /* GL_SAMPLER_1D_SHADOW */ - 1700, /* GL_SAMPLER_2D_SHADOW */ - 1698, /* GL_SAMPLER_2D_RECT */ - 1699, /* GL_SAMPLER_2D_RECT_SHADOW */ - 551, /* GL_FLOAT_MAT2x3 */ - 552, /* GL_FLOAT_MAT2x4 */ - 555, /* GL_FLOAT_MAT3x2 */ - 556, /* GL_FLOAT_MAT3x4 */ - 559, /* GL_FLOAT_MAT4x2 */ - 560, /* GL_FLOAT_MAT4x3 */ - 394, /* GL_DELETE_STATUS */ - 286, /* GL_COMPILE_STATUS */ - 845, /* GL_LINK_STATUS */ - 2209, /* GL_VALIDATE_STATUS */ - 744, /* GL_INFO_LOG_LENGTH */ + 553, /* GL_FLOAT_MAT2 */ + 557, /* GL_FLOAT_MAT3 */ + 561, /* GL_FLOAT_MAT4 */ + 1692, /* GL_SAMPLER_1D */ + 1698, /* GL_SAMPLER_2D */ + 1706, /* GL_SAMPLER_3D */ + 1710, /* GL_SAMPLER_CUBE */ + 1697, /* GL_SAMPLER_1D_SHADOW */ + 1705, /* GL_SAMPLER_2D_SHADOW */ + 1703, /* GL_SAMPLER_2D_RECT */ + 1704, /* GL_SAMPLER_2D_RECT_SHADOW */ + 555, /* GL_FLOAT_MAT2x3 */ + 556, /* GL_FLOAT_MAT2x4 */ + 559, /* GL_FLOAT_MAT3x2 */ + 560, /* GL_FLOAT_MAT3x4 */ + 563, /* GL_FLOAT_MAT4x2 */ + 564, /* GL_FLOAT_MAT4x3 */ + 397, /* GL_DELETE_STATUS */ + 289, /* GL_COMPILE_STATUS */ + 849, /* GL_LINK_STATUS */ + 2214, /* GL_VALIDATE_STATUS */ + 748, /* GL_INFO_LOG_LENGTH */ 64, /* GL_ATTACHED_SHADERS */ 21, /* GL_ACTIVE_UNIFORMS */ 22, /* GL_ACTIVE_UNIFORM_MAX_LENGTH */ - 1748, /* GL_SHADER_SOURCE_LENGTH */ + 1753, /* GL_SHADER_SOURCE_LENGTH */ 15, /* GL_ACTIVE_ATTRIBUTES */ 16, /* GL_ACTIVE_ATTRIBUTE_MAX_LENGTH */ - 598, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */ - 1751, /* GL_SHADING_LANGUAGE_VERSION */ - 371, /* GL_CURRENT_PROGRAM */ - 1303, /* GL_PALETTE4_RGB8_OES */ - 1305, /* GL_PALETTE4_RGBA8_OES */ - 1301, /* GL_PALETTE4_R5_G6_B5_OES */ - 1304, /* GL_PALETTE4_RGBA4_OES */ - 1302, /* GL_PALETTE4_RGB5_A1_OES */ - 1308, /* GL_PALETTE8_RGB8_OES */ - 1310, /* GL_PALETTE8_RGBA8_OES */ - 1306, /* GL_PALETTE8_R5_G6_B5_OES */ - 1309, /* GL_PALETTE8_RGBA4_OES */ - 1307, /* GL_PALETTE8_RGB5_A1_OES */ - 725, /* GL_IMPLEMENTATION_COLOR_READ_TYPE */ - 723, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT */ - 1355, /* GL_POINT_SIZE_ARRAY_OES */ - 2014, /* GL_TEXTURE_CROP_RECT_OES */ - 996, /* GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES */ - 1354, /* GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES */ - 2192, /* GL_UNSIGNED_NORMALIZED */ - 1951, /* GL_TEXTURE_1D_ARRAY */ - 1490, /* GL_PROXY_TEXTURE_1D_ARRAY */ - 1954, /* GL_TEXTURE_2D_ARRAY */ - 1494, /* GL_PROXY_TEXTURE_2D_ARRAY */ - 1962, /* GL_TEXTURE_BINDING_1D_ARRAY */ - 1965, /* GL_TEXTURE_BINDING_2D_ARRAY */ - 1048, /* GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS */ - 1981, /* GL_TEXTURE_BUFFER */ - 1102, /* GL_MAX_TEXTURE_BUFFER_SIZE */ - 1969, /* GL_TEXTURE_BINDING_BUFFER */ - 1982, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING */ - 1983, /* GL_TEXTURE_BUFFER_FORMAT */ - 1527, /* GL_R11F_G11F_B10F */ - 2158, /* GL_UNSIGNED_INT_10F_11F_11F_REV */ - 1638, /* GL_RGB9_E5 */ - 2167, /* GL_UNSIGNED_INT_5_9_9_9_REV */ - 2088, /* GL_TEXTURE_SHARED_SIZE */ - 1804, /* GL_SRGB */ - 1805, /* GL_SRGB8 */ - 1807, /* GL_SRGB_ALPHA */ - 1806, /* GL_SRGB8_ALPHA8 */ - 1764, /* GL_SLUMINANCE_ALPHA */ - 1763, /* GL_SLUMINANCE8_ALPHA8 */ - 1761, /* GL_SLUMINANCE */ - 1762, /* GL_SLUMINANCE8 */ - 309, /* GL_COMPRESSED_SRGB */ - 310, /* GL_COMPRESSED_SRGB_ALPHA */ - 307, /* GL_COMPRESSED_SLUMINANCE */ - 308, /* GL_COMPRESSED_SLUMINANCE_ALPHA */ - 2123, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH */ - 2112, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE */ - 1120, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS */ - 2121, /* GL_TRANSFORM_FEEDBACK_VARYINGS */ - 2117, /* GL_TRANSFORM_FEEDBACK_BUFFER_START */ - 2115, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE */ - 1437, /* GL_PRIMITIVES_GENERATED */ - 2119, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN */ - 1531, /* GL_RASTERIZER_DISCARD */ - 1116, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS */ - 1118, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS */ - 762, /* GL_INTERLEAVED_ATTRIBS */ - 1740, /* GL_SEPARATE_ATTRIBS */ - 2107, /* GL_TRANSFORM_FEEDBACK_BUFFER */ - 2109, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING */ - 1373, /* GL_POINT_SPRITE_COORD_ORIGIN */ - 853, /* GL_LOWER_LEFT */ - 2206, /* GL_UPPER_LEFT */ - 1828, /* GL_STENCIL_BACK_REF */ - 1829, /* GL_STENCIL_BACK_VALUE_MASK */ - 1830, /* GL_STENCIL_BACK_WRITEMASK */ - 500, /* GL_DRAW_FRAMEBUFFER_BINDING */ - 1561, /* GL_RENDERBUFFER_BINDING */ - 1535, /* GL_READ_FRAMEBUFFER */ - 499, /* GL_DRAW_FRAMEBUFFER */ - 1536, /* GL_READ_FRAMEBUFFER_BINDING */ - 1580, /* GL_RENDERBUFFER_SAMPLES */ - 612, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE */ - 609, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME */ - 624, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL */ - 619, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE */ - 622, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER */ - 630, /* GL_FRAMEBUFFER_COMPLETE */ - 635, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT */ - 650, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT */ - 644, /* GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT */ - 639, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT */ - 645, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT */ - 641, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER */ - 655, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER */ - 661, /* GL_FRAMEBUFFER_UNSUPPORTED */ - 659, /* GL_FRAMEBUFFER_STATUS_ERROR_EXT */ - 1020, /* GL_MAX_COLOR_ATTACHMENTS */ - 193, /* GL_COLOR_ATTACHMENT0 */ - 196, /* GL_COLOR_ATTACHMENT1 */ - 210, /* GL_COLOR_ATTACHMENT2 */ - 212, /* GL_COLOR_ATTACHMENT3 */ - 214, /* GL_COLOR_ATTACHMENT4 */ - 216, /* GL_COLOR_ATTACHMENT5 */ - 218, /* GL_COLOR_ATTACHMENT6 */ - 220, /* GL_COLOR_ATTACHMENT7 */ - 222, /* GL_COLOR_ATTACHMENT8 */ - 224, /* GL_COLOR_ATTACHMENT9 */ - 197, /* GL_COLOR_ATTACHMENT10 */ - 199, /* GL_COLOR_ATTACHMENT11 */ - 201, /* GL_COLOR_ATTACHMENT12 */ - 203, /* GL_COLOR_ATTACHMENT13 */ - 205, /* GL_COLOR_ATTACHMENT14 */ - 207, /* GL_COLOR_ATTACHMENT15 */ - 399, /* GL_DEPTH_ATTACHMENT */ - 1817, /* GL_STENCIL_ATTACHMENT */ - 600, /* GL_FRAMEBUFFER */ - 1558, /* GL_RENDERBUFFER */ - 1584, /* GL_RENDERBUFFER_WIDTH */ - 1571, /* GL_RENDERBUFFER_HEIGHT */ - 1574, /* GL_RENDERBUFFER_INTERNAL_FORMAT */ - 1849, /* GL_STENCIL_INDEX_EXT */ - 1838, /* GL_STENCIL_INDEX1 */ - 1843, /* GL_STENCIL_INDEX4 */ - 1846, /* GL_STENCIL_INDEX8 */ - 1839, /* GL_STENCIL_INDEX16 */ - 1578, /* GL_RENDERBUFFER_RED_SIZE */ - 1569, /* GL_RENDERBUFFER_GREEN_SIZE */ - 1564, /* GL_RENDERBUFFER_BLUE_SIZE */ - 1559, /* GL_RENDERBUFFER_ALPHA_SIZE */ - 1566, /* GL_RENDERBUFFER_DEPTH_SIZE */ - 1582, /* GL_RENDERBUFFER_STENCIL_SIZE */ - 653, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE */ - 1097, /* GL_MAX_SAMPLES */ - 2050, /* GL_TEXTURE_GEN_STR_OES */ - 699, /* GL_HALF_FLOAT_OES */ - 1625, /* GL_RGB565_OES */ - 1655, /* GL_RGBA32UI */ - 1618, /* GL_RGB32UI */ + 602, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */ + 1756, /* GL_SHADING_LANGUAGE_VERSION */ + 374, /* GL_CURRENT_PROGRAM */ + 1307, /* GL_PALETTE4_RGB8_OES */ + 1309, /* GL_PALETTE4_RGBA8_OES */ + 1305, /* GL_PALETTE4_R5_G6_B5_OES */ + 1308, /* GL_PALETTE4_RGBA4_OES */ + 1306, /* GL_PALETTE4_RGB5_A1_OES */ + 1312, /* GL_PALETTE8_RGB8_OES */ + 1314, /* GL_PALETTE8_RGBA8_OES */ + 1310, /* GL_PALETTE8_R5_G6_B5_OES */ + 1313, /* GL_PALETTE8_RGBA4_OES */ + 1311, /* GL_PALETTE8_RGB5_A1_OES */ + 729, /* GL_IMPLEMENTATION_COLOR_READ_TYPE */ + 727, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT */ + 1359, /* GL_POINT_SIZE_ARRAY_OES */ + 2019, /* GL_TEXTURE_CROP_RECT_OES */ + 1000, /* GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES */ + 1358, /* GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES */ + 2197, /* GL_UNSIGNED_NORMALIZED */ + 1956, /* GL_TEXTURE_1D_ARRAY */ + 1494, /* GL_PROXY_TEXTURE_1D_ARRAY */ + 1959, /* GL_TEXTURE_2D_ARRAY */ + 1498, /* GL_PROXY_TEXTURE_2D_ARRAY */ + 1967, /* GL_TEXTURE_BINDING_1D_ARRAY */ + 1970, /* GL_TEXTURE_BINDING_2D_ARRAY */ + 1052, /* GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS */ + 1986, /* GL_TEXTURE_BUFFER */ + 1106, /* GL_MAX_TEXTURE_BUFFER_SIZE */ + 1974, /* GL_TEXTURE_BINDING_BUFFER */ + 1987, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING */ + 1988, /* GL_TEXTURE_BUFFER_FORMAT */ + 1531, /* GL_R11F_G11F_B10F */ + 2163, /* GL_UNSIGNED_INT_10F_11F_11F_REV */ + 1642, /* GL_RGB9_E5 */ + 2172, /* GL_UNSIGNED_INT_5_9_9_9_REV */ + 2093, /* GL_TEXTURE_SHARED_SIZE */ + 1809, /* GL_SRGB */ + 1810, /* GL_SRGB8 */ + 1812, /* GL_SRGB_ALPHA */ + 1811, /* GL_SRGB8_ALPHA8 */ + 1769, /* GL_SLUMINANCE_ALPHA */ + 1768, /* GL_SLUMINANCE8_ALPHA8 */ + 1766, /* GL_SLUMINANCE */ + 1767, /* GL_SLUMINANCE8 */ + 312, /* GL_COMPRESSED_SRGB */ + 313, /* GL_COMPRESSED_SRGB_ALPHA */ + 310, /* GL_COMPRESSED_SLUMINANCE */ + 311, /* GL_COMPRESSED_SLUMINANCE_ALPHA */ + 2128, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH */ + 2117, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE */ + 1124, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS */ + 2126, /* GL_TRANSFORM_FEEDBACK_VARYINGS */ + 2122, /* GL_TRANSFORM_FEEDBACK_BUFFER_START */ + 2120, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE */ + 1441, /* GL_PRIMITIVES_GENERATED */ + 2124, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN */ + 1535, /* GL_RASTERIZER_DISCARD */ + 1120, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS */ + 1122, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS */ + 766, /* GL_INTERLEAVED_ATTRIBS */ + 1745, /* GL_SEPARATE_ATTRIBS */ + 2112, /* GL_TRANSFORM_FEEDBACK_BUFFER */ + 2114, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING */ + 1377, /* GL_POINT_SPRITE_COORD_ORIGIN */ + 857, /* GL_LOWER_LEFT */ + 2211, /* GL_UPPER_LEFT */ + 1833, /* GL_STENCIL_BACK_REF */ + 1834, /* GL_STENCIL_BACK_VALUE_MASK */ + 1835, /* GL_STENCIL_BACK_WRITEMASK */ + 503, /* GL_DRAW_FRAMEBUFFER_BINDING */ + 1565, /* GL_RENDERBUFFER_BINDING */ + 1539, /* GL_READ_FRAMEBUFFER */ + 502, /* GL_DRAW_FRAMEBUFFER */ + 1540, /* GL_READ_FRAMEBUFFER_BINDING */ + 1584, /* GL_RENDERBUFFER_SAMPLES */ + 616, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE */ + 613, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME */ + 628, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL */ + 623, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE */ + 626, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER */ + 634, /* GL_FRAMEBUFFER_COMPLETE */ + 639, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT */ + 654, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT */ + 648, /* GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT */ + 643, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT */ + 649, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT */ + 645, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER */ + 659, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER */ + 665, /* GL_FRAMEBUFFER_UNSUPPORTED */ + 663, /* GL_FRAMEBUFFER_STATUS_ERROR_EXT */ + 1024, /* GL_MAX_COLOR_ATTACHMENTS */ + 196, /* GL_COLOR_ATTACHMENT0 */ + 199, /* GL_COLOR_ATTACHMENT1 */ + 213, /* GL_COLOR_ATTACHMENT2 */ + 215, /* GL_COLOR_ATTACHMENT3 */ + 217, /* GL_COLOR_ATTACHMENT4 */ + 219, /* GL_COLOR_ATTACHMENT5 */ + 221, /* GL_COLOR_ATTACHMENT6 */ + 223, /* GL_COLOR_ATTACHMENT7 */ + 225, /* GL_COLOR_ATTACHMENT8 */ + 227, /* GL_COLOR_ATTACHMENT9 */ + 200, /* GL_COLOR_ATTACHMENT10 */ + 202, /* GL_COLOR_ATTACHMENT11 */ + 204, /* GL_COLOR_ATTACHMENT12 */ + 206, /* GL_COLOR_ATTACHMENT13 */ + 208, /* GL_COLOR_ATTACHMENT14 */ + 210, /* GL_COLOR_ATTACHMENT15 */ + 402, /* GL_DEPTH_ATTACHMENT */ + 1822, /* GL_STENCIL_ATTACHMENT */ + 604, /* GL_FRAMEBUFFER */ + 1562, /* GL_RENDERBUFFER */ + 1588, /* GL_RENDERBUFFER_WIDTH */ + 1575, /* GL_RENDERBUFFER_HEIGHT */ + 1578, /* GL_RENDERBUFFER_INTERNAL_FORMAT */ + 1854, /* GL_STENCIL_INDEX_EXT */ + 1843, /* GL_STENCIL_INDEX1 */ + 1848, /* GL_STENCIL_INDEX4 */ + 1851, /* GL_STENCIL_INDEX8 */ + 1844, /* GL_STENCIL_INDEX16 */ + 1582, /* GL_RENDERBUFFER_RED_SIZE */ + 1573, /* GL_RENDERBUFFER_GREEN_SIZE */ + 1568, /* GL_RENDERBUFFER_BLUE_SIZE */ + 1563, /* GL_RENDERBUFFER_ALPHA_SIZE */ + 1570, /* GL_RENDERBUFFER_DEPTH_SIZE */ + 1586, /* GL_RENDERBUFFER_STENCIL_SIZE */ + 657, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE */ + 1101, /* GL_MAX_SAMPLES */ + 2055, /* GL_TEXTURE_GEN_STR_OES */ + 703, /* GL_HALF_FLOAT_OES */ + 1629, /* GL_RGB565_OES */ + 1659, /* GL_RGBA32UI */ + 1622, /* GL_RGB32UI */ 40, /* GL_ALPHA32UI_EXT */ - 754, /* GL_INTENSITY32UI_EXT */ - 870, /* GL_LUMINANCE32UI_EXT */ - 887, /* GL_LUMINANCE_ALPHA32UI_EXT */ - 1646, /* GL_RGBA16UI */ - 1610, /* GL_RGB16UI */ + 758, /* GL_INTENSITY32UI_EXT */ + 874, /* GL_LUMINANCE32UI_EXT */ + 891, /* GL_LUMINANCE_ALPHA32UI_EXT */ + 1650, /* GL_RGBA16UI */ + 1614, /* GL_RGB16UI */ 37, /* GL_ALPHA16UI_EXT */ - 751, /* GL_INTENSITY16UI_EXT */ - 865, /* GL_LUMINANCE16UI_EXT */ - 885, /* GL_LUMINANCE_ALPHA16UI_EXT */ - 1665, /* GL_RGBA8UI */ - 1633, /* GL_RGB8UI */ + 755, /* GL_INTENSITY16UI_EXT */ + 869, /* GL_LUMINANCE16UI_EXT */ + 889, /* GL_LUMINANCE_ALPHA16UI_EXT */ + 1669, /* GL_RGBA8UI */ + 1637, /* GL_RGB8UI */ 45, /* GL_ALPHA8UI_EXT */ - 759, /* GL_INTENSITY8UI_EXT */ - 879, /* GL_LUMINANCE8UI_EXT */ - 889, /* GL_LUMINANCE_ALPHA8UI_EXT */ - 1653, /* GL_RGBA32I */ - 1616, /* GL_RGB32I */ + 763, /* GL_INTENSITY8UI_EXT */ + 883, /* GL_LUMINANCE8UI_EXT */ + 893, /* GL_LUMINANCE_ALPHA8UI_EXT */ + 1657, /* GL_RGBA32I */ + 1620, /* GL_RGB32I */ 39, /* GL_ALPHA32I_EXT */ - 753, /* GL_INTENSITY32I_EXT */ - 869, /* GL_LUMINANCE32I_EXT */ - 886, /* GL_LUMINANCE_ALPHA32I_EXT */ - 1644, /* GL_RGBA16I */ - 1608, /* GL_RGB16I */ + 757, /* GL_INTENSITY32I_EXT */ + 873, /* GL_LUMINANCE32I_EXT */ + 890, /* GL_LUMINANCE_ALPHA32I_EXT */ + 1648, /* GL_RGBA16I */ + 1612, /* GL_RGB16I */ 36, /* GL_ALPHA16I_EXT */ - 750, /* GL_INTENSITY16I_EXT */ - 864, /* GL_LUMINANCE16I_EXT */ - 884, /* GL_LUMINANCE_ALPHA16I_EXT */ - 1663, /* GL_RGBA8I */ - 1631, /* GL_RGB8I */ + 754, /* GL_INTENSITY16I_EXT */ + 868, /* GL_LUMINANCE16I_EXT */ + 888, /* GL_LUMINANCE_ALPHA16I_EXT */ + 1667, /* GL_RGBA8I */ + 1635, /* GL_RGB8I */ 44, /* GL_ALPHA8I_EXT */ - 758, /* GL_INTENSITY8I_EXT */ - 878, /* GL_LUMINANCE8I_EXT */ - 888, /* GL_LUMINANCE_ALPHA8I_EXT */ - 1548, /* GL_RED_INTEGER */ - 695, /* GL_GREEN_INTEGER */ + 762, /* GL_INTENSITY8I_EXT */ + 882, /* GL_LUMINANCE8I_EXT */ + 892, /* GL_LUMINANCE_ALPHA8I_EXT */ + 1552, /* GL_RED_INTEGER */ + 699, /* GL_GREEN_INTEGER */ 113, /* GL_BLUE_INTEGER */ 49, /* GL_ALPHA_INTEGER_EXT */ - 1677, /* GL_RGB_INTEGER */ - 1671, /* GL_RGBA_INTEGER */ + 1682, /* GL_RGB_INTEGER */ + 1676, /* GL_RGBA_INTEGER */ 84, /* GL_BGR_INTEGER */ 82, /* GL_BGRA_INTEGER */ - 891, /* GL_LUMINANCE_INTEGER_EXT */ - 890, /* GL_LUMINANCE_ALPHA_INTEGER_EXT */ - 1673, /* GL_RGBA_INTEGER_MODE_EXT */ - 607, /* GL_FRAMEBUFFER_ATTACHMENT_LAYERED */ - 648, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS */ - 647, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB */ - 1688, /* GL_SAMPLER_1D_ARRAY */ - 1694, /* GL_SAMPLER_2D_ARRAY */ - 1703, /* GL_SAMPLER_BUFFER */ - 1690, /* GL_SAMPLER_1D_ARRAY_SHADOW */ - 1696, /* GL_SAMPLER_2D_ARRAY_SHADOW */ - 1706, /* GL_SAMPLER_CUBE_SHADOW */ - 2186, /* GL_UNSIGNED_INT_VEC2 */ - 2188, /* GL_UNSIGNED_INT_VEC3 */ - 2190, /* GL_UNSIGNED_INT_VEC4 */ - 768, /* GL_INT_SAMPLER_1D */ - 772, /* GL_INT_SAMPLER_2D */ - 778, /* GL_INT_SAMPLER_3D */ - 782, /* GL_INT_SAMPLER_CUBE */ - 776, /* GL_INT_SAMPLER_2D_RECT */ - 769, /* GL_INT_SAMPLER_1D_ARRAY */ - 773, /* GL_INT_SAMPLER_2D_ARRAY */ - 780, /* GL_INT_SAMPLER_BUFFER */ - 2170, /* GL_UNSIGNED_INT_SAMPLER_1D */ - 2174, /* GL_UNSIGNED_INT_SAMPLER_2D */ - 2180, /* GL_UNSIGNED_INT_SAMPLER_3D */ - 2184, /* GL_UNSIGNED_INT_SAMPLER_CUBE */ - 2178, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT */ - 2171, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY */ - 2175, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY */ - 2182, /* GL_UNSIGNED_INT_SAMPLER_BUFFER */ - 686, /* GL_GEOMETRY_SHADER */ - 689, /* GL_GEOMETRY_VERTICES_OUT_ARB */ - 683, /* GL_GEOMETRY_INPUT_TYPE_ARB */ - 685, /* GL_GEOMETRY_OUTPUT_TYPE_ARB */ - 1054, /* GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB */ - 1136, /* GL_MAX_VERTEX_VARYING_COMPONENTS_ARB */ - 1052, /* GL_MAX_GEOMETRY_UNIFORM_COMPONENTS */ - 1046, /* GL_MAX_GEOMETRY_OUTPUT_VERTICES */ - 1050, /* GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS */ - 854, /* GL_LOW_FLOAT */ - 1138, /* GL_MEDIUM_FLOAT */ - 700, /* GL_HIGH_FLOAT */ - 855, /* GL_LOW_INT */ - 1139, /* GL_MEDIUM_INT */ - 701, /* GL_HIGH_INT */ - 2160, /* GL_UNSIGNED_INT_10_10_10_2_OES */ - 767, /* GL_INT_10_10_10_2_OES */ - 1745, /* GL_SHADER_BINARY_FORMATS */ - 1239, /* GL_NUM_SHADER_BINARY_FORMATS */ - 1746, /* GL_SHADER_COMPILER */ - 1133, /* GL_MAX_VERTEX_UNIFORM_VECTORS */ - 1125, /* GL_MAX_VARYING_VECTORS */ - 1043, /* GL_MAX_FRAGMENT_UNIFORM_VECTORS */ - 1524, /* GL_QUERY_WAIT */ - 1518, /* GL_QUERY_NO_WAIT */ - 1514, /* GL_QUERY_BY_REGION_WAIT */ - 1512, /* GL_QUERY_BY_REGION_NO_WAIT */ - 2105, /* GL_TRANSFORM_FEEDBACK */ - 2114, /* GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED */ - 2108, /* GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE */ - 2106, /* GL_TRANSFORM_FEEDBACK_BINDING */ - 1508, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION */ - 542, /* GL_FIRST_VERTEX_CONVENTION */ - 800, /* GL_LAST_VERTEX_CONVENTION */ - 1482, /* GL_PROVOKING_VERTEX */ - 350, /* GL_COPY_READ_BUFFER */ - 351, /* GL_COPY_WRITE_BUFFER */ - 1551, /* GL_RED_SNORM */ - 1684, /* GL_RG_SNORM */ - 1683, /* GL_RGB_SNORM */ - 1676, /* GL_RGBA_SNORM */ - 1530, /* GL_R8_SNORM */ - 1598, /* GL_RG8_SNORM */ - 1637, /* GL_RGB8_SNORM */ - 1669, /* GL_RGBA8_SNORM */ - 1528, /* GL_R16_SNORM */ - 1597, /* GL_RG16_SNORM */ - 1613, /* GL_RGB16_SNORM */ - 1649, /* GL_RGBA16_SNORM */ - 1757, /* GL_SIGNED_NORMALIZED */ - 1439, /* GL_PRIMITIVE_RESTART */ - 1440, /* GL_PRIMITIVE_RESTART_INDEX */ - 1099, /* GL_MAX_SERVER_WAIT_TIMEOUT */ - 1253, /* GL_OBJECT_TYPE */ - 1870, /* GL_SYNC_CONDITION */ - 1875, /* GL_SYNC_STATUS */ - 1872, /* GL_SYNC_FLAGS */ - 1871, /* GL_SYNC_FENCE */ - 1874, /* GL_SYNC_GPU_COMMANDS_COMPLETE */ - 2153, /* GL_UNSIGNALED */ - 1756, /* GL_SIGNALED */ + 895, /* GL_LUMINANCE_INTEGER_EXT */ + 894, /* GL_LUMINANCE_ALPHA_INTEGER_EXT */ + 1678, /* GL_RGBA_INTEGER_MODE_EXT */ + 611, /* GL_FRAMEBUFFER_ATTACHMENT_LAYERED */ + 652, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS */ + 651, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB */ + 1693, /* GL_SAMPLER_1D_ARRAY */ + 1699, /* GL_SAMPLER_2D_ARRAY */ + 1708, /* GL_SAMPLER_BUFFER */ + 1695, /* GL_SAMPLER_1D_ARRAY_SHADOW */ + 1701, /* GL_SAMPLER_2D_ARRAY_SHADOW */ + 1711, /* GL_SAMPLER_CUBE_SHADOW */ + 2191, /* GL_UNSIGNED_INT_VEC2 */ + 2193, /* GL_UNSIGNED_INT_VEC3 */ + 2195, /* GL_UNSIGNED_INT_VEC4 */ + 772, /* GL_INT_SAMPLER_1D */ + 776, /* GL_INT_SAMPLER_2D */ + 782, /* GL_INT_SAMPLER_3D */ + 786, /* GL_INT_SAMPLER_CUBE */ + 780, /* GL_INT_SAMPLER_2D_RECT */ + 773, /* GL_INT_SAMPLER_1D_ARRAY */ + 777, /* GL_INT_SAMPLER_2D_ARRAY */ + 784, /* GL_INT_SAMPLER_BUFFER */ + 2175, /* GL_UNSIGNED_INT_SAMPLER_1D */ + 2179, /* GL_UNSIGNED_INT_SAMPLER_2D */ + 2185, /* GL_UNSIGNED_INT_SAMPLER_3D */ + 2189, /* GL_UNSIGNED_INT_SAMPLER_CUBE */ + 2183, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT */ + 2176, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY */ + 2180, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY */ + 2187, /* GL_UNSIGNED_INT_SAMPLER_BUFFER */ + 690, /* GL_GEOMETRY_SHADER */ + 693, /* GL_GEOMETRY_VERTICES_OUT_ARB */ + 687, /* GL_GEOMETRY_INPUT_TYPE_ARB */ + 689, /* GL_GEOMETRY_OUTPUT_TYPE_ARB */ + 1058, /* GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB */ + 1140, /* GL_MAX_VERTEX_VARYING_COMPONENTS_ARB */ + 1056, /* GL_MAX_GEOMETRY_UNIFORM_COMPONENTS */ + 1050, /* GL_MAX_GEOMETRY_OUTPUT_VERTICES */ + 1054, /* GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS */ + 858, /* GL_LOW_FLOAT */ + 1142, /* GL_MEDIUM_FLOAT */ + 704, /* GL_HIGH_FLOAT */ + 859, /* GL_LOW_INT */ + 1143, /* GL_MEDIUM_INT */ + 705, /* GL_HIGH_INT */ + 2165, /* GL_UNSIGNED_INT_10_10_10_2_OES */ + 771, /* GL_INT_10_10_10_2_OES */ + 1750, /* GL_SHADER_BINARY_FORMATS */ + 1243, /* GL_NUM_SHADER_BINARY_FORMATS */ + 1751, /* GL_SHADER_COMPILER */ + 1137, /* GL_MAX_VERTEX_UNIFORM_VECTORS */ + 1129, /* GL_MAX_VARYING_VECTORS */ + 1047, /* GL_MAX_FRAGMENT_UNIFORM_VECTORS */ + 1528, /* GL_QUERY_WAIT */ + 1522, /* GL_QUERY_NO_WAIT */ + 1518, /* GL_QUERY_BY_REGION_WAIT */ + 1516, /* GL_QUERY_BY_REGION_NO_WAIT */ + 2110, /* GL_TRANSFORM_FEEDBACK */ + 2119, /* GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED */ + 2113, /* GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE */ + 2111, /* GL_TRANSFORM_FEEDBACK_BINDING */ + 1512, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION */ + 545, /* GL_FIRST_VERTEX_CONVENTION */ + 804, /* GL_LAST_VERTEX_CONVENTION */ + 1486, /* GL_PROVOKING_VERTEX */ + 353, /* GL_COPY_READ_BUFFER */ + 354, /* GL_COPY_WRITE_BUFFER */ + 1555, /* GL_RED_SNORM */ + 1689, /* GL_RG_SNORM */ + 1688, /* GL_RGB_SNORM */ + 1681, /* GL_RGBA_SNORM */ + 1534, /* GL_R8_SNORM */ + 1602, /* GL_RG8_SNORM */ + 1641, /* GL_RGB8_SNORM */ + 1673, /* GL_RGBA8_SNORM */ + 1532, /* GL_R16_SNORM */ + 1601, /* GL_RG16_SNORM */ + 1617, /* GL_RGB16_SNORM */ + 1653, /* GL_RGBA16_SNORM */ + 1762, /* GL_SIGNED_NORMALIZED */ + 1443, /* GL_PRIMITIVE_RESTART */ + 1444, /* GL_PRIMITIVE_RESTART_INDEX */ + 1103, /* GL_MAX_SERVER_WAIT_TIMEOUT */ + 1257, /* GL_OBJECT_TYPE */ + 1875, /* GL_SYNC_CONDITION */ + 1880, /* GL_SYNC_STATUS */ + 1877, /* GL_SYNC_FLAGS */ + 1876, /* GL_SYNC_FENCE */ + 1879, /* GL_SYNC_GPU_COMMANDS_COMPLETE */ + 2158, /* GL_UNSIGNALED */ + 1761, /* GL_SIGNALED */ 54, /* GL_ALREADY_SIGNALED */ - 2100, /* GL_TIMEOUT_EXPIRED */ - 312, /* GL_CONDITION_SATISFIED */ - 2270, /* GL_WAIT_FAILED */ + 2105, /* GL_TIMEOUT_EXPIRED */ + 315, /* GL_CONDITION_SATISFIED */ + 2275, /* GL_WAIT_FAILED */ 126, /* GL_BUFFER_ACCESS_FLAGS */ 132, /* GL_BUFFER_MAP_LENGTH */ 133, /* GL_BUFFER_MAP_OFFSET */ - 1128, /* GL_MAX_VERTEX_OUTPUT_COMPONENTS */ - 1044, /* GL_MAX_GEOMETRY_INPUT_COMPONENTS */ - 1045, /* GL_MAX_GEOMETRY_OUTPUT_COMPONENTS */ - 1040, /* GL_MAX_FRAGMENT_INPUT_COMPONENTS */ - 326, /* GL_CONTEXT_PROFILE_MASK */ - 527, /* GL_EVAL_BIT */ - 1533, /* GL_RASTER_POSITION_UNCLIPPED_IBM */ - 847, /* GL_LIST_BIT */ - 1976, /* GL_TEXTURE_BIT */ - 1726, /* GL_SCISSOR_BIT */ + 1132, /* GL_MAX_VERTEX_OUTPUT_COMPONENTS */ + 1048, /* GL_MAX_GEOMETRY_INPUT_COMPONENTS */ + 1049, /* GL_MAX_GEOMETRY_OUTPUT_COMPONENTS */ + 1044, /* GL_MAX_FRAGMENT_INPUT_COMPONENTS */ + 329, /* GL_CONTEXT_PROFILE_MASK */ + 530, /* GL_EVAL_BIT */ + 1537, /* GL_RASTER_POSITION_UNCLIPPED_IBM */ + 851, /* GL_LIST_BIT */ + 1981, /* GL_TEXTURE_BIT */ + 1731, /* GL_SCISSOR_BIT */ 30, /* GL_ALL_ATTRIB_BITS */ - 1204, /* GL_MULTISAMPLE_BIT */ + 1208, /* GL_MULTISAMPLE_BIT */ 31, /* GL_ALL_CLIENT_ATTRIB_BITS */ }; diff --git a/src/mesa/main/glapidispatch.h b/src/mesa/main/glapidispatch.h index b29c7cb78e6..e733a8d76d3 100644 --- a/src/mesa/main/glapidispatch.h +++ b/src/mesa/main/glapidispatch.h @@ -59,7 +59,7 @@ } while(0) /* total number of offsets below */ -#define _gloffset_COUNT 892 +#define _gloffset_COUNT 893 #define _gloffset_NewList 0 #define _gloffset_EndList 1 @@ -636,330 +636,331 @@ #define _gloffset_GetActiveAttribARB 569 #define _gloffset_GetAttribLocationARB 570 #define _gloffset_DrawBuffersARB 571 -#define _gloffset_DrawArraysInstancedARB 572 -#define _gloffset_DrawElementsInstancedARB 573 -#define _gloffset_RenderbufferStorageMultisample 574 -#define _gloffset_FramebufferTextureARB 575 -#define _gloffset_FramebufferTextureFaceARB 576 -#define _gloffset_ProgramParameteriARB 577 -#define _gloffset_VertexAttribDivisorARB 578 -#define _gloffset_FlushMappedBufferRange 579 -#define _gloffset_MapBufferRange 580 -#define _gloffset_BindVertexArray 581 -#define _gloffset_GenVertexArrays 582 -#define _gloffset_CopyBufferSubData 583 -#define _gloffset_ClientWaitSync 584 -#define _gloffset_DeleteSync 585 -#define _gloffset_FenceSync 586 -#define _gloffset_GetInteger64v 587 -#define _gloffset_GetSynciv 588 -#define _gloffset_IsSync 589 -#define _gloffset_WaitSync 590 -#define _gloffset_DrawElementsBaseVertex 591 -#define _gloffset_DrawRangeElementsBaseVertex 592 -#define _gloffset_MultiDrawElementsBaseVertex 593 -#define _gloffset_BlendEquationSeparateiARB 594 -#define _gloffset_BlendEquationiARB 595 -#define _gloffset_BlendFuncSeparateiARB 596 -#define _gloffset_BlendFunciARB 597 -#define _gloffset_BindTransformFeedback 598 -#define _gloffset_DeleteTransformFeedbacks 599 -#define _gloffset_DrawTransformFeedback 600 -#define _gloffset_GenTransformFeedbacks 601 -#define _gloffset_IsTransformFeedback 602 -#define _gloffset_PauseTransformFeedback 603 -#define _gloffset_ResumeTransformFeedback 604 -#define _gloffset_ClearDepthf 605 -#define _gloffset_DepthRangef 606 -#define _gloffset_GetShaderPrecisionFormat 607 -#define _gloffset_ReleaseShaderCompiler 608 -#define _gloffset_ShaderBinary 609 -#define _gloffset_PolygonOffsetEXT 610 -#define _gloffset_GetPixelTexGenParameterfvSGIS 611 -#define _gloffset_GetPixelTexGenParameterivSGIS 612 -#define _gloffset_PixelTexGenParameterfSGIS 613 -#define _gloffset_PixelTexGenParameterfvSGIS 614 -#define _gloffset_PixelTexGenParameteriSGIS 615 -#define _gloffset_PixelTexGenParameterivSGIS 616 -#define _gloffset_SampleMaskSGIS 617 -#define _gloffset_SamplePatternSGIS 618 -#define _gloffset_ColorPointerEXT 619 -#define _gloffset_EdgeFlagPointerEXT 620 -#define _gloffset_IndexPointerEXT 621 -#define _gloffset_NormalPointerEXT 622 -#define _gloffset_TexCoordPointerEXT 623 -#define _gloffset_VertexPointerEXT 624 -#define _gloffset_PointParameterfEXT 625 -#define _gloffset_PointParameterfvEXT 626 -#define _gloffset_LockArraysEXT 627 -#define _gloffset_UnlockArraysEXT 628 -#define _gloffset_SecondaryColor3bEXT 629 -#define _gloffset_SecondaryColor3bvEXT 630 -#define _gloffset_SecondaryColor3dEXT 631 -#define _gloffset_SecondaryColor3dvEXT 632 -#define _gloffset_SecondaryColor3fEXT 633 -#define _gloffset_SecondaryColor3fvEXT 634 -#define _gloffset_SecondaryColor3iEXT 635 -#define _gloffset_SecondaryColor3ivEXT 636 -#define _gloffset_SecondaryColor3sEXT 637 -#define _gloffset_SecondaryColor3svEXT 638 -#define _gloffset_SecondaryColor3ubEXT 639 -#define _gloffset_SecondaryColor3ubvEXT 640 -#define _gloffset_SecondaryColor3uiEXT 641 -#define _gloffset_SecondaryColor3uivEXT 642 -#define _gloffset_SecondaryColor3usEXT 643 -#define _gloffset_SecondaryColor3usvEXT 644 -#define _gloffset_SecondaryColorPointerEXT 645 -#define _gloffset_MultiDrawArraysEXT 646 -#define _gloffset_MultiDrawElementsEXT 647 -#define _gloffset_FogCoordPointerEXT 648 -#define _gloffset_FogCoorddEXT 649 -#define _gloffset_FogCoorddvEXT 650 -#define _gloffset_FogCoordfEXT 651 -#define _gloffset_FogCoordfvEXT 652 -#define _gloffset_PixelTexGenSGIX 653 -#define _gloffset_BlendFuncSeparateEXT 654 -#define _gloffset_FlushVertexArrayRangeNV 655 -#define _gloffset_VertexArrayRangeNV 656 -#define _gloffset_CombinerInputNV 657 -#define _gloffset_CombinerOutputNV 658 -#define _gloffset_CombinerParameterfNV 659 -#define _gloffset_CombinerParameterfvNV 660 -#define _gloffset_CombinerParameteriNV 661 -#define _gloffset_CombinerParameterivNV 662 -#define _gloffset_FinalCombinerInputNV 663 -#define _gloffset_GetCombinerInputParameterfvNV 664 -#define _gloffset_GetCombinerInputParameterivNV 665 -#define _gloffset_GetCombinerOutputParameterfvNV 666 -#define _gloffset_GetCombinerOutputParameterivNV 667 -#define _gloffset_GetFinalCombinerInputParameterfvNV 668 -#define _gloffset_GetFinalCombinerInputParameterivNV 669 -#define _gloffset_ResizeBuffersMESA 670 -#define _gloffset_WindowPos2dMESA 671 -#define _gloffset_WindowPos2dvMESA 672 -#define _gloffset_WindowPos2fMESA 673 -#define _gloffset_WindowPos2fvMESA 674 -#define _gloffset_WindowPos2iMESA 675 -#define _gloffset_WindowPos2ivMESA 676 -#define _gloffset_WindowPos2sMESA 677 -#define _gloffset_WindowPos2svMESA 678 -#define _gloffset_WindowPos3dMESA 679 -#define _gloffset_WindowPos3dvMESA 680 -#define _gloffset_WindowPos3fMESA 681 -#define _gloffset_WindowPos3fvMESA 682 -#define _gloffset_WindowPos3iMESA 683 -#define _gloffset_WindowPos3ivMESA 684 -#define _gloffset_WindowPos3sMESA 685 -#define _gloffset_WindowPos3svMESA 686 -#define _gloffset_WindowPos4dMESA 687 -#define _gloffset_WindowPos4dvMESA 688 -#define _gloffset_WindowPos4fMESA 689 -#define _gloffset_WindowPos4fvMESA 690 -#define _gloffset_WindowPos4iMESA 691 -#define _gloffset_WindowPos4ivMESA 692 -#define _gloffset_WindowPos4sMESA 693 -#define _gloffset_WindowPos4svMESA 694 -#define _gloffset_MultiModeDrawArraysIBM 695 -#define _gloffset_MultiModeDrawElementsIBM 696 -#define _gloffset_DeleteFencesNV 697 -#define _gloffset_FinishFenceNV 698 -#define _gloffset_GenFencesNV 699 -#define _gloffset_GetFenceivNV 700 -#define _gloffset_IsFenceNV 701 -#define _gloffset_SetFenceNV 702 -#define _gloffset_TestFenceNV 703 -#define _gloffset_AreProgramsResidentNV 704 -#define _gloffset_BindProgramNV 705 -#define _gloffset_DeleteProgramsNV 706 -#define _gloffset_ExecuteProgramNV 707 -#define _gloffset_GenProgramsNV 708 -#define _gloffset_GetProgramParameterdvNV 709 -#define _gloffset_GetProgramParameterfvNV 710 -#define _gloffset_GetProgramStringNV 711 -#define _gloffset_GetProgramivNV 712 -#define _gloffset_GetTrackMatrixivNV 713 -#define _gloffset_GetVertexAttribPointervNV 714 -#define _gloffset_GetVertexAttribdvNV 715 -#define _gloffset_GetVertexAttribfvNV 716 -#define _gloffset_GetVertexAttribivNV 717 -#define _gloffset_IsProgramNV 718 -#define _gloffset_LoadProgramNV 719 -#define _gloffset_ProgramParameters4dvNV 720 -#define _gloffset_ProgramParameters4fvNV 721 -#define _gloffset_RequestResidentProgramsNV 722 -#define _gloffset_TrackMatrixNV 723 -#define _gloffset_VertexAttrib1dNV 724 -#define _gloffset_VertexAttrib1dvNV 725 -#define _gloffset_VertexAttrib1fNV 726 -#define _gloffset_VertexAttrib1fvNV 727 -#define _gloffset_VertexAttrib1sNV 728 -#define _gloffset_VertexAttrib1svNV 729 -#define _gloffset_VertexAttrib2dNV 730 -#define _gloffset_VertexAttrib2dvNV 731 -#define _gloffset_VertexAttrib2fNV 732 -#define _gloffset_VertexAttrib2fvNV 733 -#define _gloffset_VertexAttrib2sNV 734 -#define _gloffset_VertexAttrib2svNV 735 -#define _gloffset_VertexAttrib3dNV 736 -#define _gloffset_VertexAttrib3dvNV 737 -#define _gloffset_VertexAttrib3fNV 738 -#define _gloffset_VertexAttrib3fvNV 739 -#define _gloffset_VertexAttrib3sNV 740 -#define _gloffset_VertexAttrib3svNV 741 -#define _gloffset_VertexAttrib4dNV 742 -#define _gloffset_VertexAttrib4dvNV 743 -#define _gloffset_VertexAttrib4fNV 744 -#define _gloffset_VertexAttrib4fvNV 745 -#define _gloffset_VertexAttrib4sNV 746 -#define _gloffset_VertexAttrib4svNV 747 -#define _gloffset_VertexAttrib4ubNV 748 -#define _gloffset_VertexAttrib4ubvNV 749 -#define _gloffset_VertexAttribPointerNV 750 -#define _gloffset_VertexAttribs1dvNV 751 -#define _gloffset_VertexAttribs1fvNV 752 -#define _gloffset_VertexAttribs1svNV 753 -#define _gloffset_VertexAttribs2dvNV 754 -#define _gloffset_VertexAttribs2fvNV 755 -#define _gloffset_VertexAttribs2svNV 756 -#define _gloffset_VertexAttribs3dvNV 757 -#define _gloffset_VertexAttribs3fvNV 758 -#define _gloffset_VertexAttribs3svNV 759 -#define _gloffset_VertexAttribs4dvNV 760 -#define _gloffset_VertexAttribs4fvNV 761 -#define _gloffset_VertexAttribs4svNV 762 -#define _gloffset_VertexAttribs4ubvNV 763 -#define _gloffset_GetTexBumpParameterfvATI 764 -#define _gloffset_GetTexBumpParameterivATI 765 -#define _gloffset_TexBumpParameterfvATI 766 -#define _gloffset_TexBumpParameterivATI 767 -#define _gloffset_AlphaFragmentOp1ATI 768 -#define _gloffset_AlphaFragmentOp2ATI 769 -#define _gloffset_AlphaFragmentOp3ATI 770 -#define _gloffset_BeginFragmentShaderATI 771 -#define _gloffset_BindFragmentShaderATI 772 -#define _gloffset_ColorFragmentOp1ATI 773 -#define _gloffset_ColorFragmentOp2ATI 774 -#define _gloffset_ColorFragmentOp3ATI 775 -#define _gloffset_DeleteFragmentShaderATI 776 -#define _gloffset_EndFragmentShaderATI 777 -#define _gloffset_GenFragmentShadersATI 778 -#define _gloffset_PassTexCoordATI 779 -#define _gloffset_SampleMapATI 780 -#define _gloffset_SetFragmentShaderConstantATI 781 -#define _gloffset_PointParameteriNV 782 -#define _gloffset_PointParameterivNV 783 -#define _gloffset_ActiveStencilFaceEXT 784 -#define _gloffset_BindVertexArrayAPPLE 785 -#define _gloffset_DeleteVertexArraysAPPLE 786 -#define _gloffset_GenVertexArraysAPPLE 787 -#define _gloffset_IsVertexArrayAPPLE 788 -#define _gloffset_GetProgramNamedParameterdvNV 789 -#define _gloffset_GetProgramNamedParameterfvNV 790 -#define _gloffset_ProgramNamedParameter4dNV 791 -#define _gloffset_ProgramNamedParameter4dvNV 792 -#define _gloffset_ProgramNamedParameter4fNV 793 -#define _gloffset_ProgramNamedParameter4fvNV 794 -#define _gloffset_PrimitiveRestartIndexNV 795 -#define _gloffset_PrimitiveRestartNV 796 -#define _gloffset_DepthBoundsEXT 797 -#define _gloffset_BlendEquationSeparateEXT 798 -#define _gloffset_BindFramebufferEXT 799 -#define _gloffset_BindRenderbufferEXT 800 -#define _gloffset_CheckFramebufferStatusEXT 801 -#define _gloffset_DeleteFramebuffersEXT 802 -#define _gloffset_DeleteRenderbuffersEXT 803 -#define _gloffset_FramebufferRenderbufferEXT 804 -#define _gloffset_FramebufferTexture1DEXT 805 -#define _gloffset_FramebufferTexture2DEXT 806 -#define _gloffset_FramebufferTexture3DEXT 807 -#define _gloffset_GenFramebuffersEXT 808 -#define _gloffset_GenRenderbuffersEXT 809 -#define _gloffset_GenerateMipmapEXT 810 -#define _gloffset_GetFramebufferAttachmentParameterivEXT 811 -#define _gloffset_GetRenderbufferParameterivEXT 812 -#define _gloffset_IsFramebufferEXT 813 -#define _gloffset_IsRenderbufferEXT 814 -#define _gloffset_RenderbufferStorageEXT 815 -#define _gloffset_BlitFramebufferEXT 816 -#define _gloffset_BufferParameteriAPPLE 817 -#define _gloffset_FlushMappedBufferRangeAPPLE 818 -#define _gloffset_BindFragDataLocationEXT 819 -#define _gloffset_GetFragDataLocationEXT 820 -#define _gloffset_GetUniformuivEXT 821 -#define _gloffset_GetVertexAttribIivEXT 822 -#define _gloffset_GetVertexAttribIuivEXT 823 -#define _gloffset_Uniform1uiEXT 824 -#define _gloffset_Uniform1uivEXT 825 -#define _gloffset_Uniform2uiEXT 826 -#define _gloffset_Uniform2uivEXT 827 -#define _gloffset_Uniform3uiEXT 828 -#define _gloffset_Uniform3uivEXT 829 -#define _gloffset_Uniform4uiEXT 830 -#define _gloffset_Uniform4uivEXT 831 -#define _gloffset_VertexAttribI1iEXT 832 -#define _gloffset_VertexAttribI1ivEXT 833 -#define _gloffset_VertexAttribI1uiEXT 834 -#define _gloffset_VertexAttribI1uivEXT 835 -#define _gloffset_VertexAttribI2iEXT 836 -#define _gloffset_VertexAttribI2ivEXT 837 -#define _gloffset_VertexAttribI2uiEXT 838 -#define _gloffset_VertexAttribI2uivEXT 839 -#define _gloffset_VertexAttribI3iEXT 840 -#define _gloffset_VertexAttribI3ivEXT 841 -#define _gloffset_VertexAttribI3uiEXT 842 -#define _gloffset_VertexAttribI3uivEXT 843 -#define _gloffset_VertexAttribI4bvEXT 844 -#define _gloffset_VertexAttribI4iEXT 845 -#define _gloffset_VertexAttribI4ivEXT 846 -#define _gloffset_VertexAttribI4svEXT 847 -#define _gloffset_VertexAttribI4ubvEXT 848 -#define _gloffset_VertexAttribI4uiEXT 849 -#define _gloffset_VertexAttribI4uivEXT 850 -#define _gloffset_VertexAttribI4usvEXT 851 -#define _gloffset_VertexAttribIPointerEXT 852 -#define _gloffset_FramebufferTextureLayerEXT 853 -#define _gloffset_ColorMaskIndexedEXT 854 -#define _gloffset_DisableIndexedEXT 855 -#define _gloffset_EnableIndexedEXT 856 -#define _gloffset_GetBooleanIndexedvEXT 857 -#define _gloffset_GetIntegerIndexedvEXT 858 -#define _gloffset_IsEnabledIndexedEXT 859 -#define _gloffset_ClearColorIiEXT 860 -#define _gloffset_ClearColorIuiEXT 861 -#define _gloffset_GetTexParameterIivEXT 862 -#define _gloffset_GetTexParameterIuivEXT 863 -#define _gloffset_TexParameterIivEXT 864 -#define _gloffset_TexParameterIuivEXT 865 -#define _gloffset_BeginConditionalRenderNV 866 -#define _gloffset_EndConditionalRenderNV 867 -#define _gloffset_BeginTransformFeedbackEXT 868 -#define _gloffset_BindBufferBaseEXT 869 -#define _gloffset_BindBufferOffsetEXT 870 -#define _gloffset_BindBufferRangeEXT 871 -#define _gloffset_EndTransformFeedbackEXT 872 -#define _gloffset_GetTransformFeedbackVaryingEXT 873 -#define _gloffset_TransformFeedbackVaryingsEXT 874 -#define _gloffset_ProvokingVertexEXT 875 -#define _gloffset_GetTexParameterPointervAPPLE 876 -#define _gloffset_TextureRangeAPPLE 877 -#define _gloffset_GetObjectParameterivAPPLE 878 -#define _gloffset_ObjectPurgeableAPPLE 879 -#define _gloffset_ObjectUnpurgeableAPPLE 880 -#define _gloffset_ActiveProgramEXT 881 -#define _gloffset_CreateShaderProgramEXT 882 -#define _gloffset_UseShaderProgramEXT 883 -#define _gloffset_TextureBarrierNV 884 -#define _gloffset_StencilFuncSeparateATI 885 -#define _gloffset_ProgramEnvParameters4fvEXT 886 -#define _gloffset_ProgramLocalParameters4fvEXT 887 -#define _gloffset_GetQueryObjecti64vEXT 888 -#define _gloffset_GetQueryObjectui64vEXT 889 -#define _gloffset_EGLImageTargetRenderbufferStorageOES 890 -#define _gloffset_EGLImageTargetTexture2DOES 891 +#define _gloffset_ClampColorARB 572 +#define _gloffset_DrawArraysInstancedARB 573 +#define _gloffset_DrawElementsInstancedARB 574 +#define _gloffset_RenderbufferStorageMultisample 575 +#define _gloffset_FramebufferTextureARB 576 +#define _gloffset_FramebufferTextureFaceARB 577 +#define _gloffset_ProgramParameteriARB 578 +#define _gloffset_VertexAttribDivisorARB 579 +#define _gloffset_FlushMappedBufferRange 580 +#define _gloffset_MapBufferRange 581 +#define _gloffset_BindVertexArray 582 +#define _gloffset_GenVertexArrays 583 +#define _gloffset_CopyBufferSubData 584 +#define _gloffset_ClientWaitSync 585 +#define _gloffset_DeleteSync 586 +#define _gloffset_FenceSync 587 +#define _gloffset_GetInteger64v 588 +#define _gloffset_GetSynciv 589 +#define _gloffset_IsSync 590 +#define _gloffset_WaitSync 591 +#define _gloffset_DrawElementsBaseVertex 592 +#define _gloffset_DrawRangeElementsBaseVertex 593 +#define _gloffset_MultiDrawElementsBaseVertex 594 +#define _gloffset_BlendEquationSeparateiARB 595 +#define _gloffset_BlendEquationiARB 596 +#define _gloffset_BlendFuncSeparateiARB 597 +#define _gloffset_BlendFunciARB 598 +#define _gloffset_BindTransformFeedback 599 +#define _gloffset_DeleteTransformFeedbacks 600 +#define _gloffset_DrawTransformFeedback 601 +#define _gloffset_GenTransformFeedbacks 602 +#define _gloffset_IsTransformFeedback 603 +#define _gloffset_PauseTransformFeedback 604 +#define _gloffset_ResumeTransformFeedback 605 +#define _gloffset_ClearDepthf 606 +#define _gloffset_DepthRangef 607 +#define _gloffset_GetShaderPrecisionFormat 608 +#define _gloffset_ReleaseShaderCompiler 609 +#define _gloffset_ShaderBinary 610 +#define _gloffset_PolygonOffsetEXT 611 +#define _gloffset_GetPixelTexGenParameterfvSGIS 612 +#define _gloffset_GetPixelTexGenParameterivSGIS 613 +#define _gloffset_PixelTexGenParameterfSGIS 614 +#define _gloffset_PixelTexGenParameterfvSGIS 615 +#define _gloffset_PixelTexGenParameteriSGIS 616 +#define _gloffset_PixelTexGenParameterivSGIS 617 +#define _gloffset_SampleMaskSGIS 618 +#define _gloffset_SamplePatternSGIS 619 +#define _gloffset_ColorPointerEXT 620 +#define _gloffset_EdgeFlagPointerEXT 621 +#define _gloffset_IndexPointerEXT 622 +#define _gloffset_NormalPointerEXT 623 +#define _gloffset_TexCoordPointerEXT 624 +#define _gloffset_VertexPointerEXT 625 +#define _gloffset_PointParameterfEXT 626 +#define _gloffset_PointParameterfvEXT 627 +#define _gloffset_LockArraysEXT 628 +#define _gloffset_UnlockArraysEXT 629 +#define _gloffset_SecondaryColor3bEXT 630 +#define _gloffset_SecondaryColor3bvEXT 631 +#define _gloffset_SecondaryColor3dEXT 632 +#define _gloffset_SecondaryColor3dvEXT 633 +#define _gloffset_SecondaryColor3fEXT 634 +#define _gloffset_SecondaryColor3fvEXT 635 +#define _gloffset_SecondaryColor3iEXT 636 +#define _gloffset_SecondaryColor3ivEXT 637 +#define _gloffset_SecondaryColor3sEXT 638 +#define _gloffset_SecondaryColor3svEXT 639 +#define _gloffset_SecondaryColor3ubEXT 640 +#define _gloffset_SecondaryColor3ubvEXT 641 +#define _gloffset_SecondaryColor3uiEXT 642 +#define _gloffset_SecondaryColor3uivEXT 643 +#define _gloffset_SecondaryColor3usEXT 644 +#define _gloffset_SecondaryColor3usvEXT 645 +#define _gloffset_SecondaryColorPointerEXT 646 +#define _gloffset_MultiDrawArraysEXT 647 +#define _gloffset_MultiDrawElementsEXT 648 +#define _gloffset_FogCoordPointerEXT 649 +#define _gloffset_FogCoorddEXT 650 +#define _gloffset_FogCoorddvEXT 651 +#define _gloffset_FogCoordfEXT 652 +#define _gloffset_FogCoordfvEXT 653 +#define _gloffset_PixelTexGenSGIX 654 +#define _gloffset_BlendFuncSeparateEXT 655 +#define _gloffset_FlushVertexArrayRangeNV 656 +#define _gloffset_VertexArrayRangeNV 657 +#define _gloffset_CombinerInputNV 658 +#define _gloffset_CombinerOutputNV 659 +#define _gloffset_CombinerParameterfNV 660 +#define _gloffset_CombinerParameterfvNV 661 +#define _gloffset_CombinerParameteriNV 662 +#define _gloffset_CombinerParameterivNV 663 +#define _gloffset_FinalCombinerInputNV 664 +#define _gloffset_GetCombinerInputParameterfvNV 665 +#define _gloffset_GetCombinerInputParameterivNV 666 +#define _gloffset_GetCombinerOutputParameterfvNV 667 +#define _gloffset_GetCombinerOutputParameterivNV 668 +#define _gloffset_GetFinalCombinerInputParameterfvNV 669 +#define _gloffset_GetFinalCombinerInputParameterivNV 670 +#define _gloffset_ResizeBuffersMESA 671 +#define _gloffset_WindowPos2dMESA 672 +#define _gloffset_WindowPos2dvMESA 673 +#define _gloffset_WindowPos2fMESA 674 +#define _gloffset_WindowPos2fvMESA 675 +#define _gloffset_WindowPos2iMESA 676 +#define _gloffset_WindowPos2ivMESA 677 +#define _gloffset_WindowPos2sMESA 678 +#define _gloffset_WindowPos2svMESA 679 +#define _gloffset_WindowPos3dMESA 680 +#define _gloffset_WindowPos3dvMESA 681 +#define _gloffset_WindowPos3fMESA 682 +#define _gloffset_WindowPos3fvMESA 683 +#define _gloffset_WindowPos3iMESA 684 +#define _gloffset_WindowPos3ivMESA 685 +#define _gloffset_WindowPos3sMESA 686 +#define _gloffset_WindowPos3svMESA 687 +#define _gloffset_WindowPos4dMESA 688 +#define _gloffset_WindowPos4dvMESA 689 +#define _gloffset_WindowPos4fMESA 690 +#define _gloffset_WindowPos4fvMESA 691 +#define _gloffset_WindowPos4iMESA 692 +#define _gloffset_WindowPos4ivMESA 693 +#define _gloffset_WindowPos4sMESA 694 +#define _gloffset_WindowPos4svMESA 695 +#define _gloffset_MultiModeDrawArraysIBM 696 +#define _gloffset_MultiModeDrawElementsIBM 697 +#define _gloffset_DeleteFencesNV 698 +#define _gloffset_FinishFenceNV 699 +#define _gloffset_GenFencesNV 700 +#define _gloffset_GetFenceivNV 701 +#define _gloffset_IsFenceNV 702 +#define _gloffset_SetFenceNV 703 +#define _gloffset_TestFenceNV 704 +#define _gloffset_AreProgramsResidentNV 705 +#define _gloffset_BindProgramNV 706 +#define _gloffset_DeleteProgramsNV 707 +#define _gloffset_ExecuteProgramNV 708 +#define _gloffset_GenProgramsNV 709 +#define _gloffset_GetProgramParameterdvNV 710 +#define _gloffset_GetProgramParameterfvNV 711 +#define _gloffset_GetProgramStringNV 712 +#define _gloffset_GetProgramivNV 713 +#define _gloffset_GetTrackMatrixivNV 714 +#define _gloffset_GetVertexAttribPointervNV 715 +#define _gloffset_GetVertexAttribdvNV 716 +#define _gloffset_GetVertexAttribfvNV 717 +#define _gloffset_GetVertexAttribivNV 718 +#define _gloffset_IsProgramNV 719 +#define _gloffset_LoadProgramNV 720 +#define _gloffset_ProgramParameters4dvNV 721 +#define _gloffset_ProgramParameters4fvNV 722 +#define _gloffset_RequestResidentProgramsNV 723 +#define _gloffset_TrackMatrixNV 724 +#define _gloffset_VertexAttrib1dNV 725 +#define _gloffset_VertexAttrib1dvNV 726 +#define _gloffset_VertexAttrib1fNV 727 +#define _gloffset_VertexAttrib1fvNV 728 +#define _gloffset_VertexAttrib1sNV 729 +#define _gloffset_VertexAttrib1svNV 730 +#define _gloffset_VertexAttrib2dNV 731 +#define _gloffset_VertexAttrib2dvNV 732 +#define _gloffset_VertexAttrib2fNV 733 +#define _gloffset_VertexAttrib2fvNV 734 +#define _gloffset_VertexAttrib2sNV 735 +#define _gloffset_VertexAttrib2svNV 736 +#define _gloffset_VertexAttrib3dNV 737 +#define _gloffset_VertexAttrib3dvNV 738 +#define _gloffset_VertexAttrib3fNV 739 +#define _gloffset_VertexAttrib3fvNV 740 +#define _gloffset_VertexAttrib3sNV 741 +#define _gloffset_VertexAttrib3svNV 742 +#define _gloffset_VertexAttrib4dNV 743 +#define _gloffset_VertexAttrib4dvNV 744 +#define _gloffset_VertexAttrib4fNV 745 +#define _gloffset_VertexAttrib4fvNV 746 +#define _gloffset_VertexAttrib4sNV 747 +#define _gloffset_VertexAttrib4svNV 748 +#define _gloffset_VertexAttrib4ubNV 749 +#define _gloffset_VertexAttrib4ubvNV 750 +#define _gloffset_VertexAttribPointerNV 751 +#define _gloffset_VertexAttribs1dvNV 752 +#define _gloffset_VertexAttribs1fvNV 753 +#define _gloffset_VertexAttribs1svNV 754 +#define _gloffset_VertexAttribs2dvNV 755 +#define _gloffset_VertexAttribs2fvNV 756 +#define _gloffset_VertexAttribs2svNV 757 +#define _gloffset_VertexAttribs3dvNV 758 +#define _gloffset_VertexAttribs3fvNV 759 +#define _gloffset_VertexAttribs3svNV 760 +#define _gloffset_VertexAttribs4dvNV 761 +#define _gloffset_VertexAttribs4fvNV 762 +#define _gloffset_VertexAttribs4svNV 763 +#define _gloffset_VertexAttribs4ubvNV 764 +#define _gloffset_GetTexBumpParameterfvATI 765 +#define _gloffset_GetTexBumpParameterivATI 766 +#define _gloffset_TexBumpParameterfvATI 767 +#define _gloffset_TexBumpParameterivATI 768 +#define _gloffset_AlphaFragmentOp1ATI 769 +#define _gloffset_AlphaFragmentOp2ATI 770 +#define _gloffset_AlphaFragmentOp3ATI 771 +#define _gloffset_BeginFragmentShaderATI 772 +#define _gloffset_BindFragmentShaderATI 773 +#define _gloffset_ColorFragmentOp1ATI 774 +#define _gloffset_ColorFragmentOp2ATI 775 +#define _gloffset_ColorFragmentOp3ATI 776 +#define _gloffset_DeleteFragmentShaderATI 777 +#define _gloffset_EndFragmentShaderATI 778 +#define _gloffset_GenFragmentShadersATI 779 +#define _gloffset_PassTexCoordATI 780 +#define _gloffset_SampleMapATI 781 +#define _gloffset_SetFragmentShaderConstantATI 782 +#define _gloffset_PointParameteriNV 783 +#define _gloffset_PointParameterivNV 784 +#define _gloffset_ActiveStencilFaceEXT 785 +#define _gloffset_BindVertexArrayAPPLE 786 +#define _gloffset_DeleteVertexArraysAPPLE 787 +#define _gloffset_GenVertexArraysAPPLE 788 +#define _gloffset_IsVertexArrayAPPLE 789 +#define _gloffset_GetProgramNamedParameterdvNV 790 +#define _gloffset_GetProgramNamedParameterfvNV 791 +#define _gloffset_ProgramNamedParameter4dNV 792 +#define _gloffset_ProgramNamedParameter4dvNV 793 +#define _gloffset_ProgramNamedParameter4fNV 794 +#define _gloffset_ProgramNamedParameter4fvNV 795 +#define _gloffset_PrimitiveRestartIndexNV 796 +#define _gloffset_PrimitiveRestartNV 797 +#define _gloffset_DepthBoundsEXT 798 +#define _gloffset_BlendEquationSeparateEXT 799 +#define _gloffset_BindFramebufferEXT 800 +#define _gloffset_BindRenderbufferEXT 801 +#define _gloffset_CheckFramebufferStatusEXT 802 +#define _gloffset_DeleteFramebuffersEXT 803 +#define _gloffset_DeleteRenderbuffersEXT 804 +#define _gloffset_FramebufferRenderbufferEXT 805 +#define _gloffset_FramebufferTexture1DEXT 806 +#define _gloffset_FramebufferTexture2DEXT 807 +#define _gloffset_FramebufferTexture3DEXT 808 +#define _gloffset_GenFramebuffersEXT 809 +#define _gloffset_GenRenderbuffersEXT 810 +#define _gloffset_GenerateMipmapEXT 811 +#define _gloffset_GetFramebufferAttachmentParameterivEXT 812 +#define _gloffset_GetRenderbufferParameterivEXT 813 +#define _gloffset_IsFramebufferEXT 814 +#define _gloffset_IsRenderbufferEXT 815 +#define _gloffset_RenderbufferStorageEXT 816 +#define _gloffset_BlitFramebufferEXT 817 +#define _gloffset_BufferParameteriAPPLE 818 +#define _gloffset_FlushMappedBufferRangeAPPLE 819 +#define _gloffset_BindFragDataLocationEXT 820 +#define _gloffset_GetFragDataLocationEXT 821 +#define _gloffset_GetUniformuivEXT 822 +#define _gloffset_GetVertexAttribIivEXT 823 +#define _gloffset_GetVertexAttribIuivEXT 824 +#define _gloffset_Uniform1uiEXT 825 +#define _gloffset_Uniform1uivEXT 826 +#define _gloffset_Uniform2uiEXT 827 +#define _gloffset_Uniform2uivEXT 828 +#define _gloffset_Uniform3uiEXT 829 +#define _gloffset_Uniform3uivEXT 830 +#define _gloffset_Uniform4uiEXT 831 +#define _gloffset_Uniform4uivEXT 832 +#define _gloffset_VertexAttribI1iEXT 833 +#define _gloffset_VertexAttribI1ivEXT 834 +#define _gloffset_VertexAttribI1uiEXT 835 +#define _gloffset_VertexAttribI1uivEXT 836 +#define _gloffset_VertexAttribI2iEXT 837 +#define _gloffset_VertexAttribI2ivEXT 838 +#define _gloffset_VertexAttribI2uiEXT 839 +#define _gloffset_VertexAttribI2uivEXT 840 +#define _gloffset_VertexAttribI3iEXT 841 +#define _gloffset_VertexAttribI3ivEXT 842 +#define _gloffset_VertexAttribI3uiEXT 843 +#define _gloffset_VertexAttribI3uivEXT 844 +#define _gloffset_VertexAttribI4bvEXT 845 +#define _gloffset_VertexAttribI4iEXT 846 +#define _gloffset_VertexAttribI4ivEXT 847 +#define _gloffset_VertexAttribI4svEXT 848 +#define _gloffset_VertexAttribI4ubvEXT 849 +#define _gloffset_VertexAttribI4uiEXT 850 +#define _gloffset_VertexAttribI4uivEXT 851 +#define _gloffset_VertexAttribI4usvEXT 852 +#define _gloffset_VertexAttribIPointerEXT 853 +#define _gloffset_FramebufferTextureLayerEXT 854 +#define _gloffset_ColorMaskIndexedEXT 855 +#define _gloffset_DisableIndexedEXT 856 +#define _gloffset_EnableIndexedEXT 857 +#define _gloffset_GetBooleanIndexedvEXT 858 +#define _gloffset_GetIntegerIndexedvEXT 859 +#define _gloffset_IsEnabledIndexedEXT 860 +#define _gloffset_ClearColorIiEXT 861 +#define _gloffset_ClearColorIuiEXT 862 +#define _gloffset_GetTexParameterIivEXT 863 +#define _gloffset_GetTexParameterIuivEXT 864 +#define _gloffset_TexParameterIivEXT 865 +#define _gloffset_TexParameterIuivEXT 866 +#define _gloffset_BeginConditionalRenderNV 867 +#define _gloffset_EndConditionalRenderNV 868 +#define _gloffset_BeginTransformFeedbackEXT 869 +#define _gloffset_BindBufferBaseEXT 870 +#define _gloffset_BindBufferOffsetEXT 871 +#define _gloffset_BindBufferRangeEXT 872 +#define _gloffset_EndTransformFeedbackEXT 873 +#define _gloffset_GetTransformFeedbackVaryingEXT 874 +#define _gloffset_TransformFeedbackVaryingsEXT 875 +#define _gloffset_ProvokingVertexEXT 876 +#define _gloffset_GetTexParameterPointervAPPLE 877 +#define _gloffset_TextureRangeAPPLE 878 +#define _gloffset_GetObjectParameterivAPPLE 879 +#define _gloffset_ObjectPurgeableAPPLE 880 +#define _gloffset_ObjectUnpurgeableAPPLE 881 +#define _gloffset_ActiveProgramEXT 882 +#define _gloffset_CreateShaderProgramEXT 883 +#define _gloffset_UseShaderProgramEXT 884 +#define _gloffset_TextureBarrierNV 885 +#define _gloffset_StencilFuncSeparateATI 886 +#define _gloffset_ProgramEnvParameters4fvEXT 887 +#define _gloffset_ProgramLocalParameters4fvEXT 888 +#define _gloffset_GetQueryObjecti64vEXT 889 +#define _gloffset_GetQueryObjectui64vEXT 890 +#define _gloffset_EGLImageTargetRenderbufferStorageOES 891 +#define _gloffset_EGLImageTargetTexture2DOES 892 #else /* !_GLAPI_USE_REMAP_TABLE */ -#define driDispatchRemapTable_size 484 +#define driDispatchRemapTable_size 485 extern int driDispatchRemapTable[ driDispatchRemapTable_size ]; #define AttachShader_remap_index 0 @@ -1126,326 +1127,327 @@ extern int driDispatchRemapTable[ driDispatchRemapTable_size ]; #define GetActiveAttribARB_remap_index 161 #define GetAttribLocationARB_remap_index 162 #define DrawBuffersARB_remap_index 163 -#define DrawArraysInstancedARB_remap_index 164 -#define DrawElementsInstancedARB_remap_index 165 -#define RenderbufferStorageMultisample_remap_index 166 -#define FramebufferTextureARB_remap_index 167 -#define FramebufferTextureFaceARB_remap_index 168 -#define ProgramParameteriARB_remap_index 169 -#define VertexAttribDivisorARB_remap_index 170 -#define FlushMappedBufferRange_remap_index 171 -#define MapBufferRange_remap_index 172 -#define BindVertexArray_remap_index 173 -#define GenVertexArrays_remap_index 174 -#define CopyBufferSubData_remap_index 175 -#define ClientWaitSync_remap_index 176 -#define DeleteSync_remap_index 177 -#define FenceSync_remap_index 178 -#define GetInteger64v_remap_index 179 -#define GetSynciv_remap_index 180 -#define IsSync_remap_index 181 -#define WaitSync_remap_index 182 -#define DrawElementsBaseVertex_remap_index 183 -#define DrawRangeElementsBaseVertex_remap_index 184 -#define MultiDrawElementsBaseVertex_remap_index 185 -#define BlendEquationSeparateiARB_remap_index 186 -#define BlendEquationiARB_remap_index 187 -#define BlendFuncSeparateiARB_remap_index 188 -#define BlendFunciARB_remap_index 189 -#define BindTransformFeedback_remap_index 190 -#define DeleteTransformFeedbacks_remap_index 191 -#define DrawTransformFeedback_remap_index 192 -#define GenTransformFeedbacks_remap_index 193 -#define IsTransformFeedback_remap_index 194 -#define PauseTransformFeedback_remap_index 195 -#define ResumeTransformFeedback_remap_index 196 -#define ClearDepthf_remap_index 197 -#define DepthRangef_remap_index 198 -#define GetShaderPrecisionFormat_remap_index 199 -#define ReleaseShaderCompiler_remap_index 200 -#define ShaderBinary_remap_index 201 -#define PolygonOffsetEXT_remap_index 202 -#define GetPixelTexGenParameterfvSGIS_remap_index 203 -#define GetPixelTexGenParameterivSGIS_remap_index 204 -#define PixelTexGenParameterfSGIS_remap_index 205 -#define PixelTexGenParameterfvSGIS_remap_index 206 -#define PixelTexGenParameteriSGIS_remap_index 207 -#define PixelTexGenParameterivSGIS_remap_index 208 -#define SampleMaskSGIS_remap_index 209 -#define SamplePatternSGIS_remap_index 210 -#define ColorPointerEXT_remap_index 211 -#define EdgeFlagPointerEXT_remap_index 212 -#define IndexPointerEXT_remap_index 213 -#define NormalPointerEXT_remap_index 214 -#define TexCoordPointerEXT_remap_index 215 -#define VertexPointerEXT_remap_index 216 -#define PointParameterfEXT_remap_index 217 -#define PointParameterfvEXT_remap_index 218 -#define LockArraysEXT_remap_index 219 -#define UnlockArraysEXT_remap_index 220 -#define SecondaryColor3bEXT_remap_index 221 -#define SecondaryColor3bvEXT_remap_index 222 -#define SecondaryColor3dEXT_remap_index 223 -#define SecondaryColor3dvEXT_remap_index 224 -#define SecondaryColor3fEXT_remap_index 225 -#define SecondaryColor3fvEXT_remap_index 226 -#define SecondaryColor3iEXT_remap_index 227 -#define SecondaryColor3ivEXT_remap_index 228 -#define SecondaryColor3sEXT_remap_index 229 -#define SecondaryColor3svEXT_remap_index 230 -#define SecondaryColor3ubEXT_remap_index 231 -#define SecondaryColor3ubvEXT_remap_index 232 -#define SecondaryColor3uiEXT_remap_index 233 -#define SecondaryColor3uivEXT_remap_index 234 -#define SecondaryColor3usEXT_remap_index 235 -#define SecondaryColor3usvEXT_remap_index 236 -#define SecondaryColorPointerEXT_remap_index 237 -#define MultiDrawArraysEXT_remap_index 238 -#define MultiDrawElementsEXT_remap_index 239 -#define FogCoordPointerEXT_remap_index 240 -#define FogCoorddEXT_remap_index 241 -#define FogCoorddvEXT_remap_index 242 -#define FogCoordfEXT_remap_index 243 -#define FogCoordfvEXT_remap_index 244 -#define PixelTexGenSGIX_remap_index 245 -#define BlendFuncSeparateEXT_remap_index 246 -#define FlushVertexArrayRangeNV_remap_index 247 -#define VertexArrayRangeNV_remap_index 248 -#define CombinerInputNV_remap_index 249 -#define CombinerOutputNV_remap_index 250 -#define CombinerParameterfNV_remap_index 251 -#define CombinerParameterfvNV_remap_index 252 -#define CombinerParameteriNV_remap_index 253 -#define CombinerParameterivNV_remap_index 254 -#define FinalCombinerInputNV_remap_index 255 -#define GetCombinerInputParameterfvNV_remap_index 256 -#define GetCombinerInputParameterivNV_remap_index 257 -#define GetCombinerOutputParameterfvNV_remap_index 258 -#define GetCombinerOutputParameterivNV_remap_index 259 -#define GetFinalCombinerInputParameterfvNV_remap_index 260 -#define GetFinalCombinerInputParameterivNV_remap_index 261 -#define ResizeBuffersMESA_remap_index 262 -#define WindowPos2dMESA_remap_index 263 -#define WindowPos2dvMESA_remap_index 264 -#define WindowPos2fMESA_remap_index 265 -#define WindowPos2fvMESA_remap_index 266 -#define WindowPos2iMESA_remap_index 267 -#define WindowPos2ivMESA_remap_index 268 -#define WindowPos2sMESA_remap_index 269 -#define WindowPos2svMESA_remap_index 270 -#define WindowPos3dMESA_remap_index 271 -#define WindowPos3dvMESA_remap_index 272 -#define WindowPos3fMESA_remap_index 273 -#define WindowPos3fvMESA_remap_index 274 -#define WindowPos3iMESA_remap_index 275 -#define WindowPos3ivMESA_remap_index 276 -#define WindowPos3sMESA_remap_index 277 -#define WindowPos3svMESA_remap_index 278 -#define WindowPos4dMESA_remap_index 279 -#define WindowPos4dvMESA_remap_index 280 -#define WindowPos4fMESA_remap_index 281 -#define WindowPos4fvMESA_remap_index 282 -#define WindowPos4iMESA_remap_index 283 -#define WindowPos4ivMESA_remap_index 284 -#define WindowPos4sMESA_remap_index 285 -#define WindowPos4svMESA_remap_index 286 -#define MultiModeDrawArraysIBM_remap_index 287 -#define MultiModeDrawElementsIBM_remap_index 288 -#define DeleteFencesNV_remap_index 289 -#define FinishFenceNV_remap_index 290 -#define GenFencesNV_remap_index 291 -#define GetFenceivNV_remap_index 292 -#define IsFenceNV_remap_index 293 -#define SetFenceNV_remap_index 294 -#define TestFenceNV_remap_index 295 -#define AreProgramsResidentNV_remap_index 296 -#define BindProgramNV_remap_index 297 -#define DeleteProgramsNV_remap_index 298 -#define ExecuteProgramNV_remap_index 299 -#define GenProgramsNV_remap_index 300 -#define GetProgramParameterdvNV_remap_index 301 -#define GetProgramParameterfvNV_remap_index 302 -#define GetProgramStringNV_remap_index 303 -#define GetProgramivNV_remap_index 304 -#define GetTrackMatrixivNV_remap_index 305 -#define GetVertexAttribPointervNV_remap_index 306 -#define GetVertexAttribdvNV_remap_index 307 -#define GetVertexAttribfvNV_remap_index 308 -#define GetVertexAttribivNV_remap_index 309 -#define IsProgramNV_remap_index 310 -#define LoadProgramNV_remap_index 311 -#define ProgramParameters4dvNV_remap_index 312 -#define ProgramParameters4fvNV_remap_index 313 -#define RequestResidentProgramsNV_remap_index 314 -#define TrackMatrixNV_remap_index 315 -#define VertexAttrib1dNV_remap_index 316 -#define VertexAttrib1dvNV_remap_index 317 -#define VertexAttrib1fNV_remap_index 318 -#define VertexAttrib1fvNV_remap_index 319 -#define VertexAttrib1sNV_remap_index 320 -#define VertexAttrib1svNV_remap_index 321 -#define VertexAttrib2dNV_remap_index 322 -#define VertexAttrib2dvNV_remap_index 323 -#define VertexAttrib2fNV_remap_index 324 -#define VertexAttrib2fvNV_remap_index 325 -#define VertexAttrib2sNV_remap_index 326 -#define VertexAttrib2svNV_remap_index 327 -#define VertexAttrib3dNV_remap_index 328 -#define VertexAttrib3dvNV_remap_index 329 -#define VertexAttrib3fNV_remap_index 330 -#define VertexAttrib3fvNV_remap_index 331 -#define VertexAttrib3sNV_remap_index 332 -#define VertexAttrib3svNV_remap_index 333 -#define VertexAttrib4dNV_remap_index 334 -#define VertexAttrib4dvNV_remap_index 335 -#define VertexAttrib4fNV_remap_index 336 -#define VertexAttrib4fvNV_remap_index 337 -#define VertexAttrib4sNV_remap_index 338 -#define VertexAttrib4svNV_remap_index 339 -#define VertexAttrib4ubNV_remap_index 340 -#define VertexAttrib4ubvNV_remap_index 341 -#define VertexAttribPointerNV_remap_index 342 -#define VertexAttribs1dvNV_remap_index 343 -#define VertexAttribs1fvNV_remap_index 344 -#define VertexAttribs1svNV_remap_index 345 -#define VertexAttribs2dvNV_remap_index 346 -#define VertexAttribs2fvNV_remap_index 347 -#define VertexAttribs2svNV_remap_index 348 -#define VertexAttribs3dvNV_remap_index 349 -#define VertexAttribs3fvNV_remap_index 350 -#define VertexAttribs3svNV_remap_index 351 -#define VertexAttribs4dvNV_remap_index 352 -#define VertexAttribs4fvNV_remap_index 353 -#define VertexAttribs4svNV_remap_index 354 -#define VertexAttribs4ubvNV_remap_index 355 -#define GetTexBumpParameterfvATI_remap_index 356 -#define GetTexBumpParameterivATI_remap_index 357 -#define TexBumpParameterfvATI_remap_index 358 -#define TexBumpParameterivATI_remap_index 359 -#define AlphaFragmentOp1ATI_remap_index 360 -#define AlphaFragmentOp2ATI_remap_index 361 -#define AlphaFragmentOp3ATI_remap_index 362 -#define BeginFragmentShaderATI_remap_index 363 -#define BindFragmentShaderATI_remap_index 364 -#define ColorFragmentOp1ATI_remap_index 365 -#define ColorFragmentOp2ATI_remap_index 366 -#define ColorFragmentOp3ATI_remap_index 367 -#define DeleteFragmentShaderATI_remap_index 368 -#define EndFragmentShaderATI_remap_index 369 -#define GenFragmentShadersATI_remap_index 370 -#define PassTexCoordATI_remap_index 371 -#define SampleMapATI_remap_index 372 -#define SetFragmentShaderConstantATI_remap_index 373 -#define PointParameteriNV_remap_index 374 -#define PointParameterivNV_remap_index 375 -#define ActiveStencilFaceEXT_remap_index 376 -#define BindVertexArrayAPPLE_remap_index 377 -#define DeleteVertexArraysAPPLE_remap_index 378 -#define GenVertexArraysAPPLE_remap_index 379 -#define IsVertexArrayAPPLE_remap_index 380 -#define GetProgramNamedParameterdvNV_remap_index 381 -#define GetProgramNamedParameterfvNV_remap_index 382 -#define ProgramNamedParameter4dNV_remap_index 383 -#define ProgramNamedParameter4dvNV_remap_index 384 -#define ProgramNamedParameter4fNV_remap_index 385 -#define ProgramNamedParameter4fvNV_remap_index 386 -#define PrimitiveRestartIndexNV_remap_index 387 -#define PrimitiveRestartNV_remap_index 388 -#define DepthBoundsEXT_remap_index 389 -#define BlendEquationSeparateEXT_remap_index 390 -#define BindFramebufferEXT_remap_index 391 -#define BindRenderbufferEXT_remap_index 392 -#define CheckFramebufferStatusEXT_remap_index 393 -#define DeleteFramebuffersEXT_remap_index 394 -#define DeleteRenderbuffersEXT_remap_index 395 -#define FramebufferRenderbufferEXT_remap_index 396 -#define FramebufferTexture1DEXT_remap_index 397 -#define FramebufferTexture2DEXT_remap_index 398 -#define FramebufferTexture3DEXT_remap_index 399 -#define GenFramebuffersEXT_remap_index 400 -#define GenRenderbuffersEXT_remap_index 401 -#define GenerateMipmapEXT_remap_index 402 -#define GetFramebufferAttachmentParameterivEXT_remap_index 403 -#define GetRenderbufferParameterivEXT_remap_index 404 -#define IsFramebufferEXT_remap_index 405 -#define IsRenderbufferEXT_remap_index 406 -#define RenderbufferStorageEXT_remap_index 407 -#define BlitFramebufferEXT_remap_index 408 -#define BufferParameteriAPPLE_remap_index 409 -#define FlushMappedBufferRangeAPPLE_remap_index 410 -#define BindFragDataLocationEXT_remap_index 411 -#define GetFragDataLocationEXT_remap_index 412 -#define GetUniformuivEXT_remap_index 413 -#define GetVertexAttribIivEXT_remap_index 414 -#define GetVertexAttribIuivEXT_remap_index 415 -#define Uniform1uiEXT_remap_index 416 -#define Uniform1uivEXT_remap_index 417 -#define Uniform2uiEXT_remap_index 418 -#define Uniform2uivEXT_remap_index 419 -#define Uniform3uiEXT_remap_index 420 -#define Uniform3uivEXT_remap_index 421 -#define Uniform4uiEXT_remap_index 422 -#define Uniform4uivEXT_remap_index 423 -#define VertexAttribI1iEXT_remap_index 424 -#define VertexAttribI1ivEXT_remap_index 425 -#define VertexAttribI1uiEXT_remap_index 426 -#define VertexAttribI1uivEXT_remap_index 427 -#define VertexAttribI2iEXT_remap_index 428 -#define VertexAttribI2ivEXT_remap_index 429 -#define VertexAttribI2uiEXT_remap_index 430 -#define VertexAttribI2uivEXT_remap_index 431 -#define VertexAttribI3iEXT_remap_index 432 -#define VertexAttribI3ivEXT_remap_index 433 -#define VertexAttribI3uiEXT_remap_index 434 -#define VertexAttribI3uivEXT_remap_index 435 -#define VertexAttribI4bvEXT_remap_index 436 -#define VertexAttribI4iEXT_remap_index 437 -#define VertexAttribI4ivEXT_remap_index 438 -#define VertexAttribI4svEXT_remap_index 439 -#define VertexAttribI4ubvEXT_remap_index 440 -#define VertexAttribI4uiEXT_remap_index 441 -#define VertexAttribI4uivEXT_remap_index 442 -#define VertexAttribI4usvEXT_remap_index 443 -#define VertexAttribIPointerEXT_remap_index 444 -#define FramebufferTextureLayerEXT_remap_index 445 -#define ColorMaskIndexedEXT_remap_index 446 -#define DisableIndexedEXT_remap_index 447 -#define EnableIndexedEXT_remap_index 448 -#define GetBooleanIndexedvEXT_remap_index 449 -#define GetIntegerIndexedvEXT_remap_index 450 -#define IsEnabledIndexedEXT_remap_index 451 -#define ClearColorIiEXT_remap_index 452 -#define ClearColorIuiEXT_remap_index 453 -#define GetTexParameterIivEXT_remap_index 454 -#define GetTexParameterIuivEXT_remap_index 455 -#define TexParameterIivEXT_remap_index 456 -#define TexParameterIuivEXT_remap_index 457 -#define BeginConditionalRenderNV_remap_index 458 -#define EndConditionalRenderNV_remap_index 459 -#define BeginTransformFeedbackEXT_remap_index 460 -#define BindBufferBaseEXT_remap_index 461 -#define BindBufferOffsetEXT_remap_index 462 -#define BindBufferRangeEXT_remap_index 463 -#define EndTransformFeedbackEXT_remap_index 464 -#define GetTransformFeedbackVaryingEXT_remap_index 465 -#define TransformFeedbackVaryingsEXT_remap_index 466 -#define ProvokingVertexEXT_remap_index 467 -#define GetTexParameterPointervAPPLE_remap_index 468 -#define TextureRangeAPPLE_remap_index 469 -#define GetObjectParameterivAPPLE_remap_index 470 -#define ObjectPurgeableAPPLE_remap_index 471 -#define ObjectUnpurgeableAPPLE_remap_index 472 -#define ActiveProgramEXT_remap_index 473 -#define CreateShaderProgramEXT_remap_index 474 -#define UseShaderProgramEXT_remap_index 475 -#define TextureBarrierNV_remap_index 476 -#define StencilFuncSeparateATI_remap_index 477 -#define ProgramEnvParameters4fvEXT_remap_index 478 -#define ProgramLocalParameters4fvEXT_remap_index 479 -#define GetQueryObjecti64vEXT_remap_index 480 -#define GetQueryObjectui64vEXT_remap_index 481 -#define EGLImageTargetRenderbufferStorageOES_remap_index 482 -#define EGLImageTargetTexture2DOES_remap_index 483 +#define ClampColorARB_remap_index 164 +#define DrawArraysInstancedARB_remap_index 165 +#define DrawElementsInstancedARB_remap_index 166 +#define RenderbufferStorageMultisample_remap_index 167 +#define FramebufferTextureARB_remap_index 168 +#define FramebufferTextureFaceARB_remap_index 169 +#define ProgramParameteriARB_remap_index 170 +#define VertexAttribDivisorARB_remap_index 171 +#define FlushMappedBufferRange_remap_index 172 +#define MapBufferRange_remap_index 173 +#define BindVertexArray_remap_index 174 +#define GenVertexArrays_remap_index 175 +#define CopyBufferSubData_remap_index 176 +#define ClientWaitSync_remap_index 177 +#define DeleteSync_remap_index 178 +#define FenceSync_remap_index 179 +#define GetInteger64v_remap_index 180 +#define GetSynciv_remap_index 181 +#define IsSync_remap_index 182 +#define WaitSync_remap_index 183 +#define DrawElementsBaseVertex_remap_index 184 +#define DrawRangeElementsBaseVertex_remap_index 185 +#define MultiDrawElementsBaseVertex_remap_index 186 +#define BlendEquationSeparateiARB_remap_index 187 +#define BlendEquationiARB_remap_index 188 +#define BlendFuncSeparateiARB_remap_index 189 +#define BlendFunciARB_remap_index 190 +#define BindTransformFeedback_remap_index 191 +#define DeleteTransformFeedbacks_remap_index 192 +#define DrawTransformFeedback_remap_index 193 +#define GenTransformFeedbacks_remap_index 194 +#define IsTransformFeedback_remap_index 195 +#define PauseTransformFeedback_remap_index 196 +#define ResumeTransformFeedback_remap_index 197 +#define ClearDepthf_remap_index 198 +#define DepthRangef_remap_index 199 +#define GetShaderPrecisionFormat_remap_index 200 +#define ReleaseShaderCompiler_remap_index 201 +#define ShaderBinary_remap_index 202 +#define PolygonOffsetEXT_remap_index 203 +#define GetPixelTexGenParameterfvSGIS_remap_index 204 +#define GetPixelTexGenParameterivSGIS_remap_index 205 +#define PixelTexGenParameterfSGIS_remap_index 206 +#define PixelTexGenParameterfvSGIS_remap_index 207 +#define PixelTexGenParameteriSGIS_remap_index 208 +#define PixelTexGenParameterivSGIS_remap_index 209 +#define SampleMaskSGIS_remap_index 210 +#define SamplePatternSGIS_remap_index 211 +#define ColorPointerEXT_remap_index 212 +#define EdgeFlagPointerEXT_remap_index 213 +#define IndexPointerEXT_remap_index 214 +#define NormalPointerEXT_remap_index 215 +#define TexCoordPointerEXT_remap_index 216 +#define VertexPointerEXT_remap_index 217 +#define PointParameterfEXT_remap_index 218 +#define PointParameterfvEXT_remap_index 219 +#define LockArraysEXT_remap_index 220 +#define UnlockArraysEXT_remap_index 221 +#define SecondaryColor3bEXT_remap_index 222 +#define SecondaryColor3bvEXT_remap_index 223 +#define SecondaryColor3dEXT_remap_index 224 +#define SecondaryColor3dvEXT_remap_index 225 +#define SecondaryColor3fEXT_remap_index 226 +#define SecondaryColor3fvEXT_remap_index 227 +#define SecondaryColor3iEXT_remap_index 228 +#define SecondaryColor3ivEXT_remap_index 229 +#define SecondaryColor3sEXT_remap_index 230 +#define SecondaryColor3svEXT_remap_index 231 +#define SecondaryColor3ubEXT_remap_index 232 +#define SecondaryColor3ubvEXT_remap_index 233 +#define SecondaryColor3uiEXT_remap_index 234 +#define SecondaryColor3uivEXT_remap_index 235 +#define SecondaryColor3usEXT_remap_index 236 +#define SecondaryColor3usvEXT_remap_index 237 +#define SecondaryColorPointerEXT_remap_index 238 +#define MultiDrawArraysEXT_remap_index 239 +#define MultiDrawElementsEXT_remap_index 240 +#define FogCoordPointerEXT_remap_index 241 +#define FogCoorddEXT_remap_index 242 +#define FogCoorddvEXT_remap_index 243 +#define FogCoordfEXT_remap_index 244 +#define FogCoordfvEXT_remap_index 245 +#define PixelTexGenSGIX_remap_index 246 +#define BlendFuncSeparateEXT_remap_index 247 +#define FlushVertexArrayRangeNV_remap_index 248 +#define VertexArrayRangeNV_remap_index 249 +#define CombinerInputNV_remap_index 250 +#define CombinerOutputNV_remap_index 251 +#define CombinerParameterfNV_remap_index 252 +#define CombinerParameterfvNV_remap_index 253 +#define CombinerParameteriNV_remap_index 254 +#define CombinerParameterivNV_remap_index 255 +#define FinalCombinerInputNV_remap_index 256 +#define GetCombinerInputParameterfvNV_remap_index 257 +#define GetCombinerInputParameterivNV_remap_index 258 +#define GetCombinerOutputParameterfvNV_remap_index 259 +#define GetCombinerOutputParameterivNV_remap_index 260 +#define GetFinalCombinerInputParameterfvNV_remap_index 261 +#define GetFinalCombinerInputParameterivNV_remap_index 262 +#define ResizeBuffersMESA_remap_index 263 +#define WindowPos2dMESA_remap_index 264 +#define WindowPos2dvMESA_remap_index 265 +#define WindowPos2fMESA_remap_index 266 +#define WindowPos2fvMESA_remap_index 267 +#define WindowPos2iMESA_remap_index 268 +#define WindowPos2ivMESA_remap_index 269 +#define WindowPos2sMESA_remap_index 270 +#define WindowPos2svMESA_remap_index 271 +#define WindowPos3dMESA_remap_index 272 +#define WindowPos3dvMESA_remap_index 273 +#define WindowPos3fMESA_remap_index 274 +#define WindowPos3fvMESA_remap_index 275 +#define WindowPos3iMESA_remap_index 276 +#define WindowPos3ivMESA_remap_index 277 +#define WindowPos3sMESA_remap_index 278 +#define WindowPos3svMESA_remap_index 279 +#define WindowPos4dMESA_remap_index 280 +#define WindowPos4dvMESA_remap_index 281 +#define WindowPos4fMESA_remap_index 282 +#define WindowPos4fvMESA_remap_index 283 +#define WindowPos4iMESA_remap_index 284 +#define WindowPos4ivMESA_remap_index 285 +#define WindowPos4sMESA_remap_index 286 +#define WindowPos4svMESA_remap_index 287 +#define MultiModeDrawArraysIBM_remap_index 288 +#define MultiModeDrawElementsIBM_remap_index 289 +#define DeleteFencesNV_remap_index 290 +#define FinishFenceNV_remap_index 291 +#define GenFencesNV_remap_index 292 +#define GetFenceivNV_remap_index 293 +#define IsFenceNV_remap_index 294 +#define SetFenceNV_remap_index 295 +#define TestFenceNV_remap_index 296 +#define AreProgramsResidentNV_remap_index 297 +#define BindProgramNV_remap_index 298 +#define DeleteProgramsNV_remap_index 299 +#define ExecuteProgramNV_remap_index 300 +#define GenProgramsNV_remap_index 301 +#define GetProgramParameterdvNV_remap_index 302 +#define GetProgramParameterfvNV_remap_index 303 +#define GetProgramStringNV_remap_index 304 +#define GetProgramivNV_remap_index 305 +#define GetTrackMatrixivNV_remap_index 306 +#define GetVertexAttribPointervNV_remap_index 307 +#define GetVertexAttribdvNV_remap_index 308 +#define GetVertexAttribfvNV_remap_index 309 +#define GetVertexAttribivNV_remap_index 310 +#define IsProgramNV_remap_index 311 +#define LoadProgramNV_remap_index 312 +#define ProgramParameters4dvNV_remap_index 313 +#define ProgramParameters4fvNV_remap_index 314 +#define RequestResidentProgramsNV_remap_index 315 +#define TrackMatrixNV_remap_index 316 +#define VertexAttrib1dNV_remap_index 317 +#define VertexAttrib1dvNV_remap_index 318 +#define VertexAttrib1fNV_remap_index 319 +#define VertexAttrib1fvNV_remap_index 320 +#define VertexAttrib1sNV_remap_index 321 +#define VertexAttrib1svNV_remap_index 322 +#define VertexAttrib2dNV_remap_index 323 +#define VertexAttrib2dvNV_remap_index 324 +#define VertexAttrib2fNV_remap_index 325 +#define VertexAttrib2fvNV_remap_index 326 +#define VertexAttrib2sNV_remap_index 327 +#define VertexAttrib2svNV_remap_index 328 +#define VertexAttrib3dNV_remap_index 329 +#define VertexAttrib3dvNV_remap_index 330 +#define VertexAttrib3fNV_remap_index 331 +#define VertexAttrib3fvNV_remap_index 332 +#define VertexAttrib3sNV_remap_index 333 +#define VertexAttrib3svNV_remap_index 334 +#define VertexAttrib4dNV_remap_index 335 +#define VertexAttrib4dvNV_remap_index 336 +#define VertexAttrib4fNV_remap_index 337 +#define VertexAttrib4fvNV_remap_index 338 +#define VertexAttrib4sNV_remap_index 339 +#define VertexAttrib4svNV_remap_index 340 +#define VertexAttrib4ubNV_remap_index 341 +#define VertexAttrib4ubvNV_remap_index 342 +#define VertexAttribPointerNV_remap_index 343 +#define VertexAttribs1dvNV_remap_index 344 +#define VertexAttribs1fvNV_remap_index 345 +#define VertexAttribs1svNV_remap_index 346 +#define VertexAttribs2dvNV_remap_index 347 +#define VertexAttribs2fvNV_remap_index 348 +#define VertexAttribs2svNV_remap_index 349 +#define VertexAttribs3dvNV_remap_index 350 +#define VertexAttribs3fvNV_remap_index 351 +#define VertexAttribs3svNV_remap_index 352 +#define VertexAttribs4dvNV_remap_index 353 +#define VertexAttribs4fvNV_remap_index 354 +#define VertexAttribs4svNV_remap_index 355 +#define VertexAttribs4ubvNV_remap_index 356 +#define GetTexBumpParameterfvATI_remap_index 357 +#define GetTexBumpParameterivATI_remap_index 358 +#define TexBumpParameterfvATI_remap_index 359 +#define TexBumpParameterivATI_remap_index 360 +#define AlphaFragmentOp1ATI_remap_index 361 +#define AlphaFragmentOp2ATI_remap_index 362 +#define AlphaFragmentOp3ATI_remap_index 363 +#define BeginFragmentShaderATI_remap_index 364 +#define BindFragmentShaderATI_remap_index 365 +#define ColorFragmentOp1ATI_remap_index 366 +#define ColorFragmentOp2ATI_remap_index 367 +#define ColorFragmentOp3ATI_remap_index 368 +#define DeleteFragmentShaderATI_remap_index 369 +#define EndFragmentShaderATI_remap_index 370 +#define GenFragmentShadersATI_remap_index 371 +#define PassTexCoordATI_remap_index 372 +#define SampleMapATI_remap_index 373 +#define SetFragmentShaderConstantATI_remap_index 374 +#define PointParameteriNV_remap_index 375 +#define PointParameterivNV_remap_index 376 +#define ActiveStencilFaceEXT_remap_index 377 +#define BindVertexArrayAPPLE_remap_index 378 +#define DeleteVertexArraysAPPLE_remap_index 379 +#define GenVertexArraysAPPLE_remap_index 380 +#define IsVertexArrayAPPLE_remap_index 381 +#define GetProgramNamedParameterdvNV_remap_index 382 +#define GetProgramNamedParameterfvNV_remap_index 383 +#define ProgramNamedParameter4dNV_remap_index 384 +#define ProgramNamedParameter4dvNV_remap_index 385 +#define ProgramNamedParameter4fNV_remap_index 386 +#define ProgramNamedParameter4fvNV_remap_index 387 +#define PrimitiveRestartIndexNV_remap_index 388 +#define PrimitiveRestartNV_remap_index 389 +#define DepthBoundsEXT_remap_index 390 +#define BlendEquationSeparateEXT_remap_index 391 +#define BindFramebufferEXT_remap_index 392 +#define BindRenderbufferEXT_remap_index 393 +#define CheckFramebufferStatusEXT_remap_index 394 +#define DeleteFramebuffersEXT_remap_index 395 +#define DeleteRenderbuffersEXT_remap_index 396 +#define FramebufferRenderbufferEXT_remap_index 397 +#define FramebufferTexture1DEXT_remap_index 398 +#define FramebufferTexture2DEXT_remap_index 399 +#define FramebufferTexture3DEXT_remap_index 400 +#define GenFramebuffersEXT_remap_index 401 +#define GenRenderbuffersEXT_remap_index 402 +#define GenerateMipmapEXT_remap_index 403 +#define GetFramebufferAttachmentParameterivEXT_remap_index 404 +#define GetRenderbufferParameterivEXT_remap_index 405 +#define IsFramebufferEXT_remap_index 406 +#define IsRenderbufferEXT_remap_index 407 +#define RenderbufferStorageEXT_remap_index 408 +#define BlitFramebufferEXT_remap_index 409 +#define BufferParameteriAPPLE_remap_index 410 +#define FlushMappedBufferRangeAPPLE_remap_index 411 +#define BindFragDataLocationEXT_remap_index 412 +#define GetFragDataLocationEXT_remap_index 413 +#define GetUniformuivEXT_remap_index 414 +#define GetVertexAttribIivEXT_remap_index 415 +#define GetVertexAttribIuivEXT_remap_index 416 +#define Uniform1uiEXT_remap_index 417 +#define Uniform1uivEXT_remap_index 418 +#define Uniform2uiEXT_remap_index 419 +#define Uniform2uivEXT_remap_index 420 +#define Uniform3uiEXT_remap_index 421 +#define Uniform3uivEXT_remap_index 422 +#define Uniform4uiEXT_remap_index 423 +#define Uniform4uivEXT_remap_index 424 +#define VertexAttribI1iEXT_remap_index 425 +#define VertexAttribI1ivEXT_remap_index 426 +#define VertexAttribI1uiEXT_remap_index 427 +#define VertexAttribI1uivEXT_remap_index 428 +#define VertexAttribI2iEXT_remap_index 429 +#define VertexAttribI2ivEXT_remap_index 430 +#define VertexAttribI2uiEXT_remap_index 431 +#define VertexAttribI2uivEXT_remap_index 432 +#define VertexAttribI3iEXT_remap_index 433 +#define VertexAttribI3ivEXT_remap_index 434 +#define VertexAttribI3uiEXT_remap_index 435 +#define VertexAttribI3uivEXT_remap_index 436 +#define VertexAttribI4bvEXT_remap_index 437 +#define VertexAttribI4iEXT_remap_index 438 +#define VertexAttribI4ivEXT_remap_index 439 +#define VertexAttribI4svEXT_remap_index 440 +#define VertexAttribI4ubvEXT_remap_index 441 +#define VertexAttribI4uiEXT_remap_index 442 +#define VertexAttribI4uivEXT_remap_index 443 +#define VertexAttribI4usvEXT_remap_index 444 +#define VertexAttribIPointerEXT_remap_index 445 +#define FramebufferTextureLayerEXT_remap_index 446 +#define ColorMaskIndexedEXT_remap_index 447 +#define DisableIndexedEXT_remap_index 448 +#define EnableIndexedEXT_remap_index 449 +#define GetBooleanIndexedvEXT_remap_index 450 +#define GetIntegerIndexedvEXT_remap_index 451 +#define IsEnabledIndexedEXT_remap_index 452 +#define ClearColorIiEXT_remap_index 453 +#define ClearColorIuiEXT_remap_index 454 +#define GetTexParameterIivEXT_remap_index 455 +#define GetTexParameterIuivEXT_remap_index 456 +#define TexParameterIivEXT_remap_index 457 +#define TexParameterIuivEXT_remap_index 458 +#define BeginConditionalRenderNV_remap_index 459 +#define EndConditionalRenderNV_remap_index 460 +#define BeginTransformFeedbackEXT_remap_index 461 +#define BindBufferBaseEXT_remap_index 462 +#define BindBufferOffsetEXT_remap_index 463 +#define BindBufferRangeEXT_remap_index 464 +#define EndTransformFeedbackEXT_remap_index 465 +#define GetTransformFeedbackVaryingEXT_remap_index 466 +#define TransformFeedbackVaryingsEXT_remap_index 467 +#define ProvokingVertexEXT_remap_index 468 +#define GetTexParameterPointervAPPLE_remap_index 469 +#define TextureRangeAPPLE_remap_index 470 +#define GetObjectParameterivAPPLE_remap_index 471 +#define ObjectPurgeableAPPLE_remap_index 472 +#define ObjectUnpurgeableAPPLE_remap_index 473 +#define ActiveProgramEXT_remap_index 474 +#define CreateShaderProgramEXT_remap_index 475 +#define UseShaderProgramEXT_remap_index 476 +#define TextureBarrierNV_remap_index 477 +#define StencilFuncSeparateATI_remap_index 478 +#define ProgramEnvParameters4fvEXT_remap_index 479 +#define ProgramLocalParameters4fvEXT_remap_index 480 +#define GetQueryObjecti64vEXT_remap_index 481 +#define GetQueryObjectui64vEXT_remap_index 482 +#define EGLImageTargetRenderbufferStorageOES_remap_index 483 +#define EGLImageTargetTexture2DOES_remap_index 484 #define _gloffset_AttachShader driDispatchRemapTable[AttachShader_remap_index] #define _gloffset_CreateProgram driDispatchRemapTable[CreateProgram_remap_index] @@ -1611,6 +1613,7 @@ extern int driDispatchRemapTable[ driDispatchRemapTable_size ]; #define _gloffset_GetActiveAttribARB driDispatchRemapTable[GetActiveAttribARB_remap_index] #define _gloffset_GetAttribLocationARB driDispatchRemapTable[GetAttribLocationARB_remap_index] #define _gloffset_DrawBuffersARB driDispatchRemapTable[DrawBuffersARB_remap_index] +#define _gloffset_ClampColorARB driDispatchRemapTable[ClampColorARB_remap_index] #define _gloffset_DrawArraysInstancedARB driDispatchRemapTable[DrawArraysInstancedARB_remap_index] #define _gloffset_DrawElementsInstancedARB driDispatchRemapTable[DrawElementsInstancedARB_remap_index] #define _gloffset_RenderbufferStorageMultisample driDispatchRemapTable[RenderbufferStorageMultisample_remap_index] @@ -3650,6 +3653,9 @@ extern int driDispatchRemapTable[ driDispatchRemapTable_size ]; #define CALL_DrawBuffersARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLenum *)), _gloffset_DrawBuffersARB, parameters) #define GET_DrawBuffersARB(disp) GET_by_offset(disp, _gloffset_DrawBuffersARB) #define SET_DrawBuffersARB(disp, fn) SET_by_offset(disp, _gloffset_DrawBuffersARB, fn) +#define CALL_ClampColorARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum)), _gloffset_ClampColorARB, parameters) +#define GET_ClampColorARB(disp) GET_by_offset(disp, _gloffset_ClampColorARB) +#define SET_ClampColorARB(disp, fn) SET_by_offset(disp, _gloffset_ClampColorARB, fn) #define CALL_DrawArraysInstancedARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLsizei, GLsizei)), _gloffset_DrawArraysInstancedARB, parameters) #define GET_DrawArraysInstancedARB(disp) GET_by_offset(disp, _gloffset_DrawArraysInstancedARB) #define SET_DrawArraysInstancedARB(disp, fn) SET_by_offset(disp, _gloffset_DrawArraysInstancedARB, fn) diff --git a/src/mesa/main/remap_helper.h b/src/mesa/main/remap_helper.h index 61530df3e1a..637905ab43c 100644 --- a/src/mesa/main/remap_helper.h +++ b/src/mesa/main/remap_helper.h @@ -4167,613 +4167,617 @@ static const char _mesa_function_pool[] = "iii\0" "glTangent3iEXT\0" "\0" - /* _mesa_function_pool[29296]: GetLightiv (offset 265) */ + /* _mesa_function_pool[29296]: ClampColorARB (will be remapped) */ + "ii\0" + "glClampColorARB\0" + "\0" + /* _mesa_function_pool[29316]: GetLightiv (offset 265) */ "iip\0" "glGetLightiv\0" "\0" - /* _mesa_function_pool[29314]: DrawMeshArraysSUN (dynamic) */ + /* _mesa_function_pool[29334]: DrawMeshArraysSUN (dynamic) */ "iiii\0" "glDrawMeshArraysSUN\0" "\0" - /* _mesa_function_pool[29340]: IsList (offset 287) */ + /* _mesa_function_pool[29360]: IsList (offset 287) */ "i\0" "glIsList\0" "\0" - /* _mesa_function_pool[29352]: IsSync (will be remapped) */ + /* _mesa_function_pool[29372]: IsSync (will be remapped) */ "i\0" "glIsSync\0" "\0" - /* _mesa_function_pool[29364]: RenderMode (offset 196) */ + /* _mesa_function_pool[29384]: RenderMode (offset 196) */ "i\0" "glRenderMode\0" "\0" - /* _mesa_function_pool[29380]: GetMapControlPointsNV (dynamic) */ + /* _mesa_function_pool[29400]: GetMapControlPointsNV (dynamic) */ "iiiiiip\0" "glGetMapControlPointsNV\0" "\0" - /* _mesa_function_pool[29413]: DrawBuffersARB (will be remapped) */ + /* _mesa_function_pool[29433]: DrawBuffersARB (will be remapped) */ "ip\0" "glDrawBuffers\0" "glDrawBuffersARB\0" "glDrawBuffersATI\0" "\0" - /* _mesa_function_pool[29465]: ClearBufferiv (will be remapped) */ + /* _mesa_function_pool[29485]: ClearBufferiv (will be remapped) */ "iip\0" "glClearBufferiv\0" "\0" - /* _mesa_function_pool[29486]: ProgramLocalParameter4fARB (will be remapped) */ + /* _mesa_function_pool[29506]: ProgramLocalParameter4fARB (will be remapped) */ "iiffff\0" "glProgramLocalParameter4fARB\0" "\0" - /* _mesa_function_pool[29523]: SpriteParameterivSGIX (dynamic) */ + /* _mesa_function_pool[29543]: SpriteParameterivSGIX (dynamic) */ "ip\0" "glSpriteParameterivSGIX\0" "\0" - /* _mesa_function_pool[29551]: ProvokingVertexEXT (will be remapped) */ + /* _mesa_function_pool[29571]: ProvokingVertexEXT (will be remapped) */ "i\0" "glProvokingVertexEXT\0" "glProvokingVertex\0" "\0" - /* _mesa_function_pool[29593]: MultiTexCoord1fARB (offset 378) */ + /* _mesa_function_pool[29613]: MultiTexCoord1fARB (offset 378) */ "if\0" "glMultiTexCoord1f\0" "glMultiTexCoord1fARB\0" "\0" - /* _mesa_function_pool[29636]: LoadName (offset 198) */ + /* _mesa_function_pool[29656]: LoadName (offset 198) */ "i\0" "glLoadName\0" "\0" - /* _mesa_function_pool[29650]: VertexAttribs4ubvNV (will be remapped) */ + /* _mesa_function_pool[29670]: VertexAttribs4ubvNV (will be remapped) */ "iip\0" "glVertexAttribs4ubvNV\0" "\0" - /* _mesa_function_pool[29677]: WeightsvARB (dynamic) */ + /* _mesa_function_pool[29697]: WeightsvARB (dynamic) */ "ip\0" "glWeightsvARB\0" "\0" - /* _mesa_function_pool[29695]: Uniform1fvARB (will be remapped) */ + /* _mesa_function_pool[29715]: Uniform1fvARB (will be remapped) */ "iip\0" "glUniform1fv\0" "glUniform1fvARB\0" "\0" - /* _mesa_function_pool[29729]: CopyTexSubImage1D (offset 325) */ + /* _mesa_function_pool[29749]: CopyTexSubImage1D (offset 325) */ "iiiiii\0" "glCopyTexSubImage1D\0" "glCopyTexSubImage1DEXT\0" "\0" - /* _mesa_function_pool[29780]: CullFace (offset 152) */ + /* _mesa_function_pool[29800]: CullFace (offset 152) */ "i\0" "glCullFace\0" "\0" - /* _mesa_function_pool[29794]: BindTexture (offset 307) */ + /* _mesa_function_pool[29814]: BindTexture (offset 307) */ "ii\0" "glBindTexture\0" "glBindTextureEXT\0" "\0" - /* _mesa_function_pool[29829]: BeginFragmentShaderATI (will be remapped) */ + /* _mesa_function_pool[29849]: BeginFragmentShaderATI (will be remapped) */ "\0" "glBeginFragmentShaderATI\0" "\0" - /* _mesa_function_pool[29856]: MultiTexCoord4fARB (offset 402) */ + /* _mesa_function_pool[29876]: MultiTexCoord4fARB (offset 402) */ "iffff\0" "glMultiTexCoord4f\0" "glMultiTexCoord4fARB\0" "\0" - /* _mesa_function_pool[29902]: VertexAttribs3svNV (will be remapped) */ + /* _mesa_function_pool[29922]: VertexAttribs3svNV (will be remapped) */ "iip\0" "glVertexAttribs3svNV\0" "\0" - /* _mesa_function_pool[29928]: StencilFunc (offset 243) */ + /* _mesa_function_pool[29948]: StencilFunc (offset 243) */ "iii\0" "glStencilFunc\0" "\0" - /* _mesa_function_pool[29947]: CopyPixels (offset 255) */ + /* _mesa_function_pool[29967]: CopyPixels (offset 255) */ "iiiii\0" "glCopyPixels\0" "\0" - /* _mesa_function_pool[29967]: Rectsv (offset 93) */ + /* _mesa_function_pool[29987]: Rectsv (offset 93) */ "pp\0" "glRectsv\0" "\0" - /* _mesa_function_pool[29980]: ReplacementCodeuivSUN (dynamic) */ + /* _mesa_function_pool[30000]: ReplacementCodeuivSUN (dynamic) */ "p\0" "glReplacementCodeuivSUN\0" "\0" - /* _mesa_function_pool[30007]: EnableVertexAttribArrayARB (will be remapped) */ + /* _mesa_function_pool[30027]: EnableVertexAttribArrayARB (will be remapped) */ "i\0" "glEnableVertexAttribArray\0" "glEnableVertexAttribArrayARB\0" "\0" - /* _mesa_function_pool[30065]: NormalPointervINTEL (dynamic) */ + /* _mesa_function_pool[30085]: NormalPointervINTEL (dynamic) */ "ip\0" "glNormalPointervINTEL\0" "\0" - /* _mesa_function_pool[30091]: CopyConvolutionFilter2D (offset 355) */ + /* _mesa_function_pool[30111]: CopyConvolutionFilter2D (offset 355) */ "iiiiii\0" "glCopyConvolutionFilter2D\0" "glCopyConvolutionFilter2DEXT\0" "\0" - /* _mesa_function_pool[30154]: WindowPos3ivMESA (will be remapped) */ + /* _mesa_function_pool[30174]: WindowPos3ivMESA (will be remapped) */ "p\0" "glWindowPos3iv\0" "glWindowPos3ivARB\0" "glWindowPos3ivMESA\0" "\0" - /* _mesa_function_pool[30209]: CopyBufferSubData (will be remapped) */ + /* _mesa_function_pool[30229]: CopyBufferSubData (will be remapped) */ "iiiii\0" "glCopyBufferSubData\0" "\0" - /* _mesa_function_pool[30236]: NormalPointer (offset 318) */ + /* _mesa_function_pool[30256]: NormalPointer (offset 318) */ "iip\0" "glNormalPointer\0" "\0" - /* _mesa_function_pool[30257]: TexParameterfv (offset 179) */ + /* _mesa_function_pool[30277]: TexParameterfv (offset 179) */ "iip\0" "glTexParameterfv\0" "\0" - /* _mesa_function_pool[30279]: IsBufferARB (will be remapped) */ + /* _mesa_function_pool[30299]: IsBufferARB (will be remapped) */ "i\0" "glIsBuffer\0" "glIsBufferARB\0" "\0" - /* _mesa_function_pool[30307]: WindowPos4iMESA (will be remapped) */ + /* _mesa_function_pool[30327]: WindowPos4iMESA (will be remapped) */ "iiii\0" "glWindowPos4iMESA\0" "\0" - /* _mesa_function_pool[30331]: VertexAttrib4uivARB (will be remapped) */ + /* _mesa_function_pool[30351]: VertexAttrib4uivARB (will be remapped) */ "ip\0" "glVertexAttrib4uiv\0" "glVertexAttrib4uivARB\0" "\0" - /* _mesa_function_pool[30376]: Tangent3bvEXT (dynamic) */ + /* _mesa_function_pool[30396]: Tangent3bvEXT (dynamic) */ "p\0" "glTangent3bvEXT\0" "\0" - /* _mesa_function_pool[30395]: VertexAttribI3uivEXT (will be remapped) */ + /* _mesa_function_pool[30415]: VertexAttribI3uivEXT (will be remapped) */ "ip\0" "glVertexAttribI3uivEXT\0" "glVertexAttribI3uiv\0" "\0" - /* _mesa_function_pool[30442]: UniformMatrix3x4fv (will be remapped) */ + /* _mesa_function_pool[30462]: UniformMatrix3x4fv (will be remapped) */ "iiip\0" "glUniformMatrix3x4fv\0" "\0" - /* _mesa_function_pool[30469]: ClipPlane (offset 150) */ + /* _mesa_function_pool[30489]: ClipPlane (offset 150) */ "ip\0" "glClipPlane\0" "\0" - /* _mesa_function_pool[30485]: Recti (offset 90) */ + /* _mesa_function_pool[30505]: Recti (offset 90) */ "iiii\0" "glRecti\0" "\0" - /* _mesa_function_pool[30499]: VertexAttribI3ivEXT (will be remapped) */ + /* _mesa_function_pool[30519]: VertexAttribI3ivEXT (will be remapped) */ "ip\0" "glVertexAttribI3ivEXT\0" "glVertexAttribI3iv\0" "\0" - /* _mesa_function_pool[30544]: DrawRangeElementsBaseVertex (will be remapped) */ + /* _mesa_function_pool[30564]: DrawRangeElementsBaseVertex (will be remapped) */ "iiiiipi\0" "glDrawRangeElementsBaseVertex\0" "\0" - /* _mesa_function_pool[30583]: TexCoordPointervINTEL (dynamic) */ + /* _mesa_function_pool[30603]: TexCoordPointervINTEL (dynamic) */ "iip\0" "glTexCoordPointervINTEL\0" "\0" - /* _mesa_function_pool[30612]: DeleteBuffersARB (will be remapped) */ + /* _mesa_function_pool[30632]: DeleteBuffersARB (will be remapped) */ "ip\0" "glDeleteBuffers\0" "glDeleteBuffersARB\0" "\0" - /* _mesa_function_pool[30651]: PixelTransformParameterfvEXT (dynamic) */ + /* _mesa_function_pool[30671]: PixelTransformParameterfvEXT (dynamic) */ "iip\0" "glPixelTransformParameterfvEXT\0" "\0" - /* _mesa_function_pool[30687]: PrimitiveRestartNV (will be remapped) */ + /* _mesa_function_pool[30707]: PrimitiveRestartNV (will be remapped) */ "\0" "glPrimitiveRestartNV\0" "\0" - /* _mesa_function_pool[30710]: WindowPos4fvMESA (will be remapped) */ + /* _mesa_function_pool[30730]: WindowPos4fvMESA (will be remapped) */ "p\0" "glWindowPos4fvMESA\0" "\0" - /* _mesa_function_pool[30732]: GetPixelMapuiv (offset 272) */ + /* _mesa_function_pool[30752]: GetPixelMapuiv (offset 272) */ "ip\0" "glGetPixelMapuiv\0" "\0" - /* _mesa_function_pool[30753]: Rectf (offset 88) */ + /* _mesa_function_pool[30773]: Rectf (offset 88) */ "ffff\0" "glRectf\0" "\0" - /* _mesa_function_pool[30767]: VertexAttrib1sNV (will be remapped) */ + /* _mesa_function_pool[30787]: VertexAttrib1sNV (will be remapped) */ "ii\0" "glVertexAttrib1sNV\0" "\0" - /* _mesa_function_pool[30790]: Indexfv (offset 47) */ + /* _mesa_function_pool[30810]: Indexfv (offset 47) */ "p\0" "glIndexfv\0" "\0" - /* _mesa_function_pool[30803]: SecondaryColor3svEXT (will be remapped) */ + /* _mesa_function_pool[30823]: SecondaryColor3svEXT (will be remapped) */ "p\0" "glSecondaryColor3sv\0" "glSecondaryColor3svEXT\0" "\0" - /* _mesa_function_pool[30849]: LoadTransposeMatrixfARB (will be remapped) */ + /* _mesa_function_pool[30869]: LoadTransposeMatrixfARB (will be remapped) */ "p\0" "glLoadTransposeMatrixf\0" "glLoadTransposeMatrixfARB\0" "\0" - /* _mesa_function_pool[30901]: GetPointerv (offset 329) */ + /* _mesa_function_pool[30921]: GetPointerv (offset 329) */ "ip\0" "glGetPointerv\0" "glGetPointervEXT\0" "\0" - /* _mesa_function_pool[30936]: Tangent3bEXT (dynamic) */ + /* _mesa_function_pool[30956]: Tangent3bEXT (dynamic) */ "iii\0" "glTangent3bEXT\0" "\0" - /* _mesa_function_pool[30956]: CombinerParameterfNV (will be remapped) */ + /* _mesa_function_pool[30976]: CombinerParameterfNV (will be remapped) */ "if\0" "glCombinerParameterfNV\0" "\0" - /* _mesa_function_pool[30983]: IndexMask (offset 212) */ + /* _mesa_function_pool[31003]: IndexMask (offset 212) */ "i\0" "glIndexMask\0" "\0" - /* _mesa_function_pool[30998]: BindProgramNV (will be remapped) */ + /* _mesa_function_pool[31018]: BindProgramNV (will be remapped) */ "ii\0" "glBindProgramARB\0" "glBindProgramNV\0" "\0" - /* _mesa_function_pool[31035]: VertexAttrib4svARB (will be remapped) */ + /* _mesa_function_pool[31055]: VertexAttrib4svARB (will be remapped) */ "ip\0" "glVertexAttrib4sv\0" "glVertexAttrib4svARB\0" "\0" - /* _mesa_function_pool[31078]: GetFloatv (offset 262) */ + /* _mesa_function_pool[31098]: GetFloatv (offset 262) */ "ip\0" "glGetFloatv\0" "\0" - /* _mesa_function_pool[31094]: CreateDebugObjectMESA (dynamic) */ + /* _mesa_function_pool[31114]: CreateDebugObjectMESA (dynamic) */ "\0" "glCreateDebugObjectMESA\0" "\0" - /* _mesa_function_pool[31120]: GetShaderiv (will be remapped) */ + /* _mesa_function_pool[31140]: GetShaderiv (will be remapped) */ "iip\0" "glGetShaderiv\0" "\0" - /* _mesa_function_pool[31139]: ClientWaitSync (will be remapped) */ + /* _mesa_function_pool[31159]: ClientWaitSync (will be remapped) */ "iii\0" "glClientWaitSync\0" "\0" - /* _mesa_function_pool[31161]: TexCoord4s (offset 124) */ + /* _mesa_function_pool[31181]: TexCoord4s (offset 124) */ "iiii\0" "glTexCoord4s\0" "\0" - /* _mesa_function_pool[31180]: TexCoord3sv (offset 117) */ + /* _mesa_function_pool[31200]: TexCoord3sv (offset 117) */ "p\0" "glTexCoord3sv\0" "\0" - /* _mesa_function_pool[31197]: BindFragmentShaderATI (will be remapped) */ + /* _mesa_function_pool[31217]: BindFragmentShaderATI (will be remapped) */ "i\0" "glBindFragmentShaderATI\0" "\0" - /* _mesa_function_pool[31224]: PopAttrib (offset 218) */ + /* _mesa_function_pool[31244]: PopAttrib (offset 218) */ "\0" "glPopAttrib\0" "\0" - /* _mesa_function_pool[31238]: Fogfv (offset 154) */ + /* _mesa_function_pool[31258]: Fogfv (offset 154) */ "ip\0" "glFogfv\0" "\0" - /* _mesa_function_pool[31250]: UnmapBufferARB (will be remapped) */ + /* _mesa_function_pool[31270]: UnmapBufferARB (will be remapped) */ "i\0" "glUnmapBuffer\0" "glUnmapBufferARB\0" "\0" - /* _mesa_function_pool[31284]: InitNames (offset 197) */ + /* _mesa_function_pool[31304]: InitNames (offset 197) */ "\0" "glInitNames\0" "\0" - /* _mesa_function_pool[31298]: Normal3sv (offset 61) */ + /* _mesa_function_pool[31318]: Normal3sv (offset 61) */ "p\0" "glNormal3sv\0" "\0" - /* _mesa_function_pool[31313]: Minmax (offset 368) */ + /* _mesa_function_pool[31333]: Minmax (offset 368) */ "iii\0" "glMinmax\0" "glMinmaxEXT\0" "\0" - /* _mesa_function_pool[31339]: TexCoord4d (offset 118) */ + /* _mesa_function_pool[31359]: TexCoord4d (offset 118) */ "dddd\0" "glTexCoord4d\0" "\0" - /* _mesa_function_pool[31358]: TexCoord4f (offset 120) */ + /* _mesa_function_pool[31378]: TexCoord4f (offset 120) */ "ffff\0" "glTexCoord4f\0" "\0" - /* _mesa_function_pool[31377]: FogCoorddvEXT (will be remapped) */ + /* _mesa_function_pool[31397]: FogCoorddvEXT (will be remapped) */ "p\0" "glFogCoorddv\0" "glFogCoorddvEXT\0" "\0" - /* _mesa_function_pool[31409]: FinishTextureSUNX (dynamic) */ + /* _mesa_function_pool[31429]: FinishTextureSUNX (dynamic) */ "\0" "glFinishTextureSUNX\0" "\0" - /* _mesa_function_pool[31431]: GetFragmentLightfvSGIX (dynamic) */ + /* _mesa_function_pool[31451]: GetFragmentLightfvSGIX (dynamic) */ "iip\0" "glGetFragmentLightfvSGIX\0" "\0" - /* _mesa_function_pool[31461]: Binormal3fvEXT (dynamic) */ + /* _mesa_function_pool[31481]: Binormal3fvEXT (dynamic) */ "p\0" "glBinormal3fvEXT\0" "\0" - /* _mesa_function_pool[31481]: GetBooleanv (offset 258) */ + /* _mesa_function_pool[31501]: GetBooleanv (offset 258) */ "ip\0" "glGetBooleanv\0" "\0" - /* _mesa_function_pool[31499]: ColorFragmentOp3ATI (will be remapped) */ + /* _mesa_function_pool[31519]: ColorFragmentOp3ATI (will be remapped) */ "iiiiiiiiiiiii\0" "glColorFragmentOp3ATI\0" "\0" - /* _mesa_function_pool[31536]: Hint (offset 158) */ + /* _mesa_function_pool[31556]: Hint (offset 158) */ "ii\0" "glHint\0" "\0" - /* _mesa_function_pool[31547]: Color4dv (offset 28) */ + /* _mesa_function_pool[31567]: Color4dv (offset 28) */ "p\0" "glColor4dv\0" "\0" - /* _mesa_function_pool[31561]: VertexAttrib2svARB (will be remapped) */ + /* _mesa_function_pool[31581]: VertexAttrib2svARB (will be remapped) */ "ip\0" "glVertexAttrib2sv\0" "glVertexAttrib2svARB\0" "\0" - /* _mesa_function_pool[31604]: AreProgramsResidentNV (will be remapped) */ + /* _mesa_function_pool[31624]: AreProgramsResidentNV (will be remapped) */ "ipp\0" "glAreProgramsResidentNV\0" "\0" - /* _mesa_function_pool[31633]: WindowPos3svMESA (will be remapped) */ + /* _mesa_function_pool[31653]: WindowPos3svMESA (will be remapped) */ "p\0" "glWindowPos3sv\0" "glWindowPos3svARB\0" "glWindowPos3svMESA\0" "\0" - /* _mesa_function_pool[31688]: CopyColorSubTable (offset 347) */ + /* _mesa_function_pool[31708]: CopyColorSubTable (offset 347) */ "iiiii\0" "glCopyColorSubTable\0" "glCopyColorSubTableEXT\0" "\0" - /* _mesa_function_pool[31738]: WeightdvARB (dynamic) */ + /* _mesa_function_pool[31758]: WeightdvARB (dynamic) */ "ip\0" "glWeightdvARB\0" "\0" - /* _mesa_function_pool[31756]: DeleteRenderbuffersEXT (will be remapped) */ + /* _mesa_function_pool[31776]: DeleteRenderbuffersEXT (will be remapped) */ "ip\0" "glDeleteRenderbuffers\0" "glDeleteRenderbuffersEXT\0" "\0" - /* _mesa_function_pool[31807]: VertexAttrib4NubvARB (will be remapped) */ + /* _mesa_function_pool[31827]: VertexAttrib4NubvARB (will be remapped) */ "ip\0" "glVertexAttrib4Nubv\0" "glVertexAttrib4NubvARB\0" "\0" - /* _mesa_function_pool[31854]: VertexAttrib3dvNV (will be remapped) */ + /* _mesa_function_pool[31874]: VertexAttrib3dvNV (will be remapped) */ "ip\0" "glVertexAttrib3dvNV\0" "\0" - /* _mesa_function_pool[31878]: GetObjectParameterfvARB (will be remapped) */ + /* _mesa_function_pool[31898]: GetObjectParameterfvARB (will be remapped) */ "iip\0" "glGetObjectParameterfvARB\0" "\0" - /* _mesa_function_pool[31909]: Vertex4iv (offset 147) */ + /* _mesa_function_pool[31929]: Vertex4iv (offset 147) */ "p\0" "glVertex4iv\0" "\0" - /* _mesa_function_pool[31924]: GetProgramEnvParameterdvARB (will be remapped) */ + /* _mesa_function_pool[31944]: GetProgramEnvParameterdvARB (will be remapped) */ "iip\0" "glGetProgramEnvParameterdvARB\0" "\0" - /* _mesa_function_pool[31959]: TexCoord4dv (offset 119) */ + /* _mesa_function_pool[31979]: TexCoord4dv (offset 119) */ "p\0" "glTexCoord4dv\0" "\0" - /* _mesa_function_pool[31976]: LockArraysEXT (will be remapped) */ + /* _mesa_function_pool[31996]: LockArraysEXT (will be remapped) */ "ii\0" "glLockArraysEXT\0" "\0" - /* _mesa_function_pool[31996]: Begin (offset 7) */ + /* _mesa_function_pool[32016]: Begin (offset 7) */ "i\0" "glBegin\0" "\0" - /* _mesa_function_pool[32007]: LightModeli (offset 165) */ + /* _mesa_function_pool[32027]: LightModeli (offset 165) */ "ii\0" "glLightModeli\0" "\0" - /* _mesa_function_pool[32025]: VertexAttribI4ivEXT (will be remapped) */ + /* _mesa_function_pool[32045]: VertexAttribI4ivEXT (will be remapped) */ "ip\0" "glVertexAttribI4ivEXT\0" "glVertexAttribI4iv\0" "\0" - /* _mesa_function_pool[32070]: Rectfv (offset 89) */ + /* _mesa_function_pool[32090]: Rectfv (offset 89) */ "pp\0" "glRectfv\0" "\0" - /* _mesa_function_pool[32083]: BlendEquationSeparateiARB (will be remapped) */ + /* _mesa_function_pool[32103]: BlendEquationSeparateiARB (will be remapped) */ "iii\0" "glBlendEquationSeparateiARB\0" "\0" - /* _mesa_function_pool[32116]: LightModelf (offset 163) */ + /* _mesa_function_pool[32136]: LightModelf (offset 163) */ "if\0" "glLightModelf\0" "\0" - /* _mesa_function_pool[32134]: GetTexParameterfv (offset 282) */ + /* _mesa_function_pool[32154]: GetTexParameterfv (offset 282) */ "iip\0" "glGetTexParameterfv\0" "\0" - /* _mesa_function_pool[32159]: GetLightfv (offset 264) */ + /* _mesa_function_pool[32179]: GetLightfv (offset 264) */ "iip\0" "glGetLightfv\0" "\0" - /* _mesa_function_pool[32177]: PixelTransformParameterivEXT (dynamic) */ + /* _mesa_function_pool[32197]: PixelTransformParameterivEXT (dynamic) */ "iip\0" "glPixelTransformParameterivEXT\0" "\0" - /* _mesa_function_pool[32213]: BinormalPointerEXT (dynamic) */ + /* _mesa_function_pool[32233]: BinormalPointerEXT (dynamic) */ "iip\0" "glBinormalPointerEXT\0" "\0" - /* _mesa_function_pool[32239]: VertexAttrib1dNV (will be remapped) */ + /* _mesa_function_pool[32259]: VertexAttrib1dNV (will be remapped) */ "id\0" "glVertexAttrib1dNV\0" "\0" - /* _mesa_function_pool[32262]: GetCombinerInputParameterivNV (will be remapped) */ + /* _mesa_function_pool[32282]: GetCombinerInputParameterivNV (will be remapped) */ "iiiip\0" "glGetCombinerInputParameterivNV\0" "\0" - /* _mesa_function_pool[32301]: Disable (offset 214) */ + /* _mesa_function_pool[32321]: Disable (offset 214) */ "i\0" "glDisable\0" "\0" - /* _mesa_function_pool[32314]: MultiTexCoord2fvARB (offset 387) */ + /* _mesa_function_pool[32334]: MultiTexCoord2fvARB (offset 387) */ "ip\0" "glMultiTexCoord2fv\0" "glMultiTexCoord2fvARB\0" "\0" - /* _mesa_function_pool[32359]: GetRenderbufferParameterivEXT (will be remapped) */ + /* _mesa_function_pool[32379]: GetRenderbufferParameterivEXT (will be remapped) */ "iip\0" "glGetRenderbufferParameteriv\0" "glGetRenderbufferParameterivEXT\0" "\0" - /* _mesa_function_pool[32425]: CombinerParameterivNV (will be remapped) */ + /* _mesa_function_pool[32445]: CombinerParameterivNV (will be remapped) */ "ip\0" "glCombinerParameterivNV\0" "\0" - /* _mesa_function_pool[32453]: GenFragmentShadersATI (will be remapped) */ + /* _mesa_function_pool[32473]: GenFragmentShadersATI (will be remapped) */ "i\0" "glGenFragmentShadersATI\0" "\0" - /* _mesa_function_pool[32480]: DrawArrays (offset 310) */ + /* _mesa_function_pool[32500]: DrawArrays (offset 310) */ "iii\0" "glDrawArrays\0" "glDrawArraysEXT\0" "\0" - /* _mesa_function_pool[32514]: WeightuivARB (dynamic) */ + /* _mesa_function_pool[32534]: WeightuivARB (dynamic) */ "ip\0" "glWeightuivARB\0" "\0" - /* _mesa_function_pool[32533]: VertexAttrib2sARB (will be remapped) */ + /* _mesa_function_pool[32553]: VertexAttrib2sARB (will be remapped) */ "iii\0" "glVertexAttrib2s\0" "glVertexAttrib2sARB\0" "\0" - /* _mesa_function_pool[32575]: ColorMask (offset 210) */ + /* _mesa_function_pool[32595]: ColorMask (offset 210) */ "iiii\0" "glColorMask\0" "\0" - /* _mesa_function_pool[32593]: GenAsyncMarkersSGIX (dynamic) */ + /* _mesa_function_pool[32613]: GenAsyncMarkersSGIX (dynamic) */ "i\0" "glGenAsyncMarkersSGIX\0" "\0" - /* _mesa_function_pool[32618]: Tangent3svEXT (dynamic) */ + /* _mesa_function_pool[32638]: Tangent3svEXT (dynamic) */ "p\0" "glTangent3svEXT\0" "\0" - /* _mesa_function_pool[32637]: GetListParameterivSGIX (dynamic) */ + /* _mesa_function_pool[32657]: GetListParameterivSGIX (dynamic) */ "iip\0" "glGetListParameterivSGIX\0" "\0" - /* _mesa_function_pool[32667]: BindBufferARB (will be remapped) */ + /* _mesa_function_pool[32687]: BindBufferARB (will be remapped) */ "ii\0" "glBindBuffer\0" "glBindBufferARB\0" "\0" - /* _mesa_function_pool[32700]: GetInfoLogARB (will be remapped) */ + /* _mesa_function_pool[32720]: GetInfoLogARB (will be remapped) */ "iipp\0" "glGetInfoLogARB\0" "\0" - /* _mesa_function_pool[32722]: RasterPos4iv (offset 83) */ + /* _mesa_function_pool[32742]: RasterPos4iv (offset 83) */ "p\0" "glRasterPos4iv\0" "\0" - /* _mesa_function_pool[32740]: Enable (offset 215) */ + /* _mesa_function_pool[32760]: Enable (offset 215) */ "i\0" "glEnable\0" "\0" - /* _mesa_function_pool[32752]: LineStipple (offset 167) */ + /* _mesa_function_pool[32772]: LineStipple (offset 167) */ "ii\0" "glLineStipple\0" "\0" - /* _mesa_function_pool[32770]: VertexAttribs4svNV (will be remapped) */ + /* _mesa_function_pool[32790]: VertexAttribs4svNV (will be remapped) */ "iip\0" "glVertexAttribs4svNV\0" "\0" - /* _mesa_function_pool[32796]: EdgeFlagPointerListIBM (dynamic) */ + /* _mesa_function_pool[32816]: EdgeFlagPointerListIBM (dynamic) */ "ipi\0" "glEdgeFlagPointerListIBM\0" "\0" - /* _mesa_function_pool[32826]: UniformMatrix3x2fv (will be remapped) */ + /* _mesa_function_pool[32846]: UniformMatrix3x2fv (will be remapped) */ "iiip\0" "glUniformMatrix3x2fv\0" "\0" - /* _mesa_function_pool[32853]: GetMinmaxParameterfv (offset 365) */ + /* _mesa_function_pool[32873]: GetMinmaxParameterfv (offset 365) */ "iip\0" "glGetMinmaxParameterfv\0" "glGetMinmaxParameterfvEXT\0" "\0" - /* _mesa_function_pool[32907]: VertexAttrib1fvARB (will be remapped) */ + /* _mesa_function_pool[32927]: VertexAttrib1fvARB (will be remapped) */ "ip\0" "glVertexAttrib1fv\0" "glVertexAttrib1fvARB\0" "\0" - /* _mesa_function_pool[32950]: GenBuffersARB (will be remapped) */ + /* _mesa_function_pool[32970]: GenBuffersARB (will be remapped) */ "ip\0" "glGenBuffers\0" "glGenBuffersARB\0" "\0" - /* _mesa_function_pool[32983]: VertexAttribs1svNV (will be remapped) */ + /* _mesa_function_pool[33003]: VertexAttribs1svNV (will be remapped) */ "iip\0" "glVertexAttribs1svNV\0" "\0" - /* _mesa_function_pool[33009]: Vertex3fv (offset 137) */ + /* _mesa_function_pool[33029]: Vertex3fv (offset 137) */ "p\0" "glVertex3fv\0" "\0" - /* _mesa_function_pool[33024]: GetTexBumpParameterivATI (will be remapped) */ + /* _mesa_function_pool[33044]: GetTexBumpParameterivATI (will be remapped) */ "ip\0" "glGetTexBumpParameterivATI\0" "\0" - /* _mesa_function_pool[33055]: Binormal3bEXT (dynamic) */ + /* _mesa_function_pool[33075]: Binormal3bEXT (dynamic) */ "iii\0" "glBinormal3bEXT\0" "\0" - /* _mesa_function_pool[33076]: FragmentMaterialivSGIX (dynamic) */ + /* _mesa_function_pool[33096]: FragmentMaterialivSGIX (dynamic) */ "iip\0" "glFragmentMaterialivSGIX\0" "\0" - /* _mesa_function_pool[33106]: IsRenderbufferEXT (will be remapped) */ + /* _mesa_function_pool[33126]: IsRenderbufferEXT (will be remapped) */ "i\0" "glIsRenderbuffer\0" "glIsRenderbufferEXT\0" "\0" - /* _mesa_function_pool[33146]: GenProgramsNV (will be remapped) */ + /* _mesa_function_pool[33166]: GenProgramsNV (will be remapped) */ "ip\0" "glGenProgramsARB\0" "glGenProgramsNV\0" "\0" - /* _mesa_function_pool[33183]: VertexAttrib4dvNV (will be remapped) */ + /* _mesa_function_pool[33203]: VertexAttrib4dvNV (will be remapped) */ "ip\0" "glVertexAttrib4dvNV\0" "\0" - /* _mesa_function_pool[33207]: EndFragmentShaderATI (will be remapped) */ + /* _mesa_function_pool[33227]: EndFragmentShaderATI (will be remapped) */ "\0" "glEndFragmentShaderATI\0" "\0" - /* _mesa_function_pool[33232]: Binormal3iEXT (dynamic) */ + /* _mesa_function_pool[33252]: Binormal3iEXT (dynamic) */ "iii\0" "glBinormal3iEXT\0" "\0" - /* _mesa_function_pool[33253]: WindowPos2fMESA (will be remapped) */ + /* _mesa_function_pool[33273]: WindowPos2fMESA (will be remapped) */ "ff\0" "glWindowPos2f\0" "glWindowPos2fARB\0" @@ -4793,7 +4797,7 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 4856, GetProgramInfoLog_remap_index }, { 444, GetProgramiv_remap_index }, { 6529, GetShaderInfoLog_remap_index }, - { 31120, GetShaderiv_remap_index }, + { 31140, GetShaderiv_remap_index }, { 13387, IsProgram_remap_index }, { 12308, IsShader_remap_index }, { 10023, StencilFuncSeparate_remap_index }, @@ -4801,14 +4805,14 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 7594, StencilOpSeparate_remap_index }, { 22252, UniformMatrix2x3fv_remap_index }, { 2886, UniformMatrix2x4fv_remap_index }, - { 32826, UniformMatrix3x2fv_remap_index }, - { 30442, UniformMatrix3x4fv_remap_index }, + { 32846, UniformMatrix3x2fv_remap_index }, + { 30462, UniformMatrix3x4fv_remap_index }, { 16264, UniformMatrix4x2fv_remap_index }, { 3302, UniformMatrix4x3fv_remap_index }, { 5017, ClampColor_remap_index }, { 18028, ClearBufferfi_remap_index }, { 17470, ClearBufferfv_remap_index }, - { 29465, ClearBufferiv_remap_index }, + { 29485, ClearBufferiv_remap_index }, { 13592, ClearBufferuiv_remap_index }, { 19891, GetStringi_remap_index }, { 2827, TexBuffer_remap_index }, @@ -4817,7 +4821,7 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 10123, GetInteger64i_v_remap_index }, { 23278, VertexAttribDivisor_remap_index }, { 9911, LoadTransposeMatrixdARB_remap_index }, - { 30849, LoadTransposeMatrixfARB_remap_index }, + { 30869, LoadTransposeMatrixfARB_remap_index }, { 5637, MultTransposeMatrixdARB_remap_index }, { 23652, MultTransposeMatrixfARB_remap_index }, { 255, SampleCoverageARB_remap_index }, @@ -4829,8 +4833,8 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 20313, CompressedTexSubImage3DARB_remap_index }, { 28621, GetCompressedTexImageARB_remap_index }, { 3868, DisableVertexAttribArrayARB_remap_index }, - { 30007, EnableVertexAttribArrayARB_remap_index }, - { 31924, GetProgramEnvParameterdvARB_remap_index }, + { 30027, EnableVertexAttribArrayARB_remap_index }, + { 31944, GetProgramEnvParameterdvARB_remap_index }, { 23532, GetProgramEnvParameterfvARB_remap_index }, { 27506, GetProgramLocalParameterdvARB_remap_index }, { 8036, GetProgramLocalParameterfvARB_remap_index }, @@ -4845,21 +4849,21 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 8935, ProgramEnvParameter4fvARB_remap_index }, { 3986, ProgramLocalParameter4dARB_remap_index }, { 13097, ProgramLocalParameter4dvARB_remap_index }, - { 29486, ProgramLocalParameter4fARB_remap_index }, + { 29506, ProgramLocalParameter4fARB_remap_index }, { 25837, ProgramLocalParameter4fvARB_remap_index }, { 28375, ProgramStringARB_remap_index }, { 19622, VertexAttrib1dARB_remap_index }, { 15726, VertexAttrib1dvARB_remap_index }, { 4161, VertexAttrib1fARB_remap_index }, - { 32907, VertexAttrib1fvARB_remap_index }, + { 32927, VertexAttrib1fvARB_remap_index }, { 7120, VertexAttrib1sARB_remap_index }, { 2263, VertexAttrib1svARB_remap_index }, { 15157, VertexAttrib2dARB_remap_index }, { 17491, VertexAttrib2dvARB_remap_index }, { 1635, VertexAttrib2fARB_remap_index }, { 17604, VertexAttrib2fvARB_remap_index }, - { 32533, VertexAttrib2sARB_remap_index }, - { 31561, VertexAttrib2svARB_remap_index }, + { 32553, VertexAttrib2sARB_remap_index }, + { 31581, VertexAttrib2svARB_remap_index }, { 11274, VertexAttrib3dARB_remap_index }, { 8602, VertexAttrib3dvARB_remap_index }, { 1722, VertexAttrib3fARB_remap_index }, @@ -4870,7 +4874,7 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 17851, VertexAttrib4NivARB_remap_index }, { 22470, VertexAttrib4NsvARB_remap_index }, { 23484, VertexAttrib4NubARB_remap_index }, - { 31807, VertexAttrib4NubvARB_remap_index }, + { 31827, VertexAttrib4NubvARB_remap_index }, { 19033, VertexAttrib4NuivARB_remap_index }, { 3175, VertexAttrib4NusvARB_remap_index }, { 10863, VertexAttrib4bvARB_remap_index }, @@ -4880,22 +4884,22 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 11832, VertexAttrib4fvARB_remap_index }, { 10239, VertexAttrib4ivARB_remap_index }, { 17284, VertexAttrib4sARB_remap_index }, - { 31035, VertexAttrib4svARB_remap_index }, + { 31055, VertexAttrib4svARB_remap_index }, { 16597, VertexAttrib4ubvARB_remap_index }, - { 30331, VertexAttrib4uivARB_remap_index }, + { 30351, VertexAttrib4uivARB_remap_index }, { 20061, VertexAttrib4usvARB_remap_index }, { 22067, VertexAttribPointerARB_remap_index }, - { 32667, BindBufferARB_remap_index }, + { 32687, BindBufferARB_remap_index }, { 6827, BufferDataARB_remap_index }, { 1537, BufferSubDataARB_remap_index }, - { 30612, DeleteBuffersARB_remap_index }, - { 32950, GenBuffersARB_remap_index }, + { 30632, DeleteBuffersARB_remap_index }, + { 32970, GenBuffersARB_remap_index }, { 17647, GetBufferParameterivARB_remap_index }, { 16744, GetBufferPointervARB_remap_index }, { 1490, GetBufferSubDataARB_remap_index }, - { 30279, IsBufferARB_remap_index }, + { 30299, IsBufferARB_remap_index }, { 26321, MapBufferARB_remap_index }, - { 31250, UnmapBufferARB_remap_index }, + { 31270, UnmapBufferARB_remap_index }, { 351, BeginQueryARB_remap_index }, { 19717, DeleteQueriesARB_remap_index }, { 12159, EndQueryARB_remap_index }, @@ -4913,8 +4917,8 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 11904, GetActiveUniformARB_remap_index }, { 9410, GetAttachedObjectsARB_remap_index }, { 9717, GetHandleARB_remap_index }, - { 32700, GetInfoLogARB_remap_index }, - { 31878, GetObjectParameterfvARB_remap_index }, + { 32720, GetInfoLogARB_remap_index }, + { 31898, GetObjectParameterfvARB_remap_index }, { 27380, GetObjectParameterivARB_remap_index }, { 28858, GetShaderSourceARB_remap_index }, { 28082, GetUniformLocationARB_remap_index }, @@ -4923,7 +4927,7 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 20106, LinkProgramARB_remap_index }, { 20164, ShaderSourceARB_remap_index }, { 7494, Uniform1fARB_remap_index }, - { 29695, Uniform1fvARB_remap_index }, + { 29715, Uniform1fvARB_remap_index }, { 22036, Uniform1iARB_remap_index }, { 20961, Uniform1ivARB_remap_index }, { 2212, Uniform2fARB_remap_index }, @@ -4946,7 +4950,8 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 21315, BindAttribLocationARB_remap_index }, { 4927, GetActiveAttribARB_remap_index }, { 16531, GetAttribLocationARB_remap_index }, - { 29413, DrawBuffersARB_remap_index }, + { 29433, DrawBuffersARB_remap_index }, + { 29296, ClampColorARB_remap_index }, { 17896, DrawArraysInstancedARB_remap_index }, { 6444, DrawElementsInstancedARB_remap_index }, { 13202, RenderbufferStorageMultisample_remap_index }, @@ -4958,18 +4963,18 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 27797, MapBufferRange_remap_index }, { 16375, BindVertexArray_remap_index }, { 14668, GenVertexArrays_remap_index }, - { 30209, CopyBufferSubData_remap_index }, - { 31139, ClientWaitSync_remap_index }, + { 30229, CopyBufferSubData_remap_index }, + { 31159, ClientWaitSync_remap_index }, { 2648, DeleteSync_remap_index }, { 7161, FenceSync_remap_index }, { 15216, GetInteger64v_remap_index }, { 22577, GetSynciv_remap_index }, - { 29352, IsSync_remap_index }, + { 29372, IsSync_remap_index }, { 9358, WaitSync_remap_index }, { 3836, DrawElementsBaseVertex_remap_index }, - { 30544, DrawRangeElementsBaseVertex_remap_index }, + { 30564, DrawRangeElementsBaseVertex_remap_index }, { 26352, MultiDrawElementsBaseVertex_remap_index }, - { 32083, BlendEquationSeparateiARB_remap_index }, + { 32103, BlendEquationSeparateiARB_remap_index }, { 17740, BlendEquationiARB_remap_index }, { 12641, BlendFuncSeparateiARB_remap_index }, { 9783, BlendFunciARB_remap_index }, @@ -5002,7 +5007,7 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 6950, VertexPointerEXT_remap_index }, { 3638, PointParameterfEXT_remap_index }, { 7801, PointParameterfvEXT_remap_index }, - { 31976, LockArraysEXT_remap_index }, + { 31996, LockArraysEXT_remap_index }, { 14909, UnlockArraysEXT_remap_index }, { 1306, SecondaryColor3bEXT_remap_index }, { 7960, SecondaryColor3bvEXT_remap_index }, @@ -5013,7 +5018,7 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 509, SecondaryColor3iEXT_remap_index }, { 16120, SecondaryColor3ivEXT_remap_index }, { 10051, SecondaryColor3sEXT_remap_index }, - { 30803, SecondaryColor3svEXT_remap_index }, + { 30823, SecondaryColor3svEXT_remap_index }, { 27216, SecondaryColor3ubEXT_remap_index }, { 21206, SecondaryColor3ubvEXT_remap_index }, { 12952, SecondaryColor3uiEXT_remap_index }, @@ -5025,7 +5030,7 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 20896, MultiDrawElementsEXT_remap_index }, { 21091, FogCoordPointerEXT_remap_index }, { 4553, FogCoorddEXT_remap_index }, - { 31377, FogCoorddvEXT_remap_index }, + { 31397, FogCoorddvEXT_remap_index }, { 4670, FogCoordfEXT_remap_index }, { 27139, FogCoordfvEXT_remap_index }, { 19130, PixelTexGenSGIX_remap_index }, @@ -5034,13 +5039,13 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 5374, VertexArrayRangeNV_remap_index }, { 28196, CombinerInputNV_remap_index }, { 2155, CombinerOutputNV_remap_index }, - { 30956, CombinerParameterfNV_remap_index }, + { 30976, CombinerParameterfNV_remap_index }, { 5248, CombinerParameterfvNV_remap_index }, { 22301, CombinerParameteriNV_remap_index }, - { 32425, CombinerParameterivNV_remap_index }, + { 32445, CombinerParameterivNV_remap_index }, { 7238, FinalCombinerInputNV_remap_index }, { 9804, GetCombinerInputParameterfvNV_remap_index }, - { 32262, GetCombinerInputParameterivNV_remap_index }, + { 32282, GetCombinerInputParameterivNV_remap_index }, { 216, GetCombinerOutputParameterfvNV_remap_index }, { 13776, GetCombinerOutputParameterivNV_remap_index }, { 6624, GetFinalCombinerInputParameterfvNV_remap_index }, @@ -5048,7 +5053,7 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 12619, ResizeBuffersMESA_remap_index }, { 11101, WindowPos2dMESA_remap_index }, { 1099, WindowPos2dvMESA_remap_index }, - { 33253, WindowPos2fMESA_remap_index }, + { 33273, WindowPos2fMESA_remap_index }, { 7905, WindowPos2fvMESA_remap_index }, { 18171, WindowPos2iMESA_remap_index }, { 20381, WindowPos2ivMESA_remap_index }, @@ -5059,14 +5064,14 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 555, WindowPos3fMESA_remap_index }, { 14970, WindowPos3fvMESA_remap_index }, { 24013, WindowPos3iMESA_remap_index }, - { 30154, WindowPos3ivMESA_remap_index }, + { 30174, WindowPos3ivMESA_remap_index }, { 18825, WindowPos3sMESA_remap_index }, - { 31633, WindowPos3svMESA_remap_index }, + { 31653, WindowPos3svMESA_remap_index }, { 11052, WindowPos4dMESA_remap_index }, { 16988, WindowPos4dvMESA_remap_index }, { 13982, WindowPos4fMESA_remap_index }, - { 30710, WindowPos4fvMESA_remap_index }, - { 30307, WindowPos4iMESA_remap_index }, + { 30730, WindowPos4fvMESA_remap_index }, + { 30327, WindowPos4iMESA_remap_index }, { 12422, WindowPos4ivMESA_remap_index }, { 19009, WindowPos4sMESA_remap_index }, { 3222, WindowPos4svMESA_remap_index }, @@ -5079,11 +5084,11 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 8197, IsFenceNV_remap_index }, { 13703, SetFenceNV_remap_index }, { 4217, TestFenceNV_remap_index }, - { 31604, AreProgramsResidentNV_remap_index }, - { 30998, BindProgramNV_remap_index }, + { 31624, AreProgramsResidentNV_remap_index }, + { 31018, BindProgramNV_remap_index }, { 25872, DeleteProgramsNV_remap_index }, { 21424, ExecuteProgramNV_remap_index }, - { 33146, GenProgramsNV_remap_index }, + { 33166, GenProgramsNV_remap_index }, { 23304, GetProgramParameterdvNV_remap_index }, { 10478, GetProgramParameterfvNV_remap_index }, { 26255, GetProgramStringNV_remap_index }, @@ -5099,11 +5104,11 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 24320, ProgramParameters4fvNV_remap_index }, { 20685, RequestResidentProgramsNV_remap_index }, { 22279, TrackMatrixNV_remap_index }, - { 32239, VertexAttrib1dNV_remap_index }, + { 32259, VertexAttrib1dNV_remap_index }, { 13614, VertexAttrib1dvNV_remap_index }, { 28477, VertexAttrib1fNV_remap_index }, { 2454, VertexAttrib1fvNV_remap_index }, - { 30767, VertexAttrib1sNV_remap_index }, + { 30787, VertexAttrib1sNV_remap_index }, { 15043, VertexAttrib1svNV_remap_index }, { 4832, VertexAttrib2dNV_remap_index }, { 13507, VertexAttrib2dvNV_remap_index }, @@ -5112,13 +5117,13 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 5947, VertexAttrib2sNV_remap_index }, { 18879, VertexAttrib2svNV_remap_index }, { 11249, VertexAttrib3dNV_remap_index }, - { 31854, VertexAttrib3dvNV_remap_index }, + { 31874, VertexAttrib3dvNV_remap_index }, { 10290, VertexAttrib3fNV_remap_index }, { 24712, VertexAttrib3fvNV_remap_index }, { 22122, VertexAttrib3sNV_remap_index }, { 23594, VertexAttrib3svNV_remap_index }, { 28945, VertexAttrib4dNV_remap_index }, - { 33183, VertexAttrib4dvNV_remap_index }, + { 33203, VertexAttrib4dvNV_remap_index }, { 4454, VertexAttrib4fNV_remap_index }, { 9386, VertexAttrib4fvNV_remap_index }, { 26731, VertexAttrib4sNV_remap_index }, @@ -5128,32 +5133,32 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 21604, VertexAttribPointerNV_remap_index }, { 2306, VertexAttribs1dvNV_remap_index }, { 26137, VertexAttribs1fvNV_remap_index }, - { 32983, VertexAttribs1svNV_remap_index }, + { 33003, VertexAttribs1svNV_remap_index }, { 10315, VertexAttribs2dvNV_remap_index }, { 25274, VertexAttribs2fvNV_remap_index }, { 17560, VertexAttribs2svNV_remap_index }, { 5276, VertexAttribs3dvNV_remap_index }, { 2186, VertexAttribs3fvNV_remap_index }, - { 29902, VertexAttribs3svNV_remap_index }, + { 29922, VertexAttribs3svNV_remap_index }, { 26821, VertexAttribs4dvNV_remap_index }, { 5348, VertexAttribs4fvNV_remap_index }, - { 32770, VertexAttribs4svNV_remap_index }, - { 29650, VertexAttribs4ubvNV_remap_index }, + { 32790, VertexAttribs4svNV_remap_index }, + { 29670, VertexAttribs4ubvNV_remap_index }, { 26923, GetTexBumpParameterfvATI_remap_index }, - { 33024, GetTexBumpParameterivATI_remap_index }, + { 33044, GetTexBumpParameterivATI_remap_index }, { 18542, TexBumpParameterfvATI_remap_index }, { 20556, TexBumpParameterivATI_remap_index }, { 15589, AlphaFragmentOp1ATI_remap_index }, { 25555, AlphaFragmentOp2ATI_remap_index }, { 24628, AlphaFragmentOp3ATI_remap_index }, - { 29829, BeginFragmentShaderATI_remap_index }, - { 31197, BindFragmentShaderATI_remap_index }, + { 29849, BeginFragmentShaderATI_remap_index }, + { 31217, BindFragmentShaderATI_remap_index }, { 23723, ColorFragmentOp1ATI_remap_index }, { 4332, ColorFragmentOp2ATI_remap_index }, - { 31499, ColorFragmentOp3ATI_remap_index }, + { 31519, ColorFragmentOp3ATI_remap_index }, { 5514, DeleteFragmentShaderATI_remap_index }, - { 33207, EndFragmentShaderATI_remap_index }, - { 32453, GenFragmentShadersATI_remap_index }, + { 33227, EndFragmentShaderATI_remap_index }, + { 32473, GenFragmentShadersATI_remap_index }, { 25428, PassTexCoordATI_remap_index }, { 6930, SampleMapATI_remap_index }, { 27034, SetFragmentShaderConstantATI_remap_index }, @@ -5171,14 +5176,14 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 8869, ProgramNamedParameter4fNV_remap_index }, { 11740, ProgramNamedParameter4fvNV_remap_index }, { 16899, PrimitiveRestartIndexNV_remap_index }, - { 30687, PrimitiveRestartNV_remap_index }, + { 30707, PrimitiveRestartNV_remap_index }, { 24299, DepthBoundsEXT_remap_index }, { 1198, BlendEquationSeparateEXT_remap_index }, { 14744, BindFramebufferEXT_remap_index }, { 25648, BindRenderbufferEXT_remap_index }, { 9633, CheckFramebufferStatusEXT_remap_index }, { 22620, DeleteFramebuffersEXT_remap_index }, - { 31756, DeleteRenderbuffersEXT_remap_index }, + { 31776, DeleteRenderbuffersEXT_remap_index }, { 13531, FramebufferRenderbufferEXT_remap_index }, { 13720, FramebufferTexture1DEXT_remap_index }, { 11534, FramebufferTexture2DEXT_remap_index }, @@ -5187,9 +5192,9 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 17425, GenRenderbuffersEXT_remap_index }, { 6666, GenerateMipmapEXT_remap_index }, { 21697, GetFramebufferAttachmentParameterivEXT_remap_index }, - { 32359, GetRenderbufferParameterivEXT_remap_index }, + { 32379, GetRenderbufferParameterivEXT_remap_index }, { 20436, IsFramebufferEXT_remap_index }, - { 33106, IsRenderbufferEXT_remap_index }, + { 33126, IsRenderbufferEXT_remap_index }, { 8144, RenderbufferStorageEXT_remap_index }, { 734, BlitFramebufferEXT_remap_index }, { 14329, BufferParameteriAPPLE_remap_index }, @@ -5216,12 +5221,12 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 5302, VertexAttribI2uiEXT_remap_index }, { 4715, VertexAttribI2uivEXT_remap_index }, { 26523, VertexAttribI3iEXT_remap_index }, - { 30499, VertexAttribI3ivEXT_remap_index }, + { 30519, VertexAttribI3ivEXT_remap_index }, { 3379, VertexAttribI3uiEXT_remap_index }, - { 30395, VertexAttribI3uivEXT_remap_index }, + { 30415, VertexAttribI3uivEXT_remap_index }, { 21948, VertexAttribI4bvEXT_remap_index }, { 14622, VertexAttribI4iEXT_remap_index }, - { 32025, VertexAttribI4ivEXT_remap_index }, + { 32045, VertexAttribI4ivEXT_remap_index }, { 13434, VertexAttribI4svEXT_remap_index }, { 16484, VertexAttribI4ubvEXT_remap_index }, { 16183, VertexAttribI4uiEXT_remap_index }, @@ -5250,7 +5255,7 @@ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 14244, EndTransformFeedbackEXT_remap_index }, { 10791, GetTransformFeedbackVaryingEXT_remap_index }, { 20741, TransformFeedbackVaryingsEXT_remap_index }, - { 29551, ProvokingVertexEXT_remap_index }, + { 29571, ProvokingVertexEXT_remap_index }, { 10739, GetTexParameterPointervAPPLE_remap_index }, { 5034, TextureRangeAPPLE_remap_index }, { 11606, GetObjectParameterivAPPLE_remap_index }, @@ -5278,7 +5283,7 @@ static const struct gl_function_remap MESA_alt_functions[] = { { 11211, _gloffset_BlendEquation }, /* from GL_EXT_color_subtable */ { 17010, _gloffset_ColorSubTable }, - { 31688, _gloffset_CopyColorSubTable }, + { 31708, _gloffset_CopyColorSubTable }, /* from GL_EXT_convolution */ { 296, _gloffset_ConvolutionFilter1D }, { 2493, _gloffset_CopyConvolutionFilter1D }, @@ -5292,13 +5297,13 @@ static const struct gl_function_remap MESA_alt_functions[] = { { 25053, _gloffset_ConvolutionParameterf }, { 26757, _gloffset_GetConvolutionParameterfv }, { 27646, _gloffset_GetConvolutionFilter }, - { 30091, _gloffset_CopyConvolutionFilter2D }, + { 30111, _gloffset_CopyConvolutionFilter2D }, /* from GL_EXT_copy_texture */ { 15103, _gloffset_CopyTexSubImage3D }, { 16697, _gloffset_CopyTexImage2D }, { 24538, _gloffset_CopyTexImage1D }, { 27327, _gloffset_CopyTexSubImage2D }, - { 29729, _gloffset_CopyTexSubImage1D }, + { 29749, _gloffset_CopyTexSubImage1D }, /* from GL_EXT_draw_range_elements */ { 9492, _gloffset_DrawRangeElements }, /* from GL_EXT_histogram */ @@ -5310,8 +5315,8 @@ static const struct gl_function_remap MESA_alt_functions[] = { { 26647, _gloffset_ResetMinmax }, { 27543, _gloffset_GetHistogramParameteriv }, { 28744, _gloffset_GetHistogram }, - { 31313, _gloffset_Minmax }, - { 32853, _gloffset_GetMinmaxParameterfv }, + { 31333, _gloffset_Minmax }, + { 32873, _gloffset_GetMinmaxParameterfv }, /* from GL_EXT_paletted_texture */ { 8355, _gloffset_ColorTable }, { 15283, _gloffset_GetColorTable }, @@ -5329,11 +5334,11 @@ static const struct gl_function_remap MESA_alt_functions[] = { { 13638, _gloffset_GenTextures }, { 15769, _gloffset_DeleteTextures }, { 19569, _gloffset_IsTexture }, - { 29794, _gloffset_BindTexture }, + { 29814, _gloffset_BindTexture }, /* from GL_EXT_vertex_array */ { 24239, _gloffset_ArrayElement }, - { 30901, _gloffset_GetPointerv }, - { 32480, _gloffset_DrawArrays }, + { 30921, _gloffset_GetPointerv }, + { 32500, _gloffset_DrawArrays }, /* from GL_SGI_color_table */ { 7643, _gloffset_ColorTableParameteriv }, { 8355, _gloffset_ColorTable }, @@ -5374,9 +5379,9 @@ static const struct gl_function_remap MESA_alt_functions[] = { { 27264, _gloffset_MultiTexCoord2ivARB }, { 27603, _gloffset_MultiTexCoord1iARB }, { 29019, _gloffset_MultiTexCoord4svARB }, - { 29593, _gloffset_MultiTexCoord1fARB }, - { 29856, _gloffset_MultiTexCoord4fARB }, - { 32314, _gloffset_MultiTexCoord2fvARB }, + { 29613, _gloffset_MultiTexCoord1fARB }, + { 29876, _gloffset_MultiTexCoord4fARB }, + { 32334, _gloffset_MultiTexCoord2fvARB }, { -1, -1 } }; @@ -5424,6 +5429,13 @@ static const struct gl_function_remap GL_ARB_ES2_compatibility_functions[] = { }; #endif +#if defined(need_GL_ARB_color_buffer_float) +/* functions defined in MESA_remap_table_functions are excluded */ +static const struct gl_function_remap GL_ARB_color_buffer_float_functions[] = { + { -1, -1 } +}; +#endif + #if defined(need_GL_ARB_copy_buffer) /* functions defined in MESA_remap_table_functions are excluded */ static const struct gl_function_remap GL_ARB_copy_buffer_functions[] = { @@ -5578,9 +5590,9 @@ static const struct gl_function_remap GL_ARB_vertex_blend_functions[] = { { 17586, -1 }, /* WeightbvARB */ { 21048, -1 }, /* WeightusvARB */ { 23993, -1 }, /* VertexBlendARB */ - { 29677, -1 }, /* WeightsvARB */ - { 31738, -1 }, /* WeightdvARB */ - { 32514, -1 }, /* WeightuivARB */ + { 29697, -1 }, /* WeightsvARB */ + { 31758, -1 }, /* WeightdvARB */ + { 32534, -1 }, /* WeightuivARB */ { -1, -1 } }; #endif @@ -5679,7 +5691,7 @@ static const struct gl_function_remap GL_EXT_blend_minmax_functions[] = { #if defined(need_GL_EXT_color_subtable) static const struct gl_function_remap GL_EXT_color_subtable_functions[] = { { 17010, _gloffset_ColorSubTable }, - { 31688, _gloffset_CopyColorSubTable }, + { 31708, _gloffset_CopyColorSubTable }, { -1, -1 } }; #endif @@ -5705,7 +5717,7 @@ static const struct gl_function_remap GL_EXT_convolution_functions[] = { { 25053, _gloffset_ConvolutionParameterf }, { 26757, _gloffset_GetConvolutionParameterfv }, { 27646, _gloffset_GetConvolutionFilter }, - { 30091, _gloffset_CopyConvolutionFilter2D }, + { 30111, _gloffset_CopyConvolutionFilter2D }, { -1, -1 } }; #endif @@ -5727,13 +5739,13 @@ static const struct gl_function_remap GL_EXT_coordinate_frame_functions[] = { { 27069, -1 }, /* Binormal3fEXT */ { 27957, -1 }, /* Binormal3dvEXT */ { 29276, -1 }, /* Tangent3iEXT */ - { 30376, -1 }, /* Tangent3bvEXT */ - { 30936, -1 }, /* Tangent3bEXT */ - { 31461, -1 }, /* Binormal3fvEXT */ - { 32213, -1 }, /* BinormalPointerEXT */ - { 32618, -1 }, /* Tangent3svEXT */ - { 33055, -1 }, /* Binormal3bEXT */ - { 33232, -1 }, /* Binormal3iEXT */ + { 30396, -1 }, /* Tangent3bvEXT */ + { 30956, -1 }, /* Tangent3bEXT */ + { 31481, -1 }, /* Binormal3fvEXT */ + { 32233, -1 }, /* BinormalPointerEXT */ + { 32638, -1 }, /* Tangent3svEXT */ + { 33075, -1 }, /* Binormal3bEXT */ + { 33252, -1 }, /* Binormal3iEXT */ { -1, -1 } }; #endif @@ -5744,7 +5756,7 @@ static const struct gl_function_remap GL_EXT_copy_texture_functions[] = { { 16697, _gloffset_CopyTexImage2D }, { 24538, _gloffset_CopyTexImage1D }, { 27327, _gloffset_CopyTexSubImage2D }, - { 29729, _gloffset_CopyTexSubImage1D }, + { 29749, _gloffset_CopyTexSubImage1D }, { -1, -1 } }; #endif @@ -5837,8 +5849,8 @@ static const struct gl_function_remap GL_EXT_histogram_functions[] = { { 26647, _gloffset_ResetMinmax }, { 27543, _gloffset_GetHistogramParameteriv }, { 28744, _gloffset_GetHistogram }, - { 31313, _gloffset_Minmax }, - { 32853, _gloffset_GetMinmaxParameterfv }, + { 31333, _gloffset_Minmax }, + { 32873, _gloffset_GetMinmaxParameterfv }, { -1, -1 } }; #endif @@ -5894,8 +5906,8 @@ static const struct gl_function_remap GL_EXT_paletted_texture_functions[] = { static const struct gl_function_remap GL_EXT_pixel_transform_functions[] = { { 21782, -1 }, /* PixelTransformParameterfEXT */ { 21862, -1 }, /* PixelTransformParameteriEXT */ - { 30651, -1 }, /* PixelTransformParameterfvEXT */ - { 32177, -1 }, /* PixelTransformParameterivEXT */ + { 30671, -1 }, /* PixelTransformParameterfvEXT */ + { 32197, -1 }, /* PixelTransformParameterivEXT */ { -1, -1 } }; #endif @@ -5979,7 +5991,7 @@ static const struct gl_function_remap GL_EXT_texture_object_functions[] = { { 13638, _gloffset_GenTextures }, { 15769, _gloffset_DeleteTextures }, { 19569, _gloffset_IsTexture }, - { 29794, _gloffset_BindTexture }, + { 29814, _gloffset_BindTexture }, { -1, -1 } }; #endif @@ -6009,8 +6021,8 @@ static const struct gl_function_remap GL_EXT_transform_feedback_functions[] = { /* functions defined in MESA_remap_table_functions are excluded */ static const struct gl_function_remap GL_EXT_vertex_array_functions[] = { { 24239, _gloffset_ArrayElement }, - { 30901, _gloffset_GetPointerv }, - { 32480, _gloffset_DrawArrays }, + { 30921, _gloffset_GetPointerv }, + { 32500, _gloffset_DrawArrays }, { -1, -1 } }; #endif @@ -6052,7 +6064,7 @@ static const struct gl_function_remap GL_IBM_vertex_array_lists_functions[] = { { 11875, -1 }, /* ColorPointerListIBM */ { 13402, -1 }, /* TexCoordPointerListIBM */ { 13870, -1 }, /* IndexPointerListIBM */ - { 32796, -1 }, /* EdgeFlagPointerListIBM */ + { 32816, -1 }, /* EdgeFlagPointerListIBM */ { -1, -1 } }; #endif @@ -6068,8 +6080,8 @@ static const struct gl_function_remap GL_INGR_blend_func_separate_functions[] = static const struct gl_function_remap GL_INTEL_parallel_arrays_functions[] = { { 12742, -1 }, /* VertexPointervINTEL */ { 15530, -1 }, /* ColorPointervINTEL */ - { 30065, -1 }, /* NormalPointervINTEL */ - { 30583, -1 }, /* TexCoordPointervINTEL */ + { 30085, -1 }, /* NormalPointervINTEL */ + { 30603, -1 }, /* TexCoordPointervINTEL */ { -1, -1 } }; #endif @@ -6086,7 +6098,7 @@ static const struct gl_function_remap GL_MESA_shader_debug_functions[] = { { 1677, -1 }, /* GetDebugLogLengthMESA */ { 3500, -1 }, /* ClearDebugLogMESA */ { 4527, -1 }, /* GetDebugLogMESA */ - { 31094, -1 }, /* CreateDebugObjectMESA */ + { 31114, -1 }, /* CreateDebugObjectMESA */ { -1, -1 } }; #endif @@ -6115,7 +6127,7 @@ static const struct gl_function_remap GL_NV_evaluators_functions[] = { { 17401, -1 }, /* MapParameterivNV */ { 24853, -1 }, /* GetMapParameterivNV */ { 25351, -1 }, /* GetMapParameterfvNV */ - { 29380, -1 }, /* GetMapControlPointsNV */ + { 29400, -1 }, /* GetMapControlPointsNV */ { -1, -1 } }; #endif @@ -6273,7 +6285,7 @@ static const struct gl_function_remap GL_SGIX_async_functions[] = { { 5495, -1 }, /* PollAsyncSGIX */ { 22328, -1 }, /* DeleteAsyncMarkersSGIX */ { 22383, -1 }, /* IsAsyncMarkerSGIX */ - { 32593, -1 }, /* GenAsyncMarkersSGIX */ + { 32613, -1 }, /* GenAsyncMarkersSGIX */ { -1, -1 } }; #endif @@ -6303,8 +6315,8 @@ static const struct gl_function_remap GL_SGIX_fragment_lighting_functions[] = { { 23409, -1 }, /* FragmentLightfvSGIX */ { 28446, -1 }, /* FragmentLightModelivSGIX */ { 28595, -1 }, /* FragmentLightfSGIX */ - { 31431, -1 }, /* GetFragmentLightfvSGIX */ - { 33076, -1 }, /* FragmentMaterialivSGIX */ + { 31451, -1 }, /* GetFragmentLightfvSGIX */ + { 33096, -1 }, /* FragmentMaterialivSGIX */ { -1, -1 } }; #endif @@ -6342,7 +6354,7 @@ static const struct gl_function_remap GL_SGIX_list_priority_functions[] = { { 17714, -1 }, /* ListParameteriSGIX */ { 18728, -1 }, /* ListParameterfvSGIX */ { 20869, -1 }, /* ListParameterivSGIX */ - { 32637, -1 }, /* GetListParameterivSGIX */ + { 32657, -1 }, /* GetListParameterivSGIX */ { -1, -1 } }; #endif @@ -6376,7 +6388,7 @@ static const struct gl_function_remap GL_SGIX_sprite_functions[] = { { 9605, -1 }, /* SpriteParameterfvSGIX */ { 20658, -1 }, /* SpriteParameteriSGIX */ { 26681, -1 }, /* SpriteParameterfSGIX */ - { 29523, -1 }, /* SpriteParameterivSGIX */ + { 29543, -1 }, /* SpriteParameterivSGIX */ { -1, -1 } }; #endif @@ -6403,7 +6415,7 @@ static const struct gl_function_remap GL_SGI_color_table_functions[] = { #if defined(need_GL_SUNX_constant_data) static const struct gl_function_remap GL_SUNX_constant_data_functions[] = { - { 31409, -1 }, /* FinishTextureSUNX */ + { 31429, -1 }, /* FinishTextureSUNX */ { -1, -1 } }; #endif @@ -6424,7 +6436,7 @@ static const struct gl_function_remap GL_SUN_global_alpha_functions[] = { #if defined(need_GL_SUN_mesh_array) static const struct gl_function_remap GL_SUN_mesh_array_functions[] = { - { 29314, -1 }, /* DrawMeshArraysSUN */ + { 29334, -1 }, /* DrawMeshArraysSUN */ { -1, -1 } }; #endif @@ -6437,7 +6449,7 @@ static const struct gl_function_remap GL_SUN_triangle_list_functions[] = { { 19339, -1 }, /* ReplacementCodePointerSUN */ { 21527, -1 }, /* ReplacementCodeuiSUN */ { 22357, -1 }, /* ReplacementCodeusSUN */ - { 29980, -1 }, /* ReplacementCodeuivSUN */ + { 30000, -1 }, /* ReplacementCodeuivSUN */ { -1, -1 } }; #endif @@ -6522,9 +6534,9 @@ static const struct gl_function_remap GL_VERSION_1_3_functions[] = { { 27264, _gloffset_MultiTexCoord2ivARB }, { 27603, _gloffset_MultiTexCoord1iARB }, { 29019, _gloffset_MultiTexCoord4svARB }, - { 29593, _gloffset_MultiTexCoord1fARB }, - { 29856, _gloffset_MultiTexCoord4fARB }, - { 32314, _gloffset_MultiTexCoord2fvARB }, + { 29613, _gloffset_MultiTexCoord1fARB }, + { 29876, _gloffset_MultiTexCoord4fARB }, + { 32334, _gloffset_MultiTexCoord2fvARB }, { -1, -1 } }; #endif From e5c6a92a12b5cd7db205d72039f58d302b0be9d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Tue, 15 Feb 2011 23:30:23 +0100 Subject: [PATCH 065/420] mesa: implement clamping controls (ARB_color_buffer_float) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Squashed commit of the following: Author: Marek Olšák mesa: fix getteximage so that it doesn't clamp values mesa: update the compute_version function mesa: add display list support for ARB_color_buffer_float mesa: fix glGet query with GL_ALPHA_TEST_REF and ARB_color_buffer_float commit b2f6ddf907935b2594d2831ddab38cf57a1729ce Author: Luca Barbieri Date: Tue Aug 31 16:50:57 2010 +0200 mesa: document known possible deviations from ARB_color_buffer_float commit 5458935be800c1b19d1c9d1569dc4fa30a97e8b8 Author: Luca Barbieri Date: Tue Aug 24 21:54:56 2010 +0200 mesa: expose GL_ARB_color_buffer_float commit aef5c3c6be6edd076e955e37c80905bc447f8a82 Author: Luca Barbieri Date: Thu Aug 26 18:12:34 2010 +0200 mesa, mesa/st: handle read color clamping properly (I'll squash the st/mesa part to a separate commit. -Marek) We set IMAGE_CLAMP_BIT in the caller based on _ClampReadColor, where the operation mandates it. TODO: did I get the set of operations mandating it right? commit 3a9cb5e59b676b6148c50907ce6eef5441677e36 Author: Luca Barbieri Date: Thu Aug 26 18:09:41 2010 +0200 mesa: respect color clamping in texenv programs (v2) Changes in v2: - Fix attributes other than vertex color sometimes getting clamped commit de26f9e47e886e176aab6e5a2c3d4481efb64362 Author: Luca Barbieri Date: Thu Aug 26 18:05:53 2010 +0200 mesa: restore color clamps on glPopAttrib commit a55ac3c300c189616627c05d924c40a8b55bfafa Author: Luca Barbieri Date: Thu Aug 26 18:04:26 2010 +0200 mesa: clamp color queries if and only if fragment clamping is enabled commit 9940a3e31c2fb76cc3d28b15ea78dde369825107 Author: Luca Barbieri Date: Wed Aug 25 00:00:16 2010 +0200 mesa: introduce derived _ClampXxxColor state resolving FIXED_ONLY To do this, we make ClampColor call FLUSH_VERTICES with the appropriate _NEW flag. We introduce _NEW_FRAG_CLAMP since fragment clamping has wide-ranging effects, despite being in the Color attrib group. This may be easily changed by s/_NEW_FRAG_CLAMP/_NEW_COLOR/g commit 6244c446e3beed5473b4e811d10787e4019f59d6 Author: Luca Barbieri Date: Thu Aug 26 17:58:24 2010 +0200 mesa: add unclamped color parameters --- docs/ARB_color_buffer_float.txt | 4 ++ src/mapi/glapi/gen/ARB_color_buffer_float.xml | 25 +++++++++++ src/mapi/glapi/gen/Makefile | 1 + src/mapi/glapi/gen/gl_API.xml | 1 + src/mesa/drivers/dri/i915/i915_fragprog.c | 2 +- src/mesa/drivers/dri/i965/brw_program.c | 2 +- src/mesa/main/api_exec.c | 2 + src/mesa/main/attrib.c | 21 +++++---- src/mesa/main/blend.c | 37 +++++++++------ src/mesa/main/clear.c | 20 ++++++--- src/mesa/main/colortab.c | 7 ++- src/mesa/main/dlist.c | 27 +++++++++++ src/mesa/main/extensions.c | 1 + src/mesa/main/ff_fragment_shader.cpp | 4 +- src/mesa/main/fog.c | 5 +++ src/mesa/main/get.c | 45 +++++++++++++++++-- src/mesa/main/mtypes.h | 20 ++++++++- src/mesa/main/pack.c | 11 ----- src/mesa/main/state.c | 40 ++++++++++++++++- src/mesa/main/texenv.c | 21 +++++---- src/mesa/main/texparam.c | 21 +++++++-- src/mesa/main/version.c | 2 + src/mesa/program/arbprogparse.c | 5 ++- src/mesa/program/prog_statevars.c | 32 +++++++++++-- src/mesa/program/prog_statevars.h | 1 + src/mesa/program/programopt.c | 5 ++- src/mesa/program/programopt.h | 2 +- 27 files changed, 294 insertions(+), 70 deletions(-) create mode 100644 docs/ARB_color_buffer_float.txt create mode 100644 src/mapi/glapi/gen/ARB_color_buffer_float.xml diff --git a/docs/ARB_color_buffer_float.txt b/docs/ARB_color_buffer_float.txt new file mode 100644 index 00000000000..e5011200263 --- /dev/null +++ b/docs/ARB_color_buffer_float.txt @@ -0,0 +1,4 @@ +Known issues in the ARB_color_buffer_float implementation: +- Rendering to multiple render targets, some fixed-point, some floating-point, with FIXED_ONLY fragment clamping and polygon smooth enabled may write incorrect values to the fixed point buffers (depends on spec interpretation) +- For fragment programs with ARB_fog_* options, colors are clamped before fog application regardless of the fragment clamping setting (this depends on spec interpretation) + diff --git a/src/mapi/glapi/gen/ARB_color_buffer_float.xml b/src/mapi/glapi/gen/ARB_color_buffer_float.xml new file mode 100644 index 00000000000..7acf271558e --- /dev/null +++ b/src/mapi/glapi/gen/ARB_color_buffer_float.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/mapi/glapi/gen/Makefile b/src/mapi/glapi/gen/Makefile index 42eed167969..454ea4c9b31 100644 --- a/src/mapi/glapi/gen/Makefile +++ b/src/mapi/glapi/gen/Makefile @@ -69,6 +69,7 @@ XORG_OUTPUTS = \ API_XML = \ gl_API.xml \ + ARB_color_buffer_float.xml \ ARB_copy_buffer.xml \ ARB_depth_clamp.xml \ ARB_draw_buffers_blend.xml \ diff --git a/src/mapi/glapi/gen/gl_API.xml b/src/mapi/glapi/gen/gl_API.xml index 56c0ec71b36..cb20ac73e86 100644 --- a/src/mapi/glapi/gen/gl_API.xml +++ b/src/mapi/glapi/gen/gl_API.xml @@ -7979,6 +7979,7 @@ + diff --git a/src/mesa/drivers/dri/i915/i915_fragprog.c b/src/mesa/drivers/dri/i915/i915_fragprog.c index 2bfe665cb65..89de2a8b0d3 100644 --- a/src/mesa/drivers/dri/i915/i915_fragprog.c +++ b/src/mesa/drivers/dri/i915/i915_fragprog.c @@ -1291,7 +1291,7 @@ i915ProgramStringNotify(struct gl_context * ctx, */ if (p->FragProg.FogOption) { /* add extra instructions to do fog, then turn off FogOption field */ - _mesa_append_fog_code(ctx, &p->FragProg); + _mesa_append_fog_code(ctx, &p->FragProg, TRUE); p->FragProg.FogOption = GL_NONE; } } diff --git a/src/mesa/drivers/dri/i965/brw_program.c b/src/mesa/drivers/dri/i965/brw_program.c index ee68095fceb..2132b8210ba 100644 --- a/src/mesa/drivers/dri/i965/brw_program.c +++ b/src/mesa/drivers/dri/i965/brw_program.c @@ -135,7 +135,7 @@ static GLboolean brwProgramStringNotify( struct gl_context *ctx, struct gl_shader_program *shader_program; if (fprog->FogOption) { - _mesa_append_fog_code(ctx, fprog); + _mesa_append_fog_code(ctx, fprog, TRUE); fprog->FogOption = GL_NONE; } diff --git a/src/mesa/main/api_exec.c b/src/mesa/main/api_exec.c index 4da48936484..f7603705b72 100644 --- a/src/mesa/main/api_exec.c +++ b/src/mesa/main/api_exec.c @@ -691,6 +691,8 @@ _mesa_create_exec_table(void) SET_FramebufferTextureFaceARB(exec, _mesa_FramebufferTextureFaceARB); #endif + SET_ClampColorARB(exec, _mesa_ClampColorARB); + /* GL_EXT_texture_integer */ SET_ClearColorIiEXT(exec, _mesa_ClearColorIiEXT); SET_ClearColorIuiEXT(exec, _mesa_ClearColorIuiEXT); diff --git a/src/mesa/main/attrib.c b/src/mesa/main/attrib.c index ae7f633b8d8..340c06c979d 100644 --- a/src/mesa/main/attrib.c +++ b/src/mesa/main/attrib.c @@ -879,10 +879,10 @@ _mesa_PopAttrib(void) color = (const struct gl_colorbuffer_attrib *) attr->data; _mesa_ClearIndex((GLfloat) color->ClearIndex); - _mesa_ClearColor(color->ClearColor[0], - color->ClearColor[1], - color->ClearColor[2], - color->ClearColor[3]); + _mesa_ClearColor(color->ClearColorUnclamped[0], + color->ClearColorUnclamped[1], + color->ClearColorUnclamped[2], + color->ClearColorUnclamped[3]); _mesa_IndexMask(color->IndexMask); if (!ctx->Extensions.EXT_draw_buffers2) { _mesa_ColorMask((GLboolean) (color->ColorMask[0][0] != 0), @@ -930,7 +930,7 @@ _mesa_PopAttrib(void) _mesa_DrawBuffer(color->DrawBuffer[0]); } _mesa_set_enable(ctx, GL_ALPHA_TEST, color->AlphaEnabled); - _mesa_AlphaFunc(color->AlphaFunc, color->AlphaRef); + _mesa_AlphaFunc(color->AlphaFunc, color->AlphaRefUnclamped); if (ctx->Color.BlendEnabled != color->BlendEnabled) { if (ctx->Extensions.EXT_draw_buffers2) { GLuint i; @@ -976,16 +976,18 @@ _mesa_PopAttrib(void) color->Blend[0].EquationA); } } - _mesa_BlendColor(color->BlendColor[0], - color->BlendColor[1], - color->BlendColor[2], - color->BlendColor[3]); + _mesa_BlendColor(color->BlendColorUnclamped[0], + color->BlendColorUnclamped[1], + color->BlendColorUnclamped[2], + color->BlendColorUnclamped[3]); _mesa_LogicOp(color->LogicOp); _mesa_set_enable(ctx, GL_COLOR_LOGIC_OP, color->ColorLogicOpEnabled); _mesa_set_enable(ctx, GL_INDEX_LOGIC_OP, color->IndexLogicOpEnabled); _mesa_set_enable(ctx, GL_DITHER, color->DitherFlag); + _mesa_ClampColorARB(GL_CLAMP_FRAGMENT_COLOR_ARB, color->ClampFragmentColor); + _mesa_ClampColorARB(GL_CLAMP_READ_COLOR_ARB, color->ClampReadColor); } break; case GL_CURRENT_BIT: @@ -1108,6 +1110,7 @@ _mesa_PopAttrib(void) /* materials */ memcpy(&ctx->Light.Material, &light->Material, sizeof(struct gl_material)); + _mesa_ClampColorARB(GL_CLAMP_VERTEX_COLOR_ARB, light->ClampVertexColor); } break; case GL_LINE_BIT: diff --git a/src/mesa/main/blend.c b/src/mesa/main/blend.c index c74a168036a..95c101c34ae 100644 --- a/src/mesa/main/blend.c +++ b/src/mesa/main/blend.c @@ -513,19 +513,24 @@ _mesa_BlendColor( GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha ) GET_CURRENT_CONTEXT(ctx); ASSERT_OUTSIDE_BEGIN_END(ctx); - tmp[0] = CLAMP( red, 0.0F, 1.0F ); - tmp[1] = CLAMP( green, 0.0F, 1.0F ); - tmp[2] = CLAMP( blue, 0.0F, 1.0F ); - tmp[3] = CLAMP( alpha, 0.0F, 1.0F ); + tmp[0] = red; + tmp[1] = green; + tmp[2] = blue; + tmp[3] = alpha; - if (TEST_EQ_4V(tmp, ctx->Color.BlendColor)) + if (TEST_EQ_4V(tmp, ctx->Color.BlendColorUnclamped)) return; FLUSH_VERTICES(ctx, _NEW_COLOR); - COPY_4FV( ctx->Color.BlendColor, tmp ); + COPY_4FV( ctx->Color.BlendColorUnclamped, tmp ); + + ctx->Color.BlendColor[0] = CLAMP(tmp[0], 0.0F, 1.0F); + ctx->Color.BlendColor[1] = CLAMP(tmp[1], 0.0F, 1.0F); + ctx->Color.BlendColor[2] = CLAMP(tmp[2], 0.0F, 1.0F); + ctx->Color.BlendColor[3] = CLAMP(tmp[3], 0.0F, 1.0F); if (ctx->Driver.BlendColor) - (*ctx->Driver.BlendColor)(ctx, tmp); + (*ctx->Driver.BlendColor)(ctx, ctx->Color.BlendColor); } @@ -558,17 +563,16 @@ _mesa_AlphaFunc( GLenum func, GLclampf ref ) case GL_NOTEQUAL: case GL_GEQUAL: case GL_ALWAYS: - ref = CLAMP(ref, 0.0F, 1.0F); - - if (ctx->Color.AlphaFunc == func && ctx->Color.AlphaRef == ref) + if (ctx->Color.AlphaFunc == func && ctx->Color.AlphaRefUnclamped == ref) return; /* no change */ FLUSH_VERTICES(ctx, _NEW_COLOR); ctx->Color.AlphaFunc = func; - ctx->Color.AlphaRef = ref; + ctx->Color.AlphaRefUnclamped = ref; + ctx->Color.AlphaRef = CLAMP(ref, 0.0F, 1.0F); if (ctx->Driver.AlphaFunc) - ctx->Driver.AlphaFunc(ctx, func, ref); + ctx->Driver.AlphaFunc(ctx, func, ctx->Color.AlphaRef); return; default: @@ -737,7 +741,7 @@ _mesa_ColorMaskIndexed( GLuint buf, GLboolean red, GLboolean green, } -extern void GLAPIENTRY +void GLAPIENTRY _mesa_ClampColorARB(GLenum target, GLenum clamp) { GET_CURRENT_CONTEXT(ctx); @@ -751,12 +755,15 @@ _mesa_ClampColorARB(GLenum target, GLenum clamp) switch (target) { case GL_CLAMP_VERTEX_COLOR_ARB: + FLUSH_VERTICES(ctx, _NEW_LIGHT); ctx->Light.ClampVertexColor = clamp; break; case GL_CLAMP_FRAGMENT_COLOR_ARB: + FLUSH_VERTICES(ctx, _NEW_FRAG_CLAMP); ctx->Color.ClampFragmentColor = clamp; break; case GL_CLAMP_READ_COLOR_ARB: + FLUSH_VERTICES(ctx, _NEW_COLOR); ctx->Color.ClampReadColor = clamp; break; default: @@ -789,6 +796,7 @@ void _mesa_init_color( struct gl_context * ctx ) memset(ctx->Color.ColorMask, 0xff, sizeof(ctx->Color.ColorMask)); ctx->Color.ClearIndex = 0; ASSIGN_4V( ctx->Color.ClearColor, 0, 0, 0, 0 ); + ASSIGN_4V( ctx->Color.ClearColorUnclamped, 0, 0, 0, 0 ); ctx->Color.AlphaEnabled = GL_FALSE; ctx->Color.AlphaFunc = GL_ALWAYS; ctx->Color.AlphaRef = 0; @@ -802,6 +810,7 @@ void _mesa_init_color( struct gl_context * ctx ) ctx->Color.Blend[i].EquationA = GL_FUNC_ADD; } ASSIGN_4V( ctx->Color.BlendColor, 0.0, 0.0, 0.0, 0.0 ); + ASSIGN_4V( ctx->Color.BlendColorUnclamped, 0.0, 0.0, 0.0, 0.0 ); ctx->Color.IndexLogicOpEnabled = GL_FALSE; ctx->Color.ColorLogicOpEnabled = GL_FALSE; ctx->Color._LogicOpEnabled = GL_FALSE; @@ -816,7 +825,9 @@ void _mesa_init_color( struct gl_context * ctx ) } ctx->Color.ClampFragmentColor = GL_FIXED_ONLY_ARB; + ctx->Color._ClampFragmentColor = GL_TRUE; ctx->Color.ClampReadColor = GL_FIXED_ONLY_ARB; + ctx->Color._ClampReadColor = GL_TRUE; } /*@}*/ diff --git a/src/mesa/main/clear.c b/src/mesa/main/clear.c index 43a9ccc116a..fa95e4522f2 100644 --- a/src/mesa/main/clear.c +++ b/src/mesa/main/clear.c @@ -78,19 +78,27 @@ _mesa_ClearColor( GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha ) GET_CURRENT_CONTEXT(ctx); ASSERT_OUTSIDE_BEGIN_END(ctx); - tmp[0] = CLAMP(red, 0.0F, 1.0F); - tmp[1] = CLAMP(green, 0.0F, 1.0F); - tmp[2] = CLAMP(blue, 0.0F, 1.0F); - tmp[3] = CLAMP(alpha, 0.0F, 1.0F); + tmp[0] = red; + tmp[1] = green; + tmp[2] = blue; + tmp[3] = alpha; - if (TEST_EQ_4V(tmp, ctx->Color.ClearColor)) + if (TEST_EQ_4V(tmp, ctx->Color.ClearColorUnclamped)) return; /* no change */ FLUSH_VERTICES(ctx, _NEW_COLOR); - COPY_4V(ctx->Color.ClearColor, tmp); + COPY_4V(ctx->Color.ClearColorUnclamped, tmp); + + ctx->Color.ClearColor[0] = CLAMP(tmp[0], 0.0F, 1.0F); + ctx->Color.ClearColor[1] = CLAMP(tmp[1], 0.0F, 1.0F); + ctx->Color.ClearColor[2] = CLAMP(tmp[2], 0.0F, 1.0F); + ctx->Color.ClearColor[3] = CLAMP(tmp[3], 0.0F, 1.0F); if (ctx->Driver.ClearColor) { /* it's OK to call glClearColor in CI mode but it should be a NOP */ + /* we pass the clamped color, since all drivers that need this don't + * support GL_ARB_color_buffer_float + */ (*ctx->Driver.ClearColor)(ctx, ctx->Color.ClearColor); } } diff --git a/src/mesa/main/colortab.c b/src/mesa/main/colortab.c index d0c865735ac..35b3096f650 100644 --- a/src/mesa/main/colortab.c +++ b/src/mesa/main/colortab.c @@ -516,6 +516,7 @@ _mesa_GetColorTable( GLenum target, GLenum format, struct gl_texture_unit *texUnit = _mesa_get_current_tex_unit(ctx); struct gl_color_table *table = NULL; GLfloat rgba[MAX_COLOR_TABLE_SIZE][4]; + GLbitfield transferOps = 0; ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); if (ctx->NewState) { @@ -618,8 +619,12 @@ _mesa_GetColorTable( GLenum target, GLenum format, if (!data) return; + /* TODO: is this correct? */ + if(ctx->Color._ClampReadColor) + transferOps |= IMAGE_CLAMP_BIT; + _mesa_pack_rgba_span_float(ctx, table->Size, rgba, - format, type, data, &ctx->Pack, 0x0); + format, type, data, &ctx->Pack, transferOps); _mesa_unmap_pbo_dest(ctx, &ctx->Pack); } diff --git a/src/mesa/main/dlist.c b/src/mesa/main/dlist.c index 3de6832d3cd..7e86f1d0ed0 100644 --- a/src/mesa/main/dlist.c +++ b/src/mesa/main/dlist.c @@ -388,6 +388,9 @@ typedef enum OPCODE_UNIFORM_3UIV, OPCODE_UNIFORM_4UIV, + /* GL_ARB_color_buffer_float */ + OPCODE_CLAMP_COLOR, + /* GL_EXT_framebuffer_blit */ OPCODE_BLIT_FRAMEBUFFER, @@ -6886,6 +6889,22 @@ save_UniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, } } +static void GLAPIENTRY +save_ClampColorARB(GLenum target, GLenum clamp) +{ + GET_CURRENT_CONTEXT(ctx); + Node *n; + ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx); + n = alloc_instruction(ctx, OPCODE_CLAMP_COLOR, 2); + if (n) { + n[1].e = target; + n[2].e = clamp; + } + if (ctx->ExecuteFlag) { + CALL_ClampColorARB(ctx->Exec, (target, clamp)); + } +} + static void GLAPIENTRY save_UseShaderProgramEXT(GLenum type, GLuint program) { @@ -8071,6 +8090,10 @@ execute_list(struct gl_context *ctx, GLuint list) (n[1].i, n[2].i, n[3].b, n[4].data)); break; + case OPCODE_CLAMP_COLOR: + CALL_ClampColorARB(ctx->Exec, (n[1].e, n[2].e)); + break; + case OPCODE_TEX_BUMP_PARAMETER_ATI: { GLfloat values[4]; @@ -9868,6 +9891,10 @@ _mesa_create_save_table(void) SET_UseShaderProgramEXT(table, save_UseShaderProgramEXT); SET_ActiveProgramEXT(table, save_ActiveProgramEXT); + /* GL_ARB_color_buffer_float */ + SET_ClampColorARB(table, save_ClampColorARB); + SET_ClampColor(table, save_ClampColorARB); + /* GL 3.0 */ #if 0 SET_ClearBufferiv(table, save_ClearBufferiv); diff --git a/src/mesa/main/extensions.c b/src/mesa/main/extensions.c index d0c08ca719a..7844b5060a1 100644 --- a/src/mesa/main/extensions.c +++ b/src/mesa/main/extensions.c @@ -79,6 +79,7 @@ static const struct extension extension_table[] = { /* ARB Extensions */ { "GL_ARB_ES2_compatibility", o(ARB_ES2_compatibility), GL, 2009 }, { "GL_ARB_blend_func_extended", o(ARB_blend_func_extended), GL, 2009 }, + { "GL_ARB_color_buffer_float", o(ARB_color_buffer_float), GL, 2004 }, { "GL_ARB_copy_buffer", o(ARB_copy_buffer), GL, 2008 }, { "GL_ARB_depth_buffer_float", o(ARB_depth_buffer_float), GL, 2008 }, { "GL_ARB_depth_clamp", o(ARB_depth_clamp), GL, 2003 }, diff --git a/src/mesa/main/ff_fragment_shader.cpp b/src/mesa/main/ff_fragment_shader.cpp index 9be531735ed..bf65a4f6485 100644 --- a/src/mesa/main/ff_fragment_shader.cpp +++ b/src/mesa/main/ff_fragment_shader.cpp @@ -726,7 +726,7 @@ static struct ureg register_input( struct texenv_fragment_program *p, GLuint inp } else { GLuint idx = frag_to_vert_attrib( input ); - return register_param3( p, STATE_INTERNAL, STATE_CURRENT_ATTRIB, idx ); + return register_param3( p, STATE_INTERNAL, STATE_CURRENT_ATTRIB_MAYBE_VP_CLAMPED, idx ); } } @@ -1563,7 +1563,7 @@ create_new_program(struct gl_context *ctx, struct state_key *key, p.program->Base.NumInstructions); if (key->num_draw_buffers && p.program->FogOption) { - _mesa_append_fog_code(ctx, p.program); + _mesa_append_fog_code(ctx, p.program, GL_FALSE); p.program->FogOption = GL_NONE; } diff --git a/src/mesa/main/fog.c b/src/mesa/main/fog.c index 439232248e6..88aa31a7fcb 100644 --- a/src/mesa/main/fog.c +++ b/src/mesa/main/fog.c @@ -150,6 +150,10 @@ _mesa_Fogfv( GLenum pname, const GLfloat *params ) if (TEST_EQ_4V(ctx->Fog.Color, params)) return; FLUSH_VERTICES(ctx, _NEW_FOG); + ctx->Fog.ColorUnclamped[0] = params[0]; + ctx->Fog.ColorUnclamped[1] = params[1]; + ctx->Fog.ColorUnclamped[2] = params[2]; + ctx->Fog.ColorUnclamped[3] = params[3]; ctx->Fog.Color[0] = CLAMP(params[0], 0.0F, 1.0F); ctx->Fog.Color[1] = CLAMP(params[1], 0.0F, 1.0F); ctx->Fog.Color[2] = CLAMP(params[2], 0.0F, 1.0F); @@ -189,6 +193,7 @@ void _mesa_init_fog( struct gl_context * ctx ) ctx->Fog.Enabled = GL_FALSE; ctx->Fog.Mode = GL_EXP; ASSIGN_4V( ctx->Fog.Color, 0.0, 0.0, 0.0, 0.0 ); + ASSIGN_4V( ctx->Fog.ColorUnclamped, 0.0, 0.0, 0.0, 0.0 ); ctx->Fog.Index = 0.0; ctx->Fog.Density = 1.0; ctx->Fog.Start = 0.0; diff --git a/src/mesa/main/get.c b/src/mesa/main/get.c index 81a2a4e7c9f..9090ca661e3 100644 --- a/src/mesa/main/get.c +++ b/src/mesa/main/get.c @@ -131,6 +131,7 @@ enum value_extra { EXTRA_VERSION_32, EXTRA_VERSION_ES2, EXTRA_NEW_BUFFERS, + EXTRA_NEW_FRAG_CLAMP, EXTRA_VALID_DRAW_BUFFER, EXTRA_VALID_TEXTURE_UNIT, EXTRA_FLUSH_CURRENT, @@ -223,6 +224,11 @@ static const int extra_new_buffers[] = { EXTRA_END }; +static const int extra_new_frag_clamp[] = { + EXTRA_NEW_FRAG_CLAMP, + EXTRA_END +}; + static const int extra_valid_draw_buffer[] = { EXTRA_VALID_DRAW_BUFFER, EXTRA_END @@ -374,7 +380,7 @@ static const struct value_desc values[] = { { GL_BLEND, CONTEXT_BIT0(Color.BlendEnabled), NO_EXTRA }, { GL_BLEND_SRC, CONTEXT_ENUM(Color.Blend[0].SrcRGB), NO_EXTRA }, { GL_BLUE_BITS, BUFFER_INT(Visual.blueBits), extra_new_buffers }, - { GL_COLOR_CLEAR_VALUE, CONTEXT_FIELD(Color.ClearColor[0], TYPE_FLOATN_4), NO_EXTRA }, + { GL_COLOR_CLEAR_VALUE, LOC_CUSTOM, TYPE_FLOATN_4, 0, extra_new_frag_clamp }, { GL_COLOR_WRITEMASK, LOC_CUSTOM, TYPE_INT_4, 0, NO_EXTRA }, { GL_CULL_FACE, CONTEXT_BOOL(Polygon.CullFlag), NO_EXTRA }, { GL_CULL_FACE_MODE, CONTEXT_ENUM(Polygon.CullFaceMode), NO_EXTRA }, @@ -511,7 +517,7 @@ static const struct value_desc values[] = { { GL_LIGHT_MODEL_TWO_SIDE, CONTEXT_BOOL(Light.Model.TwoSide), NO_EXTRA }, { GL_ALPHA_TEST, CONTEXT_BOOL(Color.AlphaEnabled), NO_EXTRA }, { GL_ALPHA_TEST_FUNC, CONTEXT_ENUM(Color.AlphaFunc), NO_EXTRA }, - { GL_ALPHA_TEST_REF, CONTEXT_FIELD(Color.AlphaRef, TYPE_FLOATN), NO_EXTRA }, + { GL_ALPHA_TEST_REF, LOC_CUSTOM, TYPE_FLOATN, 0, extra_new_frag_clamp }, { GL_BLEND_DST, CONTEXT_ENUM(Color.Blend[0].DstRGB), NO_EXTRA }, { GL_CLIP_PLANE0, CONTEXT_BIT0(Transform.ClipPlanesEnabled), NO_EXTRA }, { GL_CLIP_PLANE1, CONTEXT_BIT1(Transform.ClipPlanesEnabled), NO_EXTRA }, @@ -530,7 +536,7 @@ static const struct value_desc values[] = { extra_flush_current_valid_texture_unit }, { GL_DISTANCE_ATTENUATION_EXT, CONTEXT_FLOAT3(Point.Params[0]), NO_EXTRA }, { GL_FOG, CONTEXT_BOOL(Fog.Enabled), NO_EXTRA }, - { GL_FOG_COLOR, CONTEXT_FIELD(Fog.Color[0], TYPE_FLOATN_4), NO_EXTRA }, + { GL_FOG_COLOR, LOC_CUSTOM, TYPE_FLOATN_4, 0, extra_new_frag_clamp }, { GL_FOG_DENSITY, CONTEXT_FLOAT(Fog.Density), NO_EXTRA }, { GL_FOG_END, CONTEXT_FLOAT(Fog.End), NO_EXTRA }, { GL_FOG_HINT, CONTEXT_ENUM(Hint.Fog), NO_EXTRA }, @@ -674,7 +680,7 @@ static const struct value_desc values[] = { /* GL_ARB_draw_buffers */ { GL_MAX_DRAW_BUFFERS_ARB, CONTEXT_INT(Const.MaxDrawBuffers), NO_EXTRA }, - { GL_BLEND_COLOR_EXT, CONTEXT_FIELD(Color.BlendColor[0], TYPE_FLOATN_4), NO_EXTRA }, + { GL_BLEND_COLOR_EXT, LOC_CUSTOM, TYPE_FLOATN_4, 0, extra_new_frag_clamp }, /* GL_ARB_fragment_program */ { GL_MAX_TEXTURE_IMAGE_UNITS_ARB, /* == GL_MAX_TEXTURE_IMAGE_UNITS_NV */ CONTEXT_INT(Const.MaxTextureImageUnits), @@ -1219,6 +1225,9 @@ static const struct value_desc values[] = { CONTEXT_INT(Const.MaxVertexVaryingComponents), extra_ARB_geometry_shader4 }, + /* GL_ARB_color_buffer_float */ + { GL_RGBA_FLOAT_MODE_ARB, BUFFER_FIELD(Visual.floatMode, TYPE_BOOLEAN), 0 }, + /* GL_EXT_gpu_shader4 / GL 3.0 */ { GL_MIN_PROGRAM_TEXEL_OFFSET, CONTEXT_INT(Const.MinProgramTexelOffset), @@ -1633,6 +1642,30 @@ find_custom_value(struct gl_context *ctx, const struct value_desc *d, union valu v->value_int = ctx->Array.ArrayObj->PointSize.BufferObj->Name; break; + case GL_FOG_COLOR: + if(ctx->Color._ClampFragmentColor) + COPY_4FV(v->value_float_4, ctx->Fog.Color); + else + COPY_4FV(v->value_float_4, ctx->Fog.ColorUnclamped); + break; + case GL_COLOR_CLEAR_VALUE: + if(ctx->Color._ClampFragmentColor) + COPY_4FV(v->value_float_4, ctx->Color.ClearColor); + else + COPY_4FV(v->value_float_4, ctx->Color.ClearColorUnclamped); + break; + case GL_BLEND_COLOR_EXT: + if(ctx->Color._ClampFragmentColor) + COPY_4FV(v->value_float_4, ctx->Color.BlendColor); + else + COPY_4FV(v->value_float_4, ctx->Color.BlendColorUnclamped); + break; + case GL_ALPHA_TEST_REF: + if(ctx->Color._ClampFragmentColor) + v->value_float = ctx->Color.AlphaRef; + else + v->value_float = ctx->Color.AlphaRefUnclamped; + break; case GL_MAX_VERTEX_UNIFORM_VECTORS: v->value_int = ctx->Const.VertexProgram.MaxUniformComponents / 4; break; @@ -1687,6 +1720,10 @@ check_extra(struct gl_context *ctx, const char *func, const struct value_desc *d enabled++; } break; + case EXTRA_NEW_FRAG_CLAMP: + if (ctx->NewState & (_NEW_BUFFERS | _NEW_FRAG_CLAMP)) + _mesa_update_state(ctx); + break; case EXTRA_VERSION_ES2: if (ctx->API == API_OPENGLES2) { total++; diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index 39577bb0254..2e3ea5c0c1c 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -691,7 +691,8 @@ struct gl_accum_attrib struct gl_colorbuffer_attrib { GLuint ClearIndex; /**< Index to use for glClear */ - GLclampf ClearColor[4]; /**< Color to use for glClear */ + GLfloat ClearColorUnclamped[4]; /**< Color to use for glClear*/ + GLclampf ClearColor[4]; /**< Color to use for glClear */ GLuint IndexMask; /**< Color index write mask */ GLubyte ColorMask[MAX_DRAW_BUFFERS][4];/**< Each flag is 0xff or 0x0 */ @@ -704,6 +705,7 @@ struct gl_colorbuffer_attrib /*@{*/ GLboolean AlphaEnabled; /**< Alpha test enabled flag */ GLenum AlphaFunc; /**< Alpha test function */ + GLfloat AlphaRefUnclamped; GLclampf AlphaRef; /**< Alpha reference value */ /*@}*/ @@ -712,7 +714,14 @@ struct gl_colorbuffer_attrib */ /*@{*/ GLbitfield BlendEnabled; /**< Per-buffer blend enable flags */ + + /* NOTE: this does _not_ depend on fragment clamping or any other clamping control, + * only on the fixed-pointness of the render target. + * The query does however depend on fragment color clamping. + */ + GLfloat BlendColorUnclamped[4]; /**< Blending color */ GLfloat BlendColor[4]; /**< Blending color */ + struct { GLenum SrcRGB; /**< RGB blend source term */ @@ -741,7 +750,9 @@ struct gl_colorbuffer_attrib GLboolean DitherFlag; /**< Dither enable flag */ GLenum ClampFragmentColor; /**< GL_TRUE, GL_FALSE or GL_FIXED_ONLY_ARB */ + GLboolean _ClampFragmentColor; /** < with GL_FIXED_ONLY_ARB resolved */ GLenum ClampReadColor; /**< GL_TRUE, GL_FALSE or GL_FIXED_ONLY_ARB */ + GLboolean _ClampReadColor; /** < with GL_FIXED_ONLY_ARB resolved */ GLboolean sRGBEnabled; /**< Framebuffer sRGB blending/updating requested */ }; @@ -840,6 +851,7 @@ struct gl_eval_attrib struct gl_fog_attrib { GLboolean Enabled; /**< Fog enabled flag */ + GLfloat ColorUnclamped[4]; /**< Fog color */ GLfloat Color[4]; /**< Fog color */ GLfloat Density; /**< Density >= 0.0 */ GLfloat Start; /**< Start distance in eye coords */ @@ -921,6 +933,7 @@ struct gl_light_attrib GLbitfield ColorMaterialBitmask; /**< bitmask formed from Face and Mode */ GLboolean ColorMaterialEnabled; GLenum ClampVertexColor; + GLboolean _ClampVertexColor; struct gl_light EnabledList; /**< List sentinel */ @@ -1396,7 +1409,8 @@ struct gl_texture_unit GLbitfield _ReallyEnabled; /**< 0 or exactly one of TEXTURE_*_BIT flags */ GLenum EnvMode; /**< GL_MODULATE, GL_DECAL, GL_BLEND, etc. */ - GLfloat EnvColor[4]; + GLclampf EnvColor[4]; + GLfloat EnvColorUnclamped[4]; struct gl_texgen GenS; struct gl_texgen GenT; @@ -2704,6 +2718,7 @@ struct gl_extensions GLboolean dummy_false; /* Set false by _mesa_init_extensions(). */ GLboolean ARB_ES2_compatibility; GLboolean ARB_blend_func_extended; + GLboolean ARB_color_buffer_float; GLboolean ARB_copy_buffer; GLboolean ARB_depth_buffer_float; GLboolean ARB_depth_clamp; @@ -2933,6 +2948,7 @@ struct gl_matrix_stack #define _NEW_PROGRAM (1 << 26) /**< New program/shader state */ #define _NEW_PROGRAM_CONSTANTS (1 << 27) #define _NEW_BUFFER_OBJECT (1 << 28) +#define _NEW_FRAG_CLAMP (1 << 29) #define _NEW_ALL ~0 /*@}*/ diff --git a/src/mesa/main/pack.c b/src/mesa/main/pack.c index 512835cb803..02154585aca 100644 --- a/src/mesa/main/pack.c +++ b/src/mesa/main/pack.c @@ -504,17 +504,6 @@ _mesa_pack_rgba_span_float(struct gl_context *ctx, GLuint n, GLfloat rgba[][4], luminance = NULL; } - /* XXX - * This test should probably go away. Have the caller set/clear the - * IMAGE_CLAMP_BIT as needed. - */ - if (dstType != GL_FLOAT || ctx->Color.ClampReadColor == GL_TRUE) { - if (!intDstFormat) { - /* need to clamp to [0, 1] */ - transferOps |= IMAGE_CLAMP_BIT; - } - } - if (transferOps) { _mesa_apply_rgba_transfer_ops(ctx, transferOps, n, rgba); } diff --git a/src/mesa/main/state.c b/src/mesa/main/state.c index 118ed1d284a..1d1ae47374e 100644 --- a/src/mesa/main/state.c +++ b/src/mesa/main/state.c @@ -445,6 +445,35 @@ update_color(struct gl_context *ctx) ctx->Color._LogicOpEnabled = _mesa_rgba_logicop_enabled(ctx); } +static void +update_clamp_fragment_color(struct gl_context *ctx) +{ + if(ctx->Color.ClampFragmentColor == GL_FIXED_ONLY_ARB) + ctx->Color._ClampFragmentColor = !ctx->DrawBuffer || !ctx->DrawBuffer->Visual.floatMode; + else + ctx->Color._ClampFragmentColor = ctx->Color.ClampFragmentColor; +} + +static void +update_clamp_vertex_color(struct gl_context *ctx) +{ + if(ctx->Light.ClampVertexColor == GL_FIXED_ONLY_ARB) + ctx->Light._ClampVertexColor = !ctx->DrawBuffer || !ctx->DrawBuffer->Visual.floatMode; + else + ctx->Light._ClampVertexColor = ctx->Light.ClampVertexColor; +} + +static void +update_clamp_read_color(struct gl_context *ctx) +{ + if(ctx->Color.ClampReadColor == GL_FIXED_ONLY_ARB) + ctx->Color._ClampReadColor = !ctx->ReadBuffer || !ctx->ReadBuffer->Visual.floatMode; + else + ctx->Color._ClampReadColor = ctx->Color.ClampReadColor; +} + + + /* * Check polygon state and set DD_TRI_CULL_FRONT_BACK and/or DD_TRI_OFFSET @@ -565,7 +594,7 @@ _mesa_update_state_locked( struct gl_context *ctx ) if (ctx->FragmentProgram._MaintainTexEnvProgram) { prog_flags |= (_NEW_BUFFERS | _NEW_TEXTURE | _NEW_FOG | _NEW_ARRAY | _NEW_LIGHT | _NEW_POINT | _NEW_RENDERMODE | - _NEW_PROGRAM); + _NEW_PROGRAM | _NEW_FRAG_CLAMP); } if (ctx->VertexProgram._MaintainTnlProgram) { prog_flags |= (_NEW_ARRAY | _NEW_TEXTURE | _NEW_TEXTURE_MATRIX | @@ -599,6 +628,9 @@ _mesa_update_state_locked( struct gl_context *ctx ) if (new_state & _NEW_LIGHT) _mesa_update_lighting( ctx ); + if (new_state & (_NEW_LIGHT | _NEW_BUFFERS)) + update_clamp_vertex_color(ctx); + if (new_state & (_NEW_STENCIL | _NEW_BUFFERS)) _mesa_update_stencil( ctx ); @@ -617,6 +649,12 @@ _mesa_update_state_locked( struct gl_context *ctx ) if (new_state & _NEW_COLOR) update_color( ctx ); + if (new_state & (_NEW_COLOR | _NEW_BUFFERS)) + update_clamp_read_color(ctx); + + if(new_state & (_NEW_FRAG_CLAMP | _NEW_BUFFERS)) + update_clamp_fragment_color(ctx); + #if 0 if (new_state & (_NEW_POINT | _NEW_LINE | _NEW_POLYGON | _NEW_LIGHT | _NEW_STENCIL | _DD_NEW_SEPARATE_SPECULAR)) diff --git a/src/mesa/main/texenv.c b/src/mesa/main/texenv.c index 45a2e195e98..9228e354a4d 100644 --- a/src/mesa/main/texenv.c +++ b/src/mesa/main/texenv.c @@ -35,6 +35,7 @@ #include "main/enums.h" #include "main/macros.h" #include "main/mtypes.h" +#include "main/state.h" #include "main/texenv.h" #include "main/texstate.h" @@ -94,15 +95,14 @@ set_env_color(struct gl_context *ctx, struct gl_texture_unit *texUnit, const GLfloat *color) { - GLfloat tmp[4]; - tmp[0] = CLAMP(color[0], 0.0F, 1.0F); - tmp[1] = CLAMP(color[1], 0.0F, 1.0F); - tmp[2] = CLAMP(color[2], 0.0F, 1.0F); - tmp[3] = CLAMP(color[3], 0.0F, 1.0F); - if (TEST_EQ_4V(tmp, texUnit->EnvColor)) + if (TEST_EQ_4V(color, texUnit->EnvColorUnclamped)) return; FLUSH_VERTICES(ctx, _NEW_TEXTURE); - COPY_4FV(texUnit->EnvColor, tmp); + COPY_4FV(texUnit->EnvColorUnclamped, color); + texUnit->EnvColor[0] = CLAMP(color[0], 0.0F, 1.0F); + texUnit->EnvColor[1] = CLAMP(color[1], 0.0F, 1.0F); + texUnit->EnvColor[2] = CLAMP(color[2], 0.0F, 1.0F); + texUnit->EnvColor[3] = CLAMP(color[3], 0.0F, 1.0F); } @@ -758,7 +758,12 @@ _mesa_GetTexEnvfv( GLenum target, GLenum pname, GLfloat *params ) if (target == GL_TEXTURE_ENV) { if (pname == GL_TEXTURE_ENV_COLOR) { - COPY_4FV( params, texUnit->EnvColor ); + if(ctx->NewState & (_NEW_BUFFERS | _NEW_FRAG_CLAMP)) + _mesa_update_state(ctx); + if(ctx->Color._ClampFragmentColor) + COPY_4FV( params, texUnit->EnvColor ); + else + COPY_4FV( params, texUnit->EnvColorUnclamped ); } else { GLint val = get_texenvi(ctx, texUnit, pname); diff --git a/src/mesa/main/texparam.c b/src/mesa/main/texparam.c index 6e14face4dd..adb6bcebfab 100644 --- a/src/mesa/main/texparam.c +++ b/src/mesa/main/texparam.c @@ -38,6 +38,7 @@ #include "main/macros.h" #include "main/mfeatures.h" #include "main/mtypes.h" +#include "main/state.h" #include "main/texcompress.h" #include "main/texparam.h" #include "main/teximage.h" @@ -1107,10 +1108,22 @@ _mesa_GetTexParameterfv( GLenum target, GLenum pname, GLfloat *params ) *params = ENUM_TO_FLOAT(obj->WrapR); break; case GL_TEXTURE_BORDER_COLOR: - params[0] = CLAMP(obj->BorderColor.f[0], 0.0F, 1.0F); - params[1] = CLAMP(obj->BorderColor.f[1], 0.0F, 1.0F); - params[2] = CLAMP(obj->BorderColor.f[2], 0.0F, 1.0F); - params[3] = CLAMP(obj->BorderColor.f[3], 0.0F, 1.0F); + if(ctx->NewState & (_NEW_BUFFERS | _NEW_FRAG_CLAMP)) + _mesa_update_state_locked(ctx); + if(ctx->Color._ClampFragmentColor) + { + params[0] = CLAMP(obj->BorderColor.f[0], 0.0F, 1.0F); + params[1] = CLAMP(obj->BorderColor.f[1], 0.0F, 1.0F); + params[2] = CLAMP(obj->BorderColor.f[2], 0.0F, 1.0F); + params[3] = CLAMP(obj->BorderColor.f[3], 0.0F, 1.0F); + } + else + { + params[0] = obj->BorderColor.f[0]; + params[1] = obj->BorderColor.f[1]; + params[2] = obj->BorderColor.f[2]; + params[3] = obj->BorderColor.f[3]; + } break; case GL_TEXTURE_RESIDENT: { diff --git a/src/mesa/main/version.c b/src/mesa/main/version.c index a10b86e761e..956c7b90a37 100644 --- a/src/mesa/main/version.c +++ b/src/mesa/main/version.c @@ -89,6 +89,8 @@ compute_version(struct gl_context *ctx) ctx->Extensions.EXT_pixel_buffer_object && ctx->Extensions.EXT_texture_sRGB); const GLboolean ver_3_0 = (ver_2_1 && + ctx->Extensions.ARB_color_buffer_float && + ctx->Extensions.ARB_depth_buffer_float && ctx->Extensions.ARB_half_float_pixel && ctx->Extensions.ARB_map_buffer_range && ctx->Extensions.ARB_texture_float && diff --git a/src/mesa/program/arbprogparse.c b/src/mesa/program/arbprogparse.c index ca63e72c085..7f778c3c381 100644 --- a/src/mesa/program/arbprogparse.c +++ b/src/mesa/program/arbprogparse.c @@ -144,7 +144,10 @@ _mesa_parse_arb_fragment_program(struct gl_context* ctx, GLenum target, * from the fragment shader. */ if (program->FogOption != GL_NONE) { - _mesa_append_fog_code(ctx, program); + /* XXX: we should somehow recompile this to remove clamping if disabled + * On the ATI driver, this is unclampled if fragment clamping is disabled + */ + _mesa_append_fog_code(ctx, program, GL_TRUE); program->FogOption = GL_NONE; } diff --git a/src/mesa/program/prog_statevars.c b/src/mesa/program/prog_statevars.c index c310acb01d4..384aa2cb2c6 100644 --- a/src/mesa/program/prog_statevars.c +++ b/src/mesa/program/prog_statevars.c @@ -237,11 +237,17 @@ _mesa_fetch_state(struct gl_context *ctx, const gl_state_index state[], { /* state[1] is the texture unit */ const GLuint unit = (GLuint) state[1]; - COPY_4V(value, ctx->Texture.Unit[unit].EnvColor); + if(ctx->Color._ClampFragmentColor) + COPY_4V(value, ctx->Texture.Unit[unit].EnvColor); + else + COPY_4V(value, ctx->Texture.Unit[unit].EnvColorUnclamped); } return; case STATE_FOG_COLOR: - COPY_4V(value, ctx->Fog.Color); + if(ctx->Color._ClampFragmentColor) + COPY_4V(value, ctx->Fog.Color); + else + COPY_4V(value, ctx->Fog.ColorUnclamped); return; case STATE_FOG_PARAMS: value[0] = ctx->Fog.Density; @@ -399,6 +405,22 @@ _mesa_fetch_state(struct gl_context *ctx, const gl_state_index state[], } return; + case STATE_CURRENT_ATTRIB_MAYBE_VP_CLAMPED: + { + const GLuint idx = (GLuint) state[2]; + if(ctx->Light._ClampVertexColor && + (idx == VERT_ATTRIB_COLOR0 || + idx == VERT_ATTRIB_COLOR1)) { + value[0] = CLAMP(ctx->Current.Attrib[idx][0], 0.0f, 1.0f); + value[1] = CLAMP(ctx->Current.Attrib[idx][1], 0.0f, 1.0f); + value[2] = CLAMP(ctx->Current.Attrib[idx][2], 0.0f, 1.0f); + value[3] = CLAMP(ctx->Current.Attrib[idx][3], 0.0f, 1.0f); + } + else + COPY_4V(value, ctx->Current.Attrib[idx]); + } + return; + case STATE_NORMAL_SCALE: ASSIGN_4V(value, ctx->_ModelViewInvScale, @@ -649,10 +671,12 @@ _mesa_program_state_flags(const gl_state_index state[STATE_LENGTH]) return _NEW_LIGHT; case STATE_TEXGEN: - case STATE_TEXENV_COLOR: return _NEW_TEXTURE; + case STATE_TEXENV_COLOR: + return _NEW_TEXTURE | _NEW_BUFFERS | _NEW_FRAG_CLAMP; case STATE_FOG_COLOR: + return _NEW_FOG | _NEW_BUFFERS | _NEW_FRAG_CLAMP; case STATE_FOG_PARAMS: return _NEW_FOG; @@ -688,6 +712,8 @@ _mesa_program_state_flags(const gl_state_index state[STATE_LENGTH]) switch (state[1]) { case STATE_CURRENT_ATTRIB: return _NEW_CURRENT_ATTRIB; + case STATE_CURRENT_ATTRIB_MAYBE_VP_CLAMPED: + return _NEW_CURRENT_ATTRIB | _NEW_LIGHT | _NEW_BUFFERS; case STATE_NORMAL_SCALE: return _NEW_MODELVIEW; diff --git a/src/mesa/program/prog_statevars.h b/src/mesa/program/prog_statevars.h index f2407af9c87..9fe8d81b3dd 100644 --- a/src/mesa/program/prog_statevars.h +++ b/src/mesa/program/prog_statevars.h @@ -106,6 +106,7 @@ typedef enum gl_state_index_ { STATE_INTERNAL, /* Mesa additions */ STATE_CURRENT_ATTRIB, /* ctx->Current vertex attrib value */ + STATE_CURRENT_ATTRIB_MAYBE_VP_CLAMPED, /* ctx->Current vertex attrib value after passthrough vertex processing */ STATE_NORMAL_SCALE, STATE_TEXRECT_SCALE, STATE_FOG_PARAMS_OPTIMIZED, /* for faster fog calc */ diff --git a/src/mesa/program/programopt.c b/src/mesa/program/programopt.c index f92881f8337..5ad9571f757 100644 --- a/src/mesa/program/programopt.c +++ b/src/mesa/program/programopt.c @@ -238,7 +238,7 @@ _mesa_insert_mvp_code(struct gl_context *ctx, struct gl_vertex_program *vprog) * to vertex programs too. */ void -_mesa_append_fog_code(struct gl_context *ctx, struct gl_fragment_program *fprog) +_mesa_append_fog_code(struct gl_context *ctx, struct gl_fragment_program *fprog, GLboolean saturate) { static const gl_state_index fogPStateOpt[STATE_LENGTH] = { STATE_INTERNAL, STATE_FOG_PARAMS_OPTIMIZED, 0, 0, 0 }; @@ -290,7 +290,7 @@ _mesa_append_fog_code(struct gl_context *ctx, struct gl_fragment_program *fprog) /* change the instruction to write to colorTemp w/ clamping */ inst->DstReg.File = PROGRAM_TEMPORARY; inst->DstReg.Index = colorTemp; - inst->SaturateMode = SATURATE_ZERO_ONE; + inst->SaturateMode = saturate; /* don't break (may be several writes to result.color) */ } inst++; @@ -300,6 +300,7 @@ _mesa_append_fog_code(struct gl_context *ctx, struct gl_fragment_program *fprog) _mesa_init_instructions(inst, 5); /* emit instructions to compute fog blending factor */ + /* this is always clamped to [0, 1] regardless of fragment clamping */ if (fprog->FogOption == GL_LINEAR) { /* MAD fogFactorTemp.x, fragment.fogcoord.x, fogPRefOpt.x, fogPRefOpt.y; */ inst->Opcode = OPCODE_MAD; diff --git a/src/mesa/program/programopt.h b/src/mesa/program/programopt.h index ef6f1bd0794..79631aa5843 100644 --- a/src/mesa/program/programopt.h +++ b/src/mesa/program/programopt.h @@ -32,7 +32,7 @@ extern void _mesa_insert_mvp_code(struct gl_context *ctx, struct gl_vertex_program *vprog); extern void -_mesa_append_fog_code(struct gl_context *ctx, struct gl_fragment_program *fprog); +_mesa_append_fog_code(struct gl_context *ctx, struct gl_fragment_program *fprog, GLboolean saturate); extern void _mesa_count_texture_indirections(struct gl_program *prog); From 47e3896dfd89a26abbe4ca2469c2480f3982b204 Mon Sep 17 00:00:00 2001 From: Luca Barbieri Date: Wed, 16 Feb 2011 00:14:49 +0100 Subject: [PATCH 066/420] gallium: implement clamping controls (ARB_color_buffer_float) BTW this changes the gallium interface. Some rather cosmetic changes by Marek. Squashed commit of the following: commit 513b37d484f0318311e84bb86ed4c93cdff71f13 Author: Luca Barbieri Date: Thu Aug 26 18:17:54 2010 +0200 mesa/st: respect fragment clamping in st_DrawPixels commit 546a31e42cad459d7a7a10ebf77fc5ffcf89e9b8 Author: Luca Barbieri Date: Thu Aug 26 18:17:28 2010 +0200 mesa/st: support fragment and vertex color clamping commit c406514a1fbee6891da4cf9ac3eebe4e4407ec13 Author: Luca Barbieri Date: Tue Aug 24 21:56:37 2010 +0200 mesa/st: expose ARB_color_buffer_float if unclamping is supported commit d0c5ea11b6f75f3da2f4ca989115f150ebc7cf8d Author: Luca Barbieri Date: Thu Aug 26 17:53:41 2010 +0200 mesa/st: use unclamped colors This assumes that Gallium is to be interpreted as given drivers the responsibility to clamp these colors if necessary. commit aef5c3c6be6edd076e955e37c80905bc447f8a82 Author: Luca Barbieri Date: Thu Aug 26 18:12:34 2010 +0200 mesa, mesa/st: handle read color clamping properly We set IMAGE_CLAMP_BIT in the caller based on _ClampReadColor, where the operation mandates it. (see the removed XXX comment. -Marek) TODO: did I get the set of operations mandating it right? commit 76bdfcfe3ff4145a1818e6cb6e227b730a5f12d8 Author: Luca Barbieri Date: Thu Aug 26 18:18:25 2010 +0200 gallium: add color clamping to the interface --- src/gallium/docs/source/cso/rasterizer.rst | 24 +++++++++++++++++++++ src/gallium/include/pipe/p_defines.h | 2 ++ src/gallium/include/pipe/p_state.h | 2 ++ src/mesa/state_tracker/st_atom_blend.c | 2 +- src/mesa/state_tracker/st_atom_depth.c | 2 +- src/mesa/state_tracker/st_atom_rasterizer.c | 8 ++++++- src/mesa/state_tracker/st_cb_clear.c | 4 ++-- src/mesa/state_tracker/st_cb_drawpixels.c | 1 + src/mesa/state_tracker/st_cb_readpixels.c | 7 ++++-- src/mesa/state_tracker/st_extensions.c | 7 ++++++ 10 files changed, 52 insertions(+), 7 deletions(-) diff --git a/src/gallium/docs/source/cso/rasterizer.rst b/src/gallium/docs/source/cso/rasterizer.rst index d547055096f..e10c16ed900 100644 --- a/src/gallium/docs/source/cso/rasterizer.rst +++ b/src/gallium/docs/source/cso/rasterizer.rst @@ -7,6 +7,30 @@ The rasterizer state controls the rendering of points, lines and triangles. Attributes include polygon culling state, line width, line stipple, multisample state, scissoring and flat/smooth shading. +Linkage + +clamp_vertex_color +^^^^^^^^^^^^^^^^^^ + +If set, TGSI_SEMANTIC_COLOR registers are clamped to the [0, 1] range after +the execution of the vertex shader, before being passed to the geometry +shader or fragment shader. + +OpenGL: glClampColor(GL_CLAMP_VERTEX_COLOR) in GL 3.0 or GL_ARB_color_buffer_float + +D3D11: seems always disabled + +clamp_fragment_color +^^^^^^^^^^^^^^^^^^^^ + +Controls whether TGSI_SEMANTIC_COLOR outputs of the fragment shader +are clamped to [0, 1]. + +OpenGL: glClampColor(GL_CLAMP_FRAGMENT_COLOR) in GL 3.0 or ARB_color_buffer_float + +D3D11: seems always disabled + + Shading ------- diff --git a/src/gallium/include/pipe/p_defines.h b/src/gallium/include/pipe/p_defines.h index bac3300df3c..4f6daa86a59 100644 --- a/src/gallium/include/pipe/p_defines.h +++ b/src/gallium/include/pipe/p_defines.h @@ -463,6 +463,8 @@ enum pipe_cap { PIPE_CAP_SHADER_STENCIL_EXPORT, PIPE_CAP_TGSI_INSTANCEID, PIPE_CAP_VERTEX_ELEMENT_INSTANCE_DIVISOR, + PIPE_CAP_VERTEX_COLOR_CLAMP_CONTROL, + PIPE_CAP_FRAGMENT_COLOR_CLAMP_CONTROL }; /* Shader caps not specific to any single stage */ diff --git a/src/gallium/include/pipe/p_state.h b/src/gallium/include/pipe/p_state.h index cf6c5b50268..f6ad4560f16 100644 --- a/src/gallium/include/pipe/p_state.h +++ b/src/gallium/include/pipe/p_state.h @@ -81,6 +81,8 @@ struct pipe_rasterizer_state { unsigned flatshade:1; unsigned light_twoside:1; + unsigned clamp_vertex_color:1; + unsigned clamp_fragment_color:1; unsigned front_ccw:1; unsigned cull_face:2; /**< PIPE_FACE_x */ unsigned fill_front:2; /**< PIPE_POLYGON_MODE_x */ diff --git a/src/mesa/state_tracker/st_atom_blend.c b/src/mesa/state_tracker/st_atom_blend.c index fb1c7a4efee..d1844e1066f 100644 --- a/src/mesa/state_tracker/st_atom_blend.c +++ b/src/mesa/state_tracker/st_atom_blend.c @@ -286,7 +286,7 @@ update_blend( struct st_context *st ) { struct pipe_blend_color bc; - COPY_4FV(bc.color, st->ctx->Color.BlendColor); + COPY_4FV(bc.color, st->ctx->Color.BlendColorUnclamped); cso_set_blend_color(st->cso_context, &bc); } } diff --git a/src/mesa/state_tracker/st_atom_depth.c b/src/mesa/state_tracker/st_atom_depth.c index aaee432a216..6c51b1ac1a2 100644 --- a/src/mesa/state_tracker/st_atom_depth.c +++ b/src/mesa/state_tracker/st_atom_depth.c @@ -142,7 +142,7 @@ update_depth_stencil_alpha(struct st_context *st) if (ctx->Color.AlphaEnabled) { dsa->alpha.enabled = 1; dsa->alpha.func = st_compare_func_to_pipe(ctx->Color.AlphaFunc); - dsa->alpha.ref_value = ctx->Color.AlphaRef; + dsa->alpha.ref_value = ctx->Color.AlphaRefUnclamped; } cso_set_depth_stencil_alpha(st->cso_context, dsa); diff --git a/src/mesa/state_tracker/st_atom_rasterizer.c b/src/mesa/state_tracker/st_atom_rasterizer.c index 8bccceeec53..250cbb2260c 100644 --- a/src/mesa/state_tracker/st_atom_rasterizer.c +++ b/src/mesa/state_tracker/st_atom_rasterizer.c @@ -112,6 +112,8 @@ static void update_raster_state( struct st_context *st ) raster->light_twoside = 1; } + raster->clamp_vertex_color = ctx->Light._ClampVertexColor; + /* _NEW_POLYGON */ if (ctx->Polygon.CullFlag) { @@ -252,6 +254,9 @@ static void update_raster_state( struct st_context *st ) if (ctx->Scissor.Enabled) raster->scissor = 1; + /* _NEW_FRAG_CLAMP */ + raster->clamp_fragment_color = ctx->Color._ClampFragmentColor; + raster->gl_rasterization_rules = 1; cso_set_rasterizer(st->cso_context, raster); @@ -267,7 +272,8 @@ const struct st_tracked_state st_update_rasterizer = { _NEW_POINT | _NEW_POLYGON | _NEW_PROGRAM | - _NEW_SCISSOR), /* mesa state dependencies*/ + _NEW_SCISSOR | + _NEW_FRAG_CLAMP), /* mesa state dependencies*/ ST_NEW_VERTEX_PROGRAM, /* state tracker dependencies */ }, update_raster_state /* update function */ diff --git a/src/mesa/state_tracker/st_cb_clear.c b/src/mesa/state_tracker/st_cb_clear.c index 1eb748e0d5d..181fedd2b99 100644 --- a/src/mesa/state_tracker/st_cb_clear.c +++ b/src/mesa/state_tracker/st_cb_clear.c @@ -323,7 +323,7 @@ clear_with_quad(struct gl_context *ctx, set_vertex_shader(st); if (ctx->DrawBuffer->_ColorDrawBuffers[0]) { - st_translate_color(ctx->Color.ClearColor, + st_translate_color(ctx->Color.ClearColorUnclamped, ctx->DrawBuffer->_ColorDrawBuffers[0]->_BaseFormat, clearColor); } @@ -585,7 +585,7 @@ st_Clear(struct gl_context *ctx, GLbitfield mask) clearColor); } - st->pipe->clear(st->pipe, clear_buffers, ctx->Color.ClearColor, + st->pipe->clear(st->pipe, clear_buffers, ctx->Color.ClearColorUnclamped, ctx->Depth.Clear, ctx->Stencil.Clear); } if (mask & BUFFER_BIT_ACCUM) diff --git a/src/mesa/state_tracker/st_cb_drawpixels.c b/src/mesa/state_tracker/st_cb_drawpixels.c index eccc207579b..dc53e276cb3 100644 --- a/src/mesa/state_tracker/st_cb_drawpixels.c +++ b/src/mesa/state_tracker/st_cb_drawpixels.c @@ -582,6 +582,7 @@ draw_textured_quad(struct gl_context *ctx, GLint x, GLint y, GLfloat z, { struct pipe_rasterizer_state rasterizer; memset(&rasterizer, 0, sizeof(rasterizer)); + rasterizer.clamp_fragment_color = ctx->Color._ClampFragmentColor; rasterizer.gl_rasterization_rules = 1; rasterizer.scissor = ctx->Scissor.Enabled; cso_set_rasterizer(cso, &rasterizer); diff --git a/src/mesa/state_tracker/st_cb_readpixels.c b/src/mesa/state_tracker/st_cb_readpixels.c index f8da2a4d158..03f58bf0fc4 100644 --- a/src/mesa/state_tracker/st_cb_readpixels.c +++ b/src/mesa/state_tracker/st_cb_readpixels.c @@ -331,7 +331,7 @@ st_readpixels(struct gl_context *ctx, GLint x, GLint y, GLsizei width, GLsizei h struct st_context *st = st_context(ctx); struct pipe_context *pipe = st->pipe; GLfloat (*temp)[4]; - const GLbitfield transferOps = ctx->_ImageTransferState; + GLbitfield transferOps = ctx->_ImageTransferState; GLsizei i, j; GLint yStep, dfStride; GLfloat *df; @@ -391,7 +391,10 @@ st_readpixels(struct gl_context *ctx, GLint x, GLint y, GLsizei width, GLsizei h return; } - if (format == GL_RGBA && type == GL_FLOAT) { + if(ctx->Color._ClampReadColor) + transferOps |= IMAGE_CLAMP_BIT; + + if (format == GL_RGBA && type == GL_FLOAT && !transferOps) { /* write tile(row) directly into user's buffer */ df = (GLfloat *) _mesa_image_address2d(&clippedPacking, dest, width, height, format, type, 0, 0); diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c index bbcae3b02e9..89bb03046c1 100644 --- a/src/mesa/state_tracker/st_extensions.c +++ b/src/mesa/state_tracker/st_extensions.c @@ -508,6 +508,13 @@ void st_init_extensions(struct st_context *st) ctx->Extensions.ARB_depth_clamp = GL_TRUE; } + /* this extension does not actually require support of floating point + * render targets, just clamping controls + */ + if(screen->get_param(screen, PIPE_CAP_FRAGMENT_COLOR_CLAMP_CONTROL) && + screen->get_param(screen, PIPE_CAP_VERTEX_COLOR_CLAMP_CONTROL)) + ctx->Extensions.ARB_color_buffer_float = GL_TRUE; + if (screen->get_param(screen, PIPE_CAP_SHADER_STENCIL_EXPORT)) { ctx->Extensions.ARB_shader_stencil_export = GL_TRUE; } From 0be369975fdfa79bcb702d0c13aa0a221055f61b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Fri, 18 Mar 2011 13:44:51 +0100 Subject: [PATCH 067/420] mesa: initial EXT_texture_snorm support The component ordering of some formats has been been reversed to match Gallium types. --- src/mesa/main/extensions.c | 3 +- src/mesa/main/fbobject.c | 38 +++++++++++++- src/mesa/main/formats.c | 100 +++++++++++++++++++++++++++++++++---- src/mesa/main/formats.h | 15 ++++-- src/mesa/main/image.c | 28 +++++++++-- src/mesa/main/macros.h | 3 +- src/mesa/main/mtypes.h | 2 +- src/mesa/main/texformat.c | 49 ++++++++++++------ src/mesa/main/teximage.c | 31 +++++++++++- src/mesa/main/version.c | 1 + 10 files changed, 233 insertions(+), 37 deletions(-) diff --git a/src/mesa/main/extensions.c b/src/mesa/main/extensions.c index 7844b5060a1..285e08d7596 100644 --- a/src/mesa/main/extensions.c +++ b/src/mesa/main/extensions.c @@ -203,6 +203,7 @@ static const struct extension extension_table[] = { { "GL_EXT_texture", o(EXT_texture), GL, 1996 }, { "GL_EXT_texture_rectangle", o(NV_texture_rectangle), GL, 2004 }, { "GL_EXT_texture_shared_exponent", o(EXT_texture_shared_exponent), GL, 2004 }, + { "GL_EXT_texture_snorm", o(EXT_texture_snorm), GL, 2009 }, { "GL_EXT_texture_sRGB", o(EXT_texture_sRGB), GL, 2004 }, { "GL_EXT_texture_sRGB_decode", o(EXT_texture_sRGB_decode), GL, 2006 }, { "GL_EXT_texture_swizzle", o(EXT_texture_swizzle), GL, 2008 }, @@ -274,7 +275,7 @@ static const struct extension extension_table[] = { { "GL_MESA_pack_invert", o(MESA_pack_invert), GL, 2002 }, { "GL_MESA_resize_buffers", o(MESA_resize_buffers), GL, 1999 }, { "GL_MESA_texture_array", o(MESA_texture_array), GL, 2007 }, - { "GL_MESA_texture_signed_rgba", o(MESA_texture_signed_rgba), GL, 2009 }, + { "GL_MESA_texture_signed_rgba", o(EXT_texture_snorm), GL, 2009 }, { "GL_MESA_window_pos", o(ARB_window_pos), GL, 2000 }, { "GL_MESAX_texture_float", o(ARB_texture_float), GL, 2009 }, { "GL_MESA_ycbcr_texture", o(MESA_ycbcr_texture), GL, 2002 }, diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c index cc13103de40..4eab3e11911 100644 --- a/src/mesa/main/fbobject.c +++ b/src/mesa/main/fbobject.c @@ -1081,7 +1081,6 @@ _mesa_base_fbo_format(struct gl_context *ctx, GLenum internalFormat) case GL_RGB10_A2: case GL_RGBA12: case GL_RGBA16: - case GL_RGBA16_SNORM: case GL_SRGB8_ALPHA8_EXT: return GL_RGBA; case GL_STENCIL_INDEX: @@ -1109,6 +1108,43 @@ _mesa_base_fbo_format(struct gl_context *ctx, GLenum internalFormat) case GL_RG8: case GL_RG16: return ctx->Extensions.ARB_texture_rg ? GL_RG : 0; + /* signed normalized texture formats */ + case GL_RED_SNORM: + case GL_R8_SNORM: + case GL_R16_SNORM: + return ctx->Extensions.EXT_texture_snorm ? GL_RED : 0; + case GL_RG_SNORM: + case GL_RG8_SNORM: + case GL_RG16_SNORM: + return ctx->Extensions.EXT_texture_snorm ? GL_RG : 0; + case GL_RGB_SNORM: + case GL_RGB8_SNORM: + case GL_RGB16_SNORM: + return ctx->Extensions.EXT_texture_snorm ? GL_RGB : 0; + case GL_RGBA_SNORM: + case GL_RGBA8_SNORM: + case GL_RGBA16_SNORM: + return ctx->Extensions.EXT_texture_snorm ? GL_RGBA : 0; + case GL_ALPHA_SNORM: + case GL_ALPHA8_SNORM: + case GL_ALPHA16_SNORM: + return ctx->Extensions.EXT_texture_snorm && + ctx->Extensions.ARB_framebuffer_object ? GL_ALPHA : 0; + case GL_LUMINANCE_SNORM: + case GL_LUMINANCE8_SNORM: + case GL_LUMINANCE16_SNORM: + return ctx->Extensions.EXT_texture_snorm && + ctx->Extensions.ARB_framebuffer_object ? GL_LUMINANCE : 0; + case GL_LUMINANCE_ALPHA_SNORM: + case GL_LUMINANCE8_ALPHA8_SNORM: + case GL_LUMINANCE16_ALPHA16_SNORM: + return ctx->Extensions.EXT_texture_snorm && + ctx->Extensions.ARB_framebuffer_object ? GL_LUMINANCE_ALPHA : 0; + case GL_INTENSITY_SNORM: + case GL_INTENSITY8_SNORM: + case GL_INTENSITY16_SNORM: + return ctx->Extensions.EXT_texture_snorm && + ctx->Extensions.ARB_framebuffer_object ? GL_INTENSITY : 0; /* XXX add floating point and integer formats eventually */ default: return 0; diff --git a/src/mesa/main/formats.c b/src/mesa/main/formats.c index db10c9b4c2e..e62170b71c1 100644 --- a/src/mesa/main/formats.c +++ b/src/mesa/main/formats.c @@ -809,8 +809,8 @@ static struct gl_format_info format_info[MESA_FORMAT_COUNT] = 1, 1, 1 /* BlockWidth/Height,Bytes */ }, { - MESA_FORMAT_SIGNED_RG88, - "MESA_FORMAT_SIGNED_RG88", + MESA_FORMAT_SIGNED_RG88_REV, + "MESA_FORMAT_SIGNED_RG88_REV", GL_RG, GL_SIGNED_NORMALIZED, 8, 8, 0, 0, @@ -847,8 +847,8 @@ static struct gl_format_info format_info[MESA_FORMAT_COUNT] = /* Signed 16 bits / channel */ { - MESA_FORMAT_SIGNED_R_16, - "MESA_FORMAT_SIGNED_R_16", + MESA_FORMAT_SIGNED_R16, + "MESA_FORMAT_SIGNED_R16", GL_RED, GL_SIGNED_NORMALIZED, 16, 0, 0, 0, @@ -856,8 +856,8 @@ static struct gl_format_info format_info[MESA_FORMAT_COUNT] = 1, 1, 2 }, { - MESA_FORMAT_SIGNED_RG_16, - "MESA_FORMAT_SIGNED_RG_16", + MESA_FORMAT_SIGNED_GR1616, + "MESA_FORMAT_SIGNED_GR1616", GL_RG, GL_SIGNED_NORMALIZED, 16, 16, 0, 0, @@ -963,6 +963,80 @@ static struct gl_format_info format_info[MESA_FORMAT_COUNT] = 4, 0, 0, 0, 0, 4, 4, 16 /* 16 bytes per 4x4 block */ }, + + /* Signed formats from EXT_texture_snorm that are not in GL3.1 */ + { + MESA_FORMAT_SIGNED_A8, + "MESA_FORMAT_SIGNED_A8", + GL_ALPHA, + GL_SIGNED_NORMALIZED, + 0, 0, 0, 8, + 0, 0, 0, 0, 0, + 1, 1, 1 + }, + { + MESA_FORMAT_SIGNED_L8, + "MESA_FORMAT_SIGNED_L8", + GL_LUMINANCE, + GL_SIGNED_NORMALIZED, + 0, 0, 0, 0, + 8, 0, 0, 0, 0, + 1, 1, 1 + }, + { + MESA_FORMAT_SIGNED_AL88, + "MESA_FORMAT_SIGNED_AL88", + GL_LUMINANCE_ALPHA, + GL_SIGNED_NORMALIZED, + 0, 0, 0, 8, + 8, 0, 0, 0, 0, + 1, 1, 2 + }, + { + MESA_FORMAT_SIGNED_I8, + "MESA_FORMAT_SIGNED_I8", + GL_INTENSITY, + GL_SIGNED_NORMALIZED, + 0, 0, 0, 0, + 0, 8, 0, 0, 0, + 1, 1, 1 + }, + { + MESA_FORMAT_SIGNED_A16, + "MESA_FORMAT_SIGNED_A16", + GL_ALPHA, + GL_SIGNED_NORMALIZED, + 0, 0, 0, 16, + 0, 0, 0, 0, 0, + 1, 1, 2 + }, + { + MESA_FORMAT_SIGNED_L16, + "MESA_FORMAT_SIGNED_L16", + GL_LUMINANCE, + GL_SIGNED_NORMALIZED, + 0, 0, 0, 0, + 16, 0, 0, 0, 0, + 1, 1, 2 + }, + { + MESA_FORMAT_SIGNED_AL1616, + "MESA_FORMAT_SIGNED_AL1616", + GL_LUMINANCE_ALPHA, + GL_SIGNED_NORMALIZED, + 0, 0, 0, 16, + 16, 0, 0, 0, 0, + 1, 1, 4 + }, + { + MESA_FORMAT_SIGNED_I16, + "MESA_FORMAT_SIGNED_I16", + GL_INTENSITY, + GL_SIGNED_NORMALIZED, + 0, 0, 0, 0, + 0, 16, 0, 0, 0, + 1, 1, 2 + } }; @@ -1530,10 +1604,14 @@ _mesa_format_to_type_and_comps(gl_format format, return; case MESA_FORMAT_SIGNED_R8: + case MESA_FORMAT_SIGNED_A8: + case MESA_FORMAT_SIGNED_L8: + case MESA_FORMAT_SIGNED_I8: *datatype = GL_BYTE; *comps = 1; return; - case MESA_FORMAT_SIGNED_RG88: + case MESA_FORMAT_SIGNED_RG88_REV: + case MESA_FORMAT_SIGNED_AL88: *datatype = GL_BYTE; *comps = 2; return; @@ -1549,11 +1627,15 @@ _mesa_format_to_type_and_comps(gl_format format, *comps = 4; return; - case MESA_FORMAT_SIGNED_R_16: + case MESA_FORMAT_SIGNED_R16: + case MESA_FORMAT_SIGNED_A16: + case MESA_FORMAT_SIGNED_L16: + case MESA_FORMAT_SIGNED_I16: *datatype = GL_SHORT; *comps = 1; return; - case MESA_FORMAT_SIGNED_RG_16: + case MESA_FORMAT_SIGNED_GR1616: + case MESA_FORMAT_SIGNED_AL1616: *datatype = GL_SHORT; *comps = 2; return; diff --git a/src/mesa/main/formats.h b/src/mesa/main/formats.h index 04a18930b4e..e0c2acbb9e9 100644 --- a/src/mesa/main/formats.h +++ b/src/mesa/main/formats.h @@ -168,12 +168,12 @@ typedef enum /*@{*/ MESA_FORMAT_DUDV8, /* DUDU DUDU DVDV DVDV */ MESA_FORMAT_SIGNED_R8, /* RRRR RRRR */ - MESA_FORMAT_SIGNED_RG88, /* RRRR RRRR GGGG GGGG */ + MESA_FORMAT_SIGNED_RG88_REV, /* GGGG GGGG RRRR RRRR */ MESA_FORMAT_SIGNED_RGBX8888, /* RRRR RRRR GGGG GGGG BBBB BBBB xxxx xxxx */ MESA_FORMAT_SIGNED_RGBA8888, /* RRRR RRRR GGGG GGGG BBBB BBBB AAAA AAAA */ MESA_FORMAT_SIGNED_RGBA8888_REV,/*AAAA AAAA BBBB BBBB GGGG GGGG RRRR RRRR */ - MESA_FORMAT_SIGNED_R_16, /* ushort[0]=R */ - MESA_FORMAT_SIGNED_RG_16, /* ushort[0]=R, ushort[1]=G */ + MESA_FORMAT_SIGNED_R16, /* RRRR RRRR RRRR RRRR */ + MESA_FORMAT_SIGNED_GR1616, /* GGGG GGGG GGGG GGGG RRRR RRRR RRRR RRRR */ MESA_FORMAT_SIGNED_RGB_16, /* ushort[0]=R, ushort[1]=G, ushort[2]=B */ MESA_FORMAT_SIGNED_RGBA_16, /* ... */ MESA_FORMAT_RGBA_16, /* ... */ @@ -193,6 +193,15 @@ typedef enum MESA_FORMAT_SIGNED_LA_LATC2, /*@}*/ + MESA_FORMAT_SIGNED_A8, /* AAAA AAAA */ + MESA_FORMAT_SIGNED_L8, /* LLLL LLLL */ + MESA_FORMAT_SIGNED_AL88, /* AAAA AAAA LLLL LLLL */ + MESA_FORMAT_SIGNED_I8, /* IIII IIII */ + MESA_FORMAT_SIGNED_A16, /* AAAA AAAA AAAA AAAA */ + MESA_FORMAT_SIGNED_L16, /* LLLL LLLL LLLL LLLL */ + MESA_FORMAT_SIGNED_AL1616, /* AAAA AAAA AAAA AAAA LLLL LLLL LLLL LLLL */ + MESA_FORMAT_SIGNED_I16, /* IIII IIII IIII IIII */ + MESA_FORMAT_COUNT } gl_format; diff --git a/src/mesa/main/image.c b/src/mesa/main/image.c index bbde3800e8c..28841c25102 100644 --- a/src/mesa/main/image.c +++ b/src/mesa/main/image.c @@ -748,9 +748,6 @@ _mesa_is_color_format(GLenum format) case GL_COMPRESSED_LUMINANCE_ALPHA_LATC2_EXT: case GL_COMPRESSED_SIGNED_LUMINANCE_ALPHA_LATC2_EXT: case GL_COMPRESSED_LUMINANCE_ALPHA_3DC_ATI: - /* signed, normalized texture formats */ - case GL_RGBA_SNORM: - case GL_RGBA8_SNORM: /* generic integer formats */ case GL_RED_INTEGER_EXT: case GL_GREEN_INTEGER_EXT: @@ -799,6 +796,31 @@ _mesa_is_color_format(GLenum format) case GL_INTENSITY8I_EXT: case GL_LUMINANCE8I_EXT: case GL_LUMINANCE_ALPHA8I_EXT: + /* signed, normalized texture formats */ + case GL_RED_SNORM: + case GL_R8_SNORM: + case GL_R16_SNORM: + case GL_RG_SNORM: + case GL_RG8_SNORM: + case GL_RG16_SNORM: + case GL_RGB_SNORM: + case GL_RGB8_SNORM: + case GL_RGB16_SNORM: + case GL_RGBA_SNORM: + case GL_RGBA8_SNORM: + case GL_RGBA16_SNORM: + case GL_ALPHA_SNORM: + case GL_ALPHA8_SNORM: + case GL_ALPHA16_SNORM: + case GL_LUMINANCE_SNORM: + case GL_LUMINANCE8_SNORM: + case GL_LUMINANCE16_SNORM: + case GL_LUMINANCE_ALPHA_SNORM: + case GL_LUMINANCE8_ALPHA8_SNORM: + case GL_LUMINANCE16_ALPHA16_SNORM: + case GL_INTENSITY_SNORM: + case GL_INTENSITY8_SNORM: + case GL_INTENSITY16_SNORM: return GL_TRUE; case GL_YCBCR_MESA: /* not considered to be RGB */ /* fall-through */ diff --git a/src/mesa/main/macros.h b/src/mesa/main/macros.h index b2ec0ba9b73..86a58cc6b43 100644 --- a/src/mesa/main/macros.h +++ b/src/mesa/main/macros.h @@ -58,8 +58,7 @@ extern GLfloat _mesa_ubyte_to_float_color_tab[256]; #define BYTE_TO_FLOAT_TEX(B) ((B) == -128 ? -1.0F : (B) * (1.0F/127.0F)) /** Convert GLfloat in [-1.0,1.0] to GLbyte in [-128,127], texture/fb data */ -#define FLOAT_TO_BYTE_TEX(X) ( (GLint) (127.0F * (X)) ) - +#define FLOAT_TO_BYTE_TEX(X) CLAMP( (GLint) (127.0F * (X)), -128, 127 ) /** Convert GLushort in [0,65535] to GLfloat in [0.0,1.0] */ #define USHORT_TO_FLOAT(S) ((GLfloat) (S) * (1.0F / 65535.0F)) diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index 2e3ea5c0c1c..02676006a9f 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -2828,6 +2828,7 @@ struct gl_extensions GLboolean EXT_texture_lod_bias; GLboolean EXT_texture_mirror_clamp; GLboolean EXT_texture_shared_exponent; + GLboolean EXT_texture_snorm; GLboolean EXT_texture_sRGB; GLboolean EXT_texture_sRGB_decode; GLboolean EXT_texture_swizzle; @@ -2855,7 +2856,6 @@ struct gl_extensions GLboolean MESA_resize_buffers; GLboolean MESA_ycbcr_texture; GLboolean MESA_texture_array; - GLboolean MESA_texture_signed_rgba; GLboolean NV_blend_square; GLboolean NV_conditional_render; GLboolean NV_fragment_program; diff --git a/src/mesa/main/texformat.c b/src/mesa/main/texformat.c index 5eabf2aa527..8b7b4ff475d 100644 --- a/src/mesa/main/texformat.c +++ b/src/mesa/main/texformat.c @@ -389,19 +389,7 @@ _mesa_choose_tex_format( struct gl_context *ctx, GLint internalFormat, } } - if (ctx->Extensions.MESA_texture_signed_rgba) { - switch (internalFormat) { - case GL_RGBA_SNORM: - case GL_RGBA8_SNORM: - RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA8888); - RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA8888_REV); - break; - default: - ; /* fallthrough */ - } - } - - if (ctx->VersionMajor * 10 + ctx->VersionMinor >= 31) { + if (ctx->Extensions.EXT_texture_snorm) { switch (internalFormat) { case GL_RED_SNORM: case GL_R8_SNORM: @@ -409,7 +397,7 @@ _mesa_choose_tex_format( struct gl_context *ctx, GLint internalFormat, break; case GL_RG_SNORM: case GL_RG8_SNORM: - RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RG88); + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RG88_REV); break; case GL_RGB_SNORM: case GL_RGB8_SNORM: @@ -418,12 +406,29 @@ _mesa_choose_tex_format( struct gl_context *ctx, GLint internalFormat, case GL_RGBA_SNORM: case GL_RGBA8_SNORM: RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA8888); + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA8888_REV); break; + case GL_ALPHA_SNORM: + case GL_ALPHA8_SNORM: + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_A8); + break; + case GL_LUMINANCE_SNORM: + case GL_LUMINANCE8_SNORM: + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_L8); + break; + case GL_LUMINANCE_ALPHA_SNORM: + case GL_LUMINANCE8_ALPHA8_SNORM: + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_AL88); + break; + case GL_INTENSITY_SNORM: + case GL_INTENSITY8_SNORM: + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_I8); + break; case GL_R16_SNORM: - RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_R_16); + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_R16); break; case GL_RG16_SNORM: - RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RG_16); + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_GR1616); break; case GL_RGB16_SNORM: RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGB_16); @@ -431,6 +436,18 @@ _mesa_choose_tex_format( struct gl_context *ctx, GLint internalFormat, case GL_RGBA16_SNORM: RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA_16); break; + case GL_ALPHA16_SNORM: + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_A16); + break; + case GL_LUMINANCE16_SNORM: + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_L16); + break; + case GL_LUMINANCE16_ALPHA16_SNORM: + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_AL1616); + break; + case GL_INTENSITY16_SNORM: + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_I16); + break; default: ; /* fall-through */ } diff --git a/src/mesa/main/teximage.c b/src/mesa/main/teximage.c index c6b8c05b100..86927d3b661 100644 --- a/src/mesa/main/teximage.c +++ b/src/mesa/main/teximage.c @@ -311,11 +311,40 @@ _mesa_base_tex_format( struct gl_context *ctx, GLint internalFormat ) } } - if (ctx->Extensions.MESA_texture_signed_rgba) { + if (ctx->Extensions.EXT_texture_snorm) { switch (internalFormat) { + case GL_RED_SNORM: + case GL_R8_SNORM: + case GL_R16_SNORM: + return GL_RED; + case GL_RG_SNORM: + case GL_RG8_SNORM: + case GL_RG16_SNORM: + return GL_RG; + case GL_RGB_SNORM: + case GL_RGB8_SNORM: + case GL_RGB16_SNORM: + return GL_RGB; case GL_RGBA_SNORM: case GL_RGBA8_SNORM: + case GL_RGBA16_SNORM: return GL_RGBA; + case GL_ALPHA_SNORM: + case GL_ALPHA8_SNORM: + case GL_ALPHA16_SNORM: + return GL_ALPHA; + case GL_LUMINANCE_SNORM: + case GL_LUMINANCE8_SNORM: + case GL_LUMINANCE16_SNORM: + return GL_LUMINANCE; + case GL_LUMINANCE_ALPHA_SNORM: + case GL_LUMINANCE8_ALPHA8_SNORM: + case GL_LUMINANCE16_ALPHA16_SNORM: + return GL_LUMINANCE_ALPHA; + case GL_INTENSITY_SNORM: + case GL_INTENSITY8_SNORM: + case GL_INTENSITY16_SNORM: + return GL_INTENSITY; default: ; /* fallthrough */ } diff --git a/src/mesa/main/version.c b/src/mesa/main/version.c index 956c7b90a37..c7a0d69a4f0 100644 --- a/src/mesa/main/version.c +++ b/src/mesa/main/version.c @@ -114,6 +114,7 @@ compute_version(struct gl_context *ctx) ctx->Extensions.ARB_draw_instanced && ctx->Extensions.ARB_texture_buffer_object && ctx->Extensions.ARB_uniform_buffer_object && + ctx->Extensions.EXT_texture_snorm && ctx->Extensions.NV_primitive_restart && ctx->Extensions.NV_texture_rectangle && ctx->Const.MaxVertexTextureImageUnits >= 16); From daa5242f9eafaf61f9f492f1e798de8701e6f498 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Sun, 13 Mar 2011 14:48:09 +0100 Subject: [PATCH 068/420] mesa: implement texstore and texfetch hooks for signed normalized formats The snorm texstore functions were all broken. swrast support done except for mipmap generation, but I leave it disabled. --- src/mesa/main/texfetch.c | 86 ++++++++-- src/mesa/main/texfetch_tmp.h | 227 +++++++++++++++++++++++-- src/mesa/main/texstore.c | 319 +++++++++++++++++++++++++---------- 3 files changed, 514 insertions(+), 118 deletions(-) diff --git a/src/mesa/main/texfetch.c b/src/mesa/main/texfetch.c index 988a7e05468..b2181af2931 100644 --- a/src/mesa/main/texfetch.c +++ b/src/mesa/main/texfetch.c @@ -696,11 +696,11 @@ texfetch_funcs[MESA_FORMAT_COUNT] = store_texel_signed_r8 }, { - MESA_FORMAT_SIGNED_RG88, - fetch_texel_1d_signed_rg88, - fetch_texel_2d_signed_rg88, - fetch_texel_3d_signed_rg88, - store_texel_signed_rg88 + MESA_FORMAT_SIGNED_RG88_REV, + fetch_texel_1d_signed_rg88_rev, + fetch_texel_2d_signed_rg88_rev, + fetch_texel_3d_signed_rg88_rev, + store_texel_signed_rg88_rev }, { MESA_FORMAT_SIGNED_RGBX8888, @@ -724,18 +724,18 @@ texfetch_funcs[MESA_FORMAT_COUNT] = store_texel_signed_rgba8888_rev }, { - MESA_FORMAT_SIGNED_R_16, - fetch_texel_1d_signed_r_16, - fetch_texel_2d_signed_r_16, - fetch_texel_3d_signed_r_16, - store_texel_signed_r_16 + MESA_FORMAT_SIGNED_R16, + fetch_texel_1d_signed_r16, + fetch_texel_2d_signed_r16, + fetch_texel_3d_signed_r16, + store_texel_signed_r16 }, { - MESA_FORMAT_SIGNED_RG_16, - fetch_texel_1d_signed_rg_16, - fetch_texel_2d_signed_rg_16, - fetch_texel_3d_signed_rg_16, - store_texel_signed_rg_16 + MESA_FORMAT_SIGNED_GR1616, + fetch_texel_1d_signed_rg1616, + fetch_texel_2d_signed_rg1616, + fetch_texel_3d_signed_rg1616, + store_texel_signed_rg1616 }, { MESA_FORMAT_SIGNED_RGB_16, @@ -814,6 +814,62 @@ texfetch_funcs[MESA_FORMAT_COUNT] = NULL, NULL }, + { + MESA_FORMAT_SIGNED_A8, + fetch_texel_1d_signed_a8, + fetch_texel_2d_signed_a8, + fetch_texel_3d_signed_a8, + store_texel_signed_a8 + }, + { + MESA_FORMAT_SIGNED_L8, + fetch_texel_1d_signed_l8, + fetch_texel_2d_signed_l8, + fetch_texel_3d_signed_l8, + store_texel_signed_l8 + }, + { + MESA_FORMAT_SIGNED_AL88, + fetch_texel_1d_signed_al88, + fetch_texel_2d_signed_al88, + fetch_texel_3d_signed_al88, + store_texel_signed_al88 + }, + { + MESA_FORMAT_SIGNED_I8, + fetch_texel_1d_signed_i8, + fetch_texel_2d_signed_i8, + fetch_texel_3d_signed_i8, + store_texel_signed_i8 + }, + { + MESA_FORMAT_SIGNED_A16, + fetch_texel_1d_signed_a16, + fetch_texel_2d_signed_a16, + fetch_texel_3d_signed_a16, + store_texel_signed_a16 + }, + { + MESA_FORMAT_SIGNED_L16, + fetch_texel_1d_signed_l16, + fetch_texel_2d_signed_l16, + fetch_texel_3d_signed_l16, + store_texel_signed_l16 + }, + { + MESA_FORMAT_SIGNED_AL1616, + fetch_texel_1d_signed_al1616, + fetch_texel_2d_signed_al1616, + fetch_texel_3d_signed_al1616, + store_texel_signed_al1616 + }, + { + MESA_FORMAT_SIGNED_I16, + fetch_texel_1d_signed_i16, + fetch_texel_2d_signed_i16, + fetch_texel_3d_signed_i16, + store_texel_signed_i16 + }, }; diff --git a/src/mesa/main/texfetch_tmp.h b/src/mesa/main/texfetch_tmp.h index 36dede57f00..f1f6a01a4b9 100644 --- a/src/mesa/main/texfetch_tmp.h +++ b/src/mesa/main/texfetch_tmp.h @@ -1673,25 +1673,117 @@ static void store_texel_signed_r8(struct gl_texture_image *texImage, #endif -/* MESA_FORMAT_SIGNED_RG88 ***********************************************/ +/* MESA_FORMAT_SIGNED_A8 ***********************************************/ -static void FETCH(signed_rg88)( const struct gl_texture_image *texImage, - GLint i, GLint j, GLint k, GLfloat *texel ) +static void FETCH(signed_a8)( const struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, GLfloat *texel ) +{ + const GLbyte s = *TEXEL_ADDR(GLbyte, texImage, i, j, k, 1); + texel[RCOMP] = 0.0F; + texel[GCOMP] = 0.0F; + texel[BCOMP] = 0.0F; + texel[ACOMP] = BYTE_TO_FLOAT_TEX( s ); +} + +#if DIM == 3 +static void store_texel_signed_a8(struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, const void *texel) +{ + const GLbyte *rgba = (const GLbyte *) texel; + GLbyte *dst = TEXEL_ADDR(GLbyte, texImage, i, j, k, 1); + *dst = rgba[ACOMP]; +} +#endif + + +/* MESA_FORMAT_SIGNED_L8 ***********************************************/ + +static void FETCH(signed_l8)( const struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, GLfloat *texel ) +{ + const GLbyte s = *TEXEL_ADDR(GLbyte, texImage, i, j, k, 1); + texel[RCOMP] = + texel[GCOMP] = + texel[BCOMP] = BYTE_TO_FLOAT_TEX( s ); + texel[ACOMP] = 1.0F; +} + +#if DIM == 3 +static void store_texel_signed_l8(struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, const void *texel) +{ + const GLbyte *rgba = (const GLbyte *) texel; + GLbyte *dst = TEXEL_ADDR(GLbyte, texImage, i, j, k, 1); + *dst = rgba[RCOMP]; +} +#endif + + +/* MESA_FORMAT_SIGNED_I8 ***********************************************/ + +static void FETCH(signed_i8)( const struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, GLfloat *texel ) +{ + const GLbyte s = *TEXEL_ADDR(GLbyte, texImage, i, j, k, 1); + texel[RCOMP] = + texel[GCOMP] = + texel[BCOMP] = + texel[ACOMP] = BYTE_TO_FLOAT_TEX( s ); +} + +#if DIM == 3 +static void store_texel_signed_i8(struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, const void *texel) +{ + const GLbyte *rgba = (const GLbyte *) texel; + GLbyte *dst = TEXEL_ADDR(GLbyte, texImage, i, j, k, 1); + *dst = rgba[RCOMP]; +} +#endif + + +/* MESA_FORMAT_SIGNED_RG88_REV ***********************************************/ + +static void FETCH(signed_rg88_rev)( const struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, GLfloat *texel ) { const GLushort s = *TEXEL_ADDR(GLshort, texImage, i, j, k, 1); - texel[RCOMP] = BYTE_TO_FLOAT_TEX( (GLbyte) (s >> 8) ); - texel[GCOMP] = BYTE_TO_FLOAT_TEX( (GLbyte) (s & 0xff) ); + texel[RCOMP] = BYTE_TO_FLOAT_TEX( (GLbyte) (s & 0xff) ); + texel[GCOMP] = BYTE_TO_FLOAT_TEX( (GLbyte) (s >> 8) ); texel[BCOMP] = 0.0F; texel[ACOMP] = 1.0F; } #if DIM == 3 -static void store_texel_signed_rg88(struct gl_texture_image *texImage, +static void store_texel_signed_rg88_rev(struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, const void *texel) +{ + const GLbyte *rg = (const GLbyte *) texel; + GLushort *dst = TEXEL_ADDR(GLushort, texImage, i, j, k, 1); + dst[0] = PACK_COLOR_88(rg[GCOMP], rg[RCOMP]); +} +#endif + + +/* MESA_FORMAT_SIGNED_AL88 ***********************************************/ + +static void FETCH(signed_al88)( const struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, GLfloat *texel ) +{ + const GLushort s = *TEXEL_ADDR(GLshort, texImage, i, j, k, 1); + texel[RCOMP] = + texel[GCOMP] = + texel[BCOMP] = BYTE_TO_FLOAT_TEX( (GLbyte) (s & 0xff) ); + texel[ACOMP] = BYTE_TO_FLOAT_TEX( (GLbyte) (s >> 8) ); +} + +#if DIM == 3 +static void store_texel_signed_al88(struct gl_texture_image *texImage, GLint i, GLint j, GLint k, const void *texel) { const GLbyte *rg = (const GLbyte *) texel; - GLushort *dst = TEXEL_ADDR(GLushort, texImage, i, j, k, 2); - *dst = PACK_COLOR_88(rg[RCOMP], rg[GCOMP]); + GLushort *dst = TEXEL_ADDR(GLushort, texImage, i, j, k, 1); + dst[0] = PACK_COLOR_88(rg[ACOMP], rg[RCOMP]); } #endif @@ -1763,11 +1855,11 @@ static void store_texel_signed_rgba8888_rev(struct gl_texture_image *texImage, -/* MESA_FORMAT_SIGNED_R_16 ***********************************************/ +/* MESA_FORMAT_SIGNED_R16 ***********************************************/ static void -FETCH(signed_r_16)(const struct gl_texture_image *texImage, - GLint i, GLint j, GLint k, GLfloat *texel) +FETCH(signed_r16)(const struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, GLfloat *texel) { const GLshort s = *TEXEL_ADDR(GLshort, texImage, i, j, k, 1); texel[RCOMP] = SHORT_TO_FLOAT_TEX( s ); @@ -1778,8 +1870,8 @@ FETCH(signed_r_16)(const struct gl_texture_image *texImage, #if DIM == 3 static void -store_texel_signed_r_16(struct gl_texture_image *texImage, - GLint i, GLint j, GLint k, const void *texel) +store_texel_signed_r16(struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, const void *texel) { const GLshort *rgba = (const GLshort *) texel; GLshort *dst = TEXEL_ADDR(GLshort, texImage, i, j, k, 1); @@ -1788,10 +1880,85 @@ store_texel_signed_r_16(struct gl_texture_image *texImage, #endif -/* MESA_FORMAT_SIGNED_RG_16 ***********************************************/ +/* MESA_FORMAT_SIGNED_A16 ***********************************************/ static void -FETCH(signed_rg_16)(const struct gl_texture_image *texImage, +FETCH(signed_a16)(const struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, GLfloat *texel) +{ + const GLshort s = *TEXEL_ADDR(GLshort, texImage, i, j, k, 1); + texel[RCOMP] = 0.0F; + texel[GCOMP] = 0.0F; + texel[BCOMP] = 0.0F; + texel[ACOMP] = SHORT_TO_FLOAT_TEX( s ); +} + +#if DIM == 3 +static void +store_texel_signed_a16(struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, const void *texel) +{ + const GLshort *rgba = (const GLshort *) texel; + GLshort *dst = TEXEL_ADDR(GLshort, texImage, i, j, k, 1); + *dst = rgba[ACOMP]; +} +#endif + + +/* MESA_FORMAT_SIGNED_L16 ***********************************************/ + +static void +FETCH(signed_l16)(const struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, GLfloat *texel) +{ + const GLshort s = *TEXEL_ADDR(GLshort, texImage, i, j, k, 1); + texel[RCOMP] = + texel[GCOMP] = + texel[BCOMP] = SHORT_TO_FLOAT_TEX( s ); + texel[ACOMP] = 1.0F; +} + +#if DIM == 3 +static void +store_texel_signed_l16(struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, const void *texel) +{ + const GLshort *rgba = (const GLshort *) texel; + GLshort *dst = TEXEL_ADDR(GLshort, texImage, i, j, k, 1); + *dst = rgba[RCOMP]; +} +#endif + + +/* MESA_FORMAT_SIGNED_I16 ***********************************************/ + +static void +FETCH(signed_i16)(const struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, GLfloat *texel) +{ + const GLshort s = *TEXEL_ADDR(GLshort, texImage, i, j, k, 1); + texel[RCOMP] = + texel[GCOMP] = + texel[BCOMP] = + texel[ACOMP] = SHORT_TO_FLOAT_TEX( s ); +} + +#if DIM == 3 +static void +store_texel_signed_i16(struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, const void *texel) +{ + const GLshort *rgba = (const GLshort *) texel; + GLshort *dst = TEXEL_ADDR(GLshort, texImage, i, j, k, 1); + *dst = rgba[RCOMP]; +} +#endif + + +/* MESA_FORMAT_SIGNED_RG1616 ***********************************************/ + +static void +FETCH(signed_rg1616)(const struct gl_texture_image *texImage, GLint i, GLint j, GLint k, GLfloat *texel) { const GLshort *s = TEXEL_ADDR(GLshort, texImage, i, j, k, 2); @@ -1803,7 +1970,7 @@ FETCH(signed_rg_16)(const struct gl_texture_image *texImage, #if DIM == 3 static void -store_texel_signed_rg_16(struct gl_texture_image *texImage, +store_texel_signed_rg1616(struct gl_texture_image *texImage, GLint i, GLint j, GLint k, const void *texel) { const GLshort *rgba = (const GLshort *) texel; @@ -1814,7 +1981,33 @@ store_texel_signed_rg_16(struct gl_texture_image *texImage, #endif -/* MESA_FORMAT_SIGNED_RGBA_16 ***********************************************/ +/* MESA_FORMAT_SIGNED_AL1616 ***********************************************/ + +static void +FETCH(signed_al1616)(const struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, GLfloat *texel) +{ + const GLshort *s = TEXEL_ADDR(GLshort, texImage, i, j, k, 2); + texel[RCOMP] = + texel[GCOMP] = + texel[BCOMP] = SHORT_TO_FLOAT_TEX( s[0] ); + texel[ACOMP] = SHORT_TO_FLOAT_TEX( s[1] ); +} + +#if DIM == 3 +static void +store_texel_signed_al1616(struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, const void *texel) +{ + const GLshort *rgba = (const GLshort *) texel; + GLshort *dst = TEXEL_ADDR(GLshort, texImage, i, j, k, 2); + dst[0] = rgba[RCOMP]; + dst[1] = rgba[ACOMP]; +} +#endif + + +/* MESA_FORMAT_SIGNED_RGB_16 ***********************************************/ static void FETCH(signed_rgb_16)(const struct gl_texture_image *texImage, diff --git a/src/mesa/main/texstore.c b/src/mesa/main/texstore.c index 591759149ad..eb37490e1f6 100644 --- a/src/mesa/main/texstore.c +++ b/src/mesa/main/texstore.c @@ -2500,9 +2500,7 @@ _mesa_texstore_signed_rgba_16(TEXSTORE_PARAMS) const GLuint texelBytes = _mesa_get_format_bytes(dstFormat); const GLenum baseFormat = _mesa_get_format_base_format(dstFormat); - ASSERT(dstFormat == MESA_FORMAT_SIGNED_R_16 || - dstFormat == MESA_FORMAT_SIGNED_RG_16 || - dstFormat == MESA_FORMAT_SIGNED_RGB_16 || + ASSERT(dstFormat == MESA_FORMAT_SIGNED_RGB_16 || dstFormat == MESA_FORMAT_SIGNED_RGBA_16); if (!ctx->_ImageTransferState && @@ -2545,16 +2543,29 @@ _mesa_texstore_signed_rgba_16(TEXSTORE_PARAMS) + dstXoffset * texelBytes; for (row = 0; row < srcHeight; row++) { GLshort *dstRowS = (GLshort *) dstRow; - for (col = 0; col < srcWidth; col++) { - GLuint c; - for (c = 0; c < comps; c++) { - GLshort p; - UNCLAMPED_FLOAT_TO_SHORT(p, src[col * 4 + c]); - dstRowS[col * comps + c] = p; + if (dstFormat == MESA_FORMAT_SIGNED_RGBA_16) { + for (col = 0; col < srcWidth; col++) { + GLuint c; + for (c = 0; c < comps; c++) { + GLshort p; + UNCLAMPED_FLOAT_TO_SHORT(p, src[col * 4 + c]); + dstRowS[col * comps + c] = p; + } } + dstRow += dstRowStride; + src += 4 * srcWidth; + } else { + for (col = 0; col < srcWidth; col++) { + GLuint c; + for (c = 0; c < comps; c++) { + GLshort p; + UNCLAMPED_FLOAT_TO_SHORT(p, src[col * 3 + c]); + dstRowS[col * comps + c] = p; + } + } + dstRow += dstRowStride; + src += 3 * srcWidth; } - dstRow += dstRowStride; - src += 4 * srcWidth; } } free((void *) tempImage); @@ -2889,19 +2900,33 @@ _mesa_texstore_dudv8(TEXSTORE_PARAMS) /** - * Store a texture in MESA_FORMAT_SIGNED_R8 format. + * Store a texture in a signed normalized 8-bit format. */ static GLboolean -_mesa_texstore_signed_r8(TEXSTORE_PARAMS) +_mesa_texstore_snorm8(TEXSTORE_PARAMS) { const GLuint texelBytes = _mesa_get_format_bytes(dstFormat); const GLenum baseFormat = _mesa_get_format_base_format(dstFormat); - ASSERT(dstFormat == MESA_FORMAT_SIGNED_R8); + ASSERT(dstFormat == MESA_FORMAT_SIGNED_A8 || + dstFormat == MESA_FORMAT_SIGNED_L8 || + dstFormat == MESA_FORMAT_SIGNED_I8 || + dstFormat == MESA_FORMAT_SIGNED_R8); ASSERT(texelBytes == 1); - /* XXX look at adding optimized paths */ - { + if (!ctx->_ImageTransferState && + !srcPacking->SwapBytes && + baseInternalFormat == srcFormat && + srcType == GL_BYTE) { + /* simple memcpy path */ + memcpy_texture(ctx, dims, + dstFormat, dstAddr, dstXoffset, dstYoffset, dstZoffset, + dstRowStride, + dstImageOffsets, + srcWidth, srcHeight, srcDepth, srcFormat, srcType, + srcAddr, srcPacking); + } + else { /* general path */ const GLfloat *tempImage = _mesa_make_temp_float_image(ctx, dims, baseInternalFormat, @@ -2910,21 +2935,21 @@ _mesa_texstore_signed_r8(TEXSTORE_PARAMS) srcFormat, srcType, srcAddr, srcPacking, ctx->_ImageTransferState); - const GLfloat *srcRow = tempImage; + const GLfloat *src = tempImage; GLint img, row, col; if (!tempImage) return GL_FALSE; for (img = 0; img < srcDepth; img++) { - GLubyte *dstRow = (GLubyte *) dstAddr + GLbyte *dstRow = (GLbyte *) dstAddr + dstImageOffsets[dstZoffset + img] * texelBytes + dstYoffset * dstRowStride + dstXoffset * texelBytes; for (row = 0; row < srcHeight; row++) { - GLubyte *dstB = (GLubyte *) dstRow; for (col = 0; col < srcWidth; col++) { - dstB[col] = FLOAT_TO_BYTE_TEX(srcRow[RCOMP]); + dstRow[col] = FLOAT_TO_BYTE_TEX(src[col]); } dstRow += dstRowStride; + src += srcWidth; } } free((void *) tempImage); @@ -2934,19 +2959,33 @@ _mesa_texstore_signed_r8(TEXSTORE_PARAMS) /** - * Store a texture in MESA_FORMAT_SIGNED_RG88 format. + * Store a texture in a signed normalized two-channel 16-bit format. */ static GLboolean -_mesa_texstore_signed_rg88(TEXSTORE_PARAMS) +_mesa_texstore_snorm88(TEXSTORE_PARAMS) { + const GLboolean littleEndian = _mesa_little_endian(); const GLuint texelBytes = _mesa_get_format_bytes(dstFormat); const GLenum baseFormat = _mesa_get_format_base_format(dstFormat); - ASSERT(dstFormat == MESA_FORMAT_SIGNED_RG88); - ASSERT(texelBytes == 1); + ASSERT(dstFormat == MESA_FORMAT_SIGNED_AL88 || + dstFormat == MESA_FORMAT_SIGNED_RG88_REV); + ASSERT(texelBytes == 2); - /* XXX look at adding optimized paths */ - { + if (!ctx->_ImageTransferState && + !srcPacking->SwapBytes && + baseInternalFormat == srcFormat && + srcType == GL_BYTE && + littleEndian) { + /* simple memcpy path */ + memcpy_texture(ctx, dims, + dstFormat, dstAddr, dstXoffset, dstYoffset, dstZoffset, + dstRowStride, + dstImageOffsets, + srcWidth, srcHeight, srcDepth, srcFormat, srcType, + srcAddr, srcPacking); + } + else { /* general path */ const GLfloat *tempImage = _mesa_make_temp_float_image(ctx, dims, baseInternalFormat, @@ -2955,20 +2994,22 @@ _mesa_texstore_signed_rg88(TEXSTORE_PARAMS) srcFormat, srcType, srcAddr, srcPacking, ctx->_ImageTransferState); - const GLfloat *srcRow = tempImage; + const GLfloat *src = tempImage; GLint img, row, col; if (!tempImage) return GL_FALSE; for (img = 0; img < srcDepth; img++) { - GLubyte *dstRow = (GLubyte *) dstAddr + GLbyte *dstRow = (GLbyte *) dstAddr + dstImageOffsets[dstZoffset + img] * texelBytes + dstYoffset * dstRowStride + dstXoffset * texelBytes; for (row = 0; row < srcHeight; row++) { - GLushort *dstUS = (GLushort *) dstRow; + GLbyte *dst = dstRow; for (col = 0; col < srcWidth; col++) { - dstUS[col] = PACK_COLOR_88(FLOAT_TO_BYTE_TEX(srcRow[RCOMP]), - FLOAT_TO_BYTE_TEX(srcRow[GCOMP])); + dst[0] = FLOAT_TO_BYTE_TEX(src[0]); + dst[1] = FLOAT_TO_BYTE_TEX(src[1]); + src += 2; + dst += 2; } dstRow += dstRowStride; } @@ -2978,6 +3019,132 @@ _mesa_texstore_signed_rg88(TEXSTORE_PARAMS) return GL_TRUE; } +/* Texstore for signed R16, A16, L16, I16. */ +static GLboolean +_mesa_texstore_snorm16(TEXSTORE_PARAMS) +{ + const GLboolean littleEndian = _mesa_little_endian(); + const GLuint texelBytes = _mesa_get_format_bytes(dstFormat); + const GLenum baseFormat = _mesa_get_format_base_format(dstFormat); + + ASSERT(dstFormat == MESA_FORMAT_SIGNED_R16 || + dstFormat == MESA_FORMAT_SIGNED_A16 || + dstFormat == MESA_FORMAT_SIGNED_L16 || + dstFormat == MESA_FORMAT_SIGNED_I16); + ASSERT(texelBytes == 2); + + if (!ctx->_ImageTransferState && + !srcPacking->SwapBytes && + baseInternalFormat == srcFormat && + srcType == GL_SHORT && + littleEndian) { + /* simple memcpy path */ + memcpy_texture(ctx, dims, + dstFormat, dstAddr, dstXoffset, dstYoffset, dstZoffset, + dstRowStride, + dstImageOffsets, + srcWidth, srcHeight, srcDepth, srcFormat, srcType, + srcAddr, srcPacking); + } + else { + /* general path */ + const GLfloat *tempImage = _mesa_make_temp_float_image(ctx, dims, + baseInternalFormat, + baseFormat, + srcWidth, srcHeight, srcDepth, + srcFormat, srcType, srcAddr, + srcPacking, + ctx->_ImageTransferState); + const GLfloat *src = tempImage; + GLint img, row, col; + if (!tempImage) + return GL_FALSE; + for (img = 0; img < srcDepth; img++) { + GLubyte *dstRow = (GLubyte *) dstAddr + + dstImageOffsets[dstZoffset + img] * texelBytes + + dstYoffset * dstRowStride + + dstXoffset * texelBytes; + for (row = 0; row < srcHeight; row++) { + GLshort *dstUS = (GLshort *) dstRow; + for (col = 0; col < srcWidth; col++) { + GLushort r; + + UNCLAMPED_FLOAT_TO_SHORT(r, src[0]); + dstUS[col] = r; + src += 1; + } + dstRow += dstRowStride; + } + } + free((void *) tempImage); + } + return GL_TRUE; +} + +/** + * Do texstore for 2-channel, 16-bit/channel, signed normalized formats. + */ +static GLboolean +_mesa_texstore_snorm1616(TEXSTORE_PARAMS) +{ + const GLboolean littleEndian = _mesa_little_endian(); + const GLuint texelBytes = _mesa_get_format_bytes(dstFormat); + const GLenum baseFormat = _mesa_get_format_base_format(dstFormat); + + ASSERT(dstFormat == MESA_FORMAT_SIGNED_AL1616 || + dstFormat == MESA_FORMAT_SIGNED_GR1616); + ASSERT(texelBytes == 4); + + if (!ctx->_ImageTransferState && + !srcPacking->SwapBytes && + baseInternalFormat == srcFormat && + srcType == GL_SHORT && + littleEndian) { + /* simple memcpy path */ + memcpy_texture(ctx, dims, + dstFormat, dstAddr, dstXoffset, dstYoffset, dstZoffset, + dstRowStride, + dstImageOffsets, + srcWidth, srcHeight, srcDepth, srcFormat, srcType, + srcAddr, srcPacking); + } + else { + /* general path */ + const GLfloat *tempImage = _mesa_make_temp_float_image(ctx, dims, + baseInternalFormat, + baseFormat, + srcWidth, srcHeight, srcDepth, + srcFormat, srcType, srcAddr, + srcPacking, + ctx->_ImageTransferState); + const GLfloat *src = tempImage; + GLint img, row, col; + if (!tempImage) + return GL_FALSE; + for (img = 0; img < srcDepth; img++) { + GLubyte *dstRow = (GLubyte *) dstAddr + + dstImageOffsets[dstZoffset + img] * texelBytes + + dstYoffset * dstRowStride + + dstXoffset * texelBytes; + for (row = 0; row < srcHeight; row++) { + GLshort *dst = (GLshort *) dstRow; + for (col = 0; col < srcWidth; col++) { + GLushort l, a; + + UNCLAMPED_FLOAT_TO_SHORT(l, src[0]); + UNCLAMPED_FLOAT_TO_SHORT(a, src[1]); + dst[0] = l; + dst[1] = a; + src += 2; + dst += 2; + } + dstRow += dstRowStride; + } + } + free((void *) tempImage); + } + return GL_TRUE; +} /** * Store a texture in MESA_FORMAT_SIGNED_RGBX8888. @@ -3005,18 +3172,19 @@ _mesa_texstore_signed_rgbx8888(TEXSTORE_PARAMS) if (!tempImage) return GL_FALSE; for (img = 0; img < srcDepth; img++) { - GLubyte *dstRow = (GLubyte *) dstAddr + GLbyte *dstRow = (GLbyte *) dstAddr + dstImageOffsets[dstZoffset + img] * texelBytes + dstYoffset * dstRowStride + dstXoffset * texelBytes; for (row = 0; row < srcHeight; row++) { - GLuint *dstUI = (GLuint *) dstRow; + GLbyte *dst = dstRow; for (col = 0; col < srcWidth; col++) { - dstUI[col] = PACK_COLOR_8888( FLOAT_TO_BYTE_TEX(srcRow[RCOMP]), - FLOAT_TO_BYTE_TEX(srcRow[GCOMP]), - FLOAT_TO_BYTE_TEX(srcRow[BCOMP]), - 0xff ); - srcRow += 4; + dst[3] = FLOAT_TO_BYTE_TEX(srcRow[RCOMP]); + dst[2] = FLOAT_TO_BYTE_TEX(srcRow[GCOMP]); + dst[1] = FLOAT_TO_BYTE_TEX(srcRow[BCOMP]); + dst[0] = 0xff; + srcRow += 3; + dst += 4; } dstRow += dstRowStride; } @@ -3071,39 +3239,6 @@ _mesa_texstore_signed_rgba8888(TEXSTORE_PARAMS) srcWidth, srcHeight, srcDepth, srcFormat, srcType, srcAddr, srcPacking); } - else if (!ctx->_ImageTransferState && - (srcType == GL_BYTE) && - can_swizzle(baseInternalFormat) && - can_swizzle(srcFormat)) { - - GLubyte dstmap[4]; - - /* dstmap - how to swizzle from RGBA to dst format: - */ - if ((littleEndian && dstFormat == MESA_FORMAT_SIGNED_RGBA8888) || - (!littleEndian && dstFormat == MESA_FORMAT_SIGNED_RGBA8888_REV)) { - dstmap[3] = 0; - dstmap[2] = 1; - dstmap[1] = 2; - dstmap[0] = 3; - } - else { - dstmap[3] = 3; - dstmap[2] = 2; - dstmap[1] = 1; - dstmap[0] = 0; - } - - _mesa_swizzle_ubyte_image(ctx, dims, - srcFormat, - srcType, - baseInternalFormat, - dstmap, 4, - dstAddr, dstXoffset, dstYoffset, dstZoffset, - dstRowStride, dstImageOffsets, - srcWidth, srcHeight, srcDepth, srcAddr, - srcPacking); - } else { /* general path */ const GLfloat *tempImage = _mesa_make_temp_float_image(ctx, dims, @@ -3118,28 +3253,30 @@ _mesa_texstore_signed_rgba8888(TEXSTORE_PARAMS) if (!tempImage) return GL_FALSE; for (img = 0; img < srcDepth; img++) { - GLubyte *dstRow = (GLubyte *) dstAddr + GLbyte *dstRow = (GLbyte *) dstAddr + dstImageOffsets[dstZoffset + img] * texelBytes + dstYoffset * dstRowStride + dstXoffset * texelBytes; for (row = 0; row < srcHeight; row++) { - GLuint *dstUI = (GLuint *) dstRow; + GLbyte *dst = dstRow; if (dstFormat == MESA_FORMAT_SIGNED_RGBA8888) { for (col = 0; col < srcWidth; col++) { - dstUI[col] = PACK_COLOR_8888( FLOAT_TO_BYTE_TEX(srcRow[RCOMP]), - FLOAT_TO_BYTE_TEX(srcRow[GCOMP]), - FLOAT_TO_BYTE_TEX(srcRow[BCOMP]), - FLOAT_TO_BYTE_TEX(srcRow[ACOMP]) ); + dst[3] = FLOAT_TO_BYTE_TEX(srcRow[RCOMP]); + dst[2] = FLOAT_TO_BYTE_TEX(srcRow[GCOMP]); + dst[1] = FLOAT_TO_BYTE_TEX(srcRow[BCOMP]); + dst[0] = FLOAT_TO_BYTE_TEX(srcRow[ACOMP]); srcRow += 4; + dst += 4; } } else { for (col = 0; col < srcWidth; col++) { - dstUI[col] = PACK_COLOR_8888_REV( FLOAT_TO_BYTE_TEX(srcRow[RCOMP]), - FLOAT_TO_BYTE_TEX(srcRow[GCOMP]), - FLOAT_TO_BYTE_TEX(srcRow[BCOMP]), - FLOAT_TO_BYTE_TEX(srcRow[ACOMP]) ); + dst[0] = FLOAT_TO_BYTE_TEX(srcRow[RCOMP]); + dst[1] = FLOAT_TO_BYTE_TEX(srcRow[GCOMP]); + dst[2] = FLOAT_TO_BYTE_TEX(srcRow[BCOMP]); + dst[3] = FLOAT_TO_BYTE_TEX(srcRow[ACOMP]); srcRow += 4; + dst += 4; } } dstRow += dstRowStride; @@ -4119,15 +4256,15 @@ texstore_funcs[MESA_FORMAT_COUNT] = { MESA_FORMAT_DUDV8, _mesa_texstore_dudv8 }, - { MESA_FORMAT_SIGNED_R8, _mesa_texstore_signed_r8 }, - { MESA_FORMAT_SIGNED_RG88, _mesa_texstore_signed_rg88 }, + { MESA_FORMAT_SIGNED_R8, _mesa_texstore_snorm8 }, + { MESA_FORMAT_SIGNED_RG88_REV, _mesa_texstore_snorm88 }, { MESA_FORMAT_SIGNED_RGBX8888, _mesa_texstore_signed_rgbx8888 }, { MESA_FORMAT_SIGNED_RGBA8888, _mesa_texstore_signed_rgba8888 }, { MESA_FORMAT_SIGNED_RGBA8888_REV, _mesa_texstore_signed_rgba8888 }, - { MESA_FORMAT_SIGNED_R_16, _mesa_texstore_signed_rgba_16 }, - { MESA_FORMAT_SIGNED_RG_16, _mesa_texstore_signed_rgba_16 }, + { MESA_FORMAT_SIGNED_R16, _mesa_texstore_snorm16 }, + { MESA_FORMAT_SIGNED_GR1616, _mesa_texstore_snorm1616 }, { MESA_FORMAT_SIGNED_RGB_16, _mesa_texstore_signed_rgba_16 }, { MESA_FORMAT_SIGNED_RGBA_16, _mesa_texstore_signed_rgba_16 }, { MESA_FORMAT_RGBA_16, _mesa_texstore_rgba_16 }, @@ -4142,7 +4279,17 @@ texstore_funcs[MESA_FORMAT_COUNT] = { MESA_FORMAT_L_LATC1, _mesa_texstore_red_rgtc1 }, { MESA_FORMAT_SIGNED_L_LATC1, _mesa_texstore_signed_red_rgtc1 }, { MESA_FORMAT_LA_LATC2, _mesa_texstore_rg_rgtc2 }, - { MESA_FORMAT_SIGNED_LA_LATC2, _mesa_texstore_signed_rg_rgtc2 } + { MESA_FORMAT_SIGNED_LA_LATC2, _mesa_texstore_signed_rg_rgtc2 }, + + { MESA_FORMAT_SIGNED_A8, _mesa_texstore_snorm8 }, + { MESA_FORMAT_SIGNED_L8, _mesa_texstore_snorm8 }, + { MESA_FORMAT_SIGNED_AL88, _mesa_texstore_snorm88 }, + { MESA_FORMAT_SIGNED_I8, _mesa_texstore_snorm8 }, + + { MESA_FORMAT_SIGNED_A16, _mesa_texstore_snorm16 }, + { MESA_FORMAT_SIGNED_L16, _mesa_texstore_snorm16 }, + { MESA_FORMAT_SIGNED_AL1616, _mesa_texstore_snorm1616 }, + { MESA_FORMAT_SIGNED_I16, _mesa_texstore_snorm16 }, }; From 2af1da15468d06d3ce9d89bcc706276ecc66f761 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Mon, 14 Mar 2011 10:04:36 +0100 Subject: [PATCH 069/420] gallium: add EXT_texture_snorm support --- src/gallium/auxiliary/util/u_format.csv | 8 + src/gallium/include/pipe/p_format.h | 9 + src/mesa/state_tracker/st_extensions.c | 6 + src/mesa/state_tracker/st_format.c | 232 +++++++++++++++++++++++- 4 files changed, 253 insertions(+), 2 deletions(-) diff --git a/src/gallium/auxiliary/util/u_format.csv b/src/gallium/auxiliary/util/u_format.csv index 6f5cc618ffc..771bd49412d 100644 --- a/src/gallium/auxiliary/util/u_format.csv +++ b/src/gallium/auxiliary/util/u_format.csv @@ -88,6 +88,14 @@ PIPE_FORMAT_L16_UNORM , plain, 1, 1, un16, , , , xxx1, r PIPE_FORMAT_A16_UNORM , plain, 1, 1, un16, , , , 000x, rgb PIPE_FORMAT_I16_UNORM , plain, 1, 1, un16, , , , xxxx, rgb PIPE_FORMAT_L16A16_UNORM , plain, 1, 1, un16, un16, , , xxxy, rgb +PIPE_FORMAT_A8_SNORM , plain, 1, 1, sn8 , , , , 000x, rgb +PIPE_FORMAT_L8_SNORM , plain, 1, 1, sn8 , , , , xxx1, rgb +PIPE_FORMAT_L8A8_SNORM , plain, 1, 1, sn8 , sn8 , , , xxxy, rgb +PIPE_FORMAT_I8_SNORM , plain, 1, 1, sn8 , , , , xxxx, rgb +PIPE_FORMAT_A16_SNORM , plain, 1, 1, sn16, , , , 000x, rgb +PIPE_FORMAT_L16_SNORM , plain, 1, 1, sn16, , , , xxx1, rgb +PIPE_FORMAT_L16A16_SNORM , plain, 1, 1, sn16, sn16, , , xxxy, rgb +PIPE_FORMAT_I16_SNORM , plain, 1, 1, sn16, , , , xxxx, rgb # SRGB formats PIPE_FORMAT_L8_SRGB , plain, 1, 1, un8 , , , , xxx1, srgb diff --git a/src/gallium/include/pipe/p_format.h b/src/gallium/include/pipe/p_format.h index d53af598e75..3ea9a3999d1 100644 --- a/src/gallium/include/pipe/p_format.h +++ b/src/gallium/include/pipe/p_format.h @@ -211,6 +211,15 @@ enum pipe_format { PIPE_FORMAT_LATC2_UNORM = 145, PIPE_FORMAT_LATC2_SNORM = 146, + PIPE_FORMAT_A8_SNORM = 147, + PIPE_FORMAT_L8_SNORM = 148, + PIPE_FORMAT_L8A8_SNORM = 149, + PIPE_FORMAT_I8_SNORM = 150, + PIPE_FORMAT_A16_SNORM = 151, + PIPE_FORMAT_L16_SNORM = 152, + PIPE_FORMAT_L16A16_SNORM = 153, + PIPE_FORMAT_I16_SNORM = 154, + PIPE_FORMAT_COUNT }; diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c index 89bb03046c1..ba1a0af0628 100644 --- a/src/mesa/state_tracker/st_extensions.c +++ b/src/mesa/state_tracker/st_extensions.c @@ -453,6 +453,12 @@ void st_init_extensions(struct st_context *st) ctx->Extensions.ATI_texture_compression_3dc = GL_TRUE; } + if (screen->is_format_supported(screen, PIPE_FORMAT_R8G8B8A8_SNORM, + PIPE_TEXTURE_2D, 0, + PIPE_BIND_SAMPLER_VIEW)) { + ctx->Extensions.EXT_texture_snorm = GL_TRUE; + } + /* ycbcr support */ if (screen->is_format_supported(screen, PIPE_FORMAT_UYVY, PIPE_TEXTURE_2D, 0, diff --git a/src/mesa/state_tracker/st_format.c b/src/mesa/state_tracker/st_format.c index 03655ee0483..957a06c0880 100644 --- a/src/mesa/state_tracker/st_format.c +++ b/src/mesa/state_tracker/st_format.c @@ -259,6 +259,39 @@ st_mesa_format_to_pipe_format(gl_format mesaFormat) case MESA_FORMAT_SIGNED_LA_LATC2: return PIPE_FORMAT_LATC2_SNORM; + /* signed normalized formats */ + case MESA_FORMAT_SIGNED_R8: + return PIPE_FORMAT_R8_SNORM; + case MESA_FORMAT_SIGNED_RG88_REV: + return PIPE_FORMAT_R8G8_SNORM; + case MESA_FORMAT_SIGNED_RGBA8888_REV: + return PIPE_FORMAT_R8G8B8A8_SNORM; + + case MESA_FORMAT_SIGNED_A8: + return PIPE_FORMAT_A8_SNORM; + case MESA_FORMAT_SIGNED_L8: + return PIPE_FORMAT_L8_SNORM; + case MESA_FORMAT_SIGNED_AL88: + return PIPE_FORMAT_L8A8_SNORM; + case MESA_FORMAT_SIGNED_I8: + return PIPE_FORMAT_I8_SNORM; + + case MESA_FORMAT_SIGNED_R16: + return PIPE_FORMAT_R16_SNORM; + case MESA_FORMAT_SIGNED_GR1616: + return PIPE_FORMAT_R16G16_SNORM; + case MESA_FORMAT_SIGNED_RGBA_16: + return PIPE_FORMAT_R16G16B16A16_SNORM; + + case MESA_FORMAT_SIGNED_A16: + return PIPE_FORMAT_A16_SNORM; + case MESA_FORMAT_SIGNED_L16: + return PIPE_FORMAT_L16_SNORM; + case MESA_FORMAT_SIGNED_AL1616: + return PIPE_FORMAT_L16A16_SNORM; + case MESA_FORMAT_SIGNED_I16: + return PIPE_FORMAT_I16_SNORM; + default: assert(0); return PIPE_FORMAT_NONE; @@ -318,8 +351,6 @@ st_pipe_format_to_mesa_format(enum pipe_format format) case PIPE_FORMAT_R16G16B16A16_UNORM: return MESA_FORMAT_RGBA_16; - case PIPE_FORMAT_R16G16B16A16_SNORM: - return MESA_FORMAT_SIGNED_RGBA_16; case PIPE_FORMAT_Z16_UNORM: return MESA_FORMAT_Z16; @@ -416,6 +447,39 @@ st_pipe_format_to_mesa_format(enum pipe_format format) case PIPE_FORMAT_LATC2_SNORM: return MESA_FORMAT_SIGNED_LA_LATC2; + /* signed normalized formats */ + case PIPE_FORMAT_R8_SNORM: + return MESA_FORMAT_SIGNED_R8; + case PIPE_FORMAT_R8G8_SNORM: + return MESA_FORMAT_SIGNED_RG88_REV; + case PIPE_FORMAT_R8G8B8A8_SNORM: + return MESA_FORMAT_SIGNED_RGBA8888_REV; + + case PIPE_FORMAT_A8_SNORM: + return MESA_FORMAT_SIGNED_A8; + case PIPE_FORMAT_L8_SNORM: + return MESA_FORMAT_SIGNED_L8; + case PIPE_FORMAT_L8A8_SNORM: + return MESA_FORMAT_SIGNED_AL88; + case PIPE_FORMAT_I8_SNORM: + return MESA_FORMAT_SIGNED_I8; + + case PIPE_FORMAT_R16_SNORM: + return MESA_FORMAT_SIGNED_R16; + case PIPE_FORMAT_R16G16_SNORM: + return MESA_FORMAT_SIGNED_GR1616; + case PIPE_FORMAT_R16G16B16A16_SNORM: + return MESA_FORMAT_SIGNED_RGBA_16; + + case PIPE_FORMAT_A16_SNORM: + return MESA_FORMAT_SIGNED_A16; + case PIPE_FORMAT_L16_SNORM: + return MESA_FORMAT_SIGNED_L16; + case PIPE_FORMAT_L16A16_SNORM: + return MESA_FORMAT_SIGNED_AL1616; + case PIPE_FORMAT_I16_SNORM: + return MESA_FORMAT_SIGNED_I16; + default: assert(0); return MESA_FORMAT_NONE; @@ -999,6 +1063,170 @@ st_choose_format(struct pipe_screen *screen, GLenum internalFormat, return PIPE_FORMAT_R32G32B32A32_USCALED; return PIPE_FORMAT_NONE; + /* signed normalized formats */ + case GL_RED_SNORM: + case GL_R8_SNORM: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_R8_SNORM, + PIPE_FORMAT_R8G8_SNORM, + PIPE_FORMAT_R8G8B8A8_SNORM, + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + + case GL_R16_SNORM: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_R16_SNORM, + PIPE_FORMAT_R16G16_SNORM, + PIPE_FORMAT_R16G16B16A16_SNORM, + PIPE_FORMAT_R8_SNORM, + PIPE_FORMAT_R8G8_SNORM, + PIPE_FORMAT_R8G8B8A8_SNORM, + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + + case GL_RG_SNORM: + case GL_RG8_SNORM: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_R8G8_SNORM, + PIPE_FORMAT_R8G8B8A8_SNORM, + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + + case GL_RG16_SNORM: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_R16G16_SNORM, + PIPE_FORMAT_R16G16B16A16_SNORM, + PIPE_FORMAT_R8G8_SNORM, + PIPE_FORMAT_R8G8B8A8_SNORM, + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + + case GL_RGB_SNORM: + case GL_RGB8_SNORM: + case GL_RGBA_SNORM: + case GL_RGBA8_SNORM: + if (screen->is_format_supported(screen, PIPE_FORMAT_R8G8B8A8_SNORM, + target, + sample_count, bindings)) + return PIPE_FORMAT_R8G8B8A8_SNORM; + return PIPE_FORMAT_NONE; + + case GL_RGB16_SNORM: + case GL_RGBA16_SNORM: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_R16G16B16A16_SNORM, + PIPE_FORMAT_R8G8B8A8_SNORM, + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + + + case GL_ALPHA_SNORM: + case GL_ALPHA8_SNORM: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_A8_SNORM, + PIPE_FORMAT_R8G8B8A8_SNORM, + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + + case GL_ALPHA16_SNORM: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_A16_SNORM, + PIPE_FORMAT_R16G16B16A16_SNORM, + PIPE_FORMAT_A8_SNORM, + PIPE_FORMAT_R8G8B8A8_SNORM, + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + + case GL_LUMINANCE_SNORM: + case GL_LUMINANCE8_SNORM: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_L8_SNORM, + PIPE_FORMAT_R8G8B8A8_SNORM, + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + + case GL_LUMINANCE16_SNORM: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_L16_SNORM, + PIPE_FORMAT_R16G16B16A16_SNORM, + PIPE_FORMAT_L8_SNORM, + PIPE_FORMAT_R8G8B8A8_SNORM, + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + + case GL_LUMINANCE_ALPHA_SNORM: + case GL_LUMINANCE8_ALPHA8_SNORM: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_L8A8_SNORM, + PIPE_FORMAT_R8G8B8A8_SNORM, + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + + case GL_LUMINANCE16_ALPHA16_SNORM: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_L16A16_SNORM, + PIPE_FORMAT_R16G16B16A16_SNORM, + PIPE_FORMAT_L8A8_SNORM, + PIPE_FORMAT_R8G8B8A8_SNORM, + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + + case GL_INTENSITY_SNORM: + case GL_INTENSITY8_SNORM: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_I8_SNORM, + PIPE_FORMAT_R8G8B8A8_SNORM, + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + + case GL_INTENSITY16_SNORM: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_I16_SNORM, + PIPE_FORMAT_R16G16B16A16_SNORM, + PIPE_FORMAT_I8_SNORM, + PIPE_FORMAT_R8G8B8A8_SNORM, + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + default: return PIPE_FORMAT_NONE; } From b518f4d0ea72dc3872f351250034aa9155756dd3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Tue, 15 Mar 2011 15:00:02 +0100 Subject: [PATCH 070/420] st/mesa: choose an appropriate texture format for DrawPixels --- src/mesa/state_tracker/st_cb_drawpixels.c | 52 +++++++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/src/mesa/state_tracker/st_cb_drawpixels.c b/src/mesa/state_tracker/st_cb_drawpixels.c index dc53e276cb3..1707f827cc8 100644 --- a/src/mesa/state_tracker/st_cb_drawpixels.c +++ b/src/mesa/state_tracker/st_cb_drawpixels.c @@ -296,7 +296,7 @@ base_format(GLenum format) * of the given format and type. */ static GLenum -internal_format(GLenum format, GLenum type) +internal_format(struct gl_context *ctx, GLenum format, GLenum type) { switch (format) { case GL_DEPTH_COMPONENT: @@ -326,7 +326,53 @@ internal_format(GLenum format, GLenum type) } } else { - return GL_RGBA; + switch (type) { + case GL_UNSIGNED_BYTE: + case GL_UNSIGNED_INT_8_8_8_8: + case GL_UNSIGNED_INT_8_8_8_8_REV: + default: + return GL_RGBA8; + + case GL_UNSIGNED_BYTE_3_3_2: + case GL_UNSIGNED_BYTE_2_3_3_REV: + case GL_UNSIGNED_SHORT_4_4_4_4: + case GL_UNSIGNED_SHORT_4_4_4_4_REV: + return GL_RGBA4; + + case GL_UNSIGNED_SHORT_5_6_5: + case GL_UNSIGNED_SHORT_5_6_5_REV: + case GL_UNSIGNED_SHORT_5_5_5_1: + case GL_UNSIGNED_SHORT_1_5_5_5_REV: + return GL_RGB5_A1; + + case GL_UNSIGNED_INT_10_10_10_2: + case GL_UNSIGNED_INT_2_10_10_10_REV: + return GL_RGB10_A2; + + case GL_UNSIGNED_SHORT: + case GL_UNSIGNED_INT: + return GL_RGBA16; + + case GL_BYTE: + return + ctx->Extensions.EXT_texture_snorm ? GL_RGBA8_SNORM : GL_RGBA8; + + case GL_SHORT: + case GL_INT: + return + ctx->Extensions.EXT_texture_snorm ? GL_RGBA16_SNORM : GL_RGBA16; + + case GL_HALF_FLOAT_ARB: + return + ctx->Extensions.ARB_texture_float ? GL_RGBA16F : + ctx->Extensions.EXT_texture_snorm ? GL_RGBA16_SNORM : GL_RGBA16; + + case GL_FLOAT: + case GL_DOUBLE: + return + ctx->Extensions.ARB_texture_float ? GL_RGBA32F : + ctx->Extensions.EXT_texture_snorm ? GL_RGBA16_SNORM : GL_RGBA16; + } } } } @@ -369,7 +415,7 @@ make_texture(struct st_context *st, GLenum baseFormat, intFormat; baseFormat = base_format(format); - intFormat = internal_format(format, type); + intFormat = internal_format(ctx, format, type); mformat = st_ChooseTextureFormat_renderable(ctx, intFormat, format, type, GL_FALSE); From e28fe8fe5d05c87a065f8e72adef8b5077da2c73 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Sat, 26 Mar 2011 13:06:22 +0100 Subject: [PATCH 071/420] mesa: clamp texture border color if ARB_texture_float is unsupported ARB_texture_float disables clamping of the texture border color, ARB_color_buffer_float only modifies clamping of the glGet query. --- src/mesa/main/texparam.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/mesa/main/texparam.c b/src/mesa/main/texparam.c index adb6bcebfab..34b6addb9b0 100644 --- a/src/mesa/main/texparam.c +++ b/src/mesa/main/texparam.c @@ -534,10 +534,18 @@ set_tex_parameterf(struct gl_context *ctx, case GL_TEXTURE_BORDER_COLOR: flush(ctx); - texObj->BorderColor.f[RCOMP] = params[0]; - texObj->BorderColor.f[GCOMP] = params[1]; - texObj->BorderColor.f[BCOMP] = params[2]; - texObj->BorderColor.f[ACOMP] = params[3]; + /* ARB_texture_float disables clamping */ + if (ctx->Extensions.ARB_texture_float) { + texObj->BorderColor.f[RCOMP] = params[0]; + texObj->BorderColor.f[GCOMP] = params[1]; + texObj->BorderColor.f[BCOMP] = params[2]; + texObj->BorderColor.f[ACOMP] = params[3]; + } else { + texObj->BorderColor.f[RCOMP] = CLAMP(params[0], 0.0F, 1.0F); + texObj->BorderColor.f[GCOMP] = CLAMP(params[1], 0.0F, 1.0F); + texObj->BorderColor.f[BCOMP] = CLAMP(params[2], 0.0F, 1.0F); + texObj->BorderColor.f[ACOMP] = CLAMP(params[3], 0.0F, 1.0F); + } return GL_TRUE; default: From 8d4ec87d7f987b3852dafa6802815bb9a3ec7ad4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Sat, 26 Mar 2011 13:19:23 +0100 Subject: [PATCH 072/420] gallium: remove PIPE_CAP_VERTEX_COLOR_CLAMP_CONTROL The vertex color clamp control is a property of an API, a lot like gl_rasterization_rules. The state should be set according to the API being implemented, for example: OpenGL Compatibility: enabled by default OpenGL Core: disabled by default D3D11: always disabled This patch also changes the way ARB_color_buffer_float is advertised. If no SNORM or FLOAT render target is supported, fragment color clamping is not required. --- src/gallium/include/pipe/p_defines.h | 1 - src/mesa/state_tracker/st_extensions.c | 30 ++++++++++++++++++++++---- 2 files changed, 26 insertions(+), 5 deletions(-) diff --git a/src/gallium/include/pipe/p_defines.h b/src/gallium/include/pipe/p_defines.h index 4f6daa86a59..1c1a8f26454 100644 --- a/src/gallium/include/pipe/p_defines.h +++ b/src/gallium/include/pipe/p_defines.h @@ -463,7 +463,6 @@ enum pipe_cap { PIPE_CAP_SHADER_STENCIL_EXPORT, PIPE_CAP_TGSI_INSTANCEID, PIPE_CAP_VERTEX_ELEMENT_INSTANCE_DIVISOR, - PIPE_CAP_VERTEX_COLOR_CLAMP_CONTROL, PIPE_CAP_FRAGMENT_COLOR_CLAMP_CONTROL }; diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c index ba1a0af0628..e3277904417 100644 --- a/src/mesa/state_tracker/st_extensions.c +++ b/src/mesa/state_tracker/st_extensions.c @@ -514,12 +514,34 @@ void st_init_extensions(struct st_context *st) ctx->Extensions.ARB_depth_clamp = GL_TRUE; } - /* this extension does not actually require support of floating point - * render targets, just clamping controls + /* This extension does not actually require support of floating point + * render targets, just clamping controls. + * Advertise this extension if either fragment color clamping is supported + * or no render targets having color values outside of the range [0, 1] + * are supported, in which case the fragment color clamping has no effect + * on rendering. */ - if(screen->get_param(screen, PIPE_CAP_FRAGMENT_COLOR_CLAMP_CONTROL) && - screen->get_param(screen, PIPE_CAP_VERTEX_COLOR_CLAMP_CONTROL)) + if (screen->get_param(screen, PIPE_CAP_FRAGMENT_COLOR_CLAMP_CONTROL) || + (!screen->is_format_supported(screen, PIPE_FORMAT_R8G8B8A8_SNORM, + PIPE_TEXTURE_2D, 0, + PIPE_BIND_RENDER_TARGET) && + !screen->is_format_supported(screen, PIPE_FORMAT_R16G16B16A16_SNORM, + PIPE_TEXTURE_2D, 0, + PIPE_BIND_RENDER_TARGET) && + !screen->is_format_supported(screen, PIPE_FORMAT_R16G16B16A16_FLOAT, + PIPE_TEXTURE_2D, 0, + PIPE_BIND_RENDER_TARGET) && + !screen->is_format_supported(screen, PIPE_FORMAT_R32G32B32A32_FLOAT, + PIPE_TEXTURE_2D, 0, + PIPE_BIND_RENDER_TARGET) && + !screen->is_format_supported(screen, PIPE_FORMAT_R11G11B10_FLOAT, + PIPE_TEXTURE_2D, 0, + PIPE_BIND_RENDER_TARGET) && + !screen->is_format_supported(screen, PIPE_FORMAT_R9G9B9E5_FLOAT, + PIPE_TEXTURE_2D, 0, + PIPE_BIND_RENDER_TARGET))) { ctx->Extensions.ARB_color_buffer_float = GL_TRUE; + } if (screen->get_param(screen, PIPE_CAP_SHADER_STENCIL_EXPORT)) { ctx->Extensions.ARB_shader_stencil_export = GL_TRUE; From f03791467090db49e5c3d6111cd8d2a7cbe31d75 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Wed, 16 Feb 2011 00:50:25 +0100 Subject: [PATCH 073/420] r300g: enable clamping controls --- src/gallium/drivers/r300/r300_context.h | 2 ++ src/gallium/drivers/r300/r300_fs.c | 3 ++- src/gallium/drivers/r300/r300_screen.c | 1 + src/gallium/drivers/r300/r300_state.c | 14 +++++++++----- 4 files changed, 14 insertions(+), 6 deletions(-) diff --git a/src/gallium/drivers/r300/r300_context.h b/src/gallium/drivers/r300/r300_context.h index e395f41290e..3b6cb8f7a11 100644 --- a/src/gallium/drivers/r300/r300_context.h +++ b/src/gallium/drivers/r300/r300_context.h @@ -580,6 +580,8 @@ struct r300_context { int sprite_coord_enable; /* Whether two-sided color selection is enabled (AKA light_twoside). */ boolean two_sided_color; + /* Whether fragment color clamping is enabled. */ + boolean frag_clamp; /* Whether fast color clear is enabled. */ boolean cbzb_clear; /* Whether ZMASK is enabled. */ diff --git a/src/gallium/drivers/r300/r300_fs.c b/src/gallium/drivers/r300/r300_fs.c index 4c502fefb3f..37fe6622cd7 100644 --- a/src/gallium/drivers/r300/r300_fs.c +++ b/src/gallium/drivers/r300/r300_fs.c @@ -146,10 +146,11 @@ static void get_external_state( struct r300_fragment_program_external_state* state) { struct r300_textures_state *texstate = r300->textures_state.state; + struct r300_rs_state *rs = r300->rs_state.state; unsigned i; unsigned char *swizzle; - state->frag_clamp = 0; + state->frag_clamp = rs ? rs->rs.clamp_fragment_color : 0; for (i = 0; i < texstate->sampler_state_count; i++) { struct r300_sampler_state *s = texstate->sampler_states[i]; diff --git a/src/gallium/drivers/r300/r300_screen.c b/src/gallium/drivers/r300/r300_screen.c index 8a69628c53e..deaeb77429f 100644 --- a/src/gallium/drivers/r300/r300_screen.c +++ b/src/gallium/drivers/r300/r300_screen.c @@ -114,6 +114,7 @@ static int r300_get_param(struct pipe_screen* pscreen, enum pipe_cap param) case PIPE_CAP_TEXTURE_MIRROR_REPEAT: case PIPE_CAP_BLEND_EQUATION_SEPARATE: case PIPE_CAP_VERTEX_ELEMENT_INSTANCE_DIVISOR: + case PIPE_CAP_FRAGMENT_COLOR_CLAMP_CONTROL: return 1; case PIPE_CAP_TEXTURE_SWIZZLE: return util_format_s3tc_enabled ? r300screen->caps.dxtc_swizzle : 1; diff --git a/src/gallium/drivers/r300/r300_state.c b/src/gallium/drivers/r300/r300_state.c index ecb4fc691cc..890e3961b18 100644 --- a/src/gallium/drivers/r300/r300_state.c +++ b/src/gallium/drivers/r300/r300_state.c @@ -398,10 +398,6 @@ static void r300_bind_blend_state(struct pipe_context* pipe, struct r300_context* r300 = r300_context(pipe); UPDATE_STATE(state, r300->blend_state); - - if (r300->fs.state && r300_pick_fragment_shader(r300)) { - r300_mark_fs_code_dirty(r300); - } } /* Free blend state. */ @@ -1047,7 +1043,7 @@ static void* r300_create_rs_state(struct pipe_context* pipe, float point_texcoord_bottom = 0;/* R300_GA_POINT_T0: 0x4204 */ float point_texcoord_right = 1; /* R300_GA_POINT_S1: 0x4208 */ float point_texcoord_top = 0; /* R300_GA_POINT_T1: 0x420c */ - boolean vclamp = TRUE; + boolean vclamp = state->clamp_vertex_color; CB_LOCALS; /* Copy rasterizer state. */ @@ -1233,6 +1229,7 @@ static void r300_bind_rs_state(struct pipe_context* pipe, void* state) struct r300_rs_state* rs = (struct r300_rs_state*)state; int last_sprite_coord_enable = r300->sprite_coord_enable; boolean last_two_sided_color = r300->two_sided_color; + boolean last_frag_clamp = r300->frag_clamp; if (r300->draw && rs) { draw_set_rasterizer_state(r300->draw, &rs->rs_draw, state); @@ -1242,10 +1239,12 @@ static void r300_bind_rs_state(struct pipe_context* pipe, void* state) r300->polygon_offset_enabled = rs->polygon_offset_enable; r300->sprite_coord_enable = rs->rs.sprite_coord_enable; r300->two_sided_color = rs->rs.light_twoside; + r300->frag_clamp = rs->rs.clamp_fragment_color; } else { r300->polygon_offset_enabled = FALSE; r300->sprite_coord_enable = 0; r300->two_sided_color = FALSE; + r300->frag_clamp = FALSE; } UPDATE_STATE(state, r300->rs_state); @@ -1255,6 +1254,11 @@ static void r300_bind_rs_state(struct pipe_context* pipe, void* state) last_two_sided_color != r300->two_sided_color) { r300_mark_atom_dirty(r300, &r300->rs_block_state); } + + if (last_frag_clamp != r300->frag_clamp && + r300->fs.state && r300_pick_fragment_shader(r300)) { + r300_mark_fs_code_dirty(r300); + } } /* Free rasterizer state. */ From 2e6a69939c26ab8cc27bcab29ed64cec5e9428ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Mon, 14 Mar 2011 16:37:15 +0100 Subject: [PATCH 074/420] r300g: finish up signed normalized textures and render targets --- src/gallium/drivers/r300/r300_state_derived.c | 40 +++++++++++++------ src/gallium/drivers/r300/r300_texture.c | 34 ++++++++-------- 2 files changed, 46 insertions(+), 28 deletions(-) diff --git a/src/gallium/drivers/r300/r300_state_derived.c b/src/gallium/drivers/r300/r300_state_derived.c index ec00e2552ca..50cde5528ef 100644 --- a/src/gallium/drivers/r300/r300_state_derived.c +++ b/src/gallium/drivers/r300/r300_state_derived.c @@ -592,6 +592,13 @@ static void r300_update_rs_block(struct r300_context *r300) } } +static void rgba_to_bgra(float color[4]) +{ + float x = color[0]; + color[0] = color[2]; + color[2] = x; +} + static uint32_t r300_get_border_color(enum pipe_format format, const float border[4], boolean is_r500) @@ -625,13 +632,13 @@ static uint32_t r300_get_border_color(enum pipe_format format, for (i = 0; i < 4; i++) { switch (desc->swizzle[i]) { case UTIL_FORMAT_SWIZZLE_X: - border_swizzled[2] = border[i]; + border_swizzled[0] = border[i]; break; case UTIL_FORMAT_SWIZZLE_Y: border_swizzled[1] = border[i]; break; case UTIL_FORMAT_SWIZZLE_Z: - border_swizzled[0] = border[i]; + border_swizzled[2] = border[i]; break; case UTIL_FORMAT_SWIZZLE_W: border_swizzled[3] = border[i]; @@ -648,34 +655,36 @@ static uint32_t r300_get_border_color(enum pipe_format format, case PIPE_FORMAT_LATC1_UNORM: /* Add 1/32 to round the border color instead of truncating. */ /* The Y component is used for the border color. */ - border_swizzled[1] = border_swizzled[2] + 1.0f/32; + border_swizzled[1] = border_swizzled[0] + 1.0f/32; util_pack_color(border_swizzled, PIPE_FORMAT_B4G4R4A4_UNORM, &uc); return uc.ui; case PIPE_FORMAT_RGTC2_SNORM: case PIPE_FORMAT_LATC2_SNORM: - border_swizzled[0] = border_swizzled[2]; util_pack_color(border_swizzled, PIPE_FORMAT_R8G8B8A8_SNORM, &uc); return uc.ui; case PIPE_FORMAT_RGTC2_UNORM: case PIPE_FORMAT_LATC2_UNORM: - util_pack_color(border_swizzled, PIPE_FORMAT_B8G8R8A8_UNORM, &uc); + util_pack_color(border_swizzled, PIPE_FORMAT_R8G8B8A8_UNORM, &uc); return uc.ui; default: - util_pack_color(border_swizzled, PIPE_FORMAT_R8G8B8A8_UNORM, &uc); + util_pack_color(border_swizzled, PIPE_FORMAT_B8G8R8A8_UNORM, &uc); return uc.ui; } } switch (desc->channel[0].size) { case 2: + rgba_to_bgra(border_swizzled); util_pack_color(border_swizzled, PIPE_FORMAT_B2G3R3_UNORM, &uc); break; case 4: + rgba_to_bgra(border_swizzled); util_pack_color(border_swizzled, PIPE_FORMAT_B4G4R4A4_UNORM, &uc); break; case 5: + rgba_to_bgra(border_swizzled); if (desc->channel[1].size == 5) { util_pack_color(border_swizzled, PIPE_FORMAT_B5G5R5A1_UNORM, &uc); } else if (desc->channel[1].size == 6) { @@ -687,32 +696,39 @@ static uint32_t r300_get_border_color(enum pipe_format format, default: case 8: - util_pack_color(border_swizzled, PIPE_FORMAT_B8G8R8A8_UNORM, &uc); + if (desc->channel[0].type == UTIL_FORMAT_TYPE_SIGNED) + util_pack_color(border_swizzled, PIPE_FORMAT_R8G8B8A8_SNORM, &uc); + else + util_pack_color(border_swizzled, PIPE_FORMAT_R8G8B8A8_UNORM, &uc); break; case 10: - util_pack_color(border_swizzled, PIPE_FORMAT_B10G10R10A2_UNORM, &uc); + util_pack_color(border_swizzled, PIPE_FORMAT_R10G10B10A2_UNORM, &uc); break; case 16: if (desc->nr_channels <= 2) { - border_swizzled[0] = border_swizzled[2]; if (desc->channel[0].type == UTIL_FORMAT_TYPE_FLOAT) { util_pack_color(border_swizzled, PIPE_FORMAT_R16G16_FLOAT, &uc); + } else if (desc->channel[0].type == UTIL_FORMAT_TYPE_SIGNED) { + util_pack_color(border_swizzled, PIPE_FORMAT_R16G16_SNORM, &uc); } else { util_pack_color(border_swizzled, PIPE_FORMAT_R16G16_UNORM, &uc); } } else { - util_pack_color(border_swizzled, PIPE_FORMAT_B8G8R8A8_UNORM, &uc); + if (desc->channel[0].type == UTIL_FORMAT_TYPE_SIGNED) { + util_pack_color(border_swizzled, PIPE_FORMAT_R8G8B8A8_SNORM, &uc); + } else { + util_pack_color(border_swizzled, PIPE_FORMAT_R8G8B8A8_UNORM, &uc); + } } break; case 32: if (desc->nr_channels == 1) { - border_swizzled[0] = border_swizzled[2]; util_pack_color(border_swizzled, PIPE_FORMAT_R32_FLOAT, &uc); } else { - util_pack_color(border_swizzled, PIPE_FORMAT_B8G8R8A8_UNORM, &uc); + util_pack_color(border_swizzled, PIPE_FORMAT_R8G8B8A8_UNORM, &uc); } break; } diff --git a/src/gallium/drivers/r300/r300_texture.c b/src/gallium/drivers/r300/r300_texture.c index c650fb7ed37..57e0c6183ff 100644 --- a/src/gallium/drivers/r300/r300_texture.c +++ b/src/gallium/drivers/r300/r300_texture.c @@ -116,10 +116,10 @@ uint32_t r300_translate_texformat(enum pipe_format format, unsigned i; boolean uniform = TRUE; const uint32_t sign_bit[4] = { - R300_TX_FORMAT_SIGNED_X, - R300_TX_FORMAT_SIGNED_Y, - R300_TX_FORMAT_SIGNED_Z, R300_TX_FORMAT_SIGNED_W, + R300_TX_FORMAT_SIGNED_Z, + R300_TX_FORMAT_SIGNED_Y, + R300_TX_FORMAT_SIGNED_X, }; desc = util_format_description(format); @@ -212,14 +212,14 @@ uint32_t r300_translate_texformat(enum pipe_format format, switch (format) { case PIPE_FORMAT_RGTC1_SNORM: case PIPE_FORMAT_LATC1_SNORM: - result |= sign_bit[1]; + result |= sign_bit[2]; case PIPE_FORMAT_LATC1_UNORM: case PIPE_FORMAT_RGTC1_UNORM: return R500_TX_FORMAT_ATI1N | result; case PIPE_FORMAT_RGTC2_SNORM: case PIPE_FORMAT_LATC2_SNORM: - result |= sign_bit[2] | sign_bit[3]; + result |= sign_bit[1] | sign_bit[0]; case PIPE_FORMAT_RGTC2_UNORM: case PIPE_FORMAT_LATC2_UNORM: return R400_TX_FORMAT_ATI2N | result; @@ -390,18 +390,18 @@ static uint32_t r300_translate_colorformat(enum pipe_format format) switch (format) { /* 8-bit buffers. */ case PIPE_FORMAT_A8_UNORM: - /*case PIPE_FORMAT_A8_SNORM:*/ + case PIPE_FORMAT_A8_SNORM: case PIPE_FORMAT_I8_UNORM: - /*case PIPE_FORMAT_I8_SNORM:*/ + case PIPE_FORMAT_I8_SNORM: case PIPE_FORMAT_L8_UNORM: - /*case PIPE_FORMAT_L8_SNORM:*/ + case PIPE_FORMAT_L8_SNORM: case PIPE_FORMAT_R8_UNORM: case PIPE_FORMAT_R8_SNORM: return R300_COLOR_FORMAT_I8; /* 16-bit buffers. */ case PIPE_FORMAT_L8A8_UNORM: - /*case PIPE_FORMAT_L8A8_SNORM:*/ + case PIPE_FORMAT_L8A8_SNORM: case PIPE_FORMAT_R8G8_UNORM: case PIPE_FORMAT_R8G8_SNORM: return R300_COLOR_FORMAT_UV88; @@ -490,9 +490,9 @@ static uint32_t r300_translate_out_fmt(enum pipe_format format) unsigned i; const struct util_format_description *desc; static const uint32_t sign_bit[4] = { - R300_OUT_SIGN(0x1), - R300_OUT_SIGN(0x2), R300_OUT_SIGN(0x4), + R300_OUT_SIGN(0x2), + R300_OUT_SIGN(0x1), R300_OUT_SIGN(0x8), }; @@ -538,23 +538,25 @@ static uint32_t r300_translate_out_fmt(enum pipe_format format) /* 8-bit outputs, one channel. * COLORFORMAT_I8 stores the C2 component. */ case PIPE_FORMAT_A8_UNORM: - /*case PIPE_FORMAT_A8_SNORM:*/ + case PIPE_FORMAT_A8_SNORM: return modifier | R300_C2_SEL_A; case PIPE_FORMAT_I8_UNORM: - /*case PIPE_FORMAT_I8_SNORM:*/ + case PIPE_FORMAT_I8_SNORM: case PIPE_FORMAT_L8_UNORM: - /*case PIPE_FORMAT_L8_SNORM:*/ + case PIPE_FORMAT_L8_SNORM: case PIPE_FORMAT_R8_UNORM: case PIPE_FORMAT_R8_SNORM: return modifier | R300_C2_SEL_R; /* 16-bit outputs, two channels. * COLORFORMAT_UV88 stores C2 and C0. */ + case PIPE_FORMAT_L8A8_SNORM: + modifier |= sign_bit[2]; case PIPE_FORMAT_L8A8_UNORM: - /*case PIPE_FORMAT_L8A8_SNORM:*/ return modifier | R300_C0_SEL_A | R300_C2_SEL_R; - case PIPE_FORMAT_R8G8_UNORM: case PIPE_FORMAT_R8G8_SNORM: + modifier |= sign_bit[2]; + case PIPE_FORMAT_R8G8_UNORM: return modifier | R300_C0_SEL_G | R300_C2_SEL_R; /* BGRA outputs. */ From 8cbdfe1de4a5793d2d43dca81dd8996419b7aeed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Tue, 29 Mar 2011 13:03:26 +0200 Subject: [PATCH 075/420] docs: update GL3 status --- docs/GL3.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/GL3.txt b/docs/GL3.txt index ca265af54d7..c704699f0b1 100644 --- a/docs/GL3.txt +++ b/docs/GL3.txt @@ -15,7 +15,7 @@ GL 3.0: GLSL changes (GL_EXT_gpu_shader4, etc) not started Conditional rendering (GL_NV_conditional_render) DONE (swrast & softpipe) Map buffer subranges (GL_ARB_map_buffer_range) DONE -Clamping controls (GL_ARB_color_buffer_float) BRANCH ~mareko/mesa floating2 +Clamping controls (GL_ARB_color_buffer_float) DONE Float textures, renderbuffers (GL_ARB_texture_float) BRANCH ~mareko/mesa floating2 GL_EXT_packed_float not started GL_EXT_texture_shared_exponent not started @@ -53,7 +53,7 @@ Primitive restart (GL_NV_primitive_restart) DONE (gallium) Texture buffer objs (GL_ARB_texture_buffer_object) not started Rectangular textures (GL_ARB_texture_rectangle) DONE Uniform buffer objs (GL_ARB_uniform_buffer_object) not started -Signed normalized textures (GL_EXT_texture_snorm) ~50% done +Signed normalized textures (GL_EXT_texture_snorm) DONE (gallium) GL 3.2: From b094dff50a05e56f5415d31daa5e4542f321c858 Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Thu, 10 Mar 2011 18:01:32 +0000 Subject: [PATCH 076/420] i915: Detect allocation failure of batch buffer Signed-off-by: Chris Wilson --- src/mesa/drivers/dri/i915/i915_vtbl.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/mesa/drivers/dri/i915/i915_vtbl.c b/src/mesa/drivers/dri/i915/i915_vtbl.c index 921183b81df..942ebec29bd 100644 --- a/src/mesa/drivers/dri/i915/i915_vtbl.c +++ b/src/mesa/drivers/dri/i915/i915_vtbl.c @@ -307,6 +307,10 @@ i915_emit_state(struct intel_context *intel) false); count = 0; again: + if (intel->batch.bo == NULL) { + _mesa_error(ctx, GL_OUT_OF_MEMORY, "i915 emit state"); + assert(0); + } aper_count = 0; dirty = get_dirty(state); From 252eaa765e69a70036ec33a7e1e0ffeac1aab2ff Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Tue, 29 Mar 2011 15:39:01 +0100 Subject: [PATCH 077/420] i965: Avoid name clash of loop counter and member MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit src/mesa/drivers/dri/i965/brw_fs.cpp:565 warning: name lookup of ‘c’ changed Signed-off-by: Chris Wilson --- src/mesa/drivers/dri/i965/brw_fs.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp index b2336b70f0a..bdf05230032 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp @@ -547,16 +547,16 @@ fs_visitor::emit_general_interpolation(ir_variable *ir) * handed us defined values in only the constant offset * field of the setup reg. */ - for (unsigned int c = 0; c < type->vector_elements; c++) { - struct brw_reg interp = interp_reg(location, c); + for (unsigned int k = 0; k < type->vector_elements; k++) { + struct brw_reg interp = interp_reg(location, k); interp = suboffset(interp, 3); emit(FS_OPCODE_CINTERP, attr, fs_reg(interp)); attr.reg_offset++; } } else { /* Perspective interpolation case. */ - for (unsigned int c = 0; c < type->vector_elements; c++) { - struct brw_reg interp = interp_reg(location, c); + for (unsigned int k = 0; k < type->vector_elements; k++) { + struct brw_reg interp = interp_reg(location, k); emit(FS_OPCODE_LINTERP, attr, this->delta_x, this->delta_y, fs_reg(interp)); attr.reg_offset++; @@ -564,7 +564,7 @@ fs_visitor::emit_general_interpolation(ir_variable *ir) if (intel->gen < 6 && !(is_gl_Color && c->key.linear_color)) { attr.reg_offset -= type->vector_elements; - for (unsigned int c = 0; c < type->vector_elements; c++) { + for (unsigned int k = 0; k < type->vector_elements; k++) { emit(BRW_OPCODE_MUL, attr, attr, this->pixel_w); attr.reg_offset++; } From 7bae1c3d85344b7229e0124d1f54376392682430 Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Tue, 29 Mar 2011 15:40:21 +0100 Subject: [PATCH 078/420] intel: Protect intel_clear_with_blit from failed buffer allocations Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=34419 Signed-off-by: Chris Wilson --- src/mesa/drivers/dri/intel/intel_blit.c | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/src/mesa/drivers/dri/intel/intel_blit.c b/src/mesa/drivers/dri/intel/intel_blit.c index e1ab7f16371..d6a648c49ad 100644 --- a/src/mesa/drivers/dri/intel/intel_blit.c +++ b/src/mesa/drivers/dri/intel/intel_blit.c @@ -239,12 +239,12 @@ intelClearWithBlit(struct gl_context *ctx, GLbitfield mask) if (cw == 0 || ch == 0) return 0; - GLuint buf; all = (cw == fb->Width && ch == fb->Height); /* Loop over all renderbuffers */ - for (buf = 0; buf < BUFFER_COUNT && mask; buf++) { - const GLbitfield bufBit = 1 << buf; + mask &= (1 << BUFFER_COUNT) - 1; + while (mask) { + GLuint buf = _mesa_ffs(mask) - 1; struct intel_renderbuffer *irb; drm_intel_bo *write_buffer; int x1, y1, x2, y2; @@ -253,11 +253,15 @@ intelClearWithBlit(struct gl_context *ctx, GLbitfield mask) int pitch, cpp; drm_intel_bo *aper_array[2]; - if (!(mask & bufBit)) - continue; + mask &= ~(1 << buf); + + irb = intel_get_renderbuffer(fb, buf); + if (irb == NULL || irb->region == NULL || irb->region->buffer == NULL) { + fail_mask |= 1 << buf; + continue; + } /* OK, clear this renderbuffer */ - irb = intel_get_renderbuffer(fb, buf); write_buffer = intel_region_buffer(intel, irb->region, all ? INTEL_WRITE_FULL : INTEL_WRITE_PART); @@ -333,8 +337,7 @@ intelClearWithBlit(struct gl_context *ctx, GLbitfield mask) clear[3], clear[3]); break; default: - fail_mask |= bufBit; - mask &= ~bufBit; + fail_mask |= 1 << buf; continue; } } @@ -367,8 +370,6 @@ intelClearWithBlit(struct gl_context *ctx, GLbitfield mask) if (buf == BUFFER_DEPTH || buf == BUFFER_STENCIL) mask &= ~(BUFFER_BIT_DEPTH | BUFFER_BIT_STENCIL); - else - mask &= ~bufBit; /* turn off bit, for faster loop exit */ } return fail_mask; From 7d41857566d900aee3319f06c272049e6211acc1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Tue, 29 Mar 2011 18:01:44 +0200 Subject: [PATCH 079/420] intel: fix build broken with e5c6a92a12b5cd7db205d72039f58d302b0be9d5 (mesa: implement clamping controls (ARB_color_buffer_float)) --- src/mesa/drivers/dri/i915/i915_fragprog.c | 2 +- src/mesa/drivers/dri/i965/brw_program.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mesa/drivers/dri/i915/i915_fragprog.c b/src/mesa/drivers/dri/i915/i915_fragprog.c index 89de2a8b0d3..7286e2b73d8 100644 --- a/src/mesa/drivers/dri/i915/i915_fragprog.c +++ b/src/mesa/drivers/dri/i915/i915_fragprog.c @@ -1291,7 +1291,7 @@ i915ProgramStringNotify(struct gl_context * ctx, */ if (p->FragProg.FogOption) { /* add extra instructions to do fog, then turn off FogOption field */ - _mesa_append_fog_code(ctx, &p->FragProg, TRUE); + _mesa_append_fog_code(ctx, &p->FragProg, GL_TRUE); p->FragProg.FogOption = GL_NONE; } } diff --git a/src/mesa/drivers/dri/i965/brw_program.c b/src/mesa/drivers/dri/i965/brw_program.c index 2132b8210ba..b5ec55b2ae3 100644 --- a/src/mesa/drivers/dri/i965/brw_program.c +++ b/src/mesa/drivers/dri/i965/brw_program.c @@ -135,7 +135,7 @@ static GLboolean brwProgramStringNotify( struct gl_context *ctx, struct gl_shader_program *shader_program; if (fprog->FogOption) { - _mesa_append_fog_code(ctx, fprog, TRUE); + _mesa_append_fog_code(ctx, fprog, GL_TRUE); fprog->FogOption = GL_NONE; } From 0420ae3d9069ff5cbe067bdd5c6075d9292dbe66 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Tue, 29 Mar 2011 16:35:13 +0200 Subject: [PATCH 080/420] r300g: add support for all render targets with one and two channels The hardware should be set according to this table: FORMAT -> R300 COLORFORMAT ------------------------- X16 -> UV88 X16Y16 -> ARGB8888 X32 -> ARGB8888 X32Y32 -> ARGB16161616 US_OUT_FMT must contain the real format. I wasn't able to make B3G3R2 and L4A4 work, but those aren't important. --- src/gallium/drivers/r300/r300_texture.c | 160 +++++++++++++++++++----- 1 file changed, 130 insertions(+), 30 deletions(-) diff --git a/src/gallium/drivers/r300/r300_texture.c b/src/gallium/drivers/r300/r300_texture.c index 57e0c6183ff..62143808223 100644 --- a/src/gallium/drivers/r300/r300_texture.c +++ b/src/gallium/drivers/r300/r300_texture.c @@ -404,6 +404,19 @@ static uint32_t r300_translate_colorformat(enum pipe_format format) case PIPE_FORMAT_L8A8_SNORM: case PIPE_FORMAT_R8G8_UNORM: case PIPE_FORMAT_R8G8_SNORM: + /* These formats work fine with UV88 if US_OUT_FMT is set correctly. */ + case PIPE_FORMAT_A16_UNORM: + case PIPE_FORMAT_A16_SNORM: + /*case PIPE_FORMAT_A16_FLOAT:*/ + case PIPE_FORMAT_L16_UNORM: + case PIPE_FORMAT_L16_SNORM: + /*case PIPE_FORMAT_L16_FLOAT:*/ + case PIPE_FORMAT_I16_UNORM: + case PIPE_FORMAT_I16_SNORM: + /*case PIPE_FORMAT_I16_FLOAT:*/ + case PIPE_FORMAT_R16_UNORM: + case PIPE_FORMAT_R16_SNORM: + case PIPE_FORMAT_R16_FLOAT: return R300_COLOR_FORMAT_UV88; case PIPE_FORMAT_B5G6R5_UNORM: @@ -434,19 +447,33 @@ static uint32_t r300_translate_colorformat(enum pipe_format format) /*case PIPE_FORMAT_X8B8G8R8_SNORM:*/ case PIPE_FORMAT_R8G8B8X8_UNORM: /*case PIPE_FORMAT_R8G8B8X8_SNORM:*/ - case PIPE_FORMAT_R8SG8SB8UX8U_NORM: + /* These formats work fine with ARGB8888 if US_OUT_FMT is set + * correctly. */ + case PIPE_FORMAT_R16G16_UNORM: + case PIPE_FORMAT_R16G16_SNORM: + case PIPE_FORMAT_R16G16_FLOAT: + case PIPE_FORMAT_L16A16_UNORM: + case PIPE_FORMAT_L16A16_SNORM: + /*case PIPE_FORMAT_L16A16_FLOAT: + case PIPE_FORMAT_A32_FLOAT: + case PIPE_FORMAT_L32_FLOAT: + case PIPE_FORMAT_I32_FLOAT:*/ + case PIPE_FORMAT_R32_FLOAT: return R300_COLOR_FORMAT_ARGB8888; case PIPE_FORMAT_R10G10B10A2_UNORM: case PIPE_FORMAT_R10G10B10X2_SNORM: case PIPE_FORMAT_B10G10R10A2_UNORM: - case PIPE_FORMAT_R10SG10SB10SA2U_NORM: return R500_COLOR_FORMAT_ARGB2101010; /* R5xx-only? */ /* 64-bit buffers. */ case PIPE_FORMAT_R16G16B16A16_UNORM: case PIPE_FORMAT_R16G16B16A16_SNORM: case PIPE_FORMAT_R16G16B16A16_FLOAT: + /* These formats work fine with ARGB16161616 if US_OUT_FMT is set + * correctly. */ + case PIPE_FORMAT_R32G32_FLOAT: + /*case PIPE_FORMAT_L32A32_FLOAT:*/ return R300_COLOR_FORMAT_ARGB16161616; /* 128-bit buffers. */ @@ -489,12 +516,7 @@ static uint32_t r300_translate_out_fmt(enum pipe_format format) uint32_t modifier = 0; unsigned i; const struct util_format_description *desc; - static const uint32_t sign_bit[4] = { - R300_OUT_SIGN(0x4), - R300_OUT_SIGN(0x2), - R300_OUT_SIGN(0x1), - R300_OUT_SIGN(0x8), - }; + boolean uniform_sign; desc = util_format_description(format); @@ -509,34 +531,82 @@ static uint32_t r300_translate_out_fmt(enum pipe_format format) return ~0; /* Unsupported/unknown. */ /* Specifies how the shader output is written to the fog unit. */ - if (desc->channel[i].type == UTIL_FORMAT_TYPE_FLOAT) { - if (desc->channel[i].size == 32) { - modifier |= R300_US_OUT_FMT_C4_32_FP; - } else { - modifier |= R300_US_OUT_FMT_C4_16_FP; + switch (desc->channel[i].type) { + case UTIL_FORMAT_TYPE_FLOAT: + switch (desc->channel[i].size) { + case 32: + switch (desc->nr_channels) { + case 1: + modifier |= R300_US_OUT_FMT_C_32_FP; + break; + case 2: + modifier |= R300_US_OUT_FMT_C2_32_FP; + break; + case 4: + modifier |= R300_US_OUT_FMT_C4_32_FP; + break; + } + break; + + case 16: + switch (desc->nr_channels) { + case 1: + modifier |= R300_US_OUT_FMT_C_16_FP; + break; + case 2: + modifier |= R300_US_OUT_FMT_C2_16_FP; + break; + case 4: + modifier |= R300_US_OUT_FMT_C4_16_FP; + break; + } + break; } - } else { - if (desc->channel[i].size == 16) { - modifier |= R300_US_OUT_FMT_C4_16; - } else if (desc->channel[i].size == 10) { + break; + + default: + switch (desc->channel[i].size) { + case 16: + switch (desc->nr_channels) { + case 1: + modifier |= R300_US_OUT_FMT_C_16; + break; + case 2: + modifier |= R300_US_OUT_FMT_C2_16; + break; + case 4: + modifier |= R300_US_OUT_FMT_C4_16; + break; + } + break; + + case 10: modifier |= R300_US_OUT_FMT_C4_10; - } else { + break; + + default: /* C4_8 seems to be used for the formats whose pixel size * is <= 32 bits. */ modifier |= R300_US_OUT_FMT_C4_8; + break; } } /* Add sign. */ - for (i = 0; i < 4; i++) - if (desc->channel[i].type == UTIL_FORMAT_TYPE_SIGNED) { - modifier |= sign_bit[i]; - } + uniform_sign = TRUE; + for (i = 0; i < desc->nr_channels; i++) + if (desc->channel[i].type != UTIL_FORMAT_TYPE_SIGNED) + uniform_sign = FALSE; + + if (uniform_sign) + modifier |= R300_OUT_SIGN(0xf); /* Add swizzles and return. */ switch (format) { - /* 8-bit outputs, one channel. - * COLORFORMAT_I8 stores the C2 component. */ + /*** Special cases (non-standard channel mapping) ***/ + + /* X8 + * COLORFORMAT_I8 stores the Z component (C2). */ case PIPE_FORMAT_A8_UNORM: case PIPE_FORMAT_A8_SNORM: return modifier | R300_C2_SEL_A; @@ -548,17 +618,22 @@ static uint32_t r300_translate_out_fmt(enum pipe_format format) case PIPE_FORMAT_R8_SNORM: return modifier | R300_C2_SEL_R; - /* 16-bit outputs, two channels. - * COLORFORMAT_UV88 stores C2 and C0. */ + /* X8Y8 + * COLORFORMAT_UV88 stores ZX (C2 and C0). */ case PIPE_FORMAT_L8A8_SNORM: - modifier |= sign_bit[2]; case PIPE_FORMAT_L8A8_UNORM: return modifier | R300_C0_SEL_A | R300_C2_SEL_R; case PIPE_FORMAT_R8G8_SNORM: - modifier |= sign_bit[2]; case PIPE_FORMAT_R8G8_UNORM: return modifier | R300_C0_SEL_G | R300_C2_SEL_R; + /* X32Y32 + * ARGB16161616 stores XZ for RG32F */ + case PIPE_FORMAT_R32G32_FLOAT: + return modifier | R300_C0_SEL_R | R300_C2_SEL_G; + + /*** Generic cases (standard channel mapping) ***/ + /* BGRA outputs. */ case PIPE_FORMAT_B5G6R5_UNORM: case PIPE_FORMAT_B5G5R5A1_UNORM: @@ -579,6 +654,10 @@ static uint32_t r300_translate_out_fmt(enum pipe_format format) /*case PIPE_FORMAT_A8R8G8B8_SNORM:*/ case PIPE_FORMAT_X8R8G8B8_UNORM: /*case PIPE_FORMAT_X8R8G8B8_SNORM:*/ + case PIPE_FORMAT_A16_UNORM: + case PIPE_FORMAT_A16_SNORM: + /*case PIPE_FORMAT_A16_FLOAT: + case PIPE_FORMAT_A32_FLOAT:*/ return modifier | R300_C0_SEL_A | R300_C1_SEL_R | R300_C2_SEL_G | R300_C3_SEL_B; @@ -597,18 +676,39 @@ static uint32_t r300_translate_out_fmt(enum pipe_format format) /*case PIPE_FORMAT_R8G8B8X8_SNORM:*/ case PIPE_FORMAT_R8G8B8A8_UNORM: case PIPE_FORMAT_R8G8B8A8_SNORM: - case PIPE_FORMAT_R8SG8SB8UX8U_NORM: case PIPE_FORMAT_R10G10B10A2_UNORM: case PIPE_FORMAT_R10G10B10X2_SNORM: - case PIPE_FORMAT_R10SG10SB10SA2U_NORM: + case PIPE_FORMAT_R16_UNORM: + case PIPE_FORMAT_R16G16_UNORM: case PIPE_FORMAT_R16G16B16A16_UNORM: + case PIPE_FORMAT_R16_SNORM: + case PIPE_FORMAT_R16G16_SNORM: case PIPE_FORMAT_R16G16B16A16_SNORM: + case PIPE_FORMAT_R16_FLOAT: + case PIPE_FORMAT_R16G16_FLOAT: case PIPE_FORMAT_R16G16B16A16_FLOAT: + case PIPE_FORMAT_R32_FLOAT: case PIPE_FORMAT_R32G32B32A32_FLOAT: + case PIPE_FORMAT_L16_UNORM: + case PIPE_FORMAT_L16_SNORM: + /*case PIPE_FORMAT_L16_FLOAT: + case PIPE_FORMAT_L32_FLOAT:*/ + case PIPE_FORMAT_I16_UNORM: + case PIPE_FORMAT_I16_SNORM: + /*case PIPE_FORMAT_I16_FLOAT: + case PIPE_FORMAT_I32_FLOAT:*/ return modifier | R300_C0_SEL_R | R300_C1_SEL_G | R300_C2_SEL_B | R300_C3_SEL_A; + /* LA outputs. */ + case PIPE_FORMAT_L16A16_UNORM: + case PIPE_FORMAT_L16A16_SNORM: + /*case PIPE_FORMAT_L16A16_FLOAT: + case PIPE_FORMAT_L32A32_FLOAT:*/ + return modifier | + R300_C0_SEL_R | R300_C1_SEL_A; + default: return ~0; /* Unsupported. */ } From 92e412e788931ad464125113a64eec8a8223cda3 Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Mon, 24 Jan 2011 16:55:50 -0800 Subject: [PATCH 081/420] glsl: Move _mesa_builtin_uniform_desc from uniforms.c to ir_variable.cpp This array is going to be used in the main compiler soon. Leaving them uniforms.c caused problems for building the stand-alone compiler. Reviewed-by: Eric Anholt Reviewed-by: Chad Versace --- src/glsl/ir_variable.cpp | 253 +++++++++++++++++++++++++++++++++++++++ src/mesa/main/uniforms.c | 248 -------------------------------------- 2 files changed, 253 insertions(+), 248 deletions(-) diff --git a/src/glsl/ir_variable.cpp b/src/glsl/ir_variable.cpp index 68d9ab2055d..c2715254a59 100644 --- a/src/glsl/ir_variable.cpp +++ b/src/glsl/ir_variable.cpp @@ -25,6 +25,10 @@ #include "glsl_parser_extras.h" #include "glsl_symbol_table.h" #include "builtin_variables.h" +#include "main/uniforms.h" +#include "program/prog_parameter.h" +#include "program/prog_statevars.h" +#include "program/prog_instruction.h" static void generate_ARB_draw_buffers_variables(exec_list *, struct _mesa_glsl_parse_state *, @@ -35,6 +39,255 @@ generate_ARB_draw_instanced_variables(exec_list *, struct _mesa_glsl_parse_state *, bool, _mesa_glsl_parser_targets); +static struct gl_builtin_uniform_element gl_DepthRange_elements[] = { + {"near", {STATE_DEPTH_RANGE, 0, 0}, SWIZZLE_XXXX}, + {"far", {STATE_DEPTH_RANGE, 0, 0}, SWIZZLE_YYYY}, + {"diff", {STATE_DEPTH_RANGE, 0, 0}, SWIZZLE_ZZZZ}, +}; + +static struct gl_builtin_uniform_element gl_ClipPlane_elements[] = { + {NULL, {STATE_CLIPPLANE, 0, 0}, SWIZZLE_XYZW} +}; + +static struct gl_builtin_uniform_element gl_Point_elements[] = { + {"size", {STATE_POINT_SIZE}, SWIZZLE_XXXX}, + {"sizeMin", {STATE_POINT_SIZE}, SWIZZLE_YYYY}, + {"sizeMax", {STATE_POINT_SIZE}, SWIZZLE_ZZZZ}, + {"fadeThresholdSize", {STATE_POINT_SIZE}, SWIZZLE_WWWW}, + {"distanceConstantAttenuation", {STATE_POINT_ATTENUATION}, SWIZZLE_XXXX}, + {"distanceLinearAttenuation", {STATE_POINT_ATTENUATION}, SWIZZLE_YYYY}, + {"distanceQuadraticAttenuation", {STATE_POINT_ATTENUATION}, SWIZZLE_ZZZZ}, +}; + +static struct gl_builtin_uniform_element gl_FrontMaterial_elements[] = { + {"emission", {STATE_MATERIAL, 0, STATE_EMISSION}, SWIZZLE_XYZW}, + {"ambient", {STATE_MATERIAL, 0, STATE_AMBIENT}, SWIZZLE_XYZW}, + {"diffuse", {STATE_MATERIAL, 0, STATE_DIFFUSE}, SWIZZLE_XYZW}, + {"specular", {STATE_MATERIAL, 0, STATE_SPECULAR}, SWIZZLE_XYZW}, + {"shininess", {STATE_MATERIAL, 0, STATE_SHININESS}, SWIZZLE_XXXX}, +}; + +static struct gl_builtin_uniform_element gl_BackMaterial_elements[] = { + {"emission", {STATE_MATERIAL, 1, STATE_EMISSION}, SWIZZLE_XYZW}, + {"ambient", {STATE_MATERIAL, 1, STATE_AMBIENT}, SWIZZLE_XYZW}, + {"diffuse", {STATE_MATERIAL, 1, STATE_DIFFUSE}, SWIZZLE_XYZW}, + {"specular", {STATE_MATERIAL, 1, STATE_SPECULAR}, SWIZZLE_XYZW}, + {"shininess", {STATE_MATERIAL, 1, STATE_SHININESS}, SWIZZLE_XXXX}, +}; + +static struct gl_builtin_uniform_element gl_LightSource_elements[] = { + {"ambient", {STATE_LIGHT, 0, STATE_AMBIENT}, SWIZZLE_XYZW}, + {"diffuse", {STATE_LIGHT, 0, STATE_DIFFUSE}, SWIZZLE_XYZW}, + {"specular", {STATE_LIGHT, 0, STATE_SPECULAR}, SWIZZLE_XYZW}, + {"position", {STATE_LIGHT, 0, STATE_POSITION}, SWIZZLE_XYZW}, + {"halfVector", {STATE_LIGHT, 0, STATE_HALF_VECTOR}, SWIZZLE_XYZW}, + {"spotDirection", {STATE_LIGHT, 0, STATE_SPOT_DIRECTION}, + MAKE_SWIZZLE4(SWIZZLE_X, + SWIZZLE_Y, + SWIZZLE_Z, + SWIZZLE_Z)}, + {"spotCosCutoff", {STATE_LIGHT, 0, STATE_SPOT_DIRECTION}, SWIZZLE_WWWW}, + {"spotCutoff", {STATE_LIGHT, 0, STATE_SPOT_CUTOFF}, SWIZZLE_XXXX}, + {"spotExponent", {STATE_LIGHT, 0, STATE_ATTENUATION}, SWIZZLE_WWWW}, + {"constantAttenuation", {STATE_LIGHT, 0, STATE_ATTENUATION}, SWIZZLE_XXXX}, + {"linearAttenuation", {STATE_LIGHT, 0, STATE_ATTENUATION}, SWIZZLE_YYYY}, + {"quadraticAttenuation", {STATE_LIGHT, 0, STATE_ATTENUATION}, SWIZZLE_ZZZZ}, +}; + +static struct gl_builtin_uniform_element gl_LightModel_elements[] = { + {"ambient", {STATE_LIGHTMODEL_AMBIENT, 0}, SWIZZLE_XYZW}, +}; + +static struct gl_builtin_uniform_element gl_FrontLightModelProduct_elements[] = { + {"sceneColor", {STATE_LIGHTMODEL_SCENECOLOR, 0}, SWIZZLE_XYZW}, +}; + +static struct gl_builtin_uniform_element gl_BackLightModelProduct_elements[] = { + {"sceneColor", {STATE_LIGHTMODEL_SCENECOLOR, 1}, SWIZZLE_XYZW}, +}; + +static struct gl_builtin_uniform_element gl_FrontLightProduct_elements[] = { + {"ambient", {STATE_LIGHTPROD, 0, 0, STATE_AMBIENT}, SWIZZLE_XYZW}, + {"diffuse", {STATE_LIGHTPROD, 0, 0, STATE_DIFFUSE}, SWIZZLE_XYZW}, + {"specular", {STATE_LIGHTPROD, 0, 0, STATE_SPECULAR}, SWIZZLE_XYZW}, +}; + +static struct gl_builtin_uniform_element gl_BackLightProduct_elements[] = { + {"ambient", {STATE_LIGHTPROD, 0, 1, STATE_AMBIENT}, SWIZZLE_XYZW}, + {"diffuse", {STATE_LIGHTPROD, 0, 1, STATE_DIFFUSE}, SWIZZLE_XYZW}, + {"specular", {STATE_LIGHTPROD, 0, 1, STATE_SPECULAR}, SWIZZLE_XYZW}, +}; + +static struct gl_builtin_uniform_element gl_TextureEnvColor_elements[] = { + {NULL, {STATE_TEXENV_COLOR, 0}, SWIZZLE_XYZW}, +}; + +static struct gl_builtin_uniform_element gl_EyePlaneS_elements[] = { + {NULL, {STATE_TEXGEN, 0, STATE_TEXGEN_EYE_S}, SWIZZLE_XYZW}, +}; + +static struct gl_builtin_uniform_element gl_EyePlaneT_elements[] = { + {NULL, {STATE_TEXGEN, 0, STATE_TEXGEN_EYE_T}, SWIZZLE_XYZW}, +}; + +static struct gl_builtin_uniform_element gl_EyePlaneR_elements[] = { + {NULL, {STATE_TEXGEN, 0, STATE_TEXGEN_EYE_R}, SWIZZLE_XYZW}, +}; + +static struct gl_builtin_uniform_element gl_EyePlaneQ_elements[] = { + {NULL, {STATE_TEXGEN, 0, STATE_TEXGEN_EYE_Q}, SWIZZLE_XYZW}, +}; + +static struct gl_builtin_uniform_element gl_ObjectPlaneS_elements[] = { + {NULL, {STATE_TEXGEN, 0, STATE_TEXGEN_OBJECT_S}, SWIZZLE_XYZW}, +}; + +static struct gl_builtin_uniform_element gl_ObjectPlaneT_elements[] = { + {NULL, {STATE_TEXGEN, 0, STATE_TEXGEN_OBJECT_T}, SWIZZLE_XYZW}, +}; + +static struct gl_builtin_uniform_element gl_ObjectPlaneR_elements[] = { + {NULL, {STATE_TEXGEN, 0, STATE_TEXGEN_OBJECT_R}, SWIZZLE_XYZW}, +}; + +static struct gl_builtin_uniform_element gl_ObjectPlaneQ_elements[] = { + {NULL, {STATE_TEXGEN, 0, STATE_TEXGEN_OBJECT_Q}, SWIZZLE_XYZW}, +}; + +static struct gl_builtin_uniform_element gl_Fog_elements[] = { + {"color", {STATE_FOG_COLOR}, SWIZZLE_XYZW}, + {"density", {STATE_FOG_PARAMS}, SWIZZLE_XXXX}, + {"start", {STATE_FOG_PARAMS}, SWIZZLE_YYYY}, + {"end", {STATE_FOG_PARAMS}, SWIZZLE_ZZZZ}, + {"scale", {STATE_FOG_PARAMS}, SWIZZLE_WWWW}, +}; + +static struct gl_builtin_uniform_element gl_NormalScale_elements[] = { + {NULL, {STATE_NORMAL_SCALE}, SWIZZLE_XXXX}, +}; + +static struct gl_builtin_uniform_element gl_MESABumpRotMatrix0_elements[] = { + {NULL, {STATE_INTERNAL, STATE_ROT_MATRIX_0}, SWIZZLE_XYZW}, +}; + +static struct gl_builtin_uniform_element gl_MESABumpRotMatrix1_elements[] = { + {NULL, {STATE_INTERNAL, STATE_ROT_MATRIX_1}, SWIZZLE_XYZW}, +}; + +static struct gl_builtin_uniform_element gl_MESAFogParamsOptimized_elements[] = { + {NULL, {STATE_INTERNAL, STATE_FOG_PARAMS_OPTIMIZED}, SWIZZLE_XYZW}, +}; + +#define MATRIX(name, statevar, modifier) \ + static struct gl_builtin_uniform_element name ## _elements[] = { \ + { NULL, { statevar, 0, 0, 0, modifier}, SWIZZLE_XYZW }, \ + { NULL, { statevar, 0, 1, 1, modifier}, SWIZZLE_XYZW }, \ + { NULL, { statevar, 0, 2, 2, modifier}, SWIZZLE_XYZW }, \ + { NULL, { statevar, 0, 3, 3, modifier}, SWIZZLE_XYZW }, \ + } + +MATRIX(gl_ModelViewMatrix, + STATE_MODELVIEW_MATRIX, STATE_MATRIX_TRANSPOSE); +MATRIX(gl_ModelViewMatrixInverse, + STATE_MODELVIEW_MATRIX, STATE_MATRIX_INVTRANS); +MATRIX(gl_ModelViewMatrixTranspose, + STATE_MODELVIEW_MATRIX, 0); +MATRIX(gl_ModelViewMatrixInverseTranspose, + STATE_MODELVIEW_MATRIX, STATE_MATRIX_INVERSE); + +MATRIX(gl_ProjectionMatrix, + STATE_PROJECTION_MATRIX, STATE_MATRIX_TRANSPOSE); +MATRIX(gl_ProjectionMatrixInverse, + STATE_PROJECTION_MATRIX, STATE_MATRIX_INVTRANS); +MATRIX(gl_ProjectionMatrixTranspose, + STATE_PROJECTION_MATRIX, 0); +MATRIX(gl_ProjectionMatrixInverseTranspose, + STATE_PROJECTION_MATRIX, STATE_MATRIX_INVERSE); + +MATRIX(gl_ModelViewProjectionMatrix, + STATE_MVP_MATRIX, STATE_MATRIX_TRANSPOSE); +MATRIX(gl_ModelViewProjectionMatrixInverse, + STATE_MVP_MATRIX, STATE_MATRIX_INVTRANS); +MATRIX(gl_ModelViewProjectionMatrixTranspose, + STATE_MVP_MATRIX, 0); +MATRIX(gl_ModelViewProjectionMatrixInverseTranspose, + STATE_MVP_MATRIX, STATE_MATRIX_INVERSE); + +MATRIX(gl_TextureMatrix, + STATE_TEXTURE_MATRIX, STATE_MATRIX_TRANSPOSE); +MATRIX(gl_TextureMatrixInverse, + STATE_TEXTURE_MATRIX, STATE_MATRIX_INVTRANS); +MATRIX(gl_TextureMatrixTranspose, + STATE_TEXTURE_MATRIX, 0); +MATRIX(gl_TextureMatrixInverseTranspose, + STATE_TEXTURE_MATRIX, STATE_MATRIX_INVERSE); + +static struct gl_builtin_uniform_element gl_NormalMatrix_elements[] = { + { NULL, { STATE_MODELVIEW_MATRIX, 0, 0, 0, STATE_MATRIX_INVERSE}, + SWIZZLE_XYZW }, + { NULL, { STATE_MODELVIEW_MATRIX, 0, 1, 1, STATE_MATRIX_INVERSE}, + SWIZZLE_XYZW }, + { NULL, { STATE_MODELVIEW_MATRIX, 0, 2, 2, STATE_MATRIX_INVERSE}, + SWIZZLE_XYZW }, +}; + +#undef MATRIX + +#define STATEVAR(name) {#name, name ## _elements, Elements(name ## _elements)} + +const struct gl_builtin_uniform_desc _mesa_builtin_uniform_desc[] = { + STATEVAR(gl_DepthRange), + STATEVAR(gl_ClipPlane), + STATEVAR(gl_Point), + STATEVAR(gl_FrontMaterial), + STATEVAR(gl_BackMaterial), + STATEVAR(gl_LightSource), + STATEVAR(gl_LightModel), + STATEVAR(gl_FrontLightModelProduct), + STATEVAR(gl_BackLightModelProduct), + STATEVAR(gl_FrontLightProduct), + STATEVAR(gl_BackLightProduct), + STATEVAR(gl_TextureEnvColor), + STATEVAR(gl_EyePlaneS), + STATEVAR(gl_EyePlaneT), + STATEVAR(gl_EyePlaneR), + STATEVAR(gl_EyePlaneQ), + STATEVAR(gl_ObjectPlaneS), + STATEVAR(gl_ObjectPlaneT), + STATEVAR(gl_ObjectPlaneR), + STATEVAR(gl_ObjectPlaneQ), + STATEVAR(gl_Fog), + + STATEVAR(gl_ModelViewMatrix), + STATEVAR(gl_ModelViewMatrixInverse), + STATEVAR(gl_ModelViewMatrixTranspose), + STATEVAR(gl_ModelViewMatrixInverseTranspose), + + STATEVAR(gl_ProjectionMatrix), + STATEVAR(gl_ProjectionMatrixInverse), + STATEVAR(gl_ProjectionMatrixTranspose), + STATEVAR(gl_ProjectionMatrixInverseTranspose), + + STATEVAR(gl_ModelViewProjectionMatrix), + STATEVAR(gl_ModelViewProjectionMatrixInverse), + STATEVAR(gl_ModelViewProjectionMatrixTranspose), + STATEVAR(gl_ModelViewProjectionMatrixInverseTranspose), + + STATEVAR(gl_TextureMatrix), + STATEVAR(gl_TextureMatrixInverse), + STATEVAR(gl_TextureMatrixTranspose), + STATEVAR(gl_TextureMatrixInverseTranspose), + + STATEVAR(gl_NormalMatrix), + STATEVAR(gl_NormalScale), + + STATEVAR(gl_MESABumpRotMatrix0), + STATEVAR(gl_MESABumpRotMatrix1), + STATEVAR(gl_MESAFogParamsOptimized), + + {NULL, NULL, 0} +}; + static ir_variable * add_variable(exec_list *instructions, glsl_symbol_table *symtab, const char *name, const glsl_type *type, diff --git a/src/mesa/main/uniforms.c b/src/mesa/main/uniforms.c index 1d74efafdf7..f984ce3bc56 100644 --- a/src/mesa/main/uniforms.c +++ b/src/mesa/main/uniforms.c @@ -82,254 +82,6 @@ base_uniform_type(GLenum type) } } -static struct gl_builtin_uniform_element gl_DepthRange_elements[] = { - {"near", {STATE_DEPTH_RANGE, 0, 0}, SWIZZLE_XXXX}, - {"far", {STATE_DEPTH_RANGE, 0, 0}, SWIZZLE_YYYY}, - {"diff", {STATE_DEPTH_RANGE, 0, 0}, SWIZZLE_ZZZZ}, -}; - -static struct gl_builtin_uniform_element gl_ClipPlane_elements[] = { - {NULL, {STATE_CLIPPLANE, 0, 0}, SWIZZLE_XYZW} -}; - -static struct gl_builtin_uniform_element gl_Point_elements[] = { - {"size", {STATE_POINT_SIZE}, SWIZZLE_XXXX}, - {"sizeMin", {STATE_POINT_SIZE}, SWIZZLE_YYYY}, - {"sizeMax", {STATE_POINT_SIZE}, SWIZZLE_ZZZZ}, - {"fadeThresholdSize", {STATE_POINT_SIZE}, SWIZZLE_WWWW}, - {"distanceConstantAttenuation", {STATE_POINT_ATTENUATION}, SWIZZLE_XXXX}, - {"distanceLinearAttenuation", {STATE_POINT_ATTENUATION}, SWIZZLE_YYYY}, - {"distanceQuadraticAttenuation", {STATE_POINT_ATTENUATION}, SWIZZLE_ZZZZ}, -}; - -static struct gl_builtin_uniform_element gl_FrontMaterial_elements[] = { - {"emission", {STATE_MATERIAL, 0, STATE_EMISSION}, SWIZZLE_XYZW}, - {"ambient", {STATE_MATERIAL, 0, STATE_AMBIENT}, SWIZZLE_XYZW}, - {"diffuse", {STATE_MATERIAL, 0, STATE_DIFFUSE}, SWIZZLE_XYZW}, - {"specular", {STATE_MATERIAL, 0, STATE_SPECULAR}, SWIZZLE_XYZW}, - {"shininess", {STATE_MATERIAL, 0, STATE_SHININESS}, SWIZZLE_XXXX}, -}; - -static struct gl_builtin_uniform_element gl_BackMaterial_elements[] = { - {"emission", {STATE_MATERIAL, 1, STATE_EMISSION}, SWIZZLE_XYZW}, - {"ambient", {STATE_MATERIAL, 1, STATE_AMBIENT}, SWIZZLE_XYZW}, - {"diffuse", {STATE_MATERIAL, 1, STATE_DIFFUSE}, SWIZZLE_XYZW}, - {"specular", {STATE_MATERIAL, 1, STATE_SPECULAR}, SWIZZLE_XYZW}, - {"shininess", {STATE_MATERIAL, 1, STATE_SHININESS}, SWIZZLE_XXXX}, -}; - -static struct gl_builtin_uniform_element gl_LightSource_elements[] = { - {"ambient", {STATE_LIGHT, 0, STATE_AMBIENT}, SWIZZLE_XYZW}, - {"diffuse", {STATE_LIGHT, 0, STATE_DIFFUSE}, SWIZZLE_XYZW}, - {"specular", {STATE_LIGHT, 0, STATE_SPECULAR}, SWIZZLE_XYZW}, - {"position", {STATE_LIGHT, 0, STATE_POSITION}, SWIZZLE_XYZW}, - {"halfVector", {STATE_LIGHT, 0, STATE_HALF_VECTOR}, SWIZZLE_XYZW}, - {"spotDirection", {STATE_LIGHT, 0, STATE_SPOT_DIRECTION}, - MAKE_SWIZZLE4(SWIZZLE_X, - SWIZZLE_Y, - SWIZZLE_Z, - SWIZZLE_Z)}, - {"spotCosCutoff", {STATE_LIGHT, 0, STATE_SPOT_DIRECTION}, SWIZZLE_WWWW}, - {"spotCutoff", {STATE_LIGHT, 0, STATE_SPOT_CUTOFF}, SWIZZLE_XXXX}, - {"spotExponent", {STATE_LIGHT, 0, STATE_ATTENUATION}, SWIZZLE_WWWW}, - {"constantAttenuation", {STATE_LIGHT, 0, STATE_ATTENUATION}, SWIZZLE_XXXX}, - {"linearAttenuation", {STATE_LIGHT, 0, STATE_ATTENUATION}, SWIZZLE_YYYY}, - {"quadraticAttenuation", {STATE_LIGHT, 0, STATE_ATTENUATION}, SWIZZLE_ZZZZ}, -}; - -static struct gl_builtin_uniform_element gl_LightModel_elements[] = { - {"ambient", {STATE_LIGHTMODEL_AMBIENT, 0}, SWIZZLE_XYZW}, -}; - -static struct gl_builtin_uniform_element gl_FrontLightModelProduct_elements[] = { - {"sceneColor", {STATE_LIGHTMODEL_SCENECOLOR, 0}, SWIZZLE_XYZW}, -}; - -static struct gl_builtin_uniform_element gl_BackLightModelProduct_elements[] = { - {"sceneColor", {STATE_LIGHTMODEL_SCENECOLOR, 1}, SWIZZLE_XYZW}, -}; - -static struct gl_builtin_uniform_element gl_FrontLightProduct_elements[] = { - {"ambient", {STATE_LIGHTPROD, 0, 0, STATE_AMBIENT}, SWIZZLE_XYZW}, - {"diffuse", {STATE_LIGHTPROD, 0, 0, STATE_DIFFUSE}, SWIZZLE_XYZW}, - {"specular", {STATE_LIGHTPROD, 0, 0, STATE_SPECULAR}, SWIZZLE_XYZW}, -}; - -static struct gl_builtin_uniform_element gl_BackLightProduct_elements[] = { - {"ambient", {STATE_LIGHTPROD, 0, 1, STATE_AMBIENT}, SWIZZLE_XYZW}, - {"diffuse", {STATE_LIGHTPROD, 0, 1, STATE_DIFFUSE}, SWIZZLE_XYZW}, - {"specular", {STATE_LIGHTPROD, 0, 1, STATE_SPECULAR}, SWIZZLE_XYZW}, -}; - -static struct gl_builtin_uniform_element gl_TextureEnvColor_elements[] = { - {NULL, {STATE_TEXENV_COLOR, 0}, SWIZZLE_XYZW}, -}; - -static struct gl_builtin_uniform_element gl_EyePlaneS_elements[] = { - {NULL, {STATE_TEXGEN, 0, STATE_TEXGEN_EYE_S}, SWIZZLE_XYZW}, -}; - -static struct gl_builtin_uniform_element gl_EyePlaneT_elements[] = { - {NULL, {STATE_TEXGEN, 0, STATE_TEXGEN_EYE_T}, SWIZZLE_XYZW}, -}; - -static struct gl_builtin_uniform_element gl_EyePlaneR_elements[] = { - {NULL, {STATE_TEXGEN, 0, STATE_TEXGEN_EYE_R}, SWIZZLE_XYZW}, -}; - -static struct gl_builtin_uniform_element gl_EyePlaneQ_elements[] = { - {NULL, {STATE_TEXGEN, 0, STATE_TEXGEN_EYE_Q}, SWIZZLE_XYZW}, -}; - -static struct gl_builtin_uniform_element gl_ObjectPlaneS_elements[] = { - {NULL, {STATE_TEXGEN, 0, STATE_TEXGEN_OBJECT_S}, SWIZZLE_XYZW}, -}; - -static struct gl_builtin_uniform_element gl_ObjectPlaneT_elements[] = { - {NULL, {STATE_TEXGEN, 0, STATE_TEXGEN_OBJECT_T}, SWIZZLE_XYZW}, -}; - -static struct gl_builtin_uniform_element gl_ObjectPlaneR_elements[] = { - {NULL, {STATE_TEXGEN, 0, STATE_TEXGEN_OBJECT_R}, SWIZZLE_XYZW}, -}; - -static struct gl_builtin_uniform_element gl_ObjectPlaneQ_elements[] = { - {NULL, {STATE_TEXGEN, 0, STATE_TEXGEN_OBJECT_Q}, SWIZZLE_XYZW}, -}; - -static struct gl_builtin_uniform_element gl_Fog_elements[] = { - {"color", {STATE_FOG_COLOR}, SWIZZLE_XYZW}, - {"density", {STATE_FOG_PARAMS}, SWIZZLE_XXXX}, - {"start", {STATE_FOG_PARAMS}, SWIZZLE_YYYY}, - {"end", {STATE_FOG_PARAMS}, SWIZZLE_ZZZZ}, - {"scale", {STATE_FOG_PARAMS}, SWIZZLE_WWWW}, -}; - -static struct gl_builtin_uniform_element gl_NormalScale_elements[] = { - {NULL, {STATE_NORMAL_SCALE}, SWIZZLE_XXXX}, -}; - -static struct gl_builtin_uniform_element gl_MESABumpRotMatrix0_elements[] = { - {NULL, {STATE_INTERNAL, STATE_ROT_MATRIX_0}, SWIZZLE_XYZW}, -}; - -static struct gl_builtin_uniform_element gl_MESABumpRotMatrix1_elements[] = { - {NULL, {STATE_INTERNAL, STATE_ROT_MATRIX_1}, SWIZZLE_XYZW}, -}; - -static struct gl_builtin_uniform_element gl_MESAFogParamsOptimized_elements[] = { - {NULL, {STATE_INTERNAL, STATE_FOG_PARAMS_OPTIMIZED}, SWIZZLE_XYZW}, -}; - -#define MATRIX(name, statevar, modifier) \ - static struct gl_builtin_uniform_element name ## _elements[] = { \ - { NULL, { statevar, 0, 0, 0, modifier}, SWIZZLE_XYZW }, \ - { NULL, { statevar, 0, 1, 1, modifier}, SWIZZLE_XYZW }, \ - { NULL, { statevar, 0, 2, 2, modifier}, SWIZZLE_XYZW }, \ - { NULL, { statevar, 0, 3, 3, modifier}, SWIZZLE_XYZW }, \ - } - -MATRIX(gl_ModelViewMatrix, - STATE_MODELVIEW_MATRIX, STATE_MATRIX_TRANSPOSE); -MATRIX(gl_ModelViewMatrixInverse, - STATE_MODELVIEW_MATRIX, STATE_MATRIX_INVTRANS); -MATRIX(gl_ModelViewMatrixTranspose, - STATE_MODELVIEW_MATRIX, 0); -MATRIX(gl_ModelViewMatrixInverseTranspose, - STATE_MODELVIEW_MATRIX, STATE_MATRIX_INVERSE); - -MATRIX(gl_ProjectionMatrix, - STATE_PROJECTION_MATRIX, STATE_MATRIX_TRANSPOSE); -MATRIX(gl_ProjectionMatrixInverse, - STATE_PROJECTION_MATRIX, STATE_MATRIX_INVTRANS); -MATRIX(gl_ProjectionMatrixTranspose, - STATE_PROJECTION_MATRIX, 0); -MATRIX(gl_ProjectionMatrixInverseTranspose, - STATE_PROJECTION_MATRIX, STATE_MATRIX_INVERSE); - -MATRIX(gl_ModelViewProjectionMatrix, - STATE_MVP_MATRIX, STATE_MATRIX_TRANSPOSE); -MATRIX(gl_ModelViewProjectionMatrixInverse, - STATE_MVP_MATRIX, STATE_MATRIX_INVTRANS); -MATRIX(gl_ModelViewProjectionMatrixTranspose, - STATE_MVP_MATRIX, 0); -MATRIX(gl_ModelViewProjectionMatrixInverseTranspose, - STATE_MVP_MATRIX, STATE_MATRIX_INVERSE); - -MATRIX(gl_TextureMatrix, - STATE_TEXTURE_MATRIX, STATE_MATRIX_TRANSPOSE); -MATRIX(gl_TextureMatrixInverse, - STATE_TEXTURE_MATRIX, STATE_MATRIX_INVTRANS); -MATRIX(gl_TextureMatrixTranspose, - STATE_TEXTURE_MATRIX, 0); -MATRIX(gl_TextureMatrixInverseTranspose, - STATE_TEXTURE_MATRIX, STATE_MATRIX_INVERSE); - -static struct gl_builtin_uniform_element gl_NormalMatrix_elements[] = { - { NULL, { STATE_MODELVIEW_MATRIX, 0, 0, 0, STATE_MATRIX_INVERSE}, - SWIZZLE_XYZW }, - { NULL, { STATE_MODELVIEW_MATRIX, 0, 1, 1, STATE_MATRIX_INVERSE}, - SWIZZLE_XYZW }, - { NULL, { STATE_MODELVIEW_MATRIX, 0, 2, 2, STATE_MATRIX_INVERSE}, - SWIZZLE_XYZW }, -}; - -#undef MATRIX - -#define STATEVAR(name) {#name, name ## _elements, Elements(name ## _elements)} - -const struct gl_builtin_uniform_desc _mesa_builtin_uniform_desc[] = { - STATEVAR(gl_DepthRange), - STATEVAR(gl_ClipPlane), - STATEVAR(gl_Point), - STATEVAR(gl_FrontMaterial), - STATEVAR(gl_BackMaterial), - STATEVAR(gl_LightSource), - STATEVAR(gl_LightModel), - STATEVAR(gl_FrontLightModelProduct), - STATEVAR(gl_BackLightModelProduct), - STATEVAR(gl_FrontLightProduct), - STATEVAR(gl_BackLightProduct), - STATEVAR(gl_TextureEnvColor), - STATEVAR(gl_EyePlaneS), - STATEVAR(gl_EyePlaneT), - STATEVAR(gl_EyePlaneR), - STATEVAR(gl_EyePlaneQ), - STATEVAR(gl_ObjectPlaneS), - STATEVAR(gl_ObjectPlaneT), - STATEVAR(gl_ObjectPlaneR), - STATEVAR(gl_ObjectPlaneQ), - STATEVAR(gl_Fog), - - STATEVAR(gl_ModelViewMatrix), - STATEVAR(gl_ModelViewMatrixInverse), - STATEVAR(gl_ModelViewMatrixTranspose), - STATEVAR(gl_ModelViewMatrixInverseTranspose), - - STATEVAR(gl_ProjectionMatrix), - STATEVAR(gl_ProjectionMatrixInverse), - STATEVAR(gl_ProjectionMatrixTranspose), - STATEVAR(gl_ProjectionMatrixInverseTranspose), - - STATEVAR(gl_ModelViewProjectionMatrix), - STATEVAR(gl_ModelViewProjectionMatrixInverse), - STATEVAR(gl_ModelViewProjectionMatrixTranspose), - STATEVAR(gl_ModelViewProjectionMatrixInverseTranspose), - - STATEVAR(gl_TextureMatrix), - STATEVAR(gl_TextureMatrixInverse), - STATEVAR(gl_TextureMatrixTranspose), - STATEVAR(gl_TextureMatrixInverseTranspose), - - STATEVAR(gl_NormalMatrix), - STATEVAR(gl_NormalScale), - - STATEVAR(gl_MESABumpRotMatrix0), - STATEVAR(gl_MESABumpRotMatrix1), - STATEVAR(gl_MESAFogParamsOptimized), - - {NULL, NULL, 0} -}; static GLboolean is_boolean_type(GLenum type) From 89d81ab16c05818b290ed735c1343d3abde449bf Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Tue, 25 Jan 2011 10:41:20 -0800 Subject: [PATCH 082/420] glsl: Calcluate Mesa state slots in front-end instead of back-end This should be the last bit of infrastructure changes before generating GLSL IR for assembly shaders. This commit leaves some odd code formatting in ir_to_mesa and brw_fs. This was done to minimize whitespace changes / reindentation in some loops. The following commit will restore formatting sanity. Reviewed-by: Eric Anholt Reviewed-by: Chad Versace --- src/glsl/ir.h | 26 +++++++++++++ src/glsl/ir_clone.cpp | 12 ++++++ src/glsl/ir_variable.cpp | 46 +++++++++++++++++++++-- src/glsl/linker.cpp | 13 +++++++ src/mesa/drivers/dri/i965/brw_fs.cpp | 37 +++--------------- src/mesa/program/ir_to_mesa.cpp | 56 +++++++++------------------- 6 files changed, 117 insertions(+), 73 deletions(-) diff --git a/src/glsl/ir.h b/src/glsl/ir.h index 39d4ebc7107..a41984310b3 100644 --- a/src/glsl/ir.h +++ b/src/glsl/ir.h @@ -253,6 +253,16 @@ enum ir_depth_layout { const char* depth_layout_string(ir_depth_layout layout); +/** + * Description of built-in state associated with a uniform + * + * \sa ir_variable::state_slots + */ +struct ir_state_slot { + int tokens[5]; + int swizzle; +}; + class ir_variable : public ir_instruction { public: ir_variable(const struct glsl_type *, const char *, ir_variable_mode); @@ -385,6 +395,22 @@ public: */ int location; + /** + * Built-in state that backs this uniform + * + * Once set at variable creation, \c state_slots must remain invariant. + * This is because, ideally, this array would be shared by all clones of + * this variable in the IR tree. In other words, we'd really like for it + * to be a fly-weight. + * + * If the variable is not a uniform, \c num_state_slots will be zero and + * \c state_slots will be \c NULL. + */ + /*@{*/ + unsigned num_state_slots; /**< Number of state slots used */ + ir_state_slot *state_slots; /**< State descriptors. */ + /*@}*/ + /** * Emit a warning if this variable is accessed. */ diff --git a/src/glsl/ir_clone.cpp b/src/glsl/ir_clone.cpp index 2c0574dc6bf..069bb85e8de 100644 --- a/src/glsl/ir_clone.cpp +++ b/src/glsl/ir_clone.cpp @@ -53,6 +53,18 @@ ir_variable::clone(void *mem_ctx, struct hash_table *ht) const var->origin_upper_left = this->origin_upper_left; var->pixel_center_integer = this->pixel_center_integer; var->explicit_location = this->explicit_location; + + var->num_state_slots = this->num_state_slots; + if (this->state_slots) { + /* FINISHME: This really wants to use something like talloc_reference, but + * FINISHME: ralloc doesn't have any similar function. + */ + var->state_slots = ralloc_array(var, ir_state_slot, + this->num_state_slots); + memcpy(var->state_slots, this->state_slots, + sizeof(this->state_slots[0]) * var->num_state_slots); + } + if (this->explicit_location) var->location = this->location; diff --git a/src/glsl/ir_variable.cpp b/src/glsl/ir_variable.cpp index c2715254a59..f3577175691 100644 --- a/src/glsl/ir_variable.cpp +++ b/src/glsl/ir_variable.cpp @@ -327,7 +327,43 @@ static ir_variable * add_uniform(exec_list *instructions, glsl_symbol_table *symtab, const char *name, const glsl_type *type) { - return add_variable(instructions, symtab, name, type, ir_var_uniform, -1); + ir_variable *const uni = + add_variable(instructions, symtab, name, type, ir_var_uniform, -1); + + unsigned i; + for (i = 0; _mesa_builtin_uniform_desc[i].name != NULL; i++) { + if (strcmp(_mesa_builtin_uniform_desc[i].name, name) == 0) { + break; + } + } + + assert(_mesa_builtin_uniform_desc[i].name != NULL); + const struct gl_builtin_uniform_desc* const statevar = + &_mesa_builtin_uniform_desc[i]; + + const unsigned array_count = type->is_array() ? type->length : 1; + uni->num_state_slots = array_count * statevar->num_elements; + + ir_state_slot *slots = + ralloc_array(uni, ir_state_slot, uni->num_state_slots); + + uni->state_slots = slots; + + for (unsigned a = 0; a < array_count; a++) { + for (unsigned j = 0; j < statevar->num_elements; j++) { + struct gl_builtin_uniform_element *element = &statevar->elements[j]; + + memcpy(slots->tokens, element->tokens, sizeof(element->tokens)); + if (type->is_array()) { + slots->tokens[1] = a; + } + + slots->swizzle = element->swizzle; + slots++; + } + } + + return uni; } static void @@ -341,8 +377,12 @@ add_builtin_variable(exec_list *instructions, glsl_symbol_table *symtab, assert(type != NULL); - add_variable(instructions, symtab, proto->name, type, proto->mode, - proto->slot); + if (proto->mode == ir_var_uniform) { + add_uniform(instructions, symtab, proto->name, type); + } else { + add_variable(instructions, symtab, proto->name, type, proto->mode, + proto->slot); + } } static void diff --git a/src/glsl/linker.cpp b/src/glsl/linker.cpp index 7db5c5e8d53..17492357f2d 100644 --- a/src/glsl/linker.cpp +++ b/src/glsl/linker.cpp @@ -994,6 +994,19 @@ update_array_sizes(struct gl_shader_program *prog) } if (size + 1 != var->type->fields.array->length) { + /* If this is a built-in uniform (i.e., it's backed by some + * fixed-function state), adjust the number of state slots to + * match the new array size. The number of slots per array entry + * is not known. It seems saft to assume that the total number of + * slots is an integer multiple of the number of array elements. + * Determine the number of slots per array element by dividing by + * the old (total) size. + */ + if (var->num_state_slots > 0) { + var->num_state_slots = (size + 1) + * (var->num_state_slots / var->type->length); + } + var->type = glsl_type::get_array_instance(var->type->fields.array, size + 1); /* FINISHME: We should update the types of array diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp index bdf05230032..cf05fb4ee86 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp @@ -399,41 +399,16 @@ fs_visitor::setup_uniform_values(int loc, const glsl_type *type) void fs_visitor::setup_builtin_uniform_values(ir_variable *ir) { - const struct gl_builtin_uniform_desc *statevar = NULL; - - for (unsigned int i = 0; _mesa_builtin_uniform_desc[i].name; i++) { - statevar = &_mesa_builtin_uniform_desc[i]; - if (strcmp(ir->name, _mesa_builtin_uniform_desc[i].name) == 0) - break; - } - - if (!statevar->name) { - fail("Failed to find builtin uniform `%s'\n", ir->name); - return; - } - - int array_count; - if (ir->type->is_array()) { - array_count = ir->type->length; - } else { - array_count = 1; - } - - for (int a = 0; a < array_count; a++) { - for (unsigned int i = 0; i < statevar->num_elements; i++) { - struct gl_builtin_uniform_element *element = &statevar->elements[i]; - int tokens[STATE_LENGTH]; - - memcpy(tokens, element->tokens, sizeof(element->tokens)); - if (ir->type->is_array()) { - tokens[1] = a; - } + const ir_state_slot *const slots = ir->state_slots; + assert(ir->state_slots != NULL); + { + for (unsigned int i = 0; i < ir->num_state_slots; i++) { /* This state reference has already been setup by ir_to_mesa, * but we'll get the same index back here. */ int index = _mesa_add_state_reference(this->fp->Base.Parameters, - (gl_state_index *)tokens); + (gl_state_index *)slots[i].tokens); /* Add each of the unique swizzles of the element as a * parameter. This'll end up matching the expected layout of @@ -441,7 +416,7 @@ fs_visitor::setup_builtin_uniform_values(ir_variable *ir) */ int last_swiz = -1; for (unsigned int j = 0; j < 4; j++) { - int swiz = GET_SWZ(element->swizzle, j); + int swiz = GET_SWZ(slots[i].swizzle, j); if (swiz == last_swiz) break; last_swiz = swiz; diff --git a/src/mesa/program/ir_to_mesa.cpp b/src/mesa/program/ir_to_mesa.cpp index 17e0f9953f9..4cca2b72460 100644 --- a/src/mesa/program/ir_to_mesa.cpp +++ b/src/mesa/program/ir_to_mesa.cpp @@ -754,27 +754,8 @@ ir_to_mesa_visitor::visit(ir_variable *ir) if (ir->mode == ir_var_uniform && strncmp(ir->name, "gl_", 3) == 0) { unsigned int i; - const struct gl_builtin_uniform_desc *statevar; - - for (i = 0; _mesa_builtin_uniform_desc[i].name; i++) { - if (strcmp(ir->name, _mesa_builtin_uniform_desc[i].name) == 0) - break; - } - - if (!_mesa_builtin_uniform_desc[i].name) { - fail_link(this->shader_program, - "Failed to find builtin uniform `%s'\n", ir->name); - return; - } - - statevar = &_mesa_builtin_uniform_desc[i]; - - int array_count; - if (ir->type->is_array()) { - array_count = ir->type->length; - } else { - array_count = 1; - } + const ir_state_slot *const slots = ir->state_slots; + assert(ir->state_slots != NULL); /* Check if this statevar's setup in the STATE file exactly * matches how we'll want to reference it as a @@ -782,21 +763,27 @@ ir_to_mesa_visitor::visit(ir_variable *ir) * temporary storage and hope that it'll get copy-propagated * out. */ - for (i = 0; i < statevar->num_elements; i++) { - if (statevar->elements[i].swizzle != SWIZZLE_XYZW) { + for (i = 0; i < ir->num_state_slots; i++) { + if (slots[i].swizzle != SWIZZLE_XYZW) { break; } } struct variable_storage *storage; ir_to_mesa_dst_reg dst; - if (i == statevar->num_elements) { + if (i == ir->num_state_slots) { /* We'll set the index later. */ storage = new(mem_ctx) variable_storage(ir, PROGRAM_STATE_VAR, -1); this->variables.push_tail(storage); dst = ir_to_mesa_undef_dst; } else { + /* The variable_storage constructor allocates slots based on the size + * of the type. However, this had better match the number of state + * elements that we're going to copy into the new temporary. + */ + assert(ir->num_state_slots == type_size(ir->type)); + storage = new(mem_ctx) variable_storage(ir, PROGRAM_TEMPORARY, this->next_temp); this->variables.push_tail(storage); @@ -808,29 +795,20 @@ ir_to_mesa_visitor::visit(ir_variable *ir) } - for (int a = 0; a < array_count; a++) { - for (unsigned int i = 0; i < statevar->num_elements; i++) { - struct gl_builtin_uniform_element *element = &statevar->elements[i]; - int tokens[STATE_LENGTH]; - - memcpy(tokens, element->tokens, sizeof(element->tokens)); - if (ir->type->is_array()) { - tokens[1] = a; - } - + { + for (unsigned int i = 0; i < ir->num_state_slots; i++) { int index = _mesa_add_state_reference(this->prog->Parameters, - (gl_state_index *)tokens); + (gl_state_index *)slots[i].tokens); if (storage->file == PROGRAM_STATE_VAR) { if (storage->index == -1) { storage->index = index; } else { - assert(index == - (int)(storage->index + a * statevar->num_elements + i)); + assert(index == storage->index + (int)i); } } else { ir_to_mesa_src_reg src(PROGRAM_STATE_VAR, index, NULL); - src.swizzle = element->swizzle; + src.swizzle = slots[i].swizzle; ir_to_mesa_emit_op1(ir, OPCODE_MOV, dst, src); /* even a float takes up a whole vec4 reg in a struct/array. */ dst.index++; @@ -838,7 +816,7 @@ ir_to_mesa_visitor::visit(ir_variable *ir) } } if (storage->file == PROGRAM_TEMPORARY && - dst.index != storage->index + type_size(ir->type)) { + dst.index != storage->index + ir->num_state_slots) { fail_link(this->shader_program, "failed to load builtin uniform `%s' (%d/%d regs loaded)\n", ir->name, dst.index - storage->index, From a99e80d795f7c6aec0e73369a31d1728577b9727 Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Thu, 24 Mar 2011 18:31:05 -0700 Subject: [PATCH 083/420] mesa: Fix ugly indentation left from previous commit Reviewed-by: Eric Anholt Reviewed-by: Chad Versace --- src/mesa/drivers/dri/i965/brw_fs.cpp | 44 +++++++++++++--------------- src/mesa/program/ir_to_mesa.cpp | 29 +++++++++--------- 2 files changed, 35 insertions(+), 38 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp index cf05fb4ee86..bea6b1841f5 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp @@ -402,31 +402,29 @@ fs_visitor::setup_builtin_uniform_values(ir_variable *ir) const ir_state_slot *const slots = ir->state_slots; assert(ir->state_slots != NULL); - { - for (unsigned int i = 0; i < ir->num_state_slots; i++) { - /* This state reference has already been setup by ir_to_mesa, - * but we'll get the same index back here. - */ - int index = _mesa_add_state_reference(this->fp->Base.Parameters, - (gl_state_index *)slots[i].tokens); + for (unsigned int i = 0; i < ir->num_state_slots; i++) { + /* This state reference has already been setup by ir_to_mesa, but we'll + * get the same index back here. + */ + int index = _mesa_add_state_reference(this->fp->Base.Parameters, + (gl_state_index *)slots[i].tokens); - /* Add each of the unique swizzles of the element as a - * parameter. This'll end up matching the expected layout of - * the array/matrix/structure we're trying to fill in. - */ - int last_swiz = -1; - for (unsigned int j = 0; j < 4; j++) { - int swiz = GET_SWZ(slots[i].swizzle, j); - if (swiz == last_swiz) - break; - last_swiz = swiz; + /* Add each of the unique swizzles of the element as a parameter. + * This'll end up matching the expected layout of the + * array/matrix/structure we're trying to fill in. + */ + int last_swiz = -1; + for (unsigned int j = 0; j < 4; j++) { + int swiz = GET_SWZ(slots[i].swizzle, j); + if (swiz == last_swiz) + break; + last_swiz = swiz; - c->prog_data.param_convert[c->prog_data.nr_params] = - PARAM_NO_CONVERT; - this->param_index[c->prog_data.nr_params] = index; - this->param_offset[c->prog_data.nr_params] = swiz; - c->prog_data.nr_params++; - } + c->prog_data.param_convert[c->prog_data.nr_params] = + PARAM_NO_CONVERT; + this->param_index[c->prog_data.nr_params] = index; + this->param_offset[c->prog_data.nr_params] = swiz; + c->prog_data.nr_params++; } } } diff --git a/src/mesa/program/ir_to_mesa.cpp b/src/mesa/program/ir_to_mesa.cpp index 4cca2b72460..bf2513d4748 100644 --- a/src/mesa/program/ir_to_mesa.cpp +++ b/src/mesa/program/ir_to_mesa.cpp @@ -795,26 +795,25 @@ ir_to_mesa_visitor::visit(ir_variable *ir) } - { - for (unsigned int i = 0; i < ir->num_state_slots; i++) { - int index = _mesa_add_state_reference(this->prog->Parameters, - (gl_state_index *)slots[i].tokens); + for (unsigned int i = 0; i < ir->num_state_slots; i++) { + int index = _mesa_add_state_reference(this->prog->Parameters, + (gl_state_index *)slots[i].tokens); - if (storage->file == PROGRAM_STATE_VAR) { - if (storage->index == -1) { - storage->index = index; - } else { - assert(index == storage->index + (int)i); - } + if (storage->file == PROGRAM_STATE_VAR) { + if (storage->index == -1) { + storage->index = index; } else { - ir_to_mesa_src_reg src(PROGRAM_STATE_VAR, index, NULL); - src.swizzle = slots[i].swizzle; - ir_to_mesa_emit_op1(ir, OPCODE_MOV, dst, src); - /* even a float takes up a whole vec4 reg in a struct/array. */ - dst.index++; + assert(index == storage->index + (int)i); } + } else { + ir_to_mesa_src_reg src(PROGRAM_STATE_VAR, index, NULL); + src.swizzle = slots[i].swizzle; + ir_to_mesa_emit_op1(ir, OPCODE_MOV, dst, src); + /* even a float takes up a whole vec4 reg in a struct/array. */ + dst.index++; } } + if (storage->file == PROGRAM_TEMPORARY && dst.index != storage->index + ir->num_state_slots) { fail_link(this->shader_program, From 948e1eb8e9c166ad5b74abc630d0760768ce78c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20H=C3=B6glund?= Date: Tue, 29 Mar 2011 19:43:59 +0200 Subject: [PATCH 084/420] r600g: implement the pipe_screen fence functions v2: Allocate the fences from a single shared buffer object. v3: Allocate the r600_fence structs in blocks of 16. Spin a few times before calling sched_yield in r600_fence_finish(). --- src/gallium/drivers/r600/r600.h | 2 + src/gallium/drivers/r600/r600_pipe.c | 145 ++++++++++++++++++ src/gallium/drivers/r600/r600_pipe.h | 27 ++++ src/gallium/winsys/r600/drm/r600_hw_context.c | 23 +++ 4 files changed, 197 insertions(+) diff --git a/src/gallium/drivers/r600/r600.h b/src/gallium/drivers/r600/r600.h index 0b7d6f70968..75b8b50f68c 100644 --- a/src/gallium/drivers/r600/r600.h +++ b/src/gallium/drivers/r600/r600.h @@ -288,6 +288,8 @@ void r600_context_queries_suspend(struct r600_context *ctx); void r600_context_queries_resume(struct r600_context *ctx); void r600_query_predication(struct r600_context *ctx, struct r600_query *query, int operation, int flag_wait); +void r600_context_emit_fence(struct r600_context *ctx, struct r600_bo *fence, + unsigned offset, unsigned value); int evergreen_context_init(struct r600_context *ctx, struct radeon *radeon); void evergreen_context_draw(struct r600_context *ctx, const struct r600_draw *draw); diff --git a/src/gallium/drivers/r600/r600_pipe.c b/src/gallium/drivers/r600/r600_pipe.c index 0e28bda6eb6..c5fc2ba2d35 100644 --- a/src/gallium/drivers/r600/r600_pipe.c +++ b/src/gallium/drivers/r600/r600_pipe.c @@ -37,6 +37,7 @@ #include #include #include "util/u_upload_mgr.h" +#include "os/os_time.h" #include #include "r600.h" #include "r600d.h" @@ -48,15 +49,82 @@ /* * pipe_context */ +static struct r600_fence *r600_create_fence(struct r600_pipe_context *ctx) +{ + struct r600_fence *fence = NULL; + + if (!ctx->fences.bo) { + /* Create the shared buffer object */ + ctx->fences.bo = r600_bo(ctx->radeon, 4096, 0, 0, 0); + if (!ctx->fences.bo) { + R600_ERR("r600: failed to create bo for fence objects\n"); + return NULL; + } + ctx->fences.data = r600_bo_map(ctx->radeon, ctx->fences.bo, PB_USAGE_UNSYNCHRONIZED, NULL); + } + + if (!LIST_IS_EMPTY(&ctx->fences.pool)) { + struct r600_fence *entry; + + /* Try to find a freed fence that has been signalled */ + LIST_FOR_EACH_ENTRY(entry, &ctx->fences.pool, head) { + if (ctx->fences.data[entry->index] != 0) { + LIST_DELINIT(&entry->head); + fence = entry; + break; + } + } + } + + if (!fence) { + /* Allocate a new fence */ + struct r600_fence_block *block; + unsigned index; + + if ((ctx->fences.next_index + 1) >= 1024) { + R600_ERR("r600: too many concurrent fences\n"); + return NULL; + } + + index = ctx->fences.next_index++; + + if (!(index % FENCE_BLOCK_SIZE)) { + /* Allocate a new block */ + block = CALLOC_STRUCT(r600_fence_block); + if (block == NULL) + return NULL; + + LIST_ADD(&block->head, &ctx->fences.blocks); + } else { + block = LIST_ENTRY(struct r600_fence_block, ctx->fences.blocks.next, head); + } + + fence = &block->fences[index % FENCE_BLOCK_SIZE]; + fence->ctx = ctx; + fence->index = index; + } + + pipe_reference_init(&fence->reference, 1); + + ctx->fences.data[fence->index] = 0; + r600_context_emit_fence(&ctx->ctx, ctx->fences.bo, fence->index, 1); + return fence; +} + static void r600_flush(struct pipe_context *ctx, struct pipe_fence_handle **fence) { struct r600_pipe_context *rctx = (struct r600_pipe_context *)ctx; + struct r600_fence **rfence = (struct r600_fence**)fence; + #if 0 static int dc = 0; char dname[256]; #endif + if (rfence) + *rfence = r600_create_fence(rctx); + if (!rctx->ctx.pm4_cdwords) return; @@ -112,6 +180,18 @@ static void r600_destroy_context(struct pipe_context *context) u_vbuf_mgr_destroy(rctx->vbuf_mgr); util_slab_destroy(&rctx->pool_transfers); + if (rctx->fences.bo) { + struct r600_fence_block *entry, *tmp; + + LIST_FOR_EACH_ENTRY_SAFE(entry, tmp, &rctx->fences.blocks, head) { + LIST_DEL(&entry->head); + FREE(entry); + } + + r600_bo_unmap(rctx->radeon, rctx->fences.bo); + r600_bo_reference(rctx->radeon, &rctx->fences.bo, NULL); + } + r600_update_num_contexts(rctx->screen, -1); FREE(rctx); @@ -139,6 +219,12 @@ static struct pipe_context *r600_create_context(struct pipe_screen *screen, void rctx->radeon = rscreen->radeon; rctx->family = r600_get_family(rctx->radeon); + rctx->fences.bo = NULL; + rctx->fences.data = NULL; + rctx->fences.next_index = 0; + LIST_INITHEAD(&rctx->fences.pool); + LIST_INITHEAD(&rctx->fences.blocks); + r600_init_blit_functions(rctx); r600_init_query_functions(rctx); r600_init_context_resource_functions(rctx); @@ -491,6 +577,62 @@ static void r600_destroy_screen(struct pipe_screen* pscreen) FREE(rscreen); } +static void r600_fence_reference(struct pipe_screen *pscreen, + struct pipe_fence_handle **ptr, + struct pipe_fence_handle *fence) +{ + struct r600_fence **oldf = (struct r600_fence**)ptr; + struct r600_fence *newf = (struct r600_fence*)fence; + + if (pipe_reference(&(*oldf)->reference, &newf->reference)) { + struct r600_pipe_context *ctx = (*oldf)->ctx; + LIST_ADDTAIL(&(*oldf)->head, &ctx->fences.pool); + } + + *ptr = fence; +} + +static boolean r600_fence_signalled(struct pipe_screen *pscreen, + struct pipe_fence_handle *fence) +{ + struct r600_fence *rfence = (struct r600_fence*)fence; + struct r600_pipe_context *ctx = rfence->ctx; + + return ctx->fences.data[rfence->index]; +} + +static boolean r600_fence_finish(struct pipe_screen *pscreen, + struct pipe_fence_handle *fence, + uint64_t timeout) +{ + struct r600_fence *rfence = (struct r600_fence*)fence; + struct r600_pipe_context *ctx = rfence->ctx; + int64_t start_time = 0; + unsigned spins = 0; + + if (timeout != PIPE_TIMEOUT_INFINITE) { + start_time = os_time_get(); + + /* Convert to microseconds. */ + timeout /= 1000; + } + + while (ctx->fences.data[rfence->index] == 0) { + if (++spins % 256) + continue; +#ifdef PIPE_OS_UNIX + sched_yield(); +#else + os_time_sleep(10); +#endif + if (timeout != PIPE_TIMEOUT_INFINITE && + os_time_get() - start_time >= timeout) { + return FALSE; + } + } + + return TRUE; +} struct pipe_screen *r600_screen_create(struct radeon *radeon) { @@ -511,6 +653,9 @@ struct pipe_screen *r600_screen_create(struct radeon *radeon) rscreen->screen.get_paramf = r600_get_paramf; rscreen->screen.is_format_supported = r600_is_format_supported; rscreen->screen.context_create = r600_create_context; + rscreen->screen.fence_reference = r600_fence_reference; + rscreen->screen.fence_signalled = r600_fence_signalled; + rscreen->screen.fence_finish = r600_fence_finish; r600_init_screen_resource_functions(&rscreen->screen); rscreen->tiling_info = r600_get_tiling_info(radeon); diff --git a/src/gallium/drivers/r600/r600_pipe.h b/src/gallium/drivers/r600/r600_pipe.h index 396801e4a41..88aff0e81bb 100644 --- a/src/gallium/drivers/r600/r600_pipe.h +++ b/src/gallium/drivers/r600/r600_pipe.h @@ -124,6 +124,30 @@ struct r600_textures_info { unsigned n_samplers; }; +struct r600_fence { + struct pipe_reference reference; + struct r600_pipe_context *ctx; + unsigned index; /* in the shared bo */ + struct list_head head; +}; + +#define FENCE_BLOCK_SIZE 16 + +struct r600_fence_block { + struct r600_fence fences[FENCE_BLOCK_SIZE]; + struct list_head head; +}; + +struct r600_pipe_fences { + struct r600_bo *bo; + unsigned *data; + unsigned next_index; + /* linked list of preallocated blocks */ + struct list_head blocks; + /* linked list of freed fences */ + struct list_head pool; +}; + #define R600_CONSTANT_ARRAY_SIZE 256 #define R600_RESOURCE_ARRAY_SIZE 160 @@ -158,9 +182,12 @@ struct r600_pipe_context { bool flatshade; struct r600_textures_info ps_samplers; + struct r600_pipe_fences fences; + struct u_vbuf_mgr *vbuf_mgr; struct util_slab_mempool pool_transfers; bool blit; + }; struct r600_drawl { diff --git a/src/gallium/winsys/r600/drm/r600_hw_context.c b/src/gallium/winsys/r600/drm/r600_hw_context.c index a7c21784e51..48bce819b81 100644 --- a/src/gallium/winsys/r600/drm/r600_hw_context.c +++ b/src/gallium/winsys/r600/drm/r600_hw_context.c @@ -1188,6 +1188,29 @@ void r600_context_flush(struct r600_context *ctx) } } +void r600_context_emit_fence(struct r600_context *ctx, struct r600_bo *fence_bo, unsigned offset, unsigned value) +{ + unsigned ndwords = 10; + + if (((ctx->pm4_dirty_cdwords + ndwords + ctx->pm4_cdwords) > ctx->pm4_ndwords) || + (ctx->creloc >= (ctx->nreloc - 1))) { + /* need to flush */ + r600_context_flush(ctx); + } + + ctx->pm4[ctx->pm4_cdwords++] = PKT3(PKT3_EVENT_WRITE, 0, 0); + ctx->pm4[ctx->pm4_cdwords++] = EVENT_TYPE(EVENT_TYPE_PS_PARTIAL_FLUSH) | EVENT_INDEX(4); + ctx->pm4[ctx->pm4_cdwords++] = PKT3(PKT3_EVENT_WRITE_EOP, 4, 0); + ctx->pm4[ctx->pm4_cdwords++] = EVENT_TYPE(EVENT_TYPE_CACHE_FLUSH_AND_INV_TS_EVENT) | EVENT_INDEX(5); + ctx->pm4[ctx->pm4_cdwords++] = offset << 2; /* ADDRESS_LO */ + ctx->pm4[ctx->pm4_cdwords++] = (1 << 29) | (0 << 24); /* DATA_SEL | INT_EN | ADDRESS_HI */ + ctx->pm4[ctx->pm4_cdwords++] = value; /* DATA_LO */ + ctx->pm4[ctx->pm4_cdwords++] = 0; /* DATA_HI */ + ctx->pm4[ctx->pm4_cdwords++] = PKT3(PKT3_NOP, 0, 0); + ctx->pm4[ctx->pm4_cdwords++] = 0; + r600_context_bo_reloc(ctx, &ctx->pm4[ctx->pm4_cdwords - 1], fence_bo); +} + void r600_context_dump_bof(struct r600_context *ctx, const char *file) { bof_t *bcs, *blob, *array, *bo, *size, *handle, *device_id, *root; From d04ab396a54d29948363c3353efa5aaa888076a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20H=C3=B6glund?= Date: Tue, 29 Mar 2011 19:52:03 +0200 Subject: [PATCH 085/420] r600g: implement texture barrier --- src/gallium/drivers/r600/evergreen_state.c | 1 + src/gallium/drivers/r600/r600.h | 1 + src/gallium/drivers/r600/r600_pipe.h | 2 ++ src/gallium/drivers/r600/r600_state.c | 8 ++++++++ src/gallium/winsys/r600/drm/r600_hw_context.c | 17 +++++++++++++++++ 5 files changed, 29 insertions(+) diff --git a/src/gallium/drivers/r600/evergreen_state.c b/src/gallium/drivers/r600/evergreen_state.c index 77432661b64..8f93eb86fc6 100644 --- a/src/gallium/drivers/r600/evergreen_state.c +++ b/src/gallium/drivers/r600/evergreen_state.c @@ -920,6 +920,7 @@ void evergreen_init_state_functions(struct r600_pipe_context *rctx) rctx->context.set_viewport_state = evergreen_set_viewport_state; rctx->context.sampler_view_destroy = r600_sampler_view_destroy; rctx->context.redefine_user_buffer = u_default_redefine_user_buffer; + rctx->context.texture_barrier = r600_texture_barrier; } void evergreen_init_config(struct r600_pipe_context *rctx) diff --git a/src/gallium/drivers/r600/r600.h b/src/gallium/drivers/r600/r600.h index 75b8b50f68c..4256a7ea1e9 100644 --- a/src/gallium/drivers/r600/r600.h +++ b/src/gallium/drivers/r600/r600.h @@ -290,6 +290,7 @@ void r600_query_predication(struct r600_context *ctx, struct r600_query *query, int flag_wait); void r600_context_emit_fence(struct r600_context *ctx, struct r600_bo *fence, unsigned offset, unsigned value); +void r600_context_flush_all(struct r600_context *ctx, unsigned flush_flags); int evergreen_context_init(struct r600_context *ctx, struct radeon *radeon); void evergreen_context_draw(struct r600_context *ctx, const struct r600_draw *draw); diff --git a/src/gallium/drivers/r600/r600_pipe.h b/src/gallium/drivers/r600/r600_pipe.h index 88aff0e81bb..5b26d1f7459 100644 --- a/src/gallium/drivers/r600/r600_pipe.h +++ b/src/gallium/drivers/r600/r600_pipe.h @@ -298,6 +298,8 @@ void r600_set_constant_buffer(struct pipe_context *ctx, uint shader, uint index, struct pipe_resource *buffer); void r600_draw_vbo(struct pipe_context *ctx, const struct pipe_draw_info *info); +void r600_texture_barrier(struct pipe_context *ctx); + /* * common helpers */ diff --git a/src/gallium/drivers/r600/r600_state.c b/src/gallium/drivers/r600/r600_state.c index d3adf0393c1..e202056ef5d 100644 --- a/src/gallium/drivers/r600/r600_state.c +++ b/src/gallium/drivers/r600/r600_state.c @@ -934,6 +934,13 @@ static void r600_set_framebuffer_state(struct pipe_context *ctx, } } +void r600_texture_barrier(struct pipe_context *ctx) +{ + struct r600_pipe_context *rctx = (struct r600_pipe_context *)ctx; + + r600_context_flush_all(&rctx->ctx, S_0085F0_TC_ACTION_ENA(1)); +} + void r600_init_state_functions(struct r600_pipe_context *rctx) { rctx->context.create_blend_state = r600_create_blend_state; @@ -974,6 +981,7 @@ void r600_init_state_functions(struct r600_pipe_context *rctx) rctx->context.set_viewport_state = r600_set_viewport_state; rctx->context.sampler_view_destroy = r600_sampler_view_destroy; rctx->context.redefine_user_buffer = u_default_redefine_user_buffer; + rctx->context.texture_barrier = r600_texture_barrier; } void r600_init_config(struct r600_pipe_context *rctx) diff --git a/src/gallium/winsys/r600/drm/r600_hw_context.c b/src/gallium/winsys/r600/drm/r600_hw_context.c index 48bce819b81..7f8da12da46 100644 --- a/src/gallium/winsys/r600/drm/r600_hw_context.c +++ b/src/gallium/winsys/r600/drm/r600_hw_context.c @@ -771,6 +771,23 @@ static void rv6xx_context_surface_base_update(struct r600_context *ctx, } } +/* Flushes all surfaces */ +void r600_context_flush_all(struct r600_context *ctx, unsigned flush_flags) +{ + unsigned ndwords = 5; + + if ((ctx->pm4_dirty_cdwords + ndwords + ctx->pm4_cdwords) > ctx->pm4_ndwords) { + /* need to flush */ + r600_context_flush(ctx); + } + + ctx->pm4[ctx->pm4_cdwords++] = PKT3(PKT3_SURFACE_SYNC, 3, ctx->predicate_drawing); + ctx->pm4[ctx->pm4_cdwords++] = flush_flags; /* CP_COHER_CNTL */ + ctx->pm4[ctx->pm4_cdwords++] = 0xffffffff; /* CP_COHER_SIZE */ + ctx->pm4[ctx->pm4_cdwords++] = 0; /* CP_COHER_BASE */ + ctx->pm4[ctx->pm4_cdwords++] = 0x0000000A; /* POLL_INTERVAL */ +} + void r600_context_bo_flush(struct r600_context *ctx, unsigned flush_flags, unsigned flush_mask, struct r600_bo *rbo) { From 8f060df60d1f5ad63a341e39f2ec5a0c3c452cf5 Mon Sep 17 00:00:00 2001 From: Christoph Bumiller Date: Tue, 29 Mar 2011 23:09:02 +0200 Subject: [PATCH 086/420] nv50,nvc0: implement colour clamping controls --- src/gallium/drivers/nv50/nv50_3d.xml.h | 2 +- src/gallium/drivers/nv50/nv50_context.h | 4 +- src/gallium/drivers/nv50/nv50_program.c | 2 +- src/gallium/drivers/nv50/nv50_screen.c | 2 + src/gallium/drivers/nv50/nv50_shader_state.c | 41 ++++++++++++++++++- src/gallium/drivers/nv50/nv50_state.c | 3 ++ .../drivers/nv50/nv50_state_validate.c | 2 +- src/gallium/drivers/nv50/nv50_stateobj.h | 2 +- src/gallium/drivers/nvc0/nvc0_screen.c | 4 +- src/gallium/drivers/nvc0/nvc0_shader_state.c | 2 - src/gallium/drivers/nvc0/nvc0_state.c | 4 ++ src/gallium/drivers/nvc0/nvc0_stateobj.h | 2 +- 12 files changed, 59 insertions(+), 11 deletions(-) diff --git a/src/gallium/drivers/nv50/nv50_3d.xml.h b/src/gallium/drivers/nv50/nv50_3d.xml.h index 9bb3211728c..92b97ddb9f4 100644 --- a/src/gallium/drivers/nv50/nv50_3d.xml.h +++ b/src/gallium/drivers/nv50/nv50_3d.xml.h @@ -1673,7 +1673,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #define NV50_3D_MAP_SEMANTIC_0_BFC0_ID__SHIFT 8 #define NV50_3D_MAP_SEMANTIC_0_COLR_NR__MASK 0x00ff0000 #define NV50_3D_MAP_SEMANTIC_0_COLR_NR__SHIFT 16 -#define NV50_3D_MAP_SEMANTIC_0_CLMP_EN 0xff000000 +#define NV50_3D_MAP_SEMANTIC_0_CLMP_EN 0x01000000 #define NV50_3D_MAP_SEMANTIC_1 0x00001908 #define NV50_3D_MAP_SEMANTIC_1_CLIP_START__MASK 0x000000ff diff --git a/src/gallium/drivers/nv50/nv50_context.h b/src/gallium/drivers/nv50/nv50_context.h index 46e6c2250af..f480f043096 100644 --- a/src/gallium/drivers/nv50/nv50_context.h +++ b/src/gallium/drivers/nv50/nv50_context.h @@ -80,6 +80,8 @@ struct nv50_context { uint32_t instance_elts; /* bitmask of per-instance elements */ uint32_t instance_base; uint32_t interpolant_ctrl; + uint32_t semantic_color; + uint32_t semantic_psize; int32_t index_bias; boolean prim_restart; boolean point_sprite; @@ -183,7 +185,7 @@ void nv50_fragprog_validate(struct nv50_context *); void nv50_fp_linkage_validate(struct nv50_context *); void nv50_gp_linkage_validate(struct nv50_context *); void nv50_constbufs_validate(struct nv50_context *); -void nv50_sprite_coords_validate(struct nv50_context *); +void nv50_validate_derived_rs(struct nv50_context *); /* nv50_state.c */ extern void nv50_init_state_functions(struct nv50_context *); diff --git a/src/gallium/drivers/nv50/nv50_program.c b/src/gallium/drivers/nv50/nv50_program.c index a63f9d8a6d5..37025a6f12e 100644 --- a/src/gallium/drivers/nv50/nv50_program.c +++ b/src/gallium/drivers/nv50/nv50_program.c @@ -486,7 +486,7 @@ nv50_fragprog_prepare(struct nv50_translation_info *ti) ++nintp; } - p->fp.colors = (1 << 24) | 4; /* CLAMP, FFC0_ID = 4 */ + p->fp.colors = 4 << NV50_3D_MAP_SEMANTIC_0_FFC0_ID__SHIFT; /* after HPOS */ for (i = 0; i < p->in_nr; ++i) { int j = p->in[i].id; diff --git a/src/gallium/drivers/nv50/nv50_screen.c b/src/gallium/drivers/nv50/nv50_screen.c index 7690c80eef0..9978d1e7861 100644 --- a/src/gallium/drivers/nv50/nv50_screen.c +++ b/src/gallium/drivers/nv50/nv50_screen.c @@ -108,6 +108,8 @@ nv50_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param) return 1; case PIPE_CAP_MAX_RENDER_TARGETS: return 8; + case PIPE_CAP_FRAGMENT_COLOR_CLAMP_CONTROL: + return 1; case PIPE_CAP_TIMER_QUERY: case PIPE_CAP_OCCLUSION_QUERY: return 1; diff --git a/src/gallium/drivers/nv50/nv50_shader_state.c b/src/gallium/drivers/nv50/nv50_shader_state.c index bea9c095bb3..82c346cb5ea 100644 --- a/src/gallium/drivers/nv50/nv50_shader_state.c +++ b/src/gallium/drivers/nv50/nv50_shader_state.c @@ -226,7 +226,7 @@ nv50_gmtyprog_validate(struct nv50_context *nv50) OUT_RING (chan, gp->code_base); } -void +static void nv50_sprite_coords_validate(struct nv50_context *nv50) { struct nouveau_channel *chan = nv50->screen->base.channel; @@ -282,6 +282,39 @@ nv50_sprite_coords_validate(struct nv50_context *nv50) OUT_RINGp (chan, pntc, 8); } +/* Validate state derived from shaders and the rasterizer cso. */ +void +nv50_validate_derived_rs(struct nv50_context *nv50) +{ + struct nouveau_channel *chan = nv50->screen->base.channel; + uint32_t color, psize; + + nv50_sprite_coords_validate(nv50); + + if (nv50->dirty & NV50_NEW_FRAGPROG) + return; + psize = nv50->state.semantic_psize & ~NV50_3D_MAP_SEMANTIC_3_PTSZ_EN__MASK; + color = nv50->state.semantic_color & ~NV50_3D_MAP_SEMANTIC_0_CLMP_EN; + + if (nv50->rast->pipe.clamp_vertex_color) + color |= NV50_3D_MAP_SEMANTIC_0_CLMP_EN; + + if (color != nv50->state.semantic_color) { + nv50->state.semantic_color = color; + BEGIN_RING(chan, RING_3D(MAP_SEMANTIC_0), 1); + OUT_RING (chan, color); + } + + if (nv50->rast->pipe.point_size_per_vertex) + psize |= NV50_3D_MAP_SEMANTIC_3_PTSZ_EN__MASK; + + if (psize != nv50->state.semantic_psize) { + nv50->state.semantic_psize = psize; + BEGIN_RING(chan, RING_3D(MAP_SEMANTIC_3), 1); + OUT_RING (chan, psize); + } +} + static int nv50_vec4_map(uint8_t *map, int mid, uint32_t lin[4], struct nv50_varying *in, struct nv50_varying *out) @@ -372,6 +405,9 @@ nv50_fp_linkage_validate(struct nv50_context *nv50) map[m++] = vp->vp.psiz; } + if (nv50->rast->pipe.clamp_vertex_color) + colors |= NV50_3D_MAP_SEMANTIC_0_CLMP_EN; + n = (m + 3) / 4; assert(m <= 64); @@ -404,6 +440,9 @@ nv50_fp_linkage_validate(struct nv50_context *nv50) nv50->state.interpolant_ctrl = interp; + nv50->state.semantic_color = colors; + nv50->state.semantic_psize = psiz; + BEGIN_RING(chan, RING_3D(NOPERSPECTIVE_BITMAP(0)), 4); OUT_RINGp (chan, lin, 4); diff --git a/src/gallium/drivers/nv50/nv50_state.c b/src/gallium/drivers/nv50/nv50_state.c index db257159698..4c96db84e43 100644 --- a/src/gallium/drivers/nv50/nv50_state.c +++ b/src/gallium/drivers/nv50/nv50_state.c @@ -198,6 +198,9 @@ nv50_rasterizer_state_create(struct pipe_context *pipe, SB_BEGIN_3D(so, VERTEX_TWO_SIDE_ENABLE, 1); SB_DATA (so, cso->light_twoside); + SB_BEGIN_3D(so, FRAG_COLOR_CLAMP_EN, 1); + SB_DATA (so, cso->clamp_fragment_color ? 0x11111111 : 0x00000000); + SB_BEGIN_3D(so, LINE_WIDTH, 1); SB_DATA (so, fui(cso->line_width)); SB_BEGIN_3D(so, LINE_SMOOTH_ENABLE, 1); diff --git a/src/gallium/drivers/nv50/nv50_state_validate.c b/src/gallium/drivers/nv50/nv50_state_validate.c index f3d45eb95e0..cdf1a982fcc 100644 --- a/src/gallium/drivers/nv50/nv50_state_validate.c +++ b/src/gallium/drivers/nv50/nv50_state_validate.c @@ -309,7 +309,7 @@ static struct state_validate { { nv50_fp_linkage_validate, NV50_NEW_FRAGPROG | NV50_NEW_VERTPROG | NV50_NEW_GMTYPROG }, { nv50_gp_linkage_validate, NV50_NEW_GMTYPROG | NV50_NEW_VERTPROG }, - { nv50_sprite_coords_validate, NV50_NEW_FRAGPROG | NV50_NEW_RASTERIZER | + { nv50_validate_derived_rs, NV50_NEW_FRAGPROG | NV50_NEW_RASTERIZER | NV50_NEW_VERTPROG | NV50_NEW_GMTYPROG }, { nv50_constbufs_validate, NV50_NEW_CONSTBUF }, { nv50_validate_textures, NV50_NEW_TEXTURES }, diff --git a/src/gallium/drivers/nv50/nv50_stateobj.h b/src/gallium/drivers/nv50/nv50_stateobj.h index 515e3e78d42..cd55ad83f84 100644 --- a/src/gallium/drivers/nv50/nv50_stateobj.h +++ b/src/gallium/drivers/nv50/nv50_stateobj.h @@ -27,7 +27,7 @@ struct nv50_blend_stateobj { struct nv50_rasterizer_stateobj { struct pipe_rasterizer_state pipe; int size; - uint32_t state[40]; + uint32_t state[42]; }; struct nv50_zsa_stateobj { diff --git a/src/gallium/drivers/nvc0/nvc0_screen.c b/src/gallium/drivers/nvc0/nvc0_screen.c index 1047ba3c337..f0f5237de52 100644 --- a/src/gallium/drivers/nvc0/nvc0_screen.c +++ b/src/gallium/drivers/nvc0/nvc0_screen.c @@ -93,6 +93,8 @@ nvc0_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param) return 1; case PIPE_CAP_MAX_RENDER_TARGETS: return 8; + case PIPE_CAP_FRAGMENT_COLOR_CLAMP_CONTROL: + return 1; case PIPE_CAP_TIMER_QUERY: case PIPE_CAP_OCCLUSION_QUERY: return 1; @@ -599,8 +601,6 @@ nvc0_screen_create(struct pipe_winsys *ws, struct nouveau_device *dev) BEGIN_RING(chan, RING_3D(POINT_RASTER_RULES), 1); OUT_RING (chan, NVC0_3D_POINT_RASTER_RULES_OGL); - BEGIN_RING(chan, RING_3D(FRAG_COLOR_CLAMP_EN), 1); - OUT_RING (chan, 0x11111111); BEGIN_RING(chan, RING_3D(EDGEFLAG_ENABLE), 1); OUT_RING (chan, 1); diff --git a/src/gallium/drivers/nvc0/nvc0_shader_state.c b/src/gallium/drivers/nvc0/nvc0_shader_state.c index 7294eaa222e..287160e0b2a 100644 --- a/src/gallium/drivers/nvc0/nvc0_shader_state.c +++ b/src/gallium/drivers/nvc0/nvc0_shader_state.c @@ -97,8 +97,6 @@ nvc0_vertprog_validate(struct nvc0_context *nvc0) // BEGIN_RING(chan, RING_3D_(0x163c), 1); // OUT_RING (chan, 0); - BEGIN_RING(chan, RING_3D(VERT_COLOR_CLAMP_EN), 1); - OUT_RING (chan, 1); } void diff --git a/src/gallium/drivers/nvc0/nvc0_state.c b/src/gallium/drivers/nvc0/nvc0_state.c index ab68abcfb5a..c482b25f6b6 100644 --- a/src/gallium/drivers/nvc0/nvc0_state.c +++ b/src/gallium/drivers/nvc0/nvc0_state.c @@ -183,6 +183,10 @@ nvc0_rasterizer_state_create(struct pipe_context *pipe, SB_IMMED_3D(so, PROVOKING_VERTEX_LAST, !cso->flatshade_first); SB_IMMED_3D(so, VERTEX_TWO_SIDE_ENABLE, cso->light_twoside); + SB_IMMED_3D(so, VERT_COLOR_CLAMP_EN, cso->clamp_vertex_color); + SB_BEGIN_3D(so, FRAG_COLOR_CLAMP_EN, 1); + SB_DATA (so, cso->clamp_fragment_color ? 0x11111111 : 0x00000000); + SB_BEGIN_3D(so, LINE_WIDTH, 1); SB_DATA (so, fui(cso->line_width)); SB_IMMED_3D(so, LINE_SMOOTH_ENABLE, cso->line_smooth); diff --git a/src/gallium/drivers/nvc0/nvc0_stateobj.h b/src/gallium/drivers/nvc0/nvc0_stateobj.h index 8222f9375ee..cc6b04d3578 100644 --- a/src/gallium/drivers/nvc0/nvc0_stateobj.h +++ b/src/gallium/drivers/nvc0/nvc0_stateobj.h @@ -25,7 +25,7 @@ struct nvc0_blend_stateobj { struct nvc0_rasterizer_stateobj { struct pipe_rasterizer_state pipe; int size; - uint32_t state[36]; + uint32_t state[39]; }; struct nvc0_zsa_stateobj { From ee8d182426d4ecda7b9f5089d19d36f7de2a4dfe Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Tue, 29 Mar 2011 17:03:22 -0700 Subject: [PATCH 087/420] intel: Add IS_GT2 macro for recognizing Sandybridge GT2 systems. Also, refactor IS_GEN6 to use the IS_GT1 and IS_GT2 macros. --- src/mesa/drivers/dri/intel/intel_chipset.h | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/src/mesa/drivers/dri/intel/intel_chipset.h b/src/mesa/drivers/dri/intel/intel_chipset.h index 4ff9140d56e..a3f40effc35 100644 --- a/src/mesa/drivers/dri/intel/intel_chipset.h +++ b/src/mesa/drivers/dri/intel/intel_chipset.h @@ -125,18 +125,17 @@ /* Compat macro for intel_decode.c */ #define IS_IRONLAKE(devid) IS_GEN5(devid) -#define IS_GEN6(devid) (devid == PCI_CHIP_SANDYBRIDGE_GT1 || \ - devid == PCI_CHIP_SANDYBRIDGE_GT2 || \ - devid == PCI_CHIP_SANDYBRIDGE_GT2_PLUS || \ - devid == PCI_CHIP_SANDYBRIDGE_M_GT1 || \ - devid == PCI_CHIP_SANDYBRIDGE_M_GT2 || \ - devid == PCI_CHIP_SANDYBRIDGE_M_GT2_PLUS || \ - devid == PCI_CHIP_SANDYBRIDGE_S) - #define IS_GT1(devid) (devid == PCI_CHIP_SANDYBRIDGE_GT1 || \ devid == PCI_CHIP_SANDYBRIDGE_M_GT1 || \ devid == PCI_CHIP_SANDYBRIDGE_S) +#define IS_GT2(devid) (devid == PCI_CHIP_SANDYBRIDGE_GT2 || \ + devid == PCI_CHIP_SANDYBRIDGE_GT2_PLUS || \ + devid == PCI_CHIP_SANDYBRIDGE_M_GT2 || \ + devid == PCI_CHIP_SANDYBRIDGE_M_GT2_PLUS) + +#define IS_GEN6(devid) (IS_GT1(devid) || IS_GT2(devid)) + #define IS_965(devid) (IS_GEN4(devid) || \ IS_G4X(devid) || \ IS_GEN5(devid) || \ From b082e04619224b0affc46fb6953c0efd5685fc17 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michel=20D=C3=A4nzer?= Date: Wed, 30 Mar 2011 09:02:21 +0200 Subject: [PATCH 088/420] Use proper source row stride when getting depth/stencil texels. --- src/mesa/main/texgetimage.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/mesa/main/texgetimage.c b/src/mesa/main/texgetimage.c index 21d9140c550..db2cc840e5e 100644 --- a/src/mesa/main/texgetimage.c +++ b/src/mesa/main/texgetimage.c @@ -159,6 +159,7 @@ get_tex_depth_stencil(struct gl_context *ctx, GLuint dimensions, const GLint width = texImage->Width; const GLint height = texImage->Height; const GLint depth = texImage->Depth; + const GLint rowstride = texImage->RowStride; const GLuint *src = (const GLuint *) texImage->Data; GLint img, row; @@ -172,7 +173,7 @@ get_tex_depth_stencil(struct gl_context *ctx, GLuint dimensions, _mesa_swap4((GLuint *) dest, width); } - src += width * row + width * height * img; + src += rowstride; } } } From 72e82418ef035dd4fb502e7f0a7e2e869ce8a444 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michel=20D=C3=A4nzer?= Date: Wed, 30 Mar 2011 10:48:37 +0200 Subject: [PATCH 089/420] Use row stride instead of width when getting colour index texels. Untested, noticed while working on the depth/stencil fix. --- src/mesa/main/texgetimage.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/mesa/main/texgetimage.c b/src/mesa/main/texgetimage.c index db2cc840e5e..7070a29fb9d 100644 --- a/src/mesa/main/texgetimage.c +++ b/src/mesa/main/texgetimage.c @@ -74,6 +74,7 @@ get_tex_color_index(struct gl_context *ctx, GLuint dimensions, const GLint width = texImage->Width; const GLint height = texImage->Height; const GLint depth = texImage->Depth; + const GLint rowstride = texImage->RowStride; const GLuint indexBits = _mesa_get_format_bits(texImage->TexFormat, GL_TEXTURE_INDEX_SIZE_EXT); const GLbitfield transferOps = 0x0; @@ -89,14 +90,14 @@ get_tex_color_index(struct gl_context *ctx, GLuint dimensions, if (indexBits == 8) { const GLubyte *src = (const GLubyte *) texImage->Data; - src += width * (img * texImage->Height + row); + src += rowstride * (img * height + row); for (col = 0; col < width; col++) { indexRow[col] = src[col]; } } else if (indexBits == 16) { const GLushort *src = (const GLushort *) texImage->Data; - src += width * (img * texImage->Height + row); + src += rowstride * (img * height + row); for (col = 0; col < width; col++) { indexRow[col] = src[col]; } From 167d35c303461dd5d126b7b11f7e6da4377b8b59 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michel=20D=C3=A4nzer?= Date: Wed, 30 Mar 2011 10:20:00 +0200 Subject: [PATCH 090/420] gallium: Use explicit values in caps enums. Simplifies mapping between numbers and identifiers for these. --- src/gallium/include/pipe/p_defines.h | 126 +++++++++++++-------------- 1 file changed, 63 insertions(+), 63 deletions(-) diff --git a/src/gallium/include/pipe/p_defines.h b/src/gallium/include/pipe/p_defines.h index 1c1a8f26454..4c1879c7c24 100644 --- a/src/gallium/include/pipe/p_defines.h +++ b/src/gallium/include/pipe/p_defines.h @@ -414,79 +414,79 @@ enum pipe_transfer_usage { * pipe_screen::get_param() and pipe_screen::get_paramf(). */ enum pipe_cap { - PIPE_CAP_MAX_TEXTURE_IMAGE_UNITS, - PIPE_CAP_NPOT_TEXTURES, - PIPE_CAP_TWO_SIDED_STENCIL, - PIPE_CAP_GLSL, /* XXX need something better */ - PIPE_CAP_DUAL_SOURCE_BLEND, - PIPE_CAP_ANISOTROPIC_FILTER, - PIPE_CAP_POINT_SPRITE, - PIPE_CAP_MAX_RENDER_TARGETS, - PIPE_CAP_OCCLUSION_QUERY, - PIPE_CAP_TIMER_QUERY, - PIPE_CAP_TEXTURE_SHADOW_MAP, - PIPE_CAP_TEXTURE_SWIZZLE, - PIPE_CAP_MAX_TEXTURE_2D_LEVELS, - PIPE_CAP_MAX_TEXTURE_3D_LEVELS, - PIPE_CAP_MAX_TEXTURE_CUBE_LEVELS, - PIPE_CAP_MAX_LINE_WIDTH, - PIPE_CAP_MAX_LINE_WIDTH_AA, - PIPE_CAP_MAX_POINT_WIDTH, - PIPE_CAP_MAX_POINT_WIDTH_AA, - PIPE_CAP_MAX_TEXTURE_ANISOTROPY, - PIPE_CAP_MAX_TEXTURE_LOD_BIAS, - PIPE_CAP_GUARD_BAND_LEFT, /*< float */ - PIPE_CAP_GUARD_BAND_TOP, /*< float */ - PIPE_CAP_GUARD_BAND_RIGHT, /*< float */ - PIPE_CAP_GUARD_BAND_BOTTOM, /*< float */ - PIPE_CAP_TEXTURE_MIRROR_CLAMP, - PIPE_CAP_TEXTURE_MIRROR_REPEAT, - PIPE_CAP_MAX_VERTEX_TEXTURE_UNITS, - PIPE_CAP_BLEND_EQUATION_SEPARATE, - PIPE_CAP_SM3, /*< Shader Model, supported */ - PIPE_CAP_STREAM_OUTPUT, - PIPE_CAP_PRIMITIVE_RESTART, + PIPE_CAP_MAX_TEXTURE_IMAGE_UNITS = 0, + PIPE_CAP_NPOT_TEXTURES = 1, + PIPE_CAP_TWO_SIDED_STENCIL = 2, + PIPE_CAP_GLSL = 3, /* XXX need something better */ + PIPE_CAP_DUAL_SOURCE_BLEND = 4, + PIPE_CAP_ANISOTROPIC_FILTER = 5, + PIPE_CAP_POINT_SPRITE = 6, + PIPE_CAP_MAX_RENDER_TARGETS = 7, + PIPE_CAP_OCCLUSION_QUERY = 8, + PIPE_CAP_TIMER_QUERY = 9, + PIPE_CAP_TEXTURE_SHADOW_MAP = 10, + PIPE_CAP_TEXTURE_SWIZZLE = 11, + PIPE_CAP_MAX_TEXTURE_2D_LEVELS = 12, + PIPE_CAP_MAX_TEXTURE_3D_LEVELS = 13, + PIPE_CAP_MAX_TEXTURE_CUBE_LEVELS = 14, + PIPE_CAP_MAX_LINE_WIDTH = 15, + PIPE_CAP_MAX_LINE_WIDTH_AA = 16, + PIPE_CAP_MAX_POINT_WIDTH = 17, + PIPE_CAP_MAX_POINT_WIDTH_AA = 18, + PIPE_CAP_MAX_TEXTURE_ANISOTROPY = 19, + PIPE_CAP_MAX_TEXTURE_LOD_BIAS = 20, + PIPE_CAP_GUARD_BAND_LEFT = 21, /*< float */ + PIPE_CAP_GUARD_BAND_TOP = 22, /*< float */ + PIPE_CAP_GUARD_BAND_RIGHT = 23, /*< float */ + PIPE_CAP_GUARD_BAND_BOTTOM = 24, /*< float */ + PIPE_CAP_TEXTURE_MIRROR_CLAMP = 25, + PIPE_CAP_TEXTURE_MIRROR_REPEAT = 26, + PIPE_CAP_MAX_VERTEX_TEXTURE_UNITS = 27, + PIPE_CAP_BLEND_EQUATION_SEPARATE = 28, + PIPE_CAP_SM3 = 29, /*< Shader Model, supported */ + PIPE_CAP_STREAM_OUTPUT = 30, + PIPE_CAP_PRIMITIVE_RESTART = 31, /** Maximum texture image units accessible from vertex and fragment shaders * combined */ - PIPE_CAP_MAX_COMBINED_SAMPLERS, + PIPE_CAP_MAX_COMBINED_SAMPLERS = 32, /** blend enables and write masks per rendertarget */ - PIPE_CAP_INDEP_BLEND_ENABLE, + PIPE_CAP_INDEP_BLEND_ENABLE = 33, /** different blend funcs per rendertarget */ - PIPE_CAP_INDEP_BLEND_FUNC, - PIPE_CAP_DEPTHSTENCIL_CLEAR_SEPARATE, - PIPE_CAP_ARRAY_TEXTURES, - PIPE_CAP_TGSI_FS_COORD_ORIGIN_UPPER_LEFT, - PIPE_CAP_TGSI_FS_COORD_ORIGIN_LOWER_LEFT, - PIPE_CAP_TGSI_FS_COORD_PIXEL_CENTER_HALF_INTEGER, - PIPE_CAP_TGSI_FS_COORD_PIXEL_CENTER_INTEGER, - PIPE_CAP_DEPTH_CLAMP, - PIPE_CAP_SHADER_STENCIL_EXPORT, - PIPE_CAP_TGSI_INSTANCEID, - PIPE_CAP_VERTEX_ELEMENT_INSTANCE_DIVISOR, - PIPE_CAP_FRAGMENT_COLOR_CLAMP_CONTROL + PIPE_CAP_INDEP_BLEND_FUNC = 34, + PIPE_CAP_DEPTHSTENCIL_CLEAR_SEPARATE = 35, + PIPE_CAP_ARRAY_TEXTURES = 36, + PIPE_CAP_TGSI_FS_COORD_ORIGIN_UPPER_LEFT = 37, + PIPE_CAP_TGSI_FS_COORD_ORIGIN_LOWER_LEFT = 38, + PIPE_CAP_TGSI_FS_COORD_PIXEL_CENTER_HALF_INTEGER = 39, + PIPE_CAP_TGSI_FS_COORD_PIXEL_CENTER_INTEGER = 40, + PIPE_CAP_DEPTH_CLAMP = 41, + PIPE_CAP_SHADER_STENCIL_EXPORT = 42, + PIPE_CAP_TGSI_INSTANCEID = 43, + PIPE_CAP_VERTEX_ELEMENT_INSTANCE_DIVISOR = 44, + PIPE_CAP_FRAGMENT_COLOR_CLAMP_CONTROL = 45, }; /* Shader caps not specific to any single stage */ enum pipe_shader_cap { - PIPE_SHADER_CAP_MAX_INSTRUCTIONS, /* if 0, it means the stage is unsupported */ - PIPE_SHADER_CAP_MAX_ALU_INSTRUCTIONS, - PIPE_SHADER_CAP_MAX_TEX_INSTRUCTIONS, - PIPE_SHADER_CAP_MAX_TEX_INDIRECTIONS, - PIPE_SHADER_CAP_MAX_CONTROL_FLOW_DEPTH, - PIPE_SHADER_CAP_MAX_INPUTS, - PIPE_SHADER_CAP_MAX_CONSTS, - PIPE_SHADER_CAP_MAX_CONST_BUFFERS, - PIPE_SHADER_CAP_MAX_TEMPS, - PIPE_SHADER_CAP_MAX_ADDRS, - PIPE_SHADER_CAP_MAX_PREDS, + PIPE_SHADER_CAP_MAX_INSTRUCTIONS = 0, /* if 0, it means the stage is unsupported */ + PIPE_SHADER_CAP_MAX_ALU_INSTRUCTIONS = 1, + PIPE_SHADER_CAP_MAX_TEX_INSTRUCTIONS = 2, + PIPE_SHADER_CAP_MAX_TEX_INDIRECTIONS = 3, + PIPE_SHADER_CAP_MAX_CONTROL_FLOW_DEPTH = 4, + PIPE_SHADER_CAP_MAX_INPUTS = 5, + PIPE_SHADER_CAP_MAX_CONSTS = 6, + PIPE_SHADER_CAP_MAX_CONST_BUFFERS = 7, + PIPE_SHADER_CAP_MAX_TEMPS = 8, + PIPE_SHADER_CAP_MAX_ADDRS = 9, + PIPE_SHADER_CAP_MAX_PREDS = 10, /* boolean caps */ - PIPE_SHADER_CAP_TGSI_CONT_SUPPORTED, - PIPE_SHADER_CAP_INDIRECT_INPUT_ADDR, - PIPE_SHADER_CAP_INDIRECT_OUTPUT_ADDR, - PIPE_SHADER_CAP_INDIRECT_TEMP_ADDR, - PIPE_SHADER_CAP_INDIRECT_CONST_ADDR, - PIPE_SHADER_CAP_SUBROUTINES, /* BGNSUB, ENDSUB, CAL, RET */ + PIPE_SHADER_CAP_TGSI_CONT_SUPPORTED = 11, + PIPE_SHADER_CAP_INDIRECT_INPUT_ADDR = 12, + PIPE_SHADER_CAP_INDIRECT_OUTPUT_ADDR = 13, + PIPE_SHADER_CAP_INDIRECT_TEMP_ADDR = 14, + PIPE_SHADER_CAP_INDIRECT_CONST_ADDR = 15, + PIPE_SHADER_CAP_SUBROUTINES = 16, /* BGNSUB, ENDSUB, CAL, RET */ }; From f5a9a0bc22c4b717c2c32f4ddf283878d6c7ba93 Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Wed, 30 Mar 2011 10:54:31 +0100 Subject: [PATCH 091/420] Revert "intel: Add some defense against buffer allocation failure for subimage blits" This reverts commit de7678ef521f4fb34459e407a66ab8bf8be733e1. The conversion from using drm_intel_bo_alloc_tiled to a plain drm_intel_bo_alloc forgot that the tiled variant adjusts the allocation height even for TILING_NONE. Reported-by: Dave Airlie Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=35786 Signed-off-by: Chris Wilson --- .../drivers/dri/intel/intel_tex_subimage.c | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/src/mesa/drivers/dri/intel/intel_tex_subimage.c b/src/mesa/drivers/dri/intel/intel_tex_subimage.c index d0f8294113a..6b7f13ff353 100644 --- a/src/mesa/drivers/dri/intel/intel_tex_subimage.c +++ b/src/mesa/drivers/dri/intel/intel_tex_subimage.c @@ -90,19 +90,19 @@ intelTexSubimage(struct gl_context * ctx, intel->gen < 6 && target == GL_TEXTURE_2D && drm_intel_bo_busy(dst_bo)) { - dstRowStride = width * intelImage->mt->cpp; - temp_bo = drm_intel_bo_alloc(intel->bufmgr, "subimage blit bo", - dstRowStride * height, 0); - if (!temp_bo) - return; - - if (drm_intel_gem_bo_map_gtt(temp_bo)) { - drm_intel_bo_unreference(temp_bo); - return; - } - + unsigned long pitch; + uint32_t tiling_mode = I915_TILING_NONE; + temp_bo = drm_intel_bo_alloc_tiled(intel->bufmgr, + "subimage blit bo", + width, height, + intelImage->mt->cpp, + &tiling_mode, + &pitch, + 0); + drm_intel_gem_bo_map_gtt(temp_bo); texImage->Data = temp_bo->virtual; texImage->ImageOffsets[0] = 0; + dstRowStride = pitch; intel_miptree_get_image_offset(intelImage->mt, level, intelImage->face, 0, From 5eb9f687087a4bc71775a32efcd848fc6cd67694 Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Fri, 4 Mar 2011 15:04:36 +0000 Subject: [PATCH 092/420] intel: Add some defense against buffer allocation failure for subimage blits Once more! This time without the unwarranted conversion from drm_intel_bo_alloc_tiled. Signed-off-by: [a very embarrassed] Chris Wilson --- src/mesa/drivers/dri/intel/intel_tex_subimage.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/mesa/drivers/dri/intel/intel_tex_subimage.c b/src/mesa/drivers/dri/intel/intel_tex_subimage.c index 6b7f13ff353..8b43c406cf9 100644 --- a/src/mesa/drivers/dri/intel/intel_tex_subimage.c +++ b/src/mesa/drivers/dri/intel/intel_tex_subimage.c @@ -92,6 +92,7 @@ intelTexSubimage(struct gl_context * ctx, { unsigned long pitch; uint32_t tiling_mode = I915_TILING_NONE; + temp_bo = drm_intel_bo_alloc_tiled(intel->bufmgr, "subimage blit bo", width, height, @@ -99,7 +100,14 @@ intelTexSubimage(struct gl_context * ctx, &tiling_mode, &pitch, 0); - drm_intel_gem_bo_map_gtt(temp_bo); + if (temp_bo == NULL) + return; + + if (drm_intel_gem_bo_map_gtt(temp_bo)) { + drm_intel_bo_unreference(temp_bo); + return; + } + texImage->Data = temp_bo->virtual; texImage->ImageOffsets[0] = 0; dstRowStride = pitch; From 58f95f9d01f1fe2c260ca87f1ee74d9710947c12 Mon Sep 17 00:00:00 2001 From: "Feng, Haitao" Date: Tue, 29 Mar 2011 13:41:35 +0800 Subject: [PATCH 093/420] egl_dri2 x11: Fix a typo Signed-off-by: Haitao Feng --- src/egl/drivers/dri2/platform_x11.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/egl/drivers/dri2/platform_x11.c b/src/egl/drivers/dri2/platform_x11.c index 30372caadcd..e7fe95da8e8 100644 --- a/src/egl/drivers/dri2/platform_x11.c +++ b/src/egl/drivers/dri2/platform_x11.c @@ -231,7 +231,7 @@ dri2_create_surface(_EGLDriver *drv, _EGLDisplay *disp, EGLint type, if (dri2_dpy->dri2) { xcb_dri2_create_drawable (dri2_dpy->conn, dri2_surf->drawable); } else { - swrastCreateDrawable(dri2_dpy, dri2_surf, _eglGetConfigKey(conf, EGL_DEPTH_SIZE)); + swrastCreateDrawable(dri2_dpy, dri2_surf, _eglGetConfigKey(conf, EGL_BUFFER_SIZE)); } if (type != EGL_PBUFFER_BIT) { From 6584d0cd4fa3a3255a4c0962f31338601df705cb Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Wed, 30 Mar 2011 15:10:50 +0100 Subject: [PATCH 094/420] intel: Remove the unrelaxed relocation assertion Now that we purposefully generate delta that point outside of the target buffer, the assertion has outlived its usefulness. Signed-off-by: Chris Wilson --- src/mesa/drivers/dri/intel/intel_batchbuffer.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/mesa/drivers/dri/intel/intel_batchbuffer.c b/src/mesa/drivers/dri/intel/intel_batchbuffer.c index 42b4f923e0c..53d6e7c6acc 100644 --- a/src/mesa/drivers/dri/intel/intel_batchbuffer.c +++ b/src/mesa/drivers/dri/intel/intel_batchbuffer.c @@ -176,8 +176,6 @@ intel_batchbuffer_emit_reloc(struct intel_context *intel, { int ret; - assert(delta < buffer->size); - ret = drm_intel_bo_emit_reloc(intel->batch.bo, 4*intel->batch.used, buffer, delta, read_domains, write_domain); @@ -203,8 +201,6 @@ intel_batchbuffer_emit_reloc_fenced(struct intel_context *intel, { int ret; - assert(delta < buffer->size); - ret = drm_intel_bo_emit_reloc_fence(intel->batch.bo, 4*intel->batch.used, buffer, delta, read_domains, write_domain); From 713230ff39cd22a2082c12b937889c3ef81973ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Tue, 29 Mar 2011 15:35:30 +0100 Subject: [PATCH 095/420] draw: Fix bug when drawing ushort indices. When the condition min_index == 0 && sizeof(ib[0]) == sizeof(draw_elts[0]) was true, we were wrongly ignoring istart and processing indices 0. Reorder some statements to make the code easier to understand. --- src/gallium/auxiliary/draw/draw_pt_vsplit_tmp.h | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/gallium/auxiliary/draw/draw_pt_vsplit_tmp.h b/src/gallium/auxiliary/draw/draw_pt_vsplit_tmp.h index 75dba8c39a5..228da68d411 100644 --- a/src/gallium/auxiliary/draw/draw_pt_vsplit_tmp.h +++ b/src/gallium/auxiliary/draw/draw_pt_vsplit_tmp.h @@ -47,13 +47,18 @@ CONCAT(vsplit_primitive_, ELT_TYPE)(struct vsplit_frontend *vsplit, const ushort *draw_elts = NULL; unsigned i; + ib += istart; + + fetch_start = min_index + elt_bias; + fetch_count = max_index - min_index + 1; + /* use the ib directly */ if (min_index == 0 && sizeof(ib[0]) == sizeof(draw_elts[0])) { if (icount > vsplit->max_vertices) return FALSE; for (i = 0; i < icount; i++) { - ELT_TYPE idx = ib[istart + i]; + ELT_TYPE idx = ib[i]; assert(idx >= min_index && idx <= max_index); } draw_elts = (const ushort *) ib; @@ -65,7 +70,7 @@ CONCAT(vsplit_primitive_, ELT_TYPE)(struct vsplit_frontend *vsplit, } /* this is faster only when we fetch less elements than the normal path */ - if (max_index - min_index > icount - 1) + if (fetch_count > icount) return FALSE; if (elt_bias < 0 && min_index < -elt_bias) @@ -77,13 +82,10 @@ CONCAT(vsplit_primitive_, ELT_TYPE)(struct vsplit_frontend *vsplit, return FALSE; } - fetch_start = min_index + elt_bias; - fetch_count = max_index - min_index + 1; - if (!draw_elts) { if (min_index == 0) { for (i = 0; i < icount; i++) { - ELT_TYPE idx = ib[istart + i]; + ELT_TYPE idx = ib[i]; assert(idx >= min_index && idx <= max_index); vsplit->draw_elts[i] = (ushort) idx; From dcad6fb670ccc533167d1ae360833989c1eb4823 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Wed, 30 Mar 2011 16:08:42 +0100 Subject: [PATCH 096/420] draw: Forgot to remove one istart usage. --- src/gallium/auxiliary/draw/draw_pt_vsplit_tmp.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gallium/auxiliary/draw/draw_pt_vsplit_tmp.h b/src/gallium/auxiliary/draw/draw_pt_vsplit_tmp.h index 228da68d411..2acaef3f3d5 100644 --- a/src/gallium/auxiliary/draw/draw_pt_vsplit_tmp.h +++ b/src/gallium/auxiliary/draw/draw_pt_vsplit_tmp.h @@ -93,7 +93,7 @@ CONCAT(vsplit_primitive_, ELT_TYPE)(struct vsplit_frontend *vsplit, } else { for (i = 0; i < icount; i++) { - ELT_TYPE idx = ib[istart + i]; + ELT_TYPE idx = ib[i]; assert(idx >= min_index && idx <= max_index); vsplit->draw_elts[i] = (ushort) (idx - min_index); From ebe304fa540f98d047382297f448fec692a67b8b Mon Sep 17 00:00:00 2001 From: Jerome Glisse Date: Mon, 28 Mar 2011 17:45:31 -0400 Subject: [PATCH 097/420] gallium: list use inline function to avoid macro shot coming Macro can lead to hard to debug list bugs. For instance consider the following : LIST_ADD(item, list->prev) 3 instruction of the macro became : (list->prev)->next->prev = item which is equivalent to : list->prev = item Thus list prev field changes and next instruction in the macro (list->prev)->next = item became : item->next = item And you endup with list corruption, other case lead to similar list corruption. Inline function are not affected by this short coming Signed-off-by: Jerome Glisse --- src/gallium/auxiliary/util/u_double_list.h | 100 +++++++++++++-------- 1 file changed, 62 insertions(+), 38 deletions(-) diff --git a/src/gallium/auxiliary/util/u_double_list.h b/src/gallium/auxiliary/util/u_double_list.h index 42adb1f0699..2384c36cb13 100644 --- a/src/gallium/auxiliary/util/u_double_list.h +++ b/src/gallium/auxiliary/util/u_double_list.h @@ -39,6 +39,7 @@ #include +#include "pipe/p_compiler.h" struct list_head @@ -47,50 +48,56 @@ struct list_head struct list_head *next; }; +static INLINE void list_inithead(struct list_head *item) +{ + item->prev = item; + item->next = item; +} -#define LIST_INITHEAD(__item) \ - do { \ - (__item)->prev = (__item); \ - (__item)->next = (__item); \ - } while (0) +static INLINE void list_add(struct list_head *item, struct list_head *list) +{ + item->prev = list; + item->next = list->next; + list->next->prev = item; + list->next = item; +} -#define LIST_ADD(__item, __list) \ - do { \ - (__item)->prev = (__list); \ - (__item)->next = (__list)->next; \ - (__list)->next->prev = (__item); \ - (__list)->next = (__item); \ - } while (0) +static INLINE void list_addtail(struct list_head *item, struct list_head *list) +{ + item->next = list; + item->prev = list->prev; + list->prev->next = item; + list->prev = item; +} -#define LIST_ADDTAIL(__item, __list) \ - do { \ - (__item)->next = (__list); \ - (__item)->prev = (__list)->prev; \ - (__list)->prev->next = (__item); \ - (__list)->prev = (__item); \ - } while(0) +static INLINE void list_replace(struct list_head *from, struct list_head *to) +{ + to->prev = from->prev; + to->next = from->next; + from->next->prev = to; + from->prev->next = to; +} -#define LIST_REPLACE(__from, __to) \ - do { \ - (__to)->prev = (__from)->prev; \ - (__to)->next = (__from)->next; \ - (__from)->next->prev = (__to); \ - (__from)->prev->next = (__to); \ - } while (0) +static INLINE void list_del(struct list_head *item) +{ + item->prev->next = item->next; + item->next->prev = item->prev; +} -#define LIST_DEL(__item) \ - do { \ - (__item)->prev->next = (__item)->next; \ - (__item)->next->prev = (__item)->prev; \ - } while(0) +static INLINE void list_delinit(struct list_head *item) +{ + item->prev->next = item->next; + item->next->prev = item->prev; + item->next = item; + item->prev = item; +} -#define LIST_DELINIT(__item) \ - do { \ - (__item)->prev->next = (__item)->next; \ - (__item)->next->prev = (__item)->prev; \ - (__item)->next = (__item); \ - (__item)->prev = (__item); \ - } while(0) +#define LIST_INITHEAD(__item) list_inithead(__item) +#define LIST_ADD(__item, __list) list_add(__item, __list) +#define LIST_ADDTAIL(__item, __list) list_addtail(__item, __list) +#define LIST_REPLACE(__from, __to) list_replace(__from, __to) +#define LIST_DEL(__item) list_del(__item) +#define LIST_DELINIT(__item) list_delinit(__item) #define LIST_ENTRY(__type, __item, __field) \ ((__type *)(((char *)(__item)) - offsetof(__type, __field))) @@ -114,4 +121,21 @@ struct list_head storage = container_of(pos->member.next, pos, member); \ &pos->member != (head); \ pos = storage, storage = container_of(storage->member.next, storage, member)) + +#define LIST_FOR_EACH_ENTRY_SAFE_REV(pos, storage, head, member) \ + for (pos = container_of((head)->prev, pos, member), \ + storage = container_of(pos->member.prev, pos, member); \ + &pos->member != (head); \ + pos = storage, storage = container_of(storage->member.prev, storage, member)) + +#define LIST_FOR_EACH_ENTRY_FROM(pos, start, head, member) \ + for (pos = container_of((start), pos, member); \ + &pos->member != (head); \ + pos = container_of(pos->member.next, pos, member)) + +#define LIST_FOR_EACH_ENTRY_FROM_REV(pos, start, head, member) \ + for (pos = container_of((start), pos, member); \ + &pos->member != (head); \ + pos = container_of(pos->member.prev, pos, member)) + #endif /*_U_DOUBLE_LIST_H_*/ From 5f996e2b1d09dad64c088ccabb1a4a53ebfb8102 Mon Sep 17 00:00:00 2001 From: Luca Barbieri Date: Wed, 16 Feb 2011 00:25:54 +0100 Subject: [PATCH 098/420] draw: implement vertex color clamping, and disable SSE and PPC paths MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit (some little changes by Marek Olšák) Squashed commit of the following: commit 737c0c6b7d591ac0fc969a7590e1691eeef0ce5e Author: Luca Barbieri Date: Fri Aug 27 02:13:57 2010 +0200 draw: disable SSE and PPC paths (use LLVM instead) These paths don't support vertex clamping, and are anyway obsoleted by LLVM. If you want to re-enable them, add vertex clamping and test that it works with the ARB_color_buffer_float piglit tests. commit fed3486a7ca0683b403913604a26ee49a3ef48c7 Author: Luca Barbieri Date: Thu Aug 26 18:27:38 2010 +0200 draw_llvm: respect vertex color clamp commit ef0efe9f3d1d0f9b40ebab78940491d2154277a9 Author: Luca Barbieri Date: Thu Aug 26 18:26:43 2010 +0200 draw: respect vertex clamping in interpreter path --- src/gallium/auxiliary/draw/draw_llvm.c | 35 +++++++++++++++++++++-- src/gallium/auxiliary/draw/draw_llvm.h | 3 +- src/gallium/auxiliary/draw/draw_vs.c | 7 +++++ src/gallium/auxiliary/draw/draw_vs_exec.c | 22 ++++++++++---- 4 files changed, 58 insertions(+), 9 deletions(-) diff --git a/src/gallium/auxiliary/draw/draw_llvm.c b/src/gallium/auxiliary/draw/draw_llvm.c index a5217c1d4ec..27c5f3bff5a 100644 --- a/src/gallium/auxiliary/draw/draw_llvm.c +++ b/src/gallium/auxiliary/draw/draw_llvm.c @@ -438,7 +438,8 @@ generate_vs(struct draw_llvm *llvm, const LLVMValueRef (*inputs)[NUM_CHANNELS], LLVMValueRef system_values_array, LLVMValueRef context_ptr, - struct lp_build_sampler_soa *draw_sampler) + struct lp_build_sampler_soa *draw_sampler, + boolean clamp_vertex_color) { const struct tgsi_token *tokens = llvm->draw->vs.vertex_shader->state.tokens; struct lp_type vs_type; @@ -474,6 +475,30 @@ generate_vs(struct draw_llvm *llvm, outputs, sampler, &llvm->draw->vs.vertex_shader->info); + + if(clamp_vertex_color) + { + LLVMValueRef out; + unsigned chan, attrib; + struct lp_build_context bld; + struct tgsi_shader_info* info = &llvm->draw->vs.vertex_shader->info; + lp_build_context_init(&bld, llvm->gallivm, vs_type); + + for (attrib = 0; attrib < info->num_outputs; ++attrib) { + for(chan = 0; chan < NUM_CHANNELS; ++chan) { + if(outputs[attrib][chan]) { + switch (info->output_semantic_name[attrib]) { + case TGSI_SEMANTIC_COLOR: + case TGSI_SEMANTIC_BCOLOR: + out = LLVMBuildLoad(builder, outputs[attrib][chan], ""); + out = lp_build_clamp(&bld, out, bld.zero, bld.one); + LLVMBuildStore(builder, out, outputs[attrib][chan]); + break; + } + } + } + } + } } #if DEBUG_STORE @@ -1235,7 +1260,8 @@ draw_llvm_generate(struct draw_llvm *llvm, struct draw_llvm_variant *variant) ptr_aos, system_values_array, context_ptr, - sampler); + sampler, + variant->key.clamp_vertex_color); /* store original positions in clip before further manipulation */ store_clip(gallivm, io, outputs); @@ -1446,7 +1472,8 @@ draw_llvm_generate_elts(struct draw_llvm *llvm, struct draw_llvm_variant *varian ptr_aos, system_values_array, context_ptr, - sampler); + sampler, + variant->key.clamp_vertex_color); /* store original positions in clip before further manipulation */ store_clip(gallivm, io, outputs); @@ -1524,6 +1551,8 @@ draw_llvm_make_variant_key(struct draw_llvm *llvm, char *store) key = (struct draw_llvm_variant_key *)store; + key->clamp_vertex_color = llvm->draw->rasterizer->clamp_vertex_color; /**/ + /* Presumably all variants of the shader should have the same * number of vertex elements - ie the number of shader inputs. */ diff --git a/src/gallium/auxiliary/draw/draw_llvm.h b/src/gallium/auxiliary/draw/draw_llvm.h index e8623e7bcdc..873a272e98b 100644 --- a/src/gallium/auxiliary/draw/draw_llvm.h +++ b/src/gallium/auxiliary/draw/draw_llvm.h @@ -162,6 +162,7 @@ struct draw_llvm_variant_key { unsigned nr_vertex_elements:8; unsigned nr_samplers:8; + unsigned clamp_vertex_color:1; unsigned clip_xy:1; unsigned clip_z:1; unsigned clip_user:1; @@ -169,7 +170,7 @@ struct draw_llvm_variant_key unsigned bypass_viewport:1; unsigned need_edgeflags:1; unsigned nr_planes:4; - unsigned pad:6; + unsigned pad:5; /* Variable number of vertex elements: */ diff --git a/src/gallium/auxiliary/draw/draw_vs.c b/src/gallium/auxiliary/draw/draw_vs.c index 7caad6f0053..1763dbc199f 100644 --- a/src/gallium/auxiliary/draw/draw_vs.c +++ b/src/gallium/auxiliary/draw/draw_vs.c @@ -104,10 +104,17 @@ draw_create_vertex_shader(struct draw_context *draw, } if (!draw->pt.middle.llvm) { +#if 0 +/* these paths don't support vertex clamping + * TODO: either add it, or remove them completely + * use LLVM instead if you want performance + * use exec instead if you want debugging/more correctness + */ #if defined(PIPE_ARCH_X86) vs = draw_create_vs_sse( draw, shader ); #elif defined(PIPE_ARCH_PPC) vs = draw_create_vs_ppc( draw, shader ); +#endif #endif } #if HAVE_LLVM diff --git a/src/gallium/auxiliary/draw/draw_vs_exec.c b/src/gallium/auxiliary/draw/draw_vs_exec.c index c41d7c42a01..d9c4209a42b 100644 --- a/src/gallium/auxiliary/draw/draw_vs_exec.c +++ b/src/gallium/auxiliary/draw/draw_vs_exec.c @@ -95,6 +95,7 @@ vs_exec_run_linear( struct draw_vertex_shader *shader, struct tgsi_exec_machine *machine = evs->machine; unsigned int i, j; unsigned slot; + boolean clamp_vertex_color = shader->draw->rasterizer->clamp_vertex_color; tgsi_exec_set_constant_buffers(machine, PIPE_MAX_CONSTANT_BUFFERS, constants, const_size); @@ -151,11 +152,22 @@ vs_exec_run_linear( struct draw_vertex_shader *shader, */ for (j = 0; j < max_vertices; j++) { for (slot = 0; slot < shader->info.num_outputs; slot++) { - output[slot][0] = machine->Outputs[slot].xyzw[0].f[j]; - output[slot][1] = machine->Outputs[slot].xyzw[1].f[j]; - output[slot][2] = machine->Outputs[slot].xyzw[2].f[j]; - output[slot][3] = machine->Outputs[slot].xyzw[3].f[j]; - + unsigned name = shader->info.output_semantic_name[slot]; + if(clamp_vertex_color && + (name == TGSI_SEMANTIC_COLOR || name == TGSI_SEMANTIC_BCOLOR)) + { + output[slot][0] = CLAMP(machine->Outputs[slot].xyzw[0].f[j], 0.0f, 1.0f); + output[slot][1] = CLAMP(machine->Outputs[slot].xyzw[1].f[j], 0.0f, 1.0f); + output[slot][2] = CLAMP(machine->Outputs[slot].xyzw[2].f[j], 0.0f, 1.0f); + output[slot][3] = CLAMP(machine->Outputs[slot].xyzw[3].f[j], 0.0f, 1.0f); + } + else + { + output[slot][0] = machine->Outputs[slot].xyzw[0].f[j]; + output[slot][1] = machine->Outputs[slot].xyzw[1].f[j]; + output[slot][2] = machine->Outputs[slot].xyzw[2].f[j]; + output[slot][3] = machine->Outputs[slot].xyzw[3].f[j]; + } } #if 0 From c40b7910ee1338b9d391816df5391ce43f509ef0 Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Thu, 31 Mar 2011 11:41:46 +0100 Subject: [PATCH 099/420] intel: Fix regression in clear_with_blit from 7bae1c3d Oops, the mask was being used in the loop to determine whether to use include the stencil || depth values. This began to fail when mask was cleared at the beginning of the loop. So reorder the tests and do the work up-front along with determining the depth_stencil value to use. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=35822 Signed-off-by: Chris Wilson --- src/mesa/drivers/dri/intel/intel_blit.c | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/src/mesa/drivers/dri/intel/intel_blit.c b/src/mesa/drivers/dri/intel/intel_blit.c index d6a648c49ad..487c9ea7818 100644 --- a/src/mesa/drivers/dri/intel/intel_blit.c +++ b/src/mesa/drivers/dri/intel/intel_blit.c @@ -211,7 +211,7 @@ intelClearWithBlit(struct gl_context *ctx, GLbitfield mask) { struct intel_context *intel = intel_context(ctx); struct gl_framebuffer *fb = ctx->DrawBuffer; - GLuint clear_depth; + GLuint clear_depth_value, clear_depth_mask; GLboolean all; GLint cx, cy, cw, ch; GLbitfield fail_mask = 0; @@ -220,12 +220,15 @@ intelClearWithBlit(struct gl_context *ctx, GLbitfield mask) /* * Compute values for clearing the buffers. */ - clear_depth = 0; + clear_depth_value = 0; + clear_depth_mask = 0; if (mask & BUFFER_BIT_DEPTH) { - clear_depth = (GLuint) (fb->_DepthMax * ctx->Depth.Clear); + clear_depth_value = (GLuint) (fb->_DepthMax * ctx->Depth.Clear); + clear_depth_mask = XY_BLT_WRITE_RGB; } if (mask & BUFFER_BIT_STENCIL) { - clear_depth |= (ctx->Stencil.Clear & 0xff) << 24; + clear_depth_value |= (ctx->Stencil.Clear & 0xff) << 24; + clear_depth_mask |= XY_BLT_WRITE_ALPHA; } cx = fb->_Xmin; @@ -245,6 +248,7 @@ intelClearWithBlit(struct gl_context *ctx, GLbitfield mask) mask &= (1 << BUFFER_COUNT) - 1; while (mask) { GLuint buf = _mesa_ffs(mask) - 1; + GLboolean is_depth_stencil = buf == BUFFER_DEPTH || buf == BUFFER_STENCIL; struct intel_renderbuffer *irb; drm_intel_bo *write_buffer; int x1, y1, x2, y2; @@ -283,11 +287,8 @@ intelClearWithBlit(struct gl_context *ctx, GLbitfield mask) /* Setup the blit command */ if (cpp == 4) { - if (buf == BUFFER_DEPTH || buf == BUFFER_STENCIL) { - if (mask & BUFFER_BIT_DEPTH) - CMD |= XY_BLT_WRITE_RGB; - if (mask & BUFFER_BIT_STENCIL) - CMD |= XY_BLT_WRITE_ALPHA; + if (is_depth_stencil) { + CMD |= clear_depth_mask; } else { /* clearing RGBA */ CMD |= XY_BLT_WRITE_ALPHA | XY_BLT_WRITE_RGB; @@ -304,8 +305,8 @@ intelClearWithBlit(struct gl_context *ctx, GLbitfield mask) #endif BR13 |= (pitch * cpp); - if (buf == BUFFER_DEPTH || buf == BUFFER_STENCIL) { - clear_val = clear_depth; + if (is_depth_stencil) { + clear_val = clear_depth_value; } else { uint8_t clear[4]; GLclampf *color = ctx->Color.ClearColor; From 3dedd39cdd198afa54ba5b53384d6be2040f9485 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Thu, 31 Mar 2011 12:20:10 +0100 Subject: [PATCH 100/420] draw: Revert code reorg in previous change. Because fetch_count = max_index - min_index + 1 overflows for min_index = 0 and max_index = 0xffffffff. Fixes fdo 35815. --- src/gallium/auxiliary/draw/draw_pt_vsplit_tmp.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/gallium/auxiliary/draw/draw_pt_vsplit_tmp.h b/src/gallium/auxiliary/draw/draw_pt_vsplit_tmp.h index 2acaef3f3d5..10842a36e8a 100644 --- a/src/gallium/auxiliary/draw/draw_pt_vsplit_tmp.h +++ b/src/gallium/auxiliary/draw/draw_pt_vsplit_tmp.h @@ -49,9 +49,6 @@ CONCAT(vsplit_primitive_, ELT_TYPE)(struct vsplit_frontend *vsplit, ib += istart; - fetch_start = min_index + elt_bias; - fetch_count = max_index - min_index + 1; - /* use the ib directly */ if (min_index == 0 && sizeof(ib[0]) == sizeof(draw_elts[0])) { if (icount > vsplit->max_vertices) @@ -70,7 +67,7 @@ CONCAT(vsplit_primitive_, ELT_TYPE)(struct vsplit_frontend *vsplit, } /* this is faster only when we fetch less elements than the normal path */ - if (fetch_count > icount) + if (max_index - min_index > icount - 1) return FALSE; if (elt_bias < 0 && min_index < -elt_bias) @@ -82,6 +79,9 @@ CONCAT(vsplit_primitive_, ELT_TYPE)(struct vsplit_frontend *vsplit, return FALSE; } + fetch_start = min_index + elt_bias; + fetch_count = max_index - min_index + 1; + if (!draw_elts) { if (min_index == 0) { for (i = 0; i < icount; i++) { From 3f625689acd570e4f14cc2ebaa43a425d13954ff Mon Sep 17 00:00:00 2001 From: Christoph Bumiller Date: Thu, 31 Mar 2011 15:49:33 +0200 Subject: [PATCH 101/420] nv50: copy regalloc fixes from nvc0 Should fix gnome-shell's fade shader. Unification of the shader backend which is supposed to remove the code duplication is still WIP. --- src/gallium/drivers/nv50/nv50_pc.h | 11 + src/gallium/drivers/nv50/nv50_pc_regalloc.c | 287 ++++++++++++++------ 2 files changed, 217 insertions(+), 81 deletions(-) diff --git a/src/gallium/drivers/nv50/nv50_pc.h b/src/gallium/drivers/nv50/nv50_pc.h index e6f3815bafe..a9a3248038b 100644 --- a/src/gallium/drivers/nv50/nv50_pc.h +++ b/src/gallium/drivers/nv50/nv50_pc.h @@ -228,6 +228,8 @@ struct nv_ref { ubyte flags; /* not used yet */ }; +#define NV_REF_FLAG_REGALLOC_PRIV (1 << 0) + struct nv_basic_block; struct nv_instruction { @@ -263,6 +265,15 @@ struct nv_instruction { ubyte quadop; }; +static INLINE int +nvi_vector_size(struct nv_instruction *nvi) +{ + int i; + assert(nvi); + for (i = 0; i < 4 && nvi->def[i]; ++i); + return i; +} + #define CFG_EDGE_FORWARD 0 #define CFG_EDGE_BACK 1 #define CFG_EDGE_LOOP_ENTER 2 diff --git a/src/gallium/drivers/nv50/nv50_pc_regalloc.c b/src/gallium/drivers/nv50/nv50_pc_regalloc.c index 39ae36681c0..657df2c589b 100644 --- a/src/gallium/drivers/nv50/nv50_pc_regalloc.c +++ b/src/gallium/drivers/nv50/nv50_pc_regalloc.c @@ -32,14 +32,39 @@ #include "util/u_simple_list.h" #define NUM_REGISTER_FILES 4 +#define MAX_REGISTER_COUNT 256 struct register_set { struct nv_pc *pc; uint32_t last[NUM_REGISTER_FILES]; - uint32_t bits[NUM_REGISTER_FILES][8]; + uint32_t bits[NUM_REGISTER_FILES][(MAX_REGISTER_COUNT + 31) / 32]; }; +/* using OR because a set bit means occupied/unavailable, aliasing is allowed */ +static void +intersect_register_sets(struct register_set *dst, + struct register_set *src1, struct register_set *src2) +{ + int i, j; + + for (i = 0; i < NUM_REGISTER_FILES; ++i) { + for (j = 0; j < (MAX_REGISTER_COUNT + 31) / 32; ++j) + dst->bits[i][j] = src1->bits[i][j] | src2->bits[i][j]; + } +} + +static void +mask_register_set(struct register_set *set, uint32_t mask, uint32_t umask) +{ + int i, j; + + for (i = 0; i < NUM_REGISTER_FILES; ++i) { + for (j = 0; j < (MAX_REGISTER_COUNT + 31) / 32; ++j) + set->bits[i][j] = (set->bits[i][j] | mask) & umask; + } +} + struct nv_pc_pass { struct nv_pc *pc; @@ -61,11 +86,15 @@ ranges_coalesce(struct nv_range *range) } } +/* @return: TRUE if @new_range can be freed (i.e. was not reused) */ static boolean add_range_ex(struct nv_value *val, int bgn, int end, struct nv_range *new_range) { struct nv_range *range, **nextp = &val->livei; + if (bgn == end) /* [a, a) is invalid / empty */ + return TRUE; + for (range = val->livei; range; range = range->next) { if (end < range->bgn) break; /* insert before */ @@ -251,6 +280,8 @@ reg_occupy(struct register_set *set, struct nv_value *val) id <<= s; m = (1 << (1 << s)) - 1; + assert(s >= 0); /* XXX: remove me */ + set->bits[f][id / 32] |= m << (id % 32); if (set->pc->max_reg[f] < id) @@ -286,15 +317,12 @@ join_allowed(struct nv_pc_pass *ctx, struct nv_value *a, struct nv_value *b) if (a->join->reg.id == b->join->reg.id) return TRUE; -#if 1 /* either a or b or both have been assigned */ if (a->join->reg.id >= 0 && b->join->reg.id >= 0) return FALSE; else if (b->join->reg.id >= 0) { - if (a->join->reg.id >= 0) - return FALSE; val = a; a = b; b = val; @@ -309,8 +337,6 @@ join_allowed(struct nv_pc_pass *ctx, struct nv_value *a, struct nv_value *b) return FALSE; } return TRUE; -#endif - return FALSE; } static INLINE void @@ -336,14 +362,14 @@ do_join_values(struct nv_pc_pass *ctx, struct nv_value *a, struct nv_value *b) assert(b->join == a->join); } -static INLINE void +static INLINE boolean try_join_values(struct nv_pc_pass *ctx, struct nv_value *a, struct nv_value *b) { if (!join_allowed(ctx, a, b)) { #ifdef NV50_RA_DEBUG_JOIN debug_printf("cannot join %i to %i: not allowed\n", b->n, a->n); #endif - return; + return FALSE; } if (livei_have_overlap(a->join, b->join)) { #ifdef NV50_RA_DEBUG_JOIN @@ -351,10 +377,27 @@ try_join_values(struct nv_pc_pass *ctx, struct nv_value *a, struct nv_value *b) livei_print(a); livei_print(b); #endif - return; + return FALSE; } do_join_values(ctx, a, b); + + return TRUE; +} + +static void +join_values_nofail(struct nv_pc_pass *ctx, + struct nv_value *a, struct nv_value *b, boolean type_only) +{ + if (type_only) { + assert(join_allowed(ctx, a, b)); + do_join_values(ctx, a, b); + } else { + boolean ok = try_join_values(ctx, a, b); + if (!ok) { + NOUVEAU_ERR("failed to coalesce values\n"); + } + } } static INLINE boolean @@ -369,20 +412,32 @@ need_new_else_block(struct nv_basic_block *b, struct nv_basic_block *p) return (b->num_in > 1) && (n == 2); } +/* Look for the @phi's operand whose definition reaches @b. */ static int phi_opnd_for_bb(struct nv_instruction *phi, struct nv_basic_block *b, struct nv_basic_block *tb) { + struct nv_ref *srci, *srcj; int i, j; - for (j = -1, i = 0; i < 4 && phi->src[i]; ++i) { - if (!nvbb_reachable_by(b, phi->src[i]->value->insn->bb, tb)) + for (j = -1, i = 0; i < 6 && phi->src[i]; ++i) { + srci = phi->src[i]; + /* if already replaced, check with original source first */ + if (srci->flags & NV_REF_FLAG_REGALLOC_PRIV) + srci = srci->value->insn->src[0]; + if (!nvbb_reachable_by(b, srci->value->insn->bb, NULL)) continue; /* NOTE: back-edges are ignored by the reachable-by check */ - if (j < 0 || !nvbb_reachable_by(phi->src[j]->value->insn->bb, - phi->src[i]->value->insn->bb, tb)) + if (j < 0 || !nvbb_reachable_by(srcj->value->insn->bb, + srci->value->insn->bb, NULL)) { j = i; + srcj = srci; + } } + if (j >= 0 && nvbb_reachable_by(b, phi->def[0]->insn->bb, NULL)) + if (!nvbb_reachable_by(srcj->value->insn->bb, + phi->def[0]->insn->bb, NULL)) + j = -1; return j; } @@ -429,16 +484,21 @@ pass_generate_phi_movs(struct nv_pc_pass *ctx, struct nv_basic_block *b) ctx->pc->current_block = pn; for (i = b->phi; i && i->opcode == NV_OP_PHI; i = i->next) { - if ((j = phi_opnd_for_bb(i, p, b)) < 0) - continue; - val = i->src[j]->value; + j = phi_opnd_for_bb(i, p, b); - if (i->src[j]->flags) { - val = val->insn->src[0]->value; - while (j < 4 && i->src[j]) - ++j; - assert(j < 4); + if (j < 0) { + val = i->def[0]; + } else { + val = i->src[j]->value; + if (i->src[j]->flags & NV_REF_FLAG_REGALLOC_PRIV) { + j = -1; + /* use original value, we already encountered & replaced it */ + val = val->insn->src[0]->value; + } } + if (j < 0) /* need an additional source ? */ + for (j = 0; j < 5 && i->src[j] && i->src[j]->value != val; ++j); + assert(j < 5); ni = new_instruction(ctx->pc, NV_OP_MOV); @@ -452,7 +512,7 @@ pass_generate_phi_movs(struct nv_pc_pass *ctx, struct nv_basic_block *b) nv_reference(ctx->pc, &i->src[j], ni->def[0]); - i->src[j]->flags = 1; + i->src[j]->flags |= NV_REF_FLAG_REGALLOC_PRIV; } if (pn != p && pn->exit) { @@ -470,45 +530,50 @@ pass_generate_phi_movs(struct nv_pc_pass *ctx, struct nv_basic_block *b) return 0; } +#define JOIN_MASK_PHI (1 << 0) +#define JOIN_MASK_SELECT (1 << 1) +#define JOIN_MASK_MOV (1 << 2) +#define JOIN_MASK_TEX (1 << 3) + static int -pass_join_values(struct nv_pc_pass *ctx, int iter) +pass_join_values(struct nv_pc_pass *ctx, unsigned mask) { int c, n; for (n = 0; n < ctx->num_insns; ++n) { - struct nv_instruction *i = ctx->insns[n]; + struct nv_instruction *nvi, *i = ctx->insns[n]; switch (i->opcode) { case NV_OP_PHI: - if (iter != 2) + if (!(mask & JOIN_MASK_PHI)) break; - for (c = 0; c < 4 && i->src[c]; ++c) - try_join_values(ctx, i->def[0], i->src[c]->value); + for (c = 0; c < 5 && i->src[c]; ++c) + join_values_nofail(ctx, i->def[0], i->src[c]->value, FALSE); break; case NV_OP_MOV: - if ((iter == 2) && i->src[0]->value->insn && - !nv_is_vector_op(i->src[0]->value->join->insn->opcode)) + if (!(mask & JOIN_MASK_MOV)) + break; + nvi = i->src[0]->value->join->insn; + if (nvi && !nv_is_vector_op(nvi->opcode)) try_join_values(ctx, i->def[0], i->src[0]->value); break; case NV_OP_SELECT: - if (iter != 1) + if (!(mask & JOIN_MASK_SELECT)) break; - for (c = 0; c < 4 && i->src[c]; ++c) { - assert(join_allowed(ctx, i->def[0], i->src[c]->value)); - do_join_values(ctx, i->def[0], i->src[c]->value); - } + for (c = 0; c < 5 && i->src[c]; ++c) + join_values_nofail(ctx, i->def[0], i->src[c]->value, TRUE); break; case NV_OP_TEX: case NV_OP_TXB: case NV_OP_TXL: case NV_OP_TXQ: - if (iter) + if (!(mask & JOIN_MASK_TEX)) break; - for (c = 0; c < 4; ++c) { - if (!i->src[c]) - break; - do_join_values(ctx, i->def[c], i->src[c]->value); - } + /* This should work without conflicts because we always generate + * extra MOVs for the sources of a TEX. + */ + for (c = 0; c < 4 && i->src[c]; ++c) + join_values_nofail(ctx, i->def[c], i->src[c]->value, TRUE); break; default: break; @@ -643,15 +708,15 @@ static void collect_live_values(struct nv_basic_block *b, const int n) { int i; - if (b->out[0]) { - if (b->out[1]) { /* what to do about back-edges ? */ + if (b->out[0] && b->out_kind[0] != CFG_EDGE_FAKE) { + if (b->out[1] && b->out_kind[1] != CFG_EDGE_FAKE) { for (i = 0; i < n; ++i) b->live_set[i] = b->out[0]->live_set[i] | b->out[1]->live_set[i]; } else { memcpy(b->live_set, b->out[0]->live_set, n * sizeof(uint32_t)); } } else - if (b->out[1]) { + if (b->out[1] && b->out_kind[1] != CFG_EDGE_FAKE) { memcpy(b->live_set, b->out[1]->live_set, n * sizeof(uint32_t)); } else { memset(b->live_set, 0, n * sizeof(uint32_t)); @@ -770,8 +835,8 @@ insert_ordered_tail(struct nv_value *list, struct nv_value *nval) struct nv_value *elem; for (elem = list->prev; - elem != list && elem->livei->bgn > nval->livei->bgn; - elem = elem->prev); + elem != list && elem->livei->bgn > nval->livei->bgn; + elem = elem->prev); /* now elem begins before or at the same time as val */ nval->prev = elem; @@ -780,44 +845,49 @@ insert_ordered_tail(struct nv_value *list, struct nv_value *nval) elem->next = nval; } +static void +collect_register_values(struct nv_pc_pass *ctx, struct nv_value *head, + boolean assigned_only) +{ + struct nv_value *val; + int k, n; + + make_empty_list(head); + + for (n = 0; n < ctx->num_insns; ++n) { + struct nv_instruction *i = ctx->insns[n]; + + /* for joined values, only the representative will have livei != NULL */ + for (k = 0; k < 4; ++k) { + if (i->def[k] && i->def[k]->livei) + if (!assigned_only || i->def[k]->reg.id >= 0) + insert_ordered_tail(head, i->def[k]); + } + if (i->flags_def && i->flags_def->livei) + if (!assigned_only || i->flags_def->reg.id >= 0) + insert_ordered_tail(head, i->flags_def); + } + + for (val = head->next; val != head->prev; val = val->next) { + assert(val->join == val); + assert(val->livei->bgn <= val->next->livei->bgn); + } +} + static int pass_linear_scan(struct nv_pc_pass *ctx, int iter) { - struct nv_instruction *i; struct register_set f, free; - int k, n; struct nv_value *cur, *val, *tmp[2]; struct nv_value active, inactive, handled, unhandled; make_empty_list(&active); make_empty_list(&inactive); make_empty_list(&handled); - make_empty_list(&unhandled); nv50_ctor_register_set(ctx->pc, &free); - /* joined values should have range = NULL and thus not be added; - * also, fixed memory values won't be added because they're not - * def'd, just used - */ - for (n = 0; n < ctx->num_insns; ++n) { - i = ctx->insns[n]; - - for (k = 0; k < 4; ++k) { - if (i->def[k] && i->def[k]->livei) - insert_ordered_tail(&unhandled, i->def[k]); - else - if (0 && i->def[k]) - debug_printf("skipping def'd value %i: no livei\n", i->def[k]->n); - } - if (i->flags_def && i->flags_def->livei) - insert_ordered_tail(&unhandled, i->flags_def); - } - - for (val = unhandled.next; val != unhandled.prev; val = val->next) { - assert(val->join == val); - assert(val->livei->bgn <= val->next->livei->bgn); - } + collect_register_values(ctx, &unhandled, FALSE); foreach_s(cur, tmp[0], &unhandled) { remove_from_list(cur); @@ -854,13 +924,7 @@ pass_linear_scan(struct nv_pc_pass *ctx, int iter) reg_occupy(&f, val); if (cur->reg.id < 0) { - boolean mem = FALSE; - - if (nv_is_vector_op(cur->insn->opcode)) - mem = !reg_assign(&f, &cur->insn->def[0], 4); - else - if (iter) - mem = !reg_assign(&f, &cur, 1); + boolean mem = !reg_assign(&f, &cur, 1); if (mem) { NOUVEAU_ERR("out of registers\n"); @@ -874,6 +938,67 @@ pass_linear_scan(struct nv_pc_pass *ctx, int iter) return 0; } +/* Allocate values defined by instructions such as TEX, which have to be + * assigned to consecutive registers. + * Linear scan doesn't really work here since the values can have different + * live intervals. + */ +static int +pass_allocate_constrained_values(struct nv_pc_pass *ctx) +{ + struct nv_value regvals, *val; + struct nv_instruction *i; + struct nv_value *defs[4]; + struct register_set regs[4]; + int n, vsize, c; + uint32_t mask; + boolean mem; + + collect_register_values(ctx, ®vals, TRUE); + + for (n = 0; n < ctx->num_insns; ++n) { + i = ctx->insns[n]; + vsize = nvi_vector_size(i); + if (!(vsize > 1)) + continue; + assert(vsize <= 4); + for (c = 0; c < vsize; ++c) + defs[c] = i->def[c]->join; + + if (defs[0]->reg.id >= 0) { + for (c = 1; c < vsize; ++c) + assert(defs[c]->reg.id >= 0); + continue; + } + + for (c = 0; c < vsize; ++c) { + nv50_ctor_register_set(ctx->pc, ®s[c]); + + foreach(val, ®vals) { + if (val->reg.id >= 0 && livei_have_overlap(val, defs[c])) + reg_occupy(®s[c], val); + } + mask = 0x11111111; + if (vsize == 2) /* granularity is 2 and not 4 */ + mask |= 0x11111111 << 2; + mask_register_set(®s[c], 0, mask << c); + + if (defs[c]->livei) + insert_ordered_tail(®vals, defs[c]); + } + for (c = 1; c < vsize; ++c) + intersect_register_sets(®s[0], ®s[0], ®s[c]); + + mem = !reg_assign(®s[0], &defs[0], vsize); + + if (mem) { + NOUVEAU_ERR("out of registers\n"); + abort(); + } + } + return 0; +} + static int nv_pc_pass1(struct nv_pc *pc, struct nv_basic_block *root) { @@ -923,16 +1048,16 @@ nv_pc_pass1(struct nv_pc *pc, struct nv_basic_block *root) livei_print(&pc->values[i]); #endif - ret = pass_join_values(ctx, 0); + ret = pass_join_values(ctx, JOIN_MASK_PHI); if (ret) goto out; - ret = pass_linear_scan(ctx, 0); + ret = pass_join_values(ctx, JOIN_MASK_SELECT | JOIN_MASK_TEX); if (ret) goto out; - ret = pass_join_values(ctx, 1); + ret = pass_join_values(ctx, JOIN_MASK_MOV); if (ret) goto out; - ret = pass_join_values(ctx, 2); + ret = pass_allocate_constrained_values(ctx); if (ret) goto out; ret = pass_linear_scan(ctx, 1); From c3526585b79f6865bfedd15a7336027597555ec7 Mon Sep 17 00:00:00 2001 From: Christoph Bumiller Date: Thu, 31 Mar 2011 16:36:31 +0200 Subject: [PATCH 102/420] nv50: fix for GPR allocation granularity being 16 bit --- src/gallium/drivers/nv50/nv50_pc_regalloc.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/gallium/drivers/nv50/nv50_pc_regalloc.c b/src/gallium/drivers/nv50/nv50_pc_regalloc.c index 657df2c589b..df3ac54dce3 100644 --- a/src/gallium/drivers/nv50/nv50_pc_regalloc.c +++ b/src/gallium/drivers/nv50/nv50_pc_regalloc.c @@ -971,6 +971,9 @@ pass_allocate_constrained_values(struct nv_pc_pass *ctx) continue; } + /* Compute registers available for this "vector" of consecutive registers. + * Each value (component) has its own independent live interval. + */ for (c = 0; c < vsize; ++c) { nv50_ctor_register_set(ctx->pc, ®s[c]); @@ -978,10 +981,13 @@ pass_allocate_constrained_values(struct nv_pc_pass *ctx) if (val->reg.id >= 0 && livei_have_overlap(val, defs[c])) reg_occupy(®s[c], val); } - mask = 0x11111111; + /* Only 32 bit GPRs will be allocated here, but register set + * granularity for GPRs is 16 bit. + */ + mask = 0x03030303; if (vsize == 2) /* granularity is 2 and not 4 */ - mask |= 0x11111111 << 2; - mask_register_set(®s[c], 0, mask << c); + mask |= 0x03030303 << 4; + mask_register_set(®s[c], 0, mask << (c * 2)); if (defs[c]->livei) insert_ordered_tail(®vals, defs[c]); From 18dcbd358f1d4fd5e4a40fa26c6d3bf99485884e Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Sun, 27 Mar 2011 01:17:43 -0700 Subject: [PATCH 103/420] prog_optimize: Fix reallocating registers for shaders with loops Registers that are used inside of loops need to be considered live starting with the first instruction of the outermost loop. https://bugs.freedesktop.org/show_bug.cgi?id=34370 NOTE: This is a candidate for the 7.9 and 7.10 branches. Reviewed-by: Eric Anholt --- src/mesa/program/prog_optimize.c | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/src/mesa/program/prog_optimize.c b/src/mesa/program/prog_optimize.c index 96971f2eda4..164297a3474 100644 --- a/src/mesa/program/prog_optimize.c +++ b/src/mesa/program/prog_optimize.c @@ -937,24 +937,35 @@ update_interval(GLint intBegin[], GLint intEnd[], GLuint index, GLuint ic) { int i; + GLuint begin = ic; + GLuint end = ic; /* If the register is used in a loop, extend its lifetime through the end * of the outermost loop that doesn't contain its definition. */ for (i = 0; i < loopStackDepth; i++) { if (intBegin[index] < loopStack[i].Start) { - ic = loopStack[i].End; + end = loopStack[i].End; break; } } + /* Variables that are live at the end of a loop will also be live at the + * beginning, so an instruction inside of a loop should have its live + * interval begin at the start of the outermost loop. + */ + if (loopStackDepth > 0 && ic > loopStack[0].Start && ic < loopStack[0].End) { + begin = loopStack[0].Start; + } + ASSERT(index < REG_ALLOCATE_MAX_PROGRAM_TEMPS); if (intBegin[index] == -1) { ASSERT(intEnd[index] == -1); - intBegin[index] = intEnd[index] = ic; + intBegin[index] = begin; + intEnd[index] = end; } else { - intEnd[index] = ic; + intEnd[index] = end; } } From 9f013a8233197d4a0482661cb37cfeac1a61b804 Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Thu, 31 Mar 2011 23:45:26 -0700 Subject: [PATCH 104/420] r300/compiler: Remove obsolete compiler passes Branch emulation and loop unrolling are done in the GLSL frontend. Transforming loops is no longer needed for fragment shaders, but it is still necessary for vertex shaders. --- src/mesa/drivers/dri/r300/compiler/Makefile | 1 - src/mesa/drivers/dri/r300/compiler/SConscript | 1 - .../drivers/dri/r300/compiler/r3xx_fragprog.c | 5 - .../drivers/dri/r300/compiler/r3xx_vertprog.c | 2 - .../r300/compiler/radeon_emulate_branches.c | 342 ------------------ .../r300/compiler/radeon_emulate_branches.h | 30 -- .../dri/r300/compiler/radeon_emulate_loops.c | 34 -- 7 files changed, 415 deletions(-) delete mode 100644 src/mesa/drivers/dri/r300/compiler/radeon_emulate_branches.c delete mode 100644 src/mesa/drivers/dri/r300/compiler/radeon_emulate_branches.h diff --git a/src/mesa/drivers/dri/r300/compiler/Makefile b/src/mesa/drivers/dri/r300/compiler/Makefile index 51b896ae91f..12e5c2e6245 100644 --- a/src/mesa/drivers/dri/r300/compiler/Makefile +++ b/src/mesa/drivers/dri/r300/compiler/Makefile @@ -9,7 +9,6 @@ C_SOURCES = \ radeon_code.c \ radeon_compiler.c \ radeon_compiler_util.c \ - radeon_emulate_branches.c \ radeon_emulate_loops.c \ radeon_program.c \ radeon_program_print.c \ diff --git a/src/mesa/drivers/dri/r300/compiler/SConscript b/src/mesa/drivers/dri/r300/compiler/SConscript index 2b4bce1c08c..f1a48375386 100755 --- a/src/mesa/drivers/dri/r300/compiler/SConscript +++ b/src/mesa/drivers/dri/r300/compiler/SConscript @@ -25,7 +25,6 @@ r300compiler = env.ConvenienceLibrary( 'radeon_optimize.c', 'radeon_remove_constants.c', 'radeon_rename_regs.c', - 'radeon_emulate_branches.c', 'radeon_emulate_loops.c', 'radeon_dataflow.c', 'radeon_dataflow_deadcode.c', diff --git a/src/mesa/drivers/dri/r300/compiler/r3xx_fragprog.c b/src/mesa/drivers/dri/r300/compiler/r3xx_fragprog.c index 9286733635f..005a150efc0 100644 --- a/src/mesa/drivers/dri/r300/compiler/r3xx_fragprog.c +++ b/src/mesa/drivers/dri/r300/compiler/r3xx_fragprog.c @@ -26,7 +26,6 @@ #include "radeon_compiler_util.h" #include "radeon_dataflow.h" -#include "radeon_emulate_branches.h" #include "radeon_emulate_loops.h" #include "radeon_program_alu.h" #include "radeon_program_tex.h" @@ -130,15 +129,11 @@ void r3xx_compile_fragment_program(struct r300_fragment_program_compiler* c) /* This transformation needs to be done before any of the IF * instructions are modified. */ {"transform KILP", 1, 1, rc_transform_KILP, NULL}, - {"unroll loops", 1, is_r500, rc_unroll_loops, NULL}, - {"transform loops", 1, !is_r500, rc_transform_loops, NULL}, - {"emulate branches", 1, !is_r500, rc_emulate_branches, NULL}, {"saturate output writes", 1, sat_out, rc_local_transform, saturate_output}, {"transform TEX", 1, 1, rc_local_transform, rewrite_tex}, {"native rewrite", 1, is_r500, rc_local_transform, native_rewrite_r500}, {"native rewrite", 1, !is_r500, rc_local_transform, native_rewrite_r300}, {"deadcode", 1, opt, rc_dataflow_deadcode, dataflow_outputs_mark_use}, - {"emulate loops", 1, !is_r500, rc_emulate_loops, NULL}, {"dataflow optimize", 1, opt, rc_optimize, NULL}, {"dataflow swizzles", 1, 1, rc_dataflow_swizzles, NULL}, {"dead constants", 1, 1, rc_remove_unused_constants, &c->code->constants_remap_table}, diff --git a/src/mesa/drivers/dri/r300/compiler/r3xx_vertprog.c b/src/mesa/drivers/dri/r300/compiler/r3xx_vertprog.c index 8ad2175eadf..76cbdb079ed 100644 --- a/src/mesa/drivers/dri/r300/compiler/r3xx_vertprog.c +++ b/src/mesa/drivers/dri/r300/compiler/r3xx_vertprog.c @@ -30,7 +30,6 @@ #include "radeon_dataflow.h" #include "radeon_program_alu.h" #include "radeon_swizzle.h" -#include "radeon_emulate_branches.h" #include "radeon_emulate_loops.h" #include "radeon_remove_constants.h" @@ -999,7 +998,6 @@ void r3xx_compile_vertex_program(struct r300_vertex_program_compiler *c) /* NAME DUMP PREDICATE FUNCTION PARAM */ {"add artificial outputs", 0, 1, rc_vs_add_artificial_outputs, NULL}, {"transform loops", 1, 1, rc_transform_loops, NULL}, - {"emulate branches", 1, !is_r500, rc_emulate_branches, NULL}, {"emulate negative addressing", 1, 1, rc_emulate_negative_addressing, NULL}, {"native rewrite", 1, is_r500, rc_local_transform, alu_rewrite_r500}, {"native rewrite", 1, !is_r500, rc_local_transform, alu_rewrite_r300}, diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_emulate_branches.c b/src/mesa/drivers/dri/r300/compiler/radeon_emulate_branches.c deleted file mode 100644 index 7bede344f30..00000000000 --- a/src/mesa/drivers/dri/r300/compiler/radeon_emulate_branches.c +++ /dev/null @@ -1,342 +0,0 @@ -/* - * Copyright 2009 Nicolai Hähnle - * - * 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 - * THE AUTHOR(S) 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. */ - -#include "radeon_emulate_branches.h" - -#include - -#include "radeon_compiler.h" -#include "radeon_dataflow.h" - -#define VERBOSE 0 - -#define DBG(...) do { if (VERBOSE) fprintf(stderr, __VA_ARGS__); } while(0) - - -struct proxy_info { - unsigned int Proxied:1; - unsigned int Index:RC_REGISTER_INDEX_BITS; -}; - -struct register_proxies { - struct proxy_info Temporary[RC_REGISTER_MAX_INDEX]; -}; - -struct branch_info { - struct rc_instruction * If; - struct rc_instruction * Else; -}; - -struct emulate_branch_state { - struct radeon_compiler * C; - - struct branch_info * Branches; - unsigned int BranchCount; - unsigned int BranchReserved; -}; - - -static void handle_if(struct emulate_branch_state * s, struct rc_instruction * inst) -{ - struct branch_info * branch; - struct rc_instruction * inst_mov; - - memory_pool_array_reserve(&s->C->Pool, struct branch_info, - s->Branches, s->BranchCount, s->BranchReserved, 1); - - DBG("%s\n", __FUNCTION__); - - branch = &s->Branches[s->BranchCount++]; - memset(branch, 0, sizeof(struct branch_info)); - branch->If = inst; - - /* Make a safety copy of the decision register, because we will need - * it at ENDIF time and it might be overwritten in both branches. */ - inst_mov = rc_insert_new_instruction(s->C, inst->Prev); - inst_mov->U.I.Opcode = RC_OPCODE_MOV; - inst_mov->U.I.DstReg.File = RC_FILE_TEMPORARY; - inst_mov->U.I.DstReg.Index = rc_find_free_temporary(s->C); - inst_mov->U.I.DstReg.WriteMask = RC_MASK_X; - inst_mov->U.I.SrcReg[0] = inst->U.I.SrcReg[0]; - - inst->U.I.SrcReg[0].File = RC_FILE_TEMPORARY; - inst->U.I.SrcReg[0].Index = inst_mov->U.I.DstReg.Index; - inst->U.I.SrcReg[0].Swizzle = 0; - inst->U.I.SrcReg[0].Abs = 0; - inst->U.I.SrcReg[0].Negate = 0; -} - -static void handle_else(struct emulate_branch_state * s, struct rc_instruction * inst) -{ - struct branch_info * branch; - - if (!s->BranchCount) { - rc_error(s->C, "Encountered ELSE outside of branches"); - return; - } - - DBG("%s\n", __FUNCTION__); - - branch = &s->Branches[s->BranchCount - 1]; - branch->Else = inst; -} - - -struct state_and_proxies { - struct emulate_branch_state * S; - struct register_proxies * Proxies; -}; - -static struct proxy_info * get_proxy_info(struct state_and_proxies * sap, - rc_register_file file, unsigned int index) -{ - if (file == RC_FILE_TEMPORARY) { - return &sap->Proxies->Temporary[index]; - } else { - return 0; - } -} - -static void scan_write(void * userdata, struct rc_instruction * inst, - rc_register_file file, unsigned int index, unsigned int comp) -{ - struct state_and_proxies * sap = userdata; - struct proxy_info * proxy = get_proxy_info(sap, file, index); - - if (proxy && !proxy->Proxied) { - proxy->Proxied = 1; - proxy->Index = rc_find_free_temporary(sap->S->C); - } -} - -static void remap_proxy_function(void * userdata, struct rc_instruction * inst, - rc_register_file * pfile, unsigned int * pindex) -{ - struct state_and_proxies * sap = userdata; - struct proxy_info * proxy = get_proxy_info(sap, *pfile, *pindex); - - if (proxy && proxy->Proxied) { - *pfile = RC_FILE_TEMPORARY; - *pindex = proxy->Index; - } -} - -/** - * Redirect all writes in the instruction range [begin, end) to proxy - * temporary registers. - */ -static void allocate_and_insert_proxies(struct emulate_branch_state * s, - struct register_proxies * proxies, - struct rc_instruction * begin, - struct rc_instruction * end) -{ - struct state_and_proxies sap; - - sap.S = s; - sap.Proxies = proxies; - - for(struct rc_instruction * inst = begin; inst != end; inst = inst->Next) { - rc_for_all_writes_mask(inst, scan_write, &sap); - rc_remap_registers(inst, remap_proxy_function, &sap); - } - - for(unsigned int index = 0; index < RC_REGISTER_MAX_INDEX; ++index) { - if (proxies->Temporary[index].Proxied) { - struct rc_instruction * inst_mov = rc_insert_new_instruction(s->C, begin->Prev); - inst_mov->U.I.Opcode = RC_OPCODE_MOV; - inst_mov->U.I.DstReg.File = RC_FILE_TEMPORARY; - inst_mov->U.I.DstReg.Index = proxies->Temporary[index].Index; - inst_mov->U.I.DstReg.WriteMask = RC_MASK_XYZW; - inst_mov->U.I.SrcReg[0].File = RC_FILE_TEMPORARY; - inst_mov->U.I.SrcReg[0].Index = index; - } - } -} - - -static void inject_cmp(struct emulate_branch_state * s, - struct rc_instruction * inst_if, - struct rc_instruction * inst_endif, - rc_register_file file, unsigned int index, - struct proxy_info ifproxy, - struct proxy_info elseproxy) -{ - struct rc_instruction * inst_cmp = rc_insert_new_instruction(s->C, inst_endif); - inst_cmp->U.I.Opcode = RC_OPCODE_CMP; - inst_cmp->U.I.DstReg.File = file; - inst_cmp->U.I.DstReg.Index = index; - inst_cmp->U.I.DstReg.WriteMask = RC_MASK_XYZW; - inst_cmp->U.I.SrcReg[0] = inst_if->U.I.SrcReg[0]; - inst_cmp->U.I.SrcReg[0].Abs = 1; - inst_cmp->U.I.SrcReg[0].Negate = RC_MASK_XYZW; - inst_cmp->U.I.SrcReg[1].File = RC_FILE_TEMPORARY; - inst_cmp->U.I.SrcReg[1].Index = ifproxy.Proxied ? ifproxy.Index : index; - inst_cmp->U.I.SrcReg[2].File = RC_FILE_TEMPORARY; - inst_cmp->U.I.SrcReg[2].Index = elseproxy.Proxied ? elseproxy.Index : index; -} - -static void handle_endif(struct emulate_branch_state * s, struct rc_instruction * inst) -{ - struct branch_info * branch; - struct register_proxies IfProxies; - struct register_proxies ElseProxies; - - if (!s->BranchCount) { - rc_error(s->C, "Encountered ENDIF outside of branches"); - return; - } - - DBG("%s\n", __FUNCTION__); - - branch = &s->Branches[s->BranchCount - 1]; - - memset(&IfProxies, 0, sizeof(IfProxies)); - memset(&ElseProxies, 0, sizeof(ElseProxies)); - - allocate_and_insert_proxies(s, &IfProxies, branch->If->Next, branch->Else ? branch->Else : inst); - - if (branch->Else) - allocate_and_insert_proxies(s, &ElseProxies, branch->Else->Next, inst); - - /* Insert the CMP instructions at the end. */ - for(unsigned int index = 0; index < RC_REGISTER_MAX_INDEX; ++index) { - if (IfProxies.Temporary[index].Proxied || ElseProxies.Temporary[index].Proxied) { - inject_cmp(s, branch->If, inst, RC_FILE_TEMPORARY, index, - IfProxies.Temporary[index], ElseProxies.Temporary[index]); - } - } - - /* Remove all traces of the branch instructions */ - rc_remove_instruction(branch->If); - if (branch->Else) - rc_remove_instruction(branch->Else); - rc_remove_instruction(inst); - - s->BranchCount--; - - if (VERBOSE) { - DBG("Program after ENDIF handling:\n"); - rc_print_program(&s->C->Program); - } -} - - -struct remap_output_data { - unsigned int Output:RC_REGISTER_INDEX_BITS; - unsigned int Temporary:RC_REGISTER_INDEX_BITS; -}; - -static void remap_output_function(void * userdata, struct rc_instruction * inst, - rc_register_file * pfile, unsigned int * pindex) -{ - struct remap_output_data * data = userdata; - - if (*pfile == RC_FILE_OUTPUT && *pindex == data->Output) { - *pfile = RC_FILE_TEMPORARY; - *pindex = data->Temporary; - } -} - - -/** - * Output registers cannot be read from and so cannot be dealt with like - * temporary registers. - * - * We do the simplest thing: If an output registers is written within - * a branch, then *all* writes to this register are proxied to a - * temporary register, and a final MOV is appended to the end of - * the program. - */ -static void fix_output_writes(struct emulate_branch_state * s, struct rc_instruction * inst) -{ - const struct rc_opcode_info * opcode; - - if (!s->BranchCount) - return; - - opcode = rc_get_opcode_info(inst->U.I.Opcode); - - if (!opcode->HasDstReg) - return; - - if (inst->U.I.DstReg.File == RC_FILE_OUTPUT) { - struct remap_output_data remap; - struct rc_instruction * inst_mov; - - remap.Output = inst->U.I.DstReg.Index; - remap.Temporary = rc_find_free_temporary(s->C); - - for(struct rc_instruction * inst = s->C->Program.Instructions.Next; - inst != &s->C->Program.Instructions; - inst = inst->Next) { - rc_remap_registers(inst, &remap_output_function, &remap); - } - - inst_mov = rc_insert_new_instruction(s->C, s->C->Program.Instructions.Prev); - inst_mov->U.I.Opcode = RC_OPCODE_MOV; - inst_mov->U.I.DstReg.File = RC_FILE_OUTPUT; - inst_mov->U.I.DstReg.Index = remap.Output; - inst_mov->U.I.DstReg.WriteMask = RC_MASK_XYZW; - inst_mov->U.I.SrcReg[0].File = RC_FILE_TEMPORARY; - inst_mov->U.I.SrcReg[0].Index = remap.Temporary; - } -} - -/** - * Remove branch instructions; instead, execute both branches - * on different register sets and choose between their results - * using CMP instructions in place of the original ENDIF. - */ -void rc_emulate_branches(struct radeon_compiler *c, void *user) -{ - struct emulate_branch_state s; - struct rc_instruction * ptr; - - memset(&s, 0, sizeof(s)); - s.C = c; - - /* Untypical loop because we may remove the current instruction */ - ptr = c->Program.Instructions.Next; - while(ptr != &c->Program.Instructions) { - struct rc_instruction * inst = ptr; - ptr = ptr->Next; - - if (inst->Type == RC_INSTRUCTION_NORMAL) { - switch(inst->U.I.Opcode) { - case RC_OPCODE_IF: - handle_if(&s, inst); - break; - case RC_OPCODE_ELSE: - handle_else(&s, inst); - break; - case RC_OPCODE_ENDIF: - handle_endif(&s, inst); - break; - default: - fix_output_writes(&s, inst); - break; - } - } else { - rc_error(c, "%s: unhandled instruction type\n", __FUNCTION__); - } - } -} diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_emulate_branches.h b/src/mesa/drivers/dri/r300/compiler/radeon_emulate_branches.h deleted file mode 100644 index 818ab84d0cd..00000000000 --- a/src/mesa/drivers/dri/r300/compiler/radeon_emulate_branches.h +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Copyright 2009 Nicolai Hähnle - * - * 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 - * THE AUTHOR(S) 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. */ - -#ifndef RADEON_EMULATE_BRANCHES_H -#define RADEON_EMULATE_BRANCHES_H - -struct radeon_compiler; - -void rc_emulate_branches(struct radeon_compiler *c, void *user); - -#endif /* RADEON_EMULATE_BRANCHES_H */ diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_emulate_loops.c b/src/mesa/drivers/dri/r300/compiler/radeon_emulate_loops.c index 205eecd1129..049a8194a36 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_emulate_loops.c +++ b/src/mesa/drivers/dri/r300/compiler/radeon_emulate_loops.c @@ -486,37 +486,3 @@ void rc_transform_loops(struct radeon_compiler *c, void *user) } } } - -void rc_unroll_loops(struct radeon_compiler *c, void *user) -{ - struct rc_instruction * inst; - struct loop_info loop; - - for(inst = c->Program.Instructions.Next; - inst != &c->Program.Instructions; inst = inst->Next) { - - if (inst->U.I.Opcode == RC_OPCODE_BGNLOOP) { - if (build_loop_info(c, &loop, inst)) { - try_unroll_loop(c, &loop); - } - } - } -} - -void rc_emulate_loops(struct radeon_compiler *c, void *user) -{ - struct emulate_loop_state * s = &c->loop_state; - int i; - /* Iterate backwards of the list of loops so that loops that nested - * loops are unrolled first. - */ - for( i = s->LoopCount - 1; i >= 0; i-- ){ - unsigned int iterations; - - if(!s->Loops[i].EndLoop){ - continue; - } - iterations = loop_max_possible_iterations(s->C, &s->Loops[i]); - unroll_loop(s->C, &s->Loops[i], iterations); - } -} From 25f26997670302b07d48207b28f385f85f6af9bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Mon, 28 Mar 2011 02:28:48 +0200 Subject: [PATCH 105/420] gallium: add a CAP for mixed colorbuffer format support Some GPUs can't do it (I think most of DX9 ones), so they should have the option not to allow it. --- src/gallium/include/pipe/p_defines.h | 1 + src/mesa/state_tracker/st_cb_fbo.c | 25 ++++++++++++++++++++++++- 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/src/gallium/include/pipe/p_defines.h b/src/gallium/include/pipe/p_defines.h index 4c1879c7c24..431a7fb6695 100644 --- a/src/gallium/include/pipe/p_defines.h +++ b/src/gallium/include/pipe/p_defines.h @@ -464,6 +464,7 @@ enum pipe_cap { PIPE_CAP_TGSI_INSTANCEID = 43, PIPE_CAP_VERTEX_ELEMENT_INSTANCE_DIVISOR = 44, PIPE_CAP_FRAGMENT_COLOR_CLAMP_CONTROL = 45, + PIPE_CAP_MIXED_COLORBUFFER_FORMATS = 46, }; /* Shader caps not specific to any single stage */ diff --git a/src/mesa/state_tracker/st_cb_fbo.c b/src/mesa/state_tracker/st_cb_fbo.c index 0df04287ae6..7ffee901cdb 100644 --- a/src/mesa/state_tracker/st_cb_fbo.c +++ b/src/mesa/state_tracker/st_cb_fbo.c @@ -529,6 +529,9 @@ st_validate_framebuffer(struct gl_context *ctx, struct gl_framebuffer *fb) const struct gl_renderbuffer_attachment *stencil = &fb->Attachment[BUFFER_STENCIL]; GLuint i; + enum pipe_format first_format = PIPE_FORMAT_NONE; + boolean mixed_formats = + screen->get_param(screen, PIPE_CAP_MIXED_COLORBUFFER_FORMATS) != 0; if (depth->Type && stencil->Type && depth->Type != stencil->Type) { fb->_Status = GL_FRAMEBUFFER_UNSUPPORTED_EXT; @@ -562,13 +565,33 @@ st_validate_framebuffer(struct gl_context *ctx, struct gl_framebuffer *fb) return; } for (i = 0; i < ctx->Const.MaxColorAttachments; i++) { + struct gl_renderbuffer_attachment *att = + &fb->Attachment[BUFFER_COLOR0 + i]; + enum pipe_format format; + if (!st_validate_attachment(ctx, screen, - &fb->Attachment[BUFFER_COLOR0 + i], + att, PIPE_BIND_RENDER_TARGET)) { fb->_Status = GL_FRAMEBUFFER_UNSUPPORTED_EXT; return; } + + if (!mixed_formats) { + /* Disallow mixed formats. */ + if (att->Type != GL_NONE) { + format = st_renderbuffer(att->Renderbuffer)->surface->format; + } else { + continue; + } + + if (first_format == PIPE_FORMAT_NONE) { + first_format = format; + } else if (format != first_format) { + fb->_Status = GL_FRAMEBUFFER_UNSUPPORTED_EXT; + return; + } + } } } From 4a7f013f9db793dab8dbc9f71646dab49f12ed2f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Tue, 29 Mar 2011 18:18:05 +0200 Subject: [PATCH 106/420] gallium: set PIPE_CAP_MIXED_COLORBUFFER_FORMATS in some drivers --- src/gallium/drivers/llvmpipe/lp_screen.c | 1 + src/gallium/drivers/noop/noop_pipe.c | 1 + src/gallium/drivers/nv50/nv50_screen.c | 1 + src/gallium/drivers/nvc0/nvc0_screen.c | 1 + src/gallium/drivers/nvfx/nvfx_screen.c | 2 ++ src/gallium/drivers/r300/r300_screen.c | 2 ++ src/gallium/drivers/r600/r600_pipe.c | 1 + src/gallium/drivers/svga/svga_screen.c | 2 ++ 8 files changed, 11 insertions(+) diff --git a/src/gallium/drivers/llvmpipe/lp_screen.c b/src/gallium/drivers/llvmpipe/lp_screen.c index 521a52ad3ae..036a6e0c379 100644 --- a/src/gallium/drivers/llvmpipe/lp_screen.c +++ b/src/gallium/drivers/llvmpipe/lp_screen.c @@ -166,6 +166,7 @@ llvmpipe_get_param(struct pipe_screen *screen, enum pipe_cap param) return 0; case PIPE_CAP_TGSI_INSTANCEID: case PIPE_CAP_VERTEX_ELEMENT_INSTANCE_DIVISOR: + case PIPE_CAP_MIXED_COLORBUFFER_FORMATS: return 1; default: return 0; diff --git a/src/gallium/drivers/noop/noop_pipe.c b/src/gallium/drivers/noop/noop_pipe.c index 496b7f5ec6d..18308b796f3 100644 --- a/src/gallium/drivers/noop/noop_pipe.c +++ b/src/gallium/drivers/noop/noop_pipe.c @@ -337,6 +337,7 @@ static int noop_get_param(struct pipe_screen* pscreen, enum pipe_cap param) case PIPE_CAP_TEXTURE_SHADOW_MAP: case PIPE_CAP_TEXTURE_SWIZZLE: case PIPE_CAP_BLEND_EQUATION_SEPARATE: + case PIPE_CAP_MIXED_COLORBUFFER_FORMATS: return 1; case PIPE_CAP_DUAL_SOURCE_BLEND: diff --git a/src/gallium/drivers/nv50/nv50_screen.c b/src/gallium/drivers/nv50/nv50_screen.c index 9978d1e7861..cfa49aa0394 100644 --- a/src/gallium/drivers/nv50/nv50_screen.c +++ b/src/gallium/drivers/nv50/nv50_screen.c @@ -131,6 +131,7 @@ nv50_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param) case PIPE_CAP_PRIMITIVE_RESTART: case PIPE_CAP_TGSI_INSTANCEID: case PIPE_CAP_VERTEX_ELEMENT_INSTANCE_DIVISOR: + case PIPE_CAP_MIXED_COLORBUFFER_FORMATS: return 1; default: NOUVEAU_ERR("unknown PIPE_CAP %d\n", param); diff --git a/src/gallium/drivers/nvc0/nvc0_screen.c b/src/gallium/drivers/nvc0/nvc0_screen.c index f0f5237de52..e98a4c0fd42 100644 --- a/src/gallium/drivers/nvc0/nvc0_screen.c +++ b/src/gallium/drivers/nvc0/nvc0_screen.c @@ -115,6 +115,7 @@ nvc0_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param) case PIPE_CAP_PRIMITIVE_RESTART: case PIPE_CAP_TGSI_INSTANCEID: case PIPE_CAP_VERTEX_ELEMENT_INSTANCE_DIVISOR: + case PIPE_CAP_MIXED_COLORBUFFER_FORMATS: return 1; default: NOUVEAU_ERR("unknown PIPE_CAP %d\n", param); diff --git a/src/gallium/drivers/nvfx/nvfx_screen.c b/src/gallium/drivers/nvfx/nvfx_screen.c index 9e6b9d6ef8f..0c8d33fb0aa 100644 --- a/src/gallium/drivers/nvfx/nvfx_screen.c +++ b/src/gallium/drivers/nvfx/nvfx_screen.c @@ -81,6 +81,8 @@ nvfx_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param) return 0; // TODO: implement primitive restart case PIPE_CAP_SHADER_STENCIL_EXPORT: return 0; + case PIPE_CAP_MIXED_COLORBUFFER_FORMATS: + return 0; default: NOUVEAU_ERR("Warning: unknown PIPE_CAP %d\n", param); return 0; diff --git a/src/gallium/drivers/r300/r300_screen.c b/src/gallium/drivers/r300/r300_screen.c index deaeb77429f..f09c9c02972 100644 --- a/src/gallium/drivers/r300/r300_screen.c +++ b/src/gallium/drivers/r300/r300_screen.c @@ -118,6 +118,8 @@ static int r300_get_param(struct pipe_screen* pscreen, enum pipe_cap param) return 1; case PIPE_CAP_TEXTURE_SWIZZLE: return util_format_s3tc_enabled ? r300screen->caps.dxtc_swizzle : 1; + case PIPE_CAP_MIXED_COLORBUFFER_FORMATS: + return is_r500 ? 1 : 0; /* Unsupported features (boolean caps). */ case PIPE_CAP_TIMER_QUERY: diff --git a/src/gallium/drivers/r600/r600_pipe.c b/src/gallium/drivers/r600/r600_pipe.c index c5fc2ba2d35..3e24bfafe4a 100644 --- a/src/gallium/drivers/r600/r600_pipe.c +++ b/src/gallium/drivers/r600/r600_pipe.c @@ -371,6 +371,7 @@ static int r600_get_param(struct pipe_screen* pscreen, enum pipe_cap param) case PIPE_CAP_SHADER_STENCIL_EXPORT: case PIPE_CAP_TGSI_INSTANCEID: case PIPE_CAP_VERTEX_ELEMENT_INSTANCE_DIVISOR: + case PIPE_CAP_MIXED_COLORBUFFER_FORMATS: return 1; case PIPE_CAP_INDEP_BLEND_ENABLE: /* R600 doesn't support per-MRT blends */ diff --git a/src/gallium/drivers/svga/svga_screen.c b/src/gallium/drivers/svga/svga_screen.c index 6c987abe056..b847cf331b3 100644 --- a/src/gallium/drivers/svga/svga_screen.c +++ b/src/gallium/drivers/svga/svga_screen.c @@ -181,6 +181,8 @@ svga_get_paramf(struct pipe_screen *screen, enum pipe_cap param) case PIPE_CAP_DEPTHSTENCIL_CLEAR_SEPARATE: return 1; + case PIPE_CAP_MIXED_COLORBUFFER_FORMATS: + return 0; default: return 0; From 3733da31e8b4405b65e1b6ca3b6599ecc5af5fe7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Thu, 31 Mar 2011 14:40:25 +0100 Subject: [PATCH 107/420] draw: Prevent out-of-bounds vertex buffer access. Based on some code and ideas from Keith Whitwell. --- src/gallium/auxiliary/Makefile | 1 + src/gallium/auxiliary/SConscript | 1 + src/gallium/auxiliary/draw/draw_private.h | 8 ++ src/gallium/auxiliary/draw/draw_pt.c | 11 +++ src/gallium/auxiliary/draw/draw_pt_fetch.c | 2 +- .../auxiliary/draw/draw_pt_fetch_emit.c | 2 +- .../auxiliary/draw/draw_pt_fetch_shade_emit.c | 2 +- src/gallium/auxiliary/draw/draw_pt_vsplit.c | 7 +- .../auxiliary/draw/draw_pt_vsplit_tmp.h | 12 ++- src/gallium/auxiliary/util/u_draw.c | 99 +++++++++++++++++++ src/gallium/auxiliary/util/u_draw.h | 19 ++++ 11 files changed, 157 insertions(+), 7 deletions(-) create mode 100644 src/gallium/auxiliary/util/u_draw.c diff --git a/src/gallium/auxiliary/Makefile b/src/gallium/auxiliary/Makefile index c7654046a58..2be4509b7a5 100644 --- a/src/gallium/auxiliary/Makefile +++ b/src/gallium/auxiliary/Makefile @@ -107,6 +107,7 @@ C_SOURCES = \ util/u_caps.c \ util/u_cpu_detect.c \ util/u_dl.c \ + util/u_draw.c \ util/u_draw_quad.c \ util/u_format.c \ util/u_format_other.c \ diff --git a/src/gallium/auxiliary/SConscript b/src/gallium/auxiliary/SConscript index 8e422b2c11f..96ca566ff66 100644 --- a/src/gallium/auxiliary/SConscript +++ b/src/gallium/auxiliary/SConscript @@ -154,6 +154,7 @@ source = [ 'util/u_dump_defines.c', 'util/u_dump_state.c', 'util/u_dl.c', + 'util/u_draw.c', 'util/u_draw_quad.c', 'util/u_format.c', 'util/u_format_other.c', diff --git a/src/gallium/auxiliary/draw/draw_private.h b/src/gallium/auxiliary/draw/draw_private.h index db2e3c5410d..b7d693f8584 100644 --- a/src/gallium/auxiliary/draw/draw_private.h +++ b/src/gallium/auxiliary/draw/draw_private.h @@ -146,6 +146,14 @@ struct draw_context struct pipe_vertex_buffer vertex_buffer[PIPE_MAX_ATTRIBS]; unsigned nr_vertex_buffers; + /* + * This is the largest legal index value for the current set of + * bound vertex buffers. Regardless of any other consideration, + * all vertex lookups need to be clamped to 0..max_index to + * prevent out-of-bound access. + */ + unsigned max_index; + struct pipe_vertex_element vertex_element[PIPE_MAX_ATTRIBS]; unsigned nr_vertex_elements; diff --git a/src/gallium/auxiliary/draw/draw_pt.c b/src/gallium/auxiliary/draw/draw_pt.c index c3d7e871f7a..e0eda67c1a2 100644 --- a/src/gallium/auxiliary/draw/draw_pt.c +++ b/src/gallium/auxiliary/draw/draw_pt.c @@ -470,6 +470,17 @@ draw_vbo(struct draw_context *draw, if (0) draw_print_arrays(draw, info->mode, info->start, MIN2(info->count, 20)); + draw->pt.max_index = util_draw_max_index(draw->pt.vertex_buffer, + draw->pt.nr_vertex_buffers, + draw->pt.vertex_element, + draw->pt.nr_vertex_elements, + info); + + /* + * TODO: We could use draw->pt.max_index to further narrow + * the min_index/max_index hints given by the state tracker. + */ + for (instance = 0; instance < info->instance_count; instance++) { draw->instance_id = instance + info->start_instance; diff --git a/src/gallium/auxiliary/draw/draw_pt_fetch.c b/src/gallium/auxiliary/draw/draw_pt_fetch.c index 4fa3b265e10..5589a8212e4 100644 --- a/src/gallium/auxiliary/draw/draw_pt_fetch.c +++ b/src/gallium/auxiliary/draw/draw_pt_fetch.c @@ -139,7 +139,7 @@ void draw_pt_fetch_run( struct pt_fetch *fetch, ((char *)draw->pt.user.vbuffer[i] + draw->pt.vertex_buffer[i].buffer_offset), draw->pt.vertex_buffer[i].stride, - draw->pt.user.max_index); + draw->pt.max_index); } translate->run_elts( translate, diff --git a/src/gallium/auxiliary/draw/draw_pt_fetch_emit.c b/src/gallium/auxiliary/draw/draw_pt_fetch_emit.c index 51043102a61..0ab11d015c6 100644 --- a/src/gallium/auxiliary/draw/draw_pt_fetch_emit.c +++ b/src/gallium/auxiliary/draw/draw_pt_fetch_emit.c @@ -186,7 +186,7 @@ static void fetch_emit_prepare( struct draw_pt_middle_end *middle, ((char *)draw->pt.user.vbuffer[i] + draw->pt.vertex_buffer[i].buffer_offset), draw->pt.vertex_buffer[i].stride, - draw->pt.user.max_index); + draw->pt.max_index); } *max_vertices = (draw->render->max_vertex_buffer_bytes / diff --git a/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c b/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c index 1e926fb028e..0dbbfe2b73c 100644 --- a/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c +++ b/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c @@ -169,7 +169,7 @@ static void fse_prepare( struct draw_pt_middle_end *middle, ((const ubyte *) draw->pt.user.vbuffer[i] + draw->pt.vertex_buffer[i].buffer_offset), draw->pt.vertex_buffer[i].stride, - draw->pt.user.max_index ); + draw->pt.max_index ); } *max_vertices = (draw->render->max_vertex_buffer_bytes / diff --git a/src/gallium/auxiliary/draw/draw_pt_vsplit.c b/src/gallium/auxiliary/draw/draw_pt_vsplit.c index a6875253094..c19dcd9e1f7 100644 --- a/src/gallium/auxiliary/draw/draw_pt_vsplit.c +++ b/src/gallium/auxiliary/draw/draw_pt_vsplit.c @@ -85,7 +85,12 @@ vsplit_flush_cache(struct vsplit_frontend *vsplit, unsigned flags) static INLINE void vsplit_add_cache(struct vsplit_frontend *vsplit, unsigned fetch) { - unsigned hash = fetch % MAP_SIZE; + struct draw_context *draw = vsplit->draw; + unsigned hash; + + fetch = MIN2(fetch, draw->pt.max_index); + + hash = fetch % MAP_SIZE; if (vsplit->cache.fetches[hash] != fetch) { /* update cache */ diff --git a/src/gallium/auxiliary/draw/draw_pt_vsplit_tmp.h b/src/gallium/auxiliary/draw/draw_pt_vsplit_tmp.h index 10842a36e8a..e9714c1b3fa 100644 --- a/src/gallium/auxiliary/draw/draw_pt_vsplit_tmp.h +++ b/src/gallium/auxiliary/draw/draw_pt_vsplit_tmp.h @@ -56,7 +56,9 @@ CONCAT(vsplit_primitive_, ELT_TYPE)(struct vsplit_frontend *vsplit, for (i = 0; i < icount; i++) { ELT_TYPE idx = ib[i]; - assert(idx >= min_index && idx <= max_index); + if (idx >= min_index && idx <= max_index) { + debug_printf("warning: index out of range\n"); + } } draw_elts = (const ushort *) ib; } @@ -87,7 +89,9 @@ CONCAT(vsplit_primitive_, ELT_TYPE)(struct vsplit_frontend *vsplit, for (i = 0; i < icount; i++) { ELT_TYPE idx = ib[i]; - assert(idx >= min_index && idx <= max_index); + if (idx >= min_index && idx <= max_index) { + debug_printf("warning: index out of range\n"); + } vsplit->draw_elts[i] = (ushort) idx; } } @@ -95,7 +99,9 @@ CONCAT(vsplit_primitive_, ELT_TYPE)(struct vsplit_frontend *vsplit, for (i = 0; i < icount; i++) { ELT_TYPE idx = ib[i]; - assert(idx >= min_index && idx <= max_index); + if (idx >= min_index && idx <= max_index) { + debug_printf("warning: index out of range\n"); + } vsplit->draw_elts[i] = (ushort) (idx - min_index); } } diff --git a/src/gallium/auxiliary/util/u_draw.c b/src/gallium/auxiliary/util/u_draw.c new file mode 100644 index 00000000000..20837be5e59 --- /dev/null +++ b/src/gallium/auxiliary/util/u_draw.c @@ -0,0 +1,99 @@ +/************************************************************************** + * + * Copyright 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, 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 VMWARE AND/OR ITS 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. + * + **************************************************************************/ + + +#include "util/u_debug.h" +#include "util/u_math.h" +#include "util/u_format.h" +#include "util/u_draw.h" + + +/** + * Returns the largest legal index value for the current set of bound vertex + * buffers. Regardless of any other consideration, all vertex lookups need to + * be clamped to 0..max_index to prevent an out-of-bound access. + */ +unsigned +util_draw_max_index( + const struct pipe_vertex_buffer *vertex_buffers, + unsigned nr_vertex_buffers, + const struct pipe_vertex_element *vertex_elements, + unsigned nr_vertex_elements, + const struct pipe_draw_info *info) +{ + unsigned max_index; + unsigned i; + + max_index = ~0; + for (i = 0; i < nr_vertex_elements; i++) { + const struct pipe_vertex_element *element = + &vertex_elements[i]; + const struct pipe_vertex_buffer *buffer = + &vertex_buffers[element->vertex_buffer_index]; + unsigned buffer_size; + const struct util_format_description *format_desc; + unsigned format_size; + + assert(buffer->buffer->height0 == 1); + assert(buffer->buffer->depth0 == 1); + buffer_size = buffer->buffer->width0; + + format_desc = util_format_description(element->src_format); + assert(format_desc->block.width == 1); + assert(format_desc->block.height == 1); + assert(format_desc->block.bits % 8 == 0); + format_size = format_desc->block.bits/8; + + assert(buffer_size - buffer->buffer_offset <= buffer_size); + buffer_size -= buffer->buffer_offset; + + assert(buffer_size - element->src_offset <= buffer_size); + buffer_size -= element->src_offset; + + assert(buffer_size - format_size <= buffer_size); + buffer_size -= format_size; + + if (buffer->stride != 0) { + unsigned buffer_max_index; + + buffer_max_index = buffer_size / buffer->stride; + + if (element->instance_divisor == 0) { + /* Per-vertex data */ + max_index = MIN2(max_index, buffer_max_index); + } + else { + /* Per-instance data. Simply make sure the state tracker didn't + * request more instances than those that fit in the buffer */ + assert((info->start_instance + info->instance_count)/element->instance_divisor + <= (buffer_max_index + 1)); + } + } + } + + return max_index; +} diff --git a/src/gallium/auxiliary/util/u_draw.h b/src/gallium/auxiliary/util/u_draw.h index f06d09ef91d..fdb683ca8a2 100644 --- a/src/gallium/auxiliary/util/u_draw.h +++ b/src/gallium/auxiliary/util/u_draw.h @@ -34,6 +34,11 @@ #include "pipe/p_state.h" +#ifdef __cplusplus +extern "C" { +#endif + + static INLINE void util_draw_init_info(struct pipe_draw_info *info) { @@ -136,4 +141,18 @@ util_draw_range_elements(struct pipe_context *pipe, pipe->draw_vbo(pipe, &info); } + +unsigned +util_draw_max_index( + const struct pipe_vertex_buffer *vertex_buffers, + unsigned nr_vertex_buffers, + const struct pipe_vertex_element *vertex_elements, + unsigned nr_vertex_elements, + const struct pipe_draw_info *info); + + +#ifdef __cplusplus +} #endif + +#endif /* !U_DRAW_H */ From 17bbc1f0425b3768e26473eccea5f2570dcb26d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Fri, 1 Apr 2011 19:19:42 +0100 Subject: [PATCH 108/420] translate: Respect translate_buffer::max_index. --- src/gallium/auxiliary/rtasm/rtasm_x86sse.c | 10 ++++++++++ src/gallium/auxiliary/rtasm/rtasm_x86sse.h | 1 + .../auxiliary/translate/translate_sse.c | 19 +++++++++++++++++-- 3 files changed, 28 insertions(+), 2 deletions(-) diff --git a/src/gallium/auxiliary/rtasm/rtasm_x86sse.c b/src/gallium/auxiliary/rtasm/rtasm_x86sse.c index b03dd3a0cf8..5231bb08374 100644 --- a/src/gallium/auxiliary/rtasm/rtasm_x86sse.c +++ b/src/gallium/auxiliary/rtasm/rtasm_x86sse.c @@ -726,6 +726,16 @@ void x86_movzx16(struct x86_function *p, struct x86_reg dst, struct x86_reg src emit_modrm(p, dst, src); } +void x86_cmovcc( struct x86_function *p, + struct x86_reg dst, + struct x86_reg src, + enum x86_cc cc) +{ + DUMP_RRI( dst, src, cc ); + emit_2ub( p, 0x0f, 0x40 + cc ); + emit_modrm( p, dst, src ); +} + void x86_xor( struct x86_function *p, struct x86_reg dst, struct x86_reg src ) diff --git a/src/gallium/auxiliary/rtasm/rtasm_x86sse.h b/src/gallium/auxiliary/rtasm/rtasm_x86sse.h index 2b9678b1765..af0565bb59d 100644 --- a/src/gallium/auxiliary/rtasm/rtasm_x86sse.h +++ b/src/gallium/auxiliary/rtasm/rtasm_x86sse.h @@ -309,6 +309,7 @@ void sse_movmskps( struct x86_function *p, struct x86_reg dst, struct x86_reg sr void x86_add( struct x86_function *p, struct x86_reg dst, struct x86_reg src ); void x86_and( struct x86_function *p, struct x86_reg dst, struct x86_reg src ); +void x86_cmovcc( struct x86_function *p, struct x86_reg dst, struct x86_reg src, enum x86_cc cc ); void x86_cmp( struct x86_function *p, struct x86_reg dst, struct x86_reg src ); void x86_dec( struct x86_function *p, struct x86_reg reg ); void x86_inc( struct x86_function *p, struct x86_reg reg ); diff --git a/src/gallium/auxiliary/translate/translate_sse.c b/src/gallium/auxiliary/translate/translate_sse.c index ef7f4be4c3e..b00242d8b20 100644 --- a/src/gallium/auxiliary/translate/translate_sse.c +++ b/src/gallium/auxiliary/translate/translate_sse.c @@ -1067,6 +1067,8 @@ static boolean init_inputs( struct translate_sse *p, struct translate_buffer *buffer = &p->buffer[varient->buffer_index]; if (!index_size || varient->instance_divisor) { + struct x86_reg buf_max_index = x86_make_disp(p->machine_EDI, + get_offset(p, &buffer->max_index)); struct x86_reg buf_stride = x86_make_disp(p->machine_EDI, get_offset(p, &buffer->stride)); struct x86_reg buf_ptr = x86_make_disp(p->machine_EDI, @@ -1100,14 +1102,17 @@ static boolean init_inputs( struct translate_sse *p, x86_mov(p->func, tmp_EAX, elt); } - /* - * TODO: Respect translate_buffer::max_index. + /* Clamp to max_index */ + x86_cmp(p->func, tmp_EAX, buf_max_index); + x86_cmovcc(p->func, tmp_EAX, buf_max_index, cc_AE); x86_imul(p->func, tmp_EAX, buf_stride); x64_rexw(p->func); x86_add(p->func, tmp_EAX, buf_base_ptr); + x86_cmp(p->func, p->count_EBP, p->tmp_EAX); + /* In the linear case, keep the buffer pointer instead of the * index number. @@ -1163,6 +1168,10 @@ static struct x86_reg get_buffer_ptr( struct translate_sse *p, x86_make_disp(p->machine_EDI, get_offset(p, &p->buffer[varient->buffer_index].base_ptr)); + struct x86_reg buf_max_index = + x86_make_disp(p->machine_EDI, + get_offset(p, &p->buffer[varient->buffer_index].max_index)); + /* Calculate pointer to current attrib: @@ -1179,6 +1188,12 @@ static struct x86_reg get_buffer_ptr( struct translate_sse *p, x86_mov(p->func, ptr, elt); break; } + + /* Clamp to max_index + */ + x86_cmp(p->func, ptr, buf_max_index); + x86_cmovcc(p->func, ptr, buf_max_index, cc_AE); + x86_imul(p->func, ptr, buf_stride); x64_rexw(p->func); x86_add(p->func, ptr, buf_base_ptr); From 3f68d4b0583bd51b18eba6eb1e4be58f37c61778 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Fri, 1 Apr 2011 20:12:10 +0100 Subject: [PATCH 109/420] scons: Add aliases for unit tests. --- src/gallium/tests/unit/SConscript | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/gallium/tests/unit/SConscript b/src/gallium/tests/unit/SConscript index 49f28c03691..edc1e80a412 100644 --- a/src/gallium/tests/unit/SConscript +++ b/src/gallium/tests/unit/SConscript @@ -19,13 +19,13 @@ progs = [ 'translate_test' ] -for prog in progs: +for progname in progs: prog = env.Program( - target = prog, - source = prog + '.c', + target = progname, + source = progname + '.c', ) - env.InstallProgram(prog) + env.Alias(progname, env.InstallProgram(prog)) # http://www.scons.org/wiki/UnitTests test_alias = env.Alias('unit', [prog], prog[0].abspath) From 6586a3b287ad2799addd392d92c56c7f83e22e8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Fri, 1 Apr 2011 20:13:40 +0100 Subject: [PATCH 110/420] tests: Use elts in translate_test. --- src/gallium/tests/unit/translate_test.c | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/src/gallium/tests/unit/translate_test.c b/src/gallium/tests/unit/translate_test.c index d0946a91a26..2976fb79227 100644 --- a/src/gallium/tests/unit/translate_test.c +++ b/src/gallium/tests/unit/translate_test.c @@ -57,6 +57,7 @@ int main(int argc, char** argv) unsigned char* byte_buffer; float* float_buffer; double* double_buffer; + unsigned * elts; unsigned count = 4; unsigned i, j, k; unsigned passed = 0; @@ -137,6 +138,8 @@ int main(int argc, char** argv) float_buffer = align_malloc(buffer_size, 4096); double_buffer = align_malloc(buffer_size, 4096); + elts = align_malloc(count * sizeof *elts, 4096); + key.nr_elements = 1; key.element[0].input_buffer = 0; key.element[0].input_offset = 0; @@ -156,6 +159,9 @@ int main(int argc, char** argv) for (i = 0; i < buffer_size / sizeof(double); ++i) double_buffer[i] = rand_double(); + for (i = 0; i < count; ++i) + elts[i] = i; + for (output_format = 1; output_format < PIPE_FORMAT_COUNT; ++output_format) { const struct util_format_description* output_format_desc = util_format_description(output_format); @@ -245,14 +251,14 @@ int main(int argc, char** argv) else buffer[0] = byte_buffer; - translate[0]->set_buffer(translate[0], 0, buffer[0], input_format_size, ~0); - translate[0]->run(translate[0], 0, count, 0, buffer[1]); - translate[1]->set_buffer(translate[1], 0, buffer[1], output_format_size, ~0); - translate[1]->run(translate[1], 0, count, 0, buffer[2]); - translate[0]->set_buffer(translate[0], 0, buffer[2], input_format_size, ~0); - translate[0]->run(translate[0], 0, count, 0, buffer[3]); - translate[1]->set_buffer(translate[1], 0, buffer[3], output_format_size, ~0); - translate[1]->run(translate[1], 0, count, 0, buffer[4]); + translate[0]->set_buffer(translate[0], 0, buffer[0], input_format_size, count - 1); + translate[0]->run_elts(translate[0], elts, count, 0, buffer[1]); + translate[1]->set_buffer(translate[1], 0, buffer[1], output_format_size, count - 1); + translate[1]->run_elts(translate[1], elts, count, 0, buffer[2]); + translate[0]->set_buffer(translate[0], 0, buffer[2], input_format_size, count - 1); + translate[0]->run_elts(translate[0], elts, count, 0, buffer[3]); + translate[1]->set_buffer(translate[1], 0, buffer[3], output_format_size, count - 1); + translate[1]->run_elts(translate[1], elts, count, 0, buffer[4]); for (i = 0; i < count; ++i) { From 904b8ba1bb604b2eaaa22f7f074d236011fe213f Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Tue, 29 Mar 2011 13:22:13 -0700 Subject: [PATCH 111/420] i965: Fix the VS thread limits for GT1, and clarify the WM limits on both. --- src/mesa/drivers/dri/i965/brw_context.c | 13 +++++++++++-- src/mesa/drivers/dri/i965/gen6_vs_state.c | 2 +- src/mesa/drivers/dri/i965/gen6_wm_state.c | 2 +- 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_context.c b/src/mesa/drivers/dri/i965/brw_context.c index 9483ec69d96..a74ba5c90b8 100644 --- a/src/mesa/drivers/dri/i965/brw_context.c +++ b/src/mesa/drivers/dri/i965/brw_context.c @@ -183,8 +183,17 @@ GLboolean brwCreateContext( int api, /* WM maximum threads is number of EUs times number of threads per EU. */ if (intel->gen >= 6) { brw->urb.size = 1024; - brw->vs_max_threads = 60; - brw->wm_max_threads = 80; + if (IS_GT2(intel->intelScreen->deviceID)) { + /* This could possibly be 80, but is supposed to require + * disabling of WIZ hashing (bit 6 of GT_MODE, 0x20d0) and a + * GPU reset to change. + */ + brw->wm_max_threads = 40; + brw->vs_max_threads = 60; + } else { + brw->wm_max_threads = 40; + brw->vs_max_threads = 24; + } } else if (intel->gen == 5) { brw->urb.size = 1024; brw->vs_max_threads = 72; diff --git a/src/mesa/drivers/dri/i965/gen6_vs_state.c b/src/mesa/drivers/dri/i965/gen6_vs_state.c index ce0b8ea7eaa..a10cec318d6 100644 --- a/src/mesa/drivers/dri/i965/gen6_vs_state.c +++ b/src/mesa/drivers/dri/i965/gen6_vs_state.c @@ -137,7 +137,7 @@ upload_vs_state(struct brw_context *brw) (brw->vs.prog_data->urb_read_length << GEN6_VS_URB_READ_LENGTH_SHIFT) | (0 << GEN6_VS_URB_ENTRY_READ_OFFSET_SHIFT)); - OUT_BATCH(((60 - 1) << GEN6_VS_MAX_THREADS_SHIFT) | /* max 60 threads for gen6 */ + OUT_BATCH(((brw->vs_max_threads - 1) << GEN6_VS_MAX_THREADS_SHIFT) | GEN6_VS_STATISTICS_ENABLE | GEN6_VS_ENABLE); ADVANCE_BATCH(); diff --git a/src/mesa/drivers/dri/i965/gen6_wm_state.c b/src/mesa/drivers/dri/i965/gen6_wm_state.c index 78901ecac57..f4f04750aeb 100644 --- a/src/mesa/drivers/dri/i965/gen6_wm_state.c +++ b/src/mesa/drivers/dri/i965/gen6_wm_state.c @@ -144,7 +144,7 @@ upload_wm_state(struct brw_context *brw) dw4 |= (brw->wm.prog_data->first_curbe_grf << GEN6_WM_DISPATCH_START_GRF_SHIFT_0); - dw5 |= (40 - 1) << GEN6_WM_MAX_THREADS_SHIFT; + dw5 |= (brw->wm_max_threads - 1) << GEN6_WM_MAX_THREADS_SHIFT; /* CACHE_NEW_WM_PROG */ if (brw->wm.prog_data->dispatch_width == 8) From a019dd0d6e5bba00e8ee7818e004ee42ca507102 Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Sun, 3 Apr 2011 00:57:30 -0700 Subject: [PATCH 112/420] i965: Fix null register use in Sandybridge implied move resolution. Fixes regressions caused by commit 9a21bc6401, namely GPU hangs when running gnome-shell or compiz (Mesa bugs #35820 and #35853). I incorrectly refactored the case that dealt with ARF_NULL; even in that case, the source register needs to be changed to the MRF. NOTE: This is a candidate for the 7.10 branch (if 9a21bc6401 is cherry-picked, take this one too). --- src/mesa/drivers/dri/i965/brw_eu_emit.c | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_eu_emit.c b/src/mesa/drivers/dri/i965/brw_eu_emit.c index 32ee37f8020..57313a59c08 100644 --- a/src/mesa/drivers/dri/i965/brw_eu_emit.c +++ b/src/mesa/drivers/dri/i965/brw_eu_emit.c @@ -68,15 +68,14 @@ gen6_resolve_implied_move(struct brw_compile *p, if (intel->gen != 6) return; - if (src->file == BRW_ARCHITECTURE_REGISTER_FILE && src->nr == BRW_ARF_NULL) - return; - - brw_push_insn_state(p); - brw_set_mask_control(p, BRW_MASK_DISABLE); - brw_set_compression_control(p, BRW_COMPRESSION_NONE); - brw_MOV(p, retype(brw_message_reg(msg_reg_nr), BRW_REGISTER_TYPE_UD), - retype(*src, BRW_REGISTER_TYPE_UD)); - brw_pop_insn_state(p); + if (src->file != BRW_ARCHITECTURE_REGISTER_FILE || src->nr != BRW_ARF_NULL) { + brw_push_insn_state(p); + brw_set_mask_control(p, BRW_MASK_DISABLE); + brw_set_compression_control(p, BRW_COMPRESSION_NONE); + brw_MOV(p, retype(brw_message_reg(msg_reg_nr), BRW_REGISTER_TYPE_UD), + retype(*src, BRW_REGISTER_TYPE_UD)); + brw_pop_insn_state(p); + } *src = brw_message_reg(msg_reg_nr); } From 5d7fefb9afbcc6f1d58a92d07c390e6b912c3b00 Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Sun, 3 Apr 2011 01:39:28 -0700 Subject: [PATCH 113/420] i965/fs: Switch W and 1/W in Sandybridge interpolation setup. Various documentation mentions that "W" is handed to the WM stage, but further digging seems to indicate that they really mean 1/W. The code here is still unclear, but changing this fixes piglit test "fragcoord_w" on Sandybridge as well as a Khronos ES2 conformance test. I also tested 3DMarkMobile ES2.0's taiji and hoverjet demos, as well as Nexuiz, just to be safe. NOTE: This is a candidate for the 7.10 branch. --- src/mesa/drivers/dri/i965/brw_fs.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp index bea6b1841f5..cada1401821 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp @@ -1989,10 +1989,10 @@ fs_visitor::emit_interpolation_setup_gen6() emit(BRW_OPCODE_MOV, this->pixel_x, int_pixel_x); emit(BRW_OPCODE_MOV, this->pixel_y, int_pixel_y); - this->current_annotation = "compute 1/pos.w"; - this->wpos_w = fs_reg(brw_vec8_grf(c->source_w_reg, 0)); - this->pixel_w = fs_reg(this, glsl_type::float_type); - emit_math(FS_OPCODE_RCP, this->pixel_w, wpos_w); + this->current_annotation = "compute pos.w"; + this->pixel_w = fs_reg(brw_vec8_grf(c->source_w_reg, 0)); + this->wpos_w = fs_reg(this, glsl_type::float_type); + emit_math(FS_OPCODE_RCP, this->wpos_w, this->pixel_w); this->delta_x = fs_reg(brw_vec8_grf(2, 0)); this->delta_y = fs_reg(brw_vec8_grf(3, 0)); From 381d32af74e305041b5e75930a32795db94e0e15 Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Sat, 2 Apr 2011 23:14:12 -0700 Subject: [PATCH 114/420] Revert "r300/compiler: Remove obsolete compiler passes" This reverts commit 9f013a8233197d4a0482661cb37cfeac1a61b804. These passes are still need for non-GLSL paths like g3dvl and ARB programs. --- src/mesa/drivers/dri/r300/compiler/Makefile | 1 + src/mesa/drivers/dri/r300/compiler/SConscript | 1 + .../drivers/dri/r300/compiler/r3xx_fragprog.c | 5 + .../drivers/dri/r300/compiler/r3xx_vertprog.c | 2 + .../r300/compiler/radeon_emulate_branches.c | 342 ++++++++++++++++++ .../r300/compiler/radeon_emulate_branches.h | 30 ++ .../dri/r300/compiler/radeon_emulate_loops.c | 34 ++ 7 files changed, 415 insertions(+) create mode 100644 src/mesa/drivers/dri/r300/compiler/radeon_emulate_branches.c create mode 100644 src/mesa/drivers/dri/r300/compiler/radeon_emulate_branches.h diff --git a/src/mesa/drivers/dri/r300/compiler/Makefile b/src/mesa/drivers/dri/r300/compiler/Makefile index 12e5c2e6245..51b896ae91f 100644 --- a/src/mesa/drivers/dri/r300/compiler/Makefile +++ b/src/mesa/drivers/dri/r300/compiler/Makefile @@ -9,6 +9,7 @@ C_SOURCES = \ radeon_code.c \ radeon_compiler.c \ radeon_compiler_util.c \ + radeon_emulate_branches.c \ radeon_emulate_loops.c \ radeon_program.c \ radeon_program_print.c \ diff --git a/src/mesa/drivers/dri/r300/compiler/SConscript b/src/mesa/drivers/dri/r300/compiler/SConscript index f1a48375386..2b4bce1c08c 100755 --- a/src/mesa/drivers/dri/r300/compiler/SConscript +++ b/src/mesa/drivers/dri/r300/compiler/SConscript @@ -25,6 +25,7 @@ r300compiler = env.ConvenienceLibrary( 'radeon_optimize.c', 'radeon_remove_constants.c', 'radeon_rename_regs.c', + 'radeon_emulate_branches.c', 'radeon_emulate_loops.c', 'radeon_dataflow.c', 'radeon_dataflow_deadcode.c', diff --git a/src/mesa/drivers/dri/r300/compiler/r3xx_fragprog.c b/src/mesa/drivers/dri/r300/compiler/r3xx_fragprog.c index 005a150efc0..9286733635f 100644 --- a/src/mesa/drivers/dri/r300/compiler/r3xx_fragprog.c +++ b/src/mesa/drivers/dri/r300/compiler/r3xx_fragprog.c @@ -26,6 +26,7 @@ #include "radeon_compiler_util.h" #include "radeon_dataflow.h" +#include "radeon_emulate_branches.h" #include "radeon_emulate_loops.h" #include "radeon_program_alu.h" #include "radeon_program_tex.h" @@ -129,11 +130,15 @@ void r3xx_compile_fragment_program(struct r300_fragment_program_compiler* c) /* This transformation needs to be done before any of the IF * instructions are modified. */ {"transform KILP", 1, 1, rc_transform_KILP, NULL}, + {"unroll loops", 1, is_r500, rc_unroll_loops, NULL}, + {"transform loops", 1, !is_r500, rc_transform_loops, NULL}, + {"emulate branches", 1, !is_r500, rc_emulate_branches, NULL}, {"saturate output writes", 1, sat_out, rc_local_transform, saturate_output}, {"transform TEX", 1, 1, rc_local_transform, rewrite_tex}, {"native rewrite", 1, is_r500, rc_local_transform, native_rewrite_r500}, {"native rewrite", 1, !is_r500, rc_local_transform, native_rewrite_r300}, {"deadcode", 1, opt, rc_dataflow_deadcode, dataflow_outputs_mark_use}, + {"emulate loops", 1, !is_r500, rc_emulate_loops, NULL}, {"dataflow optimize", 1, opt, rc_optimize, NULL}, {"dataflow swizzles", 1, 1, rc_dataflow_swizzles, NULL}, {"dead constants", 1, 1, rc_remove_unused_constants, &c->code->constants_remap_table}, diff --git a/src/mesa/drivers/dri/r300/compiler/r3xx_vertprog.c b/src/mesa/drivers/dri/r300/compiler/r3xx_vertprog.c index 76cbdb079ed..8ad2175eadf 100644 --- a/src/mesa/drivers/dri/r300/compiler/r3xx_vertprog.c +++ b/src/mesa/drivers/dri/r300/compiler/r3xx_vertprog.c @@ -30,6 +30,7 @@ #include "radeon_dataflow.h" #include "radeon_program_alu.h" #include "radeon_swizzle.h" +#include "radeon_emulate_branches.h" #include "radeon_emulate_loops.h" #include "radeon_remove_constants.h" @@ -998,6 +999,7 @@ void r3xx_compile_vertex_program(struct r300_vertex_program_compiler *c) /* NAME DUMP PREDICATE FUNCTION PARAM */ {"add artificial outputs", 0, 1, rc_vs_add_artificial_outputs, NULL}, {"transform loops", 1, 1, rc_transform_loops, NULL}, + {"emulate branches", 1, !is_r500, rc_emulate_branches, NULL}, {"emulate negative addressing", 1, 1, rc_emulate_negative_addressing, NULL}, {"native rewrite", 1, is_r500, rc_local_transform, alu_rewrite_r500}, {"native rewrite", 1, !is_r500, rc_local_transform, alu_rewrite_r300}, diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_emulate_branches.c b/src/mesa/drivers/dri/r300/compiler/radeon_emulate_branches.c new file mode 100644 index 00000000000..7bede344f30 --- /dev/null +++ b/src/mesa/drivers/dri/r300/compiler/radeon_emulate_branches.c @@ -0,0 +1,342 @@ +/* + * Copyright 2009 Nicolai Hähnle + * + * 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 + * THE AUTHOR(S) 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. */ + +#include "radeon_emulate_branches.h" + +#include + +#include "radeon_compiler.h" +#include "radeon_dataflow.h" + +#define VERBOSE 0 + +#define DBG(...) do { if (VERBOSE) fprintf(stderr, __VA_ARGS__); } while(0) + + +struct proxy_info { + unsigned int Proxied:1; + unsigned int Index:RC_REGISTER_INDEX_BITS; +}; + +struct register_proxies { + struct proxy_info Temporary[RC_REGISTER_MAX_INDEX]; +}; + +struct branch_info { + struct rc_instruction * If; + struct rc_instruction * Else; +}; + +struct emulate_branch_state { + struct radeon_compiler * C; + + struct branch_info * Branches; + unsigned int BranchCount; + unsigned int BranchReserved; +}; + + +static void handle_if(struct emulate_branch_state * s, struct rc_instruction * inst) +{ + struct branch_info * branch; + struct rc_instruction * inst_mov; + + memory_pool_array_reserve(&s->C->Pool, struct branch_info, + s->Branches, s->BranchCount, s->BranchReserved, 1); + + DBG("%s\n", __FUNCTION__); + + branch = &s->Branches[s->BranchCount++]; + memset(branch, 0, sizeof(struct branch_info)); + branch->If = inst; + + /* Make a safety copy of the decision register, because we will need + * it at ENDIF time and it might be overwritten in both branches. */ + inst_mov = rc_insert_new_instruction(s->C, inst->Prev); + inst_mov->U.I.Opcode = RC_OPCODE_MOV; + inst_mov->U.I.DstReg.File = RC_FILE_TEMPORARY; + inst_mov->U.I.DstReg.Index = rc_find_free_temporary(s->C); + inst_mov->U.I.DstReg.WriteMask = RC_MASK_X; + inst_mov->U.I.SrcReg[0] = inst->U.I.SrcReg[0]; + + inst->U.I.SrcReg[0].File = RC_FILE_TEMPORARY; + inst->U.I.SrcReg[0].Index = inst_mov->U.I.DstReg.Index; + inst->U.I.SrcReg[0].Swizzle = 0; + inst->U.I.SrcReg[0].Abs = 0; + inst->U.I.SrcReg[0].Negate = 0; +} + +static void handle_else(struct emulate_branch_state * s, struct rc_instruction * inst) +{ + struct branch_info * branch; + + if (!s->BranchCount) { + rc_error(s->C, "Encountered ELSE outside of branches"); + return; + } + + DBG("%s\n", __FUNCTION__); + + branch = &s->Branches[s->BranchCount - 1]; + branch->Else = inst; +} + + +struct state_and_proxies { + struct emulate_branch_state * S; + struct register_proxies * Proxies; +}; + +static struct proxy_info * get_proxy_info(struct state_and_proxies * sap, + rc_register_file file, unsigned int index) +{ + if (file == RC_FILE_TEMPORARY) { + return &sap->Proxies->Temporary[index]; + } else { + return 0; + } +} + +static void scan_write(void * userdata, struct rc_instruction * inst, + rc_register_file file, unsigned int index, unsigned int comp) +{ + struct state_and_proxies * sap = userdata; + struct proxy_info * proxy = get_proxy_info(sap, file, index); + + if (proxy && !proxy->Proxied) { + proxy->Proxied = 1; + proxy->Index = rc_find_free_temporary(sap->S->C); + } +} + +static void remap_proxy_function(void * userdata, struct rc_instruction * inst, + rc_register_file * pfile, unsigned int * pindex) +{ + struct state_and_proxies * sap = userdata; + struct proxy_info * proxy = get_proxy_info(sap, *pfile, *pindex); + + if (proxy && proxy->Proxied) { + *pfile = RC_FILE_TEMPORARY; + *pindex = proxy->Index; + } +} + +/** + * Redirect all writes in the instruction range [begin, end) to proxy + * temporary registers. + */ +static void allocate_and_insert_proxies(struct emulate_branch_state * s, + struct register_proxies * proxies, + struct rc_instruction * begin, + struct rc_instruction * end) +{ + struct state_and_proxies sap; + + sap.S = s; + sap.Proxies = proxies; + + for(struct rc_instruction * inst = begin; inst != end; inst = inst->Next) { + rc_for_all_writes_mask(inst, scan_write, &sap); + rc_remap_registers(inst, remap_proxy_function, &sap); + } + + for(unsigned int index = 0; index < RC_REGISTER_MAX_INDEX; ++index) { + if (proxies->Temporary[index].Proxied) { + struct rc_instruction * inst_mov = rc_insert_new_instruction(s->C, begin->Prev); + inst_mov->U.I.Opcode = RC_OPCODE_MOV; + inst_mov->U.I.DstReg.File = RC_FILE_TEMPORARY; + inst_mov->U.I.DstReg.Index = proxies->Temporary[index].Index; + inst_mov->U.I.DstReg.WriteMask = RC_MASK_XYZW; + inst_mov->U.I.SrcReg[0].File = RC_FILE_TEMPORARY; + inst_mov->U.I.SrcReg[0].Index = index; + } + } +} + + +static void inject_cmp(struct emulate_branch_state * s, + struct rc_instruction * inst_if, + struct rc_instruction * inst_endif, + rc_register_file file, unsigned int index, + struct proxy_info ifproxy, + struct proxy_info elseproxy) +{ + struct rc_instruction * inst_cmp = rc_insert_new_instruction(s->C, inst_endif); + inst_cmp->U.I.Opcode = RC_OPCODE_CMP; + inst_cmp->U.I.DstReg.File = file; + inst_cmp->U.I.DstReg.Index = index; + inst_cmp->U.I.DstReg.WriteMask = RC_MASK_XYZW; + inst_cmp->U.I.SrcReg[0] = inst_if->U.I.SrcReg[0]; + inst_cmp->U.I.SrcReg[0].Abs = 1; + inst_cmp->U.I.SrcReg[0].Negate = RC_MASK_XYZW; + inst_cmp->U.I.SrcReg[1].File = RC_FILE_TEMPORARY; + inst_cmp->U.I.SrcReg[1].Index = ifproxy.Proxied ? ifproxy.Index : index; + inst_cmp->U.I.SrcReg[2].File = RC_FILE_TEMPORARY; + inst_cmp->U.I.SrcReg[2].Index = elseproxy.Proxied ? elseproxy.Index : index; +} + +static void handle_endif(struct emulate_branch_state * s, struct rc_instruction * inst) +{ + struct branch_info * branch; + struct register_proxies IfProxies; + struct register_proxies ElseProxies; + + if (!s->BranchCount) { + rc_error(s->C, "Encountered ENDIF outside of branches"); + return; + } + + DBG("%s\n", __FUNCTION__); + + branch = &s->Branches[s->BranchCount - 1]; + + memset(&IfProxies, 0, sizeof(IfProxies)); + memset(&ElseProxies, 0, sizeof(ElseProxies)); + + allocate_and_insert_proxies(s, &IfProxies, branch->If->Next, branch->Else ? branch->Else : inst); + + if (branch->Else) + allocate_and_insert_proxies(s, &ElseProxies, branch->Else->Next, inst); + + /* Insert the CMP instructions at the end. */ + for(unsigned int index = 0; index < RC_REGISTER_MAX_INDEX; ++index) { + if (IfProxies.Temporary[index].Proxied || ElseProxies.Temporary[index].Proxied) { + inject_cmp(s, branch->If, inst, RC_FILE_TEMPORARY, index, + IfProxies.Temporary[index], ElseProxies.Temporary[index]); + } + } + + /* Remove all traces of the branch instructions */ + rc_remove_instruction(branch->If); + if (branch->Else) + rc_remove_instruction(branch->Else); + rc_remove_instruction(inst); + + s->BranchCount--; + + if (VERBOSE) { + DBG("Program after ENDIF handling:\n"); + rc_print_program(&s->C->Program); + } +} + + +struct remap_output_data { + unsigned int Output:RC_REGISTER_INDEX_BITS; + unsigned int Temporary:RC_REGISTER_INDEX_BITS; +}; + +static void remap_output_function(void * userdata, struct rc_instruction * inst, + rc_register_file * pfile, unsigned int * pindex) +{ + struct remap_output_data * data = userdata; + + if (*pfile == RC_FILE_OUTPUT && *pindex == data->Output) { + *pfile = RC_FILE_TEMPORARY; + *pindex = data->Temporary; + } +} + + +/** + * Output registers cannot be read from and so cannot be dealt with like + * temporary registers. + * + * We do the simplest thing: If an output registers is written within + * a branch, then *all* writes to this register are proxied to a + * temporary register, and a final MOV is appended to the end of + * the program. + */ +static void fix_output_writes(struct emulate_branch_state * s, struct rc_instruction * inst) +{ + const struct rc_opcode_info * opcode; + + if (!s->BranchCount) + return; + + opcode = rc_get_opcode_info(inst->U.I.Opcode); + + if (!opcode->HasDstReg) + return; + + if (inst->U.I.DstReg.File == RC_FILE_OUTPUT) { + struct remap_output_data remap; + struct rc_instruction * inst_mov; + + remap.Output = inst->U.I.DstReg.Index; + remap.Temporary = rc_find_free_temporary(s->C); + + for(struct rc_instruction * inst = s->C->Program.Instructions.Next; + inst != &s->C->Program.Instructions; + inst = inst->Next) { + rc_remap_registers(inst, &remap_output_function, &remap); + } + + inst_mov = rc_insert_new_instruction(s->C, s->C->Program.Instructions.Prev); + inst_mov->U.I.Opcode = RC_OPCODE_MOV; + inst_mov->U.I.DstReg.File = RC_FILE_OUTPUT; + inst_mov->U.I.DstReg.Index = remap.Output; + inst_mov->U.I.DstReg.WriteMask = RC_MASK_XYZW; + inst_mov->U.I.SrcReg[0].File = RC_FILE_TEMPORARY; + inst_mov->U.I.SrcReg[0].Index = remap.Temporary; + } +} + +/** + * Remove branch instructions; instead, execute both branches + * on different register sets and choose between their results + * using CMP instructions in place of the original ENDIF. + */ +void rc_emulate_branches(struct radeon_compiler *c, void *user) +{ + struct emulate_branch_state s; + struct rc_instruction * ptr; + + memset(&s, 0, sizeof(s)); + s.C = c; + + /* Untypical loop because we may remove the current instruction */ + ptr = c->Program.Instructions.Next; + while(ptr != &c->Program.Instructions) { + struct rc_instruction * inst = ptr; + ptr = ptr->Next; + + if (inst->Type == RC_INSTRUCTION_NORMAL) { + switch(inst->U.I.Opcode) { + case RC_OPCODE_IF: + handle_if(&s, inst); + break; + case RC_OPCODE_ELSE: + handle_else(&s, inst); + break; + case RC_OPCODE_ENDIF: + handle_endif(&s, inst); + break; + default: + fix_output_writes(&s, inst); + break; + } + } else { + rc_error(c, "%s: unhandled instruction type\n", __FUNCTION__); + } + } +} diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_emulate_branches.h b/src/mesa/drivers/dri/r300/compiler/radeon_emulate_branches.h new file mode 100644 index 00000000000..818ab84d0cd --- /dev/null +++ b/src/mesa/drivers/dri/r300/compiler/radeon_emulate_branches.h @@ -0,0 +1,30 @@ +/* + * Copyright 2009 Nicolai Hähnle + * + * 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 + * THE AUTHOR(S) 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. */ + +#ifndef RADEON_EMULATE_BRANCHES_H +#define RADEON_EMULATE_BRANCHES_H + +struct radeon_compiler; + +void rc_emulate_branches(struct radeon_compiler *c, void *user); + +#endif /* RADEON_EMULATE_BRANCHES_H */ diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_emulate_loops.c b/src/mesa/drivers/dri/r300/compiler/radeon_emulate_loops.c index 049a8194a36..205eecd1129 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_emulate_loops.c +++ b/src/mesa/drivers/dri/r300/compiler/radeon_emulate_loops.c @@ -486,3 +486,37 @@ void rc_transform_loops(struct radeon_compiler *c, void *user) } } } + +void rc_unroll_loops(struct radeon_compiler *c, void *user) +{ + struct rc_instruction * inst; + struct loop_info loop; + + for(inst = c->Program.Instructions.Next; + inst != &c->Program.Instructions; inst = inst->Next) { + + if (inst->U.I.Opcode == RC_OPCODE_BGNLOOP) { + if (build_loop_info(c, &loop, inst)) { + try_unroll_loop(c, &loop); + } + } + } +} + +void rc_emulate_loops(struct radeon_compiler *c, void *user) +{ + struct emulate_loop_state * s = &c->loop_state; + int i; + /* Iterate backwards of the list of loops so that loops that nested + * loops are unrolled first. + */ + for( i = s->LoopCount - 1; i >= 0; i-- ){ + unsigned int iterations; + + if(!s->Loops[i].EndLoop){ + continue; + } + iterations = loop_max_possible_iterations(s->C, &s->Loops[i]); + unroll_loop(s->C, &s->Loops[i], iterations); + } +} From c35572352e3e92683988ee8d151b47f4190d62f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Sun, 3 Apr 2011 17:32:47 +0200 Subject: [PATCH 115/420] r300g: remove the redundant reference counter in radeon_bo We already have pb_buffer::reference::count. --- src/gallium/winsys/radeon/drm/radeon_drm_bo.c | 41 ++++++++----------- src/gallium/winsys/radeon/drm/radeon_drm_bo.h | 10 ++--- src/gallium/winsys/radeon/drm/radeon_drm_cs.c | 6 +-- 3 files changed, 21 insertions(+), 36 deletions(-) diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_bo.c b/src/gallium/winsys/radeon/drm/radeon_drm_bo.c index 9eb833454df..eb7225b8738 100644 --- a/src/gallium/winsys/radeon/drm/radeon_drm_bo.c +++ b/src/gallium/winsys/radeon/drm/radeon_drm_bo.c @@ -87,29 +87,7 @@ static struct radeon_bo *get_radeon_bo(struct pb_buffer *_buf) return bo; } -void radeon_bo_unref(struct radeon_bo *bo) -{ - struct drm_gem_close args = {}; - if (!p_atomic_dec_zero(&bo->ref_count)) - return; - - if (bo->name) { - pipe_mutex_lock(bo->mgr->bo_handles_mutex); - util_hash_table_remove(bo->mgr->bo_handles, - (void*)(uintptr_t)bo->name); - pipe_mutex_unlock(bo->mgr->bo_handles_mutex); - } - - if (bo->ptr) - munmap(bo->ptr, bo->size); - - /* Close object. */ - args.handle = bo->handle; - drmIoctl(bo->rws->fd, DRM_IOCTL_GEM_CLOSE, &args); - pipe_mutex_destroy(bo->map_mutex); - FREE(bo); -} static void radeon_bo_wait(struct r300_winsys_bo *_buf) { @@ -142,8 +120,23 @@ static boolean radeon_bo_is_busy(struct r300_winsys_bo *_buf) static void radeon_bo_destroy(struct pb_buffer *_buf) { struct radeon_bo *bo = radeon_bo(_buf); + struct drm_gem_close args = {}; - radeon_bo_unref(bo); + if (bo->name) { + pipe_mutex_lock(bo->mgr->bo_handles_mutex); + util_hash_table_remove(bo->mgr->bo_handles, + (void*)(uintptr_t)bo->name); + pipe_mutex_unlock(bo->mgr->bo_handles_mutex); + } + + if (bo->ptr) + munmap(bo->ptr, bo->size); + + /* Close object. */ + args.handle = bo->handle; + drmIoctl(bo->rws->fd, DRM_IOCTL_GEM_CLOSE, &args); + pipe_mutex_destroy(bo->map_mutex); + FREE(bo); } static unsigned get_pb_usage_from_transfer_flags(enum pipe_transfer_usage usage) @@ -300,7 +293,6 @@ static struct pb_buffer *radeon_bomgr_create_bo(struct pb_manager *_mgr, bo->size = size; pipe_mutex_init(bo->map_mutex); - radeon_bo_ref(bo); return &bo->base; } @@ -531,7 +523,6 @@ static struct r300_winsys_bo *radeon_winsys_bo_from_handle(struct r300_winsys_sc bo->handle = open_arg.handle; bo->size = open_arg.size; bo->name = whandle->handle; - radeon_bo_ref(bo); /* Initialize it. */ pipe_reference_init(&bo->base.base.reference, 1); diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_bo.h b/src/gallium/winsys/radeon/drm/radeon_drm_bo.h index a26866b7e75..3f9a63f5f11 100644 --- a/src/gallium/winsys/radeon/drm/radeon_drm_bo.h +++ b/src/gallium/winsys/radeon/drm/radeon_drm_bo.h @@ -54,8 +54,6 @@ struct radeon_bo { uint32_t handle; uint32_t name; - int ref_count; - /* how many command streams is this bo referenced in? */ int num_cs_references; @@ -70,12 +68,10 @@ struct radeon_bo { struct pb_manager *radeon_bomgr_create(struct radeon_drm_winsys *rws); void radeon_bomgr_init_functions(struct radeon_drm_winsys *ws); -void radeon_bo_unref(struct radeon_bo *buf); - - -static INLINE void radeon_bo_ref(struct radeon_bo *bo) +static INLINE +void radeon_bo_reference(struct radeon_bo **dst, struct radeon_bo *src) { - p_atomic_inc(&bo->ref_count); + pb_reference((struct pb_buffer**)dst, (struct pb_buffer*)src); } static INLINE struct pb_buffer * diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_cs.c b/src/gallium/winsys/radeon/drm/radeon_drm_cs.c index 951791a1727..4adf4ade770 100644 --- a/src/gallium/winsys/radeon/drm/radeon_drm_cs.c +++ b/src/gallium/winsys/radeon/drm/radeon_drm_cs.c @@ -111,8 +111,7 @@ static void radeon_cs_context_cleanup(struct radeon_cs_context *csc) for (i = 0; i < csc->crelocs; i++) { p_atomic_dec(&csc->relocs_bo[i]->num_cs_references); - radeon_bo_unref(csc->relocs_bo[i]); - csc->relocs_bo[i] = NULL; + radeon_bo_reference(&csc->relocs_bo[i], NULL); } csc->crelocs = 0; @@ -266,9 +265,8 @@ static void radeon_add_reloc(struct radeon_cs_context *csc, } /* Initialize the new relocation. */ - radeon_bo_ref(bo); p_atomic_inc(&bo->num_cs_references); - csc->relocs_bo[csc->crelocs] = bo; + radeon_bo_reference(&csc->relocs_bo[csc->crelocs], bo); reloc = &csc->relocs[csc->crelocs]; reloc->handle = bo->handle; reloc->read_domains = rd; From 437c748bf5072d2bded77a00c74c51cdb8b510e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Sun, 3 Apr 2011 18:14:49 +0200 Subject: [PATCH 116/420] r300g: handle DISCARD_WHOLE_RESOURCE for buffers --- src/gallium/drivers/r300/r300_screen_buffer.c | 35 +++++++++++++------ 1 file changed, 25 insertions(+), 10 deletions(-) diff --git a/src/gallium/drivers/r300/r300_screen_buffer.c b/src/gallium/drivers/r300/r300_screen_buffer.c index 986ae384fbf..6c31c39b239 100644 --- a/src/gallium/drivers/r300/r300_screen_buffer.c +++ b/src/gallium/drivers/r300/r300_screen_buffer.c @@ -67,6 +67,20 @@ static void r300_buffer_destroy(struct pipe_screen *screen, util_slab_free(&r300screen->pool_buffers, rbuf); } +static boolean r300_setup_new_winsys_buffer(struct r300_winsys_screen *rws, + struct r300_resource *rbuf) +{ + rbuf->buf = rws->buffer_create(rws, + rbuf->b.b.b.width0, 16, + rbuf->b.b.b.bind, rbuf->b.b.b.usage, + rbuf->domain); + if (!rbuf->buf) + return FALSE; + + rbuf->cs_buf = rws->buffer_get_cs_handle(rbuf->buf); + return TRUE; +} + static struct pipe_transfer* r300_buffer_get_transfer(struct pipe_context *context, struct pipe_resource *resource, @@ -114,6 +128,16 @@ r300_buffer_transfer_map( struct pipe_context *pipe, if (rbuf->constant_buffer) return (uint8_t *) rbuf->constant_buffer + transfer->box.x; + /* Discard the whole resource if needed. */ + if (transfer->usage & PIPE_TRANSFER_DISCARD_WHOLE_RESOURCE && + (rws->cs_is_buffer_referenced(r300->cs, rbuf->cs_buf) || + rws->buffer_is_busy(rbuf->buf))) { + r300_winsys_bo_reference(&rbuf->buf, NULL); + + r300_setup_new_winsys_buffer(rws, rbuf); + assert(rbuf->buf); + } + map = rws->buffer_map(rbuf->buf, r300->cs, transfer->usage); if (map == NULL) @@ -179,7 +203,6 @@ struct pipe_resource *r300_buffer_create(struct pipe_screen *screen, { struct r300_screen *r300screen = r300_screen(screen); struct r300_resource *rbuf; - unsigned alignment = 16; rbuf = util_slab_alloc(&r300screen->pool_buffers); @@ -199,19 +222,11 @@ struct pipe_resource *r300_buffer_create(struct pipe_screen *screen, return &rbuf->b.b.b; } - rbuf->buf = - r300screen->rws->buffer_create(r300screen->rws, - rbuf->b.b.b.width0, alignment, - rbuf->b.b.b.bind, rbuf->b.b.b.usage, - rbuf->domain); - if (!rbuf->buf) { + if (!r300_setup_new_winsys_buffer(r300screen->rws, rbuf)) { util_slab_free(&r300screen->pool_buffers, rbuf); return NULL; } - rbuf->cs_buf = - r300screen->rws->buffer_get_cs_handle(rbuf->buf); - return &rbuf->b.b.b; } From 652bf121f2124ec92b74f6e3e40e6aefcc1c50dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Sun, 3 Apr 2011 19:17:19 +0200 Subject: [PATCH 117/420] r300g: avoid mapping the same buffer twice Shouldn't happen, but you never know. --- src/gallium/winsys/radeon/drm/radeon_drm_bo.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_bo.c b/src/gallium/winsys/radeon/drm/radeon_drm_bo.c index eb7225b8738..4fd82201418 100644 --- a/src/gallium/winsys/radeon/drm/radeon_drm_bo.c +++ b/src/gallium/winsys/radeon/drm/radeon_drm_bo.c @@ -191,6 +191,11 @@ static void *radeon_bo_map_internal(struct pb_buffer *_buf, /* Map the buffer. */ pipe_mutex_lock(bo->map_mutex); + /* Return the pointer if it's already mapped (in case of a race). */ + if (bo->ptr) { + pipe_mutex_unlock(bo->map_mutex); + return bo->ptr; + } args.handle = bo->handle; args.offset = 0; args.size = (uint64_t)bo->size; From f814dd7a8171d9a3c413c3813d2d91d655535041 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Sun, 3 Apr 2011 19:26:54 +0200 Subject: [PATCH 118/420] r300g: tell the GLSL compiler to lower the continue opcode NOTE: This is a candidate for the stable branches. --- src/gallium/drivers/r300/r300_screen.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/r300/r300_screen.c b/src/gallium/drivers/r300/r300_screen.c index f09c9c02972..07d854d633c 100644 --- a/src/gallium/drivers/r300/r300_screen.c +++ b/src/gallium/drivers/r300/r300_screen.c @@ -212,7 +212,7 @@ static int r300_get_shader_param(struct pipe_screen *pscreen, unsigned shader, e case PIPE_SHADER_CAP_MAX_PREDS: return is_r500 ? 1 : 0; case PIPE_SHADER_CAP_TGSI_CONT_SUPPORTED: - return 1; + return 0; case PIPE_SHADER_CAP_INDIRECT_INPUT_ADDR: case PIPE_SHADER_CAP_INDIRECT_OUTPUT_ADDR: case PIPE_SHADER_CAP_INDIRECT_TEMP_ADDR: @@ -250,7 +250,7 @@ static int r300_get_shader_param(struct pipe_screen *pscreen, unsigned shader, e case PIPE_SHADER_CAP_MAX_PREDS: return is_r500 ? 4 : 0; /* XXX guessed. */ case PIPE_SHADER_CAP_TGSI_CONT_SUPPORTED: - return 1; + return 0; case PIPE_SHADER_CAP_INDIRECT_INPUT_ADDR: case PIPE_SHADER_CAP_INDIRECT_OUTPUT_ADDR: case PIPE_SHADER_CAP_INDIRECT_TEMP_ADDR: From 9d881cbd5a4cd3252fdc8e1f81a6d48d67fc5e5c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Sun, 3 Apr 2011 21:18:03 +0200 Subject: [PATCH 119/420] r300g: remove unused RADEON_PB_USAGE_CACHE --- src/gallium/winsys/radeon/drm/radeon_drm_bo.c | 5 ----- src/gallium/winsys/radeon/drm/radeon_drm_bo.h | 1 - 2 files changed, 6 deletions(-) diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_bo.c b/src/gallium/winsys/radeon/drm/radeon_drm_bo.c index 4fd82201418..d90903a91a5 100644 --- a/src/gallium/winsys/radeon/drm/radeon_drm_bo.c +++ b/src/gallium/winsys/radeon/drm/radeon_drm_bo.c @@ -87,8 +87,6 @@ static struct radeon_bo *get_radeon_bo(struct pb_buffer *_buf) return bo; } - - static void radeon_bo_wait(struct r300_winsys_bo *_buf) { struct radeon_bo *bo = get_radeon_bo(pb_buffer(_buf)); @@ -444,9 +442,6 @@ static unsigned get_pb_usage_from_create_flags(unsigned bind, unsigned usage, { unsigned res = 0; - if (bind & (PIPE_BIND_VERTEX_BUFFER | PIPE_BIND_INDEX_BUFFER)) - res |= RADEON_PB_USAGE_CACHE; - if (domain & R300_DOMAIN_GTT) res |= RADEON_PB_USAGE_DOMAIN_GTT; diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_bo.h b/src/gallium/winsys/radeon/drm/radeon_drm_bo.h index 3f9a63f5f11..e0247f2dfc3 100644 --- a/src/gallium/winsys/radeon/drm/radeon_drm_bo.h +++ b/src/gallium/winsys/radeon/drm/radeon_drm_bo.h @@ -36,7 +36,6 @@ #include "pipebuffer/pb_bufmgr.h" #include "os/os_thread.h" -#define RADEON_PB_USAGE_CACHE (1 << 28) #define RADEON_PB_USAGE_DOMAIN_GTT (1 << 29) #define RADEON_PB_USAGE_DOMAIN_VRAM (1 << 30) From 6caac3ecb8bc32d92c35fdb1f0a67541ffa8af29 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Sun, 3 Apr 2011 21:25:40 +0200 Subject: [PATCH 120/420] r300g: do not wait for a busy BO if neither GPU nor CPU is changing it Improves frame rate in apps with at least one user vertex buffer and a hw index buffer. --- src/gallium/winsys/radeon/drm/radeon_drm_bo.c | 47 +++++++++++++++---- src/gallium/winsys/radeon/drm/radeon_drm_bo.h | 7 +++ src/gallium/winsys/radeon/drm/radeon_drm_cs.c | 9 +++- src/gallium/winsys/radeon/drm/radeon_drm_cs.h | 24 ++++++++-- 4 files changed, 75 insertions(+), 12 deletions(-) diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_bo.c b/src/gallium/winsys/radeon/drm/radeon_drm_bo.c index d90903a91a5..3d0fcea1052 100644 --- a/src/gallium/winsys/radeon/drm/radeon_drm_bo.c +++ b/src/gallium/winsys/radeon/drm/radeon_drm_bo.c @@ -99,20 +99,27 @@ static void radeon_bo_wait(struct r300_winsys_bo *_buf) args.handle = bo->handle; while (drmCommandWriteRead(bo->rws->fd, DRM_RADEON_GEM_WAIT_IDLE, &args, sizeof(args)) == -EBUSY); + + bo->busy_for_write = FALSE; } static boolean radeon_bo_is_busy(struct r300_winsys_bo *_buf) { struct radeon_bo *bo = get_radeon_bo(pb_buffer(_buf)); struct drm_radeon_gem_busy args = {}; + boolean busy; if (p_atomic_read(&bo->num_active_ioctls)) { return TRUE; } args.handle = bo->handle; - return drmCommandWriteRead(bo->rws->fd, DRM_RADEON_GEM_BUSY, + busy = drmCommandWriteRead(bo->rws->fd, DRM_RADEON_GEM_BUSY, &args, sizeof(args)) != 0; + + if (!busy) + bo->busy_for_write = FALSE; + return busy; } static void radeon_bo_destroy(struct pb_buffer *_buf) @@ -141,6 +148,9 @@ static unsigned get_pb_usage_from_transfer_flags(enum pipe_transfer_usage usage) { unsigned res = 0; + if (usage & PIPE_TRANSFER_WRITE) + res |= PB_USAGE_CPU_WRITE; + if (usage & PIPE_TRANSFER_DONTBLOCK) res |= PB_USAGE_DONTBLOCK; @@ -171,15 +181,36 @@ static void *radeon_bo_map_internal(struct pb_buffer *_buf, return NULL; } } else { - if (radeon_bo_is_referenced_by_cs(cs, bo)) { - cs->flush_cs(cs->flush_data, 0); + if (!(flags & PB_USAGE_CPU_WRITE)) { + /* Mapping for read. + * + * Since we are mapping for read, we don't need to wait + * if the GPU is using the buffer for read too + * (neither one is changing it). + * + * Only check whether the buffer is being used for write. */ + if (radeon_bo_is_referenced_by_cs_for_write(cs, bo)) { + cs->flush_cs(cs->flush_data, 0); + radeon_bo_wait((struct r300_winsys_bo*)bo); + } else if (bo->busy_for_write) { + /* Update the busy_for_write field (done by radeon_bo_is_busy) + * and wait if needed. */ + if (radeon_bo_is_busy((struct r300_winsys_bo*)bo)) { + radeon_bo_wait((struct r300_winsys_bo*)bo); + } + } } else { - /* Try to avoid busy-waiting in radeon_bo_wait. */ - if (p_atomic_read(&bo->num_active_ioctls)) - radeon_drm_cs_sync_flush(cs); - } + /* Mapping for write. */ + if (radeon_bo_is_referenced_by_cs(cs, bo)) { + cs->flush_cs(cs->flush_data, 0); + } else { + /* Try to avoid busy-waiting in radeon_bo_wait. */ + if (p_atomic_read(&bo->num_active_ioctls)) + radeon_drm_cs_sync_flush(cs); + } - radeon_bo_wait((struct r300_winsys_bo*)bo); + radeon_bo_wait((struct r300_winsys_bo*)bo); + } } } diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_bo.h b/src/gallium/winsys/radeon/drm/radeon_drm_bo.h index e0247f2dfc3..b20a0996c93 100644 --- a/src/gallium/winsys/radeon/drm/radeon_drm_bo.h +++ b/src/gallium/winsys/radeon/drm/radeon_drm_bo.h @@ -60,6 +60,13 @@ struct radeon_bo { * thread, is this bo referenced in? */ int num_active_ioctls; + /* Whether the buffer has been relocated for write and is busy since then. + * This field is updated in: + * - radeon_drm_cs_flush (to TRUE if it's relocated for write) + * - radeon_bo_is_busy (to FALSE if it's not busy) + * - radeon_bo_wait (to FALSE) */ + boolean busy_for_write; + boolean flinked; uint32_t flink; }; diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_cs.c b/src/gallium/winsys/radeon/drm/radeon_drm_cs.c index 4adf4ade770..a506bdc0613 100644 --- a/src/gallium/winsys/radeon/drm/radeon_drm_cs.c +++ b/src/gallium/winsys/radeon/drm/radeon_drm_cs.c @@ -377,9 +377,16 @@ static void radeon_drm_cs_flush(struct r300_winsys_cs *rcs, unsigned flags) cs->csc->chunks[0].length_dw = cs->base.cdw; - for (i = 0; i < crelocs; i++) + for (i = 0; i < crelocs; i++) { + /* Update the number of active asynchronous CS ioctls for the buffer. */ p_atomic_inc(&cs->csc->relocs_bo[i]->num_active_ioctls); + /* Update whether the buffer is busy for write. */ + if (cs->csc->relocs[i].write_domain) { + cs->csc->relocs_bo[i]->busy_for_write = TRUE; + } + } + if (cs->ws->num_cpus > 1 && debug_get_option_thread() && (flags & R300_FLUSH_ASYNC)) { cs->thread = pipe_thread_create(radeon_drm_cs_emit_ioctl, cs->csc); diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_cs.h b/src/gallium/winsys/radeon/drm/radeon_drm_cs.h index dfaa161c318..dc2050a27eb 100644 --- a/src/gallium/winsys/radeon/drm/radeon_drm_cs.h +++ b/src/gallium/winsys/radeon/drm/radeon_drm_cs.h @@ -84,14 +84,32 @@ radeon_drm_cs(struct r300_winsys_cs *base) return (struct radeon_drm_cs*)base; } -static INLINE boolean radeon_bo_is_referenced_by_cs(struct radeon_drm_cs *cs, - struct radeon_bo *bo) +static INLINE boolean +radeon_bo_is_referenced_by_cs(struct radeon_drm_cs *cs, + struct radeon_bo *bo) { return bo->num_cs_references == bo->rws->num_cs || (bo->num_cs_references && radeon_get_reloc(cs->csc, bo) != -1); } -static INLINE boolean radeon_bo_is_referenced_by_any_cs(struct radeon_bo *bo) +static INLINE boolean +radeon_bo_is_referenced_by_cs_for_write(struct radeon_drm_cs *cs, + struct radeon_bo *bo) +{ + int index; + + if (!bo->num_cs_references) + return FALSE; + + index = radeon_get_reloc(cs->csc, bo); + if (index == -1) + return FALSE; + + return cs->csc->relocs[index].write_domain != 0; +} + +static INLINE boolean +radeon_bo_is_referenced_by_any_cs(struct radeon_bo *bo) { return bo->num_cs_references; } From b0da65bd0e5ecb443cfd0dbae15f5ae5638bcf72 Mon Sep 17 00:00:00 2001 From: Alex Deucher Date: Mon, 4 Apr 2011 11:13:44 -0400 Subject: [PATCH 121/420] r600c: add new ontario pci ids Signed-off-by: Alex Deucher --- src/mesa/drivers/dri/radeon/radeon_chipset.h | 2 ++ src/mesa/drivers/dri/radeon/radeon_screen.c | 2 ++ 2 files changed, 4 insertions(+) diff --git a/src/mesa/drivers/dri/radeon/radeon_chipset.h b/src/mesa/drivers/dri/radeon/radeon_chipset.h index bd6f1c79504..88b68e3d191 100644 --- a/src/mesa/drivers/dri/radeon/radeon_chipset.h +++ b/src/mesa/drivers/dri/radeon/radeon_chipset.h @@ -443,6 +443,8 @@ #define PCI_CHIP_PALM_9803 0x9803 #define PCI_CHIP_PALM_9804 0x9804 #define PCI_CHIP_PALM_9805 0x9805 +#define PCI_CHIP_PALM_9806 0x9806 +#define PCI_CHIP_PALM_9807 0x9807 #define PCI_CHIP_BARTS_6720 0x6720 #define PCI_CHIP_BARTS_6721 0x6721 diff --git a/src/mesa/drivers/dri/radeon/radeon_screen.c b/src/mesa/drivers/dri/radeon/radeon_screen.c index 9a6e2feeef4..732efe8bd85 100644 --- a/src/mesa/drivers/dri/radeon/radeon_screen.c +++ b/src/mesa/drivers/dri/radeon/radeon_screen.c @@ -1158,6 +1158,8 @@ static int radeon_set_screen_flags(radeonScreenPtr screen, int device_id) case PCI_CHIP_PALM_9803: case PCI_CHIP_PALM_9804: case PCI_CHIP_PALM_9805: + case PCI_CHIP_PALM_9806: + case PCI_CHIP_PALM_9807: screen->chip_family = CHIP_FAMILY_PALM; screen->chip_flags = RADEON_CHIPSET_TCL; break; From a0fc40f0d5a04fa85f720c0a4a7aa27bbb19e114 Mon Sep 17 00:00:00 2001 From: Alex Deucher Date: Mon, 4 Apr 2011 11:15:18 -0400 Subject: [PATCH 122/420] r600g: add some additional ontario pci ids Signed-off-by: Alex Deucher --- src/gallium/winsys/r600/drm/radeon_pciid.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gallium/winsys/r600/drm/radeon_pciid.c b/src/gallium/winsys/r600/drm/radeon_pciid.c index f19956931de..146d6bd3100 100644 --- a/src/gallium/winsys/r600/drm/radeon_pciid.c +++ b/src/gallium/winsys/r600/drm/radeon_pciid.c @@ -445,6 +445,8 @@ static const struct pci_id radeon_pci_id[] = { {0x1002, 0x9803, CHIP_PALM}, {0x1002, 0x9804, CHIP_PALM}, {0x1002, 0x9805, CHIP_PALM}, + {0x1002, 0x9806, CHIP_PALM}, + {0x1002, 0x9807, CHIP_PALM}, {0x1002, 0x6720, CHIP_BARTS}, {0x1002, 0x6721, CHIP_BARTS}, {0x1002, 0x6722, CHIP_BARTS}, From 2679760834e9c04c81cc9af4bc19d312530ea055 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Mon, 4 Apr 2011 18:35:16 +0200 Subject: [PATCH 123/420] r300/compiler: propagate SaturateMode down to the result of shadow comparison NOTE: This is a candidate for the stable branches. --- src/mesa/drivers/dri/r300/compiler/radeon_program_tex.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_program_tex.c b/src/mesa/drivers/dri/r300/compiler/radeon_program_tex.c index 1cf77d9cf73..45b13101770 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_program_tex.c +++ b/src/mesa/drivers/dri/r300/compiler/radeon_program_tex.c @@ -157,9 +157,11 @@ int radeonTransformTEX( /* Save the output register. */ struct rc_dst_register output_reg = inst->U.I.DstReg; + unsigned saturate_mode = inst->U.I.SaturateMode; /* Redirect TEX to a new temp. */ tmp_texsample = rc_find_free_temporary(c); + inst->U.I.SaturateMode = 0; inst->U.I.DstReg.File = RC_FILE_TEMPORARY; inst->U.I.DstReg.Index = tmp_texsample; inst->U.I.DstReg.WriteMask = RC_MASK_XYZW; @@ -235,6 +237,7 @@ int radeonTransformTEX( inst_cmp = rc_insert_new_instruction(c, inst_add); inst_cmp->U.I.Opcode = RC_OPCODE_CMP; + inst_cmp->U.I.SaturateMode = saturate_mode; inst_cmp->U.I.DstReg = output_reg; inst_cmp->U.I.SrcReg[0].File = RC_FILE_TEMPORARY; inst_cmp->U.I.SrcReg[0].Index = tmp_sum; From 0d96ae8fc7c77768b0abb0e7fce7cb9cdc661c2b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Mon, 4 Apr 2011 18:55:08 +0200 Subject: [PATCH 124/420] r300/compiler: apply the texture swizzle to shadow pass and fail values too Piglit tests: - glsl-fs-shadow2d-01 - glsl-fs-shadow2d-02 - glsl-fs-shadow2d-03 - fs-shadow2d-red-01 - fs-shadow2d-red-02 - fs-shadow2d-red-03 NOTE: This is a candidate for the stable branches. --- .../dri/r300/compiler/radeon_program_tex.c | 28 +++++++++++++------ 1 file changed, 20 insertions(+), 8 deletions(-) diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_program_tex.c b/src/mesa/drivers/dri/r300/compiler/radeon_program_tex.c index 45b13101770..97225808d4d 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_program_tex.c +++ b/src/mesa/drivers/dri/r300/compiler/radeon_program_tex.c @@ -32,8 +32,8 @@ /* Series of transformations to be done on textures. */ -static struct rc_src_register shadow_ambient(struct r300_fragment_program_compiler *compiler, - int tmu) +static struct rc_src_register shadow_fail_value(struct r300_fragment_program_compiler *compiler, + int tmu) { struct rc_src_register reg = { 0, }; @@ -46,6 +46,20 @@ static struct rc_src_register shadow_ambient(struct r300_fragment_program_compil reg.File = RC_FILE_NONE; reg.Swizzle = RC_SWIZZLE_0000; } + + reg.Swizzle = combine_swizzles(reg.Swizzle, + compiler->state.unit[tmu].depth_texture_swizzle); + return reg; +} + +static struct rc_src_register shadow_pass_value(struct r300_fragment_program_compiler *compiler, + int tmu) +{ + struct rc_src_register reg = { 0, }; + + reg.File = RC_FILE_NONE; + reg.Swizzle = combine_swizzles(RC_SWIZZLE_1111, + compiler->state.unit[tmu].depth_texture_swizzle); return reg; } @@ -141,10 +155,9 @@ int radeonTransformTEX( inst->U.I.Opcode = RC_OPCODE_MOV; if (comparefunc == RC_COMPARE_FUNC_ALWAYS) { - inst->U.I.SrcReg[0].File = RC_FILE_NONE; - inst->U.I.SrcReg[0].Swizzle = RC_SWIZZLE_1111; + inst->U.I.SrcReg[0] = shadow_pass_value(compiler, inst->U.I.TexSrcUnit); } else { - inst->U.I.SrcReg[0] = shadow_ambient(compiler, inst->U.I.TexSrcUnit); + inst->U.I.SrcReg[0] = shadow_fail_value(compiler, inst->U.I.TexSrcUnit); } return 1; @@ -244,9 +257,8 @@ int radeonTransformTEX( inst_cmp->U.I.SrcReg[0].Swizzle = combine_swizzles(RC_SWIZZLE_WWWW, compiler->state.unit[inst->U.I.TexSrcUnit].depth_texture_swizzle); - inst_cmp->U.I.SrcReg[pass].File = RC_FILE_NONE; - inst_cmp->U.I.SrcReg[pass].Swizzle = RC_SWIZZLE_1111; - inst_cmp->U.I.SrcReg[fail] = shadow_ambient(compiler, inst->U.I.TexSrcUnit); + inst_cmp->U.I.SrcReg[pass] = shadow_pass_value(compiler, inst->U.I.TexSrcUnit); + inst_cmp->U.I.SrcReg[fail] = shadow_fail_value(compiler, inst->U.I.TexSrcUnit); assert(tmp_texsample != tmp_sum); } From 48f696c79364bc006e77e27de3511b090241080d Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Mon, 4 Apr 2011 11:16:51 -0600 Subject: [PATCH 125/420] docs: update info about Mesa packaging/contents --- docs/download.html | 87 ++++++++++++++-------------------------------- 1 file changed, 27 insertions(+), 60 deletions(-) diff --git a/docs/download.html b/docs/download.html index 3cb9423dd91..03fa60b4dc5 100644 --- a/docs/download.html +++ b/docs/download.html @@ -21,76 +21,52 @@ When a new release is coming, release candidates (betas) may be found

    -Mesa is distributed in several parts: +The Mesa package is named MesaLib-x.y.z.{tar.bz2, tar.gz, zip} where x.y.z +is the version. There are three types of compressed archives.

    -
      -
    • MesaLib-x.y.z - the main Mesa library source code, drivers - and documentation. -
    • -
    • MesaDemos-x.y.z - OpenGL demonstration and test programs. - Most of the programs require GLUT (either the - original GLUT by Mark Kilgard or - freeglut or - OpenGLUT). -
    • -
    • MesaGLUT-x.y.z - Mark Kilgard's GLUT, easily compiled and used - with Mesa. Plus, other implementation of GLUT for DOS, OS/2, BeOS, etc. -
    • -
    -

    -If you're not interested in running the demos, you'll only need the first -package. +There's also the MesaGLUT-x.y.z.{tar.bz2, tar.gz, zip} packages which +contain Mark Kilgard's GLUT library. +This is optional. +Most Linux distributions include an implementation of GLUT (such as freeglut). +

    +

    +In the past, the Mesa demos collection was distributed as +MesaDemos-x.y.z.{tar.bz2, tar.gz, zip}. +Now, the + +Mesa demos are distributed separately.

    -

    -If you're new to this and not sure what you're doing, grab all three packages. -

    - -

    -The packages are available in .tar.gz, .tar.bz2 and .zip formats. -Other sites might offer additional package formats. -

    Unpacking

    -All the packages should be in the same directory prior to unpacking. +To unpack .tar.gz files:

    - -
      -
    • To unpack .tar.gz files:
      -	tar zxf MesaLib-X.Y.tar.gz
      -	tar zxf MesaDemos-X.Y.tar.gz
      -	tar zxf MesaGLUT-X.Y.tar.gz
      +	tar zxf MesaLib-x.y.z.tar.gz
       
      or
      -	gzcat MesaLib-X.Y.tar.gz | tar xf -
      -	gzcat MesaDemos-X.Y.tar.gz | tar xf -
      -	gzcat MesaGLUT-X.Y.tar.gz | tar xf -
      +	gzcat MesaLib-x.y.z.tar.gz | tar xf -
       
      or
      -	gunzip MesaLib-X.Y.tar.gz ; tar xf MesaLib-X.Y.tar
      -	gunzip MesaDemos-X.Y.tar.gz ; tar xf MesaDemos-X.Y.tar
      -	gunzip MesaGLUT-X.Y.tar.gz ; tar xf MesaGLUT-X.Y.tar
      +	gunzip MesaLib-x.y.z.tar.gz ; tar xf MesaLib-x.y.z.tar
       
      -
    • To unpack .tar.bz2 files: +

      +To unpack .tar.bz2 files: +

      -	bunzip2 -c MesaLib-X.Y.tar.gz | tar xf -
      -	bunzip2 -c MesaDemos-X.Y.tar.gz | tar xf -
      -	bunzip2 -c MesaGLUT-X.Y.tar.gz | tar xf -
      +	bunzip2 -c MesaLib-x.y.z.tar.gz | tar xf -
       
      -
    • To unpack .zip files: +

      +To unpack .zip files: +

      -	unzip MesaLib-X.Y.zip
      -	unzip MesaDemos-X.Y.zip
      -	unzip MesaGLUT-X.Y.zip
      +	unzip MesaLib-x.y.z.zip
       
      -

    Contents

    @@ -106,22 +82,13 @@ bin/ - shell scripts for making shared libraries, etc docs/ - documentation src/ - source code for libraries src/mesa - sources for the main Mesa library and device drivers +src/gallium - sources for Gallium and Gallium drivers src/glu - libGLU source code src/glx - sources for building libGL with full GLX and DRI support src/glw - Xt/Motif/OpenGL widget code -If you downloaded and unpacked the MesaDemos.X.Y package: - -
    -progs/demos	- original Mesa demos
    -progs/xdemos	- GLX OpenGL/Mesa demos
    -progs/redbook	- examples from the OpenGL Programming Guide
    -progs/samples	- examples from SGI
    -progs/images/	- image files
    -
    - -If you downloaded and unpacked the MesaGLUT.X.Y package: +If you downloaded and unpacked the MesaGLUT.x.y.z package:
     src/glut	- GLUT library source code
     
    From 32a11e5324dcad267d21188ae21bdc8f0b0f29a1 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Mon, 4 Apr 2011 11:30:46 -0600 Subject: [PATCH 126/420] docs: update prerequisites, remove old demo info --- docs/install.html | 104 +++++++++++----------------------------------- 1 file changed, 24 insertions(+), 80 deletions(-) diff --git a/docs/install.html b/docs/install.html index 3962ea5c91e..bfa3bb8f842 100644 --- a/docs/install.html +++ b/docs/install.html @@ -12,16 +12,16 @@
    1. Unix / X11
    2. Windows -
    3. SCons +
    4. Building with SCons
    5. Other

    @@ -31,8 +31,22 @@

    1. Unix/X11 Compilation and Installation

    - -

    1.1 Prerequisites for DRI and hardware acceleration

    +
    +

    1.1 General prerequisites for building

    + +
      +
    • lex / yacc - for building the GLSL compiler. +On Linux systems, flex and bison are used. +Versions 2.5.35 and 2.4.1, respectively, (or later) should work. +
    • +
    • python - Python is needed for building the Gallium components. +Version 2.6.4 or later should work. +
    • +
    + + +
    +

    1.2 Prerequisites for DRI and hardware acceleration

    The following are required for DRI-based hardware acceleration with Mesa: @@ -49,7 +63,7 @@ version 2.4.15 or later -

    1.2 Building with Autoconf

    +

    1.3 Building with Autoconf

    Mesa may be built using autoconf. @@ -59,7 +73,7 @@ If that fails the traditional Mesa build system is available. -

    1.3 Building with traditional Makefiles

    +

    1.4 Building with traditional Makefiles

    The traditional Mesa build system is based on a collection of pre-defined @@ -126,7 +140,7 @@ Later, if you want to rebuild for a different configuration run -

    1.4 The libraries

    +

    1.5 The libraries

    When compilation has finished, look in the top-level lib/ @@ -185,81 +199,11 @@ If you built the DRI hardware drivers, you'll also see the DRI drivers: -rwxr-xr-x 1 brian users 10997120 Jul 21 12:13 unichrome_dri.so - - -

    1.5 Running the demos

    -

    -If you downloaded/unpacked the MesaDemos-x.y.z.tar.gz archive or -obtained Mesa from CVS, the progs/ directory will contain a -bunch of demonstration programs. +If you built with Gallium support, look in lib/gallium/ for Gallium-based +versions of libGL and device drivers.

    -

    -Before running a demo, you'll probably have to set two environment variables -to indicate where the libraries are located. For example: -

    -

    -cd lib/ -
    -export LD_LIBRARY_PATH=${PWD} -
    -export LIBGL_DRIVERS_PATH=${PWD} (if using DRI drivers) -
    - -

    -Next, change to the Mesa/demos/ directory: -

    -
    -cd ../progs/demos -
    - -

    -Run a demo such as gears: -

    -
    -./gears -
    - -

    -If this doesn't work, try the Mesa/progs/xdemos/glxinfo program -and see that it prints the expected Mesa version number. -

    - -

    -If you're using Linux or a similar OS, verify that the demo program is -being linked with the proper library files: -

    -
    -ldd gears -
    - -

    -You should see something like this: -

    -
    -        libglut.so.3 => /home/brian/Mesa/lib/libglut.so.3 (0x40013000)
    -        libGLU.so.1 => /home/brian/Mesa/lib/libGLU.so.1 (0x40051000)
    -        libGL.so.1 => /home/brian/Mesa/lib/libGL.so.1 (0x400e0000)
    -        libc.so.6 => /lib/i686/libc.so.6 (0x42000000)
    -        libm.so.6 => /lib/i686/libm.so.6 (0x403da000)
    -        libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x403fc000)
    -        libXmu.so.6 => /usr/X11R6/lib/libXmu.so.6 (0x404da000)
    -        libXt.so.6 => /usr/X11R6/lib/libXt.so.6 (0x404f1000)
    -        libXi.so.6 => /usr/X11R6/lib/libXi.so.6 (0x40543000)
    -        libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x4054b000)
    -        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x405fd000)
    -        libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x40605000)
    -        libpthread.so.0 => /lib/i686/libpthread.so.0 (0x40613000)
    -        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
    -        libdl.so.2 => /lib/libdl.so.2 (0x40644000)
    -        libSM.so.6 => /usr/X11R6/lib/libSM.so.6 (0x40647000)
    -        libICE.so.6 => /usr/X11R6/lib/libICE.so.6 (0x40650000)
    -
    - -

    -Retrace your steps if this doesn't look right. -

    From fdb04c0384838d983ccd1bc239dcce2b37ee77f8 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Mon, 4 Apr 2011 14:37:16 -0600 Subject: [PATCH 127/420] mesa: work around failed assertion for GL_RGBA16_SNORM accum buffer We use this format to represent the accum buffer. No snorm texture sampling or rendering takes place. Fixes failed assertion with swrast and any app using the accum buffer (and glxinfo). --- src/mesa/main/renderbuffer.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/mesa/main/renderbuffer.c b/src/mesa/main/renderbuffer.c index 67ee589d776..e6d5fe4bff1 100644 --- a/src/mesa/main/renderbuffer.c +++ b/src/mesa/main/renderbuffer.c @@ -1122,7 +1122,20 @@ _mesa_soft_renderbuffer_storage(struct gl_context *ctx, struct gl_renderbuffer * rb->Width = width; rb->Height = height; rb->_BaseFormat = _mesa_base_fbo_format(ctx, internalFormat); - ASSERT(rb->_BaseFormat); + + if (rb->Name == 0 && + internalFormat == GL_RGBA16_SNORM && + rb->_BaseFormat == 0) { + /* NOTE: This is a special case just for accumulation buffers. + * This is a very limited use case- there's no snorm texturing or + * rendering going on. + */ + rb->_BaseFormat = GL_RGBA; + } + else { + /* the internalFormat should have been error checked long ago */ + ASSERT(rb->_BaseFormat); + } return GL_TRUE; } From 19d06b5c058f08eeaeb2f54bd9d24d0c8b11e621 Mon Sep 17 00:00:00 2001 From: Bryan Cain Date: Mon, 4 Apr 2011 23:07:16 +0200 Subject: [PATCH 128/420] nv50: prevent NV_OP_SELECT from having flags_def defined --- src/gallium/drivers/nv50/nv50_pc.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/gallium/drivers/nv50/nv50_pc.c b/src/gallium/drivers/nv50/nv50_pc.c index 82f1b846527..f6870cc1d8e 100644 --- a/src/gallium/drivers/nv50/nv50_pc.c +++ b/src/gallium/drivers/nv50/nv50_pc.c @@ -180,6 +180,7 @@ nv50_op_can_write_flags(uint opcode) switch (opcode) { /* obvious ones like KIL, CALL, etc. not included */ case NV_OP_PHI: case NV_OP_MOV: + case NV_OP_SELECT: case NV_OP_LINTERP: case NV_OP_PINTERP: case NV_OP_LDA: From ad3fbac00bb4430aa26f4dbd3a795715b0fc7fef Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Sat, 2 Apr 2011 18:49:13 -0700 Subject: [PATCH 129/420] i965: Add the missing supportable EXT_texture_snorm formats This class of hardware can natively sample all of the snorm surface formats that DX10 requires, but it can't do some of the legacy GL formats. In particular, all of the alpha, luminance, and intensity formats are unsupported. This partially fixes the breakage in glean's pixelFormats test since GL_EXT_texture_snorm support was added to Mesa. Reviewed-by: Kenneth Graunke --- src/mesa/drivers/dri/i965/brw_wm_surface_state.c | 4 ++++ src/mesa/drivers/dri/intel/intel_context.c | 5 +++++ 2 files changed, 9 insertions(+) diff --git a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c index 1010d9f6f9c..aeda4d5ce4e 100644 --- a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c +++ b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c @@ -100,7 +100,11 @@ static uint32_t brw_format_for_mesa_format[MESA_FORMAT_COUNT] = [MESA_FORMAT_SLA8] = BRW_SURFACEFORMAT_L8A8_UNORM_SRGB, [MESA_FORMAT_SL8] = BRW_SURFACEFORMAT_L8_UNORM_SRGB, [MESA_FORMAT_DUDV8] = BRW_SURFACEFORMAT_R8G8_SNORM, + [MESA_FORMAT_SIGNED_R8] = BRW_SURFACEFORMAT_R8_SNORM, + [MESA_FORMAT_SIGNED_RG88_REV] = BRW_SURFACEFORMAT_R8G8_SNORM, [MESA_FORMAT_SIGNED_RGBA8888_REV] = BRW_SURFACEFORMAT_R8G8B8A8_SNORM, + [MESA_FORMAT_SIGNED_R16] = BRW_SURFACEFORMAT_R16_SNORM, + [MESA_FORMAT_SIGNED_GR1616] = BRW_SURFACEFORMAT_R16G16_SNORM, }; bool diff --git a/src/mesa/drivers/dri/intel/intel_context.c b/src/mesa/drivers/dri/intel/intel_context.c index c2e2a98af5e..fe8fd349be7 100644 --- a/src/mesa/drivers/dri/intel/intel_context.c +++ b/src/mesa/drivers/dri/intel/intel_context.c @@ -728,8 +728,13 @@ intelInitContext(struct intel_context *intel, ctx->TextureFormatSupported[MESA_FORMAT_RG88] = GL_TRUE; ctx->TextureFormatSupported[MESA_FORMAT_RG1616] = GL_TRUE; + /* GL_MESA_texture_signed_rgba / GL_EXT_texture_snorm */ ctx->TextureFormatSupported[MESA_FORMAT_DUDV8] = GL_TRUE; ctx->TextureFormatSupported[MESA_FORMAT_SIGNED_RGBA8888_REV] = GL_TRUE; + ctx->TextureFormatSupported[MESA_FORMAT_SIGNED_R8] = GL_TRUE; + ctx->TextureFormatSupported[MESA_FORMAT_SIGNED_RG88_REV] = GL_TRUE; + ctx->TextureFormatSupported[MESA_FORMAT_SIGNED_R16] = GL_TRUE; + ctx->TextureFormatSupported[MESA_FORMAT_SIGNED_GR1616] = GL_TRUE; /* GL_EXT_texture_sRGB */ ctx->TextureFormatSupported[MESA_FORMAT_SARGB8] = GL_TRUE; From e397b3a7c051b70a574e34096b70fc98e4e84b2c Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Sat, 2 Apr 2011 18:56:33 -0700 Subject: [PATCH 130/420] mesa: Add fall-back formats for unsupported snorm formats MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This is always the way with real hardware and desktop OpenGL. Some hardware can't do some formats natively. The alpha-only, luminance, and intensity formats are usually the most problematic. Some sized formats can also be problematic. This patch provides fall-back formats for those that are not natively supported. At some point it would be interesting to try providing device-independent conversions using EXT_texture_swizzle. The drivers that support EXT_texture_swizzle could, for example, see GL_LUMINANCE16_SNORM as MESA_FORMAT_SIGNED_R16 with a { r, r, r, 1 } swizzle. Care would need to be taken to prevent issues with using those textures for FBO rendering. This is the rest of the fix for glean's pixelFormats test on i965. Reviewed-by: Marek Olšák Reviewed-by: Kenneth Graunke --- src/mesa/main/texformat.c | 26 +++++++++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/src/mesa/main/texformat.c b/src/mesa/main/texformat.c index 8b7b4ff475d..da907455b86 100644 --- a/src/mesa/main/texformat.c +++ b/src/mesa/main/texformat.c @@ -402,7 +402,7 @@ _mesa_choose_tex_format( struct gl_context *ctx, GLint internalFormat, case GL_RGB_SNORM: case GL_RGB8_SNORM: RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBX8888); - break; + /* FALLTHROUGH */ case GL_RGBA_SNORM: case GL_RGBA8_SNORM: RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA8888); @@ -411,18 +411,27 @@ _mesa_choose_tex_format( struct gl_context *ctx, GLint internalFormat, case GL_ALPHA_SNORM: case GL_ALPHA8_SNORM: RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_A8); + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA8888); + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA8888_REV); break; case GL_LUMINANCE_SNORM: case GL_LUMINANCE8_SNORM: RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_L8); + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBX8888); + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA8888); + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA8888_REV); break; case GL_LUMINANCE_ALPHA_SNORM: case GL_LUMINANCE8_ALPHA8_SNORM: RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_AL88); + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA8888); + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA8888_REV); break; case GL_INTENSITY_SNORM: case GL_INTENSITY8_SNORM: RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_I8); + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA8888); + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA8888_REV); break; case GL_R16_SNORM: RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_R16); @@ -432,21 +441,32 @@ _mesa_choose_tex_format( struct gl_context *ctx, GLint internalFormat, break; case GL_RGB16_SNORM: RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGB_16); - break; + /* FALLTHROUGH */ case GL_RGBA16_SNORM: RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA_16); + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA8888); + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA8888_REV); break; case GL_ALPHA16_SNORM: RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_A16); + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA_16); + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA8888); + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA8888_REV); break; case GL_LUMINANCE16_SNORM: RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_L16); - break; + /* FALLTHROUGH */ case GL_LUMINANCE16_ALPHA16_SNORM: RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_AL1616); + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA_16); + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA8888); + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA8888_REV); break; case GL_INTENSITY16_SNORM: RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_I16); + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA_16); + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA8888); + RETURN_IF_SUPPORTED(MESA_FORMAT_SIGNED_RGBA8888_REV); break; default: ; /* fall-through */ From 6cab07685fa48174b310e52b26151a8fb8a8e6dc Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Mon, 4 Apr 2011 17:24:09 -0600 Subject: [PATCH 131/420] st/mesa: fix zero-sized user vertex buffer bug Commit 4c4ab5668cd6df573db7b065f0493fb80ac70ab8 didn't properly handle the stride==0 case. Fixes https://bugs.freedesktop.org/show_bug.cgi?id=35961 --- src/mesa/state_tracker/st_draw.c | 36 ++++++++++++++++++++------------ 1 file changed, 23 insertions(+), 13 deletions(-) diff --git a/src/mesa/state_tracker/st_draw.c b/src/mesa/state_tracker/st_draw.c index 40afa436292..0eab4f73058 100644 --- a/src/mesa/state_tracker/st_draw.c +++ b/src/mesa/state_tracker/st_draw.c @@ -406,26 +406,36 @@ setup_non_interleaved_attribs(struct gl_context *ctx, } else { /* wrap user data */ + uint bytes; + void *ptr; + if (arrays[mesaAttr]->Ptr) { - uint divisor = arrays[mesaAttr]->InstanceDivisor; - uint length = (divisor ? num_instances / divisor : max_index) + 1; - vbuffer[attr].buffer = - pipe_user_buffer_create(pipe->screen, - (void *) arrays[mesaAttr]->Ptr, - stride * length, - PIPE_BIND_VERTEX_BUFFER); + if (stride == 0) { + bytes = _mesa_sizeof_type(arrays[mesaAttr]->Type) + * arrays[mesaAttr]->Size; + } + else { + uint divisor = arrays[mesaAttr]->InstanceDivisor; + uint length = (divisor ? num_instances / divisor : max_index) + 1; + bytes = stride * length; + } + + ptr = (void *) arrays[mesaAttr]->Ptr; } else { /* no array, use ctx->Current.Attrib[] value */ - uint bytes = sizeof(ctx->Current.Attrib[0]); - vbuffer[attr].buffer = - pipe_user_buffer_create(pipe->screen, - (void *) ctx->Current.Attrib[mesaAttr], - bytes, - PIPE_BIND_VERTEX_BUFFER); + bytes = sizeof(ctx->Current.Attrib[0]); + ptr = (void *) ctx->Current.Attrib[mesaAttr]; stride = 0; } + assert(ptr); + assert(bytes); + + vbuffer[attr].buffer = + pipe_user_buffer_create(pipe->screen, ptr, bytes, + PIPE_BIND_VERTEX_BUFFER); + vbuffer[attr].buffer_offset = 0; /* Track user vertex buffers. */ From ed9396782e40a9a6106f0b3168e723de077c5587 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Mon, 4 Apr 2011 17:36:40 -0600 Subject: [PATCH 132/420] st/mesa: use 'array' local var to simplify the code a bit --- src/mesa/state_tracker/st_draw.c | 57 ++++++++++++++++---------------- 1 file changed, 28 insertions(+), 29 deletions(-) diff --git a/src/mesa/state_tracker/st_draw.c b/src/mesa/state_tracker/st_draw.c index 0eab4f73058..7ed0b8e9651 100644 --- a/src/mesa/state_tracker/st_draw.c +++ b/src/mesa/state_tracker/st_draw.c @@ -253,8 +253,9 @@ is_interleaved_arrays(const struct st_vertex_program *vp, for (attr = 0; attr < vpv->num_inputs; attr++) { const GLuint mesaAttr = vp->index_to_input[attr]; - const struct gl_buffer_object *bufObj = arrays[mesaAttr]->BufferObj; - const GLsizei stride = arrays[mesaAttr]->StrideB; /* in bytes */ + const struct gl_client_array *array = arrays[mesaAttr]; + const struct gl_buffer_object *bufObj = array->BufferObj; + const GLsizei stride = array->StrideB; /* in bytes */ if (firstStride < 0) { firstStride = stride; @@ -272,9 +273,9 @@ is_interleaved_arrays(const struct st_vertex_program *vp, return GL_FALSE; } if (!client_addr) { - client_addr = arrays[mesaAttr]->Ptr; + client_addr = array->Ptr; } - else if (abs(arrays[mesaAttr]->Ptr - client_addr) > firstStride) { + else if (abs(array->Ptr - client_addr) > firstStride) { /* arrays start too far apart */ return GL_FALSE; } @@ -327,9 +328,10 @@ setup_interleaved_attribs(struct gl_context *ctx, for (attr = 0; attr < vpv->num_inputs; attr++) { const GLuint mesaAttr = vp->index_to_input[attr]; - struct gl_buffer_object *bufobj = arrays[mesaAttr]->BufferObj; + const struct gl_client_array *array = arrays[mesaAttr]; + struct gl_buffer_object *bufobj = array->BufferObj; struct st_buffer_object *stobj = st_buffer_object(bufobj); - GLsizei stride = arrays[mesaAttr]->StrideB; + GLsizei stride = array->StrideB; if (attr == 0) { if (bufobj && bufobj->Name) { @@ -337,7 +339,7 @@ setup_interleaved_attribs(struct gl_context *ctx, pipe_resource_reference(&vbuffer->buffer, stobj->buffer); vbuffer->buffer_offset = pointer_to_offset(low_addr); } else { - uint divisor = arrays[mesaAttr]->InstanceDivisor; + uint divisor = array->InstanceDivisor; uint length = (divisor ? num_instances / divisor : max_index) + 1; vbuffer->buffer = pipe_user_buffer_create(pipe->screen, (void*)low_addr, @@ -353,15 +355,13 @@ setup_interleaved_attribs(struct gl_context *ctx, vbuffer->stride = stride; /* in bytes */ } - velements[attr].src_offset = - (unsigned) (arrays[mesaAttr]->Ptr - low_addr); - velements[attr].instance_divisor = arrays[mesaAttr]->InstanceDivisor; + velements[attr].src_offset = (unsigned) (array->Ptr - low_addr); + velements[attr].instance_divisor = array->InstanceDivisor; velements[attr].vertex_buffer_index = 0; - velements[attr].src_format = - st_pipe_vertex_format(arrays[mesaAttr]->Type, - arrays[mesaAttr]->Size, - arrays[mesaAttr]->Format, - arrays[mesaAttr]->Normalized); + velements[attr].src_format = st_pipe_vertex_format(array->Type, + array->Size, + array->Format, + array->Normalized); assert(velements[attr].src_format); } } @@ -389,8 +389,9 @@ setup_non_interleaved_attribs(struct gl_context *ctx, for (attr = 0; attr < vpv->num_inputs; attr++) { const GLuint mesaAttr = vp->index_to_input[attr]; - struct gl_buffer_object *bufobj = arrays[mesaAttr]->BufferObj; - GLsizei stride = arrays[mesaAttr]->StrideB; + const struct gl_client_array *array = arrays[mesaAttr]; + struct gl_buffer_object *bufobj = array->BufferObj; + GLsizei stride = array->StrideB; if (bufobj && bufobj->Name) { /* Attribute data is in a VBO. @@ -402,25 +403,24 @@ setup_non_interleaved_attribs(struct gl_context *ctx, vbuffer[attr].buffer = NULL; pipe_resource_reference(&vbuffer[attr].buffer, stobj->buffer); - vbuffer[attr].buffer_offset = pointer_to_offset(arrays[mesaAttr]->Ptr); + vbuffer[attr].buffer_offset = pointer_to_offset(array->Ptr); } else { /* wrap user data */ uint bytes; void *ptr; - if (arrays[mesaAttr]->Ptr) { + if (array->Ptr) { if (stride == 0) { - bytes = _mesa_sizeof_type(arrays[mesaAttr]->Type) - * arrays[mesaAttr]->Size; + bytes = _mesa_sizeof_type(array->Type) * array->Size; } else { - uint divisor = arrays[mesaAttr]->InstanceDivisor; + uint divisor = array->InstanceDivisor; uint length = (divisor ? num_instances / divisor : max_index) + 1; bytes = stride * length; } - ptr = (void *) arrays[mesaAttr]->Ptr; + ptr = (void *) array->Ptr; } else { /* no array, use ctx->Current.Attrib[] value */ @@ -448,13 +448,12 @@ setup_non_interleaved_attribs(struct gl_context *ctx, vbuffer[attr].stride = stride; /* in bytes */ velements[attr].src_offset = 0; - velements[attr].instance_divisor = arrays[mesaAttr]->InstanceDivisor; + velements[attr].instance_divisor = array->InstanceDivisor; velements[attr].vertex_buffer_index = attr; - velements[attr].src_format - = st_pipe_vertex_format(arrays[mesaAttr]->Type, - arrays[mesaAttr]->Size, - arrays[mesaAttr]->Format, - arrays[mesaAttr]->Normalized); + velements[attr].src_format = st_pipe_vertex_format(array->Type, + array->Size, + array->Format, + array->Normalized); assert(velements[attr].src_format); } } From 5d92596c5619eee4bac0fdc7733bafcd578309de Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Mon, 4 Apr 2011 17:42:25 -0600 Subject: [PATCH 133/420] st/mesa: minor assorted clean-ups and fixes --- src/mesa/state_tracker/st_draw.c | 42 +++++++++++++++++--------------- 1 file changed, 22 insertions(+), 20 deletions(-) diff --git a/src/mesa/state_tracker/st_draw.c b/src/mesa/state_tracker/st_draw.c index 7ed0b8e9651..487f3f19cb3 100644 --- a/src/mesa/state_tracker/st_draw.c +++ b/src/mesa/state_tracker/st_draw.c @@ -181,7 +181,7 @@ static GLuint fixed_types[4] = { /** * Return a PIPE_FORMAT_x for the given GL datatype and size. */ -GLuint +enum pipe_format st_pipe_vertex_format(GLenum type, GLuint size, GLenum format, GLboolean normalized) { @@ -211,7 +211,7 @@ st_pipe_vertex_format(GLenum type, GLuint size, GLenum format, case GL_UNSIGNED_BYTE: return ubyte_types_norm[size-1]; case GL_FIXED: return fixed_types[size-1]; default: assert(0); return 0; - } + } } else { switch (type) { @@ -226,15 +226,13 @@ st_pipe_vertex_format(GLenum type, GLuint size, GLenum format, case GL_UNSIGNED_BYTE: return ubyte_types_scale[size-1]; case GL_FIXED: return fixed_types[size-1]; default: assert(0); return 0; - } + } } - return 0; /* silence compiler warning */ + return PIPE_FORMAT_NONE; /* silence compiler warning */ } - - /** * Examine the active arrays to determine if we have interleaved * vertex arrays all living in one VBO, or all living in user space. @@ -316,8 +314,8 @@ setup_interleaved_attribs(struct gl_context *ctx, GLuint attr; const GLubyte *low_addr = NULL; - /* Find the lowest address. */ - if(vpv->num_inputs) { + /* Find the lowest address of the arrays we're drawing */ + if (vpv->num_inputs) { low_addr = arrays[vp->index_to_input[0]]->Ptr; for (attr = 1; attr < vpv->num_inputs; attr++) { @@ -338,13 +336,14 @@ setup_interleaved_attribs(struct gl_context *ctx, vbuffer->buffer = NULL; pipe_resource_reference(&vbuffer->buffer, stobj->buffer); vbuffer->buffer_offset = pointer_to_offset(low_addr); - } else { + } + else { uint divisor = array->InstanceDivisor; uint length = (divisor ? num_instances / divisor : max_index) + 1; - vbuffer->buffer = - pipe_user_buffer_create(pipe->screen, (void*)low_addr, - stride * length, - PIPE_BIND_VERTEX_BUFFER); + vbuffer->buffer = pipe_user_buffer_create(pipe->screen, + (void*) low_addr, + stride * length, + PIPE_BIND_VERTEX_BUFFER); vbuffer->buffer_offset = 0; /* Track user vertex buffers. */ @@ -603,7 +602,8 @@ st_validate_varrays(struct gl_context *ctx, } else { setup_non_interleaved_attribs(ctx, vp, vpv, arrays, - vbuffer, velements, max_index, num_instances); + vbuffer, velements, max_index, + num_instances); num_vbuffers = vpv->num_inputs; num_velements = vpv->num_inputs; } @@ -656,7 +656,8 @@ st_draw_vbo(struct gl_context *ctx, for (i = 0; i < nr_prims; i++) { num_instances = MAX2(num_instances, prims[i].num_instances); } - } else { + } + else { /* Get min/max index for non-indexed drawing. */ min_index = ~0; max_index = 0; @@ -708,7 +709,8 @@ st_draw_vbo(struct gl_context *ctx, pipe->redefine_user_buffer(pipe, st->user_vb[i], min_index * stride, (max_index + 1 - min_index) * stride); - } else { + } + else { /* stride == 0 */ pipe->redefine_user_buffer(pipe, st->user_vb[i], 0, st->user_vb[i]->width0); @@ -752,7 +754,8 @@ st_draw_vbo(struct gl_context *ctx, } -void st_init_draw( struct st_context *st ) +void +st_init_draw(struct st_context *st) { struct gl_context *ctx = st->ctx; @@ -772,11 +775,10 @@ void st_init_draw( struct st_context *st ) } -void st_destroy_draw( struct st_context *st ) +void +st_destroy_draw(struct st_context *st) { #if FEATURE_feedback || FEATURE_rastpos draw_destroy(st->draw); #endif } - - From c97234507ad7de36e57868ade22a11ea8de773a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Tue, 5 Apr 2011 02:44:03 +0200 Subject: [PATCH 134/420] r300/compiler: set the MSB of ADDR for inline constants The docs say so. --- src/mesa/drivers/dri/r300/compiler/r500_fragprog_emit.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/mesa/drivers/dri/r300/compiler/r500_fragprog_emit.c b/src/mesa/drivers/dri/r300/compiler/r500_fragprog_emit.c index 2f8d6e4d04b..9b5c7c6e489 100644 --- a/src/mesa/drivers/dri/r300/compiler/r500_fragprog_emit.c +++ b/src/mesa/drivers/dri/r300/compiler/r500_fragprog_emit.c @@ -197,11 +197,14 @@ static void use_temporary(struct r500_fragment_program_code* code, unsigned int static unsigned int use_source(struct r500_fragment_program_code* code, struct rc_pair_instruction_source src) { + /* From docs: + * Note that inline constants set the MSB of ADDR0 and clear ADDR0_CONST. + * MSB = 1 << 7 */ if (!src.Used) - return 0; + return 1 << 7; if (src.File == RC_FILE_CONSTANT) { - return src.Index | 0x100; + return src.Index | R500_RGB_ADDR0_CONST; } else if (src.File == RC_FILE_TEMPORARY) { use_temporary(code, src.Index); return src.Index; From 20141d9efdf674a3c7a13a75fabe533665d02cd0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Tue, 5 Apr 2011 06:18:18 +0200 Subject: [PATCH 135/420] r300/compiler: implement the CND opcode No one uses it now, but I will need it for a lowering pass. --- src/gallium/drivers/r300/r300_tgsi_to_rc.c | 3 +-- src/mesa/drivers/dri/r300/compiler/r300_fragprog_emit.c | 2 ++ src/mesa/drivers/dri/r300/compiler/r500_fragprog_emit.c | 2 ++ src/mesa/drivers/dri/r300/compiler/radeon_opcodes.c | 7 +++++++ src/mesa/drivers/dri/r300/compiler/radeon_opcodes.h | 3 +++ src/mesa/drivers/dri/r300/compiler/radeon_pair_translate.c | 1 + src/mesa/drivers/dri/r300/r300_reg.h | 2 +- 7 files changed, 17 insertions(+), 3 deletions(-) diff --git a/src/gallium/drivers/r300/r300_tgsi_to_rc.c b/src/gallium/drivers/r300/r300_tgsi_to_rc.c index 97ec0a1a1f2..6a000cfe2c6 100644 --- a/src/gallium/drivers/r300/r300_tgsi_to_rc.c +++ b/src/gallium/drivers/r300/r300_tgsi_to_rc.c @@ -52,8 +52,7 @@ static unsigned translate_opcode(unsigned opcode) case TGSI_OPCODE_MAD: return RC_OPCODE_MAD; case TGSI_OPCODE_SUB: return RC_OPCODE_SUB; case TGSI_OPCODE_LRP: return RC_OPCODE_LRP; - /* case TGSI_OPCODE_CND: return RC_OPCODE_CND; */ - /* case TGSI_OPCODE_CND0: return RC_OPCODE_CND0; */ + case TGSI_OPCODE_CND: return RC_OPCODE_CND; /* case TGSI_OPCODE_DP2A: return RC_OPCODE_DP2A; */ /* gap */ case TGSI_OPCODE_FRC: return RC_OPCODE_FRC; diff --git a/src/mesa/drivers/dri/r300/compiler/r300_fragprog_emit.c b/src/mesa/drivers/dri/r300/compiler/r300_fragprog_emit.c index 28d132a5fe3..646a415ca51 100644 --- a/src/mesa/drivers/dri/r300/compiler/r300_fragprog_emit.c +++ b/src/mesa/drivers/dri/r300/compiler/r300_fragprog_emit.c @@ -108,6 +108,7 @@ static unsigned int translate_rgb_opcode(struct r300_fragment_program_compiler * { switch(opcode) { case RC_OPCODE_CMP: return R300_ALU_OUTC_CMP; + case RC_OPCODE_CND: return R300_ALU_OUTC_CND; case RC_OPCODE_DP3: return R300_ALU_OUTC_DP3; case RC_OPCODE_DP4: return R300_ALU_OUTC_DP4; case RC_OPCODE_FRC: return R300_ALU_OUTC_FRC; @@ -127,6 +128,7 @@ static unsigned int translate_alpha_opcode(struct r300_fragment_program_compiler { switch(opcode) { case RC_OPCODE_CMP: return R300_ALU_OUTA_CMP; + case RC_OPCODE_CND: return R300_ALU_OUTA_CND; case RC_OPCODE_DP3: return R300_ALU_OUTA_DP4; case RC_OPCODE_DP4: return R300_ALU_OUTA_DP4; case RC_OPCODE_EX2: return R300_ALU_OUTA_EX2; diff --git a/src/mesa/drivers/dri/r300/compiler/r500_fragprog_emit.c b/src/mesa/drivers/dri/r300/compiler/r500_fragprog_emit.c index 9b5c7c6e489..c7f79bc53c7 100644 --- a/src/mesa/drivers/dri/r300/compiler/r500_fragprog_emit.c +++ b/src/mesa/drivers/dri/r300/compiler/r500_fragprog_emit.c @@ -93,6 +93,7 @@ static unsigned int translate_rgb_op(struct r300_fragment_program_compiler *c, r { switch(opcode) { case RC_OPCODE_CMP: return R500_ALU_RGBA_OP_CMP; + case RC_OPCODE_CND: return R500_ALU_RGBA_OP_CND; case RC_OPCODE_DDX: return R500_ALU_RGBA_OP_MDH; case RC_OPCODE_DDY: return R500_ALU_RGBA_OP_MDV; case RC_OPCODE_DP3: return R500_ALU_RGBA_OP_DP3; @@ -114,6 +115,7 @@ static unsigned int translate_alpha_op(struct r300_fragment_program_compiler *c, { switch(opcode) { case RC_OPCODE_CMP: return R500_ALPHA_OP_CMP; + case RC_OPCODE_CND: return R500_ALPHA_OP_CND; case RC_OPCODE_COS: return R500_ALPHA_OP_COS; case RC_OPCODE_DDX: return R500_ALPHA_OP_MDH; case RC_OPCODE_DDY: return R500_ALPHA_OP_MDV; diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_opcodes.c b/src/mesa/drivers/dri/r300/compiler/radeon_opcodes.c index 25afd272bee..e3e498e8fb4 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_opcodes.c +++ b/src/mesa/drivers/dri/r300/compiler/radeon_opcodes.c @@ -80,6 +80,13 @@ struct rc_opcode_info rc_opcodes[MAX_RC_OPCODE] = { .HasDstReg = 1, .IsComponentwise = 1 }, + { + .Opcode = RC_OPCODE_CND, + .Name = "CND", + .NumSrcRegs = 3, + .HasDstReg = 1, + .IsComponentwise = 1 + }, { .Opcode = RC_OPCODE_COS, .Name = "COS", diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_opcodes.h b/src/mesa/drivers/dri/r300/compiler/radeon_opcodes.h index 7e666101276..b5868820611 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_opcodes.h +++ b/src/mesa/drivers/dri/r300/compiler/radeon_opcodes.h @@ -56,6 +56,9 @@ typedef enum { /** vec4 instruction: dst.c = src0.c < 0.0 ? src1.c : src2.c */ RC_OPCODE_CMP, + /** vec4 instruction: dst.c = src2.c > 0.5 ? src0.c : src1.c */ + RC_OPCODE_CND, + /** scalar instruction: dst = cos(src0.x) */ RC_OPCODE_COS, diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_pair_translate.c b/src/mesa/drivers/dri/r300/compiler/radeon_pair_translate.c index fed3a3f7642..2dae56a2428 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_pair_translate.c +++ b/src/mesa/drivers/dri/r300/compiler/radeon_pair_translate.c @@ -99,6 +99,7 @@ static void classify_instruction(struct rc_sub_instruction * inst, switch(inst->Opcode) { case RC_OPCODE_ADD: case RC_OPCODE_CMP: + case RC_OPCODE_CND: case RC_OPCODE_DDX: case RC_OPCODE_DDY: case RC_OPCODE_FRC: diff --git a/src/mesa/drivers/dri/r300/r300_reg.h b/src/mesa/drivers/dri/r300/r300_reg.h index 2b9d85fae8b..8980bd3dde1 100644 --- a/src/mesa/drivers/dri/r300/r300_reg.h +++ b/src/mesa/drivers/dri/r300/r300_reg.h @@ -1906,7 +1906,7 @@ USE OR OTHER DEALINGS IN THE SOFTWARE. # define R300_ALU_OUTC_D2A (3 << 23) # define R300_ALU_OUTC_MIN (4 << 23) # define R300_ALU_OUTC_MAX (5 << 23) -# define R300_ALU_OUTC_CMPH (7 << 23) +# define R300_ALU_OUTC_CND (7 << 23) # define R300_ALU_OUTC_CMP (8 << 23) # define R300_ALU_OUTC_FRC (9 << 23) # define R300_ALU_OUTC_REPL_ALPHA (10 << 23) From b3011ea60cc36a888da031ebac932d67473f4521 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Tue, 5 Apr 2011 06:21:26 +0200 Subject: [PATCH 136/420] r300g: fix RG/LATC1_SNORM by doing UNORM->SNORM conversion in the shader --- src/gallium/drivers/r300/r300_fs.c | 37 ++++++++----- src/gallium/drivers/r300/r300_state_derived.c | 7 ++- src/gallium/drivers/r300/r300_texture.c | 45 ++++++++++------ src/gallium/drivers/r300/r300_texture.h | 4 ++ .../drivers/dri/r300/compiler/radeon_code.h | 12 +++-- .../dri/r300/compiler/radeon_program_tex.c | 54 +++++++++++++++++-- 6 files changed, 123 insertions(+), 36 deletions(-) diff --git a/src/gallium/drivers/r300/r300_fs.c b/src/gallium/drivers/r300/r300_fs.c index 37fe6622cd7..e3a1bc4a0f4 100644 --- a/src/gallium/drivers/r300/r300_fs.c +++ b/src/gallium/drivers/r300/r300_fs.c @@ -22,6 +22,7 @@ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE * USE OR OTHER DEALINGS IN THE SOFTWARE. */ +#include "util/u_format.h" #include "util/u_math.h" #include "util/u_memory.h" @@ -34,6 +35,7 @@ #include "r300_screen.h" #include "r300_fs.h" #include "r300_reg.h" +#include "r300_texture.h" #include "r300_tgsi_to_rc.h" #include "radeon_code.h" @@ -148,7 +150,6 @@ static void get_external_state( struct r300_textures_state *texstate = r300->textures_state.state; struct r300_rs_state *rs = r300->rs_state.state; unsigned i; - unsigned char *swizzle; state->frag_clamp = rs ? rs->rs.clamp_fragment_color : 0; @@ -161,27 +162,37 @@ static void get_external_state( continue; } - t = r300_resource(texstate->sampler_views[i]->base.texture); + t = r300_resource(v->base.texture); if (s->state.compare_mode == PIPE_TEX_COMPARE_R_TO_TEXTURE) { state->unit[i].compare_mode_enabled = 1; - /* Pass depth texture swizzling to the compiler. */ - if (texstate->sampler_views[i]) { - swizzle = texstate->sampler_views[i]->swizzle; - - state->unit[i].depth_texture_swizzle = - RC_MAKE_SWIZZLE(swizzle[0], swizzle[1], - swizzle[2], swizzle[3]); - } else { - state->unit[i].depth_texture_swizzle = RC_SWIZZLE_XYZW; - } - /* Fortunately, no need to translate this. */ state->unit[i].texture_compare_func = s->state.compare_func; } state->unit[i].non_normalized_coords = !s->state.normalized_coords; + state->unit[i].convert_unorm_to_snorm = + v->base.format == PIPE_FORMAT_RGTC1_SNORM || + v->base.format == PIPE_FORMAT_LATC1_SNORM; + + /* Pass texture swizzling to the compiler, some lowering passes need it. */ + if (v->base.format == PIPE_FORMAT_RGTC1_SNORM || + v->base.format == PIPE_FORMAT_LATC1_SNORM) { + unsigned char swizzle[4]; + + util_format_combine_swizzles(swizzle, + util_format_description(v->base.format)->swizzle, + v->swizzle); + + state->unit[i].texture_swizzle = + RC_MAKE_SWIZZLE(swizzle[0], swizzle[1], + swizzle[2], swizzle[3]); + } else if (state->unit[i].compare_mode_enabled) { + state->unit[i].texture_swizzle = + RC_MAKE_SWIZZLE(v->swizzle[0], v->swizzle[1], + v->swizzle[2], v->swizzle[3]); + } /* XXX this should probably take into account STR, not just S. */ if (t->tex.is_npot) { diff --git a/src/gallium/drivers/r300/r300_state_derived.c b/src/gallium/drivers/r300/r300_state_derived.c index 50cde5528ef..02fc1219e95 100644 --- a/src/gallium/drivers/r300/r300_state_derived.c +++ b/src/gallium/drivers/r300/r300_state_derived.c @@ -650,8 +650,13 @@ static uint32_t r300_get_border_color(enum pipe_format format, if (util_format_is_compressed(format)) { switch (format) { case PIPE_FORMAT_RGTC1_SNORM: - case PIPE_FORMAT_RGTC1_UNORM: case PIPE_FORMAT_LATC1_SNORM: + border_swizzled[0] = border_swizzled[0] < 0 ? + border_swizzled[0]*0.5+1 : + border_swizzled[0]*0.5; + /* Pass through. */ + + case PIPE_FORMAT_RGTC1_UNORM: case PIPE_FORMAT_LATC1_UNORM: /* Add 1/32 to round the border color instead of truncating. */ /* The Y component is used for the border color. */ diff --git a/src/gallium/drivers/r300/r300_texture.c b/src/gallium/drivers/r300/r300_texture.c index 62143808223..ea6d9824030 100644 --- a/src/gallium/drivers/r300/r300_texture.c +++ b/src/gallium/drivers/r300/r300_texture.c @@ -39,6 +39,18 @@ #include "pipe/p_screen.h" +void util_format_combine_swizzles(unsigned char *dst, + const unsigned char *swz1, + const unsigned char *swz2) +{ + unsigned i; + + for (i = 0; i < 4; i++) { + dst[i] = swz2[i] <= UTIL_FORMAT_SWIZZLE_W ? + swz1[swz2[i]] : swz2[i]; + } +} + unsigned r300_get_swizzle_combined(const unsigned char *swizzle_format, const unsigned char *swizzle_view, boolean dxtc_swizzle) @@ -61,10 +73,7 @@ unsigned r300_get_swizzle_combined(const unsigned char *swizzle_format, if (swizzle_view) { /* Combine two sets of swizzles. */ - for (i = 0; i < 4; i++) { - swizzle[i] = swizzle_view[i] <= UTIL_FORMAT_SWIZZLE_W ? - swizzle_format[swizzle_view[i]] : swizzle_view[i]; - } + util_format_combine_swizzles(swizzle, swizzle_format, swizzle_view); } else { memcpy(swizzle, swizzle_format, 4); } @@ -171,17 +180,22 @@ uint32_t r300_translate_texformat(enum pipe_format format, } } - if (util_format_is_compressed(format) && - dxtc_swizzle && - format != PIPE_FORMAT_RGTC2_UNORM && - format != PIPE_FORMAT_RGTC2_SNORM && - format != PIPE_FORMAT_LATC2_UNORM && - format != PIPE_FORMAT_LATC2_SNORM) { - result |= r300_get_swizzle_combined(desc->swizzle, swizzle_view, - TRUE); - } else { - result |= r300_get_swizzle_combined(desc->swizzle, swizzle_view, - FALSE); + /* Add swizzling. */ + /* The RGTC1_SNORM and LATC1_SNORM swizzle is done in the shader. */ + if (format != PIPE_FORMAT_RGTC1_SNORM && + format != PIPE_FORMAT_LATC1_SNORM) { + if (util_format_is_compressed(format) && + dxtc_swizzle && + format != PIPE_FORMAT_RGTC2_UNORM && + format != PIPE_FORMAT_RGTC2_SNORM && + format != PIPE_FORMAT_LATC2_UNORM && + format != PIPE_FORMAT_LATC2_SNORM) { + result |= r300_get_swizzle_combined(desc->swizzle, swizzle_view, + TRUE); + } else { + result |= r300_get_swizzle_combined(desc->swizzle, swizzle_view, + FALSE); + } } /* S3TC formats. */ @@ -212,7 +226,6 @@ uint32_t r300_translate_texformat(enum pipe_format format, switch (format) { case PIPE_FORMAT_RGTC1_SNORM: case PIPE_FORMAT_LATC1_SNORM: - result |= sign_bit[2]; case PIPE_FORMAT_LATC1_UNORM: case PIPE_FORMAT_RGTC1_UNORM: return R500_TX_FORMAT_ATI1N | result; diff --git a/src/gallium/drivers/r300/r300_texture.h b/src/gallium/drivers/r300/r300_texture.h index 158a387478f..4586bb2e4dc 100644 --- a/src/gallium/drivers/r300/r300_texture.h +++ b/src/gallium/drivers/r300/r300_texture.h @@ -35,6 +35,10 @@ struct r300_texture_desc; struct r300_resource; struct r300_screen; +void util_format_combine_swizzles(unsigned char *dst, + const unsigned char *swz1, + const unsigned char *swz2); + unsigned r300_get_swizzle_combined(const unsigned char *swizzle_format, const unsigned char *swizzle_view, boolean dxtc_swizzle); diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_code.h b/src/mesa/drivers/dri/r300/compiler/radeon_code.h index 35360aa70f0..67e6acf8b10 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_code.h +++ b/src/mesa/drivers/dri/r300/compiler/radeon_code.h @@ -132,10 +132,10 @@ typedef enum { struct r300_fragment_program_external_state { struct { /** - * If the sampler is used as a shadow sampler, - * this field contains swizzle depending on the depth texture mode. + * This field contains swizzle for some lowering passes + * (shadow comparison, unorm->snorm conversion) */ - unsigned depth_texture_swizzle:12; + unsigned texture_swizzle:12; /** * If the sampler is used as a shadow sampler, @@ -172,6 +172,12 @@ struct r300_fragment_program_external_state { * and right before texture fetch. The scaling factor is given by * RC_STATE_R300_TEXSCALE_FACTOR. */ unsigned clamp_and_scale_before_fetch : 1; + + /** + * Fetch RGTC1_SNORM or LATC1_SNORM as UNORM and convert UNORM -> SNORM + * in the shader. + */ + unsigned convert_unorm_to_snorm:1; } unit[16]; unsigned frag_clamp:1; diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_program_tex.c b/src/mesa/drivers/dri/r300/compiler/radeon_program_tex.c index 97225808d4d..cef448ee4e1 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_program_tex.c +++ b/src/mesa/drivers/dri/r300/compiler/radeon_program_tex.c @@ -48,7 +48,7 @@ static struct rc_src_register shadow_fail_value(struct r300_fragment_program_com } reg.Swizzle = combine_swizzles(reg.Swizzle, - compiler->state.unit[tmu].depth_texture_swizzle); + compiler->state.unit[tmu].texture_swizzle); return reg; } @@ -59,7 +59,7 @@ static struct rc_src_register shadow_pass_value(struct r300_fragment_program_com reg.File = RC_FILE_NONE; reg.Swizzle = combine_swizzles(RC_SWIZZLE_1111, - compiler->state.unit[tmu].depth_texture_swizzle); + compiler->state.unit[tmu].texture_swizzle); return reg; } @@ -256,7 +256,7 @@ int radeonTransformTEX( inst_cmp->U.I.SrcReg[0].Index = tmp_sum; inst_cmp->U.I.SrcReg[0].Swizzle = combine_swizzles(RC_SWIZZLE_WWWW, - compiler->state.unit[inst->U.I.TexSrcUnit].depth_texture_swizzle); + compiler->state.unit[inst->U.I.TexSrcUnit].texture_swizzle); inst_cmp->U.I.SrcReg[pass] = shadow_pass_value(compiler, inst->U.I.TexSrcUnit); inst_cmp->U.I.SrcReg[fail] = shadow_fail_value(compiler, inst->U.I.TexSrcUnit); @@ -411,6 +411,7 @@ int radeonTransformTEX( inst->U.I.SrcReg[0].Index = temp; } + /* NPOT -> POT conversion for 3D textures. */ if (inst->U.I.Opcode != RC_OPCODE_KIL && compiler->state.unit[inst->U.I.TexSrcUnit].clamp_and_scale_before_fetch) { struct rc_instruction *inst_mov; @@ -440,6 +441,53 @@ int radeonTransformTEX( scale_texcoords(compiler, inst, RC_STATE_R300_TEXSCALE_FACTOR); } + /* Convert SNORM-encoded ATI1N sampled as UNORM to SNORM. + * Formula: dst = tex > 0.5 ? tex*2-2 : tex*2 + */ + if (inst->U.I.Opcode != RC_OPCODE_KIL && + compiler->state.unit[inst->U.I.TexSrcUnit].convert_unorm_to_snorm) { + unsigned two, two_swizzle; + struct rc_instruction *inst_mul, *inst_mad, *inst_cnd; + + two = rc_constants_add_immediate_scalar(&c->Program.Constants, 2.35, &two_swizzle); + + inst_mul = rc_insert_new_instruction(c, inst); + inst_mul->U.I.Opcode = RC_OPCODE_MUL; + inst_mul->U.I.DstReg.File = RC_FILE_TEMPORARY; + inst_mul->U.I.DstReg.Index = rc_find_free_temporary(c); + inst_mul->U.I.SrcReg[0].File = RC_FILE_TEMPORARY; + inst_mul->U.I.SrcReg[0].Index = rc_find_free_temporary(c); /* redirected TEX output */ + inst_mul->U.I.SrcReg[1].File = RC_FILE_CONSTANT; /* 2 */ + inst_mul->U.I.SrcReg[1].Index = two; + inst_mul->U.I.SrcReg[1].Swizzle = two_swizzle; + + inst_mad = rc_insert_new_instruction(c, inst_mul); + inst_mad->U.I.Opcode = RC_OPCODE_MAD; + inst_mad->U.I.DstReg.File = RC_FILE_TEMPORARY; + inst_mad->U.I.DstReg.Index = rc_find_free_temporary(c); + inst_mad->U.I.SrcReg[0] = inst_mul->U.I.SrcReg[0]; /* redirected TEX output */ + inst_mad->U.I.SrcReg[1] = inst_mul->U.I.SrcReg[1]; /* 2 */ + inst_mad->U.I.SrcReg[2] = inst_mul->U.I.SrcReg[1]; /* 2 */ + inst_mad->U.I.SrcReg[2].Negate = RC_MASK_XYZW; + + inst_cnd = rc_insert_new_instruction(c, inst_mad); + inst_cnd->U.I.Opcode = RC_OPCODE_CND; + inst_cnd->U.I.SaturateMode = inst->U.I.SaturateMode; + inst_cnd->U.I.DstReg = inst->U.I.DstReg; + inst_cnd->U.I.SrcReg[0].File = RC_FILE_TEMPORARY; + inst_cnd->U.I.SrcReg[0].Index = inst_mad->U.I.DstReg.Index; + inst_cnd->U.I.SrcReg[0].Swizzle = compiler->state.unit[inst->U.I.TexSrcUnit].texture_swizzle; + inst_cnd->U.I.SrcReg[1].File = RC_FILE_TEMPORARY; + inst_cnd->U.I.SrcReg[1].Index = inst_mul->U.I.DstReg.Index; + inst_cnd->U.I.SrcReg[1].Swizzle = compiler->state.unit[inst->U.I.TexSrcUnit].texture_swizzle; + inst_cnd->U.I.SrcReg[2] = inst_mul->U.I.SrcReg[0]; /* redirected TEX output */ + + inst->U.I.SaturateMode = 0; + inst->U.I.DstReg.File = RC_FILE_TEMPORARY; + inst->U.I.DstReg.Index = inst_mul->U.I.SrcReg[0].Index; + inst->U.I.DstReg.WriteMask = RC_MASK_XYZW; + } + /* Cannot write texture to output registers or with saturate (all chips), * or with masks (non-r500). */ if (inst->U.I.Opcode != RC_OPCODE_KIL && From 9ac64f73019ff72e106ed60c7a30ff7a24e12b43 Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Tue, 5 Apr 2011 16:54:08 +1000 Subject: [PATCH 137/420] r300c: fix build since last r300g commit --- src/mesa/drivers/dri/r300/r300_fragprog_common.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mesa/drivers/dri/r300/r300_fragprog_common.c b/src/mesa/drivers/dri/r300/r300_fragprog_common.c index a0a26f1b38d..50cf8d6f9db 100644 --- a/src/mesa/drivers/dri/r300/r300_fragprog_common.c +++ b/src/mesa/drivers/dri/r300/r300_fragprog_common.c @@ -77,7 +77,7 @@ static void build_state( if (fp->Base.ShadowSamplers & (1 << unit)) { struct gl_texture_object* tex = r300->radeon.glCtx->Texture.Unit[unit]._Current; - state->unit[unit].depth_texture_swizzle = build_dts(tex->DepthMode); + state->unit[unit].texture_swizzle = build_dts(tex->DepthMode); state->unit[unit].texture_compare_func = build_func(tex->CompareFunc); } } From e9375cd0e895ac2c3e7ff17f18da7a7f8cd3a82d Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Tue, 5 Apr 2011 07:51:01 -0600 Subject: [PATCH 138/420] mesa: 80-column wrapping --- src/mesa/main/fbobject.h | 6 ++++-- src/mesa/main/teximage.h | 12 ++++++++---- src/mesa/main/texobj.h | 6 ++++-- 3 files changed, 16 insertions(+), 8 deletions(-) diff --git a/src/mesa/main/fbobject.h b/src/mesa/main/fbobject.h index ba74a95b74c..0e1c096ab8d 100644 --- a/src/mesa/main/fbobject.h +++ b/src/mesa/main/fbobject.h @@ -65,14 +65,16 @@ _mesa_set_renderbuffer_attachment(struct gl_context *ctx, struct gl_renderbuffer *rb); extern void -_mesa_framebuffer_renderbuffer(struct gl_context *ctx, struct gl_framebuffer *fb, +_mesa_framebuffer_renderbuffer(struct gl_context *ctx, + struct gl_framebuffer *fb, GLenum attachment, struct gl_renderbuffer *rb); extern void _mesa_validate_framebuffer(struct gl_context *ctx, struct gl_framebuffer *fb); extern void -_mesa_test_framebuffer_completeness(struct gl_context *ctx, struct gl_framebuffer *fb); +_mesa_test_framebuffer_completeness(struct gl_context *ctx, + struct gl_framebuffer *fb); extern GLboolean _mesa_is_legal_color_format(const struct gl_context *ctx, GLenum baseFormat); diff --git a/src/mesa/main/teximage.h b/src/mesa/main/teximage.h index bb5509e5be6..252d80afc0f 100644 --- a/src/mesa/main/teximage.h +++ b/src/mesa/main/teximage.h @@ -59,7 +59,8 @@ _mesa_new_texture_image( struct gl_context *ctx ); extern void -_mesa_delete_texture_image( struct gl_context *ctx, struct gl_texture_image *teximage ); +_mesa_delete_texture_image( struct gl_context *ctx, + struct gl_texture_image *teximage ); extern void _mesa_free_texture_image_data( struct gl_context *ctx, @@ -82,7 +83,8 @@ _mesa_choose_texture_format(struct gl_context *ctx, extern void -_mesa_clear_texture_image(struct gl_context *ctx, struct gl_texture_image *texImage); +_mesa_clear_texture_image(struct gl_context *ctx, + struct gl_texture_image *texImage); extern void @@ -92,7 +94,8 @@ _mesa_set_tex_image(struct gl_texture_object *tObj, extern struct gl_texture_object * -_mesa_select_tex_object(struct gl_context *ctx, const struct gl_texture_unit *texUnit, +_mesa_select_tex_object(struct gl_context *ctx, + const struct gl_texture_unit *texUnit, GLenum target); extern struct gl_texture_object * @@ -100,7 +103,8 @@ _mesa_get_current_tex_object(struct gl_context *ctx, GLenum target); extern struct gl_texture_image * -_mesa_select_tex_image(struct gl_context *ctx, const struct gl_texture_object *texObj, +_mesa_select_tex_image(struct gl_context *ctx, + const struct gl_texture_object *texObj, GLenum target, GLint level); diff --git a/src/mesa/main/texobj.h b/src/mesa/main/texobj.h index 2461b063efd..476a17537a3 100644 --- a/src/mesa/main/texobj.h +++ b/src/mesa/main/texobj.h @@ -52,14 +52,16 @@ _mesa_initialize_texture_object( struct gl_texture_object *obj, GLuint name, GLenum target ); extern void -_mesa_delete_texture_object( struct gl_context *ctx, struct gl_texture_object *obj ); +_mesa_delete_texture_object( struct gl_context *ctx, + struct gl_texture_object *obj ); extern void _mesa_copy_texture_object( struct gl_texture_object *dest, const struct gl_texture_object *src ); extern void -_mesa_clear_texture_object(struct gl_context *ctx, struct gl_texture_object *obj); +_mesa_clear_texture_object(struct gl_context *ctx, + struct gl_texture_object *obj); extern void _mesa_reference_texobj(struct gl_texture_object **ptr, From db0f9e701d59dcfcd3b50f4d245897692f27fec9 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Tue, 5 Apr 2011 07:51:01 -0600 Subject: [PATCH 139/420] mesa: added _mesa_get_attachment_teximage() helpers --- src/mesa/main/fbobject.c | 10 ++++------ src/mesa/main/fbobject.h | 19 +++++++++++++++++++ src/mesa/main/framebuffer.c | 4 ++-- src/mesa/main/teximage.c | 2 +- src/mesa/main/texrender.c | 5 +++-- src/mesa/state_tracker/st_cb_fbo.c | 5 ++--- 6 files changed, 31 insertions(+), 14 deletions(-) diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c index 4eab3e11911..f0065ad06a9 100644 --- a/src/mesa/main/fbobject.c +++ b/src/mesa/main/fbobject.c @@ -335,7 +335,7 @@ _mesa_set_texture_attachment(struct gl_context *ctx, att->Zoffset = zoffset; att->Complete = GL_FALSE; - if (att->Texture->Image[att->CubeMapFace][att->TextureLevel]) { + if (_mesa_get_attachment_teximage(att)) { ctx->Driver.RenderTexture(ctx, fb, att); } @@ -716,8 +716,8 @@ _mesa_test_framebuffer_completeness(struct gl_context *ctx, /* get width, height, format of the renderbuffer/texture */ if (att->Type == GL_TEXTURE) { - const struct gl_texture_image *texImg - = att->Texture->Image[att->CubeMapFace][att->TextureLevel]; + const struct gl_texture_image *texImg = + _mesa_get_attachment_teximage(att); minWidth = MIN2(minWidth, texImg->Width); maxWidth = MAX2(maxWidth, texImg->Width); minHeight = MIN2(minHeight, texImg->Height); @@ -1496,9 +1496,7 @@ check_begin_texture_render(struct gl_context *ctx, struct gl_framebuffer *fb) for (i = 0; i < BUFFER_COUNT; i++) { struct gl_renderbuffer_attachment *att = fb->Attachment + i; - struct gl_texture_object *texObj = att->Texture; - if (texObj - && texObj->Image[att->CubeMapFace][att->TextureLevel]) { + if (att->Texture && _mesa_get_attachment_teximage(att)) { ctx->Driver.RenderTexture(ctx, fb, att); } } diff --git a/src/mesa/main/fbobject.h b/src/mesa/main/fbobject.h index 0e1c096ab8d..7eb20050209 100644 --- a/src/mesa/main/fbobject.h +++ b/src/mesa/main/fbobject.h @@ -26,6 +26,7 @@ #ifndef FBOBJECT_H #define FBOBJECT_H +#include "compiler.h" #include "glheader.h" struct gl_context; @@ -48,6 +49,24 @@ _mesa_get_attachment(struct gl_context *ctx, struct gl_framebuffer *fb, GLenum attachment); +/** Return the texture image for a renderbuffer attachment */ +static INLINE struct gl_texture_image * +_mesa_get_attachment_teximage(struct gl_renderbuffer_attachment *att) +{ + assert(att->Type == GL_TEXTURE); + return att->Texture->Image[att->CubeMapFace][att->TextureLevel]; +} + + +/** Return the (const) texture image for a renderbuffer attachment */ +static INLINE const struct gl_texture_image * +_mesa_get_attachment_teximage_const(const struct gl_renderbuffer_attachment *att) +{ + assert(att->Type == GL_TEXTURE); + return att->Texture->Image[att->CubeMapFace][att->TextureLevel]; +} + + extern void _mesa_remove_attachment(struct gl_context *ctx, struct gl_renderbuffer_attachment *att); diff --git a/src/mesa/main/framebuffer.c b/src/mesa/main/framebuffer.c index 430e013d017..4f0e6f57853 100644 --- a/src/mesa/main/framebuffer.c +++ b/src/mesa/main/framebuffer.c @@ -1061,12 +1061,12 @@ _mesa_print_framebuffer(const struct gl_framebuffer *fb) for (i = 0; i < BUFFER_COUNT; i++) { const struct gl_renderbuffer_attachment *att = &fb->Attachment[i]; if (att->Type == GL_TEXTURE) { - const struct gl_texture_image *texImage; + const struct gl_texture_image *texImage = + _mesa_get_attachment_teximage_const(att); fprintf(stderr, " %2d: Texture %u, level %u, face %u, slice %u, complete %d\n", i, att->Texture->Name, att->TextureLevel, att->CubeMapFace, att->Zoffset, att->Complete); - texImage = att->Texture->Image[att->CubeMapFace][att->TextureLevel]; fprintf(stderr, " Size: %u x %u x %u Format %s\n", texImage->Width, texImage->Height, texImage->Depth, _mesa_get_format_name(texImage->TexFormat)); diff --git a/src/mesa/main/teximage.c b/src/mesa/main/teximage.c index 86927d3b661..6161eb41456 100644 --- a/src/mesa/main/teximage.c +++ b/src/mesa/main/teximage.c @@ -2251,7 +2251,7 @@ check_rtt_cb(GLuint key, void *data, void *userData) att->Texture == texObj && att->TextureLevel == level && att->CubeMapFace == face) { - ASSERT(att->Texture->Image[att->CubeMapFace][att->TextureLevel]); + ASSERT(_mesa_get_attachment_teximage(att)); /* Tell driver about the new renderbuffer texture */ ctx->Driver.RenderTexture(ctx, ctx->DrawBuffer, att); /* Mark fb status as indeterminate to force re-validation */ diff --git a/src/mesa/main/texrender.c b/src/mesa/main/texrender.c index 8cec24c3e24..a7641a5f9a4 100644 --- a/src/mesa/main/texrender.c +++ b/src/mesa/main/texrender.c @@ -1,6 +1,7 @@ #include "context.h" #include "colormac.h" +#include "fbobject.h" #include "macros.h" #include "texfetch.h" #include "teximage.h" @@ -525,7 +526,7 @@ wrap_texture(struct gl_context *ctx, struct gl_renderbuffer_attachment *att) * update the internal format info, etc. */ static void -update_wrapper(struct gl_context *ctx, const struct gl_renderbuffer_attachment *att) +update_wrapper(struct gl_context *ctx, struct gl_renderbuffer_attachment *att) { struct texture_renderbuffer *trb = (struct texture_renderbuffer *) att->Renderbuffer; @@ -533,7 +534,7 @@ update_wrapper(struct gl_context *ctx, const struct gl_renderbuffer_attachment * (void) ctx; ASSERT(trb); - trb->TexImage = att->Texture->Image[att->CubeMapFace][att->TextureLevel]; + trb->TexImage = _mesa_get_attachment_teximage(att); ASSERT(trb->TexImage); trb->Store = _mesa_get_texel_store_func(trb->TexImage->TexFormat); diff --git a/src/mesa/state_tracker/st_cb_fbo.c b/src/mesa/state_tracker/st_cb_fbo.c index 7ffee901cdb..e632d816542 100644 --- a/src/mesa/state_tracker/st_cb_fbo.c +++ b/src/mesa/state_tracker/st_cb_fbo.c @@ -353,7 +353,7 @@ st_render_texture(struct gl_context *ctx, return; /* get pointer to texture image we're rendeing to */ - texImage = att->Texture->Image[att->CubeMapFace][att->TextureLevel]; + texImage = _mesa_get_attachment_teximage(att); /* create new renderbuffer which wraps the texture image */ rb = st_new_renderbuffer(ctx, 0); @@ -471,8 +471,7 @@ st_validate_attachment(struct gl_context *ctx, return GL_FALSE; format = stObj->pt->format; - texFormat = - stObj->base.Image[att->CubeMapFace][att->TextureLevel]->TexFormat; + texFormat = _mesa_get_attachment_teximage_const(att)->TexFormat; /* If the encoding is sRGB and sRGB rendering cannot be enabled, * check for linear format support instead. From c7339d42c603048c0f89276da6576647c4421ba0 Mon Sep 17 00:00:00 2001 From: Fabian Bieler Date: Tue, 5 Apr 2011 07:51:01 -0600 Subject: [PATCH 140/420] mesa: Guard against null pointer deref in fbo validation This matches the behaviour below when numSamples is compared. At least with the gallium state tracker this can actually occur if st_render_texture fails. Signed-off-by: Brian Paul --- src/mesa/main/fbobject.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c index f0065ad06a9..eb1fef51427 100644 --- a/src/mesa/main/fbobject.c +++ b/src/mesa/main/fbobject.c @@ -746,7 +746,7 @@ _mesa_test_framebuffer_completeness(struct gl_context *ctx, continue; } - if (numSamples < 0) { + if (att->Renderbuffer && numSamples < 0) { /* first buffer */ numSamples = att->Renderbuffer->NumSamples; } From 8778bf221e90e9b59caad02ab72a0a0edcfe2451 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Tue, 5 Apr 2011 07:53:05 -0600 Subject: [PATCH 141/420] mesa: fix alpha value for texstore_rgbx8888 Silences constant overflow compiler warning. --- src/mesa/main/texstore.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mesa/main/texstore.c b/src/mesa/main/texstore.c index eb37490e1f6..13fae3bf98c 100644 --- a/src/mesa/main/texstore.c +++ b/src/mesa/main/texstore.c @@ -3182,7 +3182,7 @@ _mesa_texstore_signed_rgbx8888(TEXSTORE_PARAMS) dst[3] = FLOAT_TO_BYTE_TEX(srcRow[RCOMP]); dst[2] = FLOAT_TO_BYTE_TEX(srcRow[GCOMP]); dst[1] = FLOAT_TO_BYTE_TEX(srcRow[BCOMP]); - dst[0] = 0xff; + dst[0] = 127; srcRow += 3; dst += 4; } From d863bd7d7baa0a71529f195b0025d57b9d65089a Mon Sep 17 00:00:00 2001 From: Fabian Bieler Date: Fri, 25 Mar 2011 11:04:41 +0100 Subject: [PATCH 142/420] st/mesa: Apply LOD bias from correct texture unit Signed-off-by: Brian Paul --- src/mesa/state_tracker/st_atom_sampler.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mesa/state_tracker/st_atom_sampler.c b/src/mesa/state_tracker/st_atom_sampler.c index 474cbd5897d..96bdc7f331a 100644 --- a/src/mesa/state_tracker/st_atom_sampler.c +++ b/src/mesa/state_tracker/st_atom_sampler.c @@ -163,7 +163,7 @@ update_samplers(struct st_context *st) if (texobj->Target != GL_TEXTURE_RECTANGLE_ARB) sampler->normalized_coords = 1; - sampler->lod_bias = st->ctx->Texture.Unit[su].LodBias; + sampler->lod_bias = st->ctx->Texture.Unit[texUnit].LodBias; sampler->min_lod = texobj->BaseLevel + texobj->MinLod; if (sampler->min_lod < texobj->BaseLevel) From 5d5db24a26415cdec4b3d3f2a92bae7112c9f884 Mon Sep 17 00:00:00 2001 From: Fabian Bieler Date: Fri, 25 Mar 2011 11:06:01 +0100 Subject: [PATCH 143/420] st/mesa: Apply LOD from texture object Signed-off-by: Brian Paul --- src/mesa/state_tracker/st_atom_sampler.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/mesa/state_tracker/st_atom_sampler.c b/src/mesa/state_tracker/st_atom_sampler.c index 96bdc7f331a..5f1849dcd83 100644 --- a/src/mesa/state_tracker/st_atom_sampler.c +++ b/src/mesa/state_tracker/st_atom_sampler.c @@ -163,7 +163,8 @@ update_samplers(struct st_context *st) if (texobj->Target != GL_TEXTURE_RECTANGLE_ARB) sampler->normalized_coords = 1; - sampler->lod_bias = st->ctx->Texture.Unit[texUnit].LodBias; + sampler->lod_bias = st->ctx->Texture.Unit[texUnit].LodBias + + texobj->LodBias; sampler->min_lod = texobj->BaseLevel + texobj->MinLod; if (sampler->min_lod < texobj->BaseLevel) From d8361400b76dde6fb63df6c363b7dd59c5946e09 Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Tue, 5 Apr 2011 00:04:45 -0700 Subject: [PATCH 144/420] r300/compiler: Fix vertex shader MAD instructions with constant swizzles NOTE: This is a candidate for the 7.9 and 7.10 branches. --- .../drivers/dri/r300/compiler/r3xx_vertprog.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/mesa/drivers/dri/r300/compiler/r3xx_vertprog.c b/src/mesa/drivers/dri/r300/compiler/r3xx_vertprog.c index 8ad2175eadf..654f9a070d5 100644 --- a/src/mesa/drivers/dri/r300/compiler/r3xx_vertprog.c +++ b/src/mesa/drivers/dri/r300/compiler/r3xx_vertprog.c @@ -273,6 +273,7 @@ static void ei_mad(struct r300_vertex_program_code *vp, struct rc_sub_instruction *vpi, unsigned int * inst) { + unsigned int i; /* Remarks about hardware limitations of MAD * (please preserve this comment, as this information is _NOT_ * in the documentation provided by AMD). @@ -318,6 +319,23 @@ static void ei_mad(struct r300_vertex_program_code *vp, t_dst_index(vp, &vpi->DstReg), t_dst_mask(vpi->DstReg.WriteMask), t_dst_class(vpi->DstReg.File)); + + /* Arguments with constant swizzles still count as a unique + * temporary, so we should make sure these arguments share a + * register index with one of the other arguments. */ + for (i = 0; i < 3; i++) { + unsigned int j; + if (vpi->SrcReg[i].File != RC_FILE_NONE) + continue; + + for (j = 0; j < 3; j++) { + if (i != j) { + vpi->SrcReg[i].Index = + vpi->SrcReg[j].Index; + break; + } + } + } } inst[1] = t_src(vp, &vpi->SrcReg[0]); inst[2] = t_src(vp, &vpi->SrcReg[1]); From 4af3fe857dc07923af8786b434dee32d493b577e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Tue, 5 Apr 2011 17:57:02 +0200 Subject: [PATCH 145/420] r300g: postpone fragment shader state validation until draw_vbo --- src/gallium/drivers/r300/r300_context.h | 11 ++++++ src/gallium/drivers/r300/r300_emit.c | 5 +-- src/gallium/drivers/r300/r300_state.c | 19 +++------ src/gallium/drivers/r300/r300_state_derived.c | 39 ++++++++++++++++--- 4 files changed, 52 insertions(+), 22 deletions(-) diff --git a/src/gallium/drivers/r300/r300_context.h b/src/gallium/drivers/r300/r300_context.h index 3b6cb8f7a11..550d3a75d27 100644 --- a/src/gallium/drivers/r300/r300_context.h +++ b/src/gallium/drivers/r300/r300_context.h @@ -447,6 +447,13 @@ enum r300_hiz_func { HIZ_FUNC_MIN, }; +/* For deferred fragment shader state validation. */ +enum r300_fs_validity_status { + FRAGMENT_SHADER_VALID, /* No need to change/validate the FS. */ + FRAGMENT_SHADER_MAYBE_DIRTY,/* Validate the FS if external state was changed. */ + FRAGMENT_SHADER_DIRTY /* Always validate the FS (if the FS was changed) */ +}; + struct r300_context { /* Parent class */ struct pipe_context context; @@ -598,6 +605,10 @@ struct r300_context { enum r300_hiz_func hiz_func; /* HiZ clear value. */ uint32_t hiz_clear_value; + /* Whether fragment shader needs to be validated. */ + enum r300_fs_validity_status fs_status; + /* Framebuffer multi-write. */ + boolean fb_multiwrite; void *dsa_decompress_zmask; diff --git a/src/gallium/drivers/r300/r300_emit.c b/src/gallium/drivers/r300/r300_emit.c index 3b79b36221d..6b91f93e6d6 100644 --- a/src/gallium/drivers/r300/r300_emit.c +++ b/src/gallium/drivers/r300/r300_emit.c @@ -387,8 +387,7 @@ void r300_emit_fb_state(struct r300_context* r300, unsigned size, void* state) if (r300->screen->caps.is_r500) { rb3d_cctl = R300_RB3D_CCTL_INDEPENDENT_COLORFORMAT_ENABLE_ENABLE; } - if (fb->nr_cbufs && - r300_fragment_shader_writes_all(r300_fs(r300))) { + if (fb->nr_cbufs && r300->fb_multiwrite) { rb3d_cctl |= R300_RB3D_CCTL_NUM_MULTIWRITES(fb->nr_cbufs); } @@ -483,7 +482,7 @@ void r300_emit_fb_state_pipelined(struct r300_context *r300, /* If we use the multiwrite feature, the colorbuffers 2,3,4 must be * marked as UNUSED in the US block. */ - if (r300_fragment_shader_writes_all(r300_fs(r300))) { + if (r300->fb_multiwrite) { num_cbufs = MIN2(num_cbufs, 1); } diff --git a/src/gallium/drivers/r300/r300_state.c b/src/gallium/drivers/r300/r300_state.c index 890e3961b18..61d6751e5d3 100644 --- a/src/gallium/drivers/r300/r300_state.c +++ b/src/gallium/drivers/r300/r300_state.c @@ -969,24 +969,14 @@ static void r300_bind_fs_state(struct pipe_context* pipe, void* shader) { struct r300_context* r300 = r300_context(pipe); struct r300_fragment_shader* fs = (struct r300_fragment_shader*)shader; - struct pipe_framebuffer_state *fb = r300->fb_state.state; - boolean last_multi_write; if (fs == NULL) { r300->fs.state = NULL; return; } - last_multi_write = r300_fragment_shader_writes_all(r300_fs(r300)); - r300->fs.state = fs; - r300_pick_fragment_shader(r300); - r300_mark_fs_code_dirty(r300); - - if (fb->nr_cbufs > 1 && - last_multi_write != r300_fragment_shader_writes_all(fs)) { - r300_mark_fb_state_dirty(r300, R300_CHANGED_MULTIWRITE); - } + r300->fs_status = FRAGMENT_SHADER_DIRTY; r300_mark_atom_dirty(r300, &r300->rs_block_state); /* Will be updated before the emission. */ } @@ -1256,8 +1246,8 @@ static void r300_bind_rs_state(struct pipe_context* pipe, void* state) } if (last_frag_clamp != r300->frag_clamp && - r300->fs.state && r300_pick_fragment_shader(r300)) { - r300_mark_fs_code_dirty(r300); + r300->fs_status == FRAGMENT_SHADER_VALID) { + r300->fs_status = FRAGMENT_SHADER_MAYBE_DIRTY; } } @@ -1555,7 +1545,8 @@ static void r300_set_viewport_state(struct pipe_context* pipe, } r300_mark_atom_dirty(r300, &r300->viewport_state); - if (r300->fs.state && r300_fs(r300)->shader->inputs.wpos != ATTR_UNUSED) { + if (r300->fs.state && r300_fs(r300)->shader && + r300_fs(r300)->shader->inputs.wpos != ATTR_UNUSED) { r300_mark_atom_dirty(r300, &r300->fs_rc_constant_state); } } diff --git a/src/gallium/drivers/r300/r300_state_derived.c b/src/gallium/drivers/r300/r300_state_derived.c index 02fc1219e95..e943f1a715f 100644 --- a/src/gallium/drivers/r300/r300_state_derived.c +++ b/src/gallium/drivers/r300/r300_state_derived.c @@ -961,11 +961,10 @@ static void r300_merge_textures_and_samplers(struct r300_context* r300) r300->textures_state.size = size; /* Pick a fragment shader based on either the texture compare state - * or the uses_pitch flag. */ - if (r300->fs.state && count) { - if (r300_pick_fragment_shader(r300)) { - r300_mark_fs_code_dirty(r300); - } + * or the uses_pitch flag or some other external state. */ + if (count && + r300->fs_status == FRAGMENT_SHADER_VALID) { + r300->fs_status = FRAGMENT_SHADER_MAYBE_DIRTY; } } @@ -994,6 +993,34 @@ static void r300_decompress_depth_textures(struct r300_context *r300) } } +static void r300_validate_fragment_shader(struct r300_context *r300) +{ + struct pipe_framebuffer_state *fb = r300->fb_state.state; + + if (r300->fs.state && r300->fs_status != FRAGMENT_SHADER_VALID) { + /* Pick the fragment shader based on external states. + * Then mark the state dirty if the fragment shader is either dirty + * or the function r300_pick_fragment_shader changed the shader. */ + if (r300_pick_fragment_shader(r300) || + r300->fs_status == FRAGMENT_SHADER_DIRTY) { + /* Mark the state atom as dirty. */ + r300_mark_fs_code_dirty(r300); + + /* Does Multiwrite need to be changed? */ + if (fb->nr_cbufs > 1) { + boolean new_multiwrite = + r300_fragment_shader_writes_all(r300_fs(r300)); + + if (r300->fb_multiwrite != new_multiwrite) { + r300->fb_multiwrite = new_multiwrite; + r300_mark_fb_state_dirty(r300, R300_CHANGED_MULTIWRITE); + } + } + } + r300->fs_status = FRAGMENT_SHADER_VALID; + } +} + void r300_update_derived_state(struct r300_context* r300) { if (r300->textures_state.dirty) { @@ -1001,6 +1028,8 @@ void r300_update_derived_state(struct r300_context* r300) r300_merge_textures_and_samplers(r300); } + r300_validate_fragment_shader(r300); + if (r300->rs_block_state.dirty) { r300_update_rs_block(r300); From 9996a86085edb2bdbcb165d985203ee8ce6a9b22 Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Mon, 4 Apr 2011 13:35:26 -0700 Subject: [PATCH 146/420] ir_to_mesa: Handle shadow compare w/projection and LOD bias correctly The code would previously handle the projection, then swizzle the shadow comparitor into place. However, when the projection is done "by hand," as in the TXB case, the unprojected shadow comparitor would over-write the projected shadow comparitor. Shadow comparison with projection and LOD is an extremely rare case in real application code, so it shouldn't matter that we don't handle that case with the greatest efficiency. NOTE: This is a candidate for the stable branches. Reviewed-by: Brian Paul References: https://bugs.freedesktop.org/show_bug.cgi?id=32395 --- src/mesa/program/ir_to_mesa.cpp | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/src/mesa/program/ir_to_mesa.cpp b/src/mesa/program/ir_to_mesa.cpp index bf2513d4748..7c1ae46ff33 100644 --- a/src/mesa/program/ir_to_mesa.cpp +++ b/src/mesa/program/ir_to_mesa.cpp @@ -2084,15 +2084,39 @@ ir_to_mesa_visitor::visit(ir_texture *ir) coord_dst.writemask = WRITEMASK_W; ir_to_mesa_emit_op1(ir, OPCODE_RCP, coord_dst, projector); + /* In the case where we have to project the coordinates "by hand," + * the shadow comparitor value must also be projected. + */ + ir_to_mesa_src_reg tmp_src = coord; + if (ir->shadow_comparitor) { + /* Slot the shadow value in as the second to last component of the + * coord. + */ + ir->shadow_comparitor->accept(this); + + tmp_src = get_temp(glsl_type::vec4_type); + ir_to_mesa_dst_reg tmp_dst = ir_to_mesa_dst_reg_from_src(tmp_src); + + tmp_dst.writemask = WRITEMASK_Z; + ir_to_mesa_emit_op1(ir, OPCODE_MOV, tmp_dst, this->result); + + tmp_dst.writemask = WRITEMASK_XY; + ir_to_mesa_emit_op1(ir, OPCODE_MOV, tmp_dst, coord); + } + coord_dst.writemask = WRITEMASK_XYZ; - ir_to_mesa_emit_op2(ir, OPCODE_MUL, coord_dst, coord, coord_w); + ir_to_mesa_emit_op2(ir, OPCODE_MUL, coord_dst, tmp_src, coord_w); coord_dst.writemask = WRITEMASK_XYZW; coord.swizzle = SWIZZLE_XYZW; } } - if (ir->shadow_comparitor) { + /* If projection is done and the opcode is not OPCODE_TXP, then the shadow + * comparitor was put in the correct place (and projected) by the code, + * above, that handles by-hand projection. + */ + if (ir->shadow_comparitor && (!ir->projector || opcode == OPCODE_TXP)) { /* Slot the shadow value in as the second to last component of the * coord. */ From 0fe34b7bbc9a8e089bbb4d0fe401b09095a571eb Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Tue, 1 Mar 2011 14:10:49 -0800 Subject: [PATCH 147/420] dri: Remove driver date from renderer string Reviewed-by: Corbin Simpson Reviewed-by: Brian Paul Tested-by: Sedat Dilek --- src/mesa/drivers/dri/common/utils.c | 5 ++--- src/mesa/drivers/dri/common/utils.h | 2 +- src/mesa/drivers/dri/i810/i810context.c | 4 +--- src/mesa/drivers/dri/intel/intel_context.c | 6 +----- src/mesa/drivers/dri/mach64/mach64_dd.c | 5 +---- src/mesa/drivers/dri/mga/mgadd.c | 4 ---- src/mesa/drivers/dri/nouveau/nouveau_driver.c | 2 +- src/mesa/drivers/dri/nouveau/nouveau_driver.h | 1 - src/mesa/drivers/dri/r128/r128_dd.c | 6 +----- src/mesa/drivers/dri/r200/r200_context.c | 5 +---- src/mesa/drivers/dri/radeon/radeon_common_context.c | 5 +---- src/mesa/drivers/dri/radeon/radeon_context.c | 2 -- src/mesa/drivers/dri/savage/savagedd.c | 4 +--- src/mesa/drivers/dri/sis/sis_dd.c | 4 +--- src/mesa/drivers/dri/tdfx/tdfx_dd.c | 5 +---- src/mesa/drivers/dri/unichrome/via_context.c | 4 +--- 16 files changed, 14 insertions(+), 50 deletions(-) diff --git a/src/mesa/drivers/dri/common/utils.c b/src/mesa/drivers/dri/common/utils.c index 083edfaa9b4..d8281838233 100644 --- a/src/mesa/drivers/dri/common/utils.c +++ b/src/mesa/drivers/dri/common/utils.c @@ -96,7 +96,6 @@ driParseDebugString( const char * debug, * * \param buffer Buffer to hold the \c GL_RENDERER string. * \param hardware_name Name of the hardware. - * \param driver_date Driver date. * \param agp_mode AGP mode (speed). * * \returns @@ -105,12 +104,12 @@ driParseDebugString( const char * debug, */ unsigned driGetRendererString( char * buffer, const char * hardware_name, - const char * driver_date, GLuint agp_mode ) + GLuint agp_mode ) { unsigned offset; char *cpu; - offset = sprintf( buffer, "Mesa DRI %s %s", hardware_name, driver_date ); + offset = sprintf( buffer, "Mesa DRI %s", hardware_name ); /* Append any AGP-specific information. */ diff --git a/src/mesa/drivers/dri/common/utils.h b/src/mesa/drivers/dri/common/utils.h index 6349fb4b95c..a1c9ea604ee 100644 --- a/src/mesa/drivers/dri/common/utils.h +++ b/src/mesa/drivers/dri/common/utils.h @@ -76,7 +76,7 @@ extern unsigned driParseDebugString( const char * debug, const struct dri_debug_control * control ); extern unsigned driGetRendererString( char * buffer, - const char * hardware_name, const char * driver_date, GLuint agp_mode ); + const char * hardware_name, GLuint agp_mode ); extern void driInitExtensions( struct gl_context * ctx, const struct dri_extension * card_extensions, GLboolean enable_imaging ); diff --git a/src/mesa/drivers/dri/i810/i810context.c b/src/mesa/drivers/dri/i810/i810context.c index 90dbb6bbe80..604b1e36f97 100644 --- a/src/mesa/drivers/dri/i810/i810context.c +++ b/src/mesa/drivers/dri/i810/i810context.c @@ -67,8 +67,6 @@ int I810_DEBUG = (0); PUBLIC const char __driConfigOptions[] = { 0 }; const GLuint __driNConfigOptions = 0; -#define DRIVER_DATE "20050821" - static const GLubyte *i810GetString( struct gl_context *ctx, GLenum name ) { static char buffer[128]; @@ -88,7 +86,7 @@ static const GLubyte *i810GetString( struct gl_context *ctx, GLenum name ) default: chipset = "Unknown i810-class Chipset"; break; } - (void) driGetRendererString( buffer, chipset, DRIVER_DATE, 0 ); + (void) driGetRendererString( buffer, chipset, 0 ); return (GLubyte *) buffer; } default: diff --git a/src/mesa/drivers/dri/intel/intel_context.c b/src/mesa/drivers/dri/intel/intel_context.c index fe8fd349be7..562fe86bdf1 100644 --- a/src/mesa/drivers/dri/intel/intel_context.c +++ b/src/mesa/drivers/dri/intel/intel_context.c @@ -62,10 +62,6 @@ int INTEL_DEBUG = (0); #endif -#define DRIVER_DATE "20100330 DEVELOPMENT" -#define DRIVER_DATE_GEM "GEM " DRIVER_DATE - - static const GLubyte * intelGetString(struct gl_context * ctx, GLenum name) { @@ -182,7 +178,7 @@ intelGetString(struct gl_context * ctx, GLenum name) break; } - (void) driGetRendererString(buffer, chipset, DRIVER_DATE_GEM, 0); + (void) driGetRendererString(buffer, chipset, 0); return (GLubyte *) buffer; default: diff --git a/src/mesa/drivers/dri/mach64/mach64_dd.c b/src/mesa/drivers/dri/mach64/mach64_dd.c index 9cb2c107597..2b557a70202 100644 --- a/src/mesa/drivers/dri/mach64/mach64_dd.c +++ b/src/mesa/drivers/dri/mach64/mach64_dd.c @@ -37,8 +37,6 @@ #include "utils.h" -#define DRIVER_DATE "20051019" - /* Return the current color buffer size. */ static void mach64DDGetBufferSize( struct gl_framebuffer *buffer, @@ -70,8 +68,7 @@ static const GLubyte *mach64DDGetString( struct gl_context *ctx, GLenum name ) case GL_RENDERER: - offset = driGetRendererString( buffer, card_name, DRIVER_DATE, - agp_mode ); + offset = driGetRendererString( buffer, card_name, agp_mode ); return (GLubyte *)buffer; default: diff --git a/src/mesa/drivers/dri/mga/mgadd.c b/src/mesa/drivers/dri/mga/mgadd.c index 1b39813e379..2e3e9f2c43c 100644 --- a/src/mesa/drivers/dri/mga/mgadd.c +++ b/src/mesa/drivers/dri/mga/mgadd.c @@ -35,9 +35,6 @@ #include "mga_xmesa.h" #include "utils.h" -#define DRIVER_DATE "20071017" - - /*************************************** * Mesa's Driver Functions ***************************************/ @@ -57,7 +54,6 @@ static const GLubyte *mgaGetString( struct gl_context *ctx, GLenum name ) offset = driGetRendererString( buffer, MGA_IS_G400(mmesa) ? "G400" : MGA_IS_G200(mmesa) ? "G200" : "MGA", - DRIVER_DATE, mmesa->mgaScreen->agpMode ); return (GLubyte *)buffer; diff --git a/src/mesa/drivers/dri/nouveau/nouveau_driver.c b/src/mesa/drivers/dri/nouveau/nouveau_driver.c index 45630be7f6e..8b6aa820434 100644 --- a/src/mesa/drivers/dri/nouveau/nouveau_driver.c +++ b/src/mesa/drivers/dri/nouveau/nouveau_driver.c @@ -45,7 +45,7 @@ nouveau_get_string(struct gl_context *ctx, GLenum name) case GL_RENDERER: sprintf(hardware_name, "nv%02X", context_chipset(ctx)); - driGetRendererString(buffer, hardware_name, DRIVER_DATE, 0); + driGetRendererString(buffer, hardware_name, 0); return (GLubyte *)buffer; default: diff --git a/src/mesa/drivers/dri/nouveau/nouveau_driver.h b/src/mesa/drivers/dri/nouveau/nouveau_driver.h index 158aec820aa..0018eec021f 100644 --- a/src/mesa/drivers/dri/nouveau/nouveau_driver.h +++ b/src/mesa/drivers/dri/nouveau/nouveau_driver.h @@ -48,7 +48,6 @@ #include "nouveau_surface.h" #include "nv04_pushbuf.h" -#define DRIVER_DATE "20091015" #define DRIVER_AUTHOR "Nouveau" struct nouveau_driver { diff --git a/src/mesa/drivers/dri/r128/r128_dd.c b/src/mesa/drivers/dri/r128/r128_dd.c index 0b7005eba69..cfe2387948d 100644 --- a/src/mesa/drivers/dri/r128/r128_dd.c +++ b/src/mesa/drivers/dri/r128/r128_dd.c @@ -40,9 +40,6 @@ USE OR OTHER DEALINGS IN THE SOFTWARE. #include "utils.h" -#define DRIVER_DATE "20051027" - - /* Return the width and height of the current color buffer. */ static void r128GetBufferSize( struct gl_framebuffer *buffer, @@ -82,8 +79,7 @@ static const GLubyte *r128GetString( struct gl_context *ctx, GLenum name ) card_name = "Rage 128 Mobility"; } - offset = driGetRendererString( buffer, card_name, DRIVER_DATE, - agp_mode ); + offset = driGetRendererString( buffer, card_name, agp_mode ); return (GLubyte *)buffer; diff --git a/src/mesa/drivers/dri/r200/r200_context.c b/src/mesa/drivers/dri/r200/r200_context.c index 9c045b73acc..47732633c2b 100644 --- a/src/mesa/drivers/dri/r200/r200_context.c +++ b/src/mesa/drivers/dri/r200/r200_context.c @@ -76,8 +76,6 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #include "main/remap_helper.h" -#define DRIVER_DATE "20060602" - #include "utils.h" #include "xmlpool.h" /* for symbolic values of enum-type options */ @@ -96,8 +94,7 @@ static const GLubyte *r200GetString( struct gl_context *ctx, GLenum name ) return (GLubyte *)"Tungsten Graphics, Inc."; case GL_RENDERER: - offset = driGetRendererString( buffer, "R200", DRIVER_DATE, - agp_mode ); + offset = driGetRendererString( buffer, "R200", agp_mode ); sprintf( & buffer[ offset ], " %sTCL", !(rmesa->radeon.TclFallback & R200_TCL_FALLBACK_TCL_DISABLE) diff --git a/src/mesa/drivers/dri/radeon/radeon_common_context.c b/src/mesa/drivers/dri/radeon/radeon_common_context.c index 405aecb19ec..5d7b3973d57 100644 --- a/src/mesa/drivers/dri/radeon/radeon_common_context.c +++ b/src/mesa/drivers/dri/radeon/radeon_common_context.c @@ -47,8 +47,6 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #include "swrast_setup/swrast_setup.h" #include "tnl/tnl.h" -#define DRIVER_DATE "20090101" - #ifndef RADEON_DEBUG int RADEON_DEBUG = (0); #endif @@ -146,8 +144,7 @@ static const GLubyte *radeonGetString(struct gl_context * ctx, GLenum name) get_chip_family_name(radeon->radeonScreen->chip_family), radeon->radeonScreen->device_id); - offset = driGetRendererString(buffer, hardwarename, DRIVER_DATE, - agp_mode); + offset = driGetRendererString(buffer, hardwarename, agp_mode); if (IS_R600_CLASS(radeon->radeonScreen)) { sprintf(&buffer[offset], " TCL"); diff --git a/src/mesa/drivers/dri/radeon/radeon_context.c b/src/mesa/drivers/dri/radeon/radeon_context.c index 154a8815e4a..4d41e99df5d 100644 --- a/src/mesa/drivers/dri/radeon/radeon_context.c +++ b/src/mesa/drivers/dri/radeon/radeon_context.c @@ -70,8 +70,6 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #define need_GL_OES_EGL_image #include "main/remap_helper.h" -#define DRIVER_DATE "20061018" - #include "utils.h" #include "xmlpool.h" /* for symbolic values of enum-type options */ diff --git a/src/mesa/drivers/dri/savage/savagedd.c b/src/mesa/drivers/dri/savage/savagedd.c index 3f8d7aafb08..c7f58835054 100644 --- a/src/mesa/drivers/dri/savage/savagedd.c +++ b/src/mesa/drivers/dri/savage/savagedd.c @@ -38,8 +38,6 @@ #include "utils.h" -#define DRIVER_DATE "20061110" - /*************************************** * Mesa's Driver Functions ***************************************/ @@ -71,7 +69,7 @@ static const GLubyte *savageDDGetString( struct gl_context *ctx, GLenum name ) case GL_VENDOR: return (GLubyte *)"S3 Graphics Inc."; case GL_RENDERER: - offset = driGetRendererString( buffer, cardNames[chipset], DRIVER_DATE, + offset = driGetRendererString( buffer, cardNames[chipset], screen->agpMode ); return (GLubyte *)buffer; default: diff --git a/src/mesa/drivers/dri/sis/sis_dd.c b/src/mesa/drivers/dri/sis/sis_dd.c index 90e894b842c..bba516f8dcd 100644 --- a/src/mesa/drivers/dri/sis/sis_dd.c +++ b/src/mesa/drivers/dri/sis/sis_dd.c @@ -45,8 +45,6 @@ USE OR OTHER DEALINGS IN THE SOFTWARE. #include "utils.h" -#define DRIVER_DATE "20060710" - /* Return the width and height of the given buffer. */ static void @@ -78,7 +76,7 @@ sisGetString( struct gl_context *ctx, GLenum name ) return (GLubyte *)"Eric Anholt"; case GL_RENDERER: - offset = driGetRendererString( buffer, "SiS", DRIVER_DATE, agp_mode ); + offset = driGetRendererString( buffer, "SiS", agp_mode ); return (GLubyte *)buffer; diff --git a/src/mesa/drivers/dri/tdfx/tdfx_dd.c b/src/mesa/drivers/dri/tdfx/tdfx_dd.c index d60931ad7fd..e981f9abedf 100644 --- a/src/mesa/drivers/dri/tdfx/tdfx_dd.c +++ b/src/mesa/drivers/dri/tdfx/tdfx_dd.c @@ -41,9 +41,6 @@ #include "main/context.h" -#define DRIVER_DATE "20061113" - - /* These are used in calls to FX_grColorMaskv() */ const GLboolean false4[4] = { GL_FALSE, GL_FALSE, GL_FALSE, GL_FALSE }; const GLboolean true4[4] = { GL_TRUE, GL_TRUE, GL_TRUE, GL_TRUE }; @@ -91,7 +88,7 @@ static const GLubyte *tdfxDDGetString( struct gl_context *ctx, GLenum name ) } } - (void) driGetRendererString(buffer, hardware, DRIVER_DATE, 0); + (void) driGetRendererString(buffer, hardware, 0); return (const GLubyte *) buffer; } case GL_VENDOR: diff --git a/src/mesa/drivers/dri/unichrome/via_context.c b/src/mesa/drivers/dri/unichrome/via_context.c index 77d7116611a..89c2a12a9c2 100644 --- a/src/mesa/drivers/dri/unichrome/via_context.c +++ b/src/mesa/drivers/dri/unichrome/via_context.c @@ -65,8 +65,6 @@ #define need_GL_EXT_secondary_color #include "main/remap_helper.h" -#define DRIVER_DATE "20060710" - #include "vblank.h" #include "utils.h" @@ -100,7 +98,7 @@ static const GLubyte *viaGetString(struct gl_context *ctx, GLenum name) offset = driGetRendererString( buffer, chipset_names[(id > VIA_PM800) ? 0 : id], - DRIVER_DATE, 0 ); + 0 ); return (GLubyte *)buffer; } From de579a16298e29358fec08bd7cfe3e505674705a Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Thu, 31 Mar 2011 11:42:01 -0700 Subject: [PATCH 148/420] mesa: Include GIT SHA1 in GL version string MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reviewed-by: Corbin Simpson Reviewed-by: Kristian Høgsberg Tested-by: Sedat Dilek --- Makefile | 4 ++++ bin/extract_git_sha1 | 10 ++++++++++ src/mesa/main/version.c | 7 ++++++- 3 files changed, 20 insertions(+), 1 deletion(-) create mode 100755 bin/extract_git_sha1 diff --git a/Makefile b/Makefile index a1ab65ef0c4..be9567987a9 100644 --- a/Makefile +++ b/Makefile @@ -5,7 +5,10 @@ TOP = . SUBDIRS = src +# The git command below generates an empty string when we're not +# building in a GIT tree (i.e., building from a release tarball). default: $(TOP)/configs/current + @$(TOP)/bin/extract_git_sha1 @for dir in $(SUBDIRS) ; do \ if [ -d $$dir ] ; then \ (cd $$dir && $(MAKE)) || exit 1 ; \ @@ -199,6 +202,7 @@ MAIN_FILES = \ $(DIRECTORY)/aclocal.m4 \ $(DIRECTORY)/bin/config.guess \ $(DIRECTORY)/bin/config.sub \ + $(DIRECTORY)/bin/extract_git_sha1 \ $(DIRECTORY)/bin/install-sh \ $(DIRECTORY)/bin/mklib \ $(DIRECTORY)/bin/minstall \ diff --git a/bin/extract_git_sha1 b/bin/extract_git_sha1 new file mode 100755 index 00000000000..e6e6731a36c --- /dev/null +++ b/bin/extract_git_sha1 @@ -0,0 +1,10 @@ +#!/bin/sh +touch src/mesa/main/git_sha1.h +if which git > /dev/null; then + # Extract the 7-digit "short" SHA1 for the current HEAD, convert + # it to a string, and wrap it in a #define. This is used in + # src/mesa/main/version.c to put the GIT SHA1 in the GL_VERSION string. + git log -n 1 --oneline |\ + sed 's/^\([^ ]*\) .*/#define MESA_GIT_SHA1 "git-\1"/' \ + > src/mesa/main/git_sha1.h +fi diff --git a/src/mesa/main/version.c b/src/mesa/main/version.c index c7a0d69a4f0..80fa0c244eb 100644 --- a/src/mesa/main/version.c +++ b/src/mesa/main/version.c @@ -25,6 +25,7 @@ #include "imports.h" #include "mtypes.h" #include "version.h" +#include "git_sha1.h" @@ -185,7 +186,11 @@ compute_version(struct gl_context *ctx) ctx->VersionString = (char *) malloc(max); if (ctx->VersionString) { _mesa_snprintf(ctx->VersionString, max, - "%u.%u Mesa " MESA_VERSION_STRING, + "%u.%u Mesa " MESA_VERSION_STRING +#ifdef MESA_GIT_SHA1 + " (" MESA_GIT_SHA1 ")" +#endif + , ctx->VersionMajor, ctx->VersionMinor); } } From 0c2455031d7e5d969252ddb892b31365f6bb5da2 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Tue, 5 Apr 2011 14:07:41 -0600 Subject: [PATCH 149/420] scons: generate empty git_sha1.h file for now My feeble attempt to invoke the extract_git_sha1 script from SConscript didn't work. Hopefully this will do for now. --- src/mesa/SConscript | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/mesa/SConscript b/src/mesa/SConscript index 261242f6fc9..4df3029f1ee 100644 --- a/src/mesa/SConscript +++ b/src/mesa/SConscript @@ -390,6 +390,18 @@ if env['gcc'] and env['platform'] != 'windows': # build dir) to the include path env.Append(CPPPATH = [matypes[0].dir]) + + # Create the git_sha1.h file if it doesn't exist already + try: + f = open('main/git_sha1.h', 'r') + f.close() + except IOError: + f = open('main/git_sha1.h', 'w') + f.close() + # and update CPPPATH so the git_sha1.h header can be found + env.Append(CPPPATH = ["#" + env['build_dir'] + "/mesa/main"]) + + # # Libraries # From 461273e9105b8d0d53c26854ac5ba68814c31a67 Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Tue, 5 Apr 2011 11:30:36 -0700 Subject: [PATCH 150/420] ir_to_mesa: Rename src_reg and dst_reg variables to src and dst. This is in preparation from removing the "ir_to_mesa_" prefix on the src_reg and dst_reg types, which would cause a naming conflict. Reviewed-by: Ian Romanick --- src/mesa/program/ir_to_mesa.cpp | 205 ++++++++++++++++---------------- 1 file changed, 101 insertions(+), 104 deletions(-) diff --git a/src/mesa/program/ir_to_mesa.cpp b/src/mesa/program/ir_to_mesa.cpp index 7c1ae46ff33..8cbb877d3aa 100644 --- a/src/mesa/program/ir_to_mesa.cpp +++ b/src/mesa/program/ir_to_mesa.cpp @@ -118,8 +118,8 @@ public: } enum prog_opcode op; - ir_to_mesa_dst_reg dst_reg; - ir_to_mesa_src_reg src_reg[3]; + ir_to_mesa_dst_reg dst; + ir_to_mesa_src_reg src[3]; /** Pointer to the ir source this tree came from for debugging */ ir_instruction *ir; GLboolean cond_update; @@ -371,10 +371,10 @@ ir_to_mesa_visitor::ir_to_mesa_emit_op3(ir_instruction *ir, assert(num_reladdr == 0); inst->op = op; - inst->dst_reg = dst; - inst->src_reg[0] = src0; - inst->src_reg[1] = src1; - inst->src_reg[2] = src2; + inst->dst = dst; + inst->src[0] = src0; + inst->src[1] = src1; + inst->src[2] = src2; inst->ir = ir; inst->function = NULL; @@ -434,15 +434,15 @@ ir_to_mesa_visitor::ir_to_mesa_emit_dp(ir_instruction *ir, inline ir_to_mesa_dst_reg ir_to_mesa_dst_reg_from_src(ir_to_mesa_src_reg reg) { - ir_to_mesa_dst_reg dst_reg; + ir_to_mesa_dst_reg dst; - dst_reg.file = reg.file; - dst_reg.index = reg.index; - dst_reg.writemask = WRITEMASK_XYZW; - dst_reg.cond_mask = COND_TR; - dst_reg.reladdr = reg.reladdr; + dst.file = reg.file; + dst.index = reg.index; + dst.writemask = WRITEMASK_XYZW; + dst.cond_mask = COND_TR; + dst.reladdr = reg.reladdr; - return dst_reg; + return dst; } inline ir_to_mesa_src_reg @@ -504,7 +504,7 @@ ir_to_mesa_visitor::ir_to_mesa_emit_scalar_op2(ir_instruction *ir, dst, src0, src1); - inst->dst_reg.writemask = this_mask; + inst->dst.writemask = this_mask; done_mask |= this_mask; } } @@ -597,7 +597,7 @@ ir_to_mesa_visitor::emit_scs(ir_instruction *ir, enum prog_opcode op, /* Emit the SCS instruction. */ inst = ir_to_mesa_emit_op1(ir, OPCODE_SCS, tmp_dst, src0); - inst->dst_reg.writemask = scs_mask; + inst->dst.writemask = scs_mask; /* Move the result of the SCS instruction to the desired location in * the destination. @@ -605,13 +605,13 @@ ir_to_mesa_visitor::emit_scs(ir_instruction *ir, enum prog_opcode op, tmp.swizzle = MAKE_SWIZZLE4(component, component, component, component); inst = ir_to_mesa_emit_op1(ir, OPCODE_SCS, dst, tmp); - inst->dst_reg.writemask = this_mask; + inst->dst.writemask = this_mask; } else { /* Emit the SCS instruction to write directly to the destination. */ ir_to_mesa_instruction *inst = ir_to_mesa_emit_op1(ir, OPCODE_SCS, dst, src0); - inst->dst_reg.writemask = scs_mask; + inst->dst.writemask = scs_mask; } done_mask |= this_mask; @@ -621,12 +621,12 @@ ir_to_mesa_visitor::emit_scs(ir_instruction *ir, enum prog_opcode op, struct ir_to_mesa_src_reg ir_to_mesa_visitor::src_reg_for_float(float val) { - ir_to_mesa_src_reg src_reg(PROGRAM_CONSTANT, -1, NULL); + ir_to_mesa_src_reg src(PROGRAM_CONSTANT, -1, NULL); - src_reg.index = _mesa_add_unnamed_constant(this->prog->Parameters, - &val, 1, &src_reg.swizzle); + src.index = _mesa_add_unnamed_constant(this->prog->Parameters, + &val, 1, &src.swizzle); - return src_reg; + return src; } static int @@ -679,28 +679,28 @@ type_size(const struct glsl_type *type) ir_to_mesa_src_reg ir_to_mesa_visitor::get_temp(const glsl_type *type) { - ir_to_mesa_src_reg src_reg; + ir_to_mesa_src_reg src; int swizzle[4]; int i; - src_reg.file = PROGRAM_TEMPORARY; - src_reg.index = next_temp; - src_reg.reladdr = NULL; + src.file = PROGRAM_TEMPORARY; + src.index = next_temp; + src.reladdr = NULL; next_temp += type_size(type); if (type->is_array() || type->is_record()) { - src_reg.swizzle = SWIZZLE_NOOP; + src.swizzle = SWIZZLE_NOOP; } else { for (i = 0; i < type->vector_elements; i++) swizzle[i] = i; for (; i < 4; i++) swizzle[i] = type->vector_elements - 1; - src_reg.swizzle = MAKE_SWIZZLE4(swizzle[0], swizzle[1], - swizzle[2], swizzle[3]); + src.swizzle = MAKE_SWIZZLE4(swizzle[0], swizzle[1], + swizzle[2], swizzle[3]); } - src_reg.negate = 0; + src.negate = 0; - return src_reg; + return src; } variable_storage * @@ -1403,7 +1403,7 @@ ir_to_mesa_visitor::visit(ir_expression *ir) void ir_to_mesa_visitor::visit(ir_swizzle *ir) { - ir_to_mesa_src_reg src_reg; + ir_to_mesa_src_reg src; int i; int swizzle[4]; @@ -1413,23 +1413,23 @@ ir_to_mesa_visitor::visit(ir_swizzle *ir) */ ir->val->accept(this); - src_reg = this->result; - assert(src_reg.file != PROGRAM_UNDEFINED); + src = this->result; + assert(src.file != PROGRAM_UNDEFINED); for (i = 0; i < 4; i++) { if (i < ir->type->vector_elements) { switch (i) { case 0: - swizzle[i] = GET_SWZ(src_reg.swizzle, ir->mask.x); + swizzle[i] = GET_SWZ(src.swizzle, ir->mask.x); break; case 1: - swizzle[i] = GET_SWZ(src_reg.swizzle, ir->mask.y); + swizzle[i] = GET_SWZ(src.swizzle, ir->mask.y); break; case 2: - swizzle[i] = GET_SWZ(src_reg.swizzle, ir->mask.z); + swizzle[i] = GET_SWZ(src.swizzle, ir->mask.z); break; case 3: - swizzle[i] = GET_SWZ(src_reg.swizzle, ir->mask.w); + swizzle[i] = GET_SWZ(src.swizzle, ir->mask.w); break; } } else { @@ -1440,12 +1440,9 @@ ir_to_mesa_visitor::visit(ir_swizzle *ir) } } - src_reg.swizzle = MAKE_SWIZZLE4(swizzle[0], - swizzle[1], - swizzle[2], - swizzle[3]); + src.swizzle = MAKE_SWIZZLE4(swizzle[0], swizzle[1], swizzle[2], swizzle[3]); - this->result = src_reg; + this->result = src; } void @@ -1517,16 +1514,16 @@ void ir_to_mesa_visitor::visit(ir_dereference_array *ir) { ir_constant *index; - ir_to_mesa_src_reg src_reg; + ir_to_mesa_src_reg src; int element_size = type_size(ir->type); index = ir->array_index->constant_expression_value(); ir->array->accept(this); - src_reg = this->result; + src = this->result; if (index) { - src_reg.index += index->value.i[0] * element_size; + src.index += index->value.i[0] * element_size; } else { ir_to_mesa_src_reg array_base = this->result; /* Variable index array dereference. It eats the "vec4" of the @@ -1547,17 +1544,17 @@ ir_to_mesa_visitor::visit(ir_dereference_array *ir) this->result, src_reg_for_float(element_size)); } - src_reg.reladdr = ralloc(mem_ctx, ir_to_mesa_src_reg); - memcpy(src_reg.reladdr, &index_reg, sizeof(index_reg)); + src.reladdr = ralloc(mem_ctx, ir_to_mesa_src_reg); + memcpy(src.reladdr, &index_reg, sizeof(index_reg)); } /* If the type is smaller than a vec4, replicate the last channel out. */ if (ir->type->is_scalar() || ir->type->is_vector()) - src_reg.swizzle = swizzle_for_size(ir->type->vector_elements); + src.swizzle = swizzle_for_size(ir->type->vector_elements); else - src_reg.swizzle = SWIZZLE_NOOP; + src.swizzle = SWIZZLE_NOOP; - this->result = src_reg; + this->result = src; } void @@ -1783,7 +1780,7 @@ ir_to_mesa_visitor::visit(ir_assignment *ir) void ir_to_mesa_visitor::visit(ir_constant *ir) { - ir_to_mesa_src_reg src_reg; + ir_to_mesa_src_reg src; GLfloat stack_vals[4] = { 0 }; GLfloat *values = stack_vals; unsigned int i; @@ -1805,12 +1802,12 @@ ir_to_mesa_visitor::visit(ir_constant *ir) assert(size > 0); field_value->accept(this); - src_reg = this->result; + src = this->result; for (i = 0; i < (unsigned int)size; i++) { - ir_to_mesa_emit_op1(ir, OPCODE_MOV, temp, src_reg); + ir_to_mesa_emit_op1(ir, OPCODE_MOV, temp, src); - src_reg.index++; + src.index++; temp.index++; } } @@ -1827,11 +1824,11 @@ ir_to_mesa_visitor::visit(ir_constant *ir) for (i = 0; i < ir->type->length; i++) { ir->array_elements[i]->accept(this); - src_reg = this->result; + src = this->result; for (int j = 0; j < size; j++) { - ir_to_mesa_emit_op1(ir, OPCODE_MOV, temp, src_reg); + ir_to_mesa_emit_op1(ir, OPCODE_MOV, temp, src); - src_reg.index++; + src.index++; temp.index++; } } @@ -1847,12 +1844,12 @@ ir_to_mesa_visitor::visit(ir_constant *ir) assert(ir->type->base_type == GLSL_TYPE_FLOAT); values = &ir->value.f[i * ir->type->vector_elements]; - src_reg = ir_to_mesa_src_reg(PROGRAM_CONSTANT, -1, NULL); - src_reg.index = _mesa_add_unnamed_constant(this->prog->Parameters, + src = ir_to_mesa_src_reg(PROGRAM_CONSTANT, -1, NULL); + src.index = _mesa_add_unnamed_constant(this->prog->Parameters, values, ir->type->vector_elements, - &src_reg.swizzle); - ir_to_mesa_emit_op1(ir, OPCODE_MOV, mat_column, src_reg); + &src.swizzle); + ir_to_mesa_emit_op1(ir, OPCODE_MOV, mat_column, src); mat_column.index++; } @@ -1861,7 +1858,7 @@ ir_to_mesa_visitor::visit(ir_constant *ir) return; } - src_reg.file = PROGRAM_CONSTANT; + src.file = PROGRAM_CONSTANT; switch (ir->type->base_type) { case GLSL_TYPE_FLOAT: values = &ir->value.f[0]; @@ -2239,7 +2236,7 @@ ir_to_mesa_visitor::visit(ir_if *ir) cond_inst->cond_update = GL_TRUE; if_inst = ir_to_mesa_emit_op0(ir->condition, OPCODE_IF); - if_inst->dst_reg.cond_mask = COND_NE; + if_inst->dst.cond_mask = COND_NE; } else { if_inst = ir_to_mesa_emit_op1(ir->condition, OPCODE_IF, ir_to_mesa_undef_dst, @@ -2731,17 +2728,17 @@ ir_to_mesa_visitor::copy_propagate(void) foreach_iter(exec_list_iterator, iter, this->instructions) { ir_to_mesa_instruction *inst = (ir_to_mesa_instruction *)iter.get(); - assert(inst->dst_reg.file != PROGRAM_TEMPORARY - || inst->dst_reg.index < this->next_temp); + assert(inst->dst.file != PROGRAM_TEMPORARY + || inst->dst.index < this->next_temp); /* First, do any copy propagation possible into the src regs. */ for (int r = 0; r < 3; r++) { ir_to_mesa_instruction *first = NULL; bool good = true; - int acp_base = inst->src_reg[r].index * 4; + int acp_base = inst->src[r].index * 4; - if (inst->src_reg[r].file != PROGRAM_TEMPORARY || - inst->src_reg[r].reladdr) + if (inst->src[r].file != PROGRAM_TEMPORARY || + inst->src[r].reladdr) continue; /* See if we can find entries in the ACP consisting of MOVs @@ -2749,7 +2746,7 @@ ir_to_mesa_visitor::copy_propagate(void) * of this src register reference. */ for (int i = 0; i < 4; i++) { - int src_chan = GET_SWZ(inst->src_reg[r].swizzle, i); + int src_chan = GET_SWZ(inst->src[r].swizzle, i); ir_to_mesa_instruction *copy_chan = acp[acp_base + src_chan]; if (!copy_chan) { @@ -2762,8 +2759,8 @@ ir_to_mesa_visitor::copy_propagate(void) if (!first) { first = copy_chan; } else { - if (first->src_reg[0].file != copy_chan->src_reg[0].file || - first->src_reg[0].index != copy_chan->src_reg[0].index) { + if (first->src[0].file != copy_chan->src[0].file || + first->src[0].index != copy_chan->src[0].index) { good = false; break; } @@ -2774,17 +2771,17 @@ ir_to_mesa_visitor::copy_propagate(void) /* We've now validated that we can copy-propagate to * replace this src register reference. Do it. */ - inst->src_reg[r].file = first->src_reg[0].file; - inst->src_reg[r].index = first->src_reg[0].index; + inst->src[r].file = first->src[0].file; + inst->src[r].index = first->src[0].index; int swizzle = 0; for (int i = 0; i < 4; i++) { - int src_chan = GET_SWZ(inst->src_reg[r].swizzle, i); + int src_chan = GET_SWZ(inst->src[r].swizzle, i); ir_to_mesa_instruction *copy_inst = acp[acp_base + src_chan]; - swizzle |= (GET_SWZ(copy_inst->src_reg[0].swizzle, src_chan) << + swizzle |= (GET_SWZ(copy_inst->src[0].swizzle, src_chan) << (3 * i)); } - inst->src_reg[r].swizzle = swizzle; + inst->src[r].swizzle = swizzle; } } @@ -2821,13 +2818,13 @@ ir_to_mesa_visitor::copy_propagate(void) /* Continuing the block, clear any written channels from * the ACP. */ - if (inst->dst_reg.file == PROGRAM_TEMPORARY && inst->dst_reg.reladdr) { + if (inst->dst.file == PROGRAM_TEMPORARY && inst->dst.reladdr) { /* Any temporary might be written, so no copy propagation * across this instruction. */ memset(acp, 0, sizeof(*acp) * this->next_temp * 4); - } else if (inst->dst_reg.file == PROGRAM_OUTPUT && - inst->dst_reg.reladdr) { + } else if (inst->dst.file == PROGRAM_OUTPUT && + inst->dst.reladdr) { /* Any output might be written, so no copy propagation * from outputs across this instruction. */ @@ -2836,17 +2833,17 @@ ir_to_mesa_visitor::copy_propagate(void) if (!acp[4 * r + c]) continue; - if (acp[4 * r + c]->src_reg[0].file == PROGRAM_OUTPUT) + if (acp[4 * r + c]->src[0].file == PROGRAM_OUTPUT) acp[4 * r + c] = NULL; } } - } else if (inst->dst_reg.file == PROGRAM_TEMPORARY || - inst->dst_reg.file == PROGRAM_OUTPUT) { + } else if (inst->dst.file == PROGRAM_TEMPORARY || + inst->dst.file == PROGRAM_OUTPUT) { /* Clear where it's used as dst. */ - if (inst->dst_reg.file == PROGRAM_TEMPORARY) { + if (inst->dst.file == PROGRAM_TEMPORARY) { for (int c = 0; c < 4; c++) { - if (inst->dst_reg.writemask & (1 << c)) { - acp[4 * inst->dst_reg.index + c] = NULL; + if (inst->dst.writemask & (1 << c)) { + acp[4 * inst->dst.index + c] = NULL; } } } @@ -2857,11 +2854,11 @@ ir_to_mesa_visitor::copy_propagate(void) if (!acp[4 * r + c]) continue; - int src_chan = GET_SWZ(acp[4 * r + c]->src_reg[0].swizzle, c); + int src_chan = GET_SWZ(acp[4 * r + c]->src[0].swizzle, c); - if (acp[4 * r + c]->src_reg[0].file == inst->dst_reg.file && - acp[4 * r + c]->src_reg[0].index == inst->dst_reg.index && - inst->dst_reg.writemask & (1 << src_chan)) + if (acp[4 * r + c]->src[0].file == inst->dst.file && + acp[4 * r + c]->src[0].index == inst->dst.index && + inst->dst.writemask & (1 << src_chan)) { acp[4 * r + c] = NULL; } @@ -2873,15 +2870,15 @@ ir_to_mesa_visitor::copy_propagate(void) /* If this is a copy, add it to the ACP. */ if (inst->op == OPCODE_MOV && - inst->dst_reg.file == PROGRAM_TEMPORARY && - !inst->dst_reg.reladdr && + inst->dst.file == PROGRAM_TEMPORARY && + !inst->dst.reladdr && !inst->saturate && - !inst->src_reg[0].reladdr && - !inst->src_reg[0].negate) { + !inst->src[0].reladdr && + !inst->src[0].negate) { for (int i = 0; i < 4; i++) { - if (inst->dst_reg.writemask & (1 << i)) { - acp[4 * inst->dst_reg.index + i] = inst; - acp_level[4 * inst->dst_reg.index + i] = level; + if (inst->dst.writemask & (1 << i)) { + acp[4 * inst->dst.index + i] = inst; + acp_level[4 * inst->dst.index + i] = level; } } } @@ -3003,14 +3000,14 @@ get_mesa_program(struct gl_context *ctx, mesa_inst->CondUpdate = inst->cond_update; if (inst->saturate) mesa_inst->SaturateMode = SATURATE_ZERO_ONE; - mesa_inst->DstReg.File = inst->dst_reg.file; - mesa_inst->DstReg.Index = inst->dst_reg.index; - mesa_inst->DstReg.CondMask = inst->dst_reg.cond_mask; - mesa_inst->DstReg.WriteMask = inst->dst_reg.writemask; - mesa_inst->DstReg.RelAddr = inst->dst_reg.reladdr != NULL; - mesa_inst->SrcReg[0] = mesa_src_reg_from_ir_src_reg(inst->src_reg[0]); - mesa_inst->SrcReg[1] = mesa_src_reg_from_ir_src_reg(inst->src_reg[1]); - mesa_inst->SrcReg[2] = mesa_src_reg_from_ir_src_reg(inst->src_reg[2]); + mesa_inst->DstReg.File = inst->dst.file; + mesa_inst->DstReg.Index = inst->dst.index; + mesa_inst->DstReg.CondMask = inst->dst.cond_mask; + mesa_inst->DstReg.WriteMask = inst->dst.writemask; + mesa_inst->DstReg.RelAddr = inst->dst.reladdr != NULL; + mesa_inst->SrcReg[0] = mesa_src_reg_from_ir_src_reg(inst->src[0]); + mesa_inst->SrcReg[1] = mesa_src_reg_from_ir_src_reg(inst->src[1]); + mesa_inst->SrcReg[2] = mesa_src_reg_from_ir_src_reg(inst->src[2]); mesa_inst->TexSrcUnit = inst->sampler; mesa_inst->TexSrcTarget = inst->tex_target; mesa_inst->TexShadow = inst->tex_shadow; From fc6b4332c32461d0e092c908a0f3d9d44d1452a9 Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Tue, 5 Apr 2011 11:43:21 -0700 Subject: [PATCH 151/420] ir_to_mesa: Remove the "ir_to_mesa_" prefix on src_reg/dst_reg types. Both classes are completely private to ir_to_mesa.cpp, so there won't be any name conflicts with other parts of Mesa. The prefix simply makes it harder to read. Also, use a class rather than typedef structs. Reviewed-by: Ian Romanick --- src/mesa/program/ir_to_mesa.cpp | 242 ++++++++++++++++---------------- 1 file changed, 121 insertions(+), 121 deletions(-) diff --git a/src/mesa/program/ir_to_mesa.cpp b/src/mesa/program/ir_to_mesa.cpp index 8cbb877d3aa..8eec5bf5339 100644 --- a/src/mesa/program/ir_to_mesa.cpp +++ b/src/mesa/program/ir_to_mesa.cpp @@ -62,8 +62,9 @@ static int swizzle_for_size(int size); * This struct is a corresponding struct to Mesa prog_src_register, with * wider fields. */ -typedef struct ir_to_mesa_src_reg { - ir_to_mesa_src_reg(int file, int index, const glsl_type *type) +class src_reg { +public: + src_reg(int file, int index, const glsl_type *type) { this->file = (gl_register_file) file; this->index = index; @@ -75,7 +76,7 @@ typedef struct ir_to_mesa_src_reg { this->reladdr = NULL; } - ir_to_mesa_src_reg() + src_reg() { this->file = PROGRAM_UNDEFINED; this->index = 0; @@ -89,19 +90,20 @@ typedef struct ir_to_mesa_src_reg { GLuint swizzle; /**< SWIZZLE_XYZWONEZERO swizzles from Mesa. */ int negate; /**< NEGATE_XYZW mask from mesa */ /** Register index should be offset by the integer in this reg. */ - ir_to_mesa_src_reg *reladdr; -} ir_to_mesa_src_reg; + src_reg *reladdr; +}; -typedef struct ir_to_mesa_dst_reg { +class dst_reg { +public: int file; /**< PROGRAM_* from Mesa */ int index; /**< temporary index, VERT_ATTRIB_*, FRAG_ATTRIB_*, etc. */ int writemask; /**< Bitfield of WRITEMASK_[XYZW] */ GLuint cond_mask:4; /** Register index should be offset by the integer in this reg. */ - ir_to_mesa_src_reg *reladdr; -} ir_to_mesa_dst_reg; + src_reg *reladdr; +}; -extern ir_to_mesa_src_reg ir_to_mesa_undef; +extern src_reg ir_to_mesa_undef; class ir_to_mesa_instruction : public exec_node { public: @@ -118,8 +120,8 @@ public: } enum prog_opcode op; - ir_to_mesa_dst_reg dst; - ir_to_mesa_src_reg src[3]; + dst_reg dst; + src_reg src[3]; /** Pointer to the ir source this tree came from for debugging */ ir_instruction *ir; GLboolean cond_update; @@ -174,7 +176,7 @@ public: int inst; /** Storage for the return value. */ - ir_to_mesa_src_reg return_reg; + src_reg return_reg; }; class ir_to_mesa_visitor : public ir_visitor { @@ -195,11 +197,10 @@ public: function_entry *get_function_signature(ir_function_signature *sig); - ir_to_mesa_src_reg get_temp(const glsl_type *type); - void reladdr_to_temp(ir_instruction *ir, - ir_to_mesa_src_reg *reg, int *num_reladdr); + src_reg get_temp(const glsl_type *type); + void reladdr_to_temp(ir_instruction *ir, src_reg *reg, int *num_reladdr); - struct ir_to_mesa_src_reg src_reg_for_float(float val); + src_reg src_reg_for_float(float val); /** * \name Visit methods @@ -228,7 +229,7 @@ public: virtual void visit(ir_if *); /*@}*/ - struct ir_to_mesa_src_reg result; + src_reg result; /** List of variable_storage */ exec_list variables; @@ -245,21 +246,21 @@ public: ir_to_mesa_instruction *ir_to_mesa_emit_op1(ir_instruction *ir, enum prog_opcode op, - ir_to_mesa_dst_reg dst, - ir_to_mesa_src_reg src0); + dst_reg dst, + src_reg src0); ir_to_mesa_instruction *ir_to_mesa_emit_op2(ir_instruction *ir, enum prog_opcode op, - ir_to_mesa_dst_reg dst, - ir_to_mesa_src_reg src0, - ir_to_mesa_src_reg src1); + dst_reg dst, + src_reg src0, + src_reg src1); ir_to_mesa_instruction *ir_to_mesa_emit_op3(ir_instruction *ir, enum prog_opcode op, - ir_to_mesa_dst_reg dst, - ir_to_mesa_src_reg src0, - ir_to_mesa_src_reg src1, - ir_to_mesa_src_reg src2); + dst_reg dst, + src_reg src0, + src_reg src1, + src_reg src2); /** * Emit the correct dot-product instruction for the type of arguments @@ -267,25 +268,24 @@ public: * \sa ir_to_mesa_emit_op2 */ void ir_to_mesa_emit_dp(ir_instruction *ir, - ir_to_mesa_dst_reg dst, - ir_to_mesa_src_reg src0, - ir_to_mesa_src_reg src1, + dst_reg dst, + src_reg src0, + src_reg src1, unsigned elements); void ir_to_mesa_emit_scalar_op1(ir_instruction *ir, enum prog_opcode op, - ir_to_mesa_dst_reg dst, - ir_to_mesa_src_reg src0); + dst_reg dst, + src_reg src0); void ir_to_mesa_emit_scalar_op2(ir_instruction *ir, enum prog_opcode op, - ir_to_mesa_dst_reg dst, - ir_to_mesa_src_reg src0, - ir_to_mesa_src_reg src1); + dst_reg dst, + src_reg src0, + src_reg src1); void emit_scs(ir_instruction *ir, enum prog_opcode op, - ir_to_mesa_dst_reg dst, - const ir_to_mesa_src_reg &src); + dst_reg dst, const src_reg &src); GLboolean try_emit_mad(ir_expression *ir, int mul_operand); @@ -300,13 +300,13 @@ public: void *mem_ctx; }; -ir_to_mesa_src_reg ir_to_mesa_undef = ir_to_mesa_src_reg(PROGRAM_UNDEFINED, 0, NULL); +src_reg ir_to_mesa_undef = src_reg(PROGRAM_UNDEFINED, 0, NULL); -ir_to_mesa_dst_reg ir_to_mesa_undef_dst = { +dst_reg ir_to_mesa_undef_dst = { PROGRAM_UNDEFINED, 0, SWIZZLE_NOOP, COND_TR, NULL, }; -ir_to_mesa_dst_reg ir_to_mesa_address_reg = { +dst_reg ir_to_mesa_address_reg = { PROGRAM_ADDRESS, 0, WRITEMASK_X, COND_TR, NULL }; @@ -341,10 +341,10 @@ swizzle_for_size(int size) ir_to_mesa_instruction * ir_to_mesa_visitor::ir_to_mesa_emit_op3(ir_instruction *ir, enum prog_opcode op, - ir_to_mesa_dst_reg dst, - ir_to_mesa_src_reg src0, - ir_to_mesa_src_reg src1, - ir_to_mesa_src_reg src2) + dst_reg dst, + src_reg src0, + src_reg src1, + src_reg src2) { ir_to_mesa_instruction *inst = new(mem_ctx) ir_to_mesa_instruction(); int num_reladdr = 0; @@ -388,9 +388,9 @@ ir_to_mesa_visitor::ir_to_mesa_emit_op3(ir_instruction *ir, ir_to_mesa_instruction * ir_to_mesa_visitor::ir_to_mesa_emit_op2(ir_instruction *ir, enum prog_opcode op, - ir_to_mesa_dst_reg dst, - ir_to_mesa_src_reg src0, - ir_to_mesa_src_reg src1) + dst_reg dst, + src_reg src0, + src_reg src1) { return ir_to_mesa_emit_op3(ir, op, dst, src0, src1, ir_to_mesa_undef); } @@ -398,8 +398,8 @@ ir_to_mesa_visitor::ir_to_mesa_emit_op2(ir_instruction *ir, ir_to_mesa_instruction * ir_to_mesa_visitor::ir_to_mesa_emit_op1(ir_instruction *ir, enum prog_opcode op, - ir_to_mesa_dst_reg dst, - ir_to_mesa_src_reg src0) + dst_reg dst, + src_reg src0) { assert(dst.writemask != 0); return ir_to_mesa_emit_op3(ir, op, dst, @@ -418,9 +418,9 @@ ir_to_mesa_visitor::ir_to_mesa_emit_op0(ir_instruction *ir, void ir_to_mesa_visitor::ir_to_mesa_emit_dp(ir_instruction *ir, - ir_to_mesa_dst_reg dst, - ir_to_mesa_src_reg src0, - ir_to_mesa_src_reg src1, + dst_reg dst, + src_reg src0, + src_reg src1, unsigned elements) { static const gl_inst_opcode dot_opcodes[] = { @@ -431,10 +431,10 @@ ir_to_mesa_visitor::ir_to_mesa_emit_dp(ir_instruction *ir, dst, src0, src1, ir_to_mesa_undef); } -inline ir_to_mesa_dst_reg -ir_to_mesa_dst_reg_from_src(ir_to_mesa_src_reg reg) +inline dst_reg +ir_to_mesa_dst_reg_from_src(src_reg reg) { - ir_to_mesa_dst_reg dst; + dst_reg dst; dst.file = reg.file; dst.index = reg.index; @@ -445,10 +445,10 @@ ir_to_mesa_dst_reg_from_src(ir_to_mesa_src_reg reg) return dst; } -inline ir_to_mesa_src_reg -ir_to_mesa_src_reg_from_dst(ir_to_mesa_dst_reg reg) +inline src_reg +ir_to_mesa_src_reg_from_dst(dst_reg reg) { - return ir_to_mesa_src_reg(reg.file, reg.index, NULL); + return src_reg(reg.file, reg.index, NULL); } /** @@ -462,9 +462,9 @@ ir_to_mesa_src_reg_from_dst(ir_to_mesa_dst_reg reg) void ir_to_mesa_visitor::ir_to_mesa_emit_scalar_op2(ir_instruction *ir, enum prog_opcode op, - ir_to_mesa_dst_reg dst, - ir_to_mesa_src_reg orig_src0, - ir_to_mesa_src_reg orig_src1) + dst_reg dst, + src_reg orig_src0, + src_reg orig_src1) { int i, j; int done_mask = ~dst.writemask; @@ -476,8 +476,8 @@ ir_to_mesa_visitor::ir_to_mesa_emit_scalar_op2(ir_instruction *ir, for (i = 0; i < 4; i++) { GLuint this_mask = (1 << i); ir_to_mesa_instruction *inst; - ir_to_mesa_src_reg src0 = orig_src0; - ir_to_mesa_src_reg src1 = orig_src1; + src_reg src0 = orig_src0; + src_reg src1 = orig_src1; if (done_mask & this_mask) continue; @@ -512,10 +512,10 @@ ir_to_mesa_visitor::ir_to_mesa_emit_scalar_op2(ir_instruction *ir, void ir_to_mesa_visitor::ir_to_mesa_emit_scalar_op1(ir_instruction *ir, enum prog_opcode op, - ir_to_mesa_dst_reg dst, - ir_to_mesa_src_reg src0) + dst_reg dst, + src_reg src0) { - ir_to_mesa_src_reg undef = ir_to_mesa_undef; + src_reg undef = ir_to_mesa_undef; undef.swizzle = SWIZZLE_XXXX; @@ -538,8 +538,8 @@ ir_to_mesa_visitor::ir_to_mesa_emit_scalar_op1(ir_instruction *ir, */ void ir_to_mesa_visitor::emit_scs(ir_instruction *ir, enum prog_opcode op, - ir_to_mesa_dst_reg dst, - const ir_to_mesa_src_reg &src) + dst_reg dst, + const src_reg &src) { /* Vertex programs cannot use the SCS opcode. */ @@ -551,7 +551,7 @@ ir_to_mesa_visitor::emit_scs(ir_instruction *ir, enum prog_opcode op, const unsigned component = (op == OPCODE_SIN) ? 0 : 1; const unsigned scs_mask = (1U << component); int done_mask = ~dst.writemask; - ir_to_mesa_src_reg tmp; + src_reg tmp; assert(op == OPCODE_SIN || op == OPCODE_COS); @@ -564,7 +564,7 @@ ir_to_mesa_visitor::emit_scs(ir_instruction *ir, enum prog_opcode op, for (unsigned i = 0; i < 4; i++) { unsigned this_mask = (1U << i); - ir_to_mesa_src_reg src0 = src; + src_reg src0 = src; if ((done_mask & this_mask) != 0) continue; @@ -592,7 +592,7 @@ ir_to_mesa_visitor::emit_scs(ir_instruction *ir, enum prog_opcode op, if (this_mask != scs_mask) { ir_to_mesa_instruction *inst; - ir_to_mesa_dst_reg tmp_dst = ir_to_mesa_dst_reg_from_src(tmp); + dst_reg tmp_dst = ir_to_mesa_dst_reg_from_src(tmp); /* Emit the SCS instruction. */ @@ -618,10 +618,10 @@ ir_to_mesa_visitor::emit_scs(ir_instruction *ir, enum prog_opcode op, } } -struct ir_to_mesa_src_reg +struct src_reg ir_to_mesa_visitor::src_reg_for_float(float val) { - ir_to_mesa_src_reg src(PROGRAM_CONSTANT, -1, NULL); + src_reg src(PROGRAM_CONSTANT, -1, NULL); src.index = _mesa_add_unnamed_constant(this->prog->Parameters, &val, 1, &src.swizzle); @@ -676,10 +676,10 @@ type_size(const struct glsl_type *type) * storage). Actual register allocation for the Mesa VM occurs in a * pass over the Mesa IR later. */ -ir_to_mesa_src_reg +src_reg ir_to_mesa_visitor::get_temp(const glsl_type *type) { - ir_to_mesa_src_reg src; + src_reg src; int swizzle[4]; int i; @@ -770,7 +770,7 @@ ir_to_mesa_visitor::visit(ir_variable *ir) } struct variable_storage *storage; - ir_to_mesa_dst_reg dst; + dst_reg dst; if (i == ir->num_state_slots) { /* We'll set the index later. */ storage = new(mem_ctx) variable_storage(ir, PROGRAM_STATE_VAR, -1); @@ -789,9 +789,9 @@ ir_to_mesa_visitor::visit(ir_variable *ir) this->variables.push_tail(storage); this->next_temp += type_size(ir->type); - dst = ir_to_mesa_dst_reg_from_src(ir_to_mesa_src_reg(PROGRAM_TEMPORARY, - storage->index, - NULL)); + dst = ir_to_mesa_dst_reg_from_src(src_reg(PROGRAM_TEMPORARY, + storage->index, + NULL)); } @@ -806,7 +806,7 @@ ir_to_mesa_visitor::visit(ir_variable *ir) assert(index == storage->index + (int)i); } } else { - ir_to_mesa_src_reg src(PROGRAM_STATE_VAR, index, NULL); + src_reg src(PROGRAM_STATE_VAR, index, NULL); src.swizzle = slots[i].swizzle; ir_to_mesa_emit_op1(ir, OPCODE_MOV, dst, src); /* even a float takes up a whole vec4 reg in a struct/array. */ @@ -924,7 +924,7 @@ GLboolean ir_to_mesa_visitor::try_emit_mad(ir_expression *ir, int mul_operand) { int nonmul_operand = 1 - mul_operand; - ir_to_mesa_src_reg a, b, c; + src_reg a, b, c; ir_expression *expr = ir->operands[mul_operand]->as_expression(); if (!expr || expr->operation != ir_binop_mul) @@ -958,7 +958,7 @@ ir_to_mesa_visitor::try_emit_sat(ir_expression *ir) return false; sat_src->accept(this); - ir_to_mesa_src_reg src = this->result; + src_reg src = this->result; this->result = get_temp(ir->type); ir_to_mesa_instruction *inst; @@ -972,7 +972,7 @@ ir_to_mesa_visitor::try_emit_sat(ir_expression *ir) void ir_to_mesa_visitor::reladdr_to_temp(ir_instruction *ir, - ir_to_mesa_src_reg *reg, int *num_reladdr) + src_reg *reg, int *num_reladdr) { if (!reg->reladdr) return; @@ -980,7 +980,7 @@ ir_to_mesa_visitor::reladdr_to_temp(ir_instruction *ir, ir_to_mesa_emit_op1(ir, OPCODE_ARL, ir_to_mesa_address_reg, *reg->reladdr); if (*num_reladdr != 1) { - ir_to_mesa_src_reg temp = get_temp(glsl_type::vec4_type); + src_reg temp = get_temp(glsl_type::vec4_type); ir_to_mesa_emit_op1(ir, OPCODE_MOV, ir_to_mesa_dst_reg_from_src(temp), *reg); @@ -1079,7 +1079,7 @@ ir_to_mesa_visitor::emit_swz(ir_expression *ir) exit(1); } - ir_to_mesa_src_reg src; + src_reg src; src = this->result; src.swizzle = MAKE_SWIZZLE4(components[0], @@ -1094,8 +1094,8 @@ ir_to_mesa_visitor::emit_swz(ir_expression *ir) /* Storage for our result. Ideally for an assignment we'd be using the * actual storage for the result here, instead. */ - const ir_to_mesa_src_reg result_src = get_temp(ir->type); - ir_to_mesa_dst_reg result_dst = ir_to_mesa_dst_reg_from_src(result_src); + const src_reg result_src = get_temp(ir->type); + dst_reg result_dst = ir_to_mesa_dst_reg_from_src(result_src); /* Limit writes to the channels that will be used by result_src later. * This does limit this temp's use as a temporary for multi-instruction @@ -1111,9 +1111,9 @@ void ir_to_mesa_visitor::visit(ir_expression *ir) { unsigned int operand; - struct ir_to_mesa_src_reg op[Elements(ir->operands)]; - struct ir_to_mesa_src_reg result_src; - struct ir_to_mesa_dst_reg result_dst; + src_reg op[Elements(ir->operands)]; + src_reg result_src; + dst_reg result_dst; /* Quick peephole: Emit OPCODE_MAD(a, b, c) instead of ADD(MUL(a, b), c) */ @@ -1265,7 +1265,7 @@ ir_to_mesa_visitor::visit(ir_expression *ir) /* "==" operator producing a scalar boolean. */ if (ir->operands[0]->type->is_vector() || ir->operands[1]->type->is_vector()) { - ir_to_mesa_src_reg temp = get_temp(glsl_type::vec4_type); + src_reg temp = get_temp(glsl_type::vec4_type); ir_to_mesa_emit_op2(ir, OPCODE_SNE, ir_to_mesa_dst_reg_from_src(temp), op[0], op[1]); ir_to_mesa_emit_dp(ir, result_dst, temp, temp, vector_elements); @@ -1279,7 +1279,7 @@ ir_to_mesa_visitor::visit(ir_expression *ir) /* "!=" operator producing a scalar boolean. */ if (ir->operands[0]->type->is_vector() || ir->operands[1]->type->is_vector()) { - ir_to_mesa_src_reg temp = get_temp(glsl_type::vec4_type); + src_reg temp = get_temp(glsl_type::vec4_type); ir_to_mesa_emit_op2(ir, OPCODE_SNE, ir_to_mesa_dst_reg_from_src(temp), op[0], op[1]); ir_to_mesa_emit_dp(ir, result_dst, temp, temp, vector_elements); @@ -1403,7 +1403,7 @@ ir_to_mesa_visitor::visit(ir_expression *ir) void ir_to_mesa_visitor::visit(ir_swizzle *ir) { - ir_to_mesa_src_reg src; + src_reg src; int i; int swizzle[4]; @@ -1507,14 +1507,14 @@ ir_to_mesa_visitor::visit(ir_dereference_variable *ir) } } - this->result = ir_to_mesa_src_reg(entry->file, entry->index, var->type); + this->result = src_reg(entry->file, entry->index, var->type); } void ir_to_mesa_visitor::visit(ir_dereference_array *ir) { ir_constant *index; - ir_to_mesa_src_reg src; + src_reg src; int element_size = type_size(ir->type); index = ir->array_index->constant_expression_value(); @@ -1525,14 +1525,14 @@ ir_to_mesa_visitor::visit(ir_dereference_array *ir) if (index) { src.index += index->value.i[0] * element_size; } else { - ir_to_mesa_src_reg array_base = this->result; + src_reg array_base = this->result; /* Variable index array dereference. It eats the "vec4" of the * base of the array and an index that offsets the Mesa register * index. */ ir->array_index->accept(this); - ir_to_mesa_src_reg index_reg; + src_reg index_reg; if (element_size == 1) { index_reg = this->result; @@ -1544,7 +1544,7 @@ ir_to_mesa_visitor::visit(ir_dereference_array *ir) this->result, src_reg_for_float(element_size)); } - src.reladdr = ralloc(mem_ctx, ir_to_mesa_src_reg); + src.reladdr = ralloc(mem_ctx, src_reg); memcpy(src.reladdr, &index_reg, sizeof(index_reg)); } @@ -1586,7 +1586,7 @@ ir_to_mesa_visitor::visit(ir_dereference_record *ir) * instead of potentially using a temporary like we might with the * ir_dereference handler. */ -static struct ir_to_mesa_dst_reg +static dst_reg get_assignment_lhs(ir_dereference *ir, ir_to_mesa_visitor *v) { /* The LHS must be a dereference. If the LHS is a variable indexed array @@ -1696,8 +1696,8 @@ ir_to_mesa_visitor::process_move_condition(ir_rvalue *ir) void ir_to_mesa_visitor::visit(ir_assignment *ir) { - struct ir_to_mesa_dst_reg l; - struct ir_to_mesa_src_reg r; + dst_reg l; + src_reg r; int i; ir->rhs->accept(this); @@ -1753,7 +1753,7 @@ ir_to_mesa_visitor::visit(ir_assignment *ir) if (ir->condition) { const bool switch_order = this->process_move_condition(ir->condition); - ir_to_mesa_src_reg condition = this->result; + src_reg condition = this->result; for (i = 0; i < type_size(ir->lhs->type); i++) { if (switch_order) { @@ -1780,7 +1780,7 @@ ir_to_mesa_visitor::visit(ir_assignment *ir) void ir_to_mesa_visitor::visit(ir_constant *ir) { - ir_to_mesa_src_reg src; + src_reg src; GLfloat stack_vals[4] = { 0 }; GLfloat *values = stack_vals; unsigned int i; @@ -1792,8 +1792,8 @@ ir_to_mesa_visitor::visit(ir_constant *ir) */ if (ir->type->base_type == GLSL_TYPE_STRUCT) { - ir_to_mesa_src_reg temp_base = get_temp(ir->type); - ir_to_mesa_dst_reg temp = ir_to_mesa_dst_reg_from_src(temp_base); + src_reg temp_base = get_temp(ir->type); + dst_reg temp = ir_to_mesa_dst_reg_from_src(temp_base); foreach_iter(exec_list_iterator, iter, ir->components) { ir_constant *field_value = (ir_constant *)iter.get(); @@ -1816,8 +1816,8 @@ ir_to_mesa_visitor::visit(ir_constant *ir) } if (ir->type->is_array()) { - ir_to_mesa_src_reg temp_base = get_temp(ir->type); - ir_to_mesa_dst_reg temp = ir_to_mesa_dst_reg_from_src(temp_base); + src_reg temp_base = get_temp(ir->type); + dst_reg temp = ir_to_mesa_dst_reg_from_src(temp_base); int size = type_size(ir->type->fields.array); assert(size > 0); @@ -1837,14 +1837,14 @@ ir_to_mesa_visitor::visit(ir_constant *ir) } if (ir->type->is_matrix()) { - ir_to_mesa_src_reg mat = get_temp(ir->type); - ir_to_mesa_dst_reg mat_column = ir_to_mesa_dst_reg_from_src(mat); + src_reg mat = get_temp(ir->type); + dst_reg mat_column = ir_to_mesa_dst_reg_from_src(mat); for (i = 0; i < ir->type->matrix_columns; i++) { assert(ir->type->base_type == GLSL_TYPE_FLOAT); values = &ir->value.f[i * ir->type->vector_elements]; - src = ir_to_mesa_src_reg(PROGRAM_CONSTANT, -1, NULL); + src = src_reg(PROGRAM_CONSTANT, -1, NULL); src.index = _mesa_add_unnamed_constant(this->prog->Parameters, values, ir->type->vector_elements, @@ -1882,7 +1882,7 @@ ir_to_mesa_visitor::visit(ir_constant *ir) assert(!"Non-float/uint/int/bool constant"); } - this->result = ir_to_mesa_src_reg(PROGRAM_CONSTANT, -1, ir->type); + this->result = src_reg(PROGRAM_CONSTANT, -1, ir->type); this->result.index = _mesa_add_unnamed_constant(this->prog->Parameters, values, ir->type->vector_elements, @@ -1951,9 +1951,9 @@ ir_to_mesa_visitor::visit(ir_call *ir) assert(storage); param_rval->accept(this); - ir_to_mesa_src_reg r = this->result; + src_reg r = this->result; - ir_to_mesa_dst_reg l; + dst_reg l; l.file = storage->file; l.index = storage->index; l.reladdr = NULL; @@ -1987,7 +1987,7 @@ ir_to_mesa_visitor::visit(ir_call *ir) variable_storage *storage = find_variable_storage(param); assert(storage); - ir_to_mesa_src_reg r; + src_reg r; r.file = storage->file; r.index = storage->index; r.reladdr = NULL; @@ -1995,7 +1995,7 @@ ir_to_mesa_visitor::visit(ir_call *ir) r.negate = 0; param_rval->accept(this); - ir_to_mesa_dst_reg l = ir_to_mesa_dst_reg_from_src(this->result); + dst_reg l = ir_to_mesa_dst_reg_from_src(this->result); for (i = 0; i < type_size(param->type); i++) { ir_to_mesa_emit_op1(ir, OPCODE_MOV, l, r); @@ -2015,8 +2015,8 @@ ir_to_mesa_visitor::visit(ir_call *ir) void ir_to_mesa_visitor::visit(ir_texture *ir) { - ir_to_mesa_src_reg result_src, coord, lod_info, projector; - ir_to_mesa_dst_reg result_dst, coord_dst; + src_reg result_src, coord, lod_info, projector; + dst_reg result_dst, coord_dst; ir_to_mesa_instruction *inst = NULL; prog_opcode opcode = OPCODE_NOP; @@ -2071,7 +2071,7 @@ ir_to_mesa_visitor::visit(ir_texture *ir) coord_dst.writemask = WRITEMASK_XYZW; opcode = OPCODE_TXP; } else { - ir_to_mesa_src_reg coord_w = coord; + src_reg coord_w = coord; coord_w.swizzle = SWIZZLE_WWWW; /* For the other TEX opcodes there's no projective version @@ -2173,13 +2173,13 @@ void ir_to_mesa_visitor::visit(ir_return *ir) { if (ir->get_value()) { - ir_to_mesa_dst_reg l; + dst_reg l; int i; assert(current_function); ir->get_value()->accept(this); - ir_to_mesa_src_reg r = this->result; + src_reg r = this->result; l = ir_to_mesa_dst_reg_from_src(current_function->return_reg); @@ -2228,7 +2228,7 @@ ir_to_mesa_visitor::visit(ir_if *ir) * have something to set cond_update on. */ if (cond_inst == prev_inst) { - ir_to_mesa_src_reg temp = get_temp(glsl_type::bool_type); + src_reg temp = get_temp(glsl_type::bool_type); cond_inst = ir_to_mesa_emit_op1(ir->condition, OPCODE_MOV, ir_to_mesa_dst_reg_from_src(temp), result); @@ -2271,7 +2271,7 @@ ir_to_mesa_visitor::~ir_to_mesa_visitor() } static struct prog_src_register -mesa_src_reg_from_ir_src_reg(ir_to_mesa_src_reg reg) +mesa_src_reg_from_ir_src_reg(src_reg reg) { struct prog_src_register mesa_reg; From cb21fa91b8e8f46d7d27604b9cb77fba031567f4 Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Tue, 5 Apr 2011 12:01:59 -0700 Subject: [PATCH 152/420] ir_to_mesa: Use constructors to convert between src_reg and dst_reg. Rather than ir_to_mesa_dst_reg_from_src and ir_to_mesa_src_reg_from_dst. The new constructors are marked 'explicit' so that the compiler can catch cases where source and destination registers were accidentally interchanged. This also necessitated using constructors to initialize the undef and address registers, as well as adding a default constructor. Reviewed-by: Ian Romanick --- src/mesa/program/ir_to_mesa.cpp | 117 ++++++++++++++++++-------------- 1 file changed, 66 insertions(+), 51 deletions(-) diff --git a/src/mesa/program/ir_to_mesa.cpp b/src/mesa/program/ir_to_mesa.cpp index 8eec5bf5339..588348062b3 100644 --- a/src/mesa/program/ir_to_mesa.cpp +++ b/src/mesa/program/ir_to_mesa.cpp @@ -56,6 +56,9 @@ extern "C" { #include "program/sampler.h" } +class src_reg; +class dst_reg; + static int swizzle_for_size(int size); /** @@ -85,6 +88,8 @@ public: this->reladdr = NULL; } + explicit src_reg(dst_reg reg); + gl_register_file file; /**< PROGRAM_* from Mesa */ int index; /**< temporary index, VERT_ATTRIB_*, FRAG_ATTRIB_*, etc. */ GLuint swizzle; /**< SWIZZLE_XYZWONEZERO swizzles from Mesa. */ @@ -95,6 +100,26 @@ public: class dst_reg { public: + dst_reg(int file, int writemask) + { + this->file = file; + this->index = 0; + this->writemask = writemask; + this->cond_mask = COND_TR; + this->reladdr = NULL; + } + + dst_reg() + { + this->file = PROGRAM_UNDEFINED; + this->index = 0; + this->writemask = 0; + this->cond_mask = COND_TR; + this->reladdr = NULL; + } + + explicit dst_reg(src_reg reg); + int file; /**< PROGRAM_* from Mesa */ int index; /**< temporary index, VERT_ATTRIB_*, FRAG_ATTRIB_*, etc. */ int writemask; /**< Bitfield of WRITEMASK_[XYZW] */ @@ -103,6 +128,24 @@ public: src_reg *reladdr; }; +src_reg::src_reg(dst_reg reg) +{ + this->file = (gl_register_file) reg.file; + this->index = reg.index; + this->swizzle = SWIZZLE_XYZW; + this->negate = 0; + this->reladdr = NULL; +} + +dst_reg::dst_reg(src_reg reg) +{ + this->file = reg.file; + this->index = reg.index; + this->writemask = WRITEMASK_XYZW; + this->cond_mask = COND_TR; + this->reladdr = reg.reladdr; +} + extern src_reg ir_to_mesa_undef; class ir_to_mesa_instruction : public exec_node { @@ -302,13 +345,9 @@ public: src_reg ir_to_mesa_undef = src_reg(PROGRAM_UNDEFINED, 0, NULL); -dst_reg ir_to_mesa_undef_dst = { - PROGRAM_UNDEFINED, 0, SWIZZLE_NOOP, COND_TR, NULL, -}; +dst_reg ir_to_mesa_undef_dst = dst_reg(PROGRAM_UNDEFINED, SWIZZLE_NOOP); -dst_reg ir_to_mesa_address_reg = { - PROGRAM_ADDRESS, 0, WRITEMASK_X, COND_TR, NULL -}; +dst_reg ir_to_mesa_address_reg = dst_reg(PROGRAM_ADDRESS, WRITEMASK_X); static void fail_link(struct gl_shader_program *prog, const char *fmt, ...) PRINTFLIKE(2, 3); @@ -431,26 +470,6 @@ ir_to_mesa_visitor::ir_to_mesa_emit_dp(ir_instruction *ir, dst, src0, src1, ir_to_mesa_undef); } -inline dst_reg -ir_to_mesa_dst_reg_from_src(src_reg reg) -{ - dst_reg dst; - - dst.file = reg.file; - dst.index = reg.index; - dst.writemask = WRITEMASK_XYZW; - dst.cond_mask = COND_TR; - dst.reladdr = reg.reladdr; - - return dst; -} - -inline src_reg -ir_to_mesa_src_reg_from_dst(dst_reg reg) -{ - return src_reg(reg.file, reg.index, NULL); -} - /** * Emits Mesa scalar opcodes to produce unique answers across channels. * @@ -592,7 +611,7 @@ ir_to_mesa_visitor::emit_scs(ir_instruction *ir, enum prog_opcode op, if (this_mask != scs_mask) { ir_to_mesa_instruction *inst; - dst_reg tmp_dst = ir_to_mesa_dst_reg_from_src(tmp); + dst_reg tmp_dst = dst_reg(tmp); /* Emit the SCS instruction. */ @@ -789,9 +808,7 @@ ir_to_mesa_visitor::visit(ir_variable *ir) this->variables.push_tail(storage); this->next_temp += type_size(ir->type); - dst = ir_to_mesa_dst_reg_from_src(src_reg(PROGRAM_TEMPORARY, - storage->index, - NULL)); + dst = dst_reg(src_reg(PROGRAM_TEMPORARY, storage->index, NULL)); } @@ -939,7 +956,7 @@ ir_to_mesa_visitor::try_emit_mad(ir_expression *ir, int mul_operand) this->result = get_temp(ir->type); ir_to_mesa_emit_op3(ir, OPCODE_MAD, - ir_to_mesa_dst_reg_from_src(this->result), a, b, c); + dst_reg(this->result), a, b, c); return true; } @@ -963,7 +980,7 @@ ir_to_mesa_visitor::try_emit_sat(ir_expression *ir) this->result = get_temp(ir->type); ir_to_mesa_instruction *inst; inst = ir_to_mesa_emit_op1(ir, OPCODE_MOV, - ir_to_mesa_dst_reg_from_src(this->result), + dst_reg(this->result), src); inst->saturate = true; @@ -983,7 +1000,7 @@ ir_to_mesa_visitor::reladdr_to_temp(ir_instruction *ir, src_reg temp = get_temp(glsl_type::vec4_type); ir_to_mesa_emit_op1(ir, OPCODE_MOV, - ir_to_mesa_dst_reg_from_src(temp), *reg); + dst_reg(temp), *reg); *reg = temp; } @@ -1095,7 +1112,7 @@ ir_to_mesa_visitor::emit_swz(ir_expression *ir) * actual storage for the result here, instead. */ const src_reg result_src = get_temp(ir->type); - dst_reg result_dst = ir_to_mesa_dst_reg_from_src(result_src); + dst_reg result_dst = dst_reg(result_src); /* Limit writes to the channels that will be used by result_src later. * This does limit this temp's use as a temporary for multi-instruction @@ -1161,7 +1178,7 @@ ir_to_mesa_visitor::visit(ir_expression *ir) */ result_src = get_temp(ir->type); /* convenience for the emit functions below. */ - result_dst = ir_to_mesa_dst_reg_from_src(result_src); + result_dst = dst_reg(result_src); /* Limit writes to the channels that will be used by result_src later. * This does limit this temp's use as a temporary for multi-instruction * sequences. @@ -1267,7 +1284,7 @@ ir_to_mesa_visitor::visit(ir_expression *ir) ir->operands[1]->type->is_vector()) { src_reg temp = get_temp(glsl_type::vec4_type); ir_to_mesa_emit_op2(ir, OPCODE_SNE, - ir_to_mesa_dst_reg_from_src(temp), op[0], op[1]); + dst_reg(temp), op[0], op[1]); ir_to_mesa_emit_dp(ir, result_dst, temp, temp, vector_elements); ir_to_mesa_emit_op2(ir, OPCODE_SEQ, result_dst, result_src, src_reg_for_float(0.0)); @@ -1281,7 +1298,7 @@ ir_to_mesa_visitor::visit(ir_expression *ir) ir->operands[1]->type->is_vector()) { src_reg temp = get_temp(glsl_type::vec4_type); ir_to_mesa_emit_op2(ir, OPCODE_SNE, - ir_to_mesa_dst_reg_from_src(temp), op[0], op[1]); + dst_reg(temp), op[0], op[1]); ir_to_mesa_emit_dp(ir, result_dst, temp, temp, vector_elements); ir_to_mesa_emit_op2(ir, OPCODE_SNE, result_dst, result_src, src_reg_for_float(0.0)); @@ -1540,7 +1557,7 @@ ir_to_mesa_visitor::visit(ir_dereference_array *ir) index_reg = get_temp(glsl_type::float_type); ir_to_mesa_emit_op2(ir, OPCODE_MUL, - ir_to_mesa_dst_reg_from_src(index_reg), + dst_reg(index_reg), this->result, src_reg_for_float(element_size)); } @@ -1603,7 +1620,7 @@ get_assignment_lhs(ir_dereference *ir, ir_to_mesa_visitor *v) * swizzles in it and write swizzles using writemask, though. */ ir->accept(v); - return ir_to_mesa_dst_reg_from_src(v->result); + return dst_reg(v->result); } /** @@ -1757,11 +1774,9 @@ ir_to_mesa_visitor::visit(ir_assignment *ir) for (i = 0; i < type_size(ir->lhs->type); i++) { if (switch_order) { - ir_to_mesa_emit_op3(ir, OPCODE_CMP, l, - condition, ir_to_mesa_src_reg_from_dst(l), r); + ir_to_mesa_emit_op3(ir, OPCODE_CMP, l, condition, src_reg(l), r); } else { - ir_to_mesa_emit_op3(ir, OPCODE_CMP, l, - condition, r, ir_to_mesa_src_reg_from_dst(l)); + ir_to_mesa_emit_op3(ir, OPCODE_CMP, l, condition, r, src_reg(l)); } l.index++; @@ -1793,7 +1808,7 @@ ir_to_mesa_visitor::visit(ir_constant *ir) if (ir->type->base_type == GLSL_TYPE_STRUCT) { src_reg temp_base = get_temp(ir->type); - dst_reg temp = ir_to_mesa_dst_reg_from_src(temp_base); + dst_reg temp = dst_reg(temp_base); foreach_iter(exec_list_iterator, iter, ir->components) { ir_constant *field_value = (ir_constant *)iter.get(); @@ -1817,7 +1832,7 @@ ir_to_mesa_visitor::visit(ir_constant *ir) if (ir->type->is_array()) { src_reg temp_base = get_temp(ir->type); - dst_reg temp = ir_to_mesa_dst_reg_from_src(temp_base); + dst_reg temp = dst_reg(temp_base); int size = type_size(ir->type->fields.array); assert(size > 0); @@ -1838,7 +1853,7 @@ ir_to_mesa_visitor::visit(ir_constant *ir) if (ir->type->is_matrix()) { src_reg mat = get_temp(ir->type); - dst_reg mat_column = ir_to_mesa_dst_reg_from_src(mat); + dst_reg mat_column = dst_reg(mat); for (i = 0; i < ir->type->matrix_columns; i++) { assert(ir->type->base_type == GLSL_TYPE_FLOAT); @@ -1995,7 +2010,7 @@ ir_to_mesa_visitor::visit(ir_call *ir) r.negate = 0; param_rval->accept(this); - dst_reg l = ir_to_mesa_dst_reg_from_src(this->result); + dst_reg l = dst_reg(this->result); for (i = 0; i < type_size(param->type); i++) { ir_to_mesa_emit_op1(ir, OPCODE_MOV, l, r); @@ -2028,7 +2043,7 @@ ir_to_mesa_visitor::visit(ir_texture *ir) * handle cleaning up our mess in that case. */ coord = get_temp(glsl_type::vec4_type); - coord_dst = ir_to_mesa_dst_reg_from_src(coord); + coord_dst = dst_reg(coord); ir_to_mesa_emit_op1(ir, OPCODE_MOV, coord_dst, this->result); @@ -2041,7 +2056,7 @@ ir_to_mesa_visitor::visit(ir_texture *ir) * the actual storage for the result here, instead. */ result_src = get_temp(glsl_type::vec4_type); - result_dst = ir_to_mesa_dst_reg_from_src(result_src); + result_dst = dst_reg(result_src); switch (ir->op) { case ir_tex: @@ -2181,7 +2196,7 @@ ir_to_mesa_visitor::visit(ir_return *ir) ir->get_value()->accept(this); src_reg r = this->result; - l = ir_to_mesa_dst_reg_from_src(current_function->return_reg); + l = dst_reg(current_function->return_reg); for (i = 0; i < type_size(current_function->sig->return_type); i++) { ir_to_mesa_emit_op1(ir, OPCODE_MOV, l, r); @@ -2230,7 +2245,7 @@ ir_to_mesa_visitor::visit(ir_if *ir) if (cond_inst == prev_inst) { src_reg temp = get_temp(glsl_type::bool_type); cond_inst = ir_to_mesa_emit_op1(ir->condition, OPCODE_MOV, - ir_to_mesa_dst_reg_from_src(temp), + dst_reg(temp), result); } cond_inst->cond_update = GL_TRUE; From 01e19fcf1f36cea40cc5efc48796d4e153a20f2f Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Tue, 5 Apr 2011 12:16:57 -0700 Subject: [PATCH 153/420] ir_to_mesa: Rename ir_to_mesa_emit_*_opX methods to emit_*. There's really no need for a prefix on member functions, and overloading takes care of the _op1/_op2 distinction quite nicely. Eric already made a similar change in the i965 FS backend. Reviewed-by: Ian Romanick --- src/mesa/program/ir_to_mesa.cpp | 348 +++++++++++++------------------- 1 file changed, 142 insertions(+), 206 deletions(-) diff --git a/src/mesa/program/ir_to_mesa.cpp b/src/mesa/program/ir_to_mesa.cpp index 588348062b3..52e250e458c 100644 --- a/src/mesa/program/ir_to_mesa.cpp +++ b/src/mesa/program/ir_to_mesa.cpp @@ -284,48 +284,32 @@ public: /** List of ir_to_mesa_instruction */ exec_list instructions; - ir_to_mesa_instruction *ir_to_mesa_emit_op0(ir_instruction *ir, - enum prog_opcode op); + ir_to_mesa_instruction *emit(ir_instruction *ir, enum prog_opcode op); - ir_to_mesa_instruction *ir_to_mesa_emit_op1(ir_instruction *ir, - enum prog_opcode op, - dst_reg dst, - src_reg src0); + ir_to_mesa_instruction *emit(ir_instruction *ir, enum prog_opcode op, + dst_reg dst, src_reg src0); - ir_to_mesa_instruction *ir_to_mesa_emit_op2(ir_instruction *ir, - enum prog_opcode op, - dst_reg dst, - src_reg src0, - src_reg src1); + ir_to_mesa_instruction *emit(ir_instruction *ir, enum prog_opcode op, + dst_reg dst, src_reg src0, src_reg src1); - ir_to_mesa_instruction *ir_to_mesa_emit_op3(ir_instruction *ir, - enum prog_opcode op, - dst_reg dst, - src_reg src0, - src_reg src1, - src_reg src2); + ir_to_mesa_instruction *emit(ir_instruction *ir, enum prog_opcode op, + dst_reg dst, + src_reg src0, src_reg src1, src_reg src2); /** * Emit the correct dot-product instruction for the type of arguments - * - * \sa ir_to_mesa_emit_op2 */ - void ir_to_mesa_emit_dp(ir_instruction *ir, - dst_reg dst, - src_reg src0, - src_reg src1, - unsigned elements); + void emit_dp(ir_instruction *ir, + dst_reg dst, + src_reg src0, + src_reg src1, + unsigned elements); - void ir_to_mesa_emit_scalar_op1(ir_instruction *ir, - enum prog_opcode op, - dst_reg dst, - src_reg src0); + void emit_scalar(ir_instruction *ir, enum prog_opcode op, + dst_reg dst, src_reg src0); - void ir_to_mesa_emit_scalar_op2(ir_instruction *ir, - enum prog_opcode op, - dst_reg dst, - src_reg src0, - src_reg src1); + void emit_scalar(ir_instruction *ir, enum prog_opcode op, + dst_reg dst, src_reg src0, src_reg src1); void emit_scs(ir_instruction *ir, enum prog_opcode op, dst_reg dst, const src_reg &src); @@ -378,12 +362,9 @@ swizzle_for_size(int size) } ir_to_mesa_instruction * -ir_to_mesa_visitor::ir_to_mesa_emit_op3(ir_instruction *ir, - enum prog_opcode op, - dst_reg dst, - src_reg src0, - src_reg src1, - src_reg src2) +ir_to_mesa_visitor::emit(ir_instruction *ir, enum prog_opcode op, + dst_reg dst, + src_reg src0, src_reg src1, src_reg src2) { ir_to_mesa_instruction *inst = new(mem_ctx) ir_to_mesa_instruction(); int num_reladdr = 0; @@ -402,9 +383,7 @@ ir_to_mesa_visitor::ir_to_mesa_emit_op3(ir_instruction *ir, reladdr_to_temp(ir, &src0, &num_reladdr); if (dst.reladdr) { - ir_to_mesa_emit_op1(ir, OPCODE_ARL, ir_to_mesa_address_reg, - *dst.reladdr); - + emit(ir, OPCODE_ARL, ir_to_mesa_address_reg, *dst.reladdr); num_reladdr--; } assert(num_reladdr == 0); @@ -425,49 +404,37 @@ ir_to_mesa_visitor::ir_to_mesa_emit_op3(ir_instruction *ir, ir_to_mesa_instruction * -ir_to_mesa_visitor::ir_to_mesa_emit_op2(ir_instruction *ir, - enum prog_opcode op, - dst_reg dst, - src_reg src0, - src_reg src1) +ir_to_mesa_visitor::emit(ir_instruction *ir, enum prog_opcode op, + dst_reg dst, src_reg src0, src_reg src1) { - return ir_to_mesa_emit_op3(ir, op, dst, src0, src1, ir_to_mesa_undef); + return emit(ir, op, dst, src0, src1, ir_to_mesa_undef); } ir_to_mesa_instruction * -ir_to_mesa_visitor::ir_to_mesa_emit_op1(ir_instruction *ir, - enum prog_opcode op, - dst_reg dst, - src_reg src0) +ir_to_mesa_visitor::emit(ir_instruction *ir, enum prog_opcode op, + dst_reg dst, src_reg src0) { assert(dst.writemask != 0); - return ir_to_mesa_emit_op3(ir, op, dst, - src0, ir_to_mesa_undef, ir_to_mesa_undef); + return emit(ir, op, dst, src0, ir_to_mesa_undef, ir_to_mesa_undef); } ir_to_mesa_instruction * -ir_to_mesa_visitor::ir_to_mesa_emit_op0(ir_instruction *ir, - enum prog_opcode op) +ir_to_mesa_visitor::emit(ir_instruction *ir, enum prog_opcode op) { - return ir_to_mesa_emit_op3(ir, op, ir_to_mesa_undef_dst, - ir_to_mesa_undef, - ir_to_mesa_undef, - ir_to_mesa_undef); + return emit(ir, op, ir_to_mesa_undef_dst, + ir_to_mesa_undef, ir_to_mesa_undef, ir_to_mesa_undef); } void -ir_to_mesa_visitor::ir_to_mesa_emit_dp(ir_instruction *ir, - dst_reg dst, - src_reg src0, - src_reg src1, - unsigned elements) +ir_to_mesa_visitor::emit_dp(ir_instruction *ir, + dst_reg dst, src_reg src0, src_reg src1, + unsigned elements) { static const gl_inst_opcode dot_opcodes[] = { OPCODE_DP2, OPCODE_DP3, OPCODE_DP4 }; - ir_to_mesa_emit_op3(ir, dot_opcodes[elements - 2], - dst, src0, src1, ir_to_mesa_undef); + emit(ir, dot_opcodes[elements - 2], dst, src0, src1, ir_to_mesa_undef); } /** @@ -479,11 +446,9 @@ ir_to_mesa_visitor::ir_to_mesa_emit_dp(ir_instruction *ir, * to produce dest channels. */ void -ir_to_mesa_visitor::ir_to_mesa_emit_scalar_op2(ir_instruction *ir, - enum prog_opcode op, - dst_reg dst, - src_reg orig_src0, - src_reg orig_src1) +ir_to_mesa_visitor::emit_scalar(ir_instruction *ir, enum prog_opcode op, + dst_reg dst, + src_reg orig_src0, src_reg orig_src1) { int i, j; int done_mask = ~dst.writemask; @@ -519,26 +484,21 @@ ir_to_mesa_visitor::ir_to_mesa_emit_scalar_op2(ir_instruction *ir, src1.swizzle = MAKE_SWIZZLE4(src1_swiz, src1_swiz, src1_swiz, src1_swiz); - inst = ir_to_mesa_emit_op2(ir, op, - dst, - src0, - src1); + inst = emit(ir, op, dst, src0, src1); inst->dst.writemask = this_mask; done_mask |= this_mask; } } void -ir_to_mesa_visitor::ir_to_mesa_emit_scalar_op1(ir_instruction *ir, - enum prog_opcode op, - dst_reg dst, - src_reg src0) +ir_to_mesa_visitor::emit_scalar(ir_instruction *ir, enum prog_opcode op, + dst_reg dst, src_reg src0) { src_reg undef = ir_to_mesa_undef; undef.swizzle = SWIZZLE_XXXX; - ir_to_mesa_emit_scalar_op2(ir, op, dst, src0, undef); + emit_scalar(ir, op, dst, src0, undef); } /** @@ -563,7 +523,7 @@ ir_to_mesa_visitor::emit_scs(ir_instruction *ir, enum prog_opcode op, /* Vertex programs cannot use the SCS opcode. */ if (this->prog->Target == GL_VERTEX_PROGRAM_ARB) { - ir_to_mesa_emit_scalar_op1(ir, op, dst, src); + emit_scalar(ir, op, dst, src); return; } @@ -615,7 +575,7 @@ ir_to_mesa_visitor::emit_scs(ir_instruction *ir, enum prog_opcode op, /* Emit the SCS instruction. */ - inst = ir_to_mesa_emit_op1(ir, OPCODE_SCS, tmp_dst, src0); + inst = emit(ir, OPCODE_SCS, tmp_dst, src0); inst->dst.writemask = scs_mask; /* Move the result of the SCS instruction to the desired location in @@ -623,13 +583,12 @@ ir_to_mesa_visitor::emit_scs(ir_instruction *ir, enum prog_opcode op, */ tmp.swizzle = MAKE_SWIZZLE4(component, component, component, component); - inst = ir_to_mesa_emit_op1(ir, OPCODE_SCS, dst, tmp); + inst = emit(ir, OPCODE_SCS, dst, tmp); inst->dst.writemask = this_mask; } else { /* Emit the SCS instruction to write directly to the destination. */ - ir_to_mesa_instruction *inst = - ir_to_mesa_emit_op1(ir, OPCODE_SCS, dst, src0); + ir_to_mesa_instruction *inst = emit(ir, OPCODE_SCS, dst, src0); inst->dst.writemask = scs_mask; } @@ -825,7 +784,7 @@ ir_to_mesa_visitor::visit(ir_variable *ir) } else { src_reg src(PROGRAM_STATE_VAR, index, NULL); src.swizzle = slots[i].swizzle; - ir_to_mesa_emit_op1(ir, OPCODE_MOV, dst, src); + emit(ir, OPCODE_MOV, dst, src); /* even a float takes up a whole vec4 reg in a struct/array. */ dst.index++; } @@ -858,7 +817,7 @@ ir_to_mesa_visitor::visit(ir_loop *ir) delete a; } - ir_to_mesa_emit_op0(NULL, OPCODE_BGNLOOP); + emit(NULL, OPCODE_BGNLOOP); if (ir->to) { ir_expression *e = @@ -891,7 +850,7 @@ ir_to_mesa_visitor::visit(ir_loop *ir) delete e; } - ir_to_mesa_emit_op0(NULL, OPCODE_ENDLOOP); + emit(NULL, OPCODE_ENDLOOP); } void @@ -899,10 +858,10 @@ ir_to_mesa_visitor::visit(ir_loop_jump *ir) { switch (ir->mode) { case ir_loop_jump::jump_break: - ir_to_mesa_emit_op0(NULL, OPCODE_BRK); + emit(NULL, OPCODE_BRK); break; case ir_loop_jump::jump_continue: - ir_to_mesa_emit_op0(NULL, OPCODE_CONT); + emit(NULL, OPCODE_CONT); break; } } @@ -955,8 +914,7 @@ ir_to_mesa_visitor::try_emit_mad(ir_expression *ir, int mul_operand) c = this->result; this->result = get_temp(ir->type); - ir_to_mesa_emit_op3(ir, OPCODE_MAD, - dst_reg(this->result), a, b, c); + emit(ir, OPCODE_MAD, dst_reg(this->result), a, b, c); return true; } @@ -979,9 +937,7 @@ ir_to_mesa_visitor::try_emit_sat(ir_expression *ir) this->result = get_temp(ir->type); ir_to_mesa_instruction *inst; - inst = ir_to_mesa_emit_op1(ir, OPCODE_MOV, - dst_reg(this->result), - src); + inst = emit(ir, OPCODE_MOV, dst_reg(this->result), src); inst->saturate = true; return true; @@ -994,13 +950,12 @@ ir_to_mesa_visitor::reladdr_to_temp(ir_instruction *ir, if (!reg->reladdr) return; - ir_to_mesa_emit_op1(ir, OPCODE_ARL, ir_to_mesa_address_reg, *reg->reladdr); + emit(ir, OPCODE_ARL, ir_to_mesa_address_reg, *reg->reladdr); if (*num_reladdr != 1) { src_reg temp = get_temp(glsl_type::vec4_type); - ir_to_mesa_emit_op1(ir, OPCODE_MOV, - dst_reg(temp), *reg); + emit(ir, OPCODE_MOV, dst_reg(temp), *reg); *reg = temp; } @@ -1120,7 +1075,7 @@ ir_to_mesa_visitor::emit_swz(ir_expression *ir) */ result_dst.writemask = (1 << ir->type->vector_elements) - 1; - ir_to_mesa_emit_op1(ir, OPCODE_SWZ, result_dst, src); + emit(ir, OPCODE_SWZ, result_dst, src); this->result = result_src; } @@ -1187,38 +1142,37 @@ ir_to_mesa_visitor::visit(ir_expression *ir) switch (ir->operation) { case ir_unop_logic_not: - ir_to_mesa_emit_op2(ir, OPCODE_SEQ, result_dst, - op[0], src_reg_for_float(0.0)); + emit(ir, OPCODE_SEQ, result_dst, op[0], src_reg_for_float(0.0)); break; case ir_unop_neg: op[0].negate = ~op[0].negate; result_src = op[0]; break; case ir_unop_abs: - ir_to_mesa_emit_op1(ir, OPCODE_ABS, result_dst, op[0]); + emit(ir, OPCODE_ABS, result_dst, op[0]); break; case ir_unop_sign: - ir_to_mesa_emit_op1(ir, OPCODE_SSG, result_dst, op[0]); + emit(ir, OPCODE_SSG, result_dst, op[0]); break; case ir_unop_rcp: - ir_to_mesa_emit_scalar_op1(ir, OPCODE_RCP, result_dst, op[0]); + emit_scalar(ir, OPCODE_RCP, result_dst, op[0]); break; case ir_unop_exp2: - ir_to_mesa_emit_scalar_op1(ir, OPCODE_EX2, result_dst, op[0]); + emit_scalar(ir, OPCODE_EX2, result_dst, op[0]); break; case ir_unop_exp: case ir_unop_log: assert(!"not reached: should be handled by ir_explog_to_explog2"); break; case ir_unop_log2: - ir_to_mesa_emit_scalar_op1(ir, OPCODE_LG2, result_dst, op[0]); + emit_scalar(ir, OPCODE_LG2, result_dst, op[0]); break; case ir_unop_sin: - ir_to_mesa_emit_scalar_op1(ir, OPCODE_SIN, result_dst, op[0]); + emit_scalar(ir, OPCODE_SIN, result_dst, op[0]); break; case ir_unop_cos: - ir_to_mesa_emit_scalar_op1(ir, OPCODE_COS, result_dst, op[0]); + emit_scalar(ir, OPCODE_COS, result_dst, op[0]); break; case ir_unop_sin_reduced: emit_scs(ir, OPCODE_SIN, result_dst, op[0]); @@ -1228,10 +1182,10 @@ ir_to_mesa_visitor::visit(ir_expression *ir) break; case ir_unop_dFdx: - ir_to_mesa_emit_op1(ir, OPCODE_DDX, result_dst, op[0]); + emit(ir, OPCODE_DDX, result_dst, op[0]); break; case ir_unop_dFdy: - ir_to_mesa_emit_op1(ir, OPCODE_DDY, result_dst, op[0]); + emit(ir, OPCODE_DDY, result_dst, op[0]); break; case ir_unop_noise: { @@ -1240,19 +1194,19 @@ ir_to_mesa_visitor::visit(ir_expression *ir) + (ir->operands[0]->type->vector_elements) - 1); assert((opcode >= OPCODE_NOISE1) && (opcode <= OPCODE_NOISE4)); - ir_to_mesa_emit_op1(ir, opcode, result_dst, op[0]); + emit(ir, opcode, result_dst, op[0]); break; } case ir_binop_add: - ir_to_mesa_emit_op2(ir, OPCODE_ADD, result_dst, op[0], op[1]); + emit(ir, OPCODE_ADD, result_dst, op[0], op[1]); break; case ir_binop_sub: - ir_to_mesa_emit_op2(ir, OPCODE_SUB, result_dst, op[0], op[1]); + emit(ir, OPCODE_SUB, result_dst, op[0], op[1]); break; case ir_binop_mul: - ir_to_mesa_emit_op2(ir, OPCODE_MUL, result_dst, op[0], op[1]); + emit(ir, OPCODE_MUL, result_dst, op[0], op[1]); break; case ir_binop_div: assert(!"not reached: should be handled by ir_div_to_mul_rcp"); @@ -1261,35 +1215,33 @@ ir_to_mesa_visitor::visit(ir_expression *ir) break; case ir_binop_less: - ir_to_mesa_emit_op2(ir, OPCODE_SLT, result_dst, op[0], op[1]); + emit(ir, OPCODE_SLT, result_dst, op[0], op[1]); break; case ir_binop_greater: - ir_to_mesa_emit_op2(ir, OPCODE_SGT, result_dst, op[0], op[1]); + emit(ir, OPCODE_SGT, result_dst, op[0], op[1]); break; case ir_binop_lequal: - ir_to_mesa_emit_op2(ir, OPCODE_SLE, result_dst, op[0], op[1]); + emit(ir, OPCODE_SLE, result_dst, op[0], op[1]); break; case ir_binop_gequal: - ir_to_mesa_emit_op2(ir, OPCODE_SGE, result_dst, op[0], op[1]); + emit(ir, OPCODE_SGE, result_dst, op[0], op[1]); break; case ir_binop_equal: - ir_to_mesa_emit_op2(ir, OPCODE_SEQ, result_dst, op[0], op[1]); + emit(ir, OPCODE_SEQ, result_dst, op[0], op[1]); break; case ir_binop_nequal: - ir_to_mesa_emit_op2(ir, OPCODE_SNE, result_dst, op[0], op[1]); + emit(ir, OPCODE_SNE, result_dst, op[0], op[1]); break; case ir_binop_all_equal: /* "==" operator producing a scalar boolean. */ if (ir->operands[0]->type->is_vector() || ir->operands[1]->type->is_vector()) { src_reg temp = get_temp(glsl_type::vec4_type); - ir_to_mesa_emit_op2(ir, OPCODE_SNE, - dst_reg(temp), op[0], op[1]); - ir_to_mesa_emit_dp(ir, result_dst, temp, temp, vector_elements); - ir_to_mesa_emit_op2(ir, OPCODE_SEQ, - result_dst, result_src, src_reg_for_float(0.0)); + emit(ir, OPCODE_SNE, dst_reg(temp), op[0], op[1]); + emit_dp(ir, result_dst, temp, temp, vector_elements); + emit(ir, OPCODE_SEQ, result_dst, result_src, src_reg_for_float(0.0)); } else { - ir_to_mesa_emit_op2(ir, OPCODE_SEQ, result_dst, op[0], op[1]); + emit(ir, OPCODE_SEQ, result_dst, op[0], op[1]); } break; case ir_binop_any_nequal: @@ -1297,64 +1249,54 @@ ir_to_mesa_visitor::visit(ir_expression *ir) if (ir->operands[0]->type->is_vector() || ir->operands[1]->type->is_vector()) { src_reg temp = get_temp(glsl_type::vec4_type); - ir_to_mesa_emit_op2(ir, OPCODE_SNE, - dst_reg(temp), op[0], op[1]); - ir_to_mesa_emit_dp(ir, result_dst, temp, temp, vector_elements); - ir_to_mesa_emit_op2(ir, OPCODE_SNE, - result_dst, result_src, src_reg_for_float(0.0)); + emit(ir, OPCODE_SNE, dst_reg(temp), op[0], op[1]); + emit_dp(ir, result_dst, temp, temp, vector_elements); + emit(ir, OPCODE_SNE, result_dst, result_src, src_reg_for_float(0.0)); } else { - ir_to_mesa_emit_op2(ir, OPCODE_SNE, result_dst, op[0], op[1]); + emit(ir, OPCODE_SNE, result_dst, op[0], op[1]); } break; case ir_unop_any: assert(ir->operands[0]->type->is_vector()); - ir_to_mesa_emit_dp(ir, result_dst, op[0], op[0], - ir->operands[0]->type->vector_elements); - ir_to_mesa_emit_op2(ir, OPCODE_SNE, - result_dst, result_src, src_reg_for_float(0.0)); + emit_dp(ir, result_dst, op[0], op[0], + ir->operands[0]->type->vector_elements); + emit(ir, OPCODE_SNE, result_dst, result_src, src_reg_for_float(0.0)); break; case ir_binop_logic_xor: - ir_to_mesa_emit_op2(ir, OPCODE_SNE, result_dst, op[0], op[1]); + emit(ir, OPCODE_SNE, result_dst, op[0], op[1]); break; case ir_binop_logic_or: /* This could be a saturated add and skip the SNE. */ - ir_to_mesa_emit_op2(ir, OPCODE_ADD, - result_dst, - op[0], op[1]); - - ir_to_mesa_emit_op2(ir, OPCODE_SNE, - result_dst, - result_src, src_reg_for_float(0.0)); + emit(ir, OPCODE_ADD, result_dst, op[0], op[1]); + emit(ir, OPCODE_SNE, result_dst, result_src, src_reg_for_float(0.0)); break; case ir_binop_logic_and: /* the bool args are stored as float 0.0 or 1.0, so "mul" gives us "and". */ - ir_to_mesa_emit_op2(ir, OPCODE_MUL, - result_dst, - op[0], op[1]); + emit(ir, OPCODE_MUL, result_dst, op[0], op[1]); break; case ir_binop_dot: assert(ir->operands[0]->type->is_vector()); assert(ir->operands[0]->type == ir->operands[1]->type); - ir_to_mesa_emit_dp(ir, result_dst, op[0], op[1], - ir->operands[0]->type->vector_elements); + emit_dp(ir, result_dst, op[0], op[1], + ir->operands[0]->type->vector_elements); break; case ir_unop_sqrt: /* sqrt(x) = x * rsq(x). */ - ir_to_mesa_emit_scalar_op1(ir, OPCODE_RSQ, result_dst, op[0]); - ir_to_mesa_emit_op2(ir, OPCODE_MUL, result_dst, result_src, op[0]); + emit_scalar(ir, OPCODE_RSQ, result_dst, op[0]); + emit(ir, OPCODE_MUL, result_dst, result_src, op[0]); /* For incoming channels <= 0, set the result to 0. */ op[0].negate = ~op[0].negate; - ir_to_mesa_emit_op3(ir, OPCODE_CMP, result_dst, + emit(ir, OPCODE_CMP, result_dst, op[0], result_src, src_reg_for_float(0.0)); break; case ir_unop_rsq: - ir_to_mesa_emit_scalar_op1(ir, OPCODE_RSQ, result_dst, op[0]); + emit_scalar(ir, OPCODE_RSQ, result_dst, op[0]); break; case ir_unop_i2f: case ir_unop_b2f: @@ -1363,36 +1305,36 @@ ir_to_mesa_visitor::visit(ir_expression *ir) result_src = op[0]; break; case ir_unop_f2i: - ir_to_mesa_emit_op1(ir, OPCODE_TRUNC, result_dst, op[0]); + emit(ir, OPCODE_TRUNC, result_dst, op[0]); break; case ir_unop_f2b: case ir_unop_i2b: - ir_to_mesa_emit_op2(ir, OPCODE_SNE, result_dst, + emit(ir, OPCODE_SNE, result_dst, op[0], src_reg_for_float(0.0)); break; case ir_unop_trunc: - ir_to_mesa_emit_op1(ir, OPCODE_TRUNC, result_dst, op[0]); + emit(ir, OPCODE_TRUNC, result_dst, op[0]); break; case ir_unop_ceil: op[0].negate = ~op[0].negate; - ir_to_mesa_emit_op1(ir, OPCODE_FLR, result_dst, op[0]); + emit(ir, OPCODE_FLR, result_dst, op[0]); result_src.negate = ~result_src.negate; break; case ir_unop_floor: - ir_to_mesa_emit_op1(ir, OPCODE_FLR, result_dst, op[0]); + emit(ir, OPCODE_FLR, result_dst, op[0]); break; case ir_unop_fract: - ir_to_mesa_emit_op1(ir, OPCODE_FRC, result_dst, op[0]); + emit(ir, OPCODE_FRC, result_dst, op[0]); break; case ir_binop_min: - ir_to_mesa_emit_op2(ir, OPCODE_MIN, result_dst, op[0], op[1]); + emit(ir, OPCODE_MIN, result_dst, op[0], op[1]); break; case ir_binop_max: - ir_to_mesa_emit_op2(ir, OPCODE_MAX, result_dst, op[0], op[1]); + emit(ir, OPCODE_MAX, result_dst, op[0], op[1]); break; case ir_binop_pow: - ir_to_mesa_emit_scalar_op2(ir, OPCODE_POW, result_dst, op[0], op[1]); + emit_scalar(ir, OPCODE_POW, result_dst, op[0], op[1]); break; case ir_unop_bit_not: @@ -1556,9 +1498,8 @@ ir_to_mesa_visitor::visit(ir_dereference_array *ir) } else { index_reg = get_temp(glsl_type::float_type); - ir_to_mesa_emit_op2(ir, OPCODE_MUL, - dst_reg(index_reg), - this->result, src_reg_for_float(element_size)); + emit(ir, OPCODE_MUL, dst_reg(index_reg), + this->result, src_reg_for_float(element_size)); } src.reladdr = ralloc(mem_ctx, src_reg); @@ -1774,9 +1715,9 @@ ir_to_mesa_visitor::visit(ir_assignment *ir) for (i = 0; i < type_size(ir->lhs->type); i++) { if (switch_order) { - ir_to_mesa_emit_op3(ir, OPCODE_CMP, l, condition, src_reg(l), r); + emit(ir, OPCODE_CMP, l, condition, src_reg(l), r); } else { - ir_to_mesa_emit_op3(ir, OPCODE_CMP, l, condition, r, src_reg(l)); + emit(ir, OPCODE_CMP, l, condition, r, src_reg(l)); } l.index++; @@ -1784,7 +1725,7 @@ ir_to_mesa_visitor::visit(ir_assignment *ir) } } else { for (i = 0; i < type_size(ir->lhs->type); i++) { - ir_to_mesa_emit_op1(ir, OPCODE_MOV, l, r); + emit(ir, OPCODE_MOV, l, r); l.index++; r.index++; } @@ -1820,7 +1761,7 @@ ir_to_mesa_visitor::visit(ir_constant *ir) src = this->result; for (i = 0; i < (unsigned int)size; i++) { - ir_to_mesa_emit_op1(ir, OPCODE_MOV, temp, src); + emit(ir, OPCODE_MOV, temp, src); src.index++; temp.index++; @@ -1841,7 +1782,7 @@ ir_to_mesa_visitor::visit(ir_constant *ir) ir->array_elements[i]->accept(this); src = this->result; for (int j = 0; j < size; j++) { - ir_to_mesa_emit_op1(ir, OPCODE_MOV, temp, src); + emit(ir, OPCODE_MOV, temp, src); src.index++; temp.index++; @@ -1864,7 +1805,7 @@ ir_to_mesa_visitor::visit(ir_constant *ir) values, ir->type->vector_elements, &src.swizzle); - ir_to_mesa_emit_op1(ir, OPCODE_MOV, mat_column, src); + emit(ir, OPCODE_MOV, mat_column, src); mat_column.index++; } @@ -1976,7 +1917,7 @@ ir_to_mesa_visitor::visit(ir_call *ir) l.cond_mask = COND_TR; for (i = 0; i < type_size(param->type); i++) { - ir_to_mesa_emit_op1(ir, OPCODE_MOV, l, r); + emit(ir, OPCODE_MOV, l, r); l.index++; r.index++; } @@ -1987,8 +1928,7 @@ ir_to_mesa_visitor::visit(ir_call *ir) assert(!sig_iter.has_next()); /* Emit call instruction */ - call_inst = ir_to_mesa_emit_op1(ir, OPCODE_CAL, - ir_to_mesa_undef_dst, ir_to_mesa_undef); + call_inst = emit(ir, OPCODE_CAL, ir_to_mesa_undef_dst, ir_to_mesa_undef); call_inst->function = entry; /* Process out parameters. */ @@ -2013,7 +1953,7 @@ ir_to_mesa_visitor::visit(ir_call *ir) dst_reg l = dst_reg(this->result); for (i = 0; i < type_size(param->type); i++) { - ir_to_mesa_emit_op1(ir, OPCODE_MOV, l, r); + emit(ir, OPCODE_MOV, l, r); l.index++; r.index++; } @@ -2044,8 +1984,7 @@ ir_to_mesa_visitor::visit(ir_texture *ir) */ coord = get_temp(glsl_type::vec4_type); coord_dst = dst_reg(coord); - ir_to_mesa_emit_op1(ir, OPCODE_MOV, coord_dst, - this->result); + emit(ir, OPCODE_MOV, coord_dst, this->result); if (ir->projector) { ir->projector->accept(this); @@ -2082,7 +2021,7 @@ ir_to_mesa_visitor::visit(ir_texture *ir) if (opcode == OPCODE_TEX) { /* Slot the projector in as the last component of the coord. */ coord_dst.writemask = WRITEMASK_W; - ir_to_mesa_emit_op1(ir, OPCODE_MOV, coord_dst, projector); + emit(ir, OPCODE_MOV, coord_dst, projector); coord_dst.writemask = WRITEMASK_XYZW; opcode = OPCODE_TXP; } else { @@ -2094,12 +2033,12 @@ ir_to_mesa_visitor::visit(ir_texture *ir) * projective divide now. */ coord_dst.writemask = WRITEMASK_W; - ir_to_mesa_emit_op1(ir, OPCODE_RCP, coord_dst, projector); + emit(ir, OPCODE_RCP, coord_dst, projector); /* In the case where we have to project the coordinates "by hand," * the shadow comparitor value must also be projected. */ - ir_to_mesa_src_reg tmp_src = coord; + src_reg tmp_src = coord; if (ir->shadow_comparitor) { /* Slot the shadow value in as the second to last component of the * coord. @@ -2107,17 +2046,17 @@ ir_to_mesa_visitor::visit(ir_texture *ir) ir->shadow_comparitor->accept(this); tmp_src = get_temp(glsl_type::vec4_type); - ir_to_mesa_dst_reg tmp_dst = ir_to_mesa_dst_reg_from_src(tmp_src); + dst_reg tmp_dst = dst_reg(tmp_src); tmp_dst.writemask = WRITEMASK_Z; - ir_to_mesa_emit_op1(ir, OPCODE_MOV, tmp_dst, this->result); + emit(ir, OPCODE_MOV, tmp_dst, this->result); tmp_dst.writemask = WRITEMASK_XY; - ir_to_mesa_emit_op1(ir, OPCODE_MOV, tmp_dst, coord); + emit(ir, OPCODE_MOV, tmp_dst, coord); } coord_dst.writemask = WRITEMASK_XYZ; - ir_to_mesa_emit_op2(ir, OPCODE_MUL, coord_dst, tmp_src, coord_w); + emit(ir, OPCODE_MUL, coord_dst, tmp_src, coord_w); coord_dst.writemask = WRITEMASK_XYZW; coord.swizzle = SWIZZLE_XYZW; @@ -2134,18 +2073,18 @@ ir_to_mesa_visitor::visit(ir_texture *ir) */ ir->shadow_comparitor->accept(this); coord_dst.writemask = WRITEMASK_Z; - ir_to_mesa_emit_op1(ir, OPCODE_MOV, coord_dst, this->result); + emit(ir, OPCODE_MOV, coord_dst, this->result); coord_dst.writemask = WRITEMASK_XYZW; } if (opcode == OPCODE_TXL || opcode == OPCODE_TXB) { /* Mesa IR stores lod or lod bias in the last channel of the coords. */ coord_dst.writemask = WRITEMASK_W; - ir_to_mesa_emit_op1(ir, OPCODE_MOV, coord_dst, lod_info); + emit(ir, OPCODE_MOV, coord_dst, lod_info); coord_dst.writemask = WRITEMASK_XYZW; } - inst = ir_to_mesa_emit_op1(ir, opcode, result_dst, coord); + inst = emit(ir, opcode, result_dst, coord); if (ir->shadow_comparitor) inst->tex_shadow = GL_TRUE; @@ -2199,13 +2138,13 @@ ir_to_mesa_visitor::visit(ir_return *ir) l = dst_reg(current_function->return_reg); for (i = 0; i < type_size(current_function->sig->return_type); i++) { - ir_to_mesa_emit_op1(ir, OPCODE_MOV, l, r); + emit(ir, OPCODE_MOV, l, r); l.index++; r.index++; } } - ir_to_mesa_emit_op0(ir, OPCODE_RET); + emit(ir, OPCODE_RET); } void @@ -2216,9 +2155,9 @@ ir_to_mesa_visitor::visit(ir_discard *ir) if (ir->condition) { ir->condition->accept(this); this->result.negate = ~this->result.negate; - ir_to_mesa_emit_op1(ir, OPCODE_KIL, ir_to_mesa_undef_dst, this->result); + emit(ir, OPCODE_KIL, ir_to_mesa_undef_dst, this->result); } else { - ir_to_mesa_emit_op0(ir, OPCODE_KIL_NV); + emit(ir, OPCODE_KIL_NV); } fp->UsesKill = GL_TRUE; @@ -2244,18 +2183,15 @@ ir_to_mesa_visitor::visit(ir_if *ir) */ if (cond_inst == prev_inst) { src_reg temp = get_temp(glsl_type::bool_type); - cond_inst = ir_to_mesa_emit_op1(ir->condition, OPCODE_MOV, - dst_reg(temp), - result); + cond_inst = emit(ir->condition, OPCODE_MOV, dst_reg(temp), result); } cond_inst->cond_update = GL_TRUE; - if_inst = ir_to_mesa_emit_op0(ir->condition, OPCODE_IF); + if_inst = emit(ir->condition, OPCODE_IF); if_inst->dst.cond_mask = COND_NE; } else { - if_inst = ir_to_mesa_emit_op1(ir->condition, - OPCODE_IF, ir_to_mesa_undef_dst, - this->result); + if_inst = emit(ir->condition, OPCODE_IF, ir_to_mesa_undef_dst, + this->result); } this->instructions.push_tail(if_inst); @@ -2263,12 +2199,12 @@ ir_to_mesa_visitor::visit(ir_if *ir) visit_exec_list(&ir->then_instructions, this); if (!ir->else_instructions.is_empty()) { - else_inst = ir_to_mesa_emit_op0(ir->condition, OPCODE_ELSE); + else_inst = emit(ir->condition, OPCODE_ELSE); visit_exec_list(&ir->else_instructions, this); } - if_inst = ir_to_mesa_emit_op1(ir->condition, OPCODE_ENDIF, - ir_to_mesa_undef_dst, ir_to_mesa_undef); + if_inst = emit(ir->condition, OPCODE_ENDIF, + ir_to_mesa_undef_dst, ir_to_mesa_undef); } ir_to_mesa_visitor::ir_to_mesa_visitor() @@ -2958,7 +2894,7 @@ get_mesa_program(struct gl_context *ctx, /* Emit Mesa IR for main(). */ visit_exec_list(shader->ir, &v); - v.ir_to_mesa_emit_op0(NULL, OPCODE_END); + v.emit(NULL, OPCODE_END); /* Now emit bodies for any functions that were used. */ do { @@ -2970,7 +2906,7 @@ get_mesa_program(struct gl_context *ctx, if (!entry->bgn_inst) { v.current_function = entry; - entry->bgn_inst = v.ir_to_mesa_emit_op0(NULL, OPCODE_BGNSUB); + entry->bgn_inst = v.emit(NULL, OPCODE_BGNSUB); entry->bgn_inst->function = entry; visit_exec_list(&entry->sig->body, &v); @@ -2978,10 +2914,10 @@ get_mesa_program(struct gl_context *ctx, ir_to_mesa_instruction *last; last = (ir_to_mesa_instruction *)v.instructions.get_tail(); if (last->op != OPCODE_RET) - v.ir_to_mesa_emit_op0(NULL, OPCODE_RET); + v.emit(NULL, OPCODE_RET); ir_to_mesa_instruction *end; - end = v.ir_to_mesa_emit_op0(NULL, OPCODE_ENDSUB); + end = v.emit(NULL, OPCODE_ENDSUB); end->function = entry; progress = GL_TRUE; From 5d9718f0dbe1bb9b25324c43ed0fa631735c6a51 Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Tue, 5 Apr 2011 12:22:42 -0700 Subject: [PATCH 154/420] ir_to_mesa: Use emit overloads to avoid passing undef registers. Makes the code just a little bit cleaner. Reviewed-by: Ian Romanick --- src/mesa/program/ir_to_mesa.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/mesa/program/ir_to_mesa.cpp b/src/mesa/program/ir_to_mesa.cpp index 52e250e458c..23f273130d1 100644 --- a/src/mesa/program/ir_to_mesa.cpp +++ b/src/mesa/program/ir_to_mesa.cpp @@ -434,7 +434,7 @@ ir_to_mesa_visitor::emit_dp(ir_instruction *ir, OPCODE_DP2, OPCODE_DP3, OPCODE_DP4 }; - emit(ir, dot_opcodes[elements - 2], dst, src0, src1, ir_to_mesa_undef); + emit(ir, dot_opcodes[elements - 2], dst, src0, src1); } /** @@ -1928,7 +1928,7 @@ ir_to_mesa_visitor::visit(ir_call *ir) assert(!sig_iter.has_next()); /* Emit call instruction */ - call_inst = emit(ir, OPCODE_CAL, ir_to_mesa_undef_dst, ir_to_mesa_undef); + call_inst = emit(ir, OPCODE_CAL); call_inst->function = entry; /* Process out parameters. */ @@ -2203,8 +2203,7 @@ ir_to_mesa_visitor::visit(ir_if *ir) visit_exec_list(&ir->else_instructions, this); } - if_inst = emit(ir->condition, OPCODE_ENDIF, - ir_to_mesa_undef_dst, ir_to_mesa_undef); + if_inst = emit(ir->condition, OPCODE_ENDIF); } ir_to_mesa_visitor::ir_to_mesa_visitor() From ce5d969adf4db6e95e7f1abb0a5532311d1c3c28 Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Tue, 5 Apr 2011 13:19:50 -0700 Subject: [PATCH 155/420] ir_to_mesa: Unprefix ir_to_mesa_undef* and ir_to_mesa_address_reg. Rename ir_to_mesa_undef to undef_src, for clarity. Reviewed-by: Ian Romanick --- src/mesa/program/ir_to_mesa.cpp | 30 +++++++++++++----------------- 1 file changed, 13 insertions(+), 17 deletions(-) diff --git a/src/mesa/program/ir_to_mesa.cpp b/src/mesa/program/ir_to_mesa.cpp index 23f273130d1..6a4e48417c1 100644 --- a/src/mesa/program/ir_to_mesa.cpp +++ b/src/mesa/program/ir_to_mesa.cpp @@ -146,8 +146,6 @@ dst_reg::dst_reg(src_reg reg) this->reladdr = reg.reladdr; } -extern src_reg ir_to_mesa_undef; - class ir_to_mesa_instruction : public exec_node { public: /* Callers of this ralloc-based new need not call delete. It's @@ -327,11 +325,11 @@ public: void *mem_ctx; }; -src_reg ir_to_mesa_undef = src_reg(PROGRAM_UNDEFINED, 0, NULL); +src_reg undef_src = src_reg(PROGRAM_UNDEFINED, 0, NULL); -dst_reg ir_to_mesa_undef_dst = dst_reg(PROGRAM_UNDEFINED, SWIZZLE_NOOP); +dst_reg undef_dst = dst_reg(PROGRAM_UNDEFINED, SWIZZLE_NOOP); -dst_reg ir_to_mesa_address_reg = dst_reg(PROGRAM_ADDRESS, WRITEMASK_X); +dst_reg address_reg = dst_reg(PROGRAM_ADDRESS, WRITEMASK_X); static void fail_link(struct gl_shader_program *prog, const char *fmt, ...) PRINTFLIKE(2, 3); @@ -383,7 +381,7 @@ ir_to_mesa_visitor::emit(ir_instruction *ir, enum prog_opcode op, reladdr_to_temp(ir, &src0, &num_reladdr); if (dst.reladdr) { - emit(ir, OPCODE_ARL, ir_to_mesa_address_reg, *dst.reladdr); + emit(ir, OPCODE_ARL, address_reg, *dst.reladdr); num_reladdr--; } assert(num_reladdr == 0); @@ -407,7 +405,7 @@ ir_to_mesa_instruction * ir_to_mesa_visitor::emit(ir_instruction *ir, enum prog_opcode op, dst_reg dst, src_reg src0, src_reg src1) { - return emit(ir, op, dst, src0, src1, ir_to_mesa_undef); + return emit(ir, op, dst, src0, src1, undef_src); } ir_to_mesa_instruction * @@ -415,14 +413,13 @@ ir_to_mesa_visitor::emit(ir_instruction *ir, enum prog_opcode op, dst_reg dst, src_reg src0) { assert(dst.writemask != 0); - return emit(ir, op, dst, src0, ir_to_mesa_undef, ir_to_mesa_undef); + return emit(ir, op, dst, src0, undef_src, undef_src); } ir_to_mesa_instruction * ir_to_mesa_visitor::emit(ir_instruction *ir, enum prog_opcode op) { - return emit(ir, op, ir_to_mesa_undef_dst, - ir_to_mesa_undef, ir_to_mesa_undef, ir_to_mesa_undef); + return emit(ir, op, undef_dst, undef_src, undef_src, undef_src); } void @@ -494,7 +491,7 @@ void ir_to_mesa_visitor::emit_scalar(ir_instruction *ir, enum prog_opcode op, dst_reg dst, src_reg src0) { - src_reg undef = ir_to_mesa_undef; + src_reg undef = undef_src; undef.swizzle = SWIZZLE_XXXX; @@ -754,7 +751,7 @@ ir_to_mesa_visitor::visit(ir_variable *ir) storage = new(mem_ctx) variable_storage(ir, PROGRAM_STATE_VAR, -1); this->variables.push_tail(storage); - dst = ir_to_mesa_undef_dst; + dst = undef_dst; } else { /* The variable_storage constructor allocates slots based on the size * of the type. However, this had better match the number of state @@ -950,7 +947,7 @@ ir_to_mesa_visitor::reladdr_to_temp(ir_instruction *ir, if (!reg->reladdr) return; - emit(ir, OPCODE_ARL, ir_to_mesa_address_reg, *reg->reladdr); + emit(ir, OPCODE_ARL, address_reg, *reg->reladdr); if (*num_reladdr != 1) { src_reg temp = get_temp(glsl_type::vec4_type); @@ -1880,7 +1877,7 @@ ir_to_mesa_visitor::get_function_signature(ir_function_signature *sig) if (!sig->return_type->is_void()) { entry->return_reg = get_temp(sig->return_type); } else { - entry->return_reg = ir_to_mesa_undef; + entry->return_reg = undef_src; } this->function_signatures.push_tail(entry); @@ -2155,7 +2152,7 @@ ir_to_mesa_visitor::visit(ir_discard *ir) if (ir->condition) { ir->condition->accept(this); this->result.negate = ~this->result.negate; - emit(ir, OPCODE_KIL, ir_to_mesa_undef_dst, this->result); + emit(ir, OPCODE_KIL, undef_dst, this->result); } else { emit(ir, OPCODE_KIL_NV); } @@ -2190,8 +2187,7 @@ ir_to_mesa_visitor::visit(ir_if *ir) if_inst = emit(ir->condition, OPCODE_IF); if_inst->dst.cond_mask = COND_NE; } else { - if_inst = emit(ir->condition, OPCODE_IF, ir_to_mesa_undef_dst, - this->result); + if_inst = emit(ir->condition, OPCODE_IF, undef_dst, this->result); } this->instructions.push_tail(if_inst); From b4dfb7473efd378c51b955a856eaef69312c1f9f Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Tue, 5 Apr 2011 13:22:30 -0700 Subject: [PATCH 156/420] ir_to_mesa: Use gl_register_file enum type rather than 'int'. src_reg already used this; make dst_reg use it too. Reviewed-by: Ian Romanick --- src/mesa/program/ir_to_mesa.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/mesa/program/ir_to_mesa.cpp b/src/mesa/program/ir_to_mesa.cpp index 6a4e48417c1..107bfc7957e 100644 --- a/src/mesa/program/ir_to_mesa.cpp +++ b/src/mesa/program/ir_to_mesa.cpp @@ -67,9 +67,9 @@ static int swizzle_for_size(int size); */ class src_reg { public: - src_reg(int file, int index, const glsl_type *type) + src_reg(gl_register_file file, int index, const glsl_type *type) { - this->file = (gl_register_file) file; + this->file = file; this->index = index; if (type && (type->is_scalar() || type->is_vector() || type->is_matrix())) this->swizzle = swizzle_for_size(type->vector_elements); @@ -100,7 +100,7 @@ public: class dst_reg { public: - dst_reg(int file, int writemask) + dst_reg(gl_register_file file, int writemask) { this->file = file; this->index = 0; @@ -120,7 +120,7 @@ public: explicit dst_reg(src_reg reg); - int file; /**< PROGRAM_* from Mesa */ + gl_register_file file; /**< PROGRAM_* from Mesa */ int index; /**< temporary index, VERT_ATTRIB_*, FRAG_ATTRIB_*, etc. */ int writemask; /**< Bitfield of WRITEMASK_[XYZW] */ GLuint cond_mask:4; @@ -130,7 +130,7 @@ public: src_reg::src_reg(dst_reg reg) { - this->file = (gl_register_file) reg.file; + this->file = reg.file; this->index = reg.index; this->swizzle = SWIZZLE_XYZW; this->negate = 0; From 622ee08e516afc406b21df3d354037bab73a30a7 Mon Sep 17 00:00:00 2001 From: Vinson Lee Date: Tue, 5 Apr 2011 15:32:39 -0700 Subject: [PATCH 157/420] scons: Generate empty git_sha1.h for all platforms. Fixes MinGW SCons build. --- src/mesa/SConscript | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/mesa/SConscript b/src/mesa/SConscript index 4df3029f1ee..f98f7df7407 100644 --- a/src/mesa/SConscript +++ b/src/mesa/SConscript @@ -391,15 +391,15 @@ if env['gcc'] and env['platform'] != 'windows': env.Append(CPPPATH = [matypes[0].dir]) - # Create the git_sha1.h file if it doesn't exist already - try: - f = open('main/git_sha1.h', 'r') - f.close() - except IOError: - f = open('main/git_sha1.h', 'w') - f.close() - # and update CPPPATH so the git_sha1.h header can be found - env.Append(CPPPATH = ["#" + env['build_dir'] + "/mesa/main"]) +# Create the git_sha1.h file if it doesn't exist already +try: + f = open('main/git_sha1.h', 'r') + f.close() +except IOError: + f = open('main/git_sha1.h', 'w') + f.close() +# and update CPPPATH so the git_sha1.h header can be found +env.Append(CPPPATH = ["#" + env['build_dir'] + "/mesa/main"]) # From 13ba6b7369fc9689089c3a2607d9c65b50ef1126 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Tue, 5 Apr 2011 18:48:26 -0600 Subject: [PATCH 158/420] mesa: API spec for GL_ARB_texture_buffer_object --- .../glapi/gen/ARB_texture_buffer_object.xml | 22 +++++++++++++++++++ src/mapi/glapi/gen/Makefile | 1 + src/mapi/glapi/gen/gl_API.xml | 2 ++ 3 files changed, 25 insertions(+) create mode 100644 src/mapi/glapi/gen/ARB_texture_buffer_object.xml diff --git a/src/mapi/glapi/gen/ARB_texture_buffer_object.xml b/src/mapi/glapi/gen/ARB_texture_buffer_object.xml new file mode 100644 index 00000000000..57680f5535e --- /dev/null +++ b/src/mapi/glapi/gen/ARB_texture_buffer_object.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/mapi/glapi/gen/Makefile b/src/mapi/glapi/gen/Makefile index 454ea4c9b31..f9aae84d194 100644 --- a/src/mapi/glapi/gen/Makefile +++ b/src/mapi/glapi/gen/Makefile @@ -82,6 +82,7 @@ API_XML = \ ARB_map_buffer_range.xml \ ARB_seamless_cube_map.xml \ ARB_sync.xml \ + ARB_texture_buffer_object.xml \ ARB_vertex_array_object.xml \ APPLE_object_purgeable.xml \ APPLE_vertex_array_object.xml \ diff --git a/src/mapi/glapi/gen/gl_API.xml b/src/mapi/glapi/gen/gl_API.xml index cb20ac73e86..fe44a834f96 100644 --- a/src/mapi/glapi/gen/gl_API.xml +++ b/src/mapi/glapi/gen/gl_API.xml @@ -12530,4 +12530,6 @@ + + From 9a77e285e8d015328278fcd0a110e662dba2e744 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Tue, 5 Apr 2011 18:50:39 -0600 Subject: [PATCH 159/420] mesa: regenerated API entrypoints for GL_ARB_texture_buffer_object --- src/mapi/glapi/glapi_mapi_tmp.h | 1619 ++++++------- src/mapi/glapi/glapi_sparc.S | 585 ++--- src/mapi/glapi/glapi_x86-64.S | 2969 +++++++++++------------ src/mapi/glapi/glapi_x86.S | 931 +++---- src/mapi/glapi/glapitable.h | 623 ++--- src/mapi/glapi/glapitemp.h | 186 +- src/mapi/glapi/glprocs.h | 1424 +++++------ src/mesa/main/enums.c | 3994 ++++++++++++++++--------------- src/mesa/main/glapidispatch.h | 1254 +++++----- src/mesa/main/remap_helper.h | 3970 +++++++++++++++--------------- 10 files changed, 8821 insertions(+), 8734 deletions(-) diff --git a/src/mapi/glapi/glapi_mapi_tmp.h b/src/mapi/glapi/glapi_mapi_tmp.h index b5d4490751e..ca627089b58 100644 --- a/src/mapi/glapi/glapi_mapi_tmp.h +++ b/src/mapi/glapi/glapi_mapi_tmp.h @@ -789,6 +789,7 @@ GLAPI void APIENTRY GLAPI_PREFIX(ProgramParameteriARB)(GLuint program, GLenum pn GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribDivisorARB)(GLuint index, GLuint divisor); GLAPI void APIENTRY GLAPI_PREFIX(FlushMappedBufferRange)(GLenum target, GLintptr offset, GLsizeiptr length); GLAPI GLvoid * APIENTRY GLAPI_PREFIX(MapBufferRange)(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access); +GLAPI void APIENTRY GLAPI_PREFIX(TexBufferARB)(GLenum target, GLenum internalFormat, GLuint buffer); GLAPI void APIENTRY GLAPI_PREFIX(BindVertexArray)(GLuint array); GLAPI void APIENTRY GLAPI_PREFIX(GenVertexArrays)(GLsizei n, GLuint *arrays); GLAPI void APIENTRY GLAPI_PREFIX(CopyBufferSubData)(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); @@ -818,28 +819,28 @@ GLAPI void APIENTRY GLAPI_PREFIX(DepthRangef)(GLclampf zNear, GLclampf zFar); GLAPI void APIENTRY GLAPI_PREFIX(GetShaderPrecisionFormat)(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision); GLAPI void APIENTRY GLAPI_PREFIX(ReleaseShaderCompiler)(void); GLAPI void APIENTRY GLAPI_PREFIX(ShaderBinary)(GLsizei n, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_611)(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_612)(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_613)(GLuint program, GLenum pname, GLint value); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_612)(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_613)(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_614)(GLuint program, GLenum pname, GLint value); GLAPI void APIENTRY GLAPI_PREFIX(PolygonOffsetEXT)(GLfloat factor, GLfloat bias); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_615)(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_616)(const GLfloat *coords); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_617)(GLint x, GLint y, GLint z, GLint width, GLint height); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_618)(const GLint *coords); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_619)(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_620)(const GLshort *coords); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_621)(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_622)(const GLfixed *coords); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_623)(GLenum type, GLsizei stride, const GLvoid *pointer); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_624)(GLenum pname, GLfloat *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_625)(GLenum pname, GLint *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_626)(GLenum pname, GLfloat param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_627)(GLenum pname, const GLfloat *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_628)(GLenum pname, GLint param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_629)(GLenum pname, const GLint *params); -GLbitfield APIENTRY GLAPI_PREFIX(_dispatch_stub_630)(GLfixed *mantissa, GLint *exponent); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_631)(GLclampf value, GLboolean invert); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_632)(GLenum pattern); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_616)(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_617)(const GLfloat *coords); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_618)(GLint x, GLint y, GLint z, GLint width, GLint height); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_619)(const GLint *coords); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_620)(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_621)(const GLshort *coords); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_622)(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_623)(const GLfixed *coords); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_624)(GLenum type, GLsizei stride, const GLvoid *pointer); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_625)(GLenum pname, GLfloat *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_626)(GLenum pname, GLint *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_627)(GLenum pname, GLfloat param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_628)(GLenum pname, const GLfloat *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_629)(GLenum pname, GLint param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_630)(GLenum pname, const GLint *params); +GLbitfield APIENTRY GLAPI_PREFIX(_dispatch_stub_631)(GLfixed *mantissa, GLint *exponent); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_632)(GLclampf value, GLboolean invert); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_633)(GLenum pattern); GLAPI void APIENTRY GLAPI_PREFIX(ColorPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer); GLAPI void APIENTRY GLAPI_PREFIX(EdgeFlagPointerEXT)(GLsizei stride, GLsizei count, const GLboolean *pointer); GLAPI void APIENTRY GLAPI_PREFIX(IndexPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer); @@ -902,7 +903,7 @@ GLAPI void APIENTRY GLAPI_PREFIX(FogCoordfEXT)(GLfloat coord); GLAPI void APIENTRY GLAPI_PREFIX(FogCoordf)(GLfloat coord); GLAPI void APIENTRY GLAPI_PREFIX(FogCoordfvEXT)(const GLfloat *coord); GLAPI void APIENTRY GLAPI_PREFIX(FogCoordfv)(const GLfloat *coord); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_667)(GLenum mode); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_668)(GLenum mode); GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncSeparateEXT)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncSeparate)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); GLAPI void APIENTRY GLAPI_PREFIX(FlushVertexArrayRangeNV)(void); @@ -977,15 +978,15 @@ GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4iMESA)(GLint x, GLint y, GLint z, GLi GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4ivMESA)(const GLint *v); GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4sMESA)(GLshort x, GLshort y, GLshort z, GLshort w); GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4svMESA)(const GLshort *v); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_709)(const GLenum *mode, const GLint *first, const GLsizei *count, GLsizei primcount, GLint modestride); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_710)(const GLenum *mode, const GLsizei *count, GLenum type, const GLvoid * const *indices, GLsizei primcount, GLint modestride); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_711)(GLsizei n, const GLuint *fences); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_712)(GLuint fence); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_713)(GLsizei n, GLuint *fences); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_714)(GLuint fence, GLenum pname, GLint *params); -GLboolean APIENTRY GLAPI_PREFIX(_dispatch_stub_715)(GLuint fence); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_716)(GLuint fence, GLenum condition); -GLboolean APIENTRY GLAPI_PREFIX(_dispatch_stub_717)(GLuint fence); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_710)(const GLenum *mode, const GLint *first, const GLsizei *count, GLsizei primcount, GLint modestride); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_711)(const GLenum *mode, const GLsizei *count, GLenum type, const GLvoid * const *indices, GLsizei primcount, GLint modestride); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_712)(GLsizei n, const GLuint *fences); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_713)(GLuint fence); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_714)(GLsizei n, GLuint *fences); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_715)(GLuint fence, GLenum pname, GLint *params); +GLboolean APIENTRY GLAPI_PREFIX(_dispatch_stub_716)(GLuint fence); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_717)(GLuint fence, GLenum condition); +GLboolean APIENTRY GLAPI_PREFIX(_dispatch_stub_718)(GLuint fence); GLAPI GLboolean APIENTRY GLAPI_PREFIX(AreProgramsResidentNV)(GLsizei n, const GLuint *ids, GLboolean *residences); GLAPI void APIENTRY GLAPI_PREFIX(BindProgramNV)(GLenum target, GLuint program); GLAPI void APIENTRY GLAPI_PREFIX(BindProgramARB)(GLenum target, GLuint program); @@ -1074,12 +1075,12 @@ GLAPI void APIENTRY GLAPI_PREFIX(PointParameteriNV)(GLenum pname, GLint param); GLAPI void APIENTRY GLAPI_PREFIX(PointParameteri)(GLenum pname, GLint param); GLAPI void APIENTRY GLAPI_PREFIX(PointParameterivNV)(GLenum pname, const GLint *params); GLAPI void APIENTRY GLAPI_PREFIX(PointParameteriv)(GLenum pname, const GLint *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_798)(GLenum face); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_799)(GLuint array); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_800)(GLsizei n, const GLuint *arrays); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_799)(GLenum face); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_800)(GLuint array); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_801)(GLsizei n, const GLuint *arrays); GLAPI void APIENTRY GLAPI_PREFIX(DeleteVertexArrays)(GLsizei n, const GLuint *arrays); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_801)(GLsizei n, GLuint *arrays); -GLboolean APIENTRY GLAPI_PREFIX(_dispatch_stub_802)(GLuint array); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_802)(GLsizei n, GLuint *arrays); +GLboolean APIENTRY GLAPI_PREFIX(_dispatch_stub_803)(GLuint array); GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsVertexArray)(GLuint array); GLAPI void APIENTRY GLAPI_PREFIX(GetProgramNamedParameterdvNV)(GLuint id, GLsizei len, const GLubyte *name, GLdouble *params); GLAPI void APIENTRY GLAPI_PREFIX(GetProgramNamedParameterfvNV)(GLuint id, GLsizei len, const GLubyte *name, GLfloat *params); @@ -1090,54 +1091,54 @@ GLAPI void APIENTRY GLAPI_PREFIX(ProgramNamedParameter4fvNV)(GLuint id, GLsizei GLAPI void APIENTRY GLAPI_PREFIX(PrimitiveRestartIndexNV)(GLuint index); GLAPI void APIENTRY GLAPI_PREFIX(PrimitiveRestartIndex)(GLuint index); GLAPI void APIENTRY GLAPI_PREFIX(PrimitiveRestartNV)(void); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_811)(GLenum func, GLclampx ref); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_812)(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_813)(GLclampx depth); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_814)(GLenum plane, const GLfixed *equation); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_815)(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_816)(GLclampx zNear, GLclampx zFar); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_817)(GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_818)(GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_819)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_820)(GLenum plane, GLfixed *equation); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_821)(GLenum pname, GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_822)(GLenum light, GLenum pname, GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_823)(GLenum face, GLenum pname, GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_824)(GLenum target, GLenum pname, GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_825)(GLenum coord, GLenum pname, GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_826)(GLenum target, GLenum pname, GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_827)(GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_828)(GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_829)(GLenum light, GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_830)(GLenum light, GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_831)(GLfixed width); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_832)(const GLfixed *m); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_833)(GLenum face, GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_834)(GLenum face, GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_835)(const GLfixed *m); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_836)(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_837)(GLfixed nx, GLfixed ny, GLfixed nz); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_838)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_839)(GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_840)(GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_841)(GLfixed size); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_842)(GLfixed factor, GLfixed units); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_843)(GLfixed angle, GLfixed x, GLfixed y, GLfixed z); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_844)(GLclampx value, GLboolean invert); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_845)(GLfixed x, GLfixed y, GLfixed z); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_846)(GLenum target, GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_847)(GLenum target, GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_848)(GLenum coord, GLenum pname, GLint param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_849)(GLenum coord, GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_850)(GLenum target, GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_851)(GLenum target, GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_852)(GLfixed x, GLfixed y, GLfixed z); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_853)(GLenum plane, const GLfloat *equation); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_854)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_855)(GLenum plane, GLfloat *equation); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_856)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_857)(GLclampd zmin, GLclampd zmax); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_858)(GLenum modeRGB, GLenum modeA); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_812)(GLenum func, GLclampx ref); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_813)(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_814)(GLclampx depth); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_815)(GLenum plane, const GLfixed *equation); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_816)(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_817)(GLclampx zNear, GLclampx zFar); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_818)(GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_819)(GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_820)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_821)(GLenum plane, GLfixed *equation); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_822)(GLenum pname, GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_823)(GLenum light, GLenum pname, GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_824)(GLenum face, GLenum pname, GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_825)(GLenum target, GLenum pname, GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_826)(GLenum coord, GLenum pname, GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_827)(GLenum target, GLenum pname, GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_828)(GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_829)(GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_830)(GLenum light, GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_831)(GLenum light, GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_832)(GLfixed width); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_833)(const GLfixed *m); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_834)(GLenum face, GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_835)(GLenum face, GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_836)(const GLfixed *m); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_837)(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_838)(GLfixed nx, GLfixed ny, GLfixed nz); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_839)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_840)(GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_841)(GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_842)(GLfixed size); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_843)(GLfixed factor, GLfixed units); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_844)(GLfixed angle, GLfixed x, GLfixed y, GLfixed z); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_845)(GLclampx value, GLboolean invert); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_846)(GLfixed x, GLfixed y, GLfixed z); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_847)(GLenum target, GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_848)(GLenum target, GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_849)(GLenum coord, GLenum pname, GLint param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_850)(GLenum coord, GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_851)(GLenum target, GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_852)(GLenum target, GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_853)(GLfixed x, GLfixed y, GLfixed z); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_854)(GLenum plane, const GLfloat *equation); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_855)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_856)(GLenum plane, GLfloat *equation); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_857)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_858)(GLclampd zmin, GLclampd zmax); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_859)(GLenum modeRGB, GLenum modeA); GLAPI void APIENTRY GLAPI_PREFIX(BlendEquationSeparate)(GLenum modeRGB, GLenum modeA); GLAPI void APIENTRY GLAPI_PREFIX(BindFramebufferEXT)(GLenum target, GLuint framebuffer); GLAPI void APIENTRY GLAPI_PREFIX(BindFramebuffer)(GLenum target, GLuint framebuffer); @@ -1173,10 +1174,10 @@ GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsRenderbufferEXT)(GLuint renderbuffer); GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsRenderbuffer)(GLuint renderbuffer); GLAPI void APIENTRY GLAPI_PREFIX(RenderbufferStorageEXT)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height); GLAPI void APIENTRY GLAPI_PREFIX(RenderbufferStorage)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_876)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_877)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); GLAPI void APIENTRY GLAPI_PREFIX(BlitFramebuffer)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_877)(GLenum target, GLenum pname, GLint param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_878)(GLenum target, GLintptr offset, GLsizeiptr size); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_878)(GLenum target, GLenum pname, GLint param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_879)(GLenum target, GLintptr offset, GLsizeiptr size); GLAPI void APIENTRY GLAPI_PREFIX(BindFragDataLocationEXT)(GLuint program, GLuint colorNumber, const GLchar *name); GLAPI void APIENTRY GLAPI_PREFIX(BindFragDataLocation)(GLuint program, GLuint colorNumber, const GLchar *name); GLAPI GLint APIENTRY GLAPI_PREFIX(GetFragDataLocationEXT)(GLuint program, const GLchar *name); @@ -1288,8 +1289,8 @@ GLAPI void APIENTRY GLAPI_PREFIX(TransformFeedbackVaryingsEXT)(GLuint program, G GLAPI void APIENTRY GLAPI_PREFIX(TransformFeedbackVaryings)(GLuint program, GLsizei count, const GLchar* *varyings, GLenum bufferMode); GLAPI void APIENTRY GLAPI_PREFIX(ProvokingVertexEXT)(GLenum mode); GLAPI void APIENTRY GLAPI_PREFIX(ProvokingVertex)(GLenum mode); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_936)(GLenum target, GLenum pname, GLvoid **params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_937)(GLenum target, GLsizei length, GLvoid *pointer); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_937)(GLenum target, GLenum pname, GLvoid **params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_938)(GLenum target, GLsizei length, GLvoid *pointer); GLAPI void APIENTRY GLAPI_PREFIX(GetObjectParameterivAPPLE)(GLenum objectType, GLuint name, GLenum pname, GLint *value); GLAPI GLenum APIENTRY GLAPI_PREFIX(ObjectPurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); GLAPI GLenum APIENTRY GLAPI_PREFIX(ObjectUnpurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); @@ -1297,11 +1298,11 @@ GLAPI void APIENTRY GLAPI_PREFIX(ActiveProgramEXT)(GLuint program); GLAPI GLuint APIENTRY GLAPI_PREFIX(CreateShaderProgramEXT)(GLenum type, const GLchar *string); GLAPI void APIENTRY GLAPI_PREFIX(UseShaderProgramEXT)(GLenum type, GLuint program); GLAPI void APIENTRY GLAPI_PREFIX(TextureBarrierNV)(void); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_945)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_946)(GLenum target, GLuint index, GLsizei count, const GLfloat *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_946)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); void APIENTRY GLAPI_PREFIX(_dispatch_stub_947)(GLenum target, GLuint index, GLsizei count, const GLfloat *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_948)(GLuint id, GLenum pname, GLint64EXT *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_949)(GLuint id, GLenum pname, GLuint64EXT *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_948)(GLenum target, GLuint index, GLsizei count, const GLfloat *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_949)(GLuint id, GLenum pname, GLint64EXT *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_950)(GLuint id, GLenum pname, GLuint64EXT *params); GLAPI void APIENTRY GLAPI_PREFIX(EGLImageTargetRenderbufferStorageOES)(GLenum target, GLvoid *writeOffset); GLAPI void APIENTRY GLAPI_PREFIX(EGLImageTargetTexture2DOES)(GLenum target, GLvoid *writeOffset); #undef MAPI_TMP_DEFINES @@ -6621,2950 +6622,2957 @@ GLAPI GLvoid * APIENTRY GLAPI_PREFIX(MapBufferRange)(GLenum target, GLintptr off return ((GLvoid * (APIENTRY *)(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)) _func)(target, offset, length, access); } -GLAPI void APIENTRY GLAPI_PREFIX(BindVertexArray)(GLuint array) +GLAPI void APIENTRY GLAPI_PREFIX(TexBufferARB)(GLenum target, GLenum internalFormat, GLuint buffer) { const struct mapi_table *_tbl = entry_current_get(); mapi_func _func = ((const mapi_func *) _tbl)[582]; + ((void (APIENTRY *)(GLenum target, GLenum internalFormat, GLuint buffer)) _func)(target, internalFormat, buffer); +} + +GLAPI void APIENTRY GLAPI_PREFIX(BindVertexArray)(GLuint array) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[583]; ((void (APIENTRY *)(GLuint array)) _func)(array); } GLAPI void APIENTRY GLAPI_PREFIX(GenVertexArrays)(GLsizei n, GLuint *arrays) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[583]; + mapi_func _func = ((const mapi_func *) _tbl)[584]; ((void (APIENTRY *)(GLsizei n, GLuint *arrays)) _func)(n, arrays); } GLAPI void APIENTRY GLAPI_PREFIX(CopyBufferSubData)(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[584]; + mapi_func _func = ((const mapi_func *) _tbl)[585]; ((void (APIENTRY *)(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)) _func)(readTarget, writeTarget, readOffset, writeOffset, size); } GLAPI GLenum APIENTRY GLAPI_PREFIX(ClientWaitSync)(GLsync sync, GLbitfield flags, GLuint64 timeout) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[585]; + mapi_func _func = ((const mapi_func *) _tbl)[586]; return ((GLenum (APIENTRY *)(GLsync sync, GLbitfield flags, GLuint64 timeout)) _func)(sync, flags, timeout); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteSync)(GLsync sync) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[586]; + mapi_func _func = ((const mapi_func *) _tbl)[587]; ((void (APIENTRY *)(GLsync sync)) _func)(sync); } GLAPI GLsync APIENTRY GLAPI_PREFIX(FenceSync)(GLenum condition, GLbitfield flags) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[587]; + mapi_func _func = ((const mapi_func *) _tbl)[588]; return ((GLsync (APIENTRY *)(GLenum condition, GLbitfield flags)) _func)(condition, flags); } GLAPI void APIENTRY GLAPI_PREFIX(GetInteger64v)(GLenum pname, GLint64 *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[588]; + mapi_func _func = ((const mapi_func *) _tbl)[589]; ((void (APIENTRY *)(GLenum pname, GLint64 *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetSynciv)(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[589]; + mapi_func _func = ((const mapi_func *) _tbl)[590]; ((void (APIENTRY *)(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)) _func)(sync, pname, bufSize, length, values); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsSync)(GLsync sync) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[590]; + mapi_func _func = ((const mapi_func *) _tbl)[591]; return ((GLboolean (APIENTRY *)(GLsync sync)) _func)(sync); } GLAPI void APIENTRY GLAPI_PREFIX(WaitSync)(GLsync sync, GLbitfield flags, GLuint64 timeout) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[591]; + mapi_func _func = ((const mapi_func *) _tbl)[592]; ((void (APIENTRY *)(GLsync sync, GLbitfield flags, GLuint64 timeout)) _func)(sync, flags, timeout); } GLAPI void APIENTRY GLAPI_PREFIX(DrawElementsBaseVertex)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[592]; + mapi_func _func = ((const mapi_func *) _tbl)[593]; ((void (APIENTRY *)(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)) _func)(mode, count, type, indices, basevertex); } GLAPI void APIENTRY GLAPI_PREFIX(DrawRangeElementsBaseVertex)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[593]; + mapi_func _func = ((const mapi_func *) _tbl)[594]; ((void (APIENTRY *)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex)) _func)(mode, start, end, count, type, indices, basevertex); } GLAPI void APIENTRY GLAPI_PREFIX(MultiDrawElementsBaseVertex)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount, const GLint *basevertex) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[594]; + mapi_func _func = ((const mapi_func *) _tbl)[595]; ((void (APIENTRY *)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount, const GLint *basevertex)) _func)(mode, count, type, indices, primcount, basevertex); } GLAPI void APIENTRY GLAPI_PREFIX(BlendEquationSeparateiARB)(GLuint buf, GLenum modeRGB, GLenum modeA) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[595]; + mapi_func _func = ((const mapi_func *) _tbl)[596]; ((void (APIENTRY *)(GLuint buf, GLenum modeRGB, GLenum modeA)) _func)(buf, modeRGB, modeA); } GLAPI void APIENTRY GLAPI_PREFIX(BlendEquationiARB)(GLuint buf, GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[596]; + mapi_func _func = ((const mapi_func *) _tbl)[597]; ((void (APIENTRY *)(GLuint buf, GLenum mode)) _func)(buf, mode); } GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncSeparateiARB)(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcA, GLenum dstA) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[597]; + mapi_func _func = ((const mapi_func *) _tbl)[598]; ((void (APIENTRY *)(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcA, GLenum dstA)) _func)(buf, srcRGB, dstRGB, srcA, dstA); } GLAPI void APIENTRY GLAPI_PREFIX(BlendFunciARB)(GLuint buf, GLenum src, GLenum dst) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[598]; + mapi_func _func = ((const mapi_func *) _tbl)[599]; ((void (APIENTRY *)(GLuint buf, GLenum src, GLenum dst)) _func)(buf, src, dst); } GLAPI void APIENTRY GLAPI_PREFIX(BindTransformFeedback)(GLenum target, GLuint id) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[599]; + mapi_func _func = ((const mapi_func *) _tbl)[600]; ((void (APIENTRY *)(GLenum target, GLuint id)) _func)(target, id); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteTransformFeedbacks)(GLsizei n, const GLuint *ids) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[600]; + mapi_func _func = ((const mapi_func *) _tbl)[601]; ((void (APIENTRY *)(GLsizei n, const GLuint *ids)) _func)(n, ids); } GLAPI void APIENTRY GLAPI_PREFIX(DrawTransformFeedback)(GLenum mode, GLuint id) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[601]; + mapi_func _func = ((const mapi_func *) _tbl)[602]; ((void (APIENTRY *)(GLenum mode, GLuint id)) _func)(mode, id); } GLAPI void APIENTRY GLAPI_PREFIX(GenTransformFeedbacks)(GLsizei n, GLuint *ids) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[602]; + mapi_func _func = ((const mapi_func *) _tbl)[603]; ((void (APIENTRY *)(GLsizei n, GLuint *ids)) _func)(n, ids); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsTransformFeedback)(GLuint id) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[603]; + mapi_func _func = ((const mapi_func *) _tbl)[604]; return ((GLboolean (APIENTRY *)(GLuint id)) _func)(id); } GLAPI void APIENTRY GLAPI_PREFIX(PauseTransformFeedback)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[604]; + mapi_func _func = ((const mapi_func *) _tbl)[605]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(ResumeTransformFeedback)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[605]; + mapi_func _func = ((const mapi_func *) _tbl)[606]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(ClearDepthf)(GLclampf depth) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[606]; + mapi_func _func = ((const mapi_func *) _tbl)[607]; ((void (APIENTRY *)(GLclampf depth)) _func)(depth); } GLAPI void APIENTRY GLAPI_PREFIX(DepthRangef)(GLclampf zNear, GLclampf zFar) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[607]; + mapi_func _func = ((const mapi_func *) _tbl)[608]; ((void (APIENTRY *)(GLclampf zNear, GLclampf zFar)) _func)(zNear, zFar); } GLAPI void APIENTRY GLAPI_PREFIX(GetShaderPrecisionFormat)(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[608]; + mapi_func _func = ((const mapi_func *) _tbl)[609]; ((void (APIENTRY *)(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision)) _func)(shadertype, precisiontype, range, precision); } GLAPI void APIENTRY GLAPI_PREFIX(ReleaseShaderCompiler)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[609]; + mapi_func _func = ((const mapi_func *) _tbl)[610]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(ShaderBinary)(GLsizei n, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[610]; + mapi_func _func = ((const mapi_func *) _tbl)[611]; ((void (APIENTRY *)(GLsizei n, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length)) _func)(n, shaders, binaryformat, binary, length); } GLAPI void APIENTRY GLAPI_PREFIX(PolygonOffsetEXT)(GLfloat factor, GLfloat bias) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[614]; + mapi_func _func = ((const mapi_func *) _tbl)[615]; ((void (APIENTRY *)(GLfloat factor, GLfloat bias)) _func)(factor, bias); } GLAPI void APIENTRY GLAPI_PREFIX(ColorPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[633]; + mapi_func _func = ((const mapi_func *) _tbl)[634]; ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)) _func)(size, type, stride, count, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(EdgeFlagPointerEXT)(GLsizei stride, GLsizei count, const GLboolean *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[634]; + mapi_func _func = ((const mapi_func *) _tbl)[635]; ((void (APIENTRY *)(GLsizei stride, GLsizei count, const GLboolean *pointer)) _func)(stride, count, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(IndexPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[635]; + mapi_func _func = ((const mapi_func *) _tbl)[636]; ((void (APIENTRY *)(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)) _func)(type, stride, count, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(NormalPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[636]; + mapi_func _func = ((const mapi_func *) _tbl)[637]; ((void (APIENTRY *)(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)) _func)(type, stride, count, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(TexCoordPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[637]; + mapi_func _func = ((const mapi_func *) _tbl)[638]; ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)) _func)(size, type, stride, count, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(VertexPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[638]; + mapi_func _func = ((const mapi_func *) _tbl)[639]; ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)) _func)(size, type, stride, count, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterfEXT)(GLenum pname, GLfloat param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[639]; + mapi_func _func = ((const mapi_func *) _tbl)[640]; ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterf)(GLenum pname, GLfloat param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[639]; + mapi_func _func = ((const mapi_func *) _tbl)[640]; ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterfARB)(GLenum pname, GLfloat param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[639]; + mapi_func _func = ((const mapi_func *) _tbl)[640]; ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterfvEXT)(GLenum pname, const GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[640]; + mapi_func _func = ((const mapi_func *) _tbl)[641]; ((void (APIENTRY *)(GLenum pname, const GLfloat *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterfv)(GLenum pname, const GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[640]; + mapi_func _func = ((const mapi_func *) _tbl)[641]; ((void (APIENTRY *)(GLenum pname, const GLfloat *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterfvARB)(GLenum pname, const GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[640]; + mapi_func _func = ((const mapi_func *) _tbl)[641]; ((void (APIENTRY *)(GLenum pname, const GLfloat *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(LockArraysEXT)(GLint first, GLsizei count) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[641]; + mapi_func _func = ((const mapi_func *) _tbl)[642]; ((void (APIENTRY *)(GLint first, GLsizei count)) _func)(first, count); } GLAPI void APIENTRY GLAPI_PREFIX(UnlockArraysEXT)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[642]; + mapi_func _func = ((const mapi_func *) _tbl)[643]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3bEXT)(GLbyte red, GLbyte green, GLbyte blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[643]; + mapi_func _func = ((const mapi_func *) _tbl)[644]; ((void (APIENTRY *)(GLbyte red, GLbyte green, GLbyte blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3b)(GLbyte red, GLbyte green, GLbyte blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[643]; + mapi_func _func = ((const mapi_func *) _tbl)[644]; ((void (APIENTRY *)(GLbyte red, GLbyte green, GLbyte blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3bvEXT)(const GLbyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[644]; + mapi_func _func = ((const mapi_func *) _tbl)[645]; ((void (APIENTRY *)(const GLbyte *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3bv)(const GLbyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[644]; + mapi_func _func = ((const mapi_func *) _tbl)[645]; ((void (APIENTRY *)(const GLbyte *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3dEXT)(GLdouble red, GLdouble green, GLdouble blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[645]; + mapi_func _func = ((const mapi_func *) _tbl)[646]; ((void (APIENTRY *)(GLdouble red, GLdouble green, GLdouble blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3d)(GLdouble red, GLdouble green, GLdouble blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[645]; + mapi_func _func = ((const mapi_func *) _tbl)[646]; ((void (APIENTRY *)(GLdouble red, GLdouble green, GLdouble blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3dvEXT)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[646]; + mapi_func _func = ((const mapi_func *) _tbl)[647]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3dv)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[646]; + mapi_func _func = ((const mapi_func *) _tbl)[647]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3fEXT)(GLfloat red, GLfloat green, GLfloat blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[647]; + mapi_func _func = ((const mapi_func *) _tbl)[648]; ((void (APIENTRY *)(GLfloat red, GLfloat green, GLfloat blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3f)(GLfloat red, GLfloat green, GLfloat blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[647]; + mapi_func _func = ((const mapi_func *) _tbl)[648]; ((void (APIENTRY *)(GLfloat red, GLfloat green, GLfloat blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3fvEXT)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[648]; + mapi_func _func = ((const mapi_func *) _tbl)[649]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3fv)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[648]; + mapi_func _func = ((const mapi_func *) _tbl)[649]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3iEXT)(GLint red, GLint green, GLint blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[649]; + mapi_func _func = ((const mapi_func *) _tbl)[650]; ((void (APIENTRY *)(GLint red, GLint green, GLint blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3i)(GLint red, GLint green, GLint blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[649]; + mapi_func _func = ((const mapi_func *) _tbl)[650]; ((void (APIENTRY *)(GLint red, GLint green, GLint blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3ivEXT)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[650]; + mapi_func _func = ((const mapi_func *) _tbl)[651]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3iv)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[650]; + mapi_func _func = ((const mapi_func *) _tbl)[651]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3sEXT)(GLshort red, GLshort green, GLshort blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[651]; + mapi_func _func = ((const mapi_func *) _tbl)[652]; ((void (APIENTRY *)(GLshort red, GLshort green, GLshort blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3s)(GLshort red, GLshort green, GLshort blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[651]; + mapi_func _func = ((const mapi_func *) _tbl)[652]; ((void (APIENTRY *)(GLshort red, GLshort green, GLshort blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3svEXT)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[652]; + mapi_func _func = ((const mapi_func *) _tbl)[653]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3sv)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[652]; + mapi_func _func = ((const mapi_func *) _tbl)[653]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3ubEXT)(GLubyte red, GLubyte green, GLubyte blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[653]; + mapi_func _func = ((const mapi_func *) _tbl)[654]; ((void (APIENTRY *)(GLubyte red, GLubyte green, GLubyte blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3ub)(GLubyte red, GLubyte green, GLubyte blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[653]; + mapi_func _func = ((const mapi_func *) _tbl)[654]; ((void (APIENTRY *)(GLubyte red, GLubyte green, GLubyte blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3ubvEXT)(const GLubyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[654]; + mapi_func _func = ((const mapi_func *) _tbl)[655]; ((void (APIENTRY *)(const GLubyte *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3ubv)(const GLubyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[654]; + mapi_func _func = ((const mapi_func *) _tbl)[655]; ((void (APIENTRY *)(const GLubyte *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3uiEXT)(GLuint red, GLuint green, GLuint blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[655]; + mapi_func _func = ((const mapi_func *) _tbl)[656]; ((void (APIENTRY *)(GLuint red, GLuint green, GLuint blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3ui)(GLuint red, GLuint green, GLuint blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[655]; + mapi_func _func = ((const mapi_func *) _tbl)[656]; ((void (APIENTRY *)(GLuint red, GLuint green, GLuint blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3uivEXT)(const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[656]; + mapi_func _func = ((const mapi_func *) _tbl)[657]; ((void (APIENTRY *)(const GLuint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3uiv)(const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[656]; + mapi_func _func = ((const mapi_func *) _tbl)[657]; ((void (APIENTRY *)(const GLuint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3usEXT)(GLushort red, GLushort green, GLushort blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[657]; + mapi_func _func = ((const mapi_func *) _tbl)[658]; ((void (APIENTRY *)(GLushort red, GLushort green, GLushort blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3us)(GLushort red, GLushort green, GLushort blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[657]; + mapi_func _func = ((const mapi_func *) _tbl)[658]; ((void (APIENTRY *)(GLushort red, GLushort green, GLushort blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3usvEXT)(const GLushort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[658]; + mapi_func _func = ((const mapi_func *) _tbl)[659]; ((void (APIENTRY *)(const GLushort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3usv)(const GLushort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[658]; + mapi_func _func = ((const mapi_func *) _tbl)[659]; ((void (APIENTRY *)(const GLushort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColorPointerEXT)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[659]; + mapi_func _func = ((const mapi_func *) _tbl)[660]; ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(size, type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColorPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[659]; + mapi_func _func = ((const mapi_func *) _tbl)[660]; ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(size, type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(MultiDrawArraysEXT)(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[660]; + mapi_func _func = ((const mapi_func *) _tbl)[661]; ((void (APIENTRY *)(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount)) _func)(mode, first, count, primcount); } GLAPI void APIENTRY GLAPI_PREFIX(MultiDrawArrays)(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[660]; + mapi_func _func = ((const mapi_func *) _tbl)[661]; ((void (APIENTRY *)(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount)) _func)(mode, first, count, primcount); } GLAPI void APIENTRY GLAPI_PREFIX(MultiDrawElementsEXT)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[661]; + mapi_func _func = ((const mapi_func *) _tbl)[662]; ((void (APIENTRY *)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount)) _func)(mode, count, type, indices, primcount); } GLAPI void APIENTRY GLAPI_PREFIX(MultiDrawElements)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[661]; + mapi_func _func = ((const mapi_func *) _tbl)[662]; ((void (APIENTRY *)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount)) _func)(mode, count, type, indices, primcount); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordPointerEXT)(GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[662]; + mapi_func _func = ((const mapi_func *) _tbl)[663]; ((void (APIENTRY *)(GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordPointer)(GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[662]; + mapi_func _func = ((const mapi_func *) _tbl)[663]; ((void (APIENTRY *)(GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoorddEXT)(GLdouble coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[663]; + mapi_func _func = ((const mapi_func *) _tbl)[664]; ((void (APIENTRY *)(GLdouble coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordd)(GLdouble coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[663]; + mapi_func _func = ((const mapi_func *) _tbl)[664]; ((void (APIENTRY *)(GLdouble coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoorddvEXT)(const GLdouble *coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[664]; + mapi_func _func = ((const mapi_func *) _tbl)[665]; ((void (APIENTRY *)(const GLdouble *coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoorddv)(const GLdouble *coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[664]; + mapi_func _func = ((const mapi_func *) _tbl)[665]; ((void (APIENTRY *)(const GLdouble *coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordfEXT)(GLfloat coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[665]; + mapi_func _func = ((const mapi_func *) _tbl)[666]; ((void (APIENTRY *)(GLfloat coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordf)(GLfloat coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[665]; + mapi_func _func = ((const mapi_func *) _tbl)[666]; ((void (APIENTRY *)(GLfloat coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordfvEXT)(const GLfloat *coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[666]; + mapi_func _func = ((const mapi_func *) _tbl)[667]; ((void (APIENTRY *)(const GLfloat *coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordfv)(const GLfloat *coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[666]; + mapi_func _func = ((const mapi_func *) _tbl)[667]; ((void (APIENTRY *)(const GLfloat *coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncSeparateEXT)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[668]; + mapi_func _func = ((const mapi_func *) _tbl)[669]; ((void (APIENTRY *)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)) _func)(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha); } GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncSeparate)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[668]; + mapi_func _func = ((const mapi_func *) _tbl)[669]; ((void (APIENTRY *)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)) _func)(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha); } GLAPI void APIENTRY GLAPI_PREFIX(FlushVertexArrayRangeNV)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[669]; + mapi_func _func = ((const mapi_func *) _tbl)[670]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(VertexArrayRangeNV)(GLsizei length, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[670]; + mapi_func _func = ((const mapi_func *) _tbl)[671]; ((void (APIENTRY *)(GLsizei length, const GLvoid *pointer)) _func)(length, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(CombinerInputNV)(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[671]; + mapi_func _func = ((const mapi_func *) _tbl)[672]; ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage)) _func)(stage, portion, variable, input, mapping, componentUsage); } GLAPI void APIENTRY GLAPI_PREFIX(CombinerOutputNV)(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[672]; + mapi_func _func = ((const mapi_func *) _tbl)[673]; ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum)) _func)(stage, portion, abOutput, cdOutput, sumOutput, scale, bias, abDotProduct, cdDotProduct, muxSum); } GLAPI void APIENTRY GLAPI_PREFIX(CombinerParameterfNV)(GLenum pname, GLfloat param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[673]; + mapi_func _func = ((const mapi_func *) _tbl)[674]; ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(CombinerParameterfvNV)(GLenum pname, const GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[674]; + mapi_func _func = ((const mapi_func *) _tbl)[675]; ((void (APIENTRY *)(GLenum pname, const GLfloat *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(CombinerParameteriNV)(GLenum pname, GLint param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[675]; + mapi_func _func = ((const mapi_func *) _tbl)[676]; ((void (APIENTRY *)(GLenum pname, GLint param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(CombinerParameterivNV)(GLenum pname, const GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[676]; + mapi_func _func = ((const mapi_func *) _tbl)[677]; ((void (APIENTRY *)(GLenum pname, const GLint *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(FinalCombinerInputNV)(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[677]; + mapi_func _func = ((const mapi_func *) _tbl)[678]; ((void (APIENTRY *)(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage)) _func)(variable, input, mapping, componentUsage); } GLAPI void APIENTRY GLAPI_PREFIX(GetCombinerInputParameterfvNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[678]; + mapi_func _func = ((const mapi_func *) _tbl)[679]; ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat *params)) _func)(stage, portion, variable, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetCombinerInputParameterivNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[679]; + mapi_func _func = ((const mapi_func *) _tbl)[680]; ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint *params)) _func)(stage, portion, variable, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetCombinerOutputParameterfvNV)(GLenum stage, GLenum portion, GLenum pname, GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[680]; + mapi_func _func = ((const mapi_func *) _tbl)[681]; ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum pname, GLfloat *params)) _func)(stage, portion, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetCombinerOutputParameterivNV)(GLenum stage, GLenum portion, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[681]; + mapi_func _func = ((const mapi_func *) _tbl)[682]; ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum pname, GLint *params)) _func)(stage, portion, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetFinalCombinerInputParameterfvNV)(GLenum variable, GLenum pname, GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[682]; + mapi_func _func = ((const mapi_func *) _tbl)[683]; ((void (APIENTRY *)(GLenum variable, GLenum pname, GLfloat *params)) _func)(variable, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetFinalCombinerInputParameterivNV)(GLenum variable, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[683]; + mapi_func _func = ((const mapi_func *) _tbl)[684]; ((void (APIENTRY *)(GLenum variable, GLenum pname, GLint *params)) _func)(variable, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(ResizeBuffersMESA)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[684]; + mapi_func _func = ((const mapi_func *) _tbl)[685]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2dMESA)(GLdouble x, GLdouble y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[685]; + mapi_func _func = ((const mapi_func *) _tbl)[686]; ((void (APIENTRY *)(GLdouble x, GLdouble y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2d)(GLdouble x, GLdouble y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[685]; + mapi_func _func = ((const mapi_func *) _tbl)[686]; ((void (APIENTRY *)(GLdouble x, GLdouble y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2dARB)(GLdouble x, GLdouble y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[685]; + mapi_func _func = ((const mapi_func *) _tbl)[686]; ((void (APIENTRY *)(GLdouble x, GLdouble y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2dvMESA)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[686]; + mapi_func _func = ((const mapi_func *) _tbl)[687]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2dv)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[686]; + mapi_func _func = ((const mapi_func *) _tbl)[687]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2dvARB)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[686]; + mapi_func _func = ((const mapi_func *) _tbl)[687]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2fMESA)(GLfloat x, GLfloat y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[687]; + mapi_func _func = ((const mapi_func *) _tbl)[688]; ((void (APIENTRY *)(GLfloat x, GLfloat y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2f)(GLfloat x, GLfloat y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[687]; + mapi_func _func = ((const mapi_func *) _tbl)[688]; ((void (APIENTRY *)(GLfloat x, GLfloat y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2fARB)(GLfloat x, GLfloat y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[687]; + mapi_func _func = ((const mapi_func *) _tbl)[688]; ((void (APIENTRY *)(GLfloat x, GLfloat y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2fvMESA)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[688]; + mapi_func _func = ((const mapi_func *) _tbl)[689]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2fv)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[688]; + mapi_func _func = ((const mapi_func *) _tbl)[689]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2fvARB)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[688]; + mapi_func _func = ((const mapi_func *) _tbl)[689]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2iMESA)(GLint x, GLint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[689]; + mapi_func _func = ((const mapi_func *) _tbl)[690]; ((void (APIENTRY *)(GLint x, GLint y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2i)(GLint x, GLint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[689]; + mapi_func _func = ((const mapi_func *) _tbl)[690]; ((void (APIENTRY *)(GLint x, GLint y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2iARB)(GLint x, GLint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[689]; + mapi_func _func = ((const mapi_func *) _tbl)[690]; ((void (APIENTRY *)(GLint x, GLint y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2ivMESA)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[690]; + mapi_func _func = ((const mapi_func *) _tbl)[691]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2iv)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[690]; + mapi_func _func = ((const mapi_func *) _tbl)[691]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2ivARB)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[690]; + mapi_func _func = ((const mapi_func *) _tbl)[691]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2sMESA)(GLshort x, GLshort y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[691]; + mapi_func _func = ((const mapi_func *) _tbl)[692]; ((void (APIENTRY *)(GLshort x, GLshort y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2s)(GLshort x, GLshort y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[691]; + mapi_func _func = ((const mapi_func *) _tbl)[692]; ((void (APIENTRY *)(GLshort x, GLshort y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2sARB)(GLshort x, GLshort y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[691]; + mapi_func _func = ((const mapi_func *) _tbl)[692]; ((void (APIENTRY *)(GLshort x, GLshort y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2svMESA)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[692]; + mapi_func _func = ((const mapi_func *) _tbl)[693]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2sv)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[692]; + mapi_func _func = ((const mapi_func *) _tbl)[693]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2svARB)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[692]; + mapi_func _func = ((const mapi_func *) _tbl)[693]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3dMESA)(GLdouble x, GLdouble y, GLdouble z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[693]; + mapi_func _func = ((const mapi_func *) _tbl)[694]; ((void (APIENTRY *)(GLdouble x, GLdouble y, GLdouble z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3d)(GLdouble x, GLdouble y, GLdouble z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[693]; + mapi_func _func = ((const mapi_func *) _tbl)[694]; ((void (APIENTRY *)(GLdouble x, GLdouble y, GLdouble z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3dARB)(GLdouble x, GLdouble y, GLdouble z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[693]; + mapi_func _func = ((const mapi_func *) _tbl)[694]; ((void (APIENTRY *)(GLdouble x, GLdouble y, GLdouble z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3dvMESA)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[694]; + mapi_func _func = ((const mapi_func *) _tbl)[695]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3dv)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[694]; + mapi_func _func = ((const mapi_func *) _tbl)[695]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3dvARB)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[694]; + mapi_func _func = ((const mapi_func *) _tbl)[695]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3fMESA)(GLfloat x, GLfloat y, GLfloat z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[695]; + mapi_func _func = ((const mapi_func *) _tbl)[696]; ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3f)(GLfloat x, GLfloat y, GLfloat z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[695]; + mapi_func _func = ((const mapi_func *) _tbl)[696]; ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3fARB)(GLfloat x, GLfloat y, GLfloat z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[695]; + mapi_func _func = ((const mapi_func *) _tbl)[696]; ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3fvMESA)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[696]; + mapi_func _func = ((const mapi_func *) _tbl)[697]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3fv)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[696]; + mapi_func _func = ((const mapi_func *) _tbl)[697]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3fvARB)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[696]; + mapi_func _func = ((const mapi_func *) _tbl)[697]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3iMESA)(GLint x, GLint y, GLint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[697]; + mapi_func _func = ((const mapi_func *) _tbl)[698]; ((void (APIENTRY *)(GLint x, GLint y, GLint z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3i)(GLint x, GLint y, GLint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[697]; + mapi_func _func = ((const mapi_func *) _tbl)[698]; ((void (APIENTRY *)(GLint x, GLint y, GLint z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3iARB)(GLint x, GLint y, GLint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[697]; + mapi_func _func = ((const mapi_func *) _tbl)[698]; ((void (APIENTRY *)(GLint x, GLint y, GLint z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3ivMESA)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[698]; + mapi_func _func = ((const mapi_func *) _tbl)[699]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3iv)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[698]; + mapi_func _func = ((const mapi_func *) _tbl)[699]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3ivARB)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[698]; + mapi_func _func = ((const mapi_func *) _tbl)[699]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3sMESA)(GLshort x, GLshort y, GLshort z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[699]; + mapi_func _func = ((const mapi_func *) _tbl)[700]; ((void (APIENTRY *)(GLshort x, GLshort y, GLshort z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3s)(GLshort x, GLshort y, GLshort z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[699]; + mapi_func _func = ((const mapi_func *) _tbl)[700]; ((void (APIENTRY *)(GLshort x, GLshort y, GLshort z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3sARB)(GLshort x, GLshort y, GLshort z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[699]; + mapi_func _func = ((const mapi_func *) _tbl)[700]; ((void (APIENTRY *)(GLshort x, GLshort y, GLshort z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3svMESA)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[700]; + mapi_func _func = ((const mapi_func *) _tbl)[701]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3sv)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[700]; + mapi_func _func = ((const mapi_func *) _tbl)[701]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3svARB)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[700]; + mapi_func _func = ((const mapi_func *) _tbl)[701]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4dMESA)(GLdouble x, GLdouble y, GLdouble z, GLdouble w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[701]; + mapi_func _func = ((const mapi_func *) _tbl)[702]; ((void (APIENTRY *)(GLdouble x, GLdouble y, GLdouble z, GLdouble w)) _func)(x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4dvMESA)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[702]; + mapi_func _func = ((const mapi_func *) _tbl)[703]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4fMESA)(GLfloat x, GLfloat y, GLfloat z, GLfloat w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[703]; + mapi_func _func = ((const mapi_func *) _tbl)[704]; ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z, GLfloat w)) _func)(x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4fvMESA)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[704]; + mapi_func _func = ((const mapi_func *) _tbl)[705]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4iMESA)(GLint x, GLint y, GLint z, GLint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[705]; + mapi_func _func = ((const mapi_func *) _tbl)[706]; ((void (APIENTRY *)(GLint x, GLint y, GLint z, GLint w)) _func)(x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4ivMESA)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[706]; + mapi_func _func = ((const mapi_func *) _tbl)[707]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4sMESA)(GLshort x, GLshort y, GLshort z, GLshort w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[707]; + mapi_func _func = ((const mapi_func *) _tbl)[708]; ((void (APIENTRY *)(GLshort x, GLshort y, GLshort z, GLshort w)) _func)(x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4svMESA)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[708]; + mapi_func _func = ((const mapi_func *) _tbl)[709]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(AreProgramsResidentNV)(GLsizei n, const GLuint *ids, GLboolean *residences) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[718]; + mapi_func _func = ((const mapi_func *) _tbl)[719]; return ((GLboolean (APIENTRY *)(GLsizei n, const GLuint *ids, GLboolean *residences)) _func)(n, ids, residences); } GLAPI void APIENTRY GLAPI_PREFIX(BindProgramNV)(GLenum target, GLuint program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[719]; + mapi_func _func = ((const mapi_func *) _tbl)[720]; ((void (APIENTRY *)(GLenum target, GLuint program)) _func)(target, program); } GLAPI void APIENTRY GLAPI_PREFIX(BindProgramARB)(GLenum target, GLuint program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[719]; + mapi_func _func = ((const mapi_func *) _tbl)[720]; ((void (APIENTRY *)(GLenum target, GLuint program)) _func)(target, program); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteProgramsNV)(GLsizei n, const GLuint *programs) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[720]; + mapi_func _func = ((const mapi_func *) _tbl)[721]; ((void (APIENTRY *)(GLsizei n, const GLuint *programs)) _func)(n, programs); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteProgramsARB)(GLsizei n, const GLuint *programs) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[720]; + mapi_func _func = ((const mapi_func *) _tbl)[721]; ((void (APIENTRY *)(GLsizei n, const GLuint *programs)) _func)(n, programs); } GLAPI void APIENTRY GLAPI_PREFIX(ExecuteProgramNV)(GLenum target, GLuint id, const GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[721]; + mapi_func _func = ((const mapi_func *) _tbl)[722]; ((void (APIENTRY *)(GLenum target, GLuint id, const GLfloat *params)) _func)(target, id, params); } GLAPI void APIENTRY GLAPI_PREFIX(GenProgramsNV)(GLsizei n, GLuint *programs) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[722]; + mapi_func _func = ((const mapi_func *) _tbl)[723]; ((void (APIENTRY *)(GLsizei n, GLuint *programs)) _func)(n, programs); } GLAPI void APIENTRY GLAPI_PREFIX(GenProgramsARB)(GLsizei n, GLuint *programs) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[722]; + mapi_func _func = ((const mapi_func *) _tbl)[723]; ((void (APIENTRY *)(GLsizei n, GLuint *programs)) _func)(n, programs); } GLAPI void APIENTRY GLAPI_PREFIX(GetProgramParameterdvNV)(GLenum target, GLuint index, GLenum pname, GLdouble *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[723]; + mapi_func _func = ((const mapi_func *) _tbl)[724]; ((void (APIENTRY *)(GLenum target, GLuint index, GLenum pname, GLdouble *params)) _func)(target, index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetProgramParameterfvNV)(GLenum target, GLuint index, GLenum pname, GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[724]; + mapi_func _func = ((const mapi_func *) _tbl)[725]; ((void (APIENTRY *)(GLenum target, GLuint index, GLenum pname, GLfloat *params)) _func)(target, index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetProgramStringNV)(GLuint id, GLenum pname, GLubyte *program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[725]; + mapi_func _func = ((const mapi_func *) _tbl)[726]; ((void (APIENTRY *)(GLuint id, GLenum pname, GLubyte *program)) _func)(id, pname, program); } GLAPI void APIENTRY GLAPI_PREFIX(GetProgramivNV)(GLuint id, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[726]; + mapi_func _func = ((const mapi_func *) _tbl)[727]; ((void (APIENTRY *)(GLuint id, GLenum pname, GLint *params)) _func)(id, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetTrackMatrixivNV)(GLenum target, GLuint address, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[727]; + mapi_func _func = ((const mapi_func *) _tbl)[728]; ((void (APIENTRY *)(GLenum target, GLuint address, GLenum pname, GLint *params)) _func)(target, address, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribPointervNV)(GLuint index, GLenum pname, GLvoid **pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[728]; + mapi_func _func = ((const mapi_func *) _tbl)[729]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLvoid **pointer)) _func)(index, pname, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribPointerv)(GLuint index, GLenum pname, GLvoid **pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[728]; + mapi_func _func = ((const mapi_func *) _tbl)[729]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLvoid **pointer)) _func)(index, pname, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribPointervARB)(GLuint index, GLenum pname, GLvoid **pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[728]; + mapi_func _func = ((const mapi_func *) _tbl)[729]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLvoid **pointer)) _func)(index, pname, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribdvNV)(GLuint index, GLenum pname, GLdouble *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[729]; + mapi_func _func = ((const mapi_func *) _tbl)[730]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLdouble *params)) _func)(index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribfvNV)(GLuint index, GLenum pname, GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[730]; + mapi_func _func = ((const mapi_func *) _tbl)[731]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLfloat *params)) _func)(index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribivNV)(GLuint index, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[731]; + mapi_func _func = ((const mapi_func *) _tbl)[732]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLint *params)) _func)(index, pname, params); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsProgramNV)(GLuint program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[732]; + mapi_func _func = ((const mapi_func *) _tbl)[733]; return ((GLboolean (APIENTRY *)(GLuint program)) _func)(program); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsProgramARB)(GLuint program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[732]; + mapi_func _func = ((const mapi_func *) _tbl)[733]; return ((GLboolean (APIENTRY *)(GLuint program)) _func)(program); } GLAPI void APIENTRY GLAPI_PREFIX(LoadProgramNV)(GLenum target, GLuint id, GLsizei len, const GLubyte *program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[733]; + mapi_func _func = ((const mapi_func *) _tbl)[734]; ((void (APIENTRY *)(GLenum target, GLuint id, GLsizei len, const GLubyte *program)) _func)(target, id, len, program); } GLAPI void APIENTRY GLAPI_PREFIX(ProgramParameters4dvNV)(GLenum target, GLuint index, GLsizei num, const GLdouble *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[734]; + mapi_func _func = ((const mapi_func *) _tbl)[735]; ((void (APIENTRY *)(GLenum target, GLuint index, GLsizei num, const GLdouble *params)) _func)(target, index, num, params); } GLAPI void APIENTRY GLAPI_PREFIX(ProgramParameters4fvNV)(GLenum target, GLuint index, GLsizei num, const GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[735]; + mapi_func _func = ((const mapi_func *) _tbl)[736]; ((void (APIENTRY *)(GLenum target, GLuint index, GLsizei num, const GLfloat *params)) _func)(target, index, num, params); } GLAPI void APIENTRY GLAPI_PREFIX(RequestResidentProgramsNV)(GLsizei n, const GLuint *ids) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[736]; + mapi_func _func = ((const mapi_func *) _tbl)[737]; ((void (APIENTRY *)(GLsizei n, const GLuint *ids)) _func)(n, ids); } GLAPI void APIENTRY GLAPI_PREFIX(TrackMatrixNV)(GLenum target, GLuint address, GLenum matrix, GLenum transform) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[737]; + mapi_func _func = ((const mapi_func *) _tbl)[738]; ((void (APIENTRY *)(GLenum target, GLuint address, GLenum matrix, GLenum transform)) _func)(target, address, matrix, transform); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib1dNV)(GLuint index, GLdouble x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[738]; + mapi_func _func = ((const mapi_func *) _tbl)[739]; ((void (APIENTRY *)(GLuint index, GLdouble x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib1dvNV)(GLuint index, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[739]; + mapi_func _func = ((const mapi_func *) _tbl)[740]; ((void (APIENTRY *)(GLuint index, const GLdouble *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib1fNV)(GLuint index, GLfloat x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[740]; + mapi_func _func = ((const mapi_func *) _tbl)[741]; ((void (APIENTRY *)(GLuint index, GLfloat x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib1fvNV)(GLuint index, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[741]; + mapi_func _func = ((const mapi_func *) _tbl)[742]; ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib1sNV)(GLuint index, GLshort x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[742]; + mapi_func _func = ((const mapi_func *) _tbl)[743]; ((void (APIENTRY *)(GLuint index, GLshort x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib1svNV)(GLuint index, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[743]; + mapi_func _func = ((const mapi_func *) _tbl)[744]; ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib2dNV)(GLuint index, GLdouble x, GLdouble y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[744]; + mapi_func _func = ((const mapi_func *) _tbl)[745]; ((void (APIENTRY *)(GLuint index, GLdouble x, GLdouble y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib2dvNV)(GLuint index, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[745]; + mapi_func _func = ((const mapi_func *) _tbl)[746]; ((void (APIENTRY *)(GLuint index, const GLdouble *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib2fNV)(GLuint index, GLfloat x, GLfloat y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[746]; + mapi_func _func = ((const mapi_func *) _tbl)[747]; ((void (APIENTRY *)(GLuint index, GLfloat x, GLfloat y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib2fvNV)(GLuint index, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[747]; + mapi_func _func = ((const mapi_func *) _tbl)[748]; ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib2sNV)(GLuint index, GLshort x, GLshort y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[748]; + mapi_func _func = ((const mapi_func *) _tbl)[749]; ((void (APIENTRY *)(GLuint index, GLshort x, GLshort y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib2svNV)(GLuint index, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[749]; + mapi_func _func = ((const mapi_func *) _tbl)[750]; ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib3dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[750]; + mapi_func _func = ((const mapi_func *) _tbl)[751]; ((void (APIENTRY *)(GLuint index, GLdouble x, GLdouble y, GLdouble z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib3dvNV)(GLuint index, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[751]; + mapi_func _func = ((const mapi_func *) _tbl)[752]; ((void (APIENTRY *)(GLuint index, const GLdouble *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib3fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[752]; + mapi_func _func = ((const mapi_func *) _tbl)[753]; ((void (APIENTRY *)(GLuint index, GLfloat x, GLfloat y, GLfloat z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib3fvNV)(GLuint index, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[753]; + mapi_func _func = ((const mapi_func *) _tbl)[754]; ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib3sNV)(GLuint index, GLshort x, GLshort y, GLshort z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[754]; + mapi_func _func = ((const mapi_func *) _tbl)[755]; ((void (APIENTRY *)(GLuint index, GLshort x, GLshort y, GLshort z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib3svNV)(GLuint index, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[755]; + mapi_func _func = ((const mapi_func *) _tbl)[756]; ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[756]; + mapi_func _func = ((const mapi_func *) _tbl)[757]; ((void (APIENTRY *)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4dvNV)(GLuint index, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[757]; + mapi_func _func = ((const mapi_func *) _tbl)[758]; ((void (APIENTRY *)(GLuint index, const GLdouble *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[758]; + mapi_func _func = ((const mapi_func *) _tbl)[759]; ((void (APIENTRY *)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4fvNV)(GLuint index, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[759]; + mapi_func _func = ((const mapi_func *) _tbl)[760]; ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4sNV)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[760]; + mapi_func _func = ((const mapi_func *) _tbl)[761]; ((void (APIENTRY *)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4svNV)(GLuint index, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[761]; + mapi_func _func = ((const mapi_func *) _tbl)[762]; ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4ubNV)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[762]; + mapi_func _func = ((const mapi_func *) _tbl)[763]; ((void (APIENTRY *)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4ubvNV)(GLuint index, const GLubyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[763]; + mapi_func _func = ((const mapi_func *) _tbl)[764]; ((void (APIENTRY *)(GLuint index, const GLubyte *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribPointerNV)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[764]; + mapi_func _func = ((const mapi_func *) _tbl)[765]; ((void (APIENTRY *)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(index, size, type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs1dvNV)(GLuint index, GLsizei n, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[765]; + mapi_func _func = ((const mapi_func *) _tbl)[766]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLdouble *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs1fvNV)(GLuint index, GLsizei n, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[766]; + mapi_func _func = ((const mapi_func *) _tbl)[767]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLfloat *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs1svNV)(GLuint index, GLsizei n, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[767]; + mapi_func _func = ((const mapi_func *) _tbl)[768]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLshort *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs2dvNV)(GLuint index, GLsizei n, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[768]; + mapi_func _func = ((const mapi_func *) _tbl)[769]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLdouble *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs2fvNV)(GLuint index, GLsizei n, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[769]; + mapi_func _func = ((const mapi_func *) _tbl)[770]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLfloat *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs2svNV)(GLuint index, GLsizei n, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[770]; + mapi_func _func = ((const mapi_func *) _tbl)[771]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLshort *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs3dvNV)(GLuint index, GLsizei n, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[771]; + mapi_func _func = ((const mapi_func *) _tbl)[772]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLdouble *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs3fvNV)(GLuint index, GLsizei n, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[772]; + mapi_func _func = ((const mapi_func *) _tbl)[773]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLfloat *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs3svNV)(GLuint index, GLsizei n, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[773]; + mapi_func _func = ((const mapi_func *) _tbl)[774]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLshort *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs4dvNV)(GLuint index, GLsizei n, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[774]; + mapi_func _func = ((const mapi_func *) _tbl)[775]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLdouble *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs4fvNV)(GLuint index, GLsizei n, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[775]; + mapi_func _func = ((const mapi_func *) _tbl)[776]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLfloat *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs4svNV)(GLuint index, GLsizei n, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[776]; + mapi_func _func = ((const mapi_func *) _tbl)[777]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLshort *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs4ubvNV)(GLuint index, GLsizei n, const GLubyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[777]; + mapi_func _func = ((const mapi_func *) _tbl)[778]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLubyte *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(GetTexBumpParameterfvATI)(GLenum pname, GLfloat *param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[778]; + mapi_func _func = ((const mapi_func *) _tbl)[779]; ((void (APIENTRY *)(GLenum pname, GLfloat *param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(GetTexBumpParameterivATI)(GLenum pname, GLint *param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[779]; + mapi_func _func = ((const mapi_func *) _tbl)[780]; ((void (APIENTRY *)(GLenum pname, GLint *param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(TexBumpParameterfvATI)(GLenum pname, const GLfloat *param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[780]; + mapi_func _func = ((const mapi_func *) _tbl)[781]; ((void (APIENTRY *)(GLenum pname, const GLfloat *param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(TexBumpParameterivATI)(GLenum pname, const GLint *param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[781]; + mapi_func _func = ((const mapi_func *) _tbl)[782]; ((void (APIENTRY *)(GLenum pname, const GLint *param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(AlphaFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[782]; + mapi_func _func = ((const mapi_func *) _tbl)[783]; ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod)) _func)(op, dst, dstMod, arg1, arg1Rep, arg1Mod); } GLAPI void APIENTRY GLAPI_PREFIX(AlphaFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[783]; + mapi_func _func = ((const mapi_func *) _tbl)[784]; ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod)) _func)(op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod); } GLAPI void APIENTRY GLAPI_PREFIX(AlphaFragmentOp3ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[784]; + mapi_func _func = ((const mapi_func *) _tbl)[785]; ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod)) _func)(op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod); } GLAPI void APIENTRY GLAPI_PREFIX(BeginFragmentShaderATI)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[785]; + mapi_func _func = ((const mapi_func *) _tbl)[786]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(BindFragmentShaderATI)(GLuint id) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[786]; + mapi_func _func = ((const mapi_func *) _tbl)[787]; ((void (APIENTRY *)(GLuint id)) _func)(id); } GLAPI void APIENTRY GLAPI_PREFIX(ColorFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[787]; + mapi_func _func = ((const mapi_func *) _tbl)[788]; ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod)) _func)(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod); } GLAPI void APIENTRY GLAPI_PREFIX(ColorFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[788]; + mapi_func _func = ((const mapi_func *) _tbl)[789]; ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod)) _func)(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod); } GLAPI void APIENTRY GLAPI_PREFIX(ColorFragmentOp3ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[789]; + mapi_func _func = ((const mapi_func *) _tbl)[790]; ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod)) _func)(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteFragmentShaderATI)(GLuint id) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[790]; + mapi_func _func = ((const mapi_func *) _tbl)[791]; ((void (APIENTRY *)(GLuint id)) _func)(id); } GLAPI void APIENTRY GLAPI_PREFIX(EndFragmentShaderATI)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[791]; + mapi_func _func = ((const mapi_func *) _tbl)[792]; ((void (APIENTRY *)(void)) _func)(); } GLAPI GLuint APIENTRY GLAPI_PREFIX(GenFragmentShadersATI)(GLuint range) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[792]; + mapi_func _func = ((const mapi_func *) _tbl)[793]; return ((GLuint (APIENTRY *)(GLuint range)) _func)(range); } GLAPI void APIENTRY GLAPI_PREFIX(PassTexCoordATI)(GLuint dst, GLuint coord, GLenum swizzle) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[793]; + mapi_func _func = ((const mapi_func *) _tbl)[794]; ((void (APIENTRY *)(GLuint dst, GLuint coord, GLenum swizzle)) _func)(dst, coord, swizzle); } GLAPI void APIENTRY GLAPI_PREFIX(SampleMapATI)(GLuint dst, GLuint interp, GLenum swizzle) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[794]; + mapi_func _func = ((const mapi_func *) _tbl)[795]; ((void (APIENTRY *)(GLuint dst, GLuint interp, GLenum swizzle)) _func)(dst, interp, swizzle); } GLAPI void APIENTRY GLAPI_PREFIX(SetFragmentShaderConstantATI)(GLuint dst, const GLfloat *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[795]; + mapi_func _func = ((const mapi_func *) _tbl)[796]; ((void (APIENTRY *)(GLuint dst, const GLfloat *value)) _func)(dst, value); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameteriNV)(GLenum pname, GLint param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[796]; + mapi_func _func = ((const mapi_func *) _tbl)[797]; ((void (APIENTRY *)(GLenum pname, GLint param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameteri)(GLenum pname, GLint param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[796]; + mapi_func _func = ((const mapi_func *) _tbl)[797]; ((void (APIENTRY *)(GLenum pname, GLint param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterivNV)(GLenum pname, const GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[797]; + mapi_func _func = ((const mapi_func *) _tbl)[798]; ((void (APIENTRY *)(GLenum pname, const GLint *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameteriv)(GLenum pname, const GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[797]; + mapi_func _func = ((const mapi_func *) _tbl)[798]; ((void (APIENTRY *)(GLenum pname, const GLint *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteVertexArrays)(GLsizei n, const GLuint *arrays) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[800]; + mapi_func _func = ((const mapi_func *) _tbl)[801]; ((void (APIENTRY *)(GLsizei n, const GLuint *arrays)) _func)(n, arrays); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsVertexArray)(GLuint array) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[802]; + mapi_func _func = ((const mapi_func *) _tbl)[803]; return ((GLboolean (APIENTRY *)(GLuint array)) _func)(array); } GLAPI void APIENTRY GLAPI_PREFIX(GetProgramNamedParameterdvNV)(GLuint id, GLsizei len, const GLubyte *name, GLdouble *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[803]; + mapi_func _func = ((const mapi_func *) _tbl)[804]; ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, GLdouble *params)) _func)(id, len, name, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetProgramNamedParameterfvNV)(GLuint id, GLsizei len, const GLubyte *name, GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[804]; + mapi_func _func = ((const mapi_func *) _tbl)[805]; ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, GLfloat *params)) _func)(id, len, name, params); } GLAPI void APIENTRY GLAPI_PREFIX(ProgramNamedParameter4dNV)(GLuint id, GLsizei len, const GLubyte *name, GLdouble x, GLdouble y, GLdouble z, GLdouble w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[805]; + mapi_func _func = ((const mapi_func *) _tbl)[806]; ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, GLdouble x, GLdouble y, GLdouble z, GLdouble w)) _func)(id, len, name, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(ProgramNamedParameter4dvNV)(GLuint id, GLsizei len, const GLubyte *name, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[806]; + mapi_func _func = ((const mapi_func *) _tbl)[807]; ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, const GLdouble *v)) _func)(id, len, name, v); } GLAPI void APIENTRY GLAPI_PREFIX(ProgramNamedParameter4fNV)(GLuint id, GLsizei len, const GLubyte *name, GLfloat x, GLfloat y, GLfloat z, GLfloat w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[807]; + mapi_func _func = ((const mapi_func *) _tbl)[808]; ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, GLfloat x, GLfloat y, GLfloat z, GLfloat w)) _func)(id, len, name, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(ProgramNamedParameter4fvNV)(GLuint id, GLsizei len, const GLubyte *name, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[808]; + mapi_func _func = ((const mapi_func *) _tbl)[809]; ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, const GLfloat *v)) _func)(id, len, name, v); } GLAPI void APIENTRY GLAPI_PREFIX(PrimitiveRestartIndexNV)(GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[809]; + mapi_func _func = ((const mapi_func *) _tbl)[810]; ((void (APIENTRY *)(GLuint index)) _func)(index); } GLAPI void APIENTRY GLAPI_PREFIX(PrimitiveRestartIndex)(GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[809]; + mapi_func _func = ((const mapi_func *) _tbl)[810]; ((void (APIENTRY *)(GLuint index)) _func)(index); } GLAPI void APIENTRY GLAPI_PREFIX(PrimitiveRestartNV)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[810]; + mapi_func _func = ((const mapi_func *) _tbl)[811]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(BlendEquationSeparate)(GLenum modeRGB, GLenum modeA) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[858]; + mapi_func _func = ((const mapi_func *) _tbl)[859]; ((void (APIENTRY *)(GLenum modeRGB, GLenum modeA)) _func)(modeRGB, modeA); } GLAPI void APIENTRY GLAPI_PREFIX(BindFramebufferEXT)(GLenum target, GLuint framebuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[859]; + mapi_func _func = ((const mapi_func *) _tbl)[860]; ((void (APIENTRY *)(GLenum target, GLuint framebuffer)) _func)(target, framebuffer); } GLAPI void APIENTRY GLAPI_PREFIX(BindFramebuffer)(GLenum target, GLuint framebuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[859]; + mapi_func _func = ((const mapi_func *) _tbl)[860]; ((void (APIENTRY *)(GLenum target, GLuint framebuffer)) _func)(target, framebuffer); } GLAPI void APIENTRY GLAPI_PREFIX(BindRenderbufferEXT)(GLenum target, GLuint renderbuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[860]; + mapi_func _func = ((const mapi_func *) _tbl)[861]; ((void (APIENTRY *)(GLenum target, GLuint renderbuffer)) _func)(target, renderbuffer); } GLAPI void APIENTRY GLAPI_PREFIX(BindRenderbuffer)(GLenum target, GLuint renderbuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[860]; + mapi_func _func = ((const mapi_func *) _tbl)[861]; ((void (APIENTRY *)(GLenum target, GLuint renderbuffer)) _func)(target, renderbuffer); } GLAPI GLenum APIENTRY GLAPI_PREFIX(CheckFramebufferStatusEXT)(GLenum target) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[861]; + mapi_func _func = ((const mapi_func *) _tbl)[862]; return ((GLenum (APIENTRY *)(GLenum target)) _func)(target); } GLAPI GLenum APIENTRY GLAPI_PREFIX(CheckFramebufferStatus)(GLenum target) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[861]; + mapi_func _func = ((const mapi_func *) _tbl)[862]; return ((GLenum (APIENTRY *)(GLenum target)) _func)(target); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteFramebuffersEXT)(GLsizei n, const GLuint *framebuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[862]; + mapi_func _func = ((const mapi_func *) _tbl)[863]; ((void (APIENTRY *)(GLsizei n, const GLuint *framebuffers)) _func)(n, framebuffers); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteFramebuffers)(GLsizei n, const GLuint *framebuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[862]; + mapi_func _func = ((const mapi_func *) _tbl)[863]; ((void (APIENTRY *)(GLsizei n, const GLuint *framebuffers)) _func)(n, framebuffers); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteRenderbuffersEXT)(GLsizei n, const GLuint *renderbuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[863]; + mapi_func _func = ((const mapi_func *) _tbl)[864]; ((void (APIENTRY *)(GLsizei n, const GLuint *renderbuffers)) _func)(n, renderbuffers); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteRenderbuffers)(GLsizei n, const GLuint *renderbuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[863]; + mapi_func _func = ((const mapi_func *) _tbl)[864]; ((void (APIENTRY *)(GLsizei n, const GLuint *renderbuffers)) _func)(n, renderbuffers); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferRenderbufferEXT)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[864]; + mapi_func _func = ((const mapi_func *) _tbl)[865]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)) _func)(target, attachment, renderbuffertarget, renderbuffer); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferRenderbuffer)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[864]; + mapi_func _func = ((const mapi_func *) _tbl)[865]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)) _func)(target, attachment, renderbuffertarget, renderbuffer); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTexture1DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[865]; + mapi_func _func = ((const mapi_func *) _tbl)[866]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)) _func)(target, attachment, textarget, texture, level); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTexture1D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[865]; + mapi_func _func = ((const mapi_func *) _tbl)[866]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)) _func)(target, attachment, textarget, texture, level); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTexture2DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[866]; + mapi_func _func = ((const mapi_func *) _tbl)[867]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)) _func)(target, attachment, textarget, texture, level); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTexture2D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[866]; + mapi_func _func = ((const mapi_func *) _tbl)[867]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)) _func)(target, attachment, textarget, texture, level); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTexture3DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[867]; + mapi_func _func = ((const mapi_func *) _tbl)[868]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)) _func)(target, attachment, textarget, texture, level, zoffset); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTexture3D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[867]; + mapi_func _func = ((const mapi_func *) _tbl)[868]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)) _func)(target, attachment, textarget, texture, level, zoffset); } GLAPI void APIENTRY GLAPI_PREFIX(GenFramebuffersEXT)(GLsizei n, GLuint *framebuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[868]; + mapi_func _func = ((const mapi_func *) _tbl)[869]; ((void (APIENTRY *)(GLsizei n, GLuint *framebuffers)) _func)(n, framebuffers); } GLAPI void APIENTRY GLAPI_PREFIX(GenFramebuffers)(GLsizei n, GLuint *framebuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[868]; + mapi_func _func = ((const mapi_func *) _tbl)[869]; ((void (APIENTRY *)(GLsizei n, GLuint *framebuffers)) _func)(n, framebuffers); } GLAPI void APIENTRY GLAPI_PREFIX(GenRenderbuffersEXT)(GLsizei n, GLuint *renderbuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[869]; + mapi_func _func = ((const mapi_func *) _tbl)[870]; ((void (APIENTRY *)(GLsizei n, GLuint *renderbuffers)) _func)(n, renderbuffers); } GLAPI void APIENTRY GLAPI_PREFIX(GenRenderbuffers)(GLsizei n, GLuint *renderbuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[869]; + mapi_func _func = ((const mapi_func *) _tbl)[870]; ((void (APIENTRY *)(GLsizei n, GLuint *renderbuffers)) _func)(n, renderbuffers); } GLAPI void APIENTRY GLAPI_PREFIX(GenerateMipmapEXT)(GLenum target) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[870]; + mapi_func _func = ((const mapi_func *) _tbl)[871]; ((void (APIENTRY *)(GLenum target)) _func)(target); } GLAPI void APIENTRY GLAPI_PREFIX(GenerateMipmap)(GLenum target) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[870]; + mapi_func _func = ((const mapi_func *) _tbl)[871]; ((void (APIENTRY *)(GLenum target)) _func)(target); } GLAPI void APIENTRY GLAPI_PREFIX(GetFramebufferAttachmentParameterivEXT)(GLenum target, GLenum attachment, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[871]; + mapi_func _func = ((const mapi_func *) _tbl)[872]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum pname, GLint *params)) _func)(target, attachment, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetFramebufferAttachmentParameteriv)(GLenum target, GLenum attachment, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[871]; + mapi_func _func = ((const mapi_func *) _tbl)[872]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum pname, GLint *params)) _func)(target, attachment, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetRenderbufferParameterivEXT)(GLenum target, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[872]; + mapi_func _func = ((const mapi_func *) _tbl)[873]; ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetRenderbufferParameteriv)(GLenum target, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[872]; + mapi_func _func = ((const mapi_func *) _tbl)[873]; ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsFramebufferEXT)(GLuint framebuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[873]; + mapi_func _func = ((const mapi_func *) _tbl)[874]; return ((GLboolean (APIENTRY *)(GLuint framebuffer)) _func)(framebuffer); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsFramebuffer)(GLuint framebuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[873]; + mapi_func _func = ((const mapi_func *) _tbl)[874]; return ((GLboolean (APIENTRY *)(GLuint framebuffer)) _func)(framebuffer); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsRenderbufferEXT)(GLuint renderbuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[874]; + mapi_func _func = ((const mapi_func *) _tbl)[875]; return ((GLboolean (APIENTRY *)(GLuint renderbuffer)) _func)(renderbuffer); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsRenderbuffer)(GLuint renderbuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[874]; + mapi_func _func = ((const mapi_func *) _tbl)[875]; return ((GLboolean (APIENTRY *)(GLuint renderbuffer)) _func)(renderbuffer); } GLAPI void APIENTRY GLAPI_PREFIX(RenderbufferStorageEXT)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[875]; + mapi_func _func = ((const mapi_func *) _tbl)[876]; ((void (APIENTRY *)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)) _func)(target, internalformat, width, height); } GLAPI void APIENTRY GLAPI_PREFIX(RenderbufferStorage)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[875]; + mapi_func _func = ((const mapi_func *) _tbl)[876]; ((void (APIENTRY *)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)) _func)(target, internalformat, width, height); } GLAPI void APIENTRY GLAPI_PREFIX(BlitFramebuffer)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[876]; + mapi_func _func = ((const mapi_func *) _tbl)[877]; ((void (APIENTRY *)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)) _func)(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter); } GLAPI void APIENTRY GLAPI_PREFIX(BindFragDataLocationEXT)(GLuint program, GLuint colorNumber, const GLchar *name) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[879]; + mapi_func _func = ((const mapi_func *) _tbl)[880]; ((void (APIENTRY *)(GLuint program, GLuint colorNumber, const GLchar *name)) _func)(program, colorNumber, name); } GLAPI void APIENTRY GLAPI_PREFIX(BindFragDataLocation)(GLuint program, GLuint colorNumber, const GLchar *name) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[879]; + mapi_func _func = ((const mapi_func *) _tbl)[880]; ((void (APIENTRY *)(GLuint program, GLuint colorNumber, const GLchar *name)) _func)(program, colorNumber, name); } GLAPI GLint APIENTRY GLAPI_PREFIX(GetFragDataLocationEXT)(GLuint program, const GLchar *name) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[880]; + mapi_func _func = ((const mapi_func *) _tbl)[881]; return ((GLint (APIENTRY *)(GLuint program, const GLchar *name)) _func)(program, name); } GLAPI GLint APIENTRY GLAPI_PREFIX(GetFragDataLocation)(GLuint program, const GLchar *name) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[880]; + mapi_func _func = ((const mapi_func *) _tbl)[881]; return ((GLint (APIENTRY *)(GLuint program, const GLchar *name)) _func)(program, name); } GLAPI void APIENTRY GLAPI_PREFIX(GetUniformuivEXT)(GLuint program, GLint location, GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[881]; + mapi_func _func = ((const mapi_func *) _tbl)[882]; ((void (APIENTRY *)(GLuint program, GLint location, GLuint *params)) _func)(program, location, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetUniformuiv)(GLuint program, GLint location, GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[881]; + mapi_func _func = ((const mapi_func *) _tbl)[882]; ((void (APIENTRY *)(GLuint program, GLint location, GLuint *params)) _func)(program, location, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribIivEXT)(GLuint index, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[882]; + mapi_func _func = ((const mapi_func *) _tbl)[883]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLint *params)) _func)(index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribIiv)(GLuint index, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[882]; + mapi_func _func = ((const mapi_func *) _tbl)[883]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLint *params)) _func)(index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribIuivEXT)(GLuint index, GLenum pname, GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[883]; + mapi_func _func = ((const mapi_func *) _tbl)[884]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLuint *params)) _func)(index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribIuiv)(GLuint index, GLenum pname, GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[883]; + mapi_func _func = ((const mapi_func *) _tbl)[884]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLuint *params)) _func)(index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform1uiEXT)(GLint location, GLuint x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[884]; + mapi_func _func = ((const mapi_func *) _tbl)[885]; ((void (APIENTRY *)(GLint location, GLuint x)) _func)(location, x); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform1ui)(GLint location, GLuint x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[884]; + mapi_func _func = ((const mapi_func *) _tbl)[885]; ((void (APIENTRY *)(GLint location, GLuint x)) _func)(location, x); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform1uivEXT)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[885]; + mapi_func _func = ((const mapi_func *) _tbl)[886]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform1uiv)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[885]; + mapi_func _func = ((const mapi_func *) _tbl)[886]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform2uiEXT)(GLint location, GLuint x, GLuint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[886]; + mapi_func _func = ((const mapi_func *) _tbl)[887]; ((void (APIENTRY *)(GLint location, GLuint x, GLuint y)) _func)(location, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform2ui)(GLint location, GLuint x, GLuint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[886]; + mapi_func _func = ((const mapi_func *) _tbl)[887]; ((void (APIENTRY *)(GLint location, GLuint x, GLuint y)) _func)(location, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform2uivEXT)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[887]; + mapi_func _func = ((const mapi_func *) _tbl)[888]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform2uiv)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[887]; + mapi_func _func = ((const mapi_func *) _tbl)[888]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform3uiEXT)(GLint location, GLuint x, GLuint y, GLuint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[888]; + mapi_func _func = ((const mapi_func *) _tbl)[889]; ((void (APIENTRY *)(GLint location, GLuint x, GLuint y, GLuint z)) _func)(location, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform3ui)(GLint location, GLuint x, GLuint y, GLuint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[888]; + mapi_func _func = ((const mapi_func *) _tbl)[889]; ((void (APIENTRY *)(GLint location, GLuint x, GLuint y, GLuint z)) _func)(location, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform3uivEXT)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[889]; + mapi_func _func = ((const mapi_func *) _tbl)[890]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform3uiv)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[889]; + mapi_func _func = ((const mapi_func *) _tbl)[890]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform4uiEXT)(GLint location, GLuint x, GLuint y, GLuint z, GLuint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[890]; + mapi_func _func = ((const mapi_func *) _tbl)[891]; ((void (APIENTRY *)(GLint location, GLuint x, GLuint y, GLuint z, GLuint w)) _func)(location, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform4ui)(GLint location, GLuint x, GLuint y, GLuint z, GLuint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[890]; + mapi_func _func = ((const mapi_func *) _tbl)[891]; ((void (APIENTRY *)(GLint location, GLuint x, GLuint y, GLuint z, GLuint w)) _func)(location, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform4uivEXT)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[891]; + mapi_func _func = ((const mapi_func *) _tbl)[892]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform4uiv)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[891]; + mapi_func _func = ((const mapi_func *) _tbl)[892]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1iEXT)(GLuint index, GLint x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[892]; + mapi_func _func = ((const mapi_func *) _tbl)[893]; ((void (APIENTRY *)(GLuint index, GLint x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1i)(GLuint index, GLint x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[892]; + mapi_func _func = ((const mapi_func *) _tbl)[893]; ((void (APIENTRY *)(GLuint index, GLint x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1ivEXT)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[893]; + mapi_func _func = ((const mapi_func *) _tbl)[894]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1iv)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[893]; + mapi_func _func = ((const mapi_func *) _tbl)[894]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1uiEXT)(GLuint index, GLuint x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[894]; + mapi_func _func = ((const mapi_func *) _tbl)[895]; ((void (APIENTRY *)(GLuint index, GLuint x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1ui)(GLuint index, GLuint x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[894]; + mapi_func _func = ((const mapi_func *) _tbl)[895]; ((void (APIENTRY *)(GLuint index, GLuint x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1uivEXT)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[895]; + mapi_func _func = ((const mapi_func *) _tbl)[896]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1uiv)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[895]; + mapi_func _func = ((const mapi_func *) _tbl)[896]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2iEXT)(GLuint index, GLint x, GLint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[896]; + mapi_func _func = ((const mapi_func *) _tbl)[897]; ((void (APIENTRY *)(GLuint index, GLint x, GLint y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2i)(GLuint index, GLint x, GLint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[896]; + mapi_func _func = ((const mapi_func *) _tbl)[897]; ((void (APIENTRY *)(GLuint index, GLint x, GLint y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2ivEXT)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[897]; + mapi_func _func = ((const mapi_func *) _tbl)[898]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2iv)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[897]; + mapi_func _func = ((const mapi_func *) _tbl)[898]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2uiEXT)(GLuint index, GLuint x, GLuint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[898]; + mapi_func _func = ((const mapi_func *) _tbl)[899]; ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2ui)(GLuint index, GLuint x, GLuint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[898]; + mapi_func _func = ((const mapi_func *) _tbl)[899]; ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2uivEXT)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[899]; + mapi_func _func = ((const mapi_func *) _tbl)[900]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2uiv)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[899]; + mapi_func _func = ((const mapi_func *) _tbl)[900]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3iEXT)(GLuint index, GLint x, GLint y, GLint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[900]; + mapi_func _func = ((const mapi_func *) _tbl)[901]; ((void (APIENTRY *)(GLuint index, GLint x, GLint y, GLint z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3i)(GLuint index, GLint x, GLint y, GLint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[900]; + mapi_func _func = ((const mapi_func *) _tbl)[901]; ((void (APIENTRY *)(GLuint index, GLint x, GLint y, GLint z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3ivEXT)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[901]; + mapi_func _func = ((const mapi_func *) _tbl)[902]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3iv)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[901]; + mapi_func _func = ((const mapi_func *) _tbl)[902]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3uiEXT)(GLuint index, GLuint x, GLuint y, GLuint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[902]; + mapi_func _func = ((const mapi_func *) _tbl)[903]; ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y, GLuint z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3ui)(GLuint index, GLuint x, GLuint y, GLuint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[902]; + mapi_func _func = ((const mapi_func *) _tbl)[903]; ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y, GLuint z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3uivEXT)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[903]; + mapi_func _func = ((const mapi_func *) _tbl)[904]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3uiv)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[903]; + mapi_func _func = ((const mapi_func *) _tbl)[904]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4bvEXT)(GLuint index, const GLbyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[904]; + mapi_func _func = ((const mapi_func *) _tbl)[905]; ((void (APIENTRY *)(GLuint index, const GLbyte *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4bv)(GLuint index, const GLbyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[904]; + mapi_func _func = ((const mapi_func *) _tbl)[905]; ((void (APIENTRY *)(GLuint index, const GLbyte *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4iEXT)(GLuint index, GLint x, GLint y, GLint z, GLint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[905]; + mapi_func _func = ((const mapi_func *) _tbl)[906]; ((void (APIENTRY *)(GLuint index, GLint x, GLint y, GLint z, GLint w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4i)(GLuint index, GLint x, GLint y, GLint z, GLint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[905]; + mapi_func _func = ((const mapi_func *) _tbl)[906]; ((void (APIENTRY *)(GLuint index, GLint x, GLint y, GLint z, GLint w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4ivEXT)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[906]; + mapi_func _func = ((const mapi_func *) _tbl)[907]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4iv)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[906]; + mapi_func _func = ((const mapi_func *) _tbl)[907]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4svEXT)(GLuint index, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[907]; + mapi_func _func = ((const mapi_func *) _tbl)[908]; ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4sv)(GLuint index, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[907]; + mapi_func _func = ((const mapi_func *) _tbl)[908]; ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4ubvEXT)(GLuint index, const GLubyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[908]; + mapi_func _func = ((const mapi_func *) _tbl)[909]; ((void (APIENTRY *)(GLuint index, const GLubyte *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4ubv)(GLuint index, const GLubyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[908]; + mapi_func _func = ((const mapi_func *) _tbl)[909]; ((void (APIENTRY *)(GLuint index, const GLubyte *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4uiEXT)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[909]; + mapi_func _func = ((const mapi_func *) _tbl)[910]; ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4ui)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[909]; + mapi_func _func = ((const mapi_func *) _tbl)[910]; ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4uivEXT)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[910]; + mapi_func _func = ((const mapi_func *) _tbl)[911]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4uiv)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[910]; + mapi_func _func = ((const mapi_func *) _tbl)[911]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4usvEXT)(GLuint index, const GLushort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[911]; + mapi_func _func = ((const mapi_func *) _tbl)[912]; ((void (APIENTRY *)(GLuint index, const GLushort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4usv)(GLuint index, const GLushort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[911]; + mapi_func _func = ((const mapi_func *) _tbl)[912]; ((void (APIENTRY *)(GLuint index, const GLushort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribIPointerEXT)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[912]; + mapi_func _func = ((const mapi_func *) _tbl)[913]; ((void (APIENTRY *)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(index, size, type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribIPointer)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[912]; + mapi_func _func = ((const mapi_func *) _tbl)[913]; ((void (APIENTRY *)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(index, size, type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTextureLayerEXT)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[913]; + mapi_func _func = ((const mapi_func *) _tbl)[914]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)) _func)(target, attachment, texture, level, layer); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTextureLayer)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[913]; + mapi_func _func = ((const mapi_func *) _tbl)[914]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)) _func)(target, attachment, texture, level, layer); } GLAPI void APIENTRY GLAPI_PREFIX(ColorMaskIndexedEXT)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[914]; + mapi_func _func = ((const mapi_func *) _tbl)[915]; ((void (APIENTRY *)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a)) _func)(buf, r, g, b, a); } GLAPI void APIENTRY GLAPI_PREFIX(ColorMaski)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[914]; + mapi_func _func = ((const mapi_func *) _tbl)[915]; ((void (APIENTRY *)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a)) _func)(buf, r, g, b, a); } GLAPI void APIENTRY GLAPI_PREFIX(DisableIndexedEXT)(GLenum target, GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[915]; + mapi_func _func = ((const mapi_func *) _tbl)[916]; ((void (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index); } GLAPI void APIENTRY GLAPI_PREFIX(Disablei)(GLenum target, GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[915]; + mapi_func _func = ((const mapi_func *) _tbl)[916]; ((void (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index); } GLAPI void APIENTRY GLAPI_PREFIX(EnableIndexedEXT)(GLenum target, GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[916]; + mapi_func _func = ((const mapi_func *) _tbl)[917]; ((void (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index); } GLAPI void APIENTRY GLAPI_PREFIX(Enablei)(GLenum target, GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[916]; + mapi_func _func = ((const mapi_func *) _tbl)[917]; ((void (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index); } GLAPI void APIENTRY GLAPI_PREFIX(GetBooleanIndexedvEXT)(GLenum value, GLuint index, GLboolean *data) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[917]; + mapi_func _func = ((const mapi_func *) _tbl)[918]; ((void (APIENTRY *)(GLenum value, GLuint index, GLboolean *data)) _func)(value, index, data); } GLAPI void APIENTRY GLAPI_PREFIX(GetBooleani_v)(GLenum value, GLuint index, GLboolean *data) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[917]; + mapi_func _func = ((const mapi_func *) _tbl)[918]; ((void (APIENTRY *)(GLenum value, GLuint index, GLboolean *data)) _func)(value, index, data); } GLAPI void APIENTRY GLAPI_PREFIX(GetIntegerIndexedvEXT)(GLenum value, GLuint index, GLint *data) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[918]; + mapi_func _func = ((const mapi_func *) _tbl)[919]; ((void (APIENTRY *)(GLenum value, GLuint index, GLint *data)) _func)(value, index, data); } GLAPI void APIENTRY GLAPI_PREFIX(GetIntegeri_v)(GLenum value, GLuint index, GLint *data) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[918]; + mapi_func _func = ((const mapi_func *) _tbl)[919]; ((void (APIENTRY *)(GLenum value, GLuint index, GLint *data)) _func)(value, index, data); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsEnabledIndexedEXT)(GLenum target, GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[919]; + mapi_func _func = ((const mapi_func *) _tbl)[920]; return ((GLboolean (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsEnabledi)(GLenum target, GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[919]; + mapi_func _func = ((const mapi_func *) _tbl)[920]; return ((GLboolean (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index); } GLAPI void APIENTRY GLAPI_PREFIX(ClearColorIiEXT)(GLint r, GLint g, GLint b, GLint a) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[920]; + mapi_func _func = ((const mapi_func *) _tbl)[921]; ((void (APIENTRY *)(GLint r, GLint g, GLint b, GLint a)) _func)(r, g, b, a); } GLAPI void APIENTRY GLAPI_PREFIX(ClearColorIuiEXT)(GLuint r, GLuint g, GLuint b, GLuint a) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[921]; + mapi_func _func = ((const mapi_func *) _tbl)[922]; ((void (APIENTRY *)(GLuint r, GLuint g, GLuint b, GLuint a)) _func)(r, g, b, a); } GLAPI void APIENTRY GLAPI_PREFIX(GetTexParameterIivEXT)(GLenum target, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[922]; + mapi_func _func = ((const mapi_func *) _tbl)[923]; ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetTexParameterIiv)(GLenum target, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[922]; + mapi_func _func = ((const mapi_func *) _tbl)[923]; ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetTexParameterIuivEXT)(GLenum target, GLenum pname, GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[923]; + mapi_func _func = ((const mapi_func *) _tbl)[924]; ((void (APIENTRY *)(GLenum target, GLenum pname, GLuint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetTexParameterIuiv)(GLenum target, GLenum pname, GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[923]; + mapi_func _func = ((const mapi_func *) _tbl)[924]; ((void (APIENTRY *)(GLenum target, GLenum pname, GLuint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(TexParameterIivEXT)(GLenum target, GLenum pname, const GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[924]; + mapi_func _func = ((const mapi_func *) _tbl)[925]; ((void (APIENTRY *)(GLenum target, GLenum pname, const GLint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(TexParameterIiv)(GLenum target, GLenum pname, const GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[924]; + mapi_func _func = ((const mapi_func *) _tbl)[925]; ((void (APIENTRY *)(GLenum target, GLenum pname, const GLint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(TexParameterIuivEXT)(GLenum target, GLenum pname, const GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[925]; + mapi_func _func = ((const mapi_func *) _tbl)[926]; ((void (APIENTRY *)(GLenum target, GLenum pname, const GLuint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(TexParameterIuiv)(GLenum target, GLenum pname, const GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[925]; + mapi_func _func = ((const mapi_func *) _tbl)[926]; ((void (APIENTRY *)(GLenum target, GLenum pname, const GLuint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(BeginConditionalRenderNV)(GLuint query, GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[926]; + mapi_func _func = ((const mapi_func *) _tbl)[927]; ((void (APIENTRY *)(GLuint query, GLenum mode)) _func)(query, mode); } GLAPI void APIENTRY GLAPI_PREFIX(BeginConditionalRender)(GLuint query, GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[926]; + mapi_func _func = ((const mapi_func *) _tbl)[927]; ((void (APIENTRY *)(GLuint query, GLenum mode)) _func)(query, mode); } GLAPI void APIENTRY GLAPI_PREFIX(EndConditionalRenderNV)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[927]; + mapi_func _func = ((const mapi_func *) _tbl)[928]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(EndConditionalRender)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[927]; + mapi_func _func = ((const mapi_func *) _tbl)[928]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(BeginTransformFeedbackEXT)(GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[928]; + mapi_func _func = ((const mapi_func *) _tbl)[929]; ((void (APIENTRY *)(GLenum mode)) _func)(mode); } GLAPI void APIENTRY GLAPI_PREFIX(BeginTransformFeedback)(GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[928]; + mapi_func _func = ((const mapi_func *) _tbl)[929]; ((void (APIENTRY *)(GLenum mode)) _func)(mode); } GLAPI void APIENTRY GLAPI_PREFIX(BindBufferBaseEXT)(GLenum target, GLuint index, GLuint buffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[929]; + mapi_func _func = ((const mapi_func *) _tbl)[930]; ((void (APIENTRY *)(GLenum target, GLuint index, GLuint buffer)) _func)(target, index, buffer); } GLAPI void APIENTRY GLAPI_PREFIX(BindBufferBase)(GLenum target, GLuint index, GLuint buffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[929]; + mapi_func _func = ((const mapi_func *) _tbl)[930]; ((void (APIENTRY *)(GLenum target, GLuint index, GLuint buffer)) _func)(target, index, buffer); } GLAPI void APIENTRY GLAPI_PREFIX(BindBufferOffsetEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[930]; + mapi_func _func = ((const mapi_func *) _tbl)[931]; ((void (APIENTRY *)(GLenum target, GLuint index, GLuint buffer, GLintptr offset)) _func)(target, index, buffer, offset); } GLAPI void APIENTRY GLAPI_PREFIX(BindBufferRangeEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[931]; + mapi_func _func = ((const mapi_func *) _tbl)[932]; ((void (APIENTRY *)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)) _func)(target, index, buffer, offset, size); } GLAPI void APIENTRY GLAPI_PREFIX(BindBufferRange)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[931]; + mapi_func _func = ((const mapi_func *) _tbl)[932]; ((void (APIENTRY *)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)) _func)(target, index, buffer, offset, size); } GLAPI void APIENTRY GLAPI_PREFIX(EndTransformFeedbackEXT)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[932]; + mapi_func _func = ((const mapi_func *) _tbl)[933]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(EndTransformFeedback)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[932]; + mapi_func _func = ((const mapi_func *) _tbl)[933]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(GetTransformFeedbackVaryingEXT)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[933]; + mapi_func _func = ((const mapi_func *) _tbl)[934]; ((void (APIENTRY *)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)) _func)(program, index, bufSize, length, size, type, name); } GLAPI void APIENTRY GLAPI_PREFIX(GetTransformFeedbackVarying)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[933]; + mapi_func _func = ((const mapi_func *) _tbl)[934]; ((void (APIENTRY *)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)) _func)(program, index, bufSize, length, size, type, name); } GLAPI void APIENTRY GLAPI_PREFIX(TransformFeedbackVaryingsEXT)(GLuint program, GLsizei count, const char **varyings, GLenum bufferMode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[934]; + mapi_func _func = ((const mapi_func *) _tbl)[935]; ((void (APIENTRY *)(GLuint program, GLsizei count, const char **varyings, GLenum bufferMode)) _func)(program, count, varyings, bufferMode); } GLAPI void APIENTRY GLAPI_PREFIX(TransformFeedbackVaryings)(GLuint program, GLsizei count, const GLchar* *varyings, GLenum bufferMode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[934]; + mapi_func _func = ((const mapi_func *) _tbl)[935]; ((void (APIENTRY *)(GLuint program, GLsizei count, const GLchar* *varyings, GLenum bufferMode)) _func)(program, count, varyings, bufferMode); } GLAPI void APIENTRY GLAPI_PREFIX(ProvokingVertexEXT)(GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[935]; + mapi_func _func = ((const mapi_func *) _tbl)[936]; ((void (APIENTRY *)(GLenum mode)) _func)(mode); } GLAPI void APIENTRY GLAPI_PREFIX(ProvokingVertex)(GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[935]; + mapi_func _func = ((const mapi_func *) _tbl)[936]; ((void (APIENTRY *)(GLenum mode)) _func)(mode); } GLAPI void APIENTRY GLAPI_PREFIX(GetObjectParameterivAPPLE)(GLenum objectType, GLuint name, GLenum pname, GLint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[938]; + mapi_func _func = ((const mapi_func *) _tbl)[939]; ((void (APIENTRY *)(GLenum objectType, GLuint name, GLenum pname, GLint *value)) _func)(objectType, name, pname, value); } GLAPI GLenum APIENTRY GLAPI_PREFIX(ObjectPurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[939]; + mapi_func _func = ((const mapi_func *) _tbl)[940]; return ((GLenum (APIENTRY *)(GLenum objectType, GLuint name, GLenum option)) _func)(objectType, name, option); } GLAPI GLenum APIENTRY GLAPI_PREFIX(ObjectUnpurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[940]; + mapi_func _func = ((const mapi_func *) _tbl)[941]; return ((GLenum (APIENTRY *)(GLenum objectType, GLuint name, GLenum option)) _func)(objectType, name, option); } GLAPI void APIENTRY GLAPI_PREFIX(ActiveProgramEXT)(GLuint program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[941]; + mapi_func _func = ((const mapi_func *) _tbl)[942]; ((void (APIENTRY *)(GLuint program)) _func)(program); } GLAPI GLuint APIENTRY GLAPI_PREFIX(CreateShaderProgramEXT)(GLenum type, const GLchar *string) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[942]; + mapi_func _func = ((const mapi_func *) _tbl)[943]; return ((GLuint (APIENTRY *)(GLenum type, const GLchar *string)) _func)(type, string); } GLAPI void APIENTRY GLAPI_PREFIX(UseShaderProgramEXT)(GLenum type, GLuint program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[943]; + mapi_func _func = ((const mapi_func *) _tbl)[944]; ((void (APIENTRY *)(GLenum type, GLuint program)) _func)(type, program); } GLAPI void APIENTRY GLAPI_PREFIX(TextureBarrierNV)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[944]; + mapi_func _func = ((const mapi_func *) _tbl)[945]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(EGLImageTargetRenderbufferStorageOES)(GLenum target, GLvoid *writeOffset) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[950]; + mapi_func _func = ((const mapi_func *) _tbl)[951]; ((void (APIENTRY *)(GLenum target, GLvoid *writeOffset)) _func)(target, writeOffset); } GLAPI void APIENTRY GLAPI_PREFIX(EGLImageTargetTexture2DOES)(GLenum target, GLvoid *writeOffset) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[951]; + mapi_func _func = ((const mapi_func *) _tbl)[952]; ((void (APIENTRY *)(GLenum target, GLvoid *writeOffset)) _func)(target, writeOffset); } @@ -11859,117 +11867,120 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FlushMappedBufferRange))"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(MapBufferRange))"\n" "\t"STUB_ASM_CODE("581")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindVertexArray))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexBufferARB))"\n" "\t"STUB_ASM_CODE("582")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenVertexArrays))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindVertexArray))"\n" "\t"STUB_ASM_CODE("583")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CopyBufferSubData))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenVertexArrays))"\n" "\t"STUB_ASM_CODE("584")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ClientWaitSync))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CopyBufferSubData))"\n" "\t"STUB_ASM_CODE("585")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteSync))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ClientWaitSync))"\n" "\t"STUB_ASM_CODE("586")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FenceSync))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteSync))"\n" "\t"STUB_ASM_CODE("587")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetInteger64v))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FenceSync))"\n" "\t"STUB_ASM_CODE("588")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetSynciv))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetInteger64v))"\n" "\t"STUB_ASM_CODE("589")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsSync))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetSynciv))"\n" "\t"STUB_ASM_CODE("590")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WaitSync))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsSync))"\n" "\t"STUB_ASM_CODE("591")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DrawElementsBaseVertex))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WaitSync))"\n" "\t"STUB_ASM_CODE("592")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DrawRangeElementsBaseVertex))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DrawElementsBaseVertex))"\n" "\t"STUB_ASM_CODE("593")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(MultiDrawElementsBaseVertex))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DrawRangeElementsBaseVertex))"\n" "\t"STUB_ASM_CODE("594")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendEquationSeparateiARB))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(MultiDrawElementsBaseVertex))"\n" "\t"STUB_ASM_CODE("595")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendEquationiARB))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendEquationSeparateiARB))"\n" "\t"STUB_ASM_CODE("596")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendFuncSeparateiARB))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendEquationiARB))"\n" "\t"STUB_ASM_CODE("597")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendFunciARB))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendFuncSeparateiARB))"\n" "\t"STUB_ASM_CODE("598")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindTransformFeedback))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendFunciARB))"\n" "\t"STUB_ASM_CODE("599")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteTransformFeedbacks))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindTransformFeedback))"\n" "\t"STUB_ASM_CODE("600")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DrawTransformFeedback))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteTransformFeedbacks))"\n" "\t"STUB_ASM_CODE("601")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenTransformFeedbacks))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DrawTransformFeedback))"\n" "\t"STUB_ASM_CODE("602")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsTransformFeedback))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenTransformFeedbacks))"\n" "\t"STUB_ASM_CODE("603")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PauseTransformFeedback))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsTransformFeedback))"\n" "\t"STUB_ASM_CODE("604")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ResumeTransformFeedback))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PauseTransformFeedback))"\n" "\t"STUB_ASM_CODE("605")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ClearDepthf))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ResumeTransformFeedback))"\n" "\t"STUB_ASM_CODE("606")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DepthRangef))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ClearDepthf))"\n" "\t"STUB_ASM_CODE("607")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetShaderPrecisionFormat))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DepthRangef))"\n" "\t"STUB_ASM_CODE("608")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ReleaseShaderCompiler))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetShaderPrecisionFormat))"\n" "\t"STUB_ASM_CODE("609")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ShaderBinary))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ReleaseShaderCompiler))"\n" "\t"STUB_ASM_CODE("610")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ShaderBinary))"\n" +"\t"STUB_ASM_CODE("611")"\n" + STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PolygonOffsetEXT))"\n" -"\t"STUB_ASM_CODE("614")"\n" +"\t"STUB_ASM_CODE("615")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorPointerEXT))"\n" -"\t"STUB_ASM_CODE("633")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EdgeFlagPointerEXT))"\n" "\t"STUB_ASM_CODE("634")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IndexPointerEXT))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EdgeFlagPointerEXT))"\n" "\t"STUB_ASM_CODE("635")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(NormalPointerEXT))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IndexPointerEXT))"\n" "\t"STUB_ASM_CODE("636")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexCoordPointerEXT))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(NormalPointerEXT))"\n" "\t"STUB_ASM_CODE("637")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexPointerEXT))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexCoordPointerEXT))"\n" "\t"STUB_ASM_CODE("638")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameterfEXT))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexPointerEXT))"\n" "\t"STUB_ASM_CODE("639")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameterfEXT))"\n" +"\t"STUB_ASM_CODE("640")"\n" + ".globl "GLAPI_PREFIX_STR(PointParameterf)"\n" ".set "GLAPI_PREFIX_STR(PointParameterf)", "GLAPI_PREFIX_STR(PointParameterfEXT)"\n" @@ -11977,7 +11988,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameterfEXT))"\n" ".set "GLAPI_PREFIX_STR(PointParameterfARB)", "GLAPI_PREFIX_STR(PointParameterfEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameterfvEXT))"\n" -"\t"STUB_ASM_CODE("640")"\n" +"\t"STUB_ASM_CODE("641")"\n" ".globl "GLAPI_PREFIX_STR(PointParameterfv)"\n" ".set "GLAPI_PREFIX_STR(PointParameterfv)", "GLAPI_PREFIX_STR(PointParameterfvEXT)"\n" @@ -11986,212 +11997,212 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameterfvEXT))"\n" ".set "GLAPI_PREFIX_STR(PointParameterfvARB)", "GLAPI_PREFIX_STR(PointParameterfvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(LockArraysEXT))"\n" -"\t"STUB_ASM_CODE("641")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(UnlockArraysEXT))"\n" "\t"STUB_ASM_CODE("642")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3bEXT))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(UnlockArraysEXT))"\n" "\t"STUB_ASM_CODE("643")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3bEXT))"\n" +"\t"STUB_ASM_CODE("644")"\n" + ".globl "GLAPI_PREFIX_STR(SecondaryColor3b)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3b)", "GLAPI_PREFIX_STR(SecondaryColor3bEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3bvEXT))"\n" -"\t"STUB_ASM_CODE("644")"\n" +"\t"STUB_ASM_CODE("645")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3bv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3bv)", "GLAPI_PREFIX_STR(SecondaryColor3bvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3dEXT))"\n" -"\t"STUB_ASM_CODE("645")"\n" +"\t"STUB_ASM_CODE("646")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3d)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3d)", "GLAPI_PREFIX_STR(SecondaryColor3dEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3dvEXT))"\n" -"\t"STUB_ASM_CODE("646")"\n" +"\t"STUB_ASM_CODE("647")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3dv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3dv)", "GLAPI_PREFIX_STR(SecondaryColor3dvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3fEXT))"\n" -"\t"STUB_ASM_CODE("647")"\n" +"\t"STUB_ASM_CODE("648")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3f)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3f)", "GLAPI_PREFIX_STR(SecondaryColor3fEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3fvEXT))"\n" -"\t"STUB_ASM_CODE("648")"\n" +"\t"STUB_ASM_CODE("649")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3fv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3fv)", "GLAPI_PREFIX_STR(SecondaryColor3fvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3iEXT))"\n" -"\t"STUB_ASM_CODE("649")"\n" +"\t"STUB_ASM_CODE("650")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3i)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3i)", "GLAPI_PREFIX_STR(SecondaryColor3iEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3ivEXT))"\n" -"\t"STUB_ASM_CODE("650")"\n" +"\t"STUB_ASM_CODE("651")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3iv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3iv)", "GLAPI_PREFIX_STR(SecondaryColor3ivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3sEXT))"\n" -"\t"STUB_ASM_CODE("651")"\n" +"\t"STUB_ASM_CODE("652")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3s)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3s)", "GLAPI_PREFIX_STR(SecondaryColor3sEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3svEXT))"\n" -"\t"STUB_ASM_CODE("652")"\n" +"\t"STUB_ASM_CODE("653")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3sv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3sv)", "GLAPI_PREFIX_STR(SecondaryColor3svEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3ubEXT))"\n" -"\t"STUB_ASM_CODE("653")"\n" +"\t"STUB_ASM_CODE("654")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3ub)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3ub)", "GLAPI_PREFIX_STR(SecondaryColor3ubEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3ubvEXT))"\n" -"\t"STUB_ASM_CODE("654")"\n" +"\t"STUB_ASM_CODE("655")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3ubv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3ubv)", "GLAPI_PREFIX_STR(SecondaryColor3ubvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3uiEXT))"\n" -"\t"STUB_ASM_CODE("655")"\n" +"\t"STUB_ASM_CODE("656")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3ui)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3ui)", "GLAPI_PREFIX_STR(SecondaryColor3uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3uivEXT))"\n" -"\t"STUB_ASM_CODE("656")"\n" +"\t"STUB_ASM_CODE("657")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3uiv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3uiv)", "GLAPI_PREFIX_STR(SecondaryColor3uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3usEXT))"\n" -"\t"STUB_ASM_CODE("657")"\n" +"\t"STUB_ASM_CODE("658")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3us)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3us)", "GLAPI_PREFIX_STR(SecondaryColor3usEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3usvEXT))"\n" -"\t"STUB_ASM_CODE("658")"\n" +"\t"STUB_ASM_CODE("659")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3usv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3usv)", "GLAPI_PREFIX_STR(SecondaryColor3usvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColorPointerEXT))"\n" -"\t"STUB_ASM_CODE("659")"\n" +"\t"STUB_ASM_CODE("660")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColorPointer)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColorPointer)", "GLAPI_PREFIX_STR(SecondaryColorPointerEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(MultiDrawArraysEXT))"\n" -"\t"STUB_ASM_CODE("660")"\n" +"\t"STUB_ASM_CODE("661")"\n" ".globl "GLAPI_PREFIX_STR(MultiDrawArrays)"\n" ".set "GLAPI_PREFIX_STR(MultiDrawArrays)", "GLAPI_PREFIX_STR(MultiDrawArraysEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(MultiDrawElementsEXT))"\n" -"\t"STUB_ASM_CODE("661")"\n" +"\t"STUB_ASM_CODE("662")"\n" ".globl "GLAPI_PREFIX_STR(MultiDrawElements)"\n" ".set "GLAPI_PREFIX_STR(MultiDrawElements)", "GLAPI_PREFIX_STR(MultiDrawElementsEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FogCoordPointerEXT))"\n" -"\t"STUB_ASM_CODE("662")"\n" +"\t"STUB_ASM_CODE("663")"\n" ".globl "GLAPI_PREFIX_STR(FogCoordPointer)"\n" ".set "GLAPI_PREFIX_STR(FogCoordPointer)", "GLAPI_PREFIX_STR(FogCoordPointerEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FogCoorddEXT))"\n" -"\t"STUB_ASM_CODE("663")"\n" +"\t"STUB_ASM_CODE("664")"\n" ".globl "GLAPI_PREFIX_STR(FogCoordd)"\n" ".set "GLAPI_PREFIX_STR(FogCoordd)", "GLAPI_PREFIX_STR(FogCoorddEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FogCoorddvEXT))"\n" -"\t"STUB_ASM_CODE("664")"\n" +"\t"STUB_ASM_CODE("665")"\n" ".globl "GLAPI_PREFIX_STR(FogCoorddv)"\n" ".set "GLAPI_PREFIX_STR(FogCoorddv)", "GLAPI_PREFIX_STR(FogCoorddvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FogCoordfEXT))"\n" -"\t"STUB_ASM_CODE("665")"\n" +"\t"STUB_ASM_CODE("666")"\n" ".globl "GLAPI_PREFIX_STR(FogCoordf)"\n" ".set "GLAPI_PREFIX_STR(FogCoordf)", "GLAPI_PREFIX_STR(FogCoordfEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FogCoordfvEXT))"\n" -"\t"STUB_ASM_CODE("666")"\n" +"\t"STUB_ASM_CODE("667")"\n" ".globl "GLAPI_PREFIX_STR(FogCoordfv)"\n" ".set "GLAPI_PREFIX_STR(FogCoordfv)", "GLAPI_PREFIX_STR(FogCoordfvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendFuncSeparateEXT))"\n" -"\t"STUB_ASM_CODE("668")"\n" +"\t"STUB_ASM_CODE("669")"\n" ".globl "GLAPI_PREFIX_STR(BlendFuncSeparate)"\n" ".set "GLAPI_PREFIX_STR(BlendFuncSeparate)", "GLAPI_PREFIX_STR(BlendFuncSeparateEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FlushVertexArrayRangeNV))"\n" -"\t"STUB_ASM_CODE("669")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexArrayRangeNV))"\n" "\t"STUB_ASM_CODE("670")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerInputNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexArrayRangeNV))"\n" "\t"STUB_ASM_CODE("671")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerOutputNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerInputNV))"\n" "\t"STUB_ASM_CODE("672")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameterfNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerOutputNV))"\n" "\t"STUB_ASM_CODE("673")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameterfvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameterfNV))"\n" "\t"STUB_ASM_CODE("674")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameteriNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameterfvNV))"\n" "\t"STUB_ASM_CODE("675")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameterivNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameteriNV))"\n" "\t"STUB_ASM_CODE("676")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FinalCombinerInputNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameterivNV))"\n" "\t"STUB_ASM_CODE("677")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerInputParameterfvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FinalCombinerInputNV))"\n" "\t"STUB_ASM_CODE("678")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerInputParameterivNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerInputParameterfvNV))"\n" "\t"STUB_ASM_CODE("679")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerOutputParameterfvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerInputParameterivNV))"\n" "\t"STUB_ASM_CODE("680")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerOutputParameterivNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerOutputParameterfvNV))"\n" "\t"STUB_ASM_CODE("681")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetFinalCombinerInputParameterfvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerOutputParameterivNV))"\n" "\t"STUB_ASM_CODE("682")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetFinalCombinerInputParameterivNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetFinalCombinerInputParameterfvNV))"\n" "\t"STUB_ASM_CODE("683")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ResizeBuffersMESA))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetFinalCombinerInputParameterivNV))"\n" "\t"STUB_ASM_CODE("684")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2dMESA))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ResizeBuffersMESA))"\n" "\t"STUB_ASM_CODE("685")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2dMESA))"\n" +"\t"STUB_ASM_CODE("686")"\n" + ".globl "GLAPI_PREFIX_STR(WindowPos2d)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2d)", "GLAPI_PREFIX_STR(WindowPos2dMESA)"\n" @@ -12199,7 +12210,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2dMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2dARB)", "GLAPI_PREFIX_STR(WindowPos2dMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2dvMESA))"\n" -"\t"STUB_ASM_CODE("686")"\n" +"\t"STUB_ASM_CODE("687")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2dv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2dv)", "GLAPI_PREFIX_STR(WindowPos2dvMESA)"\n" @@ -12208,7 +12219,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2dvMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2dvARB)", "GLAPI_PREFIX_STR(WindowPos2dvMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2fMESA))"\n" -"\t"STUB_ASM_CODE("687")"\n" +"\t"STUB_ASM_CODE("688")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2f)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2f)", "GLAPI_PREFIX_STR(WindowPos2fMESA)"\n" @@ -12217,7 +12228,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2fMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2fARB)", "GLAPI_PREFIX_STR(WindowPos2fMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2fvMESA))"\n" -"\t"STUB_ASM_CODE("688")"\n" +"\t"STUB_ASM_CODE("689")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2fv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2fv)", "GLAPI_PREFIX_STR(WindowPos2fvMESA)"\n" @@ -12226,7 +12237,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2fvMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2fvARB)", "GLAPI_PREFIX_STR(WindowPos2fvMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2iMESA))"\n" -"\t"STUB_ASM_CODE("689")"\n" +"\t"STUB_ASM_CODE("690")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2i)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2i)", "GLAPI_PREFIX_STR(WindowPos2iMESA)"\n" @@ -12235,7 +12246,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2iMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2iARB)", "GLAPI_PREFIX_STR(WindowPos2iMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2ivMESA))"\n" -"\t"STUB_ASM_CODE("690")"\n" +"\t"STUB_ASM_CODE("691")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2iv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2iv)", "GLAPI_PREFIX_STR(WindowPos2ivMESA)"\n" @@ -12244,7 +12255,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2ivMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2ivARB)", "GLAPI_PREFIX_STR(WindowPos2ivMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2sMESA))"\n" -"\t"STUB_ASM_CODE("691")"\n" +"\t"STUB_ASM_CODE("692")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2s)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2s)", "GLAPI_PREFIX_STR(WindowPos2sMESA)"\n" @@ -12253,7 +12264,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2sMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2sARB)", "GLAPI_PREFIX_STR(WindowPos2sMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2svMESA))"\n" -"\t"STUB_ASM_CODE("692")"\n" +"\t"STUB_ASM_CODE("693")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2sv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2sv)", "GLAPI_PREFIX_STR(WindowPos2svMESA)"\n" @@ -12262,7 +12273,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2svMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2svARB)", "GLAPI_PREFIX_STR(WindowPos2svMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3dMESA))"\n" -"\t"STUB_ASM_CODE("693")"\n" +"\t"STUB_ASM_CODE("694")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3d)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3d)", "GLAPI_PREFIX_STR(WindowPos3dMESA)"\n" @@ -12271,7 +12282,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3dMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3dARB)", "GLAPI_PREFIX_STR(WindowPos3dMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3dvMESA))"\n" -"\t"STUB_ASM_CODE("694")"\n" +"\t"STUB_ASM_CODE("695")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3dv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3dv)", "GLAPI_PREFIX_STR(WindowPos3dvMESA)"\n" @@ -12280,7 +12291,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3dvMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3dvARB)", "GLAPI_PREFIX_STR(WindowPos3dvMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3fMESA))"\n" -"\t"STUB_ASM_CODE("695")"\n" +"\t"STUB_ASM_CODE("696")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3f)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3f)", "GLAPI_PREFIX_STR(WindowPos3fMESA)"\n" @@ -12289,7 +12300,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3fMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3fARB)", "GLAPI_PREFIX_STR(WindowPos3fMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3fvMESA))"\n" -"\t"STUB_ASM_CODE("696")"\n" +"\t"STUB_ASM_CODE("697")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3fv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3fv)", "GLAPI_PREFIX_STR(WindowPos3fvMESA)"\n" @@ -12298,7 +12309,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3fvMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3fvARB)", "GLAPI_PREFIX_STR(WindowPos3fvMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3iMESA))"\n" -"\t"STUB_ASM_CODE("697")"\n" +"\t"STUB_ASM_CODE("698")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3i)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3i)", "GLAPI_PREFIX_STR(WindowPos3iMESA)"\n" @@ -12307,7 +12318,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3iMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3iARB)", "GLAPI_PREFIX_STR(WindowPos3iMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3ivMESA))"\n" -"\t"STUB_ASM_CODE("698")"\n" +"\t"STUB_ASM_CODE("699")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3iv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3iv)", "GLAPI_PREFIX_STR(WindowPos3ivMESA)"\n" @@ -12316,7 +12327,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3ivMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3ivARB)", "GLAPI_PREFIX_STR(WindowPos3ivMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3sMESA))"\n" -"\t"STUB_ASM_CODE("699")"\n" +"\t"STUB_ASM_CODE("700")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3s)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3s)", "GLAPI_PREFIX_STR(WindowPos3sMESA)"\n" @@ -12325,7 +12336,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3sMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3sARB)", "GLAPI_PREFIX_STR(WindowPos3sMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3svMESA))"\n" -"\t"STUB_ASM_CODE("700")"\n" +"\t"STUB_ASM_CODE("701")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3sv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3sv)", "GLAPI_PREFIX_STR(WindowPos3svMESA)"\n" @@ -12334,71 +12345,71 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3svMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3svARB)", "GLAPI_PREFIX_STR(WindowPos3svMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4dMESA))"\n" -"\t"STUB_ASM_CODE("701")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4dvMESA))"\n" "\t"STUB_ASM_CODE("702")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4fMESA))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4dvMESA))"\n" "\t"STUB_ASM_CODE("703")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4fvMESA))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4fMESA))"\n" "\t"STUB_ASM_CODE("704")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4iMESA))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4fvMESA))"\n" "\t"STUB_ASM_CODE("705")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4ivMESA))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4iMESA))"\n" "\t"STUB_ASM_CODE("706")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4sMESA))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4ivMESA))"\n" "\t"STUB_ASM_CODE("707")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4svMESA))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4sMESA))"\n" "\t"STUB_ASM_CODE("708")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4svMESA))"\n" +"\t"STUB_ASM_CODE("709")"\n" + STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AreProgramsResidentNV))"\n" -"\t"STUB_ASM_CODE("718")"\n" +"\t"STUB_ASM_CODE("719")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindProgramNV))"\n" -"\t"STUB_ASM_CODE("719")"\n" +"\t"STUB_ASM_CODE("720")"\n" ".globl "GLAPI_PREFIX_STR(BindProgramARB)"\n" ".set "GLAPI_PREFIX_STR(BindProgramARB)", "GLAPI_PREFIX_STR(BindProgramNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteProgramsNV))"\n" -"\t"STUB_ASM_CODE("720")"\n" +"\t"STUB_ASM_CODE("721")"\n" ".globl "GLAPI_PREFIX_STR(DeleteProgramsARB)"\n" ".set "GLAPI_PREFIX_STR(DeleteProgramsARB)", "GLAPI_PREFIX_STR(DeleteProgramsNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ExecuteProgramNV))"\n" -"\t"STUB_ASM_CODE("721")"\n" +"\t"STUB_ASM_CODE("722")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenProgramsNV))"\n" -"\t"STUB_ASM_CODE("722")"\n" +"\t"STUB_ASM_CODE("723")"\n" ".globl "GLAPI_PREFIX_STR(GenProgramsARB)"\n" ".set "GLAPI_PREFIX_STR(GenProgramsARB)", "GLAPI_PREFIX_STR(GenProgramsNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramParameterdvNV))"\n" -"\t"STUB_ASM_CODE("723")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramParameterfvNV))"\n" "\t"STUB_ASM_CODE("724")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramStringNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramParameterfvNV))"\n" "\t"STUB_ASM_CODE("725")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramivNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramStringNV))"\n" "\t"STUB_ASM_CODE("726")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTrackMatrixivNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramivNV))"\n" "\t"STUB_ASM_CODE("727")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribPointervNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTrackMatrixivNV))"\n" "\t"STUB_ASM_CODE("728")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribPointervNV))"\n" +"\t"STUB_ASM_CODE("729")"\n" + ".globl "GLAPI_PREFIX_STR(GetVertexAttribPointerv)"\n" ".set "GLAPI_PREFIX_STR(GetVertexAttribPointerv)", "GLAPI_PREFIX_STR(GetVertexAttribPointervNV)"\n" @@ -12406,721 +12417,721 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribPointervNV))"\n" ".set "GLAPI_PREFIX_STR(GetVertexAttribPointervARB)", "GLAPI_PREFIX_STR(GetVertexAttribPointervNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribdvNV))"\n" -"\t"STUB_ASM_CODE("729")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribfvNV))"\n" "\t"STUB_ASM_CODE("730")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribivNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribfvNV))"\n" "\t"STUB_ASM_CODE("731")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsProgramNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribivNV))"\n" "\t"STUB_ASM_CODE("732")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsProgramNV))"\n" +"\t"STUB_ASM_CODE("733")"\n" + ".globl "GLAPI_PREFIX_STR(IsProgramARB)"\n" ".set "GLAPI_PREFIX_STR(IsProgramARB)", "GLAPI_PREFIX_STR(IsProgramNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(LoadProgramNV))"\n" -"\t"STUB_ASM_CODE("733")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramParameters4dvNV))"\n" "\t"STUB_ASM_CODE("734")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramParameters4fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramParameters4dvNV))"\n" "\t"STUB_ASM_CODE("735")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(RequestResidentProgramsNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramParameters4fvNV))"\n" "\t"STUB_ASM_CODE("736")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TrackMatrixNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(RequestResidentProgramsNV))"\n" "\t"STUB_ASM_CODE("737")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1dNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TrackMatrixNV))"\n" "\t"STUB_ASM_CODE("738")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1dvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1dNV))"\n" "\t"STUB_ASM_CODE("739")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1fNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1dvNV))"\n" "\t"STUB_ASM_CODE("740")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1fNV))"\n" "\t"STUB_ASM_CODE("741")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1sNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1fvNV))"\n" "\t"STUB_ASM_CODE("742")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1svNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1sNV))"\n" "\t"STUB_ASM_CODE("743")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2dNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1svNV))"\n" "\t"STUB_ASM_CODE("744")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2dvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2dNV))"\n" "\t"STUB_ASM_CODE("745")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2fNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2dvNV))"\n" "\t"STUB_ASM_CODE("746")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2fNV))"\n" "\t"STUB_ASM_CODE("747")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2sNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2fvNV))"\n" "\t"STUB_ASM_CODE("748")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2svNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2sNV))"\n" "\t"STUB_ASM_CODE("749")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3dNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2svNV))"\n" "\t"STUB_ASM_CODE("750")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3dvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3dNV))"\n" "\t"STUB_ASM_CODE("751")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3fNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3dvNV))"\n" "\t"STUB_ASM_CODE("752")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3fNV))"\n" "\t"STUB_ASM_CODE("753")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3sNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3fvNV))"\n" "\t"STUB_ASM_CODE("754")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3svNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3sNV))"\n" "\t"STUB_ASM_CODE("755")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4dNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3svNV))"\n" "\t"STUB_ASM_CODE("756")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4dvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4dNV))"\n" "\t"STUB_ASM_CODE("757")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4fNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4dvNV))"\n" "\t"STUB_ASM_CODE("758")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4fNV))"\n" "\t"STUB_ASM_CODE("759")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4sNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4fvNV))"\n" "\t"STUB_ASM_CODE("760")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4svNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4sNV))"\n" "\t"STUB_ASM_CODE("761")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4ubNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4svNV))"\n" "\t"STUB_ASM_CODE("762")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4ubvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4ubNV))"\n" "\t"STUB_ASM_CODE("763")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribPointerNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4ubvNV))"\n" "\t"STUB_ASM_CODE("764")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs1dvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribPointerNV))"\n" "\t"STUB_ASM_CODE("765")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs1fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs1dvNV))"\n" "\t"STUB_ASM_CODE("766")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs1svNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs1fvNV))"\n" "\t"STUB_ASM_CODE("767")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs2dvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs1svNV))"\n" "\t"STUB_ASM_CODE("768")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs2fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs2dvNV))"\n" "\t"STUB_ASM_CODE("769")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs2svNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs2fvNV))"\n" "\t"STUB_ASM_CODE("770")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs3dvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs2svNV))"\n" "\t"STUB_ASM_CODE("771")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs3fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs3dvNV))"\n" "\t"STUB_ASM_CODE("772")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs3svNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs3fvNV))"\n" "\t"STUB_ASM_CODE("773")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4dvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs3svNV))"\n" "\t"STUB_ASM_CODE("774")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4dvNV))"\n" "\t"STUB_ASM_CODE("775")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4svNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4fvNV))"\n" "\t"STUB_ASM_CODE("776")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4ubvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4svNV))"\n" "\t"STUB_ASM_CODE("777")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTexBumpParameterfvATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4ubvNV))"\n" "\t"STUB_ASM_CODE("778")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTexBumpParameterivATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTexBumpParameterfvATI))"\n" "\t"STUB_ASM_CODE("779")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexBumpParameterfvATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTexBumpParameterivATI))"\n" "\t"STUB_ASM_CODE("780")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexBumpParameterivATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexBumpParameterfvATI))"\n" "\t"STUB_ASM_CODE("781")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AlphaFragmentOp1ATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexBumpParameterivATI))"\n" "\t"STUB_ASM_CODE("782")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AlphaFragmentOp2ATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AlphaFragmentOp1ATI))"\n" "\t"STUB_ASM_CODE("783")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AlphaFragmentOp3ATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AlphaFragmentOp2ATI))"\n" "\t"STUB_ASM_CODE("784")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BeginFragmentShaderATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AlphaFragmentOp3ATI))"\n" "\t"STUB_ASM_CODE("785")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindFragmentShaderATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BeginFragmentShaderATI))"\n" "\t"STUB_ASM_CODE("786")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorFragmentOp1ATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindFragmentShaderATI))"\n" "\t"STUB_ASM_CODE("787")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorFragmentOp2ATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorFragmentOp1ATI))"\n" "\t"STUB_ASM_CODE("788")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorFragmentOp3ATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorFragmentOp2ATI))"\n" "\t"STUB_ASM_CODE("789")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteFragmentShaderATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorFragmentOp3ATI))"\n" "\t"STUB_ASM_CODE("790")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EndFragmentShaderATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteFragmentShaderATI))"\n" "\t"STUB_ASM_CODE("791")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenFragmentShadersATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EndFragmentShaderATI))"\n" "\t"STUB_ASM_CODE("792")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PassTexCoordATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenFragmentShadersATI))"\n" "\t"STUB_ASM_CODE("793")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SampleMapATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PassTexCoordATI))"\n" "\t"STUB_ASM_CODE("794")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SetFragmentShaderConstantATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SampleMapATI))"\n" "\t"STUB_ASM_CODE("795")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameteriNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SetFragmentShaderConstantATI))"\n" "\t"STUB_ASM_CODE("796")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameteriNV))"\n" +"\t"STUB_ASM_CODE("797")"\n" + ".globl "GLAPI_PREFIX_STR(PointParameteri)"\n" ".set "GLAPI_PREFIX_STR(PointParameteri)", "GLAPI_PREFIX_STR(PointParameteriNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameterivNV))"\n" -"\t"STUB_ASM_CODE("797")"\n" +"\t"STUB_ASM_CODE("798")"\n" ".globl "GLAPI_PREFIX_STR(PointParameteriv)"\n" ".set "GLAPI_PREFIX_STR(PointParameteriv)", "GLAPI_PREFIX_STR(PointParameterivNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteVertexArrays))"\n" -"\t"STUB_ASM_CODE("800")"\n" +"\t"STUB_ASM_CODE("801")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsVertexArray))"\n" -"\t"STUB_ASM_CODE("802")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramNamedParameterdvNV))"\n" "\t"STUB_ASM_CODE("803")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramNamedParameterfvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramNamedParameterdvNV))"\n" "\t"STUB_ASM_CODE("804")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramNamedParameter4dNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramNamedParameterfvNV))"\n" "\t"STUB_ASM_CODE("805")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramNamedParameter4dvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramNamedParameter4dNV))"\n" "\t"STUB_ASM_CODE("806")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramNamedParameter4fNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramNamedParameter4dvNV))"\n" "\t"STUB_ASM_CODE("807")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramNamedParameter4fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramNamedParameter4fNV))"\n" "\t"STUB_ASM_CODE("808")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PrimitiveRestartIndexNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramNamedParameter4fvNV))"\n" "\t"STUB_ASM_CODE("809")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PrimitiveRestartIndexNV))"\n" +"\t"STUB_ASM_CODE("810")"\n" + ".globl "GLAPI_PREFIX_STR(PrimitiveRestartIndex)"\n" ".set "GLAPI_PREFIX_STR(PrimitiveRestartIndex)", "GLAPI_PREFIX_STR(PrimitiveRestartIndexNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PrimitiveRestartNV))"\n" -"\t"STUB_ASM_CODE("810")"\n" +"\t"STUB_ASM_CODE("811")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendEquationSeparate))"\n" -"\t"STUB_ASM_CODE("858")"\n" +"\t"STUB_ASM_CODE("859")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindFramebufferEXT))"\n" -"\t"STUB_ASM_CODE("859")"\n" +"\t"STUB_ASM_CODE("860")"\n" ".globl "GLAPI_PREFIX_STR(BindFramebuffer)"\n" ".set "GLAPI_PREFIX_STR(BindFramebuffer)", "GLAPI_PREFIX_STR(BindFramebufferEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindRenderbufferEXT))"\n" -"\t"STUB_ASM_CODE("860")"\n" +"\t"STUB_ASM_CODE("861")"\n" ".globl "GLAPI_PREFIX_STR(BindRenderbuffer)"\n" ".set "GLAPI_PREFIX_STR(BindRenderbuffer)", "GLAPI_PREFIX_STR(BindRenderbufferEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CheckFramebufferStatusEXT))"\n" -"\t"STUB_ASM_CODE("861")"\n" +"\t"STUB_ASM_CODE("862")"\n" ".globl "GLAPI_PREFIX_STR(CheckFramebufferStatus)"\n" ".set "GLAPI_PREFIX_STR(CheckFramebufferStatus)", "GLAPI_PREFIX_STR(CheckFramebufferStatusEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteFramebuffersEXT))"\n" -"\t"STUB_ASM_CODE("862")"\n" +"\t"STUB_ASM_CODE("863")"\n" ".globl "GLAPI_PREFIX_STR(DeleteFramebuffers)"\n" ".set "GLAPI_PREFIX_STR(DeleteFramebuffers)", "GLAPI_PREFIX_STR(DeleteFramebuffersEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteRenderbuffersEXT))"\n" -"\t"STUB_ASM_CODE("863")"\n" +"\t"STUB_ASM_CODE("864")"\n" ".globl "GLAPI_PREFIX_STR(DeleteRenderbuffers)"\n" ".set "GLAPI_PREFIX_STR(DeleteRenderbuffers)", "GLAPI_PREFIX_STR(DeleteRenderbuffersEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FramebufferRenderbufferEXT))"\n" -"\t"STUB_ASM_CODE("864")"\n" +"\t"STUB_ASM_CODE("865")"\n" ".globl "GLAPI_PREFIX_STR(FramebufferRenderbuffer)"\n" ".set "GLAPI_PREFIX_STR(FramebufferRenderbuffer)", "GLAPI_PREFIX_STR(FramebufferRenderbufferEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FramebufferTexture1DEXT))"\n" -"\t"STUB_ASM_CODE("865")"\n" +"\t"STUB_ASM_CODE("866")"\n" ".globl "GLAPI_PREFIX_STR(FramebufferTexture1D)"\n" ".set "GLAPI_PREFIX_STR(FramebufferTexture1D)", "GLAPI_PREFIX_STR(FramebufferTexture1DEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FramebufferTexture2DEXT))"\n" -"\t"STUB_ASM_CODE("866")"\n" +"\t"STUB_ASM_CODE("867")"\n" ".globl "GLAPI_PREFIX_STR(FramebufferTexture2D)"\n" ".set "GLAPI_PREFIX_STR(FramebufferTexture2D)", "GLAPI_PREFIX_STR(FramebufferTexture2DEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FramebufferTexture3DEXT))"\n" -"\t"STUB_ASM_CODE("867")"\n" +"\t"STUB_ASM_CODE("868")"\n" ".globl "GLAPI_PREFIX_STR(FramebufferTexture3D)"\n" ".set "GLAPI_PREFIX_STR(FramebufferTexture3D)", "GLAPI_PREFIX_STR(FramebufferTexture3DEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenFramebuffersEXT))"\n" -"\t"STUB_ASM_CODE("868")"\n" +"\t"STUB_ASM_CODE("869")"\n" ".globl "GLAPI_PREFIX_STR(GenFramebuffers)"\n" ".set "GLAPI_PREFIX_STR(GenFramebuffers)", "GLAPI_PREFIX_STR(GenFramebuffersEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenRenderbuffersEXT))"\n" -"\t"STUB_ASM_CODE("869")"\n" +"\t"STUB_ASM_CODE("870")"\n" ".globl "GLAPI_PREFIX_STR(GenRenderbuffers)"\n" ".set "GLAPI_PREFIX_STR(GenRenderbuffers)", "GLAPI_PREFIX_STR(GenRenderbuffersEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenerateMipmapEXT))"\n" -"\t"STUB_ASM_CODE("870")"\n" +"\t"STUB_ASM_CODE("871")"\n" ".globl "GLAPI_PREFIX_STR(GenerateMipmap)"\n" ".set "GLAPI_PREFIX_STR(GenerateMipmap)", "GLAPI_PREFIX_STR(GenerateMipmapEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetFramebufferAttachmentParameterivEXT))"\n" -"\t"STUB_ASM_CODE("871")"\n" +"\t"STUB_ASM_CODE("872")"\n" ".globl "GLAPI_PREFIX_STR(GetFramebufferAttachmentParameteriv)"\n" ".set "GLAPI_PREFIX_STR(GetFramebufferAttachmentParameteriv)", "GLAPI_PREFIX_STR(GetFramebufferAttachmentParameterivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetRenderbufferParameterivEXT))"\n" -"\t"STUB_ASM_CODE("872")"\n" +"\t"STUB_ASM_CODE("873")"\n" ".globl "GLAPI_PREFIX_STR(GetRenderbufferParameteriv)"\n" ".set "GLAPI_PREFIX_STR(GetRenderbufferParameteriv)", "GLAPI_PREFIX_STR(GetRenderbufferParameterivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsFramebufferEXT))"\n" -"\t"STUB_ASM_CODE("873")"\n" +"\t"STUB_ASM_CODE("874")"\n" ".globl "GLAPI_PREFIX_STR(IsFramebuffer)"\n" ".set "GLAPI_PREFIX_STR(IsFramebuffer)", "GLAPI_PREFIX_STR(IsFramebufferEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsRenderbufferEXT))"\n" -"\t"STUB_ASM_CODE("874")"\n" +"\t"STUB_ASM_CODE("875")"\n" ".globl "GLAPI_PREFIX_STR(IsRenderbuffer)"\n" ".set "GLAPI_PREFIX_STR(IsRenderbuffer)", "GLAPI_PREFIX_STR(IsRenderbufferEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(RenderbufferStorageEXT))"\n" -"\t"STUB_ASM_CODE("875")"\n" +"\t"STUB_ASM_CODE("876")"\n" ".globl "GLAPI_PREFIX_STR(RenderbufferStorage)"\n" ".set "GLAPI_PREFIX_STR(RenderbufferStorage)", "GLAPI_PREFIX_STR(RenderbufferStorageEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlitFramebuffer))"\n" -"\t"STUB_ASM_CODE("876")"\n" +"\t"STUB_ASM_CODE("877")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindFragDataLocationEXT))"\n" -"\t"STUB_ASM_CODE("879")"\n" +"\t"STUB_ASM_CODE("880")"\n" ".globl "GLAPI_PREFIX_STR(BindFragDataLocation)"\n" ".set "GLAPI_PREFIX_STR(BindFragDataLocation)", "GLAPI_PREFIX_STR(BindFragDataLocationEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetFragDataLocationEXT))"\n" -"\t"STUB_ASM_CODE("880")"\n" +"\t"STUB_ASM_CODE("881")"\n" ".globl "GLAPI_PREFIX_STR(GetFragDataLocation)"\n" ".set "GLAPI_PREFIX_STR(GetFragDataLocation)", "GLAPI_PREFIX_STR(GetFragDataLocationEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetUniformuivEXT))"\n" -"\t"STUB_ASM_CODE("881")"\n" +"\t"STUB_ASM_CODE("882")"\n" ".globl "GLAPI_PREFIX_STR(GetUniformuiv)"\n" ".set "GLAPI_PREFIX_STR(GetUniformuiv)", "GLAPI_PREFIX_STR(GetUniformuivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribIivEXT))"\n" -"\t"STUB_ASM_CODE("882")"\n" +"\t"STUB_ASM_CODE("883")"\n" ".globl "GLAPI_PREFIX_STR(GetVertexAttribIiv)"\n" ".set "GLAPI_PREFIX_STR(GetVertexAttribIiv)", "GLAPI_PREFIX_STR(GetVertexAttribIivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribIuivEXT))"\n" -"\t"STUB_ASM_CODE("883")"\n" +"\t"STUB_ASM_CODE("884")"\n" ".globl "GLAPI_PREFIX_STR(GetVertexAttribIuiv)"\n" ".set "GLAPI_PREFIX_STR(GetVertexAttribIuiv)", "GLAPI_PREFIX_STR(GetVertexAttribIuivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform1uiEXT))"\n" -"\t"STUB_ASM_CODE("884")"\n" +"\t"STUB_ASM_CODE("885")"\n" ".globl "GLAPI_PREFIX_STR(Uniform1ui)"\n" ".set "GLAPI_PREFIX_STR(Uniform1ui)", "GLAPI_PREFIX_STR(Uniform1uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform1uivEXT))"\n" -"\t"STUB_ASM_CODE("885")"\n" +"\t"STUB_ASM_CODE("886")"\n" ".globl "GLAPI_PREFIX_STR(Uniform1uiv)"\n" ".set "GLAPI_PREFIX_STR(Uniform1uiv)", "GLAPI_PREFIX_STR(Uniform1uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform2uiEXT))"\n" -"\t"STUB_ASM_CODE("886")"\n" +"\t"STUB_ASM_CODE("887")"\n" ".globl "GLAPI_PREFIX_STR(Uniform2ui)"\n" ".set "GLAPI_PREFIX_STR(Uniform2ui)", "GLAPI_PREFIX_STR(Uniform2uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform2uivEXT))"\n" -"\t"STUB_ASM_CODE("887")"\n" +"\t"STUB_ASM_CODE("888")"\n" ".globl "GLAPI_PREFIX_STR(Uniform2uiv)"\n" ".set "GLAPI_PREFIX_STR(Uniform2uiv)", "GLAPI_PREFIX_STR(Uniform2uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform3uiEXT))"\n" -"\t"STUB_ASM_CODE("888")"\n" +"\t"STUB_ASM_CODE("889")"\n" ".globl "GLAPI_PREFIX_STR(Uniform3ui)"\n" ".set "GLAPI_PREFIX_STR(Uniform3ui)", "GLAPI_PREFIX_STR(Uniform3uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform3uivEXT))"\n" -"\t"STUB_ASM_CODE("889")"\n" +"\t"STUB_ASM_CODE("890")"\n" ".globl "GLAPI_PREFIX_STR(Uniform3uiv)"\n" ".set "GLAPI_PREFIX_STR(Uniform3uiv)", "GLAPI_PREFIX_STR(Uniform3uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform4uiEXT))"\n" -"\t"STUB_ASM_CODE("890")"\n" +"\t"STUB_ASM_CODE("891")"\n" ".globl "GLAPI_PREFIX_STR(Uniform4ui)"\n" ".set "GLAPI_PREFIX_STR(Uniform4ui)", "GLAPI_PREFIX_STR(Uniform4uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform4uivEXT))"\n" -"\t"STUB_ASM_CODE("891")"\n" +"\t"STUB_ASM_CODE("892")"\n" ".globl "GLAPI_PREFIX_STR(Uniform4uiv)"\n" ".set "GLAPI_PREFIX_STR(Uniform4uiv)", "GLAPI_PREFIX_STR(Uniform4uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI1iEXT))"\n" -"\t"STUB_ASM_CODE("892")"\n" +"\t"STUB_ASM_CODE("893")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI1i)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI1i)", "GLAPI_PREFIX_STR(VertexAttribI1iEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI1ivEXT))"\n" -"\t"STUB_ASM_CODE("893")"\n" +"\t"STUB_ASM_CODE("894")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI1iv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI1iv)", "GLAPI_PREFIX_STR(VertexAttribI1ivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI1uiEXT))"\n" -"\t"STUB_ASM_CODE("894")"\n" +"\t"STUB_ASM_CODE("895")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI1ui)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI1ui)", "GLAPI_PREFIX_STR(VertexAttribI1uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI1uivEXT))"\n" -"\t"STUB_ASM_CODE("895")"\n" +"\t"STUB_ASM_CODE("896")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI1uiv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI1uiv)", "GLAPI_PREFIX_STR(VertexAttribI1uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI2iEXT))"\n" -"\t"STUB_ASM_CODE("896")"\n" +"\t"STUB_ASM_CODE("897")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI2i)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI2i)", "GLAPI_PREFIX_STR(VertexAttribI2iEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI2ivEXT))"\n" -"\t"STUB_ASM_CODE("897")"\n" +"\t"STUB_ASM_CODE("898")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI2iv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI2iv)", "GLAPI_PREFIX_STR(VertexAttribI2ivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI2uiEXT))"\n" -"\t"STUB_ASM_CODE("898")"\n" +"\t"STUB_ASM_CODE("899")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI2ui)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI2ui)", "GLAPI_PREFIX_STR(VertexAttribI2uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI2uivEXT))"\n" -"\t"STUB_ASM_CODE("899")"\n" +"\t"STUB_ASM_CODE("900")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI2uiv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI2uiv)", "GLAPI_PREFIX_STR(VertexAttribI2uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI3iEXT))"\n" -"\t"STUB_ASM_CODE("900")"\n" +"\t"STUB_ASM_CODE("901")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI3i)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI3i)", "GLAPI_PREFIX_STR(VertexAttribI3iEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI3ivEXT))"\n" -"\t"STUB_ASM_CODE("901")"\n" +"\t"STUB_ASM_CODE("902")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI3iv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI3iv)", "GLAPI_PREFIX_STR(VertexAttribI3ivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI3uiEXT))"\n" -"\t"STUB_ASM_CODE("902")"\n" +"\t"STUB_ASM_CODE("903")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI3ui)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI3ui)", "GLAPI_PREFIX_STR(VertexAttribI3uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI3uivEXT))"\n" -"\t"STUB_ASM_CODE("903")"\n" +"\t"STUB_ASM_CODE("904")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI3uiv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI3uiv)", "GLAPI_PREFIX_STR(VertexAttribI3uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4bvEXT))"\n" -"\t"STUB_ASM_CODE("904")"\n" +"\t"STUB_ASM_CODE("905")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4bv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4bv)", "GLAPI_PREFIX_STR(VertexAttribI4bvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4iEXT))"\n" -"\t"STUB_ASM_CODE("905")"\n" +"\t"STUB_ASM_CODE("906")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4i)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4i)", "GLAPI_PREFIX_STR(VertexAttribI4iEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4ivEXT))"\n" -"\t"STUB_ASM_CODE("906")"\n" +"\t"STUB_ASM_CODE("907")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4iv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4iv)", "GLAPI_PREFIX_STR(VertexAttribI4ivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4svEXT))"\n" -"\t"STUB_ASM_CODE("907")"\n" +"\t"STUB_ASM_CODE("908")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4sv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4sv)", "GLAPI_PREFIX_STR(VertexAttribI4svEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4ubvEXT))"\n" -"\t"STUB_ASM_CODE("908")"\n" +"\t"STUB_ASM_CODE("909")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4ubv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4ubv)", "GLAPI_PREFIX_STR(VertexAttribI4ubvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4uiEXT))"\n" -"\t"STUB_ASM_CODE("909")"\n" +"\t"STUB_ASM_CODE("910")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4ui)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4ui)", "GLAPI_PREFIX_STR(VertexAttribI4uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4uivEXT))"\n" -"\t"STUB_ASM_CODE("910")"\n" +"\t"STUB_ASM_CODE("911")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4uiv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4uiv)", "GLAPI_PREFIX_STR(VertexAttribI4uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4usvEXT))"\n" -"\t"STUB_ASM_CODE("911")"\n" +"\t"STUB_ASM_CODE("912")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4usv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4usv)", "GLAPI_PREFIX_STR(VertexAttribI4usvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribIPointerEXT))"\n" -"\t"STUB_ASM_CODE("912")"\n" +"\t"STUB_ASM_CODE("913")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribIPointer)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribIPointer)", "GLAPI_PREFIX_STR(VertexAttribIPointerEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FramebufferTextureLayerEXT))"\n" -"\t"STUB_ASM_CODE("913")"\n" +"\t"STUB_ASM_CODE("914")"\n" ".globl "GLAPI_PREFIX_STR(FramebufferTextureLayer)"\n" ".set "GLAPI_PREFIX_STR(FramebufferTextureLayer)", "GLAPI_PREFIX_STR(FramebufferTextureLayerEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorMaskIndexedEXT))"\n" -"\t"STUB_ASM_CODE("914")"\n" +"\t"STUB_ASM_CODE("915")"\n" ".globl "GLAPI_PREFIX_STR(ColorMaski)"\n" ".set "GLAPI_PREFIX_STR(ColorMaski)", "GLAPI_PREFIX_STR(ColorMaskIndexedEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DisableIndexedEXT))"\n" -"\t"STUB_ASM_CODE("915")"\n" +"\t"STUB_ASM_CODE("916")"\n" ".globl "GLAPI_PREFIX_STR(Disablei)"\n" ".set "GLAPI_PREFIX_STR(Disablei)", "GLAPI_PREFIX_STR(DisableIndexedEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EnableIndexedEXT))"\n" -"\t"STUB_ASM_CODE("916")"\n" +"\t"STUB_ASM_CODE("917")"\n" ".globl "GLAPI_PREFIX_STR(Enablei)"\n" ".set "GLAPI_PREFIX_STR(Enablei)", "GLAPI_PREFIX_STR(EnableIndexedEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetBooleanIndexedvEXT))"\n" -"\t"STUB_ASM_CODE("917")"\n" +"\t"STUB_ASM_CODE("918")"\n" ".globl "GLAPI_PREFIX_STR(GetBooleani_v)"\n" ".set "GLAPI_PREFIX_STR(GetBooleani_v)", "GLAPI_PREFIX_STR(GetBooleanIndexedvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetIntegerIndexedvEXT))"\n" -"\t"STUB_ASM_CODE("918")"\n" +"\t"STUB_ASM_CODE("919")"\n" ".globl "GLAPI_PREFIX_STR(GetIntegeri_v)"\n" ".set "GLAPI_PREFIX_STR(GetIntegeri_v)", "GLAPI_PREFIX_STR(GetIntegerIndexedvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsEnabledIndexedEXT))"\n" -"\t"STUB_ASM_CODE("919")"\n" +"\t"STUB_ASM_CODE("920")"\n" ".globl "GLAPI_PREFIX_STR(IsEnabledi)"\n" ".set "GLAPI_PREFIX_STR(IsEnabledi)", "GLAPI_PREFIX_STR(IsEnabledIndexedEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ClearColorIiEXT))"\n" -"\t"STUB_ASM_CODE("920")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ClearColorIuiEXT))"\n" "\t"STUB_ASM_CODE("921")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTexParameterIivEXT))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ClearColorIuiEXT))"\n" "\t"STUB_ASM_CODE("922")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTexParameterIivEXT))"\n" +"\t"STUB_ASM_CODE("923")"\n" + ".globl "GLAPI_PREFIX_STR(GetTexParameterIiv)"\n" ".set "GLAPI_PREFIX_STR(GetTexParameterIiv)", "GLAPI_PREFIX_STR(GetTexParameterIivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTexParameterIuivEXT))"\n" -"\t"STUB_ASM_CODE("923")"\n" +"\t"STUB_ASM_CODE("924")"\n" ".globl "GLAPI_PREFIX_STR(GetTexParameterIuiv)"\n" ".set "GLAPI_PREFIX_STR(GetTexParameterIuiv)", "GLAPI_PREFIX_STR(GetTexParameterIuivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexParameterIivEXT))"\n" -"\t"STUB_ASM_CODE("924")"\n" +"\t"STUB_ASM_CODE("925")"\n" ".globl "GLAPI_PREFIX_STR(TexParameterIiv)"\n" ".set "GLAPI_PREFIX_STR(TexParameterIiv)", "GLAPI_PREFIX_STR(TexParameterIivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexParameterIuivEXT))"\n" -"\t"STUB_ASM_CODE("925")"\n" +"\t"STUB_ASM_CODE("926")"\n" ".globl "GLAPI_PREFIX_STR(TexParameterIuiv)"\n" ".set "GLAPI_PREFIX_STR(TexParameterIuiv)", "GLAPI_PREFIX_STR(TexParameterIuivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BeginConditionalRenderNV))"\n" -"\t"STUB_ASM_CODE("926")"\n" +"\t"STUB_ASM_CODE("927")"\n" ".globl "GLAPI_PREFIX_STR(BeginConditionalRender)"\n" ".set "GLAPI_PREFIX_STR(BeginConditionalRender)", "GLAPI_PREFIX_STR(BeginConditionalRenderNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EndConditionalRenderNV))"\n" -"\t"STUB_ASM_CODE("927")"\n" +"\t"STUB_ASM_CODE("928")"\n" ".globl "GLAPI_PREFIX_STR(EndConditionalRender)"\n" ".set "GLAPI_PREFIX_STR(EndConditionalRender)", "GLAPI_PREFIX_STR(EndConditionalRenderNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BeginTransformFeedbackEXT))"\n" -"\t"STUB_ASM_CODE("928")"\n" +"\t"STUB_ASM_CODE("929")"\n" ".globl "GLAPI_PREFIX_STR(BeginTransformFeedback)"\n" ".set "GLAPI_PREFIX_STR(BeginTransformFeedback)", "GLAPI_PREFIX_STR(BeginTransformFeedbackEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindBufferBaseEXT))"\n" -"\t"STUB_ASM_CODE("929")"\n" +"\t"STUB_ASM_CODE("930")"\n" ".globl "GLAPI_PREFIX_STR(BindBufferBase)"\n" ".set "GLAPI_PREFIX_STR(BindBufferBase)", "GLAPI_PREFIX_STR(BindBufferBaseEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindBufferOffsetEXT))"\n" -"\t"STUB_ASM_CODE("930")"\n" +"\t"STUB_ASM_CODE("931")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindBufferRangeEXT))"\n" -"\t"STUB_ASM_CODE("931")"\n" +"\t"STUB_ASM_CODE("932")"\n" ".globl "GLAPI_PREFIX_STR(BindBufferRange)"\n" ".set "GLAPI_PREFIX_STR(BindBufferRange)", "GLAPI_PREFIX_STR(BindBufferRangeEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EndTransformFeedbackEXT))"\n" -"\t"STUB_ASM_CODE("932")"\n" +"\t"STUB_ASM_CODE("933")"\n" ".globl "GLAPI_PREFIX_STR(EndTransformFeedback)"\n" ".set "GLAPI_PREFIX_STR(EndTransformFeedback)", "GLAPI_PREFIX_STR(EndTransformFeedbackEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTransformFeedbackVaryingEXT))"\n" -"\t"STUB_ASM_CODE("933")"\n" +"\t"STUB_ASM_CODE("934")"\n" ".globl "GLAPI_PREFIX_STR(GetTransformFeedbackVarying)"\n" ".set "GLAPI_PREFIX_STR(GetTransformFeedbackVarying)", "GLAPI_PREFIX_STR(GetTransformFeedbackVaryingEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TransformFeedbackVaryingsEXT))"\n" -"\t"STUB_ASM_CODE("934")"\n" +"\t"STUB_ASM_CODE("935")"\n" ".globl "GLAPI_PREFIX_STR(TransformFeedbackVaryings)"\n" ".set "GLAPI_PREFIX_STR(TransformFeedbackVaryings)", "GLAPI_PREFIX_STR(TransformFeedbackVaryingsEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProvokingVertexEXT))"\n" -"\t"STUB_ASM_CODE("935")"\n" +"\t"STUB_ASM_CODE("936")"\n" ".globl "GLAPI_PREFIX_STR(ProvokingVertex)"\n" ".set "GLAPI_PREFIX_STR(ProvokingVertex)", "GLAPI_PREFIX_STR(ProvokingVertexEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetObjectParameterivAPPLE))"\n" -"\t"STUB_ASM_CODE("938")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ObjectPurgeableAPPLE))"\n" "\t"STUB_ASM_CODE("939")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ObjectUnpurgeableAPPLE))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ObjectPurgeableAPPLE))"\n" "\t"STUB_ASM_CODE("940")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ActiveProgramEXT))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ObjectUnpurgeableAPPLE))"\n" "\t"STUB_ASM_CODE("941")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CreateShaderProgramEXT))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ActiveProgramEXT))"\n" "\t"STUB_ASM_CODE("942")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(UseShaderProgramEXT))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CreateShaderProgramEXT))"\n" "\t"STUB_ASM_CODE("943")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TextureBarrierNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(UseShaderProgramEXT))"\n" "\t"STUB_ASM_CODE("944")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TextureBarrierNV))"\n" +"\t"STUB_ASM_CODE("945")"\n" + STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EGLImageTargetRenderbufferStorageOES))"\n" -"\t"STUB_ASM_CODE("950")"\n" +"\t"STUB_ASM_CODE("951")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EGLImageTargetTexture2DOES))"\n" -"\t"STUB_ASM_CODE("951")"\n" +"\t"STUB_ASM_CODE("952")"\n" ); #undef MAPI_TMP_STUB_ASM_GCC_NO_HIDDEN diff --git a/src/mapi/glapi/glapi_sparc.S b/src/mapi/glapi/glapi_sparc.S index 767189805f8..edbce937165 100644 --- a/src/mapi/glapi/glapi_sparc.S +++ b/src/mapi/glapi/glapi_sparc.S @@ -777,38 +777,37 @@ gl_dispatch_functions_start: GL_STUB(glVertexAttribDivisorARB, 579) GL_STUB(glFlushMappedBufferRange, 580) GL_STUB(glMapBufferRange, 581) - GL_STUB(glBindVertexArray, 582) - GL_STUB(glGenVertexArrays, 583) - GL_STUB(glCopyBufferSubData, 584) - GL_STUB(glClientWaitSync, 585) - GL_STUB(glDeleteSync, 586) - GL_STUB(glFenceSync, 587) - GL_STUB(glGetInteger64v, 588) - GL_STUB(glGetSynciv, 589) - GL_STUB(glIsSync, 590) - GL_STUB(glWaitSync, 591) - GL_STUB(glDrawElementsBaseVertex, 592) - GL_STUB(glDrawRangeElementsBaseVertex, 593) - GL_STUB(glMultiDrawElementsBaseVertex, 594) - GL_STUB(glBlendEquationSeparateiARB, 595) - GL_STUB(glBlendEquationiARB, 596) - GL_STUB(glBlendFuncSeparateiARB, 597) - GL_STUB(glBlendFunciARB, 598) - GL_STUB(glBindTransformFeedback, 599) - GL_STUB(glDeleteTransformFeedbacks, 600) - GL_STUB(glDrawTransformFeedback, 601) - GL_STUB(glGenTransformFeedbacks, 602) - GL_STUB(glIsTransformFeedback, 603) - GL_STUB(glPauseTransformFeedback, 604) - GL_STUB(glResumeTransformFeedback, 605) - GL_STUB(glClearDepthf, 606) - GL_STUB(glDepthRangef, 607) - GL_STUB(glGetShaderPrecisionFormat, 608) - GL_STUB(glReleaseShaderCompiler, 609) - GL_STUB(glShaderBinary, 610) - GL_STUB(glPolygonOffsetEXT, 611) - GL_STUB(gl_dispatch_stub_612, 612) - HIDDEN(gl_dispatch_stub_612) + GL_STUB(glTexBufferARB, 582) + GL_STUB(glBindVertexArray, 583) + GL_STUB(glGenVertexArrays, 584) + GL_STUB(glCopyBufferSubData, 585) + GL_STUB(glClientWaitSync, 586) + GL_STUB(glDeleteSync, 587) + GL_STUB(glFenceSync, 588) + GL_STUB(glGetInteger64v, 589) + GL_STUB(glGetSynciv, 590) + GL_STUB(glIsSync, 591) + GL_STUB(glWaitSync, 592) + GL_STUB(glDrawElementsBaseVertex, 593) + GL_STUB(glDrawRangeElementsBaseVertex, 594) + GL_STUB(glMultiDrawElementsBaseVertex, 595) + GL_STUB(glBlendEquationSeparateiARB, 596) + GL_STUB(glBlendEquationiARB, 597) + GL_STUB(glBlendFuncSeparateiARB, 598) + GL_STUB(glBlendFunciARB, 599) + GL_STUB(glBindTransformFeedback, 600) + GL_STUB(glDeleteTransformFeedbacks, 601) + GL_STUB(glDrawTransformFeedback, 602) + GL_STUB(glGenTransformFeedbacks, 603) + GL_STUB(glIsTransformFeedback, 604) + GL_STUB(glPauseTransformFeedback, 605) + GL_STUB(glResumeTransformFeedback, 606) + GL_STUB(glClearDepthf, 607) + GL_STUB(glDepthRangef, 608) + GL_STUB(glGetShaderPrecisionFormat, 609) + GL_STUB(glReleaseShaderCompiler, 610) + GL_STUB(glShaderBinary, 611) + GL_STUB(glPolygonOffsetEXT, 612) GL_STUB(gl_dispatch_stub_613, 613) HIDDEN(gl_dispatch_stub_613) GL_STUB(gl_dispatch_stub_614, 614) @@ -823,85 +822,85 @@ gl_dispatch_functions_start: HIDDEN(gl_dispatch_stub_618) GL_STUB(gl_dispatch_stub_619, 619) HIDDEN(gl_dispatch_stub_619) - GL_STUB(glColorPointerEXT, 620) - GL_STUB(glEdgeFlagPointerEXT, 621) - GL_STUB(glIndexPointerEXT, 622) - GL_STUB(glNormalPointerEXT, 623) - GL_STUB(glTexCoordPointerEXT, 624) - GL_STUB(glVertexPointerEXT, 625) - GL_STUB(glPointParameterfEXT, 626) - GL_STUB(glPointParameterfvEXT, 627) - GL_STUB(glLockArraysEXT, 628) - GL_STUB(glUnlockArraysEXT, 629) - GL_STUB(glSecondaryColor3bEXT, 630) - GL_STUB(glSecondaryColor3bvEXT, 631) - GL_STUB(glSecondaryColor3dEXT, 632) - GL_STUB(glSecondaryColor3dvEXT, 633) - GL_STUB(glSecondaryColor3fEXT, 634) - GL_STUB(glSecondaryColor3fvEXT, 635) - GL_STUB(glSecondaryColor3iEXT, 636) - GL_STUB(glSecondaryColor3ivEXT, 637) - GL_STUB(glSecondaryColor3sEXT, 638) - GL_STUB(glSecondaryColor3svEXT, 639) - GL_STUB(glSecondaryColor3ubEXT, 640) - GL_STUB(glSecondaryColor3ubvEXT, 641) - GL_STUB(glSecondaryColor3uiEXT, 642) - GL_STUB(glSecondaryColor3uivEXT, 643) - GL_STUB(glSecondaryColor3usEXT, 644) - GL_STUB(glSecondaryColor3usvEXT, 645) - GL_STUB(glSecondaryColorPointerEXT, 646) - GL_STUB(glMultiDrawArraysEXT, 647) - GL_STUB(glMultiDrawElementsEXT, 648) - GL_STUB(glFogCoordPointerEXT, 649) - GL_STUB(glFogCoorddEXT, 650) - GL_STUB(glFogCoorddvEXT, 651) - GL_STUB(glFogCoordfEXT, 652) - GL_STUB(glFogCoordfvEXT, 653) - GL_STUB(gl_dispatch_stub_654, 654) - HIDDEN(gl_dispatch_stub_654) - GL_STUB(glBlendFuncSeparateEXT, 655) - GL_STUB(glFlushVertexArrayRangeNV, 656) - GL_STUB(glVertexArrayRangeNV, 657) - GL_STUB(glCombinerInputNV, 658) - GL_STUB(glCombinerOutputNV, 659) - GL_STUB(glCombinerParameterfNV, 660) - GL_STUB(glCombinerParameterfvNV, 661) - GL_STUB(glCombinerParameteriNV, 662) - GL_STUB(glCombinerParameterivNV, 663) - GL_STUB(glFinalCombinerInputNV, 664) - GL_STUB(glGetCombinerInputParameterfvNV, 665) - GL_STUB(glGetCombinerInputParameterivNV, 666) - GL_STUB(glGetCombinerOutputParameterfvNV, 667) - GL_STUB(glGetCombinerOutputParameterivNV, 668) - GL_STUB(glGetFinalCombinerInputParameterfvNV, 669) - GL_STUB(glGetFinalCombinerInputParameterivNV, 670) - GL_STUB(glResizeBuffersMESA, 671) - GL_STUB(glWindowPos2dMESA, 672) - GL_STUB(glWindowPos2dvMESA, 673) - GL_STUB(glWindowPos2fMESA, 674) - GL_STUB(glWindowPos2fvMESA, 675) - GL_STUB(glWindowPos2iMESA, 676) - GL_STUB(glWindowPos2ivMESA, 677) - GL_STUB(glWindowPos2sMESA, 678) - GL_STUB(glWindowPos2svMESA, 679) - GL_STUB(glWindowPos3dMESA, 680) - GL_STUB(glWindowPos3dvMESA, 681) - GL_STUB(glWindowPos3fMESA, 682) - GL_STUB(glWindowPos3fvMESA, 683) - GL_STUB(glWindowPos3iMESA, 684) - GL_STUB(glWindowPos3ivMESA, 685) - GL_STUB(glWindowPos3sMESA, 686) - GL_STUB(glWindowPos3svMESA, 687) - GL_STUB(glWindowPos4dMESA, 688) - GL_STUB(glWindowPos4dvMESA, 689) - GL_STUB(glWindowPos4fMESA, 690) - GL_STUB(glWindowPos4fvMESA, 691) - GL_STUB(glWindowPos4iMESA, 692) - GL_STUB(glWindowPos4ivMESA, 693) - GL_STUB(glWindowPos4sMESA, 694) - GL_STUB(glWindowPos4svMESA, 695) - GL_STUB(gl_dispatch_stub_696, 696) - HIDDEN(gl_dispatch_stub_696) + GL_STUB(gl_dispatch_stub_620, 620) + HIDDEN(gl_dispatch_stub_620) + GL_STUB(glColorPointerEXT, 621) + GL_STUB(glEdgeFlagPointerEXT, 622) + GL_STUB(glIndexPointerEXT, 623) + GL_STUB(glNormalPointerEXT, 624) + GL_STUB(glTexCoordPointerEXT, 625) + GL_STUB(glVertexPointerEXT, 626) + GL_STUB(glPointParameterfEXT, 627) + GL_STUB(glPointParameterfvEXT, 628) + GL_STUB(glLockArraysEXT, 629) + GL_STUB(glUnlockArraysEXT, 630) + GL_STUB(glSecondaryColor3bEXT, 631) + GL_STUB(glSecondaryColor3bvEXT, 632) + GL_STUB(glSecondaryColor3dEXT, 633) + GL_STUB(glSecondaryColor3dvEXT, 634) + GL_STUB(glSecondaryColor3fEXT, 635) + GL_STUB(glSecondaryColor3fvEXT, 636) + GL_STUB(glSecondaryColor3iEXT, 637) + GL_STUB(glSecondaryColor3ivEXT, 638) + GL_STUB(glSecondaryColor3sEXT, 639) + GL_STUB(glSecondaryColor3svEXT, 640) + GL_STUB(glSecondaryColor3ubEXT, 641) + GL_STUB(glSecondaryColor3ubvEXT, 642) + GL_STUB(glSecondaryColor3uiEXT, 643) + GL_STUB(glSecondaryColor3uivEXT, 644) + GL_STUB(glSecondaryColor3usEXT, 645) + GL_STUB(glSecondaryColor3usvEXT, 646) + GL_STUB(glSecondaryColorPointerEXT, 647) + GL_STUB(glMultiDrawArraysEXT, 648) + GL_STUB(glMultiDrawElementsEXT, 649) + GL_STUB(glFogCoordPointerEXT, 650) + GL_STUB(glFogCoorddEXT, 651) + GL_STUB(glFogCoorddvEXT, 652) + GL_STUB(glFogCoordfEXT, 653) + GL_STUB(glFogCoordfvEXT, 654) + GL_STUB(gl_dispatch_stub_655, 655) + HIDDEN(gl_dispatch_stub_655) + GL_STUB(glBlendFuncSeparateEXT, 656) + GL_STUB(glFlushVertexArrayRangeNV, 657) + GL_STUB(glVertexArrayRangeNV, 658) + GL_STUB(glCombinerInputNV, 659) + GL_STUB(glCombinerOutputNV, 660) + GL_STUB(glCombinerParameterfNV, 661) + GL_STUB(glCombinerParameterfvNV, 662) + GL_STUB(glCombinerParameteriNV, 663) + GL_STUB(glCombinerParameterivNV, 664) + GL_STUB(glFinalCombinerInputNV, 665) + GL_STUB(glGetCombinerInputParameterfvNV, 666) + GL_STUB(glGetCombinerInputParameterivNV, 667) + GL_STUB(glGetCombinerOutputParameterfvNV, 668) + GL_STUB(glGetCombinerOutputParameterivNV, 669) + GL_STUB(glGetFinalCombinerInputParameterfvNV, 670) + GL_STUB(glGetFinalCombinerInputParameterivNV, 671) + GL_STUB(glResizeBuffersMESA, 672) + GL_STUB(glWindowPos2dMESA, 673) + GL_STUB(glWindowPos2dvMESA, 674) + GL_STUB(glWindowPos2fMESA, 675) + GL_STUB(glWindowPos2fvMESA, 676) + GL_STUB(glWindowPos2iMESA, 677) + GL_STUB(glWindowPos2ivMESA, 678) + GL_STUB(glWindowPos2sMESA, 679) + GL_STUB(glWindowPos2svMESA, 680) + GL_STUB(glWindowPos3dMESA, 681) + GL_STUB(glWindowPos3dvMESA, 682) + GL_STUB(glWindowPos3fMESA, 683) + GL_STUB(glWindowPos3fvMESA, 684) + GL_STUB(glWindowPos3iMESA, 685) + GL_STUB(glWindowPos3ivMESA, 686) + GL_STUB(glWindowPos3sMESA, 687) + GL_STUB(glWindowPos3svMESA, 688) + GL_STUB(glWindowPos4dMESA, 689) + GL_STUB(glWindowPos4dvMESA, 690) + GL_STUB(glWindowPos4fMESA, 691) + GL_STUB(glWindowPos4fvMESA, 692) + GL_STUB(glWindowPos4iMESA, 693) + GL_STUB(glWindowPos4ivMESA, 694) + GL_STUB(glWindowPos4sMESA, 695) + GL_STUB(glWindowPos4svMESA, 696) GL_STUB(gl_dispatch_stub_697, 697) HIDDEN(gl_dispatch_stub_697) GL_STUB(gl_dispatch_stub_698, 698) @@ -918,88 +917,88 @@ gl_dispatch_functions_start: HIDDEN(gl_dispatch_stub_703) GL_STUB(gl_dispatch_stub_704, 704) HIDDEN(gl_dispatch_stub_704) - GL_STUB(glAreProgramsResidentNV, 705) - GL_STUB(glBindProgramNV, 706) - GL_STUB(glDeleteProgramsNV, 707) - GL_STUB(glExecuteProgramNV, 708) - GL_STUB(glGenProgramsNV, 709) - GL_STUB(glGetProgramParameterdvNV, 710) - GL_STUB(glGetProgramParameterfvNV, 711) - GL_STUB(glGetProgramStringNV, 712) - GL_STUB(glGetProgramivNV, 713) - GL_STUB(glGetTrackMatrixivNV, 714) - GL_STUB(glGetVertexAttribPointervNV, 715) - GL_STUB(glGetVertexAttribdvNV, 716) - GL_STUB(glGetVertexAttribfvNV, 717) - GL_STUB(glGetVertexAttribivNV, 718) - GL_STUB(glIsProgramNV, 719) - GL_STUB(glLoadProgramNV, 720) - GL_STUB(glProgramParameters4dvNV, 721) - GL_STUB(glProgramParameters4fvNV, 722) - GL_STUB(glRequestResidentProgramsNV, 723) - GL_STUB(glTrackMatrixNV, 724) - GL_STUB(glVertexAttrib1dNV, 725) - GL_STUB(glVertexAttrib1dvNV, 726) - GL_STUB(glVertexAttrib1fNV, 727) - GL_STUB(glVertexAttrib1fvNV, 728) - GL_STUB(glVertexAttrib1sNV, 729) - GL_STUB(glVertexAttrib1svNV, 730) - GL_STUB(glVertexAttrib2dNV, 731) - GL_STUB(glVertexAttrib2dvNV, 732) - GL_STUB(glVertexAttrib2fNV, 733) - GL_STUB(glVertexAttrib2fvNV, 734) - GL_STUB(glVertexAttrib2sNV, 735) - GL_STUB(glVertexAttrib2svNV, 736) - GL_STUB(glVertexAttrib3dNV, 737) - GL_STUB(glVertexAttrib3dvNV, 738) - GL_STUB(glVertexAttrib3fNV, 739) - GL_STUB(glVertexAttrib3fvNV, 740) - GL_STUB(glVertexAttrib3sNV, 741) - GL_STUB(glVertexAttrib3svNV, 742) - GL_STUB(glVertexAttrib4dNV, 743) - GL_STUB(glVertexAttrib4dvNV, 744) - GL_STUB(glVertexAttrib4fNV, 745) - GL_STUB(glVertexAttrib4fvNV, 746) - GL_STUB(glVertexAttrib4sNV, 747) - GL_STUB(glVertexAttrib4svNV, 748) - GL_STUB(glVertexAttrib4ubNV, 749) - GL_STUB(glVertexAttrib4ubvNV, 750) - GL_STUB(glVertexAttribPointerNV, 751) - GL_STUB(glVertexAttribs1dvNV, 752) - GL_STUB(glVertexAttribs1fvNV, 753) - GL_STUB(glVertexAttribs1svNV, 754) - GL_STUB(glVertexAttribs2dvNV, 755) - GL_STUB(glVertexAttribs2fvNV, 756) - GL_STUB(glVertexAttribs2svNV, 757) - GL_STUB(glVertexAttribs3dvNV, 758) - GL_STUB(glVertexAttribs3fvNV, 759) - GL_STUB(glVertexAttribs3svNV, 760) - GL_STUB(glVertexAttribs4dvNV, 761) - GL_STUB(glVertexAttribs4fvNV, 762) - GL_STUB(glVertexAttribs4svNV, 763) - GL_STUB(glVertexAttribs4ubvNV, 764) - GL_STUB(glGetTexBumpParameterfvATI, 765) - GL_STUB(glGetTexBumpParameterivATI, 766) - GL_STUB(glTexBumpParameterfvATI, 767) - GL_STUB(glTexBumpParameterivATI, 768) - GL_STUB(glAlphaFragmentOp1ATI, 769) - GL_STUB(glAlphaFragmentOp2ATI, 770) - GL_STUB(glAlphaFragmentOp3ATI, 771) - GL_STUB(glBeginFragmentShaderATI, 772) - GL_STUB(glBindFragmentShaderATI, 773) - GL_STUB(glColorFragmentOp1ATI, 774) - GL_STUB(glColorFragmentOp2ATI, 775) - GL_STUB(glColorFragmentOp3ATI, 776) - GL_STUB(glDeleteFragmentShaderATI, 777) - GL_STUB(glEndFragmentShaderATI, 778) - GL_STUB(glGenFragmentShadersATI, 779) - GL_STUB(glPassTexCoordATI, 780) - GL_STUB(glSampleMapATI, 781) - GL_STUB(glSetFragmentShaderConstantATI, 782) - GL_STUB(glPointParameteriNV, 783) - GL_STUB(glPointParameterivNV, 784) - GL_STUB(gl_dispatch_stub_785, 785) - HIDDEN(gl_dispatch_stub_785) + GL_STUB(gl_dispatch_stub_705, 705) + HIDDEN(gl_dispatch_stub_705) + GL_STUB(glAreProgramsResidentNV, 706) + GL_STUB(glBindProgramNV, 707) + GL_STUB(glDeleteProgramsNV, 708) + GL_STUB(glExecuteProgramNV, 709) + GL_STUB(glGenProgramsNV, 710) + GL_STUB(glGetProgramParameterdvNV, 711) + GL_STUB(glGetProgramParameterfvNV, 712) + GL_STUB(glGetProgramStringNV, 713) + GL_STUB(glGetProgramivNV, 714) + GL_STUB(glGetTrackMatrixivNV, 715) + GL_STUB(glGetVertexAttribPointervNV, 716) + GL_STUB(glGetVertexAttribdvNV, 717) + GL_STUB(glGetVertexAttribfvNV, 718) + GL_STUB(glGetVertexAttribivNV, 719) + GL_STUB(glIsProgramNV, 720) + GL_STUB(glLoadProgramNV, 721) + GL_STUB(glProgramParameters4dvNV, 722) + GL_STUB(glProgramParameters4fvNV, 723) + GL_STUB(glRequestResidentProgramsNV, 724) + GL_STUB(glTrackMatrixNV, 725) + GL_STUB(glVertexAttrib1dNV, 726) + GL_STUB(glVertexAttrib1dvNV, 727) + GL_STUB(glVertexAttrib1fNV, 728) + GL_STUB(glVertexAttrib1fvNV, 729) + GL_STUB(glVertexAttrib1sNV, 730) + GL_STUB(glVertexAttrib1svNV, 731) + GL_STUB(glVertexAttrib2dNV, 732) + GL_STUB(glVertexAttrib2dvNV, 733) + GL_STUB(glVertexAttrib2fNV, 734) + GL_STUB(glVertexAttrib2fvNV, 735) + GL_STUB(glVertexAttrib2sNV, 736) + GL_STUB(glVertexAttrib2svNV, 737) + GL_STUB(glVertexAttrib3dNV, 738) + GL_STUB(glVertexAttrib3dvNV, 739) + GL_STUB(glVertexAttrib3fNV, 740) + GL_STUB(glVertexAttrib3fvNV, 741) + GL_STUB(glVertexAttrib3sNV, 742) + GL_STUB(glVertexAttrib3svNV, 743) + GL_STUB(glVertexAttrib4dNV, 744) + GL_STUB(glVertexAttrib4dvNV, 745) + GL_STUB(glVertexAttrib4fNV, 746) + GL_STUB(glVertexAttrib4fvNV, 747) + GL_STUB(glVertexAttrib4sNV, 748) + GL_STUB(glVertexAttrib4svNV, 749) + GL_STUB(glVertexAttrib4ubNV, 750) + GL_STUB(glVertexAttrib4ubvNV, 751) + GL_STUB(glVertexAttribPointerNV, 752) + GL_STUB(glVertexAttribs1dvNV, 753) + GL_STUB(glVertexAttribs1fvNV, 754) + GL_STUB(glVertexAttribs1svNV, 755) + GL_STUB(glVertexAttribs2dvNV, 756) + GL_STUB(glVertexAttribs2fvNV, 757) + GL_STUB(glVertexAttribs2svNV, 758) + GL_STUB(glVertexAttribs3dvNV, 759) + GL_STUB(glVertexAttribs3fvNV, 760) + GL_STUB(glVertexAttribs3svNV, 761) + GL_STUB(glVertexAttribs4dvNV, 762) + GL_STUB(glVertexAttribs4fvNV, 763) + GL_STUB(glVertexAttribs4svNV, 764) + GL_STUB(glVertexAttribs4ubvNV, 765) + GL_STUB(glGetTexBumpParameterfvATI, 766) + GL_STUB(glGetTexBumpParameterivATI, 767) + GL_STUB(glTexBumpParameterfvATI, 768) + GL_STUB(glTexBumpParameterivATI, 769) + GL_STUB(glAlphaFragmentOp1ATI, 770) + GL_STUB(glAlphaFragmentOp2ATI, 771) + GL_STUB(glAlphaFragmentOp3ATI, 772) + GL_STUB(glBeginFragmentShaderATI, 773) + GL_STUB(glBindFragmentShaderATI, 774) + GL_STUB(glColorFragmentOp1ATI, 775) + GL_STUB(glColorFragmentOp2ATI, 776) + GL_STUB(glColorFragmentOp3ATI, 777) + GL_STUB(glDeleteFragmentShaderATI, 778) + GL_STUB(glEndFragmentShaderATI, 779) + GL_STUB(glGenFragmentShadersATI, 780) + GL_STUB(glPassTexCoordATI, 781) + GL_STUB(glSampleMapATI, 782) + GL_STUB(glSetFragmentShaderConstantATI, 783) + GL_STUB(glPointParameteriNV, 784) + GL_STUB(glPointParameterivNV, 785) GL_STUB(gl_dispatch_stub_786, 786) HIDDEN(gl_dispatch_stub_786) GL_STUB(gl_dispatch_stub_787, 787) @@ -1008,111 +1007,111 @@ gl_dispatch_functions_start: HIDDEN(gl_dispatch_stub_788) GL_STUB(gl_dispatch_stub_789, 789) HIDDEN(gl_dispatch_stub_789) - GL_STUB(glGetProgramNamedParameterdvNV, 790) - GL_STUB(glGetProgramNamedParameterfvNV, 791) - GL_STUB(glProgramNamedParameter4dNV, 792) - GL_STUB(glProgramNamedParameter4dvNV, 793) - GL_STUB(glProgramNamedParameter4fNV, 794) - GL_STUB(glProgramNamedParameter4fvNV, 795) - GL_STUB(glPrimitiveRestartIndexNV, 796) - GL_STUB(glPrimitiveRestartNV, 797) - GL_STUB(gl_dispatch_stub_798, 798) - HIDDEN(gl_dispatch_stub_798) + GL_STUB(gl_dispatch_stub_790, 790) + HIDDEN(gl_dispatch_stub_790) + GL_STUB(glGetProgramNamedParameterdvNV, 791) + GL_STUB(glGetProgramNamedParameterfvNV, 792) + GL_STUB(glProgramNamedParameter4dNV, 793) + GL_STUB(glProgramNamedParameter4dvNV, 794) + GL_STUB(glProgramNamedParameter4fNV, 795) + GL_STUB(glProgramNamedParameter4fvNV, 796) + GL_STUB(glPrimitiveRestartIndexNV, 797) + GL_STUB(glPrimitiveRestartNV, 798) GL_STUB(gl_dispatch_stub_799, 799) HIDDEN(gl_dispatch_stub_799) - GL_STUB(glBindFramebufferEXT, 800) - GL_STUB(glBindRenderbufferEXT, 801) - GL_STUB(glCheckFramebufferStatusEXT, 802) - GL_STUB(glDeleteFramebuffersEXT, 803) - GL_STUB(glDeleteRenderbuffersEXT, 804) - GL_STUB(glFramebufferRenderbufferEXT, 805) - GL_STUB(glFramebufferTexture1DEXT, 806) - GL_STUB(glFramebufferTexture2DEXT, 807) - GL_STUB(glFramebufferTexture3DEXT, 808) - GL_STUB(glGenFramebuffersEXT, 809) - GL_STUB(glGenRenderbuffersEXT, 810) - GL_STUB(glGenerateMipmapEXT, 811) - GL_STUB(glGetFramebufferAttachmentParameterivEXT, 812) - GL_STUB(glGetRenderbufferParameterivEXT, 813) - GL_STUB(glIsFramebufferEXT, 814) - GL_STUB(glIsRenderbufferEXT, 815) - GL_STUB(glRenderbufferStorageEXT, 816) - GL_STUB(gl_dispatch_stub_817, 817) - HIDDEN(gl_dispatch_stub_817) + GL_STUB(gl_dispatch_stub_800, 800) + HIDDEN(gl_dispatch_stub_800) + GL_STUB(glBindFramebufferEXT, 801) + GL_STUB(glBindRenderbufferEXT, 802) + GL_STUB(glCheckFramebufferStatusEXT, 803) + GL_STUB(glDeleteFramebuffersEXT, 804) + GL_STUB(glDeleteRenderbuffersEXT, 805) + GL_STUB(glFramebufferRenderbufferEXT, 806) + GL_STUB(glFramebufferTexture1DEXT, 807) + GL_STUB(glFramebufferTexture2DEXT, 808) + GL_STUB(glFramebufferTexture3DEXT, 809) + GL_STUB(glGenFramebuffersEXT, 810) + GL_STUB(glGenRenderbuffersEXT, 811) + GL_STUB(glGenerateMipmapEXT, 812) + GL_STUB(glGetFramebufferAttachmentParameterivEXT, 813) + GL_STUB(glGetRenderbufferParameterivEXT, 814) + GL_STUB(glIsFramebufferEXT, 815) + GL_STUB(glIsRenderbufferEXT, 816) + GL_STUB(glRenderbufferStorageEXT, 817) GL_STUB(gl_dispatch_stub_818, 818) HIDDEN(gl_dispatch_stub_818) GL_STUB(gl_dispatch_stub_819, 819) HIDDEN(gl_dispatch_stub_819) - GL_STUB(glBindFragDataLocationEXT, 820) - GL_STUB(glGetFragDataLocationEXT, 821) - GL_STUB(glGetUniformuivEXT, 822) - GL_STUB(glGetVertexAttribIivEXT, 823) - GL_STUB(glGetVertexAttribIuivEXT, 824) - GL_STUB(glUniform1uiEXT, 825) - GL_STUB(glUniform1uivEXT, 826) - GL_STUB(glUniform2uiEXT, 827) - GL_STUB(glUniform2uivEXT, 828) - GL_STUB(glUniform3uiEXT, 829) - GL_STUB(glUniform3uivEXT, 830) - GL_STUB(glUniform4uiEXT, 831) - GL_STUB(glUniform4uivEXT, 832) - GL_STUB(glVertexAttribI1iEXT, 833) - GL_STUB(glVertexAttribI1ivEXT, 834) - GL_STUB(glVertexAttribI1uiEXT, 835) - GL_STUB(glVertexAttribI1uivEXT, 836) - GL_STUB(glVertexAttribI2iEXT, 837) - GL_STUB(glVertexAttribI2ivEXT, 838) - GL_STUB(glVertexAttribI2uiEXT, 839) - GL_STUB(glVertexAttribI2uivEXT, 840) - GL_STUB(glVertexAttribI3iEXT, 841) - GL_STUB(glVertexAttribI3ivEXT, 842) - GL_STUB(glVertexAttribI3uiEXT, 843) - GL_STUB(glVertexAttribI3uivEXT, 844) - GL_STUB(glVertexAttribI4bvEXT, 845) - GL_STUB(glVertexAttribI4iEXT, 846) - GL_STUB(glVertexAttribI4ivEXT, 847) - GL_STUB(glVertexAttribI4svEXT, 848) - GL_STUB(glVertexAttribI4ubvEXT, 849) - GL_STUB(glVertexAttribI4uiEXT, 850) - GL_STUB(glVertexAttribI4uivEXT, 851) - GL_STUB(glVertexAttribI4usvEXT, 852) - GL_STUB(glVertexAttribIPointerEXT, 853) - GL_STUB(glFramebufferTextureLayerEXT, 854) - GL_STUB(glColorMaskIndexedEXT, 855) - GL_STUB(glDisableIndexedEXT, 856) - GL_STUB(glEnableIndexedEXT, 857) - GL_STUB(glGetBooleanIndexedvEXT, 858) - GL_STUB(glGetIntegerIndexedvEXT, 859) - GL_STUB(glIsEnabledIndexedEXT, 860) - GL_STUB(glClearColorIiEXT, 861) - GL_STUB(glClearColorIuiEXT, 862) - GL_STUB(glGetTexParameterIivEXT, 863) - GL_STUB(glGetTexParameterIuivEXT, 864) - GL_STUB(glTexParameterIivEXT, 865) - GL_STUB(glTexParameterIuivEXT, 866) - GL_STUB(glBeginConditionalRenderNV, 867) - GL_STUB(glEndConditionalRenderNV, 868) - GL_STUB(glBeginTransformFeedbackEXT, 869) - GL_STUB(glBindBufferBaseEXT, 870) - GL_STUB(glBindBufferOffsetEXT, 871) - GL_STUB(glBindBufferRangeEXT, 872) - GL_STUB(glEndTransformFeedbackEXT, 873) - GL_STUB(glGetTransformFeedbackVaryingEXT, 874) - GL_STUB(glTransformFeedbackVaryingsEXT, 875) - GL_STUB(glProvokingVertexEXT, 876) - GL_STUB(gl_dispatch_stub_877, 877) - HIDDEN(gl_dispatch_stub_877) + GL_STUB(gl_dispatch_stub_820, 820) + HIDDEN(gl_dispatch_stub_820) + GL_STUB(glBindFragDataLocationEXT, 821) + GL_STUB(glGetFragDataLocationEXT, 822) + GL_STUB(glGetUniformuivEXT, 823) + GL_STUB(glGetVertexAttribIivEXT, 824) + GL_STUB(glGetVertexAttribIuivEXT, 825) + GL_STUB(glUniform1uiEXT, 826) + GL_STUB(glUniform1uivEXT, 827) + GL_STUB(glUniform2uiEXT, 828) + GL_STUB(glUniform2uivEXT, 829) + GL_STUB(glUniform3uiEXT, 830) + GL_STUB(glUniform3uivEXT, 831) + GL_STUB(glUniform4uiEXT, 832) + GL_STUB(glUniform4uivEXT, 833) + GL_STUB(glVertexAttribI1iEXT, 834) + GL_STUB(glVertexAttribI1ivEXT, 835) + GL_STUB(glVertexAttribI1uiEXT, 836) + GL_STUB(glVertexAttribI1uivEXT, 837) + GL_STUB(glVertexAttribI2iEXT, 838) + GL_STUB(glVertexAttribI2ivEXT, 839) + GL_STUB(glVertexAttribI2uiEXT, 840) + GL_STUB(glVertexAttribI2uivEXT, 841) + GL_STUB(glVertexAttribI3iEXT, 842) + GL_STUB(glVertexAttribI3ivEXT, 843) + GL_STUB(glVertexAttribI3uiEXT, 844) + GL_STUB(glVertexAttribI3uivEXT, 845) + GL_STUB(glVertexAttribI4bvEXT, 846) + GL_STUB(glVertexAttribI4iEXT, 847) + GL_STUB(glVertexAttribI4ivEXT, 848) + GL_STUB(glVertexAttribI4svEXT, 849) + GL_STUB(glVertexAttribI4ubvEXT, 850) + GL_STUB(glVertexAttribI4uiEXT, 851) + GL_STUB(glVertexAttribI4uivEXT, 852) + GL_STUB(glVertexAttribI4usvEXT, 853) + GL_STUB(glVertexAttribIPointerEXT, 854) + GL_STUB(glFramebufferTextureLayerEXT, 855) + GL_STUB(glColorMaskIndexedEXT, 856) + GL_STUB(glDisableIndexedEXT, 857) + GL_STUB(glEnableIndexedEXT, 858) + GL_STUB(glGetBooleanIndexedvEXT, 859) + GL_STUB(glGetIntegerIndexedvEXT, 860) + GL_STUB(glIsEnabledIndexedEXT, 861) + GL_STUB(glClearColorIiEXT, 862) + GL_STUB(glClearColorIuiEXT, 863) + GL_STUB(glGetTexParameterIivEXT, 864) + GL_STUB(glGetTexParameterIuivEXT, 865) + GL_STUB(glTexParameterIivEXT, 866) + GL_STUB(glTexParameterIuivEXT, 867) + GL_STUB(glBeginConditionalRenderNV, 868) + GL_STUB(glEndConditionalRenderNV, 869) + GL_STUB(glBeginTransformFeedbackEXT, 870) + GL_STUB(glBindBufferBaseEXT, 871) + GL_STUB(glBindBufferOffsetEXT, 872) + GL_STUB(glBindBufferRangeEXT, 873) + GL_STUB(glEndTransformFeedbackEXT, 874) + GL_STUB(glGetTransformFeedbackVaryingEXT, 875) + GL_STUB(glTransformFeedbackVaryingsEXT, 876) + GL_STUB(glProvokingVertexEXT, 877) GL_STUB(gl_dispatch_stub_878, 878) HIDDEN(gl_dispatch_stub_878) - GL_STUB(glGetObjectParameterivAPPLE, 879) - GL_STUB(glObjectPurgeableAPPLE, 880) - GL_STUB(glObjectUnpurgeableAPPLE, 881) - GL_STUB(glActiveProgramEXT, 882) - GL_STUB(glCreateShaderProgramEXT, 883) - GL_STUB(glUseShaderProgramEXT, 884) - GL_STUB(glTextureBarrierNV, 885) - GL_STUB(gl_dispatch_stub_886, 886) - HIDDEN(gl_dispatch_stub_886) + GL_STUB(gl_dispatch_stub_879, 879) + HIDDEN(gl_dispatch_stub_879) + GL_STUB(glGetObjectParameterivAPPLE, 880) + GL_STUB(glObjectPurgeableAPPLE, 881) + GL_STUB(glObjectUnpurgeableAPPLE, 882) + GL_STUB(glActiveProgramEXT, 883) + GL_STUB(glCreateShaderProgramEXT, 884) + GL_STUB(glUseShaderProgramEXT, 885) + GL_STUB(glTextureBarrierNV, 886) GL_STUB(gl_dispatch_stub_887, 887) HIDDEN(gl_dispatch_stub_887) GL_STUB(gl_dispatch_stub_888, 888) @@ -1121,8 +1120,10 @@ gl_dispatch_functions_start: HIDDEN(gl_dispatch_stub_889) GL_STUB(gl_dispatch_stub_890, 890) HIDDEN(gl_dispatch_stub_890) - GL_STUB(glEGLImageTargetRenderbufferStorageOES, 891) - GL_STUB(glEGLImageTargetTexture2DOES, 892) + GL_STUB(gl_dispatch_stub_891, 891) + HIDDEN(gl_dispatch_stub_891) + GL_STUB(glEGLImageTargetRenderbufferStorageOES, 892) + GL_STUB(glEGLImageTargetTexture2DOES, 893) GL_STUB_ALIAS(glArrayElementEXT, glArrayElement) GL_STUB_ALIAS(glBindTextureEXT, glBindTexture) GL_STUB_ALIAS(glDrawArraysEXT, glDrawArrays) diff --git a/src/mapi/glapi/glapi_x86-64.S b/src/mapi/glapi/glapi_x86-64.S index d82eb1558bb..b588e64be85 100644 --- a/src/mapi/glapi/glapi_x86-64.S +++ b/src/mapi/glapi/glapi_x86-64.S @@ -21954,16 +21954,20 @@ GL_PREFIX(MapBufferRange): .size GL_PREFIX(MapBufferRange), .-GL_PREFIX(MapBufferRange) .p2align 4,,15 - .globl GL_PREFIX(BindVertexArray) - .type GL_PREFIX(BindVertexArray), @function -GL_PREFIX(BindVertexArray): + .globl GL_PREFIX(TexBufferARB) + .type GL_PREFIX(TexBufferARB), @function +GL_PREFIX(TexBufferARB): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 4656(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi + pushq %rsi + pushq %rdx call _x86_64_get_dispatch@PLT + popq %rdx + popq %rsi popq %rdi movq 4656(%rax), %r11 jmp *%r11 @@ -21975,10 +21979,43 @@ GL_PREFIX(BindVertexArray): jmp *%r11 1: pushq %rdi + pushq %rsi + pushq %rdx call _glapi_get_dispatch + popq %rdx + popq %rsi popq %rdi movq 4656(%rax), %r11 jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(TexBufferARB), .-GL_PREFIX(TexBufferARB) + + .p2align 4,,15 + .globl GL_PREFIX(BindVertexArray) + .type GL_PREFIX(BindVertexArray), @function +GL_PREFIX(BindVertexArray): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 4664(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + call _x86_64_get_dispatch@PLT + popq %rdi + movq 4664(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 4664(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + call _glapi_get_dispatch + popq %rdi + movq 4664(%rax), %r11 + jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindVertexArray), .-GL_PREFIX(BindVertexArray) @@ -21988,7 +22025,7 @@ GL_PREFIX(BindVertexArray): GL_PREFIX(GenVertexArrays): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4664(%rax), %r11 + movq 4672(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -21998,13 +22035,13 @@ GL_PREFIX(GenVertexArrays): popq %rbp popq %rsi popq %rdi - movq 4664(%rax), %r11 + movq 4672(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4664(%rax), %r11 + movq 4672(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22014,7 +22051,7 @@ GL_PREFIX(GenVertexArrays): popq %rbp popq %rsi popq %rdi - movq 4664(%rax), %r11 + movq 4672(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GenVertexArrays), .-GL_PREFIX(GenVertexArrays) @@ -22025,7 +22062,7 @@ GL_PREFIX(GenVertexArrays): GL_PREFIX(CopyBufferSubData): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4672(%rax), %r11 + movq 4680(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22039,13 +22076,13 @@ GL_PREFIX(CopyBufferSubData): popq %rdx popq %rsi popq %rdi - movq 4672(%rax), %r11 + movq 4680(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4672(%rax), %r11 + movq 4680(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22059,7 +22096,7 @@ GL_PREFIX(CopyBufferSubData): popq %rdx popq %rsi popq %rdi - movq 4672(%rax), %r11 + movq 4680(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CopyBufferSubData), .-GL_PREFIX(CopyBufferSubData) @@ -22070,7 +22107,7 @@ GL_PREFIX(CopyBufferSubData): GL_PREFIX(ClientWaitSync): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4680(%rax), %r11 + movq 4688(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22080,13 +22117,13 @@ GL_PREFIX(ClientWaitSync): popq %rdx popq %rsi popq %rdi - movq 4680(%rax), %r11 + movq 4688(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4680(%rax), %r11 + movq 4688(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22096,7 +22133,7 @@ GL_PREFIX(ClientWaitSync): popq %rdx popq %rsi popq %rdi - movq 4680(%rax), %r11 + movq 4688(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ClientWaitSync), .-GL_PREFIX(ClientWaitSync) @@ -22107,25 +22144,25 @@ GL_PREFIX(ClientWaitSync): GL_PREFIX(DeleteSync): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4688(%rax), %r11 + movq 4696(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 4688(%rax), %r11 + movq 4696(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4688(%rax), %r11 + movq 4696(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 4688(%rax), %r11 + movq 4696(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DeleteSync), .-GL_PREFIX(DeleteSync) @@ -22136,7 +22173,7 @@ GL_PREFIX(DeleteSync): GL_PREFIX(FenceSync): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4696(%rax), %r11 + movq 4704(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22146,13 +22183,13 @@ GL_PREFIX(FenceSync): popq %rbp popq %rsi popq %rdi - movq 4696(%rax), %r11 + movq 4704(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4696(%rax), %r11 + movq 4704(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22162,7 +22199,7 @@ GL_PREFIX(FenceSync): popq %rbp popq %rsi popq %rdi - movq 4696(%rax), %r11 + movq 4704(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FenceSync), .-GL_PREFIX(FenceSync) @@ -22173,7 +22210,7 @@ GL_PREFIX(FenceSync): GL_PREFIX(GetInteger64v): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4704(%rax), %r11 + movq 4712(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22183,13 +22220,13 @@ GL_PREFIX(GetInteger64v): popq %rbp popq %rsi popq %rdi - movq 4704(%rax), %r11 + movq 4712(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4704(%rax), %r11 + movq 4712(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22199,7 +22236,7 @@ GL_PREFIX(GetInteger64v): popq %rbp popq %rsi popq %rdi - movq 4704(%rax), %r11 + movq 4712(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetInteger64v), .-GL_PREFIX(GetInteger64v) @@ -22210,7 +22247,7 @@ GL_PREFIX(GetInteger64v): GL_PREFIX(GetSynciv): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4712(%rax), %r11 + movq 4720(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22224,13 +22261,13 @@ GL_PREFIX(GetSynciv): popq %rdx popq %rsi popq %rdi - movq 4712(%rax), %r11 + movq 4720(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4712(%rax), %r11 + movq 4720(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22244,7 +22281,7 @@ GL_PREFIX(GetSynciv): popq %rdx popq %rsi popq %rdi - movq 4712(%rax), %r11 + movq 4720(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetSynciv), .-GL_PREFIX(GetSynciv) @@ -22255,25 +22292,25 @@ GL_PREFIX(GetSynciv): GL_PREFIX(IsSync): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4720(%rax), %r11 + movq 4728(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 4720(%rax), %r11 + movq 4728(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4720(%rax), %r11 + movq 4728(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 4720(%rax), %r11 + movq 4728(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(IsSync), .-GL_PREFIX(IsSync) @@ -22284,7 +22321,7 @@ GL_PREFIX(IsSync): GL_PREFIX(WaitSync): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4728(%rax), %r11 + movq 4736(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22294,13 +22331,13 @@ GL_PREFIX(WaitSync): popq %rdx popq %rsi popq %rdi - movq 4728(%rax), %r11 + movq 4736(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4728(%rax), %r11 + movq 4736(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22310,7 +22347,7 @@ GL_PREFIX(WaitSync): popq %rdx popq %rsi popq %rdi - movq 4728(%rax), %r11 + movq 4736(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WaitSync), .-GL_PREFIX(WaitSync) @@ -22321,7 +22358,7 @@ GL_PREFIX(WaitSync): GL_PREFIX(DrawElementsBaseVertex): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4736(%rax), %r11 + movq 4744(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22335,13 +22372,13 @@ GL_PREFIX(DrawElementsBaseVertex): popq %rdx popq %rsi popq %rdi - movq 4736(%rax), %r11 + movq 4744(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4736(%rax), %r11 + movq 4744(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22355,7 +22392,7 @@ GL_PREFIX(DrawElementsBaseVertex): popq %rdx popq %rsi popq %rdi - movq 4736(%rax), %r11 + movq 4744(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DrawElementsBaseVertex), .-GL_PREFIX(DrawElementsBaseVertex) @@ -22366,7 +22403,7 @@ GL_PREFIX(DrawElementsBaseVertex): GL_PREFIX(DrawRangeElementsBaseVertex): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4744(%rax), %r11 + movq 4752(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22384,13 +22421,13 @@ GL_PREFIX(DrawRangeElementsBaseVertex): popq %rdx popq %rsi popq %rdi - movq 4744(%rax), %r11 + movq 4752(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4744(%rax), %r11 + movq 4752(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22408,7 +22445,7 @@ GL_PREFIX(DrawRangeElementsBaseVertex): popq %rdx popq %rsi popq %rdi - movq 4744(%rax), %r11 + movq 4752(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DrawRangeElementsBaseVertex), .-GL_PREFIX(DrawRangeElementsBaseVertex) @@ -22419,7 +22456,7 @@ GL_PREFIX(DrawRangeElementsBaseVertex): GL_PREFIX(MultiDrawElementsBaseVertex): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4752(%rax), %r11 + movq 4760(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22437,13 +22474,13 @@ GL_PREFIX(MultiDrawElementsBaseVertex): popq %rdx popq %rsi popq %rdi - movq 4752(%rax), %r11 + movq 4760(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4752(%rax), %r11 + movq 4760(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22461,7 +22498,7 @@ GL_PREFIX(MultiDrawElementsBaseVertex): popq %rdx popq %rsi popq %rdi - movq 4752(%rax), %r11 + movq 4760(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(MultiDrawElementsBaseVertex), .-GL_PREFIX(MultiDrawElementsBaseVertex) @@ -22472,7 +22509,7 @@ GL_PREFIX(MultiDrawElementsBaseVertex): GL_PREFIX(BlendEquationSeparateiARB): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4760(%rax), %r11 + movq 4768(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22482,13 +22519,13 @@ GL_PREFIX(BlendEquationSeparateiARB): popq %rdx popq %rsi popq %rdi - movq 4760(%rax), %r11 + movq 4768(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4760(%rax), %r11 + movq 4768(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22498,7 +22535,7 @@ GL_PREFIX(BlendEquationSeparateiARB): popq %rdx popq %rsi popq %rdi - movq 4760(%rax), %r11 + movq 4768(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BlendEquationSeparateiARB), .-GL_PREFIX(BlendEquationSeparateiARB) @@ -22509,7 +22546,7 @@ GL_PREFIX(BlendEquationSeparateiARB): GL_PREFIX(BlendEquationiARB): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4768(%rax), %r11 + movq 4776(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22519,13 +22556,13 @@ GL_PREFIX(BlendEquationiARB): popq %rbp popq %rsi popq %rdi - movq 4768(%rax), %r11 + movq 4776(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4768(%rax), %r11 + movq 4776(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22535,7 +22572,7 @@ GL_PREFIX(BlendEquationiARB): popq %rbp popq %rsi popq %rdi - movq 4768(%rax), %r11 + movq 4776(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BlendEquationiARB), .-GL_PREFIX(BlendEquationiARB) @@ -22546,7 +22583,7 @@ GL_PREFIX(BlendEquationiARB): GL_PREFIX(BlendFuncSeparateiARB): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4776(%rax), %r11 + movq 4784(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22560,13 +22597,13 @@ GL_PREFIX(BlendFuncSeparateiARB): popq %rdx popq %rsi popq %rdi - movq 4776(%rax), %r11 + movq 4784(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4776(%rax), %r11 + movq 4784(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22580,7 +22617,7 @@ GL_PREFIX(BlendFuncSeparateiARB): popq %rdx popq %rsi popq %rdi - movq 4776(%rax), %r11 + movq 4784(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BlendFuncSeparateiARB), .-GL_PREFIX(BlendFuncSeparateiARB) @@ -22591,7 +22628,7 @@ GL_PREFIX(BlendFuncSeparateiARB): GL_PREFIX(BlendFunciARB): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4784(%rax), %r11 + movq 4792(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22601,13 +22638,13 @@ GL_PREFIX(BlendFunciARB): popq %rdx popq %rsi popq %rdi - movq 4784(%rax), %r11 + movq 4792(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4784(%rax), %r11 + movq 4792(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22617,7 +22654,7 @@ GL_PREFIX(BlendFunciARB): popq %rdx popq %rsi popq %rdi - movq 4784(%rax), %r11 + movq 4792(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BlendFunciARB), .-GL_PREFIX(BlendFunciARB) @@ -22628,7 +22665,7 @@ GL_PREFIX(BlendFunciARB): GL_PREFIX(BindTransformFeedback): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4792(%rax), %r11 + movq 4800(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22638,13 +22675,13 @@ GL_PREFIX(BindTransformFeedback): popq %rbp popq %rsi popq %rdi - movq 4792(%rax), %r11 + movq 4800(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4792(%rax), %r11 + movq 4800(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22654,7 +22691,7 @@ GL_PREFIX(BindTransformFeedback): popq %rbp popq %rsi popq %rdi - movq 4792(%rax), %r11 + movq 4800(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindTransformFeedback), .-GL_PREFIX(BindTransformFeedback) @@ -22665,7 +22702,7 @@ GL_PREFIX(BindTransformFeedback): GL_PREFIX(DeleteTransformFeedbacks): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4800(%rax), %r11 + movq 4808(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22675,13 +22712,13 @@ GL_PREFIX(DeleteTransformFeedbacks): popq %rbp popq %rsi popq %rdi - movq 4800(%rax), %r11 + movq 4808(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4800(%rax), %r11 + movq 4808(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22691,7 +22728,7 @@ GL_PREFIX(DeleteTransformFeedbacks): popq %rbp popq %rsi popq %rdi - movq 4800(%rax), %r11 + movq 4808(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DeleteTransformFeedbacks), .-GL_PREFIX(DeleteTransformFeedbacks) @@ -22702,7 +22739,7 @@ GL_PREFIX(DeleteTransformFeedbacks): GL_PREFIX(DrawTransformFeedback): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4808(%rax), %r11 + movq 4816(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22712,13 +22749,13 @@ GL_PREFIX(DrawTransformFeedback): popq %rbp popq %rsi popq %rdi - movq 4808(%rax), %r11 + movq 4816(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4808(%rax), %r11 + movq 4816(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22728,7 +22765,7 @@ GL_PREFIX(DrawTransformFeedback): popq %rbp popq %rsi popq %rdi - movq 4808(%rax), %r11 + movq 4816(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DrawTransformFeedback), .-GL_PREFIX(DrawTransformFeedback) @@ -22739,7 +22776,7 @@ GL_PREFIX(DrawTransformFeedback): GL_PREFIX(GenTransformFeedbacks): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4816(%rax), %r11 + movq 4824(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22749,13 +22786,13 @@ GL_PREFIX(GenTransformFeedbacks): popq %rbp popq %rsi popq %rdi - movq 4816(%rax), %r11 + movq 4824(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4816(%rax), %r11 + movq 4824(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22765,7 +22802,7 @@ GL_PREFIX(GenTransformFeedbacks): popq %rbp popq %rsi popq %rdi - movq 4816(%rax), %r11 + movq 4824(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GenTransformFeedbacks), .-GL_PREFIX(GenTransformFeedbacks) @@ -22776,25 +22813,25 @@ GL_PREFIX(GenTransformFeedbacks): GL_PREFIX(IsTransformFeedback): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4824(%rax), %r11 + movq 4832(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 4824(%rax), %r11 + movq 4832(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4824(%rax), %r11 + movq 4832(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 4824(%rax), %r11 + movq 4832(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(IsTransformFeedback), .-GL_PREFIX(IsTransformFeedback) @@ -22805,25 +22842,25 @@ GL_PREFIX(IsTransformFeedback): GL_PREFIX(PauseTransformFeedback): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4832(%rax), %r11 + movq 4840(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 4832(%rax), %r11 + movq 4840(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4832(%rax), %r11 + movq 4840(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 4832(%rax), %r11 + movq 4840(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PauseTransformFeedback), .-GL_PREFIX(PauseTransformFeedback) @@ -22834,25 +22871,25 @@ GL_PREFIX(PauseTransformFeedback): GL_PREFIX(ResumeTransformFeedback): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4840(%rax), %r11 + movq 4848(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 4840(%rax), %r11 + movq 4848(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4840(%rax), %r11 + movq 4848(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 4840(%rax), %r11 + movq 4848(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ResumeTransformFeedback), .-GL_PREFIX(ResumeTransformFeedback) @@ -22863,25 +22900,25 @@ GL_PREFIX(ResumeTransformFeedback): GL_PREFIX(ClearDepthf): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4848(%rax), %r11 + movq 4856(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 4848(%rax), %r11 + movq 4856(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4848(%rax), %r11 + movq 4856(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 4848(%rax), %r11 + movq 4856(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ClearDepthf), .-GL_PREFIX(ClearDepthf) @@ -22892,7 +22929,7 @@ GL_PREFIX(ClearDepthf): GL_PREFIX(DepthRangef): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4856(%rax), %r11 + movq 4864(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22902,13 +22939,13 @@ GL_PREFIX(DepthRangef): popq %rbp popq %rsi popq %rdi - movq 4856(%rax), %r11 + movq 4864(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4856(%rax), %r11 + movq 4864(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22918,7 +22955,7 @@ GL_PREFIX(DepthRangef): popq %rbp popq %rsi popq %rdi - movq 4856(%rax), %r11 + movq 4864(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DepthRangef), .-GL_PREFIX(DepthRangef) @@ -22929,7 +22966,7 @@ GL_PREFIX(DepthRangef): GL_PREFIX(GetShaderPrecisionFormat): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4864(%rax), %r11 + movq 4872(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22943,13 +22980,13 @@ GL_PREFIX(GetShaderPrecisionFormat): popq %rdx popq %rsi popq %rdi - movq 4864(%rax), %r11 + movq 4872(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4864(%rax), %r11 + movq 4872(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22963,7 +23000,7 @@ GL_PREFIX(GetShaderPrecisionFormat): popq %rdx popq %rsi popq %rdi - movq 4864(%rax), %r11 + movq 4872(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetShaderPrecisionFormat), .-GL_PREFIX(GetShaderPrecisionFormat) @@ -22974,25 +23011,25 @@ GL_PREFIX(GetShaderPrecisionFormat): GL_PREFIX(ReleaseShaderCompiler): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4872(%rax), %r11 + movq 4880(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 4872(%rax), %r11 + movq 4880(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4872(%rax), %r11 + movq 4880(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 4872(%rax), %r11 + movq 4880(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ReleaseShaderCompiler), .-GL_PREFIX(ReleaseShaderCompiler) @@ -23003,7 +23040,7 @@ GL_PREFIX(ReleaseShaderCompiler): GL_PREFIX(ShaderBinary): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4880(%rax), %r11 + movq 4888(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23017,13 +23054,13 @@ GL_PREFIX(ShaderBinary): popq %rdx popq %rsi popq %rdi - movq 4880(%rax), %r11 + movq 4888(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4880(%rax), %r11 + movq 4888(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23037,7 +23074,7 @@ GL_PREFIX(ShaderBinary): popq %rdx popq %rsi popq %rdi - movq 4880(%rax), %r11 + movq 4888(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ShaderBinary), .-GL_PREFIX(ShaderBinary) @@ -23048,7 +23085,7 @@ GL_PREFIX(ShaderBinary): GL_PREFIX(PolygonOffsetEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4888(%rax), %r11 + movq 4896(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -23058,13 +23095,13 @@ GL_PREFIX(PolygonOffsetEXT): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 4888(%rax), %r11 + movq 4896(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4888(%rax), %r11 + movq 4896(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -23074,49 +23111,11 @@ GL_PREFIX(PolygonOffsetEXT): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 4888(%rax), %r11 + movq 4896(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PolygonOffsetEXT), .-GL_PREFIX(PolygonOffsetEXT) - .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_612) - .type GL_PREFIX(_dispatch_stub_612), @function - HIDDEN(GL_PREFIX(_dispatch_stub_612)) -GL_PREFIX(_dispatch_stub_612): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 4896(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rdi - pushq %rsi - pushq %rbp - call _x86_64_get_dispatch@PLT - popq %rbp - popq %rsi - popq %rdi - movq 4896(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 4896(%rax), %r11 - jmp *%r11 -1: - pushq %rdi - pushq %rsi - pushq %rbp - call _glapi_get_dispatch - popq %rbp - popq %rsi - popq %rdi - movq 4896(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_612), .-GL_PREFIX(_dispatch_stub_612) - .p2align 4,,15 .globl GL_PREFIX(_dispatch_stub_613) .type GL_PREFIX(_dispatch_stub_613), @function @@ -23165,13 +23164,13 @@ GL_PREFIX(_dispatch_stub_614): movq 4912(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) - subq $24, %rsp - movq %rdi, (%rsp) - movq %xmm0, 8(%rsp) + pushq %rdi + pushq %rsi + pushq %rbp call _x86_64_get_dispatch@PLT - movq 8(%rsp), %xmm0 - movq (%rsp), %rdi - addq $24, %rsp + popq %rbp + popq %rsi + popq %rdi movq 4912(%rax), %r11 jmp *%r11 #else @@ -23181,13 +23180,13 @@ GL_PREFIX(_dispatch_stub_614): movq 4912(%rax), %r11 jmp *%r11 1: - subq $24, %rsp - movq %rdi, (%rsp) - movq %xmm0, 8(%rsp) + pushq %rdi + pushq %rsi + pushq %rbp call _glapi_get_dispatch - movq 8(%rsp), %xmm0 - movq (%rsp), %rdi - addq $24, %rsp + popq %rbp + popq %rsi + popq %rdi movq 4912(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ @@ -23203,13 +23202,13 @@ GL_PREFIX(_dispatch_stub_615): movq 4920(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) - pushq %rdi - pushq %rsi - pushq %rbp + subq $24, %rsp + movq %rdi, (%rsp) + movq %xmm0, 8(%rsp) call _x86_64_get_dispatch@PLT - popq %rbp - popq %rsi - popq %rdi + movq 8(%rsp), %xmm0 + movq (%rsp), %rdi + addq $24, %rsp movq 4920(%rax), %r11 jmp *%r11 #else @@ -23219,13 +23218,13 @@ GL_PREFIX(_dispatch_stub_615): movq 4920(%rax), %r11 jmp *%r11 1: - pushq %rdi - pushq %rsi - pushq %rbp + subq $24, %rsp + movq %rdi, (%rsp) + movq %xmm0, 8(%rsp) call _glapi_get_dispatch - popq %rbp - popq %rsi - popq %rdi + movq 8(%rsp), %xmm0 + movq (%rsp), %rdi + addq $24, %rsp movq 4920(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ @@ -23356,7 +23355,11 @@ GL_PREFIX(_dispatch_stub_619): jmp *%r11 #elif defined(PTHREADS) pushq %rdi + pushq %rsi + pushq %rbp call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi popq %rdi movq 4952(%rax), %r11 jmp *%r11 @@ -23368,20 +23371,54 @@ GL_PREFIX(_dispatch_stub_619): jmp *%r11 1: pushq %rdi + pushq %rsi + pushq %rbp call _glapi_get_dispatch + popq %rbp + popq %rsi popq %rdi movq 4952(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(_dispatch_stub_619), .-GL_PREFIX(_dispatch_stub_619) + .p2align 4,,15 + .globl GL_PREFIX(_dispatch_stub_620) + .type GL_PREFIX(_dispatch_stub_620), @function + HIDDEN(GL_PREFIX(_dispatch_stub_620)) +GL_PREFIX(_dispatch_stub_620): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 4960(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + call _x86_64_get_dispatch@PLT + popq %rdi + movq 4960(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 4960(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + call _glapi_get_dispatch + popq %rdi + movq 4960(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_620), .-GL_PREFIX(_dispatch_stub_620) + .p2align 4,,15 .globl GL_PREFIX(ColorPointerEXT) .type GL_PREFIX(ColorPointerEXT), @function GL_PREFIX(ColorPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4960(%rax), %r11 + movq 4968(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23395,13 +23432,13 @@ GL_PREFIX(ColorPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4960(%rax), %r11 + movq 4968(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4960(%rax), %r11 + movq 4968(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23415,7 +23452,7 @@ GL_PREFIX(ColorPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4960(%rax), %r11 + movq 4968(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ColorPointerEXT), .-GL_PREFIX(ColorPointerEXT) @@ -23426,7 +23463,7 @@ GL_PREFIX(ColorPointerEXT): GL_PREFIX(EdgeFlagPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4968(%rax), %r11 + movq 4976(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23436,13 +23473,13 @@ GL_PREFIX(EdgeFlagPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4968(%rax), %r11 + movq 4976(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4968(%rax), %r11 + movq 4976(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23452,7 +23489,7 @@ GL_PREFIX(EdgeFlagPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4968(%rax), %r11 + movq 4976(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EdgeFlagPointerEXT), .-GL_PREFIX(EdgeFlagPointerEXT) @@ -23463,7 +23500,7 @@ GL_PREFIX(EdgeFlagPointerEXT): GL_PREFIX(IndexPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4976(%rax), %r11 + movq 4984(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23477,13 +23514,13 @@ GL_PREFIX(IndexPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4976(%rax), %r11 + movq 4984(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4976(%rax), %r11 + movq 4984(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23497,7 +23534,7 @@ GL_PREFIX(IndexPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4976(%rax), %r11 + movq 4984(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(IndexPointerEXT), .-GL_PREFIX(IndexPointerEXT) @@ -23508,7 +23545,7 @@ GL_PREFIX(IndexPointerEXT): GL_PREFIX(NormalPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4984(%rax), %r11 + movq 4992(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23522,13 +23559,13 @@ GL_PREFIX(NormalPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4984(%rax), %r11 + movq 4992(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4984(%rax), %r11 + movq 4992(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23542,7 +23579,7 @@ GL_PREFIX(NormalPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4984(%rax), %r11 + movq 4992(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(NormalPointerEXT), .-GL_PREFIX(NormalPointerEXT) @@ -23553,7 +23590,7 @@ GL_PREFIX(NormalPointerEXT): GL_PREFIX(TexCoordPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4992(%rax), %r11 + movq 5000(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23567,13 +23604,13 @@ GL_PREFIX(TexCoordPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4992(%rax), %r11 + movq 5000(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4992(%rax), %r11 + movq 5000(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23587,7 +23624,7 @@ GL_PREFIX(TexCoordPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4992(%rax), %r11 + movq 5000(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TexCoordPointerEXT), .-GL_PREFIX(TexCoordPointerEXT) @@ -23598,7 +23635,7 @@ GL_PREFIX(TexCoordPointerEXT): GL_PREFIX(VertexPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5000(%rax), %r11 + movq 5008(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23612,13 +23649,13 @@ GL_PREFIX(VertexPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5000(%rax), %r11 + movq 5008(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5000(%rax), %r11 + movq 5008(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23632,7 +23669,7 @@ GL_PREFIX(VertexPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5000(%rax), %r11 + movq 5008(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexPointerEXT), .-GL_PREFIX(VertexPointerEXT) @@ -23643,7 +23680,7 @@ GL_PREFIX(VertexPointerEXT): GL_PREFIX(PointParameterfEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5008(%rax), %r11 + movq 5016(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -23653,13 +23690,13 @@ GL_PREFIX(PointParameterfEXT): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5008(%rax), %r11 + movq 5016(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5008(%rax), %r11 + movq 5016(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -23669,7 +23706,7 @@ GL_PREFIX(PointParameterfEXT): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5008(%rax), %r11 + movq 5016(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PointParameterfEXT), .-GL_PREFIX(PointParameterfEXT) @@ -23680,7 +23717,7 @@ GL_PREFIX(PointParameterfEXT): GL_PREFIX(PointParameterfvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5016(%rax), %r11 + movq 5024(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23690,13 +23727,13 @@ GL_PREFIX(PointParameterfvEXT): popq %rbp popq %rsi popq %rdi - movq 5016(%rax), %r11 + movq 5024(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5016(%rax), %r11 + movq 5024(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23706,7 +23743,7 @@ GL_PREFIX(PointParameterfvEXT): popq %rbp popq %rsi popq %rdi - movq 5016(%rax), %r11 + movq 5024(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PointParameterfvEXT), .-GL_PREFIX(PointParameterfvEXT) @@ -23717,7 +23754,7 @@ GL_PREFIX(PointParameterfvEXT): GL_PREFIX(LockArraysEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5024(%rax), %r11 + movq 5032(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23727,13 +23764,13 @@ GL_PREFIX(LockArraysEXT): popq %rbp popq %rsi popq %rdi - movq 5024(%rax), %r11 + movq 5032(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5024(%rax), %r11 + movq 5032(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23743,7 +23780,7 @@ GL_PREFIX(LockArraysEXT): popq %rbp popq %rsi popq %rdi - movq 5024(%rax), %r11 + movq 5032(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(LockArraysEXT), .-GL_PREFIX(LockArraysEXT) @@ -23754,25 +23791,25 @@ GL_PREFIX(LockArraysEXT): GL_PREFIX(UnlockArraysEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5032(%rax), %r11 + movq 5040(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 5032(%rax), %r11 + movq 5040(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5032(%rax), %r11 + movq 5040(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 5032(%rax), %r11 + movq 5040(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(UnlockArraysEXT), .-GL_PREFIX(UnlockArraysEXT) @@ -23783,7 +23820,7 @@ GL_PREFIX(UnlockArraysEXT): GL_PREFIX(SecondaryColor3bEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5040(%rax), %r11 + movq 5048(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23793,13 +23830,13 @@ GL_PREFIX(SecondaryColor3bEXT): popq %rdx popq %rsi popq %rdi - movq 5040(%rax), %r11 + movq 5048(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5040(%rax), %r11 + movq 5048(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23809,7 +23846,7 @@ GL_PREFIX(SecondaryColor3bEXT): popq %rdx popq %rsi popq %rdi - movq 5040(%rax), %r11 + movq 5048(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3bEXT), .-GL_PREFIX(SecondaryColor3bEXT) @@ -23820,25 +23857,25 @@ GL_PREFIX(SecondaryColor3bEXT): GL_PREFIX(SecondaryColor3bvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5048(%rax), %r11 + movq 5056(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5048(%rax), %r11 + movq 5056(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5048(%rax), %r11 + movq 5056(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5048(%rax), %r11 + movq 5056(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3bvEXT), .-GL_PREFIX(SecondaryColor3bvEXT) @@ -23849,7 +23886,7 @@ GL_PREFIX(SecondaryColor3bvEXT): GL_PREFIX(SecondaryColor3dEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5056(%rax), %r11 + movq 5064(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -23861,13 +23898,13 @@ GL_PREFIX(SecondaryColor3dEXT): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5056(%rax), %r11 + movq 5064(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5056(%rax), %r11 + movq 5064(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -23879,7 +23916,7 @@ GL_PREFIX(SecondaryColor3dEXT): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5056(%rax), %r11 + movq 5064(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3dEXT), .-GL_PREFIX(SecondaryColor3dEXT) @@ -23890,25 +23927,25 @@ GL_PREFIX(SecondaryColor3dEXT): GL_PREFIX(SecondaryColor3dvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5064(%rax), %r11 + movq 5072(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5064(%rax), %r11 + movq 5072(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5064(%rax), %r11 + movq 5072(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5064(%rax), %r11 + movq 5072(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3dvEXT), .-GL_PREFIX(SecondaryColor3dvEXT) @@ -23919,7 +23956,7 @@ GL_PREFIX(SecondaryColor3dvEXT): GL_PREFIX(SecondaryColor3fEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5072(%rax), %r11 + movq 5080(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -23931,13 +23968,13 @@ GL_PREFIX(SecondaryColor3fEXT): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5072(%rax), %r11 + movq 5080(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5072(%rax), %r11 + movq 5080(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -23949,7 +23986,7 @@ GL_PREFIX(SecondaryColor3fEXT): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5072(%rax), %r11 + movq 5080(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3fEXT), .-GL_PREFIX(SecondaryColor3fEXT) @@ -23960,25 +23997,25 @@ GL_PREFIX(SecondaryColor3fEXT): GL_PREFIX(SecondaryColor3fvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5080(%rax), %r11 + movq 5088(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5080(%rax), %r11 + movq 5088(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5080(%rax), %r11 + movq 5088(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5080(%rax), %r11 + movq 5088(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3fvEXT), .-GL_PREFIX(SecondaryColor3fvEXT) @@ -23989,7 +24026,7 @@ GL_PREFIX(SecondaryColor3fvEXT): GL_PREFIX(SecondaryColor3iEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5088(%rax), %r11 + movq 5096(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23999,13 +24036,13 @@ GL_PREFIX(SecondaryColor3iEXT): popq %rdx popq %rsi popq %rdi - movq 5088(%rax), %r11 + movq 5096(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5088(%rax), %r11 + movq 5096(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24015,7 +24052,7 @@ GL_PREFIX(SecondaryColor3iEXT): popq %rdx popq %rsi popq %rdi - movq 5088(%rax), %r11 + movq 5096(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3iEXT), .-GL_PREFIX(SecondaryColor3iEXT) @@ -24026,25 +24063,25 @@ GL_PREFIX(SecondaryColor3iEXT): GL_PREFIX(SecondaryColor3ivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5096(%rax), %r11 + movq 5104(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5096(%rax), %r11 + movq 5104(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5096(%rax), %r11 + movq 5104(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5096(%rax), %r11 + movq 5104(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3ivEXT), .-GL_PREFIX(SecondaryColor3ivEXT) @@ -24055,7 +24092,7 @@ GL_PREFIX(SecondaryColor3ivEXT): GL_PREFIX(SecondaryColor3sEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5104(%rax), %r11 + movq 5112(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24065,13 +24102,13 @@ GL_PREFIX(SecondaryColor3sEXT): popq %rdx popq %rsi popq %rdi - movq 5104(%rax), %r11 + movq 5112(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5104(%rax), %r11 + movq 5112(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24081,7 +24118,7 @@ GL_PREFIX(SecondaryColor3sEXT): popq %rdx popq %rsi popq %rdi - movq 5104(%rax), %r11 + movq 5112(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3sEXT), .-GL_PREFIX(SecondaryColor3sEXT) @@ -24092,25 +24129,25 @@ GL_PREFIX(SecondaryColor3sEXT): GL_PREFIX(SecondaryColor3svEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5112(%rax), %r11 + movq 5120(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5112(%rax), %r11 + movq 5120(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5112(%rax), %r11 + movq 5120(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5112(%rax), %r11 + movq 5120(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3svEXT), .-GL_PREFIX(SecondaryColor3svEXT) @@ -24121,7 +24158,7 @@ GL_PREFIX(SecondaryColor3svEXT): GL_PREFIX(SecondaryColor3ubEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5120(%rax), %r11 + movq 5128(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24131,13 +24168,13 @@ GL_PREFIX(SecondaryColor3ubEXT): popq %rdx popq %rsi popq %rdi - movq 5120(%rax), %r11 + movq 5128(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5120(%rax), %r11 + movq 5128(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24147,7 +24184,7 @@ GL_PREFIX(SecondaryColor3ubEXT): popq %rdx popq %rsi popq %rdi - movq 5120(%rax), %r11 + movq 5128(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3ubEXT), .-GL_PREFIX(SecondaryColor3ubEXT) @@ -24158,25 +24195,25 @@ GL_PREFIX(SecondaryColor3ubEXT): GL_PREFIX(SecondaryColor3ubvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5128(%rax), %r11 + movq 5136(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5128(%rax), %r11 + movq 5136(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5128(%rax), %r11 + movq 5136(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5128(%rax), %r11 + movq 5136(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3ubvEXT), .-GL_PREFIX(SecondaryColor3ubvEXT) @@ -24187,7 +24224,7 @@ GL_PREFIX(SecondaryColor3ubvEXT): GL_PREFIX(SecondaryColor3uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5136(%rax), %r11 + movq 5144(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24197,13 +24234,13 @@ GL_PREFIX(SecondaryColor3uiEXT): popq %rdx popq %rsi popq %rdi - movq 5136(%rax), %r11 + movq 5144(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5136(%rax), %r11 + movq 5144(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24213,7 +24250,7 @@ GL_PREFIX(SecondaryColor3uiEXT): popq %rdx popq %rsi popq %rdi - movq 5136(%rax), %r11 + movq 5144(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3uiEXT), .-GL_PREFIX(SecondaryColor3uiEXT) @@ -24224,25 +24261,25 @@ GL_PREFIX(SecondaryColor3uiEXT): GL_PREFIX(SecondaryColor3uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5144(%rax), %r11 + movq 5152(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5144(%rax), %r11 + movq 5152(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5144(%rax), %r11 + movq 5152(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5144(%rax), %r11 + movq 5152(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3uivEXT), .-GL_PREFIX(SecondaryColor3uivEXT) @@ -24253,7 +24290,7 @@ GL_PREFIX(SecondaryColor3uivEXT): GL_PREFIX(SecondaryColor3usEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5152(%rax), %r11 + movq 5160(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24263,13 +24300,13 @@ GL_PREFIX(SecondaryColor3usEXT): popq %rdx popq %rsi popq %rdi - movq 5152(%rax), %r11 + movq 5160(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5152(%rax), %r11 + movq 5160(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24279,7 +24316,7 @@ GL_PREFIX(SecondaryColor3usEXT): popq %rdx popq %rsi popq %rdi - movq 5152(%rax), %r11 + movq 5160(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3usEXT), .-GL_PREFIX(SecondaryColor3usEXT) @@ -24290,25 +24327,25 @@ GL_PREFIX(SecondaryColor3usEXT): GL_PREFIX(SecondaryColor3usvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5160(%rax), %r11 + movq 5168(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5160(%rax), %r11 + movq 5168(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5160(%rax), %r11 + movq 5168(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5160(%rax), %r11 + movq 5168(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3usvEXT), .-GL_PREFIX(SecondaryColor3usvEXT) @@ -24319,7 +24356,7 @@ GL_PREFIX(SecondaryColor3usvEXT): GL_PREFIX(SecondaryColorPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5168(%rax), %r11 + movq 5176(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24333,13 +24370,13 @@ GL_PREFIX(SecondaryColorPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5168(%rax), %r11 + movq 5176(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5168(%rax), %r11 + movq 5176(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24353,7 +24390,7 @@ GL_PREFIX(SecondaryColorPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5168(%rax), %r11 + movq 5176(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColorPointerEXT), .-GL_PREFIX(SecondaryColorPointerEXT) @@ -24364,7 +24401,7 @@ GL_PREFIX(SecondaryColorPointerEXT): GL_PREFIX(MultiDrawArraysEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5176(%rax), %r11 + movq 5184(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24378,13 +24415,13 @@ GL_PREFIX(MultiDrawArraysEXT): popq %rdx popq %rsi popq %rdi - movq 5176(%rax), %r11 + movq 5184(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5176(%rax), %r11 + movq 5184(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24398,7 +24435,7 @@ GL_PREFIX(MultiDrawArraysEXT): popq %rdx popq %rsi popq %rdi - movq 5176(%rax), %r11 + movq 5184(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(MultiDrawArraysEXT), .-GL_PREFIX(MultiDrawArraysEXT) @@ -24409,7 +24446,7 @@ GL_PREFIX(MultiDrawArraysEXT): GL_PREFIX(MultiDrawElementsEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5184(%rax), %r11 + movq 5192(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24423,13 +24460,13 @@ GL_PREFIX(MultiDrawElementsEXT): popq %rdx popq %rsi popq %rdi - movq 5184(%rax), %r11 + movq 5192(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5184(%rax), %r11 + movq 5192(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24443,7 +24480,7 @@ GL_PREFIX(MultiDrawElementsEXT): popq %rdx popq %rsi popq %rdi - movq 5184(%rax), %r11 + movq 5192(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(MultiDrawElementsEXT), .-GL_PREFIX(MultiDrawElementsEXT) @@ -24454,7 +24491,7 @@ GL_PREFIX(MultiDrawElementsEXT): GL_PREFIX(FogCoordPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5192(%rax), %r11 + movq 5200(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24464,13 +24501,13 @@ GL_PREFIX(FogCoordPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5192(%rax), %r11 + movq 5200(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5192(%rax), %r11 + movq 5200(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24480,7 +24517,7 @@ GL_PREFIX(FogCoordPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5192(%rax), %r11 + movq 5200(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FogCoordPointerEXT), .-GL_PREFIX(FogCoordPointerEXT) @@ -24491,7 +24528,7 @@ GL_PREFIX(FogCoordPointerEXT): GL_PREFIX(FogCoorddEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5200(%rax), %r11 + movq 5208(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $8, %rsp @@ -24499,13 +24536,13 @@ GL_PREFIX(FogCoorddEXT): call _x86_64_get_dispatch@PLT movq (%rsp), %xmm0 addq $8, %rsp - movq 5200(%rax), %r11 + movq 5208(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5200(%rax), %r11 + movq 5208(%rax), %r11 jmp *%r11 1: subq $8, %rsp @@ -24513,7 +24550,7 @@ GL_PREFIX(FogCoorddEXT): call _glapi_get_dispatch movq (%rsp), %xmm0 addq $8, %rsp - movq 5200(%rax), %r11 + movq 5208(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FogCoorddEXT), .-GL_PREFIX(FogCoorddEXT) @@ -24524,25 +24561,25 @@ GL_PREFIX(FogCoorddEXT): GL_PREFIX(FogCoorddvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5208(%rax), %r11 + movq 5216(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5208(%rax), %r11 + movq 5216(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5208(%rax), %r11 + movq 5216(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5208(%rax), %r11 + movq 5216(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FogCoorddvEXT), .-GL_PREFIX(FogCoorddvEXT) @@ -24553,7 +24590,7 @@ GL_PREFIX(FogCoorddvEXT): GL_PREFIX(FogCoordfEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5216(%rax), %r11 + movq 5224(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $8, %rsp @@ -24561,13 +24598,13 @@ GL_PREFIX(FogCoordfEXT): call _x86_64_get_dispatch@PLT movq (%rsp), %xmm0 addq $8, %rsp - movq 5216(%rax), %r11 + movq 5224(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5216(%rax), %r11 + movq 5224(%rax), %r11 jmp *%r11 1: subq $8, %rsp @@ -24575,7 +24612,7 @@ GL_PREFIX(FogCoordfEXT): call _glapi_get_dispatch movq (%rsp), %xmm0 addq $8, %rsp - movq 5216(%rax), %r11 + movq 5224(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FogCoordfEXT), .-GL_PREFIX(FogCoordfEXT) @@ -24586,58 +24623,58 @@ GL_PREFIX(FogCoordfEXT): GL_PREFIX(FogCoordfvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5224(%rax), %r11 + movq 5232(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5224(%rax), %r11 + movq 5232(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5224(%rax), %r11 + movq 5232(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5224(%rax), %r11 + movq 5232(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FogCoordfvEXT), .-GL_PREFIX(FogCoordfvEXT) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_654) - .type GL_PREFIX(_dispatch_stub_654), @function - HIDDEN(GL_PREFIX(_dispatch_stub_654)) -GL_PREFIX(_dispatch_stub_654): + .globl GL_PREFIX(_dispatch_stub_655) + .type GL_PREFIX(_dispatch_stub_655), @function + HIDDEN(GL_PREFIX(_dispatch_stub_655)) +GL_PREFIX(_dispatch_stub_655): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5232(%rax), %r11 + movq 5240(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5232(%rax), %r11 + movq 5240(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5232(%rax), %r11 + movq 5240(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5232(%rax), %r11 + movq 5240(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_654), .-GL_PREFIX(_dispatch_stub_654) + .size GL_PREFIX(_dispatch_stub_655), .-GL_PREFIX(_dispatch_stub_655) .p2align 4,,15 .globl GL_PREFIX(BlendFuncSeparateEXT) @@ -24645,7 +24682,7 @@ GL_PREFIX(_dispatch_stub_654): GL_PREFIX(BlendFuncSeparateEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5240(%rax), %r11 + movq 5248(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24659,13 +24696,13 @@ GL_PREFIX(BlendFuncSeparateEXT): popq %rdx popq %rsi popq %rdi - movq 5240(%rax), %r11 + movq 5248(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5240(%rax), %r11 + movq 5248(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24679,7 +24716,7 @@ GL_PREFIX(BlendFuncSeparateEXT): popq %rdx popq %rsi popq %rdi - movq 5240(%rax), %r11 + movq 5248(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BlendFuncSeparateEXT), .-GL_PREFIX(BlendFuncSeparateEXT) @@ -24690,25 +24727,25 @@ GL_PREFIX(BlendFuncSeparateEXT): GL_PREFIX(FlushVertexArrayRangeNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5248(%rax), %r11 + movq 5256(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 5248(%rax), %r11 + movq 5256(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5248(%rax), %r11 + movq 5256(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 5248(%rax), %r11 + movq 5256(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FlushVertexArrayRangeNV), .-GL_PREFIX(FlushVertexArrayRangeNV) @@ -24719,7 +24756,7 @@ GL_PREFIX(FlushVertexArrayRangeNV): GL_PREFIX(VertexArrayRangeNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5256(%rax), %r11 + movq 5264(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24729,13 +24766,13 @@ GL_PREFIX(VertexArrayRangeNV): popq %rbp popq %rsi popq %rdi - movq 5256(%rax), %r11 + movq 5264(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5256(%rax), %r11 + movq 5264(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24745,7 +24782,7 @@ GL_PREFIX(VertexArrayRangeNV): popq %rbp popq %rsi popq %rdi - movq 5256(%rax), %r11 + movq 5264(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexArrayRangeNV), .-GL_PREFIX(VertexArrayRangeNV) @@ -24756,7 +24793,7 @@ GL_PREFIX(VertexArrayRangeNV): GL_PREFIX(CombinerInputNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5264(%rax), %r11 + movq 5272(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24774,13 +24811,13 @@ GL_PREFIX(CombinerInputNV): popq %rdx popq %rsi popq %rdi - movq 5264(%rax), %r11 + movq 5272(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5264(%rax), %r11 + movq 5272(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24798,7 +24835,7 @@ GL_PREFIX(CombinerInputNV): popq %rdx popq %rsi popq %rdi - movq 5264(%rax), %r11 + movq 5272(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CombinerInputNV), .-GL_PREFIX(CombinerInputNV) @@ -24809,7 +24846,7 @@ GL_PREFIX(CombinerInputNV): GL_PREFIX(CombinerOutputNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5272(%rax), %r11 + movq 5280(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24827,13 +24864,13 @@ GL_PREFIX(CombinerOutputNV): popq %rdx popq %rsi popq %rdi - movq 5272(%rax), %r11 + movq 5280(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5272(%rax), %r11 + movq 5280(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24851,7 +24888,7 @@ GL_PREFIX(CombinerOutputNV): popq %rdx popq %rsi popq %rdi - movq 5272(%rax), %r11 + movq 5280(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CombinerOutputNV), .-GL_PREFIX(CombinerOutputNV) @@ -24862,7 +24899,7 @@ GL_PREFIX(CombinerOutputNV): GL_PREFIX(CombinerParameterfNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5280(%rax), %r11 + movq 5288(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -24872,13 +24909,13 @@ GL_PREFIX(CombinerParameterfNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5280(%rax), %r11 + movq 5288(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5280(%rax), %r11 + movq 5288(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -24888,7 +24925,7 @@ GL_PREFIX(CombinerParameterfNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5280(%rax), %r11 + movq 5288(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CombinerParameterfNV), .-GL_PREFIX(CombinerParameterfNV) @@ -24899,7 +24936,7 @@ GL_PREFIX(CombinerParameterfNV): GL_PREFIX(CombinerParameterfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5288(%rax), %r11 + movq 5296(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24909,13 +24946,13 @@ GL_PREFIX(CombinerParameterfvNV): popq %rbp popq %rsi popq %rdi - movq 5288(%rax), %r11 + movq 5296(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5288(%rax), %r11 + movq 5296(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24925,7 +24962,7 @@ GL_PREFIX(CombinerParameterfvNV): popq %rbp popq %rsi popq %rdi - movq 5288(%rax), %r11 + movq 5296(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CombinerParameterfvNV), .-GL_PREFIX(CombinerParameterfvNV) @@ -24936,7 +24973,7 @@ GL_PREFIX(CombinerParameterfvNV): GL_PREFIX(CombinerParameteriNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5296(%rax), %r11 + movq 5304(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24946,13 +24983,13 @@ GL_PREFIX(CombinerParameteriNV): popq %rbp popq %rsi popq %rdi - movq 5296(%rax), %r11 + movq 5304(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5296(%rax), %r11 + movq 5304(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24962,7 +24999,7 @@ GL_PREFIX(CombinerParameteriNV): popq %rbp popq %rsi popq %rdi - movq 5296(%rax), %r11 + movq 5304(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CombinerParameteriNV), .-GL_PREFIX(CombinerParameteriNV) @@ -24973,7 +25010,7 @@ GL_PREFIX(CombinerParameteriNV): GL_PREFIX(CombinerParameterivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5304(%rax), %r11 + movq 5312(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24983,13 +25020,13 @@ GL_PREFIX(CombinerParameterivNV): popq %rbp popq %rsi popq %rdi - movq 5304(%rax), %r11 + movq 5312(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5304(%rax), %r11 + movq 5312(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24999,7 +25036,7 @@ GL_PREFIX(CombinerParameterivNV): popq %rbp popq %rsi popq %rdi - movq 5304(%rax), %r11 + movq 5312(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CombinerParameterivNV), .-GL_PREFIX(CombinerParameterivNV) @@ -25010,7 +25047,7 @@ GL_PREFIX(CombinerParameterivNV): GL_PREFIX(FinalCombinerInputNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5312(%rax), %r11 + movq 5320(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25024,13 +25061,13 @@ GL_PREFIX(FinalCombinerInputNV): popq %rdx popq %rsi popq %rdi - movq 5312(%rax), %r11 + movq 5320(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5312(%rax), %r11 + movq 5320(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25044,7 +25081,7 @@ GL_PREFIX(FinalCombinerInputNV): popq %rdx popq %rsi popq %rdi - movq 5312(%rax), %r11 + movq 5320(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FinalCombinerInputNV), .-GL_PREFIX(FinalCombinerInputNV) @@ -25055,7 +25092,7 @@ GL_PREFIX(FinalCombinerInputNV): GL_PREFIX(GetCombinerInputParameterfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5320(%rax), %r11 + movq 5328(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25069,13 +25106,13 @@ GL_PREFIX(GetCombinerInputParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5320(%rax), %r11 + movq 5328(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5320(%rax), %r11 + movq 5328(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25089,7 +25126,7 @@ GL_PREFIX(GetCombinerInputParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5320(%rax), %r11 + movq 5328(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetCombinerInputParameterfvNV), .-GL_PREFIX(GetCombinerInputParameterfvNV) @@ -25100,7 +25137,7 @@ GL_PREFIX(GetCombinerInputParameterfvNV): GL_PREFIX(GetCombinerInputParameterivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5328(%rax), %r11 + movq 5336(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25114,13 +25151,13 @@ GL_PREFIX(GetCombinerInputParameterivNV): popq %rdx popq %rsi popq %rdi - movq 5328(%rax), %r11 + movq 5336(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5328(%rax), %r11 + movq 5336(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25134,7 +25171,7 @@ GL_PREFIX(GetCombinerInputParameterivNV): popq %rdx popq %rsi popq %rdi - movq 5328(%rax), %r11 + movq 5336(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetCombinerInputParameterivNV), .-GL_PREFIX(GetCombinerInputParameterivNV) @@ -25145,7 +25182,7 @@ GL_PREFIX(GetCombinerInputParameterivNV): GL_PREFIX(GetCombinerOutputParameterfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5336(%rax), %r11 + movq 5344(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25159,13 +25196,13 @@ GL_PREFIX(GetCombinerOutputParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5336(%rax), %r11 + movq 5344(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5336(%rax), %r11 + movq 5344(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25179,7 +25216,7 @@ GL_PREFIX(GetCombinerOutputParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5336(%rax), %r11 + movq 5344(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetCombinerOutputParameterfvNV), .-GL_PREFIX(GetCombinerOutputParameterfvNV) @@ -25190,7 +25227,7 @@ GL_PREFIX(GetCombinerOutputParameterfvNV): GL_PREFIX(GetCombinerOutputParameterivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5344(%rax), %r11 + movq 5352(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25204,13 +25241,13 @@ GL_PREFIX(GetCombinerOutputParameterivNV): popq %rdx popq %rsi popq %rdi - movq 5344(%rax), %r11 + movq 5352(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5344(%rax), %r11 + movq 5352(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25224,7 +25261,7 @@ GL_PREFIX(GetCombinerOutputParameterivNV): popq %rdx popq %rsi popq %rdi - movq 5344(%rax), %r11 + movq 5352(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetCombinerOutputParameterivNV), .-GL_PREFIX(GetCombinerOutputParameterivNV) @@ -25235,7 +25272,7 @@ GL_PREFIX(GetCombinerOutputParameterivNV): GL_PREFIX(GetFinalCombinerInputParameterfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5352(%rax), %r11 + movq 5360(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25245,13 +25282,13 @@ GL_PREFIX(GetFinalCombinerInputParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5352(%rax), %r11 + movq 5360(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5352(%rax), %r11 + movq 5360(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25261,7 +25298,7 @@ GL_PREFIX(GetFinalCombinerInputParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5352(%rax), %r11 + movq 5360(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetFinalCombinerInputParameterfvNV), .-GL_PREFIX(GetFinalCombinerInputParameterfvNV) @@ -25272,7 +25309,7 @@ GL_PREFIX(GetFinalCombinerInputParameterfvNV): GL_PREFIX(GetFinalCombinerInputParameterivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5360(%rax), %r11 + movq 5368(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25282,13 +25319,13 @@ GL_PREFIX(GetFinalCombinerInputParameterivNV): popq %rdx popq %rsi popq %rdi - movq 5360(%rax), %r11 + movq 5368(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5360(%rax), %r11 + movq 5368(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25298,7 +25335,7 @@ GL_PREFIX(GetFinalCombinerInputParameterivNV): popq %rdx popq %rsi popq %rdi - movq 5360(%rax), %r11 + movq 5368(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetFinalCombinerInputParameterivNV), .-GL_PREFIX(GetFinalCombinerInputParameterivNV) @@ -25309,25 +25346,25 @@ GL_PREFIX(GetFinalCombinerInputParameterivNV): GL_PREFIX(ResizeBuffersMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5368(%rax), %r11 + movq 5376(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 5368(%rax), %r11 + movq 5376(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5368(%rax), %r11 + movq 5376(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 5368(%rax), %r11 + movq 5376(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ResizeBuffersMESA), .-GL_PREFIX(ResizeBuffersMESA) @@ -25338,7 +25375,7 @@ GL_PREFIX(ResizeBuffersMESA): GL_PREFIX(WindowPos2dMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5376(%rax), %r11 + movq 5384(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -25348,13 +25385,13 @@ GL_PREFIX(WindowPos2dMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5376(%rax), %r11 + movq 5384(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5376(%rax), %r11 + movq 5384(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -25364,7 +25401,7 @@ GL_PREFIX(WindowPos2dMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5376(%rax), %r11 + movq 5384(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2dMESA), .-GL_PREFIX(WindowPos2dMESA) @@ -25375,25 +25412,25 @@ GL_PREFIX(WindowPos2dMESA): GL_PREFIX(WindowPos2dvMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5384(%rax), %r11 + movq 5392(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5384(%rax), %r11 + movq 5392(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5384(%rax), %r11 + movq 5392(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5384(%rax), %r11 + movq 5392(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2dvMESA), .-GL_PREFIX(WindowPos2dvMESA) @@ -25404,7 +25441,7 @@ GL_PREFIX(WindowPos2dvMESA): GL_PREFIX(WindowPos2fMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5392(%rax), %r11 + movq 5400(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -25414,13 +25451,13 @@ GL_PREFIX(WindowPos2fMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5392(%rax), %r11 + movq 5400(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5392(%rax), %r11 + movq 5400(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -25430,7 +25467,7 @@ GL_PREFIX(WindowPos2fMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5392(%rax), %r11 + movq 5400(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2fMESA), .-GL_PREFIX(WindowPos2fMESA) @@ -25441,25 +25478,25 @@ GL_PREFIX(WindowPos2fMESA): GL_PREFIX(WindowPos2fvMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5400(%rax), %r11 + movq 5408(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5400(%rax), %r11 + movq 5408(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5400(%rax), %r11 + movq 5408(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5400(%rax), %r11 + movq 5408(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2fvMESA), .-GL_PREFIX(WindowPos2fvMESA) @@ -25470,7 +25507,7 @@ GL_PREFIX(WindowPos2fvMESA): GL_PREFIX(WindowPos2iMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5408(%rax), %r11 + movq 5416(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25480,13 +25517,13 @@ GL_PREFIX(WindowPos2iMESA): popq %rbp popq %rsi popq %rdi - movq 5408(%rax), %r11 + movq 5416(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5408(%rax), %r11 + movq 5416(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25496,7 +25533,7 @@ GL_PREFIX(WindowPos2iMESA): popq %rbp popq %rsi popq %rdi - movq 5408(%rax), %r11 + movq 5416(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2iMESA), .-GL_PREFIX(WindowPos2iMESA) @@ -25507,25 +25544,25 @@ GL_PREFIX(WindowPos2iMESA): GL_PREFIX(WindowPos2ivMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5416(%rax), %r11 + movq 5424(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5416(%rax), %r11 + movq 5424(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5416(%rax), %r11 + movq 5424(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5416(%rax), %r11 + movq 5424(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2ivMESA), .-GL_PREFIX(WindowPos2ivMESA) @@ -25536,7 +25573,7 @@ GL_PREFIX(WindowPos2ivMESA): GL_PREFIX(WindowPos2sMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5424(%rax), %r11 + movq 5432(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25546,13 +25583,13 @@ GL_PREFIX(WindowPos2sMESA): popq %rbp popq %rsi popq %rdi - movq 5424(%rax), %r11 + movq 5432(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5424(%rax), %r11 + movq 5432(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25562,7 +25599,7 @@ GL_PREFIX(WindowPos2sMESA): popq %rbp popq %rsi popq %rdi - movq 5424(%rax), %r11 + movq 5432(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2sMESA), .-GL_PREFIX(WindowPos2sMESA) @@ -25573,25 +25610,25 @@ GL_PREFIX(WindowPos2sMESA): GL_PREFIX(WindowPos2svMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5432(%rax), %r11 + movq 5440(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5432(%rax), %r11 + movq 5440(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5432(%rax), %r11 + movq 5440(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5432(%rax), %r11 + movq 5440(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2svMESA), .-GL_PREFIX(WindowPos2svMESA) @@ -25602,7 +25639,7 @@ GL_PREFIX(WindowPos2svMESA): GL_PREFIX(WindowPos3dMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5440(%rax), %r11 + movq 5448(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -25614,13 +25651,13 @@ GL_PREFIX(WindowPos3dMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5440(%rax), %r11 + movq 5448(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5440(%rax), %r11 + movq 5448(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -25632,7 +25669,7 @@ GL_PREFIX(WindowPos3dMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5440(%rax), %r11 + movq 5448(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3dMESA), .-GL_PREFIX(WindowPos3dMESA) @@ -25643,25 +25680,25 @@ GL_PREFIX(WindowPos3dMESA): GL_PREFIX(WindowPos3dvMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5448(%rax), %r11 + movq 5456(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5448(%rax), %r11 + movq 5456(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5448(%rax), %r11 + movq 5456(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5448(%rax), %r11 + movq 5456(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3dvMESA), .-GL_PREFIX(WindowPos3dvMESA) @@ -25672,7 +25709,7 @@ GL_PREFIX(WindowPos3dvMESA): GL_PREFIX(WindowPos3fMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5456(%rax), %r11 + movq 5464(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -25684,13 +25721,13 @@ GL_PREFIX(WindowPos3fMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5456(%rax), %r11 + movq 5464(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5456(%rax), %r11 + movq 5464(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -25702,7 +25739,7 @@ GL_PREFIX(WindowPos3fMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5456(%rax), %r11 + movq 5464(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3fMESA), .-GL_PREFIX(WindowPos3fMESA) @@ -25713,25 +25750,25 @@ GL_PREFIX(WindowPos3fMESA): GL_PREFIX(WindowPos3fvMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5464(%rax), %r11 + movq 5472(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5464(%rax), %r11 + movq 5472(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5464(%rax), %r11 + movq 5472(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5464(%rax), %r11 + movq 5472(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3fvMESA), .-GL_PREFIX(WindowPos3fvMESA) @@ -25742,7 +25779,7 @@ GL_PREFIX(WindowPos3fvMESA): GL_PREFIX(WindowPos3iMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5472(%rax), %r11 + movq 5480(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25752,13 +25789,13 @@ GL_PREFIX(WindowPos3iMESA): popq %rdx popq %rsi popq %rdi - movq 5472(%rax), %r11 + movq 5480(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5472(%rax), %r11 + movq 5480(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25768,7 +25805,7 @@ GL_PREFIX(WindowPos3iMESA): popq %rdx popq %rsi popq %rdi - movq 5472(%rax), %r11 + movq 5480(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3iMESA), .-GL_PREFIX(WindowPos3iMESA) @@ -25779,25 +25816,25 @@ GL_PREFIX(WindowPos3iMESA): GL_PREFIX(WindowPos3ivMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5480(%rax), %r11 + movq 5488(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5480(%rax), %r11 + movq 5488(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5480(%rax), %r11 + movq 5488(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5480(%rax), %r11 + movq 5488(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3ivMESA), .-GL_PREFIX(WindowPos3ivMESA) @@ -25808,7 +25845,7 @@ GL_PREFIX(WindowPos3ivMESA): GL_PREFIX(WindowPos3sMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5488(%rax), %r11 + movq 5496(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25818,13 +25855,13 @@ GL_PREFIX(WindowPos3sMESA): popq %rdx popq %rsi popq %rdi - movq 5488(%rax), %r11 + movq 5496(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5488(%rax), %r11 + movq 5496(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25834,7 +25871,7 @@ GL_PREFIX(WindowPos3sMESA): popq %rdx popq %rsi popq %rdi - movq 5488(%rax), %r11 + movq 5496(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3sMESA), .-GL_PREFIX(WindowPos3sMESA) @@ -25845,25 +25882,25 @@ GL_PREFIX(WindowPos3sMESA): GL_PREFIX(WindowPos3svMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5496(%rax), %r11 + movq 5504(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5496(%rax), %r11 + movq 5504(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5496(%rax), %r11 + movq 5504(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5496(%rax), %r11 + movq 5504(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3svMESA), .-GL_PREFIX(WindowPos3svMESA) @@ -25874,7 +25911,7 @@ GL_PREFIX(WindowPos3svMESA): GL_PREFIX(WindowPos4dMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5504(%rax), %r11 + movq 5512(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $40, %rsp @@ -25888,13 +25925,13 @@ GL_PREFIX(WindowPos4dMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $40, %rsp - movq 5504(%rax), %r11 + movq 5512(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5504(%rax), %r11 + movq 5512(%rax), %r11 jmp *%r11 1: subq $40, %rsp @@ -25908,7 +25945,7 @@ GL_PREFIX(WindowPos4dMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $40, %rsp - movq 5504(%rax), %r11 + movq 5512(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4dMESA), .-GL_PREFIX(WindowPos4dMESA) @@ -25919,25 +25956,25 @@ GL_PREFIX(WindowPos4dMESA): GL_PREFIX(WindowPos4dvMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5512(%rax), %r11 + movq 5520(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5512(%rax), %r11 + movq 5520(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5512(%rax), %r11 + movq 5520(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5512(%rax), %r11 + movq 5520(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4dvMESA), .-GL_PREFIX(WindowPos4dvMESA) @@ -25948,7 +25985,7 @@ GL_PREFIX(WindowPos4dvMESA): GL_PREFIX(WindowPos4fMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5520(%rax), %r11 + movq 5528(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $40, %rsp @@ -25962,13 +25999,13 @@ GL_PREFIX(WindowPos4fMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $40, %rsp - movq 5520(%rax), %r11 + movq 5528(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5520(%rax), %r11 + movq 5528(%rax), %r11 jmp *%r11 1: subq $40, %rsp @@ -25982,7 +26019,7 @@ GL_PREFIX(WindowPos4fMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $40, %rsp - movq 5520(%rax), %r11 + movq 5528(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4fMESA), .-GL_PREFIX(WindowPos4fMESA) @@ -25993,25 +26030,25 @@ GL_PREFIX(WindowPos4fMESA): GL_PREFIX(WindowPos4fvMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5528(%rax), %r11 + movq 5536(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5528(%rax), %r11 + movq 5536(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5528(%rax), %r11 + movq 5536(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5528(%rax), %r11 + movq 5536(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4fvMESA), .-GL_PREFIX(WindowPos4fvMESA) @@ -26022,7 +26059,7 @@ GL_PREFIX(WindowPos4fvMESA): GL_PREFIX(WindowPos4iMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5536(%rax), %r11 + movq 5544(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26036,13 +26073,13 @@ GL_PREFIX(WindowPos4iMESA): popq %rdx popq %rsi popq %rdi - movq 5536(%rax), %r11 + movq 5544(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5536(%rax), %r11 + movq 5544(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26056,7 +26093,7 @@ GL_PREFIX(WindowPos4iMESA): popq %rdx popq %rsi popq %rdi - movq 5536(%rax), %r11 + movq 5544(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4iMESA), .-GL_PREFIX(WindowPos4iMESA) @@ -26067,25 +26104,25 @@ GL_PREFIX(WindowPos4iMESA): GL_PREFIX(WindowPos4ivMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5544(%rax), %r11 + movq 5552(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5544(%rax), %r11 + movq 5552(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5544(%rax), %r11 + movq 5552(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5544(%rax), %r11 + movq 5552(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4ivMESA), .-GL_PREFIX(WindowPos4ivMESA) @@ -26096,7 +26133,7 @@ GL_PREFIX(WindowPos4ivMESA): GL_PREFIX(WindowPos4sMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5552(%rax), %r11 + movq 5560(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26110,13 +26147,13 @@ GL_PREFIX(WindowPos4sMESA): popq %rdx popq %rsi popq %rdi - movq 5552(%rax), %r11 + movq 5560(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5552(%rax), %r11 + movq 5560(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26130,7 +26167,7 @@ GL_PREFIX(WindowPos4sMESA): popq %rdx popq %rsi popq %rdi - movq 5552(%rax), %r11 + movq 5560(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4sMESA), .-GL_PREFIX(WindowPos4sMESA) @@ -26139,51 +26176,13 @@ GL_PREFIX(WindowPos4sMESA): .globl GL_PREFIX(WindowPos4svMESA) .type GL_PREFIX(WindowPos4svMESA), @function GL_PREFIX(WindowPos4svMESA): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 5560(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rdi - call _x86_64_get_dispatch@PLT - popq %rdi - movq 5560(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 5560(%rax), %r11 - jmp *%r11 -1: - pushq %rdi - call _glapi_get_dispatch - popq %rdi - movq 5560(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(WindowPos4svMESA), .-GL_PREFIX(WindowPos4svMESA) - - .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_696) - .type GL_PREFIX(_dispatch_stub_696), @function - HIDDEN(GL_PREFIX(_dispatch_stub_696)) -GL_PREFIX(_dispatch_stub_696): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 5568(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi - pushq %rsi - pushq %rdx - pushq %rcx - pushq %r8 call _x86_64_get_dispatch@PLT - popq %r8 - popq %rcx - popq %rdx - popq %rsi popq %rdi movq 5568(%rax), %r11 jmp *%r11 @@ -26195,20 +26194,12 @@ GL_PREFIX(_dispatch_stub_696): jmp *%r11 1: pushq %rdi - pushq %rsi - pushq %rdx - pushq %rcx - pushq %r8 call _glapi_get_dispatch - popq %r8 - popq %rcx - popq %rdx - popq %rsi popq %rdi movq 5568(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_696), .-GL_PREFIX(_dispatch_stub_696) + .size GL_PREFIX(WindowPos4svMESA), .-GL_PREFIX(WindowPos4svMESA) .p2align 4,,15 .globl GL_PREFIX(_dispatch_stub_697) @@ -26225,11 +26216,7 @@ GL_PREFIX(_dispatch_stub_697): pushq %rdx pushq %rcx pushq %r8 - pushq %r9 - pushq %rbp call _x86_64_get_dispatch@PLT - popq %rbp - popq %r9 popq %r8 popq %rcx popq %rdx @@ -26249,11 +26236,7 @@ GL_PREFIX(_dispatch_stub_697): pushq %rdx pushq %rcx pushq %r8 - pushq %r9 - pushq %rbp call _glapi_get_dispatch - popq %rbp - popq %r9 popq %r8 popq %rcx popq %rdx @@ -26276,9 +26259,17 @@ GL_PREFIX(_dispatch_stub_698): #elif defined(PTHREADS) pushq %rdi pushq %rsi + pushq %rdx + pushq %rcx + pushq %r8 + pushq %r9 pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp + popq %r9 + popq %r8 + popq %rcx + popq %rdx popq %rsi popq %rdi movq 5584(%rax), %r11 @@ -26292,9 +26283,17 @@ GL_PREFIX(_dispatch_stub_698): 1: pushq %rdi pushq %rsi + pushq %rdx + pushq %rcx + pushq %r8 + pushq %r9 pushq %rbp call _glapi_get_dispatch popq %rbp + popq %r9 + popq %r8 + popq %rcx + popq %rdx popq %rsi popq %rdi movq 5584(%rax), %r11 @@ -26313,7 +26312,11 @@ GL_PREFIX(_dispatch_stub_699): jmp *%r11 #elif defined(PTHREADS) pushq %rdi + pushq %rsi + pushq %rbp call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi popq %rdi movq 5592(%rax), %r11 jmp *%r11 @@ -26325,7 +26328,11 @@ GL_PREFIX(_dispatch_stub_699): jmp *%r11 1: pushq %rdi + pushq %rsi + pushq %rbp call _glapi_get_dispatch + popq %rbp + popq %rsi popq %rdi movq 5592(%rax), %r11 jmp *%r11 @@ -26343,11 +26350,7 @@ GL_PREFIX(_dispatch_stub_700): jmp *%r11 #elif defined(PTHREADS) pushq %rdi - pushq %rsi - pushq %rbp call _x86_64_get_dispatch@PLT - popq %rbp - popq %rsi popq %rdi movq 5600(%rax), %r11 jmp *%r11 @@ -26359,11 +26362,7 @@ GL_PREFIX(_dispatch_stub_700): jmp *%r11 1: pushq %rdi - pushq %rsi - pushq %rbp call _glapi_get_dispatch - popq %rbp - popq %rsi popq %rdi movq 5600(%rax), %r11 jmp *%r11 @@ -26382,9 +26381,9 @@ GL_PREFIX(_dispatch_stub_701): #elif defined(PTHREADS) pushq %rdi pushq %rsi - pushq %rdx + pushq %rbp call _x86_64_get_dispatch@PLT - popq %rdx + popq %rbp popq %rsi popq %rdi movq 5608(%rax), %r11 @@ -26398,9 +26397,9 @@ GL_PREFIX(_dispatch_stub_701): 1: pushq %rdi pushq %rsi - pushq %rdx + pushq %rbp call _glapi_get_dispatch - popq %rdx + popq %rbp popq %rsi popq %rdi movq 5608(%rax), %r11 @@ -26419,7 +26418,11 @@ GL_PREFIX(_dispatch_stub_702): jmp *%r11 #elif defined(PTHREADS) pushq %rdi + pushq %rsi + pushq %rdx call _x86_64_get_dispatch@PLT + popq %rdx + popq %rsi popq %rdi movq 5616(%rax), %r11 jmp *%r11 @@ -26431,7 +26434,11 @@ GL_PREFIX(_dispatch_stub_702): jmp *%r11 1: pushq %rdi + pushq %rsi + pushq %rdx call _glapi_get_dispatch + popq %rdx + popq %rsi popq %rdi movq 5616(%rax), %r11 jmp *%r11 @@ -26449,11 +26456,7 @@ GL_PREFIX(_dispatch_stub_703): jmp *%r11 #elif defined(PTHREADS) pushq %rdi - pushq %rsi - pushq %rbp call _x86_64_get_dispatch@PLT - popq %rbp - popq %rsi popq %rdi movq 5624(%rax), %r11 jmp *%r11 @@ -26465,11 +26468,7 @@ GL_PREFIX(_dispatch_stub_703): jmp *%r11 1: pushq %rdi - pushq %rsi - pushq %rbp call _glapi_get_dispatch - popq %rbp - popq %rsi popq %rdi movq 5624(%rax), %r11 jmp *%r11 @@ -26487,7 +26486,11 @@ GL_PREFIX(_dispatch_stub_704): jmp *%r11 #elif defined(PTHREADS) pushq %rdi + pushq %rsi + pushq %rbp call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi popq %rdi movq 5632(%rax), %r11 jmp *%r11 @@ -26499,20 +26502,54 @@ GL_PREFIX(_dispatch_stub_704): jmp *%r11 1: pushq %rdi + pushq %rsi + pushq %rbp call _glapi_get_dispatch + popq %rbp + popq %rsi popq %rdi movq 5632(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(_dispatch_stub_704), .-GL_PREFIX(_dispatch_stub_704) + .p2align 4,,15 + .globl GL_PREFIX(_dispatch_stub_705) + .type GL_PREFIX(_dispatch_stub_705), @function + HIDDEN(GL_PREFIX(_dispatch_stub_705)) +GL_PREFIX(_dispatch_stub_705): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 5640(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + call _x86_64_get_dispatch@PLT + popq %rdi + movq 5640(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 5640(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + call _glapi_get_dispatch + popq %rdi + movq 5640(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_705), .-GL_PREFIX(_dispatch_stub_705) + .p2align 4,,15 .globl GL_PREFIX(AreProgramsResidentNV) .type GL_PREFIX(AreProgramsResidentNV), @function GL_PREFIX(AreProgramsResidentNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5640(%rax), %r11 + movq 5648(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26522,13 +26559,13 @@ GL_PREFIX(AreProgramsResidentNV): popq %rdx popq %rsi popq %rdi - movq 5640(%rax), %r11 + movq 5648(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5640(%rax), %r11 + movq 5648(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26538,7 +26575,7 @@ GL_PREFIX(AreProgramsResidentNV): popq %rdx popq %rsi popq %rdi - movq 5640(%rax), %r11 + movq 5648(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(AreProgramsResidentNV), .-GL_PREFIX(AreProgramsResidentNV) @@ -26549,7 +26586,7 @@ GL_PREFIX(AreProgramsResidentNV): GL_PREFIX(BindProgramNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5648(%rax), %r11 + movq 5656(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26559,13 +26596,13 @@ GL_PREFIX(BindProgramNV): popq %rbp popq %rsi popq %rdi - movq 5648(%rax), %r11 + movq 5656(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5648(%rax), %r11 + movq 5656(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26575,7 +26612,7 @@ GL_PREFIX(BindProgramNV): popq %rbp popq %rsi popq %rdi - movq 5648(%rax), %r11 + movq 5656(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindProgramNV), .-GL_PREFIX(BindProgramNV) @@ -26586,7 +26623,7 @@ GL_PREFIX(BindProgramNV): GL_PREFIX(DeleteProgramsNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5656(%rax), %r11 + movq 5664(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26596,13 +26633,13 @@ GL_PREFIX(DeleteProgramsNV): popq %rbp popq %rsi popq %rdi - movq 5656(%rax), %r11 + movq 5664(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5656(%rax), %r11 + movq 5664(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26612,7 +26649,7 @@ GL_PREFIX(DeleteProgramsNV): popq %rbp popq %rsi popq %rdi - movq 5656(%rax), %r11 + movq 5664(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DeleteProgramsNV), .-GL_PREFIX(DeleteProgramsNV) @@ -26623,7 +26660,7 @@ GL_PREFIX(DeleteProgramsNV): GL_PREFIX(ExecuteProgramNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5664(%rax), %r11 + movq 5672(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26633,13 +26670,13 @@ GL_PREFIX(ExecuteProgramNV): popq %rdx popq %rsi popq %rdi - movq 5664(%rax), %r11 + movq 5672(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5664(%rax), %r11 + movq 5672(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26649,7 +26686,7 @@ GL_PREFIX(ExecuteProgramNV): popq %rdx popq %rsi popq %rdi - movq 5664(%rax), %r11 + movq 5672(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ExecuteProgramNV), .-GL_PREFIX(ExecuteProgramNV) @@ -26660,7 +26697,7 @@ GL_PREFIX(ExecuteProgramNV): GL_PREFIX(GenProgramsNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5672(%rax), %r11 + movq 5680(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26670,13 +26707,13 @@ GL_PREFIX(GenProgramsNV): popq %rbp popq %rsi popq %rdi - movq 5672(%rax), %r11 + movq 5680(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5672(%rax), %r11 + movq 5680(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26686,7 +26723,7 @@ GL_PREFIX(GenProgramsNV): popq %rbp popq %rsi popq %rdi - movq 5672(%rax), %r11 + movq 5680(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GenProgramsNV), .-GL_PREFIX(GenProgramsNV) @@ -26697,7 +26734,7 @@ GL_PREFIX(GenProgramsNV): GL_PREFIX(GetProgramParameterdvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5680(%rax), %r11 + movq 5688(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26711,13 +26748,13 @@ GL_PREFIX(GetProgramParameterdvNV): popq %rdx popq %rsi popq %rdi - movq 5680(%rax), %r11 + movq 5688(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5680(%rax), %r11 + movq 5688(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26731,7 +26768,7 @@ GL_PREFIX(GetProgramParameterdvNV): popq %rdx popq %rsi popq %rdi - movq 5680(%rax), %r11 + movq 5688(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetProgramParameterdvNV), .-GL_PREFIX(GetProgramParameterdvNV) @@ -26742,7 +26779,7 @@ GL_PREFIX(GetProgramParameterdvNV): GL_PREFIX(GetProgramParameterfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5688(%rax), %r11 + movq 5696(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26756,13 +26793,13 @@ GL_PREFIX(GetProgramParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5688(%rax), %r11 + movq 5696(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5688(%rax), %r11 + movq 5696(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26776,7 +26813,7 @@ GL_PREFIX(GetProgramParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5688(%rax), %r11 + movq 5696(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetProgramParameterfvNV), .-GL_PREFIX(GetProgramParameterfvNV) @@ -26787,7 +26824,7 @@ GL_PREFIX(GetProgramParameterfvNV): GL_PREFIX(GetProgramStringNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5696(%rax), %r11 + movq 5704(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26797,13 +26834,13 @@ GL_PREFIX(GetProgramStringNV): popq %rdx popq %rsi popq %rdi - movq 5696(%rax), %r11 + movq 5704(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5696(%rax), %r11 + movq 5704(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26813,7 +26850,7 @@ GL_PREFIX(GetProgramStringNV): popq %rdx popq %rsi popq %rdi - movq 5696(%rax), %r11 + movq 5704(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetProgramStringNV), .-GL_PREFIX(GetProgramStringNV) @@ -26824,7 +26861,7 @@ GL_PREFIX(GetProgramStringNV): GL_PREFIX(GetProgramivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5704(%rax), %r11 + movq 5712(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26834,13 +26871,13 @@ GL_PREFIX(GetProgramivNV): popq %rdx popq %rsi popq %rdi - movq 5704(%rax), %r11 + movq 5712(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5704(%rax), %r11 + movq 5712(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26850,7 +26887,7 @@ GL_PREFIX(GetProgramivNV): popq %rdx popq %rsi popq %rdi - movq 5704(%rax), %r11 + movq 5712(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetProgramivNV), .-GL_PREFIX(GetProgramivNV) @@ -26861,7 +26898,7 @@ GL_PREFIX(GetProgramivNV): GL_PREFIX(GetTrackMatrixivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5712(%rax), %r11 + movq 5720(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26875,13 +26912,13 @@ GL_PREFIX(GetTrackMatrixivNV): popq %rdx popq %rsi popq %rdi - movq 5712(%rax), %r11 + movq 5720(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5712(%rax), %r11 + movq 5720(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26895,7 +26932,7 @@ GL_PREFIX(GetTrackMatrixivNV): popq %rdx popq %rsi popq %rdi - movq 5712(%rax), %r11 + movq 5720(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetTrackMatrixivNV), .-GL_PREFIX(GetTrackMatrixivNV) @@ -26906,7 +26943,7 @@ GL_PREFIX(GetTrackMatrixivNV): GL_PREFIX(GetVertexAttribPointervNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5720(%rax), %r11 + movq 5728(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26916,13 +26953,13 @@ GL_PREFIX(GetVertexAttribPointervNV): popq %rdx popq %rsi popq %rdi - movq 5720(%rax), %r11 + movq 5728(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5720(%rax), %r11 + movq 5728(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26932,7 +26969,7 @@ GL_PREFIX(GetVertexAttribPointervNV): popq %rdx popq %rsi popq %rdi - movq 5720(%rax), %r11 + movq 5728(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetVertexAttribPointervNV), .-GL_PREFIX(GetVertexAttribPointervNV) @@ -26943,7 +26980,7 @@ GL_PREFIX(GetVertexAttribPointervNV): GL_PREFIX(GetVertexAttribdvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5728(%rax), %r11 + movq 5736(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26953,13 +26990,13 @@ GL_PREFIX(GetVertexAttribdvNV): popq %rdx popq %rsi popq %rdi - movq 5728(%rax), %r11 + movq 5736(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5728(%rax), %r11 + movq 5736(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26969,7 +27006,7 @@ GL_PREFIX(GetVertexAttribdvNV): popq %rdx popq %rsi popq %rdi - movq 5728(%rax), %r11 + movq 5736(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetVertexAttribdvNV), .-GL_PREFIX(GetVertexAttribdvNV) @@ -26980,7 +27017,7 @@ GL_PREFIX(GetVertexAttribdvNV): GL_PREFIX(GetVertexAttribfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5736(%rax), %r11 + movq 5744(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26990,13 +27027,13 @@ GL_PREFIX(GetVertexAttribfvNV): popq %rdx popq %rsi popq %rdi - movq 5736(%rax), %r11 + movq 5744(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5736(%rax), %r11 + movq 5744(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27006,7 +27043,7 @@ GL_PREFIX(GetVertexAttribfvNV): popq %rdx popq %rsi popq %rdi - movq 5736(%rax), %r11 + movq 5744(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetVertexAttribfvNV), .-GL_PREFIX(GetVertexAttribfvNV) @@ -27017,7 +27054,7 @@ GL_PREFIX(GetVertexAttribfvNV): GL_PREFIX(GetVertexAttribivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5744(%rax), %r11 + movq 5752(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27027,13 +27064,13 @@ GL_PREFIX(GetVertexAttribivNV): popq %rdx popq %rsi popq %rdi - movq 5744(%rax), %r11 + movq 5752(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5744(%rax), %r11 + movq 5752(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27043,7 +27080,7 @@ GL_PREFIX(GetVertexAttribivNV): popq %rdx popq %rsi popq %rdi - movq 5744(%rax), %r11 + movq 5752(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetVertexAttribivNV), .-GL_PREFIX(GetVertexAttribivNV) @@ -27054,25 +27091,25 @@ GL_PREFIX(GetVertexAttribivNV): GL_PREFIX(IsProgramNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5752(%rax), %r11 + movq 5760(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5752(%rax), %r11 + movq 5760(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5752(%rax), %r11 + movq 5760(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5752(%rax), %r11 + movq 5760(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(IsProgramNV), .-GL_PREFIX(IsProgramNV) @@ -27083,7 +27120,7 @@ GL_PREFIX(IsProgramNV): GL_PREFIX(LoadProgramNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5760(%rax), %r11 + movq 5768(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27097,13 +27134,13 @@ GL_PREFIX(LoadProgramNV): popq %rdx popq %rsi popq %rdi - movq 5760(%rax), %r11 + movq 5768(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5760(%rax), %r11 + movq 5768(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27117,7 +27154,7 @@ GL_PREFIX(LoadProgramNV): popq %rdx popq %rsi popq %rdi - movq 5760(%rax), %r11 + movq 5768(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(LoadProgramNV), .-GL_PREFIX(LoadProgramNV) @@ -27128,7 +27165,7 @@ GL_PREFIX(LoadProgramNV): GL_PREFIX(ProgramParameters4dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5768(%rax), %r11 + movq 5776(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27142,13 +27179,13 @@ GL_PREFIX(ProgramParameters4dvNV): popq %rdx popq %rsi popq %rdi - movq 5768(%rax), %r11 + movq 5776(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5768(%rax), %r11 + movq 5776(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27162,7 +27199,7 @@ GL_PREFIX(ProgramParameters4dvNV): popq %rdx popq %rsi popq %rdi - movq 5768(%rax), %r11 + movq 5776(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ProgramParameters4dvNV), .-GL_PREFIX(ProgramParameters4dvNV) @@ -27173,7 +27210,7 @@ GL_PREFIX(ProgramParameters4dvNV): GL_PREFIX(ProgramParameters4fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5776(%rax), %r11 + movq 5784(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27187,13 +27224,13 @@ GL_PREFIX(ProgramParameters4fvNV): popq %rdx popq %rsi popq %rdi - movq 5776(%rax), %r11 + movq 5784(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5776(%rax), %r11 + movq 5784(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27207,7 +27244,7 @@ GL_PREFIX(ProgramParameters4fvNV): popq %rdx popq %rsi popq %rdi - movq 5776(%rax), %r11 + movq 5784(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ProgramParameters4fvNV), .-GL_PREFIX(ProgramParameters4fvNV) @@ -27218,7 +27255,7 @@ GL_PREFIX(ProgramParameters4fvNV): GL_PREFIX(RequestResidentProgramsNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5784(%rax), %r11 + movq 5792(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27228,13 +27265,13 @@ GL_PREFIX(RequestResidentProgramsNV): popq %rbp popq %rsi popq %rdi - movq 5784(%rax), %r11 + movq 5792(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5784(%rax), %r11 + movq 5792(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27244,7 +27281,7 @@ GL_PREFIX(RequestResidentProgramsNV): popq %rbp popq %rsi popq %rdi - movq 5784(%rax), %r11 + movq 5792(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(RequestResidentProgramsNV), .-GL_PREFIX(RequestResidentProgramsNV) @@ -27255,7 +27292,7 @@ GL_PREFIX(RequestResidentProgramsNV): GL_PREFIX(TrackMatrixNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5792(%rax), %r11 + movq 5800(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27269,13 +27306,13 @@ GL_PREFIX(TrackMatrixNV): popq %rdx popq %rsi popq %rdi - movq 5792(%rax), %r11 + movq 5800(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5792(%rax), %r11 + movq 5800(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27289,7 +27326,7 @@ GL_PREFIX(TrackMatrixNV): popq %rdx popq %rsi popq %rdi - movq 5792(%rax), %r11 + movq 5800(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TrackMatrixNV), .-GL_PREFIX(TrackMatrixNV) @@ -27300,7 +27337,7 @@ GL_PREFIX(TrackMatrixNV): GL_PREFIX(VertexAttrib1dNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5800(%rax), %r11 + movq 5808(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -27310,13 +27347,13 @@ GL_PREFIX(VertexAttrib1dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5800(%rax), %r11 + movq 5808(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5800(%rax), %r11 + movq 5808(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -27326,7 +27363,7 @@ GL_PREFIX(VertexAttrib1dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5800(%rax), %r11 + movq 5808(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib1dNV), .-GL_PREFIX(VertexAttrib1dNV) @@ -27337,7 +27374,7 @@ GL_PREFIX(VertexAttrib1dNV): GL_PREFIX(VertexAttrib1dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5808(%rax), %r11 + movq 5816(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27347,13 +27384,13 @@ GL_PREFIX(VertexAttrib1dvNV): popq %rbp popq %rsi popq %rdi - movq 5808(%rax), %r11 + movq 5816(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5808(%rax), %r11 + movq 5816(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27363,7 +27400,7 @@ GL_PREFIX(VertexAttrib1dvNV): popq %rbp popq %rsi popq %rdi - movq 5808(%rax), %r11 + movq 5816(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib1dvNV), .-GL_PREFIX(VertexAttrib1dvNV) @@ -27374,7 +27411,7 @@ GL_PREFIX(VertexAttrib1dvNV): GL_PREFIX(VertexAttrib1fNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5816(%rax), %r11 + movq 5824(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -27384,13 +27421,13 @@ GL_PREFIX(VertexAttrib1fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5816(%rax), %r11 + movq 5824(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5816(%rax), %r11 + movq 5824(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -27400,7 +27437,7 @@ GL_PREFIX(VertexAttrib1fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5816(%rax), %r11 + movq 5824(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib1fNV), .-GL_PREFIX(VertexAttrib1fNV) @@ -27411,7 +27448,7 @@ GL_PREFIX(VertexAttrib1fNV): GL_PREFIX(VertexAttrib1fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5824(%rax), %r11 + movq 5832(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27421,13 +27458,13 @@ GL_PREFIX(VertexAttrib1fvNV): popq %rbp popq %rsi popq %rdi - movq 5824(%rax), %r11 + movq 5832(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5824(%rax), %r11 + movq 5832(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27437,7 +27474,7 @@ GL_PREFIX(VertexAttrib1fvNV): popq %rbp popq %rsi popq %rdi - movq 5824(%rax), %r11 + movq 5832(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib1fvNV), .-GL_PREFIX(VertexAttrib1fvNV) @@ -27448,7 +27485,7 @@ GL_PREFIX(VertexAttrib1fvNV): GL_PREFIX(VertexAttrib1sNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5832(%rax), %r11 + movq 5840(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27458,13 +27495,13 @@ GL_PREFIX(VertexAttrib1sNV): popq %rbp popq %rsi popq %rdi - movq 5832(%rax), %r11 + movq 5840(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5832(%rax), %r11 + movq 5840(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27474,7 +27511,7 @@ GL_PREFIX(VertexAttrib1sNV): popq %rbp popq %rsi popq %rdi - movq 5832(%rax), %r11 + movq 5840(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib1sNV), .-GL_PREFIX(VertexAttrib1sNV) @@ -27485,7 +27522,7 @@ GL_PREFIX(VertexAttrib1sNV): GL_PREFIX(VertexAttrib1svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5840(%rax), %r11 + movq 5848(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27495,13 +27532,13 @@ GL_PREFIX(VertexAttrib1svNV): popq %rbp popq %rsi popq %rdi - movq 5840(%rax), %r11 + movq 5848(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5840(%rax), %r11 + movq 5848(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27511,7 +27548,7 @@ GL_PREFIX(VertexAttrib1svNV): popq %rbp popq %rsi popq %rdi - movq 5840(%rax), %r11 + movq 5848(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib1svNV), .-GL_PREFIX(VertexAttrib1svNV) @@ -27522,7 +27559,7 @@ GL_PREFIX(VertexAttrib1svNV): GL_PREFIX(VertexAttrib2dNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5848(%rax), %r11 + movq 5856(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -27534,13 +27571,13 @@ GL_PREFIX(VertexAttrib2dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5848(%rax), %r11 + movq 5856(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5848(%rax), %r11 + movq 5856(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -27552,7 +27589,7 @@ GL_PREFIX(VertexAttrib2dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5848(%rax), %r11 + movq 5856(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib2dNV), .-GL_PREFIX(VertexAttrib2dNV) @@ -27563,7 +27600,7 @@ GL_PREFIX(VertexAttrib2dNV): GL_PREFIX(VertexAttrib2dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5856(%rax), %r11 + movq 5864(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27573,13 +27610,13 @@ GL_PREFIX(VertexAttrib2dvNV): popq %rbp popq %rsi popq %rdi - movq 5856(%rax), %r11 + movq 5864(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5856(%rax), %r11 + movq 5864(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27589,7 +27626,7 @@ GL_PREFIX(VertexAttrib2dvNV): popq %rbp popq %rsi popq %rdi - movq 5856(%rax), %r11 + movq 5864(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib2dvNV), .-GL_PREFIX(VertexAttrib2dvNV) @@ -27600,7 +27637,7 @@ GL_PREFIX(VertexAttrib2dvNV): GL_PREFIX(VertexAttrib2fNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5864(%rax), %r11 + movq 5872(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -27612,13 +27649,13 @@ GL_PREFIX(VertexAttrib2fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5864(%rax), %r11 + movq 5872(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5864(%rax), %r11 + movq 5872(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -27630,7 +27667,7 @@ GL_PREFIX(VertexAttrib2fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5864(%rax), %r11 + movq 5872(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib2fNV), .-GL_PREFIX(VertexAttrib2fNV) @@ -27641,7 +27678,7 @@ GL_PREFIX(VertexAttrib2fNV): GL_PREFIX(VertexAttrib2fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5872(%rax), %r11 + movq 5880(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27651,13 +27688,13 @@ GL_PREFIX(VertexAttrib2fvNV): popq %rbp popq %rsi popq %rdi - movq 5872(%rax), %r11 + movq 5880(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5872(%rax), %r11 + movq 5880(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27667,7 +27704,7 @@ GL_PREFIX(VertexAttrib2fvNV): popq %rbp popq %rsi popq %rdi - movq 5872(%rax), %r11 + movq 5880(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib2fvNV), .-GL_PREFIX(VertexAttrib2fvNV) @@ -27678,7 +27715,7 @@ GL_PREFIX(VertexAttrib2fvNV): GL_PREFIX(VertexAttrib2sNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5880(%rax), %r11 + movq 5888(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27688,13 +27725,13 @@ GL_PREFIX(VertexAttrib2sNV): popq %rdx popq %rsi popq %rdi - movq 5880(%rax), %r11 + movq 5888(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5880(%rax), %r11 + movq 5888(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27704,7 +27741,7 @@ GL_PREFIX(VertexAttrib2sNV): popq %rdx popq %rsi popq %rdi - movq 5880(%rax), %r11 + movq 5888(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib2sNV), .-GL_PREFIX(VertexAttrib2sNV) @@ -27715,7 +27752,7 @@ GL_PREFIX(VertexAttrib2sNV): GL_PREFIX(VertexAttrib2svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5888(%rax), %r11 + movq 5896(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27725,13 +27762,13 @@ GL_PREFIX(VertexAttrib2svNV): popq %rbp popq %rsi popq %rdi - movq 5888(%rax), %r11 + movq 5896(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5888(%rax), %r11 + movq 5896(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27741,7 +27778,7 @@ GL_PREFIX(VertexAttrib2svNV): popq %rbp popq %rsi popq %rdi - movq 5888(%rax), %r11 + movq 5896(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib2svNV), .-GL_PREFIX(VertexAttrib2svNV) @@ -27752,7 +27789,7 @@ GL_PREFIX(VertexAttrib2svNV): GL_PREFIX(VertexAttrib3dNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5896(%rax), %r11 + movq 5904(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $40, %rsp @@ -27766,13 +27803,13 @@ GL_PREFIX(VertexAttrib3dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 5896(%rax), %r11 + movq 5904(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5896(%rax), %r11 + movq 5904(%rax), %r11 jmp *%r11 1: subq $40, %rsp @@ -27786,7 +27823,7 @@ GL_PREFIX(VertexAttrib3dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 5896(%rax), %r11 + movq 5904(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib3dNV), .-GL_PREFIX(VertexAttrib3dNV) @@ -27797,7 +27834,7 @@ GL_PREFIX(VertexAttrib3dNV): GL_PREFIX(VertexAttrib3dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5904(%rax), %r11 + movq 5912(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27807,13 +27844,13 @@ GL_PREFIX(VertexAttrib3dvNV): popq %rbp popq %rsi popq %rdi - movq 5904(%rax), %r11 + movq 5912(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5904(%rax), %r11 + movq 5912(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27823,7 +27860,7 @@ GL_PREFIX(VertexAttrib3dvNV): popq %rbp popq %rsi popq %rdi - movq 5904(%rax), %r11 + movq 5912(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib3dvNV), .-GL_PREFIX(VertexAttrib3dvNV) @@ -27834,7 +27871,7 @@ GL_PREFIX(VertexAttrib3dvNV): GL_PREFIX(VertexAttrib3fNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5912(%rax), %r11 + movq 5920(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $40, %rsp @@ -27848,13 +27885,13 @@ GL_PREFIX(VertexAttrib3fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 5912(%rax), %r11 + movq 5920(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5912(%rax), %r11 + movq 5920(%rax), %r11 jmp *%r11 1: subq $40, %rsp @@ -27868,7 +27905,7 @@ GL_PREFIX(VertexAttrib3fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 5912(%rax), %r11 + movq 5920(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib3fNV), .-GL_PREFIX(VertexAttrib3fNV) @@ -27879,7 +27916,7 @@ GL_PREFIX(VertexAttrib3fNV): GL_PREFIX(VertexAttrib3fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5920(%rax), %r11 + movq 5928(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27889,13 +27926,13 @@ GL_PREFIX(VertexAttrib3fvNV): popq %rbp popq %rsi popq %rdi - movq 5920(%rax), %r11 + movq 5928(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5920(%rax), %r11 + movq 5928(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27905,7 +27942,7 @@ GL_PREFIX(VertexAttrib3fvNV): popq %rbp popq %rsi popq %rdi - movq 5920(%rax), %r11 + movq 5928(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib3fvNV), .-GL_PREFIX(VertexAttrib3fvNV) @@ -27916,7 +27953,7 @@ GL_PREFIX(VertexAttrib3fvNV): GL_PREFIX(VertexAttrib3sNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5928(%rax), %r11 + movq 5936(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27930,13 +27967,13 @@ GL_PREFIX(VertexAttrib3sNV): popq %rdx popq %rsi popq %rdi - movq 5928(%rax), %r11 + movq 5936(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5928(%rax), %r11 + movq 5936(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27950,7 +27987,7 @@ GL_PREFIX(VertexAttrib3sNV): popq %rdx popq %rsi popq %rdi - movq 5928(%rax), %r11 + movq 5936(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib3sNV), .-GL_PREFIX(VertexAttrib3sNV) @@ -27961,7 +27998,7 @@ GL_PREFIX(VertexAttrib3sNV): GL_PREFIX(VertexAttrib3svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5936(%rax), %r11 + movq 5944(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27971,13 +28008,13 @@ GL_PREFIX(VertexAttrib3svNV): popq %rbp popq %rsi popq %rdi - movq 5936(%rax), %r11 + movq 5944(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5936(%rax), %r11 + movq 5944(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27987,7 +28024,7 @@ GL_PREFIX(VertexAttrib3svNV): popq %rbp popq %rsi popq %rdi - movq 5936(%rax), %r11 + movq 5944(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib3svNV), .-GL_PREFIX(VertexAttrib3svNV) @@ -27998,7 +28035,7 @@ GL_PREFIX(VertexAttrib3svNV): GL_PREFIX(VertexAttrib4dNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5944(%rax), %r11 + movq 5952(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $40, %rsp @@ -28014,13 +28051,13 @@ GL_PREFIX(VertexAttrib4dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 5944(%rax), %r11 + movq 5952(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5944(%rax), %r11 + movq 5952(%rax), %r11 jmp *%r11 1: subq $40, %rsp @@ -28036,7 +28073,7 @@ GL_PREFIX(VertexAttrib4dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 5944(%rax), %r11 + movq 5952(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4dNV), .-GL_PREFIX(VertexAttrib4dNV) @@ -28047,7 +28084,7 @@ GL_PREFIX(VertexAttrib4dNV): GL_PREFIX(VertexAttrib4dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5952(%rax), %r11 + movq 5960(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28057,13 +28094,13 @@ GL_PREFIX(VertexAttrib4dvNV): popq %rbp popq %rsi popq %rdi - movq 5952(%rax), %r11 + movq 5960(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5952(%rax), %r11 + movq 5960(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28073,7 +28110,7 @@ GL_PREFIX(VertexAttrib4dvNV): popq %rbp popq %rsi popq %rdi - movq 5952(%rax), %r11 + movq 5960(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4dvNV), .-GL_PREFIX(VertexAttrib4dvNV) @@ -28084,7 +28121,7 @@ GL_PREFIX(VertexAttrib4dvNV): GL_PREFIX(VertexAttrib4fNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5960(%rax), %r11 + movq 5968(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $40, %rsp @@ -28100,13 +28137,13 @@ GL_PREFIX(VertexAttrib4fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 5960(%rax), %r11 + movq 5968(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5960(%rax), %r11 + movq 5968(%rax), %r11 jmp *%r11 1: subq $40, %rsp @@ -28122,7 +28159,7 @@ GL_PREFIX(VertexAttrib4fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 5960(%rax), %r11 + movq 5968(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4fNV), .-GL_PREFIX(VertexAttrib4fNV) @@ -28133,7 +28170,7 @@ GL_PREFIX(VertexAttrib4fNV): GL_PREFIX(VertexAttrib4fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5968(%rax), %r11 + movq 5976(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28143,13 +28180,13 @@ GL_PREFIX(VertexAttrib4fvNV): popq %rbp popq %rsi popq %rdi - movq 5968(%rax), %r11 + movq 5976(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5968(%rax), %r11 + movq 5976(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28159,7 +28196,7 @@ GL_PREFIX(VertexAttrib4fvNV): popq %rbp popq %rsi popq %rdi - movq 5968(%rax), %r11 + movq 5976(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4fvNV), .-GL_PREFIX(VertexAttrib4fvNV) @@ -28170,7 +28207,7 @@ GL_PREFIX(VertexAttrib4fvNV): GL_PREFIX(VertexAttrib4sNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5976(%rax), %r11 + movq 5984(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28184,13 +28221,13 @@ GL_PREFIX(VertexAttrib4sNV): popq %rdx popq %rsi popq %rdi - movq 5976(%rax), %r11 + movq 5984(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5976(%rax), %r11 + movq 5984(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28204,7 +28241,7 @@ GL_PREFIX(VertexAttrib4sNV): popq %rdx popq %rsi popq %rdi - movq 5976(%rax), %r11 + movq 5984(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4sNV), .-GL_PREFIX(VertexAttrib4sNV) @@ -28215,7 +28252,7 @@ GL_PREFIX(VertexAttrib4sNV): GL_PREFIX(VertexAttrib4svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5984(%rax), %r11 + movq 5992(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28225,13 +28262,13 @@ GL_PREFIX(VertexAttrib4svNV): popq %rbp popq %rsi popq %rdi - movq 5984(%rax), %r11 + movq 5992(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5984(%rax), %r11 + movq 5992(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28241,7 +28278,7 @@ GL_PREFIX(VertexAttrib4svNV): popq %rbp popq %rsi popq %rdi - movq 5984(%rax), %r11 + movq 5992(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4svNV), .-GL_PREFIX(VertexAttrib4svNV) @@ -28252,7 +28289,7 @@ GL_PREFIX(VertexAttrib4svNV): GL_PREFIX(VertexAttrib4ubNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5992(%rax), %r11 + movq 6000(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28266,13 +28303,13 @@ GL_PREFIX(VertexAttrib4ubNV): popq %rdx popq %rsi popq %rdi - movq 5992(%rax), %r11 + movq 6000(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5992(%rax), %r11 + movq 6000(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28286,7 +28323,7 @@ GL_PREFIX(VertexAttrib4ubNV): popq %rdx popq %rsi popq %rdi - movq 5992(%rax), %r11 + movq 6000(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4ubNV), .-GL_PREFIX(VertexAttrib4ubNV) @@ -28297,7 +28334,7 @@ GL_PREFIX(VertexAttrib4ubNV): GL_PREFIX(VertexAttrib4ubvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6000(%rax), %r11 + movq 6008(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28307,13 +28344,13 @@ GL_PREFIX(VertexAttrib4ubvNV): popq %rbp popq %rsi popq %rdi - movq 6000(%rax), %r11 + movq 6008(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6000(%rax), %r11 + movq 6008(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28323,7 +28360,7 @@ GL_PREFIX(VertexAttrib4ubvNV): popq %rbp popq %rsi popq %rdi - movq 6000(%rax), %r11 + movq 6008(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4ubvNV), .-GL_PREFIX(VertexAttrib4ubvNV) @@ -28334,7 +28371,7 @@ GL_PREFIX(VertexAttrib4ubvNV): GL_PREFIX(VertexAttribPointerNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6008(%rax), %r11 + movq 6016(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28348,13 +28385,13 @@ GL_PREFIX(VertexAttribPointerNV): popq %rdx popq %rsi popq %rdi - movq 6008(%rax), %r11 + movq 6016(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6008(%rax), %r11 + movq 6016(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28368,7 +28405,7 @@ GL_PREFIX(VertexAttribPointerNV): popq %rdx popq %rsi popq %rdi - movq 6008(%rax), %r11 + movq 6016(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribPointerNV), .-GL_PREFIX(VertexAttribPointerNV) @@ -28379,7 +28416,7 @@ GL_PREFIX(VertexAttribPointerNV): GL_PREFIX(VertexAttribs1dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6016(%rax), %r11 + movq 6024(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28389,13 +28426,13 @@ GL_PREFIX(VertexAttribs1dvNV): popq %rdx popq %rsi popq %rdi - movq 6016(%rax), %r11 + movq 6024(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6016(%rax), %r11 + movq 6024(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28405,7 +28442,7 @@ GL_PREFIX(VertexAttribs1dvNV): popq %rdx popq %rsi popq %rdi - movq 6016(%rax), %r11 + movq 6024(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs1dvNV), .-GL_PREFIX(VertexAttribs1dvNV) @@ -28416,7 +28453,7 @@ GL_PREFIX(VertexAttribs1dvNV): GL_PREFIX(VertexAttribs1fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6024(%rax), %r11 + movq 6032(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28426,13 +28463,13 @@ GL_PREFIX(VertexAttribs1fvNV): popq %rdx popq %rsi popq %rdi - movq 6024(%rax), %r11 + movq 6032(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6024(%rax), %r11 + movq 6032(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28442,7 +28479,7 @@ GL_PREFIX(VertexAttribs1fvNV): popq %rdx popq %rsi popq %rdi - movq 6024(%rax), %r11 + movq 6032(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs1fvNV), .-GL_PREFIX(VertexAttribs1fvNV) @@ -28453,7 +28490,7 @@ GL_PREFIX(VertexAttribs1fvNV): GL_PREFIX(VertexAttribs1svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6032(%rax), %r11 + movq 6040(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28463,13 +28500,13 @@ GL_PREFIX(VertexAttribs1svNV): popq %rdx popq %rsi popq %rdi - movq 6032(%rax), %r11 + movq 6040(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6032(%rax), %r11 + movq 6040(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28479,7 +28516,7 @@ GL_PREFIX(VertexAttribs1svNV): popq %rdx popq %rsi popq %rdi - movq 6032(%rax), %r11 + movq 6040(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs1svNV), .-GL_PREFIX(VertexAttribs1svNV) @@ -28490,7 +28527,7 @@ GL_PREFIX(VertexAttribs1svNV): GL_PREFIX(VertexAttribs2dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6040(%rax), %r11 + movq 6048(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28500,13 +28537,13 @@ GL_PREFIX(VertexAttribs2dvNV): popq %rdx popq %rsi popq %rdi - movq 6040(%rax), %r11 + movq 6048(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6040(%rax), %r11 + movq 6048(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28516,7 +28553,7 @@ GL_PREFIX(VertexAttribs2dvNV): popq %rdx popq %rsi popq %rdi - movq 6040(%rax), %r11 + movq 6048(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs2dvNV), .-GL_PREFIX(VertexAttribs2dvNV) @@ -28527,7 +28564,7 @@ GL_PREFIX(VertexAttribs2dvNV): GL_PREFIX(VertexAttribs2fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6048(%rax), %r11 + movq 6056(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28537,13 +28574,13 @@ GL_PREFIX(VertexAttribs2fvNV): popq %rdx popq %rsi popq %rdi - movq 6048(%rax), %r11 + movq 6056(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6048(%rax), %r11 + movq 6056(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28553,7 +28590,7 @@ GL_PREFIX(VertexAttribs2fvNV): popq %rdx popq %rsi popq %rdi - movq 6048(%rax), %r11 + movq 6056(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs2fvNV), .-GL_PREFIX(VertexAttribs2fvNV) @@ -28564,7 +28601,7 @@ GL_PREFIX(VertexAttribs2fvNV): GL_PREFIX(VertexAttribs2svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6056(%rax), %r11 + movq 6064(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28574,13 +28611,13 @@ GL_PREFIX(VertexAttribs2svNV): popq %rdx popq %rsi popq %rdi - movq 6056(%rax), %r11 + movq 6064(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6056(%rax), %r11 + movq 6064(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28590,7 +28627,7 @@ GL_PREFIX(VertexAttribs2svNV): popq %rdx popq %rsi popq %rdi - movq 6056(%rax), %r11 + movq 6064(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs2svNV), .-GL_PREFIX(VertexAttribs2svNV) @@ -28601,7 +28638,7 @@ GL_PREFIX(VertexAttribs2svNV): GL_PREFIX(VertexAttribs3dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6064(%rax), %r11 + movq 6072(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28611,13 +28648,13 @@ GL_PREFIX(VertexAttribs3dvNV): popq %rdx popq %rsi popq %rdi - movq 6064(%rax), %r11 + movq 6072(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6064(%rax), %r11 + movq 6072(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28627,7 +28664,7 @@ GL_PREFIX(VertexAttribs3dvNV): popq %rdx popq %rsi popq %rdi - movq 6064(%rax), %r11 + movq 6072(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs3dvNV), .-GL_PREFIX(VertexAttribs3dvNV) @@ -28638,7 +28675,7 @@ GL_PREFIX(VertexAttribs3dvNV): GL_PREFIX(VertexAttribs3fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6072(%rax), %r11 + movq 6080(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28648,13 +28685,13 @@ GL_PREFIX(VertexAttribs3fvNV): popq %rdx popq %rsi popq %rdi - movq 6072(%rax), %r11 + movq 6080(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6072(%rax), %r11 + movq 6080(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28664,7 +28701,7 @@ GL_PREFIX(VertexAttribs3fvNV): popq %rdx popq %rsi popq %rdi - movq 6072(%rax), %r11 + movq 6080(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs3fvNV), .-GL_PREFIX(VertexAttribs3fvNV) @@ -28675,7 +28712,7 @@ GL_PREFIX(VertexAttribs3fvNV): GL_PREFIX(VertexAttribs3svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6080(%rax), %r11 + movq 6088(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28685,13 +28722,13 @@ GL_PREFIX(VertexAttribs3svNV): popq %rdx popq %rsi popq %rdi - movq 6080(%rax), %r11 + movq 6088(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6080(%rax), %r11 + movq 6088(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28701,7 +28738,7 @@ GL_PREFIX(VertexAttribs3svNV): popq %rdx popq %rsi popq %rdi - movq 6080(%rax), %r11 + movq 6088(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs3svNV), .-GL_PREFIX(VertexAttribs3svNV) @@ -28712,7 +28749,7 @@ GL_PREFIX(VertexAttribs3svNV): GL_PREFIX(VertexAttribs4dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6088(%rax), %r11 + movq 6096(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28722,13 +28759,13 @@ GL_PREFIX(VertexAttribs4dvNV): popq %rdx popq %rsi popq %rdi - movq 6088(%rax), %r11 + movq 6096(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6088(%rax), %r11 + movq 6096(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28738,7 +28775,7 @@ GL_PREFIX(VertexAttribs4dvNV): popq %rdx popq %rsi popq %rdi - movq 6088(%rax), %r11 + movq 6096(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs4dvNV), .-GL_PREFIX(VertexAttribs4dvNV) @@ -28749,7 +28786,7 @@ GL_PREFIX(VertexAttribs4dvNV): GL_PREFIX(VertexAttribs4fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6096(%rax), %r11 + movq 6104(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28759,13 +28796,13 @@ GL_PREFIX(VertexAttribs4fvNV): popq %rdx popq %rsi popq %rdi - movq 6096(%rax), %r11 + movq 6104(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6096(%rax), %r11 + movq 6104(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28775,7 +28812,7 @@ GL_PREFIX(VertexAttribs4fvNV): popq %rdx popq %rsi popq %rdi - movq 6096(%rax), %r11 + movq 6104(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs4fvNV), .-GL_PREFIX(VertexAttribs4fvNV) @@ -28786,7 +28823,7 @@ GL_PREFIX(VertexAttribs4fvNV): GL_PREFIX(VertexAttribs4svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6104(%rax), %r11 + movq 6112(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28796,13 +28833,13 @@ GL_PREFIX(VertexAttribs4svNV): popq %rdx popq %rsi popq %rdi - movq 6104(%rax), %r11 + movq 6112(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6104(%rax), %r11 + movq 6112(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28812,7 +28849,7 @@ GL_PREFIX(VertexAttribs4svNV): popq %rdx popq %rsi popq %rdi - movq 6104(%rax), %r11 + movq 6112(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs4svNV), .-GL_PREFIX(VertexAttribs4svNV) @@ -28823,7 +28860,7 @@ GL_PREFIX(VertexAttribs4svNV): GL_PREFIX(VertexAttribs4ubvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6112(%rax), %r11 + movq 6120(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28833,13 +28870,13 @@ GL_PREFIX(VertexAttribs4ubvNV): popq %rdx popq %rsi popq %rdi - movq 6112(%rax), %r11 + movq 6120(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6112(%rax), %r11 + movq 6120(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28849,7 +28886,7 @@ GL_PREFIX(VertexAttribs4ubvNV): popq %rdx popq %rsi popq %rdi - movq 6112(%rax), %r11 + movq 6120(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs4ubvNV), .-GL_PREFIX(VertexAttribs4ubvNV) @@ -28860,7 +28897,7 @@ GL_PREFIX(VertexAttribs4ubvNV): GL_PREFIX(GetTexBumpParameterfvATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6120(%rax), %r11 + movq 6128(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28870,13 +28907,13 @@ GL_PREFIX(GetTexBumpParameterfvATI): popq %rbp popq %rsi popq %rdi - movq 6120(%rax), %r11 + movq 6128(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6120(%rax), %r11 + movq 6128(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28886,7 +28923,7 @@ GL_PREFIX(GetTexBumpParameterfvATI): popq %rbp popq %rsi popq %rdi - movq 6120(%rax), %r11 + movq 6128(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetTexBumpParameterfvATI), .-GL_PREFIX(GetTexBumpParameterfvATI) @@ -28897,7 +28934,7 @@ GL_PREFIX(GetTexBumpParameterfvATI): GL_PREFIX(GetTexBumpParameterivATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6128(%rax), %r11 + movq 6136(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28907,13 +28944,13 @@ GL_PREFIX(GetTexBumpParameterivATI): popq %rbp popq %rsi popq %rdi - movq 6128(%rax), %r11 + movq 6136(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6128(%rax), %r11 + movq 6136(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28923,7 +28960,7 @@ GL_PREFIX(GetTexBumpParameterivATI): popq %rbp popq %rsi popq %rdi - movq 6128(%rax), %r11 + movq 6136(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetTexBumpParameterivATI), .-GL_PREFIX(GetTexBumpParameterivATI) @@ -28934,7 +28971,7 @@ GL_PREFIX(GetTexBumpParameterivATI): GL_PREFIX(TexBumpParameterfvATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6136(%rax), %r11 + movq 6144(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28944,13 +28981,13 @@ GL_PREFIX(TexBumpParameterfvATI): popq %rbp popq %rsi popq %rdi - movq 6136(%rax), %r11 + movq 6144(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6136(%rax), %r11 + movq 6144(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28960,7 +28997,7 @@ GL_PREFIX(TexBumpParameterfvATI): popq %rbp popq %rsi popq %rdi - movq 6136(%rax), %r11 + movq 6144(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TexBumpParameterfvATI), .-GL_PREFIX(TexBumpParameterfvATI) @@ -28971,7 +29008,7 @@ GL_PREFIX(TexBumpParameterfvATI): GL_PREFIX(TexBumpParameterivATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6144(%rax), %r11 + movq 6152(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28981,13 +29018,13 @@ GL_PREFIX(TexBumpParameterivATI): popq %rbp popq %rsi popq %rdi - movq 6144(%rax), %r11 + movq 6152(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6144(%rax), %r11 + movq 6152(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28997,7 +29034,7 @@ GL_PREFIX(TexBumpParameterivATI): popq %rbp popq %rsi popq %rdi - movq 6144(%rax), %r11 + movq 6152(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TexBumpParameterivATI), .-GL_PREFIX(TexBumpParameterivATI) @@ -29008,7 +29045,7 @@ GL_PREFIX(TexBumpParameterivATI): GL_PREFIX(AlphaFragmentOp1ATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6152(%rax), %r11 + movq 6160(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29026,13 +29063,13 @@ GL_PREFIX(AlphaFragmentOp1ATI): popq %rdx popq %rsi popq %rdi - movq 6152(%rax), %r11 + movq 6160(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6152(%rax), %r11 + movq 6160(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29050,7 +29087,7 @@ GL_PREFIX(AlphaFragmentOp1ATI): popq %rdx popq %rsi popq %rdi - movq 6152(%rax), %r11 + movq 6160(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(AlphaFragmentOp1ATI), .-GL_PREFIX(AlphaFragmentOp1ATI) @@ -29061,7 +29098,7 @@ GL_PREFIX(AlphaFragmentOp1ATI): GL_PREFIX(AlphaFragmentOp2ATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6160(%rax), %r11 + movq 6168(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29079,13 +29116,13 @@ GL_PREFIX(AlphaFragmentOp2ATI): popq %rdx popq %rsi popq %rdi - movq 6160(%rax), %r11 + movq 6168(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6160(%rax), %r11 + movq 6168(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29103,7 +29140,7 @@ GL_PREFIX(AlphaFragmentOp2ATI): popq %rdx popq %rsi popq %rdi - movq 6160(%rax), %r11 + movq 6168(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(AlphaFragmentOp2ATI), .-GL_PREFIX(AlphaFragmentOp2ATI) @@ -29114,7 +29151,7 @@ GL_PREFIX(AlphaFragmentOp2ATI): GL_PREFIX(AlphaFragmentOp3ATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6168(%rax), %r11 + movq 6176(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29132,13 +29169,13 @@ GL_PREFIX(AlphaFragmentOp3ATI): popq %rdx popq %rsi popq %rdi - movq 6168(%rax), %r11 + movq 6176(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6168(%rax), %r11 + movq 6176(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29156,7 +29193,7 @@ GL_PREFIX(AlphaFragmentOp3ATI): popq %rdx popq %rsi popq %rdi - movq 6168(%rax), %r11 + movq 6176(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(AlphaFragmentOp3ATI), .-GL_PREFIX(AlphaFragmentOp3ATI) @@ -29167,25 +29204,25 @@ GL_PREFIX(AlphaFragmentOp3ATI): GL_PREFIX(BeginFragmentShaderATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6176(%rax), %r11 + movq 6184(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 6176(%rax), %r11 + movq 6184(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6176(%rax), %r11 + movq 6184(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 6176(%rax), %r11 + movq 6184(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BeginFragmentShaderATI), .-GL_PREFIX(BeginFragmentShaderATI) @@ -29196,25 +29233,25 @@ GL_PREFIX(BeginFragmentShaderATI): GL_PREFIX(BindFragmentShaderATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6184(%rax), %r11 + movq 6192(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6184(%rax), %r11 + movq 6192(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6184(%rax), %r11 + movq 6192(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6184(%rax), %r11 + movq 6192(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindFragmentShaderATI), .-GL_PREFIX(BindFragmentShaderATI) @@ -29225,7 +29262,7 @@ GL_PREFIX(BindFragmentShaderATI): GL_PREFIX(ColorFragmentOp1ATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6192(%rax), %r11 + movq 6200(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29243,13 +29280,13 @@ GL_PREFIX(ColorFragmentOp1ATI): popq %rdx popq %rsi popq %rdi - movq 6192(%rax), %r11 + movq 6200(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6192(%rax), %r11 + movq 6200(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29267,7 +29304,7 @@ GL_PREFIX(ColorFragmentOp1ATI): popq %rdx popq %rsi popq %rdi - movq 6192(%rax), %r11 + movq 6200(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ColorFragmentOp1ATI), .-GL_PREFIX(ColorFragmentOp1ATI) @@ -29278,7 +29315,7 @@ GL_PREFIX(ColorFragmentOp1ATI): GL_PREFIX(ColorFragmentOp2ATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6200(%rax), %r11 + movq 6208(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29296,13 +29333,13 @@ GL_PREFIX(ColorFragmentOp2ATI): popq %rdx popq %rsi popq %rdi - movq 6200(%rax), %r11 + movq 6208(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6200(%rax), %r11 + movq 6208(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29320,7 +29357,7 @@ GL_PREFIX(ColorFragmentOp2ATI): popq %rdx popq %rsi popq %rdi - movq 6200(%rax), %r11 + movq 6208(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ColorFragmentOp2ATI), .-GL_PREFIX(ColorFragmentOp2ATI) @@ -29331,7 +29368,7 @@ GL_PREFIX(ColorFragmentOp2ATI): GL_PREFIX(ColorFragmentOp3ATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6208(%rax), %r11 + movq 6216(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29349,13 +29386,13 @@ GL_PREFIX(ColorFragmentOp3ATI): popq %rdx popq %rsi popq %rdi - movq 6208(%rax), %r11 + movq 6216(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6208(%rax), %r11 + movq 6216(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29373,7 +29410,7 @@ GL_PREFIX(ColorFragmentOp3ATI): popq %rdx popq %rsi popq %rdi - movq 6208(%rax), %r11 + movq 6216(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ColorFragmentOp3ATI), .-GL_PREFIX(ColorFragmentOp3ATI) @@ -29384,25 +29421,25 @@ GL_PREFIX(ColorFragmentOp3ATI): GL_PREFIX(DeleteFragmentShaderATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6216(%rax), %r11 + movq 6224(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6216(%rax), %r11 + movq 6224(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6216(%rax), %r11 + movq 6224(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6216(%rax), %r11 + movq 6224(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DeleteFragmentShaderATI), .-GL_PREFIX(DeleteFragmentShaderATI) @@ -29413,25 +29450,25 @@ GL_PREFIX(DeleteFragmentShaderATI): GL_PREFIX(EndFragmentShaderATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6224(%rax), %r11 + movq 6232(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 6224(%rax), %r11 + movq 6232(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6224(%rax), %r11 + movq 6232(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 6224(%rax), %r11 + movq 6232(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EndFragmentShaderATI), .-GL_PREFIX(EndFragmentShaderATI) @@ -29442,25 +29479,25 @@ GL_PREFIX(EndFragmentShaderATI): GL_PREFIX(GenFragmentShadersATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6232(%rax), %r11 + movq 6240(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6232(%rax), %r11 + movq 6240(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6232(%rax), %r11 + movq 6240(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6232(%rax), %r11 + movq 6240(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GenFragmentShadersATI), .-GL_PREFIX(GenFragmentShadersATI) @@ -29471,7 +29508,7 @@ GL_PREFIX(GenFragmentShadersATI): GL_PREFIX(PassTexCoordATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6240(%rax), %r11 + movq 6248(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29481,13 +29518,13 @@ GL_PREFIX(PassTexCoordATI): popq %rdx popq %rsi popq %rdi - movq 6240(%rax), %r11 + movq 6248(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6240(%rax), %r11 + movq 6248(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29497,7 +29534,7 @@ GL_PREFIX(PassTexCoordATI): popq %rdx popq %rsi popq %rdi - movq 6240(%rax), %r11 + movq 6248(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PassTexCoordATI), .-GL_PREFIX(PassTexCoordATI) @@ -29508,7 +29545,7 @@ GL_PREFIX(PassTexCoordATI): GL_PREFIX(SampleMapATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6248(%rax), %r11 + movq 6256(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29518,13 +29555,13 @@ GL_PREFIX(SampleMapATI): popq %rdx popq %rsi popq %rdi - movq 6248(%rax), %r11 + movq 6256(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6248(%rax), %r11 + movq 6256(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29534,7 +29571,7 @@ GL_PREFIX(SampleMapATI): popq %rdx popq %rsi popq %rdi - movq 6248(%rax), %r11 + movq 6256(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SampleMapATI), .-GL_PREFIX(SampleMapATI) @@ -29545,7 +29582,7 @@ GL_PREFIX(SampleMapATI): GL_PREFIX(SetFragmentShaderConstantATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6256(%rax), %r11 + movq 6264(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29555,13 +29592,13 @@ GL_PREFIX(SetFragmentShaderConstantATI): popq %rbp popq %rsi popq %rdi - movq 6256(%rax), %r11 + movq 6264(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6256(%rax), %r11 + movq 6264(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29571,7 +29608,7 @@ GL_PREFIX(SetFragmentShaderConstantATI): popq %rbp popq %rsi popq %rdi - movq 6256(%rax), %r11 + movq 6264(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SetFragmentShaderConstantATI), .-GL_PREFIX(SetFragmentShaderConstantATI) @@ -29582,7 +29619,7 @@ GL_PREFIX(SetFragmentShaderConstantATI): GL_PREFIX(PointParameteriNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6264(%rax), %r11 + movq 6272(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29592,13 +29629,13 @@ GL_PREFIX(PointParameteriNV): popq %rbp popq %rsi popq %rdi - movq 6264(%rax), %r11 + movq 6272(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6264(%rax), %r11 + movq 6272(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29608,7 +29645,7 @@ GL_PREFIX(PointParameteriNV): popq %rbp popq %rsi popq %rdi - movq 6264(%rax), %r11 + movq 6272(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PointParameteriNV), .-GL_PREFIX(PointParameteriNV) @@ -29617,51 +29654,17 @@ GL_PREFIX(PointParameteriNV): .globl GL_PREFIX(PointParameterivNV) .type GL_PREFIX(PointParameterivNV), @function GL_PREFIX(PointParameterivNV): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 6272(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rdi - pushq %rsi - pushq %rbp - call _x86_64_get_dispatch@PLT - popq %rbp - popq %rsi - popq %rdi - movq 6272(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 6272(%rax), %r11 - jmp *%r11 -1: - pushq %rdi - pushq %rsi - pushq %rbp - call _glapi_get_dispatch - popq %rbp - popq %rsi - popq %rdi - movq 6272(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(PointParameterivNV), .-GL_PREFIX(PointParameterivNV) - - .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_785) - .type GL_PREFIX(_dispatch_stub_785), @function - HIDDEN(GL_PREFIX(_dispatch_stub_785)) -GL_PREFIX(_dispatch_stub_785): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 6280(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi + pushq %rsi + pushq %rbp call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi popq %rdi movq 6280(%rax), %r11 jmp *%r11 @@ -29673,12 +29676,16 @@ GL_PREFIX(_dispatch_stub_785): jmp *%r11 1: pushq %rdi + pushq %rsi + pushq %rbp call _glapi_get_dispatch + popq %rbp + popq %rsi popq %rdi movq 6280(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_785), .-GL_PREFIX(_dispatch_stub_785) + .size GL_PREFIX(PointParameterivNV), .-GL_PREFIX(PointParameterivNV) .p2align 4,,15 .globl GL_PREFIX(_dispatch_stub_786) @@ -29721,11 +29728,7 @@ GL_PREFIX(_dispatch_stub_787): jmp *%r11 #elif defined(PTHREADS) pushq %rdi - pushq %rsi - pushq %rbp call _x86_64_get_dispatch@PLT - popq %rbp - popq %rsi popq %rdi movq 6296(%rax), %r11 jmp *%r11 @@ -29737,11 +29740,7 @@ GL_PREFIX(_dispatch_stub_787): jmp *%r11 1: pushq %rdi - pushq %rsi - pushq %rbp call _glapi_get_dispatch - popq %rbp - popq %rsi popq %rdi movq 6296(%rax), %r11 jmp *%r11 @@ -29797,7 +29796,11 @@ GL_PREFIX(_dispatch_stub_789): jmp *%r11 #elif defined(PTHREADS) pushq %rdi + pushq %rsi + pushq %rbp call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi popq %rdi movq 6312(%rax), %r11 jmp *%r11 @@ -29809,20 +29812,54 @@ GL_PREFIX(_dispatch_stub_789): jmp *%r11 1: pushq %rdi + pushq %rsi + pushq %rbp call _glapi_get_dispatch + popq %rbp + popq %rsi popq %rdi movq 6312(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(_dispatch_stub_789), .-GL_PREFIX(_dispatch_stub_789) + .p2align 4,,15 + .globl GL_PREFIX(_dispatch_stub_790) + .type GL_PREFIX(_dispatch_stub_790), @function + HIDDEN(GL_PREFIX(_dispatch_stub_790)) +GL_PREFIX(_dispatch_stub_790): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 6320(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + call _x86_64_get_dispatch@PLT + popq %rdi + movq 6320(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 6320(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + call _glapi_get_dispatch + popq %rdi + movq 6320(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_790), .-GL_PREFIX(_dispatch_stub_790) + .p2align 4,,15 .globl GL_PREFIX(GetProgramNamedParameterdvNV) .type GL_PREFIX(GetProgramNamedParameterdvNV), @function GL_PREFIX(GetProgramNamedParameterdvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6320(%rax), %r11 + movq 6328(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29836,13 +29873,13 @@ GL_PREFIX(GetProgramNamedParameterdvNV): popq %rdx popq %rsi popq %rdi - movq 6320(%rax), %r11 + movq 6328(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6320(%rax), %r11 + movq 6328(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29856,7 +29893,7 @@ GL_PREFIX(GetProgramNamedParameterdvNV): popq %rdx popq %rsi popq %rdi - movq 6320(%rax), %r11 + movq 6328(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetProgramNamedParameterdvNV), .-GL_PREFIX(GetProgramNamedParameterdvNV) @@ -29867,7 +29904,7 @@ GL_PREFIX(GetProgramNamedParameterdvNV): GL_PREFIX(GetProgramNamedParameterfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6328(%rax), %r11 + movq 6336(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29881,13 +29918,13 @@ GL_PREFIX(GetProgramNamedParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 6328(%rax), %r11 + movq 6336(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6328(%rax), %r11 + movq 6336(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29901,7 +29938,7 @@ GL_PREFIX(GetProgramNamedParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 6328(%rax), %r11 + movq 6336(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetProgramNamedParameterfvNV), .-GL_PREFIX(GetProgramNamedParameterfvNV) @@ -29912,7 +29949,7 @@ GL_PREFIX(GetProgramNamedParameterfvNV): GL_PREFIX(ProgramNamedParameter4dNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6336(%rax), %r11 + movq 6344(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $56, %rsp @@ -29932,13 +29969,13 @@ GL_PREFIX(ProgramNamedParameter4dNV): movq 8(%rsp), %rsi movq (%rsp), %rdi addq $56, %rsp - movq 6336(%rax), %r11 + movq 6344(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6336(%rax), %r11 + movq 6344(%rax), %r11 jmp *%r11 1: subq $56, %rsp @@ -29958,7 +29995,7 @@ GL_PREFIX(ProgramNamedParameter4dNV): movq 8(%rsp), %rsi movq (%rsp), %rdi addq $56, %rsp - movq 6336(%rax), %r11 + movq 6344(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ProgramNamedParameter4dNV), .-GL_PREFIX(ProgramNamedParameter4dNV) @@ -29969,7 +30006,7 @@ GL_PREFIX(ProgramNamedParameter4dNV): GL_PREFIX(ProgramNamedParameter4dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6344(%rax), %r11 + movq 6352(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29983,13 +30020,13 @@ GL_PREFIX(ProgramNamedParameter4dvNV): popq %rdx popq %rsi popq %rdi - movq 6344(%rax), %r11 + movq 6352(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6344(%rax), %r11 + movq 6352(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30003,7 +30040,7 @@ GL_PREFIX(ProgramNamedParameter4dvNV): popq %rdx popq %rsi popq %rdi - movq 6344(%rax), %r11 + movq 6352(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ProgramNamedParameter4dvNV), .-GL_PREFIX(ProgramNamedParameter4dvNV) @@ -30014,7 +30051,7 @@ GL_PREFIX(ProgramNamedParameter4dvNV): GL_PREFIX(ProgramNamedParameter4fNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6352(%rax), %r11 + movq 6360(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $56, %rsp @@ -30034,13 +30071,13 @@ GL_PREFIX(ProgramNamedParameter4fNV): movq 8(%rsp), %rsi movq (%rsp), %rdi addq $56, %rsp - movq 6352(%rax), %r11 + movq 6360(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6352(%rax), %r11 + movq 6360(%rax), %r11 jmp *%r11 1: subq $56, %rsp @@ -30060,7 +30097,7 @@ GL_PREFIX(ProgramNamedParameter4fNV): movq 8(%rsp), %rsi movq (%rsp), %rdi addq $56, %rsp - movq 6352(%rax), %r11 + movq 6360(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ProgramNamedParameter4fNV), .-GL_PREFIX(ProgramNamedParameter4fNV) @@ -30071,7 +30108,7 @@ GL_PREFIX(ProgramNamedParameter4fNV): GL_PREFIX(ProgramNamedParameter4fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6360(%rax), %r11 + movq 6368(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30085,13 +30122,13 @@ GL_PREFIX(ProgramNamedParameter4fvNV): popq %rdx popq %rsi popq %rdi - movq 6360(%rax), %r11 + movq 6368(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6360(%rax), %r11 + movq 6368(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30105,7 +30142,7 @@ GL_PREFIX(ProgramNamedParameter4fvNV): popq %rdx popq %rsi popq %rdi - movq 6360(%rax), %r11 + movq 6368(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ProgramNamedParameter4fvNV), .-GL_PREFIX(ProgramNamedParameter4fvNV) @@ -30116,25 +30153,25 @@ GL_PREFIX(ProgramNamedParameter4fvNV): GL_PREFIX(PrimitiveRestartIndexNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6368(%rax), %r11 + movq 6376(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6368(%rax), %r11 + movq 6376(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6368(%rax), %r11 + movq 6376(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6368(%rax), %r11 + movq 6376(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PrimitiveRestartIndexNV), .-GL_PREFIX(PrimitiveRestartIndexNV) @@ -30145,67 +30182,29 @@ GL_PREFIX(PrimitiveRestartIndexNV): GL_PREFIX(PrimitiveRestartNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6376(%rax), %r11 + movq 6384(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 6376(%rax), %r11 + movq 6384(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6376(%rax), %r11 + movq 6384(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 6376(%rax), %r11 + movq 6384(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PrimitiveRestartNV), .-GL_PREFIX(PrimitiveRestartNV) - .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_798) - .type GL_PREFIX(_dispatch_stub_798), @function - HIDDEN(GL_PREFIX(_dispatch_stub_798)) -GL_PREFIX(_dispatch_stub_798): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 6384(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rdi - pushq %rsi - pushq %rbp - call _x86_64_get_dispatch@PLT - popq %rbp - popq %rsi - popq %rdi - movq 6384(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 6384(%rax), %r11 - jmp *%r11 -1: - pushq %rdi - pushq %rsi - pushq %rbp - call _glapi_get_dispatch - popq %rbp - popq %rsi - popq %rdi - movq 6384(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_798), .-GL_PREFIX(_dispatch_stub_798) - .p2align 4,,15 .globl GL_PREFIX(_dispatch_stub_799) .type GL_PREFIX(_dispatch_stub_799), @function @@ -30245,9 +30244,10 @@ GL_PREFIX(_dispatch_stub_799): .size GL_PREFIX(_dispatch_stub_799), .-GL_PREFIX(_dispatch_stub_799) .p2align 4,,15 - .globl GL_PREFIX(BindFramebufferEXT) - .type GL_PREFIX(BindFramebufferEXT), @function -GL_PREFIX(BindFramebufferEXT): + .globl GL_PREFIX(_dispatch_stub_800) + .type GL_PREFIX(_dispatch_stub_800), @function + HIDDEN(GL_PREFIX(_dispatch_stub_800)) +GL_PREFIX(_dispatch_stub_800): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 6400(%rax), %r11 @@ -30278,6 +30278,43 @@ GL_PREFIX(BindFramebufferEXT): popq %rdi movq 6400(%rax), %r11 jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_800), .-GL_PREFIX(_dispatch_stub_800) + + .p2align 4,,15 + .globl GL_PREFIX(BindFramebufferEXT) + .type GL_PREFIX(BindFramebufferEXT), @function +GL_PREFIX(BindFramebufferEXT): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 6408(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi + popq %rdi + movq 6408(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 6408(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %rsi + popq %rdi + movq 6408(%rax), %r11 + jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindFramebufferEXT), .-GL_PREFIX(BindFramebufferEXT) @@ -30287,7 +30324,7 @@ GL_PREFIX(BindFramebufferEXT): GL_PREFIX(BindRenderbufferEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6408(%rax), %r11 + movq 6416(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30297,13 +30334,13 @@ GL_PREFIX(BindRenderbufferEXT): popq %rbp popq %rsi popq %rdi - movq 6408(%rax), %r11 + movq 6416(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6408(%rax), %r11 + movq 6416(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30313,7 +30350,7 @@ GL_PREFIX(BindRenderbufferEXT): popq %rbp popq %rsi popq %rdi - movq 6408(%rax), %r11 + movq 6416(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindRenderbufferEXT), .-GL_PREFIX(BindRenderbufferEXT) @@ -30324,25 +30361,25 @@ GL_PREFIX(BindRenderbufferEXT): GL_PREFIX(CheckFramebufferStatusEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6416(%rax), %r11 + movq 6424(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6416(%rax), %r11 + movq 6424(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6416(%rax), %r11 + movq 6424(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6416(%rax), %r11 + movq 6424(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CheckFramebufferStatusEXT), .-GL_PREFIX(CheckFramebufferStatusEXT) @@ -30353,7 +30390,7 @@ GL_PREFIX(CheckFramebufferStatusEXT): GL_PREFIX(DeleteFramebuffersEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6424(%rax), %r11 + movq 6432(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30363,13 +30400,13 @@ GL_PREFIX(DeleteFramebuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6424(%rax), %r11 + movq 6432(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6424(%rax), %r11 + movq 6432(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30379,7 +30416,7 @@ GL_PREFIX(DeleteFramebuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6424(%rax), %r11 + movq 6432(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DeleteFramebuffersEXT), .-GL_PREFIX(DeleteFramebuffersEXT) @@ -30390,7 +30427,7 @@ GL_PREFIX(DeleteFramebuffersEXT): GL_PREFIX(DeleteRenderbuffersEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6432(%rax), %r11 + movq 6440(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30400,13 +30437,13 @@ GL_PREFIX(DeleteRenderbuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6432(%rax), %r11 + movq 6440(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6432(%rax), %r11 + movq 6440(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30416,7 +30453,7 @@ GL_PREFIX(DeleteRenderbuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6432(%rax), %r11 + movq 6440(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DeleteRenderbuffersEXT), .-GL_PREFIX(DeleteRenderbuffersEXT) @@ -30427,7 +30464,7 @@ GL_PREFIX(DeleteRenderbuffersEXT): GL_PREFIX(FramebufferRenderbufferEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6440(%rax), %r11 + movq 6448(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30441,13 +30478,13 @@ GL_PREFIX(FramebufferRenderbufferEXT): popq %rdx popq %rsi popq %rdi - movq 6440(%rax), %r11 + movq 6448(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6440(%rax), %r11 + movq 6448(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30461,7 +30498,7 @@ GL_PREFIX(FramebufferRenderbufferEXT): popq %rdx popq %rsi popq %rdi - movq 6440(%rax), %r11 + movq 6448(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FramebufferRenderbufferEXT), .-GL_PREFIX(FramebufferRenderbufferEXT) @@ -30472,7 +30509,7 @@ GL_PREFIX(FramebufferRenderbufferEXT): GL_PREFIX(FramebufferTexture1DEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6448(%rax), %r11 + movq 6456(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30486,13 +30523,13 @@ GL_PREFIX(FramebufferTexture1DEXT): popq %rdx popq %rsi popq %rdi - movq 6448(%rax), %r11 + movq 6456(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6448(%rax), %r11 + movq 6456(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30506,7 +30543,7 @@ GL_PREFIX(FramebufferTexture1DEXT): popq %rdx popq %rsi popq %rdi - movq 6448(%rax), %r11 + movq 6456(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FramebufferTexture1DEXT), .-GL_PREFIX(FramebufferTexture1DEXT) @@ -30517,7 +30554,7 @@ GL_PREFIX(FramebufferTexture1DEXT): GL_PREFIX(FramebufferTexture2DEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6456(%rax), %r11 + movq 6464(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30531,13 +30568,13 @@ GL_PREFIX(FramebufferTexture2DEXT): popq %rdx popq %rsi popq %rdi - movq 6456(%rax), %r11 + movq 6464(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6456(%rax), %r11 + movq 6464(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30551,7 +30588,7 @@ GL_PREFIX(FramebufferTexture2DEXT): popq %rdx popq %rsi popq %rdi - movq 6456(%rax), %r11 + movq 6464(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FramebufferTexture2DEXT), .-GL_PREFIX(FramebufferTexture2DEXT) @@ -30562,7 +30599,7 @@ GL_PREFIX(FramebufferTexture2DEXT): GL_PREFIX(FramebufferTexture3DEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6464(%rax), %r11 + movq 6472(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30580,13 +30617,13 @@ GL_PREFIX(FramebufferTexture3DEXT): popq %rdx popq %rsi popq %rdi - movq 6464(%rax), %r11 + movq 6472(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6464(%rax), %r11 + movq 6472(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30604,7 +30641,7 @@ GL_PREFIX(FramebufferTexture3DEXT): popq %rdx popq %rsi popq %rdi - movq 6464(%rax), %r11 + movq 6472(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FramebufferTexture3DEXT), .-GL_PREFIX(FramebufferTexture3DEXT) @@ -30615,7 +30652,7 @@ GL_PREFIX(FramebufferTexture3DEXT): GL_PREFIX(GenFramebuffersEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6472(%rax), %r11 + movq 6480(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30625,13 +30662,13 @@ GL_PREFIX(GenFramebuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6472(%rax), %r11 + movq 6480(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6472(%rax), %r11 + movq 6480(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30641,7 +30678,7 @@ GL_PREFIX(GenFramebuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6472(%rax), %r11 + movq 6480(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GenFramebuffersEXT), .-GL_PREFIX(GenFramebuffersEXT) @@ -30652,7 +30689,7 @@ GL_PREFIX(GenFramebuffersEXT): GL_PREFIX(GenRenderbuffersEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6480(%rax), %r11 + movq 6488(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30662,13 +30699,13 @@ GL_PREFIX(GenRenderbuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6480(%rax), %r11 + movq 6488(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6480(%rax), %r11 + movq 6488(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30678,7 +30715,7 @@ GL_PREFIX(GenRenderbuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6480(%rax), %r11 + movq 6488(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GenRenderbuffersEXT), .-GL_PREFIX(GenRenderbuffersEXT) @@ -30689,25 +30726,25 @@ GL_PREFIX(GenRenderbuffersEXT): GL_PREFIX(GenerateMipmapEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6488(%rax), %r11 + movq 6496(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6488(%rax), %r11 + movq 6496(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6488(%rax), %r11 + movq 6496(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6488(%rax), %r11 + movq 6496(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GenerateMipmapEXT), .-GL_PREFIX(GenerateMipmapEXT) @@ -30718,7 +30755,7 @@ GL_PREFIX(GenerateMipmapEXT): GL_PREFIX(GetFramebufferAttachmentParameterivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6496(%rax), %r11 + movq 6504(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30732,13 +30769,13 @@ GL_PREFIX(GetFramebufferAttachmentParameterivEXT): popq %rdx popq %rsi popq %rdi - movq 6496(%rax), %r11 + movq 6504(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6496(%rax), %r11 + movq 6504(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30752,7 +30789,7 @@ GL_PREFIX(GetFramebufferAttachmentParameterivEXT): popq %rdx popq %rsi popq %rdi - movq 6496(%rax), %r11 + movq 6504(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetFramebufferAttachmentParameterivEXT), .-GL_PREFIX(GetFramebufferAttachmentParameterivEXT) @@ -30763,7 +30800,7 @@ GL_PREFIX(GetFramebufferAttachmentParameterivEXT): GL_PREFIX(GetRenderbufferParameterivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6504(%rax), %r11 + movq 6512(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30773,13 +30810,13 @@ GL_PREFIX(GetRenderbufferParameterivEXT): popq %rdx popq %rsi popq %rdi - movq 6504(%rax), %r11 + movq 6512(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6504(%rax), %r11 + movq 6512(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30789,7 +30826,7 @@ GL_PREFIX(GetRenderbufferParameterivEXT): popq %rdx popq %rsi popq %rdi - movq 6504(%rax), %r11 + movq 6512(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetRenderbufferParameterivEXT), .-GL_PREFIX(GetRenderbufferParameterivEXT) @@ -30800,25 +30837,25 @@ GL_PREFIX(GetRenderbufferParameterivEXT): GL_PREFIX(IsFramebufferEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6512(%rax), %r11 + movq 6520(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6512(%rax), %r11 + movq 6520(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6512(%rax), %r11 + movq 6520(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6512(%rax), %r11 + movq 6520(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(IsFramebufferEXT), .-GL_PREFIX(IsFramebufferEXT) @@ -30829,25 +30866,25 @@ GL_PREFIX(IsFramebufferEXT): GL_PREFIX(IsRenderbufferEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6520(%rax), %r11 + movq 6528(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6520(%rax), %r11 + movq 6528(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6520(%rax), %r11 + movq 6528(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6520(%rax), %r11 + movq 6528(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(IsRenderbufferEXT), .-GL_PREFIX(IsRenderbufferEXT) @@ -30856,52 +30893,6 @@ GL_PREFIX(IsRenderbufferEXT): .globl GL_PREFIX(RenderbufferStorageEXT) .type GL_PREFIX(RenderbufferStorageEXT), @function GL_PREFIX(RenderbufferStorageEXT): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 6528(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rdi - pushq %rsi - pushq %rdx - pushq %rcx - pushq %rbp - call _x86_64_get_dispatch@PLT - popq %rbp - popq %rcx - popq %rdx - popq %rsi - popq %rdi - movq 6528(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 6528(%rax), %r11 - jmp *%r11 -1: - pushq %rdi - pushq %rsi - pushq %rdx - pushq %rcx - pushq %rbp - call _glapi_get_dispatch - popq %rbp - popq %rcx - popq %rdx - popq %rsi - popq %rdi - movq 6528(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(RenderbufferStorageEXT), .-GL_PREFIX(RenderbufferStorageEXT) - - .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_817) - .type GL_PREFIX(_dispatch_stub_817), @function - HIDDEN(GL_PREFIX(_dispatch_stub_817)) -GL_PREFIX(_dispatch_stub_817): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 6536(%rax), %r11 @@ -30911,13 +30902,9 @@ GL_PREFIX(_dispatch_stub_817): pushq %rsi pushq %rdx pushq %rcx - pushq %r8 - pushq %r9 pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - popq %r9 - popq %r8 popq %rcx popq %rdx popq %rsi @@ -30935,13 +30922,9 @@ GL_PREFIX(_dispatch_stub_817): pushq %rsi pushq %rdx pushq %rcx - pushq %r8 - pushq %r9 pushq %rbp call _glapi_get_dispatch popq %rbp - popq %r9 - popq %r8 popq %rcx popq %rdx popq %rsi @@ -30949,7 +30932,7 @@ GL_PREFIX(_dispatch_stub_817): movq 6536(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_817), .-GL_PREFIX(_dispatch_stub_817) + .size GL_PREFIX(RenderbufferStorageEXT), .-GL_PREFIX(RenderbufferStorageEXT) .p2align 4,,15 .globl GL_PREFIX(_dispatch_stub_818) @@ -30964,7 +30947,15 @@ GL_PREFIX(_dispatch_stub_818): pushq %rdi pushq %rsi pushq %rdx + pushq %rcx + pushq %r8 + pushq %r9 + pushq %rbp call _x86_64_get_dispatch@PLT + popq %rbp + popq %r9 + popq %r8 + popq %rcx popq %rdx popq %rsi popq %rdi @@ -30980,7 +30971,15 @@ GL_PREFIX(_dispatch_stub_818): pushq %rdi pushq %rsi pushq %rdx + pushq %rcx + pushq %r8 + pushq %r9 + pushq %rbp call _glapi_get_dispatch + popq %rbp + popq %r9 + popq %r8 + popq %rcx popq %rdx popq %rsi popq %rdi @@ -31028,9 +31027,10 @@ GL_PREFIX(_dispatch_stub_819): .size GL_PREFIX(_dispatch_stub_819), .-GL_PREFIX(_dispatch_stub_819) .p2align 4,,15 - .globl GL_PREFIX(BindFragDataLocationEXT) - .type GL_PREFIX(BindFragDataLocationEXT), @function -GL_PREFIX(BindFragDataLocationEXT): + .globl GL_PREFIX(_dispatch_stub_820) + .type GL_PREFIX(_dispatch_stub_820), @function + HIDDEN(GL_PREFIX(_dispatch_stub_820)) +GL_PREFIX(_dispatch_stub_820): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 6560(%rax), %r11 @@ -31061,6 +31061,43 @@ GL_PREFIX(BindFragDataLocationEXT): popq %rdi movq 6560(%rax), %r11 jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_820), .-GL_PREFIX(_dispatch_stub_820) + + .p2align 4,,15 + .globl GL_PREFIX(BindFragDataLocationEXT) + .type GL_PREFIX(BindFragDataLocationEXT), @function +GL_PREFIX(BindFragDataLocationEXT): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 6568(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + call _x86_64_get_dispatch@PLT + popq %rdx + popq %rsi + popq %rdi + movq 6568(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 6568(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + call _glapi_get_dispatch + popq %rdx + popq %rsi + popq %rdi + movq 6568(%rax), %r11 + jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindFragDataLocationEXT), .-GL_PREFIX(BindFragDataLocationEXT) @@ -31070,7 +31107,7 @@ GL_PREFIX(BindFragDataLocationEXT): GL_PREFIX(GetFragDataLocationEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6568(%rax), %r11 + movq 6576(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31080,13 +31117,13 @@ GL_PREFIX(GetFragDataLocationEXT): popq %rbp popq %rsi popq %rdi - movq 6568(%rax), %r11 + movq 6576(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6568(%rax), %r11 + movq 6576(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31096,7 +31133,7 @@ GL_PREFIX(GetFragDataLocationEXT): popq %rbp popq %rsi popq %rdi - movq 6568(%rax), %r11 + movq 6576(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetFragDataLocationEXT), .-GL_PREFIX(GetFragDataLocationEXT) @@ -31107,7 +31144,7 @@ GL_PREFIX(GetFragDataLocationEXT): GL_PREFIX(GetUniformuivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6576(%rax), %r11 + movq 6584(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31117,13 +31154,13 @@ GL_PREFIX(GetUniformuivEXT): popq %rdx popq %rsi popq %rdi - movq 6576(%rax), %r11 + movq 6584(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6576(%rax), %r11 + movq 6584(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31133,7 +31170,7 @@ GL_PREFIX(GetUniformuivEXT): popq %rdx popq %rsi popq %rdi - movq 6576(%rax), %r11 + movq 6584(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetUniformuivEXT), .-GL_PREFIX(GetUniformuivEXT) @@ -31144,7 +31181,7 @@ GL_PREFIX(GetUniformuivEXT): GL_PREFIX(GetVertexAttribIivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6584(%rax), %r11 + movq 6592(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31154,13 +31191,13 @@ GL_PREFIX(GetVertexAttribIivEXT): popq %rdx popq %rsi popq %rdi - movq 6584(%rax), %r11 + movq 6592(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6584(%rax), %r11 + movq 6592(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31170,7 +31207,7 @@ GL_PREFIX(GetVertexAttribIivEXT): popq %rdx popq %rsi popq %rdi - movq 6584(%rax), %r11 + movq 6592(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetVertexAttribIivEXT), .-GL_PREFIX(GetVertexAttribIivEXT) @@ -31181,7 +31218,7 @@ GL_PREFIX(GetVertexAttribIivEXT): GL_PREFIX(GetVertexAttribIuivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6592(%rax), %r11 + movq 6600(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31191,13 +31228,13 @@ GL_PREFIX(GetVertexAttribIuivEXT): popq %rdx popq %rsi popq %rdi - movq 6592(%rax), %r11 + movq 6600(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6592(%rax), %r11 + movq 6600(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31207,7 +31244,7 @@ GL_PREFIX(GetVertexAttribIuivEXT): popq %rdx popq %rsi popq %rdi - movq 6592(%rax), %r11 + movq 6600(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetVertexAttribIuivEXT), .-GL_PREFIX(GetVertexAttribIuivEXT) @@ -31218,7 +31255,7 @@ GL_PREFIX(GetVertexAttribIuivEXT): GL_PREFIX(Uniform1uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6600(%rax), %r11 + movq 6608(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31228,13 +31265,13 @@ GL_PREFIX(Uniform1uiEXT): popq %rbp popq %rsi popq %rdi - movq 6600(%rax), %r11 + movq 6608(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6600(%rax), %r11 + movq 6608(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31244,7 +31281,7 @@ GL_PREFIX(Uniform1uiEXT): popq %rbp popq %rsi popq %rdi - movq 6600(%rax), %r11 + movq 6608(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform1uiEXT), .-GL_PREFIX(Uniform1uiEXT) @@ -31255,7 +31292,7 @@ GL_PREFIX(Uniform1uiEXT): GL_PREFIX(Uniform1uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6608(%rax), %r11 + movq 6616(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31265,13 +31302,13 @@ GL_PREFIX(Uniform1uivEXT): popq %rdx popq %rsi popq %rdi - movq 6608(%rax), %r11 + movq 6616(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6608(%rax), %r11 + movq 6616(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31281,7 +31318,7 @@ GL_PREFIX(Uniform1uivEXT): popq %rdx popq %rsi popq %rdi - movq 6608(%rax), %r11 + movq 6616(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform1uivEXT), .-GL_PREFIX(Uniform1uivEXT) @@ -31292,7 +31329,7 @@ GL_PREFIX(Uniform1uivEXT): GL_PREFIX(Uniform2uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6616(%rax), %r11 + movq 6624(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31302,13 +31339,13 @@ GL_PREFIX(Uniform2uiEXT): popq %rdx popq %rsi popq %rdi - movq 6616(%rax), %r11 + movq 6624(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6616(%rax), %r11 + movq 6624(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31318,7 +31355,7 @@ GL_PREFIX(Uniform2uiEXT): popq %rdx popq %rsi popq %rdi - movq 6616(%rax), %r11 + movq 6624(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform2uiEXT), .-GL_PREFIX(Uniform2uiEXT) @@ -31329,7 +31366,7 @@ GL_PREFIX(Uniform2uiEXT): GL_PREFIX(Uniform2uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6624(%rax), %r11 + movq 6632(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31339,13 +31376,13 @@ GL_PREFIX(Uniform2uivEXT): popq %rdx popq %rsi popq %rdi - movq 6624(%rax), %r11 + movq 6632(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6624(%rax), %r11 + movq 6632(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31355,7 +31392,7 @@ GL_PREFIX(Uniform2uivEXT): popq %rdx popq %rsi popq %rdi - movq 6624(%rax), %r11 + movq 6632(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform2uivEXT), .-GL_PREFIX(Uniform2uivEXT) @@ -31366,7 +31403,7 @@ GL_PREFIX(Uniform2uivEXT): GL_PREFIX(Uniform3uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6632(%rax), %r11 + movq 6640(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31380,13 +31417,13 @@ GL_PREFIX(Uniform3uiEXT): popq %rdx popq %rsi popq %rdi - movq 6632(%rax), %r11 + movq 6640(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6632(%rax), %r11 + movq 6640(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31400,7 +31437,7 @@ GL_PREFIX(Uniform3uiEXT): popq %rdx popq %rsi popq %rdi - movq 6632(%rax), %r11 + movq 6640(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform3uiEXT), .-GL_PREFIX(Uniform3uiEXT) @@ -31411,7 +31448,7 @@ GL_PREFIX(Uniform3uiEXT): GL_PREFIX(Uniform3uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6640(%rax), %r11 + movq 6648(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31421,13 +31458,13 @@ GL_PREFIX(Uniform3uivEXT): popq %rdx popq %rsi popq %rdi - movq 6640(%rax), %r11 + movq 6648(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6640(%rax), %r11 + movq 6648(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31437,7 +31474,7 @@ GL_PREFIX(Uniform3uivEXT): popq %rdx popq %rsi popq %rdi - movq 6640(%rax), %r11 + movq 6648(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform3uivEXT), .-GL_PREFIX(Uniform3uivEXT) @@ -31448,7 +31485,7 @@ GL_PREFIX(Uniform3uivEXT): GL_PREFIX(Uniform4uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6648(%rax), %r11 + movq 6656(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31462,13 +31499,13 @@ GL_PREFIX(Uniform4uiEXT): popq %rdx popq %rsi popq %rdi - movq 6648(%rax), %r11 + movq 6656(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6648(%rax), %r11 + movq 6656(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31482,7 +31519,7 @@ GL_PREFIX(Uniform4uiEXT): popq %rdx popq %rsi popq %rdi - movq 6648(%rax), %r11 + movq 6656(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform4uiEXT), .-GL_PREFIX(Uniform4uiEXT) @@ -31493,7 +31530,7 @@ GL_PREFIX(Uniform4uiEXT): GL_PREFIX(Uniform4uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6656(%rax), %r11 + movq 6664(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31503,13 +31540,13 @@ GL_PREFIX(Uniform4uivEXT): popq %rdx popq %rsi popq %rdi - movq 6656(%rax), %r11 + movq 6664(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6656(%rax), %r11 + movq 6664(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31519,7 +31556,7 @@ GL_PREFIX(Uniform4uivEXT): popq %rdx popq %rsi popq %rdi - movq 6656(%rax), %r11 + movq 6664(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform4uivEXT), .-GL_PREFIX(Uniform4uivEXT) @@ -31530,7 +31567,7 @@ GL_PREFIX(Uniform4uivEXT): GL_PREFIX(VertexAttribI1iEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6664(%rax), %r11 + movq 6672(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31540,13 +31577,13 @@ GL_PREFIX(VertexAttribI1iEXT): popq %rbp popq %rsi popq %rdi - movq 6664(%rax), %r11 + movq 6672(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6664(%rax), %r11 + movq 6672(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31556,7 +31593,7 @@ GL_PREFIX(VertexAttribI1iEXT): popq %rbp popq %rsi popq %rdi - movq 6664(%rax), %r11 + movq 6672(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI1iEXT), .-GL_PREFIX(VertexAttribI1iEXT) @@ -31567,7 +31604,7 @@ GL_PREFIX(VertexAttribI1iEXT): GL_PREFIX(VertexAttribI1ivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6672(%rax), %r11 + movq 6680(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31577,13 +31614,13 @@ GL_PREFIX(VertexAttribI1ivEXT): popq %rbp popq %rsi popq %rdi - movq 6672(%rax), %r11 + movq 6680(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6672(%rax), %r11 + movq 6680(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31593,7 +31630,7 @@ GL_PREFIX(VertexAttribI1ivEXT): popq %rbp popq %rsi popq %rdi - movq 6672(%rax), %r11 + movq 6680(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI1ivEXT), .-GL_PREFIX(VertexAttribI1ivEXT) @@ -31604,7 +31641,7 @@ GL_PREFIX(VertexAttribI1ivEXT): GL_PREFIX(VertexAttribI1uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6680(%rax), %r11 + movq 6688(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31614,13 +31651,13 @@ GL_PREFIX(VertexAttribI1uiEXT): popq %rbp popq %rsi popq %rdi - movq 6680(%rax), %r11 + movq 6688(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6680(%rax), %r11 + movq 6688(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31630,7 +31667,7 @@ GL_PREFIX(VertexAttribI1uiEXT): popq %rbp popq %rsi popq %rdi - movq 6680(%rax), %r11 + movq 6688(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI1uiEXT), .-GL_PREFIX(VertexAttribI1uiEXT) @@ -31641,7 +31678,7 @@ GL_PREFIX(VertexAttribI1uiEXT): GL_PREFIX(VertexAttribI1uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6688(%rax), %r11 + movq 6696(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31651,13 +31688,13 @@ GL_PREFIX(VertexAttribI1uivEXT): popq %rbp popq %rsi popq %rdi - movq 6688(%rax), %r11 + movq 6696(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6688(%rax), %r11 + movq 6696(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31667,7 +31704,7 @@ GL_PREFIX(VertexAttribI1uivEXT): popq %rbp popq %rsi popq %rdi - movq 6688(%rax), %r11 + movq 6696(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI1uivEXT), .-GL_PREFIX(VertexAttribI1uivEXT) @@ -31678,7 +31715,7 @@ GL_PREFIX(VertexAttribI1uivEXT): GL_PREFIX(VertexAttribI2iEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6696(%rax), %r11 + movq 6704(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31688,13 +31725,13 @@ GL_PREFIX(VertexAttribI2iEXT): popq %rdx popq %rsi popq %rdi - movq 6696(%rax), %r11 + movq 6704(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6696(%rax), %r11 + movq 6704(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31704,7 +31741,7 @@ GL_PREFIX(VertexAttribI2iEXT): popq %rdx popq %rsi popq %rdi - movq 6696(%rax), %r11 + movq 6704(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI2iEXT), .-GL_PREFIX(VertexAttribI2iEXT) @@ -31715,7 +31752,7 @@ GL_PREFIX(VertexAttribI2iEXT): GL_PREFIX(VertexAttribI2ivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6704(%rax), %r11 + movq 6712(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31725,13 +31762,13 @@ GL_PREFIX(VertexAttribI2ivEXT): popq %rbp popq %rsi popq %rdi - movq 6704(%rax), %r11 + movq 6712(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6704(%rax), %r11 + movq 6712(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31741,7 +31778,7 @@ GL_PREFIX(VertexAttribI2ivEXT): popq %rbp popq %rsi popq %rdi - movq 6704(%rax), %r11 + movq 6712(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI2ivEXT), .-GL_PREFIX(VertexAttribI2ivEXT) @@ -31752,7 +31789,7 @@ GL_PREFIX(VertexAttribI2ivEXT): GL_PREFIX(VertexAttribI2uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6712(%rax), %r11 + movq 6720(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31762,13 +31799,13 @@ GL_PREFIX(VertexAttribI2uiEXT): popq %rdx popq %rsi popq %rdi - movq 6712(%rax), %r11 + movq 6720(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6712(%rax), %r11 + movq 6720(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31778,7 +31815,7 @@ GL_PREFIX(VertexAttribI2uiEXT): popq %rdx popq %rsi popq %rdi - movq 6712(%rax), %r11 + movq 6720(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI2uiEXT), .-GL_PREFIX(VertexAttribI2uiEXT) @@ -31789,7 +31826,7 @@ GL_PREFIX(VertexAttribI2uiEXT): GL_PREFIX(VertexAttribI2uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6720(%rax), %r11 + movq 6728(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31799,13 +31836,13 @@ GL_PREFIX(VertexAttribI2uivEXT): popq %rbp popq %rsi popq %rdi - movq 6720(%rax), %r11 + movq 6728(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6720(%rax), %r11 + movq 6728(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31815,7 +31852,7 @@ GL_PREFIX(VertexAttribI2uivEXT): popq %rbp popq %rsi popq %rdi - movq 6720(%rax), %r11 + movq 6728(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI2uivEXT), .-GL_PREFIX(VertexAttribI2uivEXT) @@ -31826,7 +31863,7 @@ GL_PREFIX(VertexAttribI2uivEXT): GL_PREFIX(VertexAttribI3iEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6728(%rax), %r11 + movq 6736(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31840,13 +31877,13 @@ GL_PREFIX(VertexAttribI3iEXT): popq %rdx popq %rsi popq %rdi - movq 6728(%rax), %r11 + movq 6736(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6728(%rax), %r11 + movq 6736(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31860,7 +31897,7 @@ GL_PREFIX(VertexAttribI3iEXT): popq %rdx popq %rsi popq %rdi - movq 6728(%rax), %r11 + movq 6736(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI3iEXT), .-GL_PREFIX(VertexAttribI3iEXT) @@ -31871,7 +31908,7 @@ GL_PREFIX(VertexAttribI3iEXT): GL_PREFIX(VertexAttribI3ivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6736(%rax), %r11 + movq 6744(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31881,13 +31918,13 @@ GL_PREFIX(VertexAttribI3ivEXT): popq %rbp popq %rsi popq %rdi - movq 6736(%rax), %r11 + movq 6744(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6736(%rax), %r11 + movq 6744(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31897,7 +31934,7 @@ GL_PREFIX(VertexAttribI3ivEXT): popq %rbp popq %rsi popq %rdi - movq 6736(%rax), %r11 + movq 6744(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI3ivEXT), .-GL_PREFIX(VertexAttribI3ivEXT) @@ -31908,7 +31945,7 @@ GL_PREFIX(VertexAttribI3ivEXT): GL_PREFIX(VertexAttribI3uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6744(%rax), %r11 + movq 6752(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31922,13 +31959,13 @@ GL_PREFIX(VertexAttribI3uiEXT): popq %rdx popq %rsi popq %rdi - movq 6744(%rax), %r11 + movq 6752(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6744(%rax), %r11 + movq 6752(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31942,7 +31979,7 @@ GL_PREFIX(VertexAttribI3uiEXT): popq %rdx popq %rsi popq %rdi - movq 6744(%rax), %r11 + movq 6752(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI3uiEXT), .-GL_PREFIX(VertexAttribI3uiEXT) @@ -31953,7 +31990,7 @@ GL_PREFIX(VertexAttribI3uiEXT): GL_PREFIX(VertexAttribI3uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6752(%rax), %r11 + movq 6760(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31963,13 +32000,13 @@ GL_PREFIX(VertexAttribI3uivEXT): popq %rbp popq %rsi popq %rdi - movq 6752(%rax), %r11 + movq 6760(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6752(%rax), %r11 + movq 6760(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31979,7 +32016,7 @@ GL_PREFIX(VertexAttribI3uivEXT): popq %rbp popq %rsi popq %rdi - movq 6752(%rax), %r11 + movq 6760(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI3uivEXT), .-GL_PREFIX(VertexAttribI3uivEXT) @@ -31990,7 +32027,7 @@ GL_PREFIX(VertexAttribI3uivEXT): GL_PREFIX(VertexAttribI4bvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6760(%rax), %r11 + movq 6768(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32000,13 +32037,13 @@ GL_PREFIX(VertexAttribI4bvEXT): popq %rbp popq %rsi popq %rdi - movq 6760(%rax), %r11 + movq 6768(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6760(%rax), %r11 + movq 6768(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32016,7 +32053,7 @@ GL_PREFIX(VertexAttribI4bvEXT): popq %rbp popq %rsi popq %rdi - movq 6760(%rax), %r11 + movq 6768(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4bvEXT), .-GL_PREFIX(VertexAttribI4bvEXT) @@ -32027,7 +32064,7 @@ GL_PREFIX(VertexAttribI4bvEXT): GL_PREFIX(VertexAttribI4iEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6768(%rax), %r11 + movq 6776(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32041,13 +32078,13 @@ GL_PREFIX(VertexAttribI4iEXT): popq %rdx popq %rsi popq %rdi - movq 6768(%rax), %r11 + movq 6776(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6768(%rax), %r11 + movq 6776(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32061,7 +32098,7 @@ GL_PREFIX(VertexAttribI4iEXT): popq %rdx popq %rsi popq %rdi - movq 6768(%rax), %r11 + movq 6776(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4iEXT), .-GL_PREFIX(VertexAttribI4iEXT) @@ -32072,7 +32109,7 @@ GL_PREFIX(VertexAttribI4iEXT): GL_PREFIX(VertexAttribI4ivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6776(%rax), %r11 + movq 6784(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32082,13 +32119,13 @@ GL_PREFIX(VertexAttribI4ivEXT): popq %rbp popq %rsi popq %rdi - movq 6776(%rax), %r11 + movq 6784(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6776(%rax), %r11 + movq 6784(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32098,7 +32135,7 @@ GL_PREFIX(VertexAttribI4ivEXT): popq %rbp popq %rsi popq %rdi - movq 6776(%rax), %r11 + movq 6784(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4ivEXT), .-GL_PREFIX(VertexAttribI4ivEXT) @@ -32109,7 +32146,7 @@ GL_PREFIX(VertexAttribI4ivEXT): GL_PREFIX(VertexAttribI4svEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6784(%rax), %r11 + movq 6792(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32119,13 +32156,13 @@ GL_PREFIX(VertexAttribI4svEXT): popq %rbp popq %rsi popq %rdi - movq 6784(%rax), %r11 + movq 6792(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6784(%rax), %r11 + movq 6792(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32135,7 +32172,7 @@ GL_PREFIX(VertexAttribI4svEXT): popq %rbp popq %rsi popq %rdi - movq 6784(%rax), %r11 + movq 6792(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4svEXT), .-GL_PREFIX(VertexAttribI4svEXT) @@ -32146,7 +32183,7 @@ GL_PREFIX(VertexAttribI4svEXT): GL_PREFIX(VertexAttribI4ubvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6792(%rax), %r11 + movq 6800(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32156,13 +32193,13 @@ GL_PREFIX(VertexAttribI4ubvEXT): popq %rbp popq %rsi popq %rdi - movq 6792(%rax), %r11 + movq 6800(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6792(%rax), %r11 + movq 6800(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32172,7 +32209,7 @@ GL_PREFIX(VertexAttribI4ubvEXT): popq %rbp popq %rsi popq %rdi - movq 6792(%rax), %r11 + movq 6800(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4ubvEXT), .-GL_PREFIX(VertexAttribI4ubvEXT) @@ -32183,7 +32220,7 @@ GL_PREFIX(VertexAttribI4ubvEXT): GL_PREFIX(VertexAttribI4uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6800(%rax), %r11 + movq 6808(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32197,13 +32234,13 @@ GL_PREFIX(VertexAttribI4uiEXT): popq %rdx popq %rsi popq %rdi - movq 6800(%rax), %r11 + movq 6808(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6800(%rax), %r11 + movq 6808(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32217,7 +32254,7 @@ GL_PREFIX(VertexAttribI4uiEXT): popq %rdx popq %rsi popq %rdi - movq 6800(%rax), %r11 + movq 6808(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4uiEXT), .-GL_PREFIX(VertexAttribI4uiEXT) @@ -32228,7 +32265,7 @@ GL_PREFIX(VertexAttribI4uiEXT): GL_PREFIX(VertexAttribI4uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6808(%rax), %r11 + movq 6816(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32238,13 +32275,13 @@ GL_PREFIX(VertexAttribI4uivEXT): popq %rbp popq %rsi popq %rdi - movq 6808(%rax), %r11 + movq 6816(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6808(%rax), %r11 + movq 6816(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32254,7 +32291,7 @@ GL_PREFIX(VertexAttribI4uivEXT): popq %rbp popq %rsi popq %rdi - movq 6808(%rax), %r11 + movq 6816(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4uivEXT), .-GL_PREFIX(VertexAttribI4uivEXT) @@ -32265,7 +32302,7 @@ GL_PREFIX(VertexAttribI4uivEXT): GL_PREFIX(VertexAttribI4usvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6816(%rax), %r11 + movq 6824(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32275,13 +32312,13 @@ GL_PREFIX(VertexAttribI4usvEXT): popq %rbp popq %rsi popq %rdi - movq 6816(%rax), %r11 + movq 6824(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6816(%rax), %r11 + movq 6824(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32291,7 +32328,7 @@ GL_PREFIX(VertexAttribI4usvEXT): popq %rbp popq %rsi popq %rdi - movq 6816(%rax), %r11 + movq 6824(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4usvEXT), .-GL_PREFIX(VertexAttribI4usvEXT) @@ -32302,7 +32339,7 @@ GL_PREFIX(VertexAttribI4usvEXT): GL_PREFIX(VertexAttribIPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6824(%rax), %r11 + movq 6832(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32316,13 +32353,13 @@ GL_PREFIX(VertexAttribIPointerEXT): popq %rdx popq %rsi popq %rdi - movq 6824(%rax), %r11 + movq 6832(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6824(%rax), %r11 + movq 6832(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32336,7 +32373,7 @@ GL_PREFIX(VertexAttribIPointerEXT): popq %rdx popq %rsi popq %rdi - movq 6824(%rax), %r11 + movq 6832(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribIPointerEXT), .-GL_PREFIX(VertexAttribIPointerEXT) @@ -32347,7 +32384,7 @@ GL_PREFIX(VertexAttribIPointerEXT): GL_PREFIX(FramebufferTextureLayerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6832(%rax), %r11 + movq 6840(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32361,13 +32398,13 @@ GL_PREFIX(FramebufferTextureLayerEXT): popq %rdx popq %rsi popq %rdi - movq 6832(%rax), %r11 + movq 6840(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6832(%rax), %r11 + movq 6840(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32381,7 +32418,7 @@ GL_PREFIX(FramebufferTextureLayerEXT): popq %rdx popq %rsi popq %rdi - movq 6832(%rax), %r11 + movq 6840(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FramebufferTextureLayerEXT), .-GL_PREFIX(FramebufferTextureLayerEXT) @@ -32392,7 +32429,7 @@ GL_PREFIX(FramebufferTextureLayerEXT): GL_PREFIX(ColorMaskIndexedEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6840(%rax), %r11 + movq 6848(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32406,13 +32443,13 @@ GL_PREFIX(ColorMaskIndexedEXT): popq %rdx popq %rsi popq %rdi - movq 6840(%rax), %r11 + movq 6848(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6840(%rax), %r11 + movq 6848(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32426,7 +32463,7 @@ GL_PREFIX(ColorMaskIndexedEXT): popq %rdx popq %rsi popq %rdi - movq 6840(%rax), %r11 + movq 6848(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ColorMaskIndexedEXT), .-GL_PREFIX(ColorMaskIndexedEXT) @@ -32437,7 +32474,7 @@ GL_PREFIX(ColorMaskIndexedEXT): GL_PREFIX(DisableIndexedEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6848(%rax), %r11 + movq 6856(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32447,13 +32484,13 @@ GL_PREFIX(DisableIndexedEXT): popq %rbp popq %rsi popq %rdi - movq 6848(%rax), %r11 + movq 6856(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6848(%rax), %r11 + movq 6856(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32463,7 +32500,7 @@ GL_PREFIX(DisableIndexedEXT): popq %rbp popq %rsi popq %rdi - movq 6848(%rax), %r11 + movq 6856(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DisableIndexedEXT), .-GL_PREFIX(DisableIndexedEXT) @@ -32474,7 +32511,7 @@ GL_PREFIX(DisableIndexedEXT): GL_PREFIX(EnableIndexedEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6856(%rax), %r11 + movq 6864(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32484,13 +32521,13 @@ GL_PREFIX(EnableIndexedEXT): popq %rbp popq %rsi popq %rdi - movq 6856(%rax), %r11 + movq 6864(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6856(%rax), %r11 + movq 6864(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32500,7 +32537,7 @@ GL_PREFIX(EnableIndexedEXT): popq %rbp popq %rsi popq %rdi - movq 6856(%rax), %r11 + movq 6864(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EnableIndexedEXT), .-GL_PREFIX(EnableIndexedEXT) @@ -32511,7 +32548,7 @@ GL_PREFIX(EnableIndexedEXT): GL_PREFIX(GetBooleanIndexedvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6864(%rax), %r11 + movq 6872(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32521,13 +32558,13 @@ GL_PREFIX(GetBooleanIndexedvEXT): popq %rdx popq %rsi popq %rdi - movq 6864(%rax), %r11 + movq 6872(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6864(%rax), %r11 + movq 6872(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32537,7 +32574,7 @@ GL_PREFIX(GetBooleanIndexedvEXT): popq %rdx popq %rsi popq %rdi - movq 6864(%rax), %r11 + movq 6872(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetBooleanIndexedvEXT), .-GL_PREFIX(GetBooleanIndexedvEXT) @@ -32548,7 +32585,7 @@ GL_PREFIX(GetBooleanIndexedvEXT): GL_PREFIX(GetIntegerIndexedvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6872(%rax), %r11 + movq 6880(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32558,13 +32595,13 @@ GL_PREFIX(GetIntegerIndexedvEXT): popq %rdx popq %rsi popq %rdi - movq 6872(%rax), %r11 + movq 6880(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6872(%rax), %r11 + movq 6880(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32574,7 +32611,7 @@ GL_PREFIX(GetIntegerIndexedvEXT): popq %rdx popq %rsi popq %rdi - movq 6872(%rax), %r11 + movq 6880(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetIntegerIndexedvEXT), .-GL_PREFIX(GetIntegerIndexedvEXT) @@ -32585,7 +32622,7 @@ GL_PREFIX(GetIntegerIndexedvEXT): GL_PREFIX(IsEnabledIndexedEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6880(%rax), %r11 + movq 6888(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32595,13 +32632,13 @@ GL_PREFIX(IsEnabledIndexedEXT): popq %rbp popq %rsi popq %rdi - movq 6880(%rax), %r11 + movq 6888(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6880(%rax), %r11 + movq 6888(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32611,7 +32648,7 @@ GL_PREFIX(IsEnabledIndexedEXT): popq %rbp popq %rsi popq %rdi - movq 6880(%rax), %r11 + movq 6888(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(IsEnabledIndexedEXT), .-GL_PREFIX(IsEnabledIndexedEXT) @@ -32622,7 +32659,7 @@ GL_PREFIX(IsEnabledIndexedEXT): GL_PREFIX(ClearColorIiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6888(%rax), %r11 + movq 6896(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32636,13 +32673,13 @@ GL_PREFIX(ClearColorIiEXT): popq %rdx popq %rsi popq %rdi - movq 6888(%rax), %r11 + movq 6896(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6888(%rax), %r11 + movq 6896(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32656,7 +32693,7 @@ GL_PREFIX(ClearColorIiEXT): popq %rdx popq %rsi popq %rdi - movq 6888(%rax), %r11 + movq 6896(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ClearColorIiEXT), .-GL_PREFIX(ClearColorIiEXT) @@ -32667,7 +32704,7 @@ GL_PREFIX(ClearColorIiEXT): GL_PREFIX(ClearColorIuiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6896(%rax), %r11 + movq 6904(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32681,13 +32718,13 @@ GL_PREFIX(ClearColorIuiEXT): popq %rdx popq %rsi popq %rdi - movq 6896(%rax), %r11 + movq 6904(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6896(%rax), %r11 + movq 6904(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32701,7 +32738,7 @@ GL_PREFIX(ClearColorIuiEXT): popq %rdx popq %rsi popq %rdi - movq 6896(%rax), %r11 + movq 6904(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ClearColorIuiEXT), .-GL_PREFIX(ClearColorIuiEXT) @@ -32712,7 +32749,7 @@ GL_PREFIX(ClearColorIuiEXT): GL_PREFIX(GetTexParameterIivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6904(%rax), %r11 + movq 6912(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32722,13 +32759,13 @@ GL_PREFIX(GetTexParameterIivEXT): popq %rdx popq %rsi popq %rdi - movq 6904(%rax), %r11 + movq 6912(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6904(%rax), %r11 + movq 6912(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32738,7 +32775,7 @@ GL_PREFIX(GetTexParameterIivEXT): popq %rdx popq %rsi popq %rdi - movq 6904(%rax), %r11 + movq 6912(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetTexParameterIivEXT), .-GL_PREFIX(GetTexParameterIivEXT) @@ -32749,7 +32786,7 @@ GL_PREFIX(GetTexParameterIivEXT): GL_PREFIX(GetTexParameterIuivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6912(%rax), %r11 + movq 6920(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32759,13 +32796,13 @@ GL_PREFIX(GetTexParameterIuivEXT): popq %rdx popq %rsi popq %rdi - movq 6912(%rax), %r11 + movq 6920(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6912(%rax), %r11 + movq 6920(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32775,7 +32812,7 @@ GL_PREFIX(GetTexParameterIuivEXT): popq %rdx popq %rsi popq %rdi - movq 6912(%rax), %r11 + movq 6920(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetTexParameterIuivEXT), .-GL_PREFIX(GetTexParameterIuivEXT) @@ -32786,7 +32823,7 @@ GL_PREFIX(GetTexParameterIuivEXT): GL_PREFIX(TexParameterIivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6920(%rax), %r11 + movq 6928(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32796,13 +32833,13 @@ GL_PREFIX(TexParameterIivEXT): popq %rdx popq %rsi popq %rdi - movq 6920(%rax), %r11 + movq 6928(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6920(%rax), %r11 + movq 6928(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32812,7 +32849,7 @@ GL_PREFIX(TexParameterIivEXT): popq %rdx popq %rsi popq %rdi - movq 6920(%rax), %r11 + movq 6928(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TexParameterIivEXT), .-GL_PREFIX(TexParameterIivEXT) @@ -32823,7 +32860,7 @@ GL_PREFIX(TexParameterIivEXT): GL_PREFIX(TexParameterIuivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6928(%rax), %r11 + movq 6936(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32833,13 +32870,13 @@ GL_PREFIX(TexParameterIuivEXT): popq %rdx popq %rsi popq %rdi - movq 6928(%rax), %r11 + movq 6936(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6928(%rax), %r11 + movq 6936(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32849,7 +32886,7 @@ GL_PREFIX(TexParameterIuivEXT): popq %rdx popq %rsi popq %rdi - movq 6928(%rax), %r11 + movq 6936(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TexParameterIuivEXT), .-GL_PREFIX(TexParameterIuivEXT) @@ -32860,7 +32897,7 @@ GL_PREFIX(TexParameterIuivEXT): GL_PREFIX(BeginConditionalRenderNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6936(%rax), %r11 + movq 6944(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32870,13 +32907,13 @@ GL_PREFIX(BeginConditionalRenderNV): popq %rbp popq %rsi popq %rdi - movq 6936(%rax), %r11 + movq 6944(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6936(%rax), %r11 + movq 6944(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32886,7 +32923,7 @@ GL_PREFIX(BeginConditionalRenderNV): popq %rbp popq %rsi popq %rdi - movq 6936(%rax), %r11 + movq 6944(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BeginConditionalRenderNV), .-GL_PREFIX(BeginConditionalRenderNV) @@ -32897,25 +32934,25 @@ GL_PREFIX(BeginConditionalRenderNV): GL_PREFIX(EndConditionalRenderNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6944(%rax), %r11 + movq 6952(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 6944(%rax), %r11 + movq 6952(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6944(%rax), %r11 + movq 6952(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 6944(%rax), %r11 + movq 6952(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EndConditionalRenderNV), .-GL_PREFIX(EndConditionalRenderNV) @@ -32926,25 +32963,25 @@ GL_PREFIX(EndConditionalRenderNV): GL_PREFIX(BeginTransformFeedbackEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6952(%rax), %r11 + movq 6960(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6952(%rax), %r11 + movq 6960(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6952(%rax), %r11 + movq 6960(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6952(%rax), %r11 + movq 6960(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BeginTransformFeedbackEXT), .-GL_PREFIX(BeginTransformFeedbackEXT) @@ -32955,7 +32992,7 @@ GL_PREFIX(BeginTransformFeedbackEXT): GL_PREFIX(BindBufferBaseEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6960(%rax), %r11 + movq 6968(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32965,13 +33002,13 @@ GL_PREFIX(BindBufferBaseEXT): popq %rdx popq %rsi popq %rdi - movq 6960(%rax), %r11 + movq 6968(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6960(%rax), %r11 + movq 6968(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32981,7 +33018,7 @@ GL_PREFIX(BindBufferBaseEXT): popq %rdx popq %rsi popq %rdi - movq 6960(%rax), %r11 + movq 6968(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindBufferBaseEXT), .-GL_PREFIX(BindBufferBaseEXT) @@ -32992,7 +33029,7 @@ GL_PREFIX(BindBufferBaseEXT): GL_PREFIX(BindBufferOffsetEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6968(%rax), %r11 + movq 6976(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33006,13 +33043,13 @@ GL_PREFIX(BindBufferOffsetEXT): popq %rdx popq %rsi popq %rdi - movq 6968(%rax), %r11 + movq 6976(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6968(%rax), %r11 + movq 6976(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33026,7 +33063,7 @@ GL_PREFIX(BindBufferOffsetEXT): popq %rdx popq %rsi popq %rdi - movq 6968(%rax), %r11 + movq 6976(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindBufferOffsetEXT), .-GL_PREFIX(BindBufferOffsetEXT) @@ -33037,7 +33074,7 @@ GL_PREFIX(BindBufferOffsetEXT): GL_PREFIX(BindBufferRangeEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6976(%rax), %r11 + movq 6984(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33051,13 +33088,13 @@ GL_PREFIX(BindBufferRangeEXT): popq %rdx popq %rsi popq %rdi - movq 6976(%rax), %r11 + movq 6984(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6976(%rax), %r11 + movq 6984(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33071,7 +33108,7 @@ GL_PREFIX(BindBufferRangeEXT): popq %rdx popq %rsi popq %rdi - movq 6976(%rax), %r11 + movq 6984(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindBufferRangeEXT), .-GL_PREFIX(BindBufferRangeEXT) @@ -33082,25 +33119,25 @@ GL_PREFIX(BindBufferRangeEXT): GL_PREFIX(EndTransformFeedbackEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6984(%rax), %r11 + movq 6992(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 6984(%rax), %r11 + movq 6992(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6984(%rax), %r11 + movq 6992(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 6984(%rax), %r11 + movq 6992(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EndTransformFeedbackEXT), .-GL_PREFIX(EndTransformFeedbackEXT) @@ -33111,7 +33148,7 @@ GL_PREFIX(EndTransformFeedbackEXT): GL_PREFIX(GetTransformFeedbackVaryingEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6992(%rax), %r11 + movq 7000(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33129,13 +33166,13 @@ GL_PREFIX(GetTransformFeedbackVaryingEXT): popq %rdx popq %rsi popq %rdi - movq 6992(%rax), %r11 + movq 7000(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6992(%rax), %r11 + movq 7000(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33153,7 +33190,7 @@ GL_PREFIX(GetTransformFeedbackVaryingEXT): popq %rdx popq %rsi popq %rdi - movq 6992(%rax), %r11 + movq 7000(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetTransformFeedbackVaryingEXT), .-GL_PREFIX(GetTransformFeedbackVaryingEXT) @@ -33164,7 +33201,7 @@ GL_PREFIX(GetTransformFeedbackVaryingEXT): GL_PREFIX(TransformFeedbackVaryingsEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7000(%rax), %r11 + movq 7008(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33178,13 +33215,13 @@ GL_PREFIX(TransformFeedbackVaryingsEXT): popq %rdx popq %rsi popq %rdi - movq 7000(%rax), %r11 + movq 7008(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7000(%rax), %r11 + movq 7008(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33198,7 +33235,7 @@ GL_PREFIX(TransformFeedbackVaryingsEXT): popq %rdx popq %rsi popq %rdi - movq 7000(%rax), %r11 + movq 7008(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TransformFeedbackVaryingsEXT), .-GL_PREFIX(TransformFeedbackVaryingsEXT) @@ -33207,47 +33244,13 @@ GL_PREFIX(TransformFeedbackVaryingsEXT): .globl GL_PREFIX(ProvokingVertexEXT) .type GL_PREFIX(ProvokingVertexEXT), @function GL_PREFIX(ProvokingVertexEXT): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 7008(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rdi - call _x86_64_get_dispatch@PLT - popq %rdi - movq 7008(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 7008(%rax), %r11 - jmp *%r11 -1: - pushq %rdi - call _glapi_get_dispatch - popq %rdi - movq 7008(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(ProvokingVertexEXT), .-GL_PREFIX(ProvokingVertexEXT) - - .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_877) - .type GL_PREFIX(_dispatch_stub_877), @function - HIDDEN(GL_PREFIX(_dispatch_stub_877)) -GL_PREFIX(_dispatch_stub_877): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 7016(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi - pushq %rsi - pushq %rdx call _x86_64_get_dispatch@PLT - popq %rdx - popq %rsi popq %rdi movq 7016(%rax), %r11 jmp *%r11 @@ -33259,16 +33262,12 @@ GL_PREFIX(_dispatch_stub_877): jmp *%r11 1: pushq %rdi - pushq %rsi - pushq %rdx call _glapi_get_dispatch - popq %rdx - popq %rsi popq %rdi movq 7016(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_877), .-GL_PREFIX(_dispatch_stub_877) + .size GL_PREFIX(ProvokingVertexEXT), .-GL_PREFIX(ProvokingVertexEXT) .p2align 4,,15 .globl GL_PREFIX(_dispatch_stub_878) @@ -33309,9 +33308,10 @@ GL_PREFIX(_dispatch_stub_878): .size GL_PREFIX(_dispatch_stub_878), .-GL_PREFIX(_dispatch_stub_878) .p2align 4,,15 - .globl GL_PREFIX(GetObjectParameterivAPPLE) - .type GL_PREFIX(GetObjectParameterivAPPLE), @function -GL_PREFIX(GetObjectParameterivAPPLE): + .globl GL_PREFIX(_dispatch_stub_879) + .type GL_PREFIX(_dispatch_stub_879), @function + HIDDEN(GL_PREFIX(_dispatch_stub_879)) +GL_PREFIX(_dispatch_stub_879): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 7032(%rax), %r11 @@ -33320,11 +33320,7 @@ GL_PREFIX(GetObjectParameterivAPPLE): pushq %rdi pushq %rsi pushq %rdx - pushq %rcx - pushq %rbp call _x86_64_get_dispatch@PLT - popq %rbp - popq %rcx popq %rdx popq %rsi popq %rdi @@ -33336,6 +33332,47 @@ GL_PREFIX(GetObjectParameterivAPPLE): je 1f movq 7032(%rax), %r11 jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + call _glapi_get_dispatch + popq %rdx + popq %rsi + popq %rdi + movq 7032(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_879), .-GL_PREFIX(_dispatch_stub_879) + + .p2align 4,,15 + .globl GL_PREFIX(GetObjectParameterivAPPLE) + .type GL_PREFIX(GetObjectParameterivAPPLE), @function +GL_PREFIX(GetObjectParameterivAPPLE): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 7040(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rcx + popq %rdx + popq %rsi + popq %rdi + movq 7040(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 7040(%rax), %r11 + jmp *%r11 1: pushq %rdi pushq %rsi @@ -33348,7 +33385,7 @@ GL_PREFIX(GetObjectParameterivAPPLE): popq %rdx popq %rsi popq %rdi - movq 7032(%rax), %r11 + movq 7040(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetObjectParameterivAPPLE), .-GL_PREFIX(GetObjectParameterivAPPLE) @@ -33359,7 +33396,7 @@ GL_PREFIX(GetObjectParameterivAPPLE): GL_PREFIX(ObjectPurgeableAPPLE): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7040(%rax), %r11 + movq 7048(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33369,13 +33406,13 @@ GL_PREFIX(ObjectPurgeableAPPLE): popq %rdx popq %rsi popq %rdi - movq 7040(%rax), %r11 + movq 7048(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7040(%rax), %r11 + movq 7048(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33385,7 +33422,7 @@ GL_PREFIX(ObjectPurgeableAPPLE): popq %rdx popq %rsi popq %rdi - movq 7040(%rax), %r11 + movq 7048(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ObjectPurgeableAPPLE), .-GL_PREFIX(ObjectPurgeableAPPLE) @@ -33396,7 +33433,7 @@ GL_PREFIX(ObjectPurgeableAPPLE): GL_PREFIX(ObjectUnpurgeableAPPLE): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7048(%rax), %r11 + movq 7056(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33406,13 +33443,13 @@ GL_PREFIX(ObjectUnpurgeableAPPLE): popq %rdx popq %rsi popq %rdi - movq 7048(%rax), %r11 + movq 7056(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7048(%rax), %r11 + movq 7056(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33422,7 +33459,7 @@ GL_PREFIX(ObjectUnpurgeableAPPLE): popq %rdx popq %rsi popq %rdi - movq 7048(%rax), %r11 + movq 7056(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ObjectUnpurgeableAPPLE), .-GL_PREFIX(ObjectUnpurgeableAPPLE) @@ -33433,25 +33470,25 @@ GL_PREFIX(ObjectUnpurgeableAPPLE): GL_PREFIX(ActiveProgramEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7056(%rax), %r11 + movq 7064(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 7056(%rax), %r11 + movq 7064(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7056(%rax), %r11 + movq 7064(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 7056(%rax), %r11 + movq 7064(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ActiveProgramEXT), .-GL_PREFIX(ActiveProgramEXT) @@ -33462,7 +33499,7 @@ GL_PREFIX(ActiveProgramEXT): GL_PREFIX(CreateShaderProgramEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7064(%rax), %r11 + movq 7072(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33472,13 +33509,13 @@ GL_PREFIX(CreateShaderProgramEXT): popq %rbp popq %rsi popq %rdi - movq 7064(%rax), %r11 + movq 7072(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7064(%rax), %r11 + movq 7072(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33488,7 +33525,7 @@ GL_PREFIX(CreateShaderProgramEXT): popq %rbp popq %rsi popq %rdi - movq 7064(%rax), %r11 + movq 7072(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CreateShaderProgramEXT), .-GL_PREFIX(CreateShaderProgramEXT) @@ -33499,7 +33536,7 @@ GL_PREFIX(CreateShaderProgramEXT): GL_PREFIX(UseShaderProgramEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7072(%rax), %r11 + movq 7080(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33509,13 +33546,13 @@ GL_PREFIX(UseShaderProgramEXT): popq %rbp popq %rsi popq %rdi - movq 7072(%rax), %r11 + movq 7080(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7072(%rax), %r11 + movq 7080(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33525,7 +33562,7 @@ GL_PREFIX(UseShaderProgramEXT): popq %rbp popq %rsi popq %rdi - movq 7072(%rax), %r11 + movq 7080(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(UseShaderProgramEXT), .-GL_PREFIX(UseShaderProgramEXT) @@ -33536,75 +33573,29 @@ GL_PREFIX(UseShaderProgramEXT): GL_PREFIX(TextureBarrierNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7080(%rax), %r11 + movq 7088(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 7080(%rax), %r11 + movq 7088(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7080(%rax), %r11 + movq 7088(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 7080(%rax), %r11 + movq 7088(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TextureBarrierNV), .-GL_PREFIX(TextureBarrierNV) - .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_886) - .type GL_PREFIX(_dispatch_stub_886), @function - HIDDEN(GL_PREFIX(_dispatch_stub_886)) -GL_PREFIX(_dispatch_stub_886): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 7088(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rdi - pushq %rsi - pushq %rdx - pushq %rcx - pushq %rbp - call _x86_64_get_dispatch@PLT - popq %rbp - popq %rcx - popq %rdx - popq %rsi - popq %rdi - movq 7088(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 7088(%rax), %r11 - jmp *%r11 -1: - pushq %rdi - pushq %rsi - pushq %rdx - pushq %rcx - pushq %rbp - call _glapi_get_dispatch - popq %rbp - popq %rcx - popq %rdx - popq %rsi - popq %rdi - movq 7088(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_886), .-GL_PREFIX(_dispatch_stub_886) - .p2align 4,,15 .globl GL_PREFIX(_dispatch_stub_887) .type GL_PREFIX(_dispatch_stub_887), @function @@ -33710,7 +33701,11 @@ GL_PREFIX(_dispatch_stub_889): pushq %rdi pushq %rsi pushq %rdx + pushq %rcx + pushq %rbp call _x86_64_get_dispatch@PLT + popq %rbp + popq %rcx popq %rdx popq %rsi popq %rdi @@ -33726,7 +33721,11 @@ GL_PREFIX(_dispatch_stub_889): pushq %rdi pushq %rsi pushq %rdx + pushq %rcx + pushq %rbp call _glapi_get_dispatch + popq %rbp + popq %rcx popq %rdx popq %rsi popq %rdi @@ -33774,9 +33773,10 @@ GL_PREFIX(_dispatch_stub_890): .size GL_PREFIX(_dispatch_stub_890), .-GL_PREFIX(_dispatch_stub_890) .p2align 4,,15 - .globl GL_PREFIX(EGLImageTargetRenderbufferStorageOES) - .type GL_PREFIX(EGLImageTargetRenderbufferStorageOES), @function -GL_PREFIX(EGLImageTargetRenderbufferStorageOES): + .globl GL_PREFIX(_dispatch_stub_891) + .type GL_PREFIX(_dispatch_stub_891), @function + HIDDEN(GL_PREFIX(_dispatch_stub_891)) +GL_PREFIX(_dispatch_stub_891): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 7128(%rax), %r11 @@ -33784,9 +33784,9 @@ GL_PREFIX(EGLImageTargetRenderbufferStorageOES): #elif defined(PTHREADS) pushq %rdi pushq %rsi - pushq %rbp + pushq %rdx call _x86_64_get_dispatch@PLT - popq %rbp + popq %rdx popq %rsi popq %rdi movq 7128(%rax), %r11 @@ -33797,6 +33797,43 @@ GL_PREFIX(EGLImageTargetRenderbufferStorageOES): je 1f movq 7128(%rax), %r11 jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + call _glapi_get_dispatch + popq %rdx + popq %rsi + popq %rdi + movq 7128(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_891), .-GL_PREFIX(_dispatch_stub_891) + + .p2align 4,,15 + .globl GL_PREFIX(EGLImageTargetRenderbufferStorageOES) + .type GL_PREFIX(EGLImageTargetRenderbufferStorageOES), @function +GL_PREFIX(EGLImageTargetRenderbufferStorageOES): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 7136(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi + popq %rdi + movq 7136(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 7136(%rax), %r11 + jmp *%r11 1: pushq %rdi pushq %rsi @@ -33805,7 +33842,7 @@ GL_PREFIX(EGLImageTargetRenderbufferStorageOES): popq %rbp popq %rsi popq %rdi - movq 7128(%rax), %r11 + movq 7136(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EGLImageTargetRenderbufferStorageOES), .-GL_PREFIX(EGLImageTargetRenderbufferStorageOES) @@ -33816,7 +33853,7 @@ GL_PREFIX(EGLImageTargetRenderbufferStorageOES): GL_PREFIX(EGLImageTargetTexture2DOES): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7136(%rax), %r11 + movq 7144(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33826,13 +33863,13 @@ GL_PREFIX(EGLImageTargetTexture2DOES): popq %rbp popq %rsi popq %rdi - movq 7136(%rax), %r11 + movq 7144(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7136(%rax), %r11 + movq 7144(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33842,7 +33879,7 @@ GL_PREFIX(EGLImageTargetTexture2DOES): popq %rbp popq %rsi popq %rdi - movq 7136(%rax), %r11 + movq 7144(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EGLImageTargetTexture2DOES), .-GL_PREFIX(EGLImageTargetTexture2DOES) @@ -34105,10 +34142,10 @@ GL_PREFIX(EGLImageTargetTexture2DOES): .globl GL_PREFIX(IsProgramARB) ; .set GL_PREFIX(IsProgramARB), GL_PREFIX(IsProgramNV) .globl GL_PREFIX(PointParameteri) ; .set GL_PREFIX(PointParameteri), GL_PREFIX(PointParameteriNV) .globl GL_PREFIX(PointParameteriv) ; .set GL_PREFIX(PointParameteriv), GL_PREFIX(PointParameterivNV) - .globl GL_PREFIX(DeleteVertexArrays) ; .set GL_PREFIX(DeleteVertexArrays), GL_PREFIX(_dispatch_stub_787) - .globl GL_PREFIX(IsVertexArray) ; .set GL_PREFIX(IsVertexArray), GL_PREFIX(_dispatch_stub_789) + .globl GL_PREFIX(DeleteVertexArrays) ; .set GL_PREFIX(DeleteVertexArrays), GL_PREFIX(_dispatch_stub_788) + .globl GL_PREFIX(IsVertexArray) ; .set GL_PREFIX(IsVertexArray), GL_PREFIX(_dispatch_stub_790) .globl GL_PREFIX(PrimitiveRestartIndex) ; .set GL_PREFIX(PrimitiveRestartIndex), GL_PREFIX(PrimitiveRestartIndexNV) - .globl GL_PREFIX(BlendEquationSeparate) ; .set GL_PREFIX(BlendEquationSeparate), GL_PREFIX(_dispatch_stub_799) + .globl GL_PREFIX(BlendEquationSeparate) ; .set GL_PREFIX(BlendEquationSeparate), GL_PREFIX(_dispatch_stub_800) .globl GL_PREFIX(BindFramebuffer) ; .set GL_PREFIX(BindFramebuffer), GL_PREFIX(BindFramebufferEXT) .globl GL_PREFIX(BindRenderbuffer) ; .set GL_PREFIX(BindRenderbuffer), GL_PREFIX(BindRenderbufferEXT) .globl GL_PREFIX(CheckFramebufferStatus) ; .set GL_PREFIX(CheckFramebufferStatus), GL_PREFIX(CheckFramebufferStatusEXT) @@ -34126,7 +34163,7 @@ GL_PREFIX(EGLImageTargetTexture2DOES): .globl GL_PREFIX(IsFramebuffer) ; .set GL_PREFIX(IsFramebuffer), GL_PREFIX(IsFramebufferEXT) .globl GL_PREFIX(IsRenderbuffer) ; .set GL_PREFIX(IsRenderbuffer), GL_PREFIX(IsRenderbufferEXT) .globl GL_PREFIX(RenderbufferStorage) ; .set GL_PREFIX(RenderbufferStorage), GL_PREFIX(RenderbufferStorageEXT) - .globl GL_PREFIX(BlitFramebuffer) ; .set GL_PREFIX(BlitFramebuffer), GL_PREFIX(_dispatch_stub_817) + .globl GL_PREFIX(BlitFramebuffer) ; .set GL_PREFIX(BlitFramebuffer), GL_PREFIX(_dispatch_stub_818) .globl GL_PREFIX(BindFragDataLocation) ; .set GL_PREFIX(BindFragDataLocation), GL_PREFIX(BindFragDataLocationEXT) .globl GL_PREFIX(GetFragDataLocation) ; .set GL_PREFIX(GetFragDataLocation), GL_PREFIX(GetFragDataLocationEXT) .globl GL_PREFIX(GetUniformuiv) ; .set GL_PREFIX(GetUniformuiv), GL_PREFIX(GetUniformuivEXT) diff --git a/src/mapi/glapi/glapi_x86.S b/src/mapi/glapi/glapi_x86.S index 7b3da73365f..f46ac5fcd94 100644 --- a/src/mapi/glapi/glapi_x86.S +++ b/src/mapi/glapi/glapi_x86.S @@ -732,38 +732,37 @@ GLNAME(gl_dispatch_functions_start): GL_STUB(VertexAttribDivisorARB, 579, VertexAttribDivisorARB@8) GL_STUB(FlushMappedBufferRange, 580, FlushMappedBufferRange@12) GL_STUB(MapBufferRange, 581, MapBufferRange@16) - GL_STUB(BindVertexArray, 582, BindVertexArray@4) - GL_STUB(GenVertexArrays, 583, GenVertexArrays@8) - GL_STUB(CopyBufferSubData, 584, CopyBufferSubData@20) - GL_STUB(ClientWaitSync, 585, ClientWaitSync@12) - GL_STUB(DeleteSync, 586, DeleteSync@4) - GL_STUB(FenceSync, 587, FenceSync@8) - GL_STUB(GetInteger64v, 588, GetInteger64v@8) - GL_STUB(GetSynciv, 589, GetSynciv@20) - GL_STUB(IsSync, 590, IsSync@4) - GL_STUB(WaitSync, 591, WaitSync@12) - GL_STUB(DrawElementsBaseVertex, 592, DrawElementsBaseVertex@20) - GL_STUB(DrawRangeElementsBaseVertex, 593, DrawRangeElementsBaseVertex@28) - GL_STUB(MultiDrawElementsBaseVertex, 594, MultiDrawElementsBaseVertex@24) - GL_STUB(BlendEquationSeparateiARB, 595, BlendEquationSeparateiARB@12) - GL_STUB(BlendEquationiARB, 596, BlendEquationiARB@8) - GL_STUB(BlendFuncSeparateiARB, 597, BlendFuncSeparateiARB@20) - GL_STUB(BlendFunciARB, 598, BlendFunciARB@12) - GL_STUB(BindTransformFeedback, 599, BindTransformFeedback@8) - GL_STUB(DeleteTransformFeedbacks, 600, DeleteTransformFeedbacks@8) - GL_STUB(DrawTransformFeedback, 601, DrawTransformFeedback@8) - GL_STUB(GenTransformFeedbacks, 602, GenTransformFeedbacks@8) - GL_STUB(IsTransformFeedback, 603, IsTransformFeedback@4) - GL_STUB(PauseTransformFeedback, 604, PauseTransformFeedback@0) - GL_STUB(ResumeTransformFeedback, 605, ResumeTransformFeedback@0) - GL_STUB(ClearDepthf, 606, ClearDepthf@4) - GL_STUB(DepthRangef, 607, DepthRangef@8) - GL_STUB(GetShaderPrecisionFormat, 608, GetShaderPrecisionFormat@16) - GL_STUB(ReleaseShaderCompiler, 609, ReleaseShaderCompiler@0) - GL_STUB(ShaderBinary, 610, ShaderBinary@20) - GL_STUB(PolygonOffsetEXT, 611, PolygonOffsetEXT@8) - GL_STUB(_dispatch_stub_612, 612, _dispatch_stub_612@8) - HIDDEN(GL_PREFIX(_dispatch_stub_612, _dispatch_stub_612@8)) + GL_STUB(TexBufferARB, 582, TexBufferARB@12) + GL_STUB(BindVertexArray, 583, BindVertexArray@4) + GL_STUB(GenVertexArrays, 584, GenVertexArrays@8) + GL_STUB(CopyBufferSubData, 585, CopyBufferSubData@20) + GL_STUB(ClientWaitSync, 586, ClientWaitSync@12) + GL_STUB(DeleteSync, 587, DeleteSync@4) + GL_STUB(FenceSync, 588, FenceSync@8) + GL_STUB(GetInteger64v, 589, GetInteger64v@8) + GL_STUB(GetSynciv, 590, GetSynciv@20) + GL_STUB(IsSync, 591, IsSync@4) + GL_STUB(WaitSync, 592, WaitSync@12) + GL_STUB(DrawElementsBaseVertex, 593, DrawElementsBaseVertex@20) + GL_STUB(DrawRangeElementsBaseVertex, 594, DrawRangeElementsBaseVertex@28) + GL_STUB(MultiDrawElementsBaseVertex, 595, MultiDrawElementsBaseVertex@24) + GL_STUB(BlendEquationSeparateiARB, 596, BlendEquationSeparateiARB@12) + GL_STUB(BlendEquationiARB, 597, BlendEquationiARB@8) + GL_STUB(BlendFuncSeparateiARB, 598, BlendFuncSeparateiARB@20) + GL_STUB(BlendFunciARB, 599, BlendFunciARB@12) + GL_STUB(BindTransformFeedback, 600, BindTransformFeedback@8) + GL_STUB(DeleteTransformFeedbacks, 601, DeleteTransformFeedbacks@8) + GL_STUB(DrawTransformFeedback, 602, DrawTransformFeedback@8) + GL_STUB(GenTransformFeedbacks, 603, GenTransformFeedbacks@8) + GL_STUB(IsTransformFeedback, 604, IsTransformFeedback@4) + GL_STUB(PauseTransformFeedback, 605, PauseTransformFeedback@0) + GL_STUB(ResumeTransformFeedback, 606, ResumeTransformFeedback@0) + GL_STUB(ClearDepthf, 607, ClearDepthf@4) + GL_STUB(DepthRangef, 608, DepthRangef@8) + GL_STUB(GetShaderPrecisionFormat, 609, GetShaderPrecisionFormat@16) + GL_STUB(ReleaseShaderCompiler, 610, ReleaseShaderCompiler@0) + GL_STUB(ShaderBinary, 611, ShaderBinary@20) + GL_STUB(PolygonOffsetEXT, 612, PolygonOffsetEXT@8) GL_STUB(_dispatch_stub_613, 613, _dispatch_stub_613@8) HIDDEN(GL_PREFIX(_dispatch_stub_613, _dispatch_stub_613@8)) GL_STUB(_dispatch_stub_614, 614, _dispatch_stub_614@8) @@ -776,308 +775,310 @@ GLNAME(gl_dispatch_functions_start): HIDDEN(GL_PREFIX(_dispatch_stub_617, _dispatch_stub_617@8)) GL_STUB(_dispatch_stub_618, 618, _dispatch_stub_618@8) HIDDEN(GL_PREFIX(_dispatch_stub_618, _dispatch_stub_618@8)) - GL_STUB(_dispatch_stub_619, 619, _dispatch_stub_619@4) - HIDDEN(GL_PREFIX(_dispatch_stub_619, _dispatch_stub_619@4)) - GL_STUB(ColorPointerEXT, 620, ColorPointerEXT@20) - GL_STUB(EdgeFlagPointerEXT, 621, EdgeFlagPointerEXT@12) - GL_STUB(IndexPointerEXT, 622, IndexPointerEXT@16) - GL_STUB(NormalPointerEXT, 623, NormalPointerEXT@16) - GL_STUB(TexCoordPointerEXT, 624, TexCoordPointerEXT@20) - GL_STUB(VertexPointerEXT, 625, VertexPointerEXT@20) - GL_STUB(PointParameterfEXT, 626, PointParameterfEXT@8) - GL_STUB(PointParameterfvEXT, 627, PointParameterfvEXT@8) - GL_STUB(LockArraysEXT, 628, LockArraysEXT@8) - GL_STUB(UnlockArraysEXT, 629, UnlockArraysEXT@0) - GL_STUB(SecondaryColor3bEXT, 630, SecondaryColor3bEXT@12) - GL_STUB(SecondaryColor3bvEXT, 631, SecondaryColor3bvEXT@4) - GL_STUB(SecondaryColor3dEXT, 632, SecondaryColor3dEXT@24) - GL_STUB(SecondaryColor3dvEXT, 633, SecondaryColor3dvEXT@4) - GL_STUB(SecondaryColor3fEXT, 634, SecondaryColor3fEXT@12) - GL_STUB(SecondaryColor3fvEXT, 635, SecondaryColor3fvEXT@4) - GL_STUB(SecondaryColor3iEXT, 636, SecondaryColor3iEXT@12) - GL_STUB(SecondaryColor3ivEXT, 637, SecondaryColor3ivEXT@4) - GL_STUB(SecondaryColor3sEXT, 638, SecondaryColor3sEXT@12) - GL_STUB(SecondaryColor3svEXT, 639, SecondaryColor3svEXT@4) - GL_STUB(SecondaryColor3ubEXT, 640, SecondaryColor3ubEXT@12) - GL_STUB(SecondaryColor3ubvEXT, 641, SecondaryColor3ubvEXT@4) - GL_STUB(SecondaryColor3uiEXT, 642, SecondaryColor3uiEXT@12) - GL_STUB(SecondaryColor3uivEXT, 643, SecondaryColor3uivEXT@4) - GL_STUB(SecondaryColor3usEXT, 644, SecondaryColor3usEXT@12) - GL_STUB(SecondaryColor3usvEXT, 645, SecondaryColor3usvEXT@4) - GL_STUB(SecondaryColorPointerEXT, 646, SecondaryColorPointerEXT@16) - GL_STUB(MultiDrawArraysEXT, 647, MultiDrawArraysEXT@16) - GL_STUB(MultiDrawElementsEXT, 648, MultiDrawElementsEXT@20) - GL_STUB(FogCoordPointerEXT, 649, FogCoordPointerEXT@12) - GL_STUB(FogCoorddEXT, 650, FogCoorddEXT@8) - GL_STUB(FogCoorddvEXT, 651, FogCoorddvEXT@4) - GL_STUB(FogCoordfEXT, 652, FogCoordfEXT@4) - GL_STUB(FogCoordfvEXT, 653, FogCoordfvEXT@4) - GL_STUB(_dispatch_stub_654, 654, _dispatch_stub_654@4) - HIDDEN(GL_PREFIX(_dispatch_stub_654, _dispatch_stub_654@4)) - GL_STUB(BlendFuncSeparateEXT, 655, BlendFuncSeparateEXT@16) - GL_STUB(FlushVertexArrayRangeNV, 656, FlushVertexArrayRangeNV@0) - GL_STUB(VertexArrayRangeNV, 657, VertexArrayRangeNV@8) - GL_STUB(CombinerInputNV, 658, CombinerInputNV@24) - GL_STUB(CombinerOutputNV, 659, CombinerOutputNV@40) - GL_STUB(CombinerParameterfNV, 660, CombinerParameterfNV@8) - GL_STUB(CombinerParameterfvNV, 661, CombinerParameterfvNV@8) - GL_STUB(CombinerParameteriNV, 662, CombinerParameteriNV@8) - GL_STUB(CombinerParameterivNV, 663, CombinerParameterivNV@8) - GL_STUB(FinalCombinerInputNV, 664, FinalCombinerInputNV@16) - GL_STUB(GetCombinerInputParameterfvNV, 665, GetCombinerInputParameterfvNV@20) - GL_STUB(GetCombinerInputParameterivNV, 666, GetCombinerInputParameterivNV@20) - GL_STUB(GetCombinerOutputParameterfvNV, 667, GetCombinerOutputParameterfvNV@16) - GL_STUB(GetCombinerOutputParameterivNV, 668, GetCombinerOutputParameterivNV@16) - GL_STUB(GetFinalCombinerInputParameterfvNV, 669, GetFinalCombinerInputParameterfvNV@12) - GL_STUB(GetFinalCombinerInputParameterivNV, 670, GetFinalCombinerInputParameterivNV@12) - GL_STUB(ResizeBuffersMESA, 671, ResizeBuffersMESA@0) - GL_STUB(WindowPos2dMESA, 672, WindowPos2dMESA@16) - GL_STUB(WindowPos2dvMESA, 673, WindowPos2dvMESA@4) - GL_STUB(WindowPos2fMESA, 674, WindowPos2fMESA@8) - GL_STUB(WindowPos2fvMESA, 675, WindowPos2fvMESA@4) - GL_STUB(WindowPos2iMESA, 676, WindowPos2iMESA@8) - GL_STUB(WindowPos2ivMESA, 677, WindowPos2ivMESA@4) - GL_STUB(WindowPos2sMESA, 678, WindowPos2sMESA@8) - GL_STUB(WindowPos2svMESA, 679, WindowPos2svMESA@4) - GL_STUB(WindowPos3dMESA, 680, WindowPos3dMESA@24) - GL_STUB(WindowPos3dvMESA, 681, WindowPos3dvMESA@4) - GL_STUB(WindowPos3fMESA, 682, WindowPos3fMESA@12) - GL_STUB(WindowPos3fvMESA, 683, WindowPos3fvMESA@4) - GL_STUB(WindowPos3iMESA, 684, WindowPos3iMESA@12) - GL_STUB(WindowPos3ivMESA, 685, WindowPos3ivMESA@4) - GL_STUB(WindowPos3sMESA, 686, WindowPos3sMESA@12) - GL_STUB(WindowPos3svMESA, 687, WindowPos3svMESA@4) - GL_STUB(WindowPos4dMESA, 688, WindowPos4dMESA@32) - GL_STUB(WindowPos4dvMESA, 689, WindowPos4dvMESA@4) - GL_STUB(WindowPos4fMESA, 690, WindowPos4fMESA@16) - GL_STUB(WindowPos4fvMESA, 691, WindowPos4fvMESA@4) - GL_STUB(WindowPos4iMESA, 692, WindowPos4iMESA@16) - GL_STUB(WindowPos4ivMESA, 693, WindowPos4ivMESA@4) - GL_STUB(WindowPos4sMESA, 694, WindowPos4sMESA@16) - GL_STUB(WindowPos4svMESA, 695, WindowPos4svMESA@4) - GL_STUB(_dispatch_stub_696, 696, _dispatch_stub_696@20) - HIDDEN(GL_PREFIX(_dispatch_stub_696, _dispatch_stub_696@20)) - GL_STUB(_dispatch_stub_697, 697, _dispatch_stub_697@24) - HIDDEN(GL_PREFIX(_dispatch_stub_697, _dispatch_stub_697@24)) - GL_STUB(_dispatch_stub_698, 698, _dispatch_stub_698@8) - HIDDEN(GL_PREFIX(_dispatch_stub_698, _dispatch_stub_698@8)) - GL_STUB(_dispatch_stub_699, 699, _dispatch_stub_699@4) - HIDDEN(GL_PREFIX(_dispatch_stub_699, _dispatch_stub_699@4)) - GL_STUB(_dispatch_stub_700, 700, _dispatch_stub_700@8) - HIDDEN(GL_PREFIX(_dispatch_stub_700, _dispatch_stub_700@8)) - GL_STUB(_dispatch_stub_701, 701, _dispatch_stub_701@12) - HIDDEN(GL_PREFIX(_dispatch_stub_701, _dispatch_stub_701@12)) - GL_STUB(_dispatch_stub_702, 702, _dispatch_stub_702@4) - HIDDEN(GL_PREFIX(_dispatch_stub_702, _dispatch_stub_702@4)) - GL_STUB(_dispatch_stub_703, 703, _dispatch_stub_703@8) - HIDDEN(GL_PREFIX(_dispatch_stub_703, _dispatch_stub_703@8)) - GL_STUB(_dispatch_stub_704, 704, _dispatch_stub_704@4) - HIDDEN(GL_PREFIX(_dispatch_stub_704, _dispatch_stub_704@4)) - GL_STUB(AreProgramsResidentNV, 705, AreProgramsResidentNV@12) - GL_STUB(BindProgramNV, 706, BindProgramNV@8) - GL_STUB(DeleteProgramsNV, 707, DeleteProgramsNV@8) - GL_STUB(ExecuteProgramNV, 708, ExecuteProgramNV@12) - GL_STUB(GenProgramsNV, 709, GenProgramsNV@8) - GL_STUB(GetProgramParameterdvNV, 710, GetProgramParameterdvNV@16) - GL_STUB(GetProgramParameterfvNV, 711, GetProgramParameterfvNV@16) - GL_STUB(GetProgramStringNV, 712, GetProgramStringNV@12) - GL_STUB(GetProgramivNV, 713, GetProgramivNV@12) - GL_STUB(GetTrackMatrixivNV, 714, GetTrackMatrixivNV@16) - GL_STUB(GetVertexAttribPointervNV, 715, GetVertexAttribPointervNV@12) - GL_STUB(GetVertexAttribdvNV, 716, GetVertexAttribdvNV@12) - GL_STUB(GetVertexAttribfvNV, 717, GetVertexAttribfvNV@12) - GL_STUB(GetVertexAttribivNV, 718, GetVertexAttribivNV@12) - GL_STUB(IsProgramNV, 719, IsProgramNV@4) - GL_STUB(LoadProgramNV, 720, LoadProgramNV@16) - GL_STUB(ProgramParameters4dvNV, 721, ProgramParameters4dvNV@16) - GL_STUB(ProgramParameters4fvNV, 722, ProgramParameters4fvNV@16) - GL_STUB(RequestResidentProgramsNV, 723, RequestResidentProgramsNV@8) - GL_STUB(TrackMatrixNV, 724, TrackMatrixNV@16) - GL_STUB(VertexAttrib1dNV, 725, VertexAttrib1dNV@12) - GL_STUB(VertexAttrib1dvNV, 726, VertexAttrib1dvNV@8) - GL_STUB(VertexAttrib1fNV, 727, VertexAttrib1fNV@8) - GL_STUB(VertexAttrib1fvNV, 728, VertexAttrib1fvNV@8) - GL_STUB(VertexAttrib1sNV, 729, VertexAttrib1sNV@8) - GL_STUB(VertexAttrib1svNV, 730, VertexAttrib1svNV@8) - GL_STUB(VertexAttrib2dNV, 731, VertexAttrib2dNV@20) - GL_STUB(VertexAttrib2dvNV, 732, VertexAttrib2dvNV@8) - GL_STUB(VertexAttrib2fNV, 733, VertexAttrib2fNV@12) - GL_STUB(VertexAttrib2fvNV, 734, VertexAttrib2fvNV@8) - GL_STUB(VertexAttrib2sNV, 735, VertexAttrib2sNV@12) - GL_STUB(VertexAttrib2svNV, 736, VertexAttrib2svNV@8) - GL_STUB(VertexAttrib3dNV, 737, VertexAttrib3dNV@28) - GL_STUB(VertexAttrib3dvNV, 738, VertexAttrib3dvNV@8) - GL_STUB(VertexAttrib3fNV, 739, VertexAttrib3fNV@16) - GL_STUB(VertexAttrib3fvNV, 740, VertexAttrib3fvNV@8) - GL_STUB(VertexAttrib3sNV, 741, VertexAttrib3sNV@16) - GL_STUB(VertexAttrib3svNV, 742, VertexAttrib3svNV@8) - GL_STUB(VertexAttrib4dNV, 743, VertexAttrib4dNV@36) - GL_STUB(VertexAttrib4dvNV, 744, VertexAttrib4dvNV@8) - GL_STUB(VertexAttrib4fNV, 745, VertexAttrib4fNV@20) - GL_STUB(VertexAttrib4fvNV, 746, VertexAttrib4fvNV@8) - GL_STUB(VertexAttrib4sNV, 747, VertexAttrib4sNV@20) - GL_STUB(VertexAttrib4svNV, 748, VertexAttrib4svNV@8) - GL_STUB(VertexAttrib4ubNV, 749, VertexAttrib4ubNV@20) - GL_STUB(VertexAttrib4ubvNV, 750, VertexAttrib4ubvNV@8) - GL_STUB(VertexAttribPointerNV, 751, VertexAttribPointerNV@20) - GL_STUB(VertexAttribs1dvNV, 752, VertexAttribs1dvNV@12) - GL_STUB(VertexAttribs1fvNV, 753, VertexAttribs1fvNV@12) - GL_STUB(VertexAttribs1svNV, 754, VertexAttribs1svNV@12) - GL_STUB(VertexAttribs2dvNV, 755, VertexAttribs2dvNV@12) - GL_STUB(VertexAttribs2fvNV, 756, VertexAttribs2fvNV@12) - GL_STUB(VertexAttribs2svNV, 757, VertexAttribs2svNV@12) - GL_STUB(VertexAttribs3dvNV, 758, VertexAttribs3dvNV@12) - GL_STUB(VertexAttribs3fvNV, 759, VertexAttribs3fvNV@12) - GL_STUB(VertexAttribs3svNV, 760, VertexAttribs3svNV@12) - GL_STUB(VertexAttribs4dvNV, 761, VertexAttribs4dvNV@12) - GL_STUB(VertexAttribs4fvNV, 762, VertexAttribs4fvNV@12) - GL_STUB(VertexAttribs4svNV, 763, VertexAttribs4svNV@12) - GL_STUB(VertexAttribs4ubvNV, 764, VertexAttribs4ubvNV@12) - GL_STUB(GetTexBumpParameterfvATI, 765, GetTexBumpParameterfvATI@8) - GL_STUB(GetTexBumpParameterivATI, 766, GetTexBumpParameterivATI@8) - GL_STUB(TexBumpParameterfvATI, 767, TexBumpParameterfvATI@8) - GL_STUB(TexBumpParameterivATI, 768, TexBumpParameterivATI@8) - GL_STUB(AlphaFragmentOp1ATI, 769, AlphaFragmentOp1ATI@24) - GL_STUB(AlphaFragmentOp2ATI, 770, AlphaFragmentOp2ATI@36) - GL_STUB(AlphaFragmentOp3ATI, 771, AlphaFragmentOp3ATI@48) - GL_STUB(BeginFragmentShaderATI, 772, BeginFragmentShaderATI@0) - GL_STUB(BindFragmentShaderATI, 773, BindFragmentShaderATI@4) - GL_STUB(ColorFragmentOp1ATI, 774, ColorFragmentOp1ATI@28) - GL_STUB(ColorFragmentOp2ATI, 775, ColorFragmentOp2ATI@40) - GL_STUB(ColorFragmentOp3ATI, 776, ColorFragmentOp3ATI@52) - GL_STUB(DeleteFragmentShaderATI, 777, DeleteFragmentShaderATI@4) - GL_STUB(EndFragmentShaderATI, 778, EndFragmentShaderATI@0) - GL_STUB(GenFragmentShadersATI, 779, GenFragmentShadersATI@4) - GL_STUB(PassTexCoordATI, 780, PassTexCoordATI@12) - GL_STUB(SampleMapATI, 781, SampleMapATI@12) - GL_STUB(SetFragmentShaderConstantATI, 782, SetFragmentShaderConstantATI@8) - GL_STUB(PointParameteriNV, 783, PointParameteriNV@8) - GL_STUB(PointParameterivNV, 784, PointParameterivNV@8) - GL_STUB(_dispatch_stub_785, 785, _dispatch_stub_785@4) - HIDDEN(GL_PREFIX(_dispatch_stub_785, _dispatch_stub_785@4)) + GL_STUB(_dispatch_stub_619, 619, _dispatch_stub_619@8) + HIDDEN(GL_PREFIX(_dispatch_stub_619, _dispatch_stub_619@8)) + GL_STUB(_dispatch_stub_620, 620, _dispatch_stub_620@4) + HIDDEN(GL_PREFIX(_dispatch_stub_620, _dispatch_stub_620@4)) + GL_STUB(ColorPointerEXT, 621, ColorPointerEXT@20) + GL_STUB(EdgeFlagPointerEXT, 622, EdgeFlagPointerEXT@12) + GL_STUB(IndexPointerEXT, 623, IndexPointerEXT@16) + GL_STUB(NormalPointerEXT, 624, NormalPointerEXT@16) + GL_STUB(TexCoordPointerEXT, 625, TexCoordPointerEXT@20) + GL_STUB(VertexPointerEXT, 626, VertexPointerEXT@20) + GL_STUB(PointParameterfEXT, 627, PointParameterfEXT@8) + GL_STUB(PointParameterfvEXT, 628, PointParameterfvEXT@8) + GL_STUB(LockArraysEXT, 629, LockArraysEXT@8) + GL_STUB(UnlockArraysEXT, 630, UnlockArraysEXT@0) + GL_STUB(SecondaryColor3bEXT, 631, SecondaryColor3bEXT@12) + GL_STUB(SecondaryColor3bvEXT, 632, SecondaryColor3bvEXT@4) + GL_STUB(SecondaryColor3dEXT, 633, SecondaryColor3dEXT@24) + GL_STUB(SecondaryColor3dvEXT, 634, SecondaryColor3dvEXT@4) + GL_STUB(SecondaryColor3fEXT, 635, SecondaryColor3fEXT@12) + GL_STUB(SecondaryColor3fvEXT, 636, SecondaryColor3fvEXT@4) + GL_STUB(SecondaryColor3iEXT, 637, SecondaryColor3iEXT@12) + GL_STUB(SecondaryColor3ivEXT, 638, SecondaryColor3ivEXT@4) + GL_STUB(SecondaryColor3sEXT, 639, SecondaryColor3sEXT@12) + GL_STUB(SecondaryColor3svEXT, 640, SecondaryColor3svEXT@4) + GL_STUB(SecondaryColor3ubEXT, 641, SecondaryColor3ubEXT@12) + GL_STUB(SecondaryColor3ubvEXT, 642, SecondaryColor3ubvEXT@4) + GL_STUB(SecondaryColor3uiEXT, 643, SecondaryColor3uiEXT@12) + GL_STUB(SecondaryColor3uivEXT, 644, SecondaryColor3uivEXT@4) + GL_STUB(SecondaryColor3usEXT, 645, SecondaryColor3usEXT@12) + GL_STUB(SecondaryColor3usvEXT, 646, SecondaryColor3usvEXT@4) + GL_STUB(SecondaryColorPointerEXT, 647, SecondaryColorPointerEXT@16) + GL_STUB(MultiDrawArraysEXT, 648, MultiDrawArraysEXT@16) + GL_STUB(MultiDrawElementsEXT, 649, MultiDrawElementsEXT@20) + GL_STUB(FogCoordPointerEXT, 650, FogCoordPointerEXT@12) + GL_STUB(FogCoorddEXT, 651, FogCoorddEXT@8) + GL_STUB(FogCoorddvEXT, 652, FogCoorddvEXT@4) + GL_STUB(FogCoordfEXT, 653, FogCoordfEXT@4) + GL_STUB(FogCoordfvEXT, 654, FogCoordfvEXT@4) + GL_STUB(_dispatch_stub_655, 655, _dispatch_stub_655@4) + HIDDEN(GL_PREFIX(_dispatch_stub_655, _dispatch_stub_655@4)) + GL_STUB(BlendFuncSeparateEXT, 656, BlendFuncSeparateEXT@16) + GL_STUB(FlushVertexArrayRangeNV, 657, FlushVertexArrayRangeNV@0) + GL_STUB(VertexArrayRangeNV, 658, VertexArrayRangeNV@8) + GL_STUB(CombinerInputNV, 659, CombinerInputNV@24) + GL_STUB(CombinerOutputNV, 660, CombinerOutputNV@40) + GL_STUB(CombinerParameterfNV, 661, CombinerParameterfNV@8) + GL_STUB(CombinerParameterfvNV, 662, CombinerParameterfvNV@8) + GL_STUB(CombinerParameteriNV, 663, CombinerParameteriNV@8) + GL_STUB(CombinerParameterivNV, 664, CombinerParameterivNV@8) + GL_STUB(FinalCombinerInputNV, 665, FinalCombinerInputNV@16) + GL_STUB(GetCombinerInputParameterfvNV, 666, GetCombinerInputParameterfvNV@20) + GL_STUB(GetCombinerInputParameterivNV, 667, GetCombinerInputParameterivNV@20) + GL_STUB(GetCombinerOutputParameterfvNV, 668, GetCombinerOutputParameterfvNV@16) + GL_STUB(GetCombinerOutputParameterivNV, 669, GetCombinerOutputParameterivNV@16) + GL_STUB(GetFinalCombinerInputParameterfvNV, 670, GetFinalCombinerInputParameterfvNV@12) + GL_STUB(GetFinalCombinerInputParameterivNV, 671, GetFinalCombinerInputParameterivNV@12) + GL_STUB(ResizeBuffersMESA, 672, ResizeBuffersMESA@0) + GL_STUB(WindowPos2dMESA, 673, WindowPos2dMESA@16) + GL_STUB(WindowPos2dvMESA, 674, WindowPos2dvMESA@4) + GL_STUB(WindowPos2fMESA, 675, WindowPos2fMESA@8) + GL_STUB(WindowPos2fvMESA, 676, WindowPos2fvMESA@4) + GL_STUB(WindowPos2iMESA, 677, WindowPos2iMESA@8) + GL_STUB(WindowPos2ivMESA, 678, WindowPos2ivMESA@4) + GL_STUB(WindowPos2sMESA, 679, WindowPos2sMESA@8) + GL_STUB(WindowPos2svMESA, 680, WindowPos2svMESA@4) + GL_STUB(WindowPos3dMESA, 681, WindowPos3dMESA@24) + GL_STUB(WindowPos3dvMESA, 682, WindowPos3dvMESA@4) + GL_STUB(WindowPos3fMESA, 683, WindowPos3fMESA@12) + GL_STUB(WindowPos3fvMESA, 684, WindowPos3fvMESA@4) + GL_STUB(WindowPos3iMESA, 685, WindowPos3iMESA@12) + GL_STUB(WindowPos3ivMESA, 686, WindowPos3ivMESA@4) + GL_STUB(WindowPos3sMESA, 687, WindowPos3sMESA@12) + GL_STUB(WindowPos3svMESA, 688, WindowPos3svMESA@4) + GL_STUB(WindowPos4dMESA, 689, WindowPos4dMESA@32) + GL_STUB(WindowPos4dvMESA, 690, WindowPos4dvMESA@4) + GL_STUB(WindowPos4fMESA, 691, WindowPos4fMESA@16) + GL_STUB(WindowPos4fvMESA, 692, WindowPos4fvMESA@4) + GL_STUB(WindowPos4iMESA, 693, WindowPos4iMESA@16) + GL_STUB(WindowPos4ivMESA, 694, WindowPos4ivMESA@4) + GL_STUB(WindowPos4sMESA, 695, WindowPos4sMESA@16) + GL_STUB(WindowPos4svMESA, 696, WindowPos4svMESA@4) + GL_STUB(_dispatch_stub_697, 697, _dispatch_stub_697@20) + HIDDEN(GL_PREFIX(_dispatch_stub_697, _dispatch_stub_697@20)) + GL_STUB(_dispatch_stub_698, 698, _dispatch_stub_698@24) + HIDDEN(GL_PREFIX(_dispatch_stub_698, _dispatch_stub_698@24)) + GL_STUB(_dispatch_stub_699, 699, _dispatch_stub_699@8) + HIDDEN(GL_PREFIX(_dispatch_stub_699, _dispatch_stub_699@8)) + GL_STUB(_dispatch_stub_700, 700, _dispatch_stub_700@4) + HIDDEN(GL_PREFIX(_dispatch_stub_700, _dispatch_stub_700@4)) + GL_STUB(_dispatch_stub_701, 701, _dispatch_stub_701@8) + HIDDEN(GL_PREFIX(_dispatch_stub_701, _dispatch_stub_701@8)) + GL_STUB(_dispatch_stub_702, 702, _dispatch_stub_702@12) + HIDDEN(GL_PREFIX(_dispatch_stub_702, _dispatch_stub_702@12)) + GL_STUB(_dispatch_stub_703, 703, _dispatch_stub_703@4) + HIDDEN(GL_PREFIX(_dispatch_stub_703, _dispatch_stub_703@4)) + GL_STUB(_dispatch_stub_704, 704, _dispatch_stub_704@8) + HIDDEN(GL_PREFIX(_dispatch_stub_704, _dispatch_stub_704@8)) + GL_STUB(_dispatch_stub_705, 705, _dispatch_stub_705@4) + HIDDEN(GL_PREFIX(_dispatch_stub_705, _dispatch_stub_705@4)) + GL_STUB(AreProgramsResidentNV, 706, AreProgramsResidentNV@12) + GL_STUB(BindProgramNV, 707, BindProgramNV@8) + GL_STUB(DeleteProgramsNV, 708, DeleteProgramsNV@8) + GL_STUB(ExecuteProgramNV, 709, ExecuteProgramNV@12) + GL_STUB(GenProgramsNV, 710, GenProgramsNV@8) + GL_STUB(GetProgramParameterdvNV, 711, GetProgramParameterdvNV@16) + GL_STUB(GetProgramParameterfvNV, 712, GetProgramParameterfvNV@16) + GL_STUB(GetProgramStringNV, 713, GetProgramStringNV@12) + GL_STUB(GetProgramivNV, 714, GetProgramivNV@12) + GL_STUB(GetTrackMatrixivNV, 715, GetTrackMatrixivNV@16) + GL_STUB(GetVertexAttribPointervNV, 716, GetVertexAttribPointervNV@12) + GL_STUB(GetVertexAttribdvNV, 717, GetVertexAttribdvNV@12) + GL_STUB(GetVertexAttribfvNV, 718, GetVertexAttribfvNV@12) + GL_STUB(GetVertexAttribivNV, 719, GetVertexAttribivNV@12) + GL_STUB(IsProgramNV, 720, IsProgramNV@4) + GL_STUB(LoadProgramNV, 721, LoadProgramNV@16) + GL_STUB(ProgramParameters4dvNV, 722, ProgramParameters4dvNV@16) + GL_STUB(ProgramParameters4fvNV, 723, ProgramParameters4fvNV@16) + GL_STUB(RequestResidentProgramsNV, 724, RequestResidentProgramsNV@8) + GL_STUB(TrackMatrixNV, 725, TrackMatrixNV@16) + GL_STUB(VertexAttrib1dNV, 726, VertexAttrib1dNV@12) + GL_STUB(VertexAttrib1dvNV, 727, VertexAttrib1dvNV@8) + GL_STUB(VertexAttrib1fNV, 728, VertexAttrib1fNV@8) + GL_STUB(VertexAttrib1fvNV, 729, VertexAttrib1fvNV@8) + GL_STUB(VertexAttrib1sNV, 730, VertexAttrib1sNV@8) + GL_STUB(VertexAttrib1svNV, 731, VertexAttrib1svNV@8) + GL_STUB(VertexAttrib2dNV, 732, VertexAttrib2dNV@20) + GL_STUB(VertexAttrib2dvNV, 733, VertexAttrib2dvNV@8) + GL_STUB(VertexAttrib2fNV, 734, VertexAttrib2fNV@12) + GL_STUB(VertexAttrib2fvNV, 735, VertexAttrib2fvNV@8) + GL_STUB(VertexAttrib2sNV, 736, VertexAttrib2sNV@12) + GL_STUB(VertexAttrib2svNV, 737, VertexAttrib2svNV@8) + GL_STUB(VertexAttrib3dNV, 738, VertexAttrib3dNV@28) + GL_STUB(VertexAttrib3dvNV, 739, VertexAttrib3dvNV@8) + GL_STUB(VertexAttrib3fNV, 740, VertexAttrib3fNV@16) + GL_STUB(VertexAttrib3fvNV, 741, VertexAttrib3fvNV@8) + GL_STUB(VertexAttrib3sNV, 742, VertexAttrib3sNV@16) + GL_STUB(VertexAttrib3svNV, 743, VertexAttrib3svNV@8) + GL_STUB(VertexAttrib4dNV, 744, VertexAttrib4dNV@36) + GL_STUB(VertexAttrib4dvNV, 745, VertexAttrib4dvNV@8) + GL_STUB(VertexAttrib4fNV, 746, VertexAttrib4fNV@20) + GL_STUB(VertexAttrib4fvNV, 747, VertexAttrib4fvNV@8) + GL_STUB(VertexAttrib4sNV, 748, VertexAttrib4sNV@20) + GL_STUB(VertexAttrib4svNV, 749, VertexAttrib4svNV@8) + GL_STUB(VertexAttrib4ubNV, 750, VertexAttrib4ubNV@20) + GL_STUB(VertexAttrib4ubvNV, 751, VertexAttrib4ubvNV@8) + GL_STUB(VertexAttribPointerNV, 752, VertexAttribPointerNV@20) + GL_STUB(VertexAttribs1dvNV, 753, VertexAttribs1dvNV@12) + GL_STUB(VertexAttribs1fvNV, 754, VertexAttribs1fvNV@12) + GL_STUB(VertexAttribs1svNV, 755, VertexAttribs1svNV@12) + GL_STUB(VertexAttribs2dvNV, 756, VertexAttribs2dvNV@12) + GL_STUB(VertexAttribs2fvNV, 757, VertexAttribs2fvNV@12) + GL_STUB(VertexAttribs2svNV, 758, VertexAttribs2svNV@12) + GL_STUB(VertexAttribs3dvNV, 759, VertexAttribs3dvNV@12) + GL_STUB(VertexAttribs3fvNV, 760, VertexAttribs3fvNV@12) + GL_STUB(VertexAttribs3svNV, 761, VertexAttribs3svNV@12) + GL_STUB(VertexAttribs4dvNV, 762, VertexAttribs4dvNV@12) + GL_STUB(VertexAttribs4fvNV, 763, VertexAttribs4fvNV@12) + GL_STUB(VertexAttribs4svNV, 764, VertexAttribs4svNV@12) + GL_STUB(VertexAttribs4ubvNV, 765, VertexAttribs4ubvNV@12) + GL_STUB(GetTexBumpParameterfvATI, 766, GetTexBumpParameterfvATI@8) + GL_STUB(GetTexBumpParameterivATI, 767, GetTexBumpParameterivATI@8) + GL_STUB(TexBumpParameterfvATI, 768, TexBumpParameterfvATI@8) + GL_STUB(TexBumpParameterivATI, 769, TexBumpParameterivATI@8) + GL_STUB(AlphaFragmentOp1ATI, 770, AlphaFragmentOp1ATI@24) + GL_STUB(AlphaFragmentOp2ATI, 771, AlphaFragmentOp2ATI@36) + GL_STUB(AlphaFragmentOp3ATI, 772, AlphaFragmentOp3ATI@48) + GL_STUB(BeginFragmentShaderATI, 773, BeginFragmentShaderATI@0) + GL_STUB(BindFragmentShaderATI, 774, BindFragmentShaderATI@4) + GL_STUB(ColorFragmentOp1ATI, 775, ColorFragmentOp1ATI@28) + GL_STUB(ColorFragmentOp2ATI, 776, ColorFragmentOp2ATI@40) + GL_STUB(ColorFragmentOp3ATI, 777, ColorFragmentOp3ATI@52) + GL_STUB(DeleteFragmentShaderATI, 778, DeleteFragmentShaderATI@4) + GL_STUB(EndFragmentShaderATI, 779, EndFragmentShaderATI@0) + GL_STUB(GenFragmentShadersATI, 780, GenFragmentShadersATI@4) + GL_STUB(PassTexCoordATI, 781, PassTexCoordATI@12) + GL_STUB(SampleMapATI, 782, SampleMapATI@12) + GL_STUB(SetFragmentShaderConstantATI, 783, SetFragmentShaderConstantATI@8) + GL_STUB(PointParameteriNV, 784, PointParameteriNV@8) + GL_STUB(PointParameterivNV, 785, PointParameterivNV@8) GL_STUB(_dispatch_stub_786, 786, _dispatch_stub_786@4) HIDDEN(GL_PREFIX(_dispatch_stub_786, _dispatch_stub_786@4)) - GL_STUB(_dispatch_stub_787, 787, _dispatch_stub_787@8) - HIDDEN(GL_PREFIX(_dispatch_stub_787, _dispatch_stub_787@8)) + GL_STUB(_dispatch_stub_787, 787, _dispatch_stub_787@4) + HIDDEN(GL_PREFIX(_dispatch_stub_787, _dispatch_stub_787@4)) GL_STUB(_dispatch_stub_788, 788, _dispatch_stub_788@8) HIDDEN(GL_PREFIX(_dispatch_stub_788, _dispatch_stub_788@8)) - GL_STUB(_dispatch_stub_789, 789, _dispatch_stub_789@4) - HIDDEN(GL_PREFIX(_dispatch_stub_789, _dispatch_stub_789@4)) - GL_STUB(GetProgramNamedParameterdvNV, 790, GetProgramNamedParameterdvNV@16) - GL_STUB(GetProgramNamedParameterfvNV, 791, GetProgramNamedParameterfvNV@16) - GL_STUB(ProgramNamedParameter4dNV, 792, ProgramNamedParameter4dNV@44) - GL_STUB(ProgramNamedParameter4dvNV, 793, ProgramNamedParameter4dvNV@16) - GL_STUB(ProgramNamedParameter4fNV, 794, ProgramNamedParameter4fNV@28) - GL_STUB(ProgramNamedParameter4fvNV, 795, ProgramNamedParameter4fvNV@16) - GL_STUB(PrimitiveRestartIndexNV, 796, PrimitiveRestartIndexNV@4) - GL_STUB(PrimitiveRestartNV, 797, PrimitiveRestartNV@0) - GL_STUB(_dispatch_stub_798, 798, _dispatch_stub_798@16) - HIDDEN(GL_PREFIX(_dispatch_stub_798, _dispatch_stub_798@16)) - GL_STUB(_dispatch_stub_799, 799, _dispatch_stub_799@8) - HIDDEN(GL_PREFIX(_dispatch_stub_799, _dispatch_stub_799@8)) - GL_STUB(BindFramebufferEXT, 800, BindFramebufferEXT@8) - GL_STUB(BindRenderbufferEXT, 801, BindRenderbufferEXT@8) - GL_STUB(CheckFramebufferStatusEXT, 802, CheckFramebufferStatusEXT@4) - GL_STUB(DeleteFramebuffersEXT, 803, DeleteFramebuffersEXT@8) - GL_STUB(DeleteRenderbuffersEXT, 804, DeleteRenderbuffersEXT@8) - GL_STUB(FramebufferRenderbufferEXT, 805, FramebufferRenderbufferEXT@16) - GL_STUB(FramebufferTexture1DEXT, 806, FramebufferTexture1DEXT@20) - GL_STUB(FramebufferTexture2DEXT, 807, FramebufferTexture2DEXT@20) - GL_STUB(FramebufferTexture3DEXT, 808, FramebufferTexture3DEXT@24) - GL_STUB(GenFramebuffersEXT, 809, GenFramebuffersEXT@8) - GL_STUB(GenRenderbuffersEXT, 810, GenRenderbuffersEXT@8) - GL_STUB(GenerateMipmapEXT, 811, GenerateMipmapEXT@4) - GL_STUB(GetFramebufferAttachmentParameterivEXT, 812, GetFramebufferAttachmentParameterivEXT@16) - GL_STUB(GetRenderbufferParameterivEXT, 813, GetRenderbufferParameterivEXT@12) - GL_STUB(IsFramebufferEXT, 814, IsFramebufferEXT@4) - GL_STUB(IsRenderbufferEXT, 815, IsRenderbufferEXT@4) - GL_STUB(RenderbufferStorageEXT, 816, RenderbufferStorageEXT@16) - GL_STUB(_dispatch_stub_817, 817, _dispatch_stub_817@40) - HIDDEN(GL_PREFIX(_dispatch_stub_817, _dispatch_stub_817@40)) - GL_STUB(_dispatch_stub_818, 818, _dispatch_stub_818@12) - HIDDEN(GL_PREFIX(_dispatch_stub_818, _dispatch_stub_818@12)) + GL_STUB(_dispatch_stub_789, 789, _dispatch_stub_789@8) + HIDDEN(GL_PREFIX(_dispatch_stub_789, _dispatch_stub_789@8)) + GL_STUB(_dispatch_stub_790, 790, _dispatch_stub_790@4) + HIDDEN(GL_PREFIX(_dispatch_stub_790, _dispatch_stub_790@4)) + GL_STUB(GetProgramNamedParameterdvNV, 791, GetProgramNamedParameterdvNV@16) + GL_STUB(GetProgramNamedParameterfvNV, 792, GetProgramNamedParameterfvNV@16) + GL_STUB(ProgramNamedParameter4dNV, 793, ProgramNamedParameter4dNV@44) + GL_STUB(ProgramNamedParameter4dvNV, 794, ProgramNamedParameter4dvNV@16) + GL_STUB(ProgramNamedParameter4fNV, 795, ProgramNamedParameter4fNV@28) + GL_STUB(ProgramNamedParameter4fvNV, 796, ProgramNamedParameter4fvNV@16) + GL_STUB(PrimitiveRestartIndexNV, 797, PrimitiveRestartIndexNV@4) + GL_STUB(PrimitiveRestartNV, 798, PrimitiveRestartNV@0) + GL_STUB(_dispatch_stub_799, 799, _dispatch_stub_799@16) + HIDDEN(GL_PREFIX(_dispatch_stub_799, _dispatch_stub_799@16)) + GL_STUB(_dispatch_stub_800, 800, _dispatch_stub_800@8) + HIDDEN(GL_PREFIX(_dispatch_stub_800, _dispatch_stub_800@8)) + GL_STUB(BindFramebufferEXT, 801, BindFramebufferEXT@8) + GL_STUB(BindRenderbufferEXT, 802, BindRenderbufferEXT@8) + GL_STUB(CheckFramebufferStatusEXT, 803, CheckFramebufferStatusEXT@4) + GL_STUB(DeleteFramebuffersEXT, 804, DeleteFramebuffersEXT@8) + GL_STUB(DeleteRenderbuffersEXT, 805, DeleteRenderbuffersEXT@8) + GL_STUB(FramebufferRenderbufferEXT, 806, FramebufferRenderbufferEXT@16) + GL_STUB(FramebufferTexture1DEXT, 807, FramebufferTexture1DEXT@20) + GL_STUB(FramebufferTexture2DEXT, 808, FramebufferTexture2DEXT@20) + GL_STUB(FramebufferTexture3DEXT, 809, FramebufferTexture3DEXT@24) + GL_STUB(GenFramebuffersEXT, 810, GenFramebuffersEXT@8) + GL_STUB(GenRenderbuffersEXT, 811, GenRenderbuffersEXT@8) + GL_STUB(GenerateMipmapEXT, 812, GenerateMipmapEXT@4) + GL_STUB(GetFramebufferAttachmentParameterivEXT, 813, GetFramebufferAttachmentParameterivEXT@16) + GL_STUB(GetRenderbufferParameterivEXT, 814, GetRenderbufferParameterivEXT@12) + GL_STUB(IsFramebufferEXT, 815, IsFramebufferEXT@4) + GL_STUB(IsRenderbufferEXT, 816, IsRenderbufferEXT@4) + GL_STUB(RenderbufferStorageEXT, 817, RenderbufferStorageEXT@16) + GL_STUB(_dispatch_stub_818, 818, _dispatch_stub_818@40) + HIDDEN(GL_PREFIX(_dispatch_stub_818, _dispatch_stub_818@40)) GL_STUB(_dispatch_stub_819, 819, _dispatch_stub_819@12) HIDDEN(GL_PREFIX(_dispatch_stub_819, _dispatch_stub_819@12)) - GL_STUB(BindFragDataLocationEXT, 820, BindFragDataLocationEXT@12) - GL_STUB(GetFragDataLocationEXT, 821, GetFragDataLocationEXT@8) - GL_STUB(GetUniformuivEXT, 822, GetUniformuivEXT@12) - GL_STUB(GetVertexAttribIivEXT, 823, GetVertexAttribIivEXT@12) - GL_STUB(GetVertexAttribIuivEXT, 824, GetVertexAttribIuivEXT@12) - GL_STUB(Uniform1uiEXT, 825, Uniform1uiEXT@8) - GL_STUB(Uniform1uivEXT, 826, Uniform1uivEXT@12) - GL_STUB(Uniform2uiEXT, 827, Uniform2uiEXT@12) - GL_STUB(Uniform2uivEXT, 828, Uniform2uivEXT@12) - GL_STUB(Uniform3uiEXT, 829, Uniform3uiEXT@16) - GL_STUB(Uniform3uivEXT, 830, Uniform3uivEXT@12) - GL_STUB(Uniform4uiEXT, 831, Uniform4uiEXT@20) - GL_STUB(Uniform4uivEXT, 832, Uniform4uivEXT@12) - GL_STUB(VertexAttribI1iEXT, 833, VertexAttribI1iEXT@8) - GL_STUB(VertexAttribI1ivEXT, 834, VertexAttribI1ivEXT@8) - GL_STUB(VertexAttribI1uiEXT, 835, VertexAttribI1uiEXT@8) - GL_STUB(VertexAttribI1uivEXT, 836, VertexAttribI1uivEXT@8) - GL_STUB(VertexAttribI2iEXT, 837, VertexAttribI2iEXT@12) - GL_STUB(VertexAttribI2ivEXT, 838, VertexAttribI2ivEXT@8) - GL_STUB(VertexAttribI2uiEXT, 839, VertexAttribI2uiEXT@12) - GL_STUB(VertexAttribI2uivEXT, 840, VertexAttribI2uivEXT@8) - GL_STUB(VertexAttribI3iEXT, 841, VertexAttribI3iEXT@16) - GL_STUB(VertexAttribI3ivEXT, 842, VertexAttribI3ivEXT@8) - GL_STUB(VertexAttribI3uiEXT, 843, VertexAttribI3uiEXT@16) - GL_STUB(VertexAttribI3uivEXT, 844, VertexAttribI3uivEXT@8) - GL_STUB(VertexAttribI4bvEXT, 845, VertexAttribI4bvEXT@8) - GL_STUB(VertexAttribI4iEXT, 846, VertexAttribI4iEXT@20) - GL_STUB(VertexAttribI4ivEXT, 847, VertexAttribI4ivEXT@8) - GL_STUB(VertexAttribI4svEXT, 848, VertexAttribI4svEXT@8) - GL_STUB(VertexAttribI4ubvEXT, 849, VertexAttribI4ubvEXT@8) - GL_STUB(VertexAttribI4uiEXT, 850, VertexAttribI4uiEXT@20) - GL_STUB(VertexAttribI4uivEXT, 851, VertexAttribI4uivEXT@8) - GL_STUB(VertexAttribI4usvEXT, 852, VertexAttribI4usvEXT@8) - GL_STUB(VertexAttribIPointerEXT, 853, VertexAttribIPointerEXT@20) - GL_STUB(FramebufferTextureLayerEXT, 854, FramebufferTextureLayerEXT@20) - GL_STUB(ColorMaskIndexedEXT, 855, ColorMaskIndexedEXT@20) - GL_STUB(DisableIndexedEXT, 856, DisableIndexedEXT@8) - GL_STUB(EnableIndexedEXT, 857, EnableIndexedEXT@8) - GL_STUB(GetBooleanIndexedvEXT, 858, GetBooleanIndexedvEXT@12) - GL_STUB(GetIntegerIndexedvEXT, 859, GetIntegerIndexedvEXT@12) - GL_STUB(IsEnabledIndexedEXT, 860, IsEnabledIndexedEXT@8) - GL_STUB(ClearColorIiEXT, 861, ClearColorIiEXT@16) - GL_STUB(ClearColorIuiEXT, 862, ClearColorIuiEXT@16) - GL_STUB(GetTexParameterIivEXT, 863, GetTexParameterIivEXT@12) - GL_STUB(GetTexParameterIuivEXT, 864, GetTexParameterIuivEXT@12) - GL_STUB(TexParameterIivEXT, 865, TexParameterIivEXT@12) - GL_STUB(TexParameterIuivEXT, 866, TexParameterIuivEXT@12) - GL_STUB(BeginConditionalRenderNV, 867, BeginConditionalRenderNV@8) - GL_STUB(EndConditionalRenderNV, 868, EndConditionalRenderNV@0) - GL_STUB(BeginTransformFeedbackEXT, 869, BeginTransformFeedbackEXT@4) - GL_STUB(BindBufferBaseEXT, 870, BindBufferBaseEXT@12) - GL_STUB(BindBufferOffsetEXT, 871, BindBufferOffsetEXT@16) - GL_STUB(BindBufferRangeEXT, 872, BindBufferRangeEXT@20) - GL_STUB(EndTransformFeedbackEXT, 873, EndTransformFeedbackEXT@0) - GL_STUB(GetTransformFeedbackVaryingEXT, 874, GetTransformFeedbackVaryingEXT@28) - GL_STUB(TransformFeedbackVaryingsEXT, 875, TransformFeedbackVaryingsEXT@16) - GL_STUB(ProvokingVertexEXT, 876, ProvokingVertexEXT@4) - GL_STUB(_dispatch_stub_877, 877, _dispatch_stub_877@12) - HIDDEN(GL_PREFIX(_dispatch_stub_877, _dispatch_stub_877@12)) + GL_STUB(_dispatch_stub_820, 820, _dispatch_stub_820@12) + HIDDEN(GL_PREFIX(_dispatch_stub_820, _dispatch_stub_820@12)) + GL_STUB(BindFragDataLocationEXT, 821, BindFragDataLocationEXT@12) + GL_STUB(GetFragDataLocationEXT, 822, GetFragDataLocationEXT@8) + GL_STUB(GetUniformuivEXT, 823, GetUniformuivEXT@12) + GL_STUB(GetVertexAttribIivEXT, 824, GetVertexAttribIivEXT@12) + GL_STUB(GetVertexAttribIuivEXT, 825, GetVertexAttribIuivEXT@12) + GL_STUB(Uniform1uiEXT, 826, Uniform1uiEXT@8) + GL_STUB(Uniform1uivEXT, 827, Uniform1uivEXT@12) + GL_STUB(Uniform2uiEXT, 828, Uniform2uiEXT@12) + GL_STUB(Uniform2uivEXT, 829, Uniform2uivEXT@12) + GL_STUB(Uniform3uiEXT, 830, Uniform3uiEXT@16) + GL_STUB(Uniform3uivEXT, 831, Uniform3uivEXT@12) + GL_STUB(Uniform4uiEXT, 832, Uniform4uiEXT@20) + GL_STUB(Uniform4uivEXT, 833, Uniform4uivEXT@12) + GL_STUB(VertexAttribI1iEXT, 834, VertexAttribI1iEXT@8) + GL_STUB(VertexAttribI1ivEXT, 835, VertexAttribI1ivEXT@8) + GL_STUB(VertexAttribI1uiEXT, 836, VertexAttribI1uiEXT@8) + GL_STUB(VertexAttribI1uivEXT, 837, VertexAttribI1uivEXT@8) + GL_STUB(VertexAttribI2iEXT, 838, VertexAttribI2iEXT@12) + GL_STUB(VertexAttribI2ivEXT, 839, VertexAttribI2ivEXT@8) + GL_STUB(VertexAttribI2uiEXT, 840, VertexAttribI2uiEXT@12) + GL_STUB(VertexAttribI2uivEXT, 841, VertexAttribI2uivEXT@8) + GL_STUB(VertexAttribI3iEXT, 842, VertexAttribI3iEXT@16) + GL_STUB(VertexAttribI3ivEXT, 843, VertexAttribI3ivEXT@8) + GL_STUB(VertexAttribI3uiEXT, 844, VertexAttribI3uiEXT@16) + GL_STUB(VertexAttribI3uivEXT, 845, VertexAttribI3uivEXT@8) + GL_STUB(VertexAttribI4bvEXT, 846, VertexAttribI4bvEXT@8) + GL_STUB(VertexAttribI4iEXT, 847, VertexAttribI4iEXT@20) + GL_STUB(VertexAttribI4ivEXT, 848, VertexAttribI4ivEXT@8) + GL_STUB(VertexAttribI4svEXT, 849, VertexAttribI4svEXT@8) + GL_STUB(VertexAttribI4ubvEXT, 850, VertexAttribI4ubvEXT@8) + GL_STUB(VertexAttribI4uiEXT, 851, VertexAttribI4uiEXT@20) + GL_STUB(VertexAttribI4uivEXT, 852, VertexAttribI4uivEXT@8) + GL_STUB(VertexAttribI4usvEXT, 853, VertexAttribI4usvEXT@8) + GL_STUB(VertexAttribIPointerEXT, 854, VertexAttribIPointerEXT@20) + GL_STUB(FramebufferTextureLayerEXT, 855, FramebufferTextureLayerEXT@20) + GL_STUB(ColorMaskIndexedEXT, 856, ColorMaskIndexedEXT@20) + GL_STUB(DisableIndexedEXT, 857, DisableIndexedEXT@8) + GL_STUB(EnableIndexedEXT, 858, EnableIndexedEXT@8) + GL_STUB(GetBooleanIndexedvEXT, 859, GetBooleanIndexedvEXT@12) + GL_STUB(GetIntegerIndexedvEXT, 860, GetIntegerIndexedvEXT@12) + GL_STUB(IsEnabledIndexedEXT, 861, IsEnabledIndexedEXT@8) + GL_STUB(ClearColorIiEXT, 862, ClearColorIiEXT@16) + GL_STUB(ClearColorIuiEXT, 863, ClearColorIuiEXT@16) + GL_STUB(GetTexParameterIivEXT, 864, GetTexParameterIivEXT@12) + GL_STUB(GetTexParameterIuivEXT, 865, GetTexParameterIuivEXT@12) + GL_STUB(TexParameterIivEXT, 866, TexParameterIivEXT@12) + GL_STUB(TexParameterIuivEXT, 867, TexParameterIuivEXT@12) + GL_STUB(BeginConditionalRenderNV, 868, BeginConditionalRenderNV@8) + GL_STUB(EndConditionalRenderNV, 869, EndConditionalRenderNV@0) + GL_STUB(BeginTransformFeedbackEXT, 870, BeginTransformFeedbackEXT@4) + GL_STUB(BindBufferBaseEXT, 871, BindBufferBaseEXT@12) + GL_STUB(BindBufferOffsetEXT, 872, BindBufferOffsetEXT@16) + GL_STUB(BindBufferRangeEXT, 873, BindBufferRangeEXT@20) + GL_STUB(EndTransformFeedbackEXT, 874, EndTransformFeedbackEXT@0) + GL_STUB(GetTransformFeedbackVaryingEXT, 875, GetTransformFeedbackVaryingEXT@28) + GL_STUB(TransformFeedbackVaryingsEXT, 876, TransformFeedbackVaryingsEXT@16) + GL_STUB(ProvokingVertexEXT, 877, ProvokingVertexEXT@4) GL_STUB(_dispatch_stub_878, 878, _dispatch_stub_878@12) HIDDEN(GL_PREFIX(_dispatch_stub_878, _dispatch_stub_878@12)) - GL_STUB(GetObjectParameterivAPPLE, 879, GetObjectParameterivAPPLE@16) - GL_STUB(ObjectPurgeableAPPLE, 880, ObjectPurgeableAPPLE@12) - GL_STUB(ObjectUnpurgeableAPPLE, 881, ObjectUnpurgeableAPPLE@12) - GL_STUB(ActiveProgramEXT, 882, ActiveProgramEXT@4) - GL_STUB(CreateShaderProgramEXT, 883, CreateShaderProgramEXT@8) - GL_STUB(UseShaderProgramEXT, 884, UseShaderProgramEXT@8) - GL_STUB(TextureBarrierNV, 885, TextureBarrierNV@0) - GL_STUB(_dispatch_stub_886, 886, _dispatch_stub_886@16) - HIDDEN(GL_PREFIX(_dispatch_stub_886, _dispatch_stub_886@16)) + GL_STUB(_dispatch_stub_879, 879, _dispatch_stub_879@12) + HIDDEN(GL_PREFIX(_dispatch_stub_879, _dispatch_stub_879@12)) + GL_STUB(GetObjectParameterivAPPLE, 880, GetObjectParameterivAPPLE@16) + GL_STUB(ObjectPurgeableAPPLE, 881, ObjectPurgeableAPPLE@12) + GL_STUB(ObjectUnpurgeableAPPLE, 882, ObjectUnpurgeableAPPLE@12) + GL_STUB(ActiveProgramEXT, 883, ActiveProgramEXT@4) + GL_STUB(CreateShaderProgramEXT, 884, CreateShaderProgramEXT@8) + GL_STUB(UseShaderProgramEXT, 885, UseShaderProgramEXT@8) + GL_STUB(TextureBarrierNV, 886, TextureBarrierNV@0) GL_STUB(_dispatch_stub_887, 887, _dispatch_stub_887@16) HIDDEN(GL_PREFIX(_dispatch_stub_887, _dispatch_stub_887@16)) GL_STUB(_dispatch_stub_888, 888, _dispatch_stub_888@16) HIDDEN(GL_PREFIX(_dispatch_stub_888, _dispatch_stub_888@16)) - GL_STUB(_dispatch_stub_889, 889, _dispatch_stub_889@12) - HIDDEN(GL_PREFIX(_dispatch_stub_889, _dispatch_stub_889@12)) + GL_STUB(_dispatch_stub_889, 889, _dispatch_stub_889@16) + HIDDEN(GL_PREFIX(_dispatch_stub_889, _dispatch_stub_889@16)) GL_STUB(_dispatch_stub_890, 890, _dispatch_stub_890@12) HIDDEN(GL_PREFIX(_dispatch_stub_890, _dispatch_stub_890@12)) - GL_STUB(EGLImageTargetRenderbufferStorageOES, 891, EGLImageTargetRenderbufferStorageOES@8) - GL_STUB(EGLImageTargetTexture2DOES, 892, EGLImageTargetTexture2DOES@8) + GL_STUB(_dispatch_stub_891, 891, _dispatch_stub_891@12) + HIDDEN(GL_PREFIX(_dispatch_stub_891, _dispatch_stub_891@12)) + GL_STUB(EGLImageTargetRenderbufferStorageOES, 892, EGLImageTargetRenderbufferStorageOES@8) + GL_STUB(EGLImageTargetTexture2DOES, 893, EGLImageTargetTexture2DOES@8) GL_STUB_ALIAS(ArrayElementEXT, 306, ArrayElementEXT@4, ArrayElement, ArrayElement@4) GL_STUB_ALIAS(BindTextureEXT, 307, BindTextureEXT@8, BindTexture, BindTexture@8) GL_STUB_ALIAS(DrawArraysEXT, 310, DrawArraysEXT@12, DrawArrays, DrawArrays@12) @@ -1267,151 +1268,151 @@ GLNAME(gl_dispatch_functions_start): GL_STUB_ALIAS(DrawElementsInstancedEXT, 574, DrawElementsInstancedEXT@20, DrawElementsInstancedARB, DrawElementsInstancedARB@20) GL_STUB_ALIAS(DrawElementsInstanced, 574, DrawElementsInstanced@20, DrawElementsInstancedARB, DrawElementsInstancedARB@20) GL_STUB_ALIAS(RenderbufferStorageMultisampleEXT, 575, RenderbufferStorageMultisampleEXT@20, RenderbufferStorageMultisample, RenderbufferStorageMultisample@20) - GL_STUB_ALIAS(PointParameterf, 626, PointParameterf@8, PointParameterfEXT, PointParameterfEXT@8) - GL_STUB_ALIAS(PointParameterfARB, 626, PointParameterfARB@8, PointParameterfEXT, PointParameterfEXT@8) - GL_STUB_ALIAS(PointParameterfv, 627, PointParameterfv@8, PointParameterfvEXT, PointParameterfvEXT@8) - GL_STUB_ALIAS(PointParameterfvARB, 627, PointParameterfvARB@8, PointParameterfvEXT, PointParameterfvEXT@8) - GL_STUB_ALIAS(SecondaryColor3b, 630, SecondaryColor3b@12, SecondaryColor3bEXT, SecondaryColor3bEXT@12) - GL_STUB_ALIAS(SecondaryColor3bv, 631, SecondaryColor3bv@4, SecondaryColor3bvEXT, SecondaryColor3bvEXT@4) - GL_STUB_ALIAS(SecondaryColor3d, 632, SecondaryColor3d@24, SecondaryColor3dEXT, SecondaryColor3dEXT@24) - GL_STUB_ALIAS(SecondaryColor3dv, 633, SecondaryColor3dv@4, SecondaryColor3dvEXT, SecondaryColor3dvEXT@4) - GL_STUB_ALIAS(SecondaryColor3f, 634, SecondaryColor3f@12, SecondaryColor3fEXT, SecondaryColor3fEXT@12) - GL_STUB_ALIAS(SecondaryColor3fv, 635, SecondaryColor3fv@4, SecondaryColor3fvEXT, SecondaryColor3fvEXT@4) - GL_STUB_ALIAS(SecondaryColor3i, 636, SecondaryColor3i@12, SecondaryColor3iEXT, SecondaryColor3iEXT@12) - GL_STUB_ALIAS(SecondaryColor3iv, 637, SecondaryColor3iv@4, SecondaryColor3ivEXT, SecondaryColor3ivEXT@4) - GL_STUB_ALIAS(SecondaryColor3s, 638, SecondaryColor3s@12, SecondaryColor3sEXT, SecondaryColor3sEXT@12) - GL_STUB_ALIAS(SecondaryColor3sv, 639, SecondaryColor3sv@4, SecondaryColor3svEXT, SecondaryColor3svEXT@4) - GL_STUB_ALIAS(SecondaryColor3ub, 640, SecondaryColor3ub@12, SecondaryColor3ubEXT, SecondaryColor3ubEXT@12) - GL_STUB_ALIAS(SecondaryColor3ubv, 641, SecondaryColor3ubv@4, SecondaryColor3ubvEXT, SecondaryColor3ubvEXT@4) - GL_STUB_ALIAS(SecondaryColor3ui, 642, SecondaryColor3ui@12, SecondaryColor3uiEXT, SecondaryColor3uiEXT@12) - GL_STUB_ALIAS(SecondaryColor3uiv, 643, SecondaryColor3uiv@4, SecondaryColor3uivEXT, SecondaryColor3uivEXT@4) - GL_STUB_ALIAS(SecondaryColor3us, 644, SecondaryColor3us@12, SecondaryColor3usEXT, SecondaryColor3usEXT@12) - GL_STUB_ALIAS(SecondaryColor3usv, 645, SecondaryColor3usv@4, SecondaryColor3usvEXT, SecondaryColor3usvEXT@4) - GL_STUB_ALIAS(SecondaryColorPointer, 646, SecondaryColorPointer@16, SecondaryColorPointerEXT, SecondaryColorPointerEXT@16) - GL_STUB_ALIAS(MultiDrawArrays, 647, MultiDrawArrays@16, MultiDrawArraysEXT, MultiDrawArraysEXT@16) - GL_STUB_ALIAS(MultiDrawElements, 648, MultiDrawElements@20, MultiDrawElementsEXT, MultiDrawElementsEXT@20) - GL_STUB_ALIAS(FogCoordPointer, 649, FogCoordPointer@12, FogCoordPointerEXT, FogCoordPointerEXT@12) - GL_STUB_ALIAS(FogCoordd, 650, FogCoordd@8, FogCoorddEXT, FogCoorddEXT@8) - GL_STUB_ALIAS(FogCoorddv, 651, FogCoorddv@4, FogCoorddvEXT, FogCoorddvEXT@4) - GL_STUB_ALIAS(FogCoordf, 652, FogCoordf@4, FogCoordfEXT, FogCoordfEXT@4) - GL_STUB_ALIAS(FogCoordfv, 653, FogCoordfv@4, FogCoordfvEXT, FogCoordfvEXT@4) - GL_STUB_ALIAS(BlendFuncSeparate, 655, BlendFuncSeparate@16, BlendFuncSeparateEXT, BlendFuncSeparateEXT@16) - GL_STUB_ALIAS(WindowPos2d, 672, WindowPos2d@16, WindowPos2dMESA, WindowPos2dMESA@16) - GL_STUB_ALIAS(WindowPos2dARB, 672, WindowPos2dARB@16, WindowPos2dMESA, WindowPos2dMESA@16) - GL_STUB_ALIAS(WindowPos2dv, 673, WindowPos2dv@4, WindowPos2dvMESA, WindowPos2dvMESA@4) - GL_STUB_ALIAS(WindowPos2dvARB, 673, WindowPos2dvARB@4, WindowPos2dvMESA, WindowPos2dvMESA@4) - GL_STUB_ALIAS(WindowPos2f, 674, WindowPos2f@8, WindowPos2fMESA, WindowPos2fMESA@8) - GL_STUB_ALIAS(WindowPos2fARB, 674, WindowPos2fARB@8, WindowPos2fMESA, WindowPos2fMESA@8) - GL_STUB_ALIAS(WindowPos2fv, 675, WindowPos2fv@4, WindowPos2fvMESA, WindowPos2fvMESA@4) - GL_STUB_ALIAS(WindowPos2fvARB, 675, WindowPos2fvARB@4, WindowPos2fvMESA, WindowPos2fvMESA@4) - GL_STUB_ALIAS(WindowPos2i, 676, WindowPos2i@8, WindowPos2iMESA, WindowPos2iMESA@8) - GL_STUB_ALIAS(WindowPos2iARB, 676, WindowPos2iARB@8, WindowPos2iMESA, WindowPos2iMESA@8) - GL_STUB_ALIAS(WindowPos2iv, 677, WindowPos2iv@4, WindowPos2ivMESA, WindowPos2ivMESA@4) - GL_STUB_ALIAS(WindowPos2ivARB, 677, WindowPos2ivARB@4, WindowPos2ivMESA, WindowPos2ivMESA@4) - GL_STUB_ALIAS(WindowPos2s, 678, WindowPos2s@8, WindowPos2sMESA, WindowPos2sMESA@8) - GL_STUB_ALIAS(WindowPos2sARB, 678, WindowPos2sARB@8, WindowPos2sMESA, WindowPos2sMESA@8) - GL_STUB_ALIAS(WindowPos2sv, 679, WindowPos2sv@4, WindowPos2svMESA, WindowPos2svMESA@4) - GL_STUB_ALIAS(WindowPos2svARB, 679, WindowPos2svARB@4, WindowPos2svMESA, WindowPos2svMESA@4) - GL_STUB_ALIAS(WindowPos3d, 680, WindowPos3d@24, WindowPos3dMESA, WindowPos3dMESA@24) - GL_STUB_ALIAS(WindowPos3dARB, 680, WindowPos3dARB@24, WindowPos3dMESA, WindowPos3dMESA@24) - GL_STUB_ALIAS(WindowPos3dv, 681, WindowPos3dv@4, WindowPos3dvMESA, WindowPos3dvMESA@4) - GL_STUB_ALIAS(WindowPos3dvARB, 681, WindowPos3dvARB@4, WindowPos3dvMESA, WindowPos3dvMESA@4) - GL_STUB_ALIAS(WindowPos3f, 682, WindowPos3f@12, WindowPos3fMESA, WindowPos3fMESA@12) - GL_STUB_ALIAS(WindowPos3fARB, 682, WindowPos3fARB@12, WindowPos3fMESA, WindowPos3fMESA@12) - GL_STUB_ALIAS(WindowPos3fv, 683, WindowPos3fv@4, WindowPos3fvMESA, WindowPos3fvMESA@4) - GL_STUB_ALIAS(WindowPos3fvARB, 683, WindowPos3fvARB@4, WindowPos3fvMESA, WindowPos3fvMESA@4) - GL_STUB_ALIAS(WindowPos3i, 684, WindowPos3i@12, WindowPos3iMESA, WindowPos3iMESA@12) - GL_STUB_ALIAS(WindowPos3iARB, 684, WindowPos3iARB@12, WindowPos3iMESA, WindowPos3iMESA@12) - GL_STUB_ALIAS(WindowPos3iv, 685, WindowPos3iv@4, WindowPos3ivMESA, WindowPos3ivMESA@4) - GL_STUB_ALIAS(WindowPos3ivARB, 685, WindowPos3ivARB@4, WindowPos3ivMESA, WindowPos3ivMESA@4) - GL_STUB_ALIAS(WindowPos3s, 686, WindowPos3s@12, WindowPos3sMESA, WindowPos3sMESA@12) - GL_STUB_ALIAS(WindowPos3sARB, 686, WindowPos3sARB@12, WindowPos3sMESA, WindowPos3sMESA@12) - GL_STUB_ALIAS(WindowPos3sv, 687, WindowPos3sv@4, WindowPos3svMESA, WindowPos3svMESA@4) - GL_STUB_ALIAS(WindowPos3svARB, 687, WindowPos3svARB@4, WindowPos3svMESA, WindowPos3svMESA@4) - GL_STUB_ALIAS(BindProgramARB, 706, BindProgramARB@8, BindProgramNV, BindProgramNV@8) - GL_STUB_ALIAS(DeleteProgramsARB, 707, DeleteProgramsARB@8, DeleteProgramsNV, DeleteProgramsNV@8) - GL_STUB_ALIAS(GenProgramsARB, 709, GenProgramsARB@8, GenProgramsNV, GenProgramsNV@8) - GL_STUB_ALIAS(GetVertexAttribPointerv, 715, GetVertexAttribPointerv@12, GetVertexAttribPointervNV, GetVertexAttribPointervNV@12) - GL_STUB_ALIAS(GetVertexAttribPointervARB, 715, GetVertexAttribPointervARB@12, GetVertexAttribPointervNV, GetVertexAttribPointervNV@12) - GL_STUB_ALIAS(IsProgramARB, 719, IsProgramARB@4, IsProgramNV, IsProgramNV@4) - GL_STUB_ALIAS(PointParameteri, 783, PointParameteri@8, PointParameteriNV, PointParameteriNV@8) - GL_STUB_ALIAS(PointParameteriv, 784, PointParameteriv@8, PointParameterivNV, PointParameterivNV@8) - GL_STUB_ALIAS(DeleteVertexArrays, 787, DeleteVertexArrays@8, _dispatch_stub_787, _dispatch_stub_787@8) - GL_STUB_ALIAS(IsVertexArray, 789, IsVertexArray@4, _dispatch_stub_789, _dispatch_stub_789@4) - GL_STUB_ALIAS(PrimitiveRestartIndex, 796, PrimitiveRestartIndex@4, PrimitiveRestartIndexNV, PrimitiveRestartIndexNV@4) - GL_STUB_ALIAS(BlendEquationSeparate, 799, BlendEquationSeparate@8, _dispatch_stub_799, _dispatch_stub_799@8) - GL_STUB_ALIAS(BindFramebuffer, 800, BindFramebuffer@8, BindFramebufferEXT, BindFramebufferEXT@8) - GL_STUB_ALIAS(BindRenderbuffer, 801, BindRenderbuffer@8, BindRenderbufferEXT, BindRenderbufferEXT@8) - GL_STUB_ALIAS(CheckFramebufferStatus, 802, CheckFramebufferStatus@4, CheckFramebufferStatusEXT, CheckFramebufferStatusEXT@4) - GL_STUB_ALIAS(DeleteFramebuffers, 803, DeleteFramebuffers@8, DeleteFramebuffersEXT, DeleteFramebuffersEXT@8) - GL_STUB_ALIAS(DeleteRenderbuffers, 804, DeleteRenderbuffers@8, DeleteRenderbuffersEXT, DeleteRenderbuffersEXT@8) - GL_STUB_ALIAS(FramebufferRenderbuffer, 805, FramebufferRenderbuffer@16, FramebufferRenderbufferEXT, FramebufferRenderbufferEXT@16) - GL_STUB_ALIAS(FramebufferTexture1D, 806, FramebufferTexture1D@20, FramebufferTexture1DEXT, FramebufferTexture1DEXT@20) - GL_STUB_ALIAS(FramebufferTexture2D, 807, FramebufferTexture2D@20, FramebufferTexture2DEXT, FramebufferTexture2DEXT@20) - GL_STUB_ALIAS(FramebufferTexture3D, 808, FramebufferTexture3D@24, FramebufferTexture3DEXT, FramebufferTexture3DEXT@24) - GL_STUB_ALIAS(GenFramebuffers, 809, GenFramebuffers@8, GenFramebuffersEXT, GenFramebuffersEXT@8) - GL_STUB_ALIAS(GenRenderbuffers, 810, GenRenderbuffers@8, GenRenderbuffersEXT, GenRenderbuffersEXT@8) - GL_STUB_ALIAS(GenerateMipmap, 811, GenerateMipmap@4, GenerateMipmapEXT, GenerateMipmapEXT@4) - GL_STUB_ALIAS(GetFramebufferAttachmentParameteriv, 812, GetFramebufferAttachmentParameteriv@16, GetFramebufferAttachmentParameterivEXT, GetFramebufferAttachmentParameterivEXT@16) - GL_STUB_ALIAS(GetRenderbufferParameteriv, 813, GetRenderbufferParameteriv@12, GetRenderbufferParameterivEXT, GetRenderbufferParameterivEXT@12) - GL_STUB_ALIAS(IsFramebuffer, 814, IsFramebuffer@4, IsFramebufferEXT, IsFramebufferEXT@4) - GL_STUB_ALIAS(IsRenderbuffer, 815, IsRenderbuffer@4, IsRenderbufferEXT, IsRenderbufferEXT@4) - GL_STUB_ALIAS(RenderbufferStorage, 816, RenderbufferStorage@16, RenderbufferStorageEXT, RenderbufferStorageEXT@16) - GL_STUB_ALIAS(BlitFramebuffer, 817, BlitFramebuffer@40, _dispatch_stub_817, _dispatch_stub_817@40) - GL_STUB_ALIAS(BindFragDataLocation, 820, BindFragDataLocation@12, BindFragDataLocationEXT, BindFragDataLocationEXT@12) - GL_STUB_ALIAS(GetFragDataLocation, 821, GetFragDataLocation@8, GetFragDataLocationEXT, GetFragDataLocationEXT@8) - GL_STUB_ALIAS(GetUniformuiv, 822, GetUniformuiv@12, GetUniformuivEXT, GetUniformuivEXT@12) - GL_STUB_ALIAS(GetVertexAttribIiv, 823, GetVertexAttribIiv@12, GetVertexAttribIivEXT, GetVertexAttribIivEXT@12) - GL_STUB_ALIAS(GetVertexAttribIuiv, 824, GetVertexAttribIuiv@12, GetVertexAttribIuivEXT, GetVertexAttribIuivEXT@12) - GL_STUB_ALIAS(Uniform1ui, 825, Uniform1ui@8, Uniform1uiEXT, Uniform1uiEXT@8) - GL_STUB_ALIAS(Uniform1uiv, 826, Uniform1uiv@12, Uniform1uivEXT, Uniform1uivEXT@12) - GL_STUB_ALIAS(Uniform2ui, 827, Uniform2ui@12, Uniform2uiEXT, Uniform2uiEXT@12) - GL_STUB_ALIAS(Uniform2uiv, 828, Uniform2uiv@12, Uniform2uivEXT, Uniform2uivEXT@12) - GL_STUB_ALIAS(Uniform3ui, 829, Uniform3ui@16, Uniform3uiEXT, Uniform3uiEXT@16) - GL_STUB_ALIAS(Uniform3uiv, 830, Uniform3uiv@12, Uniform3uivEXT, Uniform3uivEXT@12) - GL_STUB_ALIAS(Uniform4ui, 831, Uniform4ui@20, Uniform4uiEXT, Uniform4uiEXT@20) - GL_STUB_ALIAS(Uniform4uiv, 832, Uniform4uiv@12, Uniform4uivEXT, Uniform4uivEXT@12) - GL_STUB_ALIAS(VertexAttribI1i, 833, VertexAttribI1i@8, VertexAttribI1iEXT, VertexAttribI1iEXT@8) - GL_STUB_ALIAS(VertexAttribI1iv, 834, VertexAttribI1iv@8, VertexAttribI1ivEXT, VertexAttribI1ivEXT@8) - GL_STUB_ALIAS(VertexAttribI1ui, 835, VertexAttribI1ui@8, VertexAttribI1uiEXT, VertexAttribI1uiEXT@8) - GL_STUB_ALIAS(VertexAttribI1uiv, 836, VertexAttribI1uiv@8, VertexAttribI1uivEXT, VertexAttribI1uivEXT@8) - GL_STUB_ALIAS(VertexAttribI2i, 837, VertexAttribI2i@12, VertexAttribI2iEXT, VertexAttribI2iEXT@12) - GL_STUB_ALIAS(VertexAttribI2iv, 838, VertexAttribI2iv@8, VertexAttribI2ivEXT, VertexAttribI2ivEXT@8) - GL_STUB_ALIAS(VertexAttribI2ui, 839, VertexAttribI2ui@12, VertexAttribI2uiEXT, VertexAttribI2uiEXT@12) - GL_STUB_ALIAS(VertexAttribI2uiv, 840, VertexAttribI2uiv@8, VertexAttribI2uivEXT, VertexAttribI2uivEXT@8) - GL_STUB_ALIAS(VertexAttribI3i, 841, VertexAttribI3i@16, VertexAttribI3iEXT, VertexAttribI3iEXT@16) - GL_STUB_ALIAS(VertexAttribI3iv, 842, VertexAttribI3iv@8, VertexAttribI3ivEXT, VertexAttribI3ivEXT@8) - GL_STUB_ALIAS(VertexAttribI3ui, 843, VertexAttribI3ui@16, VertexAttribI3uiEXT, VertexAttribI3uiEXT@16) - GL_STUB_ALIAS(VertexAttribI3uiv, 844, VertexAttribI3uiv@8, VertexAttribI3uivEXT, VertexAttribI3uivEXT@8) - GL_STUB_ALIAS(VertexAttribI4bv, 845, VertexAttribI4bv@8, VertexAttribI4bvEXT, VertexAttribI4bvEXT@8) - GL_STUB_ALIAS(VertexAttribI4i, 846, VertexAttribI4i@20, VertexAttribI4iEXT, VertexAttribI4iEXT@20) - GL_STUB_ALIAS(VertexAttribI4iv, 847, VertexAttribI4iv@8, VertexAttribI4ivEXT, VertexAttribI4ivEXT@8) - GL_STUB_ALIAS(VertexAttribI4sv, 848, VertexAttribI4sv@8, VertexAttribI4svEXT, VertexAttribI4svEXT@8) - GL_STUB_ALIAS(VertexAttribI4ubv, 849, VertexAttribI4ubv@8, VertexAttribI4ubvEXT, VertexAttribI4ubvEXT@8) - GL_STUB_ALIAS(VertexAttribI4ui, 850, VertexAttribI4ui@20, VertexAttribI4uiEXT, VertexAttribI4uiEXT@20) - GL_STUB_ALIAS(VertexAttribI4uiv, 851, VertexAttribI4uiv@8, VertexAttribI4uivEXT, VertexAttribI4uivEXT@8) - GL_STUB_ALIAS(VertexAttribI4usv, 852, VertexAttribI4usv@8, VertexAttribI4usvEXT, VertexAttribI4usvEXT@8) - GL_STUB_ALIAS(VertexAttribIPointer, 853, VertexAttribIPointer@20, VertexAttribIPointerEXT, VertexAttribIPointerEXT@20) - GL_STUB_ALIAS(FramebufferTextureLayer, 854, FramebufferTextureLayer@20, FramebufferTextureLayerEXT, FramebufferTextureLayerEXT@20) - GL_STUB_ALIAS(ColorMaski, 855, ColorMaski@20, ColorMaskIndexedEXT, ColorMaskIndexedEXT@20) - GL_STUB_ALIAS(Disablei, 856, Disablei@8, DisableIndexedEXT, DisableIndexedEXT@8) - GL_STUB_ALIAS(Enablei, 857, Enablei@8, EnableIndexedEXT, EnableIndexedEXT@8) - GL_STUB_ALIAS(GetBooleani_v, 858, GetBooleani_v@12, GetBooleanIndexedvEXT, GetBooleanIndexedvEXT@12) - GL_STUB_ALIAS(GetIntegeri_v, 859, GetIntegeri_v@12, GetIntegerIndexedvEXT, GetIntegerIndexedvEXT@12) - GL_STUB_ALIAS(IsEnabledi, 860, IsEnabledi@8, IsEnabledIndexedEXT, IsEnabledIndexedEXT@8) - GL_STUB_ALIAS(GetTexParameterIiv, 863, GetTexParameterIiv@12, GetTexParameterIivEXT, GetTexParameterIivEXT@12) - GL_STUB_ALIAS(GetTexParameterIuiv, 864, GetTexParameterIuiv@12, GetTexParameterIuivEXT, GetTexParameterIuivEXT@12) - GL_STUB_ALIAS(TexParameterIiv, 865, TexParameterIiv@12, TexParameterIivEXT, TexParameterIivEXT@12) - GL_STUB_ALIAS(TexParameterIuiv, 866, TexParameterIuiv@12, TexParameterIuivEXT, TexParameterIuivEXT@12) - GL_STUB_ALIAS(BeginConditionalRender, 867, BeginConditionalRender@8, BeginConditionalRenderNV, BeginConditionalRenderNV@8) - GL_STUB_ALIAS(EndConditionalRender, 868, EndConditionalRender@0, EndConditionalRenderNV, EndConditionalRenderNV@0) - GL_STUB_ALIAS(BeginTransformFeedback, 869, BeginTransformFeedback@4, BeginTransformFeedbackEXT, BeginTransformFeedbackEXT@4) - GL_STUB_ALIAS(BindBufferBase, 870, BindBufferBase@12, BindBufferBaseEXT, BindBufferBaseEXT@12) - GL_STUB_ALIAS(BindBufferRange, 872, BindBufferRange@20, BindBufferRangeEXT, BindBufferRangeEXT@20) - GL_STUB_ALIAS(EndTransformFeedback, 873, EndTransformFeedback@0, EndTransformFeedbackEXT, EndTransformFeedbackEXT@0) - GL_STUB_ALIAS(GetTransformFeedbackVarying, 874, GetTransformFeedbackVarying@28, GetTransformFeedbackVaryingEXT, GetTransformFeedbackVaryingEXT@28) - GL_STUB_ALIAS(TransformFeedbackVaryings, 875, TransformFeedbackVaryings@16, TransformFeedbackVaryingsEXT, TransformFeedbackVaryingsEXT@16) - GL_STUB_ALIAS(ProvokingVertex, 876, ProvokingVertex@4, ProvokingVertexEXT, ProvokingVertexEXT@4) + GL_STUB_ALIAS(PointParameterf, 627, PointParameterf@8, PointParameterfEXT, PointParameterfEXT@8) + GL_STUB_ALIAS(PointParameterfARB, 627, PointParameterfARB@8, PointParameterfEXT, PointParameterfEXT@8) + GL_STUB_ALIAS(PointParameterfv, 628, PointParameterfv@8, PointParameterfvEXT, PointParameterfvEXT@8) + GL_STUB_ALIAS(PointParameterfvARB, 628, PointParameterfvARB@8, PointParameterfvEXT, PointParameterfvEXT@8) + GL_STUB_ALIAS(SecondaryColor3b, 631, SecondaryColor3b@12, SecondaryColor3bEXT, SecondaryColor3bEXT@12) + GL_STUB_ALIAS(SecondaryColor3bv, 632, SecondaryColor3bv@4, SecondaryColor3bvEXT, SecondaryColor3bvEXT@4) + GL_STUB_ALIAS(SecondaryColor3d, 633, SecondaryColor3d@24, SecondaryColor3dEXT, SecondaryColor3dEXT@24) + GL_STUB_ALIAS(SecondaryColor3dv, 634, SecondaryColor3dv@4, SecondaryColor3dvEXT, SecondaryColor3dvEXT@4) + GL_STUB_ALIAS(SecondaryColor3f, 635, SecondaryColor3f@12, SecondaryColor3fEXT, SecondaryColor3fEXT@12) + GL_STUB_ALIAS(SecondaryColor3fv, 636, SecondaryColor3fv@4, SecondaryColor3fvEXT, SecondaryColor3fvEXT@4) + GL_STUB_ALIAS(SecondaryColor3i, 637, SecondaryColor3i@12, SecondaryColor3iEXT, SecondaryColor3iEXT@12) + GL_STUB_ALIAS(SecondaryColor3iv, 638, SecondaryColor3iv@4, SecondaryColor3ivEXT, SecondaryColor3ivEXT@4) + GL_STUB_ALIAS(SecondaryColor3s, 639, SecondaryColor3s@12, SecondaryColor3sEXT, SecondaryColor3sEXT@12) + GL_STUB_ALIAS(SecondaryColor3sv, 640, SecondaryColor3sv@4, SecondaryColor3svEXT, SecondaryColor3svEXT@4) + GL_STUB_ALIAS(SecondaryColor3ub, 641, SecondaryColor3ub@12, SecondaryColor3ubEXT, SecondaryColor3ubEXT@12) + GL_STUB_ALIAS(SecondaryColor3ubv, 642, SecondaryColor3ubv@4, SecondaryColor3ubvEXT, SecondaryColor3ubvEXT@4) + GL_STUB_ALIAS(SecondaryColor3ui, 643, SecondaryColor3ui@12, SecondaryColor3uiEXT, SecondaryColor3uiEXT@12) + GL_STUB_ALIAS(SecondaryColor3uiv, 644, SecondaryColor3uiv@4, SecondaryColor3uivEXT, SecondaryColor3uivEXT@4) + GL_STUB_ALIAS(SecondaryColor3us, 645, SecondaryColor3us@12, SecondaryColor3usEXT, SecondaryColor3usEXT@12) + GL_STUB_ALIAS(SecondaryColor3usv, 646, SecondaryColor3usv@4, SecondaryColor3usvEXT, SecondaryColor3usvEXT@4) + GL_STUB_ALIAS(SecondaryColorPointer, 647, SecondaryColorPointer@16, SecondaryColorPointerEXT, SecondaryColorPointerEXT@16) + GL_STUB_ALIAS(MultiDrawArrays, 648, MultiDrawArrays@16, MultiDrawArraysEXT, MultiDrawArraysEXT@16) + GL_STUB_ALIAS(MultiDrawElements, 649, MultiDrawElements@20, MultiDrawElementsEXT, MultiDrawElementsEXT@20) + GL_STUB_ALIAS(FogCoordPointer, 650, FogCoordPointer@12, FogCoordPointerEXT, FogCoordPointerEXT@12) + GL_STUB_ALIAS(FogCoordd, 651, FogCoordd@8, FogCoorddEXT, FogCoorddEXT@8) + GL_STUB_ALIAS(FogCoorddv, 652, FogCoorddv@4, FogCoorddvEXT, FogCoorddvEXT@4) + GL_STUB_ALIAS(FogCoordf, 653, FogCoordf@4, FogCoordfEXT, FogCoordfEXT@4) + GL_STUB_ALIAS(FogCoordfv, 654, FogCoordfv@4, FogCoordfvEXT, FogCoordfvEXT@4) + GL_STUB_ALIAS(BlendFuncSeparate, 656, BlendFuncSeparate@16, BlendFuncSeparateEXT, BlendFuncSeparateEXT@16) + GL_STUB_ALIAS(WindowPos2d, 673, WindowPos2d@16, WindowPos2dMESA, WindowPos2dMESA@16) + GL_STUB_ALIAS(WindowPos2dARB, 673, WindowPos2dARB@16, WindowPos2dMESA, WindowPos2dMESA@16) + GL_STUB_ALIAS(WindowPos2dv, 674, WindowPos2dv@4, WindowPos2dvMESA, WindowPos2dvMESA@4) + GL_STUB_ALIAS(WindowPos2dvARB, 674, WindowPos2dvARB@4, WindowPos2dvMESA, WindowPos2dvMESA@4) + GL_STUB_ALIAS(WindowPos2f, 675, WindowPos2f@8, WindowPos2fMESA, WindowPos2fMESA@8) + GL_STUB_ALIAS(WindowPos2fARB, 675, WindowPos2fARB@8, WindowPos2fMESA, WindowPos2fMESA@8) + GL_STUB_ALIAS(WindowPos2fv, 676, WindowPos2fv@4, WindowPos2fvMESA, WindowPos2fvMESA@4) + GL_STUB_ALIAS(WindowPos2fvARB, 676, WindowPos2fvARB@4, WindowPos2fvMESA, WindowPos2fvMESA@4) + GL_STUB_ALIAS(WindowPos2i, 677, WindowPos2i@8, WindowPos2iMESA, WindowPos2iMESA@8) + GL_STUB_ALIAS(WindowPos2iARB, 677, WindowPos2iARB@8, WindowPos2iMESA, WindowPos2iMESA@8) + GL_STUB_ALIAS(WindowPos2iv, 678, WindowPos2iv@4, WindowPos2ivMESA, WindowPos2ivMESA@4) + GL_STUB_ALIAS(WindowPos2ivARB, 678, WindowPos2ivARB@4, WindowPos2ivMESA, WindowPos2ivMESA@4) + GL_STUB_ALIAS(WindowPos2s, 679, WindowPos2s@8, WindowPos2sMESA, WindowPos2sMESA@8) + GL_STUB_ALIAS(WindowPos2sARB, 679, WindowPos2sARB@8, WindowPos2sMESA, WindowPos2sMESA@8) + GL_STUB_ALIAS(WindowPos2sv, 680, WindowPos2sv@4, WindowPos2svMESA, WindowPos2svMESA@4) + GL_STUB_ALIAS(WindowPos2svARB, 680, WindowPos2svARB@4, WindowPos2svMESA, WindowPos2svMESA@4) + GL_STUB_ALIAS(WindowPos3d, 681, WindowPos3d@24, WindowPos3dMESA, WindowPos3dMESA@24) + GL_STUB_ALIAS(WindowPos3dARB, 681, WindowPos3dARB@24, WindowPos3dMESA, WindowPos3dMESA@24) + GL_STUB_ALIAS(WindowPos3dv, 682, WindowPos3dv@4, WindowPos3dvMESA, WindowPos3dvMESA@4) + GL_STUB_ALIAS(WindowPos3dvARB, 682, WindowPos3dvARB@4, WindowPos3dvMESA, WindowPos3dvMESA@4) + GL_STUB_ALIAS(WindowPos3f, 683, WindowPos3f@12, WindowPos3fMESA, WindowPos3fMESA@12) + GL_STUB_ALIAS(WindowPos3fARB, 683, WindowPos3fARB@12, WindowPos3fMESA, WindowPos3fMESA@12) + GL_STUB_ALIAS(WindowPos3fv, 684, WindowPos3fv@4, WindowPos3fvMESA, WindowPos3fvMESA@4) + GL_STUB_ALIAS(WindowPos3fvARB, 684, WindowPos3fvARB@4, WindowPos3fvMESA, WindowPos3fvMESA@4) + GL_STUB_ALIAS(WindowPos3i, 685, WindowPos3i@12, WindowPos3iMESA, WindowPos3iMESA@12) + GL_STUB_ALIAS(WindowPos3iARB, 685, WindowPos3iARB@12, WindowPos3iMESA, WindowPos3iMESA@12) + GL_STUB_ALIAS(WindowPos3iv, 686, WindowPos3iv@4, WindowPos3ivMESA, WindowPos3ivMESA@4) + GL_STUB_ALIAS(WindowPos3ivARB, 686, WindowPos3ivARB@4, WindowPos3ivMESA, WindowPos3ivMESA@4) + GL_STUB_ALIAS(WindowPos3s, 687, WindowPos3s@12, WindowPos3sMESA, WindowPos3sMESA@12) + GL_STUB_ALIAS(WindowPos3sARB, 687, WindowPos3sARB@12, WindowPos3sMESA, WindowPos3sMESA@12) + GL_STUB_ALIAS(WindowPos3sv, 688, WindowPos3sv@4, WindowPos3svMESA, WindowPos3svMESA@4) + GL_STUB_ALIAS(WindowPos3svARB, 688, WindowPos3svARB@4, WindowPos3svMESA, WindowPos3svMESA@4) + GL_STUB_ALIAS(BindProgramARB, 707, BindProgramARB@8, BindProgramNV, BindProgramNV@8) + GL_STUB_ALIAS(DeleteProgramsARB, 708, DeleteProgramsARB@8, DeleteProgramsNV, DeleteProgramsNV@8) + GL_STUB_ALIAS(GenProgramsARB, 710, GenProgramsARB@8, GenProgramsNV, GenProgramsNV@8) + GL_STUB_ALIAS(GetVertexAttribPointerv, 716, GetVertexAttribPointerv@12, GetVertexAttribPointervNV, GetVertexAttribPointervNV@12) + GL_STUB_ALIAS(GetVertexAttribPointervARB, 716, GetVertexAttribPointervARB@12, GetVertexAttribPointervNV, GetVertexAttribPointervNV@12) + GL_STUB_ALIAS(IsProgramARB, 720, IsProgramARB@4, IsProgramNV, IsProgramNV@4) + GL_STUB_ALIAS(PointParameteri, 784, PointParameteri@8, PointParameteriNV, PointParameteriNV@8) + GL_STUB_ALIAS(PointParameteriv, 785, PointParameteriv@8, PointParameterivNV, PointParameterivNV@8) + GL_STUB_ALIAS(DeleteVertexArrays, 788, DeleteVertexArrays@8, _dispatch_stub_788, _dispatch_stub_788@8) + GL_STUB_ALIAS(IsVertexArray, 790, IsVertexArray@4, _dispatch_stub_790, _dispatch_stub_790@4) + GL_STUB_ALIAS(PrimitiveRestartIndex, 797, PrimitiveRestartIndex@4, PrimitiveRestartIndexNV, PrimitiveRestartIndexNV@4) + GL_STUB_ALIAS(BlendEquationSeparate, 800, BlendEquationSeparate@8, _dispatch_stub_800, _dispatch_stub_800@8) + GL_STUB_ALIAS(BindFramebuffer, 801, BindFramebuffer@8, BindFramebufferEXT, BindFramebufferEXT@8) + GL_STUB_ALIAS(BindRenderbuffer, 802, BindRenderbuffer@8, BindRenderbufferEXT, BindRenderbufferEXT@8) + GL_STUB_ALIAS(CheckFramebufferStatus, 803, CheckFramebufferStatus@4, CheckFramebufferStatusEXT, CheckFramebufferStatusEXT@4) + GL_STUB_ALIAS(DeleteFramebuffers, 804, DeleteFramebuffers@8, DeleteFramebuffersEXT, DeleteFramebuffersEXT@8) + GL_STUB_ALIAS(DeleteRenderbuffers, 805, DeleteRenderbuffers@8, DeleteRenderbuffersEXT, DeleteRenderbuffersEXT@8) + GL_STUB_ALIAS(FramebufferRenderbuffer, 806, FramebufferRenderbuffer@16, FramebufferRenderbufferEXT, FramebufferRenderbufferEXT@16) + GL_STUB_ALIAS(FramebufferTexture1D, 807, FramebufferTexture1D@20, FramebufferTexture1DEXT, FramebufferTexture1DEXT@20) + GL_STUB_ALIAS(FramebufferTexture2D, 808, FramebufferTexture2D@20, FramebufferTexture2DEXT, FramebufferTexture2DEXT@20) + GL_STUB_ALIAS(FramebufferTexture3D, 809, FramebufferTexture3D@24, FramebufferTexture3DEXT, FramebufferTexture3DEXT@24) + GL_STUB_ALIAS(GenFramebuffers, 810, GenFramebuffers@8, GenFramebuffersEXT, GenFramebuffersEXT@8) + GL_STUB_ALIAS(GenRenderbuffers, 811, GenRenderbuffers@8, GenRenderbuffersEXT, GenRenderbuffersEXT@8) + GL_STUB_ALIAS(GenerateMipmap, 812, GenerateMipmap@4, GenerateMipmapEXT, GenerateMipmapEXT@4) + GL_STUB_ALIAS(GetFramebufferAttachmentParameteriv, 813, GetFramebufferAttachmentParameteriv@16, GetFramebufferAttachmentParameterivEXT, GetFramebufferAttachmentParameterivEXT@16) + GL_STUB_ALIAS(GetRenderbufferParameteriv, 814, GetRenderbufferParameteriv@12, GetRenderbufferParameterivEXT, GetRenderbufferParameterivEXT@12) + GL_STUB_ALIAS(IsFramebuffer, 815, IsFramebuffer@4, IsFramebufferEXT, IsFramebufferEXT@4) + GL_STUB_ALIAS(IsRenderbuffer, 816, IsRenderbuffer@4, IsRenderbufferEXT, IsRenderbufferEXT@4) + GL_STUB_ALIAS(RenderbufferStorage, 817, RenderbufferStorage@16, RenderbufferStorageEXT, RenderbufferStorageEXT@16) + GL_STUB_ALIAS(BlitFramebuffer, 818, BlitFramebuffer@40, _dispatch_stub_818, _dispatch_stub_818@40) + GL_STUB_ALIAS(BindFragDataLocation, 821, BindFragDataLocation@12, BindFragDataLocationEXT, BindFragDataLocationEXT@12) + GL_STUB_ALIAS(GetFragDataLocation, 822, GetFragDataLocation@8, GetFragDataLocationEXT, GetFragDataLocationEXT@8) + GL_STUB_ALIAS(GetUniformuiv, 823, GetUniformuiv@12, GetUniformuivEXT, GetUniformuivEXT@12) + GL_STUB_ALIAS(GetVertexAttribIiv, 824, GetVertexAttribIiv@12, GetVertexAttribIivEXT, GetVertexAttribIivEXT@12) + GL_STUB_ALIAS(GetVertexAttribIuiv, 825, GetVertexAttribIuiv@12, GetVertexAttribIuivEXT, GetVertexAttribIuivEXT@12) + GL_STUB_ALIAS(Uniform1ui, 826, Uniform1ui@8, Uniform1uiEXT, Uniform1uiEXT@8) + GL_STUB_ALIAS(Uniform1uiv, 827, Uniform1uiv@12, Uniform1uivEXT, Uniform1uivEXT@12) + GL_STUB_ALIAS(Uniform2ui, 828, Uniform2ui@12, Uniform2uiEXT, Uniform2uiEXT@12) + GL_STUB_ALIAS(Uniform2uiv, 829, Uniform2uiv@12, Uniform2uivEXT, Uniform2uivEXT@12) + GL_STUB_ALIAS(Uniform3ui, 830, Uniform3ui@16, Uniform3uiEXT, Uniform3uiEXT@16) + GL_STUB_ALIAS(Uniform3uiv, 831, Uniform3uiv@12, Uniform3uivEXT, Uniform3uivEXT@12) + GL_STUB_ALIAS(Uniform4ui, 832, Uniform4ui@20, Uniform4uiEXT, Uniform4uiEXT@20) + GL_STUB_ALIAS(Uniform4uiv, 833, Uniform4uiv@12, Uniform4uivEXT, Uniform4uivEXT@12) + GL_STUB_ALIAS(VertexAttribI1i, 834, VertexAttribI1i@8, VertexAttribI1iEXT, VertexAttribI1iEXT@8) + GL_STUB_ALIAS(VertexAttribI1iv, 835, VertexAttribI1iv@8, VertexAttribI1ivEXT, VertexAttribI1ivEXT@8) + GL_STUB_ALIAS(VertexAttribI1ui, 836, VertexAttribI1ui@8, VertexAttribI1uiEXT, VertexAttribI1uiEXT@8) + GL_STUB_ALIAS(VertexAttribI1uiv, 837, VertexAttribI1uiv@8, VertexAttribI1uivEXT, VertexAttribI1uivEXT@8) + GL_STUB_ALIAS(VertexAttribI2i, 838, VertexAttribI2i@12, VertexAttribI2iEXT, VertexAttribI2iEXT@12) + GL_STUB_ALIAS(VertexAttribI2iv, 839, VertexAttribI2iv@8, VertexAttribI2ivEXT, VertexAttribI2ivEXT@8) + GL_STUB_ALIAS(VertexAttribI2ui, 840, VertexAttribI2ui@12, VertexAttribI2uiEXT, VertexAttribI2uiEXT@12) + GL_STUB_ALIAS(VertexAttribI2uiv, 841, VertexAttribI2uiv@8, VertexAttribI2uivEXT, VertexAttribI2uivEXT@8) + GL_STUB_ALIAS(VertexAttribI3i, 842, VertexAttribI3i@16, VertexAttribI3iEXT, VertexAttribI3iEXT@16) + GL_STUB_ALIAS(VertexAttribI3iv, 843, VertexAttribI3iv@8, VertexAttribI3ivEXT, VertexAttribI3ivEXT@8) + GL_STUB_ALIAS(VertexAttribI3ui, 844, VertexAttribI3ui@16, VertexAttribI3uiEXT, VertexAttribI3uiEXT@16) + GL_STUB_ALIAS(VertexAttribI3uiv, 845, VertexAttribI3uiv@8, VertexAttribI3uivEXT, VertexAttribI3uivEXT@8) + GL_STUB_ALIAS(VertexAttribI4bv, 846, VertexAttribI4bv@8, VertexAttribI4bvEXT, VertexAttribI4bvEXT@8) + GL_STUB_ALIAS(VertexAttribI4i, 847, VertexAttribI4i@20, VertexAttribI4iEXT, VertexAttribI4iEXT@20) + GL_STUB_ALIAS(VertexAttribI4iv, 848, VertexAttribI4iv@8, VertexAttribI4ivEXT, VertexAttribI4ivEXT@8) + GL_STUB_ALIAS(VertexAttribI4sv, 849, VertexAttribI4sv@8, VertexAttribI4svEXT, VertexAttribI4svEXT@8) + GL_STUB_ALIAS(VertexAttribI4ubv, 850, VertexAttribI4ubv@8, VertexAttribI4ubvEXT, VertexAttribI4ubvEXT@8) + GL_STUB_ALIAS(VertexAttribI4ui, 851, VertexAttribI4ui@20, VertexAttribI4uiEXT, VertexAttribI4uiEXT@20) + GL_STUB_ALIAS(VertexAttribI4uiv, 852, VertexAttribI4uiv@8, VertexAttribI4uivEXT, VertexAttribI4uivEXT@8) + GL_STUB_ALIAS(VertexAttribI4usv, 853, VertexAttribI4usv@8, VertexAttribI4usvEXT, VertexAttribI4usvEXT@8) + GL_STUB_ALIAS(VertexAttribIPointer, 854, VertexAttribIPointer@20, VertexAttribIPointerEXT, VertexAttribIPointerEXT@20) + GL_STUB_ALIAS(FramebufferTextureLayer, 855, FramebufferTextureLayer@20, FramebufferTextureLayerEXT, FramebufferTextureLayerEXT@20) + GL_STUB_ALIAS(ColorMaski, 856, ColorMaski@20, ColorMaskIndexedEXT, ColorMaskIndexedEXT@20) + GL_STUB_ALIAS(Disablei, 857, Disablei@8, DisableIndexedEXT, DisableIndexedEXT@8) + GL_STUB_ALIAS(Enablei, 858, Enablei@8, EnableIndexedEXT, EnableIndexedEXT@8) + GL_STUB_ALIAS(GetBooleani_v, 859, GetBooleani_v@12, GetBooleanIndexedvEXT, GetBooleanIndexedvEXT@12) + GL_STUB_ALIAS(GetIntegeri_v, 860, GetIntegeri_v@12, GetIntegerIndexedvEXT, GetIntegerIndexedvEXT@12) + GL_STUB_ALIAS(IsEnabledi, 861, IsEnabledi@8, IsEnabledIndexedEXT, IsEnabledIndexedEXT@8) + GL_STUB_ALIAS(GetTexParameterIiv, 864, GetTexParameterIiv@12, GetTexParameterIivEXT, GetTexParameterIivEXT@12) + GL_STUB_ALIAS(GetTexParameterIuiv, 865, GetTexParameterIuiv@12, GetTexParameterIuivEXT, GetTexParameterIuivEXT@12) + GL_STUB_ALIAS(TexParameterIiv, 866, TexParameterIiv@12, TexParameterIivEXT, TexParameterIivEXT@12) + GL_STUB_ALIAS(TexParameterIuiv, 867, TexParameterIuiv@12, TexParameterIuivEXT, TexParameterIuivEXT@12) + GL_STUB_ALIAS(BeginConditionalRender, 868, BeginConditionalRender@8, BeginConditionalRenderNV, BeginConditionalRenderNV@8) + GL_STUB_ALIAS(EndConditionalRender, 869, EndConditionalRender@0, EndConditionalRenderNV, EndConditionalRenderNV@0) + GL_STUB_ALIAS(BeginTransformFeedback, 870, BeginTransformFeedback@4, BeginTransformFeedbackEXT, BeginTransformFeedbackEXT@4) + GL_STUB_ALIAS(BindBufferBase, 871, BindBufferBase@12, BindBufferBaseEXT, BindBufferBaseEXT@12) + GL_STUB_ALIAS(BindBufferRange, 873, BindBufferRange@20, BindBufferRangeEXT, BindBufferRangeEXT@20) + GL_STUB_ALIAS(EndTransformFeedback, 874, EndTransformFeedback@0, EndTransformFeedbackEXT, EndTransformFeedbackEXT@0) + GL_STUB_ALIAS(GetTransformFeedbackVarying, 875, GetTransformFeedbackVarying@28, GetTransformFeedbackVaryingEXT, GetTransformFeedbackVaryingEXT@28) + GL_STUB_ALIAS(TransformFeedbackVaryings, 876, TransformFeedbackVaryings@16, TransformFeedbackVaryingsEXT, TransformFeedbackVaryingsEXT@16) + GL_STUB_ALIAS(ProvokingVertex, 877, ProvokingVertex@4, ProvokingVertexEXT, ProvokingVertexEXT@4) GLOBL GLNAME(gl_dispatch_functions_end) HIDDEN(GLNAME(gl_dispatch_functions_end)) diff --git a/src/mapi/glapi/glapitable.h b/src/mapi/glapi/glapitable.h index fe27e566fae..a9db488cdc5 100644 --- a/src/mapi/glapi/glapitable.h +++ b/src/mapi/glapi/glapitable.h @@ -622,317 +622,318 @@ struct _glapi_table void (GLAPIENTRYP VertexAttribDivisorARB)(GLuint index, GLuint divisor); /* 579 */ void (GLAPIENTRYP FlushMappedBufferRange)(GLenum target, GLintptr offset, GLsizeiptr length); /* 580 */ GLvoid * (GLAPIENTRYP MapBufferRange)(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access); /* 581 */ - void (GLAPIENTRYP BindVertexArray)(GLuint array); /* 582 */ - void (GLAPIENTRYP GenVertexArrays)(GLsizei n, GLuint * arrays); /* 583 */ - void (GLAPIENTRYP CopyBufferSubData)(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); /* 584 */ - GLenum (GLAPIENTRYP ClientWaitSync)(GLsync sync, GLbitfield flags, GLuint64 timeout); /* 585 */ - void (GLAPIENTRYP DeleteSync)(GLsync sync); /* 586 */ - GLsync (GLAPIENTRYP FenceSync)(GLenum condition, GLbitfield flags); /* 587 */ - void (GLAPIENTRYP GetInteger64v)(GLenum pname, GLint64 * params); /* 588 */ - void (GLAPIENTRYP GetSynciv)(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei * length, GLint * values); /* 589 */ - GLboolean (GLAPIENTRYP IsSync)(GLsync sync); /* 590 */ - void (GLAPIENTRYP WaitSync)(GLsync sync, GLbitfield flags, GLuint64 timeout); /* 591 */ - void (GLAPIENTRYP DrawElementsBaseVertex)(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices, GLint basevertex); /* 592 */ - void (GLAPIENTRYP DrawRangeElementsBaseVertex)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid * indices, GLint basevertex); /* 593 */ - void (GLAPIENTRYP MultiDrawElementsBaseVertex)(GLenum mode, const GLsizei * count, GLenum type, const GLvoid ** indices, GLsizei primcount, const GLint * basevertex); /* 594 */ - void (GLAPIENTRYP BlendEquationSeparateiARB)(GLuint buf, GLenum modeRGB, GLenum modeA); /* 595 */ - void (GLAPIENTRYP BlendEquationiARB)(GLuint buf, GLenum mode); /* 596 */ - void (GLAPIENTRYP BlendFuncSeparateiARB)(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcA, GLenum dstA); /* 597 */ - void (GLAPIENTRYP BlendFunciARB)(GLuint buf, GLenum src, GLenum dst); /* 598 */ - void (GLAPIENTRYP BindTransformFeedback)(GLenum target, GLuint id); /* 599 */ - void (GLAPIENTRYP DeleteTransformFeedbacks)(GLsizei n, const GLuint * ids); /* 600 */ - void (GLAPIENTRYP DrawTransformFeedback)(GLenum mode, GLuint id); /* 601 */ - void (GLAPIENTRYP GenTransformFeedbacks)(GLsizei n, GLuint * ids); /* 602 */ - GLboolean (GLAPIENTRYP IsTransformFeedback)(GLuint id); /* 603 */ - void (GLAPIENTRYP PauseTransformFeedback)(void); /* 604 */ - void (GLAPIENTRYP ResumeTransformFeedback)(void); /* 605 */ - void (GLAPIENTRYP ClearDepthf)(GLclampf depth); /* 606 */ - void (GLAPIENTRYP DepthRangef)(GLclampf zNear, GLclampf zFar); /* 607 */ - void (GLAPIENTRYP GetShaderPrecisionFormat)(GLenum shadertype, GLenum precisiontype, GLint * range, GLint * precision); /* 608 */ - void (GLAPIENTRYP ReleaseShaderCompiler)(void); /* 609 */ - void (GLAPIENTRYP ShaderBinary)(GLsizei n, const GLuint * shaders, GLenum binaryformat, const GLvoid * binary, GLsizei length); /* 610 */ - void (GLAPIENTRYP PolygonOffsetEXT)(GLfloat factor, GLfloat bias); /* 611 */ - void (GLAPIENTRYP GetPixelTexGenParameterfvSGIS)(GLenum pname, GLfloat * params); /* 612 */ - void (GLAPIENTRYP GetPixelTexGenParameterivSGIS)(GLenum pname, GLint * params); /* 613 */ - void (GLAPIENTRYP PixelTexGenParameterfSGIS)(GLenum pname, GLfloat param); /* 614 */ - void (GLAPIENTRYP PixelTexGenParameterfvSGIS)(GLenum pname, const GLfloat * params); /* 615 */ - void (GLAPIENTRYP PixelTexGenParameteriSGIS)(GLenum pname, GLint param); /* 616 */ - void (GLAPIENTRYP PixelTexGenParameterivSGIS)(GLenum pname, const GLint * params); /* 617 */ - void (GLAPIENTRYP SampleMaskSGIS)(GLclampf value, GLboolean invert); /* 618 */ - void (GLAPIENTRYP SamplePatternSGIS)(GLenum pattern); /* 619 */ - void (GLAPIENTRYP ColorPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 620 */ - void (GLAPIENTRYP EdgeFlagPointerEXT)(GLsizei stride, GLsizei count, const GLboolean * pointer); /* 621 */ - void (GLAPIENTRYP IndexPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 622 */ - void (GLAPIENTRYP NormalPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 623 */ - void (GLAPIENTRYP TexCoordPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 624 */ - void (GLAPIENTRYP VertexPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 625 */ - void (GLAPIENTRYP PointParameterfEXT)(GLenum pname, GLfloat param); /* 626 */ - void (GLAPIENTRYP PointParameterfvEXT)(GLenum pname, const GLfloat * params); /* 627 */ - void (GLAPIENTRYP LockArraysEXT)(GLint first, GLsizei count); /* 628 */ - void (GLAPIENTRYP UnlockArraysEXT)(void); /* 629 */ - void (GLAPIENTRYP SecondaryColor3bEXT)(GLbyte red, GLbyte green, GLbyte blue); /* 630 */ - void (GLAPIENTRYP SecondaryColor3bvEXT)(const GLbyte * v); /* 631 */ - void (GLAPIENTRYP SecondaryColor3dEXT)(GLdouble red, GLdouble green, GLdouble blue); /* 632 */ - void (GLAPIENTRYP SecondaryColor3dvEXT)(const GLdouble * v); /* 633 */ - void (GLAPIENTRYP SecondaryColor3fEXT)(GLfloat red, GLfloat green, GLfloat blue); /* 634 */ - void (GLAPIENTRYP SecondaryColor3fvEXT)(const GLfloat * v); /* 635 */ - void (GLAPIENTRYP SecondaryColor3iEXT)(GLint red, GLint green, GLint blue); /* 636 */ - void (GLAPIENTRYP SecondaryColor3ivEXT)(const GLint * v); /* 637 */ - void (GLAPIENTRYP SecondaryColor3sEXT)(GLshort red, GLshort green, GLshort blue); /* 638 */ - void (GLAPIENTRYP SecondaryColor3svEXT)(const GLshort * v); /* 639 */ - void (GLAPIENTRYP SecondaryColor3ubEXT)(GLubyte red, GLubyte green, GLubyte blue); /* 640 */ - void (GLAPIENTRYP SecondaryColor3ubvEXT)(const GLubyte * v); /* 641 */ - void (GLAPIENTRYP SecondaryColor3uiEXT)(GLuint red, GLuint green, GLuint blue); /* 642 */ - void (GLAPIENTRYP SecondaryColor3uivEXT)(const GLuint * v); /* 643 */ - void (GLAPIENTRYP SecondaryColor3usEXT)(GLushort red, GLushort green, GLushort blue); /* 644 */ - void (GLAPIENTRYP SecondaryColor3usvEXT)(const GLushort * v); /* 645 */ - void (GLAPIENTRYP SecondaryColorPointerEXT)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 646 */ - void (GLAPIENTRYP MultiDrawArraysEXT)(GLenum mode, const GLint * first, const GLsizei * count, GLsizei primcount); /* 647 */ - void (GLAPIENTRYP MultiDrawElementsEXT)(GLenum mode, const GLsizei * count, GLenum type, const GLvoid ** indices, GLsizei primcount); /* 648 */ - void (GLAPIENTRYP FogCoordPointerEXT)(GLenum type, GLsizei stride, const GLvoid * pointer); /* 649 */ - void (GLAPIENTRYP FogCoorddEXT)(GLdouble coord); /* 650 */ - void (GLAPIENTRYP FogCoorddvEXT)(const GLdouble * coord); /* 651 */ - void (GLAPIENTRYP FogCoordfEXT)(GLfloat coord); /* 652 */ - void (GLAPIENTRYP FogCoordfvEXT)(const GLfloat * coord); /* 653 */ - void (GLAPIENTRYP PixelTexGenSGIX)(GLenum mode); /* 654 */ - void (GLAPIENTRYP BlendFuncSeparateEXT)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); /* 655 */ - void (GLAPIENTRYP FlushVertexArrayRangeNV)(void); /* 656 */ - void (GLAPIENTRYP VertexArrayRangeNV)(GLsizei length, const GLvoid * pointer); /* 657 */ - void (GLAPIENTRYP CombinerInputNV)(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); /* 658 */ - void (GLAPIENTRYP CombinerOutputNV)(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum); /* 659 */ - void (GLAPIENTRYP CombinerParameterfNV)(GLenum pname, GLfloat param); /* 660 */ - void (GLAPIENTRYP CombinerParameterfvNV)(GLenum pname, const GLfloat * params); /* 661 */ - void (GLAPIENTRYP CombinerParameteriNV)(GLenum pname, GLint param); /* 662 */ - void (GLAPIENTRYP CombinerParameterivNV)(GLenum pname, const GLint * params); /* 663 */ - void (GLAPIENTRYP FinalCombinerInputNV)(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); /* 664 */ - void (GLAPIENTRYP GetCombinerInputParameterfvNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat * params); /* 665 */ - void (GLAPIENTRYP GetCombinerInputParameterivNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint * params); /* 666 */ - void (GLAPIENTRYP GetCombinerOutputParameterfvNV)(GLenum stage, GLenum portion, GLenum pname, GLfloat * params); /* 667 */ - void (GLAPIENTRYP GetCombinerOutputParameterivNV)(GLenum stage, GLenum portion, GLenum pname, GLint * params); /* 668 */ - void (GLAPIENTRYP GetFinalCombinerInputParameterfvNV)(GLenum variable, GLenum pname, GLfloat * params); /* 669 */ - void (GLAPIENTRYP GetFinalCombinerInputParameterivNV)(GLenum variable, GLenum pname, GLint * params); /* 670 */ - void (GLAPIENTRYP ResizeBuffersMESA)(void); /* 671 */ - void (GLAPIENTRYP WindowPos2dMESA)(GLdouble x, GLdouble y); /* 672 */ - void (GLAPIENTRYP WindowPos2dvMESA)(const GLdouble * v); /* 673 */ - void (GLAPIENTRYP WindowPos2fMESA)(GLfloat x, GLfloat y); /* 674 */ - void (GLAPIENTRYP WindowPos2fvMESA)(const GLfloat * v); /* 675 */ - void (GLAPIENTRYP WindowPos2iMESA)(GLint x, GLint y); /* 676 */ - void (GLAPIENTRYP WindowPos2ivMESA)(const GLint * v); /* 677 */ - void (GLAPIENTRYP WindowPos2sMESA)(GLshort x, GLshort y); /* 678 */ - void (GLAPIENTRYP WindowPos2svMESA)(const GLshort * v); /* 679 */ - void (GLAPIENTRYP WindowPos3dMESA)(GLdouble x, GLdouble y, GLdouble z); /* 680 */ - void (GLAPIENTRYP WindowPos3dvMESA)(const GLdouble * v); /* 681 */ - void (GLAPIENTRYP WindowPos3fMESA)(GLfloat x, GLfloat y, GLfloat z); /* 682 */ - void (GLAPIENTRYP WindowPos3fvMESA)(const GLfloat * v); /* 683 */ - void (GLAPIENTRYP WindowPos3iMESA)(GLint x, GLint y, GLint z); /* 684 */ - void (GLAPIENTRYP WindowPos3ivMESA)(const GLint * v); /* 685 */ - void (GLAPIENTRYP WindowPos3sMESA)(GLshort x, GLshort y, GLshort z); /* 686 */ - void (GLAPIENTRYP WindowPos3svMESA)(const GLshort * v); /* 687 */ - void (GLAPIENTRYP WindowPos4dMESA)(GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 688 */ - void (GLAPIENTRYP WindowPos4dvMESA)(const GLdouble * v); /* 689 */ - void (GLAPIENTRYP WindowPos4fMESA)(GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 690 */ - void (GLAPIENTRYP WindowPos4fvMESA)(const GLfloat * v); /* 691 */ - void (GLAPIENTRYP WindowPos4iMESA)(GLint x, GLint y, GLint z, GLint w); /* 692 */ - void (GLAPIENTRYP WindowPos4ivMESA)(const GLint * v); /* 693 */ - void (GLAPIENTRYP WindowPos4sMESA)(GLshort x, GLshort y, GLshort z, GLshort w); /* 694 */ - void (GLAPIENTRYP WindowPos4svMESA)(const GLshort * v); /* 695 */ - void (GLAPIENTRYP MultiModeDrawArraysIBM)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); /* 696 */ - void (GLAPIENTRYP MultiModeDrawElementsIBM)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); /* 697 */ - void (GLAPIENTRYP DeleteFencesNV)(GLsizei n, const GLuint * fences); /* 698 */ - void (GLAPIENTRYP FinishFenceNV)(GLuint fence); /* 699 */ - void (GLAPIENTRYP GenFencesNV)(GLsizei n, GLuint * fences); /* 700 */ - void (GLAPIENTRYP GetFenceivNV)(GLuint fence, GLenum pname, GLint * params); /* 701 */ - GLboolean (GLAPIENTRYP IsFenceNV)(GLuint fence); /* 702 */ - void (GLAPIENTRYP SetFenceNV)(GLuint fence, GLenum condition); /* 703 */ - GLboolean (GLAPIENTRYP TestFenceNV)(GLuint fence); /* 704 */ - GLboolean (GLAPIENTRYP AreProgramsResidentNV)(GLsizei n, const GLuint * ids, GLboolean * residences); /* 705 */ - void (GLAPIENTRYP BindProgramNV)(GLenum target, GLuint program); /* 706 */ - void (GLAPIENTRYP DeleteProgramsNV)(GLsizei n, const GLuint * programs); /* 707 */ - void (GLAPIENTRYP ExecuteProgramNV)(GLenum target, GLuint id, const GLfloat * params); /* 708 */ - void (GLAPIENTRYP GenProgramsNV)(GLsizei n, GLuint * programs); /* 709 */ - void (GLAPIENTRYP GetProgramParameterdvNV)(GLenum target, GLuint index, GLenum pname, GLdouble * params); /* 710 */ - void (GLAPIENTRYP GetProgramParameterfvNV)(GLenum target, GLuint index, GLenum pname, GLfloat * params); /* 711 */ - void (GLAPIENTRYP GetProgramStringNV)(GLuint id, GLenum pname, GLubyte * program); /* 712 */ - void (GLAPIENTRYP GetProgramivNV)(GLuint id, GLenum pname, GLint * params); /* 713 */ - void (GLAPIENTRYP GetTrackMatrixivNV)(GLenum target, GLuint address, GLenum pname, GLint * params); /* 714 */ - void (GLAPIENTRYP GetVertexAttribPointervNV)(GLuint index, GLenum pname, GLvoid ** pointer); /* 715 */ - void (GLAPIENTRYP GetVertexAttribdvNV)(GLuint index, GLenum pname, GLdouble * params); /* 716 */ - void (GLAPIENTRYP GetVertexAttribfvNV)(GLuint index, GLenum pname, GLfloat * params); /* 717 */ - void (GLAPIENTRYP GetVertexAttribivNV)(GLuint index, GLenum pname, GLint * params); /* 718 */ - GLboolean (GLAPIENTRYP IsProgramNV)(GLuint program); /* 719 */ - void (GLAPIENTRYP LoadProgramNV)(GLenum target, GLuint id, GLsizei len, const GLubyte * program); /* 720 */ - void (GLAPIENTRYP ProgramParameters4dvNV)(GLenum target, GLuint index, GLsizei num, const GLdouble * params); /* 721 */ - void (GLAPIENTRYP ProgramParameters4fvNV)(GLenum target, GLuint index, GLsizei num, const GLfloat * params); /* 722 */ - void (GLAPIENTRYP RequestResidentProgramsNV)(GLsizei n, const GLuint * ids); /* 723 */ - void (GLAPIENTRYP TrackMatrixNV)(GLenum target, GLuint address, GLenum matrix, GLenum transform); /* 724 */ - void (GLAPIENTRYP VertexAttrib1dNV)(GLuint index, GLdouble x); /* 725 */ - void (GLAPIENTRYP VertexAttrib1dvNV)(GLuint index, const GLdouble * v); /* 726 */ - void (GLAPIENTRYP VertexAttrib1fNV)(GLuint index, GLfloat x); /* 727 */ - void (GLAPIENTRYP VertexAttrib1fvNV)(GLuint index, const GLfloat * v); /* 728 */ - void (GLAPIENTRYP VertexAttrib1sNV)(GLuint index, GLshort x); /* 729 */ - void (GLAPIENTRYP VertexAttrib1svNV)(GLuint index, const GLshort * v); /* 730 */ - void (GLAPIENTRYP VertexAttrib2dNV)(GLuint index, GLdouble x, GLdouble y); /* 731 */ - void (GLAPIENTRYP VertexAttrib2dvNV)(GLuint index, const GLdouble * v); /* 732 */ - void (GLAPIENTRYP VertexAttrib2fNV)(GLuint index, GLfloat x, GLfloat y); /* 733 */ - void (GLAPIENTRYP VertexAttrib2fvNV)(GLuint index, const GLfloat * v); /* 734 */ - void (GLAPIENTRYP VertexAttrib2sNV)(GLuint index, GLshort x, GLshort y); /* 735 */ - void (GLAPIENTRYP VertexAttrib2svNV)(GLuint index, const GLshort * v); /* 736 */ - void (GLAPIENTRYP VertexAttrib3dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z); /* 737 */ - void (GLAPIENTRYP VertexAttrib3dvNV)(GLuint index, const GLdouble * v); /* 738 */ - void (GLAPIENTRYP VertexAttrib3fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z); /* 739 */ - void (GLAPIENTRYP VertexAttrib3fvNV)(GLuint index, const GLfloat * v); /* 740 */ - void (GLAPIENTRYP VertexAttrib3sNV)(GLuint index, GLshort x, GLshort y, GLshort z); /* 741 */ - void (GLAPIENTRYP VertexAttrib3svNV)(GLuint index, const GLshort * v); /* 742 */ - void (GLAPIENTRYP VertexAttrib4dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 743 */ - void (GLAPIENTRYP VertexAttrib4dvNV)(GLuint index, const GLdouble * v); /* 744 */ - void (GLAPIENTRYP VertexAttrib4fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 745 */ - void (GLAPIENTRYP VertexAttrib4fvNV)(GLuint index, const GLfloat * v); /* 746 */ - void (GLAPIENTRYP VertexAttrib4sNV)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); /* 747 */ - void (GLAPIENTRYP VertexAttrib4svNV)(GLuint index, const GLshort * v); /* 748 */ - void (GLAPIENTRYP VertexAttrib4ubNV)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); /* 749 */ - void (GLAPIENTRYP VertexAttrib4ubvNV)(GLuint index, const GLubyte * v); /* 750 */ - void (GLAPIENTRYP VertexAttribPointerNV)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 751 */ - void (GLAPIENTRYP VertexAttribs1dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 752 */ - void (GLAPIENTRYP VertexAttribs1fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 753 */ - void (GLAPIENTRYP VertexAttribs1svNV)(GLuint index, GLsizei n, const GLshort * v); /* 754 */ - void (GLAPIENTRYP VertexAttribs2dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 755 */ - void (GLAPIENTRYP VertexAttribs2fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 756 */ - void (GLAPIENTRYP VertexAttribs2svNV)(GLuint index, GLsizei n, const GLshort * v); /* 757 */ - void (GLAPIENTRYP VertexAttribs3dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 758 */ - void (GLAPIENTRYP VertexAttribs3fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 759 */ - void (GLAPIENTRYP VertexAttribs3svNV)(GLuint index, GLsizei n, const GLshort * v); /* 760 */ - void (GLAPIENTRYP VertexAttribs4dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 761 */ - void (GLAPIENTRYP VertexAttribs4fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 762 */ - void (GLAPIENTRYP VertexAttribs4svNV)(GLuint index, GLsizei n, const GLshort * v); /* 763 */ - void (GLAPIENTRYP VertexAttribs4ubvNV)(GLuint index, GLsizei n, const GLubyte * v); /* 764 */ - void (GLAPIENTRYP GetTexBumpParameterfvATI)(GLenum pname, GLfloat * param); /* 765 */ - void (GLAPIENTRYP GetTexBumpParameterivATI)(GLenum pname, GLint * param); /* 766 */ - void (GLAPIENTRYP TexBumpParameterfvATI)(GLenum pname, const GLfloat * param); /* 767 */ - void (GLAPIENTRYP TexBumpParameterivATI)(GLenum pname, const GLint * param); /* 768 */ - void (GLAPIENTRYP AlphaFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); /* 769 */ - void (GLAPIENTRYP AlphaFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); /* 770 */ - void (GLAPIENTRYP AlphaFragmentOp3ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); /* 771 */ - void (GLAPIENTRYP BeginFragmentShaderATI)(void); /* 772 */ - void (GLAPIENTRYP BindFragmentShaderATI)(GLuint id); /* 773 */ - void (GLAPIENTRYP ColorFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); /* 774 */ - void (GLAPIENTRYP ColorFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); /* 775 */ - void (GLAPIENTRYP ColorFragmentOp3ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); /* 776 */ - void (GLAPIENTRYP DeleteFragmentShaderATI)(GLuint id); /* 777 */ - void (GLAPIENTRYP EndFragmentShaderATI)(void); /* 778 */ - GLuint (GLAPIENTRYP GenFragmentShadersATI)(GLuint range); /* 779 */ - void (GLAPIENTRYP PassTexCoordATI)(GLuint dst, GLuint coord, GLenum swizzle); /* 780 */ - void (GLAPIENTRYP SampleMapATI)(GLuint dst, GLuint interp, GLenum swizzle); /* 781 */ - void (GLAPIENTRYP SetFragmentShaderConstantATI)(GLuint dst, const GLfloat * value); /* 782 */ - void (GLAPIENTRYP PointParameteriNV)(GLenum pname, GLint param); /* 783 */ - void (GLAPIENTRYP PointParameterivNV)(GLenum pname, const GLint * params); /* 784 */ - void (GLAPIENTRYP ActiveStencilFaceEXT)(GLenum face); /* 785 */ - void (GLAPIENTRYP BindVertexArrayAPPLE)(GLuint array); /* 786 */ - void (GLAPIENTRYP DeleteVertexArraysAPPLE)(GLsizei n, const GLuint * arrays); /* 787 */ - void (GLAPIENTRYP GenVertexArraysAPPLE)(GLsizei n, GLuint * arrays); /* 788 */ - GLboolean (GLAPIENTRYP IsVertexArrayAPPLE)(GLuint array); /* 789 */ - void (GLAPIENTRYP GetProgramNamedParameterdvNV)(GLuint id, GLsizei len, const GLubyte * name, GLdouble * params); /* 790 */ - void (GLAPIENTRYP GetProgramNamedParameterfvNV)(GLuint id, GLsizei len, const GLubyte * name, GLfloat * params); /* 791 */ - void (GLAPIENTRYP ProgramNamedParameter4dNV)(GLuint id, GLsizei len, const GLubyte * name, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 792 */ - void (GLAPIENTRYP ProgramNamedParameter4dvNV)(GLuint id, GLsizei len, const GLubyte * name, const GLdouble * v); /* 793 */ - void (GLAPIENTRYP ProgramNamedParameter4fNV)(GLuint id, GLsizei len, const GLubyte * name, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 794 */ - void (GLAPIENTRYP ProgramNamedParameter4fvNV)(GLuint id, GLsizei len, const GLubyte * name, const GLfloat * v); /* 795 */ - void (GLAPIENTRYP PrimitiveRestartIndexNV)(GLuint index); /* 796 */ - void (GLAPIENTRYP PrimitiveRestartNV)(void); /* 797 */ - void (GLAPIENTRYP DepthBoundsEXT)(GLclampd zmin, GLclampd zmax); /* 798 */ - void (GLAPIENTRYP BlendEquationSeparateEXT)(GLenum modeRGB, GLenum modeA); /* 799 */ - void (GLAPIENTRYP BindFramebufferEXT)(GLenum target, GLuint framebuffer); /* 800 */ - void (GLAPIENTRYP BindRenderbufferEXT)(GLenum target, GLuint renderbuffer); /* 801 */ - GLenum (GLAPIENTRYP CheckFramebufferStatusEXT)(GLenum target); /* 802 */ - void (GLAPIENTRYP DeleteFramebuffersEXT)(GLsizei n, const GLuint * framebuffers); /* 803 */ - void (GLAPIENTRYP DeleteRenderbuffersEXT)(GLsizei n, const GLuint * renderbuffers); /* 804 */ - void (GLAPIENTRYP FramebufferRenderbufferEXT)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); /* 805 */ - void (GLAPIENTRYP FramebufferTexture1DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); /* 806 */ - void (GLAPIENTRYP FramebufferTexture2DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); /* 807 */ - void (GLAPIENTRYP FramebufferTexture3DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); /* 808 */ - void (GLAPIENTRYP GenFramebuffersEXT)(GLsizei n, GLuint * framebuffers); /* 809 */ - void (GLAPIENTRYP GenRenderbuffersEXT)(GLsizei n, GLuint * renderbuffers); /* 810 */ - void (GLAPIENTRYP GenerateMipmapEXT)(GLenum target); /* 811 */ - void (GLAPIENTRYP GetFramebufferAttachmentParameterivEXT)(GLenum target, GLenum attachment, GLenum pname, GLint * params); /* 812 */ - void (GLAPIENTRYP GetRenderbufferParameterivEXT)(GLenum target, GLenum pname, GLint * params); /* 813 */ - GLboolean (GLAPIENTRYP IsFramebufferEXT)(GLuint framebuffer); /* 814 */ - GLboolean (GLAPIENTRYP IsRenderbufferEXT)(GLuint renderbuffer); /* 815 */ - void (GLAPIENTRYP RenderbufferStorageEXT)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height); /* 816 */ - void (GLAPIENTRYP BlitFramebufferEXT)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); /* 817 */ - void (GLAPIENTRYP BufferParameteriAPPLE)(GLenum target, GLenum pname, GLint param); /* 818 */ - void (GLAPIENTRYP FlushMappedBufferRangeAPPLE)(GLenum target, GLintptr offset, GLsizeiptr size); /* 819 */ - void (GLAPIENTRYP BindFragDataLocationEXT)(GLuint program, GLuint colorNumber, const GLchar * name); /* 820 */ - GLint (GLAPIENTRYP GetFragDataLocationEXT)(GLuint program, const GLchar * name); /* 821 */ - void (GLAPIENTRYP GetUniformuivEXT)(GLuint program, GLint location, GLuint * params); /* 822 */ - void (GLAPIENTRYP GetVertexAttribIivEXT)(GLuint index, GLenum pname, GLint * params); /* 823 */ - void (GLAPIENTRYP GetVertexAttribIuivEXT)(GLuint index, GLenum pname, GLuint * params); /* 824 */ - void (GLAPIENTRYP Uniform1uiEXT)(GLint location, GLuint x); /* 825 */ - void (GLAPIENTRYP Uniform1uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 826 */ - void (GLAPIENTRYP Uniform2uiEXT)(GLint location, GLuint x, GLuint y); /* 827 */ - void (GLAPIENTRYP Uniform2uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 828 */ - void (GLAPIENTRYP Uniform3uiEXT)(GLint location, GLuint x, GLuint y, GLuint z); /* 829 */ - void (GLAPIENTRYP Uniform3uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 830 */ - void (GLAPIENTRYP Uniform4uiEXT)(GLint location, GLuint x, GLuint y, GLuint z, GLuint w); /* 831 */ - void (GLAPIENTRYP Uniform4uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 832 */ - void (GLAPIENTRYP VertexAttribI1iEXT)(GLuint index, GLint x); /* 833 */ - void (GLAPIENTRYP VertexAttribI1ivEXT)(GLuint index, const GLint * v); /* 834 */ - void (GLAPIENTRYP VertexAttribI1uiEXT)(GLuint index, GLuint x); /* 835 */ - void (GLAPIENTRYP VertexAttribI1uivEXT)(GLuint index, const GLuint * v); /* 836 */ - void (GLAPIENTRYP VertexAttribI2iEXT)(GLuint index, GLint x, GLint y); /* 837 */ - void (GLAPIENTRYP VertexAttribI2ivEXT)(GLuint index, const GLint * v); /* 838 */ - void (GLAPIENTRYP VertexAttribI2uiEXT)(GLuint index, GLuint x, GLuint y); /* 839 */ - void (GLAPIENTRYP VertexAttribI2uivEXT)(GLuint index, const GLuint * v); /* 840 */ - void (GLAPIENTRYP VertexAttribI3iEXT)(GLuint index, GLint x, GLint y, GLint z); /* 841 */ - void (GLAPIENTRYP VertexAttribI3ivEXT)(GLuint index, const GLint * v); /* 842 */ - void (GLAPIENTRYP VertexAttribI3uiEXT)(GLuint index, GLuint x, GLuint y, GLuint z); /* 843 */ - void (GLAPIENTRYP VertexAttribI3uivEXT)(GLuint index, const GLuint * v); /* 844 */ - void (GLAPIENTRYP VertexAttribI4bvEXT)(GLuint index, const GLbyte * v); /* 845 */ - void (GLAPIENTRYP VertexAttribI4iEXT)(GLuint index, GLint x, GLint y, GLint z, GLint w); /* 846 */ - void (GLAPIENTRYP VertexAttribI4ivEXT)(GLuint index, const GLint * v); /* 847 */ - void (GLAPIENTRYP VertexAttribI4svEXT)(GLuint index, const GLshort * v); /* 848 */ - void (GLAPIENTRYP VertexAttribI4ubvEXT)(GLuint index, const GLubyte * v); /* 849 */ - void (GLAPIENTRYP VertexAttribI4uiEXT)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w); /* 850 */ - void (GLAPIENTRYP VertexAttribI4uivEXT)(GLuint index, const GLuint * v); /* 851 */ - void (GLAPIENTRYP VertexAttribI4usvEXT)(GLuint index, const GLushort * v); /* 852 */ - void (GLAPIENTRYP VertexAttribIPointerEXT)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 853 */ - void (GLAPIENTRYP FramebufferTextureLayerEXT)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer); /* 854 */ - void (GLAPIENTRYP ColorMaskIndexedEXT)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a); /* 855 */ - void (GLAPIENTRYP DisableIndexedEXT)(GLenum target, GLuint index); /* 856 */ - void (GLAPIENTRYP EnableIndexedEXT)(GLenum target, GLuint index); /* 857 */ - void (GLAPIENTRYP GetBooleanIndexedvEXT)(GLenum value, GLuint index, GLboolean * data); /* 858 */ - void (GLAPIENTRYP GetIntegerIndexedvEXT)(GLenum value, GLuint index, GLint * data); /* 859 */ - GLboolean (GLAPIENTRYP IsEnabledIndexedEXT)(GLenum target, GLuint index); /* 860 */ - void (GLAPIENTRYP ClearColorIiEXT)(GLint r, GLint g, GLint b, GLint a); /* 861 */ - void (GLAPIENTRYP ClearColorIuiEXT)(GLuint r, GLuint g, GLuint b, GLuint a); /* 862 */ - void (GLAPIENTRYP GetTexParameterIivEXT)(GLenum target, GLenum pname, GLint * params); /* 863 */ - void (GLAPIENTRYP GetTexParameterIuivEXT)(GLenum target, GLenum pname, GLuint * params); /* 864 */ - void (GLAPIENTRYP TexParameterIivEXT)(GLenum target, GLenum pname, const GLint * params); /* 865 */ - void (GLAPIENTRYP TexParameterIuivEXT)(GLenum target, GLenum pname, const GLuint * params); /* 866 */ - void (GLAPIENTRYP BeginConditionalRenderNV)(GLuint query, GLenum mode); /* 867 */ - void (GLAPIENTRYP EndConditionalRenderNV)(void); /* 868 */ - void (GLAPIENTRYP BeginTransformFeedbackEXT)(GLenum mode); /* 869 */ - void (GLAPIENTRYP BindBufferBaseEXT)(GLenum target, GLuint index, GLuint buffer); /* 870 */ - void (GLAPIENTRYP BindBufferOffsetEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset); /* 871 */ - void (GLAPIENTRYP BindBufferRangeEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size); /* 872 */ - void (GLAPIENTRYP EndTransformFeedbackEXT)(void); /* 873 */ - void (GLAPIENTRYP GetTransformFeedbackVaryingEXT)(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLsizei * size, GLenum * type, GLchar * name); /* 874 */ - void (GLAPIENTRYP TransformFeedbackVaryingsEXT)(GLuint program, GLsizei count, const char ** varyings, GLenum bufferMode); /* 875 */ - void (GLAPIENTRYP ProvokingVertexEXT)(GLenum mode); /* 876 */ - void (GLAPIENTRYP GetTexParameterPointervAPPLE)(GLenum target, GLenum pname, GLvoid ** params); /* 877 */ - void (GLAPIENTRYP TextureRangeAPPLE)(GLenum target, GLsizei length, GLvoid * pointer); /* 878 */ - void (GLAPIENTRYP GetObjectParameterivAPPLE)(GLenum objectType, GLuint name, GLenum pname, GLint * value); /* 879 */ - GLenum (GLAPIENTRYP ObjectPurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); /* 880 */ - GLenum (GLAPIENTRYP ObjectUnpurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); /* 881 */ - void (GLAPIENTRYP ActiveProgramEXT)(GLuint program); /* 882 */ - GLuint (GLAPIENTRYP CreateShaderProgramEXT)(GLenum type, const GLchar * string); /* 883 */ - void (GLAPIENTRYP UseShaderProgramEXT)(GLenum type, GLuint program); /* 884 */ - void (GLAPIENTRYP TextureBarrierNV)(void); /* 885 */ - void (GLAPIENTRYP StencilFuncSeparateATI)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); /* 886 */ - void (GLAPIENTRYP ProgramEnvParameters4fvEXT)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); /* 887 */ - void (GLAPIENTRYP ProgramLocalParameters4fvEXT)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); /* 888 */ - void (GLAPIENTRYP GetQueryObjecti64vEXT)(GLuint id, GLenum pname, GLint64EXT * params); /* 889 */ - void (GLAPIENTRYP GetQueryObjectui64vEXT)(GLuint id, GLenum pname, GLuint64EXT * params); /* 890 */ - void (GLAPIENTRYP EGLImageTargetRenderbufferStorageOES)(GLenum target, GLvoid * writeOffset); /* 891 */ - void (GLAPIENTRYP EGLImageTargetTexture2DOES)(GLenum target, GLvoid * writeOffset); /* 892 */ + void (GLAPIENTRYP TexBufferARB)(GLenum target, GLenum internalFormat, GLuint buffer); /* 582 */ + void (GLAPIENTRYP BindVertexArray)(GLuint array); /* 583 */ + void (GLAPIENTRYP GenVertexArrays)(GLsizei n, GLuint * arrays); /* 584 */ + void (GLAPIENTRYP CopyBufferSubData)(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); /* 585 */ + GLenum (GLAPIENTRYP ClientWaitSync)(GLsync sync, GLbitfield flags, GLuint64 timeout); /* 586 */ + void (GLAPIENTRYP DeleteSync)(GLsync sync); /* 587 */ + GLsync (GLAPIENTRYP FenceSync)(GLenum condition, GLbitfield flags); /* 588 */ + void (GLAPIENTRYP GetInteger64v)(GLenum pname, GLint64 * params); /* 589 */ + void (GLAPIENTRYP GetSynciv)(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei * length, GLint * values); /* 590 */ + GLboolean (GLAPIENTRYP IsSync)(GLsync sync); /* 591 */ + void (GLAPIENTRYP WaitSync)(GLsync sync, GLbitfield flags, GLuint64 timeout); /* 592 */ + void (GLAPIENTRYP DrawElementsBaseVertex)(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices, GLint basevertex); /* 593 */ + void (GLAPIENTRYP DrawRangeElementsBaseVertex)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid * indices, GLint basevertex); /* 594 */ + void (GLAPIENTRYP MultiDrawElementsBaseVertex)(GLenum mode, const GLsizei * count, GLenum type, const GLvoid ** indices, GLsizei primcount, const GLint * basevertex); /* 595 */ + void (GLAPIENTRYP BlendEquationSeparateiARB)(GLuint buf, GLenum modeRGB, GLenum modeA); /* 596 */ + void (GLAPIENTRYP BlendEquationiARB)(GLuint buf, GLenum mode); /* 597 */ + void (GLAPIENTRYP BlendFuncSeparateiARB)(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcA, GLenum dstA); /* 598 */ + void (GLAPIENTRYP BlendFunciARB)(GLuint buf, GLenum src, GLenum dst); /* 599 */ + void (GLAPIENTRYP BindTransformFeedback)(GLenum target, GLuint id); /* 600 */ + void (GLAPIENTRYP DeleteTransformFeedbacks)(GLsizei n, const GLuint * ids); /* 601 */ + void (GLAPIENTRYP DrawTransformFeedback)(GLenum mode, GLuint id); /* 602 */ + void (GLAPIENTRYP GenTransformFeedbacks)(GLsizei n, GLuint * ids); /* 603 */ + GLboolean (GLAPIENTRYP IsTransformFeedback)(GLuint id); /* 604 */ + void (GLAPIENTRYP PauseTransformFeedback)(void); /* 605 */ + void (GLAPIENTRYP ResumeTransformFeedback)(void); /* 606 */ + void (GLAPIENTRYP ClearDepthf)(GLclampf depth); /* 607 */ + void (GLAPIENTRYP DepthRangef)(GLclampf zNear, GLclampf zFar); /* 608 */ + void (GLAPIENTRYP GetShaderPrecisionFormat)(GLenum shadertype, GLenum precisiontype, GLint * range, GLint * precision); /* 609 */ + void (GLAPIENTRYP ReleaseShaderCompiler)(void); /* 610 */ + void (GLAPIENTRYP ShaderBinary)(GLsizei n, const GLuint * shaders, GLenum binaryformat, const GLvoid * binary, GLsizei length); /* 611 */ + void (GLAPIENTRYP PolygonOffsetEXT)(GLfloat factor, GLfloat bias); /* 612 */ + void (GLAPIENTRYP GetPixelTexGenParameterfvSGIS)(GLenum pname, GLfloat * params); /* 613 */ + void (GLAPIENTRYP GetPixelTexGenParameterivSGIS)(GLenum pname, GLint * params); /* 614 */ + void (GLAPIENTRYP PixelTexGenParameterfSGIS)(GLenum pname, GLfloat param); /* 615 */ + void (GLAPIENTRYP PixelTexGenParameterfvSGIS)(GLenum pname, const GLfloat * params); /* 616 */ + void (GLAPIENTRYP PixelTexGenParameteriSGIS)(GLenum pname, GLint param); /* 617 */ + void (GLAPIENTRYP PixelTexGenParameterivSGIS)(GLenum pname, const GLint * params); /* 618 */ + void (GLAPIENTRYP SampleMaskSGIS)(GLclampf value, GLboolean invert); /* 619 */ + void (GLAPIENTRYP SamplePatternSGIS)(GLenum pattern); /* 620 */ + void (GLAPIENTRYP ColorPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 621 */ + void (GLAPIENTRYP EdgeFlagPointerEXT)(GLsizei stride, GLsizei count, const GLboolean * pointer); /* 622 */ + void (GLAPIENTRYP IndexPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 623 */ + void (GLAPIENTRYP NormalPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 624 */ + void (GLAPIENTRYP TexCoordPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 625 */ + void (GLAPIENTRYP VertexPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 626 */ + void (GLAPIENTRYP PointParameterfEXT)(GLenum pname, GLfloat param); /* 627 */ + void (GLAPIENTRYP PointParameterfvEXT)(GLenum pname, const GLfloat * params); /* 628 */ + void (GLAPIENTRYP LockArraysEXT)(GLint first, GLsizei count); /* 629 */ + void (GLAPIENTRYP UnlockArraysEXT)(void); /* 630 */ + void (GLAPIENTRYP SecondaryColor3bEXT)(GLbyte red, GLbyte green, GLbyte blue); /* 631 */ + void (GLAPIENTRYP SecondaryColor3bvEXT)(const GLbyte * v); /* 632 */ + void (GLAPIENTRYP SecondaryColor3dEXT)(GLdouble red, GLdouble green, GLdouble blue); /* 633 */ + void (GLAPIENTRYP SecondaryColor3dvEXT)(const GLdouble * v); /* 634 */ + void (GLAPIENTRYP SecondaryColor3fEXT)(GLfloat red, GLfloat green, GLfloat blue); /* 635 */ + void (GLAPIENTRYP SecondaryColor3fvEXT)(const GLfloat * v); /* 636 */ + void (GLAPIENTRYP SecondaryColor3iEXT)(GLint red, GLint green, GLint blue); /* 637 */ + void (GLAPIENTRYP SecondaryColor3ivEXT)(const GLint * v); /* 638 */ + void (GLAPIENTRYP SecondaryColor3sEXT)(GLshort red, GLshort green, GLshort blue); /* 639 */ + void (GLAPIENTRYP SecondaryColor3svEXT)(const GLshort * v); /* 640 */ + void (GLAPIENTRYP SecondaryColor3ubEXT)(GLubyte red, GLubyte green, GLubyte blue); /* 641 */ + void (GLAPIENTRYP SecondaryColor3ubvEXT)(const GLubyte * v); /* 642 */ + void (GLAPIENTRYP SecondaryColor3uiEXT)(GLuint red, GLuint green, GLuint blue); /* 643 */ + void (GLAPIENTRYP SecondaryColor3uivEXT)(const GLuint * v); /* 644 */ + void (GLAPIENTRYP SecondaryColor3usEXT)(GLushort red, GLushort green, GLushort blue); /* 645 */ + void (GLAPIENTRYP SecondaryColor3usvEXT)(const GLushort * v); /* 646 */ + void (GLAPIENTRYP SecondaryColorPointerEXT)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 647 */ + void (GLAPIENTRYP MultiDrawArraysEXT)(GLenum mode, const GLint * first, const GLsizei * count, GLsizei primcount); /* 648 */ + void (GLAPIENTRYP MultiDrawElementsEXT)(GLenum mode, const GLsizei * count, GLenum type, const GLvoid ** indices, GLsizei primcount); /* 649 */ + void (GLAPIENTRYP FogCoordPointerEXT)(GLenum type, GLsizei stride, const GLvoid * pointer); /* 650 */ + void (GLAPIENTRYP FogCoorddEXT)(GLdouble coord); /* 651 */ + void (GLAPIENTRYP FogCoorddvEXT)(const GLdouble * coord); /* 652 */ + void (GLAPIENTRYP FogCoordfEXT)(GLfloat coord); /* 653 */ + void (GLAPIENTRYP FogCoordfvEXT)(const GLfloat * coord); /* 654 */ + void (GLAPIENTRYP PixelTexGenSGIX)(GLenum mode); /* 655 */ + void (GLAPIENTRYP BlendFuncSeparateEXT)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); /* 656 */ + void (GLAPIENTRYP FlushVertexArrayRangeNV)(void); /* 657 */ + void (GLAPIENTRYP VertexArrayRangeNV)(GLsizei length, const GLvoid * pointer); /* 658 */ + void (GLAPIENTRYP CombinerInputNV)(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); /* 659 */ + void (GLAPIENTRYP CombinerOutputNV)(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum); /* 660 */ + void (GLAPIENTRYP CombinerParameterfNV)(GLenum pname, GLfloat param); /* 661 */ + void (GLAPIENTRYP CombinerParameterfvNV)(GLenum pname, const GLfloat * params); /* 662 */ + void (GLAPIENTRYP CombinerParameteriNV)(GLenum pname, GLint param); /* 663 */ + void (GLAPIENTRYP CombinerParameterivNV)(GLenum pname, const GLint * params); /* 664 */ + void (GLAPIENTRYP FinalCombinerInputNV)(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); /* 665 */ + void (GLAPIENTRYP GetCombinerInputParameterfvNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat * params); /* 666 */ + void (GLAPIENTRYP GetCombinerInputParameterivNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint * params); /* 667 */ + void (GLAPIENTRYP GetCombinerOutputParameterfvNV)(GLenum stage, GLenum portion, GLenum pname, GLfloat * params); /* 668 */ + void (GLAPIENTRYP GetCombinerOutputParameterivNV)(GLenum stage, GLenum portion, GLenum pname, GLint * params); /* 669 */ + void (GLAPIENTRYP GetFinalCombinerInputParameterfvNV)(GLenum variable, GLenum pname, GLfloat * params); /* 670 */ + void (GLAPIENTRYP GetFinalCombinerInputParameterivNV)(GLenum variable, GLenum pname, GLint * params); /* 671 */ + void (GLAPIENTRYP ResizeBuffersMESA)(void); /* 672 */ + void (GLAPIENTRYP WindowPos2dMESA)(GLdouble x, GLdouble y); /* 673 */ + void (GLAPIENTRYP WindowPos2dvMESA)(const GLdouble * v); /* 674 */ + void (GLAPIENTRYP WindowPos2fMESA)(GLfloat x, GLfloat y); /* 675 */ + void (GLAPIENTRYP WindowPos2fvMESA)(const GLfloat * v); /* 676 */ + void (GLAPIENTRYP WindowPos2iMESA)(GLint x, GLint y); /* 677 */ + void (GLAPIENTRYP WindowPos2ivMESA)(const GLint * v); /* 678 */ + void (GLAPIENTRYP WindowPos2sMESA)(GLshort x, GLshort y); /* 679 */ + void (GLAPIENTRYP WindowPos2svMESA)(const GLshort * v); /* 680 */ + void (GLAPIENTRYP WindowPos3dMESA)(GLdouble x, GLdouble y, GLdouble z); /* 681 */ + void (GLAPIENTRYP WindowPos3dvMESA)(const GLdouble * v); /* 682 */ + void (GLAPIENTRYP WindowPos3fMESA)(GLfloat x, GLfloat y, GLfloat z); /* 683 */ + void (GLAPIENTRYP WindowPos3fvMESA)(const GLfloat * v); /* 684 */ + void (GLAPIENTRYP WindowPos3iMESA)(GLint x, GLint y, GLint z); /* 685 */ + void (GLAPIENTRYP WindowPos3ivMESA)(const GLint * v); /* 686 */ + void (GLAPIENTRYP WindowPos3sMESA)(GLshort x, GLshort y, GLshort z); /* 687 */ + void (GLAPIENTRYP WindowPos3svMESA)(const GLshort * v); /* 688 */ + void (GLAPIENTRYP WindowPos4dMESA)(GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 689 */ + void (GLAPIENTRYP WindowPos4dvMESA)(const GLdouble * v); /* 690 */ + void (GLAPIENTRYP WindowPos4fMESA)(GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 691 */ + void (GLAPIENTRYP WindowPos4fvMESA)(const GLfloat * v); /* 692 */ + void (GLAPIENTRYP WindowPos4iMESA)(GLint x, GLint y, GLint z, GLint w); /* 693 */ + void (GLAPIENTRYP WindowPos4ivMESA)(const GLint * v); /* 694 */ + void (GLAPIENTRYP WindowPos4sMESA)(GLshort x, GLshort y, GLshort z, GLshort w); /* 695 */ + void (GLAPIENTRYP WindowPos4svMESA)(const GLshort * v); /* 696 */ + void (GLAPIENTRYP MultiModeDrawArraysIBM)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); /* 697 */ + void (GLAPIENTRYP MultiModeDrawElementsIBM)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); /* 698 */ + void (GLAPIENTRYP DeleteFencesNV)(GLsizei n, const GLuint * fences); /* 699 */ + void (GLAPIENTRYP FinishFenceNV)(GLuint fence); /* 700 */ + void (GLAPIENTRYP GenFencesNV)(GLsizei n, GLuint * fences); /* 701 */ + void (GLAPIENTRYP GetFenceivNV)(GLuint fence, GLenum pname, GLint * params); /* 702 */ + GLboolean (GLAPIENTRYP IsFenceNV)(GLuint fence); /* 703 */ + void (GLAPIENTRYP SetFenceNV)(GLuint fence, GLenum condition); /* 704 */ + GLboolean (GLAPIENTRYP TestFenceNV)(GLuint fence); /* 705 */ + GLboolean (GLAPIENTRYP AreProgramsResidentNV)(GLsizei n, const GLuint * ids, GLboolean * residences); /* 706 */ + void (GLAPIENTRYP BindProgramNV)(GLenum target, GLuint program); /* 707 */ + void (GLAPIENTRYP DeleteProgramsNV)(GLsizei n, const GLuint * programs); /* 708 */ + void (GLAPIENTRYP ExecuteProgramNV)(GLenum target, GLuint id, const GLfloat * params); /* 709 */ + void (GLAPIENTRYP GenProgramsNV)(GLsizei n, GLuint * programs); /* 710 */ + void (GLAPIENTRYP GetProgramParameterdvNV)(GLenum target, GLuint index, GLenum pname, GLdouble * params); /* 711 */ + void (GLAPIENTRYP GetProgramParameterfvNV)(GLenum target, GLuint index, GLenum pname, GLfloat * params); /* 712 */ + void (GLAPIENTRYP GetProgramStringNV)(GLuint id, GLenum pname, GLubyte * program); /* 713 */ + void (GLAPIENTRYP GetProgramivNV)(GLuint id, GLenum pname, GLint * params); /* 714 */ + void (GLAPIENTRYP GetTrackMatrixivNV)(GLenum target, GLuint address, GLenum pname, GLint * params); /* 715 */ + void (GLAPIENTRYP GetVertexAttribPointervNV)(GLuint index, GLenum pname, GLvoid ** pointer); /* 716 */ + void (GLAPIENTRYP GetVertexAttribdvNV)(GLuint index, GLenum pname, GLdouble * params); /* 717 */ + void (GLAPIENTRYP GetVertexAttribfvNV)(GLuint index, GLenum pname, GLfloat * params); /* 718 */ + void (GLAPIENTRYP GetVertexAttribivNV)(GLuint index, GLenum pname, GLint * params); /* 719 */ + GLboolean (GLAPIENTRYP IsProgramNV)(GLuint program); /* 720 */ + void (GLAPIENTRYP LoadProgramNV)(GLenum target, GLuint id, GLsizei len, const GLubyte * program); /* 721 */ + void (GLAPIENTRYP ProgramParameters4dvNV)(GLenum target, GLuint index, GLsizei num, const GLdouble * params); /* 722 */ + void (GLAPIENTRYP ProgramParameters4fvNV)(GLenum target, GLuint index, GLsizei num, const GLfloat * params); /* 723 */ + void (GLAPIENTRYP RequestResidentProgramsNV)(GLsizei n, const GLuint * ids); /* 724 */ + void (GLAPIENTRYP TrackMatrixNV)(GLenum target, GLuint address, GLenum matrix, GLenum transform); /* 725 */ + void (GLAPIENTRYP VertexAttrib1dNV)(GLuint index, GLdouble x); /* 726 */ + void (GLAPIENTRYP VertexAttrib1dvNV)(GLuint index, const GLdouble * v); /* 727 */ + void (GLAPIENTRYP VertexAttrib1fNV)(GLuint index, GLfloat x); /* 728 */ + void (GLAPIENTRYP VertexAttrib1fvNV)(GLuint index, const GLfloat * v); /* 729 */ + void (GLAPIENTRYP VertexAttrib1sNV)(GLuint index, GLshort x); /* 730 */ + void (GLAPIENTRYP VertexAttrib1svNV)(GLuint index, const GLshort * v); /* 731 */ + void (GLAPIENTRYP VertexAttrib2dNV)(GLuint index, GLdouble x, GLdouble y); /* 732 */ + void (GLAPIENTRYP VertexAttrib2dvNV)(GLuint index, const GLdouble * v); /* 733 */ + void (GLAPIENTRYP VertexAttrib2fNV)(GLuint index, GLfloat x, GLfloat y); /* 734 */ + void (GLAPIENTRYP VertexAttrib2fvNV)(GLuint index, const GLfloat * v); /* 735 */ + void (GLAPIENTRYP VertexAttrib2sNV)(GLuint index, GLshort x, GLshort y); /* 736 */ + void (GLAPIENTRYP VertexAttrib2svNV)(GLuint index, const GLshort * v); /* 737 */ + void (GLAPIENTRYP VertexAttrib3dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z); /* 738 */ + void (GLAPIENTRYP VertexAttrib3dvNV)(GLuint index, const GLdouble * v); /* 739 */ + void (GLAPIENTRYP VertexAttrib3fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z); /* 740 */ + void (GLAPIENTRYP VertexAttrib3fvNV)(GLuint index, const GLfloat * v); /* 741 */ + void (GLAPIENTRYP VertexAttrib3sNV)(GLuint index, GLshort x, GLshort y, GLshort z); /* 742 */ + void (GLAPIENTRYP VertexAttrib3svNV)(GLuint index, const GLshort * v); /* 743 */ + void (GLAPIENTRYP VertexAttrib4dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 744 */ + void (GLAPIENTRYP VertexAttrib4dvNV)(GLuint index, const GLdouble * v); /* 745 */ + void (GLAPIENTRYP VertexAttrib4fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 746 */ + void (GLAPIENTRYP VertexAttrib4fvNV)(GLuint index, const GLfloat * v); /* 747 */ + void (GLAPIENTRYP VertexAttrib4sNV)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); /* 748 */ + void (GLAPIENTRYP VertexAttrib4svNV)(GLuint index, const GLshort * v); /* 749 */ + void (GLAPIENTRYP VertexAttrib4ubNV)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); /* 750 */ + void (GLAPIENTRYP VertexAttrib4ubvNV)(GLuint index, const GLubyte * v); /* 751 */ + void (GLAPIENTRYP VertexAttribPointerNV)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 752 */ + void (GLAPIENTRYP VertexAttribs1dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 753 */ + void (GLAPIENTRYP VertexAttribs1fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 754 */ + void (GLAPIENTRYP VertexAttribs1svNV)(GLuint index, GLsizei n, const GLshort * v); /* 755 */ + void (GLAPIENTRYP VertexAttribs2dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 756 */ + void (GLAPIENTRYP VertexAttribs2fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 757 */ + void (GLAPIENTRYP VertexAttribs2svNV)(GLuint index, GLsizei n, const GLshort * v); /* 758 */ + void (GLAPIENTRYP VertexAttribs3dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 759 */ + void (GLAPIENTRYP VertexAttribs3fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 760 */ + void (GLAPIENTRYP VertexAttribs3svNV)(GLuint index, GLsizei n, const GLshort * v); /* 761 */ + void (GLAPIENTRYP VertexAttribs4dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 762 */ + void (GLAPIENTRYP VertexAttribs4fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 763 */ + void (GLAPIENTRYP VertexAttribs4svNV)(GLuint index, GLsizei n, const GLshort * v); /* 764 */ + void (GLAPIENTRYP VertexAttribs4ubvNV)(GLuint index, GLsizei n, const GLubyte * v); /* 765 */ + void (GLAPIENTRYP GetTexBumpParameterfvATI)(GLenum pname, GLfloat * param); /* 766 */ + void (GLAPIENTRYP GetTexBumpParameterivATI)(GLenum pname, GLint * param); /* 767 */ + void (GLAPIENTRYP TexBumpParameterfvATI)(GLenum pname, const GLfloat * param); /* 768 */ + void (GLAPIENTRYP TexBumpParameterivATI)(GLenum pname, const GLint * param); /* 769 */ + void (GLAPIENTRYP AlphaFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); /* 770 */ + void (GLAPIENTRYP AlphaFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); /* 771 */ + void (GLAPIENTRYP AlphaFragmentOp3ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); /* 772 */ + void (GLAPIENTRYP BeginFragmentShaderATI)(void); /* 773 */ + void (GLAPIENTRYP BindFragmentShaderATI)(GLuint id); /* 774 */ + void (GLAPIENTRYP ColorFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); /* 775 */ + void (GLAPIENTRYP ColorFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); /* 776 */ + void (GLAPIENTRYP ColorFragmentOp3ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); /* 777 */ + void (GLAPIENTRYP DeleteFragmentShaderATI)(GLuint id); /* 778 */ + void (GLAPIENTRYP EndFragmentShaderATI)(void); /* 779 */ + GLuint (GLAPIENTRYP GenFragmentShadersATI)(GLuint range); /* 780 */ + void (GLAPIENTRYP PassTexCoordATI)(GLuint dst, GLuint coord, GLenum swizzle); /* 781 */ + void (GLAPIENTRYP SampleMapATI)(GLuint dst, GLuint interp, GLenum swizzle); /* 782 */ + void (GLAPIENTRYP SetFragmentShaderConstantATI)(GLuint dst, const GLfloat * value); /* 783 */ + void (GLAPIENTRYP PointParameteriNV)(GLenum pname, GLint param); /* 784 */ + void (GLAPIENTRYP PointParameterivNV)(GLenum pname, const GLint * params); /* 785 */ + void (GLAPIENTRYP ActiveStencilFaceEXT)(GLenum face); /* 786 */ + void (GLAPIENTRYP BindVertexArrayAPPLE)(GLuint array); /* 787 */ + void (GLAPIENTRYP DeleteVertexArraysAPPLE)(GLsizei n, const GLuint * arrays); /* 788 */ + void (GLAPIENTRYP GenVertexArraysAPPLE)(GLsizei n, GLuint * arrays); /* 789 */ + GLboolean (GLAPIENTRYP IsVertexArrayAPPLE)(GLuint array); /* 790 */ + void (GLAPIENTRYP GetProgramNamedParameterdvNV)(GLuint id, GLsizei len, const GLubyte * name, GLdouble * params); /* 791 */ + void (GLAPIENTRYP GetProgramNamedParameterfvNV)(GLuint id, GLsizei len, const GLubyte * name, GLfloat * params); /* 792 */ + void (GLAPIENTRYP ProgramNamedParameter4dNV)(GLuint id, GLsizei len, const GLubyte * name, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 793 */ + void (GLAPIENTRYP ProgramNamedParameter4dvNV)(GLuint id, GLsizei len, const GLubyte * name, const GLdouble * v); /* 794 */ + void (GLAPIENTRYP ProgramNamedParameter4fNV)(GLuint id, GLsizei len, const GLubyte * name, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 795 */ + void (GLAPIENTRYP ProgramNamedParameter4fvNV)(GLuint id, GLsizei len, const GLubyte * name, const GLfloat * v); /* 796 */ + void (GLAPIENTRYP PrimitiveRestartIndexNV)(GLuint index); /* 797 */ + void (GLAPIENTRYP PrimitiveRestartNV)(void); /* 798 */ + void (GLAPIENTRYP DepthBoundsEXT)(GLclampd zmin, GLclampd zmax); /* 799 */ + void (GLAPIENTRYP BlendEquationSeparateEXT)(GLenum modeRGB, GLenum modeA); /* 800 */ + void (GLAPIENTRYP BindFramebufferEXT)(GLenum target, GLuint framebuffer); /* 801 */ + void (GLAPIENTRYP BindRenderbufferEXT)(GLenum target, GLuint renderbuffer); /* 802 */ + GLenum (GLAPIENTRYP CheckFramebufferStatusEXT)(GLenum target); /* 803 */ + void (GLAPIENTRYP DeleteFramebuffersEXT)(GLsizei n, const GLuint * framebuffers); /* 804 */ + void (GLAPIENTRYP DeleteRenderbuffersEXT)(GLsizei n, const GLuint * renderbuffers); /* 805 */ + void (GLAPIENTRYP FramebufferRenderbufferEXT)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); /* 806 */ + void (GLAPIENTRYP FramebufferTexture1DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); /* 807 */ + void (GLAPIENTRYP FramebufferTexture2DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); /* 808 */ + void (GLAPIENTRYP FramebufferTexture3DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); /* 809 */ + void (GLAPIENTRYP GenFramebuffersEXT)(GLsizei n, GLuint * framebuffers); /* 810 */ + void (GLAPIENTRYP GenRenderbuffersEXT)(GLsizei n, GLuint * renderbuffers); /* 811 */ + void (GLAPIENTRYP GenerateMipmapEXT)(GLenum target); /* 812 */ + void (GLAPIENTRYP GetFramebufferAttachmentParameterivEXT)(GLenum target, GLenum attachment, GLenum pname, GLint * params); /* 813 */ + void (GLAPIENTRYP GetRenderbufferParameterivEXT)(GLenum target, GLenum pname, GLint * params); /* 814 */ + GLboolean (GLAPIENTRYP IsFramebufferEXT)(GLuint framebuffer); /* 815 */ + GLboolean (GLAPIENTRYP IsRenderbufferEXT)(GLuint renderbuffer); /* 816 */ + void (GLAPIENTRYP RenderbufferStorageEXT)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height); /* 817 */ + void (GLAPIENTRYP BlitFramebufferEXT)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); /* 818 */ + void (GLAPIENTRYP BufferParameteriAPPLE)(GLenum target, GLenum pname, GLint param); /* 819 */ + void (GLAPIENTRYP FlushMappedBufferRangeAPPLE)(GLenum target, GLintptr offset, GLsizeiptr size); /* 820 */ + void (GLAPIENTRYP BindFragDataLocationEXT)(GLuint program, GLuint colorNumber, const GLchar * name); /* 821 */ + GLint (GLAPIENTRYP GetFragDataLocationEXT)(GLuint program, const GLchar * name); /* 822 */ + void (GLAPIENTRYP GetUniformuivEXT)(GLuint program, GLint location, GLuint * params); /* 823 */ + void (GLAPIENTRYP GetVertexAttribIivEXT)(GLuint index, GLenum pname, GLint * params); /* 824 */ + void (GLAPIENTRYP GetVertexAttribIuivEXT)(GLuint index, GLenum pname, GLuint * params); /* 825 */ + void (GLAPIENTRYP Uniform1uiEXT)(GLint location, GLuint x); /* 826 */ + void (GLAPIENTRYP Uniform1uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 827 */ + void (GLAPIENTRYP Uniform2uiEXT)(GLint location, GLuint x, GLuint y); /* 828 */ + void (GLAPIENTRYP Uniform2uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 829 */ + void (GLAPIENTRYP Uniform3uiEXT)(GLint location, GLuint x, GLuint y, GLuint z); /* 830 */ + void (GLAPIENTRYP Uniform3uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 831 */ + void (GLAPIENTRYP Uniform4uiEXT)(GLint location, GLuint x, GLuint y, GLuint z, GLuint w); /* 832 */ + void (GLAPIENTRYP Uniform4uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 833 */ + void (GLAPIENTRYP VertexAttribI1iEXT)(GLuint index, GLint x); /* 834 */ + void (GLAPIENTRYP VertexAttribI1ivEXT)(GLuint index, const GLint * v); /* 835 */ + void (GLAPIENTRYP VertexAttribI1uiEXT)(GLuint index, GLuint x); /* 836 */ + void (GLAPIENTRYP VertexAttribI1uivEXT)(GLuint index, const GLuint * v); /* 837 */ + void (GLAPIENTRYP VertexAttribI2iEXT)(GLuint index, GLint x, GLint y); /* 838 */ + void (GLAPIENTRYP VertexAttribI2ivEXT)(GLuint index, const GLint * v); /* 839 */ + void (GLAPIENTRYP VertexAttribI2uiEXT)(GLuint index, GLuint x, GLuint y); /* 840 */ + void (GLAPIENTRYP VertexAttribI2uivEXT)(GLuint index, const GLuint * v); /* 841 */ + void (GLAPIENTRYP VertexAttribI3iEXT)(GLuint index, GLint x, GLint y, GLint z); /* 842 */ + void (GLAPIENTRYP VertexAttribI3ivEXT)(GLuint index, const GLint * v); /* 843 */ + void (GLAPIENTRYP VertexAttribI3uiEXT)(GLuint index, GLuint x, GLuint y, GLuint z); /* 844 */ + void (GLAPIENTRYP VertexAttribI3uivEXT)(GLuint index, const GLuint * v); /* 845 */ + void (GLAPIENTRYP VertexAttribI4bvEXT)(GLuint index, const GLbyte * v); /* 846 */ + void (GLAPIENTRYP VertexAttribI4iEXT)(GLuint index, GLint x, GLint y, GLint z, GLint w); /* 847 */ + void (GLAPIENTRYP VertexAttribI4ivEXT)(GLuint index, const GLint * v); /* 848 */ + void (GLAPIENTRYP VertexAttribI4svEXT)(GLuint index, const GLshort * v); /* 849 */ + void (GLAPIENTRYP VertexAttribI4ubvEXT)(GLuint index, const GLubyte * v); /* 850 */ + void (GLAPIENTRYP VertexAttribI4uiEXT)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w); /* 851 */ + void (GLAPIENTRYP VertexAttribI4uivEXT)(GLuint index, const GLuint * v); /* 852 */ + void (GLAPIENTRYP VertexAttribI4usvEXT)(GLuint index, const GLushort * v); /* 853 */ + void (GLAPIENTRYP VertexAttribIPointerEXT)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 854 */ + void (GLAPIENTRYP FramebufferTextureLayerEXT)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer); /* 855 */ + void (GLAPIENTRYP ColorMaskIndexedEXT)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a); /* 856 */ + void (GLAPIENTRYP DisableIndexedEXT)(GLenum target, GLuint index); /* 857 */ + void (GLAPIENTRYP EnableIndexedEXT)(GLenum target, GLuint index); /* 858 */ + void (GLAPIENTRYP GetBooleanIndexedvEXT)(GLenum value, GLuint index, GLboolean * data); /* 859 */ + void (GLAPIENTRYP GetIntegerIndexedvEXT)(GLenum value, GLuint index, GLint * data); /* 860 */ + GLboolean (GLAPIENTRYP IsEnabledIndexedEXT)(GLenum target, GLuint index); /* 861 */ + void (GLAPIENTRYP ClearColorIiEXT)(GLint r, GLint g, GLint b, GLint a); /* 862 */ + void (GLAPIENTRYP ClearColorIuiEXT)(GLuint r, GLuint g, GLuint b, GLuint a); /* 863 */ + void (GLAPIENTRYP GetTexParameterIivEXT)(GLenum target, GLenum pname, GLint * params); /* 864 */ + void (GLAPIENTRYP GetTexParameterIuivEXT)(GLenum target, GLenum pname, GLuint * params); /* 865 */ + void (GLAPIENTRYP TexParameterIivEXT)(GLenum target, GLenum pname, const GLint * params); /* 866 */ + void (GLAPIENTRYP TexParameterIuivEXT)(GLenum target, GLenum pname, const GLuint * params); /* 867 */ + void (GLAPIENTRYP BeginConditionalRenderNV)(GLuint query, GLenum mode); /* 868 */ + void (GLAPIENTRYP EndConditionalRenderNV)(void); /* 869 */ + void (GLAPIENTRYP BeginTransformFeedbackEXT)(GLenum mode); /* 870 */ + void (GLAPIENTRYP BindBufferBaseEXT)(GLenum target, GLuint index, GLuint buffer); /* 871 */ + void (GLAPIENTRYP BindBufferOffsetEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset); /* 872 */ + void (GLAPIENTRYP BindBufferRangeEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size); /* 873 */ + void (GLAPIENTRYP EndTransformFeedbackEXT)(void); /* 874 */ + void (GLAPIENTRYP GetTransformFeedbackVaryingEXT)(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLsizei * size, GLenum * type, GLchar * name); /* 875 */ + void (GLAPIENTRYP TransformFeedbackVaryingsEXT)(GLuint program, GLsizei count, const char ** varyings, GLenum bufferMode); /* 876 */ + void (GLAPIENTRYP ProvokingVertexEXT)(GLenum mode); /* 877 */ + void (GLAPIENTRYP GetTexParameterPointervAPPLE)(GLenum target, GLenum pname, GLvoid ** params); /* 878 */ + void (GLAPIENTRYP TextureRangeAPPLE)(GLenum target, GLsizei length, GLvoid * pointer); /* 879 */ + void (GLAPIENTRYP GetObjectParameterivAPPLE)(GLenum objectType, GLuint name, GLenum pname, GLint * value); /* 880 */ + GLenum (GLAPIENTRYP ObjectPurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); /* 881 */ + GLenum (GLAPIENTRYP ObjectUnpurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); /* 882 */ + void (GLAPIENTRYP ActiveProgramEXT)(GLuint program); /* 883 */ + GLuint (GLAPIENTRYP CreateShaderProgramEXT)(GLenum type, const GLchar * string); /* 884 */ + void (GLAPIENTRYP UseShaderProgramEXT)(GLenum type, GLuint program); /* 885 */ + void (GLAPIENTRYP TextureBarrierNV)(void); /* 886 */ + void (GLAPIENTRYP StencilFuncSeparateATI)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); /* 887 */ + void (GLAPIENTRYP ProgramEnvParameters4fvEXT)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); /* 888 */ + void (GLAPIENTRYP ProgramLocalParameters4fvEXT)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); /* 889 */ + void (GLAPIENTRYP GetQueryObjecti64vEXT)(GLuint id, GLenum pname, GLint64EXT * params); /* 890 */ + void (GLAPIENTRYP GetQueryObjectui64vEXT)(GLuint id, GLenum pname, GLuint64EXT * params); /* 891 */ + void (GLAPIENTRYP EGLImageTargetRenderbufferStorageOES)(GLenum target, GLvoid * writeOffset); /* 892 */ + void (GLAPIENTRYP EGLImageTargetTexture2DOES)(GLenum target, GLvoid * writeOffset); /* 893 */ }; #endif /* !defined( _GLAPI_TABLE_H_ ) */ diff --git a/src/mapi/glapi/glapitemp.h b/src/mapi/glapi/glapitemp.h index 28997bab455..e756dbb59a2 100644 --- a/src/mapi/glapi/glapitemp.h +++ b/src/mapi/glapi/glapitemp.h @@ -3972,6 +3972,11 @@ KEYWORD1 GLvoid * KEYWORD2 NAME(MapBufferRange)(GLenum target, GLintptr offset, RETURN_DISPATCH(MapBufferRange, (target, offset, length, access), (F, "glMapBufferRange(0x%x, %d, %d, %d);\n", target, offset, length, access)); } +KEYWORD1 void KEYWORD2 NAME(TexBufferARB)(GLenum target, GLenum internalFormat, GLuint buffer) +{ + DISPATCH(TexBufferARB, (target, internalFormat, buffer), (F, "glTexBufferARB(0x%x, 0x%x, %d);\n", target, internalFormat, buffer)); +} + KEYWORD1 void KEYWORD2 NAME(BindVertexArray)(GLuint array) { DISPATCH(BindVertexArray, (array), (F, "glBindVertexArray(%d);\n", array)); @@ -4122,58 +4127,58 @@ KEYWORD1 void KEYWORD2 NAME(PolygonOffsetEXT)(GLfloat factor, GLfloat bias) DISPATCH(PolygonOffsetEXT, (factor, bias), (F, "glPolygonOffsetEXT(%f, %f);\n", factor, bias)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_612)(GLenum pname, GLfloat * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_613)(GLenum pname, GLfloat * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_612)(GLenum pname, GLfloat * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_613)(GLenum pname, GLfloat * params) { DISPATCH(GetPixelTexGenParameterfvSGIS, (pname, params), (F, "glGetPixelTexGenParameterfvSGIS(0x%x, %p);\n", pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_613)(GLenum pname, GLint * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_614)(GLenum pname, GLint * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_613)(GLenum pname, GLint * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_614)(GLenum pname, GLint * params) { DISPATCH(GetPixelTexGenParameterivSGIS, (pname, params), (F, "glGetPixelTexGenParameterivSGIS(0x%x, %p);\n", pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_614)(GLenum pname, GLfloat param); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_615)(GLenum pname, GLfloat param); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_614)(GLenum pname, GLfloat param) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_615)(GLenum pname, GLfloat param) { DISPATCH(PixelTexGenParameterfSGIS, (pname, param), (F, "glPixelTexGenParameterfSGIS(0x%x, %f);\n", pname, param)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_615)(GLenum pname, const GLfloat * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_616)(GLenum pname, const GLfloat * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_615)(GLenum pname, const GLfloat * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_616)(GLenum pname, const GLfloat * params) { DISPATCH(PixelTexGenParameterfvSGIS, (pname, params), (F, "glPixelTexGenParameterfvSGIS(0x%x, %p);\n", pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_616)(GLenum pname, GLint param); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_617)(GLenum pname, GLint param); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_616)(GLenum pname, GLint param) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_617)(GLenum pname, GLint param) { DISPATCH(PixelTexGenParameteriSGIS, (pname, param), (F, "glPixelTexGenParameteriSGIS(0x%x, %d);\n", pname, param)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_617)(GLenum pname, const GLint * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_618)(GLenum pname, const GLint * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_617)(GLenum pname, const GLint * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_618)(GLenum pname, const GLint * params) { DISPATCH(PixelTexGenParameterivSGIS, (pname, params), (F, "glPixelTexGenParameterivSGIS(0x%x, %p);\n", pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_618)(GLclampf value, GLboolean invert); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_619)(GLclampf value, GLboolean invert); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_618)(GLclampf value, GLboolean invert) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_619)(GLclampf value, GLboolean invert) { DISPATCH(SampleMaskSGIS, (value, invert), (F, "glSampleMaskSGIS(%f, %d);\n", value, invert)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_619)(GLenum pattern); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_620)(GLenum pattern); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_619)(GLenum pattern) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_620)(GLenum pattern) { DISPATCH(SamplePatternSGIS, (pattern), (F, "glSamplePatternSGIS(0x%x);\n", pattern)); } @@ -4223,9 +4228,9 @@ KEYWORD1 void KEYWORD2 NAME(PointParameterfEXT)(GLenum pname, GLfloat param) DISPATCH(PointParameterfEXT, (pname, param), (F, "glPointParameterfEXT(0x%x, %f);\n", pname, param)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_626)(GLenum pname, GLfloat param); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_627)(GLenum pname, GLfloat param); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_626)(GLenum pname, GLfloat param) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_627)(GLenum pname, GLfloat param) { DISPATCH(PointParameterfEXT, (pname, param), (F, "glPointParameterfSGIS(0x%x, %f);\n", pname, param)); } @@ -4245,9 +4250,9 @@ KEYWORD1 void KEYWORD2 NAME(PointParameterfvEXT)(GLenum pname, const GLfloat * p DISPATCH(PointParameterfvEXT, (pname, params), (F, "glPointParameterfvEXT(0x%x, %p);\n", pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_627)(GLenum pname, const GLfloat * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_628)(GLenum pname, const GLfloat * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_627)(GLenum pname, const GLfloat * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_628)(GLenum pname, const GLfloat * params) { DISPATCH(PointParameterfvEXT, (pname, params), (F, "glPointParameterfvSGIS(0x%x, %p);\n", pname, (const void *) params)); } @@ -4502,9 +4507,9 @@ KEYWORD1 void KEYWORD2 NAME(FogCoordfvEXT)(const GLfloat * coord) DISPATCH(FogCoordfvEXT, (coord), (F, "glFogCoordfvEXT(%p);\n", (const void *) coord)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_654)(GLenum mode); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_655)(GLenum mode); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_654)(GLenum mode) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_655)(GLenum mode) { DISPATCH(PixelTexGenSGIX, (mode), (F, "glPixelTexGenSGIX(0x%x);\n", mode)); } @@ -4519,9 +4524,9 @@ KEYWORD1 void KEYWORD2 NAME(BlendFuncSeparateEXT)(GLenum sfactorRGB, GLenum dfac DISPATCH(BlendFuncSeparateEXT, (sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha), (F, "glBlendFuncSeparateEXT(0x%x, 0x%x, 0x%x, 0x%x);\n", sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_655)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_656)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_655)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_656)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha) { DISPATCH(BlendFuncSeparateEXT, (sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha), (F, "glBlendFuncSeparateINGR(0x%x, 0x%x, 0x%x, 0x%x);\n", sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha)); } @@ -4886,65 +4891,65 @@ KEYWORD1 void KEYWORD2 NAME(WindowPos4svMESA)(const GLshort * v) DISPATCH(WindowPos4svMESA, (v), (F, "glWindowPos4svMESA(%p);\n", (const void *) v)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_696)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_697)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_696)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_697)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride) { DISPATCH(MultiModeDrawArraysIBM, (mode, first, count, primcount, modestride), (F, "glMultiModeDrawArraysIBM(%p, %p, %p, %d, %d);\n", (const void *) mode, (const void *) first, (const void *) count, primcount, modestride)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_697)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_698)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_697)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_698)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride) { DISPATCH(MultiModeDrawElementsIBM, (mode, count, type, indices, primcount, modestride), (F, "glMultiModeDrawElementsIBM(%p, %p, 0x%x, %p, %d, %d);\n", (const void *) mode, (const void *) count, type, (const void *) indices, primcount, modestride)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_698)(GLsizei n, const GLuint * fences); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_699)(GLsizei n, const GLuint * fences); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_698)(GLsizei n, const GLuint * fences) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_699)(GLsizei n, const GLuint * fences) { DISPATCH(DeleteFencesNV, (n, fences), (F, "glDeleteFencesNV(%d, %p);\n", n, (const void *) fences)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_699)(GLuint fence); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_700)(GLuint fence); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_699)(GLuint fence) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_700)(GLuint fence) { DISPATCH(FinishFenceNV, (fence), (F, "glFinishFenceNV(%d);\n", fence)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_700)(GLsizei n, GLuint * fences); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_701)(GLsizei n, GLuint * fences); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_700)(GLsizei n, GLuint * fences) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_701)(GLsizei n, GLuint * fences) { DISPATCH(GenFencesNV, (n, fences), (F, "glGenFencesNV(%d, %p);\n", n, (const void *) fences)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_701)(GLuint fence, GLenum pname, GLint * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_702)(GLuint fence, GLenum pname, GLint * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_701)(GLuint fence, GLenum pname, GLint * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_702)(GLuint fence, GLenum pname, GLint * params) { DISPATCH(GetFenceivNV, (fence, pname, params), (F, "glGetFenceivNV(%d, 0x%x, %p);\n", fence, pname, (const void *) params)); } -KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_702)(GLuint fence); +KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_703)(GLuint fence); -KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_702)(GLuint fence) +KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_703)(GLuint fence) { RETURN_DISPATCH(IsFenceNV, (fence), (F, "glIsFenceNV(%d);\n", fence)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_703)(GLuint fence, GLenum condition); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_704)(GLuint fence, GLenum condition); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_703)(GLuint fence, GLenum condition) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_704)(GLuint fence, GLenum condition) { DISPATCH(SetFenceNV, (fence, condition), (F, "glSetFenceNV(%d, 0x%x);\n", fence, condition)); } -KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_704)(GLuint fence); +KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_705)(GLuint fence); -KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_704)(GLuint fence) +KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_705)(GLuint fence) { RETURN_DISPATCH(TestFenceNV, (fence), (F, "glTestFenceNV(%d);\n", fence)); } @@ -5389,16 +5394,16 @@ KEYWORD1 void KEYWORD2 NAME(PointParameterivNV)(GLenum pname, const GLint * para DISPATCH(PointParameterivNV, (pname, params), (F, "glPointParameterivNV(0x%x, %p);\n", pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_785)(GLenum face); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_786)(GLenum face); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_785)(GLenum face) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_786)(GLenum face) { DISPATCH(ActiveStencilFaceEXT, (face), (F, "glActiveStencilFaceEXT(0x%x);\n", face)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_786)(GLuint array); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_787)(GLuint array); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_786)(GLuint array) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_787)(GLuint array) { DISPATCH(BindVertexArrayAPPLE, (array), (F, "glBindVertexArrayAPPLE(%d);\n", array)); } @@ -5408,16 +5413,16 @@ KEYWORD1 void KEYWORD2 NAME(DeleteVertexArrays)(GLsizei n, const GLuint * arrays DISPATCH(DeleteVertexArraysAPPLE, (n, arrays), (F, "glDeleteVertexArrays(%d, %p);\n", n, (const void *) arrays)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_787)(GLsizei n, const GLuint * arrays); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_788)(GLsizei n, const GLuint * arrays); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_787)(GLsizei n, const GLuint * arrays) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_788)(GLsizei n, const GLuint * arrays) { DISPATCH(DeleteVertexArraysAPPLE, (n, arrays), (F, "glDeleteVertexArraysAPPLE(%d, %p);\n", n, (const void *) arrays)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_788)(GLsizei n, GLuint * arrays); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_789)(GLsizei n, GLuint * arrays); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_788)(GLsizei n, GLuint * arrays) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_789)(GLsizei n, GLuint * arrays) { DISPATCH(GenVertexArraysAPPLE, (n, arrays), (F, "glGenVertexArraysAPPLE(%d, %p);\n", n, (const void *) arrays)); } @@ -5427,9 +5432,9 @@ KEYWORD1 GLboolean KEYWORD2 NAME(IsVertexArray)(GLuint array) RETURN_DISPATCH(IsVertexArrayAPPLE, (array), (F, "glIsVertexArray(%d);\n", array)); } -KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_789)(GLuint array); +KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_790)(GLuint array); -KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_789)(GLuint array) +KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_790)(GLuint array) { RETURN_DISPATCH(IsVertexArrayAPPLE, (array), (F, "glIsVertexArrayAPPLE(%d);\n", array)); } @@ -5479,9 +5484,9 @@ KEYWORD1 void KEYWORD2 NAME(PrimitiveRestartNV)(void) DISPATCH(PrimitiveRestartNV, (), (F, "glPrimitiveRestartNV();\n")); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_798)(GLclampd zmin, GLclampd zmax); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_799)(GLclampd zmin, GLclampd zmax); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_798)(GLclampd zmin, GLclampd zmax) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_799)(GLclampd zmin, GLclampd zmax) { DISPATCH(DepthBoundsEXT, (zmin, zmax), (F, "glDepthBoundsEXT(%f, %f);\n", zmin, zmax)); } @@ -5491,9 +5496,9 @@ KEYWORD1 void KEYWORD2 NAME(BlendEquationSeparate)(GLenum modeRGB, GLenum modeA) DISPATCH(BlendEquationSeparateEXT, (modeRGB, modeA), (F, "glBlendEquationSeparate(0x%x, 0x%x);\n", modeRGB, modeA)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_799)(GLenum modeRGB, GLenum modeA); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_800)(GLenum modeRGB, GLenum modeA); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_799)(GLenum modeRGB, GLenum modeA) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_800)(GLenum modeRGB, GLenum modeA) { DISPATCH(BlendEquationSeparateEXT, (modeRGB, modeA), (F, "glBlendEquationSeparateEXT(0x%x, 0x%x);\n", modeRGB, modeA)); } @@ -5673,23 +5678,23 @@ KEYWORD1 void KEYWORD2 NAME(BlitFramebuffer)(GLint srcX0, GLint srcY0, GLint src DISPATCH(BlitFramebufferEXT, (srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter), (F, "glBlitFramebuffer(%d, %d, %d, %d, %d, %d, %d, %d, %d, 0x%x);\n", srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_817)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_818)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_817)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_818)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) { DISPATCH(BlitFramebufferEXT, (srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter), (F, "glBlitFramebufferEXT(%d, %d, %d, %d, %d, %d, %d, %d, %d, 0x%x);\n", srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_818)(GLenum target, GLenum pname, GLint param); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_819)(GLenum target, GLenum pname, GLint param); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_818)(GLenum target, GLenum pname, GLint param) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_819)(GLenum target, GLenum pname, GLint param) { DISPATCH(BufferParameteriAPPLE, (target, pname, param), (F, "glBufferParameteriAPPLE(0x%x, 0x%x, %d);\n", target, pname, param)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_819)(GLenum target, GLintptr offset, GLsizeiptr size); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_820)(GLenum target, GLintptr offset, GLsizeiptr size); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_819)(GLenum target, GLintptr offset, GLsizeiptr size) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_820)(GLenum target, GLintptr offset, GLsizeiptr size) { DISPATCH(FlushMappedBufferRangeAPPLE, (target, offset, size), (F, "glFlushMappedBufferRangeAPPLE(0x%x, %d, %d);\n", target, offset, size)); } @@ -6249,16 +6254,16 @@ KEYWORD1 void KEYWORD2 NAME(ProvokingVertex)(GLenum mode) DISPATCH(ProvokingVertexEXT, (mode), (F, "glProvokingVertex(0x%x);\n", mode)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_877)(GLenum target, GLenum pname, GLvoid ** params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_878)(GLenum target, GLenum pname, GLvoid ** params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_877)(GLenum target, GLenum pname, GLvoid ** params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_878)(GLenum target, GLenum pname, GLvoid ** params) { DISPATCH(GetTexParameterPointervAPPLE, (target, pname, params), (F, "glGetTexParameterPointervAPPLE(0x%x, 0x%x, %p);\n", target, pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_878)(GLenum target, GLsizei length, GLvoid * pointer); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_879)(GLenum target, GLsizei length, GLvoid * pointer); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_878)(GLenum target, GLsizei length, GLvoid * pointer) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_879)(GLenum target, GLsizei length, GLvoid * pointer) { DISPATCH(TextureRangeAPPLE, (target, length, pointer), (F, "glTextureRangeAPPLE(0x%x, %d, %p);\n", target, length, (const void *) pointer)); } @@ -6298,37 +6303,37 @@ KEYWORD1 void KEYWORD2 NAME(TextureBarrierNV)(void) DISPATCH(TextureBarrierNV, (), (F, "glTextureBarrierNV();\n")); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_886)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_887)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_886)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_887)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask) { DISPATCH(StencilFuncSeparateATI, (frontfunc, backfunc, ref, mask), (F, "glStencilFuncSeparateATI(0x%x, 0x%x, %d, %d);\n", frontfunc, backfunc, ref, mask)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_887)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); - -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_887)(GLenum target, GLuint index, GLsizei count, const GLfloat * params) -{ - DISPATCH(ProgramEnvParameters4fvEXT, (target, index, count, params), (F, "glProgramEnvParameters4fvEXT(0x%x, %d, %d, %p);\n", target, index, count, (const void *) params)); -} - KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_888)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_888)(GLenum target, GLuint index, GLsizei count, const GLfloat * params) +{ + DISPATCH(ProgramEnvParameters4fvEXT, (target, index, count, params), (F, "glProgramEnvParameters4fvEXT(0x%x, %d, %d, %p);\n", target, index, count, (const void *) params)); +} + +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_889)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); + +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_889)(GLenum target, GLuint index, GLsizei count, const GLfloat * params) { DISPATCH(ProgramLocalParameters4fvEXT, (target, index, count, params), (F, "glProgramLocalParameters4fvEXT(0x%x, %d, %d, %p);\n", target, index, count, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_889)(GLuint id, GLenum pname, GLint64EXT * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_890)(GLuint id, GLenum pname, GLint64EXT * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_889)(GLuint id, GLenum pname, GLint64EXT * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_890)(GLuint id, GLenum pname, GLint64EXT * params) { DISPATCH(GetQueryObjecti64vEXT, (id, pname, params), (F, "glGetQueryObjecti64vEXT(%d, 0x%x, %p);\n", id, pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_890)(GLuint id, GLenum pname, GLuint64EXT * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_891)(GLuint id, GLenum pname, GLuint64EXT * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_890)(GLuint id, GLenum pname, GLuint64EXT * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_891)(GLuint id, GLenum pname, GLuint64EXT * params) { DISPATCH(GetQueryObjectui64vEXT, (id, pname, params), (F, "glGetQueryObjectui64vEXT(%d, 0x%x, %p);\n", id, pname, (const void *) params)); } @@ -7078,6 +7083,7 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(VertexAttribDivisorARB), TABLE_ENTRY(FlushMappedBufferRange), TABLE_ENTRY(MapBufferRange), + TABLE_ENTRY(TexBufferARB), TABLE_ENTRY(BindVertexArray), TABLE_ENTRY(GenVertexArrays), TABLE_ENTRY(CopyBufferSubData), @@ -7108,7 +7114,6 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(ReleaseShaderCompiler), TABLE_ENTRY(ShaderBinary), TABLE_ENTRY(PolygonOffsetEXT), - TABLE_ENTRY(_dispatch_stub_612), TABLE_ENTRY(_dispatch_stub_613), TABLE_ENTRY(_dispatch_stub_614), TABLE_ENTRY(_dispatch_stub_615), @@ -7116,6 +7121,7 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(_dispatch_stub_617), TABLE_ENTRY(_dispatch_stub_618), TABLE_ENTRY(_dispatch_stub_619), + TABLE_ENTRY(_dispatch_stub_620), TABLE_ENTRY(ColorPointerEXT), TABLE_ENTRY(EdgeFlagPointerEXT), TABLE_ENTRY(IndexPointerEXT), @@ -7150,7 +7156,7 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(FogCoorddvEXT), TABLE_ENTRY(FogCoordfEXT), TABLE_ENTRY(FogCoordfvEXT), - TABLE_ENTRY(_dispatch_stub_654), + TABLE_ENTRY(_dispatch_stub_655), TABLE_ENTRY(BlendFuncSeparateEXT), TABLE_ENTRY(FlushVertexArrayRangeNV), TABLE_ENTRY(VertexArrayRangeNV), @@ -7192,7 +7198,6 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(WindowPos4ivMESA), TABLE_ENTRY(WindowPos4sMESA), TABLE_ENTRY(WindowPos4svMESA), - TABLE_ENTRY(_dispatch_stub_696), TABLE_ENTRY(_dispatch_stub_697), TABLE_ENTRY(_dispatch_stub_698), TABLE_ENTRY(_dispatch_stub_699), @@ -7201,6 +7206,7 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(_dispatch_stub_702), TABLE_ENTRY(_dispatch_stub_703), TABLE_ENTRY(_dispatch_stub_704), + TABLE_ENTRY(_dispatch_stub_705), TABLE_ENTRY(AreProgramsResidentNV), TABLE_ENTRY(BindProgramNV), TABLE_ENTRY(DeleteProgramsNV), @@ -7281,11 +7287,11 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(SetFragmentShaderConstantATI), TABLE_ENTRY(PointParameteriNV), TABLE_ENTRY(PointParameterivNV), - TABLE_ENTRY(_dispatch_stub_785), TABLE_ENTRY(_dispatch_stub_786), TABLE_ENTRY(_dispatch_stub_787), TABLE_ENTRY(_dispatch_stub_788), TABLE_ENTRY(_dispatch_stub_789), + TABLE_ENTRY(_dispatch_stub_790), TABLE_ENTRY(GetProgramNamedParameterdvNV), TABLE_ENTRY(GetProgramNamedParameterfvNV), TABLE_ENTRY(ProgramNamedParameter4dNV), @@ -7294,8 +7300,8 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(ProgramNamedParameter4fvNV), TABLE_ENTRY(PrimitiveRestartIndexNV), TABLE_ENTRY(PrimitiveRestartNV), - TABLE_ENTRY(_dispatch_stub_798), TABLE_ENTRY(_dispatch_stub_799), + TABLE_ENTRY(_dispatch_stub_800), TABLE_ENTRY(BindFramebufferEXT), TABLE_ENTRY(BindRenderbufferEXT), TABLE_ENTRY(CheckFramebufferStatusEXT), @@ -7313,9 +7319,9 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(IsFramebufferEXT), TABLE_ENTRY(IsRenderbufferEXT), TABLE_ENTRY(RenderbufferStorageEXT), - TABLE_ENTRY(_dispatch_stub_817), TABLE_ENTRY(_dispatch_stub_818), TABLE_ENTRY(_dispatch_stub_819), + TABLE_ENTRY(_dispatch_stub_820), TABLE_ENTRY(BindFragDataLocationEXT), TABLE_ENTRY(GetFragDataLocationEXT), TABLE_ENTRY(GetUniformuivEXT), @@ -7373,8 +7379,8 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(GetTransformFeedbackVaryingEXT), TABLE_ENTRY(TransformFeedbackVaryingsEXT), TABLE_ENTRY(ProvokingVertexEXT), - TABLE_ENTRY(_dispatch_stub_877), TABLE_ENTRY(_dispatch_stub_878), + TABLE_ENTRY(_dispatch_stub_879), TABLE_ENTRY(GetObjectParameterivAPPLE), TABLE_ENTRY(ObjectPurgeableAPPLE), TABLE_ENTRY(ObjectUnpurgeableAPPLE), @@ -7382,11 +7388,11 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(CreateShaderProgramEXT), TABLE_ENTRY(UseShaderProgramEXT), TABLE_ENTRY(TextureBarrierNV), - TABLE_ENTRY(_dispatch_stub_886), TABLE_ENTRY(_dispatch_stub_887), TABLE_ENTRY(_dispatch_stub_888), TABLE_ENTRY(_dispatch_stub_889), TABLE_ENTRY(_dispatch_stub_890), + TABLE_ENTRY(_dispatch_stub_891), TABLE_ENTRY(EGLImageTargetRenderbufferStorageOES), TABLE_ENTRY(EGLImageTargetTexture2DOES), /* A whole bunch of no-op functions. These might be called @@ -7693,10 +7699,10 @@ _glapi_proc UNUSED_TABLE_NAME[] = { TABLE_ENTRY(RenderbufferStorageMultisampleEXT), TABLE_ENTRY(PointParameterf), TABLE_ENTRY(PointParameterfARB), - TABLE_ENTRY(_dispatch_stub_626), + TABLE_ENTRY(_dispatch_stub_627), TABLE_ENTRY(PointParameterfv), TABLE_ENTRY(PointParameterfvARB), - TABLE_ENTRY(_dispatch_stub_627), + TABLE_ENTRY(_dispatch_stub_628), TABLE_ENTRY(SecondaryColor3b), TABLE_ENTRY(SecondaryColor3bv), TABLE_ENTRY(SecondaryColor3d), @@ -7722,7 +7728,7 @@ _glapi_proc UNUSED_TABLE_NAME[] = { TABLE_ENTRY(FogCoordf), TABLE_ENTRY(FogCoordfv), TABLE_ENTRY(BlendFuncSeparate), - TABLE_ENTRY(_dispatch_stub_655), + TABLE_ENTRY(_dispatch_stub_656), TABLE_ENTRY(WindowPos2d), TABLE_ENTRY(WindowPos2dARB), TABLE_ENTRY(WindowPos2dv), diff --git a/src/mapi/glapi/glprocs.h b/src/mapi/glapi/glprocs.h index 8495cb6bf35..9aad6cceab5 100644 --- a/src/mapi/glapi/glprocs.h +++ b/src/mapi/glapi/glprocs.h @@ -634,6 +634,7 @@ static const char gl_string_table[] = "glVertexAttribDivisorARB\0" "glFlushMappedBufferRange\0" "glMapBufferRange\0" + "glTexBufferARB\0" "glBindVertexArray\0" "glGenVertexArrays\0" "glCopyBufferSubData\0" @@ -1321,7 +1322,6 @@ static const char gl_string_table[] = #define gl_dispatch_stub_364 mgl_dispatch_stub_364 #define gl_dispatch_stub_365 mgl_dispatch_stub_365 #define gl_dispatch_stub_366 mgl_dispatch_stub_366 -#define gl_dispatch_stub_612 mgl_dispatch_stub_612 #define gl_dispatch_stub_613 mgl_dispatch_stub_613 #define gl_dispatch_stub_614 mgl_dispatch_stub_614 #define gl_dispatch_stub_615 mgl_dispatch_stub_615 @@ -1329,8 +1329,8 @@ static const char gl_string_table[] = #define gl_dispatch_stub_617 mgl_dispatch_stub_617 #define gl_dispatch_stub_618 mgl_dispatch_stub_618 #define gl_dispatch_stub_619 mgl_dispatch_stub_619 -#define gl_dispatch_stub_654 mgl_dispatch_stub_654 -#define gl_dispatch_stub_696 mgl_dispatch_stub_696 +#define gl_dispatch_stub_620 mgl_dispatch_stub_620 +#define gl_dispatch_stub_655 mgl_dispatch_stub_655 #define gl_dispatch_stub_697 mgl_dispatch_stub_697 #define gl_dispatch_stub_698 mgl_dispatch_stub_698 #define gl_dispatch_stub_699 mgl_dispatch_stub_699 @@ -1339,23 +1339,24 @@ static const char gl_string_table[] = #define gl_dispatch_stub_702 mgl_dispatch_stub_702 #define gl_dispatch_stub_703 mgl_dispatch_stub_703 #define gl_dispatch_stub_704 mgl_dispatch_stub_704 -#define gl_dispatch_stub_785 mgl_dispatch_stub_785 +#define gl_dispatch_stub_705 mgl_dispatch_stub_705 #define gl_dispatch_stub_786 mgl_dispatch_stub_786 #define gl_dispatch_stub_787 mgl_dispatch_stub_787 #define gl_dispatch_stub_788 mgl_dispatch_stub_788 #define gl_dispatch_stub_789 mgl_dispatch_stub_789 -#define gl_dispatch_stub_798 mgl_dispatch_stub_798 +#define gl_dispatch_stub_790 mgl_dispatch_stub_790 #define gl_dispatch_stub_799 mgl_dispatch_stub_799 -#define gl_dispatch_stub_817 mgl_dispatch_stub_817 +#define gl_dispatch_stub_800 mgl_dispatch_stub_800 #define gl_dispatch_stub_818 mgl_dispatch_stub_818 #define gl_dispatch_stub_819 mgl_dispatch_stub_819 -#define gl_dispatch_stub_877 mgl_dispatch_stub_877 +#define gl_dispatch_stub_820 mgl_dispatch_stub_820 #define gl_dispatch_stub_878 mgl_dispatch_stub_878 -#define gl_dispatch_stub_886 mgl_dispatch_stub_886 +#define gl_dispatch_stub_879 mgl_dispatch_stub_879 #define gl_dispatch_stub_887 mgl_dispatch_stub_887 #define gl_dispatch_stub_888 mgl_dispatch_stub_888 #define gl_dispatch_stub_889 mgl_dispatch_stub_889 #define gl_dispatch_stub_890 mgl_dispatch_stub_890 +#define gl_dispatch_stub_891 mgl_dispatch_stub_891 #endif /* USE_MGL_NAMESPACE */ @@ -1373,41 +1374,41 @@ void GLAPIENTRY gl_dispatch_stub_363(GLenum target, GLenum pname, GLint * params void GLAPIENTRY gl_dispatch_stub_364(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid * values); void GLAPIENTRY gl_dispatch_stub_365(GLenum target, GLenum pname, GLfloat * params); void GLAPIENTRY gl_dispatch_stub_366(GLenum target, GLenum pname, GLint * params); -void GLAPIENTRY gl_dispatch_stub_612(GLenum pname, GLfloat * params); -void GLAPIENTRY gl_dispatch_stub_613(GLenum pname, GLint * params); -void GLAPIENTRY gl_dispatch_stub_614(GLenum pname, GLfloat param); -void GLAPIENTRY gl_dispatch_stub_615(GLenum pname, const GLfloat * params); -void GLAPIENTRY gl_dispatch_stub_616(GLenum pname, GLint param); -void GLAPIENTRY gl_dispatch_stub_617(GLenum pname, const GLint * params); -void GLAPIENTRY gl_dispatch_stub_618(GLclampf value, GLboolean invert); -void GLAPIENTRY gl_dispatch_stub_619(GLenum pattern); -void GLAPIENTRY gl_dispatch_stub_654(GLenum mode); -void GLAPIENTRY gl_dispatch_stub_696(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); -void GLAPIENTRY gl_dispatch_stub_697(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); -void GLAPIENTRY gl_dispatch_stub_698(GLsizei n, const GLuint * fences); -void GLAPIENTRY gl_dispatch_stub_699(GLuint fence); -void GLAPIENTRY gl_dispatch_stub_700(GLsizei n, GLuint * fences); -void GLAPIENTRY gl_dispatch_stub_701(GLuint fence, GLenum pname, GLint * params); -GLboolean GLAPIENTRY gl_dispatch_stub_702(GLuint fence); -void GLAPIENTRY gl_dispatch_stub_703(GLuint fence, GLenum condition); -GLboolean GLAPIENTRY gl_dispatch_stub_704(GLuint fence); -void GLAPIENTRY gl_dispatch_stub_785(GLenum face); -void GLAPIENTRY gl_dispatch_stub_786(GLuint array); -void GLAPIENTRY gl_dispatch_stub_787(GLsizei n, const GLuint * arrays); -void GLAPIENTRY gl_dispatch_stub_788(GLsizei n, GLuint * arrays); -GLboolean GLAPIENTRY gl_dispatch_stub_789(GLuint array); -void GLAPIENTRY gl_dispatch_stub_798(GLclampd zmin, GLclampd zmax); -void GLAPIENTRY gl_dispatch_stub_799(GLenum modeRGB, GLenum modeA); -void GLAPIENTRY gl_dispatch_stub_817(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); -void GLAPIENTRY gl_dispatch_stub_818(GLenum target, GLenum pname, GLint param); -void GLAPIENTRY gl_dispatch_stub_819(GLenum target, GLintptr offset, GLsizeiptr size); -void GLAPIENTRY gl_dispatch_stub_877(GLenum target, GLenum pname, GLvoid ** params); -void GLAPIENTRY gl_dispatch_stub_878(GLenum target, GLsizei length, GLvoid * pointer); -void GLAPIENTRY gl_dispatch_stub_886(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); -void GLAPIENTRY gl_dispatch_stub_887(GLenum target, GLuint index, GLsizei count, const GLfloat * params); +void GLAPIENTRY gl_dispatch_stub_613(GLenum pname, GLfloat * params); +void GLAPIENTRY gl_dispatch_stub_614(GLenum pname, GLint * params); +void GLAPIENTRY gl_dispatch_stub_615(GLenum pname, GLfloat param); +void GLAPIENTRY gl_dispatch_stub_616(GLenum pname, const GLfloat * params); +void GLAPIENTRY gl_dispatch_stub_617(GLenum pname, GLint param); +void GLAPIENTRY gl_dispatch_stub_618(GLenum pname, const GLint * params); +void GLAPIENTRY gl_dispatch_stub_619(GLclampf value, GLboolean invert); +void GLAPIENTRY gl_dispatch_stub_620(GLenum pattern); +void GLAPIENTRY gl_dispatch_stub_655(GLenum mode); +void GLAPIENTRY gl_dispatch_stub_697(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); +void GLAPIENTRY gl_dispatch_stub_698(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); +void GLAPIENTRY gl_dispatch_stub_699(GLsizei n, const GLuint * fences); +void GLAPIENTRY gl_dispatch_stub_700(GLuint fence); +void GLAPIENTRY gl_dispatch_stub_701(GLsizei n, GLuint * fences); +void GLAPIENTRY gl_dispatch_stub_702(GLuint fence, GLenum pname, GLint * params); +GLboolean GLAPIENTRY gl_dispatch_stub_703(GLuint fence); +void GLAPIENTRY gl_dispatch_stub_704(GLuint fence, GLenum condition); +GLboolean GLAPIENTRY gl_dispatch_stub_705(GLuint fence); +void GLAPIENTRY gl_dispatch_stub_786(GLenum face); +void GLAPIENTRY gl_dispatch_stub_787(GLuint array); +void GLAPIENTRY gl_dispatch_stub_788(GLsizei n, const GLuint * arrays); +void GLAPIENTRY gl_dispatch_stub_789(GLsizei n, GLuint * arrays); +GLboolean GLAPIENTRY gl_dispatch_stub_790(GLuint array); +void GLAPIENTRY gl_dispatch_stub_799(GLclampd zmin, GLclampd zmax); +void GLAPIENTRY gl_dispatch_stub_800(GLenum modeRGB, GLenum modeA); +void GLAPIENTRY gl_dispatch_stub_818(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); +void GLAPIENTRY gl_dispatch_stub_819(GLenum target, GLenum pname, GLint param); +void GLAPIENTRY gl_dispatch_stub_820(GLenum target, GLintptr offset, GLsizeiptr size); +void GLAPIENTRY gl_dispatch_stub_878(GLenum target, GLenum pname, GLvoid ** params); +void GLAPIENTRY gl_dispatch_stub_879(GLenum target, GLsizei length, GLvoid * pointer); +void GLAPIENTRY gl_dispatch_stub_887(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); void GLAPIENTRY gl_dispatch_stub_888(GLenum target, GLuint index, GLsizei count, const GLfloat * params); -void GLAPIENTRY gl_dispatch_stub_889(GLuint id, GLenum pname, GLint64EXT * params); -void GLAPIENTRY gl_dispatch_stub_890(GLuint id, GLenum pname, GLuint64EXT * params); +void GLAPIENTRY gl_dispatch_stub_889(GLenum target, GLuint index, GLsizei count, const GLfloat * params); +void GLAPIENTRY gl_dispatch_stub_890(GLuint id, GLenum pname, GLint64EXT * params); +void GLAPIENTRY gl_dispatch_stub_891(GLuint id, GLenum pname, GLuint64EXT * params); #endif /* defined(NEED_FUNCTION_POINTER) || defined(GLX_INDIRECT_RENDERING) */ static const glprocs_table_t static_functions[] = { @@ -1993,676 +1994,677 @@ static const glprocs_table_t static_functions[] = { NAME_FUNC_OFFSET( 9316, glVertexAttribDivisorARB, glVertexAttribDivisorARB, NULL, 579), NAME_FUNC_OFFSET( 9341, glFlushMappedBufferRange, glFlushMappedBufferRange, NULL, 580), NAME_FUNC_OFFSET( 9366, glMapBufferRange, glMapBufferRange, NULL, 581), - NAME_FUNC_OFFSET( 9383, glBindVertexArray, glBindVertexArray, NULL, 582), - NAME_FUNC_OFFSET( 9401, glGenVertexArrays, glGenVertexArrays, NULL, 583), - NAME_FUNC_OFFSET( 9419, glCopyBufferSubData, glCopyBufferSubData, NULL, 584), - NAME_FUNC_OFFSET( 9439, glClientWaitSync, glClientWaitSync, NULL, 585), - NAME_FUNC_OFFSET( 9456, glDeleteSync, glDeleteSync, NULL, 586), - NAME_FUNC_OFFSET( 9469, glFenceSync, glFenceSync, NULL, 587), - NAME_FUNC_OFFSET( 9481, glGetInteger64v, glGetInteger64v, NULL, 588), - NAME_FUNC_OFFSET( 9497, glGetSynciv, glGetSynciv, NULL, 589), - NAME_FUNC_OFFSET( 9509, glIsSync, glIsSync, NULL, 590), - NAME_FUNC_OFFSET( 9518, glWaitSync, glWaitSync, NULL, 591), - NAME_FUNC_OFFSET( 9529, glDrawElementsBaseVertex, glDrawElementsBaseVertex, NULL, 592), - NAME_FUNC_OFFSET( 9554, glDrawRangeElementsBaseVertex, glDrawRangeElementsBaseVertex, NULL, 593), - NAME_FUNC_OFFSET( 9584, glMultiDrawElementsBaseVertex, glMultiDrawElementsBaseVertex, NULL, 594), - NAME_FUNC_OFFSET( 9614, glBlendEquationSeparateiARB, glBlendEquationSeparateiARB, NULL, 595), - NAME_FUNC_OFFSET( 9642, glBlendEquationiARB, glBlendEquationiARB, NULL, 596), - NAME_FUNC_OFFSET( 9662, glBlendFuncSeparateiARB, glBlendFuncSeparateiARB, NULL, 597), - NAME_FUNC_OFFSET( 9686, glBlendFunciARB, glBlendFunciARB, NULL, 598), - NAME_FUNC_OFFSET( 9702, glBindTransformFeedback, glBindTransformFeedback, NULL, 599), - NAME_FUNC_OFFSET( 9726, glDeleteTransformFeedbacks, glDeleteTransformFeedbacks, NULL, 600), - NAME_FUNC_OFFSET( 9753, glDrawTransformFeedback, glDrawTransformFeedback, NULL, 601), - NAME_FUNC_OFFSET( 9777, glGenTransformFeedbacks, glGenTransformFeedbacks, NULL, 602), - NAME_FUNC_OFFSET( 9801, glIsTransformFeedback, glIsTransformFeedback, NULL, 603), - NAME_FUNC_OFFSET( 9823, glPauseTransformFeedback, glPauseTransformFeedback, NULL, 604), - NAME_FUNC_OFFSET( 9848, glResumeTransformFeedback, glResumeTransformFeedback, NULL, 605), - NAME_FUNC_OFFSET( 9874, glClearDepthf, glClearDepthf, NULL, 606), - NAME_FUNC_OFFSET( 9888, glDepthRangef, glDepthRangef, NULL, 607), - NAME_FUNC_OFFSET( 9902, glGetShaderPrecisionFormat, glGetShaderPrecisionFormat, NULL, 608), - NAME_FUNC_OFFSET( 9929, glReleaseShaderCompiler, glReleaseShaderCompiler, NULL, 609), - NAME_FUNC_OFFSET( 9953, glShaderBinary, glShaderBinary, NULL, 610), - NAME_FUNC_OFFSET( 9968, glPolygonOffsetEXT, glPolygonOffsetEXT, NULL, 611), - NAME_FUNC_OFFSET( 9987, gl_dispatch_stub_612, gl_dispatch_stub_612, NULL, 612), - NAME_FUNC_OFFSET(10019, gl_dispatch_stub_613, gl_dispatch_stub_613, NULL, 613), - NAME_FUNC_OFFSET(10051, gl_dispatch_stub_614, gl_dispatch_stub_614, NULL, 614), - NAME_FUNC_OFFSET(10079, gl_dispatch_stub_615, gl_dispatch_stub_615, NULL, 615), - NAME_FUNC_OFFSET(10108, gl_dispatch_stub_616, gl_dispatch_stub_616, NULL, 616), - NAME_FUNC_OFFSET(10136, gl_dispatch_stub_617, gl_dispatch_stub_617, NULL, 617), - NAME_FUNC_OFFSET(10165, gl_dispatch_stub_618, gl_dispatch_stub_618, NULL, 618), - NAME_FUNC_OFFSET(10182, gl_dispatch_stub_619, gl_dispatch_stub_619, NULL, 619), - NAME_FUNC_OFFSET(10202, glColorPointerEXT, glColorPointerEXT, NULL, 620), - NAME_FUNC_OFFSET(10220, glEdgeFlagPointerEXT, glEdgeFlagPointerEXT, NULL, 621), - NAME_FUNC_OFFSET(10241, glIndexPointerEXT, glIndexPointerEXT, NULL, 622), - NAME_FUNC_OFFSET(10259, glNormalPointerEXT, glNormalPointerEXT, NULL, 623), - NAME_FUNC_OFFSET(10278, glTexCoordPointerEXT, glTexCoordPointerEXT, NULL, 624), - NAME_FUNC_OFFSET(10299, glVertexPointerEXT, glVertexPointerEXT, NULL, 625), - NAME_FUNC_OFFSET(10318, glPointParameterfEXT, glPointParameterfEXT, NULL, 626), - NAME_FUNC_OFFSET(10339, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 627), - NAME_FUNC_OFFSET(10361, glLockArraysEXT, glLockArraysEXT, NULL, 628), - NAME_FUNC_OFFSET(10377, glUnlockArraysEXT, glUnlockArraysEXT, NULL, 629), - NAME_FUNC_OFFSET(10395, glSecondaryColor3bEXT, glSecondaryColor3bEXT, NULL, 630), - NAME_FUNC_OFFSET(10417, glSecondaryColor3bvEXT, glSecondaryColor3bvEXT, NULL, 631), - NAME_FUNC_OFFSET(10440, glSecondaryColor3dEXT, glSecondaryColor3dEXT, NULL, 632), - NAME_FUNC_OFFSET(10462, glSecondaryColor3dvEXT, glSecondaryColor3dvEXT, NULL, 633), - NAME_FUNC_OFFSET(10485, glSecondaryColor3fEXT, glSecondaryColor3fEXT, NULL, 634), - NAME_FUNC_OFFSET(10507, glSecondaryColor3fvEXT, glSecondaryColor3fvEXT, NULL, 635), - NAME_FUNC_OFFSET(10530, glSecondaryColor3iEXT, glSecondaryColor3iEXT, NULL, 636), - NAME_FUNC_OFFSET(10552, glSecondaryColor3ivEXT, glSecondaryColor3ivEXT, NULL, 637), - NAME_FUNC_OFFSET(10575, glSecondaryColor3sEXT, glSecondaryColor3sEXT, NULL, 638), - NAME_FUNC_OFFSET(10597, glSecondaryColor3svEXT, glSecondaryColor3svEXT, NULL, 639), - NAME_FUNC_OFFSET(10620, glSecondaryColor3ubEXT, glSecondaryColor3ubEXT, NULL, 640), - NAME_FUNC_OFFSET(10643, glSecondaryColor3ubvEXT, glSecondaryColor3ubvEXT, NULL, 641), - NAME_FUNC_OFFSET(10667, glSecondaryColor3uiEXT, glSecondaryColor3uiEXT, NULL, 642), - NAME_FUNC_OFFSET(10690, glSecondaryColor3uivEXT, glSecondaryColor3uivEXT, NULL, 643), - NAME_FUNC_OFFSET(10714, glSecondaryColor3usEXT, glSecondaryColor3usEXT, NULL, 644), - NAME_FUNC_OFFSET(10737, glSecondaryColor3usvEXT, glSecondaryColor3usvEXT, NULL, 645), - NAME_FUNC_OFFSET(10761, glSecondaryColorPointerEXT, glSecondaryColorPointerEXT, NULL, 646), - NAME_FUNC_OFFSET(10788, glMultiDrawArraysEXT, glMultiDrawArraysEXT, NULL, 647), - NAME_FUNC_OFFSET(10809, glMultiDrawElementsEXT, glMultiDrawElementsEXT, NULL, 648), - NAME_FUNC_OFFSET(10832, glFogCoordPointerEXT, glFogCoordPointerEXT, NULL, 649), - NAME_FUNC_OFFSET(10853, glFogCoorddEXT, glFogCoorddEXT, NULL, 650), - NAME_FUNC_OFFSET(10868, glFogCoorddvEXT, glFogCoorddvEXT, NULL, 651), - NAME_FUNC_OFFSET(10884, glFogCoordfEXT, glFogCoordfEXT, NULL, 652), - NAME_FUNC_OFFSET(10899, glFogCoordfvEXT, glFogCoordfvEXT, NULL, 653), - NAME_FUNC_OFFSET(10915, gl_dispatch_stub_654, gl_dispatch_stub_654, NULL, 654), - NAME_FUNC_OFFSET(10933, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, 655), - NAME_FUNC_OFFSET(10956, glFlushVertexArrayRangeNV, glFlushVertexArrayRangeNV, NULL, 656), - NAME_FUNC_OFFSET(10982, glVertexArrayRangeNV, glVertexArrayRangeNV, NULL, 657), - NAME_FUNC_OFFSET(11003, glCombinerInputNV, glCombinerInputNV, NULL, 658), - NAME_FUNC_OFFSET(11021, glCombinerOutputNV, glCombinerOutputNV, NULL, 659), - NAME_FUNC_OFFSET(11040, glCombinerParameterfNV, glCombinerParameterfNV, NULL, 660), - NAME_FUNC_OFFSET(11063, glCombinerParameterfvNV, glCombinerParameterfvNV, NULL, 661), - NAME_FUNC_OFFSET(11087, glCombinerParameteriNV, glCombinerParameteriNV, NULL, 662), - NAME_FUNC_OFFSET(11110, glCombinerParameterivNV, glCombinerParameterivNV, NULL, 663), - NAME_FUNC_OFFSET(11134, glFinalCombinerInputNV, glFinalCombinerInputNV, NULL, 664), - NAME_FUNC_OFFSET(11157, glGetCombinerInputParameterfvNV, glGetCombinerInputParameterfvNV, NULL, 665), - NAME_FUNC_OFFSET(11189, glGetCombinerInputParameterivNV, glGetCombinerInputParameterivNV, NULL, 666), - NAME_FUNC_OFFSET(11221, glGetCombinerOutputParameterfvNV, glGetCombinerOutputParameterfvNV, NULL, 667), - NAME_FUNC_OFFSET(11254, glGetCombinerOutputParameterivNV, glGetCombinerOutputParameterivNV, NULL, 668), - NAME_FUNC_OFFSET(11287, glGetFinalCombinerInputParameterfvNV, glGetFinalCombinerInputParameterfvNV, NULL, 669), - NAME_FUNC_OFFSET(11324, glGetFinalCombinerInputParameterivNV, glGetFinalCombinerInputParameterivNV, NULL, 670), - NAME_FUNC_OFFSET(11361, glResizeBuffersMESA, glResizeBuffersMESA, NULL, 671), - NAME_FUNC_OFFSET(11381, glWindowPos2dMESA, glWindowPos2dMESA, NULL, 672), - NAME_FUNC_OFFSET(11399, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, 673), - NAME_FUNC_OFFSET(11418, glWindowPos2fMESA, glWindowPos2fMESA, NULL, 674), - NAME_FUNC_OFFSET(11436, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, 675), - NAME_FUNC_OFFSET(11455, glWindowPos2iMESA, glWindowPos2iMESA, NULL, 676), - NAME_FUNC_OFFSET(11473, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, 677), - NAME_FUNC_OFFSET(11492, glWindowPos2sMESA, glWindowPos2sMESA, NULL, 678), - NAME_FUNC_OFFSET(11510, glWindowPos2svMESA, glWindowPos2svMESA, NULL, 679), - NAME_FUNC_OFFSET(11529, glWindowPos3dMESA, glWindowPos3dMESA, NULL, 680), - NAME_FUNC_OFFSET(11547, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, 681), - NAME_FUNC_OFFSET(11566, glWindowPos3fMESA, glWindowPos3fMESA, NULL, 682), - NAME_FUNC_OFFSET(11584, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, 683), - NAME_FUNC_OFFSET(11603, glWindowPos3iMESA, glWindowPos3iMESA, NULL, 684), - NAME_FUNC_OFFSET(11621, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, 685), - NAME_FUNC_OFFSET(11640, glWindowPos3sMESA, glWindowPos3sMESA, NULL, 686), - NAME_FUNC_OFFSET(11658, glWindowPos3svMESA, glWindowPos3svMESA, NULL, 687), - NAME_FUNC_OFFSET(11677, glWindowPos4dMESA, glWindowPos4dMESA, NULL, 688), - NAME_FUNC_OFFSET(11695, glWindowPos4dvMESA, glWindowPos4dvMESA, NULL, 689), - NAME_FUNC_OFFSET(11714, glWindowPos4fMESA, glWindowPos4fMESA, NULL, 690), - NAME_FUNC_OFFSET(11732, glWindowPos4fvMESA, glWindowPos4fvMESA, NULL, 691), - NAME_FUNC_OFFSET(11751, glWindowPos4iMESA, glWindowPos4iMESA, NULL, 692), - NAME_FUNC_OFFSET(11769, glWindowPos4ivMESA, glWindowPos4ivMESA, NULL, 693), - NAME_FUNC_OFFSET(11788, glWindowPos4sMESA, glWindowPos4sMESA, NULL, 694), - NAME_FUNC_OFFSET(11806, glWindowPos4svMESA, glWindowPos4svMESA, NULL, 695), - NAME_FUNC_OFFSET(11825, gl_dispatch_stub_696, gl_dispatch_stub_696, NULL, 696), - NAME_FUNC_OFFSET(11850, gl_dispatch_stub_697, gl_dispatch_stub_697, NULL, 697), - NAME_FUNC_OFFSET(11877, gl_dispatch_stub_698, gl_dispatch_stub_698, NULL, 698), - NAME_FUNC_OFFSET(11894, gl_dispatch_stub_699, gl_dispatch_stub_699, NULL, 699), - NAME_FUNC_OFFSET(11910, gl_dispatch_stub_700, gl_dispatch_stub_700, NULL, 700), - NAME_FUNC_OFFSET(11924, gl_dispatch_stub_701, gl_dispatch_stub_701, NULL, 701), + NAME_FUNC_OFFSET( 9383, glTexBufferARB, glTexBufferARB, NULL, 582), + NAME_FUNC_OFFSET( 9398, glBindVertexArray, glBindVertexArray, NULL, 583), + NAME_FUNC_OFFSET( 9416, glGenVertexArrays, glGenVertexArrays, NULL, 584), + NAME_FUNC_OFFSET( 9434, glCopyBufferSubData, glCopyBufferSubData, NULL, 585), + NAME_FUNC_OFFSET( 9454, glClientWaitSync, glClientWaitSync, NULL, 586), + NAME_FUNC_OFFSET( 9471, glDeleteSync, glDeleteSync, NULL, 587), + NAME_FUNC_OFFSET( 9484, glFenceSync, glFenceSync, NULL, 588), + NAME_FUNC_OFFSET( 9496, glGetInteger64v, glGetInteger64v, NULL, 589), + NAME_FUNC_OFFSET( 9512, glGetSynciv, glGetSynciv, NULL, 590), + NAME_FUNC_OFFSET( 9524, glIsSync, glIsSync, NULL, 591), + NAME_FUNC_OFFSET( 9533, glWaitSync, glWaitSync, NULL, 592), + NAME_FUNC_OFFSET( 9544, glDrawElementsBaseVertex, glDrawElementsBaseVertex, NULL, 593), + NAME_FUNC_OFFSET( 9569, glDrawRangeElementsBaseVertex, glDrawRangeElementsBaseVertex, NULL, 594), + NAME_FUNC_OFFSET( 9599, glMultiDrawElementsBaseVertex, glMultiDrawElementsBaseVertex, NULL, 595), + NAME_FUNC_OFFSET( 9629, glBlendEquationSeparateiARB, glBlendEquationSeparateiARB, NULL, 596), + NAME_FUNC_OFFSET( 9657, glBlendEquationiARB, glBlendEquationiARB, NULL, 597), + NAME_FUNC_OFFSET( 9677, glBlendFuncSeparateiARB, glBlendFuncSeparateiARB, NULL, 598), + NAME_FUNC_OFFSET( 9701, glBlendFunciARB, glBlendFunciARB, NULL, 599), + NAME_FUNC_OFFSET( 9717, glBindTransformFeedback, glBindTransformFeedback, NULL, 600), + NAME_FUNC_OFFSET( 9741, glDeleteTransformFeedbacks, glDeleteTransformFeedbacks, NULL, 601), + NAME_FUNC_OFFSET( 9768, glDrawTransformFeedback, glDrawTransformFeedback, NULL, 602), + NAME_FUNC_OFFSET( 9792, glGenTransformFeedbacks, glGenTransformFeedbacks, NULL, 603), + NAME_FUNC_OFFSET( 9816, glIsTransformFeedback, glIsTransformFeedback, NULL, 604), + NAME_FUNC_OFFSET( 9838, glPauseTransformFeedback, glPauseTransformFeedback, NULL, 605), + NAME_FUNC_OFFSET( 9863, glResumeTransformFeedback, glResumeTransformFeedback, NULL, 606), + NAME_FUNC_OFFSET( 9889, glClearDepthf, glClearDepthf, NULL, 607), + NAME_FUNC_OFFSET( 9903, glDepthRangef, glDepthRangef, NULL, 608), + NAME_FUNC_OFFSET( 9917, glGetShaderPrecisionFormat, glGetShaderPrecisionFormat, NULL, 609), + NAME_FUNC_OFFSET( 9944, glReleaseShaderCompiler, glReleaseShaderCompiler, NULL, 610), + NAME_FUNC_OFFSET( 9968, glShaderBinary, glShaderBinary, NULL, 611), + NAME_FUNC_OFFSET( 9983, glPolygonOffsetEXT, glPolygonOffsetEXT, NULL, 612), + NAME_FUNC_OFFSET(10002, gl_dispatch_stub_613, gl_dispatch_stub_613, NULL, 613), + NAME_FUNC_OFFSET(10034, gl_dispatch_stub_614, gl_dispatch_stub_614, NULL, 614), + NAME_FUNC_OFFSET(10066, gl_dispatch_stub_615, gl_dispatch_stub_615, NULL, 615), + NAME_FUNC_OFFSET(10094, gl_dispatch_stub_616, gl_dispatch_stub_616, NULL, 616), + NAME_FUNC_OFFSET(10123, gl_dispatch_stub_617, gl_dispatch_stub_617, NULL, 617), + NAME_FUNC_OFFSET(10151, gl_dispatch_stub_618, gl_dispatch_stub_618, NULL, 618), + NAME_FUNC_OFFSET(10180, gl_dispatch_stub_619, gl_dispatch_stub_619, NULL, 619), + NAME_FUNC_OFFSET(10197, gl_dispatch_stub_620, gl_dispatch_stub_620, NULL, 620), + NAME_FUNC_OFFSET(10217, glColorPointerEXT, glColorPointerEXT, NULL, 621), + NAME_FUNC_OFFSET(10235, glEdgeFlagPointerEXT, glEdgeFlagPointerEXT, NULL, 622), + NAME_FUNC_OFFSET(10256, glIndexPointerEXT, glIndexPointerEXT, NULL, 623), + NAME_FUNC_OFFSET(10274, glNormalPointerEXT, glNormalPointerEXT, NULL, 624), + NAME_FUNC_OFFSET(10293, glTexCoordPointerEXT, glTexCoordPointerEXT, NULL, 625), + NAME_FUNC_OFFSET(10314, glVertexPointerEXT, glVertexPointerEXT, NULL, 626), + NAME_FUNC_OFFSET(10333, glPointParameterfEXT, glPointParameterfEXT, NULL, 627), + NAME_FUNC_OFFSET(10354, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 628), + NAME_FUNC_OFFSET(10376, glLockArraysEXT, glLockArraysEXT, NULL, 629), + NAME_FUNC_OFFSET(10392, glUnlockArraysEXT, glUnlockArraysEXT, NULL, 630), + NAME_FUNC_OFFSET(10410, glSecondaryColor3bEXT, glSecondaryColor3bEXT, NULL, 631), + NAME_FUNC_OFFSET(10432, glSecondaryColor3bvEXT, glSecondaryColor3bvEXT, NULL, 632), + NAME_FUNC_OFFSET(10455, glSecondaryColor3dEXT, glSecondaryColor3dEXT, NULL, 633), + NAME_FUNC_OFFSET(10477, glSecondaryColor3dvEXT, glSecondaryColor3dvEXT, NULL, 634), + NAME_FUNC_OFFSET(10500, glSecondaryColor3fEXT, glSecondaryColor3fEXT, NULL, 635), + NAME_FUNC_OFFSET(10522, glSecondaryColor3fvEXT, glSecondaryColor3fvEXT, NULL, 636), + NAME_FUNC_OFFSET(10545, glSecondaryColor3iEXT, glSecondaryColor3iEXT, NULL, 637), + NAME_FUNC_OFFSET(10567, glSecondaryColor3ivEXT, glSecondaryColor3ivEXT, NULL, 638), + NAME_FUNC_OFFSET(10590, glSecondaryColor3sEXT, glSecondaryColor3sEXT, NULL, 639), + NAME_FUNC_OFFSET(10612, glSecondaryColor3svEXT, glSecondaryColor3svEXT, NULL, 640), + NAME_FUNC_OFFSET(10635, glSecondaryColor3ubEXT, glSecondaryColor3ubEXT, NULL, 641), + NAME_FUNC_OFFSET(10658, glSecondaryColor3ubvEXT, glSecondaryColor3ubvEXT, NULL, 642), + NAME_FUNC_OFFSET(10682, glSecondaryColor3uiEXT, glSecondaryColor3uiEXT, NULL, 643), + NAME_FUNC_OFFSET(10705, glSecondaryColor3uivEXT, glSecondaryColor3uivEXT, NULL, 644), + NAME_FUNC_OFFSET(10729, glSecondaryColor3usEXT, glSecondaryColor3usEXT, NULL, 645), + NAME_FUNC_OFFSET(10752, glSecondaryColor3usvEXT, glSecondaryColor3usvEXT, NULL, 646), + NAME_FUNC_OFFSET(10776, glSecondaryColorPointerEXT, glSecondaryColorPointerEXT, NULL, 647), + NAME_FUNC_OFFSET(10803, glMultiDrawArraysEXT, glMultiDrawArraysEXT, NULL, 648), + NAME_FUNC_OFFSET(10824, glMultiDrawElementsEXT, glMultiDrawElementsEXT, NULL, 649), + NAME_FUNC_OFFSET(10847, glFogCoordPointerEXT, glFogCoordPointerEXT, NULL, 650), + NAME_FUNC_OFFSET(10868, glFogCoorddEXT, glFogCoorddEXT, NULL, 651), + NAME_FUNC_OFFSET(10883, glFogCoorddvEXT, glFogCoorddvEXT, NULL, 652), + NAME_FUNC_OFFSET(10899, glFogCoordfEXT, glFogCoordfEXT, NULL, 653), + NAME_FUNC_OFFSET(10914, glFogCoordfvEXT, glFogCoordfvEXT, NULL, 654), + NAME_FUNC_OFFSET(10930, gl_dispatch_stub_655, gl_dispatch_stub_655, NULL, 655), + NAME_FUNC_OFFSET(10948, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, 656), + NAME_FUNC_OFFSET(10971, glFlushVertexArrayRangeNV, glFlushVertexArrayRangeNV, NULL, 657), + NAME_FUNC_OFFSET(10997, glVertexArrayRangeNV, glVertexArrayRangeNV, NULL, 658), + NAME_FUNC_OFFSET(11018, glCombinerInputNV, glCombinerInputNV, NULL, 659), + NAME_FUNC_OFFSET(11036, glCombinerOutputNV, glCombinerOutputNV, NULL, 660), + NAME_FUNC_OFFSET(11055, glCombinerParameterfNV, glCombinerParameterfNV, NULL, 661), + NAME_FUNC_OFFSET(11078, glCombinerParameterfvNV, glCombinerParameterfvNV, NULL, 662), + NAME_FUNC_OFFSET(11102, glCombinerParameteriNV, glCombinerParameteriNV, NULL, 663), + NAME_FUNC_OFFSET(11125, glCombinerParameterivNV, glCombinerParameterivNV, NULL, 664), + NAME_FUNC_OFFSET(11149, glFinalCombinerInputNV, glFinalCombinerInputNV, NULL, 665), + NAME_FUNC_OFFSET(11172, glGetCombinerInputParameterfvNV, glGetCombinerInputParameterfvNV, NULL, 666), + NAME_FUNC_OFFSET(11204, glGetCombinerInputParameterivNV, glGetCombinerInputParameterivNV, NULL, 667), + NAME_FUNC_OFFSET(11236, glGetCombinerOutputParameterfvNV, glGetCombinerOutputParameterfvNV, NULL, 668), + NAME_FUNC_OFFSET(11269, glGetCombinerOutputParameterivNV, glGetCombinerOutputParameterivNV, NULL, 669), + NAME_FUNC_OFFSET(11302, glGetFinalCombinerInputParameterfvNV, glGetFinalCombinerInputParameterfvNV, NULL, 670), + NAME_FUNC_OFFSET(11339, glGetFinalCombinerInputParameterivNV, glGetFinalCombinerInputParameterivNV, NULL, 671), + NAME_FUNC_OFFSET(11376, glResizeBuffersMESA, glResizeBuffersMESA, NULL, 672), + NAME_FUNC_OFFSET(11396, glWindowPos2dMESA, glWindowPos2dMESA, NULL, 673), + NAME_FUNC_OFFSET(11414, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, 674), + NAME_FUNC_OFFSET(11433, glWindowPos2fMESA, glWindowPos2fMESA, NULL, 675), + NAME_FUNC_OFFSET(11451, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, 676), + NAME_FUNC_OFFSET(11470, glWindowPos2iMESA, glWindowPos2iMESA, NULL, 677), + NAME_FUNC_OFFSET(11488, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, 678), + NAME_FUNC_OFFSET(11507, glWindowPos2sMESA, glWindowPos2sMESA, NULL, 679), + NAME_FUNC_OFFSET(11525, glWindowPos2svMESA, glWindowPos2svMESA, NULL, 680), + NAME_FUNC_OFFSET(11544, glWindowPos3dMESA, glWindowPos3dMESA, NULL, 681), + NAME_FUNC_OFFSET(11562, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, 682), + NAME_FUNC_OFFSET(11581, glWindowPos3fMESA, glWindowPos3fMESA, NULL, 683), + NAME_FUNC_OFFSET(11599, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, 684), + NAME_FUNC_OFFSET(11618, glWindowPos3iMESA, glWindowPos3iMESA, NULL, 685), + NAME_FUNC_OFFSET(11636, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, 686), + NAME_FUNC_OFFSET(11655, glWindowPos3sMESA, glWindowPos3sMESA, NULL, 687), + NAME_FUNC_OFFSET(11673, glWindowPos3svMESA, glWindowPos3svMESA, NULL, 688), + NAME_FUNC_OFFSET(11692, glWindowPos4dMESA, glWindowPos4dMESA, NULL, 689), + NAME_FUNC_OFFSET(11710, glWindowPos4dvMESA, glWindowPos4dvMESA, NULL, 690), + NAME_FUNC_OFFSET(11729, glWindowPos4fMESA, glWindowPos4fMESA, NULL, 691), + NAME_FUNC_OFFSET(11747, glWindowPos4fvMESA, glWindowPos4fvMESA, NULL, 692), + NAME_FUNC_OFFSET(11766, glWindowPos4iMESA, glWindowPos4iMESA, NULL, 693), + NAME_FUNC_OFFSET(11784, glWindowPos4ivMESA, glWindowPos4ivMESA, NULL, 694), + NAME_FUNC_OFFSET(11803, glWindowPos4sMESA, glWindowPos4sMESA, NULL, 695), + NAME_FUNC_OFFSET(11821, glWindowPos4svMESA, glWindowPos4svMESA, NULL, 696), + NAME_FUNC_OFFSET(11840, gl_dispatch_stub_697, gl_dispatch_stub_697, NULL, 697), + NAME_FUNC_OFFSET(11865, gl_dispatch_stub_698, gl_dispatch_stub_698, NULL, 698), + NAME_FUNC_OFFSET(11892, gl_dispatch_stub_699, gl_dispatch_stub_699, NULL, 699), + NAME_FUNC_OFFSET(11909, gl_dispatch_stub_700, gl_dispatch_stub_700, NULL, 700), + NAME_FUNC_OFFSET(11925, gl_dispatch_stub_701, gl_dispatch_stub_701, NULL, 701), NAME_FUNC_OFFSET(11939, gl_dispatch_stub_702, gl_dispatch_stub_702, NULL, 702), - NAME_FUNC_OFFSET(11951, gl_dispatch_stub_703, gl_dispatch_stub_703, NULL, 703), - NAME_FUNC_OFFSET(11964, gl_dispatch_stub_704, gl_dispatch_stub_704, NULL, 704), - NAME_FUNC_OFFSET(11978, glAreProgramsResidentNV, glAreProgramsResidentNV, NULL, 705), - NAME_FUNC_OFFSET(12002, glBindProgramNV, glBindProgramNV, NULL, 706), - NAME_FUNC_OFFSET(12018, glDeleteProgramsNV, glDeleteProgramsNV, NULL, 707), - NAME_FUNC_OFFSET(12037, glExecuteProgramNV, glExecuteProgramNV, NULL, 708), - NAME_FUNC_OFFSET(12056, glGenProgramsNV, glGenProgramsNV, NULL, 709), - NAME_FUNC_OFFSET(12072, glGetProgramParameterdvNV, glGetProgramParameterdvNV, NULL, 710), - NAME_FUNC_OFFSET(12098, glGetProgramParameterfvNV, glGetProgramParameterfvNV, NULL, 711), - NAME_FUNC_OFFSET(12124, glGetProgramStringNV, glGetProgramStringNV, NULL, 712), - NAME_FUNC_OFFSET(12145, glGetProgramivNV, glGetProgramivNV, NULL, 713), - NAME_FUNC_OFFSET(12162, glGetTrackMatrixivNV, glGetTrackMatrixivNV, NULL, 714), - NAME_FUNC_OFFSET(12183, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, 715), - NAME_FUNC_OFFSET(12211, glGetVertexAttribdvNV, glGetVertexAttribdvNV, NULL, 716), - NAME_FUNC_OFFSET(12233, glGetVertexAttribfvNV, glGetVertexAttribfvNV, NULL, 717), - NAME_FUNC_OFFSET(12255, glGetVertexAttribivNV, glGetVertexAttribivNV, NULL, 718), - NAME_FUNC_OFFSET(12277, glIsProgramNV, glIsProgramNV, NULL, 719), - NAME_FUNC_OFFSET(12291, glLoadProgramNV, glLoadProgramNV, NULL, 720), - NAME_FUNC_OFFSET(12307, glProgramParameters4dvNV, glProgramParameters4dvNV, NULL, 721), - NAME_FUNC_OFFSET(12332, glProgramParameters4fvNV, glProgramParameters4fvNV, NULL, 722), - NAME_FUNC_OFFSET(12357, glRequestResidentProgramsNV, glRequestResidentProgramsNV, NULL, 723), - NAME_FUNC_OFFSET(12385, glTrackMatrixNV, glTrackMatrixNV, NULL, 724), - NAME_FUNC_OFFSET(12401, glVertexAttrib1dNV, glVertexAttrib1dNV, NULL, 725), - NAME_FUNC_OFFSET(12420, glVertexAttrib1dvNV, glVertexAttrib1dvNV, NULL, 726), - NAME_FUNC_OFFSET(12440, glVertexAttrib1fNV, glVertexAttrib1fNV, NULL, 727), - NAME_FUNC_OFFSET(12459, glVertexAttrib1fvNV, glVertexAttrib1fvNV, NULL, 728), - NAME_FUNC_OFFSET(12479, glVertexAttrib1sNV, glVertexAttrib1sNV, NULL, 729), - NAME_FUNC_OFFSET(12498, glVertexAttrib1svNV, glVertexAttrib1svNV, NULL, 730), - NAME_FUNC_OFFSET(12518, glVertexAttrib2dNV, glVertexAttrib2dNV, NULL, 731), - NAME_FUNC_OFFSET(12537, glVertexAttrib2dvNV, glVertexAttrib2dvNV, NULL, 732), - NAME_FUNC_OFFSET(12557, glVertexAttrib2fNV, glVertexAttrib2fNV, NULL, 733), - NAME_FUNC_OFFSET(12576, glVertexAttrib2fvNV, glVertexAttrib2fvNV, NULL, 734), - NAME_FUNC_OFFSET(12596, glVertexAttrib2sNV, glVertexAttrib2sNV, NULL, 735), - NAME_FUNC_OFFSET(12615, glVertexAttrib2svNV, glVertexAttrib2svNV, NULL, 736), - NAME_FUNC_OFFSET(12635, glVertexAttrib3dNV, glVertexAttrib3dNV, NULL, 737), - NAME_FUNC_OFFSET(12654, glVertexAttrib3dvNV, glVertexAttrib3dvNV, NULL, 738), - NAME_FUNC_OFFSET(12674, glVertexAttrib3fNV, glVertexAttrib3fNV, NULL, 739), - NAME_FUNC_OFFSET(12693, glVertexAttrib3fvNV, glVertexAttrib3fvNV, NULL, 740), - NAME_FUNC_OFFSET(12713, glVertexAttrib3sNV, glVertexAttrib3sNV, NULL, 741), - NAME_FUNC_OFFSET(12732, glVertexAttrib3svNV, glVertexAttrib3svNV, NULL, 742), - NAME_FUNC_OFFSET(12752, glVertexAttrib4dNV, glVertexAttrib4dNV, NULL, 743), - NAME_FUNC_OFFSET(12771, glVertexAttrib4dvNV, glVertexAttrib4dvNV, NULL, 744), - NAME_FUNC_OFFSET(12791, glVertexAttrib4fNV, glVertexAttrib4fNV, NULL, 745), - NAME_FUNC_OFFSET(12810, glVertexAttrib4fvNV, glVertexAttrib4fvNV, NULL, 746), - NAME_FUNC_OFFSET(12830, glVertexAttrib4sNV, glVertexAttrib4sNV, NULL, 747), - NAME_FUNC_OFFSET(12849, glVertexAttrib4svNV, glVertexAttrib4svNV, NULL, 748), - NAME_FUNC_OFFSET(12869, glVertexAttrib4ubNV, glVertexAttrib4ubNV, NULL, 749), - NAME_FUNC_OFFSET(12889, glVertexAttrib4ubvNV, glVertexAttrib4ubvNV, NULL, 750), - NAME_FUNC_OFFSET(12910, glVertexAttribPointerNV, glVertexAttribPointerNV, NULL, 751), - NAME_FUNC_OFFSET(12934, glVertexAttribs1dvNV, glVertexAttribs1dvNV, NULL, 752), - NAME_FUNC_OFFSET(12955, glVertexAttribs1fvNV, glVertexAttribs1fvNV, NULL, 753), - NAME_FUNC_OFFSET(12976, glVertexAttribs1svNV, glVertexAttribs1svNV, NULL, 754), - NAME_FUNC_OFFSET(12997, glVertexAttribs2dvNV, glVertexAttribs2dvNV, NULL, 755), - NAME_FUNC_OFFSET(13018, glVertexAttribs2fvNV, glVertexAttribs2fvNV, NULL, 756), - NAME_FUNC_OFFSET(13039, glVertexAttribs2svNV, glVertexAttribs2svNV, NULL, 757), - NAME_FUNC_OFFSET(13060, glVertexAttribs3dvNV, glVertexAttribs3dvNV, NULL, 758), - NAME_FUNC_OFFSET(13081, glVertexAttribs3fvNV, glVertexAttribs3fvNV, NULL, 759), - NAME_FUNC_OFFSET(13102, glVertexAttribs3svNV, glVertexAttribs3svNV, NULL, 760), - NAME_FUNC_OFFSET(13123, glVertexAttribs4dvNV, glVertexAttribs4dvNV, NULL, 761), - NAME_FUNC_OFFSET(13144, glVertexAttribs4fvNV, glVertexAttribs4fvNV, NULL, 762), - NAME_FUNC_OFFSET(13165, glVertexAttribs4svNV, glVertexAttribs4svNV, NULL, 763), - NAME_FUNC_OFFSET(13186, glVertexAttribs4ubvNV, glVertexAttribs4ubvNV, NULL, 764), - NAME_FUNC_OFFSET(13208, glGetTexBumpParameterfvATI, glGetTexBumpParameterfvATI, NULL, 765), - NAME_FUNC_OFFSET(13235, glGetTexBumpParameterivATI, glGetTexBumpParameterivATI, NULL, 766), - NAME_FUNC_OFFSET(13262, glTexBumpParameterfvATI, glTexBumpParameterfvATI, NULL, 767), - NAME_FUNC_OFFSET(13286, glTexBumpParameterivATI, glTexBumpParameterivATI, NULL, 768), - NAME_FUNC_OFFSET(13310, glAlphaFragmentOp1ATI, glAlphaFragmentOp1ATI, NULL, 769), - NAME_FUNC_OFFSET(13332, glAlphaFragmentOp2ATI, glAlphaFragmentOp2ATI, NULL, 770), - NAME_FUNC_OFFSET(13354, glAlphaFragmentOp3ATI, glAlphaFragmentOp3ATI, NULL, 771), - NAME_FUNC_OFFSET(13376, glBeginFragmentShaderATI, glBeginFragmentShaderATI, NULL, 772), - NAME_FUNC_OFFSET(13401, glBindFragmentShaderATI, glBindFragmentShaderATI, NULL, 773), - NAME_FUNC_OFFSET(13425, glColorFragmentOp1ATI, glColorFragmentOp1ATI, NULL, 774), - NAME_FUNC_OFFSET(13447, glColorFragmentOp2ATI, glColorFragmentOp2ATI, NULL, 775), - NAME_FUNC_OFFSET(13469, glColorFragmentOp3ATI, glColorFragmentOp3ATI, NULL, 776), - NAME_FUNC_OFFSET(13491, glDeleteFragmentShaderATI, glDeleteFragmentShaderATI, NULL, 777), - NAME_FUNC_OFFSET(13517, glEndFragmentShaderATI, glEndFragmentShaderATI, NULL, 778), - NAME_FUNC_OFFSET(13540, glGenFragmentShadersATI, glGenFragmentShadersATI, NULL, 779), - NAME_FUNC_OFFSET(13564, glPassTexCoordATI, glPassTexCoordATI, NULL, 780), - NAME_FUNC_OFFSET(13582, glSampleMapATI, glSampleMapATI, NULL, 781), - NAME_FUNC_OFFSET(13597, glSetFragmentShaderConstantATI, glSetFragmentShaderConstantATI, NULL, 782), - NAME_FUNC_OFFSET(13628, glPointParameteriNV, glPointParameteriNV, NULL, 783), - NAME_FUNC_OFFSET(13648, glPointParameterivNV, glPointParameterivNV, NULL, 784), - NAME_FUNC_OFFSET(13669, gl_dispatch_stub_785, gl_dispatch_stub_785, NULL, 785), - NAME_FUNC_OFFSET(13692, gl_dispatch_stub_786, gl_dispatch_stub_786, NULL, 786), - NAME_FUNC_OFFSET(13715, gl_dispatch_stub_787, gl_dispatch_stub_787, NULL, 787), - NAME_FUNC_OFFSET(13741, gl_dispatch_stub_788, gl_dispatch_stub_788, NULL, 788), - NAME_FUNC_OFFSET(13764, gl_dispatch_stub_789, gl_dispatch_stub_789, NULL, 789), - NAME_FUNC_OFFSET(13785, glGetProgramNamedParameterdvNV, glGetProgramNamedParameterdvNV, NULL, 790), - NAME_FUNC_OFFSET(13816, glGetProgramNamedParameterfvNV, glGetProgramNamedParameterfvNV, NULL, 791), - NAME_FUNC_OFFSET(13847, glProgramNamedParameter4dNV, glProgramNamedParameter4dNV, NULL, 792), - NAME_FUNC_OFFSET(13875, glProgramNamedParameter4dvNV, glProgramNamedParameter4dvNV, NULL, 793), - NAME_FUNC_OFFSET(13904, glProgramNamedParameter4fNV, glProgramNamedParameter4fNV, NULL, 794), - NAME_FUNC_OFFSET(13932, glProgramNamedParameter4fvNV, glProgramNamedParameter4fvNV, NULL, 795), - NAME_FUNC_OFFSET(13961, glPrimitiveRestartIndexNV, glPrimitiveRestartIndexNV, NULL, 796), - NAME_FUNC_OFFSET(13987, glPrimitiveRestartNV, glPrimitiveRestartNV, NULL, 797), - NAME_FUNC_OFFSET(14008, gl_dispatch_stub_798, gl_dispatch_stub_798, NULL, 798), - NAME_FUNC_OFFSET(14025, gl_dispatch_stub_799, gl_dispatch_stub_799, NULL, 799), - NAME_FUNC_OFFSET(14052, glBindFramebufferEXT, glBindFramebufferEXT, NULL, 800), - NAME_FUNC_OFFSET(14073, glBindRenderbufferEXT, glBindRenderbufferEXT, NULL, 801), - NAME_FUNC_OFFSET(14095, glCheckFramebufferStatusEXT, glCheckFramebufferStatusEXT, NULL, 802), - NAME_FUNC_OFFSET(14123, glDeleteFramebuffersEXT, glDeleteFramebuffersEXT, NULL, 803), - NAME_FUNC_OFFSET(14147, glDeleteRenderbuffersEXT, glDeleteRenderbuffersEXT, NULL, 804), - NAME_FUNC_OFFSET(14172, glFramebufferRenderbufferEXT, glFramebufferRenderbufferEXT, NULL, 805), - NAME_FUNC_OFFSET(14201, glFramebufferTexture1DEXT, glFramebufferTexture1DEXT, NULL, 806), - NAME_FUNC_OFFSET(14227, glFramebufferTexture2DEXT, glFramebufferTexture2DEXT, NULL, 807), - NAME_FUNC_OFFSET(14253, glFramebufferTexture3DEXT, glFramebufferTexture3DEXT, NULL, 808), - NAME_FUNC_OFFSET(14279, glGenFramebuffersEXT, glGenFramebuffersEXT, NULL, 809), - NAME_FUNC_OFFSET(14300, glGenRenderbuffersEXT, glGenRenderbuffersEXT, NULL, 810), - NAME_FUNC_OFFSET(14322, glGenerateMipmapEXT, glGenerateMipmapEXT, NULL, 811), - NAME_FUNC_OFFSET(14342, glGetFramebufferAttachmentParameterivEXT, glGetFramebufferAttachmentParameterivEXT, NULL, 812), - NAME_FUNC_OFFSET(14383, glGetRenderbufferParameterivEXT, glGetRenderbufferParameterivEXT, NULL, 813), - NAME_FUNC_OFFSET(14415, glIsFramebufferEXT, glIsFramebufferEXT, NULL, 814), - NAME_FUNC_OFFSET(14434, glIsRenderbufferEXT, glIsRenderbufferEXT, NULL, 815), - NAME_FUNC_OFFSET(14454, glRenderbufferStorageEXT, glRenderbufferStorageEXT, NULL, 816), - NAME_FUNC_OFFSET(14479, gl_dispatch_stub_817, gl_dispatch_stub_817, NULL, 817), - NAME_FUNC_OFFSET(14500, gl_dispatch_stub_818, gl_dispatch_stub_818, NULL, 818), - NAME_FUNC_OFFSET(14524, gl_dispatch_stub_819, gl_dispatch_stub_819, NULL, 819), - NAME_FUNC_OFFSET(14554, glBindFragDataLocationEXT, glBindFragDataLocationEXT, NULL, 820), - NAME_FUNC_OFFSET(14580, glGetFragDataLocationEXT, glGetFragDataLocationEXT, NULL, 821), - NAME_FUNC_OFFSET(14605, glGetUniformuivEXT, glGetUniformuivEXT, NULL, 822), - NAME_FUNC_OFFSET(14624, glGetVertexAttribIivEXT, glGetVertexAttribIivEXT, NULL, 823), - NAME_FUNC_OFFSET(14648, glGetVertexAttribIuivEXT, glGetVertexAttribIuivEXT, NULL, 824), - NAME_FUNC_OFFSET(14673, glUniform1uiEXT, glUniform1uiEXT, NULL, 825), - NAME_FUNC_OFFSET(14689, glUniform1uivEXT, glUniform1uivEXT, NULL, 826), - NAME_FUNC_OFFSET(14706, glUniform2uiEXT, glUniform2uiEXT, NULL, 827), - NAME_FUNC_OFFSET(14722, glUniform2uivEXT, glUniform2uivEXT, NULL, 828), - NAME_FUNC_OFFSET(14739, glUniform3uiEXT, glUniform3uiEXT, NULL, 829), - NAME_FUNC_OFFSET(14755, glUniform3uivEXT, glUniform3uivEXT, NULL, 830), - NAME_FUNC_OFFSET(14772, glUniform4uiEXT, glUniform4uiEXT, NULL, 831), - NAME_FUNC_OFFSET(14788, glUniform4uivEXT, glUniform4uivEXT, NULL, 832), - NAME_FUNC_OFFSET(14805, glVertexAttribI1iEXT, glVertexAttribI1iEXT, NULL, 833), - NAME_FUNC_OFFSET(14826, glVertexAttribI1ivEXT, glVertexAttribI1ivEXT, NULL, 834), - NAME_FUNC_OFFSET(14848, glVertexAttribI1uiEXT, glVertexAttribI1uiEXT, NULL, 835), - NAME_FUNC_OFFSET(14870, glVertexAttribI1uivEXT, glVertexAttribI1uivEXT, NULL, 836), - NAME_FUNC_OFFSET(14893, glVertexAttribI2iEXT, glVertexAttribI2iEXT, NULL, 837), - NAME_FUNC_OFFSET(14914, glVertexAttribI2ivEXT, glVertexAttribI2ivEXT, NULL, 838), - NAME_FUNC_OFFSET(14936, glVertexAttribI2uiEXT, glVertexAttribI2uiEXT, NULL, 839), - NAME_FUNC_OFFSET(14958, glVertexAttribI2uivEXT, glVertexAttribI2uivEXT, NULL, 840), - NAME_FUNC_OFFSET(14981, glVertexAttribI3iEXT, glVertexAttribI3iEXT, NULL, 841), - NAME_FUNC_OFFSET(15002, glVertexAttribI3ivEXT, glVertexAttribI3ivEXT, NULL, 842), - NAME_FUNC_OFFSET(15024, glVertexAttribI3uiEXT, glVertexAttribI3uiEXT, NULL, 843), - NAME_FUNC_OFFSET(15046, glVertexAttribI3uivEXT, glVertexAttribI3uivEXT, NULL, 844), - NAME_FUNC_OFFSET(15069, glVertexAttribI4bvEXT, glVertexAttribI4bvEXT, NULL, 845), - NAME_FUNC_OFFSET(15091, glVertexAttribI4iEXT, glVertexAttribI4iEXT, NULL, 846), - NAME_FUNC_OFFSET(15112, glVertexAttribI4ivEXT, glVertexAttribI4ivEXT, NULL, 847), - NAME_FUNC_OFFSET(15134, glVertexAttribI4svEXT, glVertexAttribI4svEXT, NULL, 848), - NAME_FUNC_OFFSET(15156, glVertexAttribI4ubvEXT, glVertexAttribI4ubvEXT, NULL, 849), - NAME_FUNC_OFFSET(15179, glVertexAttribI4uiEXT, glVertexAttribI4uiEXT, NULL, 850), - NAME_FUNC_OFFSET(15201, glVertexAttribI4uivEXT, glVertexAttribI4uivEXT, NULL, 851), - NAME_FUNC_OFFSET(15224, glVertexAttribI4usvEXT, glVertexAttribI4usvEXT, NULL, 852), - NAME_FUNC_OFFSET(15247, glVertexAttribIPointerEXT, glVertexAttribIPointerEXT, NULL, 853), - NAME_FUNC_OFFSET(15273, glFramebufferTextureLayerEXT, glFramebufferTextureLayerEXT, NULL, 854), - NAME_FUNC_OFFSET(15302, glColorMaskIndexedEXT, glColorMaskIndexedEXT, NULL, 855), - NAME_FUNC_OFFSET(15324, glDisableIndexedEXT, glDisableIndexedEXT, NULL, 856), - NAME_FUNC_OFFSET(15344, glEnableIndexedEXT, glEnableIndexedEXT, NULL, 857), - NAME_FUNC_OFFSET(15363, glGetBooleanIndexedvEXT, glGetBooleanIndexedvEXT, NULL, 858), - NAME_FUNC_OFFSET(15387, glGetIntegerIndexedvEXT, glGetIntegerIndexedvEXT, NULL, 859), - NAME_FUNC_OFFSET(15411, glIsEnabledIndexedEXT, glIsEnabledIndexedEXT, NULL, 860), - NAME_FUNC_OFFSET(15433, glClearColorIiEXT, glClearColorIiEXT, NULL, 861), - NAME_FUNC_OFFSET(15451, glClearColorIuiEXT, glClearColorIuiEXT, NULL, 862), - NAME_FUNC_OFFSET(15470, glGetTexParameterIivEXT, glGetTexParameterIivEXT, NULL, 863), - NAME_FUNC_OFFSET(15494, glGetTexParameterIuivEXT, glGetTexParameterIuivEXT, NULL, 864), - NAME_FUNC_OFFSET(15519, glTexParameterIivEXT, glTexParameterIivEXT, NULL, 865), - NAME_FUNC_OFFSET(15540, glTexParameterIuivEXT, glTexParameterIuivEXT, NULL, 866), - NAME_FUNC_OFFSET(15562, glBeginConditionalRenderNV, glBeginConditionalRenderNV, NULL, 867), - NAME_FUNC_OFFSET(15589, glEndConditionalRenderNV, glEndConditionalRenderNV, NULL, 868), - NAME_FUNC_OFFSET(15614, glBeginTransformFeedbackEXT, glBeginTransformFeedbackEXT, NULL, 869), - NAME_FUNC_OFFSET(15642, glBindBufferBaseEXT, glBindBufferBaseEXT, NULL, 870), - NAME_FUNC_OFFSET(15662, glBindBufferOffsetEXT, glBindBufferOffsetEXT, NULL, 871), - NAME_FUNC_OFFSET(15684, glBindBufferRangeEXT, glBindBufferRangeEXT, NULL, 872), - NAME_FUNC_OFFSET(15705, glEndTransformFeedbackEXT, glEndTransformFeedbackEXT, NULL, 873), - NAME_FUNC_OFFSET(15731, glGetTransformFeedbackVaryingEXT, glGetTransformFeedbackVaryingEXT, NULL, 874), - NAME_FUNC_OFFSET(15764, glTransformFeedbackVaryingsEXT, glTransformFeedbackVaryingsEXT, NULL, 875), - NAME_FUNC_OFFSET(15795, glProvokingVertexEXT, glProvokingVertexEXT, NULL, 876), - NAME_FUNC_OFFSET(15816, gl_dispatch_stub_877, gl_dispatch_stub_877, NULL, 877), - NAME_FUNC_OFFSET(15847, gl_dispatch_stub_878, gl_dispatch_stub_878, NULL, 878), - NAME_FUNC_OFFSET(15867, glGetObjectParameterivAPPLE, glGetObjectParameterivAPPLE, NULL, 879), - NAME_FUNC_OFFSET(15895, glObjectPurgeableAPPLE, glObjectPurgeableAPPLE, NULL, 880), - NAME_FUNC_OFFSET(15918, glObjectUnpurgeableAPPLE, glObjectUnpurgeableAPPLE, NULL, 881), - NAME_FUNC_OFFSET(15943, glActiveProgramEXT, glActiveProgramEXT, NULL, 882), - NAME_FUNC_OFFSET(15962, glCreateShaderProgramEXT, glCreateShaderProgramEXT, NULL, 883), - NAME_FUNC_OFFSET(15987, glUseShaderProgramEXT, glUseShaderProgramEXT, NULL, 884), - NAME_FUNC_OFFSET(16009, glTextureBarrierNV, glTextureBarrierNV, NULL, 885), - NAME_FUNC_OFFSET(16028, gl_dispatch_stub_886, gl_dispatch_stub_886, NULL, 886), - NAME_FUNC_OFFSET(16053, gl_dispatch_stub_887, gl_dispatch_stub_887, NULL, 887), - NAME_FUNC_OFFSET(16082, gl_dispatch_stub_888, gl_dispatch_stub_888, NULL, 888), - NAME_FUNC_OFFSET(16113, gl_dispatch_stub_889, gl_dispatch_stub_889, NULL, 889), - NAME_FUNC_OFFSET(16137, gl_dispatch_stub_890, gl_dispatch_stub_890, NULL, 890), - NAME_FUNC_OFFSET(16162, glEGLImageTargetRenderbufferStorageOES, glEGLImageTargetRenderbufferStorageOES, NULL, 891), - NAME_FUNC_OFFSET(16201, glEGLImageTargetTexture2DOES, glEGLImageTargetTexture2DOES, NULL, 892), - NAME_FUNC_OFFSET(16230, glArrayElement, glArrayElement, NULL, 306), - NAME_FUNC_OFFSET(16248, glBindTexture, glBindTexture, NULL, 307), - NAME_FUNC_OFFSET(16265, glDrawArrays, glDrawArrays, NULL, 310), - NAME_FUNC_OFFSET(16281, glAreTexturesResident, glAreTexturesResidentEXT, glAreTexturesResidentEXT, 322), - NAME_FUNC_OFFSET(16306, glCopyTexImage1D, glCopyTexImage1D, NULL, 323), - NAME_FUNC_OFFSET(16326, glCopyTexImage2D, glCopyTexImage2D, NULL, 324), - NAME_FUNC_OFFSET(16346, glCopyTexSubImage1D, glCopyTexSubImage1D, NULL, 325), - NAME_FUNC_OFFSET(16369, glCopyTexSubImage2D, glCopyTexSubImage2D, NULL, 326), - NAME_FUNC_OFFSET(16392, glDeleteTextures, glDeleteTexturesEXT, glDeleteTexturesEXT, 327), - NAME_FUNC_OFFSET(16412, glGenTextures, glGenTexturesEXT, glGenTexturesEXT, 328), - NAME_FUNC_OFFSET(16429, glGetPointerv, glGetPointerv, NULL, 329), - NAME_FUNC_OFFSET(16446, glIsTexture, glIsTextureEXT, glIsTextureEXT, 330), - NAME_FUNC_OFFSET(16461, glPrioritizeTextures, glPrioritizeTextures, NULL, 331), - NAME_FUNC_OFFSET(16485, glTexSubImage1D, glTexSubImage1D, NULL, 332), - NAME_FUNC_OFFSET(16504, glTexSubImage2D, glTexSubImage2D, NULL, 333), - NAME_FUNC_OFFSET(16523, glBlendColor, glBlendColor, NULL, 336), - NAME_FUNC_OFFSET(16539, glBlendEquation, glBlendEquation, NULL, 337), - NAME_FUNC_OFFSET(16558, glDrawRangeElements, glDrawRangeElements, NULL, 338), - NAME_FUNC_OFFSET(16581, glColorTable, glColorTable, NULL, 339), - NAME_FUNC_OFFSET(16597, glColorTable, glColorTable, NULL, 339), - NAME_FUNC_OFFSET(16613, glColorTableParameterfv, glColorTableParameterfv, NULL, 340), - NAME_FUNC_OFFSET(16640, glColorTableParameteriv, glColorTableParameteriv, NULL, 341), - NAME_FUNC_OFFSET(16667, glCopyColorTable, glCopyColorTable, NULL, 342), - NAME_FUNC_OFFSET(16687, glGetColorTable, glGetColorTableEXT, glGetColorTableEXT, 343), - NAME_FUNC_OFFSET(16706, glGetColorTable, glGetColorTableEXT, glGetColorTableEXT, 343), - NAME_FUNC_OFFSET(16725, glGetColorTableParameterfv, glGetColorTableParameterfvEXT, glGetColorTableParameterfvEXT, 344), - NAME_FUNC_OFFSET(16755, glGetColorTableParameterfv, glGetColorTableParameterfvEXT, glGetColorTableParameterfvEXT, 344), - NAME_FUNC_OFFSET(16785, glGetColorTableParameteriv, glGetColorTableParameterivEXT, glGetColorTableParameterivEXT, 345), - NAME_FUNC_OFFSET(16815, glGetColorTableParameteriv, glGetColorTableParameterivEXT, glGetColorTableParameterivEXT, 345), - NAME_FUNC_OFFSET(16845, glColorSubTable, glColorSubTable, NULL, 346), - NAME_FUNC_OFFSET(16864, glCopyColorSubTable, glCopyColorSubTable, NULL, 347), - NAME_FUNC_OFFSET(16887, glConvolutionFilter1D, glConvolutionFilter1D, NULL, 348), - NAME_FUNC_OFFSET(16912, glConvolutionFilter2D, glConvolutionFilter2D, NULL, 349), - NAME_FUNC_OFFSET(16937, glConvolutionParameterf, glConvolutionParameterf, NULL, 350), - NAME_FUNC_OFFSET(16964, glConvolutionParameterfv, glConvolutionParameterfv, NULL, 351), - NAME_FUNC_OFFSET(16992, glConvolutionParameteri, glConvolutionParameteri, NULL, 352), - NAME_FUNC_OFFSET(17019, glConvolutionParameteriv, glConvolutionParameteriv, NULL, 353), - NAME_FUNC_OFFSET(17047, glCopyConvolutionFilter1D, glCopyConvolutionFilter1D, NULL, 354), - NAME_FUNC_OFFSET(17076, glCopyConvolutionFilter2D, glCopyConvolutionFilter2D, NULL, 355), - NAME_FUNC_OFFSET(17105, glGetConvolutionFilter, gl_dispatch_stub_356, gl_dispatch_stub_356, 356), - NAME_FUNC_OFFSET(17131, glGetConvolutionParameterfv, gl_dispatch_stub_357, gl_dispatch_stub_357, 357), - NAME_FUNC_OFFSET(17162, glGetConvolutionParameteriv, gl_dispatch_stub_358, gl_dispatch_stub_358, 358), - NAME_FUNC_OFFSET(17193, glGetSeparableFilter, gl_dispatch_stub_359, gl_dispatch_stub_359, 359), - NAME_FUNC_OFFSET(17217, glSeparableFilter2D, glSeparableFilter2D, NULL, 360), - NAME_FUNC_OFFSET(17240, glGetHistogram, gl_dispatch_stub_361, gl_dispatch_stub_361, 361), - NAME_FUNC_OFFSET(17258, glGetHistogramParameterfv, gl_dispatch_stub_362, gl_dispatch_stub_362, 362), - NAME_FUNC_OFFSET(17287, glGetHistogramParameteriv, gl_dispatch_stub_363, gl_dispatch_stub_363, 363), - NAME_FUNC_OFFSET(17316, glGetMinmax, gl_dispatch_stub_364, gl_dispatch_stub_364, 364), - NAME_FUNC_OFFSET(17331, glGetMinmaxParameterfv, gl_dispatch_stub_365, gl_dispatch_stub_365, 365), - NAME_FUNC_OFFSET(17357, glGetMinmaxParameteriv, gl_dispatch_stub_366, gl_dispatch_stub_366, 366), - NAME_FUNC_OFFSET(17383, glHistogram, glHistogram, NULL, 367), - NAME_FUNC_OFFSET(17398, glMinmax, glMinmax, NULL, 368), - NAME_FUNC_OFFSET(17410, glResetHistogram, glResetHistogram, NULL, 369), - NAME_FUNC_OFFSET(17430, glResetMinmax, glResetMinmax, NULL, 370), - NAME_FUNC_OFFSET(17447, glTexImage3D, glTexImage3D, NULL, 371), - NAME_FUNC_OFFSET(17463, glTexSubImage3D, glTexSubImage3D, NULL, 372), - NAME_FUNC_OFFSET(17482, glCopyTexSubImage3D, glCopyTexSubImage3D, NULL, 373), - NAME_FUNC_OFFSET(17505, glActiveTextureARB, glActiveTextureARB, NULL, 374), - NAME_FUNC_OFFSET(17521, glClientActiveTextureARB, glClientActiveTextureARB, NULL, 375), - NAME_FUNC_OFFSET(17543, glMultiTexCoord1dARB, glMultiTexCoord1dARB, NULL, 376), - NAME_FUNC_OFFSET(17561, glMultiTexCoord1dvARB, glMultiTexCoord1dvARB, NULL, 377), - NAME_FUNC_OFFSET(17580, glMultiTexCoord1fARB, glMultiTexCoord1fARB, NULL, 378), - NAME_FUNC_OFFSET(17598, glMultiTexCoord1fvARB, glMultiTexCoord1fvARB, NULL, 379), - NAME_FUNC_OFFSET(17617, glMultiTexCoord1iARB, glMultiTexCoord1iARB, NULL, 380), - NAME_FUNC_OFFSET(17635, glMultiTexCoord1ivARB, glMultiTexCoord1ivARB, NULL, 381), - NAME_FUNC_OFFSET(17654, glMultiTexCoord1sARB, glMultiTexCoord1sARB, NULL, 382), - NAME_FUNC_OFFSET(17672, glMultiTexCoord1svARB, glMultiTexCoord1svARB, NULL, 383), - NAME_FUNC_OFFSET(17691, glMultiTexCoord2dARB, glMultiTexCoord2dARB, NULL, 384), - NAME_FUNC_OFFSET(17709, glMultiTexCoord2dvARB, glMultiTexCoord2dvARB, NULL, 385), - NAME_FUNC_OFFSET(17728, glMultiTexCoord2fARB, glMultiTexCoord2fARB, NULL, 386), - NAME_FUNC_OFFSET(17746, glMultiTexCoord2fvARB, glMultiTexCoord2fvARB, NULL, 387), - NAME_FUNC_OFFSET(17765, glMultiTexCoord2iARB, glMultiTexCoord2iARB, NULL, 388), - NAME_FUNC_OFFSET(17783, glMultiTexCoord2ivARB, glMultiTexCoord2ivARB, NULL, 389), - NAME_FUNC_OFFSET(17802, glMultiTexCoord2sARB, glMultiTexCoord2sARB, NULL, 390), - NAME_FUNC_OFFSET(17820, glMultiTexCoord2svARB, glMultiTexCoord2svARB, NULL, 391), - NAME_FUNC_OFFSET(17839, glMultiTexCoord3dARB, glMultiTexCoord3dARB, NULL, 392), - NAME_FUNC_OFFSET(17857, glMultiTexCoord3dvARB, glMultiTexCoord3dvARB, NULL, 393), - NAME_FUNC_OFFSET(17876, glMultiTexCoord3fARB, glMultiTexCoord3fARB, NULL, 394), - NAME_FUNC_OFFSET(17894, glMultiTexCoord3fvARB, glMultiTexCoord3fvARB, NULL, 395), - NAME_FUNC_OFFSET(17913, glMultiTexCoord3iARB, glMultiTexCoord3iARB, NULL, 396), - NAME_FUNC_OFFSET(17931, glMultiTexCoord3ivARB, glMultiTexCoord3ivARB, NULL, 397), - NAME_FUNC_OFFSET(17950, glMultiTexCoord3sARB, glMultiTexCoord3sARB, NULL, 398), - NAME_FUNC_OFFSET(17968, glMultiTexCoord3svARB, glMultiTexCoord3svARB, NULL, 399), - NAME_FUNC_OFFSET(17987, glMultiTexCoord4dARB, glMultiTexCoord4dARB, NULL, 400), - NAME_FUNC_OFFSET(18005, glMultiTexCoord4dvARB, glMultiTexCoord4dvARB, NULL, 401), - NAME_FUNC_OFFSET(18024, glMultiTexCoord4fARB, glMultiTexCoord4fARB, NULL, 402), - NAME_FUNC_OFFSET(18042, glMultiTexCoord4fvARB, glMultiTexCoord4fvARB, NULL, 403), - NAME_FUNC_OFFSET(18061, glMultiTexCoord4iARB, glMultiTexCoord4iARB, NULL, 404), - NAME_FUNC_OFFSET(18079, glMultiTexCoord4ivARB, glMultiTexCoord4ivARB, NULL, 405), - NAME_FUNC_OFFSET(18098, glMultiTexCoord4sARB, glMultiTexCoord4sARB, NULL, 406), - NAME_FUNC_OFFSET(18116, glMultiTexCoord4svARB, glMultiTexCoord4svARB, NULL, 407), - NAME_FUNC_OFFSET(18135, glStencilOpSeparate, glStencilOpSeparate, NULL, 423), - NAME_FUNC_OFFSET(18158, glLoadTransposeMatrixdARB, glLoadTransposeMatrixdARB, NULL, 441), - NAME_FUNC_OFFSET(18181, glLoadTransposeMatrixfARB, glLoadTransposeMatrixfARB, NULL, 442), - NAME_FUNC_OFFSET(18204, glMultTransposeMatrixdARB, glMultTransposeMatrixdARB, NULL, 443), - NAME_FUNC_OFFSET(18227, glMultTransposeMatrixfARB, glMultTransposeMatrixfARB, NULL, 444), - NAME_FUNC_OFFSET(18250, glSampleCoverageARB, glSampleCoverageARB, NULL, 445), - NAME_FUNC_OFFSET(18267, glCompressedTexImage1DARB, glCompressedTexImage1DARB, NULL, 446), - NAME_FUNC_OFFSET(18290, glCompressedTexImage2DARB, glCompressedTexImage2DARB, NULL, 447), - NAME_FUNC_OFFSET(18313, glCompressedTexImage3DARB, glCompressedTexImage3DARB, NULL, 448), - NAME_FUNC_OFFSET(18336, glCompressedTexSubImage1DARB, glCompressedTexSubImage1DARB, NULL, 449), - NAME_FUNC_OFFSET(18362, glCompressedTexSubImage2DARB, glCompressedTexSubImage2DARB, NULL, 450), - NAME_FUNC_OFFSET(18388, glCompressedTexSubImage3DARB, glCompressedTexSubImage3DARB, NULL, 451), - NAME_FUNC_OFFSET(18414, glGetCompressedTexImageARB, glGetCompressedTexImageARB, NULL, 452), - NAME_FUNC_OFFSET(18438, glDisableVertexAttribArrayARB, glDisableVertexAttribArrayARB, NULL, 453), - NAME_FUNC_OFFSET(18465, glEnableVertexAttribArrayARB, glEnableVertexAttribArrayARB, NULL, 454), - NAME_FUNC_OFFSET(18491, glGetVertexAttribdvARB, glGetVertexAttribdvARB, NULL, 461), - NAME_FUNC_OFFSET(18511, glGetVertexAttribfvARB, glGetVertexAttribfvARB, NULL, 462), - NAME_FUNC_OFFSET(18531, glGetVertexAttribivARB, glGetVertexAttribivARB, NULL, 463), - NAME_FUNC_OFFSET(18551, glProgramEnvParameter4dARB, glProgramEnvParameter4dARB, NULL, 464), - NAME_FUNC_OFFSET(18574, glProgramEnvParameter4dvARB, glProgramEnvParameter4dvARB, NULL, 465), - NAME_FUNC_OFFSET(18598, glProgramEnvParameter4fARB, glProgramEnvParameter4fARB, NULL, 466), - NAME_FUNC_OFFSET(18621, glProgramEnvParameter4fvARB, glProgramEnvParameter4fvARB, NULL, 467), - NAME_FUNC_OFFSET(18645, glVertexAttrib1dARB, glVertexAttrib1dARB, NULL, 473), - NAME_FUNC_OFFSET(18662, glVertexAttrib1dvARB, glVertexAttrib1dvARB, NULL, 474), - NAME_FUNC_OFFSET(18680, glVertexAttrib1fARB, glVertexAttrib1fARB, NULL, 475), - NAME_FUNC_OFFSET(18697, glVertexAttrib1fvARB, glVertexAttrib1fvARB, NULL, 476), - NAME_FUNC_OFFSET(18715, glVertexAttrib1sARB, glVertexAttrib1sARB, NULL, 477), - NAME_FUNC_OFFSET(18732, glVertexAttrib1svARB, glVertexAttrib1svARB, NULL, 478), - NAME_FUNC_OFFSET(18750, glVertexAttrib2dARB, glVertexAttrib2dARB, NULL, 479), - NAME_FUNC_OFFSET(18767, glVertexAttrib2dvARB, glVertexAttrib2dvARB, NULL, 480), - NAME_FUNC_OFFSET(18785, glVertexAttrib2fARB, glVertexAttrib2fARB, NULL, 481), - NAME_FUNC_OFFSET(18802, glVertexAttrib2fvARB, glVertexAttrib2fvARB, NULL, 482), - NAME_FUNC_OFFSET(18820, glVertexAttrib2sARB, glVertexAttrib2sARB, NULL, 483), - NAME_FUNC_OFFSET(18837, glVertexAttrib2svARB, glVertexAttrib2svARB, NULL, 484), - NAME_FUNC_OFFSET(18855, glVertexAttrib3dARB, glVertexAttrib3dARB, NULL, 485), - NAME_FUNC_OFFSET(18872, glVertexAttrib3dvARB, glVertexAttrib3dvARB, NULL, 486), - NAME_FUNC_OFFSET(18890, glVertexAttrib3fARB, glVertexAttrib3fARB, NULL, 487), - NAME_FUNC_OFFSET(18907, glVertexAttrib3fvARB, glVertexAttrib3fvARB, NULL, 488), - NAME_FUNC_OFFSET(18925, glVertexAttrib3sARB, glVertexAttrib3sARB, NULL, 489), - NAME_FUNC_OFFSET(18942, glVertexAttrib3svARB, glVertexAttrib3svARB, NULL, 490), - NAME_FUNC_OFFSET(18960, glVertexAttrib4NbvARB, glVertexAttrib4NbvARB, NULL, 491), - NAME_FUNC_OFFSET(18979, glVertexAttrib4NivARB, glVertexAttrib4NivARB, NULL, 492), - NAME_FUNC_OFFSET(18998, glVertexAttrib4NsvARB, glVertexAttrib4NsvARB, NULL, 493), - NAME_FUNC_OFFSET(19017, glVertexAttrib4NubARB, glVertexAttrib4NubARB, NULL, 494), - NAME_FUNC_OFFSET(19036, glVertexAttrib4NubvARB, glVertexAttrib4NubvARB, NULL, 495), - NAME_FUNC_OFFSET(19056, glVertexAttrib4NuivARB, glVertexAttrib4NuivARB, NULL, 496), - NAME_FUNC_OFFSET(19076, glVertexAttrib4NusvARB, glVertexAttrib4NusvARB, NULL, 497), - NAME_FUNC_OFFSET(19096, glVertexAttrib4bvARB, glVertexAttrib4bvARB, NULL, 498), - NAME_FUNC_OFFSET(19114, glVertexAttrib4dARB, glVertexAttrib4dARB, NULL, 499), - NAME_FUNC_OFFSET(19131, glVertexAttrib4dvARB, glVertexAttrib4dvARB, NULL, 500), - NAME_FUNC_OFFSET(19149, glVertexAttrib4fARB, glVertexAttrib4fARB, NULL, 501), - NAME_FUNC_OFFSET(19166, glVertexAttrib4fvARB, glVertexAttrib4fvARB, NULL, 502), - NAME_FUNC_OFFSET(19184, glVertexAttrib4ivARB, glVertexAttrib4ivARB, NULL, 503), - NAME_FUNC_OFFSET(19202, glVertexAttrib4sARB, glVertexAttrib4sARB, NULL, 504), - NAME_FUNC_OFFSET(19219, glVertexAttrib4svARB, glVertexAttrib4svARB, NULL, 505), - NAME_FUNC_OFFSET(19237, glVertexAttrib4ubvARB, glVertexAttrib4ubvARB, NULL, 506), - NAME_FUNC_OFFSET(19256, glVertexAttrib4uivARB, glVertexAttrib4uivARB, NULL, 507), - NAME_FUNC_OFFSET(19275, glVertexAttrib4usvARB, glVertexAttrib4usvARB, NULL, 508), - NAME_FUNC_OFFSET(19294, glVertexAttribPointerARB, glVertexAttribPointerARB, NULL, 509), - NAME_FUNC_OFFSET(19316, glBindBufferARB, glBindBufferARB, NULL, 510), - NAME_FUNC_OFFSET(19329, glBufferDataARB, glBufferDataARB, NULL, 511), - NAME_FUNC_OFFSET(19342, glBufferSubDataARB, glBufferSubDataARB, NULL, 512), - NAME_FUNC_OFFSET(19358, glDeleteBuffersARB, glDeleteBuffersARB, NULL, 513), - NAME_FUNC_OFFSET(19374, glGenBuffersARB, glGenBuffersARB, NULL, 514), - NAME_FUNC_OFFSET(19387, glGetBufferParameterivARB, glGetBufferParameterivARB, NULL, 515), - NAME_FUNC_OFFSET(19410, glGetBufferPointervARB, glGetBufferPointervARB, NULL, 516), - NAME_FUNC_OFFSET(19430, glGetBufferSubDataARB, glGetBufferSubDataARB, NULL, 517), - NAME_FUNC_OFFSET(19449, glIsBufferARB, glIsBufferARB, NULL, 518), - NAME_FUNC_OFFSET(19460, glMapBufferARB, glMapBufferARB, NULL, 519), - NAME_FUNC_OFFSET(19472, glUnmapBufferARB, glUnmapBufferARB, NULL, 520), - NAME_FUNC_OFFSET(19486, glBeginQueryARB, glBeginQueryARB, NULL, 521), - NAME_FUNC_OFFSET(19499, glDeleteQueriesARB, glDeleteQueriesARB, NULL, 522), - NAME_FUNC_OFFSET(19515, glEndQueryARB, glEndQueryARB, NULL, 523), - NAME_FUNC_OFFSET(19526, glGenQueriesARB, glGenQueriesARB, NULL, 524), - NAME_FUNC_OFFSET(19539, glGetQueryObjectivARB, glGetQueryObjectivARB, NULL, 525), - NAME_FUNC_OFFSET(19558, glGetQueryObjectuivARB, glGetQueryObjectuivARB, NULL, 526), - NAME_FUNC_OFFSET(19578, glGetQueryivARB, glGetQueryivARB, NULL, 527), - NAME_FUNC_OFFSET(19591, glIsQueryARB, glIsQueryARB, NULL, 528), - NAME_FUNC_OFFSET(19601, glCompileShaderARB, glCompileShaderARB, NULL, 530), - NAME_FUNC_OFFSET(19617, glGetActiveUniformARB, glGetActiveUniformARB, NULL, 535), - NAME_FUNC_OFFSET(19636, glGetShaderSourceARB, glGetShaderSourceARB, NULL, 541), - NAME_FUNC_OFFSET(19654, glGetUniformLocationARB, glGetUniformLocationARB, NULL, 542), - NAME_FUNC_OFFSET(19675, glGetUniformfvARB, glGetUniformfvARB, NULL, 543), - NAME_FUNC_OFFSET(19690, glGetUniformivARB, glGetUniformivARB, NULL, 544), - NAME_FUNC_OFFSET(19705, glLinkProgramARB, glLinkProgramARB, NULL, 545), - NAME_FUNC_OFFSET(19719, glShaderSourceARB, glShaderSourceARB, NULL, 546), - NAME_FUNC_OFFSET(19734, glUniform1fARB, glUniform1fARB, NULL, 547), - NAME_FUNC_OFFSET(19746, glUniform1fvARB, glUniform1fvARB, NULL, 548), - NAME_FUNC_OFFSET(19759, glUniform1iARB, glUniform1iARB, NULL, 549), - NAME_FUNC_OFFSET(19771, glUniform1ivARB, glUniform1ivARB, NULL, 550), - NAME_FUNC_OFFSET(19784, glUniform2fARB, glUniform2fARB, NULL, 551), - NAME_FUNC_OFFSET(19796, glUniform2fvARB, glUniform2fvARB, NULL, 552), - NAME_FUNC_OFFSET(19809, glUniform2iARB, glUniform2iARB, NULL, 553), - NAME_FUNC_OFFSET(19821, glUniform2ivARB, glUniform2ivARB, NULL, 554), - NAME_FUNC_OFFSET(19834, glUniform3fARB, glUniform3fARB, NULL, 555), - NAME_FUNC_OFFSET(19846, glUniform3fvARB, glUniform3fvARB, NULL, 556), - NAME_FUNC_OFFSET(19859, glUniform3iARB, glUniform3iARB, NULL, 557), - NAME_FUNC_OFFSET(19871, glUniform3ivARB, glUniform3ivARB, NULL, 558), - NAME_FUNC_OFFSET(19884, glUniform4fARB, glUniform4fARB, NULL, 559), - NAME_FUNC_OFFSET(19896, glUniform4fvARB, glUniform4fvARB, NULL, 560), - NAME_FUNC_OFFSET(19909, glUniform4iARB, glUniform4iARB, NULL, 561), - NAME_FUNC_OFFSET(19921, glUniform4ivARB, glUniform4ivARB, NULL, 562), - NAME_FUNC_OFFSET(19934, glUniformMatrix2fvARB, glUniformMatrix2fvARB, NULL, 563), - NAME_FUNC_OFFSET(19953, glUniformMatrix3fvARB, glUniformMatrix3fvARB, NULL, 564), - NAME_FUNC_OFFSET(19972, glUniformMatrix4fvARB, glUniformMatrix4fvARB, NULL, 565), - NAME_FUNC_OFFSET(19991, glUseProgramObjectARB, glUseProgramObjectARB, NULL, 566), - NAME_FUNC_OFFSET(20004, glValidateProgramARB, glValidateProgramARB, NULL, 567), - NAME_FUNC_OFFSET(20022, glBindAttribLocationARB, glBindAttribLocationARB, NULL, 568), - NAME_FUNC_OFFSET(20043, glGetActiveAttribARB, glGetActiveAttribARB, NULL, 569), - NAME_FUNC_OFFSET(20061, glGetAttribLocationARB, glGetAttribLocationARB, NULL, 570), - NAME_FUNC_OFFSET(20081, glDrawBuffersARB, glDrawBuffersARB, NULL, 571), - NAME_FUNC_OFFSET(20095, glDrawBuffersARB, glDrawBuffersARB, NULL, 571), - NAME_FUNC_OFFSET(20112, glDrawArraysInstancedARB, glDrawArraysInstancedARB, NULL, 573), - NAME_FUNC_OFFSET(20137, glDrawArraysInstancedARB, glDrawArraysInstancedARB, NULL, 573), - NAME_FUNC_OFFSET(20159, glDrawElementsInstancedARB, glDrawElementsInstancedARB, NULL, 574), - NAME_FUNC_OFFSET(20186, glDrawElementsInstancedARB, glDrawElementsInstancedARB, NULL, 574), - NAME_FUNC_OFFSET(20210, glRenderbufferStorageMultisample, glRenderbufferStorageMultisample, NULL, 575), - NAME_FUNC_OFFSET(20246, gl_dispatch_stub_618, gl_dispatch_stub_618, NULL, 618), - NAME_FUNC_OFFSET(20262, gl_dispatch_stub_619, gl_dispatch_stub_619, NULL, 619), - NAME_FUNC_OFFSET(20281, glPointParameterfEXT, glPointParameterfEXT, NULL, 626), - NAME_FUNC_OFFSET(20299, glPointParameterfEXT, glPointParameterfEXT, NULL, 626), - NAME_FUNC_OFFSET(20320, glPointParameterfEXT, glPointParameterfEXT, NULL, 626), - NAME_FUNC_OFFSET(20342, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 627), - NAME_FUNC_OFFSET(20361, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 627), - NAME_FUNC_OFFSET(20383, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 627), - NAME_FUNC_OFFSET(20406, glSecondaryColor3bEXT, glSecondaryColor3bEXT, NULL, 630), - NAME_FUNC_OFFSET(20425, glSecondaryColor3bvEXT, glSecondaryColor3bvEXT, NULL, 631), - NAME_FUNC_OFFSET(20445, glSecondaryColor3dEXT, glSecondaryColor3dEXT, NULL, 632), - NAME_FUNC_OFFSET(20464, glSecondaryColor3dvEXT, glSecondaryColor3dvEXT, NULL, 633), - NAME_FUNC_OFFSET(20484, glSecondaryColor3fEXT, glSecondaryColor3fEXT, NULL, 634), - NAME_FUNC_OFFSET(20503, glSecondaryColor3fvEXT, glSecondaryColor3fvEXT, NULL, 635), - NAME_FUNC_OFFSET(20523, glSecondaryColor3iEXT, glSecondaryColor3iEXT, NULL, 636), - NAME_FUNC_OFFSET(20542, glSecondaryColor3ivEXT, glSecondaryColor3ivEXT, NULL, 637), - NAME_FUNC_OFFSET(20562, glSecondaryColor3sEXT, glSecondaryColor3sEXT, NULL, 638), - NAME_FUNC_OFFSET(20581, glSecondaryColor3svEXT, glSecondaryColor3svEXT, NULL, 639), - NAME_FUNC_OFFSET(20601, glSecondaryColor3ubEXT, glSecondaryColor3ubEXT, NULL, 640), - NAME_FUNC_OFFSET(20621, glSecondaryColor3ubvEXT, glSecondaryColor3ubvEXT, NULL, 641), - NAME_FUNC_OFFSET(20642, glSecondaryColor3uiEXT, glSecondaryColor3uiEXT, NULL, 642), - NAME_FUNC_OFFSET(20662, glSecondaryColor3uivEXT, glSecondaryColor3uivEXT, NULL, 643), - NAME_FUNC_OFFSET(20683, glSecondaryColor3usEXT, glSecondaryColor3usEXT, NULL, 644), - NAME_FUNC_OFFSET(20703, glSecondaryColor3usvEXT, glSecondaryColor3usvEXT, NULL, 645), - NAME_FUNC_OFFSET(20724, glSecondaryColorPointerEXT, glSecondaryColorPointerEXT, NULL, 646), - NAME_FUNC_OFFSET(20748, glMultiDrawArraysEXT, glMultiDrawArraysEXT, NULL, 647), - NAME_FUNC_OFFSET(20766, glMultiDrawElementsEXT, glMultiDrawElementsEXT, NULL, 648), - NAME_FUNC_OFFSET(20786, glFogCoordPointerEXT, glFogCoordPointerEXT, NULL, 649), - NAME_FUNC_OFFSET(20804, glFogCoorddEXT, glFogCoorddEXT, NULL, 650), - NAME_FUNC_OFFSET(20816, glFogCoorddvEXT, glFogCoorddvEXT, NULL, 651), - NAME_FUNC_OFFSET(20829, glFogCoordfEXT, glFogCoordfEXT, NULL, 652), - NAME_FUNC_OFFSET(20841, glFogCoordfvEXT, glFogCoordfvEXT, NULL, 653), - NAME_FUNC_OFFSET(20854, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, 655), - NAME_FUNC_OFFSET(20874, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, 655), - NAME_FUNC_OFFSET(20898, glWindowPos2dMESA, glWindowPos2dMESA, NULL, 672), - NAME_FUNC_OFFSET(20912, glWindowPos2dMESA, glWindowPos2dMESA, NULL, 672), - NAME_FUNC_OFFSET(20929, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, 673), - NAME_FUNC_OFFSET(20944, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, 673), - NAME_FUNC_OFFSET(20962, glWindowPos2fMESA, glWindowPos2fMESA, NULL, 674), - NAME_FUNC_OFFSET(20976, glWindowPos2fMESA, glWindowPos2fMESA, NULL, 674), - NAME_FUNC_OFFSET(20993, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, 675), - NAME_FUNC_OFFSET(21008, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, 675), - NAME_FUNC_OFFSET(21026, glWindowPos2iMESA, glWindowPos2iMESA, NULL, 676), - NAME_FUNC_OFFSET(21040, glWindowPos2iMESA, glWindowPos2iMESA, NULL, 676), - NAME_FUNC_OFFSET(21057, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, 677), - NAME_FUNC_OFFSET(21072, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, 677), - NAME_FUNC_OFFSET(21090, glWindowPos2sMESA, glWindowPos2sMESA, NULL, 678), - NAME_FUNC_OFFSET(21104, glWindowPos2sMESA, glWindowPos2sMESA, NULL, 678), - NAME_FUNC_OFFSET(21121, glWindowPos2svMESA, glWindowPos2svMESA, NULL, 679), - NAME_FUNC_OFFSET(21136, glWindowPos2svMESA, glWindowPos2svMESA, NULL, 679), - NAME_FUNC_OFFSET(21154, glWindowPos3dMESA, glWindowPos3dMESA, NULL, 680), - NAME_FUNC_OFFSET(21168, glWindowPos3dMESA, glWindowPos3dMESA, NULL, 680), - NAME_FUNC_OFFSET(21185, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, 681), - NAME_FUNC_OFFSET(21200, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, 681), - NAME_FUNC_OFFSET(21218, glWindowPos3fMESA, glWindowPos3fMESA, NULL, 682), - NAME_FUNC_OFFSET(21232, glWindowPos3fMESA, glWindowPos3fMESA, NULL, 682), - NAME_FUNC_OFFSET(21249, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, 683), - NAME_FUNC_OFFSET(21264, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, 683), - NAME_FUNC_OFFSET(21282, glWindowPos3iMESA, glWindowPos3iMESA, NULL, 684), - NAME_FUNC_OFFSET(21296, glWindowPos3iMESA, glWindowPos3iMESA, NULL, 684), - NAME_FUNC_OFFSET(21313, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, 685), - NAME_FUNC_OFFSET(21328, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, 685), - NAME_FUNC_OFFSET(21346, glWindowPos3sMESA, glWindowPos3sMESA, NULL, 686), - NAME_FUNC_OFFSET(21360, glWindowPos3sMESA, glWindowPos3sMESA, NULL, 686), - NAME_FUNC_OFFSET(21377, glWindowPos3svMESA, glWindowPos3svMESA, NULL, 687), - NAME_FUNC_OFFSET(21392, glWindowPos3svMESA, glWindowPos3svMESA, NULL, 687), - NAME_FUNC_OFFSET(21410, glBindProgramNV, glBindProgramNV, NULL, 706), - NAME_FUNC_OFFSET(21427, glDeleteProgramsNV, glDeleteProgramsNV, NULL, 707), - NAME_FUNC_OFFSET(21447, glGenProgramsNV, glGenProgramsNV, NULL, 709), - NAME_FUNC_OFFSET(21464, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, 715), - NAME_FUNC_OFFSET(21490, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, 715), - NAME_FUNC_OFFSET(21519, glIsProgramNV, glIsProgramNV, NULL, 719), - NAME_FUNC_OFFSET(21534, glPointParameteriNV, glPointParameteriNV, NULL, 783), - NAME_FUNC_OFFSET(21552, glPointParameterivNV, glPointParameterivNV, NULL, 784), - NAME_FUNC_OFFSET(21571, gl_dispatch_stub_787, gl_dispatch_stub_787, NULL, 787), - NAME_FUNC_OFFSET(21592, gl_dispatch_stub_789, gl_dispatch_stub_789, NULL, 789), - NAME_FUNC_OFFSET(21608, glPrimitiveRestartIndexNV, glPrimitiveRestartIndexNV, NULL, 796), - NAME_FUNC_OFFSET(21632, gl_dispatch_stub_799, gl_dispatch_stub_799, NULL, 799), - NAME_FUNC_OFFSET(21656, gl_dispatch_stub_799, gl_dispatch_stub_799, NULL, 799), - NAME_FUNC_OFFSET(21683, glBindFramebufferEXT, glBindFramebufferEXT, NULL, 800), - NAME_FUNC_OFFSET(21701, glBindRenderbufferEXT, glBindRenderbufferEXT, NULL, 801), - NAME_FUNC_OFFSET(21720, glCheckFramebufferStatusEXT, glCheckFramebufferStatusEXT, NULL, 802), - NAME_FUNC_OFFSET(21745, glDeleteFramebuffersEXT, glDeleteFramebuffersEXT, NULL, 803), - NAME_FUNC_OFFSET(21766, glDeleteRenderbuffersEXT, glDeleteRenderbuffersEXT, NULL, 804), - NAME_FUNC_OFFSET(21788, glFramebufferRenderbufferEXT, glFramebufferRenderbufferEXT, NULL, 805), - NAME_FUNC_OFFSET(21814, glFramebufferTexture1DEXT, glFramebufferTexture1DEXT, NULL, 806), - NAME_FUNC_OFFSET(21837, glFramebufferTexture2DEXT, glFramebufferTexture2DEXT, NULL, 807), - NAME_FUNC_OFFSET(21860, glFramebufferTexture3DEXT, glFramebufferTexture3DEXT, NULL, 808), - NAME_FUNC_OFFSET(21883, glGenFramebuffersEXT, glGenFramebuffersEXT, NULL, 809), - NAME_FUNC_OFFSET(21901, glGenRenderbuffersEXT, glGenRenderbuffersEXT, NULL, 810), - NAME_FUNC_OFFSET(21920, glGenerateMipmapEXT, glGenerateMipmapEXT, NULL, 811), - NAME_FUNC_OFFSET(21937, glGetFramebufferAttachmentParameterivEXT, glGetFramebufferAttachmentParameterivEXT, NULL, 812), - NAME_FUNC_OFFSET(21975, glGetRenderbufferParameterivEXT, glGetRenderbufferParameterivEXT, NULL, 813), - NAME_FUNC_OFFSET(22004, glIsFramebufferEXT, glIsFramebufferEXT, NULL, 814), - NAME_FUNC_OFFSET(22020, glIsRenderbufferEXT, glIsRenderbufferEXT, NULL, 815), - NAME_FUNC_OFFSET(22037, glRenderbufferStorageEXT, glRenderbufferStorageEXT, NULL, 816), - NAME_FUNC_OFFSET(22059, gl_dispatch_stub_817, gl_dispatch_stub_817, NULL, 817), - NAME_FUNC_OFFSET(22077, glBindFragDataLocationEXT, glBindFragDataLocationEXT, NULL, 820), - NAME_FUNC_OFFSET(22100, glGetFragDataLocationEXT, glGetFragDataLocationEXT, NULL, 821), - NAME_FUNC_OFFSET(22122, glGetUniformuivEXT, glGetUniformuivEXT, NULL, 822), - NAME_FUNC_OFFSET(22138, glGetVertexAttribIivEXT, glGetVertexAttribIivEXT, NULL, 823), - NAME_FUNC_OFFSET(22159, glGetVertexAttribIuivEXT, glGetVertexAttribIuivEXT, NULL, 824), - NAME_FUNC_OFFSET(22181, glUniform1uiEXT, glUniform1uiEXT, NULL, 825), - NAME_FUNC_OFFSET(22194, glUniform1uivEXT, glUniform1uivEXT, NULL, 826), - NAME_FUNC_OFFSET(22208, glUniform2uiEXT, glUniform2uiEXT, NULL, 827), - NAME_FUNC_OFFSET(22221, glUniform2uivEXT, glUniform2uivEXT, NULL, 828), - NAME_FUNC_OFFSET(22235, glUniform3uiEXT, glUniform3uiEXT, NULL, 829), - NAME_FUNC_OFFSET(22248, glUniform3uivEXT, glUniform3uivEXT, NULL, 830), - NAME_FUNC_OFFSET(22262, glUniform4uiEXT, glUniform4uiEXT, NULL, 831), - NAME_FUNC_OFFSET(22275, glUniform4uivEXT, glUniform4uivEXT, NULL, 832), - NAME_FUNC_OFFSET(22289, glVertexAttribI1iEXT, glVertexAttribI1iEXT, NULL, 833), - NAME_FUNC_OFFSET(22307, glVertexAttribI1ivEXT, glVertexAttribI1ivEXT, NULL, 834), - NAME_FUNC_OFFSET(22326, glVertexAttribI1uiEXT, glVertexAttribI1uiEXT, NULL, 835), - NAME_FUNC_OFFSET(22345, glVertexAttribI1uivEXT, glVertexAttribI1uivEXT, NULL, 836), - NAME_FUNC_OFFSET(22365, glVertexAttribI2iEXT, glVertexAttribI2iEXT, NULL, 837), - NAME_FUNC_OFFSET(22383, glVertexAttribI2ivEXT, glVertexAttribI2ivEXT, NULL, 838), - NAME_FUNC_OFFSET(22402, glVertexAttribI2uiEXT, glVertexAttribI2uiEXT, NULL, 839), - NAME_FUNC_OFFSET(22421, glVertexAttribI2uivEXT, glVertexAttribI2uivEXT, NULL, 840), - NAME_FUNC_OFFSET(22441, glVertexAttribI3iEXT, glVertexAttribI3iEXT, NULL, 841), - NAME_FUNC_OFFSET(22459, glVertexAttribI3ivEXT, glVertexAttribI3ivEXT, NULL, 842), - NAME_FUNC_OFFSET(22478, glVertexAttribI3uiEXT, glVertexAttribI3uiEXT, NULL, 843), - NAME_FUNC_OFFSET(22497, glVertexAttribI3uivEXT, glVertexAttribI3uivEXT, NULL, 844), - NAME_FUNC_OFFSET(22517, glVertexAttribI4bvEXT, glVertexAttribI4bvEXT, NULL, 845), - NAME_FUNC_OFFSET(22536, glVertexAttribI4iEXT, glVertexAttribI4iEXT, NULL, 846), - NAME_FUNC_OFFSET(22554, glVertexAttribI4ivEXT, glVertexAttribI4ivEXT, NULL, 847), - NAME_FUNC_OFFSET(22573, glVertexAttribI4svEXT, glVertexAttribI4svEXT, NULL, 848), - NAME_FUNC_OFFSET(22592, glVertexAttribI4ubvEXT, glVertexAttribI4ubvEXT, NULL, 849), - NAME_FUNC_OFFSET(22612, glVertexAttribI4uiEXT, glVertexAttribI4uiEXT, NULL, 850), - NAME_FUNC_OFFSET(22631, glVertexAttribI4uivEXT, glVertexAttribI4uivEXT, NULL, 851), - NAME_FUNC_OFFSET(22651, glVertexAttribI4usvEXT, glVertexAttribI4usvEXT, NULL, 852), - NAME_FUNC_OFFSET(22671, glVertexAttribIPointerEXT, glVertexAttribIPointerEXT, NULL, 853), - NAME_FUNC_OFFSET(22694, glFramebufferTextureLayerEXT, glFramebufferTextureLayerEXT, NULL, 854), - NAME_FUNC_OFFSET(22720, glColorMaskIndexedEXT, glColorMaskIndexedEXT, NULL, 855), - NAME_FUNC_OFFSET(22733, glDisableIndexedEXT, glDisableIndexedEXT, NULL, 856), - NAME_FUNC_OFFSET(22744, glEnableIndexedEXT, glEnableIndexedEXT, NULL, 857), - NAME_FUNC_OFFSET(22754, glGetBooleanIndexedvEXT, glGetBooleanIndexedvEXT, NULL, 858), - NAME_FUNC_OFFSET(22770, glGetIntegerIndexedvEXT, glGetIntegerIndexedvEXT, NULL, 859), - NAME_FUNC_OFFSET(22786, glIsEnabledIndexedEXT, glIsEnabledIndexedEXT, NULL, 860), - NAME_FUNC_OFFSET(22799, glGetTexParameterIivEXT, glGetTexParameterIivEXT, NULL, 863), - NAME_FUNC_OFFSET(22820, glGetTexParameterIuivEXT, glGetTexParameterIuivEXT, NULL, 864), - NAME_FUNC_OFFSET(22842, glTexParameterIivEXT, glTexParameterIivEXT, NULL, 865), - NAME_FUNC_OFFSET(22860, glTexParameterIuivEXT, glTexParameterIuivEXT, NULL, 866), - NAME_FUNC_OFFSET(22879, glBeginConditionalRenderNV, glBeginConditionalRenderNV, NULL, 867), - NAME_FUNC_OFFSET(22904, glEndConditionalRenderNV, glEndConditionalRenderNV, NULL, 868), - NAME_FUNC_OFFSET(22927, glBeginTransformFeedbackEXT, glBeginTransformFeedbackEXT, NULL, 869), - NAME_FUNC_OFFSET(22952, glBindBufferBaseEXT, glBindBufferBaseEXT, NULL, 870), - NAME_FUNC_OFFSET(22969, glBindBufferRangeEXT, glBindBufferRangeEXT, NULL, 872), - NAME_FUNC_OFFSET(22987, glEndTransformFeedbackEXT, glEndTransformFeedbackEXT, NULL, 873), - NAME_FUNC_OFFSET(23010, glGetTransformFeedbackVaryingEXT, glGetTransformFeedbackVaryingEXT, NULL, 874), - NAME_FUNC_OFFSET(23040, glTransformFeedbackVaryingsEXT, glTransformFeedbackVaryingsEXT, NULL, 875), - NAME_FUNC_OFFSET(23068, glProvokingVertexEXT, glProvokingVertexEXT, NULL, 876), + NAME_FUNC_OFFSET(11954, gl_dispatch_stub_703, gl_dispatch_stub_703, NULL, 703), + NAME_FUNC_OFFSET(11966, gl_dispatch_stub_704, gl_dispatch_stub_704, NULL, 704), + NAME_FUNC_OFFSET(11979, gl_dispatch_stub_705, gl_dispatch_stub_705, NULL, 705), + NAME_FUNC_OFFSET(11993, glAreProgramsResidentNV, glAreProgramsResidentNV, NULL, 706), + NAME_FUNC_OFFSET(12017, glBindProgramNV, glBindProgramNV, NULL, 707), + NAME_FUNC_OFFSET(12033, glDeleteProgramsNV, glDeleteProgramsNV, NULL, 708), + NAME_FUNC_OFFSET(12052, glExecuteProgramNV, glExecuteProgramNV, NULL, 709), + NAME_FUNC_OFFSET(12071, glGenProgramsNV, glGenProgramsNV, NULL, 710), + NAME_FUNC_OFFSET(12087, glGetProgramParameterdvNV, glGetProgramParameterdvNV, NULL, 711), + NAME_FUNC_OFFSET(12113, glGetProgramParameterfvNV, glGetProgramParameterfvNV, NULL, 712), + NAME_FUNC_OFFSET(12139, glGetProgramStringNV, glGetProgramStringNV, NULL, 713), + NAME_FUNC_OFFSET(12160, glGetProgramivNV, glGetProgramivNV, NULL, 714), + NAME_FUNC_OFFSET(12177, glGetTrackMatrixivNV, glGetTrackMatrixivNV, NULL, 715), + NAME_FUNC_OFFSET(12198, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, 716), + NAME_FUNC_OFFSET(12226, glGetVertexAttribdvNV, glGetVertexAttribdvNV, NULL, 717), + NAME_FUNC_OFFSET(12248, glGetVertexAttribfvNV, glGetVertexAttribfvNV, NULL, 718), + NAME_FUNC_OFFSET(12270, glGetVertexAttribivNV, glGetVertexAttribivNV, NULL, 719), + NAME_FUNC_OFFSET(12292, glIsProgramNV, glIsProgramNV, NULL, 720), + NAME_FUNC_OFFSET(12306, glLoadProgramNV, glLoadProgramNV, NULL, 721), + NAME_FUNC_OFFSET(12322, glProgramParameters4dvNV, glProgramParameters4dvNV, NULL, 722), + NAME_FUNC_OFFSET(12347, glProgramParameters4fvNV, glProgramParameters4fvNV, NULL, 723), + NAME_FUNC_OFFSET(12372, glRequestResidentProgramsNV, glRequestResidentProgramsNV, NULL, 724), + NAME_FUNC_OFFSET(12400, glTrackMatrixNV, glTrackMatrixNV, NULL, 725), + NAME_FUNC_OFFSET(12416, glVertexAttrib1dNV, glVertexAttrib1dNV, NULL, 726), + NAME_FUNC_OFFSET(12435, glVertexAttrib1dvNV, glVertexAttrib1dvNV, NULL, 727), + NAME_FUNC_OFFSET(12455, glVertexAttrib1fNV, glVertexAttrib1fNV, NULL, 728), + NAME_FUNC_OFFSET(12474, glVertexAttrib1fvNV, glVertexAttrib1fvNV, NULL, 729), + NAME_FUNC_OFFSET(12494, glVertexAttrib1sNV, glVertexAttrib1sNV, NULL, 730), + NAME_FUNC_OFFSET(12513, glVertexAttrib1svNV, glVertexAttrib1svNV, NULL, 731), + NAME_FUNC_OFFSET(12533, glVertexAttrib2dNV, glVertexAttrib2dNV, NULL, 732), + NAME_FUNC_OFFSET(12552, glVertexAttrib2dvNV, glVertexAttrib2dvNV, NULL, 733), + NAME_FUNC_OFFSET(12572, glVertexAttrib2fNV, glVertexAttrib2fNV, NULL, 734), + NAME_FUNC_OFFSET(12591, glVertexAttrib2fvNV, glVertexAttrib2fvNV, NULL, 735), + NAME_FUNC_OFFSET(12611, glVertexAttrib2sNV, glVertexAttrib2sNV, NULL, 736), + NAME_FUNC_OFFSET(12630, glVertexAttrib2svNV, glVertexAttrib2svNV, NULL, 737), + NAME_FUNC_OFFSET(12650, glVertexAttrib3dNV, glVertexAttrib3dNV, NULL, 738), + NAME_FUNC_OFFSET(12669, glVertexAttrib3dvNV, glVertexAttrib3dvNV, NULL, 739), + NAME_FUNC_OFFSET(12689, glVertexAttrib3fNV, glVertexAttrib3fNV, NULL, 740), + NAME_FUNC_OFFSET(12708, glVertexAttrib3fvNV, glVertexAttrib3fvNV, NULL, 741), + NAME_FUNC_OFFSET(12728, glVertexAttrib3sNV, glVertexAttrib3sNV, NULL, 742), + NAME_FUNC_OFFSET(12747, glVertexAttrib3svNV, glVertexAttrib3svNV, NULL, 743), + NAME_FUNC_OFFSET(12767, glVertexAttrib4dNV, glVertexAttrib4dNV, NULL, 744), + NAME_FUNC_OFFSET(12786, glVertexAttrib4dvNV, glVertexAttrib4dvNV, NULL, 745), + NAME_FUNC_OFFSET(12806, glVertexAttrib4fNV, glVertexAttrib4fNV, NULL, 746), + NAME_FUNC_OFFSET(12825, glVertexAttrib4fvNV, glVertexAttrib4fvNV, NULL, 747), + NAME_FUNC_OFFSET(12845, glVertexAttrib4sNV, glVertexAttrib4sNV, NULL, 748), + NAME_FUNC_OFFSET(12864, glVertexAttrib4svNV, glVertexAttrib4svNV, NULL, 749), + NAME_FUNC_OFFSET(12884, glVertexAttrib4ubNV, glVertexAttrib4ubNV, NULL, 750), + NAME_FUNC_OFFSET(12904, glVertexAttrib4ubvNV, glVertexAttrib4ubvNV, NULL, 751), + NAME_FUNC_OFFSET(12925, glVertexAttribPointerNV, glVertexAttribPointerNV, NULL, 752), + NAME_FUNC_OFFSET(12949, glVertexAttribs1dvNV, glVertexAttribs1dvNV, NULL, 753), + NAME_FUNC_OFFSET(12970, glVertexAttribs1fvNV, glVertexAttribs1fvNV, NULL, 754), + NAME_FUNC_OFFSET(12991, glVertexAttribs1svNV, glVertexAttribs1svNV, NULL, 755), + NAME_FUNC_OFFSET(13012, glVertexAttribs2dvNV, glVertexAttribs2dvNV, NULL, 756), + NAME_FUNC_OFFSET(13033, glVertexAttribs2fvNV, glVertexAttribs2fvNV, NULL, 757), + NAME_FUNC_OFFSET(13054, glVertexAttribs2svNV, glVertexAttribs2svNV, NULL, 758), + NAME_FUNC_OFFSET(13075, glVertexAttribs3dvNV, glVertexAttribs3dvNV, NULL, 759), + NAME_FUNC_OFFSET(13096, glVertexAttribs3fvNV, glVertexAttribs3fvNV, NULL, 760), + NAME_FUNC_OFFSET(13117, glVertexAttribs3svNV, glVertexAttribs3svNV, NULL, 761), + NAME_FUNC_OFFSET(13138, glVertexAttribs4dvNV, glVertexAttribs4dvNV, NULL, 762), + NAME_FUNC_OFFSET(13159, glVertexAttribs4fvNV, glVertexAttribs4fvNV, NULL, 763), + NAME_FUNC_OFFSET(13180, glVertexAttribs4svNV, glVertexAttribs4svNV, NULL, 764), + NAME_FUNC_OFFSET(13201, glVertexAttribs4ubvNV, glVertexAttribs4ubvNV, NULL, 765), + NAME_FUNC_OFFSET(13223, glGetTexBumpParameterfvATI, glGetTexBumpParameterfvATI, NULL, 766), + NAME_FUNC_OFFSET(13250, glGetTexBumpParameterivATI, glGetTexBumpParameterivATI, NULL, 767), + NAME_FUNC_OFFSET(13277, glTexBumpParameterfvATI, glTexBumpParameterfvATI, NULL, 768), + NAME_FUNC_OFFSET(13301, glTexBumpParameterivATI, glTexBumpParameterivATI, NULL, 769), + NAME_FUNC_OFFSET(13325, glAlphaFragmentOp1ATI, glAlphaFragmentOp1ATI, NULL, 770), + NAME_FUNC_OFFSET(13347, glAlphaFragmentOp2ATI, glAlphaFragmentOp2ATI, NULL, 771), + NAME_FUNC_OFFSET(13369, glAlphaFragmentOp3ATI, glAlphaFragmentOp3ATI, NULL, 772), + NAME_FUNC_OFFSET(13391, glBeginFragmentShaderATI, glBeginFragmentShaderATI, NULL, 773), + NAME_FUNC_OFFSET(13416, glBindFragmentShaderATI, glBindFragmentShaderATI, NULL, 774), + NAME_FUNC_OFFSET(13440, glColorFragmentOp1ATI, glColorFragmentOp1ATI, NULL, 775), + NAME_FUNC_OFFSET(13462, glColorFragmentOp2ATI, glColorFragmentOp2ATI, NULL, 776), + NAME_FUNC_OFFSET(13484, glColorFragmentOp3ATI, glColorFragmentOp3ATI, NULL, 777), + NAME_FUNC_OFFSET(13506, glDeleteFragmentShaderATI, glDeleteFragmentShaderATI, NULL, 778), + NAME_FUNC_OFFSET(13532, glEndFragmentShaderATI, glEndFragmentShaderATI, NULL, 779), + NAME_FUNC_OFFSET(13555, glGenFragmentShadersATI, glGenFragmentShadersATI, NULL, 780), + NAME_FUNC_OFFSET(13579, glPassTexCoordATI, glPassTexCoordATI, NULL, 781), + NAME_FUNC_OFFSET(13597, glSampleMapATI, glSampleMapATI, NULL, 782), + NAME_FUNC_OFFSET(13612, glSetFragmentShaderConstantATI, glSetFragmentShaderConstantATI, NULL, 783), + NAME_FUNC_OFFSET(13643, glPointParameteriNV, glPointParameteriNV, NULL, 784), + NAME_FUNC_OFFSET(13663, glPointParameterivNV, glPointParameterivNV, NULL, 785), + NAME_FUNC_OFFSET(13684, gl_dispatch_stub_786, gl_dispatch_stub_786, NULL, 786), + NAME_FUNC_OFFSET(13707, gl_dispatch_stub_787, gl_dispatch_stub_787, NULL, 787), + NAME_FUNC_OFFSET(13730, gl_dispatch_stub_788, gl_dispatch_stub_788, NULL, 788), + NAME_FUNC_OFFSET(13756, gl_dispatch_stub_789, gl_dispatch_stub_789, NULL, 789), + NAME_FUNC_OFFSET(13779, gl_dispatch_stub_790, gl_dispatch_stub_790, NULL, 790), + NAME_FUNC_OFFSET(13800, glGetProgramNamedParameterdvNV, glGetProgramNamedParameterdvNV, NULL, 791), + NAME_FUNC_OFFSET(13831, glGetProgramNamedParameterfvNV, glGetProgramNamedParameterfvNV, NULL, 792), + NAME_FUNC_OFFSET(13862, glProgramNamedParameter4dNV, glProgramNamedParameter4dNV, NULL, 793), + NAME_FUNC_OFFSET(13890, glProgramNamedParameter4dvNV, glProgramNamedParameter4dvNV, NULL, 794), + NAME_FUNC_OFFSET(13919, glProgramNamedParameter4fNV, glProgramNamedParameter4fNV, NULL, 795), + NAME_FUNC_OFFSET(13947, glProgramNamedParameter4fvNV, glProgramNamedParameter4fvNV, NULL, 796), + NAME_FUNC_OFFSET(13976, glPrimitiveRestartIndexNV, glPrimitiveRestartIndexNV, NULL, 797), + NAME_FUNC_OFFSET(14002, glPrimitiveRestartNV, glPrimitiveRestartNV, NULL, 798), + NAME_FUNC_OFFSET(14023, gl_dispatch_stub_799, gl_dispatch_stub_799, NULL, 799), + NAME_FUNC_OFFSET(14040, gl_dispatch_stub_800, gl_dispatch_stub_800, NULL, 800), + NAME_FUNC_OFFSET(14067, glBindFramebufferEXT, glBindFramebufferEXT, NULL, 801), + NAME_FUNC_OFFSET(14088, glBindRenderbufferEXT, glBindRenderbufferEXT, NULL, 802), + NAME_FUNC_OFFSET(14110, glCheckFramebufferStatusEXT, glCheckFramebufferStatusEXT, NULL, 803), + NAME_FUNC_OFFSET(14138, glDeleteFramebuffersEXT, glDeleteFramebuffersEXT, NULL, 804), + NAME_FUNC_OFFSET(14162, glDeleteRenderbuffersEXT, glDeleteRenderbuffersEXT, NULL, 805), + NAME_FUNC_OFFSET(14187, glFramebufferRenderbufferEXT, glFramebufferRenderbufferEXT, NULL, 806), + NAME_FUNC_OFFSET(14216, glFramebufferTexture1DEXT, glFramebufferTexture1DEXT, NULL, 807), + NAME_FUNC_OFFSET(14242, glFramebufferTexture2DEXT, glFramebufferTexture2DEXT, NULL, 808), + NAME_FUNC_OFFSET(14268, glFramebufferTexture3DEXT, glFramebufferTexture3DEXT, NULL, 809), + NAME_FUNC_OFFSET(14294, glGenFramebuffersEXT, glGenFramebuffersEXT, NULL, 810), + NAME_FUNC_OFFSET(14315, glGenRenderbuffersEXT, glGenRenderbuffersEXT, NULL, 811), + NAME_FUNC_OFFSET(14337, glGenerateMipmapEXT, glGenerateMipmapEXT, NULL, 812), + NAME_FUNC_OFFSET(14357, glGetFramebufferAttachmentParameterivEXT, glGetFramebufferAttachmentParameterivEXT, NULL, 813), + NAME_FUNC_OFFSET(14398, glGetRenderbufferParameterivEXT, glGetRenderbufferParameterivEXT, NULL, 814), + NAME_FUNC_OFFSET(14430, glIsFramebufferEXT, glIsFramebufferEXT, NULL, 815), + NAME_FUNC_OFFSET(14449, glIsRenderbufferEXT, glIsRenderbufferEXT, NULL, 816), + NAME_FUNC_OFFSET(14469, glRenderbufferStorageEXT, glRenderbufferStorageEXT, NULL, 817), + NAME_FUNC_OFFSET(14494, gl_dispatch_stub_818, gl_dispatch_stub_818, NULL, 818), + NAME_FUNC_OFFSET(14515, gl_dispatch_stub_819, gl_dispatch_stub_819, NULL, 819), + NAME_FUNC_OFFSET(14539, gl_dispatch_stub_820, gl_dispatch_stub_820, NULL, 820), + NAME_FUNC_OFFSET(14569, glBindFragDataLocationEXT, glBindFragDataLocationEXT, NULL, 821), + NAME_FUNC_OFFSET(14595, glGetFragDataLocationEXT, glGetFragDataLocationEXT, NULL, 822), + NAME_FUNC_OFFSET(14620, glGetUniformuivEXT, glGetUniformuivEXT, NULL, 823), + NAME_FUNC_OFFSET(14639, glGetVertexAttribIivEXT, glGetVertexAttribIivEXT, NULL, 824), + NAME_FUNC_OFFSET(14663, glGetVertexAttribIuivEXT, glGetVertexAttribIuivEXT, NULL, 825), + NAME_FUNC_OFFSET(14688, glUniform1uiEXT, glUniform1uiEXT, NULL, 826), + NAME_FUNC_OFFSET(14704, glUniform1uivEXT, glUniform1uivEXT, NULL, 827), + NAME_FUNC_OFFSET(14721, glUniform2uiEXT, glUniform2uiEXT, NULL, 828), + NAME_FUNC_OFFSET(14737, glUniform2uivEXT, glUniform2uivEXT, NULL, 829), + NAME_FUNC_OFFSET(14754, glUniform3uiEXT, glUniform3uiEXT, NULL, 830), + NAME_FUNC_OFFSET(14770, glUniform3uivEXT, glUniform3uivEXT, NULL, 831), + NAME_FUNC_OFFSET(14787, glUniform4uiEXT, glUniform4uiEXT, NULL, 832), + NAME_FUNC_OFFSET(14803, glUniform4uivEXT, glUniform4uivEXT, NULL, 833), + NAME_FUNC_OFFSET(14820, glVertexAttribI1iEXT, glVertexAttribI1iEXT, NULL, 834), + NAME_FUNC_OFFSET(14841, glVertexAttribI1ivEXT, glVertexAttribI1ivEXT, NULL, 835), + NAME_FUNC_OFFSET(14863, glVertexAttribI1uiEXT, glVertexAttribI1uiEXT, NULL, 836), + NAME_FUNC_OFFSET(14885, glVertexAttribI1uivEXT, glVertexAttribI1uivEXT, NULL, 837), + NAME_FUNC_OFFSET(14908, glVertexAttribI2iEXT, glVertexAttribI2iEXT, NULL, 838), + NAME_FUNC_OFFSET(14929, glVertexAttribI2ivEXT, glVertexAttribI2ivEXT, NULL, 839), + NAME_FUNC_OFFSET(14951, glVertexAttribI2uiEXT, glVertexAttribI2uiEXT, NULL, 840), + NAME_FUNC_OFFSET(14973, glVertexAttribI2uivEXT, glVertexAttribI2uivEXT, NULL, 841), + NAME_FUNC_OFFSET(14996, glVertexAttribI3iEXT, glVertexAttribI3iEXT, NULL, 842), + NAME_FUNC_OFFSET(15017, glVertexAttribI3ivEXT, glVertexAttribI3ivEXT, NULL, 843), + NAME_FUNC_OFFSET(15039, glVertexAttribI3uiEXT, glVertexAttribI3uiEXT, NULL, 844), + NAME_FUNC_OFFSET(15061, glVertexAttribI3uivEXT, glVertexAttribI3uivEXT, NULL, 845), + NAME_FUNC_OFFSET(15084, glVertexAttribI4bvEXT, glVertexAttribI4bvEXT, NULL, 846), + NAME_FUNC_OFFSET(15106, glVertexAttribI4iEXT, glVertexAttribI4iEXT, NULL, 847), + NAME_FUNC_OFFSET(15127, glVertexAttribI4ivEXT, glVertexAttribI4ivEXT, NULL, 848), + NAME_FUNC_OFFSET(15149, glVertexAttribI4svEXT, glVertexAttribI4svEXT, NULL, 849), + NAME_FUNC_OFFSET(15171, glVertexAttribI4ubvEXT, glVertexAttribI4ubvEXT, NULL, 850), + NAME_FUNC_OFFSET(15194, glVertexAttribI4uiEXT, glVertexAttribI4uiEXT, NULL, 851), + NAME_FUNC_OFFSET(15216, glVertexAttribI4uivEXT, glVertexAttribI4uivEXT, NULL, 852), + NAME_FUNC_OFFSET(15239, glVertexAttribI4usvEXT, glVertexAttribI4usvEXT, NULL, 853), + NAME_FUNC_OFFSET(15262, glVertexAttribIPointerEXT, glVertexAttribIPointerEXT, NULL, 854), + NAME_FUNC_OFFSET(15288, glFramebufferTextureLayerEXT, glFramebufferTextureLayerEXT, NULL, 855), + NAME_FUNC_OFFSET(15317, glColorMaskIndexedEXT, glColorMaskIndexedEXT, NULL, 856), + NAME_FUNC_OFFSET(15339, glDisableIndexedEXT, glDisableIndexedEXT, NULL, 857), + NAME_FUNC_OFFSET(15359, glEnableIndexedEXT, glEnableIndexedEXT, NULL, 858), + NAME_FUNC_OFFSET(15378, glGetBooleanIndexedvEXT, glGetBooleanIndexedvEXT, NULL, 859), + NAME_FUNC_OFFSET(15402, glGetIntegerIndexedvEXT, glGetIntegerIndexedvEXT, NULL, 860), + NAME_FUNC_OFFSET(15426, glIsEnabledIndexedEXT, glIsEnabledIndexedEXT, NULL, 861), + NAME_FUNC_OFFSET(15448, glClearColorIiEXT, glClearColorIiEXT, NULL, 862), + NAME_FUNC_OFFSET(15466, glClearColorIuiEXT, glClearColorIuiEXT, NULL, 863), + NAME_FUNC_OFFSET(15485, glGetTexParameterIivEXT, glGetTexParameterIivEXT, NULL, 864), + NAME_FUNC_OFFSET(15509, glGetTexParameterIuivEXT, glGetTexParameterIuivEXT, NULL, 865), + NAME_FUNC_OFFSET(15534, glTexParameterIivEXT, glTexParameterIivEXT, NULL, 866), + NAME_FUNC_OFFSET(15555, glTexParameterIuivEXT, glTexParameterIuivEXT, NULL, 867), + NAME_FUNC_OFFSET(15577, glBeginConditionalRenderNV, glBeginConditionalRenderNV, NULL, 868), + NAME_FUNC_OFFSET(15604, glEndConditionalRenderNV, glEndConditionalRenderNV, NULL, 869), + NAME_FUNC_OFFSET(15629, glBeginTransformFeedbackEXT, glBeginTransformFeedbackEXT, NULL, 870), + NAME_FUNC_OFFSET(15657, glBindBufferBaseEXT, glBindBufferBaseEXT, NULL, 871), + NAME_FUNC_OFFSET(15677, glBindBufferOffsetEXT, glBindBufferOffsetEXT, NULL, 872), + NAME_FUNC_OFFSET(15699, glBindBufferRangeEXT, glBindBufferRangeEXT, NULL, 873), + NAME_FUNC_OFFSET(15720, glEndTransformFeedbackEXT, glEndTransformFeedbackEXT, NULL, 874), + NAME_FUNC_OFFSET(15746, glGetTransformFeedbackVaryingEXT, glGetTransformFeedbackVaryingEXT, NULL, 875), + NAME_FUNC_OFFSET(15779, glTransformFeedbackVaryingsEXT, glTransformFeedbackVaryingsEXT, NULL, 876), + NAME_FUNC_OFFSET(15810, glProvokingVertexEXT, glProvokingVertexEXT, NULL, 877), + NAME_FUNC_OFFSET(15831, gl_dispatch_stub_878, gl_dispatch_stub_878, NULL, 878), + NAME_FUNC_OFFSET(15862, gl_dispatch_stub_879, gl_dispatch_stub_879, NULL, 879), + NAME_FUNC_OFFSET(15882, glGetObjectParameterivAPPLE, glGetObjectParameterivAPPLE, NULL, 880), + NAME_FUNC_OFFSET(15910, glObjectPurgeableAPPLE, glObjectPurgeableAPPLE, NULL, 881), + NAME_FUNC_OFFSET(15933, glObjectUnpurgeableAPPLE, glObjectUnpurgeableAPPLE, NULL, 882), + NAME_FUNC_OFFSET(15958, glActiveProgramEXT, glActiveProgramEXT, NULL, 883), + NAME_FUNC_OFFSET(15977, glCreateShaderProgramEXT, glCreateShaderProgramEXT, NULL, 884), + NAME_FUNC_OFFSET(16002, glUseShaderProgramEXT, glUseShaderProgramEXT, NULL, 885), + NAME_FUNC_OFFSET(16024, glTextureBarrierNV, glTextureBarrierNV, NULL, 886), + NAME_FUNC_OFFSET(16043, gl_dispatch_stub_887, gl_dispatch_stub_887, NULL, 887), + NAME_FUNC_OFFSET(16068, gl_dispatch_stub_888, gl_dispatch_stub_888, NULL, 888), + NAME_FUNC_OFFSET(16097, gl_dispatch_stub_889, gl_dispatch_stub_889, NULL, 889), + NAME_FUNC_OFFSET(16128, gl_dispatch_stub_890, gl_dispatch_stub_890, NULL, 890), + NAME_FUNC_OFFSET(16152, gl_dispatch_stub_891, gl_dispatch_stub_891, NULL, 891), + NAME_FUNC_OFFSET(16177, glEGLImageTargetRenderbufferStorageOES, glEGLImageTargetRenderbufferStorageOES, NULL, 892), + NAME_FUNC_OFFSET(16216, glEGLImageTargetTexture2DOES, glEGLImageTargetTexture2DOES, NULL, 893), + NAME_FUNC_OFFSET(16245, glArrayElement, glArrayElement, NULL, 306), + NAME_FUNC_OFFSET(16263, glBindTexture, glBindTexture, NULL, 307), + NAME_FUNC_OFFSET(16280, glDrawArrays, glDrawArrays, NULL, 310), + NAME_FUNC_OFFSET(16296, glAreTexturesResident, glAreTexturesResidentEXT, glAreTexturesResidentEXT, 322), + NAME_FUNC_OFFSET(16321, glCopyTexImage1D, glCopyTexImage1D, NULL, 323), + NAME_FUNC_OFFSET(16341, glCopyTexImage2D, glCopyTexImage2D, NULL, 324), + NAME_FUNC_OFFSET(16361, glCopyTexSubImage1D, glCopyTexSubImage1D, NULL, 325), + NAME_FUNC_OFFSET(16384, glCopyTexSubImage2D, glCopyTexSubImage2D, NULL, 326), + NAME_FUNC_OFFSET(16407, glDeleteTextures, glDeleteTexturesEXT, glDeleteTexturesEXT, 327), + NAME_FUNC_OFFSET(16427, glGenTextures, glGenTexturesEXT, glGenTexturesEXT, 328), + NAME_FUNC_OFFSET(16444, glGetPointerv, glGetPointerv, NULL, 329), + NAME_FUNC_OFFSET(16461, glIsTexture, glIsTextureEXT, glIsTextureEXT, 330), + NAME_FUNC_OFFSET(16476, glPrioritizeTextures, glPrioritizeTextures, NULL, 331), + NAME_FUNC_OFFSET(16500, glTexSubImage1D, glTexSubImage1D, NULL, 332), + NAME_FUNC_OFFSET(16519, glTexSubImage2D, glTexSubImage2D, NULL, 333), + NAME_FUNC_OFFSET(16538, glBlendColor, glBlendColor, NULL, 336), + NAME_FUNC_OFFSET(16554, glBlendEquation, glBlendEquation, NULL, 337), + NAME_FUNC_OFFSET(16573, glDrawRangeElements, glDrawRangeElements, NULL, 338), + NAME_FUNC_OFFSET(16596, glColorTable, glColorTable, NULL, 339), + NAME_FUNC_OFFSET(16612, glColorTable, glColorTable, NULL, 339), + NAME_FUNC_OFFSET(16628, glColorTableParameterfv, glColorTableParameterfv, NULL, 340), + NAME_FUNC_OFFSET(16655, glColorTableParameteriv, glColorTableParameteriv, NULL, 341), + NAME_FUNC_OFFSET(16682, glCopyColorTable, glCopyColorTable, NULL, 342), + NAME_FUNC_OFFSET(16702, glGetColorTable, glGetColorTableEXT, glGetColorTableEXT, 343), + NAME_FUNC_OFFSET(16721, glGetColorTable, glGetColorTableEXT, glGetColorTableEXT, 343), + NAME_FUNC_OFFSET(16740, glGetColorTableParameterfv, glGetColorTableParameterfvEXT, glGetColorTableParameterfvEXT, 344), + NAME_FUNC_OFFSET(16770, glGetColorTableParameterfv, glGetColorTableParameterfvEXT, glGetColorTableParameterfvEXT, 344), + NAME_FUNC_OFFSET(16800, glGetColorTableParameteriv, glGetColorTableParameterivEXT, glGetColorTableParameterivEXT, 345), + NAME_FUNC_OFFSET(16830, glGetColorTableParameteriv, glGetColorTableParameterivEXT, glGetColorTableParameterivEXT, 345), + NAME_FUNC_OFFSET(16860, glColorSubTable, glColorSubTable, NULL, 346), + NAME_FUNC_OFFSET(16879, glCopyColorSubTable, glCopyColorSubTable, NULL, 347), + NAME_FUNC_OFFSET(16902, glConvolutionFilter1D, glConvolutionFilter1D, NULL, 348), + NAME_FUNC_OFFSET(16927, glConvolutionFilter2D, glConvolutionFilter2D, NULL, 349), + NAME_FUNC_OFFSET(16952, glConvolutionParameterf, glConvolutionParameterf, NULL, 350), + NAME_FUNC_OFFSET(16979, glConvolutionParameterfv, glConvolutionParameterfv, NULL, 351), + NAME_FUNC_OFFSET(17007, glConvolutionParameteri, glConvolutionParameteri, NULL, 352), + NAME_FUNC_OFFSET(17034, glConvolutionParameteriv, glConvolutionParameteriv, NULL, 353), + NAME_FUNC_OFFSET(17062, glCopyConvolutionFilter1D, glCopyConvolutionFilter1D, NULL, 354), + NAME_FUNC_OFFSET(17091, glCopyConvolutionFilter2D, glCopyConvolutionFilter2D, NULL, 355), + NAME_FUNC_OFFSET(17120, glGetConvolutionFilter, gl_dispatch_stub_356, gl_dispatch_stub_356, 356), + NAME_FUNC_OFFSET(17146, glGetConvolutionParameterfv, gl_dispatch_stub_357, gl_dispatch_stub_357, 357), + NAME_FUNC_OFFSET(17177, glGetConvolutionParameteriv, gl_dispatch_stub_358, gl_dispatch_stub_358, 358), + NAME_FUNC_OFFSET(17208, glGetSeparableFilter, gl_dispatch_stub_359, gl_dispatch_stub_359, 359), + NAME_FUNC_OFFSET(17232, glSeparableFilter2D, glSeparableFilter2D, NULL, 360), + NAME_FUNC_OFFSET(17255, glGetHistogram, gl_dispatch_stub_361, gl_dispatch_stub_361, 361), + NAME_FUNC_OFFSET(17273, glGetHistogramParameterfv, gl_dispatch_stub_362, gl_dispatch_stub_362, 362), + NAME_FUNC_OFFSET(17302, glGetHistogramParameteriv, gl_dispatch_stub_363, gl_dispatch_stub_363, 363), + NAME_FUNC_OFFSET(17331, glGetMinmax, gl_dispatch_stub_364, gl_dispatch_stub_364, 364), + NAME_FUNC_OFFSET(17346, glGetMinmaxParameterfv, gl_dispatch_stub_365, gl_dispatch_stub_365, 365), + NAME_FUNC_OFFSET(17372, glGetMinmaxParameteriv, gl_dispatch_stub_366, gl_dispatch_stub_366, 366), + NAME_FUNC_OFFSET(17398, glHistogram, glHistogram, NULL, 367), + NAME_FUNC_OFFSET(17413, glMinmax, glMinmax, NULL, 368), + NAME_FUNC_OFFSET(17425, glResetHistogram, glResetHistogram, NULL, 369), + NAME_FUNC_OFFSET(17445, glResetMinmax, glResetMinmax, NULL, 370), + NAME_FUNC_OFFSET(17462, glTexImage3D, glTexImage3D, NULL, 371), + NAME_FUNC_OFFSET(17478, glTexSubImage3D, glTexSubImage3D, NULL, 372), + NAME_FUNC_OFFSET(17497, glCopyTexSubImage3D, glCopyTexSubImage3D, NULL, 373), + NAME_FUNC_OFFSET(17520, glActiveTextureARB, glActiveTextureARB, NULL, 374), + NAME_FUNC_OFFSET(17536, glClientActiveTextureARB, glClientActiveTextureARB, NULL, 375), + NAME_FUNC_OFFSET(17558, glMultiTexCoord1dARB, glMultiTexCoord1dARB, NULL, 376), + NAME_FUNC_OFFSET(17576, glMultiTexCoord1dvARB, glMultiTexCoord1dvARB, NULL, 377), + NAME_FUNC_OFFSET(17595, glMultiTexCoord1fARB, glMultiTexCoord1fARB, NULL, 378), + NAME_FUNC_OFFSET(17613, glMultiTexCoord1fvARB, glMultiTexCoord1fvARB, NULL, 379), + NAME_FUNC_OFFSET(17632, glMultiTexCoord1iARB, glMultiTexCoord1iARB, NULL, 380), + NAME_FUNC_OFFSET(17650, glMultiTexCoord1ivARB, glMultiTexCoord1ivARB, NULL, 381), + NAME_FUNC_OFFSET(17669, glMultiTexCoord1sARB, glMultiTexCoord1sARB, NULL, 382), + NAME_FUNC_OFFSET(17687, glMultiTexCoord1svARB, glMultiTexCoord1svARB, NULL, 383), + NAME_FUNC_OFFSET(17706, glMultiTexCoord2dARB, glMultiTexCoord2dARB, NULL, 384), + NAME_FUNC_OFFSET(17724, glMultiTexCoord2dvARB, glMultiTexCoord2dvARB, NULL, 385), + NAME_FUNC_OFFSET(17743, glMultiTexCoord2fARB, glMultiTexCoord2fARB, NULL, 386), + NAME_FUNC_OFFSET(17761, glMultiTexCoord2fvARB, glMultiTexCoord2fvARB, NULL, 387), + NAME_FUNC_OFFSET(17780, glMultiTexCoord2iARB, glMultiTexCoord2iARB, NULL, 388), + NAME_FUNC_OFFSET(17798, glMultiTexCoord2ivARB, glMultiTexCoord2ivARB, NULL, 389), + NAME_FUNC_OFFSET(17817, glMultiTexCoord2sARB, glMultiTexCoord2sARB, NULL, 390), + NAME_FUNC_OFFSET(17835, glMultiTexCoord2svARB, glMultiTexCoord2svARB, NULL, 391), + NAME_FUNC_OFFSET(17854, glMultiTexCoord3dARB, glMultiTexCoord3dARB, NULL, 392), + NAME_FUNC_OFFSET(17872, glMultiTexCoord3dvARB, glMultiTexCoord3dvARB, NULL, 393), + NAME_FUNC_OFFSET(17891, glMultiTexCoord3fARB, glMultiTexCoord3fARB, NULL, 394), + NAME_FUNC_OFFSET(17909, glMultiTexCoord3fvARB, glMultiTexCoord3fvARB, NULL, 395), + NAME_FUNC_OFFSET(17928, glMultiTexCoord3iARB, glMultiTexCoord3iARB, NULL, 396), + NAME_FUNC_OFFSET(17946, glMultiTexCoord3ivARB, glMultiTexCoord3ivARB, NULL, 397), + NAME_FUNC_OFFSET(17965, glMultiTexCoord3sARB, glMultiTexCoord3sARB, NULL, 398), + NAME_FUNC_OFFSET(17983, glMultiTexCoord3svARB, glMultiTexCoord3svARB, NULL, 399), + NAME_FUNC_OFFSET(18002, glMultiTexCoord4dARB, glMultiTexCoord4dARB, NULL, 400), + NAME_FUNC_OFFSET(18020, glMultiTexCoord4dvARB, glMultiTexCoord4dvARB, NULL, 401), + NAME_FUNC_OFFSET(18039, glMultiTexCoord4fARB, glMultiTexCoord4fARB, NULL, 402), + NAME_FUNC_OFFSET(18057, glMultiTexCoord4fvARB, glMultiTexCoord4fvARB, NULL, 403), + NAME_FUNC_OFFSET(18076, glMultiTexCoord4iARB, glMultiTexCoord4iARB, NULL, 404), + NAME_FUNC_OFFSET(18094, glMultiTexCoord4ivARB, glMultiTexCoord4ivARB, NULL, 405), + NAME_FUNC_OFFSET(18113, glMultiTexCoord4sARB, glMultiTexCoord4sARB, NULL, 406), + NAME_FUNC_OFFSET(18131, glMultiTexCoord4svARB, glMultiTexCoord4svARB, NULL, 407), + NAME_FUNC_OFFSET(18150, glStencilOpSeparate, glStencilOpSeparate, NULL, 423), + NAME_FUNC_OFFSET(18173, glLoadTransposeMatrixdARB, glLoadTransposeMatrixdARB, NULL, 441), + NAME_FUNC_OFFSET(18196, glLoadTransposeMatrixfARB, glLoadTransposeMatrixfARB, NULL, 442), + NAME_FUNC_OFFSET(18219, glMultTransposeMatrixdARB, glMultTransposeMatrixdARB, NULL, 443), + NAME_FUNC_OFFSET(18242, glMultTransposeMatrixfARB, glMultTransposeMatrixfARB, NULL, 444), + NAME_FUNC_OFFSET(18265, glSampleCoverageARB, glSampleCoverageARB, NULL, 445), + NAME_FUNC_OFFSET(18282, glCompressedTexImage1DARB, glCompressedTexImage1DARB, NULL, 446), + NAME_FUNC_OFFSET(18305, glCompressedTexImage2DARB, glCompressedTexImage2DARB, NULL, 447), + NAME_FUNC_OFFSET(18328, glCompressedTexImage3DARB, glCompressedTexImage3DARB, NULL, 448), + NAME_FUNC_OFFSET(18351, glCompressedTexSubImage1DARB, glCompressedTexSubImage1DARB, NULL, 449), + NAME_FUNC_OFFSET(18377, glCompressedTexSubImage2DARB, glCompressedTexSubImage2DARB, NULL, 450), + NAME_FUNC_OFFSET(18403, glCompressedTexSubImage3DARB, glCompressedTexSubImage3DARB, NULL, 451), + NAME_FUNC_OFFSET(18429, glGetCompressedTexImageARB, glGetCompressedTexImageARB, NULL, 452), + NAME_FUNC_OFFSET(18453, glDisableVertexAttribArrayARB, glDisableVertexAttribArrayARB, NULL, 453), + NAME_FUNC_OFFSET(18480, glEnableVertexAttribArrayARB, glEnableVertexAttribArrayARB, NULL, 454), + NAME_FUNC_OFFSET(18506, glGetVertexAttribdvARB, glGetVertexAttribdvARB, NULL, 461), + NAME_FUNC_OFFSET(18526, glGetVertexAttribfvARB, glGetVertexAttribfvARB, NULL, 462), + NAME_FUNC_OFFSET(18546, glGetVertexAttribivARB, glGetVertexAttribivARB, NULL, 463), + NAME_FUNC_OFFSET(18566, glProgramEnvParameter4dARB, glProgramEnvParameter4dARB, NULL, 464), + NAME_FUNC_OFFSET(18589, glProgramEnvParameter4dvARB, glProgramEnvParameter4dvARB, NULL, 465), + NAME_FUNC_OFFSET(18613, glProgramEnvParameter4fARB, glProgramEnvParameter4fARB, NULL, 466), + NAME_FUNC_OFFSET(18636, glProgramEnvParameter4fvARB, glProgramEnvParameter4fvARB, NULL, 467), + NAME_FUNC_OFFSET(18660, glVertexAttrib1dARB, glVertexAttrib1dARB, NULL, 473), + NAME_FUNC_OFFSET(18677, glVertexAttrib1dvARB, glVertexAttrib1dvARB, NULL, 474), + NAME_FUNC_OFFSET(18695, glVertexAttrib1fARB, glVertexAttrib1fARB, NULL, 475), + NAME_FUNC_OFFSET(18712, glVertexAttrib1fvARB, glVertexAttrib1fvARB, NULL, 476), + NAME_FUNC_OFFSET(18730, glVertexAttrib1sARB, glVertexAttrib1sARB, NULL, 477), + NAME_FUNC_OFFSET(18747, glVertexAttrib1svARB, glVertexAttrib1svARB, NULL, 478), + NAME_FUNC_OFFSET(18765, glVertexAttrib2dARB, glVertexAttrib2dARB, NULL, 479), + NAME_FUNC_OFFSET(18782, glVertexAttrib2dvARB, glVertexAttrib2dvARB, NULL, 480), + NAME_FUNC_OFFSET(18800, glVertexAttrib2fARB, glVertexAttrib2fARB, NULL, 481), + NAME_FUNC_OFFSET(18817, glVertexAttrib2fvARB, glVertexAttrib2fvARB, NULL, 482), + NAME_FUNC_OFFSET(18835, glVertexAttrib2sARB, glVertexAttrib2sARB, NULL, 483), + NAME_FUNC_OFFSET(18852, glVertexAttrib2svARB, glVertexAttrib2svARB, NULL, 484), + NAME_FUNC_OFFSET(18870, glVertexAttrib3dARB, glVertexAttrib3dARB, NULL, 485), + NAME_FUNC_OFFSET(18887, glVertexAttrib3dvARB, glVertexAttrib3dvARB, NULL, 486), + NAME_FUNC_OFFSET(18905, glVertexAttrib3fARB, glVertexAttrib3fARB, NULL, 487), + NAME_FUNC_OFFSET(18922, glVertexAttrib3fvARB, glVertexAttrib3fvARB, NULL, 488), + NAME_FUNC_OFFSET(18940, glVertexAttrib3sARB, glVertexAttrib3sARB, NULL, 489), + NAME_FUNC_OFFSET(18957, glVertexAttrib3svARB, glVertexAttrib3svARB, NULL, 490), + NAME_FUNC_OFFSET(18975, glVertexAttrib4NbvARB, glVertexAttrib4NbvARB, NULL, 491), + NAME_FUNC_OFFSET(18994, glVertexAttrib4NivARB, glVertexAttrib4NivARB, NULL, 492), + NAME_FUNC_OFFSET(19013, glVertexAttrib4NsvARB, glVertexAttrib4NsvARB, NULL, 493), + NAME_FUNC_OFFSET(19032, glVertexAttrib4NubARB, glVertexAttrib4NubARB, NULL, 494), + NAME_FUNC_OFFSET(19051, glVertexAttrib4NubvARB, glVertexAttrib4NubvARB, NULL, 495), + NAME_FUNC_OFFSET(19071, glVertexAttrib4NuivARB, glVertexAttrib4NuivARB, NULL, 496), + NAME_FUNC_OFFSET(19091, glVertexAttrib4NusvARB, glVertexAttrib4NusvARB, NULL, 497), + NAME_FUNC_OFFSET(19111, glVertexAttrib4bvARB, glVertexAttrib4bvARB, NULL, 498), + NAME_FUNC_OFFSET(19129, glVertexAttrib4dARB, glVertexAttrib4dARB, NULL, 499), + NAME_FUNC_OFFSET(19146, glVertexAttrib4dvARB, glVertexAttrib4dvARB, NULL, 500), + NAME_FUNC_OFFSET(19164, glVertexAttrib4fARB, glVertexAttrib4fARB, NULL, 501), + NAME_FUNC_OFFSET(19181, glVertexAttrib4fvARB, glVertexAttrib4fvARB, NULL, 502), + NAME_FUNC_OFFSET(19199, glVertexAttrib4ivARB, glVertexAttrib4ivARB, NULL, 503), + NAME_FUNC_OFFSET(19217, glVertexAttrib4sARB, glVertexAttrib4sARB, NULL, 504), + NAME_FUNC_OFFSET(19234, glVertexAttrib4svARB, glVertexAttrib4svARB, NULL, 505), + NAME_FUNC_OFFSET(19252, glVertexAttrib4ubvARB, glVertexAttrib4ubvARB, NULL, 506), + NAME_FUNC_OFFSET(19271, glVertexAttrib4uivARB, glVertexAttrib4uivARB, NULL, 507), + NAME_FUNC_OFFSET(19290, glVertexAttrib4usvARB, glVertexAttrib4usvARB, NULL, 508), + NAME_FUNC_OFFSET(19309, glVertexAttribPointerARB, glVertexAttribPointerARB, NULL, 509), + NAME_FUNC_OFFSET(19331, glBindBufferARB, glBindBufferARB, NULL, 510), + NAME_FUNC_OFFSET(19344, glBufferDataARB, glBufferDataARB, NULL, 511), + NAME_FUNC_OFFSET(19357, glBufferSubDataARB, glBufferSubDataARB, NULL, 512), + NAME_FUNC_OFFSET(19373, glDeleteBuffersARB, glDeleteBuffersARB, NULL, 513), + NAME_FUNC_OFFSET(19389, glGenBuffersARB, glGenBuffersARB, NULL, 514), + NAME_FUNC_OFFSET(19402, glGetBufferParameterivARB, glGetBufferParameterivARB, NULL, 515), + NAME_FUNC_OFFSET(19425, glGetBufferPointervARB, glGetBufferPointervARB, NULL, 516), + NAME_FUNC_OFFSET(19445, glGetBufferSubDataARB, glGetBufferSubDataARB, NULL, 517), + NAME_FUNC_OFFSET(19464, glIsBufferARB, glIsBufferARB, NULL, 518), + NAME_FUNC_OFFSET(19475, glMapBufferARB, glMapBufferARB, NULL, 519), + NAME_FUNC_OFFSET(19487, glUnmapBufferARB, glUnmapBufferARB, NULL, 520), + NAME_FUNC_OFFSET(19501, glBeginQueryARB, glBeginQueryARB, NULL, 521), + NAME_FUNC_OFFSET(19514, glDeleteQueriesARB, glDeleteQueriesARB, NULL, 522), + NAME_FUNC_OFFSET(19530, glEndQueryARB, glEndQueryARB, NULL, 523), + NAME_FUNC_OFFSET(19541, glGenQueriesARB, glGenQueriesARB, NULL, 524), + NAME_FUNC_OFFSET(19554, glGetQueryObjectivARB, glGetQueryObjectivARB, NULL, 525), + NAME_FUNC_OFFSET(19573, glGetQueryObjectuivARB, glGetQueryObjectuivARB, NULL, 526), + NAME_FUNC_OFFSET(19593, glGetQueryivARB, glGetQueryivARB, NULL, 527), + NAME_FUNC_OFFSET(19606, glIsQueryARB, glIsQueryARB, NULL, 528), + NAME_FUNC_OFFSET(19616, glCompileShaderARB, glCompileShaderARB, NULL, 530), + NAME_FUNC_OFFSET(19632, glGetActiveUniformARB, glGetActiveUniformARB, NULL, 535), + NAME_FUNC_OFFSET(19651, glGetShaderSourceARB, glGetShaderSourceARB, NULL, 541), + NAME_FUNC_OFFSET(19669, glGetUniformLocationARB, glGetUniformLocationARB, NULL, 542), + NAME_FUNC_OFFSET(19690, glGetUniformfvARB, glGetUniformfvARB, NULL, 543), + NAME_FUNC_OFFSET(19705, glGetUniformivARB, glGetUniformivARB, NULL, 544), + NAME_FUNC_OFFSET(19720, glLinkProgramARB, glLinkProgramARB, NULL, 545), + NAME_FUNC_OFFSET(19734, glShaderSourceARB, glShaderSourceARB, NULL, 546), + NAME_FUNC_OFFSET(19749, glUniform1fARB, glUniform1fARB, NULL, 547), + NAME_FUNC_OFFSET(19761, glUniform1fvARB, glUniform1fvARB, NULL, 548), + NAME_FUNC_OFFSET(19774, glUniform1iARB, glUniform1iARB, NULL, 549), + NAME_FUNC_OFFSET(19786, glUniform1ivARB, glUniform1ivARB, NULL, 550), + NAME_FUNC_OFFSET(19799, glUniform2fARB, glUniform2fARB, NULL, 551), + NAME_FUNC_OFFSET(19811, glUniform2fvARB, glUniform2fvARB, NULL, 552), + NAME_FUNC_OFFSET(19824, glUniform2iARB, glUniform2iARB, NULL, 553), + NAME_FUNC_OFFSET(19836, glUniform2ivARB, glUniform2ivARB, NULL, 554), + NAME_FUNC_OFFSET(19849, glUniform3fARB, glUniform3fARB, NULL, 555), + NAME_FUNC_OFFSET(19861, glUniform3fvARB, glUniform3fvARB, NULL, 556), + NAME_FUNC_OFFSET(19874, glUniform3iARB, glUniform3iARB, NULL, 557), + NAME_FUNC_OFFSET(19886, glUniform3ivARB, glUniform3ivARB, NULL, 558), + NAME_FUNC_OFFSET(19899, glUniform4fARB, glUniform4fARB, NULL, 559), + NAME_FUNC_OFFSET(19911, glUniform4fvARB, glUniform4fvARB, NULL, 560), + NAME_FUNC_OFFSET(19924, glUniform4iARB, glUniform4iARB, NULL, 561), + NAME_FUNC_OFFSET(19936, glUniform4ivARB, glUniform4ivARB, NULL, 562), + NAME_FUNC_OFFSET(19949, glUniformMatrix2fvARB, glUniformMatrix2fvARB, NULL, 563), + NAME_FUNC_OFFSET(19968, glUniformMatrix3fvARB, glUniformMatrix3fvARB, NULL, 564), + NAME_FUNC_OFFSET(19987, glUniformMatrix4fvARB, glUniformMatrix4fvARB, NULL, 565), + NAME_FUNC_OFFSET(20006, glUseProgramObjectARB, glUseProgramObjectARB, NULL, 566), + NAME_FUNC_OFFSET(20019, glValidateProgramARB, glValidateProgramARB, NULL, 567), + NAME_FUNC_OFFSET(20037, glBindAttribLocationARB, glBindAttribLocationARB, NULL, 568), + NAME_FUNC_OFFSET(20058, glGetActiveAttribARB, glGetActiveAttribARB, NULL, 569), + NAME_FUNC_OFFSET(20076, glGetAttribLocationARB, glGetAttribLocationARB, NULL, 570), + NAME_FUNC_OFFSET(20096, glDrawBuffersARB, glDrawBuffersARB, NULL, 571), + NAME_FUNC_OFFSET(20110, glDrawBuffersARB, glDrawBuffersARB, NULL, 571), + NAME_FUNC_OFFSET(20127, glDrawArraysInstancedARB, glDrawArraysInstancedARB, NULL, 573), + NAME_FUNC_OFFSET(20152, glDrawArraysInstancedARB, glDrawArraysInstancedARB, NULL, 573), + NAME_FUNC_OFFSET(20174, glDrawElementsInstancedARB, glDrawElementsInstancedARB, NULL, 574), + NAME_FUNC_OFFSET(20201, glDrawElementsInstancedARB, glDrawElementsInstancedARB, NULL, 574), + NAME_FUNC_OFFSET(20225, glRenderbufferStorageMultisample, glRenderbufferStorageMultisample, NULL, 575), + NAME_FUNC_OFFSET(20261, gl_dispatch_stub_619, gl_dispatch_stub_619, NULL, 619), + NAME_FUNC_OFFSET(20277, gl_dispatch_stub_620, gl_dispatch_stub_620, NULL, 620), + NAME_FUNC_OFFSET(20296, glPointParameterfEXT, glPointParameterfEXT, NULL, 627), + NAME_FUNC_OFFSET(20314, glPointParameterfEXT, glPointParameterfEXT, NULL, 627), + NAME_FUNC_OFFSET(20335, glPointParameterfEXT, glPointParameterfEXT, NULL, 627), + NAME_FUNC_OFFSET(20357, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 628), + NAME_FUNC_OFFSET(20376, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 628), + NAME_FUNC_OFFSET(20398, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 628), + NAME_FUNC_OFFSET(20421, glSecondaryColor3bEXT, glSecondaryColor3bEXT, NULL, 631), + NAME_FUNC_OFFSET(20440, glSecondaryColor3bvEXT, glSecondaryColor3bvEXT, NULL, 632), + NAME_FUNC_OFFSET(20460, glSecondaryColor3dEXT, glSecondaryColor3dEXT, NULL, 633), + NAME_FUNC_OFFSET(20479, glSecondaryColor3dvEXT, glSecondaryColor3dvEXT, NULL, 634), + NAME_FUNC_OFFSET(20499, glSecondaryColor3fEXT, glSecondaryColor3fEXT, NULL, 635), + NAME_FUNC_OFFSET(20518, glSecondaryColor3fvEXT, glSecondaryColor3fvEXT, NULL, 636), + NAME_FUNC_OFFSET(20538, glSecondaryColor3iEXT, glSecondaryColor3iEXT, NULL, 637), + NAME_FUNC_OFFSET(20557, glSecondaryColor3ivEXT, glSecondaryColor3ivEXT, NULL, 638), + NAME_FUNC_OFFSET(20577, glSecondaryColor3sEXT, glSecondaryColor3sEXT, NULL, 639), + NAME_FUNC_OFFSET(20596, glSecondaryColor3svEXT, glSecondaryColor3svEXT, NULL, 640), + NAME_FUNC_OFFSET(20616, glSecondaryColor3ubEXT, glSecondaryColor3ubEXT, NULL, 641), + NAME_FUNC_OFFSET(20636, glSecondaryColor3ubvEXT, glSecondaryColor3ubvEXT, NULL, 642), + NAME_FUNC_OFFSET(20657, glSecondaryColor3uiEXT, glSecondaryColor3uiEXT, NULL, 643), + NAME_FUNC_OFFSET(20677, glSecondaryColor3uivEXT, glSecondaryColor3uivEXT, NULL, 644), + NAME_FUNC_OFFSET(20698, glSecondaryColor3usEXT, glSecondaryColor3usEXT, NULL, 645), + NAME_FUNC_OFFSET(20718, glSecondaryColor3usvEXT, glSecondaryColor3usvEXT, NULL, 646), + NAME_FUNC_OFFSET(20739, glSecondaryColorPointerEXT, glSecondaryColorPointerEXT, NULL, 647), + NAME_FUNC_OFFSET(20763, glMultiDrawArraysEXT, glMultiDrawArraysEXT, NULL, 648), + NAME_FUNC_OFFSET(20781, glMultiDrawElementsEXT, glMultiDrawElementsEXT, NULL, 649), + NAME_FUNC_OFFSET(20801, glFogCoordPointerEXT, glFogCoordPointerEXT, NULL, 650), + NAME_FUNC_OFFSET(20819, glFogCoorddEXT, glFogCoorddEXT, NULL, 651), + NAME_FUNC_OFFSET(20831, glFogCoorddvEXT, glFogCoorddvEXT, NULL, 652), + NAME_FUNC_OFFSET(20844, glFogCoordfEXT, glFogCoordfEXT, NULL, 653), + NAME_FUNC_OFFSET(20856, glFogCoordfvEXT, glFogCoordfvEXT, NULL, 654), + NAME_FUNC_OFFSET(20869, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, 656), + NAME_FUNC_OFFSET(20889, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, 656), + NAME_FUNC_OFFSET(20913, glWindowPos2dMESA, glWindowPos2dMESA, NULL, 673), + NAME_FUNC_OFFSET(20927, glWindowPos2dMESA, glWindowPos2dMESA, NULL, 673), + NAME_FUNC_OFFSET(20944, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, 674), + NAME_FUNC_OFFSET(20959, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, 674), + NAME_FUNC_OFFSET(20977, glWindowPos2fMESA, glWindowPos2fMESA, NULL, 675), + NAME_FUNC_OFFSET(20991, glWindowPos2fMESA, glWindowPos2fMESA, NULL, 675), + NAME_FUNC_OFFSET(21008, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, 676), + NAME_FUNC_OFFSET(21023, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, 676), + NAME_FUNC_OFFSET(21041, glWindowPos2iMESA, glWindowPos2iMESA, NULL, 677), + NAME_FUNC_OFFSET(21055, glWindowPos2iMESA, glWindowPos2iMESA, NULL, 677), + NAME_FUNC_OFFSET(21072, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, 678), + NAME_FUNC_OFFSET(21087, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, 678), + NAME_FUNC_OFFSET(21105, glWindowPos2sMESA, glWindowPos2sMESA, NULL, 679), + NAME_FUNC_OFFSET(21119, glWindowPos2sMESA, glWindowPos2sMESA, NULL, 679), + NAME_FUNC_OFFSET(21136, glWindowPos2svMESA, glWindowPos2svMESA, NULL, 680), + NAME_FUNC_OFFSET(21151, glWindowPos2svMESA, glWindowPos2svMESA, NULL, 680), + NAME_FUNC_OFFSET(21169, glWindowPos3dMESA, glWindowPos3dMESA, NULL, 681), + NAME_FUNC_OFFSET(21183, glWindowPos3dMESA, glWindowPos3dMESA, NULL, 681), + NAME_FUNC_OFFSET(21200, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, 682), + NAME_FUNC_OFFSET(21215, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, 682), + NAME_FUNC_OFFSET(21233, glWindowPos3fMESA, glWindowPos3fMESA, NULL, 683), + NAME_FUNC_OFFSET(21247, glWindowPos3fMESA, glWindowPos3fMESA, NULL, 683), + NAME_FUNC_OFFSET(21264, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, 684), + NAME_FUNC_OFFSET(21279, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, 684), + NAME_FUNC_OFFSET(21297, glWindowPos3iMESA, glWindowPos3iMESA, NULL, 685), + NAME_FUNC_OFFSET(21311, glWindowPos3iMESA, glWindowPos3iMESA, NULL, 685), + NAME_FUNC_OFFSET(21328, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, 686), + NAME_FUNC_OFFSET(21343, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, 686), + NAME_FUNC_OFFSET(21361, glWindowPos3sMESA, glWindowPos3sMESA, NULL, 687), + NAME_FUNC_OFFSET(21375, glWindowPos3sMESA, glWindowPos3sMESA, NULL, 687), + NAME_FUNC_OFFSET(21392, glWindowPos3svMESA, glWindowPos3svMESA, NULL, 688), + NAME_FUNC_OFFSET(21407, glWindowPos3svMESA, glWindowPos3svMESA, NULL, 688), + NAME_FUNC_OFFSET(21425, glBindProgramNV, glBindProgramNV, NULL, 707), + NAME_FUNC_OFFSET(21442, glDeleteProgramsNV, glDeleteProgramsNV, NULL, 708), + NAME_FUNC_OFFSET(21462, glGenProgramsNV, glGenProgramsNV, NULL, 710), + NAME_FUNC_OFFSET(21479, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, 716), + NAME_FUNC_OFFSET(21505, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, 716), + NAME_FUNC_OFFSET(21534, glIsProgramNV, glIsProgramNV, NULL, 720), + NAME_FUNC_OFFSET(21549, glPointParameteriNV, glPointParameteriNV, NULL, 784), + NAME_FUNC_OFFSET(21567, glPointParameterivNV, glPointParameterivNV, NULL, 785), + NAME_FUNC_OFFSET(21586, gl_dispatch_stub_788, gl_dispatch_stub_788, NULL, 788), + NAME_FUNC_OFFSET(21607, gl_dispatch_stub_790, gl_dispatch_stub_790, NULL, 790), + NAME_FUNC_OFFSET(21623, glPrimitiveRestartIndexNV, glPrimitiveRestartIndexNV, NULL, 797), + NAME_FUNC_OFFSET(21647, gl_dispatch_stub_800, gl_dispatch_stub_800, NULL, 800), + NAME_FUNC_OFFSET(21671, gl_dispatch_stub_800, gl_dispatch_stub_800, NULL, 800), + NAME_FUNC_OFFSET(21698, glBindFramebufferEXT, glBindFramebufferEXT, NULL, 801), + NAME_FUNC_OFFSET(21716, glBindRenderbufferEXT, glBindRenderbufferEXT, NULL, 802), + NAME_FUNC_OFFSET(21735, glCheckFramebufferStatusEXT, glCheckFramebufferStatusEXT, NULL, 803), + NAME_FUNC_OFFSET(21760, glDeleteFramebuffersEXT, glDeleteFramebuffersEXT, NULL, 804), + NAME_FUNC_OFFSET(21781, glDeleteRenderbuffersEXT, glDeleteRenderbuffersEXT, NULL, 805), + NAME_FUNC_OFFSET(21803, glFramebufferRenderbufferEXT, glFramebufferRenderbufferEXT, NULL, 806), + NAME_FUNC_OFFSET(21829, glFramebufferTexture1DEXT, glFramebufferTexture1DEXT, NULL, 807), + NAME_FUNC_OFFSET(21852, glFramebufferTexture2DEXT, glFramebufferTexture2DEXT, NULL, 808), + NAME_FUNC_OFFSET(21875, glFramebufferTexture3DEXT, glFramebufferTexture3DEXT, NULL, 809), + NAME_FUNC_OFFSET(21898, glGenFramebuffersEXT, glGenFramebuffersEXT, NULL, 810), + NAME_FUNC_OFFSET(21916, glGenRenderbuffersEXT, glGenRenderbuffersEXT, NULL, 811), + NAME_FUNC_OFFSET(21935, glGenerateMipmapEXT, glGenerateMipmapEXT, NULL, 812), + NAME_FUNC_OFFSET(21952, glGetFramebufferAttachmentParameterivEXT, glGetFramebufferAttachmentParameterivEXT, NULL, 813), + NAME_FUNC_OFFSET(21990, glGetRenderbufferParameterivEXT, glGetRenderbufferParameterivEXT, NULL, 814), + NAME_FUNC_OFFSET(22019, glIsFramebufferEXT, glIsFramebufferEXT, NULL, 815), + NAME_FUNC_OFFSET(22035, glIsRenderbufferEXT, glIsRenderbufferEXT, NULL, 816), + NAME_FUNC_OFFSET(22052, glRenderbufferStorageEXT, glRenderbufferStorageEXT, NULL, 817), + NAME_FUNC_OFFSET(22074, gl_dispatch_stub_818, gl_dispatch_stub_818, NULL, 818), + NAME_FUNC_OFFSET(22092, glBindFragDataLocationEXT, glBindFragDataLocationEXT, NULL, 821), + NAME_FUNC_OFFSET(22115, glGetFragDataLocationEXT, glGetFragDataLocationEXT, NULL, 822), + NAME_FUNC_OFFSET(22137, glGetUniformuivEXT, glGetUniformuivEXT, NULL, 823), + NAME_FUNC_OFFSET(22153, glGetVertexAttribIivEXT, glGetVertexAttribIivEXT, NULL, 824), + NAME_FUNC_OFFSET(22174, glGetVertexAttribIuivEXT, glGetVertexAttribIuivEXT, NULL, 825), + NAME_FUNC_OFFSET(22196, glUniform1uiEXT, glUniform1uiEXT, NULL, 826), + NAME_FUNC_OFFSET(22209, glUniform1uivEXT, glUniform1uivEXT, NULL, 827), + NAME_FUNC_OFFSET(22223, glUniform2uiEXT, glUniform2uiEXT, NULL, 828), + NAME_FUNC_OFFSET(22236, glUniform2uivEXT, glUniform2uivEXT, NULL, 829), + NAME_FUNC_OFFSET(22250, glUniform3uiEXT, glUniform3uiEXT, NULL, 830), + NAME_FUNC_OFFSET(22263, glUniform3uivEXT, glUniform3uivEXT, NULL, 831), + NAME_FUNC_OFFSET(22277, glUniform4uiEXT, glUniform4uiEXT, NULL, 832), + NAME_FUNC_OFFSET(22290, glUniform4uivEXT, glUniform4uivEXT, NULL, 833), + NAME_FUNC_OFFSET(22304, glVertexAttribI1iEXT, glVertexAttribI1iEXT, NULL, 834), + NAME_FUNC_OFFSET(22322, glVertexAttribI1ivEXT, glVertexAttribI1ivEXT, NULL, 835), + NAME_FUNC_OFFSET(22341, glVertexAttribI1uiEXT, glVertexAttribI1uiEXT, NULL, 836), + NAME_FUNC_OFFSET(22360, glVertexAttribI1uivEXT, glVertexAttribI1uivEXT, NULL, 837), + NAME_FUNC_OFFSET(22380, glVertexAttribI2iEXT, glVertexAttribI2iEXT, NULL, 838), + NAME_FUNC_OFFSET(22398, glVertexAttribI2ivEXT, glVertexAttribI2ivEXT, NULL, 839), + NAME_FUNC_OFFSET(22417, glVertexAttribI2uiEXT, glVertexAttribI2uiEXT, NULL, 840), + NAME_FUNC_OFFSET(22436, glVertexAttribI2uivEXT, glVertexAttribI2uivEXT, NULL, 841), + NAME_FUNC_OFFSET(22456, glVertexAttribI3iEXT, glVertexAttribI3iEXT, NULL, 842), + NAME_FUNC_OFFSET(22474, glVertexAttribI3ivEXT, glVertexAttribI3ivEXT, NULL, 843), + NAME_FUNC_OFFSET(22493, glVertexAttribI3uiEXT, glVertexAttribI3uiEXT, NULL, 844), + NAME_FUNC_OFFSET(22512, glVertexAttribI3uivEXT, glVertexAttribI3uivEXT, NULL, 845), + NAME_FUNC_OFFSET(22532, glVertexAttribI4bvEXT, glVertexAttribI4bvEXT, NULL, 846), + NAME_FUNC_OFFSET(22551, glVertexAttribI4iEXT, glVertexAttribI4iEXT, NULL, 847), + NAME_FUNC_OFFSET(22569, glVertexAttribI4ivEXT, glVertexAttribI4ivEXT, NULL, 848), + NAME_FUNC_OFFSET(22588, glVertexAttribI4svEXT, glVertexAttribI4svEXT, NULL, 849), + NAME_FUNC_OFFSET(22607, glVertexAttribI4ubvEXT, glVertexAttribI4ubvEXT, NULL, 850), + NAME_FUNC_OFFSET(22627, glVertexAttribI4uiEXT, glVertexAttribI4uiEXT, NULL, 851), + NAME_FUNC_OFFSET(22646, glVertexAttribI4uivEXT, glVertexAttribI4uivEXT, NULL, 852), + NAME_FUNC_OFFSET(22666, glVertexAttribI4usvEXT, glVertexAttribI4usvEXT, NULL, 853), + NAME_FUNC_OFFSET(22686, glVertexAttribIPointerEXT, glVertexAttribIPointerEXT, NULL, 854), + NAME_FUNC_OFFSET(22709, glFramebufferTextureLayerEXT, glFramebufferTextureLayerEXT, NULL, 855), + NAME_FUNC_OFFSET(22735, glColorMaskIndexedEXT, glColorMaskIndexedEXT, NULL, 856), + NAME_FUNC_OFFSET(22748, glDisableIndexedEXT, glDisableIndexedEXT, NULL, 857), + NAME_FUNC_OFFSET(22759, glEnableIndexedEXT, glEnableIndexedEXT, NULL, 858), + NAME_FUNC_OFFSET(22769, glGetBooleanIndexedvEXT, glGetBooleanIndexedvEXT, NULL, 859), + NAME_FUNC_OFFSET(22785, glGetIntegerIndexedvEXT, glGetIntegerIndexedvEXT, NULL, 860), + NAME_FUNC_OFFSET(22801, glIsEnabledIndexedEXT, glIsEnabledIndexedEXT, NULL, 861), + NAME_FUNC_OFFSET(22814, glGetTexParameterIivEXT, glGetTexParameterIivEXT, NULL, 864), + NAME_FUNC_OFFSET(22835, glGetTexParameterIuivEXT, glGetTexParameterIuivEXT, NULL, 865), + NAME_FUNC_OFFSET(22857, glTexParameterIivEXT, glTexParameterIivEXT, NULL, 866), + NAME_FUNC_OFFSET(22875, glTexParameterIuivEXT, glTexParameterIuivEXT, NULL, 867), + NAME_FUNC_OFFSET(22894, glBeginConditionalRenderNV, glBeginConditionalRenderNV, NULL, 868), + NAME_FUNC_OFFSET(22919, glEndConditionalRenderNV, glEndConditionalRenderNV, NULL, 869), + NAME_FUNC_OFFSET(22942, glBeginTransformFeedbackEXT, glBeginTransformFeedbackEXT, NULL, 870), + NAME_FUNC_OFFSET(22967, glBindBufferBaseEXT, glBindBufferBaseEXT, NULL, 871), + NAME_FUNC_OFFSET(22984, glBindBufferRangeEXT, glBindBufferRangeEXT, NULL, 873), + NAME_FUNC_OFFSET(23002, glEndTransformFeedbackEXT, glEndTransformFeedbackEXT, NULL, 874), + NAME_FUNC_OFFSET(23025, glGetTransformFeedbackVaryingEXT, glGetTransformFeedbackVaryingEXT, NULL, 875), + NAME_FUNC_OFFSET(23055, glTransformFeedbackVaryingsEXT, glTransformFeedbackVaryingsEXT, NULL, 876), + NAME_FUNC_OFFSET(23083, glProvokingVertexEXT, glProvokingVertexEXT, NULL, 877), NAME_FUNC_OFFSET(-1, NULL, NULL, NULL, 0) }; diff --git a/src/mesa/main/enums.c b/src/mesa/main/enums.c index 14be3ff44f1..f57ad2f1384 100644 --- a/src/mesa/main/enums.c +++ b/src/mesa/main/enums.c @@ -1144,6 +1144,7 @@ LONGSTRING static const char enum_string_table[] = "GL_MAX_SHININESS_NV\0" "GL_MAX_SPOT_EXPONENT_NV\0" "GL_MAX_TEXTURE_BUFFER_SIZE\0" + "GL_MAX_TEXTURE_BUFFER_SIZE_ARB\0" "GL_MAX_TEXTURE_COORDS\0" "GL_MAX_TEXTURE_COORDS_ARB\0" "GL_MAX_TEXTURE_IMAGE_UNITS\0" @@ -2012,6 +2013,7 @@ LONGSTRING static const char enum_string_table[] = "GL_TEXTURE_BINDING_3D\0" "GL_TEXTURE_BINDING_3D_OES\0" "GL_TEXTURE_BINDING_BUFFER\0" + "GL_TEXTURE_BINDING_BUFFER_ARB\0" "GL_TEXTURE_BINDING_CUBE_MAP\0" "GL_TEXTURE_BINDING_CUBE_MAP_ARB\0" "GL_TEXTURE_BINDING_CUBE_MAP_OES\0" @@ -2024,8 +2026,11 @@ LONGSTRING static const char enum_string_table[] = "GL_TEXTURE_BORDER\0" "GL_TEXTURE_BORDER_COLOR\0" "GL_TEXTURE_BUFFER\0" + "GL_TEXTURE_BUFFER_ARB\0" "GL_TEXTURE_BUFFER_DATA_STORE_BINDING\0" + "GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB\0" "GL_TEXTURE_BUFFER_FORMAT\0" + "GL_TEXTURE_BUFFER_FORMAT_ARB\0" "GL_TEXTURE_CLIPMAP_CENTER_SGIX\0" "GL_TEXTURE_CLIPMAP_DEPTH_SGIX\0" "GL_TEXTURE_CLIPMAP_FRAME_SGIX\0" @@ -2339,7 +2344,7 @@ LONGSTRING static const char enum_string_table[] = "GL_ZOOM_Y\0" ; -static const enum_elt all_enums[2300] = +static const enum_elt all_enums[2305] = { { 0, 0x00000600 }, /* GL_2D */ { 6, 0x00001407 }, /* GL_2_BYTES */ @@ -3448,1199 +3453,1204 @@ static const enum_elt all_enums[2300] = { 24441, 0x00008504 }, /* GL_MAX_SHININESS_NV */ { 24461, 0x00008505 }, /* GL_MAX_SPOT_EXPONENT_NV */ { 24485, 0x00008C2B }, /* GL_MAX_TEXTURE_BUFFER_SIZE */ - { 24512, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS */ - { 24534, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS_ARB */ - { 24560, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS */ - { 24587, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS_ARB */ - { 24618, 0x000084FD }, /* GL_MAX_TEXTURE_LOD_BIAS */ - { 24642, 0x000084FD }, /* GL_MAX_TEXTURE_LOD_BIAS_EXT */ - { 24670, 0x000084FF }, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */ - { 24704, 0x00000D33 }, /* GL_MAX_TEXTURE_SIZE */ - { 24724, 0x00000D39 }, /* GL_MAX_TEXTURE_STACK_DEPTH */ - { 24751, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS */ - { 24772, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS_ARB */ - { 24797, 0x0000862F }, /* GL_MAX_TRACK_MATRICES_NV */ - { 24822, 0x0000862E }, /* GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV */ - { 24857, 0x00008C8A }, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS */ - { 24906, 0x00008C8A }, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT */ - { 24959, 0x00008C8B }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS */ - { 25002, 0x00008C8B }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT */ - { 25049, 0x00008C80 }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS */ - { 25095, 0x00008C80 }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT */ - { 25145, 0x00008B4B }, /* GL_MAX_VARYING_COMPONENTS */ - { 25171, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS */ - { 25193, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS_ARB */ - { 25219, 0x00008DFC }, /* GL_MAX_VARYING_VECTORS */ - { 25242, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS */ - { 25264, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS_ARB */ - { 25290, 0x00009122 }, /* GL_MAX_VERTEX_OUTPUT_COMPONENTS */ - { 25322, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */ - { 25356, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB */ - { 25394, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */ - { 25427, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB */ - { 25464, 0x00008DFB }, /* GL_MAX_VERTEX_UNIFORM_VECTORS */ - { 25494, 0x000086A4 }, /* GL_MAX_VERTEX_UNITS_ARB */ - { 25518, 0x000086A4 }, /* GL_MAX_VERTEX_UNITS_OES */ - { 25542, 0x00008DDE }, /* GL_MAX_VERTEX_VARYING_COMPONENTS_ARB */ - { 25579, 0x00000D3A }, /* GL_MAX_VIEWPORT_DIMS */ - { 25600, 0x00008DF1 }, /* GL_MEDIUM_FLOAT */ - { 25616, 0x00008DF4 }, /* GL_MEDIUM_INT */ - { 25630, 0x00008007 }, /* GL_MIN */ - { 25637, 0x0000802E }, /* GL_MINMAX */ - { 25647, 0x0000802E }, /* GL_MINMAX_EXT */ - { 25661, 0x0000802F }, /* GL_MINMAX_FORMAT */ - { 25678, 0x0000802F }, /* GL_MINMAX_FORMAT_EXT */ - { 25699, 0x00008030 }, /* GL_MINMAX_SINK */ - { 25714, 0x00008030 }, /* GL_MINMAX_SINK_EXT */ - { 25733, 0x0000821C }, /* GL_MINOR_VERSION */ - { 25750, 0x00008007 }, /* GL_MIN_EXT */ - { 25761, 0x00008904 }, /* GL_MIN_PROGRAM_TEXEL_OFFSET */ - { 25789, 0x00008904 }, /* GL_MIN_PROGRAM_TEXEL_OFFSET_EXT */ - { 25821, 0x00008370 }, /* GL_MIRRORED_REPEAT */ - { 25840, 0x00008370 }, /* GL_MIRRORED_REPEAT_ARB */ - { 25863, 0x00008370 }, /* GL_MIRRORED_REPEAT_IBM */ - { 25886, 0x00008742 }, /* GL_MIRROR_CLAMP_ATI */ - { 25906, 0x00008742 }, /* GL_MIRROR_CLAMP_EXT */ - { 25926, 0x00008912 }, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */ - { 25956, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_ATI */ - { 25984, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */ - { 26012, 0x00001700 }, /* GL_MODELVIEW */ - { 26025, 0x00001700 }, /* GL_MODELVIEW0_ARB */ - { 26043, 0x0000872A }, /* GL_MODELVIEW10_ARB */ - { 26062, 0x0000872B }, /* GL_MODELVIEW11_ARB */ - { 26081, 0x0000872C }, /* GL_MODELVIEW12_ARB */ - { 26100, 0x0000872D }, /* GL_MODELVIEW13_ARB */ - { 26119, 0x0000872E }, /* GL_MODELVIEW14_ARB */ - { 26138, 0x0000872F }, /* GL_MODELVIEW15_ARB */ - { 26157, 0x00008730 }, /* GL_MODELVIEW16_ARB */ - { 26176, 0x00008731 }, /* GL_MODELVIEW17_ARB */ - { 26195, 0x00008732 }, /* GL_MODELVIEW18_ARB */ - { 26214, 0x00008733 }, /* GL_MODELVIEW19_ARB */ - { 26233, 0x0000850A }, /* GL_MODELVIEW1_ARB */ - { 26251, 0x00008734 }, /* GL_MODELVIEW20_ARB */ - { 26270, 0x00008735 }, /* GL_MODELVIEW21_ARB */ - { 26289, 0x00008736 }, /* GL_MODELVIEW22_ARB */ - { 26308, 0x00008737 }, /* GL_MODELVIEW23_ARB */ - { 26327, 0x00008738 }, /* GL_MODELVIEW24_ARB */ - { 26346, 0x00008739 }, /* GL_MODELVIEW25_ARB */ - { 26365, 0x0000873A }, /* GL_MODELVIEW26_ARB */ - { 26384, 0x0000873B }, /* GL_MODELVIEW27_ARB */ - { 26403, 0x0000873C }, /* GL_MODELVIEW28_ARB */ - { 26422, 0x0000873D }, /* GL_MODELVIEW29_ARB */ - { 26441, 0x00008722 }, /* GL_MODELVIEW2_ARB */ - { 26459, 0x0000873E }, /* GL_MODELVIEW30_ARB */ - { 26478, 0x0000873F }, /* GL_MODELVIEW31_ARB */ - { 26497, 0x00008723 }, /* GL_MODELVIEW3_ARB */ - { 26515, 0x00008724 }, /* GL_MODELVIEW4_ARB */ - { 26533, 0x00008725 }, /* GL_MODELVIEW5_ARB */ - { 26551, 0x00008726 }, /* GL_MODELVIEW6_ARB */ - { 26569, 0x00008727 }, /* GL_MODELVIEW7_ARB */ - { 26587, 0x00008728 }, /* GL_MODELVIEW8_ARB */ - { 26605, 0x00008729 }, /* GL_MODELVIEW9_ARB */ - { 26623, 0x00000BA6 }, /* GL_MODELVIEW_MATRIX */ - { 26643, 0x0000898D }, /* GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES */ - { 26685, 0x00008629 }, /* GL_MODELVIEW_PROJECTION_NV */ - { 26712, 0x00000BA3 }, /* GL_MODELVIEW_STACK_DEPTH */ - { 26737, 0x00002100 }, /* GL_MODULATE */ - { 26749, 0x00008744 }, /* GL_MODULATE_ADD_ATI */ - { 26769, 0x00008745 }, /* GL_MODULATE_SIGNED_ADD_ATI */ - { 26796, 0x00008746 }, /* GL_MODULATE_SUBTRACT_ATI */ - { 26821, 0x00000103 }, /* GL_MULT */ - { 26829, 0x0000809D }, /* GL_MULTISAMPLE */ - { 26844, 0x000086B2 }, /* GL_MULTISAMPLE_3DFX */ - { 26864, 0x0000809D }, /* GL_MULTISAMPLE_ARB */ - { 26883, 0x20000000 }, /* GL_MULTISAMPLE_BIT */ - { 26902, 0x20000000 }, /* GL_MULTISAMPLE_BIT_3DFX */ - { 26926, 0x20000000 }, /* GL_MULTISAMPLE_BIT_ARB */ - { 26949, 0x00008534 }, /* GL_MULTISAMPLE_FILTER_HINT_NV */ - { 26979, 0x00002A25 }, /* GL_N3F_V3F */ - { 26990, 0x00000D70 }, /* GL_NAME_STACK_DEPTH */ - { 27010, 0x0000150E }, /* GL_NAND */ - { 27018, 0x00002600 }, /* GL_NEAREST */ - { 27029, 0x0000844E }, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */ - { 27060, 0x0000844D }, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */ - { 27092, 0x00002702 }, /* GL_NEAREST_MIPMAP_LINEAR */ - { 27117, 0x00002700 }, /* GL_NEAREST_MIPMAP_NEAREST */ - { 27143, 0x00000200 }, /* GL_NEVER */ - { 27152, 0x00001102 }, /* GL_NICEST */ - { 27162, 0x00000000 }, /* GL_NONE */ - { 27170, 0x00000000 }, /* GL_NONE_OES */ - { 27182, 0x00001505 }, /* GL_NOOP */ - { 27190, 0x00001508 }, /* GL_NOR */ - { 27197, 0x00000BA1 }, /* GL_NORMALIZE */ - { 27210, 0x00008075 }, /* GL_NORMAL_ARRAY */ - { 27226, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING */ - { 27257, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING_ARB */ - { 27292, 0x0000808F }, /* GL_NORMAL_ARRAY_POINTER */ - { 27316, 0x0000807F }, /* GL_NORMAL_ARRAY_STRIDE */ - { 27339, 0x0000807E }, /* GL_NORMAL_ARRAY_TYPE */ - { 27360, 0x00008511 }, /* GL_NORMAL_MAP */ - { 27374, 0x00008511 }, /* GL_NORMAL_MAP_ARB */ - { 27392, 0x00008511 }, /* GL_NORMAL_MAP_NV */ - { 27409, 0x00008511 }, /* GL_NORMAL_MAP_OES */ - { 27427, 0x00000205 }, /* GL_NOTEQUAL */ - { 27439, 0x00000000 }, /* GL_NO_ERROR */ - { 27451, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */ - { 27485, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB */ - { 27523, 0x0000821D }, /* GL_NUM_EXTENSIONS */ - { 27541, 0x000087FE }, /* GL_NUM_PROGRAM_BINARY_FORMATS_OES */ - { 27575, 0x00008DF9 }, /* GL_NUM_SHADER_BINARY_FORMATS */ - { 27604, 0x00008B89 }, /* GL_OBJECT_ACTIVE_ATTRIBUTES_ARB */ - { 27636, 0x00008B8A }, /* GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB */ - { 27678, 0x00008B86 }, /* GL_OBJECT_ACTIVE_UNIFORMS_ARB */ - { 27708, 0x00008B87 }, /* GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB */ - { 27748, 0x00008B85 }, /* GL_OBJECT_ATTACHED_OBJECTS_ARB */ - { 27779, 0x00008B81 }, /* GL_OBJECT_COMPILE_STATUS_ARB */ - { 27808, 0x00008B80 }, /* GL_OBJECT_DELETE_STATUS_ARB */ - { 27836, 0x00008B84 }, /* GL_OBJECT_INFO_LOG_LENGTH_ARB */ - { 27866, 0x00002401 }, /* GL_OBJECT_LINEAR */ - { 27883, 0x00008B82 }, /* GL_OBJECT_LINK_STATUS_ARB */ - { 27909, 0x00002501 }, /* GL_OBJECT_PLANE */ - { 27925, 0x00008B88 }, /* GL_OBJECT_SHADER_SOURCE_LENGTH_ARB */ - { 27960, 0x00008B4F }, /* GL_OBJECT_SUBTYPE_ARB */ - { 27982, 0x00009112 }, /* GL_OBJECT_TYPE */ - { 27997, 0x00008B4E }, /* GL_OBJECT_TYPE_ARB */ - { 28016, 0x00008B83 }, /* GL_OBJECT_VALIDATE_STATUS_ARB */ - { 28046, 0x00008165 }, /* GL_OCCLUSION_TEST_HP */ - { 28067, 0x00008166 }, /* GL_OCCLUSION_TEST_RESULT_HP */ - { 28095, 0x00000001 }, /* GL_ONE */ - { 28102, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA */ - { 28130, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA_EXT */ - { 28162, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR */ - { 28190, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR_EXT */ - { 28222, 0x00000305 }, /* GL_ONE_MINUS_DST_ALPHA */ - { 28245, 0x00000307 }, /* GL_ONE_MINUS_DST_COLOR */ - { 28268, 0x00000303 }, /* GL_ONE_MINUS_SRC_ALPHA */ - { 28291, 0x00000301 }, /* GL_ONE_MINUS_SRC_COLOR */ - { 28314, 0x00008598 }, /* GL_OPERAND0_ALPHA */ - { 28332, 0x00008598 }, /* GL_OPERAND0_ALPHA_ARB */ - { 28354, 0x00008598 }, /* GL_OPERAND0_ALPHA_EXT */ - { 28376, 0x00008590 }, /* GL_OPERAND0_RGB */ - { 28392, 0x00008590 }, /* GL_OPERAND0_RGB_ARB */ - { 28412, 0x00008590 }, /* GL_OPERAND0_RGB_EXT */ - { 28432, 0x00008599 }, /* GL_OPERAND1_ALPHA */ - { 28450, 0x00008599 }, /* GL_OPERAND1_ALPHA_ARB */ - { 28472, 0x00008599 }, /* GL_OPERAND1_ALPHA_EXT */ - { 28494, 0x00008591 }, /* GL_OPERAND1_RGB */ - { 28510, 0x00008591 }, /* GL_OPERAND1_RGB_ARB */ - { 28530, 0x00008591 }, /* GL_OPERAND1_RGB_EXT */ - { 28550, 0x0000859A }, /* GL_OPERAND2_ALPHA */ - { 28568, 0x0000859A }, /* GL_OPERAND2_ALPHA_ARB */ - { 28590, 0x0000859A }, /* GL_OPERAND2_ALPHA_EXT */ - { 28612, 0x00008592 }, /* GL_OPERAND2_RGB */ - { 28628, 0x00008592 }, /* GL_OPERAND2_RGB_ARB */ - { 28648, 0x00008592 }, /* GL_OPERAND2_RGB_EXT */ - { 28668, 0x0000859B }, /* GL_OPERAND3_ALPHA_NV */ - { 28689, 0x00008593 }, /* GL_OPERAND3_RGB_NV */ - { 28708, 0x00001507 }, /* GL_OR */ - { 28714, 0x00000A01 }, /* GL_ORDER */ - { 28723, 0x0000150D }, /* GL_OR_INVERTED */ - { 28738, 0x0000150B }, /* GL_OR_REVERSE */ - { 28752, 0x00000505 }, /* GL_OUT_OF_MEMORY */ - { 28769, 0x00000D05 }, /* GL_PACK_ALIGNMENT */ - { 28787, 0x0000806C }, /* GL_PACK_IMAGE_HEIGHT */ - { 28808, 0x00008758 }, /* GL_PACK_INVERT_MESA */ - { 28828, 0x00000D01 }, /* GL_PACK_LSB_FIRST */ - { 28846, 0x00000D02 }, /* GL_PACK_ROW_LENGTH */ - { 28865, 0x0000806B }, /* GL_PACK_SKIP_IMAGES */ - { 28885, 0x00000D04 }, /* GL_PACK_SKIP_PIXELS */ - { 28905, 0x00000D03 }, /* GL_PACK_SKIP_ROWS */ - { 28923, 0x00000D00 }, /* GL_PACK_SWAP_BYTES */ - { 28942, 0x00008B92 }, /* GL_PALETTE4_R5_G6_B5_OES */ - { 28967, 0x00008B94 }, /* GL_PALETTE4_RGB5_A1_OES */ - { 28991, 0x00008B90 }, /* GL_PALETTE4_RGB8_OES */ - { 29012, 0x00008B93 }, /* GL_PALETTE4_RGBA4_OES */ - { 29034, 0x00008B91 }, /* GL_PALETTE4_RGBA8_OES */ - { 29056, 0x00008B97 }, /* GL_PALETTE8_R5_G6_B5_OES */ - { 29081, 0x00008B99 }, /* GL_PALETTE8_RGB5_A1_OES */ - { 29105, 0x00008B95 }, /* GL_PALETTE8_RGB8_OES */ - { 29126, 0x00008B98 }, /* GL_PALETTE8_RGBA4_OES */ - { 29148, 0x00008B96 }, /* GL_PALETTE8_RGBA8_OES */ - { 29170, 0x00000700 }, /* GL_PASS_THROUGH_TOKEN */ - { 29192, 0x00000C50 }, /* GL_PERSPECTIVE_CORRECTION_HINT */ - { 29223, 0x00000C79 }, /* GL_PIXEL_MAP_A_TO_A */ - { 29243, 0x00000CB9 }, /* GL_PIXEL_MAP_A_TO_A_SIZE */ - { 29268, 0x00000C78 }, /* GL_PIXEL_MAP_B_TO_B */ - { 29288, 0x00000CB8 }, /* GL_PIXEL_MAP_B_TO_B_SIZE */ - { 29313, 0x00000C77 }, /* GL_PIXEL_MAP_G_TO_G */ - { 29333, 0x00000CB7 }, /* GL_PIXEL_MAP_G_TO_G_SIZE */ - { 29358, 0x00000C75 }, /* GL_PIXEL_MAP_I_TO_A */ - { 29378, 0x00000CB5 }, /* GL_PIXEL_MAP_I_TO_A_SIZE */ - { 29403, 0x00000C74 }, /* GL_PIXEL_MAP_I_TO_B */ - { 29423, 0x00000CB4 }, /* GL_PIXEL_MAP_I_TO_B_SIZE */ - { 29448, 0x00000C73 }, /* GL_PIXEL_MAP_I_TO_G */ - { 29468, 0x00000CB3 }, /* GL_PIXEL_MAP_I_TO_G_SIZE */ - { 29493, 0x00000C70 }, /* GL_PIXEL_MAP_I_TO_I */ - { 29513, 0x00000CB0 }, /* GL_PIXEL_MAP_I_TO_I_SIZE */ - { 29538, 0x00000C72 }, /* GL_PIXEL_MAP_I_TO_R */ - { 29558, 0x00000CB2 }, /* GL_PIXEL_MAP_I_TO_R_SIZE */ - { 29583, 0x00000C76 }, /* GL_PIXEL_MAP_R_TO_R */ - { 29603, 0x00000CB6 }, /* GL_PIXEL_MAP_R_TO_R_SIZE */ - { 29628, 0x00000C71 }, /* GL_PIXEL_MAP_S_TO_S */ - { 29648, 0x00000CB1 }, /* GL_PIXEL_MAP_S_TO_S_SIZE */ - { 29673, 0x00000020 }, /* GL_PIXEL_MODE_BIT */ - { 29691, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER */ - { 29712, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING */ - { 29741, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING_EXT */ - { 29774, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER_EXT */ - { 29799, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER */ - { 29822, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING */ - { 29853, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING_EXT */ - { 29888, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER_EXT */ - { 29915, 0x00001B00 }, /* GL_POINT */ - { 29924, 0x00000000 }, /* GL_POINTS */ - { 29934, 0x00000002 }, /* GL_POINT_BIT */ - { 29947, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION */ - { 29977, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_ARB */ - { 30011, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_EXT */ - { 30045, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_SGIS */ - { 30080, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE */ - { 30109, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_ARB */ - { 30142, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_EXT */ - { 30175, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_SGIS */ - { 30209, 0x00000B11 }, /* GL_POINT_SIZE */ - { 30223, 0x00008B9F }, /* GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES */ - { 30262, 0x00008B9C }, /* GL_POINT_SIZE_ARRAY_OES */ - { 30286, 0x0000898C }, /* GL_POINT_SIZE_ARRAY_POINTER_OES */ - { 30318, 0x0000898B }, /* GL_POINT_SIZE_ARRAY_STRIDE_OES */ - { 30349, 0x0000898A }, /* GL_POINT_SIZE_ARRAY_TYPE_OES */ - { 30378, 0x00000B13 }, /* GL_POINT_SIZE_GRANULARITY */ - { 30404, 0x00008127 }, /* GL_POINT_SIZE_MAX */ - { 30422, 0x00008127 }, /* GL_POINT_SIZE_MAX_ARB */ - { 30444, 0x00008127 }, /* GL_POINT_SIZE_MAX_EXT */ - { 30466, 0x00008127 }, /* GL_POINT_SIZE_MAX_SGIS */ - { 30489, 0x00008126 }, /* GL_POINT_SIZE_MIN */ - { 30507, 0x00008126 }, /* GL_POINT_SIZE_MIN_ARB */ - { 30529, 0x00008126 }, /* GL_POINT_SIZE_MIN_EXT */ - { 30551, 0x00008126 }, /* GL_POINT_SIZE_MIN_SGIS */ - { 30574, 0x00000B12 }, /* GL_POINT_SIZE_RANGE */ - { 30594, 0x00000B10 }, /* GL_POINT_SMOOTH */ - { 30610, 0x00000C51 }, /* GL_POINT_SMOOTH_HINT */ - { 30631, 0x00008861 }, /* GL_POINT_SPRITE */ - { 30647, 0x00008861 }, /* GL_POINT_SPRITE_ARB */ - { 30667, 0x00008CA0 }, /* GL_POINT_SPRITE_COORD_ORIGIN */ - { 30696, 0x00008861 }, /* GL_POINT_SPRITE_NV */ - { 30715, 0x00008861 }, /* GL_POINT_SPRITE_OES */ - { 30735, 0x00008863 }, /* GL_POINT_SPRITE_R_MODE_NV */ - { 30761, 0x00000701 }, /* GL_POINT_TOKEN */ - { 30776, 0x00000009 }, /* GL_POLYGON */ - { 30787, 0x00000008 }, /* GL_POLYGON_BIT */ - { 30802, 0x00000B40 }, /* GL_POLYGON_MODE */ - { 30818, 0x00008039 }, /* GL_POLYGON_OFFSET_BIAS */ - { 30841, 0x00008038 }, /* GL_POLYGON_OFFSET_FACTOR */ - { 30866, 0x00008037 }, /* GL_POLYGON_OFFSET_FILL */ - { 30889, 0x00002A02 }, /* GL_POLYGON_OFFSET_LINE */ - { 30912, 0x00002A01 }, /* GL_POLYGON_OFFSET_POINT */ - { 30936, 0x00002A00 }, /* GL_POLYGON_OFFSET_UNITS */ - { 30960, 0x00000B41 }, /* GL_POLYGON_SMOOTH */ - { 30978, 0x00000C53 }, /* GL_POLYGON_SMOOTH_HINT */ - { 31001, 0x00000B42 }, /* GL_POLYGON_STIPPLE */ - { 31020, 0x00000010 }, /* GL_POLYGON_STIPPLE_BIT */ - { 31043, 0x00000703 }, /* GL_POLYGON_TOKEN */ - { 31060, 0x00001203 }, /* GL_POSITION */ - { 31072, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */ - { 31104, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI */ - { 31140, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */ - { 31173, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI */ - { 31210, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */ - { 31241, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI */ - { 31276, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */ - { 31308, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI */ - { 31344, 0x000080D2 }, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */ - { 31377, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */ - { 31409, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI */ - { 31445, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */ - { 31478, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI */ - { 31515, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS */ - { 31545, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS_SGI */ - { 31579, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE */ - { 31610, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE_SGI */ - { 31645, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS */ - { 31676, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS_EXT */ - { 31711, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE */ - { 31743, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE_EXT */ - { 31779, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS */ - { 31809, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS_EXT */ - { 31843, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE */ - { 31874, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE_EXT */ - { 31909, 0x000080D1 }, /* GL_POST_CONVOLUTION_COLOR_TABLE */ - { 31941, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS */ - { 31972, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS_EXT */ - { 32007, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE */ - { 32039, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE_EXT */ - { 32075, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS */ - { 32104, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS_EXT */ - { 32137, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE */ - { 32167, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE_EXT */ - { 32201, 0x0000817B }, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */ - { 32240, 0x00008179 }, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */ - { 32273, 0x0000817C }, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */ - { 32313, 0x0000817A }, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */ - { 32347, 0x00008578 }, /* GL_PREVIOUS */ - { 32359, 0x00008578 }, /* GL_PREVIOUS_ARB */ - { 32375, 0x00008578 }, /* GL_PREVIOUS_EXT */ - { 32391, 0x00008577 }, /* GL_PRIMARY_COLOR */ - { 32408, 0x00008577 }, /* GL_PRIMARY_COLOR_ARB */ - { 32429, 0x00008577 }, /* GL_PRIMARY_COLOR_EXT */ - { 32450, 0x00008C87 }, /* GL_PRIMITIVES_GENERATED */ - { 32474, 0x00008C87 }, /* GL_PRIMITIVES_GENERATED_EXT */ - { 32502, 0x00008F9D }, /* GL_PRIMITIVE_RESTART */ - { 32523, 0x00008F9E }, /* GL_PRIMITIVE_RESTART_INDEX */ - { 32550, 0x00008559 }, /* GL_PRIMITIVE_RESTART_INDEX_NV */ - { 32580, 0x00008558 }, /* GL_PRIMITIVE_RESTART_NV */ - { 32604, 0x000088B0 }, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */ - { 32637, 0x00008805 }, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */ - { 32669, 0x000088AC }, /* GL_PROGRAM_ATTRIBS_ARB */ - { 32692, 0x000087FF }, /* GL_PROGRAM_BINARY_FORMATS_OES */ - { 32722, 0x00008741 }, /* GL_PROGRAM_BINARY_LENGTH_OES */ - { 32751, 0x00008677 }, /* GL_PROGRAM_BINDING_ARB */ - { 32774, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_ARB */ - { 32804, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_NV */ - { 32833, 0x00008874 }, /* GL_PROGRAM_ERROR_STRING_ARB */ - { 32861, 0x00008876 }, /* GL_PROGRAM_FORMAT_ARB */ - { 32883, 0x00008875 }, /* GL_PROGRAM_FORMAT_ASCII_ARB */ - { 32911, 0x000088A0 }, /* GL_PROGRAM_INSTRUCTIONS_ARB */ - { 32939, 0x00008627 }, /* GL_PROGRAM_LENGTH_ARB */ - { 32961, 0x00008627 }, /* GL_PROGRAM_LENGTH_NV */ - { 32982, 0x000088B2 }, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ - { 33022, 0x00008808 }, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ - { 33061, 0x000088AE }, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */ - { 33091, 0x000088A2 }, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ - { 33126, 0x000088AA }, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */ - { 33159, 0x000088A6 }, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */ - { 33193, 0x0000880A }, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ - { 33232, 0x00008809 }, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ - { 33271, 0x00008B40 }, /* GL_PROGRAM_OBJECT_ARB */ - { 33293, 0x000088A8 }, /* GL_PROGRAM_PARAMETERS_ARB */ - { 33319, 0x00008644 }, /* GL_PROGRAM_PARAMETER_NV */ - { 33343, 0x00008642 }, /* GL_PROGRAM_POINT_SIZE */ - { 33365, 0x00008642 }, /* GL_PROGRAM_POINT_SIZE_ARB */ - { 33391, 0x00008647 }, /* GL_PROGRAM_RESIDENT_NV */ - { 33414, 0x00008628 }, /* GL_PROGRAM_STRING_ARB */ - { 33436, 0x00008628 }, /* GL_PROGRAM_STRING_NV */ - { 33457, 0x00008646 }, /* GL_PROGRAM_TARGET_NV */ - { 33478, 0x000088A4 }, /* GL_PROGRAM_TEMPORARIES_ARB */ - { 33505, 0x00008807 }, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */ - { 33537, 0x00008806 }, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */ - { 33569, 0x000088B6 }, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */ - { 33604, 0x00001701 }, /* GL_PROJECTION */ - { 33618, 0x00000BA7 }, /* GL_PROJECTION_MATRIX */ - { 33639, 0x0000898E }, /* GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES */ - { 33682, 0x00000BA4 }, /* GL_PROJECTION_STACK_DEPTH */ - { 33708, 0x00008E4F }, /* GL_PROVOKING_VERTEX */ - { 33728, 0x00008E4F }, /* GL_PROVOKING_VERTEX_EXT */ - { 33752, 0x000080D3 }, /* GL_PROXY_COLOR_TABLE */ - { 33773, 0x00008025 }, /* GL_PROXY_HISTOGRAM */ - { 33792, 0x00008025 }, /* GL_PROXY_HISTOGRAM_EXT */ - { 33815, 0x000080D5 }, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */ - { 33854, 0x000080D4 }, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */ - { 33892, 0x00008063 }, /* GL_PROXY_TEXTURE_1D */ - { 33912, 0x00008C19 }, /* GL_PROXY_TEXTURE_1D_ARRAY */ - { 33938, 0x00008C19 }, /* GL_PROXY_TEXTURE_1D_ARRAY_EXT */ - { 33968, 0x00008063 }, /* GL_PROXY_TEXTURE_1D_EXT */ - { 33992, 0x00008064 }, /* GL_PROXY_TEXTURE_2D */ - { 34012, 0x00008C1B }, /* GL_PROXY_TEXTURE_2D_ARRAY */ - { 34038, 0x00008C1B }, /* GL_PROXY_TEXTURE_2D_ARRAY_EXT */ - { 34068, 0x00008064 }, /* GL_PROXY_TEXTURE_2D_EXT */ - { 34092, 0x00008070 }, /* GL_PROXY_TEXTURE_3D */ - { 34112, 0x000080BD }, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */ - { 34145, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP */ - { 34171, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP_ARB */ - { 34201, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE */ - { 34228, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_ARB */ - { 34259, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_NV */ - { 34289, 0x00008A1D }, /* GL_PURGEABLE_APPLE */ - { 34308, 0x00002003 }, /* GL_Q */ - { 34313, 0x00001209 }, /* GL_QUADRATIC_ATTENUATION */ - { 34338, 0x00000007 }, /* GL_QUADS */ - { 34347, 0x00008E4C }, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION */ - { 34391, 0x00008E4C }, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT */ - { 34439, 0x00008614 }, /* GL_QUAD_MESH_SUN */ - { 34456, 0x00000008 }, /* GL_QUAD_STRIP */ - { 34470, 0x00008E16 }, /* GL_QUERY_BY_REGION_NO_WAIT */ - { 34497, 0x00008E16 }, /* GL_QUERY_BY_REGION_NO_WAIT_NV */ - { 34527, 0x00008E15 }, /* GL_QUERY_BY_REGION_WAIT */ - { 34551, 0x00008E15 }, /* GL_QUERY_BY_REGION_WAIT_NV */ - { 34578, 0x00008864 }, /* GL_QUERY_COUNTER_BITS */ - { 34600, 0x00008864 }, /* GL_QUERY_COUNTER_BITS_ARB */ - { 34626, 0x00008E14 }, /* GL_QUERY_NO_WAIT */ - { 34643, 0x00008E14 }, /* GL_QUERY_NO_WAIT_NV */ - { 34663, 0x00008866 }, /* GL_QUERY_RESULT */ - { 34679, 0x00008866 }, /* GL_QUERY_RESULT_ARB */ - { 34699, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE */ - { 34725, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE_ARB */ - { 34755, 0x00008E13 }, /* GL_QUERY_WAIT */ - { 34769, 0x00008E13 }, /* GL_QUERY_WAIT_NV */ - { 34786, 0x00002002 }, /* GL_R */ - { 34791, 0x00008C3A }, /* GL_R11F_G11F_B10F */ - { 34809, 0x00008F98 }, /* GL_R16_SNORM */ - { 34822, 0x00002A10 }, /* GL_R3_G3_B2 */ - { 34834, 0x00008F94 }, /* GL_R8_SNORM */ - { 34846, 0x00008C89 }, /* GL_RASTERIZER_DISCARD */ - { 34868, 0x00008C89 }, /* GL_RASTERIZER_DISCARD_EXT */ - { 34894, 0x00019262 }, /* GL_RASTER_POSITION_UNCLIPPED_IBM */ - { 34927, 0x00000C02 }, /* GL_READ_BUFFER */ - { 34942, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER */ - { 34962, 0x00008CAA }, /* GL_READ_FRAMEBUFFER_BINDING */ - { 34990, 0x00008CAA }, /* GL_READ_FRAMEBUFFER_BINDING_EXT */ - { 35022, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER_EXT */ - { 35046, 0x000088B8 }, /* GL_READ_ONLY */ - { 35059, 0x000088B8 }, /* GL_READ_ONLY_ARB */ - { 35076, 0x000088BA }, /* GL_READ_WRITE */ - { 35090, 0x000088BA }, /* GL_READ_WRITE_ARB */ - { 35108, 0x00001903 }, /* GL_RED */ - { 35115, 0x00008016 }, /* GL_REDUCE */ - { 35125, 0x00008016 }, /* GL_REDUCE_EXT */ - { 35139, 0x00000D15 }, /* GL_RED_BIAS */ - { 35151, 0x00000D52 }, /* GL_RED_BITS */ - { 35163, 0x00008D94 }, /* GL_RED_INTEGER */ - { 35178, 0x00008D94 }, /* GL_RED_INTEGER_EXT */ - { 35197, 0x00000D14 }, /* GL_RED_SCALE */ - { 35210, 0x00008F90 }, /* GL_RED_SNORM */ - { 35223, 0x00008512 }, /* GL_REFLECTION_MAP */ - { 35241, 0x00008512 }, /* GL_REFLECTION_MAP_ARB */ - { 35263, 0x00008512 }, /* GL_REFLECTION_MAP_NV */ - { 35284, 0x00008512 }, /* GL_REFLECTION_MAP_OES */ - { 35306, 0x00008A19 }, /* GL_RELEASED_APPLE */ - { 35324, 0x00001C00 }, /* GL_RENDER */ - { 35334, 0x00008D41 }, /* GL_RENDERBUFFER */ - { 35350, 0x00008D53 }, /* GL_RENDERBUFFER_ALPHA_SIZE */ - { 35377, 0x00008D53 }, /* GL_RENDERBUFFER_ALPHA_SIZE_OES */ - { 35408, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING */ - { 35432, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING_EXT */ - { 35460, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING_OES */ - { 35488, 0x00008D52 }, /* GL_RENDERBUFFER_BLUE_SIZE */ - { 35514, 0x00008D52 }, /* GL_RENDERBUFFER_BLUE_SIZE_OES */ - { 35544, 0x00008D54 }, /* GL_RENDERBUFFER_DEPTH_SIZE */ - { 35571, 0x00008D54 }, /* GL_RENDERBUFFER_DEPTH_SIZE_OES */ - { 35602, 0x00008D41 }, /* GL_RENDERBUFFER_EXT */ - { 35622, 0x00008D51 }, /* GL_RENDERBUFFER_GREEN_SIZE */ - { 35649, 0x00008D51 }, /* GL_RENDERBUFFER_GREEN_SIZE_OES */ - { 35680, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT */ - { 35703, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT_EXT */ - { 35730, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT_OES */ - { 35757, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT */ - { 35789, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT_EXT */ - { 35825, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT_OES */ - { 35861, 0x00008D41 }, /* GL_RENDERBUFFER_OES */ - { 35881, 0x00008D50 }, /* GL_RENDERBUFFER_RED_SIZE */ - { 35906, 0x00008D50 }, /* GL_RENDERBUFFER_RED_SIZE_OES */ - { 35935, 0x00008CAB }, /* GL_RENDERBUFFER_SAMPLES */ - { 35959, 0x00008CAB }, /* GL_RENDERBUFFER_SAMPLES_EXT */ - { 35987, 0x00008D55 }, /* GL_RENDERBUFFER_STENCIL_SIZE */ - { 36016, 0x00008D55 }, /* GL_RENDERBUFFER_STENCIL_SIZE_OES */ - { 36049, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH */ - { 36071, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH_EXT */ - { 36097, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH_OES */ - { 36123, 0x00001F01 }, /* GL_RENDERER */ - { 36135, 0x00000C40 }, /* GL_RENDER_MODE */ - { 36150, 0x00002901 }, /* GL_REPEAT */ - { 36160, 0x00001E01 }, /* GL_REPLACE */ - { 36171, 0x00008062 }, /* GL_REPLACE_EXT */ - { 36186, 0x00008153 }, /* GL_REPLICATE_BORDER_HP */ - { 36209, 0x0000803A }, /* GL_RESCALE_NORMAL */ - { 36227, 0x0000803A }, /* GL_RESCALE_NORMAL_EXT */ - { 36249, 0x00008A1B }, /* GL_RETAINED_APPLE */ - { 36267, 0x00000102 }, /* GL_RETURN */ - { 36277, 0x00008F99 }, /* GL_RG16_SNORM */ - { 36291, 0x00008F95 }, /* GL_RG8_SNORM */ - { 36304, 0x00001907 }, /* GL_RGB */ - { 36311, 0x00008052 }, /* GL_RGB10 */ - { 36320, 0x00008059 }, /* GL_RGB10_A2 */ - { 36332, 0x00008059 }, /* GL_RGB10_A2_EXT */ - { 36348, 0x00008052 }, /* GL_RGB10_EXT */ - { 36361, 0x00008053 }, /* GL_RGB12 */ - { 36370, 0x00008053 }, /* GL_RGB12_EXT */ - { 36383, 0x00008054 }, /* GL_RGB16 */ - { 36392, 0x0000881B }, /* GL_RGB16F */ - { 36402, 0x00008D89 }, /* GL_RGB16I */ - { 36412, 0x00008D89 }, /* GL_RGB16I_EXT */ - { 36426, 0x00008D77 }, /* GL_RGB16UI */ - { 36437, 0x00008D77 }, /* GL_RGB16UI_EXT */ - { 36452, 0x00008054 }, /* GL_RGB16_EXT */ - { 36465, 0x00008F9A }, /* GL_RGB16_SNORM */ - { 36480, 0x0000804E }, /* GL_RGB2_EXT */ - { 36492, 0x00008815 }, /* GL_RGB32F */ - { 36502, 0x00008D83 }, /* GL_RGB32I */ - { 36512, 0x00008D83 }, /* GL_RGB32I_EXT */ - { 36526, 0x00008D71 }, /* GL_RGB32UI */ - { 36537, 0x00008D71 }, /* GL_RGB32UI_EXT */ - { 36552, 0x0000804F }, /* GL_RGB4 */ - { 36560, 0x0000804F }, /* GL_RGB4_EXT */ - { 36572, 0x000083A1 }, /* GL_RGB4_S3TC */ - { 36585, 0x00008050 }, /* GL_RGB5 */ - { 36593, 0x00008D62 }, /* GL_RGB565 */ - { 36603, 0x00008D62 }, /* GL_RGB565_OES */ - { 36617, 0x00008057 }, /* GL_RGB5_A1 */ - { 36628, 0x00008057 }, /* GL_RGB5_A1_EXT */ - { 36643, 0x00008057 }, /* GL_RGB5_A1_OES */ - { 36658, 0x00008050 }, /* GL_RGB5_EXT */ - { 36670, 0x00008051 }, /* GL_RGB8 */ - { 36678, 0x00008D8F }, /* GL_RGB8I */ - { 36687, 0x00008D8F }, /* GL_RGB8I_EXT */ - { 36700, 0x00008D7D }, /* GL_RGB8UI */ - { 36710, 0x00008D7D }, /* GL_RGB8UI_EXT */ - { 36724, 0x00008051 }, /* GL_RGB8_EXT */ - { 36736, 0x00008051 }, /* GL_RGB8_OES */ - { 36748, 0x00008F96 }, /* GL_RGB8_SNORM */ - { 36762, 0x00008C3D }, /* GL_RGB9_E5 */ - { 36773, 0x00001908 }, /* GL_RGBA */ - { 36781, 0x0000805A }, /* GL_RGBA12 */ - { 36791, 0x0000805A }, /* GL_RGBA12_EXT */ - { 36805, 0x0000805B }, /* GL_RGBA16 */ - { 36815, 0x0000881A }, /* GL_RGBA16F */ - { 36826, 0x00008D88 }, /* GL_RGBA16I */ - { 36837, 0x00008D88 }, /* GL_RGBA16I_EXT */ - { 36852, 0x00008D76 }, /* GL_RGBA16UI */ - { 36864, 0x00008D76 }, /* GL_RGBA16UI_EXT */ - { 36880, 0x0000805B }, /* GL_RGBA16_EXT */ - { 36894, 0x00008F9B }, /* GL_RGBA16_SNORM */ - { 36910, 0x00008055 }, /* GL_RGBA2 */ - { 36919, 0x00008055 }, /* GL_RGBA2_EXT */ - { 36932, 0x00008814 }, /* GL_RGBA32F */ - { 36943, 0x00008D82 }, /* GL_RGBA32I */ - { 36954, 0x00008D82 }, /* GL_RGBA32I_EXT */ - { 36969, 0x00008D70 }, /* GL_RGBA32UI */ - { 36981, 0x00008D70 }, /* GL_RGBA32UI_EXT */ - { 36997, 0x00008056 }, /* GL_RGBA4 */ - { 37006, 0x000083A5 }, /* GL_RGBA4_DXT5_S3TC */ - { 37025, 0x00008056 }, /* GL_RGBA4_EXT */ - { 37038, 0x00008056 }, /* GL_RGBA4_OES */ - { 37051, 0x000083A3 }, /* GL_RGBA4_S3TC */ - { 37065, 0x00008058 }, /* GL_RGBA8 */ - { 37074, 0x00008D8E }, /* GL_RGBA8I */ - { 37084, 0x00008D8E }, /* GL_RGBA8I_EXT */ - { 37098, 0x00008D7C }, /* GL_RGBA8UI */ - { 37109, 0x00008D7C }, /* GL_RGBA8UI_EXT */ - { 37124, 0x00008058 }, /* GL_RGBA8_EXT */ - { 37137, 0x00008058 }, /* GL_RGBA8_OES */ - { 37150, 0x00008F97 }, /* GL_RGBA8_SNORM */ - { 37165, 0x000083A4 }, /* GL_RGBA_DXT5_S3TC */ - { 37183, 0x00008820 }, /* GL_RGBA_FLOAT_MODE_ARB */ - { 37206, 0x00008D99 }, /* GL_RGBA_INTEGER */ - { 37222, 0x00008D99 }, /* GL_RGBA_INTEGER_EXT */ - { 37242, 0x00008D9E }, /* GL_RGBA_INTEGER_MODE_EXT */ - { 37267, 0x00000C31 }, /* GL_RGBA_MODE */ - { 37280, 0x000083A2 }, /* GL_RGBA_S3TC */ - { 37293, 0x00008F93 }, /* GL_RGBA_SNORM */ - { 37307, 0x00008D98 }, /* GL_RGB_INTEGER */ - { 37322, 0x00008D98 }, /* GL_RGB_INTEGER_EXT */ - { 37341, 0x000083A0 }, /* GL_RGB_S3TC */ - { 37353, 0x00008573 }, /* GL_RGB_SCALE */ - { 37366, 0x00008573 }, /* GL_RGB_SCALE_ARB */ - { 37383, 0x00008573 }, /* GL_RGB_SCALE_EXT */ - { 37400, 0x00008F92 }, /* GL_RGB_SNORM */ - { 37413, 0x00008F91 }, /* GL_RG_SNORM */ - { 37425, 0x00000407 }, /* GL_RIGHT */ - { 37434, 0x00002000 }, /* GL_S */ - { 37439, 0x00008B5D }, /* GL_SAMPLER_1D */ - { 37453, 0x00008DC0 }, /* GL_SAMPLER_1D_ARRAY */ - { 37473, 0x00008DC0 }, /* GL_SAMPLER_1D_ARRAY_EXT */ - { 37497, 0x00008DC3 }, /* GL_SAMPLER_1D_ARRAY_SHADOW */ - { 37524, 0x00008DC3 }, /* GL_SAMPLER_1D_ARRAY_SHADOW_EXT */ - { 37555, 0x00008B61 }, /* GL_SAMPLER_1D_SHADOW */ - { 37576, 0x00008B5E }, /* GL_SAMPLER_2D */ - { 37590, 0x00008DC1 }, /* GL_SAMPLER_2D_ARRAY */ - { 37610, 0x00008DC1 }, /* GL_SAMPLER_2D_ARRAY_EXT */ - { 37634, 0x00008DC4 }, /* GL_SAMPLER_2D_ARRAY_SHADOW */ - { 37661, 0x00008DC4 }, /* GL_SAMPLER_2D_ARRAY_SHADOW_EXT */ - { 37692, 0x00008B63 }, /* GL_SAMPLER_2D_RECT */ - { 37711, 0x00008B64 }, /* GL_SAMPLER_2D_RECT_SHADOW */ - { 37737, 0x00008B62 }, /* GL_SAMPLER_2D_SHADOW */ - { 37758, 0x00008B5F }, /* GL_SAMPLER_3D */ - { 37772, 0x00008B5F }, /* GL_SAMPLER_3D_OES */ - { 37790, 0x00008DC2 }, /* GL_SAMPLER_BUFFER */ - { 37808, 0x00008DC2 }, /* GL_SAMPLER_BUFFER_EXT */ - { 37830, 0x00008B60 }, /* GL_SAMPLER_CUBE */ - { 37846, 0x00008DC5 }, /* GL_SAMPLER_CUBE_SHADOW */ - { 37869, 0x00008DC5 }, /* GL_SAMPLER_CUBE_SHADOW_EXT */ - { 37896, 0x000080A9 }, /* GL_SAMPLES */ - { 37907, 0x000086B4 }, /* GL_SAMPLES_3DFX */ - { 37923, 0x000080A9 }, /* GL_SAMPLES_ARB */ - { 37938, 0x00008914 }, /* GL_SAMPLES_PASSED */ - { 37956, 0x00008914 }, /* GL_SAMPLES_PASSED_ARB */ - { 37978, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ - { 38006, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE_ARB */ - { 38038, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE */ - { 38061, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE_ARB */ - { 38088, 0x000080A8 }, /* GL_SAMPLE_BUFFERS */ - { 38106, 0x000086B3 }, /* GL_SAMPLE_BUFFERS_3DFX */ - { 38129, 0x000080A8 }, /* GL_SAMPLE_BUFFERS_ARB */ - { 38151, 0x000080A0 }, /* GL_SAMPLE_COVERAGE */ - { 38170, 0x000080A0 }, /* GL_SAMPLE_COVERAGE_ARB */ - { 38193, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT */ - { 38219, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT_ARB */ - { 38249, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE */ - { 38274, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE_ARB */ - { 38303, 0x00080000 }, /* GL_SCISSOR_BIT */ - { 38318, 0x00000C10 }, /* GL_SCISSOR_BOX */ - { 38333, 0x00000C11 }, /* GL_SCISSOR_TEST */ - { 38349, 0x0000845E }, /* GL_SECONDARY_COLOR_ARRAY */ - { 38374, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ - { 38414, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB */ - { 38458, 0x0000845D }, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ - { 38491, 0x0000845A }, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ - { 38521, 0x0000845C }, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ - { 38553, 0x0000845B }, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ - { 38583, 0x00001C02 }, /* GL_SELECT */ - { 38593, 0x00000DF3 }, /* GL_SELECTION_BUFFER_POINTER */ - { 38621, 0x00000DF4 }, /* GL_SELECTION_BUFFER_SIZE */ - { 38646, 0x00008012 }, /* GL_SEPARABLE_2D */ - { 38662, 0x00008C8D }, /* GL_SEPARATE_ATTRIBS */ - { 38682, 0x00008C8D }, /* GL_SEPARATE_ATTRIBS_EXT */ - { 38706, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR */ - { 38733, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR_EXT */ - { 38764, 0x0000150F }, /* GL_SET */ - { 38771, 0x00008DF8 }, /* GL_SHADER_BINARY_FORMATS */ - { 38796, 0x00008DFA }, /* GL_SHADER_COMPILER */ - { 38815, 0x00008B48 }, /* GL_SHADER_OBJECT_ARB */ - { 38836, 0x00008B88 }, /* GL_SHADER_SOURCE_LENGTH */ - { 38860, 0x00008B4F }, /* GL_SHADER_TYPE */ - { 38875, 0x00000B54 }, /* GL_SHADE_MODEL */ - { 38890, 0x00008B8C }, /* GL_SHADING_LANGUAGE_VERSION */ - { 38918, 0x000080BF }, /* GL_SHADOW_AMBIENT_SGIX */ - { 38941, 0x000081FB }, /* GL_SHARED_TEXTURE_PALETTE_EXT */ - { 38971, 0x00001601 }, /* GL_SHININESS */ - { 38984, 0x00001402 }, /* GL_SHORT */ - { 38993, 0x00009119 }, /* GL_SIGNALED */ - { 39005, 0x00008F9C }, /* GL_SIGNED_NORMALIZED */ - { 39026, 0x000081F9 }, /* GL_SINGLE_COLOR */ - { 39042, 0x000081F9 }, /* GL_SINGLE_COLOR_EXT */ - { 39062, 0x000085CC }, /* GL_SLICE_ACCUM_SUN */ - { 39081, 0x00008C46 }, /* GL_SLUMINANCE */ - { 39095, 0x00008C47 }, /* GL_SLUMINANCE8 */ - { 39110, 0x00008C45 }, /* GL_SLUMINANCE8_ALPHA8 */ - { 39132, 0x00008C44 }, /* GL_SLUMINANCE_ALPHA */ - { 39152, 0x00001D01 }, /* GL_SMOOTH */ - { 39162, 0x00000B23 }, /* GL_SMOOTH_LINE_WIDTH_GRANULARITY */ - { 39195, 0x00000B22 }, /* GL_SMOOTH_LINE_WIDTH_RANGE */ - { 39222, 0x00000B13 }, /* GL_SMOOTH_POINT_SIZE_GRANULARITY */ - { 39255, 0x00000B12 }, /* GL_SMOOTH_POINT_SIZE_RANGE */ - { 39282, 0x00008588 }, /* GL_SOURCE0_ALPHA */ - { 39299, 0x00008588 }, /* GL_SOURCE0_ALPHA_ARB */ - { 39320, 0x00008588 }, /* GL_SOURCE0_ALPHA_EXT */ - { 39341, 0x00008580 }, /* GL_SOURCE0_RGB */ - { 39356, 0x00008580 }, /* GL_SOURCE0_RGB_ARB */ - { 39375, 0x00008580 }, /* GL_SOURCE0_RGB_EXT */ - { 39394, 0x00008589 }, /* GL_SOURCE1_ALPHA */ - { 39411, 0x00008589 }, /* GL_SOURCE1_ALPHA_ARB */ - { 39432, 0x00008589 }, /* GL_SOURCE1_ALPHA_EXT */ - { 39453, 0x00008581 }, /* GL_SOURCE1_RGB */ - { 39468, 0x00008581 }, /* GL_SOURCE1_RGB_ARB */ - { 39487, 0x00008581 }, /* GL_SOURCE1_RGB_EXT */ - { 39506, 0x0000858A }, /* GL_SOURCE2_ALPHA */ - { 39523, 0x0000858A }, /* GL_SOURCE2_ALPHA_ARB */ - { 39544, 0x0000858A }, /* GL_SOURCE2_ALPHA_EXT */ - { 39565, 0x00008582 }, /* GL_SOURCE2_RGB */ - { 39580, 0x00008582 }, /* GL_SOURCE2_RGB_ARB */ - { 39599, 0x00008582 }, /* GL_SOURCE2_RGB_EXT */ - { 39618, 0x0000858B }, /* GL_SOURCE3_ALPHA_NV */ - { 39638, 0x00008583 }, /* GL_SOURCE3_RGB_NV */ - { 39656, 0x00001202 }, /* GL_SPECULAR */ - { 39668, 0x00002402 }, /* GL_SPHERE_MAP */ - { 39682, 0x00001206 }, /* GL_SPOT_CUTOFF */ - { 39697, 0x00001204 }, /* GL_SPOT_DIRECTION */ - { 39715, 0x00001205 }, /* GL_SPOT_EXPONENT */ - { 39732, 0x00008588 }, /* GL_SRC0_ALPHA */ - { 39746, 0x00008580 }, /* GL_SRC0_RGB */ - { 39758, 0x00008589 }, /* GL_SRC1_ALPHA */ - { 39772, 0x00008581 }, /* GL_SRC1_RGB */ - { 39784, 0x0000858A }, /* GL_SRC2_ALPHA */ - { 39798, 0x00008582 }, /* GL_SRC2_RGB */ - { 39810, 0x00000302 }, /* GL_SRC_ALPHA */ - { 39823, 0x00000308 }, /* GL_SRC_ALPHA_SATURATE */ - { 39845, 0x00000300 }, /* GL_SRC_COLOR */ - { 39858, 0x00008C40 }, /* GL_SRGB */ - { 39866, 0x00008C41 }, /* GL_SRGB8 */ - { 39875, 0x00008C43 }, /* GL_SRGB8_ALPHA8 */ - { 39891, 0x00008C42 }, /* GL_SRGB_ALPHA */ - { 39905, 0x00000503 }, /* GL_STACK_OVERFLOW */ - { 39923, 0x00000504 }, /* GL_STACK_UNDERFLOW */ - { 39942, 0x000088E6 }, /* GL_STATIC_COPY */ - { 39957, 0x000088E6 }, /* GL_STATIC_COPY_ARB */ - { 39976, 0x000088E4 }, /* GL_STATIC_DRAW */ - { 39991, 0x000088E4 }, /* GL_STATIC_DRAW_ARB */ - { 40010, 0x000088E5 }, /* GL_STATIC_READ */ - { 40025, 0x000088E5 }, /* GL_STATIC_READ_ARB */ - { 40044, 0x00001802 }, /* GL_STENCIL */ - { 40055, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT */ - { 40077, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_EXT */ - { 40103, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_OES */ - { 40129, 0x00008801 }, /* GL_STENCIL_BACK_FAIL */ - { 40150, 0x00008801 }, /* GL_STENCIL_BACK_FAIL_ATI */ - { 40175, 0x00008800 }, /* GL_STENCIL_BACK_FUNC */ - { 40196, 0x00008800 }, /* GL_STENCIL_BACK_FUNC_ATI */ - { 40221, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ - { 40253, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI */ - { 40289, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ - { 40321, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI */ - { 40357, 0x00008CA3 }, /* GL_STENCIL_BACK_REF */ - { 40377, 0x00008CA4 }, /* GL_STENCIL_BACK_VALUE_MASK */ - { 40404, 0x00008CA5 }, /* GL_STENCIL_BACK_WRITEMASK */ - { 40430, 0x00000D57 }, /* GL_STENCIL_BITS */ - { 40446, 0x00008224 }, /* GL_STENCIL_BUFFER */ - { 40464, 0x00000400 }, /* GL_STENCIL_BUFFER_BIT */ - { 40486, 0x00000B91 }, /* GL_STENCIL_CLEAR_VALUE */ - { 40509, 0x00000B94 }, /* GL_STENCIL_FAIL */ - { 40525, 0x00000B92 }, /* GL_STENCIL_FUNC */ - { 40541, 0x00001901 }, /* GL_STENCIL_INDEX */ - { 40558, 0x00008D46 }, /* GL_STENCIL_INDEX1 */ - { 40576, 0x00008D49 }, /* GL_STENCIL_INDEX16 */ - { 40595, 0x00008D49 }, /* GL_STENCIL_INDEX16_EXT */ - { 40618, 0x00008D46 }, /* GL_STENCIL_INDEX1_EXT */ - { 40640, 0x00008D46 }, /* GL_STENCIL_INDEX1_OES */ - { 40662, 0x00008D47 }, /* GL_STENCIL_INDEX4 */ - { 40680, 0x00008D47 }, /* GL_STENCIL_INDEX4_EXT */ - { 40702, 0x00008D47 }, /* GL_STENCIL_INDEX4_OES */ - { 40724, 0x00008D48 }, /* GL_STENCIL_INDEX8 */ - { 40742, 0x00008D48 }, /* GL_STENCIL_INDEX8_EXT */ - { 40764, 0x00008D48 }, /* GL_STENCIL_INDEX8_OES */ - { 40786, 0x00008D45 }, /* GL_STENCIL_INDEX_EXT */ - { 40807, 0x00000B95 }, /* GL_STENCIL_PASS_DEPTH_FAIL */ - { 40834, 0x00000B96 }, /* GL_STENCIL_PASS_DEPTH_PASS */ - { 40861, 0x00000B97 }, /* GL_STENCIL_REF */ - { 40876, 0x00000B90 }, /* GL_STENCIL_TEST */ - { 40892, 0x00008910 }, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ - { 40921, 0x00000B93 }, /* GL_STENCIL_VALUE_MASK */ - { 40943, 0x00000B98 }, /* GL_STENCIL_WRITEMASK */ - { 40964, 0x00000C33 }, /* GL_STEREO */ - { 40974, 0x000085BE }, /* GL_STORAGE_CACHED_APPLE */ - { 40998, 0x000085BD }, /* GL_STORAGE_PRIVATE_APPLE */ - { 41023, 0x000085BF }, /* GL_STORAGE_SHARED_APPLE */ - { 41047, 0x000088E2 }, /* GL_STREAM_COPY */ - { 41062, 0x000088E2 }, /* GL_STREAM_COPY_ARB */ - { 41081, 0x000088E0 }, /* GL_STREAM_DRAW */ - { 41096, 0x000088E0 }, /* GL_STREAM_DRAW_ARB */ - { 41115, 0x000088E1 }, /* GL_STREAM_READ */ - { 41130, 0x000088E1 }, /* GL_STREAM_READ_ARB */ - { 41149, 0x00000D50 }, /* GL_SUBPIXEL_BITS */ - { 41166, 0x000084E7 }, /* GL_SUBTRACT */ - { 41178, 0x000084E7 }, /* GL_SUBTRACT_ARB */ - { 41194, 0x00009113 }, /* GL_SYNC_CONDITION */ - { 41212, 0x00009116 }, /* GL_SYNC_FENCE */ - { 41226, 0x00009115 }, /* GL_SYNC_FLAGS */ - { 41240, 0x00000001 }, /* GL_SYNC_FLUSH_COMMANDS_BIT */ - { 41267, 0x00009117 }, /* GL_SYNC_GPU_COMMANDS_COMPLETE */ - { 41297, 0x00009114 }, /* GL_SYNC_STATUS */ - { 41312, 0x00002001 }, /* GL_T */ - { 41317, 0x00002A2A }, /* GL_T2F_C3F_V3F */ - { 41332, 0x00002A2C }, /* GL_T2F_C4F_N3F_V3F */ - { 41351, 0x00002A29 }, /* GL_T2F_C4UB_V3F */ - { 41367, 0x00002A2B }, /* GL_T2F_N3F_V3F */ - { 41382, 0x00002A27 }, /* GL_T2F_V3F */ - { 41393, 0x00002A2D }, /* GL_T4F_C4F_N3F_V4F */ - { 41412, 0x00002A28 }, /* GL_T4F_V4F */ - { 41423, 0x00008031 }, /* GL_TABLE_TOO_LARGE_EXT */ - { 41446, 0x00001702 }, /* GL_TEXTURE */ - { 41457, 0x000084C0 }, /* GL_TEXTURE0 */ - { 41469, 0x000084C0 }, /* GL_TEXTURE0_ARB */ - { 41485, 0x000084C1 }, /* GL_TEXTURE1 */ - { 41497, 0x000084CA }, /* GL_TEXTURE10 */ - { 41510, 0x000084CA }, /* GL_TEXTURE10_ARB */ - { 41527, 0x000084CB }, /* GL_TEXTURE11 */ - { 41540, 0x000084CB }, /* GL_TEXTURE11_ARB */ - { 41557, 0x000084CC }, /* GL_TEXTURE12 */ - { 41570, 0x000084CC }, /* GL_TEXTURE12_ARB */ - { 41587, 0x000084CD }, /* GL_TEXTURE13 */ - { 41600, 0x000084CD }, /* GL_TEXTURE13_ARB */ - { 41617, 0x000084CE }, /* GL_TEXTURE14 */ - { 41630, 0x000084CE }, /* GL_TEXTURE14_ARB */ - { 41647, 0x000084CF }, /* GL_TEXTURE15 */ - { 41660, 0x000084CF }, /* GL_TEXTURE15_ARB */ - { 41677, 0x000084D0 }, /* GL_TEXTURE16 */ - { 41690, 0x000084D0 }, /* GL_TEXTURE16_ARB */ - { 41707, 0x000084D1 }, /* GL_TEXTURE17 */ - { 41720, 0x000084D1 }, /* GL_TEXTURE17_ARB */ - { 41737, 0x000084D2 }, /* GL_TEXTURE18 */ - { 41750, 0x000084D2 }, /* GL_TEXTURE18_ARB */ - { 41767, 0x000084D3 }, /* GL_TEXTURE19 */ - { 41780, 0x000084D3 }, /* GL_TEXTURE19_ARB */ - { 41797, 0x000084C1 }, /* GL_TEXTURE1_ARB */ - { 41813, 0x000084C2 }, /* GL_TEXTURE2 */ - { 41825, 0x000084D4 }, /* GL_TEXTURE20 */ - { 41838, 0x000084D4 }, /* GL_TEXTURE20_ARB */ - { 41855, 0x000084D5 }, /* GL_TEXTURE21 */ - { 41868, 0x000084D5 }, /* GL_TEXTURE21_ARB */ - { 41885, 0x000084D6 }, /* GL_TEXTURE22 */ - { 41898, 0x000084D6 }, /* GL_TEXTURE22_ARB */ - { 41915, 0x000084D7 }, /* GL_TEXTURE23 */ - { 41928, 0x000084D7 }, /* GL_TEXTURE23_ARB */ - { 41945, 0x000084D8 }, /* GL_TEXTURE24 */ - { 41958, 0x000084D8 }, /* GL_TEXTURE24_ARB */ - { 41975, 0x000084D9 }, /* GL_TEXTURE25 */ - { 41988, 0x000084D9 }, /* GL_TEXTURE25_ARB */ - { 42005, 0x000084DA }, /* GL_TEXTURE26 */ - { 42018, 0x000084DA }, /* GL_TEXTURE26_ARB */ - { 42035, 0x000084DB }, /* GL_TEXTURE27 */ - { 42048, 0x000084DB }, /* GL_TEXTURE27_ARB */ - { 42065, 0x000084DC }, /* GL_TEXTURE28 */ - { 42078, 0x000084DC }, /* GL_TEXTURE28_ARB */ - { 42095, 0x000084DD }, /* GL_TEXTURE29 */ - { 42108, 0x000084DD }, /* GL_TEXTURE29_ARB */ - { 42125, 0x000084C2 }, /* GL_TEXTURE2_ARB */ - { 42141, 0x000084C3 }, /* GL_TEXTURE3 */ - { 42153, 0x000084DE }, /* GL_TEXTURE30 */ - { 42166, 0x000084DE }, /* GL_TEXTURE30_ARB */ - { 42183, 0x000084DF }, /* GL_TEXTURE31 */ - { 42196, 0x000084DF }, /* GL_TEXTURE31_ARB */ - { 42213, 0x000084C3 }, /* GL_TEXTURE3_ARB */ - { 42229, 0x000084C4 }, /* GL_TEXTURE4 */ - { 42241, 0x000084C4 }, /* GL_TEXTURE4_ARB */ - { 42257, 0x000084C5 }, /* GL_TEXTURE5 */ - { 42269, 0x000084C5 }, /* GL_TEXTURE5_ARB */ - { 42285, 0x000084C6 }, /* GL_TEXTURE6 */ - { 42297, 0x000084C6 }, /* GL_TEXTURE6_ARB */ - { 42313, 0x000084C7 }, /* GL_TEXTURE7 */ - { 42325, 0x000084C7 }, /* GL_TEXTURE7_ARB */ - { 42341, 0x000084C8 }, /* GL_TEXTURE8 */ - { 42353, 0x000084C8 }, /* GL_TEXTURE8_ARB */ - { 42369, 0x000084C9 }, /* GL_TEXTURE9 */ - { 42381, 0x000084C9 }, /* GL_TEXTURE9_ARB */ - { 42397, 0x00000DE0 }, /* GL_TEXTURE_1D */ - { 42411, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY */ - { 42431, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY_EXT */ - { 42455, 0x00000DE1 }, /* GL_TEXTURE_2D */ - { 42469, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY */ - { 42489, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY_EXT */ - { 42513, 0x0000806F }, /* GL_TEXTURE_3D */ - { 42527, 0x0000806F }, /* GL_TEXTURE_3D_OES */ - { 42545, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE */ - { 42567, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE_EXT */ - { 42593, 0x0000813C }, /* GL_TEXTURE_BASE_LEVEL */ - { 42615, 0x00008068 }, /* GL_TEXTURE_BINDING_1D */ - { 42637, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY */ - { 42665, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY_EXT */ - { 42697, 0x00008069 }, /* GL_TEXTURE_BINDING_2D */ - { 42719, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY */ - { 42747, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY_EXT */ - { 42779, 0x0000806A }, /* GL_TEXTURE_BINDING_3D */ - { 42801, 0x0000806A }, /* GL_TEXTURE_BINDING_3D_OES */ - { 42827, 0x00008C2C }, /* GL_TEXTURE_BINDING_BUFFER */ - { 42853, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP */ - { 42881, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_ARB */ - { 42913, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_OES */ - { 42945, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE */ - { 42974, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_ARB */ - { 43007, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_NV */ - { 43039, 0x00040000 }, /* GL_TEXTURE_BIT */ - { 43054, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE */ - { 43075, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE_EXT */ - { 43100, 0x00001005 }, /* GL_TEXTURE_BORDER */ - { 43118, 0x00001004 }, /* GL_TEXTURE_BORDER_COLOR */ - { 43142, 0x00008C2A }, /* GL_TEXTURE_BUFFER */ - { 43160, 0x00008C2D }, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING */ - { 43197, 0x00008C2E }, /* GL_TEXTURE_BUFFER_FORMAT */ - { 43222, 0x00008171 }, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ - { 43253, 0x00008176 }, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ - { 43283, 0x00008172 }, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ - { 43313, 0x00008175 }, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ - { 43348, 0x00008173 }, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ - { 43379, 0x00008174 }, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ - { 43417, 0x000080BC }, /* GL_TEXTURE_COLOR_TABLE_SGI */ - { 43444, 0x000081EF }, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ - { 43476, 0x000080BF }, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */ - { 43510, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC */ - { 43534, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC_ARB */ - { 43562, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE */ - { 43586, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE_ARB */ - { 43614, 0x0000819B }, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ - { 43647, 0x0000819A }, /* GL_TEXTURE_COMPARE_SGIX */ - { 43671, 0x00001003 }, /* GL_TEXTURE_COMPONENTS */ - { 43693, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED */ - { 43715, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED_ARB */ - { 43741, 0x000086A3 }, /* GL_TEXTURE_COMPRESSED_FORMATS_ARB */ - { 43775, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ - { 43808, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB */ - { 43845, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT */ - { 43873, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT_ARB */ - { 43905, 0x00008078 }, /* GL_TEXTURE_COORD_ARRAY */ - { 43928, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ - { 43966, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB */ - { 44008, 0x00008092 }, /* GL_TEXTURE_COORD_ARRAY_POINTER */ - { 44039, 0x00008088 }, /* GL_TEXTURE_COORD_ARRAY_SIZE */ - { 44067, 0x0000808A }, /* GL_TEXTURE_COORD_ARRAY_STRIDE */ - { 44097, 0x00008089 }, /* GL_TEXTURE_COORD_ARRAY_TYPE */ - { 44125, 0x00008B9D }, /* GL_TEXTURE_CROP_RECT_OES */ - { 44150, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP */ - { 44170, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_ARB */ - { 44194, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ - { 44225, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB */ - { 44260, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES */ - { 44295, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ - { 44326, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB */ - { 44361, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES */ - { 44396, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ - { 44427, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB */ - { 44462, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES */ - { 44497, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_OES */ - { 44521, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ - { 44552, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB */ - { 44587, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES */ - { 44622, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ - { 44653, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB */ - { 44688, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES */ - { 44723, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ - { 44754, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB */ - { 44789, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES */ - { 44824, 0x000088F4 }, /* GL_TEXTURE_CUBE_MAP_SEAMLESS */ - { 44853, 0x00008071 }, /* GL_TEXTURE_DEPTH */ - { 44870, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE */ - { 44892, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE_ARB */ - { 44918, 0x00002300 }, /* GL_TEXTURE_ENV */ - { 44933, 0x00002201 }, /* GL_TEXTURE_ENV_COLOR */ - { 44954, 0x00002200 }, /* GL_TEXTURE_ENV_MODE */ - { 44974, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL */ - { 45000, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL_EXT */ - { 45030, 0x00002500 }, /* GL_TEXTURE_GEN_MODE */ - { 45050, 0x00002500 }, /* GL_TEXTURE_GEN_MODE_OES */ - { 45074, 0x00000C63 }, /* GL_TEXTURE_GEN_Q */ - { 45091, 0x00000C62 }, /* GL_TEXTURE_GEN_R */ - { 45108, 0x00000C60 }, /* GL_TEXTURE_GEN_S */ - { 45125, 0x00008D60 }, /* GL_TEXTURE_GEN_STR_OES */ - { 45148, 0x00000C61 }, /* GL_TEXTURE_GEN_T */ - { 45165, 0x0000819D }, /* GL_TEXTURE_GEQUAL_R_SGIX */ - { 45190, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE */ - { 45212, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE_EXT */ - { 45238, 0x00001001 }, /* GL_TEXTURE_HEIGHT */ - { 45256, 0x000080ED }, /* GL_TEXTURE_INDEX_SIZE_EXT */ - { 45282, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE */ - { 45308, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE_EXT */ - { 45338, 0x00001003 }, /* GL_TEXTURE_INTERNAL_FORMAT */ - { 45365, 0x0000819C }, /* GL_TEXTURE_LEQUAL_R_SGIX */ - { 45390, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS */ - { 45410, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS_EXT */ - { 45434, 0x00008190 }, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ - { 45461, 0x0000818E }, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ - { 45488, 0x0000818F }, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ - { 45515, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE */ - { 45541, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE_EXT */ - { 45571, 0x00002800 }, /* GL_TEXTURE_MAG_FILTER */ - { 45593, 0x00000BA8 }, /* GL_TEXTURE_MATRIX */ - { 45611, 0x0000898F }, /* GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES */ - { 45651, 0x000084FE }, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ - { 45681, 0x0000836B }, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ - { 45709, 0x00008369 }, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ - { 45737, 0x0000836A }, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ - { 45765, 0x0000813D }, /* GL_TEXTURE_MAX_LEVEL */ - { 45786, 0x0000813B }, /* GL_TEXTURE_MAX_LOD */ - { 45805, 0x00002801 }, /* GL_TEXTURE_MIN_FILTER */ - { 45827, 0x0000813A }, /* GL_TEXTURE_MIN_LOD */ - { 45846, 0x00008066 }, /* GL_TEXTURE_PRIORITY */ - { 45866, 0x000085B7 }, /* GL_TEXTURE_RANGE_LENGTH_APPLE */ - { 45896, 0x000085B8 }, /* GL_TEXTURE_RANGE_POINTER_APPLE */ - { 45927, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE */ - { 45948, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_ARB */ - { 45973, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_NV */ - { 45997, 0x0000805C }, /* GL_TEXTURE_RED_SIZE */ - { 46017, 0x0000805C }, /* GL_TEXTURE_RED_SIZE_EXT */ - { 46041, 0x00008067 }, /* GL_TEXTURE_RESIDENT */ - { 46061, 0x00008C3F }, /* GL_TEXTURE_SHARED_SIZE */ - { 46084, 0x00000BA5 }, /* GL_TEXTURE_STACK_DEPTH */ - { 46107, 0x000088F1 }, /* GL_TEXTURE_STENCIL_SIZE */ - { 46131, 0x000088F1 }, /* GL_TEXTURE_STENCIL_SIZE_EXT */ - { 46159, 0x000085BC }, /* GL_TEXTURE_STORAGE_HINT_APPLE */ - { 46189, 0x00008065 }, /* GL_TEXTURE_TOO_LARGE_EXT */ - { 46214, 0x0000888F }, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */ - { 46248, 0x00001000 }, /* GL_TEXTURE_WIDTH */ - { 46265, 0x00008072 }, /* GL_TEXTURE_WRAP_R */ - { 46283, 0x00008072 }, /* GL_TEXTURE_WRAP_R_OES */ - { 46305, 0x00002802 }, /* GL_TEXTURE_WRAP_S */ - { 46323, 0x00002803 }, /* GL_TEXTURE_WRAP_T */ - { 46341, 0x0000911B }, /* GL_TIMEOUT_EXPIRED */ - { 46360, 0x000088BF }, /* GL_TIME_ELAPSED_EXT */ - { 46380, 0x00008648 }, /* GL_TRACK_MATRIX_NV */ - { 46399, 0x00008649 }, /* GL_TRACK_MATRIX_TRANSFORM_NV */ - { 46428, 0x00001000 }, /* GL_TRANSFORM_BIT */ - { 46445, 0x00008E22 }, /* GL_TRANSFORM_FEEDBACK */ - { 46467, 0x00008E25 }, /* GL_TRANSFORM_FEEDBACK_BINDING */ - { 46497, 0x00008C8E }, /* GL_TRANSFORM_FEEDBACK_BUFFER */ - { 46526, 0x00008E24 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE */ - { 46562, 0x00008C8F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING */ - { 46599, 0x00008C8F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT */ - { 46640, 0x00008C8E }, /* GL_TRANSFORM_FEEDBACK_BUFFER_EXT */ - { 46673, 0x00008C7F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE */ - { 46707, 0x00008C7F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE_EXT */ - { 46745, 0x00008E23 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED */ - { 46781, 0x00008C85 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE */ - { 46815, 0x00008C85 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT */ - { 46853, 0x00008C84 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_START */ - { 46888, 0x00008C84 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT */ - { 46927, 0x00008C88 }, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN */ - { 46968, 0x00008C88 }, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT */ - { 47013, 0x00008C83 }, /* GL_TRANSFORM_FEEDBACK_VARYINGS */ - { 47044, 0x00008C83 }, /* GL_TRANSFORM_FEEDBACK_VARYINGS_EXT */ - { 47079, 0x00008C76 }, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH */ - { 47120, 0x00008C76 }, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT */ - { 47165, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX */ - { 47191, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX_ARB */ - { 47221, 0x000088B7 }, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ - { 47253, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ - { 47283, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX_ARB */ - { 47317, 0x0000862C }, /* GL_TRANSPOSE_NV */ - { 47333, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX */ - { 47364, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX_ARB */ - { 47399, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX */ - { 47427, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX_ARB */ - { 47459, 0x00000004 }, /* GL_TRIANGLES */ - { 47472, 0x0000000C }, /* GL_TRIANGLES_ADJACENCY */ - { 47495, 0x0000000C }, /* GL_TRIANGLES_ADJACENCY_ARB */ - { 47522, 0x00000006 }, /* GL_TRIANGLE_FAN */ - { 47538, 0x00008615 }, /* GL_TRIANGLE_MESH_SUN */ - { 47559, 0x00000005 }, /* GL_TRIANGLE_STRIP */ - { 47577, 0x0000000D }, /* GL_TRIANGLE_STRIP_ADJACENCY */ - { 47605, 0x0000000D }, /* GL_TRIANGLE_STRIP_ADJACENCY_ARB */ - { 47637, 0x00000001 }, /* GL_TRUE */ - { 47645, 0x00008A1C }, /* GL_UNDEFINED_APPLE */ - { 47664, 0x00000CF5 }, /* GL_UNPACK_ALIGNMENT */ - { 47684, 0x0000806E }, /* GL_UNPACK_IMAGE_HEIGHT */ - { 47707, 0x00000CF1 }, /* GL_UNPACK_LSB_FIRST */ - { 47727, 0x00000CF2 }, /* GL_UNPACK_ROW_LENGTH */ - { 47748, 0x0000806D }, /* GL_UNPACK_SKIP_IMAGES */ - { 47770, 0x00000CF4 }, /* GL_UNPACK_SKIP_PIXELS */ - { 47792, 0x00000CF3 }, /* GL_UNPACK_SKIP_ROWS */ - { 47812, 0x00000CF0 }, /* GL_UNPACK_SWAP_BYTES */ - { 47833, 0x00009118 }, /* GL_UNSIGNALED */ - { 47847, 0x00001401 }, /* GL_UNSIGNED_BYTE */ - { 47864, 0x00008362 }, /* GL_UNSIGNED_BYTE_2_3_3_REV */ - { 47891, 0x00008032 }, /* GL_UNSIGNED_BYTE_3_3_2 */ - { 47914, 0x00001405 }, /* GL_UNSIGNED_INT */ - { 47930, 0x00008C3B }, /* GL_UNSIGNED_INT_10F_11F_11F_REV */ - { 47962, 0x00008036 }, /* GL_UNSIGNED_INT_10_10_10_2 */ - { 47989, 0x00008DF6 }, /* GL_UNSIGNED_INT_10_10_10_2_OES */ - { 48020, 0x000084FA }, /* GL_UNSIGNED_INT_24_8 */ - { 48041, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_EXT */ - { 48066, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_NV */ - { 48090, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_OES */ - { 48115, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV */ - { 48146, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV_EXT */ - { 48181, 0x00008C3E }, /* GL_UNSIGNED_INT_5_9_9_9_REV */ - { 48209, 0x00008035 }, /* GL_UNSIGNED_INT_8_8_8_8 */ - { 48233, 0x00008367 }, /* GL_UNSIGNED_INT_8_8_8_8_REV */ - { 48261, 0x00008DD1 }, /* GL_UNSIGNED_INT_SAMPLER_1D */ - { 48288, 0x00008DD6 }, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY */ - { 48321, 0x00008DD6 }, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT */ - { 48358, 0x00008DD1 }, /* GL_UNSIGNED_INT_SAMPLER_1D_EXT */ - { 48389, 0x00008DD2 }, /* GL_UNSIGNED_INT_SAMPLER_2D */ - { 48416, 0x00008DD7 }, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY */ - { 48449, 0x00008DD7 }, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT */ - { 48486, 0x00008DD2 }, /* GL_UNSIGNED_INT_SAMPLER_2D_EXT */ - { 48517, 0x00008DD5 }, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT */ - { 48549, 0x00008DD5 }, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT */ - { 48585, 0x00008DD3 }, /* GL_UNSIGNED_INT_SAMPLER_3D */ - { 48612, 0x00008DD3 }, /* GL_UNSIGNED_INT_SAMPLER_3D_EXT */ - { 48643, 0x00008DD8 }, /* GL_UNSIGNED_INT_SAMPLER_BUFFER */ - { 48674, 0x00008DD8 }, /* GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT */ - { 48709, 0x00008DD4 }, /* GL_UNSIGNED_INT_SAMPLER_CUBE */ - { 48738, 0x00008DD4 }, /* GL_UNSIGNED_INT_SAMPLER_CUBE_EXT */ - { 48771, 0x00008DC6 }, /* GL_UNSIGNED_INT_VEC2 */ - { 48792, 0x00008DC6 }, /* GL_UNSIGNED_INT_VEC2_EXT */ - { 48817, 0x00008DC7 }, /* GL_UNSIGNED_INT_VEC3 */ - { 48838, 0x00008DC7 }, /* GL_UNSIGNED_INT_VEC3_EXT */ - { 48863, 0x00008DC8 }, /* GL_UNSIGNED_INT_VEC4 */ - { 48884, 0x00008DC8 }, /* GL_UNSIGNED_INT_VEC4_EXT */ - { 48909, 0x00008C17 }, /* GL_UNSIGNED_NORMALIZED */ - { 48932, 0x00001403 }, /* GL_UNSIGNED_SHORT */ - { 48950, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ - { 48980, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT */ - { 49014, 0x00008033 }, /* GL_UNSIGNED_SHORT_4_4_4_4 */ - { 49040, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ - { 49070, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT */ - { 49104, 0x00008034 }, /* GL_UNSIGNED_SHORT_5_5_5_1 */ - { 49130, 0x00008363 }, /* GL_UNSIGNED_SHORT_5_6_5 */ - { 49154, 0x00008364 }, /* GL_UNSIGNED_SHORT_5_6_5_REV */ - { 49182, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_APPLE */ - { 49210, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_MESA */ - { 49237, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ - { 49269, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_MESA */ - { 49300, 0x00008CA2 }, /* GL_UPPER_LEFT */ - { 49314, 0x00002A20 }, /* GL_V2F */ - { 49321, 0x00002A21 }, /* GL_V3F */ - { 49328, 0x00008B83 }, /* GL_VALIDATE_STATUS */ - { 49347, 0x00001F00 }, /* GL_VENDOR */ - { 49357, 0x00001F02 }, /* GL_VERSION */ - { 49368, 0x00008074 }, /* GL_VERTEX_ARRAY */ - { 49384, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING */ - { 49408, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING_APPLE */ - { 49438, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ - { 49469, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING_ARB */ - { 49504, 0x0000808E }, /* GL_VERTEX_ARRAY_POINTER */ - { 49528, 0x0000807A }, /* GL_VERTEX_ARRAY_SIZE */ - { 49549, 0x0000807C }, /* GL_VERTEX_ARRAY_STRIDE */ - { 49572, 0x0000807B }, /* GL_VERTEX_ARRAY_TYPE */ - { 49593, 0x00008650 }, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ - { 49620, 0x0000865A }, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ - { 49648, 0x0000865B }, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ - { 49676, 0x0000865C }, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ - { 49704, 0x0000865D }, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ - { 49732, 0x0000865E }, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ - { 49760, 0x0000865F }, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ - { 49788, 0x00008651 }, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ - { 49815, 0x00008652 }, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ - { 49842, 0x00008653 }, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ - { 49869, 0x00008654 }, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ - { 49896, 0x00008655 }, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ - { 49923, 0x00008656 }, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ - { 49950, 0x00008657 }, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ - { 49977, 0x00008658 }, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ - { 50004, 0x00008659 }, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ - { 50031, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ - { 50069, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB */ - { 50111, 0x000088FE }, /* GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB */ - { 50146, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ - { 50177, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB */ - { 50212, 0x000088FD }, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER */ - { 50243, 0x000088FD }, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT */ - { 50278, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ - { 50312, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB */ - { 50350, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ - { 50381, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB */ - { 50416, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ - { 50444, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB */ - { 50476, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ - { 50506, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB */ - { 50540, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ - { 50568, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB */ - { 50600, 0x000086A7 }, /* GL_VERTEX_BLEND_ARB */ - { 50620, 0x00008620 }, /* GL_VERTEX_PROGRAM_ARB */ - { 50642, 0x0000864A }, /* GL_VERTEX_PROGRAM_BINDING_NV */ - { 50671, 0x00008620 }, /* GL_VERTEX_PROGRAM_NV */ - { 50692, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE */ - { 50721, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_ARB */ - { 50754, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_NV */ - { 50786, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE */ - { 50813, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_ARB */ - { 50844, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_NV */ - { 50874, 0x00008B31 }, /* GL_VERTEX_SHADER */ - { 50891, 0x00008B31 }, /* GL_VERTEX_SHADER_ARB */ - { 50912, 0x00008621 }, /* GL_VERTEX_STATE_PROGRAM_NV */ - { 50939, 0x00000BA2 }, /* GL_VIEWPORT */ - { 50951, 0x00000800 }, /* GL_VIEWPORT_BIT */ - { 50967, 0x00008A1A }, /* GL_VOLATILE_APPLE */ - { 50985, 0x0000911D }, /* GL_WAIT_FAILED */ - { 51000, 0x000086AD }, /* GL_WEIGHT_ARRAY_ARB */ - { 51020, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ - { 51051, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB */ - { 51086, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_OES */ - { 51121, 0x000086AD }, /* GL_WEIGHT_ARRAY_OES */ - { 51141, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_ARB */ - { 51169, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_OES */ - { 51197, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_ARB */ - { 51222, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_OES */ - { 51247, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ - { 51274, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_OES */ - { 51301, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_ARB */ - { 51326, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_OES */ - { 51351, 0x000086A6 }, /* GL_WEIGHT_SUM_UNITY_ARB */ - { 51375, 0x000081D4 }, /* GL_WRAP_BORDER_SUN */ - { 51394, 0x000088B9 }, /* GL_WRITE_ONLY */ - { 51408, 0x000088B9 }, /* GL_WRITE_ONLY_ARB */ - { 51426, 0x000088B9 }, /* GL_WRITE_ONLY_OES */ - { 51444, 0x00001506 }, /* GL_XOR */ - { 51451, 0x000085B9 }, /* GL_YCBCR_422_APPLE */ - { 51470, 0x00008757 }, /* GL_YCBCR_MESA */ - { 51484, 0x00000000 }, /* GL_ZERO */ - { 51492, 0x00000D16 }, /* GL_ZOOM_X */ - { 51502, 0x00000D17 }, /* GL_ZOOM_Y */ + { 24512, 0x00008C2B }, /* GL_MAX_TEXTURE_BUFFER_SIZE_ARB */ + { 24543, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS */ + { 24565, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS_ARB */ + { 24591, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS */ + { 24618, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS_ARB */ + { 24649, 0x000084FD }, /* GL_MAX_TEXTURE_LOD_BIAS */ + { 24673, 0x000084FD }, /* GL_MAX_TEXTURE_LOD_BIAS_EXT */ + { 24701, 0x000084FF }, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */ + { 24735, 0x00000D33 }, /* GL_MAX_TEXTURE_SIZE */ + { 24755, 0x00000D39 }, /* GL_MAX_TEXTURE_STACK_DEPTH */ + { 24782, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS */ + { 24803, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS_ARB */ + { 24828, 0x0000862F }, /* GL_MAX_TRACK_MATRICES_NV */ + { 24853, 0x0000862E }, /* GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV */ + { 24888, 0x00008C8A }, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS */ + { 24937, 0x00008C8A }, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT */ + { 24990, 0x00008C8B }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS */ + { 25033, 0x00008C8B }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT */ + { 25080, 0x00008C80 }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS */ + { 25126, 0x00008C80 }, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT */ + { 25176, 0x00008B4B }, /* GL_MAX_VARYING_COMPONENTS */ + { 25202, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS */ + { 25224, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS_ARB */ + { 25250, 0x00008DFC }, /* GL_MAX_VARYING_VECTORS */ + { 25273, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS */ + { 25295, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS_ARB */ + { 25321, 0x00009122 }, /* GL_MAX_VERTEX_OUTPUT_COMPONENTS */ + { 25353, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */ + { 25387, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB */ + { 25425, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */ + { 25458, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB */ + { 25495, 0x00008DFB }, /* GL_MAX_VERTEX_UNIFORM_VECTORS */ + { 25525, 0x000086A4 }, /* GL_MAX_VERTEX_UNITS_ARB */ + { 25549, 0x000086A4 }, /* GL_MAX_VERTEX_UNITS_OES */ + { 25573, 0x00008DDE }, /* GL_MAX_VERTEX_VARYING_COMPONENTS_ARB */ + { 25610, 0x00000D3A }, /* GL_MAX_VIEWPORT_DIMS */ + { 25631, 0x00008DF1 }, /* GL_MEDIUM_FLOAT */ + { 25647, 0x00008DF4 }, /* GL_MEDIUM_INT */ + { 25661, 0x00008007 }, /* GL_MIN */ + { 25668, 0x0000802E }, /* GL_MINMAX */ + { 25678, 0x0000802E }, /* GL_MINMAX_EXT */ + { 25692, 0x0000802F }, /* GL_MINMAX_FORMAT */ + { 25709, 0x0000802F }, /* GL_MINMAX_FORMAT_EXT */ + { 25730, 0x00008030 }, /* GL_MINMAX_SINK */ + { 25745, 0x00008030 }, /* GL_MINMAX_SINK_EXT */ + { 25764, 0x0000821C }, /* GL_MINOR_VERSION */ + { 25781, 0x00008007 }, /* GL_MIN_EXT */ + { 25792, 0x00008904 }, /* GL_MIN_PROGRAM_TEXEL_OFFSET */ + { 25820, 0x00008904 }, /* GL_MIN_PROGRAM_TEXEL_OFFSET_EXT */ + { 25852, 0x00008370 }, /* GL_MIRRORED_REPEAT */ + { 25871, 0x00008370 }, /* GL_MIRRORED_REPEAT_ARB */ + { 25894, 0x00008370 }, /* GL_MIRRORED_REPEAT_IBM */ + { 25917, 0x00008742 }, /* GL_MIRROR_CLAMP_ATI */ + { 25937, 0x00008742 }, /* GL_MIRROR_CLAMP_EXT */ + { 25957, 0x00008912 }, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */ + { 25987, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_ATI */ + { 26015, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */ + { 26043, 0x00001700 }, /* GL_MODELVIEW */ + { 26056, 0x00001700 }, /* GL_MODELVIEW0_ARB */ + { 26074, 0x0000872A }, /* GL_MODELVIEW10_ARB */ + { 26093, 0x0000872B }, /* GL_MODELVIEW11_ARB */ + { 26112, 0x0000872C }, /* GL_MODELVIEW12_ARB */ + { 26131, 0x0000872D }, /* GL_MODELVIEW13_ARB */ + { 26150, 0x0000872E }, /* GL_MODELVIEW14_ARB */ + { 26169, 0x0000872F }, /* GL_MODELVIEW15_ARB */ + { 26188, 0x00008730 }, /* GL_MODELVIEW16_ARB */ + { 26207, 0x00008731 }, /* GL_MODELVIEW17_ARB */ + { 26226, 0x00008732 }, /* GL_MODELVIEW18_ARB */ + { 26245, 0x00008733 }, /* GL_MODELVIEW19_ARB */ + { 26264, 0x0000850A }, /* GL_MODELVIEW1_ARB */ + { 26282, 0x00008734 }, /* GL_MODELVIEW20_ARB */ + { 26301, 0x00008735 }, /* GL_MODELVIEW21_ARB */ + { 26320, 0x00008736 }, /* GL_MODELVIEW22_ARB */ + { 26339, 0x00008737 }, /* GL_MODELVIEW23_ARB */ + { 26358, 0x00008738 }, /* GL_MODELVIEW24_ARB */ + { 26377, 0x00008739 }, /* GL_MODELVIEW25_ARB */ + { 26396, 0x0000873A }, /* GL_MODELVIEW26_ARB */ + { 26415, 0x0000873B }, /* GL_MODELVIEW27_ARB */ + { 26434, 0x0000873C }, /* GL_MODELVIEW28_ARB */ + { 26453, 0x0000873D }, /* GL_MODELVIEW29_ARB */ + { 26472, 0x00008722 }, /* GL_MODELVIEW2_ARB */ + { 26490, 0x0000873E }, /* GL_MODELVIEW30_ARB */ + { 26509, 0x0000873F }, /* GL_MODELVIEW31_ARB */ + { 26528, 0x00008723 }, /* GL_MODELVIEW3_ARB */ + { 26546, 0x00008724 }, /* GL_MODELVIEW4_ARB */ + { 26564, 0x00008725 }, /* GL_MODELVIEW5_ARB */ + { 26582, 0x00008726 }, /* GL_MODELVIEW6_ARB */ + { 26600, 0x00008727 }, /* GL_MODELVIEW7_ARB */ + { 26618, 0x00008728 }, /* GL_MODELVIEW8_ARB */ + { 26636, 0x00008729 }, /* GL_MODELVIEW9_ARB */ + { 26654, 0x00000BA6 }, /* GL_MODELVIEW_MATRIX */ + { 26674, 0x0000898D }, /* GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES */ + { 26716, 0x00008629 }, /* GL_MODELVIEW_PROJECTION_NV */ + { 26743, 0x00000BA3 }, /* GL_MODELVIEW_STACK_DEPTH */ + { 26768, 0x00002100 }, /* GL_MODULATE */ + { 26780, 0x00008744 }, /* GL_MODULATE_ADD_ATI */ + { 26800, 0x00008745 }, /* GL_MODULATE_SIGNED_ADD_ATI */ + { 26827, 0x00008746 }, /* GL_MODULATE_SUBTRACT_ATI */ + { 26852, 0x00000103 }, /* GL_MULT */ + { 26860, 0x0000809D }, /* GL_MULTISAMPLE */ + { 26875, 0x000086B2 }, /* GL_MULTISAMPLE_3DFX */ + { 26895, 0x0000809D }, /* GL_MULTISAMPLE_ARB */ + { 26914, 0x20000000 }, /* GL_MULTISAMPLE_BIT */ + { 26933, 0x20000000 }, /* GL_MULTISAMPLE_BIT_3DFX */ + { 26957, 0x20000000 }, /* GL_MULTISAMPLE_BIT_ARB */ + { 26980, 0x00008534 }, /* GL_MULTISAMPLE_FILTER_HINT_NV */ + { 27010, 0x00002A25 }, /* GL_N3F_V3F */ + { 27021, 0x00000D70 }, /* GL_NAME_STACK_DEPTH */ + { 27041, 0x0000150E }, /* GL_NAND */ + { 27049, 0x00002600 }, /* GL_NEAREST */ + { 27060, 0x0000844E }, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */ + { 27091, 0x0000844D }, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */ + { 27123, 0x00002702 }, /* GL_NEAREST_MIPMAP_LINEAR */ + { 27148, 0x00002700 }, /* GL_NEAREST_MIPMAP_NEAREST */ + { 27174, 0x00000200 }, /* GL_NEVER */ + { 27183, 0x00001102 }, /* GL_NICEST */ + { 27193, 0x00000000 }, /* GL_NONE */ + { 27201, 0x00000000 }, /* GL_NONE_OES */ + { 27213, 0x00001505 }, /* GL_NOOP */ + { 27221, 0x00001508 }, /* GL_NOR */ + { 27228, 0x00000BA1 }, /* GL_NORMALIZE */ + { 27241, 0x00008075 }, /* GL_NORMAL_ARRAY */ + { 27257, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING */ + { 27288, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING_ARB */ + { 27323, 0x0000808F }, /* GL_NORMAL_ARRAY_POINTER */ + { 27347, 0x0000807F }, /* GL_NORMAL_ARRAY_STRIDE */ + { 27370, 0x0000807E }, /* GL_NORMAL_ARRAY_TYPE */ + { 27391, 0x00008511 }, /* GL_NORMAL_MAP */ + { 27405, 0x00008511 }, /* GL_NORMAL_MAP_ARB */ + { 27423, 0x00008511 }, /* GL_NORMAL_MAP_NV */ + { 27440, 0x00008511 }, /* GL_NORMAL_MAP_OES */ + { 27458, 0x00000205 }, /* GL_NOTEQUAL */ + { 27470, 0x00000000 }, /* GL_NO_ERROR */ + { 27482, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */ + { 27516, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB */ + { 27554, 0x0000821D }, /* GL_NUM_EXTENSIONS */ + { 27572, 0x000087FE }, /* GL_NUM_PROGRAM_BINARY_FORMATS_OES */ + { 27606, 0x00008DF9 }, /* GL_NUM_SHADER_BINARY_FORMATS */ + { 27635, 0x00008B89 }, /* GL_OBJECT_ACTIVE_ATTRIBUTES_ARB */ + { 27667, 0x00008B8A }, /* GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB */ + { 27709, 0x00008B86 }, /* GL_OBJECT_ACTIVE_UNIFORMS_ARB */ + { 27739, 0x00008B87 }, /* GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB */ + { 27779, 0x00008B85 }, /* GL_OBJECT_ATTACHED_OBJECTS_ARB */ + { 27810, 0x00008B81 }, /* GL_OBJECT_COMPILE_STATUS_ARB */ + { 27839, 0x00008B80 }, /* GL_OBJECT_DELETE_STATUS_ARB */ + { 27867, 0x00008B84 }, /* GL_OBJECT_INFO_LOG_LENGTH_ARB */ + { 27897, 0x00002401 }, /* GL_OBJECT_LINEAR */ + { 27914, 0x00008B82 }, /* GL_OBJECT_LINK_STATUS_ARB */ + { 27940, 0x00002501 }, /* GL_OBJECT_PLANE */ + { 27956, 0x00008B88 }, /* GL_OBJECT_SHADER_SOURCE_LENGTH_ARB */ + { 27991, 0x00008B4F }, /* GL_OBJECT_SUBTYPE_ARB */ + { 28013, 0x00009112 }, /* GL_OBJECT_TYPE */ + { 28028, 0x00008B4E }, /* GL_OBJECT_TYPE_ARB */ + { 28047, 0x00008B83 }, /* GL_OBJECT_VALIDATE_STATUS_ARB */ + { 28077, 0x00008165 }, /* GL_OCCLUSION_TEST_HP */ + { 28098, 0x00008166 }, /* GL_OCCLUSION_TEST_RESULT_HP */ + { 28126, 0x00000001 }, /* GL_ONE */ + { 28133, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA */ + { 28161, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA_EXT */ + { 28193, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR */ + { 28221, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR_EXT */ + { 28253, 0x00000305 }, /* GL_ONE_MINUS_DST_ALPHA */ + { 28276, 0x00000307 }, /* GL_ONE_MINUS_DST_COLOR */ + { 28299, 0x00000303 }, /* GL_ONE_MINUS_SRC_ALPHA */ + { 28322, 0x00000301 }, /* GL_ONE_MINUS_SRC_COLOR */ + { 28345, 0x00008598 }, /* GL_OPERAND0_ALPHA */ + { 28363, 0x00008598 }, /* GL_OPERAND0_ALPHA_ARB */ + { 28385, 0x00008598 }, /* GL_OPERAND0_ALPHA_EXT */ + { 28407, 0x00008590 }, /* GL_OPERAND0_RGB */ + { 28423, 0x00008590 }, /* GL_OPERAND0_RGB_ARB */ + { 28443, 0x00008590 }, /* GL_OPERAND0_RGB_EXT */ + { 28463, 0x00008599 }, /* GL_OPERAND1_ALPHA */ + { 28481, 0x00008599 }, /* GL_OPERAND1_ALPHA_ARB */ + { 28503, 0x00008599 }, /* GL_OPERAND1_ALPHA_EXT */ + { 28525, 0x00008591 }, /* GL_OPERAND1_RGB */ + { 28541, 0x00008591 }, /* GL_OPERAND1_RGB_ARB */ + { 28561, 0x00008591 }, /* GL_OPERAND1_RGB_EXT */ + { 28581, 0x0000859A }, /* GL_OPERAND2_ALPHA */ + { 28599, 0x0000859A }, /* GL_OPERAND2_ALPHA_ARB */ + { 28621, 0x0000859A }, /* GL_OPERAND2_ALPHA_EXT */ + { 28643, 0x00008592 }, /* GL_OPERAND2_RGB */ + { 28659, 0x00008592 }, /* GL_OPERAND2_RGB_ARB */ + { 28679, 0x00008592 }, /* GL_OPERAND2_RGB_EXT */ + { 28699, 0x0000859B }, /* GL_OPERAND3_ALPHA_NV */ + { 28720, 0x00008593 }, /* GL_OPERAND3_RGB_NV */ + { 28739, 0x00001507 }, /* GL_OR */ + { 28745, 0x00000A01 }, /* GL_ORDER */ + { 28754, 0x0000150D }, /* GL_OR_INVERTED */ + { 28769, 0x0000150B }, /* GL_OR_REVERSE */ + { 28783, 0x00000505 }, /* GL_OUT_OF_MEMORY */ + { 28800, 0x00000D05 }, /* GL_PACK_ALIGNMENT */ + { 28818, 0x0000806C }, /* GL_PACK_IMAGE_HEIGHT */ + { 28839, 0x00008758 }, /* GL_PACK_INVERT_MESA */ + { 28859, 0x00000D01 }, /* GL_PACK_LSB_FIRST */ + { 28877, 0x00000D02 }, /* GL_PACK_ROW_LENGTH */ + { 28896, 0x0000806B }, /* GL_PACK_SKIP_IMAGES */ + { 28916, 0x00000D04 }, /* GL_PACK_SKIP_PIXELS */ + { 28936, 0x00000D03 }, /* GL_PACK_SKIP_ROWS */ + { 28954, 0x00000D00 }, /* GL_PACK_SWAP_BYTES */ + { 28973, 0x00008B92 }, /* GL_PALETTE4_R5_G6_B5_OES */ + { 28998, 0x00008B94 }, /* GL_PALETTE4_RGB5_A1_OES */ + { 29022, 0x00008B90 }, /* GL_PALETTE4_RGB8_OES */ + { 29043, 0x00008B93 }, /* GL_PALETTE4_RGBA4_OES */ + { 29065, 0x00008B91 }, /* GL_PALETTE4_RGBA8_OES */ + { 29087, 0x00008B97 }, /* GL_PALETTE8_R5_G6_B5_OES */ + { 29112, 0x00008B99 }, /* GL_PALETTE8_RGB5_A1_OES */ + { 29136, 0x00008B95 }, /* GL_PALETTE8_RGB8_OES */ + { 29157, 0x00008B98 }, /* GL_PALETTE8_RGBA4_OES */ + { 29179, 0x00008B96 }, /* GL_PALETTE8_RGBA8_OES */ + { 29201, 0x00000700 }, /* GL_PASS_THROUGH_TOKEN */ + { 29223, 0x00000C50 }, /* GL_PERSPECTIVE_CORRECTION_HINT */ + { 29254, 0x00000C79 }, /* GL_PIXEL_MAP_A_TO_A */ + { 29274, 0x00000CB9 }, /* GL_PIXEL_MAP_A_TO_A_SIZE */ + { 29299, 0x00000C78 }, /* GL_PIXEL_MAP_B_TO_B */ + { 29319, 0x00000CB8 }, /* GL_PIXEL_MAP_B_TO_B_SIZE */ + { 29344, 0x00000C77 }, /* GL_PIXEL_MAP_G_TO_G */ + { 29364, 0x00000CB7 }, /* GL_PIXEL_MAP_G_TO_G_SIZE */ + { 29389, 0x00000C75 }, /* GL_PIXEL_MAP_I_TO_A */ + { 29409, 0x00000CB5 }, /* GL_PIXEL_MAP_I_TO_A_SIZE */ + { 29434, 0x00000C74 }, /* GL_PIXEL_MAP_I_TO_B */ + { 29454, 0x00000CB4 }, /* GL_PIXEL_MAP_I_TO_B_SIZE */ + { 29479, 0x00000C73 }, /* GL_PIXEL_MAP_I_TO_G */ + { 29499, 0x00000CB3 }, /* GL_PIXEL_MAP_I_TO_G_SIZE */ + { 29524, 0x00000C70 }, /* GL_PIXEL_MAP_I_TO_I */ + { 29544, 0x00000CB0 }, /* GL_PIXEL_MAP_I_TO_I_SIZE */ + { 29569, 0x00000C72 }, /* GL_PIXEL_MAP_I_TO_R */ + { 29589, 0x00000CB2 }, /* GL_PIXEL_MAP_I_TO_R_SIZE */ + { 29614, 0x00000C76 }, /* GL_PIXEL_MAP_R_TO_R */ + { 29634, 0x00000CB6 }, /* GL_PIXEL_MAP_R_TO_R_SIZE */ + { 29659, 0x00000C71 }, /* GL_PIXEL_MAP_S_TO_S */ + { 29679, 0x00000CB1 }, /* GL_PIXEL_MAP_S_TO_S_SIZE */ + { 29704, 0x00000020 }, /* GL_PIXEL_MODE_BIT */ + { 29722, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER */ + { 29743, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING */ + { 29772, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING_EXT */ + { 29805, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER_EXT */ + { 29830, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER */ + { 29853, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING */ + { 29884, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING_EXT */ + { 29919, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER_EXT */ + { 29946, 0x00001B00 }, /* GL_POINT */ + { 29955, 0x00000000 }, /* GL_POINTS */ + { 29965, 0x00000002 }, /* GL_POINT_BIT */ + { 29978, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION */ + { 30008, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_ARB */ + { 30042, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_EXT */ + { 30076, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_SGIS */ + { 30111, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE */ + { 30140, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_ARB */ + { 30173, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_EXT */ + { 30206, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_SGIS */ + { 30240, 0x00000B11 }, /* GL_POINT_SIZE */ + { 30254, 0x00008B9F }, /* GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES */ + { 30293, 0x00008B9C }, /* GL_POINT_SIZE_ARRAY_OES */ + { 30317, 0x0000898C }, /* GL_POINT_SIZE_ARRAY_POINTER_OES */ + { 30349, 0x0000898B }, /* GL_POINT_SIZE_ARRAY_STRIDE_OES */ + { 30380, 0x0000898A }, /* GL_POINT_SIZE_ARRAY_TYPE_OES */ + { 30409, 0x00000B13 }, /* GL_POINT_SIZE_GRANULARITY */ + { 30435, 0x00008127 }, /* GL_POINT_SIZE_MAX */ + { 30453, 0x00008127 }, /* GL_POINT_SIZE_MAX_ARB */ + { 30475, 0x00008127 }, /* GL_POINT_SIZE_MAX_EXT */ + { 30497, 0x00008127 }, /* GL_POINT_SIZE_MAX_SGIS */ + { 30520, 0x00008126 }, /* GL_POINT_SIZE_MIN */ + { 30538, 0x00008126 }, /* GL_POINT_SIZE_MIN_ARB */ + { 30560, 0x00008126 }, /* GL_POINT_SIZE_MIN_EXT */ + { 30582, 0x00008126 }, /* GL_POINT_SIZE_MIN_SGIS */ + { 30605, 0x00000B12 }, /* GL_POINT_SIZE_RANGE */ + { 30625, 0x00000B10 }, /* GL_POINT_SMOOTH */ + { 30641, 0x00000C51 }, /* GL_POINT_SMOOTH_HINT */ + { 30662, 0x00008861 }, /* GL_POINT_SPRITE */ + { 30678, 0x00008861 }, /* GL_POINT_SPRITE_ARB */ + { 30698, 0x00008CA0 }, /* GL_POINT_SPRITE_COORD_ORIGIN */ + { 30727, 0x00008861 }, /* GL_POINT_SPRITE_NV */ + { 30746, 0x00008861 }, /* GL_POINT_SPRITE_OES */ + { 30766, 0x00008863 }, /* GL_POINT_SPRITE_R_MODE_NV */ + { 30792, 0x00000701 }, /* GL_POINT_TOKEN */ + { 30807, 0x00000009 }, /* GL_POLYGON */ + { 30818, 0x00000008 }, /* GL_POLYGON_BIT */ + { 30833, 0x00000B40 }, /* GL_POLYGON_MODE */ + { 30849, 0x00008039 }, /* GL_POLYGON_OFFSET_BIAS */ + { 30872, 0x00008038 }, /* GL_POLYGON_OFFSET_FACTOR */ + { 30897, 0x00008037 }, /* GL_POLYGON_OFFSET_FILL */ + { 30920, 0x00002A02 }, /* GL_POLYGON_OFFSET_LINE */ + { 30943, 0x00002A01 }, /* GL_POLYGON_OFFSET_POINT */ + { 30967, 0x00002A00 }, /* GL_POLYGON_OFFSET_UNITS */ + { 30991, 0x00000B41 }, /* GL_POLYGON_SMOOTH */ + { 31009, 0x00000C53 }, /* GL_POLYGON_SMOOTH_HINT */ + { 31032, 0x00000B42 }, /* GL_POLYGON_STIPPLE */ + { 31051, 0x00000010 }, /* GL_POLYGON_STIPPLE_BIT */ + { 31074, 0x00000703 }, /* GL_POLYGON_TOKEN */ + { 31091, 0x00001203 }, /* GL_POSITION */ + { 31103, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */ + { 31135, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI */ + { 31171, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */ + { 31204, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI */ + { 31241, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */ + { 31272, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI */ + { 31307, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */ + { 31339, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI */ + { 31375, 0x000080D2 }, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */ + { 31408, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */ + { 31440, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI */ + { 31476, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */ + { 31509, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI */ + { 31546, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS */ + { 31576, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS_SGI */ + { 31610, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE */ + { 31641, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE_SGI */ + { 31676, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS */ + { 31707, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS_EXT */ + { 31742, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE */ + { 31774, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE_EXT */ + { 31810, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS */ + { 31840, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS_EXT */ + { 31874, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE */ + { 31905, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE_EXT */ + { 31940, 0x000080D1 }, /* GL_POST_CONVOLUTION_COLOR_TABLE */ + { 31972, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS */ + { 32003, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS_EXT */ + { 32038, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE */ + { 32070, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE_EXT */ + { 32106, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS */ + { 32135, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS_EXT */ + { 32168, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE */ + { 32198, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE_EXT */ + { 32232, 0x0000817B }, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */ + { 32271, 0x00008179 }, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */ + { 32304, 0x0000817C }, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */ + { 32344, 0x0000817A }, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */ + { 32378, 0x00008578 }, /* GL_PREVIOUS */ + { 32390, 0x00008578 }, /* GL_PREVIOUS_ARB */ + { 32406, 0x00008578 }, /* GL_PREVIOUS_EXT */ + { 32422, 0x00008577 }, /* GL_PRIMARY_COLOR */ + { 32439, 0x00008577 }, /* GL_PRIMARY_COLOR_ARB */ + { 32460, 0x00008577 }, /* GL_PRIMARY_COLOR_EXT */ + { 32481, 0x00008C87 }, /* GL_PRIMITIVES_GENERATED */ + { 32505, 0x00008C87 }, /* GL_PRIMITIVES_GENERATED_EXT */ + { 32533, 0x00008F9D }, /* GL_PRIMITIVE_RESTART */ + { 32554, 0x00008F9E }, /* GL_PRIMITIVE_RESTART_INDEX */ + { 32581, 0x00008559 }, /* GL_PRIMITIVE_RESTART_INDEX_NV */ + { 32611, 0x00008558 }, /* GL_PRIMITIVE_RESTART_NV */ + { 32635, 0x000088B0 }, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */ + { 32668, 0x00008805 }, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */ + { 32700, 0x000088AC }, /* GL_PROGRAM_ATTRIBS_ARB */ + { 32723, 0x000087FF }, /* GL_PROGRAM_BINARY_FORMATS_OES */ + { 32753, 0x00008741 }, /* GL_PROGRAM_BINARY_LENGTH_OES */ + { 32782, 0x00008677 }, /* GL_PROGRAM_BINDING_ARB */ + { 32805, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_ARB */ + { 32835, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_NV */ + { 32864, 0x00008874 }, /* GL_PROGRAM_ERROR_STRING_ARB */ + { 32892, 0x00008876 }, /* GL_PROGRAM_FORMAT_ARB */ + { 32914, 0x00008875 }, /* GL_PROGRAM_FORMAT_ASCII_ARB */ + { 32942, 0x000088A0 }, /* GL_PROGRAM_INSTRUCTIONS_ARB */ + { 32970, 0x00008627 }, /* GL_PROGRAM_LENGTH_ARB */ + { 32992, 0x00008627 }, /* GL_PROGRAM_LENGTH_NV */ + { 33013, 0x000088B2 }, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ + { 33053, 0x00008808 }, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ + { 33092, 0x000088AE }, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */ + { 33122, 0x000088A2 }, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ + { 33157, 0x000088AA }, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */ + { 33190, 0x000088A6 }, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */ + { 33224, 0x0000880A }, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ + { 33263, 0x00008809 }, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ + { 33302, 0x00008B40 }, /* GL_PROGRAM_OBJECT_ARB */ + { 33324, 0x000088A8 }, /* GL_PROGRAM_PARAMETERS_ARB */ + { 33350, 0x00008644 }, /* GL_PROGRAM_PARAMETER_NV */ + { 33374, 0x00008642 }, /* GL_PROGRAM_POINT_SIZE */ + { 33396, 0x00008642 }, /* GL_PROGRAM_POINT_SIZE_ARB */ + { 33422, 0x00008647 }, /* GL_PROGRAM_RESIDENT_NV */ + { 33445, 0x00008628 }, /* GL_PROGRAM_STRING_ARB */ + { 33467, 0x00008628 }, /* GL_PROGRAM_STRING_NV */ + { 33488, 0x00008646 }, /* GL_PROGRAM_TARGET_NV */ + { 33509, 0x000088A4 }, /* GL_PROGRAM_TEMPORARIES_ARB */ + { 33536, 0x00008807 }, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */ + { 33568, 0x00008806 }, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */ + { 33600, 0x000088B6 }, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */ + { 33635, 0x00001701 }, /* GL_PROJECTION */ + { 33649, 0x00000BA7 }, /* GL_PROJECTION_MATRIX */ + { 33670, 0x0000898E }, /* GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES */ + { 33713, 0x00000BA4 }, /* GL_PROJECTION_STACK_DEPTH */ + { 33739, 0x00008E4F }, /* GL_PROVOKING_VERTEX */ + { 33759, 0x00008E4F }, /* GL_PROVOKING_VERTEX_EXT */ + { 33783, 0x000080D3 }, /* GL_PROXY_COLOR_TABLE */ + { 33804, 0x00008025 }, /* GL_PROXY_HISTOGRAM */ + { 33823, 0x00008025 }, /* GL_PROXY_HISTOGRAM_EXT */ + { 33846, 0x000080D5 }, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */ + { 33885, 0x000080D4 }, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */ + { 33923, 0x00008063 }, /* GL_PROXY_TEXTURE_1D */ + { 33943, 0x00008C19 }, /* GL_PROXY_TEXTURE_1D_ARRAY */ + { 33969, 0x00008C19 }, /* GL_PROXY_TEXTURE_1D_ARRAY_EXT */ + { 33999, 0x00008063 }, /* GL_PROXY_TEXTURE_1D_EXT */ + { 34023, 0x00008064 }, /* GL_PROXY_TEXTURE_2D */ + { 34043, 0x00008C1B }, /* GL_PROXY_TEXTURE_2D_ARRAY */ + { 34069, 0x00008C1B }, /* GL_PROXY_TEXTURE_2D_ARRAY_EXT */ + { 34099, 0x00008064 }, /* GL_PROXY_TEXTURE_2D_EXT */ + { 34123, 0x00008070 }, /* GL_PROXY_TEXTURE_3D */ + { 34143, 0x000080BD }, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */ + { 34176, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP */ + { 34202, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP_ARB */ + { 34232, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE */ + { 34259, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_ARB */ + { 34290, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_NV */ + { 34320, 0x00008A1D }, /* GL_PURGEABLE_APPLE */ + { 34339, 0x00002003 }, /* GL_Q */ + { 34344, 0x00001209 }, /* GL_QUADRATIC_ATTENUATION */ + { 34369, 0x00000007 }, /* GL_QUADS */ + { 34378, 0x00008E4C }, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION */ + { 34422, 0x00008E4C }, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT */ + { 34470, 0x00008614 }, /* GL_QUAD_MESH_SUN */ + { 34487, 0x00000008 }, /* GL_QUAD_STRIP */ + { 34501, 0x00008E16 }, /* GL_QUERY_BY_REGION_NO_WAIT */ + { 34528, 0x00008E16 }, /* GL_QUERY_BY_REGION_NO_WAIT_NV */ + { 34558, 0x00008E15 }, /* GL_QUERY_BY_REGION_WAIT */ + { 34582, 0x00008E15 }, /* GL_QUERY_BY_REGION_WAIT_NV */ + { 34609, 0x00008864 }, /* GL_QUERY_COUNTER_BITS */ + { 34631, 0x00008864 }, /* GL_QUERY_COUNTER_BITS_ARB */ + { 34657, 0x00008E14 }, /* GL_QUERY_NO_WAIT */ + { 34674, 0x00008E14 }, /* GL_QUERY_NO_WAIT_NV */ + { 34694, 0x00008866 }, /* GL_QUERY_RESULT */ + { 34710, 0x00008866 }, /* GL_QUERY_RESULT_ARB */ + { 34730, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE */ + { 34756, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE_ARB */ + { 34786, 0x00008E13 }, /* GL_QUERY_WAIT */ + { 34800, 0x00008E13 }, /* GL_QUERY_WAIT_NV */ + { 34817, 0x00002002 }, /* GL_R */ + { 34822, 0x00008C3A }, /* GL_R11F_G11F_B10F */ + { 34840, 0x00008F98 }, /* GL_R16_SNORM */ + { 34853, 0x00002A10 }, /* GL_R3_G3_B2 */ + { 34865, 0x00008F94 }, /* GL_R8_SNORM */ + { 34877, 0x00008C89 }, /* GL_RASTERIZER_DISCARD */ + { 34899, 0x00008C89 }, /* GL_RASTERIZER_DISCARD_EXT */ + { 34925, 0x00019262 }, /* GL_RASTER_POSITION_UNCLIPPED_IBM */ + { 34958, 0x00000C02 }, /* GL_READ_BUFFER */ + { 34973, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER */ + { 34993, 0x00008CAA }, /* GL_READ_FRAMEBUFFER_BINDING */ + { 35021, 0x00008CAA }, /* GL_READ_FRAMEBUFFER_BINDING_EXT */ + { 35053, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER_EXT */ + { 35077, 0x000088B8 }, /* GL_READ_ONLY */ + { 35090, 0x000088B8 }, /* GL_READ_ONLY_ARB */ + { 35107, 0x000088BA }, /* GL_READ_WRITE */ + { 35121, 0x000088BA }, /* GL_READ_WRITE_ARB */ + { 35139, 0x00001903 }, /* GL_RED */ + { 35146, 0x00008016 }, /* GL_REDUCE */ + { 35156, 0x00008016 }, /* GL_REDUCE_EXT */ + { 35170, 0x00000D15 }, /* GL_RED_BIAS */ + { 35182, 0x00000D52 }, /* GL_RED_BITS */ + { 35194, 0x00008D94 }, /* GL_RED_INTEGER */ + { 35209, 0x00008D94 }, /* GL_RED_INTEGER_EXT */ + { 35228, 0x00000D14 }, /* GL_RED_SCALE */ + { 35241, 0x00008F90 }, /* GL_RED_SNORM */ + { 35254, 0x00008512 }, /* GL_REFLECTION_MAP */ + { 35272, 0x00008512 }, /* GL_REFLECTION_MAP_ARB */ + { 35294, 0x00008512 }, /* GL_REFLECTION_MAP_NV */ + { 35315, 0x00008512 }, /* GL_REFLECTION_MAP_OES */ + { 35337, 0x00008A19 }, /* GL_RELEASED_APPLE */ + { 35355, 0x00001C00 }, /* GL_RENDER */ + { 35365, 0x00008D41 }, /* GL_RENDERBUFFER */ + { 35381, 0x00008D53 }, /* GL_RENDERBUFFER_ALPHA_SIZE */ + { 35408, 0x00008D53 }, /* GL_RENDERBUFFER_ALPHA_SIZE_OES */ + { 35439, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING */ + { 35463, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING_EXT */ + { 35491, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING_OES */ + { 35519, 0x00008D52 }, /* GL_RENDERBUFFER_BLUE_SIZE */ + { 35545, 0x00008D52 }, /* GL_RENDERBUFFER_BLUE_SIZE_OES */ + { 35575, 0x00008D54 }, /* GL_RENDERBUFFER_DEPTH_SIZE */ + { 35602, 0x00008D54 }, /* GL_RENDERBUFFER_DEPTH_SIZE_OES */ + { 35633, 0x00008D41 }, /* GL_RENDERBUFFER_EXT */ + { 35653, 0x00008D51 }, /* GL_RENDERBUFFER_GREEN_SIZE */ + { 35680, 0x00008D51 }, /* GL_RENDERBUFFER_GREEN_SIZE_OES */ + { 35711, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT */ + { 35734, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT_EXT */ + { 35761, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT_OES */ + { 35788, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT */ + { 35820, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT_EXT */ + { 35856, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT_OES */ + { 35892, 0x00008D41 }, /* GL_RENDERBUFFER_OES */ + { 35912, 0x00008D50 }, /* GL_RENDERBUFFER_RED_SIZE */ + { 35937, 0x00008D50 }, /* GL_RENDERBUFFER_RED_SIZE_OES */ + { 35966, 0x00008CAB }, /* GL_RENDERBUFFER_SAMPLES */ + { 35990, 0x00008CAB }, /* GL_RENDERBUFFER_SAMPLES_EXT */ + { 36018, 0x00008D55 }, /* GL_RENDERBUFFER_STENCIL_SIZE */ + { 36047, 0x00008D55 }, /* GL_RENDERBUFFER_STENCIL_SIZE_OES */ + { 36080, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH */ + { 36102, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH_EXT */ + { 36128, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH_OES */ + { 36154, 0x00001F01 }, /* GL_RENDERER */ + { 36166, 0x00000C40 }, /* GL_RENDER_MODE */ + { 36181, 0x00002901 }, /* GL_REPEAT */ + { 36191, 0x00001E01 }, /* GL_REPLACE */ + { 36202, 0x00008062 }, /* GL_REPLACE_EXT */ + { 36217, 0x00008153 }, /* GL_REPLICATE_BORDER_HP */ + { 36240, 0x0000803A }, /* GL_RESCALE_NORMAL */ + { 36258, 0x0000803A }, /* GL_RESCALE_NORMAL_EXT */ + { 36280, 0x00008A1B }, /* GL_RETAINED_APPLE */ + { 36298, 0x00000102 }, /* GL_RETURN */ + { 36308, 0x00008F99 }, /* GL_RG16_SNORM */ + { 36322, 0x00008F95 }, /* GL_RG8_SNORM */ + { 36335, 0x00001907 }, /* GL_RGB */ + { 36342, 0x00008052 }, /* GL_RGB10 */ + { 36351, 0x00008059 }, /* GL_RGB10_A2 */ + { 36363, 0x00008059 }, /* GL_RGB10_A2_EXT */ + { 36379, 0x00008052 }, /* GL_RGB10_EXT */ + { 36392, 0x00008053 }, /* GL_RGB12 */ + { 36401, 0x00008053 }, /* GL_RGB12_EXT */ + { 36414, 0x00008054 }, /* GL_RGB16 */ + { 36423, 0x0000881B }, /* GL_RGB16F */ + { 36433, 0x00008D89 }, /* GL_RGB16I */ + { 36443, 0x00008D89 }, /* GL_RGB16I_EXT */ + { 36457, 0x00008D77 }, /* GL_RGB16UI */ + { 36468, 0x00008D77 }, /* GL_RGB16UI_EXT */ + { 36483, 0x00008054 }, /* GL_RGB16_EXT */ + { 36496, 0x00008F9A }, /* GL_RGB16_SNORM */ + { 36511, 0x0000804E }, /* GL_RGB2_EXT */ + { 36523, 0x00008815 }, /* GL_RGB32F */ + { 36533, 0x00008D83 }, /* GL_RGB32I */ + { 36543, 0x00008D83 }, /* GL_RGB32I_EXT */ + { 36557, 0x00008D71 }, /* GL_RGB32UI */ + { 36568, 0x00008D71 }, /* GL_RGB32UI_EXT */ + { 36583, 0x0000804F }, /* GL_RGB4 */ + { 36591, 0x0000804F }, /* GL_RGB4_EXT */ + { 36603, 0x000083A1 }, /* GL_RGB4_S3TC */ + { 36616, 0x00008050 }, /* GL_RGB5 */ + { 36624, 0x00008D62 }, /* GL_RGB565 */ + { 36634, 0x00008D62 }, /* GL_RGB565_OES */ + { 36648, 0x00008057 }, /* GL_RGB5_A1 */ + { 36659, 0x00008057 }, /* GL_RGB5_A1_EXT */ + { 36674, 0x00008057 }, /* GL_RGB5_A1_OES */ + { 36689, 0x00008050 }, /* GL_RGB5_EXT */ + { 36701, 0x00008051 }, /* GL_RGB8 */ + { 36709, 0x00008D8F }, /* GL_RGB8I */ + { 36718, 0x00008D8F }, /* GL_RGB8I_EXT */ + { 36731, 0x00008D7D }, /* GL_RGB8UI */ + { 36741, 0x00008D7D }, /* GL_RGB8UI_EXT */ + { 36755, 0x00008051 }, /* GL_RGB8_EXT */ + { 36767, 0x00008051 }, /* GL_RGB8_OES */ + { 36779, 0x00008F96 }, /* GL_RGB8_SNORM */ + { 36793, 0x00008C3D }, /* GL_RGB9_E5 */ + { 36804, 0x00001908 }, /* GL_RGBA */ + { 36812, 0x0000805A }, /* GL_RGBA12 */ + { 36822, 0x0000805A }, /* GL_RGBA12_EXT */ + { 36836, 0x0000805B }, /* GL_RGBA16 */ + { 36846, 0x0000881A }, /* GL_RGBA16F */ + { 36857, 0x00008D88 }, /* GL_RGBA16I */ + { 36868, 0x00008D88 }, /* GL_RGBA16I_EXT */ + { 36883, 0x00008D76 }, /* GL_RGBA16UI */ + { 36895, 0x00008D76 }, /* GL_RGBA16UI_EXT */ + { 36911, 0x0000805B }, /* GL_RGBA16_EXT */ + { 36925, 0x00008F9B }, /* GL_RGBA16_SNORM */ + { 36941, 0x00008055 }, /* GL_RGBA2 */ + { 36950, 0x00008055 }, /* GL_RGBA2_EXT */ + { 36963, 0x00008814 }, /* GL_RGBA32F */ + { 36974, 0x00008D82 }, /* GL_RGBA32I */ + { 36985, 0x00008D82 }, /* GL_RGBA32I_EXT */ + { 37000, 0x00008D70 }, /* GL_RGBA32UI */ + { 37012, 0x00008D70 }, /* GL_RGBA32UI_EXT */ + { 37028, 0x00008056 }, /* GL_RGBA4 */ + { 37037, 0x000083A5 }, /* GL_RGBA4_DXT5_S3TC */ + { 37056, 0x00008056 }, /* GL_RGBA4_EXT */ + { 37069, 0x00008056 }, /* GL_RGBA4_OES */ + { 37082, 0x000083A3 }, /* GL_RGBA4_S3TC */ + { 37096, 0x00008058 }, /* GL_RGBA8 */ + { 37105, 0x00008D8E }, /* GL_RGBA8I */ + { 37115, 0x00008D8E }, /* GL_RGBA8I_EXT */ + { 37129, 0x00008D7C }, /* GL_RGBA8UI */ + { 37140, 0x00008D7C }, /* GL_RGBA8UI_EXT */ + { 37155, 0x00008058 }, /* GL_RGBA8_EXT */ + { 37168, 0x00008058 }, /* GL_RGBA8_OES */ + { 37181, 0x00008F97 }, /* GL_RGBA8_SNORM */ + { 37196, 0x000083A4 }, /* GL_RGBA_DXT5_S3TC */ + { 37214, 0x00008820 }, /* GL_RGBA_FLOAT_MODE_ARB */ + { 37237, 0x00008D99 }, /* GL_RGBA_INTEGER */ + { 37253, 0x00008D99 }, /* GL_RGBA_INTEGER_EXT */ + { 37273, 0x00008D9E }, /* GL_RGBA_INTEGER_MODE_EXT */ + { 37298, 0x00000C31 }, /* GL_RGBA_MODE */ + { 37311, 0x000083A2 }, /* GL_RGBA_S3TC */ + { 37324, 0x00008F93 }, /* GL_RGBA_SNORM */ + { 37338, 0x00008D98 }, /* GL_RGB_INTEGER */ + { 37353, 0x00008D98 }, /* GL_RGB_INTEGER_EXT */ + { 37372, 0x000083A0 }, /* GL_RGB_S3TC */ + { 37384, 0x00008573 }, /* GL_RGB_SCALE */ + { 37397, 0x00008573 }, /* GL_RGB_SCALE_ARB */ + { 37414, 0x00008573 }, /* GL_RGB_SCALE_EXT */ + { 37431, 0x00008F92 }, /* GL_RGB_SNORM */ + { 37444, 0x00008F91 }, /* GL_RG_SNORM */ + { 37456, 0x00000407 }, /* GL_RIGHT */ + { 37465, 0x00002000 }, /* GL_S */ + { 37470, 0x00008B5D }, /* GL_SAMPLER_1D */ + { 37484, 0x00008DC0 }, /* GL_SAMPLER_1D_ARRAY */ + { 37504, 0x00008DC0 }, /* GL_SAMPLER_1D_ARRAY_EXT */ + { 37528, 0x00008DC3 }, /* GL_SAMPLER_1D_ARRAY_SHADOW */ + { 37555, 0x00008DC3 }, /* GL_SAMPLER_1D_ARRAY_SHADOW_EXT */ + { 37586, 0x00008B61 }, /* GL_SAMPLER_1D_SHADOW */ + { 37607, 0x00008B5E }, /* GL_SAMPLER_2D */ + { 37621, 0x00008DC1 }, /* GL_SAMPLER_2D_ARRAY */ + { 37641, 0x00008DC1 }, /* GL_SAMPLER_2D_ARRAY_EXT */ + { 37665, 0x00008DC4 }, /* GL_SAMPLER_2D_ARRAY_SHADOW */ + { 37692, 0x00008DC4 }, /* GL_SAMPLER_2D_ARRAY_SHADOW_EXT */ + { 37723, 0x00008B63 }, /* GL_SAMPLER_2D_RECT */ + { 37742, 0x00008B64 }, /* GL_SAMPLER_2D_RECT_SHADOW */ + { 37768, 0x00008B62 }, /* GL_SAMPLER_2D_SHADOW */ + { 37789, 0x00008B5F }, /* GL_SAMPLER_3D */ + { 37803, 0x00008B5F }, /* GL_SAMPLER_3D_OES */ + { 37821, 0x00008DC2 }, /* GL_SAMPLER_BUFFER */ + { 37839, 0x00008DC2 }, /* GL_SAMPLER_BUFFER_EXT */ + { 37861, 0x00008B60 }, /* GL_SAMPLER_CUBE */ + { 37877, 0x00008DC5 }, /* GL_SAMPLER_CUBE_SHADOW */ + { 37900, 0x00008DC5 }, /* GL_SAMPLER_CUBE_SHADOW_EXT */ + { 37927, 0x000080A9 }, /* GL_SAMPLES */ + { 37938, 0x000086B4 }, /* GL_SAMPLES_3DFX */ + { 37954, 0x000080A9 }, /* GL_SAMPLES_ARB */ + { 37969, 0x00008914 }, /* GL_SAMPLES_PASSED */ + { 37987, 0x00008914 }, /* GL_SAMPLES_PASSED_ARB */ + { 38009, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ + { 38037, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE_ARB */ + { 38069, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE */ + { 38092, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE_ARB */ + { 38119, 0x000080A8 }, /* GL_SAMPLE_BUFFERS */ + { 38137, 0x000086B3 }, /* GL_SAMPLE_BUFFERS_3DFX */ + { 38160, 0x000080A8 }, /* GL_SAMPLE_BUFFERS_ARB */ + { 38182, 0x000080A0 }, /* GL_SAMPLE_COVERAGE */ + { 38201, 0x000080A0 }, /* GL_SAMPLE_COVERAGE_ARB */ + { 38224, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT */ + { 38250, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT_ARB */ + { 38280, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE */ + { 38305, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE_ARB */ + { 38334, 0x00080000 }, /* GL_SCISSOR_BIT */ + { 38349, 0x00000C10 }, /* GL_SCISSOR_BOX */ + { 38364, 0x00000C11 }, /* GL_SCISSOR_TEST */ + { 38380, 0x0000845E }, /* GL_SECONDARY_COLOR_ARRAY */ + { 38405, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ + { 38445, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB */ + { 38489, 0x0000845D }, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ + { 38522, 0x0000845A }, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ + { 38552, 0x0000845C }, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ + { 38584, 0x0000845B }, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ + { 38614, 0x00001C02 }, /* GL_SELECT */ + { 38624, 0x00000DF3 }, /* GL_SELECTION_BUFFER_POINTER */ + { 38652, 0x00000DF4 }, /* GL_SELECTION_BUFFER_SIZE */ + { 38677, 0x00008012 }, /* GL_SEPARABLE_2D */ + { 38693, 0x00008C8D }, /* GL_SEPARATE_ATTRIBS */ + { 38713, 0x00008C8D }, /* GL_SEPARATE_ATTRIBS_EXT */ + { 38737, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR */ + { 38764, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR_EXT */ + { 38795, 0x0000150F }, /* GL_SET */ + { 38802, 0x00008DF8 }, /* GL_SHADER_BINARY_FORMATS */ + { 38827, 0x00008DFA }, /* GL_SHADER_COMPILER */ + { 38846, 0x00008B48 }, /* GL_SHADER_OBJECT_ARB */ + { 38867, 0x00008B88 }, /* GL_SHADER_SOURCE_LENGTH */ + { 38891, 0x00008B4F }, /* GL_SHADER_TYPE */ + { 38906, 0x00000B54 }, /* GL_SHADE_MODEL */ + { 38921, 0x00008B8C }, /* GL_SHADING_LANGUAGE_VERSION */ + { 38949, 0x000080BF }, /* GL_SHADOW_AMBIENT_SGIX */ + { 38972, 0x000081FB }, /* GL_SHARED_TEXTURE_PALETTE_EXT */ + { 39002, 0x00001601 }, /* GL_SHININESS */ + { 39015, 0x00001402 }, /* GL_SHORT */ + { 39024, 0x00009119 }, /* GL_SIGNALED */ + { 39036, 0x00008F9C }, /* GL_SIGNED_NORMALIZED */ + { 39057, 0x000081F9 }, /* GL_SINGLE_COLOR */ + { 39073, 0x000081F9 }, /* GL_SINGLE_COLOR_EXT */ + { 39093, 0x000085CC }, /* GL_SLICE_ACCUM_SUN */ + { 39112, 0x00008C46 }, /* GL_SLUMINANCE */ + { 39126, 0x00008C47 }, /* GL_SLUMINANCE8 */ + { 39141, 0x00008C45 }, /* GL_SLUMINANCE8_ALPHA8 */ + { 39163, 0x00008C44 }, /* GL_SLUMINANCE_ALPHA */ + { 39183, 0x00001D01 }, /* GL_SMOOTH */ + { 39193, 0x00000B23 }, /* GL_SMOOTH_LINE_WIDTH_GRANULARITY */ + { 39226, 0x00000B22 }, /* GL_SMOOTH_LINE_WIDTH_RANGE */ + { 39253, 0x00000B13 }, /* GL_SMOOTH_POINT_SIZE_GRANULARITY */ + { 39286, 0x00000B12 }, /* GL_SMOOTH_POINT_SIZE_RANGE */ + { 39313, 0x00008588 }, /* GL_SOURCE0_ALPHA */ + { 39330, 0x00008588 }, /* GL_SOURCE0_ALPHA_ARB */ + { 39351, 0x00008588 }, /* GL_SOURCE0_ALPHA_EXT */ + { 39372, 0x00008580 }, /* GL_SOURCE0_RGB */ + { 39387, 0x00008580 }, /* GL_SOURCE0_RGB_ARB */ + { 39406, 0x00008580 }, /* GL_SOURCE0_RGB_EXT */ + { 39425, 0x00008589 }, /* GL_SOURCE1_ALPHA */ + { 39442, 0x00008589 }, /* GL_SOURCE1_ALPHA_ARB */ + { 39463, 0x00008589 }, /* GL_SOURCE1_ALPHA_EXT */ + { 39484, 0x00008581 }, /* GL_SOURCE1_RGB */ + { 39499, 0x00008581 }, /* GL_SOURCE1_RGB_ARB */ + { 39518, 0x00008581 }, /* GL_SOURCE1_RGB_EXT */ + { 39537, 0x0000858A }, /* GL_SOURCE2_ALPHA */ + { 39554, 0x0000858A }, /* GL_SOURCE2_ALPHA_ARB */ + { 39575, 0x0000858A }, /* GL_SOURCE2_ALPHA_EXT */ + { 39596, 0x00008582 }, /* GL_SOURCE2_RGB */ + { 39611, 0x00008582 }, /* GL_SOURCE2_RGB_ARB */ + { 39630, 0x00008582 }, /* GL_SOURCE2_RGB_EXT */ + { 39649, 0x0000858B }, /* GL_SOURCE3_ALPHA_NV */ + { 39669, 0x00008583 }, /* GL_SOURCE3_RGB_NV */ + { 39687, 0x00001202 }, /* GL_SPECULAR */ + { 39699, 0x00002402 }, /* GL_SPHERE_MAP */ + { 39713, 0x00001206 }, /* GL_SPOT_CUTOFF */ + { 39728, 0x00001204 }, /* GL_SPOT_DIRECTION */ + { 39746, 0x00001205 }, /* GL_SPOT_EXPONENT */ + { 39763, 0x00008588 }, /* GL_SRC0_ALPHA */ + { 39777, 0x00008580 }, /* GL_SRC0_RGB */ + { 39789, 0x00008589 }, /* GL_SRC1_ALPHA */ + { 39803, 0x00008581 }, /* GL_SRC1_RGB */ + { 39815, 0x0000858A }, /* GL_SRC2_ALPHA */ + { 39829, 0x00008582 }, /* GL_SRC2_RGB */ + { 39841, 0x00000302 }, /* GL_SRC_ALPHA */ + { 39854, 0x00000308 }, /* GL_SRC_ALPHA_SATURATE */ + { 39876, 0x00000300 }, /* GL_SRC_COLOR */ + { 39889, 0x00008C40 }, /* GL_SRGB */ + { 39897, 0x00008C41 }, /* GL_SRGB8 */ + { 39906, 0x00008C43 }, /* GL_SRGB8_ALPHA8 */ + { 39922, 0x00008C42 }, /* GL_SRGB_ALPHA */ + { 39936, 0x00000503 }, /* GL_STACK_OVERFLOW */ + { 39954, 0x00000504 }, /* GL_STACK_UNDERFLOW */ + { 39973, 0x000088E6 }, /* GL_STATIC_COPY */ + { 39988, 0x000088E6 }, /* GL_STATIC_COPY_ARB */ + { 40007, 0x000088E4 }, /* GL_STATIC_DRAW */ + { 40022, 0x000088E4 }, /* GL_STATIC_DRAW_ARB */ + { 40041, 0x000088E5 }, /* GL_STATIC_READ */ + { 40056, 0x000088E5 }, /* GL_STATIC_READ_ARB */ + { 40075, 0x00001802 }, /* GL_STENCIL */ + { 40086, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT */ + { 40108, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_EXT */ + { 40134, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_OES */ + { 40160, 0x00008801 }, /* GL_STENCIL_BACK_FAIL */ + { 40181, 0x00008801 }, /* GL_STENCIL_BACK_FAIL_ATI */ + { 40206, 0x00008800 }, /* GL_STENCIL_BACK_FUNC */ + { 40227, 0x00008800 }, /* GL_STENCIL_BACK_FUNC_ATI */ + { 40252, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ + { 40284, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI */ + { 40320, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ + { 40352, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI */ + { 40388, 0x00008CA3 }, /* GL_STENCIL_BACK_REF */ + { 40408, 0x00008CA4 }, /* GL_STENCIL_BACK_VALUE_MASK */ + { 40435, 0x00008CA5 }, /* GL_STENCIL_BACK_WRITEMASK */ + { 40461, 0x00000D57 }, /* GL_STENCIL_BITS */ + { 40477, 0x00008224 }, /* GL_STENCIL_BUFFER */ + { 40495, 0x00000400 }, /* GL_STENCIL_BUFFER_BIT */ + { 40517, 0x00000B91 }, /* GL_STENCIL_CLEAR_VALUE */ + { 40540, 0x00000B94 }, /* GL_STENCIL_FAIL */ + { 40556, 0x00000B92 }, /* GL_STENCIL_FUNC */ + { 40572, 0x00001901 }, /* GL_STENCIL_INDEX */ + { 40589, 0x00008D46 }, /* GL_STENCIL_INDEX1 */ + { 40607, 0x00008D49 }, /* GL_STENCIL_INDEX16 */ + { 40626, 0x00008D49 }, /* GL_STENCIL_INDEX16_EXT */ + { 40649, 0x00008D46 }, /* GL_STENCIL_INDEX1_EXT */ + { 40671, 0x00008D46 }, /* GL_STENCIL_INDEX1_OES */ + { 40693, 0x00008D47 }, /* GL_STENCIL_INDEX4 */ + { 40711, 0x00008D47 }, /* GL_STENCIL_INDEX4_EXT */ + { 40733, 0x00008D47 }, /* GL_STENCIL_INDEX4_OES */ + { 40755, 0x00008D48 }, /* GL_STENCIL_INDEX8 */ + { 40773, 0x00008D48 }, /* GL_STENCIL_INDEX8_EXT */ + { 40795, 0x00008D48 }, /* GL_STENCIL_INDEX8_OES */ + { 40817, 0x00008D45 }, /* GL_STENCIL_INDEX_EXT */ + { 40838, 0x00000B95 }, /* GL_STENCIL_PASS_DEPTH_FAIL */ + { 40865, 0x00000B96 }, /* GL_STENCIL_PASS_DEPTH_PASS */ + { 40892, 0x00000B97 }, /* GL_STENCIL_REF */ + { 40907, 0x00000B90 }, /* GL_STENCIL_TEST */ + { 40923, 0x00008910 }, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ + { 40952, 0x00000B93 }, /* GL_STENCIL_VALUE_MASK */ + { 40974, 0x00000B98 }, /* GL_STENCIL_WRITEMASK */ + { 40995, 0x00000C33 }, /* GL_STEREO */ + { 41005, 0x000085BE }, /* GL_STORAGE_CACHED_APPLE */ + { 41029, 0x000085BD }, /* GL_STORAGE_PRIVATE_APPLE */ + { 41054, 0x000085BF }, /* GL_STORAGE_SHARED_APPLE */ + { 41078, 0x000088E2 }, /* GL_STREAM_COPY */ + { 41093, 0x000088E2 }, /* GL_STREAM_COPY_ARB */ + { 41112, 0x000088E0 }, /* GL_STREAM_DRAW */ + { 41127, 0x000088E0 }, /* GL_STREAM_DRAW_ARB */ + { 41146, 0x000088E1 }, /* GL_STREAM_READ */ + { 41161, 0x000088E1 }, /* GL_STREAM_READ_ARB */ + { 41180, 0x00000D50 }, /* GL_SUBPIXEL_BITS */ + { 41197, 0x000084E7 }, /* GL_SUBTRACT */ + { 41209, 0x000084E7 }, /* GL_SUBTRACT_ARB */ + { 41225, 0x00009113 }, /* GL_SYNC_CONDITION */ + { 41243, 0x00009116 }, /* GL_SYNC_FENCE */ + { 41257, 0x00009115 }, /* GL_SYNC_FLAGS */ + { 41271, 0x00000001 }, /* GL_SYNC_FLUSH_COMMANDS_BIT */ + { 41298, 0x00009117 }, /* GL_SYNC_GPU_COMMANDS_COMPLETE */ + { 41328, 0x00009114 }, /* GL_SYNC_STATUS */ + { 41343, 0x00002001 }, /* GL_T */ + { 41348, 0x00002A2A }, /* GL_T2F_C3F_V3F */ + { 41363, 0x00002A2C }, /* GL_T2F_C4F_N3F_V3F */ + { 41382, 0x00002A29 }, /* GL_T2F_C4UB_V3F */ + { 41398, 0x00002A2B }, /* GL_T2F_N3F_V3F */ + { 41413, 0x00002A27 }, /* GL_T2F_V3F */ + { 41424, 0x00002A2D }, /* GL_T4F_C4F_N3F_V4F */ + { 41443, 0x00002A28 }, /* GL_T4F_V4F */ + { 41454, 0x00008031 }, /* GL_TABLE_TOO_LARGE_EXT */ + { 41477, 0x00001702 }, /* GL_TEXTURE */ + { 41488, 0x000084C0 }, /* GL_TEXTURE0 */ + { 41500, 0x000084C0 }, /* GL_TEXTURE0_ARB */ + { 41516, 0x000084C1 }, /* GL_TEXTURE1 */ + { 41528, 0x000084CA }, /* GL_TEXTURE10 */ + { 41541, 0x000084CA }, /* GL_TEXTURE10_ARB */ + { 41558, 0x000084CB }, /* GL_TEXTURE11 */ + { 41571, 0x000084CB }, /* GL_TEXTURE11_ARB */ + { 41588, 0x000084CC }, /* GL_TEXTURE12 */ + { 41601, 0x000084CC }, /* GL_TEXTURE12_ARB */ + { 41618, 0x000084CD }, /* GL_TEXTURE13 */ + { 41631, 0x000084CD }, /* GL_TEXTURE13_ARB */ + { 41648, 0x000084CE }, /* GL_TEXTURE14 */ + { 41661, 0x000084CE }, /* GL_TEXTURE14_ARB */ + { 41678, 0x000084CF }, /* GL_TEXTURE15 */ + { 41691, 0x000084CF }, /* GL_TEXTURE15_ARB */ + { 41708, 0x000084D0 }, /* GL_TEXTURE16 */ + { 41721, 0x000084D0 }, /* GL_TEXTURE16_ARB */ + { 41738, 0x000084D1 }, /* GL_TEXTURE17 */ + { 41751, 0x000084D1 }, /* GL_TEXTURE17_ARB */ + { 41768, 0x000084D2 }, /* GL_TEXTURE18 */ + { 41781, 0x000084D2 }, /* GL_TEXTURE18_ARB */ + { 41798, 0x000084D3 }, /* GL_TEXTURE19 */ + { 41811, 0x000084D3 }, /* GL_TEXTURE19_ARB */ + { 41828, 0x000084C1 }, /* GL_TEXTURE1_ARB */ + { 41844, 0x000084C2 }, /* GL_TEXTURE2 */ + { 41856, 0x000084D4 }, /* GL_TEXTURE20 */ + { 41869, 0x000084D4 }, /* GL_TEXTURE20_ARB */ + { 41886, 0x000084D5 }, /* GL_TEXTURE21 */ + { 41899, 0x000084D5 }, /* GL_TEXTURE21_ARB */ + { 41916, 0x000084D6 }, /* GL_TEXTURE22 */ + { 41929, 0x000084D6 }, /* GL_TEXTURE22_ARB */ + { 41946, 0x000084D7 }, /* GL_TEXTURE23 */ + { 41959, 0x000084D7 }, /* GL_TEXTURE23_ARB */ + { 41976, 0x000084D8 }, /* GL_TEXTURE24 */ + { 41989, 0x000084D8 }, /* GL_TEXTURE24_ARB */ + { 42006, 0x000084D9 }, /* GL_TEXTURE25 */ + { 42019, 0x000084D9 }, /* GL_TEXTURE25_ARB */ + { 42036, 0x000084DA }, /* GL_TEXTURE26 */ + { 42049, 0x000084DA }, /* GL_TEXTURE26_ARB */ + { 42066, 0x000084DB }, /* GL_TEXTURE27 */ + { 42079, 0x000084DB }, /* GL_TEXTURE27_ARB */ + { 42096, 0x000084DC }, /* GL_TEXTURE28 */ + { 42109, 0x000084DC }, /* GL_TEXTURE28_ARB */ + { 42126, 0x000084DD }, /* GL_TEXTURE29 */ + { 42139, 0x000084DD }, /* GL_TEXTURE29_ARB */ + { 42156, 0x000084C2 }, /* GL_TEXTURE2_ARB */ + { 42172, 0x000084C3 }, /* GL_TEXTURE3 */ + { 42184, 0x000084DE }, /* GL_TEXTURE30 */ + { 42197, 0x000084DE }, /* GL_TEXTURE30_ARB */ + { 42214, 0x000084DF }, /* GL_TEXTURE31 */ + { 42227, 0x000084DF }, /* GL_TEXTURE31_ARB */ + { 42244, 0x000084C3 }, /* GL_TEXTURE3_ARB */ + { 42260, 0x000084C4 }, /* GL_TEXTURE4 */ + { 42272, 0x000084C4 }, /* GL_TEXTURE4_ARB */ + { 42288, 0x000084C5 }, /* GL_TEXTURE5 */ + { 42300, 0x000084C5 }, /* GL_TEXTURE5_ARB */ + { 42316, 0x000084C6 }, /* GL_TEXTURE6 */ + { 42328, 0x000084C6 }, /* GL_TEXTURE6_ARB */ + { 42344, 0x000084C7 }, /* GL_TEXTURE7 */ + { 42356, 0x000084C7 }, /* GL_TEXTURE7_ARB */ + { 42372, 0x000084C8 }, /* GL_TEXTURE8 */ + { 42384, 0x000084C8 }, /* GL_TEXTURE8_ARB */ + { 42400, 0x000084C9 }, /* GL_TEXTURE9 */ + { 42412, 0x000084C9 }, /* GL_TEXTURE9_ARB */ + { 42428, 0x00000DE0 }, /* GL_TEXTURE_1D */ + { 42442, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY */ + { 42462, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY_EXT */ + { 42486, 0x00000DE1 }, /* GL_TEXTURE_2D */ + { 42500, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY */ + { 42520, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY_EXT */ + { 42544, 0x0000806F }, /* GL_TEXTURE_3D */ + { 42558, 0x0000806F }, /* GL_TEXTURE_3D_OES */ + { 42576, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE */ + { 42598, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE_EXT */ + { 42624, 0x0000813C }, /* GL_TEXTURE_BASE_LEVEL */ + { 42646, 0x00008068 }, /* GL_TEXTURE_BINDING_1D */ + { 42668, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY */ + { 42696, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY_EXT */ + { 42728, 0x00008069 }, /* GL_TEXTURE_BINDING_2D */ + { 42750, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY */ + { 42778, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY_EXT */ + { 42810, 0x0000806A }, /* GL_TEXTURE_BINDING_3D */ + { 42832, 0x0000806A }, /* GL_TEXTURE_BINDING_3D_OES */ + { 42858, 0x00008C2C }, /* GL_TEXTURE_BINDING_BUFFER */ + { 42884, 0x00008C2C }, /* GL_TEXTURE_BINDING_BUFFER_ARB */ + { 42914, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP */ + { 42942, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_ARB */ + { 42974, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_OES */ + { 43006, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE */ + { 43035, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_ARB */ + { 43068, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_NV */ + { 43100, 0x00040000 }, /* GL_TEXTURE_BIT */ + { 43115, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE */ + { 43136, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE_EXT */ + { 43161, 0x00001005 }, /* GL_TEXTURE_BORDER */ + { 43179, 0x00001004 }, /* GL_TEXTURE_BORDER_COLOR */ + { 43203, 0x00008C2A }, /* GL_TEXTURE_BUFFER */ + { 43221, 0x00008C2A }, /* GL_TEXTURE_BUFFER_ARB */ + { 43243, 0x00008C2D }, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING */ + { 43280, 0x00008C2D }, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB */ + { 43321, 0x00008C2E }, /* GL_TEXTURE_BUFFER_FORMAT */ + { 43346, 0x00008C2E }, /* GL_TEXTURE_BUFFER_FORMAT_ARB */ + { 43375, 0x00008171 }, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ + { 43406, 0x00008176 }, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ + { 43436, 0x00008172 }, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ + { 43466, 0x00008175 }, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ + { 43501, 0x00008173 }, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ + { 43532, 0x00008174 }, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ + { 43570, 0x000080BC }, /* GL_TEXTURE_COLOR_TABLE_SGI */ + { 43597, 0x000081EF }, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ + { 43629, 0x000080BF }, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */ + { 43663, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC */ + { 43687, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC_ARB */ + { 43715, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE */ + { 43739, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE_ARB */ + { 43767, 0x0000819B }, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ + { 43800, 0x0000819A }, /* GL_TEXTURE_COMPARE_SGIX */ + { 43824, 0x00001003 }, /* GL_TEXTURE_COMPONENTS */ + { 43846, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED */ + { 43868, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED_ARB */ + { 43894, 0x000086A3 }, /* GL_TEXTURE_COMPRESSED_FORMATS_ARB */ + { 43928, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ + { 43961, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB */ + { 43998, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT */ + { 44026, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT_ARB */ + { 44058, 0x00008078 }, /* GL_TEXTURE_COORD_ARRAY */ + { 44081, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ + { 44119, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB */ + { 44161, 0x00008092 }, /* GL_TEXTURE_COORD_ARRAY_POINTER */ + { 44192, 0x00008088 }, /* GL_TEXTURE_COORD_ARRAY_SIZE */ + { 44220, 0x0000808A }, /* GL_TEXTURE_COORD_ARRAY_STRIDE */ + { 44250, 0x00008089 }, /* GL_TEXTURE_COORD_ARRAY_TYPE */ + { 44278, 0x00008B9D }, /* GL_TEXTURE_CROP_RECT_OES */ + { 44303, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP */ + { 44323, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_ARB */ + { 44347, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ + { 44378, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB */ + { 44413, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES */ + { 44448, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ + { 44479, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB */ + { 44514, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES */ + { 44549, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ + { 44580, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB */ + { 44615, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES */ + { 44650, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_OES */ + { 44674, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ + { 44705, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB */ + { 44740, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES */ + { 44775, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ + { 44806, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB */ + { 44841, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES */ + { 44876, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ + { 44907, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB */ + { 44942, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES */ + { 44977, 0x000088F4 }, /* GL_TEXTURE_CUBE_MAP_SEAMLESS */ + { 45006, 0x00008071 }, /* GL_TEXTURE_DEPTH */ + { 45023, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE */ + { 45045, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE_ARB */ + { 45071, 0x00002300 }, /* GL_TEXTURE_ENV */ + { 45086, 0x00002201 }, /* GL_TEXTURE_ENV_COLOR */ + { 45107, 0x00002200 }, /* GL_TEXTURE_ENV_MODE */ + { 45127, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL */ + { 45153, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL_EXT */ + { 45183, 0x00002500 }, /* GL_TEXTURE_GEN_MODE */ + { 45203, 0x00002500 }, /* GL_TEXTURE_GEN_MODE_OES */ + { 45227, 0x00000C63 }, /* GL_TEXTURE_GEN_Q */ + { 45244, 0x00000C62 }, /* GL_TEXTURE_GEN_R */ + { 45261, 0x00000C60 }, /* GL_TEXTURE_GEN_S */ + { 45278, 0x00008D60 }, /* GL_TEXTURE_GEN_STR_OES */ + { 45301, 0x00000C61 }, /* GL_TEXTURE_GEN_T */ + { 45318, 0x0000819D }, /* GL_TEXTURE_GEQUAL_R_SGIX */ + { 45343, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE */ + { 45365, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE_EXT */ + { 45391, 0x00001001 }, /* GL_TEXTURE_HEIGHT */ + { 45409, 0x000080ED }, /* GL_TEXTURE_INDEX_SIZE_EXT */ + { 45435, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE */ + { 45461, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE_EXT */ + { 45491, 0x00001003 }, /* GL_TEXTURE_INTERNAL_FORMAT */ + { 45518, 0x0000819C }, /* GL_TEXTURE_LEQUAL_R_SGIX */ + { 45543, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS */ + { 45563, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS_EXT */ + { 45587, 0x00008190 }, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ + { 45614, 0x0000818E }, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ + { 45641, 0x0000818F }, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ + { 45668, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE */ + { 45694, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE_EXT */ + { 45724, 0x00002800 }, /* GL_TEXTURE_MAG_FILTER */ + { 45746, 0x00000BA8 }, /* GL_TEXTURE_MATRIX */ + { 45764, 0x0000898F }, /* GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES */ + { 45804, 0x000084FE }, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ + { 45834, 0x0000836B }, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ + { 45862, 0x00008369 }, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ + { 45890, 0x0000836A }, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ + { 45918, 0x0000813D }, /* GL_TEXTURE_MAX_LEVEL */ + { 45939, 0x0000813B }, /* GL_TEXTURE_MAX_LOD */ + { 45958, 0x00002801 }, /* GL_TEXTURE_MIN_FILTER */ + { 45980, 0x0000813A }, /* GL_TEXTURE_MIN_LOD */ + { 45999, 0x00008066 }, /* GL_TEXTURE_PRIORITY */ + { 46019, 0x000085B7 }, /* GL_TEXTURE_RANGE_LENGTH_APPLE */ + { 46049, 0x000085B8 }, /* GL_TEXTURE_RANGE_POINTER_APPLE */ + { 46080, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE */ + { 46101, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_ARB */ + { 46126, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_NV */ + { 46150, 0x0000805C }, /* GL_TEXTURE_RED_SIZE */ + { 46170, 0x0000805C }, /* GL_TEXTURE_RED_SIZE_EXT */ + { 46194, 0x00008067 }, /* GL_TEXTURE_RESIDENT */ + { 46214, 0x00008C3F }, /* GL_TEXTURE_SHARED_SIZE */ + { 46237, 0x00000BA5 }, /* GL_TEXTURE_STACK_DEPTH */ + { 46260, 0x000088F1 }, /* GL_TEXTURE_STENCIL_SIZE */ + { 46284, 0x000088F1 }, /* GL_TEXTURE_STENCIL_SIZE_EXT */ + { 46312, 0x000085BC }, /* GL_TEXTURE_STORAGE_HINT_APPLE */ + { 46342, 0x00008065 }, /* GL_TEXTURE_TOO_LARGE_EXT */ + { 46367, 0x0000888F }, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */ + { 46401, 0x00001000 }, /* GL_TEXTURE_WIDTH */ + { 46418, 0x00008072 }, /* GL_TEXTURE_WRAP_R */ + { 46436, 0x00008072 }, /* GL_TEXTURE_WRAP_R_OES */ + { 46458, 0x00002802 }, /* GL_TEXTURE_WRAP_S */ + { 46476, 0x00002803 }, /* GL_TEXTURE_WRAP_T */ + { 46494, 0x0000911B }, /* GL_TIMEOUT_EXPIRED */ + { 46513, 0x000088BF }, /* GL_TIME_ELAPSED_EXT */ + { 46533, 0x00008648 }, /* GL_TRACK_MATRIX_NV */ + { 46552, 0x00008649 }, /* GL_TRACK_MATRIX_TRANSFORM_NV */ + { 46581, 0x00001000 }, /* GL_TRANSFORM_BIT */ + { 46598, 0x00008E22 }, /* GL_TRANSFORM_FEEDBACK */ + { 46620, 0x00008E25 }, /* GL_TRANSFORM_FEEDBACK_BINDING */ + { 46650, 0x00008C8E }, /* GL_TRANSFORM_FEEDBACK_BUFFER */ + { 46679, 0x00008E24 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE */ + { 46715, 0x00008C8F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING */ + { 46752, 0x00008C8F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT */ + { 46793, 0x00008C8E }, /* GL_TRANSFORM_FEEDBACK_BUFFER_EXT */ + { 46826, 0x00008C7F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE */ + { 46860, 0x00008C7F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE_EXT */ + { 46898, 0x00008E23 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED */ + { 46934, 0x00008C85 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE */ + { 46968, 0x00008C85 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT */ + { 47006, 0x00008C84 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_START */ + { 47041, 0x00008C84 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT */ + { 47080, 0x00008C88 }, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN */ + { 47121, 0x00008C88 }, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT */ + { 47166, 0x00008C83 }, /* GL_TRANSFORM_FEEDBACK_VARYINGS */ + { 47197, 0x00008C83 }, /* GL_TRANSFORM_FEEDBACK_VARYINGS_EXT */ + { 47232, 0x00008C76 }, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH */ + { 47273, 0x00008C76 }, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT */ + { 47318, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX */ + { 47344, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX_ARB */ + { 47374, 0x000088B7 }, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ + { 47406, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ + { 47436, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX_ARB */ + { 47470, 0x0000862C }, /* GL_TRANSPOSE_NV */ + { 47486, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX */ + { 47517, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX_ARB */ + { 47552, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX */ + { 47580, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX_ARB */ + { 47612, 0x00000004 }, /* GL_TRIANGLES */ + { 47625, 0x0000000C }, /* GL_TRIANGLES_ADJACENCY */ + { 47648, 0x0000000C }, /* GL_TRIANGLES_ADJACENCY_ARB */ + { 47675, 0x00000006 }, /* GL_TRIANGLE_FAN */ + { 47691, 0x00008615 }, /* GL_TRIANGLE_MESH_SUN */ + { 47712, 0x00000005 }, /* GL_TRIANGLE_STRIP */ + { 47730, 0x0000000D }, /* GL_TRIANGLE_STRIP_ADJACENCY */ + { 47758, 0x0000000D }, /* GL_TRIANGLE_STRIP_ADJACENCY_ARB */ + { 47790, 0x00000001 }, /* GL_TRUE */ + { 47798, 0x00008A1C }, /* GL_UNDEFINED_APPLE */ + { 47817, 0x00000CF5 }, /* GL_UNPACK_ALIGNMENT */ + { 47837, 0x0000806E }, /* GL_UNPACK_IMAGE_HEIGHT */ + { 47860, 0x00000CF1 }, /* GL_UNPACK_LSB_FIRST */ + { 47880, 0x00000CF2 }, /* GL_UNPACK_ROW_LENGTH */ + { 47901, 0x0000806D }, /* GL_UNPACK_SKIP_IMAGES */ + { 47923, 0x00000CF4 }, /* GL_UNPACK_SKIP_PIXELS */ + { 47945, 0x00000CF3 }, /* GL_UNPACK_SKIP_ROWS */ + { 47965, 0x00000CF0 }, /* GL_UNPACK_SWAP_BYTES */ + { 47986, 0x00009118 }, /* GL_UNSIGNALED */ + { 48000, 0x00001401 }, /* GL_UNSIGNED_BYTE */ + { 48017, 0x00008362 }, /* GL_UNSIGNED_BYTE_2_3_3_REV */ + { 48044, 0x00008032 }, /* GL_UNSIGNED_BYTE_3_3_2 */ + { 48067, 0x00001405 }, /* GL_UNSIGNED_INT */ + { 48083, 0x00008C3B }, /* GL_UNSIGNED_INT_10F_11F_11F_REV */ + { 48115, 0x00008036 }, /* GL_UNSIGNED_INT_10_10_10_2 */ + { 48142, 0x00008DF6 }, /* GL_UNSIGNED_INT_10_10_10_2_OES */ + { 48173, 0x000084FA }, /* GL_UNSIGNED_INT_24_8 */ + { 48194, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_EXT */ + { 48219, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_NV */ + { 48243, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_OES */ + { 48268, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV */ + { 48299, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV_EXT */ + { 48334, 0x00008C3E }, /* GL_UNSIGNED_INT_5_9_9_9_REV */ + { 48362, 0x00008035 }, /* GL_UNSIGNED_INT_8_8_8_8 */ + { 48386, 0x00008367 }, /* GL_UNSIGNED_INT_8_8_8_8_REV */ + { 48414, 0x00008DD1 }, /* GL_UNSIGNED_INT_SAMPLER_1D */ + { 48441, 0x00008DD6 }, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY */ + { 48474, 0x00008DD6 }, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT */ + { 48511, 0x00008DD1 }, /* GL_UNSIGNED_INT_SAMPLER_1D_EXT */ + { 48542, 0x00008DD2 }, /* GL_UNSIGNED_INT_SAMPLER_2D */ + { 48569, 0x00008DD7 }, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY */ + { 48602, 0x00008DD7 }, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT */ + { 48639, 0x00008DD2 }, /* GL_UNSIGNED_INT_SAMPLER_2D_EXT */ + { 48670, 0x00008DD5 }, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT */ + { 48702, 0x00008DD5 }, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT */ + { 48738, 0x00008DD3 }, /* GL_UNSIGNED_INT_SAMPLER_3D */ + { 48765, 0x00008DD3 }, /* GL_UNSIGNED_INT_SAMPLER_3D_EXT */ + { 48796, 0x00008DD8 }, /* GL_UNSIGNED_INT_SAMPLER_BUFFER */ + { 48827, 0x00008DD8 }, /* GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT */ + { 48862, 0x00008DD4 }, /* GL_UNSIGNED_INT_SAMPLER_CUBE */ + { 48891, 0x00008DD4 }, /* GL_UNSIGNED_INT_SAMPLER_CUBE_EXT */ + { 48924, 0x00008DC6 }, /* GL_UNSIGNED_INT_VEC2 */ + { 48945, 0x00008DC6 }, /* GL_UNSIGNED_INT_VEC2_EXT */ + { 48970, 0x00008DC7 }, /* GL_UNSIGNED_INT_VEC3 */ + { 48991, 0x00008DC7 }, /* GL_UNSIGNED_INT_VEC3_EXT */ + { 49016, 0x00008DC8 }, /* GL_UNSIGNED_INT_VEC4 */ + { 49037, 0x00008DC8 }, /* GL_UNSIGNED_INT_VEC4_EXT */ + { 49062, 0x00008C17 }, /* GL_UNSIGNED_NORMALIZED */ + { 49085, 0x00001403 }, /* GL_UNSIGNED_SHORT */ + { 49103, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ + { 49133, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT */ + { 49167, 0x00008033 }, /* GL_UNSIGNED_SHORT_4_4_4_4 */ + { 49193, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ + { 49223, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT */ + { 49257, 0x00008034 }, /* GL_UNSIGNED_SHORT_5_5_5_1 */ + { 49283, 0x00008363 }, /* GL_UNSIGNED_SHORT_5_6_5 */ + { 49307, 0x00008364 }, /* GL_UNSIGNED_SHORT_5_6_5_REV */ + { 49335, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_APPLE */ + { 49363, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_MESA */ + { 49390, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ + { 49422, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_MESA */ + { 49453, 0x00008CA2 }, /* GL_UPPER_LEFT */ + { 49467, 0x00002A20 }, /* GL_V2F */ + { 49474, 0x00002A21 }, /* GL_V3F */ + { 49481, 0x00008B83 }, /* GL_VALIDATE_STATUS */ + { 49500, 0x00001F00 }, /* GL_VENDOR */ + { 49510, 0x00001F02 }, /* GL_VERSION */ + { 49521, 0x00008074 }, /* GL_VERTEX_ARRAY */ + { 49537, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING */ + { 49561, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING_APPLE */ + { 49591, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ + { 49622, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING_ARB */ + { 49657, 0x0000808E }, /* GL_VERTEX_ARRAY_POINTER */ + { 49681, 0x0000807A }, /* GL_VERTEX_ARRAY_SIZE */ + { 49702, 0x0000807C }, /* GL_VERTEX_ARRAY_STRIDE */ + { 49725, 0x0000807B }, /* GL_VERTEX_ARRAY_TYPE */ + { 49746, 0x00008650 }, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ + { 49773, 0x0000865A }, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ + { 49801, 0x0000865B }, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ + { 49829, 0x0000865C }, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ + { 49857, 0x0000865D }, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ + { 49885, 0x0000865E }, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ + { 49913, 0x0000865F }, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ + { 49941, 0x00008651 }, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ + { 49968, 0x00008652 }, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ + { 49995, 0x00008653 }, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ + { 50022, 0x00008654 }, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ + { 50049, 0x00008655 }, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ + { 50076, 0x00008656 }, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ + { 50103, 0x00008657 }, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ + { 50130, 0x00008658 }, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ + { 50157, 0x00008659 }, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ + { 50184, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ + { 50222, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB */ + { 50264, 0x000088FE }, /* GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB */ + { 50299, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ + { 50330, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB */ + { 50365, 0x000088FD }, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER */ + { 50396, 0x000088FD }, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT */ + { 50431, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ + { 50465, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB */ + { 50503, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ + { 50534, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB */ + { 50569, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ + { 50597, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB */ + { 50629, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ + { 50659, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB */ + { 50693, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ + { 50721, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB */ + { 50753, 0x000086A7 }, /* GL_VERTEX_BLEND_ARB */ + { 50773, 0x00008620 }, /* GL_VERTEX_PROGRAM_ARB */ + { 50795, 0x0000864A }, /* GL_VERTEX_PROGRAM_BINDING_NV */ + { 50824, 0x00008620 }, /* GL_VERTEX_PROGRAM_NV */ + { 50845, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE */ + { 50874, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_ARB */ + { 50907, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_NV */ + { 50939, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE */ + { 50966, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_ARB */ + { 50997, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_NV */ + { 51027, 0x00008B31 }, /* GL_VERTEX_SHADER */ + { 51044, 0x00008B31 }, /* GL_VERTEX_SHADER_ARB */ + { 51065, 0x00008621 }, /* GL_VERTEX_STATE_PROGRAM_NV */ + { 51092, 0x00000BA2 }, /* GL_VIEWPORT */ + { 51104, 0x00000800 }, /* GL_VIEWPORT_BIT */ + { 51120, 0x00008A1A }, /* GL_VOLATILE_APPLE */ + { 51138, 0x0000911D }, /* GL_WAIT_FAILED */ + { 51153, 0x000086AD }, /* GL_WEIGHT_ARRAY_ARB */ + { 51173, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ + { 51204, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB */ + { 51239, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_OES */ + { 51274, 0x000086AD }, /* GL_WEIGHT_ARRAY_OES */ + { 51294, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_ARB */ + { 51322, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_OES */ + { 51350, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_ARB */ + { 51375, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_OES */ + { 51400, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ + { 51427, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_OES */ + { 51454, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_ARB */ + { 51479, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_OES */ + { 51504, 0x000086A6 }, /* GL_WEIGHT_SUM_UNITY_ARB */ + { 51528, 0x000081D4 }, /* GL_WRAP_BORDER_SUN */ + { 51547, 0x000088B9 }, /* GL_WRITE_ONLY */ + { 51561, 0x000088B9 }, /* GL_WRITE_ONLY_ARB */ + { 51579, 0x000088B9 }, /* GL_WRITE_ONLY_OES */ + { 51597, 0x00001506 }, /* GL_XOR */ + { 51604, 0x000085B9 }, /* GL_YCBCR_422_APPLE */ + { 51623, 0x00008757 }, /* GL_YCBCR_MESA */ + { 51637, 0x00000000 }, /* GL_ZERO */ + { 51645, 0x00000D16 }, /* GL_ZOOM_X */ + { 51655, 0x00000D17 }, /* GL_ZOOM_Y */ }; static const unsigned reduced_enums[1555] = @@ -4649,42 +4659,42 @@ static const unsigned reduced_enums[1555] = 831, /* GL_LINES */ 835, /* GL_LINE_LOOP */ 842, /* GL_LINE_STRIP */ - 2140, /* GL_TRIANGLES */ - 2145, /* GL_TRIANGLE_STRIP */ - 2143, /* GL_TRIANGLE_FAN */ - 1511, /* GL_QUADS */ - 1515, /* GL_QUAD_STRIP */ - 1382, /* GL_POLYGON */ + 2145, /* GL_TRIANGLES */ + 2150, /* GL_TRIANGLE_STRIP */ + 2148, /* GL_TRIANGLE_FAN */ + 1512, /* GL_QUADS */ + 1516, /* GL_QUAD_STRIP */ + 1383, /* GL_POLYGON */ 832, /* GL_LINES_ADJACENCY */ 843, /* GL_LINE_STRIP_ADJACENCY */ - 2141, /* GL_TRIANGLES_ADJACENCY */ - 2146, /* GL_TRIANGLE_STRIP_ADJACENCY */ - 1394, /* GL_POLYGON_STIPPLE_BIT */ - 1337, /* GL_PIXEL_MODE_BIT */ + 2146, /* GL_TRIANGLES_ADJACENCY */ + 2151, /* GL_TRIANGLE_STRIP_ADJACENCY */ + 1395, /* GL_POLYGON_STIPPLE_BIT */ + 1338, /* GL_PIXEL_MODE_BIT */ 818, /* GL_LIGHTING_BIT */ 572, /* GL_FOG_BIT */ 8, /* GL_ACCUM */ 854, /* GL_LOAD */ - 1600, /* GL_RETURN */ - 1204, /* GL_MULT */ + 1601, /* GL_RETURN */ + 1205, /* GL_MULT */ 24, /* GL_ADD */ - 1220, /* GL_NEVER */ + 1221, /* GL_NEVER */ 808, /* GL_LESS */ 528, /* GL_EQUAL */ 807, /* GL_LEQUAL */ 695, /* GL_GREATER */ - 1237, /* GL_NOTEQUAL */ + 1238, /* GL_NOTEQUAL */ 694, /* GL_GEQUAL */ 55, /* GL_ALWAYS */ - 1808, /* GL_SRC_COLOR */ - 1270, /* GL_ONE_MINUS_SRC_COLOR */ - 1806, /* GL_SRC_ALPHA */ - 1269, /* GL_ONE_MINUS_SRC_ALPHA */ + 1809, /* GL_SRC_COLOR */ + 1271, /* GL_ONE_MINUS_SRC_COLOR */ + 1807, /* GL_SRC_ALPHA */ + 1270, /* GL_ONE_MINUS_SRC_ALPHA */ 507, /* GL_DST_ALPHA */ - 1267, /* GL_ONE_MINUS_DST_ALPHA */ + 1268, /* GL_ONE_MINUS_DST_ALPHA */ 508, /* GL_DST_COLOR */ - 1268, /* GL_ONE_MINUS_DST_COLOR */ - 1807, /* GL_SRC_ALPHA_SATURATE */ + 1269, /* GL_ONE_MINUS_DST_COLOR */ + 1808, /* GL_SRC_ALPHA_SATURATE */ 671, /* GL_FRONT_LEFT */ 672, /* GL_FRONT_RIGHT */ 77, /* GL_BACK_LEFT */ @@ -4692,7 +4702,7 @@ static const unsigned reduced_enums[1555] = 668, /* GL_FRONT */ 76, /* GL_BACK */ 806, /* GL_LEFT */ - 1690, /* GL_RIGHT */ + 1691, /* GL_RIGHT */ 669, /* GL_FRONT_AND_BACK */ 71, /* GL_AUX0 */ 72, /* GL_AUX1 */ @@ -4701,19 +4711,19 @@ static const unsigned reduced_enums[1555] = 794, /* GL_INVALID_ENUM */ 799, /* GL_INVALID_VALUE */ 798, /* GL_INVALID_OPERATION */ - 1813, /* GL_STACK_OVERFLOW */ - 1814, /* GL_STACK_UNDERFLOW */ - 1295, /* GL_OUT_OF_MEMORY */ + 1814, /* GL_STACK_OVERFLOW */ + 1815, /* GL_STACK_UNDERFLOW */ + 1296, /* GL_OUT_OF_MEMORY */ 795, /* GL_INVALID_FRAMEBUFFER_OPERATION */ 0, /* GL_2D */ 2, /* GL_3D */ 3, /* GL_3D_COLOR */ 4, /* GL_3D_COLOR_TEXTURE */ 6, /* GL_4D_COLOR_TEXTURE */ - 1315, /* GL_PASS_THROUGH_TOKEN */ - 1381, /* GL_POINT_TOKEN */ + 1316, /* GL_PASS_THROUGH_TOKEN */ + 1382, /* GL_POINT_TOKEN */ 845, /* GL_LINE_TOKEN */ - 1395, /* GL_POLYGON_TOKEN */ + 1396, /* GL_POLYGON_TOKEN */ 87, /* GL_BITMAP_TOKEN */ 506, /* GL_DRAW_PIXEL_TOKEN */ 352, /* GL_COPY_PIXEL_TOKEN */ @@ -4723,7 +4733,7 @@ static const unsigned reduced_enums[1555] = 389, /* GL_CW */ 154, /* GL_CCW */ 187, /* GL_COEFF */ - 1292, /* GL_ORDER */ + 1293, /* GL_ORDER */ 443, /* GL_DOMAIN */ 362, /* GL_CURRENT_COLOR */ 365, /* GL_CURRENT_INDEX */ @@ -4735,10 +4745,10 @@ static const unsigned reduced_enums[1555] = 380, /* GL_CURRENT_RASTER_POSITION */ 381, /* GL_CURRENT_RASTER_POSITION_VALID */ 378, /* GL_CURRENT_RASTER_DISTANCE */ - 1373, /* GL_POINT_SMOOTH */ - 1357, /* GL_POINT_SIZE */ - 1372, /* GL_POINT_SIZE_RANGE */ - 1363, /* GL_POINT_SIZE_GRANULARITY */ + 1374, /* GL_POINT_SMOOTH */ + 1358, /* GL_POINT_SIZE */ + 1373, /* GL_POINT_SIZE_RANGE */ + 1364, /* GL_POINT_SIZE_GRANULARITY */ 837, /* GL_LINE_SMOOTH */ 846, /* GL_LINE_WIDTH */ 848, /* GL_LINE_WIDTH_RANGE */ @@ -4750,9 +4760,9 @@ static const unsigned reduced_enums[1555] = 1060, /* GL_MAX_LIST_NESTING */ 850, /* GL_LIST_BASE */ 852, /* GL_LIST_INDEX */ - 1384, /* GL_POLYGON_MODE */ - 1391, /* GL_POLYGON_SMOOTH */ - 1393, /* GL_POLYGON_STIPPLE */ + 1385, /* GL_POLYGON_MODE */ + 1392, /* GL_POLYGON_SMOOTH */ + 1394, /* GL_POLYGON_STIPPLE */ 517, /* GL_EDGE_FLAG */ 355, /* GL_CULL_FACE */ 356, /* GL_CULL_FACE_MODE */ @@ -4761,7 +4771,7 @@ static const unsigned reduced_enums[1555] = 822, /* GL_LIGHT_MODEL_LOCAL_VIEWER */ 823, /* GL_LIGHT_MODEL_TWO_SIDE */ 819, /* GL_LIGHT_MODEL_AMBIENT */ - 1755, /* GL_SHADE_MODEL */ + 1756, /* GL_SHADE_MODEL */ 235, /* GL_COLOR_MATERIAL_FACE */ 236, /* GL_COLOR_MATERIAL_PARAMETER */ 234, /* GL_COLOR_MATERIAL */ @@ -4778,24 +4788,24 @@ static const unsigned reduced_enums[1555] = 413, /* GL_DEPTH_CLEAR_VALUE */ 427, /* GL_DEPTH_FUNC */ 12, /* GL_ACCUM_CLEAR_VALUE */ - 1858, /* GL_STENCIL_TEST */ - 1839, /* GL_STENCIL_CLEAR_VALUE */ - 1841, /* GL_STENCIL_FUNC */ - 1860, /* GL_STENCIL_VALUE_MASK */ - 1840, /* GL_STENCIL_FAIL */ - 1855, /* GL_STENCIL_PASS_DEPTH_FAIL */ - 1856, /* GL_STENCIL_PASS_DEPTH_PASS */ - 1857, /* GL_STENCIL_REF */ - 1861, /* GL_STENCIL_WRITEMASK */ + 1859, /* GL_STENCIL_TEST */ + 1840, /* GL_STENCIL_CLEAR_VALUE */ + 1842, /* GL_STENCIL_FUNC */ + 1861, /* GL_STENCIL_VALUE_MASK */ + 1841, /* GL_STENCIL_FAIL */ + 1856, /* GL_STENCIL_PASS_DEPTH_FAIL */ + 1857, /* GL_STENCIL_PASS_DEPTH_PASS */ + 1858, /* GL_STENCIL_REF */ + 1862, /* GL_STENCIL_WRITEMASK */ 1010, /* GL_MATRIX_MODE */ - 1226, /* GL_NORMALIZE */ - 2272, /* GL_VIEWPORT */ - 1199, /* GL_MODELVIEW_STACK_DEPTH */ - 1485, /* GL_PROJECTION_STACK_DEPTH */ - 2094, /* GL_TEXTURE_STACK_DEPTH */ - 1196, /* GL_MODELVIEW_MATRIX */ - 1483, /* GL_PROJECTION_MATRIX */ - 2074, /* GL_TEXTURE_MATRIX */ + 1227, /* GL_NORMALIZE */ + 2277, /* GL_VIEWPORT */ + 1200, /* GL_MODELVIEW_STACK_DEPTH */ + 1486, /* GL_PROJECTION_STACK_DEPTH */ + 2099, /* GL_TEXTURE_STACK_DEPTH */ + 1197, /* GL_MODELVIEW_MATRIX */ + 1484, /* GL_PROJECTION_MATRIX */ + 2079, /* GL_TEXTURE_MATRIX */ 69, /* GL_ATTRIB_STACK_DEPTH */ 169, /* GL_CLIENT_ATTRIB_STACK_DEPTH */ 51, /* GL_ALPHA_TEST */ @@ -4810,67 +4820,67 @@ static const unsigned reduced_enums[1555] = 233, /* GL_COLOR_LOGIC_OP */ 75, /* GL_AUX_BUFFERS */ 453, /* GL_DRAW_BUFFER */ - 1538, /* GL_READ_BUFFER */ - 1732, /* GL_SCISSOR_BOX */ - 1733, /* GL_SCISSOR_TEST */ + 1539, /* GL_READ_BUFFER */ + 1733, /* GL_SCISSOR_BOX */ + 1734, /* GL_SCISSOR_TEST */ 742, /* GL_INDEX_CLEAR_VALUE */ 747, /* GL_INDEX_WRITEMASK */ 230, /* GL_COLOR_CLEAR_VALUE */ 272, /* GL_COLOR_WRITEMASK */ 744, /* GL_INDEX_MODE */ - 1679, /* GL_RGBA_MODE */ + 1680, /* GL_RGBA_MODE */ 452, /* GL_DOUBLEBUFFER */ - 1862, /* GL_STEREO */ - 1592, /* GL_RENDER_MODE */ - 1316, /* GL_PERSPECTIVE_CORRECTION_HINT */ - 1374, /* GL_POINT_SMOOTH_HINT */ + 1863, /* GL_STEREO */ + 1593, /* GL_RENDER_MODE */ + 1317, /* GL_PERSPECTIVE_CORRECTION_HINT */ + 1375, /* GL_POINT_SMOOTH_HINT */ 838, /* GL_LINE_SMOOTH_HINT */ - 1392, /* GL_POLYGON_SMOOTH_HINT */ + 1393, /* GL_POLYGON_SMOOTH_HINT */ 592, /* GL_FOG_HINT */ - 2054, /* GL_TEXTURE_GEN_S */ - 2056, /* GL_TEXTURE_GEN_T */ - 2053, /* GL_TEXTURE_GEN_R */ - 2052, /* GL_TEXTURE_GEN_Q */ - 1329, /* GL_PIXEL_MAP_I_TO_I */ - 1335, /* GL_PIXEL_MAP_S_TO_S */ - 1331, /* GL_PIXEL_MAP_I_TO_R */ - 1327, /* GL_PIXEL_MAP_I_TO_G */ - 1325, /* GL_PIXEL_MAP_I_TO_B */ - 1323, /* GL_PIXEL_MAP_I_TO_A */ - 1333, /* GL_PIXEL_MAP_R_TO_R */ - 1321, /* GL_PIXEL_MAP_G_TO_G */ - 1319, /* GL_PIXEL_MAP_B_TO_B */ - 1317, /* GL_PIXEL_MAP_A_TO_A */ - 1330, /* GL_PIXEL_MAP_I_TO_I_SIZE */ - 1336, /* GL_PIXEL_MAP_S_TO_S_SIZE */ - 1332, /* GL_PIXEL_MAP_I_TO_R_SIZE */ - 1328, /* GL_PIXEL_MAP_I_TO_G_SIZE */ - 1326, /* GL_PIXEL_MAP_I_TO_B_SIZE */ - 1324, /* GL_PIXEL_MAP_I_TO_A_SIZE */ - 1334, /* GL_PIXEL_MAP_R_TO_R_SIZE */ - 1322, /* GL_PIXEL_MAP_G_TO_G_SIZE */ - 1320, /* GL_PIXEL_MAP_B_TO_B_SIZE */ - 1318, /* GL_PIXEL_MAP_A_TO_A_SIZE */ - 2157, /* GL_UNPACK_SWAP_BYTES */ - 2152, /* GL_UNPACK_LSB_FIRST */ - 2153, /* GL_UNPACK_ROW_LENGTH */ - 2156, /* GL_UNPACK_SKIP_ROWS */ - 2155, /* GL_UNPACK_SKIP_PIXELS */ - 2150, /* GL_UNPACK_ALIGNMENT */ - 1304, /* GL_PACK_SWAP_BYTES */ - 1299, /* GL_PACK_LSB_FIRST */ - 1300, /* GL_PACK_ROW_LENGTH */ - 1303, /* GL_PACK_SKIP_ROWS */ - 1302, /* GL_PACK_SKIP_PIXELS */ - 1296, /* GL_PACK_ALIGNMENT */ + 2059, /* GL_TEXTURE_GEN_S */ + 2061, /* GL_TEXTURE_GEN_T */ + 2058, /* GL_TEXTURE_GEN_R */ + 2057, /* GL_TEXTURE_GEN_Q */ + 1330, /* GL_PIXEL_MAP_I_TO_I */ + 1336, /* GL_PIXEL_MAP_S_TO_S */ + 1332, /* GL_PIXEL_MAP_I_TO_R */ + 1328, /* GL_PIXEL_MAP_I_TO_G */ + 1326, /* GL_PIXEL_MAP_I_TO_B */ + 1324, /* GL_PIXEL_MAP_I_TO_A */ + 1334, /* GL_PIXEL_MAP_R_TO_R */ + 1322, /* GL_PIXEL_MAP_G_TO_G */ + 1320, /* GL_PIXEL_MAP_B_TO_B */ + 1318, /* GL_PIXEL_MAP_A_TO_A */ + 1331, /* GL_PIXEL_MAP_I_TO_I_SIZE */ + 1337, /* GL_PIXEL_MAP_S_TO_S_SIZE */ + 1333, /* GL_PIXEL_MAP_I_TO_R_SIZE */ + 1329, /* GL_PIXEL_MAP_I_TO_G_SIZE */ + 1327, /* GL_PIXEL_MAP_I_TO_B_SIZE */ + 1325, /* GL_PIXEL_MAP_I_TO_A_SIZE */ + 1335, /* GL_PIXEL_MAP_R_TO_R_SIZE */ + 1323, /* GL_PIXEL_MAP_G_TO_G_SIZE */ + 1321, /* GL_PIXEL_MAP_B_TO_B_SIZE */ + 1319, /* GL_PIXEL_MAP_A_TO_A_SIZE */ + 2162, /* GL_UNPACK_SWAP_BYTES */ + 2157, /* GL_UNPACK_LSB_FIRST */ + 2158, /* GL_UNPACK_ROW_LENGTH */ + 2161, /* GL_UNPACK_SKIP_ROWS */ + 2160, /* GL_UNPACK_SKIP_PIXELS */ + 2155, /* GL_UNPACK_ALIGNMENT */ + 1305, /* GL_PACK_SWAP_BYTES */ + 1300, /* GL_PACK_LSB_FIRST */ + 1301, /* GL_PACK_ROW_LENGTH */ + 1304, /* GL_PACK_SKIP_ROWS */ + 1303, /* GL_PACK_SKIP_PIXELS */ + 1297, /* GL_PACK_ALIGNMENT */ 951, /* GL_MAP_COLOR */ 956, /* GL_MAP_STENCIL */ 746, /* GL_INDEX_SHIFT */ 745, /* GL_INDEX_OFFSET */ - 1554, /* GL_RED_SCALE */ - 1550, /* GL_RED_BIAS */ - 2298, /* GL_ZOOM_X */ - 2299, /* GL_ZOOM_Y */ + 1555, /* GL_RED_SCALE */ + 1551, /* GL_RED_BIAS */ + 2303, /* GL_ZOOM_X */ + 2304, /* GL_ZOOM_Y */ 701, /* GL_GREEN_SCALE */ 697, /* GL_GREEN_BIAS */ 115, /* GL_BLUE_SCALE */ @@ -4882,28 +4892,28 @@ static const unsigned reduced_enums[1555] = 1042, /* GL_MAX_EVAL_ORDER */ 1059, /* GL_MAX_LIGHTS */ 1022, /* GL_MAX_CLIP_DISTANCES */ - 1114, /* GL_MAX_TEXTURE_SIZE */ + 1115, /* GL_MAX_TEXTURE_SIZE */ 1066, /* GL_MAX_PIXEL_MAP_TABLE */ 1018, /* GL_MAX_ATTRIB_STACK_DEPTH */ 1062, /* GL_MAX_MODELVIEW_STACK_DEPTH */ 1063, /* GL_MAX_NAME_STACK_DEPTH */ 1094, /* GL_MAX_PROJECTION_STACK_DEPTH */ - 1115, /* GL_MAX_TEXTURE_STACK_DEPTH */ - 1141, /* GL_MAX_VIEWPORT_DIMS */ + 1116, /* GL_MAX_TEXTURE_STACK_DEPTH */ + 1142, /* GL_MAX_VIEWPORT_DIMS */ 1019, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */ - 1872, /* GL_SUBPIXEL_BITS */ + 1873, /* GL_SUBPIXEL_BITS */ 741, /* GL_INDEX_BITS */ - 1551, /* GL_RED_BITS */ + 1552, /* GL_RED_BITS */ 698, /* GL_GREEN_BITS */ 112, /* GL_BLUE_BITS */ 48, /* GL_ALPHA_BITS */ 406, /* GL_DEPTH_BITS */ - 1836, /* GL_STENCIL_BITS */ + 1837, /* GL_STENCIL_BITS */ 14, /* GL_ACCUM_RED_BITS */ 13, /* GL_ACCUM_GREEN_BITS */ 10, /* GL_ACCUM_BLUE_BITS */ 9, /* GL_ACCUM_ALPHA_BITS */ - 1213, /* GL_NAME_STACK_DEPTH */ + 1214, /* GL_NAME_STACK_DEPTH */ 70, /* GL_AUTO_NORMAL */ 897, /* GL_MAP1_COLOR_4 */ 900, /* GL_MAP1_INDEX */ @@ -4927,39 +4937,39 @@ static const unsigned reduced_enums[1555] = 899, /* GL_MAP1_GRID_SEGMENTS */ 925, /* GL_MAP2_GRID_DOMAIN */ 926, /* GL_MAP2_GRID_SEGMENTS */ - 1955, /* GL_TEXTURE_1D */ - 1958, /* GL_TEXTURE_2D */ + 1956, /* GL_TEXTURE_1D */ + 1959, /* GL_TEXTURE_2D */ 541, /* GL_FEEDBACK_BUFFER_POINTER */ 542, /* GL_FEEDBACK_BUFFER_SIZE */ 543, /* GL_FEEDBACK_BUFFER_TYPE */ - 1742, /* GL_SELECTION_BUFFER_POINTER */ - 1743, /* GL_SELECTION_BUFFER_SIZE */ - 2100, /* GL_TEXTURE_WIDTH */ - 2060, /* GL_TEXTURE_HEIGHT */ - 2004, /* GL_TEXTURE_COMPONENTS */ - 1985, /* GL_TEXTURE_BORDER_COLOR */ - 1984, /* GL_TEXTURE_BORDER */ + 1743, /* GL_SELECTION_BUFFER_POINTER */ + 1744, /* GL_SELECTION_BUFFER_SIZE */ + 2105, /* GL_TEXTURE_WIDTH */ + 2065, /* GL_TEXTURE_HEIGHT */ + 2009, /* GL_TEXTURE_COMPONENTS */ + 1987, /* GL_TEXTURE_BORDER_COLOR */ + 1986, /* GL_TEXTURE_BORDER */ 444, /* GL_DONT_CARE */ 539, /* GL_FASTEST */ - 1221, /* GL_NICEST */ + 1222, /* GL_NICEST */ 56, /* GL_AMBIENT */ 441, /* GL_DIFFUSE */ - 1795, /* GL_SPECULAR */ - 1396, /* GL_POSITION */ - 1798, /* GL_SPOT_DIRECTION */ - 1799, /* GL_SPOT_EXPONENT */ - 1797, /* GL_SPOT_CUTOFF */ + 1796, /* GL_SPECULAR */ + 1397, /* GL_POSITION */ + 1799, /* GL_SPOT_DIRECTION */ + 1800, /* GL_SPOT_EXPONENT */ + 1798, /* GL_SPOT_CUTOFF */ 320, /* GL_CONSTANT_ATTENUATION */ 826, /* GL_LINEAR_ATTENUATION */ - 1510, /* GL_QUADRATIC_ATTENUATION */ + 1511, /* GL_QUADRATIC_ATTENUATION */ 287, /* GL_COMPILE */ 288, /* GL_COMPILE_AND_EXECUTE */ 149, /* GL_BYTE */ - 2159, /* GL_UNSIGNED_BYTE */ - 1760, /* GL_SHORT */ - 2198, /* GL_UNSIGNED_SHORT */ + 2164, /* GL_UNSIGNED_BYTE */ + 1761, /* GL_SHORT */ + 2203, /* GL_UNSIGNED_SHORT */ 749, /* GL_INT */ - 2162, /* GL_UNSIGNED_INT */ + 2167, /* GL_UNSIGNED_INT */ 552, /* GL_FLOAT */ 1, /* GL_2_BYTES */ 5, /* GL_3_BYTES */ @@ -4972,100 +4982,100 @@ static const unsigned reduced_enums[1555] = 60, /* GL_AND_REVERSE */ 350, /* GL_COPY */ 59, /* GL_AND_INVERTED */ - 1224, /* GL_NOOP */ - 2294, /* GL_XOR */ - 1291, /* GL_OR */ - 1225, /* GL_NOR */ + 1225, /* GL_NOOP */ + 2299, /* GL_XOR */ + 1292, /* GL_OR */ + 1226, /* GL_NOR */ 529, /* GL_EQUIV */ 802, /* GL_INVERT */ - 1294, /* GL_OR_REVERSE */ + 1295, /* GL_OR_REVERSE */ 351, /* GL_COPY_INVERTED */ - 1293, /* GL_OR_INVERTED */ - 1214, /* GL_NAND */ - 1749, /* GL_SET */ + 1294, /* GL_OR_INVERTED */ + 1215, /* GL_NAND */ + 1750, /* GL_SET */ 526, /* GL_EMISSION */ - 1759, /* GL_SHININESS */ + 1760, /* GL_SHININESS */ 57, /* GL_AMBIENT_AND_DIFFUSE */ 232, /* GL_COLOR_INDEXES */ - 1163, /* GL_MODELVIEW */ - 1482, /* GL_PROJECTION */ - 1890, /* GL_TEXTURE */ + 1164, /* GL_MODELVIEW */ + 1483, /* GL_PROJECTION */ + 1891, /* GL_TEXTURE */ 188, /* GL_COLOR */ 398, /* GL_DEPTH */ - 1821, /* GL_STENCIL */ + 1822, /* GL_STENCIL */ 231, /* GL_COLOR_INDEX */ - 1842, /* GL_STENCIL_INDEX */ + 1843, /* GL_STENCIL_INDEX */ 414, /* GL_DEPTH_COMPONENT */ - 1547, /* GL_RED */ + 1548, /* GL_RED */ 696, /* GL_GREEN */ 110, /* GL_BLUE */ 32, /* GL_ALPHA */ - 1603, /* GL_RGB */ - 1643, /* GL_RGBA */ + 1604, /* GL_RGB */ + 1644, /* GL_RGBA */ 860, /* GL_LUMINANCE */ 887, /* GL_LUMINANCE_ALPHA */ 86, /* GL_BITMAP */ - 1346, /* GL_POINT */ + 1347, /* GL_POINT */ 824, /* GL_LINE */ 544, /* GL_FILL */ - 1561, /* GL_RENDER */ + 1562, /* GL_RENDER */ 540, /* GL_FEEDBACK */ - 1741, /* GL_SELECT */ + 1742, /* GL_SELECT */ 551, /* GL_FLAT */ - 1770, /* GL_SMOOTH */ + 1771, /* GL_SMOOTH */ 803, /* GL_KEEP */ - 1594, /* GL_REPLACE */ + 1595, /* GL_REPLACE */ 731, /* GL_INCR */ 394, /* GL_DECR */ - 2215, /* GL_VENDOR */ - 1591, /* GL_RENDERER */ - 2216, /* GL_VERSION */ + 2220, /* GL_VENDOR */ + 1592, /* GL_RENDERER */ + 2221, /* GL_VERSION */ 533, /* GL_EXTENSIONS */ - 1691, /* GL_S */ - 1881, /* GL_T */ - 1530, /* GL_R */ - 1509, /* GL_Q */ - 1200, /* GL_MODULATE */ + 1692, /* GL_S */ + 1882, /* GL_T */ + 1531, /* GL_R */ + 1510, /* GL_Q */ + 1201, /* GL_MODULATE */ 393, /* GL_DECAL */ - 2047, /* GL_TEXTURE_ENV_MODE */ - 2046, /* GL_TEXTURE_ENV_COLOR */ - 2045, /* GL_TEXTURE_ENV */ + 2052, /* GL_TEXTURE_ENV_MODE */ + 2051, /* GL_TEXTURE_ENV_COLOR */ + 2050, /* GL_TEXTURE_ENV */ 534, /* GL_EYE_LINEAR */ - 1252, /* GL_OBJECT_LINEAR */ - 1796, /* GL_SPHERE_MAP */ - 2050, /* GL_TEXTURE_GEN_MODE */ - 1254, /* GL_OBJECT_PLANE */ + 1253, /* GL_OBJECT_LINEAR */ + 1797, /* GL_SPHERE_MAP */ + 2055, /* GL_TEXTURE_GEN_MODE */ + 1255, /* GL_OBJECT_PLANE */ 535, /* GL_EYE_PLANE */ - 1215, /* GL_NEAREST */ + 1216, /* GL_NEAREST */ 825, /* GL_LINEAR */ - 1219, /* GL_NEAREST_MIPMAP_NEAREST */ + 1220, /* GL_NEAREST_MIPMAP_NEAREST */ 830, /* GL_LINEAR_MIPMAP_NEAREST */ - 1218, /* GL_NEAREST_MIPMAP_LINEAR */ + 1219, /* GL_NEAREST_MIPMAP_LINEAR */ 829, /* GL_LINEAR_MIPMAP_LINEAR */ - 2073, /* GL_TEXTURE_MAG_FILTER */ - 2082, /* GL_TEXTURE_MIN_FILTER */ - 2103, /* GL_TEXTURE_WRAP_S */ - 2104, /* GL_TEXTURE_WRAP_T */ + 2078, /* GL_TEXTURE_MAG_FILTER */ + 2087, /* GL_TEXTURE_MIN_FILTER */ + 2108, /* GL_TEXTURE_WRAP_S */ + 2109, /* GL_TEXTURE_WRAP_T */ 155, /* GL_CLAMP */ - 1593, /* GL_REPEAT */ - 1390, /* GL_POLYGON_OFFSET_UNITS */ - 1389, /* GL_POLYGON_OFFSET_POINT */ - 1388, /* GL_POLYGON_OFFSET_LINE */ - 1533, /* GL_R3_G3_B2 */ - 2212, /* GL_V2F */ - 2213, /* GL_V3F */ + 1594, /* GL_REPEAT */ + 1391, /* GL_POLYGON_OFFSET_UNITS */ + 1390, /* GL_POLYGON_OFFSET_POINT */ + 1389, /* GL_POLYGON_OFFSET_LINE */ + 1534, /* GL_R3_G3_B2 */ + 2217, /* GL_V2F */ + 2218, /* GL_V3F */ 152, /* GL_C4UB_V2F */ 153, /* GL_C4UB_V3F */ 150, /* GL_C3F_V3F */ - 1212, /* GL_N3F_V3F */ + 1213, /* GL_N3F_V3F */ 151, /* GL_C4F_N3F_V3F */ - 1886, /* GL_T2F_V3F */ - 1888, /* GL_T4F_V4F */ - 1884, /* GL_T2F_C4UB_V3F */ - 1882, /* GL_T2F_C3F_V3F */ - 1885, /* GL_T2F_N3F_V3F */ - 1883, /* GL_T2F_C4F_N3F_V3F */ - 1887, /* GL_T4F_C4F_N3F_V4F */ + 1887, /* GL_T2F_V3F */ + 1889, /* GL_T4F_V4F */ + 1885, /* GL_T2F_C4UB_V3F */ + 1883, /* GL_T2F_C3F_V3F */ + 1886, /* GL_T2F_N3F_V3F */ + 1884, /* GL_T2F_C4F_N3F_V3F */ + 1888, /* GL_T4F_C4F_N3F_V4F */ 172, /* GL_CLIP_DISTANCE0 */ 173, /* GL_CLIP_DISTANCE1 */ 174, /* GL_CLIP_DISTANCE2 */ @@ -5084,38 +5094,38 @@ static const unsigned reduced_enums[1555] = 816, /* GL_LIGHT7 */ 706, /* GL_HINT_BIT */ 322, /* GL_CONSTANT_COLOR */ - 1265, /* GL_ONE_MINUS_CONSTANT_COLOR */ + 1266, /* GL_ONE_MINUS_CONSTANT_COLOR */ 317, /* GL_CONSTANT_ALPHA */ - 1263, /* GL_ONE_MINUS_CONSTANT_ALPHA */ + 1264, /* GL_ONE_MINUS_CONSTANT_ALPHA */ 89, /* GL_BLEND_COLOR */ 673, /* GL_FUNC_ADD */ - 1144, /* GL_MIN */ + 1145, /* GL_MIN */ 1013, /* GL_MAX */ 96, /* GL_BLEND_EQUATION */ 679, /* GL_FUNC_SUBTRACT */ 676, /* GL_FUNC_REVERSE_SUBTRACT */ 330, /* GL_CONVOLUTION_1D */ 331, /* GL_CONVOLUTION_2D */ - 1744, /* GL_SEPARABLE_2D */ + 1745, /* GL_SEPARABLE_2D */ 334, /* GL_CONVOLUTION_BORDER_MODE */ 338, /* GL_CONVOLUTION_FILTER_SCALE */ 336, /* GL_CONVOLUTION_FILTER_BIAS */ - 1548, /* GL_REDUCE */ + 1549, /* GL_REDUCE */ 340, /* GL_CONVOLUTION_FORMAT */ 344, /* GL_CONVOLUTION_WIDTH */ 342, /* GL_CONVOLUTION_HEIGHT */ 1032, /* GL_MAX_CONVOLUTION_WIDTH */ 1030, /* GL_MAX_CONVOLUTION_HEIGHT */ - 1429, /* GL_POST_CONVOLUTION_RED_SCALE */ - 1425, /* GL_POST_CONVOLUTION_GREEN_SCALE */ - 1420, /* GL_POST_CONVOLUTION_BLUE_SCALE */ - 1416, /* GL_POST_CONVOLUTION_ALPHA_SCALE */ - 1427, /* GL_POST_CONVOLUTION_RED_BIAS */ - 1423, /* GL_POST_CONVOLUTION_GREEN_BIAS */ - 1418, /* GL_POST_CONVOLUTION_BLUE_BIAS */ - 1414, /* GL_POST_CONVOLUTION_ALPHA_BIAS */ + 1430, /* GL_POST_CONVOLUTION_RED_SCALE */ + 1426, /* GL_POST_CONVOLUTION_GREEN_SCALE */ + 1421, /* GL_POST_CONVOLUTION_BLUE_SCALE */ + 1417, /* GL_POST_CONVOLUTION_ALPHA_SCALE */ + 1428, /* GL_POST_CONVOLUTION_RED_BIAS */ + 1424, /* GL_POST_CONVOLUTION_GREEN_BIAS */ + 1419, /* GL_POST_CONVOLUTION_BLUE_BIAS */ + 1415, /* GL_POST_CONVOLUTION_ALPHA_BIAS */ 707, /* GL_HISTOGRAM */ - 1489, /* GL_PROXY_HISTOGRAM */ + 1490, /* GL_PROXY_HISTOGRAM */ 723, /* GL_HISTOGRAM_WIDTH */ 713, /* GL_HISTOGRAM_FORMAT */ 719, /* GL_HISTOGRAM_RED_SIZE */ @@ -5124,19 +5134,19 @@ static const unsigned reduced_enums[1555] = 708, /* GL_HISTOGRAM_ALPHA_SIZE */ 717, /* GL_HISTOGRAM_LUMINANCE_SIZE */ 721, /* GL_HISTOGRAM_SINK */ - 1145, /* GL_MINMAX */ - 1147, /* GL_MINMAX_FORMAT */ - 1149, /* GL_MINMAX_SINK */ - 1889, /* GL_TABLE_TOO_LARGE_EXT */ - 2161, /* GL_UNSIGNED_BYTE_3_3_2 */ - 2201, /* GL_UNSIGNED_SHORT_4_4_4_4 */ - 2204, /* GL_UNSIGNED_SHORT_5_5_5_1 */ - 2173, /* GL_UNSIGNED_INT_8_8_8_8 */ - 2164, /* GL_UNSIGNED_INT_10_10_10_2 */ - 1387, /* GL_POLYGON_OFFSET_FILL */ - 1386, /* GL_POLYGON_OFFSET_FACTOR */ - 1385, /* GL_POLYGON_OFFSET_BIAS */ - 1597, /* GL_RESCALE_NORMAL */ + 1146, /* GL_MINMAX */ + 1148, /* GL_MINMAX_FORMAT */ + 1150, /* GL_MINMAX_SINK */ + 1890, /* GL_TABLE_TOO_LARGE_EXT */ + 2166, /* GL_UNSIGNED_BYTE_3_3_2 */ + 2206, /* GL_UNSIGNED_SHORT_4_4_4_4 */ + 2209, /* GL_UNSIGNED_SHORT_5_5_5_1 */ + 2178, /* GL_UNSIGNED_INT_8_8_8_8 */ + 2169, /* GL_UNSIGNED_INT_10_10_10_2 */ + 1388, /* GL_POLYGON_OFFSET_FILL */ + 1387, /* GL_POLYGON_OFFSET_FACTOR */ + 1386, /* GL_POLYGON_OFFSET_BIAS */ + 1598, /* GL_RESCALE_NORMAL */ 41, /* GL_ALPHA4 */ 43, /* GL_ALPHA8 */ 33, /* GL_ALPHA12 */ @@ -5156,102 +5166,102 @@ static const unsigned reduced_enums[1555] = 761, /* GL_INTENSITY8 */ 751, /* GL_INTENSITY12 */ 753, /* GL_INTENSITY16 */ - 1618, /* GL_RGB2_EXT */ - 1624, /* GL_RGB4 */ - 1627, /* GL_RGB5 */ - 1634, /* GL_RGB8 */ - 1604, /* GL_RGB10 */ - 1608, /* GL_RGB12 */ - 1610, /* GL_RGB16 */ - 1654, /* GL_RGBA2 */ - 1661, /* GL_RGBA4 */ - 1630, /* GL_RGB5_A1 */ - 1666, /* GL_RGBA8 */ - 1605, /* GL_RGB10_A2 */ - 1644, /* GL_RGBA12 */ - 1646, /* GL_RGBA16 */ - 2090, /* GL_TEXTURE_RED_SIZE */ - 2058, /* GL_TEXTURE_GREEN_SIZE */ - 1982, /* GL_TEXTURE_BLUE_SIZE */ - 1963, /* GL_TEXTURE_ALPHA_SIZE */ - 2071, /* GL_TEXTURE_LUMINANCE_SIZE */ - 2062, /* GL_TEXTURE_INTENSITY_SIZE */ - 1595, /* GL_REPLACE_EXT */ - 1493, /* GL_PROXY_TEXTURE_1D */ - 1497, /* GL_PROXY_TEXTURE_2D */ - 2098, /* GL_TEXTURE_TOO_LARGE_EXT */ - 2084, /* GL_TEXTURE_PRIORITY */ - 2092, /* GL_TEXTURE_RESIDENT */ - 1966, /* GL_TEXTURE_BINDING_1D */ - 1969, /* GL_TEXTURE_BINDING_2D */ - 1972, /* GL_TEXTURE_BINDING_3D */ - 1301, /* GL_PACK_SKIP_IMAGES */ - 1297, /* GL_PACK_IMAGE_HEIGHT */ - 2154, /* GL_UNPACK_SKIP_IMAGES */ - 2151, /* GL_UNPACK_IMAGE_HEIGHT */ - 1961, /* GL_TEXTURE_3D */ - 1501, /* GL_PROXY_TEXTURE_3D */ - 2042, /* GL_TEXTURE_DEPTH */ - 2101, /* GL_TEXTURE_WRAP_R */ + 1619, /* GL_RGB2_EXT */ + 1625, /* GL_RGB4 */ + 1628, /* GL_RGB5 */ + 1635, /* GL_RGB8 */ + 1605, /* GL_RGB10 */ + 1609, /* GL_RGB12 */ + 1611, /* GL_RGB16 */ + 1655, /* GL_RGBA2 */ + 1662, /* GL_RGBA4 */ + 1631, /* GL_RGB5_A1 */ + 1667, /* GL_RGBA8 */ + 1606, /* GL_RGB10_A2 */ + 1645, /* GL_RGBA12 */ + 1647, /* GL_RGBA16 */ + 2095, /* GL_TEXTURE_RED_SIZE */ + 2063, /* GL_TEXTURE_GREEN_SIZE */ + 1984, /* GL_TEXTURE_BLUE_SIZE */ + 1964, /* GL_TEXTURE_ALPHA_SIZE */ + 2076, /* GL_TEXTURE_LUMINANCE_SIZE */ + 2067, /* GL_TEXTURE_INTENSITY_SIZE */ + 1596, /* GL_REPLACE_EXT */ + 1494, /* GL_PROXY_TEXTURE_1D */ + 1498, /* GL_PROXY_TEXTURE_2D */ + 2103, /* GL_TEXTURE_TOO_LARGE_EXT */ + 2089, /* GL_TEXTURE_PRIORITY */ + 2097, /* GL_TEXTURE_RESIDENT */ + 1967, /* GL_TEXTURE_BINDING_1D */ + 1970, /* GL_TEXTURE_BINDING_2D */ + 1973, /* GL_TEXTURE_BINDING_3D */ + 1302, /* GL_PACK_SKIP_IMAGES */ + 1298, /* GL_PACK_IMAGE_HEIGHT */ + 2159, /* GL_UNPACK_SKIP_IMAGES */ + 2156, /* GL_UNPACK_IMAGE_HEIGHT */ + 1962, /* GL_TEXTURE_3D */ + 1502, /* GL_PROXY_TEXTURE_3D */ + 2047, /* GL_TEXTURE_DEPTH */ + 2106, /* GL_TEXTURE_WRAP_R */ 1014, /* GL_MAX_3D_TEXTURE_SIZE */ - 2217, /* GL_VERTEX_ARRAY */ - 1227, /* GL_NORMAL_ARRAY */ + 2222, /* GL_VERTEX_ARRAY */ + 1228, /* GL_NORMAL_ARRAY */ 189, /* GL_COLOR_ARRAY */ 735, /* GL_INDEX_ARRAY */ - 2012, /* GL_TEXTURE_COORD_ARRAY */ + 2017, /* GL_TEXTURE_COORD_ARRAY */ 518, /* GL_EDGE_FLAG_ARRAY */ - 2223, /* GL_VERTEX_ARRAY_SIZE */ - 2225, /* GL_VERTEX_ARRAY_TYPE */ - 2224, /* GL_VERTEX_ARRAY_STRIDE */ - 1232, /* GL_NORMAL_ARRAY_TYPE */ - 1231, /* GL_NORMAL_ARRAY_STRIDE */ + 2228, /* GL_VERTEX_ARRAY_SIZE */ + 2230, /* GL_VERTEX_ARRAY_TYPE */ + 2229, /* GL_VERTEX_ARRAY_STRIDE */ + 1233, /* GL_NORMAL_ARRAY_TYPE */ + 1232, /* GL_NORMAL_ARRAY_STRIDE */ 193, /* GL_COLOR_ARRAY_SIZE */ 195, /* GL_COLOR_ARRAY_TYPE */ 194, /* GL_COLOR_ARRAY_STRIDE */ 740, /* GL_INDEX_ARRAY_TYPE */ 739, /* GL_INDEX_ARRAY_STRIDE */ - 2016, /* GL_TEXTURE_COORD_ARRAY_SIZE */ - 2018, /* GL_TEXTURE_COORD_ARRAY_TYPE */ - 2017, /* GL_TEXTURE_COORD_ARRAY_STRIDE */ + 2021, /* GL_TEXTURE_COORD_ARRAY_SIZE */ + 2023, /* GL_TEXTURE_COORD_ARRAY_TYPE */ + 2022, /* GL_TEXTURE_COORD_ARRAY_STRIDE */ 522, /* GL_EDGE_FLAG_ARRAY_STRIDE */ - 2222, /* GL_VERTEX_ARRAY_POINTER */ - 1230, /* GL_NORMAL_ARRAY_POINTER */ + 2227, /* GL_VERTEX_ARRAY_POINTER */ + 1231, /* GL_NORMAL_ARRAY_POINTER */ 192, /* GL_COLOR_ARRAY_POINTER */ 738, /* GL_INDEX_ARRAY_POINTER */ - 2015, /* GL_TEXTURE_COORD_ARRAY_POINTER */ + 2020, /* GL_TEXTURE_COORD_ARRAY_POINTER */ 521, /* GL_EDGE_FLAG_ARRAY_POINTER */ - 1205, /* GL_MULTISAMPLE */ - 1718, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ - 1720, /* GL_SAMPLE_ALPHA_TO_ONE */ - 1725, /* GL_SAMPLE_COVERAGE */ - 1722, /* GL_SAMPLE_BUFFERS */ - 1713, /* GL_SAMPLES */ - 1729, /* GL_SAMPLE_COVERAGE_VALUE */ - 1727, /* GL_SAMPLE_COVERAGE_INVERT */ + 1206, /* GL_MULTISAMPLE */ + 1719, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ + 1721, /* GL_SAMPLE_ALPHA_TO_ONE */ + 1726, /* GL_SAMPLE_COVERAGE */ + 1723, /* GL_SAMPLE_BUFFERS */ + 1714, /* GL_SAMPLES */ + 1730, /* GL_SAMPLE_COVERAGE_VALUE */ + 1728, /* GL_SAMPLE_COVERAGE_INVERT */ 237, /* GL_COLOR_MATRIX */ 239, /* GL_COLOR_MATRIX_STACK_DEPTH */ 1026, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */ - 1412, /* GL_POST_COLOR_MATRIX_RED_SCALE */ - 1408, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */ - 1403, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */ - 1399, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */ - 1410, /* GL_POST_COLOR_MATRIX_RED_BIAS */ - 1406, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */ - 1401, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */ - 1397, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */ - 1995, /* GL_TEXTURE_COLOR_TABLE_SGI */ - 1502, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */ - 1997, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */ + 1413, /* GL_POST_COLOR_MATRIX_RED_SCALE */ + 1409, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */ + 1404, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */ + 1400, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */ + 1411, /* GL_POST_COLOR_MATRIX_RED_BIAS */ + 1407, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */ + 1402, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */ + 1398, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */ + 2000, /* GL_TEXTURE_COLOR_TABLE_SGI */ + 1503, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */ + 2002, /* 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 */ - 1422, /* GL_POST_CONVOLUTION_COLOR_TABLE */ - 1405, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */ - 1488, /* GL_PROXY_COLOR_TABLE */ - 1492, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */ - 1491, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */ + 1423, /* GL_POST_CONVOLUTION_COLOR_TABLE */ + 1406, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */ + 1489, /* GL_PROXY_COLOR_TABLE */ + 1493, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */ + 1492, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */ 267, /* GL_COLOR_TABLE_SCALE */ 247, /* GL_COLOR_TABLE_BIAS */ 252, /* GL_COLOR_TABLE_FORMAT */ @@ -5266,60 +5276,60 @@ static const unsigned reduced_enums[1555] = 80, /* GL_BGRA */ 1041, /* GL_MAX_ELEMENTS_VERTICES */ 1040, /* GL_MAX_ELEMENTS_INDICES */ - 2061, /* GL_TEXTURE_INDEX_SIZE_EXT */ + 2066, /* GL_TEXTURE_INDEX_SIZE_EXT */ 186, /* GL_CLIP_VOLUME_CLIPPING_HINT_EXT */ - 1368, /* GL_POINT_SIZE_MIN */ - 1364, /* GL_POINT_SIZE_MAX */ - 1353, /* GL_POINT_FADE_THRESHOLD_SIZE */ - 1349, /* GL_POINT_DISTANCE_ATTENUATION */ + 1369, /* GL_POINT_SIZE_MIN */ + 1365, /* GL_POINT_SIZE_MAX */ + 1354, /* GL_POINT_FADE_THRESHOLD_SIZE */ + 1350, /* GL_POINT_DISTANCE_ATTENUATION */ 159, /* GL_CLAMP_TO_BORDER */ 162, /* GL_CLAMP_TO_EDGE */ - 2083, /* GL_TEXTURE_MIN_LOD */ - 2081, /* GL_TEXTURE_MAX_LOD */ - 1965, /* GL_TEXTURE_BASE_LEVEL */ - 2080, /* GL_TEXTURE_MAX_LEVEL */ + 2088, /* GL_TEXTURE_MIN_LOD */ + 2086, /* GL_TEXTURE_MAX_LOD */ + 1966, /* GL_TEXTURE_BASE_LEVEL */ + 2085, /* GL_TEXTURE_MAX_LEVEL */ 726, /* GL_IGNORE_BORDER_HP */ 321, /* GL_CONSTANT_BORDER_HP */ - 1596, /* GL_REPLICATE_BORDER_HP */ + 1597, /* GL_REPLICATE_BORDER_HP */ 332, /* GL_CONVOLUTION_BORDER_COLOR */ - 1260, /* GL_OCCLUSION_TEST_HP */ - 1261, /* GL_OCCLUSION_TEST_RESULT_HP */ + 1261, /* GL_OCCLUSION_TEST_HP */ + 1262, /* GL_OCCLUSION_TEST_RESULT_HP */ 827, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */ - 1989, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ - 1991, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ - 1993, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ - 1994, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ - 1992, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ - 1990, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ + 1994, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ + 1996, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ + 1998, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ + 1999, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ + 1997, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ + 1995, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ 1020, /* GL_MAX_CLIPMAP_DEPTH_SGIX */ 1021, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */ - 1432, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */ - 1434, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */ - 1431, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */ - 1433, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */ - 2069, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ - 2070, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ - 2068, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ + 1433, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */ + 1435, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */ + 1432, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */ + 1434, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */ + 2074, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ + 2075, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ + 2073, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ 682, /* GL_GENERATE_MIPMAP */ 683, /* GL_GENERATE_MIPMAP_HINT */ 595, /* GL_FOG_OFFSET_SGIX */ 596, /* GL_FOG_OFFSET_VALUE_SGIX */ - 2003, /* GL_TEXTURE_COMPARE_SGIX */ - 2002, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ - 2065, /* GL_TEXTURE_LEQUAL_R_SGIX */ - 2057, /* GL_TEXTURE_GEQUAL_R_SGIX */ + 2008, /* GL_TEXTURE_COMPARE_SGIX */ + 2007, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ + 2070, /* GL_TEXTURE_LEQUAL_R_SGIX */ + 2062, /* GL_TEXTURE_GEQUAL_R_SGIX */ 415, /* GL_DEPTH_COMPONENT16 */ 419, /* GL_DEPTH_COMPONENT24 */ 423, /* GL_DEPTH_COMPONENT32 */ 357, /* GL_CULL_VERTEX_EXT */ 359, /* GL_CULL_VERTEX_OBJECT_POSITION_EXT */ 358, /* GL_CULL_VERTEX_EYE_POSITION_EXT */ - 2290, /* GL_WRAP_BORDER_SUN */ - 1996, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ + 2295, /* GL_WRAP_BORDER_SUN */ + 2001, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ 820, /* GL_LIGHT_MODEL_COLOR_CONTROL */ - 1763, /* GL_SINGLE_COLOR */ - 1747, /* GL_SEPARATE_SPECULAR_COLOR */ - 1758, /* GL_SHARED_TEXTURE_PALETTE_EXT */ + 1764, /* GL_SINGLE_COLOR */ + 1748, /* GL_SEPARATE_SPECULAR_COLOR */ + 1759, /* GL_SHARED_TEXTURE_PALETTE_EXT */ 607, /* GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING */ 608, /* GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE */ 619, /* GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE */ @@ -5332,37 +5342,37 @@ static const unsigned reduced_enums[1555] = 664, /* GL_FRAMEBUFFER_UNDEFINED */ 431, /* GL_DEPTH_STENCIL_ATTACHMENT */ 896, /* GL_MAJOR_VERSION */ - 1151, /* GL_MINOR_VERSION */ - 1241, /* GL_NUM_EXTENSIONS */ + 1152, /* GL_MINOR_VERSION */ + 1242, /* GL_NUM_EXTENSIONS */ 327, /* GL_CONTEXT_FLAGS */ 734, /* GL_INDEX */ 409, /* GL_DEPTH_BUFFER */ - 1837, /* GL_STENCIL_BUFFER */ + 1838, /* GL_STENCIL_BUFFER */ 298, /* GL_COMPRESSED_RED */ 299, /* GL_COMPRESSED_RG */ - 2160, /* GL_UNSIGNED_BYTE_2_3_3_REV */ - 2205, /* GL_UNSIGNED_SHORT_5_6_5 */ - 2206, /* GL_UNSIGNED_SHORT_5_6_5_REV */ - 2202, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ - 2199, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ - 2174, /* GL_UNSIGNED_INT_8_8_8_8_REV */ - 2170, /* GL_UNSIGNED_INT_2_10_10_10_REV */ - 2078, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ - 2079, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ - 2077, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ - 1155, /* GL_MIRRORED_REPEAT */ - 1684, /* GL_RGB_S3TC */ - 1626, /* GL_RGB4_S3TC */ - 1680, /* GL_RGBA_S3TC */ - 1665, /* GL_RGBA4_S3TC */ - 1674, /* GL_RGBA_DXT5_S3TC */ - 1662, /* GL_RGBA4_DXT5_S3TC */ + 2165, /* GL_UNSIGNED_BYTE_2_3_3_REV */ + 2210, /* GL_UNSIGNED_SHORT_5_6_5 */ + 2211, /* GL_UNSIGNED_SHORT_5_6_5_REV */ + 2207, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ + 2204, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ + 2179, /* GL_UNSIGNED_INT_8_8_8_8_REV */ + 2175, /* GL_UNSIGNED_INT_2_10_10_10_REV */ + 2083, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ + 2084, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ + 2082, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ + 1156, /* GL_MIRRORED_REPEAT */ + 1685, /* GL_RGB_S3TC */ + 1627, /* GL_RGB4_S3TC */ + 1681, /* GL_RGBA_S3TC */ + 1666, /* GL_RGBA4_S3TC */ + 1675, /* GL_RGBA_DXT5_S3TC */ + 1663, /* 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 */ - 1217, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */ - 1216, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */ + 1218, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */ + 1217, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */ 828, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */ 582, /* GL_FOG_COORDINATE_SOURCE */ 574, /* GL_FOG_COORD */ @@ -5374,54 +5384,54 @@ static const unsigned reduced_enums[1555] = 576, /* GL_FOG_COORDINATE_ARRAY */ 241, /* GL_COLOR_SUM */ 384, /* GL_CURRENT_SECONDARY_COLOR */ - 1738, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ - 1740, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ - 1739, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ - 1737, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ - 1734, /* GL_SECONDARY_COLOR_ARRAY */ + 1739, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ + 1741, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ + 1740, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ + 1738, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ + 1735, /* GL_SECONDARY_COLOR_ARRAY */ 382, /* GL_CURRENT_RASTER_SECONDARY_COLOR */ 29, /* GL_ALIASED_POINT_SIZE_RANGE */ 28, /* GL_ALIASED_LINE_WIDTH_RANGE */ - 1891, /* GL_TEXTURE0 */ - 1893, /* GL_TEXTURE1 */ - 1915, /* GL_TEXTURE2 */ - 1937, /* GL_TEXTURE3 */ - 1943, /* GL_TEXTURE4 */ - 1945, /* GL_TEXTURE5 */ - 1947, /* GL_TEXTURE6 */ - 1949, /* GL_TEXTURE7 */ - 1951, /* GL_TEXTURE8 */ - 1953, /* GL_TEXTURE9 */ - 1894, /* GL_TEXTURE10 */ - 1896, /* GL_TEXTURE11 */ - 1898, /* GL_TEXTURE12 */ - 1900, /* GL_TEXTURE13 */ - 1902, /* GL_TEXTURE14 */ - 1904, /* GL_TEXTURE15 */ - 1906, /* GL_TEXTURE16 */ - 1908, /* GL_TEXTURE17 */ - 1910, /* GL_TEXTURE18 */ - 1912, /* GL_TEXTURE19 */ - 1916, /* GL_TEXTURE20 */ - 1918, /* GL_TEXTURE21 */ - 1920, /* GL_TEXTURE22 */ - 1922, /* GL_TEXTURE23 */ - 1924, /* GL_TEXTURE24 */ - 1926, /* GL_TEXTURE25 */ - 1928, /* GL_TEXTURE26 */ - 1930, /* GL_TEXTURE27 */ - 1932, /* GL_TEXTURE28 */ - 1934, /* GL_TEXTURE29 */ - 1938, /* GL_TEXTURE30 */ - 1940, /* GL_TEXTURE31 */ + 1892, /* GL_TEXTURE0 */ + 1894, /* GL_TEXTURE1 */ + 1916, /* GL_TEXTURE2 */ + 1938, /* GL_TEXTURE3 */ + 1944, /* GL_TEXTURE4 */ + 1946, /* GL_TEXTURE5 */ + 1948, /* GL_TEXTURE6 */ + 1950, /* GL_TEXTURE7 */ + 1952, /* GL_TEXTURE8 */ + 1954, /* GL_TEXTURE9 */ + 1895, /* GL_TEXTURE10 */ + 1897, /* GL_TEXTURE11 */ + 1899, /* GL_TEXTURE12 */ + 1901, /* GL_TEXTURE13 */ + 1903, /* GL_TEXTURE14 */ + 1905, /* GL_TEXTURE15 */ + 1907, /* GL_TEXTURE16 */ + 1909, /* GL_TEXTURE17 */ + 1911, /* GL_TEXTURE18 */ + 1913, /* GL_TEXTURE19 */ + 1917, /* GL_TEXTURE20 */ + 1919, /* GL_TEXTURE21 */ + 1921, /* GL_TEXTURE22 */ + 1923, /* GL_TEXTURE23 */ + 1925, /* GL_TEXTURE24 */ + 1927, /* GL_TEXTURE25 */ + 1929, /* GL_TEXTURE26 */ + 1931, /* GL_TEXTURE27 */ + 1933, /* GL_TEXTURE28 */ + 1935, /* GL_TEXTURE29 */ + 1939, /* GL_TEXTURE30 */ + 1941, /* GL_TEXTURE31 */ 19, /* GL_ACTIVE_TEXTURE */ 166, /* GL_CLIENT_ACTIVE_TEXTURE */ - 1116, /* GL_MAX_TEXTURE_UNITS */ - 2133, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ - 2136, /* GL_TRANSPOSE_PROJECTION_MATRIX */ - 2138, /* GL_TRANSPOSE_TEXTURE_MATRIX */ - 2130, /* GL_TRANSPOSE_COLOR_MATRIX */ - 1873, /* GL_SUBTRACT */ + 1117, /* GL_MAX_TEXTURE_UNITS */ + 2138, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ + 2141, /* GL_TRANSPOSE_PROJECTION_MATRIX */ + 2143, /* GL_TRANSPOSE_TEXTURE_MATRIX */ + 2135, /* GL_TRANSPOSE_COLOR_MATRIX */ + 1874, /* GL_SUBTRACT */ 1098, /* GL_MAX_RENDERBUFFER_SIZE */ 290, /* GL_COMPRESSED_ALPHA */ 294, /* GL_COMPRESSED_LUMINANCE */ @@ -5429,94 +5439,94 @@ static const unsigned reduced_enums[1555] = 292, /* GL_COMPRESSED_INTENSITY */ 300, /* GL_COMPRESSED_RGB */ 301, /* GL_COMPRESSED_RGBA */ - 2010, /* GL_TEXTURE_COMPRESSION_HINT */ - 2087, /* GL_TEXTURE_RECTANGLE */ - 1978, /* GL_TEXTURE_BINDING_RECTANGLE */ - 1505, /* GL_PROXY_TEXTURE_RECTANGLE */ + 2015, /* GL_TEXTURE_COMPRESSION_HINT */ + 2092, /* GL_TEXTURE_RECTANGLE */ + 1980, /* GL_TEXTURE_BINDING_RECTANGLE */ + 1506, /* GL_PROXY_TEXTURE_RECTANGLE */ 1095, /* GL_MAX_RECTANGLE_TEXTURE_SIZE */ 430, /* GL_DEPTH_STENCIL */ - 2166, /* GL_UNSIGNED_INT_24_8 */ - 1111, /* GL_MAX_TEXTURE_LOD_BIAS */ - 2076, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ - 1113, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */ - 2048, /* GL_TEXTURE_FILTER_CONTROL */ - 2066, /* GL_TEXTURE_LOD_BIAS */ + 2171, /* GL_UNSIGNED_INT_24_8 */ + 1112, /* GL_MAX_TEXTURE_LOD_BIAS */ + 2081, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ + 1114, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */ + 2053, /* GL_TEXTURE_FILTER_CONTROL */ + 2071, /* GL_TEXTURE_LOD_BIAS */ 274, /* GL_COMBINE4 */ 1104, /* GL_MAX_SHININESS_NV */ 1105, /* GL_MAX_SPOT_EXPONENT_NV */ 732, /* GL_INCR_WRAP */ 395, /* GL_DECR_WRAP */ - 1175, /* GL_MODELVIEW1_ARB */ - 1233, /* GL_NORMAL_MAP */ - 1556, /* GL_REFLECTION_MAP */ - 2020, /* GL_TEXTURE_CUBE_MAP */ - 1975, /* GL_TEXTURE_BINDING_CUBE_MAP */ - 2032, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ - 2022, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ - 2035, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ - 2025, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ - 2038, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ - 2028, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ - 1503, /* GL_PROXY_TEXTURE_CUBE_MAP */ + 1176, /* GL_MODELVIEW1_ARB */ + 1234, /* GL_NORMAL_MAP */ + 1557, /* GL_REFLECTION_MAP */ + 2025, /* GL_TEXTURE_CUBE_MAP */ + 1977, /* GL_TEXTURE_BINDING_CUBE_MAP */ + 2037, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ + 2027, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ + 2040, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ + 2030, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ + 2043, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ + 2033, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ + 1504, /* GL_PROXY_TEXTURE_CUBE_MAP */ 1034, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */ - 1211, /* GL_MULTISAMPLE_FILTER_HINT_NV */ - 1446, /* GL_PRIMITIVE_RESTART_NV */ - 1445, /* GL_PRIMITIVE_RESTART_INDEX_NV */ + 1212, /* GL_MULTISAMPLE_FILTER_HINT_NV */ + 1447, /* GL_PRIMITIVE_RESTART_NV */ + 1446, /* GL_PRIMITIVE_RESTART_INDEX_NV */ 590, /* GL_FOG_DISTANCE_MODE_NV */ 537, /* GL_EYE_RADIAL_NV */ 536, /* GL_EYE_PLANE_ABSOLUTE_NV */ 273, /* GL_COMBINE */ 280, /* GL_COMBINE_RGB */ 275, /* GL_COMBINE_ALPHA */ - 1685, /* GL_RGB_SCALE */ + 1686, /* GL_RGB_SCALE */ 25, /* GL_ADD_SIGNED */ 768, /* GL_INTERPOLATE */ 316, /* GL_CONSTANT */ - 1438, /* GL_PRIMARY_COLOR */ - 1435, /* GL_PREVIOUS */ - 1778, /* GL_SOURCE0_RGB */ - 1784, /* GL_SOURCE1_RGB */ - 1790, /* GL_SOURCE2_RGB */ - 1794, /* GL_SOURCE3_RGB_NV */ - 1775, /* GL_SOURCE0_ALPHA */ - 1781, /* GL_SOURCE1_ALPHA */ - 1787, /* GL_SOURCE2_ALPHA */ - 1793, /* GL_SOURCE3_ALPHA_NV */ - 1274, /* GL_OPERAND0_RGB */ - 1280, /* GL_OPERAND1_RGB */ - 1286, /* GL_OPERAND2_RGB */ - 1290, /* GL_OPERAND3_RGB_NV */ - 1271, /* GL_OPERAND0_ALPHA */ - 1277, /* GL_OPERAND1_ALPHA */ - 1283, /* GL_OPERAND2_ALPHA */ - 1289, /* GL_OPERAND3_ALPHA_NV */ + 1439, /* GL_PRIMARY_COLOR */ + 1436, /* GL_PREVIOUS */ + 1779, /* GL_SOURCE0_RGB */ + 1785, /* GL_SOURCE1_RGB */ + 1791, /* GL_SOURCE2_RGB */ + 1795, /* GL_SOURCE3_RGB_NV */ + 1776, /* GL_SOURCE0_ALPHA */ + 1782, /* GL_SOURCE1_ALPHA */ + 1788, /* GL_SOURCE2_ALPHA */ + 1794, /* GL_SOURCE3_ALPHA_NV */ + 1275, /* GL_OPERAND0_RGB */ + 1281, /* GL_OPERAND1_RGB */ + 1287, /* GL_OPERAND2_RGB */ + 1291, /* GL_OPERAND3_RGB_NV */ + 1272, /* GL_OPERAND0_ALPHA */ + 1278, /* GL_OPERAND1_ALPHA */ + 1284, /* GL_OPERAND2_ALPHA */ + 1290, /* GL_OPERAND3_ALPHA_NV */ 137, /* GL_BUFFER_OBJECT_APPLE */ - 2218, /* GL_VERTEX_ARRAY_BINDING */ - 2085, /* GL_TEXTURE_RANGE_LENGTH_APPLE */ - 2086, /* GL_TEXTURE_RANGE_POINTER_APPLE */ - 2295, /* GL_YCBCR_422_APPLE */ - 2207, /* GL_UNSIGNED_SHORT_8_8_APPLE */ - 2209, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ - 2097, /* GL_TEXTURE_STORAGE_HINT_APPLE */ - 1864, /* GL_STORAGE_PRIVATE_APPLE */ - 1863, /* GL_STORAGE_CACHED_APPLE */ - 1865, /* GL_STORAGE_SHARED_APPLE */ - 1765, /* GL_SLICE_ACCUM_SUN */ - 1514, /* GL_QUAD_MESH_SUN */ - 2144, /* GL_TRIANGLE_MESH_SUN */ - 2260, /* GL_VERTEX_PROGRAM_ARB */ - 2271, /* GL_VERTEX_STATE_PROGRAM_NV */ - 2245, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ - 2253, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ - 2255, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ - 2257, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ + 2223, /* GL_VERTEX_ARRAY_BINDING */ + 2090, /* GL_TEXTURE_RANGE_LENGTH_APPLE */ + 2091, /* GL_TEXTURE_RANGE_POINTER_APPLE */ + 2300, /* GL_YCBCR_422_APPLE */ + 2212, /* GL_UNSIGNED_SHORT_8_8_APPLE */ + 2214, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ + 2102, /* GL_TEXTURE_STORAGE_HINT_APPLE */ + 1865, /* GL_STORAGE_PRIVATE_APPLE */ + 1864, /* GL_STORAGE_CACHED_APPLE */ + 1866, /* GL_STORAGE_SHARED_APPLE */ + 1766, /* GL_SLICE_ACCUM_SUN */ + 1515, /* GL_QUAD_MESH_SUN */ + 2149, /* GL_TRIANGLE_MESH_SUN */ + 2265, /* GL_VERTEX_PROGRAM_ARB */ + 2276, /* GL_VERTEX_STATE_PROGRAM_NV */ + 2250, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ + 2258, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ + 2260, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ + 2262, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ 386, /* GL_CURRENT_VERTEX_ATTRIB */ - 1459, /* GL_PROGRAM_LENGTH_ARB */ - 1475, /* GL_PROGRAM_STRING_ARB */ - 1198, /* GL_MODELVIEW_PROJECTION_NV */ + 1460, /* GL_PROGRAM_LENGTH_ARB */ + 1476, /* GL_PROGRAM_STRING_ARB */ + 1199, /* GL_MODELVIEW_PROJECTION_NV */ 725, /* GL_IDENTITY_NV */ 800, /* GL_INVERSE_NV */ - 2135, /* GL_TRANSPOSE_NV */ + 2140, /* GL_TRANSPOSE_NV */ 801, /* GL_INVERSE_TRANSPOSE_NV */ 1079, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */ 1078, /* GL_MAX_PROGRAM_MATRICES_ARB */ @@ -5530,33 +5540,33 @@ static const unsigned reduced_enums[1555] = 996, /* GL_MATRIX7_NV */ 369, /* GL_CURRENT_MATRIX_STACK_DEPTH_ARB */ 366, /* GL_CURRENT_MATRIX_ARB */ - 1472, /* GL_PROGRAM_POINT_SIZE */ - 2266, /* GL_VERTEX_PROGRAM_TWO_SIDE */ - 1471, /* GL_PROGRAM_PARAMETER_NV */ - 2251, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ - 1477, /* GL_PROGRAM_TARGET_NV */ - 1474, /* GL_PROGRAM_RESIDENT_NV */ - 2107, /* GL_TRACK_MATRIX_NV */ - 2108, /* GL_TRACK_MATRIX_TRANSFORM_NV */ - 2261, /* GL_VERTEX_PROGRAM_BINDING_NV */ - 1453, /* GL_PROGRAM_ERROR_POSITION_ARB */ + 1473, /* GL_PROGRAM_POINT_SIZE */ + 2271, /* GL_VERTEX_PROGRAM_TWO_SIDE */ + 1472, /* GL_PROGRAM_PARAMETER_NV */ + 2256, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ + 1478, /* GL_PROGRAM_TARGET_NV */ + 1475, /* GL_PROGRAM_RESIDENT_NV */ + 2112, /* GL_TRACK_MATRIX_NV */ + 2113, /* GL_TRACK_MATRIX_TRANSFORM_NV */ + 2266, /* GL_VERTEX_PROGRAM_BINDING_NV */ + 1454, /* GL_PROGRAM_ERROR_POSITION_ARB */ 411, /* GL_DEPTH_CLAMP */ - 2226, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ - 2233, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ - 2234, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ - 2235, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ - 2236, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ - 2237, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ - 2238, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ - 2239, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ - 2240, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ - 2241, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ - 2227, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ - 2228, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ - 2229, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ - 2230, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ - 2231, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ - 2232, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ + 2231, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ + 2238, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ + 2239, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ + 2240, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ + 2241, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ + 2242, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ + 2243, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ + 2244, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ + 2245, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ + 2246, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ + 2232, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ + 2233, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ + 2234, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ + 2235, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ + 2236, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ + 2237, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ 908, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */ 915, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */ 916, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */ @@ -5580,7 +5590,7 @@ static const unsigned reduced_enums[1555] = 945, /* GL_MAP2_VERTEX_ATTRIB4_4_NV */ 946, /* GL_MAP2_VERTEX_ATTRIB5_4_NV */ 947, /* GL_MAP2_VERTEX_ATTRIB6_4_NV */ - 1452, /* GL_PROGRAM_BINDING_ARB */ + 1453, /* GL_PROGRAM_BINDING_ARB */ 949, /* GL_MAP2_VERTEX_ATTRIB8_4_NV */ 950, /* GL_MAP2_VERTEX_ATTRIB9_4_NV */ 936, /* GL_MAP2_VERTEX_ATTRIB10_4_NV */ @@ -5589,66 +5599,66 @@ static const unsigned reduced_enums[1555] = 939, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */ 940, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */ 941, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */ - 2008, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ - 2005, /* GL_TEXTURE_COMPRESSED */ - 1239, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */ + 2013, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ + 2010, /* GL_TEXTURE_COMPRESSED */ + 1240, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */ 314, /* GL_COMPRESSED_TEXTURE_FORMATS */ - 1138, /* GL_MAX_VERTEX_UNITS_ARB */ + 1139, /* GL_MAX_VERTEX_UNITS_ARB */ 23, /* GL_ACTIVE_VERTEX_UNITS_ARB */ - 2289, /* GL_WEIGHT_SUM_UNITY_ARB */ - 2259, /* GL_VERTEX_BLEND_ARB */ + 2294, /* GL_WEIGHT_SUM_UNITY_ARB */ + 2264, /* GL_VERTEX_BLEND_ARB */ 388, /* GL_CURRENT_WEIGHT_ARB */ - 2287, /* GL_WEIGHT_ARRAY_TYPE_ARB */ - 2285, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ - 2283, /* GL_WEIGHT_ARRAY_SIZE_ARB */ - 2281, /* GL_WEIGHT_ARRAY_POINTER_ARB */ - 2276, /* GL_WEIGHT_ARRAY_ARB */ + 2292, /* GL_WEIGHT_ARRAY_TYPE_ARB */ + 2290, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ + 2288, /* GL_WEIGHT_ARRAY_SIZE_ARB */ + 2286, /* GL_WEIGHT_ARRAY_POINTER_ARB */ + 2281, /* GL_WEIGHT_ARRAY_ARB */ 445, /* GL_DOT3_RGB */ 446, /* GL_DOT3_RGBA */ 308, /* GL_COMPRESSED_RGB_FXT1_3DFX */ 303, /* GL_COMPRESSED_RGBA_FXT1_3DFX */ - 1206, /* GL_MULTISAMPLE_3DFX */ - 1723, /* GL_SAMPLE_BUFFERS_3DFX */ - 1714, /* GL_SAMPLES_3DFX */ - 1186, /* GL_MODELVIEW2_ARB */ - 1189, /* GL_MODELVIEW3_ARB */ - 1190, /* GL_MODELVIEW4_ARB */ - 1191, /* GL_MODELVIEW5_ARB */ - 1192, /* GL_MODELVIEW6_ARB */ - 1193, /* GL_MODELVIEW7_ARB */ - 1194, /* GL_MODELVIEW8_ARB */ - 1195, /* GL_MODELVIEW9_ARB */ - 1165, /* GL_MODELVIEW10_ARB */ - 1166, /* GL_MODELVIEW11_ARB */ - 1167, /* GL_MODELVIEW12_ARB */ - 1168, /* GL_MODELVIEW13_ARB */ - 1169, /* GL_MODELVIEW14_ARB */ - 1170, /* GL_MODELVIEW15_ARB */ - 1171, /* GL_MODELVIEW16_ARB */ - 1172, /* GL_MODELVIEW17_ARB */ - 1173, /* GL_MODELVIEW18_ARB */ - 1174, /* GL_MODELVIEW19_ARB */ - 1176, /* GL_MODELVIEW20_ARB */ - 1177, /* GL_MODELVIEW21_ARB */ - 1178, /* GL_MODELVIEW22_ARB */ - 1179, /* GL_MODELVIEW23_ARB */ - 1180, /* GL_MODELVIEW24_ARB */ - 1181, /* GL_MODELVIEW25_ARB */ - 1182, /* GL_MODELVIEW26_ARB */ - 1183, /* GL_MODELVIEW27_ARB */ - 1184, /* GL_MODELVIEW28_ARB */ - 1185, /* GL_MODELVIEW29_ARB */ - 1187, /* GL_MODELVIEW30_ARB */ - 1188, /* GL_MODELVIEW31_ARB */ + 1207, /* GL_MULTISAMPLE_3DFX */ + 1724, /* GL_SAMPLE_BUFFERS_3DFX */ + 1715, /* GL_SAMPLES_3DFX */ + 1187, /* GL_MODELVIEW2_ARB */ + 1190, /* GL_MODELVIEW3_ARB */ + 1191, /* GL_MODELVIEW4_ARB */ + 1192, /* GL_MODELVIEW5_ARB */ + 1193, /* GL_MODELVIEW6_ARB */ + 1194, /* GL_MODELVIEW7_ARB */ + 1195, /* GL_MODELVIEW8_ARB */ + 1196, /* GL_MODELVIEW9_ARB */ + 1166, /* GL_MODELVIEW10_ARB */ + 1167, /* GL_MODELVIEW11_ARB */ + 1168, /* GL_MODELVIEW12_ARB */ + 1169, /* GL_MODELVIEW13_ARB */ + 1170, /* GL_MODELVIEW14_ARB */ + 1171, /* GL_MODELVIEW15_ARB */ + 1172, /* GL_MODELVIEW16_ARB */ + 1173, /* GL_MODELVIEW17_ARB */ + 1174, /* GL_MODELVIEW18_ARB */ + 1175, /* GL_MODELVIEW19_ARB */ + 1177, /* GL_MODELVIEW20_ARB */ + 1178, /* GL_MODELVIEW21_ARB */ + 1179, /* GL_MODELVIEW22_ARB */ + 1180, /* GL_MODELVIEW23_ARB */ + 1181, /* GL_MODELVIEW24_ARB */ + 1182, /* GL_MODELVIEW25_ARB */ + 1183, /* GL_MODELVIEW26_ARB */ + 1184, /* GL_MODELVIEW27_ARB */ + 1185, /* GL_MODELVIEW28_ARB */ + 1186, /* GL_MODELVIEW29_ARB */ + 1188, /* GL_MODELVIEW30_ARB */ + 1189, /* GL_MODELVIEW31_ARB */ 450, /* GL_DOT3_RGB_EXT */ 448, /* GL_DOT3_RGBA_EXT */ - 1159, /* GL_MIRROR_CLAMP_EXT */ - 1162, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */ - 1201, /* GL_MODULATE_ADD_ATI */ - 1202, /* GL_MODULATE_SIGNED_ADD_ATI */ - 1203, /* GL_MODULATE_SUBTRACT_ATI */ - 2296, /* GL_YCBCR_MESA */ - 1298, /* GL_PACK_INVERT_MESA */ + 1160, /* GL_MIRROR_CLAMP_EXT */ + 1163, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */ + 1202, /* GL_MODULATE_ADD_ATI */ + 1203, /* GL_MODULATE_SIGNED_ADD_ATI */ + 1204, /* GL_MODULATE_SUBTRACT_ATI */ + 2301, /* GL_YCBCR_MESA */ + 1299, /* GL_PACK_INVERT_MESA */ 391, /* GL_DEBUG_OBJECT_MESA */ 392, /* GL_DEBUG_PRINT_MESA */ 390, /* GL_DEBUG_ASSERT_MESA */ @@ -5662,30 +5672,30 @@ static const unsigned reduced_enums[1555] = 509, /* GL_DU8DV8_ATI */ 143, /* GL_BUMP_ENVMAP_ATI */ 147, /* GL_BUMP_TARGET_ATI */ - 1242, /* GL_NUM_PROGRAM_BINARY_FORMATS_OES */ - 1450, /* GL_PROGRAM_BINARY_FORMATS_OES */ - 1827, /* GL_STENCIL_BACK_FUNC */ - 1825, /* GL_STENCIL_BACK_FAIL */ - 1829, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ - 1831, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ + 1243, /* GL_NUM_PROGRAM_BINARY_FORMATS_OES */ + 1451, /* GL_PROGRAM_BINARY_FORMATS_OES */ + 1828, /* GL_STENCIL_BACK_FUNC */ + 1826, /* GL_STENCIL_BACK_FAIL */ + 1830, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ + 1832, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ 599, /* GL_FRAGMENT_PROGRAM_ARB */ - 1448, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */ - 1480, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */ - 1479, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */ - 1462, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ - 1468, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ - 1467, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ + 1449, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */ + 1481, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */ + 1480, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */ + 1463, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ + 1469, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ + 1468, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ 1068, /* GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB */ 1093, /* GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB */ 1092, /* GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB */ 1081, /* GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */ 1087, /* GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */ 1086, /* GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */ - 1656, /* GL_RGBA32F */ - 1619, /* GL_RGB32F */ - 1647, /* GL_RGBA16F */ - 1611, /* GL_RGB16F */ - 1675, /* GL_RGBA_FLOAT_MODE_ARB */ + 1657, /* GL_RGBA32F */ + 1620, /* GL_RGB32F */ + 1648, /* GL_RGBA16F */ + 1612, /* GL_RGB16F */ + 1676, /* GL_RGBA_FLOAT_MODE_ARB */ 1037, /* GL_MAX_DRAW_BUFFERS */ 454, /* GL_DRAW_BUFFER0 */ 457, /* GL_DRAW_BUFFER1 */ @@ -5714,75 +5724,75 @@ static const unsigned reduced_enums[1555] = 1008, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */ 1006, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */ 1002, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */ - 2043, /* GL_TEXTURE_DEPTH_SIZE */ + 2048, /* GL_TEXTURE_DEPTH_SIZE */ 438, /* GL_DEPTH_TEXTURE_MODE */ - 2000, /* GL_TEXTURE_COMPARE_MODE */ - 1998, /* GL_TEXTURE_COMPARE_FUNC */ + 2005, /* GL_TEXTURE_COMPARE_MODE */ + 2003, /* GL_TEXTURE_COMPARE_FUNC */ 284, /* GL_COMPARE_REF_TO_TEXTURE */ - 1375, /* GL_POINT_SPRITE */ + 1376, /* GL_POINT_SPRITE */ 346, /* GL_COORD_REPLACE */ - 1380, /* GL_POINT_SPRITE_R_MODE_NV */ - 1520, /* GL_QUERY_COUNTER_BITS */ + 1381, /* GL_POINT_SPRITE_R_MODE_NV */ + 1521, /* GL_QUERY_COUNTER_BITS */ 375, /* GL_CURRENT_QUERY */ - 1524, /* GL_QUERY_RESULT */ - 1526, /* GL_QUERY_RESULT_AVAILABLE */ - 1130, /* GL_MAX_VERTEX_ATTRIBS */ - 2249, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ + 1525, /* GL_QUERY_RESULT */ + 1527, /* GL_QUERY_RESULT_AVAILABLE */ + 1131, /* GL_MAX_VERTEX_ATTRIBS */ + 2254, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ 436, /* GL_DEPTH_STENCIL_TO_RGBA_NV */ 435, /* GL_DEPTH_STENCIL_TO_BGRA_NV */ - 1107, /* GL_MAX_TEXTURE_COORDS */ - 1109, /* GL_MAX_TEXTURE_IMAGE_UNITS */ - 1455, /* GL_PROGRAM_ERROR_STRING_ARB */ - 1457, /* GL_PROGRAM_FORMAT_ASCII_ARB */ - 1456, /* GL_PROGRAM_FORMAT_ARB */ - 2099, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */ + 1108, /* GL_MAX_TEXTURE_COORDS */ + 1110, /* GL_MAX_TEXTURE_IMAGE_UNITS */ + 1456, /* GL_PROGRAM_ERROR_STRING_ARB */ + 1458, /* GL_PROGRAM_FORMAT_ASCII_ARB */ + 1457, /* GL_PROGRAM_FORMAT_ARB */ + 2104, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */ 408, /* GL_DEPTH_BOUNDS_TEST_EXT */ 407, /* GL_DEPTH_BOUNDS_EXT */ 61, /* GL_ARRAY_BUFFER */ 523, /* GL_ELEMENT_ARRAY_BUFFER */ 62, /* GL_ARRAY_BUFFER_BINDING */ 524, /* GL_ELEMENT_ARRAY_BUFFER_BINDING */ - 2220, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ - 1228, /* GL_NORMAL_ARRAY_BUFFER_BINDING */ + 2225, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ + 1229, /* GL_NORMAL_ARRAY_BUFFER_BINDING */ 190, /* GL_COLOR_ARRAY_BUFFER_BINDING */ 736, /* GL_INDEX_ARRAY_BUFFER_BINDING */ - 2013, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ + 2018, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ 519, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING */ - 1735, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ + 1736, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ 577, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING */ - 2277, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ - 2242, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ - 1458, /* GL_PROGRAM_INSTRUCTIONS_ARB */ + 2282, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ + 2247, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ + 1459, /* GL_PROGRAM_INSTRUCTIONS_ARB */ 1074, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */ - 1464, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ + 1465, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ 1083, /* GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ - 1478, /* GL_PROGRAM_TEMPORARIES_ARB */ + 1479, /* GL_PROGRAM_TEMPORARIES_ARB */ 1089, /* GL_MAX_PROGRAM_TEMPORARIES_ARB */ - 1466, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */ + 1467, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */ 1085, /* GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB */ - 1470, /* GL_PROGRAM_PARAMETERS_ARB */ + 1471, /* GL_PROGRAM_PARAMETERS_ARB */ 1088, /* GL_MAX_PROGRAM_PARAMETERS_ARB */ - 1465, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */ + 1466, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */ 1084, /* GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB */ - 1449, /* GL_PROGRAM_ATTRIBS_ARB */ + 1450, /* GL_PROGRAM_ATTRIBS_ARB */ 1069, /* GL_MAX_PROGRAM_ATTRIBS_ARB */ - 1463, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */ + 1464, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */ 1082, /* GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB */ - 1447, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */ + 1448, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */ 1067, /* GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB */ - 1461, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ + 1462, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ 1080, /* GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */ 1075, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */ 1071, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */ - 1481, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */ - 2132, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ - 1543, /* GL_READ_ONLY */ - 2291, /* GL_WRITE_ONLY */ - 1545, /* GL_READ_WRITE */ + 1482, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */ + 2137, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ + 1544, /* GL_READ_ONLY */ + 2296, /* GL_WRITE_ONLY */ + 1546, /* GL_READ_WRITE */ 124, /* GL_BUFFER_ACCESS */ 129, /* GL_BUFFER_MAPPED */ 134, /* GL_BUFFER_MAP_POINTER */ - 2106, /* GL_TIME_ELAPSED_EXT */ + 2111, /* GL_TIME_ELAPSED_EXT */ 959, /* GL_MATRIX0_ARB */ 971, /* GL_MATRIX1_ARB */ 983, /* GL_MATRIX2_ARB */ @@ -5815,35 +5825,35 @@ static const unsigned reduced_enums[1555] = 982, /* GL_MATRIX29_ARB */ 985, /* GL_MATRIX30_ARB */ 986, /* GL_MATRIX31_ARB */ - 1868, /* GL_STREAM_DRAW */ - 1870, /* GL_STREAM_READ */ - 1866, /* GL_STREAM_COPY */ - 1817, /* GL_STATIC_DRAW */ - 1819, /* GL_STATIC_READ */ - 1815, /* GL_STATIC_COPY */ + 1869, /* GL_STREAM_DRAW */ + 1871, /* GL_STREAM_READ */ + 1867, /* GL_STREAM_COPY */ + 1818, /* GL_STATIC_DRAW */ + 1820, /* GL_STATIC_READ */ + 1816, /* GL_STATIC_COPY */ 513, /* GL_DYNAMIC_DRAW */ 515, /* GL_DYNAMIC_READ */ 511, /* GL_DYNAMIC_COPY */ - 1338, /* GL_PIXEL_PACK_BUFFER */ - 1342, /* GL_PIXEL_UNPACK_BUFFER */ - 1339, /* GL_PIXEL_PACK_BUFFER_BINDING */ - 1343, /* GL_PIXEL_UNPACK_BUFFER_BINDING */ + 1339, /* GL_PIXEL_PACK_BUFFER */ + 1343, /* GL_PIXEL_UNPACK_BUFFER */ + 1340, /* GL_PIXEL_PACK_BUFFER_BINDING */ + 1344, /* GL_PIXEL_UNPACK_BUFFER_BINDING */ 399, /* GL_DEPTH24_STENCIL8 */ - 2095, /* GL_TEXTURE_STENCIL_SIZE */ - 2041, /* GL_TEXTURE_CUBE_MAP_SEAMLESS */ + 2100, /* GL_TEXTURE_STENCIL_SIZE */ + 2046, /* GL_TEXTURE_CUBE_MAP_SEAMLESS */ 1070, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */ 1073, /* GL_MAX_PROGRAM_IF_DEPTH_NV */ 1077, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */ 1076, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */ - 2247, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER */ - 2244, /* GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB */ + 2252, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER */ + 2249, /* GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB */ 1016, /* GL_MAX_ARRAY_TEXTURE_LAYERS */ - 1153, /* GL_MIN_PROGRAM_TEXEL_OFFSET */ + 1154, /* GL_MIN_PROGRAM_TEXEL_OFFSET */ 1090, /* GL_MAX_PROGRAM_TEXEL_OFFSET */ - 1859, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ + 1860, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ 18, /* GL_ACTIVE_STENCIL_FACE_EXT */ - 1160, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */ - 1716, /* GL_SAMPLES_PASSED */ + 1161, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */ + 1717, /* GL_SAMPLES_PASSED */ 692, /* GL_GEOMETRY_VERTICES_OUT */ 686, /* GL_GEOMETRY_INPUT_TYPE */ 688, /* GL_GEOMETRY_OUTPUT_TYPE */ @@ -5851,30 +5861,30 @@ static const unsigned reduced_enums[1555] = 156, /* GL_CLAMP_FRAGMENT_COLOR_ARB */ 157, /* GL_CLAMP_READ_COLOR */ 549, /* GL_FIXED_ONLY */ - 1362, /* GL_POINT_SIZE_ARRAY_TYPE_OES */ - 1361, /* GL_POINT_SIZE_ARRAY_STRIDE_OES */ - 1360, /* GL_POINT_SIZE_ARRAY_POINTER_OES */ - 1197, /* GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES */ - 1484, /* GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES */ - 2075, /* GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES */ + 1363, /* GL_POINT_SIZE_ARRAY_TYPE_OES */ + 1362, /* GL_POINT_SIZE_ARRAY_STRIDE_OES */ + 1361, /* GL_POINT_SIZE_ARRAY_POINTER_OES */ + 1198, /* GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES */ + 1485, /* GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES */ + 2080, /* GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES */ 138, /* GL_BUFFER_SERIALIZED_MODIFY_APPLE */ 128, /* GL_BUFFER_FLUSHING_UNMAP_APPLE */ - 1560, /* GL_RELEASED_APPLE */ - 2274, /* GL_VOLATILE_APPLE */ - 1599, /* GL_RETAINED_APPLE */ - 2149, /* GL_UNDEFINED_APPLE */ - 1508, /* GL_PURGEABLE_APPLE */ + 1561, /* GL_RELEASED_APPLE */ + 2279, /* GL_VOLATILE_APPLE */ + 1600, /* GL_RETAINED_APPLE */ + 2154, /* GL_UNDEFINED_APPLE */ + 1509, /* GL_PURGEABLE_APPLE */ 600, /* GL_FRAGMENT_SHADER */ - 2269, /* GL_VERTEX_SHADER */ - 1469, /* GL_PROGRAM_OBJECT_ARB */ - 1752, /* GL_SHADER_OBJECT_ARB */ + 2274, /* GL_VERTEX_SHADER */ + 1470, /* GL_PROGRAM_OBJECT_ARB */ + 1753, /* GL_SHADER_OBJECT_ARB */ 1045, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */ - 1135, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */ - 1126, /* GL_MAX_VARYING_COMPONENTS */ - 1133, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */ + 1136, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */ + 1127, /* GL_MAX_VARYING_COMPONENTS */ + 1134, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */ 1028, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */ - 1258, /* GL_OBJECT_TYPE_ARB */ - 1754, /* GL_SHADER_TYPE */ + 1259, /* GL_OBJECT_TYPE_ARB */ + 1755, /* GL_SHADER_TYPE */ 565, /* GL_FLOAT_VEC2 */ 567, /* GL_FLOAT_VEC3 */ 569, /* GL_FLOAT_VEC4 */ @@ -5888,14 +5898,14 @@ static const unsigned reduced_enums[1555] = 553, /* GL_FLOAT_MAT2 */ 557, /* GL_FLOAT_MAT3 */ 561, /* GL_FLOAT_MAT4 */ - 1692, /* GL_SAMPLER_1D */ - 1698, /* GL_SAMPLER_2D */ - 1706, /* GL_SAMPLER_3D */ - 1710, /* GL_SAMPLER_CUBE */ - 1697, /* GL_SAMPLER_1D_SHADOW */ - 1705, /* GL_SAMPLER_2D_SHADOW */ - 1703, /* GL_SAMPLER_2D_RECT */ - 1704, /* GL_SAMPLER_2D_RECT_SHADOW */ + 1693, /* GL_SAMPLER_1D */ + 1699, /* GL_SAMPLER_2D */ + 1707, /* GL_SAMPLER_3D */ + 1711, /* GL_SAMPLER_CUBE */ + 1698, /* GL_SAMPLER_1D_SHADOW */ + 1706, /* GL_SAMPLER_2D_SHADOW */ + 1704, /* GL_SAMPLER_2D_RECT */ + 1705, /* GL_SAMPLER_2D_RECT_SHADOW */ 555, /* GL_FLOAT_MAT2x3 */ 556, /* GL_FLOAT_MAT2x4 */ 559, /* GL_FLOAT_MAT3x2 */ @@ -5905,90 +5915,90 @@ static const unsigned reduced_enums[1555] = 397, /* GL_DELETE_STATUS */ 289, /* GL_COMPILE_STATUS */ 849, /* GL_LINK_STATUS */ - 2214, /* GL_VALIDATE_STATUS */ + 2219, /* GL_VALIDATE_STATUS */ 748, /* GL_INFO_LOG_LENGTH */ 64, /* GL_ATTACHED_SHADERS */ 21, /* GL_ACTIVE_UNIFORMS */ 22, /* GL_ACTIVE_UNIFORM_MAX_LENGTH */ - 1753, /* GL_SHADER_SOURCE_LENGTH */ + 1754, /* GL_SHADER_SOURCE_LENGTH */ 15, /* GL_ACTIVE_ATTRIBUTES */ 16, /* GL_ACTIVE_ATTRIBUTE_MAX_LENGTH */ 602, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */ - 1756, /* GL_SHADING_LANGUAGE_VERSION */ + 1757, /* GL_SHADING_LANGUAGE_VERSION */ 374, /* GL_CURRENT_PROGRAM */ - 1307, /* GL_PALETTE4_RGB8_OES */ - 1309, /* GL_PALETTE4_RGBA8_OES */ - 1305, /* GL_PALETTE4_R5_G6_B5_OES */ - 1308, /* GL_PALETTE4_RGBA4_OES */ - 1306, /* GL_PALETTE4_RGB5_A1_OES */ - 1312, /* GL_PALETTE8_RGB8_OES */ - 1314, /* GL_PALETTE8_RGBA8_OES */ - 1310, /* GL_PALETTE8_R5_G6_B5_OES */ - 1313, /* GL_PALETTE8_RGBA4_OES */ - 1311, /* GL_PALETTE8_RGB5_A1_OES */ + 1308, /* GL_PALETTE4_RGB8_OES */ + 1310, /* GL_PALETTE4_RGBA8_OES */ + 1306, /* GL_PALETTE4_R5_G6_B5_OES */ + 1309, /* GL_PALETTE4_RGBA4_OES */ + 1307, /* GL_PALETTE4_RGB5_A1_OES */ + 1313, /* GL_PALETTE8_RGB8_OES */ + 1315, /* GL_PALETTE8_RGBA8_OES */ + 1311, /* GL_PALETTE8_R5_G6_B5_OES */ + 1314, /* GL_PALETTE8_RGBA4_OES */ + 1312, /* GL_PALETTE8_RGB5_A1_OES */ 729, /* GL_IMPLEMENTATION_COLOR_READ_TYPE */ 727, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT */ - 1359, /* GL_POINT_SIZE_ARRAY_OES */ - 2019, /* GL_TEXTURE_CROP_RECT_OES */ + 1360, /* GL_POINT_SIZE_ARRAY_OES */ + 2024, /* GL_TEXTURE_CROP_RECT_OES */ 1000, /* GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES */ - 1358, /* GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES */ - 2197, /* GL_UNSIGNED_NORMALIZED */ - 1956, /* GL_TEXTURE_1D_ARRAY */ - 1494, /* GL_PROXY_TEXTURE_1D_ARRAY */ - 1959, /* GL_TEXTURE_2D_ARRAY */ - 1498, /* GL_PROXY_TEXTURE_2D_ARRAY */ - 1967, /* GL_TEXTURE_BINDING_1D_ARRAY */ - 1970, /* GL_TEXTURE_BINDING_2D_ARRAY */ + 1359, /* GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES */ + 2202, /* GL_UNSIGNED_NORMALIZED */ + 1957, /* GL_TEXTURE_1D_ARRAY */ + 1495, /* GL_PROXY_TEXTURE_1D_ARRAY */ + 1960, /* GL_TEXTURE_2D_ARRAY */ + 1499, /* GL_PROXY_TEXTURE_2D_ARRAY */ + 1968, /* GL_TEXTURE_BINDING_1D_ARRAY */ + 1971, /* GL_TEXTURE_BINDING_2D_ARRAY */ 1052, /* GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS */ - 1986, /* GL_TEXTURE_BUFFER */ + 1988, /* GL_TEXTURE_BUFFER */ 1106, /* GL_MAX_TEXTURE_BUFFER_SIZE */ - 1974, /* GL_TEXTURE_BINDING_BUFFER */ - 1987, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING */ - 1988, /* GL_TEXTURE_BUFFER_FORMAT */ - 1531, /* GL_R11F_G11F_B10F */ - 2163, /* GL_UNSIGNED_INT_10F_11F_11F_REV */ - 1642, /* GL_RGB9_E5 */ - 2172, /* GL_UNSIGNED_INT_5_9_9_9_REV */ - 2093, /* GL_TEXTURE_SHARED_SIZE */ - 1809, /* GL_SRGB */ - 1810, /* GL_SRGB8 */ - 1812, /* GL_SRGB_ALPHA */ - 1811, /* GL_SRGB8_ALPHA8 */ - 1769, /* GL_SLUMINANCE_ALPHA */ - 1768, /* GL_SLUMINANCE8_ALPHA8 */ - 1766, /* GL_SLUMINANCE */ - 1767, /* GL_SLUMINANCE8 */ + 1975, /* GL_TEXTURE_BINDING_BUFFER */ + 1990, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING */ + 1992, /* GL_TEXTURE_BUFFER_FORMAT */ + 1532, /* GL_R11F_G11F_B10F */ + 2168, /* GL_UNSIGNED_INT_10F_11F_11F_REV */ + 1643, /* GL_RGB9_E5 */ + 2177, /* GL_UNSIGNED_INT_5_9_9_9_REV */ + 2098, /* GL_TEXTURE_SHARED_SIZE */ + 1810, /* GL_SRGB */ + 1811, /* GL_SRGB8 */ + 1813, /* GL_SRGB_ALPHA */ + 1812, /* GL_SRGB8_ALPHA8 */ + 1770, /* GL_SLUMINANCE_ALPHA */ + 1769, /* GL_SLUMINANCE8_ALPHA8 */ + 1767, /* GL_SLUMINANCE */ + 1768, /* GL_SLUMINANCE8 */ 312, /* GL_COMPRESSED_SRGB */ 313, /* GL_COMPRESSED_SRGB_ALPHA */ 310, /* GL_COMPRESSED_SLUMINANCE */ 311, /* GL_COMPRESSED_SLUMINANCE_ALPHA */ - 2128, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH */ - 2117, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE */ - 1124, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS */ - 2126, /* GL_TRANSFORM_FEEDBACK_VARYINGS */ - 2122, /* GL_TRANSFORM_FEEDBACK_BUFFER_START */ - 2120, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE */ - 1441, /* GL_PRIMITIVES_GENERATED */ - 2124, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN */ - 1535, /* GL_RASTERIZER_DISCARD */ - 1120, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS */ - 1122, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS */ + 2133, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH */ + 2122, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE */ + 1125, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS */ + 2131, /* GL_TRANSFORM_FEEDBACK_VARYINGS */ + 2127, /* GL_TRANSFORM_FEEDBACK_BUFFER_START */ + 2125, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE */ + 1442, /* GL_PRIMITIVES_GENERATED */ + 2129, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN */ + 1536, /* GL_RASTERIZER_DISCARD */ + 1121, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS */ + 1123, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS */ 766, /* GL_INTERLEAVED_ATTRIBS */ - 1745, /* GL_SEPARATE_ATTRIBS */ - 2112, /* GL_TRANSFORM_FEEDBACK_BUFFER */ - 2114, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING */ - 1377, /* GL_POINT_SPRITE_COORD_ORIGIN */ + 1746, /* GL_SEPARATE_ATTRIBS */ + 2117, /* GL_TRANSFORM_FEEDBACK_BUFFER */ + 2119, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING */ + 1378, /* GL_POINT_SPRITE_COORD_ORIGIN */ 857, /* GL_LOWER_LEFT */ - 2211, /* GL_UPPER_LEFT */ - 1833, /* GL_STENCIL_BACK_REF */ - 1834, /* GL_STENCIL_BACK_VALUE_MASK */ - 1835, /* GL_STENCIL_BACK_WRITEMASK */ + 2216, /* GL_UPPER_LEFT */ + 1834, /* GL_STENCIL_BACK_REF */ + 1835, /* GL_STENCIL_BACK_VALUE_MASK */ + 1836, /* GL_STENCIL_BACK_WRITEMASK */ 503, /* GL_DRAW_FRAMEBUFFER_BINDING */ - 1565, /* GL_RENDERBUFFER_BINDING */ - 1539, /* GL_READ_FRAMEBUFFER */ + 1566, /* GL_RENDERBUFFER_BINDING */ + 1540, /* GL_READ_FRAMEBUFFER */ 502, /* GL_DRAW_FRAMEBUFFER */ - 1540, /* GL_READ_FRAMEBUFFER_BINDING */ - 1584, /* GL_RENDERBUFFER_SAMPLES */ + 1541, /* GL_READ_FRAMEBUFFER_BINDING */ + 1585, /* GL_RENDERBUFFER_SAMPLES */ 616, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE */ 613, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME */ 628, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL */ @@ -6022,87 +6032,87 @@ static const unsigned reduced_enums[1555] = 208, /* GL_COLOR_ATTACHMENT14 */ 210, /* GL_COLOR_ATTACHMENT15 */ 402, /* GL_DEPTH_ATTACHMENT */ - 1822, /* GL_STENCIL_ATTACHMENT */ + 1823, /* GL_STENCIL_ATTACHMENT */ 604, /* GL_FRAMEBUFFER */ - 1562, /* GL_RENDERBUFFER */ - 1588, /* GL_RENDERBUFFER_WIDTH */ - 1575, /* GL_RENDERBUFFER_HEIGHT */ - 1578, /* GL_RENDERBUFFER_INTERNAL_FORMAT */ - 1854, /* GL_STENCIL_INDEX_EXT */ - 1843, /* GL_STENCIL_INDEX1 */ - 1848, /* GL_STENCIL_INDEX4 */ - 1851, /* GL_STENCIL_INDEX8 */ - 1844, /* GL_STENCIL_INDEX16 */ - 1582, /* GL_RENDERBUFFER_RED_SIZE */ - 1573, /* GL_RENDERBUFFER_GREEN_SIZE */ - 1568, /* GL_RENDERBUFFER_BLUE_SIZE */ - 1563, /* GL_RENDERBUFFER_ALPHA_SIZE */ - 1570, /* GL_RENDERBUFFER_DEPTH_SIZE */ - 1586, /* GL_RENDERBUFFER_STENCIL_SIZE */ + 1563, /* GL_RENDERBUFFER */ + 1589, /* GL_RENDERBUFFER_WIDTH */ + 1576, /* GL_RENDERBUFFER_HEIGHT */ + 1579, /* GL_RENDERBUFFER_INTERNAL_FORMAT */ + 1855, /* GL_STENCIL_INDEX_EXT */ + 1844, /* GL_STENCIL_INDEX1 */ + 1849, /* GL_STENCIL_INDEX4 */ + 1852, /* GL_STENCIL_INDEX8 */ + 1845, /* GL_STENCIL_INDEX16 */ + 1583, /* GL_RENDERBUFFER_RED_SIZE */ + 1574, /* GL_RENDERBUFFER_GREEN_SIZE */ + 1569, /* GL_RENDERBUFFER_BLUE_SIZE */ + 1564, /* GL_RENDERBUFFER_ALPHA_SIZE */ + 1571, /* GL_RENDERBUFFER_DEPTH_SIZE */ + 1587, /* GL_RENDERBUFFER_STENCIL_SIZE */ 657, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE */ 1101, /* GL_MAX_SAMPLES */ - 2055, /* GL_TEXTURE_GEN_STR_OES */ + 2060, /* GL_TEXTURE_GEN_STR_OES */ 703, /* GL_HALF_FLOAT_OES */ - 1629, /* GL_RGB565_OES */ - 1659, /* GL_RGBA32UI */ - 1622, /* GL_RGB32UI */ + 1630, /* GL_RGB565_OES */ + 1660, /* GL_RGBA32UI */ + 1623, /* GL_RGB32UI */ 40, /* GL_ALPHA32UI_EXT */ 758, /* GL_INTENSITY32UI_EXT */ 874, /* GL_LUMINANCE32UI_EXT */ 891, /* GL_LUMINANCE_ALPHA32UI_EXT */ - 1650, /* GL_RGBA16UI */ - 1614, /* GL_RGB16UI */ + 1651, /* GL_RGBA16UI */ + 1615, /* GL_RGB16UI */ 37, /* GL_ALPHA16UI_EXT */ 755, /* GL_INTENSITY16UI_EXT */ 869, /* GL_LUMINANCE16UI_EXT */ 889, /* GL_LUMINANCE_ALPHA16UI_EXT */ - 1669, /* GL_RGBA8UI */ - 1637, /* GL_RGB8UI */ + 1670, /* GL_RGBA8UI */ + 1638, /* GL_RGB8UI */ 45, /* GL_ALPHA8UI_EXT */ 763, /* GL_INTENSITY8UI_EXT */ 883, /* GL_LUMINANCE8UI_EXT */ 893, /* GL_LUMINANCE_ALPHA8UI_EXT */ - 1657, /* GL_RGBA32I */ - 1620, /* GL_RGB32I */ + 1658, /* GL_RGBA32I */ + 1621, /* GL_RGB32I */ 39, /* GL_ALPHA32I_EXT */ 757, /* GL_INTENSITY32I_EXT */ 873, /* GL_LUMINANCE32I_EXT */ 890, /* GL_LUMINANCE_ALPHA32I_EXT */ - 1648, /* GL_RGBA16I */ - 1612, /* GL_RGB16I */ + 1649, /* GL_RGBA16I */ + 1613, /* GL_RGB16I */ 36, /* GL_ALPHA16I_EXT */ 754, /* GL_INTENSITY16I_EXT */ 868, /* GL_LUMINANCE16I_EXT */ 888, /* GL_LUMINANCE_ALPHA16I_EXT */ - 1667, /* GL_RGBA8I */ - 1635, /* GL_RGB8I */ + 1668, /* GL_RGBA8I */ + 1636, /* GL_RGB8I */ 44, /* GL_ALPHA8I_EXT */ 762, /* GL_INTENSITY8I_EXT */ 882, /* GL_LUMINANCE8I_EXT */ 892, /* GL_LUMINANCE_ALPHA8I_EXT */ - 1552, /* GL_RED_INTEGER */ + 1553, /* GL_RED_INTEGER */ 699, /* GL_GREEN_INTEGER */ 113, /* GL_BLUE_INTEGER */ 49, /* GL_ALPHA_INTEGER_EXT */ - 1682, /* GL_RGB_INTEGER */ - 1676, /* GL_RGBA_INTEGER */ + 1683, /* GL_RGB_INTEGER */ + 1677, /* GL_RGBA_INTEGER */ 84, /* GL_BGR_INTEGER */ 82, /* GL_BGRA_INTEGER */ 895, /* GL_LUMINANCE_INTEGER_EXT */ 894, /* GL_LUMINANCE_ALPHA_INTEGER_EXT */ - 1678, /* GL_RGBA_INTEGER_MODE_EXT */ + 1679, /* GL_RGBA_INTEGER_MODE_EXT */ 611, /* GL_FRAMEBUFFER_ATTACHMENT_LAYERED */ 652, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS */ 651, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB */ - 1693, /* GL_SAMPLER_1D_ARRAY */ - 1699, /* GL_SAMPLER_2D_ARRAY */ - 1708, /* GL_SAMPLER_BUFFER */ - 1695, /* GL_SAMPLER_1D_ARRAY_SHADOW */ - 1701, /* GL_SAMPLER_2D_ARRAY_SHADOW */ - 1711, /* GL_SAMPLER_CUBE_SHADOW */ - 2191, /* GL_UNSIGNED_INT_VEC2 */ - 2193, /* GL_UNSIGNED_INT_VEC3 */ - 2195, /* GL_UNSIGNED_INT_VEC4 */ + 1694, /* GL_SAMPLER_1D_ARRAY */ + 1700, /* GL_SAMPLER_2D_ARRAY */ + 1709, /* GL_SAMPLER_BUFFER */ + 1696, /* GL_SAMPLER_1D_ARRAY_SHADOW */ + 1702, /* GL_SAMPLER_2D_ARRAY_SHADOW */ + 1712, /* GL_SAMPLER_CUBE_SHADOW */ + 2196, /* GL_UNSIGNED_INT_VEC2 */ + 2198, /* GL_UNSIGNED_INT_VEC3 */ + 2200, /* GL_UNSIGNED_INT_VEC4 */ 772, /* GL_INT_SAMPLER_1D */ 776, /* GL_INT_SAMPLER_2D */ 782, /* GL_INT_SAMPLER_3D */ @@ -6111,94 +6121,94 @@ static const unsigned reduced_enums[1555] = 773, /* GL_INT_SAMPLER_1D_ARRAY */ 777, /* GL_INT_SAMPLER_2D_ARRAY */ 784, /* GL_INT_SAMPLER_BUFFER */ - 2175, /* GL_UNSIGNED_INT_SAMPLER_1D */ - 2179, /* GL_UNSIGNED_INT_SAMPLER_2D */ - 2185, /* GL_UNSIGNED_INT_SAMPLER_3D */ - 2189, /* GL_UNSIGNED_INT_SAMPLER_CUBE */ - 2183, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT */ - 2176, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY */ - 2180, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY */ - 2187, /* GL_UNSIGNED_INT_SAMPLER_BUFFER */ + 2180, /* GL_UNSIGNED_INT_SAMPLER_1D */ + 2184, /* GL_UNSIGNED_INT_SAMPLER_2D */ + 2190, /* GL_UNSIGNED_INT_SAMPLER_3D */ + 2194, /* GL_UNSIGNED_INT_SAMPLER_CUBE */ + 2188, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT */ + 2181, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY */ + 2185, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY */ + 2192, /* GL_UNSIGNED_INT_SAMPLER_BUFFER */ 690, /* GL_GEOMETRY_SHADER */ 693, /* GL_GEOMETRY_VERTICES_OUT_ARB */ 687, /* GL_GEOMETRY_INPUT_TYPE_ARB */ 689, /* GL_GEOMETRY_OUTPUT_TYPE_ARB */ 1058, /* GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB */ - 1140, /* GL_MAX_VERTEX_VARYING_COMPONENTS_ARB */ + 1141, /* GL_MAX_VERTEX_VARYING_COMPONENTS_ARB */ 1056, /* GL_MAX_GEOMETRY_UNIFORM_COMPONENTS */ 1050, /* GL_MAX_GEOMETRY_OUTPUT_VERTICES */ 1054, /* GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS */ 858, /* GL_LOW_FLOAT */ - 1142, /* GL_MEDIUM_FLOAT */ + 1143, /* GL_MEDIUM_FLOAT */ 704, /* GL_HIGH_FLOAT */ 859, /* GL_LOW_INT */ - 1143, /* GL_MEDIUM_INT */ + 1144, /* GL_MEDIUM_INT */ 705, /* GL_HIGH_INT */ - 2165, /* GL_UNSIGNED_INT_10_10_10_2_OES */ + 2170, /* GL_UNSIGNED_INT_10_10_10_2_OES */ 771, /* GL_INT_10_10_10_2_OES */ - 1750, /* GL_SHADER_BINARY_FORMATS */ - 1243, /* GL_NUM_SHADER_BINARY_FORMATS */ - 1751, /* GL_SHADER_COMPILER */ - 1137, /* GL_MAX_VERTEX_UNIFORM_VECTORS */ - 1129, /* GL_MAX_VARYING_VECTORS */ + 1751, /* GL_SHADER_BINARY_FORMATS */ + 1244, /* GL_NUM_SHADER_BINARY_FORMATS */ + 1752, /* GL_SHADER_COMPILER */ + 1138, /* GL_MAX_VERTEX_UNIFORM_VECTORS */ + 1130, /* GL_MAX_VARYING_VECTORS */ 1047, /* GL_MAX_FRAGMENT_UNIFORM_VECTORS */ - 1528, /* GL_QUERY_WAIT */ - 1522, /* GL_QUERY_NO_WAIT */ - 1518, /* GL_QUERY_BY_REGION_WAIT */ - 1516, /* GL_QUERY_BY_REGION_NO_WAIT */ - 2110, /* GL_TRANSFORM_FEEDBACK */ - 2119, /* GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED */ - 2113, /* GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE */ - 2111, /* GL_TRANSFORM_FEEDBACK_BINDING */ - 1512, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION */ + 1529, /* GL_QUERY_WAIT */ + 1523, /* GL_QUERY_NO_WAIT */ + 1519, /* GL_QUERY_BY_REGION_WAIT */ + 1517, /* GL_QUERY_BY_REGION_NO_WAIT */ + 2115, /* GL_TRANSFORM_FEEDBACK */ + 2124, /* GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED */ + 2118, /* GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE */ + 2116, /* GL_TRANSFORM_FEEDBACK_BINDING */ + 1513, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION */ 545, /* GL_FIRST_VERTEX_CONVENTION */ 804, /* GL_LAST_VERTEX_CONVENTION */ - 1486, /* GL_PROVOKING_VERTEX */ + 1487, /* GL_PROVOKING_VERTEX */ 353, /* GL_COPY_READ_BUFFER */ 354, /* GL_COPY_WRITE_BUFFER */ - 1555, /* GL_RED_SNORM */ - 1689, /* GL_RG_SNORM */ - 1688, /* GL_RGB_SNORM */ - 1681, /* GL_RGBA_SNORM */ - 1534, /* GL_R8_SNORM */ - 1602, /* GL_RG8_SNORM */ - 1641, /* GL_RGB8_SNORM */ - 1673, /* GL_RGBA8_SNORM */ - 1532, /* GL_R16_SNORM */ - 1601, /* GL_RG16_SNORM */ - 1617, /* GL_RGB16_SNORM */ - 1653, /* GL_RGBA16_SNORM */ - 1762, /* GL_SIGNED_NORMALIZED */ - 1443, /* GL_PRIMITIVE_RESTART */ - 1444, /* GL_PRIMITIVE_RESTART_INDEX */ + 1556, /* GL_RED_SNORM */ + 1690, /* GL_RG_SNORM */ + 1689, /* GL_RGB_SNORM */ + 1682, /* GL_RGBA_SNORM */ + 1535, /* GL_R8_SNORM */ + 1603, /* GL_RG8_SNORM */ + 1642, /* GL_RGB8_SNORM */ + 1674, /* GL_RGBA8_SNORM */ + 1533, /* GL_R16_SNORM */ + 1602, /* GL_RG16_SNORM */ + 1618, /* GL_RGB16_SNORM */ + 1654, /* GL_RGBA16_SNORM */ + 1763, /* GL_SIGNED_NORMALIZED */ + 1444, /* GL_PRIMITIVE_RESTART */ + 1445, /* GL_PRIMITIVE_RESTART_INDEX */ 1103, /* GL_MAX_SERVER_WAIT_TIMEOUT */ - 1257, /* GL_OBJECT_TYPE */ - 1875, /* GL_SYNC_CONDITION */ - 1880, /* GL_SYNC_STATUS */ - 1877, /* GL_SYNC_FLAGS */ - 1876, /* GL_SYNC_FENCE */ - 1879, /* GL_SYNC_GPU_COMMANDS_COMPLETE */ - 2158, /* GL_UNSIGNALED */ - 1761, /* GL_SIGNALED */ + 1258, /* GL_OBJECT_TYPE */ + 1876, /* GL_SYNC_CONDITION */ + 1881, /* GL_SYNC_STATUS */ + 1878, /* GL_SYNC_FLAGS */ + 1877, /* GL_SYNC_FENCE */ + 1880, /* GL_SYNC_GPU_COMMANDS_COMPLETE */ + 2163, /* GL_UNSIGNALED */ + 1762, /* GL_SIGNALED */ 54, /* GL_ALREADY_SIGNALED */ - 2105, /* GL_TIMEOUT_EXPIRED */ + 2110, /* GL_TIMEOUT_EXPIRED */ 315, /* GL_CONDITION_SATISFIED */ - 2275, /* GL_WAIT_FAILED */ + 2280, /* GL_WAIT_FAILED */ 126, /* GL_BUFFER_ACCESS_FLAGS */ 132, /* GL_BUFFER_MAP_LENGTH */ 133, /* GL_BUFFER_MAP_OFFSET */ - 1132, /* GL_MAX_VERTEX_OUTPUT_COMPONENTS */ + 1133, /* GL_MAX_VERTEX_OUTPUT_COMPONENTS */ 1048, /* GL_MAX_GEOMETRY_INPUT_COMPONENTS */ 1049, /* GL_MAX_GEOMETRY_OUTPUT_COMPONENTS */ 1044, /* GL_MAX_FRAGMENT_INPUT_COMPONENTS */ 329, /* GL_CONTEXT_PROFILE_MASK */ 530, /* GL_EVAL_BIT */ - 1537, /* GL_RASTER_POSITION_UNCLIPPED_IBM */ + 1538, /* GL_RASTER_POSITION_UNCLIPPED_IBM */ 851, /* GL_LIST_BIT */ - 1981, /* GL_TEXTURE_BIT */ - 1731, /* GL_SCISSOR_BIT */ + 1983, /* GL_TEXTURE_BIT */ + 1732, /* GL_SCISSOR_BIT */ 30, /* GL_ALL_ATTRIB_BITS */ - 1208, /* GL_MULTISAMPLE_BIT */ + 1209, /* GL_MULTISAMPLE_BIT */ 31, /* GL_ALL_CLIENT_ATTRIB_BITS */ }; diff --git a/src/mesa/main/glapidispatch.h b/src/mesa/main/glapidispatch.h index e733a8d76d3..4391a39fb2a 100644 --- a/src/mesa/main/glapidispatch.h +++ b/src/mesa/main/glapidispatch.h @@ -59,7 +59,7 @@ } while(0) /* total number of offsets below */ -#define _gloffset_COUNT 893 +#define _gloffset_COUNT 894 #define _gloffset_NewList 0 #define _gloffset_EndList 1 @@ -646,321 +646,322 @@ #define _gloffset_VertexAttribDivisorARB 579 #define _gloffset_FlushMappedBufferRange 580 #define _gloffset_MapBufferRange 581 -#define _gloffset_BindVertexArray 582 -#define _gloffset_GenVertexArrays 583 -#define _gloffset_CopyBufferSubData 584 -#define _gloffset_ClientWaitSync 585 -#define _gloffset_DeleteSync 586 -#define _gloffset_FenceSync 587 -#define _gloffset_GetInteger64v 588 -#define _gloffset_GetSynciv 589 -#define _gloffset_IsSync 590 -#define _gloffset_WaitSync 591 -#define _gloffset_DrawElementsBaseVertex 592 -#define _gloffset_DrawRangeElementsBaseVertex 593 -#define _gloffset_MultiDrawElementsBaseVertex 594 -#define _gloffset_BlendEquationSeparateiARB 595 -#define _gloffset_BlendEquationiARB 596 -#define _gloffset_BlendFuncSeparateiARB 597 -#define _gloffset_BlendFunciARB 598 -#define _gloffset_BindTransformFeedback 599 -#define _gloffset_DeleteTransformFeedbacks 600 -#define _gloffset_DrawTransformFeedback 601 -#define _gloffset_GenTransformFeedbacks 602 -#define _gloffset_IsTransformFeedback 603 -#define _gloffset_PauseTransformFeedback 604 -#define _gloffset_ResumeTransformFeedback 605 -#define _gloffset_ClearDepthf 606 -#define _gloffset_DepthRangef 607 -#define _gloffset_GetShaderPrecisionFormat 608 -#define _gloffset_ReleaseShaderCompiler 609 -#define _gloffset_ShaderBinary 610 -#define _gloffset_PolygonOffsetEXT 611 -#define _gloffset_GetPixelTexGenParameterfvSGIS 612 -#define _gloffset_GetPixelTexGenParameterivSGIS 613 -#define _gloffset_PixelTexGenParameterfSGIS 614 -#define _gloffset_PixelTexGenParameterfvSGIS 615 -#define _gloffset_PixelTexGenParameteriSGIS 616 -#define _gloffset_PixelTexGenParameterivSGIS 617 -#define _gloffset_SampleMaskSGIS 618 -#define _gloffset_SamplePatternSGIS 619 -#define _gloffset_ColorPointerEXT 620 -#define _gloffset_EdgeFlagPointerEXT 621 -#define _gloffset_IndexPointerEXT 622 -#define _gloffset_NormalPointerEXT 623 -#define _gloffset_TexCoordPointerEXT 624 -#define _gloffset_VertexPointerEXT 625 -#define _gloffset_PointParameterfEXT 626 -#define _gloffset_PointParameterfvEXT 627 -#define _gloffset_LockArraysEXT 628 -#define _gloffset_UnlockArraysEXT 629 -#define _gloffset_SecondaryColor3bEXT 630 -#define _gloffset_SecondaryColor3bvEXT 631 -#define _gloffset_SecondaryColor3dEXT 632 -#define _gloffset_SecondaryColor3dvEXT 633 -#define _gloffset_SecondaryColor3fEXT 634 -#define _gloffset_SecondaryColor3fvEXT 635 -#define _gloffset_SecondaryColor3iEXT 636 -#define _gloffset_SecondaryColor3ivEXT 637 -#define _gloffset_SecondaryColor3sEXT 638 -#define _gloffset_SecondaryColor3svEXT 639 -#define _gloffset_SecondaryColor3ubEXT 640 -#define _gloffset_SecondaryColor3ubvEXT 641 -#define _gloffset_SecondaryColor3uiEXT 642 -#define _gloffset_SecondaryColor3uivEXT 643 -#define _gloffset_SecondaryColor3usEXT 644 -#define _gloffset_SecondaryColor3usvEXT 645 -#define _gloffset_SecondaryColorPointerEXT 646 -#define _gloffset_MultiDrawArraysEXT 647 -#define _gloffset_MultiDrawElementsEXT 648 -#define _gloffset_FogCoordPointerEXT 649 -#define _gloffset_FogCoorddEXT 650 -#define _gloffset_FogCoorddvEXT 651 -#define _gloffset_FogCoordfEXT 652 -#define _gloffset_FogCoordfvEXT 653 -#define _gloffset_PixelTexGenSGIX 654 -#define _gloffset_BlendFuncSeparateEXT 655 -#define _gloffset_FlushVertexArrayRangeNV 656 -#define _gloffset_VertexArrayRangeNV 657 -#define _gloffset_CombinerInputNV 658 -#define _gloffset_CombinerOutputNV 659 -#define _gloffset_CombinerParameterfNV 660 -#define _gloffset_CombinerParameterfvNV 661 -#define _gloffset_CombinerParameteriNV 662 -#define _gloffset_CombinerParameterivNV 663 -#define _gloffset_FinalCombinerInputNV 664 -#define _gloffset_GetCombinerInputParameterfvNV 665 -#define _gloffset_GetCombinerInputParameterivNV 666 -#define _gloffset_GetCombinerOutputParameterfvNV 667 -#define _gloffset_GetCombinerOutputParameterivNV 668 -#define _gloffset_GetFinalCombinerInputParameterfvNV 669 -#define _gloffset_GetFinalCombinerInputParameterivNV 670 -#define _gloffset_ResizeBuffersMESA 671 -#define _gloffset_WindowPos2dMESA 672 -#define _gloffset_WindowPos2dvMESA 673 -#define _gloffset_WindowPos2fMESA 674 -#define _gloffset_WindowPos2fvMESA 675 -#define _gloffset_WindowPos2iMESA 676 -#define _gloffset_WindowPos2ivMESA 677 -#define _gloffset_WindowPos2sMESA 678 -#define _gloffset_WindowPos2svMESA 679 -#define _gloffset_WindowPos3dMESA 680 -#define _gloffset_WindowPos3dvMESA 681 -#define _gloffset_WindowPos3fMESA 682 -#define _gloffset_WindowPos3fvMESA 683 -#define _gloffset_WindowPos3iMESA 684 -#define _gloffset_WindowPos3ivMESA 685 -#define _gloffset_WindowPos3sMESA 686 -#define _gloffset_WindowPos3svMESA 687 -#define _gloffset_WindowPos4dMESA 688 -#define _gloffset_WindowPos4dvMESA 689 -#define _gloffset_WindowPos4fMESA 690 -#define _gloffset_WindowPos4fvMESA 691 -#define _gloffset_WindowPos4iMESA 692 -#define _gloffset_WindowPos4ivMESA 693 -#define _gloffset_WindowPos4sMESA 694 -#define _gloffset_WindowPos4svMESA 695 -#define _gloffset_MultiModeDrawArraysIBM 696 -#define _gloffset_MultiModeDrawElementsIBM 697 -#define _gloffset_DeleteFencesNV 698 -#define _gloffset_FinishFenceNV 699 -#define _gloffset_GenFencesNV 700 -#define _gloffset_GetFenceivNV 701 -#define _gloffset_IsFenceNV 702 -#define _gloffset_SetFenceNV 703 -#define _gloffset_TestFenceNV 704 -#define _gloffset_AreProgramsResidentNV 705 -#define _gloffset_BindProgramNV 706 -#define _gloffset_DeleteProgramsNV 707 -#define _gloffset_ExecuteProgramNV 708 -#define _gloffset_GenProgramsNV 709 -#define _gloffset_GetProgramParameterdvNV 710 -#define _gloffset_GetProgramParameterfvNV 711 -#define _gloffset_GetProgramStringNV 712 -#define _gloffset_GetProgramivNV 713 -#define _gloffset_GetTrackMatrixivNV 714 -#define _gloffset_GetVertexAttribPointervNV 715 -#define _gloffset_GetVertexAttribdvNV 716 -#define _gloffset_GetVertexAttribfvNV 717 -#define _gloffset_GetVertexAttribivNV 718 -#define _gloffset_IsProgramNV 719 -#define _gloffset_LoadProgramNV 720 -#define _gloffset_ProgramParameters4dvNV 721 -#define _gloffset_ProgramParameters4fvNV 722 -#define _gloffset_RequestResidentProgramsNV 723 -#define _gloffset_TrackMatrixNV 724 -#define _gloffset_VertexAttrib1dNV 725 -#define _gloffset_VertexAttrib1dvNV 726 -#define _gloffset_VertexAttrib1fNV 727 -#define _gloffset_VertexAttrib1fvNV 728 -#define _gloffset_VertexAttrib1sNV 729 -#define _gloffset_VertexAttrib1svNV 730 -#define _gloffset_VertexAttrib2dNV 731 -#define _gloffset_VertexAttrib2dvNV 732 -#define _gloffset_VertexAttrib2fNV 733 -#define _gloffset_VertexAttrib2fvNV 734 -#define _gloffset_VertexAttrib2sNV 735 -#define _gloffset_VertexAttrib2svNV 736 -#define _gloffset_VertexAttrib3dNV 737 -#define _gloffset_VertexAttrib3dvNV 738 -#define _gloffset_VertexAttrib3fNV 739 -#define _gloffset_VertexAttrib3fvNV 740 -#define _gloffset_VertexAttrib3sNV 741 -#define _gloffset_VertexAttrib3svNV 742 -#define _gloffset_VertexAttrib4dNV 743 -#define _gloffset_VertexAttrib4dvNV 744 -#define _gloffset_VertexAttrib4fNV 745 -#define _gloffset_VertexAttrib4fvNV 746 -#define _gloffset_VertexAttrib4sNV 747 -#define _gloffset_VertexAttrib4svNV 748 -#define _gloffset_VertexAttrib4ubNV 749 -#define _gloffset_VertexAttrib4ubvNV 750 -#define _gloffset_VertexAttribPointerNV 751 -#define _gloffset_VertexAttribs1dvNV 752 -#define _gloffset_VertexAttribs1fvNV 753 -#define _gloffset_VertexAttribs1svNV 754 -#define _gloffset_VertexAttribs2dvNV 755 -#define _gloffset_VertexAttribs2fvNV 756 -#define _gloffset_VertexAttribs2svNV 757 -#define _gloffset_VertexAttribs3dvNV 758 -#define _gloffset_VertexAttribs3fvNV 759 -#define _gloffset_VertexAttribs3svNV 760 -#define _gloffset_VertexAttribs4dvNV 761 -#define _gloffset_VertexAttribs4fvNV 762 -#define _gloffset_VertexAttribs4svNV 763 -#define _gloffset_VertexAttribs4ubvNV 764 -#define _gloffset_GetTexBumpParameterfvATI 765 -#define _gloffset_GetTexBumpParameterivATI 766 -#define _gloffset_TexBumpParameterfvATI 767 -#define _gloffset_TexBumpParameterivATI 768 -#define _gloffset_AlphaFragmentOp1ATI 769 -#define _gloffset_AlphaFragmentOp2ATI 770 -#define _gloffset_AlphaFragmentOp3ATI 771 -#define _gloffset_BeginFragmentShaderATI 772 -#define _gloffset_BindFragmentShaderATI 773 -#define _gloffset_ColorFragmentOp1ATI 774 -#define _gloffset_ColorFragmentOp2ATI 775 -#define _gloffset_ColorFragmentOp3ATI 776 -#define _gloffset_DeleteFragmentShaderATI 777 -#define _gloffset_EndFragmentShaderATI 778 -#define _gloffset_GenFragmentShadersATI 779 -#define _gloffset_PassTexCoordATI 780 -#define _gloffset_SampleMapATI 781 -#define _gloffset_SetFragmentShaderConstantATI 782 -#define _gloffset_PointParameteriNV 783 -#define _gloffset_PointParameterivNV 784 -#define _gloffset_ActiveStencilFaceEXT 785 -#define _gloffset_BindVertexArrayAPPLE 786 -#define _gloffset_DeleteVertexArraysAPPLE 787 -#define _gloffset_GenVertexArraysAPPLE 788 -#define _gloffset_IsVertexArrayAPPLE 789 -#define _gloffset_GetProgramNamedParameterdvNV 790 -#define _gloffset_GetProgramNamedParameterfvNV 791 -#define _gloffset_ProgramNamedParameter4dNV 792 -#define _gloffset_ProgramNamedParameter4dvNV 793 -#define _gloffset_ProgramNamedParameter4fNV 794 -#define _gloffset_ProgramNamedParameter4fvNV 795 -#define _gloffset_PrimitiveRestartIndexNV 796 -#define _gloffset_PrimitiveRestartNV 797 -#define _gloffset_DepthBoundsEXT 798 -#define _gloffset_BlendEquationSeparateEXT 799 -#define _gloffset_BindFramebufferEXT 800 -#define _gloffset_BindRenderbufferEXT 801 -#define _gloffset_CheckFramebufferStatusEXT 802 -#define _gloffset_DeleteFramebuffersEXT 803 -#define _gloffset_DeleteRenderbuffersEXT 804 -#define _gloffset_FramebufferRenderbufferEXT 805 -#define _gloffset_FramebufferTexture1DEXT 806 -#define _gloffset_FramebufferTexture2DEXT 807 -#define _gloffset_FramebufferTexture3DEXT 808 -#define _gloffset_GenFramebuffersEXT 809 -#define _gloffset_GenRenderbuffersEXT 810 -#define _gloffset_GenerateMipmapEXT 811 -#define _gloffset_GetFramebufferAttachmentParameterivEXT 812 -#define _gloffset_GetRenderbufferParameterivEXT 813 -#define _gloffset_IsFramebufferEXT 814 -#define _gloffset_IsRenderbufferEXT 815 -#define _gloffset_RenderbufferStorageEXT 816 -#define _gloffset_BlitFramebufferEXT 817 -#define _gloffset_BufferParameteriAPPLE 818 -#define _gloffset_FlushMappedBufferRangeAPPLE 819 -#define _gloffset_BindFragDataLocationEXT 820 -#define _gloffset_GetFragDataLocationEXT 821 -#define _gloffset_GetUniformuivEXT 822 -#define _gloffset_GetVertexAttribIivEXT 823 -#define _gloffset_GetVertexAttribIuivEXT 824 -#define _gloffset_Uniform1uiEXT 825 -#define _gloffset_Uniform1uivEXT 826 -#define _gloffset_Uniform2uiEXT 827 -#define _gloffset_Uniform2uivEXT 828 -#define _gloffset_Uniform3uiEXT 829 -#define _gloffset_Uniform3uivEXT 830 -#define _gloffset_Uniform4uiEXT 831 -#define _gloffset_Uniform4uivEXT 832 -#define _gloffset_VertexAttribI1iEXT 833 -#define _gloffset_VertexAttribI1ivEXT 834 -#define _gloffset_VertexAttribI1uiEXT 835 -#define _gloffset_VertexAttribI1uivEXT 836 -#define _gloffset_VertexAttribI2iEXT 837 -#define _gloffset_VertexAttribI2ivEXT 838 -#define _gloffset_VertexAttribI2uiEXT 839 -#define _gloffset_VertexAttribI2uivEXT 840 -#define _gloffset_VertexAttribI3iEXT 841 -#define _gloffset_VertexAttribI3ivEXT 842 -#define _gloffset_VertexAttribI3uiEXT 843 -#define _gloffset_VertexAttribI3uivEXT 844 -#define _gloffset_VertexAttribI4bvEXT 845 -#define _gloffset_VertexAttribI4iEXT 846 -#define _gloffset_VertexAttribI4ivEXT 847 -#define _gloffset_VertexAttribI4svEXT 848 -#define _gloffset_VertexAttribI4ubvEXT 849 -#define _gloffset_VertexAttribI4uiEXT 850 -#define _gloffset_VertexAttribI4uivEXT 851 -#define _gloffset_VertexAttribI4usvEXT 852 -#define _gloffset_VertexAttribIPointerEXT 853 -#define _gloffset_FramebufferTextureLayerEXT 854 -#define _gloffset_ColorMaskIndexedEXT 855 -#define _gloffset_DisableIndexedEXT 856 -#define _gloffset_EnableIndexedEXT 857 -#define _gloffset_GetBooleanIndexedvEXT 858 -#define _gloffset_GetIntegerIndexedvEXT 859 -#define _gloffset_IsEnabledIndexedEXT 860 -#define _gloffset_ClearColorIiEXT 861 -#define _gloffset_ClearColorIuiEXT 862 -#define _gloffset_GetTexParameterIivEXT 863 -#define _gloffset_GetTexParameterIuivEXT 864 -#define _gloffset_TexParameterIivEXT 865 -#define _gloffset_TexParameterIuivEXT 866 -#define _gloffset_BeginConditionalRenderNV 867 -#define _gloffset_EndConditionalRenderNV 868 -#define _gloffset_BeginTransformFeedbackEXT 869 -#define _gloffset_BindBufferBaseEXT 870 -#define _gloffset_BindBufferOffsetEXT 871 -#define _gloffset_BindBufferRangeEXT 872 -#define _gloffset_EndTransformFeedbackEXT 873 -#define _gloffset_GetTransformFeedbackVaryingEXT 874 -#define _gloffset_TransformFeedbackVaryingsEXT 875 -#define _gloffset_ProvokingVertexEXT 876 -#define _gloffset_GetTexParameterPointervAPPLE 877 -#define _gloffset_TextureRangeAPPLE 878 -#define _gloffset_GetObjectParameterivAPPLE 879 -#define _gloffset_ObjectPurgeableAPPLE 880 -#define _gloffset_ObjectUnpurgeableAPPLE 881 -#define _gloffset_ActiveProgramEXT 882 -#define _gloffset_CreateShaderProgramEXT 883 -#define _gloffset_UseShaderProgramEXT 884 -#define _gloffset_TextureBarrierNV 885 -#define _gloffset_StencilFuncSeparateATI 886 -#define _gloffset_ProgramEnvParameters4fvEXT 887 -#define _gloffset_ProgramLocalParameters4fvEXT 888 -#define _gloffset_GetQueryObjecti64vEXT 889 -#define _gloffset_GetQueryObjectui64vEXT 890 -#define _gloffset_EGLImageTargetRenderbufferStorageOES 891 -#define _gloffset_EGLImageTargetTexture2DOES 892 +#define _gloffset_TexBufferARB 582 +#define _gloffset_BindVertexArray 583 +#define _gloffset_GenVertexArrays 584 +#define _gloffset_CopyBufferSubData 585 +#define _gloffset_ClientWaitSync 586 +#define _gloffset_DeleteSync 587 +#define _gloffset_FenceSync 588 +#define _gloffset_GetInteger64v 589 +#define _gloffset_GetSynciv 590 +#define _gloffset_IsSync 591 +#define _gloffset_WaitSync 592 +#define _gloffset_DrawElementsBaseVertex 593 +#define _gloffset_DrawRangeElementsBaseVertex 594 +#define _gloffset_MultiDrawElementsBaseVertex 595 +#define _gloffset_BlendEquationSeparateiARB 596 +#define _gloffset_BlendEquationiARB 597 +#define _gloffset_BlendFuncSeparateiARB 598 +#define _gloffset_BlendFunciARB 599 +#define _gloffset_BindTransformFeedback 600 +#define _gloffset_DeleteTransformFeedbacks 601 +#define _gloffset_DrawTransformFeedback 602 +#define _gloffset_GenTransformFeedbacks 603 +#define _gloffset_IsTransformFeedback 604 +#define _gloffset_PauseTransformFeedback 605 +#define _gloffset_ResumeTransformFeedback 606 +#define _gloffset_ClearDepthf 607 +#define _gloffset_DepthRangef 608 +#define _gloffset_GetShaderPrecisionFormat 609 +#define _gloffset_ReleaseShaderCompiler 610 +#define _gloffset_ShaderBinary 611 +#define _gloffset_PolygonOffsetEXT 612 +#define _gloffset_GetPixelTexGenParameterfvSGIS 613 +#define _gloffset_GetPixelTexGenParameterivSGIS 614 +#define _gloffset_PixelTexGenParameterfSGIS 615 +#define _gloffset_PixelTexGenParameterfvSGIS 616 +#define _gloffset_PixelTexGenParameteriSGIS 617 +#define _gloffset_PixelTexGenParameterivSGIS 618 +#define _gloffset_SampleMaskSGIS 619 +#define _gloffset_SamplePatternSGIS 620 +#define _gloffset_ColorPointerEXT 621 +#define _gloffset_EdgeFlagPointerEXT 622 +#define _gloffset_IndexPointerEXT 623 +#define _gloffset_NormalPointerEXT 624 +#define _gloffset_TexCoordPointerEXT 625 +#define _gloffset_VertexPointerEXT 626 +#define _gloffset_PointParameterfEXT 627 +#define _gloffset_PointParameterfvEXT 628 +#define _gloffset_LockArraysEXT 629 +#define _gloffset_UnlockArraysEXT 630 +#define _gloffset_SecondaryColor3bEXT 631 +#define _gloffset_SecondaryColor3bvEXT 632 +#define _gloffset_SecondaryColor3dEXT 633 +#define _gloffset_SecondaryColor3dvEXT 634 +#define _gloffset_SecondaryColor3fEXT 635 +#define _gloffset_SecondaryColor3fvEXT 636 +#define _gloffset_SecondaryColor3iEXT 637 +#define _gloffset_SecondaryColor3ivEXT 638 +#define _gloffset_SecondaryColor3sEXT 639 +#define _gloffset_SecondaryColor3svEXT 640 +#define _gloffset_SecondaryColor3ubEXT 641 +#define _gloffset_SecondaryColor3ubvEXT 642 +#define _gloffset_SecondaryColor3uiEXT 643 +#define _gloffset_SecondaryColor3uivEXT 644 +#define _gloffset_SecondaryColor3usEXT 645 +#define _gloffset_SecondaryColor3usvEXT 646 +#define _gloffset_SecondaryColorPointerEXT 647 +#define _gloffset_MultiDrawArraysEXT 648 +#define _gloffset_MultiDrawElementsEXT 649 +#define _gloffset_FogCoordPointerEXT 650 +#define _gloffset_FogCoorddEXT 651 +#define _gloffset_FogCoorddvEXT 652 +#define _gloffset_FogCoordfEXT 653 +#define _gloffset_FogCoordfvEXT 654 +#define _gloffset_PixelTexGenSGIX 655 +#define _gloffset_BlendFuncSeparateEXT 656 +#define _gloffset_FlushVertexArrayRangeNV 657 +#define _gloffset_VertexArrayRangeNV 658 +#define _gloffset_CombinerInputNV 659 +#define _gloffset_CombinerOutputNV 660 +#define _gloffset_CombinerParameterfNV 661 +#define _gloffset_CombinerParameterfvNV 662 +#define _gloffset_CombinerParameteriNV 663 +#define _gloffset_CombinerParameterivNV 664 +#define _gloffset_FinalCombinerInputNV 665 +#define _gloffset_GetCombinerInputParameterfvNV 666 +#define _gloffset_GetCombinerInputParameterivNV 667 +#define _gloffset_GetCombinerOutputParameterfvNV 668 +#define _gloffset_GetCombinerOutputParameterivNV 669 +#define _gloffset_GetFinalCombinerInputParameterfvNV 670 +#define _gloffset_GetFinalCombinerInputParameterivNV 671 +#define _gloffset_ResizeBuffersMESA 672 +#define _gloffset_WindowPos2dMESA 673 +#define _gloffset_WindowPos2dvMESA 674 +#define _gloffset_WindowPos2fMESA 675 +#define _gloffset_WindowPos2fvMESA 676 +#define _gloffset_WindowPos2iMESA 677 +#define _gloffset_WindowPos2ivMESA 678 +#define _gloffset_WindowPos2sMESA 679 +#define _gloffset_WindowPos2svMESA 680 +#define _gloffset_WindowPos3dMESA 681 +#define _gloffset_WindowPos3dvMESA 682 +#define _gloffset_WindowPos3fMESA 683 +#define _gloffset_WindowPos3fvMESA 684 +#define _gloffset_WindowPos3iMESA 685 +#define _gloffset_WindowPos3ivMESA 686 +#define _gloffset_WindowPos3sMESA 687 +#define _gloffset_WindowPos3svMESA 688 +#define _gloffset_WindowPos4dMESA 689 +#define _gloffset_WindowPos4dvMESA 690 +#define _gloffset_WindowPos4fMESA 691 +#define _gloffset_WindowPos4fvMESA 692 +#define _gloffset_WindowPos4iMESA 693 +#define _gloffset_WindowPos4ivMESA 694 +#define _gloffset_WindowPos4sMESA 695 +#define _gloffset_WindowPos4svMESA 696 +#define _gloffset_MultiModeDrawArraysIBM 697 +#define _gloffset_MultiModeDrawElementsIBM 698 +#define _gloffset_DeleteFencesNV 699 +#define _gloffset_FinishFenceNV 700 +#define _gloffset_GenFencesNV 701 +#define _gloffset_GetFenceivNV 702 +#define _gloffset_IsFenceNV 703 +#define _gloffset_SetFenceNV 704 +#define _gloffset_TestFenceNV 705 +#define _gloffset_AreProgramsResidentNV 706 +#define _gloffset_BindProgramNV 707 +#define _gloffset_DeleteProgramsNV 708 +#define _gloffset_ExecuteProgramNV 709 +#define _gloffset_GenProgramsNV 710 +#define _gloffset_GetProgramParameterdvNV 711 +#define _gloffset_GetProgramParameterfvNV 712 +#define _gloffset_GetProgramStringNV 713 +#define _gloffset_GetProgramivNV 714 +#define _gloffset_GetTrackMatrixivNV 715 +#define _gloffset_GetVertexAttribPointervNV 716 +#define _gloffset_GetVertexAttribdvNV 717 +#define _gloffset_GetVertexAttribfvNV 718 +#define _gloffset_GetVertexAttribivNV 719 +#define _gloffset_IsProgramNV 720 +#define _gloffset_LoadProgramNV 721 +#define _gloffset_ProgramParameters4dvNV 722 +#define _gloffset_ProgramParameters4fvNV 723 +#define _gloffset_RequestResidentProgramsNV 724 +#define _gloffset_TrackMatrixNV 725 +#define _gloffset_VertexAttrib1dNV 726 +#define _gloffset_VertexAttrib1dvNV 727 +#define _gloffset_VertexAttrib1fNV 728 +#define _gloffset_VertexAttrib1fvNV 729 +#define _gloffset_VertexAttrib1sNV 730 +#define _gloffset_VertexAttrib1svNV 731 +#define _gloffset_VertexAttrib2dNV 732 +#define _gloffset_VertexAttrib2dvNV 733 +#define _gloffset_VertexAttrib2fNV 734 +#define _gloffset_VertexAttrib2fvNV 735 +#define _gloffset_VertexAttrib2sNV 736 +#define _gloffset_VertexAttrib2svNV 737 +#define _gloffset_VertexAttrib3dNV 738 +#define _gloffset_VertexAttrib3dvNV 739 +#define _gloffset_VertexAttrib3fNV 740 +#define _gloffset_VertexAttrib3fvNV 741 +#define _gloffset_VertexAttrib3sNV 742 +#define _gloffset_VertexAttrib3svNV 743 +#define _gloffset_VertexAttrib4dNV 744 +#define _gloffset_VertexAttrib4dvNV 745 +#define _gloffset_VertexAttrib4fNV 746 +#define _gloffset_VertexAttrib4fvNV 747 +#define _gloffset_VertexAttrib4sNV 748 +#define _gloffset_VertexAttrib4svNV 749 +#define _gloffset_VertexAttrib4ubNV 750 +#define _gloffset_VertexAttrib4ubvNV 751 +#define _gloffset_VertexAttribPointerNV 752 +#define _gloffset_VertexAttribs1dvNV 753 +#define _gloffset_VertexAttribs1fvNV 754 +#define _gloffset_VertexAttribs1svNV 755 +#define _gloffset_VertexAttribs2dvNV 756 +#define _gloffset_VertexAttribs2fvNV 757 +#define _gloffset_VertexAttribs2svNV 758 +#define _gloffset_VertexAttribs3dvNV 759 +#define _gloffset_VertexAttribs3fvNV 760 +#define _gloffset_VertexAttribs3svNV 761 +#define _gloffset_VertexAttribs4dvNV 762 +#define _gloffset_VertexAttribs4fvNV 763 +#define _gloffset_VertexAttribs4svNV 764 +#define _gloffset_VertexAttribs4ubvNV 765 +#define _gloffset_GetTexBumpParameterfvATI 766 +#define _gloffset_GetTexBumpParameterivATI 767 +#define _gloffset_TexBumpParameterfvATI 768 +#define _gloffset_TexBumpParameterivATI 769 +#define _gloffset_AlphaFragmentOp1ATI 770 +#define _gloffset_AlphaFragmentOp2ATI 771 +#define _gloffset_AlphaFragmentOp3ATI 772 +#define _gloffset_BeginFragmentShaderATI 773 +#define _gloffset_BindFragmentShaderATI 774 +#define _gloffset_ColorFragmentOp1ATI 775 +#define _gloffset_ColorFragmentOp2ATI 776 +#define _gloffset_ColorFragmentOp3ATI 777 +#define _gloffset_DeleteFragmentShaderATI 778 +#define _gloffset_EndFragmentShaderATI 779 +#define _gloffset_GenFragmentShadersATI 780 +#define _gloffset_PassTexCoordATI 781 +#define _gloffset_SampleMapATI 782 +#define _gloffset_SetFragmentShaderConstantATI 783 +#define _gloffset_PointParameteriNV 784 +#define _gloffset_PointParameterivNV 785 +#define _gloffset_ActiveStencilFaceEXT 786 +#define _gloffset_BindVertexArrayAPPLE 787 +#define _gloffset_DeleteVertexArraysAPPLE 788 +#define _gloffset_GenVertexArraysAPPLE 789 +#define _gloffset_IsVertexArrayAPPLE 790 +#define _gloffset_GetProgramNamedParameterdvNV 791 +#define _gloffset_GetProgramNamedParameterfvNV 792 +#define _gloffset_ProgramNamedParameter4dNV 793 +#define _gloffset_ProgramNamedParameter4dvNV 794 +#define _gloffset_ProgramNamedParameter4fNV 795 +#define _gloffset_ProgramNamedParameter4fvNV 796 +#define _gloffset_PrimitiveRestartIndexNV 797 +#define _gloffset_PrimitiveRestartNV 798 +#define _gloffset_DepthBoundsEXT 799 +#define _gloffset_BlendEquationSeparateEXT 800 +#define _gloffset_BindFramebufferEXT 801 +#define _gloffset_BindRenderbufferEXT 802 +#define _gloffset_CheckFramebufferStatusEXT 803 +#define _gloffset_DeleteFramebuffersEXT 804 +#define _gloffset_DeleteRenderbuffersEXT 805 +#define _gloffset_FramebufferRenderbufferEXT 806 +#define _gloffset_FramebufferTexture1DEXT 807 +#define _gloffset_FramebufferTexture2DEXT 808 +#define _gloffset_FramebufferTexture3DEXT 809 +#define _gloffset_GenFramebuffersEXT 810 +#define _gloffset_GenRenderbuffersEXT 811 +#define _gloffset_GenerateMipmapEXT 812 +#define _gloffset_GetFramebufferAttachmentParameterivEXT 813 +#define _gloffset_GetRenderbufferParameterivEXT 814 +#define _gloffset_IsFramebufferEXT 815 +#define _gloffset_IsRenderbufferEXT 816 +#define _gloffset_RenderbufferStorageEXT 817 +#define _gloffset_BlitFramebufferEXT 818 +#define _gloffset_BufferParameteriAPPLE 819 +#define _gloffset_FlushMappedBufferRangeAPPLE 820 +#define _gloffset_BindFragDataLocationEXT 821 +#define _gloffset_GetFragDataLocationEXT 822 +#define _gloffset_GetUniformuivEXT 823 +#define _gloffset_GetVertexAttribIivEXT 824 +#define _gloffset_GetVertexAttribIuivEXT 825 +#define _gloffset_Uniform1uiEXT 826 +#define _gloffset_Uniform1uivEXT 827 +#define _gloffset_Uniform2uiEXT 828 +#define _gloffset_Uniform2uivEXT 829 +#define _gloffset_Uniform3uiEXT 830 +#define _gloffset_Uniform3uivEXT 831 +#define _gloffset_Uniform4uiEXT 832 +#define _gloffset_Uniform4uivEXT 833 +#define _gloffset_VertexAttribI1iEXT 834 +#define _gloffset_VertexAttribI1ivEXT 835 +#define _gloffset_VertexAttribI1uiEXT 836 +#define _gloffset_VertexAttribI1uivEXT 837 +#define _gloffset_VertexAttribI2iEXT 838 +#define _gloffset_VertexAttribI2ivEXT 839 +#define _gloffset_VertexAttribI2uiEXT 840 +#define _gloffset_VertexAttribI2uivEXT 841 +#define _gloffset_VertexAttribI3iEXT 842 +#define _gloffset_VertexAttribI3ivEXT 843 +#define _gloffset_VertexAttribI3uiEXT 844 +#define _gloffset_VertexAttribI3uivEXT 845 +#define _gloffset_VertexAttribI4bvEXT 846 +#define _gloffset_VertexAttribI4iEXT 847 +#define _gloffset_VertexAttribI4ivEXT 848 +#define _gloffset_VertexAttribI4svEXT 849 +#define _gloffset_VertexAttribI4ubvEXT 850 +#define _gloffset_VertexAttribI4uiEXT 851 +#define _gloffset_VertexAttribI4uivEXT 852 +#define _gloffset_VertexAttribI4usvEXT 853 +#define _gloffset_VertexAttribIPointerEXT 854 +#define _gloffset_FramebufferTextureLayerEXT 855 +#define _gloffset_ColorMaskIndexedEXT 856 +#define _gloffset_DisableIndexedEXT 857 +#define _gloffset_EnableIndexedEXT 858 +#define _gloffset_GetBooleanIndexedvEXT 859 +#define _gloffset_GetIntegerIndexedvEXT 860 +#define _gloffset_IsEnabledIndexedEXT 861 +#define _gloffset_ClearColorIiEXT 862 +#define _gloffset_ClearColorIuiEXT 863 +#define _gloffset_GetTexParameterIivEXT 864 +#define _gloffset_GetTexParameterIuivEXT 865 +#define _gloffset_TexParameterIivEXT 866 +#define _gloffset_TexParameterIuivEXT 867 +#define _gloffset_BeginConditionalRenderNV 868 +#define _gloffset_EndConditionalRenderNV 869 +#define _gloffset_BeginTransformFeedbackEXT 870 +#define _gloffset_BindBufferBaseEXT 871 +#define _gloffset_BindBufferOffsetEXT 872 +#define _gloffset_BindBufferRangeEXT 873 +#define _gloffset_EndTransformFeedbackEXT 874 +#define _gloffset_GetTransformFeedbackVaryingEXT 875 +#define _gloffset_TransformFeedbackVaryingsEXT 876 +#define _gloffset_ProvokingVertexEXT 877 +#define _gloffset_GetTexParameterPointervAPPLE 878 +#define _gloffset_TextureRangeAPPLE 879 +#define _gloffset_GetObjectParameterivAPPLE 880 +#define _gloffset_ObjectPurgeableAPPLE 881 +#define _gloffset_ObjectUnpurgeableAPPLE 882 +#define _gloffset_ActiveProgramEXT 883 +#define _gloffset_CreateShaderProgramEXT 884 +#define _gloffset_UseShaderProgramEXT 885 +#define _gloffset_TextureBarrierNV 886 +#define _gloffset_StencilFuncSeparateATI 887 +#define _gloffset_ProgramEnvParameters4fvEXT 888 +#define _gloffset_ProgramLocalParameters4fvEXT 889 +#define _gloffset_GetQueryObjecti64vEXT 890 +#define _gloffset_GetQueryObjectui64vEXT 891 +#define _gloffset_EGLImageTargetRenderbufferStorageOES 892 +#define _gloffset_EGLImageTargetTexture2DOES 893 #else /* !_GLAPI_USE_REMAP_TABLE */ -#define driDispatchRemapTable_size 485 +#define driDispatchRemapTable_size 486 extern int driDispatchRemapTable[ driDispatchRemapTable_size ]; #define AttachShader_remap_index 0 @@ -1137,317 +1138,318 @@ extern int driDispatchRemapTable[ driDispatchRemapTable_size ]; #define VertexAttribDivisorARB_remap_index 171 #define FlushMappedBufferRange_remap_index 172 #define MapBufferRange_remap_index 173 -#define BindVertexArray_remap_index 174 -#define GenVertexArrays_remap_index 175 -#define CopyBufferSubData_remap_index 176 -#define ClientWaitSync_remap_index 177 -#define DeleteSync_remap_index 178 -#define FenceSync_remap_index 179 -#define GetInteger64v_remap_index 180 -#define GetSynciv_remap_index 181 -#define IsSync_remap_index 182 -#define WaitSync_remap_index 183 -#define DrawElementsBaseVertex_remap_index 184 -#define DrawRangeElementsBaseVertex_remap_index 185 -#define MultiDrawElementsBaseVertex_remap_index 186 -#define BlendEquationSeparateiARB_remap_index 187 -#define BlendEquationiARB_remap_index 188 -#define BlendFuncSeparateiARB_remap_index 189 -#define BlendFunciARB_remap_index 190 -#define BindTransformFeedback_remap_index 191 -#define DeleteTransformFeedbacks_remap_index 192 -#define DrawTransformFeedback_remap_index 193 -#define GenTransformFeedbacks_remap_index 194 -#define IsTransformFeedback_remap_index 195 -#define PauseTransformFeedback_remap_index 196 -#define ResumeTransformFeedback_remap_index 197 -#define ClearDepthf_remap_index 198 -#define DepthRangef_remap_index 199 -#define GetShaderPrecisionFormat_remap_index 200 -#define ReleaseShaderCompiler_remap_index 201 -#define ShaderBinary_remap_index 202 -#define PolygonOffsetEXT_remap_index 203 -#define GetPixelTexGenParameterfvSGIS_remap_index 204 -#define GetPixelTexGenParameterivSGIS_remap_index 205 -#define PixelTexGenParameterfSGIS_remap_index 206 -#define PixelTexGenParameterfvSGIS_remap_index 207 -#define PixelTexGenParameteriSGIS_remap_index 208 -#define PixelTexGenParameterivSGIS_remap_index 209 -#define SampleMaskSGIS_remap_index 210 -#define SamplePatternSGIS_remap_index 211 -#define ColorPointerEXT_remap_index 212 -#define EdgeFlagPointerEXT_remap_index 213 -#define IndexPointerEXT_remap_index 214 -#define NormalPointerEXT_remap_index 215 -#define TexCoordPointerEXT_remap_index 216 -#define VertexPointerEXT_remap_index 217 -#define PointParameterfEXT_remap_index 218 -#define PointParameterfvEXT_remap_index 219 -#define LockArraysEXT_remap_index 220 -#define UnlockArraysEXT_remap_index 221 -#define SecondaryColor3bEXT_remap_index 222 -#define SecondaryColor3bvEXT_remap_index 223 -#define SecondaryColor3dEXT_remap_index 224 -#define SecondaryColor3dvEXT_remap_index 225 -#define SecondaryColor3fEXT_remap_index 226 -#define SecondaryColor3fvEXT_remap_index 227 -#define SecondaryColor3iEXT_remap_index 228 -#define SecondaryColor3ivEXT_remap_index 229 -#define SecondaryColor3sEXT_remap_index 230 -#define SecondaryColor3svEXT_remap_index 231 -#define SecondaryColor3ubEXT_remap_index 232 -#define SecondaryColor3ubvEXT_remap_index 233 -#define SecondaryColor3uiEXT_remap_index 234 -#define SecondaryColor3uivEXT_remap_index 235 -#define SecondaryColor3usEXT_remap_index 236 -#define SecondaryColor3usvEXT_remap_index 237 -#define SecondaryColorPointerEXT_remap_index 238 -#define MultiDrawArraysEXT_remap_index 239 -#define MultiDrawElementsEXT_remap_index 240 -#define FogCoordPointerEXT_remap_index 241 -#define FogCoorddEXT_remap_index 242 -#define FogCoorddvEXT_remap_index 243 -#define FogCoordfEXT_remap_index 244 -#define FogCoordfvEXT_remap_index 245 -#define PixelTexGenSGIX_remap_index 246 -#define BlendFuncSeparateEXT_remap_index 247 -#define FlushVertexArrayRangeNV_remap_index 248 -#define VertexArrayRangeNV_remap_index 249 -#define CombinerInputNV_remap_index 250 -#define CombinerOutputNV_remap_index 251 -#define CombinerParameterfNV_remap_index 252 -#define CombinerParameterfvNV_remap_index 253 -#define CombinerParameteriNV_remap_index 254 -#define CombinerParameterivNV_remap_index 255 -#define FinalCombinerInputNV_remap_index 256 -#define GetCombinerInputParameterfvNV_remap_index 257 -#define GetCombinerInputParameterivNV_remap_index 258 -#define GetCombinerOutputParameterfvNV_remap_index 259 -#define GetCombinerOutputParameterivNV_remap_index 260 -#define GetFinalCombinerInputParameterfvNV_remap_index 261 -#define GetFinalCombinerInputParameterivNV_remap_index 262 -#define ResizeBuffersMESA_remap_index 263 -#define WindowPos2dMESA_remap_index 264 -#define WindowPos2dvMESA_remap_index 265 -#define WindowPos2fMESA_remap_index 266 -#define WindowPos2fvMESA_remap_index 267 -#define WindowPos2iMESA_remap_index 268 -#define WindowPos2ivMESA_remap_index 269 -#define WindowPos2sMESA_remap_index 270 -#define WindowPos2svMESA_remap_index 271 -#define WindowPos3dMESA_remap_index 272 -#define WindowPos3dvMESA_remap_index 273 -#define WindowPos3fMESA_remap_index 274 -#define WindowPos3fvMESA_remap_index 275 -#define WindowPos3iMESA_remap_index 276 -#define WindowPos3ivMESA_remap_index 277 -#define WindowPos3sMESA_remap_index 278 -#define WindowPos3svMESA_remap_index 279 -#define WindowPos4dMESA_remap_index 280 -#define WindowPos4dvMESA_remap_index 281 -#define WindowPos4fMESA_remap_index 282 -#define WindowPos4fvMESA_remap_index 283 -#define WindowPos4iMESA_remap_index 284 -#define WindowPos4ivMESA_remap_index 285 -#define WindowPos4sMESA_remap_index 286 -#define WindowPos4svMESA_remap_index 287 -#define MultiModeDrawArraysIBM_remap_index 288 -#define MultiModeDrawElementsIBM_remap_index 289 -#define DeleteFencesNV_remap_index 290 -#define FinishFenceNV_remap_index 291 -#define GenFencesNV_remap_index 292 -#define GetFenceivNV_remap_index 293 -#define IsFenceNV_remap_index 294 -#define SetFenceNV_remap_index 295 -#define TestFenceNV_remap_index 296 -#define AreProgramsResidentNV_remap_index 297 -#define BindProgramNV_remap_index 298 -#define DeleteProgramsNV_remap_index 299 -#define ExecuteProgramNV_remap_index 300 -#define GenProgramsNV_remap_index 301 -#define GetProgramParameterdvNV_remap_index 302 -#define GetProgramParameterfvNV_remap_index 303 -#define GetProgramStringNV_remap_index 304 -#define GetProgramivNV_remap_index 305 -#define GetTrackMatrixivNV_remap_index 306 -#define GetVertexAttribPointervNV_remap_index 307 -#define GetVertexAttribdvNV_remap_index 308 -#define GetVertexAttribfvNV_remap_index 309 -#define GetVertexAttribivNV_remap_index 310 -#define IsProgramNV_remap_index 311 -#define LoadProgramNV_remap_index 312 -#define ProgramParameters4dvNV_remap_index 313 -#define ProgramParameters4fvNV_remap_index 314 -#define RequestResidentProgramsNV_remap_index 315 -#define TrackMatrixNV_remap_index 316 -#define VertexAttrib1dNV_remap_index 317 -#define VertexAttrib1dvNV_remap_index 318 -#define VertexAttrib1fNV_remap_index 319 -#define VertexAttrib1fvNV_remap_index 320 -#define VertexAttrib1sNV_remap_index 321 -#define VertexAttrib1svNV_remap_index 322 -#define VertexAttrib2dNV_remap_index 323 -#define VertexAttrib2dvNV_remap_index 324 -#define VertexAttrib2fNV_remap_index 325 -#define VertexAttrib2fvNV_remap_index 326 -#define VertexAttrib2sNV_remap_index 327 -#define VertexAttrib2svNV_remap_index 328 -#define VertexAttrib3dNV_remap_index 329 -#define VertexAttrib3dvNV_remap_index 330 -#define VertexAttrib3fNV_remap_index 331 -#define VertexAttrib3fvNV_remap_index 332 -#define VertexAttrib3sNV_remap_index 333 -#define VertexAttrib3svNV_remap_index 334 -#define VertexAttrib4dNV_remap_index 335 -#define VertexAttrib4dvNV_remap_index 336 -#define VertexAttrib4fNV_remap_index 337 -#define VertexAttrib4fvNV_remap_index 338 -#define VertexAttrib4sNV_remap_index 339 -#define VertexAttrib4svNV_remap_index 340 -#define VertexAttrib4ubNV_remap_index 341 -#define VertexAttrib4ubvNV_remap_index 342 -#define VertexAttribPointerNV_remap_index 343 -#define VertexAttribs1dvNV_remap_index 344 -#define VertexAttribs1fvNV_remap_index 345 -#define VertexAttribs1svNV_remap_index 346 -#define VertexAttribs2dvNV_remap_index 347 -#define VertexAttribs2fvNV_remap_index 348 -#define VertexAttribs2svNV_remap_index 349 -#define VertexAttribs3dvNV_remap_index 350 -#define VertexAttribs3fvNV_remap_index 351 -#define VertexAttribs3svNV_remap_index 352 -#define VertexAttribs4dvNV_remap_index 353 -#define VertexAttribs4fvNV_remap_index 354 -#define VertexAttribs4svNV_remap_index 355 -#define VertexAttribs4ubvNV_remap_index 356 -#define GetTexBumpParameterfvATI_remap_index 357 -#define GetTexBumpParameterivATI_remap_index 358 -#define TexBumpParameterfvATI_remap_index 359 -#define TexBumpParameterivATI_remap_index 360 -#define AlphaFragmentOp1ATI_remap_index 361 -#define AlphaFragmentOp2ATI_remap_index 362 -#define AlphaFragmentOp3ATI_remap_index 363 -#define BeginFragmentShaderATI_remap_index 364 -#define BindFragmentShaderATI_remap_index 365 -#define ColorFragmentOp1ATI_remap_index 366 -#define ColorFragmentOp2ATI_remap_index 367 -#define ColorFragmentOp3ATI_remap_index 368 -#define DeleteFragmentShaderATI_remap_index 369 -#define EndFragmentShaderATI_remap_index 370 -#define GenFragmentShadersATI_remap_index 371 -#define PassTexCoordATI_remap_index 372 -#define SampleMapATI_remap_index 373 -#define SetFragmentShaderConstantATI_remap_index 374 -#define PointParameteriNV_remap_index 375 -#define PointParameterivNV_remap_index 376 -#define ActiveStencilFaceEXT_remap_index 377 -#define BindVertexArrayAPPLE_remap_index 378 -#define DeleteVertexArraysAPPLE_remap_index 379 -#define GenVertexArraysAPPLE_remap_index 380 -#define IsVertexArrayAPPLE_remap_index 381 -#define GetProgramNamedParameterdvNV_remap_index 382 -#define GetProgramNamedParameterfvNV_remap_index 383 -#define ProgramNamedParameter4dNV_remap_index 384 -#define ProgramNamedParameter4dvNV_remap_index 385 -#define ProgramNamedParameter4fNV_remap_index 386 -#define ProgramNamedParameter4fvNV_remap_index 387 -#define PrimitiveRestartIndexNV_remap_index 388 -#define PrimitiveRestartNV_remap_index 389 -#define DepthBoundsEXT_remap_index 390 -#define BlendEquationSeparateEXT_remap_index 391 -#define BindFramebufferEXT_remap_index 392 -#define BindRenderbufferEXT_remap_index 393 -#define CheckFramebufferStatusEXT_remap_index 394 -#define DeleteFramebuffersEXT_remap_index 395 -#define DeleteRenderbuffersEXT_remap_index 396 -#define FramebufferRenderbufferEXT_remap_index 397 -#define FramebufferTexture1DEXT_remap_index 398 -#define FramebufferTexture2DEXT_remap_index 399 -#define FramebufferTexture3DEXT_remap_index 400 -#define GenFramebuffersEXT_remap_index 401 -#define GenRenderbuffersEXT_remap_index 402 -#define GenerateMipmapEXT_remap_index 403 -#define GetFramebufferAttachmentParameterivEXT_remap_index 404 -#define GetRenderbufferParameterivEXT_remap_index 405 -#define IsFramebufferEXT_remap_index 406 -#define IsRenderbufferEXT_remap_index 407 -#define RenderbufferStorageEXT_remap_index 408 -#define BlitFramebufferEXT_remap_index 409 -#define BufferParameteriAPPLE_remap_index 410 -#define FlushMappedBufferRangeAPPLE_remap_index 411 -#define BindFragDataLocationEXT_remap_index 412 -#define GetFragDataLocationEXT_remap_index 413 -#define GetUniformuivEXT_remap_index 414 -#define GetVertexAttribIivEXT_remap_index 415 -#define GetVertexAttribIuivEXT_remap_index 416 -#define Uniform1uiEXT_remap_index 417 -#define Uniform1uivEXT_remap_index 418 -#define Uniform2uiEXT_remap_index 419 -#define Uniform2uivEXT_remap_index 420 -#define Uniform3uiEXT_remap_index 421 -#define Uniform3uivEXT_remap_index 422 -#define Uniform4uiEXT_remap_index 423 -#define Uniform4uivEXT_remap_index 424 -#define VertexAttribI1iEXT_remap_index 425 -#define VertexAttribI1ivEXT_remap_index 426 -#define VertexAttribI1uiEXT_remap_index 427 -#define VertexAttribI1uivEXT_remap_index 428 -#define VertexAttribI2iEXT_remap_index 429 -#define VertexAttribI2ivEXT_remap_index 430 -#define VertexAttribI2uiEXT_remap_index 431 -#define VertexAttribI2uivEXT_remap_index 432 -#define VertexAttribI3iEXT_remap_index 433 -#define VertexAttribI3ivEXT_remap_index 434 -#define VertexAttribI3uiEXT_remap_index 435 -#define VertexAttribI3uivEXT_remap_index 436 -#define VertexAttribI4bvEXT_remap_index 437 -#define VertexAttribI4iEXT_remap_index 438 -#define VertexAttribI4ivEXT_remap_index 439 -#define VertexAttribI4svEXT_remap_index 440 -#define VertexAttribI4ubvEXT_remap_index 441 -#define VertexAttribI4uiEXT_remap_index 442 -#define VertexAttribI4uivEXT_remap_index 443 -#define VertexAttribI4usvEXT_remap_index 444 -#define VertexAttribIPointerEXT_remap_index 445 -#define FramebufferTextureLayerEXT_remap_index 446 -#define ColorMaskIndexedEXT_remap_index 447 -#define DisableIndexedEXT_remap_index 448 -#define EnableIndexedEXT_remap_index 449 -#define GetBooleanIndexedvEXT_remap_index 450 -#define GetIntegerIndexedvEXT_remap_index 451 -#define IsEnabledIndexedEXT_remap_index 452 -#define ClearColorIiEXT_remap_index 453 -#define ClearColorIuiEXT_remap_index 454 -#define GetTexParameterIivEXT_remap_index 455 -#define GetTexParameterIuivEXT_remap_index 456 -#define TexParameterIivEXT_remap_index 457 -#define TexParameterIuivEXT_remap_index 458 -#define BeginConditionalRenderNV_remap_index 459 -#define EndConditionalRenderNV_remap_index 460 -#define BeginTransformFeedbackEXT_remap_index 461 -#define BindBufferBaseEXT_remap_index 462 -#define BindBufferOffsetEXT_remap_index 463 -#define BindBufferRangeEXT_remap_index 464 -#define EndTransformFeedbackEXT_remap_index 465 -#define GetTransformFeedbackVaryingEXT_remap_index 466 -#define TransformFeedbackVaryingsEXT_remap_index 467 -#define ProvokingVertexEXT_remap_index 468 -#define GetTexParameterPointervAPPLE_remap_index 469 -#define TextureRangeAPPLE_remap_index 470 -#define GetObjectParameterivAPPLE_remap_index 471 -#define ObjectPurgeableAPPLE_remap_index 472 -#define ObjectUnpurgeableAPPLE_remap_index 473 -#define ActiveProgramEXT_remap_index 474 -#define CreateShaderProgramEXT_remap_index 475 -#define UseShaderProgramEXT_remap_index 476 -#define TextureBarrierNV_remap_index 477 -#define StencilFuncSeparateATI_remap_index 478 -#define ProgramEnvParameters4fvEXT_remap_index 479 -#define ProgramLocalParameters4fvEXT_remap_index 480 -#define GetQueryObjecti64vEXT_remap_index 481 -#define GetQueryObjectui64vEXT_remap_index 482 -#define EGLImageTargetRenderbufferStorageOES_remap_index 483 -#define EGLImageTargetTexture2DOES_remap_index 484 +#define TexBufferARB_remap_index 174 +#define BindVertexArray_remap_index 175 +#define GenVertexArrays_remap_index 176 +#define CopyBufferSubData_remap_index 177 +#define ClientWaitSync_remap_index 178 +#define DeleteSync_remap_index 179 +#define FenceSync_remap_index 180 +#define GetInteger64v_remap_index 181 +#define GetSynciv_remap_index 182 +#define IsSync_remap_index 183 +#define WaitSync_remap_index 184 +#define DrawElementsBaseVertex_remap_index 185 +#define DrawRangeElementsBaseVertex_remap_index 186 +#define MultiDrawElementsBaseVertex_remap_index 187 +#define BlendEquationSeparateiARB_remap_index 188 +#define BlendEquationiARB_remap_index 189 +#define BlendFuncSeparateiARB_remap_index 190 +#define BlendFunciARB_remap_index 191 +#define BindTransformFeedback_remap_index 192 +#define DeleteTransformFeedbacks_remap_index 193 +#define DrawTransformFeedback_remap_index 194 +#define GenTransformFeedbacks_remap_index 195 +#define IsTransformFeedback_remap_index 196 +#define PauseTransformFeedback_remap_index 197 +#define ResumeTransformFeedback_remap_index 198 +#define ClearDepthf_remap_index 199 +#define DepthRangef_remap_index 200 +#define GetShaderPrecisionFormat_remap_index 201 +#define ReleaseShaderCompiler_remap_index 202 +#define ShaderBinary_remap_index 203 +#define PolygonOffsetEXT_remap_index 204 +#define GetPixelTexGenParameterfvSGIS_remap_index 205 +#define GetPixelTexGenParameterivSGIS_remap_index 206 +#define PixelTexGenParameterfSGIS_remap_index 207 +#define PixelTexGenParameterfvSGIS_remap_index 208 +#define PixelTexGenParameteriSGIS_remap_index 209 +#define PixelTexGenParameterivSGIS_remap_index 210 +#define SampleMaskSGIS_remap_index 211 +#define SamplePatternSGIS_remap_index 212 +#define ColorPointerEXT_remap_index 213 +#define EdgeFlagPointerEXT_remap_index 214 +#define IndexPointerEXT_remap_index 215 +#define NormalPointerEXT_remap_index 216 +#define TexCoordPointerEXT_remap_index 217 +#define VertexPointerEXT_remap_index 218 +#define PointParameterfEXT_remap_index 219 +#define PointParameterfvEXT_remap_index 220 +#define LockArraysEXT_remap_index 221 +#define UnlockArraysEXT_remap_index 222 +#define SecondaryColor3bEXT_remap_index 223 +#define SecondaryColor3bvEXT_remap_index 224 +#define SecondaryColor3dEXT_remap_index 225 +#define SecondaryColor3dvEXT_remap_index 226 +#define SecondaryColor3fEXT_remap_index 227 +#define SecondaryColor3fvEXT_remap_index 228 +#define SecondaryColor3iEXT_remap_index 229 +#define SecondaryColor3ivEXT_remap_index 230 +#define SecondaryColor3sEXT_remap_index 231 +#define SecondaryColor3svEXT_remap_index 232 +#define SecondaryColor3ubEXT_remap_index 233 +#define SecondaryColor3ubvEXT_remap_index 234 +#define SecondaryColor3uiEXT_remap_index 235 +#define SecondaryColor3uivEXT_remap_index 236 +#define SecondaryColor3usEXT_remap_index 237 +#define SecondaryColor3usvEXT_remap_index 238 +#define SecondaryColorPointerEXT_remap_index 239 +#define MultiDrawArraysEXT_remap_index 240 +#define MultiDrawElementsEXT_remap_index 241 +#define FogCoordPointerEXT_remap_index 242 +#define FogCoorddEXT_remap_index 243 +#define FogCoorddvEXT_remap_index 244 +#define FogCoordfEXT_remap_index 245 +#define FogCoordfvEXT_remap_index 246 +#define PixelTexGenSGIX_remap_index 247 +#define BlendFuncSeparateEXT_remap_index 248 +#define FlushVertexArrayRangeNV_remap_index 249 +#define VertexArrayRangeNV_remap_index 250 +#define CombinerInputNV_remap_index 251 +#define CombinerOutputNV_remap_index 252 +#define CombinerParameterfNV_remap_index 253 +#define CombinerParameterfvNV_remap_index 254 +#define CombinerParameteriNV_remap_index 255 +#define CombinerParameterivNV_remap_index 256 +#define FinalCombinerInputNV_remap_index 257 +#define GetCombinerInputParameterfvNV_remap_index 258 +#define GetCombinerInputParameterivNV_remap_index 259 +#define GetCombinerOutputParameterfvNV_remap_index 260 +#define GetCombinerOutputParameterivNV_remap_index 261 +#define GetFinalCombinerInputParameterfvNV_remap_index 262 +#define GetFinalCombinerInputParameterivNV_remap_index 263 +#define ResizeBuffersMESA_remap_index 264 +#define WindowPos2dMESA_remap_index 265 +#define WindowPos2dvMESA_remap_index 266 +#define WindowPos2fMESA_remap_index 267 +#define WindowPos2fvMESA_remap_index 268 +#define WindowPos2iMESA_remap_index 269 +#define WindowPos2ivMESA_remap_index 270 +#define WindowPos2sMESA_remap_index 271 +#define WindowPos2svMESA_remap_index 272 +#define WindowPos3dMESA_remap_index 273 +#define WindowPos3dvMESA_remap_index 274 +#define WindowPos3fMESA_remap_index 275 +#define WindowPos3fvMESA_remap_index 276 +#define WindowPos3iMESA_remap_index 277 +#define WindowPos3ivMESA_remap_index 278 +#define WindowPos3sMESA_remap_index 279 +#define WindowPos3svMESA_remap_index 280 +#define WindowPos4dMESA_remap_index 281 +#define WindowPos4dvMESA_remap_index 282 +#define WindowPos4fMESA_remap_index 283 +#define WindowPos4fvMESA_remap_index 284 +#define WindowPos4iMESA_remap_index 285 +#define WindowPos4ivMESA_remap_index 286 +#define WindowPos4sMESA_remap_index 287 +#define WindowPos4svMESA_remap_index 288 +#define MultiModeDrawArraysIBM_remap_index 289 +#define MultiModeDrawElementsIBM_remap_index 290 +#define DeleteFencesNV_remap_index 291 +#define FinishFenceNV_remap_index 292 +#define GenFencesNV_remap_index 293 +#define GetFenceivNV_remap_index 294 +#define IsFenceNV_remap_index 295 +#define SetFenceNV_remap_index 296 +#define TestFenceNV_remap_index 297 +#define AreProgramsResidentNV_remap_index 298 +#define BindProgramNV_remap_index 299 +#define DeleteProgramsNV_remap_index 300 +#define ExecuteProgramNV_remap_index 301 +#define GenProgramsNV_remap_index 302 +#define GetProgramParameterdvNV_remap_index 303 +#define GetProgramParameterfvNV_remap_index 304 +#define GetProgramStringNV_remap_index 305 +#define GetProgramivNV_remap_index 306 +#define GetTrackMatrixivNV_remap_index 307 +#define GetVertexAttribPointervNV_remap_index 308 +#define GetVertexAttribdvNV_remap_index 309 +#define GetVertexAttribfvNV_remap_index 310 +#define GetVertexAttribivNV_remap_index 311 +#define IsProgramNV_remap_index 312 +#define LoadProgramNV_remap_index 313 +#define ProgramParameters4dvNV_remap_index 314 +#define ProgramParameters4fvNV_remap_index 315 +#define RequestResidentProgramsNV_remap_index 316 +#define TrackMatrixNV_remap_index 317 +#define VertexAttrib1dNV_remap_index 318 +#define VertexAttrib1dvNV_remap_index 319 +#define VertexAttrib1fNV_remap_index 320 +#define VertexAttrib1fvNV_remap_index 321 +#define VertexAttrib1sNV_remap_index 322 +#define VertexAttrib1svNV_remap_index 323 +#define VertexAttrib2dNV_remap_index 324 +#define VertexAttrib2dvNV_remap_index 325 +#define VertexAttrib2fNV_remap_index 326 +#define VertexAttrib2fvNV_remap_index 327 +#define VertexAttrib2sNV_remap_index 328 +#define VertexAttrib2svNV_remap_index 329 +#define VertexAttrib3dNV_remap_index 330 +#define VertexAttrib3dvNV_remap_index 331 +#define VertexAttrib3fNV_remap_index 332 +#define VertexAttrib3fvNV_remap_index 333 +#define VertexAttrib3sNV_remap_index 334 +#define VertexAttrib3svNV_remap_index 335 +#define VertexAttrib4dNV_remap_index 336 +#define VertexAttrib4dvNV_remap_index 337 +#define VertexAttrib4fNV_remap_index 338 +#define VertexAttrib4fvNV_remap_index 339 +#define VertexAttrib4sNV_remap_index 340 +#define VertexAttrib4svNV_remap_index 341 +#define VertexAttrib4ubNV_remap_index 342 +#define VertexAttrib4ubvNV_remap_index 343 +#define VertexAttribPointerNV_remap_index 344 +#define VertexAttribs1dvNV_remap_index 345 +#define VertexAttribs1fvNV_remap_index 346 +#define VertexAttribs1svNV_remap_index 347 +#define VertexAttribs2dvNV_remap_index 348 +#define VertexAttribs2fvNV_remap_index 349 +#define VertexAttribs2svNV_remap_index 350 +#define VertexAttribs3dvNV_remap_index 351 +#define VertexAttribs3fvNV_remap_index 352 +#define VertexAttribs3svNV_remap_index 353 +#define VertexAttribs4dvNV_remap_index 354 +#define VertexAttribs4fvNV_remap_index 355 +#define VertexAttribs4svNV_remap_index 356 +#define VertexAttribs4ubvNV_remap_index 357 +#define GetTexBumpParameterfvATI_remap_index 358 +#define GetTexBumpParameterivATI_remap_index 359 +#define TexBumpParameterfvATI_remap_index 360 +#define TexBumpParameterivATI_remap_index 361 +#define AlphaFragmentOp1ATI_remap_index 362 +#define AlphaFragmentOp2ATI_remap_index 363 +#define AlphaFragmentOp3ATI_remap_index 364 +#define BeginFragmentShaderATI_remap_index 365 +#define BindFragmentShaderATI_remap_index 366 +#define ColorFragmentOp1ATI_remap_index 367 +#define ColorFragmentOp2ATI_remap_index 368 +#define ColorFragmentOp3ATI_remap_index 369 +#define DeleteFragmentShaderATI_remap_index 370 +#define EndFragmentShaderATI_remap_index 371 +#define GenFragmentShadersATI_remap_index 372 +#define PassTexCoordATI_remap_index 373 +#define SampleMapATI_remap_index 374 +#define SetFragmentShaderConstantATI_remap_index 375 +#define PointParameteriNV_remap_index 376 +#define PointParameterivNV_remap_index 377 +#define ActiveStencilFaceEXT_remap_index 378 +#define BindVertexArrayAPPLE_remap_index 379 +#define DeleteVertexArraysAPPLE_remap_index 380 +#define GenVertexArraysAPPLE_remap_index 381 +#define IsVertexArrayAPPLE_remap_index 382 +#define GetProgramNamedParameterdvNV_remap_index 383 +#define GetProgramNamedParameterfvNV_remap_index 384 +#define ProgramNamedParameter4dNV_remap_index 385 +#define ProgramNamedParameter4dvNV_remap_index 386 +#define ProgramNamedParameter4fNV_remap_index 387 +#define ProgramNamedParameter4fvNV_remap_index 388 +#define PrimitiveRestartIndexNV_remap_index 389 +#define PrimitiveRestartNV_remap_index 390 +#define DepthBoundsEXT_remap_index 391 +#define BlendEquationSeparateEXT_remap_index 392 +#define BindFramebufferEXT_remap_index 393 +#define BindRenderbufferEXT_remap_index 394 +#define CheckFramebufferStatusEXT_remap_index 395 +#define DeleteFramebuffersEXT_remap_index 396 +#define DeleteRenderbuffersEXT_remap_index 397 +#define FramebufferRenderbufferEXT_remap_index 398 +#define FramebufferTexture1DEXT_remap_index 399 +#define FramebufferTexture2DEXT_remap_index 400 +#define FramebufferTexture3DEXT_remap_index 401 +#define GenFramebuffersEXT_remap_index 402 +#define GenRenderbuffersEXT_remap_index 403 +#define GenerateMipmapEXT_remap_index 404 +#define GetFramebufferAttachmentParameterivEXT_remap_index 405 +#define GetRenderbufferParameterivEXT_remap_index 406 +#define IsFramebufferEXT_remap_index 407 +#define IsRenderbufferEXT_remap_index 408 +#define RenderbufferStorageEXT_remap_index 409 +#define BlitFramebufferEXT_remap_index 410 +#define BufferParameteriAPPLE_remap_index 411 +#define FlushMappedBufferRangeAPPLE_remap_index 412 +#define BindFragDataLocationEXT_remap_index 413 +#define GetFragDataLocationEXT_remap_index 414 +#define GetUniformuivEXT_remap_index 415 +#define GetVertexAttribIivEXT_remap_index 416 +#define GetVertexAttribIuivEXT_remap_index 417 +#define Uniform1uiEXT_remap_index 418 +#define Uniform1uivEXT_remap_index 419 +#define Uniform2uiEXT_remap_index 420 +#define Uniform2uivEXT_remap_index 421 +#define Uniform3uiEXT_remap_index 422 +#define Uniform3uivEXT_remap_index 423 +#define Uniform4uiEXT_remap_index 424 +#define Uniform4uivEXT_remap_index 425 +#define VertexAttribI1iEXT_remap_index 426 +#define VertexAttribI1ivEXT_remap_index 427 +#define VertexAttribI1uiEXT_remap_index 428 +#define VertexAttribI1uivEXT_remap_index 429 +#define VertexAttribI2iEXT_remap_index 430 +#define VertexAttribI2ivEXT_remap_index 431 +#define VertexAttribI2uiEXT_remap_index 432 +#define VertexAttribI2uivEXT_remap_index 433 +#define VertexAttribI3iEXT_remap_index 434 +#define VertexAttribI3ivEXT_remap_index 435 +#define VertexAttribI3uiEXT_remap_index 436 +#define VertexAttribI3uivEXT_remap_index 437 +#define VertexAttribI4bvEXT_remap_index 438 +#define VertexAttribI4iEXT_remap_index 439 +#define VertexAttribI4ivEXT_remap_index 440 +#define VertexAttribI4svEXT_remap_index 441 +#define VertexAttribI4ubvEXT_remap_index 442 +#define VertexAttribI4uiEXT_remap_index 443 +#define VertexAttribI4uivEXT_remap_index 444 +#define VertexAttribI4usvEXT_remap_index 445 +#define VertexAttribIPointerEXT_remap_index 446 +#define FramebufferTextureLayerEXT_remap_index 447 +#define ColorMaskIndexedEXT_remap_index 448 +#define DisableIndexedEXT_remap_index 449 +#define EnableIndexedEXT_remap_index 450 +#define GetBooleanIndexedvEXT_remap_index 451 +#define GetIntegerIndexedvEXT_remap_index 452 +#define IsEnabledIndexedEXT_remap_index 453 +#define ClearColorIiEXT_remap_index 454 +#define ClearColorIuiEXT_remap_index 455 +#define GetTexParameterIivEXT_remap_index 456 +#define GetTexParameterIuivEXT_remap_index 457 +#define TexParameterIivEXT_remap_index 458 +#define TexParameterIuivEXT_remap_index 459 +#define BeginConditionalRenderNV_remap_index 460 +#define EndConditionalRenderNV_remap_index 461 +#define BeginTransformFeedbackEXT_remap_index 462 +#define BindBufferBaseEXT_remap_index 463 +#define BindBufferOffsetEXT_remap_index 464 +#define BindBufferRangeEXT_remap_index 465 +#define EndTransformFeedbackEXT_remap_index 466 +#define GetTransformFeedbackVaryingEXT_remap_index 467 +#define TransformFeedbackVaryingsEXT_remap_index 468 +#define ProvokingVertexEXT_remap_index 469 +#define GetTexParameterPointervAPPLE_remap_index 470 +#define TextureRangeAPPLE_remap_index 471 +#define GetObjectParameterivAPPLE_remap_index 472 +#define ObjectPurgeableAPPLE_remap_index 473 +#define ObjectUnpurgeableAPPLE_remap_index 474 +#define ActiveProgramEXT_remap_index 475 +#define CreateShaderProgramEXT_remap_index 476 +#define UseShaderProgramEXT_remap_index 477 +#define TextureBarrierNV_remap_index 478 +#define StencilFuncSeparateATI_remap_index 479 +#define ProgramEnvParameters4fvEXT_remap_index 480 +#define ProgramLocalParameters4fvEXT_remap_index 481 +#define GetQueryObjecti64vEXT_remap_index 482 +#define GetQueryObjectui64vEXT_remap_index 483 +#define EGLImageTargetRenderbufferStorageOES_remap_index 484 +#define EGLImageTargetTexture2DOES_remap_index 485 #define _gloffset_AttachShader driDispatchRemapTable[AttachShader_remap_index] #define _gloffset_CreateProgram driDispatchRemapTable[CreateProgram_remap_index] @@ -1623,6 +1625,7 @@ extern int driDispatchRemapTable[ driDispatchRemapTable_size ]; #define _gloffset_VertexAttribDivisorARB driDispatchRemapTable[VertexAttribDivisorARB_remap_index] #define _gloffset_FlushMappedBufferRange driDispatchRemapTable[FlushMappedBufferRange_remap_index] #define _gloffset_MapBufferRange driDispatchRemapTable[MapBufferRange_remap_index] +#define _gloffset_TexBufferARB driDispatchRemapTable[TexBufferARB_remap_index] #define _gloffset_BindVertexArray driDispatchRemapTable[BindVertexArray_remap_index] #define _gloffset_GenVertexArrays driDispatchRemapTable[GenVertexArrays_remap_index] #define _gloffset_CopyBufferSubData driDispatchRemapTable[CopyBufferSubData_remap_index] @@ -3683,6 +3686,9 @@ extern int driDispatchRemapTable[ driDispatchRemapTable_size ]; #define CALL_MapBufferRange(disp, parameters) CALL_by_offset(disp, (GLvoid * (GLAPIENTRYP)(GLenum, GLintptr, GLsizeiptr, GLbitfield)), _gloffset_MapBufferRange, parameters) #define GET_MapBufferRange(disp) GET_by_offset(disp, _gloffset_MapBufferRange) #define SET_MapBufferRange(disp, fn) SET_by_offset(disp, _gloffset_MapBufferRange, fn) +#define CALL_TexBufferARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLuint)), _gloffset_TexBufferARB, parameters) +#define GET_TexBufferARB(disp) GET_by_offset(disp, _gloffset_TexBufferARB) +#define SET_TexBufferARB(disp, fn) SET_by_offset(disp, _gloffset_TexBufferARB, fn) #define CALL_BindVertexArray(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), _gloffset_BindVertexArray, parameters) #define GET_BindVertexArray(disp) GET_by_offset(disp, _gloffset_BindVertexArray) #define SET_BindVertexArray(disp, fn) SET_by_offset(disp, _gloffset_BindVertexArray, fn) diff --git a/src/mesa/main/remap_helper.h b/src/mesa/main/remap_helper.h index 637905ab43c..598e805d05d 100644 --- a/src/mesa/main/remap_helper.h +++ b/src/mesa/main/remap_helper.h @@ -70,4714 +70,4718 @@ static const char _mesa_function_pool[] = "\0" "glLoadIdentity\0" "\0" - /* _mesa_function_pool[216]: GetCombinerOutputParameterfvNV (will be remapped) */ - "iiip\0" - "glGetCombinerOutputParameterfvNV\0" - "\0" - /* _mesa_function_pool[255]: SampleCoverageARB (will be remapped) */ + /* _mesa_function_pool[216]: SampleCoverageARB (will be remapped) */ "fi\0" "glSampleCoverage\0" "glSampleCoverageARB\0" "\0" - /* _mesa_function_pool[296]: ConvolutionFilter1D (offset 348) */ + /* _mesa_function_pool[257]: ConvolutionFilter1D (offset 348) */ "iiiiip\0" "glConvolutionFilter1D\0" "glConvolutionFilter1DEXT\0" "\0" - /* _mesa_function_pool[351]: BeginQueryARB (will be remapped) */ + /* _mesa_function_pool[312]: BeginQueryARB (will be remapped) */ "ii\0" "glBeginQuery\0" "glBeginQueryARB\0" "\0" - /* _mesa_function_pool[384]: RasterPos3dv (offset 71) */ + /* _mesa_function_pool[345]: RasterPos3dv (offset 71) */ "p\0" "glRasterPos3dv\0" "\0" - /* _mesa_function_pool[402]: PointParameteriNV (will be remapped) */ + /* _mesa_function_pool[363]: PointParameteriNV (will be remapped) */ "ii\0" "glPointParameteri\0" "glPointParameteriNV\0" "\0" - /* _mesa_function_pool[444]: GetProgramiv (will be remapped) */ + /* _mesa_function_pool[405]: GetProgramiv (will be remapped) */ "iip\0" "glGetProgramiv\0" "\0" - /* _mesa_function_pool[464]: MultiTexCoord3sARB (offset 398) */ + /* _mesa_function_pool[425]: MultiTexCoord3sARB (offset 398) */ "iiii\0" "glMultiTexCoord3s\0" "glMultiTexCoord3sARB\0" "\0" - /* _mesa_function_pool[509]: SecondaryColor3iEXT (will be remapped) */ + /* _mesa_function_pool[470]: SecondaryColor3iEXT (will be remapped) */ "iii\0" "glSecondaryColor3i\0" "glSecondaryColor3iEXT\0" "\0" - /* _mesa_function_pool[555]: WindowPos3fMESA (will be remapped) */ + /* _mesa_function_pool[516]: WindowPos3fMESA (will be remapped) */ "fff\0" "glWindowPos3f\0" "glWindowPos3fARB\0" "glWindowPos3fMESA\0" "\0" - /* _mesa_function_pool[609]: TexCoord1iv (offset 99) */ + /* _mesa_function_pool[570]: TexCoord1iv (offset 99) */ "p\0" "glTexCoord1iv\0" "\0" - /* _mesa_function_pool[626]: TexCoord4sv (offset 125) */ + /* _mesa_function_pool[587]: TexCoord4sv (offset 125) */ "p\0" "glTexCoord4sv\0" "\0" - /* _mesa_function_pool[643]: RasterPos4s (offset 84) */ + /* _mesa_function_pool[604]: RasterPos4s (offset 84) */ "iiii\0" "glRasterPos4s\0" "\0" - /* _mesa_function_pool[663]: PixelTexGenParameterfvSGIS (will be remapped) */ + /* _mesa_function_pool[624]: PixelTexGenParameterfvSGIS (will be remapped) */ "ip\0" "glPixelTexGenParameterfvSGIS\0" "\0" - /* _mesa_function_pool[696]: ActiveTextureARB (offset 374) */ + /* _mesa_function_pool[657]: ActiveTextureARB (offset 374) */ "i\0" "glActiveTexture\0" "glActiveTextureARB\0" "\0" - /* _mesa_function_pool[734]: BlitFramebufferEXT (will be remapped) */ + /* _mesa_function_pool[695]: BlitFramebufferEXT (will be remapped) */ "iiiiiiiiii\0" "glBlitFramebuffer\0" "glBlitFramebufferEXT\0" "\0" - /* _mesa_function_pool[785]: TexCoord1f (offset 96) */ + /* _mesa_function_pool[746]: TexCoord1f (offset 96) */ "f\0" "glTexCoord1f\0" "\0" - /* _mesa_function_pool[801]: TexCoord1d (offset 94) */ + /* _mesa_function_pool[762]: TexCoord1d (offset 94) */ "d\0" "glTexCoord1d\0" "\0" - /* _mesa_function_pool[817]: VertexAttrib4ubvNV (will be remapped) */ + /* _mesa_function_pool[778]: VertexAttrib4ubvNV (will be remapped) */ "ip\0" "glVertexAttrib4ubvNV\0" "\0" - /* _mesa_function_pool[842]: TexCoord1i (offset 98) */ + /* _mesa_function_pool[803]: TexCoord1i (offset 98) */ "i\0" "glTexCoord1i\0" "\0" - /* _mesa_function_pool[858]: GetProgramNamedParameterdvNV (will be remapped) */ + /* _mesa_function_pool[819]: GetProgramNamedParameterdvNV (will be remapped) */ "iipp\0" "glGetProgramNamedParameterdvNV\0" "\0" - /* _mesa_function_pool[895]: Histogram (offset 367) */ + /* _mesa_function_pool[856]: Histogram (offset 367) */ "iiii\0" "glHistogram\0" "glHistogramEXT\0" "\0" - /* _mesa_function_pool[928]: TexCoord1s (offset 100) */ + /* _mesa_function_pool[889]: TexCoord1s (offset 100) */ "i\0" "glTexCoord1s\0" "\0" - /* _mesa_function_pool[944]: GetMapfv (offset 267) */ + /* _mesa_function_pool[905]: GetMapfv (offset 267) */ "iip\0" "glGetMapfv\0" "\0" - /* _mesa_function_pool[960]: EvalCoord1f (offset 230) */ + /* _mesa_function_pool[921]: EvalCoord1f (offset 230) */ "f\0" "glEvalCoord1f\0" "\0" - /* _mesa_function_pool[977]: FramebufferTexture (will be remapped) */ + /* _mesa_function_pool[938]: FramebufferTexture (will be remapped) */ "iiii\0" "glFramebufferTexture\0" "\0" - /* _mesa_function_pool[1004]: VertexAttribI1ivEXT (will be remapped) */ + /* _mesa_function_pool[965]: VertexAttribI1ivEXT (will be remapped) */ "ip\0" "glVertexAttribI1ivEXT\0" "glVertexAttribI1iv\0" "\0" - /* _mesa_function_pool[1049]: TexImage4DSGIS (dynamic) */ + /* _mesa_function_pool[1010]: TexImage4DSGIS (dynamic) */ "iiiiiiiiiip\0" "glTexImage4DSGIS\0" "\0" - /* _mesa_function_pool[1079]: PolygonStipple (offset 175) */ + /* _mesa_function_pool[1040]: PolygonStipple (offset 175) */ "p\0" "glPolygonStipple\0" "\0" - /* _mesa_function_pool[1099]: WindowPos2dvMESA (will be remapped) */ + /* _mesa_function_pool[1060]: WindowPos2dvMESA (will be remapped) */ "p\0" "glWindowPos2dv\0" "glWindowPos2dvARB\0" "glWindowPos2dvMESA\0" "\0" - /* _mesa_function_pool[1154]: ReplacementCodeuiColor3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[1115]: ReplacementCodeuiColor3fVertex3fvSUN (dynamic) */ "ppp\0" "glReplacementCodeuiColor3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[1198]: BlendEquationSeparateEXT (will be remapped) */ + /* _mesa_function_pool[1159]: BlendEquationSeparateEXT (will be remapped) */ "ii\0" "glBlendEquationSeparate\0" "glBlendEquationSeparateEXT\0" "glBlendEquationSeparateATI\0" "\0" - /* _mesa_function_pool[1280]: ListParameterfSGIX (dynamic) */ + /* _mesa_function_pool[1241]: ListParameterfSGIX (dynamic) */ "iif\0" "glListParameterfSGIX\0" "\0" - /* _mesa_function_pool[1306]: SecondaryColor3bEXT (will be remapped) */ + /* _mesa_function_pool[1267]: SecondaryColor3bEXT (will be remapped) */ "iii\0" "glSecondaryColor3b\0" "glSecondaryColor3bEXT\0" "\0" - /* _mesa_function_pool[1352]: TexCoord4fColor4fNormal3fVertex4fvSUN (dynamic) */ + /* _mesa_function_pool[1313]: TexCoord4fColor4fNormal3fVertex4fvSUN (dynamic) */ "pppp\0" "glTexCoord4fColor4fNormal3fVertex4fvSUN\0" "\0" - /* _mesa_function_pool[1398]: GetPixelMapfv (offset 271) */ + /* _mesa_function_pool[1359]: GetPixelMapfv (offset 271) */ "ip\0" "glGetPixelMapfv\0" "\0" - /* _mesa_function_pool[1418]: Color3uiv (offset 22) */ + /* _mesa_function_pool[1379]: Color3uiv (offset 22) */ "p\0" "glColor3uiv\0" "\0" - /* _mesa_function_pool[1433]: IsEnabled (offset 286) */ + /* _mesa_function_pool[1394]: IsEnabled (offset 286) */ "i\0" "glIsEnabled\0" "\0" - /* _mesa_function_pool[1448]: VertexAttrib4svNV (will be remapped) */ + /* _mesa_function_pool[1409]: VertexAttrib4svNV (will be remapped) */ "ip\0" "glVertexAttrib4svNV\0" "\0" - /* _mesa_function_pool[1472]: EvalCoord2fv (offset 235) */ + /* _mesa_function_pool[1433]: EvalCoord2fv (offset 235) */ "p\0" "glEvalCoord2fv\0" "\0" - /* _mesa_function_pool[1490]: GetBufferSubDataARB (will be remapped) */ + /* _mesa_function_pool[1451]: GetBufferSubDataARB (will be remapped) */ "iiip\0" "glGetBufferSubData\0" "glGetBufferSubDataARB\0" "\0" - /* _mesa_function_pool[1537]: BufferSubDataARB (will be remapped) */ + /* _mesa_function_pool[1498]: BufferSubDataARB (will be remapped) */ "iiip\0" "glBufferSubData\0" "glBufferSubDataARB\0" "\0" - /* _mesa_function_pool[1578]: TexCoord2fColor4ubVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[1539]: TexCoord2fColor4ubVertex3fvSUN (dynamic) */ "ppp\0" "glTexCoord2fColor4ubVertex3fvSUN\0" "\0" - /* _mesa_function_pool[1616]: AttachShader (will be remapped) */ + /* _mesa_function_pool[1577]: AttachShader (will be remapped) */ "ii\0" "glAttachShader\0" "\0" - /* _mesa_function_pool[1635]: VertexAttrib2fARB (will be remapped) */ + /* _mesa_function_pool[1596]: VertexAttrib2fARB (will be remapped) */ "iff\0" "glVertexAttrib2f\0" "glVertexAttrib2fARB\0" "\0" - /* _mesa_function_pool[1677]: GetDebugLogLengthMESA (dynamic) */ + /* _mesa_function_pool[1638]: GetDebugLogLengthMESA (dynamic) */ "iii\0" "glGetDebugLogLengthMESA\0" "\0" - /* _mesa_function_pool[1706]: GetMapiv (offset 268) */ + /* _mesa_function_pool[1667]: GetMapiv (offset 268) */ "iip\0" "glGetMapiv\0" "\0" - /* _mesa_function_pool[1722]: VertexAttrib3fARB (will be remapped) */ + /* _mesa_function_pool[1683]: VertexAttrib3fARB (will be remapped) */ "ifff\0" "glVertexAttrib3f\0" "glVertexAttrib3fARB\0" "\0" - /* _mesa_function_pool[1765]: Indexubv (offset 316) */ + /* _mesa_function_pool[1726]: Indexubv (offset 316) */ "p\0" "glIndexubv\0" "\0" - /* _mesa_function_pool[1779]: GetQueryivARB (will be remapped) */ + /* _mesa_function_pool[1740]: GetQueryivARB (will be remapped) */ "iip\0" "glGetQueryiv\0" "glGetQueryivARB\0" "\0" - /* _mesa_function_pool[1813]: TexImage3D (offset 371) */ + /* _mesa_function_pool[1774]: TexImage3D (offset 371) */ "iiiiiiiiip\0" "glTexImage3D\0" "glTexImage3DEXT\0" "\0" - /* _mesa_function_pool[1854]: BindFragDataLocationEXT (will be remapped) */ + /* _mesa_function_pool[1815]: BindFragDataLocationEXT (will be remapped) */ "iip\0" "glBindFragDataLocationEXT\0" "glBindFragDataLocation\0" "\0" - /* _mesa_function_pool[1908]: ReplacementCodeuiVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[1869]: ReplacementCodeuiVertex3fvSUN (dynamic) */ "pp\0" "glReplacementCodeuiVertex3fvSUN\0" "\0" - /* _mesa_function_pool[1944]: EdgeFlagPointer (offset 312) */ + /* _mesa_function_pool[1905]: EdgeFlagPointer (offset 312) */ "ip\0" "glEdgeFlagPointer\0" "\0" - /* _mesa_function_pool[1966]: Color3ubv (offset 20) */ + /* _mesa_function_pool[1927]: Color3ubv (offset 20) */ "p\0" "glColor3ubv\0" "\0" - /* _mesa_function_pool[1981]: GetQueryObjectivARB (will be remapped) */ + /* _mesa_function_pool[1942]: GetQueryObjectivARB (will be remapped) */ "iip\0" "glGetQueryObjectiv\0" "glGetQueryObjectivARB\0" "\0" - /* _mesa_function_pool[2027]: Vertex3dv (offset 135) */ + /* _mesa_function_pool[1988]: Vertex3dv (offset 135) */ "p\0" "glVertex3dv\0" "\0" - /* _mesa_function_pool[2042]: ReplacementCodeuiTexCoord2fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[2003]: ReplacementCodeuiTexCoord2fVertex3fvSUN (dynamic) */ "ppp\0" "glReplacementCodeuiTexCoord2fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[2089]: CompressedTexSubImage2DARB (will be remapped) */ + /* _mesa_function_pool[2050]: CompressedTexSubImage2DARB (will be remapped) */ "iiiiiiiip\0" "glCompressedTexSubImage2D\0" "glCompressedTexSubImage2DARB\0" "\0" - /* _mesa_function_pool[2155]: CombinerOutputNV (will be remapped) */ + /* _mesa_function_pool[2116]: CombinerOutputNV (will be remapped) */ "iiiiiiiiii\0" "glCombinerOutputNV\0" "\0" - /* _mesa_function_pool[2186]: VertexAttribs3fvNV (will be remapped) */ + /* _mesa_function_pool[2147]: VertexAttribs3fvNV (will be remapped) */ "iip\0" "glVertexAttribs3fvNV\0" "\0" - /* _mesa_function_pool[2212]: Uniform2fARB (will be remapped) */ + /* _mesa_function_pool[2173]: Uniform2fARB (will be remapped) */ "iff\0" "glUniform2f\0" "glUniform2fARB\0" "\0" - /* _mesa_function_pool[2244]: LightModeliv (offset 166) */ + /* _mesa_function_pool[2205]: LightModeliv (offset 166) */ "ip\0" "glLightModeliv\0" "\0" - /* _mesa_function_pool[2263]: VertexAttrib1svARB (will be remapped) */ + /* _mesa_function_pool[2224]: VertexAttrib1svARB (will be remapped) */ "ip\0" "glVertexAttrib1sv\0" "glVertexAttrib1svARB\0" "\0" - /* _mesa_function_pool[2306]: VertexAttribs1dvNV (will be remapped) */ + /* _mesa_function_pool[2267]: VertexAttribs1dvNV (will be remapped) */ "iip\0" "glVertexAttribs1dvNV\0" "\0" - /* _mesa_function_pool[2332]: Uniform2ivARB (will be remapped) */ + /* _mesa_function_pool[2293]: Uniform2ivARB (will be remapped) */ "iip\0" "glUniform2iv\0" "glUniform2ivARB\0" "\0" - /* _mesa_function_pool[2366]: GetImageTransformParameterfvHP (dynamic) */ + /* _mesa_function_pool[2327]: GetImageTransformParameterfvHP (dynamic) */ "iip\0" "glGetImageTransformParameterfvHP\0" "\0" - /* _mesa_function_pool[2404]: Normal3bv (offset 53) */ + /* _mesa_function_pool[2365]: Normal3bv (offset 53) */ "p\0" "glNormal3bv\0" "\0" - /* _mesa_function_pool[2419]: TexGeniv (offset 193) */ + /* _mesa_function_pool[2380]: TexGeniv (offset 193) */ "iip\0" "glTexGeniv\0" "\0" - /* _mesa_function_pool[2435]: WeightubvARB (dynamic) */ + /* _mesa_function_pool[2396]: WeightubvARB (dynamic) */ "ip\0" "glWeightubvARB\0" "\0" - /* _mesa_function_pool[2454]: VertexAttrib1fvNV (will be remapped) */ + /* _mesa_function_pool[2415]: VertexAttrib1fvNV (will be remapped) */ "ip\0" "glVertexAttrib1fvNV\0" "\0" - /* _mesa_function_pool[2478]: Vertex3iv (offset 139) */ + /* _mesa_function_pool[2439]: Vertex3iv (offset 139) */ "p\0" "glVertex3iv\0" "\0" - /* _mesa_function_pool[2493]: CopyConvolutionFilter1D (offset 354) */ + /* _mesa_function_pool[2454]: CopyConvolutionFilter1D (offset 354) */ "iiiii\0" "glCopyConvolutionFilter1D\0" "glCopyConvolutionFilter1DEXT\0" "\0" - /* _mesa_function_pool[2555]: VertexAttribI1uiEXT (will be remapped) */ + /* _mesa_function_pool[2516]: VertexAttribI1uiEXT (will be remapped) */ "ii\0" "glVertexAttribI1uiEXT\0" "glVertexAttribI1ui\0" "\0" - /* _mesa_function_pool[2600]: ReplacementCodeuiNormal3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[2561]: ReplacementCodeuiNormal3fVertex3fSUN (dynamic) */ "iffffff\0" "glReplacementCodeuiNormal3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[2648]: DeleteSync (will be remapped) */ + /* _mesa_function_pool[2609]: DeleteSync (will be remapped) */ "i\0" "glDeleteSync\0" "\0" - /* _mesa_function_pool[2664]: FragmentMaterialfvSGIX (dynamic) */ + /* _mesa_function_pool[2625]: FragmentMaterialfvSGIX (dynamic) */ "iip\0" "glFragmentMaterialfvSGIX\0" "\0" - /* _mesa_function_pool[2694]: BlendColor (offset 336) */ + /* _mesa_function_pool[2655]: BlendColor (offset 336) */ "ffff\0" "glBlendColor\0" "glBlendColorEXT\0" "\0" - /* _mesa_function_pool[2729]: UniformMatrix4fvARB (will be remapped) */ + /* _mesa_function_pool[2690]: UniformMatrix4fvARB (will be remapped) */ "iiip\0" "glUniformMatrix4fv\0" "glUniformMatrix4fvARB\0" "\0" - /* _mesa_function_pool[2776]: DeleteVertexArraysAPPLE (will be remapped) */ + /* _mesa_function_pool[2737]: DeleteVertexArraysAPPLE (will be remapped) */ "ip\0" "glDeleteVertexArrays\0" "glDeleteVertexArraysAPPLE\0" "\0" - /* _mesa_function_pool[2827]: TexBuffer (will be remapped) */ + /* _mesa_function_pool[2788]: TexBuffer (will be remapped) */ "iii\0" "glTexBuffer\0" "\0" - /* _mesa_function_pool[2844]: ReadInstrumentsSGIX (dynamic) */ + /* _mesa_function_pool[2805]: ReadInstrumentsSGIX (dynamic) */ "i\0" "glReadInstrumentsSGIX\0" "\0" - /* _mesa_function_pool[2869]: CallLists (offset 3) */ + /* _mesa_function_pool[2830]: CallLists (offset 3) */ "iip\0" "glCallLists\0" "\0" - /* _mesa_function_pool[2886]: UniformMatrix2x4fv (will be remapped) */ + /* _mesa_function_pool[2847]: UniformMatrix2x4fv (will be remapped) */ "iiip\0" "glUniformMatrix2x4fv\0" "\0" - /* _mesa_function_pool[2913]: Color4ubVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[2874]: Color4ubVertex3fvSUN (dynamic) */ "pp\0" "glColor4ubVertex3fvSUN\0" "\0" - /* _mesa_function_pool[2940]: Normal3iv (offset 59) */ + /* _mesa_function_pool[2901]: Normal3iv (offset 59) */ "p\0" "glNormal3iv\0" "\0" - /* _mesa_function_pool[2955]: PassThrough (offset 199) */ + /* _mesa_function_pool[2916]: PassThrough (offset 199) */ "f\0" "glPassThrough\0" "\0" - /* _mesa_function_pool[2972]: GetVertexAttribIivEXT (will be remapped) */ + /* _mesa_function_pool[2933]: GetVertexAttribIivEXT (will be remapped) */ "iip\0" "glGetVertexAttribIivEXT\0" "glGetVertexAttribIiv\0" "\0" - /* _mesa_function_pool[3022]: TexParameterIivEXT (will be remapped) */ + /* _mesa_function_pool[2983]: TexParameterIivEXT (will be remapped) */ "iip\0" "glTexParameterIivEXT\0" "glTexParameterIiv\0" "\0" - /* _mesa_function_pool[3066]: FramebufferTextureLayerEXT (will be remapped) */ + /* _mesa_function_pool[3027]: FramebufferTextureLayerEXT (will be remapped) */ "iiiii\0" "glFramebufferTextureLayer\0" "glFramebufferTextureLayerEXT\0" "\0" - /* _mesa_function_pool[3128]: GetListParameterfvSGIX (dynamic) */ + /* _mesa_function_pool[3089]: GetListParameterfvSGIX (dynamic) */ "iip\0" "glGetListParameterfvSGIX\0" "\0" - /* _mesa_function_pool[3158]: Viewport (offset 305) */ + /* _mesa_function_pool[3119]: Viewport (offset 305) */ "iiii\0" "glViewport\0" "\0" - /* _mesa_function_pool[3175]: VertexAttrib4NusvARB (will be remapped) */ + /* _mesa_function_pool[3136]: VertexAttrib4NusvARB (will be remapped) */ "ip\0" "glVertexAttrib4Nusv\0" "glVertexAttrib4NusvARB\0" "\0" - /* _mesa_function_pool[3222]: WindowPos4svMESA (will be remapped) */ + /* _mesa_function_pool[3183]: WindowPos4svMESA (will be remapped) */ "p\0" "glWindowPos4svMESA\0" "\0" - /* _mesa_function_pool[3244]: CreateProgramObjectARB (will be remapped) */ + /* _mesa_function_pool[3205]: CreateProgramObjectARB (will be remapped) */ "\0" "glCreateProgramObjectARB\0" "\0" - /* _mesa_function_pool[3271]: DeleteTransformFeedbacks (will be remapped) */ + /* _mesa_function_pool[3232]: DeleteTransformFeedbacks (will be remapped) */ "ip\0" "glDeleteTransformFeedbacks\0" "\0" - /* _mesa_function_pool[3302]: UniformMatrix4x3fv (will be remapped) */ + /* _mesa_function_pool[3263]: UniformMatrix4x3fv (will be remapped) */ "iiip\0" "glUniformMatrix4x3fv\0" "\0" - /* _mesa_function_pool[3329]: PrioritizeTextures (offset 331) */ + /* _mesa_function_pool[3290]: PrioritizeTextures (offset 331) */ "ipp\0" "glPrioritizeTextures\0" "glPrioritizeTexturesEXT\0" "\0" - /* _mesa_function_pool[3379]: VertexAttribI3uiEXT (will be remapped) */ + /* _mesa_function_pool[3340]: VertexAttribI3uiEXT (will be remapped) */ "iiii\0" "glVertexAttribI3uiEXT\0" "glVertexAttribI3ui\0" "\0" - /* _mesa_function_pool[3426]: AsyncMarkerSGIX (dynamic) */ + /* _mesa_function_pool[3387]: AsyncMarkerSGIX (dynamic) */ "i\0" "glAsyncMarkerSGIX\0" "\0" - /* _mesa_function_pool[3447]: GlobalAlphaFactorubSUN (dynamic) */ + /* _mesa_function_pool[3408]: GlobalAlphaFactorubSUN (dynamic) */ "i\0" "glGlobalAlphaFactorubSUN\0" "\0" - /* _mesa_function_pool[3475]: ClearColorIuiEXT (will be remapped) */ + /* _mesa_function_pool[3436]: ClearColorIuiEXT (will be remapped) */ "iiii\0" "glClearColorIuiEXT\0" "\0" - /* _mesa_function_pool[3500]: ClearDebugLogMESA (dynamic) */ + /* _mesa_function_pool[3461]: ClearDebugLogMESA (dynamic) */ "iii\0" "glClearDebugLogMESA\0" "\0" - /* _mesa_function_pool[3525]: Uniform4uiEXT (will be remapped) */ + /* _mesa_function_pool[3486]: Uniform4uiEXT (will be remapped) */ "iiiii\0" "glUniform4uiEXT\0" "glUniform4ui\0" "\0" - /* _mesa_function_pool[3561]: ResetHistogram (offset 369) */ + /* _mesa_function_pool[3522]: ResetHistogram (offset 369) */ "i\0" "glResetHistogram\0" "glResetHistogramEXT\0" "\0" - /* _mesa_function_pool[3601]: GetProgramNamedParameterfvNV (will be remapped) */ + /* _mesa_function_pool[3562]: GetProgramNamedParameterfvNV (will be remapped) */ "iipp\0" "glGetProgramNamedParameterfvNV\0" "\0" - /* _mesa_function_pool[3638]: PointParameterfEXT (will be remapped) */ + /* _mesa_function_pool[3599]: PointParameterfEXT (will be remapped) */ "if\0" "glPointParameterf\0" "glPointParameterfARB\0" "glPointParameterfEXT\0" "glPointParameterfSGIS\0" "\0" - /* _mesa_function_pool[3724]: LoadIdentityDeformationMapSGIX (dynamic) */ + /* _mesa_function_pool[3685]: LoadIdentityDeformationMapSGIX (dynamic) */ "i\0" "glLoadIdentityDeformationMapSGIX\0" "\0" - /* _mesa_function_pool[3760]: GenFencesNV (will be remapped) */ + /* _mesa_function_pool[3721]: GenFencesNV (will be remapped) */ "ip\0" "glGenFencesNV\0" "\0" - /* _mesa_function_pool[3778]: ImageTransformParameterfHP (dynamic) */ + /* _mesa_function_pool[3739]: ImageTransformParameterfHP (dynamic) */ "iif\0" "glImageTransformParameterfHP\0" "\0" - /* _mesa_function_pool[3812]: MatrixIndexusvARB (dynamic) */ + /* _mesa_function_pool[3773]: MatrixIndexusvARB (dynamic) */ "ip\0" "glMatrixIndexusvARB\0" "\0" - /* _mesa_function_pool[3836]: DrawElementsBaseVertex (will be remapped) */ + /* _mesa_function_pool[3797]: DrawElementsBaseVertex (will be remapped) */ "iiipi\0" "glDrawElementsBaseVertex\0" "\0" - /* _mesa_function_pool[3868]: DisableVertexAttribArrayARB (will be remapped) */ + /* _mesa_function_pool[3829]: DisableVertexAttribArrayARB (will be remapped) */ "i\0" "glDisableVertexAttribArray\0" "glDisableVertexAttribArrayARB\0" "\0" - /* _mesa_function_pool[3928]: TexCoord2sv (offset 109) */ + /* _mesa_function_pool[3889]: TexCoord2sv (offset 109) */ "p\0" "glTexCoord2sv\0" "\0" - /* _mesa_function_pool[3945]: Vertex4dv (offset 143) */ + /* _mesa_function_pool[3906]: Vertex4dv (offset 143) */ "p\0" "glVertex4dv\0" "\0" - /* _mesa_function_pool[3960]: StencilMaskSeparate (will be remapped) */ + /* _mesa_function_pool[3921]: StencilMaskSeparate (will be remapped) */ "ii\0" "glStencilMaskSeparate\0" "\0" - /* _mesa_function_pool[3986]: ProgramLocalParameter4dARB (will be remapped) */ + /* _mesa_function_pool[3947]: ProgramLocalParameter4dARB (will be remapped) */ "iidddd\0" "glProgramLocalParameter4dARB\0" "\0" - /* _mesa_function_pool[4023]: CompressedTexImage3DARB (will be remapped) */ + /* _mesa_function_pool[3984]: CompressedTexImage3DARB (will be remapped) */ "iiiiiiiip\0" "glCompressedTexImage3D\0" "glCompressedTexImage3DARB\0" "\0" - /* _mesa_function_pool[4083]: Color3sv (offset 18) */ + /* _mesa_function_pool[4044]: Color3sv (offset 18) */ "p\0" "glColor3sv\0" "\0" - /* _mesa_function_pool[4097]: GetConvolutionParameteriv (offset 358) */ + /* _mesa_function_pool[4058]: GetConvolutionParameteriv (offset 358) */ "iip\0" "glGetConvolutionParameteriv\0" "glGetConvolutionParameterivEXT\0" "\0" - /* _mesa_function_pool[4161]: VertexAttrib1fARB (will be remapped) */ + /* _mesa_function_pool[4122]: VertexAttrib1fARB (will be remapped) */ "if\0" "glVertexAttrib1f\0" "glVertexAttrib1fARB\0" "\0" - /* _mesa_function_pool[4202]: Vertex2dv (offset 127) */ + /* _mesa_function_pool[4163]: Vertex2dv (offset 127) */ "p\0" "glVertex2dv\0" "\0" - /* _mesa_function_pool[4217]: TestFenceNV (will be remapped) */ + /* _mesa_function_pool[4178]: TestFenceNV (will be remapped) */ "i\0" "glTestFenceNV\0" "\0" - /* _mesa_function_pool[4234]: MultiTexCoord1fvARB (offset 379) */ + /* _mesa_function_pool[4195]: GetVertexAttribIuivEXT (will be remapped) */ + "iip\0" + "glGetVertexAttribIuivEXT\0" + "glGetVertexAttribIuiv\0" + "\0" + /* _mesa_function_pool[4247]: MultiTexCoord1fvARB (offset 379) */ "ip\0" "glMultiTexCoord1fv\0" "glMultiTexCoord1fvARB\0" "\0" - /* _mesa_function_pool[4279]: TexCoord3iv (offset 115) */ + /* _mesa_function_pool[4292]: TexCoord3iv (offset 115) */ "p\0" "glTexCoord3iv\0" "\0" - /* _mesa_function_pool[4296]: Uniform2uivEXT (will be remapped) */ + /* _mesa_function_pool[4309]: Uniform2uivEXT (will be remapped) */ "iip\0" "glUniform2uivEXT\0" "glUniform2uiv\0" "\0" - /* _mesa_function_pool[4332]: ColorFragmentOp2ATI (will be remapped) */ + /* _mesa_function_pool[4345]: ColorFragmentOp2ATI (will be remapped) */ "iiiiiiiiii\0" "glColorFragmentOp2ATI\0" "\0" - /* _mesa_function_pool[4366]: SecondaryColorPointerListIBM (dynamic) */ + /* _mesa_function_pool[4379]: SecondaryColorPointerListIBM (dynamic) */ "iiipi\0" "glSecondaryColorPointerListIBM\0" "\0" - /* _mesa_function_pool[4404]: GetPixelTexGenParameterivSGIS (will be remapped) */ + /* _mesa_function_pool[4417]: GetPixelTexGenParameterivSGIS (will be remapped) */ "ip\0" "glGetPixelTexGenParameterivSGIS\0" "\0" - /* _mesa_function_pool[4440]: Color3fv (offset 14) */ + /* _mesa_function_pool[4453]: Color3fv (offset 14) */ "p\0" "glColor3fv\0" "\0" - /* _mesa_function_pool[4454]: VertexAttrib4fNV (will be remapped) */ + /* _mesa_function_pool[4467]: VertexAttrib4fNV (will be remapped) */ "iffff\0" "glVertexAttrib4fNV\0" "\0" - /* _mesa_function_pool[4480]: ReplacementCodeubSUN (dynamic) */ + /* _mesa_function_pool[4493]: ReplacementCodeubSUN (dynamic) */ "i\0" "glReplacementCodeubSUN\0" "\0" - /* _mesa_function_pool[4506]: FinishAsyncSGIX (dynamic) */ + /* _mesa_function_pool[4519]: FinishAsyncSGIX (dynamic) */ "p\0" "glFinishAsyncSGIX\0" "\0" - /* _mesa_function_pool[4527]: GetDebugLogMESA (dynamic) */ + /* _mesa_function_pool[4540]: GetDebugLogMESA (dynamic) */ "iiiipp\0" "glGetDebugLogMESA\0" "\0" - /* _mesa_function_pool[4553]: FogCoorddEXT (will be remapped) */ + /* _mesa_function_pool[4566]: FogCoorddEXT (will be remapped) */ "d\0" "glFogCoordd\0" "glFogCoorddEXT\0" "\0" - /* _mesa_function_pool[4583]: BeginConditionalRenderNV (will be remapped) */ + /* _mesa_function_pool[4596]: BeginConditionalRenderNV (will be remapped) */ "ii\0" "glBeginConditionalRenderNV\0" "glBeginConditionalRender\0" "\0" - /* _mesa_function_pool[4639]: Color4ubVertex3fSUN (dynamic) */ + /* _mesa_function_pool[4652]: Color4ubVertex3fSUN (dynamic) */ "iiiifff\0" "glColor4ubVertex3fSUN\0" "\0" - /* _mesa_function_pool[4670]: FogCoordfEXT (will be remapped) */ + /* _mesa_function_pool[4683]: FogCoordfEXT (will be remapped) */ "f\0" "glFogCoordf\0" "glFogCoordfEXT\0" "\0" - /* _mesa_function_pool[4700]: PointSize (offset 173) */ + /* _mesa_function_pool[4713]: PointSize (offset 173) */ "f\0" "glPointSize\0" "\0" - /* _mesa_function_pool[4715]: VertexAttribI2uivEXT (will be remapped) */ + /* _mesa_function_pool[4728]: VertexAttribI2uivEXT (will be remapped) */ "ip\0" "glVertexAttribI2uivEXT\0" "glVertexAttribI2uiv\0" "\0" - /* _mesa_function_pool[4762]: TexCoord2fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[4775]: TexCoord2fVertex3fSUN (dynamic) */ "fffff\0" "glTexCoord2fVertex3fSUN\0" "\0" - /* _mesa_function_pool[4793]: PopName (offset 200) */ + /* _mesa_function_pool[4806]: PopName (offset 200) */ "\0" "glPopName\0" "\0" - /* _mesa_function_pool[4805]: GlobalAlphaFactoriSUN (dynamic) */ + /* _mesa_function_pool[4818]: GlobalAlphaFactoriSUN (dynamic) */ "i\0" "glGlobalAlphaFactoriSUN\0" "\0" - /* _mesa_function_pool[4832]: VertexAttrib2dNV (will be remapped) */ + /* _mesa_function_pool[4845]: VertexAttrib2dNV (will be remapped) */ "idd\0" "glVertexAttrib2dNV\0" "\0" - /* _mesa_function_pool[4856]: GetProgramInfoLog (will be remapped) */ + /* _mesa_function_pool[4869]: GetProgramInfoLog (will be remapped) */ "iipp\0" "glGetProgramInfoLog\0" "\0" - /* _mesa_function_pool[4882]: VertexAttrib4NbvARB (will be remapped) */ + /* _mesa_function_pool[4895]: VertexAttrib4NbvARB (will be remapped) */ "ip\0" "glVertexAttrib4Nbv\0" "glVertexAttrib4NbvARB\0" "\0" - /* _mesa_function_pool[4927]: GetActiveAttribARB (will be remapped) */ + /* _mesa_function_pool[4940]: GetActiveAttribARB (will be remapped) */ "iiipppp\0" "glGetActiveAttrib\0" "glGetActiveAttribARB\0" "\0" - /* _mesa_function_pool[4975]: Vertex4sv (offset 149) */ + /* _mesa_function_pool[4988]: Vertex4sv (offset 149) */ "p\0" "glVertex4sv\0" "\0" - /* _mesa_function_pool[4990]: VertexAttrib4ubNV (will be remapped) */ + /* _mesa_function_pool[5003]: VertexAttrib4ubNV (will be remapped) */ "iiiii\0" "glVertexAttrib4ubNV\0" "\0" - /* _mesa_function_pool[5017]: ClampColor (will be remapped) */ + /* _mesa_function_pool[5030]: ClampColor (will be remapped) */ "ii\0" "glClampColor\0" "\0" - /* _mesa_function_pool[5034]: TextureRangeAPPLE (will be remapped) */ + /* _mesa_function_pool[5047]: TextureRangeAPPLE (will be remapped) */ "iip\0" "glTextureRangeAPPLE\0" "\0" - /* _mesa_function_pool[5059]: GetTexEnvfv (offset 276) */ + /* _mesa_function_pool[5072]: GetTexEnvfv (offset 276) */ "iip\0" "glGetTexEnvfv\0" "\0" - /* _mesa_function_pool[5078]: BindTransformFeedback (will be remapped) */ + /* _mesa_function_pool[5091]: BindTransformFeedback (will be remapped) */ "ii\0" "glBindTransformFeedback\0" "\0" - /* _mesa_function_pool[5106]: TexCoord2fColor4fNormal3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[5119]: TexCoord2fColor4fNormal3fVertex3fSUN (dynamic) */ "ffffffffffff\0" "glTexCoord2fColor4fNormal3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[5159]: Indexub (offset 315) */ + /* _mesa_function_pool[5172]: Indexub (offset 315) */ "i\0" "glIndexub\0" "\0" - /* _mesa_function_pool[5172]: ColorMaskIndexedEXT (will be remapped) */ - "iiiii\0" - "glColorMaskIndexedEXT\0" - "glColorMaski\0" - "\0" - /* _mesa_function_pool[5214]: TexEnvi (offset 186) */ + /* _mesa_function_pool[5185]: TexEnvi (offset 186) */ "iii\0" "glTexEnvi\0" "\0" - /* _mesa_function_pool[5229]: GetClipPlane (offset 259) */ + /* _mesa_function_pool[5200]: GetClipPlane (offset 259) */ "ip\0" "glGetClipPlane\0" "\0" - /* _mesa_function_pool[5248]: CombinerParameterfvNV (will be remapped) */ + /* _mesa_function_pool[5219]: CombinerParameterfvNV (will be remapped) */ "ip\0" "glCombinerParameterfvNV\0" "\0" - /* _mesa_function_pool[5276]: VertexAttribs3dvNV (will be remapped) */ + /* _mesa_function_pool[5247]: VertexAttribs3dvNV (will be remapped) */ "iip\0" "glVertexAttribs3dvNV\0" "\0" - /* _mesa_function_pool[5302]: VertexAttribI2uiEXT (will be remapped) */ + /* _mesa_function_pool[5273]: VertexAttribI2uiEXT (will be remapped) */ "iii\0" "glVertexAttribI2uiEXT\0" "glVertexAttribI2ui\0" "\0" - /* _mesa_function_pool[5348]: VertexAttribs4fvNV (will be remapped) */ + /* _mesa_function_pool[5319]: VertexAttribs4fvNV (will be remapped) */ "iip\0" "glVertexAttribs4fvNV\0" "\0" - /* _mesa_function_pool[5374]: VertexArrayRangeNV (will be remapped) */ + /* _mesa_function_pool[5345]: VertexArrayRangeNV (will be remapped) */ "ip\0" "glVertexArrayRangeNV\0" "\0" - /* _mesa_function_pool[5399]: FragmentLightiSGIX (dynamic) */ + /* _mesa_function_pool[5370]: FragmentLightiSGIX (dynamic) */ "iii\0" "glFragmentLightiSGIX\0" "\0" - /* _mesa_function_pool[5425]: PolygonOffsetEXT (will be remapped) */ + /* _mesa_function_pool[5396]: PolygonOffsetEXT (will be remapped) */ "ff\0" "glPolygonOffsetEXT\0" "\0" - /* _mesa_function_pool[5448]: VertexAttribI4uivEXT (will be remapped) */ + /* _mesa_function_pool[5419]: VertexAttribI4uivEXT (will be remapped) */ "ip\0" "glVertexAttribI4uivEXT\0" "glVertexAttribI4uiv\0" "\0" - /* _mesa_function_pool[5495]: PollAsyncSGIX (dynamic) */ + /* _mesa_function_pool[5466]: PollAsyncSGIX (dynamic) */ "p\0" "glPollAsyncSGIX\0" "\0" - /* _mesa_function_pool[5514]: DeleteFragmentShaderATI (will be remapped) */ + /* _mesa_function_pool[5485]: DeleteFragmentShaderATI (will be remapped) */ "i\0" "glDeleteFragmentShaderATI\0" "\0" - /* _mesa_function_pool[5543]: Scaled (offset 301) */ + /* _mesa_function_pool[5514]: Scaled (offset 301) */ "ddd\0" "glScaled\0" "\0" - /* _mesa_function_pool[5557]: ResumeTransformFeedback (will be remapped) */ + /* _mesa_function_pool[5528]: ResumeTransformFeedback (will be remapped) */ "\0" "glResumeTransformFeedback\0" "\0" - /* _mesa_function_pool[5585]: Scalef (offset 302) */ + /* _mesa_function_pool[5556]: Scalef (offset 302) */ "fff\0" "glScalef\0" "\0" - /* _mesa_function_pool[5599]: TexCoord2fNormal3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[5570]: TexCoord2fNormal3fVertex3fvSUN (dynamic) */ "ppp\0" "glTexCoord2fNormal3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[5637]: MultTransposeMatrixdARB (will be remapped) */ + /* _mesa_function_pool[5608]: MultTransposeMatrixdARB (will be remapped) */ "p\0" "glMultTransposeMatrixd\0" "glMultTransposeMatrixdARB\0" "\0" - /* _mesa_function_pool[5689]: ObjectUnpurgeableAPPLE (will be remapped) */ + /* _mesa_function_pool[5660]: ColorMaskIndexedEXT (will be remapped) */ + "iiiii\0" + "glColorMaskIndexedEXT\0" + "glColorMaski\0" + "\0" + /* _mesa_function_pool[5702]: ObjectUnpurgeableAPPLE (will be remapped) */ "iii\0" "glObjectUnpurgeableAPPLE\0" "\0" - /* _mesa_function_pool[5719]: AlphaFunc (offset 240) */ + /* _mesa_function_pool[5732]: AlphaFunc (offset 240) */ "if\0" "glAlphaFunc\0" "\0" - /* _mesa_function_pool[5735]: WindowPos2svMESA (will be remapped) */ + /* _mesa_function_pool[5748]: WindowPos2svMESA (will be remapped) */ "p\0" "glWindowPos2sv\0" "glWindowPos2svARB\0" "glWindowPos2svMESA\0" "\0" - /* _mesa_function_pool[5790]: EdgeFlag (offset 41) */ + /* _mesa_function_pool[5803]: EdgeFlag (offset 41) */ "i\0" "glEdgeFlag\0" "\0" - /* _mesa_function_pool[5804]: TexCoord2iv (offset 107) */ + /* _mesa_function_pool[5817]: TexCoord2iv (offset 107) */ "p\0" "glTexCoord2iv\0" "\0" - /* _mesa_function_pool[5821]: CompressedTexImage1DARB (will be remapped) */ + /* _mesa_function_pool[5834]: CompressedTexImage1DARB (will be remapped) */ "iiiiiip\0" "glCompressedTexImage1D\0" "glCompressedTexImage1DARB\0" "\0" - /* _mesa_function_pool[5879]: Rotated (offset 299) */ + /* _mesa_function_pool[5892]: Rotated (offset 299) */ "dddd\0" "glRotated\0" "\0" - /* _mesa_function_pool[5895]: GetTexParameterIuivEXT (will be remapped) */ + /* _mesa_function_pool[5908]: GetTexParameterIuivEXT (will be remapped) */ "iip\0" "glGetTexParameterIuivEXT\0" "glGetTexParameterIuiv\0" "\0" - /* _mesa_function_pool[5947]: VertexAttrib2sNV (will be remapped) */ + /* _mesa_function_pool[5960]: VertexAttrib2sNV (will be remapped) */ "iii\0" "glVertexAttrib2sNV\0" "\0" - /* _mesa_function_pool[5971]: ReadPixels (offset 256) */ + /* _mesa_function_pool[5984]: ReadPixels (offset 256) */ "iiiiiip\0" "glReadPixels\0" "\0" - /* _mesa_function_pool[5993]: EdgeFlagv (offset 42) */ + /* _mesa_function_pool[6006]: EdgeFlagv (offset 42) */ "p\0" "glEdgeFlagv\0" "\0" - /* _mesa_function_pool[6008]: NormalPointerListIBM (dynamic) */ + /* _mesa_function_pool[6021]: NormalPointerListIBM (dynamic) */ "iipi\0" "glNormalPointerListIBM\0" "\0" - /* _mesa_function_pool[6037]: IndexPointerEXT (will be remapped) */ + /* _mesa_function_pool[6050]: IndexPointerEXT (will be remapped) */ "iiip\0" "glIndexPointerEXT\0" "\0" - /* _mesa_function_pool[6061]: Color4iv (offset 32) */ + /* _mesa_function_pool[6074]: Color4iv (offset 32) */ "p\0" "glColor4iv\0" "\0" - /* _mesa_function_pool[6075]: TexParameterf (offset 178) */ + /* _mesa_function_pool[6088]: TexParameterf (offset 178) */ "iif\0" "glTexParameterf\0" "\0" - /* _mesa_function_pool[6096]: TexParameteri (offset 180) */ + /* _mesa_function_pool[6109]: TexParameteri (offset 180) */ "iii\0" "glTexParameteri\0" "\0" - /* _mesa_function_pool[6117]: NormalPointerEXT (will be remapped) */ + /* _mesa_function_pool[6130]: NormalPointerEXT (will be remapped) */ "iiip\0" "glNormalPointerEXT\0" "\0" - /* _mesa_function_pool[6142]: MultiTexCoord3dARB (offset 392) */ + /* _mesa_function_pool[6155]: MultiTexCoord3dARB (offset 392) */ "iddd\0" "glMultiTexCoord3d\0" "glMultiTexCoord3dARB\0" "\0" - /* _mesa_function_pool[6187]: MultiTexCoord2iARB (offset 388) */ + /* _mesa_function_pool[6200]: MultiTexCoord2iARB (offset 388) */ "iii\0" "glMultiTexCoord2i\0" "glMultiTexCoord2iARB\0" "\0" - /* _mesa_function_pool[6231]: DrawPixels (offset 257) */ + /* _mesa_function_pool[6244]: DrawPixels (offset 257) */ "iiiip\0" "glDrawPixels\0" "\0" - /* _mesa_function_pool[6251]: ReplacementCodeuiTexCoord2fNormal3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[6264]: ReplacementCodeuiTexCoord2fNormal3fVertex3fSUN (dynamic) */ "iffffffff\0" "glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[6311]: MultiTexCoord2svARB (offset 391) */ + /* _mesa_function_pool[6324]: MultiTexCoord2svARB (offset 391) */ "ip\0" "glMultiTexCoord2sv\0" "glMultiTexCoord2svARB\0" "\0" - /* _mesa_function_pool[6356]: ReplacementCodeubvSUN (dynamic) */ + /* _mesa_function_pool[6369]: ReplacementCodeubvSUN (dynamic) */ "p\0" "glReplacementCodeubvSUN\0" "\0" - /* _mesa_function_pool[6383]: Uniform3iARB (will be remapped) */ + /* _mesa_function_pool[6396]: Uniform3iARB (will be remapped) */ "iiii\0" "glUniform3i\0" "glUniform3iARB\0" "\0" - /* _mesa_function_pool[6416]: DrawTransformFeedback (will be remapped) */ + /* _mesa_function_pool[6429]: DrawTransformFeedback (will be remapped) */ "ii\0" "glDrawTransformFeedback\0" "\0" - /* _mesa_function_pool[6444]: DrawElementsInstancedARB (will be remapped) */ + /* _mesa_function_pool[6457]: DrawElementsInstancedARB (will be remapped) */ "iiipi\0" "glDrawElementsInstancedARB\0" "glDrawElementsInstancedEXT\0" "glDrawElementsInstanced\0" "\0" - /* _mesa_function_pool[6529]: GetShaderInfoLog (will be remapped) */ + /* _mesa_function_pool[6542]: GetShaderInfoLog (will be remapped) */ "iipp\0" "glGetShaderInfoLog\0" "\0" - /* _mesa_function_pool[6554]: WeightivARB (dynamic) */ + /* _mesa_function_pool[6567]: WeightivARB (dynamic) */ "ip\0" "glWeightivARB\0" "\0" - /* _mesa_function_pool[6572]: PollInstrumentsSGIX (dynamic) */ + /* _mesa_function_pool[6585]: PollInstrumentsSGIX (dynamic) */ "p\0" "glPollInstrumentsSGIX\0" "\0" - /* _mesa_function_pool[6597]: GlobalAlphaFactordSUN (dynamic) */ + /* _mesa_function_pool[6610]: GlobalAlphaFactordSUN (dynamic) */ "d\0" "glGlobalAlphaFactordSUN\0" "\0" - /* _mesa_function_pool[6624]: GetFinalCombinerInputParameterfvNV (will be remapped) */ + /* _mesa_function_pool[6637]: GetFinalCombinerInputParameterfvNV (will be remapped) */ "iip\0" "glGetFinalCombinerInputParameterfvNV\0" "\0" - /* _mesa_function_pool[6666]: GenerateMipmapEXT (will be remapped) */ + /* _mesa_function_pool[6679]: GenerateMipmapEXT (will be remapped) */ "i\0" "glGenerateMipmap\0" "glGenerateMipmapEXT\0" "\0" - /* _mesa_function_pool[6706]: GenLists (offset 5) */ + /* _mesa_function_pool[6719]: GenLists (offset 5) */ "i\0" "glGenLists\0" "\0" - /* _mesa_function_pool[6720]: DepthRangef (will be remapped) */ + /* _mesa_function_pool[6733]: DepthRangef (will be remapped) */ "ff\0" "glDepthRangef\0" "\0" - /* _mesa_function_pool[6738]: GetMapAttribParameterivNV (dynamic) */ + /* _mesa_function_pool[6751]: GetMapAttribParameterivNV (dynamic) */ "iiip\0" "glGetMapAttribParameterivNV\0" "\0" - /* _mesa_function_pool[6772]: CreateShaderObjectARB (will be remapped) */ + /* _mesa_function_pool[6785]: CreateShaderObjectARB (will be remapped) */ "i\0" "glCreateShaderObjectARB\0" "\0" - /* _mesa_function_pool[6799]: GetSharpenTexFuncSGIS (dynamic) */ + /* _mesa_function_pool[6812]: GetSharpenTexFuncSGIS (dynamic) */ "ip\0" "glGetSharpenTexFuncSGIS\0" "\0" - /* _mesa_function_pool[6827]: BufferDataARB (will be remapped) */ + /* _mesa_function_pool[6840]: BufferDataARB (will be remapped) */ "iipi\0" "glBufferData\0" "glBufferDataARB\0" "\0" - /* _mesa_function_pool[6862]: FlushVertexArrayRangeNV (will be remapped) */ + /* _mesa_function_pool[6875]: FlushVertexArrayRangeNV (will be remapped) */ "\0" "glFlushVertexArrayRangeNV\0" "\0" - /* _mesa_function_pool[6890]: MapGrid2d (offset 226) */ + /* _mesa_function_pool[6903]: MapGrid2d (offset 226) */ "iddidd\0" "glMapGrid2d\0" "\0" - /* _mesa_function_pool[6910]: MapGrid2f (offset 227) */ + /* _mesa_function_pool[6923]: MapGrid2f (offset 227) */ "iffiff\0" "glMapGrid2f\0" "\0" - /* _mesa_function_pool[6930]: SampleMapATI (will be remapped) */ + /* _mesa_function_pool[6943]: SampleMapATI (will be remapped) */ "iii\0" "glSampleMapATI\0" "\0" - /* _mesa_function_pool[6950]: VertexPointerEXT (will be remapped) */ + /* _mesa_function_pool[6963]: VertexPointerEXT (will be remapped) */ "iiiip\0" "glVertexPointerEXT\0" "\0" - /* _mesa_function_pool[6976]: GetTexFilterFuncSGIS (dynamic) */ + /* _mesa_function_pool[6989]: GetTexFilterFuncSGIS (dynamic) */ "iip\0" "glGetTexFilterFuncSGIS\0" "\0" - /* _mesa_function_pool[7004]: Scissor (offset 176) */ + /* _mesa_function_pool[7017]: Scissor (offset 176) */ "iiii\0" "glScissor\0" "\0" - /* _mesa_function_pool[7020]: Fogf (offset 153) */ + /* _mesa_function_pool[7033]: Fogf (offset 153) */ "if\0" "glFogf\0" "\0" - /* _mesa_function_pool[7031]: ReplacementCodeuiColor4ubVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[7044]: ReplacementCodeuiColor4ubVertex3fvSUN (dynamic) */ "ppp\0" "glReplacementCodeuiColor4ubVertex3fvSUN\0" "\0" - /* _mesa_function_pool[7076]: TexSubImage1D (offset 332) */ + /* _mesa_function_pool[7089]: TexSubImage1D (offset 332) */ "iiiiiip\0" "glTexSubImage1D\0" "glTexSubImage1DEXT\0" "\0" - /* _mesa_function_pool[7120]: VertexAttrib1sARB (will be remapped) */ + /* _mesa_function_pool[7133]: VertexAttrib1sARB (will be remapped) */ "ii\0" "glVertexAttrib1s\0" "glVertexAttrib1sARB\0" "\0" - /* _mesa_function_pool[7161]: FenceSync (will be remapped) */ + /* _mesa_function_pool[7174]: FenceSync (will be remapped) */ "ii\0" "glFenceSync\0" "\0" - /* _mesa_function_pool[7177]: Color4usv (offset 40) */ + /* _mesa_function_pool[7190]: Color4usv (offset 40) */ "p\0" "glColor4usv\0" "\0" - /* _mesa_function_pool[7192]: Fogi (offset 155) */ + /* _mesa_function_pool[7205]: Fogi (offset 155) */ "ii\0" "glFogi\0" "\0" - /* _mesa_function_pool[7203]: DepthRange (offset 288) */ + /* _mesa_function_pool[7216]: DepthRange (offset 288) */ "dd\0" "glDepthRange\0" "\0" - /* _mesa_function_pool[7220]: RasterPos3iv (offset 75) */ + /* _mesa_function_pool[7233]: RasterPos3iv (offset 75) */ "p\0" "glRasterPos3iv\0" "\0" - /* _mesa_function_pool[7238]: FinalCombinerInputNV (will be remapped) */ + /* _mesa_function_pool[7251]: FinalCombinerInputNV (will be remapped) */ "iiii\0" "glFinalCombinerInputNV\0" "\0" - /* _mesa_function_pool[7267]: TexCoord2i (offset 106) */ + /* _mesa_function_pool[7280]: TexCoord2i (offset 106) */ "ii\0" "glTexCoord2i\0" "\0" - /* _mesa_function_pool[7284]: PixelMapfv (offset 251) */ + /* _mesa_function_pool[7297]: PixelMapfv (offset 251) */ "iip\0" "glPixelMapfv\0" "\0" - /* _mesa_function_pool[7302]: Color4ui (offset 37) */ + /* _mesa_function_pool[7315]: Color4ui (offset 37) */ "iiii\0" "glColor4ui\0" "\0" - /* _mesa_function_pool[7319]: RasterPos3s (offset 76) */ + /* _mesa_function_pool[7332]: RasterPos3s (offset 76) */ "iii\0" "glRasterPos3s\0" "\0" - /* _mesa_function_pool[7338]: Color3usv (offset 24) */ + /* _mesa_function_pool[7351]: Color3usv (offset 24) */ "p\0" "glColor3usv\0" "\0" - /* _mesa_function_pool[7353]: FlushRasterSGIX (dynamic) */ + /* _mesa_function_pool[7366]: FlushRasterSGIX (dynamic) */ "\0" "glFlushRasterSGIX\0" "\0" - /* _mesa_function_pool[7373]: TexCoord2f (offset 104) */ + /* _mesa_function_pool[7386]: TexCoord2f (offset 104) */ "ff\0" "glTexCoord2f\0" "\0" - /* _mesa_function_pool[7390]: ReplacementCodeuiTexCoord2fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[7403]: ReplacementCodeuiTexCoord2fVertex3fSUN (dynamic) */ "ifffff\0" "glReplacementCodeuiTexCoord2fVertex3fSUN\0" "\0" - /* _mesa_function_pool[7439]: TexCoord2d (offset 102) */ + /* _mesa_function_pool[7452]: TexCoord2d (offset 102) */ "dd\0" "glTexCoord2d\0" "\0" - /* _mesa_function_pool[7456]: RasterPos3d (offset 70) */ + /* _mesa_function_pool[7469]: RasterPos3d (offset 70) */ "ddd\0" "glRasterPos3d\0" "\0" - /* _mesa_function_pool[7475]: RasterPos3f (offset 72) */ + /* _mesa_function_pool[7488]: RasterPos3f (offset 72) */ "fff\0" "glRasterPos3f\0" "\0" - /* _mesa_function_pool[7494]: Uniform1fARB (will be remapped) */ + /* _mesa_function_pool[7507]: Uniform1fARB (will be remapped) */ "if\0" "glUniform1f\0" "glUniform1fARB\0" "\0" - /* _mesa_function_pool[7525]: AreTexturesResident (offset 322) */ + /* _mesa_function_pool[7538]: AreTexturesResident (offset 322) */ "ipp\0" "glAreTexturesResident\0" "glAreTexturesResidentEXT\0" "\0" - /* _mesa_function_pool[7577]: TexCoord2s (offset 108) */ + /* _mesa_function_pool[7590]: TexCoord2s (offset 108) */ "ii\0" "glTexCoord2s\0" "\0" - /* _mesa_function_pool[7594]: StencilOpSeparate (will be remapped) */ + /* _mesa_function_pool[7607]: StencilOpSeparate (will be remapped) */ "iiii\0" "glStencilOpSeparate\0" "glStencilOpSeparateATI\0" "\0" - /* _mesa_function_pool[7643]: ColorTableParameteriv (offset 341) */ + /* _mesa_function_pool[7656]: ColorTableParameteriv (offset 341) */ "iip\0" "glColorTableParameteriv\0" "glColorTableParameterivSGI\0" "\0" - /* _mesa_function_pool[7699]: FogCoordPointerListIBM (dynamic) */ + /* _mesa_function_pool[7712]: FogCoordPointerListIBM (dynamic) */ "iipi\0" "glFogCoordPointerListIBM\0" "\0" - /* _mesa_function_pool[7730]: WindowPos3dMESA (will be remapped) */ + /* _mesa_function_pool[7743]: WindowPos3dMESA (will be remapped) */ "ddd\0" "glWindowPos3d\0" "glWindowPos3dARB\0" "glWindowPos3dMESA\0" "\0" - /* _mesa_function_pool[7784]: Color4us (offset 39) */ + /* _mesa_function_pool[7797]: Color4us (offset 39) */ "iiii\0" "glColor4us\0" "\0" - /* _mesa_function_pool[7801]: PointParameterfvEXT (will be remapped) */ + /* _mesa_function_pool[7814]: PointParameterfvEXT (will be remapped) */ "ip\0" "glPointParameterfv\0" "glPointParameterfvARB\0" "glPointParameterfvEXT\0" "glPointParameterfvSGIS\0" "\0" - /* _mesa_function_pool[7891]: Color3bv (offset 10) */ + /* _mesa_function_pool[7904]: Color3bv (offset 10) */ "p\0" "glColor3bv\0" "\0" - /* _mesa_function_pool[7905]: WindowPos2fvMESA (will be remapped) */ + /* _mesa_function_pool[7918]: WindowPos2fvMESA (will be remapped) */ "p\0" "glWindowPos2fv\0" "glWindowPos2fvARB\0" "glWindowPos2fvMESA\0" "\0" - /* _mesa_function_pool[7960]: SecondaryColor3bvEXT (will be remapped) */ + /* _mesa_function_pool[7973]: SecondaryColor3bvEXT (will be remapped) */ "p\0" "glSecondaryColor3bv\0" "glSecondaryColor3bvEXT\0" "\0" - /* _mesa_function_pool[8006]: VertexPointerListIBM (dynamic) */ + /* _mesa_function_pool[8019]: VertexPointerListIBM (dynamic) */ "iiipi\0" "glVertexPointerListIBM\0" "\0" - /* _mesa_function_pool[8036]: GetProgramLocalParameterfvARB (will be remapped) */ + /* _mesa_function_pool[8049]: GetProgramLocalParameterfvARB (will be remapped) */ "iip\0" "glGetProgramLocalParameterfvARB\0" "\0" - /* _mesa_function_pool[8073]: FragmentMaterialfSGIX (dynamic) */ + /* _mesa_function_pool[8086]: FragmentMaterialfSGIX (dynamic) */ "iif\0" "glFragmentMaterialfSGIX\0" "\0" - /* _mesa_function_pool[8102]: TexCoord2fNormal3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[8115]: TexCoord2fNormal3fVertex3fSUN (dynamic) */ "ffffffff\0" "glTexCoord2fNormal3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[8144]: RenderbufferStorageEXT (will be remapped) */ + /* _mesa_function_pool[8157]: RenderbufferStorageEXT (will be remapped) */ "iiii\0" "glRenderbufferStorage\0" "glRenderbufferStorageEXT\0" "\0" - /* _mesa_function_pool[8197]: IsFenceNV (will be remapped) */ + /* _mesa_function_pool[8210]: IsFenceNV (will be remapped) */ "i\0" "glIsFenceNV\0" "\0" - /* _mesa_function_pool[8212]: AttachObjectARB (will be remapped) */ + /* _mesa_function_pool[8225]: AttachObjectARB (will be remapped) */ "ii\0" "glAttachObjectARB\0" "\0" - /* _mesa_function_pool[8234]: GetFragmentLightivSGIX (dynamic) */ + /* _mesa_function_pool[8247]: GetFragmentLightivSGIX (dynamic) */ "iip\0" "glGetFragmentLightivSGIX\0" "\0" - /* _mesa_function_pool[8264]: UniformMatrix2fvARB (will be remapped) */ + /* _mesa_function_pool[8277]: UniformMatrix2fvARB (will be remapped) */ "iiip\0" "glUniformMatrix2fv\0" "glUniformMatrix2fvARB\0" "\0" - /* _mesa_function_pool[8311]: MultiTexCoord2fARB (offset 386) */ + /* _mesa_function_pool[8324]: MultiTexCoord2fARB (offset 386) */ "iff\0" "glMultiTexCoord2f\0" "glMultiTexCoord2fARB\0" "\0" - /* _mesa_function_pool[8355]: ColorTable (offset 339) */ + /* _mesa_function_pool[8368]: ColorTable (offset 339) */ "iiiiip\0" "glColorTable\0" "glColorTableSGI\0" "glColorTableEXT\0" "\0" - /* _mesa_function_pool[8408]: IndexPointer (offset 314) */ + /* _mesa_function_pool[8421]: IndexPointer (offset 314) */ "iip\0" "glIndexPointer\0" "\0" - /* _mesa_function_pool[8428]: Accum (offset 213) */ + /* _mesa_function_pool[8441]: Accum (offset 213) */ "if\0" "glAccum\0" "\0" - /* _mesa_function_pool[8440]: GetTexImage (offset 281) */ + /* _mesa_function_pool[8453]: GetTexImage (offset 281) */ "iiiip\0" "glGetTexImage\0" "\0" - /* _mesa_function_pool[8461]: MapControlPointsNV (dynamic) */ + /* _mesa_function_pool[8474]: MapControlPointsNV (dynamic) */ "iiiiiiiip\0" "glMapControlPointsNV\0" "\0" - /* _mesa_function_pool[8493]: ConvolutionFilter2D (offset 349) */ + /* _mesa_function_pool[8506]: ConvolutionFilter2D (offset 349) */ "iiiiiip\0" "glConvolutionFilter2D\0" "glConvolutionFilter2DEXT\0" "\0" - /* _mesa_function_pool[8549]: Finish (offset 216) */ + /* _mesa_function_pool[8562]: Finish (offset 216) */ "\0" "glFinish\0" "\0" - /* _mesa_function_pool[8560]: MapParameterfvNV (dynamic) */ + /* _mesa_function_pool[8573]: MapParameterfvNV (dynamic) */ "iip\0" "glMapParameterfvNV\0" "\0" - /* _mesa_function_pool[8584]: ClearStencil (offset 207) */ + /* _mesa_function_pool[8597]: ClearStencil (offset 207) */ "i\0" "glClearStencil\0" "\0" - /* _mesa_function_pool[8602]: VertexAttrib3dvARB (will be remapped) */ + /* _mesa_function_pool[8615]: VertexAttrib3dvARB (will be remapped) */ "ip\0" "glVertexAttrib3dv\0" "glVertexAttrib3dvARB\0" "\0" - /* _mesa_function_pool[8645]: Uniform4uivEXT (will be remapped) */ + /* _mesa_function_pool[8658]: Uniform4uivEXT (will be remapped) */ "iip\0" "glUniform4uivEXT\0" "glUniform4uiv\0" "\0" - /* _mesa_function_pool[8681]: HintPGI (dynamic) */ + /* _mesa_function_pool[8694]: HintPGI (dynamic) */ "ii\0" "glHintPGI\0" "\0" - /* _mesa_function_pool[8695]: ConvolutionParameteriv (offset 353) */ + /* _mesa_function_pool[8708]: ConvolutionParameteriv (offset 353) */ "iip\0" "glConvolutionParameteriv\0" "glConvolutionParameterivEXT\0" "\0" - /* _mesa_function_pool[8753]: Color4s (offset 33) */ + /* _mesa_function_pool[8766]: Color4s (offset 33) */ "iiii\0" "glColor4s\0" "\0" - /* _mesa_function_pool[8769]: InterleavedArrays (offset 317) */ + /* _mesa_function_pool[8782]: InterleavedArrays (offset 317) */ "iip\0" "glInterleavedArrays\0" "\0" - /* _mesa_function_pool[8794]: RasterPos2fv (offset 65) */ + /* _mesa_function_pool[8807]: RasterPos2fv (offset 65) */ "p\0" "glRasterPos2fv\0" "\0" - /* _mesa_function_pool[8812]: TexCoord1fv (offset 97) */ + /* _mesa_function_pool[8825]: TexCoord1fv (offset 97) */ "p\0" "glTexCoord1fv\0" "\0" - /* _mesa_function_pool[8829]: Vertex2d (offset 126) */ + /* _mesa_function_pool[8842]: Vertex2d (offset 126) */ "dd\0" "glVertex2d\0" "\0" - /* _mesa_function_pool[8844]: CullParameterdvEXT (dynamic) */ + /* _mesa_function_pool[8857]: CullParameterdvEXT (dynamic) */ "ip\0" "glCullParameterdvEXT\0" "\0" - /* _mesa_function_pool[8869]: ProgramNamedParameter4fNV (will be remapped) */ + /* _mesa_function_pool[8882]: ProgramNamedParameter4fNV (will be remapped) */ "iipffff\0" "glProgramNamedParameter4fNV\0" "\0" - /* _mesa_function_pool[8906]: Color3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[8919]: Color3fVertex3fSUN (dynamic) */ "ffffff\0" "glColor3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[8935]: ProgramEnvParameter4fvARB (will be remapped) */ + /* _mesa_function_pool[8948]: ProgramEnvParameter4fvARB (will be remapped) */ "iip\0" "glProgramEnvParameter4fvARB\0" "glProgramParameter4fvNV\0" "\0" - /* _mesa_function_pool[8992]: Color4i (offset 31) */ + /* _mesa_function_pool[9005]: Color4i (offset 31) */ "iiii\0" "glColor4i\0" "\0" - /* _mesa_function_pool[9008]: Color4f (offset 29) */ + /* _mesa_function_pool[9021]: Color4f (offset 29) */ "ffff\0" "glColor4f\0" "\0" - /* _mesa_function_pool[9024]: RasterPos4fv (offset 81) */ + /* _mesa_function_pool[9037]: RasterPos4fv (offset 81) */ "p\0" "glRasterPos4fv\0" "\0" - /* _mesa_function_pool[9042]: Color4d (offset 27) */ + /* _mesa_function_pool[9055]: Color4d (offset 27) */ "dddd\0" "glColor4d\0" "\0" - /* _mesa_function_pool[9058]: ClearIndex (offset 205) */ + /* _mesa_function_pool[9071]: ClearIndex (offset 205) */ "f\0" "glClearIndex\0" "\0" - /* _mesa_function_pool[9074]: Color4b (offset 25) */ + /* _mesa_function_pool[9087]: Color4b (offset 25) */ "iiii\0" "glColor4b\0" "\0" - /* _mesa_function_pool[9090]: LoadMatrixd (offset 292) */ + /* _mesa_function_pool[9103]: LoadMatrixd (offset 292) */ "p\0" "glLoadMatrixd\0" "\0" - /* _mesa_function_pool[9107]: FragmentLightModeliSGIX (dynamic) */ + /* _mesa_function_pool[9120]: FragmentLightModeliSGIX (dynamic) */ "ii\0" "glFragmentLightModeliSGIX\0" "\0" - /* _mesa_function_pool[9137]: RasterPos2dv (offset 63) */ + /* _mesa_function_pool[9150]: RasterPos2dv (offset 63) */ "p\0" "glRasterPos2dv\0" "\0" - /* _mesa_function_pool[9155]: ConvolutionParameterfv (offset 351) */ + /* _mesa_function_pool[9168]: ConvolutionParameterfv (offset 351) */ "iip\0" "glConvolutionParameterfv\0" "glConvolutionParameterfvEXT\0" "\0" - /* _mesa_function_pool[9213]: TbufferMask3DFX (dynamic) */ + /* _mesa_function_pool[9226]: TbufferMask3DFX (dynamic) */ "i\0" "glTbufferMask3DFX\0" "\0" - /* _mesa_function_pool[9234]: GetTexGendv (offset 278) */ + /* _mesa_function_pool[9247]: GetTexGendv (offset 278) */ "iip\0" "glGetTexGendv\0" "\0" - /* _mesa_function_pool[9253]: GetVertexAttribfvNV (will be remapped) */ + /* _mesa_function_pool[9266]: GetVertexAttribfvNV (will be remapped) */ "iip\0" "glGetVertexAttribfvNV\0" "\0" - /* _mesa_function_pool[9280]: BeginTransformFeedbackEXT (will be remapped) */ + /* _mesa_function_pool[9293]: BeginTransformFeedbackEXT (will be remapped) */ "i\0" "glBeginTransformFeedbackEXT\0" "glBeginTransformFeedback\0" "\0" - /* _mesa_function_pool[9336]: LoadProgramNV (will be remapped) */ + /* _mesa_function_pool[9349]: LoadProgramNV (will be remapped) */ "iiip\0" "glLoadProgramNV\0" "\0" - /* _mesa_function_pool[9358]: WaitSync (will be remapped) */ + /* _mesa_function_pool[9371]: WaitSync (will be remapped) */ "iii\0" "glWaitSync\0" "\0" - /* _mesa_function_pool[9374]: EndList (offset 1) */ + /* _mesa_function_pool[9387]: EndList (offset 1) */ "\0" "glEndList\0" "\0" - /* _mesa_function_pool[9386]: VertexAttrib4fvNV (will be remapped) */ + /* _mesa_function_pool[9399]: VertexAttrib4fvNV (will be remapped) */ "ip\0" "glVertexAttrib4fvNV\0" "\0" - /* _mesa_function_pool[9410]: GetAttachedObjectsARB (will be remapped) */ + /* _mesa_function_pool[9423]: GetAttachedObjectsARB (will be remapped) */ "iipp\0" "glGetAttachedObjectsARB\0" "\0" - /* _mesa_function_pool[9440]: Uniform3fvARB (will be remapped) */ + /* _mesa_function_pool[9453]: Uniform3fvARB (will be remapped) */ "iip\0" "glUniform3fv\0" "glUniform3fvARB\0" "\0" - /* _mesa_function_pool[9474]: EvalCoord1fv (offset 231) */ + /* _mesa_function_pool[9487]: EvalCoord1fv (offset 231) */ "p\0" "glEvalCoord1fv\0" "\0" - /* _mesa_function_pool[9492]: DrawRangeElements (offset 338) */ + /* _mesa_function_pool[9505]: DrawRangeElements (offset 338) */ "iiiiip\0" "glDrawRangeElements\0" "glDrawRangeElementsEXT\0" "\0" - /* _mesa_function_pool[9543]: EvalMesh2 (offset 238) */ + /* _mesa_function_pool[9556]: EvalMesh2 (offset 238) */ "iiiii\0" "glEvalMesh2\0" "\0" - /* _mesa_function_pool[9562]: Vertex4fv (offset 145) */ + /* _mesa_function_pool[9575]: Vertex4fv (offset 145) */ "p\0" "glVertex4fv\0" "\0" - /* _mesa_function_pool[9577]: GenTransformFeedbacks (will be remapped) */ + /* _mesa_function_pool[9590]: GenTransformFeedbacks (will be remapped) */ "ip\0" "glGenTransformFeedbacks\0" "\0" - /* _mesa_function_pool[9605]: SpriteParameterfvSGIX (dynamic) */ + /* _mesa_function_pool[9618]: SpriteParameterfvSGIX (dynamic) */ "ip\0" "glSpriteParameterfvSGIX\0" "\0" - /* _mesa_function_pool[9633]: CheckFramebufferStatusEXT (will be remapped) */ + /* _mesa_function_pool[9646]: CheckFramebufferStatusEXT (will be remapped) */ "i\0" "glCheckFramebufferStatus\0" "glCheckFramebufferStatusEXT\0" "\0" - /* _mesa_function_pool[9689]: GlobalAlphaFactoruiSUN (dynamic) */ + /* _mesa_function_pool[9702]: GlobalAlphaFactoruiSUN (dynamic) */ "i\0" "glGlobalAlphaFactoruiSUN\0" "\0" - /* _mesa_function_pool[9717]: GetHandleARB (will be remapped) */ + /* _mesa_function_pool[9730]: GetHandleARB (will be remapped) */ "i\0" "glGetHandleARB\0" "\0" - /* _mesa_function_pool[9735]: GetVertexAttribivARB (will be remapped) */ + /* _mesa_function_pool[9748]: GetVertexAttribivARB (will be remapped) */ "iip\0" "glGetVertexAttribiv\0" "glGetVertexAttribivARB\0" "\0" - /* _mesa_function_pool[9783]: BlendFunciARB (will be remapped) */ + /* _mesa_function_pool[9796]: BlendFunciARB (will be remapped) */ "iii\0" "glBlendFunciARB\0" "\0" - /* _mesa_function_pool[9804]: GetCombinerInputParameterfvNV (will be remapped) */ + /* _mesa_function_pool[9817]: GetCombinerInputParameterfvNV (will be remapped) */ "iiiip\0" "glGetCombinerInputParameterfvNV\0" "\0" - /* _mesa_function_pool[9843]: GetTexParameterIivEXT (will be remapped) */ + /* _mesa_function_pool[9856]: GetTexParameterIivEXT (will be remapped) */ "iip\0" "glGetTexParameterIivEXT\0" "glGetTexParameterIiv\0" "\0" - /* _mesa_function_pool[9893]: CreateProgram (will be remapped) */ + /* _mesa_function_pool[9906]: CreateProgram (will be remapped) */ "\0" "glCreateProgram\0" "\0" - /* _mesa_function_pool[9911]: LoadTransposeMatrixdARB (will be remapped) */ + /* _mesa_function_pool[9924]: LoadTransposeMatrixdARB (will be remapped) */ "p\0" "glLoadTransposeMatrixd\0" "glLoadTransposeMatrixdARB\0" "\0" - /* _mesa_function_pool[9963]: ReleaseShaderCompiler (will be remapped) */ + /* _mesa_function_pool[9976]: ReleaseShaderCompiler (will be remapped) */ "\0" "glReleaseShaderCompiler\0" "\0" - /* _mesa_function_pool[9989]: GetMinmax (offset 364) */ + /* _mesa_function_pool[10002]: GetMinmax (offset 364) */ "iiiip\0" "glGetMinmax\0" "glGetMinmaxEXT\0" "\0" - /* _mesa_function_pool[10023]: StencilFuncSeparate (will be remapped) */ + /* _mesa_function_pool[10036]: StencilFuncSeparate (will be remapped) */ "iiii\0" "glStencilFuncSeparate\0" "\0" - /* _mesa_function_pool[10051]: SecondaryColor3sEXT (will be remapped) */ + /* _mesa_function_pool[10064]: SecondaryColor3sEXT (will be remapped) */ "iii\0" "glSecondaryColor3s\0" "glSecondaryColor3sEXT\0" "\0" - /* _mesa_function_pool[10097]: Color3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[10110]: Color3fVertex3fvSUN (dynamic) */ "pp\0" "glColor3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[10123]: GetInteger64i_v (will be remapped) */ + /* _mesa_function_pool[10136]: GetInteger64i_v (will be remapped) */ "iip\0" "glGetInteger64i_v\0" "\0" - /* _mesa_function_pool[10146]: Normal3fv (offset 57) */ + /* _mesa_function_pool[10159]: Normal3fv (offset 57) */ "p\0" "glNormal3fv\0" "\0" - /* _mesa_function_pool[10161]: GlobalAlphaFactorbSUN (dynamic) */ + /* _mesa_function_pool[10174]: GlobalAlphaFactorbSUN (dynamic) */ "i\0" "glGlobalAlphaFactorbSUN\0" "\0" - /* _mesa_function_pool[10188]: Color3us (offset 23) */ + /* _mesa_function_pool[10201]: Color3us (offset 23) */ "iii\0" "glColor3us\0" "\0" - /* _mesa_function_pool[10204]: ImageTransformParameterfvHP (dynamic) */ + /* _mesa_function_pool[10217]: ImageTransformParameterfvHP (dynamic) */ "iip\0" "glImageTransformParameterfvHP\0" "\0" - /* _mesa_function_pool[10239]: VertexAttrib4ivARB (will be remapped) */ + /* _mesa_function_pool[10252]: VertexAttrib4ivARB (will be remapped) */ "ip\0" "glVertexAttrib4iv\0" "glVertexAttrib4ivARB\0" "\0" - /* _mesa_function_pool[10282]: End (offset 43) */ + /* _mesa_function_pool[10295]: End (offset 43) */ "\0" "glEnd\0" "\0" - /* _mesa_function_pool[10290]: VertexAttrib3fNV (will be remapped) */ + /* _mesa_function_pool[10303]: VertexAttrib3fNV (will be remapped) */ "ifff\0" "glVertexAttrib3fNV\0" "\0" - /* _mesa_function_pool[10315]: VertexAttribs2dvNV (will be remapped) */ + /* _mesa_function_pool[10328]: VertexAttribs2dvNV (will be remapped) */ "iip\0" "glVertexAttribs2dvNV\0" "\0" - /* _mesa_function_pool[10341]: GetQueryObjectui64vEXT (will be remapped) */ + /* _mesa_function_pool[10354]: GetQueryObjectui64vEXT (will be remapped) */ "iip\0" "glGetQueryObjectui64vEXT\0" "\0" - /* _mesa_function_pool[10371]: MultiTexCoord3fvARB (offset 395) */ + /* _mesa_function_pool[10384]: MultiTexCoord3fvARB (offset 395) */ "ip\0" "glMultiTexCoord3fv\0" "glMultiTexCoord3fvARB\0" "\0" - /* _mesa_function_pool[10416]: SecondaryColor3dEXT (will be remapped) */ + /* _mesa_function_pool[10429]: SecondaryColor3dEXT (will be remapped) */ "ddd\0" "glSecondaryColor3d\0" "glSecondaryColor3dEXT\0" "\0" - /* _mesa_function_pool[10462]: Color3ub (offset 19) */ + /* _mesa_function_pool[10475]: Color3ub (offset 19) */ "iii\0" "glColor3ub\0" "\0" - /* _mesa_function_pool[10478]: GetProgramParameterfvNV (will be remapped) */ + /* _mesa_function_pool[10491]: GetProgramParameterfvNV (will be remapped) */ "iiip\0" "glGetProgramParameterfvNV\0" "\0" - /* _mesa_function_pool[10510]: TangentPointerEXT (dynamic) */ + /* _mesa_function_pool[10523]: TangentPointerEXT (dynamic) */ "iip\0" "glTangentPointerEXT\0" "\0" - /* _mesa_function_pool[10535]: Color4fNormal3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[10548]: Color4fNormal3fVertex3fvSUN (dynamic) */ "ppp\0" "glColor4fNormal3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[10570]: GetInstrumentsSGIX (dynamic) */ + /* _mesa_function_pool[10583]: GetInstrumentsSGIX (dynamic) */ "\0" "glGetInstrumentsSGIX\0" "\0" - /* _mesa_function_pool[10593]: GetUniformuivEXT (will be remapped) */ + /* _mesa_function_pool[10606]: GetUniformuivEXT (will be remapped) */ "iip\0" "glGetUniformuivEXT\0" "glGetUniformuiv\0" "\0" - /* _mesa_function_pool[10633]: Color3ui (offset 21) */ + /* _mesa_function_pool[10646]: Color3ui (offset 21) */ "iii\0" "glColor3ui\0" "\0" - /* _mesa_function_pool[10649]: EvalMapsNV (dynamic) */ + /* _mesa_function_pool[10662]: EvalMapsNV (dynamic) */ "ii\0" "glEvalMapsNV\0" "\0" - /* _mesa_function_pool[10666]: TexSubImage2D (offset 333) */ + /* _mesa_function_pool[10679]: TexSubImage2D (offset 333) */ "iiiiiiiip\0" "glTexSubImage2D\0" "glTexSubImage2DEXT\0" "\0" - /* _mesa_function_pool[10712]: FragmentLightivSGIX (dynamic) */ + /* _mesa_function_pool[10725]: FragmentLightivSGIX (dynamic) */ "iip\0" "glFragmentLightivSGIX\0" "\0" - /* _mesa_function_pool[10739]: GetTexParameterPointervAPPLE (will be remapped) */ + /* _mesa_function_pool[10752]: GetTexParameterPointervAPPLE (will be remapped) */ "iip\0" "glGetTexParameterPointervAPPLE\0" "\0" - /* _mesa_function_pool[10775]: TexGenfv (offset 191) */ + /* _mesa_function_pool[10788]: TexGenfv (offset 191) */ "iip\0" "glTexGenfv\0" "\0" - /* _mesa_function_pool[10791]: GetTransformFeedbackVaryingEXT (will be remapped) */ + /* _mesa_function_pool[10804]: GetTransformFeedbackVaryingEXT (will be remapped) */ "iiipppp\0" "glGetTransformFeedbackVaryingEXT\0" "glGetTransformFeedbackVarying\0" "\0" - /* _mesa_function_pool[10863]: VertexAttrib4bvARB (will be remapped) */ + /* _mesa_function_pool[10876]: VertexAttrib4bvARB (will be remapped) */ "ip\0" "glVertexAttrib4bv\0" "glVertexAttrib4bvARB\0" "\0" - /* _mesa_function_pool[10906]: ShaderBinary (will be remapped) */ + /* _mesa_function_pool[10919]: ShaderBinary (will be remapped) */ "ipipi\0" "glShaderBinary\0" "\0" - /* _mesa_function_pool[10928]: GetIntegerIndexedvEXT (will be remapped) */ + /* _mesa_function_pool[10941]: GetIntegerIndexedvEXT (will be remapped) */ "iip\0" "glGetIntegerIndexedvEXT\0" "glGetIntegeri_v\0" "\0" - /* _mesa_function_pool[10973]: MultiTexCoord4sARB (offset 406) */ + /* _mesa_function_pool[10986]: MultiTexCoord4sARB (offset 406) */ "iiiii\0" "glMultiTexCoord4s\0" "glMultiTexCoord4sARB\0" "\0" - /* _mesa_function_pool[11019]: GetFragmentMaterialivSGIX (dynamic) */ + /* _mesa_function_pool[11032]: GetFragmentMaterialivSGIX (dynamic) */ "iip\0" "glGetFragmentMaterialivSGIX\0" "\0" - /* _mesa_function_pool[11052]: WindowPos4dMESA (will be remapped) */ + /* _mesa_function_pool[11065]: WindowPos4dMESA (will be remapped) */ "dddd\0" "glWindowPos4dMESA\0" "\0" - /* _mesa_function_pool[11076]: WeightPointerARB (dynamic) */ + /* _mesa_function_pool[11089]: WeightPointerARB (dynamic) */ "iiip\0" "glWeightPointerARB\0" "\0" - /* _mesa_function_pool[11101]: WindowPos2dMESA (will be remapped) */ + /* _mesa_function_pool[11114]: WindowPos2dMESA (will be remapped) */ "dd\0" "glWindowPos2d\0" "glWindowPos2dARB\0" "glWindowPos2dMESA\0" "\0" - /* _mesa_function_pool[11154]: FramebufferTexture3DEXT (will be remapped) */ + /* _mesa_function_pool[11167]: FramebufferTexture3DEXT (will be remapped) */ "iiiiii\0" "glFramebufferTexture3D\0" "glFramebufferTexture3DEXT\0" "\0" - /* _mesa_function_pool[11211]: BlendEquation (offset 337) */ + /* _mesa_function_pool[11224]: BlendEquation (offset 337) */ "i\0" "glBlendEquation\0" "glBlendEquationEXT\0" "\0" - /* _mesa_function_pool[11249]: VertexAttrib3dNV (will be remapped) */ + /* _mesa_function_pool[11262]: VertexAttrib3dNV (will be remapped) */ "iddd\0" "glVertexAttrib3dNV\0" "\0" - /* _mesa_function_pool[11274]: VertexAttrib3dARB (will be remapped) */ + /* _mesa_function_pool[11287]: VertexAttrib3dARB (will be remapped) */ "iddd\0" "glVertexAttrib3d\0" "glVertexAttrib3dARB\0" "\0" - /* _mesa_function_pool[11317]: VertexAttribI4usvEXT (will be remapped) */ + /* _mesa_function_pool[11330]: VertexAttribI4usvEXT (will be remapped) */ "ip\0" "glVertexAttribI4usvEXT\0" "glVertexAttribI4usv\0" "\0" - /* _mesa_function_pool[11364]: ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[11377]: ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN (dynamic) */ "ppppp\0" "glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[11428]: VertexAttrib4fARB (will be remapped) */ + /* _mesa_function_pool[11441]: VertexAttrib4fARB (will be remapped) */ "iffff\0" "glVertexAttrib4f\0" "glVertexAttrib4fARB\0" "\0" - /* _mesa_function_pool[11472]: GetError (offset 261) */ + /* _mesa_function_pool[11485]: GetError (offset 261) */ "\0" "glGetError\0" "\0" - /* _mesa_function_pool[11485]: IndexFuncEXT (dynamic) */ + /* _mesa_function_pool[11498]: IndexFuncEXT (dynamic) */ "if\0" "glIndexFuncEXT\0" "\0" - /* _mesa_function_pool[11504]: TexCoord3dv (offset 111) */ + /* _mesa_function_pool[11517]: TexCoord3dv (offset 111) */ "p\0" "glTexCoord3dv\0" "\0" - /* _mesa_function_pool[11521]: Indexdv (offset 45) */ + /* _mesa_function_pool[11534]: Indexdv (offset 45) */ "p\0" "glIndexdv\0" "\0" - /* _mesa_function_pool[11534]: FramebufferTexture2DEXT (will be remapped) */ + /* _mesa_function_pool[11547]: FramebufferTexture2DEXT (will be remapped) */ "iiiii\0" "glFramebufferTexture2D\0" "glFramebufferTexture2DEXT\0" "\0" - /* _mesa_function_pool[11590]: Normal3s (offset 60) */ + /* _mesa_function_pool[11603]: Normal3s (offset 60) */ "iii\0" "glNormal3s\0" "\0" - /* _mesa_function_pool[11606]: GetObjectParameterivAPPLE (will be remapped) */ + /* _mesa_function_pool[11619]: GetObjectParameterivAPPLE (will be remapped) */ "iiip\0" "glGetObjectParameterivAPPLE\0" "\0" - /* _mesa_function_pool[11640]: PushName (offset 201) */ + /* _mesa_function_pool[11653]: PushName (offset 201) */ "i\0" "glPushName\0" "\0" - /* _mesa_function_pool[11654]: MultiTexCoord2dvARB (offset 385) */ + /* _mesa_function_pool[11667]: MultiTexCoord2dvARB (offset 385) */ "ip\0" "glMultiTexCoord2dv\0" "glMultiTexCoord2dvARB\0" "\0" - /* _mesa_function_pool[11699]: CullParameterfvEXT (dynamic) */ + /* _mesa_function_pool[11712]: CullParameterfvEXT (dynamic) */ "ip\0" "glCullParameterfvEXT\0" "\0" - /* _mesa_function_pool[11724]: Normal3i (offset 58) */ + /* _mesa_function_pool[11737]: Normal3i (offset 58) */ "iii\0" "glNormal3i\0" "\0" - /* _mesa_function_pool[11740]: ProgramNamedParameter4fvNV (will be remapped) */ + /* _mesa_function_pool[11753]: ProgramNamedParameter4fvNV (will be remapped) */ "iipp\0" "glProgramNamedParameter4fvNV\0" "\0" - /* _mesa_function_pool[11775]: SecondaryColorPointerEXT (will be remapped) */ + /* _mesa_function_pool[11788]: SecondaryColorPointerEXT (will be remapped) */ "iiip\0" "glSecondaryColorPointer\0" "glSecondaryColorPointerEXT\0" "\0" - /* _mesa_function_pool[11832]: VertexAttrib4fvARB (will be remapped) */ + /* _mesa_function_pool[11845]: VertexAttrib4fvARB (will be remapped) */ "ip\0" "glVertexAttrib4fv\0" "glVertexAttrib4fvARB\0" "\0" - /* _mesa_function_pool[11875]: ColorPointerListIBM (dynamic) */ + /* _mesa_function_pool[11888]: ColorPointerListIBM (dynamic) */ "iiipi\0" "glColorPointerListIBM\0" "\0" - /* _mesa_function_pool[11904]: GetActiveUniformARB (will be remapped) */ + /* _mesa_function_pool[11917]: GetActiveUniformARB (will be remapped) */ "iiipppp\0" "glGetActiveUniform\0" "glGetActiveUniformARB\0" "\0" - /* _mesa_function_pool[11954]: ImageTransformParameteriHP (dynamic) */ + /* _mesa_function_pool[11967]: ImageTransformParameteriHP (dynamic) */ "iii\0" "glImageTransformParameteriHP\0" "\0" - /* _mesa_function_pool[11988]: Normal3b (offset 52) */ + /* _mesa_function_pool[12001]: Normal3b (offset 52) */ "iii\0" "glNormal3b\0" "\0" - /* _mesa_function_pool[12004]: Normal3d (offset 54) */ + /* _mesa_function_pool[12017]: Normal3d (offset 54) */ "ddd\0" "glNormal3d\0" "\0" - /* _mesa_function_pool[12020]: Uniform1uiEXT (will be remapped) */ + /* _mesa_function_pool[12033]: Uniform1uiEXT (will be remapped) */ "ii\0" "glUniform1uiEXT\0" "glUniform1ui\0" "\0" - /* _mesa_function_pool[12053]: Normal3f (offset 56) */ + /* _mesa_function_pool[12066]: Normal3f (offset 56) */ "fff\0" "glNormal3f\0" "\0" - /* _mesa_function_pool[12069]: MultiTexCoord1svARB (offset 383) */ + /* _mesa_function_pool[12082]: MultiTexCoord1svARB (offset 383) */ "ip\0" "glMultiTexCoord1sv\0" "glMultiTexCoord1svARB\0" "\0" - /* _mesa_function_pool[12114]: Indexi (offset 48) */ + /* _mesa_function_pool[12127]: Indexi (offset 48) */ "i\0" "glIndexi\0" "\0" - /* _mesa_function_pool[12126]: EGLImageTargetTexture2DOES (will be remapped) */ + /* _mesa_function_pool[12139]: EGLImageTargetTexture2DOES (will be remapped) */ "ip\0" "glEGLImageTargetTexture2DOES\0" "\0" - /* _mesa_function_pool[12159]: EndQueryARB (will be remapped) */ + /* _mesa_function_pool[12172]: EndQueryARB (will be remapped) */ "i\0" "glEndQuery\0" "glEndQueryARB\0" "\0" - /* _mesa_function_pool[12187]: DeleteFencesNV (will be remapped) */ + /* _mesa_function_pool[12200]: DeleteFencesNV (will be remapped) */ "ip\0" "glDeleteFencesNV\0" "\0" - /* _mesa_function_pool[12208]: DeformationMap3dSGIX (dynamic) */ - "iddiiddiiddiip\0" - "glDeformationMap3dSGIX\0" - "\0" - /* _mesa_function_pool[12247]: BindBufferRangeEXT (will be remapped) */ + /* _mesa_function_pool[12221]: BindBufferRangeEXT (will be remapped) */ "iiiii\0" "glBindBufferRangeEXT\0" "glBindBufferRange\0" "\0" - /* _mesa_function_pool[12293]: DepthMask (offset 211) */ + /* _mesa_function_pool[12267]: DepthMask (offset 211) */ "i\0" "glDepthMask\0" "\0" - /* _mesa_function_pool[12308]: IsShader (will be remapped) */ + /* _mesa_function_pool[12282]: IsShader (will be remapped) */ "i\0" "glIsShader\0" "\0" - /* _mesa_function_pool[12322]: Indexf (offset 46) */ + /* _mesa_function_pool[12296]: Indexf (offset 46) */ "f\0" "glIndexf\0" "\0" - /* _mesa_function_pool[12334]: GetImageTransformParameterivHP (dynamic) */ + /* _mesa_function_pool[12308]: GetImageTransformParameterivHP (dynamic) */ "iip\0" "glGetImageTransformParameterivHP\0" "\0" - /* _mesa_function_pool[12372]: Indexd (offset 44) */ + /* _mesa_function_pool[12346]: Indexd (offset 44) */ "d\0" "glIndexd\0" "\0" - /* _mesa_function_pool[12384]: GetMaterialiv (offset 270) */ + /* _mesa_function_pool[12358]: GetMaterialiv (offset 270) */ "iip\0" "glGetMaterialiv\0" "\0" - /* _mesa_function_pool[12405]: StencilOp (offset 244) */ + /* _mesa_function_pool[12379]: StencilOp (offset 244) */ "iii\0" "glStencilOp\0" "\0" - /* _mesa_function_pool[12422]: WindowPos4ivMESA (will be remapped) */ + /* _mesa_function_pool[12396]: WindowPos4ivMESA (will be remapped) */ "p\0" "glWindowPos4ivMESA\0" "\0" - /* _mesa_function_pool[12444]: FramebufferTextureLayer (dynamic) */ + /* _mesa_function_pool[12418]: FramebufferTextureLayer (dynamic) */ "iiiii\0" "glFramebufferTextureLayerARB\0" "\0" - /* _mesa_function_pool[12480]: MultiTexCoord3svARB (offset 399) */ + /* _mesa_function_pool[12454]: MultiTexCoord3svARB (offset 399) */ "ip\0" "glMultiTexCoord3sv\0" "glMultiTexCoord3svARB\0" "\0" - /* _mesa_function_pool[12525]: TexEnvfv (offset 185) */ + /* _mesa_function_pool[12499]: TexEnvfv (offset 185) */ "iip\0" "glTexEnvfv\0" "\0" - /* _mesa_function_pool[12541]: MultiTexCoord4iARB (offset 404) */ + /* _mesa_function_pool[12515]: MultiTexCoord4iARB (offset 404) */ "iiiii\0" "glMultiTexCoord4i\0" "glMultiTexCoord4iARB\0" "\0" - /* _mesa_function_pool[12587]: Indexs (offset 50) */ + /* _mesa_function_pool[12561]: Indexs (offset 50) */ "i\0" "glIndexs\0" "\0" - /* _mesa_function_pool[12599]: Binormal3ivEXT (dynamic) */ + /* _mesa_function_pool[12573]: Binormal3ivEXT (dynamic) */ "p\0" "glBinormal3ivEXT\0" "\0" - /* _mesa_function_pool[12619]: ResizeBuffersMESA (will be remapped) */ + /* _mesa_function_pool[12593]: ResizeBuffersMESA (will be remapped) */ "\0" "glResizeBuffersMESA\0" "\0" - /* _mesa_function_pool[12641]: BlendFuncSeparateiARB (will be remapped) */ + /* _mesa_function_pool[12615]: BlendFuncSeparateiARB (will be remapped) */ "iiiii\0" "glBlendFuncSeparateiARB\0" "\0" - /* _mesa_function_pool[12672]: GetUniformivARB (will be remapped) */ + /* _mesa_function_pool[12646]: GetUniformivARB (will be remapped) */ "iip\0" "glGetUniformiv\0" "glGetUniformivARB\0" "\0" - /* _mesa_function_pool[12710]: PixelTexGenParameteriSGIS (will be remapped) */ + /* _mesa_function_pool[12684]: PixelTexGenParameteriSGIS (will be remapped) */ "ii\0" "glPixelTexGenParameteriSGIS\0" "\0" - /* _mesa_function_pool[12742]: VertexPointervINTEL (dynamic) */ + /* _mesa_function_pool[12716]: VertexPointervINTEL (dynamic) */ "iip\0" "glVertexPointervINTEL\0" "\0" - /* _mesa_function_pool[12769]: Vertex2i (offset 130) */ + /* _mesa_function_pool[12743]: Vertex2i (offset 130) */ "ii\0" "glVertex2i\0" "\0" - /* _mesa_function_pool[12784]: LoadMatrixf (offset 291) */ + /* _mesa_function_pool[12758]: LoadMatrixf (offset 291) */ "p\0" "glLoadMatrixf\0" "\0" - /* _mesa_function_pool[12801]: VertexAttribI1uivEXT (will be remapped) */ + /* _mesa_function_pool[12775]: VertexAttribI1uivEXT (will be remapped) */ "ip\0" "glVertexAttribI1uivEXT\0" "glVertexAttribI1uiv\0" "\0" - /* _mesa_function_pool[12848]: Vertex2f (offset 128) */ + /* _mesa_function_pool[12822]: Vertex2f (offset 128) */ "ff\0" "glVertex2f\0" "\0" - /* _mesa_function_pool[12863]: ReplacementCodeuiColor4fNormal3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[12837]: ReplacementCodeuiColor4fNormal3fVertex3fvSUN (dynamic) */ "pppp\0" "glReplacementCodeuiColor4fNormal3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[12916]: Color4bv (offset 26) */ + /* _mesa_function_pool[12890]: Color4bv (offset 26) */ "p\0" "glColor4bv\0" "\0" - /* _mesa_function_pool[12930]: VertexPointer (offset 321) */ + /* _mesa_function_pool[12904]: VertexPointer (offset 321) */ "iiip\0" "glVertexPointer\0" "\0" - /* _mesa_function_pool[12952]: SecondaryColor3uiEXT (will be remapped) */ + /* _mesa_function_pool[12926]: SecondaryColor3uiEXT (will be remapped) */ "iii\0" "glSecondaryColor3ui\0" "glSecondaryColor3uiEXT\0" "\0" - /* _mesa_function_pool[13000]: StartInstrumentsSGIX (dynamic) */ + /* _mesa_function_pool[12974]: StartInstrumentsSGIX (dynamic) */ "\0" "glStartInstrumentsSGIX\0" "\0" - /* _mesa_function_pool[13025]: SecondaryColor3usvEXT (will be remapped) */ + /* _mesa_function_pool[12999]: SecondaryColor3usvEXT (will be remapped) */ "p\0" "glSecondaryColor3usv\0" "glSecondaryColor3usvEXT\0" "\0" - /* _mesa_function_pool[13073]: VertexAttrib2fvNV (will be remapped) */ + /* _mesa_function_pool[13047]: VertexAttrib2fvNV (will be remapped) */ "ip\0" "glVertexAttrib2fvNV\0" "\0" - /* _mesa_function_pool[13097]: ProgramLocalParameter4dvARB (will be remapped) */ + /* _mesa_function_pool[13071]: ProgramLocalParameter4dvARB (will be remapped) */ "iip\0" "glProgramLocalParameter4dvARB\0" "\0" - /* _mesa_function_pool[13132]: DeleteLists (offset 4) */ + /* _mesa_function_pool[13106]: DeleteLists (offset 4) */ "ii\0" "glDeleteLists\0" "\0" - /* _mesa_function_pool[13150]: LogicOp (offset 242) */ + /* _mesa_function_pool[13124]: LogicOp (offset 242) */ "i\0" "glLogicOp\0" "\0" - /* _mesa_function_pool[13163]: MatrixIndexuivARB (dynamic) */ + /* _mesa_function_pool[13137]: MatrixIndexuivARB (dynamic) */ "ip\0" "glMatrixIndexuivARB\0" "\0" - /* _mesa_function_pool[13187]: Vertex2s (offset 132) */ + /* _mesa_function_pool[13161]: Vertex2s (offset 132) */ "ii\0" "glVertex2s\0" "\0" - /* _mesa_function_pool[13202]: RenderbufferStorageMultisample (will be remapped) */ + /* _mesa_function_pool[13176]: RenderbufferStorageMultisample (will be remapped) */ "iiiii\0" "glRenderbufferStorageMultisample\0" "glRenderbufferStorageMultisampleEXT\0" "\0" - /* _mesa_function_pool[13278]: TexCoord4fv (offset 121) */ + /* _mesa_function_pool[13252]: TexCoord4fv (offset 121) */ "p\0" "glTexCoord4fv\0" "\0" - /* _mesa_function_pool[13295]: Tangent3sEXT (dynamic) */ + /* _mesa_function_pool[13269]: Tangent3sEXT (dynamic) */ "iii\0" "glTangent3sEXT\0" "\0" - /* _mesa_function_pool[13315]: GlobalAlphaFactorfSUN (dynamic) */ + /* _mesa_function_pool[13289]: GlobalAlphaFactorfSUN (dynamic) */ "f\0" "glGlobalAlphaFactorfSUN\0" "\0" - /* _mesa_function_pool[13342]: MultiTexCoord3iARB (offset 396) */ + /* _mesa_function_pool[13316]: MultiTexCoord3iARB (offset 396) */ "iiii\0" "glMultiTexCoord3i\0" "glMultiTexCoord3iARB\0" "\0" - /* _mesa_function_pool[13387]: IsProgram (will be remapped) */ + /* _mesa_function_pool[13361]: IsProgram (will be remapped) */ "i\0" "glIsProgram\0" "\0" - /* _mesa_function_pool[13402]: TexCoordPointerListIBM (dynamic) */ + /* _mesa_function_pool[13376]: TexCoordPointerListIBM (dynamic) */ "iiipi\0" "glTexCoordPointerListIBM\0" "\0" - /* _mesa_function_pool[13434]: VertexAttribI4svEXT (will be remapped) */ + /* _mesa_function_pool[13408]: VertexAttribI4svEXT (will be remapped) */ "ip\0" "glVertexAttribI4svEXT\0" "glVertexAttribI4sv\0" "\0" - /* _mesa_function_pool[13479]: GlobalAlphaFactorusSUN (dynamic) */ + /* _mesa_function_pool[13453]: GlobalAlphaFactorusSUN (dynamic) */ "i\0" "glGlobalAlphaFactorusSUN\0" "\0" - /* _mesa_function_pool[13507]: VertexAttrib2dvNV (will be remapped) */ + /* _mesa_function_pool[13481]: VertexAttrib2dvNV (will be remapped) */ "ip\0" "glVertexAttrib2dvNV\0" "\0" - /* _mesa_function_pool[13531]: FramebufferRenderbufferEXT (will be remapped) */ + /* _mesa_function_pool[13505]: FramebufferRenderbufferEXT (will be remapped) */ "iiii\0" "glFramebufferRenderbuffer\0" "glFramebufferRenderbufferEXT\0" "\0" - /* _mesa_function_pool[13592]: ClearBufferuiv (will be remapped) */ + /* _mesa_function_pool[13566]: ClearBufferuiv (will be remapped) */ "iip\0" "glClearBufferuiv\0" "\0" - /* _mesa_function_pool[13614]: VertexAttrib1dvNV (will be remapped) */ + /* _mesa_function_pool[13588]: VertexAttrib1dvNV (will be remapped) */ "ip\0" "glVertexAttrib1dvNV\0" "\0" - /* _mesa_function_pool[13638]: GenTextures (offset 328) */ + /* _mesa_function_pool[13612]: GenTextures (offset 328) */ "ip\0" "glGenTextures\0" "glGenTexturesEXT\0" "\0" - /* _mesa_function_pool[13673]: FramebufferTextureARB (will be remapped) */ + /* _mesa_function_pool[13647]: FramebufferTextureARB (will be remapped) */ "iiii\0" "glFramebufferTextureARB\0" "\0" - /* _mesa_function_pool[13703]: SetFenceNV (will be remapped) */ + /* _mesa_function_pool[13677]: SetFenceNV (will be remapped) */ "ii\0" "glSetFenceNV\0" "\0" - /* _mesa_function_pool[13720]: FramebufferTexture1DEXT (will be remapped) */ + /* _mesa_function_pool[13694]: FramebufferTexture1DEXT (will be remapped) */ "iiiii\0" "glFramebufferTexture1D\0" "glFramebufferTexture1DEXT\0" "\0" - /* _mesa_function_pool[13776]: GetCombinerOutputParameterivNV (will be remapped) */ + /* _mesa_function_pool[13750]: GetCombinerOutputParameterivNV (will be remapped) */ "iiip\0" "glGetCombinerOutputParameterivNV\0" "\0" - /* _mesa_function_pool[13815]: PixelTexGenParameterivSGIS (will be remapped) */ + /* _mesa_function_pool[13789]: MultiModeDrawArraysIBM (will be remapped) */ + "pppii\0" + "glMultiModeDrawArraysIBM\0" + "\0" + /* _mesa_function_pool[13821]: PixelTexGenParameterivSGIS (will be remapped) */ "ip\0" "glPixelTexGenParameterivSGIS\0" "\0" - /* _mesa_function_pool[13848]: TextureNormalEXT (dynamic) */ + /* _mesa_function_pool[13854]: TextureNormalEXT (dynamic) */ "i\0" "glTextureNormalEXT\0" "\0" - /* _mesa_function_pool[13870]: IndexPointerListIBM (dynamic) */ + /* _mesa_function_pool[13876]: IndexPointerListIBM (dynamic) */ "iipi\0" "glIndexPointerListIBM\0" "\0" - /* _mesa_function_pool[13898]: WeightfvARB (dynamic) */ + /* _mesa_function_pool[13904]: WeightfvARB (dynamic) */ "ip\0" "glWeightfvARB\0" "\0" - /* _mesa_function_pool[13916]: RasterPos2sv (offset 69) */ + /* _mesa_function_pool[13922]: GetCombinerOutputParameterfvNV (will be remapped) */ + "iiip\0" + "glGetCombinerOutputParameterfvNV\0" + "\0" + /* _mesa_function_pool[13961]: RasterPos2sv (offset 69) */ "p\0" "glRasterPos2sv\0" "\0" - /* _mesa_function_pool[13934]: Color4ubv (offset 36) */ + /* _mesa_function_pool[13979]: Color4ubv (offset 36) */ "p\0" "glColor4ubv\0" "\0" - /* _mesa_function_pool[13949]: DrawBuffer (offset 202) */ + /* _mesa_function_pool[13994]: DrawBuffer (offset 202) */ "i\0" "glDrawBuffer\0" "\0" - /* _mesa_function_pool[13965]: TexCoord2fv (offset 105) */ + /* _mesa_function_pool[14010]: TexCoord2fv (offset 105) */ "p\0" "glTexCoord2fv\0" "\0" - /* _mesa_function_pool[13982]: WindowPos4fMESA (will be remapped) */ + /* _mesa_function_pool[14027]: WindowPos4fMESA (will be remapped) */ "ffff\0" "glWindowPos4fMESA\0" "\0" - /* _mesa_function_pool[14006]: TexCoord1sv (offset 101) */ + /* _mesa_function_pool[14051]: TexCoord1sv (offset 101) */ "p\0" "glTexCoord1sv\0" "\0" - /* _mesa_function_pool[14023]: WindowPos3dvMESA (will be remapped) */ + /* _mesa_function_pool[14068]: WindowPos3dvMESA (will be remapped) */ "p\0" "glWindowPos3dv\0" "glWindowPos3dvARB\0" "glWindowPos3dvMESA\0" "\0" - /* _mesa_function_pool[14078]: DepthFunc (offset 245) */ + /* _mesa_function_pool[14123]: DepthFunc (offset 245) */ "i\0" "glDepthFunc\0" "\0" - /* _mesa_function_pool[14093]: PixelMapusv (offset 253) */ + /* _mesa_function_pool[14138]: PixelMapusv (offset 253) */ "iip\0" "glPixelMapusv\0" "\0" - /* _mesa_function_pool[14112]: GetQueryObjecti64vEXT (will be remapped) */ + /* _mesa_function_pool[14157]: GetQueryObjecti64vEXT (will be remapped) */ "iip\0" "glGetQueryObjecti64vEXT\0" "\0" - /* _mesa_function_pool[14141]: MultiTexCoord1dARB (offset 376) */ + /* _mesa_function_pool[14186]: MultiTexCoord1dARB (offset 376) */ "id\0" "glMultiTexCoord1d\0" "glMultiTexCoord1dARB\0" "\0" - /* _mesa_function_pool[14184]: PointParameterivNV (will be remapped) */ + /* _mesa_function_pool[14229]: PointParameterivNV (will be remapped) */ "ip\0" "glPointParameteriv\0" "glPointParameterivNV\0" "\0" - /* _mesa_function_pool[14228]: BlendFunc (offset 241) */ + /* _mesa_function_pool[14273]: BlendFunc (offset 241) */ "ii\0" "glBlendFunc\0" "\0" - /* _mesa_function_pool[14244]: EndTransformFeedbackEXT (will be remapped) */ + /* _mesa_function_pool[14289]: EndTransformFeedbackEXT (will be remapped) */ "\0" "glEndTransformFeedbackEXT\0" "glEndTransformFeedback\0" "\0" - /* _mesa_function_pool[14295]: Uniform2fvARB (will be remapped) */ + /* _mesa_function_pool[14340]: Uniform2fvARB (will be remapped) */ "iip\0" "glUniform2fv\0" "glUniform2fvARB\0" "\0" - /* _mesa_function_pool[14329]: BufferParameteriAPPLE (will be remapped) */ + /* _mesa_function_pool[14374]: BufferParameteriAPPLE (will be remapped) */ "iii\0" "glBufferParameteriAPPLE\0" "\0" - /* _mesa_function_pool[14358]: MultiTexCoord3dvARB (offset 393) */ + /* _mesa_function_pool[14403]: MultiTexCoord3dvARB (offset 393) */ "ip\0" "glMultiTexCoord3dv\0" "glMultiTexCoord3dvARB\0" "\0" - /* _mesa_function_pool[14403]: ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[14448]: ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN (dynamic) */ "pppp\0" "glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[14459]: DeleteObjectARB (will be remapped) */ + /* _mesa_function_pool[14504]: DeleteObjectARB (will be remapped) */ "i\0" "glDeleteObjectARB\0" "\0" - /* _mesa_function_pool[14480]: GetShaderPrecisionFormat (will be remapped) */ + /* _mesa_function_pool[14525]: GetShaderPrecisionFormat (will be remapped) */ "iipp\0" "glGetShaderPrecisionFormat\0" "\0" - /* _mesa_function_pool[14513]: MatrixIndexPointerARB (dynamic) */ + /* _mesa_function_pool[14558]: MatrixIndexPointerARB (dynamic) */ "iiip\0" "glMatrixIndexPointerARB\0" "\0" - /* _mesa_function_pool[14543]: ProgramNamedParameter4dvNV (will be remapped) */ + /* _mesa_function_pool[14588]: ProgramNamedParameter4dvNV (will be remapped) */ "iipp\0" "glProgramNamedParameter4dvNV\0" "\0" - /* _mesa_function_pool[14578]: Tangent3fvEXT (dynamic) */ + /* _mesa_function_pool[14623]: Tangent3fvEXT (dynamic) */ "p\0" "glTangent3fvEXT\0" "\0" - /* _mesa_function_pool[14597]: Flush (offset 217) */ + /* _mesa_function_pool[14642]: Flush (offset 217) */ "\0" "glFlush\0" "\0" - /* _mesa_function_pool[14607]: Color4uiv (offset 38) */ + /* _mesa_function_pool[14652]: Color4uiv (offset 38) */ "p\0" "glColor4uiv\0" "\0" - /* _mesa_function_pool[14622]: VertexAttribI4iEXT (will be remapped) */ + /* _mesa_function_pool[14667]: VertexAttribI4iEXT (will be remapped) */ "iiiii\0" "glVertexAttribI4iEXT\0" "glVertexAttribI4i\0" "\0" - /* _mesa_function_pool[14668]: GenVertexArrays (will be remapped) */ + /* _mesa_function_pool[14713]: GenVertexArrays (will be remapped) */ "ip\0" "glGenVertexArrays\0" "\0" - /* _mesa_function_pool[14690]: Uniform3uivEXT (will be remapped) */ + /* _mesa_function_pool[14735]: Uniform3uivEXT (will be remapped) */ "iip\0" "glUniform3uivEXT\0" "glUniform3uiv\0" "\0" - /* _mesa_function_pool[14726]: RasterPos3sv (offset 77) */ + /* _mesa_function_pool[14771]: RasterPos3sv (offset 77) */ "p\0" "glRasterPos3sv\0" "\0" - /* _mesa_function_pool[14744]: BindFramebufferEXT (will be remapped) */ + /* _mesa_function_pool[14789]: BindFramebufferEXT (will be remapped) */ "ii\0" "glBindFramebuffer\0" "glBindFramebufferEXT\0" "\0" - /* _mesa_function_pool[14787]: ReferencePlaneSGIX (dynamic) */ + /* _mesa_function_pool[14832]: ReferencePlaneSGIX (dynamic) */ "p\0" "glReferencePlaneSGIX\0" "\0" - /* _mesa_function_pool[14811]: PushAttrib (offset 219) */ + /* _mesa_function_pool[14856]: PushAttrib (offset 219) */ "i\0" "glPushAttrib\0" "\0" - /* _mesa_function_pool[14827]: RasterPos2i (offset 66) */ + /* _mesa_function_pool[14872]: RasterPos2i (offset 66) */ "ii\0" "glRasterPos2i\0" "\0" - /* _mesa_function_pool[14845]: ValidateProgramARB (will be remapped) */ + /* _mesa_function_pool[14890]: ValidateProgramARB (will be remapped) */ "i\0" "glValidateProgram\0" "glValidateProgramARB\0" "\0" - /* _mesa_function_pool[14887]: TexParameteriv (offset 181) */ + /* _mesa_function_pool[14932]: TexParameteriv (offset 181) */ "iip\0" "glTexParameteriv\0" "\0" - /* _mesa_function_pool[14909]: UnlockArraysEXT (will be remapped) */ + /* _mesa_function_pool[14954]: UnlockArraysEXT (will be remapped) */ "\0" "glUnlockArraysEXT\0" "\0" - /* _mesa_function_pool[14929]: TexCoord2fColor3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[14974]: TexCoord2fColor3fVertex3fSUN (dynamic) */ "ffffffff\0" "glTexCoord2fColor3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[14970]: WindowPos3fvMESA (will be remapped) */ + /* _mesa_function_pool[15015]: WindowPos3fvMESA (will be remapped) */ "p\0" "glWindowPos3fv\0" "glWindowPos3fvARB\0" "glWindowPos3fvMESA\0" "\0" - /* _mesa_function_pool[15025]: RasterPos2f (offset 64) */ + /* _mesa_function_pool[15070]: RasterPos2f (offset 64) */ "ff\0" "glRasterPos2f\0" "\0" - /* _mesa_function_pool[15043]: VertexAttrib1svNV (will be remapped) */ + /* _mesa_function_pool[15088]: VertexAttrib1svNV (will be remapped) */ "ip\0" "glVertexAttrib1svNV\0" "\0" - /* _mesa_function_pool[15067]: RasterPos2d (offset 62) */ + /* _mesa_function_pool[15112]: RasterPos2d (offset 62) */ "dd\0" "glRasterPos2d\0" "\0" - /* _mesa_function_pool[15085]: RasterPos3fv (offset 73) */ + /* _mesa_function_pool[15130]: RasterPos3fv (offset 73) */ "p\0" "glRasterPos3fv\0" "\0" - /* _mesa_function_pool[15103]: CopyTexSubImage3D (offset 373) */ + /* _mesa_function_pool[15148]: CopyTexSubImage3D (offset 373) */ "iiiiiiiii\0" "glCopyTexSubImage3D\0" "glCopyTexSubImage3DEXT\0" "\0" - /* _mesa_function_pool[15157]: VertexAttrib2dARB (will be remapped) */ + /* _mesa_function_pool[15202]: VertexAttrib2dARB (will be remapped) */ "idd\0" "glVertexAttrib2d\0" "glVertexAttrib2dARB\0" "\0" - /* _mesa_function_pool[15199]: Color4ub (offset 35) */ + /* _mesa_function_pool[15244]: Color4ub (offset 35) */ "iiii\0" "glColor4ub\0" "\0" - /* _mesa_function_pool[15216]: GetInteger64v (will be remapped) */ + /* _mesa_function_pool[15261]: GetInteger64v (will be remapped) */ "ip\0" "glGetInteger64v\0" "\0" - /* _mesa_function_pool[15236]: TextureColorMaskSGIS (dynamic) */ + /* _mesa_function_pool[15281]: TextureColorMaskSGIS (dynamic) */ "iiii\0" "glTextureColorMaskSGIS\0" "\0" - /* _mesa_function_pool[15265]: RasterPos2s (offset 68) */ + /* _mesa_function_pool[15310]: RasterPos2s (offset 68) */ "ii\0" "glRasterPos2s\0" "\0" - /* _mesa_function_pool[15283]: GetColorTable (offset 343) */ + /* _mesa_function_pool[15328]: GetColorTable (offset 343) */ "iiip\0" "glGetColorTable\0" "glGetColorTableSGI\0" "glGetColorTableEXT\0" "\0" - /* _mesa_function_pool[15343]: SelectBuffer (offset 195) */ + /* _mesa_function_pool[15388]: SelectBuffer (offset 195) */ "ip\0" "glSelectBuffer\0" "\0" - /* _mesa_function_pool[15362]: Indexiv (offset 49) */ + /* _mesa_function_pool[15407]: Indexiv (offset 49) */ "p\0" "glIndexiv\0" "\0" - /* _mesa_function_pool[15375]: TexCoord3i (offset 114) */ + /* _mesa_function_pool[15420]: TexCoord3i (offset 114) */ "iii\0" "glTexCoord3i\0" "\0" - /* _mesa_function_pool[15393]: CopyColorTable (offset 342) */ + /* _mesa_function_pool[15438]: CopyColorTable (offset 342) */ "iiiii\0" "glCopyColorTable\0" "glCopyColorTableSGI\0" "\0" - /* _mesa_function_pool[15437]: GetHistogramParameterfv (offset 362) */ + /* _mesa_function_pool[15482]: GetHistogramParameterfv (offset 362) */ "iip\0" "glGetHistogramParameterfv\0" "glGetHistogramParameterfvEXT\0" "\0" - /* _mesa_function_pool[15497]: Frustum (offset 289) */ + /* _mesa_function_pool[15542]: Frustum (offset 289) */ "dddddd\0" "glFrustum\0" "\0" - /* _mesa_function_pool[15515]: GetString (offset 275) */ + /* _mesa_function_pool[15560]: GetString (offset 275) */ "i\0" "glGetString\0" "\0" - /* _mesa_function_pool[15530]: ColorPointervINTEL (dynamic) */ + /* _mesa_function_pool[15575]: ColorPointervINTEL (dynamic) */ "iip\0" "glColorPointervINTEL\0" "\0" - /* _mesa_function_pool[15556]: TexEnvf (offset 184) */ + /* _mesa_function_pool[15601]: TexEnvf (offset 184) */ "iif\0" "glTexEnvf\0" "\0" - /* _mesa_function_pool[15571]: TexCoord3d (offset 110) */ + /* _mesa_function_pool[15616]: TexCoord3d (offset 110) */ "ddd\0" "glTexCoord3d\0" "\0" - /* _mesa_function_pool[15589]: AlphaFragmentOp1ATI (will be remapped) */ + /* _mesa_function_pool[15634]: AlphaFragmentOp1ATI (will be remapped) */ "iiiiii\0" "glAlphaFragmentOp1ATI\0" "\0" - /* _mesa_function_pool[15619]: TexCoord3f (offset 112) */ + /* _mesa_function_pool[15664]: TexCoord3f (offset 112) */ "fff\0" "glTexCoord3f\0" "\0" - /* _mesa_function_pool[15637]: MultiTexCoord3ivARB (offset 397) */ + /* _mesa_function_pool[15682]: MultiTexCoord3ivARB (offset 397) */ "ip\0" "glMultiTexCoord3iv\0" "glMultiTexCoord3ivARB\0" "\0" - /* _mesa_function_pool[15682]: MultiTexCoord2sARB (offset 390) */ + /* _mesa_function_pool[15727]: MultiTexCoord2sARB (offset 390) */ "iii\0" "glMultiTexCoord2s\0" "glMultiTexCoord2sARB\0" "\0" - /* _mesa_function_pool[15726]: VertexAttrib1dvARB (will be remapped) */ + /* _mesa_function_pool[15771]: VertexAttrib1dvARB (will be remapped) */ "ip\0" "glVertexAttrib1dv\0" "glVertexAttrib1dvARB\0" "\0" - /* _mesa_function_pool[15769]: DeleteTextures (offset 327) */ + /* _mesa_function_pool[15814]: DeleteTextures (offset 327) */ "ip\0" "glDeleteTextures\0" "glDeleteTexturesEXT\0" "\0" - /* _mesa_function_pool[15810]: TexCoordPointerEXT (will be remapped) */ + /* _mesa_function_pool[15855]: TexCoordPointerEXT (will be remapped) */ "iiiip\0" "glTexCoordPointerEXT\0" "\0" - /* _mesa_function_pool[15838]: TexSubImage4DSGIS (dynamic) */ + /* _mesa_function_pool[15883]: TexSubImage4DSGIS (dynamic) */ "iiiiiiiiiiiip\0" "glTexSubImage4DSGIS\0" "\0" - /* _mesa_function_pool[15873]: TexCoord3s (offset 116) */ + /* _mesa_function_pool[15918]: TexCoord3s (offset 116) */ "iii\0" "glTexCoord3s\0" "\0" - /* _mesa_function_pool[15891]: GetTexLevelParameteriv (offset 285) */ + /* _mesa_function_pool[15936]: GetTexLevelParameteriv (offset 285) */ "iiip\0" "glGetTexLevelParameteriv\0" "\0" - /* _mesa_function_pool[15922]: CombinerStageParameterfvNV (dynamic) */ + /* _mesa_function_pool[15967]: CombinerStageParameterfvNV (dynamic) */ "iip\0" "glCombinerStageParameterfvNV\0" "\0" - /* _mesa_function_pool[15956]: StopInstrumentsSGIX (dynamic) */ + /* _mesa_function_pool[16001]: StopInstrumentsSGIX (dynamic) */ "i\0" "glStopInstrumentsSGIX\0" "\0" - /* _mesa_function_pool[15981]: TexCoord4fColor4fNormal3fVertex4fSUN (dynamic) */ + /* _mesa_function_pool[16026]: TexCoord4fColor4fNormal3fVertex4fSUN (dynamic) */ "fffffffffffffff\0" "glTexCoord4fColor4fNormal3fVertex4fSUN\0" "\0" - /* _mesa_function_pool[16037]: ClearAccum (offset 204) */ + /* _mesa_function_pool[16082]: ClearAccum (offset 204) */ "ffff\0" "glClearAccum\0" "\0" - /* _mesa_function_pool[16056]: DeformSGIX (dynamic) */ + /* _mesa_function_pool[16101]: DeformSGIX (dynamic) */ "i\0" "glDeformSGIX\0" "\0" - /* _mesa_function_pool[16072]: GetVertexAttribfvARB (will be remapped) */ + /* _mesa_function_pool[16117]: GetVertexAttribfvARB (will be remapped) */ "iip\0" "glGetVertexAttribfv\0" "glGetVertexAttribfvARB\0" "\0" - /* _mesa_function_pool[16120]: SecondaryColor3ivEXT (will be remapped) */ + /* _mesa_function_pool[16165]: SecondaryColor3ivEXT (will be remapped) */ "p\0" "glSecondaryColor3iv\0" "glSecondaryColor3ivEXT\0" "\0" - /* _mesa_function_pool[16166]: TexCoord4iv (offset 123) */ + /* _mesa_function_pool[16211]: TexCoord4iv (offset 123) */ "p\0" "glTexCoord4iv\0" "\0" - /* _mesa_function_pool[16183]: VertexAttribI4uiEXT (will be remapped) */ + /* _mesa_function_pool[16228]: VertexAttribI4uiEXT (will be remapped) */ "iiiii\0" "glVertexAttribI4uiEXT\0" "glVertexAttribI4ui\0" "\0" - /* _mesa_function_pool[16231]: GetFragmentMaterialfvSGIX (dynamic) */ + /* _mesa_function_pool[16276]: GetFragmentMaterialfvSGIX (dynamic) */ "iip\0" "glGetFragmentMaterialfvSGIX\0" "\0" - /* _mesa_function_pool[16264]: UniformMatrix4x2fv (will be remapped) */ + /* _mesa_function_pool[16309]: UniformMatrix4x2fv (will be remapped) */ "iiip\0" "glUniformMatrix4x2fv\0" "\0" - /* _mesa_function_pool[16291]: GetDetailTexFuncSGIS (dynamic) */ + /* _mesa_function_pool[16336]: GetDetailTexFuncSGIS (dynamic) */ "ip\0" "glGetDetailTexFuncSGIS\0" "\0" - /* _mesa_function_pool[16318]: GetCombinerStageParameterfvNV (dynamic) */ + /* _mesa_function_pool[16363]: GetCombinerStageParameterfvNV (dynamic) */ "iip\0" "glGetCombinerStageParameterfvNV\0" "\0" - /* _mesa_function_pool[16355]: PolygonOffset (offset 319) */ + /* _mesa_function_pool[16400]: PolygonOffset (offset 319) */ "ff\0" "glPolygonOffset\0" "\0" - /* _mesa_function_pool[16375]: BindVertexArray (will be remapped) */ + /* _mesa_function_pool[16420]: BindVertexArray (will be remapped) */ "i\0" "glBindVertexArray\0" "\0" - /* _mesa_function_pool[16396]: Color4ubVertex2fvSUN (dynamic) */ + /* _mesa_function_pool[16441]: Color4ubVertex2fvSUN (dynamic) */ "pp\0" "glColor4ubVertex2fvSUN\0" "\0" - /* _mesa_function_pool[16423]: Rectd (offset 86) */ + /* _mesa_function_pool[16468]: Rectd (offset 86) */ "dddd\0" "glRectd\0" "\0" - /* _mesa_function_pool[16437]: TexFilterFuncSGIS (dynamic) */ + /* _mesa_function_pool[16482]: TexFilterFuncSGIS (dynamic) */ "iiip\0" "glTexFilterFuncSGIS\0" "\0" - /* _mesa_function_pool[16463]: TextureBarrierNV (will be remapped) */ + /* _mesa_function_pool[16508]: TextureBarrierNV (will be remapped) */ "\0" "glTextureBarrierNV\0" "\0" - /* _mesa_function_pool[16484]: VertexAttribI4ubvEXT (will be remapped) */ + /* _mesa_function_pool[16529]: VertexAttribI4ubvEXT (will be remapped) */ "ip\0" "glVertexAttribI4ubvEXT\0" "glVertexAttribI4ubv\0" "\0" - /* _mesa_function_pool[16531]: GetAttribLocationARB (will be remapped) */ + /* _mesa_function_pool[16576]: GetAttribLocationARB (will be remapped) */ "ip\0" "glGetAttribLocation\0" "glGetAttribLocationARB\0" "\0" - /* _mesa_function_pool[16578]: RasterPos3i (offset 74) */ + /* _mesa_function_pool[16623]: RasterPos3i (offset 74) */ "iii\0" "glRasterPos3i\0" "\0" - /* _mesa_function_pool[16597]: VertexAttrib4ubvARB (will be remapped) */ + /* _mesa_function_pool[16642]: BlendEquationSeparateiARB (will be remapped) */ + "iii\0" + "glBlendEquationSeparateiARB\0" + "\0" + /* _mesa_function_pool[16675]: VertexAttrib4ubvARB (will be remapped) */ "ip\0" "glVertexAttrib4ubv\0" "glVertexAttrib4ubvARB\0" "\0" - /* _mesa_function_pool[16642]: DetailTexFuncSGIS (dynamic) */ + /* _mesa_function_pool[16720]: DetailTexFuncSGIS (dynamic) */ "iip\0" "glDetailTexFuncSGIS\0" "\0" - /* _mesa_function_pool[16667]: Normal3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[16745]: Normal3fVertex3fSUN (dynamic) */ "ffffff\0" "glNormal3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[16697]: CopyTexImage2D (offset 324) */ + /* _mesa_function_pool[16775]: CopyTexImage2D (offset 324) */ "iiiiiiii\0" "glCopyTexImage2D\0" "glCopyTexImage2DEXT\0" "\0" - /* _mesa_function_pool[16744]: GetBufferPointervARB (will be remapped) */ + /* _mesa_function_pool[16822]: GetBufferPointervARB (will be remapped) */ "iip\0" "glGetBufferPointerv\0" "glGetBufferPointervARB\0" "\0" - /* _mesa_function_pool[16792]: ProgramEnvParameter4fARB (will be remapped) */ + /* _mesa_function_pool[16870]: ProgramEnvParameter4fARB (will be remapped) */ "iiffff\0" "glProgramEnvParameter4fARB\0" "glProgramParameter4fNV\0" "\0" - /* _mesa_function_pool[16850]: Uniform3ivARB (will be remapped) */ + /* _mesa_function_pool[16928]: Uniform3ivARB (will be remapped) */ "iip\0" "glUniform3iv\0" "glUniform3ivARB\0" "\0" - /* _mesa_function_pool[16884]: Lightfv (offset 160) */ + /* _mesa_function_pool[16962]: Lightfv (offset 160) */ "iip\0" "glLightfv\0" "\0" - /* _mesa_function_pool[16899]: PrimitiveRestartIndexNV (will be remapped) */ + /* _mesa_function_pool[16977]: PrimitiveRestartIndexNV (will be remapped) */ "i\0" "glPrimitiveRestartIndexNV\0" "glPrimitiveRestartIndex\0" "\0" - /* _mesa_function_pool[16952]: ClearDepth (offset 208) */ + /* _mesa_function_pool[17030]: ClearDepth (offset 208) */ "d\0" "glClearDepth\0" "\0" - /* _mesa_function_pool[16968]: GetFenceivNV (will be remapped) */ + /* _mesa_function_pool[17046]: GetFenceivNV (will be remapped) */ "iip\0" "glGetFenceivNV\0" "\0" - /* _mesa_function_pool[16988]: WindowPos4dvMESA (will be remapped) */ + /* _mesa_function_pool[17066]: WindowPos4dvMESA (will be remapped) */ "p\0" "glWindowPos4dvMESA\0" "\0" - /* _mesa_function_pool[17010]: ColorSubTable (offset 346) */ + /* _mesa_function_pool[17088]: ColorSubTable (offset 346) */ "iiiiip\0" "glColorSubTable\0" "glColorSubTableEXT\0" "\0" - /* _mesa_function_pool[17053]: Color4fv (offset 30) */ + /* _mesa_function_pool[17131]: Color4fv (offset 30) */ "p\0" "glColor4fv\0" "\0" - /* _mesa_function_pool[17067]: MultiTexCoord4ivARB (offset 405) */ + /* _mesa_function_pool[17145]: MultiTexCoord4ivARB (offset 405) */ "ip\0" "glMultiTexCoord4iv\0" "glMultiTexCoord4ivARB\0" "\0" - /* _mesa_function_pool[17112]: ProgramLocalParameters4fvEXT (will be remapped) */ + /* _mesa_function_pool[17190]: ProgramLocalParameters4fvEXT (will be remapped) */ "iiip\0" "glProgramLocalParameters4fvEXT\0" "\0" - /* _mesa_function_pool[17149]: ColorPointer (offset 308) */ + /* _mesa_function_pool[17227]: ColorPointer (offset 308) */ "iiip\0" "glColorPointer\0" "\0" - /* _mesa_function_pool[17170]: Rects (offset 92) */ + /* _mesa_function_pool[17248]: Rects (offset 92) */ "iiii\0" "glRects\0" "\0" - /* _mesa_function_pool[17184]: GetMapAttribParameterfvNV (dynamic) */ + /* _mesa_function_pool[17262]: GetMapAttribParameterfvNV (dynamic) */ "iiip\0" "glGetMapAttribParameterfvNV\0" "\0" - /* _mesa_function_pool[17218]: CreateShaderProgramEXT (will be remapped) */ + /* _mesa_function_pool[17296]: CreateShaderProgramEXT (will be remapped) */ "ip\0" "glCreateShaderProgramEXT\0" "\0" - /* _mesa_function_pool[17247]: ActiveProgramEXT (will be remapped) */ + /* _mesa_function_pool[17325]: ActiveProgramEXT (will be remapped) */ "i\0" "glActiveProgramEXT\0" "\0" - /* _mesa_function_pool[17269]: Lightiv (offset 162) */ + /* _mesa_function_pool[17347]: Lightiv (offset 162) */ "iip\0" "glLightiv\0" "\0" - /* _mesa_function_pool[17284]: VertexAttrib4sARB (will be remapped) */ + /* _mesa_function_pool[17362]: VertexAttrib4sARB (will be remapped) */ "iiiii\0" "glVertexAttrib4s\0" "glVertexAttrib4sARB\0" "\0" - /* _mesa_function_pool[17328]: GetQueryObjectuivARB (will be remapped) */ + /* _mesa_function_pool[17406]: GetQueryObjectuivARB (will be remapped) */ "iip\0" "glGetQueryObjectuiv\0" "glGetQueryObjectuivARB\0" "\0" - /* _mesa_function_pool[17376]: GetTexParameteriv (offset 283) */ + /* _mesa_function_pool[17454]: GetTexParameteriv (offset 283) */ "iip\0" "glGetTexParameteriv\0" "\0" - /* _mesa_function_pool[17401]: MapParameterivNV (dynamic) */ + /* _mesa_function_pool[17479]: MapParameterivNV (dynamic) */ "iip\0" "glMapParameterivNV\0" "\0" - /* _mesa_function_pool[17425]: GenRenderbuffersEXT (will be remapped) */ + /* _mesa_function_pool[17503]: GenRenderbuffersEXT (will be remapped) */ "ip\0" "glGenRenderbuffers\0" "glGenRenderbuffersEXT\0" "\0" - /* _mesa_function_pool[17470]: ClearBufferfv (will be remapped) */ + /* _mesa_function_pool[17548]: ClearBufferfv (will be remapped) */ "iip\0" "glClearBufferfv\0" "\0" - /* _mesa_function_pool[17491]: VertexAttrib2dvARB (will be remapped) */ + /* _mesa_function_pool[17569]: VertexAttrib2dvARB (will be remapped) */ "ip\0" "glVertexAttrib2dv\0" "glVertexAttrib2dvARB\0" "\0" - /* _mesa_function_pool[17534]: EdgeFlagPointerEXT (will be remapped) */ + /* _mesa_function_pool[17612]: EdgeFlagPointerEXT (will be remapped) */ "iip\0" "glEdgeFlagPointerEXT\0" "\0" - /* _mesa_function_pool[17560]: VertexAttribs2svNV (will be remapped) */ + /* _mesa_function_pool[17638]: VertexAttribs2svNV (will be remapped) */ "iip\0" "glVertexAttribs2svNV\0" "\0" - /* _mesa_function_pool[17586]: WeightbvARB (dynamic) */ + /* _mesa_function_pool[17664]: WeightbvARB (dynamic) */ "ip\0" "glWeightbvARB\0" "\0" - /* _mesa_function_pool[17604]: VertexAttrib2fvARB (will be remapped) */ + /* _mesa_function_pool[17682]: VertexAttrib2fvARB (will be remapped) */ "ip\0" "glVertexAttrib2fv\0" "glVertexAttrib2fvARB\0" "\0" - /* _mesa_function_pool[17647]: GetBufferParameterivARB (will be remapped) */ + /* _mesa_function_pool[17725]: GetBufferParameterivARB (will be remapped) */ "iip\0" "glGetBufferParameteriv\0" "glGetBufferParameterivARB\0" "\0" - /* _mesa_function_pool[17701]: Rectdv (offset 87) */ + /* _mesa_function_pool[17779]: Rectdv (offset 87) */ "pp\0" "glRectdv\0" "\0" - /* _mesa_function_pool[17714]: ListParameteriSGIX (dynamic) */ + /* _mesa_function_pool[17792]: ListParameteriSGIX (dynamic) */ "iii\0" "glListParameteriSGIX\0" "\0" - /* _mesa_function_pool[17740]: BlendEquationiARB (will be remapped) */ + /* _mesa_function_pool[17818]: BlendEquationiARB (will be remapped) */ "ii\0" "glBlendEquationiARB\0" "\0" - /* _mesa_function_pool[17764]: ReplacementCodeuiColor4fNormal3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[17842]: ReplacementCodeuiColor4fNormal3fVertex3fSUN (dynamic) */ "iffffffffff\0" "glReplacementCodeuiColor4fNormal3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[17823]: InstrumentsBufferSGIX (dynamic) */ + /* _mesa_function_pool[17901]: InstrumentsBufferSGIX (dynamic) */ "ip\0" "glInstrumentsBufferSGIX\0" "\0" - /* _mesa_function_pool[17851]: VertexAttrib4NivARB (will be remapped) */ + /* _mesa_function_pool[17929]: VertexAttrib4NivARB (will be remapped) */ "ip\0" "glVertexAttrib4Niv\0" "glVertexAttrib4NivARB\0" "\0" - /* _mesa_function_pool[17896]: DrawArraysInstancedARB (will be remapped) */ + /* _mesa_function_pool[17974]: DrawArraysInstancedARB (will be remapped) */ "iiii\0" "glDrawArraysInstancedARB\0" "glDrawArraysInstancedEXT\0" "glDrawArraysInstanced\0" "\0" - /* _mesa_function_pool[17974]: GetAttachedShaders (will be remapped) */ + /* _mesa_function_pool[18052]: GetAttachedShaders (will be remapped) */ "iipp\0" "glGetAttachedShaders\0" "\0" - /* _mesa_function_pool[18001]: GenVertexArraysAPPLE (will be remapped) */ + /* _mesa_function_pool[18079]: GenVertexArraysAPPLE (will be remapped) */ "ip\0" "glGenVertexArraysAPPLE\0" "\0" - /* _mesa_function_pool[18028]: ClearBufferfi (will be remapped) */ + /* _mesa_function_pool[18106]: ClearBufferfi (will be remapped) */ "iifi\0" "glClearBufferfi\0" "\0" - /* _mesa_function_pool[18050]: Materialiv (offset 172) */ + /* _mesa_function_pool[18128]: Materialiv (offset 172) */ "iip\0" "glMaterialiv\0" "\0" - /* _mesa_function_pool[18068]: PushClientAttrib (offset 335) */ + /* _mesa_function_pool[18146]: PushClientAttrib (offset 335) */ "i\0" "glPushClientAttrib\0" "\0" - /* _mesa_function_pool[18090]: ProgramEnvParameters4fvEXT (will be remapped) */ + /* _mesa_function_pool[18168]: ProgramEnvParameters4fvEXT (will be remapped) */ "iiip\0" "glProgramEnvParameters4fvEXT\0" "\0" - /* _mesa_function_pool[18125]: TexCoord2fColor4fNormal3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[18203]: TexCoord2fColor4fNormal3fVertex3fvSUN (dynamic) */ "pppp\0" "glTexCoord2fColor4fNormal3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[18171]: WindowPos2iMESA (will be remapped) */ + /* _mesa_function_pool[18249]: WindowPos2iMESA (will be remapped) */ "ii\0" "glWindowPos2i\0" "glWindowPos2iARB\0" "glWindowPos2iMESA\0" "\0" - /* _mesa_function_pool[18224]: SampleMaskSGIS (will be remapped) */ + /* _mesa_function_pool[18302]: SampleMaskSGIS (will be remapped) */ "fi\0" "glSampleMaskSGIS\0" "glSampleMaskEXT\0" "\0" - /* _mesa_function_pool[18261]: SecondaryColor3fvEXT (will be remapped) */ + /* _mesa_function_pool[18339]: SecondaryColor3fvEXT (will be remapped) */ "p\0" "glSecondaryColor3fv\0" "glSecondaryColor3fvEXT\0" "\0" - /* _mesa_function_pool[18307]: PolygonMode (offset 174) */ + /* _mesa_function_pool[18385]: PolygonMode (offset 174) */ "ii\0" "glPolygonMode\0" "\0" - /* _mesa_function_pool[18325]: CompressedTexSubImage1DARB (will be remapped) */ + /* _mesa_function_pool[18403]: CompressedTexSubImage1DARB (will be remapped) */ "iiiiiip\0" "glCompressedTexSubImage1D\0" "glCompressedTexSubImage1DARB\0" "\0" - /* _mesa_function_pool[18389]: VertexAttribI1iEXT (will be remapped) */ + /* _mesa_function_pool[18467]: VertexAttribI1iEXT (will be remapped) */ "ii\0" "glVertexAttribI1iEXT\0" "glVertexAttribI1i\0" "\0" - /* _mesa_function_pool[18432]: GetVertexAttribivNV (will be remapped) */ + /* _mesa_function_pool[18510]: GetVertexAttribivNV (will be remapped) */ "iip\0" "glGetVertexAttribivNV\0" "\0" - /* _mesa_function_pool[18459]: GetProgramStringARB (will be remapped) */ + /* _mesa_function_pool[18537]: GetProgramStringARB (will be remapped) */ "iip\0" "glGetProgramStringARB\0" "\0" - /* _mesa_function_pool[18486]: VertexAttribIPointerEXT (will be remapped) */ + /* _mesa_function_pool[18564]: VertexAttribIPointerEXT (will be remapped) */ "iiiip\0" "glVertexAttribIPointerEXT\0" "glVertexAttribIPointer\0" "\0" - /* _mesa_function_pool[18542]: TexBumpParameterfvATI (will be remapped) */ + /* _mesa_function_pool[18620]: TexBumpParameterfvATI (will be remapped) */ "ip\0" "glTexBumpParameterfvATI\0" "\0" - /* _mesa_function_pool[18570]: CompileShaderARB (will be remapped) */ + /* _mesa_function_pool[18648]: CompileShaderARB (will be remapped) */ "i\0" "glCompileShader\0" "glCompileShaderARB\0" "\0" - /* _mesa_function_pool[18608]: DeleteShader (will be remapped) */ + /* _mesa_function_pool[18686]: DeleteShader (will be remapped) */ "i\0" "glDeleteShader\0" "\0" - /* _mesa_function_pool[18626]: DisableClientState (offset 309) */ + /* _mesa_function_pool[18704]: DisableClientState (offset 309) */ "i\0" "glDisableClientState\0" "\0" - /* _mesa_function_pool[18650]: TexGeni (offset 192) */ + /* _mesa_function_pool[18728]: TexGeni (offset 192) */ "iii\0" "glTexGeni\0" "\0" - /* _mesa_function_pool[18665]: TexGenf (offset 190) */ + /* _mesa_function_pool[18743]: TexGenf (offset 190) */ "iif\0" "glTexGenf\0" "\0" - /* _mesa_function_pool[18680]: Uniform3fARB (will be remapped) */ + /* _mesa_function_pool[18758]: Uniform3fARB (will be remapped) */ "ifff\0" "glUniform3f\0" "glUniform3fARB\0" "\0" - /* _mesa_function_pool[18713]: TexGend (offset 188) */ + /* _mesa_function_pool[18791]: TexGend (offset 188) */ "iid\0" "glTexGend\0" "\0" - /* _mesa_function_pool[18728]: ListParameterfvSGIX (dynamic) */ + /* _mesa_function_pool[18806]: ListParameterfvSGIX (dynamic) */ "iip\0" "glListParameterfvSGIX\0" "\0" - /* _mesa_function_pool[18755]: GetPolygonStipple (offset 274) */ + /* _mesa_function_pool[18833]: GetPolygonStipple (offset 274) */ "p\0" "glGetPolygonStipple\0" "\0" - /* _mesa_function_pool[18778]: Tangent3dvEXT (dynamic) */ + /* _mesa_function_pool[18856]: Tangent3dvEXT (dynamic) */ "p\0" "glTangent3dvEXT\0" "\0" - /* _mesa_function_pool[18797]: BindBufferOffsetEXT (will be remapped) */ + /* _mesa_function_pool[18875]: BindBufferOffsetEXT (will be remapped) */ "iiii\0" "glBindBufferOffsetEXT\0" "\0" - /* _mesa_function_pool[18825]: WindowPos3sMESA (will be remapped) */ + /* _mesa_function_pool[18903]: WindowPos3sMESA (will be remapped) */ "iii\0" "glWindowPos3s\0" "glWindowPos3sARB\0" "glWindowPos3sMESA\0" "\0" - /* _mesa_function_pool[18879]: VertexAttrib2svNV (will be remapped) */ + /* _mesa_function_pool[18957]: VertexAttrib2svNV (will be remapped) */ "ip\0" "glVertexAttrib2svNV\0" "\0" - /* _mesa_function_pool[18903]: DisableIndexedEXT (will be remapped) */ + /* _mesa_function_pool[18981]: DisableIndexedEXT (will be remapped) */ "ii\0" "glDisableIndexedEXT\0" "glDisablei\0" "\0" - /* _mesa_function_pool[18938]: BindBufferBaseEXT (will be remapped) */ + /* _mesa_function_pool[19016]: BindBufferBaseEXT (will be remapped) */ "iii\0" "glBindBufferBaseEXT\0" "glBindBufferBase\0" "\0" - /* _mesa_function_pool[18980]: TexCoord2fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[19058]: TexCoord2fVertex3fvSUN (dynamic) */ "pp\0" "glTexCoord2fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[19009]: WindowPos4sMESA (will be remapped) */ + /* _mesa_function_pool[19087]: WindowPos4sMESA (will be remapped) */ "iiii\0" "glWindowPos4sMESA\0" "\0" - /* _mesa_function_pool[19033]: VertexAttrib4NuivARB (will be remapped) */ + /* _mesa_function_pool[19111]: VertexAttrib4NuivARB (will be remapped) */ "ip\0" "glVertexAttrib4Nuiv\0" "glVertexAttrib4NuivARB\0" "\0" - /* _mesa_function_pool[19080]: ClientActiveTextureARB (offset 375) */ + /* _mesa_function_pool[19158]: ClientActiveTextureARB (offset 375) */ "i\0" "glClientActiveTexture\0" "glClientActiveTextureARB\0" "\0" - /* _mesa_function_pool[19130]: PixelTexGenSGIX (will be remapped) */ + /* _mesa_function_pool[19208]: PixelTexGenSGIX (will be remapped) */ "i\0" "glPixelTexGenSGIX\0" "\0" - /* _mesa_function_pool[19151]: ReplacementCodeusvSUN (dynamic) */ + /* _mesa_function_pool[19229]: ReplacementCodeusvSUN (dynamic) */ "p\0" "glReplacementCodeusvSUN\0" "\0" - /* _mesa_function_pool[19178]: Uniform4fARB (will be remapped) */ + /* _mesa_function_pool[19256]: Uniform4fARB (will be remapped) */ "iffff\0" "glUniform4f\0" "glUniform4fARB\0" "\0" - /* _mesa_function_pool[19212]: Color4sv (offset 34) */ + /* _mesa_function_pool[19290]: Color4sv (offset 34) */ "p\0" "glColor4sv\0" "\0" - /* _mesa_function_pool[19226]: FlushMappedBufferRange (will be remapped) */ + /* _mesa_function_pool[19304]: FlushMappedBufferRange (will be remapped) */ "iii\0" "glFlushMappedBufferRange\0" "\0" - /* _mesa_function_pool[19256]: IsProgramNV (will be remapped) */ + /* _mesa_function_pool[19334]: IsProgramNV (will be remapped) */ "i\0" "glIsProgramARB\0" "glIsProgramNV\0" "\0" - /* _mesa_function_pool[19288]: FlushMappedBufferRangeAPPLE (will be remapped) */ + /* _mesa_function_pool[19366]: FlushMappedBufferRangeAPPLE (will be remapped) */ "iii\0" "glFlushMappedBufferRangeAPPLE\0" "\0" - /* _mesa_function_pool[19323]: PixelZoom (offset 246) */ + /* _mesa_function_pool[19401]: PixelZoom (offset 246) */ "ff\0" "glPixelZoom\0" "\0" - /* _mesa_function_pool[19339]: ReplacementCodePointerSUN (dynamic) */ + /* _mesa_function_pool[19417]: ReplacementCodePointerSUN (dynamic) */ "iip\0" "glReplacementCodePointerSUN\0" "\0" - /* _mesa_function_pool[19372]: ProgramEnvParameter4dARB (will be remapped) */ + /* _mesa_function_pool[19450]: ProgramEnvParameter4dARB (will be remapped) */ "iidddd\0" "glProgramEnvParameter4dARB\0" "glProgramParameter4dNV\0" "\0" - /* _mesa_function_pool[19430]: ColorTableParameterfv (offset 340) */ + /* _mesa_function_pool[19508]: ColorTableParameterfv (offset 340) */ "iip\0" "glColorTableParameterfv\0" "glColorTableParameterfvSGI\0" "\0" - /* _mesa_function_pool[19486]: FragmentLightModelfSGIX (dynamic) */ + /* _mesa_function_pool[19564]: FragmentLightModelfSGIX (dynamic) */ "if\0" "glFragmentLightModelfSGIX\0" "\0" - /* _mesa_function_pool[19516]: Binormal3bvEXT (dynamic) */ + /* _mesa_function_pool[19594]: Binormal3bvEXT (dynamic) */ "p\0" "glBinormal3bvEXT\0" "\0" - /* _mesa_function_pool[19536]: PixelMapuiv (offset 252) */ + /* _mesa_function_pool[19614]: PixelMapuiv (offset 252) */ "iip\0" "glPixelMapuiv\0" "\0" - /* _mesa_function_pool[19555]: Color3dv (offset 12) */ + /* _mesa_function_pool[19633]: Color3dv (offset 12) */ "p\0" "glColor3dv\0" "\0" - /* _mesa_function_pool[19569]: IsTexture (offset 330) */ + /* _mesa_function_pool[19647]: IsTexture (offset 330) */ "i\0" "glIsTexture\0" "glIsTextureEXT\0" "\0" - /* _mesa_function_pool[19599]: VertexWeightfvEXT (dynamic) */ + /* _mesa_function_pool[19677]: VertexWeightfvEXT (dynamic) */ "p\0" "glVertexWeightfvEXT\0" "\0" - /* _mesa_function_pool[19622]: VertexAttrib1dARB (will be remapped) */ + /* _mesa_function_pool[19700]: VertexAttrib1dARB (will be remapped) */ "id\0" "glVertexAttrib1d\0" "glVertexAttrib1dARB\0" "\0" - /* _mesa_function_pool[19663]: ImageTransformParameterivHP (dynamic) */ + /* _mesa_function_pool[19741]: ImageTransformParameterivHP (dynamic) */ "iip\0" "glImageTransformParameterivHP\0" "\0" - /* _mesa_function_pool[19698]: TexCoord4i (offset 122) */ + /* _mesa_function_pool[19776]: TexCoord4i (offset 122) */ "iiii\0" "glTexCoord4i\0" "\0" - /* _mesa_function_pool[19717]: DeleteQueriesARB (will be remapped) */ + /* _mesa_function_pool[19795]: DeleteQueriesARB (will be remapped) */ "ip\0" "glDeleteQueries\0" "glDeleteQueriesARB\0" "\0" - /* _mesa_function_pool[19756]: Color4ubVertex2fSUN (dynamic) */ + /* _mesa_function_pool[19834]: Color4ubVertex2fSUN (dynamic) */ "iiiiff\0" "glColor4ubVertex2fSUN\0" "\0" - /* _mesa_function_pool[19786]: FragmentColorMaterialSGIX (dynamic) */ + /* _mesa_function_pool[19864]: FragmentColorMaterialSGIX (dynamic) */ "ii\0" "glFragmentColorMaterialSGIX\0" "\0" - /* _mesa_function_pool[19818]: CurrentPaletteMatrixARB (dynamic) */ + /* _mesa_function_pool[19896]: CurrentPaletteMatrixARB (dynamic) */ "i\0" "glCurrentPaletteMatrixARB\0" "\0" - /* _mesa_function_pool[19847]: GetMapdv (offset 266) */ + /* _mesa_function_pool[19925]: GetMapdv (offset 266) */ "iip\0" "glGetMapdv\0" "\0" - /* _mesa_function_pool[19863]: ObjectPurgeableAPPLE (will be remapped) */ + /* _mesa_function_pool[19941]: ObjectPurgeableAPPLE (will be remapped) */ "iii\0" "glObjectPurgeableAPPLE\0" "\0" - /* _mesa_function_pool[19891]: GetStringi (will be remapped) */ + /* _mesa_function_pool[19969]: GetStringi (will be remapped) */ "ii\0" "glGetStringi\0" "\0" - /* _mesa_function_pool[19908]: SamplePatternSGIS (will be remapped) */ + /* _mesa_function_pool[19986]: SamplePatternSGIS (will be remapped) */ "i\0" "glSamplePatternSGIS\0" "glSamplePatternEXT\0" "\0" - /* _mesa_function_pool[19950]: PixelStoref (offset 249) */ + /* _mesa_function_pool[20028]: PixelStoref (offset 249) */ "if\0" "glPixelStoref\0" "\0" - /* _mesa_function_pool[19968]: IsQueryARB (will be remapped) */ + /* _mesa_function_pool[20046]: IsQueryARB (will be remapped) */ "i\0" "glIsQuery\0" "glIsQueryARB\0" "\0" - /* _mesa_function_pool[19994]: ReplacementCodeuiColor4ubVertex3fSUN (dynamic) */ + /* _mesa_function_pool[20072]: ReplacementCodeuiColor4ubVertex3fSUN (dynamic) */ "iiiiifff\0" "glReplacementCodeuiColor4ubVertex3fSUN\0" "\0" - /* _mesa_function_pool[20043]: PixelStorei (offset 250) */ + /* _mesa_function_pool[20121]: PixelStorei (offset 250) */ "ii\0" "glPixelStorei\0" "\0" - /* _mesa_function_pool[20061]: VertexAttrib4usvARB (will be remapped) */ + /* _mesa_function_pool[20139]: VertexAttrib4usvARB (will be remapped) */ "ip\0" "glVertexAttrib4usv\0" "glVertexAttrib4usvARB\0" "\0" - /* _mesa_function_pool[20106]: LinkProgramARB (will be remapped) */ + /* _mesa_function_pool[20184]: LinkProgramARB (will be remapped) */ "i\0" "glLinkProgram\0" "glLinkProgramARB\0" "\0" - /* _mesa_function_pool[20140]: VertexAttrib2fNV (will be remapped) */ + /* _mesa_function_pool[20218]: VertexAttrib2fNV (will be remapped) */ "iff\0" "glVertexAttrib2fNV\0" "\0" - /* _mesa_function_pool[20164]: ShaderSourceARB (will be remapped) */ + /* _mesa_function_pool[20242]: ShaderSourceARB (will be remapped) */ "iipp\0" "glShaderSource\0" "glShaderSourceARB\0" "\0" - /* _mesa_function_pool[20203]: FragmentMaterialiSGIX (dynamic) */ + /* _mesa_function_pool[20281]: FragmentMaterialiSGIX (dynamic) */ "iii\0" "glFragmentMaterialiSGIX\0" "\0" - /* _mesa_function_pool[20232]: EvalCoord2dv (offset 233) */ + /* _mesa_function_pool[20310]: EvalCoord2dv (offset 233) */ "p\0" "glEvalCoord2dv\0" "\0" - /* _mesa_function_pool[20250]: VertexAttrib3svARB (will be remapped) */ + /* _mesa_function_pool[20328]: VertexAttrib3svARB (will be remapped) */ "ip\0" "glVertexAttrib3sv\0" "glVertexAttrib3svARB\0" "\0" - /* _mesa_function_pool[20293]: ColorMaterial (offset 151) */ + /* _mesa_function_pool[20371]: ColorMaterial (offset 151) */ "ii\0" "glColorMaterial\0" "\0" - /* _mesa_function_pool[20313]: CompressedTexSubImage3DARB (will be remapped) */ + /* _mesa_function_pool[20391]: CompressedTexSubImage3DARB (will be remapped) */ "iiiiiiiiiip\0" "glCompressedTexSubImage3D\0" "glCompressedTexSubImage3DARB\0" "\0" - /* _mesa_function_pool[20381]: WindowPos2ivMESA (will be remapped) */ + /* _mesa_function_pool[20459]: WindowPos2ivMESA (will be remapped) */ "p\0" "glWindowPos2iv\0" "glWindowPos2ivARB\0" "glWindowPos2ivMESA\0" "\0" - /* _mesa_function_pool[20436]: IsFramebufferEXT (will be remapped) */ + /* _mesa_function_pool[20514]: IsFramebufferEXT (will be remapped) */ "i\0" "glIsFramebuffer\0" "glIsFramebufferEXT\0" "\0" - /* _mesa_function_pool[20474]: Uniform4ivARB (will be remapped) */ + /* _mesa_function_pool[20552]: Uniform4ivARB (will be remapped) */ "iip\0" "glUniform4iv\0" "glUniform4ivARB\0" "\0" - /* _mesa_function_pool[20508]: GetVertexAttribdvARB (will be remapped) */ + /* _mesa_function_pool[20586]: GetVertexAttribdvARB (will be remapped) */ "iip\0" "glGetVertexAttribdv\0" "glGetVertexAttribdvARB\0" "\0" - /* _mesa_function_pool[20556]: TexBumpParameterivATI (will be remapped) */ + /* _mesa_function_pool[20634]: TexBumpParameterivATI (will be remapped) */ "ip\0" "glTexBumpParameterivATI\0" "\0" - /* _mesa_function_pool[20584]: GetSeparableFilter (offset 359) */ + /* _mesa_function_pool[20662]: GetSeparableFilter (offset 359) */ "iiippp\0" "glGetSeparableFilter\0" "glGetSeparableFilterEXT\0" "\0" - /* _mesa_function_pool[20637]: Binormal3dEXT (dynamic) */ + /* _mesa_function_pool[20715]: Binormal3dEXT (dynamic) */ "ddd\0" "glBinormal3dEXT\0" "\0" - /* _mesa_function_pool[20658]: SpriteParameteriSGIX (dynamic) */ + /* _mesa_function_pool[20736]: SpriteParameteriSGIX (dynamic) */ "ii\0" "glSpriteParameteriSGIX\0" "\0" - /* _mesa_function_pool[20685]: RequestResidentProgramsNV (will be remapped) */ + /* _mesa_function_pool[20763]: RequestResidentProgramsNV (will be remapped) */ "ip\0" "glRequestResidentProgramsNV\0" "\0" - /* _mesa_function_pool[20717]: TagSampleBufferSGIX (dynamic) */ + /* _mesa_function_pool[20795]: TagSampleBufferSGIX (dynamic) */ "\0" "glTagSampleBufferSGIX\0" "\0" - /* _mesa_function_pool[20741]: TransformFeedbackVaryingsEXT (will be remapped) */ + /* _mesa_function_pool[20819]: TransformFeedbackVaryingsEXT (will be remapped) */ "iipi\0" "glTransformFeedbackVaryingsEXT\0" "glTransformFeedbackVaryings\0" "\0" - /* _mesa_function_pool[20806]: FeedbackBuffer (offset 194) */ + /* _mesa_function_pool[20884]: FeedbackBuffer (offset 194) */ "iip\0" "glFeedbackBuffer\0" "\0" - /* _mesa_function_pool[20828]: RasterPos2iv (offset 67) */ + /* _mesa_function_pool[20906]: RasterPos2iv (offset 67) */ "p\0" "glRasterPos2iv\0" "\0" - /* _mesa_function_pool[20846]: TexImage1D (offset 182) */ + /* _mesa_function_pool[20924]: TexImage1D (offset 182) */ "iiiiiiip\0" "glTexImage1D\0" "\0" - /* _mesa_function_pool[20869]: ListParameterivSGIX (dynamic) */ + /* _mesa_function_pool[20947]: ListParameterivSGIX (dynamic) */ "iip\0" "glListParameterivSGIX\0" "\0" - /* _mesa_function_pool[20896]: MultiDrawElementsEXT (will be remapped) */ + /* _mesa_function_pool[20974]: MultiDrawElementsEXT (will be remapped) */ "ipipi\0" "glMultiDrawElements\0" "glMultiDrawElementsEXT\0" "\0" - /* _mesa_function_pool[20946]: Color3s (offset 17) */ + /* _mesa_function_pool[21024]: Color3s (offset 17) */ "iii\0" "glColor3s\0" "\0" - /* _mesa_function_pool[20961]: Uniform1ivARB (will be remapped) */ + /* _mesa_function_pool[21039]: Uniform1ivARB (will be remapped) */ "iip\0" "glUniform1iv\0" "glUniform1ivARB\0" "\0" - /* _mesa_function_pool[20995]: WindowPos2sMESA (will be remapped) */ + /* _mesa_function_pool[21073]: WindowPos2sMESA (will be remapped) */ "ii\0" "glWindowPos2s\0" "glWindowPos2sARB\0" "glWindowPos2sMESA\0" "\0" - /* _mesa_function_pool[21048]: WeightusvARB (dynamic) */ + /* _mesa_function_pool[21126]: WeightusvARB (dynamic) */ "ip\0" "glWeightusvARB\0" "\0" - /* _mesa_function_pool[21067]: TexCoordPointer (offset 320) */ + /* _mesa_function_pool[21145]: TexCoordPointer (offset 320) */ "iiip\0" "glTexCoordPointer\0" "\0" - /* _mesa_function_pool[21091]: FogCoordPointerEXT (will be remapped) */ + /* _mesa_function_pool[21169]: FogCoordPointerEXT (will be remapped) */ "iip\0" "glFogCoordPointer\0" "glFogCoordPointerEXT\0" "\0" - /* _mesa_function_pool[21135]: IndexMaterialEXT (dynamic) */ + /* _mesa_function_pool[21213]: IndexMaterialEXT (dynamic) */ "ii\0" "glIndexMaterialEXT\0" "\0" - /* _mesa_function_pool[21158]: Color3i (offset 15) */ + /* _mesa_function_pool[21236]: Color3i (offset 15) */ "iii\0" "glColor3i\0" "\0" - /* _mesa_function_pool[21173]: FrontFace (offset 157) */ + /* _mesa_function_pool[21251]: FrontFace (offset 157) */ "i\0" "glFrontFace\0" "\0" - /* _mesa_function_pool[21188]: EvalCoord2d (offset 232) */ + /* _mesa_function_pool[21266]: EvalCoord2d (offset 232) */ "dd\0" "glEvalCoord2d\0" "\0" - /* _mesa_function_pool[21206]: SecondaryColor3ubvEXT (will be remapped) */ + /* _mesa_function_pool[21284]: SecondaryColor3ubvEXT (will be remapped) */ "p\0" "glSecondaryColor3ubv\0" "glSecondaryColor3ubvEXT\0" "\0" - /* _mesa_function_pool[21254]: EvalCoord2f (offset 234) */ + /* _mesa_function_pool[21332]: EvalCoord2f (offset 234) */ "ff\0" "glEvalCoord2f\0" "\0" - /* _mesa_function_pool[21272]: VertexAttrib4dvARB (will be remapped) */ + /* _mesa_function_pool[21350]: VertexAttrib4dvARB (will be remapped) */ "ip\0" "glVertexAttrib4dv\0" "glVertexAttrib4dvARB\0" "\0" - /* _mesa_function_pool[21315]: BindAttribLocationARB (will be remapped) */ + /* _mesa_function_pool[21393]: BindAttribLocationARB (will be remapped) */ "iip\0" "glBindAttribLocation\0" "glBindAttribLocationARB\0" "\0" - /* _mesa_function_pool[21365]: Color3b (offset 9) */ + /* _mesa_function_pool[21443]: Color3b (offset 9) */ "iii\0" "glColor3b\0" "\0" - /* _mesa_function_pool[21380]: MultiTexCoord2dARB (offset 384) */ + /* _mesa_function_pool[21458]: MultiTexCoord2dARB (offset 384) */ "idd\0" "glMultiTexCoord2d\0" "glMultiTexCoord2dARB\0" "\0" - /* _mesa_function_pool[21424]: ExecuteProgramNV (will be remapped) */ + /* _mesa_function_pool[21502]: ExecuteProgramNV (will be remapped) */ "iip\0" "glExecuteProgramNV\0" "\0" - /* _mesa_function_pool[21448]: Color3f (offset 13) */ + /* _mesa_function_pool[21526]: Color3f (offset 13) */ "fff\0" "glColor3f\0" "\0" - /* _mesa_function_pool[21463]: LightEnviSGIX (dynamic) */ + /* _mesa_function_pool[21541]: LightEnviSGIX (dynamic) */ "ii\0" "glLightEnviSGIX\0" "\0" - /* _mesa_function_pool[21483]: Color3d (offset 11) */ + /* _mesa_function_pool[21561]: Color3d (offset 11) */ "ddd\0" "glColor3d\0" "\0" - /* _mesa_function_pool[21498]: Normal3dv (offset 55) */ + /* _mesa_function_pool[21576]: Normal3dv (offset 55) */ "p\0" "glNormal3dv\0" "\0" - /* _mesa_function_pool[21513]: Lightf (offset 159) */ + /* _mesa_function_pool[21591]: Lightf (offset 159) */ "iif\0" "glLightf\0" "\0" - /* _mesa_function_pool[21527]: ReplacementCodeuiSUN (dynamic) */ + /* _mesa_function_pool[21605]: ReplacementCodeuiSUN (dynamic) */ "i\0" "glReplacementCodeuiSUN\0" "\0" - /* _mesa_function_pool[21553]: MatrixMode (offset 293) */ + /* _mesa_function_pool[21631]: MatrixMode (offset 293) */ "i\0" "glMatrixMode\0" "\0" - /* _mesa_function_pool[21569]: GetPixelMapusv (offset 273) */ + /* _mesa_function_pool[21647]: GetPixelMapusv (offset 273) */ "ip\0" "glGetPixelMapusv\0" "\0" - /* _mesa_function_pool[21590]: Lighti (offset 161) */ + /* _mesa_function_pool[21668]: Lighti (offset 161) */ "iii\0" "glLighti\0" "\0" - /* _mesa_function_pool[21604]: VertexAttribPointerNV (will be remapped) */ + /* _mesa_function_pool[21682]: VertexAttribPointerNV (will be remapped) */ "iiiip\0" "glVertexAttribPointerNV\0" "\0" - /* _mesa_function_pool[21635]: ClearDepthf (will be remapped) */ + /* _mesa_function_pool[21713]: ClearDepthf (will be remapped) */ "f\0" "glClearDepthf\0" "\0" - /* _mesa_function_pool[21652]: GetBooleanIndexedvEXT (will be remapped) */ + /* _mesa_function_pool[21730]: GetBooleanIndexedvEXT (will be remapped) */ "iip\0" "glGetBooleanIndexedvEXT\0" "glGetBooleani_v\0" "\0" - /* _mesa_function_pool[21697]: GetFramebufferAttachmentParameterivEXT (will be remapped) */ + /* _mesa_function_pool[21775]: GetFramebufferAttachmentParameterivEXT (will be remapped) */ "iiip\0" "glGetFramebufferAttachmentParameteriv\0" "glGetFramebufferAttachmentParameterivEXT\0" "\0" - /* _mesa_function_pool[21782]: PixelTransformParameterfEXT (dynamic) */ + /* _mesa_function_pool[21860]: PixelTransformParameterfEXT (dynamic) */ "iif\0" "glPixelTransformParameterfEXT\0" "\0" - /* _mesa_function_pool[21817]: MultiTexCoord4dvARB (offset 401) */ + /* _mesa_function_pool[21895]: MultiTexCoord4dvARB (offset 401) */ "ip\0" "glMultiTexCoord4dv\0" "glMultiTexCoord4dvARB\0" "\0" - /* _mesa_function_pool[21862]: PixelTransformParameteriEXT (dynamic) */ + /* _mesa_function_pool[21940]: PixelTransformParameteriEXT (dynamic) */ "iii\0" "glPixelTransformParameteriEXT\0" "\0" - /* _mesa_function_pool[21897]: GetDoublev (offset 260) */ + /* _mesa_function_pool[21975]: GetDoublev (offset 260) */ "ip\0" "glGetDoublev\0" "\0" - /* _mesa_function_pool[21914]: MultMatrixd (offset 295) */ + /* _mesa_function_pool[21992]: MultMatrixd (offset 295) */ "p\0" "glMultMatrixd\0" "\0" - /* _mesa_function_pool[21931]: MultMatrixf (offset 294) */ + /* _mesa_function_pool[22009]: MultMatrixf (offset 294) */ "p\0" "glMultMatrixf\0" "\0" - /* _mesa_function_pool[21948]: VertexAttribI4bvEXT (will be remapped) */ + /* _mesa_function_pool[22026]: VertexAttribI4bvEXT (will be remapped) */ "ip\0" "glVertexAttribI4bvEXT\0" "glVertexAttribI4bv\0" "\0" - /* _mesa_function_pool[21993]: TexCoord2fColor4ubVertex3fSUN (dynamic) */ + /* _mesa_function_pool[22071]: TexCoord2fColor4ubVertex3fSUN (dynamic) */ "ffiiiifff\0" "glTexCoord2fColor4ubVertex3fSUN\0" "\0" - /* _mesa_function_pool[22036]: Uniform1iARB (will be remapped) */ + /* _mesa_function_pool[22114]: Uniform1iARB (will be remapped) */ "ii\0" "glUniform1i\0" "glUniform1iARB\0" "\0" - /* _mesa_function_pool[22067]: VertexAttribPointerARB (will be remapped) */ + /* _mesa_function_pool[22145]: VertexAttribPointerARB (will be remapped) */ "iiiiip\0" "glVertexAttribPointer\0" "glVertexAttribPointerARB\0" "\0" - /* _mesa_function_pool[22122]: VertexAttrib3sNV (will be remapped) */ + /* _mesa_function_pool[22200]: VertexAttrib3sNV (will be remapped) */ "iiii\0" "glVertexAttrib3sNV\0" "\0" - /* _mesa_function_pool[22147]: SharpenTexFuncSGIS (dynamic) */ + /* _mesa_function_pool[22225]: SharpenTexFuncSGIS (dynamic) */ "iip\0" "glSharpenTexFuncSGIS\0" "\0" - /* _mesa_function_pool[22173]: MultiTexCoord4fvARB (offset 403) */ + /* _mesa_function_pool[22251]: MultiTexCoord4fvARB (offset 403) */ "ip\0" "glMultiTexCoord4fv\0" "glMultiTexCoord4fvARB\0" "\0" - /* _mesa_function_pool[22218]: Uniform2uiEXT (will be remapped) */ + /* _mesa_function_pool[22296]: Uniform2uiEXT (will be remapped) */ "iii\0" "glUniform2uiEXT\0" "glUniform2ui\0" "\0" - /* _mesa_function_pool[22252]: UniformMatrix2x3fv (will be remapped) */ + /* _mesa_function_pool[22330]: UniformMatrix2x3fv (will be remapped) */ "iiip\0" "glUniformMatrix2x3fv\0" "\0" - /* _mesa_function_pool[22279]: TrackMatrixNV (will be remapped) */ + /* _mesa_function_pool[22357]: TrackMatrixNV (will be remapped) */ "iiii\0" "glTrackMatrixNV\0" "\0" - /* _mesa_function_pool[22301]: CombinerParameteriNV (will be remapped) */ + /* _mesa_function_pool[22379]: CombinerParameteriNV (will be remapped) */ "ii\0" "glCombinerParameteriNV\0" "\0" - /* _mesa_function_pool[22328]: DeleteAsyncMarkersSGIX (dynamic) */ + /* _mesa_function_pool[22406]: DeleteAsyncMarkersSGIX (dynamic) */ "ii\0" "glDeleteAsyncMarkersSGIX\0" "\0" - /* _mesa_function_pool[22357]: ReplacementCodeusSUN (dynamic) */ + /* _mesa_function_pool[22435]: ReplacementCodeusSUN (dynamic) */ "i\0" "glReplacementCodeusSUN\0" "\0" - /* _mesa_function_pool[22383]: IsAsyncMarkerSGIX (dynamic) */ + /* _mesa_function_pool[22461]: IsAsyncMarkerSGIX (dynamic) */ "i\0" "glIsAsyncMarkerSGIX\0" "\0" - /* _mesa_function_pool[22406]: FrameZoomSGIX (dynamic) */ + /* _mesa_function_pool[22484]: FrameZoomSGIX (dynamic) */ "i\0" "glFrameZoomSGIX\0" "\0" - /* _mesa_function_pool[22425]: Normal3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[22503]: Normal3fVertex3fvSUN (dynamic) */ "pp\0" "glNormal3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[22452]: RasterPos4sv (offset 85) */ + /* _mesa_function_pool[22530]: RasterPos4sv (offset 85) */ "p\0" "glRasterPos4sv\0" "\0" - /* _mesa_function_pool[22470]: VertexAttrib4NsvARB (will be remapped) */ + /* _mesa_function_pool[22548]: VertexAttrib4NsvARB (will be remapped) */ "ip\0" "glVertexAttrib4Nsv\0" "glVertexAttrib4NsvARB\0" "\0" - /* _mesa_function_pool[22515]: VertexAttrib3fvARB (will be remapped) */ + /* _mesa_function_pool[22593]: VertexAttrib3fvARB (will be remapped) */ "ip\0" "glVertexAttrib3fv\0" "glVertexAttrib3fvARB\0" "\0" - /* _mesa_function_pool[22558]: ClearColor (offset 206) */ + /* _mesa_function_pool[22636]: ClearColor (offset 206) */ "ffff\0" "glClearColor\0" "\0" - /* _mesa_function_pool[22577]: GetSynciv (will be remapped) */ + /* _mesa_function_pool[22655]: GetSynciv (will be remapped) */ "iiipp\0" "glGetSynciv\0" "\0" - /* _mesa_function_pool[22596]: ClearColorIiEXT (will be remapped) */ + /* _mesa_function_pool[22674]: ClearColorIiEXT (will be remapped) */ "iiii\0" "glClearColorIiEXT\0" "\0" - /* _mesa_function_pool[22620]: DeleteFramebuffersEXT (will be remapped) */ + /* _mesa_function_pool[22698]: DeleteFramebuffersEXT (will be remapped) */ "ip\0" "glDeleteFramebuffers\0" "glDeleteFramebuffersEXT\0" "\0" - /* _mesa_function_pool[22669]: GlobalAlphaFactorsSUN (dynamic) */ + /* _mesa_function_pool[22747]: GlobalAlphaFactorsSUN (dynamic) */ "i\0" "glGlobalAlphaFactorsSUN\0" "\0" - /* _mesa_function_pool[22696]: IsEnabledIndexedEXT (will be remapped) */ + /* _mesa_function_pool[22774]: IsEnabledIndexedEXT (will be remapped) */ "ii\0" "glIsEnabledIndexedEXT\0" "glIsEnabledi\0" "\0" - /* _mesa_function_pool[22735]: TexEnviv (offset 187) */ + /* _mesa_function_pool[22813]: TexEnviv (offset 187) */ "iip\0" "glTexEnviv\0" "\0" - /* _mesa_function_pool[22751]: TexSubImage3D (offset 372) */ + /* _mesa_function_pool[22829]: TexSubImage3D (offset 372) */ "iiiiiiiiiip\0" "glTexSubImage3D\0" "glTexSubImage3DEXT\0" "\0" - /* _mesa_function_pool[22799]: Tangent3fEXT (dynamic) */ + /* _mesa_function_pool[22877]: Tangent3fEXT (dynamic) */ "fff\0" "glTangent3fEXT\0" "\0" - /* _mesa_function_pool[22819]: SecondaryColor3uivEXT (will be remapped) */ + /* _mesa_function_pool[22897]: SecondaryColor3uivEXT (will be remapped) */ "p\0" "glSecondaryColor3uiv\0" "glSecondaryColor3uivEXT\0" "\0" - /* _mesa_function_pool[22867]: MatrixIndexubvARB (dynamic) */ + /* _mesa_function_pool[22945]: MatrixIndexubvARB (dynamic) */ "ip\0" "glMatrixIndexubvARB\0" "\0" - /* _mesa_function_pool[22891]: Color4fNormal3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[22969]: Color4fNormal3fVertex3fSUN (dynamic) */ "ffffffffff\0" "glColor4fNormal3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[22932]: PixelTexGenParameterfSGIS (will be remapped) */ + /* _mesa_function_pool[23010]: PixelTexGenParameterfSGIS (will be remapped) */ "if\0" "glPixelTexGenParameterfSGIS\0" "\0" - /* _mesa_function_pool[22964]: CreateShader (will be remapped) */ + /* _mesa_function_pool[23042]: CreateShader (will be remapped) */ "i\0" "glCreateShader\0" "\0" - /* _mesa_function_pool[22982]: GetColorTableParameterfv (offset 344) */ + /* _mesa_function_pool[23060]: GetColorTableParameterfv (offset 344) */ "iip\0" "glGetColorTableParameterfv\0" "glGetColorTableParameterfvSGI\0" "glGetColorTableParameterfvEXT\0" "\0" - /* _mesa_function_pool[23074]: FragmentLightModelfvSGIX (dynamic) */ + /* _mesa_function_pool[23152]: FragmentLightModelfvSGIX (dynamic) */ "ip\0" "glFragmentLightModelfvSGIX\0" "\0" - /* _mesa_function_pool[23105]: Bitmap (offset 8) */ + /* _mesa_function_pool[23183]: Bitmap (offset 8) */ "iiffffp\0" "glBitmap\0" "\0" - /* _mesa_function_pool[23123]: MultiTexCoord3fARB (offset 394) */ + /* _mesa_function_pool[23201]: MultiTexCoord3fARB (offset 394) */ "ifff\0" "glMultiTexCoord3f\0" "glMultiTexCoord3fARB\0" "\0" - /* _mesa_function_pool[23168]: GetTexLevelParameterfv (offset 284) */ + /* _mesa_function_pool[23246]: GetTexLevelParameterfv (offset 284) */ "iiip\0" "glGetTexLevelParameterfv\0" "\0" - /* _mesa_function_pool[23199]: GetPixelTexGenParameterfvSGIS (will be remapped) */ + /* _mesa_function_pool[23277]: GetPixelTexGenParameterfvSGIS (will be remapped) */ "ip\0" "glGetPixelTexGenParameterfvSGIS\0" "\0" - /* _mesa_function_pool[23235]: GenFramebuffersEXT (will be remapped) */ + /* _mesa_function_pool[23313]: GenFramebuffersEXT (will be remapped) */ "ip\0" "glGenFramebuffers\0" "glGenFramebuffersEXT\0" "\0" - /* _mesa_function_pool[23278]: VertexAttribDivisor (will be remapped) */ + /* _mesa_function_pool[23356]: VertexAttribDivisor (will be remapped) */ "ii\0" "glVertexAttribDivisor\0" "\0" - /* _mesa_function_pool[23304]: GetProgramParameterdvNV (will be remapped) */ + /* _mesa_function_pool[23382]: GetProgramParameterdvNV (will be remapped) */ "iiip\0" "glGetProgramParameterdvNV\0" "\0" - /* _mesa_function_pool[23336]: Vertex2sv (offset 133) */ + /* _mesa_function_pool[23414]: Vertex2sv (offset 133) */ "p\0" "glVertex2sv\0" "\0" - /* _mesa_function_pool[23351]: GetIntegerv (offset 263) */ + /* _mesa_function_pool[23429]: GetIntegerv (offset 263) */ "ip\0" "glGetIntegerv\0" "\0" - /* _mesa_function_pool[23369]: IsVertexArrayAPPLE (will be remapped) */ + /* _mesa_function_pool[23447]: IsVertexArrayAPPLE (will be remapped) */ "i\0" "glIsVertexArray\0" "glIsVertexArrayAPPLE\0" "\0" - /* _mesa_function_pool[23409]: FragmentLightfvSGIX (dynamic) */ + /* _mesa_function_pool[23487]: FragmentLightfvSGIX (dynamic) */ "iip\0" "glFragmentLightfvSGIX\0" "\0" - /* _mesa_function_pool[23436]: VertexAttribDivisorARB (will be remapped) */ + /* _mesa_function_pool[23514]: VertexAttribDivisorARB (will be remapped) */ "ii\0" "glVertexAttribDivisorARB\0" "\0" - /* _mesa_function_pool[23465]: DetachShader (will be remapped) */ + /* _mesa_function_pool[23543]: DetachShader (will be remapped) */ "ii\0" "glDetachShader\0" "\0" - /* _mesa_function_pool[23484]: VertexAttrib4NubARB (will be remapped) */ + /* _mesa_function_pool[23562]: VertexAttrib4NubARB (will be remapped) */ "iiiii\0" "glVertexAttrib4Nub\0" "glVertexAttrib4NubARB\0" "\0" - /* _mesa_function_pool[23532]: GetProgramEnvParameterfvARB (will be remapped) */ + /* _mesa_function_pool[23610]: GetProgramEnvParameterfvARB (will be remapped) */ "iip\0" "glGetProgramEnvParameterfvARB\0" "\0" - /* _mesa_function_pool[23567]: GetTrackMatrixivNV (will be remapped) */ + /* _mesa_function_pool[23645]: GetTrackMatrixivNV (will be remapped) */ "iiip\0" "glGetTrackMatrixivNV\0" "\0" - /* _mesa_function_pool[23594]: VertexAttrib3svNV (will be remapped) */ + /* _mesa_function_pool[23672]: VertexAttrib3svNV (will be remapped) */ "ip\0" "glVertexAttrib3svNV\0" "\0" - /* _mesa_function_pool[23618]: Uniform4fvARB (will be remapped) */ + /* _mesa_function_pool[23696]: Uniform4fvARB (will be remapped) */ "iip\0" "glUniform4fv\0" "glUniform4fvARB\0" "\0" - /* _mesa_function_pool[23652]: MultTransposeMatrixfARB (will be remapped) */ + /* _mesa_function_pool[23730]: MultTransposeMatrixfARB (will be remapped) */ "p\0" "glMultTransposeMatrixf\0" "glMultTransposeMatrixfARB\0" "\0" - /* _mesa_function_pool[23704]: GetTexEnviv (offset 277) */ + /* _mesa_function_pool[23782]: GetTexEnviv (offset 277) */ "iip\0" "glGetTexEnviv\0" "\0" - /* _mesa_function_pool[23723]: ColorFragmentOp1ATI (will be remapped) */ + /* _mesa_function_pool[23801]: ColorFragmentOp1ATI (will be remapped) */ "iiiiiii\0" "glColorFragmentOp1ATI\0" "\0" - /* _mesa_function_pool[23754]: GetUniformfvARB (will be remapped) */ + /* _mesa_function_pool[23832]: GetUniformfvARB (will be remapped) */ "iip\0" "glGetUniformfv\0" "glGetUniformfvARB\0" "\0" - /* _mesa_function_pool[23792]: EGLImageTargetRenderbufferStorageOES (will be remapped) */ + /* _mesa_function_pool[23870]: EGLImageTargetRenderbufferStorageOES (will be remapped) */ "ip\0" "glEGLImageTargetRenderbufferStorageOES\0" "\0" - /* _mesa_function_pool[23835]: VertexAttribI2ivEXT (will be remapped) */ + /* _mesa_function_pool[23913]: VertexAttribI2ivEXT (will be remapped) */ "ip\0" "glVertexAttribI2ivEXT\0" "glVertexAttribI2iv\0" "\0" - /* _mesa_function_pool[23880]: PopClientAttrib (offset 334) */ + /* _mesa_function_pool[23958]: PopClientAttrib (offset 334) */ "\0" "glPopClientAttrib\0" "\0" - /* _mesa_function_pool[23900]: ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[23978]: ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN (dynamic) */ "iffffffffffff\0" "glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[23971]: DetachObjectARB (will be remapped) */ + /* _mesa_function_pool[24049]: DetachObjectARB (will be remapped) */ "ii\0" "glDetachObjectARB\0" "\0" - /* _mesa_function_pool[23993]: VertexBlendARB (dynamic) */ + /* _mesa_function_pool[24071]: VertexBlendARB (dynamic) */ "i\0" "glVertexBlendARB\0" "\0" - /* _mesa_function_pool[24013]: WindowPos3iMESA (will be remapped) */ + /* _mesa_function_pool[24091]: WindowPos3iMESA (will be remapped) */ "iii\0" "glWindowPos3i\0" "glWindowPos3iARB\0" "glWindowPos3iMESA\0" "\0" - /* _mesa_function_pool[24067]: SeparableFilter2D (offset 360) */ + /* _mesa_function_pool[24145]: SeparableFilter2D (offset 360) */ "iiiiiipp\0" "glSeparableFilter2D\0" "glSeparableFilter2DEXT\0" "\0" - /* _mesa_function_pool[24120]: ProgramParameteriARB (will be remapped) */ + /* _mesa_function_pool[24198]: ProgramParameteriARB (will be remapped) */ "iii\0" "glProgramParameteriARB\0" "\0" - /* _mesa_function_pool[24148]: Map1d (offset 220) */ + /* _mesa_function_pool[24226]: Map1d (offset 220) */ "iddiip\0" "glMap1d\0" "\0" - /* _mesa_function_pool[24164]: Map1f (offset 221) */ + /* _mesa_function_pool[24242]: Map1f (offset 221) */ "iffiip\0" "glMap1f\0" "\0" - /* _mesa_function_pool[24180]: CompressedTexImage2DARB (will be remapped) */ + /* _mesa_function_pool[24258]: CompressedTexImage2DARB (will be remapped) */ "iiiiiiip\0" "glCompressedTexImage2D\0" "glCompressedTexImage2DARB\0" "\0" - /* _mesa_function_pool[24239]: ArrayElement (offset 306) */ + /* _mesa_function_pool[24317]: ArrayElement (offset 306) */ "i\0" "glArrayElement\0" "glArrayElementEXT\0" "\0" - /* _mesa_function_pool[24275]: TexImage2D (offset 183) */ + /* _mesa_function_pool[24353]: TexImage2D (offset 183) */ "iiiiiiiip\0" "glTexImage2D\0" "\0" - /* _mesa_function_pool[24299]: DepthBoundsEXT (will be remapped) */ + /* _mesa_function_pool[24377]: DepthBoundsEXT (will be remapped) */ "dd\0" "glDepthBoundsEXT\0" "\0" - /* _mesa_function_pool[24320]: ProgramParameters4fvNV (will be remapped) */ + /* _mesa_function_pool[24398]: ProgramParameters4fvNV (will be remapped) */ "iiip\0" "glProgramParameters4fvNV\0" "\0" - /* _mesa_function_pool[24351]: DeformationMap3fSGIX (dynamic) */ + /* _mesa_function_pool[24429]: DeformationMap3fSGIX (dynamic) */ "iffiiffiiffiip\0" "glDeformationMap3fSGIX\0" "\0" - /* _mesa_function_pool[24390]: GetProgramivNV (will be remapped) */ + /* _mesa_function_pool[24468]: GetProgramivNV (will be remapped) */ "iip\0" "glGetProgramivNV\0" "\0" - /* _mesa_function_pool[24412]: GetFragDataLocationEXT (will be remapped) */ + /* _mesa_function_pool[24490]: GetFragDataLocationEXT (will be remapped) */ "ip\0" "glGetFragDataLocationEXT\0" "glGetFragDataLocation\0" "\0" - /* _mesa_function_pool[24463]: GetMinmaxParameteriv (offset 366) */ + /* _mesa_function_pool[24541]: GetMinmaxParameteriv (offset 366) */ "iip\0" "glGetMinmaxParameteriv\0" "glGetMinmaxParameterivEXT\0" "\0" - /* _mesa_function_pool[24517]: PixelTransferf (offset 247) */ + /* _mesa_function_pool[24595]: PixelTransferf (offset 247) */ "if\0" "glPixelTransferf\0" "\0" - /* _mesa_function_pool[24538]: CopyTexImage1D (offset 323) */ + /* _mesa_function_pool[24616]: CopyTexImage1D (offset 323) */ "iiiiiii\0" "glCopyTexImage1D\0" "glCopyTexImage1DEXT\0" "\0" - /* _mesa_function_pool[24584]: PushMatrix (offset 298) */ + /* _mesa_function_pool[24662]: PushMatrix (offset 298) */ "\0" "glPushMatrix\0" "\0" - /* _mesa_function_pool[24599]: Fogiv (offset 156) */ + /* _mesa_function_pool[24677]: Fogiv (offset 156) */ "ip\0" "glFogiv\0" "\0" - /* _mesa_function_pool[24611]: TexCoord1dv (offset 95) */ + /* _mesa_function_pool[24689]: TexCoord1dv (offset 95) */ "p\0" "glTexCoord1dv\0" "\0" - /* _mesa_function_pool[24628]: AlphaFragmentOp3ATI (will be remapped) */ + /* _mesa_function_pool[24706]: AlphaFragmentOp3ATI (will be remapped) */ "iiiiiiiiiiii\0" "glAlphaFragmentOp3ATI\0" "\0" - /* _mesa_function_pool[24664]: PixelTransferi (offset 248) */ + /* _mesa_function_pool[24742]: PixelTransferi (offset 248) */ "ii\0" "glPixelTransferi\0" "\0" - /* _mesa_function_pool[24685]: GetVertexAttribdvNV (will be remapped) */ + /* _mesa_function_pool[24763]: GetVertexAttribdvNV (will be remapped) */ "iip\0" "glGetVertexAttribdvNV\0" "\0" - /* _mesa_function_pool[24712]: VertexAttrib3fvNV (will be remapped) */ + /* _mesa_function_pool[24790]: VertexAttrib3fvNV (will be remapped) */ "ip\0" "glVertexAttrib3fvNV\0" "\0" - /* _mesa_function_pool[24736]: Rotatef (offset 300) */ + /* _mesa_function_pool[24814]: Rotatef (offset 300) */ "ffff\0" "glRotatef\0" "\0" - /* _mesa_function_pool[24752]: GetFinalCombinerInputParameterivNV (will be remapped) */ + /* _mesa_function_pool[24830]: GetFinalCombinerInputParameterivNV (will be remapped) */ "iip\0" "glGetFinalCombinerInputParameterivNV\0" "\0" - /* _mesa_function_pool[24794]: Vertex3i (offset 138) */ + /* _mesa_function_pool[24872]: Vertex3i (offset 138) */ "iii\0" "glVertex3i\0" "\0" - /* _mesa_function_pool[24810]: Vertex3f (offset 136) */ + /* _mesa_function_pool[24888]: Vertex3f (offset 136) */ "fff\0" "glVertex3f\0" "\0" - /* _mesa_function_pool[24826]: Clear (offset 203) */ + /* _mesa_function_pool[24904]: Clear (offset 203) */ "i\0" "glClear\0" "\0" - /* _mesa_function_pool[24837]: Vertex3d (offset 134) */ + /* _mesa_function_pool[24915]: Vertex3d (offset 134) */ "ddd\0" "glVertex3d\0" "\0" - /* _mesa_function_pool[24853]: GetMapParameterivNV (dynamic) */ + /* _mesa_function_pool[24931]: GetMapParameterivNV (dynamic) */ "iip\0" "glGetMapParameterivNV\0" "\0" - /* _mesa_function_pool[24880]: Uniform4iARB (will be remapped) */ + /* _mesa_function_pool[24958]: Uniform4iARB (will be remapped) */ "iiiii\0" "glUniform4i\0" "glUniform4iARB\0" "\0" - /* _mesa_function_pool[24914]: ReadBuffer (offset 254) */ + /* _mesa_function_pool[24992]: ReadBuffer (offset 254) */ "i\0" "glReadBuffer\0" "\0" - /* _mesa_function_pool[24930]: ConvolutionParameteri (offset 352) */ + /* _mesa_function_pool[25008]: ConvolutionParameteri (offset 352) */ "iii\0" "glConvolutionParameteri\0" "glConvolutionParameteriEXT\0" "\0" - /* _mesa_function_pool[24986]: Ortho (offset 296) */ + /* _mesa_function_pool[25064]: Ortho (offset 296) */ "dddddd\0" "glOrtho\0" "\0" - /* _mesa_function_pool[25002]: Binormal3sEXT (dynamic) */ + /* _mesa_function_pool[25080]: Binormal3sEXT (dynamic) */ "iii\0" "glBinormal3sEXT\0" "\0" - /* _mesa_function_pool[25023]: ListBase (offset 6) */ + /* _mesa_function_pool[25101]: ListBase (offset 6) */ "i\0" "glListBase\0" "\0" - /* _mesa_function_pool[25037]: Vertex3s (offset 140) */ + /* _mesa_function_pool[25115]: Vertex3s (offset 140) */ "iii\0" "glVertex3s\0" "\0" - /* _mesa_function_pool[25053]: ConvolutionParameterf (offset 350) */ + /* _mesa_function_pool[25131]: ConvolutionParameterf (offset 350) */ "iif\0" "glConvolutionParameterf\0" "glConvolutionParameterfEXT\0" "\0" - /* _mesa_function_pool[25109]: GetColorTableParameteriv (offset 345) */ + /* _mesa_function_pool[25187]: GetColorTableParameteriv (offset 345) */ "iip\0" "glGetColorTableParameteriv\0" "glGetColorTableParameterivSGI\0" "glGetColorTableParameterivEXT\0" "\0" - /* _mesa_function_pool[25201]: ProgramEnvParameter4dvARB (will be remapped) */ + /* _mesa_function_pool[25279]: ProgramEnvParameter4dvARB (will be remapped) */ "iip\0" "glProgramEnvParameter4dvARB\0" "glProgramParameter4dvNV\0" "\0" - /* _mesa_function_pool[25258]: ShadeModel (offset 177) */ + /* _mesa_function_pool[25336]: ShadeModel (offset 177) */ "i\0" "glShadeModel\0" "\0" - /* _mesa_function_pool[25274]: VertexAttribs2fvNV (will be remapped) */ + /* _mesa_function_pool[25352]: VertexAttribs2fvNV (will be remapped) */ "iip\0" "glVertexAttribs2fvNV\0" "\0" - /* _mesa_function_pool[25300]: Rectiv (offset 91) */ + /* _mesa_function_pool[25378]: Rectiv (offset 91) */ "pp\0" "glRectiv\0" "\0" - /* _mesa_function_pool[25313]: UseProgramObjectARB (will be remapped) */ + /* _mesa_function_pool[25391]: UseProgramObjectARB (will be remapped) */ "i\0" "glUseProgram\0" "glUseProgramObjectARB\0" "\0" - /* _mesa_function_pool[25351]: GetMapParameterfvNV (dynamic) */ + /* _mesa_function_pool[25429]: GetMapParameterfvNV (dynamic) */ "iip\0" "glGetMapParameterfvNV\0" "\0" - /* _mesa_function_pool[25378]: EndConditionalRenderNV (will be remapped) */ + /* _mesa_function_pool[25456]: EndConditionalRenderNV (will be remapped) */ "\0" "glEndConditionalRenderNV\0" "glEndConditionalRender\0" "\0" - /* _mesa_function_pool[25428]: PassTexCoordATI (will be remapped) */ + /* _mesa_function_pool[25506]: PassTexCoordATI (will be remapped) */ "iii\0" "glPassTexCoordATI\0" "\0" - /* _mesa_function_pool[25451]: DeleteProgram (will be remapped) */ + /* _mesa_function_pool[25529]: DeleteProgram (will be remapped) */ "i\0" "glDeleteProgram\0" "\0" - /* _mesa_function_pool[25470]: Tangent3ivEXT (dynamic) */ + /* _mesa_function_pool[25548]: Tangent3ivEXT (dynamic) */ "p\0" "glTangent3ivEXT\0" "\0" - /* _mesa_function_pool[25489]: Tangent3dEXT (dynamic) */ + /* _mesa_function_pool[25567]: Tangent3dEXT (dynamic) */ "ddd\0" "glTangent3dEXT\0" "\0" - /* _mesa_function_pool[25509]: SecondaryColor3dvEXT (will be remapped) */ + /* _mesa_function_pool[25587]: SecondaryColor3dvEXT (will be remapped) */ "p\0" "glSecondaryColor3dv\0" "glSecondaryColor3dvEXT\0" "\0" - /* _mesa_function_pool[25555]: AlphaFragmentOp2ATI (will be remapped) */ + /* _mesa_function_pool[25633]: AlphaFragmentOp2ATI (will be remapped) */ "iiiiiiiii\0" "glAlphaFragmentOp2ATI\0" "\0" - /* _mesa_function_pool[25588]: Vertex2fv (offset 129) */ + /* _mesa_function_pool[25666]: Vertex2fv (offset 129) */ "p\0" "glVertex2fv\0" "\0" - /* _mesa_function_pool[25603]: MultiDrawArraysEXT (will be remapped) */ + /* _mesa_function_pool[25681]: MultiDrawArraysEXT (will be remapped) */ "ippi\0" "glMultiDrawArrays\0" "glMultiDrawArraysEXT\0" "\0" - /* _mesa_function_pool[25648]: BindRenderbufferEXT (will be remapped) */ + /* _mesa_function_pool[25726]: BindRenderbufferEXT (will be remapped) */ "ii\0" "glBindRenderbuffer\0" "glBindRenderbufferEXT\0" "\0" - /* _mesa_function_pool[25693]: MultiTexCoord4dARB (offset 400) */ + /* _mesa_function_pool[25771]: MultiTexCoord4dARB (offset 400) */ "idddd\0" "glMultiTexCoord4d\0" "glMultiTexCoord4dARB\0" "\0" - /* _mesa_function_pool[25739]: FramebufferTextureFaceARB (will be remapped) */ + /* _mesa_function_pool[25817]: FramebufferTextureFaceARB (will be remapped) */ "iiiii\0" "glFramebufferTextureFaceARB\0" "\0" - /* _mesa_function_pool[25774]: Vertex3sv (offset 141) */ + /* _mesa_function_pool[25852]: Vertex3sv (offset 141) */ "p\0" "glVertex3sv\0" "\0" - /* _mesa_function_pool[25789]: SecondaryColor3usEXT (will be remapped) */ + /* _mesa_function_pool[25867]: SecondaryColor3usEXT (will be remapped) */ "iii\0" "glSecondaryColor3us\0" "glSecondaryColor3usEXT\0" "\0" - /* _mesa_function_pool[25837]: ProgramLocalParameter4fvARB (will be remapped) */ + /* _mesa_function_pool[25915]: ProgramLocalParameter4fvARB (will be remapped) */ "iip\0" "glProgramLocalParameter4fvARB\0" "\0" - /* _mesa_function_pool[25872]: DeleteProgramsNV (will be remapped) */ + /* _mesa_function_pool[25950]: DeleteProgramsNV (will be remapped) */ "ip\0" "glDeleteProgramsARB\0" "glDeleteProgramsNV\0" "\0" - /* _mesa_function_pool[25915]: EvalMesh1 (offset 236) */ + /* _mesa_function_pool[25993]: EvalMesh1 (offset 236) */ "iii\0" "glEvalMesh1\0" "\0" - /* _mesa_function_pool[25932]: PauseTransformFeedback (will be remapped) */ + /* _mesa_function_pool[26010]: PauseTransformFeedback (will be remapped) */ "\0" "glPauseTransformFeedback\0" "\0" - /* _mesa_function_pool[25959]: MultiTexCoord1sARB (offset 382) */ + /* _mesa_function_pool[26037]: MultiTexCoord1sARB (offset 382) */ "ii\0" "glMultiTexCoord1s\0" "glMultiTexCoord1sARB\0" "\0" - /* _mesa_function_pool[26002]: ReplacementCodeuiColor3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[26080]: ReplacementCodeuiColor3fVertex3fSUN (dynamic) */ "iffffff\0" "glReplacementCodeuiColor3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[26049]: GetVertexAttribPointervNV (will be remapped) */ + /* _mesa_function_pool[26127]: GetVertexAttribPointervNV (will be remapped) */ "iip\0" "glGetVertexAttribPointerv\0" "glGetVertexAttribPointervARB\0" "glGetVertexAttribPointervNV\0" "\0" - /* _mesa_function_pool[26137]: VertexAttribs1fvNV (will be remapped) */ + /* _mesa_function_pool[26215]: VertexAttribs1fvNV (will be remapped) */ "iip\0" "glVertexAttribs1fvNV\0" "\0" - /* _mesa_function_pool[26163]: MultiTexCoord1dvARB (offset 377) */ + /* _mesa_function_pool[26241]: MultiTexCoord1dvARB (offset 377) */ "ip\0" "glMultiTexCoord1dv\0" "glMultiTexCoord1dvARB\0" "\0" - /* _mesa_function_pool[26208]: Uniform2iARB (will be remapped) */ + /* _mesa_function_pool[26286]: Uniform2iARB (will be remapped) */ "iii\0" "glUniform2i\0" "glUniform2iARB\0" "\0" - /* _mesa_function_pool[26240]: Vertex2iv (offset 131) */ + /* _mesa_function_pool[26318]: Vertex2iv (offset 131) */ "p\0" "glVertex2iv\0" "\0" - /* _mesa_function_pool[26255]: GetProgramStringNV (will be remapped) */ + /* _mesa_function_pool[26333]: GetProgramStringNV (will be remapped) */ "iip\0" "glGetProgramStringNV\0" "\0" - /* _mesa_function_pool[26281]: ColorPointerEXT (will be remapped) */ + /* _mesa_function_pool[26359]: ColorPointerEXT (will be remapped) */ "iiiip\0" "glColorPointerEXT\0" "\0" - /* _mesa_function_pool[26306]: LineWidth (offset 168) */ + /* _mesa_function_pool[26384]: LineWidth (offset 168) */ "f\0" "glLineWidth\0" "\0" - /* _mesa_function_pool[26321]: MapBufferARB (will be remapped) */ + /* _mesa_function_pool[26399]: MapBufferARB (will be remapped) */ "ii\0" "glMapBuffer\0" "glMapBufferARB\0" "\0" - /* _mesa_function_pool[26352]: MultiDrawElementsBaseVertex (will be remapped) */ + /* _mesa_function_pool[26430]: MultiDrawElementsBaseVertex (will be remapped) */ "ipipip\0" "glMultiDrawElementsBaseVertex\0" "\0" - /* _mesa_function_pool[26390]: TexParameterIuivEXT (will be remapped) */ + /* _mesa_function_pool[26468]: TexParameterIuivEXT (will be remapped) */ "iip\0" "glTexParameterIuivEXT\0" "glTexParameterIuiv\0" "\0" - /* _mesa_function_pool[26436]: Binormal3svEXT (dynamic) */ + /* _mesa_function_pool[26514]: Binormal3svEXT (dynamic) */ "p\0" "glBinormal3svEXT\0" "\0" - /* _mesa_function_pool[26456]: ApplyTextureEXT (dynamic) */ + /* _mesa_function_pool[26534]: ApplyTextureEXT (dynamic) */ "i\0" "glApplyTextureEXT\0" "\0" - /* _mesa_function_pool[26477]: GetBufferParameteri64v (will be remapped) */ + /* _mesa_function_pool[26555]: GetBufferParameteri64v (will be remapped) */ "iip\0" "glGetBufferParameteri64v\0" "\0" - /* _mesa_function_pool[26507]: TexGendv (offset 189) */ + /* _mesa_function_pool[26585]: TexGendv (offset 189) */ "iip\0" "glTexGendv\0" "\0" - /* _mesa_function_pool[26523]: VertexAttribI3iEXT (will be remapped) */ + /* _mesa_function_pool[26601]: VertexAttribI3iEXT (will be remapped) */ "iiii\0" "glVertexAttribI3iEXT\0" "glVertexAttribI3i\0" "\0" - /* _mesa_function_pool[26568]: EnableIndexedEXT (will be remapped) */ + /* _mesa_function_pool[26646]: EnableIndexedEXT (will be remapped) */ "ii\0" "glEnableIndexedEXT\0" "glEnablei\0" "\0" - /* _mesa_function_pool[26601]: TextureMaterialEXT (dynamic) */ + /* _mesa_function_pool[26679]: TextureMaterialEXT (dynamic) */ "ii\0" "glTextureMaterialEXT\0" "\0" - /* _mesa_function_pool[26626]: TextureLightEXT (dynamic) */ + /* _mesa_function_pool[26704]: TextureLightEXT (dynamic) */ "i\0" "glTextureLightEXT\0" "\0" - /* _mesa_function_pool[26647]: ResetMinmax (offset 370) */ + /* _mesa_function_pool[26725]: ResetMinmax (offset 370) */ "i\0" "glResetMinmax\0" "glResetMinmaxEXT\0" "\0" - /* _mesa_function_pool[26681]: SpriteParameterfSGIX (dynamic) */ + /* _mesa_function_pool[26759]: SpriteParameterfSGIX (dynamic) */ "if\0" "glSpriteParameterfSGIX\0" "\0" - /* _mesa_function_pool[26708]: EnableClientState (offset 313) */ + /* _mesa_function_pool[26786]: EnableClientState (offset 313) */ "i\0" "glEnableClientState\0" "\0" - /* _mesa_function_pool[26731]: VertexAttrib4sNV (will be remapped) */ + /* _mesa_function_pool[26809]: VertexAttrib4sNV (will be remapped) */ "iiiii\0" "glVertexAttrib4sNV\0" "\0" - /* _mesa_function_pool[26757]: GetConvolutionParameterfv (offset 357) */ + /* _mesa_function_pool[26835]: GetConvolutionParameterfv (offset 357) */ "iip\0" "glGetConvolutionParameterfv\0" "glGetConvolutionParameterfvEXT\0" "\0" - /* _mesa_function_pool[26821]: VertexAttribs4dvNV (will be remapped) */ + /* _mesa_function_pool[26899]: VertexAttribs4dvNV (will be remapped) */ "iip\0" "glVertexAttribs4dvNV\0" "\0" - /* _mesa_function_pool[26847]: MultiModeDrawArraysIBM (will be remapped) */ - "pppii\0" - "glMultiModeDrawArraysIBM\0" - "\0" - /* _mesa_function_pool[26879]: VertexAttrib4dARB (will be remapped) */ + /* _mesa_function_pool[26925]: VertexAttrib4dARB (will be remapped) */ "idddd\0" "glVertexAttrib4d\0" "glVertexAttrib4dARB\0" "\0" - /* _mesa_function_pool[26923]: GetTexBumpParameterfvATI (will be remapped) */ + /* _mesa_function_pool[26969]: GetTexBumpParameterfvATI (will be remapped) */ "ip\0" "glGetTexBumpParameterfvATI\0" "\0" - /* _mesa_function_pool[26954]: ProgramNamedParameter4dNV (will be remapped) */ + /* _mesa_function_pool[27000]: ProgramNamedParameter4dNV (will be remapped) */ "iipdddd\0" "glProgramNamedParameter4dNV\0" "\0" - /* _mesa_function_pool[26991]: GetMaterialfv (offset 269) */ + /* _mesa_function_pool[27037]: GetMaterialfv (offset 269) */ "iip\0" "glGetMaterialfv\0" "\0" - /* _mesa_function_pool[27012]: VertexWeightfEXT (dynamic) */ + /* _mesa_function_pool[27058]: VertexWeightfEXT (dynamic) */ "f\0" "glVertexWeightfEXT\0" "\0" - /* _mesa_function_pool[27034]: SetFragmentShaderConstantATI (will be remapped) */ + /* _mesa_function_pool[27080]: SetFragmentShaderConstantATI (will be remapped) */ "ip\0" "glSetFragmentShaderConstantATI\0" "\0" - /* _mesa_function_pool[27069]: Binormal3fEXT (dynamic) */ + /* _mesa_function_pool[27115]: Binormal3fEXT (dynamic) */ "fff\0" "glBinormal3fEXT\0" "\0" - /* _mesa_function_pool[27090]: CallList (offset 2) */ + /* _mesa_function_pool[27136]: CallList (offset 2) */ "i\0" "glCallList\0" "\0" - /* _mesa_function_pool[27104]: Materialfv (offset 170) */ + /* _mesa_function_pool[27150]: Materialfv (offset 170) */ "iip\0" "glMaterialfv\0" "\0" - /* _mesa_function_pool[27122]: TexCoord3fv (offset 113) */ + /* _mesa_function_pool[27168]: TexCoord3fv (offset 113) */ "p\0" "glTexCoord3fv\0" "\0" - /* _mesa_function_pool[27139]: FogCoordfvEXT (will be remapped) */ + /* _mesa_function_pool[27185]: FogCoordfvEXT (will be remapped) */ "p\0" "glFogCoordfv\0" "glFogCoordfvEXT\0" "\0" - /* _mesa_function_pool[27171]: MultiTexCoord1ivARB (offset 381) */ + /* _mesa_function_pool[27217]: MultiTexCoord1ivARB (offset 381) */ "ip\0" "glMultiTexCoord1iv\0" "glMultiTexCoord1ivARB\0" "\0" - /* _mesa_function_pool[27216]: SecondaryColor3ubEXT (will be remapped) */ + /* _mesa_function_pool[27262]: SecondaryColor3ubEXT (will be remapped) */ "iii\0" "glSecondaryColor3ub\0" "glSecondaryColor3ubEXT\0" "\0" - /* _mesa_function_pool[27264]: MultiTexCoord2ivARB (offset 389) */ + /* _mesa_function_pool[27310]: MultiTexCoord2ivARB (offset 389) */ "ip\0" "glMultiTexCoord2iv\0" "glMultiTexCoord2ivARB\0" "\0" - /* _mesa_function_pool[27309]: FogFuncSGIS (dynamic) */ + /* _mesa_function_pool[27355]: FogFuncSGIS (dynamic) */ "ip\0" "glFogFuncSGIS\0" "\0" - /* _mesa_function_pool[27327]: CopyTexSubImage2D (offset 326) */ + /* _mesa_function_pool[27373]: CopyTexSubImage2D (offset 326) */ "iiiiiiii\0" "glCopyTexSubImage2D\0" "glCopyTexSubImage2DEXT\0" "\0" - /* _mesa_function_pool[27380]: GetObjectParameterivARB (will be remapped) */ + /* _mesa_function_pool[27426]: GetObjectParameterivARB (will be remapped) */ "iip\0" "glGetObjectParameterivARB\0" "\0" - /* _mesa_function_pool[27411]: Color3iv (offset 16) */ + /* _mesa_function_pool[27457]: Color3iv (offset 16) */ "p\0" "glColor3iv\0" "\0" - /* _mesa_function_pool[27425]: TexCoord4fVertex4fSUN (dynamic) */ + /* _mesa_function_pool[27471]: TexCoord4fVertex4fSUN (dynamic) */ "ffffffff\0" "glTexCoord4fVertex4fSUN\0" "\0" - /* _mesa_function_pool[27459]: DrawElements (offset 311) */ + /* _mesa_function_pool[27505]: DrawElements (offset 311) */ "iiip\0" "glDrawElements\0" "\0" - /* _mesa_function_pool[27480]: BindVertexArrayAPPLE (will be remapped) */ + /* _mesa_function_pool[27526]: BindVertexArrayAPPLE (will be remapped) */ "i\0" "glBindVertexArrayAPPLE\0" "\0" - /* _mesa_function_pool[27506]: GetProgramLocalParameterdvARB (will be remapped) */ + /* _mesa_function_pool[27552]: GetProgramLocalParameterdvARB (will be remapped) */ "iip\0" "glGetProgramLocalParameterdvARB\0" "\0" - /* _mesa_function_pool[27543]: GetHistogramParameteriv (offset 363) */ + /* _mesa_function_pool[27589]: GetHistogramParameteriv (offset 363) */ "iip\0" "glGetHistogramParameteriv\0" "glGetHistogramParameterivEXT\0" "\0" - /* _mesa_function_pool[27603]: MultiTexCoord1iARB (offset 380) */ + /* _mesa_function_pool[27649]: MultiTexCoord1iARB (offset 380) */ "ii\0" "glMultiTexCoord1i\0" "glMultiTexCoord1iARB\0" "\0" - /* _mesa_function_pool[27646]: GetConvolutionFilter (offset 356) */ + /* _mesa_function_pool[27692]: GetConvolutionFilter (offset 356) */ "iiip\0" "glGetConvolutionFilter\0" "glGetConvolutionFilterEXT\0" "\0" - /* _mesa_function_pool[27701]: GetProgramivARB (will be remapped) */ + /* _mesa_function_pool[27747]: GetProgramivARB (will be remapped) */ "iip\0" "glGetProgramivARB\0" "\0" - /* _mesa_function_pool[27724]: BlendFuncSeparateEXT (will be remapped) */ + /* _mesa_function_pool[27770]: TexBufferARB (will be remapped) */ + "iii\0" + "glTexBufferARB\0" + "\0" + /* _mesa_function_pool[27790]: BlendFuncSeparateEXT (will be remapped) */ "iiii\0" "glBlendFuncSeparate\0" "glBlendFuncSeparateEXT\0" "glBlendFuncSeparateINGR\0" "\0" - /* _mesa_function_pool[27797]: MapBufferRange (will be remapped) */ + /* _mesa_function_pool[27863]: MapBufferRange (will be remapped) */ "iiii\0" "glMapBufferRange\0" "\0" - /* _mesa_function_pool[27820]: ProgramParameters4dvNV (will be remapped) */ + /* _mesa_function_pool[27886]: ProgramParameters4dvNV (will be remapped) */ "iiip\0" "glProgramParameters4dvNV\0" "\0" - /* _mesa_function_pool[27851]: TexCoord2fColor3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[27917]: TexCoord2fColor3fVertex3fvSUN (dynamic) */ "ppp\0" "glTexCoord2fColor3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[27888]: EvalPoint2 (offset 239) */ + /* _mesa_function_pool[27954]: EvalPoint2 (offset 239) */ "ii\0" "glEvalPoint2\0" "\0" - /* _mesa_function_pool[27905]: Uniform1uivEXT (will be remapped) */ + /* _mesa_function_pool[27971]: Uniform1uivEXT (will be remapped) */ "iip\0" "glUniform1uivEXT\0" "glUniform1uiv\0" "\0" - /* _mesa_function_pool[27941]: EvalPoint1 (offset 237) */ + /* _mesa_function_pool[28007]: EvalPoint1 (offset 237) */ "i\0" "glEvalPoint1\0" "\0" - /* _mesa_function_pool[27957]: Binormal3dvEXT (dynamic) */ + /* _mesa_function_pool[28023]: Binormal3dvEXT (dynamic) */ "p\0" "glBinormal3dvEXT\0" "\0" - /* _mesa_function_pool[27977]: PopMatrix (offset 297) */ + /* _mesa_function_pool[28043]: PopMatrix (offset 297) */ "\0" "glPopMatrix\0" "\0" - /* _mesa_function_pool[27991]: GetVertexAttribIuivEXT (will be remapped) */ - "iip\0" - "glGetVertexAttribIuivEXT\0" - "glGetVertexAttribIuiv\0" - "\0" - /* _mesa_function_pool[28043]: FinishFenceNV (will be remapped) */ + /* _mesa_function_pool[28057]: FinishFenceNV (will be remapped) */ "i\0" "glFinishFenceNV\0" "\0" - /* _mesa_function_pool[28062]: GetFogFuncSGIS (dynamic) */ + /* _mesa_function_pool[28076]: GetFogFuncSGIS (dynamic) */ "p\0" "glGetFogFuncSGIS\0" "\0" - /* _mesa_function_pool[28082]: GetUniformLocationARB (will be remapped) */ + /* _mesa_function_pool[28096]: GetUniformLocationARB (will be remapped) */ "ip\0" "glGetUniformLocation\0" "glGetUniformLocationARB\0" "\0" - /* _mesa_function_pool[28131]: SecondaryColor3fEXT (will be remapped) */ + /* _mesa_function_pool[28145]: SecondaryColor3fEXT (will be remapped) */ "fff\0" "glSecondaryColor3f\0" "glSecondaryColor3fEXT\0" "\0" - /* _mesa_function_pool[28177]: GetTexGeniv (offset 280) */ + /* _mesa_function_pool[28191]: GetTexGeniv (offset 280) */ "iip\0" "glGetTexGeniv\0" "\0" - /* _mesa_function_pool[28196]: CombinerInputNV (will be remapped) */ + /* _mesa_function_pool[28210]: CombinerInputNV (will be remapped) */ "iiiiii\0" "glCombinerInputNV\0" "\0" - /* _mesa_function_pool[28222]: VertexAttrib3sARB (will be remapped) */ + /* _mesa_function_pool[28236]: VertexAttrib3sARB (will be remapped) */ "iiii\0" "glVertexAttrib3s\0" "glVertexAttrib3sARB\0" "\0" - /* _mesa_function_pool[28265]: IsTransformFeedback (will be remapped) */ + /* _mesa_function_pool[28279]: IsTransformFeedback (will be remapped) */ "i\0" "glIsTransformFeedback\0" "\0" - /* _mesa_function_pool[28290]: ReplacementCodeuiNormal3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[28304]: ReplacementCodeuiNormal3fVertex3fvSUN (dynamic) */ "ppp\0" "glReplacementCodeuiNormal3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[28335]: Map2d (offset 222) */ + /* _mesa_function_pool[28349]: Map2d (offset 222) */ "iddiiddiip\0" "glMap2d\0" "\0" - /* _mesa_function_pool[28355]: Map2f (offset 223) */ + /* _mesa_function_pool[28369]: Map2f (offset 223) */ "iffiiffiip\0" "glMap2f\0" "\0" - /* _mesa_function_pool[28375]: ProgramStringARB (will be remapped) */ + /* _mesa_function_pool[28389]: ProgramStringARB (will be remapped) */ "iiip\0" "glProgramStringARB\0" "\0" - /* _mesa_function_pool[28400]: Vertex4s (offset 148) */ + /* _mesa_function_pool[28414]: Vertex4s (offset 148) */ "iiii\0" "glVertex4s\0" "\0" - /* _mesa_function_pool[28417]: TexCoord4fVertex4fvSUN (dynamic) */ + /* _mesa_function_pool[28431]: TexCoord4fVertex4fvSUN (dynamic) */ "pp\0" "glTexCoord4fVertex4fvSUN\0" "\0" - /* _mesa_function_pool[28446]: FragmentLightModelivSGIX (dynamic) */ + /* _mesa_function_pool[28460]: FragmentLightModelivSGIX (dynamic) */ "ip\0" "glFragmentLightModelivSGIX\0" "\0" - /* _mesa_function_pool[28477]: VertexAttrib1fNV (will be remapped) */ + /* _mesa_function_pool[28491]: VertexAttrib1fNV (will be remapped) */ "if\0" "glVertexAttrib1fNV\0" "\0" - /* _mesa_function_pool[28500]: Vertex4f (offset 144) */ + /* _mesa_function_pool[28514]: Vertex4f (offset 144) */ "ffff\0" "glVertex4f\0" "\0" - /* _mesa_function_pool[28517]: EvalCoord1d (offset 228) */ + /* _mesa_function_pool[28531]: EvalCoord1d (offset 228) */ "d\0" "glEvalCoord1d\0" "\0" - /* _mesa_function_pool[28534]: Vertex4d (offset 142) */ + /* _mesa_function_pool[28548]: Vertex4d (offset 142) */ "dddd\0" "glVertex4d\0" "\0" - /* _mesa_function_pool[28551]: RasterPos4dv (offset 79) */ + /* _mesa_function_pool[28565]: RasterPos4dv (offset 79) */ "p\0" "glRasterPos4dv\0" "\0" - /* _mesa_function_pool[28569]: UseShaderProgramEXT (will be remapped) */ + /* _mesa_function_pool[28583]: UseShaderProgramEXT (will be remapped) */ "ii\0" "glUseShaderProgramEXT\0" "\0" - /* _mesa_function_pool[28595]: FragmentLightfSGIX (dynamic) */ + /* _mesa_function_pool[28609]: FragmentLightfSGIX (dynamic) */ "iif\0" "glFragmentLightfSGIX\0" "\0" - /* _mesa_function_pool[28621]: GetCompressedTexImageARB (will be remapped) */ + /* _mesa_function_pool[28635]: GetCompressedTexImageARB (will be remapped) */ "iip\0" "glGetCompressedTexImage\0" "glGetCompressedTexImageARB\0" "\0" - /* _mesa_function_pool[28677]: GetTexGenfv (offset 279) */ + /* _mesa_function_pool[28691]: GetTexGenfv (offset 279) */ "iip\0" "glGetTexGenfv\0" "\0" - /* _mesa_function_pool[28696]: Vertex4i (offset 146) */ + /* _mesa_function_pool[28710]: Vertex4i (offset 146) */ "iiii\0" "glVertex4i\0" "\0" - /* _mesa_function_pool[28713]: VertexWeightPointerEXT (dynamic) */ + /* _mesa_function_pool[28727]: VertexWeightPointerEXT (dynamic) */ "iiip\0" "glVertexWeightPointerEXT\0" "\0" - /* _mesa_function_pool[28744]: GetHistogram (offset 361) */ + /* _mesa_function_pool[28758]: GetHistogram (offset 361) */ "iiiip\0" "glGetHistogram\0" "glGetHistogramEXT\0" "\0" - /* _mesa_function_pool[28784]: ActiveStencilFaceEXT (will be remapped) */ + /* _mesa_function_pool[28798]: ActiveStencilFaceEXT (will be remapped) */ "i\0" "glActiveStencilFaceEXT\0" "\0" - /* _mesa_function_pool[28810]: StencilFuncSeparateATI (will be remapped) */ + /* _mesa_function_pool[28824]: StencilFuncSeparateATI (will be remapped) */ "iiii\0" "glStencilFuncSeparateATI\0" "\0" - /* _mesa_function_pool[28841]: Materialf (offset 169) */ + /* _mesa_function_pool[28855]: Materialf (offset 169) */ "iif\0" "glMaterialf\0" "\0" - /* _mesa_function_pool[28858]: GetShaderSourceARB (will be remapped) */ + /* _mesa_function_pool[28872]: GetShaderSourceARB (will be remapped) */ "iipp\0" "glGetShaderSource\0" "glGetShaderSourceARB\0" "\0" - /* _mesa_function_pool[28903]: IglooInterfaceSGIX (dynamic) */ + /* _mesa_function_pool[28917]: IglooInterfaceSGIX (dynamic) */ "ip\0" "glIglooInterfaceSGIX\0" "\0" - /* _mesa_function_pool[28928]: Materiali (offset 171) */ + /* _mesa_function_pool[28942]: Materiali (offset 171) */ "iii\0" "glMateriali\0" "\0" - /* _mesa_function_pool[28945]: VertexAttrib4dNV (will be remapped) */ + /* _mesa_function_pool[28959]: VertexAttrib4dNV (will be remapped) */ "idddd\0" "glVertexAttrib4dNV\0" "\0" - /* _mesa_function_pool[28971]: MultiModeDrawElementsIBM (will be remapped) */ + /* _mesa_function_pool[28985]: MultiModeDrawElementsIBM (will be remapped) */ "ppipii\0" "glMultiModeDrawElementsIBM\0" "\0" - /* _mesa_function_pool[29006]: Indexsv (offset 51) */ + /* _mesa_function_pool[29020]: Indexsv (offset 51) */ "p\0" "glIndexsv\0" "\0" - /* _mesa_function_pool[29019]: MultiTexCoord4svARB (offset 407) */ + /* _mesa_function_pool[29033]: MultiTexCoord4svARB (offset 407) */ "ip\0" "glMultiTexCoord4sv\0" "glMultiTexCoord4svARB\0" "\0" - /* _mesa_function_pool[29064]: LightModelfv (offset 164) */ + /* _mesa_function_pool[29078]: LightModelfv (offset 164) */ "ip\0" "glLightModelfv\0" "\0" - /* _mesa_function_pool[29083]: TexCoord2dv (offset 103) */ + /* _mesa_function_pool[29097]: TexCoord2dv (offset 103) */ "p\0" "glTexCoord2dv\0" "\0" - /* _mesa_function_pool[29100]: GenQueriesARB (will be remapped) */ + /* _mesa_function_pool[29114]: GenQueriesARB (will be remapped) */ "ip\0" "glGenQueries\0" "glGenQueriesARB\0" "\0" - /* _mesa_function_pool[29133]: EvalCoord1dv (offset 229) */ + /* _mesa_function_pool[29147]: EvalCoord1dv (offset 229) */ "p\0" "glEvalCoord1dv\0" "\0" - /* _mesa_function_pool[29151]: ReplacementCodeuiVertex3fSUN (dynamic) */ + /* _mesa_function_pool[29165]: ReplacementCodeuiVertex3fSUN (dynamic) */ "ifff\0" "glReplacementCodeuiVertex3fSUN\0" "\0" - /* _mesa_function_pool[29188]: Translated (offset 303) */ + /* _mesa_function_pool[29202]: Translated (offset 303) */ "ddd\0" "glTranslated\0" "\0" - /* _mesa_function_pool[29206]: Translatef (offset 304) */ + /* _mesa_function_pool[29220]: Translatef (offset 304) */ "fff\0" "glTranslatef\0" "\0" - /* _mesa_function_pool[29224]: Uniform3uiEXT (will be remapped) */ + /* _mesa_function_pool[29238]: Uniform3uiEXT (will be remapped) */ "iiii\0" "glUniform3uiEXT\0" "glUniform3ui\0" "\0" - /* _mesa_function_pool[29259]: StencilMask (offset 209) */ + /* _mesa_function_pool[29273]: StencilMask (offset 209) */ "i\0" "glStencilMask\0" "\0" - /* _mesa_function_pool[29276]: Tangent3iEXT (dynamic) */ + /* _mesa_function_pool[29290]: Tangent3iEXT (dynamic) */ "iii\0" "glTangent3iEXT\0" "\0" - /* _mesa_function_pool[29296]: ClampColorARB (will be remapped) */ + /* _mesa_function_pool[29310]: ClampColorARB (will be remapped) */ "ii\0" "glClampColorARB\0" "\0" - /* _mesa_function_pool[29316]: GetLightiv (offset 265) */ + /* _mesa_function_pool[29330]: GetLightiv (offset 265) */ "iip\0" "glGetLightiv\0" "\0" - /* _mesa_function_pool[29334]: DrawMeshArraysSUN (dynamic) */ + /* _mesa_function_pool[29348]: DrawMeshArraysSUN (dynamic) */ "iiii\0" "glDrawMeshArraysSUN\0" "\0" - /* _mesa_function_pool[29360]: IsList (offset 287) */ + /* _mesa_function_pool[29374]: IsList (offset 287) */ "i\0" "glIsList\0" "\0" - /* _mesa_function_pool[29372]: IsSync (will be remapped) */ + /* _mesa_function_pool[29386]: IsSync (will be remapped) */ "i\0" "glIsSync\0" "\0" - /* _mesa_function_pool[29384]: RenderMode (offset 196) */ + /* _mesa_function_pool[29398]: RenderMode (offset 196) */ "i\0" "glRenderMode\0" "\0" - /* _mesa_function_pool[29400]: GetMapControlPointsNV (dynamic) */ + /* _mesa_function_pool[29414]: GetMapControlPointsNV (dynamic) */ "iiiiiip\0" "glGetMapControlPointsNV\0" "\0" - /* _mesa_function_pool[29433]: DrawBuffersARB (will be remapped) */ + /* _mesa_function_pool[29447]: DrawBuffersARB (will be remapped) */ "ip\0" "glDrawBuffers\0" "glDrawBuffersARB\0" "glDrawBuffersATI\0" "\0" - /* _mesa_function_pool[29485]: ClearBufferiv (will be remapped) */ + /* _mesa_function_pool[29499]: ClearBufferiv (will be remapped) */ "iip\0" "glClearBufferiv\0" "\0" - /* _mesa_function_pool[29506]: ProgramLocalParameter4fARB (will be remapped) */ + /* _mesa_function_pool[29520]: ProgramLocalParameter4fARB (will be remapped) */ "iiffff\0" "glProgramLocalParameter4fARB\0" "\0" - /* _mesa_function_pool[29543]: SpriteParameterivSGIX (dynamic) */ + /* _mesa_function_pool[29557]: SpriteParameterivSGIX (dynamic) */ "ip\0" "glSpriteParameterivSGIX\0" "\0" - /* _mesa_function_pool[29571]: ProvokingVertexEXT (will be remapped) */ + /* _mesa_function_pool[29585]: ProvokingVertexEXT (will be remapped) */ "i\0" "glProvokingVertexEXT\0" "glProvokingVertex\0" "\0" - /* _mesa_function_pool[29613]: MultiTexCoord1fARB (offset 378) */ + /* _mesa_function_pool[29627]: MultiTexCoord1fARB (offset 378) */ "if\0" "glMultiTexCoord1f\0" "glMultiTexCoord1fARB\0" "\0" - /* _mesa_function_pool[29656]: LoadName (offset 198) */ + /* _mesa_function_pool[29670]: LoadName (offset 198) */ "i\0" "glLoadName\0" "\0" - /* _mesa_function_pool[29670]: VertexAttribs4ubvNV (will be remapped) */ + /* _mesa_function_pool[29684]: VertexAttribs4ubvNV (will be remapped) */ "iip\0" "glVertexAttribs4ubvNV\0" "\0" - /* _mesa_function_pool[29697]: WeightsvARB (dynamic) */ + /* _mesa_function_pool[29711]: WeightsvARB (dynamic) */ "ip\0" "glWeightsvARB\0" "\0" - /* _mesa_function_pool[29715]: Uniform1fvARB (will be remapped) */ + /* _mesa_function_pool[29729]: Uniform1fvARB (will be remapped) */ "iip\0" "glUniform1fv\0" "glUniform1fvARB\0" "\0" - /* _mesa_function_pool[29749]: CopyTexSubImage1D (offset 325) */ + /* _mesa_function_pool[29763]: CopyTexSubImage1D (offset 325) */ "iiiiii\0" "glCopyTexSubImage1D\0" "glCopyTexSubImage1DEXT\0" "\0" - /* _mesa_function_pool[29800]: CullFace (offset 152) */ + /* _mesa_function_pool[29814]: CullFace (offset 152) */ "i\0" "glCullFace\0" "\0" - /* _mesa_function_pool[29814]: BindTexture (offset 307) */ + /* _mesa_function_pool[29828]: BindTexture (offset 307) */ "ii\0" "glBindTexture\0" "glBindTextureEXT\0" "\0" - /* _mesa_function_pool[29849]: BeginFragmentShaderATI (will be remapped) */ + /* _mesa_function_pool[29863]: BeginFragmentShaderATI (will be remapped) */ "\0" "glBeginFragmentShaderATI\0" "\0" - /* _mesa_function_pool[29876]: MultiTexCoord4fARB (offset 402) */ + /* _mesa_function_pool[29890]: MultiTexCoord4fARB (offset 402) */ "iffff\0" "glMultiTexCoord4f\0" "glMultiTexCoord4fARB\0" "\0" - /* _mesa_function_pool[29922]: VertexAttribs3svNV (will be remapped) */ + /* _mesa_function_pool[29936]: VertexAttribs3svNV (will be remapped) */ "iip\0" "glVertexAttribs3svNV\0" "\0" - /* _mesa_function_pool[29948]: StencilFunc (offset 243) */ + /* _mesa_function_pool[29962]: StencilFunc (offset 243) */ "iii\0" "glStencilFunc\0" "\0" - /* _mesa_function_pool[29967]: CopyPixels (offset 255) */ + /* _mesa_function_pool[29981]: CopyPixels (offset 255) */ "iiiii\0" "glCopyPixels\0" "\0" - /* _mesa_function_pool[29987]: Rectsv (offset 93) */ + /* _mesa_function_pool[30001]: Rectsv (offset 93) */ "pp\0" "glRectsv\0" "\0" - /* _mesa_function_pool[30000]: ReplacementCodeuivSUN (dynamic) */ + /* _mesa_function_pool[30014]: ReplacementCodeuivSUN (dynamic) */ "p\0" "glReplacementCodeuivSUN\0" "\0" - /* _mesa_function_pool[30027]: EnableVertexAttribArrayARB (will be remapped) */ + /* _mesa_function_pool[30041]: EnableVertexAttribArrayARB (will be remapped) */ "i\0" "glEnableVertexAttribArray\0" "glEnableVertexAttribArrayARB\0" "\0" - /* _mesa_function_pool[30085]: NormalPointervINTEL (dynamic) */ + /* _mesa_function_pool[30099]: NormalPointervINTEL (dynamic) */ "ip\0" "glNormalPointervINTEL\0" "\0" - /* _mesa_function_pool[30111]: CopyConvolutionFilter2D (offset 355) */ + /* _mesa_function_pool[30125]: CopyConvolutionFilter2D (offset 355) */ "iiiiii\0" "glCopyConvolutionFilter2D\0" "glCopyConvolutionFilter2DEXT\0" "\0" - /* _mesa_function_pool[30174]: WindowPos3ivMESA (will be remapped) */ + /* _mesa_function_pool[30188]: WindowPos3ivMESA (will be remapped) */ "p\0" "glWindowPos3iv\0" "glWindowPos3ivARB\0" "glWindowPos3ivMESA\0" "\0" - /* _mesa_function_pool[30229]: CopyBufferSubData (will be remapped) */ + /* _mesa_function_pool[30243]: CopyBufferSubData (will be remapped) */ "iiiii\0" "glCopyBufferSubData\0" "\0" - /* _mesa_function_pool[30256]: NormalPointer (offset 318) */ + /* _mesa_function_pool[30270]: NormalPointer (offset 318) */ "iip\0" "glNormalPointer\0" "\0" - /* _mesa_function_pool[30277]: TexParameterfv (offset 179) */ + /* _mesa_function_pool[30291]: TexParameterfv (offset 179) */ "iip\0" "glTexParameterfv\0" "\0" - /* _mesa_function_pool[30299]: IsBufferARB (will be remapped) */ + /* _mesa_function_pool[30313]: IsBufferARB (will be remapped) */ "i\0" "glIsBuffer\0" "glIsBufferARB\0" "\0" - /* _mesa_function_pool[30327]: WindowPos4iMESA (will be remapped) */ + /* _mesa_function_pool[30341]: WindowPos4iMESA (will be remapped) */ "iiii\0" "glWindowPos4iMESA\0" "\0" - /* _mesa_function_pool[30351]: VertexAttrib4uivARB (will be remapped) */ + /* _mesa_function_pool[30365]: VertexAttrib4uivARB (will be remapped) */ "ip\0" "glVertexAttrib4uiv\0" "glVertexAttrib4uivARB\0" "\0" - /* _mesa_function_pool[30396]: Tangent3bvEXT (dynamic) */ + /* _mesa_function_pool[30410]: Tangent3bvEXT (dynamic) */ "p\0" "glTangent3bvEXT\0" "\0" - /* _mesa_function_pool[30415]: VertexAttribI3uivEXT (will be remapped) */ + /* _mesa_function_pool[30429]: VertexAttribI3uivEXT (will be remapped) */ "ip\0" "glVertexAttribI3uivEXT\0" "glVertexAttribI3uiv\0" "\0" - /* _mesa_function_pool[30462]: UniformMatrix3x4fv (will be remapped) */ + /* _mesa_function_pool[30476]: UniformMatrix3x4fv (will be remapped) */ "iiip\0" "glUniformMatrix3x4fv\0" "\0" - /* _mesa_function_pool[30489]: ClipPlane (offset 150) */ + /* _mesa_function_pool[30503]: ClipPlane (offset 150) */ "ip\0" "glClipPlane\0" "\0" - /* _mesa_function_pool[30505]: Recti (offset 90) */ + /* _mesa_function_pool[30519]: Recti (offset 90) */ "iiii\0" "glRecti\0" "\0" - /* _mesa_function_pool[30519]: VertexAttribI3ivEXT (will be remapped) */ + /* _mesa_function_pool[30533]: VertexAttribI3ivEXT (will be remapped) */ "ip\0" "glVertexAttribI3ivEXT\0" "glVertexAttribI3iv\0" "\0" - /* _mesa_function_pool[30564]: DrawRangeElementsBaseVertex (will be remapped) */ + /* _mesa_function_pool[30578]: DrawRangeElementsBaseVertex (will be remapped) */ "iiiiipi\0" "glDrawRangeElementsBaseVertex\0" "\0" - /* _mesa_function_pool[30603]: TexCoordPointervINTEL (dynamic) */ + /* _mesa_function_pool[30617]: TexCoordPointervINTEL (dynamic) */ "iip\0" "glTexCoordPointervINTEL\0" "\0" - /* _mesa_function_pool[30632]: DeleteBuffersARB (will be remapped) */ + /* _mesa_function_pool[30646]: DeleteBuffersARB (will be remapped) */ "ip\0" "glDeleteBuffers\0" "glDeleteBuffersARB\0" "\0" - /* _mesa_function_pool[30671]: PixelTransformParameterfvEXT (dynamic) */ + /* _mesa_function_pool[30685]: PixelTransformParameterfvEXT (dynamic) */ "iip\0" "glPixelTransformParameterfvEXT\0" "\0" - /* _mesa_function_pool[30707]: PrimitiveRestartNV (will be remapped) */ + /* _mesa_function_pool[30721]: PrimitiveRestartNV (will be remapped) */ "\0" "glPrimitiveRestartNV\0" "\0" - /* _mesa_function_pool[30730]: WindowPos4fvMESA (will be remapped) */ + /* _mesa_function_pool[30744]: WindowPos4fvMESA (will be remapped) */ "p\0" "glWindowPos4fvMESA\0" "\0" - /* _mesa_function_pool[30752]: GetPixelMapuiv (offset 272) */ + /* _mesa_function_pool[30766]: GetPixelMapuiv (offset 272) */ "ip\0" "glGetPixelMapuiv\0" "\0" - /* _mesa_function_pool[30773]: Rectf (offset 88) */ + /* _mesa_function_pool[30787]: Rectf (offset 88) */ "ffff\0" "glRectf\0" "\0" - /* _mesa_function_pool[30787]: VertexAttrib1sNV (will be remapped) */ + /* _mesa_function_pool[30801]: VertexAttrib1sNV (will be remapped) */ "ii\0" "glVertexAttrib1sNV\0" "\0" - /* _mesa_function_pool[30810]: Indexfv (offset 47) */ + /* _mesa_function_pool[30824]: Indexfv (offset 47) */ "p\0" "glIndexfv\0" "\0" - /* _mesa_function_pool[30823]: SecondaryColor3svEXT (will be remapped) */ + /* _mesa_function_pool[30837]: SecondaryColor3svEXT (will be remapped) */ "p\0" "glSecondaryColor3sv\0" "glSecondaryColor3svEXT\0" "\0" - /* _mesa_function_pool[30869]: LoadTransposeMatrixfARB (will be remapped) */ + /* _mesa_function_pool[30883]: LoadTransposeMatrixfARB (will be remapped) */ "p\0" "glLoadTransposeMatrixf\0" "glLoadTransposeMatrixfARB\0" "\0" - /* _mesa_function_pool[30921]: GetPointerv (offset 329) */ + /* _mesa_function_pool[30935]: GetPointerv (offset 329) */ "ip\0" "glGetPointerv\0" "glGetPointervEXT\0" "\0" - /* _mesa_function_pool[30956]: Tangent3bEXT (dynamic) */ + /* _mesa_function_pool[30970]: Tangent3bEXT (dynamic) */ "iii\0" "glTangent3bEXT\0" "\0" - /* _mesa_function_pool[30976]: CombinerParameterfNV (will be remapped) */ + /* _mesa_function_pool[30990]: CombinerParameterfNV (will be remapped) */ "if\0" "glCombinerParameterfNV\0" "\0" - /* _mesa_function_pool[31003]: IndexMask (offset 212) */ + /* _mesa_function_pool[31017]: IndexMask (offset 212) */ "i\0" "glIndexMask\0" "\0" - /* _mesa_function_pool[31018]: BindProgramNV (will be remapped) */ + /* _mesa_function_pool[31032]: BindProgramNV (will be remapped) */ "ii\0" "glBindProgramARB\0" "glBindProgramNV\0" "\0" - /* _mesa_function_pool[31055]: VertexAttrib4svARB (will be remapped) */ + /* _mesa_function_pool[31069]: VertexAttrib4svARB (will be remapped) */ "ip\0" "glVertexAttrib4sv\0" "glVertexAttrib4svARB\0" "\0" - /* _mesa_function_pool[31098]: GetFloatv (offset 262) */ + /* _mesa_function_pool[31112]: GetFloatv (offset 262) */ "ip\0" "glGetFloatv\0" "\0" - /* _mesa_function_pool[31114]: CreateDebugObjectMESA (dynamic) */ + /* _mesa_function_pool[31128]: CreateDebugObjectMESA (dynamic) */ "\0" "glCreateDebugObjectMESA\0" "\0" - /* _mesa_function_pool[31140]: GetShaderiv (will be remapped) */ + /* _mesa_function_pool[31154]: GetShaderiv (will be remapped) */ "iip\0" "glGetShaderiv\0" "\0" - /* _mesa_function_pool[31159]: ClientWaitSync (will be remapped) */ + /* _mesa_function_pool[31173]: ClientWaitSync (will be remapped) */ "iii\0" "glClientWaitSync\0" "\0" - /* _mesa_function_pool[31181]: TexCoord4s (offset 124) */ + /* _mesa_function_pool[31195]: TexCoord4s (offset 124) */ "iiii\0" "glTexCoord4s\0" "\0" - /* _mesa_function_pool[31200]: TexCoord3sv (offset 117) */ + /* _mesa_function_pool[31214]: TexCoord3sv (offset 117) */ "p\0" "glTexCoord3sv\0" "\0" - /* _mesa_function_pool[31217]: BindFragmentShaderATI (will be remapped) */ + /* _mesa_function_pool[31231]: BindFragmentShaderATI (will be remapped) */ "i\0" "glBindFragmentShaderATI\0" "\0" - /* _mesa_function_pool[31244]: PopAttrib (offset 218) */ + /* _mesa_function_pool[31258]: PopAttrib (offset 218) */ "\0" "glPopAttrib\0" "\0" - /* _mesa_function_pool[31258]: Fogfv (offset 154) */ + /* _mesa_function_pool[31272]: Fogfv (offset 154) */ "ip\0" "glFogfv\0" "\0" - /* _mesa_function_pool[31270]: UnmapBufferARB (will be remapped) */ + /* _mesa_function_pool[31284]: UnmapBufferARB (will be remapped) */ "i\0" "glUnmapBuffer\0" "glUnmapBufferARB\0" "\0" - /* _mesa_function_pool[31304]: InitNames (offset 197) */ + /* _mesa_function_pool[31318]: InitNames (offset 197) */ "\0" "glInitNames\0" "\0" - /* _mesa_function_pool[31318]: Normal3sv (offset 61) */ + /* _mesa_function_pool[31332]: Normal3sv (offset 61) */ "p\0" "glNormal3sv\0" "\0" - /* _mesa_function_pool[31333]: Minmax (offset 368) */ + /* _mesa_function_pool[31347]: Minmax (offset 368) */ "iii\0" "glMinmax\0" "glMinmaxEXT\0" "\0" - /* _mesa_function_pool[31359]: TexCoord4d (offset 118) */ + /* _mesa_function_pool[31373]: TexCoord4d (offset 118) */ "dddd\0" "glTexCoord4d\0" "\0" - /* _mesa_function_pool[31378]: TexCoord4f (offset 120) */ + /* _mesa_function_pool[31392]: DeformationMap3dSGIX (dynamic) */ + "iddiiddiiddiip\0" + "glDeformationMap3dSGIX\0" + "\0" + /* _mesa_function_pool[31431]: TexCoord4f (offset 120) */ "ffff\0" "glTexCoord4f\0" "\0" - /* _mesa_function_pool[31397]: FogCoorddvEXT (will be remapped) */ + /* _mesa_function_pool[31450]: FogCoorddvEXT (will be remapped) */ "p\0" "glFogCoorddv\0" "glFogCoorddvEXT\0" "\0" - /* _mesa_function_pool[31429]: FinishTextureSUNX (dynamic) */ + /* _mesa_function_pool[31482]: FinishTextureSUNX (dynamic) */ "\0" "glFinishTextureSUNX\0" "\0" - /* _mesa_function_pool[31451]: GetFragmentLightfvSGIX (dynamic) */ + /* _mesa_function_pool[31504]: GetFragmentLightfvSGIX (dynamic) */ "iip\0" "glGetFragmentLightfvSGIX\0" "\0" - /* _mesa_function_pool[31481]: Binormal3fvEXT (dynamic) */ + /* _mesa_function_pool[31534]: Binormal3fvEXT (dynamic) */ "p\0" "glBinormal3fvEXT\0" "\0" - /* _mesa_function_pool[31501]: GetBooleanv (offset 258) */ + /* _mesa_function_pool[31554]: GetBooleanv (offset 258) */ "ip\0" "glGetBooleanv\0" "\0" - /* _mesa_function_pool[31519]: ColorFragmentOp3ATI (will be remapped) */ + /* _mesa_function_pool[31572]: ColorFragmentOp3ATI (will be remapped) */ "iiiiiiiiiiiii\0" "glColorFragmentOp3ATI\0" "\0" - /* _mesa_function_pool[31556]: Hint (offset 158) */ + /* _mesa_function_pool[31609]: Hint (offset 158) */ "ii\0" "glHint\0" "\0" - /* _mesa_function_pool[31567]: Color4dv (offset 28) */ + /* _mesa_function_pool[31620]: Color4dv (offset 28) */ "p\0" "glColor4dv\0" "\0" - /* _mesa_function_pool[31581]: VertexAttrib2svARB (will be remapped) */ + /* _mesa_function_pool[31634]: VertexAttrib2svARB (will be remapped) */ "ip\0" "glVertexAttrib2sv\0" "glVertexAttrib2svARB\0" "\0" - /* _mesa_function_pool[31624]: AreProgramsResidentNV (will be remapped) */ + /* _mesa_function_pool[31677]: AreProgramsResidentNV (will be remapped) */ "ipp\0" "glAreProgramsResidentNV\0" "\0" - /* _mesa_function_pool[31653]: WindowPos3svMESA (will be remapped) */ + /* _mesa_function_pool[31706]: WindowPos3svMESA (will be remapped) */ "p\0" "glWindowPos3sv\0" "glWindowPos3svARB\0" "glWindowPos3svMESA\0" "\0" - /* _mesa_function_pool[31708]: CopyColorSubTable (offset 347) */ + /* _mesa_function_pool[31761]: CopyColorSubTable (offset 347) */ "iiiii\0" "glCopyColorSubTable\0" "glCopyColorSubTableEXT\0" "\0" - /* _mesa_function_pool[31758]: WeightdvARB (dynamic) */ + /* _mesa_function_pool[31811]: WeightdvARB (dynamic) */ "ip\0" "glWeightdvARB\0" "\0" - /* _mesa_function_pool[31776]: DeleteRenderbuffersEXT (will be remapped) */ + /* _mesa_function_pool[31829]: DeleteRenderbuffersEXT (will be remapped) */ "ip\0" "glDeleteRenderbuffers\0" "glDeleteRenderbuffersEXT\0" "\0" - /* _mesa_function_pool[31827]: VertexAttrib4NubvARB (will be remapped) */ + /* _mesa_function_pool[31880]: VertexAttrib4NubvARB (will be remapped) */ "ip\0" "glVertexAttrib4Nubv\0" "glVertexAttrib4NubvARB\0" "\0" - /* _mesa_function_pool[31874]: VertexAttrib3dvNV (will be remapped) */ + /* _mesa_function_pool[31927]: VertexAttrib3dvNV (will be remapped) */ "ip\0" "glVertexAttrib3dvNV\0" "\0" - /* _mesa_function_pool[31898]: GetObjectParameterfvARB (will be remapped) */ + /* _mesa_function_pool[31951]: GetObjectParameterfvARB (will be remapped) */ "iip\0" "glGetObjectParameterfvARB\0" "\0" - /* _mesa_function_pool[31929]: Vertex4iv (offset 147) */ + /* _mesa_function_pool[31982]: Vertex4iv (offset 147) */ "p\0" "glVertex4iv\0" "\0" - /* _mesa_function_pool[31944]: GetProgramEnvParameterdvARB (will be remapped) */ + /* _mesa_function_pool[31997]: GetProgramEnvParameterdvARB (will be remapped) */ "iip\0" "glGetProgramEnvParameterdvARB\0" "\0" - /* _mesa_function_pool[31979]: TexCoord4dv (offset 119) */ + /* _mesa_function_pool[32032]: TexCoord4dv (offset 119) */ "p\0" "glTexCoord4dv\0" "\0" - /* _mesa_function_pool[31996]: LockArraysEXT (will be remapped) */ + /* _mesa_function_pool[32049]: LockArraysEXT (will be remapped) */ "ii\0" "glLockArraysEXT\0" "\0" - /* _mesa_function_pool[32016]: Begin (offset 7) */ + /* _mesa_function_pool[32069]: Begin (offset 7) */ "i\0" "glBegin\0" "\0" - /* _mesa_function_pool[32027]: LightModeli (offset 165) */ + /* _mesa_function_pool[32080]: LightModeli (offset 165) */ "ii\0" "glLightModeli\0" "\0" - /* _mesa_function_pool[32045]: VertexAttribI4ivEXT (will be remapped) */ + /* _mesa_function_pool[32098]: VertexAttribI4ivEXT (will be remapped) */ "ip\0" "glVertexAttribI4ivEXT\0" "glVertexAttribI4iv\0" "\0" - /* _mesa_function_pool[32090]: Rectfv (offset 89) */ + /* _mesa_function_pool[32143]: Rectfv (offset 89) */ "pp\0" "glRectfv\0" "\0" - /* _mesa_function_pool[32103]: BlendEquationSeparateiARB (will be remapped) */ - "iii\0" - "glBlendEquationSeparateiARB\0" - "\0" - /* _mesa_function_pool[32136]: LightModelf (offset 163) */ + /* _mesa_function_pool[32156]: LightModelf (offset 163) */ "if\0" "glLightModelf\0" "\0" - /* _mesa_function_pool[32154]: GetTexParameterfv (offset 282) */ + /* _mesa_function_pool[32174]: GetTexParameterfv (offset 282) */ "iip\0" "glGetTexParameterfv\0" "\0" - /* _mesa_function_pool[32179]: GetLightfv (offset 264) */ + /* _mesa_function_pool[32199]: GetLightfv (offset 264) */ "iip\0" "glGetLightfv\0" "\0" - /* _mesa_function_pool[32197]: PixelTransformParameterivEXT (dynamic) */ + /* _mesa_function_pool[32217]: PixelTransformParameterivEXT (dynamic) */ "iip\0" "glPixelTransformParameterivEXT\0" "\0" - /* _mesa_function_pool[32233]: BinormalPointerEXT (dynamic) */ + /* _mesa_function_pool[32253]: BinormalPointerEXT (dynamic) */ "iip\0" "glBinormalPointerEXT\0" "\0" - /* _mesa_function_pool[32259]: VertexAttrib1dNV (will be remapped) */ + /* _mesa_function_pool[32279]: VertexAttrib1dNV (will be remapped) */ "id\0" "glVertexAttrib1dNV\0" "\0" - /* _mesa_function_pool[32282]: GetCombinerInputParameterivNV (will be remapped) */ + /* _mesa_function_pool[32302]: GetCombinerInputParameterivNV (will be remapped) */ "iiiip\0" "glGetCombinerInputParameterivNV\0" "\0" - /* _mesa_function_pool[32321]: Disable (offset 214) */ + /* _mesa_function_pool[32341]: Disable (offset 214) */ "i\0" "glDisable\0" "\0" - /* _mesa_function_pool[32334]: MultiTexCoord2fvARB (offset 387) */ + /* _mesa_function_pool[32354]: MultiTexCoord2fvARB (offset 387) */ "ip\0" "glMultiTexCoord2fv\0" "glMultiTexCoord2fvARB\0" "\0" - /* _mesa_function_pool[32379]: GetRenderbufferParameterivEXT (will be remapped) */ + /* _mesa_function_pool[32399]: GetRenderbufferParameterivEXT (will be remapped) */ "iip\0" "glGetRenderbufferParameteriv\0" "glGetRenderbufferParameterivEXT\0" "\0" - /* _mesa_function_pool[32445]: CombinerParameterivNV (will be remapped) */ + /* _mesa_function_pool[32465]: CombinerParameterivNV (will be remapped) */ "ip\0" "glCombinerParameterivNV\0" "\0" - /* _mesa_function_pool[32473]: GenFragmentShadersATI (will be remapped) */ + /* _mesa_function_pool[32493]: GenFragmentShadersATI (will be remapped) */ "i\0" "glGenFragmentShadersATI\0" "\0" - /* _mesa_function_pool[32500]: DrawArrays (offset 310) */ + /* _mesa_function_pool[32520]: DrawArrays (offset 310) */ "iii\0" "glDrawArrays\0" "glDrawArraysEXT\0" "\0" - /* _mesa_function_pool[32534]: WeightuivARB (dynamic) */ + /* _mesa_function_pool[32554]: WeightuivARB (dynamic) */ "ip\0" "glWeightuivARB\0" "\0" - /* _mesa_function_pool[32553]: VertexAttrib2sARB (will be remapped) */ + /* _mesa_function_pool[32573]: VertexAttrib2sARB (will be remapped) */ "iii\0" "glVertexAttrib2s\0" "glVertexAttrib2sARB\0" "\0" - /* _mesa_function_pool[32595]: ColorMask (offset 210) */ + /* _mesa_function_pool[32615]: ColorMask (offset 210) */ "iiii\0" "glColorMask\0" "\0" - /* _mesa_function_pool[32613]: GenAsyncMarkersSGIX (dynamic) */ + /* _mesa_function_pool[32633]: GenAsyncMarkersSGIX (dynamic) */ "i\0" "glGenAsyncMarkersSGIX\0" "\0" - /* _mesa_function_pool[32638]: Tangent3svEXT (dynamic) */ + /* _mesa_function_pool[32658]: Tangent3svEXT (dynamic) */ "p\0" "glTangent3svEXT\0" "\0" - /* _mesa_function_pool[32657]: GetListParameterivSGIX (dynamic) */ + /* _mesa_function_pool[32677]: GetListParameterivSGIX (dynamic) */ "iip\0" "glGetListParameterivSGIX\0" "\0" - /* _mesa_function_pool[32687]: BindBufferARB (will be remapped) */ + /* _mesa_function_pool[32707]: BindBufferARB (will be remapped) */ "ii\0" "glBindBuffer\0" "glBindBufferARB\0" "\0" - /* _mesa_function_pool[32720]: GetInfoLogARB (will be remapped) */ + /* _mesa_function_pool[32740]: GetInfoLogARB (will be remapped) */ "iipp\0" "glGetInfoLogARB\0" "\0" - /* _mesa_function_pool[32742]: RasterPos4iv (offset 83) */ + /* _mesa_function_pool[32762]: RasterPos4iv (offset 83) */ "p\0" "glRasterPos4iv\0" "\0" - /* _mesa_function_pool[32760]: Enable (offset 215) */ + /* _mesa_function_pool[32780]: Enable (offset 215) */ "i\0" "glEnable\0" "\0" - /* _mesa_function_pool[32772]: LineStipple (offset 167) */ + /* _mesa_function_pool[32792]: LineStipple (offset 167) */ "ii\0" "glLineStipple\0" "\0" - /* _mesa_function_pool[32790]: VertexAttribs4svNV (will be remapped) */ + /* _mesa_function_pool[32810]: VertexAttribs4svNV (will be remapped) */ "iip\0" "glVertexAttribs4svNV\0" "\0" - /* _mesa_function_pool[32816]: EdgeFlagPointerListIBM (dynamic) */ + /* _mesa_function_pool[32836]: EdgeFlagPointerListIBM (dynamic) */ "ipi\0" "glEdgeFlagPointerListIBM\0" "\0" - /* _mesa_function_pool[32846]: UniformMatrix3x2fv (will be remapped) */ + /* _mesa_function_pool[32866]: UniformMatrix3x2fv (will be remapped) */ "iiip\0" "glUniformMatrix3x2fv\0" "\0" - /* _mesa_function_pool[32873]: GetMinmaxParameterfv (offset 365) */ + /* _mesa_function_pool[32893]: GetMinmaxParameterfv (offset 365) */ "iip\0" "glGetMinmaxParameterfv\0" "glGetMinmaxParameterfvEXT\0" "\0" - /* _mesa_function_pool[32927]: VertexAttrib1fvARB (will be remapped) */ + /* _mesa_function_pool[32947]: VertexAttrib1fvARB (will be remapped) */ "ip\0" "glVertexAttrib1fv\0" "glVertexAttrib1fvARB\0" "\0" - /* _mesa_function_pool[32970]: GenBuffersARB (will be remapped) */ + /* _mesa_function_pool[32990]: GenBuffersARB (will be remapped) */ "ip\0" "glGenBuffers\0" "glGenBuffersARB\0" "\0" - /* _mesa_function_pool[33003]: VertexAttribs1svNV (will be remapped) */ + /* _mesa_function_pool[33023]: VertexAttribs1svNV (will be remapped) */ "iip\0" "glVertexAttribs1svNV\0" "\0" - /* _mesa_function_pool[33029]: Vertex3fv (offset 137) */ + /* _mesa_function_pool[33049]: Vertex3fv (offset 137) */ "p\0" "glVertex3fv\0" "\0" - /* _mesa_function_pool[33044]: GetTexBumpParameterivATI (will be remapped) */ + /* _mesa_function_pool[33064]: GetTexBumpParameterivATI (will be remapped) */ "ip\0" "glGetTexBumpParameterivATI\0" "\0" - /* _mesa_function_pool[33075]: Binormal3bEXT (dynamic) */ + /* _mesa_function_pool[33095]: Binormal3bEXT (dynamic) */ "iii\0" "glBinormal3bEXT\0" "\0" - /* _mesa_function_pool[33096]: FragmentMaterialivSGIX (dynamic) */ + /* _mesa_function_pool[33116]: FragmentMaterialivSGIX (dynamic) */ "iip\0" "glFragmentMaterialivSGIX\0" "\0" - /* _mesa_function_pool[33126]: IsRenderbufferEXT (will be remapped) */ + /* _mesa_function_pool[33146]: IsRenderbufferEXT (will be remapped) */ "i\0" "glIsRenderbuffer\0" "glIsRenderbufferEXT\0" "\0" - /* _mesa_function_pool[33166]: GenProgramsNV (will be remapped) */ + /* _mesa_function_pool[33186]: GenProgramsNV (will be remapped) */ "ip\0" "glGenProgramsARB\0" "glGenProgramsNV\0" "\0" - /* _mesa_function_pool[33203]: VertexAttrib4dvNV (will be remapped) */ + /* _mesa_function_pool[33223]: VertexAttrib4dvNV (will be remapped) */ "ip\0" "glVertexAttrib4dvNV\0" "\0" - /* _mesa_function_pool[33227]: EndFragmentShaderATI (will be remapped) */ + /* _mesa_function_pool[33247]: EndFragmentShaderATI (will be remapped) */ "\0" "glEndFragmentShaderATI\0" "\0" - /* _mesa_function_pool[33252]: Binormal3iEXT (dynamic) */ + /* _mesa_function_pool[33272]: Binormal3iEXT (dynamic) */ "iii\0" "glBinormal3iEXT\0" "\0" - /* _mesa_function_pool[33273]: WindowPos2fMESA (will be remapped) */ + /* _mesa_function_pool[33293]: WindowPos2fMESA (will be remapped) */ "ff\0" "glWindowPos2f\0" "glWindowPos2fARB\0" @@ -4787,601 +4791,602 @@ static const char _mesa_function_pool[] = /* these functions need to be remapped */ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { - { 1616, AttachShader_remap_index }, - { 9893, CreateProgram_remap_index }, - { 22964, CreateShader_remap_index }, - { 25451, DeleteProgram_remap_index }, - { 18608, DeleteShader_remap_index }, - { 23465, DetachShader_remap_index }, - { 17974, GetAttachedShaders_remap_index }, - { 4856, GetProgramInfoLog_remap_index }, - { 444, GetProgramiv_remap_index }, - { 6529, GetShaderInfoLog_remap_index }, - { 31140, GetShaderiv_remap_index }, - { 13387, IsProgram_remap_index }, - { 12308, IsShader_remap_index }, - { 10023, StencilFuncSeparate_remap_index }, - { 3960, StencilMaskSeparate_remap_index }, - { 7594, StencilOpSeparate_remap_index }, - { 22252, UniformMatrix2x3fv_remap_index }, - { 2886, UniformMatrix2x4fv_remap_index }, - { 32846, UniformMatrix3x2fv_remap_index }, - { 30462, UniformMatrix3x4fv_remap_index }, - { 16264, UniformMatrix4x2fv_remap_index }, - { 3302, UniformMatrix4x3fv_remap_index }, - { 5017, ClampColor_remap_index }, - { 18028, ClearBufferfi_remap_index }, - { 17470, ClearBufferfv_remap_index }, - { 29485, ClearBufferiv_remap_index }, - { 13592, ClearBufferuiv_remap_index }, - { 19891, GetStringi_remap_index }, - { 2827, TexBuffer_remap_index }, - { 977, FramebufferTexture_remap_index }, - { 26477, GetBufferParameteri64v_remap_index }, - { 10123, GetInteger64i_v_remap_index }, - { 23278, VertexAttribDivisor_remap_index }, - { 9911, LoadTransposeMatrixdARB_remap_index }, - { 30869, LoadTransposeMatrixfARB_remap_index }, - { 5637, MultTransposeMatrixdARB_remap_index }, - { 23652, MultTransposeMatrixfARB_remap_index }, - { 255, SampleCoverageARB_remap_index }, - { 5821, CompressedTexImage1DARB_remap_index }, - { 24180, CompressedTexImage2DARB_remap_index }, - { 4023, CompressedTexImage3DARB_remap_index }, - { 18325, CompressedTexSubImage1DARB_remap_index }, - { 2089, CompressedTexSubImage2DARB_remap_index }, - { 20313, CompressedTexSubImage3DARB_remap_index }, - { 28621, GetCompressedTexImageARB_remap_index }, - { 3868, DisableVertexAttribArrayARB_remap_index }, - { 30027, EnableVertexAttribArrayARB_remap_index }, - { 31944, GetProgramEnvParameterdvARB_remap_index }, - { 23532, GetProgramEnvParameterfvARB_remap_index }, - { 27506, GetProgramLocalParameterdvARB_remap_index }, - { 8036, GetProgramLocalParameterfvARB_remap_index }, - { 18459, GetProgramStringARB_remap_index }, - { 27701, GetProgramivARB_remap_index }, - { 20508, GetVertexAttribdvARB_remap_index }, - { 16072, GetVertexAttribfvARB_remap_index }, - { 9735, GetVertexAttribivARB_remap_index }, - { 19372, ProgramEnvParameter4dARB_remap_index }, - { 25201, ProgramEnvParameter4dvARB_remap_index }, - { 16792, ProgramEnvParameter4fARB_remap_index }, - { 8935, ProgramEnvParameter4fvARB_remap_index }, - { 3986, ProgramLocalParameter4dARB_remap_index }, - { 13097, ProgramLocalParameter4dvARB_remap_index }, - { 29506, ProgramLocalParameter4fARB_remap_index }, - { 25837, ProgramLocalParameter4fvARB_remap_index }, - { 28375, ProgramStringARB_remap_index }, - { 19622, VertexAttrib1dARB_remap_index }, - { 15726, VertexAttrib1dvARB_remap_index }, - { 4161, VertexAttrib1fARB_remap_index }, - { 32927, VertexAttrib1fvARB_remap_index }, - { 7120, VertexAttrib1sARB_remap_index }, - { 2263, VertexAttrib1svARB_remap_index }, - { 15157, VertexAttrib2dARB_remap_index }, - { 17491, VertexAttrib2dvARB_remap_index }, - { 1635, VertexAttrib2fARB_remap_index }, - { 17604, VertexAttrib2fvARB_remap_index }, - { 32553, VertexAttrib2sARB_remap_index }, - { 31581, VertexAttrib2svARB_remap_index }, - { 11274, VertexAttrib3dARB_remap_index }, - { 8602, VertexAttrib3dvARB_remap_index }, - { 1722, VertexAttrib3fARB_remap_index }, - { 22515, VertexAttrib3fvARB_remap_index }, - { 28222, VertexAttrib3sARB_remap_index }, - { 20250, VertexAttrib3svARB_remap_index }, - { 4882, VertexAttrib4NbvARB_remap_index }, - { 17851, VertexAttrib4NivARB_remap_index }, - { 22470, VertexAttrib4NsvARB_remap_index }, - { 23484, VertexAttrib4NubARB_remap_index }, - { 31827, VertexAttrib4NubvARB_remap_index }, - { 19033, VertexAttrib4NuivARB_remap_index }, - { 3175, VertexAttrib4NusvARB_remap_index }, - { 10863, VertexAttrib4bvARB_remap_index }, - { 26879, VertexAttrib4dARB_remap_index }, - { 21272, VertexAttrib4dvARB_remap_index }, - { 11428, VertexAttrib4fARB_remap_index }, - { 11832, VertexAttrib4fvARB_remap_index }, - { 10239, VertexAttrib4ivARB_remap_index }, - { 17284, VertexAttrib4sARB_remap_index }, - { 31055, VertexAttrib4svARB_remap_index }, - { 16597, VertexAttrib4ubvARB_remap_index }, - { 30351, VertexAttrib4uivARB_remap_index }, - { 20061, VertexAttrib4usvARB_remap_index }, - { 22067, VertexAttribPointerARB_remap_index }, - { 32687, BindBufferARB_remap_index }, - { 6827, BufferDataARB_remap_index }, - { 1537, BufferSubDataARB_remap_index }, - { 30632, DeleteBuffersARB_remap_index }, - { 32970, GenBuffersARB_remap_index }, - { 17647, GetBufferParameterivARB_remap_index }, - { 16744, GetBufferPointervARB_remap_index }, - { 1490, GetBufferSubDataARB_remap_index }, - { 30299, IsBufferARB_remap_index }, - { 26321, MapBufferARB_remap_index }, - { 31270, UnmapBufferARB_remap_index }, - { 351, BeginQueryARB_remap_index }, - { 19717, DeleteQueriesARB_remap_index }, - { 12159, EndQueryARB_remap_index }, - { 29100, GenQueriesARB_remap_index }, - { 1981, GetQueryObjectivARB_remap_index }, - { 17328, GetQueryObjectuivARB_remap_index }, - { 1779, GetQueryivARB_remap_index }, - { 19968, IsQueryARB_remap_index }, - { 8212, AttachObjectARB_remap_index }, - { 18570, CompileShaderARB_remap_index }, - { 3244, CreateProgramObjectARB_remap_index }, - { 6772, CreateShaderObjectARB_remap_index }, - { 14459, DeleteObjectARB_remap_index }, - { 23971, DetachObjectARB_remap_index }, - { 11904, GetActiveUniformARB_remap_index }, - { 9410, GetAttachedObjectsARB_remap_index }, - { 9717, GetHandleARB_remap_index }, - { 32720, GetInfoLogARB_remap_index }, - { 31898, GetObjectParameterfvARB_remap_index }, - { 27380, GetObjectParameterivARB_remap_index }, - { 28858, GetShaderSourceARB_remap_index }, - { 28082, GetUniformLocationARB_remap_index }, - { 23754, GetUniformfvARB_remap_index }, - { 12672, GetUniformivARB_remap_index }, - { 20106, LinkProgramARB_remap_index }, - { 20164, ShaderSourceARB_remap_index }, - { 7494, Uniform1fARB_remap_index }, - { 29715, Uniform1fvARB_remap_index }, - { 22036, Uniform1iARB_remap_index }, - { 20961, Uniform1ivARB_remap_index }, - { 2212, Uniform2fARB_remap_index }, - { 14295, Uniform2fvARB_remap_index }, - { 26208, Uniform2iARB_remap_index }, - { 2332, Uniform2ivARB_remap_index }, - { 18680, Uniform3fARB_remap_index }, - { 9440, Uniform3fvARB_remap_index }, - { 6383, Uniform3iARB_remap_index }, - { 16850, Uniform3ivARB_remap_index }, - { 19178, Uniform4fARB_remap_index }, - { 23618, Uniform4fvARB_remap_index }, - { 24880, Uniform4iARB_remap_index }, - { 20474, Uniform4ivARB_remap_index }, - { 8264, UniformMatrix2fvARB_remap_index }, + { 1577, AttachShader_remap_index }, + { 9906, CreateProgram_remap_index }, + { 23042, CreateShader_remap_index }, + { 25529, DeleteProgram_remap_index }, + { 18686, DeleteShader_remap_index }, + { 23543, DetachShader_remap_index }, + { 18052, GetAttachedShaders_remap_index }, + { 4869, GetProgramInfoLog_remap_index }, + { 405, GetProgramiv_remap_index }, + { 6542, GetShaderInfoLog_remap_index }, + { 31154, GetShaderiv_remap_index }, + { 13361, IsProgram_remap_index }, + { 12282, IsShader_remap_index }, + { 10036, StencilFuncSeparate_remap_index }, + { 3921, StencilMaskSeparate_remap_index }, + { 7607, StencilOpSeparate_remap_index }, + { 22330, UniformMatrix2x3fv_remap_index }, + { 2847, UniformMatrix2x4fv_remap_index }, + { 32866, UniformMatrix3x2fv_remap_index }, + { 30476, UniformMatrix3x4fv_remap_index }, + { 16309, UniformMatrix4x2fv_remap_index }, + { 3263, UniformMatrix4x3fv_remap_index }, + { 5030, ClampColor_remap_index }, + { 18106, ClearBufferfi_remap_index }, + { 17548, ClearBufferfv_remap_index }, + { 29499, ClearBufferiv_remap_index }, + { 13566, ClearBufferuiv_remap_index }, + { 19969, GetStringi_remap_index }, + { 2788, TexBuffer_remap_index }, + { 938, FramebufferTexture_remap_index }, + { 26555, GetBufferParameteri64v_remap_index }, + { 10136, GetInteger64i_v_remap_index }, + { 23356, VertexAttribDivisor_remap_index }, + { 9924, LoadTransposeMatrixdARB_remap_index }, + { 30883, LoadTransposeMatrixfARB_remap_index }, + { 5608, MultTransposeMatrixdARB_remap_index }, + { 23730, MultTransposeMatrixfARB_remap_index }, + { 216, SampleCoverageARB_remap_index }, + { 5834, CompressedTexImage1DARB_remap_index }, + { 24258, CompressedTexImage2DARB_remap_index }, + { 3984, CompressedTexImage3DARB_remap_index }, + { 18403, CompressedTexSubImage1DARB_remap_index }, + { 2050, CompressedTexSubImage2DARB_remap_index }, + { 20391, CompressedTexSubImage3DARB_remap_index }, + { 28635, GetCompressedTexImageARB_remap_index }, + { 3829, DisableVertexAttribArrayARB_remap_index }, + { 30041, EnableVertexAttribArrayARB_remap_index }, + { 31997, GetProgramEnvParameterdvARB_remap_index }, + { 23610, GetProgramEnvParameterfvARB_remap_index }, + { 27552, GetProgramLocalParameterdvARB_remap_index }, + { 8049, GetProgramLocalParameterfvARB_remap_index }, + { 18537, GetProgramStringARB_remap_index }, + { 27747, GetProgramivARB_remap_index }, + { 20586, GetVertexAttribdvARB_remap_index }, + { 16117, GetVertexAttribfvARB_remap_index }, + { 9748, GetVertexAttribivARB_remap_index }, + { 19450, ProgramEnvParameter4dARB_remap_index }, + { 25279, ProgramEnvParameter4dvARB_remap_index }, + { 16870, ProgramEnvParameter4fARB_remap_index }, + { 8948, ProgramEnvParameter4fvARB_remap_index }, + { 3947, ProgramLocalParameter4dARB_remap_index }, + { 13071, ProgramLocalParameter4dvARB_remap_index }, + { 29520, ProgramLocalParameter4fARB_remap_index }, + { 25915, ProgramLocalParameter4fvARB_remap_index }, + { 28389, ProgramStringARB_remap_index }, + { 19700, VertexAttrib1dARB_remap_index }, + { 15771, VertexAttrib1dvARB_remap_index }, + { 4122, VertexAttrib1fARB_remap_index }, + { 32947, VertexAttrib1fvARB_remap_index }, + { 7133, VertexAttrib1sARB_remap_index }, + { 2224, VertexAttrib1svARB_remap_index }, + { 15202, VertexAttrib2dARB_remap_index }, + { 17569, VertexAttrib2dvARB_remap_index }, + { 1596, VertexAttrib2fARB_remap_index }, + { 17682, VertexAttrib2fvARB_remap_index }, + { 32573, VertexAttrib2sARB_remap_index }, + { 31634, VertexAttrib2svARB_remap_index }, + { 11287, VertexAttrib3dARB_remap_index }, + { 8615, VertexAttrib3dvARB_remap_index }, + { 1683, VertexAttrib3fARB_remap_index }, + { 22593, VertexAttrib3fvARB_remap_index }, + { 28236, VertexAttrib3sARB_remap_index }, + { 20328, VertexAttrib3svARB_remap_index }, + { 4895, VertexAttrib4NbvARB_remap_index }, + { 17929, VertexAttrib4NivARB_remap_index }, + { 22548, VertexAttrib4NsvARB_remap_index }, + { 23562, VertexAttrib4NubARB_remap_index }, + { 31880, VertexAttrib4NubvARB_remap_index }, + { 19111, VertexAttrib4NuivARB_remap_index }, + { 3136, VertexAttrib4NusvARB_remap_index }, + { 10876, VertexAttrib4bvARB_remap_index }, + { 26925, VertexAttrib4dARB_remap_index }, + { 21350, VertexAttrib4dvARB_remap_index }, + { 11441, VertexAttrib4fARB_remap_index }, + { 11845, VertexAttrib4fvARB_remap_index }, + { 10252, VertexAttrib4ivARB_remap_index }, + { 17362, VertexAttrib4sARB_remap_index }, + { 31069, VertexAttrib4svARB_remap_index }, + { 16675, VertexAttrib4ubvARB_remap_index }, + { 30365, VertexAttrib4uivARB_remap_index }, + { 20139, VertexAttrib4usvARB_remap_index }, + { 22145, VertexAttribPointerARB_remap_index }, + { 32707, BindBufferARB_remap_index }, + { 6840, BufferDataARB_remap_index }, + { 1498, BufferSubDataARB_remap_index }, + { 30646, DeleteBuffersARB_remap_index }, + { 32990, GenBuffersARB_remap_index }, + { 17725, GetBufferParameterivARB_remap_index }, + { 16822, GetBufferPointervARB_remap_index }, + { 1451, GetBufferSubDataARB_remap_index }, + { 30313, IsBufferARB_remap_index }, + { 26399, MapBufferARB_remap_index }, + { 31284, UnmapBufferARB_remap_index }, + { 312, BeginQueryARB_remap_index }, + { 19795, DeleteQueriesARB_remap_index }, + { 12172, EndQueryARB_remap_index }, + { 29114, GenQueriesARB_remap_index }, + { 1942, GetQueryObjectivARB_remap_index }, + { 17406, GetQueryObjectuivARB_remap_index }, + { 1740, GetQueryivARB_remap_index }, + { 20046, IsQueryARB_remap_index }, + { 8225, AttachObjectARB_remap_index }, + { 18648, CompileShaderARB_remap_index }, + { 3205, CreateProgramObjectARB_remap_index }, + { 6785, CreateShaderObjectARB_remap_index }, + { 14504, DeleteObjectARB_remap_index }, + { 24049, DetachObjectARB_remap_index }, + { 11917, GetActiveUniformARB_remap_index }, + { 9423, GetAttachedObjectsARB_remap_index }, + { 9730, GetHandleARB_remap_index }, + { 32740, GetInfoLogARB_remap_index }, + { 31951, GetObjectParameterfvARB_remap_index }, + { 27426, GetObjectParameterivARB_remap_index }, + { 28872, GetShaderSourceARB_remap_index }, + { 28096, GetUniformLocationARB_remap_index }, + { 23832, GetUniformfvARB_remap_index }, + { 12646, GetUniformivARB_remap_index }, + { 20184, LinkProgramARB_remap_index }, + { 20242, ShaderSourceARB_remap_index }, + { 7507, Uniform1fARB_remap_index }, + { 29729, Uniform1fvARB_remap_index }, + { 22114, Uniform1iARB_remap_index }, + { 21039, Uniform1ivARB_remap_index }, + { 2173, Uniform2fARB_remap_index }, + { 14340, Uniform2fvARB_remap_index }, + { 26286, Uniform2iARB_remap_index }, + { 2293, Uniform2ivARB_remap_index }, + { 18758, Uniform3fARB_remap_index }, + { 9453, Uniform3fvARB_remap_index }, + { 6396, Uniform3iARB_remap_index }, + { 16928, Uniform3ivARB_remap_index }, + { 19256, Uniform4fARB_remap_index }, + { 23696, Uniform4fvARB_remap_index }, + { 24958, Uniform4iARB_remap_index }, + { 20552, Uniform4ivARB_remap_index }, + { 8277, UniformMatrix2fvARB_remap_index }, { 17, UniformMatrix3fvARB_remap_index }, - { 2729, UniformMatrix4fvARB_remap_index }, - { 25313, UseProgramObjectARB_remap_index }, - { 14845, ValidateProgramARB_remap_index }, - { 21315, BindAttribLocationARB_remap_index }, - { 4927, GetActiveAttribARB_remap_index }, - { 16531, GetAttribLocationARB_remap_index }, - { 29433, DrawBuffersARB_remap_index }, - { 29296, ClampColorARB_remap_index }, - { 17896, DrawArraysInstancedARB_remap_index }, - { 6444, DrawElementsInstancedARB_remap_index }, - { 13202, RenderbufferStorageMultisample_remap_index }, - { 13673, FramebufferTextureARB_remap_index }, - { 25739, FramebufferTextureFaceARB_remap_index }, - { 24120, ProgramParameteriARB_remap_index }, - { 23436, VertexAttribDivisorARB_remap_index }, - { 19226, FlushMappedBufferRange_remap_index }, - { 27797, MapBufferRange_remap_index }, - { 16375, BindVertexArray_remap_index }, - { 14668, GenVertexArrays_remap_index }, - { 30229, CopyBufferSubData_remap_index }, - { 31159, ClientWaitSync_remap_index }, - { 2648, DeleteSync_remap_index }, - { 7161, FenceSync_remap_index }, - { 15216, GetInteger64v_remap_index }, - { 22577, GetSynciv_remap_index }, - { 29372, IsSync_remap_index }, - { 9358, WaitSync_remap_index }, - { 3836, DrawElementsBaseVertex_remap_index }, - { 30564, DrawRangeElementsBaseVertex_remap_index }, - { 26352, MultiDrawElementsBaseVertex_remap_index }, - { 32103, BlendEquationSeparateiARB_remap_index }, - { 17740, BlendEquationiARB_remap_index }, - { 12641, BlendFuncSeparateiARB_remap_index }, - { 9783, BlendFunciARB_remap_index }, - { 5078, BindTransformFeedback_remap_index }, - { 3271, DeleteTransformFeedbacks_remap_index }, - { 6416, DrawTransformFeedback_remap_index }, - { 9577, GenTransformFeedbacks_remap_index }, - { 28265, IsTransformFeedback_remap_index }, - { 25932, PauseTransformFeedback_remap_index }, - { 5557, ResumeTransformFeedback_remap_index }, - { 21635, ClearDepthf_remap_index }, - { 6720, DepthRangef_remap_index }, - { 14480, GetShaderPrecisionFormat_remap_index }, - { 9963, ReleaseShaderCompiler_remap_index }, - { 10906, ShaderBinary_remap_index }, - { 5425, PolygonOffsetEXT_remap_index }, - { 23199, GetPixelTexGenParameterfvSGIS_remap_index }, - { 4404, GetPixelTexGenParameterivSGIS_remap_index }, - { 22932, PixelTexGenParameterfSGIS_remap_index }, - { 663, PixelTexGenParameterfvSGIS_remap_index }, - { 12710, PixelTexGenParameteriSGIS_remap_index }, - { 13815, PixelTexGenParameterivSGIS_remap_index }, - { 18224, SampleMaskSGIS_remap_index }, - { 19908, SamplePatternSGIS_remap_index }, - { 26281, ColorPointerEXT_remap_index }, - { 17534, EdgeFlagPointerEXT_remap_index }, - { 6037, IndexPointerEXT_remap_index }, - { 6117, NormalPointerEXT_remap_index }, - { 15810, TexCoordPointerEXT_remap_index }, - { 6950, VertexPointerEXT_remap_index }, - { 3638, PointParameterfEXT_remap_index }, - { 7801, PointParameterfvEXT_remap_index }, - { 31996, LockArraysEXT_remap_index }, - { 14909, UnlockArraysEXT_remap_index }, - { 1306, SecondaryColor3bEXT_remap_index }, - { 7960, SecondaryColor3bvEXT_remap_index }, - { 10416, SecondaryColor3dEXT_remap_index }, - { 25509, SecondaryColor3dvEXT_remap_index }, - { 28131, SecondaryColor3fEXT_remap_index }, - { 18261, SecondaryColor3fvEXT_remap_index }, - { 509, SecondaryColor3iEXT_remap_index }, - { 16120, SecondaryColor3ivEXT_remap_index }, - { 10051, SecondaryColor3sEXT_remap_index }, - { 30823, SecondaryColor3svEXT_remap_index }, - { 27216, SecondaryColor3ubEXT_remap_index }, - { 21206, SecondaryColor3ubvEXT_remap_index }, - { 12952, SecondaryColor3uiEXT_remap_index }, - { 22819, SecondaryColor3uivEXT_remap_index }, - { 25789, SecondaryColor3usEXT_remap_index }, - { 13025, SecondaryColor3usvEXT_remap_index }, - { 11775, SecondaryColorPointerEXT_remap_index }, - { 25603, MultiDrawArraysEXT_remap_index }, - { 20896, MultiDrawElementsEXT_remap_index }, - { 21091, FogCoordPointerEXT_remap_index }, - { 4553, FogCoorddEXT_remap_index }, - { 31397, FogCoorddvEXT_remap_index }, - { 4670, FogCoordfEXT_remap_index }, - { 27139, FogCoordfvEXT_remap_index }, - { 19130, PixelTexGenSGIX_remap_index }, - { 27724, BlendFuncSeparateEXT_remap_index }, - { 6862, FlushVertexArrayRangeNV_remap_index }, - { 5374, VertexArrayRangeNV_remap_index }, - { 28196, CombinerInputNV_remap_index }, - { 2155, CombinerOutputNV_remap_index }, - { 30976, CombinerParameterfNV_remap_index }, - { 5248, CombinerParameterfvNV_remap_index }, - { 22301, CombinerParameteriNV_remap_index }, - { 32445, CombinerParameterivNV_remap_index }, - { 7238, FinalCombinerInputNV_remap_index }, - { 9804, GetCombinerInputParameterfvNV_remap_index }, - { 32282, GetCombinerInputParameterivNV_remap_index }, - { 216, GetCombinerOutputParameterfvNV_remap_index }, - { 13776, GetCombinerOutputParameterivNV_remap_index }, - { 6624, GetFinalCombinerInputParameterfvNV_remap_index }, - { 24752, GetFinalCombinerInputParameterivNV_remap_index }, - { 12619, ResizeBuffersMESA_remap_index }, - { 11101, WindowPos2dMESA_remap_index }, - { 1099, WindowPos2dvMESA_remap_index }, - { 33273, WindowPos2fMESA_remap_index }, - { 7905, WindowPos2fvMESA_remap_index }, - { 18171, WindowPos2iMESA_remap_index }, - { 20381, WindowPos2ivMESA_remap_index }, - { 20995, WindowPos2sMESA_remap_index }, - { 5735, WindowPos2svMESA_remap_index }, - { 7730, WindowPos3dMESA_remap_index }, - { 14023, WindowPos3dvMESA_remap_index }, - { 555, WindowPos3fMESA_remap_index }, - { 14970, WindowPos3fvMESA_remap_index }, - { 24013, WindowPos3iMESA_remap_index }, - { 30174, WindowPos3ivMESA_remap_index }, - { 18825, WindowPos3sMESA_remap_index }, - { 31653, WindowPos3svMESA_remap_index }, - { 11052, WindowPos4dMESA_remap_index }, - { 16988, WindowPos4dvMESA_remap_index }, - { 13982, WindowPos4fMESA_remap_index }, - { 30730, WindowPos4fvMESA_remap_index }, - { 30327, WindowPos4iMESA_remap_index }, - { 12422, WindowPos4ivMESA_remap_index }, - { 19009, WindowPos4sMESA_remap_index }, - { 3222, WindowPos4svMESA_remap_index }, - { 26847, MultiModeDrawArraysIBM_remap_index }, - { 28971, MultiModeDrawElementsIBM_remap_index }, - { 12187, DeleteFencesNV_remap_index }, - { 28043, FinishFenceNV_remap_index }, - { 3760, GenFencesNV_remap_index }, - { 16968, GetFenceivNV_remap_index }, - { 8197, IsFenceNV_remap_index }, - { 13703, SetFenceNV_remap_index }, - { 4217, TestFenceNV_remap_index }, - { 31624, AreProgramsResidentNV_remap_index }, - { 31018, BindProgramNV_remap_index }, - { 25872, DeleteProgramsNV_remap_index }, - { 21424, ExecuteProgramNV_remap_index }, - { 33166, GenProgramsNV_remap_index }, - { 23304, GetProgramParameterdvNV_remap_index }, - { 10478, GetProgramParameterfvNV_remap_index }, - { 26255, GetProgramStringNV_remap_index }, - { 24390, GetProgramivNV_remap_index }, - { 23567, GetTrackMatrixivNV_remap_index }, - { 26049, GetVertexAttribPointervNV_remap_index }, - { 24685, GetVertexAttribdvNV_remap_index }, - { 9253, GetVertexAttribfvNV_remap_index }, - { 18432, GetVertexAttribivNV_remap_index }, - { 19256, IsProgramNV_remap_index }, - { 9336, LoadProgramNV_remap_index }, - { 27820, ProgramParameters4dvNV_remap_index }, - { 24320, ProgramParameters4fvNV_remap_index }, - { 20685, RequestResidentProgramsNV_remap_index }, - { 22279, TrackMatrixNV_remap_index }, - { 32259, VertexAttrib1dNV_remap_index }, - { 13614, VertexAttrib1dvNV_remap_index }, - { 28477, VertexAttrib1fNV_remap_index }, - { 2454, VertexAttrib1fvNV_remap_index }, - { 30787, VertexAttrib1sNV_remap_index }, - { 15043, VertexAttrib1svNV_remap_index }, - { 4832, VertexAttrib2dNV_remap_index }, - { 13507, VertexAttrib2dvNV_remap_index }, - { 20140, VertexAttrib2fNV_remap_index }, - { 13073, VertexAttrib2fvNV_remap_index }, - { 5947, VertexAttrib2sNV_remap_index }, - { 18879, VertexAttrib2svNV_remap_index }, - { 11249, VertexAttrib3dNV_remap_index }, - { 31874, VertexAttrib3dvNV_remap_index }, - { 10290, VertexAttrib3fNV_remap_index }, - { 24712, VertexAttrib3fvNV_remap_index }, - { 22122, VertexAttrib3sNV_remap_index }, - { 23594, VertexAttrib3svNV_remap_index }, - { 28945, VertexAttrib4dNV_remap_index }, - { 33203, VertexAttrib4dvNV_remap_index }, - { 4454, VertexAttrib4fNV_remap_index }, - { 9386, VertexAttrib4fvNV_remap_index }, - { 26731, VertexAttrib4sNV_remap_index }, - { 1448, VertexAttrib4svNV_remap_index }, - { 4990, VertexAttrib4ubNV_remap_index }, - { 817, VertexAttrib4ubvNV_remap_index }, - { 21604, VertexAttribPointerNV_remap_index }, - { 2306, VertexAttribs1dvNV_remap_index }, - { 26137, VertexAttribs1fvNV_remap_index }, - { 33003, VertexAttribs1svNV_remap_index }, - { 10315, VertexAttribs2dvNV_remap_index }, - { 25274, VertexAttribs2fvNV_remap_index }, - { 17560, VertexAttribs2svNV_remap_index }, - { 5276, VertexAttribs3dvNV_remap_index }, - { 2186, VertexAttribs3fvNV_remap_index }, - { 29922, VertexAttribs3svNV_remap_index }, - { 26821, VertexAttribs4dvNV_remap_index }, - { 5348, VertexAttribs4fvNV_remap_index }, - { 32790, VertexAttribs4svNV_remap_index }, - { 29670, VertexAttribs4ubvNV_remap_index }, - { 26923, GetTexBumpParameterfvATI_remap_index }, - { 33044, GetTexBumpParameterivATI_remap_index }, - { 18542, TexBumpParameterfvATI_remap_index }, - { 20556, TexBumpParameterivATI_remap_index }, - { 15589, AlphaFragmentOp1ATI_remap_index }, - { 25555, AlphaFragmentOp2ATI_remap_index }, - { 24628, AlphaFragmentOp3ATI_remap_index }, - { 29849, BeginFragmentShaderATI_remap_index }, - { 31217, BindFragmentShaderATI_remap_index }, - { 23723, ColorFragmentOp1ATI_remap_index }, - { 4332, ColorFragmentOp2ATI_remap_index }, - { 31519, ColorFragmentOp3ATI_remap_index }, - { 5514, DeleteFragmentShaderATI_remap_index }, - { 33227, EndFragmentShaderATI_remap_index }, - { 32473, GenFragmentShadersATI_remap_index }, - { 25428, PassTexCoordATI_remap_index }, - { 6930, SampleMapATI_remap_index }, - { 27034, SetFragmentShaderConstantATI_remap_index }, - { 402, PointParameteriNV_remap_index }, - { 14184, PointParameterivNV_remap_index }, - { 28784, ActiveStencilFaceEXT_remap_index }, - { 27480, BindVertexArrayAPPLE_remap_index }, - { 2776, DeleteVertexArraysAPPLE_remap_index }, - { 18001, GenVertexArraysAPPLE_remap_index }, - { 23369, IsVertexArrayAPPLE_remap_index }, - { 858, GetProgramNamedParameterdvNV_remap_index }, - { 3601, GetProgramNamedParameterfvNV_remap_index }, - { 26954, ProgramNamedParameter4dNV_remap_index }, - { 14543, ProgramNamedParameter4dvNV_remap_index }, - { 8869, ProgramNamedParameter4fNV_remap_index }, - { 11740, ProgramNamedParameter4fvNV_remap_index }, - { 16899, PrimitiveRestartIndexNV_remap_index }, - { 30707, PrimitiveRestartNV_remap_index }, - { 24299, DepthBoundsEXT_remap_index }, - { 1198, BlendEquationSeparateEXT_remap_index }, - { 14744, BindFramebufferEXT_remap_index }, - { 25648, BindRenderbufferEXT_remap_index }, - { 9633, CheckFramebufferStatusEXT_remap_index }, - { 22620, DeleteFramebuffersEXT_remap_index }, - { 31776, DeleteRenderbuffersEXT_remap_index }, - { 13531, FramebufferRenderbufferEXT_remap_index }, - { 13720, FramebufferTexture1DEXT_remap_index }, - { 11534, FramebufferTexture2DEXT_remap_index }, - { 11154, FramebufferTexture3DEXT_remap_index }, - { 23235, GenFramebuffersEXT_remap_index }, - { 17425, GenRenderbuffersEXT_remap_index }, - { 6666, GenerateMipmapEXT_remap_index }, - { 21697, GetFramebufferAttachmentParameterivEXT_remap_index }, - { 32379, GetRenderbufferParameterivEXT_remap_index }, - { 20436, IsFramebufferEXT_remap_index }, - { 33126, IsRenderbufferEXT_remap_index }, - { 8144, RenderbufferStorageEXT_remap_index }, - { 734, BlitFramebufferEXT_remap_index }, - { 14329, BufferParameteriAPPLE_remap_index }, - { 19288, FlushMappedBufferRangeAPPLE_remap_index }, - { 1854, BindFragDataLocationEXT_remap_index }, - { 24412, GetFragDataLocationEXT_remap_index }, - { 10593, GetUniformuivEXT_remap_index }, - { 2972, GetVertexAttribIivEXT_remap_index }, - { 27991, GetVertexAttribIuivEXT_remap_index }, - { 12020, Uniform1uiEXT_remap_index }, - { 27905, Uniform1uivEXT_remap_index }, - { 22218, Uniform2uiEXT_remap_index }, - { 4296, Uniform2uivEXT_remap_index }, - { 29224, Uniform3uiEXT_remap_index }, - { 14690, Uniform3uivEXT_remap_index }, - { 3525, Uniform4uiEXT_remap_index }, - { 8645, Uniform4uivEXT_remap_index }, - { 18389, VertexAttribI1iEXT_remap_index }, - { 1004, VertexAttribI1ivEXT_remap_index }, - { 2555, VertexAttribI1uiEXT_remap_index }, - { 12801, VertexAttribI1uivEXT_remap_index }, + { 2690, UniformMatrix4fvARB_remap_index }, + { 25391, UseProgramObjectARB_remap_index }, + { 14890, ValidateProgramARB_remap_index }, + { 21393, BindAttribLocationARB_remap_index }, + { 4940, GetActiveAttribARB_remap_index }, + { 16576, GetAttribLocationARB_remap_index }, + { 29447, DrawBuffersARB_remap_index }, + { 29310, ClampColorARB_remap_index }, + { 17974, DrawArraysInstancedARB_remap_index }, + { 6457, DrawElementsInstancedARB_remap_index }, + { 13176, RenderbufferStorageMultisample_remap_index }, + { 13647, FramebufferTextureARB_remap_index }, + { 25817, FramebufferTextureFaceARB_remap_index }, + { 24198, ProgramParameteriARB_remap_index }, + { 23514, VertexAttribDivisorARB_remap_index }, + { 19304, FlushMappedBufferRange_remap_index }, + { 27863, MapBufferRange_remap_index }, + { 27770, TexBufferARB_remap_index }, + { 16420, BindVertexArray_remap_index }, + { 14713, GenVertexArrays_remap_index }, + { 30243, CopyBufferSubData_remap_index }, + { 31173, ClientWaitSync_remap_index }, + { 2609, DeleteSync_remap_index }, + { 7174, FenceSync_remap_index }, + { 15261, GetInteger64v_remap_index }, + { 22655, GetSynciv_remap_index }, + { 29386, IsSync_remap_index }, + { 9371, WaitSync_remap_index }, + { 3797, DrawElementsBaseVertex_remap_index }, + { 30578, DrawRangeElementsBaseVertex_remap_index }, + { 26430, MultiDrawElementsBaseVertex_remap_index }, + { 16642, BlendEquationSeparateiARB_remap_index }, + { 17818, BlendEquationiARB_remap_index }, + { 12615, BlendFuncSeparateiARB_remap_index }, + { 9796, BlendFunciARB_remap_index }, + { 5091, BindTransformFeedback_remap_index }, + { 3232, DeleteTransformFeedbacks_remap_index }, + { 6429, DrawTransformFeedback_remap_index }, + { 9590, GenTransformFeedbacks_remap_index }, + { 28279, IsTransformFeedback_remap_index }, + { 26010, PauseTransformFeedback_remap_index }, + { 5528, ResumeTransformFeedback_remap_index }, + { 21713, ClearDepthf_remap_index }, + { 6733, DepthRangef_remap_index }, + { 14525, GetShaderPrecisionFormat_remap_index }, + { 9976, ReleaseShaderCompiler_remap_index }, + { 10919, ShaderBinary_remap_index }, + { 5396, PolygonOffsetEXT_remap_index }, + { 23277, GetPixelTexGenParameterfvSGIS_remap_index }, + { 4417, GetPixelTexGenParameterivSGIS_remap_index }, + { 23010, PixelTexGenParameterfSGIS_remap_index }, + { 624, PixelTexGenParameterfvSGIS_remap_index }, + { 12684, PixelTexGenParameteriSGIS_remap_index }, + { 13821, PixelTexGenParameterivSGIS_remap_index }, + { 18302, SampleMaskSGIS_remap_index }, + { 19986, SamplePatternSGIS_remap_index }, + { 26359, ColorPointerEXT_remap_index }, + { 17612, EdgeFlagPointerEXT_remap_index }, + { 6050, IndexPointerEXT_remap_index }, + { 6130, NormalPointerEXT_remap_index }, + { 15855, TexCoordPointerEXT_remap_index }, + { 6963, VertexPointerEXT_remap_index }, + { 3599, PointParameterfEXT_remap_index }, + { 7814, PointParameterfvEXT_remap_index }, + { 32049, LockArraysEXT_remap_index }, + { 14954, UnlockArraysEXT_remap_index }, + { 1267, SecondaryColor3bEXT_remap_index }, + { 7973, SecondaryColor3bvEXT_remap_index }, + { 10429, SecondaryColor3dEXT_remap_index }, + { 25587, SecondaryColor3dvEXT_remap_index }, + { 28145, SecondaryColor3fEXT_remap_index }, + { 18339, SecondaryColor3fvEXT_remap_index }, + { 470, SecondaryColor3iEXT_remap_index }, + { 16165, SecondaryColor3ivEXT_remap_index }, + { 10064, SecondaryColor3sEXT_remap_index }, + { 30837, SecondaryColor3svEXT_remap_index }, + { 27262, SecondaryColor3ubEXT_remap_index }, + { 21284, SecondaryColor3ubvEXT_remap_index }, + { 12926, SecondaryColor3uiEXT_remap_index }, + { 22897, SecondaryColor3uivEXT_remap_index }, + { 25867, SecondaryColor3usEXT_remap_index }, + { 12999, SecondaryColor3usvEXT_remap_index }, + { 11788, SecondaryColorPointerEXT_remap_index }, + { 25681, MultiDrawArraysEXT_remap_index }, + { 20974, MultiDrawElementsEXT_remap_index }, + { 21169, FogCoordPointerEXT_remap_index }, + { 4566, FogCoorddEXT_remap_index }, + { 31450, FogCoorddvEXT_remap_index }, + { 4683, FogCoordfEXT_remap_index }, + { 27185, FogCoordfvEXT_remap_index }, + { 19208, PixelTexGenSGIX_remap_index }, + { 27790, BlendFuncSeparateEXT_remap_index }, + { 6875, FlushVertexArrayRangeNV_remap_index }, + { 5345, VertexArrayRangeNV_remap_index }, + { 28210, CombinerInputNV_remap_index }, + { 2116, CombinerOutputNV_remap_index }, + { 30990, CombinerParameterfNV_remap_index }, + { 5219, CombinerParameterfvNV_remap_index }, + { 22379, CombinerParameteriNV_remap_index }, + { 32465, CombinerParameterivNV_remap_index }, + { 7251, FinalCombinerInputNV_remap_index }, + { 9817, GetCombinerInputParameterfvNV_remap_index }, + { 32302, GetCombinerInputParameterivNV_remap_index }, + { 13922, GetCombinerOutputParameterfvNV_remap_index }, + { 13750, GetCombinerOutputParameterivNV_remap_index }, + { 6637, GetFinalCombinerInputParameterfvNV_remap_index }, + { 24830, GetFinalCombinerInputParameterivNV_remap_index }, + { 12593, ResizeBuffersMESA_remap_index }, + { 11114, WindowPos2dMESA_remap_index }, + { 1060, WindowPos2dvMESA_remap_index }, + { 33293, WindowPos2fMESA_remap_index }, + { 7918, WindowPos2fvMESA_remap_index }, + { 18249, WindowPos2iMESA_remap_index }, + { 20459, WindowPos2ivMESA_remap_index }, + { 21073, WindowPos2sMESA_remap_index }, + { 5748, WindowPos2svMESA_remap_index }, + { 7743, WindowPos3dMESA_remap_index }, + { 14068, WindowPos3dvMESA_remap_index }, + { 516, WindowPos3fMESA_remap_index }, + { 15015, WindowPos3fvMESA_remap_index }, + { 24091, WindowPos3iMESA_remap_index }, + { 30188, WindowPos3ivMESA_remap_index }, + { 18903, WindowPos3sMESA_remap_index }, + { 31706, WindowPos3svMESA_remap_index }, + { 11065, WindowPos4dMESA_remap_index }, + { 17066, WindowPos4dvMESA_remap_index }, + { 14027, WindowPos4fMESA_remap_index }, + { 30744, WindowPos4fvMESA_remap_index }, + { 30341, WindowPos4iMESA_remap_index }, + { 12396, WindowPos4ivMESA_remap_index }, + { 19087, WindowPos4sMESA_remap_index }, + { 3183, WindowPos4svMESA_remap_index }, + { 13789, MultiModeDrawArraysIBM_remap_index }, + { 28985, MultiModeDrawElementsIBM_remap_index }, + { 12200, DeleteFencesNV_remap_index }, + { 28057, FinishFenceNV_remap_index }, + { 3721, GenFencesNV_remap_index }, + { 17046, GetFenceivNV_remap_index }, + { 8210, IsFenceNV_remap_index }, + { 13677, SetFenceNV_remap_index }, + { 4178, TestFenceNV_remap_index }, + { 31677, AreProgramsResidentNV_remap_index }, + { 31032, BindProgramNV_remap_index }, + { 25950, DeleteProgramsNV_remap_index }, + { 21502, ExecuteProgramNV_remap_index }, + { 33186, GenProgramsNV_remap_index }, + { 23382, GetProgramParameterdvNV_remap_index }, + { 10491, GetProgramParameterfvNV_remap_index }, + { 26333, GetProgramStringNV_remap_index }, + { 24468, GetProgramivNV_remap_index }, + { 23645, GetTrackMatrixivNV_remap_index }, + { 26127, GetVertexAttribPointervNV_remap_index }, + { 24763, GetVertexAttribdvNV_remap_index }, + { 9266, GetVertexAttribfvNV_remap_index }, + { 18510, GetVertexAttribivNV_remap_index }, + { 19334, IsProgramNV_remap_index }, + { 9349, LoadProgramNV_remap_index }, + { 27886, ProgramParameters4dvNV_remap_index }, + { 24398, ProgramParameters4fvNV_remap_index }, + { 20763, RequestResidentProgramsNV_remap_index }, + { 22357, TrackMatrixNV_remap_index }, + { 32279, VertexAttrib1dNV_remap_index }, + { 13588, VertexAttrib1dvNV_remap_index }, + { 28491, VertexAttrib1fNV_remap_index }, + { 2415, VertexAttrib1fvNV_remap_index }, + { 30801, VertexAttrib1sNV_remap_index }, + { 15088, VertexAttrib1svNV_remap_index }, + { 4845, VertexAttrib2dNV_remap_index }, + { 13481, VertexAttrib2dvNV_remap_index }, + { 20218, VertexAttrib2fNV_remap_index }, + { 13047, VertexAttrib2fvNV_remap_index }, + { 5960, VertexAttrib2sNV_remap_index }, + { 18957, VertexAttrib2svNV_remap_index }, + { 11262, VertexAttrib3dNV_remap_index }, + { 31927, VertexAttrib3dvNV_remap_index }, + { 10303, VertexAttrib3fNV_remap_index }, + { 24790, VertexAttrib3fvNV_remap_index }, + { 22200, VertexAttrib3sNV_remap_index }, + { 23672, VertexAttrib3svNV_remap_index }, + { 28959, VertexAttrib4dNV_remap_index }, + { 33223, VertexAttrib4dvNV_remap_index }, + { 4467, VertexAttrib4fNV_remap_index }, + { 9399, VertexAttrib4fvNV_remap_index }, + { 26809, VertexAttrib4sNV_remap_index }, + { 1409, VertexAttrib4svNV_remap_index }, + { 5003, VertexAttrib4ubNV_remap_index }, + { 778, VertexAttrib4ubvNV_remap_index }, + { 21682, VertexAttribPointerNV_remap_index }, + { 2267, VertexAttribs1dvNV_remap_index }, + { 26215, VertexAttribs1fvNV_remap_index }, + { 33023, VertexAttribs1svNV_remap_index }, + { 10328, VertexAttribs2dvNV_remap_index }, + { 25352, VertexAttribs2fvNV_remap_index }, + { 17638, VertexAttribs2svNV_remap_index }, + { 5247, VertexAttribs3dvNV_remap_index }, + { 2147, VertexAttribs3fvNV_remap_index }, + { 29936, VertexAttribs3svNV_remap_index }, + { 26899, VertexAttribs4dvNV_remap_index }, + { 5319, VertexAttribs4fvNV_remap_index }, + { 32810, VertexAttribs4svNV_remap_index }, + { 29684, VertexAttribs4ubvNV_remap_index }, + { 26969, GetTexBumpParameterfvATI_remap_index }, + { 33064, GetTexBumpParameterivATI_remap_index }, + { 18620, TexBumpParameterfvATI_remap_index }, + { 20634, TexBumpParameterivATI_remap_index }, + { 15634, AlphaFragmentOp1ATI_remap_index }, + { 25633, AlphaFragmentOp2ATI_remap_index }, + { 24706, AlphaFragmentOp3ATI_remap_index }, + { 29863, BeginFragmentShaderATI_remap_index }, + { 31231, BindFragmentShaderATI_remap_index }, + { 23801, ColorFragmentOp1ATI_remap_index }, + { 4345, ColorFragmentOp2ATI_remap_index }, + { 31572, ColorFragmentOp3ATI_remap_index }, + { 5485, DeleteFragmentShaderATI_remap_index }, + { 33247, EndFragmentShaderATI_remap_index }, + { 32493, GenFragmentShadersATI_remap_index }, + { 25506, PassTexCoordATI_remap_index }, + { 6943, SampleMapATI_remap_index }, + { 27080, SetFragmentShaderConstantATI_remap_index }, + { 363, PointParameteriNV_remap_index }, + { 14229, PointParameterivNV_remap_index }, + { 28798, ActiveStencilFaceEXT_remap_index }, + { 27526, BindVertexArrayAPPLE_remap_index }, + { 2737, DeleteVertexArraysAPPLE_remap_index }, + { 18079, GenVertexArraysAPPLE_remap_index }, + { 23447, IsVertexArrayAPPLE_remap_index }, + { 819, GetProgramNamedParameterdvNV_remap_index }, + { 3562, GetProgramNamedParameterfvNV_remap_index }, + { 27000, ProgramNamedParameter4dNV_remap_index }, + { 14588, ProgramNamedParameter4dvNV_remap_index }, + { 8882, ProgramNamedParameter4fNV_remap_index }, + { 11753, ProgramNamedParameter4fvNV_remap_index }, + { 16977, PrimitiveRestartIndexNV_remap_index }, + { 30721, PrimitiveRestartNV_remap_index }, + { 24377, DepthBoundsEXT_remap_index }, + { 1159, BlendEquationSeparateEXT_remap_index }, + { 14789, BindFramebufferEXT_remap_index }, + { 25726, BindRenderbufferEXT_remap_index }, + { 9646, CheckFramebufferStatusEXT_remap_index }, + { 22698, DeleteFramebuffersEXT_remap_index }, + { 31829, DeleteRenderbuffersEXT_remap_index }, + { 13505, FramebufferRenderbufferEXT_remap_index }, + { 13694, FramebufferTexture1DEXT_remap_index }, + { 11547, FramebufferTexture2DEXT_remap_index }, + { 11167, FramebufferTexture3DEXT_remap_index }, + { 23313, GenFramebuffersEXT_remap_index }, + { 17503, GenRenderbuffersEXT_remap_index }, + { 6679, GenerateMipmapEXT_remap_index }, + { 21775, GetFramebufferAttachmentParameterivEXT_remap_index }, + { 32399, GetRenderbufferParameterivEXT_remap_index }, + { 20514, IsFramebufferEXT_remap_index }, + { 33146, IsRenderbufferEXT_remap_index }, + { 8157, RenderbufferStorageEXT_remap_index }, + { 695, BlitFramebufferEXT_remap_index }, + { 14374, BufferParameteriAPPLE_remap_index }, + { 19366, FlushMappedBufferRangeAPPLE_remap_index }, + { 1815, BindFragDataLocationEXT_remap_index }, + { 24490, GetFragDataLocationEXT_remap_index }, + { 10606, GetUniformuivEXT_remap_index }, + { 2933, GetVertexAttribIivEXT_remap_index }, + { 4195, GetVertexAttribIuivEXT_remap_index }, + { 12033, Uniform1uiEXT_remap_index }, + { 27971, Uniform1uivEXT_remap_index }, + { 22296, Uniform2uiEXT_remap_index }, + { 4309, Uniform2uivEXT_remap_index }, + { 29238, Uniform3uiEXT_remap_index }, + { 14735, Uniform3uivEXT_remap_index }, + { 3486, Uniform4uiEXT_remap_index }, + { 8658, Uniform4uivEXT_remap_index }, + { 18467, VertexAttribI1iEXT_remap_index }, + { 965, VertexAttribI1ivEXT_remap_index }, + { 2516, VertexAttribI1uiEXT_remap_index }, + { 12775, VertexAttribI1uivEXT_remap_index }, { 81, VertexAttribI2iEXT_remap_index }, - { 23835, VertexAttribI2ivEXT_remap_index }, - { 5302, VertexAttribI2uiEXT_remap_index }, - { 4715, VertexAttribI2uivEXT_remap_index }, - { 26523, VertexAttribI3iEXT_remap_index }, - { 30519, VertexAttribI3ivEXT_remap_index }, - { 3379, VertexAttribI3uiEXT_remap_index }, - { 30415, VertexAttribI3uivEXT_remap_index }, - { 21948, VertexAttribI4bvEXT_remap_index }, - { 14622, VertexAttribI4iEXT_remap_index }, - { 32045, VertexAttribI4ivEXT_remap_index }, - { 13434, VertexAttribI4svEXT_remap_index }, - { 16484, VertexAttribI4ubvEXT_remap_index }, - { 16183, VertexAttribI4uiEXT_remap_index }, - { 5448, VertexAttribI4uivEXT_remap_index }, - { 11317, VertexAttribI4usvEXT_remap_index }, - { 18486, VertexAttribIPointerEXT_remap_index }, - { 3066, FramebufferTextureLayerEXT_remap_index }, - { 5172, ColorMaskIndexedEXT_remap_index }, - { 18903, DisableIndexedEXT_remap_index }, - { 26568, EnableIndexedEXT_remap_index }, - { 21652, GetBooleanIndexedvEXT_remap_index }, - { 10928, GetIntegerIndexedvEXT_remap_index }, - { 22696, IsEnabledIndexedEXT_remap_index }, - { 22596, ClearColorIiEXT_remap_index }, - { 3475, ClearColorIuiEXT_remap_index }, - { 9843, GetTexParameterIivEXT_remap_index }, - { 5895, GetTexParameterIuivEXT_remap_index }, - { 3022, TexParameterIivEXT_remap_index }, - { 26390, TexParameterIuivEXT_remap_index }, - { 4583, BeginConditionalRenderNV_remap_index }, - { 25378, EndConditionalRenderNV_remap_index }, - { 9280, BeginTransformFeedbackEXT_remap_index }, - { 18938, BindBufferBaseEXT_remap_index }, - { 18797, BindBufferOffsetEXT_remap_index }, - { 12247, BindBufferRangeEXT_remap_index }, - { 14244, EndTransformFeedbackEXT_remap_index }, - { 10791, GetTransformFeedbackVaryingEXT_remap_index }, - { 20741, TransformFeedbackVaryingsEXT_remap_index }, - { 29571, ProvokingVertexEXT_remap_index }, - { 10739, GetTexParameterPointervAPPLE_remap_index }, - { 5034, TextureRangeAPPLE_remap_index }, - { 11606, GetObjectParameterivAPPLE_remap_index }, - { 19863, ObjectPurgeableAPPLE_remap_index }, - { 5689, ObjectUnpurgeableAPPLE_remap_index }, - { 17247, ActiveProgramEXT_remap_index }, - { 17218, CreateShaderProgramEXT_remap_index }, - { 28569, UseShaderProgramEXT_remap_index }, - { 16463, TextureBarrierNV_remap_index }, - { 28810, StencilFuncSeparateATI_remap_index }, - { 18090, ProgramEnvParameters4fvEXT_remap_index }, - { 17112, ProgramLocalParameters4fvEXT_remap_index }, - { 14112, GetQueryObjecti64vEXT_remap_index }, - { 10341, GetQueryObjectui64vEXT_remap_index }, - { 23792, EGLImageTargetRenderbufferStorageOES_remap_index }, - { 12126, EGLImageTargetTexture2DOES_remap_index }, + { 23913, VertexAttribI2ivEXT_remap_index }, + { 5273, VertexAttribI2uiEXT_remap_index }, + { 4728, VertexAttribI2uivEXT_remap_index }, + { 26601, VertexAttribI3iEXT_remap_index }, + { 30533, VertexAttribI3ivEXT_remap_index }, + { 3340, VertexAttribI3uiEXT_remap_index }, + { 30429, VertexAttribI3uivEXT_remap_index }, + { 22026, VertexAttribI4bvEXT_remap_index }, + { 14667, VertexAttribI4iEXT_remap_index }, + { 32098, VertexAttribI4ivEXT_remap_index }, + { 13408, VertexAttribI4svEXT_remap_index }, + { 16529, VertexAttribI4ubvEXT_remap_index }, + { 16228, VertexAttribI4uiEXT_remap_index }, + { 5419, VertexAttribI4uivEXT_remap_index }, + { 11330, VertexAttribI4usvEXT_remap_index }, + { 18564, VertexAttribIPointerEXT_remap_index }, + { 3027, FramebufferTextureLayerEXT_remap_index }, + { 5660, ColorMaskIndexedEXT_remap_index }, + { 18981, DisableIndexedEXT_remap_index }, + { 26646, EnableIndexedEXT_remap_index }, + { 21730, GetBooleanIndexedvEXT_remap_index }, + { 10941, GetIntegerIndexedvEXT_remap_index }, + { 22774, IsEnabledIndexedEXT_remap_index }, + { 22674, ClearColorIiEXT_remap_index }, + { 3436, ClearColorIuiEXT_remap_index }, + { 9856, GetTexParameterIivEXT_remap_index }, + { 5908, GetTexParameterIuivEXT_remap_index }, + { 2983, TexParameterIivEXT_remap_index }, + { 26468, TexParameterIuivEXT_remap_index }, + { 4596, BeginConditionalRenderNV_remap_index }, + { 25456, EndConditionalRenderNV_remap_index }, + { 9293, BeginTransformFeedbackEXT_remap_index }, + { 19016, BindBufferBaseEXT_remap_index }, + { 18875, BindBufferOffsetEXT_remap_index }, + { 12221, BindBufferRangeEXT_remap_index }, + { 14289, EndTransformFeedbackEXT_remap_index }, + { 10804, GetTransformFeedbackVaryingEXT_remap_index }, + { 20819, TransformFeedbackVaryingsEXT_remap_index }, + { 29585, ProvokingVertexEXT_remap_index }, + { 10752, GetTexParameterPointervAPPLE_remap_index }, + { 5047, TextureRangeAPPLE_remap_index }, + { 11619, GetObjectParameterivAPPLE_remap_index }, + { 19941, ObjectPurgeableAPPLE_remap_index }, + { 5702, ObjectUnpurgeableAPPLE_remap_index }, + { 17325, ActiveProgramEXT_remap_index }, + { 17296, CreateShaderProgramEXT_remap_index }, + { 28583, UseShaderProgramEXT_remap_index }, + { 16508, TextureBarrierNV_remap_index }, + { 28824, StencilFuncSeparateATI_remap_index }, + { 18168, ProgramEnvParameters4fvEXT_remap_index }, + { 17190, ProgramLocalParameters4fvEXT_remap_index }, + { 14157, GetQueryObjecti64vEXT_remap_index }, + { 10354, GetQueryObjectui64vEXT_remap_index }, + { 23870, EGLImageTargetRenderbufferStorageOES_remap_index }, + { 12139, 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 */ - { 2694, _gloffset_BlendColor }, + { 2655, _gloffset_BlendColor }, /* from GL_EXT_blend_minmax */ - { 11211, _gloffset_BlendEquation }, + { 11224, _gloffset_BlendEquation }, /* from GL_EXT_color_subtable */ - { 17010, _gloffset_ColorSubTable }, - { 31708, _gloffset_CopyColorSubTable }, + { 17088, _gloffset_ColorSubTable }, + { 31761, _gloffset_CopyColorSubTable }, /* from GL_EXT_convolution */ - { 296, _gloffset_ConvolutionFilter1D }, - { 2493, _gloffset_CopyConvolutionFilter1D }, - { 4097, _gloffset_GetConvolutionParameteriv }, - { 8493, _gloffset_ConvolutionFilter2D }, - { 8695, _gloffset_ConvolutionParameteriv }, - { 9155, _gloffset_ConvolutionParameterfv }, - { 20584, _gloffset_GetSeparableFilter }, - { 24067, _gloffset_SeparableFilter2D }, - { 24930, _gloffset_ConvolutionParameteri }, - { 25053, _gloffset_ConvolutionParameterf }, - { 26757, _gloffset_GetConvolutionParameterfv }, - { 27646, _gloffset_GetConvolutionFilter }, - { 30111, _gloffset_CopyConvolutionFilter2D }, + { 257, _gloffset_ConvolutionFilter1D }, + { 2454, _gloffset_CopyConvolutionFilter1D }, + { 4058, _gloffset_GetConvolutionParameteriv }, + { 8506, _gloffset_ConvolutionFilter2D }, + { 8708, _gloffset_ConvolutionParameteriv }, + { 9168, _gloffset_ConvolutionParameterfv }, + { 20662, _gloffset_GetSeparableFilter }, + { 24145, _gloffset_SeparableFilter2D }, + { 25008, _gloffset_ConvolutionParameteri }, + { 25131, _gloffset_ConvolutionParameterf }, + { 26835, _gloffset_GetConvolutionParameterfv }, + { 27692, _gloffset_GetConvolutionFilter }, + { 30125, _gloffset_CopyConvolutionFilter2D }, /* from GL_EXT_copy_texture */ - { 15103, _gloffset_CopyTexSubImage3D }, - { 16697, _gloffset_CopyTexImage2D }, - { 24538, _gloffset_CopyTexImage1D }, - { 27327, _gloffset_CopyTexSubImage2D }, - { 29749, _gloffset_CopyTexSubImage1D }, + { 15148, _gloffset_CopyTexSubImage3D }, + { 16775, _gloffset_CopyTexImage2D }, + { 24616, _gloffset_CopyTexImage1D }, + { 27373, _gloffset_CopyTexSubImage2D }, + { 29763, _gloffset_CopyTexSubImage1D }, /* from GL_EXT_draw_range_elements */ - { 9492, _gloffset_DrawRangeElements }, + { 9505, _gloffset_DrawRangeElements }, /* from GL_EXT_histogram */ - { 895, _gloffset_Histogram }, - { 3561, _gloffset_ResetHistogram }, - { 9989, _gloffset_GetMinmax }, - { 15437, _gloffset_GetHistogramParameterfv }, - { 24463, _gloffset_GetMinmaxParameteriv }, - { 26647, _gloffset_ResetMinmax }, - { 27543, _gloffset_GetHistogramParameteriv }, - { 28744, _gloffset_GetHistogram }, - { 31333, _gloffset_Minmax }, - { 32873, _gloffset_GetMinmaxParameterfv }, + { 856, _gloffset_Histogram }, + { 3522, _gloffset_ResetHistogram }, + { 10002, _gloffset_GetMinmax }, + { 15482, _gloffset_GetHistogramParameterfv }, + { 24541, _gloffset_GetMinmaxParameteriv }, + { 26725, _gloffset_ResetMinmax }, + { 27589, _gloffset_GetHistogramParameteriv }, + { 28758, _gloffset_GetHistogram }, + { 31347, _gloffset_Minmax }, + { 32893, _gloffset_GetMinmaxParameterfv }, /* from GL_EXT_paletted_texture */ - { 8355, _gloffset_ColorTable }, - { 15283, _gloffset_GetColorTable }, - { 22982, _gloffset_GetColorTableParameterfv }, - { 25109, _gloffset_GetColorTableParameteriv }, + { 8368, _gloffset_ColorTable }, + { 15328, _gloffset_GetColorTable }, + { 23060, _gloffset_GetColorTableParameterfv }, + { 25187, _gloffset_GetColorTableParameteriv }, /* from GL_EXT_subtexture */ - { 7076, _gloffset_TexSubImage1D }, - { 10666, _gloffset_TexSubImage2D }, + { 7089, _gloffset_TexSubImage1D }, + { 10679, _gloffset_TexSubImage2D }, /* from GL_EXT_texture3D */ - { 1813, _gloffset_TexImage3D }, - { 22751, _gloffset_TexSubImage3D }, + { 1774, _gloffset_TexImage3D }, + { 22829, _gloffset_TexSubImage3D }, /* from GL_EXT_texture_object */ - { 3329, _gloffset_PrioritizeTextures }, - { 7525, _gloffset_AreTexturesResident }, - { 13638, _gloffset_GenTextures }, - { 15769, _gloffset_DeleteTextures }, - { 19569, _gloffset_IsTexture }, - { 29814, _gloffset_BindTexture }, + { 3290, _gloffset_PrioritizeTextures }, + { 7538, _gloffset_AreTexturesResident }, + { 13612, _gloffset_GenTextures }, + { 15814, _gloffset_DeleteTextures }, + { 19647, _gloffset_IsTexture }, + { 29828, _gloffset_BindTexture }, /* from GL_EXT_vertex_array */ - { 24239, _gloffset_ArrayElement }, - { 30921, _gloffset_GetPointerv }, - { 32500, _gloffset_DrawArrays }, + { 24317, _gloffset_ArrayElement }, + { 30935, _gloffset_GetPointerv }, + { 32520, _gloffset_DrawArrays }, /* from GL_SGI_color_table */ - { 7643, _gloffset_ColorTableParameteriv }, - { 8355, _gloffset_ColorTable }, - { 15283, _gloffset_GetColorTable }, - { 15393, _gloffset_CopyColorTable }, - { 19430, _gloffset_ColorTableParameterfv }, - { 22982, _gloffset_GetColorTableParameterfv }, - { 25109, _gloffset_GetColorTableParameteriv }, + { 7656, _gloffset_ColorTableParameteriv }, + { 8368, _gloffset_ColorTable }, + { 15328, _gloffset_GetColorTable }, + { 15438, _gloffset_CopyColorTable }, + { 19508, _gloffset_ColorTableParameterfv }, + { 23060, _gloffset_GetColorTableParameterfv }, + { 25187, _gloffset_GetColorTableParameteriv }, /* from GL_VERSION_1_3 */ - { 464, _gloffset_MultiTexCoord3sARB }, - { 696, _gloffset_ActiveTextureARB }, - { 4234, _gloffset_MultiTexCoord1fvARB }, - { 6142, _gloffset_MultiTexCoord3dARB }, - { 6187, _gloffset_MultiTexCoord2iARB }, - { 6311, _gloffset_MultiTexCoord2svARB }, - { 8311, _gloffset_MultiTexCoord2fARB }, - { 10371, _gloffset_MultiTexCoord3fvARB }, - { 10973, _gloffset_MultiTexCoord4sARB }, - { 11654, _gloffset_MultiTexCoord2dvARB }, - { 12069, _gloffset_MultiTexCoord1svARB }, - { 12480, _gloffset_MultiTexCoord3svARB }, - { 12541, _gloffset_MultiTexCoord4iARB }, - { 13342, _gloffset_MultiTexCoord3iARB }, - { 14141, _gloffset_MultiTexCoord1dARB }, - { 14358, _gloffset_MultiTexCoord3dvARB }, - { 15637, _gloffset_MultiTexCoord3ivARB }, - { 15682, _gloffset_MultiTexCoord2sARB }, - { 17067, _gloffset_MultiTexCoord4ivARB }, - { 19080, _gloffset_ClientActiveTextureARB }, - { 21380, _gloffset_MultiTexCoord2dARB }, - { 21817, _gloffset_MultiTexCoord4dvARB }, - { 22173, _gloffset_MultiTexCoord4fvARB }, - { 23123, _gloffset_MultiTexCoord3fARB }, - { 25693, _gloffset_MultiTexCoord4dARB }, - { 25959, _gloffset_MultiTexCoord1sARB }, - { 26163, _gloffset_MultiTexCoord1dvARB }, - { 27171, _gloffset_MultiTexCoord1ivARB }, - { 27264, _gloffset_MultiTexCoord2ivARB }, - { 27603, _gloffset_MultiTexCoord1iARB }, - { 29019, _gloffset_MultiTexCoord4svARB }, - { 29613, _gloffset_MultiTexCoord1fARB }, - { 29876, _gloffset_MultiTexCoord4fARB }, - { 32334, _gloffset_MultiTexCoord2fvARB }, + { 425, _gloffset_MultiTexCoord3sARB }, + { 657, _gloffset_ActiveTextureARB }, + { 4247, _gloffset_MultiTexCoord1fvARB }, + { 6155, _gloffset_MultiTexCoord3dARB }, + { 6200, _gloffset_MultiTexCoord2iARB }, + { 6324, _gloffset_MultiTexCoord2svARB }, + { 8324, _gloffset_MultiTexCoord2fARB }, + { 10384, _gloffset_MultiTexCoord3fvARB }, + { 10986, _gloffset_MultiTexCoord4sARB }, + { 11667, _gloffset_MultiTexCoord2dvARB }, + { 12082, _gloffset_MultiTexCoord1svARB }, + { 12454, _gloffset_MultiTexCoord3svARB }, + { 12515, _gloffset_MultiTexCoord4iARB }, + { 13316, _gloffset_MultiTexCoord3iARB }, + { 14186, _gloffset_MultiTexCoord1dARB }, + { 14403, _gloffset_MultiTexCoord3dvARB }, + { 15682, _gloffset_MultiTexCoord3ivARB }, + { 15727, _gloffset_MultiTexCoord2sARB }, + { 17145, _gloffset_MultiTexCoord4ivARB }, + { 19158, _gloffset_ClientActiveTextureARB }, + { 21458, _gloffset_MultiTexCoord2dARB }, + { 21895, _gloffset_MultiTexCoord4dvARB }, + { 22251, _gloffset_MultiTexCoord4fvARB }, + { 23201, _gloffset_MultiTexCoord3fARB }, + { 25771, _gloffset_MultiTexCoord4dARB }, + { 26037, _gloffset_MultiTexCoord1sARB }, + { 26241, _gloffset_MultiTexCoord1dvARB }, + { 27217, _gloffset_MultiTexCoord1ivARB }, + { 27310, _gloffset_MultiTexCoord2ivARB }, + { 27649, _gloffset_MultiTexCoord1iARB }, + { 29033, _gloffset_MultiTexCoord4svARB }, + { 29627, _gloffset_MultiTexCoord1fARB }, + { 29890, _gloffset_MultiTexCoord4fARB }, + { 32354, _gloffset_MultiTexCoord2fvARB }, { -1, -1 } }; @@ -5389,7 +5394,7 @@ static const struct gl_function_remap MESA_alt_functions[] = { #if defined(need_GL_3DFX_tbuffer) static const struct gl_function_remap GL_3DFX_tbuffer_functions[] = { - { 9213, -1 }, /* TbufferMask3DFX */ + { 9226, -1 }, /* TbufferMask3DFX */ { -1, -1 } }; #endif @@ -5481,7 +5486,7 @@ static const struct gl_function_remap GL_ARB_framebuffer_object_functions[] = { #if defined(need_GL_ARB_geometry_shader4) /* functions defined in MESA_remap_table_functions are excluded */ static const struct gl_function_remap GL_ARB_geometry_shader4_functions[] = { - { 12444, -1 }, /* FramebufferTextureLayer */ + { 12418, -1 }, /* FramebufferTextureLayer */ { -1, -1 } }; #endif @@ -5502,11 +5507,11 @@ static const struct gl_function_remap GL_ARB_map_buffer_range_functions[] = { #if defined(need_GL_ARB_matrix_palette) static const struct gl_function_remap GL_ARB_matrix_palette_functions[] = { - { 3812, -1 }, /* MatrixIndexusvARB */ - { 13163, -1 }, /* MatrixIndexuivARB */ - { 14513, -1 }, /* MatrixIndexPointerARB */ - { 19818, -1 }, /* CurrentPaletteMatrixARB */ - { 22867, -1 }, /* MatrixIndexubvARB */ + { 3773, -1 }, /* MatrixIndexusvARB */ + { 13137, -1 }, /* MatrixIndexuivARB */ + { 14558, -1 }, /* MatrixIndexPointerARB */ + { 19896, -1 }, /* CurrentPaletteMatrixARB */ + { 22945, -1 }, /* MatrixIndexubvARB */ { -1, -1 } }; #endif @@ -5553,6 +5558,13 @@ static const struct gl_function_remap GL_ARB_sync_functions[] = { }; #endif +#if defined(need_GL_ARB_texture_buffer_object) +/* functions defined in MESA_remap_table_functions are excluded */ +static const struct gl_function_remap GL_ARB_texture_buffer_object_functions[] = { + { -1, -1 } +}; +#endif + #if defined(need_GL_ARB_texture_compression) /* functions defined in MESA_remap_table_functions are excluded */ static const struct gl_function_remap GL_ARB_texture_compression_functions[] = { @@ -5583,16 +5595,16 @@ static const struct gl_function_remap GL_ARB_vertex_array_object_functions[] = { #if defined(need_GL_ARB_vertex_blend) static const struct gl_function_remap GL_ARB_vertex_blend_functions[] = { - { 2435, -1 }, /* WeightubvARB */ - { 6554, -1 }, /* WeightivARB */ - { 11076, -1 }, /* WeightPointerARB */ - { 13898, -1 }, /* WeightfvARB */ - { 17586, -1 }, /* WeightbvARB */ - { 21048, -1 }, /* WeightusvARB */ - { 23993, -1 }, /* VertexBlendARB */ - { 29697, -1 }, /* WeightsvARB */ - { 31758, -1 }, /* WeightdvARB */ - { 32534, -1 }, /* WeightuivARB */ + { 2396, -1 }, /* WeightubvARB */ + { 6567, -1 }, /* WeightivARB */ + { 11089, -1 }, /* WeightPointerARB */ + { 13904, -1 }, /* WeightfvARB */ + { 17664, -1 }, /* WeightbvARB */ + { 21126, -1 }, /* WeightusvARB */ + { 24071, -1 }, /* VertexBlendARB */ + { 29711, -1 }, /* WeightsvARB */ + { 31811, -1 }, /* WeightdvARB */ + { 32554, -1 }, /* WeightuivARB */ { -1, -1 } }; #endif @@ -5662,7 +5674,7 @@ static const struct gl_function_remap GL_ATI_separate_stencil_functions[] = { #if defined(need_GL_EXT_blend_color) static const struct gl_function_remap GL_EXT_blend_color_functions[] = { - { 2694, _gloffset_BlendColor }, + { 2655, _gloffset_BlendColor }, { -1, -1 } }; #endif @@ -5683,15 +5695,15 @@ static const struct gl_function_remap GL_EXT_blend_func_separate_functions[] = { #if defined(need_GL_EXT_blend_minmax) static const struct gl_function_remap GL_EXT_blend_minmax_functions[] = { - { 11211, _gloffset_BlendEquation }, + { 11224, _gloffset_BlendEquation }, { -1, -1 } }; #endif #if defined(need_GL_EXT_color_subtable) static const struct gl_function_remap GL_EXT_color_subtable_functions[] = { - { 17010, _gloffset_ColorSubTable }, - { 31708, _gloffset_CopyColorSubTable }, + { 17088, _gloffset_ColorSubTable }, + { 31761, _gloffset_CopyColorSubTable }, { -1, -1 } }; #endif @@ -5705,66 +5717,66 @@ static const struct gl_function_remap GL_EXT_compiled_vertex_array_functions[] = #if defined(need_GL_EXT_convolution) static const struct gl_function_remap GL_EXT_convolution_functions[] = { - { 296, _gloffset_ConvolutionFilter1D }, - { 2493, _gloffset_CopyConvolutionFilter1D }, - { 4097, _gloffset_GetConvolutionParameteriv }, - { 8493, _gloffset_ConvolutionFilter2D }, - { 8695, _gloffset_ConvolutionParameteriv }, - { 9155, _gloffset_ConvolutionParameterfv }, - { 20584, _gloffset_GetSeparableFilter }, - { 24067, _gloffset_SeparableFilter2D }, - { 24930, _gloffset_ConvolutionParameteri }, - { 25053, _gloffset_ConvolutionParameterf }, - { 26757, _gloffset_GetConvolutionParameterfv }, - { 27646, _gloffset_GetConvolutionFilter }, - { 30111, _gloffset_CopyConvolutionFilter2D }, + { 257, _gloffset_ConvolutionFilter1D }, + { 2454, _gloffset_CopyConvolutionFilter1D }, + { 4058, _gloffset_GetConvolutionParameteriv }, + { 8506, _gloffset_ConvolutionFilter2D }, + { 8708, _gloffset_ConvolutionParameteriv }, + { 9168, _gloffset_ConvolutionParameterfv }, + { 20662, _gloffset_GetSeparableFilter }, + { 24145, _gloffset_SeparableFilter2D }, + { 25008, _gloffset_ConvolutionParameteri }, + { 25131, _gloffset_ConvolutionParameterf }, + { 26835, _gloffset_GetConvolutionParameterfv }, + { 27692, _gloffset_GetConvolutionFilter }, + { 30125, _gloffset_CopyConvolutionFilter2D }, { -1, -1 } }; #endif #if defined(need_GL_EXT_coordinate_frame) static const struct gl_function_remap GL_EXT_coordinate_frame_functions[] = { - { 10510, -1 }, /* TangentPointerEXT */ - { 12599, -1 }, /* Binormal3ivEXT */ - { 13295, -1 }, /* Tangent3sEXT */ - { 14578, -1 }, /* Tangent3fvEXT */ - { 18778, -1 }, /* Tangent3dvEXT */ - { 19516, -1 }, /* Binormal3bvEXT */ - { 20637, -1 }, /* Binormal3dEXT */ - { 22799, -1 }, /* Tangent3fEXT */ - { 25002, -1 }, /* Binormal3sEXT */ - { 25470, -1 }, /* Tangent3ivEXT */ - { 25489, -1 }, /* Tangent3dEXT */ - { 26436, -1 }, /* Binormal3svEXT */ - { 27069, -1 }, /* Binormal3fEXT */ - { 27957, -1 }, /* Binormal3dvEXT */ - { 29276, -1 }, /* Tangent3iEXT */ - { 30396, -1 }, /* Tangent3bvEXT */ - { 30956, -1 }, /* Tangent3bEXT */ - { 31481, -1 }, /* Binormal3fvEXT */ - { 32233, -1 }, /* BinormalPointerEXT */ - { 32638, -1 }, /* Tangent3svEXT */ - { 33075, -1 }, /* Binormal3bEXT */ - { 33252, -1 }, /* Binormal3iEXT */ + { 10523, -1 }, /* TangentPointerEXT */ + { 12573, -1 }, /* Binormal3ivEXT */ + { 13269, -1 }, /* Tangent3sEXT */ + { 14623, -1 }, /* Tangent3fvEXT */ + { 18856, -1 }, /* Tangent3dvEXT */ + { 19594, -1 }, /* Binormal3bvEXT */ + { 20715, -1 }, /* Binormal3dEXT */ + { 22877, -1 }, /* Tangent3fEXT */ + { 25080, -1 }, /* Binormal3sEXT */ + { 25548, -1 }, /* Tangent3ivEXT */ + { 25567, -1 }, /* Tangent3dEXT */ + { 26514, -1 }, /* Binormal3svEXT */ + { 27115, -1 }, /* Binormal3fEXT */ + { 28023, -1 }, /* Binormal3dvEXT */ + { 29290, -1 }, /* Tangent3iEXT */ + { 30410, -1 }, /* Tangent3bvEXT */ + { 30970, -1 }, /* Tangent3bEXT */ + { 31534, -1 }, /* Binormal3fvEXT */ + { 32253, -1 }, /* BinormalPointerEXT */ + { 32658, -1 }, /* Tangent3svEXT */ + { 33095, -1 }, /* Binormal3bEXT */ + { 33272, -1 }, /* Binormal3iEXT */ { -1, -1 } }; #endif #if defined(need_GL_EXT_copy_texture) static const struct gl_function_remap GL_EXT_copy_texture_functions[] = { - { 15103, _gloffset_CopyTexSubImage3D }, - { 16697, _gloffset_CopyTexImage2D }, - { 24538, _gloffset_CopyTexImage1D }, - { 27327, _gloffset_CopyTexSubImage2D }, - { 29749, _gloffset_CopyTexSubImage1D }, + { 15148, _gloffset_CopyTexSubImage3D }, + { 16775, _gloffset_CopyTexImage2D }, + { 24616, _gloffset_CopyTexImage1D }, + { 27373, _gloffset_CopyTexSubImage2D }, + { 29763, _gloffset_CopyTexSubImage1D }, { -1, -1 } }; #endif #if defined(need_GL_EXT_cull_vertex) static const struct gl_function_remap GL_EXT_cull_vertex_functions[] = { - { 8844, -1 }, /* CullParameterdvEXT */ - { 11699, -1 }, /* CullParameterfvEXT */ + { 8857, -1 }, /* CullParameterdvEXT */ + { 11712, -1 }, /* CullParameterfvEXT */ { -1, -1 } }; #endif @@ -5792,7 +5804,7 @@ static const struct gl_function_remap GL_EXT_draw_instanced_functions[] = { #if defined(need_GL_EXT_draw_range_elements) static const struct gl_function_remap GL_EXT_draw_range_elements_functions[] = { - { 9492, _gloffset_DrawRangeElements }, + { 9505, _gloffset_DrawRangeElements }, { -1, -1 } }; #endif @@ -5841,39 +5853,39 @@ static const struct gl_function_remap GL_EXT_gpu_shader4_functions[] = { #if defined(need_GL_EXT_histogram) static const struct gl_function_remap GL_EXT_histogram_functions[] = { - { 895, _gloffset_Histogram }, - { 3561, _gloffset_ResetHistogram }, - { 9989, _gloffset_GetMinmax }, - { 15437, _gloffset_GetHistogramParameterfv }, - { 24463, _gloffset_GetMinmaxParameteriv }, - { 26647, _gloffset_ResetMinmax }, - { 27543, _gloffset_GetHistogramParameteriv }, - { 28744, _gloffset_GetHistogram }, - { 31333, _gloffset_Minmax }, - { 32873, _gloffset_GetMinmaxParameterfv }, + { 856, _gloffset_Histogram }, + { 3522, _gloffset_ResetHistogram }, + { 10002, _gloffset_GetMinmax }, + { 15482, _gloffset_GetHistogramParameterfv }, + { 24541, _gloffset_GetMinmaxParameteriv }, + { 26725, _gloffset_ResetMinmax }, + { 27589, _gloffset_GetHistogramParameteriv }, + { 28758, _gloffset_GetHistogram }, + { 31347, _gloffset_Minmax }, + { 32893, _gloffset_GetMinmaxParameterfv }, { -1, -1 } }; #endif #if defined(need_GL_EXT_index_func) static const struct gl_function_remap GL_EXT_index_func_functions[] = { - { 11485, -1 }, /* IndexFuncEXT */ + { 11498, -1 }, /* IndexFuncEXT */ { -1, -1 } }; #endif #if defined(need_GL_EXT_index_material) static const struct gl_function_remap GL_EXT_index_material_functions[] = { - { 21135, -1 }, /* IndexMaterialEXT */ + { 21213, -1 }, /* IndexMaterialEXT */ { -1, -1 } }; #endif #if defined(need_GL_EXT_light_texture) static const struct gl_function_remap GL_EXT_light_texture_functions[] = { - { 26456, -1 }, /* ApplyTextureEXT */ - { 26601, -1 }, /* TextureMaterialEXT */ - { 26626, -1 }, /* TextureLightEXT */ + { 26534, -1 }, /* ApplyTextureEXT */ + { 26679, -1 }, /* TextureMaterialEXT */ + { 26704, -1 }, /* TextureLightEXT */ { -1, -1 } }; #endif @@ -5894,20 +5906,20 @@ static const struct gl_function_remap GL_EXT_multisample_functions[] = { #if defined(need_GL_EXT_paletted_texture) static const struct gl_function_remap GL_EXT_paletted_texture_functions[] = { - { 8355, _gloffset_ColorTable }, - { 15283, _gloffset_GetColorTable }, - { 22982, _gloffset_GetColorTableParameterfv }, - { 25109, _gloffset_GetColorTableParameteriv }, + { 8368, _gloffset_ColorTable }, + { 15328, _gloffset_GetColorTable }, + { 23060, _gloffset_GetColorTableParameterfv }, + { 25187, _gloffset_GetColorTableParameteriv }, { -1, -1 } }; #endif #if defined(need_GL_EXT_pixel_transform) static const struct gl_function_remap GL_EXT_pixel_transform_functions[] = { - { 21782, -1 }, /* PixelTransformParameterfEXT */ - { 21862, -1 }, /* PixelTransformParameteriEXT */ - { 30671, -1 }, /* PixelTransformParameterfvEXT */ - { 32197, -1 }, /* PixelTransformParameterivEXT */ + { 21860, -1 }, /* PixelTransformParameterfEXT */ + { 21940, -1 }, /* PixelTransformParameteriEXT */ + { 30685, -1 }, /* PixelTransformParameterfvEXT */ + { 32217, -1 }, /* PixelTransformParameterivEXT */ { -1, -1 } }; #endif @@ -5956,16 +5968,16 @@ static const struct gl_function_remap GL_EXT_stencil_two_side_functions[] = { #if defined(need_GL_EXT_subtexture) static const struct gl_function_remap GL_EXT_subtexture_functions[] = { - { 7076, _gloffset_TexSubImage1D }, - { 10666, _gloffset_TexSubImage2D }, + { 7089, _gloffset_TexSubImage1D }, + { 10679, _gloffset_TexSubImage2D }, { -1, -1 } }; #endif #if defined(need_GL_EXT_texture3D) static const struct gl_function_remap GL_EXT_texture3D_functions[] = { - { 1813, _gloffset_TexImage3D }, - { 22751, _gloffset_TexSubImage3D }, + { 1774, _gloffset_TexImage3D }, + { 22829, _gloffset_TexSubImage3D }, { -1, -1 } }; #endif @@ -5986,19 +5998,19 @@ static const struct gl_function_remap GL_EXT_texture_integer_functions[] = { #if defined(need_GL_EXT_texture_object) static const struct gl_function_remap GL_EXT_texture_object_functions[] = { - { 3329, _gloffset_PrioritizeTextures }, - { 7525, _gloffset_AreTexturesResident }, - { 13638, _gloffset_GenTextures }, - { 15769, _gloffset_DeleteTextures }, - { 19569, _gloffset_IsTexture }, - { 29814, _gloffset_BindTexture }, + { 3290, _gloffset_PrioritizeTextures }, + { 7538, _gloffset_AreTexturesResident }, + { 13612, _gloffset_GenTextures }, + { 15814, _gloffset_DeleteTextures }, + { 19647, _gloffset_IsTexture }, + { 29828, _gloffset_BindTexture }, { -1, -1 } }; #endif #if defined(need_GL_EXT_texture_perturb_normal) static const struct gl_function_remap GL_EXT_texture_perturb_normal_functions[] = { - { 13848, -1 }, /* TextureNormalEXT */ + { 13854, -1 }, /* TextureNormalEXT */ { -1, -1 } }; #endif @@ -6020,30 +6032,30 @@ static const struct gl_function_remap GL_EXT_transform_feedback_functions[] = { #if defined(need_GL_EXT_vertex_array) /* functions defined in MESA_remap_table_functions are excluded */ static const struct gl_function_remap GL_EXT_vertex_array_functions[] = { - { 24239, _gloffset_ArrayElement }, - { 30921, _gloffset_GetPointerv }, - { 32500, _gloffset_DrawArrays }, + { 24317, _gloffset_ArrayElement }, + { 30935, _gloffset_GetPointerv }, + { 32520, _gloffset_DrawArrays }, { -1, -1 } }; #endif #if defined(need_GL_EXT_vertex_weighting) static const struct gl_function_remap GL_EXT_vertex_weighting_functions[] = { - { 19599, -1 }, /* VertexWeightfvEXT */ - { 27012, -1 }, /* VertexWeightfEXT */ - { 28713, -1 }, /* VertexWeightPointerEXT */ + { 19677, -1 }, /* VertexWeightfvEXT */ + { 27058, -1 }, /* VertexWeightfEXT */ + { 28727, -1 }, /* VertexWeightPointerEXT */ { -1, -1 } }; #endif #if defined(need_GL_HP_image_transform) static const struct gl_function_remap GL_HP_image_transform_functions[] = { - { 2366, -1 }, /* GetImageTransformParameterfvHP */ - { 3778, -1 }, /* ImageTransformParameterfHP */ - { 10204, -1 }, /* ImageTransformParameterfvHP */ - { 11954, -1 }, /* ImageTransformParameteriHP */ - { 12334, -1 }, /* GetImageTransformParameterivHP */ - { 19663, -1 }, /* ImageTransformParameterivHP */ + { 2327, -1 }, /* GetImageTransformParameterfvHP */ + { 3739, -1 }, /* ImageTransformParameterfHP */ + { 10217, -1 }, /* ImageTransformParameterfvHP */ + { 11967, -1 }, /* ImageTransformParameteriHP */ + { 12308, -1 }, /* GetImageTransformParameterivHP */ + { 19741, -1 }, /* ImageTransformParameterivHP */ { -1, -1 } }; #endif @@ -6057,14 +6069,14 @@ static const struct gl_function_remap GL_IBM_multimode_draw_arrays_functions[] = #if defined(need_GL_IBM_vertex_array_lists) static const struct gl_function_remap GL_IBM_vertex_array_lists_functions[] = { - { 4366, -1 }, /* SecondaryColorPointerListIBM */ - { 6008, -1 }, /* NormalPointerListIBM */ - { 7699, -1 }, /* FogCoordPointerListIBM */ - { 8006, -1 }, /* VertexPointerListIBM */ - { 11875, -1 }, /* ColorPointerListIBM */ - { 13402, -1 }, /* TexCoordPointerListIBM */ - { 13870, -1 }, /* IndexPointerListIBM */ - { 32816, -1 }, /* EdgeFlagPointerListIBM */ + { 4379, -1 }, /* SecondaryColorPointerListIBM */ + { 6021, -1 }, /* NormalPointerListIBM */ + { 7712, -1 }, /* FogCoordPointerListIBM */ + { 8019, -1 }, /* VertexPointerListIBM */ + { 11888, -1 }, /* ColorPointerListIBM */ + { 13376, -1 }, /* TexCoordPointerListIBM */ + { 13876, -1 }, /* IndexPointerListIBM */ + { 32836, -1 }, /* EdgeFlagPointerListIBM */ { -1, -1 } }; #endif @@ -6078,10 +6090,10 @@ static const struct gl_function_remap GL_INGR_blend_func_separate_functions[] = #if defined(need_GL_INTEL_parallel_arrays) static const struct gl_function_remap GL_INTEL_parallel_arrays_functions[] = { - { 12742, -1 }, /* VertexPointervINTEL */ - { 15530, -1 }, /* ColorPointervINTEL */ - { 30085, -1 }, /* NormalPointervINTEL */ - { 30603, -1 }, /* TexCoordPointervINTEL */ + { 12716, -1 }, /* VertexPointervINTEL */ + { 15575, -1 }, /* ColorPointervINTEL */ + { 30099, -1 }, /* NormalPointervINTEL */ + { 30617, -1 }, /* TexCoordPointervINTEL */ { -1, -1 } }; #endif @@ -6095,10 +6107,10 @@ static const struct gl_function_remap GL_MESA_resize_buffers_functions[] = { #if defined(need_GL_MESA_shader_debug) static const struct gl_function_remap GL_MESA_shader_debug_functions[] = { - { 1677, -1 }, /* GetDebugLogLengthMESA */ - { 3500, -1 }, /* ClearDebugLogMESA */ - { 4527, -1 }, /* GetDebugLogMESA */ - { 31114, -1 }, /* CreateDebugObjectMESA */ + { 1638, -1 }, /* GetDebugLogLengthMESA */ + { 3461, -1 }, /* ClearDebugLogMESA */ + { 4540, -1 }, /* GetDebugLogMESA */ + { 31128, -1 }, /* CreateDebugObjectMESA */ { -1, -1 } }; #endif @@ -6119,15 +6131,15 @@ static const struct gl_function_remap GL_NV_condtitional_render_functions[] = { #if defined(need_GL_NV_evaluators) static const struct gl_function_remap GL_NV_evaluators_functions[] = { - { 6738, -1 }, /* GetMapAttribParameterivNV */ - { 8461, -1 }, /* MapControlPointsNV */ - { 8560, -1 }, /* MapParameterfvNV */ - { 10649, -1 }, /* EvalMapsNV */ - { 17184, -1 }, /* GetMapAttribParameterfvNV */ - { 17401, -1 }, /* MapParameterivNV */ - { 24853, -1 }, /* GetMapParameterivNV */ - { 25351, -1 }, /* GetMapParameterfvNV */ - { 29400, -1 }, /* GetMapControlPointsNV */ + { 6751, -1 }, /* GetMapAttribParameterivNV */ + { 8474, -1 }, /* MapControlPointsNV */ + { 8573, -1 }, /* MapParameterfvNV */ + { 10662, -1 }, /* EvalMapsNV */ + { 17262, -1 }, /* GetMapAttribParameterfvNV */ + { 17479, -1 }, /* MapParameterivNV */ + { 24931, -1 }, /* GetMapParameterivNV */ + { 25429, -1 }, /* GetMapParameterfvNV */ + { 29414, -1 }, /* GetMapControlPointsNV */ { -1, -1 } }; #endif @@ -6169,8 +6181,8 @@ static const struct gl_function_remap GL_NV_register_combiners_functions[] = { #if defined(need_GL_NV_register_combiners2) static const struct gl_function_remap GL_NV_register_combiners2_functions[] = { - { 15922, -1 }, /* CombinerStageParameterfvNV */ - { 16318, -1 }, /* GetCombinerStageParameterfvNV */ + { 15967, -1 }, /* CombinerStageParameterfvNV */ + { 16363, -1 }, /* GetCombinerStageParameterfvNV */ { -1, -1 } }; #endif @@ -6205,23 +6217,23 @@ static const struct gl_function_remap GL_OES_EGL_image_functions[] = { #if defined(need_GL_PGI_misc_hints) static const struct gl_function_remap GL_PGI_misc_hints_functions[] = { - { 8681, -1 }, /* HintPGI */ + { 8694, -1 }, /* HintPGI */ { -1, -1 } }; #endif #if defined(need_GL_SGIS_detail_texture) static const struct gl_function_remap GL_SGIS_detail_texture_functions[] = { - { 16291, -1 }, /* GetDetailTexFuncSGIS */ - { 16642, -1 }, /* DetailTexFuncSGIS */ + { 16336, -1 }, /* GetDetailTexFuncSGIS */ + { 16720, -1 }, /* DetailTexFuncSGIS */ { -1, -1 } }; #endif #if defined(need_GL_SGIS_fog_function) static const struct gl_function_remap GL_SGIS_fog_function_functions[] = { - { 27309, -1 }, /* FogFuncSGIS */ - { 28062, -1 }, /* GetFogFuncSGIS */ + { 27355, -1 }, /* FogFuncSGIS */ + { 28076, -1 }, /* GetFogFuncSGIS */ { -1, -1 } }; #endif @@ -6249,112 +6261,112 @@ static const struct gl_function_remap GL_SGIS_point_parameters_functions[] = { #if defined(need_GL_SGIS_sharpen_texture) static const struct gl_function_remap GL_SGIS_sharpen_texture_functions[] = { - { 6799, -1 }, /* GetSharpenTexFuncSGIS */ - { 22147, -1 }, /* SharpenTexFuncSGIS */ + { 6812, -1 }, /* GetSharpenTexFuncSGIS */ + { 22225, -1 }, /* SharpenTexFuncSGIS */ { -1, -1 } }; #endif #if defined(need_GL_SGIS_texture4D) static const struct gl_function_remap GL_SGIS_texture4D_functions[] = { - { 1049, -1 }, /* TexImage4DSGIS */ - { 15838, -1 }, /* TexSubImage4DSGIS */ + { 1010, -1 }, /* TexImage4DSGIS */ + { 15883, -1 }, /* TexSubImage4DSGIS */ { -1, -1 } }; #endif #if defined(need_GL_SGIS_texture_color_mask) static const struct gl_function_remap GL_SGIS_texture_color_mask_functions[] = { - { 15236, -1 }, /* TextureColorMaskSGIS */ + { 15281, -1 }, /* TextureColorMaskSGIS */ { -1, -1 } }; #endif #if defined(need_GL_SGIS_texture_filter4) static const struct gl_function_remap GL_SGIS_texture_filter4_functions[] = { - { 6976, -1 }, /* GetTexFilterFuncSGIS */ - { 16437, -1 }, /* TexFilterFuncSGIS */ + { 6989, -1 }, /* GetTexFilterFuncSGIS */ + { 16482, -1 }, /* TexFilterFuncSGIS */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_async) static const struct gl_function_remap GL_SGIX_async_functions[] = { - { 3426, -1 }, /* AsyncMarkerSGIX */ - { 4506, -1 }, /* FinishAsyncSGIX */ - { 5495, -1 }, /* PollAsyncSGIX */ - { 22328, -1 }, /* DeleteAsyncMarkersSGIX */ - { 22383, -1 }, /* IsAsyncMarkerSGIX */ - { 32613, -1 }, /* GenAsyncMarkersSGIX */ + { 3387, -1 }, /* AsyncMarkerSGIX */ + { 4519, -1 }, /* FinishAsyncSGIX */ + { 5466, -1 }, /* PollAsyncSGIX */ + { 22406, -1 }, /* DeleteAsyncMarkersSGIX */ + { 22461, -1 }, /* IsAsyncMarkerSGIX */ + { 32633, -1 }, /* GenAsyncMarkersSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_flush_raster) static const struct gl_function_remap GL_SGIX_flush_raster_functions[] = { - { 7353, -1 }, /* FlushRasterSGIX */ + { 7366, -1 }, /* FlushRasterSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_fragment_lighting) static const struct gl_function_remap GL_SGIX_fragment_lighting_functions[] = { - { 2664, -1 }, /* FragmentMaterialfvSGIX */ - { 5399, -1 }, /* FragmentLightiSGIX */ - { 8073, -1 }, /* FragmentMaterialfSGIX */ - { 8234, -1 }, /* GetFragmentLightivSGIX */ - { 9107, -1 }, /* FragmentLightModeliSGIX */ - { 10712, -1 }, /* FragmentLightivSGIX */ - { 11019, -1 }, /* GetFragmentMaterialivSGIX */ - { 16231, -1 }, /* GetFragmentMaterialfvSGIX */ - { 19486, -1 }, /* FragmentLightModelfSGIX */ - { 19786, -1 }, /* FragmentColorMaterialSGIX */ - { 20203, -1 }, /* FragmentMaterialiSGIX */ - { 21463, -1 }, /* LightEnviSGIX */ - { 23074, -1 }, /* FragmentLightModelfvSGIX */ - { 23409, -1 }, /* FragmentLightfvSGIX */ - { 28446, -1 }, /* FragmentLightModelivSGIX */ - { 28595, -1 }, /* FragmentLightfSGIX */ - { 31451, -1 }, /* GetFragmentLightfvSGIX */ - { 33096, -1 }, /* FragmentMaterialivSGIX */ + { 2625, -1 }, /* FragmentMaterialfvSGIX */ + { 5370, -1 }, /* FragmentLightiSGIX */ + { 8086, -1 }, /* FragmentMaterialfSGIX */ + { 8247, -1 }, /* GetFragmentLightivSGIX */ + { 9120, -1 }, /* FragmentLightModeliSGIX */ + { 10725, -1 }, /* FragmentLightivSGIX */ + { 11032, -1 }, /* GetFragmentMaterialivSGIX */ + { 16276, -1 }, /* GetFragmentMaterialfvSGIX */ + { 19564, -1 }, /* FragmentLightModelfSGIX */ + { 19864, -1 }, /* FragmentColorMaterialSGIX */ + { 20281, -1 }, /* FragmentMaterialiSGIX */ + { 21541, -1 }, /* LightEnviSGIX */ + { 23152, -1 }, /* FragmentLightModelfvSGIX */ + { 23487, -1 }, /* FragmentLightfvSGIX */ + { 28460, -1 }, /* FragmentLightModelivSGIX */ + { 28609, -1 }, /* FragmentLightfSGIX */ + { 31504, -1 }, /* GetFragmentLightfvSGIX */ + { 33116, -1 }, /* FragmentMaterialivSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_framezoom) static const struct gl_function_remap GL_SGIX_framezoom_functions[] = { - { 22406, -1 }, /* FrameZoomSGIX */ + { 22484, -1 }, /* FrameZoomSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_igloo_interface) static const struct gl_function_remap GL_SGIX_igloo_interface_functions[] = { - { 28903, -1 }, /* IglooInterfaceSGIX */ + { 28917, -1 }, /* IglooInterfaceSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_instruments) static const struct gl_function_remap GL_SGIX_instruments_functions[] = { - { 2844, -1 }, /* ReadInstrumentsSGIX */ - { 6572, -1 }, /* PollInstrumentsSGIX */ - { 10570, -1 }, /* GetInstrumentsSGIX */ - { 13000, -1 }, /* StartInstrumentsSGIX */ - { 15956, -1 }, /* StopInstrumentsSGIX */ - { 17823, -1 }, /* InstrumentsBufferSGIX */ + { 2805, -1 }, /* ReadInstrumentsSGIX */ + { 6585, -1 }, /* PollInstrumentsSGIX */ + { 10583, -1 }, /* GetInstrumentsSGIX */ + { 12974, -1 }, /* StartInstrumentsSGIX */ + { 16001, -1 }, /* StopInstrumentsSGIX */ + { 17901, -1 }, /* InstrumentsBufferSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_list_priority) static const struct gl_function_remap GL_SGIX_list_priority_functions[] = { - { 1280, -1 }, /* ListParameterfSGIX */ - { 3128, -1 }, /* GetListParameterfvSGIX */ - { 17714, -1 }, /* ListParameteriSGIX */ - { 18728, -1 }, /* ListParameterfvSGIX */ - { 20869, -1 }, /* ListParameterivSGIX */ - { 32657, -1 }, /* GetListParameterivSGIX */ + { 1241, -1 }, /* ListParameterfSGIX */ + { 3089, -1 }, /* GetListParameterfvSGIX */ + { 17792, -1 }, /* ListParameteriSGIX */ + { 18806, -1 }, /* ListParameterfvSGIX */ + { 20947, -1 }, /* ListParameterivSGIX */ + { 32677, -1 }, /* GetListParameterivSGIX */ { -1, -1 } }; #endif @@ -6368,134 +6380,134 @@ static const struct gl_function_remap GL_SGIX_pixel_texture_functions[] = { #if defined(need_GL_SGIX_polynomial_ffd) static const struct gl_function_remap GL_SGIX_polynomial_ffd_functions[] = { - { 3724, -1 }, /* LoadIdentityDeformationMapSGIX */ - { 12208, -1 }, /* DeformationMap3dSGIX */ - { 16056, -1 }, /* DeformSGIX */ - { 24351, -1 }, /* DeformationMap3fSGIX */ + { 3685, -1 }, /* LoadIdentityDeformationMapSGIX */ + { 16101, -1 }, /* DeformSGIX */ + { 24429, -1 }, /* DeformationMap3fSGIX */ + { 31392, -1 }, /* DeformationMap3dSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_reference_plane) static const struct gl_function_remap GL_SGIX_reference_plane_functions[] = { - { 14787, -1 }, /* ReferencePlaneSGIX */ + { 14832, -1 }, /* ReferencePlaneSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_sprite) static const struct gl_function_remap GL_SGIX_sprite_functions[] = { - { 9605, -1 }, /* SpriteParameterfvSGIX */ - { 20658, -1 }, /* SpriteParameteriSGIX */ - { 26681, -1 }, /* SpriteParameterfSGIX */ - { 29543, -1 }, /* SpriteParameterivSGIX */ + { 9618, -1 }, /* SpriteParameterfvSGIX */ + { 20736, -1 }, /* SpriteParameteriSGIX */ + { 26759, -1 }, /* SpriteParameterfSGIX */ + { 29557, -1 }, /* SpriteParameterivSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_tag_sample_buffer) static const struct gl_function_remap GL_SGIX_tag_sample_buffer_functions[] = { - { 20717, -1 }, /* TagSampleBufferSGIX */ + { 20795, -1 }, /* TagSampleBufferSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGI_color_table) static const struct gl_function_remap GL_SGI_color_table_functions[] = { - { 7643, _gloffset_ColorTableParameteriv }, - { 8355, _gloffset_ColorTable }, - { 15283, _gloffset_GetColorTable }, - { 15393, _gloffset_CopyColorTable }, - { 19430, _gloffset_ColorTableParameterfv }, - { 22982, _gloffset_GetColorTableParameterfv }, - { 25109, _gloffset_GetColorTableParameteriv }, + { 7656, _gloffset_ColorTableParameteriv }, + { 8368, _gloffset_ColorTable }, + { 15328, _gloffset_GetColorTable }, + { 15438, _gloffset_CopyColorTable }, + { 19508, _gloffset_ColorTableParameterfv }, + { 23060, _gloffset_GetColorTableParameterfv }, + { 25187, _gloffset_GetColorTableParameteriv }, { -1, -1 } }; #endif #if defined(need_GL_SUNX_constant_data) static const struct gl_function_remap GL_SUNX_constant_data_functions[] = { - { 31429, -1 }, /* FinishTextureSUNX */ + { 31482, -1 }, /* FinishTextureSUNX */ { -1, -1 } }; #endif #if defined(need_GL_SUN_global_alpha) static const struct gl_function_remap GL_SUN_global_alpha_functions[] = { - { 3447, -1 }, /* GlobalAlphaFactorubSUN */ - { 4805, -1 }, /* GlobalAlphaFactoriSUN */ - { 6597, -1 }, /* GlobalAlphaFactordSUN */ - { 9689, -1 }, /* GlobalAlphaFactoruiSUN */ - { 10161, -1 }, /* GlobalAlphaFactorbSUN */ - { 13315, -1 }, /* GlobalAlphaFactorfSUN */ - { 13479, -1 }, /* GlobalAlphaFactorusSUN */ - { 22669, -1 }, /* GlobalAlphaFactorsSUN */ + { 3408, -1 }, /* GlobalAlphaFactorubSUN */ + { 4818, -1 }, /* GlobalAlphaFactoriSUN */ + { 6610, -1 }, /* GlobalAlphaFactordSUN */ + { 9702, -1 }, /* GlobalAlphaFactoruiSUN */ + { 10174, -1 }, /* GlobalAlphaFactorbSUN */ + { 13289, -1 }, /* GlobalAlphaFactorfSUN */ + { 13453, -1 }, /* GlobalAlphaFactorusSUN */ + { 22747, -1 }, /* GlobalAlphaFactorsSUN */ { -1, -1 } }; #endif #if defined(need_GL_SUN_mesh_array) static const struct gl_function_remap GL_SUN_mesh_array_functions[] = { - { 29334, -1 }, /* DrawMeshArraysSUN */ + { 29348, -1 }, /* DrawMeshArraysSUN */ { -1, -1 } }; #endif #if defined(need_GL_SUN_triangle_list) static const struct gl_function_remap GL_SUN_triangle_list_functions[] = { - { 4480, -1 }, /* ReplacementCodeubSUN */ - { 6356, -1 }, /* ReplacementCodeubvSUN */ - { 19151, -1 }, /* ReplacementCodeusvSUN */ - { 19339, -1 }, /* ReplacementCodePointerSUN */ - { 21527, -1 }, /* ReplacementCodeuiSUN */ - { 22357, -1 }, /* ReplacementCodeusSUN */ - { 30000, -1 }, /* ReplacementCodeuivSUN */ + { 4493, -1 }, /* ReplacementCodeubSUN */ + { 6369, -1 }, /* ReplacementCodeubvSUN */ + { 19229, -1 }, /* ReplacementCodeusvSUN */ + { 19417, -1 }, /* ReplacementCodePointerSUN */ + { 21605, -1 }, /* ReplacementCodeuiSUN */ + { 22435, -1 }, /* ReplacementCodeusSUN */ + { 30014, -1 }, /* ReplacementCodeuivSUN */ { -1, -1 } }; #endif #if defined(need_GL_SUN_vertex) static const struct gl_function_remap GL_SUN_vertex_functions[] = { - { 1154, -1 }, /* ReplacementCodeuiColor3fVertex3fvSUN */ - { 1352, -1 }, /* TexCoord4fColor4fNormal3fVertex4fvSUN */ - { 1578, -1 }, /* TexCoord2fColor4ubVertex3fvSUN */ - { 1908, -1 }, /* ReplacementCodeuiVertex3fvSUN */ - { 2042, -1 }, /* ReplacementCodeuiTexCoord2fVertex3fvSUN */ - { 2600, -1 }, /* ReplacementCodeuiNormal3fVertex3fSUN */ - { 2913, -1 }, /* Color4ubVertex3fvSUN */ - { 4639, -1 }, /* Color4ubVertex3fSUN */ - { 4762, -1 }, /* TexCoord2fVertex3fSUN */ - { 5106, -1 }, /* TexCoord2fColor4fNormal3fVertex3fSUN */ - { 5599, -1 }, /* TexCoord2fNormal3fVertex3fvSUN */ - { 6251, -1 }, /* ReplacementCodeuiTexCoord2fNormal3fVertex3fSUN */ - { 7031, -1 }, /* ReplacementCodeuiColor4ubVertex3fvSUN */ - { 7390, -1 }, /* ReplacementCodeuiTexCoord2fVertex3fSUN */ - { 8102, -1 }, /* TexCoord2fNormal3fVertex3fSUN */ - { 8906, -1 }, /* Color3fVertex3fSUN */ - { 10097, -1 }, /* Color3fVertex3fvSUN */ - { 10535, -1 }, /* Color4fNormal3fVertex3fvSUN */ - { 11364, -1 }, /* ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN */ - { 12863, -1 }, /* ReplacementCodeuiColor4fNormal3fVertex3fvSUN */ - { 14403, -1 }, /* ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN */ - { 14929, -1 }, /* TexCoord2fColor3fVertex3fSUN */ - { 15981, -1 }, /* TexCoord4fColor4fNormal3fVertex4fSUN */ - { 16396, -1 }, /* Color4ubVertex2fvSUN */ - { 16667, -1 }, /* Normal3fVertex3fSUN */ - { 17764, -1 }, /* ReplacementCodeuiColor4fNormal3fVertex3fSUN */ - { 18125, -1 }, /* TexCoord2fColor4fNormal3fVertex3fvSUN */ - { 18980, -1 }, /* TexCoord2fVertex3fvSUN */ - { 19756, -1 }, /* Color4ubVertex2fSUN */ - { 19994, -1 }, /* ReplacementCodeuiColor4ubVertex3fSUN */ - { 21993, -1 }, /* TexCoord2fColor4ubVertex3fSUN */ - { 22425, -1 }, /* Normal3fVertex3fvSUN */ - { 22891, -1 }, /* Color4fNormal3fVertex3fSUN */ - { 23900, -1 }, /* ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN */ - { 26002, -1 }, /* ReplacementCodeuiColor3fVertex3fSUN */ - { 27425, -1 }, /* TexCoord4fVertex4fSUN */ - { 27851, -1 }, /* TexCoord2fColor3fVertex3fvSUN */ - { 28290, -1 }, /* ReplacementCodeuiNormal3fVertex3fvSUN */ - { 28417, -1 }, /* TexCoord4fVertex4fvSUN */ - { 29151, -1 }, /* ReplacementCodeuiVertex3fSUN */ + { 1115, -1 }, /* ReplacementCodeuiColor3fVertex3fvSUN */ + { 1313, -1 }, /* TexCoord4fColor4fNormal3fVertex4fvSUN */ + { 1539, -1 }, /* TexCoord2fColor4ubVertex3fvSUN */ + { 1869, -1 }, /* ReplacementCodeuiVertex3fvSUN */ + { 2003, -1 }, /* ReplacementCodeuiTexCoord2fVertex3fvSUN */ + { 2561, -1 }, /* ReplacementCodeuiNormal3fVertex3fSUN */ + { 2874, -1 }, /* Color4ubVertex3fvSUN */ + { 4652, -1 }, /* Color4ubVertex3fSUN */ + { 4775, -1 }, /* TexCoord2fVertex3fSUN */ + { 5119, -1 }, /* TexCoord2fColor4fNormal3fVertex3fSUN */ + { 5570, -1 }, /* TexCoord2fNormal3fVertex3fvSUN */ + { 6264, -1 }, /* ReplacementCodeuiTexCoord2fNormal3fVertex3fSUN */ + { 7044, -1 }, /* ReplacementCodeuiColor4ubVertex3fvSUN */ + { 7403, -1 }, /* ReplacementCodeuiTexCoord2fVertex3fSUN */ + { 8115, -1 }, /* TexCoord2fNormal3fVertex3fSUN */ + { 8919, -1 }, /* Color3fVertex3fSUN */ + { 10110, -1 }, /* Color3fVertex3fvSUN */ + { 10548, -1 }, /* Color4fNormal3fVertex3fvSUN */ + { 11377, -1 }, /* ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN */ + { 12837, -1 }, /* ReplacementCodeuiColor4fNormal3fVertex3fvSUN */ + { 14448, -1 }, /* ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN */ + { 14974, -1 }, /* TexCoord2fColor3fVertex3fSUN */ + { 16026, -1 }, /* TexCoord4fColor4fNormal3fVertex4fSUN */ + { 16441, -1 }, /* Color4ubVertex2fvSUN */ + { 16745, -1 }, /* Normal3fVertex3fSUN */ + { 17842, -1 }, /* ReplacementCodeuiColor4fNormal3fVertex3fSUN */ + { 18203, -1 }, /* TexCoord2fColor4fNormal3fVertex3fvSUN */ + { 19058, -1 }, /* TexCoord2fVertex3fvSUN */ + { 19834, -1 }, /* Color4ubVertex2fSUN */ + { 20072, -1 }, /* ReplacementCodeuiColor4ubVertex3fSUN */ + { 22071, -1 }, /* TexCoord2fColor4ubVertex3fSUN */ + { 22503, -1 }, /* Normal3fVertex3fvSUN */ + { 22969, -1 }, /* Color4fNormal3fVertex3fSUN */ + { 23978, -1 }, /* ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN */ + { 26080, -1 }, /* ReplacementCodeuiColor3fVertex3fSUN */ + { 27471, -1 }, /* TexCoord4fVertex4fSUN */ + { 27917, -1 }, /* TexCoord2fColor3fVertex3fvSUN */ + { 28304, -1 }, /* ReplacementCodeuiNormal3fVertex3fvSUN */ + { 28431, -1 }, /* TexCoord4fVertex4fvSUN */ + { 29165, -1 }, /* ReplacementCodeuiVertex3fSUN */ { -1, -1 } }; #endif @@ -6503,40 +6515,40 @@ static const struct gl_function_remap GL_SUN_vertex_functions[] = { #if defined(need_GL_VERSION_1_3) /* functions defined in MESA_remap_table_functions are excluded */ static const struct gl_function_remap GL_VERSION_1_3_functions[] = { - { 464, _gloffset_MultiTexCoord3sARB }, - { 696, _gloffset_ActiveTextureARB }, - { 4234, _gloffset_MultiTexCoord1fvARB }, - { 6142, _gloffset_MultiTexCoord3dARB }, - { 6187, _gloffset_MultiTexCoord2iARB }, - { 6311, _gloffset_MultiTexCoord2svARB }, - { 8311, _gloffset_MultiTexCoord2fARB }, - { 10371, _gloffset_MultiTexCoord3fvARB }, - { 10973, _gloffset_MultiTexCoord4sARB }, - { 11654, _gloffset_MultiTexCoord2dvARB }, - { 12069, _gloffset_MultiTexCoord1svARB }, - { 12480, _gloffset_MultiTexCoord3svARB }, - { 12541, _gloffset_MultiTexCoord4iARB }, - { 13342, _gloffset_MultiTexCoord3iARB }, - { 14141, _gloffset_MultiTexCoord1dARB }, - { 14358, _gloffset_MultiTexCoord3dvARB }, - { 15637, _gloffset_MultiTexCoord3ivARB }, - { 15682, _gloffset_MultiTexCoord2sARB }, - { 17067, _gloffset_MultiTexCoord4ivARB }, - { 19080, _gloffset_ClientActiveTextureARB }, - { 21380, _gloffset_MultiTexCoord2dARB }, - { 21817, _gloffset_MultiTexCoord4dvARB }, - { 22173, _gloffset_MultiTexCoord4fvARB }, - { 23123, _gloffset_MultiTexCoord3fARB }, - { 25693, _gloffset_MultiTexCoord4dARB }, - { 25959, _gloffset_MultiTexCoord1sARB }, - { 26163, _gloffset_MultiTexCoord1dvARB }, - { 27171, _gloffset_MultiTexCoord1ivARB }, - { 27264, _gloffset_MultiTexCoord2ivARB }, - { 27603, _gloffset_MultiTexCoord1iARB }, - { 29019, _gloffset_MultiTexCoord4svARB }, - { 29613, _gloffset_MultiTexCoord1fARB }, - { 29876, _gloffset_MultiTexCoord4fARB }, - { 32334, _gloffset_MultiTexCoord2fvARB }, + { 425, _gloffset_MultiTexCoord3sARB }, + { 657, _gloffset_ActiveTextureARB }, + { 4247, _gloffset_MultiTexCoord1fvARB }, + { 6155, _gloffset_MultiTexCoord3dARB }, + { 6200, _gloffset_MultiTexCoord2iARB }, + { 6324, _gloffset_MultiTexCoord2svARB }, + { 8324, _gloffset_MultiTexCoord2fARB }, + { 10384, _gloffset_MultiTexCoord3fvARB }, + { 10986, _gloffset_MultiTexCoord4sARB }, + { 11667, _gloffset_MultiTexCoord2dvARB }, + { 12082, _gloffset_MultiTexCoord1svARB }, + { 12454, _gloffset_MultiTexCoord3svARB }, + { 12515, _gloffset_MultiTexCoord4iARB }, + { 13316, _gloffset_MultiTexCoord3iARB }, + { 14186, _gloffset_MultiTexCoord1dARB }, + { 14403, _gloffset_MultiTexCoord3dvARB }, + { 15682, _gloffset_MultiTexCoord3ivARB }, + { 15727, _gloffset_MultiTexCoord2sARB }, + { 17145, _gloffset_MultiTexCoord4ivARB }, + { 19158, _gloffset_ClientActiveTextureARB }, + { 21458, _gloffset_MultiTexCoord2dARB }, + { 21895, _gloffset_MultiTexCoord4dvARB }, + { 22251, _gloffset_MultiTexCoord4fvARB }, + { 23201, _gloffset_MultiTexCoord3fARB }, + { 25771, _gloffset_MultiTexCoord4dARB }, + { 26037, _gloffset_MultiTexCoord1sARB }, + { 26241, _gloffset_MultiTexCoord1dvARB }, + { 27217, _gloffset_MultiTexCoord1ivARB }, + { 27310, _gloffset_MultiTexCoord2ivARB }, + { 27649, _gloffset_MultiTexCoord1iARB }, + { 29033, _gloffset_MultiTexCoord4svARB }, + { 29627, _gloffset_MultiTexCoord1fARB }, + { 29890, _gloffset_MultiTexCoord4fARB }, + { 32354, _gloffset_MultiTexCoord2fvARB }, { -1, -1 } }; #endif From 874a2c0b7da62f4dd08dedcec221f55b22e40e95 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Tue, 5 Apr 2011 19:02:07 -0600 Subject: [PATCH 160/420] mesa: core support for GL_ARB_texture_buffer_object No GLSL or driver support yet. --- src/mesa/main/api_exec.c | 3 + src/mesa/main/bufferobj.c | 5 + src/mesa/main/context.c | 1 + src/mesa/main/get.c | 36 ++++ src/mesa/main/mtypes.h | 10 + src/mesa/main/shared.c | 2 + src/mesa/main/teximage.c | 282 ++++++++++++++++++++++++- src/mesa/main/teximage.h | 5 + src/mesa/main/texobj.c | 9 +- src/mesa/main/texstate.c | 3 +- src/mesa/program/program.c | 4 +- src/mesa/state_tracker/st_cb_texture.c | 3 + 12 files changed, 357 insertions(+), 6 deletions(-) diff --git a/src/mesa/main/api_exec.c b/src/mesa/main/api_exec.c index f7603705b72..91cdea5bb98 100644 --- a/src/mesa/main/api_exec.c +++ b/src/mesa/main/api_exec.c @@ -726,6 +726,9 @@ _mesa_create_exec_table(void) /* GL_NV_texture_barrier */ SET_TextureBarrierNV(exec, _mesa_TextureBarrierNV); + /* GL_ARB_texture_buffer_object */ + SET_TexBufferARB(exec, _mesa_TexBuffer); + return exec; } diff --git a/src/mesa/main/bufferobj.c b/src/mesa/main/bufferobj.c index c969a8da47d..78105883c97 100644 --- a/src/mesa/main/bufferobj.c +++ b/src/mesa/main/bufferobj.c @@ -93,6 +93,11 @@ get_buffer_target(struct gl_context *ctx, GLenum target) } break; #endif + case GL_TEXTURE_BUFFER: + if (ctx->Extensions.ARB_texture_buffer_object) { + return &ctx->Texture.BufferObject; + } + break; default: return NULL; } diff --git a/src/mesa/main/context.c b/src/mesa/main/context.c index ca74284ca89..9eb1eacba36 100644 --- a/src/mesa/main/context.c +++ b/src/mesa/main/context.c @@ -567,6 +567,7 @@ _mesa_init_constants(struct gl_context *ctx) ctx->Const.MaxTextureImageUnits); ctx->Const.MaxTextureMaxAnisotropy = MAX_TEXTURE_MAX_ANISOTROPY; ctx->Const.MaxTextureLodBias = MAX_TEXTURE_LOD_BIAS; + ctx->Const.MaxTextureBufferSize = 65536; ctx->Const.MaxArrayLockSize = MAX_ARRAY_LOCK_SIZE; ctx->Const.SubPixelBits = SUB_PIXEL_BITS; ctx->Const.MinPointSize = MIN_POINT_SIZE; diff --git a/src/mesa/main/get.c b/src/mesa/main/get.c index 9090ca661e3..6ef8c8792e6 100644 --- a/src/mesa/main/get.c +++ b/src/mesa/main/get.c @@ -323,6 +323,7 @@ EXTRA_EXT(ARB_vertex_buffer_object); EXTRA_EXT(ARB_geometry_shader4); EXTRA_EXT(ARB_copy_buffer); EXTRA_EXT(EXT_framebuffer_sRGB); +EXTRA_EXT(ARB_texture_buffer_object); static const int extra_ARB_vertex_program_ARB_fragment_program_NV_vertex_program[] = { @@ -1236,6 +1237,18 @@ static const struct value_desc values[] = { CONTEXT_INT(Const.MaxProgramTexelOffset), extra_EXT_gpu_shader4 }, + /* GL_ARB_texture_buffer_object */ + { GL_MAX_TEXTURE_BUFFER_SIZE_ARB, CONTEXT_INT(Const.MaxTextureBufferSize), + extra_ARB_texture_buffer_object }, + { GL_TEXTURE_BINDING_BUFFER_ARB, LOC_CUSTOM, TYPE_INT, 0, + extra_ARB_texture_buffer_object }, + { GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB, LOC_CUSTOM, TYPE_INT, + TEXTURE_BUFFER_INDEX, extra_ARB_texture_buffer_object }, + { GL_TEXTURE_BUFFER_FORMAT_ARB, LOC_CUSTOM, TYPE_INT, 0, + extra_ARB_texture_buffer_object }, + { GL_TEXTURE_BUFFER_ARB, LOC_CUSTOM, TYPE_INT, 0, + extra_ARB_texture_buffer_object }, + /* GL 3.0 */ { GL_NUM_EXTENSIONS, LOC_CUSTOM, TYPE_INT, 0, extra_version_30 }, { GL_MAJOR_VERSION, CONTEXT_INT(VersionMajor), extra_version_30 }, @@ -1673,6 +1686,29 @@ find_custom_value(struct gl_context *ctx, const struct value_desc *d, union valu case GL_MAX_FRAGMENT_UNIFORM_VECTORS: v->value_int = ctx->Const.FragmentProgram.MaxUniformComponents / 4; break; + + /* GL_ARB_texture_buffer_object */ + case GL_TEXTURE_BUFFER_ARB: + v->value_int = ctx->Texture.BufferObject->Name; + break; + case GL_TEXTURE_BINDING_BUFFER_ARB: + unit = ctx->Texture.CurrentUnit; + v->value_int = + ctx->Texture.Unit[unit].CurrentTex[TEXTURE_BUFFER_INDEX]->Name; + break; + case GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB: + { + struct gl_buffer_object *buf = + ctx->Texture.Unit[ctx->Texture.CurrentUnit] + .CurrentTex[TEXTURE_BUFFER_INDEX]->BufferObject; + v->value_int = buf ? buf->Name : 0; + } + break; + case GL_TEXTURE_BUFFER_FORMAT_ARB: + v->value_int = ctx->Texture.Unit[ctx->Texture.CurrentUnit] + .CurrentTex[TEXTURE_BUFFER_INDEX]->BufferObjectFormat; + break; + } } diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index 02676006a9f..13e4325ee45 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -1139,6 +1139,7 @@ struct gl_stencil_attrib */ typedef enum { + TEXTURE_BUFFER_INDEX, TEXTURE_2D_ARRAY_INDEX, TEXTURE_1D_ARRAY_INDEX, TEXTURE_CUBE_INDEX, @@ -1155,6 +1156,7 @@ typedef enum * Used for Texture.Unit[]._ReallyEnabled flags. */ /*@{*/ +#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_CUBE_BIT (1 << TEXTURE_CUBE_INDEX) @@ -1348,6 +1350,10 @@ struct gl_texture_object /** Actual texture images, indexed by [cube face] and [mipmap level] */ struct gl_texture_image *Image[MAX_FACES][MAX_TEXTURE_LEVELS]; + /** GL_ARB_texture_buffer_object */ + struct gl_buffer_object *BufferObject; + GLenum BufferObjectFormat; + /** GL_EXT_paletted_texture */ struct gl_color_table Palette; @@ -1458,6 +1464,9 @@ struct gl_texture_attrib struct gl_texture_object *ProxyTex[NUM_TEXTURE_TARGETS]; + /** GL_ARB_texture_buffer_object */ + struct gl_buffer_object *BufferObject; + /** GL_ARB_seamless_cubemap */ GLboolean CubeMapSeamless; @@ -2630,6 +2639,7 @@ struct gl_constants GLuint MaxTextureUnits; /**< = MIN(CoordUnits, ImageUnits) */ GLfloat MaxTextureMaxAnisotropy; /**< GL_EXT_texture_filter_anisotropic */ GLfloat MaxTextureLodBias; /**< GL_EXT_texture_lod_bias */ + GLuint MaxTextureBufferSize; /**< GL_ARB_texture_buffer_object */ GLuint MaxArrayLockSize; diff --git a/src/mesa/main/shared.c b/src/mesa/main/shared.c index ce9fc4de327..6604ed07d53 100644 --- a/src/mesa/main/shared.c +++ b/src/mesa/main/shared.c @@ -98,6 +98,7 @@ _mesa_alloc_shared_state(struct gl_context *ctx) for (i = 0; i < NUM_TEXTURE_TARGETS; i++) { /* NOTE: the order of these enums matches the TEXTURE_x_INDEX values */ static const GLenum targets[NUM_TEXTURE_TARGETS] = { + GL_TEXTURE_BUFFER, GL_TEXTURE_2D_ARRAY_EXT, GL_TEXTURE_1D_ARRAY_EXT, GL_TEXTURE_CUBE_MAP, @@ -106,6 +107,7 @@ _mesa_alloc_shared_state(struct gl_context *ctx) GL_TEXTURE_2D, GL_TEXTURE_1D }; + assert(Elements(targets) == NUM_TEXTURE_TARGETS); shared->DefaultTex[i] = ctx->Driver.NewTextureObject(ctx, 0, targets[i]); } diff --git a/src/mesa/main/teximage.c b/src/mesa/main/teximage.c index 6161eb41456..c5c454336fa 100644 --- a/src/mesa/main/teximage.c +++ b/src/mesa/main/teximage.c @@ -681,8 +681,10 @@ _mesa_delete_texture_image(struct gl_context *ctx, GLboolean _mesa_is_proxy_texture(GLenum target) { - /* NUM_TEXTURE_TARGETS should match number of terms below */ - assert(NUM_TEXTURE_TARGETS == 7); + /* NUM_TEXTURE_TARGETS should match number of terms below, + * except there's no proxy for GL_TEXTURE_BUFFER. + */ + assert(NUM_TEXTURE_TARGETS == 8); return (target == GL_PROXY_TEXTURE_1D || target == GL_PROXY_TEXTURE_2D || @@ -794,6 +796,9 @@ _mesa_select_tex_object(struct gl_context *ctx, return arrayTex ? texUnit->CurrentTex[TEXTURE_2D_ARRAY_INDEX] : NULL; case GL_PROXY_TEXTURE_2D_ARRAY_EXT: return arrayTex ? ctx->Texture.ProxyTex[TEXTURE_2D_ARRAY_INDEX] : NULL; + case GL_TEXTURE_BUFFER: + return ctx->Extensions.ARB_texture_buffer_object + ? texUnit->CurrentTex[TEXTURE_BUFFER_INDEX] : NULL; default: _mesa_problem(NULL, "bad target in _mesa_select_tex_object()"); return NULL; @@ -981,6 +986,8 @@ _mesa_max_texture_levels(struct gl_context *ctx, GLenum target) return (ctx->Extensions.MESA_texture_array || ctx->Extensions.EXT_texture_array) ? ctx->Const.MaxTextureLevels : 0; + case GL_TEXTURE_BUFFER: + /* fall-through */ default: return 0; /* bad target */ } @@ -1017,6 +1024,8 @@ _mesa_get_texture_dimensions(GLenum target) case GL_TEXTURE_2D_ARRAY: case GL_PROXY_TEXTURE_2D_ARRAY: return 3; + case GL_TEXTURE_BUFFER: + /* fall-through */ default: _mesa_problem(NULL, "invalid target 0x%x in get_texture_dimensions()", target); @@ -3551,3 +3560,272 @@ _mesa_CompressedTexSubImage3DARB(GLenum target, GLint level, GLint xoffset, compressed_tex_sub_image(3, target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data); } + + +/** + * Helper for glTexBuffer(). Check if internalFormat is legal. If so, + * return the basic data type and number of components for the format. + * \param return GL_TRUE if internalFormat is legal, GL_FALSE otherwise + */ +static GLboolean +get_sized_format_info(const struct gl_context *ctx, GLenum internalFormat, + GLenum *datatype, GLuint *components) +{ + switch (internalFormat) { + case GL_ALPHA8: + *datatype = GL_UNSIGNED_BYTE; + *components = 1; + break; + case GL_ALPHA16: + *datatype = GL_UNSIGNED_SHORT; + *components = 1; + break; + case GL_ALPHA16F_ARB: + *datatype = GL_HALF_FLOAT; + *components = 1; + break; + case GL_ALPHA32F_ARB: + *datatype = GL_FLOAT; + *components = 1; + break; + case GL_ALPHA8I_EXT: + *datatype = GL_BYTE; + *components = 1; + break; + case GL_ALPHA16I_EXT: + *datatype = GL_SHORT; + *components = 1; + break; + case GL_ALPHA32I_EXT: + *datatype = GL_INT; + *components = 1; + break; + case GL_ALPHA8UI_EXT: + *datatype = GL_UNSIGNED_BYTE; + *components = 1; + break; + case GL_ALPHA16UI_EXT: + *datatype = GL_UNSIGNED_SHORT; + *components = 1; + break; + case GL_ALPHA32UI_EXT: + *datatype = GL_UNSIGNED_INT; + *components = 1; + break; + case GL_LUMINANCE8: + *datatype = GL_UNSIGNED_BYTE; + *components = 1; + break; + case GL_LUMINANCE16: + *datatype = GL_UNSIGNED_SHORT; + *components = 1; + break; + case GL_LUMINANCE16F_ARB: + *datatype = GL_HALF_FLOAT; + *components = 1; + break; + case GL_LUMINANCE32F_ARB: + *datatype = GL_FLOAT; + *components = 1; + break; + case GL_LUMINANCE8I_EXT: + *datatype = GL_BYTE; + *components = 1; + break; + case GL_LUMINANCE16I_EXT: + *datatype = GL_SHORT; + *components = 1; + break; + case GL_LUMINANCE32I_EXT: + *datatype = GL_INT; + *components = 1; + break; + case GL_LUMINANCE8UI_EXT: + *datatype = GL_UNSIGNED_BYTE; + *components = 1; + break; + case GL_LUMINANCE16UI_EXT: + *datatype = GL_UNSIGNED_SHORT; + *components = 1; + break; + case GL_LUMINANCE32UI_EXT: + *datatype = GL_UNSIGNED_INT; + *components = 1; + break; + case GL_LUMINANCE8_ALPHA8: + *datatype = GL_UNSIGNED_BYTE; + *components = 2; + break; + case GL_LUMINANCE16_ALPHA16: + *datatype = GL_UNSIGNED_SHORT; + *components = 2; + break; + case GL_LUMINANCE_ALPHA16F_ARB: + *datatype = GL_HALF_FLOAT; + *components = 2; + break; + case GL_LUMINANCE_ALPHA32F_ARB: + *datatype = GL_FLOAT; + *components = 2; + break; + case GL_LUMINANCE_ALPHA8I_EXT: + *datatype = GL_BYTE; + *components = 2; + break; + case GL_LUMINANCE_ALPHA16I_EXT: + *datatype = GL_SHORT; + *components = 2; + break; + case GL_LUMINANCE_ALPHA32I_EXT: + *datatype = GL_INT; + *components = 2; + break; + case GL_LUMINANCE_ALPHA8UI_EXT: + *datatype = GL_UNSIGNED_BYTE; + *components = 2; + break; + case GL_LUMINANCE_ALPHA16UI_EXT: + *datatype = GL_UNSIGNED_SHORT; + *components = 2; + break; + case GL_LUMINANCE_ALPHA32UI_EXT: + *datatype = GL_UNSIGNED_INT; + *components = 2; + break; + case GL_INTENSITY8: + *datatype = GL_UNSIGNED_BYTE; + *components = 1; + break; + case GL_INTENSITY16: + *datatype = GL_UNSIGNED_SHORT; + *components = 1; + break; + case GL_INTENSITY16F_ARB: + *datatype = GL_HALF_FLOAT; + *components = 1; + break; + case GL_INTENSITY32F_ARB: + *datatype = GL_FLOAT; + *components = 1; + break; + case GL_INTENSITY8I_EXT: + *datatype = GL_BYTE; + *components = 1; + break; + case GL_INTENSITY16I_EXT: + *datatype = GL_SHORT; + *components = 1; + break; + case GL_INTENSITY32I_EXT: + *datatype = GL_INT; + *components = 1; + break; + case GL_INTENSITY8UI_EXT: + *datatype = GL_UNSIGNED_BYTE; + *components = 1; + break; + case GL_INTENSITY16UI_EXT: + *datatype = GL_UNSIGNED_SHORT; + *components = 1; + break; + case GL_INTENSITY32UI_EXT: + *datatype = GL_UNSIGNED_INT; + *components = 1; + break; + case GL_RGBA8: + *datatype = GL_UNSIGNED_BYTE; + *components = 4; + break; + case GL_RGBA16: + *datatype = GL_UNSIGNED_SHORT; + *components = 4; + break; + case GL_RGBA16F_ARB: + *datatype = GL_HALF_FLOAT; + *components = 4; + break; + case GL_RGBA32F_ARB: + *datatype = GL_FLOAT; + *components = 4; + break; + case GL_RGBA8I_EXT: + *datatype = GL_BYTE; + *components = 4; + break; + case GL_RGBA16I_EXT: + *datatype = GL_SHORT; + *components = 4; + break; + case GL_RGBA32I_EXT: + *datatype = GL_INT; + *components = 4; + break; + case GL_RGBA8UI_EXT: + *datatype = GL_UNSIGNED_BYTE; + *components = 4; + break; + case GL_RGBA16UI_EXT: + *datatype = GL_UNSIGNED_SHORT; + *components = 4; + break; + case GL_RGBA32UI_EXT: + *datatype = GL_UNSIGNED_INT; + *components = 4; + break; + default: + return GL_FALSE; + } + + if (*datatype == GL_FLOAT && !ctx->Extensions.ARB_texture_float) + return GL_FALSE; + + if (*datatype == GL_HALF_FLOAT && !ctx->Extensions.ARB_half_float_pixel) + return GL_FALSE; + + return GL_TRUE; +} + + +/** GL_ARB_texture_buffer_object */ +void GLAPIENTRY +_mesa_TexBuffer(GLenum target, GLenum internalFormat, GLuint buffer) +{ + struct gl_texture_object *texObj; + struct gl_buffer_object *bufObj; + GLenum dataType; + GLuint comps; + + GET_CURRENT_CONTEXT(ctx); + ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); + + if (!ctx->Extensions.ARB_texture_buffer_object) { + _mesa_error(ctx, GL_INVALID_OPERATION, "glTexBuffer"); + return; + } + + if (target != GL_TEXTURE_BUFFER_ARB) { + _mesa_error(ctx, GL_INVALID_ENUM, "glTexBuffer(target)"); + return; + } + + if (!get_sized_format_info(ctx, internalFormat, &dataType, &comps)) { + _mesa_error(ctx, GL_INVALID_ENUM, "glTexBuffer(internalFormat 0x%x)", + internalFormat); + return; + } + + bufObj = _mesa_lookup_bufferobj(ctx, buffer); + if (buffer && !bufObj) { + _mesa_error(ctx, GL_INVALID_OPERATION, "glTexBuffer(buffer %u)", buffer); + return; + } + + texObj = _mesa_get_current_tex_object(ctx, target); + + _mesa_lock_texture(ctx, texObj); + { + _mesa_reference_buffer_object(ctx, &texObj->BufferObject, bufObj); + texObj->BufferObjectFormat = internalFormat; + } + _mesa_unlock_texture(ctx, texObj); +} diff --git a/src/mesa/main/teximage.h b/src/mesa/main/teximage.h index 252d80afc0f..19abc649898 100644 --- a/src/mesa/main/teximage.h +++ b/src/mesa/main/teximage.h @@ -275,6 +275,11 @@ _mesa_CompressedTexSubImage3DARB(GLenum target, GLint level, GLint xoffset, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data); + +extern void GLAPIENTRY +_mesa_TexBuffer(GLenum target, GLenum internalFormat, GLuint buffer); + + /*@}*/ #endif diff --git a/src/mesa/main/texobj.c b/src/mesa/main/texobj.c index c1e3e4dec79..61b9bc70d77 100644 --- a/src/mesa/main/texobj.c +++ b/src/mesa/main/texobj.c @@ -29,6 +29,7 @@ #include "mfeatures.h" +#include "bufferobj.h" #include "colortab.h" #include "context.h" #include "enums.h" @@ -105,7 +106,8 @@ _mesa_initialize_texture_object( struct gl_texture_object *obj, target == GL_TEXTURE_CUBE_MAP_ARB || target == GL_TEXTURE_RECTANGLE_NV || target == GL_TEXTURE_1D_ARRAY_EXT || - target == GL_TEXTURE_2D_ARRAY_EXT); + target == GL_TEXTURE_2D_ARRAY_EXT || + target == GL_TEXTURE_BUFFER); memset(obj, 0, sizeof(*obj)); /* init the non-zero fields */ @@ -204,6 +206,8 @@ _mesa_delete_texture_object(struct gl_context *ctx, } } + _mesa_reference_buffer_object(ctx, &texObj->BufferObject, NULL); + /* destroy the mutex -- it may have allocated memory (eg on bsd) */ _glthread_DESTROY_MUTEX(texObj->Mutex); @@ -299,6 +303,7 @@ valid_texture_object(const struct gl_texture_object *tex) case GL_TEXTURE_RECTANGLE_NV: case GL_TEXTURE_1D_ARRAY_EXT: case GL_TEXTURE_2D_ARRAY_EXT: + case GL_TEXTURE_BUFFER: return GL_TRUE; case 0x99: _mesa_problem(NULL, "invalid reference to a deleted texture object"); @@ -989,6 +994,8 @@ target_enum_to_index(GLenum target) return TEXTURE_1D_ARRAY_INDEX; case GL_TEXTURE_2D_ARRAY_EXT: return TEXTURE_2D_ARRAY_INDEX; + case GL_TEXTURE_BUFFER_ARB: + return TEXTURE_BUFFER_INDEX; default: return -1; } diff --git a/src/mesa/main/texstate.c b/src/mesa/main/texstate.c index 41d531f5976..72f80508db7 100644 --- a/src/mesa/main/texstate.c +++ b/src/mesa/main/texstate.c @@ -692,7 +692,8 @@ alloc_proxy_textures( struct gl_context *ctx ) GL_TEXTURE_CUBE_MAP_ARB, GL_TEXTURE_RECTANGLE_NV, GL_TEXTURE_1D_ARRAY_EXT, - GL_TEXTURE_2D_ARRAY_EXT + GL_TEXTURE_2D_ARRAY_EXT, + GL_TEXTURE_BUFFER }; GLint tgt; diff --git a/src/mesa/program/program.c b/src/mesa/program/program.c index 79034ab26f2..5b014872ed4 100644 --- a/src/mesa/program/program.c +++ b/src/mesa/program/program.c @@ -75,10 +75,10 @@ _mesa_init_program(struct gl_context *ctx) ASSERT(ctx->Const.FragmentProgram.MaxAddressOffset <= (1 << INST_INDEX_BITS)); /* If this fails, increase prog_instruction::TexSrcUnit size */ - ASSERT(MAX_TEXTURE_UNITS < (1 << 5)); + 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 << 3)); ctx->Program.ErrorPos = -1; ctx->Program.ErrorString = _mesa_strdup(""); diff --git a/src/mesa/state_tracker/st_cb_texture.c b/src/mesa/state_tracker/st_cb_texture.c index 9d5eb113ff7..302f2e1fa17 100644 --- a/src/mesa/state_tracker/st_cb_texture.c +++ b/src/mesa/state_tracker/st_cb_texture.c @@ -87,6 +87,8 @@ gl_target_to_pipe(GLenum target) return PIPE_TEXTURE_1D_ARRAY; case GL_TEXTURE_2D_ARRAY_EXT: return PIPE_TEXTURE_2D_ARRAY; + case GL_TEXTURE_BUFFER: + return PIPE_BUFFER; default: assert(0); return 0; @@ -245,6 +247,7 @@ get_texture_dims(GLenum target) switch (target) { case GL_TEXTURE_1D: case GL_TEXTURE_1D_ARRAY_EXT: + case GL_TEXTURE_BUFFER: return 1; case GL_TEXTURE_2D: case GL_TEXTURE_CUBE_MAP_ARB: From 14b574433c7faedaa18f1c946159cb03630c7d9f Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Tue, 5 Apr 2011 17:52:47 -0600 Subject: [PATCH 161/420] swrast: simplify assertion to silence warning --- src/mesa/swrast/s_aatriangle.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/src/mesa/swrast/s_aatriangle.c b/src/mesa/swrast/s_aatriangle.c index 2c02a01327f..2e8767a33d9 100644 --- a/src/mesa/swrast/s_aatriangle.c +++ b/src/mesa/swrast/s_aatriangle.c @@ -215,12 +215,7 @@ compute_coveragef(const GLfloat v0[3], const GLfloat v1[3], GLint stop = 4, i; GLfloat insideCount = 16.0F; -#ifdef DEBUG - { - const GLfloat area = dx0 * dy1 - dx1 * dy0; - ASSERT(area >= 0.0); - } -#endif + ASSERT(dx0 * dy1 - dx1 * dy0 >= 0.0); /* area >= 0.0 */ for (i = 0; i < stop; i++) { const GLfloat sx = x + samples[i][0]; From afeaf1771d0ccbd2482c5ad7fa237c50b4d3921e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Mon, 4 Apr 2011 11:41:30 +0100 Subject: [PATCH 162/420] st/python: Remove bindings, and all its dependencies. Because: - bindings are not fully automatic, and they are broken most of the time - unit tests/samples can be written in C on top of graw - tracing/retracing is more useful at API levels with stable ABIs such as GL, producing traces that cover more layers of the driver stack and and can be used for regression testing --- scons/python.py | 72 -- src/gallium/SConscript | 1 - src/gallium/drivers/trace/README | 7 +- src/gallium/state_trackers/python/README | 43 - src/gallium/state_trackers/python/SConscript | 66 -- src/gallium/state_trackers/python/gallium.i | 105 --- .../state_trackers/python/p_compiler.i | 29 - src/gallium/state_trackers/python/p_context.i | 756 ------------------ src/gallium/state_trackers/python/p_device.i | 138 ---- src/gallium/state_trackers/python/p_state.i | 186 ----- src/gallium/state_trackers/python/p_texture.i | 152 ---- src/gallium/state_trackers/python/st_device.c | 305 ------- src/gallium/state_trackers/python/st_device.h | 111 --- .../python/st_hardpipe_winsys.c | 212 ----- src/gallium/state_trackers/python/st_sample.c | 594 -------------- src/gallium/state_trackers/python/st_sample.h | 53 -- .../python/st_softpipe_winsys.c | 78 -- src/gallium/state_trackers/python/st_winsys.h | 43 - .../regress/fragment-shader/frag-abs.png | Bin 8750 -> 0 bytes src/gallium/state_trackers/python/u_format.i | 88 -- src/gallium/tests/python/retrace/README | 17 - .../tests/python/retrace/interpreter.py | 733 ----------------- src/gallium/tests/python/samples/gs.py | 254 ------ src/gallium/tests/python/samples/tri.py | 233 ------ src/gallium/tests/python/tests/.gitignore | 3 - src/gallium/tests/python/tests/base.py | 399 --------- .../tests/regress/fragment-shader/.gitignore | 1 - .../tests/regress/fragment-shader/frag-abs.sh | 13 - .../tests/regress/fragment-shader/frag-add.sh | 8 - .../regress/fragment-shader/frag-cb-1d.sh | 13 - .../regress/fragment-shader/frag-cb-2d.sh | 9 - .../tests/regress/fragment-shader/frag-dp3.sh | 8 - .../tests/regress/fragment-shader/frag-dp4.sh | 8 - .../tests/regress/fragment-shader/frag-dst.sh | 8 - .../tests/regress/fragment-shader/frag-ex2.sh | 11 - .../regress/fragment-shader/frag-face.sh | 14 - .../tests/regress/fragment-shader/frag-flr.sh | 15 - .../tests/regress/fragment-shader/frag-frc.sh | 13 - .../tests/regress/fragment-shader/frag-kil.sh | 18 - .../tests/regress/fragment-shader/frag-lg2.sh | 15 - .../tests/regress/fragment-shader/frag-lit.sh | 8 - .../tests/regress/fragment-shader/frag-lrp.sh | 11 - .../regress/fragment-shader/frag-mad-immx.sh | 10 - .../tests/regress/fragment-shader/frag-mad.sh | 11 - .../tests/regress/fragment-shader/frag-max.sh | 10 - .../tests/regress/fragment-shader/frag-min.sh | 10 - .../tests/regress/fragment-shader/frag-mov.sh | 8 - .../tests/regress/fragment-shader/frag-mul.sh | 10 - .../tests/regress/fragment-shader/frag-rcp.sh | 15 - .../tests/regress/fragment-shader/frag-rsq.sh | 15 - .../tests/regress/fragment-shader/frag-sge.sh | 13 - .../tests/regress/fragment-shader/frag-slt.sh | 13 - .../fragment-shader/frag-srcmod-abs.sh | 13 - .../fragment-shader/frag-srcmod-absneg.sh | 15 - .../fragment-shader/frag-srcmod-neg.sh | 11 - .../fragment-shader/frag-srcmod-swz.sh | 8 - .../tests/regress/fragment-shader/frag-sub.sh | 8 - .../regress/fragment-shader/frag-tempx.sh | 14 - .../tests/regress/fragment-shader/frag-xpd.sh | 8 - .../fragment-shader/fragment-shader.py | 257 ------ .../tests/regress/vertex-shader/.gitignore | 1 - .../tests/regress/vertex-shader/vert-abs.sh | 15 - .../tests/regress/vertex-shader/vert-add.sh | 13 - .../tests/regress/vertex-shader/vert-arl.sh | 23 - .../tests/regress/vertex-shader/vert-arr.sh | 23 - .../tests/regress/vertex-shader/vert-cb-1d.sh | 16 - .../tests/regress/vertex-shader/vert-cb-2d.sh | 12 - .../tests/regress/vertex-shader/vert-dp3.sh | 16 - .../tests/regress/vertex-shader/vert-dp4.sh | 16 - .../tests/regress/vertex-shader/vert-dst.sh | 11 - .../tests/regress/vertex-shader/vert-ex2.sh | 18 - .../tests/regress/vertex-shader/vert-flr.sh | 23 - .../tests/regress/vertex-shader/vert-frc.sh | 15 - .../tests/regress/vertex-shader/vert-lg2.sh | 18 - .../tests/regress/vertex-shader/vert-lit.sh | 11 - .../tests/regress/vertex-shader/vert-lrp.sh | 14 - .../tests/regress/vertex-shader/vert-mad.sh | 14 - .../tests/regress/vertex-shader/vert-max.sh | 13 - .../tests/regress/vertex-shader/vert-min.sh | 13 - .../tests/regress/vertex-shader/vert-mov.sh | 11 - .../tests/regress/vertex-shader/vert-mul.sh | 13 - .../tests/regress/vertex-shader/vert-rcp.sh | 18 - .../tests/regress/vertex-shader/vert-rsq.sh | 18 - .../tests/regress/vertex-shader/vert-sge.sh | 16 - .../tests/regress/vertex-shader/vert-slt.sh | 16 - .../regress/vertex-shader/vert-srcmod-abs.sh | 15 - .../vertex-shader/vert-srcmod-absneg.sh | 16 - .../regress/vertex-shader/vert-srcmod-neg.sh | 12 - .../regress/vertex-shader/vert-srcmod-swz.sh | 11 - .../tests/regress/vertex-shader/vert-sub.sh | 13 - .../tests/regress/vertex-shader/vert-xpd.sh | 11 - .../regress/vertex-shader/vertex-shader.py | 287 ------- .../tests/python/tests/surface_copy.py | 201 ----- .../tests/python/tests/texture_blit.py | 638 --------------- .../tests/python/tests/texture_render.py | 320 -------- .../tests/python/tests/texture_transfer.py | 182 ----- src/gallium/tests/python/tests/tree.py | 23 - .../retrace/parser.py => tools/trace/dump.py} | 0 .../python/retrace => tools/trace}/format.py | 0 .../python/retrace => tools/trace}/model.py | 3 +- .../python/retrace => tools/trace}/parse.py | 0 101 files changed, 8 insertions(+), 7401 deletions(-) delete mode 100644 scons/python.py delete mode 100644 src/gallium/state_trackers/python/README delete mode 100644 src/gallium/state_trackers/python/SConscript delete mode 100644 src/gallium/state_trackers/python/gallium.i delete mode 100644 src/gallium/state_trackers/python/p_compiler.i delete mode 100644 src/gallium/state_trackers/python/p_context.i delete mode 100644 src/gallium/state_trackers/python/p_device.i delete mode 100644 src/gallium/state_trackers/python/p_state.i delete mode 100644 src/gallium/state_trackers/python/p_texture.i delete mode 100644 src/gallium/state_trackers/python/st_device.c delete mode 100644 src/gallium/state_trackers/python/st_device.h delete mode 100644 src/gallium/state_trackers/python/st_hardpipe_winsys.c delete mode 100644 src/gallium/state_trackers/python/st_sample.c delete mode 100644 src/gallium/state_trackers/python/st_sample.h delete mode 100644 src/gallium/state_trackers/python/st_softpipe_winsys.c delete mode 100644 src/gallium/state_trackers/python/st_winsys.h delete mode 100644 src/gallium/state_trackers/python/tests/regress/fragment-shader/frag-abs.png delete mode 100644 src/gallium/state_trackers/python/u_format.i delete mode 100644 src/gallium/tests/python/retrace/README delete mode 100755 src/gallium/tests/python/retrace/interpreter.py delete mode 100644 src/gallium/tests/python/samples/gs.py delete mode 100644 src/gallium/tests/python/samples/tri.py delete mode 100644 src/gallium/tests/python/tests/.gitignore delete mode 100755 src/gallium/tests/python/tests/base.py delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/.gitignore delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-abs.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-add.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-cb-1d.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-cb-2d.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-dp3.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-dp4.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-dst.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-ex2.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-face.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-flr.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-frc.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-kil.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-lg2.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-lit.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-lrp.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-mad-immx.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-mad.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-max.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-min.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-mov.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-mul.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-rcp.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-rsq.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-sge.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-slt.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-srcmod-abs.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-srcmod-absneg.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-srcmod-neg.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-srcmod-swz.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-sub.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-tempx.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/frag-xpd.sh delete mode 100644 src/gallium/tests/python/tests/regress/fragment-shader/fragment-shader.py delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/.gitignore delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-abs.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-add.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-arl.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-arr.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-cb-1d.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-cb-2d.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-dp3.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-dp4.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-dst.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-ex2.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-flr.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-frc.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-lg2.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-lit.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-lrp.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-mad.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-max.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-min.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-mov.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-mul.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-rcp.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-rsq.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-sge.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-slt.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-srcmod-abs.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-srcmod-absneg.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-srcmod-neg.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-srcmod-swz.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-sub.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vert-xpd.sh delete mode 100644 src/gallium/tests/python/tests/regress/vertex-shader/vertex-shader.py delete mode 100755 src/gallium/tests/python/tests/surface_copy.py delete mode 100755 src/gallium/tests/python/tests/texture_blit.py delete mode 100755 src/gallium/tests/python/tests/texture_render.py delete mode 100755 src/gallium/tests/python/tests/texture_transfer.py delete mode 100755 src/gallium/tests/python/tests/tree.py rename src/gallium/{tests/python/retrace/parser.py => tools/trace/dump.py} (100%) rename src/gallium/{tests/python/retrace => tools/trace}/format.py (100%) rename src/gallium/{tests/python/retrace => tools/trace}/model.py (98%) rename src/gallium/{tests/python/retrace => tools/trace}/parse.py (100%) diff --git a/scons/python.py b/scons/python.py deleted file mode 100644 index 9e94d056e1c..00000000000 --- a/scons/python.py +++ /dev/null @@ -1,72 +0,0 @@ -"""gallium - -Frontend-tool for Gallium3D architecture. - -""" - -# -# Copyright 2008 Tungsten Graphics, Inc., Cedar Park, Texas. -# 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, 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 TUNGSTEN GRAPHICS AND/OR ITS 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. -# - - -import sys -import distutils.sysconfig -import os.path - - -def generate(env): - # See http://www.scons.org/wiki/PythonExtensions - - if sys.platform in ['win32']: - python_root = sys.prefix - python_version = '%u%u' % sys.version_info[:2] - python_include = os.path.join(python_root, 'include') - python_libs = os.path.join(python_root, 'libs') - python_lib = os.path.join(python_libs, 'python' + python_version + '.lib') - - env.Append(CPPPATH = [python_include]) - env.Append(LIBPATH = [python_libs]) - env.Append(LIBS = ['python' + python_version + '.lib']) - env.Replace(SHLIBPREFIX = '') - env.Replace(SHLIBSUFFIX = '.pyd') - - # XXX; python25_d.lib is not included in Python for windows, and - # we'll get missing symbols unless we undefine _DEBUG - cppdefines = env['CPPDEFINES'] - cppdefines = [define for define in cppdefines if define != '_DEBUG'] - env.Replace(CPPDEFINES = cppdefines) - env.AppendUnique(CPPFLAGS = ['/U_DEBUG']) - env.AppendUnique(LINKFLAGS = ['/nodefaultlib:python25_d.lib']) - else: - #env.ParseConfig('python-config --cflags --ldflags --libs') - env.AppendUnique(CPPPATH = [distutils.sysconfig.get_python_inc()]) - env.Replace(SHLIBPREFIX = '') - env.Replace(SHLIBSUFFIX = distutils.sysconfig.get_config_vars()['SO']) - - # for debugging - #print env.Dump() - - -def exists(env): - return 1 diff --git a/src/gallium/SConscript b/src/gallium/SConscript index 31580556f03..428bc31f86b 100644 --- a/src/gallium/SConscript +++ b/src/gallium/SConscript @@ -53,7 +53,6 @@ if env['drm']: # Needed by some state trackers SConscript('winsys/sw/null/SConscript') -SConscript('state_trackers/python/SConscript') if env['platform'] != 'embedded': SConscript('state_trackers/vega/SConscript') SConscript('state_trackers/egl/SConscript') diff --git a/src/gallium/drivers/trace/README b/src/gallium/drivers/trace/README index c210cba032a..cacd2e17498 100644 --- a/src/gallium/drivers/trace/README +++ b/src/gallium/drivers/trace/README @@ -13,12 +13,17 @@ It can traces all incoming calls. For tracing then do - GALLIUM_TRACE=tri.trace progs/trivial/tri + GALLIUM_TRACE=tri.trace trivial/tri which should create a tri.trace file, which is an XML file. You can view copying trace.xsl to the same directory, and opening with a XSLT capable browser such as Firefox or Internet Explorer. +For long traces you can use the + + src/gallium/tools/trace/dump.py tri.trace | less -R + + == Remote debugging == For remote debugging see: diff --git a/src/gallium/state_trackers/python/README b/src/gallium/state_trackers/python/README deleted file mode 100644 index e24a262aba9..00000000000 --- a/src/gallium/state_trackers/python/README +++ /dev/null @@ -1,43 +0,0 @@ -This directory contains Python bindings to Gallium3D. It looks like a state -tracker from the pipe driver perspective, and it looks like a pipe driver from -the python script perspective. - - -To build you'll need: -* Python (with development packages) -* SCons -* SWIG, http://www.swig.org/download.html -* Python Imaging Library with TK support, http://www.pythonware.com/products/pil/, - for the samples - -On a debian-based distro you can simply do: - - aptitude install python-dev scons swig python-imaging python-imaging-tk - -On a Windows machine ensure the swig command is in your PATH. - -Invoke scons on the top dir as - - scons debug=yes statetrackers=python drivers=softpipe winsys=none - -To use it set PYTHONPATH appropriately, e.g, in Linux do: - - export PYTHONPATH=$PWD/build/linux-x86-debug/gallium/state_trackers/python - -or (in Windows) - - set PYTHONPATH=%CD%\build\windows-x86-debug\gallium\state_trackers\python - -and then try running - - python progs/gallium/python/samples/tri.py - -which should show a triangle. - - -This is still work in progress: -- errors are not handled properly and almost always result in crash -- state atoms with array members are awkward to set - --- -Jose Fonseca diff --git a/src/gallium/state_trackers/python/SConscript b/src/gallium/state_trackers/python/SConscript deleted file mode 100644 index b8371865a61..00000000000 --- a/src/gallium/state_trackers/python/SConscript +++ /dev/null @@ -1,66 +0,0 @@ -import sys -import os.path - -Import('*') - -if env['toolchain'] == 'crossmingw': - # Cross-compilation not supported - Return() - -if not env.Detect(['swig']): - Return() - -env = env.Clone() - -env.Tool('python') - -env.Tool('swig') -env.Append(SWIGPATH = ['#src/gallium/include', '#src/gallium/include/pipe']) -env.Append(SWIGFLAGS = ['-python', '-keyword']) - -env.Append(CPPPATH = '.') - -if env['platform'] == 'windows': - env.Append(LIBS = [ - 'opengl32', - 'gdi32', - 'user32', - 'kernel32', - 'ws2_32', - ]) -else: - env.Append(CPPDEFINES = ['GCC_HASCLASSVISIBILITY']) - env.Append(LIBS = [ - 'GL', - 'X11', - ]) - -sources = [ - 'gallium.i', - 'st_device.c', - 'st_sample.c', - 'st_hardpipe_winsys.c', - 'st_softpipe_winsys.c', -] - -env.Prepend(LIBS = [ - ws_null, - trace, - gallium, -]) - -if env['llvm']: - env.Append(CPPDEFINES = ['HAVE_LLVMPIPE']) - env.Prepend(LIBS = [llvmpipe]) -if True: - env.Append(CPPDEFINES = ['HAVE_SOFTPIPE']) - env.Prepend(LIBS = [softpipe]) - -env['no_import_lib'] = 1 - -pyst = env.SharedLibrary( - target = '_gallium', - source = sources, -) - -env.Alias('python', pyst) diff --git a/src/gallium/state_trackers/python/gallium.i b/src/gallium/state_trackers/python/gallium.i deleted file mode 100644 index c6084f78aee..00000000000 --- a/src/gallium/state_trackers/python/gallium.i +++ /dev/null @@ -1,105 +0,0 @@ - /************************************************************************** - * - * Copyright 2008 Tungsten Graphics, Inc., Cedar Park, Texas. - * 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, 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 TUNGSTEN GRAPHICS AND/OR ITS 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. - * - **************************************************************************/ - -/** - * @file - * SWIG interface definion for Gallium types. - * - * @author Jose Fonseca - */ - -%module gallium; - -%{ - -#include - -#include "pipe/p_screen.h" -#include "pipe/p_context.h" -#include "pipe/p_shader_tokens.h" -#include "os/os_stream.h" -#include "util/u_inlines.h" -#include "util/u_draw_quad.h" -#include "util/u_tile.h" -#include "util/u_math.h" -#include "util/u_format.h" -#include "util/u_dump.h" -#include "util/u_memory.h" -#include "util/u_sampler.h" -#include "cso_cache/cso_context.h" -#include "tgsi/tgsi_text.h" -#include "tgsi/tgsi_dump.h" - -#include "st_device.h" -#include "st_sample.h" - -%} - -%include "typemaps.i" -%include "exception.i" -%include "cstring.i" - -%include "carrays.i" -%array_class(unsigned char, ByteArray); -%array_class(int, IntArray); -%array_class(unsigned, UnsignedArray); -%array_class(float, FloatArray); - - -%rename(Device) st_device; -%rename(Context) st_context; -%rename(Resource) pipe_resource; -%rename(Surface) st_surface; - -%rename(BlendColor) pipe_blend_color; -%rename(Blend) pipe_blend_state; -%rename(Clip) pipe_clip_state; -%rename(Depth) pipe_depth_state; -%rename(Stencil) pipe_stencil_state; -%rename(Alpha) pipe_alpha_state; -%rename(DepthStencilAlpha) pipe_depth_stencil_alpha_state; -%rename(Framebuffer) pipe_framebuffer_state; -%rename(PolyStipple) pipe_poly_stipple; -%rename(Rasterizer) pipe_rasterizer_state; -%rename(Sampler) pipe_sampler_state; -%rename(Scissor) pipe_scissor_state; -%rename(Shader) pipe_shader_state; -%rename(VertexBuffer) pipe_vertex_buffer; -%rename(VertexElement) pipe_vertex_element; -%rename(Viewport) pipe_viewport_state; - - -%include "p_compiler.i" -%include "p_defines.h" -%include "p_format.h" - -%include "p_device.i" -%include "p_context.i" -%include "p_texture.i" -%include "p_state.i" - -%include "u_format.i" diff --git a/src/gallium/state_trackers/python/p_compiler.i b/src/gallium/state_trackers/python/p_compiler.i deleted file mode 100644 index 15f6ba5b9db..00000000000 --- a/src/gallium/state_trackers/python/p_compiler.i +++ /dev/null @@ -1,29 +0,0 @@ - /************************************************************************** - * - * Copyright 2008 Tungsten Graphics, Inc., Cedar Park, Texas. - * 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, 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 TUNGSTEN GRAPHICS AND/OR ITS 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. - * - **************************************************************************/ - - -typedef unsigned char ubyte; diff --git a/src/gallium/state_trackers/python/p_context.i b/src/gallium/state_trackers/python/p_context.i deleted file mode 100644 index 17d25ad0aa6..00000000000 --- a/src/gallium/state_trackers/python/p_context.i +++ /dev/null @@ -1,756 +0,0 @@ - /************************************************************************** - * - * Copyright 2008 Tungsten Graphics, Inc., Cedar Park, Texas. - * 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, 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 TUNGSTEN GRAPHICS AND/OR ITS 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. - * - **************************************************************************/ - -/** - * @file - * SWIG interface definion for Gallium types. - * - * @author Jose Fonseca - */ - -%nodefaultctor st_context; -%nodefaultdtor st_context; - -struct st_context { -}; - -%extend st_context { - - ~st_context() { - st_context_destroy($self); - } - - /* - * State functions (create/bind/destroy state objects) - */ - - void set_blend( const struct pipe_blend_state *state ) { - cso_set_blend($self->cso, state); - } - - void set_fragment_sampler( unsigned index, const struct pipe_sampler_state *state ) { - cso_single_sampler($self->cso, index, state); - cso_single_sampler_done($self->cso); - } - - void set_vertex_sampler( unsigned index, const struct pipe_sampler_state *state ) { - cso_single_vertex_sampler($self->cso, index, state); - cso_single_vertex_sampler_done($self->cso); - } - - void set_rasterizer( const struct pipe_rasterizer_state *state ) { - cso_set_rasterizer($self->cso, state); - } - - void set_depth_stencil_alpha(const struct pipe_depth_stencil_alpha_state *state) { - cso_set_depth_stencil_alpha($self->cso, state); - } - - void set_fragment_shader( const struct pipe_shader_state *state ) { - void *fs; - - if(!state) { - cso_set_fragment_shader_handle($self->cso, NULL); - return; - } - - fs = $self->pipe->create_fs_state($self->pipe, state); - if(!fs) - return; - - if(cso_set_fragment_shader_handle($self->cso, fs) != PIPE_OK) - return; - - cso_delete_fragment_shader($self->cso, $self->fs); - $self->fs = fs; - } - - void set_vertex_shader( const struct pipe_shader_state *state ) { - void *vs; - - if(!state) { - cso_set_vertex_shader_handle($self->cso, NULL); - return; - } - - vs = $self->pipe->create_vs_state($self->pipe, state); - if(!vs) - return; - - if(cso_set_vertex_shader_handle($self->cso, vs) != PIPE_OK) - return; - - cso_delete_vertex_shader($self->cso, $self->vs); - $self->vs = vs; - } - - void set_geometry_shader( const struct pipe_shader_state *state ) { - void *gs; - - if(!state) { - cso_set_geometry_shader_handle($self->cso, NULL); - return; - } - - gs = $self->pipe->create_gs_state($self->pipe, state); - if(!gs) - return; - - if(cso_set_geometry_shader_handle($self->cso, gs) != PIPE_OK) - return; - - cso_delete_geometry_shader($self->cso, $self->gs); - $self->gs = gs; - } - - struct pipe_sampler_view * - create_sampler_view(struct pipe_resource *texture, - enum pipe_format format = PIPE_FORMAT_NONE, - unsigned first_level = 0, - unsigned last_level = ~0, - unsigned first_layer = 0, - unsigned last_layer = ~0, - unsigned swizzle_r = 0, - unsigned swizzle_g = 1, - unsigned swizzle_b = 2, - unsigned swizzle_a = 3) - { - struct pipe_context *pipe = $self->pipe; - struct pipe_sampler_view templat; - - memset(&templat, 0, sizeof templat); - if (format == PIPE_FORMAT_NONE) { - templat.format = texture->format; - } else { - templat.format = format; - } - templat.u.tex.last_level = MIN2(last_level, texture->last_level); - templat.u.tex.first_level = first_level; - templat.u.tex.first_layer = first_layer; - templat.u.tex.last_layer = last_layer; - templat.swizzle_r = swizzle_r; - templat.swizzle_g = swizzle_g; - templat.swizzle_b = swizzle_b; - templat.swizzle_a = swizzle_a; - - return pipe->create_sampler_view(pipe, texture, &templat); - } - - void - sampler_view_destroy(struct pipe_context *ctx, - struct pipe_sampler_view *view) - { - struct pipe_context *pipe = $self->pipe; - - pipe->sampler_view_destroy(pipe, view); - } - - /* - * Parameter-like state (or properties) - */ - - void set_blend_color(const struct pipe_blend_color *state ) { - cso_set_blend_color($self->cso, state); - } - - void set_stencil_ref(const struct pipe_stencil_ref *state ) { - cso_set_stencil_ref($self->cso, state); - } - - void set_clip(const struct pipe_clip_state *state ) { - $self->pipe->set_clip_state($self->pipe, state); - } - - void set_constant_buffer(unsigned shader, unsigned index, - struct pipe_resource *buffer ) - { - $self->pipe->set_constant_buffer($self->pipe, shader, index, buffer); - } - - void set_framebuffer(const struct pipe_framebuffer_state *state ) - { - memcpy(&$self->framebuffer, state, sizeof *state); - cso_set_framebuffer($self->cso, state); - } - - void set_polygon_stipple(const struct pipe_poly_stipple *state ) { - $self->pipe->set_polygon_stipple($self->pipe, state); - } - - void set_scissor(const struct pipe_scissor_state *state ) { - $self->pipe->set_scissor_state($self->pipe, state); - } - - void set_viewport(const struct pipe_viewport_state *state) { - cso_set_viewport($self->cso, state); - } - - void set_fragment_sampler_view(unsigned index, - struct pipe_sampler_view *view) - { - pipe_sampler_view_reference(&$self->fragment_sampler_views[index], view); - - $self->pipe->set_fragment_sampler_views($self->pipe, - PIPE_MAX_SAMPLERS, - $self->fragment_sampler_views); - } - - void set_vertex_sampler_view(unsigned index, - struct pipe_sampler_view *view) - { - pipe_sampler_view_reference(&$self->vertex_sampler_views[index], view); - - $self->pipe->set_vertex_sampler_views($self->pipe, - PIPE_MAX_VERTEX_SAMPLERS, - $self->vertex_sampler_views); - } - - void set_fragment_sampler_texture(unsigned index, - struct pipe_resource *texture) { - struct pipe_sampler_view templ; - - if(!texture) - texture = $self->default_texture; - pipe_sampler_view_reference(&$self->fragment_sampler_views[index], NULL); - u_sampler_view_default_template(&templ, - texture, - texture->format); - $self->fragment_sampler_views[index] = $self->pipe->create_sampler_view($self->pipe, - texture, - &templ); - $self->pipe->set_fragment_sampler_views($self->pipe, - PIPE_MAX_SAMPLERS, - $self->fragment_sampler_views); - } - - void set_vertex_sampler_texture(unsigned index, - struct pipe_resource *texture) { - struct pipe_sampler_view templ; - - if(!texture) - texture = $self->default_texture; - pipe_sampler_view_reference(&$self->vertex_sampler_views[index], NULL); - u_sampler_view_default_template(&templ, - texture, - texture->format); - $self->vertex_sampler_views[index] = $self->pipe->create_sampler_view($self->pipe, - texture, - &templ); - - $self->pipe->set_vertex_sampler_views($self->pipe, - PIPE_MAX_VERTEX_SAMPLERS, - $self->vertex_sampler_views); - } - - void set_vertex_buffer(unsigned index, - unsigned stride, - unsigned buffer_offset, - struct pipe_resource *buffer) - { - unsigned i; - struct pipe_vertex_buffer state; - - memset(&state, 0, sizeof(state)); - state.stride = stride; - state.buffer_offset = buffer_offset; - state.buffer = buffer; - - memcpy(&$self->vertex_buffers[index], &state, sizeof(state)); - - for(i = 0; i < PIPE_MAX_ATTRIBS; ++i) - if(self->vertex_buffers[i].buffer) - $self->num_vertex_buffers = i + 1; - - $self->pipe->set_vertex_buffers($self->pipe, - $self->num_vertex_buffers, - $self->vertex_buffers); - } - - void set_index_buffer(unsigned index_size, - unsigned offset, - struct pipe_resource *buffer) - { - struct pipe_index_buffer ib; - - memset(&ib, 0, sizeof(ib)); - ib.index_size = index_size; - ib.offset = offset; - ib.buffer = buffer; - - $self->pipe->set_index_buffer($self->pipe, &ib); - } - - void set_vertex_element(unsigned index, - const struct pipe_vertex_element *element) - { - memcpy(&$self->vertex_elements[index], element, sizeof(*element)); - } - - void set_vertex_elements(unsigned num) - { - $self->num_vertex_elements = num; - cso_set_vertex_elements($self->cso, - $self->num_vertex_elements, - $self->vertex_elements); - } - - /* - * Draw functions - */ - - void draw_arrays(unsigned mode, unsigned start, unsigned count) { - util_draw_arrays($self->pipe, mode, start, count); - } - - void draw_vbo(const struct pipe_draw_info *info) - { - $self->pipe->draw_vbo($self->pipe, info); - } - - void draw_vertices(unsigned prim, - unsigned num_verts, - unsigned num_attribs, - const float *vertices) - { - struct pipe_context *pipe = $self->pipe; - struct pipe_screen *screen = pipe->screen; - struct pipe_resource *vbuf; - struct pipe_transfer *transfer; - struct pipe_vertex_element velements[PIPE_MAX_ATTRIBS]; - struct pipe_vertex_buffer vbuffer; - float *map; - unsigned size; - unsigned i; - - size = num_verts * num_attribs * 4 * sizeof(float); - - vbuf = pipe_buffer_create(screen, - PIPE_BIND_VERTEX_BUFFER, - PIPE_USAGE_STATIC, - size); - if(!vbuf) - goto error1; - - map = pipe_buffer_map(pipe, vbuf, PIPE_TRANSFER_WRITE, &transfer); - if (!map) - goto error2; - memcpy(map, vertices, size); - pipe_buffer_unmap(pipe, transfer); - - cso_save_vertex_elements($self->cso); - - /* tell pipe about the vertex attributes */ - for (i = 0; i < num_attribs; i++) { - velements[i].src_offset = i * 4 * sizeof(float); - velements[i].instance_divisor = 0; - velements[i].vertex_buffer_index = 0; - velements[i].src_format = PIPE_FORMAT_R32G32B32A32_FLOAT; - } - cso_set_vertex_elements($self->cso, num_attribs, velements); - - /* tell pipe about the vertex buffer */ - memset(&vbuffer, 0, sizeof(vbuffer)); - vbuffer.buffer = vbuf; - vbuffer.stride = num_attribs * 4 * sizeof(float); /* vertex size */ - vbuffer.buffer_offset = 0; - pipe->set_vertex_buffers(pipe, 1, &vbuffer); - - /* draw */ - util_draw_arrays(pipe, prim, 0, num_verts); - - cso_restore_vertex_elements($self->cso); - -error2: - pipe_resource_reference(&vbuf, NULL); -error1: - ; - } - - void - clear(unsigned buffers, const float *rgba, double depth = 0.0f, - unsigned stencil = 0) - { - $self->pipe->clear($self->pipe, buffers, rgba, depth, stencil); - } - - void - flush(unsigned flags = 0) { - struct pipe_fence_handle *fence = NULL; - $self->pipe->flush($self->pipe, &fence); - if(fence) { - /* TODO: allow asynchronous operation */ - $self->pipe->screen->fence_finish( $self->pipe->screen, fence, PIPE_TIMEOUT_INFINITE ); - $self->pipe->screen->fence_reference( $self->pipe->screen, &fence, NULL ); - } - } - - /* - * Surface functions - */ - - void resource_copy_region(struct pipe_resource *dst, - unsigned dst_level, - unsigned dstx, unsigned dsty, unsigned dstz, - struct pipe_resource *src, - unsigned src_level, - const struct pipe_box *src_box) - { - $self->pipe->resource_copy_region($self->pipe, - dst, dst_level, dstx, dsty, dstz, - src, src_level, src_box); - } - - - void clear_render_target(struct st_surface *dst, - float *rgba, - unsigned x, unsigned y, - unsigned width, unsigned height) - { - struct pipe_surface *_dst = NULL; - - _dst = st_pipe_surface($self->pipe, dst, PIPE_BIND_RENDER_TARGET); - if(!_dst) - SWIG_exception(SWIG_ValueError, "couldn't acquire destination surface for writing"); - - $self->pipe->clear_render_target($self->pipe, _dst, rgba, x, y, width, height); - - fail: - pipe_surface_reference(&_dst, NULL); - } - - void clear_depth_stencil(struct st_surface *dst, - unsigned clear_flags, - double depth, - unsigned stencil, - unsigned x, unsigned y, - unsigned width, unsigned height) - { - struct pipe_surface *_dst = NULL; - - _dst = st_pipe_surface($self->pipe, dst, PIPE_BIND_DEPTH_STENCIL); - if(!_dst) - SWIG_exception(SWIG_ValueError, "couldn't acquire destination surface for writing"); - - $self->pipe->clear_depth_stencil($self->pipe, _dst, clear_flags, depth, stencil, - x, y, width, height); - - fail: - pipe_surface_reference(&_dst, NULL); - } - - %cstring_output_allocate_size(char **STRING, int *LENGTH, free(*$1)); - void - surface_read_raw(struct st_surface *surface, - unsigned x, unsigned y, unsigned w, unsigned h, - char **STRING, int *LENGTH) - { - struct pipe_resource *texture = surface->texture; - struct pipe_context *pipe = $self->pipe; - struct pipe_transfer *transfer; - unsigned stride; - - stride = util_format_get_stride(texture->format, w); - *LENGTH = util_format_get_nblocksy(texture->format, h) * stride; - *STRING = (char *) malloc(*LENGTH); - if(!*STRING) - return; - - transfer = pipe_get_transfer(pipe, - surface->texture, - surface->level, - surface->layer, - PIPE_TRANSFER_READ, - x, y, w, h); - if(transfer) { - pipe_get_tile_raw(pipe, transfer, 0, 0, w, h, *STRING, stride); - pipe->transfer_destroy(pipe, transfer); - } - } - - %cstring_input_binary(const char *STRING, unsigned LENGTH); - void - surface_write_raw(struct st_surface *surface, - unsigned x, unsigned y, unsigned w, unsigned h, - const char *STRING, unsigned LENGTH, unsigned stride = 0) - { - struct pipe_resource *texture = surface->texture; - struct pipe_context *pipe = $self->pipe; - struct pipe_transfer *transfer; - - if(stride == 0) - stride = util_format_get_stride(texture->format, w); - - if(LENGTH < util_format_get_nblocksy(texture->format, h) * stride) - SWIG_exception(SWIG_ValueError, "offset must be smaller than buffer size"); - - transfer = pipe_get_transfer(pipe, - surface->texture, - surface->level, - surface->layer, - PIPE_TRANSFER_WRITE, - x, y, w, h); - if(!transfer) - SWIG_exception(SWIG_MemoryError, "couldn't initiate transfer"); - - pipe_put_tile_raw(pipe, transfer, 0, 0, w, h, STRING, stride); - pipe->transfer_destroy(pipe, transfer); - - fail: - return; - } - - void - surface_read_rgba(struct st_surface *surface, - unsigned x, unsigned y, unsigned w, unsigned h, - float *rgba) - { - struct pipe_context *pipe = $self->pipe; - struct pipe_transfer *transfer; - transfer = pipe_get_transfer(pipe, - surface->texture, - surface->level, - surface->layer, - PIPE_TRANSFER_READ, - x, y, w, h); - if(transfer) { - pipe_get_tile_rgba(pipe, transfer, 0, 0, w, h, rgba); - pipe->transfer_destroy(pipe, transfer); - } - } - - void - surface_write_rgba(struct st_surface *surface, - unsigned x, unsigned y, unsigned w, unsigned h, - const float *rgba) - { - struct pipe_context *pipe = $self->pipe; - struct pipe_transfer *transfer; - transfer = pipe_get_transfer(pipe, - surface->texture, - surface->level, - surface->layer, - PIPE_TRANSFER_WRITE, - x, y, w, h); - if(transfer) { - pipe_put_tile_rgba(pipe, transfer, 0, 0, w, h, rgba); - pipe->transfer_destroy(pipe, transfer); - } - } - - %cstring_output_allocate_size(char **STRING, int *LENGTH, free(*$1)); - void - surface_read_rgba8(struct st_surface *surface, - unsigned x, unsigned y, unsigned w, unsigned h, - char **STRING, int *LENGTH) - { - struct pipe_context *pipe = $self->pipe; - struct pipe_transfer *transfer; - float *rgba; - unsigned char *rgba8; - unsigned i, j, k; - - *LENGTH = 0; - *STRING = NULL; - - if (!surface) - return; - - *LENGTH = h*w*4; - *STRING = (char *) malloc(*LENGTH); - if(!*STRING) - return; - - rgba = malloc(h*w*4*sizeof(float)); - if(!rgba) - return; - - rgba8 = (unsigned char *) *STRING; - - transfer = pipe_get_transfer(pipe, - surface->texture, - surface->level, - surface->layer, - PIPE_TRANSFER_READ, - x, y, w, h); - if(transfer) { - pipe_get_tile_rgba(pipe, transfer, 0, 0, w, h, rgba); - for(j = 0; j < h; ++j) { - for(i = 0; i < w; ++i) - for(k = 0; k <4; ++k) - rgba8[j*w*4 + i*4 + k] = float_to_ubyte(rgba[j*w*4 + i*4 + k]); - } - pipe->transfer_destroy(pipe, transfer); - } - - free(rgba); - } - - void - surface_read_z(struct st_surface *surface, - unsigned x, unsigned y, unsigned w, unsigned h, - unsigned *z) - { - struct pipe_context *pipe = $self->pipe; - struct pipe_transfer *transfer; - transfer = pipe_get_transfer(pipe, - surface->texture, - surface->level, - surface->layer, - PIPE_TRANSFER_READ, - x, y, w, h); - if(transfer) { - pipe_get_tile_z(pipe, transfer, 0, 0, w, h, z); - pipe->transfer_destroy(pipe, transfer); - } - } - - void - surface_write_z(struct st_surface *surface, - unsigned x, unsigned y, unsigned w, unsigned h, - const unsigned *z) - { - struct pipe_context *pipe = $self->pipe; - struct pipe_transfer *transfer; - transfer = pipe_get_transfer(pipe, - surface->texture, - surface->level, - surface->layer, - PIPE_TRANSFER_WRITE, - x, y, w, h); - if(transfer) { - pipe_put_tile_z(pipe, transfer, 0, 0, w, h, z); - pipe->transfer_destroy(pipe, transfer); - } - } - - void - surface_sample_rgba(struct st_surface *surface, - float *rgba, - int norm = 0) - { - st_sample_surface($self->pipe, surface, rgba, norm != 0); - } - - unsigned - surface_compare_rgba(struct st_surface *surface, - unsigned x, unsigned y, unsigned w, unsigned h, - const float *rgba, float tol = 0.0) - { - struct pipe_context *pipe = $self->pipe; - struct pipe_transfer *transfer; - float *rgba2; - const float *p1; - const float *p2; - unsigned i, j, n; - - rgba2 = MALLOC(h*w*4*sizeof(float)); - if(!rgba2) - return ~0; - - transfer = pipe_get_transfer(pipe, - surface->texture, - surface->level, - surface->layer, - PIPE_TRANSFER_READ, - x, y, w, h); - if(!transfer) { - FREE(rgba2); - return ~0; - } - - pipe_get_tile_rgba(pipe, transfer, 0, 0, w, h, rgba2); - pipe->transfer_destroy(pipe, transfer); - - p1 = rgba; - p2 = rgba2; - n = 0; - for(i = h*w; i; --i) { - unsigned differs = 0; - for(j = 4; j; --j) { - float delta = *p2++ - *p1++; - if (delta < -tol || delta > tol) - differs = 1; - } - n += differs; - } - - FREE(rgba2); - - return n; - } - - %cstring_input_binary(const char *STRING, unsigned LENGTH); - void - transfer_inline_write(struct pipe_resource *resource, - unsigned level, - unsigned usage, - const struct pipe_box *box, - const char *STRING, unsigned LENGTH, - unsigned stride, - unsigned layer_stride) - { - struct pipe_context *pipe = $self->pipe; - - pipe->transfer_inline_write(pipe, resource, level, usage, box, STRING, stride, layer_stride); - } - - %cstring_output_allocate_size(char **STRING, int *LENGTH, free(*$1)); - void buffer_read(struct pipe_resource *buffer, - char **STRING, int *LENGTH) - { - struct pipe_context *pipe = $self->pipe; - - assert(buffer->target == PIPE_BUFFER); - - *LENGTH = buffer->width0; - *STRING = (char *) malloc(buffer->width0); - if(!*STRING) - return; - - pipe_buffer_read(pipe, buffer, 0, buffer->width0, *STRING); - } - - void buffer_write(struct pipe_resource *buffer, - const char *STRING, unsigned LENGTH, unsigned offset = 0) - { - struct pipe_context *pipe = $self->pipe; - - assert(buffer->target == PIPE_BUFFER); - - if(offset > buffer->width0) - SWIG_exception(SWIG_ValueError, "offset must be smaller than buffer size"); - - if(offset + LENGTH > buffer->width0) - SWIG_exception(SWIG_ValueError, "data length must fit inside the buffer"); - - pipe_buffer_write(pipe, buffer, offset, LENGTH, STRING); - -fail: - return; - } - -}; diff --git a/src/gallium/state_trackers/python/p_device.i b/src/gallium/state_trackers/python/p_device.i deleted file mode 100644 index 61f6b3bb739..00000000000 --- a/src/gallium/state_trackers/python/p_device.i +++ /dev/null @@ -1,138 +0,0 @@ - /************************************************************************** - * - * Copyright 2008 Tungsten Graphics, Inc., Cedar Park, Texas. - * 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, 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 TUNGSTEN GRAPHICS AND/OR ITS 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. - * - **************************************************************************/ - -/** - * @file - * SWIG interface definion for Gallium types. - * - * @author Jose Fonseca - */ - - -%nodefaultctor st_device; -%nodefaultdtor st_device; - - -struct st_device { -}; - -%newobject st_device::texture_create; -%newobject st_device::context_create; -%newobject st_device::buffer_create; - -%extend st_device { - - st_device(int hardware = 1) { - return st_device_create(hardware ? TRUE : FALSE); - } - - ~st_device() { - st_device_destroy($self); - } - - const char * get_name( void ) { - return $self->screen->get_name($self->screen); - } - - const char * get_vendor( void ) { - return $self->screen->get_vendor($self->screen); - } - - /** - * Query an integer-valued capability/parameter/limit - * \param param one of PIPE_CAP_x - */ - int get_param( int param ) { - return $self->screen->get_param($self->screen, param); - } - - /** - * Query a float-valued capability/parameter/limit - * \param param one of PIPE_CAP_x - */ - float get_paramf( int param ) { - return $self->screen->get_paramf($self->screen, param); - } - - /** - * Check if the given pipe_format is supported as a texture or - * drawing surface. - * \param bind bitmask of PIPE_BIND flags - */ - int is_format_supported( enum pipe_format format, - enum pipe_texture_target target, - unsigned sample_count, - unsigned bind ) { - /* We can't really display surfaces with the python statetracker so mask - * out that usage */ - bind &= ~PIPE_BIND_DISPLAY_TARGET; - - return $self->screen->is_format_supported( $self->screen, - format, - target, - sample_count, - bind ); - } - - struct st_context * - context_create(void) { - return st_context_create($self); - } - - struct pipe_resource * - resource_create( - enum pipe_format format, - unsigned width, - unsigned height, - unsigned depth = 1, - unsigned last_level = 0, - enum pipe_texture_target target = PIPE_TEXTURE_2D, - unsigned bind = 0 - ) { - struct pipe_resource templat; - - /* We can't really display surfaces with the python statetracker so mask - * out that usage */ - bind &= ~PIPE_BIND_DISPLAY_TARGET; - - memset(&templat, 0, sizeof(templat)); - templat.format = format; - templat.width0 = width; - templat.height0 = height; - templat.depth0 = depth; - templat.last_level = last_level; - templat.target = target; - templat.bind = bind; - - return $self->screen->resource_create($self->screen, &templat); - } - - struct pipe_resource * - buffer_create(unsigned size, unsigned usage, unsigned bind = 0) { - return pipe_buffer_create($self->screen, bind, usage, size); - } -}; diff --git a/src/gallium/state_trackers/python/p_state.i b/src/gallium/state_trackers/python/p_state.i deleted file mode 100644 index 0537557661d..00000000000 --- a/src/gallium/state_trackers/python/p_state.i +++ /dev/null @@ -1,186 +0,0 @@ - /************************************************************************** - * - * Copyright 2008 Tungsten Graphics, Inc., Cedar Park, Texas. - * 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, 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 TUNGSTEN GRAPHICS AND/OR ITS 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. - * - **************************************************************************/ - -/** - * @file - * SWIG interface definion for Gallium types. - * - * @author Jose Fonseca - */ - -%module gallium; - -%ignore winsys; -%ignore pipe_vertex_buffer::buffer; - -%include "pipe/p_compiler.h"; -%include "pipe/p_state.h"; - - -%array_class(struct pipe_stencil_state, StencilArray); - - -%extend pipe_rt_blend_state -{ - struct pipe_rt_blend_state * - __getitem__(int index) - { - if(index < 0 || index >= PIPE_MAX_COLOR_BUFS) - SWIG_exception(SWIG_ValueError, "index out of bounds"); - return $self + index; - fail: - return NULL; - }; -}; - - -%extend pipe_blend_state -{ - pipe_blend_state(void) - { - return CALLOC_STRUCT(pipe_blend_state); - } - - %cstring_input_binary(const char *STRING, unsigned LENGTH); - pipe_blend_state(const char *STRING, unsigned LENGTH) - { - struct pipe_blend_state *state; - state = CALLOC_STRUCT(pipe_blend_state); - if (state) { - LENGTH = MIN2(sizeof *state, LENGTH); - memcpy(state, STRING, LENGTH); - } - return state; - } - - %cstring_output_allocate_size(char **STRING, int *LENGTH, os_free(*$1)); - void __str__(char **STRING, int *LENGTH) - { - struct os_stream *stream; - - stream = os_str_stream_create(1); - util_dump_blend_state(stream, $self); - - *STRING = os_str_stream_get_and_close(stream); - *LENGTH = strlen(*STRING); - } -}; - - -%extend pipe_framebuffer_state { - - pipe_framebuffer_state(void) { - return CALLOC_STRUCT(pipe_framebuffer_state); - } - - ~pipe_framebuffer_state() { - unsigned index; - for(index = 0; index < PIPE_MAX_COLOR_BUFS; ++index) - pipe_surface_reference(&$self->cbufs[index], NULL); - pipe_surface_reference(&$self->zsbuf, NULL); - FREE($self); - } - - void - set_cbuf(unsigned index, struct st_surface *surface) - { - struct pipe_surface *_surface = NULL; - - if(index >= PIPE_MAX_COLOR_BUFS) - SWIG_exception(SWIG_ValueError, "index out of bounds"); - - if(surface) { - /* XXX need a context here */ - _surface = st_pipe_surface(NULL, surface, PIPE_BIND_RENDER_TARGET); - if(!_surface) - SWIG_exception(SWIG_ValueError, "couldn't acquire surface for writing"); - } - - pipe_surface_reference(&$self->cbufs[index], _surface); - - fail: - return; - } - - void - set_zsbuf(struct st_surface *surface) - { - struct pipe_surface *_surface = NULL; - - if(surface) { - /* XXX need a context here */ - _surface = st_pipe_surface(NULL, surface, PIPE_BIND_DEPTH_STENCIL); - if(!_surface) - SWIG_exception(SWIG_ValueError, "couldn't acquire surface for writing"); - } - - pipe_surface_reference(&$self->zsbuf, _surface); - - fail: - return; - } - -}; - - -%extend pipe_shader_state { - - pipe_shader_state(const char *text, unsigned num_tokens = 1024) { - struct tgsi_token *tokens; - struct pipe_shader_state *shader; - - tokens = MALLOC(num_tokens * sizeof(struct tgsi_token)); - if(!tokens) - goto error1; - - if(tgsi_text_translate(text, tokens, num_tokens ) != TRUE) - goto error2; - - shader = CALLOC_STRUCT(pipe_shader_state); - if(!shader) - goto error3; - - shader->tokens = tokens; - - return shader; - -error3: -error2: - FREE(tokens); -error1: - return NULL; - } - - ~pipe_shader_state() { - FREE((void*)$self->tokens); - FREE($self); - } - - void dump(unsigned flags = 0) { - tgsi_dump($self->tokens, flags); - } -} diff --git a/src/gallium/state_trackers/python/p_texture.i b/src/gallium/state_trackers/python/p_texture.i deleted file mode 100644 index 1f4b4fd596b..00000000000 --- a/src/gallium/state_trackers/python/p_texture.i +++ /dev/null @@ -1,152 +0,0 @@ - /************************************************************************** - * - * Copyright 2008 Tungsten Graphics, Inc., Cedar Park, Texas. - * 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, 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 TUNGSTEN GRAPHICS AND/OR ITS 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. - * - **************************************************************************/ - -/** - * @file - * SWIG interface definion for Gallium types. - * - * @author Jose Fonseca - */ - - -%nodefaultctor pipe_resource; -%nodefaultctor st_surface; - -%nodefaultdtor pipe_resource; -%nodefaultdtor st_surface; - -%ignore pipe_resource::screen; - -%immutable st_surface::texture; -%immutable st_surface::level; -%immutable st_surface::layer; - -%newobject pipe_resource::get_surface; - -/* Avoid naming conflict with p_inlines.h's pipe_buffer_read/write */ -%rename(read) read_; -%rename(write) write_; - -%extend pipe_resource { - - ~pipe_resource() { - struct pipe_resource *ptr = $self; - pipe_resource_reference(&ptr, NULL); - } - - unsigned get_width(unsigned level=0) { - return u_minify($self->width0, level); - } - - unsigned get_height(unsigned level=0) { - return u_minify($self->height0, level); - } - - unsigned get_depth(unsigned level=0) { - return u_minify($self->depth0, level); - } - - /** Get a surface which is a "view" into a texture */ - struct st_surface * - get_surface(unsigned level=0, unsigned layer=0) - { - struct st_surface *surface; - - if(level > $self->last_level) - SWIG_exception(SWIG_ValueError, "level out of bounds"); - if(layer >= ($self->target == PIPE_TEXTURE_3D ? - u_minify($self->depth0, level) : $self->depth0)) - SWIG_exception(SWIG_ValueError, "layer out of bounds"); - - surface = CALLOC_STRUCT(st_surface); - if(!surface) - return NULL; - - pipe_resource_reference(&surface->texture, $self); - surface->level = level; - surface->layer = layer; - - return surface; - - fail: - return NULL; - } - - unsigned __len__(void) - { - assert($self->target == PIPE_BUFFER); - assert(p_atomic_read(&$self->reference.count) > 0); - return $self->width0; - } - -}; - -struct st_surface -{ - %immutable; - - struct pipe_resource *texture; - unsigned level; - unsigned layer; - -}; - -%extend st_surface { - - %immutable; - - unsigned format; - unsigned width; - unsigned height; - - ~st_surface() { - pipe_resource_reference(&$self->texture, NULL); - FREE($self); - } - - -}; - -%{ - static enum pipe_format - st_surface_format_get(struct st_surface *surface) - { - return surface->texture->format; - } - - static unsigned - st_surface_width_get(struct st_surface *surface) - { - return u_minify(surface->texture->width0, surface->level); - } - - static unsigned - st_surface_height_get(struct st_surface *surface) - { - return u_minify(surface->texture->height0, surface->level); - } -%} diff --git a/src/gallium/state_trackers/python/st_device.c b/src/gallium/state_trackers/python/st_device.c deleted file mode 100644 index d0a4295c7a2..00000000000 --- a/src/gallium/state_trackers/python/st_device.c +++ /dev/null @@ -1,305 +0,0 @@ -/************************************************************************** - * - * Copyright 2008 Tungsten Graphics, Inc., Cedar Park, Texas. - * 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, 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 TUNGSTEN GRAPHICS AND/OR ITS 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. - * - **************************************************************************/ - - -#include "pipe/p_screen.h" -#include "pipe/p_context.h" -#include "pipe/p_shader_tokens.h" -#include "util/u_inlines.h" -#include "cso_cache/cso_context.h" -#include "util/u_math.h" -#include "util/u_memory.h" -#include "util/u_sampler.h" -#include "util/u_simple_shaders.h" -#include "trace/tr_public.h" - -#include "st_device.h" -#include "st_winsys.h" - - -static void -st_device_really_destroy(struct st_device *st_dev) -{ - if(st_dev->screen) { - /* FIXME: Don't really destroy until we keep track of every single - * reference or we end up causing a segmentation fault every time - * python exits. */ -#if 0 - st_dev->screen->destroy(st_dev->screen); -#endif - } - - FREE(st_dev); -} - - -static void -st_device_reference(struct st_device **ptr, struct st_device *st_dev) -{ - struct st_device *old_dev = *ptr; - - if (pipe_reference(&(*ptr)->reference, &st_dev->reference)) - st_device_really_destroy(old_dev); - *ptr = st_dev; -} - - -void -st_device_destroy(struct st_device *st_dev) -{ - st_device_reference(&st_dev, NULL); -} - - -struct st_device * -st_device_create(boolean hardware) -{ - struct pipe_screen *screen; - struct st_device *st_dev; - - if (hardware) - screen = st_hardware_screen_create(); - else - screen = st_software_screen_create("softpipe"); - - screen = trace_screen_create(screen); - if (!screen) - goto no_screen; - - st_dev = CALLOC_STRUCT(st_device); - if (!st_dev) - goto no_device; - - pipe_reference_init(&st_dev->reference, 1); - st_dev->screen = screen; - - return st_dev; - -no_device: - screen->destroy(screen); -no_screen: - return NULL; -} - - -void -st_context_destroy(struct st_context *st_ctx) -{ - unsigned i; - - if(st_ctx) { - struct st_device *st_dev = st_ctx->st_dev; - - if(st_ctx->cso) { - cso_delete_vertex_shader(st_ctx->cso, st_ctx->vs); - cso_delete_fragment_shader(st_ctx->cso, st_ctx->fs); - - cso_destroy_context(st_ctx->cso); - } - - if(st_ctx->pipe) - st_ctx->pipe->destroy(st_ctx->pipe); - - for(i = 0; i < PIPE_MAX_SAMPLERS; ++i) - pipe_sampler_view_reference(&st_ctx->fragment_sampler_views[i], NULL); - for(i = 0; i < PIPE_MAX_VERTEX_SAMPLERS; ++i) - pipe_sampler_view_reference(&st_ctx->vertex_sampler_views[i], NULL); - pipe_resource_reference(&st_ctx->default_texture, NULL); - - FREE(st_ctx); - - st_device_reference(&st_dev, NULL); - } -} - - -struct st_context * -st_context_create(struct st_device *st_dev) -{ - struct st_context *st_ctx; - - st_ctx = CALLOC_STRUCT(st_context); - if(!st_ctx) - return NULL; - - st_device_reference(&st_ctx->st_dev, st_dev); - - st_ctx->pipe = st_dev->screen->context_create(st_dev->screen, NULL); - if(!st_ctx->pipe) { - st_context_destroy(st_ctx); - return NULL; - } - - st_ctx->cso = cso_create_context(st_ctx->pipe); - if(!st_ctx->cso) { - st_context_destroy(st_ctx); - return NULL; - } - - /* disabled blending/masking */ - { - struct pipe_blend_state blend; - memset(&blend, 0, sizeof(blend)); - blend.rt[0].rgb_src_factor = PIPE_BLENDFACTOR_ONE; - blend.rt[0].alpha_src_factor = PIPE_BLENDFACTOR_ONE; - blend.rt[0].rgb_dst_factor = PIPE_BLENDFACTOR_ZERO; - blend.rt[0].alpha_dst_factor = PIPE_BLENDFACTOR_ZERO; - blend.rt[0].colormask = PIPE_MASK_RGBA; - cso_set_blend(st_ctx->cso, &blend); - } - - /* no-op depth/stencil/alpha */ - { - struct pipe_depth_stencil_alpha_state depthstencil; - memset(&depthstencil, 0, sizeof(depthstencil)); - cso_set_depth_stencil_alpha(st_ctx->cso, &depthstencil); - } - - /* rasterizer */ - { - struct pipe_rasterizer_state rasterizer; - memset(&rasterizer, 0, sizeof(rasterizer)); - rasterizer.cull_face = PIPE_FACE_NONE; - cso_set_rasterizer(st_ctx->cso, &rasterizer); - } - - /* clip */ - { - struct pipe_clip_state clip; - memset(&clip, 0, sizeof(clip)); - st_ctx->pipe->set_clip_state(st_ctx->pipe, &clip); - } - - /* identity viewport */ - { - struct pipe_viewport_state viewport; - viewport.scale[0] = 1.0; - viewport.scale[1] = 1.0; - viewport.scale[2] = 1.0; - viewport.scale[3] = 1.0; - viewport.translate[0] = 0.0; - viewport.translate[1] = 0.0; - viewport.translate[2] = 0.0; - viewport.translate[3] = 0.0; - cso_set_viewport(st_ctx->cso, &viewport); - } - - /* samplers */ - { - struct pipe_sampler_state sampler; - unsigned i; - memset(&sampler, 0, sizeof(sampler)); - sampler.wrap_s = PIPE_TEX_WRAP_CLAMP_TO_EDGE; - sampler.wrap_t = PIPE_TEX_WRAP_CLAMP_TO_EDGE; - sampler.wrap_r = PIPE_TEX_WRAP_CLAMP_TO_EDGE; - sampler.min_mip_filter = PIPE_TEX_MIPFILTER_NEAREST; - sampler.min_img_filter = PIPE_TEX_MIPFILTER_NEAREST; - sampler.mag_img_filter = PIPE_TEX_MIPFILTER_NEAREST; - sampler.normalized_coords = 1; - for (i = 0; i < PIPE_MAX_SAMPLERS; i++) - cso_single_sampler(st_ctx->cso, i, &sampler); - cso_single_sampler_done(st_ctx->cso); - } - - /* default textures */ - { - struct pipe_context *pipe = st_ctx->pipe; - struct pipe_screen *screen = st_dev->screen; - struct pipe_resource templat; - struct pipe_sampler_view view_templ; - struct pipe_sampler_view *view; - unsigned i; - - memset( &templat, 0, sizeof( templat ) ); - templat.target = PIPE_TEXTURE_2D; - templat.format = PIPE_FORMAT_B8G8R8A8_UNORM; - templat.width0 = 1; - templat.height0 = 1; - templat.depth0 = 1; - templat.array_size = 1; - templat.last_level = 0; - templat.bind = PIPE_BIND_SAMPLER_VIEW; - - st_ctx->default_texture = screen->resource_create( screen, &templat ); - if(st_ctx->default_texture) { - struct pipe_box box; - uint32_t zero = 0; - - u_box_origin_2d( 1, 1, &box ); - - pipe->transfer_inline_write(pipe, - st_ctx->default_texture, - 0, - PIPE_TRANSFER_WRITE, - &box, - &zero, - sizeof zero, - 0); - } - - u_sampler_view_default_template(&view_templ, - st_ctx->default_texture, - st_ctx->default_texture->format); - view = st_ctx->pipe->create_sampler_view(st_ctx->pipe, - st_ctx->default_texture, - &view_templ); - - for (i = 0; i < PIPE_MAX_SAMPLERS; i++) - pipe_sampler_view_reference(&st_ctx->fragment_sampler_views[i], view); - for (i = 0; i < PIPE_MAX_VERTEX_SAMPLERS; i++) - pipe_sampler_view_reference(&st_ctx->vertex_sampler_views[i], view); - - st_ctx->pipe->set_fragment_sampler_views(st_ctx->pipe, - PIPE_MAX_SAMPLERS, - st_ctx->fragment_sampler_views); - st_ctx->pipe->set_vertex_sampler_views(st_ctx->pipe, - PIPE_MAX_VERTEX_SAMPLERS, - st_ctx->vertex_sampler_views); - - pipe_sampler_view_reference(&view, NULL); - } - - /* vertex shader */ - { - const uint semantic_names[] = { TGSI_SEMANTIC_POSITION, - TGSI_SEMANTIC_GENERIC }; - const uint semantic_indexes[] = { 0, 0 }; - st_ctx->vs = util_make_vertex_passthrough_shader(st_ctx->pipe, - 2, - semantic_names, - semantic_indexes); - cso_set_vertex_shader_handle(st_ctx->cso, st_ctx->vs); - } - - /* fragment shader */ - { - st_ctx->fs = util_make_fragment_passthrough_shader(st_ctx->pipe); - cso_set_fragment_shader_handle(st_ctx->cso, st_ctx->fs); - } - - return st_ctx; -} diff --git a/src/gallium/state_trackers/python/st_device.h b/src/gallium/state_trackers/python/st_device.h deleted file mode 100644 index 53e2556cb0d..00000000000 --- a/src/gallium/state_trackers/python/st_device.h +++ /dev/null @@ -1,111 +0,0 @@ -/************************************************************************** - * - * Copyright 2008 Tungsten Graphics, Inc., Cedar Park, Texas. - * 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, 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 TUNGSTEN GRAPHICS AND/OR ITS 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. - * - **************************************************************************/ - - -#ifndef ST_DEVICE_H_ -#define ST_DEVICE_H_ - - -#include "pipe/p_state.h" - -struct cso_context; -struct pipe_screen; -struct pipe_context; -struct st_winsys; - - -struct st_surface -{ - struct pipe_resource *texture; - unsigned level; - unsigned layer; -}; - - -struct st_context -{ - struct st_device *st_dev; - - struct pipe_context *pipe; - - struct cso_context *cso; - - void *vs; - void *fs; - void *gs; - - struct pipe_resource *default_texture; - struct pipe_sampler_view *fragment_sampler_views[PIPE_MAX_SAMPLERS]; - struct pipe_sampler_view *vertex_sampler_views[PIPE_MAX_VERTEX_SAMPLERS]; - - unsigned num_vertex_buffers; - struct pipe_vertex_buffer vertex_buffers[PIPE_MAX_ATTRIBS]; - - unsigned num_vertex_elements; - struct pipe_vertex_element vertex_elements[PIPE_MAX_ATTRIBS]; - - struct pipe_framebuffer_state framebuffer; -}; - - -struct st_device -{ - /* FIXME: we also need to refcount for textures and surfaces... */ - struct pipe_reference reference; - - struct pipe_screen *screen; -}; - - -static INLINE struct pipe_surface * -st_pipe_surface(struct pipe_context *pipe, struct st_surface *surface, unsigned usage) -{ - struct pipe_resource *texture = surface->texture; - struct pipe_surface surf_tmpl; - memset(&surf_tmpl, 0, sizeof(surf_tmpl)); - surf_tmpl.format = texture->format; - surf_tmpl.usage = usage; - surf_tmpl.u.tex.level = surface->level; - surf_tmpl.u.tex.first_layer = surface->layer; - surf_tmpl.u.tex.last_layer = surface->layer; - return pipe->create_surface(pipe, texture, &surf_tmpl); -} - -struct st_context * -st_context_create(struct st_device *st_dev); - -void -st_context_destroy(struct st_context *st_ctx); - -struct st_device * -st_device_create(boolean hardware); - -void -st_device_destroy(struct st_device *st_dev); - - -#endif /* ST_DEVICE_H_ */ diff --git a/src/gallium/state_trackers/python/st_hardpipe_winsys.c b/src/gallium/state_trackers/python/st_hardpipe_winsys.c deleted file mode 100644 index c6743dbd9c4..00000000000 --- a/src/gallium/state_trackers/python/st_hardpipe_winsys.c +++ /dev/null @@ -1,212 +0,0 @@ -/************************************************************************** - * - * Copyright 2008 Tungsten Graphics, Inc., Bismarck, ND., USA - * 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, 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 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 - * THE COPYRIGHT HOLDERS, AUTHORS AND/OR ITS 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. - * - * The above copyright notice and this permission notice (including the - * next paragraph) shall be included in all copies or substantial portions - * of the Software. - * - * - **************************************************************************/ - -/** - * @file - * Get a hardware accelerated Gallium screen/context from the OpenGL driver. - */ - - -#include "pipe/p_compiler.h" - -#ifdef PIPE_OS_WINDOWS -#include -#include -#else -#include -#include -#include -#include -#endif - -#include "st_winsys.h" - - -typedef struct pipe_screen * (GLAPIENTRY *PFNGETGALLIUMSCREENMESAPROC) (void); -typedef struct pipe_context * (GLAPIENTRY* PFNCREATEGALLIUMCONTEXTMESAPROC) (void); - -static PFNGETGALLIUMSCREENMESAPROC pfnGetGalliumScreenMESA = NULL; -static PFNCREATEGALLIUMCONTEXTMESAPROC pfnCreateGalliumContextMESA = NULL; - - -#ifdef PIPE_OS_WINDOWS - -static INLINE boolean -st_hardpipe_load(void) -{ - WNDCLASS wc; - HWND hwnd; - HGLRC hglrc; - HDC hdc; - PIXELFORMATDESCRIPTOR pfd; - int iPixelFormat; - - if(pfnGetGalliumScreenMESA && pfnCreateGalliumContextMESA) - return TRUE; - - memset(&wc, 0, sizeof wc); - wc.lpfnWndProc = DefWindowProc; - wc.lpszClassName = "gallium"; - wc.style = CS_OWNDC | CS_HREDRAW | CS_VREDRAW; - RegisterClass(&wc); - - hwnd = CreateWindow(wc.lpszClassName, "gallium", 0, 0, 0, 0, 0, NULL, 0, wc.hInstance, NULL); - if (!hwnd) - return FALSE; - - hdc = GetDC(hwnd); - if (!hdc) - return FALSE; - - pfd.cColorBits = 3; - pfd.cRedBits = 1; - pfd.cGreenBits = 1; - pfd.cBlueBits = 1; - pfd.dwFlags = PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL; - pfd.iLayerType = PFD_MAIN_PLANE; - pfd.iPixelType = PFD_TYPE_RGBA; - pfd.nSize = sizeof(pfd); - pfd.nVersion = 1; - - iPixelFormat = ChoosePixelFormat(hdc, &pfd); - if (!iPixelFormat) { - pfd.dwFlags |= PFD_DOUBLEBUFFER; - iPixelFormat = ChoosePixelFormat(hdc, &pfd); - } - if (!iPixelFormat) - return FALSE; - - SetPixelFormat(hdc, iPixelFormat, &pfd); - hglrc = wglCreateContext(hdc); - if (!hglrc) - return FALSE; - - if (!wglMakeCurrent(hdc, hglrc)) - return FALSE; - - pfnGetGalliumScreenMESA = (PFNGETGALLIUMSCREENMESAPROC)wglGetProcAddress("wglGetGalliumScreenMESA"); - if(!pfnGetGalliumScreenMESA) - return FALSE; - - pfnCreateGalliumContextMESA = (PFNCREATEGALLIUMCONTEXTMESAPROC)wglGetProcAddress("wglCreateGalliumContextMESA"); - if(!pfnCreateGalliumContextMESA) - return FALSE; - - DestroyWindow(hwnd); - - return TRUE; -} - -#else - -static INLINE boolean -st_hardpipe_load(void) -{ - Display *dpy; - int scrnum; - Window root; - int attribSingle[] = { - GLX_RGBA, - GLX_RED_SIZE, 1, - GLX_GREEN_SIZE, 1, - GLX_BLUE_SIZE, 1, - None }; - int attribDouble[] = { - GLX_RGBA, - GLX_RED_SIZE, 1, - GLX_GREEN_SIZE, 1, - GLX_BLUE_SIZE, 1, - GLX_DOUBLEBUFFER, - None }; - XVisualInfo *visinfo; - GLXContext ctx = NULL; - XSetWindowAttributes attr; - unsigned long mask; - int width = 100, height = 100; - Window win; - - dpy = XOpenDisplay(NULL); - if (!dpy) - return FALSE; - - scrnum = 0; - - root = RootWindow(dpy, scrnum); - - visinfo = glXChooseVisual(dpy, scrnum, attribSingle); - if (!visinfo) - visinfo = glXChooseVisual(dpy, scrnum, attribDouble); - if (!visinfo) - return FALSE; - - ctx = glXCreateContext( dpy, visinfo, NULL, True ); - - if (!ctx) - return FALSE; - - attr.background_pixel = 0; - attr.border_pixel = 0; - attr.colormap = XCreateColormap(dpy, root, visinfo->visual, AllocNone); - attr.event_mask = StructureNotifyMask | ExposureMask; - - mask = CWBackPixel | CWBorderPixel | CWColormap | CWEventMask; - - win = XCreateWindow(dpy, root, 0, 0, width, height, - 0, visinfo->depth, InputOutput, - visinfo->visual, mask, &attr); - - if (!glXMakeCurrent(dpy, win, ctx)) - return FALSE; - - pfnGetGalliumScreenMESA = (PFNGETGALLIUMSCREENMESAPROC)glXGetProcAddressARB((const GLubyte *)"glXGetGalliumScreenMESA"); - if(!pfnGetGalliumScreenMESA) - return FALSE; - - pfnCreateGalliumContextMESA = (PFNCREATEGALLIUMCONTEXTMESAPROC)glXGetProcAddressARB((const GLubyte *)"glXCreateGalliumContextMESA"); - if(!pfnCreateGalliumContextMESA) - return FALSE; - - glXDestroyContext(dpy, ctx); - XFree(visinfo); - XDestroyWindow(dpy, win); - XCloseDisplay(dpy); - - return TRUE; -} - -#endif - - -struct pipe_screen * -st_hardware_screen_create(void) -{ - if(st_hardpipe_load()) - return pfnGetGalliumScreenMESA(); - else - return st_software_screen_create(NULL); -} diff --git a/src/gallium/state_trackers/python/st_sample.c b/src/gallium/state_trackers/python/st_sample.c deleted file mode 100644 index cac9a1a6204..00000000000 --- a/src/gallium/state_trackers/python/st_sample.c +++ /dev/null @@ -1,594 +0,0 @@ -/************************************************************************** - * - * Copyright 2008 Tungsten Graphics, Inc., Cedar Park, Texas. - * 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, 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 TUNGSTEN GRAPHICS AND/OR ITS 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. - * - **************************************************************************/ - - -#include "pipe/p_compiler.h" -#include "pipe/p_format.h" -#include "pipe/p_state.h" -#include "util/u_inlines.h" -#include "util/u_format.h" -#include "util/u_tile.h" -#include "util/u_math.h" -#include "util/u_memory.h" - -#include "st_device.h" -#include "st_sample.h" - - -/** - * Use our own pseudo random generator to ensure consistent runs among - * multiple runs and platforms. - * - * @sa http://en.wikipedia.org/wiki/Linear_congruential_generator - */ -static uint32_t st_random(void) { - static uint64_t seed = UINT64_C(0xbb9a063afb0a739d); - - seed = UINT64_C(134775813) * seed + UINT64_C(1); - - return (uint32_t)(seed >> 32); -} - - -/** - * We don't want to include the patent-encumbered DXT code here, so instead - * we store several uncompressed/compressed data pairs for hardware testing - * purposes. - */ -struct dxt_data -{ - uint8_t rgba[16*4]; - uint8_t raw[16]; -}; - - -static const struct dxt_data -dxt1_rgb_data[] = { - { - { - 0x99, 0xb0, 0x8e, 0xff, - 0x5d, 0x62, 0x89, 0xff, - 0x99, 0xb0, 0x8e, 0xff, - 0x99, 0xb0, 0x8e, 0xff, - 0xd6, 0xff, 0x94, 0xff, - 0x5d, 0x62, 0x89, 0xff, - 0x99, 0xb0, 0x8e, 0xff, - 0xd6, 0xff, 0x94, 0xff, - 0x5d, 0x62, 0x89, 0xff, - 0x5d, 0x62, 0x89, 0xff, - 0x99, 0xb0, 0x8e, 0xff, - 0x21, 0x14, 0x84, 0xff, - 0x5d, 0x62, 0x89, 0xff, - 0x21, 0x14, 0x84, 0xff, - 0x21, 0x14, 0x84, 0xff, - 0x99, 0xb0, 0x8e, 0xff - }, - {0xf2, 0xd7, 0xb0, 0x20, 0xae, 0x2c, 0x6f, 0x97} - }, - { - { - 0xb5, 0xcf, 0x9c, 0xff, - 0x83, 0x8c, 0x8b, 0xff, - 0x21, 0x08, 0x6b, 0xff, - 0x83, 0x8c, 0x8b, 0xff, - 0x52, 0x4a, 0x7b, 0xff, - 0x83, 0x8c, 0x8b, 0xff, - 0x83, 0x8c, 0x8b, 0xff, - 0xb5, 0xcf, 0x9c, 0xff, - 0x21, 0x08, 0x6b, 0xff, - 0xb5, 0xcf, 0x9c, 0xff, - 0x83, 0x8c, 0x8b, 0xff, - 0x52, 0x4a, 0x7b, 0xff, - 0xb5, 0xcf, 0x9c, 0xff, - 0x83, 0x8c, 0x8b, 0xff, - 0x52, 0x4a, 0x7b, 0xff, - 0x83, 0x8c, 0x8b, 0xff - }, - {0x73, 0xb6, 0x4d, 0x20, 0x98, 0x2b, 0xe1, 0xb8} - }, - { - { - 0x00, 0x2c, 0xff, 0xff, - 0x94, 0x8d, 0x7b, 0xff, - 0x4a, 0x5c, 0xbd, 0xff, - 0x4a, 0x5c, 0xbd, 0xff, - 0x4a, 0x5c, 0xbd, 0xff, - 0x94, 0x8d, 0x7b, 0xff, - 0x94, 0x8d, 0x7b, 0xff, - 0x94, 0x8d, 0x7b, 0xff, - 0xde, 0xbe, 0x39, 0xff, - 0x94, 0x8d, 0x7b, 0xff, - 0xde, 0xbe, 0x39, 0xff, - 0xde, 0xbe, 0x39, 0xff, - 0xde, 0xbe, 0x39, 0xff, - 0xde, 0xbe, 0x39, 0xff, - 0xde, 0xbe, 0x39, 0xff, - 0x94, 0x8d, 0x7b, 0xff - }, - {0xe7, 0xdd, 0x7f, 0x01, 0xf9, 0xab, 0x08, 0x80} - }, - { - { - 0x6b, 0x24, 0x21, 0xff, - 0x7b, 0x4f, 0x5d, 0xff, - 0x7b, 0x4f, 0x5d, 0xff, - 0x8b, 0x7a, 0x99, 0xff, - 0x7b, 0x4f, 0x5d, 0xff, - 0x7b, 0x4f, 0x5d, 0xff, - 0x6b, 0x24, 0x21, 0xff, - 0x8b, 0x7a, 0x99, 0xff, - 0x9c, 0xa6, 0xd6, 0xff, - 0x6b, 0x24, 0x21, 0xff, - 0x7b, 0x4f, 0x5d, 0xff, - 0x8b, 0x7a, 0x99, 0xff, - 0x6b, 0x24, 0x21, 0xff, - 0x8b, 0x7a, 0x99, 0xff, - 0x7b, 0x4f, 0x5d, 0xff, - 0x9c, 0xa6, 0xd6, 0xff - }, - {0x3a, 0x9d, 0x24, 0x69, 0xbd, 0x9f, 0xb4, 0x39} - } -}; - - -static const struct dxt_data -dxt1_rgba_data[] = { - { - { - 0x00, 0x00, 0x00, 0x00, - 0x4e, 0xaa, 0x90, 0xff, - 0x4e, 0xaa, 0x90, 0xff, - 0x00, 0x00, 0x00, 0x00, - 0x4e, 0xaa, 0x90, 0xff, - 0x29, 0xff, 0xff, 0xff, - 0x00, 0x00, 0x00, 0x00, - 0x4e, 0xaa, 0x90, 0xff, - 0x73, 0x55, 0x21, 0xff, - 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, - 0x4e, 0xaa, 0x90, 0xff, - 0x4e, 0xaa, 0x90, 0xff, - 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, - 0x4e, 0xaa, 0x90, 0xff - }, - {0xff, 0x2f, 0xa4, 0x72, 0xeb, 0xb2, 0xbd, 0xbe} - }, - { - { - 0xb5, 0xe3, 0x63, 0xff, - 0x00, 0x00, 0x00, 0x00, - 0x6b, 0x24, 0x84, 0xff, - 0xb5, 0xe3, 0x63, 0xff, - 0x00, 0x00, 0x00, 0x00, - 0xb5, 0xe3, 0x63, 0xff, - 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, - 0x6b, 0x24, 0x84, 0xff, - 0x6b, 0x24, 0x84, 0xff, - 0x00, 0x00, 0x00, 0x00, - 0xb5, 0xe3, 0x63, 0xff, - 0x90, 0x83, 0x73, 0xff, - 0xb5, 0xe3, 0x63, 0xff - }, - {0x30, 0x69, 0x0c, 0xb7, 0x4d, 0xf7, 0x0f, 0x67} - }, - { - { - 0x00, 0x00, 0x00, 0x00, - 0xc6, 0x86, 0x8c, 0xff, - 0xc6, 0x86, 0x8c, 0xff, - 0x21, 0x65, 0x42, 0xff, - 0x21, 0x65, 0x42, 0xff, - 0x21, 0x65, 0x42, 0xff, - 0x21, 0x65, 0x42, 0xff, - 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, - 0x21, 0x65, 0x42, 0xff, - 0xc6, 0x86, 0x8c, 0xff, - 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, - 0xc6, 0x86, 0x8c, 0xff - }, - {0x28, 0x23, 0x31, 0xc4, 0x17, 0xc0, 0xd3, 0x7f} - }, - { - { - 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, - 0xc6, 0xe3, 0x9c, 0xff, - 0x7b, 0x1c, 0x52, 0xff, - 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, - 0x7b, 0x1c, 0x52, 0xff, - 0x00, 0x00, 0x00, 0x00, - 0x7b, 0x1c, 0x52, 0xff, - 0xa0, 0x7f, 0x77, 0xff, - 0xc6, 0xe3, 0x9c, 0xff, - 0x00, 0x00, 0x00, 0x00, - 0xa0, 0x7f, 0x77, 0xff - }, - {0xea, 0x78, 0x13, 0xc7, 0x7f, 0xfc, 0x33, 0xb6} - }, -}; - - -static const struct dxt_data -dxt3_rgba_data[] = { - { - { - 0x6d, 0xc6, 0x96, 0x77, - 0x6d, 0xc6, 0x96, 0xee, - 0x6d, 0xc6, 0x96, 0xaa, - 0x8c, 0xff, 0xb5, 0x44, - 0x6d, 0xc6, 0x96, 0xff, - 0x6d, 0xc6, 0x96, 0x88, - 0x31, 0x55, 0x5a, 0x66, - 0x6d, 0xc6, 0x96, 0x99, - 0x31, 0x55, 0x5a, 0xbb, - 0x31, 0x55, 0x5a, 0x55, - 0x31, 0x55, 0x5a, 0x11, - 0x6d, 0xc6, 0x96, 0xcc, - 0x6d, 0xc6, 0x96, 0xcc, - 0x6d, 0xc6, 0x96, 0x11, - 0x31, 0x55, 0x5a, 0x44, - 0x31, 0x55, 0x5a, 0x88 - }, - {0xe7, 0x4a, 0x8f, 0x96, 0x5b, 0xc1, 0x1c, 0x84, 0xf6, 0x8f, 0xab, 0x32, 0x2a, 0x9a, 0x95, 0x5a} - }, - { - { - 0xad, 0xeb, 0x73, 0x99, - 0x97, 0xaa, 0x86, 0x66, - 0x6b, 0x28, 0xad, 0x99, - 0xad, 0xeb, 0x73, 0x99, - 0x6b, 0x28, 0xad, 0x22, - 0xad, 0xeb, 0x73, 0xff, - 0x97, 0xaa, 0x86, 0x55, - 0x6b, 0x28, 0xad, 0x55, - 0x6b, 0x28, 0xad, 0x44, - 0xad, 0xeb, 0x73, 0x33, - 0x6b, 0x28, 0xad, 0xee, - 0x6b, 0x28, 0xad, 0x99, - 0x97, 0xaa, 0x86, 0x66, - 0xad, 0xeb, 0x73, 0xbb, - 0x97, 0xaa, 0x86, 0x99, - 0xad, 0xeb, 0x73, 0xbb - }, - {0x69, 0x99, 0xf2, 0x55, 0x34, 0x9e, 0xb6, 0xb9, 0x4e, 0xaf, 0x55, 0x69, 0x18, 0x61, 0x51, 0x22} - }, - { - { - 0x63, 0xd7, 0xd6, 0x00, - 0x57, 0x62, 0x5d, 0xdd, - 0x57, 0x62, 0x5d, 0xcc, - 0x57, 0x62, 0x5d, 0xbb, - 0x52, 0x28, 0x21, 0xaa, - 0x57, 0x62, 0x5d, 0xcc, - 0x57, 0x62, 0x5d, 0xcc, - 0x57, 0x62, 0x5d, 0x66, - 0x57, 0x62, 0x5d, 0x22, - 0x57, 0x62, 0x5d, 0xdd, - 0x63, 0xd7, 0xd6, 0xee, - 0x57, 0x62, 0x5d, 0x33, - 0x63, 0xd7, 0xd6, 0x55, - 0x52, 0x28, 0x21, 0x55, - 0x57, 0x62, 0x5d, 0x11, - 0x5d, 0x9c, 0x99, 0xee - }, - {0xd0, 0xbc, 0xca, 0x6c, 0xd2, 0x3e, 0x55, 0xe1, 0xba, 0x66, 0x44, 0x51, 0xfc, 0xfd, 0xcf, 0xb4} - }, - { - { - 0x94, 0x6f, 0x60, 0x22, - 0x94, 0x6f, 0x60, 0x22, - 0xc5, 0xab, 0x76, 0x11, - 0xc5, 0xab, 0x76, 0xee, - 0x63, 0x34, 0x4a, 0xdd, - 0x63, 0x34, 0x4a, 0x33, - 0x94, 0x6f, 0x60, 0x77, - 0xf7, 0xe7, 0x8c, 0x00, - 0x94, 0x6f, 0x60, 0x33, - 0x63, 0x34, 0x4a, 0xaa, - 0x94, 0x6f, 0x60, 0x77, - 0x63, 0x34, 0x4a, 0xcc, - 0x94, 0x6f, 0x60, 0xaa, - 0xf7, 0xe7, 0x8c, 0x99, - 0x63, 0x34, 0x4a, 0x44, - 0xc5, 0xab, 0x76, 0xaa - }, - {0x22, 0xe1, 0x3d, 0x07, 0xa3, 0xc7, 0x9a, 0xa4, 0x31, 0xf7, 0xa9, 0x61, 0xaf, 0x35, 0x77, 0x93} - }, -}; - - -static const struct dxt_data -dxt5_rgba_data[] = { - { - { - 0x6d, 0xc6, 0x96, 0x74, - 0x6d, 0xc6, 0x96, 0xf8, - 0x6d, 0xc6, 0x96, 0xb6, - 0x8c, 0xff, 0xb5, 0x53, - 0x6d, 0xc6, 0x96, 0xf8, - 0x6d, 0xc6, 0x96, 0x95, - 0x31, 0x55, 0x5a, 0x53, - 0x6d, 0xc6, 0x96, 0x95, - 0x31, 0x55, 0x5a, 0xb6, - 0x31, 0x55, 0x5a, 0x53, - 0x31, 0x55, 0x5a, 0x11, - 0x6d, 0xc6, 0x96, 0xd7, - 0x6d, 0xc6, 0x96, 0xb6, - 0x6d, 0xc6, 0x96, 0x11, - 0x31, 0x55, 0x5a, 0x32, - 0x31, 0x55, 0x5a, 0x95 - }, - {0xf8, 0x11, 0xc5, 0x0c, 0x9a, 0x73, 0xb4, 0x9c, 0xf6, 0x8f, 0xab, 0x32, 0x2a, 0x9a, 0x95, 0x5a} - }, - { - { - 0xad, 0xeb, 0x73, 0xa1, - 0x97, 0xaa, 0x86, 0x65, - 0x6b, 0x28, 0xad, 0xa1, - 0xad, 0xeb, 0x73, 0xa1, - 0x6b, 0x28, 0xad, 0x2a, - 0xad, 0xeb, 0x73, 0xfb, - 0x97, 0xaa, 0x86, 0x47, - 0x6b, 0x28, 0xad, 0x65, - 0x6b, 0x28, 0xad, 0x47, - 0xad, 0xeb, 0x73, 0x47, - 0x6b, 0x28, 0xad, 0xdd, - 0x6b, 0x28, 0xad, 0xa1, - 0x97, 0xaa, 0x86, 0x65, - 0xad, 0xeb, 0x73, 0xbf, - 0x97, 0xaa, 0x86, 0xa1, - 0xad, 0xeb, 0x73, 0xbf - }, - {0xfb, 0x2a, 0x34, 0x19, 0xdc, 0xbf, 0xe8, 0x71, 0x4e, 0xaf, 0x55, 0x69, 0x18, 0x61, 0x51, 0x22} - }, - { - { - 0x63, 0xd7, 0xd6, 0x00, - 0x57, 0x62, 0x5d, 0xf5, - 0x57, 0x62, 0x5d, 0xd2, - 0x57, 0x62, 0x5d, 0xaf, - 0x52, 0x28, 0x21, 0xaf, - 0x57, 0x62, 0x5d, 0xd2, - 0x57, 0x62, 0x5d, 0xd2, - 0x57, 0x62, 0x5d, 0x69, - 0x57, 0x62, 0x5d, 0x23, - 0x57, 0x62, 0x5d, 0xd2, - 0x63, 0xd7, 0xd6, 0xf5, - 0x57, 0x62, 0x5d, 0x46, - 0x63, 0xd7, 0xd6, 0x46, - 0x52, 0x28, 0x21, 0x69, - 0x57, 0x62, 0x5d, 0x23, - 0x5d, 0x9c, 0x99, 0xf5 - }, - {0xf5, 0x00, 0x81, 0x36, 0xa9, 0x17, 0xec, 0x1e, 0xba, 0x66, 0x44, 0x51, 0xfc, 0xfd, 0xcf, 0xb4} - }, - { - { - 0x94, 0x6f, 0x60, 0x25, - 0x94, 0x6f, 0x60, 0x25, - 0xc5, 0xab, 0x76, 0x05, - 0xc5, 0xab, 0x76, 0xe8, - 0x63, 0x34, 0x4a, 0xe8, - 0x63, 0x34, 0x4a, 0x25, - 0x94, 0x6f, 0x60, 0x86, - 0xf7, 0xe7, 0x8c, 0x05, - 0x94, 0x6f, 0x60, 0x25, - 0x63, 0x34, 0x4a, 0xa7, - 0x94, 0x6f, 0x60, 0x66, - 0x63, 0x34, 0x4a, 0xc7, - 0x94, 0x6f, 0x60, 0xa7, - 0xf7, 0xe7, 0x8c, 0xa7, - 0x63, 0x34, 0x4a, 0x45, - 0xc5, 0xab, 0x76, 0xa7 - }, - {0xe8, 0x05, 0x7f, 0x80, 0x33, 0x5f, 0xb5, 0x79, 0x31, 0xf7, 0xa9, 0x61, 0xaf, 0x35, 0x77, 0x93} - }, -}; - - -static INLINE void -st_sample_dxt_pixel_block(enum pipe_format format, - uint8_t *raw, - float *rgba, unsigned rgba_stride, - unsigned w, unsigned h) -{ - const struct dxt_data *data; - unsigned n; - unsigned i; - unsigned x, y, ch; - - switch(format) { - case PIPE_FORMAT_DXT1_RGB: - data = dxt1_rgb_data; - n = sizeof(dxt1_rgb_data)/sizeof(dxt1_rgb_data[0]); - break; - case PIPE_FORMAT_DXT1_RGBA: - data = dxt1_rgba_data; - n = sizeof(dxt1_rgba_data)/sizeof(dxt1_rgba_data[0]); - break; - case PIPE_FORMAT_DXT3_RGBA: - data = dxt3_rgba_data; - n = sizeof(dxt3_rgba_data)/sizeof(dxt3_rgba_data[0]); - break; - case PIPE_FORMAT_DXT5_RGBA: - data = dxt5_rgba_data; - n = sizeof(dxt5_rgba_data)/sizeof(dxt5_rgba_data[0]); - break; - default: - assert(0); - return; - } - - i = st_random() % n; - - for(y = 0; y < h; ++y) - for(x = 0; x < w; ++x) - for(ch = 0; ch < 4; ++ch) - rgba[y*rgba_stride + x*4 + ch] = (float)(data[i].rgba[y*4*4 + x*4 + ch])/255.0f; - - memcpy(raw, data[i].raw, util_format_get_blocksize(format)); -} - - -static INLINE void -st_sample_generic_pixel_block(enum pipe_format format, - uint8_t *raw, - float *rgba, unsigned rgba_stride, - unsigned w, unsigned h, - boolean norm) -{ - unsigned i; - unsigned x, y, ch; - int blocksize = util_format_get_blocksize(format); - - if (norm) { - for (y = 0; y < h; ++y) { - for (x = 0; x < w; ++x) { - for (ch = 0; ch < 4; ++ch) { - unsigned offset = y*rgba_stride + x*4 + ch; - rgba[offset] = (st_random() & 0xff) / (double)0xff; - } - } - } - - util_format_write_4f(format, - rgba, rgba_stride * sizeof(float), - raw, util_format_get_stride(format, w), - 0, 0, w, h); - - } else { - for (i = 0; i < blocksize; ++i) - raw[i] = (uint8_t)st_random(); - } - - util_format_read_4f(format, - rgba, rgba_stride * sizeof(float), - raw, util_format_get_stride(format, w), - 0, 0, w, h); - - if (format == PIPE_FORMAT_UYVY || format == PIPE_FORMAT_YUYV) { - for (y = 0; y < h; ++y) { - for (x = 0; x < w; ++x) { - for (ch = 0; ch < 4; ++ch) { - unsigned offset = y*rgba_stride + x*4 + ch; - rgba[offset] = CLAMP(rgba[offset], 0.0f, 1.0f); - } - } - } - } -} - - -/** - * Randomly sample pixels. - */ -void -st_sample_pixel_block(enum pipe_format format, - void *raw, - float *rgba, unsigned rgba_stride, - unsigned w, unsigned h, - boolean norm) -{ - switch(format) { - case PIPE_FORMAT_DXT1_RGB: - case PIPE_FORMAT_DXT1_RGBA: - case PIPE_FORMAT_DXT3_RGBA: - case PIPE_FORMAT_DXT5_RGBA: - st_sample_dxt_pixel_block(format, raw, rgba, rgba_stride, w, h); - break; - - default: - st_sample_generic_pixel_block(format, raw, rgba, rgba_stride, w, h, norm); - break; - } -} - - -void -st_sample_surface(struct pipe_context *pipe, - struct st_surface *surface, - float *rgba, - boolean norm) -{ - struct pipe_resource *texture = surface->texture; - unsigned width = u_minify(texture->width0, surface->level); - unsigned height = u_minify(texture->height0, surface->level); - uint rgba_stride = width * 4; - struct pipe_transfer *transfer; - void *raw; - - transfer = pipe_get_transfer(pipe, - surface->texture, - surface->level, - surface->layer, - PIPE_TRANSFER_WRITE, - 0, 0, - width, - height); - if (!transfer) - return; - - raw = pipe->transfer_map(pipe, transfer); - if (raw) { - enum pipe_format format = texture->format; - uint x, y; - int nblocksx = util_format_get_nblocksx(format, width); - int nblocksy = util_format_get_nblocksy(format, height); - int blockwidth = util_format_get_blockwidth(format); - int blockheight = util_format_get_blockheight(format); - int blocksize = util_format_get_blocksize(format); - - - for (y = 0; y < nblocksy; ++y) { - for (x = 0; x < nblocksx; ++x) { - st_sample_pixel_block(format, - (uint8_t *) raw + y * transfer->stride + x * blocksize, - rgba + y * blockheight * rgba_stride + x * blockwidth * 4, - rgba_stride, - MIN2(blockwidth, width - x*blockwidth), - MIN2(blockheight, height - y*blockheight), - norm); - } - } - - pipe->transfer_unmap(pipe, transfer); - } - - pipe->transfer_destroy(pipe, transfer); -} diff --git a/src/gallium/state_trackers/python/st_sample.h b/src/gallium/state_trackers/python/st_sample.h deleted file mode 100644 index 2fdbb391f36..00000000000 --- a/src/gallium/state_trackers/python/st_sample.h +++ /dev/null @@ -1,53 +0,0 @@ -/************************************************************************** - * - * Copyright 2008 Tungsten Graphics, Inc., Cedar Park, Texas. - * 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, 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 TUNGSTEN GRAPHICS AND/OR ITS 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. - * - **************************************************************************/ - - -#ifndef ST_SAMPLE_H_ -#define ST_SAMPLE_H_ - - -#include "pipe/p_format.h" - -struct pipe_context; -struct st_surface; - - -void -st_sample_pixel_block(enum pipe_format format, - void *raw, - float *rgba, unsigned rgba_stride, - unsigned w, unsigned h, - boolean norm); - -void -st_sample_surface(struct pipe_context *pipe, - struct st_surface *surface, - float *rgba, - boolean norm); - - -#endif /* ST_SAMPLE_H_ */ diff --git a/src/gallium/state_trackers/python/st_softpipe_winsys.c b/src/gallium/state_trackers/python/st_softpipe_winsys.c deleted file mode 100644 index 8584bad4679..00000000000 --- a/src/gallium/state_trackers/python/st_softpipe_winsys.c +++ /dev/null @@ -1,78 +0,0 @@ -/************************************************************************** - * - * Copyright 2007 Tungsten Graphics, Inc., Bismarck, ND., USA - * 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, 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 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 - * THE COPYRIGHT HOLDERS, AUTHORS AND/OR ITS 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. - * - * The above copyright notice and this permission notice (including the - * next paragraph) shall be included in all copies or substantial portions - * of the Software. - * - * - **************************************************************************/ - -#include "util/u_debug.h" -#include "softpipe/sp_public.h" -#include "llvmpipe/lp_public.h" -#include "state_tracker/sw_winsys.h" -#include "sw/null/null_sw_winsys.h" -#include "st_winsys.h" - - -struct pipe_screen * -st_software_screen_create(const char *driver) -{ - struct sw_winsys *ws; - struct pipe_screen *screen = NULL; - - if (!driver) { - const char *default_driver; - -#if defined(HAVE_LLVMPIPE) - default_driver = "llvmpipe"; -#elif defined(HAVE_SOFTPIPE) - default_driver = "softpipe"; -#else - default_driver = ""; -#endif - - driver = debug_get_option("GALLIUM_DRIVER", default_driver); - } - - ws = null_sw_create(); - if(!ws) - return NULL; - -#ifdef HAVE_LLVMPIPE - if (strcmp(driver, "llvmpipe") == 0) { - screen = llvmpipe_create_screen(ws); - } -#endif - -#ifdef HAVE_SOFTPIPE - if (strcmp(driver, "softpipe") == 0) { - screen = softpipe_create_screen(ws); - } -#endif - - if (!screen) { - ws->destroy(ws); - } - - return screen; -} diff --git a/src/gallium/state_trackers/python/st_winsys.h b/src/gallium/state_trackers/python/st_winsys.h deleted file mode 100644 index 7d4066d947b..00000000000 --- a/src/gallium/state_trackers/python/st_winsys.h +++ /dev/null @@ -1,43 +0,0 @@ -/************************************************************************** - * - * Copyright 2008 Tungsten Graphics, Inc., Cedar Park, Texas. - * 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, 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 TUNGSTEN GRAPHICS AND/OR ITS 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. - * - **************************************************************************/ - - -#ifndef ST_WINSYS_H_ -#define ST_WINSYS_H_ - - -struct pipe_screen; - - -struct pipe_screen * -st_hardware_screen_create(void); - -struct pipe_screen * -st_software_screen_create(const char *driver); - - -#endif /* ST_WINSYS_H_ */ diff --git a/src/gallium/state_trackers/python/tests/regress/fragment-shader/frag-abs.png b/src/gallium/state_trackers/python/tests/regress/fragment-shader/frag-abs.png deleted file mode 100644 index c947a7b8813dda47928649392cdc69672f7aed54..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8750 zcmeI2`(G1h+J`3z6EKDV7Bxfxm99l7b~uU_Arv=;%A#0HMQn}AIw_!FWtFvBlF$XU zsKi=JT`eeRt%8jerL|fUvD8z|K|}!$18PMm3Myi0W%hn12{ZdIyzknNKREaEz3$U< znn^d#NuKF0l8G=3b5B&xn2TXNIr{4+geSk0?mLKKCK^MG9WGL$#c@MaSdQKGMO29{T64!j{lV z)yI6+$UjlI$n3YIc0iG?tyGO;4LTmSp~?T`$mcyK`Rke9C34opKcVwCKfIIOz4X$Ks?v50KTZNrE5A)$qZ|-D73j`dIOkiU~eOZF;=PAS`PUJhaYs`n|-q>Upad9&K zV@7l}SkS#Og(%^QG*irz->T`0Y7vdaYyV5cyTFL<%@TBfkwPSKLZ)DD z%}IuJ9vh@;jGv4aw!BrTl5&9ub)(IfuT&pnRE=l{a#kWp&{>C6Pwop_R#mFXkSnL{ zpq4aWww?UUu5#g6g7__rucM@}* zwaHXTzVhH!5L3ZSt|bT?V0?Z0im>Gh_~P0&84JmuU8^G*U)#C9M7$SF3450cx_?h0 z&T>llt?3jw)Ai)YD9f|0x;^fkAVfwZA4U=z}LXRz9=j_L`27AG)p&&NBRv<1L=dRe`U^ zZlHST(;=7P30z-$jh~S}6eo3M9{6sRw>XBQngG5YZdidoycKEDMv98KDjj7zx;x?U z+mVeoUKa_ub(#RaI+dWh5o*y!iHZ==+2oVdnWNna$0H->-JCA!aBgR4yWp#+^i>&k z{JI>-YYbjEmZRE5-8fp4@Z-qH#+z{>^>B_Q22?A(LA3(%8jBY)bHlL#Ra2La{!+ic zFJj@Jp`rsG9MxD*<;=^%SKNxQXs3#VlQ=eUZfA4D;%k|*6@xx_BX?TA3aaJva_|*5 z2#a=_NI0IO^3H8<9$4JEKz4XghTrAx84*NJP2|pF{A=GpUcPuCw_nlG&$7D>Ie&3q zLvQBWIJlQV6tT08f9)`&<%bt?3onE}MFHm2tz}JCW$*pKaa>}c^m&ud%>~*+@3`lw zw(8=!3!*5&oVw+^RIBpIqd=pCFI8a!}f9J5YL++0kB8#J6xw%yHW3N`3?CU{4 zoD)Po#CL?3g->1-Wzoiogq*Ug43C;^UbjWE2ZR0(SdtnP25kfV`DC9Cr4$!%U~>%j zo7=5T9^NHI_2)QCXFf>2G3n^n-ixs4Lq$T4L~iJ6K4VSwkV)OQ>W8sjlpr~5DxzOo zNLch?B4$=PQXvd?n*X#mNhE}9asX#CM1!Qpw23yCPqFC3MID@Kjx%&O->{}ic!VrA zfHUg?K~innLYsGoTl5j44o+a6hI`GwS)1JTs)$_*PK~7?IkZPdo4<^-=p#iPoUIfy zJZQdTO?BU>ia4p@tRpv&9Nbexn|Fm;^iiS?l%+iv$tpuz^HXb+_zP9UjiNaA`G+9+ zde0_$c6pRVKSiWwbCE1HJZx^Xri%Ziiuki=3Mpv=-Io&Ec$4Xn$1P>mf_dt zyVj=RpBdHBl0~c}9VB11>FC*CLSLqe)NC%21Vd-@S!?R>&rIrk$!u0K3ncs7is;$9 zpfA%zYGiTb5^iWuqt#jeQm7&p7W=c$UkAy)woP<@zkA-@E&L#MO-TX_zok7=2mh-< z6|t^(G%E=PNmbhxy8oFt@8zxhAa?RgUNYQG>sNPuoD6*_X1gyL1CmO;j$X6IJud?! z?0T073>|6r)rUU541FnPcPhznknGhL(Q8(V^Qu6C{5x`4X`s^nP-kUmjOy<^*0az5 z36eefO>|uyzpM9~2e(Ep**+aoz+e?u{%CCn?1J zv?uDWrKK8czVrn9JPjn}DdOdL)D-u;B~moOVpd>ErCJAiJU*JIbdN6kStM@AnIZO~B=K|W*t zWS_6Ki>esW)U|8QsW|OkV(G8`u(of?S(ExV_Z6%t(=MuJMAO%9?NPC7S2EY~qH?5mGODvB$?Wqt?Xn#Wr#XIEnA-Pe&D-|{qj0Lh?Zeq-6^ zBD-udBO55uCg)XZv|4tB5bFG>RZx>ROzLV6j=N~73(TmbYp9gbtD5Am{OHA5*W=Xd zgy%8Z^}27RiZZH$b5$&HoGJtU8{3h3Inb}P$zKoglwjuG4(BFnbeogOGTt zKZ+{meLv_AuN-o0l3-@KmUC`NJT=D#Rr$vBn98z;HF46xIPxL(RfC>AC?uGAebiQ7 z`l&d$-^XLe#ABD^635Fu+}9+SJm&?x0=ataUxnuQt|j`{ukEf8*TTM>~?M&mKT?PM*ilDSkM<~z6;B(9jTnj>W6u@4!~_)g89A7bnm>4 z_vSv%*=plGjZJTmC!a!kg{GF#zryNyr7cKr^YZwXi9h>yP1RLByNqnor*Y{fdE$Dc z7ivy2dUk2rq@|318_&bW=$G8Xs;=uf_47)Kvp)jo%n3{#Og93MW5&s zm&9vpL)W=DSs~ch;{9>0M)}2owY4LoU9iofCP=2wkqk1cucBhk<#||}{KbFXHt4mX z#`5DkhF-j3jN7u<*0b`hYY}1tZ}af$fcOWCa8uu85SrrrE)U^gPRk`@$NgFU7Zs>w zXwCt`Wm#P78M%4jpMY@VO&2u-;%ye;(!oTrO<>1%_ zOdRc|`jdUG0(wpNGF9FxUo|OC8ya)o<&*O6#nOoHHH#sTaViZH$c3SLoOdbQhi1rG z-ApADNApEvM|+IrvUD5Ez-ELe1cE)I6tV0Dsc6;9vT?&sONQU$XY*o(-sBwbI!WZ(_mnzw!C1Szl zzDuM}?U1(svi85Lnuryi>YK7RT^qm@#KU))s`e-qacA+;^$;13TkwV5~+Ab}4Mc5}+b` z7a&G8MIX5%E=k=X=q`zO9snWOFioF1nGiQK&8-qiT|!PkbDb9~WZwg8->b$5i{-r@ z`fQ?5G5iUHQQ_QuLa<)VW^;0=_;)+PO|08-LmgbYdMMRi&7NBWW11L53Ppc?MO?CM zKZ?S60EA#GHNTiI6XJg}h?j?pb)yjC_z+^Hrp-1mW(R{vr06e>ic2OoAcXU{4Z)6R zYRs2I#Xr~)!yt-QKs*~l9MQBj4U9=;5NQ2tu5nl?@9wm$fUQ6dRd5_EYrc ze~U|Gosb95xjk8N%0$*l73+Y|R%48}j6esV^Ev}oCDfsl(NCu6npSa1=0T))*5L?F zwUKM2id8&*$+=W&oLcKHjM=uzv0;E!-Q_XT;~)b#Owqf45SIj9Kmg}5)#H?v>_>o! z(i9ZHV_8yu)vwNJ3uYj^?&pmr#BGg+?td6g1Wl6EhIcsMMpxogFX@2@D~JgTw1pKv zMM`^>mqt2j0A?V>`B_j5IdT*2>fs|DdDpeYC(l`g6r4IwZbgK}M0Gk4_C=QUDlhsv z2w;Yp6df~;iJ=0c{iiQeZT}QD3XAjh8H!U6$k~X{tC|ltp!nfgfs}sxEC&J1K!`}X z#>6m33$L1C#08}XWZ|5XUO3fEni1iFYW^`GT+9q?({D?65WozCn556`1oYw^PP~~2 zbx=F&@C>JZCtpK^-&ON#f$&LYV7tCF%RvA$5Wxq$SU+{NV?KZx2q(%8+6jF6_Q}7iyuJK@;Jl^nz^SX`BZgoq%>=@ZE4gRtBd0hB zUgN;#N%G*#R2EE zjl!vJauFiDFjg>iuqlo8lRkG4zzl>R%c|@IExqW+Fye78iorP_M&Z;=@-{;-RWNn1 zD$msarOrVBGt6cc0ZRtfg~5eBy`EIvZAW!*_Tn*4y&&U&U@~gst)j6mA$#>3iW3f_ zr3-f-Fe5_fEqe@wblgW_#0Lh5Ac}xiAKn1mD=NLx}U`L2{y0Yf9*YH9553})H#M24ruz(ytz^Nys zSX}wNs)v7qSrVl8()K-N!45UpLG8IzAuOV6FRLq67QS*s#jKIaNXL|)i&GcLBtiGb zDRP&J_ea68yE~<1O!%Px0(_j^1&m-2RY~%rsZ^l!DHZopxZuv|(}HgCUWc17oa!PI z8oq`XK?U04&iMTFaqpaiha67A_FZ5QuYRHFtTCn#8ODN9sltZ1)38U)KnRq|2%Ksq zvzbVQ6`63+tj$)0_U0dGbY9+I07HrSLX(LocZ~&6tA!1V;(+4f2;?bF{XvdpAiRn< z5k##BeUKm6_^!hX3}7G=!gxP1p_mFJ$-)Nz+W^UTKpJuCXL2C}!R09klA#FwJ>PI` zu>%4F7|4h)UNaMksbKO7VMER$fJ8eWwK#R3jA0;um8T+zN)dW5pSbpS2LuK%kgzb` zc?8Ke7Wlm$fWQC-A`0VK5#%>xLF`Au zhS~lAaem^>!>N9f&p;C7^AKb{KzdcxtquqbU?4#md>s>ssel(RZ18vlkU+= zmOaZSt~&4VFo1!`GWaEEu7y&kHv|gq{QDZrHS`tTx%+tI)NOJJ0udOt4}m6DmVK0O zX#A%m8W>;)E#t$N6z`Jgo<&K!w7pj^YF7&#+d~h(hYsJUU414{D(@-RE;gnIROYLC zR0sZWFnaia2LV diff --git a/src/gallium/tests/python/retrace/interpreter.py b/src/gallium/tests/python/retrace/interpreter.py deleted file mode 100755 index 84371223f66..00000000000 --- a/src/gallium/tests/python/retrace/interpreter.py +++ /dev/null @@ -1,733 +0,0 @@ -#!/usr/bin/env python -########################################################################## -# -# Copyright 2008 Tungsten Graphics, Inc., Cedar Park, Texas. -# 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, 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 TUNGSTEN GRAPHICS AND/OR ITS 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. -# -########################################################################## - - -import sys -import struct - -import gallium -import model -import parse as parser - - -try: - from struct import unpack_from -except ImportError: - def unpack_from(fmt, buf, offset=0): - size = struct.calcsize(fmt) - return struct.unpack(fmt, buf[offset:offset + size]) - - -def make_image(ctx, surface, x=None, y=None, w=None, h=None): - if x is None: - x = 0 - if y is None: - y = 0 - if w is None: - w = surface.width - x - if h is None: - h = surface.height - y - data = ctx.surface_read_rgba8(surface, x, y, surface.width, surface.height) - - import Image - outimage = Image.fromstring('RGBA', (w, h), data, "raw", 'RGBA', 0, 1) - return outimage - -def save_image(ctx, filename, surface, x=None, y=None, w=None, h=None): - outimage = make_image(ctx, surface, x, y, w, h) - outimage.save(filename, "PNG") - -def show_image(ctx, surface, title, x=None, y=None, w=None, h=None): - outimage = make_image(ctx, surface, x, y, w, h) - - import Tkinter as tk - from PIL import Image, ImageTk - root = tk.Tk() - - root.title(title) - - image1 = ImageTk.PhotoImage(outimage) - w = image1.width() - h = image1.height() - x = 100 - y = 100 - root.geometry("%dx%d+%d+%d" % (w, h, x, y)) - panel1 = tk.Label(root, image=image1) - panel1.pack(side='top', fill='both', expand='yes') - panel1.image = image1 - root.mainloop() - - -class Struct: - """C-like struct""" - - # A basic Python class can pass as a C-like structure - pass - - -struct_factories = { - "pipe_blend_color": gallium.BlendColor, - "pipe_blend_state": gallium.Blend, - #"pipe_clip_state": gallium.Clip, - #"pipe_buffer": gallium.Buffer, - "pipe_depth_state": gallium.Depth, - "pipe_stencil_state": gallium.Stencil, - "pipe_alpha_state": gallium.Alpha, - "pipe_depth_stencil_alpha_state": gallium.DepthStencilAlpha, - #"pipe_framebuffer_state": gallium.Framebuffer, - "pipe_poly_stipple": gallium.PolyStipple, - "pipe_rasterizer_state": gallium.Rasterizer, - "pipe_sampler_state": gallium.Sampler, - "pipe_scissor_state": gallium.Scissor, - #"pipe_shader_state": gallium.Shader, - #"pipe_vertex_buffer": gallium.VertexBuffer, - "pipe_vertex_element": gallium.VertexElement, - "pipe_viewport_state": gallium.Viewport, - #"pipe_texture": gallium.Texture, - 'pipe_subresource': gallium.pipe_subresource, - 'pipe_box': gallium.pipe_box, - 'pipe_draw_info': gallium.pipe_draw_info, -} - - -member_array_factories = { - #"pipe_rasterizer_state": {"sprite_coord_mode": gallium.ByteArray}, - "pipe_poly_stipple": {"stipple": gallium.UnsignedArray}, - "pipe_viewport_state": {"scale": gallium.FloatArray, "translate": gallium.FloatArray}, - #"pipe_clip_state": {"ucp": gallium.FloatArray}, - "pipe_depth_stencil_alpha_state": {"stencil": gallium.StencilArray}, - "pipe_blend_color": {"color": gallium.FloatArray}, - "pipe_sampler_state": {"border_color": gallium.FloatArray}, -} - - -class Translator(model.Visitor): - """Translate model arguments into regular Python objects""" - - def __init__(self, interpreter): - self.interpreter = interpreter - self.result = None - - def visit(self, node): - self.result = None - node.visit(self) - return self.result - - def visit_literal(self, node): - self.result = node.value - - def visit_named_constant(self, node): - # lookup the named constant in the gallium module - self.result = getattr(gallium, node.name) - - def visit_array(self, node): - array = [] - for element in node.elements: - array.append(self.visit(element)) - self.result = array - - def visit_struct(self, node): - struct_factory = struct_factories.get(node.name, Struct) - struct = struct_factory() - for member_name, member_node in node.members: - member_value = self.visit(member_node) - try: - array_factory = member_array_factories[node.name][member_name] - except KeyError: - pass - else: - assert isinstance(member_value, list) - array = array_factory(len(member_value)) - for i in range(len(member_value)): - array[i] = member_value[i] - member_value = array - #print node.name, member_name, member_value - assert isinstance(struct, Struct) or hasattr(struct, member_name) - setattr(struct, member_name, member_value) - self.result = struct - - def visit_pointer(self, node): - self.result = self.interpreter.lookup_object(node.address) - - -class Object: - - def __init__(self, interpreter, real): - self.interpreter = interpreter - self.real = real - - -class Global(Object): - - def __init__(self, interpreter, real): - self.interpreter = interpreter - self.real = real - - def pipe_screen_create(self): - real = gallium.Device() - return Screen(self.interpreter, real) - - def pipe_context_create(self, screen): - context = screen.real.context_create() - return Context(self.interpreter, context) - - -class Transfer: - - def __init__(self, resource, usage, subresource, box): - self.resource = resource - self.usage = usage - self.subresource = subresource - self.box = box - - -class Screen(Object): - - def __init__(self, interpreter, real): - Object.__init__(self, interpreter, real) - self.context = self.real.context_create() - - def destroy(self): - pass - - def get_name(self): - pass - - def get_vendor(self): - pass - - def get_param(self, param): - pass - - def get_paramf(self, param): - pass - - def context_create(self): - context = self.real.context_create() - return Context(self.interpreter, context) - - def is_format_supported(self, format, target, sample_count, bind, geom_flags): - return self.real.is_format_supported(format, target, sample_count, bind, geom_flags) - - def resource_create(self, templat): - return self.real.resource_create( - format = templat.format, - width = templat.width, - height = templat.height, - depth = templat.depth, - last_level = templat.last_level, - target = templat.target, - bind = templat.bind, - ) - - def texture_destroy(self, texture): - self.interpreter.unregister_object(texture) - - def texture_release(self, surface): - pass - - def tex_surface_release(self, surface): - pass - - def user_buffer_create(self, data, size, usage): - bind = usage - # We don't really care to distinguish between user and regular buffers - buffer = self.real.buffer_create(size, bind) - assert size == len(data) - self.context.buffer_write(buffer, data) - return buffer - - def buffer_create(self, alignment, usage, size): - return self.real.buffer_create(size, alignment, usage) - - def buffer_destroy(self, buffer): - pass - - def fence_finish(self, fence, flags): - pass - - def fence_reference(self, dst, src): - pass - - def flush_frontbuffer(self, resource): - pass - - -class Context(Object): - - def __init__(self, interpreter, real): - Object.__init__(self, interpreter, real) - self.cbufs = [] - self.zsbuf = None - self.vbufs = [] - self.velems = [] - self.dirty = False - - def destroy(self): - pass - - def create_blend_state(self, state): - if isinstance(state, str): - state = gallium.Blend(state) - sys.stdout.write('\t%s\n' % state) - return state - - def bind_blend_state(self, state): - if state is not None: - self.real.set_blend(state) - - def delete_blend_state(self, state): - pass - - def create_sampler_state(self, state): - return state - - def delete_sampler_state(self, state): - pass - - def bind_vertex_sampler_states(self, num_states, states): - for i in range(num_states): - self.real.set_vertex_sampler(i, states[i]) - - def bind_fragment_sampler_states(self, num_states, states): - for i in range(num_states): - self.real.set_fragment_sampler(i, states[i]) - - def create_rasterizer_state(self, state): - return state - - def bind_rasterizer_state(self, state): - if state is not None: - self.real.set_rasterizer(state) - - def delete_rasterizer_state(self, state): - pass - - def create_depth_stencil_alpha_state(self, state): - return state - - def bind_depth_stencil_alpha_state(self, state): - if state is not None: - self.real.set_depth_stencil_alpha(state) - - def delete_depth_stencil_alpha_state(self, state): - pass - - def create_fs_state(self, state): - tokens = str(state.tokens) - shader = gallium.Shader(tokens) - return shader - - create_vs_state = create_fs_state - - def bind_fs_state(self, state): - self.real.set_fragment_shader(state) - - def bind_vs_state(self, state): - self.real.set_vertex_shader(state) - - def delete_fs_state(self, state): - pass - - delete_vs_state = delete_fs_state - - def set_blend_color(self, state): - self.real.set_blend_color(state) - - def set_stencil_ref(self, state): - self.real.set_stencil_ref(state) - - def set_clip_state(self, state): - _state = gallium.Clip() - _state.nr = state.nr - if state.nr: - # FIXME - ucp = gallium.FloatArray(gallium.PIPE_MAX_CLIP_PLANES*4) - for i in range(len(state.ucp)): - for j in range(len(state.ucp[i])): - ucp[i*4 + j] = state.ucp[i][j] - _state.ucp = ucp - self.real.set_clip(_state) - - def dump_constant_buffer(self, buffer): - if not self.interpreter.verbosity(2): - return - - data = self.real.buffer_read(buffer) - format = '4f' - index = 0 - for offset in range(0, len(data), struct.calcsize(format)): - x, y, z, w = unpack_from(format, data, offset) - sys.stdout.write('\tCONST[%2u] = {%10.4f, %10.4f, %10.4f, %10.4f}\n' % (index, x, y, z, w)) - index += 1 - sys.stdout.flush() - - def set_constant_buffer(self, shader, index, buffer): - if buffer is not None: - self.real.set_constant_buffer(shader, index, buffer) - - self.dump_constant_buffer(buffer) - - def set_framebuffer_state(self, state): - _state = gallium.Framebuffer() - _state.width = state.width - _state.height = state.height - _state.nr_cbufs = state.nr_cbufs - for i in range(len(state.cbufs)): - _state.set_cbuf(i, state.cbufs[i]) - _state.set_zsbuf(state.zsbuf) - self.real.set_framebuffer(_state) - - self.cbufs = state.cbufs - self.zsbuf = state.zsbuf - - def set_polygon_stipple(self, state): - self.real.set_polygon_stipple(state) - - def set_scissor_state(self, state): - self.real.set_scissor(state) - - def set_viewport_state(self, state): - self.real.set_viewport(state) - - def create_sampler_view(self, texture, templ): - return self.real.create_sampler_view(texture, - format = templ.format, - first_level = templ.first_level, - last_level = templ.last_level, - swizzle_r = templ.swizzle_r, - swizzle_g = templ.swizzle_r, - swizzle_b = templ.swizzle_g, - swizzle_a = templ.swizzle_a) - - def sampler_view_destroy(self, view): - pass - - def set_fragment_sampler_views(self, num, views): - for i in range(num): - self.real.set_fragment_sampler_view(i, views[i]) - - def set_vertex_sampler_views(self, num, views): - for i in range(num): - self.real.set_vertex_sampler_view(i, views[i]) - - def set_vertex_buffers(self, num_buffers, buffers): - self.vbufs = buffers[0:num_buffers] - for i in range(num_buffers): - vbuf = buffers[i] - self.real.set_vertex_buffer( - i, - stride = vbuf.stride, - max_index = vbuf.max_index, - buffer_offset = vbuf.buffer_offset, - buffer = vbuf.buffer, - ) - - def create_vertex_elements_state(self, num_elements, elements): - return elements[0:num_elements] - - def bind_vertex_elements_state(self, state): - if state is None: - self.real.set_vertex_elements(0) - return - - elements = state - num_elements = len(elements) - self.velems = elements - for i in range(num_elements): - self.real.set_vertex_element(i, elements[i]) - self.real.set_vertex_elements(num_elements) - - def delete_vertex_elements_state(self, state): - pass - - def dump_vertices(self, start, count): - if not self.interpreter.verbosity(2): - return - - for index in range(start, start + count): - if index >= start + 16: - sys.stdout.write('\t...\n') - break - sys.stdout.write('\t{\n') - for velem in self.velems: - vbuf = self.vbufs[velem.vertex_buffer_index] - - offset = vbuf.buffer_offset + velem.src_offset + vbuf.stride*index - format = { - gallium.PIPE_FORMAT_R32_FLOAT: 'f', - gallium.PIPE_FORMAT_R32G32_FLOAT: '2f', - gallium.PIPE_FORMAT_R32G32B32_FLOAT: '3f', - gallium.PIPE_FORMAT_R32G32B32A32_FLOAT: '4f', - gallium.PIPE_FORMAT_A8R8G8B8_UNORM: '4B', - gallium.PIPE_FORMAT_R8G8B8A8_UNORM: '4B', - gallium.PIPE_FORMAT_B8G8R8A8_UNORM: '4B', - gallium.PIPE_FORMAT_R16G16B16_SNORM: '3h', - }[velem.src_format] - - data = self.real.buffer_read(vbuf.buffer) - values = unpack_from(format, data, offset) - sys.stdout.write('\t\t{' + ', '.join(map(str, values)) + '},\n') - sys.stdout.write('\t},\n') - sys.stdout.flush() - - def dump_indices(self, ibuf, isize, ibias, start, count): - if not self.interpreter.verbosity(2): - return - - format = { - 1: 'B', - 2: 'H', - 4: 'I', - }[isize] - - assert struct.calcsize(format) == isize - - data = self.real.buffer_read(ibuf) - maxindex, minindex = 0, 0xffffffff - - sys.stdout.write('\t{\n') - for i in range(start, start + count): - if i >= start + 16 and not self.interpreter.verbosity(3): - sys.stdout.write('\t...\n') - break - offset = i*isize - index, = unpack_from(format, data, offset) - sys.stdout.write('\t\t%u,\n' % index) - minindex = min(minindex, index) - maxindex = max(maxindex, index) - sys.stdout.write('\t},\n') - sys.stdout.flush() - - return minindex + ibias, maxindex + ibias - - def set_index_buffer(self, ib): - if ib: - self.real.set_index_buffer(ib.index_size, ib.offset, ib.buffer) - else: - self.real.set_index_buffer(0, 0, None) - - def draw_vbo(self, info): - if self.interpreter.verbosity(2): - if 0: - minindex, maxindex = self.dump_indices(indexBuffer, indexSize, indexBias, start, count) - - self.dump_vertices(info.minindex, info.maxindex + 1 - info.minindex) - - self.real.draw_vbo(info) - self._set_dirty() - - def resource_copy_region(self, dst, subdst, dstx, dsty, dstz, src, subsrc, srcx, srcy, srcz, width, height): - if dst is not None and src is not None: - if self.interpreter.options.all: - self.interpreter.present(self.real, src, 'resource_copy_src', srcx, srcy, width, height) - self.real.resource_copy_region(dst, subdst, dstx, dsty, dstx, src, subsrc, srcx, srcy, srcz, width, height) - flags = 0 - self.flush(flags) - if self.interpreter.options.all: - self.interpreter.present(self.real, dst, 'resource_copy_dst', dstx, dsty, width, height) - - def is_resource_referenced(self, texture, face, level): - #return self.real.is_resource_referenced(format, texture, face, level) - pass - - def buffer_write(self, buffer, data, size, offset=0): - assert size == len(data) - self.buffer_write(buffer, data) - - def surface_write(self, surface, data, stride, size): - if surface is None: - return -# assert surface.nblocksy * stride == size - surface.put_tile_raw(0, 0, surface.width, surface.height, data, stride) - - def get_transfer(self, texture, sr, usage, box): - if texture is None: - return None - transfer = Transfer(texture, sr, usage, box) - if transfer and usage & gallium.PIPE_TRANSFER_READ: - if self.interpreter.options.all: - surface = texture.get_surface(sr.face, sr.level, box.z) - self.interpreter.present(self.real, transfer.surface, 'transf_read', box.x, box.y, box.width, box.height) - return transfer - - def tex_transfer_destroy(self, transfer): - self.interpreter.unregister_object(transfer) - - def transfer_inline_write(self, resource, sr, usage, box, stride, slice_stride, data): - self.real.transfer_inline_write(resource, sr, usage, box, data, stride, slice_stride) - if self.interpreter.options.all: - for z in range(box.z, box.z + box.depth): - surface = resource.get_surface(sr.face, sr.level, box.z) - self.interpreter.present(self.real, surface, 'transf_inline_write%u' % z, box.x, box.y, box.width, box.height) - - def _set_dirty(self): - if self.interpreter.options.step: - self._present() - else: - self.dirty = True - - def flush(self, flags): - self.real.flush(flags) - if self.dirty: - if flags & gallium.PIPE_FLUSH_FRAME: - self._present() - self.dirty = False - return None - - def clear(self, buffers, rgba, depth, stencil): - _rgba = gallium.FloatArray(4) - for i in range(4): - _rgba[i] = rgba[i] - self.real.clear(buffers, _rgba, depth, stencil) - - def clear_render_target(self, dst, rgba, dstx, dsty, width, height): - _rgba = gallium.FloatArray(4) - for i in range(4): - _rgba[i] = rgba[i] - self.real.clear_render_target(dst, _rgba, dstx, dsty, width, height) - - def clear_depth_stencil(self, dst, clear_flags, depth, stencil, dstx, dsty, width, height): - self.real.clear_depth_stencil(dst, clear_flags, depth, stencil, dstx, dsty, width, height) - - def _present(self): - self.real.flush() - - if self.cbufs and self.cbufs[0]: - self.interpreter.present(self.real, self.cbufs[0], "cbuf") - if self.zsbuf: - if self.interpreter.options.all: - self.interpreter.present(self.real, self.zsbuf, "zsbuf") - def create_surface(self, texture, level, layer, usage): - if texture is None: - return None - return texture.get_surface(level, layer) - - def surface_destroy(self, surface): - self.interpreter.unregister_object(surface) - -class Interpreter(parser.TraceDumper): - - ignore_calls = set(( - ('pipe_screen', 'is_format_supported'), - ('pipe_screen', 'get_param'), - ('pipe_screen', 'get_paramf'), - )) - - def __init__(self, stream, options): - parser.TraceDumper.__init__(self, stream) - self.options = options - self.objects = {} - self.result = None - self.globl = Global(self, None) - self.call_no = None - - def register_object(self, address, object): - self.objects[address] = object - - def unregister_object(self, object): - # FIXME: - pass - - def lookup_object(self, address): - return self.objects[address] - - def interpret(self, trace): - for call in trace.calls: - self.interpret_call(call) - - def handle_call(self, call): - if self.options.stop and call.no > self.options.stop: - sys.exit(0) - - if (call.klass, call.method) in self.ignore_calls: - return - - self.call_no = call.no - - if self.verbosity(1): - parser.TraceDumper.handle_call(self, call) - sys.stdout.flush() - - args = [(str(name), self.interpret_arg(arg)) for name, arg in call.args] - - if call.klass: - name, obj = args[0] - args = args[1:] - else: - obj = self.globl - - method = getattr(obj, call.method) - ret = method(**dict(args)) - - if call.ret and isinstance(call.ret, model.Pointer): - if ret is None: - sys.stderr.write('warning: NULL returned\n') - self.register_object(call.ret.address, ret) - - self.call_no = None - - def interpret_arg(self, node): - translator = Translator(self) - return translator.visit(node) - - def verbosity(self, level): - return self.options.verbosity >= level - - def present(self, ctx, surface, description, x=None, y=None, w=None, h=None): - if self.call_no < self.options.start: - return - - if self.options.images: - filename = '%04u_%s.png' % (self.call_no, description) - save_image(ctx, filename, surface, x, y, w, h) - else: - title = '%u. %s' % (self.call_no, description) - show_image(ctx, surface, title, x, y, w, h) - - -class Main(parser.Main): - - def get_optparser(self): - optparser = parser.Main.get_optparser(self) - optparser.add_option("-q", "--quiet", action="store_const", const=0, dest="verbosity", help="no messages") - optparser.add_option("-v", "--verbose", action="count", dest="verbosity", default=1, help="increase verbosity level") - optparser.add_option("-i", "--images", action="store_true", dest="images", default=False, help="save images instead of showing them") - optparser.add_option("-a", "--all", action="store_true", dest="all", default=False, help="show depth, stencil, and transfers") - optparser.add_option("-s", "--step", action="store_true", dest="step", default=False, help="step trhough every draw") - optparser.add_option("-f", "--from", action="store", type="int", dest="start", default=0, help="from call no") - optparser.add_option("-t", "--to", action="store", type="int", dest="stop", default=0, help="until call no") - return optparser - - def process_arg(self, stream, options): - parser = Interpreter(stream, options) - parser.parse() - - -if __name__ == '__main__': - Main().main() diff --git a/src/gallium/tests/python/samples/gs.py b/src/gallium/tests/python/samples/gs.py deleted file mode 100644 index 936c0b3f33a..00000000000 --- a/src/gallium/tests/python/samples/gs.py +++ /dev/null @@ -1,254 +0,0 @@ -#!/usr/bin/env python -########################################################################## -# -# Copyright 2009 VMware -# 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, 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 TUNGSTEN GRAPHICS AND/OR ITS 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. -# -########################################################################## - - -from gallium import * - - -def make_image(surface): - data = surface.get_tile_rgba8(0, 0, surface.width, surface.height) - - import Image - outimage = Image.fromstring('RGBA', (surface.width, surface.height), data, "raw", 'RGBA', 0, 1) - return outimage - -def save_image(filename, surface): - outimage = make_image(surface) - outimage.save(filename, "PNG") - -def show_image(surface): - outimage = make_image(surface) - - import Tkinter as tk - from PIL import Image, ImageTk - root = tk.Tk() - - root.title('background image') - - image1 = ImageTk.PhotoImage(outimage) - w = image1.width() - h = image1.height() - x = 100 - y = 100 - root.geometry("%dx%d+%d+%d" % (w, h, x, y)) - panel1 = tk.Label(root, image=image1) - panel1.pack(side='top', fill='both', expand='yes') - panel1.image = image1 - root.mainloop() - - -def test(dev): - ctx = dev.context_create() - - width = 255 - height = 255 - minz = 0.0 - maxz = 1.0 - - # disabled blending/masking - blend = Blend() - blend.rt[0].rgb_src_factor = PIPE_BLENDFACTOR_ONE - blend.rt[0].alpha_src_factor = PIPE_BLENDFACTOR_ONE - blend.rt[0].rgb_dst_factor = PIPE_BLENDFACTOR_ZERO - blend.rt[0].alpha_dst_factor = PIPE_BLENDFACTOR_ZERO - blend.rt[0].colormask = PIPE_MASK_RGBA - ctx.set_blend(blend) - - # depth/stencil/alpha - depth_stencil_alpha = DepthStencilAlpha() - depth_stencil_alpha.depth.enabled = 1 - depth_stencil_alpha.depth.writemask = 1 - depth_stencil_alpha.depth.func = PIPE_FUNC_LESS - ctx.set_depth_stencil_alpha(depth_stencil_alpha) - - # rasterizer - rasterizer = Rasterizer() - rasterizer.front_winding = PIPE_WINDING_CW - rasterizer.cull_mode = PIPE_WINDING_NONE - rasterizer.scissor = 1 - ctx.set_rasterizer(rasterizer) - - # viewport - viewport = Viewport() - scale = FloatArray(4) - scale[0] = width / 2.0 - scale[1] = -height / 2.0 - scale[2] = (maxz - minz) / 2.0 - scale[3] = 1.0 - viewport.scale = scale - translate = FloatArray(4) - translate[0] = width / 2.0 - translate[1] = height / 2.0 - translate[2] = (maxz - minz) / 2.0 - translate[3] = 0.0 - viewport.translate = translate - ctx.set_viewport(viewport) - - # samplers - sampler = Sampler() - sampler.wrap_s = PIPE_TEX_WRAP_CLAMP_TO_EDGE - sampler.wrap_t = PIPE_TEX_WRAP_CLAMP_TO_EDGE - sampler.wrap_r = PIPE_TEX_WRAP_CLAMP_TO_EDGE - sampler.min_mip_filter = PIPE_TEX_MIPFILTER_NONE - sampler.min_img_filter = PIPE_TEX_MIPFILTER_NEAREST - sampler.mag_img_filter = PIPE_TEX_MIPFILTER_NEAREST - sampler.normalized_coords = 1 - ctx.set_sampler(0, sampler) - - # scissor - scissor = Scissor() - scissor.minx = 0 - scissor.miny = 0 - scissor.maxx = width - scissor.maxy = height - ctx.set_scissor(scissor) - - clip = Clip() - clip.nr = 0 - ctx.set_clip(clip) - - # framebuffer - cbuf = dev.resource_create( - PIPE_FORMAT_B8G8R8X8_UNORM, - width, height, - bind=PIPE_BIND_RENDER_TARGET, - ).get_surface() - zbuf = dev.resource_create( - PIPE_FORMAT_Z32_UNORM, - width, height, - bind=PIPE_BIND_DEPTH_STENCIL, - ).get_surface() - fb = Framebuffer() - fb.width = width - fb.height = height - fb.nr_cbufs = 1 - fb.set_cbuf(0, cbuf) - fb.set_zsbuf(zbuf) - ctx.set_framebuffer(fb) - rgba = FloatArray(4); - rgba[0] = 0.0 - rgba[1] = 0.0 - rgba[2] = 0.0 - rgba[3] = 0.0 - ctx.clear(PIPE_CLEAR_COLOR | PIPE_CLEAR_DEPTHSTENCIL, rgba, 1.0, 0xff) - - # vertex shader - vs = Shader(''' - VERT - DCL IN[0], POSITION, CONSTANT - DCL IN[1], COLOR, CONSTANT - DCL OUT[0], POSITION, CONSTANT - DCL OUT[1], COLOR, CONSTANT - 0:MOV OUT[0], IN[0] - 1:MOV OUT[1], IN[1] - 2:END - ''') - ctx.set_vertex_shader(vs) - - gs = Shader(''' - GEOM - PROPERTY GS_INPUT_PRIMITIVE TRIANGLES - PROPERTY GS_OUTPUT_PRIMITIVE TRIANGLE_STRIP - DCL IN[][0], POSITION, CONSTANT - DCL IN[][1], COLOR, CONSTANT - DCL OUT[0], POSITION, CONSTANT - DCL OUT[1], COLOR, CONSTANT - 0:MOV OUT[0], IN[0][0] - 1:MOV OUT[1], IN[0][1] - 2:EMIT - 3:MOV OUT[0], IN[1][0] - 4:MOV OUT[1], IN[1][1] - 5:EMIT - 6:MOV OUT[0], IN[2][0] - 7:MOV OUT[1], IN[2][1] - 8:EMIT - 9:ENDPRIM - 10:END - ''') - ctx.set_geometry_shader(gs) - - # fragment shader - fs = Shader(''' - FRAG - DCL IN[0], COLOR, LINEAR - DCL OUT[0], COLOR, CONSTANT - 0:MOV OUT[0], IN[0] - 1:END - ''') - ctx.set_fragment_shader(fs) - - nverts = 3 - nattrs = 2 - verts = FloatArray(nverts * nattrs * 4) - - verts[ 0] = 0.0 # x1 - verts[ 1] = 0.8 # y1 - verts[ 2] = 0.2 # z1 - verts[ 3] = 1.0 # w1 - verts[ 4] = 1.0 # r1 - verts[ 5] = 0.0 # g1 - verts[ 6] = 0.0 # b1 - verts[ 7] = 1.0 # a1 - verts[ 8] = -0.8 # x2 - verts[ 9] = -0.8 # y2 - verts[10] = 0.5 # z2 - verts[11] = 1.0 # w2 - verts[12] = 0.0 # r2 - verts[13] = 1.0 # g2 - verts[14] = 0.0 # b2 - verts[15] = 1.0 # a2 - verts[16] = 0.8 # x3 - verts[17] = -0.8 # y3 - verts[18] = 0.8 # z3 - verts[19] = 1.0 # w3 - verts[20] = 0.0 # r3 - verts[21] = 0.0 # g3 - verts[22] = 1.0 # b3 - verts[23] = 1.0 # a3 - - ctx.draw_vertices(PIPE_PRIM_TRIANGLES, - nverts, - nattrs, - verts) - - ctx.flush() - - show_image(cbuf) - #show_image(zbuf) - #save_image('cbuf.png', cbuf) - #save_image('zbuf.png', zbuf) - - - -def main(): - dev = Device() - test(dev) - - -if __name__ == '__main__': - main() diff --git a/src/gallium/tests/python/samples/tri.py b/src/gallium/tests/python/samples/tri.py deleted file mode 100644 index 6d17c88c057..00000000000 --- a/src/gallium/tests/python/samples/tri.py +++ /dev/null @@ -1,233 +0,0 @@ -#!/usr/bin/env python -########################################################################## -# -# Copyright 2008 Tungsten Graphics, Inc., Cedar Park, Texas. -# 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, 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 TUNGSTEN GRAPHICS AND/OR ITS 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. -# -########################################################################## - - -from gallium import * - - -def make_image(ctx, surface): - data = ctx.surface_read_rgba8(surface, 0, 0, surface.width, surface.height) - - import Image - outimage = Image.fromstring('RGBA', (surface.width, surface.height), data, "raw", 'RGBA', 0, 1) - return outimage - -def save_image(ctx, surface, filename): - outimage = make_image(ctx, surface) - outimage.save(filename, "PNG") - -def show_image(ctx, surface): - outimage = make_image(ctx, surface) - - import Tkinter as tk - from PIL import Image, ImageTk - root = tk.Tk() - - root.title('background image') - - image1 = ImageTk.PhotoImage(outimage) - w = image1.width() - h = image1.height() - x = 100 - y = 100 - root.geometry("%dx%d+%d+%d" % (w, h, x, y)) - panel1 = tk.Label(root, image=image1) - panel1.pack(side='top', fill='both', expand='yes') - panel1.image = image1 - root.mainloop() - - -def test(dev): - ctx = dev.context_create() - - width = 255 - height = 255 - minz = 0.0 - maxz = 1.0 - - # disabled blending/masking - blend = Blend() - blend.rt[0].rgb_src_factor = PIPE_BLENDFACTOR_ONE - blend.rt[0].alpha_src_factor = PIPE_BLENDFACTOR_ONE - blend.rt[0].rgb_dst_factor = PIPE_BLENDFACTOR_ZERO - blend.rt[0].alpha_dst_factor = PIPE_BLENDFACTOR_ZERO - blend.rt[0].colormask = PIPE_MASK_RGBA - ctx.set_blend(blend) - - # depth/stencil/alpha - depth_stencil_alpha = DepthStencilAlpha() - depth_stencil_alpha.depth.enabled = 1 - depth_stencil_alpha.depth.writemask = 1 - depth_stencil_alpha.depth.func = PIPE_FUNC_LESS - ctx.set_depth_stencil_alpha(depth_stencil_alpha) - - # rasterizer - rasterizer = Rasterizer() - rasterizer.front_ccw = False - rasterizer.cull_face = PIPE_FACE_NONE - rasterizer.scissor = 1 - ctx.set_rasterizer(rasterizer) - - # viewport - viewport = Viewport() - scale = FloatArray(4) - scale[0] = width / 2.0 - scale[1] = -height / 2.0 - scale[2] = (maxz - minz) / 2.0 - scale[3] = 1.0 - viewport.scale = scale - translate = FloatArray(4) - translate[0] = width / 2.0 - translate[1] = height / 2.0 - translate[2] = (maxz - minz) / 2.0 - translate[3] = 0.0 - viewport.translate = translate - ctx.set_viewport(viewport) - - # samplers - sampler = Sampler() - sampler.wrap_s = PIPE_TEX_WRAP_CLAMP_TO_EDGE - sampler.wrap_t = PIPE_TEX_WRAP_CLAMP_TO_EDGE - sampler.wrap_r = PIPE_TEX_WRAP_CLAMP_TO_EDGE - sampler.min_mip_filter = PIPE_TEX_MIPFILTER_NONE - sampler.min_img_filter = PIPE_TEX_MIPFILTER_NEAREST - sampler.mag_img_filter = PIPE_TEX_MIPFILTER_NEAREST - sampler.normalized_coords = 1 - ctx.set_fragment_sampler(0, sampler) - - # scissor - scissor = Scissor() - scissor.minx = 0 - scissor.miny = 0 - scissor.maxx = width - scissor.maxy = height - ctx.set_scissor(scissor) - - # clip - clip = Clip() - clip.nr = 0 - ctx.set_clip(clip) - - # framebuffer - cbuf = dev.resource_create( - PIPE_FORMAT_B8G8R8X8_UNORM, - width, height, - bind=PIPE_BIND_RENDER_TARGET, - ).get_surface() - zbuf = dev.resource_create( - PIPE_FORMAT_Z32_UNORM, - width, height, - bind=PIPE_BIND_DEPTH_STENCIL, - ).get_surface() - fb = Framebuffer() - fb.width = width - fb.height = height - fb.nr_cbufs = 1 - fb.set_cbuf(0, cbuf) - fb.set_zsbuf(zbuf) - ctx.set_framebuffer(fb) - rgba = FloatArray(4); - rgba[0] = 0.0 - rgba[1] = 0.0 - rgba[2] = 0.0 - rgba[3] = 0.0 - ctx.clear(PIPE_CLEAR_COLOR | PIPE_CLEAR_DEPTHSTENCIL, rgba, 1.0, 0xff) - - # vertex shader - vs = Shader(''' - VERT - DCL IN[0] - DCL IN[1] - DCL OUT[0], POSITION, CONSTANT - DCL OUT[1], COLOR, CONSTANT - 0:MOV OUT[0], IN[0] - 1:MOV OUT[1], IN[1] - 2:END - ''') - ctx.set_vertex_shader(vs) - - # fragment shader - fs = Shader(''' - FRAG - DCL IN[0], COLOR, LINEAR - DCL OUT[0], COLOR, CONSTANT - 0:MOV OUT[0], IN[0] - 1:END - ''') - ctx.set_fragment_shader(fs) - - nverts = 3 - nattrs = 2 - verts = FloatArray(nverts * nattrs * 4) - - verts[ 0] = 0.0 # x1 - verts[ 1] = 0.8 # y1 - verts[ 2] = 0.2 # z1 - verts[ 3] = 1.0 # w1 - verts[ 4] = 1.0 # r1 - verts[ 5] = 0.0 # g1 - verts[ 6] = 0.0 # b1 - verts[ 7] = 1.0 # a1 - verts[ 8] = -0.8 # x2 - verts[ 9] = -0.8 # y2 - verts[10] = 0.5 # z2 - verts[11] = 1.0 # w2 - verts[12] = 0.0 # r2 - verts[13] = 1.0 # g2 - verts[14] = 0.0 # b2 - verts[15] = 1.0 # a2 - verts[16] = 0.8 # x3 - verts[17] = -0.8 # y3 - verts[18] = 0.8 # z3 - verts[19] = 1.0 # w3 - verts[20] = 0.0 # r3 - verts[21] = 0.0 # g3 - verts[22] = 1.0 # b3 - verts[23] = 1.0 # a3 - - ctx.draw_vertices(PIPE_PRIM_TRIANGLES, - nverts, - nattrs, - verts) - - ctx.flush() - - show_image(ctx, cbuf) - show_image(ctx, zbuf) - save_image(ctx, cbuf, 'cbuf.png') - save_image(ctx, zbuf, 'zbuf.png') - - - -def main(): - dev = Device() - test(dev) - - -if __name__ == '__main__': - main() diff --git a/src/gallium/tests/python/tests/.gitignore b/src/gallium/tests/python/tests/.gitignore deleted file mode 100644 index 0dbbaeea16b..00000000000 --- a/src/gallium/tests/python/tests/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -*.txt -*.tsv -*.dot diff --git a/src/gallium/tests/python/tests/base.py b/src/gallium/tests/python/tests/base.py deleted file mode 100755 index d8cf84db363..00000000000 --- a/src/gallium/tests/python/tests/base.py +++ /dev/null @@ -1,399 +0,0 @@ -#!/usr/bin/env python -########################################################################## -# -# Copyright 2009 VMware, Inc. -# Copyright 2008 Tungsten Graphics, Inc., Cedar Park, Texas. -# 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, 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 VMWARE AND/OR ITS 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. -# -########################################################################## - - -"""Base classes for tests. - -Loosely inspired on Python's unittest module. -""" - - -import os.path -import sys - -from gallium import * - - -# Enumerate all pixel formats -formats = {} -for name, value in globals().items(): - if name.startswith("PIPE_FORMAT_") and isinstance(value, int) and name not in ("PIPE_FORMAT_NONE", "PIPE_FORMAT_COUNT"): - formats[value] = name - -def make_image(width, height, rgba): - import Image - outimage = Image.new( - mode='RGB', - size=(width, height), - color=(0,0,0)) - outpixels = outimage.load() - for y in range(0, height): - for x in range(0, width): - offset = (y*width + x)*4 - r, g, b, a = [int(min(max(rgba[offset + ch], 0.0), 1.0)*255) for ch in range(4)] - outpixels[x, y] = r, g, b - return outimage - -def save_image(width, height, rgba, filename): - outimage = make_image(width, height, rgba) - outimage.save(filename, "PNG") - -def show_image(width, height, **rgbas): - import Tkinter as tk - from PIL import Image, ImageTk - - root = tk.Tk() - - x = 64 - y = 64 - - labels = rgbas.keys() - labels.sort() - for i in range(len(labels)): - label = labels[i] - outimage = make_image(width, height, rgbas[label]) - - if i: - window = tk.Toplevel(root) - else: - window = root - window.title(label) - image1 = ImageTk.PhotoImage(outimage) - w = image1.width() - h = image1.height() - window.geometry("%dx%d+%d+%d" % (w, h, x, y)) - panel1 = tk.Label(window, image=image1) - panel1.pack(side='top', fill='both', expand='yes') - panel1.image = image1 - x += w + 2 - - root.mainloop() - - -class TestFailure(Exception): - - pass - -class TestSkip(Exception): - - pass - - -class Test: - - def __init__(self): - pass - - def _run(self, result): - raise NotImplementedError - - def run(self): - result = TestResult() - self._run(result) - result.report() - - def assert_rgba(self, ctx, surface, x, y, w, h, expected_rgba, pixel_tol=4.0/256, surface_tol=0.85): - total = h*w - different = ctx.surface_compare_rgba(surface, x, y, w, h, expected_rgba, tol=pixel_tol) - if different: - sys.stderr.write("%u out of %u pixels differ\n" % (different, total)) - - if float(total - different)/float(total) < surface_tol: - if 0: - rgba = FloatArray(h*w*4) - ctx.surface_read_rgba(surface, x, y, w, h, rgba) - show_image(w, h, Result=rgba, Expected=expected_rgba) - save_image(w, h, rgba, "result.png") - save_image(w, h, expected_rgba, "expected.png") - #sys.exit(0) - - raise TestFailure - - -class TestCase(Test): - - tags = () - - def __init__(self, dev, **kargs): - Test.__init__(self) - self.dev = dev - self.__dict__.update(kargs) - - def description(self): - descriptions = [] - for tag in self.tags: - value = self.get(tag) - if value is not None and value != '': - descriptions.append(tag + '=' + str(value)) - return ' '.join(descriptions) - - def get(self, tag): - try: - method = getattr(self, '_get_' + tag) - except AttributeError: - return getattr(self, tag, None) - else: - return method() - - def _get_target(self): - return { - PIPE_TEXTURE_1D: "1d", - PIPE_TEXTURE_2D: "2d", - PIPE_TEXTURE_3D: "3d", - PIPE_TEXTURE_CUBE: "cube", - }[self.target] - - def _get_format(self): - name = formats[self.format] - if name.startswith('PIPE_FORMAT_'): - name = name[12:] - name = name.lower() - return name - - def _get_face(self): - if self.target == PIPE_TEXTURE_CUBE: - return { - PIPE_TEX_FACE_POS_X: "+x", - PIPE_TEX_FACE_NEG_X: "-x", - PIPE_TEX_FACE_POS_Y: "+y", - PIPE_TEX_FACE_NEG_Y: "-y", - PIPE_TEX_FACE_POS_Z: "+z", - PIPE_TEX_FACE_NEG_Z: "-z", - }[self.face] - else: - return '' - - def test(self): - raise NotImplementedError - - def _run(self, result): - result.test_start(self) - try: - self.test() - except KeyboardInterrupt: - raise - except TestSkip: - result.test_skipped(self) - except TestFailure: - result.test_failed(self) - else: - result.test_passed(self) - - -class TestSuite(Test): - - def __init__(self, tests = None): - Test.__init__(self) - if tests is None: - self.tests = [] - else: - self.tests = tests - - def add_test(self, test): - self.tests.append(test) - - def _run(self, result): - for test in self.tests: - test._run(result) - - -class TestResult: - - def __init__(self): - self.tests = 0 - self.passed = 0 - self.skipped = 0 - self.failed = 0 - - self.names = ['result'] - self.types = ['pass skip fail'] - self.rows = [] - - def test_start(self, test): - sys.stdout.write("Running %s...\n" % test.description()) - sys.stdout.flush() - self.tests += 1 - - def test_passed(self, test): - sys.stdout.write("PASS\n") - sys.stdout.flush() - self.passed += 1 - self.log_result(test, 'pass') - - def test_skipped(self, test): - sys.stdout.write("SKIP\n") - sys.stdout.flush() - self.skipped += 1 - self.log_result(test, 'skip') - - def test_failed(self, test): - sys.stdout.write("FAIL\n") - sys.stdout.flush() - self.failed += 1 - self.log_result(test, 'fail') - - def log_result(self, test, result): - row = ['']*len(self.names) - - # add result - assert self.names[0] == 'result' - assert result in ('pass', 'skip', 'fail') - row[0] = result - - # add tags - for tag in test.tags: - value = test.get(tag) - - # infer type - if value is None: - continue - elif isinstance(value, (int, float)): - value = str(value) - type = 'c' # continous - elif isinstance(value, basestring): - type = 'd' # discrete - else: - assert False - value = str(value) - type = 'd' # discrete - - # insert value - try: - col = self.names.index(tag, 1) - except ValueError: - self.names.append(tag) - self.types.append(type) - row.append(value) - else: - row[col] = value - assert self.types[col] == type - - self.rows.append(row) - - def report(self): - sys.stdout.write("%u tests, %u passed, %u skipped, %u failed\n\n" % (self.tests, self.passed, self.skipped, self.failed)) - sys.stdout.flush() - - name, ext = os.path.splitext(os.path.basename(sys.argv[0])) - - tree = self.report_tree(name) - self.report_junit(name, stdout=tree) - - def report_tree(self, name): - filename = name + '.tsv' - stream = file(filename, 'wt') - - # header - stream.write('\t'.join(self.names) + '\n') - stream.write('\t'.join(self.types) + '\n') - stream.write('class\n') - - # rows - for row in self.rows: - if row[0] == 'skip': - continue - row += ['']*(len(self.names) - len(row)) - stream.write('\t'.join(row) + '\n') - - stream.close() - - # See http://www.ailab.si/orange/doc/ofb/c_otherclass.htm - try: - import orange - import orngTree - except ImportError: - sys.stderr.write('Install Orange from http://www.ailab.si/orange/ for a classification tree.\n') - return None - - data = orange.ExampleTable(filename) - - tree = orngTree.TreeLearner(data, sameMajorityPruning=1, mForPruning=2) - - orngTree.printTxt(tree, maxDepth=4) - - text_tree = orngTree.dumpTree(tree) - - file(name + '.txt', 'wt').write(text_tree) - - orngTree.printDot(tree, fileName=name+'.dot', nodeShape='ellipse', leafShape='box') - - return text_tree - - def report_junit(self, name, stdout=None, stderr=None): - """Write test results in ANT's junit XML format, to use with Hudson CI. - - See also: - - http://fisheye.hudson-ci.org/browse/Hudson/trunk/hudson/main/core/src/test/resources/hudson/tasks/junit - - http://www.junit.org/node/399 - - http://wiki.apache.org/ant/Proposals/EnhancedTestReports - """ - - stream = file(name + '.xml', 'wt') - - stream.write('\n') - stream.write('\n' % self.escape_xml(name)) - stream.write(' \n') - stream.write(' \n') - - names = self.names[1:] - - for row in self.rows: - - test_name = ' '.join(['%s=%s' % pair for pair in zip(self.names[1:], row[1:])]) - - stream.write(' \n' % (self.escape_xml(test_name))) - - result = row[0] - if result == 'pass': - pass - elif result == 'skip': - stream.write(' \n') - else: - stream.write(' \n') - - stream.write(' \n') - - if stdout: - stream.write(' %s\n' % self.escape_xml(stdout)) - if stderr: - stream.write(' %s\n' % self.escape_xml(stderr)) - - stream.write('\n') - - stream.close() - - def escape_xml(self, s): - '''Escape a XML string.''' - s = s.replace('&', '&') - s = s.replace('<', '<') - s = s.replace('>', '>') - s = s.replace('"', '"') - s = s.replace("'", ''') - return s - diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/.gitignore b/src/gallium/tests/python/tests/regress/fragment-shader/.gitignore deleted file mode 100644 index e33609d251c..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/.gitignore +++ /dev/null @@ -1 +0,0 @@ -*.png diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-abs.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-abs.sh deleted file mode 100644 index 103d7497f48..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-abs.sh +++ /dev/null @@ -1,13 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -DCL TEMP[0] - -IMM FLT32 { -0.5, -0.4, -0.6, 0.0 } - -ADD TEMP[0], IN[0], IMM[0] -ABS OUT[0], TEMP[0] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-add.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-add.sh deleted file mode 100644 index bcb94205963..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-add.sh +++ /dev/null @@ -1,8 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -ADD OUT[0], IN[0], IN[0] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-cb-1d.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-cb-1d.sh deleted file mode 100644 index 85fb9ea4e7f..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-cb-1d.sh +++ /dev/null @@ -1,13 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR -DCL CONST[1] -DCL CONST[3] -DCL TEMP[0..1] - -ADD TEMP[0], IN[0], CONST[1] -RCP TEMP[1], CONST[3].xxxx -MUL OUT[0], TEMP[0], TEMP[1] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-cb-2d.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-cb-2d.sh deleted file mode 100644 index bbc3a10f9b5..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-cb-2d.sh +++ /dev/null @@ -1,9 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR -DCL CONST[1][6] - -MOV OUT[0], CONST[1][6] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-dp3.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-dp3.sh deleted file mode 100644 index b5281975d4a..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-dp3.sh +++ /dev/null @@ -1,8 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -DP3 OUT[0], IN[0], IN[0] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-dp4.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-dp4.sh deleted file mode 100644 index d59df76e70b..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-dp4.sh +++ /dev/null @@ -1,8 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -DP4 OUT[0], IN[0].xyzx, IN[0].xyzx - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-dst.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-dst.sh deleted file mode 100644 index fbb20fa9f62..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-dst.sh +++ /dev/null @@ -1,8 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -DST OUT[0], IN[0], IN[0] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-ex2.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-ex2.sh deleted file mode 100644 index b511288f4b6..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-ex2.sh +++ /dev/null @@ -1,11 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -DCL TEMP[0] - -EX2 TEMP[0], IN[0].xxxx -MUL OUT[0], TEMP[0], IN[0] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-face.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-face.sh deleted file mode 100644 index 5745b6a5aba..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-face.sh +++ /dev/null @@ -1,14 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL IN[1], FACE, CONSTANT -DCL OUT[0], COLOR -DCL TEMP[0] -IMM FLT32 { 0.5, 1.0, 0.0, 0.0 } - -MUL TEMP[0], IN[1].xxxx, IMM[0].xxxx -ADD TEMP[0], TEMP[0], IMM[0].yyyy - -MOV OUT[0], TEMP[0] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-flr.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-flr.sh deleted file mode 100644 index 99a2f96103a..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-flr.sh +++ /dev/null @@ -1,15 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -DCL TEMP[0] - -IMM FLT32 { 2.5, 4.0, 2.0, 1.0 } -IMM FLT32 { 0.4, 0.25, 0.5, 1.0 } - -MUL TEMP[0], IN[0], IMM[0] -FLR TEMP[0], TEMP[0] -MUL OUT[0], TEMP[0], IMM[1] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-frc.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-frc.sh deleted file mode 100644 index a54c2623b0a..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-frc.sh +++ /dev/null @@ -1,13 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -DCL TEMP[0] - -IMM FLT32 { 2.7, 3.1, 4.5, 1.0 } - -MUL TEMP[0], IN[0], IMM[0] -FRC OUT[0], TEMP[0] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-kil.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-kil.sh deleted file mode 100644 index 583b0ca4a4a..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-kil.sh +++ /dev/null @@ -1,18 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -DCL TEMP[0] - -IMM FLT32 { 0.6, 0.6, 0.6, 0.0 } -IMM FLT32 { 0.01, 0.0, 0.0, 0.0 } -IMM FLT32 { 1.0, 0.0, 0.0, 0.0 } - -SLT TEMP[0], IN[0], IMM[0] -MUL OUT[0], IN[0], TEMP[0] -MOV OUT[0].w, IMM[2].xxxx -SUB TEMP[0], TEMP[0], IMM[1].xxxy -KIL TEMP[0] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-lg2.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-lg2.sh deleted file mode 100644 index 5f5b4be1092..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-lg2.sh +++ /dev/null @@ -1,15 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -DCL TEMP[0] - -IMM FLT32 { 1.0, 0.0, 0.0, 0.0 } -IMM FLT32 { 0.5, 0.0, 0.0, 0.0 } - -ADD TEMP[0], IN[0], IMM[0] -LG2 TEMP[0].x, TEMP[0].xxxx -ADD OUT[0], TEMP[0], IMM[1] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-lit.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-lit.sh deleted file mode 100644 index 6323c4712dc..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-lit.sh +++ /dev/null @@ -1,8 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -LIT OUT[0], IN[0] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-lrp.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-lrp.sh deleted file mode 100644 index 740809d22e0..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-lrp.sh +++ /dev/null @@ -1,11 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -DCL TEMP[0] - -ABS TEMP[0], IN[0] -LRP OUT[0], TEMP[0], IN[0].xxxx, IN[0].yyyy - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-mad-immx.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-mad-immx.sh deleted file mode 100644 index 6b034915769..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-mad-immx.sh +++ /dev/null @@ -1,10 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR -DCL IMMX[0..1] {{ 0.5, 0.4, 0.6, 1.0 }, - { 0.5, 0.4, 0.6, 0.0 }} - -MAD OUT[0], IN[0], IMMX[0], IMMX[1] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-mad.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-mad.sh deleted file mode 100644 index 413b9dc3916..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-mad.sh +++ /dev/null @@ -1,11 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -IMM FLT32 { 0.5, 0.4, 0.6, 1.0 } -IMM FLT32 { 0.5, 0.4, 0.6, 0.0 } - -MAD OUT[0], IN[0], IMM[0], IMM[1] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-max.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-max.sh deleted file mode 100644 index b69f2132612..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-max.sh +++ /dev/null @@ -1,10 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -IMM FLT32 { 0.4, 0.4, 0.4, 0.0 } - -MAX OUT[0], IN[0], IMM[0] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-min.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-min.sh deleted file mode 100644 index df284f49e71..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-min.sh +++ /dev/null @@ -1,10 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -IMM FLT32 { 0.6, 0.6, 0.6, 1.0 } - -MIN OUT[0], IN[0], IMM[0] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-mov.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-mov.sh deleted file mode 100644 index 64af72f381b..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-mov.sh +++ /dev/null @@ -1,8 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -MOV OUT[0], IN[0] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-mul.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-mul.sh deleted file mode 100644 index bdd0b0026b9..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-mul.sh +++ /dev/null @@ -1,10 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -IMM FLT32 { 0.5, 0.6, 0.7, 1.0 } - -MUL OUT[0], IN[0], IMM[0] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-rcp.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-rcp.sh deleted file mode 100644 index f4b611b26ab..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-rcp.sh +++ /dev/null @@ -1,15 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -DCL TEMP[0] - -IMM FLT32 { 1.0, 0.0, 0.0, 0.0 } -IMM FLT32 { 1.5, 0.0, 0.0, 0.0 } - -ADD TEMP[0], IN[0], IMM[0] -RCP TEMP[0].x, TEMP[0].xxxx -SUB OUT[0], TEMP[0], IMM[1] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-rsq.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-rsq.sh deleted file mode 100644 index d1e9b0b53be..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-rsq.sh +++ /dev/null @@ -1,15 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -DCL TEMP[0] - -IMM FLT32 { 1.0, 0.0, 0.0, 0.0 } -IMM FLT32 { 1.5, 0.0, 0.0, 0.0 } - -ADD TEMP[0], IN[0], IMM[0] -RSQ TEMP[0].x, TEMP[0].xxxx -SUB OUT[0], TEMP[0], IMM[1] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-sge.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-sge.sh deleted file mode 100644 index 1f33fac4727..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-sge.sh +++ /dev/null @@ -1,13 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -DCL TEMP[0] - -IMM FLT32 { 0.6, 0.6, 0.6, 0.0 } - -SGE TEMP[0], IN[0], IMM[0] -MUL OUT[0], IN[0], TEMP[0] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-slt.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-slt.sh deleted file mode 100644 index d58b7886a12..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-slt.sh +++ /dev/null @@ -1,13 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -DCL TEMP[0] - -IMM FLT32 { 0.6, 0.6, 0.6, 0.0 } - -SLT TEMP[0], IN[0], IMM[0] -MUL OUT[0], IN[0], TEMP[0] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-srcmod-abs.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-srcmod-abs.sh deleted file mode 100644 index ecd19248c64..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-srcmod-abs.sh +++ /dev/null @@ -1,13 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -DCL TEMP[0] - -IMM FLT32 { -0.3, -0.5, -0.4, 0.0 } - -ADD TEMP[0], IN[0], IMM[0] -MOV OUT[0], |TEMP[0]| - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-srcmod-absneg.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-srcmod-absneg.sh deleted file mode 100644 index c2d99ddd15b..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-srcmod-absneg.sh +++ /dev/null @@ -1,15 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -DCL TEMP[0] - -IMM FLT32 { -0.2, -0.3, -0.4, 0.0 } -IMM FLT32 { -1.0, -1.0, -1.0, -1.0 } - -ADD TEMP[0], IN[0], IMM[0] -MOV TEMP[0], -|TEMP[0]| -MUL OUT[0], TEMP[0], IMM[1] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-srcmod-neg.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-srcmod-neg.sh deleted file mode 100644 index a08ab6d2dcb..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-srcmod-neg.sh +++ /dev/null @@ -1,11 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -DCL TEMP[0] - -SUB TEMP[0], IN[0], IN[0].yzxw -MOV OUT[0], -TEMP[0] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-srcmod-swz.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-srcmod-swz.sh deleted file mode 100644 index 6110647d979..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-srcmod-swz.sh +++ /dev/null @@ -1,8 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -MOV OUT[0], IN[0].yxzw - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-sub.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-sub.sh deleted file mode 100644 index 673fca139aa..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-sub.sh +++ /dev/null @@ -1,8 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -SUB OUT[0], IN[0], IN[0].yzxw - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-tempx.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-tempx.sh deleted file mode 100644 index 81bcad2d65c..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-tempx.sh +++ /dev/null @@ -1,14 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -DCL TEMPX[0][0..1] - -IMM FLT32 { -0.5, -0.4, -0.6, 0.0 } - -ADD TEMPX[0][0], IN[0], IMM[0] -ADD TEMPX[0][1], IN[0], IMM[0] -ABS OUT[0], TEMPX[0][1] - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/frag-xpd.sh b/src/gallium/tests/python/tests/regress/fragment-shader/frag-xpd.sh deleted file mode 100644 index 6ec8b1184cc..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/frag-xpd.sh +++ /dev/null @@ -1,8 +0,0 @@ -FRAG - -DCL IN[0], COLOR, LINEAR -DCL OUT[0], COLOR - -XPD OUT[0], IN[0], IN[0].yzxw - -END diff --git a/src/gallium/tests/python/tests/regress/fragment-shader/fragment-shader.py b/src/gallium/tests/python/tests/regress/fragment-shader/fragment-shader.py deleted file mode 100644 index ef65a9c5a1b..00000000000 --- a/src/gallium/tests/python/tests/regress/fragment-shader/fragment-shader.py +++ /dev/null @@ -1,257 +0,0 @@ -#!/usr/bin/env python -########################################################################## -# -# Copyright 2009 VMware, Inc. -# All Rights Reserved. -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the -# "Software"), to deal in the Software without restriction, including -# without limitation the rights to use, copy, modify, merge, publish, -# distribute, 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 VMWARE AND/OR ITS 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. -# -########################################################################## - -import struct - -from gallium import * - -def make_image(surface): - data = surface.get_tile_rgba8(0, 0, surface.width, surface.height) - - import Image - outimage = Image.fromstring('RGBA', (surface.width, surface.height), data, "raw", 'RGBA', 0, 1) - return outimage - -def save_image(filename, surface): - outimage = make_image(surface) - outimage.save(filename, "PNG") - -def test(dev, name): - ctx = dev.context_create() - - width = 320 - height = 320 - minz = 0.0 - maxz = 1.0 - - # disabled blending/masking - blend = Blend() - blend.rt[0].rgb_src_factor = PIPE_BLENDFACTOR_ONE - blend.rt[0].alpha_src_factor = PIPE_BLENDFACTOR_ONE - blend.rt[0].rgb_dst_factor = PIPE_BLENDFACTOR_ZERO - blend.rt[0].alpha_dst_factor = PIPE_BLENDFACTOR_ZERO - blend.rt[0].colormask = PIPE_MASK_RGBA - ctx.set_blend(blend) - - # depth/stencil/alpha - depth_stencil_alpha = DepthStencilAlpha() - depth_stencil_alpha.depth.enabled = 0 - depth_stencil_alpha.depth.writemask = 1 - depth_stencil_alpha.depth.func = PIPE_FUNC_LESS - ctx.set_depth_stencil_alpha(depth_stencil_alpha) - - # rasterizer - rasterizer = Rasterizer() - rasterizer.front_winding = PIPE_WINDING_CW - rasterizer.cull_mode = PIPE_WINDING_NONE - rasterizer.scissor = 1 - ctx.set_rasterizer(rasterizer) - - # viewport - viewport = Viewport() - scale = FloatArray(4) - scale[0] = width / 2.0 - scale[1] = -height / 2.0 - scale[2] = (maxz - minz) / 2.0 - scale[3] = 1.0 - viewport.scale = scale - translate = FloatArray(4) - translate[0] = width / 2.0 - translate[1] = height / 2.0 - translate[2] = (maxz - minz) / 2.0 - translate[3] = 0.0 - viewport.translate = translate - ctx.set_viewport(viewport) - - # samplers - sampler = Sampler() - sampler.wrap_s = PIPE_TEX_WRAP_CLAMP_TO_EDGE - sampler.wrap_t = PIPE_TEX_WRAP_CLAMP_TO_EDGE - sampler.wrap_r = PIPE_TEX_WRAP_CLAMP_TO_EDGE - sampler.min_mip_filter = PIPE_TEX_MIPFILTER_NONE - sampler.min_img_filter = PIPE_TEX_MIPFILTER_NEAREST - sampler.mag_img_filter = PIPE_TEX_MIPFILTER_NEAREST - sampler.normalized_coords = 1 - ctx.set_fragment_sampler(0, sampler) - - # scissor - scissor = Scissor() - scissor.minx = 0 - scissor.miny = 0 - scissor.maxx = width - scissor.maxy = height - ctx.set_scissor(scissor) - - clip = Clip() - clip.nr = 0 - ctx.set_clip(clip) - - # framebuffer - cbuf = dev.resource_create( - PIPE_FORMAT_B8G8R8X8_UNORM, - width, height, - bind=PIPE_BIND_RENDER_TARGET, - ).get_surface() - fb = Framebuffer() - fb.width = width - fb.height = height - fb.nr_cbufs = 1 - fb.set_cbuf(0, cbuf) - ctx.set_framebuffer(fb) - rgba = FloatArray(4); - rgba[0] = 0.5 - rgba[1] = 0.5 - rgba[2] = 0.5 - rgba[3] = 0.5 - ctx.clear(PIPE_CLEAR_COLOR, rgba, 0.0, 0) - - # vertex shader - vs = Shader(''' - VERT - DCL IN[0], POSITION - DCL IN[1], COLOR - DCL OUT[0], POSITION - DCL OUT[1], COLOR - MOV OUT[0], IN[0] - MOV OUT[1], IN[1] - END - ''') - ctx.set_vertex_shader(vs) - - # fragment shader - fs = Shader(file('frag-' + name + '.sh', 'rt').read()) - ctx.set_fragment_shader(fs) - - constbuf0 = dev.buffer_create(64, - (PIPE_BUFFER_USAGE_CONSTANT | - PIPE_BUFFER_USAGE_GPU_READ | - PIPE_BUFFER_USAGE_CPU_WRITE), - 4 * 4 * 4) - - cbdata = '' - cbdata += struct.pack('4f', 0.4, 0.0, 0.0, 1.0) - cbdata += struct.pack('4f', 1.0, 1.0, 1.0, 1.0) - cbdata += struct.pack('4f', 2.0, 2.0, 2.0, 2.0) - cbdata += struct.pack('4f', 4.0, 8.0, 16.0, 32.0) - - constbuf0.write(cbdata, 0) - - ctx.set_constant_buffer(PIPE_SHADER_FRAGMENT, - 0, - constbuf0) - - constbuf1 = dev.buffer_create(64, - (PIPE_BUFFER_USAGE_CONSTANT | - PIPE_BUFFER_USAGE_GPU_READ | - PIPE_BUFFER_USAGE_CPU_WRITE), - 4 * 4 * 4) - - cbdata = '' - cbdata += struct.pack('4f', 0.1, 0.1, 0.1, 0.1) - cbdata += struct.pack('4f', 0.25, 0.25, 0.25, 0.25) - cbdata += struct.pack('4f', 0.5, 0.5, 0.5, 0.5) - cbdata += struct.pack('4f', 0.75, 0.75, 0.75, 0.75) - - constbuf1.write(cbdata, 0) - - ctx.set_constant_buffer(PIPE_SHADER_FRAGMENT, - 1, - constbuf1) - - xy = [ - -0.8, -0.8, - 0.8, -0.8, - 0.0, 0.8, - ] - color = [ - 1.0, 0.0, 0.0, - 0.0, 1.0, 0.0, - 0.0, 0.0, 1.0, - ] - - nverts = 3 - nattrs = 2 - verts = FloatArray(nverts * nattrs * 4) - - for i in range(0, nverts): - verts[i * nattrs * 4 + 0] = xy[i * 2 + 0] # x - verts[i * nattrs * 4 + 1] = xy[i * 2 + 1] # y - verts[i * nattrs * 4 + 2] = 0.5 # z - verts[i * nattrs * 4 + 3] = 1.0 # w - verts[i * nattrs * 4 + 4] = color[i * 3 + 0] # r - verts[i * nattrs * 4 + 5] = color[i * 3 + 1] # g - verts[i * nattrs * 4 + 6] = color[i * 3 + 2] # b - verts[i * nattrs * 4 + 7] = 1.0 # a - - ctx.draw_vertices(PIPE_PRIM_TRIANGLES, - nverts, - nattrs, - verts) - - ctx.flush() - - save_image('frag-' + name + '.png', cbuf) - -def main(): - tests = [ - 'abs', - 'add', - 'cb-1d', - 'cb-2d', - 'dp3', - 'dp4', - 'dst', - 'ex2', - 'flr', - 'frc', - 'lg2', - 'lit', - 'lrp', - 'mad', - 'max', - 'min', - 'mov', - 'mul', - 'rcp', - 'rsq', - 'sge', - 'slt', - 'srcmod-abs', - 'srcmod-absneg', - 'srcmod-neg', - 'srcmod-swz', - 'sub', - 'xpd', - ] - - dev = Device() - for t in tests: - test(dev, t) - -if __name__ == '__main__': - main() diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/.gitignore b/src/gallium/tests/python/tests/regress/vertex-shader/.gitignore deleted file mode 100644 index e33609d251c..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/.gitignore +++ /dev/null @@ -1 +0,0 @@ -*.png diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-abs.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-abs.sh deleted file mode 100644 index 062a48b531e..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-abs.sh +++ /dev/null @@ -1,15 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR -DCL TEMP[0] - -IMM FLT32 { 0.2, 0.2, 0.0, 0.0 } - -ADD TEMP[0], IN[0], IMM[0] -ABS OUT[0], TEMP[0] -MOV OUT[1], IN[1] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-add.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-add.sh deleted file mode 100644 index 188931ebc8d..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-add.sh +++ /dev/null @@ -1,13 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR - -IMM FLT32 { 0.2, -0.1, 0.0, 0.0 } - -ADD OUT[0], IN[0], IMM[0] -MOV OUT[1], IN[1] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-arl.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-arl.sh deleted file mode 100644 index 0039597f6f0..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-arl.sh +++ /dev/null @@ -1,23 +0,0 @@ -VERT - -DCL IN[0] -DCL OUT[0], POSITION -DCL OUT[1], COLOR - -DCL TEMP[0] - -DCL ADDR[0] - -IMM FLT32 { 3.0, 1.0, 1.0, 1.0 } -IMM FLT32 { 1.0, 0.0, 0.0, 1.0 } -IMM FLT32 { 0.0, 1.0, 0.0, 1.0 } -IMM FLT32 { 0.0, 0.0, 1.0, 1.0 } -IMM FLT32 { 1.0, 1.0, 0.0, 1.0 } -IMM FLT32 { 0.0, 1.0, 1.0, 1.0 } - -MOV OUT[0], IN[0] -MUL TEMP[0], IN[0], IMM[0] -ARL ADDR[0].x, TEMP[0] -MOV OUT[1], IMM[ADDR[0].x + 3] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-arr.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-arr.sh deleted file mode 100644 index fdde4f9ad12..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-arr.sh +++ /dev/null @@ -1,23 +0,0 @@ -VERT - -DCL IN[0] -DCL OUT[0], POSITION -DCL OUT[1], COLOR - -DCL TEMP[0] - -DCL ADDR[0] - -IMM FLT32 { 3.0, 1.0, 1.0, 1.0 } -IMM FLT32 { 1.0, 0.0, 0.0, 1.0 } -IMM FLT32 { 0.0, 1.0, 0.0, 1.0 } -IMM FLT32 { 0.0, 0.0, 1.0, 1.0 } -IMM FLT32 { 1.0, 1.0, 0.0, 1.0 } -IMM FLT32 { 0.0, 1.0, 1.0, 1.0 } - -MOV OUT[0], IN[0] -MUL TEMP[0], IN[0], IMM[0] -ARR ADDR[0].x, TEMP[0] -MOV OUT[1], IMM[ADDR[0].x + 3] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-cb-1d.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-cb-1d.sh deleted file mode 100644 index e227917fd3b..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-cb-1d.sh +++ /dev/null @@ -1,16 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR -DCL CONST[1] -DCL CONST[3] -DCL TEMP[0..1] - -MOV OUT[0], IN[0] -ADD TEMP[0], IN[1], CONST[1] -RCP TEMP[1], CONST[3].xxxx -MUL OUT[1], TEMP[0], TEMP[1] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-cb-2d.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-cb-2d.sh deleted file mode 100644 index 39768d2dda9..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-cb-2d.sh +++ /dev/null @@ -1,12 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR -DCL CONST[1][1..2] - -MOV OUT[0], IN[0] -MAD OUT[1], IN[1], CONST[1][2], CONST[1][1] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-dp3.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-dp3.sh deleted file mode 100644 index 357e224f696..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-dp3.sh +++ /dev/null @@ -1,16 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR -DCL TEMP[0] - -IMM FLT32 { 0.0, 0.0, 1.0, 1.0 } - -DP3 TEMP[0].xy, IN[0], IN[0] -MOV TEMP[0].zw, IMM[0] -MUL OUT[0], IN[0], TEMP[0] -MOV OUT[1], IN[1] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-dp4.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-dp4.sh deleted file mode 100644 index 14f61066014..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-dp4.sh +++ /dev/null @@ -1,16 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR -DCL TEMP[0] - -IMM FLT32 { 0.0, 0.0, 1.0, 1.0 } - -DP4 TEMP[0].xy, IN[0], IN[0] -MOV TEMP[0].zw, IMM[0] -MUL OUT[0], IN[0], TEMP[0] -MOV OUT[1], IN[1] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-dst.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-dst.sh deleted file mode 100644 index 2d59bd1a0c3..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-dst.sh +++ /dev/null @@ -1,11 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR - -MOV OUT[0], IN[0] -DST OUT[1], IN[1], IN[0] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-ex2.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-ex2.sh deleted file mode 100644 index e2383a6b5bd..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-ex2.sh +++ /dev/null @@ -1,18 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR - -DCL TEMP[0..1] - -IMM FLT32 { 0.3, 0.3, 0.3, 1.0 } - -EX2 TEMP[0], IN[0] -EX2 TEMP[1], IN[1].yyyy -MUL TEMP[0], TEMP[0], IMM[0] -MOV OUT[0], IN[0] -MUL OUT[1], TEMP[0], TEMP[1] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-flr.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-flr.sh deleted file mode 100644 index fa24806663b..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-flr.sh +++ /dev/null @@ -1,23 +0,0 @@ -VERT - -DCL IN[0] -DCL OUT[0], POSITION -DCL OUT[1], COLOR - -DCL TEMP[0] - -DCL ADDR[0] - -IMM FLT32 { 3.0, 1.0, 1.0, 1.0 } -IMM FLT32 { 1.0, 0.0, 0.0, 1.0 } -IMM FLT32 { 0.0, 1.0, 0.0, 1.0 } -IMM FLT32 { 0.0, 0.0, 1.0, 1.0 } -IMM FLT32 { 1.0, 1.0, 0.0, 1.0 } -IMM FLT32 { 0.0, 1.0, 1.0, 1.0 } - -MOV OUT[0], IN[0] -MUL TEMP[0], IN[0], IMM[0] -FLR ADDR[0].x, TEMP[0] -MOV OUT[1], IMM[ADDR[0].x + 3] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-frc.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-frc.sh deleted file mode 100644 index ff09bfafd0c..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-frc.sh +++ /dev/null @@ -1,15 +0,0 @@ -VERT - -DCL IN[0] -DCL OUT[0], POSITION -DCL OUT[1], COLOR - -DCL TEMP[0] - -IMM FLT32 { 2.7, 3.1, 4.5, 1.0 } - -MUL TEMP[0], IN[0].xyxw, IMM[0] -MOV OUT[0], IN[0] -FRC OUT[1], TEMP[0] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-lg2.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-lg2.sh deleted file mode 100644 index 876b7ab6608..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-lg2.sh +++ /dev/null @@ -1,18 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR - -DCL TEMP[0] - -IMM FLT32 { 1.0, 0.0, 0.0, 0.0 } -IMM FLT32 { 0.5, 0.0, 0.0, 0.0 } - -ADD TEMP[0], IN[0], IMM[0] -LG2 TEMP[0].x, TEMP[0].xxxx -ADD OUT[0], TEMP[0], IMM[1] -MOV OUT[1], IN[1] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-lit.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-lit.sh deleted file mode 100644 index a2235ff6119..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-lit.sh +++ /dev/null @@ -1,11 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR - -MOV OUT[0], IN[0] -LIT OUT[1], IN[1] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-lrp.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-lrp.sh deleted file mode 100644 index a26ca3b0ec0..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-lrp.sh +++ /dev/null @@ -1,14 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR - -DCL TEMP[0] - -ABS TEMP[0], IN[0] -MOV OUT[0], IN[0] -LRP OUT[1], TEMP[0], IN[1].xxxx, IN[1].yyyy - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-mad.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-mad.sh deleted file mode 100644 index caf83a91e48..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-mad.sh +++ /dev/null @@ -1,14 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR - -IMM FLT32 { 0.5, 1.0, 1.0, 1.0 } -IMM FLT32 { 0.5, 0.0, 0.0, 0.0 } - -MAD OUT[0], IN[0], IMM[0], IMM[1] -MOV OUT[1], IN[1] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-max.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-max.sh deleted file mode 100644 index db84a499214..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-max.sh +++ /dev/null @@ -1,13 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR - -IMM FLT32 { 0.5, 0.5, 0.5, 0.0 } - -MOV OUT[0], IN[0] -MAX OUT[1], IN[1], IMM[0] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-min.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-min.sh deleted file mode 100644 index 63a8c2cf3cd..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-min.sh +++ /dev/null @@ -1,13 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR - -IMM FLT32 { 0.5, 0.5, 0.5, 0.0 } - -MOV OUT[0], IN[0] -MIN OUT[1], IN[1], IMM[0] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-mov.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-mov.sh deleted file mode 100644 index 4c23e3eaadb..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-mov.sh +++ /dev/null @@ -1,11 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR - -MOV OUT[0], IN[0] -MOV OUT[1], IN[1] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-mul.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-mul.sh deleted file mode 100644 index a409cd4b21e..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-mul.sh +++ /dev/null @@ -1,13 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR - -IMM FLT32 { 0.6, 0.6, 1.0, 1.0 } - -MUL OUT[0], IN[0], IMM[0] -MOV OUT[1], IN[1] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-rcp.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-rcp.sh deleted file mode 100644 index d440e35d9a3..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-rcp.sh +++ /dev/null @@ -1,18 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR - -DCL TEMP[0] - -IMM FLT32 { 1.0, 0.0, 0.0, 0.0 } -IMM FLT32 { 1.5, 0.0, 0.0, 0.0 } - -ADD TEMP[0], IN[0], IMM[0] -RCP TEMP[0].x, TEMP[0].xxxx -SUB OUT[0], TEMP[0], IMM[1] -MOV OUT[1], IN[1] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-rsq.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-rsq.sh deleted file mode 100644 index 6fbd53ae0ac..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-rsq.sh +++ /dev/null @@ -1,18 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR - -DCL TEMP[0] - -IMM FLT32 { 1.0, 0.0, 0.0, 0.0 } -IMM FLT32 { 1.5, 0.0, 0.0, 0.0 } - -ADD TEMP[0], IN[0], IMM[0] -RSQ TEMP[0].x, TEMP[0].xxxx -SUB OUT[0], TEMP[0], IMM[1] -MOV OUT[1], IN[1] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-sge.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-sge.sh deleted file mode 100644 index e32a21b6109..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-sge.sh +++ /dev/null @@ -1,16 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR - -DCL TEMP[0] - -IMM FLT32 { -0.1, -0.1, 1.0, 0.0 } - -SGE TEMP[0], IN[0], IMM[0] -MOV OUT[0], IN[0] -MUL OUT[1], IN[1], TEMP[0] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-slt.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-slt.sh deleted file mode 100644 index 2af61062922..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-slt.sh +++ /dev/null @@ -1,16 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR - -DCL TEMP[0] - -IMM FLT32 { 0.6, 0.6, 0.0, 0.0 } - -SLT TEMP[0], IN[0], IMM[0] -MOV OUT[0], IN[0] -MUL OUT[1], IN[1], TEMP[0] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-srcmod-abs.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-srcmod-abs.sh deleted file mode 100644 index e768d95049d..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-srcmod-abs.sh +++ /dev/null @@ -1,15 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR -DCL TEMP[0] - -IMM FLT32 { 0.1, 0.1, 0.0, 0.0 } - -ADD TEMP[0], IN[0], IMM[0] -MOV OUT[0], |TEMP[0]| -MOV OUT[1], IN[1] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-srcmod-absneg.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-srcmod-absneg.sh deleted file mode 100644 index 40ca5d60def..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-srcmod-absneg.sh +++ /dev/null @@ -1,16 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR -DCL TEMP[0] - -IMM FLT32 { -0.2, -0.2, 0.0, 0.0 } - -ADD TEMP[0], IN[0], IMM[0] -MOV OUT[0].xy, -|TEMP[0]| -MOV OUT[0].zw, IN[0] -MOV OUT[1], IN[1] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-srcmod-neg.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-srcmod-neg.sh deleted file mode 100644 index 297bc1ee3ed..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-srcmod-neg.sh +++ /dev/null @@ -1,12 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR - -MOV OUT[0].xy, -IN[0] -MOV OUT[0].zw, IN[0] -MOV OUT[1], IN[1] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-srcmod-swz.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-srcmod-swz.sh deleted file mode 100644 index 528f164b9ee..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-srcmod-swz.sh +++ /dev/null @@ -1,11 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR - -MOV OUT[0], IN[0].yxzw -MOV OUT[1], IN[1] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-sub.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-sub.sh deleted file mode 100644 index 90249abdd38..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-sub.sh +++ /dev/null @@ -1,13 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR - -IMM FLT32 { 0.1, 0.1, 0.0, 0.0 } - -SUB OUT[0], IN[0], IMM[0] -MOV OUT[1], IN[1] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vert-xpd.sh b/src/gallium/tests/python/tests/regress/vertex-shader/vert-xpd.sh deleted file mode 100644 index 72b048676fb..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vert-xpd.sh +++ /dev/null @@ -1,11 +0,0 @@ -VERT - -DCL IN[0] -DCL IN[1] -DCL OUT[0], POSITION -DCL OUT[1], COLOR - -MOV OUT[0], IN[0] -XPD OUT[1], IN[0], IN[1] - -END diff --git a/src/gallium/tests/python/tests/regress/vertex-shader/vertex-shader.py b/src/gallium/tests/python/tests/regress/vertex-shader/vertex-shader.py deleted file mode 100644 index 05e40dbd5f1..00000000000 --- a/src/gallium/tests/python/tests/regress/vertex-shader/vertex-shader.py +++ /dev/null @@ -1,287 +0,0 @@ -#!/usr/bin/env python -########################################################################## -# -# Copyright 2009 VMware, Inc. -# All Rights Reserved. -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the -# "Software"), to deal in the Software without restriction, including -# without limitation the rights to use, copy, modify, merge, publish, -# distribute, 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 VMWARE AND/OR ITS 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. -# -########################################################################## - - -import struct - -from gallium import * - -def make_image(surface): - data = surface.get_tile_rgba8(0, 0, surface.width, surface.height) - - import Image - outimage = Image.fromstring('RGBA', (surface.width, surface.height), data, "raw", 'RGBA', 0, 1) - return outimage - -def save_image(filename, surface): - outimage = make_image(surface) - outimage.save(filename, "PNG") - -def test(dev, name): - ctx = dev.context_create() - - width = 320 - height = 320 - minz = 0.0 - maxz = 1.0 - - # disabled blending/masking - blend = Blend() - blend.rt[0].rgb_src_factor = PIPE_BLENDFACTOR_ONE - blend.rt[0].alpha_src_factor = PIPE_BLENDFACTOR_ONE - blend.rt[0].rgb_dst_factor = PIPE_BLENDFACTOR_ZERO - blend.rt[0].alpha_dst_factor = PIPE_BLENDFACTOR_ZERO - blend.rt[0].colormask = PIPE_MASK_RGBA - ctx.set_blend(blend) - - # depth/stencil/alpha - depth_stencil_alpha = DepthStencilAlpha() - depth_stencil_alpha.depth.enabled = 0 - depth_stencil_alpha.depth.writemask = 1 - depth_stencil_alpha.depth.func = PIPE_FUNC_LESS - ctx.set_depth_stencil_alpha(depth_stencil_alpha) - - # rasterizer - rasterizer = Rasterizer() - rasterizer.front_winding = PIPE_WINDING_CW - rasterizer.cull_mode = PIPE_WINDING_NONE - rasterizer.scissor = 1 - ctx.set_rasterizer(rasterizer) - - # viewport - viewport = Viewport() - scale = FloatArray(4) - scale[0] = width / 2.0 - scale[1] = -height / 2.0 - scale[2] = (maxz - minz) / 2.0 - scale[3] = 1.0 - viewport.scale = scale - translate = FloatArray(4) - translate[0] = width / 2.0 - translate[1] = height / 2.0 - translate[2] = (maxz - minz) / 2.0 - translate[3] = 0.0 - viewport.translate = translate - ctx.set_viewport(viewport) - - # samplers - sampler = Sampler() - sampler.wrap_s = PIPE_TEX_WRAP_CLAMP_TO_EDGE - sampler.wrap_t = PIPE_TEX_WRAP_CLAMP_TO_EDGE - sampler.wrap_r = PIPE_TEX_WRAP_CLAMP_TO_EDGE - sampler.min_mip_filter = PIPE_TEX_MIPFILTER_NONE - sampler.min_img_filter = PIPE_TEX_MIPFILTER_NEAREST - sampler.mag_img_filter = PIPE_TEX_MIPFILTER_NEAREST - sampler.normalized_coords = 1 - ctx.set_fragment_sampler(0, sampler) - - # scissor - scissor = Scissor() - scissor.minx = 0 - scissor.miny = 0 - scissor.maxx = width - scissor.maxy = height - ctx.set_scissor(scissor) - - clip = Clip() - clip.nr = 0 - ctx.set_clip(clip) - - # framebuffer - cbuf = dev.resource_create( - PIPE_FORMAT_B8G8R8X8_UNORM, - width, height, - bind=PIPE_BIND_RENDER_TARGET, - ).get_surface() - fb = Framebuffer() - fb.width = width - fb.height = height - fb.nr_cbufs = 1 - fb.set_cbuf(0, cbuf) - ctx.set_framebuffer(fb) - rgba = FloatArray(4); - rgba[0] = 0.5 - rgba[1] = 0.5 - rgba[2] = 0.5 - rgba[3] = 0.5 - ctx.clear(PIPE_CLEAR_COLOR, rgba, 0.0, 0) - - # vertex shader - vs = Shader(file('vert-' + name + '.sh', 'rt').read()) - ctx.set_vertex_shader(vs) - - # fragment shader - fs = Shader(''' - FRAG - DCL IN[0], COLOR, LINEAR - DCL OUT[0], COLOR, CONSTANT - 0:MOV OUT[0], IN[0] - 1:END - ''') - ctx.set_fragment_shader(fs) - - constbuf0 = dev.buffer_create(64, - (PIPE_BUFFER_USAGE_CONSTANT | - PIPE_BUFFER_USAGE_GPU_READ | - PIPE_BUFFER_USAGE_CPU_WRITE), - 4 * 4 * 4) - - cbdata = '' - cbdata += struct.pack('4f', 0.4, 0.0, 0.0, 1.0) - cbdata += struct.pack('4f', 1.0, 1.0, 1.0, 1.0) - cbdata += struct.pack('4f', 2.0, 2.0, 2.0, 2.0) - cbdata += struct.pack('4f', 4.0, 8.0, 16.0, 32.0) - - constbuf0.write(cbdata, 0) - - ctx.set_constant_buffer(PIPE_SHADER_VERTEX, - 0, - constbuf0) - - constbuf1 = dev.buffer_create(64, - (PIPE_BUFFER_USAGE_CONSTANT | - PIPE_BUFFER_USAGE_GPU_READ | - PIPE_BUFFER_USAGE_CPU_WRITE), - 4 * 4 * 4) - - cbdata = '' - cbdata += struct.pack('4f', 0.1, 0.1, 0.1, 0.1) - cbdata += struct.pack('4f', 0.25, 0.25, 0.25, 0.25) - cbdata += struct.pack('4f', 0.5, 0.5, 0.5, 0.5) - cbdata += struct.pack('4f', 0.75, 0.75, 0.75, 0.75) - - constbuf1.write(cbdata, 0) - - ctx.set_constant_buffer(PIPE_SHADER_VERTEX, - 1, - constbuf1) - - xy = [ - 0.0, 0.8, - -0.2, 0.4, - 0.2, 0.4, - -0.4, 0.0, - 0.0, 0.0, - 0.4, 0.0, - -0.6, -0.4, - -0.2, -0.4, - 0.2, -0.4, - 0.6, -0.4, - -0.8, -0.8, - -0.4, -0.8, - 0.0, -0.8, - 0.4, -0.8, - 0.8, -0.8, - ] - color = [ - 1.0, 0.0, 0.0, - 0.0, 1.0, 0.0, - 0.0, 0.0, 1.0, - ] - tri = [ - 1, 2, 0, - 3, 4, 1, - 4, 2, 1, - 4, 5, 2, - 6, 7, 3, - 7, 4, 3, - 7, 8, 4, - 8, 5, 4, - 8, 9, 5, - 10, 11, 6, - 11, 7, 6, - 11, 12, 7, - 12, 8, 7, - 12, 13, 8, - 13, 9, 8, - 13, 14, 9, - ] - - nverts = 16 * 3 - nattrs = 2 - verts = FloatArray(nverts * nattrs * 4) - - for i in range(0, nverts): - verts[i * nattrs * 4 + 0] = xy[tri[i] * 2 + 0] # x - verts[i * nattrs * 4 + 1] = xy[tri[i] * 2 + 1] # y - verts[i * nattrs * 4 + 2] = 0.5 # z - verts[i * nattrs * 4 + 3] = 1.0 # w - verts[i * nattrs * 4 + 4] = color[(i % 3) * 3 + 0] # r - verts[i * nattrs * 4 + 5] = color[(i % 3) * 3 + 1] # g - verts[i * nattrs * 4 + 6] = color[(i % 3) * 3 + 2] # b - verts[i * nattrs * 4 + 7] = 1.0 # a - - ctx.draw_vertices(PIPE_PRIM_TRIANGLES, - nverts, - nattrs, - verts) - - ctx.flush() - - save_image('vert-' + name + '.png', cbuf) - -def main(): - tests = [ - 'abs', - 'add', - 'arl', - 'arr', - 'cb-1d', - 'cb-2d', - 'dp3', - 'dp4', - 'dst', - 'ex2', - 'flr', - 'frc', - 'lg2', - 'lit', - 'lrp', - 'mad', - 'max', - 'min', - 'mov', - 'mul', - 'rcp', - 'rsq', - 'sge', - 'slt', - 'srcmod-abs', - 'srcmod-absneg', - 'srcmod-neg', - 'srcmod-swz', - 'sub', - 'xpd', - ] - - dev = Device() - for t in tests: - test(dev, t) - -if __name__ == '__main__': - main() diff --git a/src/gallium/tests/python/tests/surface_copy.py b/src/gallium/tests/python/tests/surface_copy.py deleted file mode 100755 index 7a6ede38044..00000000000 --- a/src/gallium/tests/python/tests/surface_copy.py +++ /dev/null @@ -1,201 +0,0 @@ -#!/usr/bin/env python -########################################################################## -# -# Copyright 2009 VMware, Inc. -# All Rights Reserved. -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the -# "Software"), to deal in the Software without restriction, including -# without limitation the rights to use, copy, modify, merge, publish, -# distribute, 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 VMWARE AND/OR ITS 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. -# -########################################################################## - - -import os -import random - -from gallium import * -from base import * - - -def lods(*dims): - size = max(dims) - lods = 0 - while size: - lods += 1 - size >>= 1 - return lods - - -class TextureTest(TestCase): - - tags = ( - 'target', - 'format', - 'width', - 'height', - 'depth', - 'last_level', - 'face', - 'level', - 'zslice', - ) - - def test(self): - dev = self.dev - ctx = self.ctx - - target = self.target - format = self.format - width = self.width - height = self.height - depth = self.depth - last_level = self.last_level - face = self.face - level = self.level - zslice = self.zslice - - bind = PIPE_BIND_SAMPLER_VIEW - geom_flags = 0 - sample_count = 0 - if not dev.is_format_supported(format, target, sample_count, bind, geom_flags): - raise TestSkip - - if not dev.is_format_supported(format, target, sample_count, bind, geom_flags): - raise TestSkip - - # textures - dst_texture = dev.resource_create( - target = target, - format = format, - width = width, - height = height, - depth = depth, - last_level = last_level, - bind = bind, - ) - - dst_surface = dst_texture.get_surface(face = face, level = level, zslice = zslice) - - src_texture = dev.resource_create( - target = target, - format = format, - width = dst_surface.width, - height = dst_surface.height, - depth = 1, - last_level = 0, - bind = PIPE_BIND_SAMPLER_VIEW, - ) - - src_surface = src_texture.get_surface() - - w = dst_surface.width - h = dst_surface.height - - stride = util_format_get_stride(format, w) - size = util_format_get_nblocksy(format, h) * stride - src_raw = os.urandom(size) - - ctx.surface_write_raw(src_surface, 0, 0, w, h, src_raw, stride) - - ctx.surface_copy(dst_surface, 0, 0, - src_surface, 0, 0, w, h) - - dst_raw = ctx.surface_read_raw(dst_surface, 0, 0, w, h) - - if dst_raw != src_raw: - raise TestFailure - - -def main(): - dev = Device() - ctx = dev.context_create() - suite = TestSuite() - - targets = [ - PIPE_TEXTURE_2D, - PIPE_TEXTURE_CUBE, - PIPE_TEXTURE_3D, - ] - - sizes = [64, 32, 16, 8, 4, 2, 1] - #sizes = [1020, 508, 252, 62, 30, 14, 6, 3] - #sizes = [64] - #sizes = [63] - - faces = [ - PIPE_TEX_FACE_POS_X, - PIPE_TEX_FACE_NEG_X, - PIPE_TEX_FACE_POS_Y, - PIPE_TEX_FACE_NEG_Y, - PIPE_TEX_FACE_POS_Z, - PIPE_TEX_FACE_NEG_Z, - ] - - try: - n = int(sys.argv[1]) - except: - n = 10000 - - for i in range(n): - format = random.choice(formats.keys()) - if not util_format_is_depth_or_stencil(format): - is_depth_or_stencil = util_format_is_depth_or_stencil(format) - - if is_depth_or_stencil: - target = PIPE_TEXTURE_2D - else: - target = random.choice(targets) - - size = random.choice(sizes) - - if target == PIPE_TEXTURE_3D: - depth = size - else: - depth = 1 - - if target == PIPE_TEXTURE_CUBE: - face = random.choice(faces) - else: - face = PIPE_TEX_FACE_POS_X - - levels = lods(size) - last_level = random.randint(0, levels - 1) - level = random.randint(0, last_level) - zslice = random.randint(0, max(depth >> level, 1) - 1) - - test = TextureTest( - dev = dev, - ctx = ctx, - target = target, - format = format, - width = size, - height = size, - depth = depth, - last_level = last_level, - face = face, - level = level, - zslice = zslice, - ) - suite.add_test(test) - suite.run() - - -if __name__ == '__main__': - main() diff --git a/src/gallium/tests/python/tests/texture_blit.py b/src/gallium/tests/python/tests/texture_blit.py deleted file mode 100755 index 089d05c6237..00000000000 --- a/src/gallium/tests/python/tests/texture_blit.py +++ /dev/null @@ -1,638 +0,0 @@ -#!/usr/bin/env python -########################################################################## -# -# Copyright 2009 VMware, Inc. -# Copyright 2008 Tungsten Graphics, Inc., Cedar Park, Texas. -# 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, 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 VMWARE AND/OR ITS 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. -# -########################################################################## - - -import random - -from gallium import * -from base import * - - -def lods(*dims): - size = max(dims) - lods = 0 - while size: - lods += 1 - size >>= 1 - return lods - - -def minify(dims, level = 1): - return [max(dim>>level, 1) for dim in dims] - - -def tex_coords(texture, face, level, zslice): - st = [ - [0.0, 0.0], - [1.0, 0.0], - [1.0, 1.0], - [0.0, 1.0], - ] - - if texture.target == PIPE_TEXTURE_2D or texture.target == PIPE_TEXTURE_RECT: - return [[s, t, 0.0] for s, t in st] - elif texture.target == PIPE_TEXTURE_3D: - depth = texture.get_depth(level) - if depth > 1: - r = float(zslice)/float(depth - 1) - else: - r = 0.0 - return [[s, t, r] for s, t in st] - elif texture.target == PIPE_TEXTURE_CUBE: - result = [] - for s, t in st: - # See http://developer.nvidia.com/object/cube_map_ogl_tutorial.html - sc = 2.0*s - 1.0 - tc = 2.0*t - 1.0 - if face == PIPE_TEX_FACE_POS_X: - rx = 1.0 - ry = -tc - rz = -sc - if face == PIPE_TEX_FACE_NEG_X: - rx = -1.0 - ry = -tc - rz = sc - if face == PIPE_TEX_FACE_POS_Y: - rx = sc - ry = 1.0 - rz = tc - if face == PIPE_TEX_FACE_NEG_Y: - rx = sc - ry = -1.0 - rz = -tc - if face == PIPE_TEX_FACE_POS_Z: - rx = sc - ry = -tc - rz = 1.0 - if face == PIPE_TEX_FACE_NEG_Z: - rx = -sc - ry = -tc - rz = -1.0 - result.append([rx, ry, rz]) - return result - -def is_pot(n): - return n & (n - 1) == 0 - - -class TextureColorSampleTest(TestCase): - - tags = ( - 'target', - 'format', - 'width', - 'height', - 'depth', - 'last_level', - 'face', - 'level', - 'zslice', - ) - - def test(self): - dev = self.dev - ctx = self.ctx - - target = self.target - format = self.format - width = self.width - height = self.height - depth = self.depth - last_level = self.last_level - face = self.face - level = self.level - zslice = self.zslice - minz = 0.0 - maxz = 1.0 - - bind = PIPE_BIND_SAMPLER_VIEW - geom_flags = 0 - sample_count = 0 - if width != height: - geom_flags |= PIPE_TEXTURE_GEOM_NON_SQUARE - if not is_pot(width) or not is_pot(height) or not is_pot(depth): - geom_flags |= PIPE_TEXTURE_GEOM_NON_POWER_OF_TWO - - if not dev.is_format_supported(format, target, sample_count, bind, geom_flags): - raise TestSkip - - # disabled blending/masking - blend = Blend() - blend.rt[0].rgb_src_factor = PIPE_BLENDFACTOR_ONE - blend.rt[0].alpha_src_factor = PIPE_BLENDFACTOR_ONE - blend.rt[0].rgb_dst_factor = PIPE_BLENDFACTOR_ZERO - blend.rt[0].alpha_dst_factor = PIPE_BLENDFACTOR_ZERO - blend.rt[0].colormask = PIPE_MASK_RGBA - ctx.set_blend(blend) - - # no-op depth/stencil/alpha - depth_stencil_alpha = DepthStencilAlpha() - ctx.set_depth_stencil_alpha(depth_stencil_alpha) - - # rasterizer - rasterizer = Rasterizer() - rasterizer.front_winding = PIPE_WINDING_CW - rasterizer.cull_mode = PIPE_WINDING_NONE - ctx.set_rasterizer(rasterizer) - - # samplers - sampler = Sampler() - sampler.wrap_s = PIPE_TEX_WRAP_CLAMP_TO_EDGE - sampler.wrap_t = PIPE_TEX_WRAP_CLAMP_TO_EDGE - sampler.wrap_r = PIPE_TEX_WRAP_CLAMP_TO_EDGE - sampler.min_mip_filter = PIPE_TEX_MIPFILTER_NEAREST - sampler.min_img_filter = PIPE_TEX_MIPFILTER_NEAREST - sampler.mag_img_filter = PIPE_TEX_MIPFILTER_NEAREST - sampler.normalized_coords = 1 - sampler.min_lod = 0 - sampler.max_lod = PIPE_MAX_TEXTURE_LEVELS - 1 - ctx.set_fragment_sampler(0, sampler) - - # texture - texture = dev.resource_create( - target = target, - format = format, - width = width, - height = height, - depth = depth, - last_level = last_level, - bind = bind, - ) - - expected_rgba = FloatArray(height*width*4) - surface = texture.get_surface( - face = face, - level = level, - zslice = zslice, - ) - - ctx.surface_sample_rgba(surface, expected_rgba, True) - - ctx.set_fragment_sampler_texture(0, texture) - - # viewport - viewport = Viewport() - scale = FloatArray(4) - scale[0] = width - scale[1] = height - scale[2] = (maxz - minz) / 2.0 - scale[3] = 1.0 - viewport.scale = scale - translate = FloatArray(4) - translate[0] = 0.0 - translate[1] = 0.0 - translate[2] = (maxz - minz) / 2.0 - translate[3] = 0.0 - viewport.translate = translate - ctx.set_viewport(viewport) - - # scissor - scissor = Scissor() - scissor.minx = 0 - scissor.miny = 0 - scissor.maxx = width - scissor.maxy = height - ctx.set_scissor(scissor) - - # clip - clip = Clip() - clip.nr = 0 - ctx.set_clip(clip) - - # framebuffer - cbuf_tex = dev.resource_create( - PIPE_FORMAT_B8G8R8A8_UNORM, - width, - height, - bind = PIPE_BIND_RENDER_TARGET, - ) - - cbuf = cbuf_tex.get_surface() - fb = Framebuffer() - fb.width = width - fb.height = height - fb.nr_cbufs = 1 - fb.set_cbuf(0, cbuf) - ctx.set_framebuffer(fb) - rgba = FloatArray(4); - rgba[0] = 0.5 - rgba[1] = 0.5 - rgba[2] = 0.5 - rgba[3] = 0.5 - ctx.clear(PIPE_CLEAR_COLOR, rgba, 0.0, 0) - del fb - - # vertex shader - vs = Shader(''' - VERT - DCL IN[0], POSITION, CONSTANT - DCL IN[1], GENERIC, CONSTANT - DCL OUT[0], POSITION, CONSTANT - DCL OUT[1], GENERIC, CONSTANT - 0:MOV OUT[0], IN[0] - 1:MOV OUT[1], IN[1] - 2:END - ''') - #vs.dump() - ctx.set_vertex_shader(vs) - - # fragment shader - op = { - PIPE_TEXTURE_1D: "1D", - PIPE_TEXTURE_2D: "2D", - PIPE_TEXTURE_3D: "3D", - PIPE_TEXTURE_CUBE: "CUBE", - }[target] - fs = Shader(''' - FRAG - DCL IN[0], GENERIC[0], LINEAR - DCL OUT[0], COLOR, CONSTANT - DCL SAMP[0], CONSTANT - 0:TEX OUT[0], IN[0], SAMP[0], %s - 1:END - ''' % op) - #fs.dump() - ctx.set_fragment_shader(fs) - - nverts = 4 - nattrs = 2 - verts = FloatArray(nverts * nattrs * 4) - - x = 0 - y = 0 - w, h = minify((width, height), level) - - pos = [ - [x, y], - [x+w, y], - [x+w, y+h], - [x, y+h], - ] - - tex = tex_coords(texture, face, level, zslice) - - for i in range(0, 4): - j = 8*i - verts[j + 0] = pos[i][0]/float(width) # x - verts[j + 1] = pos[i][1]/float(height) # y - verts[j + 2] = 0.0 # z - verts[j + 3] = 1.0 # w - verts[j + 4] = tex[i][0] # s - verts[j + 5] = tex[i][1] # r - verts[j + 6] = tex[i][2] # q - verts[j + 7] = 1.0 - - ctx.draw_vertices(PIPE_PRIM_TRIANGLE_FAN, - nverts, - nattrs, - verts) - - ctx.flush() - - cbuf = cbuf_tex.get_surface() - - self.assert_rgba(ctx, cbuf, x, y, w, h, expected_rgba, 4.0/256, 0.85) - - -class TextureDepthSampleTest(TestCase): - - tags = ( - 'target', - 'format', - 'width', - 'height', - 'depth', - 'last_level', - 'face', - 'level', - 'zslice', - ) - - def test(self): - dev = self.dev - ctx = self.ctx - - target = self.target - format = self.format - width = self.width - height = self.height - depth = self.depth - last_level = self.last_level - face = self.face - level = self.level - zslice = self.zslice - minz = 0.0 - maxz = 1.0 - - bind = PIPE_BIND_SAMPLER_VIEW - geom_flags = 0 - sample_count = 0 - if width != height: - geom_flags |= PIPE_TEXTURE_GEOM_NON_SQUARE - if not is_pot(width) or not is_pot(height) or not is_pot(depth): - geom_flags |= PIPE_TEXTURE_GEOM_NON_POWER_OF_TWO - - if not dev.is_format_supported(format, target, sample_count, bind, geom_flags): - raise TestSkip - - # disabled blending/masking - blend = Blend() - blend.rt[0].rgb_src_factor = PIPE_BLENDFACTOR_ONE - blend.rt[0].alpha_src_factor = PIPE_BLENDFACTOR_ONE - blend.rt[0].rgb_dst_factor = PIPE_BLENDFACTOR_ZERO - blend.rt[0].alpha_dst_factor = PIPE_BLENDFACTOR_ZERO - blend.rt[0].colormask = PIPE_MASK_RGBA - ctx.set_blend(blend) - - # depth/stencil/alpha - depth_stencil_alpha = DepthStencilAlpha() - depth_stencil_alpha.depth.enabled = 1 - depth_stencil_alpha.depth.writemask = 1 - depth_stencil_alpha.depth.func = PIPE_FUNC_LESS - ctx.set_depth_stencil_alpha(depth_stencil_alpha) - - # rasterizer - rasterizer = Rasterizer() - rasterizer.front_winding = PIPE_WINDING_CW - rasterizer.cull_mode = PIPE_WINDING_NONE - ctx.set_rasterizer(rasterizer) - - # viewport - viewport = Viewport() - scale = FloatArray(4) - scale[0] = width - scale[1] = height - scale[2] = (maxz - minz) / 2.0 - scale[3] = 1.0 - viewport.scale = scale - translate = FloatArray(4) - translate[0] = 0.0 - translate[1] = 0.0 - translate[2] = (maxz - minz) / 2.0 - translate[3] = 0.0 - viewport.translate = translate - ctx.set_viewport(viewport) - - # samplers - sampler = Sampler() - sampler.wrap_s = PIPE_TEX_WRAP_CLAMP_TO_EDGE - sampler.wrap_t = PIPE_TEX_WRAP_CLAMP_TO_EDGE - sampler.wrap_r = PIPE_TEX_WRAP_CLAMP_TO_EDGE - sampler.min_mip_filter = PIPE_TEX_MIPFILTER_NEAREST - sampler.min_img_filter = PIPE_TEX_MIPFILTER_NEAREST - sampler.mag_img_filter = PIPE_TEX_MIPFILTER_NEAREST - sampler.normalized_coords = 1 - sampler.min_lod = 0 - sampler.max_lod = PIPE_MAX_TEXTURE_LEVELS - 1 - ctx.set_fragment_sampler(0, sampler) - - # texture - texture = dev.resource_create( - target = target, - format = format, - width = width, - height = height, - depth = depth, - last_level = last_level, - bind = bind, - ) - - expected_rgba = FloatArray(height*width*4) - surface = texture.get_surface( - face = face, - level = level, - zslice = zslice, - ) - - ctx.surface_sample_rgba(surface, expected_rgba, True) - - ctx.set_fragment_sampler_texture(0, texture) - - # scissor - scissor = Scissor() - scissor.minx = 0 - scissor.miny = 0 - scissor.maxx = width - scissor.maxy = height - ctx.set_scissor(scissor) - - # clip - clip = Clip() - clip.nr = 0 - ctx.set_clip(clip) - - # framebuffer - cbuf_tex = dev.resource_create( - PIPE_FORMAT_B8G8R8A8_UNORM, - width, - height, - bind = PIPE_BIND_RENDER_TARGET, - ) - - zsbuf_tex = dev.resource_create( - PIPE_FORMAT_X8Z24_UNORM, - width, - height, - bind = PIPE_BIND_RENDER_TARGET, - ) - - cbuf = cbuf_tex.get_surface() - zsbuf = zsbuf_tex.get_surface() - fb = Framebuffer() - fb.width = width - fb.height = height - fb.nr_cbufs = 1 - fb.set_cbuf(0, cbuf) - fb.set_zsbuf(zsbuf) - ctx.set_framebuffer(fb) - rgba = FloatArray(4); - rgba[0] = 0.5 - rgba[1] = 0.5 - rgba[2] = 0.5 - rgba[3] = 0.5 - ctx.clear(PIPE_CLEAR_DEPTHSTENCIL, rgba, 1.0, 0) - del fb - - # vertex shader - vs = Shader(''' - VERT - DCL IN[0], POSITION, CONSTANT - DCL IN[1], GENERIC, CONSTANT - DCL OUT[0], POSITION, CONSTANT - DCL OUT[1], GENERIC, CONSTANT - 0:MOV OUT[0], IN[0] - 1:MOV OUT[1], IN[1] - 2:END - ''') - #vs.dump() - ctx.set_vertex_shader(vs) - - # fragment shader - op = { - PIPE_TEXTURE_1D: "1D", - PIPE_TEXTURE_2D: "2D", - PIPE_TEXTURE_3D: "3D", - PIPE_TEXTURE_CUBE: "CUBE", - }[target] - fs = Shader(''' - FRAG - DCL IN[0], GENERIC[0], LINEAR - DCL SAMP[0], CONSTANT - DCL OUT[0].z, POSITION - 0:TEX OUT[0].z, IN[0], SAMP[0], %s - 1:END - ''' % op) - #fs.dump() - ctx.set_fragment_shader(fs) - - nverts = 4 - nattrs = 2 - verts = FloatArray(nverts * nattrs * 4) - - x = 0 - y = 0 - w, h = minify((width, height), level) - - pos = [ - [x, y], - [x+w, y], - [x+w, y+h], - [x, y+h], - ] - - tex = tex_coords(texture, face, level, zslice) - - for i in range(0, 4): - j = 8*i - verts[j + 0] = pos[i][0]/float(width) # x - verts[j + 1] = pos[i][1]/float(height) # y - verts[j + 2] = 0.0 # z - verts[j + 3] = 1.0 # w - verts[j + 4] = tex[i][0] # s - verts[j + 5] = tex[i][1] # r - verts[j + 6] = tex[i][2] # q - verts[j + 7] = 1.0 - - ctx.draw_vertices(PIPE_PRIM_TRIANGLE_FAN, - nverts, - nattrs, - verts) - - ctx.flush() - - zsbuf = zsbuf_tex.get_surface() - - self.assert_rgba(ctx, zsbuf, x, y, w, h, expected_rgba, 4.0/256, 0.85) - - - - -def main(): - random.seed(0xdead3eef) - - dev = Device() - ctx = dev.context_create() - suite = TestSuite() - - targets = [ - PIPE_TEXTURE_2D, - PIPE_TEXTURE_CUBE, - PIPE_TEXTURE_3D, - ] - - #sizes = [64, 32, 16, 8, 4, 2, 1] - #sizes = [1020, 508, 252, 62, 30, 14, 6, 3] - sizes = [64] - #sizes = [63] - - faces = [ - PIPE_TEX_FACE_POS_X, - PIPE_TEX_FACE_NEG_X, - PIPE_TEX_FACE_POS_Y, - PIPE_TEX_FACE_NEG_Y, - PIPE_TEX_FACE_POS_Z, - PIPE_TEX_FACE_NEG_Z, - ] - - try: - n = int(sys.argv[1]) - except: - n = 10000 - - for i in range(n): - format = random.choice(formats.keys()) - if not util_format_is_depth_or_stencil(format): - is_depth_or_stencil = util_format_is_depth_or_stencil(format) - - if is_depth_or_stencil: - target = PIPE_TEXTURE_2D - else: - target = random.choice(targets) - - size = random.choice(sizes) - - if target == PIPE_TEXTURE_3D: - depth = size - else: - depth = 1 - - if target == PIPE_TEXTURE_CUBE: - face = random.choice(faces) - else: - face = PIPE_TEX_FACE_POS_X - - levels = lods(size) - last_level = random.randint(0, levels - 1) - level = random.randint(0, last_level) - zslice = random.randint(0, max(depth >> level, 1) - 1) - - if is_depth_or_stencil: - klass = TextureDepthSampleTest - else: - klass = TextureColorSampleTest - - test = klass( - dev = dev, - ctx = ctx, - target = target, - format = format, - width = size, - height = size, - depth = depth, - last_level = last_level, - face = face, - level = level, - zslice = zslice, - ) - suite.add_test(test) - suite.run() - - -if __name__ == '__main__': - main() diff --git a/src/gallium/tests/python/tests/texture_render.py b/src/gallium/tests/python/tests/texture_render.py deleted file mode 100755 index 23f3d2a57de..00000000000 --- a/src/gallium/tests/python/tests/texture_render.py +++ /dev/null @@ -1,320 +0,0 @@ -#!/usr/bin/env python -########################################################################## -# -# Copyright 2009 VMware, Inc. -# All Rights Reserved. -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the -# "Software"), to deal in the Software without restriction, including -# without limitation the rights to use, copy, modify, merge, publish, -# distribute, 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 VMWARE AND/OR ITS 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. -# -########################################################################## - - -from gallium import * -from base import * - - -def lods(*dims): - size = max(dims) - lods = 0 - while size: - lods += 1 - size >>= 1 - return lods - - -class TextureTest(TestCase): - - tags = ( - 'target', - 'format', - 'width', - 'height', - 'depth', - 'last_level', - 'face', - 'level', - 'zslice', - ) - - def test(self): - dev = self.dev - - target = self.target - format = self.format - width = self.width - height = self.height - depth = self.depth - last_level = self.last_level - face = self.face - level = self.level - zslice = self.zslice - - # textures - dst_texture = dev.resource_create( - target = target, - format = format, - width = width, - height = height, - depth = depth, - last_level = last_level, - bind = PIPE_BIND_RENDER_TARGET, - ) - if dst_texture is None: - raise TestSkip - - dst_surface = dst_texture.get_surface(face = face, level = level, zslice = zslice) - - ref_texture = dev.resource_create( - target = target, - format = format, - width = dst_surface.width, - height = dst_surface.height, - depth = 1, - last_level = 0, - bind = PIPE_BIND_SAMPLER_VIEW, - ) - - ref_surface = ref_texture.get_surface() - - src_texture = dev.resource_create( - target = target, - format = PIPE_FORMAT_B8G8R8A8_UNORM, - width = dst_surface.width, - height = dst_surface.height, - depth = 1, - last_level = 0, - bind = PIPE_BIND_SAMPLER_VIEW, - ) - - src_surface = src_texture.get_surface() - - expected_rgba = FloatArray(height*width*4) - ref_surface.sample_rgba(expected_rgba) - - src_surface.put_tile_rgba(0, 0, src_surface.width, src_surface.height, expected_rgba) - - ctx = self.dev.context_create() - - # disabled blending/masking - blend = Blend() - blend.rt[0].rgb_src_factor = PIPE_BLENDFACTOR_ONE - blend.rt[0].alpha_src_factor = PIPE_BLENDFACTOR_ONE - blend.rt[0].rgb_dst_factor = PIPE_BLENDFACTOR_ZERO - blend.rt[0].alpha_dst_factor = PIPE_BLENDFACTOR_ZERO - blend.rt[0].colormask = PIPE_MASK_RGBA - ctx.set_blend(blend) - - # no-op depth/stencil/alpha - depth_stencil_alpha = DepthStencilAlpha() - ctx.set_depth_stencil_alpha(depth_stencil_alpha) - - # rasterizer - rasterizer = Rasterizer() - rasterizer.front_winding = PIPE_WINDING_CW - rasterizer.cull_mode = PIPE_WINDING_NONE - rasterizer.bypass_vs_clip_and_viewport = 1 - ctx.set_rasterizer(rasterizer) - - # samplers - sampler = Sampler() - sampler.wrap_s = PIPE_TEX_WRAP_CLAMP_TO_EDGE - sampler.wrap_t = PIPE_TEX_WRAP_CLAMP_TO_EDGE - sampler.wrap_r = PIPE_TEX_WRAP_CLAMP_TO_EDGE - sampler.min_mip_filter = PIPE_TEX_MIPFILTER_NEAREST - sampler.min_img_filter = PIPE_TEX_MIPFILTER_NEAREST - sampler.mag_img_filter = PIPE_TEX_MIPFILTER_NEAREST - sampler.normalized_coords = 1 - sampler.min_lod = 0 - sampler.max_lod = PIPE_MAX_TEXTURE_LEVELS - 1 - ctx.set_fragment_sampler(0, sampler) - ctx.set_fragment_sampler_texture(0, src_texture) - - # framebuffer - cbuf_tex = dev.resource_create( - PIPE_FORMAT_B8G8R8A8_UNORM, - width, - height, - bind = PIPE_BIND_RENDER_TARGET, - ) - - fb = Framebuffer() - fb.width = dst_surface.width - fb.height = dst_surface.height - fb.nr_cbufs = 1 - fb.set_cbuf(0, dst_surface) - ctx.set_framebuffer(fb) - rgba = FloatArray(4); - rgba[0] = 0.0 - rgba[1] = 0.0 - rgba[2] = 0.0 - rgba[3] = 0.0 - ctx.clear(PIPE_CLEAR_COLOR, rgba, 0.0, 0) - del fb - - # vertex shader - vs = Shader(''' - VERT - DCL IN[0], POSITION, CONSTANT - DCL IN[1], GENERIC, CONSTANT - DCL OUT[0], POSITION, CONSTANT - DCL OUT[1], GENERIC, CONSTANT - 0:MOV OUT[0], IN[0] - 1:MOV OUT[1], IN[1] - 2:END - ''') - #vs.dump() - ctx.set_vertex_shader(vs) - - # fragment shader - fs = Shader(''' - FRAG - DCL IN[0], GENERIC[0], LINEAR - DCL OUT[0], COLOR, CONSTANT - DCL SAMP[0], CONSTANT - 0:TEX OUT[0], IN[0], SAMP[0], 2D - 1:END - ''') - #fs.dump() - ctx.set_fragment_shader(fs) - - nverts = 4 - nattrs = 2 - verts = FloatArray(nverts * nattrs * 4) - - x = 0 - y = 0 - w = dst_surface.width - h = dst_surface.height - - pos = [ - [x, y], - [x+w, y], - [x+w, y+h], - [x, y+h], - ] - - tex = [ - [0.0, 0.0], - [1.0, 0.0], - [1.0, 1.0], - [0.0, 1.0], - ] - - for i in range(0, 4): - j = 8*i - verts[j + 0] = pos[i][0] # x - verts[j + 1] = pos[i][1] # y - verts[j + 2] = 0.0 # z - verts[j + 3] = 1.0 # w - verts[j + 4] = tex[i][0] # s - verts[j + 5] = tex[i][1] # r - verts[j + 6] = 0.0 - verts[j + 7] = 1.0 - - ctx.draw_vertices(PIPE_PRIM_TRIANGLE_FAN, - nverts, - nattrs, - verts) - - ctx.flush() - - self.assert_rgba(dst_surface, x, y, w, h, expected_rgba, 4.0/256, 0.85) - - - -def main(): - dev = Device() - suite = TestSuite() - - targets = [ - PIPE_TEXTURE_2D, - PIPE_TEXTURE_CUBE, - #PIPE_TEXTURE_3D, - ] - - formats = [ - PIPE_FORMAT_B8G8R8A8_UNORM, - PIPE_FORMAT_B8G8R8X8_UNORM, - #PIPE_FORMAT_B8G8R8A8_SRGB, - PIPE_FORMAT_B5G6R5_UNORM, - PIPE_FORMAT_B5G5R5A1_UNORM, - PIPE_FORMAT_B4G4R4A4_UNORM, - #PIPE_FORMAT_Z32_UNORM, - #PIPE_FORMAT_S8_USCALED_Z24_UNORM, - #PIPE_FORMAT_X8Z24_UNORM, - #PIPE_FORMAT_Z16_UNORM, - #PIPE_FORMAT_S8_USCALED, - PIPE_FORMAT_A8_UNORM, - PIPE_FORMAT_L8_UNORM, - #PIPE_FORMAT_DXT1_RGB, - #PIPE_FORMAT_DXT1_RGBA, - #PIPE_FORMAT_DXT3_RGBA, - #PIPE_FORMAT_DXT5_RGBA, - ] - - sizes = [64, 32, 16, 8, 4, 2, 1] - #sizes = [1020, 508, 252, 62, 30, 14, 6, 3] - #sizes = [64] - #sizes = [63] - - faces = [ - PIPE_TEX_FACE_POS_X, - PIPE_TEX_FACE_NEG_X, - PIPE_TEX_FACE_POS_Y, - PIPE_TEX_FACE_NEG_Y, - PIPE_TEX_FACE_POS_Z, - PIPE_TEX_FACE_NEG_Z, - ] - - for target in targets: - for format in formats: - for size in sizes: - if target == PIPE_TEXTURE_3D: - depth = size - else: - depth = 1 - for face in faces: - if target != PIPE_TEXTURE_CUBE and face: - continue - levels = lods(size) - for last_level in range(levels): - for level in range(0, last_level + 1): - zslice = 0 - while zslice < depth >> level: - test = TextureTest( - dev = dev, - target = target, - format = format, - width = size, - height = size, - depth = depth, - last_level = last_level, - face = face, - level = level, - zslice = zslice, - ) - suite.add_test(test) - zslice = (zslice + 1)*2 - 1 - suite.run() - - -if __name__ == '__main__': - main() diff --git a/src/gallium/tests/python/tests/texture_transfer.py b/src/gallium/tests/python/tests/texture_transfer.py deleted file mode 100755 index 65c919bc64d..00000000000 --- a/src/gallium/tests/python/tests/texture_transfer.py +++ /dev/null @@ -1,182 +0,0 @@ -#!/usr/bin/env python -########################################################################## -# -# Copyright 2009 VMware, Inc. -# Copyright 2008 Tungsten Graphics, Inc., Cedar Park, Texas. -# 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, 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 VMWARE AND/OR ITS 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. -# -########################################################################## - - -import os -import random - -from gallium import * -from base import * - - -def lods(*dims): - size = max(dims) - lods = 0 - while size: - lods += 1 - size >>= 1 - return lods - - -class TextureTest(TestCase): - - tags = ( - 'target', - 'format', - 'width', - 'height', - 'depth', - 'last_level', - 'face', - 'level', - 'zslice', - ) - - def test(self): - dev = self.dev - ctx = self.ctx - - target = self.target - format = self.format - width = self.width - height = self.height - depth = self.depth - last_level = self.last_level - face = self.face - level = self.level - zslice = self.zslice - - bind = PIPE_BIND_SAMPLER_VIEW - geom_flags = 0 - sample_count = 0 - if not dev.is_format_supported(format, target, sample_count, bind, geom_flags): - raise TestSkip - - # textures - texture = dev.resource_create( - target = target, - format = format, - width = width, - height = height, - depth = depth, - last_level = last_level, - bind = bind, - ) - - surface = texture.get_surface(face, level, zslice) - - stride = util_format_get_stride(format, surface.width) - size = util_format_get_nblocksy(format, surface.height) * stride - - in_raw = os.urandom(size) - - ctx.surface_write_raw(surface, 0, 0, surface.width, surface.height, in_raw, stride) - - out_raw = ctx.surface_read_raw(surface, 0, 0, surface.width, surface.height) - - if in_raw != out_raw: - raise TestFailure - - -def main(): - dev = Device() - ctx = dev.context_create() - suite = TestSuite() - - targets = [ - PIPE_TEXTURE_2D, - PIPE_TEXTURE_CUBE, - PIPE_TEXTURE_3D, - ] - - sizes = [64, 32, 16, 8, 4, 2, 1] - #sizes = [1020, 508, 252, 62, 30, 14, 6, 3] - #sizes = [64] - #sizes = [63] - - faces = [ - PIPE_TEX_FACE_POS_X, - PIPE_TEX_FACE_NEG_X, - PIPE_TEX_FACE_POS_Y, - PIPE_TEX_FACE_NEG_Y, - PIPE_TEX_FACE_POS_Z, - PIPE_TEX_FACE_NEG_Z, - ] - - try: - n = int(sys.argv[1]) - except: - n = 10000 - - for i in range(n): - format = random.choice(formats.keys()) - if not util_format_is_depth_or_stencil(format): - is_depth_or_stencil = util_format_is_depth_or_stencil(format) - - if is_depth_or_stencil: - target = PIPE_TEXTURE_2D - else: - target = random.choice(targets) - - size = random.choice(sizes) - - if target == PIPE_TEXTURE_3D: - depth = size - else: - depth = 1 - - if target == PIPE_TEXTURE_CUBE: - face = random.choice(faces) - else: - face = PIPE_TEX_FACE_POS_X - - levels = lods(size) - last_level = random.randint(0, levels - 1) - level = random.randint(0, last_level) - zslice = random.randint(0, max(depth >> level, 1) - 1) - - test = TextureTest( - dev = dev, - ctx = ctx, - target = target, - format = format, - width = size, - height = size, - depth = depth, - last_level = last_level, - face = face, - level = level, - zslice = zslice, - ) - suite.add_test(test) - suite.run() - - -if __name__ == '__main__': - main() diff --git a/src/gallium/tests/python/tests/tree.py b/src/gallium/tests/python/tests/tree.py deleted file mode 100755 index 0c1bcda4cf2..00000000000 --- a/src/gallium/tests/python/tests/tree.py +++ /dev/null @@ -1,23 +0,0 @@ -#!/usr/bin/env python -# -# See also: -# http://www.ailab.si/orange/doc/ofb/c_otherclass.htm - -import os.path -import sys - -import orange -import orngTree - -for arg in sys.argv[1:]: - name, ext = os.path.splitext(arg) - - data = orange.ExampleTable(arg) - - tree = orngTree.TreeLearner(data, sameMajorityPruning=1, mForPruning=2) - - orngTree.printTxt(tree) - - file(name+'.txt', 'wt').write(orngTree.dumpTree(tree) + '\n') - - orngTree.printDot(tree, fileName=name+'.dot', nodeShape='ellipse', leafShape='box') diff --git a/src/gallium/tests/python/retrace/parser.py b/src/gallium/tools/trace/dump.py similarity index 100% rename from src/gallium/tests/python/retrace/parser.py rename to src/gallium/tools/trace/dump.py diff --git a/src/gallium/tests/python/retrace/format.py b/src/gallium/tools/trace/format.py similarity index 100% rename from src/gallium/tests/python/retrace/format.py rename to src/gallium/tools/trace/format.py diff --git a/src/gallium/tests/python/retrace/model.py b/src/gallium/tools/trace/model.py similarity index 98% rename from src/gallium/tests/python/retrace/model.py rename to src/gallium/tools/trace/model.py index d4a079fb1e5..e76aad7788b 100755 --- a/src/gallium/tests/python/retrace/model.py +++ b/src/gallium/tools/trace/model.py @@ -153,7 +153,8 @@ class PrettyPrinter: def visit_literal(self, node): if isinstance(node.value, basestring): if len(node.value) >= 4096 or node.value.strip(string.printable): - self.formatter.text('...') + self.formatter.address('blob(%u)' % len(node.value)) + #self.formatter.text('...') return self.formatter.literal('"' + node.value + '"') diff --git a/src/gallium/tests/python/retrace/parse.py b/src/gallium/tools/trace/parse.py similarity index 100% rename from src/gallium/tests/python/retrace/parse.py rename to src/gallium/tools/trace/parse.py From 391f7147e73b752c6e088c4ae8fe11ddfd5fb537 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Mon, 4 Apr 2011 11:48:07 +0100 Subject: [PATCH 163/420] Revert "trace: Dump blend state as a binary blob." This reverts commit dcdf94c87c087186f963b6e201b2989c61a76ef0. No retrace support anymore, so human-legible representation of blend state is much more useful than a blob. --- src/gallium/drivers/trace/tr_dump_state.c | 38 ++++++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/trace/tr_dump_state.c b/src/gallium/drivers/trace/tr_dump_state.c index 18805655bd7..acb80edbf46 100644 --- a/src/gallium/drivers/trace/tr_dump_state.c +++ b/src/gallium/drivers/trace/tr_dump_state.c @@ -321,8 +321,29 @@ void trace_dump_depth_stencil_alpha_state(const struct pipe_depth_stencil_alpha_ trace_dump_struct_end(); } +static void trace_dump_rt_blend_state(const struct pipe_rt_blend_state *state) +{ + trace_dump_struct_begin("pipe_rt_blend_state"); + + trace_dump_member(uint, state, blend_enable); + + trace_dump_member(uint, state, rgb_func); + trace_dump_member(uint, state, rgb_src_factor); + trace_dump_member(uint, state, rgb_dst_factor); + + trace_dump_member(uint, state, alpha_func); + trace_dump_member(uint, state, alpha_src_factor); + trace_dump_member(uint, state, alpha_dst_factor); + + trace_dump_member(uint, state, colormask); + + trace_dump_struct_end(); +} + void trace_dump_blend_state(const struct pipe_blend_state *state) { + unsigned valid_entries = 1; + if (!trace_dumping_enabled_locked()) return; @@ -331,7 +352,22 @@ void trace_dump_blend_state(const struct pipe_blend_state *state) return; } - trace_dump_bytes(state, sizeof *state); + trace_dump_struct_begin("pipe_blend_state"); + + trace_dump_member(bool, state, dither); + + trace_dump_member(bool, state, logicop_enable); + trace_dump_member(uint, state, logicop_func); + + trace_dump_member(bool, state, independent_blend_enable); + + trace_dump_member_begin("rt"); + if (state->independent_blend_enable) + valid_entries = PIPE_MAX_COLOR_BUFS; + trace_dump_struct_array(rt_blend_state, state->rt, valid_entries); + trace_dump_member_end(); + + trace_dump_struct_end(); } From c0f6bfd489091da20ad9580d8ac6aeb187ededfd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Tue, 5 Apr 2011 20:13:44 +0100 Subject: [PATCH 164/420] trace: Correct/cleanup. Observe the actual type hierarchy and polymorphism of sampler views and surface state. s/texture/resource/ etc. --- src/gallium/drivers/trace/tr_context.c | 54 +++++++++++--------- src/gallium/drivers/trace/tr_dump_state.c | 62 +++++++++++++++++------ src/gallium/drivers/trace/tr_dump_state.h | 6 ++- src/gallium/drivers/trace/tr_screen.c | 24 ++++----- src/gallium/drivers/trace/tr_texture.c | 36 ++++++------- src/gallium/drivers/trace/tr_texture.h | 6 +-- 6 files changed, 114 insertions(+), 74 deletions(-) diff --git a/src/gallium/drivers/trace/tr_context.c b/src/gallium/drivers/trace/tr_context.c index 4db7619c424..4f0d6c4b97a 100644 --- a/src/gallium/drivers/trace/tr_context.c +++ b/src/gallium/drivers/trace/tr_context.c @@ -47,15 +47,15 @@ static INLINE struct pipe_resource * trace_resource_unwrap(struct trace_context *tr_ctx, struct pipe_resource *resource) { - struct trace_resource *tr_tex; + struct trace_resource *tr_res; if(!resource) return NULL; - tr_tex = trace_resource(resource); + tr_res = trace_resource(resource); - assert(tr_tex->resource); - return tr_tex->resource; + assert(tr_res->resource); + return tr_res->resource; } @@ -832,19 +832,22 @@ trace_create_sampler_view(struct pipe_context *_pipe, const struct pipe_sampler_view *templ) { struct trace_context *tr_ctx = trace_context(_pipe); - struct trace_resource *tr_tex = trace_resource(_resource); + struct trace_resource *tr_res = trace_resource(_resource); struct pipe_context *pipe = tr_ctx->pipe; - struct pipe_resource *texture = tr_tex->resource; + struct pipe_resource *resource = tr_res->resource; struct pipe_sampler_view *result; struct trace_sampler_view *tr_view; trace_dump_call_begin("pipe_context", "create_sampler_view"); trace_dump_arg(ptr, pipe); - trace_dump_arg(ptr, texture); - trace_dump_arg(sampler_view_template, templ); + trace_dump_arg(ptr, resource); - result = pipe->create_sampler_view(pipe, texture, templ); + trace_dump_arg_begin("templ"); + trace_dump_sampler_view_template(templ, resource->target); + trace_dump_arg_end(); + + result = pipe->create_sampler_view(pipe, resource, templ); trace_dump_ret(ptr, result); @@ -895,29 +898,32 @@ trace_sampler_view_destroy(struct pipe_context *_pipe, static struct pipe_surface * trace_create_surface(struct pipe_context *_pipe, - struct pipe_resource *_texture, + struct pipe_resource *_resource, const struct pipe_surface *surf_tmpl) { struct trace_context *tr_ctx = trace_context(_pipe); - struct trace_resource *tr_tex = trace_resource(_texture); + struct trace_resource *tr_res = trace_resource(_resource); struct pipe_context *pipe = tr_ctx->pipe; - struct pipe_resource *texture = tr_tex->resource; + struct pipe_resource *resource = tr_res->resource; struct pipe_surface *result = NULL; trace_dump_call_begin("pipe_context", "create_surface"); trace_dump_arg(ptr, pipe); - trace_dump_arg(ptr, texture); - /* hmm some values unitialized there */ - trace_dump_arg(surface, surf_tmpl); + trace_dump_arg(ptr, resource); + + trace_dump_arg_begin("surf_tmpl"); + trace_dump_surface_template(surf_tmpl, resource->target); + trace_dump_arg_end(); - result = pipe->create_surface(pipe, texture, surf_tmpl); + + result = pipe->create_surface(pipe, resource, surf_tmpl); trace_dump_ret(ptr, result); trace_dump_call_end(); - result = trace_surf_create(tr_tex, result); + result = trace_surf_create(tr_res, result); return result; } @@ -1231,9 +1237,9 @@ trace_context_get_transfer(struct pipe_context *_context, const struct pipe_box *box) { struct trace_context *tr_context = trace_context(_context); - struct trace_resource *tr_tex = trace_resource(_resource); + struct trace_resource *tr_res = trace_resource(_resource); struct pipe_context *context = tr_context->pipe; - struct pipe_resource *texture = tr_tex->resource; + struct pipe_resource *texture = tr_res->resource; struct pipe_transfer *result = NULL; assert(texture->screen == context->screen); @@ -1246,7 +1252,7 @@ trace_context_get_transfer(struct pipe_context *_context, result = context->get_transfer(context, texture, level, usage, box); if (result) - result = trace_transfer_create(tr_context, tr_tex, result); + result = trace_transfer_create(tr_context, tr_res, result); return result; } @@ -1360,9 +1366,9 @@ trace_context_transfer_inline_write(struct pipe_context *_context, unsigned layer_stride) { struct trace_context *tr_context = trace_context(_context); - struct trace_resource *tr_tex = trace_resource(_resource); + struct trace_resource *tr_res = trace_resource(_resource); struct pipe_context *context = tr_context->pipe; - struct pipe_resource *resource = tr_tex->resource; + struct pipe_resource *resource = tr_res->resource; assert(resource->screen == context->screen); @@ -1397,9 +1403,9 @@ static void trace_redefine_user_buffer(struct pipe_context *_context, unsigned offset, unsigned size) { struct trace_context *tr_context = trace_context(_context); - struct trace_resource *tr_tex = trace_resource(_resource); + struct trace_resource *tr_res = trace_resource(_resource); struct pipe_context *context = tr_context->pipe; - struct pipe_resource *resource = tr_tex->resource; + struct pipe_resource *resource = tr_res->resource; assert(resource->screen == context->screen); diff --git a/src/gallium/drivers/trace/tr_dump_state.c b/src/gallium/drivers/trace/tr_dump_state.c index acb80edbf46..291a6a29ca5 100644 --- a/src/gallium/drivers/trace/tr_dump_state.c +++ b/src/gallium/drivers/trace/tr_dump_state.c @@ -453,7 +453,8 @@ void trace_dump_sampler_state(const struct pipe_sampler_state *state) } -void trace_dump_sampler_view_template(const struct pipe_sampler_view *state) +void trace_dump_sampler_view_template(const struct pipe_sampler_view *state, + enum pipe_texture_target target) { if (!trace_dumping_enabled_locked()) return; @@ -466,13 +467,29 @@ void trace_dump_sampler_view_template(const struct pipe_sampler_view *state) trace_dump_struct_begin("pipe_sampler_view"); trace_dump_member(format, state, format); - /* XXX */ - trace_dump_member(uint, state, u.tex.first_level); - trace_dump_member(uint, state, u.tex.last_level); - trace_dump_member(uint, state, u.tex.first_layer); - trace_dump_member(uint, state, u.tex.last_layer); - trace_dump_member(uint, state, u.buf.first_element); - trace_dump_member(uint, state, u.buf.last_element); + + trace_dump_member_begin("u"); + trace_dump_struct_begin(""); /* anonymous */ + if (target == PIPE_BUFFER) { + trace_dump_member_begin("buf"); + trace_dump_struct_begin(""); /* anonymous */ + trace_dump_member(uint, &state->u.buf, first_element); + trace_dump_member(uint, &state->u.buf, last_element); + trace_dump_struct_end(); /* anonymous */ + trace_dump_member_end(); /* buf */ + } else { + trace_dump_member_begin("tex"); + trace_dump_struct_begin(""); /* anonymous */ + trace_dump_member(uint, &state->u.tex, first_layer); + trace_dump_member(uint, &state->u.tex, last_layer); + trace_dump_member(uint, &state->u.tex, first_level); + trace_dump_member(uint, &state->u.tex, last_level); + trace_dump_struct_end(); /* anonymous */ + trace_dump_member_end(); /* tex */ + } + trace_dump_struct_end(); /* anonymous */ + trace_dump_member_end(); /* u */ + trace_dump_member(uint, state, swizzle_r); trace_dump_member(uint, state, swizzle_g); trace_dump_member(uint, state, swizzle_b); @@ -482,7 +499,8 @@ void trace_dump_sampler_view_template(const struct pipe_sampler_view *state) } -void trace_dump_surface(const struct pipe_surface *state) +void trace_dump_surface_template(const struct pipe_surface *state, + enum pipe_texture_target target) { if (!trace_dumping_enabled_locked()) return; @@ -500,12 +518,26 @@ void trace_dump_surface(const struct pipe_surface *state) trace_dump_member(uint, state, usage); - trace_dump_member(ptr, state, texture); - trace_dump_member(uint, state, u.tex.level); - trace_dump_member(uint, state, u.tex.first_layer); - trace_dump_member(uint, state, u.tex.last_layer); - trace_dump_member(uint, state, u.buf.first_element); - trace_dump_member(uint, state, u.buf.last_element); + trace_dump_member_begin("u"); + trace_dump_struct_begin(""); /* anonymous */ + if (target == PIPE_BUFFER) { + trace_dump_member_begin("buf"); + trace_dump_struct_begin(""); /* anonymous */ + trace_dump_member(uint, &state->u.buf, first_element); + trace_dump_member(uint, &state->u.buf, last_element); + trace_dump_struct_end(); /* anonymous */ + trace_dump_member_end(); /* buf */ + } else { + trace_dump_member_begin("tex"); + trace_dump_struct_begin(""); /* anonymous */ + trace_dump_member(uint, &state->u.tex, level); + trace_dump_member(uint, &state->u.tex, first_layer); + trace_dump_member(uint, &state->u.tex, last_layer); + trace_dump_struct_end(); /* anonymous */ + trace_dump_member_end(); /* tex */ + } + trace_dump_struct_end(); /* anonymous */ + trace_dump_member_end(); /* u */ trace_dump_struct_end(); } diff --git a/src/gallium/drivers/trace/tr_dump_state.h b/src/gallium/drivers/trace/tr_dump_state.h index fe8ece78d43..a6e7ccdb864 100644 --- a/src/gallium/drivers/trace/tr_dump_state.h +++ b/src/gallium/drivers/trace/tr_dump_state.h @@ -65,9 +65,11 @@ void trace_dump_framebuffer_state(const struct pipe_framebuffer_state *state); void trace_dump_sampler_state(const struct pipe_sampler_state *state); -void trace_dump_sampler_view_template(const struct pipe_sampler_view *view); +void trace_dump_sampler_view_template(const struct pipe_sampler_view *view, + enum pipe_texture_target target); -void trace_dump_surface(const struct pipe_surface *state); +void trace_dump_surface_template(const struct pipe_surface *state, + enum pipe_texture_target target); void trace_dump_transfer(const struct pipe_transfer *state); diff --git a/src/gallium/drivers/trace/tr_screen.c b/src/gallium/drivers/trace/tr_screen.c index 42180c4f19e..a7d33661838 100644 --- a/src/gallium/drivers/trace/tr_screen.c +++ b/src/gallium/drivers/trace/tr_screen.c @@ -117,7 +117,7 @@ trace_screen_get_shader_param(struct pipe_screen *_screen, unsigned shader, trace_dump_call_begin("pipe_screen", "get_shader_param"); trace_dump_arg(ptr, screen); - trace_dump_arg(int, shader); + trace_dump_arg(uint, shader); trace_dump_arg(int, param); result = screen->get_shader_param(screen, shader, param); @@ -282,40 +282,40 @@ trace_screen_resource_from_handle(struct pipe_screen *_screen, static boolean trace_screen_resource_get_handle(struct pipe_screen *_screen, - struct pipe_resource *_texture, + struct pipe_resource *_resource, struct winsys_handle *handle) { struct trace_screen *tr_screen = trace_screen(_screen); - struct trace_resource *tr_texture = trace_resource(_texture); + struct trace_resource *tr_resource = trace_resource(_resource); struct pipe_screen *screen = tr_screen->screen; - struct pipe_resource *texture = tr_texture->resource; + struct pipe_resource *resource = tr_resource->resource; /* TODO trace call */ - return screen->resource_get_handle(screen, texture, handle); + return screen->resource_get_handle(screen, resource, handle); } static void trace_screen_resource_destroy(struct pipe_screen *_screen, - struct pipe_resource *_texture) + struct pipe_resource *_resource) { struct trace_screen *tr_scr = trace_screen(_screen); - struct trace_resource *tr_tex = trace_resource(_texture); + struct trace_resource *tr_res = trace_resource(_resource); struct pipe_screen *screen = tr_scr->screen; - struct pipe_resource *texture = tr_tex->resource; + struct pipe_resource *resource = tr_res->resource; - assert(texture->screen == screen); + assert(resource->screen == screen); - trace_dump_call_begin("pipe_screen", "texture_destroy"); + trace_dump_call_begin("pipe_screen", "resource_destroy"); trace_dump_arg(ptr, screen); - trace_dump_arg(ptr, texture); + trace_dump_arg(ptr, resource); trace_dump_call_end(); - trace_resource_destroy(tr_scr, tr_tex); + trace_resource_destroy(tr_scr, tr_res); } diff --git a/src/gallium/drivers/trace/tr_texture.c b/src/gallium/drivers/trace/tr_texture.c index 27997346471..648b7a4f1cc 100644 --- a/src/gallium/drivers/trace/tr_texture.c +++ b/src/gallium/drivers/trace/tr_texture.c @@ -39,24 +39,24 @@ struct pipe_resource * trace_resource_create(struct trace_screen *tr_scr, struct pipe_resource *texture) { - struct trace_resource *tr_tex; + struct trace_resource *tr_res; if(!texture) goto error; assert(texture->screen == tr_scr->screen); - tr_tex = CALLOC_STRUCT(trace_resource); - if(!tr_tex) + tr_res = CALLOC_STRUCT(trace_resource); + if(!tr_res) goto error; - memcpy(&tr_tex->base, texture, sizeof(struct pipe_resource)); + memcpy(&tr_res->base, texture, sizeof(struct pipe_resource)); - pipe_reference_init(&tr_tex->base.reference, 1); - tr_tex->base.screen = &tr_scr->base; - tr_tex->resource = texture; + pipe_reference_init(&tr_res->base.reference, 1); + tr_res->base.screen = &tr_scr->base; + tr_res->resource = texture; - return &tr_tex->base; + return &tr_res->base; error: pipe_resource_reference(&texture, NULL); @@ -66,15 +66,15 @@ error: void trace_resource_destroy(struct trace_screen *tr_scr, - struct trace_resource *tr_tex) + struct trace_resource *tr_res) { - pipe_resource_reference(&tr_tex->resource, NULL); - FREE(tr_tex); + pipe_resource_reference(&tr_res->resource, NULL); + FREE(tr_res); } struct pipe_surface * -trace_surf_create(struct trace_resource *tr_tex, +trace_surf_create(struct trace_resource *tr_res, struct pipe_surface *surface) { struct trace_surface *tr_surf; @@ -82,7 +82,7 @@ trace_surf_create(struct trace_resource *tr_tex, if(!surface) goto error; - assert(surface->texture == tr_tex->resource); + assert(surface->texture == tr_res->resource); tr_surf = CALLOC_STRUCT(trace_surface); if(!tr_surf) @@ -92,7 +92,7 @@ trace_surf_create(struct trace_resource *tr_tex, pipe_reference_init(&tr_surf->base.reference, 1); tr_surf->base.texture = NULL; - pipe_resource_reference(&tr_surf->base.texture, &tr_tex->base); + pipe_resource_reference(&tr_surf->base.texture, &tr_res->base); tr_surf->surface = surface; return &tr_surf->base; @@ -114,7 +114,7 @@ trace_surf_destroy(struct trace_surface *tr_surf) struct pipe_transfer * trace_transfer_create(struct trace_context *tr_ctx, - struct trace_resource *tr_tex, + struct trace_resource *tr_res, struct pipe_transfer *transfer) { struct trace_transfer *tr_trans; @@ -122,7 +122,7 @@ trace_transfer_create(struct trace_context *tr_ctx, if(!transfer) goto error; - assert(transfer->resource == tr_tex->resource); + assert(transfer->resource == tr_res->resource); tr_trans = CALLOC_STRUCT(trace_transfer); if(!tr_trans) @@ -133,8 +133,8 @@ trace_transfer_create(struct trace_context *tr_ctx, tr_trans->base.resource = NULL; tr_trans->transfer = transfer; - pipe_resource_reference(&tr_trans->base.resource, &tr_tex->base); - assert(tr_trans->base.resource == &tr_tex->base); + pipe_resource_reference(&tr_trans->base.resource, &tr_res->base); + assert(tr_trans->base.resource == &tr_res->base); return &tr_trans->base; diff --git a/src/gallium/drivers/trace/tr_texture.h b/src/gallium/drivers/trace/tr_texture.h index 3352c96e59a..bf3c16e8cd2 100644 --- a/src/gallium/drivers/trace/tr_texture.h +++ b/src/gallium/drivers/trace/tr_texture.h @@ -122,10 +122,10 @@ trace_resource_create(struct trace_screen *tr_scr, void trace_resource_destroy(struct trace_screen *tr_scr, - struct trace_resource *tr_tex); + struct trace_resource *tr_res); struct pipe_surface * -trace_surf_create(struct trace_resource *tr_tex, +trace_surf_create(struct trace_resource *tr_res, struct pipe_surface *surface); void @@ -133,7 +133,7 @@ trace_surf_destroy(struct trace_surface *tr_surf); struct pipe_transfer * trace_transfer_create(struct trace_context *tr_ctx, - struct trace_resource *tr_tex, + struct trace_resource *tr_res, struct pipe_transfer *transfer); void From dcbc9be38ecea30506198d0db037cbf532f070e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Tue, 5 Apr 2011 21:35:11 +0100 Subject: [PATCH 165/420] draw: Fix thinko in debug warnings. --- src/gallium/auxiliary/draw/draw_pt_vsplit_tmp.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/gallium/auxiliary/draw/draw_pt_vsplit_tmp.h b/src/gallium/auxiliary/draw/draw_pt_vsplit_tmp.h index e9714c1b3fa..bb3cbf80ad7 100644 --- a/src/gallium/auxiliary/draw/draw_pt_vsplit_tmp.h +++ b/src/gallium/auxiliary/draw/draw_pt_vsplit_tmp.h @@ -56,7 +56,7 @@ CONCAT(vsplit_primitive_, ELT_TYPE)(struct vsplit_frontend *vsplit, for (i = 0; i < icount; i++) { ELT_TYPE idx = ib[i]; - if (idx >= min_index && idx <= max_index) { + if (idx < min_index || idx > max_index) { debug_printf("warning: index out of range\n"); } } @@ -89,7 +89,7 @@ CONCAT(vsplit_primitive_, ELT_TYPE)(struct vsplit_frontend *vsplit, for (i = 0; i < icount; i++) { ELT_TYPE idx = ib[i]; - if (idx >= min_index && idx <= max_index) { + if (idx < min_index || idx > max_index) { debug_printf("warning: index out of range\n"); } vsplit->draw_elts[i] = (ushort) idx; @@ -99,7 +99,7 @@ CONCAT(vsplit_primitive_, ELT_TYPE)(struct vsplit_frontend *vsplit, for (i = 0; i < icount; i++) { ELT_TYPE idx = ib[i]; - if (idx >= min_index && idx <= max_index) { + if (idx < min_index || idx > max_index) { debug_printf("warning: index out of range\n"); } vsplit->draw_elts[i] = (ushort) (idx - min_index); From 740282b417caca6c1f223f488ee9a6f9bff81164 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Wed, 6 Apr 2011 08:25:22 +0100 Subject: [PATCH 166/420] mesa: Recognize MESA_VERBOSE=all as shortcut for all debug options. --- src/mesa/main/debug.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mesa/main/debug.c b/src/mesa/main/debug.c index 2a8fd08806c..e7f6be99481 100644 --- a/src/mesa/main/debug.c +++ b/src/mesa/main/debug.c @@ -183,7 +183,7 @@ static void add_debug_flags( const char *debug ) MESA_VERBOSE = 0x0; for (i = 0; i < Elements(debug_opt); i++) { - if (strstr(debug, debug_opt[i].name)) + if (strstr(debug, debug_opt[i].name) || strcmp(debug, "all") == 0) MESA_VERBOSE |= debug_opt[i].flag; } From cd2857fae16e1352f39b37f611797e66619d3fe5 Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Tue, 5 Apr 2011 23:49:23 -0700 Subject: [PATCH 167/420] r300/compiler: Don't try to convert RGB to Alpha in full instructions Note: This is a candidate for the 7.10 branch. --- src/mesa/drivers/dri/r300/compiler/radeon_pair_schedule.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_pair_schedule.c b/src/mesa/drivers/dri/r300/compiler/radeon_pair_schedule.c index 8e10813ff06..03a16bcdbf8 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_pair_schedule.c +++ b/src/mesa/drivers/dri/r300/compiler/radeon_pair_schedule.c @@ -600,7 +600,8 @@ static void is_rgb_to_alpha_possible( struct rc_reader_data * reader_data = userdata; if (!can_remap(inst->U.P.RGB.Opcode) - || !can_remap(inst->U.P.Alpha.Opcode)) { + || !can_remap(inst->U.P.Alpha.Opcode) + || inst->U.P.Alpha.Opcode != RC_OPCODE_NOP) { reader_data->Abort = 1; return; } From c1f4b2364f473910667ab97d6599619003639d39 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Wed, 6 Apr 2011 12:33:28 -0600 Subject: [PATCH 168/420] mesa: TEXTURE_BUFFER fix-up Fixes http://bugs.freedesktop.org/show_bug.cgi?id=36033 --- src/mesa/main/shaderapi.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/mesa/main/shaderapi.c b/src/mesa/main/shaderapi.c index 2c5f2a147ce..451735faf76 100644 --- a/src/mesa/main/shaderapi.c +++ b/src/mesa/main/shaderapi.c @@ -1029,6 +1029,7 @@ static GLboolean validate_samplers(const struct gl_program *prog, char *errMsg) { static const char *targetName[] = { + "TEXTURE_BUFFER", "TEXTURE_2D_ARRAY", "TEXTURE_1D_ARRAY", "TEXTURE_CUBE", From 53245fffc022e5fc18c847e799f65c6b91e7378a Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Wed, 6 Apr 2011 12:45:21 -0600 Subject: [PATCH 169/420] mesa: fix popping of texture state for GL_TEXTURE_BUFFER Fixes http://bugs.freedesktop.org/show_bug.cgi?id=36032 --- src/mesa/main/attrib.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/mesa/main/attrib.c b/src/mesa/main/attrib.c index 340c06c979d..6a2f4870db9 100644 --- a/src/mesa/main/attrib.c +++ b/src/mesa/main/attrib.c @@ -790,6 +790,8 @@ pop_texture_group(struct gl_context *ctx, struct texture_state *texstate) !ctx->Extensions.MESA_texture_array) { continue; } + else if (obj->Target == GL_TEXTURE_BUFFER) + continue; target = obj->Target; From 122275760dcc9dfa6b2e377cae657aeeb121556a Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Wed, 6 Apr 2011 13:00:14 -0600 Subject: [PATCH 170/420] mesa: init/release the default texture buffer object --- src/mesa/main/texstate.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/mesa/main/texstate.c b/src/mesa/main/texstate.c index 72f80508db7..82e69ae11b5 100644 --- a/src/mesa/main/texstate.c +++ b/src/mesa/main/texstate.c @@ -30,6 +30,7 @@ #include "glheader.h" #include "mfeatures.h" +#include "bufferobj.h" #include "colormac.h" #include "colortab.h" #include "context.h" @@ -794,6 +795,10 @@ _mesa_init_texture(struct gl_context *ctx) if (!alloc_proxy_textures( ctx )) return GL_FALSE; + /* GL_ARB_texture_buffer_object */ + _mesa_reference_buffer_object(ctx, &ctx->Texture.BufferObject, + ctx->Shared->NullBufferObj); + return GL_TRUE; } @@ -819,6 +824,9 @@ _mesa_free_texture_data(struct gl_context *ctx) /* Free proxy texture objects */ for (tgt = 0; tgt < NUM_TEXTURE_TARGETS; tgt++) ctx->Driver.DeleteTexture(ctx, ctx->Texture.ProxyTex[tgt]); + + /* GL_ARB_texture_buffer_object */ + _mesa_reference_buffer_object(ctx, &ctx->Texture.BufferObject, NULL); } From 3f8455d07b129062885f58237516ae0d1aa339ea Mon Sep 17 00:00:00 2001 From: Julian Adams Date: Wed, 6 Apr 2011 21:04:08 +0200 Subject: [PATCH 171/420] r600g: Fix non-independent blend state. This fixes piglit fbo/fbo-drawbuffers-blend-add. Signed-off-by: Henri Verbeet --- src/gallium/drivers/r600/evergreen_state.c | 17 ++++++++++------- src/gallium/drivers/r600/r600_state.c | 17 ++++++++++------- 2 files changed, 20 insertions(+), 14 deletions(-) diff --git a/src/gallium/drivers/r600/evergreen_state.c b/src/gallium/drivers/r600/evergreen_state.c index 8f93eb86fc6..97f9a07b013 100644 --- a/src/gallium/drivers/r600/evergreen_state.c +++ b/src/gallium/drivers/r600/evergreen_state.c @@ -107,15 +107,18 @@ static void *evergreen_create_blend_state(struct pipe_context *ctx, r600_pipe_state_add_reg(rstate, R_028C3C_PA_SC_AA_MASK, 0xFFFFFFFF, 0xFFFFFFFF, NULL); for (int i = 0; i < 8; i++) { - unsigned eqRGB = state->rt[i].rgb_func; - unsigned srcRGB = state->rt[i].rgb_src_factor; - unsigned dstRGB = state->rt[i].rgb_dst_factor; - unsigned eqA = state->rt[i].alpha_func; - unsigned srcA = state->rt[i].alpha_src_factor; - unsigned dstA = state->rt[i].alpha_dst_factor; + /* state->rt entries > 0 only written if independent blending */ + const int j = state->independent_blend_enable ? i : 0; + + unsigned eqRGB = state->rt[j].rgb_func; + unsigned srcRGB = state->rt[j].rgb_src_factor; + unsigned dstRGB = state->rt[j].rgb_dst_factor; + unsigned eqA = state->rt[j].alpha_func; + unsigned srcA = state->rt[j].alpha_src_factor; + unsigned dstA = state->rt[j].alpha_dst_factor; blend_cntl[i] = 0; - if (!state->rt[i].blend_enable) + if (!state->rt[j].blend_enable) continue; blend_cntl[i] |= S_028780_BLEND_CONTROL_ENABLE(1); diff --git a/src/gallium/drivers/r600/r600_state.c b/src/gallium/drivers/r600/r600_state.c index e202056ef5d..7ab6965c92e 100644 --- a/src/gallium/drivers/r600/r600_state.c +++ b/src/gallium/drivers/r600/r600_state.c @@ -161,16 +161,19 @@ static void *r600_create_blend_state(struct pipe_context *ctx, color_control, 0xFFFFFFFD, NULL); for (int i = 0; i < 8; i++) { - unsigned eqRGB = state->rt[i].rgb_func; - unsigned srcRGB = state->rt[i].rgb_src_factor; - unsigned dstRGB = state->rt[i].rgb_dst_factor; + /* state->rt entries > 0 only written if independent blending */ + const int j = state->independent_blend_enable ? i : 0; - unsigned eqA = state->rt[i].alpha_func; - unsigned srcA = state->rt[i].alpha_src_factor; - unsigned dstA = state->rt[i].alpha_dst_factor; + unsigned eqRGB = state->rt[j].rgb_func; + unsigned srcRGB = state->rt[j].rgb_src_factor; + unsigned dstRGB = state->rt[j].rgb_dst_factor; + + unsigned eqA = state->rt[j].alpha_func; + unsigned srcA = state->rt[j].alpha_src_factor; + unsigned dstA = state->rt[j].alpha_dst_factor; uint32_t bc = 0; - if (!state->rt[i].blend_enable) + if (!state->rt[j].blend_enable) continue; bc |= S_028804_COLOR_COMB_FCN(r600_translate_blend_function(eqRGB)); From 2c8ba760fa7ecb875eafff8afc449c078afdbfc2 Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Wed, 6 Apr 2011 13:46:20 -0700 Subject: [PATCH 172/420] Import 7.10.2 release notes from 7.10 branch --- docs/relnotes-7.10.2.html | 206 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 206 insertions(+) create mode 100644 docs/relnotes-7.10.2.html diff --git a/docs/relnotes-7.10.2.html b/docs/relnotes-7.10.2.html new file mode 100644 index 00000000000..55b6794a1a1 --- /dev/null +++ b/docs/relnotes-7.10.2.html @@ -0,0 +1,206 @@ + + + +Mesa Release Notes + + + + + + + + +

    Mesa 7.10.2 Release Notes / April 6, 2011

    + +

    +Mesa 7.10.2 is a bug fix release which fixes bugs found since the 7.10 release. +

    +

    +Mesa 7.10.2 implements the OpenGL 2.1 API, but the version reported by +glGetString(GL_VERSION) depends on the particular driver being used. +Some drivers don't support all the features required in OpenGL 2.1. +

    +

    +See the Compiling/Installing page for prerequisites +for DRI hardware acceleration. +

    + + +

    MD5 checksums

    +
    +2f9f444265534a2cfd9a99d1a8291089  MesaLib-7.10.2.tar.gz
    +f5de82852f1243f42cc004039e10b771  MesaLib-7.10.2.tar.bz2
    +47836e37bab6fcafe3ac90c9544ba0e9  MesaLib-7.10.2.zip
    +175120325828f313621cc5bc6c504803  MesaGLUT-7.10.2.tar.gz
    +8c71d273f5f8d6c5eda4ffc39e0fe03e  MesaGLUT-7.10.2.tar.bz2
    +03036c8efe7b791a90fa0f2c41b43f43  MesaGLUT-7.10.2.zip
    +
    + + +

    New features

    +

    None.

    + +

    Bug fixes

    +

    This list is likely incomplete.

    +
      + +
    • Bug 29172 - Arrandale - Pill Popper Pops Pills
    • + +
    • Bug 31159 - shadow problem in 0ad game
    • + +
    • Bug 32688 - [RADEON:KMS:R300G] some games have a wireframe or outline visible
    • + +
    • Bug 32949 - [glsl wine] Need for Speed renders incorrectly with GLSL enabled
    • + +
    • Bug 34203 - [GLSL] fail to call long chains across shaders
    • + +
    • Bug 34376 - [GLSL] allowing assignment to unsized array +
        +
      • The commit message incorrectly + lists bug + 34367.
      • +
      +
    • + +
    • Bug 34370 - [GLSL] "i<5 && i<4" in for loop fails
    • + +
    • Bug 34374 - [GLSL] fail to redeclare an array using initializer
    • + +
    • Bug 35073 - [GM45] Alpha test is broken when rendering to FBO with no color attachment
    • + +
    • Bug 35483 - util_blit_pixels_writemask: crash in line 322 of src/gallium/auxiliary/util/u_blit.c
    • + + + +
    + + +

    Changes

    +

    The full set of changes can be viewed by using the following GIT command:

    + +
    +  git log mesa-7.10.1..mesa-7.10.2
    +
    + +

    Note: Reverted commits and the reverts are not included in this list.

    + +

    Alex Deucher (2): +

      +
    • r600c: add new ontario pci ids
    • +
    • r600g: add some additional ontario pci ids
    • +

    + +

    Benjamin Franzke (1): +

      +
    • st/dri: Fix surfaceless gl using contexts with previous bound surfaces
    • +

    + +

    Brian Paul (9): +

      +
    • docs: pull 7.9.2 release notes into 7.10 branch
    • +
    • docs: update news.html with 7.10.1 and 7.9.2 releases
    • +
    • docs: fill in 7.10.1 release data
    • +
    • docs: add, fix release notes links
    • +
    • docs: update info about Mesa packaging/contents
    • +
    • docs: update prerequisites, remove old demo info
    • +
    • mesa: Guard against null pointer deref in fbo validation
    • +
    • st/mesa: Apply LOD bias from correct texture unit
    • +
    • glsl: silence warning in printf() with a cast
    • +

    + +

    Chad Versace (1): +

      +
    • i965: Fix tex_swizzle when depth mode is GL_RED
    • +

    + +

    Dave Airlie (1): +

      +
    • r600: don't close fd on failed load
    • +

    + +

    Eric Anholt (2): +

      +
    • i965: Apply a workaround for the Ironlake "vertex flashing".
    • +
    • i965: Fix alpha testing when there is no color buffer in the FBO.
    • +

    + +

    Fabian Bieler (1): +

      +
    • st/mesa: Apply LOD from texture object
    • +

    + +

    Henri Verbeet (1): +

      +
    • st/mesa: Validate state before doing blits.
    • +

    + +

    Ian Romanick (13): +

      +
    • docs: Add 7.10.1 md5sums
    • +
    • glsl: Refactor AST-to-HIR code handling variable initializers
    • +
    • glsl: Refactor AST-to-HIR code handling variable redeclarations
    • +
    • glsl: Process redeclarations before initializers
    • +
    • glsl: Function signatures cannot have NULL return type
    • +
    • glsl: Add several function / call related validations
    • +
    • linker: Add imported functions to the linked IR
    • +
    • glsl: Use insert_before for lists instead of open coding it
    • +
    • glsl: Only allow unsized array assignment in an initializer
    • +
    • glcpp: Refresh autogenerated lexer files
    • +
    • docs: Initial bits of 7.10.2 release notes
    • +
    • mesa: set version string to 7.10.2
    • +
    • mesa: Remove nonexistant files from _FILES lists
    • +

    + +

    Jerome Glisse (1): +

      +
    • r600g: move user fence into base radeon structure
    • +

    + +

    José Fonseca (2): +

      +
    • mesa: Fix typo glGet*v(GL_TEXTURE_COORD_ARRAY_*).
    • +
    • mesa: More glGet* fixes.
    • +

    + +

    Kenneth Graunke (4): +

      +
    • glcpp: Rework lexer to use a SKIP state rather than REJECT.
    • +
    • glcpp: Remove trailing contexts from #if rules.
    • +
    • i965/fs: Fix linear gl_Color interpolation on pre-gen6 hardware.
    • +
    • glsl: Accept precision qualifiers on sampler types, but only in ES.
    • +

    + +

    Marek Olšák (15): +

      +
    • st/mesa: fix crash when DrawBuffer->_ColorDrawBuffers[0] is NULL
    • +
    • st/mesa: fail to alloc a renderbuffer if st_choose_renderbuffer_format fails
    • +
    • r300/compiler: fix the saturate modifier when applied to TEX instructions
    • +
    • r300/compiler: fix translating the src negate bits in pair_translate
    • +
    • r300/compiler: Abs doesn't cancel Negate (in the conversion to native swizzles)
    • +
    • r300/compiler: TEX instructions don't support negation on source arguments
    • +
    • r300/compiler: do not set TEX_IGNORE_UNCOVERED on r500
    • +
    • r300/compiler: saturate Z before the shadow comparison
    • +
    • r300/compiler: fix equal and notequal shadow compare functions
    • +
    • r300/compiler: remove unused variables
    • +
    • st/mesa: fix crash when using both user and vbo buffers with the same stride
    • +
    • r300g: fix alpha-test with no colorbuffer
    • +
    • r300g: tell the GLSL compiler to lower the continue opcode
    • +
    • r300/compiler: propagate SaturateMode down to the result of shadow comparison
    • +
    • r300/compiler: apply the texture swizzle to shadow pass and fail values too
    • +

    + +

    Michel Dänzer (1): +

      +
    • Use proper source row stride when getting depth/stencil texels.
    • +

    + +

    Tom Stellard (4): +

      +
    • r300/compiler: Use a 4-bit writemask in pair instructions
    • +
    • prog_optimize: Fix reallocating registers for shaders with loops
    • +
    • r300/compiler: Fix vertex shader MAD instructions with constant swizzles
    • +
    • r300/compiler: Don't try to convert RGB to Alpha in full instructions
    • +

    + + + From 130872a2a676bc89d4d936dba418748af08b3743 Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Wed, 6 Apr 2011 13:41:43 -0700 Subject: [PATCH 173/420] docs: update news.html with 7.10.2 release (cherry picked from commit b0866f6cfdfcaf23686b1ae2a99627d468196db2) --- docs/news.html | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/docs/news.html b/docs/news.html index 6a706ab3c56..a6a658aefaf 100644 --- a/docs/news.html +++ b/docs/news.html @@ -11,6 +11,13 @@

    News

    +

    April 6, 2011

    + +

    +Mesa 7.10.2 is released. This is a bug +fix release release. +

    +

    March 2, 2011

    From de4cb19a1c3f166a2ffae3369aa95d3f81198b6b Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Wed, 6 Apr 2011 13:46:58 -0700 Subject: [PATCH 174/420] mesa: Add link to 7.10.2 release notes --- docs/relnotes.html | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/relnotes.html b/docs/relnotes.html index b0ca3ef4313..c1a7ab78dfd 100644 --- a/docs/relnotes.html +++ b/docs/relnotes.html @@ -14,6 +14,7 @@ The release notes summarize what's new or changed in each Mesa release.

    • 7.11 release notes +
    • 7.10.2 release notes
    • 7.10.1 release notes
    • 7.10 release notes
    • 7.9.2 release notes From 7b8830d81d816c22d5930bec1f0f178cf0d138c6 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Wed, 6 Apr 2011 14:16:57 -0600 Subject: [PATCH 175/420] mesa: consolidate code in _mesa_update_array_max_element() --- src/mesa/main/arrayobj.c | 34 ++-------------------------------- src/mesa/main/state.c | 33 ++------------------------------- src/mesa/main/varray.h | 31 +++++++++++++++++++++++++++++++ 3 files changed, 35 insertions(+), 63 deletions(-) diff --git a/src/mesa/main/arrayobj.c b/src/mesa/main/arrayobj.c index d357ffb421d..85a8e0e569b 100644 --- a/src/mesa/main/arrayobj.c +++ b/src/mesa/main/arrayobj.c @@ -50,6 +50,7 @@ #include "arrayobj.h" #include "macros.h" #include "mtypes.h" +#include "varray.h" #include "main/dispatch.h" @@ -279,37 +280,6 @@ remove_array_object( struct gl_context *ctx, struct gl_array_object *obj ) -/** - * Compute the index of the last array element that can be safely accessed - * in a vertex array. We can really only do this when the array lives in - * a VBO. - * The array->_MaxElement field will be updated. - * Later in glDrawArrays/Elements/etc we can do some bounds checking. - */ -static void -compute_max_element(struct gl_client_array *array) -{ - if (array->BufferObj->Name) { - /* Compute the max element we can access in the VBO without going - * out of bounds. - */ - array->_MaxElement = ((GLsizeiptrARB) array->BufferObj->Size - - (GLsizeiptrARB) array->Ptr + array->StrideB - - array->_ElementSize) / array->StrideB; - if (0) - printf("%s Object %u Size %u MaxElement %u\n", - __FUNCTION__, - array->BufferObj->Name, - (GLuint) array->BufferObj->Size, - array->_MaxElement); - } - else { - /* user-space array, no idea how big it is */ - array->_MaxElement = 2 * 1000 * 1000 * 1000; /* just a big number */ - } -} - - /** * Helper for update_arrays(). * \return min(current min, array->_MaxElement). @@ -317,7 +287,7 @@ compute_max_element(struct gl_client_array *array) static GLuint update_min(GLuint min, struct gl_client_array *array) { - compute_max_element(array); + _mesa_update_array_max_element(array); if (array->Enabled) return MIN2(min, array->_MaxElement); else diff --git a/src/mesa/main/state.c b/src/mesa/main/state.c index 1d1ae47374e..4696dbb526f 100644 --- a/src/mesa/main/state.c +++ b/src/mesa/main/state.c @@ -48,6 +48,7 @@ #include "texenvprogram.h" #include "texobj.h" #include "texstate.h" +#include "varray.h" static void @@ -60,36 +61,6 @@ update_separate_specular(struct gl_context *ctx) } -/** - * Compute the index of the last array element that can be safely accessed - * in a vertex array. We can really only do this when the array lives in - * a VBO. - * The array->_MaxElement field will be updated. - * Later in glDrawArrays/Elements/etc we can do some bounds checking. - */ -static void -compute_max_element(struct gl_client_array *array) -{ - assert(array->Enabled); - if (array->BufferObj->Name) { - GLsizeiptrARB offset = (GLsizeiptrARB) array->Ptr; - GLsizeiptrARB obj_size = (GLsizeiptrARB) array->BufferObj->Size; - - if (offset < obj_size) { - array->_MaxElement = (obj_size - offset + - array->StrideB - - array->_ElementSize) / array->StrideB; - } else { - array->_MaxElement = 0; - } - } - else { - /* user-space array, no idea how big it is */ - array->_MaxElement = 2 * 1000 * 1000 * 1000; /* just a big number */ - } -} - - /** * Helper for update_arrays(). * \return min(current min, array->_MaxElement). @@ -97,7 +68,7 @@ compute_max_element(struct gl_client_array *array) static GLuint update_min(GLuint min, struct gl_client_array *array) { - compute_max_element(array); + _mesa_update_array_max_element(array); return MIN2(min, array->_MaxElement); } diff --git a/src/mesa/main/varray.h b/src/mesa/main/varray.h index 53e68c89667..1c423200ffd 100644 --- a/src/mesa/main/varray.h +++ b/src/mesa/main/varray.h @@ -34,6 +34,37 @@ struct gl_client_array; struct gl_context; + +/** + * Compute the index of the last array element that can be safely accessed in + * a vertex array. We can really only do this when the array lives in a VBO. + * The array->_MaxElement field will be updated. + * Later in glDrawArrays/Elements/etc we can do some bounds checking. + */ +static INLINE void +_mesa_update_array_max_element(struct gl_client_array *array) +{ + assert(array->Enabled); + + if (array->BufferObj->Name) { + GLsizeiptrARB offset = (GLsizeiptrARB) array->Ptr; + GLsizeiptrARB bufSize = (GLsizeiptrARB) array->BufferObj->Size; + + if (offset < bufSize) { + array->_MaxElement = (bufSize - offset + array->StrideB + - array->_ElementSize) / array->StrideB; + } + else { + array->_MaxElement = 0; + } + } + else { + /* user-space array, no idea how big it is */ + array->_MaxElement = 2 * 1000 * 1000 * 1000; /* just a big number */ + } +} + + #if _HAVE_FULL_GL extern void GLAPIENTRY From 95368f25c1793619e94d464fe94afcea0409ae26 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Wed, 6 Apr 2011 14:22:39 -0600 Subject: [PATCH 176/420] mesa: fix error message text --- src/mesa/main/varray.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mesa/main/varray.c b/src/mesa/main/varray.c index cfed4b506a5..d20e2c7193e 100644 --- a/src/mesa/main/varray.c +++ b/src/mesa/main/varray.c @@ -484,7 +484,7 @@ _mesa_DisableVertexAttribArrayARB(GLuint index) if (index >= ctx->Const.VertexProgram.MaxAttribs) { _mesa_error(ctx, GL_INVALID_VALUE, - "glEnableVertexAttribArrayARB(index)"); + "glDisableVertexAttribArrayARB(index)"); return; } From 8800a798d1f0cc3453d01ceaf2f4972d3ae75baa Mon Sep 17 00:00:00 2001 From: Vinson Lee Date: Wed, 6 Apr 2011 16:13:15 -0700 Subject: [PATCH 177/420] mesa: Fix allocation size of extension_indices array. Reviewed-by: Brian Paul --- src/mesa/main/extensions.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mesa/main/extensions.c b/src/mesa/main/extensions.c index 285e08d7596..e5711f21aec 100644 --- a/src/mesa/main/extensions.c +++ b/src/mesa/main/extensions.c @@ -908,7 +908,7 @@ _mesa_make_extension_string(struct gl_context *ctx) return NULL; } - extension_indices = malloc(count * sizeof extension_indices); + extension_indices = malloc(count * sizeof(extension_index)); if (extension_indices == NULL) { free(exts); free(extra_extensions); From 66b66295d0bc856c69fdcccc22575580c7ecee16 Mon Sep 17 00:00:00 2001 From: Zou Nan hai Date: Thu, 7 Apr 2011 21:07:57 +0800 Subject: [PATCH 178/420] i965: clear global offset to zero in m0.2 for VS DP read. Signed-off-by: Zou Nan hai --- src/mesa/drivers/dri/i965/brw_eu_emit.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/mesa/drivers/dri/i965/brw_eu_emit.c b/src/mesa/drivers/dri/i965/brw_eu_emit.c index 57313a59c08..c5cde221669 100644 --- a/src/mesa/drivers/dri/i965/brw_eu_emit.c +++ b/src/mesa/drivers/dri/i965/brw_eu_emit.c @@ -1759,6 +1759,11 @@ void brw_dp_READ_4_vs(struct brw_compile *p, brw_set_compression_control(p, BRW_COMPRESSION_NONE); brw_set_mask_control(p, BRW_MASK_DISABLE); brw_set_predicate_control(p, BRW_PREDICATE_NONE); + + /* M0.2 is global offset */ + brw_MOV(p, retype(get_element(brw_message_reg(0), 2), BRW_REGISTER_TYPE_D), + brw_imm_d(0)); + brw_MOV(p, retype(brw_vec1_reg(BRW_MESSAGE_REGISTER_FILE, msg_reg_nr, 2), BRW_REGISTER_TYPE_UD), brw_imm_ud(location)); @@ -1809,6 +1814,10 @@ void brw_dp_READ_4_vs_relative(struct brw_compile *p, brw_set_mask_control(p, BRW_MASK_DISABLE); brw_set_predicate_control(p, BRW_PREDICATE_NONE); + /* M0.2 is global offset */ + brw_MOV(p, retype(get_element(brw_message_reg(0), 2), BRW_REGISTER_TYPE_D), + brw_imm_d(0)); + /* M1.0 is block offset 0, M1.4 is block offset 1, all other * fields ignored. */ From aa61b1535187129c61dd772471f23c633971665d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Wed, 6 Apr 2011 14:38:26 +0100 Subject: [PATCH 179/420] mesa/st: Handle feedback draw when VBO offsets are not sorted in ascending order. Simply port the same logic from setup_interleaved_attribs(). Avoids overflow in mustpass.c and feedback.c conform tests. --- src/mesa/state_tracker/st_draw_feedback.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/mesa/state_tracker/st_draw_feedback.c b/src/mesa/state_tracker/st_draw_feedback.c index 1e1220bfe52..96a08b39100 100644 --- a/src/mesa/state_tracker/st_draw_feedback.c +++ b/src/mesa/state_tracker/st_draw_feedback.c @@ -111,6 +111,7 @@ st_feedback_draw_vbo(struct gl_context *ctx, struct pipe_transfer *vb_transfer[PIPE_MAX_ATTRIBS]; struct pipe_transfer *ib_transfer = NULL; GLuint attr, i; + const GLubyte *low_addr = NULL; const void *mapped_indices = NULL; assert(draw); @@ -141,6 +142,16 @@ st_feedback_draw_vbo(struct gl_context *ctx, draw_bind_vertex_shader(draw, st->vp_variant->draw_shader); set_feedback_vertex_format(ctx); + /* Find the lowest address of the arrays we're drawing */ + if (vp->num_inputs) { + low_addr = arrays[vp->index_to_input[0]]->Ptr; + + for (attr = 1; attr < vp->num_inputs; attr++) { + const GLubyte *start = arrays[vp->index_to_input[attr]]->Ptr; + low_addr = MIN2(low_addr, start); + } + } + /* loop over TGSI shader inputs to determine vertex buffer * and attribute info */ @@ -159,8 +170,8 @@ st_feedback_draw_vbo(struct gl_context *ctx, vbuffers[attr].buffer = NULL; pipe_resource_reference(&vbuffers[attr].buffer, stobj->buffer); - vbuffers[attr].buffer_offset = pointer_to_offset(arrays[0]->Ptr); - velements[attr].src_offset = arrays[mesaAttr]->Ptr - arrays[0]->Ptr; + vbuffers[attr].buffer_offset = pointer_to_offset(low_addr); + velements[attr].src_offset = arrays[mesaAttr]->Ptr - low_addr; } else { /* attribute data is in user-space memory, not a VBO */ From 23d75936a72b9a9b9e1d04a901a86a75d93dbffb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Wed, 6 Apr 2011 15:10:19 +0100 Subject: [PATCH 180/420] mesa/st: Prevent 'end' < 'start' in vbo_exec_DrawRangeElementsBaseVertex() We adjust 'end' to fit into _MaxElement, but that may result into a 'start' value bigger than 'end' being passed downstream, causing havoc. This could be seen with arb_robustness_draw-vbo-bounds, due to an application bug. --- src/mesa/vbo/vbo_exec_array.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/mesa/vbo/vbo_exec_array.c b/src/mesa/vbo/vbo_exec_array.c index 98d6badc47a..6e26e4e77a0 100644 --- a/src/mesa/vbo/vbo_exec_array.c +++ b/src/mesa/vbo/vbo_exec_array.c @@ -943,8 +943,13 @@ vbo_exec_DrawRangeElementsBaseVertex(GLenum mode, /* Set 'end' to the max possible legal value */ assert(ctx->Array.ArrayObj->_MaxElement >= 1); end = ctx->Array.ArrayObj->_MaxElement - 1; + + if (end < start) { + return; + } } - else if (0) { + + if (0) { printf("glDraw[Range]Elements{,BaseVertex}" "(start %u, end %u, type 0x%x, count %d) ElemBuf %u, " "base %d\n", From 204991bf5d29caa3fa54df9e4f6898faa73752cf Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Thu, 7 Apr 2011 12:07:32 +0100 Subject: [PATCH 181/420] mesa: Update _ElementSize. --- src/mesa/main/arrayobj.c | 2 ++ src/mesa/vbo/vbo_context.c | 2 ++ src/mesa/vbo/vbo_exec_draw.c | 1 + src/mesa/vbo/vbo_save_draw.c | 1 + src/mesa/vbo/vbo_split_copy.c | 1 + 5 files changed, 7 insertions(+) diff --git a/src/mesa/main/arrayobj.c b/src/mesa/main/arrayobj.c index 85a8e0e569b..4bfb2424004 100644 --- a/src/mesa/main/arrayobj.c +++ b/src/mesa/main/arrayobj.c @@ -41,6 +41,7 @@ #include "glheader.h" #include "hash.h" +#include "image.h" #include "imports.h" #include "context.h" #include "mfeatures.h" @@ -207,6 +208,7 @@ init_array(struct gl_context *ctx, array->Ptr = NULL; array->Enabled = GL_FALSE; array->Normalized = GL_FALSE; + array->_ElementSize = size * _mesa_sizeof_type(type); #if FEATURE_ARB_vertex_buffer_object /* Vertex array buffers */ _mesa_reference_buffer_object(ctx, &array->BufferObj, diff --git a/src/mesa/vbo/vbo_context.c b/src/mesa/vbo/vbo_context.c index 6656ed89816..ae17ae29a0c 100644 --- a/src/mesa/vbo/vbo_context.c +++ b/src/mesa/vbo/vbo_context.c @@ -72,6 +72,7 @@ static void init_legacy_currval(struct gl_context *ctx) cl->Type = GL_FLOAT; cl->Format = GL_RGBA; cl->Ptr = (const void *)ctx->Current.Attrib[i]; + cl->_ElementSize = cl->Size * sizeof(GLfloat); _mesa_reference_buffer_object(ctx, &cl->BufferObj, ctx->Shared->NullBufferObj); } @@ -98,6 +99,7 @@ static void init_generic_currval(struct gl_context *ctx) cl->Stride = 0; cl->StrideB = 0; cl->Enabled = 1; + cl->_ElementSize = cl->Size * sizeof(GLfloat); _mesa_reference_buffer_object(ctx, &cl->BufferObj, ctx->Shared->NullBufferObj); } diff --git a/src/mesa/vbo/vbo_exec_draw.c b/src/mesa/vbo/vbo_exec_draw.c index 539658021e3..7e8d8602093 100644 --- a/src/mesa/vbo/vbo_exec_draw.c +++ b/src/mesa/vbo/vbo_exec_draw.c @@ -239,6 +239,7 @@ vbo_exec_bind_arrays( struct gl_context *ctx ) arrays[attr].Type = GL_FLOAT; arrays[attr].Format = GL_RGBA; arrays[attr].Enabled = 1; + arrays[attr]._ElementSize = arrays[attr].Size * sizeof(GLfloat); _mesa_reference_buffer_object(ctx, &arrays[attr].BufferObj, exec->vtx.bufferobj); diff --git a/src/mesa/vbo/vbo_save_draw.c b/src/mesa/vbo/vbo_save_draw.c index 634a6d3f84b..26f1d96de33 100644 --- a/src/mesa/vbo/vbo_save_draw.c +++ b/src/mesa/vbo/vbo_save_draw.c @@ -193,6 +193,7 @@ static void vbo_bind_vertex_list(struct gl_context *ctx, arrays[attr].Type = GL_FLOAT; arrays[attr].Format = GL_RGBA; arrays[attr].Enabled = 1; + arrays[attr]._ElementSize = arrays[attr].Size * sizeof(GLfloat); _mesa_reference_buffer_object(ctx, &arrays[attr].BufferObj, node->vertex_store->bufferobj); diff --git a/src/mesa/vbo/vbo_split_copy.c b/src/mesa/vbo/vbo_split_copy.c index 8c981f93e5c..ecca1171673 100644 --- a/src/mesa/vbo/vbo_split_copy.c +++ b/src/mesa/vbo/vbo_split_copy.c @@ -519,6 +519,7 @@ replay_init( struct copy_context *copy ) dst->Enabled = GL_TRUE; dst->Normalized = src->Normalized; dst->BufferObj = ctx->Shared->NullBufferObj; + dst->_ElementSize = src->_ElementSize; dst->_MaxElement = copy->dstbuf_size; /* may be less! */ offset += copy->varying[i].size; From 0c501bacef3738b55986292abca149dcfe76d72d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Thu, 7 Apr 2011 12:19:14 +0100 Subject: [PATCH 182/420] mesa/st: Fix user buffer size computation when stride is zero. Although for GL a zero stride means tightly packed elements, Mesa internally uses zero strides for constant arrays. Therefore user buffers need to be defined from buffer_offset + src_offset + min_index*stride to buffer_offset + src_offset + max_index*stride + elem_size Simplifying the later with (max_index + 1)*stride will give zero sized buffers. This change also aggregates the st_context's info about user buffers into a single array. --- src/mesa/state_tracker/st_context.c | 4 +- src/mesa/state_tracker/st_context.h | 13 +++-- src/mesa/state_tracker/st_draw.c | 76 ++++++++++++++++------------- 3 files changed, 53 insertions(+), 40 deletions(-) diff --git a/src/mesa/state_tracker/st_context.c b/src/mesa/state_tracker/st_context.c index 5a39ab0a110..a9461899ad5 100644 --- a/src/mesa/state_tracker/st_context.c +++ b/src/mesa/state_tracker/st_context.c @@ -206,8 +206,8 @@ static void st_destroy_context_priv( struct st_context *st ) st_destroy_drawtex(st); /* Unreference any user vertex buffers. */ - for (i = 0; i < st->num_user_vbs; i++) { - pipe_resource_reference(&st->user_vb[i], NULL); + for (i = 0; i < st->num_user_attribs; i++) { + pipe_resource_reference(&st->user_attrib[i].buffer, NULL); } for (i = 0; i < Elements(st->state.sampler_views); i++) { diff --git a/src/mesa/state_tracker/st_context.h b/src/mesa/state_tracker/st_context.h index 77765f02379..1fc9c1051a0 100644 --- a/src/mesa/state_tracker/st_context.h +++ b/src/mesa/state_tracker/st_context.h @@ -187,9 +187,16 @@ struct st_context void *winsys_drawable_handle; /* User vertex buffers. */ - struct pipe_resource *user_vb[PIPE_MAX_ATTRIBS]; - unsigned user_vb_stride[PIPE_MAX_ATTRIBS]; - unsigned num_user_vbs; + struct { + struct pipe_resource *buffer; + + /** Element size */ + GLuint element_size; + + /** Attribute stride */ + GLsizei stride; + } user_attrib[PIPE_MAX_ATTRIBS]; + unsigned num_user_attribs; }; diff --git a/src/mesa/state_tracker/st_draw.c b/src/mesa/state_tracker/st_draw.c index 487f3f19cb3..d27043ec296 100644 --- a/src/mesa/state_tracker/st_draw.c +++ b/src/mesa/state_tracker/st_draw.c @@ -329,8 +329,12 @@ setup_interleaved_attribs(struct gl_context *ctx, const struct gl_client_array *array = arrays[mesaAttr]; struct gl_buffer_object *bufobj = array->BufferObj; struct st_buffer_object *stobj = st_buffer_object(bufobj); + unsigned src_offset = (unsigned) (array->Ptr - low_addr); + GLuint element_size = array->_ElementSize; GLsizei stride = array->StrideB; + assert(element_size == array->Size * _mesa_sizeof_type(array->Type)); + if (attr == 0) { if (bufobj && bufobj->Name) { vbuffer->buffer = NULL; @@ -339,22 +343,25 @@ setup_interleaved_attribs(struct gl_context *ctx, } else { uint divisor = array->InstanceDivisor; - uint length = (divisor ? num_instances / divisor : max_index) + 1; + uint last_index = divisor ? num_instances / divisor : max_index; + uint bytes = src_offset + stride * last_index + element_size; + vbuffer->buffer = pipe_user_buffer_create(pipe->screen, (void*) low_addr, - stride * length, + bytes, PIPE_BIND_VERTEX_BUFFER); vbuffer->buffer_offset = 0; /* Track user vertex buffers. */ - pipe_resource_reference(&st->user_vb[0], vbuffer->buffer); - st->user_vb_stride[0] = stride; - st->num_user_vbs = 1; + pipe_resource_reference(&st->user_attrib[0].buffer, vbuffer->buffer); + st->user_attrib[0].element_size = element_size; + st->user_attrib[0].stride = stride; + st->num_user_attribs = 1; } vbuffer->stride = stride; /* in bytes */ } - velements[attr].src_offset = (unsigned) (array->Ptr - low_addr); + velements[attr].src_offset = src_offset; velements[attr].instance_divisor = array->InstanceDivisor; velements[attr].vertex_buffer_index = 0; velements[attr].src_format = st_pipe_vertex_format(array->Type, @@ -390,8 +397,11 @@ setup_non_interleaved_attribs(struct gl_context *ctx, const GLuint mesaAttr = vp->index_to_input[attr]; const struct gl_client_array *array = arrays[mesaAttr]; struct gl_buffer_object *bufobj = array->BufferObj; + GLuint element_size = array->_ElementSize; GLsizei stride = array->StrideB; + assert(element_size == array->Size * _mesa_sizeof_type(array->Type)); + if (bufobj && bufobj->Name) { /* Attribute data is in a VBO. * Recall that for VBOs, the gl_client_array->Ptr field is @@ -410,20 +420,16 @@ setup_non_interleaved_attribs(struct gl_context *ctx, void *ptr; if (array->Ptr) { - if (stride == 0) { - bytes = _mesa_sizeof_type(array->Type) * array->Size; - } - else { - uint divisor = array->InstanceDivisor; - uint length = (divisor ? num_instances / divisor : max_index) + 1; - bytes = stride * length; - } + uint divisor = array->InstanceDivisor; + uint last_index = divisor ? num_instances / divisor : max_index; + + bytes = stride * last_index + element_size; ptr = (void *) array->Ptr; } else { /* no array, use ctx->Current.Attrib[] value */ - bytes = sizeof(ctx->Current.Attrib[0]); + bytes = element_size = sizeof(ctx->Current.Attrib[0]); ptr = (void *) ctx->Current.Attrib[mesaAttr]; stride = 0; } @@ -438,9 +444,10 @@ setup_non_interleaved_attribs(struct gl_context *ctx, vbuffer[attr].buffer_offset = 0; /* Track user vertex buffers. */ - pipe_resource_reference(&st->user_vb[attr], vbuffer[attr].buffer); - st->user_vb_stride[attr] = stride; - st->num_user_vbs = MAX2(st->num_user_vbs, attr+1); + pipe_resource_reference(&st->user_attrib[attr].buffer, vbuffer[attr].buffer); + st->user_attrib[attr].element_size = element_size; + st->user_attrib[attr].stride = stride; + st->num_user_attribs = MAX2(st->num_user_attribs, attr + 1); } /* common-case setup */ @@ -583,10 +590,10 @@ st_validate_varrays(struct gl_context *ctx, memset(velements, 0, sizeof(struct pipe_vertex_element) * vpv->num_inputs); /* Unreference any user vertex buffers. */ - for (i = 0; i < st->num_user_vbs; i++) { - pipe_resource_reference(&st->user_vb[i], NULL); + for (i = 0; i < st->num_user_attribs; i++) { + pipe_resource_reference(&st->user_attrib[i].buffer, NULL); } - st->num_user_vbs = 0; + st->num_user_attribs = 0; /* * Setup the vbuffer[] and velements[] arrays. @@ -700,21 +707,20 @@ st_draw_vbo(struct gl_context *ctx, /* Notify the driver that the content of user buffers may have been * changed. */ - if (!new_array && st->num_user_vbs) { - for (i = 0; i < st->num_user_vbs; i++) { - if (st->user_vb[i]) { - unsigned stride = st->user_vb_stride[i]; + assert(max_index >= min_index); + if (!new_array && st->num_user_attribs) { + for (i = 0; i < st->num_user_attribs; i++) { + if (st->user_attrib[i].buffer) { + unsigned element_size = st->user_attrib[i].element_size; + unsigned stride = st->user_attrib[i].stride; + unsigned min_offset = min_index * stride; + unsigned max_offset = max_index * stride + element_size; - if (stride) { - pipe->redefine_user_buffer(pipe, st->user_vb[i], - min_index * stride, - (max_index + 1 - min_index) * stride); - } - else { - /* stride == 0 */ - pipe->redefine_user_buffer(pipe, st->user_vb[i], - 0, st->user_vb[i]->width0); - } + assert(max_offset > min_offset); + + pipe->redefine_user_buffer(pipe, st->user_attrib[i].buffer, + min_offset, + max_offset - min_offset); } } } From 584d1e23096ed103ae62c13685a435b220b482f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Thu, 7 Apr 2011 13:35:25 +0100 Subject: [PATCH 183/420] mesa: Update _ElementSize in a few more places. --- src/mesa/vbo/vbo_context.c | 1 + src/mesa/vbo/vbo_exec_api.c | 2 ++ src/mesa/vbo/vbo_save_draw.c | 2 ++ 3 files changed, 5 insertions(+) diff --git a/src/mesa/vbo/vbo_context.c b/src/mesa/vbo/vbo_context.c index ae17ae29a0c..9de770d0bcf 100644 --- a/src/mesa/vbo/vbo_context.c +++ b/src/mesa/vbo/vbo_context.c @@ -145,6 +145,7 @@ static void init_mat_currval(struct gl_context *ctx) cl->Stride = 0; cl->StrideB = 0; cl->Enabled = 1; + cl->_ElementSize = cl->Size * sizeof(GLfloat); _mesa_reference_buffer_object(ctx, &cl->BufferObj, ctx->Shared->NullBufferObj); } diff --git a/src/mesa/vbo/vbo_exec_api.c b/src/mesa/vbo/vbo_exec_api.c index fcd544de763..3c7c439b64c 100644 --- a/src/mesa/vbo/vbo_exec_api.c +++ b/src/mesa/vbo/vbo_exec_api.c @@ -168,6 +168,8 @@ static void vbo_exec_copy_to_current( struct vbo_exec_context *exec ) * directly. */ vbo->currval[i].Size = exec->vtx.attrsz[i]; + assert(vbo->currval[i].Type == GL_FLOAT); + vbo->currval[i]._ElementSize = vbo->currval[i].Size * sizeof(GLfloat); /* This triggers rather too much recalculation of Mesa state * that doesn't get used (eg light positions). diff --git a/src/mesa/vbo/vbo_save_draw.c b/src/mesa/vbo/vbo_save_draw.c index 26f1d96de33..ca4cff38a89 100644 --- a/src/mesa/vbo/vbo_save_draw.c +++ b/src/mesa/vbo/vbo_save_draw.c @@ -90,6 +90,8 @@ _playback_copy_to_current(struct gl_context *ctx, memcpy(current, tmp, 4 * sizeof(GLfloat)); vbo->currval[i].Size = node->attrsz[i]; + assert(vbo->currval[i].Type == GL_FLOAT); + vbo->currval[i]._ElementSize = vbo->currval[i].Size * sizeof(GLfloat); if (i >= VBO_ATTRIB_FIRST_MATERIAL && i <= VBO_ATTRIB_LAST_MATERIAL) From 6638b4a590aa07dbe05f6647da90a00a4c0d57a8 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Thu, 7 Apr 2011 11:25:46 -0600 Subject: [PATCH 184/420] svga: another tweak to adjust_x term (use -0.5) --- src/gallium/drivers/svga/svga_state_framebuffer.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gallium/drivers/svga/svga_state_framebuffer.c b/src/gallium/drivers/svga/svga_state_framebuffer.c index 8ad6ab4c29c..47bdc253d7b 100644 --- a/src/gallium/drivers/svga/svga_state_framebuffer.c +++ b/src/gallium/drivers/svga/svga_state_framebuffer.c @@ -296,7 +296,7 @@ static int emit_viewport( struct svga_context *svga, break; case PIPE_PRIM_POINTS: case PIPE_PRIM_TRIANGLES: - adjust_x = -0.25; + adjust_x = -0.5; adjust_y = -0.5; break; } From 1e105741f1e0ae4946febb41c844ed5741a54ec1 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Thu, 7 Apr 2011 13:41:52 -0600 Subject: [PATCH 185/420] util: simplify bit shifting in util_cpu_detect() --- src/gallium/auxiliary/util/u_cpu_detect.c | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/src/gallium/auxiliary/util/u_cpu_detect.c b/src/gallium/auxiliary/util/u_cpu_detect.c index 32519b148b6..c9d5a9e6dd1 100644 --- a/src/gallium/auxiliary/util/u_cpu_detect.c +++ b/src/gallium/auxiliary/util/u_cpu_detect.c @@ -270,13 +270,13 @@ util_cpu_detect(void) util_cpu_caps.x86_cpu_type = 8 + ((regs2[0] >> 20) & 255); /* use extended family (P4, IA64) */ /* general feature flags */ - util_cpu_caps.has_tsc = (regs2[3] & (1 << 8 )) >> 8; /* 0x0000010 */ - util_cpu_caps.has_mmx = (regs2[3] & (1 << 23 )) >> 23; /* 0x0800000 */ - util_cpu_caps.has_sse = (regs2[3] & (1 << 25 )) >> 25; /* 0x2000000 */ - util_cpu_caps.has_sse2 = (regs2[3] & (1 << 26 )) >> 26; /* 0x4000000 */ - util_cpu_caps.has_sse3 = (regs2[2] & (1)); /* 0x0000001 */ - util_cpu_caps.has_ssse3 = (regs2[2] & (1 << 9 )) >> 9; /* 0x0000020 */ - util_cpu_caps.has_sse4_1 = (regs2[2] & (1 << 19)) >> 19; + util_cpu_caps.has_tsc = (regs2[3] >> 8) & 1; /* 0x0000010 */ + util_cpu_caps.has_mmx = (regs2[3] >> 23) & 1; /* 0x0800000 */ + util_cpu_caps.has_sse = (regs2[3] >> 25) & 1; /* 0x2000000 */ + util_cpu_caps.has_sse2 = (regs2[3] >> 26) & 1; /* 0x4000000 */ + util_cpu_caps.has_sse3 = (regs2[2] >> 0) & 1; /* 0x0000001 */ + util_cpu_caps.has_ssse3 = (regs2[2] >> 9) & 1; /* 0x0000020 */ + util_cpu_caps.has_sse4_1 = (regs2[2] >> 19) & 1; util_cpu_caps.has_mmx2 = util_cpu_caps.has_sse; /* SSE cpus supports mmxext too */ cacheline = ((regs2[1] >> 8) & 0xFF) * 8; @@ -290,10 +290,10 @@ util_cpu_detect(void) cpuid(0x80000001, regs2); - util_cpu_caps.has_mmx |= (regs2[3] & (1 << 23 )) >> 23; /* 0x0800000 */ - util_cpu_caps.has_mmx2 |= (regs2[3] & (1 << 22 )) >> 22; /* 0x400000 */ - util_cpu_caps.has_3dnow = (regs2[3] & (1 << 31 )) >> 31; /* 0x80000000 */ - util_cpu_caps.has_3dnow_ext = (regs2[3] & (1 << 30 )) >> 30; + util_cpu_caps.has_mmx |= (regs2[3] >> 23) & 1; + util_cpu_caps.has_mmx2 |= (regs2[3] >> 22) & 1; + util_cpu_caps.has_3dnow = (regs2[3] >> 31) & 1; + util_cpu_caps.has_3dnow_ext = (regs2[3] >> 30) & 1; } if (regs[0] >= 0x80000006) { From ef2c80f5064b2d1830cea5bbcacde850138d54c4 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Thu, 7 Apr 2011 13:41:52 -0600 Subject: [PATCH 186/420] util: add cpu detection for sse 4.2 and avx --- src/gallium/auxiliary/util/u_cpu_detect.c | 4 ++++ src/gallium/auxiliary/util/u_cpu_detect.h | 2 ++ 2 files changed, 6 insertions(+) diff --git a/src/gallium/auxiliary/util/u_cpu_detect.c b/src/gallium/auxiliary/util/u_cpu_detect.c index c9d5a9e6dd1..e0c8f73c7d3 100644 --- a/src/gallium/auxiliary/util/u_cpu_detect.c +++ b/src/gallium/auxiliary/util/u_cpu_detect.c @@ -277,6 +277,8 @@ util_cpu_detect(void) util_cpu_caps.has_sse3 = (regs2[2] >> 0) & 1; /* 0x0000001 */ util_cpu_caps.has_ssse3 = (regs2[2] >> 9) & 1; /* 0x0000020 */ util_cpu_caps.has_sse4_1 = (regs2[2] >> 19) & 1; + util_cpu_caps.has_sse4_2 = (regs2[2] >> 20) & 1; + util_cpu_caps.has_avx = (regs2[2] >> 28) & 1; util_cpu_caps.has_mmx2 = util_cpu_caps.has_sse; /* SSE cpus supports mmxext too */ cacheline = ((regs2[1] >> 8) & 0xFF) * 8; @@ -329,6 +331,8 @@ util_cpu_detect(void) debug_printf("util_cpu_caps.has_sse3 = %u\n", util_cpu_caps.has_sse3); debug_printf("util_cpu_caps.has_ssse3 = %u\n", util_cpu_caps.has_ssse3); debug_printf("util_cpu_caps.has_sse4_1 = %u\n", util_cpu_caps.has_sse4_1); + debug_printf("util_cpu_caps.has_sse4_2 = %u\n", util_cpu_caps.has_sse4_2); + debug_printf("util_cpu_caps.has_avx = %u\n", util_cpu_caps.has_avx); debug_printf("util_cpu_caps.has_3dnow = %u\n", util_cpu_caps.has_3dnow); debug_printf("util_cpu_caps.has_3dnow_ext = %u\n", util_cpu_caps.has_3dnow_ext); debug_printf("util_cpu_caps.has_altivec = %u\n", util_cpu_caps.has_altivec); diff --git a/src/gallium/auxiliary/util/u_cpu_detect.h b/src/gallium/auxiliary/util/u_cpu_detect.h index f3bef0993c7..856e8d7a0ef 100644 --- a/src/gallium/auxiliary/util/u_cpu_detect.h +++ b/src/gallium/auxiliary/util/u_cpu_detect.h @@ -53,6 +53,8 @@ struct util_cpu_caps { unsigned has_sse3:1; unsigned has_ssse3:1; unsigned has_sse4_1:1; + unsigned has_sse4_2:1; + unsigned has_avx:1; unsigned has_3dnow:1; unsigned has_3dnow_ext:1; unsigned has_altivec:1; From 06613b7b3a641b66400f09993a884daf7ab34509 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Thu, 7 Apr 2011 13:43:00 -0600 Subject: [PATCH 187/420] llvmpipe: document issue with LLVM 2.8 and earlier with AVX --- src/gallium/drivers/llvmpipe/README | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/gallium/drivers/llvmpipe/README b/src/gallium/drivers/llvmpipe/README index 1fc7746a834..cd0e476e73b 100644 --- a/src/gallium/drivers/llvmpipe/README +++ b/src/gallium/drivers/llvmpipe/README @@ -13,6 +13,10 @@ Requirements See /proc/cpuinfo to know what your CPU supports. - LLVM. Version 2.8 recommended. 2.6 or later required. + + NOTE: LLVM 2.8 and earlier will not work on systems that support the + Intel AVX extensions (e.g. Sandybridge). LLVM's code generator will + fail when trying to emit AVX instructions. This was fixed in LLVM 2.9. For Linux, on a recent Debian based distribution do: From 0da2a22ba6cbe6a2175ac47ab4541b1cfa939d1f Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Thu, 7 Apr 2011 13:56:45 -0600 Subject: [PATCH 188/420] docs: replace llvmpipe/README with docs/llvmpipe.html --- docs/contents.html | 1 + .../llvmpipe/README => docs/llvmpipe.html | 132 +++++++++++++----- 2 files changed, 100 insertions(+), 33 deletions(-) rename src/gallium/drivers/llvmpipe/README => docs/llvmpipe.html (67%) diff --git a/docs/contents.html b/docs/contents.html index cf1661e4eac..8fc2ac0da9f 100644 --- a/docs/contents.html +++ b/docs/contents.html @@ -62,6 +62,7 @@ a:visited {
    • Performance Tips
    • Mesa Extensions
    • Function Name Mangling +
    • Gallium llvmpipe driver
    Developer Topics diff --git a/src/gallium/drivers/llvmpipe/README b/docs/llvmpipe.html similarity index 67% rename from src/gallium/drivers/llvmpipe/README rename to docs/llvmpipe.html index cd0e476e73b..28d7411d434 100644 --- a/src/gallium/drivers/llvmpipe/README +++ b/docs/llvmpipe.html @@ -1,65 +1,116 @@ -LLVMPIPE -- a fork of softpipe that employs LLVM for code generation. + + +llvmpipe + + + + + +

    Introduction

    + +

    +The Gallium llvmpipe driver is a software rasterizer that uses LLVM to +do runtime code generation. +Shaders, point/line/triangle rasterization and vertex processing are +implemented with LLVM IR which is translated to x86 or x86-64 machine +code. +Also, the driver is multithreaded to take advantage of multiple CPU cores +(up to 8 at this time). +It's the fastest software rasterizer for Mesa. +

    -Requirements -============ +

    Requirements

    - - A x86 or amd64 processor. 64bit mode is preferred. - +
    +
    An x86 or amd64 processor. 64-bit mode is preferred.
    +
    +

    Support for sse2 is strongly encouraged. Support for ssse3, and sse4.1 will yield the most efficient code. The less features the CPU has the more likely is that you ran into underperforming, buggy, or incomplete code. - +

    +

    See /proc/cpuinfo to know what your CPU supports. - - - LLVM. Version 2.8 recommended. 2.6 or later required. - - NOTE: LLVM 2.8 and earlier will not work on systems that support the +

    +
    +
    LLVM. Version 2.8 recommended. 2.6 or later required.
    +
    +

    + NOTE: LLVM 2.8 and earlier will not work on systems that support the Intel AVX extensions (e.g. Sandybridge). LLVM's code generator will fail when trying to emit AVX instructions. This was fixed in LLVM 2.9. - +

    +

    For Linux, on a recent Debian based distribution do: - +

    +
          aptitude install llvm-dev
    +
    + For a RPM-based distribution do: +

    +
    +     yum install llvm-devel
    +
    +

    For Windows download pre-built MSVC 9.0 or MinGW binaries from http://people.freedesktop.org/~jrfonseca/llvm/ and set the LLVM environment variable to the extracted path. +

    +

    For MSVC there are two set of binaries: llvm-x.x-msvc32mt.7z and llvm-x.x-msvc32mtd.7z . +

    +

    You have to set the LLVM=/path/to/llvm-x.x-msvc32mtd env var when passing debug=yes to scons, and LLVM=/path/to/llvm-x.x-msvc32mt when building with debug=no. This is necessary as LLVM builds as static library so the chosen MS CRT must match. +

    +
    - - scons (optional) +
    scons (optional)
    +
    -Building -======== + +

    Building

    To build everything on Linux invoke scons as: +
       scons build=debug libgl-xlib
    +
    Alternatively, you can build it with GNU make, if you prefer, by invoking it as +
       make linux-llvm
    +
    but the rest of these instructions assume that scons is used. For windows is everything the except except the winsys: +
       scons build=debug libgl-gdi
    +
    -Using -===== + +

    Using

    On Linux, building will create a drop-in alternative for libGL.so into +
       build/foo/gallium/targets/libgl-xlib/libGL.so
    +
    +or +
    +  lib/gallium/libGL.so
    +
    To use it set the LD_LIBRARY_PATH environment variable accordingly. @@ -72,19 +123,20 @@ replacing the native ICD driver, but it's quite an advanced usage, so if you need to ask, don't even try it. -Profiling -========= +

    Profiling

    To profile llvmpipe you should pass the options +
       scons build=profile 
    +
    This will ensure that frame pointers are used both in C and JIT functions, and that no tail call optimizations are done by gcc. - To better profile JIT code you'll need to build LLVM with oprofile integration. +
       ./configure \
           --prefix=$install_dir \
           --enable-optimized \
    @@ -96,43 +148,57 @@ To better profile JIT code you'll need to build LLVM with oprofile integration.
       make -C "$build_dir" install
     
       find "$install_dir/lib" -iname '*.a' -print0 | xargs -0 strip --strip-debug
    +
    The you should define +
       export LLVM=/path/to/llvm-2.6-profile
    +
    and rebuild. -Unit testing -============ +

    Unit testing

    +

    Building will also create several unit tests in build/linux-???-debug/gallium/drivers/llvmpipe: +

    - - lp_test_blend: blending - - lp_test_conv: SIMD vector conversion - - lp_test_format: pixel unpacking/packing + +
  • lp_test_blend: blending +
  • lp_test_conv: SIMD vector conversion +
  • lp_test_format: pixel unpacking/packing + +

    Some of this tests can output results and benchmarks to a tab-separated-file for posterior analysis, e.g.: - +

    +
       build/linux-x86_64-debug/gallium/drivers/llvmpipe/lp_test_blend -o blend.tsv
    +
    -Development Notes -================= +

    Development Notes

    -- When looking to this code by the first time start in lp_state_fs.c, and +
      +
    • + When looking to this code by the first time start in lp_state_fs.c, and then skim through the lp_bld_* functions called in there, and the comments at the top of the lp_bld_*.c functions. - -- The driver-independent parts of the LLVM / Gallium code are found in +
    • +
    • + The driver-independent parts of the LLVM / Gallium code are found in src/gallium/auxiliary/gallivm/. The filenames and function prefixes need to be renamed from "lp_bld_" to something else though. - -- We use LLVM-C bindings for now. They are not documented, but follow the C++ +
    • +
    • + We use LLVM-C bindings for now. They are not documented, but follow the C++ interfaces very closely, and appear to be complete enough for code generation. See http://npcontemplation.blogspot.com/2008/06/secret-of-llvm-c-bindings.html for a stand-alone example. See the llvm-c/Core.h file for reference. +
    • +
    From 3e15fa86d7bb50ae1b97f8962d2f17bfe72d5263 Mon Sep 17 00:00:00 2001 From: Henri Verbeet Date: Thu, 7 Apr 2011 22:21:20 +0200 Subject: [PATCH 189/420] r600g: Use symbolic names for NUMBER_TYPE. Signed-off-by: Henri Verbeet --- src/gallium/drivers/r600/evergreen_state.c | 6 +++--- src/gallium/drivers/r600/r600_state.c | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/gallium/drivers/r600/evergreen_state.c b/src/gallium/drivers/r600/evergreen_state.c index 97f9a07b013..cff79fabd41 100644 --- a/src/gallium/drivers/r600/evergreen_state.c +++ b/src/gallium/drivers/r600/evergreen_state.c @@ -680,7 +680,7 @@ static void evergreen_cb(struct r600_pipe_context *rctx, struct r600_pipe_state level, state->cbufs[cb]->u.tex.first_layer); pitch = rtex->pitch_in_blocks[level] / 8 - 1; slice = rtex->pitch_in_blocks[level] * surf->aligned_height / 64 - 1; - ntype = 0; + ntype = V_028C70_NUMBER_UNORM; desc = util_format_description(surf->base.format); if (desc->colorspace == UTIL_FORMAT_COLORSPACE_SRGB) ntype = V_028C70_NUMBER_SRGB; @@ -690,7 +690,7 @@ static void evergreen_cb(struct r600_pipe_context *rctx, struct r600_pipe_state /* disable when gallium grows int textures */ if ((format == FMT_32_32_32_32 || format == FMT_16_16_16_16) && rtex->force_int_type) - ntype = 4; + ntype = V_028C70_NUMBER_UINT; color_info = S_028C70_FORMAT(format) | S_028C70_COMP_SWAP(swap) | @@ -708,7 +708,7 @@ static void evergreen_cb(struct r600_pipe_context *rctx, struct r600_pipe_state if we aren't a float, sint or uint */ if (desc->colorspace != UTIL_FORMAT_COLORSPACE_ZS && desc->channel[i].size < 12 && desc->channel[i].type != UTIL_FORMAT_TYPE_FLOAT && - ntype != 4 && ntype != 5) + ntype != V_028C70_NUMBER_UINT && ntype != V_028C70_NUMBER_SINT) color_info |= S_028C70_SOURCE_FORMAT(V_028C70_EXPORT_4C_16BPC); if (rtex->array_mode[level] > V_028C70_ARRAY_LINEAR_ALIGNED) { diff --git a/src/gallium/drivers/r600/r600_state.c b/src/gallium/drivers/r600/r600_state.c index 7ab6965c92e..3a863ae85c8 100644 --- a/src/gallium/drivers/r600/r600_state.c +++ b/src/gallium/drivers/r600/r600_state.c @@ -742,7 +742,7 @@ static void r600_cb(struct r600_pipe_context *rctx, struct r600_pipe_state *rsta level, state->cbufs[cb]->u.tex.first_layer); pitch = rtex->pitch_in_blocks[level] / 8 - 1; slice = rtex->pitch_in_blocks[level] * surf->aligned_height / 64 - 1; - ntype = 0; + ntype = V_0280A0_NUMBER_UNORM; desc = util_format_description(surf->base.format); if (desc->colorspace == UTIL_FORMAT_COLORSPACE_SRGB) ntype = V_0280A0_NUMBER_SRGB; @@ -758,7 +758,7 @@ static void r600_cb(struct r600_pipe_context *rctx, struct r600_pipe_state *rsta /* disable when gallium grows int textures */ if ((format == FMT_32_32_32_32 || format == FMT_16_16_16_16) && rtex->force_int_type) - ntype = 4; + ntype = V_0280A0_NUMBER_UINT; color_info = S_0280A0_FORMAT(format) | S_0280A0_COMP_SWAP(swap) | From 09eff39a58885bb3b8507d02920b53b4e81a66ea Mon Sep 17 00:00:00 2001 From: Henri Verbeet Date: Thu, 7 Apr 2011 22:21:20 +0200 Subject: [PATCH 190/420] r600g: Unreference framebuffer state on context destruction. Signed-off-by: Henri Verbeet --- src/gallium/drivers/r600/r600_pipe.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/gallium/drivers/r600/r600_pipe.c b/src/gallium/drivers/r600/r600_pipe.c index 3e24bfafe4a..2c2245b67a8 100644 --- a/src/gallium/drivers/r600/r600_pipe.c +++ b/src/gallium/drivers/r600/r600_pipe.c @@ -168,6 +168,7 @@ static void r600_destroy_context(struct pipe_context *context) struct r600_pipe_context *rctx = (struct r600_pipe_context *)context; rctx->context.delete_depth_stencil_alpha_state(&rctx->context, rctx->custom_dsa_flush); + util_unreference_framebuffer_state(&rctx->framebuffer); r600_context_fini(&rctx->ctx); From 55a629cee5c20b357cca5c767a14fb27d9691e16 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kristian=20H=C3=B8gsberg?= Date: Thu, 7 Apr 2011 18:27:06 -0400 Subject: [PATCH 191/420] egl_dri2.c: Open drm device with O_CLOEXEC Not a good fd to leak. --- src/egl/drivers/dri2/platform_x11.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/egl/drivers/dri2/platform_x11.c b/src/egl/drivers/dri2/platform_x11.c index e7fe95da8e8..5d4ac6ae948 100644 --- a/src/egl/drivers/dri2/platform_x11.c +++ b/src/egl/drivers/dri2/platform_x11.c @@ -990,7 +990,7 @@ dri2_initialize_x11_dri2(_EGLDriver *drv, _EGLDisplay *disp) if (!dri2_load_driver(disp)) goto cleanup_conn; - dri2_dpy->fd = open(dri2_dpy->device_name, O_RDWR); + dri2_dpy->fd = open(dri2_dpy->device_name, O_RDWR | O_CLOEXEC); if (dri2_dpy->fd == -1) { _eglLog(_EGL_WARNING, "DRI2: could not open %s (%s)", dri2_dpy->device_name, From 6eff8479af1a137d81d7bffc0c55a39910c28ce9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Wed, 6 Apr 2011 01:23:51 +0200 Subject: [PATCH 192/420] mesa: fix dstRowDiff computation in RGTC texstore functions Copied from libtxc_dxtn, this fixes NPOT RGTC1 textures with r300g. I also did the same for RGTC2. --- src/mesa/main/texcompress_rgtc.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/mesa/main/texcompress_rgtc.c b/src/mesa/main/texcompress_rgtc.c index c50df19c5d8..d9de9bec3d1 100644 --- a/src/mesa/main/texcompress_rgtc.c +++ b/src/mesa/main/texcompress_rgtc.c @@ -121,7 +121,7 @@ _mesa_texstore_red_rgtc1(TEXSTORE_PARAMS) texWidth, (GLubyte *) dstAddr); blkaddr = dst; - dstRowDiff = dstRowStride >= (srcWidth * 4) ? dstRowStride - (((srcWidth + 3) & ~3) * 4) : 0; + dstRowDiff = dstRowStride >= (srcWidth * 2) ? dstRowStride - (((srcWidth + 3) & ~3) * 2) : 0; for (j = 0; j < srcHeight; j+=4) { if (srcHeight > j + 3) numypixels = 4; else numypixels = srcHeight - j; @@ -176,7 +176,7 @@ _mesa_texstore_signed_red_rgtc1(TEXSTORE_PARAMS) texWidth, (GLubyte *) dstAddr); blkaddr = dst; - dstRowDiff = dstRowStride >= (srcWidth * 4) ? dstRowStride - (((srcWidth + 3) & ~3) * 4) : 0; + dstRowDiff = dstRowStride >= (srcWidth * 2) ? dstRowStride - (((srcWidth + 3) & ~3) * 2) : 0; for (j = 0; j < srcHeight; j+=4) { if (srcHeight > j + 3) numypixels = 4; else numypixels = srcHeight - j; @@ -232,7 +232,7 @@ _mesa_texstore_rg_rgtc2(TEXSTORE_PARAMS) texWidth, (GLubyte *) dstAddr); blkaddr = dst; - dstRowDiff = dstRowStride >= (srcWidth * 8) ? dstRowStride - (((srcWidth + 7) & ~7) * 8) : 0; + dstRowDiff = dstRowStride >= (srcWidth * 4) ? dstRowStride - (((srcWidth + 3) & ~3) * 4) : 0; for (j = 0; j < srcHeight; j+=4) { if (srcHeight > j + 3) numypixels = 4; else numypixels = srcHeight - j; @@ -294,7 +294,7 @@ _mesa_texstore_signed_rg_rgtc2(TEXSTORE_PARAMS) texWidth, (GLubyte *) dstAddr); blkaddr = dst; - dstRowDiff = dstRowStride >= (srcWidth * 8) ? dstRowStride - (((srcWidth + 7) & ~7) * 8) : 0; + dstRowDiff = dstRowStride >= (srcWidth * 4) ? dstRowStride - (((srcWidth + 3) & ~3) * 4) : 0; for (j = 0; j < srcHeight; j += 4) { if (srcHeight > j + 3) numypixels = 4; else numypixels = srcHeight - j; From 9d5de0fcb6ced7a4da85a09ad25dcbc2b21bfdf9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Thu, 7 Apr 2011 23:36:18 +0200 Subject: [PATCH 193/420] r300g: add 'radeon: ' prefix to error messages in winsys --- src/gallium/winsys/radeon/drm/radeon_drm_bo.c | 8 ++++---- src/gallium/winsys/radeon/drm/radeon_drm_cs.c | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_bo.c b/src/gallium/winsys/radeon/drm/radeon_drm_bo.c index 3d0fcea1052..2b8ebf975e4 100644 --- a/src/gallium/winsys/radeon/drm/radeon_drm_bo.c +++ b/src/gallium/winsys/radeon/drm/radeon_drm_bo.c @@ -305,10 +305,10 @@ static struct pb_buffer *radeon_bomgr_create_bo(struct pb_manager *_mgr, if (drmCommandWriteRead(rws->fd, DRM_RADEON_GEM_CREATE, &args, sizeof(args))) { - fprintf(stderr, "Failed to allocate :\n"); - fprintf(stderr, " size : %d bytes\n", size); - fprintf(stderr, " alignment : %d bytes\n", desc->alignment); - fprintf(stderr, " domains : %d\n", args.initial_domain); + fprintf(stderr, "radeon: Failed to allocate a buffer:\n"); + fprintf(stderr, "radeon: size : %d bytes\n", size); + fprintf(stderr, "radeon: alignment : %d bytes\n", desc->alignment); + fprintf(stderr, "radeon: domains : %d\n", args.initial_domain); return NULL; } diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_cs.c b/src/gallium/winsys/radeon/drm/radeon_drm_cs.c index a506bdc0613..7576f3ac5fd 100644 --- a/src/gallium/winsys/radeon/drm/radeon_drm_cs.c +++ b/src/gallium/winsys/radeon/drm/radeon_drm_cs.c @@ -320,7 +320,7 @@ static void radeon_drm_cs_write_reloc(struct r300_winsys_cs *rcs, unsigned index = radeon_get_reloc(cs->csc, bo); if (index == -1) { - fprintf(stderr, "r300: Cannot get a relocation in %s.\n", __func__); + fprintf(stderr, "radeon: Cannot get a relocation in %s.\n", __func__); return; } From 10ea8567f49f4daaa654b6e4c365a816f855073b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Fri, 8 Apr 2011 03:11:22 +0200 Subject: [PATCH 194/420] r300g: fix texturing with sizes > 2048 on r500 --- src/gallium/drivers/r300/r300_chipset.c | 1 + src/gallium/drivers/r300/r300_chipset.h | 2 + src/gallium/drivers/r300/r300_context.h | 3 +- src/gallium/drivers/r300/r300_emit.c | 6 +++ src/gallium/drivers/r300/r300_screen.c | 3 ++ src/gallium/drivers/r300/r300_state_derived.c | 5 ++- src/gallium/drivers/r300/r300_texture.c | 40 ++++++++++++++++--- 7 files changed, 52 insertions(+), 8 deletions(-) diff --git a/src/gallium/drivers/r300/r300_chipset.c b/src/gallium/drivers/r300/r300_chipset.c index 990acea9f44..1068d357c94 100644 --- a/src/gallium/drivers/r300/r300_chipset.c +++ b/src/gallium/drivers/r300/r300_chipset.c @@ -419,4 +419,5 @@ void r300_parse_chipset(struct r300_capabilities* caps) caps->is_rv350 = caps->family >= CHIP_FAMILY_RV350; caps->z_compress = caps->is_rv350 ? R300_ZCOMP_8X8 : R300_ZCOMP_4X4; caps->dxtc_swizzle = caps->is_r400 || caps->is_r500; + caps->has_us_format = caps->is_r500; } diff --git a/src/gallium/drivers/r300/r300_chipset.h b/src/gallium/drivers/r300/r300_chipset.h index 68943d561ba..3777f0cfae3 100644 --- a/src/gallium/drivers/r300/r300_chipset.h +++ b/src/gallium/drivers/r300/r300_chipset.h @@ -90,6 +90,8 @@ struct r300_capabilities { boolean high_second_pipe; /* DXTC texture swizzling. */ boolean dxtc_swizzle; + /* Whether R500_US_FORMAT0_0 is supported (depends on DRM). */ + boolean has_us_format; }; /* Enumerations for legibility and telling which card we're running on. */ diff --git a/src/gallium/drivers/r300/r300_context.h b/src/gallium/drivers/r300/r300_context.h index 550d3a75d27..c1f766f6180 100644 --- a/src/gallium/drivers/r300/r300_context.h +++ b/src/gallium/drivers/r300/r300_context.h @@ -190,6 +190,7 @@ struct r300_texture_format_state { uint32_t format1; /* R300_TX_FORMAT1: 0x44c0 */ uint32_t format2; /* R300_TX_FORMAT2: 0x4500 */ uint32_t tile_config; /* R300_TX_OFFSET (subset thereof) */ + uint32_t us_format0; /* R500_US_FORMAT0_0: 0x4640 (through 15) */ }; struct r300_sampler_view { @@ -211,7 +212,7 @@ struct r300_texture_sampler_state { struct r300_texture_format_state format; uint32_t filter0; /* R300_TX_FILTER0: 0x4400 */ uint32_t filter1; /* R300_TX_FILTER1: 0x4440 */ - uint32_t border_color; /* R300_TX_BORDER_COLOR: 0x45c0 */ + uint32_t border_color; /* R300_TX_BORDER_COLOR: 0x45c0 */ }; struct r300_textures_state { diff --git a/src/gallium/drivers/r300/r300_emit.c b/src/gallium/drivers/r300/r300_emit.c index 6b91f93e6d6..a21668a6fc5 100644 --- a/src/gallium/drivers/r300/r300_emit.c +++ b/src/gallium/drivers/r300/r300_emit.c @@ -775,6 +775,7 @@ void r300_emit_textures_state(struct r300_context *r300, struct r300_texture_sampler_state *texstate; struct r300_resource *tex; unsigned i; + boolean has_us_format = r300->screen->caps.has_us_format; CS_LOCALS(r300); BEGIN_CS(size); @@ -796,6 +797,11 @@ void r300_emit_textures_state(struct r300_context *r300, OUT_CS_REG(R300_TX_OFFSET_0 + (i * 4), texstate->format.tile_config); OUT_CS_RELOC(tex); + + if (has_us_format) { + OUT_CS_REG(R500_US_FORMAT0_0 + (i * 4), + texstate->format.us_format0); + } } } END_CS; diff --git a/src/gallium/drivers/r300/r300_screen.c b/src/gallium/drivers/r300/r300_screen.c index 07d854d633c..eb1b4523533 100644 --- a/src/gallium/drivers/r300/r300_screen.c +++ b/src/gallium/drivers/r300/r300_screen.c @@ -482,6 +482,9 @@ struct pipe_screen* r300_screen_create(struct r300_winsys_screen *rws) if (SCREEN_DBG_ON(r300screen, DBG_NO_HIZ)) r300screen->caps.hiz_ram = 0; + if (!rws->get_value(rws, R300_VID_DRM_2_8_0)) + r300screen->caps.has_us_format = FALSE; + pipe_mutex_init(r300screen->num_contexts_mutex); util_slab_create(&r300screen->pool_buffers, diff --git a/src/gallium/drivers/r300/r300_state_derived.c b/src/gallium/drivers/r300/r300_state_derived.c index e943f1a715f..c80cf7860cb 100644 --- a/src/gallium/drivers/r300/r300_state_derived.c +++ b/src/gallium/drivers/r300/r300_state_derived.c @@ -771,6 +771,7 @@ static void r300_merge_textures_and_samplers(struct r300_context* r300) unsigned min_level, max_level, i, j, size; unsigned count = MIN2(state->sampler_view_count, state->sampler_state_count); + boolean has_us_format = r300->screen->caps.has_us_format; /* The KIL opcode fix, see below. */ if (!count && !r300->screen->caps.is_r500) @@ -923,7 +924,7 @@ static void r300_merge_textures_and_samplers(struct r300_context* r300) texstate->filter0 |= i << 28; - size += 16; + size += 16 + (has_us_format ? 2 : 0); state->count = i+1; } else { /* For the KIL opcode to work on r3xx-r4xx, the texture unit @@ -952,7 +953,7 @@ static void r300_merge_textures_and_samplers(struct r300_context* r300) texstate->border_color = 0; texstate->filter0 |= i << 28; - size += 16; + size += 16 + (has_us_format ? 2 : 0); state->count = i+1; } } diff --git a/src/gallium/drivers/r300/r300_texture.c b/src/gallium/drivers/r300/r300_texture.c index ea6d9824030..47d1c3ef75e 100644 --- a/src/gallium/drivers/r300/r300_texture.c +++ b/src/gallium/drivers/r300/r300_texture.c @@ -751,6 +751,16 @@ void r300_texture_setup_format_state(struct r300_screen *screen, struct pipe_resource *pt = &tex->b.b.b; struct r300_texture_desc *desc = &tex->tex; boolean is_r500 = screen->caps.is_r500; + unsigned width, height, depth; + unsigned txwidth, txheight, txdepth; + + width = u_minify(desc->width0, level); + height = u_minify(desc->height0, level); + depth = u_minify(desc->depth0, level); + + txwidth = (width - 1) & 0x7ff; + txheight = (height - 1) & 0x7ff; + txdepth = util_logbase2(depth) & 0xf; /* Mask out all the fields we change. */ out->format0 = 0; @@ -760,9 +770,9 @@ void r300_texture_setup_format_state(struct r300_screen *screen, /* Set sampler state. */ out->format0 = - R300_TX_WIDTH((u_minify(desc->width0, level) - 1) & 0x7ff) | - R300_TX_HEIGHT((u_minify(desc->height0, level) - 1) & 0x7ff) | - R300_TX_DEPTH(util_logbase2(u_minify(desc->depth0, level)) & 0xf); + R300_TX_WIDTH(txwidth) | + R300_TX_HEIGHT(txheight) | + R300_TX_DEPTH(txdepth); if (desc->uses_stride_addressing) { /* rectangles love this */ @@ -780,12 +790,32 @@ void r300_texture_setup_format_state(struct r300_screen *screen, /* large textures on r500 */ if (is_r500) { - if (desc->width0 > 2048) { + unsigned us_width = txwidth; + unsigned us_height = txheight; + unsigned us_depth = txdepth; + + if (width > 2048) { out->format2 |= R500_TXWIDTH_BIT11; } - if (desc->height0 > 2048) { + if (height > 2048) { out->format2 |= R500_TXHEIGHT_BIT11; } + + /* The US_FORMAT register fixes an R500 TX addressing bug. + * Don't ask why it must be set like this. I don't know it either. */ + if (width > 2048) { + us_width = (0x000007FF + us_width) >> 1; + us_depth |= 0x0000000D; + } + if (height > 2048) { + us_height = (0x000007FF + us_height) >> 1; + us_depth |= 0x0000000E; + } + + out->us_format0 = + R300_TX_WIDTH(us_width) | + R300_TX_HEIGHT(us_height) | + R300_TX_DEPTH(us_depth); } out->tile_config = R300_TXO_MACRO_TILE(desc->macrotile[level]) | From 7984c2d42de50d1a44ab9832c8370ff1dee1c0e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Fri, 8 Apr 2011 04:37:19 +0200 Subject: [PATCH 195/420] r300g: do not advertise R16F and RG16F on DRM < 2.8.0 --- src/gallium/drivers/r300/r300_screen.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/r300/r300_screen.c b/src/gallium/drivers/r300/r300_screen.c index eb1b4523533..e1f5a9fd221 100644 --- a/src/gallium/drivers/r300/r300_screen.c +++ b/src/gallium/drivers/r300/r300_screen.c @@ -328,8 +328,9 @@ static boolean r300_is_format_supported(struct pipe_screen* screen, format == PIPE_FORMAT_RGTC2_SNORM || format == PIPE_FORMAT_LATC2_UNORM || format == PIPE_FORMAT_LATC2_SNORM; - boolean is_half_float = format == PIPE_FORMAT_R16_FLOAT || - format == PIPE_FORMAT_R16G16_FLOAT || + boolean is_r16f_rg16f = format == PIPE_FORMAT_R16_FLOAT || + format == PIPE_FORMAT_R16G16_FLOAT; + boolean is_half_float = is_r16f_rg16f || format == PIPE_FORMAT_R16G16B16_FLOAT || format == PIPE_FORMAT_R16G16B16A16_FLOAT; @@ -361,6 +362,8 @@ static boolean r300_is_format_supported(struct pipe_screen* screen, (is_r500 || !is_ati1n) && /* ATI2N is supported on r4xx-r5xx. */ (is_r400 || is_r500 || !is_ati2n) && + /* R16F and RG16F texture support was added in as late as DRM 2.8.0 */ + (drm_2_8_0 || !is_r16f_rg16f) && r300_is_sampler_format_supported(format)) { retval |= PIPE_BIND_SAMPLER_VIEW; } From 2ecb73379e4d88873cbe1cafdd056f7f687ea743 Mon Sep 17 00:00:00 2001 From: Henri Verbeet Date: Mon, 17 Jan 2011 22:03:30 +0100 Subject: [PATCH 196/420] st/mesa: Set samplers views' first_level. Base level and min LOD aren't equivalent. In particular, min LOD has no effect on image array selection for magnification and non-mipmapped minification. Signed-off-by: Brian Paul --- src/mesa/state_tracker/st_atom_sampler.c | 9 +++------ src/mesa/state_tracker/st_atom_texture.c | 4 +++- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/src/mesa/state_tracker/st_atom_sampler.c b/src/mesa/state_tracker/st_atom_sampler.c index 5f1849dcd83..2b53741460f 100644 --- a/src/mesa/state_tracker/st_atom_sampler.c +++ b/src/mesa/state_tracker/st_atom_sampler.c @@ -166,12 +166,9 @@ update_samplers(struct st_context *st) sampler->lod_bias = st->ctx->Texture.Unit[texUnit].LodBias + texobj->LodBias; - sampler->min_lod = texobj->BaseLevel + texobj->MinLod; - if (sampler->min_lod < texobj->BaseLevel) - sampler->min_lod = texobj->BaseLevel; - - sampler->max_lod = MIN2((GLfloat) texobj->MaxLevel, - (texobj->MaxLod + texobj->BaseLevel)); + sampler->min_lod = MAX2(0.0f, texobj->MinLod); + sampler->max_lod = MIN2((GLfloat) texobj->MaxLevel - texobj->BaseLevel, + texobj->MaxLod); if (sampler->max_lod < sampler->min_lod) { /* The GL spec doesn't seem to specify what to do in this case. * Swap the values. diff --git a/src/mesa/state_tracker/st_atom_texture.c b/src/mesa/state_tracker/st_atom_texture.c index fd03669e660..6b9f969ac00 100644 --- a/src/mesa/state_tracker/st_atom_texture.c +++ b/src/mesa/state_tracker/st_atom_texture.c @@ -148,6 +148,7 @@ st_create_texture_sampler_view_from_stobj(struct pipe_context *pipe, u_sampler_view_default_template(&templ, stObj->pt, format); + templ.u.tex.first_level = stObj->base.BaseLevel; if (swizzle != SWIZZLE_NOOP) { templ.swizzle_r = GET_SWZ(swizzle, 0); @@ -248,7 +249,8 @@ update_textures(struct st_context *st) if (check_sampler_swizzle(stObj->sampler_view, stObj->base._Swizzle, stObj->base.DepthMode) || - (st_view_format != stObj->sampler_view->format)) + (st_view_format != stObj->sampler_view->format) || + stObj->base.BaseLevel != stObj->sampler_view->u.tex.first_level) pipe_sampler_view_reference(&stObj->sampler_view, NULL); sampler_view = st_get_texture_sampler_view_from_stobj(stObj, pipe, st_view_format); From 79db70bd8aa04e19a4e1b9ee98eb568d90bb6d62 Mon Sep 17 00:00:00 2001 From: Henri Verbeet Date: Mon, 17 Jan 2011 22:03:30 +0100 Subject: [PATCH 197/420] st/mesa: Clamp min_lod to the max miplevel as well. Otherwise min_lod can potentially be larger than the clamped max_lod. The code that follows will swap min_lod and max_lod in that case, resulting in a max_lod larger than MAX_LEVEL. Signed-off-by: Brian Paul --- src/mesa/state_tracker/st_atom_sampler.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/mesa/state_tracker/st_atom_sampler.c b/src/mesa/state_tracker/st_atom_sampler.c index 2b53741460f..19d41e7061a 100644 --- a/src/mesa/state_tracker/st_atom_sampler.c +++ b/src/mesa/state_tracker/st_atom_sampler.c @@ -166,7 +166,9 @@ update_samplers(struct st_context *st) sampler->lod_bias = st->ctx->Texture.Unit[texUnit].LodBias + texobj->LodBias; - sampler->min_lod = MAX2(0.0f, texobj->MinLod); + sampler->min_lod = CLAMP(texobj->MinLod, + 0.0f, + (GLfloat) texobj->MaxLevel - texobj->BaseLevel); sampler->max_lod = MIN2((GLfloat) texobj->MaxLevel - texobj->BaseLevel, texobj->MaxLod); if (sampler->max_lod < sampler->min_lod) { From 9acdd7739b729375444f8669fc2419d9eb57acc5 Mon Sep 17 00:00:00 2001 From: Henri Verbeet Date: Mon, 17 Jan 2011 22:03:30 +0100 Subject: [PATCH 198/420] softpipe: Take the sampler view's first_level into account when sampling. Signed-off-by: Brian Paul --- src/gallium/drivers/softpipe/sp_tex_sample.c | 32 ++++++++++---------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/src/gallium/drivers/softpipe/sp_tex_sample.c b/src/gallium/drivers/softpipe/sp_tex_sample.c index c09ce19559c..02892c16bde 100644 --- a/src/gallium/drivers/softpipe/sp_tex_sample.c +++ b/src/gallium/drivers/softpipe/sp_tex_sample.c @@ -566,7 +566,7 @@ compute_lambda_1d(const struct sp_sampler_variant *samp, const struct pipe_resource *texture = samp->view->texture; float dsdx = fabsf(s[QUAD_BOTTOM_RIGHT] - s[QUAD_BOTTOM_LEFT]); float dsdy = fabsf(s[QUAD_TOP_LEFT] - s[QUAD_BOTTOM_LEFT]); - float rho = MAX2(dsdx, dsdy) * texture->width0; + float rho = MAX2(dsdx, dsdy) * u_minify(texture->width0, samp->view->u.tex.first_level); return util_fast_log2(rho); } @@ -583,8 +583,8 @@ compute_lambda_2d(const struct sp_sampler_variant *samp, float dsdy = fabsf(s[QUAD_TOP_LEFT] - s[QUAD_BOTTOM_LEFT]); float dtdx = fabsf(t[QUAD_BOTTOM_RIGHT] - t[QUAD_BOTTOM_LEFT]); float dtdy = fabsf(t[QUAD_TOP_LEFT] - t[QUAD_BOTTOM_LEFT]); - float maxx = MAX2(dsdx, dsdy) * texture->width0; - float maxy = MAX2(dtdx, dtdy) * texture->height0; + float maxx = MAX2(dsdx, dsdy) * u_minify(texture->width0, samp->view->u.tex.first_level); + float maxy = MAX2(dtdx, dtdy) * u_minify(texture->height0, samp->view->u.tex.first_level); float rho = MAX2(maxx, maxy); return util_fast_log2(rho); @@ -604,9 +604,9 @@ compute_lambda_3d(const struct sp_sampler_variant *samp, float dtdy = fabsf(t[QUAD_TOP_LEFT] - t[QUAD_BOTTOM_LEFT]); float dpdx = fabsf(p[QUAD_BOTTOM_RIGHT] - p[QUAD_BOTTOM_LEFT]); float dpdy = fabsf(p[QUAD_TOP_LEFT] - p[QUAD_BOTTOM_LEFT]); - float maxx = MAX2(dsdx, dsdy) * texture->width0; - float maxy = MAX2(dtdx, dtdy) * texture->height0; - float maxz = MAX2(dpdx, dpdy) * texture->depth0; + float maxx = MAX2(dsdx, dsdy) * u_minify(texture->width0, samp->view->u.tex.first_level); + float maxy = MAX2(dtdx, dtdy) * u_minify(texture->height0, samp->view->u.tex.first_level); + float maxz = MAX2(dpdx, dpdy) * u_minify(texture->depth0, samp->view->u.tex.first_level); float rho; rho = MAX2(maxx, maxy); @@ -1590,10 +1590,10 @@ mip_filter_linear(struct tgsi_sampler *tgsi_sampler, /* XXX: Take into account all lod values. */ lambda = lod[0]; - level0 = (int)lambda; + level0 = samp->view->u.tex.first_level + (int)lambda; if (lambda < 0.0) { - samp->level = 0; + samp->level = samp->view->u.tex.first_level; samp->mag_img_filter(tgsi_sampler, s, t, p, NULL, tgsi_sampler_lod_bias, rgba); } else if (level0 >= texture->last_level) { @@ -1601,7 +1601,7 @@ mip_filter_linear(struct tgsi_sampler *tgsi_sampler, samp->min_img_filter(tgsi_sampler, s, t, p, NULL, tgsi_sampler_lod_bias, rgba); } else { - float levelBlend = lambda - level0; + float levelBlend = frac(lambda); float rgba0[4][4]; float rgba1[4][4]; int c,j; @@ -1658,11 +1658,11 @@ mip_filter_nearest(struct tgsi_sampler *tgsi_sampler, lambda = lod[0]; if (lambda < 0.0) { - samp->level = 0; + samp->level = samp->view->u.tex.first_level; samp->mag_img_filter(tgsi_sampler, s, t, p, NULL, tgsi_sampler_lod_bias, rgba); } else { - samp->level = (int)(lambda + 0.5) ; + samp->level = samp->view->u.tex.first_level + (int)(lambda + 0.5) ; samp->level = MIN2(samp->level, (int)texture->last_level); samp->min_img_filter(tgsi_sampler, s, t, p, NULL, tgsi_sampler_lod_bias, rgba); } @@ -1699,6 +1699,7 @@ mip_filter_none(struct tgsi_sampler *tgsi_sampler, */ lambda = lod[0]; + samp->level = samp->view->u.tex.first_level; if (lambda < 0.0) { samp->mag_img_filter(tgsi_sampler, s, t, p, NULL, tgsi_sampler_lod_bias, rgba); } @@ -1741,20 +1742,20 @@ mip_filter_linear_2d_linear_repeat_POT( /* XXX: Take into account all lod values. */ lambda = lod[0]; - level0 = (int)lambda; + level0 = samp->view->u.tex.first_level + (int)lambda; /* Catches both negative and large values of level0: */ if ((unsigned)level0 >= texture->last_level) { if (level0 < 0) - samp->level = 0; + samp->level = samp->view->u.tex.first_level; else samp->level = texture->last_level; img_filter_2d_linear_repeat_POT(tgsi_sampler, s, t, p, NULL, tgsi_sampler_lod_bias, rgba); } else { - float levelBlend = lambda - level0; + float levelBlend = frac(lambda); float rgba0[4][4]; float rgba1[4][4]; int c,j; @@ -2238,14 +2239,13 @@ sp_sampler_variant_bind_view( struct sp_sampler_variant *samp, struct softpipe_tex_tile_cache *tex_cache, const struct pipe_sampler_view *view ) { - const struct pipe_sampler_state *sampler = samp->sampler; const struct pipe_resource *texture = view->texture; samp->view = view; samp->cache = tex_cache; samp->xpot = util_unsigned_logbase2( texture->width0 ); samp->ypot = util_unsigned_logbase2( texture->height0 ); - samp->level = CLAMP((int) sampler->min_lod, 0, (int) texture->last_level); + samp->level = view->u.tex.first_level; } From 08070cead0bb79d4441d8c5b900d1571bb63c670 Mon Sep 17 00:00:00 2001 From: Fabian Bieler Date: Thu, 31 Mar 2011 12:32:52 +0200 Subject: [PATCH 199/420] llvmpipe: Take the sampler view's first_level into account when sampling. --- src/gallium/auxiliary/draw/draw_context.c | 4 +- src/gallium/auxiliary/draw/draw_context.h | 2 +- src/gallium/auxiliary/draw/draw_llvm.c | 9 +++- src/gallium/auxiliary/draw/draw_llvm.h | 4 +- src/gallium/auxiliary/draw/draw_llvm_sample.c | 2 + src/gallium/auxiliary/gallivm/lp_bld_sample.c | 54 ++++++++++++------- src/gallium/auxiliary/gallivm/lp_bld_sample.h | 6 +++ .../auxiliary/gallivm/lp_bld_sample_aos.c | 7 ++- .../auxiliary/gallivm/lp_bld_sample_soa.c | 7 ++- src/gallium/drivers/llvmpipe/lp_jit.c | 4 ++ src/gallium/drivers/llvmpipe/lp_jit.h | 2 + src/gallium/drivers/llvmpipe/lp_setup.c | 4 +- .../drivers/llvmpipe/lp_state_sampler.c | 4 +- src/gallium/drivers/llvmpipe/lp_tex_sample.c | 2 + 14 files changed, 78 insertions(+), 33 deletions(-) diff --git a/src/gallium/auxiliary/draw/draw_context.c b/src/gallium/auxiliary/draw/draw_context.c index 95d96719873..d99f94edc43 100644 --- a/src/gallium/auxiliary/draw/draw_context.c +++ b/src/gallium/auxiliary/draw/draw_context.c @@ -751,7 +751,7 @@ void draw_set_mapped_texture(struct draw_context *draw, unsigned sampler_idx, uint32_t width, uint32_t height, uint32_t depth, - uint32_t last_level, + uint32_t first_level, uint32_t last_level, uint32_t row_stride[PIPE_MAX_TEXTURE_LEVELS], uint32_t img_stride[PIPE_MAX_TEXTURE_LEVELS], const void *data[PIPE_MAX_TEXTURE_LEVELS]) @@ -760,7 +760,7 @@ draw_set_mapped_texture(struct draw_context *draw, if(draw->llvm) draw_llvm_set_mapped_texture(draw, sampler_idx, - width, height, depth, last_level, + width, height, depth, first_level, last_level, row_stride, img_stride, data); #endif } diff --git a/src/gallium/auxiliary/draw/draw_context.h b/src/gallium/auxiliary/draw/draw_context.h index a0b217e4d33..7db75b71b43 100644 --- a/src/gallium/auxiliary/draw/draw_context.h +++ b/src/gallium/auxiliary/draw/draw_context.h @@ -123,7 +123,7 @@ void draw_set_mapped_texture(struct draw_context *draw, unsigned sampler_idx, uint32_t width, uint32_t height, uint32_t depth, - uint32_t last_level, + uint32_t first_level, uint32_t last_level, uint32_t row_stride[PIPE_MAX_TEXTURE_LEVELS], uint32_t img_stride[PIPE_MAX_TEXTURE_LEVELS], const void *data[PIPE_MAX_TEXTURE_LEVELS]); diff --git a/src/gallium/auxiliary/draw/draw_llvm.c b/src/gallium/auxiliary/draw/draw_llvm.c index 27c5f3bff5a..a1b8fc38880 100644 --- a/src/gallium/auxiliary/draw/draw_llvm.c +++ b/src/gallium/auxiliary/draw/draw_llvm.c @@ -106,6 +106,7 @@ create_jit_texture_type(struct gallivm_state *gallivm) elem_types[DRAW_JIT_TEXTURE_WIDTH] = elem_types[DRAW_JIT_TEXTURE_HEIGHT] = elem_types[DRAW_JIT_TEXTURE_DEPTH] = + elem_types[DRAW_JIT_TEXTURE_FIRST_LEVEL] = elem_types[DRAW_JIT_TEXTURE_LAST_LEVEL] = int32_type; elem_types[DRAW_JIT_TEXTURE_ROW_STRIDE] = elem_types[DRAW_JIT_TEXTURE_IMG_STRIDE] = @@ -136,6 +137,9 @@ create_jit_texture_type(struct gallivm_state *gallivm) LP_CHECK_MEMBER_OFFSET(struct draw_jit_texture, depth, target, texture_type, DRAW_JIT_TEXTURE_DEPTH); + LP_CHECK_MEMBER_OFFSET(struct draw_jit_texture, first_level, + target, texture_type, + DRAW_JIT_TEXTURE_FIRST_LEVEL); LP_CHECK_MEMBER_OFFSET(struct draw_jit_texture, last_level, target, texture_type, DRAW_JIT_TEXTURE_LAST_LEVEL); @@ -1595,7 +1599,7 @@ void draw_llvm_set_mapped_texture(struct draw_context *draw, unsigned sampler_idx, uint32_t width, uint32_t height, uint32_t depth, - uint32_t last_level, + uint32_t first_level, uint32_t last_level, uint32_t row_stride[PIPE_MAX_TEXTURE_LEVELS], uint32_t img_stride[PIPE_MAX_TEXTURE_LEVELS], const void *data[PIPE_MAX_TEXTURE_LEVELS]) @@ -1611,9 +1615,10 @@ draw_llvm_set_mapped_texture(struct draw_context *draw, jit_tex->width = width; jit_tex->height = height; jit_tex->depth = depth; + jit_tex->first_level = first_level; jit_tex->last_level = last_level; - for (j = 0; j <= last_level; j++) { + for (j = first_level; j <= last_level; j++) { jit_tex->data[j] = data[j]; jit_tex->row_stride[j] = row_stride[j]; jit_tex->img_stride[j] = img_stride[j]; diff --git a/src/gallium/auxiliary/draw/draw_llvm.h b/src/gallium/auxiliary/draw/draw_llvm.h index 873a272e98b..375b7b8b571 100644 --- a/src/gallium/auxiliary/draw/draw_llvm.h +++ b/src/gallium/auxiliary/draw/draw_llvm.h @@ -50,6 +50,7 @@ struct draw_jit_texture uint32_t width; uint32_t height; uint32_t depth; + uint32_t first_level; uint32_t last_level; uint32_t row_stride[PIPE_MAX_TEXTURE_LEVELS]; uint32_t img_stride[PIPE_MAX_TEXTURE_LEVELS]; @@ -64,6 +65,7 @@ enum { DRAW_JIT_TEXTURE_WIDTH = 0, DRAW_JIT_TEXTURE_HEIGHT, DRAW_JIT_TEXTURE_DEPTH, + DRAW_JIT_TEXTURE_FIRST_LEVEL, DRAW_JIT_TEXTURE_LAST_LEVEL, DRAW_JIT_TEXTURE_ROW_STRIDE, DRAW_JIT_TEXTURE_IMG_STRIDE, @@ -296,7 +298,7 @@ void draw_llvm_set_mapped_texture(struct draw_context *draw, unsigned sampler_idx, uint32_t width, uint32_t height, uint32_t depth, - uint32_t last_level, + uint32_t first_level, uint32_t last_level, uint32_t row_stride[PIPE_MAX_TEXTURE_LEVELS], uint32_t img_stride[PIPE_MAX_TEXTURE_LEVELS], const void *data[PIPE_MAX_TEXTURE_LEVELS]); diff --git a/src/gallium/auxiliary/draw/draw_llvm_sample.c b/src/gallium/auxiliary/draw/draw_llvm_sample.c index 574c7cc452f..8af34617353 100644 --- a/src/gallium/auxiliary/draw/draw_llvm_sample.c +++ b/src/gallium/auxiliary/draw/draw_llvm_sample.c @@ -144,6 +144,7 @@ draw_llvm_texture_member(const struct lp_sampler_dynamic_state *base, DRAW_LLVM_TEXTURE_MEMBER(width, DRAW_JIT_TEXTURE_WIDTH, TRUE) DRAW_LLVM_TEXTURE_MEMBER(height, DRAW_JIT_TEXTURE_HEIGHT, TRUE) DRAW_LLVM_TEXTURE_MEMBER(depth, DRAW_JIT_TEXTURE_DEPTH, TRUE) +DRAW_LLVM_TEXTURE_MEMBER(first_level,DRAW_JIT_TEXTURE_FIRST_LEVEL, TRUE) DRAW_LLVM_TEXTURE_MEMBER(last_level, DRAW_JIT_TEXTURE_LAST_LEVEL, TRUE) DRAW_LLVM_TEXTURE_MEMBER(row_stride, DRAW_JIT_TEXTURE_ROW_STRIDE, FALSE) DRAW_LLVM_TEXTURE_MEMBER(img_stride, DRAW_JIT_TEXTURE_IMG_STRIDE, FALSE) @@ -209,6 +210,7 @@ draw_llvm_sampler_soa_create(const struct lp_sampler_static_state *static_state, sampler->dynamic_state.base.width = draw_llvm_texture_width; sampler->dynamic_state.base.height = draw_llvm_texture_height; sampler->dynamic_state.base.depth = draw_llvm_texture_depth; + sampler->dynamic_state.base.first_level = draw_llvm_texture_first_level; sampler->dynamic_state.base.last_level = draw_llvm_texture_last_level; sampler->dynamic_state.base.row_stride = draw_llvm_texture_row_stride; sampler->dynamic_state.base.img_stride = draw_llvm_texture_img_stride; diff --git a/src/gallium/auxiliary/gallivm/lp_bld_sample.c b/src/gallium/auxiliary/gallivm/lp_bld_sample.c index 8ad34598a92..4636371a0f5 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_sample.c +++ b/src/gallium/auxiliary/gallivm/lp_bld_sample.c @@ -51,6 +51,10 @@ */ #define BRILINEAR_FACTOR 2 +static LLVMValueRef +lp_build_minify(struct lp_build_context *bld, + LLVMValueRef base_size, + LLVMValueRef level); /** * Does the given texture wrap mode allow sampling the texture border color? @@ -184,9 +188,11 @@ lp_sampler_static_state(struct lp_sampler_static_state *state, */ static LLVMValueRef lp_build_rho(struct lp_build_sample_context *bld, + unsigned unit, const LLVMValueRef ddx[4], const LLVMValueRef ddy[4]) { + struct lp_build_context *int_size_bld = &bld->int_size_bld; struct lp_build_context *float_size_bld = &bld->float_size_bld; struct lp_build_context *float_bld = &bld->float_bld; const unsigned dims = bld->dims; @@ -198,8 +204,9 @@ lp_build_rho(struct lp_build_sample_context *bld, LLVMValueRef dsdx, dsdy, dtdx, dtdy, drdx, drdy; LLVMValueRef rho_x, rho_y; LLVMValueRef rho_vec; - LLVMValueRef float_size; + LLVMValueRef int_size, float_size; LLVMValueRef rho; + LLVMValueRef first_level, first_level_vec; dsdx = ddx[0]; dsdy = ddy[0]; @@ -235,7 +242,11 @@ lp_build_rho(struct lp_build_sample_context *bld, rho_vec = lp_build_max(float_size_bld, rho_x, rho_y); - float_size = lp_build_int_to_float(float_size_bld, bld->int_size); + first_level = bld->dynamic_state->first_level(bld->dynamic_state, + bld->gallivm, unit); + first_level_vec = lp_build_broadcast_scalar(&bld->int_size_bld, first_level); + int_size = lp_build_minify(int_size_bld, bld->int_size, first_level_vec); + float_size = lp_build_int_to_float(float_size_bld, int_size); rho_vec = lp_build_mul(float_size_bld, rho_vec, float_size); @@ -442,7 +453,7 @@ lp_build_lod_selector(struct lp_build_sample_context *bld, else { LLVMValueRef rho; - rho = lp_build_rho(bld, ddx, ddy); + rho = lp_build_rho(bld, unit, ddx, ddy); /* * Compute lod = log2(rho) @@ -542,18 +553,18 @@ lp_build_nearest_mip_level(struct lp_build_sample_context *bld, LLVMValueRef *level_out) { struct lp_build_context *int_bld = &bld->int_bld; - LLVMValueRef last_level, level; - - LLVMValueRef zero = lp_build_const_int32(bld->gallivm, 0); + LLVMValueRef first_level, last_level, level; + first_level = bld->dynamic_state->first_level(bld->dynamic_state, + bld->gallivm, unit); last_level = bld->dynamic_state->last_level(bld->dynamic_state, bld->gallivm, unit); /* convert float lod to integer */ - level = lod_ipart; + level = lp_build_add(int_bld, lod_ipart, first_level); /* clamp level to legal range of levels */ - *level_out = lp_build_clamp(int_bld, level, zero, last_level); + *level_out = lp_build_clamp(int_bld, level, first_level, last_level); } @@ -573,39 +584,42 @@ lp_build_linear_mip_levels(struct lp_build_sample_context *bld, LLVMBuilderRef builder = bld->gallivm->builder; struct lp_build_context *int_bld = &bld->int_bld; struct lp_build_context *float_bld = &bld->float_bld; - LLVMValueRef last_level; + LLVMValueRef first_level, last_level; LLVMValueRef clamp_min; LLVMValueRef clamp_max; - *level0_out = lod_ipart; - *level1_out = lp_build_add(int_bld, lod_ipart, int_bld->one); + first_level = bld->dynamic_state->first_level(bld->dynamic_state, + bld->gallivm, unit); + + *level0_out = lp_build_add(int_bld, lod_ipart, first_level); + *level1_out = lp_build_add(int_bld, *level0_out, int_bld->one); last_level = bld->dynamic_state->last_level(bld->dynamic_state, bld->gallivm, unit); /* - * Clamp both lod_ipart and lod_ipart + 1 to [0, last_level], with the - * minimum number of comparisons, and zeroing lod_fpart in the extreme + * Clamp both *level0_out and *level1_out to [first_level, last_level], with + * the minimum number of comparisons, and zeroing lod_fpart in the extreme * ends in the process. */ - /* lod_ipart < 0 */ + /* *level0_out < first_level */ clamp_min = LLVMBuildICmp(builder, LLVMIntSLT, - lod_ipart, int_bld->zero, - "clamp_lod_to_zero"); + *level0_out, first_level, + "clamp_lod_to_first"); *level0_out = LLVMBuildSelect(builder, clamp_min, - int_bld->zero, *level0_out, ""); + first_level, *level0_out, ""); *level1_out = LLVMBuildSelect(builder, clamp_min, - int_bld->zero, *level1_out, ""); + first_level, *level1_out, ""); *lod_fpart_inout = LLVMBuildSelect(builder, clamp_min, float_bld->zero, *lod_fpart_inout, ""); - /* lod_ipart >= last_level */ + /* *level0_out >= last_level */ clamp_max = LLVMBuildICmp(builder, LLVMIntSGE, - lod_ipart, last_level, + *level0_out, last_level, "clamp_lod_to_last"); *level0_out = LLVMBuildSelect(builder, clamp_max, diff --git a/src/gallium/auxiliary/gallivm/lp_bld_sample.h b/src/gallium/auxiliary/gallivm/lp_bld_sample.h index 8c9d5df4e43..a71e656fe0e 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_sample.h +++ b/src/gallium/auxiliary/gallivm/lp_bld_sample.h @@ -120,6 +120,12 @@ struct lp_sampler_dynamic_state struct gallivm_state *gallivm, unsigned unit); + /** Obtain the first mipmap level (base level) (returns int32) */ + LLVMValueRef + (*first_level)( const struct lp_sampler_dynamic_state *state, + struct gallivm_state *gallivm, + unsigned unit); + /** Obtain the number of mipmap levels minus one (returns int32) */ LLVMValueRef (*last_level)( const struct lp_sampler_dynamic_state *state, diff --git a/src/gallium/auxiliary/gallivm/lp_bld_sample_aos.c b/src/gallium/auxiliary/gallivm/lp_bld_sample_aos.c index e61cf9541ea..4f160159968 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_sample_aos.c +++ b/src/gallium/auxiliary/gallivm/lp_bld_sample_aos.c @@ -939,6 +939,7 @@ lp_build_sample_aos(struct lp_build_sample_context *bld, LLVMValueRef unswizzled[4]; LLVMValueRef face_ddx[4], face_ddy[4]; struct lp_build_context h16_bld; + LLVMValueRef first_level; LLVMValueRef i32t_zero = lp_build_const_int32(bld->gallivm, 0); /* we only support the common/simple wrap modes at this time */ @@ -1008,7 +1009,9 @@ lp_build_sample_aos(struct lp_build_sample_context *bld, lp_build_nearest_mip_level(bld, unit, lod_ipart, &ilevel0); } else { - ilevel0 = i32t_zero; + first_level = bld->dynamic_state->first_level(bld->dynamic_state, + bld->gallivm, unit); + ilevel0 = first_level; } break; case PIPE_TEX_MIPFILTER_NEAREST: @@ -1065,7 +1068,7 @@ lp_build_sample_aos(struct lp_build_sample_context *bld, lp_build_sample_mipmap(bld, mag_filter, PIPE_TEX_MIPFILTER_NONE, s, t, r, - i32t_zero, NULL, NULL, + ilevel0, NULL, NULL, packed_lo, packed_hi); } lp_build_endif(&if_ctx); diff --git a/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c b/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c index 9961ba08f3a..4ea7b4bd8a2 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c +++ b/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c @@ -943,6 +943,7 @@ lp_build_sample_general(struct lp_build_sample_context *bld, LLVMValueRef ilevel0, ilevel1 = NULL; LLVMValueRef face_ddx[4], face_ddy[4]; LLVMValueRef texels[4]; + LLVMValueRef first_level; LLVMValueRef i32t_zero = lp_build_const_int32(bld->gallivm, 0); unsigned chan; @@ -1009,7 +1010,9 @@ lp_build_sample_general(struct lp_build_sample_context *bld, lp_build_nearest_mip_level(bld, unit, lod_ipart, &ilevel0); } else { - ilevel0 = i32t_zero; + first_level = bld->dynamic_state->first_level(bld->dynamic_state, + bld->gallivm, unit); + ilevel0 = first_level; } break; case PIPE_TEX_MIPFILTER_NEAREST: @@ -1068,7 +1071,7 @@ lp_build_sample_general(struct lp_build_sample_context *bld, lp_build_sample_mipmap(bld, unit, mag_filter, PIPE_TEX_MIPFILTER_NONE, s, t, r, - i32t_zero, NULL, NULL, + ilevel0, NULL, NULL, texels); } lp_build_endif(&if_ctx); diff --git a/src/gallium/drivers/llvmpipe/lp_jit.c b/src/gallium/drivers/llvmpipe/lp_jit.c index 482a902dd23..268f0fa034b 100644 --- a/src/gallium/drivers/llvmpipe/lp_jit.c +++ b/src/gallium/drivers/llvmpipe/lp_jit.c @@ -54,6 +54,7 @@ lp_jit_create_types(struct llvmpipe_context *lp) elem_types[LP_JIT_TEXTURE_WIDTH] = elem_types[LP_JIT_TEXTURE_HEIGHT] = elem_types[LP_JIT_TEXTURE_DEPTH] = + elem_types[LP_JIT_TEXTURE_FIRST_LEVEL] = elem_types[LP_JIT_TEXTURE_LAST_LEVEL] = LLVMInt32TypeInContext(lc); elem_types[LP_JIT_TEXTURE_ROW_STRIDE] = elem_types[LP_JIT_TEXTURE_IMG_STRIDE] = @@ -81,6 +82,9 @@ lp_jit_create_types(struct llvmpipe_context *lp) LP_CHECK_MEMBER_OFFSET(struct lp_jit_texture, depth, gallivm->target, texture_type, LP_JIT_TEXTURE_DEPTH); + LP_CHECK_MEMBER_OFFSET(struct lp_jit_texture, first_level, + gallivm->target, texture_type, + LP_JIT_TEXTURE_FIRST_LEVEL); LP_CHECK_MEMBER_OFFSET(struct lp_jit_texture, last_level, gallivm->target, texture_type, LP_JIT_TEXTURE_LAST_LEVEL); diff --git a/src/gallium/drivers/llvmpipe/lp_jit.h b/src/gallium/drivers/llvmpipe/lp_jit.h index a6763dce17a..04e8dd5267b 100644 --- a/src/gallium/drivers/llvmpipe/lp_jit.h +++ b/src/gallium/drivers/llvmpipe/lp_jit.h @@ -50,6 +50,7 @@ struct lp_jit_texture uint32_t width; uint32_t height; uint32_t depth; + uint32_t first_level; uint32_t last_level; uint32_t row_stride[LP_MAX_TEXTURE_LEVELS]; uint32_t img_stride[LP_MAX_TEXTURE_LEVELS]; @@ -66,6 +67,7 @@ enum { LP_JIT_TEXTURE_WIDTH = 0, LP_JIT_TEXTURE_HEIGHT, LP_JIT_TEXTURE_DEPTH, + LP_JIT_TEXTURE_FIRST_LEVEL, LP_JIT_TEXTURE_LAST_LEVEL, LP_JIT_TEXTURE_ROW_STRIDE, LP_JIT_TEXTURE_IMG_STRIDE, diff --git a/src/gallium/drivers/llvmpipe/lp_setup.c b/src/gallium/drivers/llvmpipe/lp_setup.c index 3813e0ed972..c82ab821c7e 100644 --- a/src/gallium/drivers/llvmpipe/lp_setup.c +++ b/src/gallium/drivers/llvmpipe/lp_setup.c @@ -653,6 +653,7 @@ lp_setup_set_fragment_sampler_views(struct lp_setup_context *setup, jit_tex->width = tex->width0; jit_tex->height = tex->height0; jit_tex->depth = tex->depth0; + jit_tex->first_level = view->u.tex.first_level; jit_tex->last_level = tex->last_level; /* We're referencing the texture's internal data, so save a @@ -663,7 +664,7 @@ lp_setup_set_fragment_sampler_views(struct lp_setup_context *setup, if (!lp_tex->dt) { /* regular texture - setup array of mipmap level pointers */ int j; - for (j = 0; j <= tex->last_level; j++) { + for (j = view->u.tex.first_level; j <= tex->last_level; j++) { jit_tex->data[j] = llvmpipe_get_texture_image_all(lp_tex, j, LP_TEX_USAGE_READ, LP_TEX_LAYOUT_LINEAR); @@ -677,6 +678,7 @@ lp_setup_set_fragment_sampler_views(struct lp_setup_context *setup, jit_tex->width = TILE_SIZE/8; jit_tex->height = TILE_SIZE/8; jit_tex->depth = 1; + jit_tex->first_level = 0; jit_tex->last_level = 0; jit_tex->row_stride[j] = 0; jit_tex->img_stride[j] = 0; diff --git a/src/gallium/drivers/llvmpipe/lp_state_sampler.c b/src/gallium/drivers/llvmpipe/lp_state_sampler.c index 1dd866195d3..df9fb89cc8e 100644 --- a/src/gallium/drivers/llvmpipe/lp_state_sampler.c +++ b/src/gallium/drivers/llvmpipe/lp_state_sampler.c @@ -269,7 +269,7 @@ llvmpipe_prepare_vertex_sampling(struct llvmpipe_context *lp, if (!lp_tex->dt) { /* regular texture - setup array of mipmap level pointers */ int j; - for (j = 0; j <= tex->last_level; j++) { + for (j = view->u.tex.first_level; j <= tex->last_level; j++) { data[j] = llvmpipe_get_texture_image_all(lp_tex, j, LP_TEX_USAGE_READ, LP_TEX_LAYOUT_LINEAR); @@ -293,7 +293,7 @@ llvmpipe_prepare_vertex_sampling(struct llvmpipe_context *lp, draw_set_mapped_texture(lp->draw, i, tex->width0, tex->height0, tex->depth0, - tex->last_level, + view->u.tex.first_level, tex->last_level, row_stride, img_stride, data); } } diff --git a/src/gallium/drivers/llvmpipe/lp_tex_sample.c b/src/gallium/drivers/llvmpipe/lp_tex_sample.c index ed4282937f8..ccc139603ee 100644 --- a/src/gallium/drivers/llvmpipe/lp_tex_sample.c +++ b/src/gallium/drivers/llvmpipe/lp_tex_sample.c @@ -149,6 +149,7 @@ lp_llvm_texture_member(const struct lp_sampler_dynamic_state *base, LP_LLVM_TEXTURE_MEMBER(width, LP_JIT_TEXTURE_WIDTH, TRUE) LP_LLVM_TEXTURE_MEMBER(height, LP_JIT_TEXTURE_HEIGHT, TRUE) LP_LLVM_TEXTURE_MEMBER(depth, LP_JIT_TEXTURE_DEPTH, TRUE) +LP_LLVM_TEXTURE_MEMBER(first_level, LP_JIT_TEXTURE_FIRST_LEVEL, TRUE) LP_LLVM_TEXTURE_MEMBER(last_level, LP_JIT_TEXTURE_LAST_LEVEL, TRUE) LP_LLVM_TEXTURE_MEMBER(row_stride, LP_JIT_TEXTURE_ROW_STRIDE, FALSE) LP_LLVM_TEXTURE_MEMBER(img_stride, LP_JIT_TEXTURE_IMG_STRIDE, FALSE) @@ -219,6 +220,7 @@ lp_llvm_sampler_soa_create(const struct lp_sampler_static_state *static_state, sampler->dynamic_state.base.width = lp_llvm_texture_width; sampler->dynamic_state.base.height = lp_llvm_texture_height; sampler->dynamic_state.base.depth = lp_llvm_texture_depth; + sampler->dynamic_state.base.first_level = lp_llvm_texture_first_level; sampler->dynamic_state.base.last_level = lp_llvm_texture_last_level; sampler->dynamic_state.base.row_stride = lp_llvm_texture_row_stride; sampler->dynamic_state.base.img_stride = lp_llvm_texture_img_stride; From 1bcdc1e319863ec531b7f03804332e6352e13780 Mon Sep 17 00:00:00 2001 From: Henri Verbeet Date: Mon, 17 Jan 2011 22:03:30 +0100 Subject: [PATCH 200/420] r300g: Properly take the sampler view's first_level into account when sampling. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Brian Paul Signed-off-by: Marek Olšák --- src/gallium/drivers/r300/r300_state_derived.c | 34 +++++++++++-------- 1 file changed, 20 insertions(+), 14 deletions(-) diff --git a/src/gallium/drivers/r300/r300_state_derived.c b/src/gallium/drivers/r300/r300_state_derived.c index c80cf7860cb..b4d45f5eee0 100644 --- a/src/gallium/drivers/r300/r300_state_derived.c +++ b/src/gallium/drivers/r300/r300_state_derived.c @@ -768,7 +768,7 @@ static void r300_merge_textures_and_samplers(struct r300_context* r300) struct r300_sampler_state *sampler; struct r300_sampler_view *view; struct r300_resource *tex; - unsigned min_level, max_level, i, j, size; + unsigned base_level, min_level, level_count, i, j, size; unsigned count = MIN2(state->sampler_view_count, state->sampler_state_count); boolean has_us_format = r300->screen->caps.has_us_format; @@ -801,21 +801,27 @@ static void r300_merge_textures_and_samplers(struct r300_context* r300) r300->screen->caps.is_r500); /* determine min/max levels */ - max_level = MIN3(sampler->max_lod + view->base.u.tex.first_level, - tex->b.b.b.last_level, view->base.u.tex.last_level); - min_level = MIN2(sampler->min_lod + view->base.u.tex.first_level, - max_level); + base_level = view->base.u.tex.first_level; + min_level = sampler->min_lod; + level_count = MIN3(sampler->max_lod, + tex->b.b.b.last_level - base_level, + view->base.u.tex.last_level - base_level); - if (tex->tex.is_npot && min_level > 0) { - /* Even though we do not implement mipmapping for NPOT - * textures, we should at least honor the minimum level - * which is allowed to be displayed. We do this by setting up - * the i-th mipmap level as the zero level. */ - unsigned offset = tex->tex_offset + - tex->tex.offset_in_bytes[min_level]; + if (base_level + min_level) { + unsigned offset; + + if (tex->tex.is_npot) { + /* Even though we do not implement mipmapping for NPOT + * textures, we should at least honor the minimum level + * which is allowed to be displayed. We do this by setting up + * an i-th mipmap level as the zero level. */ + base_level += min_level; + } + offset = tex->tex_offset + + tex->tex.offset_in_bytes[base_level]; r300_texture_setup_format_state(r300->screen, tex, - min_level, + base_level, &texstate->format); texstate->format.tile_config |= offset & 0xffffffe0; assert((offset & 0x1f) == 0); @@ -892,7 +898,7 @@ static void r300_merge_textures_and_samplers(struct r300_context* r300) } } else { /* the MAX_MIP level is the largest (finest) one */ - texstate->format.format0 |= R300_TX_NUM_LEVELS(max_level); + texstate->format.format0 |= R300_TX_NUM_LEVELS(level_count); texstate->filter0 |= R300_TX_MAX_MIP_LEVEL(min_level); } From 1329d9433496618ad02bb9a91eccecd9736fdf54 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Fri, 8 Apr 2011 13:27:14 +0200 Subject: [PATCH 201/420] r300g: fix crash with hyperz r300_update_hyperz_state is no longer required to be called here. --- src/gallium/drivers/r300/r300_blit.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/gallium/drivers/r300/r300_blit.c b/src/gallium/drivers/r300/r300_blit.c index 37b635fd120..056b52f25dd 100644 --- a/src/gallium/drivers/r300/r300_blit.c +++ b/src/gallium/drivers/r300/r300_blit.c @@ -253,13 +253,11 @@ static void r300_clear(struct pipe_context* pipe, } else if (r300->zmask_clear.dirty || r300->hiz_clear.dirty) { /* Just clear zmask and hiz now, this does not use the standard draw * procedure. */ - unsigned dwords; - /* Calculate zmask_clear and hiz_clear atom sizes. */ - r300_update_hyperz_state(r300); - dwords = (r300->zmask_clear.dirty ? r300->zmask_clear.size : 0) + - (r300->hiz_clear.dirty ? r300->hiz_clear.size : 0) + - r300_get_num_cs_end_dwords(r300); + unsigned dwords = + (r300->zmask_clear.dirty ? r300->zmask_clear.size : 0) + + (r300->hiz_clear.dirty ? r300->hiz_clear.size : 0) + + r300_get_num_cs_end_dwords(r300); /* Reserve CS space. */ if (dwords > (R300_MAX_CMDBUF_DWORDS - r300->cs->cdw)) { From a0d154dc1385d92a31dca8e65e50d958bdf6d532 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Fri, 8 Apr 2011 19:31:26 +0200 Subject: [PATCH 202/420] u_vbuf_mgr: fix crash with unsupported vertex format in hw VBOs --- src/gallium/auxiliary/util/u_vbuf_mgr.c | 6 +++++- src/gallium/auxiliary/util/u_vbuf_mgr.h | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/gallium/auxiliary/util/u_vbuf_mgr.c b/src/gallium/auxiliary/util/u_vbuf_mgr.c index 521ac07747c..b2eaff851ac 100644 --- a/src/gallium/auxiliary/util/u_vbuf_mgr.c +++ b/src/gallium/auxiliary/util/u_vbuf_mgr.c @@ -572,7 +572,11 @@ void u_vbuf_mgr_draw_begin(struct u_vbuf_mgr *mgrb, int min_index, max_index; min_index = info->min_index - info->index_bias; - max_index = info->max_index - info->index_bias; + if (info->max_index == ~0) { + max_index = mgr->b.max_index; + } else { + max_index = MIN2(info->max_index - info->index_bias, mgr->b.max_index); + } /* Translate vertices with non-native layouts or formats. */ if (mgr->incompatible_vb_layout || mgr->ve->incompatible_layout) { diff --git a/src/gallium/auxiliary/util/u_vbuf_mgr.h b/src/gallium/auxiliary/util/u_vbuf_mgr.h index 8b241854c83..9380dce4f72 100644 --- a/src/gallium/auxiliary/util/u_vbuf_mgr.h +++ b/src/gallium/auxiliary/util/u_vbuf_mgr.h @@ -53,7 +53,7 @@ struct u_vbuf_mgr { int nr_real_vertex_buffers; /* Precomputed max_index for hardware vertex buffers. */ - int max_index; + unsigned max_index; /* This uploader can optionally be used by the driver. * From 963431829055f63ec94d88c97a5d07d30e49833a Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Sat, 2 Apr 2011 18:11:32 -1000 Subject: [PATCH 203/420] i965/fs: Remove broken optimization for live intervals in loops. The theory here was to detect a temporary variable used within a loop, and avoid considering it live across the entire loop. However, it was overeager and failed when the first definition of the variable appeared within the loop but was only conditionally defined. Fixes glsl-fs-loop-redundant-condition. --- src/mesa/drivers/dri/i965/brw_fs.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp index cada1401821..99cd8f833a7 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp @@ -2812,8 +2812,7 @@ fs_visitor::calculate_live_intervals() if (inst->src[i].file == GRF && inst->src[i].reg != 0) { int reg = inst->src[i].reg; - if (!loop_depth || (this->virtual_grf_sizes[reg] == 1 && - def[reg] >= bb_header_ip)) { + if (!loop_depth) { use[reg] = ip; } else { def[reg] = MIN2(loop_start, def[reg]); @@ -2829,8 +2828,7 @@ fs_visitor::calculate_live_intervals() if (inst->dst.file == GRF && inst->dst.reg != 0) { int reg = inst->dst.reg; - if (!loop_depth || (this->virtual_grf_sizes[reg] == 1 && - !inst->predicated)) { + if (!loop_depth) { def[reg] = MIN2(def[reg], ip); } else { def[reg] = MIN2(def[reg], loop_start); From ff3d7ce201e6b415eb1254d784f0f425592d556b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Fri, 8 Apr 2011 20:05:33 +0200 Subject: [PATCH 204/420] r300g: emit US_FORMAT on R520 only --- src/gallium/drivers/r300/r300_chipset.c | 2 +- src/gallium/drivers/r300/r300_chipset.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/r300/r300_chipset.c b/src/gallium/drivers/r300/r300_chipset.c index 1068d357c94..4949703120d 100644 --- a/src/gallium/drivers/r300/r300_chipset.c +++ b/src/gallium/drivers/r300/r300_chipset.c @@ -419,5 +419,5 @@ void r300_parse_chipset(struct r300_capabilities* caps) caps->is_rv350 = caps->family >= CHIP_FAMILY_RV350; caps->z_compress = caps->is_rv350 ? R300_ZCOMP_8X8 : R300_ZCOMP_4X4; caps->dxtc_swizzle = caps->is_r400 || caps->is_r500; - caps->has_us_format = caps->is_r500; + caps->has_us_format = caps->family == CHIP_FAMILY_R520; } diff --git a/src/gallium/drivers/r300/r300_chipset.h b/src/gallium/drivers/r300/r300_chipset.h index 3777f0cfae3..d0050bed2e8 100644 --- a/src/gallium/drivers/r300/r300_chipset.h +++ b/src/gallium/drivers/r300/r300_chipset.h @@ -90,7 +90,7 @@ struct r300_capabilities { boolean high_second_pipe; /* DXTC texture swizzling. */ boolean dxtc_swizzle; - /* Whether R500_US_FORMAT0_0 is supported (depends on DRM). */ + /* Whether R500_US_FORMAT0_0 exists (R520-only and depends on DRM). */ boolean has_us_format; }; From aac4bae98651c928ce298aecf158b0aa1a7fabce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Fri, 8 Apr 2011 20:42:03 +0200 Subject: [PATCH 205/420] r300g: fix crash when adding a new relocation No idea why it's so hard to reproduce. Broken with: c35572352e3e92683988ee8d151b47f4190d62f9 Thanks to Toni Spets for assistance. --- src/gallium/winsys/radeon/drm/radeon_drm_cs.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_cs.c b/src/gallium/winsys/radeon/drm/radeon_drm_cs.c index 7576f3ac5fd..f23533622df 100644 --- a/src/gallium/winsys/radeon/drm/radeon_drm_cs.c +++ b/src/gallium/winsys/radeon/drm/radeon_drm_cs.c @@ -265,8 +265,9 @@ static void radeon_add_reloc(struct radeon_cs_context *csc, } /* Initialize the new relocation. */ - p_atomic_inc(&bo->num_cs_references); + csc->relocs_bo[csc->crelocs] = NULL; radeon_bo_reference(&csc->relocs_bo[csc->crelocs], bo); + p_atomic_inc(&bo->num_cs_references); reloc = &csc->relocs[csc->crelocs]; reloc->handle = bo->handle; reloc->read_domains = rd; From 758561786c3a34303e6c85dfdb996b94a4eed678 Mon Sep 17 00:00:00 2001 From: Samuel Thibault Date: Mon, 14 Mar 2011 22:08:21 +0000 Subject: [PATCH 206/420] Only require libdrm if direct rendering is actually enabled. Fix build when configured --with-driver=dri --disable-driglx-direct on targets without drm e.g. GNU/Hurd and Cygwin Based on the Debian patch file '05_hurd-ftbfs.diff' by Samuel Thibault. Signed-off-by: Jon TURNEY Reviewed-by: Julien Cristau Reviewed-By: Jakob Bornecrantz --- configure.ac | 29 ++++++++++++++++++----------- 1 file changed, 18 insertions(+), 11 deletions(-) diff --git a/configure.ac b/configure.ac index b5101519e0e..38e673da8a1 100644 --- a/configure.ac +++ b/configure.ac @@ -729,6 +729,14 @@ else enable_xcb=no fi +dnl Direct rendering or just indirect rendering +AC_ARG_ENABLE([driglx-direct], + [AS_HELP_STRING([--disable-driglx-direct], + [enable direct rendering in GLX and EGL for DRI \ + @<:@default=enabled@:>@])], + [driglx_direct="$enableval"], + [driglx_direct="yes"]) + dnl dnl libGL configuration per driver dnl @@ -762,12 +770,17 @@ dri|no) # these checks are still desired when there is no mesa_driver AC_MSG_ERROR([Can't use static libraries for DRI drivers]) fi - # Check for libdrm - PKG_CHECK_MODULES([LIBDRM], [libdrm >= $LIBDRM_REQUIRED]) - PKG_CHECK_MODULES([DRI2PROTO], [dri2proto >= $DRI2PROTO_REQUIRED]) PKG_CHECK_MODULES([GLPROTO], [glproto >= $GLPROTO_REQUIRED]) - GL_PC_REQ_PRIV="libdrm >= $LIBDRM_REQUIRED dri2proto >= $DRI2PROTO_REQUIRED glproto >= $GLPROTO_REQUIRED" - DRI_PC_REQ_PRIV="libdrm >= $LIBDRM_REQUIRED" + GL_PC_REQ_PRIV="glproto >= $GLPROTO_REQUIRED" + DRI_PC_REQ_PRIV="" + + if test x"$driglx_direct" = xyes; then + # Check for libdrm + PKG_CHECK_MODULES([LIBDRM], [libdrm >= $LIBDRM_REQUIRED]) + PKG_CHECK_MODULES([DRI2PROTO], [dri2proto >= $DRI2PROTO_REQUIRED]) + GL_PC_REQ_PRIV="$GL_PC_REQ_PRIV libdrm >= $LIBDRM_REQUIRED dri2proto >= $DRI2PROTO_REQUIRED" + DRI_PC_REQ_PRIV="libdrm >= $LIBDRM_REQUIRED" + fi # find the DRI deps for libGL if test "$x11_pkgconfig" = yes; then @@ -910,12 +923,6 @@ AC_ARG_WITH([dri-searchpath], [DRI_DRIVER_SEARCH_DIR="$withval"], [DRI_DRIVER_SEARCH_DIR='${DRI_DRIVER_INSTALL_DIR}']) AC_SUBST([DRI_DRIVER_SEARCH_DIR]) -dnl Direct rendering or just indirect rendering -AC_ARG_ENABLE([driglx-direct], - [AS_HELP_STRING([--disable-driglx-direct], - [enable direct rendering in GLX and EGL for DRI @<:@default=enabled@:>@])], - [driglx_direct="$enableval"], - [driglx_direct="yes"]) dnl Which drivers to build - default is chosen by platform AC_ARG_WITH([dri-drivers], [AS_HELP_STRING([--with-dri-drivers@<:@=DIRS...@:>@], From e7d18ed1ef8106e2f0eec1078efde6da358e692b Mon Sep 17 00:00:00 2001 From: nobled Date: Mon, 14 Mar 2011 22:08:22 +0000 Subject: [PATCH 207/420] Disable direct rendering on GNU/Hurd The Hurd kernel doesn't have DRM yet. Signed-off-by: Jon TURNEY Reviewed-by: Julien Cristau Reviewed-By: Jakob Bornecrantz --- configure.ac | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/configure.ac b/configure.ac index 38e673da8a1..5bcb5a11a2e 100644 --- a/configure.ac +++ b/configure.ac @@ -730,12 +730,21 @@ else fi dnl Direct rendering or just indirect rendering +case "$host_os" in +gnu*) + dnl Disable by default on GNU/Hurd + driglx_direct_default="no" + ;; +*) + driglx_direct_default="yes" + ;; +esac AC_ARG_ENABLE([driglx-direct], [AS_HELP_STRING([--disable-driglx-direct], [enable direct rendering in GLX and EGL for DRI \ - @<:@default=enabled@:>@])], + @<:@default=auto@:>@])], [driglx_direct="$enableval"], - [driglx_direct="yes"]) + [driglx_direct="$driglx_direct_default"]) dnl dnl libGL configuration per driver From c6e33ca285f9eba26cae2fdd74fb5cc694f1e74b Mon Sep 17 00:00:00 2001 From: Jon TURNEY Date: Mon, 14 Mar 2011 22:08:23 +0000 Subject: [PATCH 208/420] Disable direct rendering on Cygwin Add Cygwin platform-specific settings and drivers to build for dri driver: - by default, disable direct rendering. - if direct rendering is enabled, the swrast dridriver is the only one it's sensible to try to build (this doesn't work at the moment as additional patches are required to build a libGL which can load just swrast without the DRM headers, even though there's no actual functional dependency) Signed-off-by: Jon TURNEY Reviewed-by: Julien Cristau --- configure.ac | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/configure.ac b/configure.ac index 5bcb5a11a2e..5265cf6b1ea 100644 --- a/configure.ac +++ b/configure.ac @@ -735,6 +735,10 @@ gnu*) dnl Disable by default on GNU/Hurd driglx_direct_default="no" ;; +cygwin*) + dnl Disable by default on cygwin + driglx_direct_default="no" + ;; *) driglx_direct_default="yes" ;; @@ -1022,6 +1026,16 @@ if test "$mesa_driver" = dri -o "$mesa_driver" = no; then DEFINES="$DEFINES -DGLX_DIRECT_RENDERING" fi ;; + cygwin*) + DEFINES="$DEFINES -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER" + DEFINES="$DEFINES -DGLX_INDIRECT_RENDERING" + if test "x$driglx_direct" = xyes; then + DEFINES="$DEFINES -DGLX_DIRECT_RENDERING" + fi + if test "x$DRI_DIRS" = "xyes"; then + DRI_DIRS="swrast" + fi + ;; esac # default drivers From 69c71396c6e947cbdf878bacb655d472a11c7708 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Fri, 8 Apr 2011 23:16:17 +0200 Subject: [PATCH 209/420] r300g: fix another crash with hyperz https://bugs.freedesktop.org/show_bug.cgi?id=36086 --- src/gallium/drivers/r300/r300_blit.c | 23 +---------------------- src/gallium/drivers/r300/r300_state.c | 1 + 2 files changed, 2 insertions(+), 22 deletions(-) diff --git a/src/gallium/drivers/r300/r300_blit.c b/src/gallium/drivers/r300/r300_blit.c index 056b52f25dd..ede0a2317d8 100644 --- a/src/gallium/drivers/r300/r300_blit.c +++ b/src/gallium/drivers/r300/r300_blit.c @@ -304,16 +304,10 @@ static void r300_clear_render_target(struct pipe_context *pipe, { struct r300_context *r300 = r300_context(pipe); - r300->hyperz_locked = TRUE; - r300_mark_atom_dirty(r300, &r300->hyperz_state); - r300_blitter_begin(r300, R300_CLEAR_SURFACE); util_blitter_clear_render_target(r300->blitter, dst, rgba, dstx, dsty, width, height); r300_blitter_end(r300); - - r300->hyperz_locked = FALSE; - r300_mark_atom_dirty(r300, &r300->hyperz_state); } /* Clear a region of a depth stencil surface. */ @@ -332,21 +326,14 @@ static void r300_clear_depth_stencil(struct pipe_context *pipe, if (r300->zmask_in_use && !r300->hyperz_locked) { if (fb->zsbuf->texture == dst->texture) { r300_decompress_zmask(r300); - } else { - r300->hyperz_locked = TRUE; - r300_mark_atom_dirty(r300, &r300->hyperz_state); } } + /* XXX Do not decompress ZMask of the currently-set zbuffer. */ r300_blitter_begin(r300, R300_CLEAR_SURFACE); util_blitter_clear_depth_stencil(r300->blitter, dst, clear_flags, depth, stencil, dstx, dsty, width, height); r300_blitter_end(r300); - - if (r300->hyperz_locked) { - r300->hyperz_locked = FALSE; - r300_mark_atom_dirty(r300, &r300->hyperz_state); - } } void r300_decompress_zmask(struct r300_context *r300) @@ -433,9 +420,6 @@ static void r300_resource_copy_region(struct pipe_context *pipe, if (fb->zsbuf->texture == src || fb->zsbuf->texture == dst) { r300_decompress_zmask(r300); - } else { - r300->hyperz_locked = TRUE; - r300_mark_atom_dirty(r300, &r300->hyperz_state); } } @@ -511,11 +495,6 @@ static void r300_resource_copy_region(struct pipe_context *pipe, r300_resource_set_properties(pipe->screen, src, 0, &old_src); if (old_dst.format != new_dst.format) r300_resource_set_properties(pipe->screen, dst, 0, &old_dst); - - if (r300->hyperz_locked) { - r300->hyperz_locked = FALSE; - r300_mark_atom_dirty(r300, &r300->hyperz_state); - } } void r300_init_blit_functions(struct r300_context *r300) diff --git a/src/gallium/drivers/r300/r300_state.c b/src/gallium/drivers/r300/r300_state.c index 61d6751e5d3..c92f871829a 100644 --- a/src/gallium/drivers/r300/r300_state.c +++ b/src/gallium/drivers/r300/r300_state.c @@ -856,6 +856,7 @@ r300_set_framebuffer_state(struct pipe_context* pipe, } } } + assert(state->zsbuf || r300->hyperz_locked || !r300->zmask_in_use); /* Need to reset clamping or colormask. */ r300_mark_atom_dirty(r300, &r300->blend_state); From ee678895e903f3ecbbd95b4584dbfbb127f9d4f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Fri, 8 Apr 2011 23:19:53 +0200 Subject: [PATCH 210/420] Revert "r300g: handle DISCARD_WHOLE_RESOURCE for buffers" This reverts commit 437c748bf5072d2bded77a00c74c51cdb8b510e5. The commit is wrong for several reasons. One of them is when we grab a new buffer, we should update all the states it is bound in, including all parallel contexts. I don't think this is even doable. The correct solution would be upload data via a temporary buffer and do resource_copy_region to the original one. https://bugs.freedesktop.org/show_bug.cgi?id=36088 --- src/gallium/drivers/r300/r300_screen_buffer.c | 35 ++++++------------- 1 file changed, 10 insertions(+), 25 deletions(-) diff --git a/src/gallium/drivers/r300/r300_screen_buffer.c b/src/gallium/drivers/r300/r300_screen_buffer.c index 6c31c39b239..986ae384fbf 100644 --- a/src/gallium/drivers/r300/r300_screen_buffer.c +++ b/src/gallium/drivers/r300/r300_screen_buffer.c @@ -67,20 +67,6 @@ static void r300_buffer_destroy(struct pipe_screen *screen, util_slab_free(&r300screen->pool_buffers, rbuf); } -static boolean r300_setup_new_winsys_buffer(struct r300_winsys_screen *rws, - struct r300_resource *rbuf) -{ - rbuf->buf = rws->buffer_create(rws, - rbuf->b.b.b.width0, 16, - rbuf->b.b.b.bind, rbuf->b.b.b.usage, - rbuf->domain); - if (!rbuf->buf) - return FALSE; - - rbuf->cs_buf = rws->buffer_get_cs_handle(rbuf->buf); - return TRUE; -} - static struct pipe_transfer* r300_buffer_get_transfer(struct pipe_context *context, struct pipe_resource *resource, @@ -128,16 +114,6 @@ r300_buffer_transfer_map( struct pipe_context *pipe, if (rbuf->constant_buffer) return (uint8_t *) rbuf->constant_buffer + transfer->box.x; - /* Discard the whole resource if needed. */ - if (transfer->usage & PIPE_TRANSFER_DISCARD_WHOLE_RESOURCE && - (rws->cs_is_buffer_referenced(r300->cs, rbuf->cs_buf) || - rws->buffer_is_busy(rbuf->buf))) { - r300_winsys_bo_reference(&rbuf->buf, NULL); - - r300_setup_new_winsys_buffer(rws, rbuf); - assert(rbuf->buf); - } - map = rws->buffer_map(rbuf->buf, r300->cs, transfer->usage); if (map == NULL) @@ -203,6 +179,7 @@ struct pipe_resource *r300_buffer_create(struct pipe_screen *screen, { struct r300_screen *r300screen = r300_screen(screen); struct r300_resource *rbuf; + unsigned alignment = 16; rbuf = util_slab_alloc(&r300screen->pool_buffers); @@ -222,11 +199,19 @@ struct pipe_resource *r300_buffer_create(struct pipe_screen *screen, return &rbuf->b.b.b; } - if (!r300_setup_new_winsys_buffer(r300screen->rws, rbuf)) { + rbuf->buf = + r300screen->rws->buffer_create(r300screen->rws, + rbuf->b.b.b.width0, alignment, + rbuf->b.b.b.bind, rbuf->b.b.b.usage, + rbuf->domain); + if (!rbuf->buf) { util_slab_free(&r300screen->pool_buffers, rbuf); return NULL; } + rbuf->cs_buf = + r300screen->rws->buffer_get_cs_handle(rbuf->buf); + return &rbuf->b.b.b; } From 64ce3933f59f71ac78d83b8b3db813b6d2619382 Mon Sep 17 00:00:00 2001 From: Alan Coopersmith Date: Fri, 8 Apr 2011 13:03:16 -0700 Subject: [PATCH 211/420] Fix GET_PROGRAM_NAME() on Solaris to not try to modify a read-only string Signed-off-by: Alan Coopersmith --- src/mesa/drivers/dri/common/xmlconfig.c | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/src/mesa/drivers/dri/common/xmlconfig.c b/src/mesa/drivers/dri/common/xmlconfig.c index 0312c072437..0226b38c4fc 100644 --- a/src/mesa/drivers/dri/common/xmlconfig.c +++ b/src/mesa/drivers/dri/common/xmlconfig.c @@ -64,7 +64,25 @@ extern char *program_invocation_name, *program_invocation_short_name; the basename to match BSD getprogname() */ # include # include -# define GET_PROGRAM_NAME() basename(getexecname()) + +static const char *__getProgramName () { + static const char *progname; + + if (progname == NULL) { + const char *e = getexecname(); + if (e != NULL) { + /* Have to make a copy since getexecname can return a readonly + string, but basename expects to be able to modify its arg. */ + char *n = strdup(e); + if (n != NULL) { + progname = basename(n); + } + } + } + return progname; +} + +# define GET_PROGRAM_NAME() __getProgramName() #endif #if !defined(GET_PROGRAM_NAME) From d27ff8c5cd22ac0279948d3df4b3384eef866cde Mon Sep 17 00:00:00 2001 From: Alan Coopersmith Date: Fri, 8 Apr 2011 16:48:12 -0700 Subject: [PATCH 212/420] Make st_pipe_vertex_format return type in st_draw.h match st_draw.c Fixes compiler error from Sun compilers: "state_tracker/st_draw.c", line 185: identifier redeclared: st_pipe_vertex_format current : function(unsigned int, unsigned int, unsigned int, unsigned char) returning enum pipe_format previous: function(unsigned int, unsigned int, unsigned int, unsigned char) returning unsigned int : "state_tracker/st_draw.h", line 73 Signed-off-by: Alan Coopersmith --- src/mesa/state_tracker/st_draw.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mesa/state_tracker/st_draw.h b/src/mesa/state_tracker/st_draw.h index 5d3c278228f..a7b50ce977a 100644 --- a/src/mesa/state_tracker/st_draw.h +++ b/src/mesa/state_tracker/st_draw.h @@ -69,7 +69,7 @@ st_feedback_draw_vbo(struct gl_context *ctx, /* Internal function: */ -extern GLuint +extern enum pipe_format st_pipe_vertex_format(GLenum type, GLuint size, GLenum format, GLboolean normalized); From ee2a8ea7d9004c052916db79eac644ef51a9ccaa Mon Sep 17 00:00:00 2001 From: Christoph Bumiller Date: Fri, 8 Apr 2011 15:51:48 +0200 Subject: [PATCH 213/420] nv50,nvc0: don't insert instructions after the block terminator --- src/gallium/drivers/nv50/nv50_pc.c | 3 +++ src/gallium/drivers/nv50/nv50_pc_regalloc.c | 4 +++- src/gallium/drivers/nv50/nv50_tgsi_to_nc.c | 12 +++++++++--- src/gallium/drivers/nvc0/nvc0_pc_regalloc.c | 4 +++- src/gallium/drivers/nvc0/nvc0_tgsi_to_nc.c | 9 +++++++-- 5 files changed, 25 insertions(+), 7 deletions(-) diff --git a/src/gallium/drivers/nv50/nv50_pc.c b/src/gallium/drivers/nv50/nv50_pc.c index f6870cc1d8e..4fe13a75b29 100644 --- a/src/gallium/drivers/nv50/nv50_pc.c +++ b/src/gallium/drivers/nv50/nv50_pc.c @@ -625,6 +625,9 @@ nvbb_insert_tail(struct nv_basic_block *b, struct nv_instruction *i) i->bb = b; b->num_instructions++; + + if (i->prev && i->prev->is_terminator) + nv_nvi_permute(i->prev, i); } void diff --git a/src/gallium/drivers/nv50/nv50_pc_regalloc.c b/src/gallium/drivers/nv50/nv50_pc_regalloc.c index df3ac54dce3..e4f418aa7ca 100644 --- a/src/gallium/drivers/nv50/nv50_pc_regalloc.c +++ b/src/gallium/drivers/nv50/nv50_pc_regalloc.c @@ -516,7 +516,9 @@ pass_generate_phi_movs(struct nv_pc_pass *ctx, struct nv_basic_block *b) } if (pn != p && pn->exit) { - ctx->pc->current_block = b->in[n ? 0 : 1]; + assert(!b->in[!n]->exit || b->in[!n]->exit->is_terminator); + /* insert terminator (branch to ENDIF) in new else block */ + ctx->pc->current_block = pn; ni = new_instruction(ctx->pc, NV_OP_BRA); ni->target = b; ni->is_terminator = 1; diff --git a/src/gallium/drivers/nv50/nv50_tgsi_to_nc.c b/src/gallium/drivers/nv50/nv50_tgsi_to_nc.c index 1449cb04c69..f548836a9c4 100644 --- a/src/gallium/drivers/nv50/nv50_tgsi_to_nc.c +++ b/src/gallium/drivers/nv50/nv50_tgsi_to_nc.c @@ -273,6 +273,12 @@ fetch_by_bb(struct bld_value_stack *stack, fetch_by_bb(stack, vals, n, b->in[i]); } +static INLINE boolean +nvbb_is_terminated(struct nv_basic_block *bb) +{ + return bb->exit && bb->exit->is_terminator; +} + static INLINE struct nv_value * bld_load_imm_u32(struct bld_context *bld, uint32_t u); @@ -1727,8 +1733,7 @@ bld_instruction(struct bld_context *bld, { struct nv_basic_block *b = new_basic_block(bld->pc); - if (bld->pc->current_block->exit && - !bld->pc->current_block->exit->is_terminator) + if (!nvbb_is_terminated(bld->pc->current_block)) bld_flow(bld, NV_OP_BRA, NV_CC_TR, NULL, b, FALSE); --bld->cond_lvl; @@ -1800,7 +1805,8 @@ bld_instruction(struct bld_context *bld, { struct nv_basic_block *bb = bld->loop_bb[bld->loop_lvl - 1]; - bld_flow(bld, NV_OP_BRA, NV_CC_TR, NULL, bb, FALSE); + if (!nvbb_is_terminated(bld->pc->current_block)) + bld_flow(bld, NV_OP_BRA, NV_CC_TR, NULL, bb, FALSE); nvbb_attach_block(bld->pc->current_block, bb, CFG_EDGE_BACK); diff --git a/src/gallium/drivers/nvc0/nvc0_pc_regalloc.c b/src/gallium/drivers/nvc0/nvc0_pc_regalloc.c index f4afe083e2d..0515a0d77eb 100644 --- a/src/gallium/drivers/nvc0/nvc0_pc_regalloc.c +++ b/src/gallium/drivers/nvc0/nvc0_pc_regalloc.c @@ -504,7 +504,9 @@ pass_generate_phi_movs(struct nv_pc_pass *ctx, struct nv_basic_block *b) } if (pn != p && pn->exit) { - ctx->pc->current_block = b->in[n ? 0 : 1]; + assert(!b->in[!n]->exit || b->in[!n]->exit->terminator); + /* insert terminator (branch to ENDIF) in new else block */ + ctx->pc->current_block = pn; ni = new_instruction(ctx->pc, NV_OP_BRA); ni->target = b; ni->terminator = 1; diff --git a/src/gallium/drivers/nvc0/nvc0_tgsi_to_nc.c b/src/gallium/drivers/nvc0/nvc0_tgsi_to_nc.c index a44d330c731..53fd7e70fc9 100644 --- a/src/gallium/drivers/nvc0/nvc0_tgsi_to_nc.c +++ b/src/gallium/drivers/nvc0/nvc0_tgsi_to_nc.c @@ -259,6 +259,12 @@ fetch_by_bb(struct bld_register *reg, fetch_by_bb(reg, vals, n, b->in[i]); } +static INLINE boolean +nvc0_bblock_is_terminated(struct nv_basic_block *bb) +{ + return bb->exit && bb->exit->terminator; +} + static INLINE struct nv_value * bld_load_imm_u32(struct bld_context *bld, uint32_t u); @@ -1637,8 +1643,7 @@ bld_instruction(struct bld_context *bld, { struct nv_basic_block *b = new_basic_block(bld->pc); - if (bld->pc->current_block->exit && - !bld->pc->current_block->exit->terminator) + if (!nvc0_bblock_is_terminated(bld->pc->current_block)) bld_flow(bld, NV_OP_BRA, NULL, NV_CC_P, b, FALSE); --bld->cond_lvl; From d546df4d9c090656c506e8a959646a48ed00efc2 Mon Sep 17 00:00:00 2001 From: Christoph Bumiller Date: Sun, 10 Apr 2011 13:55:01 +0200 Subject: [PATCH 214/420] nvc0: force perspective correction hint to nicest Fixes issues in e.g. nexuiz (desertfactory) or supertuxkart that look like lighting bugs. They're not visible with the software rasterizers because their notion of linear interpolation seems to be different from that of nv50/nvc0. --- src/gallium/drivers/nvc0/nvc0_pc_emit.c | 4 ++++ src/gallium/drivers/nvc0/nvc0_program.c | 3 +++ 2 files changed, 7 insertions(+) diff --git a/src/gallium/drivers/nvc0/nvc0_pc_emit.c b/src/gallium/drivers/nvc0/nvc0_pc_emit.c index 76ad40dbcf8..6f409a9e925 100644 --- a/src/gallium/drivers/nvc0/nvc0_pc_emit.c +++ b/src/gallium/drivers/nvc0/nvc0_pc_emit.c @@ -715,6 +715,10 @@ emit_interp(struct nv_pc *pc, struct nv_instruction *i) if (i->opcode == NV_OP_PINTERP) { pc->emit[0] |= 0x040; SID(pc, i->src[1], 26); + + if (i->src[0]->value->reg.address >= 0x280 && + i->src[0]->value->reg.address <= 0x29c) + pc->emit[0] |= 0x080; /* XXX: ? */ } else { SID(pc, NULL, 26); } diff --git a/src/gallium/drivers/nvc0/nvc0_program.c b/src/gallium/drivers/nvc0/nvc0_program.c index 3c59213176e..383bc30f20b 100644 --- a/src/gallium/drivers/nvc0/nvc0_program.c +++ b/src/gallium/drivers/nvc0/nvc0_program.c @@ -224,6 +224,9 @@ nvc0_interp_mode(const struct tgsi_full_declaration *decl) else if (decl->Declaration.Interpolate == TGSI_INTERPOLATE_PERSPECTIVE) mode = NVC0_INTERP_PERSPECTIVE; + else + if (decl->Declaration.Semantic && decl->Semantic.Name == TGSI_SEMANTIC_COLOR) + mode = NVC0_INTERP_PERSPECTIVE; else mode = NVC0_INTERP_LINEAR; From 843d5391c3b7b80ff2087ce7e6440417aab623cc Mon Sep 17 00:00:00 2001 From: Christoph Bumiller Date: Thu, 31 Mar 2011 19:04:17 +0200 Subject: [PATCH 215/420] nv50,nvc0: identify some line rasterization state Fixes width of non-smooth (aliased) lines on nvc0. --- src/gallium/drivers/nv50/nv50_3d.xml.h | 2 +- src/gallium/drivers/nv50/nv50_screen.c | 2 ++ src/gallium/drivers/nv50/nv50_state.c | 1 + src/gallium/drivers/nvc0/nvc0_3d.xml.h | 8 +++++++- src/gallium/drivers/nvc0/nvc0_screen.c | 6 ++++-- src/gallium/drivers/nvc0/nvc0_state.c | 8 ++++++-- 6 files changed, 21 insertions(+), 6 deletions(-) diff --git a/src/gallium/drivers/nv50/nv50_3d.xml.h b/src/gallium/drivers/nv50/nv50_3d.xml.h index 92b97ddb9f4..e3177e0b8bd 100644 --- a/src/gallium/drivers/nv50/nv50_3d.xml.h +++ b/src/gallium/drivers/nv50/nv50_3d.xml.h @@ -1706,7 +1706,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #define NV50_3D_CULL_FACE_BACK 0x00000405 #define NV50_3D_CULL_FACE_FRONT_AND_BACK 0x00000408 -#define NV50_3D_UNK1924 0x00001924 +#define NV50_3D_LINE_LAST_PIXEL 0x00001924 #define NVA3_3D_FP_MULTISAMPLE 0x00001928 #define NVA3_3D_FP_MULTISAMPLE_EXPORT_SAMPLE_MASK 0x00000001 diff --git a/src/gallium/drivers/nv50/nv50_screen.c b/src/gallium/drivers/nv50/nv50_screen.c index cfa49aa0394..439202dfe97 100644 --- a/src/gallium/drivers/nv50/nv50_screen.c +++ b/src/gallium/drivers/nv50/nv50_screen.c @@ -420,6 +420,8 @@ nv50_screen_create(struct pipe_winsys *ws, struct nouveau_device *dev) OUT_RING (chan, NV50_3D_MULTISAMPLE_MODE_MS1); BEGIN_RING(chan, RING_3D(MULTISAMPLE_CTRL), 1); OUT_RING (chan, 0); + BEGIN_RING(chan, RING_3D(LINE_LAST_PIXEL), 1); + OUT_RING (chan, 0); BEGIN_RING(chan, RING_3D(SCREEN_Y_CONTROL), 1); OUT_RING (chan, 0); diff --git a/src/gallium/drivers/nv50/nv50_state.c b/src/gallium/drivers/nv50/nv50_state.c index 4c96db84e43..030cdcb89d3 100644 --- a/src/gallium/drivers/nv50/nv50_state.c +++ b/src/gallium/drivers/nv50/nv50_state.c @@ -174,6 +174,7 @@ nv50_blend_state_delete(struct pipe_context *pipe, void *hwcso) FREE(hwcso); } +/* NOTE: ignoring line_last_pixel, using FALSE (set on screen init) */ static void * nv50_rasterizer_state_create(struct pipe_context *pipe, const struct pipe_rasterizer_state *cso) diff --git a/src/gallium/drivers/nvc0/nvc0_3d.xml.h b/src/gallium/drivers/nvc0/nvc0_3d.xml.h index 94fa081ad7e..9a64e3ff6af 100644 --- a/src/gallium/drivers/nvc0/nvc0_3d.xml.h +++ b/src/gallium/drivers/nvc0/nvc0_3d.xml.h @@ -82,6 +82,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #define NVC0_3D_SERIALIZE 0x00000110 +#define NVC0_3D_LINE_WIDTH_SEPARATE 0x0000020c + #define NVC0_3D_EARLY_FRAGMENT_TESTS 0x00000210 #define NVC0_3D_MEM_BARRIER 0x0000021c @@ -651,7 +653,9 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #define NVC0_3D_SCREEN_Y_CONTROL_Y_NEGATE 0x00000001 #define NVC0_3D_SCREEN_Y_CONTROL_TRIANGLE_RAST_FLIP 0x00000010 -#define NVC0_3D_LINE_WIDTH 0x000013b0 +#define NVC0_3D_LINE_WIDTH_SMOOTH 0x000013b0 + +#define NVC0_3D_LINE_WIDTH_ALIASED 0x000013b4 #define NVC0_3D_GP_VERTEX_OUTPUT_COUNT 0x00001420 #define NVC0_3D_GP_VERTEX_OUTPUT_COUNT__MIN 0x00000001 @@ -977,6 +981,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #define NVC0_3D_CULL_FACE_BACK 0x00000405 #define NVC0_3D_CULL_FACE_FRONT_AND_BACK 0x00000408 +#define NVC0_3D_LINE_LAST_PIXEL 0x00001924 + #define NVC0_3D_VIEWPORT_TRANSFORM_EN 0x0000192c #define NVC0_3D_VIEW_VOLUME_CLIP_CTRL 0x0000193c diff --git a/src/gallium/drivers/nvc0/nvc0_screen.c b/src/gallium/drivers/nvc0/nvc0_screen.c index e98a4c0fd42..17f42e6fc6c 100644 --- a/src/gallium/drivers/nvc0/nvc0_screen.c +++ b/src/gallium/drivers/nvc0/nvc0_screen.c @@ -294,8 +294,6 @@ nvc0_magic_3d_init(struct nouveau_channel *chan) OUT_RING (chan, 1 << 12); BEGIN_RING(chan, RING_3D_(0x151c), 1); OUT_RING (chan, 1); - BEGIN_RING(chan, RING_3D_(0x020c), 1); - OUT_RING (chan, 1); BEGIN_RING(chan, RING_3D_(0x030c), 1); OUT_RING (chan, 0); BEGIN_RING(chan, RING_3D_(0x0300), 1); @@ -448,6 +446,10 @@ nvc0_screen_create(struct pipe_winsys *ws, struct nouveau_device *dev) OUT_RING (chan, NVC0_3D_MULTISAMPLE_MODE_1X); BEGIN_RING(chan, RING_3D(MULTISAMPLE_CTRL), 1); OUT_RING (chan, 0); + BEGIN_RING(chan, RING_3D(LINE_WIDTH_SEPARATE), 1); + OUT_RING (chan, 1); + BEGIN_RING(chan, RING_3D(LINE_LAST_PIXEL), 1); + OUT_RING (chan, 0); nvc0_magic_3d_init(chan); diff --git a/src/gallium/drivers/nvc0/nvc0_state.c b/src/gallium/drivers/nvc0/nvc0_state.c index c482b25f6b6..db3b78f10b8 100644 --- a/src/gallium/drivers/nvc0/nvc0_state.c +++ b/src/gallium/drivers/nvc0/nvc0_state.c @@ -161,6 +161,7 @@ nvc0_blend_state_delete(struct pipe_context *pipe, void *hwcso) FREE(hwcso); } +/* NOTE: ignoring line_last_pixel, using FALSE (set on screen init) */ static void * nvc0_rasterizer_state_create(struct pipe_context *pipe, const struct pipe_rasterizer_state *cso) @@ -187,9 +188,12 @@ nvc0_rasterizer_state_create(struct pipe_context *pipe, SB_BEGIN_3D(so, FRAG_COLOR_CLAMP_EN, 1); SB_DATA (so, cso->clamp_fragment_color ? 0x11111111 : 0x00000000); - SB_BEGIN_3D(so, LINE_WIDTH, 1); - SB_DATA (so, fui(cso->line_width)); SB_IMMED_3D(so, LINE_SMOOTH_ENABLE, cso->line_smooth); + if (cso->line_smooth) + SB_BEGIN_3D(so, LINE_WIDTH_SMOOTH, 1); + else + SB_BEGIN_3D(so, LINE_WIDTH_ALIASED, 1); + SB_DATA (so, fui(cso->line_width)); SB_BEGIN_3D(so, LINE_STIPPLE_ENABLE, 1); if (cso->line_stipple_enable) { From d9ef97696770c8a6b04e4adf9a813614f9b3c741 Mon Sep 17 00:00:00 2001 From: Christoph Bumiller Date: Fri, 8 Apr 2011 15:32:18 +0200 Subject: [PATCH 216/420] nvc0: shrink CSOs a little --- src/gallium/drivers/nv50/nv50_state.c | 6 ++-- src/gallium/drivers/nvc0/nvc0_state.c | 35 +++++++++---------- .../drivers/nvc0/nvc0_state_validate.c | 7 ++-- src/gallium/drivers/nvc0/nvc0_stateobj.h | 6 ++-- 4 files changed, 25 insertions(+), 29 deletions(-) diff --git a/src/gallium/drivers/nv50/nv50_state.c b/src/gallium/drivers/nv50/nv50_state.c index 030cdcb89d3..ef5a1842b11 100644 --- a/src/gallium/drivers/nv50/nv50_state.c +++ b/src/gallium/drivers/nv50/nv50_state.c @@ -155,7 +155,7 @@ nv50_blend_state_create(struct pipe_context *pipe, SB_DATA(so, cmask); } - assert(so->size < (sizeof(so->state) / sizeof(so->state[0]))); + assert(so->size <= (sizeof(so->state) / sizeof(so->state[0]))); return so; } @@ -262,7 +262,7 @@ nv50_rasterizer_state_create(struct pipe_context *pipe, SB_DATA (so, fui(cso->offset_units * 2.0f)); } - assert(so->size < (sizeof(so->state) / sizeof(so->state[0]))); + assert(so->size <= (sizeof(so->state) / sizeof(so->state[0]))); return (void *)so; } @@ -341,7 +341,7 @@ nv50_zsa_state_create(struct pipe_context *pipe, SB_DATA (so, 0); } - assert(so->size < (sizeof(so->state) / sizeof(so->state[0]))); + assert(so->size <= (sizeof(so->state) / sizeof(so->state[0]))); return (void *)so; } diff --git a/src/gallium/drivers/nvc0/nvc0_state.c b/src/gallium/drivers/nvc0/nvc0_state.c index db3b78f10b8..85a4d991687 100644 --- a/src/gallium/drivers/nvc0/nvc0_state.c +++ b/src/gallium/drivers/nvc0/nvc0_state.c @@ -93,9 +93,18 @@ nvc0_blend_state_create(struct pipe_context *pipe, SB_IMMED_3D(so, BLEND_INDEPENDENT, cso->independent_blend_enable); + if (!cso->logicop_enable) + SB_IMMED_3D(so, LOGIC_OP_ENABLE, 0); + + if (cso->logicop_enable) { + SB_BEGIN_3D(so, LOGIC_OP_ENABLE, 2); + SB_DATA (so, 1); + SB_DATA (so, nvgl_logicop_func(cso->logicop_func)); + + SB_IMMED_3D(so, BLEND_ENABLES, 0); + } else if (!cso->independent_blend_enable) { - SB_BEGIN_3D(so, BLEND_ENABLES, 1); - SB_DATA (so, cso->rt[0].blend_enable ? 0xff : 0); + SB_IMMED_3D(so, BLEND_ENABLES, cso->rt[0].blend_enable ? 0xff : 0); if (cso->rt[0].blend_enable) { SB_BEGIN_3D(so, BLEND_EQUATION_RGB, 5); @@ -126,23 +135,14 @@ nvc0_blend_state_create(struct pipe_context *pipe, SB_DATA (so, nvc0_blend_fac(cso->rt[i].alpha_src_factor)); SB_DATA (so, nvc0_blend_fac(cso->rt[i].alpha_dst_factor)); } - SB_BEGIN_3D(so, BLEND_ENABLES, 1); - SB_DATA (so, en); + SB_IMMED_3D(so, BLEND_ENABLES, en); SB_BEGIN_3D(so, COLOR_MASK(0), 8); for (i = 0; i < 8; ++i) SB_DATA(so, nvc0_colormask(cso->rt[i].colormask)); } - if (cso->logicop_enable) { - SB_BEGIN_3D(so, LOGIC_OP_ENABLE, 2); - SB_DATA (so, 1); - SB_DATA (so, nvgl_logicop_func(cso->logicop_func)); - } else { - SB_IMMED_3D(so, LOGIC_OP_ENABLE, 0); - } - - assert(so->size < (sizeof(so->state) / sizeof(so->state[0]))); + assert(so->size <= (sizeof(so->state) / sizeof(so->state[0]))); return so; } @@ -195,15 +195,12 @@ nvc0_rasterizer_state_create(struct pipe_context *pipe, SB_BEGIN_3D(so, LINE_WIDTH_ALIASED, 1); SB_DATA (so, fui(cso->line_width)); - SB_BEGIN_3D(so, LINE_STIPPLE_ENABLE, 1); + SB_IMMED_3D(so, LINE_STIPPLE_ENABLE, cso->line_stipple_enable); if (cso->line_stipple_enable) { - SB_DATA (so, 1); SB_BEGIN_3D(so, LINE_STIPPLE_PATTERN, 1); SB_DATA (so, (cso->line_stipple_pattern << 8) | cso->line_stipple_factor); - } else { - SB_DATA (so, 0); } SB_IMMED_3D(so, VP_POINT_SIZE_EN, cso->point_size_per_vertex); @@ -257,7 +254,7 @@ nvc0_rasterizer_state_create(struct pipe_context *pipe, SB_DATA (so, fui(cso->offset_units * 2.0f)); } - assert(so->size < (sizeof(so->state) / sizeof(so->state[0]))); + assert(so->size <= (sizeof(so->state) / sizeof(so->state[0]))); return (void *)so; } @@ -328,7 +325,7 @@ nvc0_zsa_state_create(struct pipe_context *pipe, SB_DATA (so, nvgl_comparison_op(cso->alpha.func)); } - assert(so->size < (sizeof(so->state) / sizeof(so->state[0]))); + assert(so->size <= (sizeof(so->state) / sizeof(so->state[0]))); return (void *)so; } diff --git a/src/gallium/drivers/nvc0/nvc0_state_validate.c b/src/gallium/drivers/nvc0/nvc0_state_validate.c index bb81480bab9..23a552622e1 100644 --- a/src/gallium/drivers/nvc0/nvc0_state_validate.c +++ b/src/gallium/drivers/nvc0/nvc0_state_validate.c @@ -156,11 +156,10 @@ static void nvc0_validate_stencil_ref(struct nvc0_context *nvc0) { struct nouveau_channel *chan = nvc0->screen->base.channel; + const ubyte *ref = &nvc0->stencil_ref.ref_value[0]; - BEGIN_RING(chan, RING_3D(STENCIL_FRONT_FUNC_REF), 1); - OUT_RING (chan, nvc0->stencil_ref.ref_value[0]); - BEGIN_RING(chan, RING_3D(STENCIL_BACK_FUNC_REF), 1); - OUT_RING (chan, nvc0->stencil_ref.ref_value[1]); + IMMED_RING(chan, RING_3D(STENCIL_FRONT_FUNC_REF), ref[0]); + IMMED_RING(chan, RING_3D(STENCIL_BACK_FUNC_REF), ref[1]); } static void diff --git a/src/gallium/drivers/nvc0/nvc0_stateobj.h b/src/gallium/drivers/nvc0/nvc0_stateobj.h index cc6b04d3578..b300ec9097c 100644 --- a/src/gallium/drivers/nvc0/nvc0_stateobj.h +++ b/src/gallium/drivers/nvc0/nvc0_stateobj.h @@ -19,19 +19,19 @@ struct nvc0_blend_stateobj { struct pipe_blend_state pipe; int size; - uint32_t state[72]; + uint32_t state[69]; }; struct nvc0_rasterizer_stateobj { struct pipe_rasterizer_state pipe; int size; - uint32_t state[39]; + uint32_t state[38]; }; struct nvc0_zsa_stateobj { struct pipe_depth_stencil_alpha_state pipe; int size; - uint32_t state[29]; + uint32_t state[26]; }; struct nvc0_vertex_element { From 7b4e478496cf45f527f72c39d72efe2e94fe2386 Mon Sep 17 00:00:00 2001 From: Christoph Bumiller Date: Sat, 9 Apr 2011 18:25:29 +0200 Subject: [PATCH 217/420] nv50-nvc0: make use of COLOR_MASK,BLEND_ENABLE_COMMON --- src/gallium/drivers/nv50/nv50_3d.xml.h | 6 +++--- src/gallium/drivers/nv50/nv50_screen.c | 2 ++ src/gallium/drivers/nv50/nv50_state.c | 19 ++++++++++++------- src/gallium/drivers/nv50/nv50_stateobj.h | 2 +- src/gallium/drivers/nvc0/nvc0_3d.xml.h | 8 ++++++-- src/gallium/drivers/nvc0/nvc0_graph_macros.h | 13 ------------- src/gallium/drivers/nvc0/nvc0_screen.c | 7 ++++--- src/gallium/drivers/nvc0/nvc0_state.c | 4 +++- src/gallium/drivers/nvc0/nvc0_stateobj.h | 2 +- 9 files changed, 32 insertions(+), 31 deletions(-) diff --git a/src/gallium/drivers/nv50/nv50_3d.xml.h b/src/gallium/drivers/nv50/nv50_3d.xml.h index e3177e0b8bd..41a380ec2ec 100644 --- a/src/gallium/drivers/nv50/nv50_3d.xml.h +++ b/src/gallium/drivers/nv50/nv50_3d.xml.h @@ -558,7 +558,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #define NV50_3D_UNK0F8C 0x00000f8c -#define NV50_3D_UNK0F90 0x00000f90 +#define NV50_3D_COLOR_MASK_COMMON 0x00000f90 #define NV50_3D_UNK0F94 0x00000f94 @@ -1007,7 +1007,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #define NV50_3D_TEX_CACHE_CTL_UNK1__MASK 0x00000030 #define NV50_3D_TEX_CACHE_CTL_UNK1__SHIFT 4 -#define NV50_3D_UNK133C 0x0000133c +#define NV50_3D_BLEND_SEPARATE_ALPHA 0x0000133c #define NV50_3D_BLEND_EQUATION_RGB 0x00001340 #define NV50_3D_BLEND_EQUATION_RGB_FUNC_ADD 0x00008006 @@ -1033,7 +1033,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #define NV50_3D_BLEND_FUNC_DST_ALPHA 0x00001358 -#define NV50_3D_UNK135C 0x0000135c +#define NV50_3D_BLEND_ENABLE_COMMON 0x0000135c #define NV50_3D_BLEND_ENABLE(i0) (0x00001360 + 0x4*(i0)) #define NV50_3D_BLEND_ENABLE__ESIZE 0x00000004 diff --git a/src/gallium/drivers/nv50/nv50_screen.c b/src/gallium/drivers/nv50/nv50_screen.c index 439202dfe97..46622b4be76 100644 --- a/src/gallium/drivers/nv50/nv50_screen.c +++ b/src/gallium/drivers/nv50/nv50_screen.c @@ -422,6 +422,8 @@ nv50_screen_create(struct pipe_winsys *ws, struct nouveau_device *dev) OUT_RING (chan, 0); BEGIN_RING(chan, RING_3D(LINE_LAST_PIXEL), 1); OUT_RING (chan, 0); + BEGIN_RING(chan, RING_3D(BLEND_SEPARATE_ALPHA), 1); + OUT_RING (chan, 1); BEGIN_RING(chan, RING_3D(SCREEN_Y_CONTROL), 1); OUT_RING (chan, 0); diff --git a/src/gallium/drivers/nv50/nv50_state.c b/src/gallium/drivers/nv50/nv50_state.c index ef5a1842b11..799f49619d2 100644 --- a/src/gallium/drivers/nv50/nv50_state.c +++ b/src/gallium/drivers/nv50/nv50_state.c @@ -97,8 +97,14 @@ nv50_blend_state_create(struct pipe_context *pipe, so->pipe = *cso; - SB_BEGIN_3D(so, BLEND_ENABLE(0), 8); + SB_BEGIN_3D(so, COLOR_MASK_COMMON, 1); + SB_DATA (so, !cso->independent_blend_enable); + + SB_BEGIN_3D(so, BLEND_ENABLE_COMMON, 1); + SB_DATA (so, !cso->independent_blend_enable); + if (cso->independent_blend_enable) { + SB_BEGIN_3D(so, BLEND_ENABLE(0), 8); for (i = 0; i < 8; ++i) { SB_DATA(so, cso->rt[i].blend_enable); if (cso->rt[i].blend_enable) @@ -121,8 +127,8 @@ nv50_blend_state_create(struct pipe_context *pipe, } } } else { - for (i = 0; i < 8; ++i) - SB_DATA(so, cso->rt[0].blend_enable); + SB_BEGIN_3D(so, BLEND_ENABLE(0), 1); + SB_DATA (so, cso->rt[0].blend_enable); } if (emit_common_func) { @@ -145,14 +151,13 @@ nv50_blend_state_create(struct pipe_context *pipe, SB_DATA (so, 0); } - SB_BEGIN_3D(so, COLOR_MASK(0), 8); if (cso->independent_blend_enable) { + SB_BEGIN_3D(so, COLOR_MASK(0), 8); for (i = 0; i < 8; ++i) SB_DATA(so, nv50_colormask(cso->rt[i].colormask)); } else { - uint32_t cmask = nv50_colormask(cso->rt[0].colormask); - for (i = 0; i < 8; ++i) - SB_DATA(so, cmask); + SB_BEGIN_3D(so, COLOR_MASK(0), 1); + SB_DATA (so, nv50_colormask(cso->rt[0].colormask)); } assert(so->size <= (sizeof(so->state) / sizeof(so->state[0]))); diff --git a/src/gallium/drivers/nv50/nv50_stateobj.h b/src/gallium/drivers/nv50/nv50_stateobj.h index cd55ad83f84..4c98c7e46fc 100644 --- a/src/gallium/drivers/nv50/nv50_stateobj.h +++ b/src/gallium/drivers/nv50/nv50_stateobj.h @@ -21,7 +21,7 @@ struct nv50_blend_stateobj { struct pipe_blend_state pipe; int size; - uint32_t state[78]; + uint32_t state[82]; // TODO: allocate less if !independent_blend_enable }; struct nv50_rasterizer_stateobj { diff --git a/src/gallium/drivers/nvc0/nvc0_3d.xml.h b/src/gallium/drivers/nvc0/nvc0_3d.xml.h index 9a64e3ff6af..63efc74d4a9 100644 --- a/src/gallium/drivers/nvc0/nvc0_3d.xml.h +++ b/src/gallium/drivers/nvc0/nvc0_3d.xml.h @@ -344,6 +344,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #define NVC0_3D_VERTEX_RUNOUT_ADDRESS_LOW 0x00000f88 +#define NVC0_3D_COLOR_MASK_COMMON 0x00000f90 + #define NVC0_3D_DEPTH_BOUNDS(i0) (0x00000f9c + 0x4*(i0)) #define NVC0_3D_DEPTH_BOUNDS__ESIZE 0x00000004 #define NVC0_3D_DEPTH_BOUNDS__LEN 0x00000002 @@ -563,6 +565,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #define NVC0_3D_TEX_CACHE_CTL_UNK1__MASK 0x00000030 #define NVC0_3D_TEX_CACHE_CTL_UNK1__SHIFT 4 +#define NVC0_3D_BLEND_SEPARATE_ALPHA 0x0000133c + #define NVC0_3D_BLEND_EQUATION_RGB 0x00001340 #define NVC0_3D_BLEND_EQUATION_RGB_FUNC_ADD 0x00008006 #define NVC0_3D_BLEND_EQUATION_RGB_MIN 0x00008007 @@ -585,6 +589,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #define NVC0_3D_BLEND_FUNC_DST_ALPHA 0x00001358 +#define NVC0_3D_BLEND_ENABLE_COMMON 0x0000135c + #define NVC0_3D_BLEND_ENABLE(i0) (0x00001360 + 0x4*(i0)) #define NVC0_3D_BLEND_ENABLE__ESIZE 0x00000004 #define NVC0_3D_BLEND_ENABLE__LEN 0x00000008 @@ -1226,8 +1232,6 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #define NVC0_3D_TFB_VARYING_LOCS__ESIZE 0x00000004 #define NVC0_3D_TFB_VARYING_LOCS__LEN 0x00000020 -#define NVC0_3D_COLOR_MASK_BROADCAST 0x00003808 - #define NVC0_3D_VERTEX_ARRAY_SELECT 0x00003820 #define NVC0_3D_BLEND_ENABLES 0x00003858 diff --git a/src/gallium/drivers/nvc0/nvc0_graph_macros.h b/src/gallium/drivers/nvc0/nvc0_graph_macros.h index b7d0d3eafa4..a0a875fe627 100644 --- a/src/gallium/drivers/nvc0/nvc0_graph_macros.h +++ b/src/gallium/drivers/nvc0/nvc0_graph_macros.h @@ -68,19 +68,6 @@ static const uint32_t nvc0_9097_vertex_array_select[] = 0x00001841, /* 0x0b: send $r3 */ }; -static const uint32_t nvc0_9097_color_mask_brdc[] = -{ - 0x05a00021, /* maddr [NVC0_3D_COLOR_MASK(0), increment = 4] */ - 0x00000841, /* send $r1 */ - 0x00000841, /* send $r1 */ - 0x00000841, /* send $r1 */ - 0x00000841, /* send $r1 */ - 0x00000841, /* send $r1 */ - 0x00000841, /* send $r1 */ - 0x000008c1, /* exit send $r1 */ - 0x00000841, /* send $r1 */ -}; - /* * [GL_POLYGON_MODE_FRONT] = arg; * diff --git a/src/gallium/drivers/nvc0/nvc0_screen.c b/src/gallium/drivers/nvc0/nvc0_screen.c index 17f42e6fc6c..7f01a5eea32 100644 --- a/src/gallium/drivers/nvc0/nvc0_screen.c +++ b/src/gallium/drivers/nvc0/nvc0_screen.c @@ -313,8 +313,6 @@ nvc0_magic_3d_init(struct nouveau_channel *chan) BEGIN_RING(chan, RING_3D_(0x0fac), 1); OUT_RING (chan, 0); - BEGIN_RING(chan, RING_3D_(0x0f90), 1); - OUT_RING (chan, 0); } static void @@ -450,6 +448,10 @@ nvc0_screen_create(struct pipe_winsys *ws, struct nouveau_device *dev) OUT_RING (chan, 1); BEGIN_RING(chan, RING_3D(LINE_LAST_PIXEL), 1); OUT_RING (chan, 0); + BEGIN_RING(chan, RING_3D(BLEND_SEPARATE_ALPHA), 1); + OUT_RING (chan, 1); + BEGIN_RING(chan, RING_3D(BLEND_ENABLE_COMMON), 1); + OUT_RING (chan, 0); nvc0_magic_3d_init(chan); @@ -582,7 +584,6 @@ nvc0_screen_create(struct pipe_winsys *ws, struct nouveau_device *dev) MK_MACRO(NVC0_3D_GP_SELECT, nvc0_9097_gp_select); MK_MACRO(NVC0_3D_POLYGON_MODE_FRONT, nvc0_9097_poly_mode_front); MK_MACRO(NVC0_3D_POLYGON_MODE_BACK, nvc0_9097_poly_mode_back); - MK_MACRO(NVC0_3D_COLOR_MASK_BROADCAST, nvc0_9097_color_mask_brdc); BEGIN_RING(chan, RING_3D(RASTERIZE_ENABLE), 1); OUT_RING (chan, 1); diff --git a/src/gallium/drivers/nvc0/nvc0_state.c b/src/gallium/drivers/nvc0/nvc0_state.c index 85a4d991687..b0b2065167e 100644 --- a/src/gallium/drivers/nvc0/nvc0_state.c +++ b/src/gallium/drivers/nvc0/nvc0_state.c @@ -117,7 +117,8 @@ nvc0_blend_state_create(struct pipe_context *pipe, SB_DATA (so, nvc0_blend_fac(cso->rt[0].alpha_dst_factor)); } - SB_BEGIN_3D(so, COLOR_MASK_BROADCAST, 1); + SB_IMMED_3D(so, COLOR_MASK_COMMON, 1); + SB_BEGIN_3D(so, COLOR_MASK(0), 1); SB_DATA (so, nvc0_colormask(cso->rt[0].colormask)); } else { uint8_t en = 0; @@ -137,6 +138,7 @@ nvc0_blend_state_create(struct pipe_context *pipe, } SB_IMMED_3D(so, BLEND_ENABLES, en); + SB_IMMED_3D(so, COLOR_MASK_COMMON, 0); SB_BEGIN_3D(so, COLOR_MASK(0), 8); for (i = 0; i < 8; ++i) SB_DATA(so, nvc0_colormask(cso->rt[i].colormask)); diff --git a/src/gallium/drivers/nvc0/nvc0_stateobj.h b/src/gallium/drivers/nvc0/nvc0_stateobj.h index b300ec9097c..e0fe9df25d7 100644 --- a/src/gallium/drivers/nvc0/nvc0_stateobj.h +++ b/src/gallium/drivers/nvc0/nvc0_stateobj.h @@ -19,7 +19,7 @@ struct nvc0_blend_stateobj { struct pipe_blend_state pipe; int size; - uint32_t state[69]; + uint32_t state[70]; }; struct nvc0_rasterizer_stateobj { From 003224bd970e9cb63b0d3d12e1a8f2f3b3a736e6 Mon Sep 17 00:00:00 2001 From: Christoph Bumiller Date: Sun, 10 Apr 2011 13:57:34 +0200 Subject: [PATCH 218/420] nvc0: make the card permit separate colour outputs --- src/gallium/drivers/nvc0/nvc0_3d.xml.h | 2 ++ src/gallium/drivers/nvc0/nvc0_screen.c | 16 ++-------------- 2 files changed, 4 insertions(+), 14 deletions(-) diff --git a/src/gallium/drivers/nvc0/nvc0_3d.xml.h b/src/gallium/drivers/nvc0/nvc0_3d.xml.h index 63efc74d4a9..2ca0bc23836 100644 --- a/src/gallium/drivers/nvc0/nvc0_3d.xml.h +++ b/src/gallium/drivers/nvc0/nvc0_3d.xml.h @@ -350,6 +350,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #define NVC0_3D_DEPTH_BOUNDS__ESIZE 0x00000004 #define NVC0_3D_DEPTH_BOUNDS__LEN 0x00000002 +#define NVC0_3D_RT_SEPARATE_FRAG_DATA 0x00000fac + #define NVC0_3D_MSAA_MASK(i0) (0x00000fbc + 0x4*(i0)) #define NVC0_3D_MSAA_MASK__ESIZE 0x00000004 #define NVC0_3D_MSAA_MASK__LEN 0x00000004 diff --git a/src/gallium/drivers/nvc0/nvc0_screen.c b/src/gallium/drivers/nvc0/nvc0_screen.c index 7f01a5eea32..31133f0cc6c 100644 --- a/src/gallium/drivers/nvc0/nvc0_screen.c +++ b/src/gallium/drivers/nvc0/nvc0_screen.c @@ -310,9 +310,6 @@ nvc0_magic_3d_init(struct nouveau_channel *chan) OUT_RING (chan, 1); BEGIN_RING(chan, RING_3D_(0x075c), 1); OUT_RING (chan, 3); - - BEGIN_RING(chan, RING_3D_(0x0fac), 1); - OUT_RING (chan, 0); } static void @@ -564,17 +561,6 @@ nvc0_screen_create(struct pipe_winsys *ws, struct nouveau_device *dev) OUT_RING (chan, 8192 << 16); OUT_RING (chan, 8192 << 16); - BEGIN_RING(chan, RING_3D_(0x0fac), 1); - OUT_RING (chan, 0); - BEGIN_RING(chan, RING_3D_(0x3484), 1); - OUT_RING (chan, 0); - BEGIN_RING(chan, RING_3D_(0x0dbc), 1); - OUT_RING (chan, 0x00010000); - BEGIN_RING(chan, RING_3D_(0x0dd8), 1); - OUT_RING (chan, 0xff800006); - BEGIN_RING(chan, RING_3D_(0x3488), 1); - OUT_RING (chan, 0); - #define MK_MACRO(m, n) i = nvc0_graph_set_macro(screen, m, i, sizeof(n), n); i = 0; @@ -587,6 +573,8 @@ nvc0_screen_create(struct pipe_winsys *ws, struct nouveau_device *dev) BEGIN_RING(chan, RING_3D(RASTERIZE_ENABLE), 1); OUT_RING (chan, 1); + BEGIN_RING(chan, RING_3D(RT_SEPARATE_FRAG_DATA), 1); + OUT_RING (chan, 1); BEGIN_RING(chan, RING_3D(GP_SELECT), 1); OUT_RING (chan, 0x40); BEGIN_RING(chan, RING_3D(LAYER), 1); From 74559abbef5e5bcd3dbe1b8bbb8a39391a8a8671 Mon Sep 17 00:00:00 2001 From: Christoph Bumiller Date: Sun, 10 Apr 2011 13:59:26 +0200 Subject: [PATCH 219/420] nv50,nvc0: silence shader debug output --- src/gallium/drivers/nv50/nv50_context.h | 11 +-------- src/gallium/drivers/nv50/nv50_debug.h | 25 +++++++++++++++++++++ src/gallium/drivers/nv50/nv50_pc.c | 20 ++++++++--------- src/gallium/drivers/nv50/nv50_pc.h | 8 +------ src/gallium/drivers/nv50/nv50_pc_optimize.c | 13 +++++------ src/gallium/drivers/nv50/nv50_pc_regalloc.c | 14 ++++++------ src/gallium/drivers/nv50/nv50_program.c | 4 +--- src/gallium/drivers/nv50/nv50_tgsi_to_nc.c | 6 ++--- src/gallium/drivers/nvc0/nvc0_context.h | 11 +-------- src/gallium/drivers/nvc0/nvc0_pc.c | 23 +++++++++---------- src/gallium/drivers/nvc0/nvc0_pc.h | 15 +------------ src/gallium/drivers/nvc0/nvc0_pc_emit.c | 2 ++ src/gallium/drivers/nvc0/nvc0_pc_optimize.c | 6 ++--- src/gallium/drivers/nvc0/nvc0_pc_regalloc.c | 14 ++++++------ src/gallium/drivers/nvc0/nvc0_program.c | 16 ++++++------- src/gallium/drivers/nvc0/nvc0_tgsi_to_nc.c | 6 ++--- 16 files changed, 85 insertions(+), 109 deletions(-) create mode 100644 src/gallium/drivers/nv50/nv50_debug.h diff --git a/src/gallium/drivers/nv50/nv50_context.h b/src/gallium/drivers/nv50/nv50_context.h index f480f043096..3f031994f0a 100644 --- a/src/gallium/drivers/nv50/nv50_context.h +++ b/src/gallium/drivers/nv50/nv50_context.h @@ -1,7 +1,6 @@ #ifndef __NV50_CONTEXT_H__ #define __NV50_CONTEXT_H__ -#include #include "pipe/p_context.h" #include "pipe/p_defines.h" #include "pipe/p_state.h" @@ -13,6 +12,7 @@ #include "draw/draw_vertex.h" +#include "nv50_debug.h" #include "nv50_winsys.h" #include "nv50_stateobj.h" #include "nv50_screen.h" @@ -26,15 +26,6 @@ #include "nv50_3d.xml.h" #include "nv50_2d.xml.h" -#define NOUVEAU_ERR(fmt, args...) \ - fprintf(stderr, "%s:%d - "fmt, __FUNCTION__, __LINE__, ##args); - -#ifdef NOUVEAU_DEBUG -# define NOUVEAU_DBG(args...) printf(args); -#else -# define NOUVEAU_DBG(args...) -#endif - #define NV50_NEW_BLEND (1 << 0) #define NV50_NEW_RASTERIZER (1 << 1) #define NV50_NEW_ZSA (1 << 2) diff --git a/src/gallium/drivers/nv50/nv50_debug.h b/src/gallium/drivers/nv50/nv50_debug.h new file mode 100644 index 00000000000..f3dee621519 --- /dev/null +++ b/src/gallium/drivers/nv50/nv50_debug.h @@ -0,0 +1,25 @@ + +#ifndef __NV50_DEBUG_H__ +#define __NV50_DEBUG_H__ + +#include + +#include "util/u_debug.h" + +#define NV50_DEBUG_MISC 0x0001 +#define NV50_DEBUG_SHADER 0x0100 +#define NV50_DEBUG_PROG_IR 0x0200 +#define NV50_DEBUG_PROG_RA 0x0400 +#define NV50_DEBUG_PROG_CFLOW 0x0800 +#define NV50_DEBUG_PROG_ALL 0x1f00 + +#define NV50_DEBUG 0 + +#define NOUVEAU_ERR(fmt, args...) \ + fprintf(stderr, "%s:%d - "fmt, __FUNCTION__, __LINE__, ##args) + +#define NV50_DBGMSG(ch, args...) \ + if ((NV50_DEBUG) & (NV50_DEBUG_##ch)) \ + debug_printf(args) + +#endif /* __NV50_DEBUG_H__ */ diff --git a/src/gallium/drivers/nv50/nv50_pc.c b/src/gallium/drivers/nv50/nv50_pc.c index 4fe13a75b29..7900bf811df 100644 --- a/src/gallium/drivers/nv50/nv50_pc.c +++ b/src/gallium/drivers/nv50/nv50_pc.c @@ -20,8 +20,6 @@ * SOFTWARE. */ -/* #define NV50PC_DEBUG */ - #include "nv50_pc.h" #include "nv50_program.h" @@ -368,7 +366,7 @@ nv_print_program(struct nv_pc *pc) nv_print_function(pc->root[i]); } -#ifdef NV50PC_DEBUG +#if NV50_DEBUG & NV50_DEBUG_PROG_CFLOW static void nv_do_print_cfgraph(struct nv_pc *pc, FILE *f, struct nv_basic_block *b) { @@ -426,7 +424,7 @@ nv_print_cfgraph(struct nv_pc *pc, const char *filepath, int subr) fclose(f); } -#endif +#endif /* NV50_DEBUG_PROG_CFLOW */ static INLINE void nvcg_show_bincode(struct nv_pc *pc) @@ -447,7 +445,7 @@ nv50_emit_program(struct nv_pc *pc) uint32_t *code = pc->emit; int n; - NV50_DBGMSG("emitting program: size = %u\n", pc->bin_size); + NV50_DBGMSG(SHADER, "emitting program: size = %u\n", pc->bin_size); for (n = 0; n < pc->num_blocks; ++n) { struct nv_instruction *i; @@ -473,7 +471,7 @@ nv50_emit_program(struct nv_pc *pc) pc->emit = code; code[pc->bin_size / 4 - 1] |= 1; -#ifdef NV50PC_DEBUG +#if NV50_DEBUG & NV50_DEBUG_SHADER nvcg_show_bincode(pc); #endif @@ -501,7 +499,7 @@ nv50_generate_code(struct nv50_translation_info *ti) ret = nv50_tgsi_to_nc(pc, ti); if (ret) goto out; -#ifdef NV50PC_DEBUG +#if NV50_DEBUG & NV50_DEBUG_PROG_IR nv_print_program(pc); #endif @@ -511,7 +509,7 @@ nv50_generate_code(struct nv50_translation_info *ti) ret = nv_pc_exec_pass0(pc); if (ret) goto out; -#ifdef NV50PC_DEBUG +#if NV50_DEBUG & NV50_DEBUG_PROG_IR nv_print_program(pc); #endif @@ -519,7 +517,7 @@ nv50_generate_code(struct nv50_translation_info *ti) ret = nv_pc_exec_pass1(pc); if (ret) goto out; -#ifdef NV50PC_DEBUG +#if NV50_DEBUG & NV50_DEBUG_PROG_CFLOW nv_print_program(pc); nv_print_cfgraph(pc, "nv50_shader_cfgraph.dot", 0); #endif @@ -553,7 +551,7 @@ nv50_generate_code(struct nv50_translation_info *ti) ti->p->uses_lmem = ti->store_to_memory; - NV50_DBGMSG("SHADER TRANSLATION - %s\n", ret ? "failure" : "success"); + NV50_DBGMSG(SHADER, "SHADER TRANSLATION - %s\n", ret ? "failed" : "success"); out: nv_pc_free_refs(pc); @@ -673,7 +671,7 @@ nv_nvi_delete(struct nv_instruction *nvi) if (nvi == b->phi) { if (nvi->opcode != NV_OP_PHI) - NV50_DBGMSG("NOTE: b->phi points to non-PHI instruction\n"); + NV50_DBGMSG(PROG_IR, "NOTE: b->phi points to non-PHI instruction\n"); assert(!nvi->prev); if (!nvi->next || nvi->next->opcode != NV_OP_PHI) diff --git a/src/gallium/drivers/nv50/nv50_pc.h b/src/gallium/drivers/nv50/nv50_pc.h index a9a3248038b..5bb0e1296bb 100644 --- a/src/gallium/drivers/nv50/nv50_pc.h +++ b/src/gallium/drivers/nv50/nv50_pc.h @@ -23,13 +23,7 @@ #ifndef __NV50_COMPILER_H__ #define __NV50_COMPILER_H__ -#define NV50PC_DEBUG - -#ifdef NV50PC_DEBUG -# define NV50_DBGMSG(args...) debug_printf(args) -#else -# define NV50_DBGMSG(args...) -#endif +#include "nv50_debug.h" #include "pipe/p_defines.h" #include "util/u_inlines.h" diff --git a/src/gallium/drivers/nv50/nv50_pc_optimize.c b/src/gallium/drivers/nv50/nv50_pc_optimize.c index 281ccf7ac61..d72b23c137a 100644 --- a/src/gallium/drivers/nv50/nv50_pc_optimize.c +++ b/src/gallium/drivers/nv50/nv50_pc_optimize.c @@ -20,8 +20,6 @@ * SOFTWARE. */ -/* #define NV50PC_DEBUG */ - #include "nv50_pc.h" #define DESCEND_ARBITRARY(j, f) \ @@ -116,7 +114,7 @@ nvi_isnop(struct nv_instruction *nvi) return FALSE; if (nvi->src[0]->value->join->reg.id < 0) { - NV50_DBGMSG("nvi_isnop: orphaned value detected\n"); + NV50_DBGMSG(PROG_IR, "nvi_isnop: orphaned value detected\n"); return TRUE; } @@ -201,7 +199,7 @@ nv_pc_pass_pre_emission(void *priv, struct nv_basic_block *b) } if (!b->entry) { - NV50_DBGMSG("block %p is now empty\n", b); + NV50_DBGMSG(PROG_IR, "block %p is now empty\n", b); } else if (!b->exit->is_long) { assert(n32); @@ -240,7 +238,7 @@ nv_pc_exec_pass2(struct nv_pc *pc) { int i, ret; - NV50_DBGMSG("preparing %u blocks for emission\n", pc->num_blocks); + NV50_DBGMSG(PROG_IR, "preparing %u blocks for emission\n", pc->num_blocks); pc->num_blocks = 0; /* will reorder bb_list */ @@ -966,7 +964,8 @@ nv_pass_flatten(struct nv_pass *ctx, struct nv_basic_block *b) if (bb_is_if_else_endif(b)) { - NV50_DBGMSG("pass_flatten: IF/ELSE/ENDIF construct at BB:%i\n", b->id); + NV50_DBGMSG(PROG_IR, + "pass_flatten: IF/ELSE/ENDIF construct at BB:%i\n", b->id); for (n0 = 0, nvi = b->out[0]->entry; nvi; nvi = nvi->next, ++n0) if (!nv50_nvi_can_predicate(nvi)) @@ -975,7 +974,7 @@ nv_pass_flatten(struct nv_pass *ctx, struct nv_basic_block *b) for (n1 = 0, nvi = b->out[1]->entry; nvi; nvi = nvi->next, ++n1) if (!nv50_nvi_can_predicate(nvi)) break; -#ifdef NV50PC_DEBUG +#if NV50_DEBUG & NV50_DEBUG_PROG_IR if (nvi) { debug_printf("cannot predicate: "); nv_print_instruction(nvi); } diff --git a/src/gallium/drivers/nv50/nv50_pc_regalloc.c b/src/gallium/drivers/nv50/nv50_pc_regalloc.c index e4f418aa7ca..e79fd594cea 100644 --- a/src/gallium/drivers/nv50/nv50_pc_regalloc.c +++ b/src/gallium/drivers/nv50/nv50_pc_regalloc.c @@ -20,11 +20,11 @@ * SOFTWARE. */ -/* #define NV50PC_DEBUG */ - -/* #define NV50_RA_DEBUG_LIVEI */ -/* #define NV50_RA_DEBUG_LIVE_SETS */ -/* #define NV50_RA_DEBUG_JOIN */ +#if NV50_DEBUG & NV50_DEBUG_PROG_RA +# define NV50_RA_DEBUG_LIVEI +# define NV50_RA_DEBUG_LIVE_SETS +# define NV50_RA_DEBUG_JOIN +#endif #include "nv50_context.h" #include "nv50_pc.h" @@ -1013,7 +1013,7 @@ nv_pc_pass1(struct nv_pc *pc, struct nv_basic_block *root) struct nv_pc_pass *ctx; int i, ret; - NV50_DBGMSG("REGISTER ALLOCATION - entering\n"); + NV50_DBGMSG(PROG_RA, "REGISTER ALLOCATION - entering\n"); ctx = CALLOC_STRUCT(nv_pc_pass); if (!ctx) @@ -1075,7 +1075,7 @@ nv_pc_pass1(struct nv_pc *pc, struct nv_basic_block *root) for (i = 0; i < pc->num_values; ++i) livei_release(&pc->values[i]); - NV50_DBGMSG("REGISTER ALLOCATION - leaving\n"); + NV50_DBGMSG(PROG_RA, "REGISTER ALLOCATION - leaving\n"); out: FREE(ctx->insns); diff --git a/src/gallium/drivers/nv50/nv50_program.c b/src/gallium/drivers/nv50/nv50_program.c index 37025a6f12e..41d3e14dc0f 100644 --- a/src/gallium/drivers/nv50/nv50_program.c +++ b/src/gallium/drivers/nv50/nv50_program.c @@ -20,8 +20,6 @@ * SOFTWARE. */ -/* #define NV50_PROGRAM_DEBUG */ - #include "nv50_program.h" #include "nv50_pc.h" #include "nv50_context.h" @@ -564,7 +562,7 @@ nv50_prog_scan(struct nv50_translation_info *ti) tgsi_scan_shader(p->pipe.tokens, &ti->scan); -#ifdef NV50_PROGRAM_DEBUG +#if NV50_DEBUG & NV50_DEBUG_SHADER tgsi_dump(p->pipe.tokens, 0); #endif diff --git a/src/gallium/drivers/nv50/nv50_tgsi_to_nc.c b/src/gallium/drivers/nv50/nv50_tgsi_to_nc.c index f548836a9c4..25dcaaea14f 100644 --- a/src/gallium/drivers/nv50/nv50_tgsi_to_nc.c +++ b/src/gallium/drivers/nv50/nv50_tgsi_to_nc.c @@ -20,8 +20,6 @@ * SOFTWARE. */ -/* #define NV50_TGSI2NC_DEBUG */ - #include #include "nv50_context.h" @@ -213,7 +211,7 @@ static INLINE void bld_warn_uninitialized(struct bld_context *bld, int kind, struct bld_value_stack *stk, struct nv_basic_block *b) { -#ifdef NV50_TGSI2NC_DEBUG +#if NV50_DEBUG & NV50_DEBUG_PROG_IR long i = (stk - &bld->tvs[0][0]) / 4; long c = (stk - &bld->tvs[0][0]) & 3; @@ -1562,7 +1560,7 @@ bld_instruction(struct bld_context *bld, int c; uint opcode = translate_opcode(insn->Instruction.Opcode); -#ifdef NV50_TGSI2NC_DEBUG +#if NV50_DEBUG & NV50_DEBUG_PROG_IR debug_printf("bld_instruction:"); tgsi_dump_instruction(insn, 1); #endif diff --git a/src/gallium/drivers/nvc0/nvc0_context.h b/src/gallium/drivers/nvc0/nvc0_context.h index 102997e4fcb..f97141dd46e 100644 --- a/src/gallium/drivers/nvc0/nvc0_context.h +++ b/src/gallium/drivers/nvc0/nvc0_context.h @@ -1,7 +1,6 @@ #ifndef __NVC0_CONTEXT_H__ #define __NVC0_CONTEXT_H__ -#include #include "pipe/p_context.h" #include "pipe/p_defines.h" #include "pipe/p_state.h" @@ -13,6 +12,7 @@ #include "draw/draw_vertex.h" +#include "nv50/nv50_debug.h" #include "nvc0_winsys.h" #include "nvc0_stateobj.h" #include "nvc0_screen.h" @@ -26,15 +26,6 @@ #include "nvc0_2d.xml.h" #include "nvc0_m2mf.xml.h" -#define NOUVEAU_ERR(fmt, args...) \ - fprintf(stderr, "%s:%d - "fmt, __FUNCTION__, __LINE__, ##args); - -#ifdef NOUVEAU_DEBUG -# define NOUVEAU_DBG(args...) printf(args); -#else -# define NOUVEAU_DBG(args...) -#endif - #define NVC0_NEW_BLEND (1 << 0) #define NVC0_NEW_RASTERIZER (1 << 1) #define NVC0_NEW_ZSA (1 << 2) diff --git a/src/gallium/drivers/nvc0/nvc0_pc.c b/src/gallium/drivers/nvc0/nvc0_pc.c index bd85a7f1ffd..2c3b8555f32 100644 --- a/src/gallium/drivers/nvc0/nvc0_pc.c +++ b/src/gallium/drivers/nvc0/nvc0_pc.c @@ -20,8 +20,6 @@ * SOFTWARE. */ -#define NOUVEAU_DEBUG 1 - #include "nvc0_pc.h" #include "nvc0_program.h" @@ -262,7 +260,7 @@ nvc0_print_program(struct nv_pc *pc) nvc0_print_function(pc->root[i]); } -#if NOUVEAU_DEBUG > 1 +#if NV50_DEBUG & NV50_DEBUG_PROG_CFLOW static void nv_do_print_cfgraph(struct nv_pc *pc, FILE *f, struct nv_basic_block *b) { @@ -327,7 +325,7 @@ nvc0_pc_print_binary(struct nv_pc *pc) { unsigned i; - NOUVEAU_DBG("nvc0_pc_print_binary(%u ops)\n", pc->emit_size / 8); + NV50_DBGMSG(SHADER, "nvc0_pc_print_binary(%u ops)\n", pc->emit_size / 8); for (i = 0; i < pc->emit_size / 4; i += 2) { debug_printf("0x%08x ", pc->emit[i + 0]); @@ -344,7 +342,7 @@ nvc0_emit_program(struct nv_pc *pc) uint32_t *code = pc->emit; int n; - NOUVEAU_DBG("emitting program: size = %u\n", pc->emit_size); + NV50_DBGMSG(SHADER, "emitting program: size = %u\n", pc->emit_size); pc->emit_pos = 0; for (n = 0; n < pc->num_blocks; ++n) { @@ -365,11 +363,10 @@ nvc0_emit_program(struct nv_pc *pc) pc->emit = code; -#ifdef NOUVEAU_DEBUG +#if NV50_DEBUG & NV50_DEBUG_SHADER nvc0_pc_print_binary(pc); -#else - debug_printf("not printing binary\n"); #endif + return 0; } @@ -396,7 +393,7 @@ nvc0_generate_code(struct nvc0_translation_info *ti) ret = nvc0_tgsi_to_nc(pc, ti); if (ret) goto out; -#if NOUVEAU_DEBUG > 1 +#if NV50_DEBUG & NV50_DEBUG_PROG_IR nvc0_print_program(pc); #endif @@ -406,7 +403,7 @@ nvc0_generate_code(struct nvc0_translation_info *ti) ret = nvc0_pc_exec_pass0(pc); if (ret) goto out; -#ifdef NOUVEAU_DEBUG +#if NV50_DEBUG & NV50_DEBUG_PROG_IR nvc0_print_program(pc); #endif @@ -414,7 +411,7 @@ nvc0_generate_code(struct nvc0_translation_info *ti) ret = nvc0_pc_exec_pass1(pc); if (ret) goto out; -#if NOUVEAU_DEBUG > 1 +#if NV50_DEBUG & NV50_DEBUG_PROG_CFLOW nvc0_print_program(pc); nv_print_cfgraph(pc, "nvc0_shader_cfgraph.dot", 0); #endif @@ -444,7 +441,7 @@ nvc0_generate_code(struct nvc0_translation_info *ti) ti->prog->relocs = pc->reloc_entries; ti->prog->num_relocs = pc->num_relocs; - NOUVEAU_DBG("SHADER TRANSLATION - %s\n", ret ? "failure" : "success"); + NV50_DBGMSG(SHADER, "SHADER TRANSLATION - %s\n", ret ? "failed" : "success"); out: nv_pc_free_refs(pc); @@ -573,7 +570,7 @@ nvc0_insn_delete(struct nv_instruction *nvi) if (nvi == b->phi) { if (nvi->opcode != NV_OP_PHI) - NOUVEAU_DBG("NOTE: b->phi points to non-PHI instruction\n"); + NV50_DBGMSG(PROG_IR, "NOTE: b->phi points to non-PHI instruction\n"); assert(!nvi->prev); if (!nvi->next || nvi->next->opcode != NV_OP_PHI) diff --git a/src/gallium/drivers/nvc0/nvc0_pc.h b/src/gallium/drivers/nvc0/nvc0_pc.h index 3a5612a5fac..441692d766c 100644 --- a/src/gallium/drivers/nvc0/nvc0_pc.h +++ b/src/gallium/drivers/nvc0/nvc0_pc.h @@ -23,20 +23,7 @@ #ifndef __NVC0_COMPILER_H__ #define __NVC0_COMPILER_H__ -#include - -#ifndef NOUVEAU_DBG -#ifdef NOUVEAU_DEBUG -# define NOUVEAU_DBG(args...) debug_printf(args); -#else -# define NOUVEAU_DBG(args...) -#endif -#endif - -#ifndef NOUVEAU_ERR -#define NOUVEAU_ERR(fmt, args...) \ - fprintf(stderr, "%s:%d - "fmt, __FUNCTION__, __LINE__, ##args); -#endif +#include "nv50/nv50_debug.h" #include "pipe/p_defines.h" #include "util/u_inlines.h" diff --git a/src/gallium/drivers/nvc0/nvc0_pc_emit.c b/src/gallium/drivers/nvc0/nvc0_pc_emit.c index 6f409a9e925..e35653280a1 100644 --- a/src/gallium/drivers/nvc0/nvc0_pc_emit.c +++ b/src/gallium/drivers/nvc0/nvc0_pc_emit.c @@ -879,7 +879,9 @@ emit_st(struct nv_pc *pc, struct nv_instruction *i) void nvc0_emit_instruction(struct nv_pc *pc, struct nv_instruction *i) { +#if NV50_DEBUG & NV50_DEBUG_SHADER debug_printf("EMIT: "); nvc0_print_instruction(i); +#endif switch (i->opcode) { case NV_OP_VFETCH: diff --git a/src/gallium/drivers/nvc0/nvc0_pc_optimize.c b/src/gallium/drivers/nvc0/nvc0_pc_optimize.c index f7bf1680d09..7f5fbaff690 100644 --- a/src/gallium/drivers/nvc0/nvc0_pc_optimize.c +++ b/src/gallium/drivers/nvc0/nvc0_pc_optimize.c @@ -115,7 +115,7 @@ inst_is_noop(struct nv_instruction *nvi) return FALSE; if (nvi->src[0]->value->join->reg.id < 0) { - NOUVEAU_DBG("inst_is_noop: orphaned value detected\n"); + NV50_DBGMSG(PROG_IR, "inst_is_noop: orphaned value detected\n"); return TRUE; } @@ -178,7 +178,7 @@ nv_pc_pass_pre_emission(void *priv, struct nv_basic_block *b) } pc->emit_size += b->emit_size; -#ifdef NOUVEAU_DEBUG +#if NV50_DEBUG & NV50_DEBUG_PROG_IR if (!b->entry) debug_printf("BB:%i is now empty\n", b->id); else @@ -206,7 +206,7 @@ nvc0_pc_exec_pass2(struct nv_pc *pc) { int i, ret; - NOUVEAU_DBG("preparing %u blocks for emission\n", pc->num_blocks); + NV50_DBGMSG(PROG_IR, "preparing %u blocks for emission\n", pc->num_blocks); pc->num_blocks = 0; /* will reorder bb_list */ diff --git a/src/gallium/drivers/nvc0/nvc0_pc_regalloc.c b/src/gallium/drivers/nvc0/nvc0_pc_regalloc.c index 0515a0d77eb..15bebb2134a 100644 --- a/src/gallium/drivers/nvc0/nvc0_pc_regalloc.c +++ b/src/gallium/drivers/nvc0/nvc0_pc_regalloc.c @@ -20,11 +20,11 @@ * SOFTWARE. */ -#define NOUVEAU_DEBUG 1 - -/* #define NVC0_RA_DEBUG_LIVEI */ -/* #define NVC0_RA_DEBUG_LIVE_SETS */ -/* #define NVC0_RA_DEBUG_JOIN */ +#if NV50_DEBUG & NV50_DEBUG_PROG_RA +# define NVC0_RA_DEBUG_LIVEI +# define NVC0_RA_DEBUG_LIVE_SETS +# define NVC0_RA_DEBUG_JOIN +#endif #include "nvc0_pc.h" #include "util/u_simple_list.h" @@ -967,7 +967,7 @@ nv_pc_pass1(struct nv_pc *pc, struct nv_basic_block *root) struct nv_pc_pass *ctx; int i, ret; - NOUVEAU_DBG("REGISTER ALLOCATION - entering\n"); + NV50_DBGMSG(PROG_RA, "REGISTER ALLOCATION - entering\n"); ctx = CALLOC_STRUCT(nv_pc_pass); if (!ctx) @@ -1033,7 +1033,7 @@ nv_pc_pass1(struct nv_pc *pc, struct nv_basic_block *root) for (i = 0; i < pc->num_values; ++i) livei_release(&pc->values[i]); - NOUVEAU_DBG("REGISTER ALLOCATION - leaving\n"); + NV50_DBGMSG(PROG_RA, "REGISTER ALLOCATION - leaving\n"); out: FREE(ctx->insns); diff --git a/src/gallium/drivers/nvc0/nvc0_program.c b/src/gallium/drivers/nvc0/nvc0_program.c index 383bc30f20b..bcee027917e 100644 --- a/src/gallium/drivers/nvc0/nvc0_program.c +++ b/src/gallium/drivers/nvc0/nvc0_program.c @@ -23,8 +23,6 @@ #include "pipe/p_shader_tokens.h" #include "pipe/p_defines.h" -#define NOUVEAU_DEBUG - #include "tgsi/tgsi_parse.h" #include "tgsi/tgsi_util.h" #include "tgsi/tgsi_dump.h" @@ -577,7 +575,7 @@ nvc0_prog_scan(struct nvc0_translation_info *ti) int ret; unsigned i; -#ifdef NOUVEAU_DEBUG +#if NV50_DEBUG & NV50_DEBUG_SHADER tgsi_dump(prog->pipe.tokens, 0); #endif @@ -694,12 +692,12 @@ nvc0_program_translate(struct nvc0_program *prog) if (ret) NOUVEAU_ERR("shader translation failed\n"); - { - unsigned i; - for (i = 0; i < sizeof(prog->hdr) / sizeof(prog->hdr[0]); ++i) - debug_printf("HDR[%02lx] = 0x%08x\n", - i * sizeof(prog->hdr[0]), prog->hdr[i]); - } +#if NV50_DEBUG & NV50_DEBUG_SHADER + unsigned i; + for (i = 0; i < sizeof(prog->hdr) / sizeof(prog->hdr[0]); ++i) + debug_printf("HDR[%02lx] = 0x%08x\n", + i * sizeof(prog->hdr[0]), prog->hdr[i]); +#endif out: if (ti->immd32) diff --git a/src/gallium/drivers/nvc0/nvc0_tgsi_to_nc.c b/src/gallium/drivers/nvc0/nvc0_tgsi_to_nc.c index 53fd7e70fc9..d57be916696 100644 --- a/src/gallium/drivers/nvc0/nvc0_tgsi_to_nc.c +++ b/src/gallium/drivers/nvc0/nvc0_tgsi_to_nc.c @@ -22,8 +22,6 @@ #include -#define NOUVEAU_DEBUG 1 - #include "pipe/p_shader_tokens.h" #include "tgsi/tgsi_parse.h" #include "tgsi/tgsi_util.h" @@ -200,7 +198,7 @@ static INLINE void bld_warn_uninitialized(struct bld_context *bld, int kind, struct bld_register *reg, struct nv_basic_block *b) { -#ifdef NOUVEAU_DEBUG +#if NV50_DEBUG & NV50_DEBUG_SHADER long i = (reg - &bld->tvs[0][0]) / 4; long c = (reg - &bld->tvs[0][0]) & 3; @@ -1471,7 +1469,7 @@ bld_instruction(struct bld_context *bld, uint opcode = translate_opcode(insn->Instruction.Opcode); uint8_t mask = insn->Dst[0].Register.WriteMask; -#ifdef NOUVEAU_DEBUG +#if NV50_DEBUG & NV50_DEBUG_PROG_IR debug_printf("bld_instruction:"); tgsi_dump_instruction(insn, 1); #endif From ae5776c41f12515bb73c07ee2a0aed56cdd1a1ef Mon Sep 17 00:00:00 2001 From: Nicolas Kaiser Date: Sun, 10 Apr 2011 09:58:50 -0600 Subject: [PATCH 220/420] docs: fix typos in Mesa specs Signed-off-by: Nicolas Kaiser Signed-off-by: Brian Paul --- docs/MESA_agp_offset.spec | 2 +- docs/MESA_drm_image.spec | 4 ++-- docs/MESA_pack_invert.spec | 2 +- docs/MESA_release_buffers.spec | 8 ++++---- docs/MESA_resize_buffers.spec | 4 ++-- docs/MESA_swap_control.spec | 4 ++-- docs/MESA_texture_array.spec | 8 ++++---- docs/MESA_texture_signed_rgba.spec | 4 ++-- docs/MESA_window_pos.spec | 4 ++-- docs/MESA_ycbcr_texture.spec | 4 ++-- 10 files changed, 22 insertions(+), 22 deletions(-) diff --git a/docs/MESA_agp_offset.spec b/docs/MESA_agp_offset.spec index 8dcc72379cd..06e1d902edd 100644 --- a/docs/MESA_agp_offset.spec +++ b/docs/MESA_agp_offset.spec @@ -67,7 +67,7 @@ Additions to Chapter 3 the GLX 1.4 Specification (Functions and Errors) On "PC" computers, AGP memory can be allocated with glXAllocateMemoryNV and freed with glXFreeMemoryNV. Sometimes it's useful to know where a block of AGP memory is located with respect to the start of the AGP - aperature. The function + aperture. The function GLuint glXGetAGPOffsetMESA( const GLvoid *pointer ) diff --git a/docs/MESA_drm_image.spec b/docs/MESA_drm_image.spec index c9853a7fd0f..198de3ec3ce 100644 --- a/docs/MESA_drm_image.spec +++ b/docs/MESA_drm_image.spec @@ -24,7 +24,7 @@ Number Dependencies - Reguires EGL 1.4 or later. This extension is written against the + Requires EGL 1.4 or later. This extension is written against the wording of the EGL 1.4 specification. EGL_KHR_base_image is required. @@ -134,7 +134,7 @@ Issues RESOLVED: The eglQueryImage function has been proposed often, but it goes against the EGLImage design. EGLImages are opaque handles to a 2D array of pixels, which can be passed between - client APIs. By referenceing an EGLImage in a client API, the + client APIs. By referencing an EGLImage in a client API, the EGLImage target (a texture, a renderbuffer or such) can be used to query the attributes of the EGLImage. We don't have a full client API for creating and querying DRM buffers, though, diff --git a/docs/MESA_pack_invert.spec b/docs/MESA_pack_invert.spec index 53d5fca71b0..33fb3c7bf80 100644 --- a/docs/MESA_pack_invert.spec +++ b/docs/MESA_pack_invert.spec @@ -48,7 +48,7 @@ IP Status Issues - 1. Should we also defined UNPACK_INVERT_MESA for glDrawPixels, etc? + 1. Should we also define UNPACK_INVERT_MESA for glDrawPixels, etc? Resolved: No, we're only concerned with pixel packing. There are other solutions for inverting images when using glDrawPixels (negative Y pixel diff --git a/docs/MESA_release_buffers.spec b/docs/MESA_release_buffers.spec index 8db9350d831..52d1e5a9c7c 100644 --- a/docs/MESA_release_buffers.spec +++ b/docs/MESA_release_buffers.spec @@ -31,12 +31,12 @@ Overview Mesa's implementation of GLX is entirely implemented on the client side. Therefore, Mesa cannot immediately detect when an X window or pixmap is - destroyed in order to free any ancilliary data associated with the window + destroyed in order to free any ancillary data associated with the window or pixmap. The glxMesaReleaseBuffers() function can be used to explicitly indicate - when the back color buffer, depth buffer, stencil buffer, and/or accum- - ulation buffer associated with a drawable can be freed. + when the back color buffer, depth buffer, stencil buffer, and/or accumu- + lation buffer associated with a drawable can be freed. IP Status @@ -60,7 +60,7 @@ Additions to Chapter 3 of the GLX 1.3 Specification (Functions and Errors) Bool glXReleaseBuffersMESA( Display *dpy, GLXDrawable d ); - causes all software ancilliary buffers (back buffer, depth, stencil, + causes all software ancillary buffers (back buffer, depth, stencil, accum, etc) associated with the named drawable to be immediately deallocated. True is returned if is a valid Mesa GLX drawable, else False is returned. After calling glXReleaseBuffersMESA, the diff --git a/docs/MESA_resize_buffers.spec b/docs/MESA_resize_buffers.spec index 533d017c9a9..dabc7c421da 100644 --- a/docs/MESA_resize_buffers.spec +++ b/docs/MESA_resize_buffers.spec @@ -35,7 +35,7 @@ Overview Mesa's glViewport command queries the current window size and updates its internal data structors accordingly. This normally works fine - since most applications call glViewport in responce to window size + since most applications call glViewport in response to window size changes. In some situations, however, the application may not call glViewport @@ -65,7 +65,7 @@ Additions to the AGL/GLX/WGL Specifications Errors - INVALID_OPERATION is generated if ResizeBuffersMESA is called betweeen + INVALID_OPERATION is generated if glResizeBuffersMESA is called between Begin and End. New State diff --git a/docs/MESA_swap_control.spec b/docs/MESA_swap_control.spec index 856978b535b..a002563c9dc 100644 --- a/docs/MESA_swap_control.spec +++ b/docs/MESA_swap_control.spec @@ -88,8 +88,8 @@ Additions to the GLX 1.3 Specification this is typically the time required to display both the even and odd fields of a frame of video data. - If is set to a value of 0, buffer swaps are not synchron- - ized to a video frame. The value is silently clamped to + If is set to a value of 0, buffer swaps are not synchro- + nized to a video frame. The value is silently clamped to the maximum implementation-dependent value supported before being stored. diff --git a/docs/MESA_texture_array.spec b/docs/MESA_texture_array.spec index 9dee65b045d..b146821f72e 100644 --- a/docs/MESA_texture_array.spec +++ b/docs/MESA_texture_array.spec @@ -328,7 +328,7 @@ Additions to Chapter 3 of the OpenGL 2.0 Specification (Rasterization) -- Section 3.8.10 "Texture Completeness" - Change the second paragaph (page 177) to say (spec changes identical + Change the second paragraph (page 177) to say (spec changes identical to EXT_texture_array): "For one-, two-, or three-dimensional textures and one- or @@ -443,10 +443,10 @@ Additions to Chapter 3 of the OpenGL 2.0 Specification (Rasterization) Change second through fourth paragraphs (page 188) to say: "Let D_t be the depth texture value, in the range [0, 1]. For - texture lookups from one- and two-dimesional, rectangle, and + texture lookups from one- and two-dimensional, rectangle, and one-dimensional array targets, let R be the interpolated texture coordinate, clamped to the range [0, 1]. For texture lookups - from two-dimesional array texture targets, let R be the interpolated + from two-dimensional array texture targets, let R be the interpolated texture coordinate, clamped to the range [0, 1]. Then the effective texture value L_t, I_t, or A_t is computed as follows: @@ -604,7 +604,7 @@ Additions to Chapter 5 of the OpenGL 2.0 Specification (Special Functions) -- Section 5.4 "Display Lists" - Change the first paragraphi on page 242 to say (spec changes + Change the first paragraph on page 242 to say (spec changes identical to EXT_texture_array): "TexImage3D, TexImage2D, TexImage1D, Histogram, and ColorTable are diff --git a/docs/MESA_texture_signed_rgba.spec b/docs/MESA_texture_signed_rgba.spec index 49c8e9e5dd4..e3a6b59afac 100644 --- a/docs/MESA_texture_signed_rgba.spec +++ b/docs/MESA_texture_signed_rgba.spec @@ -44,7 +44,7 @@ Overview ARB_texture_compression_rgtc introduces some compressed red and red_green signed formats but no uncompressed ones, which might still be useful. NV_texture_shader adds signed texture formats, - but also a lot of functionality which has been superceded by fragment + but also a lot of functionality which has been superseded by fragment shaders. It is usually possible to get the same functionality using a unsigned format by doing scale and bias in a shader, but this @@ -105,7 +105,7 @@ Issues This is also different to what NV_texture_shader used. The above mapping should be considered the reference, but there is some leeway so other mappings are allowed for implementations which - cannot do this. Particulary the mapping given in NV_texture_shader or + cannot do this. Particularly the mapping given in NV_texture_shader or the standard OpenGL byte/float mapping is considered acceptable too, as might be a mapping which represents -1.0 by -128, 0.0 by 0 and 1.0 by 127 (that is, uses different scale factors for negative and positive diff --git a/docs/MESA_window_pos.spec b/docs/MESA_window_pos.spec index 4d01f1814c1..9e81e9c4db4 100644 --- a/docs/MESA_window_pos.spec +++ b/docs/MESA_window_pos.spec @@ -88,7 +88,7 @@ Additions to Chapter 2 of the OpenGL 1.2 Specification (OpenGL Operation) WindosPos4MESA takes four values indicating x, y, z, and w. WindowPos3MESA (or WindowPos2MESA) is analaguos, but sets only x, y, and z with w implicitly set to 1 (or only x and y with z - implicititly set to 0 and w implicitly set to 1). + implicitly set to 0 and w implicitly set to 1). WindowPosMESA operates like RasterPos except that the current modelview matrix, projection matrix and viewport parameters are ignored and the @@ -108,7 +108,7 @@ GLX Protocol Errors - INVALID_OPERATION is generated if WindowPosMESA is called betweeen + INVALID_OPERATION is generated if WindowPosMESA is called between Begin and End. New State diff --git a/docs/MESA_ycbcr_texture.spec b/docs/MESA_ycbcr_texture.spec index 0fa1f7b39dd..6a730e81ccf 100644 --- a/docs/MESA_ycbcr_texture.spec +++ b/docs/MESA_ycbcr_texture.spec @@ -26,7 +26,7 @@ Number Dependencies OpenGL 1.0 or later is required - This extensions is written against the OpenGL 1.4 Specification. + This extension is written against the OpenGL 1.4 Specification. NV_texture_rectangle effects the definition of this extension. Overview @@ -104,7 +104,7 @@ Additions to Chapter 3 of the OpenGL 1.4 Specification (Rasterization) In section 3.6.4, Rasterization of Pixel Rectangles, on page 104, - add the following to Table 3.12 (Packed pixel fiedl assignments): + add the following to Table 3.12 (Packed pixel field assignments): First Second Third Fourth Format Element Element Element Element From 82cb6e6519376ea21a9ec4694c6657a1f98c034f Mon Sep 17 00:00:00 2001 From: Nicolas Kaiser Date: Sun, 10 Apr 2011 05:04:44 -0700 Subject: [PATCH 221/420] docs: fix typos in wayland spec Signed-off-by: Nicolas Kaiser Signed-off-by: Brian Paul --- docs/WL_bind_wayland_display.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/WL_bind_wayland_display.spec b/docs/WL_bind_wayland_display.spec index 0ff49d6a762..b4e670303d3 100644 --- a/docs/WL_bind_wayland_display.spec +++ b/docs/WL_bind_wayland_display.spec @@ -25,7 +25,7 @@ Number Dependencies - Reguires EGL 1.4 or later. This extension is written against the + Requires EGL 1.4 or later. This extension is written against the wording of the EGL 1.4 specification. EGL_KHR_base_image is required. @@ -40,9 +40,9 @@ Overview provides a new target for eglCreateImageKHR, to create an EGLImage from a wl_buffer - Adding a implementation specific wayland interface, allows the + Adding an implementation specific wayland interface, allows the EGL implementation to define specific wayland requests and events, - needed for buffer sharing in a EGL wayland platform. + needed for buffer sharing in an EGL wayland platform. IP Status From 158d42c8b08411d761fa40299f3f29027ad3905f Mon Sep 17 00:00:00 2001 From: Henri Verbeet Date: Thu, 7 Apr 2011 23:48:28 +0200 Subject: [PATCH 222/420] mesa: Also update the color draw buffer if it's explicitly set to GL_NONE. NOTE: This is a candidate for the 7.10 branch. Signed-off-by: Henri Verbeet --- src/mesa/main/buffers.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mesa/main/buffers.c b/src/mesa/main/buffers.c index 5c37f3d1a86..96ee1ace728 100644 --- a/src/mesa/main/buffers.c +++ b/src/mesa/main/buffers.c @@ -407,7 +407,6 @@ _mesa_drawbuffers(struct gl_context *ctx, GLuint n, const GLenum *buffers, fb->_ColorDrawBufferIndexes[buf] = bufIndex; newState = GL_TRUE; } - fb->ColorDrawBuffer[buf] = buffers[buf]; count = buf + 1; } else { @@ -416,6 +415,7 @@ _mesa_drawbuffers(struct gl_context *ctx, GLuint n, const GLenum *buffers, newState = GL_TRUE; } } + fb->ColorDrawBuffer[buf] = buffers[buf]; } /* set remaining outputs to -1 (GL_NONE) */ while (buf < ctx->Const.MaxDrawBuffers) { From a75de67c51e9124a7c3846b4110552ea28c60349 Mon Sep 17 00:00:00 2001 From: Henri Verbeet Date: Thu, 7 Apr 2011 23:48:28 +0200 Subject: [PATCH 223/420] glx: Destroy dri2Hash on DRI2 display destruction. Signed-off-by: Henri Verbeet --- src/glx/dri2_glx.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/glx/dri2_glx.c b/src/glx/dri2_glx.c index 2c28bc27150..fc0237a4f6b 100644 --- a/src/glx/dri2_glx.c +++ b/src/glx/dri2_glx.c @@ -945,6 +945,9 @@ handle_error: static void dri2DestroyDisplay(__GLXDRIdisplay * dpy) { + struct dri2_display *pdp = (struct dri2_display *) dpy; + + __glxHashDestroy(pdp->dri2Hash); Xfree(dpy); } From a26121f37530619610a78a5fbe5ef87e44047fda Mon Sep 17 00:00:00 2001 From: Henri Verbeet Date: Thu, 7 Apr 2011 23:48:28 +0200 Subject: [PATCH 224/420] glx: Only remove the glx_display from the list after it's destroyed. Signed-off-by: Henri Verbeet --- src/glx/glxext.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/glx/glxext.c b/src/glx/glxext.c index e35dcb73e89..278c71978fa 100644 --- a/src/glx/glxext.c +++ b/src/glx/glxext.c @@ -250,19 +250,24 @@ glx_display_free(struct glx_display *priv) static int __glXCloseDisplay(Display * dpy, XExtCodes * codes) { - struct glx_display *priv, **prev; + struct glx_display *priv, **prev, *next; _XLockMutex(_Xglobal_lock); prev = &glx_displays; for (priv = glx_displays; priv; prev = &priv->next, priv = priv->next) { if (priv->dpy == dpy) { - (*prev) = priv->next; break; } } - _XUnlockMutex(_Xglobal_lock); + /* Only remove the display from the list after it's destroyed. The cleanup + * code (e.g. driReleaseDrawables()) ends up calling __glXInitialize(), + * which would create a new glx_display while we're trying to destroy this + * one. */ + next = priv->next; glx_display_free(priv); + *prev = next; + _XUnlockMutex(_Xglobal_lock); return 1; } From d40ec9a884757b065410ecfa8dadff2079b27afc Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Sun, 10 Apr 2011 12:41:39 -0600 Subject: [PATCH 225/420] glapi: interface for GL_ARB_sampler_objects --- src/mapi/glapi/gen/ARB_sampler_objects.xml | 96 ++++++++++++++++++++++ src/mapi/glapi/gen/Makefile | 1 + src/mapi/glapi/gen/gl_API.xml | 2 + 3 files changed, 99 insertions(+) create mode 100644 src/mapi/glapi/gen/ARB_sampler_objects.xml diff --git a/src/mapi/glapi/gen/ARB_sampler_objects.xml b/src/mapi/glapi/gen/ARB_sampler_objects.xml new file mode 100644 index 00000000000..0d39db4d33f --- /dev/null +++ b/src/mapi/glapi/gen/ARB_sampler_objects.xml @@ -0,0 +1,96 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/mapi/glapi/gen/Makefile b/src/mapi/glapi/gen/Makefile index f9aae84d194..b56ce863992 100644 --- a/src/mapi/glapi/gen/Makefile +++ b/src/mapi/glapi/gen/Makefile @@ -80,6 +80,7 @@ API_XML = \ ARB_geometry_shader4.xml \ ARB_instanced_arrays.xml \ ARB_map_buffer_range.xml \ + ARB_sampler_objects.xml \ ARB_seamless_cube_map.xml \ ARB_sync.xml \ ARB_texture_buffer_object.xml \ diff --git a/src/mapi/glapi/gen/gl_API.xml b/src/mapi/glapi/gen/gl_API.xml index fe44a834f96..ef68ad62cf7 100644 --- a/src/mapi/glapi/gen/gl_API.xml +++ b/src/mapi/glapi/gen/gl_API.xml @@ -7973,6 +7973,8 @@ + + From 1cbd3a1cc734df16610a59dc49cdb42c70dc3270 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Sun, 10 Apr 2011 12:42:24 -0600 Subject: [PATCH 226/420] glapi: regenerated files for GL_ARB_sampler_objects --- src/mapi/glapi/glapi_mapi_tmp.h | 1802 +++++++------ src/mapi/glapi/glapi_sparc.S | 668 ++--- src/mapi/glapi/glapi_x86-64.S | 4164 +++++++++++++++++-------------- src/mapi/glapi/glapi_x86.S | 962 +++---- src/mapi/glapi/glapitable.h | 602 ++--- src/mapi/glapi/glapitemp.h | 312 ++- src/mapi/glapi/glprocs.h | 1472 +++++------ src/mesa/main/enums.c | 1983 +++++++-------- src/mesa/main/glapidispatch.h | 1264 +++++----- src/mesa/main/remap_helper.h | 3595 +++++++++++++------------- 10 files changed, 8905 insertions(+), 7919 deletions(-) diff --git a/src/mapi/glapi/glapi_mapi_tmp.h b/src/mapi/glapi/glapi_mapi_tmp.h index ca627089b58..02a541edc44 100644 --- a/src/mapi/glapi/glapi_mapi_tmp.h +++ b/src/mapi/glapi/glapi_mapi_tmp.h @@ -807,6 +807,20 @@ GLAPI void APIENTRY GLAPI_PREFIX(BlendEquationSeparateiARB)(GLuint buf, GLenum m GLAPI void APIENTRY GLAPI_PREFIX(BlendEquationiARB)(GLuint buf, GLenum mode); GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncSeparateiARB)(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcA, GLenum dstA); GLAPI void APIENTRY GLAPI_PREFIX(BlendFunciARB)(GLuint buf, GLenum src, GLenum dst); +GLAPI void APIENTRY GLAPI_PREFIX(BindSampler)(GLuint unit, GLuint sampler); +GLAPI void APIENTRY GLAPI_PREFIX(DeleteSamplers)(GLsizei count, const GLuint *samplers); +GLAPI void APIENTRY GLAPI_PREFIX(GenSamplers)(GLsizei count, GLuint *samplers); +GLAPI void APIENTRY GLAPI_PREFIX(GetSamplerParameterIiv)(GLuint sampler, GLenum pname, GLint *params); +GLAPI void APIENTRY GLAPI_PREFIX(GetSamplerParameterIuiv)(GLuint sampler, GLenum pname, GLuint *params); +GLAPI void APIENTRY GLAPI_PREFIX(GetSamplerParameterfv)(GLuint sampler, GLenum pname, GLfloat *params); +GLAPI void APIENTRY GLAPI_PREFIX(GetSamplerParameteriv)(GLuint sampler, GLenum pname, GLint *params); +GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsSampler)(GLuint sampler); +GLAPI void APIENTRY GLAPI_PREFIX(SamplerParameterIiv)(GLuint sampler, GLenum pname, const GLint *params); +GLAPI void APIENTRY GLAPI_PREFIX(SamplerParameterIuiv)(GLuint sampler, GLenum pname, const GLuint *params); +GLAPI void APIENTRY GLAPI_PREFIX(SamplerParameterf)(GLuint sampler, GLenum pname, GLfloat param); +GLAPI void APIENTRY GLAPI_PREFIX(SamplerParameterfv)(GLuint sampler, GLenum pname, const GLfloat *params); +GLAPI void APIENTRY GLAPI_PREFIX(SamplerParameteri)(GLuint sampler, GLenum pname, GLint param); +GLAPI void APIENTRY GLAPI_PREFIX(SamplerParameteriv)(GLuint sampler, GLenum pname, const GLint *params); GLAPI void APIENTRY GLAPI_PREFIX(BindTransformFeedback)(GLenum target, GLuint id); GLAPI void APIENTRY GLAPI_PREFIX(DeleteTransformFeedbacks)(GLsizei n, const GLuint *ids); GLAPI void APIENTRY GLAPI_PREFIX(DrawTransformFeedback)(GLenum mode, GLuint id); @@ -819,28 +833,28 @@ GLAPI void APIENTRY GLAPI_PREFIX(DepthRangef)(GLclampf zNear, GLclampf zFar); GLAPI void APIENTRY GLAPI_PREFIX(GetShaderPrecisionFormat)(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision); GLAPI void APIENTRY GLAPI_PREFIX(ReleaseShaderCompiler)(void); GLAPI void APIENTRY GLAPI_PREFIX(ShaderBinary)(GLsizei n, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_612)(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_613)(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_614)(GLuint program, GLenum pname, GLint value); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_626)(GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_627)(GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_628)(GLuint program, GLenum pname, GLint value); GLAPI void APIENTRY GLAPI_PREFIX(PolygonOffsetEXT)(GLfloat factor, GLfloat bias); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_616)(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_617)(const GLfloat *coords); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_618)(GLint x, GLint y, GLint z, GLint width, GLint height); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_619)(const GLint *coords); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_620)(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_621)(const GLshort *coords); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_622)(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_623)(const GLfixed *coords); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_624)(GLenum type, GLsizei stride, const GLvoid *pointer); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_625)(GLenum pname, GLfloat *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_626)(GLenum pname, GLint *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_627)(GLenum pname, GLfloat param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_628)(GLenum pname, const GLfloat *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_629)(GLenum pname, GLint param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_630)(GLenum pname, const GLint *params); -GLbitfield APIENTRY GLAPI_PREFIX(_dispatch_stub_631)(GLfixed *mantissa, GLint *exponent); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_632)(GLclampf value, GLboolean invert); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_633)(GLenum pattern); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_630)(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_631)(const GLfloat *coords); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_632)(GLint x, GLint y, GLint z, GLint width, GLint height); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_633)(const GLint *coords); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_634)(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_635)(const GLshort *coords); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_636)(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_637)(const GLfixed *coords); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_638)(GLenum type, GLsizei stride, const GLvoid *pointer); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_639)(GLenum pname, GLfloat *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_640)(GLenum pname, GLint *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_641)(GLenum pname, GLfloat param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_642)(GLenum pname, const GLfloat *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_643)(GLenum pname, GLint param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_644)(GLenum pname, const GLint *params); +GLbitfield APIENTRY GLAPI_PREFIX(_dispatch_stub_645)(GLfixed *mantissa, GLint *exponent); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_646)(GLclampf value, GLboolean invert); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_647)(GLenum pattern); GLAPI void APIENTRY GLAPI_PREFIX(ColorPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer); GLAPI void APIENTRY GLAPI_PREFIX(EdgeFlagPointerEXT)(GLsizei stride, GLsizei count, const GLboolean *pointer); GLAPI void APIENTRY GLAPI_PREFIX(IndexPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer); @@ -903,7 +917,7 @@ GLAPI void APIENTRY GLAPI_PREFIX(FogCoordfEXT)(GLfloat coord); GLAPI void APIENTRY GLAPI_PREFIX(FogCoordf)(GLfloat coord); GLAPI void APIENTRY GLAPI_PREFIX(FogCoordfvEXT)(const GLfloat *coord); GLAPI void APIENTRY GLAPI_PREFIX(FogCoordfv)(const GLfloat *coord); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_668)(GLenum mode); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_682)(GLenum mode); GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncSeparateEXT)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncSeparate)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); GLAPI void APIENTRY GLAPI_PREFIX(FlushVertexArrayRangeNV)(void); @@ -978,15 +992,15 @@ GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4iMESA)(GLint x, GLint y, GLint z, GLi GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4ivMESA)(const GLint *v); GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4sMESA)(GLshort x, GLshort y, GLshort z, GLshort w); GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4svMESA)(const GLshort *v); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_710)(const GLenum *mode, const GLint *first, const GLsizei *count, GLsizei primcount, GLint modestride); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_711)(const GLenum *mode, const GLsizei *count, GLenum type, const GLvoid * const *indices, GLsizei primcount, GLint modestride); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_712)(GLsizei n, const GLuint *fences); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_713)(GLuint fence); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_714)(GLsizei n, GLuint *fences); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_715)(GLuint fence, GLenum pname, GLint *params); -GLboolean APIENTRY GLAPI_PREFIX(_dispatch_stub_716)(GLuint fence); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_717)(GLuint fence, GLenum condition); -GLboolean APIENTRY GLAPI_PREFIX(_dispatch_stub_718)(GLuint fence); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_724)(const GLenum *mode, const GLint *first, const GLsizei *count, GLsizei primcount, GLint modestride); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_725)(const GLenum *mode, const GLsizei *count, GLenum type, const GLvoid * const *indices, GLsizei primcount, GLint modestride); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_726)(GLsizei n, const GLuint *fences); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_727)(GLuint fence); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_728)(GLsizei n, GLuint *fences); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_729)(GLuint fence, GLenum pname, GLint *params); +GLboolean APIENTRY GLAPI_PREFIX(_dispatch_stub_730)(GLuint fence); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_731)(GLuint fence, GLenum condition); +GLboolean APIENTRY GLAPI_PREFIX(_dispatch_stub_732)(GLuint fence); GLAPI GLboolean APIENTRY GLAPI_PREFIX(AreProgramsResidentNV)(GLsizei n, const GLuint *ids, GLboolean *residences); GLAPI void APIENTRY GLAPI_PREFIX(BindProgramNV)(GLenum target, GLuint program); GLAPI void APIENTRY GLAPI_PREFIX(BindProgramARB)(GLenum target, GLuint program); @@ -1075,12 +1089,12 @@ GLAPI void APIENTRY GLAPI_PREFIX(PointParameteriNV)(GLenum pname, GLint param); GLAPI void APIENTRY GLAPI_PREFIX(PointParameteri)(GLenum pname, GLint param); GLAPI void APIENTRY GLAPI_PREFIX(PointParameterivNV)(GLenum pname, const GLint *params); GLAPI void APIENTRY GLAPI_PREFIX(PointParameteriv)(GLenum pname, const GLint *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_799)(GLenum face); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_800)(GLuint array); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_801)(GLsizei n, const GLuint *arrays); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_813)(GLenum face); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_814)(GLuint array); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_815)(GLsizei n, const GLuint *arrays); GLAPI void APIENTRY GLAPI_PREFIX(DeleteVertexArrays)(GLsizei n, const GLuint *arrays); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_802)(GLsizei n, GLuint *arrays); -GLboolean APIENTRY GLAPI_PREFIX(_dispatch_stub_803)(GLuint array); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_816)(GLsizei n, GLuint *arrays); +GLboolean APIENTRY GLAPI_PREFIX(_dispatch_stub_817)(GLuint array); GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsVertexArray)(GLuint array); GLAPI void APIENTRY GLAPI_PREFIX(GetProgramNamedParameterdvNV)(GLuint id, GLsizei len, const GLubyte *name, GLdouble *params); GLAPI void APIENTRY GLAPI_PREFIX(GetProgramNamedParameterfvNV)(GLuint id, GLsizei len, const GLubyte *name, GLfloat *params); @@ -1091,54 +1105,54 @@ GLAPI void APIENTRY GLAPI_PREFIX(ProgramNamedParameter4fvNV)(GLuint id, GLsizei GLAPI void APIENTRY GLAPI_PREFIX(PrimitiveRestartIndexNV)(GLuint index); GLAPI void APIENTRY GLAPI_PREFIX(PrimitiveRestartIndex)(GLuint index); GLAPI void APIENTRY GLAPI_PREFIX(PrimitiveRestartNV)(void); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_812)(GLenum func, GLclampx ref); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_813)(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_814)(GLclampx depth); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_815)(GLenum plane, const GLfixed *equation); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_816)(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_817)(GLclampx zNear, GLclampx zFar); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_818)(GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_819)(GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_820)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_821)(GLenum plane, GLfixed *equation); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_822)(GLenum pname, GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_823)(GLenum light, GLenum pname, GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_824)(GLenum face, GLenum pname, GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_825)(GLenum target, GLenum pname, GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_826)(GLenum coord, GLenum pname, GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_827)(GLenum target, GLenum pname, GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_828)(GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_829)(GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_830)(GLenum light, GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_831)(GLenum light, GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_832)(GLfixed width); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_833)(const GLfixed *m); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_834)(GLenum face, GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_835)(GLenum face, GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_836)(const GLfixed *m); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_837)(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_838)(GLfixed nx, GLfixed ny, GLfixed nz); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_839)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_840)(GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_841)(GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_842)(GLfixed size); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_843)(GLfixed factor, GLfixed units); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_844)(GLfixed angle, GLfixed x, GLfixed y, GLfixed z); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_845)(GLclampx value, GLboolean invert); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_846)(GLfixed x, GLfixed y, GLfixed z); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_847)(GLenum target, GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_848)(GLenum target, GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_849)(GLenum coord, GLenum pname, GLint param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_850)(GLenum coord, GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_851)(GLenum target, GLenum pname, GLfixed param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_852)(GLenum target, GLenum pname, const GLfixed *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_853)(GLfixed x, GLfixed y, GLfixed z); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_854)(GLenum plane, const GLfloat *equation); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_855)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_856)(GLenum plane, GLfloat *equation); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_857)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_858)(GLclampd zmin, GLclampd zmax); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_859)(GLenum modeRGB, GLenum modeA); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_826)(GLenum func, GLclampx ref); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_827)(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_828)(GLclampx depth); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_829)(GLenum plane, const GLfixed *equation); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_830)(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_831)(GLclampx zNear, GLclampx zFar); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_832)(GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_833)(GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_834)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_835)(GLenum plane, GLfixed *equation); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_836)(GLenum pname, GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_837)(GLenum light, GLenum pname, GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_838)(GLenum face, GLenum pname, GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_839)(GLenum target, GLenum pname, GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_840)(GLenum coord, GLenum pname, GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_841)(GLenum target, GLenum pname, GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_842)(GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_843)(GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_844)(GLenum light, GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_845)(GLenum light, GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_846)(GLfixed width); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_847)(const GLfixed *m); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_848)(GLenum face, GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_849)(GLenum face, GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_850)(const GLfixed *m); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_851)(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_852)(GLfixed nx, GLfixed ny, GLfixed nz); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_853)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_854)(GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_855)(GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_856)(GLfixed size); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_857)(GLfixed factor, GLfixed units); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_858)(GLfixed angle, GLfixed x, GLfixed y, GLfixed z); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_859)(GLclampx value, GLboolean invert); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_860)(GLfixed x, GLfixed y, GLfixed z); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_861)(GLenum target, GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_862)(GLenum target, GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_863)(GLenum coord, GLenum pname, GLint param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_864)(GLenum coord, GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_865)(GLenum target, GLenum pname, GLfixed param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_866)(GLenum target, GLenum pname, const GLfixed *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_867)(GLfixed x, GLfixed y, GLfixed z); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_868)(GLenum plane, const GLfloat *equation); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_869)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_870)(GLenum plane, GLfloat *equation); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_871)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_872)(GLclampd zmin, GLclampd zmax); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_873)(GLenum modeRGB, GLenum modeA); GLAPI void APIENTRY GLAPI_PREFIX(BlendEquationSeparate)(GLenum modeRGB, GLenum modeA); GLAPI void APIENTRY GLAPI_PREFIX(BindFramebufferEXT)(GLenum target, GLuint framebuffer); GLAPI void APIENTRY GLAPI_PREFIX(BindFramebuffer)(GLenum target, GLuint framebuffer); @@ -1174,10 +1188,10 @@ GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsRenderbufferEXT)(GLuint renderbuffer); GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsRenderbuffer)(GLuint renderbuffer); GLAPI void APIENTRY GLAPI_PREFIX(RenderbufferStorageEXT)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height); GLAPI void APIENTRY GLAPI_PREFIX(RenderbufferStorage)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_877)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_891)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); GLAPI void APIENTRY GLAPI_PREFIX(BlitFramebuffer)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_878)(GLenum target, GLenum pname, GLint param); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_879)(GLenum target, GLintptr offset, GLsizeiptr size); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_892)(GLenum target, GLenum pname, GLint param); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_893)(GLenum target, GLintptr offset, GLsizeiptr size); GLAPI void APIENTRY GLAPI_PREFIX(BindFragDataLocationEXT)(GLuint program, GLuint colorNumber, const GLchar *name); GLAPI void APIENTRY GLAPI_PREFIX(BindFragDataLocation)(GLuint program, GLuint colorNumber, const GLchar *name); GLAPI GLint APIENTRY GLAPI_PREFIX(GetFragDataLocationEXT)(GLuint program, const GLchar *name); @@ -1289,8 +1303,8 @@ GLAPI void APIENTRY GLAPI_PREFIX(TransformFeedbackVaryingsEXT)(GLuint program, G GLAPI void APIENTRY GLAPI_PREFIX(TransformFeedbackVaryings)(GLuint program, GLsizei count, const GLchar* *varyings, GLenum bufferMode); GLAPI void APIENTRY GLAPI_PREFIX(ProvokingVertexEXT)(GLenum mode); GLAPI void APIENTRY GLAPI_PREFIX(ProvokingVertex)(GLenum mode); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_937)(GLenum target, GLenum pname, GLvoid **params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_938)(GLenum target, GLsizei length, GLvoid *pointer); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_951)(GLenum target, GLenum pname, GLvoid **params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_952)(GLenum target, GLsizei length, GLvoid *pointer); GLAPI void APIENTRY GLAPI_PREFIX(GetObjectParameterivAPPLE)(GLenum objectType, GLuint name, GLenum pname, GLint *value); GLAPI GLenum APIENTRY GLAPI_PREFIX(ObjectPurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); GLAPI GLenum APIENTRY GLAPI_PREFIX(ObjectUnpurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); @@ -1298,11 +1312,11 @@ GLAPI void APIENTRY GLAPI_PREFIX(ActiveProgramEXT)(GLuint program); GLAPI GLuint APIENTRY GLAPI_PREFIX(CreateShaderProgramEXT)(GLenum type, const GLchar *string); GLAPI void APIENTRY GLAPI_PREFIX(UseShaderProgramEXT)(GLenum type, GLuint program); GLAPI void APIENTRY GLAPI_PREFIX(TextureBarrierNV)(void); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_946)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_947)(GLenum target, GLuint index, GLsizei count, const GLfloat *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_948)(GLenum target, GLuint index, GLsizei count, const GLfloat *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_949)(GLuint id, GLenum pname, GLint64EXT *params); -void APIENTRY GLAPI_PREFIX(_dispatch_stub_950)(GLuint id, GLenum pname, GLuint64EXT *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_960)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_961)(GLenum target, GLuint index, GLsizei count, const GLfloat *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_962)(GLenum target, GLuint index, GLsizei count, const GLfloat *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_963)(GLuint id, GLenum pname, GLint64EXT *params); +void APIENTRY GLAPI_PREFIX(_dispatch_stub_964)(GLuint id, GLenum pname, GLuint64EXT *params); GLAPI void APIENTRY GLAPI_PREFIX(EGLImageTargetRenderbufferStorageOES)(GLenum target, GLvoid *writeOffset); GLAPI void APIENTRY GLAPI_PREFIX(EGLImageTargetTexture2DOES)(GLenum target, GLvoid *writeOffset); #undef MAPI_TMP_DEFINES @@ -6748,2831 +6762,2929 @@ GLAPI void APIENTRY GLAPI_PREFIX(BlendFunciARB)(GLuint buf, GLenum src, GLenum d ((void (APIENTRY *)(GLuint buf, GLenum src, GLenum dst)) _func)(buf, src, dst); } -GLAPI void APIENTRY GLAPI_PREFIX(BindTransformFeedback)(GLenum target, GLuint id) +GLAPI void APIENTRY GLAPI_PREFIX(BindSampler)(GLuint unit, GLuint sampler) { const struct mapi_table *_tbl = entry_current_get(); mapi_func _func = ((const mapi_func *) _tbl)[600]; + ((void (APIENTRY *)(GLuint unit, GLuint sampler)) _func)(unit, sampler); +} + +GLAPI void APIENTRY GLAPI_PREFIX(DeleteSamplers)(GLsizei count, const GLuint *samplers) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[601]; + ((void (APIENTRY *)(GLsizei count, const GLuint *samplers)) _func)(count, samplers); +} + +GLAPI void APIENTRY GLAPI_PREFIX(GenSamplers)(GLsizei count, GLuint *samplers) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[602]; + ((void (APIENTRY *)(GLsizei count, GLuint *samplers)) _func)(count, samplers); +} + +GLAPI void APIENTRY GLAPI_PREFIX(GetSamplerParameterIiv)(GLuint sampler, GLenum pname, GLint *params) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[603]; + ((void (APIENTRY *)(GLuint sampler, GLenum pname, GLint *params)) _func)(sampler, pname, params); +} + +GLAPI void APIENTRY GLAPI_PREFIX(GetSamplerParameterIuiv)(GLuint sampler, GLenum pname, GLuint *params) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[604]; + ((void (APIENTRY *)(GLuint sampler, GLenum pname, GLuint *params)) _func)(sampler, pname, params); +} + +GLAPI void APIENTRY GLAPI_PREFIX(GetSamplerParameterfv)(GLuint sampler, GLenum pname, GLfloat *params) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[605]; + ((void (APIENTRY *)(GLuint sampler, GLenum pname, GLfloat *params)) _func)(sampler, pname, params); +} + +GLAPI void APIENTRY GLAPI_PREFIX(GetSamplerParameteriv)(GLuint sampler, GLenum pname, GLint *params) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[606]; + ((void (APIENTRY *)(GLuint sampler, GLenum pname, GLint *params)) _func)(sampler, pname, params); +} + +GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsSampler)(GLuint sampler) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[607]; + return ((GLboolean (APIENTRY *)(GLuint sampler)) _func)(sampler); +} + +GLAPI void APIENTRY GLAPI_PREFIX(SamplerParameterIiv)(GLuint sampler, GLenum pname, const GLint *params) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[608]; + ((void (APIENTRY *)(GLuint sampler, GLenum pname, const GLint *params)) _func)(sampler, pname, params); +} + +GLAPI void APIENTRY GLAPI_PREFIX(SamplerParameterIuiv)(GLuint sampler, GLenum pname, const GLuint *params) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[609]; + ((void (APIENTRY *)(GLuint sampler, GLenum pname, const GLuint *params)) _func)(sampler, pname, params); +} + +GLAPI void APIENTRY GLAPI_PREFIX(SamplerParameterf)(GLuint sampler, GLenum pname, GLfloat param) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[610]; + ((void (APIENTRY *)(GLuint sampler, GLenum pname, GLfloat param)) _func)(sampler, pname, param); +} + +GLAPI void APIENTRY GLAPI_PREFIX(SamplerParameterfv)(GLuint sampler, GLenum pname, const GLfloat *params) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[611]; + ((void (APIENTRY *)(GLuint sampler, GLenum pname, const GLfloat *params)) _func)(sampler, pname, params); +} + +GLAPI void APIENTRY GLAPI_PREFIX(SamplerParameteri)(GLuint sampler, GLenum pname, GLint param) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[612]; + ((void (APIENTRY *)(GLuint sampler, GLenum pname, GLint param)) _func)(sampler, pname, param); +} + +GLAPI void APIENTRY GLAPI_PREFIX(SamplerParameteriv)(GLuint sampler, GLenum pname, const GLint *params) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[613]; + ((void (APIENTRY *)(GLuint sampler, GLenum pname, const GLint *params)) _func)(sampler, pname, params); +} + +GLAPI void APIENTRY GLAPI_PREFIX(BindTransformFeedback)(GLenum target, GLuint id) +{ + const struct mapi_table *_tbl = entry_current_get(); + mapi_func _func = ((const mapi_func *) _tbl)[614]; ((void (APIENTRY *)(GLenum target, GLuint id)) _func)(target, id); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteTransformFeedbacks)(GLsizei n, const GLuint *ids) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[601]; + mapi_func _func = ((const mapi_func *) _tbl)[615]; ((void (APIENTRY *)(GLsizei n, const GLuint *ids)) _func)(n, ids); } GLAPI void APIENTRY GLAPI_PREFIX(DrawTransformFeedback)(GLenum mode, GLuint id) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[602]; + mapi_func _func = ((const mapi_func *) _tbl)[616]; ((void (APIENTRY *)(GLenum mode, GLuint id)) _func)(mode, id); } GLAPI void APIENTRY GLAPI_PREFIX(GenTransformFeedbacks)(GLsizei n, GLuint *ids) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[603]; + mapi_func _func = ((const mapi_func *) _tbl)[617]; ((void (APIENTRY *)(GLsizei n, GLuint *ids)) _func)(n, ids); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsTransformFeedback)(GLuint id) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[604]; + mapi_func _func = ((const mapi_func *) _tbl)[618]; return ((GLboolean (APIENTRY *)(GLuint id)) _func)(id); } GLAPI void APIENTRY GLAPI_PREFIX(PauseTransformFeedback)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[605]; + mapi_func _func = ((const mapi_func *) _tbl)[619]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(ResumeTransformFeedback)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[606]; + mapi_func _func = ((const mapi_func *) _tbl)[620]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(ClearDepthf)(GLclampf depth) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[607]; + mapi_func _func = ((const mapi_func *) _tbl)[621]; ((void (APIENTRY *)(GLclampf depth)) _func)(depth); } GLAPI void APIENTRY GLAPI_PREFIX(DepthRangef)(GLclampf zNear, GLclampf zFar) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[608]; + mapi_func _func = ((const mapi_func *) _tbl)[622]; ((void (APIENTRY *)(GLclampf zNear, GLclampf zFar)) _func)(zNear, zFar); } GLAPI void APIENTRY GLAPI_PREFIX(GetShaderPrecisionFormat)(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[609]; + mapi_func _func = ((const mapi_func *) _tbl)[623]; ((void (APIENTRY *)(GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision)) _func)(shadertype, precisiontype, range, precision); } GLAPI void APIENTRY GLAPI_PREFIX(ReleaseShaderCompiler)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[610]; + mapi_func _func = ((const mapi_func *) _tbl)[624]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(ShaderBinary)(GLsizei n, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[611]; + mapi_func _func = ((const mapi_func *) _tbl)[625]; ((void (APIENTRY *)(GLsizei n, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length)) _func)(n, shaders, binaryformat, binary, length); } GLAPI void APIENTRY GLAPI_PREFIX(PolygonOffsetEXT)(GLfloat factor, GLfloat bias) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[615]; + mapi_func _func = ((const mapi_func *) _tbl)[629]; ((void (APIENTRY *)(GLfloat factor, GLfloat bias)) _func)(factor, bias); } GLAPI void APIENTRY GLAPI_PREFIX(ColorPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[634]; + mapi_func _func = ((const mapi_func *) _tbl)[648]; ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)) _func)(size, type, stride, count, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(EdgeFlagPointerEXT)(GLsizei stride, GLsizei count, const GLboolean *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[635]; + mapi_func _func = ((const mapi_func *) _tbl)[649]; ((void (APIENTRY *)(GLsizei stride, GLsizei count, const GLboolean *pointer)) _func)(stride, count, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(IndexPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[636]; + mapi_func _func = ((const mapi_func *) _tbl)[650]; ((void (APIENTRY *)(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)) _func)(type, stride, count, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(NormalPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[637]; + mapi_func _func = ((const mapi_func *) _tbl)[651]; ((void (APIENTRY *)(GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)) _func)(type, stride, count, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(TexCoordPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[638]; + mapi_func _func = ((const mapi_func *) _tbl)[652]; ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)) _func)(size, type, stride, count, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(VertexPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[639]; + mapi_func _func = ((const mapi_func *) _tbl)[653]; ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer)) _func)(size, type, stride, count, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterfEXT)(GLenum pname, GLfloat param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[640]; + mapi_func _func = ((const mapi_func *) _tbl)[654]; ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterf)(GLenum pname, GLfloat param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[640]; + mapi_func _func = ((const mapi_func *) _tbl)[654]; ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterfARB)(GLenum pname, GLfloat param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[640]; + mapi_func _func = ((const mapi_func *) _tbl)[654]; ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterfvEXT)(GLenum pname, const GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[641]; + mapi_func _func = ((const mapi_func *) _tbl)[655]; ((void (APIENTRY *)(GLenum pname, const GLfloat *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterfv)(GLenum pname, const GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[641]; + mapi_func _func = ((const mapi_func *) _tbl)[655]; ((void (APIENTRY *)(GLenum pname, const GLfloat *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterfvARB)(GLenum pname, const GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[641]; + mapi_func _func = ((const mapi_func *) _tbl)[655]; ((void (APIENTRY *)(GLenum pname, const GLfloat *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(LockArraysEXT)(GLint first, GLsizei count) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[642]; + mapi_func _func = ((const mapi_func *) _tbl)[656]; ((void (APIENTRY *)(GLint first, GLsizei count)) _func)(first, count); } GLAPI void APIENTRY GLAPI_PREFIX(UnlockArraysEXT)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[643]; + mapi_func _func = ((const mapi_func *) _tbl)[657]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3bEXT)(GLbyte red, GLbyte green, GLbyte blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[644]; + mapi_func _func = ((const mapi_func *) _tbl)[658]; ((void (APIENTRY *)(GLbyte red, GLbyte green, GLbyte blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3b)(GLbyte red, GLbyte green, GLbyte blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[644]; + mapi_func _func = ((const mapi_func *) _tbl)[658]; ((void (APIENTRY *)(GLbyte red, GLbyte green, GLbyte blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3bvEXT)(const GLbyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[645]; + mapi_func _func = ((const mapi_func *) _tbl)[659]; ((void (APIENTRY *)(const GLbyte *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3bv)(const GLbyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[645]; + mapi_func _func = ((const mapi_func *) _tbl)[659]; ((void (APIENTRY *)(const GLbyte *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3dEXT)(GLdouble red, GLdouble green, GLdouble blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[646]; + mapi_func _func = ((const mapi_func *) _tbl)[660]; ((void (APIENTRY *)(GLdouble red, GLdouble green, GLdouble blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3d)(GLdouble red, GLdouble green, GLdouble blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[646]; + mapi_func _func = ((const mapi_func *) _tbl)[660]; ((void (APIENTRY *)(GLdouble red, GLdouble green, GLdouble blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3dvEXT)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[647]; + mapi_func _func = ((const mapi_func *) _tbl)[661]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3dv)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[647]; + mapi_func _func = ((const mapi_func *) _tbl)[661]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3fEXT)(GLfloat red, GLfloat green, GLfloat blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[648]; + mapi_func _func = ((const mapi_func *) _tbl)[662]; ((void (APIENTRY *)(GLfloat red, GLfloat green, GLfloat blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3f)(GLfloat red, GLfloat green, GLfloat blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[648]; + mapi_func _func = ((const mapi_func *) _tbl)[662]; ((void (APIENTRY *)(GLfloat red, GLfloat green, GLfloat blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3fvEXT)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[649]; + mapi_func _func = ((const mapi_func *) _tbl)[663]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3fv)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[649]; + mapi_func _func = ((const mapi_func *) _tbl)[663]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3iEXT)(GLint red, GLint green, GLint blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[650]; + mapi_func _func = ((const mapi_func *) _tbl)[664]; ((void (APIENTRY *)(GLint red, GLint green, GLint blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3i)(GLint red, GLint green, GLint blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[650]; + mapi_func _func = ((const mapi_func *) _tbl)[664]; ((void (APIENTRY *)(GLint red, GLint green, GLint blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3ivEXT)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[651]; + mapi_func _func = ((const mapi_func *) _tbl)[665]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3iv)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[651]; + mapi_func _func = ((const mapi_func *) _tbl)[665]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3sEXT)(GLshort red, GLshort green, GLshort blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[652]; + mapi_func _func = ((const mapi_func *) _tbl)[666]; ((void (APIENTRY *)(GLshort red, GLshort green, GLshort blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3s)(GLshort red, GLshort green, GLshort blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[652]; + mapi_func _func = ((const mapi_func *) _tbl)[666]; ((void (APIENTRY *)(GLshort red, GLshort green, GLshort blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3svEXT)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[653]; + mapi_func _func = ((const mapi_func *) _tbl)[667]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3sv)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[653]; + mapi_func _func = ((const mapi_func *) _tbl)[667]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3ubEXT)(GLubyte red, GLubyte green, GLubyte blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[654]; + mapi_func _func = ((const mapi_func *) _tbl)[668]; ((void (APIENTRY *)(GLubyte red, GLubyte green, GLubyte blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3ub)(GLubyte red, GLubyte green, GLubyte blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[654]; + mapi_func _func = ((const mapi_func *) _tbl)[668]; ((void (APIENTRY *)(GLubyte red, GLubyte green, GLubyte blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3ubvEXT)(const GLubyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[655]; + mapi_func _func = ((const mapi_func *) _tbl)[669]; ((void (APIENTRY *)(const GLubyte *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3ubv)(const GLubyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[655]; + mapi_func _func = ((const mapi_func *) _tbl)[669]; ((void (APIENTRY *)(const GLubyte *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3uiEXT)(GLuint red, GLuint green, GLuint blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[656]; + mapi_func _func = ((const mapi_func *) _tbl)[670]; ((void (APIENTRY *)(GLuint red, GLuint green, GLuint blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3ui)(GLuint red, GLuint green, GLuint blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[656]; + mapi_func _func = ((const mapi_func *) _tbl)[670]; ((void (APIENTRY *)(GLuint red, GLuint green, GLuint blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3uivEXT)(const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[657]; + mapi_func _func = ((const mapi_func *) _tbl)[671]; ((void (APIENTRY *)(const GLuint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3uiv)(const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[657]; + mapi_func _func = ((const mapi_func *) _tbl)[671]; ((void (APIENTRY *)(const GLuint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3usEXT)(GLushort red, GLushort green, GLushort blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[658]; + mapi_func _func = ((const mapi_func *) _tbl)[672]; ((void (APIENTRY *)(GLushort red, GLushort green, GLushort blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3us)(GLushort red, GLushort green, GLushort blue) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[658]; + mapi_func _func = ((const mapi_func *) _tbl)[672]; ((void (APIENTRY *)(GLushort red, GLushort green, GLushort blue)) _func)(red, green, blue); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3usvEXT)(const GLushort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[659]; + mapi_func _func = ((const mapi_func *) _tbl)[673]; ((void (APIENTRY *)(const GLushort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColor3usv)(const GLushort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[659]; + mapi_func _func = ((const mapi_func *) _tbl)[673]; ((void (APIENTRY *)(const GLushort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColorPointerEXT)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[660]; + mapi_func _func = ((const mapi_func *) _tbl)[674]; ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(size, type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(SecondaryColorPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[660]; + mapi_func _func = ((const mapi_func *) _tbl)[674]; ((void (APIENTRY *)(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(size, type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(MultiDrawArraysEXT)(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[661]; + mapi_func _func = ((const mapi_func *) _tbl)[675]; ((void (APIENTRY *)(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount)) _func)(mode, first, count, primcount); } GLAPI void APIENTRY GLAPI_PREFIX(MultiDrawArrays)(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[661]; + mapi_func _func = ((const mapi_func *) _tbl)[675]; ((void (APIENTRY *)(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount)) _func)(mode, first, count, primcount); } GLAPI void APIENTRY GLAPI_PREFIX(MultiDrawElementsEXT)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[662]; + mapi_func _func = ((const mapi_func *) _tbl)[676]; ((void (APIENTRY *)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount)) _func)(mode, count, type, indices, primcount); } GLAPI void APIENTRY GLAPI_PREFIX(MultiDrawElements)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[662]; + mapi_func _func = ((const mapi_func *) _tbl)[676]; ((void (APIENTRY *)(GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount)) _func)(mode, count, type, indices, primcount); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordPointerEXT)(GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[663]; + mapi_func _func = ((const mapi_func *) _tbl)[677]; ((void (APIENTRY *)(GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordPointer)(GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[663]; + mapi_func _func = ((const mapi_func *) _tbl)[677]; ((void (APIENTRY *)(GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoorddEXT)(GLdouble coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[664]; + mapi_func _func = ((const mapi_func *) _tbl)[678]; ((void (APIENTRY *)(GLdouble coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordd)(GLdouble coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[664]; + mapi_func _func = ((const mapi_func *) _tbl)[678]; ((void (APIENTRY *)(GLdouble coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoorddvEXT)(const GLdouble *coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[665]; + mapi_func _func = ((const mapi_func *) _tbl)[679]; ((void (APIENTRY *)(const GLdouble *coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoorddv)(const GLdouble *coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[665]; + mapi_func _func = ((const mapi_func *) _tbl)[679]; ((void (APIENTRY *)(const GLdouble *coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordfEXT)(GLfloat coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[666]; + mapi_func _func = ((const mapi_func *) _tbl)[680]; ((void (APIENTRY *)(GLfloat coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordf)(GLfloat coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[666]; + mapi_func _func = ((const mapi_func *) _tbl)[680]; ((void (APIENTRY *)(GLfloat coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordfvEXT)(const GLfloat *coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[667]; + mapi_func _func = ((const mapi_func *) _tbl)[681]; ((void (APIENTRY *)(const GLfloat *coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(FogCoordfv)(const GLfloat *coord) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[667]; + mapi_func _func = ((const mapi_func *) _tbl)[681]; ((void (APIENTRY *)(const GLfloat *coord)) _func)(coord); } GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncSeparateEXT)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[669]; + mapi_func _func = ((const mapi_func *) _tbl)[683]; ((void (APIENTRY *)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)) _func)(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha); } GLAPI void APIENTRY GLAPI_PREFIX(BlendFuncSeparate)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[669]; + mapi_func _func = ((const mapi_func *) _tbl)[683]; ((void (APIENTRY *)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)) _func)(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha); } GLAPI void APIENTRY GLAPI_PREFIX(FlushVertexArrayRangeNV)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[670]; + mapi_func _func = ((const mapi_func *) _tbl)[684]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(VertexArrayRangeNV)(GLsizei length, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[671]; + mapi_func _func = ((const mapi_func *) _tbl)[685]; ((void (APIENTRY *)(GLsizei length, const GLvoid *pointer)) _func)(length, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(CombinerInputNV)(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[672]; + mapi_func _func = ((const mapi_func *) _tbl)[686]; ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage)) _func)(stage, portion, variable, input, mapping, componentUsage); } GLAPI void APIENTRY GLAPI_PREFIX(CombinerOutputNV)(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[673]; + mapi_func _func = ((const mapi_func *) _tbl)[687]; ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum)) _func)(stage, portion, abOutput, cdOutput, sumOutput, scale, bias, abDotProduct, cdDotProduct, muxSum); } GLAPI void APIENTRY GLAPI_PREFIX(CombinerParameterfNV)(GLenum pname, GLfloat param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[674]; + mapi_func _func = ((const mapi_func *) _tbl)[688]; ((void (APIENTRY *)(GLenum pname, GLfloat param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(CombinerParameterfvNV)(GLenum pname, const GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[675]; + mapi_func _func = ((const mapi_func *) _tbl)[689]; ((void (APIENTRY *)(GLenum pname, const GLfloat *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(CombinerParameteriNV)(GLenum pname, GLint param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[676]; + mapi_func _func = ((const mapi_func *) _tbl)[690]; ((void (APIENTRY *)(GLenum pname, GLint param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(CombinerParameterivNV)(GLenum pname, const GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[677]; + mapi_func _func = ((const mapi_func *) _tbl)[691]; ((void (APIENTRY *)(GLenum pname, const GLint *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(FinalCombinerInputNV)(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[678]; + mapi_func _func = ((const mapi_func *) _tbl)[692]; ((void (APIENTRY *)(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage)) _func)(variable, input, mapping, componentUsage); } GLAPI void APIENTRY GLAPI_PREFIX(GetCombinerInputParameterfvNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[679]; + mapi_func _func = ((const mapi_func *) _tbl)[693]; ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat *params)) _func)(stage, portion, variable, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetCombinerInputParameterivNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[680]; + mapi_func _func = ((const mapi_func *) _tbl)[694]; ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint *params)) _func)(stage, portion, variable, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetCombinerOutputParameterfvNV)(GLenum stage, GLenum portion, GLenum pname, GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[681]; + mapi_func _func = ((const mapi_func *) _tbl)[695]; ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum pname, GLfloat *params)) _func)(stage, portion, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetCombinerOutputParameterivNV)(GLenum stage, GLenum portion, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[682]; + mapi_func _func = ((const mapi_func *) _tbl)[696]; ((void (APIENTRY *)(GLenum stage, GLenum portion, GLenum pname, GLint *params)) _func)(stage, portion, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetFinalCombinerInputParameterfvNV)(GLenum variable, GLenum pname, GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[683]; + mapi_func _func = ((const mapi_func *) _tbl)[697]; ((void (APIENTRY *)(GLenum variable, GLenum pname, GLfloat *params)) _func)(variable, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetFinalCombinerInputParameterivNV)(GLenum variable, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[684]; + mapi_func _func = ((const mapi_func *) _tbl)[698]; ((void (APIENTRY *)(GLenum variable, GLenum pname, GLint *params)) _func)(variable, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(ResizeBuffersMESA)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[685]; + mapi_func _func = ((const mapi_func *) _tbl)[699]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2dMESA)(GLdouble x, GLdouble y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[686]; + mapi_func _func = ((const mapi_func *) _tbl)[700]; ((void (APIENTRY *)(GLdouble x, GLdouble y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2d)(GLdouble x, GLdouble y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[686]; + mapi_func _func = ((const mapi_func *) _tbl)[700]; ((void (APIENTRY *)(GLdouble x, GLdouble y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2dARB)(GLdouble x, GLdouble y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[686]; + mapi_func _func = ((const mapi_func *) _tbl)[700]; ((void (APIENTRY *)(GLdouble x, GLdouble y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2dvMESA)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[687]; + mapi_func _func = ((const mapi_func *) _tbl)[701]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2dv)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[687]; + mapi_func _func = ((const mapi_func *) _tbl)[701]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2dvARB)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[687]; + mapi_func _func = ((const mapi_func *) _tbl)[701]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2fMESA)(GLfloat x, GLfloat y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[688]; + mapi_func _func = ((const mapi_func *) _tbl)[702]; ((void (APIENTRY *)(GLfloat x, GLfloat y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2f)(GLfloat x, GLfloat y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[688]; + mapi_func _func = ((const mapi_func *) _tbl)[702]; ((void (APIENTRY *)(GLfloat x, GLfloat y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2fARB)(GLfloat x, GLfloat y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[688]; + mapi_func _func = ((const mapi_func *) _tbl)[702]; ((void (APIENTRY *)(GLfloat x, GLfloat y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2fvMESA)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[689]; + mapi_func _func = ((const mapi_func *) _tbl)[703]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2fv)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[689]; + mapi_func _func = ((const mapi_func *) _tbl)[703]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2fvARB)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[689]; + mapi_func _func = ((const mapi_func *) _tbl)[703]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2iMESA)(GLint x, GLint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[690]; + mapi_func _func = ((const mapi_func *) _tbl)[704]; ((void (APIENTRY *)(GLint x, GLint y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2i)(GLint x, GLint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[690]; + mapi_func _func = ((const mapi_func *) _tbl)[704]; ((void (APIENTRY *)(GLint x, GLint y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2iARB)(GLint x, GLint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[690]; + mapi_func _func = ((const mapi_func *) _tbl)[704]; ((void (APIENTRY *)(GLint x, GLint y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2ivMESA)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[691]; + mapi_func _func = ((const mapi_func *) _tbl)[705]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2iv)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[691]; + mapi_func _func = ((const mapi_func *) _tbl)[705]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2ivARB)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[691]; + mapi_func _func = ((const mapi_func *) _tbl)[705]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2sMESA)(GLshort x, GLshort y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[692]; + mapi_func _func = ((const mapi_func *) _tbl)[706]; ((void (APIENTRY *)(GLshort x, GLshort y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2s)(GLshort x, GLshort y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[692]; + mapi_func _func = ((const mapi_func *) _tbl)[706]; ((void (APIENTRY *)(GLshort x, GLshort y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2sARB)(GLshort x, GLshort y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[692]; + mapi_func _func = ((const mapi_func *) _tbl)[706]; ((void (APIENTRY *)(GLshort x, GLshort y)) _func)(x, y); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2svMESA)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[693]; + mapi_func _func = ((const mapi_func *) _tbl)[707]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2sv)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[693]; + mapi_func _func = ((const mapi_func *) _tbl)[707]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos2svARB)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[693]; + mapi_func _func = ((const mapi_func *) _tbl)[707]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3dMESA)(GLdouble x, GLdouble y, GLdouble z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[694]; + mapi_func _func = ((const mapi_func *) _tbl)[708]; ((void (APIENTRY *)(GLdouble x, GLdouble y, GLdouble z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3d)(GLdouble x, GLdouble y, GLdouble z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[694]; + mapi_func _func = ((const mapi_func *) _tbl)[708]; ((void (APIENTRY *)(GLdouble x, GLdouble y, GLdouble z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3dARB)(GLdouble x, GLdouble y, GLdouble z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[694]; + mapi_func _func = ((const mapi_func *) _tbl)[708]; ((void (APIENTRY *)(GLdouble x, GLdouble y, GLdouble z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3dvMESA)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[695]; + mapi_func _func = ((const mapi_func *) _tbl)[709]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3dv)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[695]; + mapi_func _func = ((const mapi_func *) _tbl)[709]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3dvARB)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[695]; + mapi_func _func = ((const mapi_func *) _tbl)[709]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3fMESA)(GLfloat x, GLfloat y, GLfloat z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[696]; + mapi_func _func = ((const mapi_func *) _tbl)[710]; ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3f)(GLfloat x, GLfloat y, GLfloat z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[696]; + mapi_func _func = ((const mapi_func *) _tbl)[710]; ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3fARB)(GLfloat x, GLfloat y, GLfloat z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[696]; + mapi_func _func = ((const mapi_func *) _tbl)[710]; ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3fvMESA)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[697]; + mapi_func _func = ((const mapi_func *) _tbl)[711]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3fv)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[697]; + mapi_func _func = ((const mapi_func *) _tbl)[711]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3fvARB)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[697]; + mapi_func _func = ((const mapi_func *) _tbl)[711]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3iMESA)(GLint x, GLint y, GLint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[698]; + mapi_func _func = ((const mapi_func *) _tbl)[712]; ((void (APIENTRY *)(GLint x, GLint y, GLint z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3i)(GLint x, GLint y, GLint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[698]; + mapi_func _func = ((const mapi_func *) _tbl)[712]; ((void (APIENTRY *)(GLint x, GLint y, GLint z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3iARB)(GLint x, GLint y, GLint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[698]; + mapi_func _func = ((const mapi_func *) _tbl)[712]; ((void (APIENTRY *)(GLint x, GLint y, GLint z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3ivMESA)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[699]; + mapi_func _func = ((const mapi_func *) _tbl)[713]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3iv)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[699]; + mapi_func _func = ((const mapi_func *) _tbl)[713]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3ivARB)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[699]; + mapi_func _func = ((const mapi_func *) _tbl)[713]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3sMESA)(GLshort x, GLshort y, GLshort z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[700]; + mapi_func _func = ((const mapi_func *) _tbl)[714]; ((void (APIENTRY *)(GLshort x, GLshort y, GLshort z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3s)(GLshort x, GLshort y, GLshort z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[700]; + mapi_func _func = ((const mapi_func *) _tbl)[714]; ((void (APIENTRY *)(GLshort x, GLshort y, GLshort z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3sARB)(GLshort x, GLshort y, GLshort z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[700]; + mapi_func _func = ((const mapi_func *) _tbl)[714]; ((void (APIENTRY *)(GLshort x, GLshort y, GLshort z)) _func)(x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3svMESA)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[701]; + mapi_func _func = ((const mapi_func *) _tbl)[715]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3sv)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[701]; + mapi_func _func = ((const mapi_func *) _tbl)[715]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos3svARB)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[701]; + mapi_func _func = ((const mapi_func *) _tbl)[715]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4dMESA)(GLdouble x, GLdouble y, GLdouble z, GLdouble w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[702]; + mapi_func _func = ((const mapi_func *) _tbl)[716]; ((void (APIENTRY *)(GLdouble x, GLdouble y, GLdouble z, GLdouble w)) _func)(x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4dvMESA)(const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[703]; + mapi_func _func = ((const mapi_func *) _tbl)[717]; ((void (APIENTRY *)(const GLdouble *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4fMESA)(GLfloat x, GLfloat y, GLfloat z, GLfloat w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[704]; + mapi_func _func = ((const mapi_func *) _tbl)[718]; ((void (APIENTRY *)(GLfloat x, GLfloat y, GLfloat z, GLfloat w)) _func)(x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4fvMESA)(const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[705]; + mapi_func _func = ((const mapi_func *) _tbl)[719]; ((void (APIENTRY *)(const GLfloat *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4iMESA)(GLint x, GLint y, GLint z, GLint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[706]; + mapi_func _func = ((const mapi_func *) _tbl)[720]; ((void (APIENTRY *)(GLint x, GLint y, GLint z, GLint w)) _func)(x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4ivMESA)(const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[707]; + mapi_func _func = ((const mapi_func *) _tbl)[721]; ((void (APIENTRY *)(const GLint *v)) _func)(v); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4sMESA)(GLshort x, GLshort y, GLshort z, GLshort w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[708]; + mapi_func _func = ((const mapi_func *) _tbl)[722]; ((void (APIENTRY *)(GLshort x, GLshort y, GLshort z, GLshort w)) _func)(x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(WindowPos4svMESA)(const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[709]; + mapi_func _func = ((const mapi_func *) _tbl)[723]; ((void (APIENTRY *)(const GLshort *v)) _func)(v); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(AreProgramsResidentNV)(GLsizei n, const GLuint *ids, GLboolean *residences) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[719]; + mapi_func _func = ((const mapi_func *) _tbl)[733]; return ((GLboolean (APIENTRY *)(GLsizei n, const GLuint *ids, GLboolean *residences)) _func)(n, ids, residences); } GLAPI void APIENTRY GLAPI_PREFIX(BindProgramNV)(GLenum target, GLuint program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[720]; + mapi_func _func = ((const mapi_func *) _tbl)[734]; ((void (APIENTRY *)(GLenum target, GLuint program)) _func)(target, program); } GLAPI void APIENTRY GLAPI_PREFIX(BindProgramARB)(GLenum target, GLuint program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[720]; + mapi_func _func = ((const mapi_func *) _tbl)[734]; ((void (APIENTRY *)(GLenum target, GLuint program)) _func)(target, program); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteProgramsNV)(GLsizei n, const GLuint *programs) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[721]; + mapi_func _func = ((const mapi_func *) _tbl)[735]; ((void (APIENTRY *)(GLsizei n, const GLuint *programs)) _func)(n, programs); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteProgramsARB)(GLsizei n, const GLuint *programs) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[721]; + mapi_func _func = ((const mapi_func *) _tbl)[735]; ((void (APIENTRY *)(GLsizei n, const GLuint *programs)) _func)(n, programs); } GLAPI void APIENTRY GLAPI_PREFIX(ExecuteProgramNV)(GLenum target, GLuint id, const GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[722]; + mapi_func _func = ((const mapi_func *) _tbl)[736]; ((void (APIENTRY *)(GLenum target, GLuint id, const GLfloat *params)) _func)(target, id, params); } GLAPI void APIENTRY GLAPI_PREFIX(GenProgramsNV)(GLsizei n, GLuint *programs) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[723]; + mapi_func _func = ((const mapi_func *) _tbl)[737]; ((void (APIENTRY *)(GLsizei n, GLuint *programs)) _func)(n, programs); } GLAPI void APIENTRY GLAPI_PREFIX(GenProgramsARB)(GLsizei n, GLuint *programs) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[723]; + mapi_func _func = ((const mapi_func *) _tbl)[737]; ((void (APIENTRY *)(GLsizei n, GLuint *programs)) _func)(n, programs); } GLAPI void APIENTRY GLAPI_PREFIX(GetProgramParameterdvNV)(GLenum target, GLuint index, GLenum pname, GLdouble *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[724]; + mapi_func _func = ((const mapi_func *) _tbl)[738]; ((void (APIENTRY *)(GLenum target, GLuint index, GLenum pname, GLdouble *params)) _func)(target, index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetProgramParameterfvNV)(GLenum target, GLuint index, GLenum pname, GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[725]; + mapi_func _func = ((const mapi_func *) _tbl)[739]; ((void (APIENTRY *)(GLenum target, GLuint index, GLenum pname, GLfloat *params)) _func)(target, index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetProgramStringNV)(GLuint id, GLenum pname, GLubyte *program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[726]; + mapi_func _func = ((const mapi_func *) _tbl)[740]; ((void (APIENTRY *)(GLuint id, GLenum pname, GLubyte *program)) _func)(id, pname, program); } GLAPI void APIENTRY GLAPI_PREFIX(GetProgramivNV)(GLuint id, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[727]; + mapi_func _func = ((const mapi_func *) _tbl)[741]; ((void (APIENTRY *)(GLuint id, GLenum pname, GLint *params)) _func)(id, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetTrackMatrixivNV)(GLenum target, GLuint address, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[728]; + mapi_func _func = ((const mapi_func *) _tbl)[742]; ((void (APIENTRY *)(GLenum target, GLuint address, GLenum pname, GLint *params)) _func)(target, address, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribPointervNV)(GLuint index, GLenum pname, GLvoid **pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[729]; + mapi_func _func = ((const mapi_func *) _tbl)[743]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLvoid **pointer)) _func)(index, pname, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribPointerv)(GLuint index, GLenum pname, GLvoid **pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[729]; + mapi_func _func = ((const mapi_func *) _tbl)[743]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLvoid **pointer)) _func)(index, pname, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribPointervARB)(GLuint index, GLenum pname, GLvoid **pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[729]; + mapi_func _func = ((const mapi_func *) _tbl)[743]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLvoid **pointer)) _func)(index, pname, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribdvNV)(GLuint index, GLenum pname, GLdouble *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[730]; + mapi_func _func = ((const mapi_func *) _tbl)[744]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLdouble *params)) _func)(index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribfvNV)(GLuint index, GLenum pname, GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[731]; + mapi_func _func = ((const mapi_func *) _tbl)[745]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLfloat *params)) _func)(index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribivNV)(GLuint index, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[732]; + mapi_func _func = ((const mapi_func *) _tbl)[746]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLint *params)) _func)(index, pname, params); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsProgramNV)(GLuint program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[733]; + mapi_func _func = ((const mapi_func *) _tbl)[747]; return ((GLboolean (APIENTRY *)(GLuint program)) _func)(program); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsProgramARB)(GLuint program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[733]; + mapi_func _func = ((const mapi_func *) _tbl)[747]; return ((GLboolean (APIENTRY *)(GLuint program)) _func)(program); } GLAPI void APIENTRY GLAPI_PREFIX(LoadProgramNV)(GLenum target, GLuint id, GLsizei len, const GLubyte *program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[734]; + mapi_func _func = ((const mapi_func *) _tbl)[748]; ((void (APIENTRY *)(GLenum target, GLuint id, GLsizei len, const GLubyte *program)) _func)(target, id, len, program); } GLAPI void APIENTRY GLAPI_PREFIX(ProgramParameters4dvNV)(GLenum target, GLuint index, GLsizei num, const GLdouble *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[735]; + mapi_func _func = ((const mapi_func *) _tbl)[749]; ((void (APIENTRY *)(GLenum target, GLuint index, GLsizei num, const GLdouble *params)) _func)(target, index, num, params); } GLAPI void APIENTRY GLAPI_PREFIX(ProgramParameters4fvNV)(GLenum target, GLuint index, GLsizei num, const GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[736]; + mapi_func _func = ((const mapi_func *) _tbl)[750]; ((void (APIENTRY *)(GLenum target, GLuint index, GLsizei num, const GLfloat *params)) _func)(target, index, num, params); } GLAPI void APIENTRY GLAPI_PREFIX(RequestResidentProgramsNV)(GLsizei n, const GLuint *ids) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[737]; + mapi_func _func = ((const mapi_func *) _tbl)[751]; ((void (APIENTRY *)(GLsizei n, const GLuint *ids)) _func)(n, ids); } GLAPI void APIENTRY GLAPI_PREFIX(TrackMatrixNV)(GLenum target, GLuint address, GLenum matrix, GLenum transform) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[738]; + mapi_func _func = ((const mapi_func *) _tbl)[752]; ((void (APIENTRY *)(GLenum target, GLuint address, GLenum matrix, GLenum transform)) _func)(target, address, matrix, transform); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib1dNV)(GLuint index, GLdouble x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[739]; + mapi_func _func = ((const mapi_func *) _tbl)[753]; ((void (APIENTRY *)(GLuint index, GLdouble x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib1dvNV)(GLuint index, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[740]; + mapi_func _func = ((const mapi_func *) _tbl)[754]; ((void (APIENTRY *)(GLuint index, const GLdouble *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib1fNV)(GLuint index, GLfloat x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[741]; + mapi_func _func = ((const mapi_func *) _tbl)[755]; ((void (APIENTRY *)(GLuint index, GLfloat x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib1fvNV)(GLuint index, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[742]; + mapi_func _func = ((const mapi_func *) _tbl)[756]; ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib1sNV)(GLuint index, GLshort x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[743]; + mapi_func _func = ((const mapi_func *) _tbl)[757]; ((void (APIENTRY *)(GLuint index, GLshort x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib1svNV)(GLuint index, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[744]; + mapi_func _func = ((const mapi_func *) _tbl)[758]; ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib2dNV)(GLuint index, GLdouble x, GLdouble y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[745]; + mapi_func _func = ((const mapi_func *) _tbl)[759]; ((void (APIENTRY *)(GLuint index, GLdouble x, GLdouble y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib2dvNV)(GLuint index, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[746]; + mapi_func _func = ((const mapi_func *) _tbl)[760]; ((void (APIENTRY *)(GLuint index, const GLdouble *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib2fNV)(GLuint index, GLfloat x, GLfloat y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[747]; + mapi_func _func = ((const mapi_func *) _tbl)[761]; ((void (APIENTRY *)(GLuint index, GLfloat x, GLfloat y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib2fvNV)(GLuint index, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[748]; + mapi_func _func = ((const mapi_func *) _tbl)[762]; ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib2sNV)(GLuint index, GLshort x, GLshort y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[749]; + mapi_func _func = ((const mapi_func *) _tbl)[763]; ((void (APIENTRY *)(GLuint index, GLshort x, GLshort y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib2svNV)(GLuint index, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[750]; + mapi_func _func = ((const mapi_func *) _tbl)[764]; ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib3dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[751]; + mapi_func _func = ((const mapi_func *) _tbl)[765]; ((void (APIENTRY *)(GLuint index, GLdouble x, GLdouble y, GLdouble z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib3dvNV)(GLuint index, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[752]; + mapi_func _func = ((const mapi_func *) _tbl)[766]; ((void (APIENTRY *)(GLuint index, const GLdouble *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib3fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[753]; + mapi_func _func = ((const mapi_func *) _tbl)[767]; ((void (APIENTRY *)(GLuint index, GLfloat x, GLfloat y, GLfloat z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib3fvNV)(GLuint index, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[754]; + mapi_func _func = ((const mapi_func *) _tbl)[768]; ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib3sNV)(GLuint index, GLshort x, GLshort y, GLshort z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[755]; + mapi_func _func = ((const mapi_func *) _tbl)[769]; ((void (APIENTRY *)(GLuint index, GLshort x, GLshort y, GLshort z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib3svNV)(GLuint index, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[756]; + mapi_func _func = ((const mapi_func *) _tbl)[770]; ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[757]; + mapi_func _func = ((const mapi_func *) _tbl)[771]; ((void (APIENTRY *)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4dvNV)(GLuint index, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[758]; + mapi_func _func = ((const mapi_func *) _tbl)[772]; ((void (APIENTRY *)(GLuint index, const GLdouble *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[759]; + mapi_func _func = ((const mapi_func *) _tbl)[773]; ((void (APIENTRY *)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4fvNV)(GLuint index, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[760]; + mapi_func _func = ((const mapi_func *) _tbl)[774]; ((void (APIENTRY *)(GLuint index, const GLfloat *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4sNV)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[761]; + mapi_func _func = ((const mapi_func *) _tbl)[775]; ((void (APIENTRY *)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4svNV)(GLuint index, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[762]; + mapi_func _func = ((const mapi_func *) _tbl)[776]; ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4ubNV)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[763]; + mapi_func _func = ((const mapi_func *) _tbl)[777]; ((void (APIENTRY *)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttrib4ubvNV)(GLuint index, const GLubyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[764]; + mapi_func _func = ((const mapi_func *) _tbl)[778]; ((void (APIENTRY *)(GLuint index, const GLubyte *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribPointerNV)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[765]; + mapi_func _func = ((const mapi_func *) _tbl)[779]; ((void (APIENTRY *)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(index, size, type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs1dvNV)(GLuint index, GLsizei n, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[766]; + mapi_func _func = ((const mapi_func *) _tbl)[780]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLdouble *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs1fvNV)(GLuint index, GLsizei n, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[767]; + mapi_func _func = ((const mapi_func *) _tbl)[781]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLfloat *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs1svNV)(GLuint index, GLsizei n, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[768]; + mapi_func _func = ((const mapi_func *) _tbl)[782]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLshort *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs2dvNV)(GLuint index, GLsizei n, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[769]; + mapi_func _func = ((const mapi_func *) _tbl)[783]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLdouble *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs2fvNV)(GLuint index, GLsizei n, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[770]; + mapi_func _func = ((const mapi_func *) _tbl)[784]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLfloat *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs2svNV)(GLuint index, GLsizei n, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[771]; + mapi_func _func = ((const mapi_func *) _tbl)[785]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLshort *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs3dvNV)(GLuint index, GLsizei n, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[772]; + mapi_func _func = ((const mapi_func *) _tbl)[786]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLdouble *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs3fvNV)(GLuint index, GLsizei n, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[773]; + mapi_func _func = ((const mapi_func *) _tbl)[787]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLfloat *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs3svNV)(GLuint index, GLsizei n, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[774]; + mapi_func _func = ((const mapi_func *) _tbl)[788]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLshort *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs4dvNV)(GLuint index, GLsizei n, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[775]; + mapi_func _func = ((const mapi_func *) _tbl)[789]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLdouble *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs4fvNV)(GLuint index, GLsizei n, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[776]; + mapi_func _func = ((const mapi_func *) _tbl)[790]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLfloat *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs4svNV)(GLuint index, GLsizei n, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[777]; + mapi_func _func = ((const mapi_func *) _tbl)[791]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLshort *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribs4ubvNV)(GLuint index, GLsizei n, const GLubyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[778]; + mapi_func _func = ((const mapi_func *) _tbl)[792]; ((void (APIENTRY *)(GLuint index, GLsizei n, const GLubyte *v)) _func)(index, n, v); } GLAPI void APIENTRY GLAPI_PREFIX(GetTexBumpParameterfvATI)(GLenum pname, GLfloat *param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[779]; + mapi_func _func = ((const mapi_func *) _tbl)[793]; ((void (APIENTRY *)(GLenum pname, GLfloat *param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(GetTexBumpParameterivATI)(GLenum pname, GLint *param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[780]; + mapi_func _func = ((const mapi_func *) _tbl)[794]; ((void (APIENTRY *)(GLenum pname, GLint *param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(TexBumpParameterfvATI)(GLenum pname, const GLfloat *param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[781]; + mapi_func _func = ((const mapi_func *) _tbl)[795]; ((void (APIENTRY *)(GLenum pname, const GLfloat *param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(TexBumpParameterivATI)(GLenum pname, const GLint *param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[782]; + mapi_func _func = ((const mapi_func *) _tbl)[796]; ((void (APIENTRY *)(GLenum pname, const GLint *param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(AlphaFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[783]; + mapi_func _func = ((const mapi_func *) _tbl)[797]; ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod)) _func)(op, dst, dstMod, arg1, arg1Rep, arg1Mod); } GLAPI void APIENTRY GLAPI_PREFIX(AlphaFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[784]; + mapi_func _func = ((const mapi_func *) _tbl)[798]; ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod)) _func)(op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod); } GLAPI void APIENTRY GLAPI_PREFIX(AlphaFragmentOp3ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[785]; + mapi_func _func = ((const mapi_func *) _tbl)[799]; ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod)) _func)(op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod); } GLAPI void APIENTRY GLAPI_PREFIX(BeginFragmentShaderATI)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[786]; + mapi_func _func = ((const mapi_func *) _tbl)[800]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(BindFragmentShaderATI)(GLuint id) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[787]; + mapi_func _func = ((const mapi_func *) _tbl)[801]; ((void (APIENTRY *)(GLuint id)) _func)(id); } GLAPI void APIENTRY GLAPI_PREFIX(ColorFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[788]; + mapi_func _func = ((const mapi_func *) _tbl)[802]; ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod)) _func)(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod); } GLAPI void APIENTRY GLAPI_PREFIX(ColorFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[789]; + mapi_func _func = ((const mapi_func *) _tbl)[803]; ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod)) _func)(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod); } GLAPI void APIENTRY GLAPI_PREFIX(ColorFragmentOp3ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[790]; + mapi_func _func = ((const mapi_func *) _tbl)[804]; ((void (APIENTRY *)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod)) _func)(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteFragmentShaderATI)(GLuint id) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[791]; + mapi_func _func = ((const mapi_func *) _tbl)[805]; ((void (APIENTRY *)(GLuint id)) _func)(id); } GLAPI void APIENTRY GLAPI_PREFIX(EndFragmentShaderATI)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[792]; + mapi_func _func = ((const mapi_func *) _tbl)[806]; ((void (APIENTRY *)(void)) _func)(); } GLAPI GLuint APIENTRY GLAPI_PREFIX(GenFragmentShadersATI)(GLuint range) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[793]; + mapi_func _func = ((const mapi_func *) _tbl)[807]; return ((GLuint (APIENTRY *)(GLuint range)) _func)(range); } GLAPI void APIENTRY GLAPI_PREFIX(PassTexCoordATI)(GLuint dst, GLuint coord, GLenum swizzle) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[794]; + mapi_func _func = ((const mapi_func *) _tbl)[808]; ((void (APIENTRY *)(GLuint dst, GLuint coord, GLenum swizzle)) _func)(dst, coord, swizzle); } GLAPI void APIENTRY GLAPI_PREFIX(SampleMapATI)(GLuint dst, GLuint interp, GLenum swizzle) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[795]; + mapi_func _func = ((const mapi_func *) _tbl)[809]; ((void (APIENTRY *)(GLuint dst, GLuint interp, GLenum swizzle)) _func)(dst, interp, swizzle); } GLAPI void APIENTRY GLAPI_PREFIX(SetFragmentShaderConstantATI)(GLuint dst, const GLfloat *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[796]; + mapi_func _func = ((const mapi_func *) _tbl)[810]; ((void (APIENTRY *)(GLuint dst, const GLfloat *value)) _func)(dst, value); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameteriNV)(GLenum pname, GLint param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[797]; + mapi_func _func = ((const mapi_func *) _tbl)[811]; ((void (APIENTRY *)(GLenum pname, GLint param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameteri)(GLenum pname, GLint param) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[797]; + mapi_func _func = ((const mapi_func *) _tbl)[811]; ((void (APIENTRY *)(GLenum pname, GLint param)) _func)(pname, param); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameterivNV)(GLenum pname, const GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[798]; + mapi_func _func = ((const mapi_func *) _tbl)[812]; ((void (APIENTRY *)(GLenum pname, const GLint *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(PointParameteriv)(GLenum pname, const GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[798]; + mapi_func _func = ((const mapi_func *) _tbl)[812]; ((void (APIENTRY *)(GLenum pname, const GLint *params)) _func)(pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteVertexArrays)(GLsizei n, const GLuint *arrays) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[801]; + mapi_func _func = ((const mapi_func *) _tbl)[815]; ((void (APIENTRY *)(GLsizei n, const GLuint *arrays)) _func)(n, arrays); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsVertexArray)(GLuint array) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[803]; + mapi_func _func = ((const mapi_func *) _tbl)[817]; return ((GLboolean (APIENTRY *)(GLuint array)) _func)(array); } GLAPI void APIENTRY GLAPI_PREFIX(GetProgramNamedParameterdvNV)(GLuint id, GLsizei len, const GLubyte *name, GLdouble *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[804]; + mapi_func _func = ((const mapi_func *) _tbl)[818]; ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, GLdouble *params)) _func)(id, len, name, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetProgramNamedParameterfvNV)(GLuint id, GLsizei len, const GLubyte *name, GLfloat *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[805]; + mapi_func _func = ((const mapi_func *) _tbl)[819]; ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, GLfloat *params)) _func)(id, len, name, params); } GLAPI void APIENTRY GLAPI_PREFIX(ProgramNamedParameter4dNV)(GLuint id, GLsizei len, const GLubyte *name, GLdouble x, GLdouble y, GLdouble z, GLdouble w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[806]; + mapi_func _func = ((const mapi_func *) _tbl)[820]; ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, GLdouble x, GLdouble y, GLdouble z, GLdouble w)) _func)(id, len, name, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(ProgramNamedParameter4dvNV)(GLuint id, GLsizei len, const GLubyte *name, const GLdouble *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[807]; + mapi_func _func = ((const mapi_func *) _tbl)[821]; ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, const GLdouble *v)) _func)(id, len, name, v); } GLAPI void APIENTRY GLAPI_PREFIX(ProgramNamedParameter4fNV)(GLuint id, GLsizei len, const GLubyte *name, GLfloat x, GLfloat y, GLfloat z, GLfloat w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[808]; + mapi_func _func = ((const mapi_func *) _tbl)[822]; ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, GLfloat x, GLfloat y, GLfloat z, GLfloat w)) _func)(id, len, name, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(ProgramNamedParameter4fvNV)(GLuint id, GLsizei len, const GLubyte *name, const GLfloat *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[809]; + mapi_func _func = ((const mapi_func *) _tbl)[823]; ((void (APIENTRY *)(GLuint id, GLsizei len, const GLubyte *name, const GLfloat *v)) _func)(id, len, name, v); } GLAPI void APIENTRY GLAPI_PREFIX(PrimitiveRestartIndexNV)(GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[810]; + mapi_func _func = ((const mapi_func *) _tbl)[824]; ((void (APIENTRY *)(GLuint index)) _func)(index); } GLAPI void APIENTRY GLAPI_PREFIX(PrimitiveRestartIndex)(GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[810]; + mapi_func _func = ((const mapi_func *) _tbl)[824]; ((void (APIENTRY *)(GLuint index)) _func)(index); } GLAPI void APIENTRY GLAPI_PREFIX(PrimitiveRestartNV)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[811]; + mapi_func _func = ((const mapi_func *) _tbl)[825]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(BlendEquationSeparate)(GLenum modeRGB, GLenum modeA) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[859]; + mapi_func _func = ((const mapi_func *) _tbl)[873]; ((void (APIENTRY *)(GLenum modeRGB, GLenum modeA)) _func)(modeRGB, modeA); } GLAPI void APIENTRY GLAPI_PREFIX(BindFramebufferEXT)(GLenum target, GLuint framebuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[860]; + mapi_func _func = ((const mapi_func *) _tbl)[874]; ((void (APIENTRY *)(GLenum target, GLuint framebuffer)) _func)(target, framebuffer); } GLAPI void APIENTRY GLAPI_PREFIX(BindFramebuffer)(GLenum target, GLuint framebuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[860]; + mapi_func _func = ((const mapi_func *) _tbl)[874]; ((void (APIENTRY *)(GLenum target, GLuint framebuffer)) _func)(target, framebuffer); } GLAPI void APIENTRY GLAPI_PREFIX(BindRenderbufferEXT)(GLenum target, GLuint renderbuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[861]; + mapi_func _func = ((const mapi_func *) _tbl)[875]; ((void (APIENTRY *)(GLenum target, GLuint renderbuffer)) _func)(target, renderbuffer); } GLAPI void APIENTRY GLAPI_PREFIX(BindRenderbuffer)(GLenum target, GLuint renderbuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[861]; + mapi_func _func = ((const mapi_func *) _tbl)[875]; ((void (APIENTRY *)(GLenum target, GLuint renderbuffer)) _func)(target, renderbuffer); } GLAPI GLenum APIENTRY GLAPI_PREFIX(CheckFramebufferStatusEXT)(GLenum target) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[862]; + mapi_func _func = ((const mapi_func *) _tbl)[876]; return ((GLenum (APIENTRY *)(GLenum target)) _func)(target); } GLAPI GLenum APIENTRY GLAPI_PREFIX(CheckFramebufferStatus)(GLenum target) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[862]; + mapi_func _func = ((const mapi_func *) _tbl)[876]; return ((GLenum (APIENTRY *)(GLenum target)) _func)(target); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteFramebuffersEXT)(GLsizei n, const GLuint *framebuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[863]; + mapi_func _func = ((const mapi_func *) _tbl)[877]; ((void (APIENTRY *)(GLsizei n, const GLuint *framebuffers)) _func)(n, framebuffers); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteFramebuffers)(GLsizei n, const GLuint *framebuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[863]; + mapi_func _func = ((const mapi_func *) _tbl)[877]; ((void (APIENTRY *)(GLsizei n, const GLuint *framebuffers)) _func)(n, framebuffers); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteRenderbuffersEXT)(GLsizei n, const GLuint *renderbuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[864]; + mapi_func _func = ((const mapi_func *) _tbl)[878]; ((void (APIENTRY *)(GLsizei n, const GLuint *renderbuffers)) _func)(n, renderbuffers); } GLAPI void APIENTRY GLAPI_PREFIX(DeleteRenderbuffers)(GLsizei n, const GLuint *renderbuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[864]; + mapi_func _func = ((const mapi_func *) _tbl)[878]; ((void (APIENTRY *)(GLsizei n, const GLuint *renderbuffers)) _func)(n, renderbuffers); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferRenderbufferEXT)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[865]; + mapi_func _func = ((const mapi_func *) _tbl)[879]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)) _func)(target, attachment, renderbuffertarget, renderbuffer); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferRenderbuffer)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[865]; + mapi_func _func = ((const mapi_func *) _tbl)[879]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)) _func)(target, attachment, renderbuffertarget, renderbuffer); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTexture1DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[866]; + mapi_func _func = ((const mapi_func *) _tbl)[880]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)) _func)(target, attachment, textarget, texture, level); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTexture1D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[866]; + mapi_func _func = ((const mapi_func *) _tbl)[880]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)) _func)(target, attachment, textarget, texture, level); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTexture2DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[867]; + mapi_func _func = ((const mapi_func *) _tbl)[881]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)) _func)(target, attachment, textarget, texture, level); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTexture2D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[867]; + mapi_func _func = ((const mapi_func *) _tbl)[881]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)) _func)(target, attachment, textarget, texture, level); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTexture3DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[868]; + mapi_func _func = ((const mapi_func *) _tbl)[882]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)) _func)(target, attachment, textarget, texture, level, zoffset); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTexture3D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[868]; + mapi_func _func = ((const mapi_func *) _tbl)[882]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)) _func)(target, attachment, textarget, texture, level, zoffset); } GLAPI void APIENTRY GLAPI_PREFIX(GenFramebuffersEXT)(GLsizei n, GLuint *framebuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[869]; + mapi_func _func = ((const mapi_func *) _tbl)[883]; ((void (APIENTRY *)(GLsizei n, GLuint *framebuffers)) _func)(n, framebuffers); } GLAPI void APIENTRY GLAPI_PREFIX(GenFramebuffers)(GLsizei n, GLuint *framebuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[869]; + mapi_func _func = ((const mapi_func *) _tbl)[883]; ((void (APIENTRY *)(GLsizei n, GLuint *framebuffers)) _func)(n, framebuffers); } GLAPI void APIENTRY GLAPI_PREFIX(GenRenderbuffersEXT)(GLsizei n, GLuint *renderbuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[870]; + mapi_func _func = ((const mapi_func *) _tbl)[884]; ((void (APIENTRY *)(GLsizei n, GLuint *renderbuffers)) _func)(n, renderbuffers); } GLAPI void APIENTRY GLAPI_PREFIX(GenRenderbuffers)(GLsizei n, GLuint *renderbuffers) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[870]; + mapi_func _func = ((const mapi_func *) _tbl)[884]; ((void (APIENTRY *)(GLsizei n, GLuint *renderbuffers)) _func)(n, renderbuffers); } GLAPI void APIENTRY GLAPI_PREFIX(GenerateMipmapEXT)(GLenum target) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[871]; + mapi_func _func = ((const mapi_func *) _tbl)[885]; ((void (APIENTRY *)(GLenum target)) _func)(target); } GLAPI void APIENTRY GLAPI_PREFIX(GenerateMipmap)(GLenum target) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[871]; + mapi_func _func = ((const mapi_func *) _tbl)[885]; ((void (APIENTRY *)(GLenum target)) _func)(target); } GLAPI void APIENTRY GLAPI_PREFIX(GetFramebufferAttachmentParameterivEXT)(GLenum target, GLenum attachment, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[872]; + mapi_func _func = ((const mapi_func *) _tbl)[886]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum pname, GLint *params)) _func)(target, attachment, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetFramebufferAttachmentParameteriv)(GLenum target, GLenum attachment, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[872]; + mapi_func _func = ((const mapi_func *) _tbl)[886]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLenum pname, GLint *params)) _func)(target, attachment, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetRenderbufferParameterivEXT)(GLenum target, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[873]; + mapi_func _func = ((const mapi_func *) _tbl)[887]; ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetRenderbufferParameteriv)(GLenum target, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[873]; + mapi_func _func = ((const mapi_func *) _tbl)[887]; ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsFramebufferEXT)(GLuint framebuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[874]; + mapi_func _func = ((const mapi_func *) _tbl)[888]; return ((GLboolean (APIENTRY *)(GLuint framebuffer)) _func)(framebuffer); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsFramebuffer)(GLuint framebuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[874]; + mapi_func _func = ((const mapi_func *) _tbl)[888]; return ((GLboolean (APIENTRY *)(GLuint framebuffer)) _func)(framebuffer); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsRenderbufferEXT)(GLuint renderbuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[875]; + mapi_func _func = ((const mapi_func *) _tbl)[889]; return ((GLboolean (APIENTRY *)(GLuint renderbuffer)) _func)(renderbuffer); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsRenderbuffer)(GLuint renderbuffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[875]; + mapi_func _func = ((const mapi_func *) _tbl)[889]; return ((GLboolean (APIENTRY *)(GLuint renderbuffer)) _func)(renderbuffer); } GLAPI void APIENTRY GLAPI_PREFIX(RenderbufferStorageEXT)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[876]; + mapi_func _func = ((const mapi_func *) _tbl)[890]; ((void (APIENTRY *)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)) _func)(target, internalformat, width, height); } GLAPI void APIENTRY GLAPI_PREFIX(RenderbufferStorage)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[876]; + mapi_func _func = ((const mapi_func *) _tbl)[890]; ((void (APIENTRY *)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)) _func)(target, internalformat, width, height); } GLAPI void APIENTRY GLAPI_PREFIX(BlitFramebuffer)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[877]; + mapi_func _func = ((const mapi_func *) _tbl)[891]; ((void (APIENTRY *)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)) _func)(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter); } GLAPI void APIENTRY GLAPI_PREFIX(BindFragDataLocationEXT)(GLuint program, GLuint colorNumber, const GLchar *name) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[880]; + mapi_func _func = ((const mapi_func *) _tbl)[894]; ((void (APIENTRY *)(GLuint program, GLuint colorNumber, const GLchar *name)) _func)(program, colorNumber, name); } GLAPI void APIENTRY GLAPI_PREFIX(BindFragDataLocation)(GLuint program, GLuint colorNumber, const GLchar *name) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[880]; + mapi_func _func = ((const mapi_func *) _tbl)[894]; ((void (APIENTRY *)(GLuint program, GLuint colorNumber, const GLchar *name)) _func)(program, colorNumber, name); } GLAPI GLint APIENTRY GLAPI_PREFIX(GetFragDataLocationEXT)(GLuint program, const GLchar *name) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[881]; + mapi_func _func = ((const mapi_func *) _tbl)[895]; return ((GLint (APIENTRY *)(GLuint program, const GLchar *name)) _func)(program, name); } GLAPI GLint APIENTRY GLAPI_PREFIX(GetFragDataLocation)(GLuint program, const GLchar *name) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[881]; + mapi_func _func = ((const mapi_func *) _tbl)[895]; return ((GLint (APIENTRY *)(GLuint program, const GLchar *name)) _func)(program, name); } GLAPI void APIENTRY GLAPI_PREFIX(GetUniformuivEXT)(GLuint program, GLint location, GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[882]; + mapi_func _func = ((const mapi_func *) _tbl)[896]; ((void (APIENTRY *)(GLuint program, GLint location, GLuint *params)) _func)(program, location, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetUniformuiv)(GLuint program, GLint location, GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[882]; + mapi_func _func = ((const mapi_func *) _tbl)[896]; ((void (APIENTRY *)(GLuint program, GLint location, GLuint *params)) _func)(program, location, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribIivEXT)(GLuint index, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[883]; + mapi_func _func = ((const mapi_func *) _tbl)[897]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLint *params)) _func)(index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribIiv)(GLuint index, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[883]; + mapi_func _func = ((const mapi_func *) _tbl)[897]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLint *params)) _func)(index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribIuivEXT)(GLuint index, GLenum pname, GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[884]; + mapi_func _func = ((const mapi_func *) _tbl)[898]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLuint *params)) _func)(index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetVertexAttribIuiv)(GLuint index, GLenum pname, GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[884]; + mapi_func _func = ((const mapi_func *) _tbl)[898]; ((void (APIENTRY *)(GLuint index, GLenum pname, GLuint *params)) _func)(index, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform1uiEXT)(GLint location, GLuint x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[885]; + mapi_func _func = ((const mapi_func *) _tbl)[899]; ((void (APIENTRY *)(GLint location, GLuint x)) _func)(location, x); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform1ui)(GLint location, GLuint x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[885]; + mapi_func _func = ((const mapi_func *) _tbl)[899]; ((void (APIENTRY *)(GLint location, GLuint x)) _func)(location, x); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform1uivEXT)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[886]; + mapi_func _func = ((const mapi_func *) _tbl)[900]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform1uiv)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[886]; + mapi_func _func = ((const mapi_func *) _tbl)[900]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform2uiEXT)(GLint location, GLuint x, GLuint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[887]; + mapi_func _func = ((const mapi_func *) _tbl)[901]; ((void (APIENTRY *)(GLint location, GLuint x, GLuint y)) _func)(location, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform2ui)(GLint location, GLuint x, GLuint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[887]; + mapi_func _func = ((const mapi_func *) _tbl)[901]; ((void (APIENTRY *)(GLint location, GLuint x, GLuint y)) _func)(location, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform2uivEXT)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[888]; + mapi_func _func = ((const mapi_func *) _tbl)[902]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform2uiv)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[888]; + mapi_func _func = ((const mapi_func *) _tbl)[902]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform3uiEXT)(GLint location, GLuint x, GLuint y, GLuint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[889]; + mapi_func _func = ((const mapi_func *) _tbl)[903]; ((void (APIENTRY *)(GLint location, GLuint x, GLuint y, GLuint z)) _func)(location, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform3ui)(GLint location, GLuint x, GLuint y, GLuint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[889]; + mapi_func _func = ((const mapi_func *) _tbl)[903]; ((void (APIENTRY *)(GLint location, GLuint x, GLuint y, GLuint z)) _func)(location, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform3uivEXT)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[890]; + mapi_func _func = ((const mapi_func *) _tbl)[904]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform3uiv)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[890]; + mapi_func _func = ((const mapi_func *) _tbl)[904]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform4uiEXT)(GLint location, GLuint x, GLuint y, GLuint z, GLuint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[891]; + mapi_func _func = ((const mapi_func *) _tbl)[905]; ((void (APIENTRY *)(GLint location, GLuint x, GLuint y, GLuint z, GLuint w)) _func)(location, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform4ui)(GLint location, GLuint x, GLuint y, GLuint z, GLuint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[891]; + mapi_func _func = ((const mapi_func *) _tbl)[905]; ((void (APIENTRY *)(GLint location, GLuint x, GLuint y, GLuint z, GLuint w)) _func)(location, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform4uivEXT)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[892]; + mapi_func _func = ((const mapi_func *) _tbl)[906]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(Uniform4uiv)(GLint location, GLsizei count, const GLuint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[892]; + mapi_func _func = ((const mapi_func *) _tbl)[906]; ((void (APIENTRY *)(GLint location, GLsizei count, const GLuint *value)) _func)(location, count, value); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1iEXT)(GLuint index, GLint x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[893]; + mapi_func _func = ((const mapi_func *) _tbl)[907]; ((void (APIENTRY *)(GLuint index, GLint x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1i)(GLuint index, GLint x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[893]; + mapi_func _func = ((const mapi_func *) _tbl)[907]; ((void (APIENTRY *)(GLuint index, GLint x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1ivEXT)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[894]; + mapi_func _func = ((const mapi_func *) _tbl)[908]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1iv)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[894]; + mapi_func _func = ((const mapi_func *) _tbl)[908]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1uiEXT)(GLuint index, GLuint x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[895]; + mapi_func _func = ((const mapi_func *) _tbl)[909]; ((void (APIENTRY *)(GLuint index, GLuint x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1ui)(GLuint index, GLuint x) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[895]; + mapi_func _func = ((const mapi_func *) _tbl)[909]; ((void (APIENTRY *)(GLuint index, GLuint x)) _func)(index, x); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1uivEXT)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[896]; + mapi_func _func = ((const mapi_func *) _tbl)[910]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI1uiv)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[896]; + mapi_func _func = ((const mapi_func *) _tbl)[910]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2iEXT)(GLuint index, GLint x, GLint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[897]; + mapi_func _func = ((const mapi_func *) _tbl)[911]; ((void (APIENTRY *)(GLuint index, GLint x, GLint y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2i)(GLuint index, GLint x, GLint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[897]; + mapi_func _func = ((const mapi_func *) _tbl)[911]; ((void (APIENTRY *)(GLuint index, GLint x, GLint y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2ivEXT)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[898]; + mapi_func _func = ((const mapi_func *) _tbl)[912]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2iv)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[898]; + mapi_func _func = ((const mapi_func *) _tbl)[912]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2uiEXT)(GLuint index, GLuint x, GLuint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[899]; + mapi_func _func = ((const mapi_func *) _tbl)[913]; ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2ui)(GLuint index, GLuint x, GLuint y) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[899]; + mapi_func _func = ((const mapi_func *) _tbl)[913]; ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y)) _func)(index, x, y); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2uivEXT)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[900]; + mapi_func _func = ((const mapi_func *) _tbl)[914]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI2uiv)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[900]; + mapi_func _func = ((const mapi_func *) _tbl)[914]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3iEXT)(GLuint index, GLint x, GLint y, GLint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[901]; + mapi_func _func = ((const mapi_func *) _tbl)[915]; ((void (APIENTRY *)(GLuint index, GLint x, GLint y, GLint z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3i)(GLuint index, GLint x, GLint y, GLint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[901]; + mapi_func _func = ((const mapi_func *) _tbl)[915]; ((void (APIENTRY *)(GLuint index, GLint x, GLint y, GLint z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3ivEXT)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[902]; + mapi_func _func = ((const mapi_func *) _tbl)[916]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3iv)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[902]; + mapi_func _func = ((const mapi_func *) _tbl)[916]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3uiEXT)(GLuint index, GLuint x, GLuint y, GLuint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[903]; + mapi_func _func = ((const mapi_func *) _tbl)[917]; ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y, GLuint z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3ui)(GLuint index, GLuint x, GLuint y, GLuint z) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[903]; + mapi_func _func = ((const mapi_func *) _tbl)[917]; ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y, GLuint z)) _func)(index, x, y, z); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3uivEXT)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[904]; + mapi_func _func = ((const mapi_func *) _tbl)[918]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI3uiv)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[904]; + mapi_func _func = ((const mapi_func *) _tbl)[918]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4bvEXT)(GLuint index, const GLbyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[905]; + mapi_func _func = ((const mapi_func *) _tbl)[919]; ((void (APIENTRY *)(GLuint index, const GLbyte *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4bv)(GLuint index, const GLbyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[905]; + mapi_func _func = ((const mapi_func *) _tbl)[919]; ((void (APIENTRY *)(GLuint index, const GLbyte *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4iEXT)(GLuint index, GLint x, GLint y, GLint z, GLint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[906]; + mapi_func _func = ((const mapi_func *) _tbl)[920]; ((void (APIENTRY *)(GLuint index, GLint x, GLint y, GLint z, GLint w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4i)(GLuint index, GLint x, GLint y, GLint z, GLint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[906]; + mapi_func _func = ((const mapi_func *) _tbl)[920]; ((void (APIENTRY *)(GLuint index, GLint x, GLint y, GLint z, GLint w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4ivEXT)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[907]; + mapi_func _func = ((const mapi_func *) _tbl)[921]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4iv)(GLuint index, const GLint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[907]; + mapi_func _func = ((const mapi_func *) _tbl)[921]; ((void (APIENTRY *)(GLuint index, const GLint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4svEXT)(GLuint index, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[908]; + mapi_func _func = ((const mapi_func *) _tbl)[922]; ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4sv)(GLuint index, const GLshort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[908]; + mapi_func _func = ((const mapi_func *) _tbl)[922]; ((void (APIENTRY *)(GLuint index, const GLshort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4ubvEXT)(GLuint index, const GLubyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[909]; + mapi_func _func = ((const mapi_func *) _tbl)[923]; ((void (APIENTRY *)(GLuint index, const GLubyte *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4ubv)(GLuint index, const GLubyte *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[909]; + mapi_func _func = ((const mapi_func *) _tbl)[923]; ((void (APIENTRY *)(GLuint index, const GLubyte *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4uiEXT)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[910]; + mapi_func _func = ((const mapi_func *) _tbl)[924]; ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4ui)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[910]; + mapi_func _func = ((const mapi_func *) _tbl)[924]; ((void (APIENTRY *)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)) _func)(index, x, y, z, w); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4uivEXT)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[911]; + mapi_func _func = ((const mapi_func *) _tbl)[925]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4uiv)(GLuint index, const GLuint *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[911]; + mapi_func _func = ((const mapi_func *) _tbl)[925]; ((void (APIENTRY *)(GLuint index, const GLuint *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4usvEXT)(GLuint index, const GLushort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[912]; + mapi_func _func = ((const mapi_func *) _tbl)[926]; ((void (APIENTRY *)(GLuint index, const GLushort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribI4usv)(GLuint index, const GLushort *v) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[912]; + mapi_func _func = ((const mapi_func *) _tbl)[926]; ((void (APIENTRY *)(GLuint index, const GLushort *v)) _func)(index, v); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribIPointerEXT)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[913]; + mapi_func _func = ((const mapi_func *) _tbl)[927]; ((void (APIENTRY *)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(index, size, type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(VertexAttribIPointer)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[913]; + mapi_func _func = ((const mapi_func *) _tbl)[927]; ((void (APIENTRY *)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)) _func)(index, size, type, stride, pointer); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTextureLayerEXT)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[914]; + mapi_func _func = ((const mapi_func *) _tbl)[928]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)) _func)(target, attachment, texture, level, layer); } GLAPI void APIENTRY GLAPI_PREFIX(FramebufferTextureLayer)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[914]; + mapi_func _func = ((const mapi_func *) _tbl)[928]; ((void (APIENTRY *)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)) _func)(target, attachment, texture, level, layer); } GLAPI void APIENTRY GLAPI_PREFIX(ColorMaskIndexedEXT)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[915]; + mapi_func _func = ((const mapi_func *) _tbl)[929]; ((void (APIENTRY *)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a)) _func)(buf, r, g, b, a); } GLAPI void APIENTRY GLAPI_PREFIX(ColorMaski)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[915]; + mapi_func _func = ((const mapi_func *) _tbl)[929]; ((void (APIENTRY *)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a)) _func)(buf, r, g, b, a); } GLAPI void APIENTRY GLAPI_PREFIX(DisableIndexedEXT)(GLenum target, GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[916]; + mapi_func _func = ((const mapi_func *) _tbl)[930]; ((void (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index); } GLAPI void APIENTRY GLAPI_PREFIX(Disablei)(GLenum target, GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[916]; + mapi_func _func = ((const mapi_func *) _tbl)[930]; ((void (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index); } GLAPI void APIENTRY GLAPI_PREFIX(EnableIndexedEXT)(GLenum target, GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[917]; + mapi_func _func = ((const mapi_func *) _tbl)[931]; ((void (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index); } GLAPI void APIENTRY GLAPI_PREFIX(Enablei)(GLenum target, GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[917]; + mapi_func _func = ((const mapi_func *) _tbl)[931]; ((void (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index); } GLAPI void APIENTRY GLAPI_PREFIX(GetBooleanIndexedvEXT)(GLenum value, GLuint index, GLboolean *data) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[918]; + mapi_func _func = ((const mapi_func *) _tbl)[932]; ((void (APIENTRY *)(GLenum value, GLuint index, GLboolean *data)) _func)(value, index, data); } GLAPI void APIENTRY GLAPI_PREFIX(GetBooleani_v)(GLenum value, GLuint index, GLboolean *data) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[918]; + mapi_func _func = ((const mapi_func *) _tbl)[932]; ((void (APIENTRY *)(GLenum value, GLuint index, GLboolean *data)) _func)(value, index, data); } GLAPI void APIENTRY GLAPI_PREFIX(GetIntegerIndexedvEXT)(GLenum value, GLuint index, GLint *data) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[919]; + mapi_func _func = ((const mapi_func *) _tbl)[933]; ((void (APIENTRY *)(GLenum value, GLuint index, GLint *data)) _func)(value, index, data); } GLAPI void APIENTRY GLAPI_PREFIX(GetIntegeri_v)(GLenum value, GLuint index, GLint *data) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[919]; + mapi_func _func = ((const mapi_func *) _tbl)[933]; ((void (APIENTRY *)(GLenum value, GLuint index, GLint *data)) _func)(value, index, data); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsEnabledIndexedEXT)(GLenum target, GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[920]; + mapi_func _func = ((const mapi_func *) _tbl)[934]; return ((GLboolean (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index); } GLAPI GLboolean APIENTRY GLAPI_PREFIX(IsEnabledi)(GLenum target, GLuint index) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[920]; + mapi_func _func = ((const mapi_func *) _tbl)[934]; return ((GLboolean (APIENTRY *)(GLenum target, GLuint index)) _func)(target, index); } GLAPI void APIENTRY GLAPI_PREFIX(ClearColorIiEXT)(GLint r, GLint g, GLint b, GLint a) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[921]; + mapi_func _func = ((const mapi_func *) _tbl)[935]; ((void (APIENTRY *)(GLint r, GLint g, GLint b, GLint a)) _func)(r, g, b, a); } GLAPI void APIENTRY GLAPI_PREFIX(ClearColorIuiEXT)(GLuint r, GLuint g, GLuint b, GLuint a) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[922]; + mapi_func _func = ((const mapi_func *) _tbl)[936]; ((void (APIENTRY *)(GLuint r, GLuint g, GLuint b, GLuint a)) _func)(r, g, b, a); } GLAPI void APIENTRY GLAPI_PREFIX(GetTexParameterIivEXT)(GLenum target, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[923]; + mapi_func _func = ((const mapi_func *) _tbl)[937]; ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetTexParameterIiv)(GLenum target, GLenum pname, GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[923]; + mapi_func _func = ((const mapi_func *) _tbl)[937]; ((void (APIENTRY *)(GLenum target, GLenum pname, GLint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetTexParameterIuivEXT)(GLenum target, GLenum pname, GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[924]; + mapi_func _func = ((const mapi_func *) _tbl)[938]; ((void (APIENTRY *)(GLenum target, GLenum pname, GLuint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(GetTexParameterIuiv)(GLenum target, GLenum pname, GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[924]; + mapi_func _func = ((const mapi_func *) _tbl)[938]; ((void (APIENTRY *)(GLenum target, GLenum pname, GLuint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(TexParameterIivEXT)(GLenum target, GLenum pname, const GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[925]; + mapi_func _func = ((const mapi_func *) _tbl)[939]; ((void (APIENTRY *)(GLenum target, GLenum pname, const GLint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(TexParameterIiv)(GLenum target, GLenum pname, const GLint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[925]; + mapi_func _func = ((const mapi_func *) _tbl)[939]; ((void (APIENTRY *)(GLenum target, GLenum pname, const GLint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(TexParameterIuivEXT)(GLenum target, GLenum pname, const GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[926]; + mapi_func _func = ((const mapi_func *) _tbl)[940]; ((void (APIENTRY *)(GLenum target, GLenum pname, const GLuint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(TexParameterIuiv)(GLenum target, GLenum pname, const GLuint *params) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[926]; + mapi_func _func = ((const mapi_func *) _tbl)[940]; ((void (APIENTRY *)(GLenum target, GLenum pname, const GLuint *params)) _func)(target, pname, params); } GLAPI void APIENTRY GLAPI_PREFIX(BeginConditionalRenderNV)(GLuint query, GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[927]; + mapi_func _func = ((const mapi_func *) _tbl)[941]; ((void (APIENTRY *)(GLuint query, GLenum mode)) _func)(query, mode); } GLAPI void APIENTRY GLAPI_PREFIX(BeginConditionalRender)(GLuint query, GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[927]; + mapi_func _func = ((const mapi_func *) _tbl)[941]; ((void (APIENTRY *)(GLuint query, GLenum mode)) _func)(query, mode); } GLAPI void APIENTRY GLAPI_PREFIX(EndConditionalRenderNV)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[928]; + mapi_func _func = ((const mapi_func *) _tbl)[942]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(EndConditionalRender)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[928]; + mapi_func _func = ((const mapi_func *) _tbl)[942]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(BeginTransformFeedbackEXT)(GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[929]; + mapi_func _func = ((const mapi_func *) _tbl)[943]; ((void (APIENTRY *)(GLenum mode)) _func)(mode); } GLAPI void APIENTRY GLAPI_PREFIX(BeginTransformFeedback)(GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[929]; + mapi_func _func = ((const mapi_func *) _tbl)[943]; ((void (APIENTRY *)(GLenum mode)) _func)(mode); } GLAPI void APIENTRY GLAPI_PREFIX(BindBufferBaseEXT)(GLenum target, GLuint index, GLuint buffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[930]; + mapi_func _func = ((const mapi_func *) _tbl)[944]; ((void (APIENTRY *)(GLenum target, GLuint index, GLuint buffer)) _func)(target, index, buffer); } GLAPI void APIENTRY GLAPI_PREFIX(BindBufferBase)(GLenum target, GLuint index, GLuint buffer) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[930]; + mapi_func _func = ((const mapi_func *) _tbl)[944]; ((void (APIENTRY *)(GLenum target, GLuint index, GLuint buffer)) _func)(target, index, buffer); } GLAPI void APIENTRY GLAPI_PREFIX(BindBufferOffsetEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[931]; + mapi_func _func = ((const mapi_func *) _tbl)[945]; ((void (APIENTRY *)(GLenum target, GLuint index, GLuint buffer, GLintptr offset)) _func)(target, index, buffer, offset); } GLAPI void APIENTRY GLAPI_PREFIX(BindBufferRangeEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[932]; + mapi_func _func = ((const mapi_func *) _tbl)[946]; ((void (APIENTRY *)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)) _func)(target, index, buffer, offset, size); } GLAPI void APIENTRY GLAPI_PREFIX(BindBufferRange)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[932]; + mapi_func _func = ((const mapi_func *) _tbl)[946]; ((void (APIENTRY *)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)) _func)(target, index, buffer, offset, size); } GLAPI void APIENTRY GLAPI_PREFIX(EndTransformFeedbackEXT)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[933]; + mapi_func _func = ((const mapi_func *) _tbl)[947]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(EndTransformFeedback)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[933]; + mapi_func _func = ((const mapi_func *) _tbl)[947]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(GetTransformFeedbackVaryingEXT)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[934]; + mapi_func _func = ((const mapi_func *) _tbl)[948]; ((void (APIENTRY *)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)) _func)(program, index, bufSize, length, size, type, name); } GLAPI void APIENTRY GLAPI_PREFIX(GetTransformFeedbackVarying)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[934]; + mapi_func _func = ((const mapi_func *) _tbl)[948]; ((void (APIENTRY *)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)) _func)(program, index, bufSize, length, size, type, name); } GLAPI void APIENTRY GLAPI_PREFIX(TransformFeedbackVaryingsEXT)(GLuint program, GLsizei count, const char **varyings, GLenum bufferMode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[935]; + mapi_func _func = ((const mapi_func *) _tbl)[949]; ((void (APIENTRY *)(GLuint program, GLsizei count, const char **varyings, GLenum bufferMode)) _func)(program, count, varyings, bufferMode); } GLAPI void APIENTRY GLAPI_PREFIX(TransformFeedbackVaryings)(GLuint program, GLsizei count, const GLchar* *varyings, GLenum bufferMode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[935]; + mapi_func _func = ((const mapi_func *) _tbl)[949]; ((void (APIENTRY *)(GLuint program, GLsizei count, const GLchar* *varyings, GLenum bufferMode)) _func)(program, count, varyings, bufferMode); } GLAPI void APIENTRY GLAPI_PREFIX(ProvokingVertexEXT)(GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[936]; + mapi_func _func = ((const mapi_func *) _tbl)[950]; ((void (APIENTRY *)(GLenum mode)) _func)(mode); } GLAPI void APIENTRY GLAPI_PREFIX(ProvokingVertex)(GLenum mode) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[936]; + mapi_func _func = ((const mapi_func *) _tbl)[950]; ((void (APIENTRY *)(GLenum mode)) _func)(mode); } GLAPI void APIENTRY GLAPI_PREFIX(GetObjectParameterivAPPLE)(GLenum objectType, GLuint name, GLenum pname, GLint *value) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[939]; + mapi_func _func = ((const mapi_func *) _tbl)[953]; ((void (APIENTRY *)(GLenum objectType, GLuint name, GLenum pname, GLint *value)) _func)(objectType, name, pname, value); } GLAPI GLenum APIENTRY GLAPI_PREFIX(ObjectPurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[940]; + mapi_func _func = ((const mapi_func *) _tbl)[954]; return ((GLenum (APIENTRY *)(GLenum objectType, GLuint name, GLenum option)) _func)(objectType, name, option); } GLAPI GLenum APIENTRY GLAPI_PREFIX(ObjectUnpurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[941]; + mapi_func _func = ((const mapi_func *) _tbl)[955]; return ((GLenum (APIENTRY *)(GLenum objectType, GLuint name, GLenum option)) _func)(objectType, name, option); } GLAPI void APIENTRY GLAPI_PREFIX(ActiveProgramEXT)(GLuint program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[942]; + mapi_func _func = ((const mapi_func *) _tbl)[956]; ((void (APIENTRY *)(GLuint program)) _func)(program); } GLAPI GLuint APIENTRY GLAPI_PREFIX(CreateShaderProgramEXT)(GLenum type, const GLchar *string) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[943]; + mapi_func _func = ((const mapi_func *) _tbl)[957]; return ((GLuint (APIENTRY *)(GLenum type, const GLchar *string)) _func)(type, string); } GLAPI void APIENTRY GLAPI_PREFIX(UseShaderProgramEXT)(GLenum type, GLuint program) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[944]; + mapi_func _func = ((const mapi_func *) _tbl)[958]; ((void (APIENTRY *)(GLenum type, GLuint program)) _func)(type, program); } GLAPI void APIENTRY GLAPI_PREFIX(TextureBarrierNV)(void) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[945]; + mapi_func _func = ((const mapi_func *) _tbl)[959]; ((void (APIENTRY *)(void)) _func)(); } GLAPI void APIENTRY GLAPI_PREFIX(EGLImageTargetRenderbufferStorageOES)(GLenum target, GLvoid *writeOffset) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[951]; + mapi_func _func = ((const mapi_func *) _tbl)[965]; ((void (APIENTRY *)(GLenum target, GLvoid *writeOffset)) _func)(target, writeOffset); } GLAPI void APIENTRY GLAPI_PREFIX(EGLImageTargetTexture2DOES)(GLenum target, GLvoid *writeOffset) { const struct mapi_table *_tbl = entry_current_get(); - mapi_func _func = ((const mapi_func *) _tbl)[952]; + mapi_func _func = ((const mapi_func *) _tbl)[966]; ((void (APIENTRY *)(GLenum target, GLvoid *writeOffset)) _func)(target, writeOffset); } @@ -11921,65 +12033,107 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendFuncSeparateiARB))"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendFunciARB))"\n" "\t"STUB_ASM_CODE("599")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindTransformFeedback))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindSampler))"\n" "\t"STUB_ASM_CODE("600")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteTransformFeedbacks))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteSamplers))"\n" "\t"STUB_ASM_CODE("601")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DrawTransformFeedback))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenSamplers))"\n" "\t"STUB_ASM_CODE("602")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenTransformFeedbacks))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetSamplerParameterIiv))"\n" "\t"STUB_ASM_CODE("603")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsTransformFeedback))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetSamplerParameterIuiv))"\n" "\t"STUB_ASM_CODE("604")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PauseTransformFeedback))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetSamplerParameterfv))"\n" "\t"STUB_ASM_CODE("605")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ResumeTransformFeedback))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetSamplerParameteriv))"\n" "\t"STUB_ASM_CODE("606")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ClearDepthf))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsSampler))"\n" "\t"STUB_ASM_CODE("607")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DepthRangef))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SamplerParameterIiv))"\n" "\t"STUB_ASM_CODE("608")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetShaderPrecisionFormat))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SamplerParameterIuiv))"\n" "\t"STUB_ASM_CODE("609")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ReleaseShaderCompiler))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SamplerParameterf))"\n" "\t"STUB_ASM_CODE("610")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ShaderBinary))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SamplerParameterfv))"\n" "\t"STUB_ASM_CODE("611")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PolygonOffsetEXT))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SamplerParameteri))"\n" +"\t"STUB_ASM_CODE("612")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SamplerParameteriv))"\n" +"\t"STUB_ASM_CODE("613")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindTransformFeedback))"\n" +"\t"STUB_ASM_CODE("614")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteTransformFeedbacks))"\n" "\t"STUB_ASM_CODE("615")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DrawTransformFeedback))"\n" +"\t"STUB_ASM_CODE("616")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenTransformFeedbacks))"\n" +"\t"STUB_ASM_CODE("617")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsTransformFeedback))"\n" +"\t"STUB_ASM_CODE("618")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PauseTransformFeedback))"\n" +"\t"STUB_ASM_CODE("619")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ResumeTransformFeedback))"\n" +"\t"STUB_ASM_CODE("620")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ClearDepthf))"\n" +"\t"STUB_ASM_CODE("621")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DepthRangef))"\n" +"\t"STUB_ASM_CODE("622")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetShaderPrecisionFormat))"\n" +"\t"STUB_ASM_CODE("623")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ReleaseShaderCompiler))"\n" +"\t"STUB_ASM_CODE("624")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ShaderBinary))"\n" +"\t"STUB_ASM_CODE("625")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PolygonOffsetEXT))"\n" +"\t"STUB_ASM_CODE("629")"\n" + STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorPointerEXT))"\n" -"\t"STUB_ASM_CODE("634")"\n" +"\t"STUB_ASM_CODE("648")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EdgeFlagPointerEXT))"\n" -"\t"STUB_ASM_CODE("635")"\n" +"\t"STUB_ASM_CODE("649")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IndexPointerEXT))"\n" -"\t"STUB_ASM_CODE("636")"\n" +"\t"STUB_ASM_CODE("650")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(NormalPointerEXT))"\n" -"\t"STUB_ASM_CODE("637")"\n" +"\t"STUB_ASM_CODE("651")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexCoordPointerEXT))"\n" -"\t"STUB_ASM_CODE("638")"\n" +"\t"STUB_ASM_CODE("652")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexPointerEXT))"\n" -"\t"STUB_ASM_CODE("639")"\n" +"\t"STUB_ASM_CODE("653")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameterfEXT))"\n" -"\t"STUB_ASM_CODE("640")"\n" +"\t"STUB_ASM_CODE("654")"\n" ".globl "GLAPI_PREFIX_STR(PointParameterf)"\n" ".set "GLAPI_PREFIX_STR(PointParameterf)", "GLAPI_PREFIX_STR(PointParameterfEXT)"\n" @@ -11988,7 +12142,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameterfEXT))"\n" ".set "GLAPI_PREFIX_STR(PointParameterfARB)", "GLAPI_PREFIX_STR(PointParameterfEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameterfvEXT))"\n" -"\t"STUB_ASM_CODE("641")"\n" +"\t"STUB_ASM_CODE("655")"\n" ".globl "GLAPI_PREFIX_STR(PointParameterfv)"\n" ".set "GLAPI_PREFIX_STR(PointParameterfv)", "GLAPI_PREFIX_STR(PointParameterfvEXT)"\n" @@ -11997,212 +12151,212 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameterfvEXT))"\n" ".set "GLAPI_PREFIX_STR(PointParameterfvARB)", "GLAPI_PREFIX_STR(PointParameterfvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(LockArraysEXT))"\n" -"\t"STUB_ASM_CODE("642")"\n" +"\t"STUB_ASM_CODE("656")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(UnlockArraysEXT))"\n" -"\t"STUB_ASM_CODE("643")"\n" +"\t"STUB_ASM_CODE("657")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3bEXT))"\n" -"\t"STUB_ASM_CODE("644")"\n" +"\t"STUB_ASM_CODE("658")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3b)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3b)", "GLAPI_PREFIX_STR(SecondaryColor3bEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3bvEXT))"\n" -"\t"STUB_ASM_CODE("645")"\n" +"\t"STUB_ASM_CODE("659")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3bv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3bv)", "GLAPI_PREFIX_STR(SecondaryColor3bvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3dEXT))"\n" -"\t"STUB_ASM_CODE("646")"\n" +"\t"STUB_ASM_CODE("660")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3d)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3d)", "GLAPI_PREFIX_STR(SecondaryColor3dEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3dvEXT))"\n" -"\t"STUB_ASM_CODE("647")"\n" +"\t"STUB_ASM_CODE("661")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3dv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3dv)", "GLAPI_PREFIX_STR(SecondaryColor3dvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3fEXT))"\n" -"\t"STUB_ASM_CODE("648")"\n" +"\t"STUB_ASM_CODE("662")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3f)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3f)", "GLAPI_PREFIX_STR(SecondaryColor3fEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3fvEXT))"\n" -"\t"STUB_ASM_CODE("649")"\n" +"\t"STUB_ASM_CODE("663")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3fv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3fv)", "GLAPI_PREFIX_STR(SecondaryColor3fvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3iEXT))"\n" -"\t"STUB_ASM_CODE("650")"\n" +"\t"STUB_ASM_CODE("664")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3i)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3i)", "GLAPI_PREFIX_STR(SecondaryColor3iEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3ivEXT))"\n" -"\t"STUB_ASM_CODE("651")"\n" +"\t"STUB_ASM_CODE("665")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3iv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3iv)", "GLAPI_PREFIX_STR(SecondaryColor3ivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3sEXT))"\n" -"\t"STUB_ASM_CODE("652")"\n" +"\t"STUB_ASM_CODE("666")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3s)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3s)", "GLAPI_PREFIX_STR(SecondaryColor3sEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3svEXT))"\n" -"\t"STUB_ASM_CODE("653")"\n" +"\t"STUB_ASM_CODE("667")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3sv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3sv)", "GLAPI_PREFIX_STR(SecondaryColor3svEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3ubEXT))"\n" -"\t"STUB_ASM_CODE("654")"\n" +"\t"STUB_ASM_CODE("668")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3ub)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3ub)", "GLAPI_PREFIX_STR(SecondaryColor3ubEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3ubvEXT))"\n" -"\t"STUB_ASM_CODE("655")"\n" +"\t"STUB_ASM_CODE("669")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3ubv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3ubv)", "GLAPI_PREFIX_STR(SecondaryColor3ubvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3uiEXT))"\n" -"\t"STUB_ASM_CODE("656")"\n" +"\t"STUB_ASM_CODE("670")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3ui)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3ui)", "GLAPI_PREFIX_STR(SecondaryColor3uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3uivEXT))"\n" -"\t"STUB_ASM_CODE("657")"\n" +"\t"STUB_ASM_CODE("671")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3uiv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3uiv)", "GLAPI_PREFIX_STR(SecondaryColor3uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3usEXT))"\n" -"\t"STUB_ASM_CODE("658")"\n" +"\t"STUB_ASM_CODE("672")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3us)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3us)", "GLAPI_PREFIX_STR(SecondaryColor3usEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColor3usvEXT))"\n" -"\t"STUB_ASM_CODE("659")"\n" +"\t"STUB_ASM_CODE("673")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColor3usv)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColor3usv)", "GLAPI_PREFIX_STR(SecondaryColor3usvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SecondaryColorPointerEXT))"\n" -"\t"STUB_ASM_CODE("660")"\n" +"\t"STUB_ASM_CODE("674")"\n" ".globl "GLAPI_PREFIX_STR(SecondaryColorPointer)"\n" ".set "GLAPI_PREFIX_STR(SecondaryColorPointer)", "GLAPI_PREFIX_STR(SecondaryColorPointerEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(MultiDrawArraysEXT))"\n" -"\t"STUB_ASM_CODE("661")"\n" +"\t"STUB_ASM_CODE("675")"\n" ".globl "GLAPI_PREFIX_STR(MultiDrawArrays)"\n" ".set "GLAPI_PREFIX_STR(MultiDrawArrays)", "GLAPI_PREFIX_STR(MultiDrawArraysEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(MultiDrawElementsEXT))"\n" -"\t"STUB_ASM_CODE("662")"\n" +"\t"STUB_ASM_CODE("676")"\n" ".globl "GLAPI_PREFIX_STR(MultiDrawElements)"\n" ".set "GLAPI_PREFIX_STR(MultiDrawElements)", "GLAPI_PREFIX_STR(MultiDrawElementsEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FogCoordPointerEXT))"\n" -"\t"STUB_ASM_CODE("663")"\n" +"\t"STUB_ASM_CODE("677")"\n" ".globl "GLAPI_PREFIX_STR(FogCoordPointer)"\n" ".set "GLAPI_PREFIX_STR(FogCoordPointer)", "GLAPI_PREFIX_STR(FogCoordPointerEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FogCoorddEXT))"\n" -"\t"STUB_ASM_CODE("664")"\n" +"\t"STUB_ASM_CODE("678")"\n" ".globl "GLAPI_PREFIX_STR(FogCoordd)"\n" ".set "GLAPI_PREFIX_STR(FogCoordd)", "GLAPI_PREFIX_STR(FogCoorddEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FogCoorddvEXT))"\n" -"\t"STUB_ASM_CODE("665")"\n" +"\t"STUB_ASM_CODE("679")"\n" ".globl "GLAPI_PREFIX_STR(FogCoorddv)"\n" ".set "GLAPI_PREFIX_STR(FogCoorddv)", "GLAPI_PREFIX_STR(FogCoorddvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FogCoordfEXT))"\n" -"\t"STUB_ASM_CODE("666")"\n" +"\t"STUB_ASM_CODE("680")"\n" ".globl "GLAPI_PREFIX_STR(FogCoordf)"\n" ".set "GLAPI_PREFIX_STR(FogCoordf)", "GLAPI_PREFIX_STR(FogCoordfEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FogCoordfvEXT))"\n" -"\t"STUB_ASM_CODE("667")"\n" +"\t"STUB_ASM_CODE("681")"\n" ".globl "GLAPI_PREFIX_STR(FogCoordfv)"\n" ".set "GLAPI_PREFIX_STR(FogCoordfv)", "GLAPI_PREFIX_STR(FogCoordfvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendFuncSeparateEXT))"\n" -"\t"STUB_ASM_CODE("669")"\n" +"\t"STUB_ASM_CODE("683")"\n" ".globl "GLAPI_PREFIX_STR(BlendFuncSeparate)"\n" ".set "GLAPI_PREFIX_STR(BlendFuncSeparate)", "GLAPI_PREFIX_STR(BlendFuncSeparateEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FlushVertexArrayRangeNV))"\n" -"\t"STUB_ASM_CODE("670")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexArrayRangeNV))"\n" -"\t"STUB_ASM_CODE("671")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerInputNV))"\n" -"\t"STUB_ASM_CODE("672")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerOutputNV))"\n" -"\t"STUB_ASM_CODE("673")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameterfNV))"\n" -"\t"STUB_ASM_CODE("674")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameterfvNV))"\n" -"\t"STUB_ASM_CODE("675")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameteriNV))"\n" -"\t"STUB_ASM_CODE("676")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameterivNV))"\n" -"\t"STUB_ASM_CODE("677")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FinalCombinerInputNV))"\n" -"\t"STUB_ASM_CODE("678")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerInputParameterfvNV))"\n" -"\t"STUB_ASM_CODE("679")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerInputParameterivNV))"\n" -"\t"STUB_ASM_CODE("680")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerOutputParameterfvNV))"\n" -"\t"STUB_ASM_CODE("681")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerOutputParameterivNV))"\n" -"\t"STUB_ASM_CODE("682")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetFinalCombinerInputParameterfvNV))"\n" -"\t"STUB_ASM_CODE("683")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetFinalCombinerInputParameterivNV))"\n" "\t"STUB_ASM_CODE("684")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ResizeBuffersMESA))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexArrayRangeNV))"\n" "\t"STUB_ASM_CODE("685")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2dMESA))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerInputNV))"\n" "\t"STUB_ASM_CODE("686")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerOutputNV))"\n" +"\t"STUB_ASM_CODE("687")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameterfNV))"\n" +"\t"STUB_ASM_CODE("688")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameterfvNV))"\n" +"\t"STUB_ASM_CODE("689")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameteriNV))"\n" +"\t"STUB_ASM_CODE("690")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CombinerParameterivNV))"\n" +"\t"STUB_ASM_CODE("691")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FinalCombinerInputNV))"\n" +"\t"STUB_ASM_CODE("692")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerInputParameterfvNV))"\n" +"\t"STUB_ASM_CODE("693")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerInputParameterivNV))"\n" +"\t"STUB_ASM_CODE("694")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerOutputParameterfvNV))"\n" +"\t"STUB_ASM_CODE("695")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetCombinerOutputParameterivNV))"\n" +"\t"STUB_ASM_CODE("696")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetFinalCombinerInputParameterfvNV))"\n" +"\t"STUB_ASM_CODE("697")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetFinalCombinerInputParameterivNV))"\n" +"\t"STUB_ASM_CODE("698")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ResizeBuffersMESA))"\n" +"\t"STUB_ASM_CODE("699")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2dMESA))"\n" +"\t"STUB_ASM_CODE("700")"\n" + ".globl "GLAPI_PREFIX_STR(WindowPos2d)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2d)", "GLAPI_PREFIX_STR(WindowPos2dMESA)"\n" @@ -12210,7 +12364,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2dMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2dARB)", "GLAPI_PREFIX_STR(WindowPos2dMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2dvMESA))"\n" -"\t"STUB_ASM_CODE("687")"\n" +"\t"STUB_ASM_CODE("701")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2dv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2dv)", "GLAPI_PREFIX_STR(WindowPos2dvMESA)"\n" @@ -12219,7 +12373,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2dvMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2dvARB)", "GLAPI_PREFIX_STR(WindowPos2dvMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2fMESA))"\n" -"\t"STUB_ASM_CODE("688")"\n" +"\t"STUB_ASM_CODE("702")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2f)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2f)", "GLAPI_PREFIX_STR(WindowPos2fMESA)"\n" @@ -12228,7 +12382,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2fMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2fARB)", "GLAPI_PREFIX_STR(WindowPos2fMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2fvMESA))"\n" -"\t"STUB_ASM_CODE("689")"\n" +"\t"STUB_ASM_CODE("703")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2fv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2fv)", "GLAPI_PREFIX_STR(WindowPos2fvMESA)"\n" @@ -12237,7 +12391,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2fvMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2fvARB)", "GLAPI_PREFIX_STR(WindowPos2fvMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2iMESA))"\n" -"\t"STUB_ASM_CODE("690")"\n" +"\t"STUB_ASM_CODE("704")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2i)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2i)", "GLAPI_PREFIX_STR(WindowPos2iMESA)"\n" @@ -12246,7 +12400,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2iMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2iARB)", "GLAPI_PREFIX_STR(WindowPos2iMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2ivMESA))"\n" -"\t"STUB_ASM_CODE("691")"\n" +"\t"STUB_ASM_CODE("705")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2iv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2iv)", "GLAPI_PREFIX_STR(WindowPos2ivMESA)"\n" @@ -12255,7 +12409,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2ivMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2ivARB)", "GLAPI_PREFIX_STR(WindowPos2ivMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2sMESA))"\n" -"\t"STUB_ASM_CODE("692")"\n" +"\t"STUB_ASM_CODE("706")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2s)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2s)", "GLAPI_PREFIX_STR(WindowPos2sMESA)"\n" @@ -12264,7 +12418,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2sMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2sARB)", "GLAPI_PREFIX_STR(WindowPos2sMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2svMESA))"\n" -"\t"STUB_ASM_CODE("693")"\n" +"\t"STUB_ASM_CODE("707")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos2sv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos2sv)", "GLAPI_PREFIX_STR(WindowPos2svMESA)"\n" @@ -12273,7 +12427,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos2svMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos2svARB)", "GLAPI_PREFIX_STR(WindowPos2svMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3dMESA))"\n" -"\t"STUB_ASM_CODE("694")"\n" +"\t"STUB_ASM_CODE("708")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3d)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3d)", "GLAPI_PREFIX_STR(WindowPos3dMESA)"\n" @@ -12282,7 +12436,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3dMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3dARB)", "GLAPI_PREFIX_STR(WindowPos3dMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3dvMESA))"\n" -"\t"STUB_ASM_CODE("695")"\n" +"\t"STUB_ASM_CODE("709")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3dv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3dv)", "GLAPI_PREFIX_STR(WindowPos3dvMESA)"\n" @@ -12291,7 +12445,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3dvMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3dvARB)", "GLAPI_PREFIX_STR(WindowPos3dvMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3fMESA))"\n" -"\t"STUB_ASM_CODE("696")"\n" +"\t"STUB_ASM_CODE("710")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3f)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3f)", "GLAPI_PREFIX_STR(WindowPos3fMESA)"\n" @@ -12300,7 +12454,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3fMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3fARB)", "GLAPI_PREFIX_STR(WindowPos3fMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3fvMESA))"\n" -"\t"STUB_ASM_CODE("697")"\n" +"\t"STUB_ASM_CODE("711")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3fv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3fv)", "GLAPI_PREFIX_STR(WindowPos3fvMESA)"\n" @@ -12309,7 +12463,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3fvMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3fvARB)", "GLAPI_PREFIX_STR(WindowPos3fvMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3iMESA))"\n" -"\t"STUB_ASM_CODE("698")"\n" +"\t"STUB_ASM_CODE("712")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3i)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3i)", "GLAPI_PREFIX_STR(WindowPos3iMESA)"\n" @@ -12318,7 +12472,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3iMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3iARB)", "GLAPI_PREFIX_STR(WindowPos3iMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3ivMESA))"\n" -"\t"STUB_ASM_CODE("699")"\n" +"\t"STUB_ASM_CODE("713")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3iv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3iv)", "GLAPI_PREFIX_STR(WindowPos3ivMESA)"\n" @@ -12327,7 +12481,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3ivMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3ivARB)", "GLAPI_PREFIX_STR(WindowPos3ivMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3sMESA))"\n" -"\t"STUB_ASM_CODE("700")"\n" +"\t"STUB_ASM_CODE("714")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3s)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3s)", "GLAPI_PREFIX_STR(WindowPos3sMESA)"\n" @@ -12336,7 +12490,7 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3sMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3sARB)", "GLAPI_PREFIX_STR(WindowPos3sMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3svMESA))"\n" -"\t"STUB_ASM_CODE("701")"\n" +"\t"STUB_ASM_CODE("715")"\n" ".globl "GLAPI_PREFIX_STR(WindowPos3sv)"\n" ".set "GLAPI_PREFIX_STR(WindowPos3sv)", "GLAPI_PREFIX_STR(WindowPos3svMESA)"\n" @@ -12345,70 +12499,70 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos3svMESA))"\n" ".set "GLAPI_PREFIX_STR(WindowPos3svARB)", "GLAPI_PREFIX_STR(WindowPos3svMESA)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4dMESA))"\n" -"\t"STUB_ASM_CODE("702")"\n" +"\t"STUB_ASM_CODE("716")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4dvMESA))"\n" -"\t"STUB_ASM_CODE("703")"\n" +"\t"STUB_ASM_CODE("717")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4fMESA))"\n" -"\t"STUB_ASM_CODE("704")"\n" +"\t"STUB_ASM_CODE("718")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4fvMESA))"\n" -"\t"STUB_ASM_CODE("705")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4iMESA))"\n" -"\t"STUB_ASM_CODE("706")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4ivMESA))"\n" -"\t"STUB_ASM_CODE("707")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4sMESA))"\n" -"\t"STUB_ASM_CODE("708")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4svMESA))"\n" -"\t"STUB_ASM_CODE("709")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AreProgramsResidentNV))"\n" "\t"STUB_ASM_CODE("719")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindProgramNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4iMESA))"\n" "\t"STUB_ASM_CODE("720")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4ivMESA))"\n" +"\t"STUB_ASM_CODE("721")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4sMESA))"\n" +"\t"STUB_ASM_CODE("722")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(WindowPos4svMESA))"\n" +"\t"STUB_ASM_CODE("723")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AreProgramsResidentNV))"\n" +"\t"STUB_ASM_CODE("733")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindProgramNV))"\n" +"\t"STUB_ASM_CODE("734")"\n" + ".globl "GLAPI_PREFIX_STR(BindProgramARB)"\n" ".set "GLAPI_PREFIX_STR(BindProgramARB)", "GLAPI_PREFIX_STR(BindProgramNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteProgramsNV))"\n" -"\t"STUB_ASM_CODE("721")"\n" +"\t"STUB_ASM_CODE("735")"\n" ".globl "GLAPI_PREFIX_STR(DeleteProgramsARB)"\n" ".set "GLAPI_PREFIX_STR(DeleteProgramsARB)", "GLAPI_PREFIX_STR(DeleteProgramsNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ExecuteProgramNV))"\n" -"\t"STUB_ASM_CODE("722")"\n" +"\t"STUB_ASM_CODE("736")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenProgramsNV))"\n" -"\t"STUB_ASM_CODE("723")"\n" +"\t"STUB_ASM_CODE("737")"\n" ".globl "GLAPI_PREFIX_STR(GenProgramsARB)"\n" ".set "GLAPI_PREFIX_STR(GenProgramsARB)", "GLAPI_PREFIX_STR(GenProgramsNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramParameterdvNV))"\n" -"\t"STUB_ASM_CODE("724")"\n" +"\t"STUB_ASM_CODE("738")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramParameterfvNV))"\n" -"\t"STUB_ASM_CODE("725")"\n" +"\t"STUB_ASM_CODE("739")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramStringNV))"\n" -"\t"STUB_ASM_CODE("726")"\n" +"\t"STUB_ASM_CODE("740")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramivNV))"\n" -"\t"STUB_ASM_CODE("727")"\n" +"\t"STUB_ASM_CODE("741")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTrackMatrixivNV))"\n" -"\t"STUB_ASM_CODE("728")"\n" +"\t"STUB_ASM_CODE("742")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribPointervNV))"\n" -"\t"STUB_ASM_CODE("729")"\n" +"\t"STUB_ASM_CODE("743")"\n" ".globl "GLAPI_PREFIX_STR(GetVertexAttribPointerv)"\n" ".set "GLAPI_PREFIX_STR(GetVertexAttribPointerv)", "GLAPI_PREFIX_STR(GetVertexAttribPointervNV)"\n" @@ -12417,721 +12571,721 @@ STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribPointervNV))"\n" ".set "GLAPI_PREFIX_STR(GetVertexAttribPointervARB)", "GLAPI_PREFIX_STR(GetVertexAttribPointervNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribdvNV))"\n" -"\t"STUB_ASM_CODE("730")"\n" +"\t"STUB_ASM_CODE("744")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribfvNV))"\n" -"\t"STUB_ASM_CODE("731")"\n" +"\t"STUB_ASM_CODE("745")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribivNV))"\n" -"\t"STUB_ASM_CODE("732")"\n" +"\t"STUB_ASM_CODE("746")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsProgramNV))"\n" -"\t"STUB_ASM_CODE("733")"\n" +"\t"STUB_ASM_CODE("747")"\n" ".globl "GLAPI_PREFIX_STR(IsProgramARB)"\n" ".set "GLAPI_PREFIX_STR(IsProgramARB)", "GLAPI_PREFIX_STR(IsProgramNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(LoadProgramNV))"\n" -"\t"STUB_ASM_CODE("734")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramParameters4dvNV))"\n" -"\t"STUB_ASM_CODE("735")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramParameters4fvNV))"\n" -"\t"STUB_ASM_CODE("736")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(RequestResidentProgramsNV))"\n" -"\t"STUB_ASM_CODE("737")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TrackMatrixNV))"\n" -"\t"STUB_ASM_CODE("738")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1dNV))"\n" -"\t"STUB_ASM_CODE("739")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1dvNV))"\n" -"\t"STUB_ASM_CODE("740")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1fNV))"\n" -"\t"STUB_ASM_CODE("741")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1fvNV))"\n" -"\t"STUB_ASM_CODE("742")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1sNV))"\n" -"\t"STUB_ASM_CODE("743")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1svNV))"\n" -"\t"STUB_ASM_CODE("744")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2dNV))"\n" -"\t"STUB_ASM_CODE("745")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2dvNV))"\n" -"\t"STUB_ASM_CODE("746")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2fNV))"\n" -"\t"STUB_ASM_CODE("747")"\n" - -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2fvNV))"\n" "\t"STUB_ASM_CODE("748")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2sNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramParameters4dvNV))"\n" "\t"STUB_ASM_CODE("749")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2svNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramParameters4fvNV))"\n" "\t"STUB_ASM_CODE("750")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3dNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(RequestResidentProgramsNV))"\n" "\t"STUB_ASM_CODE("751")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3dvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TrackMatrixNV))"\n" "\t"STUB_ASM_CODE("752")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3fNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1dNV))"\n" "\t"STUB_ASM_CODE("753")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1dvNV))"\n" "\t"STUB_ASM_CODE("754")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3sNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1fNV))"\n" "\t"STUB_ASM_CODE("755")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3svNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1fvNV))"\n" "\t"STUB_ASM_CODE("756")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4dNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1sNV))"\n" "\t"STUB_ASM_CODE("757")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4dvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib1svNV))"\n" "\t"STUB_ASM_CODE("758")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4fNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2dNV))"\n" "\t"STUB_ASM_CODE("759")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2dvNV))"\n" "\t"STUB_ASM_CODE("760")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4sNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2fNV))"\n" "\t"STUB_ASM_CODE("761")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4svNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2fvNV))"\n" "\t"STUB_ASM_CODE("762")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4ubNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2sNV))"\n" "\t"STUB_ASM_CODE("763")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4ubvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib2svNV))"\n" "\t"STUB_ASM_CODE("764")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribPointerNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3dNV))"\n" "\t"STUB_ASM_CODE("765")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs1dvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3dvNV))"\n" "\t"STUB_ASM_CODE("766")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs1fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3fNV))"\n" "\t"STUB_ASM_CODE("767")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs1svNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3fvNV))"\n" "\t"STUB_ASM_CODE("768")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs2dvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3sNV))"\n" "\t"STUB_ASM_CODE("769")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs2fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib3svNV))"\n" "\t"STUB_ASM_CODE("770")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs2svNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4dNV))"\n" "\t"STUB_ASM_CODE("771")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs3dvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4dvNV))"\n" "\t"STUB_ASM_CODE("772")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs3fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4fNV))"\n" "\t"STUB_ASM_CODE("773")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs3svNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4fvNV))"\n" "\t"STUB_ASM_CODE("774")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4dvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4sNV))"\n" "\t"STUB_ASM_CODE("775")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4fvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4svNV))"\n" "\t"STUB_ASM_CODE("776")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4svNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4ubNV))"\n" "\t"STUB_ASM_CODE("777")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4ubvNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttrib4ubvNV))"\n" "\t"STUB_ASM_CODE("778")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTexBumpParameterfvATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribPointerNV))"\n" "\t"STUB_ASM_CODE("779")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTexBumpParameterivATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs1dvNV))"\n" "\t"STUB_ASM_CODE("780")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexBumpParameterfvATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs1fvNV))"\n" "\t"STUB_ASM_CODE("781")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexBumpParameterivATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs1svNV))"\n" "\t"STUB_ASM_CODE("782")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AlphaFragmentOp1ATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs2dvNV))"\n" "\t"STUB_ASM_CODE("783")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AlphaFragmentOp2ATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs2fvNV))"\n" "\t"STUB_ASM_CODE("784")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AlphaFragmentOp3ATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs2svNV))"\n" "\t"STUB_ASM_CODE("785")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BeginFragmentShaderATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs3dvNV))"\n" "\t"STUB_ASM_CODE("786")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindFragmentShaderATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs3fvNV))"\n" "\t"STUB_ASM_CODE("787")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorFragmentOp1ATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs3svNV))"\n" "\t"STUB_ASM_CODE("788")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorFragmentOp2ATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4dvNV))"\n" "\t"STUB_ASM_CODE("789")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorFragmentOp3ATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4fvNV))"\n" "\t"STUB_ASM_CODE("790")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteFragmentShaderATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4svNV))"\n" "\t"STUB_ASM_CODE("791")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EndFragmentShaderATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribs4ubvNV))"\n" "\t"STUB_ASM_CODE("792")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenFragmentShadersATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTexBumpParameterfvATI))"\n" "\t"STUB_ASM_CODE("793")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PassTexCoordATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTexBumpParameterivATI))"\n" "\t"STUB_ASM_CODE("794")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SampleMapATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexBumpParameterfvATI))"\n" "\t"STUB_ASM_CODE("795")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SetFragmentShaderConstantATI))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexBumpParameterivATI))"\n" "\t"STUB_ASM_CODE("796")"\n" -STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameteriNV))"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AlphaFragmentOp1ATI))"\n" "\t"STUB_ASM_CODE("797")"\n" +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AlphaFragmentOp2ATI))"\n" +"\t"STUB_ASM_CODE("798")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(AlphaFragmentOp3ATI))"\n" +"\t"STUB_ASM_CODE("799")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BeginFragmentShaderATI))"\n" +"\t"STUB_ASM_CODE("800")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindFragmentShaderATI))"\n" +"\t"STUB_ASM_CODE("801")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorFragmentOp1ATI))"\n" +"\t"STUB_ASM_CODE("802")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorFragmentOp2ATI))"\n" +"\t"STUB_ASM_CODE("803")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorFragmentOp3ATI))"\n" +"\t"STUB_ASM_CODE("804")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteFragmentShaderATI))"\n" +"\t"STUB_ASM_CODE("805")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EndFragmentShaderATI))"\n" +"\t"STUB_ASM_CODE("806")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenFragmentShadersATI))"\n" +"\t"STUB_ASM_CODE("807")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PassTexCoordATI))"\n" +"\t"STUB_ASM_CODE("808")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SampleMapATI))"\n" +"\t"STUB_ASM_CODE("809")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(SetFragmentShaderConstantATI))"\n" +"\t"STUB_ASM_CODE("810")"\n" + +STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameteriNV))"\n" +"\t"STUB_ASM_CODE("811")"\n" + ".globl "GLAPI_PREFIX_STR(PointParameteri)"\n" ".set "GLAPI_PREFIX_STR(PointParameteri)", "GLAPI_PREFIX_STR(PointParameteriNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PointParameterivNV))"\n" -"\t"STUB_ASM_CODE("798")"\n" +"\t"STUB_ASM_CODE("812")"\n" ".globl "GLAPI_PREFIX_STR(PointParameteriv)"\n" ".set "GLAPI_PREFIX_STR(PointParameteriv)", "GLAPI_PREFIX_STR(PointParameterivNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteVertexArrays))"\n" -"\t"STUB_ASM_CODE("801")"\n" +"\t"STUB_ASM_CODE("815")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsVertexArray))"\n" -"\t"STUB_ASM_CODE("803")"\n" +"\t"STUB_ASM_CODE("817")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramNamedParameterdvNV))"\n" -"\t"STUB_ASM_CODE("804")"\n" +"\t"STUB_ASM_CODE("818")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetProgramNamedParameterfvNV))"\n" -"\t"STUB_ASM_CODE("805")"\n" +"\t"STUB_ASM_CODE("819")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramNamedParameter4dNV))"\n" -"\t"STUB_ASM_CODE("806")"\n" +"\t"STUB_ASM_CODE("820")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramNamedParameter4dvNV))"\n" -"\t"STUB_ASM_CODE("807")"\n" +"\t"STUB_ASM_CODE("821")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramNamedParameter4fNV))"\n" -"\t"STUB_ASM_CODE("808")"\n" +"\t"STUB_ASM_CODE("822")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProgramNamedParameter4fvNV))"\n" -"\t"STUB_ASM_CODE("809")"\n" +"\t"STUB_ASM_CODE("823")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PrimitiveRestartIndexNV))"\n" -"\t"STUB_ASM_CODE("810")"\n" +"\t"STUB_ASM_CODE("824")"\n" ".globl "GLAPI_PREFIX_STR(PrimitiveRestartIndex)"\n" ".set "GLAPI_PREFIX_STR(PrimitiveRestartIndex)", "GLAPI_PREFIX_STR(PrimitiveRestartIndexNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(PrimitiveRestartNV))"\n" -"\t"STUB_ASM_CODE("811")"\n" +"\t"STUB_ASM_CODE("825")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlendEquationSeparate))"\n" -"\t"STUB_ASM_CODE("859")"\n" +"\t"STUB_ASM_CODE("873")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindFramebufferEXT))"\n" -"\t"STUB_ASM_CODE("860")"\n" +"\t"STUB_ASM_CODE("874")"\n" ".globl "GLAPI_PREFIX_STR(BindFramebuffer)"\n" ".set "GLAPI_PREFIX_STR(BindFramebuffer)", "GLAPI_PREFIX_STR(BindFramebufferEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindRenderbufferEXT))"\n" -"\t"STUB_ASM_CODE("861")"\n" +"\t"STUB_ASM_CODE("875")"\n" ".globl "GLAPI_PREFIX_STR(BindRenderbuffer)"\n" ".set "GLAPI_PREFIX_STR(BindRenderbuffer)", "GLAPI_PREFIX_STR(BindRenderbufferEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CheckFramebufferStatusEXT))"\n" -"\t"STUB_ASM_CODE("862")"\n" +"\t"STUB_ASM_CODE("876")"\n" ".globl "GLAPI_PREFIX_STR(CheckFramebufferStatus)"\n" ".set "GLAPI_PREFIX_STR(CheckFramebufferStatus)", "GLAPI_PREFIX_STR(CheckFramebufferStatusEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteFramebuffersEXT))"\n" -"\t"STUB_ASM_CODE("863")"\n" +"\t"STUB_ASM_CODE("877")"\n" ".globl "GLAPI_PREFIX_STR(DeleteFramebuffers)"\n" ".set "GLAPI_PREFIX_STR(DeleteFramebuffers)", "GLAPI_PREFIX_STR(DeleteFramebuffersEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DeleteRenderbuffersEXT))"\n" -"\t"STUB_ASM_CODE("864")"\n" +"\t"STUB_ASM_CODE("878")"\n" ".globl "GLAPI_PREFIX_STR(DeleteRenderbuffers)"\n" ".set "GLAPI_PREFIX_STR(DeleteRenderbuffers)", "GLAPI_PREFIX_STR(DeleteRenderbuffersEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FramebufferRenderbufferEXT))"\n" -"\t"STUB_ASM_CODE("865")"\n" +"\t"STUB_ASM_CODE("879")"\n" ".globl "GLAPI_PREFIX_STR(FramebufferRenderbuffer)"\n" ".set "GLAPI_PREFIX_STR(FramebufferRenderbuffer)", "GLAPI_PREFIX_STR(FramebufferRenderbufferEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FramebufferTexture1DEXT))"\n" -"\t"STUB_ASM_CODE("866")"\n" +"\t"STUB_ASM_CODE("880")"\n" ".globl "GLAPI_PREFIX_STR(FramebufferTexture1D)"\n" ".set "GLAPI_PREFIX_STR(FramebufferTexture1D)", "GLAPI_PREFIX_STR(FramebufferTexture1DEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FramebufferTexture2DEXT))"\n" -"\t"STUB_ASM_CODE("867")"\n" +"\t"STUB_ASM_CODE("881")"\n" ".globl "GLAPI_PREFIX_STR(FramebufferTexture2D)"\n" ".set "GLAPI_PREFIX_STR(FramebufferTexture2D)", "GLAPI_PREFIX_STR(FramebufferTexture2DEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FramebufferTexture3DEXT))"\n" -"\t"STUB_ASM_CODE("868")"\n" +"\t"STUB_ASM_CODE("882")"\n" ".globl "GLAPI_PREFIX_STR(FramebufferTexture3D)"\n" ".set "GLAPI_PREFIX_STR(FramebufferTexture3D)", "GLAPI_PREFIX_STR(FramebufferTexture3DEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenFramebuffersEXT))"\n" -"\t"STUB_ASM_CODE("869")"\n" +"\t"STUB_ASM_CODE("883")"\n" ".globl "GLAPI_PREFIX_STR(GenFramebuffers)"\n" ".set "GLAPI_PREFIX_STR(GenFramebuffers)", "GLAPI_PREFIX_STR(GenFramebuffersEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenRenderbuffersEXT))"\n" -"\t"STUB_ASM_CODE("870")"\n" +"\t"STUB_ASM_CODE("884")"\n" ".globl "GLAPI_PREFIX_STR(GenRenderbuffers)"\n" ".set "GLAPI_PREFIX_STR(GenRenderbuffers)", "GLAPI_PREFIX_STR(GenRenderbuffersEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GenerateMipmapEXT))"\n" -"\t"STUB_ASM_CODE("871")"\n" +"\t"STUB_ASM_CODE("885")"\n" ".globl "GLAPI_PREFIX_STR(GenerateMipmap)"\n" ".set "GLAPI_PREFIX_STR(GenerateMipmap)", "GLAPI_PREFIX_STR(GenerateMipmapEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetFramebufferAttachmentParameterivEXT))"\n" -"\t"STUB_ASM_CODE("872")"\n" +"\t"STUB_ASM_CODE("886")"\n" ".globl "GLAPI_PREFIX_STR(GetFramebufferAttachmentParameteriv)"\n" ".set "GLAPI_PREFIX_STR(GetFramebufferAttachmentParameteriv)", "GLAPI_PREFIX_STR(GetFramebufferAttachmentParameterivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetRenderbufferParameterivEXT))"\n" -"\t"STUB_ASM_CODE("873")"\n" +"\t"STUB_ASM_CODE("887")"\n" ".globl "GLAPI_PREFIX_STR(GetRenderbufferParameteriv)"\n" ".set "GLAPI_PREFIX_STR(GetRenderbufferParameteriv)", "GLAPI_PREFIX_STR(GetRenderbufferParameterivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsFramebufferEXT))"\n" -"\t"STUB_ASM_CODE("874")"\n" +"\t"STUB_ASM_CODE("888")"\n" ".globl "GLAPI_PREFIX_STR(IsFramebuffer)"\n" ".set "GLAPI_PREFIX_STR(IsFramebuffer)", "GLAPI_PREFIX_STR(IsFramebufferEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsRenderbufferEXT))"\n" -"\t"STUB_ASM_CODE("875")"\n" +"\t"STUB_ASM_CODE("889")"\n" ".globl "GLAPI_PREFIX_STR(IsRenderbuffer)"\n" ".set "GLAPI_PREFIX_STR(IsRenderbuffer)", "GLAPI_PREFIX_STR(IsRenderbufferEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(RenderbufferStorageEXT))"\n" -"\t"STUB_ASM_CODE("876")"\n" +"\t"STUB_ASM_CODE("890")"\n" ".globl "GLAPI_PREFIX_STR(RenderbufferStorage)"\n" ".set "GLAPI_PREFIX_STR(RenderbufferStorage)", "GLAPI_PREFIX_STR(RenderbufferStorageEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BlitFramebuffer))"\n" -"\t"STUB_ASM_CODE("877")"\n" +"\t"STUB_ASM_CODE("891")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindFragDataLocationEXT))"\n" -"\t"STUB_ASM_CODE("880")"\n" +"\t"STUB_ASM_CODE("894")"\n" ".globl "GLAPI_PREFIX_STR(BindFragDataLocation)"\n" ".set "GLAPI_PREFIX_STR(BindFragDataLocation)", "GLAPI_PREFIX_STR(BindFragDataLocationEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetFragDataLocationEXT))"\n" -"\t"STUB_ASM_CODE("881")"\n" +"\t"STUB_ASM_CODE("895")"\n" ".globl "GLAPI_PREFIX_STR(GetFragDataLocation)"\n" ".set "GLAPI_PREFIX_STR(GetFragDataLocation)", "GLAPI_PREFIX_STR(GetFragDataLocationEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetUniformuivEXT))"\n" -"\t"STUB_ASM_CODE("882")"\n" +"\t"STUB_ASM_CODE("896")"\n" ".globl "GLAPI_PREFIX_STR(GetUniformuiv)"\n" ".set "GLAPI_PREFIX_STR(GetUniformuiv)", "GLAPI_PREFIX_STR(GetUniformuivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribIivEXT))"\n" -"\t"STUB_ASM_CODE("883")"\n" +"\t"STUB_ASM_CODE("897")"\n" ".globl "GLAPI_PREFIX_STR(GetVertexAttribIiv)"\n" ".set "GLAPI_PREFIX_STR(GetVertexAttribIiv)", "GLAPI_PREFIX_STR(GetVertexAttribIivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetVertexAttribIuivEXT))"\n" -"\t"STUB_ASM_CODE("884")"\n" +"\t"STUB_ASM_CODE("898")"\n" ".globl "GLAPI_PREFIX_STR(GetVertexAttribIuiv)"\n" ".set "GLAPI_PREFIX_STR(GetVertexAttribIuiv)", "GLAPI_PREFIX_STR(GetVertexAttribIuivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform1uiEXT))"\n" -"\t"STUB_ASM_CODE("885")"\n" +"\t"STUB_ASM_CODE("899")"\n" ".globl "GLAPI_PREFIX_STR(Uniform1ui)"\n" ".set "GLAPI_PREFIX_STR(Uniform1ui)", "GLAPI_PREFIX_STR(Uniform1uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform1uivEXT))"\n" -"\t"STUB_ASM_CODE("886")"\n" +"\t"STUB_ASM_CODE("900")"\n" ".globl "GLAPI_PREFIX_STR(Uniform1uiv)"\n" ".set "GLAPI_PREFIX_STR(Uniform1uiv)", "GLAPI_PREFIX_STR(Uniform1uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform2uiEXT))"\n" -"\t"STUB_ASM_CODE("887")"\n" +"\t"STUB_ASM_CODE("901")"\n" ".globl "GLAPI_PREFIX_STR(Uniform2ui)"\n" ".set "GLAPI_PREFIX_STR(Uniform2ui)", "GLAPI_PREFIX_STR(Uniform2uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform2uivEXT))"\n" -"\t"STUB_ASM_CODE("888")"\n" +"\t"STUB_ASM_CODE("902")"\n" ".globl "GLAPI_PREFIX_STR(Uniform2uiv)"\n" ".set "GLAPI_PREFIX_STR(Uniform2uiv)", "GLAPI_PREFIX_STR(Uniform2uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform3uiEXT))"\n" -"\t"STUB_ASM_CODE("889")"\n" +"\t"STUB_ASM_CODE("903")"\n" ".globl "GLAPI_PREFIX_STR(Uniform3ui)"\n" ".set "GLAPI_PREFIX_STR(Uniform3ui)", "GLAPI_PREFIX_STR(Uniform3uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform3uivEXT))"\n" -"\t"STUB_ASM_CODE("890")"\n" +"\t"STUB_ASM_CODE("904")"\n" ".globl "GLAPI_PREFIX_STR(Uniform3uiv)"\n" ".set "GLAPI_PREFIX_STR(Uniform3uiv)", "GLAPI_PREFIX_STR(Uniform3uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform4uiEXT))"\n" -"\t"STUB_ASM_CODE("891")"\n" +"\t"STUB_ASM_CODE("905")"\n" ".globl "GLAPI_PREFIX_STR(Uniform4ui)"\n" ".set "GLAPI_PREFIX_STR(Uniform4ui)", "GLAPI_PREFIX_STR(Uniform4uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(Uniform4uivEXT))"\n" -"\t"STUB_ASM_CODE("892")"\n" +"\t"STUB_ASM_CODE("906")"\n" ".globl "GLAPI_PREFIX_STR(Uniform4uiv)"\n" ".set "GLAPI_PREFIX_STR(Uniform4uiv)", "GLAPI_PREFIX_STR(Uniform4uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI1iEXT))"\n" -"\t"STUB_ASM_CODE("893")"\n" +"\t"STUB_ASM_CODE("907")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI1i)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI1i)", "GLAPI_PREFIX_STR(VertexAttribI1iEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI1ivEXT))"\n" -"\t"STUB_ASM_CODE("894")"\n" +"\t"STUB_ASM_CODE("908")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI1iv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI1iv)", "GLAPI_PREFIX_STR(VertexAttribI1ivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI1uiEXT))"\n" -"\t"STUB_ASM_CODE("895")"\n" +"\t"STUB_ASM_CODE("909")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI1ui)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI1ui)", "GLAPI_PREFIX_STR(VertexAttribI1uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI1uivEXT))"\n" -"\t"STUB_ASM_CODE("896")"\n" +"\t"STUB_ASM_CODE("910")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI1uiv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI1uiv)", "GLAPI_PREFIX_STR(VertexAttribI1uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI2iEXT))"\n" -"\t"STUB_ASM_CODE("897")"\n" +"\t"STUB_ASM_CODE("911")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI2i)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI2i)", "GLAPI_PREFIX_STR(VertexAttribI2iEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI2ivEXT))"\n" -"\t"STUB_ASM_CODE("898")"\n" +"\t"STUB_ASM_CODE("912")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI2iv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI2iv)", "GLAPI_PREFIX_STR(VertexAttribI2ivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI2uiEXT))"\n" -"\t"STUB_ASM_CODE("899")"\n" +"\t"STUB_ASM_CODE("913")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI2ui)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI2ui)", "GLAPI_PREFIX_STR(VertexAttribI2uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI2uivEXT))"\n" -"\t"STUB_ASM_CODE("900")"\n" +"\t"STUB_ASM_CODE("914")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI2uiv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI2uiv)", "GLAPI_PREFIX_STR(VertexAttribI2uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI3iEXT))"\n" -"\t"STUB_ASM_CODE("901")"\n" +"\t"STUB_ASM_CODE("915")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI3i)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI3i)", "GLAPI_PREFIX_STR(VertexAttribI3iEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI3ivEXT))"\n" -"\t"STUB_ASM_CODE("902")"\n" +"\t"STUB_ASM_CODE("916")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI3iv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI3iv)", "GLAPI_PREFIX_STR(VertexAttribI3ivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI3uiEXT))"\n" -"\t"STUB_ASM_CODE("903")"\n" +"\t"STUB_ASM_CODE("917")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI3ui)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI3ui)", "GLAPI_PREFIX_STR(VertexAttribI3uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI3uivEXT))"\n" -"\t"STUB_ASM_CODE("904")"\n" +"\t"STUB_ASM_CODE("918")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI3uiv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI3uiv)", "GLAPI_PREFIX_STR(VertexAttribI3uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4bvEXT))"\n" -"\t"STUB_ASM_CODE("905")"\n" +"\t"STUB_ASM_CODE("919")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4bv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4bv)", "GLAPI_PREFIX_STR(VertexAttribI4bvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4iEXT))"\n" -"\t"STUB_ASM_CODE("906")"\n" +"\t"STUB_ASM_CODE("920")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4i)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4i)", "GLAPI_PREFIX_STR(VertexAttribI4iEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4ivEXT))"\n" -"\t"STUB_ASM_CODE("907")"\n" +"\t"STUB_ASM_CODE("921")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4iv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4iv)", "GLAPI_PREFIX_STR(VertexAttribI4ivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4svEXT))"\n" -"\t"STUB_ASM_CODE("908")"\n" +"\t"STUB_ASM_CODE("922")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4sv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4sv)", "GLAPI_PREFIX_STR(VertexAttribI4svEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4ubvEXT))"\n" -"\t"STUB_ASM_CODE("909")"\n" +"\t"STUB_ASM_CODE("923")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4ubv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4ubv)", "GLAPI_PREFIX_STR(VertexAttribI4ubvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4uiEXT))"\n" -"\t"STUB_ASM_CODE("910")"\n" +"\t"STUB_ASM_CODE("924")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4ui)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4ui)", "GLAPI_PREFIX_STR(VertexAttribI4uiEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4uivEXT))"\n" -"\t"STUB_ASM_CODE("911")"\n" +"\t"STUB_ASM_CODE("925")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4uiv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4uiv)", "GLAPI_PREFIX_STR(VertexAttribI4uivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribI4usvEXT))"\n" -"\t"STUB_ASM_CODE("912")"\n" +"\t"STUB_ASM_CODE("926")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribI4usv)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribI4usv)", "GLAPI_PREFIX_STR(VertexAttribI4usvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(VertexAttribIPointerEXT))"\n" -"\t"STUB_ASM_CODE("913")"\n" +"\t"STUB_ASM_CODE("927")"\n" ".globl "GLAPI_PREFIX_STR(VertexAttribIPointer)"\n" ".set "GLAPI_PREFIX_STR(VertexAttribIPointer)", "GLAPI_PREFIX_STR(VertexAttribIPointerEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(FramebufferTextureLayerEXT))"\n" -"\t"STUB_ASM_CODE("914")"\n" +"\t"STUB_ASM_CODE("928")"\n" ".globl "GLAPI_PREFIX_STR(FramebufferTextureLayer)"\n" ".set "GLAPI_PREFIX_STR(FramebufferTextureLayer)", "GLAPI_PREFIX_STR(FramebufferTextureLayerEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ColorMaskIndexedEXT))"\n" -"\t"STUB_ASM_CODE("915")"\n" +"\t"STUB_ASM_CODE("929")"\n" ".globl "GLAPI_PREFIX_STR(ColorMaski)"\n" ".set "GLAPI_PREFIX_STR(ColorMaski)", "GLAPI_PREFIX_STR(ColorMaskIndexedEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(DisableIndexedEXT))"\n" -"\t"STUB_ASM_CODE("916")"\n" +"\t"STUB_ASM_CODE("930")"\n" ".globl "GLAPI_PREFIX_STR(Disablei)"\n" ".set "GLAPI_PREFIX_STR(Disablei)", "GLAPI_PREFIX_STR(DisableIndexedEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EnableIndexedEXT))"\n" -"\t"STUB_ASM_CODE("917")"\n" +"\t"STUB_ASM_CODE("931")"\n" ".globl "GLAPI_PREFIX_STR(Enablei)"\n" ".set "GLAPI_PREFIX_STR(Enablei)", "GLAPI_PREFIX_STR(EnableIndexedEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetBooleanIndexedvEXT))"\n" -"\t"STUB_ASM_CODE("918")"\n" +"\t"STUB_ASM_CODE("932")"\n" ".globl "GLAPI_PREFIX_STR(GetBooleani_v)"\n" ".set "GLAPI_PREFIX_STR(GetBooleani_v)", "GLAPI_PREFIX_STR(GetBooleanIndexedvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetIntegerIndexedvEXT))"\n" -"\t"STUB_ASM_CODE("919")"\n" +"\t"STUB_ASM_CODE("933")"\n" ".globl "GLAPI_PREFIX_STR(GetIntegeri_v)"\n" ".set "GLAPI_PREFIX_STR(GetIntegeri_v)", "GLAPI_PREFIX_STR(GetIntegerIndexedvEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(IsEnabledIndexedEXT))"\n" -"\t"STUB_ASM_CODE("920")"\n" +"\t"STUB_ASM_CODE("934")"\n" ".globl "GLAPI_PREFIX_STR(IsEnabledi)"\n" ".set "GLAPI_PREFIX_STR(IsEnabledi)", "GLAPI_PREFIX_STR(IsEnabledIndexedEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ClearColorIiEXT))"\n" -"\t"STUB_ASM_CODE("921")"\n" +"\t"STUB_ASM_CODE("935")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ClearColorIuiEXT))"\n" -"\t"STUB_ASM_CODE("922")"\n" +"\t"STUB_ASM_CODE("936")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTexParameterIivEXT))"\n" -"\t"STUB_ASM_CODE("923")"\n" +"\t"STUB_ASM_CODE("937")"\n" ".globl "GLAPI_PREFIX_STR(GetTexParameterIiv)"\n" ".set "GLAPI_PREFIX_STR(GetTexParameterIiv)", "GLAPI_PREFIX_STR(GetTexParameterIivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTexParameterIuivEXT))"\n" -"\t"STUB_ASM_CODE("924")"\n" +"\t"STUB_ASM_CODE("938")"\n" ".globl "GLAPI_PREFIX_STR(GetTexParameterIuiv)"\n" ".set "GLAPI_PREFIX_STR(GetTexParameterIuiv)", "GLAPI_PREFIX_STR(GetTexParameterIuivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexParameterIivEXT))"\n" -"\t"STUB_ASM_CODE("925")"\n" +"\t"STUB_ASM_CODE("939")"\n" ".globl "GLAPI_PREFIX_STR(TexParameterIiv)"\n" ".set "GLAPI_PREFIX_STR(TexParameterIiv)", "GLAPI_PREFIX_STR(TexParameterIivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TexParameterIuivEXT))"\n" -"\t"STUB_ASM_CODE("926")"\n" +"\t"STUB_ASM_CODE("940")"\n" ".globl "GLAPI_PREFIX_STR(TexParameterIuiv)"\n" ".set "GLAPI_PREFIX_STR(TexParameterIuiv)", "GLAPI_PREFIX_STR(TexParameterIuivEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BeginConditionalRenderNV))"\n" -"\t"STUB_ASM_CODE("927")"\n" +"\t"STUB_ASM_CODE("941")"\n" ".globl "GLAPI_PREFIX_STR(BeginConditionalRender)"\n" ".set "GLAPI_PREFIX_STR(BeginConditionalRender)", "GLAPI_PREFIX_STR(BeginConditionalRenderNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EndConditionalRenderNV))"\n" -"\t"STUB_ASM_CODE("928")"\n" +"\t"STUB_ASM_CODE("942")"\n" ".globl "GLAPI_PREFIX_STR(EndConditionalRender)"\n" ".set "GLAPI_PREFIX_STR(EndConditionalRender)", "GLAPI_PREFIX_STR(EndConditionalRenderNV)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BeginTransformFeedbackEXT))"\n" -"\t"STUB_ASM_CODE("929")"\n" +"\t"STUB_ASM_CODE("943")"\n" ".globl "GLAPI_PREFIX_STR(BeginTransformFeedback)"\n" ".set "GLAPI_PREFIX_STR(BeginTransformFeedback)", "GLAPI_PREFIX_STR(BeginTransformFeedbackEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindBufferBaseEXT))"\n" -"\t"STUB_ASM_CODE("930")"\n" +"\t"STUB_ASM_CODE("944")"\n" ".globl "GLAPI_PREFIX_STR(BindBufferBase)"\n" ".set "GLAPI_PREFIX_STR(BindBufferBase)", "GLAPI_PREFIX_STR(BindBufferBaseEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindBufferOffsetEXT))"\n" -"\t"STUB_ASM_CODE("931")"\n" +"\t"STUB_ASM_CODE("945")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(BindBufferRangeEXT))"\n" -"\t"STUB_ASM_CODE("932")"\n" +"\t"STUB_ASM_CODE("946")"\n" ".globl "GLAPI_PREFIX_STR(BindBufferRange)"\n" ".set "GLAPI_PREFIX_STR(BindBufferRange)", "GLAPI_PREFIX_STR(BindBufferRangeEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EndTransformFeedbackEXT))"\n" -"\t"STUB_ASM_CODE("933")"\n" +"\t"STUB_ASM_CODE("947")"\n" ".globl "GLAPI_PREFIX_STR(EndTransformFeedback)"\n" ".set "GLAPI_PREFIX_STR(EndTransformFeedback)", "GLAPI_PREFIX_STR(EndTransformFeedbackEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetTransformFeedbackVaryingEXT))"\n" -"\t"STUB_ASM_CODE("934")"\n" +"\t"STUB_ASM_CODE("948")"\n" ".globl "GLAPI_PREFIX_STR(GetTransformFeedbackVarying)"\n" ".set "GLAPI_PREFIX_STR(GetTransformFeedbackVarying)", "GLAPI_PREFIX_STR(GetTransformFeedbackVaryingEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TransformFeedbackVaryingsEXT))"\n" -"\t"STUB_ASM_CODE("935")"\n" +"\t"STUB_ASM_CODE("949")"\n" ".globl "GLAPI_PREFIX_STR(TransformFeedbackVaryings)"\n" ".set "GLAPI_PREFIX_STR(TransformFeedbackVaryings)", "GLAPI_PREFIX_STR(TransformFeedbackVaryingsEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ProvokingVertexEXT))"\n" -"\t"STUB_ASM_CODE("936")"\n" +"\t"STUB_ASM_CODE("950")"\n" ".globl "GLAPI_PREFIX_STR(ProvokingVertex)"\n" ".set "GLAPI_PREFIX_STR(ProvokingVertex)", "GLAPI_PREFIX_STR(ProvokingVertexEXT)"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(GetObjectParameterivAPPLE))"\n" -"\t"STUB_ASM_CODE("939")"\n" +"\t"STUB_ASM_CODE("953")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ObjectPurgeableAPPLE))"\n" -"\t"STUB_ASM_CODE("940")"\n" +"\t"STUB_ASM_CODE("954")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ObjectUnpurgeableAPPLE))"\n" -"\t"STUB_ASM_CODE("941")"\n" +"\t"STUB_ASM_CODE("955")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(ActiveProgramEXT))"\n" -"\t"STUB_ASM_CODE("942")"\n" +"\t"STUB_ASM_CODE("956")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(CreateShaderProgramEXT))"\n" -"\t"STUB_ASM_CODE("943")"\n" +"\t"STUB_ASM_CODE("957")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(UseShaderProgramEXT))"\n" -"\t"STUB_ASM_CODE("944")"\n" +"\t"STUB_ASM_CODE("958")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(TextureBarrierNV))"\n" -"\t"STUB_ASM_CODE("945")"\n" +"\t"STUB_ASM_CODE("959")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EGLImageTargetRenderbufferStorageOES))"\n" -"\t"STUB_ASM_CODE("951")"\n" +"\t"STUB_ASM_CODE("965")"\n" STUB_ASM_ENTRY(GLAPI_PREFIX_STR(EGLImageTargetTexture2DOES))"\n" -"\t"STUB_ASM_CODE("952")"\n" +"\t"STUB_ASM_CODE("966")"\n" ); #undef MAPI_TMP_STUB_ASM_GCC_NO_HIDDEN diff --git a/src/mapi/glapi/glapi_sparc.S b/src/mapi/glapi/glapi_sparc.S index edbce937165..f62e1258b4e 100644 --- a/src/mapi/glapi/glapi_sparc.S +++ b/src/mapi/glapi/glapi_sparc.S @@ -795,335 +795,349 @@ gl_dispatch_functions_start: GL_STUB(glBlendEquationiARB, 597) GL_STUB(glBlendFuncSeparateiARB, 598) GL_STUB(glBlendFunciARB, 599) - GL_STUB(glBindTransformFeedback, 600) - GL_STUB(glDeleteTransformFeedbacks, 601) - GL_STUB(glDrawTransformFeedback, 602) - GL_STUB(glGenTransformFeedbacks, 603) - GL_STUB(glIsTransformFeedback, 604) - GL_STUB(glPauseTransformFeedback, 605) - GL_STUB(glResumeTransformFeedback, 606) - GL_STUB(glClearDepthf, 607) - GL_STUB(glDepthRangef, 608) - GL_STUB(glGetShaderPrecisionFormat, 609) - GL_STUB(glReleaseShaderCompiler, 610) - GL_STUB(glShaderBinary, 611) - GL_STUB(glPolygonOffsetEXT, 612) - GL_STUB(gl_dispatch_stub_613, 613) - HIDDEN(gl_dispatch_stub_613) - GL_STUB(gl_dispatch_stub_614, 614) - HIDDEN(gl_dispatch_stub_614) - GL_STUB(gl_dispatch_stub_615, 615) - HIDDEN(gl_dispatch_stub_615) - GL_STUB(gl_dispatch_stub_616, 616) - HIDDEN(gl_dispatch_stub_616) - GL_STUB(gl_dispatch_stub_617, 617) - HIDDEN(gl_dispatch_stub_617) - GL_STUB(gl_dispatch_stub_618, 618) - HIDDEN(gl_dispatch_stub_618) - GL_STUB(gl_dispatch_stub_619, 619) - HIDDEN(gl_dispatch_stub_619) - GL_STUB(gl_dispatch_stub_620, 620) - HIDDEN(gl_dispatch_stub_620) - GL_STUB(glColorPointerEXT, 621) - GL_STUB(glEdgeFlagPointerEXT, 622) - GL_STUB(glIndexPointerEXT, 623) - GL_STUB(glNormalPointerEXT, 624) - GL_STUB(glTexCoordPointerEXT, 625) - GL_STUB(glVertexPointerEXT, 626) - GL_STUB(glPointParameterfEXT, 627) - GL_STUB(glPointParameterfvEXT, 628) - GL_STUB(glLockArraysEXT, 629) - GL_STUB(glUnlockArraysEXT, 630) - GL_STUB(glSecondaryColor3bEXT, 631) - GL_STUB(glSecondaryColor3bvEXT, 632) - GL_STUB(glSecondaryColor3dEXT, 633) - GL_STUB(glSecondaryColor3dvEXT, 634) - GL_STUB(glSecondaryColor3fEXT, 635) - GL_STUB(glSecondaryColor3fvEXT, 636) - GL_STUB(glSecondaryColor3iEXT, 637) - GL_STUB(glSecondaryColor3ivEXT, 638) - GL_STUB(glSecondaryColor3sEXT, 639) - GL_STUB(glSecondaryColor3svEXT, 640) - GL_STUB(glSecondaryColor3ubEXT, 641) - GL_STUB(glSecondaryColor3ubvEXT, 642) - GL_STUB(glSecondaryColor3uiEXT, 643) - GL_STUB(glSecondaryColor3uivEXT, 644) - GL_STUB(glSecondaryColor3usEXT, 645) - GL_STUB(glSecondaryColor3usvEXT, 646) - GL_STUB(glSecondaryColorPointerEXT, 647) - GL_STUB(glMultiDrawArraysEXT, 648) - GL_STUB(glMultiDrawElementsEXT, 649) - GL_STUB(glFogCoordPointerEXT, 650) - GL_STUB(glFogCoorddEXT, 651) - GL_STUB(glFogCoorddvEXT, 652) - GL_STUB(glFogCoordfEXT, 653) - GL_STUB(glFogCoordfvEXT, 654) - GL_STUB(gl_dispatch_stub_655, 655) - HIDDEN(gl_dispatch_stub_655) - GL_STUB(glBlendFuncSeparateEXT, 656) - GL_STUB(glFlushVertexArrayRangeNV, 657) - GL_STUB(glVertexArrayRangeNV, 658) - GL_STUB(glCombinerInputNV, 659) - GL_STUB(glCombinerOutputNV, 660) - GL_STUB(glCombinerParameterfNV, 661) - GL_STUB(glCombinerParameterfvNV, 662) - GL_STUB(glCombinerParameteriNV, 663) - GL_STUB(glCombinerParameterivNV, 664) - GL_STUB(glFinalCombinerInputNV, 665) - GL_STUB(glGetCombinerInputParameterfvNV, 666) - GL_STUB(glGetCombinerInputParameterivNV, 667) - GL_STUB(glGetCombinerOutputParameterfvNV, 668) - GL_STUB(glGetCombinerOutputParameterivNV, 669) - GL_STUB(glGetFinalCombinerInputParameterfvNV, 670) - GL_STUB(glGetFinalCombinerInputParameterivNV, 671) - GL_STUB(glResizeBuffersMESA, 672) - GL_STUB(glWindowPos2dMESA, 673) - GL_STUB(glWindowPos2dvMESA, 674) - GL_STUB(glWindowPos2fMESA, 675) - GL_STUB(glWindowPos2fvMESA, 676) - GL_STUB(glWindowPos2iMESA, 677) - GL_STUB(glWindowPos2ivMESA, 678) - GL_STUB(glWindowPos2sMESA, 679) - GL_STUB(glWindowPos2svMESA, 680) - GL_STUB(glWindowPos3dMESA, 681) - GL_STUB(glWindowPos3dvMESA, 682) - GL_STUB(glWindowPos3fMESA, 683) - GL_STUB(glWindowPos3fvMESA, 684) - GL_STUB(glWindowPos3iMESA, 685) - GL_STUB(glWindowPos3ivMESA, 686) - GL_STUB(glWindowPos3sMESA, 687) - GL_STUB(glWindowPos3svMESA, 688) - GL_STUB(glWindowPos4dMESA, 689) - GL_STUB(glWindowPos4dvMESA, 690) - GL_STUB(glWindowPos4fMESA, 691) - GL_STUB(glWindowPos4fvMESA, 692) - GL_STUB(glWindowPos4iMESA, 693) - GL_STUB(glWindowPos4ivMESA, 694) - GL_STUB(glWindowPos4sMESA, 695) - GL_STUB(glWindowPos4svMESA, 696) - GL_STUB(gl_dispatch_stub_697, 697) - HIDDEN(gl_dispatch_stub_697) - GL_STUB(gl_dispatch_stub_698, 698) - HIDDEN(gl_dispatch_stub_698) - GL_STUB(gl_dispatch_stub_699, 699) - HIDDEN(gl_dispatch_stub_699) - GL_STUB(gl_dispatch_stub_700, 700) - HIDDEN(gl_dispatch_stub_700) - GL_STUB(gl_dispatch_stub_701, 701) - HIDDEN(gl_dispatch_stub_701) - GL_STUB(gl_dispatch_stub_702, 702) - HIDDEN(gl_dispatch_stub_702) - GL_STUB(gl_dispatch_stub_703, 703) - HIDDEN(gl_dispatch_stub_703) - GL_STUB(gl_dispatch_stub_704, 704) - HIDDEN(gl_dispatch_stub_704) - GL_STUB(gl_dispatch_stub_705, 705) - HIDDEN(gl_dispatch_stub_705) - GL_STUB(glAreProgramsResidentNV, 706) - GL_STUB(glBindProgramNV, 707) - GL_STUB(glDeleteProgramsNV, 708) - GL_STUB(glExecuteProgramNV, 709) - GL_STUB(glGenProgramsNV, 710) - GL_STUB(glGetProgramParameterdvNV, 711) - GL_STUB(glGetProgramParameterfvNV, 712) - GL_STUB(glGetProgramStringNV, 713) - GL_STUB(glGetProgramivNV, 714) - GL_STUB(glGetTrackMatrixivNV, 715) - GL_STUB(glGetVertexAttribPointervNV, 716) - GL_STUB(glGetVertexAttribdvNV, 717) - GL_STUB(glGetVertexAttribfvNV, 718) - GL_STUB(glGetVertexAttribivNV, 719) - GL_STUB(glIsProgramNV, 720) - GL_STUB(glLoadProgramNV, 721) - GL_STUB(glProgramParameters4dvNV, 722) - GL_STUB(glProgramParameters4fvNV, 723) - GL_STUB(glRequestResidentProgramsNV, 724) - GL_STUB(glTrackMatrixNV, 725) - GL_STUB(glVertexAttrib1dNV, 726) - GL_STUB(glVertexAttrib1dvNV, 727) - GL_STUB(glVertexAttrib1fNV, 728) - GL_STUB(glVertexAttrib1fvNV, 729) - GL_STUB(glVertexAttrib1sNV, 730) - GL_STUB(glVertexAttrib1svNV, 731) - GL_STUB(glVertexAttrib2dNV, 732) - GL_STUB(glVertexAttrib2dvNV, 733) - GL_STUB(glVertexAttrib2fNV, 734) - GL_STUB(glVertexAttrib2fvNV, 735) - GL_STUB(glVertexAttrib2sNV, 736) - GL_STUB(glVertexAttrib2svNV, 737) - GL_STUB(glVertexAttrib3dNV, 738) - GL_STUB(glVertexAttrib3dvNV, 739) - GL_STUB(glVertexAttrib3fNV, 740) - GL_STUB(glVertexAttrib3fvNV, 741) - GL_STUB(glVertexAttrib3sNV, 742) - GL_STUB(glVertexAttrib3svNV, 743) - GL_STUB(glVertexAttrib4dNV, 744) - GL_STUB(glVertexAttrib4dvNV, 745) - GL_STUB(glVertexAttrib4fNV, 746) - GL_STUB(glVertexAttrib4fvNV, 747) - GL_STUB(glVertexAttrib4sNV, 748) - GL_STUB(glVertexAttrib4svNV, 749) - GL_STUB(glVertexAttrib4ubNV, 750) - GL_STUB(glVertexAttrib4ubvNV, 751) - GL_STUB(glVertexAttribPointerNV, 752) - GL_STUB(glVertexAttribs1dvNV, 753) - GL_STUB(glVertexAttribs1fvNV, 754) - GL_STUB(glVertexAttribs1svNV, 755) - GL_STUB(glVertexAttribs2dvNV, 756) - GL_STUB(glVertexAttribs2fvNV, 757) - GL_STUB(glVertexAttribs2svNV, 758) - GL_STUB(glVertexAttribs3dvNV, 759) - GL_STUB(glVertexAttribs3fvNV, 760) - GL_STUB(glVertexAttribs3svNV, 761) - GL_STUB(glVertexAttribs4dvNV, 762) - GL_STUB(glVertexAttribs4fvNV, 763) - GL_STUB(glVertexAttribs4svNV, 764) - GL_STUB(glVertexAttribs4ubvNV, 765) - GL_STUB(glGetTexBumpParameterfvATI, 766) - GL_STUB(glGetTexBumpParameterivATI, 767) - GL_STUB(glTexBumpParameterfvATI, 768) - GL_STUB(glTexBumpParameterivATI, 769) - GL_STUB(glAlphaFragmentOp1ATI, 770) - GL_STUB(glAlphaFragmentOp2ATI, 771) - GL_STUB(glAlphaFragmentOp3ATI, 772) - GL_STUB(glBeginFragmentShaderATI, 773) - GL_STUB(glBindFragmentShaderATI, 774) - GL_STUB(glColorFragmentOp1ATI, 775) - GL_STUB(glColorFragmentOp2ATI, 776) - GL_STUB(glColorFragmentOp3ATI, 777) - GL_STUB(glDeleteFragmentShaderATI, 778) - GL_STUB(glEndFragmentShaderATI, 779) - GL_STUB(glGenFragmentShadersATI, 780) - GL_STUB(glPassTexCoordATI, 781) - GL_STUB(glSampleMapATI, 782) - GL_STUB(glSetFragmentShaderConstantATI, 783) - GL_STUB(glPointParameteriNV, 784) - GL_STUB(glPointParameterivNV, 785) - GL_STUB(gl_dispatch_stub_786, 786) - HIDDEN(gl_dispatch_stub_786) - GL_STUB(gl_dispatch_stub_787, 787) - HIDDEN(gl_dispatch_stub_787) - GL_STUB(gl_dispatch_stub_788, 788) - HIDDEN(gl_dispatch_stub_788) - GL_STUB(gl_dispatch_stub_789, 789) - HIDDEN(gl_dispatch_stub_789) - GL_STUB(gl_dispatch_stub_790, 790) - HIDDEN(gl_dispatch_stub_790) - GL_STUB(glGetProgramNamedParameterdvNV, 791) - GL_STUB(glGetProgramNamedParameterfvNV, 792) - GL_STUB(glProgramNamedParameter4dNV, 793) - GL_STUB(glProgramNamedParameter4dvNV, 794) - GL_STUB(glProgramNamedParameter4fNV, 795) - GL_STUB(glProgramNamedParameter4fvNV, 796) - GL_STUB(glPrimitiveRestartIndexNV, 797) - GL_STUB(glPrimitiveRestartNV, 798) - GL_STUB(gl_dispatch_stub_799, 799) - HIDDEN(gl_dispatch_stub_799) + GL_STUB(glBindSampler, 600) + GL_STUB(glDeleteSamplers, 601) + GL_STUB(glGenSamplers, 602) + GL_STUB(glGetSamplerParameterIiv, 603) + GL_STUB(glGetSamplerParameterIuiv, 604) + GL_STUB(glGetSamplerParameterfv, 605) + GL_STUB(glGetSamplerParameteriv, 606) + GL_STUB(glIsSampler, 607) + GL_STUB(glSamplerParameterIiv, 608) + GL_STUB(glSamplerParameterIuiv, 609) + GL_STUB(glSamplerParameterf, 610) + GL_STUB(glSamplerParameterfv, 611) + GL_STUB(glSamplerParameteri, 612) + GL_STUB(glSamplerParameteriv, 613) + GL_STUB(glBindTransformFeedback, 614) + GL_STUB(glDeleteTransformFeedbacks, 615) + GL_STUB(glDrawTransformFeedback, 616) + GL_STUB(glGenTransformFeedbacks, 617) + GL_STUB(glIsTransformFeedback, 618) + GL_STUB(glPauseTransformFeedback, 619) + GL_STUB(glResumeTransformFeedback, 620) + GL_STUB(glClearDepthf, 621) + GL_STUB(glDepthRangef, 622) + GL_STUB(glGetShaderPrecisionFormat, 623) + GL_STUB(glReleaseShaderCompiler, 624) + GL_STUB(glShaderBinary, 625) + GL_STUB(glPolygonOffsetEXT, 626) + GL_STUB(gl_dispatch_stub_627, 627) + HIDDEN(gl_dispatch_stub_627) + GL_STUB(gl_dispatch_stub_628, 628) + HIDDEN(gl_dispatch_stub_628) + GL_STUB(gl_dispatch_stub_629, 629) + HIDDEN(gl_dispatch_stub_629) + GL_STUB(gl_dispatch_stub_630, 630) + HIDDEN(gl_dispatch_stub_630) + GL_STUB(gl_dispatch_stub_631, 631) + HIDDEN(gl_dispatch_stub_631) + GL_STUB(gl_dispatch_stub_632, 632) + HIDDEN(gl_dispatch_stub_632) + GL_STUB(gl_dispatch_stub_633, 633) + HIDDEN(gl_dispatch_stub_633) + GL_STUB(gl_dispatch_stub_634, 634) + HIDDEN(gl_dispatch_stub_634) + GL_STUB(glColorPointerEXT, 635) + GL_STUB(glEdgeFlagPointerEXT, 636) + GL_STUB(glIndexPointerEXT, 637) + GL_STUB(glNormalPointerEXT, 638) + GL_STUB(glTexCoordPointerEXT, 639) + GL_STUB(glVertexPointerEXT, 640) + GL_STUB(glPointParameterfEXT, 641) + GL_STUB(glPointParameterfvEXT, 642) + GL_STUB(glLockArraysEXT, 643) + GL_STUB(glUnlockArraysEXT, 644) + GL_STUB(glSecondaryColor3bEXT, 645) + GL_STUB(glSecondaryColor3bvEXT, 646) + GL_STUB(glSecondaryColor3dEXT, 647) + GL_STUB(glSecondaryColor3dvEXT, 648) + GL_STUB(glSecondaryColor3fEXT, 649) + GL_STUB(glSecondaryColor3fvEXT, 650) + GL_STUB(glSecondaryColor3iEXT, 651) + GL_STUB(glSecondaryColor3ivEXT, 652) + GL_STUB(glSecondaryColor3sEXT, 653) + GL_STUB(glSecondaryColor3svEXT, 654) + GL_STUB(glSecondaryColor3ubEXT, 655) + GL_STUB(glSecondaryColor3ubvEXT, 656) + GL_STUB(glSecondaryColor3uiEXT, 657) + GL_STUB(glSecondaryColor3uivEXT, 658) + GL_STUB(glSecondaryColor3usEXT, 659) + GL_STUB(glSecondaryColor3usvEXT, 660) + GL_STUB(glSecondaryColorPointerEXT, 661) + GL_STUB(glMultiDrawArraysEXT, 662) + GL_STUB(glMultiDrawElementsEXT, 663) + GL_STUB(glFogCoordPointerEXT, 664) + GL_STUB(glFogCoorddEXT, 665) + GL_STUB(glFogCoorddvEXT, 666) + GL_STUB(glFogCoordfEXT, 667) + GL_STUB(glFogCoordfvEXT, 668) + GL_STUB(gl_dispatch_stub_669, 669) + HIDDEN(gl_dispatch_stub_669) + GL_STUB(glBlendFuncSeparateEXT, 670) + GL_STUB(glFlushVertexArrayRangeNV, 671) + GL_STUB(glVertexArrayRangeNV, 672) + GL_STUB(glCombinerInputNV, 673) + GL_STUB(glCombinerOutputNV, 674) + GL_STUB(glCombinerParameterfNV, 675) + GL_STUB(glCombinerParameterfvNV, 676) + GL_STUB(glCombinerParameteriNV, 677) + GL_STUB(glCombinerParameterivNV, 678) + GL_STUB(glFinalCombinerInputNV, 679) + GL_STUB(glGetCombinerInputParameterfvNV, 680) + GL_STUB(glGetCombinerInputParameterivNV, 681) + GL_STUB(glGetCombinerOutputParameterfvNV, 682) + GL_STUB(glGetCombinerOutputParameterivNV, 683) + GL_STUB(glGetFinalCombinerInputParameterfvNV, 684) + GL_STUB(glGetFinalCombinerInputParameterivNV, 685) + GL_STUB(glResizeBuffersMESA, 686) + GL_STUB(glWindowPos2dMESA, 687) + GL_STUB(glWindowPos2dvMESA, 688) + GL_STUB(glWindowPos2fMESA, 689) + GL_STUB(glWindowPos2fvMESA, 690) + GL_STUB(glWindowPos2iMESA, 691) + GL_STUB(glWindowPos2ivMESA, 692) + GL_STUB(glWindowPos2sMESA, 693) + GL_STUB(glWindowPos2svMESA, 694) + GL_STUB(glWindowPos3dMESA, 695) + GL_STUB(glWindowPos3dvMESA, 696) + GL_STUB(glWindowPos3fMESA, 697) + GL_STUB(glWindowPos3fvMESA, 698) + GL_STUB(glWindowPos3iMESA, 699) + GL_STUB(glWindowPos3ivMESA, 700) + GL_STUB(glWindowPos3sMESA, 701) + GL_STUB(glWindowPos3svMESA, 702) + GL_STUB(glWindowPos4dMESA, 703) + GL_STUB(glWindowPos4dvMESA, 704) + GL_STUB(glWindowPos4fMESA, 705) + GL_STUB(glWindowPos4fvMESA, 706) + GL_STUB(glWindowPos4iMESA, 707) + GL_STUB(glWindowPos4ivMESA, 708) + GL_STUB(glWindowPos4sMESA, 709) + GL_STUB(glWindowPos4svMESA, 710) + GL_STUB(gl_dispatch_stub_711, 711) + HIDDEN(gl_dispatch_stub_711) + GL_STUB(gl_dispatch_stub_712, 712) + HIDDEN(gl_dispatch_stub_712) + GL_STUB(gl_dispatch_stub_713, 713) + HIDDEN(gl_dispatch_stub_713) + GL_STUB(gl_dispatch_stub_714, 714) + HIDDEN(gl_dispatch_stub_714) + GL_STUB(gl_dispatch_stub_715, 715) + HIDDEN(gl_dispatch_stub_715) + GL_STUB(gl_dispatch_stub_716, 716) + HIDDEN(gl_dispatch_stub_716) + GL_STUB(gl_dispatch_stub_717, 717) + HIDDEN(gl_dispatch_stub_717) + GL_STUB(gl_dispatch_stub_718, 718) + HIDDEN(gl_dispatch_stub_718) + GL_STUB(gl_dispatch_stub_719, 719) + HIDDEN(gl_dispatch_stub_719) + GL_STUB(glAreProgramsResidentNV, 720) + GL_STUB(glBindProgramNV, 721) + GL_STUB(glDeleteProgramsNV, 722) + GL_STUB(glExecuteProgramNV, 723) + GL_STUB(glGenProgramsNV, 724) + GL_STUB(glGetProgramParameterdvNV, 725) + GL_STUB(glGetProgramParameterfvNV, 726) + GL_STUB(glGetProgramStringNV, 727) + GL_STUB(glGetProgramivNV, 728) + GL_STUB(glGetTrackMatrixivNV, 729) + GL_STUB(glGetVertexAttribPointervNV, 730) + GL_STUB(glGetVertexAttribdvNV, 731) + GL_STUB(glGetVertexAttribfvNV, 732) + GL_STUB(glGetVertexAttribivNV, 733) + GL_STUB(glIsProgramNV, 734) + GL_STUB(glLoadProgramNV, 735) + GL_STUB(glProgramParameters4dvNV, 736) + GL_STUB(glProgramParameters4fvNV, 737) + GL_STUB(glRequestResidentProgramsNV, 738) + GL_STUB(glTrackMatrixNV, 739) + GL_STUB(glVertexAttrib1dNV, 740) + GL_STUB(glVertexAttrib1dvNV, 741) + GL_STUB(glVertexAttrib1fNV, 742) + GL_STUB(glVertexAttrib1fvNV, 743) + GL_STUB(glVertexAttrib1sNV, 744) + GL_STUB(glVertexAttrib1svNV, 745) + GL_STUB(glVertexAttrib2dNV, 746) + GL_STUB(glVertexAttrib2dvNV, 747) + GL_STUB(glVertexAttrib2fNV, 748) + GL_STUB(glVertexAttrib2fvNV, 749) + GL_STUB(glVertexAttrib2sNV, 750) + GL_STUB(glVertexAttrib2svNV, 751) + GL_STUB(glVertexAttrib3dNV, 752) + GL_STUB(glVertexAttrib3dvNV, 753) + GL_STUB(glVertexAttrib3fNV, 754) + GL_STUB(glVertexAttrib3fvNV, 755) + GL_STUB(glVertexAttrib3sNV, 756) + GL_STUB(glVertexAttrib3svNV, 757) + GL_STUB(glVertexAttrib4dNV, 758) + GL_STUB(glVertexAttrib4dvNV, 759) + GL_STUB(glVertexAttrib4fNV, 760) + GL_STUB(glVertexAttrib4fvNV, 761) + GL_STUB(glVertexAttrib4sNV, 762) + GL_STUB(glVertexAttrib4svNV, 763) + GL_STUB(glVertexAttrib4ubNV, 764) + GL_STUB(glVertexAttrib4ubvNV, 765) + GL_STUB(glVertexAttribPointerNV, 766) + GL_STUB(glVertexAttribs1dvNV, 767) + GL_STUB(glVertexAttribs1fvNV, 768) + GL_STUB(glVertexAttribs1svNV, 769) + GL_STUB(glVertexAttribs2dvNV, 770) + GL_STUB(glVertexAttribs2fvNV, 771) + GL_STUB(glVertexAttribs2svNV, 772) + GL_STUB(glVertexAttribs3dvNV, 773) + GL_STUB(glVertexAttribs3fvNV, 774) + GL_STUB(glVertexAttribs3svNV, 775) + GL_STUB(glVertexAttribs4dvNV, 776) + GL_STUB(glVertexAttribs4fvNV, 777) + GL_STUB(glVertexAttribs4svNV, 778) + GL_STUB(glVertexAttribs4ubvNV, 779) + GL_STUB(glGetTexBumpParameterfvATI, 780) + GL_STUB(glGetTexBumpParameterivATI, 781) + GL_STUB(glTexBumpParameterfvATI, 782) + GL_STUB(glTexBumpParameterivATI, 783) + GL_STUB(glAlphaFragmentOp1ATI, 784) + GL_STUB(glAlphaFragmentOp2ATI, 785) + GL_STUB(glAlphaFragmentOp3ATI, 786) + GL_STUB(glBeginFragmentShaderATI, 787) + GL_STUB(glBindFragmentShaderATI, 788) + GL_STUB(glColorFragmentOp1ATI, 789) + GL_STUB(glColorFragmentOp2ATI, 790) + GL_STUB(glColorFragmentOp3ATI, 791) + GL_STUB(glDeleteFragmentShaderATI, 792) + GL_STUB(glEndFragmentShaderATI, 793) + GL_STUB(glGenFragmentShadersATI, 794) + GL_STUB(glPassTexCoordATI, 795) + GL_STUB(glSampleMapATI, 796) + GL_STUB(glSetFragmentShaderConstantATI, 797) + GL_STUB(glPointParameteriNV, 798) + GL_STUB(glPointParameterivNV, 799) GL_STUB(gl_dispatch_stub_800, 800) HIDDEN(gl_dispatch_stub_800) - GL_STUB(glBindFramebufferEXT, 801) - GL_STUB(glBindRenderbufferEXT, 802) - GL_STUB(glCheckFramebufferStatusEXT, 803) - GL_STUB(glDeleteFramebuffersEXT, 804) - GL_STUB(glDeleteRenderbuffersEXT, 805) - GL_STUB(glFramebufferRenderbufferEXT, 806) - GL_STUB(glFramebufferTexture1DEXT, 807) - GL_STUB(glFramebufferTexture2DEXT, 808) - GL_STUB(glFramebufferTexture3DEXT, 809) - GL_STUB(glGenFramebuffersEXT, 810) - GL_STUB(glGenRenderbuffersEXT, 811) - GL_STUB(glGenerateMipmapEXT, 812) - GL_STUB(glGetFramebufferAttachmentParameterivEXT, 813) - GL_STUB(glGetRenderbufferParameterivEXT, 814) - GL_STUB(glIsFramebufferEXT, 815) - GL_STUB(glIsRenderbufferEXT, 816) - GL_STUB(glRenderbufferStorageEXT, 817) - GL_STUB(gl_dispatch_stub_818, 818) - HIDDEN(gl_dispatch_stub_818) - GL_STUB(gl_dispatch_stub_819, 819) - HIDDEN(gl_dispatch_stub_819) - GL_STUB(gl_dispatch_stub_820, 820) - HIDDEN(gl_dispatch_stub_820) - GL_STUB(glBindFragDataLocationEXT, 821) - GL_STUB(glGetFragDataLocationEXT, 822) - GL_STUB(glGetUniformuivEXT, 823) - GL_STUB(glGetVertexAttribIivEXT, 824) - GL_STUB(glGetVertexAttribIuivEXT, 825) - GL_STUB(glUniform1uiEXT, 826) - GL_STUB(glUniform1uivEXT, 827) - GL_STUB(glUniform2uiEXT, 828) - GL_STUB(glUniform2uivEXT, 829) - GL_STUB(glUniform3uiEXT, 830) - GL_STUB(glUniform3uivEXT, 831) - GL_STUB(glUniform4uiEXT, 832) - GL_STUB(glUniform4uivEXT, 833) - GL_STUB(glVertexAttribI1iEXT, 834) - GL_STUB(glVertexAttribI1ivEXT, 835) - GL_STUB(glVertexAttribI1uiEXT, 836) - GL_STUB(glVertexAttribI1uivEXT, 837) - GL_STUB(glVertexAttribI2iEXT, 838) - GL_STUB(glVertexAttribI2ivEXT, 839) - GL_STUB(glVertexAttribI2uiEXT, 840) - GL_STUB(glVertexAttribI2uivEXT, 841) - GL_STUB(glVertexAttribI3iEXT, 842) - GL_STUB(glVertexAttribI3ivEXT, 843) - GL_STUB(glVertexAttribI3uiEXT, 844) - GL_STUB(glVertexAttribI3uivEXT, 845) - GL_STUB(glVertexAttribI4bvEXT, 846) - GL_STUB(glVertexAttribI4iEXT, 847) - GL_STUB(glVertexAttribI4ivEXT, 848) - GL_STUB(glVertexAttribI4svEXT, 849) - GL_STUB(glVertexAttribI4ubvEXT, 850) - GL_STUB(glVertexAttribI4uiEXT, 851) - GL_STUB(glVertexAttribI4uivEXT, 852) - GL_STUB(glVertexAttribI4usvEXT, 853) - GL_STUB(glVertexAttribIPointerEXT, 854) - GL_STUB(glFramebufferTextureLayerEXT, 855) - GL_STUB(glColorMaskIndexedEXT, 856) - GL_STUB(glDisableIndexedEXT, 857) - GL_STUB(glEnableIndexedEXT, 858) - GL_STUB(glGetBooleanIndexedvEXT, 859) - GL_STUB(glGetIntegerIndexedvEXT, 860) - GL_STUB(glIsEnabledIndexedEXT, 861) - GL_STUB(glClearColorIiEXT, 862) - GL_STUB(glClearColorIuiEXT, 863) - GL_STUB(glGetTexParameterIivEXT, 864) - GL_STUB(glGetTexParameterIuivEXT, 865) - GL_STUB(glTexParameterIivEXT, 866) - GL_STUB(glTexParameterIuivEXT, 867) - GL_STUB(glBeginConditionalRenderNV, 868) - GL_STUB(glEndConditionalRenderNV, 869) - GL_STUB(glBeginTransformFeedbackEXT, 870) - GL_STUB(glBindBufferBaseEXT, 871) - GL_STUB(glBindBufferOffsetEXT, 872) - GL_STUB(glBindBufferRangeEXT, 873) - GL_STUB(glEndTransformFeedbackEXT, 874) - GL_STUB(glGetTransformFeedbackVaryingEXT, 875) - GL_STUB(glTransformFeedbackVaryingsEXT, 876) - GL_STUB(glProvokingVertexEXT, 877) - GL_STUB(gl_dispatch_stub_878, 878) - HIDDEN(gl_dispatch_stub_878) - GL_STUB(gl_dispatch_stub_879, 879) - HIDDEN(gl_dispatch_stub_879) - GL_STUB(glGetObjectParameterivAPPLE, 880) - GL_STUB(glObjectPurgeableAPPLE, 881) - GL_STUB(glObjectUnpurgeableAPPLE, 882) - GL_STUB(glActiveProgramEXT, 883) - GL_STUB(glCreateShaderProgramEXT, 884) - GL_STUB(glUseShaderProgramEXT, 885) - GL_STUB(glTextureBarrierNV, 886) - GL_STUB(gl_dispatch_stub_887, 887) - HIDDEN(gl_dispatch_stub_887) - GL_STUB(gl_dispatch_stub_888, 888) - HIDDEN(gl_dispatch_stub_888) - GL_STUB(gl_dispatch_stub_889, 889) - HIDDEN(gl_dispatch_stub_889) - GL_STUB(gl_dispatch_stub_890, 890) - HIDDEN(gl_dispatch_stub_890) - GL_STUB(gl_dispatch_stub_891, 891) - HIDDEN(gl_dispatch_stub_891) - GL_STUB(glEGLImageTargetRenderbufferStorageOES, 892) - GL_STUB(glEGLImageTargetTexture2DOES, 893) + GL_STUB(gl_dispatch_stub_801, 801) + HIDDEN(gl_dispatch_stub_801) + GL_STUB(gl_dispatch_stub_802, 802) + HIDDEN(gl_dispatch_stub_802) + GL_STUB(gl_dispatch_stub_803, 803) + HIDDEN(gl_dispatch_stub_803) + GL_STUB(gl_dispatch_stub_804, 804) + HIDDEN(gl_dispatch_stub_804) + GL_STUB(glGetProgramNamedParameterdvNV, 805) + GL_STUB(glGetProgramNamedParameterfvNV, 806) + GL_STUB(glProgramNamedParameter4dNV, 807) + GL_STUB(glProgramNamedParameter4dvNV, 808) + GL_STUB(glProgramNamedParameter4fNV, 809) + GL_STUB(glProgramNamedParameter4fvNV, 810) + GL_STUB(glPrimitiveRestartIndexNV, 811) + GL_STUB(glPrimitiveRestartNV, 812) + GL_STUB(gl_dispatch_stub_813, 813) + HIDDEN(gl_dispatch_stub_813) + GL_STUB(gl_dispatch_stub_814, 814) + HIDDEN(gl_dispatch_stub_814) + GL_STUB(glBindFramebufferEXT, 815) + GL_STUB(glBindRenderbufferEXT, 816) + GL_STUB(glCheckFramebufferStatusEXT, 817) + GL_STUB(glDeleteFramebuffersEXT, 818) + GL_STUB(glDeleteRenderbuffersEXT, 819) + GL_STUB(glFramebufferRenderbufferEXT, 820) + GL_STUB(glFramebufferTexture1DEXT, 821) + GL_STUB(glFramebufferTexture2DEXT, 822) + GL_STUB(glFramebufferTexture3DEXT, 823) + GL_STUB(glGenFramebuffersEXT, 824) + GL_STUB(glGenRenderbuffersEXT, 825) + GL_STUB(glGenerateMipmapEXT, 826) + GL_STUB(glGetFramebufferAttachmentParameterivEXT, 827) + GL_STUB(glGetRenderbufferParameterivEXT, 828) + GL_STUB(glIsFramebufferEXT, 829) + GL_STUB(glIsRenderbufferEXT, 830) + GL_STUB(glRenderbufferStorageEXT, 831) + GL_STUB(gl_dispatch_stub_832, 832) + HIDDEN(gl_dispatch_stub_832) + GL_STUB(gl_dispatch_stub_833, 833) + HIDDEN(gl_dispatch_stub_833) + GL_STUB(gl_dispatch_stub_834, 834) + HIDDEN(gl_dispatch_stub_834) + GL_STUB(glBindFragDataLocationEXT, 835) + GL_STUB(glGetFragDataLocationEXT, 836) + GL_STUB(glGetUniformuivEXT, 837) + GL_STUB(glGetVertexAttribIivEXT, 838) + GL_STUB(glGetVertexAttribIuivEXT, 839) + GL_STUB(glUniform1uiEXT, 840) + GL_STUB(glUniform1uivEXT, 841) + GL_STUB(glUniform2uiEXT, 842) + GL_STUB(glUniform2uivEXT, 843) + GL_STUB(glUniform3uiEXT, 844) + GL_STUB(glUniform3uivEXT, 845) + GL_STUB(glUniform4uiEXT, 846) + GL_STUB(glUniform4uivEXT, 847) + GL_STUB(glVertexAttribI1iEXT, 848) + GL_STUB(glVertexAttribI1ivEXT, 849) + GL_STUB(glVertexAttribI1uiEXT, 850) + GL_STUB(glVertexAttribI1uivEXT, 851) + GL_STUB(glVertexAttribI2iEXT, 852) + GL_STUB(glVertexAttribI2ivEXT, 853) + GL_STUB(glVertexAttribI2uiEXT, 854) + GL_STUB(glVertexAttribI2uivEXT, 855) + GL_STUB(glVertexAttribI3iEXT, 856) + GL_STUB(glVertexAttribI3ivEXT, 857) + GL_STUB(glVertexAttribI3uiEXT, 858) + GL_STUB(glVertexAttribI3uivEXT, 859) + GL_STUB(glVertexAttribI4bvEXT, 860) + GL_STUB(glVertexAttribI4iEXT, 861) + GL_STUB(glVertexAttribI4ivEXT, 862) + GL_STUB(glVertexAttribI4svEXT, 863) + GL_STUB(glVertexAttribI4ubvEXT, 864) + GL_STUB(glVertexAttribI4uiEXT, 865) + GL_STUB(glVertexAttribI4uivEXT, 866) + GL_STUB(glVertexAttribI4usvEXT, 867) + GL_STUB(glVertexAttribIPointerEXT, 868) + GL_STUB(glFramebufferTextureLayerEXT, 869) + GL_STUB(glColorMaskIndexedEXT, 870) + GL_STUB(glDisableIndexedEXT, 871) + GL_STUB(glEnableIndexedEXT, 872) + GL_STUB(glGetBooleanIndexedvEXT, 873) + GL_STUB(glGetIntegerIndexedvEXT, 874) + GL_STUB(glIsEnabledIndexedEXT, 875) + GL_STUB(glClearColorIiEXT, 876) + GL_STUB(glClearColorIuiEXT, 877) + GL_STUB(glGetTexParameterIivEXT, 878) + GL_STUB(glGetTexParameterIuivEXT, 879) + GL_STUB(glTexParameterIivEXT, 880) + GL_STUB(glTexParameterIuivEXT, 881) + GL_STUB(glBeginConditionalRenderNV, 882) + GL_STUB(glEndConditionalRenderNV, 883) + GL_STUB(glBeginTransformFeedbackEXT, 884) + GL_STUB(glBindBufferBaseEXT, 885) + GL_STUB(glBindBufferOffsetEXT, 886) + GL_STUB(glBindBufferRangeEXT, 887) + GL_STUB(glEndTransformFeedbackEXT, 888) + GL_STUB(glGetTransformFeedbackVaryingEXT, 889) + GL_STUB(glTransformFeedbackVaryingsEXT, 890) + GL_STUB(glProvokingVertexEXT, 891) + GL_STUB(gl_dispatch_stub_892, 892) + HIDDEN(gl_dispatch_stub_892) + GL_STUB(gl_dispatch_stub_893, 893) + HIDDEN(gl_dispatch_stub_893) + GL_STUB(glGetObjectParameterivAPPLE, 894) + GL_STUB(glObjectPurgeableAPPLE, 895) + GL_STUB(glObjectUnpurgeableAPPLE, 896) + GL_STUB(glActiveProgramEXT, 897) + GL_STUB(glCreateShaderProgramEXT, 898) + GL_STUB(glUseShaderProgramEXT, 899) + GL_STUB(glTextureBarrierNV, 900) + GL_STUB(gl_dispatch_stub_901, 901) + HIDDEN(gl_dispatch_stub_901) + GL_STUB(gl_dispatch_stub_902, 902) + HIDDEN(gl_dispatch_stub_902) + GL_STUB(gl_dispatch_stub_903, 903) + HIDDEN(gl_dispatch_stub_903) + GL_STUB(gl_dispatch_stub_904, 904) + HIDDEN(gl_dispatch_stub_904) + GL_STUB(gl_dispatch_stub_905, 905) + HIDDEN(gl_dispatch_stub_905) + GL_STUB(glEGLImageTargetRenderbufferStorageOES, 906) + GL_STUB(glEGLImageTargetTexture2DOES, 907) GL_STUB_ALIAS(glArrayElementEXT, glArrayElement) GL_STUB_ALIAS(glBindTextureEXT, glBindTexture) GL_STUB_ALIAS(glDrawArraysEXT, glDrawArrays) diff --git a/src/mapi/glapi/glapi_x86-64.S b/src/mapi/glapi/glapi_x86-64.S index b588e64be85..9b81f52d763 100644 --- a/src/mapi/glapi/glapi_x86-64.S +++ b/src/mapi/glapi/glapi_x86-64.S @@ -22660,9 +22660,9 @@ GL_PREFIX(BlendFunciARB): .size GL_PREFIX(BlendFunciARB), .-GL_PREFIX(BlendFunciARB) .p2align 4,,15 - .globl GL_PREFIX(BindTransformFeedback) - .type GL_PREFIX(BindTransformFeedback), @function -GL_PREFIX(BindTransformFeedback): + .globl GL_PREFIX(BindSampler) + .type GL_PREFIX(BindSampler), @function +GL_PREFIX(BindSampler): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 4800(%rax), %r11 @@ -22693,6 +22693,520 @@ GL_PREFIX(BindTransformFeedback): popq %rdi movq 4800(%rax), %r11 jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(BindSampler), .-GL_PREFIX(BindSampler) + + .p2align 4,,15 + .globl GL_PREFIX(DeleteSamplers) + .type GL_PREFIX(DeleteSamplers), @function +GL_PREFIX(DeleteSamplers): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 4808(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi + popq %rdi + movq 4808(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 4808(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %rsi + popq %rdi + movq 4808(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(DeleteSamplers), .-GL_PREFIX(DeleteSamplers) + + .p2align 4,,15 + .globl GL_PREFIX(GenSamplers) + .type GL_PREFIX(GenSamplers), @function +GL_PREFIX(GenSamplers): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 4816(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi + popq %rdi + movq 4816(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 4816(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %rsi + popq %rdi + movq 4816(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(GenSamplers), .-GL_PREFIX(GenSamplers) + + .p2align 4,,15 + .globl GL_PREFIX(GetSamplerParameterIiv) + .type GL_PREFIX(GetSamplerParameterIiv), @function +GL_PREFIX(GetSamplerParameterIiv): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 4824(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + call _x86_64_get_dispatch@PLT + popq %rdx + popq %rsi + popq %rdi + movq 4824(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 4824(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + call _glapi_get_dispatch + popq %rdx + popq %rsi + popq %rdi + movq 4824(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(GetSamplerParameterIiv), .-GL_PREFIX(GetSamplerParameterIiv) + + .p2align 4,,15 + .globl GL_PREFIX(GetSamplerParameterIuiv) + .type GL_PREFIX(GetSamplerParameterIuiv), @function +GL_PREFIX(GetSamplerParameterIuiv): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 4832(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + call _x86_64_get_dispatch@PLT + popq %rdx + popq %rsi + popq %rdi + movq 4832(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 4832(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + call _glapi_get_dispatch + popq %rdx + popq %rsi + popq %rdi + movq 4832(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(GetSamplerParameterIuiv), .-GL_PREFIX(GetSamplerParameterIuiv) + + .p2align 4,,15 + .globl GL_PREFIX(GetSamplerParameterfv) + .type GL_PREFIX(GetSamplerParameterfv), @function +GL_PREFIX(GetSamplerParameterfv): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 4840(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + call _x86_64_get_dispatch@PLT + popq %rdx + popq %rsi + popq %rdi + movq 4840(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 4840(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + call _glapi_get_dispatch + popq %rdx + popq %rsi + popq %rdi + movq 4840(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(GetSamplerParameterfv), .-GL_PREFIX(GetSamplerParameterfv) + + .p2align 4,,15 + .globl GL_PREFIX(GetSamplerParameteriv) + .type GL_PREFIX(GetSamplerParameteriv), @function +GL_PREFIX(GetSamplerParameteriv): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 4848(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + call _x86_64_get_dispatch@PLT + popq %rdx + popq %rsi + popq %rdi + movq 4848(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 4848(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + call _glapi_get_dispatch + popq %rdx + popq %rsi + popq %rdi + movq 4848(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(GetSamplerParameteriv), .-GL_PREFIX(GetSamplerParameteriv) + + .p2align 4,,15 + .globl GL_PREFIX(IsSampler) + .type GL_PREFIX(IsSampler), @function +GL_PREFIX(IsSampler): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 4856(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + call _x86_64_get_dispatch@PLT + popq %rdi + movq 4856(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 4856(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + call _glapi_get_dispatch + popq %rdi + movq 4856(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(IsSampler), .-GL_PREFIX(IsSampler) + + .p2align 4,,15 + .globl GL_PREFIX(SamplerParameterIiv) + .type GL_PREFIX(SamplerParameterIiv), @function +GL_PREFIX(SamplerParameterIiv): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 4864(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + call _x86_64_get_dispatch@PLT + popq %rdx + popq %rsi + popq %rdi + movq 4864(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 4864(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + call _glapi_get_dispatch + popq %rdx + popq %rsi + popq %rdi + movq 4864(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(SamplerParameterIiv), .-GL_PREFIX(SamplerParameterIiv) + + .p2align 4,,15 + .globl GL_PREFIX(SamplerParameterIuiv) + .type GL_PREFIX(SamplerParameterIuiv), @function +GL_PREFIX(SamplerParameterIuiv): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 4872(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + call _x86_64_get_dispatch@PLT + popq %rdx + popq %rsi + popq %rdi + movq 4872(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 4872(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + call _glapi_get_dispatch + popq %rdx + popq %rsi + popq %rdi + movq 4872(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(SamplerParameterIuiv), .-GL_PREFIX(SamplerParameterIuiv) + + .p2align 4,,15 + .globl GL_PREFIX(SamplerParameterf) + .type GL_PREFIX(SamplerParameterf), @function +GL_PREFIX(SamplerParameterf): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 4880(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + subq $24, %rsp + movq %rdi, (%rsp) + movq %rsi, 8(%rsp) + movq %xmm0, 16(%rsp) + call _x86_64_get_dispatch@PLT + movq 16(%rsp), %xmm0 + movq 8(%rsp), %rsi + movq (%rsp), %rdi + addq $24, %rsp + movq 4880(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 4880(%rax), %r11 + jmp *%r11 +1: + subq $24, %rsp + movq %rdi, (%rsp) + movq %rsi, 8(%rsp) + movq %xmm0, 16(%rsp) + call _glapi_get_dispatch + movq 16(%rsp), %xmm0 + movq 8(%rsp), %rsi + movq (%rsp), %rdi + addq $24, %rsp + movq 4880(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(SamplerParameterf), .-GL_PREFIX(SamplerParameterf) + + .p2align 4,,15 + .globl GL_PREFIX(SamplerParameterfv) + .type GL_PREFIX(SamplerParameterfv), @function +GL_PREFIX(SamplerParameterfv): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 4888(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + call _x86_64_get_dispatch@PLT + popq %rdx + popq %rsi + popq %rdi + movq 4888(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 4888(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + call _glapi_get_dispatch + popq %rdx + popq %rsi + popq %rdi + movq 4888(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(SamplerParameterfv), .-GL_PREFIX(SamplerParameterfv) + + .p2align 4,,15 + .globl GL_PREFIX(SamplerParameteri) + .type GL_PREFIX(SamplerParameteri), @function +GL_PREFIX(SamplerParameteri): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 4896(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + call _x86_64_get_dispatch@PLT + popq %rdx + popq %rsi + popq %rdi + movq 4896(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 4896(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + call _glapi_get_dispatch + popq %rdx + popq %rsi + popq %rdi + movq 4896(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(SamplerParameteri), .-GL_PREFIX(SamplerParameteri) + + .p2align 4,,15 + .globl GL_PREFIX(SamplerParameteriv) + .type GL_PREFIX(SamplerParameteriv), @function +GL_PREFIX(SamplerParameteriv): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 4904(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + call _x86_64_get_dispatch@PLT + popq %rdx + popq %rsi + popq %rdi + movq 4904(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 4904(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + call _glapi_get_dispatch + popq %rdx + popq %rsi + popq %rdi + movq 4904(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(SamplerParameteriv), .-GL_PREFIX(SamplerParameteriv) + + .p2align 4,,15 + .globl GL_PREFIX(BindTransformFeedback) + .type GL_PREFIX(BindTransformFeedback), @function +GL_PREFIX(BindTransformFeedback): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 4912(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi + popq %rdi + movq 4912(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 4912(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %rsi + popq %rdi + movq 4912(%rax), %r11 + jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindTransformFeedback), .-GL_PREFIX(BindTransformFeedback) @@ -22702,7 +23216,7 @@ GL_PREFIX(BindTransformFeedback): GL_PREFIX(DeleteTransformFeedbacks): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4808(%rax), %r11 + movq 4920(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22712,13 +23226,13 @@ GL_PREFIX(DeleteTransformFeedbacks): popq %rbp popq %rsi popq %rdi - movq 4808(%rax), %r11 + movq 4920(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4808(%rax), %r11 + movq 4920(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22728,7 +23242,7 @@ GL_PREFIX(DeleteTransformFeedbacks): popq %rbp popq %rsi popq %rdi - movq 4808(%rax), %r11 + movq 4920(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DeleteTransformFeedbacks), .-GL_PREFIX(DeleteTransformFeedbacks) @@ -22739,7 +23253,7 @@ GL_PREFIX(DeleteTransformFeedbacks): GL_PREFIX(DrawTransformFeedback): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4816(%rax), %r11 + movq 4928(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22749,13 +23263,13 @@ GL_PREFIX(DrawTransformFeedback): popq %rbp popq %rsi popq %rdi - movq 4816(%rax), %r11 + movq 4928(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4816(%rax), %r11 + movq 4928(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22765,7 +23279,7 @@ GL_PREFIX(DrawTransformFeedback): popq %rbp popq %rsi popq %rdi - movq 4816(%rax), %r11 + movq 4928(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DrawTransformFeedback), .-GL_PREFIX(DrawTransformFeedback) @@ -22776,7 +23290,7 @@ GL_PREFIX(DrawTransformFeedback): GL_PREFIX(GenTransformFeedbacks): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4824(%rax), %r11 + movq 4936(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22786,13 +23300,13 @@ GL_PREFIX(GenTransformFeedbacks): popq %rbp popq %rsi popq %rdi - movq 4824(%rax), %r11 + movq 4936(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4824(%rax), %r11 + movq 4936(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22802,7 +23316,7 @@ GL_PREFIX(GenTransformFeedbacks): popq %rbp popq %rsi popq %rdi - movq 4824(%rax), %r11 + movq 4936(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GenTransformFeedbacks), .-GL_PREFIX(GenTransformFeedbacks) @@ -22813,25 +23327,25 @@ GL_PREFIX(GenTransformFeedbacks): GL_PREFIX(IsTransformFeedback): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4832(%rax), %r11 + movq 4944(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 4832(%rax), %r11 + movq 4944(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4832(%rax), %r11 + movq 4944(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 4832(%rax), %r11 + movq 4944(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(IsTransformFeedback), .-GL_PREFIX(IsTransformFeedback) @@ -22842,25 +23356,25 @@ GL_PREFIX(IsTransformFeedback): GL_PREFIX(PauseTransformFeedback): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4840(%rax), %r11 + movq 4952(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 4840(%rax), %r11 + movq 4952(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4840(%rax), %r11 + movq 4952(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 4840(%rax), %r11 + movq 4952(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PauseTransformFeedback), .-GL_PREFIX(PauseTransformFeedback) @@ -22871,25 +23385,25 @@ GL_PREFIX(PauseTransformFeedback): GL_PREFIX(ResumeTransformFeedback): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4848(%rax), %r11 + movq 4960(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 4848(%rax), %r11 + movq 4960(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4848(%rax), %r11 + movq 4960(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 4848(%rax), %r11 + movq 4960(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ResumeTransformFeedback), .-GL_PREFIX(ResumeTransformFeedback) @@ -22900,25 +23414,25 @@ GL_PREFIX(ResumeTransformFeedback): GL_PREFIX(ClearDepthf): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4856(%rax), %r11 + movq 4968(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 4856(%rax), %r11 + movq 4968(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4856(%rax), %r11 + movq 4968(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 4856(%rax), %r11 + movq 4968(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ClearDepthf), .-GL_PREFIX(ClearDepthf) @@ -22929,7 +23443,7 @@ GL_PREFIX(ClearDepthf): GL_PREFIX(DepthRangef): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4864(%rax), %r11 + movq 4976(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22939,13 +23453,13 @@ GL_PREFIX(DepthRangef): popq %rbp popq %rsi popq %rdi - movq 4864(%rax), %r11 + movq 4976(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4864(%rax), %r11 + movq 4976(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -22955,7 +23469,7 @@ GL_PREFIX(DepthRangef): popq %rbp popq %rsi popq %rdi - movq 4864(%rax), %r11 + movq 4976(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DepthRangef), .-GL_PREFIX(DepthRangef) @@ -22966,7 +23480,7 @@ GL_PREFIX(DepthRangef): GL_PREFIX(GetShaderPrecisionFormat): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4872(%rax), %r11 + movq 4984(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -22980,13 +23494,13 @@ GL_PREFIX(GetShaderPrecisionFormat): popq %rdx popq %rsi popq %rdi - movq 4872(%rax), %r11 + movq 4984(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4872(%rax), %r11 + movq 4984(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23000,7 +23514,7 @@ GL_PREFIX(GetShaderPrecisionFormat): popq %rdx popq %rsi popq %rdi - movq 4872(%rax), %r11 + movq 4984(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetShaderPrecisionFormat), .-GL_PREFIX(GetShaderPrecisionFormat) @@ -23011,25 +23525,25 @@ GL_PREFIX(GetShaderPrecisionFormat): GL_PREFIX(ReleaseShaderCompiler): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4880(%rax), %r11 + movq 4992(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 4880(%rax), %r11 + movq 4992(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4880(%rax), %r11 + movq 4992(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 4880(%rax), %r11 + movq 4992(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ReleaseShaderCompiler), .-GL_PREFIX(ReleaseShaderCompiler) @@ -23040,7 +23554,7 @@ GL_PREFIX(ReleaseShaderCompiler): GL_PREFIX(ShaderBinary): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4888(%rax), %r11 + movq 5000(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23054,13 +23568,13 @@ GL_PREFIX(ShaderBinary): popq %rdx popq %rsi popq %rdi - movq 4888(%rax), %r11 + movq 5000(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4888(%rax), %r11 + movq 5000(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23074,7 +23588,7 @@ GL_PREFIX(ShaderBinary): popq %rdx popq %rsi popq %rdi - movq 4888(%rax), %r11 + movq 5000(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ShaderBinary), .-GL_PREFIX(ShaderBinary) @@ -23085,7 +23599,7 @@ GL_PREFIX(ShaderBinary): GL_PREFIX(PolygonOffsetEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4896(%rax), %r11 + movq 5008(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -23095,13 +23609,13 @@ GL_PREFIX(PolygonOffsetEXT): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 4896(%rax), %r11 + movq 5008(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4896(%rax), %r11 + movq 5008(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -23111,19 +23625,19 @@ GL_PREFIX(PolygonOffsetEXT): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 4896(%rax), %r11 + movq 5008(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PolygonOffsetEXT), .-GL_PREFIX(PolygonOffsetEXT) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_613) - .type GL_PREFIX(_dispatch_stub_613), @function - HIDDEN(GL_PREFIX(_dispatch_stub_613)) -GL_PREFIX(_dispatch_stub_613): + .globl GL_PREFIX(_dispatch_stub_627) + .type GL_PREFIX(_dispatch_stub_627), @function + HIDDEN(GL_PREFIX(_dispatch_stub_627)) +GL_PREFIX(_dispatch_stub_627): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4904(%rax), %r11 + movq 5016(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23133,13 +23647,13 @@ GL_PREFIX(_dispatch_stub_613): popq %rbp popq %rsi popq %rdi - movq 4904(%rax), %r11 + movq 5016(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4904(%rax), %r11 + movq 5016(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23149,19 +23663,19 @@ GL_PREFIX(_dispatch_stub_613): popq %rbp popq %rsi popq %rdi - movq 4904(%rax), %r11 + movq 5016(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_613), .-GL_PREFIX(_dispatch_stub_613) + .size GL_PREFIX(_dispatch_stub_627), .-GL_PREFIX(_dispatch_stub_627) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_614) - .type GL_PREFIX(_dispatch_stub_614), @function - HIDDEN(GL_PREFIX(_dispatch_stub_614)) -GL_PREFIX(_dispatch_stub_614): + .globl GL_PREFIX(_dispatch_stub_628) + .type GL_PREFIX(_dispatch_stub_628), @function + HIDDEN(GL_PREFIX(_dispatch_stub_628)) +GL_PREFIX(_dispatch_stub_628): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4912(%rax), %r11 + movq 5024(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23171,13 +23685,13 @@ GL_PREFIX(_dispatch_stub_614): popq %rbp popq %rsi popq %rdi - movq 4912(%rax), %r11 + movq 5024(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4912(%rax), %r11 + movq 5024(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23187,19 +23701,19 @@ GL_PREFIX(_dispatch_stub_614): popq %rbp popq %rsi popq %rdi - movq 4912(%rax), %r11 + movq 5024(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_614), .-GL_PREFIX(_dispatch_stub_614) + .size GL_PREFIX(_dispatch_stub_628), .-GL_PREFIX(_dispatch_stub_628) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_615) - .type GL_PREFIX(_dispatch_stub_615), @function - HIDDEN(GL_PREFIX(_dispatch_stub_615)) -GL_PREFIX(_dispatch_stub_615): + .globl GL_PREFIX(_dispatch_stub_629) + .type GL_PREFIX(_dispatch_stub_629), @function + HIDDEN(GL_PREFIX(_dispatch_stub_629)) +GL_PREFIX(_dispatch_stub_629): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4920(%rax), %r11 + movq 5032(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -23209,13 +23723,13 @@ GL_PREFIX(_dispatch_stub_615): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 4920(%rax), %r11 + movq 5032(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4920(%rax), %r11 + movq 5032(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -23225,19 +23739,19 @@ GL_PREFIX(_dispatch_stub_615): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 4920(%rax), %r11 + movq 5032(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_615), .-GL_PREFIX(_dispatch_stub_615) + .size GL_PREFIX(_dispatch_stub_629), .-GL_PREFIX(_dispatch_stub_629) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_616) - .type GL_PREFIX(_dispatch_stub_616), @function - HIDDEN(GL_PREFIX(_dispatch_stub_616)) -GL_PREFIX(_dispatch_stub_616): + .globl GL_PREFIX(_dispatch_stub_630) + .type GL_PREFIX(_dispatch_stub_630), @function + HIDDEN(GL_PREFIX(_dispatch_stub_630)) +GL_PREFIX(_dispatch_stub_630): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4928(%rax), %r11 + movq 5040(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23247,13 +23761,13 @@ GL_PREFIX(_dispatch_stub_616): popq %rbp popq %rsi popq %rdi - movq 4928(%rax), %r11 + movq 5040(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4928(%rax), %r11 + movq 5040(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23263,19 +23777,19 @@ GL_PREFIX(_dispatch_stub_616): popq %rbp popq %rsi popq %rdi - movq 4928(%rax), %r11 + movq 5040(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_616), .-GL_PREFIX(_dispatch_stub_616) + .size GL_PREFIX(_dispatch_stub_630), .-GL_PREFIX(_dispatch_stub_630) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_617) - .type GL_PREFIX(_dispatch_stub_617), @function - HIDDEN(GL_PREFIX(_dispatch_stub_617)) -GL_PREFIX(_dispatch_stub_617): + .globl GL_PREFIX(_dispatch_stub_631) + .type GL_PREFIX(_dispatch_stub_631), @function + HIDDEN(GL_PREFIX(_dispatch_stub_631)) +GL_PREFIX(_dispatch_stub_631): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4936(%rax), %r11 + movq 5048(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23285,13 +23799,13 @@ GL_PREFIX(_dispatch_stub_617): popq %rbp popq %rsi popq %rdi - movq 4936(%rax), %r11 + movq 5048(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4936(%rax), %r11 + movq 5048(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23301,19 +23815,19 @@ GL_PREFIX(_dispatch_stub_617): popq %rbp popq %rsi popq %rdi - movq 4936(%rax), %r11 + movq 5048(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_617), .-GL_PREFIX(_dispatch_stub_617) + .size GL_PREFIX(_dispatch_stub_631), .-GL_PREFIX(_dispatch_stub_631) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_618) - .type GL_PREFIX(_dispatch_stub_618), @function - HIDDEN(GL_PREFIX(_dispatch_stub_618)) -GL_PREFIX(_dispatch_stub_618): + .globl GL_PREFIX(_dispatch_stub_632) + .type GL_PREFIX(_dispatch_stub_632), @function + HIDDEN(GL_PREFIX(_dispatch_stub_632)) +GL_PREFIX(_dispatch_stub_632): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4944(%rax), %r11 + movq 5056(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23323,13 +23837,13 @@ GL_PREFIX(_dispatch_stub_618): popq %rbp popq %rsi popq %rdi - movq 4944(%rax), %r11 + movq 5056(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4944(%rax), %r11 + movq 5056(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23339,19 +23853,19 @@ GL_PREFIX(_dispatch_stub_618): popq %rbp popq %rsi popq %rdi - movq 4944(%rax), %r11 + movq 5056(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_618), .-GL_PREFIX(_dispatch_stub_618) + .size GL_PREFIX(_dispatch_stub_632), .-GL_PREFIX(_dispatch_stub_632) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_619) - .type GL_PREFIX(_dispatch_stub_619), @function - HIDDEN(GL_PREFIX(_dispatch_stub_619)) -GL_PREFIX(_dispatch_stub_619): + .globl GL_PREFIX(_dispatch_stub_633) + .type GL_PREFIX(_dispatch_stub_633), @function + HIDDEN(GL_PREFIX(_dispatch_stub_633)) +GL_PREFIX(_dispatch_stub_633): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4952(%rax), %r11 + movq 5064(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23361,13 +23875,13 @@ GL_PREFIX(_dispatch_stub_619): popq %rbp popq %rsi popq %rdi - movq 4952(%rax), %r11 + movq 5064(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4952(%rax), %r11 + movq 5064(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23377,40 +23891,40 @@ GL_PREFIX(_dispatch_stub_619): popq %rbp popq %rsi popq %rdi - movq 4952(%rax), %r11 + movq 5064(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_619), .-GL_PREFIX(_dispatch_stub_619) + .size GL_PREFIX(_dispatch_stub_633), .-GL_PREFIX(_dispatch_stub_633) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_620) - .type GL_PREFIX(_dispatch_stub_620), @function - HIDDEN(GL_PREFIX(_dispatch_stub_620)) -GL_PREFIX(_dispatch_stub_620): + .globl GL_PREFIX(_dispatch_stub_634) + .type GL_PREFIX(_dispatch_stub_634), @function + HIDDEN(GL_PREFIX(_dispatch_stub_634)) +GL_PREFIX(_dispatch_stub_634): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4960(%rax), %r11 + movq 5072(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 4960(%rax), %r11 + movq 5072(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4960(%rax), %r11 + movq 5072(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 4960(%rax), %r11 + movq 5072(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_620), .-GL_PREFIX(_dispatch_stub_620) + .size GL_PREFIX(_dispatch_stub_634), .-GL_PREFIX(_dispatch_stub_634) .p2align 4,,15 .globl GL_PREFIX(ColorPointerEXT) @@ -23418,7 +23932,7 @@ GL_PREFIX(_dispatch_stub_620): GL_PREFIX(ColorPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4968(%rax), %r11 + movq 5080(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23432,13 +23946,13 @@ GL_PREFIX(ColorPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4968(%rax), %r11 + movq 5080(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4968(%rax), %r11 + movq 5080(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23452,7 +23966,7 @@ GL_PREFIX(ColorPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4968(%rax), %r11 + movq 5080(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ColorPointerEXT), .-GL_PREFIX(ColorPointerEXT) @@ -23463,7 +23977,7 @@ GL_PREFIX(ColorPointerEXT): GL_PREFIX(EdgeFlagPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4976(%rax), %r11 + movq 5088(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23473,13 +23987,13 @@ GL_PREFIX(EdgeFlagPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4976(%rax), %r11 + movq 5088(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4976(%rax), %r11 + movq 5088(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23489,7 +24003,7 @@ GL_PREFIX(EdgeFlagPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4976(%rax), %r11 + movq 5088(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EdgeFlagPointerEXT), .-GL_PREFIX(EdgeFlagPointerEXT) @@ -23500,7 +24014,7 @@ GL_PREFIX(EdgeFlagPointerEXT): GL_PREFIX(IndexPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4984(%rax), %r11 + movq 5096(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23514,13 +24028,13 @@ GL_PREFIX(IndexPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4984(%rax), %r11 + movq 5096(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4984(%rax), %r11 + movq 5096(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23534,7 +24048,7 @@ GL_PREFIX(IndexPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4984(%rax), %r11 + movq 5096(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(IndexPointerEXT), .-GL_PREFIX(IndexPointerEXT) @@ -23545,7 +24059,7 @@ GL_PREFIX(IndexPointerEXT): GL_PREFIX(NormalPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 4992(%rax), %r11 + movq 5104(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23559,13 +24073,13 @@ GL_PREFIX(NormalPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4992(%rax), %r11 + movq 5104(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 4992(%rax), %r11 + movq 5104(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23579,7 +24093,7 @@ GL_PREFIX(NormalPointerEXT): popq %rdx popq %rsi popq %rdi - movq 4992(%rax), %r11 + movq 5104(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(NormalPointerEXT), .-GL_PREFIX(NormalPointerEXT) @@ -23590,7 +24104,7 @@ GL_PREFIX(NormalPointerEXT): GL_PREFIX(TexCoordPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5000(%rax), %r11 + movq 5112(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23604,13 +24118,13 @@ GL_PREFIX(TexCoordPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5000(%rax), %r11 + movq 5112(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5000(%rax), %r11 + movq 5112(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23624,7 +24138,7 @@ GL_PREFIX(TexCoordPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5000(%rax), %r11 + movq 5112(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TexCoordPointerEXT), .-GL_PREFIX(TexCoordPointerEXT) @@ -23635,7 +24149,7 @@ GL_PREFIX(TexCoordPointerEXT): GL_PREFIX(VertexPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5008(%rax), %r11 + movq 5120(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23649,13 +24163,13 @@ GL_PREFIX(VertexPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5008(%rax), %r11 + movq 5120(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5008(%rax), %r11 + movq 5120(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23669,7 +24183,7 @@ GL_PREFIX(VertexPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5008(%rax), %r11 + movq 5120(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexPointerEXT), .-GL_PREFIX(VertexPointerEXT) @@ -23680,7 +24194,7 @@ GL_PREFIX(VertexPointerEXT): GL_PREFIX(PointParameterfEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5016(%rax), %r11 + movq 5128(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -23690,13 +24204,13 @@ GL_PREFIX(PointParameterfEXT): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5016(%rax), %r11 + movq 5128(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5016(%rax), %r11 + movq 5128(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -23706,7 +24220,7 @@ GL_PREFIX(PointParameterfEXT): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5016(%rax), %r11 + movq 5128(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PointParameterfEXT), .-GL_PREFIX(PointParameterfEXT) @@ -23717,7 +24231,7 @@ GL_PREFIX(PointParameterfEXT): GL_PREFIX(PointParameterfvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5024(%rax), %r11 + movq 5136(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23727,13 +24241,13 @@ GL_PREFIX(PointParameterfvEXT): popq %rbp popq %rsi popq %rdi - movq 5024(%rax), %r11 + movq 5136(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5024(%rax), %r11 + movq 5136(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23743,7 +24257,7 @@ GL_PREFIX(PointParameterfvEXT): popq %rbp popq %rsi popq %rdi - movq 5024(%rax), %r11 + movq 5136(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PointParameterfvEXT), .-GL_PREFIX(PointParameterfvEXT) @@ -23754,7 +24268,7 @@ GL_PREFIX(PointParameterfvEXT): GL_PREFIX(LockArraysEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5032(%rax), %r11 + movq 5144(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23764,13 +24278,13 @@ GL_PREFIX(LockArraysEXT): popq %rbp popq %rsi popq %rdi - movq 5032(%rax), %r11 + movq 5144(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5032(%rax), %r11 + movq 5144(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23780,7 +24294,7 @@ GL_PREFIX(LockArraysEXT): popq %rbp popq %rsi popq %rdi - movq 5032(%rax), %r11 + movq 5144(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(LockArraysEXT), .-GL_PREFIX(LockArraysEXT) @@ -23791,25 +24305,25 @@ GL_PREFIX(LockArraysEXT): GL_PREFIX(UnlockArraysEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5040(%rax), %r11 + movq 5152(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 5040(%rax), %r11 + movq 5152(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5040(%rax), %r11 + movq 5152(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 5040(%rax), %r11 + movq 5152(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(UnlockArraysEXT), .-GL_PREFIX(UnlockArraysEXT) @@ -23820,7 +24334,7 @@ GL_PREFIX(UnlockArraysEXT): GL_PREFIX(SecondaryColor3bEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5048(%rax), %r11 + movq 5160(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -23830,13 +24344,13 @@ GL_PREFIX(SecondaryColor3bEXT): popq %rdx popq %rsi popq %rdi - movq 5048(%rax), %r11 + movq 5160(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5048(%rax), %r11 + movq 5160(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -23846,7 +24360,7 @@ GL_PREFIX(SecondaryColor3bEXT): popq %rdx popq %rsi popq %rdi - movq 5048(%rax), %r11 + movq 5160(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3bEXT), .-GL_PREFIX(SecondaryColor3bEXT) @@ -23857,25 +24371,25 @@ GL_PREFIX(SecondaryColor3bEXT): GL_PREFIX(SecondaryColor3bvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5056(%rax), %r11 + movq 5168(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5056(%rax), %r11 + movq 5168(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5056(%rax), %r11 + movq 5168(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5056(%rax), %r11 + movq 5168(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3bvEXT), .-GL_PREFIX(SecondaryColor3bvEXT) @@ -23886,7 +24400,7 @@ GL_PREFIX(SecondaryColor3bvEXT): GL_PREFIX(SecondaryColor3dEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5064(%rax), %r11 + movq 5176(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -23898,13 +24412,13 @@ GL_PREFIX(SecondaryColor3dEXT): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5064(%rax), %r11 + movq 5176(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5064(%rax), %r11 + movq 5176(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -23916,7 +24430,7 @@ GL_PREFIX(SecondaryColor3dEXT): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5064(%rax), %r11 + movq 5176(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3dEXT), .-GL_PREFIX(SecondaryColor3dEXT) @@ -23927,25 +24441,25 @@ GL_PREFIX(SecondaryColor3dEXT): GL_PREFIX(SecondaryColor3dvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5072(%rax), %r11 + movq 5184(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5072(%rax), %r11 + movq 5184(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5072(%rax), %r11 + movq 5184(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5072(%rax), %r11 + movq 5184(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3dvEXT), .-GL_PREFIX(SecondaryColor3dvEXT) @@ -23956,7 +24470,7 @@ GL_PREFIX(SecondaryColor3dvEXT): GL_PREFIX(SecondaryColor3fEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5080(%rax), %r11 + movq 5192(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -23968,13 +24482,13 @@ GL_PREFIX(SecondaryColor3fEXT): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5080(%rax), %r11 + movq 5192(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5080(%rax), %r11 + movq 5192(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -23986,7 +24500,7 @@ GL_PREFIX(SecondaryColor3fEXT): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5080(%rax), %r11 + movq 5192(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3fEXT), .-GL_PREFIX(SecondaryColor3fEXT) @@ -23997,25 +24511,25 @@ GL_PREFIX(SecondaryColor3fEXT): GL_PREFIX(SecondaryColor3fvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5088(%rax), %r11 + movq 5200(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5088(%rax), %r11 + movq 5200(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5088(%rax), %r11 + movq 5200(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5088(%rax), %r11 + movq 5200(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3fvEXT), .-GL_PREFIX(SecondaryColor3fvEXT) @@ -24026,7 +24540,7 @@ GL_PREFIX(SecondaryColor3fvEXT): GL_PREFIX(SecondaryColor3iEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5096(%rax), %r11 + movq 5208(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24036,13 +24550,13 @@ GL_PREFIX(SecondaryColor3iEXT): popq %rdx popq %rsi popq %rdi - movq 5096(%rax), %r11 + movq 5208(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5096(%rax), %r11 + movq 5208(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24052,7 +24566,7 @@ GL_PREFIX(SecondaryColor3iEXT): popq %rdx popq %rsi popq %rdi - movq 5096(%rax), %r11 + movq 5208(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3iEXT), .-GL_PREFIX(SecondaryColor3iEXT) @@ -24063,25 +24577,25 @@ GL_PREFIX(SecondaryColor3iEXT): GL_PREFIX(SecondaryColor3ivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5104(%rax), %r11 + movq 5216(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5104(%rax), %r11 + movq 5216(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5104(%rax), %r11 + movq 5216(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5104(%rax), %r11 + movq 5216(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3ivEXT), .-GL_PREFIX(SecondaryColor3ivEXT) @@ -24092,7 +24606,7 @@ GL_PREFIX(SecondaryColor3ivEXT): GL_PREFIX(SecondaryColor3sEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5112(%rax), %r11 + movq 5224(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24102,13 +24616,13 @@ GL_PREFIX(SecondaryColor3sEXT): popq %rdx popq %rsi popq %rdi - movq 5112(%rax), %r11 + movq 5224(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5112(%rax), %r11 + movq 5224(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24118,7 +24632,7 @@ GL_PREFIX(SecondaryColor3sEXT): popq %rdx popq %rsi popq %rdi - movq 5112(%rax), %r11 + movq 5224(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3sEXT), .-GL_PREFIX(SecondaryColor3sEXT) @@ -24129,25 +24643,25 @@ GL_PREFIX(SecondaryColor3sEXT): GL_PREFIX(SecondaryColor3svEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5120(%rax), %r11 + movq 5232(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5120(%rax), %r11 + movq 5232(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5120(%rax), %r11 + movq 5232(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5120(%rax), %r11 + movq 5232(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3svEXT), .-GL_PREFIX(SecondaryColor3svEXT) @@ -24158,7 +24672,7 @@ GL_PREFIX(SecondaryColor3svEXT): GL_PREFIX(SecondaryColor3ubEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5128(%rax), %r11 + movq 5240(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24168,13 +24682,13 @@ GL_PREFIX(SecondaryColor3ubEXT): popq %rdx popq %rsi popq %rdi - movq 5128(%rax), %r11 + movq 5240(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5128(%rax), %r11 + movq 5240(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24184,7 +24698,7 @@ GL_PREFIX(SecondaryColor3ubEXT): popq %rdx popq %rsi popq %rdi - movq 5128(%rax), %r11 + movq 5240(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3ubEXT), .-GL_PREFIX(SecondaryColor3ubEXT) @@ -24195,25 +24709,25 @@ GL_PREFIX(SecondaryColor3ubEXT): GL_PREFIX(SecondaryColor3ubvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5136(%rax), %r11 + movq 5248(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5136(%rax), %r11 + movq 5248(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5136(%rax), %r11 + movq 5248(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5136(%rax), %r11 + movq 5248(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3ubvEXT), .-GL_PREFIX(SecondaryColor3ubvEXT) @@ -24224,7 +24738,7 @@ GL_PREFIX(SecondaryColor3ubvEXT): GL_PREFIX(SecondaryColor3uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5144(%rax), %r11 + movq 5256(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24234,13 +24748,13 @@ GL_PREFIX(SecondaryColor3uiEXT): popq %rdx popq %rsi popq %rdi - movq 5144(%rax), %r11 + movq 5256(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5144(%rax), %r11 + movq 5256(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24250,7 +24764,7 @@ GL_PREFIX(SecondaryColor3uiEXT): popq %rdx popq %rsi popq %rdi - movq 5144(%rax), %r11 + movq 5256(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3uiEXT), .-GL_PREFIX(SecondaryColor3uiEXT) @@ -24261,25 +24775,25 @@ GL_PREFIX(SecondaryColor3uiEXT): GL_PREFIX(SecondaryColor3uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5152(%rax), %r11 + movq 5264(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5152(%rax), %r11 + movq 5264(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5152(%rax), %r11 + movq 5264(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5152(%rax), %r11 + movq 5264(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3uivEXT), .-GL_PREFIX(SecondaryColor3uivEXT) @@ -24290,7 +24804,7 @@ GL_PREFIX(SecondaryColor3uivEXT): GL_PREFIX(SecondaryColor3usEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5160(%rax), %r11 + movq 5272(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24300,13 +24814,13 @@ GL_PREFIX(SecondaryColor3usEXT): popq %rdx popq %rsi popq %rdi - movq 5160(%rax), %r11 + movq 5272(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5160(%rax), %r11 + movq 5272(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24316,7 +24830,7 @@ GL_PREFIX(SecondaryColor3usEXT): popq %rdx popq %rsi popq %rdi - movq 5160(%rax), %r11 + movq 5272(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3usEXT), .-GL_PREFIX(SecondaryColor3usEXT) @@ -24327,25 +24841,25 @@ GL_PREFIX(SecondaryColor3usEXT): GL_PREFIX(SecondaryColor3usvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5168(%rax), %r11 + movq 5280(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5168(%rax), %r11 + movq 5280(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5168(%rax), %r11 + movq 5280(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5168(%rax), %r11 + movq 5280(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColor3usvEXT), .-GL_PREFIX(SecondaryColor3usvEXT) @@ -24356,7 +24870,7 @@ GL_PREFIX(SecondaryColor3usvEXT): GL_PREFIX(SecondaryColorPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5176(%rax), %r11 + movq 5288(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24370,13 +24884,13 @@ GL_PREFIX(SecondaryColorPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5176(%rax), %r11 + movq 5288(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5176(%rax), %r11 + movq 5288(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24390,7 +24904,7 @@ GL_PREFIX(SecondaryColorPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5176(%rax), %r11 + movq 5288(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SecondaryColorPointerEXT), .-GL_PREFIX(SecondaryColorPointerEXT) @@ -24401,7 +24915,7 @@ GL_PREFIX(SecondaryColorPointerEXT): GL_PREFIX(MultiDrawArraysEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5184(%rax), %r11 + movq 5296(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24415,13 +24929,13 @@ GL_PREFIX(MultiDrawArraysEXT): popq %rdx popq %rsi popq %rdi - movq 5184(%rax), %r11 + movq 5296(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5184(%rax), %r11 + movq 5296(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24435,7 +24949,7 @@ GL_PREFIX(MultiDrawArraysEXT): popq %rdx popq %rsi popq %rdi - movq 5184(%rax), %r11 + movq 5296(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(MultiDrawArraysEXT), .-GL_PREFIX(MultiDrawArraysEXT) @@ -24446,7 +24960,7 @@ GL_PREFIX(MultiDrawArraysEXT): GL_PREFIX(MultiDrawElementsEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5192(%rax), %r11 + movq 5304(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24460,13 +24974,13 @@ GL_PREFIX(MultiDrawElementsEXT): popq %rdx popq %rsi popq %rdi - movq 5192(%rax), %r11 + movq 5304(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5192(%rax), %r11 + movq 5304(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24480,7 +24994,7 @@ GL_PREFIX(MultiDrawElementsEXT): popq %rdx popq %rsi popq %rdi - movq 5192(%rax), %r11 + movq 5304(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(MultiDrawElementsEXT), .-GL_PREFIX(MultiDrawElementsEXT) @@ -24491,7 +25005,7 @@ GL_PREFIX(MultiDrawElementsEXT): GL_PREFIX(FogCoordPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5200(%rax), %r11 + movq 5312(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24501,13 +25015,13 @@ GL_PREFIX(FogCoordPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5200(%rax), %r11 + movq 5312(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5200(%rax), %r11 + movq 5312(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24517,7 +25031,7 @@ GL_PREFIX(FogCoordPointerEXT): popq %rdx popq %rsi popq %rdi - movq 5200(%rax), %r11 + movq 5312(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FogCoordPointerEXT), .-GL_PREFIX(FogCoordPointerEXT) @@ -24528,7 +25042,7 @@ GL_PREFIX(FogCoordPointerEXT): GL_PREFIX(FogCoorddEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5208(%rax), %r11 + movq 5320(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $8, %rsp @@ -24536,13 +25050,13 @@ GL_PREFIX(FogCoorddEXT): call _x86_64_get_dispatch@PLT movq (%rsp), %xmm0 addq $8, %rsp - movq 5208(%rax), %r11 + movq 5320(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5208(%rax), %r11 + movq 5320(%rax), %r11 jmp *%r11 1: subq $8, %rsp @@ -24550,7 +25064,7 @@ GL_PREFIX(FogCoorddEXT): call _glapi_get_dispatch movq (%rsp), %xmm0 addq $8, %rsp - movq 5208(%rax), %r11 + movq 5320(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FogCoorddEXT), .-GL_PREFIX(FogCoorddEXT) @@ -24561,25 +25075,25 @@ GL_PREFIX(FogCoorddEXT): GL_PREFIX(FogCoorddvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5216(%rax), %r11 + movq 5328(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5216(%rax), %r11 + movq 5328(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5216(%rax), %r11 + movq 5328(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5216(%rax), %r11 + movq 5328(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FogCoorddvEXT), .-GL_PREFIX(FogCoorddvEXT) @@ -24590,7 +25104,7 @@ GL_PREFIX(FogCoorddvEXT): GL_PREFIX(FogCoordfEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5224(%rax), %r11 + movq 5336(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $8, %rsp @@ -24598,13 +25112,13 @@ GL_PREFIX(FogCoordfEXT): call _x86_64_get_dispatch@PLT movq (%rsp), %xmm0 addq $8, %rsp - movq 5224(%rax), %r11 + movq 5336(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5224(%rax), %r11 + movq 5336(%rax), %r11 jmp *%r11 1: subq $8, %rsp @@ -24612,7 +25126,7 @@ GL_PREFIX(FogCoordfEXT): call _glapi_get_dispatch movq (%rsp), %xmm0 addq $8, %rsp - movq 5224(%rax), %r11 + movq 5336(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FogCoordfEXT), .-GL_PREFIX(FogCoordfEXT) @@ -24623,58 +25137,58 @@ GL_PREFIX(FogCoordfEXT): GL_PREFIX(FogCoordfvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5232(%rax), %r11 + movq 5344(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5232(%rax), %r11 + movq 5344(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5232(%rax), %r11 + movq 5344(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5232(%rax), %r11 + movq 5344(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FogCoordfvEXT), .-GL_PREFIX(FogCoordfvEXT) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_655) - .type GL_PREFIX(_dispatch_stub_655), @function - HIDDEN(GL_PREFIX(_dispatch_stub_655)) -GL_PREFIX(_dispatch_stub_655): + .globl GL_PREFIX(_dispatch_stub_669) + .type GL_PREFIX(_dispatch_stub_669), @function + HIDDEN(GL_PREFIX(_dispatch_stub_669)) +GL_PREFIX(_dispatch_stub_669): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5240(%rax), %r11 + movq 5352(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5240(%rax), %r11 + movq 5352(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5240(%rax), %r11 + movq 5352(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5240(%rax), %r11 + movq 5352(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_655), .-GL_PREFIX(_dispatch_stub_655) + .size GL_PREFIX(_dispatch_stub_669), .-GL_PREFIX(_dispatch_stub_669) .p2align 4,,15 .globl GL_PREFIX(BlendFuncSeparateEXT) @@ -24682,7 +25196,7 @@ GL_PREFIX(_dispatch_stub_655): GL_PREFIX(BlendFuncSeparateEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5248(%rax), %r11 + movq 5360(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24696,13 +25210,13 @@ GL_PREFIX(BlendFuncSeparateEXT): popq %rdx popq %rsi popq %rdi - movq 5248(%rax), %r11 + movq 5360(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5248(%rax), %r11 + movq 5360(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24716,7 +25230,7 @@ GL_PREFIX(BlendFuncSeparateEXT): popq %rdx popq %rsi popq %rdi - movq 5248(%rax), %r11 + movq 5360(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BlendFuncSeparateEXT), .-GL_PREFIX(BlendFuncSeparateEXT) @@ -24727,25 +25241,25 @@ GL_PREFIX(BlendFuncSeparateEXT): GL_PREFIX(FlushVertexArrayRangeNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5256(%rax), %r11 + movq 5368(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 5256(%rax), %r11 + movq 5368(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5256(%rax), %r11 + movq 5368(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 5256(%rax), %r11 + movq 5368(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FlushVertexArrayRangeNV), .-GL_PREFIX(FlushVertexArrayRangeNV) @@ -24756,7 +25270,7 @@ GL_PREFIX(FlushVertexArrayRangeNV): GL_PREFIX(VertexArrayRangeNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5264(%rax), %r11 + movq 5376(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24766,13 +25280,13 @@ GL_PREFIX(VertexArrayRangeNV): popq %rbp popq %rsi popq %rdi - movq 5264(%rax), %r11 + movq 5376(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5264(%rax), %r11 + movq 5376(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24782,7 +25296,7 @@ GL_PREFIX(VertexArrayRangeNV): popq %rbp popq %rsi popq %rdi - movq 5264(%rax), %r11 + movq 5376(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexArrayRangeNV), .-GL_PREFIX(VertexArrayRangeNV) @@ -24793,7 +25307,7 @@ GL_PREFIX(VertexArrayRangeNV): GL_PREFIX(CombinerInputNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5272(%rax), %r11 + movq 5384(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24811,13 +25325,13 @@ GL_PREFIX(CombinerInputNV): popq %rdx popq %rsi popq %rdi - movq 5272(%rax), %r11 + movq 5384(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5272(%rax), %r11 + movq 5384(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24835,7 +25349,7 @@ GL_PREFIX(CombinerInputNV): popq %rdx popq %rsi popq %rdi - movq 5272(%rax), %r11 + movq 5384(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CombinerInputNV), .-GL_PREFIX(CombinerInputNV) @@ -24846,7 +25360,7 @@ GL_PREFIX(CombinerInputNV): GL_PREFIX(CombinerOutputNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5280(%rax), %r11 + movq 5392(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24864,13 +25378,13 @@ GL_PREFIX(CombinerOutputNV): popq %rdx popq %rsi popq %rdi - movq 5280(%rax), %r11 + movq 5392(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5280(%rax), %r11 + movq 5392(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24888,7 +25402,7 @@ GL_PREFIX(CombinerOutputNV): popq %rdx popq %rsi popq %rdi - movq 5280(%rax), %r11 + movq 5392(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CombinerOutputNV), .-GL_PREFIX(CombinerOutputNV) @@ -24899,7 +25413,7 @@ GL_PREFIX(CombinerOutputNV): GL_PREFIX(CombinerParameterfNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5288(%rax), %r11 + movq 5400(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -24909,13 +25423,13 @@ GL_PREFIX(CombinerParameterfNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5288(%rax), %r11 + movq 5400(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5288(%rax), %r11 + movq 5400(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -24925,7 +25439,7 @@ GL_PREFIX(CombinerParameterfNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5288(%rax), %r11 + movq 5400(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CombinerParameterfNV), .-GL_PREFIX(CombinerParameterfNV) @@ -24936,7 +25450,7 @@ GL_PREFIX(CombinerParameterfNV): GL_PREFIX(CombinerParameterfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5296(%rax), %r11 + movq 5408(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24946,13 +25460,13 @@ GL_PREFIX(CombinerParameterfvNV): popq %rbp popq %rsi popq %rdi - movq 5296(%rax), %r11 + movq 5408(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5296(%rax), %r11 + movq 5408(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24962,7 +25476,7 @@ GL_PREFIX(CombinerParameterfvNV): popq %rbp popq %rsi popq %rdi - movq 5296(%rax), %r11 + movq 5408(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CombinerParameterfvNV), .-GL_PREFIX(CombinerParameterfvNV) @@ -24973,7 +25487,7 @@ GL_PREFIX(CombinerParameterfvNV): GL_PREFIX(CombinerParameteriNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5304(%rax), %r11 + movq 5416(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -24983,13 +25497,13 @@ GL_PREFIX(CombinerParameteriNV): popq %rbp popq %rsi popq %rdi - movq 5304(%rax), %r11 + movq 5416(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5304(%rax), %r11 + movq 5416(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -24999,7 +25513,7 @@ GL_PREFIX(CombinerParameteriNV): popq %rbp popq %rsi popq %rdi - movq 5304(%rax), %r11 + movq 5416(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CombinerParameteriNV), .-GL_PREFIX(CombinerParameteriNV) @@ -25010,7 +25524,7 @@ GL_PREFIX(CombinerParameteriNV): GL_PREFIX(CombinerParameterivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5312(%rax), %r11 + movq 5424(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25020,13 +25534,13 @@ GL_PREFIX(CombinerParameterivNV): popq %rbp popq %rsi popq %rdi - movq 5312(%rax), %r11 + movq 5424(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5312(%rax), %r11 + movq 5424(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25036,7 +25550,7 @@ GL_PREFIX(CombinerParameterivNV): popq %rbp popq %rsi popq %rdi - movq 5312(%rax), %r11 + movq 5424(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CombinerParameterivNV), .-GL_PREFIX(CombinerParameterivNV) @@ -25047,7 +25561,7 @@ GL_PREFIX(CombinerParameterivNV): GL_PREFIX(FinalCombinerInputNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5320(%rax), %r11 + movq 5432(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25061,13 +25575,13 @@ GL_PREFIX(FinalCombinerInputNV): popq %rdx popq %rsi popq %rdi - movq 5320(%rax), %r11 + movq 5432(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5320(%rax), %r11 + movq 5432(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25081,7 +25595,7 @@ GL_PREFIX(FinalCombinerInputNV): popq %rdx popq %rsi popq %rdi - movq 5320(%rax), %r11 + movq 5432(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FinalCombinerInputNV), .-GL_PREFIX(FinalCombinerInputNV) @@ -25092,7 +25606,7 @@ GL_PREFIX(FinalCombinerInputNV): GL_PREFIX(GetCombinerInputParameterfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5328(%rax), %r11 + movq 5440(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25106,13 +25620,13 @@ GL_PREFIX(GetCombinerInputParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5328(%rax), %r11 + movq 5440(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5328(%rax), %r11 + movq 5440(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25126,7 +25640,7 @@ GL_PREFIX(GetCombinerInputParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5328(%rax), %r11 + movq 5440(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetCombinerInputParameterfvNV), .-GL_PREFIX(GetCombinerInputParameterfvNV) @@ -25137,7 +25651,7 @@ GL_PREFIX(GetCombinerInputParameterfvNV): GL_PREFIX(GetCombinerInputParameterivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5336(%rax), %r11 + movq 5448(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25151,13 +25665,13 @@ GL_PREFIX(GetCombinerInputParameterivNV): popq %rdx popq %rsi popq %rdi - movq 5336(%rax), %r11 + movq 5448(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5336(%rax), %r11 + movq 5448(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25171,7 +25685,7 @@ GL_PREFIX(GetCombinerInputParameterivNV): popq %rdx popq %rsi popq %rdi - movq 5336(%rax), %r11 + movq 5448(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetCombinerInputParameterivNV), .-GL_PREFIX(GetCombinerInputParameterivNV) @@ -25182,7 +25696,7 @@ GL_PREFIX(GetCombinerInputParameterivNV): GL_PREFIX(GetCombinerOutputParameterfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5344(%rax), %r11 + movq 5456(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25196,13 +25710,13 @@ GL_PREFIX(GetCombinerOutputParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5344(%rax), %r11 + movq 5456(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5344(%rax), %r11 + movq 5456(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25216,7 +25730,7 @@ GL_PREFIX(GetCombinerOutputParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5344(%rax), %r11 + movq 5456(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetCombinerOutputParameterfvNV), .-GL_PREFIX(GetCombinerOutputParameterfvNV) @@ -25227,7 +25741,7 @@ GL_PREFIX(GetCombinerOutputParameterfvNV): GL_PREFIX(GetCombinerOutputParameterivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5352(%rax), %r11 + movq 5464(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25241,13 +25755,13 @@ GL_PREFIX(GetCombinerOutputParameterivNV): popq %rdx popq %rsi popq %rdi - movq 5352(%rax), %r11 + movq 5464(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5352(%rax), %r11 + movq 5464(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25261,7 +25775,7 @@ GL_PREFIX(GetCombinerOutputParameterivNV): popq %rdx popq %rsi popq %rdi - movq 5352(%rax), %r11 + movq 5464(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetCombinerOutputParameterivNV), .-GL_PREFIX(GetCombinerOutputParameterivNV) @@ -25272,7 +25786,7 @@ GL_PREFIX(GetCombinerOutputParameterivNV): GL_PREFIX(GetFinalCombinerInputParameterfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5360(%rax), %r11 + movq 5472(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25282,13 +25796,13 @@ GL_PREFIX(GetFinalCombinerInputParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5360(%rax), %r11 + movq 5472(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5360(%rax), %r11 + movq 5472(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25298,7 +25812,7 @@ GL_PREFIX(GetFinalCombinerInputParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5360(%rax), %r11 + movq 5472(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetFinalCombinerInputParameterfvNV), .-GL_PREFIX(GetFinalCombinerInputParameterfvNV) @@ -25309,7 +25823,7 @@ GL_PREFIX(GetFinalCombinerInputParameterfvNV): GL_PREFIX(GetFinalCombinerInputParameterivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5368(%rax), %r11 + movq 5480(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25319,13 +25833,13 @@ GL_PREFIX(GetFinalCombinerInputParameterivNV): popq %rdx popq %rsi popq %rdi - movq 5368(%rax), %r11 + movq 5480(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5368(%rax), %r11 + movq 5480(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25335,7 +25849,7 @@ GL_PREFIX(GetFinalCombinerInputParameterivNV): popq %rdx popq %rsi popq %rdi - movq 5368(%rax), %r11 + movq 5480(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetFinalCombinerInputParameterivNV), .-GL_PREFIX(GetFinalCombinerInputParameterivNV) @@ -25346,25 +25860,25 @@ GL_PREFIX(GetFinalCombinerInputParameterivNV): GL_PREFIX(ResizeBuffersMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5376(%rax), %r11 + movq 5488(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 5376(%rax), %r11 + movq 5488(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5376(%rax), %r11 + movq 5488(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 5376(%rax), %r11 + movq 5488(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ResizeBuffersMESA), .-GL_PREFIX(ResizeBuffersMESA) @@ -25375,7 +25889,7 @@ GL_PREFIX(ResizeBuffersMESA): GL_PREFIX(WindowPos2dMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5384(%rax), %r11 + movq 5496(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -25385,13 +25899,13 @@ GL_PREFIX(WindowPos2dMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5384(%rax), %r11 + movq 5496(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5384(%rax), %r11 + movq 5496(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -25401,7 +25915,7 @@ GL_PREFIX(WindowPos2dMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5384(%rax), %r11 + movq 5496(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2dMESA), .-GL_PREFIX(WindowPos2dMESA) @@ -25412,25 +25926,25 @@ GL_PREFIX(WindowPos2dMESA): GL_PREFIX(WindowPos2dvMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5392(%rax), %r11 + movq 5504(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5392(%rax), %r11 + movq 5504(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5392(%rax), %r11 + movq 5504(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5392(%rax), %r11 + movq 5504(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2dvMESA), .-GL_PREFIX(WindowPos2dvMESA) @@ -25441,7 +25955,7 @@ GL_PREFIX(WindowPos2dvMESA): GL_PREFIX(WindowPos2fMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5400(%rax), %r11 + movq 5512(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -25451,13 +25965,13 @@ GL_PREFIX(WindowPos2fMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5400(%rax), %r11 + movq 5512(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5400(%rax), %r11 + movq 5512(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -25467,7 +25981,7 @@ GL_PREFIX(WindowPos2fMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5400(%rax), %r11 + movq 5512(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2fMESA), .-GL_PREFIX(WindowPos2fMESA) @@ -25478,25 +25992,25 @@ GL_PREFIX(WindowPos2fMESA): GL_PREFIX(WindowPos2fvMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5408(%rax), %r11 + movq 5520(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5408(%rax), %r11 + movq 5520(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5408(%rax), %r11 + movq 5520(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5408(%rax), %r11 + movq 5520(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2fvMESA), .-GL_PREFIX(WindowPos2fvMESA) @@ -25507,7 +26021,7 @@ GL_PREFIX(WindowPos2fvMESA): GL_PREFIX(WindowPos2iMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5416(%rax), %r11 + movq 5528(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25517,13 +26031,13 @@ GL_PREFIX(WindowPos2iMESA): popq %rbp popq %rsi popq %rdi - movq 5416(%rax), %r11 + movq 5528(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5416(%rax), %r11 + movq 5528(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25533,7 +26047,7 @@ GL_PREFIX(WindowPos2iMESA): popq %rbp popq %rsi popq %rdi - movq 5416(%rax), %r11 + movq 5528(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2iMESA), .-GL_PREFIX(WindowPos2iMESA) @@ -25544,25 +26058,25 @@ GL_PREFIX(WindowPos2iMESA): GL_PREFIX(WindowPos2ivMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5424(%rax), %r11 + movq 5536(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5424(%rax), %r11 + movq 5536(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5424(%rax), %r11 + movq 5536(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5424(%rax), %r11 + movq 5536(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2ivMESA), .-GL_PREFIX(WindowPos2ivMESA) @@ -25573,7 +26087,7 @@ GL_PREFIX(WindowPos2ivMESA): GL_PREFIX(WindowPos2sMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5432(%rax), %r11 + movq 5544(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25583,13 +26097,13 @@ GL_PREFIX(WindowPos2sMESA): popq %rbp popq %rsi popq %rdi - movq 5432(%rax), %r11 + movq 5544(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5432(%rax), %r11 + movq 5544(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25599,7 +26113,7 @@ GL_PREFIX(WindowPos2sMESA): popq %rbp popq %rsi popq %rdi - movq 5432(%rax), %r11 + movq 5544(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2sMESA), .-GL_PREFIX(WindowPos2sMESA) @@ -25610,25 +26124,25 @@ GL_PREFIX(WindowPos2sMESA): GL_PREFIX(WindowPos2svMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5440(%rax), %r11 + movq 5552(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5440(%rax), %r11 + movq 5552(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5440(%rax), %r11 + movq 5552(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5440(%rax), %r11 + movq 5552(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos2svMESA), .-GL_PREFIX(WindowPos2svMESA) @@ -25639,7 +26153,7 @@ GL_PREFIX(WindowPos2svMESA): GL_PREFIX(WindowPos3dMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5448(%rax), %r11 + movq 5560(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -25651,13 +26165,13 @@ GL_PREFIX(WindowPos3dMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5448(%rax), %r11 + movq 5560(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5448(%rax), %r11 + movq 5560(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -25669,7 +26183,7 @@ GL_PREFIX(WindowPos3dMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5448(%rax), %r11 + movq 5560(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3dMESA), .-GL_PREFIX(WindowPos3dMESA) @@ -25680,25 +26194,25 @@ GL_PREFIX(WindowPos3dMESA): GL_PREFIX(WindowPos3dvMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5456(%rax), %r11 + movq 5568(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5456(%rax), %r11 + movq 5568(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5456(%rax), %r11 + movq 5568(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5456(%rax), %r11 + movq 5568(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3dvMESA), .-GL_PREFIX(WindowPos3dvMESA) @@ -25709,7 +26223,7 @@ GL_PREFIX(WindowPos3dvMESA): GL_PREFIX(WindowPos3fMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5464(%rax), %r11 + movq 5576(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -25721,13 +26235,13 @@ GL_PREFIX(WindowPos3fMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5464(%rax), %r11 + movq 5576(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5464(%rax), %r11 + movq 5576(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -25739,7 +26253,7 @@ GL_PREFIX(WindowPos3fMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $24, %rsp - movq 5464(%rax), %r11 + movq 5576(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3fMESA), .-GL_PREFIX(WindowPos3fMESA) @@ -25750,25 +26264,25 @@ GL_PREFIX(WindowPos3fMESA): GL_PREFIX(WindowPos3fvMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5472(%rax), %r11 + movq 5584(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5472(%rax), %r11 + movq 5584(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5472(%rax), %r11 + movq 5584(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5472(%rax), %r11 + movq 5584(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3fvMESA), .-GL_PREFIX(WindowPos3fvMESA) @@ -25779,7 +26293,7 @@ GL_PREFIX(WindowPos3fvMESA): GL_PREFIX(WindowPos3iMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5480(%rax), %r11 + movq 5592(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25789,13 +26303,13 @@ GL_PREFIX(WindowPos3iMESA): popq %rdx popq %rsi popq %rdi - movq 5480(%rax), %r11 + movq 5592(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5480(%rax), %r11 + movq 5592(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25805,7 +26319,7 @@ GL_PREFIX(WindowPos3iMESA): popq %rdx popq %rsi popq %rdi - movq 5480(%rax), %r11 + movq 5592(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3iMESA), .-GL_PREFIX(WindowPos3iMESA) @@ -25816,25 +26330,25 @@ GL_PREFIX(WindowPos3iMESA): GL_PREFIX(WindowPos3ivMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5488(%rax), %r11 + movq 5600(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5488(%rax), %r11 + movq 5600(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5488(%rax), %r11 + movq 5600(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5488(%rax), %r11 + movq 5600(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3ivMESA), .-GL_PREFIX(WindowPos3ivMESA) @@ -25845,7 +26359,7 @@ GL_PREFIX(WindowPos3ivMESA): GL_PREFIX(WindowPos3sMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5496(%rax), %r11 + movq 5608(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -25855,13 +26369,13 @@ GL_PREFIX(WindowPos3sMESA): popq %rdx popq %rsi popq %rdi - movq 5496(%rax), %r11 + movq 5608(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5496(%rax), %r11 + movq 5608(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -25871,7 +26385,7 @@ GL_PREFIX(WindowPos3sMESA): popq %rdx popq %rsi popq %rdi - movq 5496(%rax), %r11 + movq 5608(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3sMESA), .-GL_PREFIX(WindowPos3sMESA) @@ -25882,25 +26396,25 @@ GL_PREFIX(WindowPos3sMESA): GL_PREFIX(WindowPos3svMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5504(%rax), %r11 + movq 5616(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5504(%rax), %r11 + movq 5616(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5504(%rax), %r11 + movq 5616(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5504(%rax), %r11 + movq 5616(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos3svMESA), .-GL_PREFIX(WindowPos3svMESA) @@ -25911,7 +26425,7 @@ GL_PREFIX(WindowPos3svMESA): GL_PREFIX(WindowPos4dMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5512(%rax), %r11 + movq 5624(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $40, %rsp @@ -25925,13 +26439,13 @@ GL_PREFIX(WindowPos4dMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $40, %rsp - movq 5512(%rax), %r11 + movq 5624(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5512(%rax), %r11 + movq 5624(%rax), %r11 jmp *%r11 1: subq $40, %rsp @@ -25945,7 +26459,7 @@ GL_PREFIX(WindowPos4dMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $40, %rsp - movq 5512(%rax), %r11 + movq 5624(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4dMESA), .-GL_PREFIX(WindowPos4dMESA) @@ -25956,25 +26470,25 @@ GL_PREFIX(WindowPos4dMESA): GL_PREFIX(WindowPos4dvMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5520(%rax), %r11 + movq 5632(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5520(%rax), %r11 + movq 5632(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5520(%rax), %r11 + movq 5632(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5520(%rax), %r11 + movq 5632(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4dvMESA), .-GL_PREFIX(WindowPos4dvMESA) @@ -25985,7 +26499,7 @@ GL_PREFIX(WindowPos4dvMESA): GL_PREFIX(WindowPos4fMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5528(%rax), %r11 + movq 5640(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $40, %rsp @@ -25999,13 +26513,13 @@ GL_PREFIX(WindowPos4fMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $40, %rsp - movq 5528(%rax), %r11 + movq 5640(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5528(%rax), %r11 + movq 5640(%rax), %r11 jmp *%r11 1: subq $40, %rsp @@ -26019,7 +26533,7 @@ GL_PREFIX(WindowPos4fMESA): movq 8(%rsp), %xmm1 movq (%rsp), %xmm0 addq $40, %rsp - movq 5528(%rax), %r11 + movq 5640(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4fMESA), .-GL_PREFIX(WindowPos4fMESA) @@ -26030,25 +26544,25 @@ GL_PREFIX(WindowPos4fMESA): GL_PREFIX(WindowPos4fvMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5536(%rax), %r11 + movq 5648(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5536(%rax), %r11 + movq 5648(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5536(%rax), %r11 + movq 5648(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5536(%rax), %r11 + movq 5648(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4fvMESA), .-GL_PREFIX(WindowPos4fvMESA) @@ -26059,7 +26573,7 @@ GL_PREFIX(WindowPos4fvMESA): GL_PREFIX(WindowPos4iMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5544(%rax), %r11 + movq 5656(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26073,13 +26587,13 @@ GL_PREFIX(WindowPos4iMESA): popq %rdx popq %rsi popq %rdi - movq 5544(%rax), %r11 + movq 5656(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5544(%rax), %r11 + movq 5656(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26093,7 +26607,7 @@ GL_PREFIX(WindowPos4iMESA): popq %rdx popq %rsi popq %rdi - movq 5544(%rax), %r11 + movq 5656(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4iMESA), .-GL_PREFIX(WindowPos4iMESA) @@ -26104,25 +26618,25 @@ GL_PREFIX(WindowPos4iMESA): GL_PREFIX(WindowPos4ivMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5552(%rax), %r11 + movq 5664(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5552(%rax), %r11 + movq 5664(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5552(%rax), %r11 + movq 5664(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5552(%rax), %r11 + movq 5664(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4ivMESA), .-GL_PREFIX(WindowPos4ivMESA) @@ -26133,7 +26647,7 @@ GL_PREFIX(WindowPos4ivMESA): GL_PREFIX(WindowPos4sMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5560(%rax), %r11 + movq 5672(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26147,13 +26661,13 @@ GL_PREFIX(WindowPos4sMESA): popq %rdx popq %rsi popq %rdi - movq 5560(%rax), %r11 + movq 5672(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5560(%rax), %r11 + movq 5672(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26167,7 +26681,7 @@ GL_PREFIX(WindowPos4sMESA): popq %rdx popq %rsi popq %rdi - movq 5560(%rax), %r11 + movq 5672(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4sMESA), .-GL_PREFIX(WindowPos4sMESA) @@ -26178,37 +26692,37 @@ GL_PREFIX(WindowPos4sMESA): GL_PREFIX(WindowPos4svMESA): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5568(%rax), %r11 + movq 5680(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5568(%rax), %r11 + movq 5680(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5568(%rax), %r11 + movq 5680(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5568(%rax), %r11 + movq 5680(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(WindowPos4svMESA), .-GL_PREFIX(WindowPos4svMESA) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_697) - .type GL_PREFIX(_dispatch_stub_697), @function - HIDDEN(GL_PREFIX(_dispatch_stub_697)) -GL_PREFIX(_dispatch_stub_697): + .globl GL_PREFIX(_dispatch_stub_711) + .type GL_PREFIX(_dispatch_stub_711), @function + HIDDEN(GL_PREFIX(_dispatch_stub_711)) +GL_PREFIX(_dispatch_stub_711): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5576(%rax), %r11 + movq 5688(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26222,13 +26736,13 @@ GL_PREFIX(_dispatch_stub_697): popq %rdx popq %rsi popq %rdi - movq 5576(%rax), %r11 + movq 5688(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5576(%rax), %r11 + movq 5688(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26242,19 +26756,19 @@ GL_PREFIX(_dispatch_stub_697): popq %rdx popq %rsi popq %rdi - movq 5576(%rax), %r11 + movq 5688(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_697), .-GL_PREFIX(_dispatch_stub_697) + .size GL_PREFIX(_dispatch_stub_711), .-GL_PREFIX(_dispatch_stub_711) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_698) - .type GL_PREFIX(_dispatch_stub_698), @function - HIDDEN(GL_PREFIX(_dispatch_stub_698)) -GL_PREFIX(_dispatch_stub_698): + .globl GL_PREFIX(_dispatch_stub_712) + .type GL_PREFIX(_dispatch_stub_712), @function + HIDDEN(GL_PREFIX(_dispatch_stub_712)) +GL_PREFIX(_dispatch_stub_712): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5584(%rax), %r11 + movq 5696(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26272,13 +26786,13 @@ GL_PREFIX(_dispatch_stub_698): popq %rdx popq %rsi popq %rdi - movq 5584(%rax), %r11 + movq 5696(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5584(%rax), %r11 + movq 5696(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26296,19 +26810,19 @@ GL_PREFIX(_dispatch_stub_698): popq %rdx popq %rsi popq %rdi - movq 5584(%rax), %r11 + movq 5696(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_698), .-GL_PREFIX(_dispatch_stub_698) + .size GL_PREFIX(_dispatch_stub_712), .-GL_PREFIX(_dispatch_stub_712) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_699) - .type GL_PREFIX(_dispatch_stub_699), @function - HIDDEN(GL_PREFIX(_dispatch_stub_699)) -GL_PREFIX(_dispatch_stub_699): + .globl GL_PREFIX(_dispatch_stub_713) + .type GL_PREFIX(_dispatch_stub_713), @function + HIDDEN(GL_PREFIX(_dispatch_stub_713)) +GL_PREFIX(_dispatch_stub_713): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5592(%rax), %r11 + movq 5704(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26318,13 +26832,13 @@ GL_PREFIX(_dispatch_stub_699): popq %rbp popq %rsi popq %rdi - movq 5592(%rax), %r11 + movq 5704(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5592(%rax), %r11 + movq 5704(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26334,49 +26848,49 @@ GL_PREFIX(_dispatch_stub_699): popq %rbp popq %rsi popq %rdi - movq 5592(%rax), %r11 + movq 5704(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_699), .-GL_PREFIX(_dispatch_stub_699) + .size GL_PREFIX(_dispatch_stub_713), .-GL_PREFIX(_dispatch_stub_713) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_700) - .type GL_PREFIX(_dispatch_stub_700), @function - HIDDEN(GL_PREFIX(_dispatch_stub_700)) -GL_PREFIX(_dispatch_stub_700): + .globl GL_PREFIX(_dispatch_stub_714) + .type GL_PREFIX(_dispatch_stub_714), @function + HIDDEN(GL_PREFIX(_dispatch_stub_714)) +GL_PREFIX(_dispatch_stub_714): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5600(%rax), %r11 + movq 5712(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5600(%rax), %r11 + movq 5712(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5600(%rax), %r11 + movq 5712(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5600(%rax), %r11 + movq 5712(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_700), .-GL_PREFIX(_dispatch_stub_700) + .size GL_PREFIX(_dispatch_stub_714), .-GL_PREFIX(_dispatch_stub_714) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_701) - .type GL_PREFIX(_dispatch_stub_701), @function - HIDDEN(GL_PREFIX(_dispatch_stub_701)) -GL_PREFIX(_dispatch_stub_701): + .globl GL_PREFIX(_dispatch_stub_715) + .type GL_PREFIX(_dispatch_stub_715), @function + HIDDEN(GL_PREFIX(_dispatch_stub_715)) +GL_PREFIX(_dispatch_stub_715): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5608(%rax), %r11 + movq 5720(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26386,13 +26900,13 @@ GL_PREFIX(_dispatch_stub_701): popq %rbp popq %rsi popq %rdi - movq 5608(%rax), %r11 + movq 5720(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5608(%rax), %r11 + movq 5720(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26402,19 +26916,19 @@ GL_PREFIX(_dispatch_stub_701): popq %rbp popq %rsi popq %rdi - movq 5608(%rax), %r11 + movq 5720(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_701), .-GL_PREFIX(_dispatch_stub_701) + .size GL_PREFIX(_dispatch_stub_715), .-GL_PREFIX(_dispatch_stub_715) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_702) - .type GL_PREFIX(_dispatch_stub_702), @function - HIDDEN(GL_PREFIX(_dispatch_stub_702)) -GL_PREFIX(_dispatch_stub_702): + .globl GL_PREFIX(_dispatch_stub_716) + .type GL_PREFIX(_dispatch_stub_716), @function + HIDDEN(GL_PREFIX(_dispatch_stub_716)) +GL_PREFIX(_dispatch_stub_716): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5616(%rax), %r11 + movq 5728(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26424,13 +26938,13 @@ GL_PREFIX(_dispatch_stub_702): popq %rdx popq %rsi popq %rdi - movq 5616(%rax), %r11 + movq 5728(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5616(%rax), %r11 + movq 5728(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26440,49 +26954,49 @@ GL_PREFIX(_dispatch_stub_702): popq %rdx popq %rsi popq %rdi - movq 5616(%rax), %r11 + movq 5728(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_702), .-GL_PREFIX(_dispatch_stub_702) + .size GL_PREFIX(_dispatch_stub_716), .-GL_PREFIX(_dispatch_stub_716) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_703) - .type GL_PREFIX(_dispatch_stub_703), @function - HIDDEN(GL_PREFIX(_dispatch_stub_703)) -GL_PREFIX(_dispatch_stub_703): + .globl GL_PREFIX(_dispatch_stub_717) + .type GL_PREFIX(_dispatch_stub_717), @function + HIDDEN(GL_PREFIX(_dispatch_stub_717)) +GL_PREFIX(_dispatch_stub_717): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5624(%rax), %r11 + movq 5736(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5624(%rax), %r11 + movq 5736(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5624(%rax), %r11 + movq 5736(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5624(%rax), %r11 + movq 5736(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_703), .-GL_PREFIX(_dispatch_stub_703) + .size GL_PREFIX(_dispatch_stub_717), .-GL_PREFIX(_dispatch_stub_717) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_704) - .type GL_PREFIX(_dispatch_stub_704), @function - HIDDEN(GL_PREFIX(_dispatch_stub_704)) -GL_PREFIX(_dispatch_stub_704): + .globl GL_PREFIX(_dispatch_stub_718) + .type GL_PREFIX(_dispatch_stub_718), @function + HIDDEN(GL_PREFIX(_dispatch_stub_718)) +GL_PREFIX(_dispatch_stub_718): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5632(%rax), %r11 + movq 5744(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26492,13 +27006,13 @@ GL_PREFIX(_dispatch_stub_704): popq %rbp popq %rsi popq %rdi - movq 5632(%rax), %r11 + movq 5744(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5632(%rax), %r11 + movq 5744(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26508,40 +27022,40 @@ GL_PREFIX(_dispatch_stub_704): popq %rbp popq %rsi popq %rdi - movq 5632(%rax), %r11 + movq 5744(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_704), .-GL_PREFIX(_dispatch_stub_704) + .size GL_PREFIX(_dispatch_stub_718), .-GL_PREFIX(_dispatch_stub_718) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_705) - .type GL_PREFIX(_dispatch_stub_705), @function - HIDDEN(GL_PREFIX(_dispatch_stub_705)) -GL_PREFIX(_dispatch_stub_705): + .globl GL_PREFIX(_dispatch_stub_719) + .type GL_PREFIX(_dispatch_stub_719), @function + HIDDEN(GL_PREFIX(_dispatch_stub_719)) +GL_PREFIX(_dispatch_stub_719): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5640(%rax), %r11 + movq 5752(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5640(%rax), %r11 + movq 5752(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5640(%rax), %r11 + movq 5752(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5640(%rax), %r11 + movq 5752(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_705), .-GL_PREFIX(_dispatch_stub_705) + .size GL_PREFIX(_dispatch_stub_719), .-GL_PREFIX(_dispatch_stub_719) .p2align 4,,15 .globl GL_PREFIX(AreProgramsResidentNV) @@ -26549,7 +27063,7 @@ GL_PREFIX(_dispatch_stub_705): GL_PREFIX(AreProgramsResidentNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5648(%rax), %r11 + movq 5760(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26559,13 +27073,13 @@ GL_PREFIX(AreProgramsResidentNV): popq %rdx popq %rsi popq %rdi - movq 5648(%rax), %r11 + movq 5760(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5648(%rax), %r11 + movq 5760(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26575,7 +27089,7 @@ GL_PREFIX(AreProgramsResidentNV): popq %rdx popq %rsi popq %rdi - movq 5648(%rax), %r11 + movq 5760(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(AreProgramsResidentNV), .-GL_PREFIX(AreProgramsResidentNV) @@ -26586,7 +27100,7 @@ GL_PREFIX(AreProgramsResidentNV): GL_PREFIX(BindProgramNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5656(%rax), %r11 + movq 5768(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26596,13 +27110,13 @@ GL_PREFIX(BindProgramNV): popq %rbp popq %rsi popq %rdi - movq 5656(%rax), %r11 + movq 5768(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5656(%rax), %r11 + movq 5768(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26612,7 +27126,7 @@ GL_PREFIX(BindProgramNV): popq %rbp popq %rsi popq %rdi - movq 5656(%rax), %r11 + movq 5768(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindProgramNV), .-GL_PREFIX(BindProgramNV) @@ -26623,7 +27137,7 @@ GL_PREFIX(BindProgramNV): GL_PREFIX(DeleteProgramsNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5664(%rax), %r11 + movq 5776(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26633,13 +27147,13 @@ GL_PREFIX(DeleteProgramsNV): popq %rbp popq %rsi popq %rdi - movq 5664(%rax), %r11 + movq 5776(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5664(%rax), %r11 + movq 5776(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26649,7 +27163,7 @@ GL_PREFIX(DeleteProgramsNV): popq %rbp popq %rsi popq %rdi - movq 5664(%rax), %r11 + movq 5776(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DeleteProgramsNV), .-GL_PREFIX(DeleteProgramsNV) @@ -26660,7 +27174,7 @@ GL_PREFIX(DeleteProgramsNV): GL_PREFIX(ExecuteProgramNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5672(%rax), %r11 + movq 5784(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26670,13 +27184,13 @@ GL_PREFIX(ExecuteProgramNV): popq %rdx popq %rsi popq %rdi - movq 5672(%rax), %r11 + movq 5784(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5672(%rax), %r11 + movq 5784(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26686,7 +27200,7 @@ GL_PREFIX(ExecuteProgramNV): popq %rdx popq %rsi popq %rdi - movq 5672(%rax), %r11 + movq 5784(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ExecuteProgramNV), .-GL_PREFIX(ExecuteProgramNV) @@ -26697,7 +27211,7 @@ GL_PREFIX(ExecuteProgramNV): GL_PREFIX(GenProgramsNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5680(%rax), %r11 + movq 5792(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26707,13 +27221,13 @@ GL_PREFIX(GenProgramsNV): popq %rbp popq %rsi popq %rdi - movq 5680(%rax), %r11 + movq 5792(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5680(%rax), %r11 + movq 5792(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26723,7 +27237,7 @@ GL_PREFIX(GenProgramsNV): popq %rbp popq %rsi popq %rdi - movq 5680(%rax), %r11 + movq 5792(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GenProgramsNV), .-GL_PREFIX(GenProgramsNV) @@ -26734,7 +27248,7 @@ GL_PREFIX(GenProgramsNV): GL_PREFIX(GetProgramParameterdvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5688(%rax), %r11 + movq 5800(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26748,13 +27262,13 @@ GL_PREFIX(GetProgramParameterdvNV): popq %rdx popq %rsi popq %rdi - movq 5688(%rax), %r11 + movq 5800(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5688(%rax), %r11 + movq 5800(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26768,7 +27282,7 @@ GL_PREFIX(GetProgramParameterdvNV): popq %rdx popq %rsi popq %rdi - movq 5688(%rax), %r11 + movq 5800(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetProgramParameterdvNV), .-GL_PREFIX(GetProgramParameterdvNV) @@ -26779,7 +27293,7 @@ GL_PREFIX(GetProgramParameterdvNV): GL_PREFIX(GetProgramParameterfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5696(%rax), %r11 + movq 5808(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26793,13 +27307,13 @@ GL_PREFIX(GetProgramParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5696(%rax), %r11 + movq 5808(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5696(%rax), %r11 + movq 5808(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26813,7 +27327,7 @@ GL_PREFIX(GetProgramParameterfvNV): popq %rdx popq %rsi popq %rdi - movq 5696(%rax), %r11 + movq 5808(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetProgramParameterfvNV), .-GL_PREFIX(GetProgramParameterfvNV) @@ -26824,7 +27338,7 @@ GL_PREFIX(GetProgramParameterfvNV): GL_PREFIX(GetProgramStringNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5704(%rax), %r11 + movq 5816(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26834,13 +27348,13 @@ GL_PREFIX(GetProgramStringNV): popq %rdx popq %rsi popq %rdi - movq 5704(%rax), %r11 + movq 5816(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5704(%rax), %r11 + movq 5816(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26850,7 +27364,7 @@ GL_PREFIX(GetProgramStringNV): popq %rdx popq %rsi popq %rdi - movq 5704(%rax), %r11 + movq 5816(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetProgramStringNV), .-GL_PREFIX(GetProgramStringNV) @@ -26861,7 +27375,7 @@ GL_PREFIX(GetProgramStringNV): GL_PREFIX(GetProgramivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5712(%rax), %r11 + movq 5824(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26871,13 +27385,13 @@ GL_PREFIX(GetProgramivNV): popq %rdx popq %rsi popq %rdi - movq 5712(%rax), %r11 + movq 5824(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5712(%rax), %r11 + movq 5824(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26887,7 +27401,7 @@ GL_PREFIX(GetProgramivNV): popq %rdx popq %rsi popq %rdi - movq 5712(%rax), %r11 + movq 5824(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetProgramivNV), .-GL_PREFIX(GetProgramivNV) @@ -26898,7 +27412,7 @@ GL_PREFIX(GetProgramivNV): GL_PREFIX(GetTrackMatrixivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5720(%rax), %r11 + movq 5832(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26912,13 +27426,13 @@ GL_PREFIX(GetTrackMatrixivNV): popq %rdx popq %rsi popq %rdi - movq 5720(%rax), %r11 + movq 5832(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5720(%rax), %r11 + movq 5832(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26932,7 +27446,7 @@ GL_PREFIX(GetTrackMatrixivNV): popq %rdx popq %rsi popq %rdi - movq 5720(%rax), %r11 + movq 5832(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetTrackMatrixivNV), .-GL_PREFIX(GetTrackMatrixivNV) @@ -26943,7 +27457,7 @@ GL_PREFIX(GetTrackMatrixivNV): GL_PREFIX(GetVertexAttribPointervNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5728(%rax), %r11 + movq 5840(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26953,13 +27467,13 @@ GL_PREFIX(GetVertexAttribPointervNV): popq %rdx popq %rsi popq %rdi - movq 5728(%rax), %r11 + movq 5840(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5728(%rax), %r11 + movq 5840(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -26969,7 +27483,7 @@ GL_PREFIX(GetVertexAttribPointervNV): popq %rdx popq %rsi popq %rdi - movq 5728(%rax), %r11 + movq 5840(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetVertexAttribPointervNV), .-GL_PREFIX(GetVertexAttribPointervNV) @@ -26980,7 +27494,7 @@ GL_PREFIX(GetVertexAttribPointervNV): GL_PREFIX(GetVertexAttribdvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5736(%rax), %r11 + movq 5848(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -26990,13 +27504,13 @@ GL_PREFIX(GetVertexAttribdvNV): popq %rdx popq %rsi popq %rdi - movq 5736(%rax), %r11 + movq 5848(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5736(%rax), %r11 + movq 5848(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27006,7 +27520,7 @@ GL_PREFIX(GetVertexAttribdvNV): popq %rdx popq %rsi popq %rdi - movq 5736(%rax), %r11 + movq 5848(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetVertexAttribdvNV), .-GL_PREFIX(GetVertexAttribdvNV) @@ -27017,7 +27531,7 @@ GL_PREFIX(GetVertexAttribdvNV): GL_PREFIX(GetVertexAttribfvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5744(%rax), %r11 + movq 5856(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27027,13 +27541,13 @@ GL_PREFIX(GetVertexAttribfvNV): popq %rdx popq %rsi popq %rdi - movq 5744(%rax), %r11 + movq 5856(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5744(%rax), %r11 + movq 5856(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27043,7 +27557,7 @@ GL_PREFIX(GetVertexAttribfvNV): popq %rdx popq %rsi popq %rdi - movq 5744(%rax), %r11 + movq 5856(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetVertexAttribfvNV), .-GL_PREFIX(GetVertexAttribfvNV) @@ -27054,7 +27568,7 @@ GL_PREFIX(GetVertexAttribfvNV): GL_PREFIX(GetVertexAttribivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5752(%rax), %r11 + movq 5864(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27064,13 +27578,13 @@ GL_PREFIX(GetVertexAttribivNV): popq %rdx popq %rsi popq %rdi - movq 5752(%rax), %r11 + movq 5864(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5752(%rax), %r11 + movq 5864(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27080,7 +27594,7 @@ GL_PREFIX(GetVertexAttribivNV): popq %rdx popq %rsi popq %rdi - movq 5752(%rax), %r11 + movq 5864(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetVertexAttribivNV), .-GL_PREFIX(GetVertexAttribivNV) @@ -27091,25 +27605,25 @@ GL_PREFIX(GetVertexAttribivNV): GL_PREFIX(IsProgramNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5760(%rax), %r11 + movq 5872(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 5760(%rax), %r11 + movq 5872(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5760(%rax), %r11 + movq 5872(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 5760(%rax), %r11 + movq 5872(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(IsProgramNV), .-GL_PREFIX(IsProgramNV) @@ -27120,7 +27634,7 @@ GL_PREFIX(IsProgramNV): GL_PREFIX(LoadProgramNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5768(%rax), %r11 + movq 5880(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27134,13 +27648,13 @@ GL_PREFIX(LoadProgramNV): popq %rdx popq %rsi popq %rdi - movq 5768(%rax), %r11 + movq 5880(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5768(%rax), %r11 + movq 5880(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27154,7 +27668,7 @@ GL_PREFIX(LoadProgramNV): popq %rdx popq %rsi popq %rdi - movq 5768(%rax), %r11 + movq 5880(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(LoadProgramNV), .-GL_PREFIX(LoadProgramNV) @@ -27165,7 +27679,7 @@ GL_PREFIX(LoadProgramNV): GL_PREFIX(ProgramParameters4dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5776(%rax), %r11 + movq 5888(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27179,13 +27693,13 @@ GL_PREFIX(ProgramParameters4dvNV): popq %rdx popq %rsi popq %rdi - movq 5776(%rax), %r11 + movq 5888(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5776(%rax), %r11 + movq 5888(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27199,7 +27713,7 @@ GL_PREFIX(ProgramParameters4dvNV): popq %rdx popq %rsi popq %rdi - movq 5776(%rax), %r11 + movq 5888(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ProgramParameters4dvNV), .-GL_PREFIX(ProgramParameters4dvNV) @@ -27210,7 +27724,7 @@ GL_PREFIX(ProgramParameters4dvNV): GL_PREFIX(ProgramParameters4fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5784(%rax), %r11 + movq 5896(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27224,13 +27738,13 @@ GL_PREFIX(ProgramParameters4fvNV): popq %rdx popq %rsi popq %rdi - movq 5784(%rax), %r11 + movq 5896(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5784(%rax), %r11 + movq 5896(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27244,7 +27758,7 @@ GL_PREFIX(ProgramParameters4fvNV): popq %rdx popq %rsi popq %rdi - movq 5784(%rax), %r11 + movq 5896(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ProgramParameters4fvNV), .-GL_PREFIX(ProgramParameters4fvNV) @@ -27255,7 +27769,7 @@ GL_PREFIX(ProgramParameters4fvNV): GL_PREFIX(RequestResidentProgramsNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5792(%rax), %r11 + movq 5904(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27265,13 +27779,13 @@ GL_PREFIX(RequestResidentProgramsNV): popq %rbp popq %rsi popq %rdi - movq 5792(%rax), %r11 + movq 5904(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5792(%rax), %r11 + movq 5904(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27281,7 +27795,7 @@ GL_PREFIX(RequestResidentProgramsNV): popq %rbp popq %rsi popq %rdi - movq 5792(%rax), %r11 + movq 5904(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(RequestResidentProgramsNV), .-GL_PREFIX(RequestResidentProgramsNV) @@ -27292,7 +27806,7 @@ GL_PREFIX(RequestResidentProgramsNV): GL_PREFIX(TrackMatrixNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5800(%rax), %r11 + movq 5912(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27306,13 +27820,13 @@ GL_PREFIX(TrackMatrixNV): popq %rdx popq %rsi popq %rdi - movq 5800(%rax), %r11 + movq 5912(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5800(%rax), %r11 + movq 5912(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27326,7 +27840,7 @@ GL_PREFIX(TrackMatrixNV): popq %rdx popq %rsi popq %rdi - movq 5800(%rax), %r11 + movq 5912(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TrackMatrixNV), .-GL_PREFIX(TrackMatrixNV) @@ -27337,7 +27851,7 @@ GL_PREFIX(TrackMatrixNV): GL_PREFIX(VertexAttrib1dNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5808(%rax), %r11 + movq 5920(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -27347,13 +27861,13 @@ GL_PREFIX(VertexAttrib1dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5808(%rax), %r11 + movq 5920(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5808(%rax), %r11 + movq 5920(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -27363,7 +27877,7 @@ GL_PREFIX(VertexAttrib1dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5808(%rax), %r11 + movq 5920(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib1dNV), .-GL_PREFIX(VertexAttrib1dNV) @@ -27374,7 +27888,7 @@ GL_PREFIX(VertexAttrib1dNV): GL_PREFIX(VertexAttrib1dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5816(%rax), %r11 + movq 5928(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27384,13 +27898,13 @@ GL_PREFIX(VertexAttrib1dvNV): popq %rbp popq %rsi popq %rdi - movq 5816(%rax), %r11 + movq 5928(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5816(%rax), %r11 + movq 5928(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27400,7 +27914,7 @@ GL_PREFIX(VertexAttrib1dvNV): popq %rbp popq %rsi popq %rdi - movq 5816(%rax), %r11 + movq 5928(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib1dvNV), .-GL_PREFIX(VertexAttrib1dvNV) @@ -27411,7 +27925,7 @@ GL_PREFIX(VertexAttrib1dvNV): GL_PREFIX(VertexAttrib1fNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5824(%rax), %r11 + movq 5936(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -27421,13 +27935,13 @@ GL_PREFIX(VertexAttrib1fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5824(%rax), %r11 + movq 5936(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5824(%rax), %r11 + movq 5936(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -27437,7 +27951,7 @@ GL_PREFIX(VertexAttrib1fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5824(%rax), %r11 + movq 5936(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib1fNV), .-GL_PREFIX(VertexAttrib1fNV) @@ -27448,7 +27962,7 @@ GL_PREFIX(VertexAttrib1fNV): GL_PREFIX(VertexAttrib1fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5832(%rax), %r11 + movq 5944(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27458,13 +27972,13 @@ GL_PREFIX(VertexAttrib1fvNV): popq %rbp popq %rsi popq %rdi - movq 5832(%rax), %r11 + movq 5944(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5832(%rax), %r11 + movq 5944(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27474,7 +27988,7 @@ GL_PREFIX(VertexAttrib1fvNV): popq %rbp popq %rsi popq %rdi - movq 5832(%rax), %r11 + movq 5944(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib1fvNV), .-GL_PREFIX(VertexAttrib1fvNV) @@ -27485,7 +27999,7 @@ GL_PREFIX(VertexAttrib1fvNV): GL_PREFIX(VertexAttrib1sNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5840(%rax), %r11 + movq 5952(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27495,13 +28009,13 @@ GL_PREFIX(VertexAttrib1sNV): popq %rbp popq %rsi popq %rdi - movq 5840(%rax), %r11 + movq 5952(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5840(%rax), %r11 + movq 5952(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27511,7 +28025,7 @@ GL_PREFIX(VertexAttrib1sNV): popq %rbp popq %rsi popq %rdi - movq 5840(%rax), %r11 + movq 5952(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib1sNV), .-GL_PREFIX(VertexAttrib1sNV) @@ -27522,7 +28036,7 @@ GL_PREFIX(VertexAttrib1sNV): GL_PREFIX(VertexAttrib1svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5848(%rax), %r11 + movq 5960(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27532,13 +28046,13 @@ GL_PREFIX(VertexAttrib1svNV): popq %rbp popq %rsi popq %rdi - movq 5848(%rax), %r11 + movq 5960(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5848(%rax), %r11 + movq 5960(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27548,7 +28062,7 @@ GL_PREFIX(VertexAttrib1svNV): popq %rbp popq %rsi popq %rdi - movq 5848(%rax), %r11 + movq 5960(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib1svNV), .-GL_PREFIX(VertexAttrib1svNV) @@ -27559,7 +28073,7 @@ GL_PREFIX(VertexAttrib1svNV): GL_PREFIX(VertexAttrib2dNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5856(%rax), %r11 + movq 5968(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -27571,13 +28085,13 @@ GL_PREFIX(VertexAttrib2dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5856(%rax), %r11 + movq 5968(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5856(%rax), %r11 + movq 5968(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -27589,7 +28103,7 @@ GL_PREFIX(VertexAttrib2dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5856(%rax), %r11 + movq 5968(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib2dNV), .-GL_PREFIX(VertexAttrib2dNV) @@ -27600,7 +28114,7 @@ GL_PREFIX(VertexAttrib2dNV): GL_PREFIX(VertexAttrib2dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5864(%rax), %r11 + movq 5976(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27610,13 +28124,13 @@ GL_PREFIX(VertexAttrib2dvNV): popq %rbp popq %rsi popq %rdi - movq 5864(%rax), %r11 + movq 5976(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5864(%rax), %r11 + movq 5976(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27626,7 +28140,7 @@ GL_PREFIX(VertexAttrib2dvNV): popq %rbp popq %rsi popq %rdi - movq 5864(%rax), %r11 + movq 5976(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib2dvNV), .-GL_PREFIX(VertexAttrib2dvNV) @@ -27637,7 +28151,7 @@ GL_PREFIX(VertexAttrib2dvNV): GL_PREFIX(VertexAttrib2fNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5872(%rax), %r11 + movq 5984(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $24, %rsp @@ -27649,13 +28163,13 @@ GL_PREFIX(VertexAttrib2fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5872(%rax), %r11 + movq 5984(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5872(%rax), %r11 + movq 5984(%rax), %r11 jmp *%r11 1: subq $24, %rsp @@ -27667,7 +28181,7 @@ GL_PREFIX(VertexAttrib2fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $24, %rsp - movq 5872(%rax), %r11 + movq 5984(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib2fNV), .-GL_PREFIX(VertexAttrib2fNV) @@ -27678,7 +28192,7 @@ GL_PREFIX(VertexAttrib2fNV): GL_PREFIX(VertexAttrib2fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5880(%rax), %r11 + movq 5992(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27688,13 +28202,13 @@ GL_PREFIX(VertexAttrib2fvNV): popq %rbp popq %rsi popq %rdi - movq 5880(%rax), %r11 + movq 5992(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5880(%rax), %r11 + movq 5992(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27704,7 +28218,7 @@ GL_PREFIX(VertexAttrib2fvNV): popq %rbp popq %rsi popq %rdi - movq 5880(%rax), %r11 + movq 5992(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib2fvNV), .-GL_PREFIX(VertexAttrib2fvNV) @@ -27715,7 +28229,7 @@ GL_PREFIX(VertexAttrib2fvNV): GL_PREFIX(VertexAttrib2sNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5888(%rax), %r11 + movq 6000(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27725,13 +28239,13 @@ GL_PREFIX(VertexAttrib2sNV): popq %rdx popq %rsi popq %rdi - movq 5888(%rax), %r11 + movq 6000(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5888(%rax), %r11 + movq 6000(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27741,7 +28255,7 @@ GL_PREFIX(VertexAttrib2sNV): popq %rdx popq %rsi popq %rdi - movq 5888(%rax), %r11 + movq 6000(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib2sNV), .-GL_PREFIX(VertexAttrib2sNV) @@ -27752,7 +28266,7 @@ GL_PREFIX(VertexAttrib2sNV): GL_PREFIX(VertexAttrib2svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5896(%rax), %r11 + movq 6008(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27762,13 +28276,13 @@ GL_PREFIX(VertexAttrib2svNV): popq %rbp popq %rsi popq %rdi - movq 5896(%rax), %r11 + movq 6008(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5896(%rax), %r11 + movq 6008(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27778,7 +28292,7 @@ GL_PREFIX(VertexAttrib2svNV): popq %rbp popq %rsi popq %rdi - movq 5896(%rax), %r11 + movq 6008(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib2svNV), .-GL_PREFIX(VertexAttrib2svNV) @@ -27789,7 +28303,7 @@ GL_PREFIX(VertexAttrib2svNV): GL_PREFIX(VertexAttrib3dNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5904(%rax), %r11 + movq 6016(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $40, %rsp @@ -27803,13 +28317,13 @@ GL_PREFIX(VertexAttrib3dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 5904(%rax), %r11 + movq 6016(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5904(%rax), %r11 + movq 6016(%rax), %r11 jmp *%r11 1: subq $40, %rsp @@ -27823,7 +28337,7 @@ GL_PREFIX(VertexAttrib3dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 5904(%rax), %r11 + movq 6016(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib3dNV), .-GL_PREFIX(VertexAttrib3dNV) @@ -27834,7 +28348,7 @@ GL_PREFIX(VertexAttrib3dNV): GL_PREFIX(VertexAttrib3dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5912(%rax), %r11 + movq 6024(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27844,13 +28358,13 @@ GL_PREFIX(VertexAttrib3dvNV): popq %rbp popq %rsi popq %rdi - movq 5912(%rax), %r11 + movq 6024(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5912(%rax), %r11 + movq 6024(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27860,7 +28374,7 @@ GL_PREFIX(VertexAttrib3dvNV): popq %rbp popq %rsi popq %rdi - movq 5912(%rax), %r11 + movq 6024(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib3dvNV), .-GL_PREFIX(VertexAttrib3dvNV) @@ -27871,7 +28385,7 @@ GL_PREFIX(VertexAttrib3dvNV): GL_PREFIX(VertexAttrib3fNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5920(%rax), %r11 + movq 6032(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $40, %rsp @@ -27885,13 +28399,13 @@ GL_PREFIX(VertexAttrib3fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 5920(%rax), %r11 + movq 6032(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5920(%rax), %r11 + movq 6032(%rax), %r11 jmp *%r11 1: subq $40, %rsp @@ -27905,7 +28419,7 @@ GL_PREFIX(VertexAttrib3fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 5920(%rax), %r11 + movq 6032(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib3fNV), .-GL_PREFIX(VertexAttrib3fNV) @@ -27916,7 +28430,7 @@ GL_PREFIX(VertexAttrib3fNV): GL_PREFIX(VertexAttrib3fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5928(%rax), %r11 + movq 6040(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27926,13 +28440,13 @@ GL_PREFIX(VertexAttrib3fvNV): popq %rbp popq %rsi popq %rdi - movq 5928(%rax), %r11 + movq 6040(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5928(%rax), %r11 + movq 6040(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27942,7 +28456,7 @@ GL_PREFIX(VertexAttrib3fvNV): popq %rbp popq %rsi popq %rdi - movq 5928(%rax), %r11 + movq 6040(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib3fvNV), .-GL_PREFIX(VertexAttrib3fvNV) @@ -27953,7 +28467,7 @@ GL_PREFIX(VertexAttrib3fvNV): GL_PREFIX(VertexAttrib3sNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5936(%rax), %r11 + movq 6048(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -27967,13 +28481,13 @@ GL_PREFIX(VertexAttrib3sNV): popq %rdx popq %rsi popq %rdi - movq 5936(%rax), %r11 + movq 6048(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5936(%rax), %r11 + movq 6048(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -27987,7 +28501,7 @@ GL_PREFIX(VertexAttrib3sNV): popq %rdx popq %rsi popq %rdi - movq 5936(%rax), %r11 + movq 6048(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib3sNV), .-GL_PREFIX(VertexAttrib3sNV) @@ -27998,7 +28512,7 @@ GL_PREFIX(VertexAttrib3sNV): GL_PREFIX(VertexAttrib3svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5944(%rax), %r11 + movq 6056(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28008,13 +28522,13 @@ GL_PREFIX(VertexAttrib3svNV): popq %rbp popq %rsi popq %rdi - movq 5944(%rax), %r11 + movq 6056(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5944(%rax), %r11 + movq 6056(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28024,7 +28538,7 @@ GL_PREFIX(VertexAttrib3svNV): popq %rbp popq %rsi popq %rdi - movq 5944(%rax), %r11 + movq 6056(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib3svNV), .-GL_PREFIX(VertexAttrib3svNV) @@ -28035,7 +28549,7 @@ GL_PREFIX(VertexAttrib3svNV): GL_PREFIX(VertexAttrib4dNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5952(%rax), %r11 + movq 6064(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $40, %rsp @@ -28051,13 +28565,13 @@ GL_PREFIX(VertexAttrib4dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 5952(%rax), %r11 + movq 6064(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5952(%rax), %r11 + movq 6064(%rax), %r11 jmp *%r11 1: subq $40, %rsp @@ -28073,7 +28587,7 @@ GL_PREFIX(VertexAttrib4dNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 5952(%rax), %r11 + movq 6064(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4dNV), .-GL_PREFIX(VertexAttrib4dNV) @@ -28084,7 +28598,7 @@ GL_PREFIX(VertexAttrib4dNV): GL_PREFIX(VertexAttrib4dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5960(%rax), %r11 + movq 6072(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28094,13 +28608,13 @@ GL_PREFIX(VertexAttrib4dvNV): popq %rbp popq %rsi popq %rdi - movq 5960(%rax), %r11 + movq 6072(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5960(%rax), %r11 + movq 6072(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28110,7 +28624,7 @@ GL_PREFIX(VertexAttrib4dvNV): popq %rbp popq %rsi popq %rdi - movq 5960(%rax), %r11 + movq 6072(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4dvNV), .-GL_PREFIX(VertexAttrib4dvNV) @@ -28121,7 +28635,7 @@ GL_PREFIX(VertexAttrib4dvNV): GL_PREFIX(VertexAttrib4fNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5968(%rax), %r11 + movq 6080(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) subq $40, %rsp @@ -28137,13 +28651,13 @@ GL_PREFIX(VertexAttrib4fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 5968(%rax), %r11 + movq 6080(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5968(%rax), %r11 + movq 6080(%rax), %r11 jmp *%r11 1: subq $40, %rsp @@ -28159,7 +28673,7 @@ GL_PREFIX(VertexAttrib4fNV): movq 8(%rsp), %xmm0 movq (%rsp), %rdi addq $40, %rsp - movq 5968(%rax), %r11 + movq 6080(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4fNV), .-GL_PREFIX(VertexAttrib4fNV) @@ -28170,7 +28684,7 @@ GL_PREFIX(VertexAttrib4fNV): GL_PREFIX(VertexAttrib4fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5976(%rax), %r11 + movq 6088(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28180,13 +28694,13 @@ GL_PREFIX(VertexAttrib4fvNV): popq %rbp popq %rsi popq %rdi - movq 5976(%rax), %r11 + movq 6088(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5976(%rax), %r11 + movq 6088(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28196,7 +28710,7 @@ GL_PREFIX(VertexAttrib4fvNV): popq %rbp popq %rsi popq %rdi - movq 5976(%rax), %r11 + movq 6088(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4fvNV), .-GL_PREFIX(VertexAttrib4fvNV) @@ -28207,7 +28721,7 @@ GL_PREFIX(VertexAttrib4fvNV): GL_PREFIX(VertexAttrib4sNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5984(%rax), %r11 + movq 6096(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28221,13 +28735,13 @@ GL_PREFIX(VertexAttrib4sNV): popq %rdx popq %rsi popq %rdi - movq 5984(%rax), %r11 + movq 6096(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5984(%rax), %r11 + movq 6096(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28241,7 +28755,7 @@ GL_PREFIX(VertexAttrib4sNV): popq %rdx popq %rsi popq %rdi - movq 5984(%rax), %r11 + movq 6096(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4sNV), .-GL_PREFIX(VertexAttrib4sNV) @@ -28252,7 +28766,7 @@ GL_PREFIX(VertexAttrib4sNV): GL_PREFIX(VertexAttrib4svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 5992(%rax), %r11 + movq 6104(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28262,13 +28776,13 @@ GL_PREFIX(VertexAttrib4svNV): popq %rbp popq %rsi popq %rdi - movq 5992(%rax), %r11 + movq 6104(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 5992(%rax), %r11 + movq 6104(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28278,7 +28792,7 @@ GL_PREFIX(VertexAttrib4svNV): popq %rbp popq %rsi popq %rdi - movq 5992(%rax), %r11 + movq 6104(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4svNV), .-GL_PREFIX(VertexAttrib4svNV) @@ -28289,7 +28803,7 @@ GL_PREFIX(VertexAttrib4svNV): GL_PREFIX(VertexAttrib4ubNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6000(%rax), %r11 + movq 6112(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28303,13 +28817,13 @@ GL_PREFIX(VertexAttrib4ubNV): popq %rdx popq %rsi popq %rdi - movq 6000(%rax), %r11 + movq 6112(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6000(%rax), %r11 + movq 6112(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28323,7 +28837,7 @@ GL_PREFIX(VertexAttrib4ubNV): popq %rdx popq %rsi popq %rdi - movq 6000(%rax), %r11 + movq 6112(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4ubNV), .-GL_PREFIX(VertexAttrib4ubNV) @@ -28334,7 +28848,7 @@ GL_PREFIX(VertexAttrib4ubNV): GL_PREFIX(VertexAttrib4ubvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6008(%rax), %r11 + movq 6120(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28344,13 +28858,13 @@ GL_PREFIX(VertexAttrib4ubvNV): popq %rbp popq %rsi popq %rdi - movq 6008(%rax), %r11 + movq 6120(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6008(%rax), %r11 + movq 6120(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28360,7 +28874,7 @@ GL_PREFIX(VertexAttrib4ubvNV): popq %rbp popq %rsi popq %rdi - movq 6008(%rax), %r11 + movq 6120(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttrib4ubvNV), .-GL_PREFIX(VertexAttrib4ubvNV) @@ -28371,7 +28885,7 @@ GL_PREFIX(VertexAttrib4ubvNV): GL_PREFIX(VertexAttribPointerNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6016(%rax), %r11 + movq 6128(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28385,13 +28899,13 @@ GL_PREFIX(VertexAttribPointerNV): popq %rdx popq %rsi popq %rdi - movq 6016(%rax), %r11 + movq 6128(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6016(%rax), %r11 + movq 6128(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28405,7 +28919,7 @@ GL_PREFIX(VertexAttribPointerNV): popq %rdx popq %rsi popq %rdi - movq 6016(%rax), %r11 + movq 6128(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribPointerNV), .-GL_PREFIX(VertexAttribPointerNV) @@ -28416,7 +28930,7 @@ GL_PREFIX(VertexAttribPointerNV): GL_PREFIX(VertexAttribs1dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6024(%rax), %r11 + movq 6136(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28426,13 +28940,13 @@ GL_PREFIX(VertexAttribs1dvNV): popq %rdx popq %rsi popq %rdi - movq 6024(%rax), %r11 + movq 6136(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6024(%rax), %r11 + movq 6136(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28442,7 +28956,7 @@ GL_PREFIX(VertexAttribs1dvNV): popq %rdx popq %rsi popq %rdi - movq 6024(%rax), %r11 + movq 6136(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs1dvNV), .-GL_PREFIX(VertexAttribs1dvNV) @@ -28453,7 +28967,7 @@ GL_PREFIX(VertexAttribs1dvNV): GL_PREFIX(VertexAttribs1fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6032(%rax), %r11 + movq 6144(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28463,13 +28977,13 @@ GL_PREFIX(VertexAttribs1fvNV): popq %rdx popq %rsi popq %rdi - movq 6032(%rax), %r11 + movq 6144(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6032(%rax), %r11 + movq 6144(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28479,7 +28993,7 @@ GL_PREFIX(VertexAttribs1fvNV): popq %rdx popq %rsi popq %rdi - movq 6032(%rax), %r11 + movq 6144(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs1fvNV), .-GL_PREFIX(VertexAttribs1fvNV) @@ -28490,7 +29004,7 @@ GL_PREFIX(VertexAttribs1fvNV): GL_PREFIX(VertexAttribs1svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6040(%rax), %r11 + movq 6152(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28500,13 +29014,13 @@ GL_PREFIX(VertexAttribs1svNV): popq %rdx popq %rsi popq %rdi - movq 6040(%rax), %r11 + movq 6152(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6040(%rax), %r11 + movq 6152(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28516,7 +29030,7 @@ GL_PREFIX(VertexAttribs1svNV): popq %rdx popq %rsi popq %rdi - movq 6040(%rax), %r11 + movq 6152(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs1svNV), .-GL_PREFIX(VertexAttribs1svNV) @@ -28527,7 +29041,7 @@ GL_PREFIX(VertexAttribs1svNV): GL_PREFIX(VertexAttribs2dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6048(%rax), %r11 + movq 6160(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28537,13 +29051,13 @@ GL_PREFIX(VertexAttribs2dvNV): popq %rdx popq %rsi popq %rdi - movq 6048(%rax), %r11 + movq 6160(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6048(%rax), %r11 + movq 6160(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28553,7 +29067,7 @@ GL_PREFIX(VertexAttribs2dvNV): popq %rdx popq %rsi popq %rdi - movq 6048(%rax), %r11 + movq 6160(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs2dvNV), .-GL_PREFIX(VertexAttribs2dvNV) @@ -28564,7 +29078,7 @@ GL_PREFIX(VertexAttribs2dvNV): GL_PREFIX(VertexAttribs2fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6056(%rax), %r11 + movq 6168(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28574,13 +29088,13 @@ GL_PREFIX(VertexAttribs2fvNV): popq %rdx popq %rsi popq %rdi - movq 6056(%rax), %r11 + movq 6168(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6056(%rax), %r11 + movq 6168(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28590,7 +29104,7 @@ GL_PREFIX(VertexAttribs2fvNV): popq %rdx popq %rsi popq %rdi - movq 6056(%rax), %r11 + movq 6168(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs2fvNV), .-GL_PREFIX(VertexAttribs2fvNV) @@ -28601,7 +29115,7 @@ GL_PREFIX(VertexAttribs2fvNV): GL_PREFIX(VertexAttribs2svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6064(%rax), %r11 + movq 6176(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28611,13 +29125,13 @@ GL_PREFIX(VertexAttribs2svNV): popq %rdx popq %rsi popq %rdi - movq 6064(%rax), %r11 + movq 6176(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6064(%rax), %r11 + movq 6176(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28627,7 +29141,7 @@ GL_PREFIX(VertexAttribs2svNV): popq %rdx popq %rsi popq %rdi - movq 6064(%rax), %r11 + movq 6176(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs2svNV), .-GL_PREFIX(VertexAttribs2svNV) @@ -28638,7 +29152,7 @@ GL_PREFIX(VertexAttribs2svNV): GL_PREFIX(VertexAttribs3dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6072(%rax), %r11 + movq 6184(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28648,13 +29162,13 @@ GL_PREFIX(VertexAttribs3dvNV): popq %rdx popq %rsi popq %rdi - movq 6072(%rax), %r11 + movq 6184(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6072(%rax), %r11 + movq 6184(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28664,7 +29178,7 @@ GL_PREFIX(VertexAttribs3dvNV): popq %rdx popq %rsi popq %rdi - movq 6072(%rax), %r11 + movq 6184(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs3dvNV), .-GL_PREFIX(VertexAttribs3dvNV) @@ -28675,7 +29189,7 @@ GL_PREFIX(VertexAttribs3dvNV): GL_PREFIX(VertexAttribs3fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6080(%rax), %r11 + movq 6192(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28685,13 +29199,13 @@ GL_PREFIX(VertexAttribs3fvNV): popq %rdx popq %rsi popq %rdi - movq 6080(%rax), %r11 + movq 6192(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6080(%rax), %r11 + movq 6192(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28701,7 +29215,7 @@ GL_PREFIX(VertexAttribs3fvNV): popq %rdx popq %rsi popq %rdi - movq 6080(%rax), %r11 + movq 6192(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs3fvNV), .-GL_PREFIX(VertexAttribs3fvNV) @@ -28712,7 +29226,7 @@ GL_PREFIX(VertexAttribs3fvNV): GL_PREFIX(VertexAttribs3svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6088(%rax), %r11 + movq 6200(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28722,13 +29236,13 @@ GL_PREFIX(VertexAttribs3svNV): popq %rdx popq %rsi popq %rdi - movq 6088(%rax), %r11 + movq 6200(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6088(%rax), %r11 + movq 6200(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28738,7 +29252,7 @@ GL_PREFIX(VertexAttribs3svNV): popq %rdx popq %rsi popq %rdi - movq 6088(%rax), %r11 + movq 6200(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs3svNV), .-GL_PREFIX(VertexAttribs3svNV) @@ -28749,7 +29263,7 @@ GL_PREFIX(VertexAttribs3svNV): GL_PREFIX(VertexAttribs4dvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6096(%rax), %r11 + movq 6208(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28759,13 +29273,13 @@ GL_PREFIX(VertexAttribs4dvNV): popq %rdx popq %rsi popq %rdi - movq 6096(%rax), %r11 + movq 6208(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6096(%rax), %r11 + movq 6208(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28775,7 +29289,7 @@ GL_PREFIX(VertexAttribs4dvNV): popq %rdx popq %rsi popq %rdi - movq 6096(%rax), %r11 + movq 6208(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs4dvNV), .-GL_PREFIX(VertexAttribs4dvNV) @@ -28786,7 +29300,7 @@ GL_PREFIX(VertexAttribs4dvNV): GL_PREFIX(VertexAttribs4fvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6104(%rax), %r11 + movq 6216(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28796,13 +29310,13 @@ GL_PREFIX(VertexAttribs4fvNV): popq %rdx popq %rsi popq %rdi - movq 6104(%rax), %r11 + movq 6216(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6104(%rax), %r11 + movq 6216(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28812,7 +29326,7 @@ GL_PREFIX(VertexAttribs4fvNV): popq %rdx popq %rsi popq %rdi - movq 6104(%rax), %r11 + movq 6216(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs4fvNV), .-GL_PREFIX(VertexAttribs4fvNV) @@ -28823,7 +29337,7 @@ GL_PREFIX(VertexAttribs4fvNV): GL_PREFIX(VertexAttribs4svNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6112(%rax), %r11 + movq 6224(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28833,13 +29347,13 @@ GL_PREFIX(VertexAttribs4svNV): popq %rdx popq %rsi popq %rdi - movq 6112(%rax), %r11 + movq 6224(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6112(%rax), %r11 + movq 6224(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28849,7 +29363,7 @@ GL_PREFIX(VertexAttribs4svNV): popq %rdx popq %rsi popq %rdi - movq 6112(%rax), %r11 + movq 6224(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs4svNV), .-GL_PREFIX(VertexAttribs4svNV) @@ -28860,7 +29374,7 @@ GL_PREFIX(VertexAttribs4svNV): GL_PREFIX(VertexAttribs4ubvNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6120(%rax), %r11 + movq 6232(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28870,13 +29384,13 @@ GL_PREFIX(VertexAttribs4ubvNV): popq %rdx popq %rsi popq %rdi - movq 6120(%rax), %r11 + movq 6232(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6120(%rax), %r11 + movq 6232(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28886,7 +29400,7 @@ GL_PREFIX(VertexAttribs4ubvNV): popq %rdx popq %rsi popq %rdi - movq 6120(%rax), %r11 + movq 6232(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribs4ubvNV), .-GL_PREFIX(VertexAttribs4ubvNV) @@ -28897,7 +29411,7 @@ GL_PREFIX(VertexAttribs4ubvNV): GL_PREFIX(GetTexBumpParameterfvATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6128(%rax), %r11 + movq 6240(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28907,13 +29421,13 @@ GL_PREFIX(GetTexBumpParameterfvATI): popq %rbp popq %rsi popq %rdi - movq 6128(%rax), %r11 + movq 6240(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6128(%rax), %r11 + movq 6240(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28923,7 +29437,7 @@ GL_PREFIX(GetTexBumpParameterfvATI): popq %rbp popq %rsi popq %rdi - movq 6128(%rax), %r11 + movq 6240(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetTexBumpParameterfvATI), .-GL_PREFIX(GetTexBumpParameterfvATI) @@ -28934,7 +29448,7 @@ GL_PREFIX(GetTexBumpParameterfvATI): GL_PREFIX(GetTexBumpParameterivATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6136(%rax), %r11 + movq 6248(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28944,13 +29458,13 @@ GL_PREFIX(GetTexBumpParameterivATI): popq %rbp popq %rsi popq %rdi - movq 6136(%rax), %r11 + movq 6248(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6136(%rax), %r11 + movq 6248(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28960,7 +29474,7 @@ GL_PREFIX(GetTexBumpParameterivATI): popq %rbp popq %rsi popq %rdi - movq 6136(%rax), %r11 + movq 6248(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetTexBumpParameterivATI), .-GL_PREFIX(GetTexBumpParameterivATI) @@ -28971,7 +29485,7 @@ GL_PREFIX(GetTexBumpParameterivATI): GL_PREFIX(TexBumpParameterfvATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6144(%rax), %r11 + movq 6256(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -28981,13 +29495,13 @@ GL_PREFIX(TexBumpParameterfvATI): popq %rbp popq %rsi popq %rdi - movq 6144(%rax), %r11 + movq 6256(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6144(%rax), %r11 + movq 6256(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -28997,7 +29511,7 @@ GL_PREFIX(TexBumpParameterfvATI): popq %rbp popq %rsi popq %rdi - movq 6144(%rax), %r11 + movq 6256(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TexBumpParameterfvATI), .-GL_PREFIX(TexBumpParameterfvATI) @@ -29008,7 +29522,7 @@ GL_PREFIX(TexBumpParameterfvATI): GL_PREFIX(TexBumpParameterivATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6152(%rax), %r11 + movq 6264(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29018,13 +29532,13 @@ GL_PREFIX(TexBumpParameterivATI): popq %rbp popq %rsi popq %rdi - movq 6152(%rax), %r11 + movq 6264(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6152(%rax), %r11 + movq 6264(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29034,7 +29548,7 @@ GL_PREFIX(TexBumpParameterivATI): popq %rbp popq %rsi popq %rdi - movq 6152(%rax), %r11 + movq 6264(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TexBumpParameterivATI), .-GL_PREFIX(TexBumpParameterivATI) @@ -29045,7 +29559,7 @@ GL_PREFIX(TexBumpParameterivATI): GL_PREFIX(AlphaFragmentOp1ATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6160(%rax), %r11 + movq 6272(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29063,13 +29577,13 @@ GL_PREFIX(AlphaFragmentOp1ATI): popq %rdx popq %rsi popq %rdi - movq 6160(%rax), %r11 + movq 6272(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6160(%rax), %r11 + movq 6272(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29087,7 +29601,7 @@ GL_PREFIX(AlphaFragmentOp1ATI): popq %rdx popq %rsi popq %rdi - movq 6160(%rax), %r11 + movq 6272(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(AlphaFragmentOp1ATI), .-GL_PREFIX(AlphaFragmentOp1ATI) @@ -29098,7 +29612,7 @@ GL_PREFIX(AlphaFragmentOp1ATI): GL_PREFIX(AlphaFragmentOp2ATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6168(%rax), %r11 + movq 6280(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29116,13 +29630,13 @@ GL_PREFIX(AlphaFragmentOp2ATI): popq %rdx popq %rsi popq %rdi - movq 6168(%rax), %r11 + movq 6280(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6168(%rax), %r11 + movq 6280(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29140,7 +29654,7 @@ GL_PREFIX(AlphaFragmentOp2ATI): popq %rdx popq %rsi popq %rdi - movq 6168(%rax), %r11 + movq 6280(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(AlphaFragmentOp2ATI), .-GL_PREFIX(AlphaFragmentOp2ATI) @@ -29151,7 +29665,7 @@ GL_PREFIX(AlphaFragmentOp2ATI): GL_PREFIX(AlphaFragmentOp3ATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6176(%rax), %r11 + movq 6288(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29169,13 +29683,13 @@ GL_PREFIX(AlphaFragmentOp3ATI): popq %rdx popq %rsi popq %rdi - movq 6176(%rax), %r11 + movq 6288(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6176(%rax), %r11 + movq 6288(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29193,7 +29707,7 @@ GL_PREFIX(AlphaFragmentOp3ATI): popq %rdx popq %rsi popq %rdi - movq 6176(%rax), %r11 + movq 6288(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(AlphaFragmentOp3ATI), .-GL_PREFIX(AlphaFragmentOp3ATI) @@ -29204,25 +29718,25 @@ GL_PREFIX(AlphaFragmentOp3ATI): GL_PREFIX(BeginFragmentShaderATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6184(%rax), %r11 + movq 6296(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 6184(%rax), %r11 + movq 6296(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6184(%rax), %r11 + movq 6296(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 6184(%rax), %r11 + movq 6296(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BeginFragmentShaderATI), .-GL_PREFIX(BeginFragmentShaderATI) @@ -29233,25 +29747,25 @@ GL_PREFIX(BeginFragmentShaderATI): GL_PREFIX(BindFragmentShaderATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6192(%rax), %r11 + movq 6304(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6192(%rax), %r11 + movq 6304(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6192(%rax), %r11 + movq 6304(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6192(%rax), %r11 + movq 6304(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindFragmentShaderATI), .-GL_PREFIX(BindFragmentShaderATI) @@ -29262,7 +29776,7 @@ GL_PREFIX(BindFragmentShaderATI): GL_PREFIX(ColorFragmentOp1ATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6200(%rax), %r11 + movq 6312(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29280,13 +29794,13 @@ GL_PREFIX(ColorFragmentOp1ATI): popq %rdx popq %rsi popq %rdi - movq 6200(%rax), %r11 + movq 6312(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6200(%rax), %r11 + movq 6312(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29304,7 +29818,7 @@ GL_PREFIX(ColorFragmentOp1ATI): popq %rdx popq %rsi popq %rdi - movq 6200(%rax), %r11 + movq 6312(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ColorFragmentOp1ATI), .-GL_PREFIX(ColorFragmentOp1ATI) @@ -29315,7 +29829,7 @@ GL_PREFIX(ColorFragmentOp1ATI): GL_PREFIX(ColorFragmentOp2ATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6208(%rax), %r11 + movq 6320(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29333,13 +29847,13 @@ GL_PREFIX(ColorFragmentOp2ATI): popq %rdx popq %rsi popq %rdi - movq 6208(%rax), %r11 + movq 6320(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6208(%rax), %r11 + movq 6320(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29357,7 +29871,7 @@ GL_PREFIX(ColorFragmentOp2ATI): popq %rdx popq %rsi popq %rdi - movq 6208(%rax), %r11 + movq 6320(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ColorFragmentOp2ATI), .-GL_PREFIX(ColorFragmentOp2ATI) @@ -29368,7 +29882,7 @@ GL_PREFIX(ColorFragmentOp2ATI): GL_PREFIX(ColorFragmentOp3ATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6216(%rax), %r11 + movq 6328(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29386,13 +29900,13 @@ GL_PREFIX(ColorFragmentOp3ATI): popq %rdx popq %rsi popq %rdi - movq 6216(%rax), %r11 + movq 6328(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6216(%rax), %r11 + movq 6328(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29410,7 +29924,7 @@ GL_PREFIX(ColorFragmentOp3ATI): popq %rdx popq %rsi popq %rdi - movq 6216(%rax), %r11 + movq 6328(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ColorFragmentOp3ATI), .-GL_PREFIX(ColorFragmentOp3ATI) @@ -29421,25 +29935,25 @@ GL_PREFIX(ColorFragmentOp3ATI): GL_PREFIX(DeleteFragmentShaderATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6224(%rax), %r11 + movq 6336(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6224(%rax), %r11 + movq 6336(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6224(%rax), %r11 + movq 6336(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6224(%rax), %r11 + movq 6336(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DeleteFragmentShaderATI), .-GL_PREFIX(DeleteFragmentShaderATI) @@ -29450,25 +29964,25 @@ GL_PREFIX(DeleteFragmentShaderATI): GL_PREFIX(EndFragmentShaderATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6232(%rax), %r11 + movq 6344(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 6232(%rax), %r11 + movq 6344(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6232(%rax), %r11 + movq 6344(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 6232(%rax), %r11 + movq 6344(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EndFragmentShaderATI), .-GL_PREFIX(EndFragmentShaderATI) @@ -29479,25 +29993,25 @@ GL_PREFIX(EndFragmentShaderATI): GL_PREFIX(GenFragmentShadersATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6240(%rax), %r11 + movq 6352(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6240(%rax), %r11 + movq 6352(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6240(%rax), %r11 + movq 6352(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6240(%rax), %r11 + movq 6352(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GenFragmentShadersATI), .-GL_PREFIX(GenFragmentShadersATI) @@ -29508,7 +30022,7 @@ GL_PREFIX(GenFragmentShadersATI): GL_PREFIX(PassTexCoordATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6248(%rax), %r11 + movq 6360(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29518,13 +30032,13 @@ GL_PREFIX(PassTexCoordATI): popq %rdx popq %rsi popq %rdi - movq 6248(%rax), %r11 + movq 6360(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6248(%rax), %r11 + movq 6360(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29534,7 +30048,7 @@ GL_PREFIX(PassTexCoordATI): popq %rdx popq %rsi popq %rdi - movq 6248(%rax), %r11 + movq 6360(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PassTexCoordATI), .-GL_PREFIX(PassTexCoordATI) @@ -29545,7 +30059,7 @@ GL_PREFIX(PassTexCoordATI): GL_PREFIX(SampleMapATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6256(%rax), %r11 + movq 6368(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29555,13 +30069,13 @@ GL_PREFIX(SampleMapATI): popq %rdx popq %rsi popq %rdi - movq 6256(%rax), %r11 + movq 6368(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6256(%rax), %r11 + movq 6368(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29571,7 +30085,7 @@ GL_PREFIX(SampleMapATI): popq %rdx popq %rsi popq %rdi - movq 6256(%rax), %r11 + movq 6368(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SampleMapATI), .-GL_PREFIX(SampleMapATI) @@ -29582,7 +30096,7 @@ GL_PREFIX(SampleMapATI): GL_PREFIX(SetFragmentShaderConstantATI): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6264(%rax), %r11 + movq 6376(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29592,13 +30106,13 @@ GL_PREFIX(SetFragmentShaderConstantATI): popq %rbp popq %rsi popq %rdi - movq 6264(%rax), %r11 + movq 6376(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6264(%rax), %r11 + movq 6376(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29608,7 +30122,7 @@ GL_PREFIX(SetFragmentShaderConstantATI): popq %rbp popq %rsi popq %rdi - movq 6264(%rax), %r11 + movq 6376(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(SetFragmentShaderConstantATI), .-GL_PREFIX(SetFragmentShaderConstantATI) @@ -29619,7 +30133,7 @@ GL_PREFIX(SetFragmentShaderConstantATI): GL_PREFIX(PointParameteriNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6272(%rax), %r11 + movq 6384(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29629,13 +30143,13 @@ GL_PREFIX(PointParameteriNV): popq %rbp popq %rsi popq %rdi - movq 6272(%rax), %r11 + movq 6384(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6272(%rax), %r11 + movq 6384(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29645,7 +30159,7 @@ GL_PREFIX(PointParameteriNV): popq %rbp popq %rsi popq %rdi - movq 6272(%rax), %r11 + movq 6384(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PointParameteriNV), .-GL_PREFIX(PointParameteriNV) @@ -29656,7 +30170,7 @@ GL_PREFIX(PointParameteriNV): GL_PREFIX(PointParameterivNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6280(%rax), %r11 + movq 6392(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -29666,13 +30180,13 @@ GL_PREFIX(PointParameterivNV): popq %rbp popq %rsi popq %rdi - movq 6280(%rax), %r11 + movq 6392(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6280(%rax), %r11 + movq 6392(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -29682,567 +30196,11 @@ GL_PREFIX(PointParameterivNV): popq %rbp popq %rsi popq %rdi - movq 6280(%rax), %r11 + movq 6392(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(PointParameterivNV), .-GL_PREFIX(PointParameterivNV) - .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_786) - .type GL_PREFIX(_dispatch_stub_786), @function - HIDDEN(GL_PREFIX(_dispatch_stub_786)) -GL_PREFIX(_dispatch_stub_786): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 6288(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rdi - call _x86_64_get_dispatch@PLT - popq %rdi - movq 6288(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 6288(%rax), %r11 - jmp *%r11 -1: - pushq %rdi - call _glapi_get_dispatch - popq %rdi - movq 6288(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_786), .-GL_PREFIX(_dispatch_stub_786) - - .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_787) - .type GL_PREFIX(_dispatch_stub_787), @function - HIDDEN(GL_PREFIX(_dispatch_stub_787)) -GL_PREFIX(_dispatch_stub_787): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 6296(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rdi - call _x86_64_get_dispatch@PLT - popq %rdi - movq 6296(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 6296(%rax), %r11 - jmp *%r11 -1: - pushq %rdi - call _glapi_get_dispatch - popq %rdi - movq 6296(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_787), .-GL_PREFIX(_dispatch_stub_787) - - .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_788) - .type GL_PREFIX(_dispatch_stub_788), @function - HIDDEN(GL_PREFIX(_dispatch_stub_788)) -GL_PREFIX(_dispatch_stub_788): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 6304(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rdi - pushq %rsi - pushq %rbp - call _x86_64_get_dispatch@PLT - popq %rbp - popq %rsi - popq %rdi - movq 6304(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 6304(%rax), %r11 - jmp *%r11 -1: - pushq %rdi - pushq %rsi - pushq %rbp - call _glapi_get_dispatch - popq %rbp - popq %rsi - popq %rdi - movq 6304(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_788), .-GL_PREFIX(_dispatch_stub_788) - - .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_789) - .type GL_PREFIX(_dispatch_stub_789), @function - HIDDEN(GL_PREFIX(_dispatch_stub_789)) -GL_PREFIX(_dispatch_stub_789): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 6312(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rdi - pushq %rsi - pushq %rbp - call _x86_64_get_dispatch@PLT - popq %rbp - popq %rsi - popq %rdi - movq 6312(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 6312(%rax), %r11 - jmp *%r11 -1: - pushq %rdi - pushq %rsi - pushq %rbp - call _glapi_get_dispatch - popq %rbp - popq %rsi - popq %rdi - movq 6312(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_789), .-GL_PREFIX(_dispatch_stub_789) - - .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_790) - .type GL_PREFIX(_dispatch_stub_790), @function - HIDDEN(GL_PREFIX(_dispatch_stub_790)) -GL_PREFIX(_dispatch_stub_790): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 6320(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rdi - call _x86_64_get_dispatch@PLT - popq %rdi - movq 6320(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 6320(%rax), %r11 - jmp *%r11 -1: - pushq %rdi - call _glapi_get_dispatch - popq %rdi - movq 6320(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_790), .-GL_PREFIX(_dispatch_stub_790) - - .p2align 4,,15 - .globl GL_PREFIX(GetProgramNamedParameterdvNV) - .type GL_PREFIX(GetProgramNamedParameterdvNV), @function -GL_PREFIX(GetProgramNamedParameterdvNV): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 6328(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rdi - pushq %rsi - pushq %rdx - pushq %rcx - pushq %rbp - call _x86_64_get_dispatch@PLT - popq %rbp - popq %rcx - popq %rdx - popq %rsi - popq %rdi - movq 6328(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 6328(%rax), %r11 - jmp *%r11 -1: - pushq %rdi - pushq %rsi - pushq %rdx - pushq %rcx - pushq %rbp - call _glapi_get_dispatch - popq %rbp - popq %rcx - popq %rdx - popq %rsi - popq %rdi - movq 6328(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(GetProgramNamedParameterdvNV), .-GL_PREFIX(GetProgramNamedParameterdvNV) - - .p2align 4,,15 - .globl GL_PREFIX(GetProgramNamedParameterfvNV) - .type GL_PREFIX(GetProgramNamedParameterfvNV), @function -GL_PREFIX(GetProgramNamedParameterfvNV): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 6336(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rdi - pushq %rsi - pushq %rdx - pushq %rcx - pushq %rbp - call _x86_64_get_dispatch@PLT - popq %rbp - popq %rcx - popq %rdx - popq %rsi - popq %rdi - movq 6336(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 6336(%rax), %r11 - jmp *%r11 -1: - pushq %rdi - pushq %rsi - pushq %rdx - pushq %rcx - pushq %rbp - call _glapi_get_dispatch - popq %rbp - popq %rcx - popq %rdx - popq %rsi - popq %rdi - movq 6336(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(GetProgramNamedParameterfvNV), .-GL_PREFIX(GetProgramNamedParameterfvNV) - - .p2align 4,,15 - .globl GL_PREFIX(ProgramNamedParameter4dNV) - .type GL_PREFIX(ProgramNamedParameter4dNV), @function -GL_PREFIX(ProgramNamedParameter4dNV): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 6344(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - subq $56, %rsp - movq %rdi, (%rsp) - movq %rsi, 8(%rsp) - movq %rdx, 16(%rsp) - movq %xmm0, 24(%rsp) - movq %xmm1, 32(%rsp) - movq %xmm2, 40(%rsp) - movq %xmm3, 48(%rsp) - call _x86_64_get_dispatch@PLT - movq 48(%rsp), %xmm3 - movq 40(%rsp), %xmm2 - movq 32(%rsp), %xmm1 - movq 24(%rsp), %xmm0 - movq 16(%rsp), %rdx - movq 8(%rsp), %rsi - movq (%rsp), %rdi - addq $56, %rsp - movq 6344(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 6344(%rax), %r11 - jmp *%r11 -1: - subq $56, %rsp - movq %rdi, (%rsp) - movq %rsi, 8(%rsp) - movq %rdx, 16(%rsp) - movq %xmm0, 24(%rsp) - movq %xmm1, 32(%rsp) - movq %xmm2, 40(%rsp) - movq %xmm3, 48(%rsp) - call _glapi_get_dispatch - movq 48(%rsp), %xmm3 - movq 40(%rsp), %xmm2 - movq 32(%rsp), %xmm1 - movq 24(%rsp), %xmm0 - movq 16(%rsp), %rdx - movq 8(%rsp), %rsi - movq (%rsp), %rdi - addq $56, %rsp - movq 6344(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(ProgramNamedParameter4dNV), .-GL_PREFIX(ProgramNamedParameter4dNV) - - .p2align 4,,15 - .globl GL_PREFIX(ProgramNamedParameter4dvNV) - .type GL_PREFIX(ProgramNamedParameter4dvNV), @function -GL_PREFIX(ProgramNamedParameter4dvNV): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 6352(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rdi - pushq %rsi - pushq %rdx - pushq %rcx - pushq %rbp - call _x86_64_get_dispatch@PLT - popq %rbp - popq %rcx - popq %rdx - popq %rsi - popq %rdi - movq 6352(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 6352(%rax), %r11 - jmp *%r11 -1: - pushq %rdi - pushq %rsi - pushq %rdx - pushq %rcx - pushq %rbp - call _glapi_get_dispatch - popq %rbp - popq %rcx - popq %rdx - popq %rsi - popq %rdi - movq 6352(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(ProgramNamedParameter4dvNV), .-GL_PREFIX(ProgramNamedParameter4dvNV) - - .p2align 4,,15 - .globl GL_PREFIX(ProgramNamedParameter4fNV) - .type GL_PREFIX(ProgramNamedParameter4fNV), @function -GL_PREFIX(ProgramNamedParameter4fNV): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 6360(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - subq $56, %rsp - movq %rdi, (%rsp) - movq %rsi, 8(%rsp) - movq %rdx, 16(%rsp) - movq %xmm0, 24(%rsp) - movq %xmm1, 32(%rsp) - movq %xmm2, 40(%rsp) - movq %xmm3, 48(%rsp) - call _x86_64_get_dispatch@PLT - movq 48(%rsp), %xmm3 - movq 40(%rsp), %xmm2 - movq 32(%rsp), %xmm1 - movq 24(%rsp), %xmm0 - movq 16(%rsp), %rdx - movq 8(%rsp), %rsi - movq (%rsp), %rdi - addq $56, %rsp - movq 6360(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 6360(%rax), %r11 - jmp *%r11 -1: - subq $56, %rsp - movq %rdi, (%rsp) - movq %rsi, 8(%rsp) - movq %rdx, 16(%rsp) - movq %xmm0, 24(%rsp) - movq %xmm1, 32(%rsp) - movq %xmm2, 40(%rsp) - movq %xmm3, 48(%rsp) - call _glapi_get_dispatch - movq 48(%rsp), %xmm3 - movq 40(%rsp), %xmm2 - movq 32(%rsp), %xmm1 - movq 24(%rsp), %xmm0 - movq 16(%rsp), %rdx - movq 8(%rsp), %rsi - movq (%rsp), %rdi - addq $56, %rsp - movq 6360(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(ProgramNamedParameter4fNV), .-GL_PREFIX(ProgramNamedParameter4fNV) - - .p2align 4,,15 - .globl GL_PREFIX(ProgramNamedParameter4fvNV) - .type GL_PREFIX(ProgramNamedParameter4fvNV), @function -GL_PREFIX(ProgramNamedParameter4fvNV): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 6368(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rdi - pushq %rsi - pushq %rdx - pushq %rcx - pushq %rbp - call _x86_64_get_dispatch@PLT - popq %rbp - popq %rcx - popq %rdx - popq %rsi - popq %rdi - movq 6368(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 6368(%rax), %r11 - jmp *%r11 -1: - pushq %rdi - pushq %rsi - pushq %rdx - pushq %rcx - pushq %rbp - call _glapi_get_dispatch - popq %rbp - popq %rcx - popq %rdx - popq %rsi - popq %rdi - movq 6368(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(ProgramNamedParameter4fvNV), .-GL_PREFIX(ProgramNamedParameter4fvNV) - - .p2align 4,,15 - .globl GL_PREFIX(PrimitiveRestartIndexNV) - .type GL_PREFIX(PrimitiveRestartIndexNV), @function -GL_PREFIX(PrimitiveRestartIndexNV): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 6376(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rdi - call _x86_64_get_dispatch@PLT - popq %rdi - movq 6376(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 6376(%rax), %r11 - jmp *%r11 -1: - pushq %rdi - call _glapi_get_dispatch - popq %rdi - movq 6376(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(PrimitiveRestartIndexNV), .-GL_PREFIX(PrimitiveRestartIndexNV) - - .p2align 4,,15 - .globl GL_PREFIX(PrimitiveRestartNV) - .type GL_PREFIX(PrimitiveRestartNV), @function -GL_PREFIX(PrimitiveRestartNV): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 6384(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rbp - call _x86_64_get_dispatch@PLT - popq %rbp - movq 6384(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 6384(%rax), %r11 - jmp *%r11 -1: - pushq %rbp - call _glapi_get_dispatch - popq %rbp - movq 6384(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(PrimitiveRestartNV), .-GL_PREFIX(PrimitiveRestartNV) - - .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_799) - .type GL_PREFIX(_dispatch_stub_799), @function - HIDDEN(GL_PREFIX(_dispatch_stub_799)) -GL_PREFIX(_dispatch_stub_799): -#if defined(GLX_USE_TLS) - call _x86_64_get_dispatch@PLT - movq 6392(%rax), %r11 - jmp *%r11 -#elif defined(PTHREADS) - pushq %rdi - pushq %rsi - pushq %rbp - call _x86_64_get_dispatch@PLT - popq %rbp - popq %rsi - popq %rdi - movq 6392(%rax), %r11 - jmp *%r11 -#else - movq _glapi_Dispatch(%rip), %rax - testq %rax, %rax - je 1f - movq 6392(%rax), %r11 - jmp *%r11 -1: - pushq %rdi - pushq %rsi - pushq %rbp - call _glapi_get_dispatch - popq %rbp - popq %rsi - popq %rdi - movq 6392(%rax), %r11 - jmp *%r11 -#endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_799), .-GL_PREFIX(_dispatch_stub_799) - .p2align 4,,15 .globl GL_PREFIX(_dispatch_stub_800) .type GL_PREFIX(_dispatch_stub_800), @function @@ -30254,11 +30212,7 @@ GL_PREFIX(_dispatch_stub_800): jmp *%r11 #elif defined(PTHREADS) pushq %rdi - pushq %rsi - pushq %rbp call _x86_64_get_dispatch@PLT - popq %rbp - popq %rsi popq %rdi movq 6400(%rax), %r11 jmp *%r11 @@ -30270,11 +30224,7 @@ GL_PREFIX(_dispatch_stub_800): jmp *%r11 1: pushq %rdi - pushq %rsi - pushq %rbp call _glapi_get_dispatch - popq %rbp - popq %rsi popq %rdi movq 6400(%rax), %r11 jmp *%r11 @@ -30282,13 +30232,44 @@ GL_PREFIX(_dispatch_stub_800): .size GL_PREFIX(_dispatch_stub_800), .-GL_PREFIX(_dispatch_stub_800) .p2align 4,,15 - .globl GL_PREFIX(BindFramebufferEXT) - .type GL_PREFIX(BindFramebufferEXT), @function -GL_PREFIX(BindFramebufferEXT): + .globl GL_PREFIX(_dispatch_stub_801) + .type GL_PREFIX(_dispatch_stub_801), @function + HIDDEN(GL_PREFIX(_dispatch_stub_801)) +GL_PREFIX(_dispatch_stub_801): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT movq 6408(%rax), %r11 jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + call _x86_64_get_dispatch@PLT + popq %rdi + movq 6408(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 6408(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + call _glapi_get_dispatch + popq %rdi + movq 6408(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_801), .-GL_PREFIX(_dispatch_stub_801) + + .p2align 4,,15 + .globl GL_PREFIX(_dispatch_stub_802) + .type GL_PREFIX(_dispatch_stub_802), @function + HIDDEN(GL_PREFIX(_dispatch_stub_802)) +GL_PREFIX(_dispatch_stub_802): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 6416(%rax), %r11 + jmp *%r11 #elif defined(PTHREADS) pushq %rdi pushq %rsi @@ -30297,13 +30278,13 @@ GL_PREFIX(BindFramebufferEXT): popq %rbp popq %rsi popq %rdi - movq 6408(%rax), %r11 + movq 6416(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6408(%rax), %r11 + movq 6416(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30313,7 +30294,540 @@ GL_PREFIX(BindFramebufferEXT): popq %rbp popq %rsi popq %rdi - movq 6408(%rax), %r11 + movq 6416(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_802), .-GL_PREFIX(_dispatch_stub_802) + + .p2align 4,,15 + .globl GL_PREFIX(_dispatch_stub_803) + .type GL_PREFIX(_dispatch_stub_803), @function + HIDDEN(GL_PREFIX(_dispatch_stub_803)) +GL_PREFIX(_dispatch_stub_803): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 6424(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi + popq %rdi + movq 6424(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 6424(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %rsi + popq %rdi + movq 6424(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_803), .-GL_PREFIX(_dispatch_stub_803) + + .p2align 4,,15 + .globl GL_PREFIX(_dispatch_stub_804) + .type GL_PREFIX(_dispatch_stub_804), @function + HIDDEN(GL_PREFIX(_dispatch_stub_804)) +GL_PREFIX(_dispatch_stub_804): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 6432(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + call _x86_64_get_dispatch@PLT + popq %rdi + movq 6432(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 6432(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + call _glapi_get_dispatch + popq %rdi + movq 6432(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_804), .-GL_PREFIX(_dispatch_stub_804) + + .p2align 4,,15 + .globl GL_PREFIX(GetProgramNamedParameterdvNV) + .type GL_PREFIX(GetProgramNamedParameterdvNV), @function +GL_PREFIX(GetProgramNamedParameterdvNV): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 6440(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rcx + popq %rdx + popq %rsi + popq %rdi + movq 6440(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 6440(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %rcx + popq %rdx + popq %rsi + popq %rdi + movq 6440(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(GetProgramNamedParameterdvNV), .-GL_PREFIX(GetProgramNamedParameterdvNV) + + .p2align 4,,15 + .globl GL_PREFIX(GetProgramNamedParameterfvNV) + .type GL_PREFIX(GetProgramNamedParameterfvNV), @function +GL_PREFIX(GetProgramNamedParameterfvNV): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 6448(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rcx + popq %rdx + popq %rsi + popq %rdi + movq 6448(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 6448(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %rcx + popq %rdx + popq %rsi + popq %rdi + movq 6448(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(GetProgramNamedParameterfvNV), .-GL_PREFIX(GetProgramNamedParameterfvNV) + + .p2align 4,,15 + .globl GL_PREFIX(ProgramNamedParameter4dNV) + .type GL_PREFIX(ProgramNamedParameter4dNV), @function +GL_PREFIX(ProgramNamedParameter4dNV): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 6456(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + subq $56, %rsp + movq %rdi, (%rsp) + movq %rsi, 8(%rsp) + movq %rdx, 16(%rsp) + movq %xmm0, 24(%rsp) + movq %xmm1, 32(%rsp) + movq %xmm2, 40(%rsp) + movq %xmm3, 48(%rsp) + call _x86_64_get_dispatch@PLT + movq 48(%rsp), %xmm3 + movq 40(%rsp), %xmm2 + movq 32(%rsp), %xmm1 + movq 24(%rsp), %xmm0 + movq 16(%rsp), %rdx + movq 8(%rsp), %rsi + movq (%rsp), %rdi + addq $56, %rsp + movq 6456(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 6456(%rax), %r11 + jmp *%r11 +1: + subq $56, %rsp + movq %rdi, (%rsp) + movq %rsi, 8(%rsp) + movq %rdx, 16(%rsp) + movq %xmm0, 24(%rsp) + movq %xmm1, 32(%rsp) + movq %xmm2, 40(%rsp) + movq %xmm3, 48(%rsp) + call _glapi_get_dispatch + movq 48(%rsp), %xmm3 + movq 40(%rsp), %xmm2 + movq 32(%rsp), %xmm1 + movq 24(%rsp), %xmm0 + movq 16(%rsp), %rdx + movq 8(%rsp), %rsi + movq (%rsp), %rdi + addq $56, %rsp + movq 6456(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(ProgramNamedParameter4dNV), .-GL_PREFIX(ProgramNamedParameter4dNV) + + .p2align 4,,15 + .globl GL_PREFIX(ProgramNamedParameter4dvNV) + .type GL_PREFIX(ProgramNamedParameter4dvNV), @function +GL_PREFIX(ProgramNamedParameter4dvNV): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 6464(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rcx + popq %rdx + popq %rsi + popq %rdi + movq 6464(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 6464(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %rcx + popq %rdx + popq %rsi + popq %rdi + movq 6464(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(ProgramNamedParameter4dvNV), .-GL_PREFIX(ProgramNamedParameter4dvNV) + + .p2align 4,,15 + .globl GL_PREFIX(ProgramNamedParameter4fNV) + .type GL_PREFIX(ProgramNamedParameter4fNV), @function +GL_PREFIX(ProgramNamedParameter4fNV): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 6472(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + subq $56, %rsp + movq %rdi, (%rsp) + movq %rsi, 8(%rsp) + movq %rdx, 16(%rsp) + movq %xmm0, 24(%rsp) + movq %xmm1, 32(%rsp) + movq %xmm2, 40(%rsp) + movq %xmm3, 48(%rsp) + call _x86_64_get_dispatch@PLT + movq 48(%rsp), %xmm3 + movq 40(%rsp), %xmm2 + movq 32(%rsp), %xmm1 + movq 24(%rsp), %xmm0 + movq 16(%rsp), %rdx + movq 8(%rsp), %rsi + movq (%rsp), %rdi + addq $56, %rsp + movq 6472(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 6472(%rax), %r11 + jmp *%r11 +1: + subq $56, %rsp + movq %rdi, (%rsp) + movq %rsi, 8(%rsp) + movq %rdx, 16(%rsp) + movq %xmm0, 24(%rsp) + movq %xmm1, 32(%rsp) + movq %xmm2, 40(%rsp) + movq %xmm3, 48(%rsp) + call _glapi_get_dispatch + movq 48(%rsp), %xmm3 + movq 40(%rsp), %xmm2 + movq 32(%rsp), %xmm1 + movq 24(%rsp), %xmm0 + movq 16(%rsp), %rdx + movq 8(%rsp), %rsi + movq (%rsp), %rdi + addq $56, %rsp + movq 6472(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(ProgramNamedParameter4fNV), .-GL_PREFIX(ProgramNamedParameter4fNV) + + .p2align 4,,15 + .globl GL_PREFIX(ProgramNamedParameter4fvNV) + .type GL_PREFIX(ProgramNamedParameter4fvNV), @function +GL_PREFIX(ProgramNamedParameter4fvNV): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 6480(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rcx + popq %rdx + popq %rsi + popq %rdi + movq 6480(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 6480(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rdx + pushq %rcx + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %rcx + popq %rdx + popq %rsi + popq %rdi + movq 6480(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(ProgramNamedParameter4fvNV), .-GL_PREFIX(ProgramNamedParameter4fvNV) + + .p2align 4,,15 + .globl GL_PREFIX(PrimitiveRestartIndexNV) + .type GL_PREFIX(PrimitiveRestartIndexNV), @function +GL_PREFIX(PrimitiveRestartIndexNV): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 6488(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + call _x86_64_get_dispatch@PLT + popq %rdi + movq 6488(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 6488(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + call _glapi_get_dispatch + popq %rdi + movq 6488(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(PrimitiveRestartIndexNV), .-GL_PREFIX(PrimitiveRestartIndexNV) + + .p2align 4,,15 + .globl GL_PREFIX(PrimitiveRestartNV) + .type GL_PREFIX(PrimitiveRestartNV), @function +GL_PREFIX(PrimitiveRestartNV): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 6496(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + movq 6496(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 6496(%rax), %r11 + jmp *%r11 +1: + pushq %rbp + call _glapi_get_dispatch + popq %rbp + movq 6496(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(PrimitiveRestartNV), .-GL_PREFIX(PrimitiveRestartNV) + + .p2align 4,,15 + .globl GL_PREFIX(_dispatch_stub_813) + .type GL_PREFIX(_dispatch_stub_813), @function + HIDDEN(GL_PREFIX(_dispatch_stub_813)) +GL_PREFIX(_dispatch_stub_813): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 6504(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi + popq %rdi + movq 6504(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 6504(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %rsi + popq %rdi + movq 6504(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_813), .-GL_PREFIX(_dispatch_stub_813) + + .p2align 4,,15 + .globl GL_PREFIX(_dispatch_stub_814) + .type GL_PREFIX(_dispatch_stub_814), @function + HIDDEN(GL_PREFIX(_dispatch_stub_814)) +GL_PREFIX(_dispatch_stub_814): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 6512(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi + popq %rdi + movq 6512(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 6512(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %rsi + popq %rdi + movq 6512(%rax), %r11 + jmp *%r11 +#endif /* defined(GLX_USE_TLS) */ + .size GL_PREFIX(_dispatch_stub_814), .-GL_PREFIX(_dispatch_stub_814) + + .p2align 4,,15 + .globl GL_PREFIX(BindFramebufferEXT) + .type GL_PREFIX(BindFramebufferEXT), @function +GL_PREFIX(BindFramebufferEXT): +#if defined(GLX_USE_TLS) + call _x86_64_get_dispatch@PLT + movq 6520(%rax), %r11 + jmp *%r11 +#elif defined(PTHREADS) + pushq %rdi + pushq %rsi + pushq %rbp + call _x86_64_get_dispatch@PLT + popq %rbp + popq %rsi + popq %rdi + movq 6520(%rax), %r11 + jmp *%r11 +#else + movq _glapi_Dispatch(%rip), %rax + testq %rax, %rax + je 1f + movq 6520(%rax), %r11 + jmp *%r11 +1: + pushq %rdi + pushq %rsi + pushq %rbp + call _glapi_get_dispatch + popq %rbp + popq %rsi + popq %rdi + movq 6520(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindFramebufferEXT), .-GL_PREFIX(BindFramebufferEXT) @@ -30324,7 +30838,7 @@ GL_PREFIX(BindFramebufferEXT): GL_PREFIX(BindRenderbufferEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6416(%rax), %r11 + movq 6528(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30334,13 +30848,13 @@ GL_PREFIX(BindRenderbufferEXT): popq %rbp popq %rsi popq %rdi - movq 6416(%rax), %r11 + movq 6528(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6416(%rax), %r11 + movq 6528(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30350,7 +30864,7 @@ GL_PREFIX(BindRenderbufferEXT): popq %rbp popq %rsi popq %rdi - movq 6416(%rax), %r11 + movq 6528(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindRenderbufferEXT), .-GL_PREFIX(BindRenderbufferEXT) @@ -30361,25 +30875,25 @@ GL_PREFIX(BindRenderbufferEXT): GL_PREFIX(CheckFramebufferStatusEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6424(%rax), %r11 + movq 6536(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6424(%rax), %r11 + movq 6536(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6424(%rax), %r11 + movq 6536(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6424(%rax), %r11 + movq 6536(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CheckFramebufferStatusEXT), .-GL_PREFIX(CheckFramebufferStatusEXT) @@ -30390,7 +30904,7 @@ GL_PREFIX(CheckFramebufferStatusEXT): GL_PREFIX(DeleteFramebuffersEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6432(%rax), %r11 + movq 6544(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30400,13 +30914,13 @@ GL_PREFIX(DeleteFramebuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6432(%rax), %r11 + movq 6544(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6432(%rax), %r11 + movq 6544(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30416,7 +30930,7 @@ GL_PREFIX(DeleteFramebuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6432(%rax), %r11 + movq 6544(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DeleteFramebuffersEXT), .-GL_PREFIX(DeleteFramebuffersEXT) @@ -30427,7 +30941,7 @@ GL_PREFIX(DeleteFramebuffersEXT): GL_PREFIX(DeleteRenderbuffersEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6440(%rax), %r11 + movq 6552(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30437,13 +30951,13 @@ GL_PREFIX(DeleteRenderbuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6440(%rax), %r11 + movq 6552(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6440(%rax), %r11 + movq 6552(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30453,7 +30967,7 @@ GL_PREFIX(DeleteRenderbuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6440(%rax), %r11 + movq 6552(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DeleteRenderbuffersEXT), .-GL_PREFIX(DeleteRenderbuffersEXT) @@ -30464,7 +30978,7 @@ GL_PREFIX(DeleteRenderbuffersEXT): GL_PREFIX(FramebufferRenderbufferEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6448(%rax), %r11 + movq 6560(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30478,13 +30992,13 @@ GL_PREFIX(FramebufferRenderbufferEXT): popq %rdx popq %rsi popq %rdi - movq 6448(%rax), %r11 + movq 6560(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6448(%rax), %r11 + movq 6560(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30498,7 +31012,7 @@ GL_PREFIX(FramebufferRenderbufferEXT): popq %rdx popq %rsi popq %rdi - movq 6448(%rax), %r11 + movq 6560(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FramebufferRenderbufferEXT), .-GL_PREFIX(FramebufferRenderbufferEXT) @@ -30509,7 +31023,7 @@ GL_PREFIX(FramebufferRenderbufferEXT): GL_PREFIX(FramebufferTexture1DEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6456(%rax), %r11 + movq 6568(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30523,13 +31037,13 @@ GL_PREFIX(FramebufferTexture1DEXT): popq %rdx popq %rsi popq %rdi - movq 6456(%rax), %r11 + movq 6568(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6456(%rax), %r11 + movq 6568(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30543,7 +31057,7 @@ GL_PREFIX(FramebufferTexture1DEXT): popq %rdx popq %rsi popq %rdi - movq 6456(%rax), %r11 + movq 6568(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FramebufferTexture1DEXT), .-GL_PREFIX(FramebufferTexture1DEXT) @@ -30554,7 +31068,7 @@ GL_PREFIX(FramebufferTexture1DEXT): GL_PREFIX(FramebufferTexture2DEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6464(%rax), %r11 + movq 6576(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30568,13 +31082,13 @@ GL_PREFIX(FramebufferTexture2DEXT): popq %rdx popq %rsi popq %rdi - movq 6464(%rax), %r11 + movq 6576(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6464(%rax), %r11 + movq 6576(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30588,7 +31102,7 @@ GL_PREFIX(FramebufferTexture2DEXT): popq %rdx popq %rsi popq %rdi - movq 6464(%rax), %r11 + movq 6576(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FramebufferTexture2DEXT), .-GL_PREFIX(FramebufferTexture2DEXT) @@ -30599,7 +31113,7 @@ GL_PREFIX(FramebufferTexture2DEXT): GL_PREFIX(FramebufferTexture3DEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6472(%rax), %r11 + movq 6584(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30617,13 +31131,13 @@ GL_PREFIX(FramebufferTexture3DEXT): popq %rdx popq %rsi popq %rdi - movq 6472(%rax), %r11 + movq 6584(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6472(%rax), %r11 + movq 6584(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30641,7 +31155,7 @@ GL_PREFIX(FramebufferTexture3DEXT): popq %rdx popq %rsi popq %rdi - movq 6472(%rax), %r11 + movq 6584(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FramebufferTexture3DEXT), .-GL_PREFIX(FramebufferTexture3DEXT) @@ -30652,7 +31166,7 @@ GL_PREFIX(FramebufferTexture3DEXT): GL_PREFIX(GenFramebuffersEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6480(%rax), %r11 + movq 6592(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30662,13 +31176,13 @@ GL_PREFIX(GenFramebuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6480(%rax), %r11 + movq 6592(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6480(%rax), %r11 + movq 6592(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30678,7 +31192,7 @@ GL_PREFIX(GenFramebuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6480(%rax), %r11 + movq 6592(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GenFramebuffersEXT), .-GL_PREFIX(GenFramebuffersEXT) @@ -30689,7 +31203,7 @@ GL_PREFIX(GenFramebuffersEXT): GL_PREFIX(GenRenderbuffersEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6488(%rax), %r11 + movq 6600(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30699,13 +31213,13 @@ GL_PREFIX(GenRenderbuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6488(%rax), %r11 + movq 6600(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6488(%rax), %r11 + movq 6600(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30715,7 +31229,7 @@ GL_PREFIX(GenRenderbuffersEXT): popq %rbp popq %rsi popq %rdi - movq 6488(%rax), %r11 + movq 6600(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GenRenderbuffersEXT), .-GL_PREFIX(GenRenderbuffersEXT) @@ -30726,25 +31240,25 @@ GL_PREFIX(GenRenderbuffersEXT): GL_PREFIX(GenerateMipmapEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6496(%rax), %r11 + movq 6608(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6496(%rax), %r11 + movq 6608(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6496(%rax), %r11 + movq 6608(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6496(%rax), %r11 + movq 6608(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GenerateMipmapEXT), .-GL_PREFIX(GenerateMipmapEXT) @@ -30755,7 +31269,7 @@ GL_PREFIX(GenerateMipmapEXT): GL_PREFIX(GetFramebufferAttachmentParameterivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6504(%rax), %r11 + movq 6616(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30769,13 +31283,13 @@ GL_PREFIX(GetFramebufferAttachmentParameterivEXT): popq %rdx popq %rsi popq %rdi - movq 6504(%rax), %r11 + movq 6616(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6504(%rax), %r11 + movq 6616(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30789,7 +31303,7 @@ GL_PREFIX(GetFramebufferAttachmentParameterivEXT): popq %rdx popq %rsi popq %rdi - movq 6504(%rax), %r11 + movq 6616(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetFramebufferAttachmentParameterivEXT), .-GL_PREFIX(GetFramebufferAttachmentParameterivEXT) @@ -30800,7 +31314,7 @@ GL_PREFIX(GetFramebufferAttachmentParameterivEXT): GL_PREFIX(GetRenderbufferParameterivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6512(%rax), %r11 + movq 6624(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30810,13 +31324,13 @@ GL_PREFIX(GetRenderbufferParameterivEXT): popq %rdx popq %rsi popq %rdi - movq 6512(%rax), %r11 + movq 6624(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6512(%rax), %r11 + movq 6624(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30826,7 +31340,7 @@ GL_PREFIX(GetRenderbufferParameterivEXT): popq %rdx popq %rsi popq %rdi - movq 6512(%rax), %r11 + movq 6624(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetRenderbufferParameterivEXT), .-GL_PREFIX(GetRenderbufferParameterivEXT) @@ -30837,25 +31351,25 @@ GL_PREFIX(GetRenderbufferParameterivEXT): GL_PREFIX(IsFramebufferEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6520(%rax), %r11 + movq 6632(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6520(%rax), %r11 + movq 6632(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6520(%rax), %r11 + movq 6632(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6520(%rax), %r11 + movq 6632(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(IsFramebufferEXT), .-GL_PREFIX(IsFramebufferEXT) @@ -30866,25 +31380,25 @@ GL_PREFIX(IsFramebufferEXT): GL_PREFIX(IsRenderbufferEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6528(%rax), %r11 + movq 6640(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6528(%rax), %r11 + movq 6640(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6528(%rax), %r11 + movq 6640(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6528(%rax), %r11 + movq 6640(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(IsRenderbufferEXT), .-GL_PREFIX(IsRenderbufferEXT) @@ -30895,7 +31409,7 @@ GL_PREFIX(IsRenderbufferEXT): GL_PREFIX(RenderbufferStorageEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6536(%rax), %r11 + movq 6648(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30909,13 +31423,13 @@ GL_PREFIX(RenderbufferStorageEXT): popq %rdx popq %rsi popq %rdi - movq 6536(%rax), %r11 + movq 6648(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6536(%rax), %r11 + movq 6648(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30929,19 +31443,19 @@ GL_PREFIX(RenderbufferStorageEXT): popq %rdx popq %rsi popq %rdi - movq 6536(%rax), %r11 + movq 6648(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(RenderbufferStorageEXT), .-GL_PREFIX(RenderbufferStorageEXT) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_818) - .type GL_PREFIX(_dispatch_stub_818), @function - HIDDEN(GL_PREFIX(_dispatch_stub_818)) -GL_PREFIX(_dispatch_stub_818): + .globl GL_PREFIX(_dispatch_stub_832) + .type GL_PREFIX(_dispatch_stub_832), @function + HIDDEN(GL_PREFIX(_dispatch_stub_832)) +GL_PREFIX(_dispatch_stub_832): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6544(%rax), %r11 + movq 6656(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -30959,13 +31473,13 @@ GL_PREFIX(_dispatch_stub_818): popq %rdx popq %rsi popq %rdi - movq 6544(%rax), %r11 + movq 6656(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6544(%rax), %r11 + movq 6656(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -30983,19 +31497,19 @@ GL_PREFIX(_dispatch_stub_818): popq %rdx popq %rsi popq %rdi - movq 6544(%rax), %r11 + movq 6656(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_818), .-GL_PREFIX(_dispatch_stub_818) + .size GL_PREFIX(_dispatch_stub_832), .-GL_PREFIX(_dispatch_stub_832) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_819) - .type GL_PREFIX(_dispatch_stub_819), @function - HIDDEN(GL_PREFIX(_dispatch_stub_819)) -GL_PREFIX(_dispatch_stub_819): + .globl GL_PREFIX(_dispatch_stub_833) + .type GL_PREFIX(_dispatch_stub_833), @function + HIDDEN(GL_PREFIX(_dispatch_stub_833)) +GL_PREFIX(_dispatch_stub_833): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6552(%rax), %r11 + movq 6664(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31005,13 +31519,13 @@ GL_PREFIX(_dispatch_stub_819): popq %rdx popq %rsi popq %rdi - movq 6552(%rax), %r11 + movq 6664(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6552(%rax), %r11 + movq 6664(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31021,19 +31535,19 @@ GL_PREFIX(_dispatch_stub_819): popq %rdx popq %rsi popq %rdi - movq 6552(%rax), %r11 + movq 6664(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_819), .-GL_PREFIX(_dispatch_stub_819) + .size GL_PREFIX(_dispatch_stub_833), .-GL_PREFIX(_dispatch_stub_833) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_820) - .type GL_PREFIX(_dispatch_stub_820), @function - HIDDEN(GL_PREFIX(_dispatch_stub_820)) -GL_PREFIX(_dispatch_stub_820): + .globl GL_PREFIX(_dispatch_stub_834) + .type GL_PREFIX(_dispatch_stub_834), @function + HIDDEN(GL_PREFIX(_dispatch_stub_834)) +GL_PREFIX(_dispatch_stub_834): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6560(%rax), %r11 + movq 6672(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31043,13 +31557,13 @@ GL_PREFIX(_dispatch_stub_820): popq %rdx popq %rsi popq %rdi - movq 6560(%rax), %r11 + movq 6672(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6560(%rax), %r11 + movq 6672(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31059,10 +31573,10 @@ GL_PREFIX(_dispatch_stub_820): popq %rdx popq %rsi popq %rdi - movq 6560(%rax), %r11 + movq 6672(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_820), .-GL_PREFIX(_dispatch_stub_820) + .size GL_PREFIX(_dispatch_stub_834), .-GL_PREFIX(_dispatch_stub_834) .p2align 4,,15 .globl GL_PREFIX(BindFragDataLocationEXT) @@ -31070,7 +31584,7 @@ GL_PREFIX(_dispatch_stub_820): GL_PREFIX(BindFragDataLocationEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6568(%rax), %r11 + movq 6680(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31080,13 +31594,13 @@ GL_PREFIX(BindFragDataLocationEXT): popq %rdx popq %rsi popq %rdi - movq 6568(%rax), %r11 + movq 6680(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6568(%rax), %r11 + movq 6680(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31096,7 +31610,7 @@ GL_PREFIX(BindFragDataLocationEXT): popq %rdx popq %rsi popq %rdi - movq 6568(%rax), %r11 + movq 6680(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindFragDataLocationEXT), .-GL_PREFIX(BindFragDataLocationEXT) @@ -31107,7 +31621,7 @@ GL_PREFIX(BindFragDataLocationEXT): GL_PREFIX(GetFragDataLocationEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6576(%rax), %r11 + movq 6688(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31117,13 +31631,13 @@ GL_PREFIX(GetFragDataLocationEXT): popq %rbp popq %rsi popq %rdi - movq 6576(%rax), %r11 + movq 6688(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6576(%rax), %r11 + movq 6688(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31133,7 +31647,7 @@ GL_PREFIX(GetFragDataLocationEXT): popq %rbp popq %rsi popq %rdi - movq 6576(%rax), %r11 + movq 6688(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetFragDataLocationEXT), .-GL_PREFIX(GetFragDataLocationEXT) @@ -31144,7 +31658,7 @@ GL_PREFIX(GetFragDataLocationEXT): GL_PREFIX(GetUniformuivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6584(%rax), %r11 + movq 6696(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31154,13 +31668,13 @@ GL_PREFIX(GetUniformuivEXT): popq %rdx popq %rsi popq %rdi - movq 6584(%rax), %r11 + movq 6696(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6584(%rax), %r11 + movq 6696(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31170,7 +31684,7 @@ GL_PREFIX(GetUniformuivEXT): popq %rdx popq %rsi popq %rdi - movq 6584(%rax), %r11 + movq 6696(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetUniformuivEXT), .-GL_PREFIX(GetUniformuivEXT) @@ -31181,7 +31695,7 @@ GL_PREFIX(GetUniformuivEXT): GL_PREFIX(GetVertexAttribIivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6592(%rax), %r11 + movq 6704(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31191,13 +31705,13 @@ GL_PREFIX(GetVertexAttribIivEXT): popq %rdx popq %rsi popq %rdi - movq 6592(%rax), %r11 + movq 6704(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6592(%rax), %r11 + movq 6704(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31207,7 +31721,7 @@ GL_PREFIX(GetVertexAttribIivEXT): popq %rdx popq %rsi popq %rdi - movq 6592(%rax), %r11 + movq 6704(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetVertexAttribIivEXT), .-GL_PREFIX(GetVertexAttribIivEXT) @@ -31218,7 +31732,7 @@ GL_PREFIX(GetVertexAttribIivEXT): GL_PREFIX(GetVertexAttribIuivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6600(%rax), %r11 + movq 6712(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31228,13 +31742,13 @@ GL_PREFIX(GetVertexAttribIuivEXT): popq %rdx popq %rsi popq %rdi - movq 6600(%rax), %r11 + movq 6712(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6600(%rax), %r11 + movq 6712(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31244,7 +31758,7 @@ GL_PREFIX(GetVertexAttribIuivEXT): popq %rdx popq %rsi popq %rdi - movq 6600(%rax), %r11 + movq 6712(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetVertexAttribIuivEXT), .-GL_PREFIX(GetVertexAttribIuivEXT) @@ -31255,7 +31769,7 @@ GL_PREFIX(GetVertexAttribIuivEXT): GL_PREFIX(Uniform1uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6608(%rax), %r11 + movq 6720(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31265,13 +31779,13 @@ GL_PREFIX(Uniform1uiEXT): popq %rbp popq %rsi popq %rdi - movq 6608(%rax), %r11 + movq 6720(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6608(%rax), %r11 + movq 6720(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31281,7 +31795,7 @@ GL_PREFIX(Uniform1uiEXT): popq %rbp popq %rsi popq %rdi - movq 6608(%rax), %r11 + movq 6720(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform1uiEXT), .-GL_PREFIX(Uniform1uiEXT) @@ -31292,7 +31806,7 @@ GL_PREFIX(Uniform1uiEXT): GL_PREFIX(Uniform1uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6616(%rax), %r11 + movq 6728(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31302,13 +31816,13 @@ GL_PREFIX(Uniform1uivEXT): popq %rdx popq %rsi popq %rdi - movq 6616(%rax), %r11 + movq 6728(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6616(%rax), %r11 + movq 6728(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31318,7 +31832,7 @@ GL_PREFIX(Uniform1uivEXT): popq %rdx popq %rsi popq %rdi - movq 6616(%rax), %r11 + movq 6728(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform1uivEXT), .-GL_PREFIX(Uniform1uivEXT) @@ -31329,7 +31843,7 @@ GL_PREFIX(Uniform1uivEXT): GL_PREFIX(Uniform2uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6624(%rax), %r11 + movq 6736(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31339,13 +31853,13 @@ GL_PREFIX(Uniform2uiEXT): popq %rdx popq %rsi popq %rdi - movq 6624(%rax), %r11 + movq 6736(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6624(%rax), %r11 + movq 6736(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31355,7 +31869,7 @@ GL_PREFIX(Uniform2uiEXT): popq %rdx popq %rsi popq %rdi - movq 6624(%rax), %r11 + movq 6736(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform2uiEXT), .-GL_PREFIX(Uniform2uiEXT) @@ -31366,7 +31880,7 @@ GL_PREFIX(Uniform2uiEXT): GL_PREFIX(Uniform2uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6632(%rax), %r11 + movq 6744(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31376,13 +31890,13 @@ GL_PREFIX(Uniform2uivEXT): popq %rdx popq %rsi popq %rdi - movq 6632(%rax), %r11 + movq 6744(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6632(%rax), %r11 + movq 6744(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31392,7 +31906,7 @@ GL_PREFIX(Uniform2uivEXT): popq %rdx popq %rsi popq %rdi - movq 6632(%rax), %r11 + movq 6744(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform2uivEXT), .-GL_PREFIX(Uniform2uivEXT) @@ -31403,7 +31917,7 @@ GL_PREFIX(Uniform2uivEXT): GL_PREFIX(Uniform3uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6640(%rax), %r11 + movq 6752(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31417,13 +31931,13 @@ GL_PREFIX(Uniform3uiEXT): popq %rdx popq %rsi popq %rdi - movq 6640(%rax), %r11 + movq 6752(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6640(%rax), %r11 + movq 6752(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31437,7 +31951,7 @@ GL_PREFIX(Uniform3uiEXT): popq %rdx popq %rsi popq %rdi - movq 6640(%rax), %r11 + movq 6752(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform3uiEXT), .-GL_PREFIX(Uniform3uiEXT) @@ -31448,7 +31962,7 @@ GL_PREFIX(Uniform3uiEXT): GL_PREFIX(Uniform3uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6648(%rax), %r11 + movq 6760(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31458,13 +31972,13 @@ GL_PREFIX(Uniform3uivEXT): popq %rdx popq %rsi popq %rdi - movq 6648(%rax), %r11 + movq 6760(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6648(%rax), %r11 + movq 6760(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31474,7 +31988,7 @@ GL_PREFIX(Uniform3uivEXT): popq %rdx popq %rsi popq %rdi - movq 6648(%rax), %r11 + movq 6760(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform3uivEXT), .-GL_PREFIX(Uniform3uivEXT) @@ -31485,7 +31999,7 @@ GL_PREFIX(Uniform3uivEXT): GL_PREFIX(Uniform4uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6656(%rax), %r11 + movq 6768(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31499,13 +32013,13 @@ GL_PREFIX(Uniform4uiEXT): popq %rdx popq %rsi popq %rdi - movq 6656(%rax), %r11 + movq 6768(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6656(%rax), %r11 + movq 6768(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31519,7 +32033,7 @@ GL_PREFIX(Uniform4uiEXT): popq %rdx popq %rsi popq %rdi - movq 6656(%rax), %r11 + movq 6768(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform4uiEXT), .-GL_PREFIX(Uniform4uiEXT) @@ -31530,7 +32044,7 @@ GL_PREFIX(Uniform4uiEXT): GL_PREFIX(Uniform4uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6664(%rax), %r11 + movq 6776(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31540,13 +32054,13 @@ GL_PREFIX(Uniform4uivEXT): popq %rdx popq %rsi popq %rdi - movq 6664(%rax), %r11 + movq 6776(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6664(%rax), %r11 + movq 6776(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31556,7 +32070,7 @@ GL_PREFIX(Uniform4uivEXT): popq %rdx popq %rsi popq %rdi - movq 6664(%rax), %r11 + movq 6776(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(Uniform4uivEXT), .-GL_PREFIX(Uniform4uivEXT) @@ -31567,7 +32081,7 @@ GL_PREFIX(Uniform4uivEXT): GL_PREFIX(VertexAttribI1iEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6672(%rax), %r11 + movq 6784(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31577,13 +32091,13 @@ GL_PREFIX(VertexAttribI1iEXT): popq %rbp popq %rsi popq %rdi - movq 6672(%rax), %r11 + movq 6784(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6672(%rax), %r11 + movq 6784(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31593,7 +32107,7 @@ GL_PREFIX(VertexAttribI1iEXT): popq %rbp popq %rsi popq %rdi - movq 6672(%rax), %r11 + movq 6784(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI1iEXT), .-GL_PREFIX(VertexAttribI1iEXT) @@ -31604,7 +32118,7 @@ GL_PREFIX(VertexAttribI1iEXT): GL_PREFIX(VertexAttribI1ivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6680(%rax), %r11 + movq 6792(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31614,13 +32128,13 @@ GL_PREFIX(VertexAttribI1ivEXT): popq %rbp popq %rsi popq %rdi - movq 6680(%rax), %r11 + movq 6792(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6680(%rax), %r11 + movq 6792(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31630,7 +32144,7 @@ GL_PREFIX(VertexAttribI1ivEXT): popq %rbp popq %rsi popq %rdi - movq 6680(%rax), %r11 + movq 6792(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI1ivEXT), .-GL_PREFIX(VertexAttribI1ivEXT) @@ -31641,7 +32155,7 @@ GL_PREFIX(VertexAttribI1ivEXT): GL_PREFIX(VertexAttribI1uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6688(%rax), %r11 + movq 6800(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31651,13 +32165,13 @@ GL_PREFIX(VertexAttribI1uiEXT): popq %rbp popq %rsi popq %rdi - movq 6688(%rax), %r11 + movq 6800(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6688(%rax), %r11 + movq 6800(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31667,7 +32181,7 @@ GL_PREFIX(VertexAttribI1uiEXT): popq %rbp popq %rsi popq %rdi - movq 6688(%rax), %r11 + movq 6800(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI1uiEXT), .-GL_PREFIX(VertexAttribI1uiEXT) @@ -31678,7 +32192,7 @@ GL_PREFIX(VertexAttribI1uiEXT): GL_PREFIX(VertexAttribI1uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6696(%rax), %r11 + movq 6808(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31688,13 +32202,13 @@ GL_PREFIX(VertexAttribI1uivEXT): popq %rbp popq %rsi popq %rdi - movq 6696(%rax), %r11 + movq 6808(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6696(%rax), %r11 + movq 6808(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31704,7 +32218,7 @@ GL_PREFIX(VertexAttribI1uivEXT): popq %rbp popq %rsi popq %rdi - movq 6696(%rax), %r11 + movq 6808(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI1uivEXT), .-GL_PREFIX(VertexAttribI1uivEXT) @@ -31715,7 +32229,7 @@ GL_PREFIX(VertexAttribI1uivEXT): GL_PREFIX(VertexAttribI2iEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6704(%rax), %r11 + movq 6816(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31725,13 +32239,13 @@ GL_PREFIX(VertexAttribI2iEXT): popq %rdx popq %rsi popq %rdi - movq 6704(%rax), %r11 + movq 6816(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6704(%rax), %r11 + movq 6816(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31741,7 +32255,7 @@ GL_PREFIX(VertexAttribI2iEXT): popq %rdx popq %rsi popq %rdi - movq 6704(%rax), %r11 + movq 6816(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI2iEXT), .-GL_PREFIX(VertexAttribI2iEXT) @@ -31752,7 +32266,7 @@ GL_PREFIX(VertexAttribI2iEXT): GL_PREFIX(VertexAttribI2ivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6712(%rax), %r11 + movq 6824(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31762,13 +32276,13 @@ GL_PREFIX(VertexAttribI2ivEXT): popq %rbp popq %rsi popq %rdi - movq 6712(%rax), %r11 + movq 6824(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6712(%rax), %r11 + movq 6824(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31778,7 +32292,7 @@ GL_PREFIX(VertexAttribI2ivEXT): popq %rbp popq %rsi popq %rdi - movq 6712(%rax), %r11 + movq 6824(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI2ivEXT), .-GL_PREFIX(VertexAttribI2ivEXT) @@ -31789,7 +32303,7 @@ GL_PREFIX(VertexAttribI2ivEXT): GL_PREFIX(VertexAttribI2uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6720(%rax), %r11 + movq 6832(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31799,13 +32313,13 @@ GL_PREFIX(VertexAttribI2uiEXT): popq %rdx popq %rsi popq %rdi - movq 6720(%rax), %r11 + movq 6832(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6720(%rax), %r11 + movq 6832(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31815,7 +32329,7 @@ GL_PREFIX(VertexAttribI2uiEXT): popq %rdx popq %rsi popq %rdi - movq 6720(%rax), %r11 + movq 6832(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI2uiEXT), .-GL_PREFIX(VertexAttribI2uiEXT) @@ -31826,7 +32340,7 @@ GL_PREFIX(VertexAttribI2uiEXT): GL_PREFIX(VertexAttribI2uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6728(%rax), %r11 + movq 6840(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31836,13 +32350,13 @@ GL_PREFIX(VertexAttribI2uivEXT): popq %rbp popq %rsi popq %rdi - movq 6728(%rax), %r11 + movq 6840(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6728(%rax), %r11 + movq 6840(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31852,7 +32366,7 @@ GL_PREFIX(VertexAttribI2uivEXT): popq %rbp popq %rsi popq %rdi - movq 6728(%rax), %r11 + movq 6840(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI2uivEXT), .-GL_PREFIX(VertexAttribI2uivEXT) @@ -31863,7 +32377,7 @@ GL_PREFIX(VertexAttribI2uivEXT): GL_PREFIX(VertexAttribI3iEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6736(%rax), %r11 + movq 6848(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31877,13 +32391,13 @@ GL_PREFIX(VertexAttribI3iEXT): popq %rdx popq %rsi popq %rdi - movq 6736(%rax), %r11 + movq 6848(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6736(%rax), %r11 + movq 6848(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31897,7 +32411,7 @@ GL_PREFIX(VertexAttribI3iEXT): popq %rdx popq %rsi popq %rdi - movq 6736(%rax), %r11 + movq 6848(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI3iEXT), .-GL_PREFIX(VertexAttribI3iEXT) @@ -31908,7 +32422,7 @@ GL_PREFIX(VertexAttribI3iEXT): GL_PREFIX(VertexAttribI3ivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6744(%rax), %r11 + movq 6856(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31918,13 +32432,13 @@ GL_PREFIX(VertexAttribI3ivEXT): popq %rbp popq %rsi popq %rdi - movq 6744(%rax), %r11 + movq 6856(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6744(%rax), %r11 + movq 6856(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31934,7 +32448,7 @@ GL_PREFIX(VertexAttribI3ivEXT): popq %rbp popq %rsi popq %rdi - movq 6744(%rax), %r11 + movq 6856(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI3ivEXT), .-GL_PREFIX(VertexAttribI3ivEXT) @@ -31945,7 +32459,7 @@ GL_PREFIX(VertexAttribI3ivEXT): GL_PREFIX(VertexAttribI3uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6752(%rax), %r11 + movq 6864(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -31959,13 +32473,13 @@ GL_PREFIX(VertexAttribI3uiEXT): popq %rdx popq %rsi popq %rdi - movq 6752(%rax), %r11 + movq 6864(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6752(%rax), %r11 + movq 6864(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -31979,7 +32493,7 @@ GL_PREFIX(VertexAttribI3uiEXT): popq %rdx popq %rsi popq %rdi - movq 6752(%rax), %r11 + movq 6864(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI3uiEXT), .-GL_PREFIX(VertexAttribI3uiEXT) @@ -31990,7 +32504,7 @@ GL_PREFIX(VertexAttribI3uiEXT): GL_PREFIX(VertexAttribI3uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6760(%rax), %r11 + movq 6872(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32000,13 +32514,13 @@ GL_PREFIX(VertexAttribI3uivEXT): popq %rbp popq %rsi popq %rdi - movq 6760(%rax), %r11 + movq 6872(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6760(%rax), %r11 + movq 6872(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32016,7 +32530,7 @@ GL_PREFIX(VertexAttribI3uivEXT): popq %rbp popq %rsi popq %rdi - movq 6760(%rax), %r11 + movq 6872(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI3uivEXT), .-GL_PREFIX(VertexAttribI3uivEXT) @@ -32027,7 +32541,7 @@ GL_PREFIX(VertexAttribI3uivEXT): GL_PREFIX(VertexAttribI4bvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6768(%rax), %r11 + movq 6880(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32037,13 +32551,13 @@ GL_PREFIX(VertexAttribI4bvEXT): popq %rbp popq %rsi popq %rdi - movq 6768(%rax), %r11 + movq 6880(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6768(%rax), %r11 + movq 6880(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32053,7 +32567,7 @@ GL_PREFIX(VertexAttribI4bvEXT): popq %rbp popq %rsi popq %rdi - movq 6768(%rax), %r11 + movq 6880(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4bvEXT), .-GL_PREFIX(VertexAttribI4bvEXT) @@ -32064,7 +32578,7 @@ GL_PREFIX(VertexAttribI4bvEXT): GL_PREFIX(VertexAttribI4iEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6776(%rax), %r11 + movq 6888(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32078,13 +32592,13 @@ GL_PREFIX(VertexAttribI4iEXT): popq %rdx popq %rsi popq %rdi - movq 6776(%rax), %r11 + movq 6888(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6776(%rax), %r11 + movq 6888(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32098,7 +32612,7 @@ GL_PREFIX(VertexAttribI4iEXT): popq %rdx popq %rsi popq %rdi - movq 6776(%rax), %r11 + movq 6888(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4iEXT), .-GL_PREFIX(VertexAttribI4iEXT) @@ -32109,7 +32623,7 @@ GL_PREFIX(VertexAttribI4iEXT): GL_PREFIX(VertexAttribI4ivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6784(%rax), %r11 + movq 6896(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32119,13 +32633,13 @@ GL_PREFIX(VertexAttribI4ivEXT): popq %rbp popq %rsi popq %rdi - movq 6784(%rax), %r11 + movq 6896(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6784(%rax), %r11 + movq 6896(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32135,7 +32649,7 @@ GL_PREFIX(VertexAttribI4ivEXT): popq %rbp popq %rsi popq %rdi - movq 6784(%rax), %r11 + movq 6896(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4ivEXT), .-GL_PREFIX(VertexAttribI4ivEXT) @@ -32146,7 +32660,7 @@ GL_PREFIX(VertexAttribI4ivEXT): GL_PREFIX(VertexAttribI4svEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6792(%rax), %r11 + movq 6904(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32156,13 +32670,13 @@ GL_PREFIX(VertexAttribI4svEXT): popq %rbp popq %rsi popq %rdi - movq 6792(%rax), %r11 + movq 6904(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6792(%rax), %r11 + movq 6904(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32172,7 +32686,7 @@ GL_PREFIX(VertexAttribI4svEXT): popq %rbp popq %rsi popq %rdi - movq 6792(%rax), %r11 + movq 6904(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4svEXT), .-GL_PREFIX(VertexAttribI4svEXT) @@ -32183,7 +32697,7 @@ GL_PREFIX(VertexAttribI4svEXT): GL_PREFIX(VertexAttribI4ubvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6800(%rax), %r11 + movq 6912(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32193,13 +32707,13 @@ GL_PREFIX(VertexAttribI4ubvEXT): popq %rbp popq %rsi popq %rdi - movq 6800(%rax), %r11 + movq 6912(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6800(%rax), %r11 + movq 6912(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32209,7 +32723,7 @@ GL_PREFIX(VertexAttribI4ubvEXT): popq %rbp popq %rsi popq %rdi - movq 6800(%rax), %r11 + movq 6912(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4ubvEXT), .-GL_PREFIX(VertexAttribI4ubvEXT) @@ -32220,7 +32734,7 @@ GL_PREFIX(VertexAttribI4ubvEXT): GL_PREFIX(VertexAttribI4uiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6808(%rax), %r11 + movq 6920(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32234,13 +32748,13 @@ GL_PREFIX(VertexAttribI4uiEXT): popq %rdx popq %rsi popq %rdi - movq 6808(%rax), %r11 + movq 6920(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6808(%rax), %r11 + movq 6920(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32254,7 +32768,7 @@ GL_PREFIX(VertexAttribI4uiEXT): popq %rdx popq %rsi popq %rdi - movq 6808(%rax), %r11 + movq 6920(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4uiEXT), .-GL_PREFIX(VertexAttribI4uiEXT) @@ -32265,7 +32779,7 @@ GL_PREFIX(VertexAttribI4uiEXT): GL_PREFIX(VertexAttribI4uivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6816(%rax), %r11 + movq 6928(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32275,13 +32789,13 @@ GL_PREFIX(VertexAttribI4uivEXT): popq %rbp popq %rsi popq %rdi - movq 6816(%rax), %r11 + movq 6928(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6816(%rax), %r11 + movq 6928(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32291,7 +32805,7 @@ GL_PREFIX(VertexAttribI4uivEXT): popq %rbp popq %rsi popq %rdi - movq 6816(%rax), %r11 + movq 6928(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4uivEXT), .-GL_PREFIX(VertexAttribI4uivEXT) @@ -32302,7 +32816,7 @@ GL_PREFIX(VertexAttribI4uivEXT): GL_PREFIX(VertexAttribI4usvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6824(%rax), %r11 + movq 6936(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32312,13 +32826,13 @@ GL_PREFIX(VertexAttribI4usvEXT): popq %rbp popq %rsi popq %rdi - movq 6824(%rax), %r11 + movq 6936(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6824(%rax), %r11 + movq 6936(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32328,7 +32842,7 @@ GL_PREFIX(VertexAttribI4usvEXT): popq %rbp popq %rsi popq %rdi - movq 6824(%rax), %r11 + movq 6936(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribI4usvEXT), .-GL_PREFIX(VertexAttribI4usvEXT) @@ -32339,7 +32853,7 @@ GL_PREFIX(VertexAttribI4usvEXT): GL_PREFIX(VertexAttribIPointerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6832(%rax), %r11 + movq 6944(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32353,13 +32867,13 @@ GL_PREFIX(VertexAttribIPointerEXT): popq %rdx popq %rsi popq %rdi - movq 6832(%rax), %r11 + movq 6944(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6832(%rax), %r11 + movq 6944(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32373,7 +32887,7 @@ GL_PREFIX(VertexAttribIPointerEXT): popq %rdx popq %rsi popq %rdi - movq 6832(%rax), %r11 + movq 6944(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(VertexAttribIPointerEXT), .-GL_PREFIX(VertexAttribIPointerEXT) @@ -32384,7 +32898,7 @@ GL_PREFIX(VertexAttribIPointerEXT): GL_PREFIX(FramebufferTextureLayerEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6840(%rax), %r11 + movq 6952(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32398,13 +32912,13 @@ GL_PREFIX(FramebufferTextureLayerEXT): popq %rdx popq %rsi popq %rdi - movq 6840(%rax), %r11 + movq 6952(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6840(%rax), %r11 + movq 6952(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32418,7 +32932,7 @@ GL_PREFIX(FramebufferTextureLayerEXT): popq %rdx popq %rsi popq %rdi - movq 6840(%rax), %r11 + movq 6952(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(FramebufferTextureLayerEXT), .-GL_PREFIX(FramebufferTextureLayerEXT) @@ -32429,7 +32943,7 @@ GL_PREFIX(FramebufferTextureLayerEXT): GL_PREFIX(ColorMaskIndexedEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6848(%rax), %r11 + movq 6960(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32443,13 +32957,13 @@ GL_PREFIX(ColorMaskIndexedEXT): popq %rdx popq %rsi popq %rdi - movq 6848(%rax), %r11 + movq 6960(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6848(%rax), %r11 + movq 6960(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32463,7 +32977,7 @@ GL_PREFIX(ColorMaskIndexedEXT): popq %rdx popq %rsi popq %rdi - movq 6848(%rax), %r11 + movq 6960(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ColorMaskIndexedEXT), .-GL_PREFIX(ColorMaskIndexedEXT) @@ -32474,7 +32988,7 @@ GL_PREFIX(ColorMaskIndexedEXT): GL_PREFIX(DisableIndexedEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6856(%rax), %r11 + movq 6968(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32484,13 +32998,13 @@ GL_PREFIX(DisableIndexedEXT): popq %rbp popq %rsi popq %rdi - movq 6856(%rax), %r11 + movq 6968(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6856(%rax), %r11 + movq 6968(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32500,7 +33014,7 @@ GL_PREFIX(DisableIndexedEXT): popq %rbp popq %rsi popq %rdi - movq 6856(%rax), %r11 + movq 6968(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(DisableIndexedEXT), .-GL_PREFIX(DisableIndexedEXT) @@ -32511,7 +33025,7 @@ GL_PREFIX(DisableIndexedEXT): GL_PREFIX(EnableIndexedEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6864(%rax), %r11 + movq 6976(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32521,13 +33035,13 @@ GL_PREFIX(EnableIndexedEXT): popq %rbp popq %rsi popq %rdi - movq 6864(%rax), %r11 + movq 6976(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6864(%rax), %r11 + movq 6976(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32537,7 +33051,7 @@ GL_PREFIX(EnableIndexedEXT): popq %rbp popq %rsi popq %rdi - movq 6864(%rax), %r11 + movq 6976(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EnableIndexedEXT), .-GL_PREFIX(EnableIndexedEXT) @@ -32548,7 +33062,7 @@ GL_PREFIX(EnableIndexedEXT): GL_PREFIX(GetBooleanIndexedvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6872(%rax), %r11 + movq 6984(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32558,13 +33072,13 @@ GL_PREFIX(GetBooleanIndexedvEXT): popq %rdx popq %rsi popq %rdi - movq 6872(%rax), %r11 + movq 6984(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6872(%rax), %r11 + movq 6984(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32574,7 +33088,7 @@ GL_PREFIX(GetBooleanIndexedvEXT): popq %rdx popq %rsi popq %rdi - movq 6872(%rax), %r11 + movq 6984(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetBooleanIndexedvEXT), .-GL_PREFIX(GetBooleanIndexedvEXT) @@ -32585,7 +33099,7 @@ GL_PREFIX(GetBooleanIndexedvEXT): GL_PREFIX(GetIntegerIndexedvEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6880(%rax), %r11 + movq 6992(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32595,13 +33109,13 @@ GL_PREFIX(GetIntegerIndexedvEXT): popq %rdx popq %rsi popq %rdi - movq 6880(%rax), %r11 + movq 6992(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6880(%rax), %r11 + movq 6992(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32611,7 +33125,7 @@ GL_PREFIX(GetIntegerIndexedvEXT): popq %rdx popq %rsi popq %rdi - movq 6880(%rax), %r11 + movq 6992(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetIntegerIndexedvEXT), .-GL_PREFIX(GetIntegerIndexedvEXT) @@ -32622,7 +33136,7 @@ GL_PREFIX(GetIntegerIndexedvEXT): GL_PREFIX(IsEnabledIndexedEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6888(%rax), %r11 + movq 7000(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32632,13 +33146,13 @@ GL_PREFIX(IsEnabledIndexedEXT): popq %rbp popq %rsi popq %rdi - movq 6888(%rax), %r11 + movq 7000(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6888(%rax), %r11 + movq 7000(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32648,7 +33162,7 @@ GL_PREFIX(IsEnabledIndexedEXT): popq %rbp popq %rsi popq %rdi - movq 6888(%rax), %r11 + movq 7000(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(IsEnabledIndexedEXT), .-GL_PREFIX(IsEnabledIndexedEXT) @@ -32659,7 +33173,7 @@ GL_PREFIX(IsEnabledIndexedEXT): GL_PREFIX(ClearColorIiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6896(%rax), %r11 + movq 7008(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32673,13 +33187,13 @@ GL_PREFIX(ClearColorIiEXT): popq %rdx popq %rsi popq %rdi - movq 6896(%rax), %r11 + movq 7008(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6896(%rax), %r11 + movq 7008(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32693,7 +33207,7 @@ GL_PREFIX(ClearColorIiEXT): popq %rdx popq %rsi popq %rdi - movq 6896(%rax), %r11 + movq 7008(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ClearColorIiEXT), .-GL_PREFIX(ClearColorIiEXT) @@ -32704,7 +33218,7 @@ GL_PREFIX(ClearColorIiEXT): GL_PREFIX(ClearColorIuiEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6904(%rax), %r11 + movq 7016(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32718,13 +33232,13 @@ GL_PREFIX(ClearColorIuiEXT): popq %rdx popq %rsi popq %rdi - movq 6904(%rax), %r11 + movq 7016(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6904(%rax), %r11 + movq 7016(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32738,7 +33252,7 @@ GL_PREFIX(ClearColorIuiEXT): popq %rdx popq %rsi popq %rdi - movq 6904(%rax), %r11 + movq 7016(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ClearColorIuiEXT), .-GL_PREFIX(ClearColorIuiEXT) @@ -32749,7 +33263,7 @@ GL_PREFIX(ClearColorIuiEXT): GL_PREFIX(GetTexParameterIivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6912(%rax), %r11 + movq 7024(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32759,13 +33273,13 @@ GL_PREFIX(GetTexParameterIivEXT): popq %rdx popq %rsi popq %rdi - movq 6912(%rax), %r11 + movq 7024(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6912(%rax), %r11 + movq 7024(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32775,7 +33289,7 @@ GL_PREFIX(GetTexParameterIivEXT): popq %rdx popq %rsi popq %rdi - movq 6912(%rax), %r11 + movq 7024(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetTexParameterIivEXT), .-GL_PREFIX(GetTexParameterIivEXT) @@ -32786,7 +33300,7 @@ GL_PREFIX(GetTexParameterIivEXT): GL_PREFIX(GetTexParameterIuivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6920(%rax), %r11 + movq 7032(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32796,13 +33310,13 @@ GL_PREFIX(GetTexParameterIuivEXT): popq %rdx popq %rsi popq %rdi - movq 6920(%rax), %r11 + movq 7032(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6920(%rax), %r11 + movq 7032(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32812,7 +33326,7 @@ GL_PREFIX(GetTexParameterIuivEXT): popq %rdx popq %rsi popq %rdi - movq 6920(%rax), %r11 + movq 7032(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetTexParameterIuivEXT), .-GL_PREFIX(GetTexParameterIuivEXT) @@ -32823,7 +33337,7 @@ GL_PREFIX(GetTexParameterIuivEXT): GL_PREFIX(TexParameterIivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6928(%rax), %r11 + movq 7040(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32833,13 +33347,13 @@ GL_PREFIX(TexParameterIivEXT): popq %rdx popq %rsi popq %rdi - movq 6928(%rax), %r11 + movq 7040(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6928(%rax), %r11 + movq 7040(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32849,7 +33363,7 @@ GL_PREFIX(TexParameterIivEXT): popq %rdx popq %rsi popq %rdi - movq 6928(%rax), %r11 + movq 7040(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TexParameterIivEXT), .-GL_PREFIX(TexParameterIivEXT) @@ -32860,7 +33374,7 @@ GL_PREFIX(TexParameterIivEXT): GL_PREFIX(TexParameterIuivEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6936(%rax), %r11 + movq 7048(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32870,13 +33384,13 @@ GL_PREFIX(TexParameterIuivEXT): popq %rdx popq %rsi popq %rdi - movq 6936(%rax), %r11 + movq 7048(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6936(%rax), %r11 + movq 7048(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32886,7 +33400,7 @@ GL_PREFIX(TexParameterIuivEXT): popq %rdx popq %rsi popq %rdi - movq 6936(%rax), %r11 + movq 7048(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TexParameterIuivEXT), .-GL_PREFIX(TexParameterIuivEXT) @@ -32897,7 +33411,7 @@ GL_PREFIX(TexParameterIuivEXT): GL_PREFIX(BeginConditionalRenderNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6944(%rax), %r11 + movq 7056(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -32907,13 +33421,13 @@ GL_PREFIX(BeginConditionalRenderNV): popq %rbp popq %rsi popq %rdi - movq 6944(%rax), %r11 + movq 7056(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6944(%rax), %r11 + movq 7056(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -32923,7 +33437,7 @@ GL_PREFIX(BeginConditionalRenderNV): popq %rbp popq %rsi popq %rdi - movq 6944(%rax), %r11 + movq 7056(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BeginConditionalRenderNV), .-GL_PREFIX(BeginConditionalRenderNV) @@ -32934,25 +33448,25 @@ GL_PREFIX(BeginConditionalRenderNV): GL_PREFIX(EndConditionalRenderNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6952(%rax), %r11 + movq 7064(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 6952(%rax), %r11 + movq 7064(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6952(%rax), %r11 + movq 7064(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 6952(%rax), %r11 + movq 7064(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EndConditionalRenderNV), .-GL_PREFIX(EndConditionalRenderNV) @@ -32963,25 +33477,25 @@ GL_PREFIX(EndConditionalRenderNV): GL_PREFIX(BeginTransformFeedbackEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6960(%rax), %r11 + movq 7072(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 6960(%rax), %r11 + movq 7072(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6960(%rax), %r11 + movq 7072(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 6960(%rax), %r11 + movq 7072(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BeginTransformFeedbackEXT), .-GL_PREFIX(BeginTransformFeedbackEXT) @@ -32992,7 +33506,7 @@ GL_PREFIX(BeginTransformFeedbackEXT): GL_PREFIX(BindBufferBaseEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6968(%rax), %r11 + movq 7080(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33002,13 +33516,13 @@ GL_PREFIX(BindBufferBaseEXT): popq %rdx popq %rsi popq %rdi - movq 6968(%rax), %r11 + movq 7080(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6968(%rax), %r11 + movq 7080(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33018,7 +33532,7 @@ GL_PREFIX(BindBufferBaseEXT): popq %rdx popq %rsi popq %rdi - movq 6968(%rax), %r11 + movq 7080(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindBufferBaseEXT), .-GL_PREFIX(BindBufferBaseEXT) @@ -33029,7 +33543,7 @@ GL_PREFIX(BindBufferBaseEXT): GL_PREFIX(BindBufferOffsetEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6976(%rax), %r11 + movq 7088(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33043,13 +33557,13 @@ GL_PREFIX(BindBufferOffsetEXT): popq %rdx popq %rsi popq %rdi - movq 6976(%rax), %r11 + movq 7088(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6976(%rax), %r11 + movq 7088(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33063,7 +33577,7 @@ GL_PREFIX(BindBufferOffsetEXT): popq %rdx popq %rsi popq %rdi - movq 6976(%rax), %r11 + movq 7088(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindBufferOffsetEXT), .-GL_PREFIX(BindBufferOffsetEXT) @@ -33074,7 +33588,7 @@ GL_PREFIX(BindBufferOffsetEXT): GL_PREFIX(BindBufferRangeEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6984(%rax), %r11 + movq 7096(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33088,13 +33602,13 @@ GL_PREFIX(BindBufferRangeEXT): popq %rdx popq %rsi popq %rdi - movq 6984(%rax), %r11 + movq 7096(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6984(%rax), %r11 + movq 7096(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33108,7 +33622,7 @@ GL_PREFIX(BindBufferRangeEXT): popq %rdx popq %rsi popq %rdi - movq 6984(%rax), %r11 + movq 7096(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(BindBufferRangeEXT), .-GL_PREFIX(BindBufferRangeEXT) @@ -33119,25 +33633,25 @@ GL_PREFIX(BindBufferRangeEXT): GL_PREFIX(EndTransformFeedbackEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 6992(%rax), %r11 + movq 7104(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 6992(%rax), %r11 + movq 7104(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 6992(%rax), %r11 + movq 7104(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 6992(%rax), %r11 + movq 7104(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EndTransformFeedbackEXT), .-GL_PREFIX(EndTransformFeedbackEXT) @@ -33148,7 +33662,7 @@ GL_PREFIX(EndTransformFeedbackEXT): GL_PREFIX(GetTransformFeedbackVaryingEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7000(%rax), %r11 + movq 7112(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33166,13 +33680,13 @@ GL_PREFIX(GetTransformFeedbackVaryingEXT): popq %rdx popq %rsi popq %rdi - movq 7000(%rax), %r11 + movq 7112(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7000(%rax), %r11 + movq 7112(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33190,7 +33704,7 @@ GL_PREFIX(GetTransformFeedbackVaryingEXT): popq %rdx popq %rsi popq %rdi - movq 7000(%rax), %r11 + movq 7112(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetTransformFeedbackVaryingEXT), .-GL_PREFIX(GetTransformFeedbackVaryingEXT) @@ -33201,7 +33715,7 @@ GL_PREFIX(GetTransformFeedbackVaryingEXT): GL_PREFIX(TransformFeedbackVaryingsEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7008(%rax), %r11 + movq 7120(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33215,13 +33729,13 @@ GL_PREFIX(TransformFeedbackVaryingsEXT): popq %rdx popq %rsi popq %rdi - movq 7008(%rax), %r11 + movq 7120(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7008(%rax), %r11 + movq 7120(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33235,7 +33749,7 @@ GL_PREFIX(TransformFeedbackVaryingsEXT): popq %rdx popq %rsi popq %rdi - movq 7008(%rax), %r11 + movq 7120(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TransformFeedbackVaryingsEXT), .-GL_PREFIX(TransformFeedbackVaryingsEXT) @@ -33246,37 +33760,37 @@ GL_PREFIX(TransformFeedbackVaryingsEXT): GL_PREFIX(ProvokingVertexEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7016(%rax), %r11 + movq 7128(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 7016(%rax), %r11 + movq 7128(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7016(%rax), %r11 + movq 7128(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 7016(%rax), %r11 + movq 7128(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ProvokingVertexEXT), .-GL_PREFIX(ProvokingVertexEXT) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_878) - .type GL_PREFIX(_dispatch_stub_878), @function - HIDDEN(GL_PREFIX(_dispatch_stub_878)) -GL_PREFIX(_dispatch_stub_878): + .globl GL_PREFIX(_dispatch_stub_892) + .type GL_PREFIX(_dispatch_stub_892), @function + HIDDEN(GL_PREFIX(_dispatch_stub_892)) +GL_PREFIX(_dispatch_stub_892): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7024(%rax), %r11 + movq 7136(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33286,13 +33800,13 @@ GL_PREFIX(_dispatch_stub_878): popq %rdx popq %rsi popq %rdi - movq 7024(%rax), %r11 + movq 7136(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7024(%rax), %r11 + movq 7136(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33302,19 +33816,19 @@ GL_PREFIX(_dispatch_stub_878): popq %rdx popq %rsi popq %rdi - movq 7024(%rax), %r11 + movq 7136(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_878), .-GL_PREFIX(_dispatch_stub_878) + .size GL_PREFIX(_dispatch_stub_892), .-GL_PREFIX(_dispatch_stub_892) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_879) - .type GL_PREFIX(_dispatch_stub_879), @function - HIDDEN(GL_PREFIX(_dispatch_stub_879)) -GL_PREFIX(_dispatch_stub_879): + .globl GL_PREFIX(_dispatch_stub_893) + .type GL_PREFIX(_dispatch_stub_893), @function + HIDDEN(GL_PREFIX(_dispatch_stub_893)) +GL_PREFIX(_dispatch_stub_893): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7032(%rax), %r11 + movq 7144(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33324,13 +33838,13 @@ GL_PREFIX(_dispatch_stub_879): popq %rdx popq %rsi popq %rdi - movq 7032(%rax), %r11 + movq 7144(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7032(%rax), %r11 + movq 7144(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33340,10 +33854,10 @@ GL_PREFIX(_dispatch_stub_879): popq %rdx popq %rsi popq %rdi - movq 7032(%rax), %r11 + movq 7144(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_879), .-GL_PREFIX(_dispatch_stub_879) + .size GL_PREFIX(_dispatch_stub_893), .-GL_PREFIX(_dispatch_stub_893) .p2align 4,,15 .globl GL_PREFIX(GetObjectParameterivAPPLE) @@ -33351,7 +33865,7 @@ GL_PREFIX(_dispatch_stub_879): GL_PREFIX(GetObjectParameterivAPPLE): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7040(%rax), %r11 + movq 7152(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33365,13 +33879,13 @@ GL_PREFIX(GetObjectParameterivAPPLE): popq %rdx popq %rsi popq %rdi - movq 7040(%rax), %r11 + movq 7152(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7040(%rax), %r11 + movq 7152(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33385,7 +33899,7 @@ GL_PREFIX(GetObjectParameterivAPPLE): popq %rdx popq %rsi popq %rdi - movq 7040(%rax), %r11 + movq 7152(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(GetObjectParameterivAPPLE), .-GL_PREFIX(GetObjectParameterivAPPLE) @@ -33396,7 +33910,7 @@ GL_PREFIX(GetObjectParameterivAPPLE): GL_PREFIX(ObjectPurgeableAPPLE): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7048(%rax), %r11 + movq 7160(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33406,13 +33920,13 @@ GL_PREFIX(ObjectPurgeableAPPLE): popq %rdx popq %rsi popq %rdi - movq 7048(%rax), %r11 + movq 7160(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7048(%rax), %r11 + movq 7160(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33422,7 +33936,7 @@ GL_PREFIX(ObjectPurgeableAPPLE): popq %rdx popq %rsi popq %rdi - movq 7048(%rax), %r11 + movq 7160(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ObjectPurgeableAPPLE), .-GL_PREFIX(ObjectPurgeableAPPLE) @@ -33433,7 +33947,7 @@ GL_PREFIX(ObjectPurgeableAPPLE): GL_PREFIX(ObjectUnpurgeableAPPLE): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7056(%rax), %r11 + movq 7168(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33443,13 +33957,13 @@ GL_PREFIX(ObjectUnpurgeableAPPLE): popq %rdx popq %rsi popq %rdi - movq 7056(%rax), %r11 + movq 7168(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7056(%rax), %r11 + movq 7168(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33459,7 +33973,7 @@ GL_PREFIX(ObjectUnpurgeableAPPLE): popq %rdx popq %rsi popq %rdi - movq 7056(%rax), %r11 + movq 7168(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ObjectUnpurgeableAPPLE), .-GL_PREFIX(ObjectUnpurgeableAPPLE) @@ -33470,25 +33984,25 @@ GL_PREFIX(ObjectUnpurgeableAPPLE): GL_PREFIX(ActiveProgramEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7064(%rax), %r11 + movq 7176(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi call _x86_64_get_dispatch@PLT popq %rdi - movq 7064(%rax), %r11 + movq 7176(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7064(%rax), %r11 + movq 7176(%rax), %r11 jmp *%r11 1: pushq %rdi call _glapi_get_dispatch popq %rdi - movq 7064(%rax), %r11 + movq 7176(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(ActiveProgramEXT), .-GL_PREFIX(ActiveProgramEXT) @@ -33499,7 +34013,7 @@ GL_PREFIX(ActiveProgramEXT): GL_PREFIX(CreateShaderProgramEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7072(%rax), %r11 + movq 7184(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33509,13 +34023,13 @@ GL_PREFIX(CreateShaderProgramEXT): popq %rbp popq %rsi popq %rdi - movq 7072(%rax), %r11 + movq 7184(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7072(%rax), %r11 + movq 7184(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33525,7 +34039,7 @@ GL_PREFIX(CreateShaderProgramEXT): popq %rbp popq %rsi popq %rdi - movq 7072(%rax), %r11 + movq 7184(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(CreateShaderProgramEXT), .-GL_PREFIX(CreateShaderProgramEXT) @@ -33536,7 +34050,7 @@ GL_PREFIX(CreateShaderProgramEXT): GL_PREFIX(UseShaderProgramEXT): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7080(%rax), %r11 + movq 7192(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33546,13 +34060,13 @@ GL_PREFIX(UseShaderProgramEXT): popq %rbp popq %rsi popq %rdi - movq 7080(%rax), %r11 + movq 7192(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7080(%rax), %r11 + movq 7192(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33562,7 +34076,7 @@ GL_PREFIX(UseShaderProgramEXT): popq %rbp popq %rsi popq %rdi - movq 7080(%rax), %r11 + movq 7192(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(UseShaderProgramEXT), .-GL_PREFIX(UseShaderProgramEXT) @@ -33573,37 +34087,37 @@ GL_PREFIX(UseShaderProgramEXT): GL_PREFIX(TextureBarrierNV): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7088(%rax), %r11 + movq 7200(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rbp call _x86_64_get_dispatch@PLT popq %rbp - movq 7088(%rax), %r11 + movq 7200(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7088(%rax), %r11 + movq 7200(%rax), %r11 jmp *%r11 1: pushq %rbp call _glapi_get_dispatch popq %rbp - movq 7088(%rax), %r11 + movq 7200(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(TextureBarrierNV), .-GL_PREFIX(TextureBarrierNV) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_887) - .type GL_PREFIX(_dispatch_stub_887), @function - HIDDEN(GL_PREFIX(_dispatch_stub_887)) -GL_PREFIX(_dispatch_stub_887): + .globl GL_PREFIX(_dispatch_stub_901) + .type GL_PREFIX(_dispatch_stub_901), @function + HIDDEN(GL_PREFIX(_dispatch_stub_901)) +GL_PREFIX(_dispatch_stub_901): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7096(%rax), %r11 + movq 7208(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33617,13 +34131,13 @@ GL_PREFIX(_dispatch_stub_887): popq %rdx popq %rsi popq %rdi - movq 7096(%rax), %r11 + movq 7208(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7096(%rax), %r11 + movq 7208(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33637,19 +34151,19 @@ GL_PREFIX(_dispatch_stub_887): popq %rdx popq %rsi popq %rdi - movq 7096(%rax), %r11 + movq 7208(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_887), .-GL_PREFIX(_dispatch_stub_887) + .size GL_PREFIX(_dispatch_stub_901), .-GL_PREFIX(_dispatch_stub_901) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_888) - .type GL_PREFIX(_dispatch_stub_888), @function - HIDDEN(GL_PREFIX(_dispatch_stub_888)) -GL_PREFIX(_dispatch_stub_888): + .globl GL_PREFIX(_dispatch_stub_902) + .type GL_PREFIX(_dispatch_stub_902), @function + HIDDEN(GL_PREFIX(_dispatch_stub_902)) +GL_PREFIX(_dispatch_stub_902): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7104(%rax), %r11 + movq 7216(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33663,13 +34177,13 @@ GL_PREFIX(_dispatch_stub_888): popq %rdx popq %rsi popq %rdi - movq 7104(%rax), %r11 + movq 7216(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7104(%rax), %r11 + movq 7216(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33683,19 +34197,19 @@ GL_PREFIX(_dispatch_stub_888): popq %rdx popq %rsi popq %rdi - movq 7104(%rax), %r11 + movq 7216(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_888), .-GL_PREFIX(_dispatch_stub_888) + .size GL_PREFIX(_dispatch_stub_902), .-GL_PREFIX(_dispatch_stub_902) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_889) - .type GL_PREFIX(_dispatch_stub_889), @function - HIDDEN(GL_PREFIX(_dispatch_stub_889)) -GL_PREFIX(_dispatch_stub_889): + .globl GL_PREFIX(_dispatch_stub_903) + .type GL_PREFIX(_dispatch_stub_903), @function + HIDDEN(GL_PREFIX(_dispatch_stub_903)) +GL_PREFIX(_dispatch_stub_903): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7112(%rax), %r11 + movq 7224(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33709,13 +34223,13 @@ GL_PREFIX(_dispatch_stub_889): popq %rdx popq %rsi popq %rdi - movq 7112(%rax), %r11 + movq 7224(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7112(%rax), %r11 + movq 7224(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33729,19 +34243,19 @@ GL_PREFIX(_dispatch_stub_889): popq %rdx popq %rsi popq %rdi - movq 7112(%rax), %r11 + movq 7224(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_889), .-GL_PREFIX(_dispatch_stub_889) + .size GL_PREFIX(_dispatch_stub_903), .-GL_PREFIX(_dispatch_stub_903) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_890) - .type GL_PREFIX(_dispatch_stub_890), @function - HIDDEN(GL_PREFIX(_dispatch_stub_890)) -GL_PREFIX(_dispatch_stub_890): + .globl GL_PREFIX(_dispatch_stub_904) + .type GL_PREFIX(_dispatch_stub_904), @function + HIDDEN(GL_PREFIX(_dispatch_stub_904)) +GL_PREFIX(_dispatch_stub_904): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7120(%rax), %r11 + movq 7232(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33751,13 +34265,13 @@ GL_PREFIX(_dispatch_stub_890): popq %rdx popq %rsi popq %rdi - movq 7120(%rax), %r11 + movq 7232(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7120(%rax), %r11 + movq 7232(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33767,19 +34281,19 @@ GL_PREFIX(_dispatch_stub_890): popq %rdx popq %rsi popq %rdi - movq 7120(%rax), %r11 + movq 7232(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_890), .-GL_PREFIX(_dispatch_stub_890) + .size GL_PREFIX(_dispatch_stub_904), .-GL_PREFIX(_dispatch_stub_904) .p2align 4,,15 - .globl GL_PREFIX(_dispatch_stub_891) - .type GL_PREFIX(_dispatch_stub_891), @function - HIDDEN(GL_PREFIX(_dispatch_stub_891)) -GL_PREFIX(_dispatch_stub_891): + .globl GL_PREFIX(_dispatch_stub_905) + .type GL_PREFIX(_dispatch_stub_905), @function + HIDDEN(GL_PREFIX(_dispatch_stub_905)) +GL_PREFIX(_dispatch_stub_905): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7128(%rax), %r11 + movq 7240(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33789,13 +34303,13 @@ GL_PREFIX(_dispatch_stub_891): popq %rdx popq %rsi popq %rdi - movq 7128(%rax), %r11 + movq 7240(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7128(%rax), %r11 + movq 7240(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33805,10 +34319,10 @@ GL_PREFIX(_dispatch_stub_891): popq %rdx popq %rsi popq %rdi - movq 7128(%rax), %r11 + movq 7240(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ - .size GL_PREFIX(_dispatch_stub_891), .-GL_PREFIX(_dispatch_stub_891) + .size GL_PREFIX(_dispatch_stub_905), .-GL_PREFIX(_dispatch_stub_905) .p2align 4,,15 .globl GL_PREFIX(EGLImageTargetRenderbufferStorageOES) @@ -33816,7 +34330,7 @@ GL_PREFIX(_dispatch_stub_891): GL_PREFIX(EGLImageTargetRenderbufferStorageOES): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7136(%rax), %r11 + movq 7248(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33826,13 +34340,13 @@ GL_PREFIX(EGLImageTargetRenderbufferStorageOES): popq %rbp popq %rsi popq %rdi - movq 7136(%rax), %r11 + movq 7248(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7136(%rax), %r11 + movq 7248(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33842,7 +34356,7 @@ GL_PREFIX(EGLImageTargetRenderbufferStorageOES): popq %rbp popq %rsi popq %rdi - movq 7136(%rax), %r11 + movq 7248(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EGLImageTargetRenderbufferStorageOES), .-GL_PREFIX(EGLImageTargetRenderbufferStorageOES) @@ -33853,7 +34367,7 @@ GL_PREFIX(EGLImageTargetRenderbufferStorageOES): GL_PREFIX(EGLImageTargetTexture2DOES): #if defined(GLX_USE_TLS) call _x86_64_get_dispatch@PLT - movq 7144(%rax), %r11 + movq 7256(%rax), %r11 jmp *%r11 #elif defined(PTHREADS) pushq %rdi @@ -33863,13 +34377,13 @@ GL_PREFIX(EGLImageTargetTexture2DOES): popq %rbp popq %rsi popq %rdi - movq 7144(%rax), %r11 + movq 7256(%rax), %r11 jmp *%r11 #else movq _glapi_Dispatch(%rip), %rax testq %rax, %rax je 1f - movq 7144(%rax), %r11 + movq 7256(%rax), %r11 jmp *%r11 1: pushq %rdi @@ -33879,7 +34393,7 @@ GL_PREFIX(EGLImageTargetTexture2DOES): popq %rbp popq %rsi popq %rdi - movq 7144(%rax), %r11 + movq 7256(%rax), %r11 jmp *%r11 #endif /* defined(GLX_USE_TLS) */ .size GL_PREFIX(EGLImageTargetTexture2DOES), .-GL_PREFIX(EGLImageTargetTexture2DOES) @@ -34142,10 +34656,10 @@ GL_PREFIX(EGLImageTargetTexture2DOES): .globl GL_PREFIX(IsProgramARB) ; .set GL_PREFIX(IsProgramARB), GL_PREFIX(IsProgramNV) .globl GL_PREFIX(PointParameteri) ; .set GL_PREFIX(PointParameteri), GL_PREFIX(PointParameteriNV) .globl GL_PREFIX(PointParameteriv) ; .set GL_PREFIX(PointParameteriv), GL_PREFIX(PointParameterivNV) - .globl GL_PREFIX(DeleteVertexArrays) ; .set GL_PREFIX(DeleteVertexArrays), GL_PREFIX(_dispatch_stub_788) - .globl GL_PREFIX(IsVertexArray) ; .set GL_PREFIX(IsVertexArray), GL_PREFIX(_dispatch_stub_790) + .globl GL_PREFIX(DeleteVertexArrays) ; .set GL_PREFIX(DeleteVertexArrays), GL_PREFIX(_dispatch_stub_802) + .globl GL_PREFIX(IsVertexArray) ; .set GL_PREFIX(IsVertexArray), GL_PREFIX(_dispatch_stub_804) .globl GL_PREFIX(PrimitiveRestartIndex) ; .set GL_PREFIX(PrimitiveRestartIndex), GL_PREFIX(PrimitiveRestartIndexNV) - .globl GL_PREFIX(BlendEquationSeparate) ; .set GL_PREFIX(BlendEquationSeparate), GL_PREFIX(_dispatch_stub_800) + .globl GL_PREFIX(BlendEquationSeparate) ; .set GL_PREFIX(BlendEquationSeparate), GL_PREFIX(_dispatch_stub_814) .globl GL_PREFIX(BindFramebuffer) ; .set GL_PREFIX(BindFramebuffer), GL_PREFIX(BindFramebufferEXT) .globl GL_PREFIX(BindRenderbuffer) ; .set GL_PREFIX(BindRenderbuffer), GL_PREFIX(BindRenderbufferEXT) .globl GL_PREFIX(CheckFramebufferStatus) ; .set GL_PREFIX(CheckFramebufferStatus), GL_PREFIX(CheckFramebufferStatusEXT) @@ -34163,7 +34677,7 @@ GL_PREFIX(EGLImageTargetTexture2DOES): .globl GL_PREFIX(IsFramebuffer) ; .set GL_PREFIX(IsFramebuffer), GL_PREFIX(IsFramebufferEXT) .globl GL_PREFIX(IsRenderbuffer) ; .set GL_PREFIX(IsRenderbuffer), GL_PREFIX(IsRenderbufferEXT) .globl GL_PREFIX(RenderbufferStorage) ; .set GL_PREFIX(RenderbufferStorage), GL_PREFIX(RenderbufferStorageEXT) - .globl GL_PREFIX(BlitFramebuffer) ; .set GL_PREFIX(BlitFramebuffer), GL_PREFIX(_dispatch_stub_818) + .globl GL_PREFIX(BlitFramebuffer) ; .set GL_PREFIX(BlitFramebuffer), GL_PREFIX(_dispatch_stub_832) .globl GL_PREFIX(BindFragDataLocation) ; .set GL_PREFIX(BindFragDataLocation), GL_PREFIX(BindFragDataLocationEXT) .globl GL_PREFIX(GetFragDataLocation) ; .set GL_PREFIX(GetFragDataLocation), GL_PREFIX(GetFragDataLocationEXT) .globl GL_PREFIX(GetUniformuiv) ; .set GL_PREFIX(GetUniformuiv), GL_PREFIX(GetUniformuivEXT) diff --git a/src/mapi/glapi/glapi_x86.S b/src/mapi/glapi/glapi_x86.S index f46ac5fcd94..f56dc748dee 100644 --- a/src/mapi/glapi/glapi_x86.S +++ b/src/mapi/glapi/glapi_x86.S @@ -750,335 +750,349 @@ GLNAME(gl_dispatch_functions_start): GL_STUB(BlendEquationiARB, 597, BlendEquationiARB@8) GL_STUB(BlendFuncSeparateiARB, 598, BlendFuncSeparateiARB@20) GL_STUB(BlendFunciARB, 599, BlendFunciARB@12) - GL_STUB(BindTransformFeedback, 600, BindTransformFeedback@8) - GL_STUB(DeleteTransformFeedbacks, 601, DeleteTransformFeedbacks@8) - GL_STUB(DrawTransformFeedback, 602, DrawTransformFeedback@8) - GL_STUB(GenTransformFeedbacks, 603, GenTransformFeedbacks@8) - GL_STUB(IsTransformFeedback, 604, IsTransformFeedback@4) - GL_STUB(PauseTransformFeedback, 605, PauseTransformFeedback@0) - GL_STUB(ResumeTransformFeedback, 606, ResumeTransformFeedback@0) - GL_STUB(ClearDepthf, 607, ClearDepthf@4) - GL_STUB(DepthRangef, 608, DepthRangef@8) - GL_STUB(GetShaderPrecisionFormat, 609, GetShaderPrecisionFormat@16) - GL_STUB(ReleaseShaderCompiler, 610, ReleaseShaderCompiler@0) - GL_STUB(ShaderBinary, 611, ShaderBinary@20) - GL_STUB(PolygonOffsetEXT, 612, PolygonOffsetEXT@8) - GL_STUB(_dispatch_stub_613, 613, _dispatch_stub_613@8) - HIDDEN(GL_PREFIX(_dispatch_stub_613, _dispatch_stub_613@8)) - GL_STUB(_dispatch_stub_614, 614, _dispatch_stub_614@8) - HIDDEN(GL_PREFIX(_dispatch_stub_614, _dispatch_stub_614@8)) - GL_STUB(_dispatch_stub_615, 615, _dispatch_stub_615@8) - HIDDEN(GL_PREFIX(_dispatch_stub_615, _dispatch_stub_615@8)) - GL_STUB(_dispatch_stub_616, 616, _dispatch_stub_616@8) - HIDDEN(GL_PREFIX(_dispatch_stub_616, _dispatch_stub_616@8)) - GL_STUB(_dispatch_stub_617, 617, _dispatch_stub_617@8) - HIDDEN(GL_PREFIX(_dispatch_stub_617, _dispatch_stub_617@8)) - GL_STUB(_dispatch_stub_618, 618, _dispatch_stub_618@8) - HIDDEN(GL_PREFIX(_dispatch_stub_618, _dispatch_stub_618@8)) - GL_STUB(_dispatch_stub_619, 619, _dispatch_stub_619@8) - HIDDEN(GL_PREFIX(_dispatch_stub_619, _dispatch_stub_619@8)) - GL_STUB(_dispatch_stub_620, 620, _dispatch_stub_620@4) - HIDDEN(GL_PREFIX(_dispatch_stub_620, _dispatch_stub_620@4)) - GL_STUB(ColorPointerEXT, 621, ColorPointerEXT@20) - GL_STUB(EdgeFlagPointerEXT, 622, EdgeFlagPointerEXT@12) - GL_STUB(IndexPointerEXT, 623, IndexPointerEXT@16) - GL_STUB(NormalPointerEXT, 624, NormalPointerEXT@16) - GL_STUB(TexCoordPointerEXT, 625, TexCoordPointerEXT@20) - GL_STUB(VertexPointerEXT, 626, VertexPointerEXT@20) - GL_STUB(PointParameterfEXT, 627, PointParameterfEXT@8) - GL_STUB(PointParameterfvEXT, 628, PointParameterfvEXT@8) - GL_STUB(LockArraysEXT, 629, LockArraysEXT@8) - GL_STUB(UnlockArraysEXT, 630, UnlockArraysEXT@0) - GL_STUB(SecondaryColor3bEXT, 631, SecondaryColor3bEXT@12) - GL_STUB(SecondaryColor3bvEXT, 632, SecondaryColor3bvEXT@4) - GL_STUB(SecondaryColor3dEXT, 633, SecondaryColor3dEXT@24) - GL_STUB(SecondaryColor3dvEXT, 634, SecondaryColor3dvEXT@4) - GL_STUB(SecondaryColor3fEXT, 635, SecondaryColor3fEXT@12) - GL_STUB(SecondaryColor3fvEXT, 636, SecondaryColor3fvEXT@4) - GL_STUB(SecondaryColor3iEXT, 637, SecondaryColor3iEXT@12) - GL_STUB(SecondaryColor3ivEXT, 638, SecondaryColor3ivEXT@4) - GL_STUB(SecondaryColor3sEXT, 639, SecondaryColor3sEXT@12) - GL_STUB(SecondaryColor3svEXT, 640, SecondaryColor3svEXT@4) - GL_STUB(SecondaryColor3ubEXT, 641, SecondaryColor3ubEXT@12) - GL_STUB(SecondaryColor3ubvEXT, 642, SecondaryColor3ubvEXT@4) - GL_STUB(SecondaryColor3uiEXT, 643, SecondaryColor3uiEXT@12) - GL_STUB(SecondaryColor3uivEXT, 644, SecondaryColor3uivEXT@4) - GL_STUB(SecondaryColor3usEXT, 645, SecondaryColor3usEXT@12) - GL_STUB(SecondaryColor3usvEXT, 646, SecondaryColor3usvEXT@4) - GL_STUB(SecondaryColorPointerEXT, 647, SecondaryColorPointerEXT@16) - GL_STUB(MultiDrawArraysEXT, 648, MultiDrawArraysEXT@16) - GL_STUB(MultiDrawElementsEXT, 649, MultiDrawElementsEXT@20) - GL_STUB(FogCoordPointerEXT, 650, FogCoordPointerEXT@12) - GL_STUB(FogCoorddEXT, 651, FogCoorddEXT@8) - GL_STUB(FogCoorddvEXT, 652, FogCoorddvEXT@4) - GL_STUB(FogCoordfEXT, 653, FogCoordfEXT@4) - GL_STUB(FogCoordfvEXT, 654, FogCoordfvEXT@4) - GL_STUB(_dispatch_stub_655, 655, _dispatch_stub_655@4) - HIDDEN(GL_PREFIX(_dispatch_stub_655, _dispatch_stub_655@4)) - GL_STUB(BlendFuncSeparateEXT, 656, BlendFuncSeparateEXT@16) - GL_STUB(FlushVertexArrayRangeNV, 657, FlushVertexArrayRangeNV@0) - GL_STUB(VertexArrayRangeNV, 658, VertexArrayRangeNV@8) - GL_STUB(CombinerInputNV, 659, CombinerInputNV@24) - GL_STUB(CombinerOutputNV, 660, CombinerOutputNV@40) - GL_STUB(CombinerParameterfNV, 661, CombinerParameterfNV@8) - GL_STUB(CombinerParameterfvNV, 662, CombinerParameterfvNV@8) - GL_STUB(CombinerParameteriNV, 663, CombinerParameteriNV@8) - GL_STUB(CombinerParameterivNV, 664, CombinerParameterivNV@8) - GL_STUB(FinalCombinerInputNV, 665, FinalCombinerInputNV@16) - GL_STUB(GetCombinerInputParameterfvNV, 666, GetCombinerInputParameterfvNV@20) - GL_STUB(GetCombinerInputParameterivNV, 667, GetCombinerInputParameterivNV@20) - GL_STUB(GetCombinerOutputParameterfvNV, 668, GetCombinerOutputParameterfvNV@16) - GL_STUB(GetCombinerOutputParameterivNV, 669, GetCombinerOutputParameterivNV@16) - GL_STUB(GetFinalCombinerInputParameterfvNV, 670, GetFinalCombinerInputParameterfvNV@12) - GL_STUB(GetFinalCombinerInputParameterivNV, 671, GetFinalCombinerInputParameterivNV@12) - GL_STUB(ResizeBuffersMESA, 672, ResizeBuffersMESA@0) - GL_STUB(WindowPos2dMESA, 673, WindowPos2dMESA@16) - GL_STUB(WindowPos2dvMESA, 674, WindowPos2dvMESA@4) - GL_STUB(WindowPos2fMESA, 675, WindowPos2fMESA@8) - GL_STUB(WindowPos2fvMESA, 676, WindowPos2fvMESA@4) - GL_STUB(WindowPos2iMESA, 677, WindowPos2iMESA@8) - GL_STUB(WindowPos2ivMESA, 678, WindowPos2ivMESA@4) - GL_STUB(WindowPos2sMESA, 679, WindowPos2sMESA@8) - GL_STUB(WindowPos2svMESA, 680, WindowPos2svMESA@4) - GL_STUB(WindowPos3dMESA, 681, WindowPos3dMESA@24) - GL_STUB(WindowPos3dvMESA, 682, WindowPos3dvMESA@4) - GL_STUB(WindowPos3fMESA, 683, WindowPos3fMESA@12) - GL_STUB(WindowPos3fvMESA, 684, WindowPos3fvMESA@4) - GL_STUB(WindowPos3iMESA, 685, WindowPos3iMESA@12) - GL_STUB(WindowPos3ivMESA, 686, WindowPos3ivMESA@4) - GL_STUB(WindowPos3sMESA, 687, WindowPos3sMESA@12) - GL_STUB(WindowPos3svMESA, 688, WindowPos3svMESA@4) - GL_STUB(WindowPos4dMESA, 689, WindowPos4dMESA@32) - GL_STUB(WindowPos4dvMESA, 690, WindowPos4dvMESA@4) - GL_STUB(WindowPos4fMESA, 691, WindowPos4fMESA@16) - GL_STUB(WindowPos4fvMESA, 692, WindowPos4fvMESA@4) - GL_STUB(WindowPos4iMESA, 693, WindowPos4iMESA@16) - GL_STUB(WindowPos4ivMESA, 694, WindowPos4ivMESA@4) - GL_STUB(WindowPos4sMESA, 695, WindowPos4sMESA@16) - GL_STUB(WindowPos4svMESA, 696, WindowPos4svMESA@4) - GL_STUB(_dispatch_stub_697, 697, _dispatch_stub_697@20) - HIDDEN(GL_PREFIX(_dispatch_stub_697, _dispatch_stub_697@20)) - GL_STUB(_dispatch_stub_698, 698, _dispatch_stub_698@24) - HIDDEN(GL_PREFIX(_dispatch_stub_698, _dispatch_stub_698@24)) - GL_STUB(_dispatch_stub_699, 699, _dispatch_stub_699@8) - HIDDEN(GL_PREFIX(_dispatch_stub_699, _dispatch_stub_699@8)) - GL_STUB(_dispatch_stub_700, 700, _dispatch_stub_700@4) - HIDDEN(GL_PREFIX(_dispatch_stub_700, _dispatch_stub_700@4)) - GL_STUB(_dispatch_stub_701, 701, _dispatch_stub_701@8) - HIDDEN(GL_PREFIX(_dispatch_stub_701, _dispatch_stub_701@8)) - GL_STUB(_dispatch_stub_702, 702, _dispatch_stub_702@12) - HIDDEN(GL_PREFIX(_dispatch_stub_702, _dispatch_stub_702@12)) - GL_STUB(_dispatch_stub_703, 703, _dispatch_stub_703@4) - HIDDEN(GL_PREFIX(_dispatch_stub_703, _dispatch_stub_703@4)) - GL_STUB(_dispatch_stub_704, 704, _dispatch_stub_704@8) - HIDDEN(GL_PREFIX(_dispatch_stub_704, _dispatch_stub_704@8)) - GL_STUB(_dispatch_stub_705, 705, _dispatch_stub_705@4) - HIDDEN(GL_PREFIX(_dispatch_stub_705, _dispatch_stub_705@4)) - GL_STUB(AreProgramsResidentNV, 706, AreProgramsResidentNV@12) - GL_STUB(BindProgramNV, 707, BindProgramNV@8) - GL_STUB(DeleteProgramsNV, 708, DeleteProgramsNV@8) - GL_STUB(ExecuteProgramNV, 709, ExecuteProgramNV@12) - GL_STUB(GenProgramsNV, 710, GenProgramsNV@8) - GL_STUB(GetProgramParameterdvNV, 711, GetProgramParameterdvNV@16) - GL_STUB(GetProgramParameterfvNV, 712, GetProgramParameterfvNV@16) - GL_STUB(GetProgramStringNV, 713, GetProgramStringNV@12) - GL_STUB(GetProgramivNV, 714, GetProgramivNV@12) - GL_STUB(GetTrackMatrixivNV, 715, GetTrackMatrixivNV@16) - GL_STUB(GetVertexAttribPointervNV, 716, GetVertexAttribPointervNV@12) - GL_STUB(GetVertexAttribdvNV, 717, GetVertexAttribdvNV@12) - GL_STUB(GetVertexAttribfvNV, 718, GetVertexAttribfvNV@12) - GL_STUB(GetVertexAttribivNV, 719, GetVertexAttribivNV@12) - GL_STUB(IsProgramNV, 720, IsProgramNV@4) - GL_STUB(LoadProgramNV, 721, LoadProgramNV@16) - GL_STUB(ProgramParameters4dvNV, 722, ProgramParameters4dvNV@16) - GL_STUB(ProgramParameters4fvNV, 723, ProgramParameters4fvNV@16) - GL_STUB(RequestResidentProgramsNV, 724, RequestResidentProgramsNV@8) - GL_STUB(TrackMatrixNV, 725, TrackMatrixNV@16) - GL_STUB(VertexAttrib1dNV, 726, VertexAttrib1dNV@12) - GL_STUB(VertexAttrib1dvNV, 727, VertexAttrib1dvNV@8) - GL_STUB(VertexAttrib1fNV, 728, VertexAttrib1fNV@8) - GL_STUB(VertexAttrib1fvNV, 729, VertexAttrib1fvNV@8) - GL_STUB(VertexAttrib1sNV, 730, VertexAttrib1sNV@8) - GL_STUB(VertexAttrib1svNV, 731, VertexAttrib1svNV@8) - GL_STUB(VertexAttrib2dNV, 732, VertexAttrib2dNV@20) - GL_STUB(VertexAttrib2dvNV, 733, VertexAttrib2dvNV@8) - GL_STUB(VertexAttrib2fNV, 734, VertexAttrib2fNV@12) - GL_STUB(VertexAttrib2fvNV, 735, VertexAttrib2fvNV@8) - GL_STUB(VertexAttrib2sNV, 736, VertexAttrib2sNV@12) - GL_STUB(VertexAttrib2svNV, 737, VertexAttrib2svNV@8) - GL_STUB(VertexAttrib3dNV, 738, VertexAttrib3dNV@28) - GL_STUB(VertexAttrib3dvNV, 739, VertexAttrib3dvNV@8) - GL_STUB(VertexAttrib3fNV, 740, VertexAttrib3fNV@16) - GL_STUB(VertexAttrib3fvNV, 741, VertexAttrib3fvNV@8) - GL_STUB(VertexAttrib3sNV, 742, VertexAttrib3sNV@16) - GL_STUB(VertexAttrib3svNV, 743, VertexAttrib3svNV@8) - GL_STUB(VertexAttrib4dNV, 744, VertexAttrib4dNV@36) - GL_STUB(VertexAttrib4dvNV, 745, VertexAttrib4dvNV@8) - GL_STUB(VertexAttrib4fNV, 746, VertexAttrib4fNV@20) - GL_STUB(VertexAttrib4fvNV, 747, VertexAttrib4fvNV@8) - GL_STUB(VertexAttrib4sNV, 748, VertexAttrib4sNV@20) - GL_STUB(VertexAttrib4svNV, 749, VertexAttrib4svNV@8) - GL_STUB(VertexAttrib4ubNV, 750, VertexAttrib4ubNV@20) - GL_STUB(VertexAttrib4ubvNV, 751, VertexAttrib4ubvNV@8) - GL_STUB(VertexAttribPointerNV, 752, VertexAttribPointerNV@20) - GL_STUB(VertexAttribs1dvNV, 753, VertexAttribs1dvNV@12) - GL_STUB(VertexAttribs1fvNV, 754, VertexAttribs1fvNV@12) - GL_STUB(VertexAttribs1svNV, 755, VertexAttribs1svNV@12) - GL_STUB(VertexAttribs2dvNV, 756, VertexAttribs2dvNV@12) - GL_STUB(VertexAttribs2fvNV, 757, VertexAttribs2fvNV@12) - GL_STUB(VertexAttribs2svNV, 758, VertexAttribs2svNV@12) - GL_STUB(VertexAttribs3dvNV, 759, VertexAttribs3dvNV@12) - GL_STUB(VertexAttribs3fvNV, 760, VertexAttribs3fvNV@12) - GL_STUB(VertexAttribs3svNV, 761, VertexAttribs3svNV@12) - GL_STUB(VertexAttribs4dvNV, 762, VertexAttribs4dvNV@12) - GL_STUB(VertexAttribs4fvNV, 763, VertexAttribs4fvNV@12) - GL_STUB(VertexAttribs4svNV, 764, VertexAttribs4svNV@12) - GL_STUB(VertexAttribs4ubvNV, 765, VertexAttribs4ubvNV@12) - GL_STUB(GetTexBumpParameterfvATI, 766, GetTexBumpParameterfvATI@8) - GL_STUB(GetTexBumpParameterivATI, 767, GetTexBumpParameterivATI@8) - GL_STUB(TexBumpParameterfvATI, 768, TexBumpParameterfvATI@8) - GL_STUB(TexBumpParameterivATI, 769, TexBumpParameterivATI@8) - GL_STUB(AlphaFragmentOp1ATI, 770, AlphaFragmentOp1ATI@24) - GL_STUB(AlphaFragmentOp2ATI, 771, AlphaFragmentOp2ATI@36) - GL_STUB(AlphaFragmentOp3ATI, 772, AlphaFragmentOp3ATI@48) - GL_STUB(BeginFragmentShaderATI, 773, BeginFragmentShaderATI@0) - GL_STUB(BindFragmentShaderATI, 774, BindFragmentShaderATI@4) - GL_STUB(ColorFragmentOp1ATI, 775, ColorFragmentOp1ATI@28) - GL_STUB(ColorFragmentOp2ATI, 776, ColorFragmentOp2ATI@40) - GL_STUB(ColorFragmentOp3ATI, 777, ColorFragmentOp3ATI@52) - GL_STUB(DeleteFragmentShaderATI, 778, DeleteFragmentShaderATI@4) - GL_STUB(EndFragmentShaderATI, 779, EndFragmentShaderATI@0) - GL_STUB(GenFragmentShadersATI, 780, GenFragmentShadersATI@4) - GL_STUB(PassTexCoordATI, 781, PassTexCoordATI@12) - GL_STUB(SampleMapATI, 782, SampleMapATI@12) - GL_STUB(SetFragmentShaderConstantATI, 783, SetFragmentShaderConstantATI@8) - GL_STUB(PointParameteriNV, 784, PointParameteriNV@8) - GL_STUB(PointParameterivNV, 785, PointParameterivNV@8) - GL_STUB(_dispatch_stub_786, 786, _dispatch_stub_786@4) - HIDDEN(GL_PREFIX(_dispatch_stub_786, _dispatch_stub_786@4)) - GL_STUB(_dispatch_stub_787, 787, _dispatch_stub_787@4) - HIDDEN(GL_PREFIX(_dispatch_stub_787, _dispatch_stub_787@4)) - GL_STUB(_dispatch_stub_788, 788, _dispatch_stub_788@8) - HIDDEN(GL_PREFIX(_dispatch_stub_788, _dispatch_stub_788@8)) - GL_STUB(_dispatch_stub_789, 789, _dispatch_stub_789@8) - HIDDEN(GL_PREFIX(_dispatch_stub_789, _dispatch_stub_789@8)) - GL_STUB(_dispatch_stub_790, 790, _dispatch_stub_790@4) - HIDDEN(GL_PREFIX(_dispatch_stub_790, _dispatch_stub_790@4)) - GL_STUB(GetProgramNamedParameterdvNV, 791, GetProgramNamedParameterdvNV@16) - GL_STUB(GetProgramNamedParameterfvNV, 792, GetProgramNamedParameterfvNV@16) - GL_STUB(ProgramNamedParameter4dNV, 793, ProgramNamedParameter4dNV@44) - GL_STUB(ProgramNamedParameter4dvNV, 794, ProgramNamedParameter4dvNV@16) - GL_STUB(ProgramNamedParameter4fNV, 795, ProgramNamedParameter4fNV@28) - GL_STUB(ProgramNamedParameter4fvNV, 796, ProgramNamedParameter4fvNV@16) - GL_STUB(PrimitiveRestartIndexNV, 797, PrimitiveRestartIndexNV@4) - GL_STUB(PrimitiveRestartNV, 798, PrimitiveRestartNV@0) - GL_STUB(_dispatch_stub_799, 799, _dispatch_stub_799@16) - HIDDEN(GL_PREFIX(_dispatch_stub_799, _dispatch_stub_799@16)) - GL_STUB(_dispatch_stub_800, 800, _dispatch_stub_800@8) - HIDDEN(GL_PREFIX(_dispatch_stub_800, _dispatch_stub_800@8)) - GL_STUB(BindFramebufferEXT, 801, BindFramebufferEXT@8) - GL_STUB(BindRenderbufferEXT, 802, BindRenderbufferEXT@8) - GL_STUB(CheckFramebufferStatusEXT, 803, CheckFramebufferStatusEXT@4) - GL_STUB(DeleteFramebuffersEXT, 804, DeleteFramebuffersEXT@8) - GL_STUB(DeleteRenderbuffersEXT, 805, DeleteRenderbuffersEXT@8) - GL_STUB(FramebufferRenderbufferEXT, 806, FramebufferRenderbufferEXT@16) - GL_STUB(FramebufferTexture1DEXT, 807, FramebufferTexture1DEXT@20) - GL_STUB(FramebufferTexture2DEXT, 808, FramebufferTexture2DEXT@20) - GL_STUB(FramebufferTexture3DEXT, 809, FramebufferTexture3DEXT@24) - GL_STUB(GenFramebuffersEXT, 810, GenFramebuffersEXT@8) - GL_STUB(GenRenderbuffersEXT, 811, GenRenderbuffersEXT@8) - GL_STUB(GenerateMipmapEXT, 812, GenerateMipmapEXT@4) - GL_STUB(GetFramebufferAttachmentParameterivEXT, 813, GetFramebufferAttachmentParameterivEXT@16) - GL_STUB(GetRenderbufferParameterivEXT, 814, GetRenderbufferParameterivEXT@12) - GL_STUB(IsFramebufferEXT, 815, IsFramebufferEXT@4) - GL_STUB(IsRenderbufferEXT, 816, IsRenderbufferEXT@4) - GL_STUB(RenderbufferStorageEXT, 817, RenderbufferStorageEXT@16) - GL_STUB(_dispatch_stub_818, 818, _dispatch_stub_818@40) - HIDDEN(GL_PREFIX(_dispatch_stub_818, _dispatch_stub_818@40)) - GL_STUB(_dispatch_stub_819, 819, _dispatch_stub_819@12) - HIDDEN(GL_PREFIX(_dispatch_stub_819, _dispatch_stub_819@12)) - GL_STUB(_dispatch_stub_820, 820, _dispatch_stub_820@12) - HIDDEN(GL_PREFIX(_dispatch_stub_820, _dispatch_stub_820@12)) - GL_STUB(BindFragDataLocationEXT, 821, BindFragDataLocationEXT@12) - GL_STUB(GetFragDataLocationEXT, 822, GetFragDataLocationEXT@8) - GL_STUB(GetUniformuivEXT, 823, GetUniformuivEXT@12) - GL_STUB(GetVertexAttribIivEXT, 824, GetVertexAttribIivEXT@12) - GL_STUB(GetVertexAttribIuivEXT, 825, GetVertexAttribIuivEXT@12) - GL_STUB(Uniform1uiEXT, 826, Uniform1uiEXT@8) - GL_STUB(Uniform1uivEXT, 827, Uniform1uivEXT@12) - GL_STUB(Uniform2uiEXT, 828, Uniform2uiEXT@12) - GL_STUB(Uniform2uivEXT, 829, Uniform2uivEXT@12) - GL_STUB(Uniform3uiEXT, 830, Uniform3uiEXT@16) - GL_STUB(Uniform3uivEXT, 831, Uniform3uivEXT@12) - GL_STUB(Uniform4uiEXT, 832, Uniform4uiEXT@20) - GL_STUB(Uniform4uivEXT, 833, Uniform4uivEXT@12) - GL_STUB(VertexAttribI1iEXT, 834, VertexAttribI1iEXT@8) - GL_STUB(VertexAttribI1ivEXT, 835, VertexAttribI1ivEXT@8) - GL_STUB(VertexAttribI1uiEXT, 836, VertexAttribI1uiEXT@8) - GL_STUB(VertexAttribI1uivEXT, 837, VertexAttribI1uivEXT@8) - GL_STUB(VertexAttribI2iEXT, 838, VertexAttribI2iEXT@12) - GL_STUB(VertexAttribI2ivEXT, 839, VertexAttribI2ivEXT@8) - GL_STUB(VertexAttribI2uiEXT, 840, VertexAttribI2uiEXT@12) - GL_STUB(VertexAttribI2uivEXT, 841, VertexAttribI2uivEXT@8) - GL_STUB(VertexAttribI3iEXT, 842, VertexAttribI3iEXT@16) - GL_STUB(VertexAttribI3ivEXT, 843, VertexAttribI3ivEXT@8) - GL_STUB(VertexAttribI3uiEXT, 844, VertexAttribI3uiEXT@16) - GL_STUB(VertexAttribI3uivEXT, 845, VertexAttribI3uivEXT@8) - GL_STUB(VertexAttribI4bvEXT, 846, VertexAttribI4bvEXT@8) - GL_STUB(VertexAttribI4iEXT, 847, VertexAttribI4iEXT@20) - GL_STUB(VertexAttribI4ivEXT, 848, VertexAttribI4ivEXT@8) - GL_STUB(VertexAttribI4svEXT, 849, VertexAttribI4svEXT@8) - GL_STUB(VertexAttribI4ubvEXT, 850, VertexAttribI4ubvEXT@8) - GL_STUB(VertexAttribI4uiEXT, 851, VertexAttribI4uiEXT@20) - GL_STUB(VertexAttribI4uivEXT, 852, VertexAttribI4uivEXT@8) - GL_STUB(VertexAttribI4usvEXT, 853, VertexAttribI4usvEXT@8) - GL_STUB(VertexAttribIPointerEXT, 854, VertexAttribIPointerEXT@20) - GL_STUB(FramebufferTextureLayerEXT, 855, FramebufferTextureLayerEXT@20) - GL_STUB(ColorMaskIndexedEXT, 856, ColorMaskIndexedEXT@20) - GL_STUB(DisableIndexedEXT, 857, DisableIndexedEXT@8) - GL_STUB(EnableIndexedEXT, 858, EnableIndexedEXT@8) - GL_STUB(GetBooleanIndexedvEXT, 859, GetBooleanIndexedvEXT@12) - GL_STUB(GetIntegerIndexedvEXT, 860, GetIntegerIndexedvEXT@12) - GL_STUB(IsEnabledIndexedEXT, 861, IsEnabledIndexedEXT@8) - GL_STUB(ClearColorIiEXT, 862, ClearColorIiEXT@16) - GL_STUB(ClearColorIuiEXT, 863, ClearColorIuiEXT@16) - GL_STUB(GetTexParameterIivEXT, 864, GetTexParameterIivEXT@12) - GL_STUB(GetTexParameterIuivEXT, 865, GetTexParameterIuivEXT@12) - GL_STUB(TexParameterIivEXT, 866, TexParameterIivEXT@12) - GL_STUB(TexParameterIuivEXT, 867, TexParameterIuivEXT@12) - GL_STUB(BeginConditionalRenderNV, 868, BeginConditionalRenderNV@8) - GL_STUB(EndConditionalRenderNV, 869, EndConditionalRenderNV@0) - GL_STUB(BeginTransformFeedbackEXT, 870, BeginTransformFeedbackEXT@4) - GL_STUB(BindBufferBaseEXT, 871, BindBufferBaseEXT@12) - GL_STUB(BindBufferOffsetEXT, 872, BindBufferOffsetEXT@16) - GL_STUB(BindBufferRangeEXT, 873, BindBufferRangeEXT@20) - GL_STUB(EndTransformFeedbackEXT, 874, EndTransformFeedbackEXT@0) - GL_STUB(GetTransformFeedbackVaryingEXT, 875, GetTransformFeedbackVaryingEXT@28) - GL_STUB(TransformFeedbackVaryingsEXT, 876, TransformFeedbackVaryingsEXT@16) - GL_STUB(ProvokingVertexEXT, 877, ProvokingVertexEXT@4) - GL_STUB(_dispatch_stub_878, 878, _dispatch_stub_878@12) - HIDDEN(GL_PREFIX(_dispatch_stub_878, _dispatch_stub_878@12)) - GL_STUB(_dispatch_stub_879, 879, _dispatch_stub_879@12) - HIDDEN(GL_PREFIX(_dispatch_stub_879, _dispatch_stub_879@12)) - GL_STUB(GetObjectParameterivAPPLE, 880, GetObjectParameterivAPPLE@16) - GL_STUB(ObjectPurgeableAPPLE, 881, ObjectPurgeableAPPLE@12) - GL_STUB(ObjectUnpurgeableAPPLE, 882, ObjectUnpurgeableAPPLE@12) - GL_STUB(ActiveProgramEXT, 883, ActiveProgramEXT@4) - GL_STUB(CreateShaderProgramEXT, 884, CreateShaderProgramEXT@8) - GL_STUB(UseShaderProgramEXT, 885, UseShaderProgramEXT@8) - GL_STUB(TextureBarrierNV, 886, TextureBarrierNV@0) - GL_STUB(_dispatch_stub_887, 887, _dispatch_stub_887@16) - HIDDEN(GL_PREFIX(_dispatch_stub_887, _dispatch_stub_887@16)) - GL_STUB(_dispatch_stub_888, 888, _dispatch_stub_888@16) - HIDDEN(GL_PREFIX(_dispatch_stub_888, _dispatch_stub_888@16)) - GL_STUB(_dispatch_stub_889, 889, _dispatch_stub_889@16) - HIDDEN(GL_PREFIX(_dispatch_stub_889, _dispatch_stub_889@16)) - GL_STUB(_dispatch_stub_890, 890, _dispatch_stub_890@12) - HIDDEN(GL_PREFIX(_dispatch_stub_890, _dispatch_stub_890@12)) - GL_STUB(_dispatch_stub_891, 891, _dispatch_stub_891@12) - HIDDEN(GL_PREFIX(_dispatch_stub_891, _dispatch_stub_891@12)) - GL_STUB(EGLImageTargetRenderbufferStorageOES, 892, EGLImageTargetRenderbufferStorageOES@8) - GL_STUB(EGLImageTargetTexture2DOES, 893, EGLImageTargetTexture2DOES@8) + GL_STUB(BindSampler, 600, BindSampler@8) + GL_STUB(DeleteSamplers, 601, DeleteSamplers@8) + GL_STUB(GenSamplers, 602, GenSamplers@8) + GL_STUB(GetSamplerParameterIiv, 603, GetSamplerParameterIiv@12) + GL_STUB(GetSamplerParameterIuiv, 604, GetSamplerParameterIuiv@12) + GL_STUB(GetSamplerParameterfv, 605, GetSamplerParameterfv@12) + GL_STUB(GetSamplerParameteriv, 606, GetSamplerParameteriv@12) + GL_STUB(IsSampler, 607, IsSampler@4) + GL_STUB(SamplerParameterIiv, 608, SamplerParameterIiv@12) + GL_STUB(SamplerParameterIuiv, 609, SamplerParameterIuiv@12) + GL_STUB(SamplerParameterf, 610, SamplerParameterf@12) + GL_STUB(SamplerParameterfv, 611, SamplerParameterfv@12) + GL_STUB(SamplerParameteri, 612, SamplerParameteri@12) + GL_STUB(SamplerParameteriv, 613, SamplerParameteriv@12) + GL_STUB(BindTransformFeedback, 614, BindTransformFeedback@8) + GL_STUB(DeleteTransformFeedbacks, 615, DeleteTransformFeedbacks@8) + GL_STUB(DrawTransformFeedback, 616, DrawTransformFeedback@8) + GL_STUB(GenTransformFeedbacks, 617, GenTransformFeedbacks@8) + GL_STUB(IsTransformFeedback, 618, IsTransformFeedback@4) + GL_STUB(PauseTransformFeedback, 619, PauseTransformFeedback@0) + GL_STUB(ResumeTransformFeedback, 620, ResumeTransformFeedback@0) + GL_STUB(ClearDepthf, 621, ClearDepthf@4) + GL_STUB(DepthRangef, 622, DepthRangef@8) + GL_STUB(GetShaderPrecisionFormat, 623, GetShaderPrecisionFormat@16) + GL_STUB(ReleaseShaderCompiler, 624, ReleaseShaderCompiler@0) + GL_STUB(ShaderBinary, 625, ShaderBinary@20) + GL_STUB(PolygonOffsetEXT, 626, PolygonOffsetEXT@8) + GL_STUB(_dispatch_stub_627, 627, _dispatch_stub_627@8) + HIDDEN(GL_PREFIX(_dispatch_stub_627, _dispatch_stub_627@8)) + GL_STUB(_dispatch_stub_628, 628, _dispatch_stub_628@8) + HIDDEN(GL_PREFIX(_dispatch_stub_628, _dispatch_stub_628@8)) + GL_STUB(_dispatch_stub_629, 629, _dispatch_stub_629@8) + HIDDEN(GL_PREFIX(_dispatch_stub_629, _dispatch_stub_629@8)) + GL_STUB(_dispatch_stub_630, 630, _dispatch_stub_630@8) + HIDDEN(GL_PREFIX(_dispatch_stub_630, _dispatch_stub_630@8)) + GL_STUB(_dispatch_stub_631, 631, _dispatch_stub_631@8) + HIDDEN(GL_PREFIX(_dispatch_stub_631, _dispatch_stub_631@8)) + GL_STUB(_dispatch_stub_632, 632, _dispatch_stub_632@8) + HIDDEN(GL_PREFIX(_dispatch_stub_632, _dispatch_stub_632@8)) + GL_STUB(_dispatch_stub_633, 633, _dispatch_stub_633@8) + HIDDEN(GL_PREFIX(_dispatch_stub_633, _dispatch_stub_633@8)) + GL_STUB(_dispatch_stub_634, 634, _dispatch_stub_634@4) + HIDDEN(GL_PREFIX(_dispatch_stub_634, _dispatch_stub_634@4)) + GL_STUB(ColorPointerEXT, 635, ColorPointerEXT@20) + GL_STUB(EdgeFlagPointerEXT, 636, EdgeFlagPointerEXT@12) + GL_STUB(IndexPointerEXT, 637, IndexPointerEXT@16) + GL_STUB(NormalPointerEXT, 638, NormalPointerEXT@16) + GL_STUB(TexCoordPointerEXT, 639, TexCoordPointerEXT@20) + GL_STUB(VertexPointerEXT, 640, VertexPointerEXT@20) + GL_STUB(PointParameterfEXT, 641, PointParameterfEXT@8) + GL_STUB(PointParameterfvEXT, 642, PointParameterfvEXT@8) + GL_STUB(LockArraysEXT, 643, LockArraysEXT@8) + GL_STUB(UnlockArraysEXT, 644, UnlockArraysEXT@0) + GL_STUB(SecondaryColor3bEXT, 645, SecondaryColor3bEXT@12) + GL_STUB(SecondaryColor3bvEXT, 646, SecondaryColor3bvEXT@4) + GL_STUB(SecondaryColor3dEXT, 647, SecondaryColor3dEXT@24) + GL_STUB(SecondaryColor3dvEXT, 648, SecondaryColor3dvEXT@4) + GL_STUB(SecondaryColor3fEXT, 649, SecondaryColor3fEXT@12) + GL_STUB(SecondaryColor3fvEXT, 650, SecondaryColor3fvEXT@4) + GL_STUB(SecondaryColor3iEXT, 651, SecondaryColor3iEXT@12) + GL_STUB(SecondaryColor3ivEXT, 652, SecondaryColor3ivEXT@4) + GL_STUB(SecondaryColor3sEXT, 653, SecondaryColor3sEXT@12) + GL_STUB(SecondaryColor3svEXT, 654, SecondaryColor3svEXT@4) + GL_STUB(SecondaryColor3ubEXT, 655, SecondaryColor3ubEXT@12) + GL_STUB(SecondaryColor3ubvEXT, 656, SecondaryColor3ubvEXT@4) + GL_STUB(SecondaryColor3uiEXT, 657, SecondaryColor3uiEXT@12) + GL_STUB(SecondaryColor3uivEXT, 658, SecondaryColor3uivEXT@4) + GL_STUB(SecondaryColor3usEXT, 659, SecondaryColor3usEXT@12) + GL_STUB(SecondaryColor3usvEXT, 660, SecondaryColor3usvEXT@4) + GL_STUB(SecondaryColorPointerEXT, 661, SecondaryColorPointerEXT@16) + GL_STUB(MultiDrawArraysEXT, 662, MultiDrawArraysEXT@16) + GL_STUB(MultiDrawElementsEXT, 663, MultiDrawElementsEXT@20) + GL_STUB(FogCoordPointerEXT, 664, FogCoordPointerEXT@12) + GL_STUB(FogCoorddEXT, 665, FogCoorddEXT@8) + GL_STUB(FogCoorddvEXT, 666, FogCoorddvEXT@4) + GL_STUB(FogCoordfEXT, 667, FogCoordfEXT@4) + GL_STUB(FogCoordfvEXT, 668, FogCoordfvEXT@4) + GL_STUB(_dispatch_stub_669, 669, _dispatch_stub_669@4) + HIDDEN(GL_PREFIX(_dispatch_stub_669, _dispatch_stub_669@4)) + GL_STUB(BlendFuncSeparateEXT, 670, BlendFuncSeparateEXT@16) + GL_STUB(FlushVertexArrayRangeNV, 671, FlushVertexArrayRangeNV@0) + GL_STUB(VertexArrayRangeNV, 672, VertexArrayRangeNV@8) + GL_STUB(CombinerInputNV, 673, CombinerInputNV@24) + GL_STUB(CombinerOutputNV, 674, CombinerOutputNV@40) + GL_STUB(CombinerParameterfNV, 675, CombinerParameterfNV@8) + GL_STUB(CombinerParameterfvNV, 676, CombinerParameterfvNV@8) + GL_STUB(CombinerParameteriNV, 677, CombinerParameteriNV@8) + GL_STUB(CombinerParameterivNV, 678, CombinerParameterivNV@8) + GL_STUB(FinalCombinerInputNV, 679, FinalCombinerInputNV@16) + GL_STUB(GetCombinerInputParameterfvNV, 680, GetCombinerInputParameterfvNV@20) + GL_STUB(GetCombinerInputParameterivNV, 681, GetCombinerInputParameterivNV@20) + GL_STUB(GetCombinerOutputParameterfvNV, 682, GetCombinerOutputParameterfvNV@16) + GL_STUB(GetCombinerOutputParameterivNV, 683, GetCombinerOutputParameterivNV@16) + GL_STUB(GetFinalCombinerInputParameterfvNV, 684, GetFinalCombinerInputParameterfvNV@12) + GL_STUB(GetFinalCombinerInputParameterivNV, 685, GetFinalCombinerInputParameterivNV@12) + GL_STUB(ResizeBuffersMESA, 686, ResizeBuffersMESA@0) + GL_STUB(WindowPos2dMESA, 687, WindowPos2dMESA@16) + GL_STUB(WindowPos2dvMESA, 688, WindowPos2dvMESA@4) + GL_STUB(WindowPos2fMESA, 689, WindowPos2fMESA@8) + GL_STUB(WindowPos2fvMESA, 690, WindowPos2fvMESA@4) + GL_STUB(WindowPos2iMESA, 691, WindowPos2iMESA@8) + GL_STUB(WindowPos2ivMESA, 692, WindowPos2ivMESA@4) + GL_STUB(WindowPos2sMESA, 693, WindowPos2sMESA@8) + GL_STUB(WindowPos2svMESA, 694, WindowPos2svMESA@4) + GL_STUB(WindowPos3dMESA, 695, WindowPos3dMESA@24) + GL_STUB(WindowPos3dvMESA, 696, WindowPos3dvMESA@4) + GL_STUB(WindowPos3fMESA, 697, WindowPos3fMESA@12) + GL_STUB(WindowPos3fvMESA, 698, WindowPos3fvMESA@4) + GL_STUB(WindowPos3iMESA, 699, WindowPos3iMESA@12) + GL_STUB(WindowPos3ivMESA, 700, WindowPos3ivMESA@4) + GL_STUB(WindowPos3sMESA, 701, WindowPos3sMESA@12) + GL_STUB(WindowPos3svMESA, 702, WindowPos3svMESA@4) + GL_STUB(WindowPos4dMESA, 703, WindowPos4dMESA@32) + GL_STUB(WindowPos4dvMESA, 704, WindowPos4dvMESA@4) + GL_STUB(WindowPos4fMESA, 705, WindowPos4fMESA@16) + GL_STUB(WindowPos4fvMESA, 706, WindowPos4fvMESA@4) + GL_STUB(WindowPos4iMESA, 707, WindowPos4iMESA@16) + GL_STUB(WindowPos4ivMESA, 708, WindowPos4ivMESA@4) + GL_STUB(WindowPos4sMESA, 709, WindowPos4sMESA@16) + GL_STUB(WindowPos4svMESA, 710, WindowPos4svMESA@4) + GL_STUB(_dispatch_stub_711, 711, _dispatch_stub_711@20) + HIDDEN(GL_PREFIX(_dispatch_stub_711, _dispatch_stub_711@20)) + GL_STUB(_dispatch_stub_712, 712, _dispatch_stub_712@24) + HIDDEN(GL_PREFIX(_dispatch_stub_712, _dispatch_stub_712@24)) + GL_STUB(_dispatch_stub_713, 713, _dispatch_stub_713@8) + HIDDEN(GL_PREFIX(_dispatch_stub_713, _dispatch_stub_713@8)) + GL_STUB(_dispatch_stub_714, 714, _dispatch_stub_714@4) + HIDDEN(GL_PREFIX(_dispatch_stub_714, _dispatch_stub_714@4)) + GL_STUB(_dispatch_stub_715, 715, _dispatch_stub_715@8) + HIDDEN(GL_PREFIX(_dispatch_stub_715, _dispatch_stub_715@8)) + GL_STUB(_dispatch_stub_716, 716, _dispatch_stub_716@12) + HIDDEN(GL_PREFIX(_dispatch_stub_716, _dispatch_stub_716@12)) + GL_STUB(_dispatch_stub_717, 717, _dispatch_stub_717@4) + HIDDEN(GL_PREFIX(_dispatch_stub_717, _dispatch_stub_717@4)) + GL_STUB(_dispatch_stub_718, 718, _dispatch_stub_718@8) + HIDDEN(GL_PREFIX(_dispatch_stub_718, _dispatch_stub_718@8)) + GL_STUB(_dispatch_stub_719, 719, _dispatch_stub_719@4) + HIDDEN(GL_PREFIX(_dispatch_stub_719, _dispatch_stub_719@4)) + GL_STUB(AreProgramsResidentNV, 720, AreProgramsResidentNV@12) + GL_STUB(BindProgramNV, 721, BindProgramNV@8) + GL_STUB(DeleteProgramsNV, 722, DeleteProgramsNV@8) + GL_STUB(ExecuteProgramNV, 723, ExecuteProgramNV@12) + GL_STUB(GenProgramsNV, 724, GenProgramsNV@8) + GL_STUB(GetProgramParameterdvNV, 725, GetProgramParameterdvNV@16) + GL_STUB(GetProgramParameterfvNV, 726, GetProgramParameterfvNV@16) + GL_STUB(GetProgramStringNV, 727, GetProgramStringNV@12) + GL_STUB(GetProgramivNV, 728, GetProgramivNV@12) + GL_STUB(GetTrackMatrixivNV, 729, GetTrackMatrixivNV@16) + GL_STUB(GetVertexAttribPointervNV, 730, GetVertexAttribPointervNV@12) + GL_STUB(GetVertexAttribdvNV, 731, GetVertexAttribdvNV@12) + GL_STUB(GetVertexAttribfvNV, 732, GetVertexAttribfvNV@12) + GL_STUB(GetVertexAttribivNV, 733, GetVertexAttribivNV@12) + GL_STUB(IsProgramNV, 734, IsProgramNV@4) + GL_STUB(LoadProgramNV, 735, LoadProgramNV@16) + GL_STUB(ProgramParameters4dvNV, 736, ProgramParameters4dvNV@16) + GL_STUB(ProgramParameters4fvNV, 737, ProgramParameters4fvNV@16) + GL_STUB(RequestResidentProgramsNV, 738, RequestResidentProgramsNV@8) + GL_STUB(TrackMatrixNV, 739, TrackMatrixNV@16) + GL_STUB(VertexAttrib1dNV, 740, VertexAttrib1dNV@12) + GL_STUB(VertexAttrib1dvNV, 741, VertexAttrib1dvNV@8) + GL_STUB(VertexAttrib1fNV, 742, VertexAttrib1fNV@8) + GL_STUB(VertexAttrib1fvNV, 743, VertexAttrib1fvNV@8) + GL_STUB(VertexAttrib1sNV, 744, VertexAttrib1sNV@8) + GL_STUB(VertexAttrib1svNV, 745, VertexAttrib1svNV@8) + GL_STUB(VertexAttrib2dNV, 746, VertexAttrib2dNV@20) + GL_STUB(VertexAttrib2dvNV, 747, VertexAttrib2dvNV@8) + GL_STUB(VertexAttrib2fNV, 748, VertexAttrib2fNV@12) + GL_STUB(VertexAttrib2fvNV, 749, VertexAttrib2fvNV@8) + GL_STUB(VertexAttrib2sNV, 750, VertexAttrib2sNV@12) + GL_STUB(VertexAttrib2svNV, 751, VertexAttrib2svNV@8) + GL_STUB(VertexAttrib3dNV, 752, VertexAttrib3dNV@28) + GL_STUB(VertexAttrib3dvNV, 753, VertexAttrib3dvNV@8) + GL_STUB(VertexAttrib3fNV, 754, VertexAttrib3fNV@16) + GL_STUB(VertexAttrib3fvNV, 755, VertexAttrib3fvNV@8) + GL_STUB(VertexAttrib3sNV, 756, VertexAttrib3sNV@16) + GL_STUB(VertexAttrib3svNV, 757, VertexAttrib3svNV@8) + GL_STUB(VertexAttrib4dNV, 758, VertexAttrib4dNV@36) + GL_STUB(VertexAttrib4dvNV, 759, VertexAttrib4dvNV@8) + GL_STUB(VertexAttrib4fNV, 760, VertexAttrib4fNV@20) + GL_STUB(VertexAttrib4fvNV, 761, VertexAttrib4fvNV@8) + GL_STUB(VertexAttrib4sNV, 762, VertexAttrib4sNV@20) + GL_STUB(VertexAttrib4svNV, 763, VertexAttrib4svNV@8) + GL_STUB(VertexAttrib4ubNV, 764, VertexAttrib4ubNV@20) + GL_STUB(VertexAttrib4ubvNV, 765, VertexAttrib4ubvNV@8) + GL_STUB(VertexAttribPointerNV, 766, VertexAttribPointerNV@20) + GL_STUB(VertexAttribs1dvNV, 767, VertexAttribs1dvNV@12) + GL_STUB(VertexAttribs1fvNV, 768, VertexAttribs1fvNV@12) + GL_STUB(VertexAttribs1svNV, 769, VertexAttribs1svNV@12) + GL_STUB(VertexAttribs2dvNV, 770, VertexAttribs2dvNV@12) + GL_STUB(VertexAttribs2fvNV, 771, VertexAttribs2fvNV@12) + GL_STUB(VertexAttribs2svNV, 772, VertexAttribs2svNV@12) + GL_STUB(VertexAttribs3dvNV, 773, VertexAttribs3dvNV@12) + GL_STUB(VertexAttribs3fvNV, 774, VertexAttribs3fvNV@12) + GL_STUB(VertexAttribs3svNV, 775, VertexAttribs3svNV@12) + GL_STUB(VertexAttribs4dvNV, 776, VertexAttribs4dvNV@12) + GL_STUB(VertexAttribs4fvNV, 777, VertexAttribs4fvNV@12) + GL_STUB(VertexAttribs4svNV, 778, VertexAttribs4svNV@12) + GL_STUB(VertexAttribs4ubvNV, 779, VertexAttribs4ubvNV@12) + GL_STUB(GetTexBumpParameterfvATI, 780, GetTexBumpParameterfvATI@8) + GL_STUB(GetTexBumpParameterivATI, 781, GetTexBumpParameterivATI@8) + GL_STUB(TexBumpParameterfvATI, 782, TexBumpParameterfvATI@8) + GL_STUB(TexBumpParameterivATI, 783, TexBumpParameterivATI@8) + GL_STUB(AlphaFragmentOp1ATI, 784, AlphaFragmentOp1ATI@24) + GL_STUB(AlphaFragmentOp2ATI, 785, AlphaFragmentOp2ATI@36) + GL_STUB(AlphaFragmentOp3ATI, 786, AlphaFragmentOp3ATI@48) + GL_STUB(BeginFragmentShaderATI, 787, BeginFragmentShaderATI@0) + GL_STUB(BindFragmentShaderATI, 788, BindFragmentShaderATI@4) + GL_STUB(ColorFragmentOp1ATI, 789, ColorFragmentOp1ATI@28) + GL_STUB(ColorFragmentOp2ATI, 790, ColorFragmentOp2ATI@40) + GL_STUB(ColorFragmentOp3ATI, 791, ColorFragmentOp3ATI@52) + GL_STUB(DeleteFragmentShaderATI, 792, DeleteFragmentShaderATI@4) + GL_STUB(EndFragmentShaderATI, 793, EndFragmentShaderATI@0) + GL_STUB(GenFragmentShadersATI, 794, GenFragmentShadersATI@4) + GL_STUB(PassTexCoordATI, 795, PassTexCoordATI@12) + GL_STUB(SampleMapATI, 796, SampleMapATI@12) + GL_STUB(SetFragmentShaderConstantATI, 797, SetFragmentShaderConstantATI@8) + GL_STUB(PointParameteriNV, 798, PointParameteriNV@8) + GL_STUB(PointParameterivNV, 799, PointParameterivNV@8) + GL_STUB(_dispatch_stub_800, 800, _dispatch_stub_800@4) + HIDDEN(GL_PREFIX(_dispatch_stub_800, _dispatch_stub_800@4)) + GL_STUB(_dispatch_stub_801, 801, _dispatch_stub_801@4) + HIDDEN(GL_PREFIX(_dispatch_stub_801, _dispatch_stub_801@4)) + GL_STUB(_dispatch_stub_802, 802, _dispatch_stub_802@8) + HIDDEN(GL_PREFIX(_dispatch_stub_802, _dispatch_stub_802@8)) + GL_STUB(_dispatch_stub_803, 803, _dispatch_stub_803@8) + HIDDEN(GL_PREFIX(_dispatch_stub_803, _dispatch_stub_803@8)) + GL_STUB(_dispatch_stub_804, 804, _dispatch_stub_804@4) + HIDDEN(GL_PREFIX(_dispatch_stub_804, _dispatch_stub_804@4)) + GL_STUB(GetProgramNamedParameterdvNV, 805, GetProgramNamedParameterdvNV@16) + GL_STUB(GetProgramNamedParameterfvNV, 806, GetProgramNamedParameterfvNV@16) + GL_STUB(ProgramNamedParameter4dNV, 807, ProgramNamedParameter4dNV@44) + GL_STUB(ProgramNamedParameter4dvNV, 808, ProgramNamedParameter4dvNV@16) + GL_STUB(ProgramNamedParameter4fNV, 809, ProgramNamedParameter4fNV@28) + GL_STUB(ProgramNamedParameter4fvNV, 810, ProgramNamedParameter4fvNV@16) + GL_STUB(PrimitiveRestartIndexNV, 811, PrimitiveRestartIndexNV@4) + GL_STUB(PrimitiveRestartNV, 812, PrimitiveRestartNV@0) + GL_STUB(_dispatch_stub_813, 813, _dispatch_stub_813@16) + HIDDEN(GL_PREFIX(_dispatch_stub_813, _dispatch_stub_813@16)) + GL_STUB(_dispatch_stub_814, 814, _dispatch_stub_814@8) + HIDDEN(GL_PREFIX(_dispatch_stub_814, _dispatch_stub_814@8)) + GL_STUB(BindFramebufferEXT, 815, BindFramebufferEXT@8) + GL_STUB(BindRenderbufferEXT, 816, BindRenderbufferEXT@8) + GL_STUB(CheckFramebufferStatusEXT, 817, CheckFramebufferStatusEXT@4) + GL_STUB(DeleteFramebuffersEXT, 818, DeleteFramebuffersEXT@8) + GL_STUB(DeleteRenderbuffersEXT, 819, DeleteRenderbuffersEXT@8) + GL_STUB(FramebufferRenderbufferEXT, 820, FramebufferRenderbufferEXT@16) + GL_STUB(FramebufferTexture1DEXT, 821, FramebufferTexture1DEXT@20) + GL_STUB(FramebufferTexture2DEXT, 822, FramebufferTexture2DEXT@20) + GL_STUB(FramebufferTexture3DEXT, 823, FramebufferTexture3DEXT@24) + GL_STUB(GenFramebuffersEXT, 824, GenFramebuffersEXT@8) + GL_STUB(GenRenderbuffersEXT, 825, GenRenderbuffersEXT@8) + GL_STUB(GenerateMipmapEXT, 826, GenerateMipmapEXT@4) + GL_STUB(GetFramebufferAttachmentParameterivEXT, 827, GetFramebufferAttachmentParameterivEXT@16) + GL_STUB(GetRenderbufferParameterivEXT, 828, GetRenderbufferParameterivEXT@12) + GL_STUB(IsFramebufferEXT, 829, IsFramebufferEXT@4) + GL_STUB(IsRenderbufferEXT, 830, IsRenderbufferEXT@4) + GL_STUB(RenderbufferStorageEXT, 831, RenderbufferStorageEXT@16) + GL_STUB(_dispatch_stub_832, 832, _dispatch_stub_832@40) + HIDDEN(GL_PREFIX(_dispatch_stub_832, _dispatch_stub_832@40)) + GL_STUB(_dispatch_stub_833, 833, _dispatch_stub_833@12) + HIDDEN(GL_PREFIX(_dispatch_stub_833, _dispatch_stub_833@12)) + GL_STUB(_dispatch_stub_834, 834, _dispatch_stub_834@12) + HIDDEN(GL_PREFIX(_dispatch_stub_834, _dispatch_stub_834@12)) + GL_STUB(BindFragDataLocationEXT, 835, BindFragDataLocationEXT@12) + GL_STUB(GetFragDataLocationEXT, 836, GetFragDataLocationEXT@8) + GL_STUB(GetUniformuivEXT, 837, GetUniformuivEXT@12) + GL_STUB(GetVertexAttribIivEXT, 838, GetVertexAttribIivEXT@12) + GL_STUB(GetVertexAttribIuivEXT, 839, GetVertexAttribIuivEXT@12) + GL_STUB(Uniform1uiEXT, 840, Uniform1uiEXT@8) + GL_STUB(Uniform1uivEXT, 841, Uniform1uivEXT@12) + GL_STUB(Uniform2uiEXT, 842, Uniform2uiEXT@12) + GL_STUB(Uniform2uivEXT, 843, Uniform2uivEXT@12) + GL_STUB(Uniform3uiEXT, 844, Uniform3uiEXT@16) + GL_STUB(Uniform3uivEXT, 845, Uniform3uivEXT@12) + GL_STUB(Uniform4uiEXT, 846, Uniform4uiEXT@20) + GL_STUB(Uniform4uivEXT, 847, Uniform4uivEXT@12) + GL_STUB(VertexAttribI1iEXT, 848, VertexAttribI1iEXT@8) + GL_STUB(VertexAttribI1ivEXT, 849, VertexAttribI1ivEXT@8) + GL_STUB(VertexAttribI1uiEXT, 850, VertexAttribI1uiEXT@8) + GL_STUB(VertexAttribI1uivEXT, 851, VertexAttribI1uivEXT@8) + GL_STUB(VertexAttribI2iEXT, 852, VertexAttribI2iEXT@12) + GL_STUB(VertexAttribI2ivEXT, 853, VertexAttribI2ivEXT@8) + GL_STUB(VertexAttribI2uiEXT, 854, VertexAttribI2uiEXT@12) + GL_STUB(VertexAttribI2uivEXT, 855, VertexAttribI2uivEXT@8) + GL_STUB(VertexAttribI3iEXT, 856, VertexAttribI3iEXT@16) + GL_STUB(VertexAttribI3ivEXT, 857, VertexAttribI3ivEXT@8) + GL_STUB(VertexAttribI3uiEXT, 858, VertexAttribI3uiEXT@16) + GL_STUB(VertexAttribI3uivEXT, 859, VertexAttribI3uivEXT@8) + GL_STUB(VertexAttribI4bvEXT, 860, VertexAttribI4bvEXT@8) + GL_STUB(VertexAttribI4iEXT, 861, VertexAttribI4iEXT@20) + GL_STUB(VertexAttribI4ivEXT, 862, VertexAttribI4ivEXT@8) + GL_STUB(VertexAttribI4svEXT, 863, VertexAttribI4svEXT@8) + GL_STUB(VertexAttribI4ubvEXT, 864, VertexAttribI4ubvEXT@8) + GL_STUB(VertexAttribI4uiEXT, 865, VertexAttribI4uiEXT@20) + GL_STUB(VertexAttribI4uivEXT, 866, VertexAttribI4uivEXT@8) + GL_STUB(VertexAttribI4usvEXT, 867, VertexAttribI4usvEXT@8) + GL_STUB(VertexAttribIPointerEXT, 868, VertexAttribIPointerEXT@20) + GL_STUB(FramebufferTextureLayerEXT, 869, FramebufferTextureLayerEXT@20) + GL_STUB(ColorMaskIndexedEXT, 870, ColorMaskIndexedEXT@20) + GL_STUB(DisableIndexedEXT, 871, DisableIndexedEXT@8) + GL_STUB(EnableIndexedEXT, 872, EnableIndexedEXT@8) + GL_STUB(GetBooleanIndexedvEXT, 873, GetBooleanIndexedvEXT@12) + GL_STUB(GetIntegerIndexedvEXT, 874, GetIntegerIndexedvEXT@12) + GL_STUB(IsEnabledIndexedEXT, 875, IsEnabledIndexedEXT@8) + GL_STUB(ClearColorIiEXT, 876, ClearColorIiEXT@16) + GL_STUB(ClearColorIuiEXT, 877, ClearColorIuiEXT@16) + GL_STUB(GetTexParameterIivEXT, 878, GetTexParameterIivEXT@12) + GL_STUB(GetTexParameterIuivEXT, 879, GetTexParameterIuivEXT@12) + GL_STUB(TexParameterIivEXT, 880, TexParameterIivEXT@12) + GL_STUB(TexParameterIuivEXT, 881, TexParameterIuivEXT@12) + GL_STUB(BeginConditionalRenderNV, 882, BeginConditionalRenderNV@8) + GL_STUB(EndConditionalRenderNV, 883, EndConditionalRenderNV@0) + GL_STUB(BeginTransformFeedbackEXT, 884, BeginTransformFeedbackEXT@4) + GL_STUB(BindBufferBaseEXT, 885, BindBufferBaseEXT@12) + GL_STUB(BindBufferOffsetEXT, 886, BindBufferOffsetEXT@16) + GL_STUB(BindBufferRangeEXT, 887, BindBufferRangeEXT@20) + GL_STUB(EndTransformFeedbackEXT, 888, EndTransformFeedbackEXT@0) + GL_STUB(GetTransformFeedbackVaryingEXT, 889, GetTransformFeedbackVaryingEXT@28) + GL_STUB(TransformFeedbackVaryingsEXT, 890, TransformFeedbackVaryingsEXT@16) + GL_STUB(ProvokingVertexEXT, 891, ProvokingVertexEXT@4) + GL_STUB(_dispatch_stub_892, 892, _dispatch_stub_892@12) + HIDDEN(GL_PREFIX(_dispatch_stub_892, _dispatch_stub_892@12)) + GL_STUB(_dispatch_stub_893, 893, _dispatch_stub_893@12) + HIDDEN(GL_PREFIX(_dispatch_stub_893, _dispatch_stub_893@12)) + GL_STUB(GetObjectParameterivAPPLE, 894, GetObjectParameterivAPPLE@16) + GL_STUB(ObjectPurgeableAPPLE, 895, ObjectPurgeableAPPLE@12) + GL_STUB(ObjectUnpurgeableAPPLE, 896, ObjectUnpurgeableAPPLE@12) + GL_STUB(ActiveProgramEXT, 897, ActiveProgramEXT@4) + GL_STUB(CreateShaderProgramEXT, 898, CreateShaderProgramEXT@8) + GL_STUB(UseShaderProgramEXT, 899, UseShaderProgramEXT@8) + GL_STUB(TextureBarrierNV, 900, TextureBarrierNV@0) + GL_STUB(_dispatch_stub_901, 901, _dispatch_stub_901@16) + HIDDEN(GL_PREFIX(_dispatch_stub_901, _dispatch_stub_901@16)) + GL_STUB(_dispatch_stub_902, 902, _dispatch_stub_902@16) + HIDDEN(GL_PREFIX(_dispatch_stub_902, _dispatch_stub_902@16)) + GL_STUB(_dispatch_stub_903, 903, _dispatch_stub_903@16) + HIDDEN(GL_PREFIX(_dispatch_stub_903, _dispatch_stub_903@16)) + GL_STUB(_dispatch_stub_904, 904, _dispatch_stub_904@12) + HIDDEN(GL_PREFIX(_dispatch_stub_904, _dispatch_stub_904@12)) + GL_STUB(_dispatch_stub_905, 905, _dispatch_stub_905@12) + HIDDEN(GL_PREFIX(_dispatch_stub_905, _dispatch_stub_905@12)) + GL_STUB(EGLImageTargetRenderbufferStorageOES, 906, EGLImageTargetRenderbufferStorageOES@8) + GL_STUB(EGLImageTargetTexture2DOES, 907, EGLImageTargetTexture2DOES@8) GL_STUB_ALIAS(ArrayElementEXT, 306, ArrayElementEXT@4, ArrayElement, ArrayElement@4) GL_STUB_ALIAS(BindTextureEXT, 307, BindTextureEXT@8, BindTexture, BindTexture@8) GL_STUB_ALIAS(DrawArraysEXT, 310, DrawArraysEXT@12, DrawArrays, DrawArrays@12) @@ -1268,151 +1282,151 @@ GLNAME(gl_dispatch_functions_start): GL_STUB_ALIAS(DrawElementsInstancedEXT, 574, DrawElementsInstancedEXT@20, DrawElementsInstancedARB, DrawElementsInstancedARB@20) GL_STUB_ALIAS(DrawElementsInstanced, 574, DrawElementsInstanced@20, DrawElementsInstancedARB, DrawElementsInstancedARB@20) GL_STUB_ALIAS(RenderbufferStorageMultisampleEXT, 575, RenderbufferStorageMultisampleEXT@20, RenderbufferStorageMultisample, RenderbufferStorageMultisample@20) - GL_STUB_ALIAS(PointParameterf, 627, PointParameterf@8, PointParameterfEXT, PointParameterfEXT@8) - GL_STUB_ALIAS(PointParameterfARB, 627, PointParameterfARB@8, PointParameterfEXT, PointParameterfEXT@8) - GL_STUB_ALIAS(PointParameterfv, 628, PointParameterfv@8, PointParameterfvEXT, PointParameterfvEXT@8) - GL_STUB_ALIAS(PointParameterfvARB, 628, PointParameterfvARB@8, PointParameterfvEXT, PointParameterfvEXT@8) - GL_STUB_ALIAS(SecondaryColor3b, 631, SecondaryColor3b@12, SecondaryColor3bEXT, SecondaryColor3bEXT@12) - GL_STUB_ALIAS(SecondaryColor3bv, 632, SecondaryColor3bv@4, SecondaryColor3bvEXT, SecondaryColor3bvEXT@4) - GL_STUB_ALIAS(SecondaryColor3d, 633, SecondaryColor3d@24, SecondaryColor3dEXT, SecondaryColor3dEXT@24) - GL_STUB_ALIAS(SecondaryColor3dv, 634, SecondaryColor3dv@4, SecondaryColor3dvEXT, SecondaryColor3dvEXT@4) - GL_STUB_ALIAS(SecondaryColor3f, 635, SecondaryColor3f@12, SecondaryColor3fEXT, SecondaryColor3fEXT@12) - GL_STUB_ALIAS(SecondaryColor3fv, 636, SecondaryColor3fv@4, SecondaryColor3fvEXT, SecondaryColor3fvEXT@4) - GL_STUB_ALIAS(SecondaryColor3i, 637, SecondaryColor3i@12, SecondaryColor3iEXT, SecondaryColor3iEXT@12) - GL_STUB_ALIAS(SecondaryColor3iv, 638, SecondaryColor3iv@4, SecondaryColor3ivEXT, SecondaryColor3ivEXT@4) - GL_STUB_ALIAS(SecondaryColor3s, 639, SecondaryColor3s@12, SecondaryColor3sEXT, SecondaryColor3sEXT@12) - GL_STUB_ALIAS(SecondaryColor3sv, 640, SecondaryColor3sv@4, SecondaryColor3svEXT, SecondaryColor3svEXT@4) - GL_STUB_ALIAS(SecondaryColor3ub, 641, SecondaryColor3ub@12, SecondaryColor3ubEXT, SecondaryColor3ubEXT@12) - GL_STUB_ALIAS(SecondaryColor3ubv, 642, SecondaryColor3ubv@4, SecondaryColor3ubvEXT, SecondaryColor3ubvEXT@4) - GL_STUB_ALIAS(SecondaryColor3ui, 643, SecondaryColor3ui@12, SecondaryColor3uiEXT, SecondaryColor3uiEXT@12) - GL_STUB_ALIAS(SecondaryColor3uiv, 644, SecondaryColor3uiv@4, SecondaryColor3uivEXT, SecondaryColor3uivEXT@4) - GL_STUB_ALIAS(SecondaryColor3us, 645, SecondaryColor3us@12, SecondaryColor3usEXT, SecondaryColor3usEXT@12) - GL_STUB_ALIAS(SecondaryColor3usv, 646, SecondaryColor3usv@4, SecondaryColor3usvEXT, SecondaryColor3usvEXT@4) - GL_STUB_ALIAS(SecondaryColorPointer, 647, SecondaryColorPointer@16, SecondaryColorPointerEXT, SecondaryColorPointerEXT@16) - GL_STUB_ALIAS(MultiDrawArrays, 648, MultiDrawArrays@16, MultiDrawArraysEXT, MultiDrawArraysEXT@16) - GL_STUB_ALIAS(MultiDrawElements, 649, MultiDrawElements@20, MultiDrawElementsEXT, MultiDrawElementsEXT@20) - GL_STUB_ALIAS(FogCoordPointer, 650, FogCoordPointer@12, FogCoordPointerEXT, FogCoordPointerEXT@12) - GL_STUB_ALIAS(FogCoordd, 651, FogCoordd@8, FogCoorddEXT, FogCoorddEXT@8) - GL_STUB_ALIAS(FogCoorddv, 652, FogCoorddv@4, FogCoorddvEXT, FogCoorddvEXT@4) - GL_STUB_ALIAS(FogCoordf, 653, FogCoordf@4, FogCoordfEXT, FogCoordfEXT@4) - GL_STUB_ALIAS(FogCoordfv, 654, FogCoordfv@4, FogCoordfvEXT, FogCoordfvEXT@4) - GL_STUB_ALIAS(BlendFuncSeparate, 656, BlendFuncSeparate@16, BlendFuncSeparateEXT, BlendFuncSeparateEXT@16) - GL_STUB_ALIAS(WindowPos2d, 673, WindowPos2d@16, WindowPos2dMESA, WindowPos2dMESA@16) - GL_STUB_ALIAS(WindowPos2dARB, 673, WindowPos2dARB@16, WindowPos2dMESA, WindowPos2dMESA@16) - GL_STUB_ALIAS(WindowPos2dv, 674, WindowPos2dv@4, WindowPos2dvMESA, WindowPos2dvMESA@4) - GL_STUB_ALIAS(WindowPos2dvARB, 674, WindowPos2dvARB@4, WindowPos2dvMESA, WindowPos2dvMESA@4) - GL_STUB_ALIAS(WindowPos2f, 675, WindowPos2f@8, WindowPos2fMESA, WindowPos2fMESA@8) - GL_STUB_ALIAS(WindowPos2fARB, 675, WindowPos2fARB@8, WindowPos2fMESA, WindowPos2fMESA@8) - GL_STUB_ALIAS(WindowPos2fv, 676, WindowPos2fv@4, WindowPos2fvMESA, WindowPos2fvMESA@4) - GL_STUB_ALIAS(WindowPos2fvARB, 676, WindowPos2fvARB@4, WindowPos2fvMESA, WindowPos2fvMESA@4) - GL_STUB_ALIAS(WindowPos2i, 677, WindowPos2i@8, WindowPos2iMESA, WindowPos2iMESA@8) - GL_STUB_ALIAS(WindowPos2iARB, 677, WindowPos2iARB@8, WindowPos2iMESA, WindowPos2iMESA@8) - GL_STUB_ALIAS(WindowPos2iv, 678, WindowPos2iv@4, WindowPos2ivMESA, WindowPos2ivMESA@4) - GL_STUB_ALIAS(WindowPos2ivARB, 678, WindowPos2ivARB@4, WindowPos2ivMESA, WindowPos2ivMESA@4) - GL_STUB_ALIAS(WindowPos2s, 679, WindowPos2s@8, WindowPos2sMESA, WindowPos2sMESA@8) - GL_STUB_ALIAS(WindowPos2sARB, 679, WindowPos2sARB@8, WindowPos2sMESA, WindowPos2sMESA@8) - GL_STUB_ALIAS(WindowPos2sv, 680, WindowPos2sv@4, WindowPos2svMESA, WindowPos2svMESA@4) - GL_STUB_ALIAS(WindowPos2svARB, 680, WindowPos2svARB@4, WindowPos2svMESA, WindowPos2svMESA@4) - GL_STUB_ALIAS(WindowPos3d, 681, WindowPos3d@24, WindowPos3dMESA, WindowPos3dMESA@24) - GL_STUB_ALIAS(WindowPos3dARB, 681, WindowPos3dARB@24, WindowPos3dMESA, WindowPos3dMESA@24) - GL_STUB_ALIAS(WindowPos3dv, 682, WindowPos3dv@4, WindowPos3dvMESA, WindowPos3dvMESA@4) - GL_STUB_ALIAS(WindowPos3dvARB, 682, WindowPos3dvARB@4, WindowPos3dvMESA, WindowPos3dvMESA@4) - GL_STUB_ALIAS(WindowPos3f, 683, WindowPos3f@12, WindowPos3fMESA, WindowPos3fMESA@12) - GL_STUB_ALIAS(WindowPos3fARB, 683, WindowPos3fARB@12, WindowPos3fMESA, WindowPos3fMESA@12) - GL_STUB_ALIAS(WindowPos3fv, 684, WindowPos3fv@4, WindowPos3fvMESA, WindowPos3fvMESA@4) - GL_STUB_ALIAS(WindowPos3fvARB, 684, WindowPos3fvARB@4, WindowPos3fvMESA, WindowPos3fvMESA@4) - GL_STUB_ALIAS(WindowPos3i, 685, WindowPos3i@12, WindowPos3iMESA, WindowPos3iMESA@12) - GL_STUB_ALIAS(WindowPos3iARB, 685, WindowPos3iARB@12, WindowPos3iMESA, WindowPos3iMESA@12) - GL_STUB_ALIAS(WindowPos3iv, 686, WindowPos3iv@4, WindowPos3ivMESA, WindowPos3ivMESA@4) - GL_STUB_ALIAS(WindowPos3ivARB, 686, WindowPos3ivARB@4, WindowPos3ivMESA, WindowPos3ivMESA@4) - GL_STUB_ALIAS(WindowPos3s, 687, WindowPos3s@12, WindowPos3sMESA, WindowPos3sMESA@12) - GL_STUB_ALIAS(WindowPos3sARB, 687, WindowPos3sARB@12, WindowPos3sMESA, WindowPos3sMESA@12) - GL_STUB_ALIAS(WindowPos3sv, 688, WindowPos3sv@4, WindowPos3svMESA, WindowPos3svMESA@4) - GL_STUB_ALIAS(WindowPos3svARB, 688, WindowPos3svARB@4, WindowPos3svMESA, WindowPos3svMESA@4) - GL_STUB_ALIAS(BindProgramARB, 707, BindProgramARB@8, BindProgramNV, BindProgramNV@8) - GL_STUB_ALIAS(DeleteProgramsARB, 708, DeleteProgramsARB@8, DeleteProgramsNV, DeleteProgramsNV@8) - GL_STUB_ALIAS(GenProgramsARB, 710, GenProgramsARB@8, GenProgramsNV, GenProgramsNV@8) - GL_STUB_ALIAS(GetVertexAttribPointerv, 716, GetVertexAttribPointerv@12, GetVertexAttribPointervNV, GetVertexAttribPointervNV@12) - GL_STUB_ALIAS(GetVertexAttribPointervARB, 716, GetVertexAttribPointervARB@12, GetVertexAttribPointervNV, GetVertexAttribPointervNV@12) - GL_STUB_ALIAS(IsProgramARB, 720, IsProgramARB@4, IsProgramNV, IsProgramNV@4) - GL_STUB_ALIAS(PointParameteri, 784, PointParameteri@8, PointParameteriNV, PointParameteriNV@8) - GL_STUB_ALIAS(PointParameteriv, 785, PointParameteriv@8, PointParameterivNV, PointParameterivNV@8) - GL_STUB_ALIAS(DeleteVertexArrays, 788, DeleteVertexArrays@8, _dispatch_stub_788, _dispatch_stub_788@8) - GL_STUB_ALIAS(IsVertexArray, 790, IsVertexArray@4, _dispatch_stub_790, _dispatch_stub_790@4) - GL_STUB_ALIAS(PrimitiveRestartIndex, 797, PrimitiveRestartIndex@4, PrimitiveRestartIndexNV, PrimitiveRestartIndexNV@4) - GL_STUB_ALIAS(BlendEquationSeparate, 800, BlendEquationSeparate@8, _dispatch_stub_800, _dispatch_stub_800@8) - GL_STUB_ALIAS(BindFramebuffer, 801, BindFramebuffer@8, BindFramebufferEXT, BindFramebufferEXT@8) - GL_STUB_ALIAS(BindRenderbuffer, 802, BindRenderbuffer@8, BindRenderbufferEXT, BindRenderbufferEXT@8) - GL_STUB_ALIAS(CheckFramebufferStatus, 803, CheckFramebufferStatus@4, CheckFramebufferStatusEXT, CheckFramebufferStatusEXT@4) - GL_STUB_ALIAS(DeleteFramebuffers, 804, DeleteFramebuffers@8, DeleteFramebuffersEXT, DeleteFramebuffersEXT@8) - GL_STUB_ALIAS(DeleteRenderbuffers, 805, DeleteRenderbuffers@8, DeleteRenderbuffersEXT, DeleteRenderbuffersEXT@8) - GL_STUB_ALIAS(FramebufferRenderbuffer, 806, FramebufferRenderbuffer@16, FramebufferRenderbufferEXT, FramebufferRenderbufferEXT@16) - GL_STUB_ALIAS(FramebufferTexture1D, 807, FramebufferTexture1D@20, FramebufferTexture1DEXT, FramebufferTexture1DEXT@20) - GL_STUB_ALIAS(FramebufferTexture2D, 808, FramebufferTexture2D@20, FramebufferTexture2DEXT, FramebufferTexture2DEXT@20) - GL_STUB_ALIAS(FramebufferTexture3D, 809, FramebufferTexture3D@24, FramebufferTexture3DEXT, FramebufferTexture3DEXT@24) - GL_STUB_ALIAS(GenFramebuffers, 810, GenFramebuffers@8, GenFramebuffersEXT, GenFramebuffersEXT@8) - GL_STUB_ALIAS(GenRenderbuffers, 811, GenRenderbuffers@8, GenRenderbuffersEXT, GenRenderbuffersEXT@8) - GL_STUB_ALIAS(GenerateMipmap, 812, GenerateMipmap@4, GenerateMipmapEXT, GenerateMipmapEXT@4) - GL_STUB_ALIAS(GetFramebufferAttachmentParameteriv, 813, GetFramebufferAttachmentParameteriv@16, GetFramebufferAttachmentParameterivEXT, GetFramebufferAttachmentParameterivEXT@16) - GL_STUB_ALIAS(GetRenderbufferParameteriv, 814, GetRenderbufferParameteriv@12, GetRenderbufferParameterivEXT, GetRenderbufferParameterivEXT@12) - GL_STUB_ALIAS(IsFramebuffer, 815, IsFramebuffer@4, IsFramebufferEXT, IsFramebufferEXT@4) - GL_STUB_ALIAS(IsRenderbuffer, 816, IsRenderbuffer@4, IsRenderbufferEXT, IsRenderbufferEXT@4) - GL_STUB_ALIAS(RenderbufferStorage, 817, RenderbufferStorage@16, RenderbufferStorageEXT, RenderbufferStorageEXT@16) - GL_STUB_ALIAS(BlitFramebuffer, 818, BlitFramebuffer@40, _dispatch_stub_818, _dispatch_stub_818@40) - GL_STUB_ALIAS(BindFragDataLocation, 821, BindFragDataLocation@12, BindFragDataLocationEXT, BindFragDataLocationEXT@12) - GL_STUB_ALIAS(GetFragDataLocation, 822, GetFragDataLocation@8, GetFragDataLocationEXT, GetFragDataLocationEXT@8) - GL_STUB_ALIAS(GetUniformuiv, 823, GetUniformuiv@12, GetUniformuivEXT, GetUniformuivEXT@12) - GL_STUB_ALIAS(GetVertexAttribIiv, 824, GetVertexAttribIiv@12, GetVertexAttribIivEXT, GetVertexAttribIivEXT@12) - GL_STUB_ALIAS(GetVertexAttribIuiv, 825, GetVertexAttribIuiv@12, GetVertexAttribIuivEXT, GetVertexAttribIuivEXT@12) - GL_STUB_ALIAS(Uniform1ui, 826, Uniform1ui@8, Uniform1uiEXT, Uniform1uiEXT@8) - GL_STUB_ALIAS(Uniform1uiv, 827, Uniform1uiv@12, Uniform1uivEXT, Uniform1uivEXT@12) - GL_STUB_ALIAS(Uniform2ui, 828, Uniform2ui@12, Uniform2uiEXT, Uniform2uiEXT@12) - GL_STUB_ALIAS(Uniform2uiv, 829, Uniform2uiv@12, Uniform2uivEXT, Uniform2uivEXT@12) - GL_STUB_ALIAS(Uniform3ui, 830, Uniform3ui@16, Uniform3uiEXT, Uniform3uiEXT@16) - GL_STUB_ALIAS(Uniform3uiv, 831, Uniform3uiv@12, Uniform3uivEXT, Uniform3uivEXT@12) - GL_STUB_ALIAS(Uniform4ui, 832, Uniform4ui@20, Uniform4uiEXT, Uniform4uiEXT@20) - GL_STUB_ALIAS(Uniform4uiv, 833, Uniform4uiv@12, Uniform4uivEXT, Uniform4uivEXT@12) - GL_STUB_ALIAS(VertexAttribI1i, 834, VertexAttribI1i@8, VertexAttribI1iEXT, VertexAttribI1iEXT@8) - GL_STUB_ALIAS(VertexAttribI1iv, 835, VertexAttribI1iv@8, VertexAttribI1ivEXT, VertexAttribI1ivEXT@8) - GL_STUB_ALIAS(VertexAttribI1ui, 836, VertexAttribI1ui@8, VertexAttribI1uiEXT, VertexAttribI1uiEXT@8) - GL_STUB_ALIAS(VertexAttribI1uiv, 837, VertexAttribI1uiv@8, VertexAttribI1uivEXT, VertexAttribI1uivEXT@8) - GL_STUB_ALIAS(VertexAttribI2i, 838, VertexAttribI2i@12, VertexAttribI2iEXT, VertexAttribI2iEXT@12) - GL_STUB_ALIAS(VertexAttribI2iv, 839, VertexAttribI2iv@8, VertexAttribI2ivEXT, VertexAttribI2ivEXT@8) - GL_STUB_ALIAS(VertexAttribI2ui, 840, VertexAttribI2ui@12, VertexAttribI2uiEXT, VertexAttribI2uiEXT@12) - GL_STUB_ALIAS(VertexAttribI2uiv, 841, VertexAttribI2uiv@8, VertexAttribI2uivEXT, VertexAttribI2uivEXT@8) - GL_STUB_ALIAS(VertexAttribI3i, 842, VertexAttribI3i@16, VertexAttribI3iEXT, VertexAttribI3iEXT@16) - GL_STUB_ALIAS(VertexAttribI3iv, 843, VertexAttribI3iv@8, VertexAttribI3ivEXT, VertexAttribI3ivEXT@8) - GL_STUB_ALIAS(VertexAttribI3ui, 844, VertexAttribI3ui@16, VertexAttribI3uiEXT, VertexAttribI3uiEXT@16) - GL_STUB_ALIAS(VertexAttribI3uiv, 845, VertexAttribI3uiv@8, VertexAttribI3uivEXT, VertexAttribI3uivEXT@8) - GL_STUB_ALIAS(VertexAttribI4bv, 846, VertexAttribI4bv@8, VertexAttribI4bvEXT, VertexAttribI4bvEXT@8) - GL_STUB_ALIAS(VertexAttribI4i, 847, VertexAttribI4i@20, VertexAttribI4iEXT, VertexAttribI4iEXT@20) - GL_STUB_ALIAS(VertexAttribI4iv, 848, VertexAttribI4iv@8, VertexAttribI4ivEXT, VertexAttribI4ivEXT@8) - GL_STUB_ALIAS(VertexAttribI4sv, 849, VertexAttribI4sv@8, VertexAttribI4svEXT, VertexAttribI4svEXT@8) - GL_STUB_ALIAS(VertexAttribI4ubv, 850, VertexAttribI4ubv@8, VertexAttribI4ubvEXT, VertexAttribI4ubvEXT@8) - GL_STUB_ALIAS(VertexAttribI4ui, 851, VertexAttribI4ui@20, VertexAttribI4uiEXT, VertexAttribI4uiEXT@20) - GL_STUB_ALIAS(VertexAttribI4uiv, 852, VertexAttribI4uiv@8, VertexAttribI4uivEXT, VertexAttribI4uivEXT@8) - GL_STUB_ALIAS(VertexAttribI4usv, 853, VertexAttribI4usv@8, VertexAttribI4usvEXT, VertexAttribI4usvEXT@8) - GL_STUB_ALIAS(VertexAttribIPointer, 854, VertexAttribIPointer@20, VertexAttribIPointerEXT, VertexAttribIPointerEXT@20) - GL_STUB_ALIAS(FramebufferTextureLayer, 855, FramebufferTextureLayer@20, FramebufferTextureLayerEXT, FramebufferTextureLayerEXT@20) - GL_STUB_ALIAS(ColorMaski, 856, ColorMaski@20, ColorMaskIndexedEXT, ColorMaskIndexedEXT@20) - GL_STUB_ALIAS(Disablei, 857, Disablei@8, DisableIndexedEXT, DisableIndexedEXT@8) - GL_STUB_ALIAS(Enablei, 858, Enablei@8, EnableIndexedEXT, EnableIndexedEXT@8) - GL_STUB_ALIAS(GetBooleani_v, 859, GetBooleani_v@12, GetBooleanIndexedvEXT, GetBooleanIndexedvEXT@12) - GL_STUB_ALIAS(GetIntegeri_v, 860, GetIntegeri_v@12, GetIntegerIndexedvEXT, GetIntegerIndexedvEXT@12) - GL_STUB_ALIAS(IsEnabledi, 861, IsEnabledi@8, IsEnabledIndexedEXT, IsEnabledIndexedEXT@8) - GL_STUB_ALIAS(GetTexParameterIiv, 864, GetTexParameterIiv@12, GetTexParameterIivEXT, GetTexParameterIivEXT@12) - GL_STUB_ALIAS(GetTexParameterIuiv, 865, GetTexParameterIuiv@12, GetTexParameterIuivEXT, GetTexParameterIuivEXT@12) - GL_STUB_ALIAS(TexParameterIiv, 866, TexParameterIiv@12, TexParameterIivEXT, TexParameterIivEXT@12) - GL_STUB_ALIAS(TexParameterIuiv, 867, TexParameterIuiv@12, TexParameterIuivEXT, TexParameterIuivEXT@12) - GL_STUB_ALIAS(BeginConditionalRender, 868, BeginConditionalRender@8, BeginConditionalRenderNV, BeginConditionalRenderNV@8) - GL_STUB_ALIAS(EndConditionalRender, 869, EndConditionalRender@0, EndConditionalRenderNV, EndConditionalRenderNV@0) - GL_STUB_ALIAS(BeginTransformFeedback, 870, BeginTransformFeedback@4, BeginTransformFeedbackEXT, BeginTransformFeedbackEXT@4) - GL_STUB_ALIAS(BindBufferBase, 871, BindBufferBase@12, BindBufferBaseEXT, BindBufferBaseEXT@12) - GL_STUB_ALIAS(BindBufferRange, 873, BindBufferRange@20, BindBufferRangeEXT, BindBufferRangeEXT@20) - GL_STUB_ALIAS(EndTransformFeedback, 874, EndTransformFeedback@0, EndTransformFeedbackEXT, EndTransformFeedbackEXT@0) - GL_STUB_ALIAS(GetTransformFeedbackVarying, 875, GetTransformFeedbackVarying@28, GetTransformFeedbackVaryingEXT, GetTransformFeedbackVaryingEXT@28) - GL_STUB_ALIAS(TransformFeedbackVaryings, 876, TransformFeedbackVaryings@16, TransformFeedbackVaryingsEXT, TransformFeedbackVaryingsEXT@16) - GL_STUB_ALIAS(ProvokingVertex, 877, ProvokingVertex@4, ProvokingVertexEXT, ProvokingVertexEXT@4) + GL_STUB_ALIAS(PointParameterf, 641, PointParameterf@8, PointParameterfEXT, PointParameterfEXT@8) + GL_STUB_ALIAS(PointParameterfARB, 641, PointParameterfARB@8, PointParameterfEXT, PointParameterfEXT@8) + GL_STUB_ALIAS(PointParameterfv, 642, PointParameterfv@8, PointParameterfvEXT, PointParameterfvEXT@8) + GL_STUB_ALIAS(PointParameterfvARB, 642, PointParameterfvARB@8, PointParameterfvEXT, PointParameterfvEXT@8) + GL_STUB_ALIAS(SecondaryColor3b, 645, SecondaryColor3b@12, SecondaryColor3bEXT, SecondaryColor3bEXT@12) + GL_STUB_ALIAS(SecondaryColor3bv, 646, SecondaryColor3bv@4, SecondaryColor3bvEXT, SecondaryColor3bvEXT@4) + GL_STUB_ALIAS(SecondaryColor3d, 647, SecondaryColor3d@24, SecondaryColor3dEXT, SecondaryColor3dEXT@24) + GL_STUB_ALIAS(SecondaryColor3dv, 648, SecondaryColor3dv@4, SecondaryColor3dvEXT, SecondaryColor3dvEXT@4) + GL_STUB_ALIAS(SecondaryColor3f, 649, SecondaryColor3f@12, SecondaryColor3fEXT, SecondaryColor3fEXT@12) + GL_STUB_ALIAS(SecondaryColor3fv, 650, SecondaryColor3fv@4, SecondaryColor3fvEXT, SecondaryColor3fvEXT@4) + GL_STUB_ALIAS(SecondaryColor3i, 651, SecondaryColor3i@12, SecondaryColor3iEXT, SecondaryColor3iEXT@12) + GL_STUB_ALIAS(SecondaryColor3iv, 652, SecondaryColor3iv@4, SecondaryColor3ivEXT, SecondaryColor3ivEXT@4) + GL_STUB_ALIAS(SecondaryColor3s, 653, SecondaryColor3s@12, SecondaryColor3sEXT, SecondaryColor3sEXT@12) + GL_STUB_ALIAS(SecondaryColor3sv, 654, SecondaryColor3sv@4, SecondaryColor3svEXT, SecondaryColor3svEXT@4) + GL_STUB_ALIAS(SecondaryColor3ub, 655, SecondaryColor3ub@12, SecondaryColor3ubEXT, SecondaryColor3ubEXT@12) + GL_STUB_ALIAS(SecondaryColor3ubv, 656, SecondaryColor3ubv@4, SecondaryColor3ubvEXT, SecondaryColor3ubvEXT@4) + GL_STUB_ALIAS(SecondaryColor3ui, 657, SecondaryColor3ui@12, SecondaryColor3uiEXT, SecondaryColor3uiEXT@12) + GL_STUB_ALIAS(SecondaryColor3uiv, 658, SecondaryColor3uiv@4, SecondaryColor3uivEXT, SecondaryColor3uivEXT@4) + GL_STUB_ALIAS(SecondaryColor3us, 659, SecondaryColor3us@12, SecondaryColor3usEXT, SecondaryColor3usEXT@12) + GL_STUB_ALIAS(SecondaryColor3usv, 660, SecondaryColor3usv@4, SecondaryColor3usvEXT, SecondaryColor3usvEXT@4) + GL_STUB_ALIAS(SecondaryColorPointer, 661, SecondaryColorPointer@16, SecondaryColorPointerEXT, SecondaryColorPointerEXT@16) + GL_STUB_ALIAS(MultiDrawArrays, 662, MultiDrawArrays@16, MultiDrawArraysEXT, MultiDrawArraysEXT@16) + GL_STUB_ALIAS(MultiDrawElements, 663, MultiDrawElements@20, MultiDrawElementsEXT, MultiDrawElementsEXT@20) + GL_STUB_ALIAS(FogCoordPointer, 664, FogCoordPointer@12, FogCoordPointerEXT, FogCoordPointerEXT@12) + GL_STUB_ALIAS(FogCoordd, 665, FogCoordd@8, FogCoorddEXT, FogCoorddEXT@8) + GL_STUB_ALIAS(FogCoorddv, 666, FogCoorddv@4, FogCoorddvEXT, FogCoorddvEXT@4) + GL_STUB_ALIAS(FogCoordf, 667, FogCoordf@4, FogCoordfEXT, FogCoordfEXT@4) + GL_STUB_ALIAS(FogCoordfv, 668, FogCoordfv@4, FogCoordfvEXT, FogCoordfvEXT@4) + GL_STUB_ALIAS(BlendFuncSeparate, 670, BlendFuncSeparate@16, BlendFuncSeparateEXT, BlendFuncSeparateEXT@16) + GL_STUB_ALIAS(WindowPos2d, 687, WindowPos2d@16, WindowPos2dMESA, WindowPos2dMESA@16) + GL_STUB_ALIAS(WindowPos2dARB, 687, WindowPos2dARB@16, WindowPos2dMESA, WindowPos2dMESA@16) + GL_STUB_ALIAS(WindowPos2dv, 688, WindowPos2dv@4, WindowPos2dvMESA, WindowPos2dvMESA@4) + GL_STUB_ALIAS(WindowPos2dvARB, 688, WindowPos2dvARB@4, WindowPos2dvMESA, WindowPos2dvMESA@4) + GL_STUB_ALIAS(WindowPos2f, 689, WindowPos2f@8, WindowPos2fMESA, WindowPos2fMESA@8) + GL_STUB_ALIAS(WindowPos2fARB, 689, WindowPos2fARB@8, WindowPos2fMESA, WindowPos2fMESA@8) + GL_STUB_ALIAS(WindowPos2fv, 690, WindowPos2fv@4, WindowPos2fvMESA, WindowPos2fvMESA@4) + GL_STUB_ALIAS(WindowPos2fvARB, 690, WindowPos2fvARB@4, WindowPos2fvMESA, WindowPos2fvMESA@4) + GL_STUB_ALIAS(WindowPos2i, 691, WindowPos2i@8, WindowPos2iMESA, WindowPos2iMESA@8) + GL_STUB_ALIAS(WindowPos2iARB, 691, WindowPos2iARB@8, WindowPos2iMESA, WindowPos2iMESA@8) + GL_STUB_ALIAS(WindowPos2iv, 692, WindowPos2iv@4, WindowPos2ivMESA, WindowPos2ivMESA@4) + GL_STUB_ALIAS(WindowPos2ivARB, 692, WindowPos2ivARB@4, WindowPos2ivMESA, WindowPos2ivMESA@4) + GL_STUB_ALIAS(WindowPos2s, 693, WindowPos2s@8, WindowPos2sMESA, WindowPos2sMESA@8) + GL_STUB_ALIAS(WindowPos2sARB, 693, WindowPos2sARB@8, WindowPos2sMESA, WindowPos2sMESA@8) + GL_STUB_ALIAS(WindowPos2sv, 694, WindowPos2sv@4, WindowPos2svMESA, WindowPos2svMESA@4) + GL_STUB_ALIAS(WindowPos2svARB, 694, WindowPos2svARB@4, WindowPos2svMESA, WindowPos2svMESA@4) + GL_STUB_ALIAS(WindowPos3d, 695, WindowPos3d@24, WindowPos3dMESA, WindowPos3dMESA@24) + GL_STUB_ALIAS(WindowPos3dARB, 695, WindowPos3dARB@24, WindowPos3dMESA, WindowPos3dMESA@24) + GL_STUB_ALIAS(WindowPos3dv, 696, WindowPos3dv@4, WindowPos3dvMESA, WindowPos3dvMESA@4) + GL_STUB_ALIAS(WindowPos3dvARB, 696, WindowPos3dvARB@4, WindowPos3dvMESA, WindowPos3dvMESA@4) + GL_STUB_ALIAS(WindowPos3f, 697, WindowPos3f@12, WindowPos3fMESA, WindowPos3fMESA@12) + GL_STUB_ALIAS(WindowPos3fARB, 697, WindowPos3fARB@12, WindowPos3fMESA, WindowPos3fMESA@12) + GL_STUB_ALIAS(WindowPos3fv, 698, WindowPos3fv@4, WindowPos3fvMESA, WindowPos3fvMESA@4) + GL_STUB_ALIAS(WindowPos3fvARB, 698, WindowPos3fvARB@4, WindowPos3fvMESA, WindowPos3fvMESA@4) + GL_STUB_ALIAS(WindowPos3i, 699, WindowPos3i@12, WindowPos3iMESA, WindowPos3iMESA@12) + GL_STUB_ALIAS(WindowPos3iARB, 699, WindowPos3iARB@12, WindowPos3iMESA, WindowPos3iMESA@12) + GL_STUB_ALIAS(WindowPos3iv, 700, WindowPos3iv@4, WindowPos3ivMESA, WindowPos3ivMESA@4) + GL_STUB_ALIAS(WindowPos3ivARB, 700, WindowPos3ivARB@4, WindowPos3ivMESA, WindowPos3ivMESA@4) + GL_STUB_ALIAS(WindowPos3s, 701, WindowPos3s@12, WindowPos3sMESA, WindowPos3sMESA@12) + GL_STUB_ALIAS(WindowPos3sARB, 701, WindowPos3sARB@12, WindowPos3sMESA, WindowPos3sMESA@12) + GL_STUB_ALIAS(WindowPos3sv, 702, WindowPos3sv@4, WindowPos3svMESA, WindowPos3svMESA@4) + GL_STUB_ALIAS(WindowPos3svARB, 702, WindowPos3svARB@4, WindowPos3svMESA, WindowPos3svMESA@4) + GL_STUB_ALIAS(BindProgramARB, 721, BindProgramARB@8, BindProgramNV, BindProgramNV@8) + GL_STUB_ALIAS(DeleteProgramsARB, 722, DeleteProgramsARB@8, DeleteProgramsNV, DeleteProgramsNV@8) + GL_STUB_ALIAS(GenProgramsARB, 724, GenProgramsARB@8, GenProgramsNV, GenProgramsNV@8) + GL_STUB_ALIAS(GetVertexAttribPointerv, 730, GetVertexAttribPointerv@12, GetVertexAttribPointervNV, GetVertexAttribPointervNV@12) + GL_STUB_ALIAS(GetVertexAttribPointervARB, 730, GetVertexAttribPointervARB@12, GetVertexAttribPointervNV, GetVertexAttribPointervNV@12) + GL_STUB_ALIAS(IsProgramARB, 734, IsProgramARB@4, IsProgramNV, IsProgramNV@4) + GL_STUB_ALIAS(PointParameteri, 798, PointParameteri@8, PointParameteriNV, PointParameteriNV@8) + GL_STUB_ALIAS(PointParameteriv, 799, PointParameteriv@8, PointParameterivNV, PointParameterivNV@8) + GL_STUB_ALIAS(DeleteVertexArrays, 802, DeleteVertexArrays@8, _dispatch_stub_802, _dispatch_stub_802@8) + GL_STUB_ALIAS(IsVertexArray, 804, IsVertexArray@4, _dispatch_stub_804, _dispatch_stub_804@4) + GL_STUB_ALIAS(PrimitiveRestartIndex, 811, PrimitiveRestartIndex@4, PrimitiveRestartIndexNV, PrimitiveRestartIndexNV@4) + GL_STUB_ALIAS(BlendEquationSeparate, 814, BlendEquationSeparate@8, _dispatch_stub_814, _dispatch_stub_814@8) + GL_STUB_ALIAS(BindFramebuffer, 815, BindFramebuffer@8, BindFramebufferEXT, BindFramebufferEXT@8) + GL_STUB_ALIAS(BindRenderbuffer, 816, BindRenderbuffer@8, BindRenderbufferEXT, BindRenderbufferEXT@8) + GL_STUB_ALIAS(CheckFramebufferStatus, 817, CheckFramebufferStatus@4, CheckFramebufferStatusEXT, CheckFramebufferStatusEXT@4) + GL_STUB_ALIAS(DeleteFramebuffers, 818, DeleteFramebuffers@8, DeleteFramebuffersEXT, DeleteFramebuffersEXT@8) + GL_STUB_ALIAS(DeleteRenderbuffers, 819, DeleteRenderbuffers@8, DeleteRenderbuffersEXT, DeleteRenderbuffersEXT@8) + GL_STUB_ALIAS(FramebufferRenderbuffer, 820, FramebufferRenderbuffer@16, FramebufferRenderbufferEXT, FramebufferRenderbufferEXT@16) + GL_STUB_ALIAS(FramebufferTexture1D, 821, FramebufferTexture1D@20, FramebufferTexture1DEXT, FramebufferTexture1DEXT@20) + GL_STUB_ALIAS(FramebufferTexture2D, 822, FramebufferTexture2D@20, FramebufferTexture2DEXT, FramebufferTexture2DEXT@20) + GL_STUB_ALIAS(FramebufferTexture3D, 823, FramebufferTexture3D@24, FramebufferTexture3DEXT, FramebufferTexture3DEXT@24) + GL_STUB_ALIAS(GenFramebuffers, 824, GenFramebuffers@8, GenFramebuffersEXT, GenFramebuffersEXT@8) + GL_STUB_ALIAS(GenRenderbuffers, 825, GenRenderbuffers@8, GenRenderbuffersEXT, GenRenderbuffersEXT@8) + GL_STUB_ALIAS(GenerateMipmap, 826, GenerateMipmap@4, GenerateMipmapEXT, GenerateMipmapEXT@4) + GL_STUB_ALIAS(GetFramebufferAttachmentParameteriv, 827, GetFramebufferAttachmentParameteriv@16, GetFramebufferAttachmentParameterivEXT, GetFramebufferAttachmentParameterivEXT@16) + GL_STUB_ALIAS(GetRenderbufferParameteriv, 828, GetRenderbufferParameteriv@12, GetRenderbufferParameterivEXT, GetRenderbufferParameterivEXT@12) + GL_STUB_ALIAS(IsFramebuffer, 829, IsFramebuffer@4, IsFramebufferEXT, IsFramebufferEXT@4) + GL_STUB_ALIAS(IsRenderbuffer, 830, IsRenderbuffer@4, IsRenderbufferEXT, IsRenderbufferEXT@4) + GL_STUB_ALIAS(RenderbufferStorage, 831, RenderbufferStorage@16, RenderbufferStorageEXT, RenderbufferStorageEXT@16) + GL_STUB_ALIAS(BlitFramebuffer, 832, BlitFramebuffer@40, _dispatch_stub_832, _dispatch_stub_832@40) + GL_STUB_ALIAS(BindFragDataLocation, 835, BindFragDataLocation@12, BindFragDataLocationEXT, BindFragDataLocationEXT@12) + GL_STUB_ALIAS(GetFragDataLocation, 836, GetFragDataLocation@8, GetFragDataLocationEXT, GetFragDataLocationEXT@8) + GL_STUB_ALIAS(GetUniformuiv, 837, GetUniformuiv@12, GetUniformuivEXT, GetUniformuivEXT@12) + GL_STUB_ALIAS(GetVertexAttribIiv, 838, GetVertexAttribIiv@12, GetVertexAttribIivEXT, GetVertexAttribIivEXT@12) + GL_STUB_ALIAS(GetVertexAttribIuiv, 839, GetVertexAttribIuiv@12, GetVertexAttribIuivEXT, GetVertexAttribIuivEXT@12) + GL_STUB_ALIAS(Uniform1ui, 840, Uniform1ui@8, Uniform1uiEXT, Uniform1uiEXT@8) + GL_STUB_ALIAS(Uniform1uiv, 841, Uniform1uiv@12, Uniform1uivEXT, Uniform1uivEXT@12) + GL_STUB_ALIAS(Uniform2ui, 842, Uniform2ui@12, Uniform2uiEXT, Uniform2uiEXT@12) + GL_STUB_ALIAS(Uniform2uiv, 843, Uniform2uiv@12, Uniform2uivEXT, Uniform2uivEXT@12) + GL_STUB_ALIAS(Uniform3ui, 844, Uniform3ui@16, Uniform3uiEXT, Uniform3uiEXT@16) + GL_STUB_ALIAS(Uniform3uiv, 845, Uniform3uiv@12, Uniform3uivEXT, Uniform3uivEXT@12) + GL_STUB_ALIAS(Uniform4ui, 846, Uniform4ui@20, Uniform4uiEXT, Uniform4uiEXT@20) + GL_STUB_ALIAS(Uniform4uiv, 847, Uniform4uiv@12, Uniform4uivEXT, Uniform4uivEXT@12) + GL_STUB_ALIAS(VertexAttribI1i, 848, VertexAttribI1i@8, VertexAttribI1iEXT, VertexAttribI1iEXT@8) + GL_STUB_ALIAS(VertexAttribI1iv, 849, VertexAttribI1iv@8, VertexAttribI1ivEXT, VertexAttribI1ivEXT@8) + GL_STUB_ALIAS(VertexAttribI1ui, 850, VertexAttribI1ui@8, VertexAttribI1uiEXT, VertexAttribI1uiEXT@8) + GL_STUB_ALIAS(VertexAttribI1uiv, 851, VertexAttribI1uiv@8, VertexAttribI1uivEXT, VertexAttribI1uivEXT@8) + GL_STUB_ALIAS(VertexAttribI2i, 852, VertexAttribI2i@12, VertexAttribI2iEXT, VertexAttribI2iEXT@12) + GL_STUB_ALIAS(VertexAttribI2iv, 853, VertexAttribI2iv@8, VertexAttribI2ivEXT, VertexAttribI2ivEXT@8) + GL_STUB_ALIAS(VertexAttribI2ui, 854, VertexAttribI2ui@12, VertexAttribI2uiEXT, VertexAttribI2uiEXT@12) + GL_STUB_ALIAS(VertexAttribI2uiv, 855, VertexAttribI2uiv@8, VertexAttribI2uivEXT, VertexAttribI2uivEXT@8) + GL_STUB_ALIAS(VertexAttribI3i, 856, VertexAttribI3i@16, VertexAttribI3iEXT, VertexAttribI3iEXT@16) + GL_STUB_ALIAS(VertexAttribI3iv, 857, VertexAttribI3iv@8, VertexAttribI3ivEXT, VertexAttribI3ivEXT@8) + GL_STUB_ALIAS(VertexAttribI3ui, 858, VertexAttribI3ui@16, VertexAttribI3uiEXT, VertexAttribI3uiEXT@16) + GL_STUB_ALIAS(VertexAttribI3uiv, 859, VertexAttribI3uiv@8, VertexAttribI3uivEXT, VertexAttribI3uivEXT@8) + GL_STUB_ALIAS(VertexAttribI4bv, 860, VertexAttribI4bv@8, VertexAttribI4bvEXT, VertexAttribI4bvEXT@8) + GL_STUB_ALIAS(VertexAttribI4i, 861, VertexAttribI4i@20, VertexAttribI4iEXT, VertexAttribI4iEXT@20) + GL_STUB_ALIAS(VertexAttribI4iv, 862, VertexAttribI4iv@8, VertexAttribI4ivEXT, VertexAttribI4ivEXT@8) + GL_STUB_ALIAS(VertexAttribI4sv, 863, VertexAttribI4sv@8, VertexAttribI4svEXT, VertexAttribI4svEXT@8) + GL_STUB_ALIAS(VertexAttribI4ubv, 864, VertexAttribI4ubv@8, VertexAttribI4ubvEXT, VertexAttribI4ubvEXT@8) + GL_STUB_ALIAS(VertexAttribI4ui, 865, VertexAttribI4ui@20, VertexAttribI4uiEXT, VertexAttribI4uiEXT@20) + GL_STUB_ALIAS(VertexAttribI4uiv, 866, VertexAttribI4uiv@8, VertexAttribI4uivEXT, VertexAttribI4uivEXT@8) + GL_STUB_ALIAS(VertexAttribI4usv, 867, VertexAttribI4usv@8, VertexAttribI4usvEXT, VertexAttribI4usvEXT@8) + GL_STUB_ALIAS(VertexAttribIPointer, 868, VertexAttribIPointer@20, VertexAttribIPointerEXT, VertexAttribIPointerEXT@20) + GL_STUB_ALIAS(FramebufferTextureLayer, 869, FramebufferTextureLayer@20, FramebufferTextureLayerEXT, FramebufferTextureLayerEXT@20) + GL_STUB_ALIAS(ColorMaski, 870, ColorMaski@20, ColorMaskIndexedEXT, ColorMaskIndexedEXT@20) + GL_STUB_ALIAS(Disablei, 871, Disablei@8, DisableIndexedEXT, DisableIndexedEXT@8) + GL_STUB_ALIAS(Enablei, 872, Enablei@8, EnableIndexedEXT, EnableIndexedEXT@8) + GL_STUB_ALIAS(GetBooleani_v, 873, GetBooleani_v@12, GetBooleanIndexedvEXT, GetBooleanIndexedvEXT@12) + GL_STUB_ALIAS(GetIntegeri_v, 874, GetIntegeri_v@12, GetIntegerIndexedvEXT, GetIntegerIndexedvEXT@12) + GL_STUB_ALIAS(IsEnabledi, 875, IsEnabledi@8, IsEnabledIndexedEXT, IsEnabledIndexedEXT@8) + GL_STUB_ALIAS(GetTexParameterIiv, 878, GetTexParameterIiv@12, GetTexParameterIivEXT, GetTexParameterIivEXT@12) + GL_STUB_ALIAS(GetTexParameterIuiv, 879, GetTexParameterIuiv@12, GetTexParameterIuivEXT, GetTexParameterIuivEXT@12) + GL_STUB_ALIAS(TexParameterIiv, 880, TexParameterIiv@12, TexParameterIivEXT, TexParameterIivEXT@12) + GL_STUB_ALIAS(TexParameterIuiv, 881, TexParameterIuiv@12, TexParameterIuivEXT, TexParameterIuivEXT@12) + GL_STUB_ALIAS(BeginConditionalRender, 882, BeginConditionalRender@8, BeginConditionalRenderNV, BeginConditionalRenderNV@8) + GL_STUB_ALIAS(EndConditionalRender, 883, EndConditionalRender@0, EndConditionalRenderNV, EndConditionalRenderNV@0) + GL_STUB_ALIAS(BeginTransformFeedback, 884, BeginTransformFeedback@4, BeginTransformFeedbackEXT, BeginTransformFeedbackEXT@4) + GL_STUB_ALIAS(BindBufferBase, 885, BindBufferBase@12, BindBufferBaseEXT, BindBufferBaseEXT@12) + GL_STUB_ALIAS(BindBufferRange, 887, BindBufferRange@20, BindBufferRangeEXT, BindBufferRangeEXT@20) + GL_STUB_ALIAS(EndTransformFeedback, 888, EndTransformFeedback@0, EndTransformFeedbackEXT, EndTransformFeedbackEXT@0) + GL_STUB_ALIAS(GetTransformFeedbackVarying, 889, GetTransformFeedbackVarying@28, GetTransformFeedbackVaryingEXT, GetTransformFeedbackVaryingEXT@28) + GL_STUB_ALIAS(TransformFeedbackVaryings, 890, TransformFeedbackVaryings@16, TransformFeedbackVaryingsEXT, TransformFeedbackVaryingsEXT@16) + GL_STUB_ALIAS(ProvokingVertex, 891, ProvokingVertex@4, ProvokingVertexEXT, ProvokingVertexEXT@4) GLOBL GLNAME(gl_dispatch_functions_end) HIDDEN(GLNAME(gl_dispatch_functions_end)) diff --git a/src/mapi/glapi/glapitable.h b/src/mapi/glapi/glapitable.h index a9db488cdc5..5b7aeee6796 100644 --- a/src/mapi/glapi/glapitable.h +++ b/src/mapi/glapi/glapitable.h @@ -640,300 +640,314 @@ struct _glapi_table void (GLAPIENTRYP BlendEquationiARB)(GLuint buf, GLenum mode); /* 597 */ void (GLAPIENTRYP BlendFuncSeparateiARB)(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcA, GLenum dstA); /* 598 */ void (GLAPIENTRYP BlendFunciARB)(GLuint buf, GLenum src, GLenum dst); /* 599 */ - void (GLAPIENTRYP BindTransformFeedback)(GLenum target, GLuint id); /* 600 */ - void (GLAPIENTRYP DeleteTransformFeedbacks)(GLsizei n, const GLuint * ids); /* 601 */ - void (GLAPIENTRYP DrawTransformFeedback)(GLenum mode, GLuint id); /* 602 */ - void (GLAPIENTRYP GenTransformFeedbacks)(GLsizei n, GLuint * ids); /* 603 */ - GLboolean (GLAPIENTRYP IsTransformFeedback)(GLuint id); /* 604 */ - void (GLAPIENTRYP PauseTransformFeedback)(void); /* 605 */ - void (GLAPIENTRYP ResumeTransformFeedback)(void); /* 606 */ - void (GLAPIENTRYP ClearDepthf)(GLclampf depth); /* 607 */ - void (GLAPIENTRYP DepthRangef)(GLclampf zNear, GLclampf zFar); /* 608 */ - void (GLAPIENTRYP GetShaderPrecisionFormat)(GLenum shadertype, GLenum precisiontype, GLint * range, GLint * precision); /* 609 */ - void (GLAPIENTRYP ReleaseShaderCompiler)(void); /* 610 */ - void (GLAPIENTRYP ShaderBinary)(GLsizei n, const GLuint * shaders, GLenum binaryformat, const GLvoid * binary, GLsizei length); /* 611 */ - void (GLAPIENTRYP PolygonOffsetEXT)(GLfloat factor, GLfloat bias); /* 612 */ - void (GLAPIENTRYP GetPixelTexGenParameterfvSGIS)(GLenum pname, GLfloat * params); /* 613 */ - void (GLAPIENTRYP GetPixelTexGenParameterivSGIS)(GLenum pname, GLint * params); /* 614 */ - void (GLAPIENTRYP PixelTexGenParameterfSGIS)(GLenum pname, GLfloat param); /* 615 */ - void (GLAPIENTRYP PixelTexGenParameterfvSGIS)(GLenum pname, const GLfloat * params); /* 616 */ - void (GLAPIENTRYP PixelTexGenParameteriSGIS)(GLenum pname, GLint param); /* 617 */ - void (GLAPIENTRYP PixelTexGenParameterivSGIS)(GLenum pname, const GLint * params); /* 618 */ - void (GLAPIENTRYP SampleMaskSGIS)(GLclampf value, GLboolean invert); /* 619 */ - void (GLAPIENTRYP SamplePatternSGIS)(GLenum pattern); /* 620 */ - void (GLAPIENTRYP ColorPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 621 */ - void (GLAPIENTRYP EdgeFlagPointerEXT)(GLsizei stride, GLsizei count, const GLboolean * pointer); /* 622 */ - void (GLAPIENTRYP IndexPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 623 */ - void (GLAPIENTRYP NormalPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 624 */ - void (GLAPIENTRYP TexCoordPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 625 */ - void (GLAPIENTRYP VertexPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 626 */ - void (GLAPIENTRYP PointParameterfEXT)(GLenum pname, GLfloat param); /* 627 */ - void (GLAPIENTRYP PointParameterfvEXT)(GLenum pname, const GLfloat * params); /* 628 */ - void (GLAPIENTRYP LockArraysEXT)(GLint first, GLsizei count); /* 629 */ - void (GLAPIENTRYP UnlockArraysEXT)(void); /* 630 */ - void (GLAPIENTRYP SecondaryColor3bEXT)(GLbyte red, GLbyte green, GLbyte blue); /* 631 */ - void (GLAPIENTRYP SecondaryColor3bvEXT)(const GLbyte * v); /* 632 */ - void (GLAPIENTRYP SecondaryColor3dEXT)(GLdouble red, GLdouble green, GLdouble blue); /* 633 */ - void (GLAPIENTRYP SecondaryColor3dvEXT)(const GLdouble * v); /* 634 */ - void (GLAPIENTRYP SecondaryColor3fEXT)(GLfloat red, GLfloat green, GLfloat blue); /* 635 */ - void (GLAPIENTRYP SecondaryColor3fvEXT)(const GLfloat * v); /* 636 */ - void (GLAPIENTRYP SecondaryColor3iEXT)(GLint red, GLint green, GLint blue); /* 637 */ - void (GLAPIENTRYP SecondaryColor3ivEXT)(const GLint * v); /* 638 */ - void (GLAPIENTRYP SecondaryColor3sEXT)(GLshort red, GLshort green, GLshort blue); /* 639 */ - void (GLAPIENTRYP SecondaryColor3svEXT)(const GLshort * v); /* 640 */ - void (GLAPIENTRYP SecondaryColor3ubEXT)(GLubyte red, GLubyte green, GLubyte blue); /* 641 */ - void (GLAPIENTRYP SecondaryColor3ubvEXT)(const GLubyte * v); /* 642 */ - void (GLAPIENTRYP SecondaryColor3uiEXT)(GLuint red, GLuint green, GLuint blue); /* 643 */ - void (GLAPIENTRYP SecondaryColor3uivEXT)(const GLuint * v); /* 644 */ - void (GLAPIENTRYP SecondaryColor3usEXT)(GLushort red, GLushort green, GLushort blue); /* 645 */ - void (GLAPIENTRYP SecondaryColor3usvEXT)(const GLushort * v); /* 646 */ - void (GLAPIENTRYP SecondaryColorPointerEXT)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 647 */ - void (GLAPIENTRYP MultiDrawArraysEXT)(GLenum mode, const GLint * first, const GLsizei * count, GLsizei primcount); /* 648 */ - void (GLAPIENTRYP MultiDrawElementsEXT)(GLenum mode, const GLsizei * count, GLenum type, const GLvoid ** indices, GLsizei primcount); /* 649 */ - void (GLAPIENTRYP FogCoordPointerEXT)(GLenum type, GLsizei stride, const GLvoid * pointer); /* 650 */ - void (GLAPIENTRYP FogCoorddEXT)(GLdouble coord); /* 651 */ - void (GLAPIENTRYP FogCoorddvEXT)(const GLdouble * coord); /* 652 */ - void (GLAPIENTRYP FogCoordfEXT)(GLfloat coord); /* 653 */ - void (GLAPIENTRYP FogCoordfvEXT)(const GLfloat * coord); /* 654 */ - void (GLAPIENTRYP PixelTexGenSGIX)(GLenum mode); /* 655 */ - void (GLAPIENTRYP BlendFuncSeparateEXT)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); /* 656 */ - void (GLAPIENTRYP FlushVertexArrayRangeNV)(void); /* 657 */ - void (GLAPIENTRYP VertexArrayRangeNV)(GLsizei length, const GLvoid * pointer); /* 658 */ - void (GLAPIENTRYP CombinerInputNV)(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); /* 659 */ - void (GLAPIENTRYP CombinerOutputNV)(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum); /* 660 */ - void (GLAPIENTRYP CombinerParameterfNV)(GLenum pname, GLfloat param); /* 661 */ - void (GLAPIENTRYP CombinerParameterfvNV)(GLenum pname, const GLfloat * params); /* 662 */ - void (GLAPIENTRYP CombinerParameteriNV)(GLenum pname, GLint param); /* 663 */ - void (GLAPIENTRYP CombinerParameterivNV)(GLenum pname, const GLint * params); /* 664 */ - void (GLAPIENTRYP FinalCombinerInputNV)(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); /* 665 */ - void (GLAPIENTRYP GetCombinerInputParameterfvNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat * params); /* 666 */ - void (GLAPIENTRYP GetCombinerInputParameterivNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint * params); /* 667 */ - void (GLAPIENTRYP GetCombinerOutputParameterfvNV)(GLenum stage, GLenum portion, GLenum pname, GLfloat * params); /* 668 */ - void (GLAPIENTRYP GetCombinerOutputParameterivNV)(GLenum stage, GLenum portion, GLenum pname, GLint * params); /* 669 */ - void (GLAPIENTRYP GetFinalCombinerInputParameterfvNV)(GLenum variable, GLenum pname, GLfloat * params); /* 670 */ - void (GLAPIENTRYP GetFinalCombinerInputParameterivNV)(GLenum variable, GLenum pname, GLint * params); /* 671 */ - void (GLAPIENTRYP ResizeBuffersMESA)(void); /* 672 */ - void (GLAPIENTRYP WindowPos2dMESA)(GLdouble x, GLdouble y); /* 673 */ - void (GLAPIENTRYP WindowPos2dvMESA)(const GLdouble * v); /* 674 */ - void (GLAPIENTRYP WindowPos2fMESA)(GLfloat x, GLfloat y); /* 675 */ - void (GLAPIENTRYP WindowPos2fvMESA)(const GLfloat * v); /* 676 */ - void (GLAPIENTRYP WindowPos2iMESA)(GLint x, GLint y); /* 677 */ - void (GLAPIENTRYP WindowPos2ivMESA)(const GLint * v); /* 678 */ - void (GLAPIENTRYP WindowPos2sMESA)(GLshort x, GLshort y); /* 679 */ - void (GLAPIENTRYP WindowPos2svMESA)(const GLshort * v); /* 680 */ - void (GLAPIENTRYP WindowPos3dMESA)(GLdouble x, GLdouble y, GLdouble z); /* 681 */ - void (GLAPIENTRYP WindowPos3dvMESA)(const GLdouble * v); /* 682 */ - void (GLAPIENTRYP WindowPos3fMESA)(GLfloat x, GLfloat y, GLfloat z); /* 683 */ - void (GLAPIENTRYP WindowPos3fvMESA)(const GLfloat * v); /* 684 */ - void (GLAPIENTRYP WindowPos3iMESA)(GLint x, GLint y, GLint z); /* 685 */ - void (GLAPIENTRYP WindowPos3ivMESA)(const GLint * v); /* 686 */ - void (GLAPIENTRYP WindowPos3sMESA)(GLshort x, GLshort y, GLshort z); /* 687 */ - void (GLAPIENTRYP WindowPos3svMESA)(const GLshort * v); /* 688 */ - void (GLAPIENTRYP WindowPos4dMESA)(GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 689 */ - void (GLAPIENTRYP WindowPos4dvMESA)(const GLdouble * v); /* 690 */ - void (GLAPIENTRYP WindowPos4fMESA)(GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 691 */ - void (GLAPIENTRYP WindowPos4fvMESA)(const GLfloat * v); /* 692 */ - void (GLAPIENTRYP WindowPos4iMESA)(GLint x, GLint y, GLint z, GLint w); /* 693 */ - void (GLAPIENTRYP WindowPos4ivMESA)(const GLint * v); /* 694 */ - void (GLAPIENTRYP WindowPos4sMESA)(GLshort x, GLshort y, GLshort z, GLshort w); /* 695 */ - void (GLAPIENTRYP WindowPos4svMESA)(const GLshort * v); /* 696 */ - void (GLAPIENTRYP MultiModeDrawArraysIBM)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); /* 697 */ - void (GLAPIENTRYP MultiModeDrawElementsIBM)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); /* 698 */ - void (GLAPIENTRYP DeleteFencesNV)(GLsizei n, const GLuint * fences); /* 699 */ - void (GLAPIENTRYP FinishFenceNV)(GLuint fence); /* 700 */ - void (GLAPIENTRYP GenFencesNV)(GLsizei n, GLuint * fences); /* 701 */ - void (GLAPIENTRYP GetFenceivNV)(GLuint fence, GLenum pname, GLint * params); /* 702 */ - GLboolean (GLAPIENTRYP IsFenceNV)(GLuint fence); /* 703 */ - void (GLAPIENTRYP SetFenceNV)(GLuint fence, GLenum condition); /* 704 */ - GLboolean (GLAPIENTRYP TestFenceNV)(GLuint fence); /* 705 */ - GLboolean (GLAPIENTRYP AreProgramsResidentNV)(GLsizei n, const GLuint * ids, GLboolean * residences); /* 706 */ - void (GLAPIENTRYP BindProgramNV)(GLenum target, GLuint program); /* 707 */ - void (GLAPIENTRYP DeleteProgramsNV)(GLsizei n, const GLuint * programs); /* 708 */ - void (GLAPIENTRYP ExecuteProgramNV)(GLenum target, GLuint id, const GLfloat * params); /* 709 */ - void (GLAPIENTRYP GenProgramsNV)(GLsizei n, GLuint * programs); /* 710 */ - void (GLAPIENTRYP GetProgramParameterdvNV)(GLenum target, GLuint index, GLenum pname, GLdouble * params); /* 711 */ - void (GLAPIENTRYP GetProgramParameterfvNV)(GLenum target, GLuint index, GLenum pname, GLfloat * params); /* 712 */ - void (GLAPIENTRYP GetProgramStringNV)(GLuint id, GLenum pname, GLubyte * program); /* 713 */ - void (GLAPIENTRYP GetProgramivNV)(GLuint id, GLenum pname, GLint * params); /* 714 */ - void (GLAPIENTRYP GetTrackMatrixivNV)(GLenum target, GLuint address, GLenum pname, GLint * params); /* 715 */ - void (GLAPIENTRYP GetVertexAttribPointervNV)(GLuint index, GLenum pname, GLvoid ** pointer); /* 716 */ - void (GLAPIENTRYP GetVertexAttribdvNV)(GLuint index, GLenum pname, GLdouble * params); /* 717 */ - void (GLAPIENTRYP GetVertexAttribfvNV)(GLuint index, GLenum pname, GLfloat * params); /* 718 */ - void (GLAPIENTRYP GetVertexAttribivNV)(GLuint index, GLenum pname, GLint * params); /* 719 */ - GLboolean (GLAPIENTRYP IsProgramNV)(GLuint program); /* 720 */ - void (GLAPIENTRYP LoadProgramNV)(GLenum target, GLuint id, GLsizei len, const GLubyte * program); /* 721 */ - void (GLAPIENTRYP ProgramParameters4dvNV)(GLenum target, GLuint index, GLsizei num, const GLdouble * params); /* 722 */ - void (GLAPIENTRYP ProgramParameters4fvNV)(GLenum target, GLuint index, GLsizei num, const GLfloat * params); /* 723 */ - void (GLAPIENTRYP RequestResidentProgramsNV)(GLsizei n, const GLuint * ids); /* 724 */ - void (GLAPIENTRYP TrackMatrixNV)(GLenum target, GLuint address, GLenum matrix, GLenum transform); /* 725 */ - void (GLAPIENTRYP VertexAttrib1dNV)(GLuint index, GLdouble x); /* 726 */ - void (GLAPIENTRYP VertexAttrib1dvNV)(GLuint index, const GLdouble * v); /* 727 */ - void (GLAPIENTRYP VertexAttrib1fNV)(GLuint index, GLfloat x); /* 728 */ - void (GLAPIENTRYP VertexAttrib1fvNV)(GLuint index, const GLfloat * v); /* 729 */ - void (GLAPIENTRYP VertexAttrib1sNV)(GLuint index, GLshort x); /* 730 */ - void (GLAPIENTRYP VertexAttrib1svNV)(GLuint index, const GLshort * v); /* 731 */ - void (GLAPIENTRYP VertexAttrib2dNV)(GLuint index, GLdouble x, GLdouble y); /* 732 */ - void (GLAPIENTRYP VertexAttrib2dvNV)(GLuint index, const GLdouble * v); /* 733 */ - void (GLAPIENTRYP VertexAttrib2fNV)(GLuint index, GLfloat x, GLfloat y); /* 734 */ - void (GLAPIENTRYP VertexAttrib2fvNV)(GLuint index, const GLfloat * v); /* 735 */ - void (GLAPIENTRYP VertexAttrib2sNV)(GLuint index, GLshort x, GLshort y); /* 736 */ - void (GLAPIENTRYP VertexAttrib2svNV)(GLuint index, const GLshort * v); /* 737 */ - void (GLAPIENTRYP VertexAttrib3dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z); /* 738 */ - void (GLAPIENTRYP VertexAttrib3dvNV)(GLuint index, const GLdouble * v); /* 739 */ - void (GLAPIENTRYP VertexAttrib3fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z); /* 740 */ - void (GLAPIENTRYP VertexAttrib3fvNV)(GLuint index, const GLfloat * v); /* 741 */ - void (GLAPIENTRYP VertexAttrib3sNV)(GLuint index, GLshort x, GLshort y, GLshort z); /* 742 */ - void (GLAPIENTRYP VertexAttrib3svNV)(GLuint index, const GLshort * v); /* 743 */ - void (GLAPIENTRYP VertexAttrib4dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 744 */ - void (GLAPIENTRYP VertexAttrib4dvNV)(GLuint index, const GLdouble * v); /* 745 */ - void (GLAPIENTRYP VertexAttrib4fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 746 */ - void (GLAPIENTRYP VertexAttrib4fvNV)(GLuint index, const GLfloat * v); /* 747 */ - void (GLAPIENTRYP VertexAttrib4sNV)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); /* 748 */ - void (GLAPIENTRYP VertexAttrib4svNV)(GLuint index, const GLshort * v); /* 749 */ - void (GLAPIENTRYP VertexAttrib4ubNV)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); /* 750 */ - void (GLAPIENTRYP VertexAttrib4ubvNV)(GLuint index, const GLubyte * v); /* 751 */ - void (GLAPIENTRYP VertexAttribPointerNV)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 752 */ - void (GLAPIENTRYP VertexAttribs1dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 753 */ - void (GLAPIENTRYP VertexAttribs1fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 754 */ - void (GLAPIENTRYP VertexAttribs1svNV)(GLuint index, GLsizei n, const GLshort * v); /* 755 */ - void (GLAPIENTRYP VertexAttribs2dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 756 */ - void (GLAPIENTRYP VertexAttribs2fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 757 */ - void (GLAPIENTRYP VertexAttribs2svNV)(GLuint index, GLsizei n, const GLshort * v); /* 758 */ - void (GLAPIENTRYP VertexAttribs3dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 759 */ - void (GLAPIENTRYP VertexAttribs3fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 760 */ - void (GLAPIENTRYP VertexAttribs3svNV)(GLuint index, GLsizei n, const GLshort * v); /* 761 */ - void (GLAPIENTRYP VertexAttribs4dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 762 */ - void (GLAPIENTRYP VertexAttribs4fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 763 */ - void (GLAPIENTRYP VertexAttribs4svNV)(GLuint index, GLsizei n, const GLshort * v); /* 764 */ - void (GLAPIENTRYP VertexAttribs4ubvNV)(GLuint index, GLsizei n, const GLubyte * v); /* 765 */ - void (GLAPIENTRYP GetTexBumpParameterfvATI)(GLenum pname, GLfloat * param); /* 766 */ - void (GLAPIENTRYP GetTexBumpParameterivATI)(GLenum pname, GLint * param); /* 767 */ - void (GLAPIENTRYP TexBumpParameterfvATI)(GLenum pname, const GLfloat * param); /* 768 */ - void (GLAPIENTRYP TexBumpParameterivATI)(GLenum pname, const GLint * param); /* 769 */ - void (GLAPIENTRYP AlphaFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); /* 770 */ - void (GLAPIENTRYP AlphaFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); /* 771 */ - void (GLAPIENTRYP AlphaFragmentOp3ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); /* 772 */ - void (GLAPIENTRYP BeginFragmentShaderATI)(void); /* 773 */ - void (GLAPIENTRYP BindFragmentShaderATI)(GLuint id); /* 774 */ - void (GLAPIENTRYP ColorFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); /* 775 */ - void (GLAPIENTRYP ColorFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); /* 776 */ - void (GLAPIENTRYP ColorFragmentOp3ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); /* 777 */ - void (GLAPIENTRYP DeleteFragmentShaderATI)(GLuint id); /* 778 */ - void (GLAPIENTRYP EndFragmentShaderATI)(void); /* 779 */ - GLuint (GLAPIENTRYP GenFragmentShadersATI)(GLuint range); /* 780 */ - void (GLAPIENTRYP PassTexCoordATI)(GLuint dst, GLuint coord, GLenum swizzle); /* 781 */ - void (GLAPIENTRYP SampleMapATI)(GLuint dst, GLuint interp, GLenum swizzle); /* 782 */ - void (GLAPIENTRYP SetFragmentShaderConstantATI)(GLuint dst, const GLfloat * value); /* 783 */ - void (GLAPIENTRYP PointParameteriNV)(GLenum pname, GLint param); /* 784 */ - void (GLAPIENTRYP PointParameterivNV)(GLenum pname, const GLint * params); /* 785 */ - void (GLAPIENTRYP ActiveStencilFaceEXT)(GLenum face); /* 786 */ - void (GLAPIENTRYP BindVertexArrayAPPLE)(GLuint array); /* 787 */ - void (GLAPIENTRYP DeleteVertexArraysAPPLE)(GLsizei n, const GLuint * arrays); /* 788 */ - void (GLAPIENTRYP GenVertexArraysAPPLE)(GLsizei n, GLuint * arrays); /* 789 */ - GLboolean (GLAPIENTRYP IsVertexArrayAPPLE)(GLuint array); /* 790 */ - void (GLAPIENTRYP GetProgramNamedParameterdvNV)(GLuint id, GLsizei len, const GLubyte * name, GLdouble * params); /* 791 */ - void (GLAPIENTRYP GetProgramNamedParameterfvNV)(GLuint id, GLsizei len, const GLubyte * name, GLfloat * params); /* 792 */ - void (GLAPIENTRYP ProgramNamedParameter4dNV)(GLuint id, GLsizei len, const GLubyte * name, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 793 */ - void (GLAPIENTRYP ProgramNamedParameter4dvNV)(GLuint id, GLsizei len, const GLubyte * name, const GLdouble * v); /* 794 */ - void (GLAPIENTRYP ProgramNamedParameter4fNV)(GLuint id, GLsizei len, const GLubyte * name, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 795 */ - void (GLAPIENTRYP ProgramNamedParameter4fvNV)(GLuint id, GLsizei len, const GLubyte * name, const GLfloat * v); /* 796 */ - void (GLAPIENTRYP PrimitiveRestartIndexNV)(GLuint index); /* 797 */ - void (GLAPIENTRYP PrimitiveRestartNV)(void); /* 798 */ - void (GLAPIENTRYP DepthBoundsEXT)(GLclampd zmin, GLclampd zmax); /* 799 */ - void (GLAPIENTRYP BlendEquationSeparateEXT)(GLenum modeRGB, GLenum modeA); /* 800 */ - void (GLAPIENTRYP BindFramebufferEXT)(GLenum target, GLuint framebuffer); /* 801 */ - void (GLAPIENTRYP BindRenderbufferEXT)(GLenum target, GLuint renderbuffer); /* 802 */ - GLenum (GLAPIENTRYP CheckFramebufferStatusEXT)(GLenum target); /* 803 */ - void (GLAPIENTRYP DeleteFramebuffersEXT)(GLsizei n, const GLuint * framebuffers); /* 804 */ - void (GLAPIENTRYP DeleteRenderbuffersEXT)(GLsizei n, const GLuint * renderbuffers); /* 805 */ - void (GLAPIENTRYP FramebufferRenderbufferEXT)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); /* 806 */ - void (GLAPIENTRYP FramebufferTexture1DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); /* 807 */ - void (GLAPIENTRYP FramebufferTexture2DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); /* 808 */ - void (GLAPIENTRYP FramebufferTexture3DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); /* 809 */ - void (GLAPIENTRYP GenFramebuffersEXT)(GLsizei n, GLuint * framebuffers); /* 810 */ - void (GLAPIENTRYP GenRenderbuffersEXT)(GLsizei n, GLuint * renderbuffers); /* 811 */ - void (GLAPIENTRYP GenerateMipmapEXT)(GLenum target); /* 812 */ - void (GLAPIENTRYP GetFramebufferAttachmentParameterivEXT)(GLenum target, GLenum attachment, GLenum pname, GLint * params); /* 813 */ - void (GLAPIENTRYP GetRenderbufferParameterivEXT)(GLenum target, GLenum pname, GLint * params); /* 814 */ - GLboolean (GLAPIENTRYP IsFramebufferEXT)(GLuint framebuffer); /* 815 */ - GLboolean (GLAPIENTRYP IsRenderbufferEXT)(GLuint renderbuffer); /* 816 */ - void (GLAPIENTRYP RenderbufferStorageEXT)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height); /* 817 */ - void (GLAPIENTRYP BlitFramebufferEXT)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); /* 818 */ - void (GLAPIENTRYP BufferParameteriAPPLE)(GLenum target, GLenum pname, GLint param); /* 819 */ - void (GLAPIENTRYP FlushMappedBufferRangeAPPLE)(GLenum target, GLintptr offset, GLsizeiptr size); /* 820 */ - void (GLAPIENTRYP BindFragDataLocationEXT)(GLuint program, GLuint colorNumber, const GLchar * name); /* 821 */ - GLint (GLAPIENTRYP GetFragDataLocationEXT)(GLuint program, const GLchar * name); /* 822 */ - void (GLAPIENTRYP GetUniformuivEXT)(GLuint program, GLint location, GLuint * params); /* 823 */ - void (GLAPIENTRYP GetVertexAttribIivEXT)(GLuint index, GLenum pname, GLint * params); /* 824 */ - void (GLAPIENTRYP GetVertexAttribIuivEXT)(GLuint index, GLenum pname, GLuint * params); /* 825 */ - void (GLAPIENTRYP Uniform1uiEXT)(GLint location, GLuint x); /* 826 */ - void (GLAPIENTRYP Uniform1uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 827 */ - void (GLAPIENTRYP Uniform2uiEXT)(GLint location, GLuint x, GLuint y); /* 828 */ - void (GLAPIENTRYP Uniform2uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 829 */ - void (GLAPIENTRYP Uniform3uiEXT)(GLint location, GLuint x, GLuint y, GLuint z); /* 830 */ - void (GLAPIENTRYP Uniform3uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 831 */ - void (GLAPIENTRYP Uniform4uiEXT)(GLint location, GLuint x, GLuint y, GLuint z, GLuint w); /* 832 */ - void (GLAPIENTRYP Uniform4uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 833 */ - void (GLAPIENTRYP VertexAttribI1iEXT)(GLuint index, GLint x); /* 834 */ - void (GLAPIENTRYP VertexAttribI1ivEXT)(GLuint index, const GLint * v); /* 835 */ - void (GLAPIENTRYP VertexAttribI1uiEXT)(GLuint index, GLuint x); /* 836 */ - void (GLAPIENTRYP VertexAttribI1uivEXT)(GLuint index, const GLuint * v); /* 837 */ - void (GLAPIENTRYP VertexAttribI2iEXT)(GLuint index, GLint x, GLint y); /* 838 */ - void (GLAPIENTRYP VertexAttribI2ivEXT)(GLuint index, const GLint * v); /* 839 */ - void (GLAPIENTRYP VertexAttribI2uiEXT)(GLuint index, GLuint x, GLuint y); /* 840 */ - void (GLAPIENTRYP VertexAttribI2uivEXT)(GLuint index, const GLuint * v); /* 841 */ - void (GLAPIENTRYP VertexAttribI3iEXT)(GLuint index, GLint x, GLint y, GLint z); /* 842 */ - void (GLAPIENTRYP VertexAttribI3ivEXT)(GLuint index, const GLint * v); /* 843 */ - void (GLAPIENTRYP VertexAttribI3uiEXT)(GLuint index, GLuint x, GLuint y, GLuint z); /* 844 */ - void (GLAPIENTRYP VertexAttribI3uivEXT)(GLuint index, const GLuint * v); /* 845 */ - void (GLAPIENTRYP VertexAttribI4bvEXT)(GLuint index, const GLbyte * v); /* 846 */ - void (GLAPIENTRYP VertexAttribI4iEXT)(GLuint index, GLint x, GLint y, GLint z, GLint w); /* 847 */ - void (GLAPIENTRYP VertexAttribI4ivEXT)(GLuint index, const GLint * v); /* 848 */ - void (GLAPIENTRYP VertexAttribI4svEXT)(GLuint index, const GLshort * v); /* 849 */ - void (GLAPIENTRYP VertexAttribI4ubvEXT)(GLuint index, const GLubyte * v); /* 850 */ - void (GLAPIENTRYP VertexAttribI4uiEXT)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w); /* 851 */ - void (GLAPIENTRYP VertexAttribI4uivEXT)(GLuint index, const GLuint * v); /* 852 */ - void (GLAPIENTRYP VertexAttribI4usvEXT)(GLuint index, const GLushort * v); /* 853 */ - void (GLAPIENTRYP VertexAttribIPointerEXT)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 854 */ - void (GLAPIENTRYP FramebufferTextureLayerEXT)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer); /* 855 */ - void (GLAPIENTRYP ColorMaskIndexedEXT)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a); /* 856 */ - void (GLAPIENTRYP DisableIndexedEXT)(GLenum target, GLuint index); /* 857 */ - void (GLAPIENTRYP EnableIndexedEXT)(GLenum target, GLuint index); /* 858 */ - void (GLAPIENTRYP GetBooleanIndexedvEXT)(GLenum value, GLuint index, GLboolean * data); /* 859 */ - void (GLAPIENTRYP GetIntegerIndexedvEXT)(GLenum value, GLuint index, GLint * data); /* 860 */ - GLboolean (GLAPIENTRYP IsEnabledIndexedEXT)(GLenum target, GLuint index); /* 861 */ - void (GLAPIENTRYP ClearColorIiEXT)(GLint r, GLint g, GLint b, GLint a); /* 862 */ - void (GLAPIENTRYP ClearColorIuiEXT)(GLuint r, GLuint g, GLuint b, GLuint a); /* 863 */ - void (GLAPIENTRYP GetTexParameterIivEXT)(GLenum target, GLenum pname, GLint * params); /* 864 */ - void (GLAPIENTRYP GetTexParameterIuivEXT)(GLenum target, GLenum pname, GLuint * params); /* 865 */ - void (GLAPIENTRYP TexParameterIivEXT)(GLenum target, GLenum pname, const GLint * params); /* 866 */ - void (GLAPIENTRYP TexParameterIuivEXT)(GLenum target, GLenum pname, const GLuint * params); /* 867 */ - void (GLAPIENTRYP BeginConditionalRenderNV)(GLuint query, GLenum mode); /* 868 */ - void (GLAPIENTRYP EndConditionalRenderNV)(void); /* 869 */ - void (GLAPIENTRYP BeginTransformFeedbackEXT)(GLenum mode); /* 870 */ - void (GLAPIENTRYP BindBufferBaseEXT)(GLenum target, GLuint index, GLuint buffer); /* 871 */ - void (GLAPIENTRYP BindBufferOffsetEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset); /* 872 */ - void (GLAPIENTRYP BindBufferRangeEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size); /* 873 */ - void (GLAPIENTRYP EndTransformFeedbackEXT)(void); /* 874 */ - void (GLAPIENTRYP GetTransformFeedbackVaryingEXT)(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLsizei * size, GLenum * type, GLchar * name); /* 875 */ - void (GLAPIENTRYP TransformFeedbackVaryingsEXT)(GLuint program, GLsizei count, const char ** varyings, GLenum bufferMode); /* 876 */ - void (GLAPIENTRYP ProvokingVertexEXT)(GLenum mode); /* 877 */ - void (GLAPIENTRYP GetTexParameterPointervAPPLE)(GLenum target, GLenum pname, GLvoid ** params); /* 878 */ - void (GLAPIENTRYP TextureRangeAPPLE)(GLenum target, GLsizei length, GLvoid * pointer); /* 879 */ - void (GLAPIENTRYP GetObjectParameterivAPPLE)(GLenum objectType, GLuint name, GLenum pname, GLint * value); /* 880 */ - GLenum (GLAPIENTRYP ObjectPurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); /* 881 */ - GLenum (GLAPIENTRYP ObjectUnpurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); /* 882 */ - void (GLAPIENTRYP ActiveProgramEXT)(GLuint program); /* 883 */ - GLuint (GLAPIENTRYP CreateShaderProgramEXT)(GLenum type, const GLchar * string); /* 884 */ - void (GLAPIENTRYP UseShaderProgramEXT)(GLenum type, GLuint program); /* 885 */ - void (GLAPIENTRYP TextureBarrierNV)(void); /* 886 */ - void (GLAPIENTRYP StencilFuncSeparateATI)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); /* 887 */ - void (GLAPIENTRYP ProgramEnvParameters4fvEXT)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); /* 888 */ - void (GLAPIENTRYP ProgramLocalParameters4fvEXT)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); /* 889 */ - void (GLAPIENTRYP GetQueryObjecti64vEXT)(GLuint id, GLenum pname, GLint64EXT * params); /* 890 */ - void (GLAPIENTRYP GetQueryObjectui64vEXT)(GLuint id, GLenum pname, GLuint64EXT * params); /* 891 */ - void (GLAPIENTRYP EGLImageTargetRenderbufferStorageOES)(GLenum target, GLvoid * writeOffset); /* 892 */ - void (GLAPIENTRYP EGLImageTargetTexture2DOES)(GLenum target, GLvoid * writeOffset); /* 893 */ + void (GLAPIENTRYP BindSampler)(GLuint unit, GLuint sampler); /* 600 */ + void (GLAPIENTRYP DeleteSamplers)(GLsizei count, const GLuint * samplers); /* 601 */ + void (GLAPIENTRYP GenSamplers)(GLsizei count, GLuint * samplers); /* 602 */ + void (GLAPIENTRYP GetSamplerParameterIiv)(GLuint sampler, GLenum pname, GLint * params); /* 603 */ + void (GLAPIENTRYP GetSamplerParameterIuiv)(GLuint sampler, GLenum pname, GLuint * params); /* 604 */ + void (GLAPIENTRYP GetSamplerParameterfv)(GLuint sampler, GLenum pname, GLfloat * params); /* 605 */ + void (GLAPIENTRYP GetSamplerParameteriv)(GLuint sampler, GLenum pname, GLint * params); /* 606 */ + GLboolean (GLAPIENTRYP IsSampler)(GLuint sampler); /* 607 */ + void (GLAPIENTRYP SamplerParameterIiv)(GLuint sampler, GLenum pname, const GLint * params); /* 608 */ + void (GLAPIENTRYP SamplerParameterIuiv)(GLuint sampler, GLenum pname, const GLuint * params); /* 609 */ + void (GLAPIENTRYP SamplerParameterf)(GLuint sampler, GLenum pname, GLfloat param); /* 610 */ + void (GLAPIENTRYP SamplerParameterfv)(GLuint sampler, GLenum pname, const GLfloat * params); /* 611 */ + void (GLAPIENTRYP SamplerParameteri)(GLuint sampler, GLenum pname, GLint param); /* 612 */ + void (GLAPIENTRYP SamplerParameteriv)(GLuint sampler, GLenum pname, const GLint * params); /* 613 */ + void (GLAPIENTRYP BindTransformFeedback)(GLenum target, GLuint id); /* 614 */ + void (GLAPIENTRYP DeleteTransformFeedbacks)(GLsizei n, const GLuint * ids); /* 615 */ + void (GLAPIENTRYP DrawTransformFeedback)(GLenum mode, GLuint id); /* 616 */ + void (GLAPIENTRYP GenTransformFeedbacks)(GLsizei n, GLuint * ids); /* 617 */ + GLboolean (GLAPIENTRYP IsTransformFeedback)(GLuint id); /* 618 */ + void (GLAPIENTRYP PauseTransformFeedback)(void); /* 619 */ + void (GLAPIENTRYP ResumeTransformFeedback)(void); /* 620 */ + void (GLAPIENTRYP ClearDepthf)(GLclampf depth); /* 621 */ + void (GLAPIENTRYP DepthRangef)(GLclampf zNear, GLclampf zFar); /* 622 */ + void (GLAPIENTRYP GetShaderPrecisionFormat)(GLenum shadertype, GLenum precisiontype, GLint * range, GLint * precision); /* 623 */ + void (GLAPIENTRYP ReleaseShaderCompiler)(void); /* 624 */ + void (GLAPIENTRYP ShaderBinary)(GLsizei n, const GLuint * shaders, GLenum binaryformat, const GLvoid * binary, GLsizei length); /* 625 */ + void (GLAPIENTRYP PolygonOffsetEXT)(GLfloat factor, GLfloat bias); /* 626 */ + void (GLAPIENTRYP GetPixelTexGenParameterfvSGIS)(GLenum pname, GLfloat * params); /* 627 */ + void (GLAPIENTRYP GetPixelTexGenParameterivSGIS)(GLenum pname, GLint * params); /* 628 */ + void (GLAPIENTRYP PixelTexGenParameterfSGIS)(GLenum pname, GLfloat param); /* 629 */ + void (GLAPIENTRYP PixelTexGenParameterfvSGIS)(GLenum pname, const GLfloat * params); /* 630 */ + void (GLAPIENTRYP PixelTexGenParameteriSGIS)(GLenum pname, GLint param); /* 631 */ + void (GLAPIENTRYP PixelTexGenParameterivSGIS)(GLenum pname, const GLint * params); /* 632 */ + void (GLAPIENTRYP SampleMaskSGIS)(GLclampf value, GLboolean invert); /* 633 */ + void (GLAPIENTRYP SamplePatternSGIS)(GLenum pattern); /* 634 */ + void (GLAPIENTRYP ColorPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 635 */ + void (GLAPIENTRYP EdgeFlagPointerEXT)(GLsizei stride, GLsizei count, const GLboolean * pointer); /* 636 */ + void (GLAPIENTRYP IndexPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 637 */ + void (GLAPIENTRYP NormalPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 638 */ + void (GLAPIENTRYP TexCoordPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 639 */ + void (GLAPIENTRYP VertexPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 640 */ + void (GLAPIENTRYP PointParameterfEXT)(GLenum pname, GLfloat param); /* 641 */ + void (GLAPIENTRYP PointParameterfvEXT)(GLenum pname, const GLfloat * params); /* 642 */ + void (GLAPIENTRYP LockArraysEXT)(GLint first, GLsizei count); /* 643 */ + void (GLAPIENTRYP UnlockArraysEXT)(void); /* 644 */ + void (GLAPIENTRYP SecondaryColor3bEXT)(GLbyte red, GLbyte green, GLbyte blue); /* 645 */ + void (GLAPIENTRYP SecondaryColor3bvEXT)(const GLbyte * v); /* 646 */ + void (GLAPIENTRYP SecondaryColor3dEXT)(GLdouble red, GLdouble green, GLdouble blue); /* 647 */ + void (GLAPIENTRYP SecondaryColor3dvEXT)(const GLdouble * v); /* 648 */ + void (GLAPIENTRYP SecondaryColor3fEXT)(GLfloat red, GLfloat green, GLfloat blue); /* 649 */ + void (GLAPIENTRYP SecondaryColor3fvEXT)(const GLfloat * v); /* 650 */ + void (GLAPIENTRYP SecondaryColor3iEXT)(GLint red, GLint green, GLint blue); /* 651 */ + void (GLAPIENTRYP SecondaryColor3ivEXT)(const GLint * v); /* 652 */ + void (GLAPIENTRYP SecondaryColor3sEXT)(GLshort red, GLshort green, GLshort blue); /* 653 */ + void (GLAPIENTRYP SecondaryColor3svEXT)(const GLshort * v); /* 654 */ + void (GLAPIENTRYP SecondaryColor3ubEXT)(GLubyte red, GLubyte green, GLubyte blue); /* 655 */ + void (GLAPIENTRYP SecondaryColor3ubvEXT)(const GLubyte * v); /* 656 */ + void (GLAPIENTRYP SecondaryColor3uiEXT)(GLuint red, GLuint green, GLuint blue); /* 657 */ + void (GLAPIENTRYP SecondaryColor3uivEXT)(const GLuint * v); /* 658 */ + void (GLAPIENTRYP SecondaryColor3usEXT)(GLushort red, GLushort green, GLushort blue); /* 659 */ + void (GLAPIENTRYP SecondaryColor3usvEXT)(const GLushort * v); /* 660 */ + void (GLAPIENTRYP SecondaryColorPointerEXT)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 661 */ + void (GLAPIENTRYP MultiDrawArraysEXT)(GLenum mode, const GLint * first, const GLsizei * count, GLsizei primcount); /* 662 */ + void (GLAPIENTRYP MultiDrawElementsEXT)(GLenum mode, const GLsizei * count, GLenum type, const GLvoid ** indices, GLsizei primcount); /* 663 */ + void (GLAPIENTRYP FogCoordPointerEXT)(GLenum type, GLsizei stride, const GLvoid * pointer); /* 664 */ + void (GLAPIENTRYP FogCoorddEXT)(GLdouble coord); /* 665 */ + void (GLAPIENTRYP FogCoorddvEXT)(const GLdouble * coord); /* 666 */ + void (GLAPIENTRYP FogCoordfEXT)(GLfloat coord); /* 667 */ + void (GLAPIENTRYP FogCoordfvEXT)(const GLfloat * coord); /* 668 */ + void (GLAPIENTRYP PixelTexGenSGIX)(GLenum mode); /* 669 */ + void (GLAPIENTRYP BlendFuncSeparateEXT)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); /* 670 */ + void (GLAPIENTRYP FlushVertexArrayRangeNV)(void); /* 671 */ + void (GLAPIENTRYP VertexArrayRangeNV)(GLsizei length, const GLvoid * pointer); /* 672 */ + void (GLAPIENTRYP CombinerInputNV)(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); /* 673 */ + void (GLAPIENTRYP CombinerOutputNV)(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum); /* 674 */ + void (GLAPIENTRYP CombinerParameterfNV)(GLenum pname, GLfloat param); /* 675 */ + void (GLAPIENTRYP CombinerParameterfvNV)(GLenum pname, const GLfloat * params); /* 676 */ + void (GLAPIENTRYP CombinerParameteriNV)(GLenum pname, GLint param); /* 677 */ + void (GLAPIENTRYP CombinerParameterivNV)(GLenum pname, const GLint * params); /* 678 */ + void (GLAPIENTRYP FinalCombinerInputNV)(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); /* 679 */ + void (GLAPIENTRYP GetCombinerInputParameterfvNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat * params); /* 680 */ + void (GLAPIENTRYP GetCombinerInputParameterivNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint * params); /* 681 */ + void (GLAPIENTRYP GetCombinerOutputParameterfvNV)(GLenum stage, GLenum portion, GLenum pname, GLfloat * params); /* 682 */ + void (GLAPIENTRYP GetCombinerOutputParameterivNV)(GLenum stage, GLenum portion, GLenum pname, GLint * params); /* 683 */ + void (GLAPIENTRYP GetFinalCombinerInputParameterfvNV)(GLenum variable, GLenum pname, GLfloat * params); /* 684 */ + void (GLAPIENTRYP GetFinalCombinerInputParameterivNV)(GLenum variable, GLenum pname, GLint * params); /* 685 */ + void (GLAPIENTRYP ResizeBuffersMESA)(void); /* 686 */ + void (GLAPIENTRYP WindowPos2dMESA)(GLdouble x, GLdouble y); /* 687 */ + void (GLAPIENTRYP WindowPos2dvMESA)(const GLdouble * v); /* 688 */ + void (GLAPIENTRYP WindowPos2fMESA)(GLfloat x, GLfloat y); /* 689 */ + void (GLAPIENTRYP WindowPos2fvMESA)(const GLfloat * v); /* 690 */ + void (GLAPIENTRYP WindowPos2iMESA)(GLint x, GLint y); /* 691 */ + void (GLAPIENTRYP WindowPos2ivMESA)(const GLint * v); /* 692 */ + void (GLAPIENTRYP WindowPos2sMESA)(GLshort x, GLshort y); /* 693 */ + void (GLAPIENTRYP WindowPos2svMESA)(const GLshort * v); /* 694 */ + void (GLAPIENTRYP WindowPos3dMESA)(GLdouble x, GLdouble y, GLdouble z); /* 695 */ + void (GLAPIENTRYP WindowPos3dvMESA)(const GLdouble * v); /* 696 */ + void (GLAPIENTRYP WindowPos3fMESA)(GLfloat x, GLfloat y, GLfloat z); /* 697 */ + void (GLAPIENTRYP WindowPos3fvMESA)(const GLfloat * v); /* 698 */ + void (GLAPIENTRYP WindowPos3iMESA)(GLint x, GLint y, GLint z); /* 699 */ + void (GLAPIENTRYP WindowPos3ivMESA)(const GLint * v); /* 700 */ + void (GLAPIENTRYP WindowPos3sMESA)(GLshort x, GLshort y, GLshort z); /* 701 */ + void (GLAPIENTRYP WindowPos3svMESA)(const GLshort * v); /* 702 */ + void (GLAPIENTRYP WindowPos4dMESA)(GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 703 */ + void (GLAPIENTRYP WindowPos4dvMESA)(const GLdouble * v); /* 704 */ + void (GLAPIENTRYP WindowPos4fMESA)(GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 705 */ + void (GLAPIENTRYP WindowPos4fvMESA)(const GLfloat * v); /* 706 */ + void (GLAPIENTRYP WindowPos4iMESA)(GLint x, GLint y, GLint z, GLint w); /* 707 */ + void (GLAPIENTRYP WindowPos4ivMESA)(const GLint * v); /* 708 */ + void (GLAPIENTRYP WindowPos4sMESA)(GLshort x, GLshort y, GLshort z, GLshort w); /* 709 */ + void (GLAPIENTRYP WindowPos4svMESA)(const GLshort * v); /* 710 */ + void (GLAPIENTRYP MultiModeDrawArraysIBM)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); /* 711 */ + void (GLAPIENTRYP MultiModeDrawElementsIBM)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); /* 712 */ + void (GLAPIENTRYP DeleteFencesNV)(GLsizei n, const GLuint * fences); /* 713 */ + void (GLAPIENTRYP FinishFenceNV)(GLuint fence); /* 714 */ + void (GLAPIENTRYP GenFencesNV)(GLsizei n, GLuint * fences); /* 715 */ + void (GLAPIENTRYP GetFenceivNV)(GLuint fence, GLenum pname, GLint * params); /* 716 */ + GLboolean (GLAPIENTRYP IsFenceNV)(GLuint fence); /* 717 */ + void (GLAPIENTRYP SetFenceNV)(GLuint fence, GLenum condition); /* 718 */ + GLboolean (GLAPIENTRYP TestFenceNV)(GLuint fence); /* 719 */ + GLboolean (GLAPIENTRYP AreProgramsResidentNV)(GLsizei n, const GLuint * ids, GLboolean * residences); /* 720 */ + void (GLAPIENTRYP BindProgramNV)(GLenum target, GLuint program); /* 721 */ + void (GLAPIENTRYP DeleteProgramsNV)(GLsizei n, const GLuint * programs); /* 722 */ + void (GLAPIENTRYP ExecuteProgramNV)(GLenum target, GLuint id, const GLfloat * params); /* 723 */ + void (GLAPIENTRYP GenProgramsNV)(GLsizei n, GLuint * programs); /* 724 */ + void (GLAPIENTRYP GetProgramParameterdvNV)(GLenum target, GLuint index, GLenum pname, GLdouble * params); /* 725 */ + void (GLAPIENTRYP GetProgramParameterfvNV)(GLenum target, GLuint index, GLenum pname, GLfloat * params); /* 726 */ + void (GLAPIENTRYP GetProgramStringNV)(GLuint id, GLenum pname, GLubyte * program); /* 727 */ + void (GLAPIENTRYP GetProgramivNV)(GLuint id, GLenum pname, GLint * params); /* 728 */ + void (GLAPIENTRYP GetTrackMatrixivNV)(GLenum target, GLuint address, GLenum pname, GLint * params); /* 729 */ + void (GLAPIENTRYP GetVertexAttribPointervNV)(GLuint index, GLenum pname, GLvoid ** pointer); /* 730 */ + void (GLAPIENTRYP GetVertexAttribdvNV)(GLuint index, GLenum pname, GLdouble * params); /* 731 */ + void (GLAPIENTRYP GetVertexAttribfvNV)(GLuint index, GLenum pname, GLfloat * params); /* 732 */ + void (GLAPIENTRYP GetVertexAttribivNV)(GLuint index, GLenum pname, GLint * params); /* 733 */ + GLboolean (GLAPIENTRYP IsProgramNV)(GLuint program); /* 734 */ + void (GLAPIENTRYP LoadProgramNV)(GLenum target, GLuint id, GLsizei len, const GLubyte * program); /* 735 */ + void (GLAPIENTRYP ProgramParameters4dvNV)(GLenum target, GLuint index, GLsizei num, const GLdouble * params); /* 736 */ + void (GLAPIENTRYP ProgramParameters4fvNV)(GLenum target, GLuint index, GLsizei num, const GLfloat * params); /* 737 */ + void (GLAPIENTRYP RequestResidentProgramsNV)(GLsizei n, const GLuint * ids); /* 738 */ + void (GLAPIENTRYP TrackMatrixNV)(GLenum target, GLuint address, GLenum matrix, GLenum transform); /* 739 */ + void (GLAPIENTRYP VertexAttrib1dNV)(GLuint index, GLdouble x); /* 740 */ + void (GLAPIENTRYP VertexAttrib1dvNV)(GLuint index, const GLdouble * v); /* 741 */ + void (GLAPIENTRYP VertexAttrib1fNV)(GLuint index, GLfloat x); /* 742 */ + void (GLAPIENTRYP VertexAttrib1fvNV)(GLuint index, const GLfloat * v); /* 743 */ + void (GLAPIENTRYP VertexAttrib1sNV)(GLuint index, GLshort x); /* 744 */ + void (GLAPIENTRYP VertexAttrib1svNV)(GLuint index, const GLshort * v); /* 745 */ + void (GLAPIENTRYP VertexAttrib2dNV)(GLuint index, GLdouble x, GLdouble y); /* 746 */ + void (GLAPIENTRYP VertexAttrib2dvNV)(GLuint index, const GLdouble * v); /* 747 */ + void (GLAPIENTRYP VertexAttrib2fNV)(GLuint index, GLfloat x, GLfloat y); /* 748 */ + void (GLAPIENTRYP VertexAttrib2fvNV)(GLuint index, const GLfloat * v); /* 749 */ + void (GLAPIENTRYP VertexAttrib2sNV)(GLuint index, GLshort x, GLshort y); /* 750 */ + void (GLAPIENTRYP VertexAttrib2svNV)(GLuint index, const GLshort * v); /* 751 */ + void (GLAPIENTRYP VertexAttrib3dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z); /* 752 */ + void (GLAPIENTRYP VertexAttrib3dvNV)(GLuint index, const GLdouble * v); /* 753 */ + void (GLAPIENTRYP VertexAttrib3fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z); /* 754 */ + void (GLAPIENTRYP VertexAttrib3fvNV)(GLuint index, const GLfloat * v); /* 755 */ + void (GLAPIENTRYP VertexAttrib3sNV)(GLuint index, GLshort x, GLshort y, GLshort z); /* 756 */ + void (GLAPIENTRYP VertexAttrib3svNV)(GLuint index, const GLshort * v); /* 757 */ + void (GLAPIENTRYP VertexAttrib4dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 758 */ + void (GLAPIENTRYP VertexAttrib4dvNV)(GLuint index, const GLdouble * v); /* 759 */ + void (GLAPIENTRYP VertexAttrib4fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 760 */ + void (GLAPIENTRYP VertexAttrib4fvNV)(GLuint index, const GLfloat * v); /* 761 */ + void (GLAPIENTRYP VertexAttrib4sNV)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); /* 762 */ + void (GLAPIENTRYP VertexAttrib4svNV)(GLuint index, const GLshort * v); /* 763 */ + void (GLAPIENTRYP VertexAttrib4ubNV)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); /* 764 */ + void (GLAPIENTRYP VertexAttrib4ubvNV)(GLuint index, const GLubyte * v); /* 765 */ + void (GLAPIENTRYP VertexAttribPointerNV)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 766 */ + void (GLAPIENTRYP VertexAttribs1dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 767 */ + void (GLAPIENTRYP VertexAttribs1fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 768 */ + void (GLAPIENTRYP VertexAttribs1svNV)(GLuint index, GLsizei n, const GLshort * v); /* 769 */ + void (GLAPIENTRYP VertexAttribs2dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 770 */ + void (GLAPIENTRYP VertexAttribs2fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 771 */ + void (GLAPIENTRYP VertexAttribs2svNV)(GLuint index, GLsizei n, const GLshort * v); /* 772 */ + void (GLAPIENTRYP VertexAttribs3dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 773 */ + void (GLAPIENTRYP VertexAttribs3fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 774 */ + void (GLAPIENTRYP VertexAttribs3svNV)(GLuint index, GLsizei n, const GLshort * v); /* 775 */ + void (GLAPIENTRYP VertexAttribs4dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 776 */ + void (GLAPIENTRYP VertexAttribs4fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 777 */ + void (GLAPIENTRYP VertexAttribs4svNV)(GLuint index, GLsizei n, const GLshort * v); /* 778 */ + void (GLAPIENTRYP VertexAttribs4ubvNV)(GLuint index, GLsizei n, const GLubyte * v); /* 779 */ + void (GLAPIENTRYP GetTexBumpParameterfvATI)(GLenum pname, GLfloat * param); /* 780 */ + void (GLAPIENTRYP GetTexBumpParameterivATI)(GLenum pname, GLint * param); /* 781 */ + void (GLAPIENTRYP TexBumpParameterfvATI)(GLenum pname, const GLfloat * param); /* 782 */ + void (GLAPIENTRYP TexBumpParameterivATI)(GLenum pname, const GLint * param); /* 783 */ + void (GLAPIENTRYP AlphaFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); /* 784 */ + void (GLAPIENTRYP AlphaFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); /* 785 */ + void (GLAPIENTRYP AlphaFragmentOp3ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); /* 786 */ + void (GLAPIENTRYP BeginFragmentShaderATI)(void); /* 787 */ + void (GLAPIENTRYP BindFragmentShaderATI)(GLuint id); /* 788 */ + void (GLAPIENTRYP ColorFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); /* 789 */ + void (GLAPIENTRYP ColorFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); /* 790 */ + void (GLAPIENTRYP ColorFragmentOp3ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); /* 791 */ + void (GLAPIENTRYP DeleteFragmentShaderATI)(GLuint id); /* 792 */ + void (GLAPIENTRYP EndFragmentShaderATI)(void); /* 793 */ + GLuint (GLAPIENTRYP GenFragmentShadersATI)(GLuint range); /* 794 */ + void (GLAPIENTRYP PassTexCoordATI)(GLuint dst, GLuint coord, GLenum swizzle); /* 795 */ + void (GLAPIENTRYP SampleMapATI)(GLuint dst, GLuint interp, GLenum swizzle); /* 796 */ + void (GLAPIENTRYP SetFragmentShaderConstantATI)(GLuint dst, const GLfloat * value); /* 797 */ + void (GLAPIENTRYP PointParameteriNV)(GLenum pname, GLint param); /* 798 */ + void (GLAPIENTRYP PointParameterivNV)(GLenum pname, const GLint * params); /* 799 */ + void (GLAPIENTRYP ActiveStencilFaceEXT)(GLenum face); /* 800 */ + void (GLAPIENTRYP BindVertexArrayAPPLE)(GLuint array); /* 801 */ + void (GLAPIENTRYP DeleteVertexArraysAPPLE)(GLsizei n, const GLuint * arrays); /* 802 */ + void (GLAPIENTRYP GenVertexArraysAPPLE)(GLsizei n, GLuint * arrays); /* 803 */ + GLboolean (GLAPIENTRYP IsVertexArrayAPPLE)(GLuint array); /* 804 */ + void (GLAPIENTRYP GetProgramNamedParameterdvNV)(GLuint id, GLsizei len, const GLubyte * name, GLdouble * params); /* 805 */ + void (GLAPIENTRYP GetProgramNamedParameterfvNV)(GLuint id, GLsizei len, const GLubyte * name, GLfloat * params); /* 806 */ + void (GLAPIENTRYP ProgramNamedParameter4dNV)(GLuint id, GLsizei len, const GLubyte * name, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 807 */ + void (GLAPIENTRYP ProgramNamedParameter4dvNV)(GLuint id, GLsizei len, const GLubyte * name, const GLdouble * v); /* 808 */ + void (GLAPIENTRYP ProgramNamedParameter4fNV)(GLuint id, GLsizei len, const GLubyte * name, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 809 */ + void (GLAPIENTRYP ProgramNamedParameter4fvNV)(GLuint id, GLsizei len, const GLubyte * name, const GLfloat * v); /* 810 */ + void (GLAPIENTRYP PrimitiveRestartIndexNV)(GLuint index); /* 811 */ + void (GLAPIENTRYP PrimitiveRestartNV)(void); /* 812 */ + void (GLAPIENTRYP DepthBoundsEXT)(GLclampd zmin, GLclampd zmax); /* 813 */ + void (GLAPIENTRYP BlendEquationSeparateEXT)(GLenum modeRGB, GLenum modeA); /* 814 */ + void (GLAPIENTRYP BindFramebufferEXT)(GLenum target, GLuint framebuffer); /* 815 */ + void (GLAPIENTRYP BindRenderbufferEXT)(GLenum target, GLuint renderbuffer); /* 816 */ + GLenum (GLAPIENTRYP CheckFramebufferStatusEXT)(GLenum target); /* 817 */ + void (GLAPIENTRYP DeleteFramebuffersEXT)(GLsizei n, const GLuint * framebuffers); /* 818 */ + void (GLAPIENTRYP DeleteRenderbuffersEXT)(GLsizei n, const GLuint * renderbuffers); /* 819 */ + void (GLAPIENTRYP FramebufferRenderbufferEXT)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); /* 820 */ + void (GLAPIENTRYP FramebufferTexture1DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); /* 821 */ + void (GLAPIENTRYP FramebufferTexture2DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); /* 822 */ + void (GLAPIENTRYP FramebufferTexture3DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); /* 823 */ + void (GLAPIENTRYP GenFramebuffersEXT)(GLsizei n, GLuint * framebuffers); /* 824 */ + void (GLAPIENTRYP GenRenderbuffersEXT)(GLsizei n, GLuint * renderbuffers); /* 825 */ + void (GLAPIENTRYP GenerateMipmapEXT)(GLenum target); /* 826 */ + void (GLAPIENTRYP GetFramebufferAttachmentParameterivEXT)(GLenum target, GLenum attachment, GLenum pname, GLint * params); /* 827 */ + void (GLAPIENTRYP GetRenderbufferParameterivEXT)(GLenum target, GLenum pname, GLint * params); /* 828 */ + GLboolean (GLAPIENTRYP IsFramebufferEXT)(GLuint framebuffer); /* 829 */ + GLboolean (GLAPIENTRYP IsRenderbufferEXT)(GLuint renderbuffer); /* 830 */ + void (GLAPIENTRYP RenderbufferStorageEXT)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height); /* 831 */ + void (GLAPIENTRYP BlitFramebufferEXT)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); /* 832 */ + void (GLAPIENTRYP BufferParameteriAPPLE)(GLenum target, GLenum pname, GLint param); /* 833 */ + void (GLAPIENTRYP FlushMappedBufferRangeAPPLE)(GLenum target, GLintptr offset, GLsizeiptr size); /* 834 */ + void (GLAPIENTRYP BindFragDataLocationEXT)(GLuint program, GLuint colorNumber, const GLchar * name); /* 835 */ + GLint (GLAPIENTRYP GetFragDataLocationEXT)(GLuint program, const GLchar * name); /* 836 */ + void (GLAPIENTRYP GetUniformuivEXT)(GLuint program, GLint location, GLuint * params); /* 837 */ + void (GLAPIENTRYP GetVertexAttribIivEXT)(GLuint index, GLenum pname, GLint * params); /* 838 */ + void (GLAPIENTRYP GetVertexAttribIuivEXT)(GLuint index, GLenum pname, GLuint * params); /* 839 */ + void (GLAPIENTRYP Uniform1uiEXT)(GLint location, GLuint x); /* 840 */ + void (GLAPIENTRYP Uniform1uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 841 */ + void (GLAPIENTRYP Uniform2uiEXT)(GLint location, GLuint x, GLuint y); /* 842 */ + void (GLAPIENTRYP Uniform2uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 843 */ + void (GLAPIENTRYP Uniform3uiEXT)(GLint location, GLuint x, GLuint y, GLuint z); /* 844 */ + void (GLAPIENTRYP Uniform3uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 845 */ + void (GLAPIENTRYP Uniform4uiEXT)(GLint location, GLuint x, GLuint y, GLuint z, GLuint w); /* 846 */ + void (GLAPIENTRYP Uniform4uivEXT)(GLint location, GLsizei count, const GLuint * value); /* 847 */ + void (GLAPIENTRYP VertexAttribI1iEXT)(GLuint index, GLint x); /* 848 */ + void (GLAPIENTRYP VertexAttribI1ivEXT)(GLuint index, const GLint * v); /* 849 */ + void (GLAPIENTRYP VertexAttribI1uiEXT)(GLuint index, GLuint x); /* 850 */ + void (GLAPIENTRYP VertexAttribI1uivEXT)(GLuint index, const GLuint * v); /* 851 */ + void (GLAPIENTRYP VertexAttribI2iEXT)(GLuint index, GLint x, GLint y); /* 852 */ + void (GLAPIENTRYP VertexAttribI2ivEXT)(GLuint index, const GLint * v); /* 853 */ + void (GLAPIENTRYP VertexAttribI2uiEXT)(GLuint index, GLuint x, GLuint y); /* 854 */ + void (GLAPIENTRYP VertexAttribI2uivEXT)(GLuint index, const GLuint * v); /* 855 */ + void (GLAPIENTRYP VertexAttribI3iEXT)(GLuint index, GLint x, GLint y, GLint z); /* 856 */ + void (GLAPIENTRYP VertexAttribI3ivEXT)(GLuint index, const GLint * v); /* 857 */ + void (GLAPIENTRYP VertexAttribI3uiEXT)(GLuint index, GLuint x, GLuint y, GLuint z); /* 858 */ + void (GLAPIENTRYP VertexAttribI3uivEXT)(GLuint index, const GLuint * v); /* 859 */ + void (GLAPIENTRYP VertexAttribI4bvEXT)(GLuint index, const GLbyte * v); /* 860 */ + void (GLAPIENTRYP VertexAttribI4iEXT)(GLuint index, GLint x, GLint y, GLint z, GLint w); /* 861 */ + void (GLAPIENTRYP VertexAttribI4ivEXT)(GLuint index, const GLint * v); /* 862 */ + void (GLAPIENTRYP VertexAttribI4svEXT)(GLuint index, const GLshort * v); /* 863 */ + void (GLAPIENTRYP VertexAttribI4ubvEXT)(GLuint index, const GLubyte * v); /* 864 */ + void (GLAPIENTRYP VertexAttribI4uiEXT)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w); /* 865 */ + void (GLAPIENTRYP VertexAttribI4uivEXT)(GLuint index, const GLuint * v); /* 866 */ + void (GLAPIENTRYP VertexAttribI4usvEXT)(GLuint index, const GLushort * v); /* 867 */ + void (GLAPIENTRYP VertexAttribIPointerEXT)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 868 */ + void (GLAPIENTRYP FramebufferTextureLayerEXT)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer); /* 869 */ + void (GLAPIENTRYP ColorMaskIndexedEXT)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a); /* 870 */ + void (GLAPIENTRYP DisableIndexedEXT)(GLenum target, GLuint index); /* 871 */ + void (GLAPIENTRYP EnableIndexedEXT)(GLenum target, GLuint index); /* 872 */ + void (GLAPIENTRYP GetBooleanIndexedvEXT)(GLenum value, GLuint index, GLboolean * data); /* 873 */ + void (GLAPIENTRYP GetIntegerIndexedvEXT)(GLenum value, GLuint index, GLint * data); /* 874 */ + GLboolean (GLAPIENTRYP IsEnabledIndexedEXT)(GLenum target, GLuint index); /* 875 */ + void (GLAPIENTRYP ClearColorIiEXT)(GLint r, GLint g, GLint b, GLint a); /* 876 */ + void (GLAPIENTRYP ClearColorIuiEXT)(GLuint r, GLuint g, GLuint b, GLuint a); /* 877 */ + void (GLAPIENTRYP GetTexParameterIivEXT)(GLenum target, GLenum pname, GLint * params); /* 878 */ + void (GLAPIENTRYP GetTexParameterIuivEXT)(GLenum target, GLenum pname, GLuint * params); /* 879 */ + void (GLAPIENTRYP TexParameterIivEXT)(GLenum target, GLenum pname, const GLint * params); /* 880 */ + void (GLAPIENTRYP TexParameterIuivEXT)(GLenum target, GLenum pname, const GLuint * params); /* 881 */ + void (GLAPIENTRYP BeginConditionalRenderNV)(GLuint query, GLenum mode); /* 882 */ + void (GLAPIENTRYP EndConditionalRenderNV)(void); /* 883 */ + void (GLAPIENTRYP BeginTransformFeedbackEXT)(GLenum mode); /* 884 */ + void (GLAPIENTRYP BindBufferBaseEXT)(GLenum target, GLuint index, GLuint buffer); /* 885 */ + void (GLAPIENTRYP BindBufferOffsetEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset); /* 886 */ + void (GLAPIENTRYP BindBufferRangeEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size); /* 887 */ + void (GLAPIENTRYP EndTransformFeedbackEXT)(void); /* 888 */ + void (GLAPIENTRYP GetTransformFeedbackVaryingEXT)(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLsizei * size, GLenum * type, GLchar * name); /* 889 */ + void (GLAPIENTRYP TransformFeedbackVaryingsEXT)(GLuint program, GLsizei count, const char ** varyings, GLenum bufferMode); /* 890 */ + void (GLAPIENTRYP ProvokingVertexEXT)(GLenum mode); /* 891 */ + void (GLAPIENTRYP GetTexParameterPointervAPPLE)(GLenum target, GLenum pname, GLvoid ** params); /* 892 */ + void (GLAPIENTRYP TextureRangeAPPLE)(GLenum target, GLsizei length, GLvoid * pointer); /* 893 */ + void (GLAPIENTRYP GetObjectParameterivAPPLE)(GLenum objectType, GLuint name, GLenum pname, GLint * value); /* 894 */ + GLenum (GLAPIENTRYP ObjectPurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); /* 895 */ + GLenum (GLAPIENTRYP ObjectUnpurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); /* 896 */ + void (GLAPIENTRYP ActiveProgramEXT)(GLuint program); /* 897 */ + GLuint (GLAPIENTRYP CreateShaderProgramEXT)(GLenum type, const GLchar * string); /* 898 */ + void (GLAPIENTRYP UseShaderProgramEXT)(GLenum type, GLuint program); /* 899 */ + void (GLAPIENTRYP TextureBarrierNV)(void); /* 900 */ + void (GLAPIENTRYP StencilFuncSeparateATI)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); /* 901 */ + void (GLAPIENTRYP ProgramEnvParameters4fvEXT)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); /* 902 */ + void (GLAPIENTRYP ProgramLocalParameters4fvEXT)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); /* 903 */ + void (GLAPIENTRYP GetQueryObjecti64vEXT)(GLuint id, GLenum pname, GLint64EXT * params); /* 904 */ + void (GLAPIENTRYP GetQueryObjectui64vEXT)(GLuint id, GLenum pname, GLuint64EXT * params); /* 905 */ + void (GLAPIENTRYP EGLImageTargetRenderbufferStorageOES)(GLenum target, GLvoid * writeOffset); /* 906 */ + void (GLAPIENTRYP EGLImageTargetTexture2DOES)(GLenum target, GLvoid * writeOffset); /* 907 */ }; #endif /* !defined( _GLAPI_TABLE_H_ ) */ diff --git a/src/mapi/glapi/glapitemp.h b/src/mapi/glapi/glapitemp.h index e756dbb59a2..4eb4861597b 100644 --- a/src/mapi/glapi/glapitemp.h +++ b/src/mapi/glapi/glapitemp.h @@ -4062,6 +4062,76 @@ KEYWORD1 void KEYWORD2 NAME(BlendFunciARB)(GLuint buf, GLenum src, GLenum dst) DISPATCH(BlendFunciARB, (buf, src, dst), (F, "glBlendFunciARB(%d, 0x%x, 0x%x);\n", buf, src, dst)); } +KEYWORD1 void KEYWORD2 NAME(BindSampler)(GLuint unit, GLuint sampler) +{ + DISPATCH(BindSampler, (unit, sampler), (F, "glBindSampler(%d, %d);\n", unit, sampler)); +} + +KEYWORD1 void KEYWORD2 NAME(DeleteSamplers)(GLsizei count, const GLuint * samplers) +{ + DISPATCH(DeleteSamplers, (count, samplers), (F, "glDeleteSamplers(%d, %p);\n", count, (const void *) samplers)); +} + +KEYWORD1 void KEYWORD2 NAME(GenSamplers)(GLsizei count, GLuint * samplers) +{ + DISPATCH(GenSamplers, (count, samplers), (F, "glGenSamplers(%d, %p);\n", count, (const void *) samplers)); +} + +KEYWORD1 void KEYWORD2 NAME(GetSamplerParameterIiv)(GLuint sampler, GLenum pname, GLint * params) +{ + DISPATCH(GetSamplerParameterIiv, (sampler, pname, params), (F, "glGetSamplerParameterIiv(%d, 0x%x, %p);\n", sampler, pname, (const void *) params)); +} + +KEYWORD1 void KEYWORD2 NAME(GetSamplerParameterIuiv)(GLuint sampler, GLenum pname, GLuint * params) +{ + DISPATCH(GetSamplerParameterIuiv, (sampler, pname, params), (F, "glGetSamplerParameterIuiv(%d, 0x%x, %p);\n", sampler, pname, (const void *) params)); +} + +KEYWORD1 void KEYWORD2 NAME(GetSamplerParameterfv)(GLuint sampler, GLenum pname, GLfloat * params) +{ + DISPATCH(GetSamplerParameterfv, (sampler, pname, params), (F, "glGetSamplerParameterfv(%d, 0x%x, %p);\n", sampler, pname, (const void *) params)); +} + +KEYWORD1 void KEYWORD2 NAME(GetSamplerParameteriv)(GLuint sampler, GLenum pname, GLint * params) +{ + DISPATCH(GetSamplerParameteriv, (sampler, pname, params), (F, "glGetSamplerParameteriv(%d, 0x%x, %p);\n", sampler, pname, (const void *) params)); +} + +KEYWORD1 GLboolean KEYWORD2 NAME(IsSampler)(GLuint sampler) +{ + RETURN_DISPATCH(IsSampler, (sampler), (F, "glIsSampler(%d);\n", sampler)); +} + +KEYWORD1 void KEYWORD2 NAME(SamplerParameterIiv)(GLuint sampler, GLenum pname, const GLint * params) +{ + DISPATCH(SamplerParameterIiv, (sampler, pname, params), (F, "glSamplerParameterIiv(%d, 0x%x, %p);\n", sampler, pname, (const void *) params)); +} + +KEYWORD1 void KEYWORD2 NAME(SamplerParameterIuiv)(GLuint sampler, GLenum pname, const GLuint * params) +{ + DISPATCH(SamplerParameterIuiv, (sampler, pname, params), (F, "glSamplerParameterIuiv(%d, 0x%x, %p);\n", sampler, pname, (const void *) params)); +} + +KEYWORD1 void KEYWORD2 NAME(SamplerParameterf)(GLuint sampler, GLenum pname, GLfloat param) +{ + DISPATCH(SamplerParameterf, (sampler, pname, param), (F, "glSamplerParameterf(%d, 0x%x, %f);\n", sampler, pname, param)); +} + +KEYWORD1 void KEYWORD2 NAME(SamplerParameterfv)(GLuint sampler, GLenum pname, const GLfloat * params) +{ + DISPATCH(SamplerParameterfv, (sampler, pname, params), (F, "glSamplerParameterfv(%d, 0x%x, %p);\n", sampler, pname, (const void *) params)); +} + +KEYWORD1 void KEYWORD2 NAME(SamplerParameteri)(GLuint sampler, GLenum pname, GLint param) +{ + DISPATCH(SamplerParameteri, (sampler, pname, param), (F, "glSamplerParameteri(%d, 0x%x, %d);\n", sampler, pname, param)); +} + +KEYWORD1 void KEYWORD2 NAME(SamplerParameteriv)(GLuint sampler, GLenum pname, const GLint * params) +{ + DISPATCH(SamplerParameteriv, (sampler, pname, params), (F, "glSamplerParameteriv(%d, 0x%x, %p);\n", sampler, pname, (const void *) params)); +} + KEYWORD1 void KEYWORD2 NAME(BindTransformFeedback)(GLenum target, GLuint id) { DISPATCH(BindTransformFeedback, (target, id), (F, "glBindTransformFeedback(0x%x, %d);\n", target, id)); @@ -4127,58 +4197,58 @@ KEYWORD1 void KEYWORD2 NAME(PolygonOffsetEXT)(GLfloat factor, GLfloat bias) DISPATCH(PolygonOffsetEXT, (factor, bias), (F, "glPolygonOffsetEXT(%f, %f);\n", factor, bias)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_613)(GLenum pname, GLfloat * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_627)(GLenum pname, GLfloat * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_613)(GLenum pname, GLfloat * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_627)(GLenum pname, GLfloat * params) { DISPATCH(GetPixelTexGenParameterfvSGIS, (pname, params), (F, "glGetPixelTexGenParameterfvSGIS(0x%x, %p);\n", pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_614)(GLenum pname, GLint * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_628)(GLenum pname, GLint * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_614)(GLenum pname, GLint * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_628)(GLenum pname, GLint * params) { DISPATCH(GetPixelTexGenParameterivSGIS, (pname, params), (F, "glGetPixelTexGenParameterivSGIS(0x%x, %p);\n", pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_615)(GLenum pname, GLfloat param); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_629)(GLenum pname, GLfloat param); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_615)(GLenum pname, GLfloat param) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_629)(GLenum pname, GLfloat param) { DISPATCH(PixelTexGenParameterfSGIS, (pname, param), (F, "glPixelTexGenParameterfSGIS(0x%x, %f);\n", pname, param)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_616)(GLenum pname, const GLfloat * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_630)(GLenum pname, const GLfloat * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_616)(GLenum pname, const GLfloat * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_630)(GLenum pname, const GLfloat * params) { DISPATCH(PixelTexGenParameterfvSGIS, (pname, params), (F, "glPixelTexGenParameterfvSGIS(0x%x, %p);\n", pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_617)(GLenum pname, GLint param); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_631)(GLenum pname, GLint param); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_617)(GLenum pname, GLint param) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_631)(GLenum pname, GLint param) { DISPATCH(PixelTexGenParameteriSGIS, (pname, param), (F, "glPixelTexGenParameteriSGIS(0x%x, %d);\n", pname, param)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_618)(GLenum pname, const GLint * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_632)(GLenum pname, const GLint * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_618)(GLenum pname, const GLint * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_632)(GLenum pname, const GLint * params) { DISPATCH(PixelTexGenParameterivSGIS, (pname, params), (F, "glPixelTexGenParameterivSGIS(0x%x, %p);\n", pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_619)(GLclampf value, GLboolean invert); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_633)(GLclampf value, GLboolean invert); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_619)(GLclampf value, GLboolean invert) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_633)(GLclampf value, GLboolean invert) { DISPATCH(SampleMaskSGIS, (value, invert), (F, "glSampleMaskSGIS(%f, %d);\n", value, invert)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_620)(GLenum pattern); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_634)(GLenum pattern); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_620)(GLenum pattern) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_634)(GLenum pattern) { DISPATCH(SamplePatternSGIS, (pattern), (F, "glSamplePatternSGIS(0x%x);\n", pattern)); } @@ -4228,9 +4298,9 @@ KEYWORD1 void KEYWORD2 NAME(PointParameterfEXT)(GLenum pname, GLfloat param) DISPATCH(PointParameterfEXT, (pname, param), (F, "glPointParameterfEXT(0x%x, %f);\n", pname, param)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_627)(GLenum pname, GLfloat param); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_641)(GLenum pname, GLfloat param); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_627)(GLenum pname, GLfloat param) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_641)(GLenum pname, GLfloat param) { DISPATCH(PointParameterfEXT, (pname, param), (F, "glPointParameterfSGIS(0x%x, %f);\n", pname, param)); } @@ -4250,9 +4320,9 @@ KEYWORD1 void KEYWORD2 NAME(PointParameterfvEXT)(GLenum pname, const GLfloat * p DISPATCH(PointParameterfvEXT, (pname, params), (F, "glPointParameterfvEXT(0x%x, %p);\n", pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_628)(GLenum pname, const GLfloat * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_642)(GLenum pname, const GLfloat * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_628)(GLenum pname, const GLfloat * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_642)(GLenum pname, const GLfloat * params) { DISPATCH(PointParameterfvEXT, (pname, params), (F, "glPointParameterfvSGIS(0x%x, %p);\n", pname, (const void *) params)); } @@ -4507,9 +4577,9 @@ KEYWORD1 void KEYWORD2 NAME(FogCoordfvEXT)(const GLfloat * coord) DISPATCH(FogCoordfvEXT, (coord), (F, "glFogCoordfvEXT(%p);\n", (const void *) coord)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_655)(GLenum mode); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_669)(GLenum mode); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_655)(GLenum mode) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_669)(GLenum mode) { DISPATCH(PixelTexGenSGIX, (mode), (F, "glPixelTexGenSGIX(0x%x);\n", mode)); } @@ -4524,9 +4594,9 @@ KEYWORD1 void KEYWORD2 NAME(BlendFuncSeparateEXT)(GLenum sfactorRGB, GLenum dfac DISPATCH(BlendFuncSeparateEXT, (sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha), (F, "glBlendFuncSeparateEXT(0x%x, 0x%x, 0x%x, 0x%x);\n", sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_656)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_670)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_656)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_670)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha) { DISPATCH(BlendFuncSeparateEXT, (sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha), (F, "glBlendFuncSeparateINGR(0x%x, 0x%x, 0x%x, 0x%x);\n", sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha)); } @@ -4891,65 +4961,65 @@ KEYWORD1 void KEYWORD2 NAME(WindowPos4svMESA)(const GLshort * v) DISPATCH(WindowPos4svMESA, (v), (F, "glWindowPos4svMESA(%p);\n", (const void *) v)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_697)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_711)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_697)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_711)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride) { DISPATCH(MultiModeDrawArraysIBM, (mode, first, count, primcount, modestride), (F, "glMultiModeDrawArraysIBM(%p, %p, %p, %d, %d);\n", (const void *) mode, (const void *) first, (const void *) count, primcount, modestride)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_698)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_712)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_698)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_712)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride) { DISPATCH(MultiModeDrawElementsIBM, (mode, count, type, indices, primcount, modestride), (F, "glMultiModeDrawElementsIBM(%p, %p, 0x%x, %p, %d, %d);\n", (const void *) mode, (const void *) count, type, (const void *) indices, primcount, modestride)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_699)(GLsizei n, const GLuint * fences); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_713)(GLsizei n, const GLuint * fences); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_699)(GLsizei n, const GLuint * fences) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_713)(GLsizei n, const GLuint * fences) { DISPATCH(DeleteFencesNV, (n, fences), (F, "glDeleteFencesNV(%d, %p);\n", n, (const void *) fences)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_700)(GLuint fence); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_714)(GLuint fence); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_700)(GLuint fence) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_714)(GLuint fence) { DISPATCH(FinishFenceNV, (fence), (F, "glFinishFenceNV(%d);\n", fence)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_701)(GLsizei n, GLuint * fences); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_715)(GLsizei n, GLuint * fences); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_701)(GLsizei n, GLuint * fences) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_715)(GLsizei n, GLuint * fences) { DISPATCH(GenFencesNV, (n, fences), (F, "glGenFencesNV(%d, %p);\n", n, (const void *) fences)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_702)(GLuint fence, GLenum pname, GLint * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_716)(GLuint fence, GLenum pname, GLint * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_702)(GLuint fence, GLenum pname, GLint * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_716)(GLuint fence, GLenum pname, GLint * params) { DISPATCH(GetFenceivNV, (fence, pname, params), (F, "glGetFenceivNV(%d, 0x%x, %p);\n", fence, pname, (const void *) params)); } -KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_703)(GLuint fence); +KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_717)(GLuint fence); -KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_703)(GLuint fence) +KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_717)(GLuint fence) { RETURN_DISPATCH(IsFenceNV, (fence), (F, "glIsFenceNV(%d);\n", fence)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_704)(GLuint fence, GLenum condition); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_718)(GLuint fence, GLenum condition); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_704)(GLuint fence, GLenum condition) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_718)(GLuint fence, GLenum condition) { DISPATCH(SetFenceNV, (fence, condition), (F, "glSetFenceNV(%d, 0x%x);\n", fence, condition)); } -KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_705)(GLuint fence); +KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_719)(GLuint fence); -KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_705)(GLuint fence) +KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_719)(GLuint fence) { RETURN_DISPATCH(TestFenceNV, (fence), (F, "glTestFenceNV(%d);\n", fence)); } @@ -5394,16 +5464,16 @@ KEYWORD1 void KEYWORD2 NAME(PointParameterivNV)(GLenum pname, const GLint * para DISPATCH(PointParameterivNV, (pname, params), (F, "glPointParameterivNV(0x%x, %p);\n", pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_786)(GLenum face); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_800)(GLenum face); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_786)(GLenum face) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_800)(GLenum face) { DISPATCH(ActiveStencilFaceEXT, (face), (F, "glActiveStencilFaceEXT(0x%x);\n", face)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_787)(GLuint array); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_801)(GLuint array); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_787)(GLuint array) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_801)(GLuint array) { DISPATCH(BindVertexArrayAPPLE, (array), (F, "glBindVertexArrayAPPLE(%d);\n", array)); } @@ -5413,16 +5483,16 @@ KEYWORD1 void KEYWORD2 NAME(DeleteVertexArrays)(GLsizei n, const GLuint * arrays DISPATCH(DeleteVertexArraysAPPLE, (n, arrays), (F, "glDeleteVertexArrays(%d, %p);\n", n, (const void *) arrays)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_788)(GLsizei n, const GLuint * arrays); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_802)(GLsizei n, const GLuint * arrays); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_788)(GLsizei n, const GLuint * arrays) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_802)(GLsizei n, const GLuint * arrays) { DISPATCH(DeleteVertexArraysAPPLE, (n, arrays), (F, "glDeleteVertexArraysAPPLE(%d, %p);\n", n, (const void *) arrays)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_789)(GLsizei n, GLuint * arrays); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_803)(GLsizei n, GLuint * arrays); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_789)(GLsizei n, GLuint * arrays) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_803)(GLsizei n, GLuint * arrays) { DISPATCH(GenVertexArraysAPPLE, (n, arrays), (F, "glGenVertexArraysAPPLE(%d, %p);\n", n, (const void *) arrays)); } @@ -5432,9 +5502,9 @@ KEYWORD1 GLboolean KEYWORD2 NAME(IsVertexArray)(GLuint array) RETURN_DISPATCH(IsVertexArrayAPPLE, (array), (F, "glIsVertexArray(%d);\n", array)); } -KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_790)(GLuint array); +KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_804)(GLuint array); -KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_790)(GLuint array) +KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_804)(GLuint array) { RETURN_DISPATCH(IsVertexArrayAPPLE, (array), (F, "glIsVertexArrayAPPLE(%d);\n", array)); } @@ -5484,9 +5554,9 @@ KEYWORD1 void KEYWORD2 NAME(PrimitiveRestartNV)(void) DISPATCH(PrimitiveRestartNV, (), (F, "glPrimitiveRestartNV();\n")); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_799)(GLclampd zmin, GLclampd zmax); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_813)(GLclampd zmin, GLclampd zmax); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_799)(GLclampd zmin, GLclampd zmax) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_813)(GLclampd zmin, GLclampd zmax) { DISPATCH(DepthBoundsEXT, (zmin, zmax), (F, "glDepthBoundsEXT(%f, %f);\n", zmin, zmax)); } @@ -5496,9 +5566,9 @@ KEYWORD1 void KEYWORD2 NAME(BlendEquationSeparate)(GLenum modeRGB, GLenum modeA) DISPATCH(BlendEquationSeparateEXT, (modeRGB, modeA), (F, "glBlendEquationSeparate(0x%x, 0x%x);\n", modeRGB, modeA)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_800)(GLenum modeRGB, GLenum modeA); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_814)(GLenum modeRGB, GLenum modeA); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_800)(GLenum modeRGB, GLenum modeA) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_814)(GLenum modeRGB, GLenum modeA) { DISPATCH(BlendEquationSeparateEXT, (modeRGB, modeA), (F, "glBlendEquationSeparateEXT(0x%x, 0x%x);\n", modeRGB, modeA)); } @@ -5678,23 +5748,23 @@ KEYWORD1 void KEYWORD2 NAME(BlitFramebuffer)(GLint srcX0, GLint srcY0, GLint src DISPATCH(BlitFramebufferEXT, (srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter), (F, "glBlitFramebuffer(%d, %d, %d, %d, %d, %d, %d, %d, %d, 0x%x);\n", srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_818)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_832)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_818)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_832)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) { DISPATCH(BlitFramebufferEXT, (srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter), (F, "glBlitFramebufferEXT(%d, %d, %d, %d, %d, %d, %d, %d, %d, 0x%x);\n", srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_819)(GLenum target, GLenum pname, GLint param); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_833)(GLenum target, GLenum pname, GLint param); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_819)(GLenum target, GLenum pname, GLint param) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_833)(GLenum target, GLenum pname, GLint param) { DISPATCH(BufferParameteriAPPLE, (target, pname, param), (F, "glBufferParameteriAPPLE(0x%x, 0x%x, %d);\n", target, pname, param)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_820)(GLenum target, GLintptr offset, GLsizeiptr size); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_834)(GLenum target, GLintptr offset, GLsizeiptr size); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_820)(GLenum target, GLintptr offset, GLsizeiptr size) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_834)(GLenum target, GLintptr offset, GLsizeiptr size) { DISPATCH(FlushMappedBufferRangeAPPLE, (target, offset, size), (F, "glFlushMappedBufferRangeAPPLE(0x%x, %d, %d);\n", target, offset, size)); } @@ -6254,16 +6324,16 @@ KEYWORD1 void KEYWORD2 NAME(ProvokingVertex)(GLenum mode) DISPATCH(ProvokingVertexEXT, (mode), (F, "glProvokingVertex(0x%x);\n", mode)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_878)(GLenum target, GLenum pname, GLvoid ** params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_892)(GLenum target, GLenum pname, GLvoid ** params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_878)(GLenum target, GLenum pname, GLvoid ** params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_892)(GLenum target, GLenum pname, GLvoid ** params) { DISPATCH(GetTexParameterPointervAPPLE, (target, pname, params), (F, "glGetTexParameterPointervAPPLE(0x%x, 0x%x, %p);\n", target, pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_879)(GLenum target, GLsizei length, GLvoid * pointer); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_893)(GLenum target, GLsizei length, GLvoid * pointer); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_879)(GLenum target, GLsizei length, GLvoid * pointer) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_893)(GLenum target, GLsizei length, GLvoid * pointer) { DISPATCH(TextureRangeAPPLE, (target, length, pointer), (F, "glTextureRangeAPPLE(0x%x, %d, %p);\n", target, length, (const void *) pointer)); } @@ -6303,37 +6373,37 @@ KEYWORD1 void KEYWORD2 NAME(TextureBarrierNV)(void) DISPATCH(TextureBarrierNV, (), (F, "glTextureBarrierNV();\n")); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_887)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_901)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_887)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_901)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask) { DISPATCH(StencilFuncSeparateATI, (frontfunc, backfunc, ref, mask), (F, "glStencilFuncSeparateATI(0x%x, 0x%x, %d, %d);\n", frontfunc, backfunc, ref, mask)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_888)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_902)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_888)(GLenum target, GLuint index, GLsizei count, const GLfloat * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_902)(GLenum target, GLuint index, GLsizei count, const GLfloat * params) { DISPATCH(ProgramEnvParameters4fvEXT, (target, index, count, params), (F, "glProgramEnvParameters4fvEXT(0x%x, %d, %d, %p);\n", target, index, count, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_889)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_903)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_889)(GLenum target, GLuint index, GLsizei count, const GLfloat * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_903)(GLenum target, GLuint index, GLsizei count, const GLfloat * params) { DISPATCH(ProgramLocalParameters4fvEXT, (target, index, count, params), (F, "glProgramLocalParameters4fvEXT(0x%x, %d, %d, %p);\n", target, index, count, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_890)(GLuint id, GLenum pname, GLint64EXT * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_904)(GLuint id, GLenum pname, GLint64EXT * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_890)(GLuint id, GLenum pname, GLint64EXT * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_904)(GLuint id, GLenum pname, GLint64EXT * params) { DISPATCH(GetQueryObjecti64vEXT, (id, pname, params), (F, "glGetQueryObjecti64vEXT(%d, 0x%x, %p);\n", id, pname, (const void *) params)); } -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_891)(GLuint id, GLenum pname, GLuint64EXT * params); +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_905)(GLuint id, GLenum pname, GLuint64EXT * params); -KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_891)(GLuint id, GLenum pname, GLuint64EXT * params) +KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_905)(GLuint id, GLenum pname, GLuint64EXT * params) { DISPATCH(GetQueryObjectui64vEXT, (id, pname, params), (F, "glGetQueryObjectui64vEXT(%d, 0x%x, %p);\n", id, pname, (const void *) params)); } @@ -7101,6 +7171,20 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(BlendEquationiARB), TABLE_ENTRY(BlendFuncSeparateiARB), TABLE_ENTRY(BlendFunciARB), + TABLE_ENTRY(BindSampler), + TABLE_ENTRY(DeleteSamplers), + TABLE_ENTRY(GenSamplers), + TABLE_ENTRY(GetSamplerParameterIiv), + TABLE_ENTRY(GetSamplerParameterIuiv), + TABLE_ENTRY(GetSamplerParameterfv), + TABLE_ENTRY(GetSamplerParameteriv), + TABLE_ENTRY(IsSampler), + TABLE_ENTRY(SamplerParameterIiv), + TABLE_ENTRY(SamplerParameterIuiv), + TABLE_ENTRY(SamplerParameterf), + TABLE_ENTRY(SamplerParameterfv), + TABLE_ENTRY(SamplerParameteri), + TABLE_ENTRY(SamplerParameteriv), TABLE_ENTRY(BindTransformFeedback), TABLE_ENTRY(DeleteTransformFeedbacks), TABLE_ENTRY(DrawTransformFeedback), @@ -7114,14 +7198,14 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(ReleaseShaderCompiler), TABLE_ENTRY(ShaderBinary), TABLE_ENTRY(PolygonOffsetEXT), - TABLE_ENTRY(_dispatch_stub_613), - TABLE_ENTRY(_dispatch_stub_614), - TABLE_ENTRY(_dispatch_stub_615), - TABLE_ENTRY(_dispatch_stub_616), - TABLE_ENTRY(_dispatch_stub_617), - TABLE_ENTRY(_dispatch_stub_618), - TABLE_ENTRY(_dispatch_stub_619), - TABLE_ENTRY(_dispatch_stub_620), + TABLE_ENTRY(_dispatch_stub_627), + TABLE_ENTRY(_dispatch_stub_628), + TABLE_ENTRY(_dispatch_stub_629), + TABLE_ENTRY(_dispatch_stub_630), + TABLE_ENTRY(_dispatch_stub_631), + TABLE_ENTRY(_dispatch_stub_632), + TABLE_ENTRY(_dispatch_stub_633), + TABLE_ENTRY(_dispatch_stub_634), TABLE_ENTRY(ColorPointerEXT), TABLE_ENTRY(EdgeFlagPointerEXT), TABLE_ENTRY(IndexPointerEXT), @@ -7156,7 +7240,7 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(FogCoorddvEXT), TABLE_ENTRY(FogCoordfEXT), TABLE_ENTRY(FogCoordfvEXT), - TABLE_ENTRY(_dispatch_stub_655), + TABLE_ENTRY(_dispatch_stub_669), TABLE_ENTRY(BlendFuncSeparateEXT), TABLE_ENTRY(FlushVertexArrayRangeNV), TABLE_ENTRY(VertexArrayRangeNV), @@ -7198,15 +7282,15 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(WindowPos4ivMESA), TABLE_ENTRY(WindowPos4sMESA), TABLE_ENTRY(WindowPos4svMESA), - TABLE_ENTRY(_dispatch_stub_697), - TABLE_ENTRY(_dispatch_stub_698), - TABLE_ENTRY(_dispatch_stub_699), - TABLE_ENTRY(_dispatch_stub_700), - TABLE_ENTRY(_dispatch_stub_701), - TABLE_ENTRY(_dispatch_stub_702), - TABLE_ENTRY(_dispatch_stub_703), - TABLE_ENTRY(_dispatch_stub_704), - TABLE_ENTRY(_dispatch_stub_705), + TABLE_ENTRY(_dispatch_stub_711), + TABLE_ENTRY(_dispatch_stub_712), + TABLE_ENTRY(_dispatch_stub_713), + TABLE_ENTRY(_dispatch_stub_714), + TABLE_ENTRY(_dispatch_stub_715), + TABLE_ENTRY(_dispatch_stub_716), + TABLE_ENTRY(_dispatch_stub_717), + TABLE_ENTRY(_dispatch_stub_718), + TABLE_ENTRY(_dispatch_stub_719), TABLE_ENTRY(AreProgramsResidentNV), TABLE_ENTRY(BindProgramNV), TABLE_ENTRY(DeleteProgramsNV), @@ -7287,11 +7371,11 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(SetFragmentShaderConstantATI), TABLE_ENTRY(PointParameteriNV), TABLE_ENTRY(PointParameterivNV), - TABLE_ENTRY(_dispatch_stub_786), - TABLE_ENTRY(_dispatch_stub_787), - TABLE_ENTRY(_dispatch_stub_788), - TABLE_ENTRY(_dispatch_stub_789), - TABLE_ENTRY(_dispatch_stub_790), + TABLE_ENTRY(_dispatch_stub_800), + TABLE_ENTRY(_dispatch_stub_801), + TABLE_ENTRY(_dispatch_stub_802), + TABLE_ENTRY(_dispatch_stub_803), + TABLE_ENTRY(_dispatch_stub_804), TABLE_ENTRY(GetProgramNamedParameterdvNV), TABLE_ENTRY(GetProgramNamedParameterfvNV), TABLE_ENTRY(ProgramNamedParameter4dNV), @@ -7300,8 +7384,8 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(ProgramNamedParameter4fvNV), TABLE_ENTRY(PrimitiveRestartIndexNV), TABLE_ENTRY(PrimitiveRestartNV), - TABLE_ENTRY(_dispatch_stub_799), - TABLE_ENTRY(_dispatch_stub_800), + TABLE_ENTRY(_dispatch_stub_813), + TABLE_ENTRY(_dispatch_stub_814), TABLE_ENTRY(BindFramebufferEXT), TABLE_ENTRY(BindRenderbufferEXT), TABLE_ENTRY(CheckFramebufferStatusEXT), @@ -7319,9 +7403,9 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(IsFramebufferEXT), TABLE_ENTRY(IsRenderbufferEXT), TABLE_ENTRY(RenderbufferStorageEXT), - TABLE_ENTRY(_dispatch_stub_818), - TABLE_ENTRY(_dispatch_stub_819), - TABLE_ENTRY(_dispatch_stub_820), + TABLE_ENTRY(_dispatch_stub_832), + TABLE_ENTRY(_dispatch_stub_833), + TABLE_ENTRY(_dispatch_stub_834), TABLE_ENTRY(BindFragDataLocationEXT), TABLE_ENTRY(GetFragDataLocationEXT), TABLE_ENTRY(GetUniformuivEXT), @@ -7379,8 +7463,8 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(GetTransformFeedbackVaryingEXT), TABLE_ENTRY(TransformFeedbackVaryingsEXT), TABLE_ENTRY(ProvokingVertexEXT), - TABLE_ENTRY(_dispatch_stub_878), - TABLE_ENTRY(_dispatch_stub_879), + TABLE_ENTRY(_dispatch_stub_892), + TABLE_ENTRY(_dispatch_stub_893), TABLE_ENTRY(GetObjectParameterivAPPLE), TABLE_ENTRY(ObjectPurgeableAPPLE), TABLE_ENTRY(ObjectUnpurgeableAPPLE), @@ -7388,11 +7472,11 @@ _glapi_proc DISPATCH_TABLE_NAME[] = { TABLE_ENTRY(CreateShaderProgramEXT), TABLE_ENTRY(UseShaderProgramEXT), TABLE_ENTRY(TextureBarrierNV), - TABLE_ENTRY(_dispatch_stub_887), - TABLE_ENTRY(_dispatch_stub_888), - TABLE_ENTRY(_dispatch_stub_889), - TABLE_ENTRY(_dispatch_stub_890), - TABLE_ENTRY(_dispatch_stub_891), + TABLE_ENTRY(_dispatch_stub_901), + TABLE_ENTRY(_dispatch_stub_902), + TABLE_ENTRY(_dispatch_stub_903), + TABLE_ENTRY(_dispatch_stub_904), + TABLE_ENTRY(_dispatch_stub_905), TABLE_ENTRY(EGLImageTargetRenderbufferStorageOES), TABLE_ENTRY(EGLImageTargetTexture2DOES), /* A whole bunch of no-op functions. These might be called @@ -7699,10 +7783,10 @@ _glapi_proc UNUSED_TABLE_NAME[] = { TABLE_ENTRY(RenderbufferStorageMultisampleEXT), TABLE_ENTRY(PointParameterf), TABLE_ENTRY(PointParameterfARB), - TABLE_ENTRY(_dispatch_stub_627), + TABLE_ENTRY(_dispatch_stub_641), TABLE_ENTRY(PointParameterfv), TABLE_ENTRY(PointParameterfvARB), - TABLE_ENTRY(_dispatch_stub_628), + TABLE_ENTRY(_dispatch_stub_642), TABLE_ENTRY(SecondaryColor3b), TABLE_ENTRY(SecondaryColor3bv), TABLE_ENTRY(SecondaryColor3d), @@ -7728,7 +7812,7 @@ _glapi_proc UNUSED_TABLE_NAME[] = { TABLE_ENTRY(FogCoordf), TABLE_ENTRY(FogCoordfv), TABLE_ENTRY(BlendFuncSeparate), - TABLE_ENTRY(_dispatch_stub_656), + TABLE_ENTRY(_dispatch_stub_670), TABLE_ENTRY(WindowPos2d), TABLE_ENTRY(WindowPos2dARB), TABLE_ENTRY(WindowPos2dv), diff --git a/src/mapi/glapi/glprocs.h b/src/mapi/glapi/glprocs.h index 9aad6cceab5..b11bca21cc5 100644 --- a/src/mapi/glapi/glprocs.h +++ b/src/mapi/glapi/glprocs.h @@ -652,6 +652,20 @@ static const char gl_string_table[] = "glBlendEquationiARB\0" "glBlendFuncSeparateiARB\0" "glBlendFunciARB\0" + "glBindSampler\0" + "glDeleteSamplers\0" + "glGenSamplers\0" + "glGetSamplerParameterIiv\0" + "glGetSamplerParameterIuiv\0" + "glGetSamplerParameterfv\0" + "glGetSamplerParameteriv\0" + "glIsSampler\0" + "glSamplerParameterIiv\0" + "glSamplerParameterIuiv\0" + "glSamplerParameterf\0" + "glSamplerParameterfv\0" + "glSamplerParameteri\0" + "glSamplerParameteriv\0" "glBindTransformFeedback\0" "glDeleteTransformFeedbacks\0" "glDrawTransformFeedback\0" @@ -1322,41 +1336,41 @@ static const char gl_string_table[] = #define gl_dispatch_stub_364 mgl_dispatch_stub_364 #define gl_dispatch_stub_365 mgl_dispatch_stub_365 #define gl_dispatch_stub_366 mgl_dispatch_stub_366 -#define gl_dispatch_stub_613 mgl_dispatch_stub_613 -#define gl_dispatch_stub_614 mgl_dispatch_stub_614 -#define gl_dispatch_stub_615 mgl_dispatch_stub_615 -#define gl_dispatch_stub_616 mgl_dispatch_stub_616 -#define gl_dispatch_stub_617 mgl_dispatch_stub_617 -#define gl_dispatch_stub_618 mgl_dispatch_stub_618 -#define gl_dispatch_stub_619 mgl_dispatch_stub_619 -#define gl_dispatch_stub_620 mgl_dispatch_stub_620 -#define gl_dispatch_stub_655 mgl_dispatch_stub_655 -#define gl_dispatch_stub_697 mgl_dispatch_stub_697 -#define gl_dispatch_stub_698 mgl_dispatch_stub_698 -#define gl_dispatch_stub_699 mgl_dispatch_stub_699 -#define gl_dispatch_stub_700 mgl_dispatch_stub_700 -#define gl_dispatch_stub_701 mgl_dispatch_stub_701 -#define gl_dispatch_stub_702 mgl_dispatch_stub_702 -#define gl_dispatch_stub_703 mgl_dispatch_stub_703 -#define gl_dispatch_stub_704 mgl_dispatch_stub_704 -#define gl_dispatch_stub_705 mgl_dispatch_stub_705 -#define gl_dispatch_stub_786 mgl_dispatch_stub_786 -#define gl_dispatch_stub_787 mgl_dispatch_stub_787 -#define gl_dispatch_stub_788 mgl_dispatch_stub_788 -#define gl_dispatch_stub_789 mgl_dispatch_stub_789 -#define gl_dispatch_stub_790 mgl_dispatch_stub_790 -#define gl_dispatch_stub_799 mgl_dispatch_stub_799 +#define gl_dispatch_stub_627 mgl_dispatch_stub_627 +#define gl_dispatch_stub_628 mgl_dispatch_stub_628 +#define gl_dispatch_stub_629 mgl_dispatch_stub_629 +#define gl_dispatch_stub_630 mgl_dispatch_stub_630 +#define gl_dispatch_stub_631 mgl_dispatch_stub_631 +#define gl_dispatch_stub_632 mgl_dispatch_stub_632 +#define gl_dispatch_stub_633 mgl_dispatch_stub_633 +#define gl_dispatch_stub_634 mgl_dispatch_stub_634 +#define gl_dispatch_stub_669 mgl_dispatch_stub_669 +#define gl_dispatch_stub_711 mgl_dispatch_stub_711 +#define gl_dispatch_stub_712 mgl_dispatch_stub_712 +#define gl_dispatch_stub_713 mgl_dispatch_stub_713 +#define gl_dispatch_stub_714 mgl_dispatch_stub_714 +#define gl_dispatch_stub_715 mgl_dispatch_stub_715 +#define gl_dispatch_stub_716 mgl_dispatch_stub_716 +#define gl_dispatch_stub_717 mgl_dispatch_stub_717 +#define gl_dispatch_stub_718 mgl_dispatch_stub_718 +#define gl_dispatch_stub_719 mgl_dispatch_stub_719 #define gl_dispatch_stub_800 mgl_dispatch_stub_800 -#define gl_dispatch_stub_818 mgl_dispatch_stub_818 -#define gl_dispatch_stub_819 mgl_dispatch_stub_819 -#define gl_dispatch_stub_820 mgl_dispatch_stub_820 -#define gl_dispatch_stub_878 mgl_dispatch_stub_878 -#define gl_dispatch_stub_879 mgl_dispatch_stub_879 -#define gl_dispatch_stub_887 mgl_dispatch_stub_887 -#define gl_dispatch_stub_888 mgl_dispatch_stub_888 -#define gl_dispatch_stub_889 mgl_dispatch_stub_889 -#define gl_dispatch_stub_890 mgl_dispatch_stub_890 -#define gl_dispatch_stub_891 mgl_dispatch_stub_891 +#define gl_dispatch_stub_801 mgl_dispatch_stub_801 +#define gl_dispatch_stub_802 mgl_dispatch_stub_802 +#define gl_dispatch_stub_803 mgl_dispatch_stub_803 +#define gl_dispatch_stub_804 mgl_dispatch_stub_804 +#define gl_dispatch_stub_813 mgl_dispatch_stub_813 +#define gl_dispatch_stub_814 mgl_dispatch_stub_814 +#define gl_dispatch_stub_832 mgl_dispatch_stub_832 +#define gl_dispatch_stub_833 mgl_dispatch_stub_833 +#define gl_dispatch_stub_834 mgl_dispatch_stub_834 +#define gl_dispatch_stub_892 mgl_dispatch_stub_892 +#define gl_dispatch_stub_893 mgl_dispatch_stub_893 +#define gl_dispatch_stub_901 mgl_dispatch_stub_901 +#define gl_dispatch_stub_902 mgl_dispatch_stub_902 +#define gl_dispatch_stub_903 mgl_dispatch_stub_903 +#define gl_dispatch_stub_904 mgl_dispatch_stub_904 +#define gl_dispatch_stub_905 mgl_dispatch_stub_905 #endif /* USE_MGL_NAMESPACE */ @@ -1374,41 +1388,41 @@ void GLAPIENTRY gl_dispatch_stub_363(GLenum target, GLenum pname, GLint * params void GLAPIENTRY gl_dispatch_stub_364(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid * values); void GLAPIENTRY gl_dispatch_stub_365(GLenum target, GLenum pname, GLfloat * params); void GLAPIENTRY gl_dispatch_stub_366(GLenum target, GLenum pname, GLint * params); -void GLAPIENTRY gl_dispatch_stub_613(GLenum pname, GLfloat * params); -void GLAPIENTRY gl_dispatch_stub_614(GLenum pname, GLint * params); -void GLAPIENTRY gl_dispatch_stub_615(GLenum pname, GLfloat param); -void GLAPIENTRY gl_dispatch_stub_616(GLenum pname, const GLfloat * params); -void GLAPIENTRY gl_dispatch_stub_617(GLenum pname, GLint param); -void GLAPIENTRY gl_dispatch_stub_618(GLenum pname, const GLint * params); -void GLAPIENTRY gl_dispatch_stub_619(GLclampf value, GLboolean invert); -void GLAPIENTRY gl_dispatch_stub_620(GLenum pattern); -void GLAPIENTRY gl_dispatch_stub_655(GLenum mode); -void GLAPIENTRY gl_dispatch_stub_697(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); -void GLAPIENTRY gl_dispatch_stub_698(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); -void GLAPIENTRY gl_dispatch_stub_699(GLsizei n, const GLuint * fences); -void GLAPIENTRY gl_dispatch_stub_700(GLuint fence); -void GLAPIENTRY gl_dispatch_stub_701(GLsizei n, GLuint * fences); -void GLAPIENTRY gl_dispatch_stub_702(GLuint fence, GLenum pname, GLint * params); -GLboolean GLAPIENTRY gl_dispatch_stub_703(GLuint fence); -void GLAPIENTRY gl_dispatch_stub_704(GLuint fence, GLenum condition); -GLboolean GLAPIENTRY gl_dispatch_stub_705(GLuint fence); -void GLAPIENTRY gl_dispatch_stub_786(GLenum face); -void GLAPIENTRY gl_dispatch_stub_787(GLuint array); -void GLAPIENTRY gl_dispatch_stub_788(GLsizei n, const GLuint * arrays); -void GLAPIENTRY gl_dispatch_stub_789(GLsizei n, GLuint * arrays); -GLboolean GLAPIENTRY gl_dispatch_stub_790(GLuint array); -void GLAPIENTRY gl_dispatch_stub_799(GLclampd zmin, GLclampd zmax); -void GLAPIENTRY gl_dispatch_stub_800(GLenum modeRGB, GLenum modeA); -void GLAPIENTRY gl_dispatch_stub_818(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); -void GLAPIENTRY gl_dispatch_stub_819(GLenum target, GLenum pname, GLint param); -void GLAPIENTRY gl_dispatch_stub_820(GLenum target, GLintptr offset, GLsizeiptr size); -void GLAPIENTRY gl_dispatch_stub_878(GLenum target, GLenum pname, GLvoid ** params); -void GLAPIENTRY gl_dispatch_stub_879(GLenum target, GLsizei length, GLvoid * pointer); -void GLAPIENTRY gl_dispatch_stub_887(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); -void GLAPIENTRY gl_dispatch_stub_888(GLenum target, GLuint index, GLsizei count, const GLfloat * params); -void GLAPIENTRY gl_dispatch_stub_889(GLenum target, GLuint index, GLsizei count, const GLfloat * params); -void GLAPIENTRY gl_dispatch_stub_890(GLuint id, GLenum pname, GLint64EXT * params); -void GLAPIENTRY gl_dispatch_stub_891(GLuint id, GLenum pname, GLuint64EXT * params); +void GLAPIENTRY gl_dispatch_stub_627(GLenum pname, GLfloat * params); +void GLAPIENTRY gl_dispatch_stub_628(GLenum pname, GLint * params); +void GLAPIENTRY gl_dispatch_stub_629(GLenum pname, GLfloat param); +void GLAPIENTRY gl_dispatch_stub_630(GLenum pname, const GLfloat * params); +void GLAPIENTRY gl_dispatch_stub_631(GLenum pname, GLint param); +void GLAPIENTRY gl_dispatch_stub_632(GLenum pname, const GLint * params); +void GLAPIENTRY gl_dispatch_stub_633(GLclampf value, GLboolean invert); +void GLAPIENTRY gl_dispatch_stub_634(GLenum pattern); +void GLAPIENTRY gl_dispatch_stub_669(GLenum mode); +void GLAPIENTRY gl_dispatch_stub_711(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); +void GLAPIENTRY gl_dispatch_stub_712(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); +void GLAPIENTRY gl_dispatch_stub_713(GLsizei n, const GLuint * fences); +void GLAPIENTRY gl_dispatch_stub_714(GLuint fence); +void GLAPIENTRY gl_dispatch_stub_715(GLsizei n, GLuint * fences); +void GLAPIENTRY gl_dispatch_stub_716(GLuint fence, GLenum pname, GLint * params); +GLboolean GLAPIENTRY gl_dispatch_stub_717(GLuint fence); +void GLAPIENTRY gl_dispatch_stub_718(GLuint fence, GLenum condition); +GLboolean GLAPIENTRY gl_dispatch_stub_719(GLuint fence); +void GLAPIENTRY gl_dispatch_stub_800(GLenum face); +void GLAPIENTRY gl_dispatch_stub_801(GLuint array); +void GLAPIENTRY gl_dispatch_stub_802(GLsizei n, const GLuint * arrays); +void GLAPIENTRY gl_dispatch_stub_803(GLsizei n, GLuint * arrays); +GLboolean GLAPIENTRY gl_dispatch_stub_804(GLuint array); +void GLAPIENTRY gl_dispatch_stub_813(GLclampd zmin, GLclampd zmax); +void GLAPIENTRY gl_dispatch_stub_814(GLenum modeRGB, GLenum modeA); +void GLAPIENTRY gl_dispatch_stub_832(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); +void GLAPIENTRY gl_dispatch_stub_833(GLenum target, GLenum pname, GLint param); +void GLAPIENTRY gl_dispatch_stub_834(GLenum target, GLintptr offset, GLsizeiptr size); +void GLAPIENTRY gl_dispatch_stub_892(GLenum target, GLenum pname, GLvoid ** params); +void GLAPIENTRY gl_dispatch_stub_893(GLenum target, GLsizei length, GLvoid * pointer); +void GLAPIENTRY gl_dispatch_stub_901(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); +void GLAPIENTRY gl_dispatch_stub_902(GLenum target, GLuint index, GLsizei count, const GLfloat * params); +void GLAPIENTRY gl_dispatch_stub_903(GLenum target, GLuint index, GLsizei count, const GLfloat * params); +void GLAPIENTRY gl_dispatch_stub_904(GLuint id, GLenum pname, GLint64EXT * params); +void GLAPIENTRY gl_dispatch_stub_905(GLuint id, GLenum pname, GLuint64EXT * params); #endif /* defined(NEED_FUNCTION_POINTER) || defined(GLX_INDIRECT_RENDERING) */ static const glprocs_table_t static_functions[] = { @@ -2012,659 +2026,673 @@ static const glprocs_table_t static_functions[] = { NAME_FUNC_OFFSET( 9657, glBlendEquationiARB, glBlendEquationiARB, NULL, 597), NAME_FUNC_OFFSET( 9677, glBlendFuncSeparateiARB, glBlendFuncSeparateiARB, NULL, 598), NAME_FUNC_OFFSET( 9701, glBlendFunciARB, glBlendFunciARB, NULL, 599), - NAME_FUNC_OFFSET( 9717, glBindTransformFeedback, glBindTransformFeedback, NULL, 600), - NAME_FUNC_OFFSET( 9741, glDeleteTransformFeedbacks, glDeleteTransformFeedbacks, NULL, 601), - NAME_FUNC_OFFSET( 9768, glDrawTransformFeedback, glDrawTransformFeedback, NULL, 602), - NAME_FUNC_OFFSET( 9792, glGenTransformFeedbacks, glGenTransformFeedbacks, NULL, 603), - NAME_FUNC_OFFSET( 9816, glIsTransformFeedback, glIsTransformFeedback, NULL, 604), - NAME_FUNC_OFFSET( 9838, glPauseTransformFeedback, glPauseTransformFeedback, NULL, 605), - NAME_FUNC_OFFSET( 9863, glResumeTransformFeedback, glResumeTransformFeedback, NULL, 606), - NAME_FUNC_OFFSET( 9889, glClearDepthf, glClearDepthf, NULL, 607), - NAME_FUNC_OFFSET( 9903, glDepthRangef, glDepthRangef, NULL, 608), - NAME_FUNC_OFFSET( 9917, glGetShaderPrecisionFormat, glGetShaderPrecisionFormat, NULL, 609), - NAME_FUNC_OFFSET( 9944, glReleaseShaderCompiler, glReleaseShaderCompiler, NULL, 610), - NAME_FUNC_OFFSET( 9968, glShaderBinary, glShaderBinary, NULL, 611), - NAME_FUNC_OFFSET( 9983, glPolygonOffsetEXT, glPolygonOffsetEXT, NULL, 612), - NAME_FUNC_OFFSET(10002, gl_dispatch_stub_613, gl_dispatch_stub_613, NULL, 613), - NAME_FUNC_OFFSET(10034, gl_dispatch_stub_614, gl_dispatch_stub_614, NULL, 614), - NAME_FUNC_OFFSET(10066, gl_dispatch_stub_615, gl_dispatch_stub_615, NULL, 615), - NAME_FUNC_OFFSET(10094, gl_dispatch_stub_616, gl_dispatch_stub_616, NULL, 616), - NAME_FUNC_OFFSET(10123, gl_dispatch_stub_617, gl_dispatch_stub_617, NULL, 617), - NAME_FUNC_OFFSET(10151, gl_dispatch_stub_618, gl_dispatch_stub_618, NULL, 618), - NAME_FUNC_OFFSET(10180, gl_dispatch_stub_619, gl_dispatch_stub_619, NULL, 619), - NAME_FUNC_OFFSET(10197, gl_dispatch_stub_620, gl_dispatch_stub_620, NULL, 620), - NAME_FUNC_OFFSET(10217, glColorPointerEXT, glColorPointerEXT, NULL, 621), - NAME_FUNC_OFFSET(10235, glEdgeFlagPointerEXT, glEdgeFlagPointerEXT, NULL, 622), - NAME_FUNC_OFFSET(10256, glIndexPointerEXT, glIndexPointerEXT, NULL, 623), - NAME_FUNC_OFFSET(10274, glNormalPointerEXT, glNormalPointerEXT, NULL, 624), - NAME_FUNC_OFFSET(10293, glTexCoordPointerEXT, glTexCoordPointerEXT, NULL, 625), - NAME_FUNC_OFFSET(10314, glVertexPointerEXT, glVertexPointerEXT, NULL, 626), - NAME_FUNC_OFFSET(10333, glPointParameterfEXT, glPointParameterfEXT, NULL, 627), - NAME_FUNC_OFFSET(10354, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 628), - NAME_FUNC_OFFSET(10376, glLockArraysEXT, glLockArraysEXT, NULL, 629), - NAME_FUNC_OFFSET(10392, glUnlockArraysEXT, glUnlockArraysEXT, NULL, 630), - NAME_FUNC_OFFSET(10410, glSecondaryColor3bEXT, glSecondaryColor3bEXT, NULL, 631), - NAME_FUNC_OFFSET(10432, glSecondaryColor3bvEXT, glSecondaryColor3bvEXT, NULL, 632), - NAME_FUNC_OFFSET(10455, glSecondaryColor3dEXT, glSecondaryColor3dEXT, NULL, 633), - NAME_FUNC_OFFSET(10477, glSecondaryColor3dvEXT, glSecondaryColor3dvEXT, NULL, 634), - NAME_FUNC_OFFSET(10500, glSecondaryColor3fEXT, glSecondaryColor3fEXT, NULL, 635), - NAME_FUNC_OFFSET(10522, glSecondaryColor3fvEXT, glSecondaryColor3fvEXT, NULL, 636), - NAME_FUNC_OFFSET(10545, glSecondaryColor3iEXT, glSecondaryColor3iEXT, NULL, 637), - NAME_FUNC_OFFSET(10567, glSecondaryColor3ivEXT, glSecondaryColor3ivEXT, NULL, 638), - NAME_FUNC_OFFSET(10590, glSecondaryColor3sEXT, glSecondaryColor3sEXT, NULL, 639), - NAME_FUNC_OFFSET(10612, glSecondaryColor3svEXT, glSecondaryColor3svEXT, NULL, 640), - NAME_FUNC_OFFSET(10635, glSecondaryColor3ubEXT, glSecondaryColor3ubEXT, NULL, 641), - NAME_FUNC_OFFSET(10658, glSecondaryColor3ubvEXT, glSecondaryColor3ubvEXT, NULL, 642), - NAME_FUNC_OFFSET(10682, glSecondaryColor3uiEXT, glSecondaryColor3uiEXT, NULL, 643), - NAME_FUNC_OFFSET(10705, glSecondaryColor3uivEXT, glSecondaryColor3uivEXT, NULL, 644), - NAME_FUNC_OFFSET(10729, glSecondaryColor3usEXT, glSecondaryColor3usEXT, NULL, 645), - NAME_FUNC_OFFSET(10752, glSecondaryColor3usvEXT, glSecondaryColor3usvEXT, NULL, 646), - NAME_FUNC_OFFSET(10776, glSecondaryColorPointerEXT, glSecondaryColorPointerEXT, NULL, 647), - NAME_FUNC_OFFSET(10803, glMultiDrawArraysEXT, glMultiDrawArraysEXT, NULL, 648), - NAME_FUNC_OFFSET(10824, glMultiDrawElementsEXT, glMultiDrawElementsEXT, NULL, 649), - NAME_FUNC_OFFSET(10847, glFogCoordPointerEXT, glFogCoordPointerEXT, NULL, 650), - NAME_FUNC_OFFSET(10868, glFogCoorddEXT, glFogCoorddEXT, NULL, 651), - NAME_FUNC_OFFSET(10883, glFogCoorddvEXT, glFogCoorddvEXT, NULL, 652), - NAME_FUNC_OFFSET(10899, glFogCoordfEXT, glFogCoordfEXT, NULL, 653), - NAME_FUNC_OFFSET(10914, glFogCoordfvEXT, glFogCoordfvEXT, NULL, 654), - NAME_FUNC_OFFSET(10930, gl_dispatch_stub_655, gl_dispatch_stub_655, NULL, 655), - NAME_FUNC_OFFSET(10948, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, 656), - NAME_FUNC_OFFSET(10971, glFlushVertexArrayRangeNV, glFlushVertexArrayRangeNV, NULL, 657), - NAME_FUNC_OFFSET(10997, glVertexArrayRangeNV, glVertexArrayRangeNV, NULL, 658), - NAME_FUNC_OFFSET(11018, glCombinerInputNV, glCombinerInputNV, NULL, 659), - NAME_FUNC_OFFSET(11036, glCombinerOutputNV, glCombinerOutputNV, NULL, 660), - NAME_FUNC_OFFSET(11055, glCombinerParameterfNV, glCombinerParameterfNV, NULL, 661), - NAME_FUNC_OFFSET(11078, glCombinerParameterfvNV, glCombinerParameterfvNV, NULL, 662), - NAME_FUNC_OFFSET(11102, glCombinerParameteriNV, glCombinerParameteriNV, NULL, 663), - NAME_FUNC_OFFSET(11125, glCombinerParameterivNV, glCombinerParameterivNV, NULL, 664), - NAME_FUNC_OFFSET(11149, glFinalCombinerInputNV, glFinalCombinerInputNV, NULL, 665), - NAME_FUNC_OFFSET(11172, glGetCombinerInputParameterfvNV, glGetCombinerInputParameterfvNV, NULL, 666), - NAME_FUNC_OFFSET(11204, glGetCombinerInputParameterivNV, glGetCombinerInputParameterivNV, NULL, 667), - NAME_FUNC_OFFSET(11236, glGetCombinerOutputParameterfvNV, glGetCombinerOutputParameterfvNV, NULL, 668), - NAME_FUNC_OFFSET(11269, glGetCombinerOutputParameterivNV, glGetCombinerOutputParameterivNV, NULL, 669), - NAME_FUNC_OFFSET(11302, glGetFinalCombinerInputParameterfvNV, glGetFinalCombinerInputParameterfvNV, NULL, 670), - NAME_FUNC_OFFSET(11339, glGetFinalCombinerInputParameterivNV, glGetFinalCombinerInputParameterivNV, NULL, 671), - NAME_FUNC_OFFSET(11376, glResizeBuffersMESA, glResizeBuffersMESA, NULL, 672), - NAME_FUNC_OFFSET(11396, glWindowPos2dMESA, glWindowPos2dMESA, NULL, 673), - NAME_FUNC_OFFSET(11414, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, 674), - NAME_FUNC_OFFSET(11433, glWindowPos2fMESA, glWindowPos2fMESA, NULL, 675), - NAME_FUNC_OFFSET(11451, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, 676), - NAME_FUNC_OFFSET(11470, glWindowPos2iMESA, glWindowPos2iMESA, NULL, 677), - NAME_FUNC_OFFSET(11488, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, 678), - NAME_FUNC_OFFSET(11507, glWindowPos2sMESA, glWindowPos2sMESA, NULL, 679), - NAME_FUNC_OFFSET(11525, glWindowPos2svMESA, glWindowPos2svMESA, NULL, 680), - NAME_FUNC_OFFSET(11544, glWindowPos3dMESA, glWindowPos3dMESA, NULL, 681), - NAME_FUNC_OFFSET(11562, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, 682), - NAME_FUNC_OFFSET(11581, glWindowPos3fMESA, glWindowPos3fMESA, NULL, 683), - NAME_FUNC_OFFSET(11599, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, 684), - NAME_FUNC_OFFSET(11618, glWindowPos3iMESA, glWindowPos3iMESA, NULL, 685), - NAME_FUNC_OFFSET(11636, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, 686), - NAME_FUNC_OFFSET(11655, glWindowPos3sMESA, glWindowPos3sMESA, NULL, 687), - NAME_FUNC_OFFSET(11673, glWindowPos3svMESA, glWindowPos3svMESA, NULL, 688), - NAME_FUNC_OFFSET(11692, glWindowPos4dMESA, glWindowPos4dMESA, NULL, 689), - NAME_FUNC_OFFSET(11710, glWindowPos4dvMESA, glWindowPos4dvMESA, NULL, 690), - NAME_FUNC_OFFSET(11729, glWindowPos4fMESA, glWindowPos4fMESA, NULL, 691), - NAME_FUNC_OFFSET(11747, glWindowPos4fvMESA, glWindowPos4fvMESA, NULL, 692), - NAME_FUNC_OFFSET(11766, glWindowPos4iMESA, glWindowPos4iMESA, NULL, 693), - NAME_FUNC_OFFSET(11784, glWindowPos4ivMESA, glWindowPos4ivMESA, NULL, 694), - NAME_FUNC_OFFSET(11803, glWindowPos4sMESA, glWindowPos4sMESA, NULL, 695), - NAME_FUNC_OFFSET(11821, glWindowPos4svMESA, glWindowPos4svMESA, NULL, 696), - NAME_FUNC_OFFSET(11840, gl_dispatch_stub_697, gl_dispatch_stub_697, NULL, 697), - NAME_FUNC_OFFSET(11865, gl_dispatch_stub_698, gl_dispatch_stub_698, NULL, 698), - NAME_FUNC_OFFSET(11892, gl_dispatch_stub_699, gl_dispatch_stub_699, NULL, 699), - NAME_FUNC_OFFSET(11909, gl_dispatch_stub_700, gl_dispatch_stub_700, NULL, 700), - NAME_FUNC_OFFSET(11925, gl_dispatch_stub_701, gl_dispatch_stub_701, NULL, 701), - NAME_FUNC_OFFSET(11939, gl_dispatch_stub_702, gl_dispatch_stub_702, NULL, 702), - NAME_FUNC_OFFSET(11954, gl_dispatch_stub_703, gl_dispatch_stub_703, NULL, 703), - NAME_FUNC_OFFSET(11966, gl_dispatch_stub_704, gl_dispatch_stub_704, NULL, 704), - NAME_FUNC_OFFSET(11979, gl_dispatch_stub_705, gl_dispatch_stub_705, NULL, 705), - NAME_FUNC_OFFSET(11993, glAreProgramsResidentNV, glAreProgramsResidentNV, NULL, 706), - NAME_FUNC_OFFSET(12017, glBindProgramNV, glBindProgramNV, NULL, 707), - NAME_FUNC_OFFSET(12033, glDeleteProgramsNV, glDeleteProgramsNV, NULL, 708), - NAME_FUNC_OFFSET(12052, glExecuteProgramNV, glExecuteProgramNV, NULL, 709), - NAME_FUNC_OFFSET(12071, glGenProgramsNV, glGenProgramsNV, NULL, 710), - NAME_FUNC_OFFSET(12087, glGetProgramParameterdvNV, glGetProgramParameterdvNV, NULL, 711), - NAME_FUNC_OFFSET(12113, glGetProgramParameterfvNV, glGetProgramParameterfvNV, NULL, 712), - NAME_FUNC_OFFSET(12139, glGetProgramStringNV, glGetProgramStringNV, NULL, 713), - NAME_FUNC_OFFSET(12160, glGetProgramivNV, glGetProgramivNV, NULL, 714), - NAME_FUNC_OFFSET(12177, glGetTrackMatrixivNV, glGetTrackMatrixivNV, NULL, 715), - NAME_FUNC_OFFSET(12198, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, 716), - NAME_FUNC_OFFSET(12226, glGetVertexAttribdvNV, glGetVertexAttribdvNV, NULL, 717), - NAME_FUNC_OFFSET(12248, glGetVertexAttribfvNV, glGetVertexAttribfvNV, NULL, 718), - NAME_FUNC_OFFSET(12270, glGetVertexAttribivNV, glGetVertexAttribivNV, NULL, 719), - NAME_FUNC_OFFSET(12292, glIsProgramNV, glIsProgramNV, NULL, 720), - NAME_FUNC_OFFSET(12306, glLoadProgramNV, glLoadProgramNV, NULL, 721), - NAME_FUNC_OFFSET(12322, glProgramParameters4dvNV, glProgramParameters4dvNV, NULL, 722), - NAME_FUNC_OFFSET(12347, glProgramParameters4fvNV, glProgramParameters4fvNV, NULL, 723), - NAME_FUNC_OFFSET(12372, glRequestResidentProgramsNV, glRequestResidentProgramsNV, NULL, 724), - NAME_FUNC_OFFSET(12400, glTrackMatrixNV, glTrackMatrixNV, NULL, 725), - NAME_FUNC_OFFSET(12416, glVertexAttrib1dNV, glVertexAttrib1dNV, NULL, 726), - NAME_FUNC_OFFSET(12435, glVertexAttrib1dvNV, glVertexAttrib1dvNV, NULL, 727), - NAME_FUNC_OFFSET(12455, glVertexAttrib1fNV, glVertexAttrib1fNV, NULL, 728), - NAME_FUNC_OFFSET(12474, glVertexAttrib1fvNV, glVertexAttrib1fvNV, NULL, 729), - NAME_FUNC_OFFSET(12494, glVertexAttrib1sNV, glVertexAttrib1sNV, NULL, 730), - NAME_FUNC_OFFSET(12513, glVertexAttrib1svNV, glVertexAttrib1svNV, NULL, 731), - NAME_FUNC_OFFSET(12533, glVertexAttrib2dNV, glVertexAttrib2dNV, NULL, 732), - NAME_FUNC_OFFSET(12552, glVertexAttrib2dvNV, glVertexAttrib2dvNV, NULL, 733), - NAME_FUNC_OFFSET(12572, glVertexAttrib2fNV, glVertexAttrib2fNV, NULL, 734), - NAME_FUNC_OFFSET(12591, glVertexAttrib2fvNV, glVertexAttrib2fvNV, NULL, 735), - NAME_FUNC_OFFSET(12611, glVertexAttrib2sNV, glVertexAttrib2sNV, NULL, 736), - NAME_FUNC_OFFSET(12630, glVertexAttrib2svNV, glVertexAttrib2svNV, NULL, 737), - NAME_FUNC_OFFSET(12650, glVertexAttrib3dNV, glVertexAttrib3dNV, NULL, 738), - NAME_FUNC_OFFSET(12669, glVertexAttrib3dvNV, glVertexAttrib3dvNV, NULL, 739), - NAME_FUNC_OFFSET(12689, glVertexAttrib3fNV, glVertexAttrib3fNV, NULL, 740), - NAME_FUNC_OFFSET(12708, glVertexAttrib3fvNV, glVertexAttrib3fvNV, NULL, 741), - NAME_FUNC_OFFSET(12728, glVertexAttrib3sNV, glVertexAttrib3sNV, NULL, 742), - NAME_FUNC_OFFSET(12747, glVertexAttrib3svNV, glVertexAttrib3svNV, NULL, 743), - NAME_FUNC_OFFSET(12767, glVertexAttrib4dNV, glVertexAttrib4dNV, NULL, 744), - NAME_FUNC_OFFSET(12786, glVertexAttrib4dvNV, glVertexAttrib4dvNV, NULL, 745), - NAME_FUNC_OFFSET(12806, glVertexAttrib4fNV, glVertexAttrib4fNV, NULL, 746), - NAME_FUNC_OFFSET(12825, glVertexAttrib4fvNV, glVertexAttrib4fvNV, NULL, 747), - NAME_FUNC_OFFSET(12845, glVertexAttrib4sNV, glVertexAttrib4sNV, NULL, 748), - NAME_FUNC_OFFSET(12864, glVertexAttrib4svNV, glVertexAttrib4svNV, NULL, 749), - NAME_FUNC_OFFSET(12884, glVertexAttrib4ubNV, glVertexAttrib4ubNV, NULL, 750), - NAME_FUNC_OFFSET(12904, glVertexAttrib4ubvNV, glVertexAttrib4ubvNV, NULL, 751), - NAME_FUNC_OFFSET(12925, glVertexAttribPointerNV, glVertexAttribPointerNV, NULL, 752), - NAME_FUNC_OFFSET(12949, glVertexAttribs1dvNV, glVertexAttribs1dvNV, NULL, 753), - NAME_FUNC_OFFSET(12970, glVertexAttribs1fvNV, glVertexAttribs1fvNV, NULL, 754), - NAME_FUNC_OFFSET(12991, glVertexAttribs1svNV, glVertexAttribs1svNV, NULL, 755), - NAME_FUNC_OFFSET(13012, glVertexAttribs2dvNV, glVertexAttribs2dvNV, NULL, 756), - NAME_FUNC_OFFSET(13033, glVertexAttribs2fvNV, glVertexAttribs2fvNV, NULL, 757), - NAME_FUNC_OFFSET(13054, glVertexAttribs2svNV, glVertexAttribs2svNV, NULL, 758), - NAME_FUNC_OFFSET(13075, glVertexAttribs3dvNV, glVertexAttribs3dvNV, NULL, 759), - NAME_FUNC_OFFSET(13096, glVertexAttribs3fvNV, glVertexAttribs3fvNV, NULL, 760), - NAME_FUNC_OFFSET(13117, glVertexAttribs3svNV, glVertexAttribs3svNV, NULL, 761), - NAME_FUNC_OFFSET(13138, glVertexAttribs4dvNV, glVertexAttribs4dvNV, NULL, 762), - NAME_FUNC_OFFSET(13159, glVertexAttribs4fvNV, glVertexAttribs4fvNV, NULL, 763), - NAME_FUNC_OFFSET(13180, glVertexAttribs4svNV, glVertexAttribs4svNV, NULL, 764), - NAME_FUNC_OFFSET(13201, glVertexAttribs4ubvNV, glVertexAttribs4ubvNV, NULL, 765), - NAME_FUNC_OFFSET(13223, glGetTexBumpParameterfvATI, glGetTexBumpParameterfvATI, NULL, 766), - NAME_FUNC_OFFSET(13250, glGetTexBumpParameterivATI, glGetTexBumpParameterivATI, NULL, 767), - NAME_FUNC_OFFSET(13277, glTexBumpParameterfvATI, glTexBumpParameterfvATI, NULL, 768), - NAME_FUNC_OFFSET(13301, glTexBumpParameterivATI, glTexBumpParameterivATI, NULL, 769), - NAME_FUNC_OFFSET(13325, glAlphaFragmentOp1ATI, glAlphaFragmentOp1ATI, NULL, 770), - NAME_FUNC_OFFSET(13347, glAlphaFragmentOp2ATI, glAlphaFragmentOp2ATI, NULL, 771), - NAME_FUNC_OFFSET(13369, glAlphaFragmentOp3ATI, glAlphaFragmentOp3ATI, NULL, 772), - NAME_FUNC_OFFSET(13391, glBeginFragmentShaderATI, glBeginFragmentShaderATI, NULL, 773), - NAME_FUNC_OFFSET(13416, glBindFragmentShaderATI, glBindFragmentShaderATI, NULL, 774), - NAME_FUNC_OFFSET(13440, glColorFragmentOp1ATI, glColorFragmentOp1ATI, NULL, 775), - NAME_FUNC_OFFSET(13462, glColorFragmentOp2ATI, glColorFragmentOp2ATI, NULL, 776), - NAME_FUNC_OFFSET(13484, glColorFragmentOp3ATI, glColorFragmentOp3ATI, NULL, 777), - NAME_FUNC_OFFSET(13506, glDeleteFragmentShaderATI, glDeleteFragmentShaderATI, NULL, 778), - NAME_FUNC_OFFSET(13532, glEndFragmentShaderATI, glEndFragmentShaderATI, NULL, 779), - NAME_FUNC_OFFSET(13555, glGenFragmentShadersATI, glGenFragmentShadersATI, NULL, 780), - NAME_FUNC_OFFSET(13579, glPassTexCoordATI, glPassTexCoordATI, NULL, 781), - NAME_FUNC_OFFSET(13597, glSampleMapATI, glSampleMapATI, NULL, 782), - NAME_FUNC_OFFSET(13612, glSetFragmentShaderConstantATI, glSetFragmentShaderConstantATI, NULL, 783), - NAME_FUNC_OFFSET(13643, glPointParameteriNV, glPointParameteriNV, NULL, 784), - NAME_FUNC_OFFSET(13663, glPointParameterivNV, glPointParameterivNV, NULL, 785), - NAME_FUNC_OFFSET(13684, gl_dispatch_stub_786, gl_dispatch_stub_786, NULL, 786), - NAME_FUNC_OFFSET(13707, gl_dispatch_stub_787, gl_dispatch_stub_787, NULL, 787), - NAME_FUNC_OFFSET(13730, gl_dispatch_stub_788, gl_dispatch_stub_788, NULL, 788), - NAME_FUNC_OFFSET(13756, gl_dispatch_stub_789, gl_dispatch_stub_789, NULL, 789), - NAME_FUNC_OFFSET(13779, gl_dispatch_stub_790, gl_dispatch_stub_790, NULL, 790), - NAME_FUNC_OFFSET(13800, glGetProgramNamedParameterdvNV, glGetProgramNamedParameterdvNV, NULL, 791), - NAME_FUNC_OFFSET(13831, glGetProgramNamedParameterfvNV, glGetProgramNamedParameterfvNV, NULL, 792), - NAME_FUNC_OFFSET(13862, glProgramNamedParameter4dNV, glProgramNamedParameter4dNV, NULL, 793), - NAME_FUNC_OFFSET(13890, glProgramNamedParameter4dvNV, glProgramNamedParameter4dvNV, NULL, 794), - NAME_FUNC_OFFSET(13919, glProgramNamedParameter4fNV, glProgramNamedParameter4fNV, NULL, 795), - NAME_FUNC_OFFSET(13947, glProgramNamedParameter4fvNV, glProgramNamedParameter4fvNV, NULL, 796), - NAME_FUNC_OFFSET(13976, glPrimitiveRestartIndexNV, glPrimitiveRestartIndexNV, NULL, 797), - NAME_FUNC_OFFSET(14002, glPrimitiveRestartNV, glPrimitiveRestartNV, NULL, 798), - NAME_FUNC_OFFSET(14023, gl_dispatch_stub_799, gl_dispatch_stub_799, NULL, 799), - NAME_FUNC_OFFSET(14040, gl_dispatch_stub_800, gl_dispatch_stub_800, NULL, 800), - NAME_FUNC_OFFSET(14067, glBindFramebufferEXT, glBindFramebufferEXT, NULL, 801), - NAME_FUNC_OFFSET(14088, glBindRenderbufferEXT, glBindRenderbufferEXT, NULL, 802), - NAME_FUNC_OFFSET(14110, glCheckFramebufferStatusEXT, glCheckFramebufferStatusEXT, NULL, 803), - NAME_FUNC_OFFSET(14138, glDeleteFramebuffersEXT, glDeleteFramebuffersEXT, NULL, 804), - NAME_FUNC_OFFSET(14162, glDeleteRenderbuffersEXT, glDeleteRenderbuffersEXT, NULL, 805), - NAME_FUNC_OFFSET(14187, glFramebufferRenderbufferEXT, glFramebufferRenderbufferEXT, NULL, 806), - NAME_FUNC_OFFSET(14216, glFramebufferTexture1DEXT, glFramebufferTexture1DEXT, NULL, 807), - NAME_FUNC_OFFSET(14242, glFramebufferTexture2DEXT, glFramebufferTexture2DEXT, NULL, 808), - NAME_FUNC_OFFSET(14268, glFramebufferTexture3DEXT, glFramebufferTexture3DEXT, NULL, 809), - NAME_FUNC_OFFSET(14294, glGenFramebuffersEXT, glGenFramebuffersEXT, NULL, 810), - NAME_FUNC_OFFSET(14315, glGenRenderbuffersEXT, glGenRenderbuffersEXT, NULL, 811), - NAME_FUNC_OFFSET(14337, glGenerateMipmapEXT, glGenerateMipmapEXT, NULL, 812), - NAME_FUNC_OFFSET(14357, glGetFramebufferAttachmentParameterivEXT, glGetFramebufferAttachmentParameterivEXT, NULL, 813), - NAME_FUNC_OFFSET(14398, glGetRenderbufferParameterivEXT, glGetRenderbufferParameterivEXT, NULL, 814), - NAME_FUNC_OFFSET(14430, glIsFramebufferEXT, glIsFramebufferEXT, NULL, 815), - NAME_FUNC_OFFSET(14449, glIsRenderbufferEXT, glIsRenderbufferEXT, NULL, 816), - NAME_FUNC_OFFSET(14469, glRenderbufferStorageEXT, glRenderbufferStorageEXT, NULL, 817), - NAME_FUNC_OFFSET(14494, gl_dispatch_stub_818, gl_dispatch_stub_818, NULL, 818), - NAME_FUNC_OFFSET(14515, gl_dispatch_stub_819, gl_dispatch_stub_819, NULL, 819), - NAME_FUNC_OFFSET(14539, gl_dispatch_stub_820, gl_dispatch_stub_820, NULL, 820), - NAME_FUNC_OFFSET(14569, glBindFragDataLocationEXT, glBindFragDataLocationEXT, NULL, 821), - NAME_FUNC_OFFSET(14595, glGetFragDataLocationEXT, glGetFragDataLocationEXT, NULL, 822), - NAME_FUNC_OFFSET(14620, glGetUniformuivEXT, glGetUniformuivEXT, NULL, 823), - NAME_FUNC_OFFSET(14639, glGetVertexAttribIivEXT, glGetVertexAttribIivEXT, NULL, 824), - NAME_FUNC_OFFSET(14663, glGetVertexAttribIuivEXT, glGetVertexAttribIuivEXT, NULL, 825), - NAME_FUNC_OFFSET(14688, glUniform1uiEXT, glUniform1uiEXT, NULL, 826), - NAME_FUNC_OFFSET(14704, glUniform1uivEXT, glUniform1uivEXT, NULL, 827), - NAME_FUNC_OFFSET(14721, glUniform2uiEXT, glUniform2uiEXT, NULL, 828), - NAME_FUNC_OFFSET(14737, glUniform2uivEXT, glUniform2uivEXT, NULL, 829), - NAME_FUNC_OFFSET(14754, glUniform3uiEXT, glUniform3uiEXT, NULL, 830), - NAME_FUNC_OFFSET(14770, glUniform3uivEXT, glUniform3uivEXT, NULL, 831), - NAME_FUNC_OFFSET(14787, glUniform4uiEXT, glUniform4uiEXT, NULL, 832), - NAME_FUNC_OFFSET(14803, glUniform4uivEXT, glUniform4uivEXT, NULL, 833), - NAME_FUNC_OFFSET(14820, glVertexAttribI1iEXT, glVertexAttribI1iEXT, NULL, 834), - NAME_FUNC_OFFSET(14841, glVertexAttribI1ivEXT, glVertexAttribI1ivEXT, NULL, 835), - NAME_FUNC_OFFSET(14863, glVertexAttribI1uiEXT, glVertexAttribI1uiEXT, NULL, 836), - NAME_FUNC_OFFSET(14885, glVertexAttribI1uivEXT, glVertexAttribI1uivEXT, NULL, 837), - NAME_FUNC_OFFSET(14908, glVertexAttribI2iEXT, glVertexAttribI2iEXT, NULL, 838), - NAME_FUNC_OFFSET(14929, glVertexAttribI2ivEXT, glVertexAttribI2ivEXT, NULL, 839), - NAME_FUNC_OFFSET(14951, glVertexAttribI2uiEXT, glVertexAttribI2uiEXT, NULL, 840), - NAME_FUNC_OFFSET(14973, glVertexAttribI2uivEXT, glVertexAttribI2uivEXT, NULL, 841), - NAME_FUNC_OFFSET(14996, glVertexAttribI3iEXT, glVertexAttribI3iEXT, NULL, 842), - NAME_FUNC_OFFSET(15017, glVertexAttribI3ivEXT, glVertexAttribI3ivEXT, NULL, 843), - NAME_FUNC_OFFSET(15039, glVertexAttribI3uiEXT, glVertexAttribI3uiEXT, NULL, 844), - NAME_FUNC_OFFSET(15061, glVertexAttribI3uivEXT, glVertexAttribI3uivEXT, NULL, 845), - NAME_FUNC_OFFSET(15084, glVertexAttribI4bvEXT, glVertexAttribI4bvEXT, NULL, 846), - NAME_FUNC_OFFSET(15106, glVertexAttribI4iEXT, glVertexAttribI4iEXT, NULL, 847), - NAME_FUNC_OFFSET(15127, glVertexAttribI4ivEXT, glVertexAttribI4ivEXT, NULL, 848), - NAME_FUNC_OFFSET(15149, glVertexAttribI4svEXT, glVertexAttribI4svEXT, NULL, 849), - NAME_FUNC_OFFSET(15171, glVertexAttribI4ubvEXT, glVertexAttribI4ubvEXT, NULL, 850), - NAME_FUNC_OFFSET(15194, glVertexAttribI4uiEXT, glVertexAttribI4uiEXT, NULL, 851), - NAME_FUNC_OFFSET(15216, glVertexAttribI4uivEXT, glVertexAttribI4uivEXT, NULL, 852), - NAME_FUNC_OFFSET(15239, glVertexAttribI4usvEXT, glVertexAttribI4usvEXT, NULL, 853), - NAME_FUNC_OFFSET(15262, glVertexAttribIPointerEXT, glVertexAttribIPointerEXT, NULL, 854), - NAME_FUNC_OFFSET(15288, glFramebufferTextureLayerEXT, glFramebufferTextureLayerEXT, NULL, 855), - NAME_FUNC_OFFSET(15317, glColorMaskIndexedEXT, glColorMaskIndexedEXT, NULL, 856), - NAME_FUNC_OFFSET(15339, glDisableIndexedEXT, glDisableIndexedEXT, NULL, 857), - NAME_FUNC_OFFSET(15359, glEnableIndexedEXT, glEnableIndexedEXT, NULL, 858), - NAME_FUNC_OFFSET(15378, glGetBooleanIndexedvEXT, glGetBooleanIndexedvEXT, NULL, 859), - NAME_FUNC_OFFSET(15402, glGetIntegerIndexedvEXT, glGetIntegerIndexedvEXT, NULL, 860), - NAME_FUNC_OFFSET(15426, glIsEnabledIndexedEXT, glIsEnabledIndexedEXT, NULL, 861), - NAME_FUNC_OFFSET(15448, glClearColorIiEXT, glClearColorIiEXT, NULL, 862), - NAME_FUNC_OFFSET(15466, glClearColorIuiEXT, glClearColorIuiEXT, NULL, 863), - NAME_FUNC_OFFSET(15485, glGetTexParameterIivEXT, glGetTexParameterIivEXT, NULL, 864), - NAME_FUNC_OFFSET(15509, glGetTexParameterIuivEXT, glGetTexParameterIuivEXT, NULL, 865), - NAME_FUNC_OFFSET(15534, glTexParameterIivEXT, glTexParameterIivEXT, NULL, 866), - NAME_FUNC_OFFSET(15555, glTexParameterIuivEXT, glTexParameterIuivEXT, NULL, 867), - NAME_FUNC_OFFSET(15577, glBeginConditionalRenderNV, glBeginConditionalRenderNV, NULL, 868), - NAME_FUNC_OFFSET(15604, glEndConditionalRenderNV, glEndConditionalRenderNV, NULL, 869), - NAME_FUNC_OFFSET(15629, glBeginTransformFeedbackEXT, glBeginTransformFeedbackEXT, NULL, 870), - NAME_FUNC_OFFSET(15657, glBindBufferBaseEXT, glBindBufferBaseEXT, NULL, 871), - NAME_FUNC_OFFSET(15677, glBindBufferOffsetEXT, glBindBufferOffsetEXT, NULL, 872), - NAME_FUNC_OFFSET(15699, glBindBufferRangeEXT, glBindBufferRangeEXT, NULL, 873), - NAME_FUNC_OFFSET(15720, glEndTransformFeedbackEXT, glEndTransformFeedbackEXT, NULL, 874), - NAME_FUNC_OFFSET(15746, glGetTransformFeedbackVaryingEXT, glGetTransformFeedbackVaryingEXT, NULL, 875), - NAME_FUNC_OFFSET(15779, glTransformFeedbackVaryingsEXT, glTransformFeedbackVaryingsEXT, NULL, 876), - NAME_FUNC_OFFSET(15810, glProvokingVertexEXT, glProvokingVertexEXT, NULL, 877), - NAME_FUNC_OFFSET(15831, gl_dispatch_stub_878, gl_dispatch_stub_878, NULL, 878), - NAME_FUNC_OFFSET(15862, gl_dispatch_stub_879, gl_dispatch_stub_879, NULL, 879), - NAME_FUNC_OFFSET(15882, glGetObjectParameterivAPPLE, glGetObjectParameterivAPPLE, NULL, 880), - NAME_FUNC_OFFSET(15910, glObjectPurgeableAPPLE, glObjectPurgeableAPPLE, NULL, 881), - NAME_FUNC_OFFSET(15933, glObjectUnpurgeableAPPLE, glObjectUnpurgeableAPPLE, NULL, 882), - NAME_FUNC_OFFSET(15958, glActiveProgramEXT, glActiveProgramEXT, NULL, 883), - NAME_FUNC_OFFSET(15977, glCreateShaderProgramEXT, glCreateShaderProgramEXT, NULL, 884), - NAME_FUNC_OFFSET(16002, glUseShaderProgramEXT, glUseShaderProgramEXT, NULL, 885), - NAME_FUNC_OFFSET(16024, glTextureBarrierNV, glTextureBarrierNV, NULL, 886), - NAME_FUNC_OFFSET(16043, gl_dispatch_stub_887, gl_dispatch_stub_887, NULL, 887), - NAME_FUNC_OFFSET(16068, gl_dispatch_stub_888, gl_dispatch_stub_888, NULL, 888), - NAME_FUNC_OFFSET(16097, gl_dispatch_stub_889, gl_dispatch_stub_889, NULL, 889), - NAME_FUNC_OFFSET(16128, gl_dispatch_stub_890, gl_dispatch_stub_890, NULL, 890), - NAME_FUNC_OFFSET(16152, gl_dispatch_stub_891, gl_dispatch_stub_891, NULL, 891), - NAME_FUNC_OFFSET(16177, glEGLImageTargetRenderbufferStorageOES, glEGLImageTargetRenderbufferStorageOES, NULL, 892), - NAME_FUNC_OFFSET(16216, glEGLImageTargetTexture2DOES, glEGLImageTargetTexture2DOES, NULL, 893), - NAME_FUNC_OFFSET(16245, glArrayElement, glArrayElement, NULL, 306), - NAME_FUNC_OFFSET(16263, glBindTexture, glBindTexture, NULL, 307), - NAME_FUNC_OFFSET(16280, glDrawArrays, glDrawArrays, NULL, 310), - NAME_FUNC_OFFSET(16296, glAreTexturesResident, glAreTexturesResidentEXT, glAreTexturesResidentEXT, 322), - NAME_FUNC_OFFSET(16321, glCopyTexImage1D, glCopyTexImage1D, NULL, 323), - NAME_FUNC_OFFSET(16341, glCopyTexImage2D, glCopyTexImage2D, NULL, 324), - NAME_FUNC_OFFSET(16361, glCopyTexSubImage1D, glCopyTexSubImage1D, NULL, 325), - NAME_FUNC_OFFSET(16384, glCopyTexSubImage2D, glCopyTexSubImage2D, NULL, 326), - NAME_FUNC_OFFSET(16407, glDeleteTextures, glDeleteTexturesEXT, glDeleteTexturesEXT, 327), - NAME_FUNC_OFFSET(16427, glGenTextures, glGenTexturesEXT, glGenTexturesEXT, 328), - NAME_FUNC_OFFSET(16444, glGetPointerv, glGetPointerv, NULL, 329), - NAME_FUNC_OFFSET(16461, glIsTexture, glIsTextureEXT, glIsTextureEXT, 330), - NAME_FUNC_OFFSET(16476, glPrioritizeTextures, glPrioritizeTextures, NULL, 331), - NAME_FUNC_OFFSET(16500, glTexSubImage1D, glTexSubImage1D, NULL, 332), - NAME_FUNC_OFFSET(16519, glTexSubImage2D, glTexSubImage2D, NULL, 333), - NAME_FUNC_OFFSET(16538, glBlendColor, glBlendColor, NULL, 336), - NAME_FUNC_OFFSET(16554, glBlendEquation, glBlendEquation, NULL, 337), - NAME_FUNC_OFFSET(16573, glDrawRangeElements, glDrawRangeElements, NULL, 338), - NAME_FUNC_OFFSET(16596, glColorTable, glColorTable, NULL, 339), - NAME_FUNC_OFFSET(16612, glColorTable, glColorTable, NULL, 339), - NAME_FUNC_OFFSET(16628, glColorTableParameterfv, glColorTableParameterfv, NULL, 340), - NAME_FUNC_OFFSET(16655, glColorTableParameteriv, glColorTableParameteriv, NULL, 341), - NAME_FUNC_OFFSET(16682, glCopyColorTable, glCopyColorTable, NULL, 342), - NAME_FUNC_OFFSET(16702, glGetColorTable, glGetColorTableEXT, glGetColorTableEXT, 343), - NAME_FUNC_OFFSET(16721, glGetColorTable, glGetColorTableEXT, glGetColorTableEXT, 343), - NAME_FUNC_OFFSET(16740, glGetColorTableParameterfv, glGetColorTableParameterfvEXT, glGetColorTableParameterfvEXT, 344), - NAME_FUNC_OFFSET(16770, glGetColorTableParameterfv, glGetColorTableParameterfvEXT, glGetColorTableParameterfvEXT, 344), - NAME_FUNC_OFFSET(16800, glGetColorTableParameteriv, glGetColorTableParameterivEXT, glGetColorTableParameterivEXT, 345), - NAME_FUNC_OFFSET(16830, glGetColorTableParameteriv, glGetColorTableParameterivEXT, glGetColorTableParameterivEXT, 345), - NAME_FUNC_OFFSET(16860, glColorSubTable, glColorSubTable, NULL, 346), - NAME_FUNC_OFFSET(16879, glCopyColorSubTable, glCopyColorSubTable, NULL, 347), - NAME_FUNC_OFFSET(16902, glConvolutionFilter1D, glConvolutionFilter1D, NULL, 348), - NAME_FUNC_OFFSET(16927, glConvolutionFilter2D, glConvolutionFilter2D, NULL, 349), - NAME_FUNC_OFFSET(16952, glConvolutionParameterf, glConvolutionParameterf, NULL, 350), - NAME_FUNC_OFFSET(16979, glConvolutionParameterfv, glConvolutionParameterfv, NULL, 351), - NAME_FUNC_OFFSET(17007, glConvolutionParameteri, glConvolutionParameteri, NULL, 352), - NAME_FUNC_OFFSET(17034, glConvolutionParameteriv, glConvolutionParameteriv, NULL, 353), - NAME_FUNC_OFFSET(17062, glCopyConvolutionFilter1D, glCopyConvolutionFilter1D, NULL, 354), - NAME_FUNC_OFFSET(17091, glCopyConvolutionFilter2D, glCopyConvolutionFilter2D, NULL, 355), - NAME_FUNC_OFFSET(17120, glGetConvolutionFilter, gl_dispatch_stub_356, gl_dispatch_stub_356, 356), - NAME_FUNC_OFFSET(17146, glGetConvolutionParameterfv, gl_dispatch_stub_357, gl_dispatch_stub_357, 357), - NAME_FUNC_OFFSET(17177, glGetConvolutionParameteriv, gl_dispatch_stub_358, gl_dispatch_stub_358, 358), - NAME_FUNC_OFFSET(17208, glGetSeparableFilter, gl_dispatch_stub_359, gl_dispatch_stub_359, 359), - NAME_FUNC_OFFSET(17232, glSeparableFilter2D, glSeparableFilter2D, NULL, 360), - NAME_FUNC_OFFSET(17255, glGetHistogram, gl_dispatch_stub_361, gl_dispatch_stub_361, 361), - NAME_FUNC_OFFSET(17273, glGetHistogramParameterfv, gl_dispatch_stub_362, gl_dispatch_stub_362, 362), - NAME_FUNC_OFFSET(17302, glGetHistogramParameteriv, gl_dispatch_stub_363, gl_dispatch_stub_363, 363), - NAME_FUNC_OFFSET(17331, glGetMinmax, gl_dispatch_stub_364, gl_dispatch_stub_364, 364), - NAME_FUNC_OFFSET(17346, glGetMinmaxParameterfv, gl_dispatch_stub_365, gl_dispatch_stub_365, 365), - NAME_FUNC_OFFSET(17372, glGetMinmaxParameteriv, gl_dispatch_stub_366, gl_dispatch_stub_366, 366), - NAME_FUNC_OFFSET(17398, glHistogram, glHistogram, NULL, 367), - NAME_FUNC_OFFSET(17413, glMinmax, glMinmax, NULL, 368), - NAME_FUNC_OFFSET(17425, glResetHistogram, glResetHistogram, NULL, 369), - NAME_FUNC_OFFSET(17445, glResetMinmax, glResetMinmax, NULL, 370), - NAME_FUNC_OFFSET(17462, glTexImage3D, glTexImage3D, NULL, 371), - NAME_FUNC_OFFSET(17478, glTexSubImage3D, glTexSubImage3D, NULL, 372), - NAME_FUNC_OFFSET(17497, glCopyTexSubImage3D, glCopyTexSubImage3D, NULL, 373), - NAME_FUNC_OFFSET(17520, glActiveTextureARB, glActiveTextureARB, NULL, 374), - NAME_FUNC_OFFSET(17536, glClientActiveTextureARB, glClientActiveTextureARB, NULL, 375), - NAME_FUNC_OFFSET(17558, glMultiTexCoord1dARB, glMultiTexCoord1dARB, NULL, 376), - NAME_FUNC_OFFSET(17576, glMultiTexCoord1dvARB, glMultiTexCoord1dvARB, NULL, 377), - NAME_FUNC_OFFSET(17595, glMultiTexCoord1fARB, glMultiTexCoord1fARB, NULL, 378), - NAME_FUNC_OFFSET(17613, glMultiTexCoord1fvARB, glMultiTexCoord1fvARB, NULL, 379), - NAME_FUNC_OFFSET(17632, glMultiTexCoord1iARB, glMultiTexCoord1iARB, NULL, 380), - NAME_FUNC_OFFSET(17650, glMultiTexCoord1ivARB, glMultiTexCoord1ivARB, NULL, 381), - NAME_FUNC_OFFSET(17669, glMultiTexCoord1sARB, glMultiTexCoord1sARB, NULL, 382), - NAME_FUNC_OFFSET(17687, glMultiTexCoord1svARB, glMultiTexCoord1svARB, NULL, 383), - NAME_FUNC_OFFSET(17706, glMultiTexCoord2dARB, glMultiTexCoord2dARB, NULL, 384), - NAME_FUNC_OFFSET(17724, glMultiTexCoord2dvARB, glMultiTexCoord2dvARB, NULL, 385), - NAME_FUNC_OFFSET(17743, glMultiTexCoord2fARB, glMultiTexCoord2fARB, NULL, 386), - NAME_FUNC_OFFSET(17761, glMultiTexCoord2fvARB, glMultiTexCoord2fvARB, NULL, 387), - NAME_FUNC_OFFSET(17780, glMultiTexCoord2iARB, glMultiTexCoord2iARB, NULL, 388), - NAME_FUNC_OFFSET(17798, glMultiTexCoord2ivARB, glMultiTexCoord2ivARB, NULL, 389), - NAME_FUNC_OFFSET(17817, glMultiTexCoord2sARB, glMultiTexCoord2sARB, NULL, 390), - NAME_FUNC_OFFSET(17835, glMultiTexCoord2svARB, glMultiTexCoord2svARB, NULL, 391), - NAME_FUNC_OFFSET(17854, glMultiTexCoord3dARB, glMultiTexCoord3dARB, NULL, 392), - NAME_FUNC_OFFSET(17872, glMultiTexCoord3dvARB, glMultiTexCoord3dvARB, NULL, 393), - NAME_FUNC_OFFSET(17891, glMultiTexCoord3fARB, glMultiTexCoord3fARB, NULL, 394), - NAME_FUNC_OFFSET(17909, glMultiTexCoord3fvARB, glMultiTexCoord3fvARB, NULL, 395), - NAME_FUNC_OFFSET(17928, glMultiTexCoord3iARB, glMultiTexCoord3iARB, NULL, 396), - NAME_FUNC_OFFSET(17946, glMultiTexCoord3ivARB, glMultiTexCoord3ivARB, NULL, 397), - NAME_FUNC_OFFSET(17965, glMultiTexCoord3sARB, glMultiTexCoord3sARB, NULL, 398), - NAME_FUNC_OFFSET(17983, glMultiTexCoord3svARB, glMultiTexCoord3svARB, NULL, 399), - NAME_FUNC_OFFSET(18002, glMultiTexCoord4dARB, glMultiTexCoord4dARB, NULL, 400), - NAME_FUNC_OFFSET(18020, glMultiTexCoord4dvARB, glMultiTexCoord4dvARB, NULL, 401), - NAME_FUNC_OFFSET(18039, glMultiTexCoord4fARB, glMultiTexCoord4fARB, NULL, 402), - NAME_FUNC_OFFSET(18057, glMultiTexCoord4fvARB, glMultiTexCoord4fvARB, NULL, 403), - NAME_FUNC_OFFSET(18076, glMultiTexCoord4iARB, glMultiTexCoord4iARB, NULL, 404), - NAME_FUNC_OFFSET(18094, glMultiTexCoord4ivARB, glMultiTexCoord4ivARB, NULL, 405), - NAME_FUNC_OFFSET(18113, glMultiTexCoord4sARB, glMultiTexCoord4sARB, NULL, 406), - NAME_FUNC_OFFSET(18131, glMultiTexCoord4svARB, glMultiTexCoord4svARB, NULL, 407), - NAME_FUNC_OFFSET(18150, glStencilOpSeparate, glStencilOpSeparate, NULL, 423), - NAME_FUNC_OFFSET(18173, glLoadTransposeMatrixdARB, glLoadTransposeMatrixdARB, NULL, 441), - NAME_FUNC_OFFSET(18196, glLoadTransposeMatrixfARB, glLoadTransposeMatrixfARB, NULL, 442), - NAME_FUNC_OFFSET(18219, glMultTransposeMatrixdARB, glMultTransposeMatrixdARB, NULL, 443), - NAME_FUNC_OFFSET(18242, glMultTransposeMatrixfARB, glMultTransposeMatrixfARB, NULL, 444), - NAME_FUNC_OFFSET(18265, glSampleCoverageARB, glSampleCoverageARB, NULL, 445), - NAME_FUNC_OFFSET(18282, glCompressedTexImage1DARB, glCompressedTexImage1DARB, NULL, 446), - NAME_FUNC_OFFSET(18305, glCompressedTexImage2DARB, glCompressedTexImage2DARB, NULL, 447), - NAME_FUNC_OFFSET(18328, glCompressedTexImage3DARB, glCompressedTexImage3DARB, NULL, 448), - NAME_FUNC_OFFSET(18351, glCompressedTexSubImage1DARB, glCompressedTexSubImage1DARB, NULL, 449), - NAME_FUNC_OFFSET(18377, glCompressedTexSubImage2DARB, glCompressedTexSubImage2DARB, NULL, 450), - NAME_FUNC_OFFSET(18403, glCompressedTexSubImage3DARB, glCompressedTexSubImage3DARB, NULL, 451), - NAME_FUNC_OFFSET(18429, glGetCompressedTexImageARB, glGetCompressedTexImageARB, NULL, 452), - NAME_FUNC_OFFSET(18453, glDisableVertexAttribArrayARB, glDisableVertexAttribArrayARB, NULL, 453), - NAME_FUNC_OFFSET(18480, glEnableVertexAttribArrayARB, glEnableVertexAttribArrayARB, NULL, 454), - NAME_FUNC_OFFSET(18506, glGetVertexAttribdvARB, glGetVertexAttribdvARB, NULL, 461), - NAME_FUNC_OFFSET(18526, glGetVertexAttribfvARB, glGetVertexAttribfvARB, NULL, 462), - NAME_FUNC_OFFSET(18546, glGetVertexAttribivARB, glGetVertexAttribivARB, NULL, 463), - NAME_FUNC_OFFSET(18566, glProgramEnvParameter4dARB, glProgramEnvParameter4dARB, NULL, 464), - NAME_FUNC_OFFSET(18589, glProgramEnvParameter4dvARB, glProgramEnvParameter4dvARB, NULL, 465), - NAME_FUNC_OFFSET(18613, glProgramEnvParameter4fARB, glProgramEnvParameter4fARB, NULL, 466), - NAME_FUNC_OFFSET(18636, glProgramEnvParameter4fvARB, glProgramEnvParameter4fvARB, NULL, 467), - NAME_FUNC_OFFSET(18660, glVertexAttrib1dARB, glVertexAttrib1dARB, NULL, 473), - NAME_FUNC_OFFSET(18677, glVertexAttrib1dvARB, glVertexAttrib1dvARB, NULL, 474), - NAME_FUNC_OFFSET(18695, glVertexAttrib1fARB, glVertexAttrib1fARB, NULL, 475), - NAME_FUNC_OFFSET(18712, glVertexAttrib1fvARB, glVertexAttrib1fvARB, NULL, 476), - NAME_FUNC_OFFSET(18730, glVertexAttrib1sARB, glVertexAttrib1sARB, NULL, 477), - NAME_FUNC_OFFSET(18747, glVertexAttrib1svARB, glVertexAttrib1svARB, NULL, 478), - NAME_FUNC_OFFSET(18765, glVertexAttrib2dARB, glVertexAttrib2dARB, NULL, 479), - NAME_FUNC_OFFSET(18782, glVertexAttrib2dvARB, glVertexAttrib2dvARB, NULL, 480), - NAME_FUNC_OFFSET(18800, glVertexAttrib2fARB, glVertexAttrib2fARB, NULL, 481), - NAME_FUNC_OFFSET(18817, glVertexAttrib2fvARB, glVertexAttrib2fvARB, NULL, 482), - NAME_FUNC_OFFSET(18835, glVertexAttrib2sARB, glVertexAttrib2sARB, NULL, 483), - NAME_FUNC_OFFSET(18852, glVertexAttrib2svARB, glVertexAttrib2svARB, NULL, 484), - NAME_FUNC_OFFSET(18870, glVertexAttrib3dARB, glVertexAttrib3dARB, NULL, 485), - NAME_FUNC_OFFSET(18887, glVertexAttrib3dvARB, glVertexAttrib3dvARB, NULL, 486), - NAME_FUNC_OFFSET(18905, glVertexAttrib3fARB, glVertexAttrib3fARB, NULL, 487), - NAME_FUNC_OFFSET(18922, glVertexAttrib3fvARB, glVertexAttrib3fvARB, NULL, 488), - NAME_FUNC_OFFSET(18940, glVertexAttrib3sARB, glVertexAttrib3sARB, NULL, 489), - NAME_FUNC_OFFSET(18957, glVertexAttrib3svARB, glVertexAttrib3svARB, NULL, 490), - NAME_FUNC_OFFSET(18975, glVertexAttrib4NbvARB, glVertexAttrib4NbvARB, NULL, 491), - NAME_FUNC_OFFSET(18994, glVertexAttrib4NivARB, glVertexAttrib4NivARB, NULL, 492), - NAME_FUNC_OFFSET(19013, glVertexAttrib4NsvARB, glVertexAttrib4NsvARB, NULL, 493), - NAME_FUNC_OFFSET(19032, glVertexAttrib4NubARB, glVertexAttrib4NubARB, NULL, 494), - NAME_FUNC_OFFSET(19051, glVertexAttrib4NubvARB, glVertexAttrib4NubvARB, NULL, 495), - NAME_FUNC_OFFSET(19071, glVertexAttrib4NuivARB, glVertexAttrib4NuivARB, NULL, 496), - NAME_FUNC_OFFSET(19091, glVertexAttrib4NusvARB, glVertexAttrib4NusvARB, NULL, 497), - NAME_FUNC_OFFSET(19111, glVertexAttrib4bvARB, glVertexAttrib4bvARB, NULL, 498), - NAME_FUNC_OFFSET(19129, glVertexAttrib4dARB, glVertexAttrib4dARB, NULL, 499), - NAME_FUNC_OFFSET(19146, glVertexAttrib4dvARB, glVertexAttrib4dvARB, NULL, 500), - NAME_FUNC_OFFSET(19164, glVertexAttrib4fARB, glVertexAttrib4fARB, NULL, 501), - NAME_FUNC_OFFSET(19181, glVertexAttrib4fvARB, glVertexAttrib4fvARB, NULL, 502), - NAME_FUNC_OFFSET(19199, glVertexAttrib4ivARB, glVertexAttrib4ivARB, NULL, 503), - NAME_FUNC_OFFSET(19217, glVertexAttrib4sARB, glVertexAttrib4sARB, NULL, 504), - NAME_FUNC_OFFSET(19234, glVertexAttrib4svARB, glVertexAttrib4svARB, NULL, 505), - NAME_FUNC_OFFSET(19252, glVertexAttrib4ubvARB, glVertexAttrib4ubvARB, NULL, 506), - NAME_FUNC_OFFSET(19271, glVertexAttrib4uivARB, glVertexAttrib4uivARB, NULL, 507), - NAME_FUNC_OFFSET(19290, glVertexAttrib4usvARB, glVertexAttrib4usvARB, NULL, 508), - NAME_FUNC_OFFSET(19309, glVertexAttribPointerARB, glVertexAttribPointerARB, NULL, 509), - NAME_FUNC_OFFSET(19331, glBindBufferARB, glBindBufferARB, NULL, 510), - NAME_FUNC_OFFSET(19344, glBufferDataARB, glBufferDataARB, NULL, 511), - NAME_FUNC_OFFSET(19357, glBufferSubDataARB, glBufferSubDataARB, NULL, 512), - NAME_FUNC_OFFSET(19373, glDeleteBuffersARB, glDeleteBuffersARB, NULL, 513), - NAME_FUNC_OFFSET(19389, glGenBuffersARB, glGenBuffersARB, NULL, 514), - NAME_FUNC_OFFSET(19402, glGetBufferParameterivARB, glGetBufferParameterivARB, NULL, 515), - NAME_FUNC_OFFSET(19425, glGetBufferPointervARB, glGetBufferPointervARB, NULL, 516), - NAME_FUNC_OFFSET(19445, glGetBufferSubDataARB, glGetBufferSubDataARB, NULL, 517), - NAME_FUNC_OFFSET(19464, glIsBufferARB, glIsBufferARB, NULL, 518), - NAME_FUNC_OFFSET(19475, glMapBufferARB, glMapBufferARB, NULL, 519), - NAME_FUNC_OFFSET(19487, glUnmapBufferARB, glUnmapBufferARB, NULL, 520), - NAME_FUNC_OFFSET(19501, glBeginQueryARB, glBeginQueryARB, NULL, 521), - NAME_FUNC_OFFSET(19514, glDeleteQueriesARB, glDeleteQueriesARB, NULL, 522), - NAME_FUNC_OFFSET(19530, glEndQueryARB, glEndQueryARB, NULL, 523), - NAME_FUNC_OFFSET(19541, glGenQueriesARB, glGenQueriesARB, NULL, 524), - NAME_FUNC_OFFSET(19554, glGetQueryObjectivARB, glGetQueryObjectivARB, NULL, 525), - NAME_FUNC_OFFSET(19573, glGetQueryObjectuivARB, glGetQueryObjectuivARB, NULL, 526), - NAME_FUNC_OFFSET(19593, glGetQueryivARB, glGetQueryivARB, NULL, 527), - NAME_FUNC_OFFSET(19606, glIsQueryARB, glIsQueryARB, NULL, 528), - NAME_FUNC_OFFSET(19616, glCompileShaderARB, glCompileShaderARB, NULL, 530), - NAME_FUNC_OFFSET(19632, glGetActiveUniformARB, glGetActiveUniformARB, NULL, 535), - NAME_FUNC_OFFSET(19651, glGetShaderSourceARB, glGetShaderSourceARB, NULL, 541), - NAME_FUNC_OFFSET(19669, glGetUniformLocationARB, glGetUniformLocationARB, NULL, 542), - NAME_FUNC_OFFSET(19690, glGetUniformfvARB, glGetUniformfvARB, NULL, 543), - NAME_FUNC_OFFSET(19705, glGetUniformivARB, glGetUniformivARB, NULL, 544), - NAME_FUNC_OFFSET(19720, glLinkProgramARB, glLinkProgramARB, NULL, 545), - NAME_FUNC_OFFSET(19734, glShaderSourceARB, glShaderSourceARB, NULL, 546), - NAME_FUNC_OFFSET(19749, glUniform1fARB, glUniform1fARB, NULL, 547), - NAME_FUNC_OFFSET(19761, glUniform1fvARB, glUniform1fvARB, NULL, 548), - NAME_FUNC_OFFSET(19774, glUniform1iARB, glUniform1iARB, NULL, 549), - NAME_FUNC_OFFSET(19786, glUniform1ivARB, glUniform1ivARB, NULL, 550), - NAME_FUNC_OFFSET(19799, glUniform2fARB, glUniform2fARB, NULL, 551), - NAME_FUNC_OFFSET(19811, glUniform2fvARB, glUniform2fvARB, NULL, 552), - NAME_FUNC_OFFSET(19824, glUniform2iARB, glUniform2iARB, NULL, 553), - NAME_FUNC_OFFSET(19836, glUniform2ivARB, glUniform2ivARB, NULL, 554), - NAME_FUNC_OFFSET(19849, glUniform3fARB, glUniform3fARB, NULL, 555), - NAME_FUNC_OFFSET(19861, glUniform3fvARB, glUniform3fvARB, NULL, 556), - NAME_FUNC_OFFSET(19874, glUniform3iARB, glUniform3iARB, NULL, 557), - NAME_FUNC_OFFSET(19886, glUniform3ivARB, glUniform3ivARB, NULL, 558), - NAME_FUNC_OFFSET(19899, glUniform4fARB, glUniform4fARB, NULL, 559), - NAME_FUNC_OFFSET(19911, glUniform4fvARB, glUniform4fvARB, NULL, 560), - NAME_FUNC_OFFSET(19924, glUniform4iARB, glUniform4iARB, NULL, 561), - NAME_FUNC_OFFSET(19936, glUniform4ivARB, glUniform4ivARB, NULL, 562), - NAME_FUNC_OFFSET(19949, glUniformMatrix2fvARB, glUniformMatrix2fvARB, NULL, 563), - NAME_FUNC_OFFSET(19968, glUniformMatrix3fvARB, glUniformMatrix3fvARB, NULL, 564), - NAME_FUNC_OFFSET(19987, glUniformMatrix4fvARB, glUniformMatrix4fvARB, NULL, 565), - NAME_FUNC_OFFSET(20006, glUseProgramObjectARB, glUseProgramObjectARB, NULL, 566), - NAME_FUNC_OFFSET(20019, glValidateProgramARB, glValidateProgramARB, NULL, 567), - NAME_FUNC_OFFSET(20037, glBindAttribLocationARB, glBindAttribLocationARB, NULL, 568), - NAME_FUNC_OFFSET(20058, glGetActiveAttribARB, glGetActiveAttribARB, NULL, 569), - NAME_FUNC_OFFSET(20076, glGetAttribLocationARB, glGetAttribLocationARB, NULL, 570), - NAME_FUNC_OFFSET(20096, glDrawBuffersARB, glDrawBuffersARB, NULL, 571), - NAME_FUNC_OFFSET(20110, glDrawBuffersARB, glDrawBuffersARB, NULL, 571), - NAME_FUNC_OFFSET(20127, glDrawArraysInstancedARB, glDrawArraysInstancedARB, NULL, 573), - NAME_FUNC_OFFSET(20152, glDrawArraysInstancedARB, glDrawArraysInstancedARB, NULL, 573), - NAME_FUNC_OFFSET(20174, glDrawElementsInstancedARB, glDrawElementsInstancedARB, NULL, 574), - NAME_FUNC_OFFSET(20201, glDrawElementsInstancedARB, glDrawElementsInstancedARB, NULL, 574), - NAME_FUNC_OFFSET(20225, glRenderbufferStorageMultisample, glRenderbufferStorageMultisample, NULL, 575), - NAME_FUNC_OFFSET(20261, gl_dispatch_stub_619, gl_dispatch_stub_619, NULL, 619), - NAME_FUNC_OFFSET(20277, gl_dispatch_stub_620, gl_dispatch_stub_620, NULL, 620), - NAME_FUNC_OFFSET(20296, glPointParameterfEXT, glPointParameterfEXT, NULL, 627), - NAME_FUNC_OFFSET(20314, glPointParameterfEXT, glPointParameterfEXT, NULL, 627), - NAME_FUNC_OFFSET(20335, glPointParameterfEXT, glPointParameterfEXT, NULL, 627), - NAME_FUNC_OFFSET(20357, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 628), - NAME_FUNC_OFFSET(20376, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 628), - NAME_FUNC_OFFSET(20398, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 628), - NAME_FUNC_OFFSET(20421, glSecondaryColor3bEXT, glSecondaryColor3bEXT, NULL, 631), - NAME_FUNC_OFFSET(20440, glSecondaryColor3bvEXT, glSecondaryColor3bvEXT, NULL, 632), - NAME_FUNC_OFFSET(20460, glSecondaryColor3dEXT, glSecondaryColor3dEXT, NULL, 633), - NAME_FUNC_OFFSET(20479, glSecondaryColor3dvEXT, glSecondaryColor3dvEXT, NULL, 634), - NAME_FUNC_OFFSET(20499, glSecondaryColor3fEXT, glSecondaryColor3fEXT, NULL, 635), - NAME_FUNC_OFFSET(20518, glSecondaryColor3fvEXT, glSecondaryColor3fvEXT, NULL, 636), - NAME_FUNC_OFFSET(20538, glSecondaryColor3iEXT, glSecondaryColor3iEXT, NULL, 637), - NAME_FUNC_OFFSET(20557, glSecondaryColor3ivEXT, glSecondaryColor3ivEXT, NULL, 638), - NAME_FUNC_OFFSET(20577, glSecondaryColor3sEXT, glSecondaryColor3sEXT, NULL, 639), - NAME_FUNC_OFFSET(20596, glSecondaryColor3svEXT, glSecondaryColor3svEXT, NULL, 640), - NAME_FUNC_OFFSET(20616, glSecondaryColor3ubEXT, glSecondaryColor3ubEXT, NULL, 641), - NAME_FUNC_OFFSET(20636, glSecondaryColor3ubvEXT, glSecondaryColor3ubvEXT, NULL, 642), - NAME_FUNC_OFFSET(20657, glSecondaryColor3uiEXT, glSecondaryColor3uiEXT, NULL, 643), - NAME_FUNC_OFFSET(20677, glSecondaryColor3uivEXT, glSecondaryColor3uivEXT, NULL, 644), - NAME_FUNC_OFFSET(20698, glSecondaryColor3usEXT, glSecondaryColor3usEXT, NULL, 645), - NAME_FUNC_OFFSET(20718, glSecondaryColor3usvEXT, glSecondaryColor3usvEXT, NULL, 646), - NAME_FUNC_OFFSET(20739, glSecondaryColorPointerEXT, glSecondaryColorPointerEXT, NULL, 647), - NAME_FUNC_OFFSET(20763, glMultiDrawArraysEXT, glMultiDrawArraysEXT, NULL, 648), - NAME_FUNC_OFFSET(20781, glMultiDrawElementsEXT, glMultiDrawElementsEXT, NULL, 649), - NAME_FUNC_OFFSET(20801, glFogCoordPointerEXT, glFogCoordPointerEXT, NULL, 650), - NAME_FUNC_OFFSET(20819, glFogCoorddEXT, glFogCoorddEXT, NULL, 651), - NAME_FUNC_OFFSET(20831, glFogCoorddvEXT, glFogCoorddvEXT, NULL, 652), - NAME_FUNC_OFFSET(20844, glFogCoordfEXT, glFogCoordfEXT, NULL, 653), - NAME_FUNC_OFFSET(20856, glFogCoordfvEXT, glFogCoordfvEXT, NULL, 654), - NAME_FUNC_OFFSET(20869, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, 656), - NAME_FUNC_OFFSET(20889, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, 656), - NAME_FUNC_OFFSET(20913, glWindowPos2dMESA, glWindowPos2dMESA, NULL, 673), - NAME_FUNC_OFFSET(20927, glWindowPos2dMESA, glWindowPos2dMESA, NULL, 673), - NAME_FUNC_OFFSET(20944, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, 674), - NAME_FUNC_OFFSET(20959, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, 674), - NAME_FUNC_OFFSET(20977, glWindowPos2fMESA, glWindowPos2fMESA, NULL, 675), - NAME_FUNC_OFFSET(20991, glWindowPos2fMESA, glWindowPos2fMESA, NULL, 675), - NAME_FUNC_OFFSET(21008, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, 676), - NAME_FUNC_OFFSET(21023, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, 676), - NAME_FUNC_OFFSET(21041, glWindowPos2iMESA, glWindowPos2iMESA, NULL, 677), - NAME_FUNC_OFFSET(21055, glWindowPos2iMESA, glWindowPos2iMESA, NULL, 677), - NAME_FUNC_OFFSET(21072, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, 678), - NAME_FUNC_OFFSET(21087, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, 678), - NAME_FUNC_OFFSET(21105, glWindowPos2sMESA, glWindowPos2sMESA, NULL, 679), - NAME_FUNC_OFFSET(21119, glWindowPos2sMESA, glWindowPos2sMESA, NULL, 679), - NAME_FUNC_OFFSET(21136, glWindowPos2svMESA, glWindowPos2svMESA, NULL, 680), - NAME_FUNC_OFFSET(21151, glWindowPos2svMESA, glWindowPos2svMESA, NULL, 680), - NAME_FUNC_OFFSET(21169, glWindowPos3dMESA, glWindowPos3dMESA, NULL, 681), - NAME_FUNC_OFFSET(21183, glWindowPos3dMESA, glWindowPos3dMESA, NULL, 681), - NAME_FUNC_OFFSET(21200, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, 682), - NAME_FUNC_OFFSET(21215, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, 682), - NAME_FUNC_OFFSET(21233, glWindowPos3fMESA, glWindowPos3fMESA, NULL, 683), - NAME_FUNC_OFFSET(21247, glWindowPos3fMESA, glWindowPos3fMESA, NULL, 683), - NAME_FUNC_OFFSET(21264, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, 684), - NAME_FUNC_OFFSET(21279, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, 684), - NAME_FUNC_OFFSET(21297, glWindowPos3iMESA, glWindowPos3iMESA, NULL, 685), - NAME_FUNC_OFFSET(21311, glWindowPos3iMESA, glWindowPos3iMESA, NULL, 685), - NAME_FUNC_OFFSET(21328, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, 686), - NAME_FUNC_OFFSET(21343, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, 686), - NAME_FUNC_OFFSET(21361, glWindowPos3sMESA, glWindowPos3sMESA, NULL, 687), - NAME_FUNC_OFFSET(21375, glWindowPos3sMESA, glWindowPos3sMESA, NULL, 687), - NAME_FUNC_OFFSET(21392, glWindowPos3svMESA, glWindowPos3svMESA, NULL, 688), - NAME_FUNC_OFFSET(21407, glWindowPos3svMESA, glWindowPos3svMESA, NULL, 688), - NAME_FUNC_OFFSET(21425, glBindProgramNV, glBindProgramNV, NULL, 707), - NAME_FUNC_OFFSET(21442, glDeleteProgramsNV, glDeleteProgramsNV, NULL, 708), - NAME_FUNC_OFFSET(21462, glGenProgramsNV, glGenProgramsNV, NULL, 710), - NAME_FUNC_OFFSET(21479, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, 716), - NAME_FUNC_OFFSET(21505, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, 716), - NAME_FUNC_OFFSET(21534, glIsProgramNV, glIsProgramNV, NULL, 720), - NAME_FUNC_OFFSET(21549, glPointParameteriNV, glPointParameteriNV, NULL, 784), - NAME_FUNC_OFFSET(21567, glPointParameterivNV, glPointParameterivNV, NULL, 785), - NAME_FUNC_OFFSET(21586, gl_dispatch_stub_788, gl_dispatch_stub_788, NULL, 788), - NAME_FUNC_OFFSET(21607, gl_dispatch_stub_790, gl_dispatch_stub_790, NULL, 790), - NAME_FUNC_OFFSET(21623, glPrimitiveRestartIndexNV, glPrimitiveRestartIndexNV, NULL, 797), - NAME_FUNC_OFFSET(21647, gl_dispatch_stub_800, gl_dispatch_stub_800, NULL, 800), - NAME_FUNC_OFFSET(21671, gl_dispatch_stub_800, gl_dispatch_stub_800, NULL, 800), - NAME_FUNC_OFFSET(21698, glBindFramebufferEXT, glBindFramebufferEXT, NULL, 801), - NAME_FUNC_OFFSET(21716, glBindRenderbufferEXT, glBindRenderbufferEXT, NULL, 802), - NAME_FUNC_OFFSET(21735, glCheckFramebufferStatusEXT, glCheckFramebufferStatusEXT, NULL, 803), - NAME_FUNC_OFFSET(21760, glDeleteFramebuffersEXT, glDeleteFramebuffersEXT, NULL, 804), - NAME_FUNC_OFFSET(21781, glDeleteRenderbuffersEXT, glDeleteRenderbuffersEXT, NULL, 805), - NAME_FUNC_OFFSET(21803, glFramebufferRenderbufferEXT, glFramebufferRenderbufferEXT, NULL, 806), - NAME_FUNC_OFFSET(21829, glFramebufferTexture1DEXT, glFramebufferTexture1DEXT, NULL, 807), - NAME_FUNC_OFFSET(21852, glFramebufferTexture2DEXT, glFramebufferTexture2DEXT, NULL, 808), - NAME_FUNC_OFFSET(21875, glFramebufferTexture3DEXT, glFramebufferTexture3DEXT, NULL, 809), - NAME_FUNC_OFFSET(21898, glGenFramebuffersEXT, glGenFramebuffersEXT, NULL, 810), - NAME_FUNC_OFFSET(21916, glGenRenderbuffersEXT, glGenRenderbuffersEXT, NULL, 811), - NAME_FUNC_OFFSET(21935, glGenerateMipmapEXT, glGenerateMipmapEXT, NULL, 812), - NAME_FUNC_OFFSET(21952, glGetFramebufferAttachmentParameterivEXT, glGetFramebufferAttachmentParameterivEXT, NULL, 813), - NAME_FUNC_OFFSET(21990, glGetRenderbufferParameterivEXT, glGetRenderbufferParameterivEXT, NULL, 814), - NAME_FUNC_OFFSET(22019, glIsFramebufferEXT, glIsFramebufferEXT, NULL, 815), - NAME_FUNC_OFFSET(22035, glIsRenderbufferEXT, glIsRenderbufferEXT, NULL, 816), - NAME_FUNC_OFFSET(22052, glRenderbufferStorageEXT, glRenderbufferStorageEXT, NULL, 817), - NAME_FUNC_OFFSET(22074, gl_dispatch_stub_818, gl_dispatch_stub_818, NULL, 818), - NAME_FUNC_OFFSET(22092, glBindFragDataLocationEXT, glBindFragDataLocationEXT, NULL, 821), - NAME_FUNC_OFFSET(22115, glGetFragDataLocationEXT, glGetFragDataLocationEXT, NULL, 822), - NAME_FUNC_OFFSET(22137, glGetUniformuivEXT, glGetUniformuivEXT, NULL, 823), - NAME_FUNC_OFFSET(22153, glGetVertexAttribIivEXT, glGetVertexAttribIivEXT, NULL, 824), - NAME_FUNC_OFFSET(22174, glGetVertexAttribIuivEXT, glGetVertexAttribIuivEXT, NULL, 825), - NAME_FUNC_OFFSET(22196, glUniform1uiEXT, glUniform1uiEXT, NULL, 826), - NAME_FUNC_OFFSET(22209, glUniform1uivEXT, glUniform1uivEXT, NULL, 827), - NAME_FUNC_OFFSET(22223, glUniform2uiEXT, glUniform2uiEXT, NULL, 828), - NAME_FUNC_OFFSET(22236, glUniform2uivEXT, glUniform2uivEXT, NULL, 829), - NAME_FUNC_OFFSET(22250, glUniform3uiEXT, glUniform3uiEXT, NULL, 830), - NAME_FUNC_OFFSET(22263, glUniform3uivEXT, glUniform3uivEXT, NULL, 831), - NAME_FUNC_OFFSET(22277, glUniform4uiEXT, glUniform4uiEXT, NULL, 832), - NAME_FUNC_OFFSET(22290, glUniform4uivEXT, glUniform4uivEXT, NULL, 833), - NAME_FUNC_OFFSET(22304, glVertexAttribI1iEXT, glVertexAttribI1iEXT, NULL, 834), - NAME_FUNC_OFFSET(22322, glVertexAttribI1ivEXT, glVertexAttribI1ivEXT, NULL, 835), - NAME_FUNC_OFFSET(22341, glVertexAttribI1uiEXT, glVertexAttribI1uiEXT, NULL, 836), - NAME_FUNC_OFFSET(22360, glVertexAttribI1uivEXT, glVertexAttribI1uivEXT, NULL, 837), - NAME_FUNC_OFFSET(22380, glVertexAttribI2iEXT, glVertexAttribI2iEXT, NULL, 838), - NAME_FUNC_OFFSET(22398, glVertexAttribI2ivEXT, glVertexAttribI2ivEXT, NULL, 839), - NAME_FUNC_OFFSET(22417, glVertexAttribI2uiEXT, glVertexAttribI2uiEXT, NULL, 840), - NAME_FUNC_OFFSET(22436, glVertexAttribI2uivEXT, glVertexAttribI2uivEXT, NULL, 841), - NAME_FUNC_OFFSET(22456, glVertexAttribI3iEXT, glVertexAttribI3iEXT, NULL, 842), - NAME_FUNC_OFFSET(22474, glVertexAttribI3ivEXT, glVertexAttribI3ivEXT, NULL, 843), - NAME_FUNC_OFFSET(22493, glVertexAttribI3uiEXT, glVertexAttribI3uiEXT, NULL, 844), - NAME_FUNC_OFFSET(22512, glVertexAttribI3uivEXT, glVertexAttribI3uivEXT, NULL, 845), - NAME_FUNC_OFFSET(22532, glVertexAttribI4bvEXT, glVertexAttribI4bvEXT, NULL, 846), - NAME_FUNC_OFFSET(22551, glVertexAttribI4iEXT, glVertexAttribI4iEXT, NULL, 847), - NAME_FUNC_OFFSET(22569, glVertexAttribI4ivEXT, glVertexAttribI4ivEXT, NULL, 848), - NAME_FUNC_OFFSET(22588, glVertexAttribI4svEXT, glVertexAttribI4svEXT, NULL, 849), - NAME_FUNC_OFFSET(22607, glVertexAttribI4ubvEXT, glVertexAttribI4ubvEXT, NULL, 850), - NAME_FUNC_OFFSET(22627, glVertexAttribI4uiEXT, glVertexAttribI4uiEXT, NULL, 851), - NAME_FUNC_OFFSET(22646, glVertexAttribI4uivEXT, glVertexAttribI4uivEXT, NULL, 852), - NAME_FUNC_OFFSET(22666, glVertexAttribI4usvEXT, glVertexAttribI4usvEXT, NULL, 853), - NAME_FUNC_OFFSET(22686, glVertexAttribIPointerEXT, glVertexAttribIPointerEXT, NULL, 854), - NAME_FUNC_OFFSET(22709, glFramebufferTextureLayerEXT, glFramebufferTextureLayerEXT, NULL, 855), - NAME_FUNC_OFFSET(22735, glColorMaskIndexedEXT, glColorMaskIndexedEXT, NULL, 856), - NAME_FUNC_OFFSET(22748, glDisableIndexedEXT, glDisableIndexedEXT, NULL, 857), - NAME_FUNC_OFFSET(22759, glEnableIndexedEXT, glEnableIndexedEXT, NULL, 858), - NAME_FUNC_OFFSET(22769, glGetBooleanIndexedvEXT, glGetBooleanIndexedvEXT, NULL, 859), - NAME_FUNC_OFFSET(22785, glGetIntegerIndexedvEXT, glGetIntegerIndexedvEXT, NULL, 860), - NAME_FUNC_OFFSET(22801, glIsEnabledIndexedEXT, glIsEnabledIndexedEXT, NULL, 861), - NAME_FUNC_OFFSET(22814, glGetTexParameterIivEXT, glGetTexParameterIivEXT, NULL, 864), - NAME_FUNC_OFFSET(22835, glGetTexParameterIuivEXT, glGetTexParameterIuivEXT, NULL, 865), - NAME_FUNC_OFFSET(22857, glTexParameterIivEXT, glTexParameterIivEXT, NULL, 866), - NAME_FUNC_OFFSET(22875, glTexParameterIuivEXT, glTexParameterIuivEXT, NULL, 867), - NAME_FUNC_OFFSET(22894, glBeginConditionalRenderNV, glBeginConditionalRenderNV, NULL, 868), - NAME_FUNC_OFFSET(22919, glEndConditionalRenderNV, glEndConditionalRenderNV, NULL, 869), - NAME_FUNC_OFFSET(22942, glBeginTransformFeedbackEXT, glBeginTransformFeedbackEXT, NULL, 870), - NAME_FUNC_OFFSET(22967, glBindBufferBaseEXT, glBindBufferBaseEXT, NULL, 871), - NAME_FUNC_OFFSET(22984, glBindBufferRangeEXT, glBindBufferRangeEXT, NULL, 873), - NAME_FUNC_OFFSET(23002, glEndTransformFeedbackEXT, glEndTransformFeedbackEXT, NULL, 874), - NAME_FUNC_OFFSET(23025, glGetTransformFeedbackVaryingEXT, glGetTransformFeedbackVaryingEXT, NULL, 875), - NAME_FUNC_OFFSET(23055, glTransformFeedbackVaryingsEXT, glTransformFeedbackVaryingsEXT, NULL, 876), - NAME_FUNC_OFFSET(23083, glProvokingVertexEXT, glProvokingVertexEXT, NULL, 877), + NAME_FUNC_OFFSET( 9717, glBindSampler, glBindSampler, NULL, 600), + NAME_FUNC_OFFSET( 9731, glDeleteSamplers, glDeleteSamplers, NULL, 601), + NAME_FUNC_OFFSET( 9748, glGenSamplers, glGenSamplers, NULL, 602), + NAME_FUNC_OFFSET( 9762, glGetSamplerParameterIiv, glGetSamplerParameterIiv, NULL, 603), + NAME_FUNC_OFFSET( 9787, glGetSamplerParameterIuiv, glGetSamplerParameterIuiv, NULL, 604), + NAME_FUNC_OFFSET( 9813, glGetSamplerParameterfv, glGetSamplerParameterfv, NULL, 605), + NAME_FUNC_OFFSET( 9837, glGetSamplerParameteriv, glGetSamplerParameteriv, NULL, 606), + NAME_FUNC_OFFSET( 9861, glIsSampler, glIsSampler, NULL, 607), + NAME_FUNC_OFFSET( 9873, glSamplerParameterIiv, glSamplerParameterIiv, NULL, 608), + NAME_FUNC_OFFSET( 9895, glSamplerParameterIuiv, glSamplerParameterIuiv, NULL, 609), + NAME_FUNC_OFFSET( 9918, glSamplerParameterf, glSamplerParameterf, NULL, 610), + NAME_FUNC_OFFSET( 9938, glSamplerParameterfv, glSamplerParameterfv, NULL, 611), + NAME_FUNC_OFFSET( 9959, glSamplerParameteri, glSamplerParameteri, NULL, 612), + NAME_FUNC_OFFSET( 9979, glSamplerParameteriv, glSamplerParameteriv, NULL, 613), + NAME_FUNC_OFFSET(10000, glBindTransformFeedback, glBindTransformFeedback, NULL, 614), + NAME_FUNC_OFFSET(10024, glDeleteTransformFeedbacks, glDeleteTransformFeedbacks, NULL, 615), + NAME_FUNC_OFFSET(10051, glDrawTransformFeedback, glDrawTransformFeedback, NULL, 616), + NAME_FUNC_OFFSET(10075, glGenTransformFeedbacks, glGenTransformFeedbacks, NULL, 617), + NAME_FUNC_OFFSET(10099, glIsTransformFeedback, glIsTransformFeedback, NULL, 618), + NAME_FUNC_OFFSET(10121, glPauseTransformFeedback, glPauseTransformFeedback, NULL, 619), + NAME_FUNC_OFFSET(10146, glResumeTransformFeedback, glResumeTransformFeedback, NULL, 620), + NAME_FUNC_OFFSET(10172, glClearDepthf, glClearDepthf, NULL, 621), + NAME_FUNC_OFFSET(10186, glDepthRangef, glDepthRangef, NULL, 622), + NAME_FUNC_OFFSET(10200, glGetShaderPrecisionFormat, glGetShaderPrecisionFormat, NULL, 623), + NAME_FUNC_OFFSET(10227, glReleaseShaderCompiler, glReleaseShaderCompiler, NULL, 624), + NAME_FUNC_OFFSET(10251, glShaderBinary, glShaderBinary, NULL, 625), + NAME_FUNC_OFFSET(10266, glPolygonOffsetEXT, glPolygonOffsetEXT, NULL, 626), + NAME_FUNC_OFFSET(10285, gl_dispatch_stub_627, gl_dispatch_stub_627, NULL, 627), + NAME_FUNC_OFFSET(10317, gl_dispatch_stub_628, gl_dispatch_stub_628, NULL, 628), + NAME_FUNC_OFFSET(10349, gl_dispatch_stub_629, gl_dispatch_stub_629, NULL, 629), + NAME_FUNC_OFFSET(10377, gl_dispatch_stub_630, gl_dispatch_stub_630, NULL, 630), + NAME_FUNC_OFFSET(10406, gl_dispatch_stub_631, gl_dispatch_stub_631, NULL, 631), + NAME_FUNC_OFFSET(10434, gl_dispatch_stub_632, gl_dispatch_stub_632, NULL, 632), + NAME_FUNC_OFFSET(10463, gl_dispatch_stub_633, gl_dispatch_stub_633, NULL, 633), + NAME_FUNC_OFFSET(10480, gl_dispatch_stub_634, gl_dispatch_stub_634, NULL, 634), + NAME_FUNC_OFFSET(10500, glColorPointerEXT, glColorPointerEXT, NULL, 635), + NAME_FUNC_OFFSET(10518, glEdgeFlagPointerEXT, glEdgeFlagPointerEXT, NULL, 636), + NAME_FUNC_OFFSET(10539, glIndexPointerEXT, glIndexPointerEXT, NULL, 637), + NAME_FUNC_OFFSET(10557, glNormalPointerEXT, glNormalPointerEXT, NULL, 638), + NAME_FUNC_OFFSET(10576, glTexCoordPointerEXT, glTexCoordPointerEXT, NULL, 639), + NAME_FUNC_OFFSET(10597, glVertexPointerEXT, glVertexPointerEXT, NULL, 640), + NAME_FUNC_OFFSET(10616, glPointParameterfEXT, glPointParameterfEXT, NULL, 641), + NAME_FUNC_OFFSET(10637, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 642), + NAME_FUNC_OFFSET(10659, glLockArraysEXT, glLockArraysEXT, NULL, 643), + NAME_FUNC_OFFSET(10675, glUnlockArraysEXT, glUnlockArraysEXT, NULL, 644), + NAME_FUNC_OFFSET(10693, glSecondaryColor3bEXT, glSecondaryColor3bEXT, NULL, 645), + NAME_FUNC_OFFSET(10715, glSecondaryColor3bvEXT, glSecondaryColor3bvEXT, NULL, 646), + NAME_FUNC_OFFSET(10738, glSecondaryColor3dEXT, glSecondaryColor3dEXT, NULL, 647), + NAME_FUNC_OFFSET(10760, glSecondaryColor3dvEXT, glSecondaryColor3dvEXT, NULL, 648), + NAME_FUNC_OFFSET(10783, glSecondaryColor3fEXT, glSecondaryColor3fEXT, NULL, 649), + NAME_FUNC_OFFSET(10805, glSecondaryColor3fvEXT, glSecondaryColor3fvEXT, NULL, 650), + NAME_FUNC_OFFSET(10828, glSecondaryColor3iEXT, glSecondaryColor3iEXT, NULL, 651), + NAME_FUNC_OFFSET(10850, glSecondaryColor3ivEXT, glSecondaryColor3ivEXT, NULL, 652), + NAME_FUNC_OFFSET(10873, glSecondaryColor3sEXT, glSecondaryColor3sEXT, NULL, 653), + NAME_FUNC_OFFSET(10895, glSecondaryColor3svEXT, glSecondaryColor3svEXT, NULL, 654), + NAME_FUNC_OFFSET(10918, glSecondaryColor3ubEXT, glSecondaryColor3ubEXT, NULL, 655), + NAME_FUNC_OFFSET(10941, glSecondaryColor3ubvEXT, glSecondaryColor3ubvEXT, NULL, 656), + NAME_FUNC_OFFSET(10965, glSecondaryColor3uiEXT, glSecondaryColor3uiEXT, NULL, 657), + NAME_FUNC_OFFSET(10988, glSecondaryColor3uivEXT, glSecondaryColor3uivEXT, NULL, 658), + NAME_FUNC_OFFSET(11012, glSecondaryColor3usEXT, glSecondaryColor3usEXT, NULL, 659), + NAME_FUNC_OFFSET(11035, glSecondaryColor3usvEXT, glSecondaryColor3usvEXT, NULL, 660), + NAME_FUNC_OFFSET(11059, glSecondaryColorPointerEXT, glSecondaryColorPointerEXT, NULL, 661), + NAME_FUNC_OFFSET(11086, glMultiDrawArraysEXT, glMultiDrawArraysEXT, NULL, 662), + NAME_FUNC_OFFSET(11107, glMultiDrawElementsEXT, glMultiDrawElementsEXT, NULL, 663), + NAME_FUNC_OFFSET(11130, glFogCoordPointerEXT, glFogCoordPointerEXT, NULL, 664), + NAME_FUNC_OFFSET(11151, glFogCoorddEXT, glFogCoorddEXT, NULL, 665), + NAME_FUNC_OFFSET(11166, glFogCoorddvEXT, glFogCoorddvEXT, NULL, 666), + NAME_FUNC_OFFSET(11182, glFogCoordfEXT, glFogCoordfEXT, NULL, 667), + NAME_FUNC_OFFSET(11197, glFogCoordfvEXT, glFogCoordfvEXT, NULL, 668), + NAME_FUNC_OFFSET(11213, gl_dispatch_stub_669, gl_dispatch_stub_669, NULL, 669), + NAME_FUNC_OFFSET(11231, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, 670), + NAME_FUNC_OFFSET(11254, glFlushVertexArrayRangeNV, glFlushVertexArrayRangeNV, NULL, 671), + NAME_FUNC_OFFSET(11280, glVertexArrayRangeNV, glVertexArrayRangeNV, NULL, 672), + NAME_FUNC_OFFSET(11301, glCombinerInputNV, glCombinerInputNV, NULL, 673), + NAME_FUNC_OFFSET(11319, glCombinerOutputNV, glCombinerOutputNV, NULL, 674), + NAME_FUNC_OFFSET(11338, glCombinerParameterfNV, glCombinerParameterfNV, NULL, 675), + NAME_FUNC_OFFSET(11361, glCombinerParameterfvNV, glCombinerParameterfvNV, NULL, 676), + NAME_FUNC_OFFSET(11385, glCombinerParameteriNV, glCombinerParameteriNV, NULL, 677), + NAME_FUNC_OFFSET(11408, glCombinerParameterivNV, glCombinerParameterivNV, NULL, 678), + NAME_FUNC_OFFSET(11432, glFinalCombinerInputNV, glFinalCombinerInputNV, NULL, 679), + NAME_FUNC_OFFSET(11455, glGetCombinerInputParameterfvNV, glGetCombinerInputParameterfvNV, NULL, 680), + NAME_FUNC_OFFSET(11487, glGetCombinerInputParameterivNV, glGetCombinerInputParameterivNV, NULL, 681), + NAME_FUNC_OFFSET(11519, glGetCombinerOutputParameterfvNV, glGetCombinerOutputParameterfvNV, NULL, 682), + NAME_FUNC_OFFSET(11552, glGetCombinerOutputParameterivNV, glGetCombinerOutputParameterivNV, NULL, 683), + NAME_FUNC_OFFSET(11585, glGetFinalCombinerInputParameterfvNV, glGetFinalCombinerInputParameterfvNV, NULL, 684), + NAME_FUNC_OFFSET(11622, glGetFinalCombinerInputParameterivNV, glGetFinalCombinerInputParameterivNV, NULL, 685), + NAME_FUNC_OFFSET(11659, glResizeBuffersMESA, glResizeBuffersMESA, NULL, 686), + NAME_FUNC_OFFSET(11679, glWindowPos2dMESA, glWindowPos2dMESA, NULL, 687), + NAME_FUNC_OFFSET(11697, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, 688), + NAME_FUNC_OFFSET(11716, glWindowPos2fMESA, glWindowPos2fMESA, NULL, 689), + NAME_FUNC_OFFSET(11734, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, 690), + NAME_FUNC_OFFSET(11753, glWindowPos2iMESA, glWindowPos2iMESA, NULL, 691), + NAME_FUNC_OFFSET(11771, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, 692), + NAME_FUNC_OFFSET(11790, glWindowPos2sMESA, glWindowPos2sMESA, NULL, 693), + NAME_FUNC_OFFSET(11808, glWindowPos2svMESA, glWindowPos2svMESA, NULL, 694), + NAME_FUNC_OFFSET(11827, glWindowPos3dMESA, glWindowPos3dMESA, NULL, 695), + NAME_FUNC_OFFSET(11845, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, 696), + NAME_FUNC_OFFSET(11864, glWindowPos3fMESA, glWindowPos3fMESA, NULL, 697), + NAME_FUNC_OFFSET(11882, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, 698), + NAME_FUNC_OFFSET(11901, glWindowPos3iMESA, glWindowPos3iMESA, NULL, 699), + NAME_FUNC_OFFSET(11919, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, 700), + NAME_FUNC_OFFSET(11938, glWindowPos3sMESA, glWindowPos3sMESA, NULL, 701), + NAME_FUNC_OFFSET(11956, glWindowPos3svMESA, glWindowPos3svMESA, NULL, 702), + NAME_FUNC_OFFSET(11975, glWindowPos4dMESA, glWindowPos4dMESA, NULL, 703), + NAME_FUNC_OFFSET(11993, glWindowPos4dvMESA, glWindowPos4dvMESA, NULL, 704), + NAME_FUNC_OFFSET(12012, glWindowPos4fMESA, glWindowPos4fMESA, NULL, 705), + NAME_FUNC_OFFSET(12030, glWindowPos4fvMESA, glWindowPos4fvMESA, NULL, 706), + NAME_FUNC_OFFSET(12049, glWindowPos4iMESA, glWindowPos4iMESA, NULL, 707), + NAME_FUNC_OFFSET(12067, glWindowPos4ivMESA, glWindowPos4ivMESA, NULL, 708), + NAME_FUNC_OFFSET(12086, glWindowPos4sMESA, glWindowPos4sMESA, NULL, 709), + NAME_FUNC_OFFSET(12104, glWindowPos4svMESA, glWindowPos4svMESA, NULL, 710), + NAME_FUNC_OFFSET(12123, gl_dispatch_stub_711, gl_dispatch_stub_711, NULL, 711), + NAME_FUNC_OFFSET(12148, gl_dispatch_stub_712, gl_dispatch_stub_712, NULL, 712), + NAME_FUNC_OFFSET(12175, gl_dispatch_stub_713, gl_dispatch_stub_713, NULL, 713), + NAME_FUNC_OFFSET(12192, gl_dispatch_stub_714, gl_dispatch_stub_714, NULL, 714), + NAME_FUNC_OFFSET(12208, gl_dispatch_stub_715, gl_dispatch_stub_715, NULL, 715), + NAME_FUNC_OFFSET(12222, gl_dispatch_stub_716, gl_dispatch_stub_716, NULL, 716), + NAME_FUNC_OFFSET(12237, gl_dispatch_stub_717, gl_dispatch_stub_717, NULL, 717), + NAME_FUNC_OFFSET(12249, gl_dispatch_stub_718, gl_dispatch_stub_718, NULL, 718), + NAME_FUNC_OFFSET(12262, gl_dispatch_stub_719, gl_dispatch_stub_719, NULL, 719), + NAME_FUNC_OFFSET(12276, glAreProgramsResidentNV, glAreProgramsResidentNV, NULL, 720), + NAME_FUNC_OFFSET(12300, glBindProgramNV, glBindProgramNV, NULL, 721), + NAME_FUNC_OFFSET(12316, glDeleteProgramsNV, glDeleteProgramsNV, NULL, 722), + NAME_FUNC_OFFSET(12335, glExecuteProgramNV, glExecuteProgramNV, NULL, 723), + NAME_FUNC_OFFSET(12354, glGenProgramsNV, glGenProgramsNV, NULL, 724), + NAME_FUNC_OFFSET(12370, glGetProgramParameterdvNV, glGetProgramParameterdvNV, NULL, 725), + NAME_FUNC_OFFSET(12396, glGetProgramParameterfvNV, glGetProgramParameterfvNV, NULL, 726), + NAME_FUNC_OFFSET(12422, glGetProgramStringNV, glGetProgramStringNV, NULL, 727), + NAME_FUNC_OFFSET(12443, glGetProgramivNV, glGetProgramivNV, NULL, 728), + NAME_FUNC_OFFSET(12460, glGetTrackMatrixivNV, glGetTrackMatrixivNV, NULL, 729), + NAME_FUNC_OFFSET(12481, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, 730), + NAME_FUNC_OFFSET(12509, glGetVertexAttribdvNV, glGetVertexAttribdvNV, NULL, 731), + NAME_FUNC_OFFSET(12531, glGetVertexAttribfvNV, glGetVertexAttribfvNV, NULL, 732), + NAME_FUNC_OFFSET(12553, glGetVertexAttribivNV, glGetVertexAttribivNV, NULL, 733), + NAME_FUNC_OFFSET(12575, glIsProgramNV, glIsProgramNV, NULL, 734), + NAME_FUNC_OFFSET(12589, glLoadProgramNV, glLoadProgramNV, NULL, 735), + NAME_FUNC_OFFSET(12605, glProgramParameters4dvNV, glProgramParameters4dvNV, NULL, 736), + NAME_FUNC_OFFSET(12630, glProgramParameters4fvNV, glProgramParameters4fvNV, NULL, 737), + NAME_FUNC_OFFSET(12655, glRequestResidentProgramsNV, glRequestResidentProgramsNV, NULL, 738), + NAME_FUNC_OFFSET(12683, glTrackMatrixNV, glTrackMatrixNV, NULL, 739), + NAME_FUNC_OFFSET(12699, glVertexAttrib1dNV, glVertexAttrib1dNV, NULL, 740), + NAME_FUNC_OFFSET(12718, glVertexAttrib1dvNV, glVertexAttrib1dvNV, NULL, 741), + NAME_FUNC_OFFSET(12738, glVertexAttrib1fNV, glVertexAttrib1fNV, NULL, 742), + NAME_FUNC_OFFSET(12757, glVertexAttrib1fvNV, glVertexAttrib1fvNV, NULL, 743), + NAME_FUNC_OFFSET(12777, glVertexAttrib1sNV, glVertexAttrib1sNV, NULL, 744), + NAME_FUNC_OFFSET(12796, glVertexAttrib1svNV, glVertexAttrib1svNV, NULL, 745), + NAME_FUNC_OFFSET(12816, glVertexAttrib2dNV, glVertexAttrib2dNV, NULL, 746), + NAME_FUNC_OFFSET(12835, glVertexAttrib2dvNV, glVertexAttrib2dvNV, NULL, 747), + NAME_FUNC_OFFSET(12855, glVertexAttrib2fNV, glVertexAttrib2fNV, NULL, 748), + NAME_FUNC_OFFSET(12874, glVertexAttrib2fvNV, glVertexAttrib2fvNV, NULL, 749), + NAME_FUNC_OFFSET(12894, glVertexAttrib2sNV, glVertexAttrib2sNV, NULL, 750), + NAME_FUNC_OFFSET(12913, glVertexAttrib2svNV, glVertexAttrib2svNV, NULL, 751), + NAME_FUNC_OFFSET(12933, glVertexAttrib3dNV, glVertexAttrib3dNV, NULL, 752), + NAME_FUNC_OFFSET(12952, glVertexAttrib3dvNV, glVertexAttrib3dvNV, NULL, 753), + NAME_FUNC_OFFSET(12972, glVertexAttrib3fNV, glVertexAttrib3fNV, NULL, 754), + NAME_FUNC_OFFSET(12991, glVertexAttrib3fvNV, glVertexAttrib3fvNV, NULL, 755), + NAME_FUNC_OFFSET(13011, glVertexAttrib3sNV, glVertexAttrib3sNV, NULL, 756), + NAME_FUNC_OFFSET(13030, glVertexAttrib3svNV, glVertexAttrib3svNV, NULL, 757), + NAME_FUNC_OFFSET(13050, glVertexAttrib4dNV, glVertexAttrib4dNV, NULL, 758), + NAME_FUNC_OFFSET(13069, glVertexAttrib4dvNV, glVertexAttrib4dvNV, NULL, 759), + NAME_FUNC_OFFSET(13089, glVertexAttrib4fNV, glVertexAttrib4fNV, NULL, 760), + NAME_FUNC_OFFSET(13108, glVertexAttrib4fvNV, glVertexAttrib4fvNV, NULL, 761), + NAME_FUNC_OFFSET(13128, glVertexAttrib4sNV, glVertexAttrib4sNV, NULL, 762), + NAME_FUNC_OFFSET(13147, glVertexAttrib4svNV, glVertexAttrib4svNV, NULL, 763), + NAME_FUNC_OFFSET(13167, glVertexAttrib4ubNV, glVertexAttrib4ubNV, NULL, 764), + NAME_FUNC_OFFSET(13187, glVertexAttrib4ubvNV, glVertexAttrib4ubvNV, NULL, 765), + NAME_FUNC_OFFSET(13208, glVertexAttribPointerNV, glVertexAttribPointerNV, NULL, 766), + NAME_FUNC_OFFSET(13232, glVertexAttribs1dvNV, glVertexAttribs1dvNV, NULL, 767), + NAME_FUNC_OFFSET(13253, glVertexAttribs1fvNV, glVertexAttribs1fvNV, NULL, 768), + NAME_FUNC_OFFSET(13274, glVertexAttribs1svNV, glVertexAttribs1svNV, NULL, 769), + NAME_FUNC_OFFSET(13295, glVertexAttribs2dvNV, glVertexAttribs2dvNV, NULL, 770), + NAME_FUNC_OFFSET(13316, glVertexAttribs2fvNV, glVertexAttribs2fvNV, NULL, 771), + NAME_FUNC_OFFSET(13337, glVertexAttribs2svNV, glVertexAttribs2svNV, NULL, 772), + NAME_FUNC_OFFSET(13358, glVertexAttribs3dvNV, glVertexAttribs3dvNV, NULL, 773), + NAME_FUNC_OFFSET(13379, glVertexAttribs3fvNV, glVertexAttribs3fvNV, NULL, 774), + NAME_FUNC_OFFSET(13400, glVertexAttribs3svNV, glVertexAttribs3svNV, NULL, 775), + NAME_FUNC_OFFSET(13421, glVertexAttribs4dvNV, glVertexAttribs4dvNV, NULL, 776), + NAME_FUNC_OFFSET(13442, glVertexAttribs4fvNV, glVertexAttribs4fvNV, NULL, 777), + NAME_FUNC_OFFSET(13463, glVertexAttribs4svNV, glVertexAttribs4svNV, NULL, 778), + NAME_FUNC_OFFSET(13484, glVertexAttribs4ubvNV, glVertexAttribs4ubvNV, NULL, 779), + NAME_FUNC_OFFSET(13506, glGetTexBumpParameterfvATI, glGetTexBumpParameterfvATI, NULL, 780), + NAME_FUNC_OFFSET(13533, glGetTexBumpParameterivATI, glGetTexBumpParameterivATI, NULL, 781), + NAME_FUNC_OFFSET(13560, glTexBumpParameterfvATI, glTexBumpParameterfvATI, NULL, 782), + NAME_FUNC_OFFSET(13584, glTexBumpParameterivATI, glTexBumpParameterivATI, NULL, 783), + NAME_FUNC_OFFSET(13608, glAlphaFragmentOp1ATI, glAlphaFragmentOp1ATI, NULL, 784), + NAME_FUNC_OFFSET(13630, glAlphaFragmentOp2ATI, glAlphaFragmentOp2ATI, NULL, 785), + NAME_FUNC_OFFSET(13652, glAlphaFragmentOp3ATI, glAlphaFragmentOp3ATI, NULL, 786), + NAME_FUNC_OFFSET(13674, glBeginFragmentShaderATI, glBeginFragmentShaderATI, NULL, 787), + NAME_FUNC_OFFSET(13699, glBindFragmentShaderATI, glBindFragmentShaderATI, NULL, 788), + NAME_FUNC_OFFSET(13723, glColorFragmentOp1ATI, glColorFragmentOp1ATI, NULL, 789), + NAME_FUNC_OFFSET(13745, glColorFragmentOp2ATI, glColorFragmentOp2ATI, NULL, 790), + NAME_FUNC_OFFSET(13767, glColorFragmentOp3ATI, glColorFragmentOp3ATI, NULL, 791), + NAME_FUNC_OFFSET(13789, glDeleteFragmentShaderATI, glDeleteFragmentShaderATI, NULL, 792), + NAME_FUNC_OFFSET(13815, glEndFragmentShaderATI, glEndFragmentShaderATI, NULL, 793), + NAME_FUNC_OFFSET(13838, glGenFragmentShadersATI, glGenFragmentShadersATI, NULL, 794), + NAME_FUNC_OFFSET(13862, glPassTexCoordATI, glPassTexCoordATI, NULL, 795), + NAME_FUNC_OFFSET(13880, glSampleMapATI, glSampleMapATI, NULL, 796), + NAME_FUNC_OFFSET(13895, glSetFragmentShaderConstantATI, glSetFragmentShaderConstantATI, NULL, 797), + NAME_FUNC_OFFSET(13926, glPointParameteriNV, glPointParameteriNV, NULL, 798), + NAME_FUNC_OFFSET(13946, glPointParameterivNV, glPointParameterivNV, NULL, 799), + NAME_FUNC_OFFSET(13967, gl_dispatch_stub_800, gl_dispatch_stub_800, NULL, 800), + NAME_FUNC_OFFSET(13990, gl_dispatch_stub_801, gl_dispatch_stub_801, NULL, 801), + NAME_FUNC_OFFSET(14013, gl_dispatch_stub_802, gl_dispatch_stub_802, NULL, 802), + NAME_FUNC_OFFSET(14039, gl_dispatch_stub_803, gl_dispatch_stub_803, NULL, 803), + NAME_FUNC_OFFSET(14062, gl_dispatch_stub_804, gl_dispatch_stub_804, NULL, 804), + NAME_FUNC_OFFSET(14083, glGetProgramNamedParameterdvNV, glGetProgramNamedParameterdvNV, NULL, 805), + NAME_FUNC_OFFSET(14114, glGetProgramNamedParameterfvNV, glGetProgramNamedParameterfvNV, NULL, 806), + NAME_FUNC_OFFSET(14145, glProgramNamedParameter4dNV, glProgramNamedParameter4dNV, NULL, 807), + NAME_FUNC_OFFSET(14173, glProgramNamedParameter4dvNV, glProgramNamedParameter4dvNV, NULL, 808), + NAME_FUNC_OFFSET(14202, glProgramNamedParameter4fNV, glProgramNamedParameter4fNV, NULL, 809), + NAME_FUNC_OFFSET(14230, glProgramNamedParameter4fvNV, glProgramNamedParameter4fvNV, NULL, 810), + NAME_FUNC_OFFSET(14259, glPrimitiveRestartIndexNV, glPrimitiveRestartIndexNV, NULL, 811), + NAME_FUNC_OFFSET(14285, glPrimitiveRestartNV, glPrimitiveRestartNV, NULL, 812), + NAME_FUNC_OFFSET(14306, gl_dispatch_stub_813, gl_dispatch_stub_813, NULL, 813), + NAME_FUNC_OFFSET(14323, gl_dispatch_stub_814, gl_dispatch_stub_814, NULL, 814), + NAME_FUNC_OFFSET(14350, glBindFramebufferEXT, glBindFramebufferEXT, NULL, 815), + NAME_FUNC_OFFSET(14371, glBindRenderbufferEXT, glBindRenderbufferEXT, NULL, 816), + NAME_FUNC_OFFSET(14393, glCheckFramebufferStatusEXT, glCheckFramebufferStatusEXT, NULL, 817), + NAME_FUNC_OFFSET(14421, glDeleteFramebuffersEXT, glDeleteFramebuffersEXT, NULL, 818), + NAME_FUNC_OFFSET(14445, glDeleteRenderbuffersEXT, glDeleteRenderbuffersEXT, NULL, 819), + NAME_FUNC_OFFSET(14470, glFramebufferRenderbufferEXT, glFramebufferRenderbufferEXT, NULL, 820), + NAME_FUNC_OFFSET(14499, glFramebufferTexture1DEXT, glFramebufferTexture1DEXT, NULL, 821), + NAME_FUNC_OFFSET(14525, glFramebufferTexture2DEXT, glFramebufferTexture2DEXT, NULL, 822), + NAME_FUNC_OFFSET(14551, glFramebufferTexture3DEXT, glFramebufferTexture3DEXT, NULL, 823), + NAME_FUNC_OFFSET(14577, glGenFramebuffersEXT, glGenFramebuffersEXT, NULL, 824), + NAME_FUNC_OFFSET(14598, glGenRenderbuffersEXT, glGenRenderbuffersEXT, NULL, 825), + NAME_FUNC_OFFSET(14620, glGenerateMipmapEXT, glGenerateMipmapEXT, NULL, 826), + NAME_FUNC_OFFSET(14640, glGetFramebufferAttachmentParameterivEXT, glGetFramebufferAttachmentParameterivEXT, NULL, 827), + NAME_FUNC_OFFSET(14681, glGetRenderbufferParameterivEXT, glGetRenderbufferParameterivEXT, NULL, 828), + NAME_FUNC_OFFSET(14713, glIsFramebufferEXT, glIsFramebufferEXT, NULL, 829), + NAME_FUNC_OFFSET(14732, glIsRenderbufferEXT, glIsRenderbufferEXT, NULL, 830), + NAME_FUNC_OFFSET(14752, glRenderbufferStorageEXT, glRenderbufferStorageEXT, NULL, 831), + NAME_FUNC_OFFSET(14777, gl_dispatch_stub_832, gl_dispatch_stub_832, NULL, 832), + NAME_FUNC_OFFSET(14798, gl_dispatch_stub_833, gl_dispatch_stub_833, NULL, 833), + NAME_FUNC_OFFSET(14822, gl_dispatch_stub_834, gl_dispatch_stub_834, NULL, 834), + NAME_FUNC_OFFSET(14852, glBindFragDataLocationEXT, glBindFragDataLocationEXT, NULL, 835), + NAME_FUNC_OFFSET(14878, glGetFragDataLocationEXT, glGetFragDataLocationEXT, NULL, 836), + NAME_FUNC_OFFSET(14903, glGetUniformuivEXT, glGetUniformuivEXT, NULL, 837), + NAME_FUNC_OFFSET(14922, glGetVertexAttribIivEXT, glGetVertexAttribIivEXT, NULL, 838), + NAME_FUNC_OFFSET(14946, glGetVertexAttribIuivEXT, glGetVertexAttribIuivEXT, NULL, 839), + NAME_FUNC_OFFSET(14971, glUniform1uiEXT, glUniform1uiEXT, NULL, 840), + NAME_FUNC_OFFSET(14987, glUniform1uivEXT, glUniform1uivEXT, NULL, 841), + NAME_FUNC_OFFSET(15004, glUniform2uiEXT, glUniform2uiEXT, NULL, 842), + NAME_FUNC_OFFSET(15020, glUniform2uivEXT, glUniform2uivEXT, NULL, 843), + NAME_FUNC_OFFSET(15037, glUniform3uiEXT, glUniform3uiEXT, NULL, 844), + NAME_FUNC_OFFSET(15053, glUniform3uivEXT, glUniform3uivEXT, NULL, 845), + NAME_FUNC_OFFSET(15070, glUniform4uiEXT, glUniform4uiEXT, NULL, 846), + NAME_FUNC_OFFSET(15086, glUniform4uivEXT, glUniform4uivEXT, NULL, 847), + NAME_FUNC_OFFSET(15103, glVertexAttribI1iEXT, glVertexAttribI1iEXT, NULL, 848), + NAME_FUNC_OFFSET(15124, glVertexAttribI1ivEXT, glVertexAttribI1ivEXT, NULL, 849), + NAME_FUNC_OFFSET(15146, glVertexAttribI1uiEXT, glVertexAttribI1uiEXT, NULL, 850), + NAME_FUNC_OFFSET(15168, glVertexAttribI1uivEXT, glVertexAttribI1uivEXT, NULL, 851), + NAME_FUNC_OFFSET(15191, glVertexAttribI2iEXT, glVertexAttribI2iEXT, NULL, 852), + NAME_FUNC_OFFSET(15212, glVertexAttribI2ivEXT, glVertexAttribI2ivEXT, NULL, 853), + NAME_FUNC_OFFSET(15234, glVertexAttribI2uiEXT, glVertexAttribI2uiEXT, NULL, 854), + NAME_FUNC_OFFSET(15256, glVertexAttribI2uivEXT, glVertexAttribI2uivEXT, NULL, 855), + NAME_FUNC_OFFSET(15279, glVertexAttribI3iEXT, glVertexAttribI3iEXT, NULL, 856), + NAME_FUNC_OFFSET(15300, glVertexAttribI3ivEXT, glVertexAttribI3ivEXT, NULL, 857), + NAME_FUNC_OFFSET(15322, glVertexAttribI3uiEXT, glVertexAttribI3uiEXT, NULL, 858), + NAME_FUNC_OFFSET(15344, glVertexAttribI3uivEXT, glVertexAttribI3uivEXT, NULL, 859), + NAME_FUNC_OFFSET(15367, glVertexAttribI4bvEXT, glVertexAttribI4bvEXT, NULL, 860), + NAME_FUNC_OFFSET(15389, glVertexAttribI4iEXT, glVertexAttribI4iEXT, NULL, 861), + NAME_FUNC_OFFSET(15410, glVertexAttribI4ivEXT, glVertexAttribI4ivEXT, NULL, 862), + NAME_FUNC_OFFSET(15432, glVertexAttribI4svEXT, glVertexAttribI4svEXT, NULL, 863), + NAME_FUNC_OFFSET(15454, glVertexAttribI4ubvEXT, glVertexAttribI4ubvEXT, NULL, 864), + NAME_FUNC_OFFSET(15477, glVertexAttribI4uiEXT, glVertexAttribI4uiEXT, NULL, 865), + NAME_FUNC_OFFSET(15499, glVertexAttribI4uivEXT, glVertexAttribI4uivEXT, NULL, 866), + NAME_FUNC_OFFSET(15522, glVertexAttribI4usvEXT, glVertexAttribI4usvEXT, NULL, 867), + NAME_FUNC_OFFSET(15545, glVertexAttribIPointerEXT, glVertexAttribIPointerEXT, NULL, 868), + NAME_FUNC_OFFSET(15571, glFramebufferTextureLayerEXT, glFramebufferTextureLayerEXT, NULL, 869), + NAME_FUNC_OFFSET(15600, glColorMaskIndexedEXT, glColorMaskIndexedEXT, NULL, 870), + NAME_FUNC_OFFSET(15622, glDisableIndexedEXT, glDisableIndexedEXT, NULL, 871), + NAME_FUNC_OFFSET(15642, glEnableIndexedEXT, glEnableIndexedEXT, NULL, 872), + NAME_FUNC_OFFSET(15661, glGetBooleanIndexedvEXT, glGetBooleanIndexedvEXT, NULL, 873), + NAME_FUNC_OFFSET(15685, glGetIntegerIndexedvEXT, glGetIntegerIndexedvEXT, NULL, 874), + NAME_FUNC_OFFSET(15709, glIsEnabledIndexedEXT, glIsEnabledIndexedEXT, NULL, 875), + NAME_FUNC_OFFSET(15731, glClearColorIiEXT, glClearColorIiEXT, NULL, 876), + NAME_FUNC_OFFSET(15749, glClearColorIuiEXT, glClearColorIuiEXT, NULL, 877), + NAME_FUNC_OFFSET(15768, glGetTexParameterIivEXT, glGetTexParameterIivEXT, NULL, 878), + NAME_FUNC_OFFSET(15792, glGetTexParameterIuivEXT, glGetTexParameterIuivEXT, NULL, 879), + NAME_FUNC_OFFSET(15817, glTexParameterIivEXT, glTexParameterIivEXT, NULL, 880), + NAME_FUNC_OFFSET(15838, glTexParameterIuivEXT, glTexParameterIuivEXT, NULL, 881), + NAME_FUNC_OFFSET(15860, glBeginConditionalRenderNV, glBeginConditionalRenderNV, NULL, 882), + NAME_FUNC_OFFSET(15887, glEndConditionalRenderNV, glEndConditionalRenderNV, NULL, 883), + NAME_FUNC_OFFSET(15912, glBeginTransformFeedbackEXT, glBeginTransformFeedbackEXT, NULL, 884), + NAME_FUNC_OFFSET(15940, glBindBufferBaseEXT, glBindBufferBaseEXT, NULL, 885), + NAME_FUNC_OFFSET(15960, glBindBufferOffsetEXT, glBindBufferOffsetEXT, NULL, 886), + NAME_FUNC_OFFSET(15982, glBindBufferRangeEXT, glBindBufferRangeEXT, NULL, 887), + NAME_FUNC_OFFSET(16003, glEndTransformFeedbackEXT, glEndTransformFeedbackEXT, NULL, 888), + NAME_FUNC_OFFSET(16029, glGetTransformFeedbackVaryingEXT, glGetTransformFeedbackVaryingEXT, NULL, 889), + NAME_FUNC_OFFSET(16062, glTransformFeedbackVaryingsEXT, glTransformFeedbackVaryingsEXT, NULL, 890), + NAME_FUNC_OFFSET(16093, glProvokingVertexEXT, glProvokingVertexEXT, NULL, 891), + NAME_FUNC_OFFSET(16114, gl_dispatch_stub_892, gl_dispatch_stub_892, NULL, 892), + NAME_FUNC_OFFSET(16145, gl_dispatch_stub_893, gl_dispatch_stub_893, NULL, 893), + NAME_FUNC_OFFSET(16165, glGetObjectParameterivAPPLE, glGetObjectParameterivAPPLE, NULL, 894), + NAME_FUNC_OFFSET(16193, glObjectPurgeableAPPLE, glObjectPurgeableAPPLE, NULL, 895), + NAME_FUNC_OFFSET(16216, glObjectUnpurgeableAPPLE, glObjectUnpurgeableAPPLE, NULL, 896), + NAME_FUNC_OFFSET(16241, glActiveProgramEXT, glActiveProgramEXT, NULL, 897), + NAME_FUNC_OFFSET(16260, glCreateShaderProgramEXT, glCreateShaderProgramEXT, NULL, 898), + NAME_FUNC_OFFSET(16285, glUseShaderProgramEXT, glUseShaderProgramEXT, NULL, 899), + NAME_FUNC_OFFSET(16307, glTextureBarrierNV, glTextureBarrierNV, NULL, 900), + NAME_FUNC_OFFSET(16326, gl_dispatch_stub_901, gl_dispatch_stub_901, NULL, 901), + NAME_FUNC_OFFSET(16351, gl_dispatch_stub_902, gl_dispatch_stub_902, NULL, 902), + NAME_FUNC_OFFSET(16380, gl_dispatch_stub_903, gl_dispatch_stub_903, NULL, 903), + NAME_FUNC_OFFSET(16411, gl_dispatch_stub_904, gl_dispatch_stub_904, NULL, 904), + NAME_FUNC_OFFSET(16435, gl_dispatch_stub_905, gl_dispatch_stub_905, NULL, 905), + NAME_FUNC_OFFSET(16460, glEGLImageTargetRenderbufferStorageOES, glEGLImageTargetRenderbufferStorageOES, NULL, 906), + NAME_FUNC_OFFSET(16499, glEGLImageTargetTexture2DOES, glEGLImageTargetTexture2DOES, NULL, 907), + NAME_FUNC_OFFSET(16528, glArrayElement, glArrayElement, NULL, 306), + NAME_FUNC_OFFSET(16546, glBindTexture, glBindTexture, NULL, 307), + NAME_FUNC_OFFSET(16563, glDrawArrays, glDrawArrays, NULL, 310), + NAME_FUNC_OFFSET(16579, glAreTexturesResident, glAreTexturesResidentEXT, glAreTexturesResidentEXT, 322), + NAME_FUNC_OFFSET(16604, glCopyTexImage1D, glCopyTexImage1D, NULL, 323), + NAME_FUNC_OFFSET(16624, glCopyTexImage2D, glCopyTexImage2D, NULL, 324), + NAME_FUNC_OFFSET(16644, glCopyTexSubImage1D, glCopyTexSubImage1D, NULL, 325), + NAME_FUNC_OFFSET(16667, glCopyTexSubImage2D, glCopyTexSubImage2D, NULL, 326), + NAME_FUNC_OFFSET(16690, glDeleteTextures, glDeleteTexturesEXT, glDeleteTexturesEXT, 327), + NAME_FUNC_OFFSET(16710, glGenTextures, glGenTexturesEXT, glGenTexturesEXT, 328), + NAME_FUNC_OFFSET(16727, glGetPointerv, glGetPointerv, NULL, 329), + NAME_FUNC_OFFSET(16744, glIsTexture, glIsTextureEXT, glIsTextureEXT, 330), + NAME_FUNC_OFFSET(16759, glPrioritizeTextures, glPrioritizeTextures, NULL, 331), + NAME_FUNC_OFFSET(16783, glTexSubImage1D, glTexSubImage1D, NULL, 332), + NAME_FUNC_OFFSET(16802, glTexSubImage2D, glTexSubImage2D, NULL, 333), + NAME_FUNC_OFFSET(16821, glBlendColor, glBlendColor, NULL, 336), + NAME_FUNC_OFFSET(16837, glBlendEquation, glBlendEquation, NULL, 337), + NAME_FUNC_OFFSET(16856, glDrawRangeElements, glDrawRangeElements, NULL, 338), + NAME_FUNC_OFFSET(16879, glColorTable, glColorTable, NULL, 339), + NAME_FUNC_OFFSET(16895, glColorTable, glColorTable, NULL, 339), + NAME_FUNC_OFFSET(16911, glColorTableParameterfv, glColorTableParameterfv, NULL, 340), + NAME_FUNC_OFFSET(16938, glColorTableParameteriv, glColorTableParameteriv, NULL, 341), + NAME_FUNC_OFFSET(16965, glCopyColorTable, glCopyColorTable, NULL, 342), + NAME_FUNC_OFFSET(16985, glGetColorTable, glGetColorTableEXT, glGetColorTableEXT, 343), + NAME_FUNC_OFFSET(17004, glGetColorTable, glGetColorTableEXT, glGetColorTableEXT, 343), + NAME_FUNC_OFFSET(17023, glGetColorTableParameterfv, glGetColorTableParameterfvEXT, glGetColorTableParameterfvEXT, 344), + NAME_FUNC_OFFSET(17053, glGetColorTableParameterfv, glGetColorTableParameterfvEXT, glGetColorTableParameterfvEXT, 344), + NAME_FUNC_OFFSET(17083, glGetColorTableParameteriv, glGetColorTableParameterivEXT, glGetColorTableParameterivEXT, 345), + NAME_FUNC_OFFSET(17113, glGetColorTableParameteriv, glGetColorTableParameterivEXT, glGetColorTableParameterivEXT, 345), + NAME_FUNC_OFFSET(17143, glColorSubTable, glColorSubTable, NULL, 346), + NAME_FUNC_OFFSET(17162, glCopyColorSubTable, glCopyColorSubTable, NULL, 347), + NAME_FUNC_OFFSET(17185, glConvolutionFilter1D, glConvolutionFilter1D, NULL, 348), + NAME_FUNC_OFFSET(17210, glConvolutionFilter2D, glConvolutionFilter2D, NULL, 349), + NAME_FUNC_OFFSET(17235, glConvolutionParameterf, glConvolutionParameterf, NULL, 350), + NAME_FUNC_OFFSET(17262, glConvolutionParameterfv, glConvolutionParameterfv, NULL, 351), + NAME_FUNC_OFFSET(17290, glConvolutionParameteri, glConvolutionParameteri, NULL, 352), + NAME_FUNC_OFFSET(17317, glConvolutionParameteriv, glConvolutionParameteriv, NULL, 353), + NAME_FUNC_OFFSET(17345, glCopyConvolutionFilter1D, glCopyConvolutionFilter1D, NULL, 354), + NAME_FUNC_OFFSET(17374, glCopyConvolutionFilter2D, glCopyConvolutionFilter2D, NULL, 355), + NAME_FUNC_OFFSET(17403, glGetConvolutionFilter, gl_dispatch_stub_356, gl_dispatch_stub_356, 356), + NAME_FUNC_OFFSET(17429, glGetConvolutionParameterfv, gl_dispatch_stub_357, gl_dispatch_stub_357, 357), + NAME_FUNC_OFFSET(17460, glGetConvolutionParameteriv, gl_dispatch_stub_358, gl_dispatch_stub_358, 358), + NAME_FUNC_OFFSET(17491, glGetSeparableFilter, gl_dispatch_stub_359, gl_dispatch_stub_359, 359), + NAME_FUNC_OFFSET(17515, glSeparableFilter2D, glSeparableFilter2D, NULL, 360), + NAME_FUNC_OFFSET(17538, glGetHistogram, gl_dispatch_stub_361, gl_dispatch_stub_361, 361), + NAME_FUNC_OFFSET(17556, glGetHistogramParameterfv, gl_dispatch_stub_362, gl_dispatch_stub_362, 362), + NAME_FUNC_OFFSET(17585, glGetHistogramParameteriv, gl_dispatch_stub_363, gl_dispatch_stub_363, 363), + NAME_FUNC_OFFSET(17614, glGetMinmax, gl_dispatch_stub_364, gl_dispatch_stub_364, 364), + NAME_FUNC_OFFSET(17629, glGetMinmaxParameterfv, gl_dispatch_stub_365, gl_dispatch_stub_365, 365), + NAME_FUNC_OFFSET(17655, glGetMinmaxParameteriv, gl_dispatch_stub_366, gl_dispatch_stub_366, 366), + NAME_FUNC_OFFSET(17681, glHistogram, glHistogram, NULL, 367), + NAME_FUNC_OFFSET(17696, glMinmax, glMinmax, NULL, 368), + NAME_FUNC_OFFSET(17708, glResetHistogram, glResetHistogram, NULL, 369), + NAME_FUNC_OFFSET(17728, glResetMinmax, glResetMinmax, NULL, 370), + NAME_FUNC_OFFSET(17745, glTexImage3D, glTexImage3D, NULL, 371), + NAME_FUNC_OFFSET(17761, glTexSubImage3D, glTexSubImage3D, NULL, 372), + NAME_FUNC_OFFSET(17780, glCopyTexSubImage3D, glCopyTexSubImage3D, NULL, 373), + NAME_FUNC_OFFSET(17803, glActiveTextureARB, glActiveTextureARB, NULL, 374), + NAME_FUNC_OFFSET(17819, glClientActiveTextureARB, glClientActiveTextureARB, NULL, 375), + NAME_FUNC_OFFSET(17841, glMultiTexCoord1dARB, glMultiTexCoord1dARB, NULL, 376), + NAME_FUNC_OFFSET(17859, glMultiTexCoord1dvARB, glMultiTexCoord1dvARB, NULL, 377), + NAME_FUNC_OFFSET(17878, glMultiTexCoord1fARB, glMultiTexCoord1fARB, NULL, 378), + NAME_FUNC_OFFSET(17896, glMultiTexCoord1fvARB, glMultiTexCoord1fvARB, NULL, 379), + NAME_FUNC_OFFSET(17915, glMultiTexCoord1iARB, glMultiTexCoord1iARB, NULL, 380), + NAME_FUNC_OFFSET(17933, glMultiTexCoord1ivARB, glMultiTexCoord1ivARB, NULL, 381), + NAME_FUNC_OFFSET(17952, glMultiTexCoord1sARB, glMultiTexCoord1sARB, NULL, 382), + NAME_FUNC_OFFSET(17970, glMultiTexCoord1svARB, glMultiTexCoord1svARB, NULL, 383), + NAME_FUNC_OFFSET(17989, glMultiTexCoord2dARB, glMultiTexCoord2dARB, NULL, 384), + NAME_FUNC_OFFSET(18007, glMultiTexCoord2dvARB, glMultiTexCoord2dvARB, NULL, 385), + NAME_FUNC_OFFSET(18026, glMultiTexCoord2fARB, glMultiTexCoord2fARB, NULL, 386), + NAME_FUNC_OFFSET(18044, glMultiTexCoord2fvARB, glMultiTexCoord2fvARB, NULL, 387), + NAME_FUNC_OFFSET(18063, glMultiTexCoord2iARB, glMultiTexCoord2iARB, NULL, 388), + NAME_FUNC_OFFSET(18081, glMultiTexCoord2ivARB, glMultiTexCoord2ivARB, NULL, 389), + NAME_FUNC_OFFSET(18100, glMultiTexCoord2sARB, glMultiTexCoord2sARB, NULL, 390), + NAME_FUNC_OFFSET(18118, glMultiTexCoord2svARB, glMultiTexCoord2svARB, NULL, 391), + NAME_FUNC_OFFSET(18137, glMultiTexCoord3dARB, glMultiTexCoord3dARB, NULL, 392), + NAME_FUNC_OFFSET(18155, glMultiTexCoord3dvARB, glMultiTexCoord3dvARB, NULL, 393), + NAME_FUNC_OFFSET(18174, glMultiTexCoord3fARB, glMultiTexCoord3fARB, NULL, 394), + NAME_FUNC_OFFSET(18192, glMultiTexCoord3fvARB, glMultiTexCoord3fvARB, NULL, 395), + NAME_FUNC_OFFSET(18211, glMultiTexCoord3iARB, glMultiTexCoord3iARB, NULL, 396), + NAME_FUNC_OFFSET(18229, glMultiTexCoord3ivARB, glMultiTexCoord3ivARB, NULL, 397), + NAME_FUNC_OFFSET(18248, glMultiTexCoord3sARB, glMultiTexCoord3sARB, NULL, 398), + NAME_FUNC_OFFSET(18266, glMultiTexCoord3svARB, glMultiTexCoord3svARB, NULL, 399), + NAME_FUNC_OFFSET(18285, glMultiTexCoord4dARB, glMultiTexCoord4dARB, NULL, 400), + NAME_FUNC_OFFSET(18303, glMultiTexCoord4dvARB, glMultiTexCoord4dvARB, NULL, 401), + NAME_FUNC_OFFSET(18322, glMultiTexCoord4fARB, glMultiTexCoord4fARB, NULL, 402), + NAME_FUNC_OFFSET(18340, glMultiTexCoord4fvARB, glMultiTexCoord4fvARB, NULL, 403), + NAME_FUNC_OFFSET(18359, glMultiTexCoord4iARB, glMultiTexCoord4iARB, NULL, 404), + NAME_FUNC_OFFSET(18377, glMultiTexCoord4ivARB, glMultiTexCoord4ivARB, NULL, 405), + NAME_FUNC_OFFSET(18396, glMultiTexCoord4sARB, glMultiTexCoord4sARB, NULL, 406), + NAME_FUNC_OFFSET(18414, glMultiTexCoord4svARB, glMultiTexCoord4svARB, NULL, 407), + NAME_FUNC_OFFSET(18433, glStencilOpSeparate, glStencilOpSeparate, NULL, 423), + NAME_FUNC_OFFSET(18456, glLoadTransposeMatrixdARB, glLoadTransposeMatrixdARB, NULL, 441), + NAME_FUNC_OFFSET(18479, glLoadTransposeMatrixfARB, glLoadTransposeMatrixfARB, NULL, 442), + NAME_FUNC_OFFSET(18502, glMultTransposeMatrixdARB, glMultTransposeMatrixdARB, NULL, 443), + NAME_FUNC_OFFSET(18525, glMultTransposeMatrixfARB, glMultTransposeMatrixfARB, NULL, 444), + NAME_FUNC_OFFSET(18548, glSampleCoverageARB, glSampleCoverageARB, NULL, 445), + NAME_FUNC_OFFSET(18565, glCompressedTexImage1DARB, glCompressedTexImage1DARB, NULL, 446), + NAME_FUNC_OFFSET(18588, glCompressedTexImage2DARB, glCompressedTexImage2DARB, NULL, 447), + NAME_FUNC_OFFSET(18611, glCompressedTexImage3DARB, glCompressedTexImage3DARB, NULL, 448), + NAME_FUNC_OFFSET(18634, glCompressedTexSubImage1DARB, glCompressedTexSubImage1DARB, NULL, 449), + NAME_FUNC_OFFSET(18660, glCompressedTexSubImage2DARB, glCompressedTexSubImage2DARB, NULL, 450), + NAME_FUNC_OFFSET(18686, glCompressedTexSubImage3DARB, glCompressedTexSubImage3DARB, NULL, 451), + NAME_FUNC_OFFSET(18712, glGetCompressedTexImageARB, glGetCompressedTexImageARB, NULL, 452), + NAME_FUNC_OFFSET(18736, glDisableVertexAttribArrayARB, glDisableVertexAttribArrayARB, NULL, 453), + NAME_FUNC_OFFSET(18763, glEnableVertexAttribArrayARB, glEnableVertexAttribArrayARB, NULL, 454), + NAME_FUNC_OFFSET(18789, glGetVertexAttribdvARB, glGetVertexAttribdvARB, NULL, 461), + NAME_FUNC_OFFSET(18809, glGetVertexAttribfvARB, glGetVertexAttribfvARB, NULL, 462), + NAME_FUNC_OFFSET(18829, glGetVertexAttribivARB, glGetVertexAttribivARB, NULL, 463), + NAME_FUNC_OFFSET(18849, glProgramEnvParameter4dARB, glProgramEnvParameter4dARB, NULL, 464), + NAME_FUNC_OFFSET(18872, glProgramEnvParameter4dvARB, glProgramEnvParameter4dvARB, NULL, 465), + NAME_FUNC_OFFSET(18896, glProgramEnvParameter4fARB, glProgramEnvParameter4fARB, NULL, 466), + NAME_FUNC_OFFSET(18919, glProgramEnvParameter4fvARB, glProgramEnvParameter4fvARB, NULL, 467), + NAME_FUNC_OFFSET(18943, glVertexAttrib1dARB, glVertexAttrib1dARB, NULL, 473), + NAME_FUNC_OFFSET(18960, glVertexAttrib1dvARB, glVertexAttrib1dvARB, NULL, 474), + NAME_FUNC_OFFSET(18978, glVertexAttrib1fARB, glVertexAttrib1fARB, NULL, 475), + NAME_FUNC_OFFSET(18995, glVertexAttrib1fvARB, glVertexAttrib1fvARB, NULL, 476), + NAME_FUNC_OFFSET(19013, glVertexAttrib1sARB, glVertexAttrib1sARB, NULL, 477), + NAME_FUNC_OFFSET(19030, glVertexAttrib1svARB, glVertexAttrib1svARB, NULL, 478), + NAME_FUNC_OFFSET(19048, glVertexAttrib2dARB, glVertexAttrib2dARB, NULL, 479), + NAME_FUNC_OFFSET(19065, glVertexAttrib2dvARB, glVertexAttrib2dvARB, NULL, 480), + NAME_FUNC_OFFSET(19083, glVertexAttrib2fARB, glVertexAttrib2fARB, NULL, 481), + NAME_FUNC_OFFSET(19100, glVertexAttrib2fvARB, glVertexAttrib2fvARB, NULL, 482), + NAME_FUNC_OFFSET(19118, glVertexAttrib2sARB, glVertexAttrib2sARB, NULL, 483), + NAME_FUNC_OFFSET(19135, glVertexAttrib2svARB, glVertexAttrib2svARB, NULL, 484), + NAME_FUNC_OFFSET(19153, glVertexAttrib3dARB, glVertexAttrib3dARB, NULL, 485), + NAME_FUNC_OFFSET(19170, glVertexAttrib3dvARB, glVertexAttrib3dvARB, NULL, 486), + NAME_FUNC_OFFSET(19188, glVertexAttrib3fARB, glVertexAttrib3fARB, NULL, 487), + NAME_FUNC_OFFSET(19205, glVertexAttrib3fvARB, glVertexAttrib3fvARB, NULL, 488), + NAME_FUNC_OFFSET(19223, glVertexAttrib3sARB, glVertexAttrib3sARB, NULL, 489), + NAME_FUNC_OFFSET(19240, glVertexAttrib3svARB, glVertexAttrib3svARB, NULL, 490), + NAME_FUNC_OFFSET(19258, glVertexAttrib4NbvARB, glVertexAttrib4NbvARB, NULL, 491), + NAME_FUNC_OFFSET(19277, glVertexAttrib4NivARB, glVertexAttrib4NivARB, NULL, 492), + NAME_FUNC_OFFSET(19296, glVertexAttrib4NsvARB, glVertexAttrib4NsvARB, NULL, 493), + NAME_FUNC_OFFSET(19315, glVertexAttrib4NubARB, glVertexAttrib4NubARB, NULL, 494), + NAME_FUNC_OFFSET(19334, glVertexAttrib4NubvARB, glVertexAttrib4NubvARB, NULL, 495), + NAME_FUNC_OFFSET(19354, glVertexAttrib4NuivARB, glVertexAttrib4NuivARB, NULL, 496), + NAME_FUNC_OFFSET(19374, glVertexAttrib4NusvARB, glVertexAttrib4NusvARB, NULL, 497), + NAME_FUNC_OFFSET(19394, glVertexAttrib4bvARB, glVertexAttrib4bvARB, NULL, 498), + NAME_FUNC_OFFSET(19412, glVertexAttrib4dARB, glVertexAttrib4dARB, NULL, 499), + NAME_FUNC_OFFSET(19429, glVertexAttrib4dvARB, glVertexAttrib4dvARB, NULL, 500), + NAME_FUNC_OFFSET(19447, glVertexAttrib4fARB, glVertexAttrib4fARB, NULL, 501), + NAME_FUNC_OFFSET(19464, glVertexAttrib4fvARB, glVertexAttrib4fvARB, NULL, 502), + NAME_FUNC_OFFSET(19482, glVertexAttrib4ivARB, glVertexAttrib4ivARB, NULL, 503), + NAME_FUNC_OFFSET(19500, glVertexAttrib4sARB, glVertexAttrib4sARB, NULL, 504), + NAME_FUNC_OFFSET(19517, glVertexAttrib4svARB, glVertexAttrib4svARB, NULL, 505), + NAME_FUNC_OFFSET(19535, glVertexAttrib4ubvARB, glVertexAttrib4ubvARB, NULL, 506), + NAME_FUNC_OFFSET(19554, glVertexAttrib4uivARB, glVertexAttrib4uivARB, NULL, 507), + NAME_FUNC_OFFSET(19573, glVertexAttrib4usvARB, glVertexAttrib4usvARB, NULL, 508), + NAME_FUNC_OFFSET(19592, glVertexAttribPointerARB, glVertexAttribPointerARB, NULL, 509), + NAME_FUNC_OFFSET(19614, glBindBufferARB, glBindBufferARB, NULL, 510), + NAME_FUNC_OFFSET(19627, glBufferDataARB, glBufferDataARB, NULL, 511), + NAME_FUNC_OFFSET(19640, glBufferSubDataARB, glBufferSubDataARB, NULL, 512), + NAME_FUNC_OFFSET(19656, glDeleteBuffersARB, glDeleteBuffersARB, NULL, 513), + NAME_FUNC_OFFSET(19672, glGenBuffersARB, glGenBuffersARB, NULL, 514), + NAME_FUNC_OFFSET(19685, glGetBufferParameterivARB, glGetBufferParameterivARB, NULL, 515), + NAME_FUNC_OFFSET(19708, glGetBufferPointervARB, glGetBufferPointervARB, NULL, 516), + NAME_FUNC_OFFSET(19728, glGetBufferSubDataARB, glGetBufferSubDataARB, NULL, 517), + NAME_FUNC_OFFSET(19747, glIsBufferARB, glIsBufferARB, NULL, 518), + NAME_FUNC_OFFSET(19758, glMapBufferARB, glMapBufferARB, NULL, 519), + NAME_FUNC_OFFSET(19770, glUnmapBufferARB, glUnmapBufferARB, NULL, 520), + NAME_FUNC_OFFSET(19784, glBeginQueryARB, glBeginQueryARB, NULL, 521), + NAME_FUNC_OFFSET(19797, glDeleteQueriesARB, glDeleteQueriesARB, NULL, 522), + NAME_FUNC_OFFSET(19813, glEndQueryARB, glEndQueryARB, NULL, 523), + NAME_FUNC_OFFSET(19824, glGenQueriesARB, glGenQueriesARB, NULL, 524), + NAME_FUNC_OFFSET(19837, glGetQueryObjectivARB, glGetQueryObjectivARB, NULL, 525), + NAME_FUNC_OFFSET(19856, glGetQueryObjectuivARB, glGetQueryObjectuivARB, NULL, 526), + NAME_FUNC_OFFSET(19876, glGetQueryivARB, glGetQueryivARB, NULL, 527), + NAME_FUNC_OFFSET(19889, glIsQueryARB, glIsQueryARB, NULL, 528), + NAME_FUNC_OFFSET(19899, glCompileShaderARB, glCompileShaderARB, NULL, 530), + NAME_FUNC_OFFSET(19915, glGetActiveUniformARB, glGetActiveUniformARB, NULL, 535), + NAME_FUNC_OFFSET(19934, glGetShaderSourceARB, glGetShaderSourceARB, NULL, 541), + NAME_FUNC_OFFSET(19952, glGetUniformLocationARB, glGetUniformLocationARB, NULL, 542), + NAME_FUNC_OFFSET(19973, glGetUniformfvARB, glGetUniformfvARB, NULL, 543), + NAME_FUNC_OFFSET(19988, glGetUniformivARB, glGetUniformivARB, NULL, 544), + NAME_FUNC_OFFSET(20003, glLinkProgramARB, glLinkProgramARB, NULL, 545), + NAME_FUNC_OFFSET(20017, glShaderSourceARB, glShaderSourceARB, NULL, 546), + NAME_FUNC_OFFSET(20032, glUniform1fARB, glUniform1fARB, NULL, 547), + NAME_FUNC_OFFSET(20044, glUniform1fvARB, glUniform1fvARB, NULL, 548), + NAME_FUNC_OFFSET(20057, glUniform1iARB, glUniform1iARB, NULL, 549), + NAME_FUNC_OFFSET(20069, glUniform1ivARB, glUniform1ivARB, NULL, 550), + NAME_FUNC_OFFSET(20082, glUniform2fARB, glUniform2fARB, NULL, 551), + NAME_FUNC_OFFSET(20094, glUniform2fvARB, glUniform2fvARB, NULL, 552), + NAME_FUNC_OFFSET(20107, glUniform2iARB, glUniform2iARB, NULL, 553), + NAME_FUNC_OFFSET(20119, glUniform2ivARB, glUniform2ivARB, NULL, 554), + NAME_FUNC_OFFSET(20132, glUniform3fARB, glUniform3fARB, NULL, 555), + NAME_FUNC_OFFSET(20144, glUniform3fvARB, glUniform3fvARB, NULL, 556), + NAME_FUNC_OFFSET(20157, glUniform3iARB, glUniform3iARB, NULL, 557), + NAME_FUNC_OFFSET(20169, glUniform3ivARB, glUniform3ivARB, NULL, 558), + NAME_FUNC_OFFSET(20182, glUniform4fARB, glUniform4fARB, NULL, 559), + NAME_FUNC_OFFSET(20194, glUniform4fvARB, glUniform4fvARB, NULL, 560), + NAME_FUNC_OFFSET(20207, glUniform4iARB, glUniform4iARB, NULL, 561), + NAME_FUNC_OFFSET(20219, glUniform4ivARB, glUniform4ivARB, NULL, 562), + NAME_FUNC_OFFSET(20232, glUniformMatrix2fvARB, glUniformMatrix2fvARB, NULL, 563), + NAME_FUNC_OFFSET(20251, glUniformMatrix3fvARB, glUniformMatrix3fvARB, NULL, 564), + NAME_FUNC_OFFSET(20270, glUniformMatrix4fvARB, glUniformMatrix4fvARB, NULL, 565), + NAME_FUNC_OFFSET(20289, glUseProgramObjectARB, glUseProgramObjectARB, NULL, 566), + NAME_FUNC_OFFSET(20302, glValidateProgramARB, glValidateProgramARB, NULL, 567), + NAME_FUNC_OFFSET(20320, glBindAttribLocationARB, glBindAttribLocationARB, NULL, 568), + NAME_FUNC_OFFSET(20341, glGetActiveAttribARB, glGetActiveAttribARB, NULL, 569), + NAME_FUNC_OFFSET(20359, glGetAttribLocationARB, glGetAttribLocationARB, NULL, 570), + NAME_FUNC_OFFSET(20379, glDrawBuffersARB, glDrawBuffersARB, NULL, 571), + NAME_FUNC_OFFSET(20393, glDrawBuffersARB, glDrawBuffersARB, NULL, 571), + NAME_FUNC_OFFSET(20410, glDrawArraysInstancedARB, glDrawArraysInstancedARB, NULL, 573), + NAME_FUNC_OFFSET(20435, glDrawArraysInstancedARB, glDrawArraysInstancedARB, NULL, 573), + NAME_FUNC_OFFSET(20457, glDrawElementsInstancedARB, glDrawElementsInstancedARB, NULL, 574), + NAME_FUNC_OFFSET(20484, glDrawElementsInstancedARB, glDrawElementsInstancedARB, NULL, 574), + NAME_FUNC_OFFSET(20508, glRenderbufferStorageMultisample, glRenderbufferStorageMultisample, NULL, 575), + NAME_FUNC_OFFSET(20544, gl_dispatch_stub_633, gl_dispatch_stub_633, NULL, 633), + NAME_FUNC_OFFSET(20560, gl_dispatch_stub_634, gl_dispatch_stub_634, NULL, 634), + NAME_FUNC_OFFSET(20579, glPointParameterfEXT, glPointParameterfEXT, NULL, 641), + NAME_FUNC_OFFSET(20597, glPointParameterfEXT, glPointParameterfEXT, NULL, 641), + NAME_FUNC_OFFSET(20618, glPointParameterfEXT, glPointParameterfEXT, NULL, 641), + NAME_FUNC_OFFSET(20640, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 642), + NAME_FUNC_OFFSET(20659, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 642), + NAME_FUNC_OFFSET(20681, glPointParameterfvEXT, glPointParameterfvEXT, NULL, 642), + NAME_FUNC_OFFSET(20704, glSecondaryColor3bEXT, glSecondaryColor3bEXT, NULL, 645), + NAME_FUNC_OFFSET(20723, glSecondaryColor3bvEXT, glSecondaryColor3bvEXT, NULL, 646), + NAME_FUNC_OFFSET(20743, glSecondaryColor3dEXT, glSecondaryColor3dEXT, NULL, 647), + NAME_FUNC_OFFSET(20762, glSecondaryColor3dvEXT, glSecondaryColor3dvEXT, NULL, 648), + NAME_FUNC_OFFSET(20782, glSecondaryColor3fEXT, glSecondaryColor3fEXT, NULL, 649), + NAME_FUNC_OFFSET(20801, glSecondaryColor3fvEXT, glSecondaryColor3fvEXT, NULL, 650), + NAME_FUNC_OFFSET(20821, glSecondaryColor3iEXT, glSecondaryColor3iEXT, NULL, 651), + NAME_FUNC_OFFSET(20840, glSecondaryColor3ivEXT, glSecondaryColor3ivEXT, NULL, 652), + NAME_FUNC_OFFSET(20860, glSecondaryColor3sEXT, glSecondaryColor3sEXT, NULL, 653), + NAME_FUNC_OFFSET(20879, glSecondaryColor3svEXT, glSecondaryColor3svEXT, NULL, 654), + NAME_FUNC_OFFSET(20899, glSecondaryColor3ubEXT, glSecondaryColor3ubEXT, NULL, 655), + NAME_FUNC_OFFSET(20919, glSecondaryColor3ubvEXT, glSecondaryColor3ubvEXT, NULL, 656), + NAME_FUNC_OFFSET(20940, glSecondaryColor3uiEXT, glSecondaryColor3uiEXT, NULL, 657), + NAME_FUNC_OFFSET(20960, glSecondaryColor3uivEXT, glSecondaryColor3uivEXT, NULL, 658), + NAME_FUNC_OFFSET(20981, glSecondaryColor3usEXT, glSecondaryColor3usEXT, NULL, 659), + NAME_FUNC_OFFSET(21001, glSecondaryColor3usvEXT, glSecondaryColor3usvEXT, NULL, 660), + NAME_FUNC_OFFSET(21022, glSecondaryColorPointerEXT, glSecondaryColorPointerEXT, NULL, 661), + NAME_FUNC_OFFSET(21046, glMultiDrawArraysEXT, glMultiDrawArraysEXT, NULL, 662), + NAME_FUNC_OFFSET(21064, glMultiDrawElementsEXT, glMultiDrawElementsEXT, NULL, 663), + NAME_FUNC_OFFSET(21084, glFogCoordPointerEXT, glFogCoordPointerEXT, NULL, 664), + NAME_FUNC_OFFSET(21102, glFogCoorddEXT, glFogCoorddEXT, NULL, 665), + NAME_FUNC_OFFSET(21114, glFogCoorddvEXT, glFogCoorddvEXT, NULL, 666), + NAME_FUNC_OFFSET(21127, glFogCoordfEXT, glFogCoordfEXT, NULL, 667), + NAME_FUNC_OFFSET(21139, glFogCoordfvEXT, glFogCoordfvEXT, NULL, 668), + NAME_FUNC_OFFSET(21152, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, 670), + NAME_FUNC_OFFSET(21172, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, 670), + NAME_FUNC_OFFSET(21196, glWindowPos2dMESA, glWindowPos2dMESA, NULL, 687), + NAME_FUNC_OFFSET(21210, glWindowPos2dMESA, glWindowPos2dMESA, NULL, 687), + NAME_FUNC_OFFSET(21227, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, 688), + NAME_FUNC_OFFSET(21242, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, 688), + NAME_FUNC_OFFSET(21260, glWindowPos2fMESA, glWindowPos2fMESA, NULL, 689), + NAME_FUNC_OFFSET(21274, glWindowPos2fMESA, glWindowPos2fMESA, NULL, 689), + NAME_FUNC_OFFSET(21291, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, 690), + NAME_FUNC_OFFSET(21306, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, 690), + NAME_FUNC_OFFSET(21324, glWindowPos2iMESA, glWindowPos2iMESA, NULL, 691), + NAME_FUNC_OFFSET(21338, glWindowPos2iMESA, glWindowPos2iMESA, NULL, 691), + NAME_FUNC_OFFSET(21355, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, 692), + NAME_FUNC_OFFSET(21370, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, 692), + NAME_FUNC_OFFSET(21388, glWindowPos2sMESA, glWindowPos2sMESA, NULL, 693), + NAME_FUNC_OFFSET(21402, glWindowPos2sMESA, glWindowPos2sMESA, NULL, 693), + NAME_FUNC_OFFSET(21419, glWindowPos2svMESA, glWindowPos2svMESA, NULL, 694), + NAME_FUNC_OFFSET(21434, glWindowPos2svMESA, glWindowPos2svMESA, NULL, 694), + NAME_FUNC_OFFSET(21452, glWindowPos3dMESA, glWindowPos3dMESA, NULL, 695), + NAME_FUNC_OFFSET(21466, glWindowPos3dMESA, glWindowPos3dMESA, NULL, 695), + NAME_FUNC_OFFSET(21483, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, 696), + NAME_FUNC_OFFSET(21498, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, 696), + NAME_FUNC_OFFSET(21516, glWindowPos3fMESA, glWindowPos3fMESA, NULL, 697), + NAME_FUNC_OFFSET(21530, glWindowPos3fMESA, glWindowPos3fMESA, NULL, 697), + NAME_FUNC_OFFSET(21547, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, 698), + NAME_FUNC_OFFSET(21562, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, 698), + NAME_FUNC_OFFSET(21580, glWindowPos3iMESA, glWindowPos3iMESA, NULL, 699), + NAME_FUNC_OFFSET(21594, glWindowPos3iMESA, glWindowPos3iMESA, NULL, 699), + NAME_FUNC_OFFSET(21611, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, 700), + NAME_FUNC_OFFSET(21626, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, 700), + NAME_FUNC_OFFSET(21644, glWindowPos3sMESA, glWindowPos3sMESA, NULL, 701), + NAME_FUNC_OFFSET(21658, glWindowPos3sMESA, glWindowPos3sMESA, NULL, 701), + NAME_FUNC_OFFSET(21675, glWindowPos3svMESA, glWindowPos3svMESA, NULL, 702), + NAME_FUNC_OFFSET(21690, glWindowPos3svMESA, glWindowPos3svMESA, NULL, 702), + NAME_FUNC_OFFSET(21708, glBindProgramNV, glBindProgramNV, NULL, 721), + NAME_FUNC_OFFSET(21725, glDeleteProgramsNV, glDeleteProgramsNV, NULL, 722), + NAME_FUNC_OFFSET(21745, glGenProgramsNV, glGenProgramsNV, NULL, 724), + NAME_FUNC_OFFSET(21762, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, 730), + NAME_FUNC_OFFSET(21788, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, 730), + NAME_FUNC_OFFSET(21817, glIsProgramNV, glIsProgramNV, NULL, 734), + NAME_FUNC_OFFSET(21832, glPointParameteriNV, glPointParameteriNV, NULL, 798), + NAME_FUNC_OFFSET(21850, glPointParameterivNV, glPointParameterivNV, NULL, 799), + NAME_FUNC_OFFSET(21869, gl_dispatch_stub_802, gl_dispatch_stub_802, NULL, 802), + NAME_FUNC_OFFSET(21890, gl_dispatch_stub_804, gl_dispatch_stub_804, NULL, 804), + NAME_FUNC_OFFSET(21906, glPrimitiveRestartIndexNV, glPrimitiveRestartIndexNV, NULL, 811), + NAME_FUNC_OFFSET(21930, gl_dispatch_stub_814, gl_dispatch_stub_814, NULL, 814), + NAME_FUNC_OFFSET(21954, gl_dispatch_stub_814, gl_dispatch_stub_814, NULL, 814), + NAME_FUNC_OFFSET(21981, glBindFramebufferEXT, glBindFramebufferEXT, NULL, 815), + NAME_FUNC_OFFSET(21999, glBindRenderbufferEXT, glBindRenderbufferEXT, NULL, 816), + NAME_FUNC_OFFSET(22018, glCheckFramebufferStatusEXT, glCheckFramebufferStatusEXT, NULL, 817), + NAME_FUNC_OFFSET(22043, glDeleteFramebuffersEXT, glDeleteFramebuffersEXT, NULL, 818), + NAME_FUNC_OFFSET(22064, glDeleteRenderbuffersEXT, glDeleteRenderbuffersEXT, NULL, 819), + NAME_FUNC_OFFSET(22086, glFramebufferRenderbufferEXT, glFramebufferRenderbufferEXT, NULL, 820), + NAME_FUNC_OFFSET(22112, glFramebufferTexture1DEXT, glFramebufferTexture1DEXT, NULL, 821), + NAME_FUNC_OFFSET(22135, glFramebufferTexture2DEXT, glFramebufferTexture2DEXT, NULL, 822), + NAME_FUNC_OFFSET(22158, glFramebufferTexture3DEXT, glFramebufferTexture3DEXT, NULL, 823), + NAME_FUNC_OFFSET(22181, glGenFramebuffersEXT, glGenFramebuffersEXT, NULL, 824), + NAME_FUNC_OFFSET(22199, glGenRenderbuffersEXT, glGenRenderbuffersEXT, NULL, 825), + NAME_FUNC_OFFSET(22218, glGenerateMipmapEXT, glGenerateMipmapEXT, NULL, 826), + NAME_FUNC_OFFSET(22235, glGetFramebufferAttachmentParameterivEXT, glGetFramebufferAttachmentParameterivEXT, NULL, 827), + NAME_FUNC_OFFSET(22273, glGetRenderbufferParameterivEXT, glGetRenderbufferParameterivEXT, NULL, 828), + NAME_FUNC_OFFSET(22302, glIsFramebufferEXT, glIsFramebufferEXT, NULL, 829), + NAME_FUNC_OFFSET(22318, glIsRenderbufferEXT, glIsRenderbufferEXT, NULL, 830), + NAME_FUNC_OFFSET(22335, glRenderbufferStorageEXT, glRenderbufferStorageEXT, NULL, 831), + NAME_FUNC_OFFSET(22357, gl_dispatch_stub_832, gl_dispatch_stub_832, NULL, 832), + NAME_FUNC_OFFSET(22375, glBindFragDataLocationEXT, glBindFragDataLocationEXT, NULL, 835), + NAME_FUNC_OFFSET(22398, glGetFragDataLocationEXT, glGetFragDataLocationEXT, NULL, 836), + NAME_FUNC_OFFSET(22420, glGetUniformuivEXT, glGetUniformuivEXT, NULL, 837), + NAME_FUNC_OFFSET(22436, glGetVertexAttribIivEXT, glGetVertexAttribIivEXT, NULL, 838), + NAME_FUNC_OFFSET(22457, glGetVertexAttribIuivEXT, glGetVertexAttribIuivEXT, NULL, 839), + NAME_FUNC_OFFSET(22479, glUniform1uiEXT, glUniform1uiEXT, NULL, 840), + NAME_FUNC_OFFSET(22492, glUniform1uivEXT, glUniform1uivEXT, NULL, 841), + NAME_FUNC_OFFSET(22506, glUniform2uiEXT, glUniform2uiEXT, NULL, 842), + NAME_FUNC_OFFSET(22519, glUniform2uivEXT, glUniform2uivEXT, NULL, 843), + NAME_FUNC_OFFSET(22533, glUniform3uiEXT, glUniform3uiEXT, NULL, 844), + NAME_FUNC_OFFSET(22546, glUniform3uivEXT, glUniform3uivEXT, NULL, 845), + NAME_FUNC_OFFSET(22560, glUniform4uiEXT, glUniform4uiEXT, NULL, 846), + NAME_FUNC_OFFSET(22573, glUniform4uivEXT, glUniform4uivEXT, NULL, 847), + NAME_FUNC_OFFSET(22587, glVertexAttribI1iEXT, glVertexAttribI1iEXT, NULL, 848), + NAME_FUNC_OFFSET(22605, glVertexAttribI1ivEXT, glVertexAttribI1ivEXT, NULL, 849), + NAME_FUNC_OFFSET(22624, glVertexAttribI1uiEXT, glVertexAttribI1uiEXT, NULL, 850), + NAME_FUNC_OFFSET(22643, glVertexAttribI1uivEXT, glVertexAttribI1uivEXT, NULL, 851), + NAME_FUNC_OFFSET(22663, glVertexAttribI2iEXT, glVertexAttribI2iEXT, NULL, 852), + NAME_FUNC_OFFSET(22681, glVertexAttribI2ivEXT, glVertexAttribI2ivEXT, NULL, 853), + NAME_FUNC_OFFSET(22700, glVertexAttribI2uiEXT, glVertexAttribI2uiEXT, NULL, 854), + NAME_FUNC_OFFSET(22719, glVertexAttribI2uivEXT, glVertexAttribI2uivEXT, NULL, 855), + NAME_FUNC_OFFSET(22739, glVertexAttribI3iEXT, glVertexAttribI3iEXT, NULL, 856), + NAME_FUNC_OFFSET(22757, glVertexAttribI3ivEXT, glVertexAttribI3ivEXT, NULL, 857), + NAME_FUNC_OFFSET(22776, glVertexAttribI3uiEXT, glVertexAttribI3uiEXT, NULL, 858), + NAME_FUNC_OFFSET(22795, glVertexAttribI3uivEXT, glVertexAttribI3uivEXT, NULL, 859), + NAME_FUNC_OFFSET(22815, glVertexAttribI4bvEXT, glVertexAttribI4bvEXT, NULL, 860), + NAME_FUNC_OFFSET(22834, glVertexAttribI4iEXT, glVertexAttribI4iEXT, NULL, 861), + NAME_FUNC_OFFSET(22852, glVertexAttribI4ivEXT, glVertexAttribI4ivEXT, NULL, 862), + NAME_FUNC_OFFSET(22871, glVertexAttribI4svEXT, glVertexAttribI4svEXT, NULL, 863), + NAME_FUNC_OFFSET(22890, glVertexAttribI4ubvEXT, glVertexAttribI4ubvEXT, NULL, 864), + NAME_FUNC_OFFSET(22910, glVertexAttribI4uiEXT, glVertexAttribI4uiEXT, NULL, 865), + NAME_FUNC_OFFSET(22929, glVertexAttribI4uivEXT, glVertexAttribI4uivEXT, NULL, 866), + NAME_FUNC_OFFSET(22949, glVertexAttribI4usvEXT, glVertexAttribI4usvEXT, NULL, 867), + NAME_FUNC_OFFSET(22969, glVertexAttribIPointerEXT, glVertexAttribIPointerEXT, NULL, 868), + NAME_FUNC_OFFSET(22992, glFramebufferTextureLayerEXT, glFramebufferTextureLayerEXT, NULL, 869), + NAME_FUNC_OFFSET(23018, glColorMaskIndexedEXT, glColorMaskIndexedEXT, NULL, 870), + NAME_FUNC_OFFSET(23031, glDisableIndexedEXT, glDisableIndexedEXT, NULL, 871), + NAME_FUNC_OFFSET(23042, glEnableIndexedEXT, glEnableIndexedEXT, NULL, 872), + NAME_FUNC_OFFSET(23052, glGetBooleanIndexedvEXT, glGetBooleanIndexedvEXT, NULL, 873), + NAME_FUNC_OFFSET(23068, glGetIntegerIndexedvEXT, glGetIntegerIndexedvEXT, NULL, 874), + NAME_FUNC_OFFSET(23084, glIsEnabledIndexedEXT, glIsEnabledIndexedEXT, NULL, 875), + NAME_FUNC_OFFSET(23097, glGetTexParameterIivEXT, glGetTexParameterIivEXT, NULL, 878), + NAME_FUNC_OFFSET(23118, glGetTexParameterIuivEXT, glGetTexParameterIuivEXT, NULL, 879), + NAME_FUNC_OFFSET(23140, glTexParameterIivEXT, glTexParameterIivEXT, NULL, 880), + NAME_FUNC_OFFSET(23158, glTexParameterIuivEXT, glTexParameterIuivEXT, NULL, 881), + NAME_FUNC_OFFSET(23177, glBeginConditionalRenderNV, glBeginConditionalRenderNV, NULL, 882), + NAME_FUNC_OFFSET(23202, glEndConditionalRenderNV, glEndConditionalRenderNV, NULL, 883), + NAME_FUNC_OFFSET(23225, glBeginTransformFeedbackEXT, glBeginTransformFeedbackEXT, NULL, 884), + NAME_FUNC_OFFSET(23250, glBindBufferBaseEXT, glBindBufferBaseEXT, NULL, 885), + NAME_FUNC_OFFSET(23267, glBindBufferRangeEXT, glBindBufferRangeEXT, NULL, 887), + NAME_FUNC_OFFSET(23285, glEndTransformFeedbackEXT, glEndTransformFeedbackEXT, NULL, 888), + NAME_FUNC_OFFSET(23308, glGetTransformFeedbackVaryingEXT, glGetTransformFeedbackVaryingEXT, NULL, 889), + NAME_FUNC_OFFSET(23338, glTransformFeedbackVaryingsEXT, glTransformFeedbackVaryingsEXT, NULL, 890), + NAME_FUNC_OFFSET(23366, glProvokingVertexEXT, glProvokingVertexEXT, NULL, 891), NAME_FUNC_OFFSET(-1, NULL, NULL, NULL, 0) }; diff --git a/src/mesa/main/enums.c b/src/mesa/main/enums.c index f57ad2f1384..98cbbf53b85 100644 --- a/src/mesa/main/enums.c +++ b/src/mesa/main/enums.c @@ -1746,6 +1746,7 @@ LONGSTRING static const char enum_string_table[] = "GL_SAMPLER_2D_SHADOW\0" "GL_SAMPLER_3D\0" "GL_SAMPLER_3D_OES\0" + "GL_SAMPLER_BINDING\0" "GL_SAMPLER_BUFFER\0" "GL_SAMPLER_BUFFER_EXT\0" "GL_SAMPLER_CUBE\0" @@ -2344,7 +2345,7 @@ LONGSTRING static const char enum_string_table[] = "GL_ZOOM_Y\0" ; -static const enum_elt all_enums[2305] = +static const enum_elt all_enums[2306] = { { 0, 0x00000600 }, /* GL_2D */ { 6, 0x00001407 }, /* GL_2_BYTES */ @@ -4055,620 +4056,621 @@ static const enum_elt all_enums[2305] = { 37768, 0x00008B62 }, /* GL_SAMPLER_2D_SHADOW */ { 37789, 0x00008B5F }, /* GL_SAMPLER_3D */ { 37803, 0x00008B5F }, /* GL_SAMPLER_3D_OES */ - { 37821, 0x00008DC2 }, /* GL_SAMPLER_BUFFER */ - { 37839, 0x00008DC2 }, /* GL_SAMPLER_BUFFER_EXT */ - { 37861, 0x00008B60 }, /* GL_SAMPLER_CUBE */ - { 37877, 0x00008DC5 }, /* GL_SAMPLER_CUBE_SHADOW */ - { 37900, 0x00008DC5 }, /* GL_SAMPLER_CUBE_SHADOW_EXT */ - { 37927, 0x000080A9 }, /* GL_SAMPLES */ - { 37938, 0x000086B4 }, /* GL_SAMPLES_3DFX */ - { 37954, 0x000080A9 }, /* GL_SAMPLES_ARB */ - { 37969, 0x00008914 }, /* GL_SAMPLES_PASSED */ - { 37987, 0x00008914 }, /* GL_SAMPLES_PASSED_ARB */ - { 38009, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ - { 38037, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE_ARB */ - { 38069, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE */ - { 38092, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE_ARB */ - { 38119, 0x000080A8 }, /* GL_SAMPLE_BUFFERS */ - { 38137, 0x000086B3 }, /* GL_SAMPLE_BUFFERS_3DFX */ - { 38160, 0x000080A8 }, /* GL_SAMPLE_BUFFERS_ARB */ - { 38182, 0x000080A0 }, /* GL_SAMPLE_COVERAGE */ - { 38201, 0x000080A0 }, /* GL_SAMPLE_COVERAGE_ARB */ - { 38224, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT */ - { 38250, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT_ARB */ - { 38280, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE */ - { 38305, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE_ARB */ - { 38334, 0x00080000 }, /* GL_SCISSOR_BIT */ - { 38349, 0x00000C10 }, /* GL_SCISSOR_BOX */ - { 38364, 0x00000C11 }, /* GL_SCISSOR_TEST */ - { 38380, 0x0000845E }, /* GL_SECONDARY_COLOR_ARRAY */ - { 38405, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ - { 38445, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB */ - { 38489, 0x0000845D }, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ - { 38522, 0x0000845A }, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ - { 38552, 0x0000845C }, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ - { 38584, 0x0000845B }, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ - { 38614, 0x00001C02 }, /* GL_SELECT */ - { 38624, 0x00000DF3 }, /* GL_SELECTION_BUFFER_POINTER */ - { 38652, 0x00000DF4 }, /* GL_SELECTION_BUFFER_SIZE */ - { 38677, 0x00008012 }, /* GL_SEPARABLE_2D */ - { 38693, 0x00008C8D }, /* GL_SEPARATE_ATTRIBS */ - { 38713, 0x00008C8D }, /* GL_SEPARATE_ATTRIBS_EXT */ - { 38737, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR */ - { 38764, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR_EXT */ - { 38795, 0x0000150F }, /* GL_SET */ - { 38802, 0x00008DF8 }, /* GL_SHADER_BINARY_FORMATS */ - { 38827, 0x00008DFA }, /* GL_SHADER_COMPILER */ - { 38846, 0x00008B48 }, /* GL_SHADER_OBJECT_ARB */ - { 38867, 0x00008B88 }, /* GL_SHADER_SOURCE_LENGTH */ - { 38891, 0x00008B4F }, /* GL_SHADER_TYPE */ - { 38906, 0x00000B54 }, /* GL_SHADE_MODEL */ - { 38921, 0x00008B8C }, /* GL_SHADING_LANGUAGE_VERSION */ - { 38949, 0x000080BF }, /* GL_SHADOW_AMBIENT_SGIX */ - { 38972, 0x000081FB }, /* GL_SHARED_TEXTURE_PALETTE_EXT */ - { 39002, 0x00001601 }, /* GL_SHININESS */ - { 39015, 0x00001402 }, /* GL_SHORT */ - { 39024, 0x00009119 }, /* GL_SIGNALED */ - { 39036, 0x00008F9C }, /* GL_SIGNED_NORMALIZED */ - { 39057, 0x000081F9 }, /* GL_SINGLE_COLOR */ - { 39073, 0x000081F9 }, /* GL_SINGLE_COLOR_EXT */ - { 39093, 0x000085CC }, /* GL_SLICE_ACCUM_SUN */ - { 39112, 0x00008C46 }, /* GL_SLUMINANCE */ - { 39126, 0x00008C47 }, /* GL_SLUMINANCE8 */ - { 39141, 0x00008C45 }, /* GL_SLUMINANCE8_ALPHA8 */ - { 39163, 0x00008C44 }, /* GL_SLUMINANCE_ALPHA */ - { 39183, 0x00001D01 }, /* GL_SMOOTH */ - { 39193, 0x00000B23 }, /* GL_SMOOTH_LINE_WIDTH_GRANULARITY */ - { 39226, 0x00000B22 }, /* GL_SMOOTH_LINE_WIDTH_RANGE */ - { 39253, 0x00000B13 }, /* GL_SMOOTH_POINT_SIZE_GRANULARITY */ - { 39286, 0x00000B12 }, /* GL_SMOOTH_POINT_SIZE_RANGE */ - { 39313, 0x00008588 }, /* GL_SOURCE0_ALPHA */ - { 39330, 0x00008588 }, /* GL_SOURCE0_ALPHA_ARB */ - { 39351, 0x00008588 }, /* GL_SOURCE0_ALPHA_EXT */ - { 39372, 0x00008580 }, /* GL_SOURCE0_RGB */ - { 39387, 0x00008580 }, /* GL_SOURCE0_RGB_ARB */ - { 39406, 0x00008580 }, /* GL_SOURCE0_RGB_EXT */ - { 39425, 0x00008589 }, /* GL_SOURCE1_ALPHA */ - { 39442, 0x00008589 }, /* GL_SOURCE1_ALPHA_ARB */ - { 39463, 0x00008589 }, /* GL_SOURCE1_ALPHA_EXT */ - { 39484, 0x00008581 }, /* GL_SOURCE1_RGB */ - { 39499, 0x00008581 }, /* GL_SOURCE1_RGB_ARB */ - { 39518, 0x00008581 }, /* GL_SOURCE1_RGB_EXT */ - { 39537, 0x0000858A }, /* GL_SOURCE2_ALPHA */ - { 39554, 0x0000858A }, /* GL_SOURCE2_ALPHA_ARB */ - { 39575, 0x0000858A }, /* GL_SOURCE2_ALPHA_EXT */ - { 39596, 0x00008582 }, /* GL_SOURCE2_RGB */ - { 39611, 0x00008582 }, /* GL_SOURCE2_RGB_ARB */ - { 39630, 0x00008582 }, /* GL_SOURCE2_RGB_EXT */ - { 39649, 0x0000858B }, /* GL_SOURCE3_ALPHA_NV */ - { 39669, 0x00008583 }, /* GL_SOURCE3_RGB_NV */ - { 39687, 0x00001202 }, /* GL_SPECULAR */ - { 39699, 0x00002402 }, /* GL_SPHERE_MAP */ - { 39713, 0x00001206 }, /* GL_SPOT_CUTOFF */ - { 39728, 0x00001204 }, /* GL_SPOT_DIRECTION */ - { 39746, 0x00001205 }, /* GL_SPOT_EXPONENT */ - { 39763, 0x00008588 }, /* GL_SRC0_ALPHA */ - { 39777, 0x00008580 }, /* GL_SRC0_RGB */ - { 39789, 0x00008589 }, /* GL_SRC1_ALPHA */ - { 39803, 0x00008581 }, /* GL_SRC1_RGB */ - { 39815, 0x0000858A }, /* GL_SRC2_ALPHA */ - { 39829, 0x00008582 }, /* GL_SRC2_RGB */ - { 39841, 0x00000302 }, /* GL_SRC_ALPHA */ - { 39854, 0x00000308 }, /* GL_SRC_ALPHA_SATURATE */ - { 39876, 0x00000300 }, /* GL_SRC_COLOR */ - { 39889, 0x00008C40 }, /* GL_SRGB */ - { 39897, 0x00008C41 }, /* GL_SRGB8 */ - { 39906, 0x00008C43 }, /* GL_SRGB8_ALPHA8 */ - { 39922, 0x00008C42 }, /* GL_SRGB_ALPHA */ - { 39936, 0x00000503 }, /* GL_STACK_OVERFLOW */ - { 39954, 0x00000504 }, /* GL_STACK_UNDERFLOW */ - { 39973, 0x000088E6 }, /* GL_STATIC_COPY */ - { 39988, 0x000088E6 }, /* GL_STATIC_COPY_ARB */ - { 40007, 0x000088E4 }, /* GL_STATIC_DRAW */ - { 40022, 0x000088E4 }, /* GL_STATIC_DRAW_ARB */ - { 40041, 0x000088E5 }, /* GL_STATIC_READ */ - { 40056, 0x000088E5 }, /* GL_STATIC_READ_ARB */ - { 40075, 0x00001802 }, /* GL_STENCIL */ - { 40086, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT */ - { 40108, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_EXT */ - { 40134, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_OES */ - { 40160, 0x00008801 }, /* GL_STENCIL_BACK_FAIL */ - { 40181, 0x00008801 }, /* GL_STENCIL_BACK_FAIL_ATI */ - { 40206, 0x00008800 }, /* GL_STENCIL_BACK_FUNC */ - { 40227, 0x00008800 }, /* GL_STENCIL_BACK_FUNC_ATI */ - { 40252, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ - { 40284, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI */ - { 40320, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ - { 40352, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI */ - { 40388, 0x00008CA3 }, /* GL_STENCIL_BACK_REF */ - { 40408, 0x00008CA4 }, /* GL_STENCIL_BACK_VALUE_MASK */ - { 40435, 0x00008CA5 }, /* GL_STENCIL_BACK_WRITEMASK */ - { 40461, 0x00000D57 }, /* GL_STENCIL_BITS */ - { 40477, 0x00008224 }, /* GL_STENCIL_BUFFER */ - { 40495, 0x00000400 }, /* GL_STENCIL_BUFFER_BIT */ - { 40517, 0x00000B91 }, /* GL_STENCIL_CLEAR_VALUE */ - { 40540, 0x00000B94 }, /* GL_STENCIL_FAIL */ - { 40556, 0x00000B92 }, /* GL_STENCIL_FUNC */ - { 40572, 0x00001901 }, /* GL_STENCIL_INDEX */ - { 40589, 0x00008D46 }, /* GL_STENCIL_INDEX1 */ - { 40607, 0x00008D49 }, /* GL_STENCIL_INDEX16 */ - { 40626, 0x00008D49 }, /* GL_STENCIL_INDEX16_EXT */ - { 40649, 0x00008D46 }, /* GL_STENCIL_INDEX1_EXT */ - { 40671, 0x00008D46 }, /* GL_STENCIL_INDEX1_OES */ - { 40693, 0x00008D47 }, /* GL_STENCIL_INDEX4 */ - { 40711, 0x00008D47 }, /* GL_STENCIL_INDEX4_EXT */ - { 40733, 0x00008D47 }, /* GL_STENCIL_INDEX4_OES */ - { 40755, 0x00008D48 }, /* GL_STENCIL_INDEX8 */ - { 40773, 0x00008D48 }, /* GL_STENCIL_INDEX8_EXT */ - { 40795, 0x00008D48 }, /* GL_STENCIL_INDEX8_OES */ - { 40817, 0x00008D45 }, /* GL_STENCIL_INDEX_EXT */ - { 40838, 0x00000B95 }, /* GL_STENCIL_PASS_DEPTH_FAIL */ - { 40865, 0x00000B96 }, /* GL_STENCIL_PASS_DEPTH_PASS */ - { 40892, 0x00000B97 }, /* GL_STENCIL_REF */ - { 40907, 0x00000B90 }, /* GL_STENCIL_TEST */ - { 40923, 0x00008910 }, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ - { 40952, 0x00000B93 }, /* GL_STENCIL_VALUE_MASK */ - { 40974, 0x00000B98 }, /* GL_STENCIL_WRITEMASK */ - { 40995, 0x00000C33 }, /* GL_STEREO */ - { 41005, 0x000085BE }, /* GL_STORAGE_CACHED_APPLE */ - { 41029, 0x000085BD }, /* GL_STORAGE_PRIVATE_APPLE */ - { 41054, 0x000085BF }, /* GL_STORAGE_SHARED_APPLE */ - { 41078, 0x000088E2 }, /* GL_STREAM_COPY */ - { 41093, 0x000088E2 }, /* GL_STREAM_COPY_ARB */ - { 41112, 0x000088E0 }, /* GL_STREAM_DRAW */ - { 41127, 0x000088E0 }, /* GL_STREAM_DRAW_ARB */ - { 41146, 0x000088E1 }, /* GL_STREAM_READ */ - { 41161, 0x000088E1 }, /* GL_STREAM_READ_ARB */ - { 41180, 0x00000D50 }, /* GL_SUBPIXEL_BITS */ - { 41197, 0x000084E7 }, /* GL_SUBTRACT */ - { 41209, 0x000084E7 }, /* GL_SUBTRACT_ARB */ - { 41225, 0x00009113 }, /* GL_SYNC_CONDITION */ - { 41243, 0x00009116 }, /* GL_SYNC_FENCE */ - { 41257, 0x00009115 }, /* GL_SYNC_FLAGS */ - { 41271, 0x00000001 }, /* GL_SYNC_FLUSH_COMMANDS_BIT */ - { 41298, 0x00009117 }, /* GL_SYNC_GPU_COMMANDS_COMPLETE */ - { 41328, 0x00009114 }, /* GL_SYNC_STATUS */ - { 41343, 0x00002001 }, /* GL_T */ - { 41348, 0x00002A2A }, /* GL_T2F_C3F_V3F */ - { 41363, 0x00002A2C }, /* GL_T2F_C4F_N3F_V3F */ - { 41382, 0x00002A29 }, /* GL_T2F_C4UB_V3F */ - { 41398, 0x00002A2B }, /* GL_T2F_N3F_V3F */ - { 41413, 0x00002A27 }, /* GL_T2F_V3F */ - { 41424, 0x00002A2D }, /* GL_T4F_C4F_N3F_V4F */ - { 41443, 0x00002A28 }, /* GL_T4F_V4F */ - { 41454, 0x00008031 }, /* GL_TABLE_TOO_LARGE_EXT */ - { 41477, 0x00001702 }, /* GL_TEXTURE */ - { 41488, 0x000084C0 }, /* GL_TEXTURE0 */ - { 41500, 0x000084C0 }, /* GL_TEXTURE0_ARB */ - { 41516, 0x000084C1 }, /* GL_TEXTURE1 */ - { 41528, 0x000084CA }, /* GL_TEXTURE10 */ - { 41541, 0x000084CA }, /* GL_TEXTURE10_ARB */ - { 41558, 0x000084CB }, /* GL_TEXTURE11 */ - { 41571, 0x000084CB }, /* GL_TEXTURE11_ARB */ - { 41588, 0x000084CC }, /* GL_TEXTURE12 */ - { 41601, 0x000084CC }, /* GL_TEXTURE12_ARB */ - { 41618, 0x000084CD }, /* GL_TEXTURE13 */ - { 41631, 0x000084CD }, /* GL_TEXTURE13_ARB */ - { 41648, 0x000084CE }, /* GL_TEXTURE14 */ - { 41661, 0x000084CE }, /* GL_TEXTURE14_ARB */ - { 41678, 0x000084CF }, /* GL_TEXTURE15 */ - { 41691, 0x000084CF }, /* GL_TEXTURE15_ARB */ - { 41708, 0x000084D0 }, /* GL_TEXTURE16 */ - { 41721, 0x000084D0 }, /* GL_TEXTURE16_ARB */ - { 41738, 0x000084D1 }, /* GL_TEXTURE17 */ - { 41751, 0x000084D1 }, /* GL_TEXTURE17_ARB */ - { 41768, 0x000084D2 }, /* GL_TEXTURE18 */ - { 41781, 0x000084D2 }, /* GL_TEXTURE18_ARB */ - { 41798, 0x000084D3 }, /* GL_TEXTURE19 */ - { 41811, 0x000084D3 }, /* GL_TEXTURE19_ARB */ - { 41828, 0x000084C1 }, /* GL_TEXTURE1_ARB */ - { 41844, 0x000084C2 }, /* GL_TEXTURE2 */ - { 41856, 0x000084D4 }, /* GL_TEXTURE20 */ - { 41869, 0x000084D4 }, /* GL_TEXTURE20_ARB */ - { 41886, 0x000084D5 }, /* GL_TEXTURE21 */ - { 41899, 0x000084D5 }, /* GL_TEXTURE21_ARB */ - { 41916, 0x000084D6 }, /* GL_TEXTURE22 */ - { 41929, 0x000084D6 }, /* GL_TEXTURE22_ARB */ - { 41946, 0x000084D7 }, /* GL_TEXTURE23 */ - { 41959, 0x000084D7 }, /* GL_TEXTURE23_ARB */ - { 41976, 0x000084D8 }, /* GL_TEXTURE24 */ - { 41989, 0x000084D8 }, /* GL_TEXTURE24_ARB */ - { 42006, 0x000084D9 }, /* GL_TEXTURE25 */ - { 42019, 0x000084D9 }, /* GL_TEXTURE25_ARB */ - { 42036, 0x000084DA }, /* GL_TEXTURE26 */ - { 42049, 0x000084DA }, /* GL_TEXTURE26_ARB */ - { 42066, 0x000084DB }, /* GL_TEXTURE27 */ - { 42079, 0x000084DB }, /* GL_TEXTURE27_ARB */ - { 42096, 0x000084DC }, /* GL_TEXTURE28 */ - { 42109, 0x000084DC }, /* GL_TEXTURE28_ARB */ - { 42126, 0x000084DD }, /* GL_TEXTURE29 */ - { 42139, 0x000084DD }, /* GL_TEXTURE29_ARB */ - { 42156, 0x000084C2 }, /* GL_TEXTURE2_ARB */ - { 42172, 0x000084C3 }, /* GL_TEXTURE3 */ - { 42184, 0x000084DE }, /* GL_TEXTURE30 */ - { 42197, 0x000084DE }, /* GL_TEXTURE30_ARB */ - { 42214, 0x000084DF }, /* GL_TEXTURE31 */ - { 42227, 0x000084DF }, /* GL_TEXTURE31_ARB */ - { 42244, 0x000084C3 }, /* GL_TEXTURE3_ARB */ - { 42260, 0x000084C4 }, /* GL_TEXTURE4 */ - { 42272, 0x000084C4 }, /* GL_TEXTURE4_ARB */ - { 42288, 0x000084C5 }, /* GL_TEXTURE5 */ - { 42300, 0x000084C5 }, /* GL_TEXTURE5_ARB */ - { 42316, 0x000084C6 }, /* GL_TEXTURE6 */ - { 42328, 0x000084C6 }, /* GL_TEXTURE6_ARB */ - { 42344, 0x000084C7 }, /* GL_TEXTURE7 */ - { 42356, 0x000084C7 }, /* GL_TEXTURE7_ARB */ - { 42372, 0x000084C8 }, /* GL_TEXTURE8 */ - { 42384, 0x000084C8 }, /* GL_TEXTURE8_ARB */ - { 42400, 0x000084C9 }, /* GL_TEXTURE9 */ - { 42412, 0x000084C9 }, /* GL_TEXTURE9_ARB */ - { 42428, 0x00000DE0 }, /* GL_TEXTURE_1D */ - { 42442, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY */ - { 42462, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY_EXT */ - { 42486, 0x00000DE1 }, /* GL_TEXTURE_2D */ - { 42500, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY */ - { 42520, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY_EXT */ - { 42544, 0x0000806F }, /* GL_TEXTURE_3D */ - { 42558, 0x0000806F }, /* GL_TEXTURE_3D_OES */ - { 42576, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE */ - { 42598, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE_EXT */ - { 42624, 0x0000813C }, /* GL_TEXTURE_BASE_LEVEL */ - { 42646, 0x00008068 }, /* GL_TEXTURE_BINDING_1D */ - { 42668, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY */ - { 42696, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY_EXT */ - { 42728, 0x00008069 }, /* GL_TEXTURE_BINDING_2D */ - { 42750, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY */ - { 42778, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY_EXT */ - { 42810, 0x0000806A }, /* GL_TEXTURE_BINDING_3D */ - { 42832, 0x0000806A }, /* GL_TEXTURE_BINDING_3D_OES */ - { 42858, 0x00008C2C }, /* GL_TEXTURE_BINDING_BUFFER */ - { 42884, 0x00008C2C }, /* GL_TEXTURE_BINDING_BUFFER_ARB */ - { 42914, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP */ - { 42942, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_ARB */ - { 42974, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_OES */ - { 43006, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE */ - { 43035, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_ARB */ - { 43068, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_NV */ - { 43100, 0x00040000 }, /* GL_TEXTURE_BIT */ - { 43115, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE */ - { 43136, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE_EXT */ - { 43161, 0x00001005 }, /* GL_TEXTURE_BORDER */ - { 43179, 0x00001004 }, /* GL_TEXTURE_BORDER_COLOR */ - { 43203, 0x00008C2A }, /* GL_TEXTURE_BUFFER */ - { 43221, 0x00008C2A }, /* GL_TEXTURE_BUFFER_ARB */ - { 43243, 0x00008C2D }, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING */ - { 43280, 0x00008C2D }, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB */ - { 43321, 0x00008C2E }, /* GL_TEXTURE_BUFFER_FORMAT */ - { 43346, 0x00008C2E }, /* GL_TEXTURE_BUFFER_FORMAT_ARB */ - { 43375, 0x00008171 }, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ - { 43406, 0x00008176 }, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ - { 43436, 0x00008172 }, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ - { 43466, 0x00008175 }, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ - { 43501, 0x00008173 }, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ - { 43532, 0x00008174 }, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ - { 43570, 0x000080BC }, /* GL_TEXTURE_COLOR_TABLE_SGI */ - { 43597, 0x000081EF }, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ - { 43629, 0x000080BF }, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */ - { 43663, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC */ - { 43687, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC_ARB */ - { 43715, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE */ - { 43739, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE_ARB */ - { 43767, 0x0000819B }, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ - { 43800, 0x0000819A }, /* GL_TEXTURE_COMPARE_SGIX */ - { 43824, 0x00001003 }, /* GL_TEXTURE_COMPONENTS */ - { 43846, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED */ - { 43868, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED_ARB */ - { 43894, 0x000086A3 }, /* GL_TEXTURE_COMPRESSED_FORMATS_ARB */ - { 43928, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ - { 43961, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB */ - { 43998, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT */ - { 44026, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT_ARB */ - { 44058, 0x00008078 }, /* GL_TEXTURE_COORD_ARRAY */ - { 44081, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ - { 44119, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB */ - { 44161, 0x00008092 }, /* GL_TEXTURE_COORD_ARRAY_POINTER */ - { 44192, 0x00008088 }, /* GL_TEXTURE_COORD_ARRAY_SIZE */ - { 44220, 0x0000808A }, /* GL_TEXTURE_COORD_ARRAY_STRIDE */ - { 44250, 0x00008089 }, /* GL_TEXTURE_COORD_ARRAY_TYPE */ - { 44278, 0x00008B9D }, /* GL_TEXTURE_CROP_RECT_OES */ - { 44303, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP */ - { 44323, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_ARB */ - { 44347, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ - { 44378, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB */ - { 44413, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES */ - { 44448, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ - { 44479, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB */ - { 44514, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES */ - { 44549, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ - { 44580, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB */ - { 44615, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES */ - { 44650, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_OES */ - { 44674, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ - { 44705, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB */ - { 44740, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES */ - { 44775, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ - { 44806, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB */ - { 44841, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES */ - { 44876, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ - { 44907, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB */ - { 44942, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES */ - { 44977, 0x000088F4 }, /* GL_TEXTURE_CUBE_MAP_SEAMLESS */ - { 45006, 0x00008071 }, /* GL_TEXTURE_DEPTH */ - { 45023, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE */ - { 45045, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE_ARB */ - { 45071, 0x00002300 }, /* GL_TEXTURE_ENV */ - { 45086, 0x00002201 }, /* GL_TEXTURE_ENV_COLOR */ - { 45107, 0x00002200 }, /* GL_TEXTURE_ENV_MODE */ - { 45127, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL */ - { 45153, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL_EXT */ - { 45183, 0x00002500 }, /* GL_TEXTURE_GEN_MODE */ - { 45203, 0x00002500 }, /* GL_TEXTURE_GEN_MODE_OES */ - { 45227, 0x00000C63 }, /* GL_TEXTURE_GEN_Q */ - { 45244, 0x00000C62 }, /* GL_TEXTURE_GEN_R */ - { 45261, 0x00000C60 }, /* GL_TEXTURE_GEN_S */ - { 45278, 0x00008D60 }, /* GL_TEXTURE_GEN_STR_OES */ - { 45301, 0x00000C61 }, /* GL_TEXTURE_GEN_T */ - { 45318, 0x0000819D }, /* GL_TEXTURE_GEQUAL_R_SGIX */ - { 45343, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE */ - { 45365, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE_EXT */ - { 45391, 0x00001001 }, /* GL_TEXTURE_HEIGHT */ - { 45409, 0x000080ED }, /* GL_TEXTURE_INDEX_SIZE_EXT */ - { 45435, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE */ - { 45461, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE_EXT */ - { 45491, 0x00001003 }, /* GL_TEXTURE_INTERNAL_FORMAT */ - { 45518, 0x0000819C }, /* GL_TEXTURE_LEQUAL_R_SGIX */ - { 45543, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS */ - { 45563, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS_EXT */ - { 45587, 0x00008190 }, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ - { 45614, 0x0000818E }, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ - { 45641, 0x0000818F }, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ - { 45668, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE */ - { 45694, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE_EXT */ - { 45724, 0x00002800 }, /* GL_TEXTURE_MAG_FILTER */ - { 45746, 0x00000BA8 }, /* GL_TEXTURE_MATRIX */ - { 45764, 0x0000898F }, /* GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES */ - { 45804, 0x000084FE }, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ - { 45834, 0x0000836B }, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ - { 45862, 0x00008369 }, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ - { 45890, 0x0000836A }, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ - { 45918, 0x0000813D }, /* GL_TEXTURE_MAX_LEVEL */ - { 45939, 0x0000813B }, /* GL_TEXTURE_MAX_LOD */ - { 45958, 0x00002801 }, /* GL_TEXTURE_MIN_FILTER */ - { 45980, 0x0000813A }, /* GL_TEXTURE_MIN_LOD */ - { 45999, 0x00008066 }, /* GL_TEXTURE_PRIORITY */ - { 46019, 0x000085B7 }, /* GL_TEXTURE_RANGE_LENGTH_APPLE */ - { 46049, 0x000085B8 }, /* GL_TEXTURE_RANGE_POINTER_APPLE */ - { 46080, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE */ - { 46101, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_ARB */ - { 46126, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_NV */ - { 46150, 0x0000805C }, /* GL_TEXTURE_RED_SIZE */ - { 46170, 0x0000805C }, /* GL_TEXTURE_RED_SIZE_EXT */ - { 46194, 0x00008067 }, /* GL_TEXTURE_RESIDENT */ - { 46214, 0x00008C3F }, /* GL_TEXTURE_SHARED_SIZE */ - { 46237, 0x00000BA5 }, /* GL_TEXTURE_STACK_DEPTH */ - { 46260, 0x000088F1 }, /* GL_TEXTURE_STENCIL_SIZE */ - { 46284, 0x000088F1 }, /* GL_TEXTURE_STENCIL_SIZE_EXT */ - { 46312, 0x000085BC }, /* GL_TEXTURE_STORAGE_HINT_APPLE */ - { 46342, 0x00008065 }, /* GL_TEXTURE_TOO_LARGE_EXT */ - { 46367, 0x0000888F }, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */ - { 46401, 0x00001000 }, /* GL_TEXTURE_WIDTH */ - { 46418, 0x00008072 }, /* GL_TEXTURE_WRAP_R */ - { 46436, 0x00008072 }, /* GL_TEXTURE_WRAP_R_OES */ - { 46458, 0x00002802 }, /* GL_TEXTURE_WRAP_S */ - { 46476, 0x00002803 }, /* GL_TEXTURE_WRAP_T */ - { 46494, 0x0000911B }, /* GL_TIMEOUT_EXPIRED */ - { 46513, 0x000088BF }, /* GL_TIME_ELAPSED_EXT */ - { 46533, 0x00008648 }, /* GL_TRACK_MATRIX_NV */ - { 46552, 0x00008649 }, /* GL_TRACK_MATRIX_TRANSFORM_NV */ - { 46581, 0x00001000 }, /* GL_TRANSFORM_BIT */ - { 46598, 0x00008E22 }, /* GL_TRANSFORM_FEEDBACK */ - { 46620, 0x00008E25 }, /* GL_TRANSFORM_FEEDBACK_BINDING */ - { 46650, 0x00008C8E }, /* GL_TRANSFORM_FEEDBACK_BUFFER */ - { 46679, 0x00008E24 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE */ - { 46715, 0x00008C8F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING */ - { 46752, 0x00008C8F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT */ - { 46793, 0x00008C8E }, /* GL_TRANSFORM_FEEDBACK_BUFFER_EXT */ - { 46826, 0x00008C7F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE */ - { 46860, 0x00008C7F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE_EXT */ - { 46898, 0x00008E23 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED */ - { 46934, 0x00008C85 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE */ - { 46968, 0x00008C85 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT */ - { 47006, 0x00008C84 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_START */ - { 47041, 0x00008C84 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT */ - { 47080, 0x00008C88 }, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN */ - { 47121, 0x00008C88 }, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT */ - { 47166, 0x00008C83 }, /* GL_TRANSFORM_FEEDBACK_VARYINGS */ - { 47197, 0x00008C83 }, /* GL_TRANSFORM_FEEDBACK_VARYINGS_EXT */ - { 47232, 0x00008C76 }, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH */ - { 47273, 0x00008C76 }, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT */ - { 47318, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX */ - { 47344, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX_ARB */ - { 47374, 0x000088B7 }, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ - { 47406, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ - { 47436, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX_ARB */ - { 47470, 0x0000862C }, /* GL_TRANSPOSE_NV */ - { 47486, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX */ - { 47517, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX_ARB */ - { 47552, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX */ - { 47580, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX_ARB */ - { 47612, 0x00000004 }, /* GL_TRIANGLES */ - { 47625, 0x0000000C }, /* GL_TRIANGLES_ADJACENCY */ - { 47648, 0x0000000C }, /* GL_TRIANGLES_ADJACENCY_ARB */ - { 47675, 0x00000006 }, /* GL_TRIANGLE_FAN */ - { 47691, 0x00008615 }, /* GL_TRIANGLE_MESH_SUN */ - { 47712, 0x00000005 }, /* GL_TRIANGLE_STRIP */ - { 47730, 0x0000000D }, /* GL_TRIANGLE_STRIP_ADJACENCY */ - { 47758, 0x0000000D }, /* GL_TRIANGLE_STRIP_ADJACENCY_ARB */ - { 47790, 0x00000001 }, /* GL_TRUE */ - { 47798, 0x00008A1C }, /* GL_UNDEFINED_APPLE */ - { 47817, 0x00000CF5 }, /* GL_UNPACK_ALIGNMENT */ - { 47837, 0x0000806E }, /* GL_UNPACK_IMAGE_HEIGHT */ - { 47860, 0x00000CF1 }, /* GL_UNPACK_LSB_FIRST */ - { 47880, 0x00000CF2 }, /* GL_UNPACK_ROW_LENGTH */ - { 47901, 0x0000806D }, /* GL_UNPACK_SKIP_IMAGES */ - { 47923, 0x00000CF4 }, /* GL_UNPACK_SKIP_PIXELS */ - { 47945, 0x00000CF3 }, /* GL_UNPACK_SKIP_ROWS */ - { 47965, 0x00000CF0 }, /* GL_UNPACK_SWAP_BYTES */ - { 47986, 0x00009118 }, /* GL_UNSIGNALED */ - { 48000, 0x00001401 }, /* GL_UNSIGNED_BYTE */ - { 48017, 0x00008362 }, /* GL_UNSIGNED_BYTE_2_3_3_REV */ - { 48044, 0x00008032 }, /* GL_UNSIGNED_BYTE_3_3_2 */ - { 48067, 0x00001405 }, /* GL_UNSIGNED_INT */ - { 48083, 0x00008C3B }, /* GL_UNSIGNED_INT_10F_11F_11F_REV */ - { 48115, 0x00008036 }, /* GL_UNSIGNED_INT_10_10_10_2 */ - { 48142, 0x00008DF6 }, /* GL_UNSIGNED_INT_10_10_10_2_OES */ - { 48173, 0x000084FA }, /* GL_UNSIGNED_INT_24_8 */ - { 48194, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_EXT */ - { 48219, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_NV */ - { 48243, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_OES */ - { 48268, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV */ - { 48299, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV_EXT */ - { 48334, 0x00008C3E }, /* GL_UNSIGNED_INT_5_9_9_9_REV */ - { 48362, 0x00008035 }, /* GL_UNSIGNED_INT_8_8_8_8 */ - { 48386, 0x00008367 }, /* GL_UNSIGNED_INT_8_8_8_8_REV */ - { 48414, 0x00008DD1 }, /* GL_UNSIGNED_INT_SAMPLER_1D */ - { 48441, 0x00008DD6 }, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY */ - { 48474, 0x00008DD6 }, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT */ - { 48511, 0x00008DD1 }, /* GL_UNSIGNED_INT_SAMPLER_1D_EXT */ - { 48542, 0x00008DD2 }, /* GL_UNSIGNED_INT_SAMPLER_2D */ - { 48569, 0x00008DD7 }, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY */ - { 48602, 0x00008DD7 }, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT */ - { 48639, 0x00008DD2 }, /* GL_UNSIGNED_INT_SAMPLER_2D_EXT */ - { 48670, 0x00008DD5 }, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT */ - { 48702, 0x00008DD5 }, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT */ - { 48738, 0x00008DD3 }, /* GL_UNSIGNED_INT_SAMPLER_3D */ - { 48765, 0x00008DD3 }, /* GL_UNSIGNED_INT_SAMPLER_3D_EXT */ - { 48796, 0x00008DD8 }, /* GL_UNSIGNED_INT_SAMPLER_BUFFER */ - { 48827, 0x00008DD8 }, /* GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT */ - { 48862, 0x00008DD4 }, /* GL_UNSIGNED_INT_SAMPLER_CUBE */ - { 48891, 0x00008DD4 }, /* GL_UNSIGNED_INT_SAMPLER_CUBE_EXT */ - { 48924, 0x00008DC6 }, /* GL_UNSIGNED_INT_VEC2 */ - { 48945, 0x00008DC6 }, /* GL_UNSIGNED_INT_VEC2_EXT */ - { 48970, 0x00008DC7 }, /* GL_UNSIGNED_INT_VEC3 */ - { 48991, 0x00008DC7 }, /* GL_UNSIGNED_INT_VEC3_EXT */ - { 49016, 0x00008DC8 }, /* GL_UNSIGNED_INT_VEC4 */ - { 49037, 0x00008DC8 }, /* GL_UNSIGNED_INT_VEC4_EXT */ - { 49062, 0x00008C17 }, /* GL_UNSIGNED_NORMALIZED */ - { 49085, 0x00001403 }, /* GL_UNSIGNED_SHORT */ - { 49103, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ - { 49133, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT */ - { 49167, 0x00008033 }, /* GL_UNSIGNED_SHORT_4_4_4_4 */ - { 49193, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ - { 49223, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT */ - { 49257, 0x00008034 }, /* GL_UNSIGNED_SHORT_5_5_5_1 */ - { 49283, 0x00008363 }, /* GL_UNSIGNED_SHORT_5_6_5 */ - { 49307, 0x00008364 }, /* GL_UNSIGNED_SHORT_5_6_5_REV */ - { 49335, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_APPLE */ - { 49363, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_MESA */ - { 49390, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ - { 49422, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_MESA */ - { 49453, 0x00008CA2 }, /* GL_UPPER_LEFT */ - { 49467, 0x00002A20 }, /* GL_V2F */ - { 49474, 0x00002A21 }, /* GL_V3F */ - { 49481, 0x00008B83 }, /* GL_VALIDATE_STATUS */ - { 49500, 0x00001F00 }, /* GL_VENDOR */ - { 49510, 0x00001F02 }, /* GL_VERSION */ - { 49521, 0x00008074 }, /* GL_VERTEX_ARRAY */ - { 49537, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING */ - { 49561, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING_APPLE */ - { 49591, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ - { 49622, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING_ARB */ - { 49657, 0x0000808E }, /* GL_VERTEX_ARRAY_POINTER */ - { 49681, 0x0000807A }, /* GL_VERTEX_ARRAY_SIZE */ - { 49702, 0x0000807C }, /* GL_VERTEX_ARRAY_STRIDE */ - { 49725, 0x0000807B }, /* GL_VERTEX_ARRAY_TYPE */ - { 49746, 0x00008650 }, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ - { 49773, 0x0000865A }, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ - { 49801, 0x0000865B }, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ - { 49829, 0x0000865C }, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ - { 49857, 0x0000865D }, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ - { 49885, 0x0000865E }, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ - { 49913, 0x0000865F }, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ - { 49941, 0x00008651 }, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ - { 49968, 0x00008652 }, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ - { 49995, 0x00008653 }, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ - { 50022, 0x00008654 }, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ - { 50049, 0x00008655 }, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ - { 50076, 0x00008656 }, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ - { 50103, 0x00008657 }, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ - { 50130, 0x00008658 }, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ - { 50157, 0x00008659 }, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ - { 50184, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ - { 50222, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB */ - { 50264, 0x000088FE }, /* GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB */ - { 50299, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ - { 50330, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB */ - { 50365, 0x000088FD }, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER */ - { 50396, 0x000088FD }, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT */ - { 50431, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ - { 50465, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB */ - { 50503, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ - { 50534, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB */ - { 50569, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ - { 50597, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB */ - { 50629, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ - { 50659, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB */ - { 50693, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ - { 50721, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB */ - { 50753, 0x000086A7 }, /* GL_VERTEX_BLEND_ARB */ - { 50773, 0x00008620 }, /* GL_VERTEX_PROGRAM_ARB */ - { 50795, 0x0000864A }, /* GL_VERTEX_PROGRAM_BINDING_NV */ - { 50824, 0x00008620 }, /* GL_VERTEX_PROGRAM_NV */ - { 50845, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE */ - { 50874, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_ARB */ - { 50907, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_NV */ - { 50939, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE */ - { 50966, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_ARB */ - { 50997, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_NV */ - { 51027, 0x00008B31 }, /* GL_VERTEX_SHADER */ - { 51044, 0x00008B31 }, /* GL_VERTEX_SHADER_ARB */ - { 51065, 0x00008621 }, /* GL_VERTEX_STATE_PROGRAM_NV */ - { 51092, 0x00000BA2 }, /* GL_VIEWPORT */ - { 51104, 0x00000800 }, /* GL_VIEWPORT_BIT */ - { 51120, 0x00008A1A }, /* GL_VOLATILE_APPLE */ - { 51138, 0x0000911D }, /* GL_WAIT_FAILED */ - { 51153, 0x000086AD }, /* GL_WEIGHT_ARRAY_ARB */ - { 51173, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ - { 51204, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB */ - { 51239, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_OES */ - { 51274, 0x000086AD }, /* GL_WEIGHT_ARRAY_OES */ - { 51294, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_ARB */ - { 51322, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_OES */ - { 51350, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_ARB */ - { 51375, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_OES */ - { 51400, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ - { 51427, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_OES */ - { 51454, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_ARB */ - { 51479, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_OES */ - { 51504, 0x000086A6 }, /* GL_WEIGHT_SUM_UNITY_ARB */ - { 51528, 0x000081D4 }, /* GL_WRAP_BORDER_SUN */ - { 51547, 0x000088B9 }, /* GL_WRITE_ONLY */ - { 51561, 0x000088B9 }, /* GL_WRITE_ONLY_ARB */ - { 51579, 0x000088B9 }, /* GL_WRITE_ONLY_OES */ - { 51597, 0x00001506 }, /* GL_XOR */ - { 51604, 0x000085B9 }, /* GL_YCBCR_422_APPLE */ - { 51623, 0x00008757 }, /* GL_YCBCR_MESA */ - { 51637, 0x00000000 }, /* GL_ZERO */ - { 51645, 0x00000D16 }, /* GL_ZOOM_X */ - { 51655, 0x00000D17 }, /* GL_ZOOM_Y */ + { 37821, 0x00008919 }, /* GL_SAMPLER_BINDING */ + { 37840, 0x00008DC2 }, /* GL_SAMPLER_BUFFER */ + { 37858, 0x00008DC2 }, /* GL_SAMPLER_BUFFER_EXT */ + { 37880, 0x00008B60 }, /* GL_SAMPLER_CUBE */ + { 37896, 0x00008DC5 }, /* GL_SAMPLER_CUBE_SHADOW */ + { 37919, 0x00008DC5 }, /* GL_SAMPLER_CUBE_SHADOW_EXT */ + { 37946, 0x000080A9 }, /* GL_SAMPLES */ + { 37957, 0x000086B4 }, /* GL_SAMPLES_3DFX */ + { 37973, 0x000080A9 }, /* GL_SAMPLES_ARB */ + { 37988, 0x00008914 }, /* GL_SAMPLES_PASSED */ + { 38006, 0x00008914 }, /* GL_SAMPLES_PASSED_ARB */ + { 38028, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ + { 38056, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE_ARB */ + { 38088, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE */ + { 38111, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE_ARB */ + { 38138, 0x000080A8 }, /* GL_SAMPLE_BUFFERS */ + { 38156, 0x000086B3 }, /* GL_SAMPLE_BUFFERS_3DFX */ + { 38179, 0x000080A8 }, /* GL_SAMPLE_BUFFERS_ARB */ + { 38201, 0x000080A0 }, /* GL_SAMPLE_COVERAGE */ + { 38220, 0x000080A0 }, /* GL_SAMPLE_COVERAGE_ARB */ + { 38243, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT */ + { 38269, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT_ARB */ + { 38299, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE */ + { 38324, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE_ARB */ + { 38353, 0x00080000 }, /* GL_SCISSOR_BIT */ + { 38368, 0x00000C10 }, /* GL_SCISSOR_BOX */ + { 38383, 0x00000C11 }, /* GL_SCISSOR_TEST */ + { 38399, 0x0000845E }, /* GL_SECONDARY_COLOR_ARRAY */ + { 38424, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ + { 38464, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB */ + { 38508, 0x0000845D }, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ + { 38541, 0x0000845A }, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ + { 38571, 0x0000845C }, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ + { 38603, 0x0000845B }, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ + { 38633, 0x00001C02 }, /* GL_SELECT */ + { 38643, 0x00000DF3 }, /* GL_SELECTION_BUFFER_POINTER */ + { 38671, 0x00000DF4 }, /* GL_SELECTION_BUFFER_SIZE */ + { 38696, 0x00008012 }, /* GL_SEPARABLE_2D */ + { 38712, 0x00008C8D }, /* GL_SEPARATE_ATTRIBS */ + { 38732, 0x00008C8D }, /* GL_SEPARATE_ATTRIBS_EXT */ + { 38756, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR */ + { 38783, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR_EXT */ + { 38814, 0x0000150F }, /* GL_SET */ + { 38821, 0x00008DF8 }, /* GL_SHADER_BINARY_FORMATS */ + { 38846, 0x00008DFA }, /* GL_SHADER_COMPILER */ + { 38865, 0x00008B48 }, /* GL_SHADER_OBJECT_ARB */ + { 38886, 0x00008B88 }, /* GL_SHADER_SOURCE_LENGTH */ + { 38910, 0x00008B4F }, /* GL_SHADER_TYPE */ + { 38925, 0x00000B54 }, /* GL_SHADE_MODEL */ + { 38940, 0x00008B8C }, /* GL_SHADING_LANGUAGE_VERSION */ + { 38968, 0x000080BF }, /* GL_SHADOW_AMBIENT_SGIX */ + { 38991, 0x000081FB }, /* GL_SHARED_TEXTURE_PALETTE_EXT */ + { 39021, 0x00001601 }, /* GL_SHININESS */ + { 39034, 0x00001402 }, /* GL_SHORT */ + { 39043, 0x00009119 }, /* GL_SIGNALED */ + { 39055, 0x00008F9C }, /* GL_SIGNED_NORMALIZED */ + { 39076, 0x000081F9 }, /* GL_SINGLE_COLOR */ + { 39092, 0x000081F9 }, /* GL_SINGLE_COLOR_EXT */ + { 39112, 0x000085CC }, /* GL_SLICE_ACCUM_SUN */ + { 39131, 0x00008C46 }, /* GL_SLUMINANCE */ + { 39145, 0x00008C47 }, /* GL_SLUMINANCE8 */ + { 39160, 0x00008C45 }, /* GL_SLUMINANCE8_ALPHA8 */ + { 39182, 0x00008C44 }, /* GL_SLUMINANCE_ALPHA */ + { 39202, 0x00001D01 }, /* GL_SMOOTH */ + { 39212, 0x00000B23 }, /* GL_SMOOTH_LINE_WIDTH_GRANULARITY */ + { 39245, 0x00000B22 }, /* GL_SMOOTH_LINE_WIDTH_RANGE */ + { 39272, 0x00000B13 }, /* GL_SMOOTH_POINT_SIZE_GRANULARITY */ + { 39305, 0x00000B12 }, /* GL_SMOOTH_POINT_SIZE_RANGE */ + { 39332, 0x00008588 }, /* GL_SOURCE0_ALPHA */ + { 39349, 0x00008588 }, /* GL_SOURCE0_ALPHA_ARB */ + { 39370, 0x00008588 }, /* GL_SOURCE0_ALPHA_EXT */ + { 39391, 0x00008580 }, /* GL_SOURCE0_RGB */ + { 39406, 0x00008580 }, /* GL_SOURCE0_RGB_ARB */ + { 39425, 0x00008580 }, /* GL_SOURCE0_RGB_EXT */ + { 39444, 0x00008589 }, /* GL_SOURCE1_ALPHA */ + { 39461, 0x00008589 }, /* GL_SOURCE1_ALPHA_ARB */ + { 39482, 0x00008589 }, /* GL_SOURCE1_ALPHA_EXT */ + { 39503, 0x00008581 }, /* GL_SOURCE1_RGB */ + { 39518, 0x00008581 }, /* GL_SOURCE1_RGB_ARB */ + { 39537, 0x00008581 }, /* GL_SOURCE1_RGB_EXT */ + { 39556, 0x0000858A }, /* GL_SOURCE2_ALPHA */ + { 39573, 0x0000858A }, /* GL_SOURCE2_ALPHA_ARB */ + { 39594, 0x0000858A }, /* GL_SOURCE2_ALPHA_EXT */ + { 39615, 0x00008582 }, /* GL_SOURCE2_RGB */ + { 39630, 0x00008582 }, /* GL_SOURCE2_RGB_ARB */ + { 39649, 0x00008582 }, /* GL_SOURCE2_RGB_EXT */ + { 39668, 0x0000858B }, /* GL_SOURCE3_ALPHA_NV */ + { 39688, 0x00008583 }, /* GL_SOURCE3_RGB_NV */ + { 39706, 0x00001202 }, /* GL_SPECULAR */ + { 39718, 0x00002402 }, /* GL_SPHERE_MAP */ + { 39732, 0x00001206 }, /* GL_SPOT_CUTOFF */ + { 39747, 0x00001204 }, /* GL_SPOT_DIRECTION */ + { 39765, 0x00001205 }, /* GL_SPOT_EXPONENT */ + { 39782, 0x00008588 }, /* GL_SRC0_ALPHA */ + { 39796, 0x00008580 }, /* GL_SRC0_RGB */ + { 39808, 0x00008589 }, /* GL_SRC1_ALPHA */ + { 39822, 0x00008581 }, /* GL_SRC1_RGB */ + { 39834, 0x0000858A }, /* GL_SRC2_ALPHA */ + { 39848, 0x00008582 }, /* GL_SRC2_RGB */ + { 39860, 0x00000302 }, /* GL_SRC_ALPHA */ + { 39873, 0x00000308 }, /* GL_SRC_ALPHA_SATURATE */ + { 39895, 0x00000300 }, /* GL_SRC_COLOR */ + { 39908, 0x00008C40 }, /* GL_SRGB */ + { 39916, 0x00008C41 }, /* GL_SRGB8 */ + { 39925, 0x00008C43 }, /* GL_SRGB8_ALPHA8 */ + { 39941, 0x00008C42 }, /* GL_SRGB_ALPHA */ + { 39955, 0x00000503 }, /* GL_STACK_OVERFLOW */ + { 39973, 0x00000504 }, /* GL_STACK_UNDERFLOW */ + { 39992, 0x000088E6 }, /* GL_STATIC_COPY */ + { 40007, 0x000088E6 }, /* GL_STATIC_COPY_ARB */ + { 40026, 0x000088E4 }, /* GL_STATIC_DRAW */ + { 40041, 0x000088E4 }, /* GL_STATIC_DRAW_ARB */ + { 40060, 0x000088E5 }, /* GL_STATIC_READ */ + { 40075, 0x000088E5 }, /* GL_STATIC_READ_ARB */ + { 40094, 0x00001802 }, /* GL_STENCIL */ + { 40105, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT */ + { 40127, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_EXT */ + { 40153, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_OES */ + { 40179, 0x00008801 }, /* GL_STENCIL_BACK_FAIL */ + { 40200, 0x00008801 }, /* GL_STENCIL_BACK_FAIL_ATI */ + { 40225, 0x00008800 }, /* GL_STENCIL_BACK_FUNC */ + { 40246, 0x00008800 }, /* GL_STENCIL_BACK_FUNC_ATI */ + { 40271, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ + { 40303, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI */ + { 40339, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ + { 40371, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI */ + { 40407, 0x00008CA3 }, /* GL_STENCIL_BACK_REF */ + { 40427, 0x00008CA4 }, /* GL_STENCIL_BACK_VALUE_MASK */ + { 40454, 0x00008CA5 }, /* GL_STENCIL_BACK_WRITEMASK */ + { 40480, 0x00000D57 }, /* GL_STENCIL_BITS */ + { 40496, 0x00008224 }, /* GL_STENCIL_BUFFER */ + { 40514, 0x00000400 }, /* GL_STENCIL_BUFFER_BIT */ + { 40536, 0x00000B91 }, /* GL_STENCIL_CLEAR_VALUE */ + { 40559, 0x00000B94 }, /* GL_STENCIL_FAIL */ + { 40575, 0x00000B92 }, /* GL_STENCIL_FUNC */ + { 40591, 0x00001901 }, /* GL_STENCIL_INDEX */ + { 40608, 0x00008D46 }, /* GL_STENCIL_INDEX1 */ + { 40626, 0x00008D49 }, /* GL_STENCIL_INDEX16 */ + { 40645, 0x00008D49 }, /* GL_STENCIL_INDEX16_EXT */ + { 40668, 0x00008D46 }, /* GL_STENCIL_INDEX1_EXT */ + { 40690, 0x00008D46 }, /* GL_STENCIL_INDEX1_OES */ + { 40712, 0x00008D47 }, /* GL_STENCIL_INDEX4 */ + { 40730, 0x00008D47 }, /* GL_STENCIL_INDEX4_EXT */ + { 40752, 0x00008D47 }, /* GL_STENCIL_INDEX4_OES */ + { 40774, 0x00008D48 }, /* GL_STENCIL_INDEX8 */ + { 40792, 0x00008D48 }, /* GL_STENCIL_INDEX8_EXT */ + { 40814, 0x00008D48 }, /* GL_STENCIL_INDEX8_OES */ + { 40836, 0x00008D45 }, /* GL_STENCIL_INDEX_EXT */ + { 40857, 0x00000B95 }, /* GL_STENCIL_PASS_DEPTH_FAIL */ + { 40884, 0x00000B96 }, /* GL_STENCIL_PASS_DEPTH_PASS */ + { 40911, 0x00000B97 }, /* GL_STENCIL_REF */ + { 40926, 0x00000B90 }, /* GL_STENCIL_TEST */ + { 40942, 0x00008910 }, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ + { 40971, 0x00000B93 }, /* GL_STENCIL_VALUE_MASK */ + { 40993, 0x00000B98 }, /* GL_STENCIL_WRITEMASK */ + { 41014, 0x00000C33 }, /* GL_STEREO */ + { 41024, 0x000085BE }, /* GL_STORAGE_CACHED_APPLE */ + { 41048, 0x000085BD }, /* GL_STORAGE_PRIVATE_APPLE */ + { 41073, 0x000085BF }, /* GL_STORAGE_SHARED_APPLE */ + { 41097, 0x000088E2 }, /* GL_STREAM_COPY */ + { 41112, 0x000088E2 }, /* GL_STREAM_COPY_ARB */ + { 41131, 0x000088E0 }, /* GL_STREAM_DRAW */ + { 41146, 0x000088E0 }, /* GL_STREAM_DRAW_ARB */ + { 41165, 0x000088E1 }, /* GL_STREAM_READ */ + { 41180, 0x000088E1 }, /* GL_STREAM_READ_ARB */ + { 41199, 0x00000D50 }, /* GL_SUBPIXEL_BITS */ + { 41216, 0x000084E7 }, /* GL_SUBTRACT */ + { 41228, 0x000084E7 }, /* GL_SUBTRACT_ARB */ + { 41244, 0x00009113 }, /* GL_SYNC_CONDITION */ + { 41262, 0x00009116 }, /* GL_SYNC_FENCE */ + { 41276, 0x00009115 }, /* GL_SYNC_FLAGS */ + { 41290, 0x00000001 }, /* GL_SYNC_FLUSH_COMMANDS_BIT */ + { 41317, 0x00009117 }, /* GL_SYNC_GPU_COMMANDS_COMPLETE */ + { 41347, 0x00009114 }, /* GL_SYNC_STATUS */ + { 41362, 0x00002001 }, /* GL_T */ + { 41367, 0x00002A2A }, /* GL_T2F_C3F_V3F */ + { 41382, 0x00002A2C }, /* GL_T2F_C4F_N3F_V3F */ + { 41401, 0x00002A29 }, /* GL_T2F_C4UB_V3F */ + { 41417, 0x00002A2B }, /* GL_T2F_N3F_V3F */ + { 41432, 0x00002A27 }, /* GL_T2F_V3F */ + { 41443, 0x00002A2D }, /* GL_T4F_C4F_N3F_V4F */ + { 41462, 0x00002A28 }, /* GL_T4F_V4F */ + { 41473, 0x00008031 }, /* GL_TABLE_TOO_LARGE_EXT */ + { 41496, 0x00001702 }, /* GL_TEXTURE */ + { 41507, 0x000084C0 }, /* GL_TEXTURE0 */ + { 41519, 0x000084C0 }, /* GL_TEXTURE0_ARB */ + { 41535, 0x000084C1 }, /* GL_TEXTURE1 */ + { 41547, 0x000084CA }, /* GL_TEXTURE10 */ + { 41560, 0x000084CA }, /* GL_TEXTURE10_ARB */ + { 41577, 0x000084CB }, /* GL_TEXTURE11 */ + { 41590, 0x000084CB }, /* GL_TEXTURE11_ARB */ + { 41607, 0x000084CC }, /* GL_TEXTURE12 */ + { 41620, 0x000084CC }, /* GL_TEXTURE12_ARB */ + { 41637, 0x000084CD }, /* GL_TEXTURE13 */ + { 41650, 0x000084CD }, /* GL_TEXTURE13_ARB */ + { 41667, 0x000084CE }, /* GL_TEXTURE14 */ + { 41680, 0x000084CE }, /* GL_TEXTURE14_ARB */ + { 41697, 0x000084CF }, /* GL_TEXTURE15 */ + { 41710, 0x000084CF }, /* GL_TEXTURE15_ARB */ + { 41727, 0x000084D0 }, /* GL_TEXTURE16 */ + { 41740, 0x000084D0 }, /* GL_TEXTURE16_ARB */ + { 41757, 0x000084D1 }, /* GL_TEXTURE17 */ + { 41770, 0x000084D1 }, /* GL_TEXTURE17_ARB */ + { 41787, 0x000084D2 }, /* GL_TEXTURE18 */ + { 41800, 0x000084D2 }, /* GL_TEXTURE18_ARB */ + { 41817, 0x000084D3 }, /* GL_TEXTURE19 */ + { 41830, 0x000084D3 }, /* GL_TEXTURE19_ARB */ + { 41847, 0x000084C1 }, /* GL_TEXTURE1_ARB */ + { 41863, 0x000084C2 }, /* GL_TEXTURE2 */ + { 41875, 0x000084D4 }, /* GL_TEXTURE20 */ + { 41888, 0x000084D4 }, /* GL_TEXTURE20_ARB */ + { 41905, 0x000084D5 }, /* GL_TEXTURE21 */ + { 41918, 0x000084D5 }, /* GL_TEXTURE21_ARB */ + { 41935, 0x000084D6 }, /* GL_TEXTURE22 */ + { 41948, 0x000084D6 }, /* GL_TEXTURE22_ARB */ + { 41965, 0x000084D7 }, /* GL_TEXTURE23 */ + { 41978, 0x000084D7 }, /* GL_TEXTURE23_ARB */ + { 41995, 0x000084D8 }, /* GL_TEXTURE24 */ + { 42008, 0x000084D8 }, /* GL_TEXTURE24_ARB */ + { 42025, 0x000084D9 }, /* GL_TEXTURE25 */ + { 42038, 0x000084D9 }, /* GL_TEXTURE25_ARB */ + { 42055, 0x000084DA }, /* GL_TEXTURE26 */ + { 42068, 0x000084DA }, /* GL_TEXTURE26_ARB */ + { 42085, 0x000084DB }, /* GL_TEXTURE27 */ + { 42098, 0x000084DB }, /* GL_TEXTURE27_ARB */ + { 42115, 0x000084DC }, /* GL_TEXTURE28 */ + { 42128, 0x000084DC }, /* GL_TEXTURE28_ARB */ + { 42145, 0x000084DD }, /* GL_TEXTURE29 */ + { 42158, 0x000084DD }, /* GL_TEXTURE29_ARB */ + { 42175, 0x000084C2 }, /* GL_TEXTURE2_ARB */ + { 42191, 0x000084C3 }, /* GL_TEXTURE3 */ + { 42203, 0x000084DE }, /* GL_TEXTURE30 */ + { 42216, 0x000084DE }, /* GL_TEXTURE30_ARB */ + { 42233, 0x000084DF }, /* GL_TEXTURE31 */ + { 42246, 0x000084DF }, /* GL_TEXTURE31_ARB */ + { 42263, 0x000084C3 }, /* GL_TEXTURE3_ARB */ + { 42279, 0x000084C4 }, /* GL_TEXTURE4 */ + { 42291, 0x000084C4 }, /* GL_TEXTURE4_ARB */ + { 42307, 0x000084C5 }, /* GL_TEXTURE5 */ + { 42319, 0x000084C5 }, /* GL_TEXTURE5_ARB */ + { 42335, 0x000084C6 }, /* GL_TEXTURE6 */ + { 42347, 0x000084C6 }, /* GL_TEXTURE6_ARB */ + { 42363, 0x000084C7 }, /* GL_TEXTURE7 */ + { 42375, 0x000084C7 }, /* GL_TEXTURE7_ARB */ + { 42391, 0x000084C8 }, /* GL_TEXTURE8 */ + { 42403, 0x000084C8 }, /* GL_TEXTURE8_ARB */ + { 42419, 0x000084C9 }, /* GL_TEXTURE9 */ + { 42431, 0x000084C9 }, /* GL_TEXTURE9_ARB */ + { 42447, 0x00000DE0 }, /* GL_TEXTURE_1D */ + { 42461, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY */ + { 42481, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY_EXT */ + { 42505, 0x00000DE1 }, /* GL_TEXTURE_2D */ + { 42519, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY */ + { 42539, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY_EXT */ + { 42563, 0x0000806F }, /* GL_TEXTURE_3D */ + { 42577, 0x0000806F }, /* GL_TEXTURE_3D_OES */ + { 42595, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE */ + { 42617, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE_EXT */ + { 42643, 0x0000813C }, /* GL_TEXTURE_BASE_LEVEL */ + { 42665, 0x00008068 }, /* GL_TEXTURE_BINDING_1D */ + { 42687, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY */ + { 42715, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY_EXT */ + { 42747, 0x00008069 }, /* GL_TEXTURE_BINDING_2D */ + { 42769, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY */ + { 42797, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY_EXT */ + { 42829, 0x0000806A }, /* GL_TEXTURE_BINDING_3D */ + { 42851, 0x0000806A }, /* GL_TEXTURE_BINDING_3D_OES */ + { 42877, 0x00008C2C }, /* GL_TEXTURE_BINDING_BUFFER */ + { 42903, 0x00008C2C }, /* GL_TEXTURE_BINDING_BUFFER_ARB */ + { 42933, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP */ + { 42961, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_ARB */ + { 42993, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_OES */ + { 43025, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE */ + { 43054, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_ARB */ + { 43087, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_NV */ + { 43119, 0x00040000 }, /* GL_TEXTURE_BIT */ + { 43134, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE */ + { 43155, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE_EXT */ + { 43180, 0x00001005 }, /* GL_TEXTURE_BORDER */ + { 43198, 0x00001004 }, /* GL_TEXTURE_BORDER_COLOR */ + { 43222, 0x00008C2A }, /* GL_TEXTURE_BUFFER */ + { 43240, 0x00008C2A }, /* GL_TEXTURE_BUFFER_ARB */ + { 43262, 0x00008C2D }, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING */ + { 43299, 0x00008C2D }, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB */ + { 43340, 0x00008C2E }, /* GL_TEXTURE_BUFFER_FORMAT */ + { 43365, 0x00008C2E }, /* GL_TEXTURE_BUFFER_FORMAT_ARB */ + { 43394, 0x00008171 }, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ + { 43425, 0x00008176 }, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ + { 43455, 0x00008172 }, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ + { 43485, 0x00008175 }, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ + { 43520, 0x00008173 }, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ + { 43551, 0x00008174 }, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ + { 43589, 0x000080BC }, /* GL_TEXTURE_COLOR_TABLE_SGI */ + { 43616, 0x000081EF }, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ + { 43648, 0x000080BF }, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */ + { 43682, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC */ + { 43706, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC_ARB */ + { 43734, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE */ + { 43758, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE_ARB */ + { 43786, 0x0000819B }, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ + { 43819, 0x0000819A }, /* GL_TEXTURE_COMPARE_SGIX */ + { 43843, 0x00001003 }, /* GL_TEXTURE_COMPONENTS */ + { 43865, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED */ + { 43887, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED_ARB */ + { 43913, 0x000086A3 }, /* GL_TEXTURE_COMPRESSED_FORMATS_ARB */ + { 43947, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ + { 43980, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB */ + { 44017, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT */ + { 44045, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT_ARB */ + { 44077, 0x00008078 }, /* GL_TEXTURE_COORD_ARRAY */ + { 44100, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ + { 44138, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB */ + { 44180, 0x00008092 }, /* GL_TEXTURE_COORD_ARRAY_POINTER */ + { 44211, 0x00008088 }, /* GL_TEXTURE_COORD_ARRAY_SIZE */ + { 44239, 0x0000808A }, /* GL_TEXTURE_COORD_ARRAY_STRIDE */ + { 44269, 0x00008089 }, /* GL_TEXTURE_COORD_ARRAY_TYPE */ + { 44297, 0x00008B9D }, /* GL_TEXTURE_CROP_RECT_OES */ + { 44322, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP */ + { 44342, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_ARB */ + { 44366, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ + { 44397, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB */ + { 44432, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES */ + { 44467, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ + { 44498, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB */ + { 44533, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES */ + { 44568, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ + { 44599, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB */ + { 44634, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES */ + { 44669, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_OES */ + { 44693, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ + { 44724, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB */ + { 44759, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES */ + { 44794, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ + { 44825, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB */ + { 44860, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES */ + { 44895, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ + { 44926, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB */ + { 44961, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES */ + { 44996, 0x000088F4 }, /* GL_TEXTURE_CUBE_MAP_SEAMLESS */ + { 45025, 0x00008071 }, /* GL_TEXTURE_DEPTH */ + { 45042, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE */ + { 45064, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE_ARB */ + { 45090, 0x00002300 }, /* GL_TEXTURE_ENV */ + { 45105, 0x00002201 }, /* GL_TEXTURE_ENV_COLOR */ + { 45126, 0x00002200 }, /* GL_TEXTURE_ENV_MODE */ + { 45146, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL */ + { 45172, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL_EXT */ + { 45202, 0x00002500 }, /* GL_TEXTURE_GEN_MODE */ + { 45222, 0x00002500 }, /* GL_TEXTURE_GEN_MODE_OES */ + { 45246, 0x00000C63 }, /* GL_TEXTURE_GEN_Q */ + { 45263, 0x00000C62 }, /* GL_TEXTURE_GEN_R */ + { 45280, 0x00000C60 }, /* GL_TEXTURE_GEN_S */ + { 45297, 0x00008D60 }, /* GL_TEXTURE_GEN_STR_OES */ + { 45320, 0x00000C61 }, /* GL_TEXTURE_GEN_T */ + { 45337, 0x0000819D }, /* GL_TEXTURE_GEQUAL_R_SGIX */ + { 45362, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE */ + { 45384, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE_EXT */ + { 45410, 0x00001001 }, /* GL_TEXTURE_HEIGHT */ + { 45428, 0x000080ED }, /* GL_TEXTURE_INDEX_SIZE_EXT */ + { 45454, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE */ + { 45480, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE_EXT */ + { 45510, 0x00001003 }, /* GL_TEXTURE_INTERNAL_FORMAT */ + { 45537, 0x0000819C }, /* GL_TEXTURE_LEQUAL_R_SGIX */ + { 45562, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS */ + { 45582, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS_EXT */ + { 45606, 0x00008190 }, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ + { 45633, 0x0000818E }, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ + { 45660, 0x0000818F }, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ + { 45687, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE */ + { 45713, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE_EXT */ + { 45743, 0x00002800 }, /* GL_TEXTURE_MAG_FILTER */ + { 45765, 0x00000BA8 }, /* GL_TEXTURE_MATRIX */ + { 45783, 0x0000898F }, /* GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES */ + { 45823, 0x000084FE }, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ + { 45853, 0x0000836B }, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ + { 45881, 0x00008369 }, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ + { 45909, 0x0000836A }, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ + { 45937, 0x0000813D }, /* GL_TEXTURE_MAX_LEVEL */ + { 45958, 0x0000813B }, /* GL_TEXTURE_MAX_LOD */ + { 45977, 0x00002801 }, /* GL_TEXTURE_MIN_FILTER */ + { 45999, 0x0000813A }, /* GL_TEXTURE_MIN_LOD */ + { 46018, 0x00008066 }, /* GL_TEXTURE_PRIORITY */ + { 46038, 0x000085B7 }, /* GL_TEXTURE_RANGE_LENGTH_APPLE */ + { 46068, 0x000085B8 }, /* GL_TEXTURE_RANGE_POINTER_APPLE */ + { 46099, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE */ + { 46120, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_ARB */ + { 46145, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_NV */ + { 46169, 0x0000805C }, /* GL_TEXTURE_RED_SIZE */ + { 46189, 0x0000805C }, /* GL_TEXTURE_RED_SIZE_EXT */ + { 46213, 0x00008067 }, /* GL_TEXTURE_RESIDENT */ + { 46233, 0x00008C3F }, /* GL_TEXTURE_SHARED_SIZE */ + { 46256, 0x00000BA5 }, /* GL_TEXTURE_STACK_DEPTH */ + { 46279, 0x000088F1 }, /* GL_TEXTURE_STENCIL_SIZE */ + { 46303, 0x000088F1 }, /* GL_TEXTURE_STENCIL_SIZE_EXT */ + { 46331, 0x000085BC }, /* GL_TEXTURE_STORAGE_HINT_APPLE */ + { 46361, 0x00008065 }, /* GL_TEXTURE_TOO_LARGE_EXT */ + { 46386, 0x0000888F }, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */ + { 46420, 0x00001000 }, /* GL_TEXTURE_WIDTH */ + { 46437, 0x00008072 }, /* GL_TEXTURE_WRAP_R */ + { 46455, 0x00008072 }, /* GL_TEXTURE_WRAP_R_OES */ + { 46477, 0x00002802 }, /* GL_TEXTURE_WRAP_S */ + { 46495, 0x00002803 }, /* GL_TEXTURE_WRAP_T */ + { 46513, 0x0000911B }, /* GL_TIMEOUT_EXPIRED */ + { 46532, 0x000088BF }, /* GL_TIME_ELAPSED_EXT */ + { 46552, 0x00008648 }, /* GL_TRACK_MATRIX_NV */ + { 46571, 0x00008649 }, /* GL_TRACK_MATRIX_TRANSFORM_NV */ + { 46600, 0x00001000 }, /* GL_TRANSFORM_BIT */ + { 46617, 0x00008E22 }, /* GL_TRANSFORM_FEEDBACK */ + { 46639, 0x00008E25 }, /* GL_TRANSFORM_FEEDBACK_BINDING */ + { 46669, 0x00008C8E }, /* GL_TRANSFORM_FEEDBACK_BUFFER */ + { 46698, 0x00008E24 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE */ + { 46734, 0x00008C8F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING */ + { 46771, 0x00008C8F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT */ + { 46812, 0x00008C8E }, /* GL_TRANSFORM_FEEDBACK_BUFFER_EXT */ + { 46845, 0x00008C7F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE */ + { 46879, 0x00008C7F }, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE_EXT */ + { 46917, 0x00008E23 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED */ + { 46953, 0x00008C85 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE */ + { 46987, 0x00008C85 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT */ + { 47025, 0x00008C84 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_START */ + { 47060, 0x00008C84 }, /* GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT */ + { 47099, 0x00008C88 }, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN */ + { 47140, 0x00008C88 }, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT */ + { 47185, 0x00008C83 }, /* GL_TRANSFORM_FEEDBACK_VARYINGS */ + { 47216, 0x00008C83 }, /* GL_TRANSFORM_FEEDBACK_VARYINGS_EXT */ + { 47251, 0x00008C76 }, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH */ + { 47292, 0x00008C76 }, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT */ + { 47337, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX */ + { 47363, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX_ARB */ + { 47393, 0x000088B7 }, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ + { 47425, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ + { 47455, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX_ARB */ + { 47489, 0x0000862C }, /* GL_TRANSPOSE_NV */ + { 47505, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX */ + { 47536, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX_ARB */ + { 47571, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX */ + { 47599, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX_ARB */ + { 47631, 0x00000004 }, /* GL_TRIANGLES */ + { 47644, 0x0000000C }, /* GL_TRIANGLES_ADJACENCY */ + { 47667, 0x0000000C }, /* GL_TRIANGLES_ADJACENCY_ARB */ + { 47694, 0x00000006 }, /* GL_TRIANGLE_FAN */ + { 47710, 0x00008615 }, /* GL_TRIANGLE_MESH_SUN */ + { 47731, 0x00000005 }, /* GL_TRIANGLE_STRIP */ + { 47749, 0x0000000D }, /* GL_TRIANGLE_STRIP_ADJACENCY */ + { 47777, 0x0000000D }, /* GL_TRIANGLE_STRIP_ADJACENCY_ARB */ + { 47809, 0x00000001 }, /* GL_TRUE */ + { 47817, 0x00008A1C }, /* GL_UNDEFINED_APPLE */ + { 47836, 0x00000CF5 }, /* GL_UNPACK_ALIGNMENT */ + { 47856, 0x0000806E }, /* GL_UNPACK_IMAGE_HEIGHT */ + { 47879, 0x00000CF1 }, /* GL_UNPACK_LSB_FIRST */ + { 47899, 0x00000CF2 }, /* GL_UNPACK_ROW_LENGTH */ + { 47920, 0x0000806D }, /* GL_UNPACK_SKIP_IMAGES */ + { 47942, 0x00000CF4 }, /* GL_UNPACK_SKIP_PIXELS */ + { 47964, 0x00000CF3 }, /* GL_UNPACK_SKIP_ROWS */ + { 47984, 0x00000CF0 }, /* GL_UNPACK_SWAP_BYTES */ + { 48005, 0x00009118 }, /* GL_UNSIGNALED */ + { 48019, 0x00001401 }, /* GL_UNSIGNED_BYTE */ + { 48036, 0x00008362 }, /* GL_UNSIGNED_BYTE_2_3_3_REV */ + { 48063, 0x00008032 }, /* GL_UNSIGNED_BYTE_3_3_2 */ + { 48086, 0x00001405 }, /* GL_UNSIGNED_INT */ + { 48102, 0x00008C3B }, /* GL_UNSIGNED_INT_10F_11F_11F_REV */ + { 48134, 0x00008036 }, /* GL_UNSIGNED_INT_10_10_10_2 */ + { 48161, 0x00008DF6 }, /* GL_UNSIGNED_INT_10_10_10_2_OES */ + { 48192, 0x000084FA }, /* GL_UNSIGNED_INT_24_8 */ + { 48213, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_EXT */ + { 48238, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_NV */ + { 48262, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_OES */ + { 48287, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV */ + { 48318, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV_EXT */ + { 48353, 0x00008C3E }, /* GL_UNSIGNED_INT_5_9_9_9_REV */ + { 48381, 0x00008035 }, /* GL_UNSIGNED_INT_8_8_8_8 */ + { 48405, 0x00008367 }, /* GL_UNSIGNED_INT_8_8_8_8_REV */ + { 48433, 0x00008DD1 }, /* GL_UNSIGNED_INT_SAMPLER_1D */ + { 48460, 0x00008DD6 }, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY */ + { 48493, 0x00008DD6 }, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT */ + { 48530, 0x00008DD1 }, /* GL_UNSIGNED_INT_SAMPLER_1D_EXT */ + { 48561, 0x00008DD2 }, /* GL_UNSIGNED_INT_SAMPLER_2D */ + { 48588, 0x00008DD7 }, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY */ + { 48621, 0x00008DD7 }, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT */ + { 48658, 0x00008DD2 }, /* GL_UNSIGNED_INT_SAMPLER_2D_EXT */ + { 48689, 0x00008DD5 }, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT */ + { 48721, 0x00008DD5 }, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT */ + { 48757, 0x00008DD3 }, /* GL_UNSIGNED_INT_SAMPLER_3D */ + { 48784, 0x00008DD3 }, /* GL_UNSIGNED_INT_SAMPLER_3D_EXT */ + { 48815, 0x00008DD8 }, /* GL_UNSIGNED_INT_SAMPLER_BUFFER */ + { 48846, 0x00008DD8 }, /* GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT */ + { 48881, 0x00008DD4 }, /* GL_UNSIGNED_INT_SAMPLER_CUBE */ + { 48910, 0x00008DD4 }, /* GL_UNSIGNED_INT_SAMPLER_CUBE_EXT */ + { 48943, 0x00008DC6 }, /* GL_UNSIGNED_INT_VEC2 */ + { 48964, 0x00008DC6 }, /* GL_UNSIGNED_INT_VEC2_EXT */ + { 48989, 0x00008DC7 }, /* GL_UNSIGNED_INT_VEC3 */ + { 49010, 0x00008DC7 }, /* GL_UNSIGNED_INT_VEC3_EXT */ + { 49035, 0x00008DC8 }, /* GL_UNSIGNED_INT_VEC4 */ + { 49056, 0x00008DC8 }, /* GL_UNSIGNED_INT_VEC4_EXT */ + { 49081, 0x00008C17 }, /* GL_UNSIGNED_NORMALIZED */ + { 49104, 0x00001403 }, /* GL_UNSIGNED_SHORT */ + { 49122, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ + { 49152, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT */ + { 49186, 0x00008033 }, /* GL_UNSIGNED_SHORT_4_4_4_4 */ + { 49212, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ + { 49242, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT */ + { 49276, 0x00008034 }, /* GL_UNSIGNED_SHORT_5_5_5_1 */ + { 49302, 0x00008363 }, /* GL_UNSIGNED_SHORT_5_6_5 */ + { 49326, 0x00008364 }, /* GL_UNSIGNED_SHORT_5_6_5_REV */ + { 49354, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_APPLE */ + { 49382, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_MESA */ + { 49409, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ + { 49441, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_MESA */ + { 49472, 0x00008CA2 }, /* GL_UPPER_LEFT */ + { 49486, 0x00002A20 }, /* GL_V2F */ + { 49493, 0x00002A21 }, /* GL_V3F */ + { 49500, 0x00008B83 }, /* GL_VALIDATE_STATUS */ + { 49519, 0x00001F00 }, /* GL_VENDOR */ + { 49529, 0x00001F02 }, /* GL_VERSION */ + { 49540, 0x00008074 }, /* GL_VERTEX_ARRAY */ + { 49556, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING */ + { 49580, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING_APPLE */ + { 49610, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ + { 49641, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING_ARB */ + { 49676, 0x0000808E }, /* GL_VERTEX_ARRAY_POINTER */ + { 49700, 0x0000807A }, /* GL_VERTEX_ARRAY_SIZE */ + { 49721, 0x0000807C }, /* GL_VERTEX_ARRAY_STRIDE */ + { 49744, 0x0000807B }, /* GL_VERTEX_ARRAY_TYPE */ + { 49765, 0x00008650 }, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ + { 49792, 0x0000865A }, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ + { 49820, 0x0000865B }, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ + { 49848, 0x0000865C }, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ + { 49876, 0x0000865D }, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ + { 49904, 0x0000865E }, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ + { 49932, 0x0000865F }, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ + { 49960, 0x00008651 }, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ + { 49987, 0x00008652 }, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ + { 50014, 0x00008653 }, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ + { 50041, 0x00008654 }, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ + { 50068, 0x00008655 }, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ + { 50095, 0x00008656 }, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ + { 50122, 0x00008657 }, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ + { 50149, 0x00008658 }, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ + { 50176, 0x00008659 }, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ + { 50203, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ + { 50241, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB */ + { 50283, 0x000088FE }, /* GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB */ + { 50318, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ + { 50349, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB */ + { 50384, 0x000088FD }, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER */ + { 50415, 0x000088FD }, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT */ + { 50450, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ + { 50484, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB */ + { 50522, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ + { 50553, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB */ + { 50588, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ + { 50616, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB */ + { 50648, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ + { 50678, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB */ + { 50712, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ + { 50740, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB */ + { 50772, 0x000086A7 }, /* GL_VERTEX_BLEND_ARB */ + { 50792, 0x00008620 }, /* GL_VERTEX_PROGRAM_ARB */ + { 50814, 0x0000864A }, /* GL_VERTEX_PROGRAM_BINDING_NV */ + { 50843, 0x00008620 }, /* GL_VERTEX_PROGRAM_NV */ + { 50864, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE */ + { 50893, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_ARB */ + { 50926, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_NV */ + { 50958, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE */ + { 50985, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_ARB */ + { 51016, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_NV */ + { 51046, 0x00008B31 }, /* GL_VERTEX_SHADER */ + { 51063, 0x00008B31 }, /* GL_VERTEX_SHADER_ARB */ + { 51084, 0x00008621 }, /* GL_VERTEX_STATE_PROGRAM_NV */ + { 51111, 0x00000BA2 }, /* GL_VIEWPORT */ + { 51123, 0x00000800 }, /* GL_VIEWPORT_BIT */ + { 51139, 0x00008A1A }, /* GL_VOLATILE_APPLE */ + { 51157, 0x0000911D }, /* GL_WAIT_FAILED */ + { 51172, 0x000086AD }, /* GL_WEIGHT_ARRAY_ARB */ + { 51192, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ + { 51223, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB */ + { 51258, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_OES */ + { 51293, 0x000086AD }, /* GL_WEIGHT_ARRAY_OES */ + { 51313, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_ARB */ + { 51341, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_OES */ + { 51369, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_ARB */ + { 51394, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_OES */ + { 51419, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ + { 51446, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_OES */ + { 51473, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_ARB */ + { 51498, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_OES */ + { 51523, 0x000086A6 }, /* GL_WEIGHT_SUM_UNITY_ARB */ + { 51547, 0x000081D4 }, /* GL_WRAP_BORDER_SUN */ + { 51566, 0x000088B9 }, /* GL_WRITE_ONLY */ + { 51580, 0x000088B9 }, /* GL_WRITE_ONLY_ARB */ + { 51598, 0x000088B9 }, /* GL_WRITE_ONLY_OES */ + { 51616, 0x00001506 }, /* GL_XOR */ + { 51623, 0x000085B9 }, /* GL_YCBCR_422_APPLE */ + { 51642, 0x00008757 }, /* GL_YCBCR_MESA */ + { 51656, 0x00000000 }, /* GL_ZERO */ + { 51664, 0x00000D16 }, /* GL_ZOOM_X */ + { 51674, 0x00000D17 }, /* GL_ZOOM_Y */ }; -static const unsigned reduced_enums[1555] = +static const unsigned reduced_enums[1556] = { 538, /* GL_FALSE */ 831, /* GL_LINES */ 835, /* GL_LINE_LOOP */ 842, /* GL_LINE_STRIP */ - 2145, /* GL_TRIANGLES */ - 2150, /* GL_TRIANGLE_STRIP */ - 2148, /* GL_TRIANGLE_FAN */ + 2146, /* GL_TRIANGLES */ + 2151, /* GL_TRIANGLE_STRIP */ + 2149, /* GL_TRIANGLE_FAN */ 1512, /* GL_QUADS */ 1516, /* GL_QUAD_STRIP */ 1383, /* GL_POLYGON */ 832, /* GL_LINES_ADJACENCY */ 843, /* GL_LINE_STRIP_ADJACENCY */ - 2146, /* GL_TRIANGLES_ADJACENCY */ - 2151, /* GL_TRIANGLE_STRIP_ADJACENCY */ + 2147, /* GL_TRIANGLES_ADJACENCY */ + 2152, /* GL_TRIANGLE_STRIP_ADJACENCY */ 1395, /* GL_POLYGON_STIPPLE_BIT */ 1338, /* GL_PIXEL_MODE_BIT */ 818, /* GL_LIGHTING_BIT */ @@ -4686,15 +4688,15 @@ static const unsigned reduced_enums[1555] = 1238, /* GL_NOTEQUAL */ 694, /* GL_GEQUAL */ 55, /* GL_ALWAYS */ - 1809, /* GL_SRC_COLOR */ + 1810, /* GL_SRC_COLOR */ 1271, /* GL_ONE_MINUS_SRC_COLOR */ - 1807, /* GL_SRC_ALPHA */ + 1808, /* GL_SRC_ALPHA */ 1270, /* GL_ONE_MINUS_SRC_ALPHA */ 507, /* GL_DST_ALPHA */ 1268, /* GL_ONE_MINUS_DST_ALPHA */ 508, /* GL_DST_COLOR */ 1269, /* GL_ONE_MINUS_DST_COLOR */ - 1808, /* GL_SRC_ALPHA_SATURATE */ + 1809, /* GL_SRC_ALPHA_SATURATE */ 671, /* GL_FRONT_LEFT */ 672, /* GL_FRONT_RIGHT */ 77, /* GL_BACK_LEFT */ @@ -4711,8 +4713,8 @@ static const unsigned reduced_enums[1555] = 794, /* GL_INVALID_ENUM */ 799, /* GL_INVALID_VALUE */ 798, /* GL_INVALID_OPERATION */ - 1814, /* GL_STACK_OVERFLOW */ - 1815, /* GL_STACK_UNDERFLOW */ + 1815, /* GL_STACK_OVERFLOW */ + 1816, /* GL_STACK_UNDERFLOW */ 1296, /* GL_OUT_OF_MEMORY */ 795, /* GL_INVALID_FRAMEBUFFER_OPERATION */ 0, /* GL_2D */ @@ -4771,7 +4773,7 @@ static const unsigned reduced_enums[1555] = 822, /* GL_LIGHT_MODEL_LOCAL_VIEWER */ 823, /* GL_LIGHT_MODEL_TWO_SIDE */ 819, /* GL_LIGHT_MODEL_AMBIENT */ - 1756, /* GL_SHADE_MODEL */ + 1757, /* GL_SHADE_MODEL */ 235, /* GL_COLOR_MATERIAL_FACE */ 236, /* GL_COLOR_MATERIAL_PARAMETER */ 234, /* GL_COLOR_MATERIAL */ @@ -4788,24 +4790,24 @@ static const unsigned reduced_enums[1555] = 413, /* GL_DEPTH_CLEAR_VALUE */ 427, /* GL_DEPTH_FUNC */ 12, /* GL_ACCUM_CLEAR_VALUE */ - 1859, /* GL_STENCIL_TEST */ - 1840, /* GL_STENCIL_CLEAR_VALUE */ - 1842, /* GL_STENCIL_FUNC */ - 1861, /* GL_STENCIL_VALUE_MASK */ - 1841, /* GL_STENCIL_FAIL */ - 1856, /* GL_STENCIL_PASS_DEPTH_FAIL */ - 1857, /* GL_STENCIL_PASS_DEPTH_PASS */ - 1858, /* GL_STENCIL_REF */ - 1862, /* GL_STENCIL_WRITEMASK */ + 1860, /* GL_STENCIL_TEST */ + 1841, /* GL_STENCIL_CLEAR_VALUE */ + 1843, /* GL_STENCIL_FUNC */ + 1862, /* GL_STENCIL_VALUE_MASK */ + 1842, /* GL_STENCIL_FAIL */ + 1857, /* GL_STENCIL_PASS_DEPTH_FAIL */ + 1858, /* GL_STENCIL_PASS_DEPTH_PASS */ + 1859, /* GL_STENCIL_REF */ + 1863, /* GL_STENCIL_WRITEMASK */ 1010, /* GL_MATRIX_MODE */ 1227, /* GL_NORMALIZE */ - 2277, /* GL_VIEWPORT */ + 2278, /* GL_VIEWPORT */ 1200, /* GL_MODELVIEW_STACK_DEPTH */ 1486, /* GL_PROJECTION_STACK_DEPTH */ - 2099, /* GL_TEXTURE_STACK_DEPTH */ + 2100, /* GL_TEXTURE_STACK_DEPTH */ 1197, /* GL_MODELVIEW_MATRIX */ 1484, /* GL_PROJECTION_MATRIX */ - 2079, /* GL_TEXTURE_MATRIX */ + 2080, /* GL_TEXTURE_MATRIX */ 69, /* GL_ATTRIB_STACK_DEPTH */ 169, /* GL_CLIENT_ATTRIB_STACK_DEPTH */ 51, /* GL_ALPHA_TEST */ @@ -4821,8 +4823,8 @@ static const unsigned reduced_enums[1555] = 75, /* GL_AUX_BUFFERS */ 453, /* GL_DRAW_BUFFER */ 1539, /* GL_READ_BUFFER */ - 1733, /* GL_SCISSOR_BOX */ - 1734, /* GL_SCISSOR_TEST */ + 1734, /* GL_SCISSOR_BOX */ + 1735, /* GL_SCISSOR_TEST */ 742, /* GL_INDEX_CLEAR_VALUE */ 747, /* GL_INDEX_WRITEMASK */ 230, /* GL_COLOR_CLEAR_VALUE */ @@ -4830,17 +4832,17 @@ static const unsigned reduced_enums[1555] = 744, /* GL_INDEX_MODE */ 1680, /* GL_RGBA_MODE */ 452, /* GL_DOUBLEBUFFER */ - 1863, /* GL_STEREO */ + 1864, /* GL_STEREO */ 1593, /* GL_RENDER_MODE */ 1317, /* GL_PERSPECTIVE_CORRECTION_HINT */ 1375, /* GL_POINT_SMOOTH_HINT */ 838, /* GL_LINE_SMOOTH_HINT */ 1393, /* GL_POLYGON_SMOOTH_HINT */ 592, /* GL_FOG_HINT */ - 2059, /* GL_TEXTURE_GEN_S */ - 2061, /* GL_TEXTURE_GEN_T */ - 2058, /* GL_TEXTURE_GEN_R */ - 2057, /* GL_TEXTURE_GEN_Q */ + 2060, /* GL_TEXTURE_GEN_S */ + 2062, /* GL_TEXTURE_GEN_T */ + 2059, /* GL_TEXTURE_GEN_R */ + 2058, /* GL_TEXTURE_GEN_Q */ 1330, /* GL_PIXEL_MAP_I_TO_I */ 1336, /* GL_PIXEL_MAP_S_TO_S */ 1332, /* GL_PIXEL_MAP_I_TO_R */ @@ -4861,12 +4863,12 @@ static const unsigned reduced_enums[1555] = 1323, /* GL_PIXEL_MAP_G_TO_G_SIZE */ 1321, /* GL_PIXEL_MAP_B_TO_B_SIZE */ 1319, /* GL_PIXEL_MAP_A_TO_A_SIZE */ - 2162, /* GL_UNPACK_SWAP_BYTES */ - 2157, /* GL_UNPACK_LSB_FIRST */ - 2158, /* GL_UNPACK_ROW_LENGTH */ - 2161, /* GL_UNPACK_SKIP_ROWS */ - 2160, /* GL_UNPACK_SKIP_PIXELS */ - 2155, /* GL_UNPACK_ALIGNMENT */ + 2163, /* GL_UNPACK_SWAP_BYTES */ + 2158, /* GL_UNPACK_LSB_FIRST */ + 2159, /* GL_UNPACK_ROW_LENGTH */ + 2162, /* GL_UNPACK_SKIP_ROWS */ + 2161, /* GL_UNPACK_SKIP_PIXELS */ + 2156, /* GL_UNPACK_ALIGNMENT */ 1305, /* GL_PACK_SWAP_BYTES */ 1300, /* GL_PACK_LSB_FIRST */ 1301, /* GL_PACK_ROW_LENGTH */ @@ -4879,8 +4881,8 @@ static const unsigned reduced_enums[1555] = 745, /* GL_INDEX_OFFSET */ 1555, /* GL_RED_SCALE */ 1551, /* GL_RED_BIAS */ - 2303, /* GL_ZOOM_X */ - 2304, /* GL_ZOOM_Y */ + 2304, /* GL_ZOOM_X */ + 2305, /* GL_ZOOM_Y */ 701, /* GL_GREEN_SCALE */ 697, /* GL_GREEN_BIAS */ 115, /* GL_BLUE_SCALE */ @@ -4901,14 +4903,14 @@ static const unsigned reduced_enums[1555] = 1116, /* GL_MAX_TEXTURE_STACK_DEPTH */ 1142, /* GL_MAX_VIEWPORT_DIMS */ 1019, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */ - 1873, /* GL_SUBPIXEL_BITS */ + 1874, /* GL_SUBPIXEL_BITS */ 741, /* GL_INDEX_BITS */ 1552, /* GL_RED_BITS */ 698, /* GL_GREEN_BITS */ 112, /* GL_BLUE_BITS */ 48, /* GL_ALPHA_BITS */ 406, /* GL_DEPTH_BITS */ - 1837, /* GL_STENCIL_BITS */ + 1838, /* GL_STENCIL_BITS */ 14, /* GL_ACCUM_RED_BITS */ 13, /* GL_ACCUM_GREEN_BITS */ 10, /* GL_ACCUM_BLUE_BITS */ @@ -4937,39 +4939,39 @@ static const unsigned reduced_enums[1555] = 899, /* GL_MAP1_GRID_SEGMENTS */ 925, /* GL_MAP2_GRID_DOMAIN */ 926, /* GL_MAP2_GRID_SEGMENTS */ - 1956, /* GL_TEXTURE_1D */ - 1959, /* GL_TEXTURE_2D */ + 1957, /* GL_TEXTURE_1D */ + 1960, /* GL_TEXTURE_2D */ 541, /* GL_FEEDBACK_BUFFER_POINTER */ 542, /* GL_FEEDBACK_BUFFER_SIZE */ 543, /* GL_FEEDBACK_BUFFER_TYPE */ - 1743, /* GL_SELECTION_BUFFER_POINTER */ - 1744, /* GL_SELECTION_BUFFER_SIZE */ - 2105, /* GL_TEXTURE_WIDTH */ - 2065, /* GL_TEXTURE_HEIGHT */ - 2009, /* GL_TEXTURE_COMPONENTS */ - 1987, /* GL_TEXTURE_BORDER_COLOR */ - 1986, /* GL_TEXTURE_BORDER */ + 1744, /* GL_SELECTION_BUFFER_POINTER */ + 1745, /* GL_SELECTION_BUFFER_SIZE */ + 2106, /* GL_TEXTURE_WIDTH */ + 2066, /* GL_TEXTURE_HEIGHT */ + 2010, /* GL_TEXTURE_COMPONENTS */ + 1988, /* GL_TEXTURE_BORDER_COLOR */ + 1987, /* GL_TEXTURE_BORDER */ 444, /* GL_DONT_CARE */ 539, /* GL_FASTEST */ 1222, /* GL_NICEST */ 56, /* GL_AMBIENT */ 441, /* GL_DIFFUSE */ - 1796, /* GL_SPECULAR */ + 1797, /* GL_SPECULAR */ 1397, /* GL_POSITION */ - 1799, /* GL_SPOT_DIRECTION */ - 1800, /* GL_SPOT_EXPONENT */ - 1798, /* GL_SPOT_CUTOFF */ + 1800, /* GL_SPOT_DIRECTION */ + 1801, /* GL_SPOT_EXPONENT */ + 1799, /* GL_SPOT_CUTOFF */ 320, /* GL_CONSTANT_ATTENUATION */ 826, /* GL_LINEAR_ATTENUATION */ 1511, /* GL_QUADRATIC_ATTENUATION */ 287, /* GL_COMPILE */ 288, /* GL_COMPILE_AND_EXECUTE */ 149, /* GL_BYTE */ - 2164, /* GL_UNSIGNED_BYTE */ - 1761, /* GL_SHORT */ - 2203, /* GL_UNSIGNED_SHORT */ + 2165, /* GL_UNSIGNED_BYTE */ + 1762, /* GL_SHORT */ + 2204, /* GL_UNSIGNED_SHORT */ 749, /* GL_INT */ - 2167, /* GL_UNSIGNED_INT */ + 2168, /* GL_UNSIGNED_INT */ 552, /* GL_FLOAT */ 1, /* GL_2_BYTES */ 5, /* GL_3_BYTES */ @@ -4983,7 +4985,7 @@ static const unsigned reduced_enums[1555] = 350, /* GL_COPY */ 59, /* GL_AND_INVERTED */ 1225, /* GL_NOOP */ - 2299, /* GL_XOR */ + 2300, /* GL_XOR */ 1292, /* GL_OR */ 1226, /* GL_NOR */ 529, /* GL_EQUIV */ @@ -4992,19 +4994,19 @@ static const unsigned reduced_enums[1555] = 351, /* GL_COPY_INVERTED */ 1294, /* GL_OR_INVERTED */ 1215, /* GL_NAND */ - 1750, /* GL_SET */ + 1751, /* GL_SET */ 526, /* GL_EMISSION */ - 1760, /* GL_SHININESS */ + 1761, /* GL_SHININESS */ 57, /* GL_AMBIENT_AND_DIFFUSE */ 232, /* GL_COLOR_INDEXES */ 1164, /* GL_MODELVIEW */ 1483, /* GL_PROJECTION */ - 1891, /* GL_TEXTURE */ + 1892, /* GL_TEXTURE */ 188, /* GL_COLOR */ 398, /* GL_DEPTH */ - 1822, /* GL_STENCIL */ + 1823, /* GL_STENCIL */ 231, /* GL_COLOR_INDEX */ - 1843, /* GL_STENCIL_INDEX */ + 1844, /* GL_STENCIL_INDEX */ 414, /* GL_DEPTH_COMPONENT */ 1548, /* GL_RED */ 696, /* GL_GREEN */ @@ -5020,30 +5022,30 @@ static const unsigned reduced_enums[1555] = 544, /* GL_FILL */ 1562, /* GL_RENDER */ 540, /* GL_FEEDBACK */ - 1742, /* GL_SELECT */ + 1743, /* GL_SELECT */ 551, /* GL_FLAT */ - 1771, /* GL_SMOOTH */ + 1772, /* GL_SMOOTH */ 803, /* GL_KEEP */ 1595, /* GL_REPLACE */ 731, /* GL_INCR */ 394, /* GL_DECR */ - 2220, /* GL_VENDOR */ + 2221, /* GL_VENDOR */ 1592, /* GL_RENDERER */ - 2221, /* GL_VERSION */ + 2222, /* GL_VERSION */ 533, /* GL_EXTENSIONS */ 1692, /* GL_S */ - 1882, /* GL_T */ + 1883, /* GL_T */ 1531, /* GL_R */ 1510, /* GL_Q */ 1201, /* GL_MODULATE */ 393, /* GL_DECAL */ - 2052, /* GL_TEXTURE_ENV_MODE */ - 2051, /* GL_TEXTURE_ENV_COLOR */ - 2050, /* GL_TEXTURE_ENV */ + 2053, /* GL_TEXTURE_ENV_MODE */ + 2052, /* GL_TEXTURE_ENV_COLOR */ + 2051, /* GL_TEXTURE_ENV */ 534, /* GL_EYE_LINEAR */ 1253, /* GL_OBJECT_LINEAR */ - 1797, /* GL_SPHERE_MAP */ - 2055, /* GL_TEXTURE_GEN_MODE */ + 1798, /* GL_SPHERE_MAP */ + 2056, /* GL_TEXTURE_GEN_MODE */ 1255, /* GL_OBJECT_PLANE */ 535, /* GL_EYE_PLANE */ 1216, /* GL_NEAREST */ @@ -5052,30 +5054,30 @@ static const unsigned reduced_enums[1555] = 830, /* GL_LINEAR_MIPMAP_NEAREST */ 1219, /* GL_NEAREST_MIPMAP_LINEAR */ 829, /* GL_LINEAR_MIPMAP_LINEAR */ - 2078, /* GL_TEXTURE_MAG_FILTER */ - 2087, /* GL_TEXTURE_MIN_FILTER */ - 2108, /* GL_TEXTURE_WRAP_S */ - 2109, /* GL_TEXTURE_WRAP_T */ + 2079, /* GL_TEXTURE_MAG_FILTER */ + 2088, /* GL_TEXTURE_MIN_FILTER */ + 2109, /* GL_TEXTURE_WRAP_S */ + 2110, /* GL_TEXTURE_WRAP_T */ 155, /* GL_CLAMP */ 1594, /* GL_REPEAT */ 1391, /* GL_POLYGON_OFFSET_UNITS */ 1390, /* GL_POLYGON_OFFSET_POINT */ 1389, /* GL_POLYGON_OFFSET_LINE */ 1534, /* GL_R3_G3_B2 */ - 2217, /* GL_V2F */ - 2218, /* GL_V3F */ + 2218, /* GL_V2F */ + 2219, /* GL_V3F */ 152, /* GL_C4UB_V2F */ 153, /* GL_C4UB_V3F */ 150, /* GL_C3F_V3F */ 1213, /* GL_N3F_V3F */ 151, /* GL_C4F_N3F_V3F */ - 1887, /* GL_T2F_V3F */ - 1889, /* GL_T4F_V4F */ - 1885, /* GL_T2F_C4UB_V3F */ - 1883, /* GL_T2F_C3F_V3F */ - 1886, /* GL_T2F_N3F_V3F */ - 1884, /* GL_T2F_C4F_N3F_V3F */ - 1888, /* GL_T4F_C4F_N3F_V4F */ + 1888, /* GL_T2F_V3F */ + 1890, /* GL_T4F_V4F */ + 1886, /* GL_T2F_C4UB_V3F */ + 1884, /* GL_T2F_C3F_V3F */ + 1887, /* GL_T2F_N3F_V3F */ + 1885, /* GL_T2F_C4F_N3F_V3F */ + 1889, /* GL_T4F_C4F_N3F_V4F */ 172, /* GL_CLIP_DISTANCE0 */ 173, /* GL_CLIP_DISTANCE1 */ 174, /* GL_CLIP_DISTANCE2 */ @@ -5106,7 +5108,7 @@ static const unsigned reduced_enums[1555] = 676, /* GL_FUNC_REVERSE_SUBTRACT */ 330, /* GL_CONVOLUTION_1D */ 331, /* GL_CONVOLUTION_2D */ - 1745, /* GL_SEPARABLE_2D */ + 1746, /* GL_SEPARABLE_2D */ 334, /* GL_CONVOLUTION_BORDER_MODE */ 338, /* GL_CONVOLUTION_FILTER_SCALE */ 336, /* GL_CONVOLUTION_FILTER_BIAS */ @@ -5137,12 +5139,12 @@ static const unsigned reduced_enums[1555] = 1146, /* GL_MINMAX */ 1148, /* GL_MINMAX_FORMAT */ 1150, /* GL_MINMAX_SINK */ - 1890, /* GL_TABLE_TOO_LARGE_EXT */ - 2166, /* GL_UNSIGNED_BYTE_3_3_2 */ - 2206, /* GL_UNSIGNED_SHORT_4_4_4_4 */ - 2209, /* GL_UNSIGNED_SHORT_5_5_5_1 */ - 2178, /* GL_UNSIGNED_INT_8_8_8_8 */ - 2169, /* GL_UNSIGNED_INT_10_10_10_2 */ + 1891, /* GL_TABLE_TOO_LARGE_EXT */ + 2167, /* GL_UNSIGNED_BYTE_3_3_2 */ + 2207, /* GL_UNSIGNED_SHORT_4_4_4_4 */ + 2210, /* GL_UNSIGNED_SHORT_5_5_5_1 */ + 2179, /* GL_UNSIGNED_INT_8_8_8_8 */ + 2170, /* GL_UNSIGNED_INT_10_10_10_2 */ 1388, /* GL_POLYGON_OFFSET_FILL */ 1387, /* GL_POLYGON_OFFSET_FACTOR */ 1386, /* GL_POLYGON_OFFSET_BIAS */ @@ -5180,39 +5182,39 @@ static const unsigned reduced_enums[1555] = 1606, /* GL_RGB10_A2 */ 1645, /* GL_RGBA12 */ 1647, /* GL_RGBA16 */ - 2095, /* GL_TEXTURE_RED_SIZE */ - 2063, /* GL_TEXTURE_GREEN_SIZE */ - 1984, /* GL_TEXTURE_BLUE_SIZE */ - 1964, /* GL_TEXTURE_ALPHA_SIZE */ - 2076, /* GL_TEXTURE_LUMINANCE_SIZE */ - 2067, /* GL_TEXTURE_INTENSITY_SIZE */ + 2096, /* GL_TEXTURE_RED_SIZE */ + 2064, /* GL_TEXTURE_GREEN_SIZE */ + 1985, /* GL_TEXTURE_BLUE_SIZE */ + 1965, /* GL_TEXTURE_ALPHA_SIZE */ + 2077, /* GL_TEXTURE_LUMINANCE_SIZE */ + 2068, /* GL_TEXTURE_INTENSITY_SIZE */ 1596, /* GL_REPLACE_EXT */ 1494, /* GL_PROXY_TEXTURE_1D */ 1498, /* GL_PROXY_TEXTURE_2D */ - 2103, /* GL_TEXTURE_TOO_LARGE_EXT */ - 2089, /* GL_TEXTURE_PRIORITY */ - 2097, /* GL_TEXTURE_RESIDENT */ - 1967, /* GL_TEXTURE_BINDING_1D */ - 1970, /* GL_TEXTURE_BINDING_2D */ - 1973, /* GL_TEXTURE_BINDING_3D */ + 2104, /* GL_TEXTURE_TOO_LARGE_EXT */ + 2090, /* GL_TEXTURE_PRIORITY */ + 2098, /* GL_TEXTURE_RESIDENT */ + 1968, /* GL_TEXTURE_BINDING_1D */ + 1971, /* GL_TEXTURE_BINDING_2D */ + 1974, /* GL_TEXTURE_BINDING_3D */ 1302, /* GL_PACK_SKIP_IMAGES */ 1298, /* GL_PACK_IMAGE_HEIGHT */ - 2159, /* GL_UNPACK_SKIP_IMAGES */ - 2156, /* GL_UNPACK_IMAGE_HEIGHT */ - 1962, /* GL_TEXTURE_3D */ + 2160, /* GL_UNPACK_SKIP_IMAGES */ + 2157, /* GL_UNPACK_IMAGE_HEIGHT */ + 1963, /* GL_TEXTURE_3D */ 1502, /* GL_PROXY_TEXTURE_3D */ - 2047, /* GL_TEXTURE_DEPTH */ - 2106, /* GL_TEXTURE_WRAP_R */ + 2048, /* GL_TEXTURE_DEPTH */ + 2107, /* GL_TEXTURE_WRAP_R */ 1014, /* GL_MAX_3D_TEXTURE_SIZE */ - 2222, /* GL_VERTEX_ARRAY */ + 2223, /* GL_VERTEX_ARRAY */ 1228, /* GL_NORMAL_ARRAY */ 189, /* GL_COLOR_ARRAY */ 735, /* GL_INDEX_ARRAY */ - 2017, /* GL_TEXTURE_COORD_ARRAY */ + 2018, /* GL_TEXTURE_COORD_ARRAY */ 518, /* GL_EDGE_FLAG_ARRAY */ - 2228, /* GL_VERTEX_ARRAY_SIZE */ - 2230, /* GL_VERTEX_ARRAY_TYPE */ - 2229, /* GL_VERTEX_ARRAY_STRIDE */ + 2229, /* GL_VERTEX_ARRAY_SIZE */ + 2231, /* GL_VERTEX_ARRAY_TYPE */ + 2230, /* GL_VERTEX_ARRAY_STRIDE */ 1233, /* GL_NORMAL_ARRAY_TYPE */ 1232, /* GL_NORMAL_ARRAY_STRIDE */ 193, /* GL_COLOR_ARRAY_SIZE */ @@ -5220,24 +5222,24 @@ static const unsigned reduced_enums[1555] = 194, /* GL_COLOR_ARRAY_STRIDE */ 740, /* GL_INDEX_ARRAY_TYPE */ 739, /* GL_INDEX_ARRAY_STRIDE */ - 2021, /* GL_TEXTURE_COORD_ARRAY_SIZE */ - 2023, /* GL_TEXTURE_COORD_ARRAY_TYPE */ - 2022, /* GL_TEXTURE_COORD_ARRAY_STRIDE */ + 2022, /* GL_TEXTURE_COORD_ARRAY_SIZE */ + 2024, /* GL_TEXTURE_COORD_ARRAY_TYPE */ + 2023, /* GL_TEXTURE_COORD_ARRAY_STRIDE */ 522, /* GL_EDGE_FLAG_ARRAY_STRIDE */ - 2227, /* GL_VERTEX_ARRAY_POINTER */ + 2228, /* GL_VERTEX_ARRAY_POINTER */ 1231, /* GL_NORMAL_ARRAY_POINTER */ 192, /* GL_COLOR_ARRAY_POINTER */ 738, /* GL_INDEX_ARRAY_POINTER */ - 2020, /* GL_TEXTURE_COORD_ARRAY_POINTER */ + 2021, /* GL_TEXTURE_COORD_ARRAY_POINTER */ 521, /* GL_EDGE_FLAG_ARRAY_POINTER */ 1206, /* GL_MULTISAMPLE */ - 1719, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ - 1721, /* GL_SAMPLE_ALPHA_TO_ONE */ - 1726, /* GL_SAMPLE_COVERAGE */ - 1723, /* GL_SAMPLE_BUFFERS */ - 1714, /* GL_SAMPLES */ - 1730, /* GL_SAMPLE_COVERAGE_VALUE */ - 1728, /* GL_SAMPLE_COVERAGE_INVERT */ + 1720, /* GL_SAMPLE_ALPHA_TO_COVERAGE */ + 1722, /* GL_SAMPLE_ALPHA_TO_ONE */ + 1727, /* GL_SAMPLE_COVERAGE */ + 1724, /* GL_SAMPLE_BUFFERS */ + 1715, /* GL_SAMPLES */ + 1731, /* GL_SAMPLE_COVERAGE_VALUE */ + 1729, /* GL_SAMPLE_COVERAGE_INVERT */ 237, /* GL_COLOR_MATRIX */ 239, /* GL_COLOR_MATRIX_STACK_DEPTH */ 1026, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */ @@ -5249,9 +5251,9 @@ static const unsigned reduced_enums[1555] = 1407, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */ 1402, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */ 1398, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */ - 2000, /* GL_TEXTURE_COLOR_TABLE_SGI */ + 2001, /* GL_TEXTURE_COLOR_TABLE_SGI */ 1503, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */ - 2002, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */ + 2003, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */ 94, /* GL_BLEND_DST_RGB */ 108, /* GL_BLEND_SRC_RGB */ 92, /* GL_BLEND_DST_ALPHA */ @@ -5276,7 +5278,7 @@ static const unsigned reduced_enums[1555] = 80, /* GL_BGRA */ 1041, /* GL_MAX_ELEMENTS_VERTICES */ 1040, /* GL_MAX_ELEMENTS_INDICES */ - 2066, /* GL_TEXTURE_INDEX_SIZE_EXT */ + 2067, /* GL_TEXTURE_INDEX_SIZE_EXT */ 186, /* GL_CLIP_VOLUME_CLIPPING_HINT_EXT */ 1369, /* GL_POINT_SIZE_MIN */ 1365, /* GL_POINT_SIZE_MAX */ @@ -5284,10 +5286,10 @@ static const unsigned reduced_enums[1555] = 1350, /* GL_POINT_DISTANCE_ATTENUATION */ 159, /* GL_CLAMP_TO_BORDER */ 162, /* GL_CLAMP_TO_EDGE */ - 2088, /* GL_TEXTURE_MIN_LOD */ - 2086, /* GL_TEXTURE_MAX_LOD */ - 1966, /* GL_TEXTURE_BASE_LEVEL */ - 2085, /* GL_TEXTURE_MAX_LEVEL */ + 2089, /* GL_TEXTURE_MIN_LOD */ + 2087, /* GL_TEXTURE_MAX_LOD */ + 1967, /* GL_TEXTURE_BASE_LEVEL */ + 2086, /* GL_TEXTURE_MAX_LEVEL */ 726, /* GL_IGNORE_BORDER_HP */ 321, /* GL_CONSTANT_BORDER_HP */ 1597, /* GL_REPLICATE_BORDER_HP */ @@ -5295,41 +5297,41 @@ static const unsigned reduced_enums[1555] = 1261, /* GL_OCCLUSION_TEST_HP */ 1262, /* GL_OCCLUSION_TEST_RESULT_HP */ 827, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */ - 1994, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ - 1996, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ - 1998, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ - 1999, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ - 1997, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ - 1995, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ + 1995, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */ + 1997, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */ + 1999, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */ + 2000, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */ + 1998, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */ + 1996, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */ 1020, /* GL_MAX_CLIPMAP_DEPTH_SGIX */ 1021, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */ 1433, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */ 1435, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */ 1432, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */ 1434, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */ - 2074, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ - 2075, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ - 2073, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ + 2075, /* GL_TEXTURE_LOD_BIAS_S_SGIX */ + 2076, /* GL_TEXTURE_LOD_BIAS_T_SGIX */ + 2074, /* GL_TEXTURE_LOD_BIAS_R_SGIX */ 682, /* GL_GENERATE_MIPMAP */ 683, /* GL_GENERATE_MIPMAP_HINT */ 595, /* GL_FOG_OFFSET_SGIX */ 596, /* GL_FOG_OFFSET_VALUE_SGIX */ - 2008, /* GL_TEXTURE_COMPARE_SGIX */ - 2007, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ - 2070, /* GL_TEXTURE_LEQUAL_R_SGIX */ - 2062, /* GL_TEXTURE_GEQUAL_R_SGIX */ + 2009, /* GL_TEXTURE_COMPARE_SGIX */ + 2008, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */ + 2071, /* GL_TEXTURE_LEQUAL_R_SGIX */ + 2063, /* GL_TEXTURE_GEQUAL_R_SGIX */ 415, /* GL_DEPTH_COMPONENT16 */ 419, /* GL_DEPTH_COMPONENT24 */ 423, /* GL_DEPTH_COMPONENT32 */ 357, /* GL_CULL_VERTEX_EXT */ 359, /* GL_CULL_VERTEX_OBJECT_POSITION_EXT */ 358, /* GL_CULL_VERTEX_EYE_POSITION_EXT */ - 2295, /* GL_WRAP_BORDER_SUN */ - 2001, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ + 2296, /* GL_WRAP_BORDER_SUN */ + 2002, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */ 820, /* GL_LIGHT_MODEL_COLOR_CONTROL */ - 1764, /* GL_SINGLE_COLOR */ - 1748, /* GL_SEPARATE_SPECULAR_COLOR */ - 1759, /* GL_SHARED_TEXTURE_PALETTE_EXT */ + 1765, /* GL_SINGLE_COLOR */ + 1749, /* GL_SEPARATE_SPECULAR_COLOR */ + 1760, /* GL_SHARED_TEXTURE_PALETTE_EXT */ 607, /* GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING */ 608, /* GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE */ 619, /* GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE */ @@ -5347,19 +5349,19 @@ static const unsigned reduced_enums[1555] = 327, /* GL_CONTEXT_FLAGS */ 734, /* GL_INDEX */ 409, /* GL_DEPTH_BUFFER */ - 1838, /* GL_STENCIL_BUFFER */ + 1839, /* GL_STENCIL_BUFFER */ 298, /* GL_COMPRESSED_RED */ 299, /* GL_COMPRESSED_RG */ - 2165, /* GL_UNSIGNED_BYTE_2_3_3_REV */ - 2210, /* GL_UNSIGNED_SHORT_5_6_5 */ - 2211, /* GL_UNSIGNED_SHORT_5_6_5_REV */ - 2207, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ - 2204, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ - 2179, /* GL_UNSIGNED_INT_8_8_8_8_REV */ - 2175, /* GL_UNSIGNED_INT_2_10_10_10_REV */ - 2083, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ - 2084, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ - 2082, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ + 2166, /* GL_UNSIGNED_BYTE_2_3_3_REV */ + 2211, /* GL_UNSIGNED_SHORT_5_6_5 */ + 2212, /* GL_UNSIGNED_SHORT_5_6_5_REV */ + 2208, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */ + 2205, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */ + 2180, /* GL_UNSIGNED_INT_8_8_8_8_REV */ + 2176, /* GL_UNSIGNED_INT_2_10_10_10_REV */ + 2084, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */ + 2085, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */ + 2083, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */ 1156, /* GL_MIRRORED_REPEAT */ 1685, /* GL_RGB_S3TC */ 1627, /* GL_RGB4_S3TC */ @@ -5384,54 +5386,54 @@ static const unsigned reduced_enums[1555] = 576, /* GL_FOG_COORDINATE_ARRAY */ 241, /* GL_COLOR_SUM */ 384, /* GL_CURRENT_SECONDARY_COLOR */ - 1739, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ - 1741, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ - 1740, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ - 1738, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ - 1735, /* GL_SECONDARY_COLOR_ARRAY */ + 1740, /* GL_SECONDARY_COLOR_ARRAY_SIZE */ + 1742, /* GL_SECONDARY_COLOR_ARRAY_TYPE */ + 1741, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */ + 1739, /* GL_SECONDARY_COLOR_ARRAY_POINTER */ + 1736, /* GL_SECONDARY_COLOR_ARRAY */ 382, /* GL_CURRENT_RASTER_SECONDARY_COLOR */ 29, /* GL_ALIASED_POINT_SIZE_RANGE */ 28, /* GL_ALIASED_LINE_WIDTH_RANGE */ - 1892, /* GL_TEXTURE0 */ - 1894, /* GL_TEXTURE1 */ - 1916, /* GL_TEXTURE2 */ - 1938, /* GL_TEXTURE3 */ - 1944, /* GL_TEXTURE4 */ - 1946, /* GL_TEXTURE5 */ - 1948, /* GL_TEXTURE6 */ - 1950, /* GL_TEXTURE7 */ - 1952, /* GL_TEXTURE8 */ - 1954, /* GL_TEXTURE9 */ - 1895, /* GL_TEXTURE10 */ - 1897, /* GL_TEXTURE11 */ - 1899, /* GL_TEXTURE12 */ - 1901, /* GL_TEXTURE13 */ - 1903, /* GL_TEXTURE14 */ - 1905, /* GL_TEXTURE15 */ - 1907, /* GL_TEXTURE16 */ - 1909, /* GL_TEXTURE17 */ - 1911, /* GL_TEXTURE18 */ - 1913, /* GL_TEXTURE19 */ - 1917, /* GL_TEXTURE20 */ - 1919, /* GL_TEXTURE21 */ - 1921, /* GL_TEXTURE22 */ - 1923, /* GL_TEXTURE23 */ - 1925, /* GL_TEXTURE24 */ - 1927, /* GL_TEXTURE25 */ - 1929, /* GL_TEXTURE26 */ - 1931, /* GL_TEXTURE27 */ - 1933, /* GL_TEXTURE28 */ - 1935, /* GL_TEXTURE29 */ - 1939, /* GL_TEXTURE30 */ - 1941, /* GL_TEXTURE31 */ + 1893, /* GL_TEXTURE0 */ + 1895, /* GL_TEXTURE1 */ + 1917, /* GL_TEXTURE2 */ + 1939, /* GL_TEXTURE3 */ + 1945, /* GL_TEXTURE4 */ + 1947, /* GL_TEXTURE5 */ + 1949, /* GL_TEXTURE6 */ + 1951, /* GL_TEXTURE7 */ + 1953, /* GL_TEXTURE8 */ + 1955, /* GL_TEXTURE9 */ + 1896, /* GL_TEXTURE10 */ + 1898, /* GL_TEXTURE11 */ + 1900, /* GL_TEXTURE12 */ + 1902, /* GL_TEXTURE13 */ + 1904, /* GL_TEXTURE14 */ + 1906, /* GL_TEXTURE15 */ + 1908, /* GL_TEXTURE16 */ + 1910, /* GL_TEXTURE17 */ + 1912, /* GL_TEXTURE18 */ + 1914, /* GL_TEXTURE19 */ + 1918, /* GL_TEXTURE20 */ + 1920, /* GL_TEXTURE21 */ + 1922, /* GL_TEXTURE22 */ + 1924, /* GL_TEXTURE23 */ + 1926, /* GL_TEXTURE24 */ + 1928, /* GL_TEXTURE25 */ + 1930, /* GL_TEXTURE26 */ + 1932, /* GL_TEXTURE27 */ + 1934, /* GL_TEXTURE28 */ + 1936, /* GL_TEXTURE29 */ + 1940, /* GL_TEXTURE30 */ + 1942, /* GL_TEXTURE31 */ 19, /* GL_ACTIVE_TEXTURE */ 166, /* GL_CLIENT_ACTIVE_TEXTURE */ 1117, /* GL_MAX_TEXTURE_UNITS */ - 2138, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ - 2141, /* GL_TRANSPOSE_PROJECTION_MATRIX */ - 2143, /* GL_TRANSPOSE_TEXTURE_MATRIX */ - 2135, /* GL_TRANSPOSE_COLOR_MATRIX */ - 1874, /* GL_SUBTRACT */ + 2139, /* GL_TRANSPOSE_MODELVIEW_MATRIX */ + 2142, /* GL_TRANSPOSE_PROJECTION_MATRIX */ + 2144, /* GL_TRANSPOSE_TEXTURE_MATRIX */ + 2136, /* GL_TRANSPOSE_COLOR_MATRIX */ + 1875, /* GL_SUBTRACT */ 1098, /* GL_MAX_RENDERBUFFER_SIZE */ 290, /* GL_COMPRESSED_ALPHA */ 294, /* GL_COMPRESSED_LUMINANCE */ @@ -5439,18 +5441,18 @@ static const unsigned reduced_enums[1555] = 292, /* GL_COMPRESSED_INTENSITY */ 300, /* GL_COMPRESSED_RGB */ 301, /* GL_COMPRESSED_RGBA */ - 2015, /* GL_TEXTURE_COMPRESSION_HINT */ - 2092, /* GL_TEXTURE_RECTANGLE */ - 1980, /* GL_TEXTURE_BINDING_RECTANGLE */ + 2016, /* GL_TEXTURE_COMPRESSION_HINT */ + 2093, /* GL_TEXTURE_RECTANGLE */ + 1981, /* GL_TEXTURE_BINDING_RECTANGLE */ 1506, /* GL_PROXY_TEXTURE_RECTANGLE */ 1095, /* GL_MAX_RECTANGLE_TEXTURE_SIZE */ 430, /* GL_DEPTH_STENCIL */ - 2171, /* GL_UNSIGNED_INT_24_8 */ + 2172, /* GL_UNSIGNED_INT_24_8 */ 1112, /* GL_MAX_TEXTURE_LOD_BIAS */ - 2081, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ + 2082, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */ 1114, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */ - 2053, /* GL_TEXTURE_FILTER_CONTROL */ - 2071, /* GL_TEXTURE_LOD_BIAS */ + 2054, /* GL_TEXTURE_FILTER_CONTROL */ + 2072, /* GL_TEXTURE_LOD_BIAS */ 274, /* GL_COMBINE4 */ 1104, /* GL_MAX_SHININESS_NV */ 1105, /* GL_MAX_SPOT_EXPONENT_NV */ @@ -5459,14 +5461,14 @@ static const unsigned reduced_enums[1555] = 1176, /* GL_MODELVIEW1_ARB */ 1234, /* GL_NORMAL_MAP */ 1557, /* GL_REFLECTION_MAP */ - 2025, /* GL_TEXTURE_CUBE_MAP */ - 1977, /* GL_TEXTURE_BINDING_CUBE_MAP */ - 2037, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ - 2027, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ - 2040, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ - 2030, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ - 2043, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ - 2033, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ + 2026, /* GL_TEXTURE_CUBE_MAP */ + 1978, /* GL_TEXTURE_BINDING_CUBE_MAP */ + 2038, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */ + 2028, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */ + 2041, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */ + 2031, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */ + 2044, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */ + 2034, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */ 1504, /* GL_PROXY_TEXTURE_CUBE_MAP */ 1034, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */ 1212, /* GL_MULTISAMPLE_FILTER_HINT_NV */ @@ -5484,14 +5486,14 @@ static const unsigned reduced_enums[1555] = 316, /* GL_CONSTANT */ 1439, /* GL_PRIMARY_COLOR */ 1436, /* GL_PREVIOUS */ - 1779, /* GL_SOURCE0_RGB */ - 1785, /* GL_SOURCE1_RGB */ - 1791, /* GL_SOURCE2_RGB */ - 1795, /* GL_SOURCE3_RGB_NV */ - 1776, /* GL_SOURCE0_ALPHA */ - 1782, /* GL_SOURCE1_ALPHA */ - 1788, /* GL_SOURCE2_ALPHA */ - 1794, /* GL_SOURCE3_ALPHA_NV */ + 1780, /* GL_SOURCE0_RGB */ + 1786, /* GL_SOURCE1_RGB */ + 1792, /* GL_SOURCE2_RGB */ + 1796, /* GL_SOURCE3_RGB_NV */ + 1777, /* GL_SOURCE0_ALPHA */ + 1783, /* GL_SOURCE1_ALPHA */ + 1789, /* GL_SOURCE2_ALPHA */ + 1795, /* GL_SOURCE3_ALPHA_NV */ 1275, /* GL_OPERAND0_RGB */ 1281, /* GL_OPERAND1_RGB */ 1287, /* GL_OPERAND2_RGB */ @@ -5501,32 +5503,32 @@ static const unsigned reduced_enums[1555] = 1284, /* GL_OPERAND2_ALPHA */ 1290, /* GL_OPERAND3_ALPHA_NV */ 137, /* GL_BUFFER_OBJECT_APPLE */ - 2223, /* GL_VERTEX_ARRAY_BINDING */ - 2090, /* GL_TEXTURE_RANGE_LENGTH_APPLE */ - 2091, /* GL_TEXTURE_RANGE_POINTER_APPLE */ - 2300, /* GL_YCBCR_422_APPLE */ - 2212, /* GL_UNSIGNED_SHORT_8_8_APPLE */ - 2214, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ - 2102, /* GL_TEXTURE_STORAGE_HINT_APPLE */ - 1865, /* GL_STORAGE_PRIVATE_APPLE */ - 1864, /* GL_STORAGE_CACHED_APPLE */ - 1866, /* GL_STORAGE_SHARED_APPLE */ - 1766, /* GL_SLICE_ACCUM_SUN */ + 2224, /* GL_VERTEX_ARRAY_BINDING */ + 2091, /* GL_TEXTURE_RANGE_LENGTH_APPLE */ + 2092, /* GL_TEXTURE_RANGE_POINTER_APPLE */ + 2301, /* GL_YCBCR_422_APPLE */ + 2213, /* GL_UNSIGNED_SHORT_8_8_APPLE */ + 2215, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */ + 2103, /* GL_TEXTURE_STORAGE_HINT_APPLE */ + 1866, /* GL_STORAGE_PRIVATE_APPLE */ + 1865, /* GL_STORAGE_CACHED_APPLE */ + 1867, /* GL_STORAGE_SHARED_APPLE */ + 1767, /* GL_SLICE_ACCUM_SUN */ 1515, /* GL_QUAD_MESH_SUN */ - 2149, /* GL_TRIANGLE_MESH_SUN */ - 2265, /* GL_VERTEX_PROGRAM_ARB */ - 2276, /* GL_VERTEX_STATE_PROGRAM_NV */ - 2250, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ - 2258, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ - 2260, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ - 2262, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ + 2150, /* GL_TRIANGLE_MESH_SUN */ + 2266, /* GL_VERTEX_PROGRAM_ARB */ + 2277, /* GL_VERTEX_STATE_PROGRAM_NV */ + 2251, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */ + 2259, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */ + 2261, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */ + 2263, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */ 386, /* GL_CURRENT_VERTEX_ATTRIB */ 1460, /* GL_PROGRAM_LENGTH_ARB */ 1476, /* GL_PROGRAM_STRING_ARB */ 1199, /* GL_MODELVIEW_PROJECTION_NV */ 725, /* GL_IDENTITY_NV */ 800, /* GL_INVERSE_NV */ - 2140, /* GL_TRANSPOSE_NV */ + 2141, /* GL_TRANSPOSE_NV */ 801, /* GL_INVERSE_TRANSPOSE_NV */ 1079, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */ 1078, /* GL_MAX_PROGRAM_MATRICES_ARB */ @@ -5541,32 +5543,32 @@ static const unsigned reduced_enums[1555] = 369, /* GL_CURRENT_MATRIX_STACK_DEPTH_ARB */ 366, /* GL_CURRENT_MATRIX_ARB */ 1473, /* GL_PROGRAM_POINT_SIZE */ - 2271, /* GL_VERTEX_PROGRAM_TWO_SIDE */ + 2272, /* GL_VERTEX_PROGRAM_TWO_SIDE */ 1472, /* GL_PROGRAM_PARAMETER_NV */ - 2256, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ + 2257, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */ 1478, /* GL_PROGRAM_TARGET_NV */ 1475, /* GL_PROGRAM_RESIDENT_NV */ - 2112, /* GL_TRACK_MATRIX_NV */ - 2113, /* GL_TRACK_MATRIX_TRANSFORM_NV */ - 2266, /* GL_VERTEX_PROGRAM_BINDING_NV */ + 2113, /* GL_TRACK_MATRIX_NV */ + 2114, /* GL_TRACK_MATRIX_TRANSFORM_NV */ + 2267, /* GL_VERTEX_PROGRAM_BINDING_NV */ 1454, /* GL_PROGRAM_ERROR_POSITION_ARB */ 411, /* GL_DEPTH_CLAMP */ - 2231, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ - 2238, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ - 2239, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ - 2240, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ - 2241, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ - 2242, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ - 2243, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ - 2244, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ - 2245, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ - 2246, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ - 2232, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ - 2233, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ - 2234, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ - 2235, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ - 2236, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ - 2237, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ + 2232, /* GL_VERTEX_ATTRIB_ARRAY0_NV */ + 2239, /* GL_VERTEX_ATTRIB_ARRAY1_NV */ + 2240, /* GL_VERTEX_ATTRIB_ARRAY2_NV */ + 2241, /* GL_VERTEX_ATTRIB_ARRAY3_NV */ + 2242, /* GL_VERTEX_ATTRIB_ARRAY4_NV */ + 2243, /* GL_VERTEX_ATTRIB_ARRAY5_NV */ + 2244, /* GL_VERTEX_ATTRIB_ARRAY6_NV */ + 2245, /* GL_VERTEX_ATTRIB_ARRAY7_NV */ + 2246, /* GL_VERTEX_ATTRIB_ARRAY8_NV */ + 2247, /* GL_VERTEX_ATTRIB_ARRAY9_NV */ + 2233, /* GL_VERTEX_ATTRIB_ARRAY10_NV */ + 2234, /* GL_VERTEX_ATTRIB_ARRAY11_NV */ + 2235, /* GL_VERTEX_ATTRIB_ARRAY12_NV */ + 2236, /* GL_VERTEX_ATTRIB_ARRAY13_NV */ + 2237, /* GL_VERTEX_ATTRIB_ARRAY14_NV */ + 2238, /* GL_VERTEX_ATTRIB_ARRAY15_NV */ 908, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */ 915, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */ 916, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */ @@ -5599,27 +5601,27 @@ static const unsigned reduced_enums[1555] = 939, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */ 940, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */ 941, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */ - 2013, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ - 2010, /* GL_TEXTURE_COMPRESSED */ + 2014, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */ + 2011, /* GL_TEXTURE_COMPRESSED */ 1240, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */ 314, /* GL_COMPRESSED_TEXTURE_FORMATS */ 1139, /* GL_MAX_VERTEX_UNITS_ARB */ 23, /* GL_ACTIVE_VERTEX_UNITS_ARB */ - 2294, /* GL_WEIGHT_SUM_UNITY_ARB */ - 2264, /* GL_VERTEX_BLEND_ARB */ + 2295, /* GL_WEIGHT_SUM_UNITY_ARB */ + 2265, /* GL_VERTEX_BLEND_ARB */ 388, /* GL_CURRENT_WEIGHT_ARB */ - 2292, /* GL_WEIGHT_ARRAY_TYPE_ARB */ - 2290, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ - 2288, /* GL_WEIGHT_ARRAY_SIZE_ARB */ - 2286, /* GL_WEIGHT_ARRAY_POINTER_ARB */ - 2281, /* GL_WEIGHT_ARRAY_ARB */ + 2293, /* GL_WEIGHT_ARRAY_TYPE_ARB */ + 2291, /* GL_WEIGHT_ARRAY_STRIDE_ARB */ + 2289, /* GL_WEIGHT_ARRAY_SIZE_ARB */ + 2287, /* GL_WEIGHT_ARRAY_POINTER_ARB */ + 2282, /* GL_WEIGHT_ARRAY_ARB */ 445, /* GL_DOT3_RGB */ 446, /* GL_DOT3_RGBA */ 308, /* GL_COMPRESSED_RGB_FXT1_3DFX */ 303, /* GL_COMPRESSED_RGBA_FXT1_3DFX */ 1207, /* GL_MULTISAMPLE_3DFX */ - 1724, /* GL_SAMPLE_BUFFERS_3DFX */ - 1715, /* GL_SAMPLES_3DFX */ + 1725, /* GL_SAMPLE_BUFFERS_3DFX */ + 1716, /* GL_SAMPLES_3DFX */ 1187, /* GL_MODELVIEW2_ARB */ 1190, /* GL_MODELVIEW3_ARB */ 1191, /* GL_MODELVIEW4_ARB */ @@ -5657,7 +5659,7 @@ static const unsigned reduced_enums[1555] = 1202, /* GL_MODULATE_ADD_ATI */ 1203, /* GL_MODULATE_SIGNED_ADD_ATI */ 1204, /* GL_MODULATE_SUBTRACT_ATI */ - 2301, /* GL_YCBCR_MESA */ + 2302, /* GL_YCBCR_MESA */ 1299, /* GL_PACK_INVERT_MESA */ 391, /* GL_DEBUG_OBJECT_MESA */ 392, /* GL_DEBUG_PRINT_MESA */ @@ -5674,10 +5676,10 @@ static const unsigned reduced_enums[1555] = 147, /* GL_BUMP_TARGET_ATI */ 1243, /* GL_NUM_PROGRAM_BINARY_FORMATS_OES */ 1451, /* GL_PROGRAM_BINARY_FORMATS_OES */ - 1828, /* GL_STENCIL_BACK_FUNC */ - 1826, /* GL_STENCIL_BACK_FAIL */ - 1830, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ - 1832, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ + 1829, /* GL_STENCIL_BACK_FUNC */ + 1827, /* GL_STENCIL_BACK_FAIL */ + 1831, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */ + 1833, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */ 599, /* GL_FRAGMENT_PROGRAM_ARB */ 1449, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */ 1481, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */ @@ -5724,10 +5726,10 @@ static const unsigned reduced_enums[1555] = 1008, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */ 1006, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */ 1002, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */ - 2048, /* GL_TEXTURE_DEPTH_SIZE */ + 2049, /* GL_TEXTURE_DEPTH_SIZE */ 438, /* GL_DEPTH_TEXTURE_MODE */ - 2005, /* GL_TEXTURE_COMPARE_MODE */ - 2003, /* GL_TEXTURE_COMPARE_FUNC */ + 2006, /* GL_TEXTURE_COMPARE_MODE */ + 2004, /* GL_TEXTURE_COMPARE_FUNC */ 284, /* GL_COMPARE_REF_TO_TEXTURE */ 1376, /* GL_POINT_SPRITE */ 346, /* GL_COORD_REPLACE */ @@ -5737,7 +5739,7 @@ static const unsigned reduced_enums[1555] = 1525, /* GL_QUERY_RESULT */ 1527, /* GL_QUERY_RESULT_AVAILABLE */ 1131, /* GL_MAX_VERTEX_ATTRIBS */ - 2254, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ + 2255, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */ 436, /* GL_DEPTH_STENCIL_TO_RGBA_NV */ 435, /* GL_DEPTH_STENCIL_TO_BGRA_NV */ 1108, /* GL_MAX_TEXTURE_COORDS */ @@ -5745,23 +5747,23 @@ static const unsigned reduced_enums[1555] = 1456, /* GL_PROGRAM_ERROR_STRING_ARB */ 1458, /* GL_PROGRAM_FORMAT_ASCII_ARB */ 1457, /* GL_PROGRAM_FORMAT_ARB */ - 2104, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */ + 2105, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */ 408, /* GL_DEPTH_BOUNDS_TEST_EXT */ 407, /* GL_DEPTH_BOUNDS_EXT */ 61, /* GL_ARRAY_BUFFER */ 523, /* GL_ELEMENT_ARRAY_BUFFER */ 62, /* GL_ARRAY_BUFFER_BINDING */ 524, /* GL_ELEMENT_ARRAY_BUFFER_BINDING */ - 2225, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ + 2226, /* GL_VERTEX_ARRAY_BUFFER_BINDING */ 1229, /* GL_NORMAL_ARRAY_BUFFER_BINDING */ 190, /* GL_COLOR_ARRAY_BUFFER_BINDING */ 736, /* GL_INDEX_ARRAY_BUFFER_BINDING */ - 2018, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ + 2019, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */ 519, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING */ - 1736, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ + 1737, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */ 577, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING */ - 2282, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ - 2247, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ + 2283, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */ + 2248, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */ 1459, /* GL_PROGRAM_INSTRUCTIONS_ARB */ 1074, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */ 1465, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */ @@ -5785,14 +5787,14 @@ static const unsigned reduced_enums[1555] = 1075, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */ 1071, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */ 1482, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */ - 2137, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ + 2138, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */ 1544, /* GL_READ_ONLY */ - 2296, /* GL_WRITE_ONLY */ + 2297, /* GL_WRITE_ONLY */ 1546, /* GL_READ_WRITE */ 124, /* GL_BUFFER_ACCESS */ 129, /* GL_BUFFER_MAPPED */ 134, /* GL_BUFFER_MAP_POINTER */ - 2111, /* GL_TIME_ELAPSED_EXT */ + 2112, /* GL_TIME_ELAPSED_EXT */ 959, /* GL_MATRIX0_ARB */ 971, /* GL_MATRIX1_ARB */ 983, /* GL_MATRIX2_ARB */ @@ -5825,12 +5827,12 @@ static const unsigned reduced_enums[1555] = 982, /* GL_MATRIX29_ARB */ 985, /* GL_MATRIX30_ARB */ 986, /* GL_MATRIX31_ARB */ - 1869, /* GL_STREAM_DRAW */ - 1871, /* GL_STREAM_READ */ - 1867, /* GL_STREAM_COPY */ - 1818, /* GL_STATIC_DRAW */ - 1820, /* GL_STATIC_READ */ - 1816, /* GL_STATIC_COPY */ + 1870, /* GL_STREAM_DRAW */ + 1872, /* GL_STREAM_READ */ + 1868, /* GL_STREAM_COPY */ + 1819, /* GL_STATIC_DRAW */ + 1821, /* GL_STATIC_READ */ + 1817, /* GL_STATIC_COPY */ 513, /* GL_DYNAMIC_DRAW */ 515, /* GL_DYNAMIC_READ */ 511, /* GL_DYNAMIC_COPY */ @@ -5839,24 +5841,25 @@ static const unsigned reduced_enums[1555] = 1340, /* GL_PIXEL_PACK_BUFFER_BINDING */ 1344, /* GL_PIXEL_UNPACK_BUFFER_BINDING */ 399, /* GL_DEPTH24_STENCIL8 */ - 2100, /* GL_TEXTURE_STENCIL_SIZE */ - 2046, /* GL_TEXTURE_CUBE_MAP_SEAMLESS */ + 2101, /* GL_TEXTURE_STENCIL_SIZE */ + 2047, /* GL_TEXTURE_CUBE_MAP_SEAMLESS */ 1070, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */ 1073, /* GL_MAX_PROGRAM_IF_DEPTH_NV */ 1077, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */ 1076, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */ - 2252, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER */ - 2249, /* GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB */ + 2253, /* GL_VERTEX_ATTRIB_ARRAY_INTEGER */ + 2250, /* GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB */ 1016, /* GL_MAX_ARRAY_TEXTURE_LAYERS */ 1154, /* GL_MIN_PROGRAM_TEXEL_OFFSET */ 1090, /* GL_MAX_PROGRAM_TEXEL_OFFSET */ - 1860, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ + 1861, /* GL_STENCIL_TEST_TWO_SIDE_EXT */ 18, /* GL_ACTIVE_STENCIL_FACE_EXT */ 1161, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */ - 1717, /* GL_SAMPLES_PASSED */ + 1718, /* GL_SAMPLES_PASSED */ 692, /* GL_GEOMETRY_VERTICES_OUT */ 686, /* GL_GEOMETRY_INPUT_TYPE */ 688, /* GL_GEOMETRY_OUTPUT_TYPE */ + 1709, /* GL_SAMPLER_BINDING */ 164, /* GL_CLAMP_VERTEX_COLOR_ARB */ 156, /* GL_CLAMP_FRAGMENT_COLOR_ARB */ 157, /* GL_CLAMP_READ_COLOR */ @@ -5866,25 +5869,25 @@ static const unsigned reduced_enums[1555] = 1361, /* GL_POINT_SIZE_ARRAY_POINTER_OES */ 1198, /* GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES */ 1485, /* GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES */ - 2080, /* GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES */ + 2081, /* GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES */ 138, /* GL_BUFFER_SERIALIZED_MODIFY_APPLE */ 128, /* GL_BUFFER_FLUSHING_UNMAP_APPLE */ 1561, /* GL_RELEASED_APPLE */ - 2279, /* GL_VOLATILE_APPLE */ + 2280, /* GL_VOLATILE_APPLE */ 1600, /* GL_RETAINED_APPLE */ - 2154, /* GL_UNDEFINED_APPLE */ + 2155, /* GL_UNDEFINED_APPLE */ 1509, /* GL_PURGEABLE_APPLE */ 600, /* GL_FRAGMENT_SHADER */ - 2274, /* GL_VERTEX_SHADER */ + 2275, /* GL_VERTEX_SHADER */ 1470, /* GL_PROGRAM_OBJECT_ARB */ - 1753, /* GL_SHADER_OBJECT_ARB */ + 1754, /* GL_SHADER_OBJECT_ARB */ 1045, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */ 1136, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */ 1127, /* GL_MAX_VARYING_COMPONENTS */ 1134, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */ 1028, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */ 1259, /* GL_OBJECT_TYPE_ARB */ - 1755, /* GL_SHADER_TYPE */ + 1756, /* GL_SHADER_TYPE */ 565, /* GL_FLOAT_VEC2 */ 567, /* GL_FLOAT_VEC3 */ 569, /* GL_FLOAT_VEC4 */ @@ -5901,7 +5904,7 @@ static const unsigned reduced_enums[1555] = 1693, /* GL_SAMPLER_1D */ 1699, /* GL_SAMPLER_2D */ 1707, /* GL_SAMPLER_3D */ - 1711, /* GL_SAMPLER_CUBE */ + 1712, /* GL_SAMPLER_CUBE */ 1698, /* GL_SAMPLER_1D_SHADOW */ 1706, /* GL_SAMPLER_2D_SHADOW */ 1704, /* GL_SAMPLER_2D_RECT */ @@ -5915,16 +5918,16 @@ static const unsigned reduced_enums[1555] = 397, /* GL_DELETE_STATUS */ 289, /* GL_COMPILE_STATUS */ 849, /* GL_LINK_STATUS */ - 2219, /* GL_VALIDATE_STATUS */ + 2220, /* GL_VALIDATE_STATUS */ 748, /* GL_INFO_LOG_LENGTH */ 64, /* GL_ATTACHED_SHADERS */ 21, /* GL_ACTIVE_UNIFORMS */ 22, /* GL_ACTIVE_UNIFORM_MAX_LENGTH */ - 1754, /* GL_SHADER_SOURCE_LENGTH */ + 1755, /* GL_SHADER_SOURCE_LENGTH */ 15, /* GL_ACTIVE_ATTRIBUTES */ 16, /* GL_ACTIVE_ATTRIBUTE_MAX_LENGTH */ 602, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */ - 1757, /* GL_SHADING_LANGUAGE_VERSION */ + 1758, /* GL_SHADING_LANGUAGE_VERSION */ 374, /* GL_CURRENT_PROGRAM */ 1308, /* GL_PALETTE4_RGB8_OES */ 1310, /* GL_PALETTE4_RGBA8_OES */ @@ -5939,60 +5942,60 @@ static const unsigned reduced_enums[1555] = 729, /* GL_IMPLEMENTATION_COLOR_READ_TYPE */ 727, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT */ 1360, /* GL_POINT_SIZE_ARRAY_OES */ - 2024, /* GL_TEXTURE_CROP_RECT_OES */ + 2025, /* GL_TEXTURE_CROP_RECT_OES */ 1000, /* GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES */ 1359, /* GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES */ - 2202, /* GL_UNSIGNED_NORMALIZED */ - 1957, /* GL_TEXTURE_1D_ARRAY */ + 2203, /* GL_UNSIGNED_NORMALIZED */ + 1958, /* GL_TEXTURE_1D_ARRAY */ 1495, /* GL_PROXY_TEXTURE_1D_ARRAY */ - 1960, /* GL_TEXTURE_2D_ARRAY */ + 1961, /* GL_TEXTURE_2D_ARRAY */ 1499, /* GL_PROXY_TEXTURE_2D_ARRAY */ - 1968, /* GL_TEXTURE_BINDING_1D_ARRAY */ - 1971, /* GL_TEXTURE_BINDING_2D_ARRAY */ + 1969, /* GL_TEXTURE_BINDING_1D_ARRAY */ + 1972, /* GL_TEXTURE_BINDING_2D_ARRAY */ 1052, /* GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS */ - 1988, /* GL_TEXTURE_BUFFER */ + 1989, /* GL_TEXTURE_BUFFER */ 1106, /* GL_MAX_TEXTURE_BUFFER_SIZE */ - 1975, /* GL_TEXTURE_BINDING_BUFFER */ - 1990, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING */ - 1992, /* GL_TEXTURE_BUFFER_FORMAT */ + 1976, /* GL_TEXTURE_BINDING_BUFFER */ + 1991, /* GL_TEXTURE_BUFFER_DATA_STORE_BINDING */ + 1993, /* GL_TEXTURE_BUFFER_FORMAT */ 1532, /* GL_R11F_G11F_B10F */ - 2168, /* GL_UNSIGNED_INT_10F_11F_11F_REV */ + 2169, /* GL_UNSIGNED_INT_10F_11F_11F_REV */ 1643, /* GL_RGB9_E5 */ - 2177, /* GL_UNSIGNED_INT_5_9_9_9_REV */ - 2098, /* GL_TEXTURE_SHARED_SIZE */ - 1810, /* GL_SRGB */ - 1811, /* GL_SRGB8 */ - 1813, /* GL_SRGB_ALPHA */ - 1812, /* GL_SRGB8_ALPHA8 */ - 1770, /* GL_SLUMINANCE_ALPHA */ - 1769, /* GL_SLUMINANCE8_ALPHA8 */ - 1767, /* GL_SLUMINANCE */ - 1768, /* GL_SLUMINANCE8 */ + 2178, /* GL_UNSIGNED_INT_5_9_9_9_REV */ + 2099, /* GL_TEXTURE_SHARED_SIZE */ + 1811, /* GL_SRGB */ + 1812, /* GL_SRGB8 */ + 1814, /* GL_SRGB_ALPHA */ + 1813, /* GL_SRGB8_ALPHA8 */ + 1771, /* GL_SLUMINANCE_ALPHA */ + 1770, /* GL_SLUMINANCE8_ALPHA8 */ + 1768, /* GL_SLUMINANCE */ + 1769, /* GL_SLUMINANCE8 */ 312, /* GL_COMPRESSED_SRGB */ 313, /* GL_COMPRESSED_SRGB_ALPHA */ 310, /* GL_COMPRESSED_SLUMINANCE */ 311, /* GL_COMPRESSED_SLUMINANCE_ALPHA */ - 2133, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH */ - 2122, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE */ + 2134, /* GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH */ + 2123, /* GL_TRANSFORM_FEEDBACK_BUFFER_MODE */ 1125, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS */ - 2131, /* GL_TRANSFORM_FEEDBACK_VARYINGS */ - 2127, /* GL_TRANSFORM_FEEDBACK_BUFFER_START */ - 2125, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE */ + 2132, /* GL_TRANSFORM_FEEDBACK_VARYINGS */ + 2128, /* GL_TRANSFORM_FEEDBACK_BUFFER_START */ + 2126, /* GL_TRANSFORM_FEEDBACK_BUFFER_SIZE */ 1442, /* GL_PRIMITIVES_GENERATED */ - 2129, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN */ + 2130, /* GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN */ 1536, /* GL_RASTERIZER_DISCARD */ 1121, /* GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS */ 1123, /* GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS */ 766, /* GL_INTERLEAVED_ATTRIBS */ - 1746, /* GL_SEPARATE_ATTRIBS */ - 2117, /* GL_TRANSFORM_FEEDBACK_BUFFER */ - 2119, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING */ + 1747, /* GL_SEPARATE_ATTRIBS */ + 2118, /* GL_TRANSFORM_FEEDBACK_BUFFER */ + 2120, /* GL_TRANSFORM_FEEDBACK_BUFFER_BINDING */ 1378, /* GL_POINT_SPRITE_COORD_ORIGIN */ 857, /* GL_LOWER_LEFT */ - 2216, /* GL_UPPER_LEFT */ - 1834, /* GL_STENCIL_BACK_REF */ - 1835, /* GL_STENCIL_BACK_VALUE_MASK */ - 1836, /* GL_STENCIL_BACK_WRITEMASK */ + 2217, /* GL_UPPER_LEFT */ + 1835, /* GL_STENCIL_BACK_REF */ + 1836, /* GL_STENCIL_BACK_VALUE_MASK */ + 1837, /* GL_STENCIL_BACK_WRITEMASK */ 503, /* GL_DRAW_FRAMEBUFFER_BINDING */ 1566, /* GL_RENDERBUFFER_BINDING */ 1540, /* GL_READ_FRAMEBUFFER */ @@ -6032,17 +6035,17 @@ static const unsigned reduced_enums[1555] = 208, /* GL_COLOR_ATTACHMENT14 */ 210, /* GL_COLOR_ATTACHMENT15 */ 402, /* GL_DEPTH_ATTACHMENT */ - 1823, /* GL_STENCIL_ATTACHMENT */ + 1824, /* GL_STENCIL_ATTACHMENT */ 604, /* GL_FRAMEBUFFER */ 1563, /* GL_RENDERBUFFER */ 1589, /* GL_RENDERBUFFER_WIDTH */ 1576, /* GL_RENDERBUFFER_HEIGHT */ 1579, /* GL_RENDERBUFFER_INTERNAL_FORMAT */ - 1855, /* GL_STENCIL_INDEX_EXT */ - 1844, /* GL_STENCIL_INDEX1 */ - 1849, /* GL_STENCIL_INDEX4 */ - 1852, /* GL_STENCIL_INDEX8 */ - 1845, /* GL_STENCIL_INDEX16 */ + 1856, /* GL_STENCIL_INDEX_EXT */ + 1845, /* GL_STENCIL_INDEX1 */ + 1850, /* GL_STENCIL_INDEX4 */ + 1853, /* GL_STENCIL_INDEX8 */ + 1846, /* GL_STENCIL_INDEX16 */ 1583, /* GL_RENDERBUFFER_RED_SIZE */ 1574, /* GL_RENDERBUFFER_GREEN_SIZE */ 1569, /* GL_RENDERBUFFER_BLUE_SIZE */ @@ -6051,7 +6054,7 @@ static const unsigned reduced_enums[1555] = 1587, /* GL_RENDERBUFFER_STENCIL_SIZE */ 657, /* GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE */ 1101, /* GL_MAX_SAMPLES */ - 2060, /* GL_TEXTURE_GEN_STR_OES */ + 2061, /* GL_TEXTURE_GEN_STR_OES */ 703, /* GL_HALF_FLOAT_OES */ 1630, /* GL_RGB565_OES */ 1660, /* GL_RGBA32UI */ @@ -6106,13 +6109,13 @@ static const unsigned reduced_enums[1555] = 651, /* GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB */ 1694, /* GL_SAMPLER_1D_ARRAY */ 1700, /* GL_SAMPLER_2D_ARRAY */ - 1709, /* GL_SAMPLER_BUFFER */ + 1710, /* GL_SAMPLER_BUFFER */ 1696, /* GL_SAMPLER_1D_ARRAY_SHADOW */ 1702, /* GL_SAMPLER_2D_ARRAY_SHADOW */ - 1712, /* GL_SAMPLER_CUBE_SHADOW */ - 2196, /* GL_UNSIGNED_INT_VEC2 */ - 2198, /* GL_UNSIGNED_INT_VEC3 */ - 2200, /* GL_UNSIGNED_INT_VEC4 */ + 1713, /* GL_SAMPLER_CUBE_SHADOW */ + 2197, /* GL_UNSIGNED_INT_VEC2 */ + 2199, /* GL_UNSIGNED_INT_VEC3 */ + 2201, /* GL_UNSIGNED_INT_VEC4 */ 772, /* GL_INT_SAMPLER_1D */ 776, /* GL_INT_SAMPLER_2D */ 782, /* GL_INT_SAMPLER_3D */ @@ -6121,14 +6124,14 @@ static const unsigned reduced_enums[1555] = 773, /* GL_INT_SAMPLER_1D_ARRAY */ 777, /* GL_INT_SAMPLER_2D_ARRAY */ 784, /* GL_INT_SAMPLER_BUFFER */ - 2180, /* GL_UNSIGNED_INT_SAMPLER_1D */ - 2184, /* GL_UNSIGNED_INT_SAMPLER_2D */ - 2190, /* GL_UNSIGNED_INT_SAMPLER_3D */ - 2194, /* GL_UNSIGNED_INT_SAMPLER_CUBE */ - 2188, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT */ - 2181, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY */ - 2185, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY */ - 2192, /* GL_UNSIGNED_INT_SAMPLER_BUFFER */ + 2181, /* GL_UNSIGNED_INT_SAMPLER_1D */ + 2185, /* GL_UNSIGNED_INT_SAMPLER_2D */ + 2191, /* GL_UNSIGNED_INT_SAMPLER_3D */ + 2195, /* GL_UNSIGNED_INT_SAMPLER_CUBE */ + 2189, /* GL_UNSIGNED_INT_SAMPLER_2D_RECT */ + 2182, /* GL_UNSIGNED_INT_SAMPLER_1D_ARRAY */ + 2186, /* GL_UNSIGNED_INT_SAMPLER_2D_ARRAY */ + 2193, /* GL_UNSIGNED_INT_SAMPLER_BUFFER */ 690, /* GL_GEOMETRY_SHADER */ 693, /* GL_GEOMETRY_VERTICES_OUT_ARB */ 687, /* GL_GEOMETRY_INPUT_TYPE_ARB */ @@ -6144,11 +6147,11 @@ static const unsigned reduced_enums[1555] = 859, /* GL_LOW_INT */ 1144, /* GL_MEDIUM_INT */ 705, /* GL_HIGH_INT */ - 2170, /* GL_UNSIGNED_INT_10_10_10_2_OES */ + 2171, /* GL_UNSIGNED_INT_10_10_10_2_OES */ 771, /* GL_INT_10_10_10_2_OES */ - 1751, /* GL_SHADER_BINARY_FORMATS */ + 1752, /* GL_SHADER_BINARY_FORMATS */ 1244, /* GL_NUM_SHADER_BINARY_FORMATS */ - 1752, /* GL_SHADER_COMPILER */ + 1753, /* GL_SHADER_COMPILER */ 1138, /* GL_MAX_VERTEX_UNIFORM_VECTORS */ 1130, /* GL_MAX_VARYING_VECTORS */ 1047, /* GL_MAX_FRAGMENT_UNIFORM_VECTORS */ @@ -6156,10 +6159,10 @@ static const unsigned reduced_enums[1555] = 1523, /* GL_QUERY_NO_WAIT */ 1519, /* GL_QUERY_BY_REGION_WAIT */ 1517, /* GL_QUERY_BY_REGION_NO_WAIT */ - 2115, /* GL_TRANSFORM_FEEDBACK */ - 2124, /* GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED */ - 2118, /* GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE */ - 2116, /* GL_TRANSFORM_FEEDBACK_BINDING */ + 2116, /* GL_TRANSFORM_FEEDBACK */ + 2125, /* GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED */ + 2119, /* GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE */ + 2117, /* GL_TRANSFORM_FEEDBACK_BINDING */ 1513, /* GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION */ 545, /* GL_FIRST_VERTEX_CONVENTION */ 804, /* GL_LAST_VERTEX_CONVENTION */ @@ -6178,22 +6181,22 @@ static const unsigned reduced_enums[1555] = 1602, /* GL_RG16_SNORM */ 1618, /* GL_RGB16_SNORM */ 1654, /* GL_RGBA16_SNORM */ - 1763, /* GL_SIGNED_NORMALIZED */ + 1764, /* GL_SIGNED_NORMALIZED */ 1444, /* GL_PRIMITIVE_RESTART */ 1445, /* GL_PRIMITIVE_RESTART_INDEX */ 1103, /* GL_MAX_SERVER_WAIT_TIMEOUT */ 1258, /* GL_OBJECT_TYPE */ - 1876, /* GL_SYNC_CONDITION */ - 1881, /* GL_SYNC_STATUS */ - 1878, /* GL_SYNC_FLAGS */ - 1877, /* GL_SYNC_FENCE */ - 1880, /* GL_SYNC_GPU_COMMANDS_COMPLETE */ - 2163, /* GL_UNSIGNALED */ - 1762, /* GL_SIGNALED */ + 1877, /* GL_SYNC_CONDITION */ + 1882, /* GL_SYNC_STATUS */ + 1879, /* GL_SYNC_FLAGS */ + 1878, /* GL_SYNC_FENCE */ + 1881, /* GL_SYNC_GPU_COMMANDS_COMPLETE */ + 2164, /* GL_UNSIGNALED */ + 1763, /* GL_SIGNALED */ 54, /* GL_ALREADY_SIGNALED */ - 2110, /* GL_TIMEOUT_EXPIRED */ + 2111, /* GL_TIMEOUT_EXPIRED */ 315, /* GL_CONDITION_SATISFIED */ - 2280, /* GL_WAIT_FAILED */ + 2281, /* GL_WAIT_FAILED */ 126, /* GL_BUFFER_ACCESS_FLAGS */ 132, /* GL_BUFFER_MAP_LENGTH */ 133, /* GL_BUFFER_MAP_OFFSET */ @@ -6205,8 +6208,8 @@ static const unsigned reduced_enums[1555] = 530, /* GL_EVAL_BIT */ 1538, /* GL_RASTER_POSITION_UNCLIPPED_IBM */ 851, /* GL_LIST_BIT */ - 1983, /* GL_TEXTURE_BIT */ - 1732, /* GL_SCISSOR_BIT */ + 1984, /* GL_TEXTURE_BIT */ + 1733, /* GL_SCISSOR_BIT */ 30, /* GL_ALL_ATTRIB_BITS */ 1209, /* GL_MULTISAMPLE_BIT */ 31, /* GL_ALL_CLIENT_ATTRIB_BITS */ diff --git a/src/mesa/main/glapidispatch.h b/src/mesa/main/glapidispatch.h index 4391a39fb2a..c1cc6cb1254 100644 --- a/src/mesa/main/glapidispatch.h +++ b/src/mesa/main/glapidispatch.h @@ -59,7 +59,7 @@ } while(0) /* total number of offsets below */ -#define _gloffset_COUNT 894 +#define _gloffset_COUNT 908 #define _gloffset_NewList 0 #define _gloffset_EndList 1 @@ -664,304 +664,318 @@ #define _gloffset_BlendEquationiARB 597 #define _gloffset_BlendFuncSeparateiARB 598 #define _gloffset_BlendFunciARB 599 -#define _gloffset_BindTransformFeedback 600 -#define _gloffset_DeleteTransformFeedbacks 601 -#define _gloffset_DrawTransformFeedback 602 -#define _gloffset_GenTransformFeedbacks 603 -#define _gloffset_IsTransformFeedback 604 -#define _gloffset_PauseTransformFeedback 605 -#define _gloffset_ResumeTransformFeedback 606 -#define _gloffset_ClearDepthf 607 -#define _gloffset_DepthRangef 608 -#define _gloffset_GetShaderPrecisionFormat 609 -#define _gloffset_ReleaseShaderCompiler 610 -#define _gloffset_ShaderBinary 611 -#define _gloffset_PolygonOffsetEXT 612 -#define _gloffset_GetPixelTexGenParameterfvSGIS 613 -#define _gloffset_GetPixelTexGenParameterivSGIS 614 -#define _gloffset_PixelTexGenParameterfSGIS 615 -#define _gloffset_PixelTexGenParameterfvSGIS 616 -#define _gloffset_PixelTexGenParameteriSGIS 617 -#define _gloffset_PixelTexGenParameterivSGIS 618 -#define _gloffset_SampleMaskSGIS 619 -#define _gloffset_SamplePatternSGIS 620 -#define _gloffset_ColorPointerEXT 621 -#define _gloffset_EdgeFlagPointerEXT 622 -#define _gloffset_IndexPointerEXT 623 -#define _gloffset_NormalPointerEXT 624 -#define _gloffset_TexCoordPointerEXT 625 -#define _gloffset_VertexPointerEXT 626 -#define _gloffset_PointParameterfEXT 627 -#define _gloffset_PointParameterfvEXT 628 -#define _gloffset_LockArraysEXT 629 -#define _gloffset_UnlockArraysEXT 630 -#define _gloffset_SecondaryColor3bEXT 631 -#define _gloffset_SecondaryColor3bvEXT 632 -#define _gloffset_SecondaryColor3dEXT 633 -#define _gloffset_SecondaryColor3dvEXT 634 -#define _gloffset_SecondaryColor3fEXT 635 -#define _gloffset_SecondaryColor3fvEXT 636 -#define _gloffset_SecondaryColor3iEXT 637 -#define _gloffset_SecondaryColor3ivEXT 638 -#define _gloffset_SecondaryColor3sEXT 639 -#define _gloffset_SecondaryColor3svEXT 640 -#define _gloffset_SecondaryColor3ubEXT 641 -#define _gloffset_SecondaryColor3ubvEXT 642 -#define _gloffset_SecondaryColor3uiEXT 643 -#define _gloffset_SecondaryColor3uivEXT 644 -#define _gloffset_SecondaryColor3usEXT 645 -#define _gloffset_SecondaryColor3usvEXT 646 -#define _gloffset_SecondaryColorPointerEXT 647 -#define _gloffset_MultiDrawArraysEXT 648 -#define _gloffset_MultiDrawElementsEXT 649 -#define _gloffset_FogCoordPointerEXT 650 -#define _gloffset_FogCoorddEXT 651 -#define _gloffset_FogCoorddvEXT 652 -#define _gloffset_FogCoordfEXT 653 -#define _gloffset_FogCoordfvEXT 654 -#define _gloffset_PixelTexGenSGIX 655 -#define _gloffset_BlendFuncSeparateEXT 656 -#define _gloffset_FlushVertexArrayRangeNV 657 -#define _gloffset_VertexArrayRangeNV 658 -#define _gloffset_CombinerInputNV 659 -#define _gloffset_CombinerOutputNV 660 -#define _gloffset_CombinerParameterfNV 661 -#define _gloffset_CombinerParameterfvNV 662 -#define _gloffset_CombinerParameteriNV 663 -#define _gloffset_CombinerParameterivNV 664 -#define _gloffset_FinalCombinerInputNV 665 -#define _gloffset_GetCombinerInputParameterfvNV 666 -#define _gloffset_GetCombinerInputParameterivNV 667 -#define _gloffset_GetCombinerOutputParameterfvNV 668 -#define _gloffset_GetCombinerOutputParameterivNV 669 -#define _gloffset_GetFinalCombinerInputParameterfvNV 670 -#define _gloffset_GetFinalCombinerInputParameterivNV 671 -#define _gloffset_ResizeBuffersMESA 672 -#define _gloffset_WindowPos2dMESA 673 -#define _gloffset_WindowPos2dvMESA 674 -#define _gloffset_WindowPos2fMESA 675 -#define _gloffset_WindowPos2fvMESA 676 -#define _gloffset_WindowPos2iMESA 677 -#define _gloffset_WindowPos2ivMESA 678 -#define _gloffset_WindowPos2sMESA 679 -#define _gloffset_WindowPos2svMESA 680 -#define _gloffset_WindowPos3dMESA 681 -#define _gloffset_WindowPos3dvMESA 682 -#define _gloffset_WindowPos3fMESA 683 -#define _gloffset_WindowPos3fvMESA 684 -#define _gloffset_WindowPos3iMESA 685 -#define _gloffset_WindowPos3ivMESA 686 -#define _gloffset_WindowPos3sMESA 687 -#define _gloffset_WindowPos3svMESA 688 -#define _gloffset_WindowPos4dMESA 689 -#define _gloffset_WindowPos4dvMESA 690 -#define _gloffset_WindowPos4fMESA 691 -#define _gloffset_WindowPos4fvMESA 692 -#define _gloffset_WindowPos4iMESA 693 -#define _gloffset_WindowPos4ivMESA 694 -#define _gloffset_WindowPos4sMESA 695 -#define _gloffset_WindowPos4svMESA 696 -#define _gloffset_MultiModeDrawArraysIBM 697 -#define _gloffset_MultiModeDrawElementsIBM 698 -#define _gloffset_DeleteFencesNV 699 -#define _gloffset_FinishFenceNV 700 -#define _gloffset_GenFencesNV 701 -#define _gloffset_GetFenceivNV 702 -#define _gloffset_IsFenceNV 703 -#define _gloffset_SetFenceNV 704 -#define _gloffset_TestFenceNV 705 -#define _gloffset_AreProgramsResidentNV 706 -#define _gloffset_BindProgramNV 707 -#define _gloffset_DeleteProgramsNV 708 -#define _gloffset_ExecuteProgramNV 709 -#define _gloffset_GenProgramsNV 710 -#define _gloffset_GetProgramParameterdvNV 711 -#define _gloffset_GetProgramParameterfvNV 712 -#define _gloffset_GetProgramStringNV 713 -#define _gloffset_GetProgramivNV 714 -#define _gloffset_GetTrackMatrixivNV 715 -#define _gloffset_GetVertexAttribPointervNV 716 -#define _gloffset_GetVertexAttribdvNV 717 -#define _gloffset_GetVertexAttribfvNV 718 -#define _gloffset_GetVertexAttribivNV 719 -#define _gloffset_IsProgramNV 720 -#define _gloffset_LoadProgramNV 721 -#define _gloffset_ProgramParameters4dvNV 722 -#define _gloffset_ProgramParameters4fvNV 723 -#define _gloffset_RequestResidentProgramsNV 724 -#define _gloffset_TrackMatrixNV 725 -#define _gloffset_VertexAttrib1dNV 726 -#define _gloffset_VertexAttrib1dvNV 727 -#define _gloffset_VertexAttrib1fNV 728 -#define _gloffset_VertexAttrib1fvNV 729 -#define _gloffset_VertexAttrib1sNV 730 -#define _gloffset_VertexAttrib1svNV 731 -#define _gloffset_VertexAttrib2dNV 732 -#define _gloffset_VertexAttrib2dvNV 733 -#define _gloffset_VertexAttrib2fNV 734 -#define _gloffset_VertexAttrib2fvNV 735 -#define _gloffset_VertexAttrib2sNV 736 -#define _gloffset_VertexAttrib2svNV 737 -#define _gloffset_VertexAttrib3dNV 738 -#define _gloffset_VertexAttrib3dvNV 739 -#define _gloffset_VertexAttrib3fNV 740 -#define _gloffset_VertexAttrib3fvNV 741 -#define _gloffset_VertexAttrib3sNV 742 -#define _gloffset_VertexAttrib3svNV 743 -#define _gloffset_VertexAttrib4dNV 744 -#define _gloffset_VertexAttrib4dvNV 745 -#define _gloffset_VertexAttrib4fNV 746 -#define _gloffset_VertexAttrib4fvNV 747 -#define _gloffset_VertexAttrib4sNV 748 -#define _gloffset_VertexAttrib4svNV 749 -#define _gloffset_VertexAttrib4ubNV 750 -#define _gloffset_VertexAttrib4ubvNV 751 -#define _gloffset_VertexAttribPointerNV 752 -#define _gloffset_VertexAttribs1dvNV 753 -#define _gloffset_VertexAttribs1fvNV 754 -#define _gloffset_VertexAttribs1svNV 755 -#define _gloffset_VertexAttribs2dvNV 756 -#define _gloffset_VertexAttribs2fvNV 757 -#define _gloffset_VertexAttribs2svNV 758 -#define _gloffset_VertexAttribs3dvNV 759 -#define _gloffset_VertexAttribs3fvNV 760 -#define _gloffset_VertexAttribs3svNV 761 -#define _gloffset_VertexAttribs4dvNV 762 -#define _gloffset_VertexAttribs4fvNV 763 -#define _gloffset_VertexAttribs4svNV 764 -#define _gloffset_VertexAttribs4ubvNV 765 -#define _gloffset_GetTexBumpParameterfvATI 766 -#define _gloffset_GetTexBumpParameterivATI 767 -#define _gloffset_TexBumpParameterfvATI 768 -#define _gloffset_TexBumpParameterivATI 769 -#define _gloffset_AlphaFragmentOp1ATI 770 -#define _gloffset_AlphaFragmentOp2ATI 771 -#define _gloffset_AlphaFragmentOp3ATI 772 -#define _gloffset_BeginFragmentShaderATI 773 -#define _gloffset_BindFragmentShaderATI 774 -#define _gloffset_ColorFragmentOp1ATI 775 -#define _gloffset_ColorFragmentOp2ATI 776 -#define _gloffset_ColorFragmentOp3ATI 777 -#define _gloffset_DeleteFragmentShaderATI 778 -#define _gloffset_EndFragmentShaderATI 779 -#define _gloffset_GenFragmentShadersATI 780 -#define _gloffset_PassTexCoordATI 781 -#define _gloffset_SampleMapATI 782 -#define _gloffset_SetFragmentShaderConstantATI 783 -#define _gloffset_PointParameteriNV 784 -#define _gloffset_PointParameterivNV 785 -#define _gloffset_ActiveStencilFaceEXT 786 -#define _gloffset_BindVertexArrayAPPLE 787 -#define _gloffset_DeleteVertexArraysAPPLE 788 -#define _gloffset_GenVertexArraysAPPLE 789 -#define _gloffset_IsVertexArrayAPPLE 790 -#define _gloffset_GetProgramNamedParameterdvNV 791 -#define _gloffset_GetProgramNamedParameterfvNV 792 -#define _gloffset_ProgramNamedParameter4dNV 793 -#define _gloffset_ProgramNamedParameter4dvNV 794 -#define _gloffset_ProgramNamedParameter4fNV 795 -#define _gloffset_ProgramNamedParameter4fvNV 796 -#define _gloffset_PrimitiveRestartIndexNV 797 -#define _gloffset_PrimitiveRestartNV 798 -#define _gloffset_DepthBoundsEXT 799 -#define _gloffset_BlendEquationSeparateEXT 800 -#define _gloffset_BindFramebufferEXT 801 -#define _gloffset_BindRenderbufferEXT 802 -#define _gloffset_CheckFramebufferStatusEXT 803 -#define _gloffset_DeleteFramebuffersEXT 804 -#define _gloffset_DeleteRenderbuffersEXT 805 -#define _gloffset_FramebufferRenderbufferEXT 806 -#define _gloffset_FramebufferTexture1DEXT 807 -#define _gloffset_FramebufferTexture2DEXT 808 -#define _gloffset_FramebufferTexture3DEXT 809 -#define _gloffset_GenFramebuffersEXT 810 -#define _gloffset_GenRenderbuffersEXT 811 -#define _gloffset_GenerateMipmapEXT 812 -#define _gloffset_GetFramebufferAttachmentParameterivEXT 813 -#define _gloffset_GetRenderbufferParameterivEXT 814 -#define _gloffset_IsFramebufferEXT 815 -#define _gloffset_IsRenderbufferEXT 816 -#define _gloffset_RenderbufferStorageEXT 817 -#define _gloffset_BlitFramebufferEXT 818 -#define _gloffset_BufferParameteriAPPLE 819 -#define _gloffset_FlushMappedBufferRangeAPPLE 820 -#define _gloffset_BindFragDataLocationEXT 821 -#define _gloffset_GetFragDataLocationEXT 822 -#define _gloffset_GetUniformuivEXT 823 -#define _gloffset_GetVertexAttribIivEXT 824 -#define _gloffset_GetVertexAttribIuivEXT 825 -#define _gloffset_Uniform1uiEXT 826 -#define _gloffset_Uniform1uivEXT 827 -#define _gloffset_Uniform2uiEXT 828 -#define _gloffset_Uniform2uivEXT 829 -#define _gloffset_Uniform3uiEXT 830 -#define _gloffset_Uniform3uivEXT 831 -#define _gloffset_Uniform4uiEXT 832 -#define _gloffset_Uniform4uivEXT 833 -#define _gloffset_VertexAttribI1iEXT 834 -#define _gloffset_VertexAttribI1ivEXT 835 -#define _gloffset_VertexAttribI1uiEXT 836 -#define _gloffset_VertexAttribI1uivEXT 837 -#define _gloffset_VertexAttribI2iEXT 838 -#define _gloffset_VertexAttribI2ivEXT 839 -#define _gloffset_VertexAttribI2uiEXT 840 -#define _gloffset_VertexAttribI2uivEXT 841 -#define _gloffset_VertexAttribI3iEXT 842 -#define _gloffset_VertexAttribI3ivEXT 843 -#define _gloffset_VertexAttribI3uiEXT 844 -#define _gloffset_VertexAttribI3uivEXT 845 -#define _gloffset_VertexAttribI4bvEXT 846 -#define _gloffset_VertexAttribI4iEXT 847 -#define _gloffset_VertexAttribI4ivEXT 848 -#define _gloffset_VertexAttribI4svEXT 849 -#define _gloffset_VertexAttribI4ubvEXT 850 -#define _gloffset_VertexAttribI4uiEXT 851 -#define _gloffset_VertexAttribI4uivEXT 852 -#define _gloffset_VertexAttribI4usvEXT 853 -#define _gloffset_VertexAttribIPointerEXT 854 -#define _gloffset_FramebufferTextureLayerEXT 855 -#define _gloffset_ColorMaskIndexedEXT 856 -#define _gloffset_DisableIndexedEXT 857 -#define _gloffset_EnableIndexedEXT 858 -#define _gloffset_GetBooleanIndexedvEXT 859 -#define _gloffset_GetIntegerIndexedvEXT 860 -#define _gloffset_IsEnabledIndexedEXT 861 -#define _gloffset_ClearColorIiEXT 862 -#define _gloffset_ClearColorIuiEXT 863 -#define _gloffset_GetTexParameterIivEXT 864 -#define _gloffset_GetTexParameterIuivEXT 865 -#define _gloffset_TexParameterIivEXT 866 -#define _gloffset_TexParameterIuivEXT 867 -#define _gloffset_BeginConditionalRenderNV 868 -#define _gloffset_EndConditionalRenderNV 869 -#define _gloffset_BeginTransformFeedbackEXT 870 -#define _gloffset_BindBufferBaseEXT 871 -#define _gloffset_BindBufferOffsetEXT 872 -#define _gloffset_BindBufferRangeEXT 873 -#define _gloffset_EndTransformFeedbackEXT 874 -#define _gloffset_GetTransformFeedbackVaryingEXT 875 -#define _gloffset_TransformFeedbackVaryingsEXT 876 -#define _gloffset_ProvokingVertexEXT 877 -#define _gloffset_GetTexParameterPointervAPPLE 878 -#define _gloffset_TextureRangeAPPLE 879 -#define _gloffset_GetObjectParameterivAPPLE 880 -#define _gloffset_ObjectPurgeableAPPLE 881 -#define _gloffset_ObjectUnpurgeableAPPLE 882 -#define _gloffset_ActiveProgramEXT 883 -#define _gloffset_CreateShaderProgramEXT 884 -#define _gloffset_UseShaderProgramEXT 885 -#define _gloffset_TextureBarrierNV 886 -#define _gloffset_StencilFuncSeparateATI 887 -#define _gloffset_ProgramEnvParameters4fvEXT 888 -#define _gloffset_ProgramLocalParameters4fvEXT 889 -#define _gloffset_GetQueryObjecti64vEXT 890 -#define _gloffset_GetQueryObjectui64vEXT 891 -#define _gloffset_EGLImageTargetRenderbufferStorageOES 892 -#define _gloffset_EGLImageTargetTexture2DOES 893 +#define _gloffset_BindSampler 600 +#define _gloffset_DeleteSamplers 601 +#define _gloffset_GenSamplers 602 +#define _gloffset_GetSamplerParameterIiv 603 +#define _gloffset_GetSamplerParameterIuiv 604 +#define _gloffset_GetSamplerParameterfv 605 +#define _gloffset_GetSamplerParameteriv 606 +#define _gloffset_IsSampler 607 +#define _gloffset_SamplerParameterIiv 608 +#define _gloffset_SamplerParameterIuiv 609 +#define _gloffset_SamplerParameterf 610 +#define _gloffset_SamplerParameterfv 611 +#define _gloffset_SamplerParameteri 612 +#define _gloffset_SamplerParameteriv 613 +#define _gloffset_BindTransformFeedback 614 +#define _gloffset_DeleteTransformFeedbacks 615 +#define _gloffset_DrawTransformFeedback 616 +#define _gloffset_GenTransformFeedbacks 617 +#define _gloffset_IsTransformFeedback 618 +#define _gloffset_PauseTransformFeedback 619 +#define _gloffset_ResumeTransformFeedback 620 +#define _gloffset_ClearDepthf 621 +#define _gloffset_DepthRangef 622 +#define _gloffset_GetShaderPrecisionFormat 623 +#define _gloffset_ReleaseShaderCompiler 624 +#define _gloffset_ShaderBinary 625 +#define _gloffset_PolygonOffsetEXT 626 +#define _gloffset_GetPixelTexGenParameterfvSGIS 627 +#define _gloffset_GetPixelTexGenParameterivSGIS 628 +#define _gloffset_PixelTexGenParameterfSGIS 629 +#define _gloffset_PixelTexGenParameterfvSGIS 630 +#define _gloffset_PixelTexGenParameteriSGIS 631 +#define _gloffset_PixelTexGenParameterivSGIS 632 +#define _gloffset_SampleMaskSGIS 633 +#define _gloffset_SamplePatternSGIS 634 +#define _gloffset_ColorPointerEXT 635 +#define _gloffset_EdgeFlagPointerEXT 636 +#define _gloffset_IndexPointerEXT 637 +#define _gloffset_NormalPointerEXT 638 +#define _gloffset_TexCoordPointerEXT 639 +#define _gloffset_VertexPointerEXT 640 +#define _gloffset_PointParameterfEXT 641 +#define _gloffset_PointParameterfvEXT 642 +#define _gloffset_LockArraysEXT 643 +#define _gloffset_UnlockArraysEXT 644 +#define _gloffset_SecondaryColor3bEXT 645 +#define _gloffset_SecondaryColor3bvEXT 646 +#define _gloffset_SecondaryColor3dEXT 647 +#define _gloffset_SecondaryColor3dvEXT 648 +#define _gloffset_SecondaryColor3fEXT 649 +#define _gloffset_SecondaryColor3fvEXT 650 +#define _gloffset_SecondaryColor3iEXT 651 +#define _gloffset_SecondaryColor3ivEXT 652 +#define _gloffset_SecondaryColor3sEXT 653 +#define _gloffset_SecondaryColor3svEXT 654 +#define _gloffset_SecondaryColor3ubEXT 655 +#define _gloffset_SecondaryColor3ubvEXT 656 +#define _gloffset_SecondaryColor3uiEXT 657 +#define _gloffset_SecondaryColor3uivEXT 658 +#define _gloffset_SecondaryColor3usEXT 659 +#define _gloffset_SecondaryColor3usvEXT 660 +#define _gloffset_SecondaryColorPointerEXT 661 +#define _gloffset_MultiDrawArraysEXT 662 +#define _gloffset_MultiDrawElementsEXT 663 +#define _gloffset_FogCoordPointerEXT 664 +#define _gloffset_FogCoorddEXT 665 +#define _gloffset_FogCoorddvEXT 666 +#define _gloffset_FogCoordfEXT 667 +#define _gloffset_FogCoordfvEXT 668 +#define _gloffset_PixelTexGenSGIX 669 +#define _gloffset_BlendFuncSeparateEXT 670 +#define _gloffset_FlushVertexArrayRangeNV 671 +#define _gloffset_VertexArrayRangeNV 672 +#define _gloffset_CombinerInputNV 673 +#define _gloffset_CombinerOutputNV 674 +#define _gloffset_CombinerParameterfNV 675 +#define _gloffset_CombinerParameterfvNV 676 +#define _gloffset_CombinerParameteriNV 677 +#define _gloffset_CombinerParameterivNV 678 +#define _gloffset_FinalCombinerInputNV 679 +#define _gloffset_GetCombinerInputParameterfvNV 680 +#define _gloffset_GetCombinerInputParameterivNV 681 +#define _gloffset_GetCombinerOutputParameterfvNV 682 +#define _gloffset_GetCombinerOutputParameterivNV 683 +#define _gloffset_GetFinalCombinerInputParameterfvNV 684 +#define _gloffset_GetFinalCombinerInputParameterivNV 685 +#define _gloffset_ResizeBuffersMESA 686 +#define _gloffset_WindowPos2dMESA 687 +#define _gloffset_WindowPos2dvMESA 688 +#define _gloffset_WindowPos2fMESA 689 +#define _gloffset_WindowPos2fvMESA 690 +#define _gloffset_WindowPos2iMESA 691 +#define _gloffset_WindowPos2ivMESA 692 +#define _gloffset_WindowPos2sMESA 693 +#define _gloffset_WindowPos2svMESA 694 +#define _gloffset_WindowPos3dMESA 695 +#define _gloffset_WindowPos3dvMESA 696 +#define _gloffset_WindowPos3fMESA 697 +#define _gloffset_WindowPos3fvMESA 698 +#define _gloffset_WindowPos3iMESA 699 +#define _gloffset_WindowPos3ivMESA 700 +#define _gloffset_WindowPos3sMESA 701 +#define _gloffset_WindowPos3svMESA 702 +#define _gloffset_WindowPos4dMESA 703 +#define _gloffset_WindowPos4dvMESA 704 +#define _gloffset_WindowPos4fMESA 705 +#define _gloffset_WindowPos4fvMESA 706 +#define _gloffset_WindowPos4iMESA 707 +#define _gloffset_WindowPos4ivMESA 708 +#define _gloffset_WindowPos4sMESA 709 +#define _gloffset_WindowPos4svMESA 710 +#define _gloffset_MultiModeDrawArraysIBM 711 +#define _gloffset_MultiModeDrawElementsIBM 712 +#define _gloffset_DeleteFencesNV 713 +#define _gloffset_FinishFenceNV 714 +#define _gloffset_GenFencesNV 715 +#define _gloffset_GetFenceivNV 716 +#define _gloffset_IsFenceNV 717 +#define _gloffset_SetFenceNV 718 +#define _gloffset_TestFenceNV 719 +#define _gloffset_AreProgramsResidentNV 720 +#define _gloffset_BindProgramNV 721 +#define _gloffset_DeleteProgramsNV 722 +#define _gloffset_ExecuteProgramNV 723 +#define _gloffset_GenProgramsNV 724 +#define _gloffset_GetProgramParameterdvNV 725 +#define _gloffset_GetProgramParameterfvNV 726 +#define _gloffset_GetProgramStringNV 727 +#define _gloffset_GetProgramivNV 728 +#define _gloffset_GetTrackMatrixivNV 729 +#define _gloffset_GetVertexAttribPointervNV 730 +#define _gloffset_GetVertexAttribdvNV 731 +#define _gloffset_GetVertexAttribfvNV 732 +#define _gloffset_GetVertexAttribivNV 733 +#define _gloffset_IsProgramNV 734 +#define _gloffset_LoadProgramNV 735 +#define _gloffset_ProgramParameters4dvNV 736 +#define _gloffset_ProgramParameters4fvNV 737 +#define _gloffset_RequestResidentProgramsNV 738 +#define _gloffset_TrackMatrixNV 739 +#define _gloffset_VertexAttrib1dNV 740 +#define _gloffset_VertexAttrib1dvNV 741 +#define _gloffset_VertexAttrib1fNV 742 +#define _gloffset_VertexAttrib1fvNV 743 +#define _gloffset_VertexAttrib1sNV 744 +#define _gloffset_VertexAttrib1svNV 745 +#define _gloffset_VertexAttrib2dNV 746 +#define _gloffset_VertexAttrib2dvNV 747 +#define _gloffset_VertexAttrib2fNV 748 +#define _gloffset_VertexAttrib2fvNV 749 +#define _gloffset_VertexAttrib2sNV 750 +#define _gloffset_VertexAttrib2svNV 751 +#define _gloffset_VertexAttrib3dNV 752 +#define _gloffset_VertexAttrib3dvNV 753 +#define _gloffset_VertexAttrib3fNV 754 +#define _gloffset_VertexAttrib3fvNV 755 +#define _gloffset_VertexAttrib3sNV 756 +#define _gloffset_VertexAttrib3svNV 757 +#define _gloffset_VertexAttrib4dNV 758 +#define _gloffset_VertexAttrib4dvNV 759 +#define _gloffset_VertexAttrib4fNV 760 +#define _gloffset_VertexAttrib4fvNV 761 +#define _gloffset_VertexAttrib4sNV 762 +#define _gloffset_VertexAttrib4svNV 763 +#define _gloffset_VertexAttrib4ubNV 764 +#define _gloffset_VertexAttrib4ubvNV 765 +#define _gloffset_VertexAttribPointerNV 766 +#define _gloffset_VertexAttribs1dvNV 767 +#define _gloffset_VertexAttribs1fvNV 768 +#define _gloffset_VertexAttribs1svNV 769 +#define _gloffset_VertexAttribs2dvNV 770 +#define _gloffset_VertexAttribs2fvNV 771 +#define _gloffset_VertexAttribs2svNV 772 +#define _gloffset_VertexAttribs3dvNV 773 +#define _gloffset_VertexAttribs3fvNV 774 +#define _gloffset_VertexAttribs3svNV 775 +#define _gloffset_VertexAttribs4dvNV 776 +#define _gloffset_VertexAttribs4fvNV 777 +#define _gloffset_VertexAttribs4svNV 778 +#define _gloffset_VertexAttribs4ubvNV 779 +#define _gloffset_GetTexBumpParameterfvATI 780 +#define _gloffset_GetTexBumpParameterivATI 781 +#define _gloffset_TexBumpParameterfvATI 782 +#define _gloffset_TexBumpParameterivATI 783 +#define _gloffset_AlphaFragmentOp1ATI 784 +#define _gloffset_AlphaFragmentOp2ATI 785 +#define _gloffset_AlphaFragmentOp3ATI 786 +#define _gloffset_BeginFragmentShaderATI 787 +#define _gloffset_BindFragmentShaderATI 788 +#define _gloffset_ColorFragmentOp1ATI 789 +#define _gloffset_ColorFragmentOp2ATI 790 +#define _gloffset_ColorFragmentOp3ATI 791 +#define _gloffset_DeleteFragmentShaderATI 792 +#define _gloffset_EndFragmentShaderATI 793 +#define _gloffset_GenFragmentShadersATI 794 +#define _gloffset_PassTexCoordATI 795 +#define _gloffset_SampleMapATI 796 +#define _gloffset_SetFragmentShaderConstantATI 797 +#define _gloffset_PointParameteriNV 798 +#define _gloffset_PointParameterivNV 799 +#define _gloffset_ActiveStencilFaceEXT 800 +#define _gloffset_BindVertexArrayAPPLE 801 +#define _gloffset_DeleteVertexArraysAPPLE 802 +#define _gloffset_GenVertexArraysAPPLE 803 +#define _gloffset_IsVertexArrayAPPLE 804 +#define _gloffset_GetProgramNamedParameterdvNV 805 +#define _gloffset_GetProgramNamedParameterfvNV 806 +#define _gloffset_ProgramNamedParameter4dNV 807 +#define _gloffset_ProgramNamedParameter4dvNV 808 +#define _gloffset_ProgramNamedParameter4fNV 809 +#define _gloffset_ProgramNamedParameter4fvNV 810 +#define _gloffset_PrimitiveRestartIndexNV 811 +#define _gloffset_PrimitiveRestartNV 812 +#define _gloffset_DepthBoundsEXT 813 +#define _gloffset_BlendEquationSeparateEXT 814 +#define _gloffset_BindFramebufferEXT 815 +#define _gloffset_BindRenderbufferEXT 816 +#define _gloffset_CheckFramebufferStatusEXT 817 +#define _gloffset_DeleteFramebuffersEXT 818 +#define _gloffset_DeleteRenderbuffersEXT 819 +#define _gloffset_FramebufferRenderbufferEXT 820 +#define _gloffset_FramebufferTexture1DEXT 821 +#define _gloffset_FramebufferTexture2DEXT 822 +#define _gloffset_FramebufferTexture3DEXT 823 +#define _gloffset_GenFramebuffersEXT 824 +#define _gloffset_GenRenderbuffersEXT 825 +#define _gloffset_GenerateMipmapEXT 826 +#define _gloffset_GetFramebufferAttachmentParameterivEXT 827 +#define _gloffset_GetRenderbufferParameterivEXT 828 +#define _gloffset_IsFramebufferEXT 829 +#define _gloffset_IsRenderbufferEXT 830 +#define _gloffset_RenderbufferStorageEXT 831 +#define _gloffset_BlitFramebufferEXT 832 +#define _gloffset_BufferParameteriAPPLE 833 +#define _gloffset_FlushMappedBufferRangeAPPLE 834 +#define _gloffset_BindFragDataLocationEXT 835 +#define _gloffset_GetFragDataLocationEXT 836 +#define _gloffset_GetUniformuivEXT 837 +#define _gloffset_GetVertexAttribIivEXT 838 +#define _gloffset_GetVertexAttribIuivEXT 839 +#define _gloffset_Uniform1uiEXT 840 +#define _gloffset_Uniform1uivEXT 841 +#define _gloffset_Uniform2uiEXT 842 +#define _gloffset_Uniform2uivEXT 843 +#define _gloffset_Uniform3uiEXT 844 +#define _gloffset_Uniform3uivEXT 845 +#define _gloffset_Uniform4uiEXT 846 +#define _gloffset_Uniform4uivEXT 847 +#define _gloffset_VertexAttribI1iEXT 848 +#define _gloffset_VertexAttribI1ivEXT 849 +#define _gloffset_VertexAttribI1uiEXT 850 +#define _gloffset_VertexAttribI1uivEXT 851 +#define _gloffset_VertexAttribI2iEXT 852 +#define _gloffset_VertexAttribI2ivEXT 853 +#define _gloffset_VertexAttribI2uiEXT 854 +#define _gloffset_VertexAttribI2uivEXT 855 +#define _gloffset_VertexAttribI3iEXT 856 +#define _gloffset_VertexAttribI3ivEXT 857 +#define _gloffset_VertexAttribI3uiEXT 858 +#define _gloffset_VertexAttribI3uivEXT 859 +#define _gloffset_VertexAttribI4bvEXT 860 +#define _gloffset_VertexAttribI4iEXT 861 +#define _gloffset_VertexAttribI4ivEXT 862 +#define _gloffset_VertexAttribI4svEXT 863 +#define _gloffset_VertexAttribI4ubvEXT 864 +#define _gloffset_VertexAttribI4uiEXT 865 +#define _gloffset_VertexAttribI4uivEXT 866 +#define _gloffset_VertexAttribI4usvEXT 867 +#define _gloffset_VertexAttribIPointerEXT 868 +#define _gloffset_FramebufferTextureLayerEXT 869 +#define _gloffset_ColorMaskIndexedEXT 870 +#define _gloffset_DisableIndexedEXT 871 +#define _gloffset_EnableIndexedEXT 872 +#define _gloffset_GetBooleanIndexedvEXT 873 +#define _gloffset_GetIntegerIndexedvEXT 874 +#define _gloffset_IsEnabledIndexedEXT 875 +#define _gloffset_ClearColorIiEXT 876 +#define _gloffset_ClearColorIuiEXT 877 +#define _gloffset_GetTexParameterIivEXT 878 +#define _gloffset_GetTexParameterIuivEXT 879 +#define _gloffset_TexParameterIivEXT 880 +#define _gloffset_TexParameterIuivEXT 881 +#define _gloffset_BeginConditionalRenderNV 882 +#define _gloffset_EndConditionalRenderNV 883 +#define _gloffset_BeginTransformFeedbackEXT 884 +#define _gloffset_BindBufferBaseEXT 885 +#define _gloffset_BindBufferOffsetEXT 886 +#define _gloffset_BindBufferRangeEXT 887 +#define _gloffset_EndTransformFeedbackEXT 888 +#define _gloffset_GetTransformFeedbackVaryingEXT 889 +#define _gloffset_TransformFeedbackVaryingsEXT 890 +#define _gloffset_ProvokingVertexEXT 891 +#define _gloffset_GetTexParameterPointervAPPLE 892 +#define _gloffset_TextureRangeAPPLE 893 +#define _gloffset_GetObjectParameterivAPPLE 894 +#define _gloffset_ObjectPurgeableAPPLE 895 +#define _gloffset_ObjectUnpurgeableAPPLE 896 +#define _gloffset_ActiveProgramEXT 897 +#define _gloffset_CreateShaderProgramEXT 898 +#define _gloffset_UseShaderProgramEXT 899 +#define _gloffset_TextureBarrierNV 900 +#define _gloffset_StencilFuncSeparateATI 901 +#define _gloffset_ProgramEnvParameters4fvEXT 902 +#define _gloffset_ProgramLocalParameters4fvEXT 903 +#define _gloffset_GetQueryObjecti64vEXT 904 +#define _gloffset_GetQueryObjectui64vEXT 905 +#define _gloffset_EGLImageTargetRenderbufferStorageOES 906 +#define _gloffset_EGLImageTargetTexture2DOES 907 #else /* !_GLAPI_USE_REMAP_TABLE */ -#define driDispatchRemapTable_size 486 +#define driDispatchRemapTable_size 500 extern int driDispatchRemapTable[ driDispatchRemapTable_size ]; #define AttachShader_remap_index 0 @@ -1156,300 +1170,314 @@ extern int driDispatchRemapTable[ driDispatchRemapTable_size ]; #define BlendEquationiARB_remap_index 189 #define BlendFuncSeparateiARB_remap_index 190 #define BlendFunciARB_remap_index 191 -#define BindTransformFeedback_remap_index 192 -#define DeleteTransformFeedbacks_remap_index 193 -#define DrawTransformFeedback_remap_index 194 -#define GenTransformFeedbacks_remap_index 195 -#define IsTransformFeedback_remap_index 196 -#define PauseTransformFeedback_remap_index 197 -#define ResumeTransformFeedback_remap_index 198 -#define ClearDepthf_remap_index 199 -#define DepthRangef_remap_index 200 -#define GetShaderPrecisionFormat_remap_index 201 -#define ReleaseShaderCompiler_remap_index 202 -#define ShaderBinary_remap_index 203 -#define PolygonOffsetEXT_remap_index 204 -#define GetPixelTexGenParameterfvSGIS_remap_index 205 -#define GetPixelTexGenParameterivSGIS_remap_index 206 -#define PixelTexGenParameterfSGIS_remap_index 207 -#define PixelTexGenParameterfvSGIS_remap_index 208 -#define PixelTexGenParameteriSGIS_remap_index 209 -#define PixelTexGenParameterivSGIS_remap_index 210 -#define SampleMaskSGIS_remap_index 211 -#define SamplePatternSGIS_remap_index 212 -#define ColorPointerEXT_remap_index 213 -#define EdgeFlagPointerEXT_remap_index 214 -#define IndexPointerEXT_remap_index 215 -#define NormalPointerEXT_remap_index 216 -#define TexCoordPointerEXT_remap_index 217 -#define VertexPointerEXT_remap_index 218 -#define PointParameterfEXT_remap_index 219 -#define PointParameterfvEXT_remap_index 220 -#define LockArraysEXT_remap_index 221 -#define UnlockArraysEXT_remap_index 222 -#define SecondaryColor3bEXT_remap_index 223 -#define SecondaryColor3bvEXT_remap_index 224 -#define SecondaryColor3dEXT_remap_index 225 -#define SecondaryColor3dvEXT_remap_index 226 -#define SecondaryColor3fEXT_remap_index 227 -#define SecondaryColor3fvEXT_remap_index 228 -#define SecondaryColor3iEXT_remap_index 229 -#define SecondaryColor3ivEXT_remap_index 230 -#define SecondaryColor3sEXT_remap_index 231 -#define SecondaryColor3svEXT_remap_index 232 -#define SecondaryColor3ubEXT_remap_index 233 -#define SecondaryColor3ubvEXT_remap_index 234 -#define SecondaryColor3uiEXT_remap_index 235 -#define SecondaryColor3uivEXT_remap_index 236 -#define SecondaryColor3usEXT_remap_index 237 -#define SecondaryColor3usvEXT_remap_index 238 -#define SecondaryColorPointerEXT_remap_index 239 -#define MultiDrawArraysEXT_remap_index 240 -#define MultiDrawElementsEXT_remap_index 241 -#define FogCoordPointerEXT_remap_index 242 -#define FogCoorddEXT_remap_index 243 -#define FogCoorddvEXT_remap_index 244 -#define FogCoordfEXT_remap_index 245 -#define FogCoordfvEXT_remap_index 246 -#define PixelTexGenSGIX_remap_index 247 -#define BlendFuncSeparateEXT_remap_index 248 -#define FlushVertexArrayRangeNV_remap_index 249 -#define VertexArrayRangeNV_remap_index 250 -#define CombinerInputNV_remap_index 251 -#define CombinerOutputNV_remap_index 252 -#define CombinerParameterfNV_remap_index 253 -#define CombinerParameterfvNV_remap_index 254 -#define CombinerParameteriNV_remap_index 255 -#define CombinerParameterivNV_remap_index 256 -#define FinalCombinerInputNV_remap_index 257 -#define GetCombinerInputParameterfvNV_remap_index 258 -#define GetCombinerInputParameterivNV_remap_index 259 -#define GetCombinerOutputParameterfvNV_remap_index 260 -#define GetCombinerOutputParameterivNV_remap_index 261 -#define GetFinalCombinerInputParameterfvNV_remap_index 262 -#define GetFinalCombinerInputParameterivNV_remap_index 263 -#define ResizeBuffersMESA_remap_index 264 -#define WindowPos2dMESA_remap_index 265 -#define WindowPos2dvMESA_remap_index 266 -#define WindowPos2fMESA_remap_index 267 -#define WindowPos2fvMESA_remap_index 268 -#define WindowPos2iMESA_remap_index 269 -#define WindowPos2ivMESA_remap_index 270 -#define WindowPos2sMESA_remap_index 271 -#define WindowPos2svMESA_remap_index 272 -#define WindowPos3dMESA_remap_index 273 -#define WindowPos3dvMESA_remap_index 274 -#define WindowPos3fMESA_remap_index 275 -#define WindowPos3fvMESA_remap_index 276 -#define WindowPos3iMESA_remap_index 277 -#define WindowPos3ivMESA_remap_index 278 -#define WindowPos3sMESA_remap_index 279 -#define WindowPos3svMESA_remap_index 280 -#define WindowPos4dMESA_remap_index 281 -#define WindowPos4dvMESA_remap_index 282 -#define WindowPos4fMESA_remap_index 283 -#define WindowPos4fvMESA_remap_index 284 -#define WindowPos4iMESA_remap_index 285 -#define WindowPos4ivMESA_remap_index 286 -#define WindowPos4sMESA_remap_index 287 -#define WindowPos4svMESA_remap_index 288 -#define MultiModeDrawArraysIBM_remap_index 289 -#define MultiModeDrawElementsIBM_remap_index 290 -#define DeleteFencesNV_remap_index 291 -#define FinishFenceNV_remap_index 292 -#define GenFencesNV_remap_index 293 -#define GetFenceivNV_remap_index 294 -#define IsFenceNV_remap_index 295 -#define SetFenceNV_remap_index 296 -#define TestFenceNV_remap_index 297 -#define AreProgramsResidentNV_remap_index 298 -#define BindProgramNV_remap_index 299 -#define DeleteProgramsNV_remap_index 300 -#define ExecuteProgramNV_remap_index 301 -#define GenProgramsNV_remap_index 302 -#define GetProgramParameterdvNV_remap_index 303 -#define GetProgramParameterfvNV_remap_index 304 -#define GetProgramStringNV_remap_index 305 -#define GetProgramivNV_remap_index 306 -#define GetTrackMatrixivNV_remap_index 307 -#define GetVertexAttribPointervNV_remap_index 308 -#define GetVertexAttribdvNV_remap_index 309 -#define GetVertexAttribfvNV_remap_index 310 -#define GetVertexAttribivNV_remap_index 311 -#define IsProgramNV_remap_index 312 -#define LoadProgramNV_remap_index 313 -#define ProgramParameters4dvNV_remap_index 314 -#define ProgramParameters4fvNV_remap_index 315 -#define RequestResidentProgramsNV_remap_index 316 -#define TrackMatrixNV_remap_index 317 -#define VertexAttrib1dNV_remap_index 318 -#define VertexAttrib1dvNV_remap_index 319 -#define VertexAttrib1fNV_remap_index 320 -#define VertexAttrib1fvNV_remap_index 321 -#define VertexAttrib1sNV_remap_index 322 -#define VertexAttrib1svNV_remap_index 323 -#define VertexAttrib2dNV_remap_index 324 -#define VertexAttrib2dvNV_remap_index 325 -#define VertexAttrib2fNV_remap_index 326 -#define VertexAttrib2fvNV_remap_index 327 -#define VertexAttrib2sNV_remap_index 328 -#define VertexAttrib2svNV_remap_index 329 -#define VertexAttrib3dNV_remap_index 330 -#define VertexAttrib3dvNV_remap_index 331 -#define VertexAttrib3fNV_remap_index 332 -#define VertexAttrib3fvNV_remap_index 333 -#define VertexAttrib3sNV_remap_index 334 -#define VertexAttrib3svNV_remap_index 335 -#define VertexAttrib4dNV_remap_index 336 -#define VertexAttrib4dvNV_remap_index 337 -#define VertexAttrib4fNV_remap_index 338 -#define VertexAttrib4fvNV_remap_index 339 -#define VertexAttrib4sNV_remap_index 340 -#define VertexAttrib4svNV_remap_index 341 -#define VertexAttrib4ubNV_remap_index 342 -#define VertexAttrib4ubvNV_remap_index 343 -#define VertexAttribPointerNV_remap_index 344 -#define VertexAttribs1dvNV_remap_index 345 -#define VertexAttribs1fvNV_remap_index 346 -#define VertexAttribs1svNV_remap_index 347 -#define VertexAttribs2dvNV_remap_index 348 -#define VertexAttribs2fvNV_remap_index 349 -#define VertexAttribs2svNV_remap_index 350 -#define VertexAttribs3dvNV_remap_index 351 -#define VertexAttribs3fvNV_remap_index 352 -#define VertexAttribs3svNV_remap_index 353 -#define VertexAttribs4dvNV_remap_index 354 -#define VertexAttribs4fvNV_remap_index 355 -#define VertexAttribs4svNV_remap_index 356 -#define VertexAttribs4ubvNV_remap_index 357 -#define GetTexBumpParameterfvATI_remap_index 358 -#define GetTexBumpParameterivATI_remap_index 359 -#define TexBumpParameterfvATI_remap_index 360 -#define TexBumpParameterivATI_remap_index 361 -#define AlphaFragmentOp1ATI_remap_index 362 -#define AlphaFragmentOp2ATI_remap_index 363 -#define AlphaFragmentOp3ATI_remap_index 364 -#define BeginFragmentShaderATI_remap_index 365 -#define BindFragmentShaderATI_remap_index 366 -#define ColorFragmentOp1ATI_remap_index 367 -#define ColorFragmentOp2ATI_remap_index 368 -#define ColorFragmentOp3ATI_remap_index 369 -#define DeleteFragmentShaderATI_remap_index 370 -#define EndFragmentShaderATI_remap_index 371 -#define GenFragmentShadersATI_remap_index 372 -#define PassTexCoordATI_remap_index 373 -#define SampleMapATI_remap_index 374 -#define SetFragmentShaderConstantATI_remap_index 375 -#define PointParameteriNV_remap_index 376 -#define PointParameterivNV_remap_index 377 -#define ActiveStencilFaceEXT_remap_index 378 -#define BindVertexArrayAPPLE_remap_index 379 -#define DeleteVertexArraysAPPLE_remap_index 380 -#define GenVertexArraysAPPLE_remap_index 381 -#define IsVertexArrayAPPLE_remap_index 382 -#define GetProgramNamedParameterdvNV_remap_index 383 -#define GetProgramNamedParameterfvNV_remap_index 384 -#define ProgramNamedParameter4dNV_remap_index 385 -#define ProgramNamedParameter4dvNV_remap_index 386 -#define ProgramNamedParameter4fNV_remap_index 387 -#define ProgramNamedParameter4fvNV_remap_index 388 -#define PrimitiveRestartIndexNV_remap_index 389 -#define PrimitiveRestartNV_remap_index 390 -#define DepthBoundsEXT_remap_index 391 -#define BlendEquationSeparateEXT_remap_index 392 -#define BindFramebufferEXT_remap_index 393 -#define BindRenderbufferEXT_remap_index 394 -#define CheckFramebufferStatusEXT_remap_index 395 -#define DeleteFramebuffersEXT_remap_index 396 -#define DeleteRenderbuffersEXT_remap_index 397 -#define FramebufferRenderbufferEXT_remap_index 398 -#define FramebufferTexture1DEXT_remap_index 399 -#define FramebufferTexture2DEXT_remap_index 400 -#define FramebufferTexture3DEXT_remap_index 401 -#define GenFramebuffersEXT_remap_index 402 -#define GenRenderbuffersEXT_remap_index 403 -#define GenerateMipmapEXT_remap_index 404 -#define GetFramebufferAttachmentParameterivEXT_remap_index 405 -#define GetRenderbufferParameterivEXT_remap_index 406 -#define IsFramebufferEXT_remap_index 407 -#define IsRenderbufferEXT_remap_index 408 -#define RenderbufferStorageEXT_remap_index 409 -#define BlitFramebufferEXT_remap_index 410 -#define BufferParameteriAPPLE_remap_index 411 -#define FlushMappedBufferRangeAPPLE_remap_index 412 -#define BindFragDataLocationEXT_remap_index 413 -#define GetFragDataLocationEXT_remap_index 414 -#define GetUniformuivEXT_remap_index 415 -#define GetVertexAttribIivEXT_remap_index 416 -#define GetVertexAttribIuivEXT_remap_index 417 -#define Uniform1uiEXT_remap_index 418 -#define Uniform1uivEXT_remap_index 419 -#define Uniform2uiEXT_remap_index 420 -#define Uniform2uivEXT_remap_index 421 -#define Uniform3uiEXT_remap_index 422 -#define Uniform3uivEXT_remap_index 423 -#define Uniform4uiEXT_remap_index 424 -#define Uniform4uivEXT_remap_index 425 -#define VertexAttribI1iEXT_remap_index 426 -#define VertexAttribI1ivEXT_remap_index 427 -#define VertexAttribI1uiEXT_remap_index 428 -#define VertexAttribI1uivEXT_remap_index 429 -#define VertexAttribI2iEXT_remap_index 430 -#define VertexAttribI2ivEXT_remap_index 431 -#define VertexAttribI2uiEXT_remap_index 432 -#define VertexAttribI2uivEXT_remap_index 433 -#define VertexAttribI3iEXT_remap_index 434 -#define VertexAttribI3ivEXT_remap_index 435 -#define VertexAttribI3uiEXT_remap_index 436 -#define VertexAttribI3uivEXT_remap_index 437 -#define VertexAttribI4bvEXT_remap_index 438 -#define VertexAttribI4iEXT_remap_index 439 -#define VertexAttribI4ivEXT_remap_index 440 -#define VertexAttribI4svEXT_remap_index 441 -#define VertexAttribI4ubvEXT_remap_index 442 -#define VertexAttribI4uiEXT_remap_index 443 -#define VertexAttribI4uivEXT_remap_index 444 -#define VertexAttribI4usvEXT_remap_index 445 -#define VertexAttribIPointerEXT_remap_index 446 -#define FramebufferTextureLayerEXT_remap_index 447 -#define ColorMaskIndexedEXT_remap_index 448 -#define DisableIndexedEXT_remap_index 449 -#define EnableIndexedEXT_remap_index 450 -#define GetBooleanIndexedvEXT_remap_index 451 -#define GetIntegerIndexedvEXT_remap_index 452 -#define IsEnabledIndexedEXT_remap_index 453 -#define ClearColorIiEXT_remap_index 454 -#define ClearColorIuiEXT_remap_index 455 -#define GetTexParameterIivEXT_remap_index 456 -#define GetTexParameterIuivEXT_remap_index 457 -#define TexParameterIivEXT_remap_index 458 -#define TexParameterIuivEXT_remap_index 459 -#define BeginConditionalRenderNV_remap_index 460 -#define EndConditionalRenderNV_remap_index 461 -#define BeginTransformFeedbackEXT_remap_index 462 -#define BindBufferBaseEXT_remap_index 463 -#define BindBufferOffsetEXT_remap_index 464 -#define BindBufferRangeEXT_remap_index 465 -#define EndTransformFeedbackEXT_remap_index 466 -#define GetTransformFeedbackVaryingEXT_remap_index 467 -#define TransformFeedbackVaryingsEXT_remap_index 468 -#define ProvokingVertexEXT_remap_index 469 -#define GetTexParameterPointervAPPLE_remap_index 470 -#define TextureRangeAPPLE_remap_index 471 -#define GetObjectParameterivAPPLE_remap_index 472 -#define ObjectPurgeableAPPLE_remap_index 473 -#define ObjectUnpurgeableAPPLE_remap_index 474 -#define ActiveProgramEXT_remap_index 475 -#define CreateShaderProgramEXT_remap_index 476 -#define UseShaderProgramEXT_remap_index 477 -#define TextureBarrierNV_remap_index 478 -#define StencilFuncSeparateATI_remap_index 479 -#define ProgramEnvParameters4fvEXT_remap_index 480 -#define ProgramLocalParameters4fvEXT_remap_index 481 -#define GetQueryObjecti64vEXT_remap_index 482 -#define GetQueryObjectui64vEXT_remap_index 483 -#define EGLImageTargetRenderbufferStorageOES_remap_index 484 -#define EGLImageTargetTexture2DOES_remap_index 485 +#define BindSampler_remap_index 192 +#define DeleteSamplers_remap_index 193 +#define GenSamplers_remap_index 194 +#define GetSamplerParameterIiv_remap_index 195 +#define GetSamplerParameterIuiv_remap_index 196 +#define GetSamplerParameterfv_remap_index 197 +#define GetSamplerParameteriv_remap_index 198 +#define IsSampler_remap_index 199 +#define SamplerParameterIiv_remap_index 200 +#define SamplerParameterIuiv_remap_index 201 +#define SamplerParameterf_remap_index 202 +#define SamplerParameterfv_remap_index 203 +#define SamplerParameteri_remap_index 204 +#define SamplerParameteriv_remap_index 205 +#define BindTransformFeedback_remap_index 206 +#define DeleteTransformFeedbacks_remap_index 207 +#define DrawTransformFeedback_remap_index 208 +#define GenTransformFeedbacks_remap_index 209 +#define IsTransformFeedback_remap_index 210 +#define PauseTransformFeedback_remap_index 211 +#define ResumeTransformFeedback_remap_index 212 +#define ClearDepthf_remap_index 213 +#define DepthRangef_remap_index 214 +#define GetShaderPrecisionFormat_remap_index 215 +#define ReleaseShaderCompiler_remap_index 216 +#define ShaderBinary_remap_index 217 +#define PolygonOffsetEXT_remap_index 218 +#define GetPixelTexGenParameterfvSGIS_remap_index 219 +#define GetPixelTexGenParameterivSGIS_remap_index 220 +#define PixelTexGenParameterfSGIS_remap_index 221 +#define PixelTexGenParameterfvSGIS_remap_index 222 +#define PixelTexGenParameteriSGIS_remap_index 223 +#define PixelTexGenParameterivSGIS_remap_index 224 +#define SampleMaskSGIS_remap_index 225 +#define SamplePatternSGIS_remap_index 226 +#define ColorPointerEXT_remap_index 227 +#define EdgeFlagPointerEXT_remap_index 228 +#define IndexPointerEXT_remap_index 229 +#define NormalPointerEXT_remap_index 230 +#define TexCoordPointerEXT_remap_index 231 +#define VertexPointerEXT_remap_index 232 +#define PointParameterfEXT_remap_index 233 +#define PointParameterfvEXT_remap_index 234 +#define LockArraysEXT_remap_index 235 +#define UnlockArraysEXT_remap_index 236 +#define SecondaryColor3bEXT_remap_index 237 +#define SecondaryColor3bvEXT_remap_index 238 +#define SecondaryColor3dEXT_remap_index 239 +#define SecondaryColor3dvEXT_remap_index 240 +#define SecondaryColor3fEXT_remap_index 241 +#define SecondaryColor3fvEXT_remap_index 242 +#define SecondaryColor3iEXT_remap_index 243 +#define SecondaryColor3ivEXT_remap_index 244 +#define SecondaryColor3sEXT_remap_index 245 +#define SecondaryColor3svEXT_remap_index 246 +#define SecondaryColor3ubEXT_remap_index 247 +#define SecondaryColor3ubvEXT_remap_index 248 +#define SecondaryColor3uiEXT_remap_index 249 +#define SecondaryColor3uivEXT_remap_index 250 +#define SecondaryColor3usEXT_remap_index 251 +#define SecondaryColor3usvEXT_remap_index 252 +#define SecondaryColorPointerEXT_remap_index 253 +#define MultiDrawArraysEXT_remap_index 254 +#define MultiDrawElementsEXT_remap_index 255 +#define FogCoordPointerEXT_remap_index 256 +#define FogCoorddEXT_remap_index 257 +#define FogCoorddvEXT_remap_index 258 +#define FogCoordfEXT_remap_index 259 +#define FogCoordfvEXT_remap_index 260 +#define PixelTexGenSGIX_remap_index 261 +#define BlendFuncSeparateEXT_remap_index 262 +#define FlushVertexArrayRangeNV_remap_index 263 +#define VertexArrayRangeNV_remap_index 264 +#define CombinerInputNV_remap_index 265 +#define CombinerOutputNV_remap_index 266 +#define CombinerParameterfNV_remap_index 267 +#define CombinerParameterfvNV_remap_index 268 +#define CombinerParameteriNV_remap_index 269 +#define CombinerParameterivNV_remap_index 270 +#define FinalCombinerInputNV_remap_index 271 +#define GetCombinerInputParameterfvNV_remap_index 272 +#define GetCombinerInputParameterivNV_remap_index 273 +#define GetCombinerOutputParameterfvNV_remap_index 274 +#define GetCombinerOutputParameterivNV_remap_index 275 +#define GetFinalCombinerInputParameterfvNV_remap_index 276 +#define GetFinalCombinerInputParameterivNV_remap_index 277 +#define ResizeBuffersMESA_remap_index 278 +#define WindowPos2dMESA_remap_index 279 +#define WindowPos2dvMESA_remap_index 280 +#define WindowPos2fMESA_remap_index 281 +#define WindowPos2fvMESA_remap_index 282 +#define WindowPos2iMESA_remap_index 283 +#define WindowPos2ivMESA_remap_index 284 +#define WindowPos2sMESA_remap_index 285 +#define WindowPos2svMESA_remap_index 286 +#define WindowPos3dMESA_remap_index 287 +#define WindowPos3dvMESA_remap_index 288 +#define WindowPos3fMESA_remap_index 289 +#define WindowPos3fvMESA_remap_index 290 +#define WindowPos3iMESA_remap_index 291 +#define WindowPos3ivMESA_remap_index 292 +#define WindowPos3sMESA_remap_index 293 +#define WindowPos3svMESA_remap_index 294 +#define WindowPos4dMESA_remap_index 295 +#define WindowPos4dvMESA_remap_index 296 +#define WindowPos4fMESA_remap_index 297 +#define WindowPos4fvMESA_remap_index 298 +#define WindowPos4iMESA_remap_index 299 +#define WindowPos4ivMESA_remap_index 300 +#define WindowPos4sMESA_remap_index 301 +#define WindowPos4svMESA_remap_index 302 +#define MultiModeDrawArraysIBM_remap_index 303 +#define MultiModeDrawElementsIBM_remap_index 304 +#define DeleteFencesNV_remap_index 305 +#define FinishFenceNV_remap_index 306 +#define GenFencesNV_remap_index 307 +#define GetFenceivNV_remap_index 308 +#define IsFenceNV_remap_index 309 +#define SetFenceNV_remap_index 310 +#define TestFenceNV_remap_index 311 +#define AreProgramsResidentNV_remap_index 312 +#define BindProgramNV_remap_index 313 +#define DeleteProgramsNV_remap_index 314 +#define ExecuteProgramNV_remap_index 315 +#define GenProgramsNV_remap_index 316 +#define GetProgramParameterdvNV_remap_index 317 +#define GetProgramParameterfvNV_remap_index 318 +#define GetProgramStringNV_remap_index 319 +#define GetProgramivNV_remap_index 320 +#define GetTrackMatrixivNV_remap_index 321 +#define GetVertexAttribPointervNV_remap_index 322 +#define GetVertexAttribdvNV_remap_index 323 +#define GetVertexAttribfvNV_remap_index 324 +#define GetVertexAttribivNV_remap_index 325 +#define IsProgramNV_remap_index 326 +#define LoadProgramNV_remap_index 327 +#define ProgramParameters4dvNV_remap_index 328 +#define ProgramParameters4fvNV_remap_index 329 +#define RequestResidentProgramsNV_remap_index 330 +#define TrackMatrixNV_remap_index 331 +#define VertexAttrib1dNV_remap_index 332 +#define VertexAttrib1dvNV_remap_index 333 +#define VertexAttrib1fNV_remap_index 334 +#define VertexAttrib1fvNV_remap_index 335 +#define VertexAttrib1sNV_remap_index 336 +#define VertexAttrib1svNV_remap_index 337 +#define VertexAttrib2dNV_remap_index 338 +#define VertexAttrib2dvNV_remap_index 339 +#define VertexAttrib2fNV_remap_index 340 +#define VertexAttrib2fvNV_remap_index 341 +#define VertexAttrib2sNV_remap_index 342 +#define VertexAttrib2svNV_remap_index 343 +#define VertexAttrib3dNV_remap_index 344 +#define VertexAttrib3dvNV_remap_index 345 +#define VertexAttrib3fNV_remap_index 346 +#define VertexAttrib3fvNV_remap_index 347 +#define VertexAttrib3sNV_remap_index 348 +#define VertexAttrib3svNV_remap_index 349 +#define VertexAttrib4dNV_remap_index 350 +#define VertexAttrib4dvNV_remap_index 351 +#define VertexAttrib4fNV_remap_index 352 +#define VertexAttrib4fvNV_remap_index 353 +#define VertexAttrib4sNV_remap_index 354 +#define VertexAttrib4svNV_remap_index 355 +#define VertexAttrib4ubNV_remap_index 356 +#define VertexAttrib4ubvNV_remap_index 357 +#define VertexAttribPointerNV_remap_index 358 +#define VertexAttribs1dvNV_remap_index 359 +#define VertexAttribs1fvNV_remap_index 360 +#define VertexAttribs1svNV_remap_index 361 +#define VertexAttribs2dvNV_remap_index 362 +#define VertexAttribs2fvNV_remap_index 363 +#define VertexAttribs2svNV_remap_index 364 +#define VertexAttribs3dvNV_remap_index 365 +#define VertexAttribs3fvNV_remap_index 366 +#define VertexAttribs3svNV_remap_index 367 +#define VertexAttribs4dvNV_remap_index 368 +#define VertexAttribs4fvNV_remap_index 369 +#define VertexAttribs4svNV_remap_index 370 +#define VertexAttribs4ubvNV_remap_index 371 +#define GetTexBumpParameterfvATI_remap_index 372 +#define GetTexBumpParameterivATI_remap_index 373 +#define TexBumpParameterfvATI_remap_index 374 +#define TexBumpParameterivATI_remap_index 375 +#define AlphaFragmentOp1ATI_remap_index 376 +#define AlphaFragmentOp2ATI_remap_index 377 +#define AlphaFragmentOp3ATI_remap_index 378 +#define BeginFragmentShaderATI_remap_index 379 +#define BindFragmentShaderATI_remap_index 380 +#define ColorFragmentOp1ATI_remap_index 381 +#define ColorFragmentOp2ATI_remap_index 382 +#define ColorFragmentOp3ATI_remap_index 383 +#define DeleteFragmentShaderATI_remap_index 384 +#define EndFragmentShaderATI_remap_index 385 +#define GenFragmentShadersATI_remap_index 386 +#define PassTexCoordATI_remap_index 387 +#define SampleMapATI_remap_index 388 +#define SetFragmentShaderConstantATI_remap_index 389 +#define PointParameteriNV_remap_index 390 +#define PointParameterivNV_remap_index 391 +#define ActiveStencilFaceEXT_remap_index 392 +#define BindVertexArrayAPPLE_remap_index 393 +#define DeleteVertexArraysAPPLE_remap_index 394 +#define GenVertexArraysAPPLE_remap_index 395 +#define IsVertexArrayAPPLE_remap_index 396 +#define GetProgramNamedParameterdvNV_remap_index 397 +#define GetProgramNamedParameterfvNV_remap_index 398 +#define ProgramNamedParameter4dNV_remap_index 399 +#define ProgramNamedParameter4dvNV_remap_index 400 +#define ProgramNamedParameter4fNV_remap_index 401 +#define ProgramNamedParameter4fvNV_remap_index 402 +#define PrimitiveRestartIndexNV_remap_index 403 +#define PrimitiveRestartNV_remap_index 404 +#define DepthBoundsEXT_remap_index 405 +#define BlendEquationSeparateEXT_remap_index 406 +#define BindFramebufferEXT_remap_index 407 +#define BindRenderbufferEXT_remap_index 408 +#define CheckFramebufferStatusEXT_remap_index 409 +#define DeleteFramebuffersEXT_remap_index 410 +#define DeleteRenderbuffersEXT_remap_index 411 +#define FramebufferRenderbufferEXT_remap_index 412 +#define FramebufferTexture1DEXT_remap_index 413 +#define FramebufferTexture2DEXT_remap_index 414 +#define FramebufferTexture3DEXT_remap_index 415 +#define GenFramebuffersEXT_remap_index 416 +#define GenRenderbuffersEXT_remap_index 417 +#define GenerateMipmapEXT_remap_index 418 +#define GetFramebufferAttachmentParameterivEXT_remap_index 419 +#define GetRenderbufferParameterivEXT_remap_index 420 +#define IsFramebufferEXT_remap_index 421 +#define IsRenderbufferEXT_remap_index 422 +#define RenderbufferStorageEXT_remap_index 423 +#define BlitFramebufferEXT_remap_index 424 +#define BufferParameteriAPPLE_remap_index 425 +#define FlushMappedBufferRangeAPPLE_remap_index 426 +#define BindFragDataLocationEXT_remap_index 427 +#define GetFragDataLocationEXT_remap_index 428 +#define GetUniformuivEXT_remap_index 429 +#define GetVertexAttribIivEXT_remap_index 430 +#define GetVertexAttribIuivEXT_remap_index 431 +#define Uniform1uiEXT_remap_index 432 +#define Uniform1uivEXT_remap_index 433 +#define Uniform2uiEXT_remap_index 434 +#define Uniform2uivEXT_remap_index 435 +#define Uniform3uiEXT_remap_index 436 +#define Uniform3uivEXT_remap_index 437 +#define Uniform4uiEXT_remap_index 438 +#define Uniform4uivEXT_remap_index 439 +#define VertexAttribI1iEXT_remap_index 440 +#define VertexAttribI1ivEXT_remap_index 441 +#define VertexAttribI1uiEXT_remap_index 442 +#define VertexAttribI1uivEXT_remap_index 443 +#define VertexAttribI2iEXT_remap_index 444 +#define VertexAttribI2ivEXT_remap_index 445 +#define VertexAttribI2uiEXT_remap_index 446 +#define VertexAttribI2uivEXT_remap_index 447 +#define VertexAttribI3iEXT_remap_index 448 +#define VertexAttribI3ivEXT_remap_index 449 +#define VertexAttribI3uiEXT_remap_index 450 +#define VertexAttribI3uivEXT_remap_index 451 +#define VertexAttribI4bvEXT_remap_index 452 +#define VertexAttribI4iEXT_remap_index 453 +#define VertexAttribI4ivEXT_remap_index 454 +#define VertexAttribI4svEXT_remap_index 455 +#define VertexAttribI4ubvEXT_remap_index 456 +#define VertexAttribI4uiEXT_remap_index 457 +#define VertexAttribI4uivEXT_remap_index 458 +#define VertexAttribI4usvEXT_remap_index 459 +#define VertexAttribIPointerEXT_remap_index 460 +#define FramebufferTextureLayerEXT_remap_index 461 +#define ColorMaskIndexedEXT_remap_index 462 +#define DisableIndexedEXT_remap_index 463 +#define EnableIndexedEXT_remap_index 464 +#define GetBooleanIndexedvEXT_remap_index 465 +#define GetIntegerIndexedvEXT_remap_index 466 +#define IsEnabledIndexedEXT_remap_index 467 +#define ClearColorIiEXT_remap_index 468 +#define ClearColorIuiEXT_remap_index 469 +#define GetTexParameterIivEXT_remap_index 470 +#define GetTexParameterIuivEXT_remap_index 471 +#define TexParameterIivEXT_remap_index 472 +#define TexParameterIuivEXT_remap_index 473 +#define BeginConditionalRenderNV_remap_index 474 +#define EndConditionalRenderNV_remap_index 475 +#define BeginTransformFeedbackEXT_remap_index 476 +#define BindBufferBaseEXT_remap_index 477 +#define BindBufferOffsetEXT_remap_index 478 +#define BindBufferRangeEXT_remap_index 479 +#define EndTransformFeedbackEXT_remap_index 480 +#define GetTransformFeedbackVaryingEXT_remap_index 481 +#define TransformFeedbackVaryingsEXT_remap_index 482 +#define ProvokingVertexEXT_remap_index 483 +#define GetTexParameterPointervAPPLE_remap_index 484 +#define TextureRangeAPPLE_remap_index 485 +#define GetObjectParameterivAPPLE_remap_index 486 +#define ObjectPurgeableAPPLE_remap_index 487 +#define ObjectUnpurgeableAPPLE_remap_index 488 +#define ActiveProgramEXT_remap_index 489 +#define CreateShaderProgramEXT_remap_index 490 +#define UseShaderProgramEXT_remap_index 491 +#define TextureBarrierNV_remap_index 492 +#define StencilFuncSeparateATI_remap_index 493 +#define ProgramEnvParameters4fvEXT_remap_index 494 +#define ProgramLocalParameters4fvEXT_remap_index 495 +#define GetQueryObjecti64vEXT_remap_index 496 +#define GetQueryObjectui64vEXT_remap_index 497 +#define EGLImageTargetRenderbufferStorageOES_remap_index 498 +#define EGLImageTargetTexture2DOES_remap_index 499 #define _gloffset_AttachShader driDispatchRemapTable[AttachShader_remap_index] #define _gloffset_CreateProgram driDispatchRemapTable[CreateProgram_remap_index] @@ -1643,6 +1671,20 @@ extern int driDispatchRemapTable[ driDispatchRemapTable_size ]; #define _gloffset_BlendEquationiARB driDispatchRemapTable[BlendEquationiARB_remap_index] #define _gloffset_BlendFuncSeparateiARB driDispatchRemapTable[BlendFuncSeparateiARB_remap_index] #define _gloffset_BlendFunciARB driDispatchRemapTable[BlendFunciARB_remap_index] +#define _gloffset_BindSampler driDispatchRemapTable[BindSampler_remap_index] +#define _gloffset_DeleteSamplers driDispatchRemapTable[DeleteSamplers_remap_index] +#define _gloffset_GenSamplers driDispatchRemapTable[GenSamplers_remap_index] +#define _gloffset_GetSamplerParameterIiv driDispatchRemapTable[GetSamplerParameterIiv_remap_index] +#define _gloffset_GetSamplerParameterIuiv driDispatchRemapTable[GetSamplerParameterIuiv_remap_index] +#define _gloffset_GetSamplerParameterfv driDispatchRemapTable[GetSamplerParameterfv_remap_index] +#define _gloffset_GetSamplerParameteriv driDispatchRemapTable[GetSamplerParameteriv_remap_index] +#define _gloffset_IsSampler driDispatchRemapTable[IsSampler_remap_index] +#define _gloffset_SamplerParameterIiv driDispatchRemapTable[SamplerParameterIiv_remap_index] +#define _gloffset_SamplerParameterIuiv driDispatchRemapTable[SamplerParameterIuiv_remap_index] +#define _gloffset_SamplerParameterf driDispatchRemapTable[SamplerParameterf_remap_index] +#define _gloffset_SamplerParameterfv driDispatchRemapTable[SamplerParameterfv_remap_index] +#define _gloffset_SamplerParameteri driDispatchRemapTable[SamplerParameteri_remap_index] +#define _gloffset_SamplerParameteriv driDispatchRemapTable[SamplerParameteriv_remap_index] #define _gloffset_BindTransformFeedback driDispatchRemapTable[BindTransformFeedback_remap_index] #define _gloffset_DeleteTransformFeedbacks driDispatchRemapTable[DeleteTransformFeedbacks_remap_index] #define _gloffset_DrawTransformFeedback driDispatchRemapTable[DrawTransformFeedback_remap_index] @@ -3740,6 +3782,48 @@ extern int driDispatchRemapTable[ driDispatchRemapTable_size ]; #define CALL_BlendFunciARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLenum)), _gloffset_BlendFunciARB, parameters) #define GET_BlendFunciARB(disp) GET_by_offset(disp, _gloffset_BlendFunciARB) #define SET_BlendFunciARB(disp, fn) SET_by_offset(disp, _gloffset_BlendFunciARB, fn) +#define CALL_BindSampler(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLuint)), _gloffset_BindSampler, parameters) +#define GET_BindSampler(disp) GET_by_offset(disp, _gloffset_BindSampler) +#define SET_BindSampler(disp, fn) SET_by_offset(disp, _gloffset_BindSampler, fn) +#define CALL_DeleteSamplers(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), _gloffset_DeleteSamplers, parameters) +#define GET_DeleteSamplers(disp) GET_by_offset(disp, _gloffset_DeleteSamplers) +#define SET_DeleteSamplers(disp, fn) SET_by_offset(disp, _gloffset_DeleteSamplers, fn) +#define CALL_GenSamplers(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), _gloffset_GenSamplers, parameters) +#define GET_GenSamplers(disp) GET_by_offset(disp, _gloffset_GenSamplers) +#define SET_GenSamplers(disp, fn) SET_by_offset(disp, _gloffset_GenSamplers, fn) +#define CALL_GetSamplerParameterIiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLint *)), _gloffset_GetSamplerParameterIiv, parameters) +#define GET_GetSamplerParameterIiv(disp) GET_by_offset(disp, _gloffset_GetSamplerParameterIiv) +#define SET_GetSamplerParameterIiv(disp, fn) SET_by_offset(disp, _gloffset_GetSamplerParameterIiv, fn) +#define CALL_GetSamplerParameterIuiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLuint *)), _gloffset_GetSamplerParameterIuiv, parameters) +#define GET_GetSamplerParameterIuiv(disp) GET_by_offset(disp, _gloffset_GetSamplerParameterIuiv) +#define SET_GetSamplerParameterIuiv(disp, fn) SET_by_offset(disp, _gloffset_GetSamplerParameterIuiv, fn) +#define CALL_GetSamplerParameterfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLfloat *)), _gloffset_GetSamplerParameterfv, parameters) +#define GET_GetSamplerParameterfv(disp) GET_by_offset(disp, _gloffset_GetSamplerParameterfv) +#define SET_GetSamplerParameterfv(disp, fn) SET_by_offset(disp, _gloffset_GetSamplerParameterfv, fn) +#define CALL_GetSamplerParameteriv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLint *)), _gloffset_GetSamplerParameteriv, parameters) +#define GET_GetSamplerParameteriv(disp) GET_by_offset(disp, _gloffset_GetSamplerParameteriv) +#define SET_GetSamplerParameteriv(disp, fn) SET_by_offset(disp, _gloffset_GetSamplerParameteriv, fn) +#define CALL_IsSampler(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), _gloffset_IsSampler, parameters) +#define GET_IsSampler(disp) GET_by_offset(disp, _gloffset_IsSampler) +#define SET_IsSampler(disp, fn) SET_by_offset(disp, _gloffset_IsSampler, fn) +#define CALL_SamplerParameterIiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, const GLint *)), _gloffset_SamplerParameterIiv, parameters) +#define GET_SamplerParameterIiv(disp) GET_by_offset(disp, _gloffset_SamplerParameterIiv) +#define SET_SamplerParameterIiv(disp, fn) SET_by_offset(disp, _gloffset_SamplerParameterIiv, fn) +#define CALL_SamplerParameterIuiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, const GLuint *)), _gloffset_SamplerParameterIuiv, parameters) +#define GET_SamplerParameterIuiv(disp) GET_by_offset(disp, _gloffset_SamplerParameterIuiv) +#define SET_SamplerParameterIuiv(disp, fn) SET_by_offset(disp, _gloffset_SamplerParameterIuiv, fn) +#define CALL_SamplerParameterf(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLfloat)), _gloffset_SamplerParameterf, parameters) +#define GET_SamplerParameterf(disp) GET_by_offset(disp, _gloffset_SamplerParameterf) +#define SET_SamplerParameterf(disp, fn) SET_by_offset(disp, _gloffset_SamplerParameterf, fn) +#define CALL_SamplerParameterfv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, const GLfloat *)), _gloffset_SamplerParameterfv, parameters) +#define GET_SamplerParameterfv(disp) GET_by_offset(disp, _gloffset_SamplerParameterfv) +#define SET_SamplerParameterfv(disp, fn) SET_by_offset(disp, _gloffset_SamplerParameterfv, fn) +#define CALL_SamplerParameteri(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLint)), _gloffset_SamplerParameteri, parameters) +#define GET_SamplerParameteri(disp) GET_by_offset(disp, _gloffset_SamplerParameteri) +#define SET_SamplerParameteri(disp, fn) SET_by_offset(disp, _gloffset_SamplerParameteri, fn) +#define CALL_SamplerParameteriv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, const GLint *)), _gloffset_SamplerParameteriv, parameters) +#define GET_SamplerParameteriv(disp) GET_by_offset(disp, _gloffset_SamplerParameteriv) +#define SET_SamplerParameteriv(disp, fn) SET_by_offset(disp, _gloffset_SamplerParameteriv, fn) #define CALL_BindTransformFeedback(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), _gloffset_BindTransformFeedback, parameters) #define GET_BindTransformFeedback(disp) GET_by_offset(disp, _gloffset_BindTransformFeedback) #define SET_BindTransformFeedback(disp, fn) SET_by_offset(disp, _gloffset_BindTransformFeedback, fn) diff --git a/src/mesa/main/remap_helper.h b/src/mesa/main/remap_helper.h index 598e805d05d..72a2f1e0b81 100644 --- a/src/mesa/main/remap_helper.h +++ b/src/mesa/main/remap_helper.h @@ -594,4194 +594,4250 @@ static const char _mesa_function_pool[] = "glGetConvolutionParameteriv\0" "glGetConvolutionParameterivEXT\0" "\0" - /* _mesa_function_pool[4122]: VertexAttrib1fARB (will be remapped) */ + /* _mesa_function_pool[4122]: DeleteSamplers (will be remapped) */ + "ip\0" + "glDeleteSamplers\0" + "\0" + /* _mesa_function_pool[4143]: VertexAttrib1fARB (will be remapped) */ "if\0" "glVertexAttrib1f\0" "glVertexAttrib1fARB\0" "\0" - /* _mesa_function_pool[4163]: Vertex2dv (offset 127) */ + /* _mesa_function_pool[4184]: Vertex2dv (offset 127) */ "p\0" "glVertex2dv\0" "\0" - /* _mesa_function_pool[4178]: TestFenceNV (will be remapped) */ + /* _mesa_function_pool[4199]: TestFenceNV (will be remapped) */ "i\0" "glTestFenceNV\0" "\0" - /* _mesa_function_pool[4195]: GetVertexAttribIuivEXT (will be remapped) */ + /* _mesa_function_pool[4216]: GetVertexAttribIuivEXT (will be remapped) */ "iip\0" "glGetVertexAttribIuivEXT\0" "glGetVertexAttribIuiv\0" "\0" - /* _mesa_function_pool[4247]: MultiTexCoord1fvARB (offset 379) */ + /* _mesa_function_pool[4268]: MultiTexCoord1fvARB (offset 379) */ "ip\0" "glMultiTexCoord1fv\0" "glMultiTexCoord1fvARB\0" "\0" - /* _mesa_function_pool[4292]: TexCoord3iv (offset 115) */ + /* _mesa_function_pool[4313]: TexCoord3iv (offset 115) */ "p\0" "glTexCoord3iv\0" "\0" - /* _mesa_function_pool[4309]: Uniform2uivEXT (will be remapped) */ + /* _mesa_function_pool[4330]: Uniform2uivEXT (will be remapped) */ "iip\0" "glUniform2uivEXT\0" "glUniform2uiv\0" "\0" - /* _mesa_function_pool[4345]: ColorFragmentOp2ATI (will be remapped) */ + /* _mesa_function_pool[4366]: ColorFragmentOp2ATI (will be remapped) */ "iiiiiiiiii\0" "glColorFragmentOp2ATI\0" "\0" - /* _mesa_function_pool[4379]: SecondaryColorPointerListIBM (dynamic) */ + /* _mesa_function_pool[4400]: SecondaryColorPointerListIBM (dynamic) */ "iiipi\0" "glSecondaryColorPointerListIBM\0" "\0" - /* _mesa_function_pool[4417]: GetPixelTexGenParameterivSGIS (will be remapped) */ + /* _mesa_function_pool[4438]: GetPixelTexGenParameterivSGIS (will be remapped) */ "ip\0" "glGetPixelTexGenParameterivSGIS\0" "\0" - /* _mesa_function_pool[4453]: Color3fv (offset 14) */ + /* _mesa_function_pool[4474]: Color3fv (offset 14) */ "p\0" "glColor3fv\0" "\0" - /* _mesa_function_pool[4467]: VertexAttrib4fNV (will be remapped) */ + /* _mesa_function_pool[4488]: VertexAttrib4fNV (will be remapped) */ "iffff\0" "glVertexAttrib4fNV\0" "\0" - /* _mesa_function_pool[4493]: ReplacementCodeubSUN (dynamic) */ + /* _mesa_function_pool[4514]: ReplacementCodeubSUN (dynamic) */ "i\0" "glReplacementCodeubSUN\0" "\0" - /* _mesa_function_pool[4519]: FinishAsyncSGIX (dynamic) */ + /* _mesa_function_pool[4540]: FinishAsyncSGIX (dynamic) */ "p\0" "glFinishAsyncSGIX\0" "\0" - /* _mesa_function_pool[4540]: GetDebugLogMESA (dynamic) */ + /* _mesa_function_pool[4561]: GetDebugLogMESA (dynamic) */ "iiiipp\0" "glGetDebugLogMESA\0" "\0" - /* _mesa_function_pool[4566]: FogCoorddEXT (will be remapped) */ + /* _mesa_function_pool[4587]: FogCoorddEXT (will be remapped) */ "d\0" "glFogCoordd\0" "glFogCoorddEXT\0" "\0" - /* _mesa_function_pool[4596]: BeginConditionalRenderNV (will be remapped) */ + /* _mesa_function_pool[4617]: BeginConditionalRenderNV (will be remapped) */ "ii\0" "glBeginConditionalRenderNV\0" "glBeginConditionalRender\0" "\0" - /* _mesa_function_pool[4652]: Color4ubVertex3fSUN (dynamic) */ + /* _mesa_function_pool[4673]: Color4ubVertex3fSUN (dynamic) */ "iiiifff\0" "glColor4ubVertex3fSUN\0" "\0" - /* _mesa_function_pool[4683]: FogCoordfEXT (will be remapped) */ + /* _mesa_function_pool[4704]: FogCoordfEXT (will be remapped) */ "f\0" "glFogCoordf\0" "glFogCoordfEXT\0" "\0" - /* _mesa_function_pool[4713]: PointSize (offset 173) */ + /* _mesa_function_pool[4734]: PointSize (offset 173) */ "f\0" "glPointSize\0" "\0" - /* _mesa_function_pool[4728]: VertexAttribI2uivEXT (will be remapped) */ + /* _mesa_function_pool[4749]: VertexAttribI2uivEXT (will be remapped) */ "ip\0" "glVertexAttribI2uivEXT\0" "glVertexAttribI2uiv\0" "\0" - /* _mesa_function_pool[4775]: TexCoord2fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[4796]: TexCoord2fVertex3fSUN (dynamic) */ "fffff\0" "glTexCoord2fVertex3fSUN\0" "\0" - /* _mesa_function_pool[4806]: PopName (offset 200) */ + /* _mesa_function_pool[4827]: PopName (offset 200) */ "\0" "glPopName\0" "\0" - /* _mesa_function_pool[4818]: GlobalAlphaFactoriSUN (dynamic) */ + /* _mesa_function_pool[4839]: GetSamplerParameterfv (will be remapped) */ + "iip\0" + "glGetSamplerParameterfv\0" + "\0" + /* _mesa_function_pool[4868]: GlobalAlphaFactoriSUN (dynamic) */ "i\0" "glGlobalAlphaFactoriSUN\0" "\0" - /* _mesa_function_pool[4845]: VertexAttrib2dNV (will be remapped) */ + /* _mesa_function_pool[4895]: VertexAttrib2dNV (will be remapped) */ "idd\0" "glVertexAttrib2dNV\0" "\0" - /* _mesa_function_pool[4869]: GetProgramInfoLog (will be remapped) */ + /* _mesa_function_pool[4919]: GetProgramInfoLog (will be remapped) */ "iipp\0" "glGetProgramInfoLog\0" "\0" - /* _mesa_function_pool[4895]: VertexAttrib4NbvARB (will be remapped) */ + /* _mesa_function_pool[4945]: VertexAttrib4NbvARB (will be remapped) */ "ip\0" "glVertexAttrib4Nbv\0" "glVertexAttrib4NbvARB\0" "\0" - /* _mesa_function_pool[4940]: GetActiveAttribARB (will be remapped) */ + /* _mesa_function_pool[4990]: GetActiveAttribARB (will be remapped) */ "iiipppp\0" "glGetActiveAttrib\0" "glGetActiveAttribARB\0" "\0" - /* _mesa_function_pool[4988]: Vertex4sv (offset 149) */ + /* _mesa_function_pool[5038]: Vertex4sv (offset 149) */ "p\0" "glVertex4sv\0" "\0" - /* _mesa_function_pool[5003]: VertexAttrib4ubNV (will be remapped) */ + /* _mesa_function_pool[5053]: VertexAttrib4ubNV (will be remapped) */ "iiiii\0" "glVertexAttrib4ubNV\0" "\0" - /* _mesa_function_pool[5030]: ClampColor (will be remapped) */ + /* _mesa_function_pool[5080]: ClampColor (will be remapped) */ "ii\0" "glClampColor\0" "\0" - /* _mesa_function_pool[5047]: TextureRangeAPPLE (will be remapped) */ + /* _mesa_function_pool[5097]: TextureRangeAPPLE (will be remapped) */ "iip\0" "glTextureRangeAPPLE\0" "\0" - /* _mesa_function_pool[5072]: GetTexEnvfv (offset 276) */ + /* _mesa_function_pool[5122]: GetTexEnvfv (offset 276) */ "iip\0" "glGetTexEnvfv\0" "\0" - /* _mesa_function_pool[5091]: BindTransformFeedback (will be remapped) */ + /* _mesa_function_pool[5141]: BindTransformFeedback (will be remapped) */ "ii\0" "glBindTransformFeedback\0" "\0" - /* _mesa_function_pool[5119]: TexCoord2fColor4fNormal3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[5169]: TexCoord2fColor4fNormal3fVertex3fSUN (dynamic) */ "ffffffffffff\0" "glTexCoord2fColor4fNormal3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[5172]: Indexub (offset 315) */ + /* _mesa_function_pool[5222]: Indexub (offset 315) */ "i\0" "glIndexub\0" "\0" - /* _mesa_function_pool[5185]: TexEnvi (offset 186) */ + /* _mesa_function_pool[5235]: TexEnvi (offset 186) */ "iii\0" "glTexEnvi\0" "\0" - /* _mesa_function_pool[5200]: GetClipPlane (offset 259) */ + /* _mesa_function_pool[5250]: GetClipPlane (offset 259) */ "ip\0" "glGetClipPlane\0" "\0" - /* _mesa_function_pool[5219]: CombinerParameterfvNV (will be remapped) */ + /* _mesa_function_pool[5269]: CombinerParameterfvNV (will be remapped) */ "ip\0" "glCombinerParameterfvNV\0" "\0" - /* _mesa_function_pool[5247]: VertexAttribs3dvNV (will be remapped) */ + /* _mesa_function_pool[5297]: VertexAttribs3dvNV (will be remapped) */ "iip\0" "glVertexAttribs3dvNV\0" "\0" - /* _mesa_function_pool[5273]: VertexAttribI2uiEXT (will be remapped) */ + /* _mesa_function_pool[5323]: VertexAttribI2uiEXT (will be remapped) */ "iii\0" "glVertexAttribI2uiEXT\0" "glVertexAttribI2ui\0" "\0" - /* _mesa_function_pool[5319]: VertexAttribs4fvNV (will be remapped) */ + /* _mesa_function_pool[5369]: VertexAttribs4fvNV (will be remapped) */ "iip\0" "glVertexAttribs4fvNV\0" "\0" - /* _mesa_function_pool[5345]: VertexArrayRangeNV (will be remapped) */ + /* _mesa_function_pool[5395]: VertexArrayRangeNV (will be remapped) */ "ip\0" "glVertexArrayRangeNV\0" "\0" - /* _mesa_function_pool[5370]: FragmentLightiSGIX (dynamic) */ + /* _mesa_function_pool[5420]: FragmentLightiSGIX (dynamic) */ "iii\0" "glFragmentLightiSGIX\0" "\0" - /* _mesa_function_pool[5396]: PolygonOffsetEXT (will be remapped) */ + /* _mesa_function_pool[5446]: PolygonOffsetEXT (will be remapped) */ "ff\0" "glPolygonOffsetEXT\0" "\0" - /* _mesa_function_pool[5419]: VertexAttribI4uivEXT (will be remapped) */ + /* _mesa_function_pool[5469]: VertexAttribI4uivEXT (will be remapped) */ "ip\0" "glVertexAttribI4uivEXT\0" "glVertexAttribI4uiv\0" "\0" - /* _mesa_function_pool[5466]: PollAsyncSGIX (dynamic) */ + /* _mesa_function_pool[5516]: PollAsyncSGIX (dynamic) */ "p\0" "glPollAsyncSGIX\0" "\0" - /* _mesa_function_pool[5485]: DeleteFragmentShaderATI (will be remapped) */ + /* _mesa_function_pool[5535]: DeleteFragmentShaderATI (will be remapped) */ "i\0" "glDeleteFragmentShaderATI\0" "\0" - /* _mesa_function_pool[5514]: Scaled (offset 301) */ + /* _mesa_function_pool[5564]: Scaled (offset 301) */ "ddd\0" "glScaled\0" "\0" - /* _mesa_function_pool[5528]: ResumeTransformFeedback (will be remapped) */ + /* _mesa_function_pool[5578]: ResumeTransformFeedback (will be remapped) */ "\0" "glResumeTransformFeedback\0" "\0" - /* _mesa_function_pool[5556]: Scalef (offset 302) */ + /* _mesa_function_pool[5606]: Scalef (offset 302) */ "fff\0" "glScalef\0" "\0" - /* _mesa_function_pool[5570]: TexCoord2fNormal3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[5620]: TexCoord2fNormal3fVertex3fvSUN (dynamic) */ "ppp\0" "glTexCoord2fNormal3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[5608]: MultTransposeMatrixdARB (will be remapped) */ + /* _mesa_function_pool[5658]: ProgramEnvParameters4fvEXT (will be remapped) */ + "iiip\0" + "glProgramEnvParameters4fvEXT\0" + "\0" + /* _mesa_function_pool[5693]: MultTransposeMatrixdARB (will be remapped) */ "p\0" "glMultTransposeMatrixd\0" "glMultTransposeMatrixdARB\0" "\0" - /* _mesa_function_pool[5660]: ColorMaskIndexedEXT (will be remapped) */ + /* _mesa_function_pool[5745]: ColorMaskIndexedEXT (will be remapped) */ "iiiii\0" "glColorMaskIndexedEXT\0" "glColorMaski\0" "\0" - /* _mesa_function_pool[5702]: ObjectUnpurgeableAPPLE (will be remapped) */ + /* _mesa_function_pool[5787]: ObjectUnpurgeableAPPLE (will be remapped) */ "iii\0" "glObjectUnpurgeableAPPLE\0" "\0" - /* _mesa_function_pool[5732]: AlphaFunc (offset 240) */ + /* _mesa_function_pool[5817]: AlphaFunc (offset 240) */ "if\0" "glAlphaFunc\0" "\0" - /* _mesa_function_pool[5748]: WindowPos2svMESA (will be remapped) */ + /* _mesa_function_pool[5833]: WindowPos2svMESA (will be remapped) */ "p\0" "glWindowPos2sv\0" "glWindowPos2svARB\0" "glWindowPos2svMESA\0" "\0" - /* _mesa_function_pool[5803]: EdgeFlag (offset 41) */ + /* _mesa_function_pool[5888]: EdgeFlag (offset 41) */ "i\0" "glEdgeFlag\0" "\0" - /* _mesa_function_pool[5817]: TexCoord2iv (offset 107) */ + /* _mesa_function_pool[5902]: TexCoord2iv (offset 107) */ "p\0" "glTexCoord2iv\0" "\0" - /* _mesa_function_pool[5834]: CompressedTexImage1DARB (will be remapped) */ + /* _mesa_function_pool[5919]: CompressedTexImage1DARB (will be remapped) */ "iiiiiip\0" "glCompressedTexImage1D\0" "glCompressedTexImage1DARB\0" "\0" - /* _mesa_function_pool[5892]: Rotated (offset 299) */ + /* _mesa_function_pool[5977]: Rotated (offset 299) */ "dddd\0" "glRotated\0" "\0" - /* _mesa_function_pool[5908]: GetTexParameterIuivEXT (will be remapped) */ + /* _mesa_function_pool[5993]: GetTexParameterIuivEXT (will be remapped) */ "iip\0" "glGetTexParameterIuivEXT\0" "glGetTexParameterIuiv\0" "\0" - /* _mesa_function_pool[5960]: VertexAttrib2sNV (will be remapped) */ + /* _mesa_function_pool[6045]: VertexAttrib2sNV (will be remapped) */ "iii\0" "glVertexAttrib2sNV\0" "\0" - /* _mesa_function_pool[5984]: ReadPixels (offset 256) */ + /* _mesa_function_pool[6069]: ReadPixels (offset 256) */ "iiiiiip\0" "glReadPixels\0" "\0" - /* _mesa_function_pool[6006]: EdgeFlagv (offset 42) */ + /* _mesa_function_pool[6091]: EdgeFlagv (offset 42) */ "p\0" "glEdgeFlagv\0" "\0" - /* _mesa_function_pool[6021]: NormalPointerListIBM (dynamic) */ + /* _mesa_function_pool[6106]: NormalPointerListIBM (dynamic) */ "iipi\0" "glNormalPointerListIBM\0" "\0" - /* _mesa_function_pool[6050]: IndexPointerEXT (will be remapped) */ + /* _mesa_function_pool[6135]: IndexPointerEXT (will be remapped) */ "iiip\0" "glIndexPointerEXT\0" "\0" - /* _mesa_function_pool[6074]: Color4iv (offset 32) */ + /* _mesa_function_pool[6159]: Color4iv (offset 32) */ "p\0" "glColor4iv\0" "\0" - /* _mesa_function_pool[6088]: TexParameterf (offset 178) */ + /* _mesa_function_pool[6173]: TexParameterf (offset 178) */ "iif\0" "glTexParameterf\0" "\0" - /* _mesa_function_pool[6109]: TexParameteri (offset 180) */ + /* _mesa_function_pool[6194]: TexParameteri (offset 180) */ "iii\0" "glTexParameteri\0" "\0" - /* _mesa_function_pool[6130]: NormalPointerEXT (will be remapped) */ + /* _mesa_function_pool[6215]: NormalPointerEXT (will be remapped) */ "iiip\0" "glNormalPointerEXT\0" "\0" - /* _mesa_function_pool[6155]: MultiTexCoord3dARB (offset 392) */ + /* _mesa_function_pool[6240]: MultiTexCoord3dARB (offset 392) */ "iddd\0" "glMultiTexCoord3d\0" "glMultiTexCoord3dARB\0" "\0" - /* _mesa_function_pool[6200]: MultiTexCoord2iARB (offset 388) */ + /* _mesa_function_pool[6285]: MultiTexCoord2iARB (offset 388) */ "iii\0" "glMultiTexCoord2i\0" "glMultiTexCoord2iARB\0" "\0" - /* _mesa_function_pool[6244]: DrawPixels (offset 257) */ + /* _mesa_function_pool[6329]: DrawPixels (offset 257) */ "iiiip\0" "glDrawPixels\0" "\0" - /* _mesa_function_pool[6264]: ReplacementCodeuiTexCoord2fNormal3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[6349]: ReplacementCodeuiTexCoord2fNormal3fVertex3fSUN (dynamic) */ "iffffffff\0" "glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[6324]: MultiTexCoord2svARB (offset 391) */ + /* _mesa_function_pool[6409]: MultiTexCoord2svARB (offset 391) */ "ip\0" "glMultiTexCoord2sv\0" "glMultiTexCoord2svARB\0" "\0" - /* _mesa_function_pool[6369]: ReplacementCodeubvSUN (dynamic) */ + /* _mesa_function_pool[6454]: ReplacementCodeubvSUN (dynamic) */ "p\0" "glReplacementCodeubvSUN\0" "\0" - /* _mesa_function_pool[6396]: Uniform3iARB (will be remapped) */ + /* _mesa_function_pool[6481]: Uniform3iARB (will be remapped) */ "iiii\0" "glUniform3i\0" "glUniform3iARB\0" "\0" - /* _mesa_function_pool[6429]: DrawTransformFeedback (will be remapped) */ + /* _mesa_function_pool[6514]: DrawTransformFeedback (will be remapped) */ "ii\0" "glDrawTransformFeedback\0" "\0" - /* _mesa_function_pool[6457]: DrawElementsInstancedARB (will be remapped) */ + /* _mesa_function_pool[6542]: DrawElementsInstancedARB (will be remapped) */ "iiipi\0" "glDrawElementsInstancedARB\0" "glDrawElementsInstancedEXT\0" "glDrawElementsInstanced\0" "\0" - /* _mesa_function_pool[6542]: GetShaderInfoLog (will be remapped) */ + /* _mesa_function_pool[6627]: GetShaderInfoLog (will be remapped) */ "iipp\0" "glGetShaderInfoLog\0" "\0" - /* _mesa_function_pool[6567]: WeightivARB (dynamic) */ + /* _mesa_function_pool[6652]: WeightivARB (dynamic) */ "ip\0" "glWeightivARB\0" "\0" - /* _mesa_function_pool[6585]: PollInstrumentsSGIX (dynamic) */ + /* _mesa_function_pool[6670]: PollInstrumentsSGIX (dynamic) */ "p\0" "glPollInstrumentsSGIX\0" "\0" - /* _mesa_function_pool[6610]: GlobalAlphaFactordSUN (dynamic) */ + /* _mesa_function_pool[6695]: GlobalAlphaFactordSUN (dynamic) */ "d\0" "glGlobalAlphaFactordSUN\0" "\0" - /* _mesa_function_pool[6637]: GetFinalCombinerInputParameterfvNV (will be remapped) */ + /* _mesa_function_pool[6722]: GetFinalCombinerInputParameterfvNV (will be remapped) */ "iip\0" "glGetFinalCombinerInputParameterfvNV\0" "\0" - /* _mesa_function_pool[6679]: GenerateMipmapEXT (will be remapped) */ + /* _mesa_function_pool[6764]: GenerateMipmapEXT (will be remapped) */ "i\0" "glGenerateMipmap\0" "glGenerateMipmapEXT\0" "\0" - /* _mesa_function_pool[6719]: GenLists (offset 5) */ + /* _mesa_function_pool[6804]: GenLists (offset 5) */ "i\0" "glGenLists\0" "\0" - /* _mesa_function_pool[6733]: DepthRangef (will be remapped) */ + /* _mesa_function_pool[6818]: DepthRangef (will be remapped) */ "ff\0" "glDepthRangef\0" "\0" - /* _mesa_function_pool[6751]: GetMapAttribParameterivNV (dynamic) */ + /* _mesa_function_pool[6836]: GetMapAttribParameterivNV (dynamic) */ "iiip\0" "glGetMapAttribParameterivNV\0" "\0" - /* _mesa_function_pool[6785]: CreateShaderObjectARB (will be remapped) */ + /* _mesa_function_pool[6870]: CreateShaderObjectARB (will be remapped) */ "i\0" "glCreateShaderObjectARB\0" "\0" - /* _mesa_function_pool[6812]: GetSharpenTexFuncSGIS (dynamic) */ + /* _mesa_function_pool[6897]: GetSharpenTexFuncSGIS (dynamic) */ "ip\0" "glGetSharpenTexFuncSGIS\0" "\0" - /* _mesa_function_pool[6840]: BufferDataARB (will be remapped) */ + /* _mesa_function_pool[6925]: BufferDataARB (will be remapped) */ "iipi\0" "glBufferData\0" "glBufferDataARB\0" "\0" - /* _mesa_function_pool[6875]: FlushVertexArrayRangeNV (will be remapped) */ + /* _mesa_function_pool[6960]: FlushVertexArrayRangeNV (will be remapped) */ "\0" "glFlushVertexArrayRangeNV\0" "\0" - /* _mesa_function_pool[6903]: MapGrid2d (offset 226) */ + /* _mesa_function_pool[6988]: MapGrid2d (offset 226) */ "iddidd\0" "glMapGrid2d\0" "\0" - /* _mesa_function_pool[6923]: MapGrid2f (offset 227) */ + /* _mesa_function_pool[7008]: MapGrid2f (offset 227) */ "iffiff\0" "glMapGrid2f\0" "\0" - /* _mesa_function_pool[6943]: SampleMapATI (will be remapped) */ + /* _mesa_function_pool[7028]: SampleMapATI (will be remapped) */ "iii\0" "glSampleMapATI\0" "\0" - /* _mesa_function_pool[6963]: VertexPointerEXT (will be remapped) */ + /* _mesa_function_pool[7048]: VertexPointerEXT (will be remapped) */ "iiiip\0" "glVertexPointerEXT\0" "\0" - /* _mesa_function_pool[6989]: GetTexFilterFuncSGIS (dynamic) */ + /* _mesa_function_pool[7074]: GetTexFilterFuncSGIS (dynamic) */ "iip\0" "glGetTexFilterFuncSGIS\0" "\0" - /* _mesa_function_pool[7017]: Scissor (offset 176) */ + /* _mesa_function_pool[7102]: Scissor (offset 176) */ "iiii\0" "glScissor\0" "\0" - /* _mesa_function_pool[7033]: Fogf (offset 153) */ + /* _mesa_function_pool[7118]: Fogf (offset 153) */ "if\0" "glFogf\0" "\0" - /* _mesa_function_pool[7044]: ReplacementCodeuiColor4ubVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[7129]: ReplacementCodeuiColor4ubVertex3fvSUN (dynamic) */ "ppp\0" "glReplacementCodeuiColor4ubVertex3fvSUN\0" "\0" - /* _mesa_function_pool[7089]: TexSubImage1D (offset 332) */ + /* _mesa_function_pool[7174]: TexSubImage1D (offset 332) */ "iiiiiip\0" "glTexSubImage1D\0" "glTexSubImage1DEXT\0" "\0" - /* _mesa_function_pool[7133]: VertexAttrib1sARB (will be remapped) */ + /* _mesa_function_pool[7218]: VertexAttrib1sARB (will be remapped) */ "ii\0" "glVertexAttrib1s\0" "glVertexAttrib1sARB\0" "\0" - /* _mesa_function_pool[7174]: FenceSync (will be remapped) */ + /* _mesa_function_pool[7259]: FenceSync (will be remapped) */ "ii\0" "glFenceSync\0" "\0" - /* _mesa_function_pool[7190]: Color4usv (offset 40) */ + /* _mesa_function_pool[7275]: Color4usv (offset 40) */ "p\0" "glColor4usv\0" "\0" - /* _mesa_function_pool[7205]: Fogi (offset 155) */ + /* _mesa_function_pool[7290]: Fogi (offset 155) */ "ii\0" "glFogi\0" "\0" - /* _mesa_function_pool[7216]: DepthRange (offset 288) */ + /* _mesa_function_pool[7301]: DepthRange (offset 288) */ "dd\0" "glDepthRange\0" "\0" - /* _mesa_function_pool[7233]: RasterPos3iv (offset 75) */ + /* _mesa_function_pool[7318]: RasterPos3iv (offset 75) */ "p\0" "glRasterPos3iv\0" "\0" - /* _mesa_function_pool[7251]: FinalCombinerInputNV (will be remapped) */ + /* _mesa_function_pool[7336]: FinalCombinerInputNV (will be remapped) */ "iiii\0" "glFinalCombinerInputNV\0" "\0" - /* _mesa_function_pool[7280]: TexCoord2i (offset 106) */ + /* _mesa_function_pool[7365]: TexCoord2i (offset 106) */ "ii\0" "glTexCoord2i\0" "\0" - /* _mesa_function_pool[7297]: PixelMapfv (offset 251) */ + /* _mesa_function_pool[7382]: PixelMapfv (offset 251) */ "iip\0" "glPixelMapfv\0" "\0" - /* _mesa_function_pool[7315]: Color4ui (offset 37) */ + /* _mesa_function_pool[7400]: Color4ui (offset 37) */ "iiii\0" "glColor4ui\0" "\0" - /* _mesa_function_pool[7332]: RasterPos3s (offset 76) */ + /* _mesa_function_pool[7417]: RasterPos3s (offset 76) */ "iii\0" "glRasterPos3s\0" "\0" - /* _mesa_function_pool[7351]: Color3usv (offset 24) */ + /* _mesa_function_pool[7436]: Color3usv (offset 24) */ "p\0" "glColor3usv\0" "\0" - /* _mesa_function_pool[7366]: FlushRasterSGIX (dynamic) */ + /* _mesa_function_pool[7451]: FlushRasterSGIX (dynamic) */ "\0" "glFlushRasterSGIX\0" "\0" - /* _mesa_function_pool[7386]: TexCoord2f (offset 104) */ + /* _mesa_function_pool[7471]: TexCoord2f (offset 104) */ "ff\0" "glTexCoord2f\0" "\0" - /* _mesa_function_pool[7403]: ReplacementCodeuiTexCoord2fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[7488]: ReplacementCodeuiTexCoord2fVertex3fSUN (dynamic) */ "ifffff\0" "glReplacementCodeuiTexCoord2fVertex3fSUN\0" "\0" - /* _mesa_function_pool[7452]: TexCoord2d (offset 102) */ + /* _mesa_function_pool[7537]: TexCoord2d (offset 102) */ "dd\0" "glTexCoord2d\0" "\0" - /* _mesa_function_pool[7469]: RasterPos3d (offset 70) */ + /* _mesa_function_pool[7554]: RasterPos3d (offset 70) */ "ddd\0" "glRasterPos3d\0" "\0" - /* _mesa_function_pool[7488]: RasterPos3f (offset 72) */ + /* _mesa_function_pool[7573]: RasterPos3f (offset 72) */ "fff\0" "glRasterPos3f\0" "\0" - /* _mesa_function_pool[7507]: Uniform1fARB (will be remapped) */ + /* _mesa_function_pool[7592]: Uniform1fARB (will be remapped) */ "if\0" "glUniform1f\0" "glUniform1fARB\0" "\0" - /* _mesa_function_pool[7538]: AreTexturesResident (offset 322) */ + /* _mesa_function_pool[7623]: AreTexturesResident (offset 322) */ "ipp\0" "glAreTexturesResident\0" "glAreTexturesResidentEXT\0" "\0" - /* _mesa_function_pool[7590]: TexCoord2s (offset 108) */ + /* _mesa_function_pool[7675]: TexCoord2s (offset 108) */ "ii\0" "glTexCoord2s\0" "\0" - /* _mesa_function_pool[7607]: StencilOpSeparate (will be remapped) */ + /* _mesa_function_pool[7692]: StencilOpSeparate (will be remapped) */ "iiii\0" "glStencilOpSeparate\0" "glStencilOpSeparateATI\0" "\0" - /* _mesa_function_pool[7656]: ColorTableParameteriv (offset 341) */ + /* _mesa_function_pool[7741]: ColorTableParameteriv (offset 341) */ "iip\0" "glColorTableParameteriv\0" "glColorTableParameterivSGI\0" "\0" - /* _mesa_function_pool[7712]: FogCoordPointerListIBM (dynamic) */ + /* _mesa_function_pool[7797]: FogCoordPointerListIBM (dynamic) */ "iipi\0" "glFogCoordPointerListIBM\0" "\0" - /* _mesa_function_pool[7743]: WindowPos3dMESA (will be remapped) */ + /* _mesa_function_pool[7828]: WindowPos3dMESA (will be remapped) */ "ddd\0" "glWindowPos3d\0" "glWindowPos3dARB\0" "glWindowPos3dMESA\0" "\0" - /* _mesa_function_pool[7797]: Color4us (offset 39) */ + /* _mesa_function_pool[7882]: Color4us (offset 39) */ "iiii\0" "glColor4us\0" "\0" - /* _mesa_function_pool[7814]: PointParameterfvEXT (will be remapped) */ + /* _mesa_function_pool[7899]: PointParameterfvEXT (will be remapped) */ "ip\0" "glPointParameterfv\0" "glPointParameterfvARB\0" "glPointParameterfvEXT\0" "glPointParameterfvSGIS\0" "\0" - /* _mesa_function_pool[7904]: Color3bv (offset 10) */ + /* _mesa_function_pool[7989]: Color3bv (offset 10) */ "p\0" "glColor3bv\0" "\0" - /* _mesa_function_pool[7918]: WindowPos2fvMESA (will be remapped) */ + /* _mesa_function_pool[8003]: WindowPos2fvMESA (will be remapped) */ "p\0" "glWindowPos2fv\0" "glWindowPos2fvARB\0" "glWindowPos2fvMESA\0" "\0" - /* _mesa_function_pool[7973]: SecondaryColor3bvEXT (will be remapped) */ + /* _mesa_function_pool[8058]: SecondaryColor3bvEXT (will be remapped) */ "p\0" "glSecondaryColor3bv\0" "glSecondaryColor3bvEXT\0" "\0" - /* _mesa_function_pool[8019]: VertexPointerListIBM (dynamic) */ + /* _mesa_function_pool[8104]: VertexPointerListIBM (dynamic) */ "iiipi\0" "glVertexPointerListIBM\0" "\0" - /* _mesa_function_pool[8049]: GetProgramLocalParameterfvARB (will be remapped) */ + /* _mesa_function_pool[8134]: GetProgramLocalParameterfvARB (will be remapped) */ "iip\0" "glGetProgramLocalParameterfvARB\0" "\0" - /* _mesa_function_pool[8086]: FragmentMaterialfSGIX (dynamic) */ + /* _mesa_function_pool[8171]: FragmentMaterialfSGIX (dynamic) */ "iif\0" "glFragmentMaterialfSGIX\0" "\0" - /* _mesa_function_pool[8115]: TexCoord2fNormal3fVertex3fSUN (dynamic) */ - "ffffffff\0" - "glTexCoord2fNormal3fVertex3fSUN\0" + /* _mesa_function_pool[8200]: BindSampler (will be remapped) */ + "ii\0" + "glBindSampler\0" "\0" - /* _mesa_function_pool[8157]: RenderbufferStorageEXT (will be remapped) */ + /* _mesa_function_pool[8218]: RenderbufferStorageEXT (will be remapped) */ "iiii\0" "glRenderbufferStorage\0" "glRenderbufferStorageEXT\0" "\0" - /* _mesa_function_pool[8210]: IsFenceNV (will be remapped) */ + /* _mesa_function_pool[8271]: IsFenceNV (will be remapped) */ "i\0" "glIsFenceNV\0" "\0" - /* _mesa_function_pool[8225]: AttachObjectARB (will be remapped) */ + /* _mesa_function_pool[8286]: AttachObjectARB (will be remapped) */ "ii\0" "glAttachObjectARB\0" "\0" - /* _mesa_function_pool[8247]: GetFragmentLightivSGIX (dynamic) */ + /* _mesa_function_pool[8308]: GetFragmentLightivSGIX (dynamic) */ "iip\0" "glGetFragmentLightivSGIX\0" "\0" - /* _mesa_function_pool[8277]: UniformMatrix2fvARB (will be remapped) */ + /* _mesa_function_pool[8338]: UniformMatrix2fvARB (will be remapped) */ "iiip\0" "glUniformMatrix2fv\0" "glUniformMatrix2fvARB\0" "\0" - /* _mesa_function_pool[8324]: MultiTexCoord2fARB (offset 386) */ + /* _mesa_function_pool[8385]: MultiTexCoord2fARB (offset 386) */ "iff\0" "glMultiTexCoord2f\0" "glMultiTexCoord2fARB\0" "\0" - /* _mesa_function_pool[8368]: ColorTable (offset 339) */ + /* _mesa_function_pool[8429]: ColorTable (offset 339) */ "iiiiip\0" "glColorTable\0" "glColorTableSGI\0" "glColorTableEXT\0" "\0" - /* _mesa_function_pool[8421]: IndexPointer (offset 314) */ + /* _mesa_function_pool[8482]: IndexPointer (offset 314) */ "iip\0" "glIndexPointer\0" "\0" - /* _mesa_function_pool[8441]: Accum (offset 213) */ + /* _mesa_function_pool[8502]: Accum (offset 213) */ "if\0" "glAccum\0" "\0" - /* _mesa_function_pool[8453]: GetTexImage (offset 281) */ + /* _mesa_function_pool[8514]: GetTexImage (offset 281) */ "iiiip\0" "glGetTexImage\0" "\0" - /* _mesa_function_pool[8474]: MapControlPointsNV (dynamic) */ + /* _mesa_function_pool[8535]: MapControlPointsNV (dynamic) */ "iiiiiiiip\0" "glMapControlPointsNV\0" "\0" - /* _mesa_function_pool[8506]: ConvolutionFilter2D (offset 349) */ + /* _mesa_function_pool[8567]: ConvolutionFilter2D (offset 349) */ "iiiiiip\0" "glConvolutionFilter2D\0" "glConvolutionFilter2DEXT\0" "\0" - /* _mesa_function_pool[8562]: Finish (offset 216) */ + /* _mesa_function_pool[8623]: Finish (offset 216) */ "\0" "glFinish\0" "\0" - /* _mesa_function_pool[8573]: MapParameterfvNV (dynamic) */ + /* _mesa_function_pool[8634]: MapParameterfvNV (dynamic) */ "iip\0" "glMapParameterfvNV\0" "\0" - /* _mesa_function_pool[8597]: ClearStencil (offset 207) */ + /* _mesa_function_pool[8658]: ClearStencil (offset 207) */ "i\0" "glClearStencil\0" "\0" - /* _mesa_function_pool[8615]: VertexAttrib3dvARB (will be remapped) */ + /* _mesa_function_pool[8676]: VertexAttrib3dvARB (will be remapped) */ "ip\0" "glVertexAttrib3dv\0" "glVertexAttrib3dvARB\0" "\0" - /* _mesa_function_pool[8658]: Uniform4uivEXT (will be remapped) */ + /* _mesa_function_pool[8719]: Uniform4uivEXT (will be remapped) */ "iip\0" "glUniform4uivEXT\0" "glUniform4uiv\0" "\0" - /* _mesa_function_pool[8694]: HintPGI (dynamic) */ + /* _mesa_function_pool[8755]: HintPGI (dynamic) */ "ii\0" "glHintPGI\0" "\0" - /* _mesa_function_pool[8708]: ConvolutionParameteriv (offset 353) */ + /* _mesa_function_pool[8769]: ConvolutionParameteriv (offset 353) */ "iip\0" "glConvolutionParameteriv\0" "glConvolutionParameterivEXT\0" "\0" - /* _mesa_function_pool[8766]: Color4s (offset 33) */ + /* _mesa_function_pool[8827]: Color4s (offset 33) */ "iiii\0" "glColor4s\0" "\0" - /* _mesa_function_pool[8782]: InterleavedArrays (offset 317) */ + /* _mesa_function_pool[8843]: InterleavedArrays (offset 317) */ "iip\0" "glInterleavedArrays\0" "\0" - /* _mesa_function_pool[8807]: RasterPos2fv (offset 65) */ + /* _mesa_function_pool[8868]: RasterPos2fv (offset 65) */ "p\0" "glRasterPos2fv\0" "\0" - /* _mesa_function_pool[8825]: TexCoord1fv (offset 97) */ + /* _mesa_function_pool[8886]: TexCoord1fv (offset 97) */ "p\0" "glTexCoord1fv\0" "\0" - /* _mesa_function_pool[8842]: Vertex2d (offset 126) */ + /* _mesa_function_pool[8903]: Vertex2d (offset 126) */ "dd\0" "glVertex2d\0" "\0" - /* _mesa_function_pool[8857]: CullParameterdvEXT (dynamic) */ + /* _mesa_function_pool[8918]: CullParameterdvEXT (dynamic) */ "ip\0" "glCullParameterdvEXT\0" "\0" - /* _mesa_function_pool[8882]: ProgramNamedParameter4fNV (will be remapped) */ + /* _mesa_function_pool[8943]: ProgramNamedParameter4fNV (will be remapped) */ "iipffff\0" "glProgramNamedParameter4fNV\0" "\0" - /* _mesa_function_pool[8919]: Color3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[8980]: Color3fVertex3fSUN (dynamic) */ "ffffff\0" "glColor3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[8948]: ProgramEnvParameter4fvARB (will be remapped) */ + /* _mesa_function_pool[9009]: ProgramEnvParameter4fvARB (will be remapped) */ "iip\0" "glProgramEnvParameter4fvARB\0" "glProgramParameter4fvNV\0" "\0" - /* _mesa_function_pool[9005]: Color4i (offset 31) */ + /* _mesa_function_pool[9066]: Color4i (offset 31) */ "iiii\0" "glColor4i\0" "\0" - /* _mesa_function_pool[9021]: Color4f (offset 29) */ + /* _mesa_function_pool[9082]: Color4f (offset 29) */ "ffff\0" "glColor4f\0" "\0" - /* _mesa_function_pool[9037]: RasterPos4fv (offset 81) */ + /* _mesa_function_pool[9098]: RasterPos4fv (offset 81) */ "p\0" "glRasterPos4fv\0" "\0" - /* _mesa_function_pool[9055]: Color4d (offset 27) */ + /* _mesa_function_pool[9116]: Color4d (offset 27) */ "dddd\0" "glColor4d\0" "\0" - /* _mesa_function_pool[9071]: ClearIndex (offset 205) */ + /* _mesa_function_pool[9132]: ClearIndex (offset 205) */ "f\0" "glClearIndex\0" "\0" - /* _mesa_function_pool[9087]: Color4b (offset 25) */ + /* _mesa_function_pool[9148]: Color4b (offset 25) */ "iiii\0" "glColor4b\0" "\0" - /* _mesa_function_pool[9103]: LoadMatrixd (offset 292) */ + /* _mesa_function_pool[9164]: LoadMatrixd (offset 292) */ "p\0" "glLoadMatrixd\0" "\0" - /* _mesa_function_pool[9120]: FragmentLightModeliSGIX (dynamic) */ + /* _mesa_function_pool[9181]: FragmentLightModeliSGIX (dynamic) */ "ii\0" "glFragmentLightModeliSGIX\0" "\0" - /* _mesa_function_pool[9150]: RasterPos2dv (offset 63) */ + /* _mesa_function_pool[9211]: RasterPos2dv (offset 63) */ "p\0" "glRasterPos2dv\0" "\0" - /* _mesa_function_pool[9168]: ConvolutionParameterfv (offset 351) */ + /* _mesa_function_pool[9229]: ConvolutionParameterfv (offset 351) */ "iip\0" "glConvolutionParameterfv\0" "glConvolutionParameterfvEXT\0" "\0" - /* _mesa_function_pool[9226]: TbufferMask3DFX (dynamic) */ + /* _mesa_function_pool[9287]: TbufferMask3DFX (dynamic) */ "i\0" "glTbufferMask3DFX\0" "\0" - /* _mesa_function_pool[9247]: GetTexGendv (offset 278) */ + /* _mesa_function_pool[9308]: GetTexGendv (offset 278) */ "iip\0" "glGetTexGendv\0" "\0" - /* _mesa_function_pool[9266]: GetVertexAttribfvNV (will be remapped) */ + /* _mesa_function_pool[9327]: GetVertexAttribfvNV (will be remapped) */ "iip\0" "glGetVertexAttribfvNV\0" "\0" - /* _mesa_function_pool[9293]: BeginTransformFeedbackEXT (will be remapped) */ + /* _mesa_function_pool[9354]: BeginTransformFeedbackEXT (will be remapped) */ "i\0" "glBeginTransformFeedbackEXT\0" "glBeginTransformFeedback\0" "\0" - /* _mesa_function_pool[9349]: LoadProgramNV (will be remapped) */ + /* _mesa_function_pool[9410]: LoadProgramNV (will be remapped) */ "iiip\0" "glLoadProgramNV\0" "\0" - /* _mesa_function_pool[9371]: WaitSync (will be remapped) */ + /* _mesa_function_pool[9432]: WaitSync (will be remapped) */ "iii\0" "glWaitSync\0" "\0" - /* _mesa_function_pool[9387]: EndList (offset 1) */ + /* _mesa_function_pool[9448]: EndList (offset 1) */ "\0" "glEndList\0" "\0" - /* _mesa_function_pool[9399]: VertexAttrib4fvNV (will be remapped) */ + /* _mesa_function_pool[9460]: VertexAttrib4fvNV (will be remapped) */ "ip\0" "glVertexAttrib4fvNV\0" "\0" - /* _mesa_function_pool[9423]: GetAttachedObjectsARB (will be remapped) */ + /* _mesa_function_pool[9484]: GetAttachedObjectsARB (will be remapped) */ "iipp\0" "glGetAttachedObjectsARB\0" "\0" - /* _mesa_function_pool[9453]: Uniform3fvARB (will be remapped) */ + /* _mesa_function_pool[9514]: Uniform3fvARB (will be remapped) */ "iip\0" "glUniform3fv\0" "glUniform3fvARB\0" "\0" - /* _mesa_function_pool[9487]: EvalCoord1fv (offset 231) */ + /* _mesa_function_pool[9548]: EvalCoord1fv (offset 231) */ "p\0" "glEvalCoord1fv\0" "\0" - /* _mesa_function_pool[9505]: DrawRangeElements (offset 338) */ + /* _mesa_function_pool[9566]: DrawRangeElements (offset 338) */ "iiiiip\0" "glDrawRangeElements\0" "glDrawRangeElementsEXT\0" "\0" - /* _mesa_function_pool[9556]: EvalMesh2 (offset 238) */ + /* _mesa_function_pool[9617]: EvalMesh2 (offset 238) */ "iiiii\0" "glEvalMesh2\0" "\0" - /* _mesa_function_pool[9575]: Vertex4fv (offset 145) */ + /* _mesa_function_pool[9636]: Vertex4fv (offset 145) */ "p\0" "glVertex4fv\0" "\0" - /* _mesa_function_pool[9590]: GenTransformFeedbacks (will be remapped) */ + /* _mesa_function_pool[9651]: GenTransformFeedbacks (will be remapped) */ "ip\0" "glGenTransformFeedbacks\0" "\0" - /* _mesa_function_pool[9618]: SpriteParameterfvSGIX (dynamic) */ + /* _mesa_function_pool[9679]: SpriteParameterfvSGIX (dynamic) */ "ip\0" "glSpriteParameterfvSGIX\0" "\0" - /* _mesa_function_pool[9646]: CheckFramebufferStatusEXT (will be remapped) */ + /* _mesa_function_pool[9707]: CheckFramebufferStatusEXT (will be remapped) */ "i\0" "glCheckFramebufferStatus\0" "glCheckFramebufferStatusEXT\0" "\0" - /* _mesa_function_pool[9702]: GlobalAlphaFactoruiSUN (dynamic) */ + /* _mesa_function_pool[9763]: GlobalAlphaFactoruiSUN (dynamic) */ "i\0" "glGlobalAlphaFactoruiSUN\0" "\0" - /* _mesa_function_pool[9730]: GetHandleARB (will be remapped) */ + /* _mesa_function_pool[9791]: GetHandleARB (will be remapped) */ "i\0" "glGetHandleARB\0" "\0" - /* _mesa_function_pool[9748]: GetVertexAttribivARB (will be remapped) */ + /* _mesa_function_pool[9809]: GetVertexAttribivARB (will be remapped) */ "iip\0" "glGetVertexAttribiv\0" "glGetVertexAttribivARB\0" "\0" - /* _mesa_function_pool[9796]: BlendFunciARB (will be remapped) */ + /* _mesa_function_pool[9857]: BlendFunciARB (will be remapped) */ "iii\0" "glBlendFunciARB\0" "\0" - /* _mesa_function_pool[9817]: GetCombinerInputParameterfvNV (will be remapped) */ + /* _mesa_function_pool[9878]: GetCombinerInputParameterfvNV (will be remapped) */ "iiiip\0" "glGetCombinerInputParameterfvNV\0" "\0" - /* _mesa_function_pool[9856]: GetTexParameterIivEXT (will be remapped) */ + /* _mesa_function_pool[9917]: GetTexParameterIivEXT (will be remapped) */ "iip\0" "glGetTexParameterIivEXT\0" "glGetTexParameterIiv\0" "\0" - /* _mesa_function_pool[9906]: CreateProgram (will be remapped) */ + /* _mesa_function_pool[9967]: CreateProgram (will be remapped) */ "\0" "glCreateProgram\0" "\0" - /* _mesa_function_pool[9924]: LoadTransposeMatrixdARB (will be remapped) */ + /* _mesa_function_pool[9985]: LoadTransposeMatrixdARB (will be remapped) */ "p\0" "glLoadTransposeMatrixd\0" "glLoadTransposeMatrixdARB\0" "\0" - /* _mesa_function_pool[9976]: ReleaseShaderCompiler (will be remapped) */ + /* _mesa_function_pool[10037]: ReleaseShaderCompiler (will be remapped) */ "\0" "glReleaseShaderCompiler\0" "\0" - /* _mesa_function_pool[10002]: GetMinmax (offset 364) */ + /* _mesa_function_pool[10063]: GetMinmax (offset 364) */ "iiiip\0" "glGetMinmax\0" "glGetMinmaxEXT\0" "\0" - /* _mesa_function_pool[10036]: StencilFuncSeparate (will be remapped) */ + /* _mesa_function_pool[10097]: StencilFuncSeparate (will be remapped) */ "iiii\0" "glStencilFuncSeparate\0" "\0" - /* _mesa_function_pool[10064]: SecondaryColor3sEXT (will be remapped) */ + /* _mesa_function_pool[10125]: SecondaryColor3sEXT (will be remapped) */ "iii\0" "glSecondaryColor3s\0" "glSecondaryColor3sEXT\0" "\0" - /* _mesa_function_pool[10110]: Color3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[10171]: Color3fVertex3fvSUN (dynamic) */ "pp\0" "glColor3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[10136]: GetInteger64i_v (will be remapped) */ + /* _mesa_function_pool[10197]: GetInteger64i_v (will be remapped) */ "iip\0" "glGetInteger64i_v\0" "\0" - /* _mesa_function_pool[10159]: Normal3fv (offset 57) */ + /* _mesa_function_pool[10220]: Normal3fv (offset 57) */ "p\0" "glNormal3fv\0" "\0" - /* _mesa_function_pool[10174]: GlobalAlphaFactorbSUN (dynamic) */ + /* _mesa_function_pool[10235]: GlobalAlphaFactorbSUN (dynamic) */ "i\0" "glGlobalAlphaFactorbSUN\0" "\0" - /* _mesa_function_pool[10201]: Color3us (offset 23) */ + /* _mesa_function_pool[10262]: Color3us (offset 23) */ "iii\0" "glColor3us\0" "\0" - /* _mesa_function_pool[10217]: ImageTransformParameterfvHP (dynamic) */ + /* _mesa_function_pool[10278]: ImageTransformParameterfvHP (dynamic) */ "iip\0" "glImageTransformParameterfvHP\0" "\0" - /* _mesa_function_pool[10252]: VertexAttrib4ivARB (will be remapped) */ + /* _mesa_function_pool[10313]: VertexAttrib4ivARB (will be remapped) */ "ip\0" "glVertexAttrib4iv\0" "glVertexAttrib4ivARB\0" "\0" - /* _mesa_function_pool[10295]: End (offset 43) */ + /* _mesa_function_pool[10356]: End (offset 43) */ "\0" "glEnd\0" "\0" - /* _mesa_function_pool[10303]: VertexAttrib3fNV (will be remapped) */ + /* _mesa_function_pool[10364]: VertexAttrib3fNV (will be remapped) */ "ifff\0" "glVertexAttrib3fNV\0" "\0" - /* _mesa_function_pool[10328]: VertexAttribs2dvNV (will be remapped) */ + /* _mesa_function_pool[10389]: VertexAttribs2dvNV (will be remapped) */ "iip\0" "glVertexAttribs2dvNV\0" "\0" - /* _mesa_function_pool[10354]: GetQueryObjectui64vEXT (will be remapped) */ + /* _mesa_function_pool[10415]: GetQueryObjectui64vEXT (will be remapped) */ "iip\0" "glGetQueryObjectui64vEXT\0" "\0" - /* _mesa_function_pool[10384]: MultiTexCoord3fvARB (offset 395) */ + /* _mesa_function_pool[10445]: MultiTexCoord3fvARB (offset 395) */ "ip\0" "glMultiTexCoord3fv\0" "glMultiTexCoord3fvARB\0" "\0" - /* _mesa_function_pool[10429]: SecondaryColor3dEXT (will be remapped) */ + /* _mesa_function_pool[10490]: SecondaryColor3dEXT (will be remapped) */ "ddd\0" "glSecondaryColor3d\0" "glSecondaryColor3dEXT\0" "\0" - /* _mesa_function_pool[10475]: Color3ub (offset 19) */ + /* _mesa_function_pool[10536]: Color3ub (offset 19) */ "iii\0" "glColor3ub\0" "\0" - /* _mesa_function_pool[10491]: GetProgramParameterfvNV (will be remapped) */ + /* _mesa_function_pool[10552]: GetProgramParameterfvNV (will be remapped) */ "iiip\0" "glGetProgramParameterfvNV\0" "\0" - /* _mesa_function_pool[10523]: TangentPointerEXT (dynamic) */ + /* _mesa_function_pool[10584]: TangentPointerEXT (dynamic) */ "iip\0" "glTangentPointerEXT\0" "\0" - /* _mesa_function_pool[10548]: Color4fNormal3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[10609]: Color4fNormal3fVertex3fvSUN (dynamic) */ "ppp\0" "glColor4fNormal3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[10583]: GetInstrumentsSGIX (dynamic) */ + /* _mesa_function_pool[10644]: GetInstrumentsSGIX (dynamic) */ "\0" "glGetInstrumentsSGIX\0" "\0" - /* _mesa_function_pool[10606]: GetUniformuivEXT (will be remapped) */ + /* _mesa_function_pool[10667]: GetUniformuivEXT (will be remapped) */ "iip\0" "glGetUniformuivEXT\0" "glGetUniformuiv\0" "\0" - /* _mesa_function_pool[10646]: Color3ui (offset 21) */ + /* _mesa_function_pool[10707]: Color3ui (offset 21) */ "iii\0" "glColor3ui\0" "\0" - /* _mesa_function_pool[10662]: EvalMapsNV (dynamic) */ + /* _mesa_function_pool[10723]: EvalMapsNV (dynamic) */ "ii\0" "glEvalMapsNV\0" "\0" - /* _mesa_function_pool[10679]: TexSubImage2D (offset 333) */ + /* _mesa_function_pool[10740]: TexSubImage2D (offset 333) */ "iiiiiiiip\0" "glTexSubImage2D\0" "glTexSubImage2DEXT\0" "\0" - /* _mesa_function_pool[10725]: FragmentLightivSGIX (dynamic) */ + /* _mesa_function_pool[10786]: FragmentLightivSGIX (dynamic) */ "iip\0" "glFragmentLightivSGIX\0" "\0" - /* _mesa_function_pool[10752]: GetTexParameterPointervAPPLE (will be remapped) */ + /* _mesa_function_pool[10813]: GetTexParameterPointervAPPLE (will be remapped) */ "iip\0" "glGetTexParameterPointervAPPLE\0" "\0" - /* _mesa_function_pool[10788]: TexGenfv (offset 191) */ + /* _mesa_function_pool[10849]: TexGenfv (offset 191) */ "iip\0" "glTexGenfv\0" "\0" - /* _mesa_function_pool[10804]: GetTransformFeedbackVaryingEXT (will be remapped) */ + /* _mesa_function_pool[10865]: GetTransformFeedbackVaryingEXT (will be remapped) */ "iiipppp\0" "glGetTransformFeedbackVaryingEXT\0" "glGetTransformFeedbackVarying\0" "\0" - /* _mesa_function_pool[10876]: VertexAttrib4bvARB (will be remapped) */ + /* _mesa_function_pool[10937]: VertexAttrib4bvARB (will be remapped) */ "ip\0" "glVertexAttrib4bv\0" "glVertexAttrib4bvARB\0" "\0" - /* _mesa_function_pool[10919]: ShaderBinary (will be remapped) */ + /* _mesa_function_pool[10980]: ShaderBinary (will be remapped) */ "ipipi\0" "glShaderBinary\0" "\0" - /* _mesa_function_pool[10941]: GetIntegerIndexedvEXT (will be remapped) */ + /* _mesa_function_pool[11002]: GetIntegerIndexedvEXT (will be remapped) */ "iip\0" "glGetIntegerIndexedvEXT\0" "glGetIntegeri_v\0" "\0" - /* _mesa_function_pool[10986]: MultiTexCoord4sARB (offset 406) */ + /* _mesa_function_pool[11047]: MultiTexCoord4sARB (offset 406) */ "iiiii\0" "glMultiTexCoord4s\0" "glMultiTexCoord4sARB\0" "\0" - /* _mesa_function_pool[11032]: GetFragmentMaterialivSGIX (dynamic) */ + /* _mesa_function_pool[11093]: GetFragmentMaterialivSGIX (dynamic) */ "iip\0" "glGetFragmentMaterialivSGIX\0" "\0" - /* _mesa_function_pool[11065]: WindowPos4dMESA (will be remapped) */ + /* _mesa_function_pool[11126]: WindowPos4dMESA (will be remapped) */ "dddd\0" "glWindowPos4dMESA\0" "\0" - /* _mesa_function_pool[11089]: WeightPointerARB (dynamic) */ + /* _mesa_function_pool[11150]: WeightPointerARB (dynamic) */ "iiip\0" "glWeightPointerARB\0" "\0" - /* _mesa_function_pool[11114]: WindowPos2dMESA (will be remapped) */ + /* _mesa_function_pool[11175]: WindowPos2dMESA (will be remapped) */ "dd\0" "glWindowPos2d\0" "glWindowPos2dARB\0" "glWindowPos2dMESA\0" "\0" - /* _mesa_function_pool[11167]: FramebufferTexture3DEXT (will be remapped) */ + /* _mesa_function_pool[11228]: FramebufferTexture3DEXT (will be remapped) */ "iiiiii\0" "glFramebufferTexture3D\0" "glFramebufferTexture3DEXT\0" "\0" - /* _mesa_function_pool[11224]: BlendEquation (offset 337) */ + /* _mesa_function_pool[11285]: BlendEquation (offset 337) */ "i\0" "glBlendEquation\0" "glBlendEquationEXT\0" "\0" - /* _mesa_function_pool[11262]: VertexAttrib3dNV (will be remapped) */ + /* _mesa_function_pool[11323]: VertexAttrib3dNV (will be remapped) */ "iddd\0" "glVertexAttrib3dNV\0" "\0" - /* _mesa_function_pool[11287]: VertexAttrib3dARB (will be remapped) */ + /* _mesa_function_pool[11348]: VertexAttrib3dARB (will be remapped) */ "iddd\0" "glVertexAttrib3d\0" "glVertexAttrib3dARB\0" "\0" - /* _mesa_function_pool[11330]: VertexAttribI4usvEXT (will be remapped) */ + /* _mesa_function_pool[11391]: VertexAttribI4usvEXT (will be remapped) */ "ip\0" "glVertexAttribI4usvEXT\0" "glVertexAttribI4usv\0" "\0" - /* _mesa_function_pool[11377]: ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[11438]: ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN (dynamic) */ "ppppp\0" "glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[11441]: VertexAttrib4fARB (will be remapped) */ + /* _mesa_function_pool[11502]: VertexAttrib4fARB (will be remapped) */ "iffff\0" "glVertexAttrib4f\0" "glVertexAttrib4fARB\0" "\0" - /* _mesa_function_pool[11485]: GetError (offset 261) */ + /* _mesa_function_pool[11546]: GetError (offset 261) */ "\0" "glGetError\0" "\0" - /* _mesa_function_pool[11498]: IndexFuncEXT (dynamic) */ + /* _mesa_function_pool[11559]: IndexFuncEXT (dynamic) */ "if\0" "glIndexFuncEXT\0" "\0" - /* _mesa_function_pool[11517]: TexCoord3dv (offset 111) */ + /* _mesa_function_pool[11578]: TexCoord3dv (offset 111) */ "p\0" "glTexCoord3dv\0" "\0" - /* _mesa_function_pool[11534]: Indexdv (offset 45) */ + /* _mesa_function_pool[11595]: Indexdv (offset 45) */ "p\0" "glIndexdv\0" "\0" - /* _mesa_function_pool[11547]: FramebufferTexture2DEXT (will be remapped) */ + /* _mesa_function_pool[11608]: FramebufferTexture2DEXT (will be remapped) */ "iiiii\0" "glFramebufferTexture2D\0" "glFramebufferTexture2DEXT\0" "\0" - /* _mesa_function_pool[11603]: Normal3s (offset 60) */ + /* _mesa_function_pool[11664]: Normal3s (offset 60) */ "iii\0" "glNormal3s\0" "\0" - /* _mesa_function_pool[11619]: GetObjectParameterivAPPLE (will be remapped) */ + /* _mesa_function_pool[11680]: GetObjectParameterivAPPLE (will be remapped) */ "iiip\0" "glGetObjectParameterivAPPLE\0" "\0" - /* _mesa_function_pool[11653]: PushName (offset 201) */ + /* _mesa_function_pool[11714]: PushName (offset 201) */ "i\0" "glPushName\0" "\0" - /* _mesa_function_pool[11667]: MultiTexCoord2dvARB (offset 385) */ + /* _mesa_function_pool[11728]: MultiTexCoord2dvARB (offset 385) */ "ip\0" "glMultiTexCoord2dv\0" "glMultiTexCoord2dvARB\0" "\0" - /* _mesa_function_pool[11712]: CullParameterfvEXT (dynamic) */ + /* _mesa_function_pool[11773]: CullParameterfvEXT (dynamic) */ "ip\0" "glCullParameterfvEXT\0" "\0" - /* _mesa_function_pool[11737]: Normal3i (offset 58) */ + /* _mesa_function_pool[11798]: Normal3i (offset 58) */ "iii\0" "glNormal3i\0" "\0" - /* _mesa_function_pool[11753]: ProgramNamedParameter4fvNV (will be remapped) */ + /* _mesa_function_pool[11814]: ProgramNamedParameter4fvNV (will be remapped) */ "iipp\0" "glProgramNamedParameter4fvNV\0" "\0" - /* _mesa_function_pool[11788]: SecondaryColorPointerEXT (will be remapped) */ + /* _mesa_function_pool[11849]: SecondaryColorPointerEXT (will be remapped) */ "iiip\0" "glSecondaryColorPointer\0" "glSecondaryColorPointerEXT\0" "\0" - /* _mesa_function_pool[11845]: VertexAttrib4fvARB (will be remapped) */ + /* _mesa_function_pool[11906]: VertexAttrib4fvARB (will be remapped) */ "ip\0" "glVertexAttrib4fv\0" "glVertexAttrib4fvARB\0" "\0" - /* _mesa_function_pool[11888]: ColorPointerListIBM (dynamic) */ - "iiipi\0" - "glColorPointerListIBM\0" + /* _mesa_function_pool[11949]: PixelTexGenSGIX (will be remapped) */ + "i\0" + "glPixelTexGenSGIX\0" "\0" - /* _mesa_function_pool[11917]: GetActiveUniformARB (will be remapped) */ + /* _mesa_function_pool[11970]: GetActiveUniformARB (will be remapped) */ "iiipppp\0" "glGetActiveUniform\0" "glGetActiveUniformARB\0" "\0" - /* _mesa_function_pool[11967]: ImageTransformParameteriHP (dynamic) */ + /* _mesa_function_pool[12020]: ImageTransformParameteriHP (dynamic) */ "iii\0" "glImageTransformParameteriHP\0" "\0" - /* _mesa_function_pool[12001]: Normal3b (offset 52) */ + /* _mesa_function_pool[12054]: Normal3b (offset 52) */ "iii\0" "glNormal3b\0" "\0" - /* _mesa_function_pool[12017]: Normal3d (offset 54) */ + /* _mesa_function_pool[12070]: Normal3d (offset 54) */ "ddd\0" "glNormal3d\0" "\0" - /* _mesa_function_pool[12033]: Uniform1uiEXT (will be remapped) */ + /* _mesa_function_pool[12086]: Uniform1uiEXT (will be remapped) */ "ii\0" "glUniform1uiEXT\0" "glUniform1ui\0" "\0" - /* _mesa_function_pool[12066]: Normal3f (offset 56) */ + /* _mesa_function_pool[12119]: Normal3f (offset 56) */ "fff\0" "glNormal3f\0" "\0" - /* _mesa_function_pool[12082]: MultiTexCoord1svARB (offset 383) */ + /* _mesa_function_pool[12135]: MultiTexCoord1svARB (offset 383) */ "ip\0" "glMultiTexCoord1sv\0" "glMultiTexCoord1svARB\0" "\0" - /* _mesa_function_pool[12127]: Indexi (offset 48) */ + /* _mesa_function_pool[12180]: Indexi (offset 48) */ "i\0" "glIndexi\0" "\0" - /* _mesa_function_pool[12139]: EGLImageTargetTexture2DOES (will be remapped) */ + /* _mesa_function_pool[12192]: EGLImageTargetTexture2DOES (will be remapped) */ "ip\0" "glEGLImageTargetTexture2DOES\0" "\0" - /* _mesa_function_pool[12172]: EndQueryARB (will be remapped) */ + /* _mesa_function_pool[12225]: EndQueryARB (will be remapped) */ "i\0" "glEndQuery\0" "glEndQueryARB\0" "\0" - /* _mesa_function_pool[12200]: DeleteFencesNV (will be remapped) */ + /* _mesa_function_pool[12253]: DeleteFencesNV (will be remapped) */ "ip\0" "glDeleteFencesNV\0" "\0" - /* _mesa_function_pool[12221]: BindBufferRangeEXT (will be remapped) */ + /* _mesa_function_pool[12274]: ColorPointerListIBM (dynamic) */ + "iiipi\0" + "glColorPointerListIBM\0" + "\0" + /* _mesa_function_pool[12303]: BindBufferRangeEXT (will be remapped) */ "iiiii\0" "glBindBufferRangeEXT\0" "glBindBufferRange\0" "\0" - /* _mesa_function_pool[12267]: DepthMask (offset 211) */ + /* _mesa_function_pool[12349]: DepthMask (offset 211) */ "i\0" "glDepthMask\0" "\0" - /* _mesa_function_pool[12282]: IsShader (will be remapped) */ + /* _mesa_function_pool[12364]: IsShader (will be remapped) */ "i\0" "glIsShader\0" "\0" - /* _mesa_function_pool[12296]: Indexf (offset 46) */ + /* _mesa_function_pool[12378]: Indexf (offset 46) */ "f\0" "glIndexf\0" "\0" - /* _mesa_function_pool[12308]: GetImageTransformParameterivHP (dynamic) */ + /* _mesa_function_pool[12390]: GetImageTransformParameterivHP (dynamic) */ "iip\0" "glGetImageTransformParameterivHP\0" "\0" - /* _mesa_function_pool[12346]: Indexd (offset 44) */ + /* _mesa_function_pool[12428]: Indexd (offset 44) */ "d\0" "glIndexd\0" "\0" - /* _mesa_function_pool[12358]: GetMaterialiv (offset 270) */ + /* _mesa_function_pool[12440]: GetMaterialiv (offset 270) */ "iip\0" "glGetMaterialiv\0" "\0" - /* _mesa_function_pool[12379]: StencilOp (offset 244) */ + /* _mesa_function_pool[12461]: StencilOp (offset 244) */ "iii\0" "glStencilOp\0" "\0" - /* _mesa_function_pool[12396]: WindowPos4ivMESA (will be remapped) */ + /* _mesa_function_pool[12478]: WindowPos4ivMESA (will be remapped) */ "p\0" "glWindowPos4ivMESA\0" "\0" - /* _mesa_function_pool[12418]: FramebufferTextureLayer (dynamic) */ + /* _mesa_function_pool[12500]: FramebufferTextureLayer (dynamic) */ "iiiii\0" "glFramebufferTextureLayerARB\0" "\0" - /* _mesa_function_pool[12454]: MultiTexCoord3svARB (offset 399) */ + /* _mesa_function_pool[12536]: MultiTexCoord3svARB (offset 399) */ "ip\0" "glMultiTexCoord3sv\0" "glMultiTexCoord3svARB\0" "\0" - /* _mesa_function_pool[12499]: TexEnvfv (offset 185) */ + /* _mesa_function_pool[12581]: TexEnvfv (offset 185) */ "iip\0" "glTexEnvfv\0" "\0" - /* _mesa_function_pool[12515]: MultiTexCoord4iARB (offset 404) */ + /* _mesa_function_pool[12597]: MultiTexCoord4iARB (offset 404) */ "iiiii\0" "glMultiTexCoord4i\0" "glMultiTexCoord4iARB\0" "\0" - /* _mesa_function_pool[12561]: Indexs (offset 50) */ + /* _mesa_function_pool[12643]: Indexs (offset 50) */ "i\0" "glIndexs\0" "\0" - /* _mesa_function_pool[12573]: Binormal3ivEXT (dynamic) */ + /* _mesa_function_pool[12655]: Binormal3ivEXT (dynamic) */ "p\0" "glBinormal3ivEXT\0" "\0" - /* _mesa_function_pool[12593]: ResizeBuffersMESA (will be remapped) */ + /* _mesa_function_pool[12675]: ResizeBuffersMESA (will be remapped) */ "\0" "glResizeBuffersMESA\0" "\0" - /* _mesa_function_pool[12615]: BlendFuncSeparateiARB (will be remapped) */ + /* _mesa_function_pool[12697]: BlendFuncSeparateiARB (will be remapped) */ "iiiii\0" "glBlendFuncSeparateiARB\0" "\0" - /* _mesa_function_pool[12646]: GetUniformivARB (will be remapped) */ + /* _mesa_function_pool[12728]: GetUniformivARB (will be remapped) */ "iip\0" "glGetUniformiv\0" "glGetUniformivARB\0" "\0" - /* _mesa_function_pool[12684]: PixelTexGenParameteriSGIS (will be remapped) */ + /* _mesa_function_pool[12766]: PixelTexGenParameteriSGIS (will be remapped) */ "ii\0" "glPixelTexGenParameteriSGIS\0" "\0" - /* _mesa_function_pool[12716]: VertexPointervINTEL (dynamic) */ + /* _mesa_function_pool[12798]: VertexPointervINTEL (dynamic) */ "iip\0" "glVertexPointervINTEL\0" "\0" - /* _mesa_function_pool[12743]: Vertex2i (offset 130) */ + /* _mesa_function_pool[12825]: Vertex2i (offset 130) */ "ii\0" "glVertex2i\0" "\0" - /* _mesa_function_pool[12758]: LoadMatrixf (offset 291) */ + /* _mesa_function_pool[12840]: LoadMatrixf (offset 291) */ "p\0" "glLoadMatrixf\0" "\0" - /* _mesa_function_pool[12775]: VertexAttribI1uivEXT (will be remapped) */ + /* _mesa_function_pool[12857]: VertexAttribI1uivEXT (will be remapped) */ "ip\0" "glVertexAttribI1uivEXT\0" "glVertexAttribI1uiv\0" "\0" - /* _mesa_function_pool[12822]: Vertex2f (offset 128) */ + /* _mesa_function_pool[12904]: Vertex2f (offset 128) */ "ff\0" "glVertex2f\0" "\0" - /* _mesa_function_pool[12837]: ReplacementCodeuiColor4fNormal3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[12919]: ReplacementCodeuiColor4fNormal3fVertex3fvSUN (dynamic) */ "pppp\0" "glReplacementCodeuiColor4fNormal3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[12890]: Color4bv (offset 26) */ + /* _mesa_function_pool[12972]: Color4bv (offset 26) */ "p\0" "glColor4bv\0" "\0" - /* _mesa_function_pool[12904]: VertexPointer (offset 321) */ + /* _mesa_function_pool[12986]: VertexPointer (offset 321) */ "iiip\0" "glVertexPointer\0" "\0" - /* _mesa_function_pool[12926]: SecondaryColor3uiEXT (will be remapped) */ + /* _mesa_function_pool[13008]: SecondaryColor3uiEXT (will be remapped) */ "iii\0" "glSecondaryColor3ui\0" "glSecondaryColor3uiEXT\0" "\0" - /* _mesa_function_pool[12974]: StartInstrumentsSGIX (dynamic) */ + /* _mesa_function_pool[13056]: StartInstrumentsSGIX (dynamic) */ "\0" "glStartInstrumentsSGIX\0" "\0" - /* _mesa_function_pool[12999]: SecondaryColor3usvEXT (will be remapped) */ + /* _mesa_function_pool[13081]: SecondaryColor3usvEXT (will be remapped) */ "p\0" "glSecondaryColor3usv\0" "glSecondaryColor3usvEXT\0" "\0" - /* _mesa_function_pool[13047]: VertexAttrib2fvNV (will be remapped) */ + /* _mesa_function_pool[13129]: VertexAttrib2fvNV (will be remapped) */ "ip\0" "glVertexAttrib2fvNV\0" "\0" - /* _mesa_function_pool[13071]: ProgramLocalParameter4dvARB (will be remapped) */ + /* _mesa_function_pool[13153]: ProgramLocalParameter4dvARB (will be remapped) */ "iip\0" "glProgramLocalParameter4dvARB\0" "\0" - /* _mesa_function_pool[13106]: DeleteLists (offset 4) */ + /* _mesa_function_pool[13188]: DeleteLists (offset 4) */ "ii\0" "glDeleteLists\0" "\0" - /* _mesa_function_pool[13124]: LogicOp (offset 242) */ + /* _mesa_function_pool[13206]: LogicOp (offset 242) */ "i\0" "glLogicOp\0" "\0" - /* _mesa_function_pool[13137]: MatrixIndexuivARB (dynamic) */ + /* _mesa_function_pool[13219]: MatrixIndexuivARB (dynamic) */ "ip\0" "glMatrixIndexuivARB\0" "\0" - /* _mesa_function_pool[13161]: Vertex2s (offset 132) */ + /* _mesa_function_pool[13243]: Vertex2s (offset 132) */ "ii\0" "glVertex2s\0" "\0" - /* _mesa_function_pool[13176]: RenderbufferStorageMultisample (will be remapped) */ + /* _mesa_function_pool[13258]: RenderbufferStorageMultisample (will be remapped) */ "iiiii\0" "glRenderbufferStorageMultisample\0" "glRenderbufferStorageMultisampleEXT\0" "\0" - /* _mesa_function_pool[13252]: TexCoord4fv (offset 121) */ + /* _mesa_function_pool[13334]: TexCoord4fv (offset 121) */ "p\0" "glTexCoord4fv\0" "\0" - /* _mesa_function_pool[13269]: Tangent3sEXT (dynamic) */ + /* _mesa_function_pool[13351]: Tangent3sEXT (dynamic) */ "iii\0" "glTangent3sEXT\0" "\0" - /* _mesa_function_pool[13289]: GlobalAlphaFactorfSUN (dynamic) */ + /* _mesa_function_pool[13371]: GlobalAlphaFactorfSUN (dynamic) */ "f\0" "glGlobalAlphaFactorfSUN\0" "\0" - /* _mesa_function_pool[13316]: MultiTexCoord3iARB (offset 396) */ + /* _mesa_function_pool[13398]: MultiTexCoord3iARB (offset 396) */ "iiii\0" "glMultiTexCoord3i\0" "glMultiTexCoord3iARB\0" "\0" - /* _mesa_function_pool[13361]: IsProgram (will be remapped) */ + /* _mesa_function_pool[13443]: IsProgram (will be remapped) */ "i\0" "glIsProgram\0" "\0" - /* _mesa_function_pool[13376]: TexCoordPointerListIBM (dynamic) */ + /* _mesa_function_pool[13458]: TexCoordPointerListIBM (dynamic) */ "iiipi\0" "glTexCoordPointerListIBM\0" "\0" - /* _mesa_function_pool[13408]: VertexAttribI4svEXT (will be remapped) */ + /* _mesa_function_pool[13490]: VertexAttribI4svEXT (will be remapped) */ "ip\0" "glVertexAttribI4svEXT\0" "glVertexAttribI4sv\0" "\0" - /* _mesa_function_pool[13453]: GlobalAlphaFactorusSUN (dynamic) */ + /* _mesa_function_pool[13535]: GlobalAlphaFactorusSUN (dynamic) */ "i\0" "glGlobalAlphaFactorusSUN\0" "\0" - /* _mesa_function_pool[13481]: VertexAttrib2dvNV (will be remapped) */ + /* _mesa_function_pool[13563]: VertexAttrib2dvNV (will be remapped) */ "ip\0" "glVertexAttrib2dvNV\0" "\0" - /* _mesa_function_pool[13505]: FramebufferRenderbufferEXT (will be remapped) */ + /* _mesa_function_pool[13587]: FramebufferRenderbufferEXT (will be remapped) */ "iiii\0" "glFramebufferRenderbuffer\0" "glFramebufferRenderbufferEXT\0" "\0" - /* _mesa_function_pool[13566]: ClearBufferuiv (will be remapped) */ + /* _mesa_function_pool[13648]: ClearBufferuiv (will be remapped) */ "iip\0" "glClearBufferuiv\0" "\0" - /* _mesa_function_pool[13588]: VertexAttrib1dvNV (will be remapped) */ + /* _mesa_function_pool[13670]: VertexAttrib1dvNV (will be remapped) */ "ip\0" "glVertexAttrib1dvNV\0" "\0" - /* _mesa_function_pool[13612]: GenTextures (offset 328) */ + /* _mesa_function_pool[13694]: GenTextures (offset 328) */ "ip\0" "glGenTextures\0" "glGenTexturesEXT\0" "\0" - /* _mesa_function_pool[13647]: FramebufferTextureARB (will be remapped) */ + /* _mesa_function_pool[13729]: FramebufferTextureARB (will be remapped) */ "iiii\0" "glFramebufferTextureARB\0" "\0" - /* _mesa_function_pool[13677]: SetFenceNV (will be remapped) */ + /* _mesa_function_pool[13759]: SetFenceNV (will be remapped) */ "ii\0" "glSetFenceNV\0" "\0" - /* _mesa_function_pool[13694]: FramebufferTexture1DEXT (will be remapped) */ + /* _mesa_function_pool[13776]: FramebufferTexture1DEXT (will be remapped) */ "iiiii\0" "glFramebufferTexture1D\0" "glFramebufferTexture1DEXT\0" "\0" - /* _mesa_function_pool[13750]: GetCombinerOutputParameterivNV (will be remapped) */ + /* _mesa_function_pool[13832]: GetCombinerOutputParameterivNV (will be remapped) */ "iiip\0" "glGetCombinerOutputParameterivNV\0" "\0" - /* _mesa_function_pool[13789]: MultiModeDrawArraysIBM (will be remapped) */ + /* _mesa_function_pool[13871]: MultiModeDrawArraysIBM (will be remapped) */ "pppii\0" "glMultiModeDrawArraysIBM\0" "\0" - /* _mesa_function_pool[13821]: PixelTexGenParameterivSGIS (will be remapped) */ + /* _mesa_function_pool[13903]: PixelTexGenParameterivSGIS (will be remapped) */ "ip\0" "glPixelTexGenParameterivSGIS\0" "\0" - /* _mesa_function_pool[13854]: TextureNormalEXT (dynamic) */ + /* _mesa_function_pool[13936]: TextureNormalEXT (dynamic) */ "i\0" "glTextureNormalEXT\0" "\0" - /* _mesa_function_pool[13876]: IndexPointerListIBM (dynamic) */ + /* _mesa_function_pool[13958]: IndexPointerListIBM (dynamic) */ "iipi\0" "glIndexPointerListIBM\0" "\0" - /* _mesa_function_pool[13904]: WeightfvARB (dynamic) */ + /* _mesa_function_pool[13986]: WeightfvARB (dynamic) */ "ip\0" "glWeightfvARB\0" "\0" - /* _mesa_function_pool[13922]: GetCombinerOutputParameterfvNV (will be remapped) */ + /* _mesa_function_pool[14004]: GetCombinerOutputParameterfvNV (will be remapped) */ "iiip\0" "glGetCombinerOutputParameterfvNV\0" "\0" - /* _mesa_function_pool[13961]: RasterPos2sv (offset 69) */ + /* _mesa_function_pool[14043]: RasterPos2sv (offset 69) */ "p\0" "glRasterPos2sv\0" "\0" - /* _mesa_function_pool[13979]: Color4ubv (offset 36) */ + /* _mesa_function_pool[14061]: Color4ubv (offset 36) */ "p\0" "glColor4ubv\0" "\0" - /* _mesa_function_pool[13994]: DrawBuffer (offset 202) */ + /* _mesa_function_pool[14076]: DrawBuffer (offset 202) */ "i\0" "glDrawBuffer\0" "\0" - /* _mesa_function_pool[14010]: TexCoord2fv (offset 105) */ + /* _mesa_function_pool[14092]: TexCoord2fv (offset 105) */ "p\0" "glTexCoord2fv\0" "\0" - /* _mesa_function_pool[14027]: WindowPos4fMESA (will be remapped) */ + /* _mesa_function_pool[14109]: WindowPos4fMESA (will be remapped) */ "ffff\0" "glWindowPos4fMESA\0" "\0" - /* _mesa_function_pool[14051]: TexCoord1sv (offset 101) */ + /* _mesa_function_pool[14133]: TexCoord1sv (offset 101) */ "p\0" "glTexCoord1sv\0" "\0" - /* _mesa_function_pool[14068]: WindowPos3dvMESA (will be remapped) */ + /* _mesa_function_pool[14150]: WindowPos3dvMESA (will be remapped) */ "p\0" "glWindowPos3dv\0" "glWindowPos3dvARB\0" "glWindowPos3dvMESA\0" "\0" - /* _mesa_function_pool[14123]: DepthFunc (offset 245) */ + /* _mesa_function_pool[14205]: DepthFunc (offset 245) */ "i\0" "glDepthFunc\0" "\0" - /* _mesa_function_pool[14138]: PixelMapusv (offset 253) */ + /* _mesa_function_pool[14220]: PixelMapusv (offset 253) */ "iip\0" "glPixelMapusv\0" "\0" - /* _mesa_function_pool[14157]: GetQueryObjecti64vEXT (will be remapped) */ + /* _mesa_function_pool[14239]: GetQueryObjecti64vEXT (will be remapped) */ "iip\0" "glGetQueryObjecti64vEXT\0" "\0" - /* _mesa_function_pool[14186]: MultiTexCoord1dARB (offset 376) */ + /* _mesa_function_pool[14268]: MultiTexCoord1dARB (offset 376) */ "id\0" "glMultiTexCoord1d\0" "glMultiTexCoord1dARB\0" "\0" - /* _mesa_function_pool[14229]: PointParameterivNV (will be remapped) */ + /* _mesa_function_pool[14311]: PointParameterivNV (will be remapped) */ "ip\0" "glPointParameteriv\0" "glPointParameterivNV\0" "\0" - /* _mesa_function_pool[14273]: BlendFunc (offset 241) */ + /* _mesa_function_pool[14355]: IsSampler (will be remapped) */ + "i\0" + "glIsSampler\0" + "\0" + /* _mesa_function_pool[14370]: BlendFunc (offset 241) */ "ii\0" "glBlendFunc\0" "\0" - /* _mesa_function_pool[14289]: EndTransformFeedbackEXT (will be remapped) */ + /* _mesa_function_pool[14386]: EndTransformFeedbackEXT (will be remapped) */ "\0" "glEndTransformFeedbackEXT\0" "glEndTransformFeedback\0" "\0" - /* _mesa_function_pool[14340]: Uniform2fvARB (will be remapped) */ + /* _mesa_function_pool[14437]: Uniform2fvARB (will be remapped) */ "iip\0" "glUniform2fv\0" "glUniform2fvARB\0" "\0" - /* _mesa_function_pool[14374]: BufferParameteriAPPLE (will be remapped) */ + /* _mesa_function_pool[14471]: BufferParameteriAPPLE (will be remapped) */ "iii\0" "glBufferParameteriAPPLE\0" "\0" - /* _mesa_function_pool[14403]: MultiTexCoord3dvARB (offset 393) */ + /* _mesa_function_pool[14500]: MultiTexCoord3dvARB (offset 393) */ "ip\0" "glMultiTexCoord3dv\0" "glMultiTexCoord3dvARB\0" "\0" - /* _mesa_function_pool[14448]: ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[14545]: ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN (dynamic) */ "pppp\0" "glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[14504]: DeleteObjectARB (will be remapped) */ + /* _mesa_function_pool[14601]: DeleteObjectARB (will be remapped) */ "i\0" "glDeleteObjectARB\0" "\0" - /* _mesa_function_pool[14525]: GetShaderPrecisionFormat (will be remapped) */ + /* _mesa_function_pool[14622]: GetShaderPrecisionFormat (will be remapped) */ "iipp\0" "glGetShaderPrecisionFormat\0" "\0" - /* _mesa_function_pool[14558]: MatrixIndexPointerARB (dynamic) */ + /* _mesa_function_pool[14655]: MatrixIndexPointerARB (dynamic) */ "iiip\0" "glMatrixIndexPointerARB\0" "\0" - /* _mesa_function_pool[14588]: ProgramNamedParameter4dvNV (will be remapped) */ + /* _mesa_function_pool[14685]: ProgramNamedParameter4dvNV (will be remapped) */ "iipp\0" "glProgramNamedParameter4dvNV\0" "\0" - /* _mesa_function_pool[14623]: Tangent3fvEXT (dynamic) */ + /* _mesa_function_pool[14720]: Tangent3fvEXT (dynamic) */ "p\0" "glTangent3fvEXT\0" "\0" - /* _mesa_function_pool[14642]: Flush (offset 217) */ + /* _mesa_function_pool[14739]: Flush (offset 217) */ "\0" "glFlush\0" "\0" - /* _mesa_function_pool[14652]: Color4uiv (offset 38) */ + /* _mesa_function_pool[14749]: Color4uiv (offset 38) */ "p\0" "glColor4uiv\0" "\0" - /* _mesa_function_pool[14667]: VertexAttribI4iEXT (will be remapped) */ + /* _mesa_function_pool[14764]: VertexAttribI4iEXT (will be remapped) */ "iiiii\0" "glVertexAttribI4iEXT\0" "glVertexAttribI4i\0" "\0" - /* _mesa_function_pool[14713]: GenVertexArrays (will be remapped) */ + /* _mesa_function_pool[14810]: GenVertexArrays (will be remapped) */ "ip\0" "glGenVertexArrays\0" "\0" - /* _mesa_function_pool[14735]: Uniform3uivEXT (will be remapped) */ + /* _mesa_function_pool[14832]: Uniform3uivEXT (will be remapped) */ "iip\0" "glUniform3uivEXT\0" "glUniform3uiv\0" "\0" - /* _mesa_function_pool[14771]: RasterPos3sv (offset 77) */ + /* _mesa_function_pool[14868]: RasterPos3sv (offset 77) */ "p\0" "glRasterPos3sv\0" "\0" - /* _mesa_function_pool[14789]: BindFramebufferEXT (will be remapped) */ + /* _mesa_function_pool[14886]: BindFramebufferEXT (will be remapped) */ "ii\0" "glBindFramebuffer\0" "glBindFramebufferEXT\0" "\0" - /* _mesa_function_pool[14832]: ReferencePlaneSGIX (dynamic) */ + /* _mesa_function_pool[14929]: ReferencePlaneSGIX (dynamic) */ "p\0" "glReferencePlaneSGIX\0" "\0" - /* _mesa_function_pool[14856]: PushAttrib (offset 219) */ + /* _mesa_function_pool[14953]: PushAttrib (offset 219) */ "i\0" "glPushAttrib\0" "\0" - /* _mesa_function_pool[14872]: RasterPos2i (offset 66) */ + /* _mesa_function_pool[14969]: RasterPos2i (offset 66) */ "ii\0" "glRasterPos2i\0" "\0" - /* _mesa_function_pool[14890]: ValidateProgramARB (will be remapped) */ + /* _mesa_function_pool[14987]: ValidateProgramARB (will be remapped) */ "i\0" "glValidateProgram\0" "glValidateProgramARB\0" "\0" - /* _mesa_function_pool[14932]: TexParameteriv (offset 181) */ + /* _mesa_function_pool[15029]: TexParameteriv (offset 181) */ "iip\0" "glTexParameteriv\0" "\0" - /* _mesa_function_pool[14954]: UnlockArraysEXT (will be remapped) */ + /* _mesa_function_pool[15051]: UnlockArraysEXT (will be remapped) */ "\0" "glUnlockArraysEXT\0" "\0" - /* _mesa_function_pool[14974]: TexCoord2fColor3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[15071]: TexCoord2fColor3fVertex3fSUN (dynamic) */ "ffffffff\0" "glTexCoord2fColor3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[15015]: WindowPos3fvMESA (will be remapped) */ + /* _mesa_function_pool[15112]: WindowPos3fvMESA (will be remapped) */ "p\0" "glWindowPos3fv\0" "glWindowPos3fvARB\0" "glWindowPos3fvMESA\0" "\0" - /* _mesa_function_pool[15070]: RasterPos2f (offset 64) */ + /* _mesa_function_pool[15167]: RasterPos2f (offset 64) */ "ff\0" "glRasterPos2f\0" "\0" - /* _mesa_function_pool[15088]: VertexAttrib1svNV (will be remapped) */ + /* _mesa_function_pool[15185]: VertexAttrib1svNV (will be remapped) */ "ip\0" "glVertexAttrib1svNV\0" "\0" - /* _mesa_function_pool[15112]: RasterPos2d (offset 62) */ + /* _mesa_function_pool[15209]: RasterPos2d (offset 62) */ "dd\0" "glRasterPos2d\0" "\0" - /* _mesa_function_pool[15130]: RasterPos3fv (offset 73) */ + /* _mesa_function_pool[15227]: RasterPos3fv (offset 73) */ "p\0" "glRasterPos3fv\0" "\0" - /* _mesa_function_pool[15148]: CopyTexSubImage3D (offset 373) */ + /* _mesa_function_pool[15245]: CopyTexSubImage3D (offset 373) */ "iiiiiiiii\0" "glCopyTexSubImage3D\0" "glCopyTexSubImage3DEXT\0" "\0" - /* _mesa_function_pool[15202]: VertexAttrib2dARB (will be remapped) */ + /* _mesa_function_pool[15299]: VertexAttrib2dARB (will be remapped) */ "idd\0" "glVertexAttrib2d\0" "glVertexAttrib2dARB\0" "\0" - /* _mesa_function_pool[15244]: Color4ub (offset 35) */ + /* _mesa_function_pool[15341]: Color4ub (offset 35) */ "iiii\0" "glColor4ub\0" "\0" - /* _mesa_function_pool[15261]: GetInteger64v (will be remapped) */ + /* _mesa_function_pool[15358]: GetInteger64v (will be remapped) */ "ip\0" "glGetInteger64v\0" "\0" - /* _mesa_function_pool[15281]: TextureColorMaskSGIS (dynamic) */ + /* _mesa_function_pool[15378]: TextureColorMaskSGIS (dynamic) */ "iiii\0" "glTextureColorMaskSGIS\0" "\0" - /* _mesa_function_pool[15310]: RasterPos2s (offset 68) */ + /* _mesa_function_pool[15407]: RasterPos2s (offset 68) */ "ii\0" "glRasterPos2s\0" "\0" - /* _mesa_function_pool[15328]: GetColorTable (offset 343) */ + /* _mesa_function_pool[15425]: GetColorTable (offset 343) */ "iiip\0" "glGetColorTable\0" "glGetColorTableSGI\0" "glGetColorTableEXT\0" "\0" - /* _mesa_function_pool[15388]: SelectBuffer (offset 195) */ + /* _mesa_function_pool[15485]: SelectBuffer (offset 195) */ "ip\0" "glSelectBuffer\0" "\0" - /* _mesa_function_pool[15407]: Indexiv (offset 49) */ + /* _mesa_function_pool[15504]: Indexiv (offset 49) */ "p\0" "glIndexiv\0" "\0" - /* _mesa_function_pool[15420]: TexCoord3i (offset 114) */ + /* _mesa_function_pool[15517]: TexCoord3i (offset 114) */ "iii\0" "glTexCoord3i\0" "\0" - /* _mesa_function_pool[15438]: CopyColorTable (offset 342) */ + /* _mesa_function_pool[15535]: CopyColorTable (offset 342) */ "iiiii\0" "glCopyColorTable\0" "glCopyColorTableSGI\0" "\0" - /* _mesa_function_pool[15482]: GetHistogramParameterfv (offset 362) */ + /* _mesa_function_pool[15579]: GetHistogramParameterfv (offset 362) */ "iip\0" "glGetHistogramParameterfv\0" "glGetHistogramParameterfvEXT\0" "\0" - /* _mesa_function_pool[15542]: Frustum (offset 289) */ + /* _mesa_function_pool[15639]: Frustum (offset 289) */ "dddddd\0" "glFrustum\0" "\0" - /* _mesa_function_pool[15560]: GetString (offset 275) */ + /* _mesa_function_pool[15657]: GetString (offset 275) */ "i\0" "glGetString\0" "\0" - /* _mesa_function_pool[15575]: ColorPointervINTEL (dynamic) */ + /* _mesa_function_pool[15672]: ColorPointervINTEL (dynamic) */ "iip\0" "glColorPointervINTEL\0" "\0" - /* _mesa_function_pool[15601]: TexEnvf (offset 184) */ + /* _mesa_function_pool[15698]: TexEnvf (offset 184) */ "iif\0" "glTexEnvf\0" "\0" - /* _mesa_function_pool[15616]: TexCoord3d (offset 110) */ + /* _mesa_function_pool[15713]: TexCoord3d (offset 110) */ "ddd\0" "glTexCoord3d\0" "\0" - /* _mesa_function_pool[15634]: AlphaFragmentOp1ATI (will be remapped) */ + /* _mesa_function_pool[15731]: AlphaFragmentOp1ATI (will be remapped) */ "iiiiii\0" "glAlphaFragmentOp1ATI\0" "\0" - /* _mesa_function_pool[15664]: TexCoord3f (offset 112) */ + /* _mesa_function_pool[15761]: TexCoord3f (offset 112) */ "fff\0" "glTexCoord3f\0" "\0" - /* _mesa_function_pool[15682]: MultiTexCoord3ivARB (offset 397) */ + /* _mesa_function_pool[15779]: MultiTexCoord3ivARB (offset 397) */ "ip\0" "glMultiTexCoord3iv\0" "glMultiTexCoord3ivARB\0" "\0" - /* _mesa_function_pool[15727]: MultiTexCoord2sARB (offset 390) */ + /* _mesa_function_pool[15824]: MultiTexCoord2sARB (offset 390) */ "iii\0" "glMultiTexCoord2s\0" "glMultiTexCoord2sARB\0" "\0" - /* _mesa_function_pool[15771]: VertexAttrib1dvARB (will be remapped) */ + /* _mesa_function_pool[15868]: VertexAttrib1dvARB (will be remapped) */ "ip\0" "glVertexAttrib1dv\0" "glVertexAttrib1dvARB\0" "\0" - /* _mesa_function_pool[15814]: DeleteTextures (offset 327) */ + /* _mesa_function_pool[15911]: DeleteTextures (offset 327) */ "ip\0" "glDeleteTextures\0" "glDeleteTexturesEXT\0" "\0" - /* _mesa_function_pool[15855]: TexCoordPointerEXT (will be remapped) */ + /* _mesa_function_pool[15952]: TexCoordPointerEXT (will be remapped) */ "iiiip\0" "glTexCoordPointerEXT\0" "\0" - /* _mesa_function_pool[15883]: TexSubImage4DSGIS (dynamic) */ + /* _mesa_function_pool[15980]: TexSubImage4DSGIS (dynamic) */ "iiiiiiiiiiiip\0" "glTexSubImage4DSGIS\0" "\0" - /* _mesa_function_pool[15918]: TexCoord3s (offset 116) */ + /* _mesa_function_pool[16015]: TexCoord3s (offset 116) */ "iii\0" "glTexCoord3s\0" "\0" - /* _mesa_function_pool[15936]: GetTexLevelParameteriv (offset 285) */ + /* _mesa_function_pool[16033]: GetTexLevelParameteriv (offset 285) */ "iiip\0" "glGetTexLevelParameteriv\0" "\0" - /* _mesa_function_pool[15967]: CombinerStageParameterfvNV (dynamic) */ + /* _mesa_function_pool[16064]: CombinerStageParameterfvNV (dynamic) */ "iip\0" "glCombinerStageParameterfvNV\0" "\0" - /* _mesa_function_pool[16001]: StopInstrumentsSGIX (dynamic) */ + /* _mesa_function_pool[16098]: StopInstrumentsSGIX (dynamic) */ "i\0" "glStopInstrumentsSGIX\0" "\0" - /* _mesa_function_pool[16026]: TexCoord4fColor4fNormal3fVertex4fSUN (dynamic) */ + /* _mesa_function_pool[16123]: TexCoord4fColor4fNormal3fVertex4fSUN (dynamic) */ "fffffffffffffff\0" "glTexCoord4fColor4fNormal3fVertex4fSUN\0" "\0" - /* _mesa_function_pool[16082]: ClearAccum (offset 204) */ + /* _mesa_function_pool[16179]: ClearAccum (offset 204) */ "ffff\0" "glClearAccum\0" "\0" - /* _mesa_function_pool[16101]: DeformSGIX (dynamic) */ + /* _mesa_function_pool[16198]: DeformSGIX (dynamic) */ "i\0" "glDeformSGIX\0" "\0" - /* _mesa_function_pool[16117]: GetVertexAttribfvARB (will be remapped) */ + /* _mesa_function_pool[16214]: GetVertexAttribfvARB (will be remapped) */ "iip\0" "glGetVertexAttribfv\0" "glGetVertexAttribfvARB\0" "\0" - /* _mesa_function_pool[16165]: SecondaryColor3ivEXT (will be remapped) */ + /* _mesa_function_pool[16262]: SecondaryColor3ivEXT (will be remapped) */ "p\0" "glSecondaryColor3iv\0" "glSecondaryColor3ivEXT\0" "\0" - /* _mesa_function_pool[16211]: TexCoord4iv (offset 123) */ + /* _mesa_function_pool[16308]: TexCoord4iv (offset 123) */ "p\0" "glTexCoord4iv\0" "\0" - /* _mesa_function_pool[16228]: VertexAttribI4uiEXT (will be remapped) */ + /* _mesa_function_pool[16325]: VertexAttribI4uiEXT (will be remapped) */ "iiiii\0" "glVertexAttribI4uiEXT\0" "glVertexAttribI4ui\0" "\0" - /* _mesa_function_pool[16276]: GetFragmentMaterialfvSGIX (dynamic) */ + /* _mesa_function_pool[16373]: GetFragmentMaterialfvSGIX (dynamic) */ "iip\0" "glGetFragmentMaterialfvSGIX\0" "\0" - /* _mesa_function_pool[16309]: UniformMatrix4x2fv (will be remapped) */ + /* _mesa_function_pool[16406]: UniformMatrix4x2fv (will be remapped) */ "iiip\0" "glUniformMatrix4x2fv\0" "\0" - /* _mesa_function_pool[16336]: GetDetailTexFuncSGIS (dynamic) */ + /* _mesa_function_pool[16433]: GetDetailTexFuncSGIS (dynamic) */ "ip\0" "glGetDetailTexFuncSGIS\0" "\0" - /* _mesa_function_pool[16363]: GetCombinerStageParameterfvNV (dynamic) */ + /* _mesa_function_pool[16460]: GetCombinerStageParameterfvNV (dynamic) */ "iip\0" "glGetCombinerStageParameterfvNV\0" "\0" - /* _mesa_function_pool[16400]: PolygonOffset (offset 319) */ + /* _mesa_function_pool[16497]: SamplerParameterIiv (will be remapped) */ + "iip\0" + "glSamplerParameterIiv\0" + "\0" + /* _mesa_function_pool[16524]: PolygonOffset (offset 319) */ "ff\0" "glPolygonOffset\0" "\0" - /* _mesa_function_pool[16420]: BindVertexArray (will be remapped) */ + /* _mesa_function_pool[16544]: BindVertexArray (will be remapped) */ "i\0" "glBindVertexArray\0" "\0" - /* _mesa_function_pool[16441]: Color4ubVertex2fvSUN (dynamic) */ + /* _mesa_function_pool[16565]: Color4ubVertex2fvSUN (dynamic) */ "pp\0" "glColor4ubVertex2fvSUN\0" "\0" - /* _mesa_function_pool[16468]: Rectd (offset 86) */ + /* _mesa_function_pool[16592]: Rectd (offset 86) */ "dddd\0" "glRectd\0" "\0" - /* _mesa_function_pool[16482]: TexFilterFuncSGIS (dynamic) */ + /* _mesa_function_pool[16606]: TexFilterFuncSGIS (dynamic) */ "iiip\0" "glTexFilterFuncSGIS\0" "\0" - /* _mesa_function_pool[16508]: TextureBarrierNV (will be remapped) */ + /* _mesa_function_pool[16632]: TextureBarrierNV (will be remapped) */ "\0" "glTextureBarrierNV\0" "\0" - /* _mesa_function_pool[16529]: VertexAttribI4ubvEXT (will be remapped) */ + /* _mesa_function_pool[16653]: SamplerParameterfv (will be remapped) */ + "iip\0" + "glSamplerParameterfv\0" + "\0" + /* _mesa_function_pool[16679]: VertexAttribI4ubvEXT (will be remapped) */ "ip\0" "glVertexAttribI4ubvEXT\0" "glVertexAttribI4ubv\0" "\0" - /* _mesa_function_pool[16576]: GetAttribLocationARB (will be remapped) */ + /* _mesa_function_pool[16726]: GetAttribLocationARB (will be remapped) */ "ip\0" "glGetAttribLocation\0" "glGetAttribLocationARB\0" "\0" - /* _mesa_function_pool[16623]: RasterPos3i (offset 74) */ + /* _mesa_function_pool[16773]: RasterPos3i (offset 74) */ "iii\0" "glRasterPos3i\0" "\0" - /* _mesa_function_pool[16642]: BlendEquationSeparateiARB (will be remapped) */ + /* _mesa_function_pool[16792]: BlendEquationSeparateiARB (will be remapped) */ "iii\0" "glBlendEquationSeparateiARB\0" "\0" - /* _mesa_function_pool[16675]: VertexAttrib4ubvARB (will be remapped) */ + /* _mesa_function_pool[16825]: VertexAttrib4ubvARB (will be remapped) */ "ip\0" "glVertexAttrib4ubv\0" "glVertexAttrib4ubvARB\0" "\0" - /* _mesa_function_pool[16720]: DetailTexFuncSGIS (dynamic) */ + /* _mesa_function_pool[16870]: DetailTexFuncSGIS (dynamic) */ "iip\0" "glDetailTexFuncSGIS\0" "\0" - /* _mesa_function_pool[16745]: Normal3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[16895]: Normal3fVertex3fSUN (dynamic) */ "ffffff\0" "glNormal3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[16775]: CopyTexImage2D (offset 324) */ + /* _mesa_function_pool[16925]: CopyTexImage2D (offset 324) */ "iiiiiiii\0" "glCopyTexImage2D\0" "glCopyTexImage2DEXT\0" "\0" - /* _mesa_function_pool[16822]: GetBufferPointervARB (will be remapped) */ + /* _mesa_function_pool[16972]: GetBufferPointervARB (will be remapped) */ "iip\0" "glGetBufferPointerv\0" "glGetBufferPointervARB\0" "\0" - /* _mesa_function_pool[16870]: ProgramEnvParameter4fARB (will be remapped) */ + /* _mesa_function_pool[17020]: ProgramEnvParameter4fARB (will be remapped) */ "iiffff\0" "glProgramEnvParameter4fARB\0" "glProgramParameter4fNV\0" "\0" - /* _mesa_function_pool[16928]: Uniform3ivARB (will be remapped) */ + /* _mesa_function_pool[17078]: Uniform3ivARB (will be remapped) */ "iip\0" "glUniform3iv\0" "glUniform3ivARB\0" "\0" - /* _mesa_function_pool[16962]: Lightfv (offset 160) */ + /* _mesa_function_pool[17112]: Lightfv (offset 160) */ "iip\0" "glLightfv\0" "\0" - /* _mesa_function_pool[16977]: PrimitiveRestartIndexNV (will be remapped) */ + /* _mesa_function_pool[17127]: PrimitiveRestartIndexNV (will be remapped) */ "i\0" "glPrimitiveRestartIndexNV\0" "glPrimitiveRestartIndex\0" "\0" - /* _mesa_function_pool[17030]: ClearDepth (offset 208) */ + /* _mesa_function_pool[17180]: ClearDepth (offset 208) */ "d\0" "glClearDepth\0" "\0" - /* _mesa_function_pool[17046]: GetFenceivNV (will be remapped) */ + /* _mesa_function_pool[17196]: GetFenceivNV (will be remapped) */ "iip\0" "glGetFenceivNV\0" "\0" - /* _mesa_function_pool[17066]: WindowPos4dvMESA (will be remapped) */ + /* _mesa_function_pool[17216]: WindowPos4dvMESA (will be remapped) */ "p\0" "glWindowPos4dvMESA\0" "\0" - /* _mesa_function_pool[17088]: ColorSubTable (offset 346) */ + /* _mesa_function_pool[17238]: ColorSubTable (offset 346) */ "iiiiip\0" "glColorSubTable\0" "glColorSubTableEXT\0" "\0" - /* _mesa_function_pool[17131]: Color4fv (offset 30) */ + /* _mesa_function_pool[17281]: Color4fv (offset 30) */ "p\0" "glColor4fv\0" "\0" - /* _mesa_function_pool[17145]: MultiTexCoord4ivARB (offset 405) */ + /* _mesa_function_pool[17295]: MultiTexCoord4ivARB (offset 405) */ "ip\0" "glMultiTexCoord4iv\0" "glMultiTexCoord4ivARB\0" "\0" - /* _mesa_function_pool[17190]: ProgramLocalParameters4fvEXT (will be remapped) */ + /* _mesa_function_pool[17340]: ProgramLocalParameters4fvEXT (will be remapped) */ "iiip\0" "glProgramLocalParameters4fvEXT\0" "\0" - /* _mesa_function_pool[17227]: ColorPointer (offset 308) */ + /* _mesa_function_pool[17377]: ColorPointer (offset 308) */ "iiip\0" "glColorPointer\0" "\0" - /* _mesa_function_pool[17248]: Rects (offset 92) */ + /* _mesa_function_pool[17398]: Rects (offset 92) */ "iiii\0" "glRects\0" "\0" - /* _mesa_function_pool[17262]: GetMapAttribParameterfvNV (dynamic) */ + /* _mesa_function_pool[17412]: GetMapAttribParameterfvNV (dynamic) */ "iiip\0" "glGetMapAttribParameterfvNV\0" "\0" - /* _mesa_function_pool[17296]: CreateShaderProgramEXT (will be remapped) */ + /* _mesa_function_pool[17446]: CreateShaderProgramEXT (will be remapped) */ "ip\0" "glCreateShaderProgramEXT\0" "\0" - /* _mesa_function_pool[17325]: ActiveProgramEXT (will be remapped) */ + /* _mesa_function_pool[17475]: ActiveProgramEXT (will be remapped) */ "i\0" "glActiveProgramEXT\0" "\0" - /* _mesa_function_pool[17347]: Lightiv (offset 162) */ + /* _mesa_function_pool[17497]: Lightiv (offset 162) */ "iip\0" "glLightiv\0" "\0" - /* _mesa_function_pool[17362]: VertexAttrib4sARB (will be remapped) */ + /* _mesa_function_pool[17512]: VertexAttrib4sARB (will be remapped) */ "iiiii\0" "glVertexAttrib4s\0" "glVertexAttrib4sARB\0" "\0" - /* _mesa_function_pool[17406]: GetQueryObjectuivARB (will be remapped) */ + /* _mesa_function_pool[17556]: GetQueryObjectuivARB (will be remapped) */ "iip\0" "glGetQueryObjectuiv\0" "glGetQueryObjectuivARB\0" "\0" - /* _mesa_function_pool[17454]: GetTexParameteriv (offset 283) */ + /* _mesa_function_pool[17604]: GetTexParameteriv (offset 283) */ "iip\0" "glGetTexParameteriv\0" "\0" - /* _mesa_function_pool[17479]: MapParameterivNV (dynamic) */ + /* _mesa_function_pool[17629]: MapParameterivNV (dynamic) */ "iip\0" "glMapParameterivNV\0" "\0" - /* _mesa_function_pool[17503]: GenRenderbuffersEXT (will be remapped) */ + /* _mesa_function_pool[17653]: GenRenderbuffersEXT (will be remapped) */ "ip\0" "glGenRenderbuffers\0" "glGenRenderbuffersEXT\0" "\0" - /* _mesa_function_pool[17548]: ClearBufferfv (will be remapped) */ + /* _mesa_function_pool[17698]: ClearBufferfv (will be remapped) */ "iip\0" "glClearBufferfv\0" "\0" - /* _mesa_function_pool[17569]: VertexAttrib2dvARB (will be remapped) */ + /* _mesa_function_pool[17719]: VertexAttrib2dvARB (will be remapped) */ "ip\0" "glVertexAttrib2dv\0" "glVertexAttrib2dvARB\0" "\0" - /* _mesa_function_pool[17612]: EdgeFlagPointerEXT (will be remapped) */ + /* _mesa_function_pool[17762]: EdgeFlagPointerEXT (will be remapped) */ "iip\0" "glEdgeFlagPointerEXT\0" "\0" - /* _mesa_function_pool[17638]: VertexAttribs2svNV (will be remapped) */ + /* _mesa_function_pool[17788]: VertexAttribs2svNV (will be remapped) */ "iip\0" "glVertexAttribs2svNV\0" "\0" - /* _mesa_function_pool[17664]: WeightbvARB (dynamic) */ + /* _mesa_function_pool[17814]: WeightbvARB (dynamic) */ "ip\0" "glWeightbvARB\0" "\0" - /* _mesa_function_pool[17682]: VertexAttrib2fvARB (will be remapped) */ + /* _mesa_function_pool[17832]: VertexAttrib2fvARB (will be remapped) */ "ip\0" "glVertexAttrib2fv\0" "glVertexAttrib2fvARB\0" "\0" - /* _mesa_function_pool[17725]: GetBufferParameterivARB (will be remapped) */ + /* _mesa_function_pool[17875]: GetBufferParameterivARB (will be remapped) */ "iip\0" "glGetBufferParameteriv\0" "glGetBufferParameterivARB\0" "\0" - /* _mesa_function_pool[17779]: Rectdv (offset 87) */ + /* _mesa_function_pool[17929]: Rectdv (offset 87) */ "pp\0" "glRectdv\0" "\0" - /* _mesa_function_pool[17792]: ListParameteriSGIX (dynamic) */ + /* _mesa_function_pool[17942]: ListParameteriSGIX (dynamic) */ "iii\0" "glListParameteriSGIX\0" "\0" - /* _mesa_function_pool[17818]: BlendEquationiARB (will be remapped) */ + /* _mesa_function_pool[17968]: BlendEquationiARB (will be remapped) */ "ii\0" "glBlendEquationiARB\0" "\0" - /* _mesa_function_pool[17842]: ReplacementCodeuiColor4fNormal3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[17992]: ReplacementCodeuiColor4fNormal3fVertex3fSUN (dynamic) */ "iffffffffff\0" "glReplacementCodeuiColor4fNormal3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[17901]: InstrumentsBufferSGIX (dynamic) */ + /* _mesa_function_pool[18051]: InstrumentsBufferSGIX (dynamic) */ "ip\0" "glInstrumentsBufferSGIX\0" "\0" - /* _mesa_function_pool[17929]: VertexAttrib4NivARB (will be remapped) */ + /* _mesa_function_pool[18079]: VertexAttrib4NivARB (will be remapped) */ "ip\0" "glVertexAttrib4Niv\0" "glVertexAttrib4NivARB\0" "\0" - /* _mesa_function_pool[17974]: DrawArraysInstancedARB (will be remapped) */ + /* _mesa_function_pool[18124]: DrawArraysInstancedARB (will be remapped) */ "iiii\0" "glDrawArraysInstancedARB\0" "glDrawArraysInstancedEXT\0" "glDrawArraysInstanced\0" "\0" - /* _mesa_function_pool[18052]: GetAttachedShaders (will be remapped) */ + /* _mesa_function_pool[18202]: GetAttachedShaders (will be remapped) */ "iipp\0" "glGetAttachedShaders\0" "\0" - /* _mesa_function_pool[18079]: GenVertexArraysAPPLE (will be remapped) */ + /* _mesa_function_pool[18229]: GenVertexArraysAPPLE (will be remapped) */ "ip\0" "glGenVertexArraysAPPLE\0" "\0" - /* _mesa_function_pool[18106]: ClearBufferfi (will be remapped) */ + /* _mesa_function_pool[18256]: ClearBufferfi (will be remapped) */ "iifi\0" "glClearBufferfi\0" "\0" - /* _mesa_function_pool[18128]: Materialiv (offset 172) */ + /* _mesa_function_pool[18278]: Materialiv (offset 172) */ "iip\0" "glMaterialiv\0" "\0" - /* _mesa_function_pool[18146]: PushClientAttrib (offset 335) */ + /* _mesa_function_pool[18296]: PushClientAttrib (offset 335) */ "i\0" "glPushClientAttrib\0" "\0" - /* _mesa_function_pool[18168]: ProgramEnvParameters4fvEXT (will be remapped) */ - "iiip\0" - "glProgramEnvParameters4fvEXT\0" + /* _mesa_function_pool[18318]: SamplerParameteriv (will be remapped) */ + "iip\0" + "glSamplerParameteriv\0" "\0" - /* _mesa_function_pool[18203]: TexCoord2fColor4fNormal3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[18344]: TexCoord2fColor4fNormal3fVertex3fvSUN (dynamic) */ "pppp\0" "glTexCoord2fColor4fNormal3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[18249]: WindowPos2iMESA (will be remapped) */ + /* _mesa_function_pool[18390]: WindowPos2iMESA (will be remapped) */ "ii\0" "glWindowPos2i\0" "glWindowPos2iARB\0" "glWindowPos2iMESA\0" "\0" - /* _mesa_function_pool[18302]: SampleMaskSGIS (will be remapped) */ + /* _mesa_function_pool[18443]: SampleMaskSGIS (will be remapped) */ "fi\0" "glSampleMaskSGIS\0" "glSampleMaskEXT\0" "\0" - /* _mesa_function_pool[18339]: SecondaryColor3fvEXT (will be remapped) */ + /* _mesa_function_pool[18480]: SecondaryColor3fvEXT (will be remapped) */ "p\0" "glSecondaryColor3fv\0" "glSecondaryColor3fvEXT\0" "\0" - /* _mesa_function_pool[18385]: PolygonMode (offset 174) */ + /* _mesa_function_pool[18526]: PolygonMode (offset 174) */ "ii\0" "glPolygonMode\0" "\0" - /* _mesa_function_pool[18403]: CompressedTexSubImage1DARB (will be remapped) */ + /* _mesa_function_pool[18544]: CompressedTexSubImage1DARB (will be remapped) */ "iiiiiip\0" "glCompressedTexSubImage1D\0" "glCompressedTexSubImage1DARB\0" "\0" - /* _mesa_function_pool[18467]: VertexAttribI1iEXT (will be remapped) */ + /* _mesa_function_pool[18608]: VertexAttribI1iEXT (will be remapped) */ "ii\0" "glVertexAttribI1iEXT\0" "glVertexAttribI1i\0" "\0" - /* _mesa_function_pool[18510]: GetVertexAttribivNV (will be remapped) */ + /* _mesa_function_pool[18651]: TexCoord2fNormal3fVertex3fSUN (dynamic) */ + "ffffffff\0" + "glTexCoord2fNormal3fVertex3fSUN\0" + "\0" + /* _mesa_function_pool[18693]: GetVertexAttribivNV (will be remapped) */ "iip\0" "glGetVertexAttribivNV\0" "\0" - /* _mesa_function_pool[18537]: GetProgramStringARB (will be remapped) */ + /* _mesa_function_pool[18720]: GetProgramStringARB (will be remapped) */ "iip\0" "glGetProgramStringARB\0" "\0" - /* _mesa_function_pool[18564]: VertexAttribIPointerEXT (will be remapped) */ + /* _mesa_function_pool[18747]: VertexAttribIPointerEXT (will be remapped) */ "iiiip\0" "glVertexAttribIPointerEXT\0" "glVertexAttribIPointer\0" "\0" - /* _mesa_function_pool[18620]: TexBumpParameterfvATI (will be remapped) */ + /* _mesa_function_pool[18803]: TexBumpParameterfvATI (will be remapped) */ "ip\0" "glTexBumpParameterfvATI\0" "\0" - /* _mesa_function_pool[18648]: CompileShaderARB (will be remapped) */ + /* _mesa_function_pool[18831]: Tangent3ivEXT (dynamic) */ + "p\0" + "glTangent3ivEXT\0" + "\0" + /* _mesa_function_pool[18850]: CompileShaderARB (will be remapped) */ "i\0" "glCompileShader\0" "glCompileShaderARB\0" "\0" - /* _mesa_function_pool[18686]: DeleteShader (will be remapped) */ + /* _mesa_function_pool[18888]: DeleteShader (will be remapped) */ "i\0" "glDeleteShader\0" "\0" - /* _mesa_function_pool[18704]: DisableClientState (offset 309) */ + /* _mesa_function_pool[18906]: DisableClientState (offset 309) */ "i\0" "glDisableClientState\0" "\0" - /* _mesa_function_pool[18728]: TexGeni (offset 192) */ + /* _mesa_function_pool[18930]: TexGeni (offset 192) */ "iii\0" "glTexGeni\0" "\0" - /* _mesa_function_pool[18743]: TexGenf (offset 190) */ + /* _mesa_function_pool[18945]: TexGenf (offset 190) */ "iif\0" "glTexGenf\0" "\0" - /* _mesa_function_pool[18758]: Uniform3fARB (will be remapped) */ + /* _mesa_function_pool[18960]: Uniform3fARB (will be remapped) */ "ifff\0" "glUniform3f\0" "glUniform3fARB\0" "\0" - /* _mesa_function_pool[18791]: TexGend (offset 188) */ + /* _mesa_function_pool[18993]: TexGend (offset 188) */ "iid\0" "glTexGend\0" "\0" - /* _mesa_function_pool[18806]: ListParameterfvSGIX (dynamic) */ + /* _mesa_function_pool[19008]: ListParameterfvSGIX (dynamic) */ "iip\0" "glListParameterfvSGIX\0" "\0" - /* _mesa_function_pool[18833]: GetPolygonStipple (offset 274) */ + /* _mesa_function_pool[19035]: GetPolygonStipple (offset 274) */ "p\0" "glGetPolygonStipple\0" "\0" - /* _mesa_function_pool[18856]: Tangent3dvEXT (dynamic) */ + /* _mesa_function_pool[19058]: Tangent3dvEXT (dynamic) */ "p\0" "glTangent3dvEXT\0" "\0" - /* _mesa_function_pool[18875]: BindBufferOffsetEXT (will be remapped) */ + /* _mesa_function_pool[19077]: BindBufferOffsetEXT (will be remapped) */ "iiii\0" "glBindBufferOffsetEXT\0" "\0" - /* _mesa_function_pool[18903]: WindowPos3sMESA (will be remapped) */ + /* _mesa_function_pool[19105]: WindowPos3sMESA (will be remapped) */ "iii\0" "glWindowPos3s\0" "glWindowPos3sARB\0" "glWindowPos3sMESA\0" "\0" - /* _mesa_function_pool[18957]: VertexAttrib2svNV (will be remapped) */ + /* _mesa_function_pool[19159]: VertexAttrib2svNV (will be remapped) */ "ip\0" "glVertexAttrib2svNV\0" "\0" - /* _mesa_function_pool[18981]: DisableIndexedEXT (will be remapped) */ + /* _mesa_function_pool[19183]: DisableIndexedEXT (will be remapped) */ "ii\0" "glDisableIndexedEXT\0" "glDisablei\0" "\0" - /* _mesa_function_pool[19016]: BindBufferBaseEXT (will be remapped) */ + /* _mesa_function_pool[19218]: BindBufferBaseEXT (will be remapped) */ "iii\0" "glBindBufferBaseEXT\0" "glBindBufferBase\0" "\0" - /* _mesa_function_pool[19058]: TexCoord2fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[19260]: TexCoord2fVertex3fvSUN (dynamic) */ "pp\0" "glTexCoord2fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[19087]: WindowPos4sMESA (will be remapped) */ + /* _mesa_function_pool[19289]: WindowPos4sMESA (will be remapped) */ "iiii\0" "glWindowPos4sMESA\0" "\0" - /* _mesa_function_pool[19111]: VertexAttrib4NuivARB (will be remapped) */ + /* _mesa_function_pool[19313]: VertexAttrib4NuivARB (will be remapped) */ "ip\0" "glVertexAttrib4Nuiv\0" "glVertexAttrib4NuivARB\0" "\0" - /* _mesa_function_pool[19158]: ClientActiveTextureARB (offset 375) */ + /* _mesa_function_pool[19360]: ClientActiveTextureARB (offset 375) */ "i\0" "glClientActiveTexture\0" "glClientActiveTextureARB\0" "\0" - /* _mesa_function_pool[19208]: PixelTexGenSGIX (will be remapped) */ - "i\0" - "glPixelTexGenSGIX\0" + /* _mesa_function_pool[19410]: GetSamplerParameterIuiv (will be remapped) */ + "iip\0" + "glGetSamplerParameterIuiv\0" "\0" - /* _mesa_function_pool[19229]: ReplacementCodeusvSUN (dynamic) */ + /* _mesa_function_pool[19441]: ReplacementCodeusvSUN (dynamic) */ "p\0" "glReplacementCodeusvSUN\0" "\0" - /* _mesa_function_pool[19256]: Uniform4fARB (will be remapped) */ + /* _mesa_function_pool[19468]: Uniform4fARB (will be remapped) */ "iffff\0" "glUniform4f\0" "glUniform4fARB\0" "\0" - /* _mesa_function_pool[19290]: Color4sv (offset 34) */ + /* _mesa_function_pool[19502]: Color4sv (offset 34) */ "p\0" "glColor4sv\0" "\0" - /* _mesa_function_pool[19304]: FlushMappedBufferRange (will be remapped) */ + /* _mesa_function_pool[19516]: FlushMappedBufferRange (will be remapped) */ "iii\0" "glFlushMappedBufferRange\0" "\0" - /* _mesa_function_pool[19334]: IsProgramNV (will be remapped) */ + /* _mesa_function_pool[19546]: IsProgramNV (will be remapped) */ "i\0" "glIsProgramARB\0" "glIsProgramNV\0" "\0" - /* _mesa_function_pool[19366]: FlushMappedBufferRangeAPPLE (will be remapped) */ + /* _mesa_function_pool[19578]: FlushMappedBufferRangeAPPLE (will be remapped) */ "iii\0" "glFlushMappedBufferRangeAPPLE\0" "\0" - /* _mesa_function_pool[19401]: PixelZoom (offset 246) */ + /* _mesa_function_pool[19613]: PixelZoom (offset 246) */ "ff\0" "glPixelZoom\0" "\0" - /* _mesa_function_pool[19417]: ReplacementCodePointerSUN (dynamic) */ + /* _mesa_function_pool[19629]: ReplacementCodePointerSUN (dynamic) */ "iip\0" "glReplacementCodePointerSUN\0" "\0" - /* _mesa_function_pool[19450]: ProgramEnvParameter4dARB (will be remapped) */ + /* _mesa_function_pool[19662]: ProgramEnvParameter4dARB (will be remapped) */ "iidddd\0" "glProgramEnvParameter4dARB\0" "glProgramParameter4dNV\0" "\0" - /* _mesa_function_pool[19508]: ColorTableParameterfv (offset 340) */ + /* _mesa_function_pool[19720]: ColorTableParameterfv (offset 340) */ "iip\0" "glColorTableParameterfv\0" "glColorTableParameterfvSGI\0" "\0" - /* _mesa_function_pool[19564]: FragmentLightModelfSGIX (dynamic) */ + /* _mesa_function_pool[19776]: FragmentLightModelfSGIX (dynamic) */ "if\0" "glFragmentLightModelfSGIX\0" "\0" - /* _mesa_function_pool[19594]: Binormal3bvEXT (dynamic) */ + /* _mesa_function_pool[19806]: Binormal3bvEXT (dynamic) */ "p\0" "glBinormal3bvEXT\0" "\0" - /* _mesa_function_pool[19614]: PixelMapuiv (offset 252) */ + /* _mesa_function_pool[19826]: PixelMapuiv (offset 252) */ "iip\0" "glPixelMapuiv\0" "\0" - /* _mesa_function_pool[19633]: Color3dv (offset 12) */ + /* _mesa_function_pool[19845]: Color3dv (offset 12) */ "p\0" "glColor3dv\0" "\0" - /* _mesa_function_pool[19647]: IsTexture (offset 330) */ + /* _mesa_function_pool[19859]: IsTexture (offset 330) */ "i\0" "glIsTexture\0" "glIsTextureEXT\0" "\0" - /* _mesa_function_pool[19677]: VertexWeightfvEXT (dynamic) */ + /* _mesa_function_pool[19889]: GenSamplers (will be remapped) */ + "ip\0" + "glGenSamplers\0" + "\0" + /* _mesa_function_pool[19907]: VertexWeightfvEXT (dynamic) */ "p\0" "glVertexWeightfvEXT\0" "\0" - /* _mesa_function_pool[19700]: VertexAttrib1dARB (will be remapped) */ + /* _mesa_function_pool[19930]: VertexAttrib1dARB (will be remapped) */ "id\0" "glVertexAttrib1d\0" "glVertexAttrib1dARB\0" "\0" - /* _mesa_function_pool[19741]: ImageTransformParameterivHP (dynamic) */ + /* _mesa_function_pool[19971]: ImageTransformParameterivHP (dynamic) */ "iip\0" "glImageTransformParameterivHP\0" "\0" - /* _mesa_function_pool[19776]: TexCoord4i (offset 122) */ + /* _mesa_function_pool[20006]: TexCoord4i (offset 122) */ "iiii\0" "glTexCoord4i\0" "\0" - /* _mesa_function_pool[19795]: DeleteQueriesARB (will be remapped) */ + /* _mesa_function_pool[20025]: DeleteQueriesARB (will be remapped) */ "ip\0" "glDeleteQueries\0" "glDeleteQueriesARB\0" "\0" - /* _mesa_function_pool[19834]: Color4ubVertex2fSUN (dynamic) */ + /* _mesa_function_pool[20064]: Color4ubVertex2fSUN (dynamic) */ "iiiiff\0" "glColor4ubVertex2fSUN\0" "\0" - /* _mesa_function_pool[19864]: FragmentColorMaterialSGIX (dynamic) */ + /* _mesa_function_pool[20094]: FragmentColorMaterialSGIX (dynamic) */ "ii\0" "glFragmentColorMaterialSGIX\0" "\0" - /* _mesa_function_pool[19896]: CurrentPaletteMatrixARB (dynamic) */ + /* _mesa_function_pool[20126]: CurrentPaletteMatrixARB (dynamic) */ "i\0" "glCurrentPaletteMatrixARB\0" "\0" - /* _mesa_function_pool[19925]: GetMapdv (offset 266) */ + /* _mesa_function_pool[20155]: GetMapdv (offset 266) */ "iip\0" "glGetMapdv\0" "\0" - /* _mesa_function_pool[19941]: ObjectPurgeableAPPLE (will be remapped) */ + /* _mesa_function_pool[20171]: ObjectPurgeableAPPLE (will be remapped) */ "iii\0" "glObjectPurgeableAPPLE\0" "\0" - /* _mesa_function_pool[19969]: GetStringi (will be remapped) */ + /* _mesa_function_pool[20199]: GetStringi (will be remapped) */ "ii\0" "glGetStringi\0" "\0" - /* _mesa_function_pool[19986]: SamplePatternSGIS (will be remapped) */ + /* _mesa_function_pool[20216]: SamplePatternSGIS (will be remapped) */ "i\0" "glSamplePatternSGIS\0" "glSamplePatternEXT\0" "\0" - /* _mesa_function_pool[20028]: PixelStoref (offset 249) */ + /* _mesa_function_pool[20258]: PixelStoref (offset 249) */ "if\0" "glPixelStoref\0" "\0" - /* _mesa_function_pool[20046]: IsQueryARB (will be remapped) */ + /* _mesa_function_pool[20276]: IsQueryARB (will be remapped) */ "i\0" "glIsQuery\0" "glIsQueryARB\0" "\0" - /* _mesa_function_pool[20072]: ReplacementCodeuiColor4ubVertex3fSUN (dynamic) */ + /* _mesa_function_pool[20302]: ReplacementCodeuiColor4ubVertex3fSUN (dynamic) */ "iiiiifff\0" "glReplacementCodeuiColor4ubVertex3fSUN\0" "\0" - /* _mesa_function_pool[20121]: PixelStorei (offset 250) */ + /* _mesa_function_pool[20351]: PixelStorei (offset 250) */ "ii\0" "glPixelStorei\0" "\0" - /* _mesa_function_pool[20139]: VertexAttrib4usvARB (will be remapped) */ + /* _mesa_function_pool[20369]: VertexAttrib4usvARB (will be remapped) */ "ip\0" "glVertexAttrib4usv\0" "glVertexAttrib4usvARB\0" "\0" - /* _mesa_function_pool[20184]: LinkProgramARB (will be remapped) */ + /* _mesa_function_pool[20414]: LinkProgramARB (will be remapped) */ "i\0" "glLinkProgram\0" "glLinkProgramARB\0" "\0" - /* _mesa_function_pool[20218]: VertexAttrib2fNV (will be remapped) */ + /* _mesa_function_pool[20448]: VertexAttrib2fNV (will be remapped) */ "iff\0" "glVertexAttrib2fNV\0" "\0" - /* _mesa_function_pool[20242]: ShaderSourceARB (will be remapped) */ + /* _mesa_function_pool[20472]: ShaderSourceARB (will be remapped) */ "iipp\0" "glShaderSource\0" "glShaderSourceARB\0" "\0" - /* _mesa_function_pool[20281]: FragmentMaterialiSGIX (dynamic) */ + /* _mesa_function_pool[20511]: FragmentMaterialiSGIX (dynamic) */ "iii\0" "glFragmentMaterialiSGIX\0" "\0" - /* _mesa_function_pool[20310]: EvalCoord2dv (offset 233) */ + /* _mesa_function_pool[20540]: EvalCoord2dv (offset 233) */ "p\0" "glEvalCoord2dv\0" "\0" - /* _mesa_function_pool[20328]: VertexAttrib3svARB (will be remapped) */ + /* _mesa_function_pool[20558]: VertexAttrib3svARB (will be remapped) */ "ip\0" "glVertexAttrib3sv\0" "glVertexAttrib3svARB\0" "\0" - /* _mesa_function_pool[20371]: ColorMaterial (offset 151) */ + /* _mesa_function_pool[20601]: ColorMaterial (offset 151) */ "ii\0" "glColorMaterial\0" "\0" - /* _mesa_function_pool[20391]: CompressedTexSubImage3DARB (will be remapped) */ + /* _mesa_function_pool[20621]: CompressedTexSubImage3DARB (will be remapped) */ "iiiiiiiiiip\0" "glCompressedTexSubImage3D\0" "glCompressedTexSubImage3DARB\0" "\0" - /* _mesa_function_pool[20459]: WindowPos2ivMESA (will be remapped) */ + /* _mesa_function_pool[20689]: WindowPos2ivMESA (will be remapped) */ "p\0" "glWindowPos2iv\0" "glWindowPos2ivARB\0" "glWindowPos2ivMESA\0" "\0" - /* _mesa_function_pool[20514]: IsFramebufferEXT (will be remapped) */ + /* _mesa_function_pool[20744]: IsFramebufferEXT (will be remapped) */ "i\0" "glIsFramebuffer\0" "glIsFramebufferEXT\0" "\0" - /* _mesa_function_pool[20552]: Uniform4ivARB (will be remapped) */ + /* _mesa_function_pool[20782]: Uniform4ivARB (will be remapped) */ "iip\0" "glUniform4iv\0" "glUniform4ivARB\0" "\0" - /* _mesa_function_pool[20586]: GetVertexAttribdvARB (will be remapped) */ + /* _mesa_function_pool[20816]: GetVertexAttribdvARB (will be remapped) */ "iip\0" "glGetVertexAttribdv\0" "glGetVertexAttribdvARB\0" "\0" - /* _mesa_function_pool[20634]: TexBumpParameterivATI (will be remapped) */ + /* _mesa_function_pool[20864]: TexBumpParameterivATI (will be remapped) */ "ip\0" "glTexBumpParameterivATI\0" "\0" - /* _mesa_function_pool[20662]: GetSeparableFilter (offset 359) */ + /* _mesa_function_pool[20892]: GetSeparableFilter (offset 359) */ "iiippp\0" "glGetSeparableFilter\0" "glGetSeparableFilterEXT\0" "\0" - /* _mesa_function_pool[20715]: Binormal3dEXT (dynamic) */ + /* _mesa_function_pool[20945]: Binormal3dEXT (dynamic) */ "ddd\0" "glBinormal3dEXT\0" "\0" - /* _mesa_function_pool[20736]: SpriteParameteriSGIX (dynamic) */ + /* _mesa_function_pool[20966]: SpriteParameteriSGIX (dynamic) */ "ii\0" "glSpriteParameteriSGIX\0" "\0" - /* _mesa_function_pool[20763]: RequestResidentProgramsNV (will be remapped) */ + /* _mesa_function_pool[20993]: RequestResidentProgramsNV (will be remapped) */ "ip\0" "glRequestResidentProgramsNV\0" "\0" - /* _mesa_function_pool[20795]: TagSampleBufferSGIX (dynamic) */ + /* _mesa_function_pool[21025]: TagSampleBufferSGIX (dynamic) */ "\0" "glTagSampleBufferSGIX\0" "\0" - /* _mesa_function_pool[20819]: TransformFeedbackVaryingsEXT (will be remapped) */ + /* _mesa_function_pool[21049]: TransformFeedbackVaryingsEXT (will be remapped) */ "iipi\0" "glTransformFeedbackVaryingsEXT\0" "glTransformFeedbackVaryings\0" "\0" - /* _mesa_function_pool[20884]: FeedbackBuffer (offset 194) */ + /* _mesa_function_pool[21114]: FeedbackBuffer (offset 194) */ "iip\0" "glFeedbackBuffer\0" "\0" - /* _mesa_function_pool[20906]: RasterPos2iv (offset 67) */ + /* _mesa_function_pool[21136]: RasterPos2iv (offset 67) */ "p\0" "glRasterPos2iv\0" "\0" - /* _mesa_function_pool[20924]: TexImage1D (offset 182) */ + /* _mesa_function_pool[21154]: TexImage1D (offset 182) */ "iiiiiiip\0" "glTexImage1D\0" "\0" - /* _mesa_function_pool[20947]: ListParameterivSGIX (dynamic) */ + /* _mesa_function_pool[21177]: ListParameterivSGIX (dynamic) */ "iip\0" "glListParameterivSGIX\0" "\0" - /* _mesa_function_pool[20974]: MultiDrawElementsEXT (will be remapped) */ + /* _mesa_function_pool[21204]: MultiDrawElementsEXT (will be remapped) */ "ipipi\0" "glMultiDrawElements\0" "glMultiDrawElementsEXT\0" "\0" - /* _mesa_function_pool[21024]: Color3s (offset 17) */ + /* _mesa_function_pool[21254]: Color3s (offset 17) */ "iii\0" "glColor3s\0" "\0" - /* _mesa_function_pool[21039]: Uniform1ivARB (will be remapped) */ + /* _mesa_function_pool[21269]: Uniform1ivARB (will be remapped) */ "iip\0" "glUniform1iv\0" "glUniform1ivARB\0" "\0" - /* _mesa_function_pool[21073]: WindowPos2sMESA (will be remapped) */ + /* _mesa_function_pool[21303]: WindowPos2sMESA (will be remapped) */ "ii\0" "glWindowPos2s\0" "glWindowPos2sARB\0" "glWindowPos2sMESA\0" "\0" - /* _mesa_function_pool[21126]: WeightusvARB (dynamic) */ + /* _mesa_function_pool[21356]: WeightusvARB (dynamic) */ "ip\0" "glWeightusvARB\0" "\0" - /* _mesa_function_pool[21145]: TexCoordPointer (offset 320) */ + /* _mesa_function_pool[21375]: TexCoordPointer (offset 320) */ "iiip\0" "glTexCoordPointer\0" "\0" - /* _mesa_function_pool[21169]: FogCoordPointerEXT (will be remapped) */ + /* _mesa_function_pool[21399]: FogCoordPointerEXT (will be remapped) */ "iip\0" "glFogCoordPointer\0" "glFogCoordPointerEXT\0" "\0" - /* _mesa_function_pool[21213]: IndexMaterialEXT (dynamic) */ + /* _mesa_function_pool[21443]: IndexMaterialEXT (dynamic) */ "ii\0" "glIndexMaterialEXT\0" "\0" - /* _mesa_function_pool[21236]: Color3i (offset 15) */ + /* _mesa_function_pool[21466]: Color3i (offset 15) */ "iii\0" "glColor3i\0" "\0" - /* _mesa_function_pool[21251]: FrontFace (offset 157) */ + /* _mesa_function_pool[21481]: FrontFace (offset 157) */ "i\0" "glFrontFace\0" "\0" - /* _mesa_function_pool[21266]: EvalCoord2d (offset 232) */ + /* _mesa_function_pool[21496]: EvalCoord2d (offset 232) */ "dd\0" "glEvalCoord2d\0" "\0" - /* _mesa_function_pool[21284]: SecondaryColor3ubvEXT (will be remapped) */ + /* _mesa_function_pool[21514]: SecondaryColor3ubvEXT (will be remapped) */ "p\0" "glSecondaryColor3ubv\0" "glSecondaryColor3ubvEXT\0" "\0" - /* _mesa_function_pool[21332]: EvalCoord2f (offset 234) */ + /* _mesa_function_pool[21562]: EvalCoord2f (offset 234) */ "ff\0" "glEvalCoord2f\0" "\0" - /* _mesa_function_pool[21350]: VertexAttrib4dvARB (will be remapped) */ + /* _mesa_function_pool[21580]: VertexAttrib4dvARB (will be remapped) */ "ip\0" "glVertexAttrib4dv\0" "glVertexAttrib4dvARB\0" "\0" - /* _mesa_function_pool[21393]: BindAttribLocationARB (will be remapped) */ + /* _mesa_function_pool[21623]: BindAttribLocationARB (will be remapped) */ "iip\0" "glBindAttribLocation\0" "glBindAttribLocationARB\0" "\0" - /* _mesa_function_pool[21443]: Color3b (offset 9) */ + /* _mesa_function_pool[21673]: Color3b (offset 9) */ "iii\0" "glColor3b\0" "\0" - /* _mesa_function_pool[21458]: MultiTexCoord2dARB (offset 384) */ + /* _mesa_function_pool[21688]: MultiTexCoord2dARB (offset 384) */ "idd\0" "glMultiTexCoord2d\0" "glMultiTexCoord2dARB\0" "\0" - /* _mesa_function_pool[21502]: ExecuteProgramNV (will be remapped) */ + /* _mesa_function_pool[21732]: ExecuteProgramNV (will be remapped) */ "iip\0" "glExecuteProgramNV\0" "\0" - /* _mesa_function_pool[21526]: Color3f (offset 13) */ + /* _mesa_function_pool[21756]: Color3f (offset 13) */ "fff\0" "glColor3f\0" "\0" - /* _mesa_function_pool[21541]: LightEnviSGIX (dynamic) */ + /* _mesa_function_pool[21771]: LightEnviSGIX (dynamic) */ "ii\0" "glLightEnviSGIX\0" "\0" - /* _mesa_function_pool[21561]: Color3d (offset 11) */ + /* _mesa_function_pool[21791]: Color3d (offset 11) */ "ddd\0" "glColor3d\0" "\0" - /* _mesa_function_pool[21576]: Normal3dv (offset 55) */ + /* _mesa_function_pool[21806]: Normal3dv (offset 55) */ "p\0" "glNormal3dv\0" "\0" - /* _mesa_function_pool[21591]: Lightf (offset 159) */ + /* _mesa_function_pool[21821]: Lightf (offset 159) */ "iif\0" "glLightf\0" "\0" - /* _mesa_function_pool[21605]: ReplacementCodeuiSUN (dynamic) */ + /* _mesa_function_pool[21835]: ReplacementCodeuiSUN (dynamic) */ "i\0" "glReplacementCodeuiSUN\0" "\0" - /* _mesa_function_pool[21631]: MatrixMode (offset 293) */ + /* _mesa_function_pool[21861]: MatrixMode (offset 293) */ "i\0" "glMatrixMode\0" "\0" - /* _mesa_function_pool[21647]: GetPixelMapusv (offset 273) */ + /* _mesa_function_pool[21877]: GetPixelMapusv (offset 273) */ "ip\0" "glGetPixelMapusv\0" "\0" - /* _mesa_function_pool[21668]: Lighti (offset 161) */ + /* _mesa_function_pool[21898]: Lighti (offset 161) */ "iii\0" "glLighti\0" "\0" - /* _mesa_function_pool[21682]: VertexAttribPointerNV (will be remapped) */ + /* _mesa_function_pool[21912]: VertexAttribPointerNV (will be remapped) */ "iiiip\0" "glVertexAttribPointerNV\0" "\0" - /* _mesa_function_pool[21713]: ClearDepthf (will be remapped) */ + /* _mesa_function_pool[21943]: ClearDepthf (will be remapped) */ "f\0" "glClearDepthf\0" "\0" - /* _mesa_function_pool[21730]: GetBooleanIndexedvEXT (will be remapped) */ + /* _mesa_function_pool[21960]: GetBooleanIndexedvEXT (will be remapped) */ "iip\0" "glGetBooleanIndexedvEXT\0" "glGetBooleani_v\0" "\0" - /* _mesa_function_pool[21775]: GetFramebufferAttachmentParameterivEXT (will be remapped) */ + /* _mesa_function_pool[22005]: GetFramebufferAttachmentParameterivEXT (will be remapped) */ "iiip\0" "glGetFramebufferAttachmentParameteriv\0" "glGetFramebufferAttachmentParameterivEXT\0" "\0" - /* _mesa_function_pool[21860]: PixelTransformParameterfEXT (dynamic) */ + /* _mesa_function_pool[22090]: PixelTransformParameterfEXT (dynamic) */ "iif\0" "glPixelTransformParameterfEXT\0" "\0" - /* _mesa_function_pool[21895]: MultiTexCoord4dvARB (offset 401) */ + /* _mesa_function_pool[22125]: MultiTexCoord4dvARB (offset 401) */ "ip\0" "glMultiTexCoord4dv\0" "glMultiTexCoord4dvARB\0" "\0" - /* _mesa_function_pool[21940]: PixelTransformParameteriEXT (dynamic) */ + /* _mesa_function_pool[22170]: PixelTransformParameteriEXT (dynamic) */ "iii\0" "glPixelTransformParameteriEXT\0" "\0" - /* _mesa_function_pool[21975]: GetDoublev (offset 260) */ + /* _mesa_function_pool[22205]: GetDoublev (offset 260) */ "ip\0" "glGetDoublev\0" "\0" - /* _mesa_function_pool[21992]: MultMatrixd (offset 295) */ + /* _mesa_function_pool[22222]: MultMatrixd (offset 295) */ "p\0" "glMultMatrixd\0" "\0" - /* _mesa_function_pool[22009]: MultMatrixf (offset 294) */ + /* _mesa_function_pool[22239]: MultMatrixf (offset 294) */ "p\0" "glMultMatrixf\0" "\0" - /* _mesa_function_pool[22026]: VertexAttribI4bvEXT (will be remapped) */ + /* _mesa_function_pool[22256]: VertexAttribI4bvEXT (will be remapped) */ "ip\0" "glVertexAttribI4bvEXT\0" "glVertexAttribI4bv\0" "\0" - /* _mesa_function_pool[22071]: TexCoord2fColor4ubVertex3fSUN (dynamic) */ + /* _mesa_function_pool[22301]: TexCoord2fColor4ubVertex3fSUN (dynamic) */ "ffiiiifff\0" "glTexCoord2fColor4ubVertex3fSUN\0" "\0" - /* _mesa_function_pool[22114]: Uniform1iARB (will be remapped) */ + /* _mesa_function_pool[22344]: Uniform1iARB (will be remapped) */ "ii\0" "glUniform1i\0" "glUniform1iARB\0" "\0" - /* _mesa_function_pool[22145]: VertexAttribPointerARB (will be remapped) */ + /* _mesa_function_pool[22375]: VertexAttribPointerARB (will be remapped) */ "iiiiip\0" "glVertexAttribPointer\0" "glVertexAttribPointerARB\0" "\0" - /* _mesa_function_pool[22200]: VertexAttrib3sNV (will be remapped) */ + /* _mesa_function_pool[22430]: VertexAttrib3sNV (will be remapped) */ "iiii\0" "glVertexAttrib3sNV\0" "\0" - /* _mesa_function_pool[22225]: SharpenTexFuncSGIS (dynamic) */ + /* _mesa_function_pool[22455]: SharpenTexFuncSGIS (dynamic) */ "iip\0" "glSharpenTexFuncSGIS\0" "\0" - /* _mesa_function_pool[22251]: MultiTexCoord4fvARB (offset 403) */ + /* _mesa_function_pool[22481]: MultiTexCoord4fvARB (offset 403) */ "ip\0" "glMultiTexCoord4fv\0" "glMultiTexCoord4fvARB\0" "\0" - /* _mesa_function_pool[22296]: Uniform2uiEXT (will be remapped) */ + /* _mesa_function_pool[22526]: Uniform2uiEXT (will be remapped) */ "iii\0" "glUniform2uiEXT\0" "glUniform2ui\0" "\0" - /* _mesa_function_pool[22330]: UniformMatrix2x3fv (will be remapped) */ + /* _mesa_function_pool[22560]: UniformMatrix2x3fv (will be remapped) */ "iiip\0" "glUniformMatrix2x3fv\0" "\0" - /* _mesa_function_pool[22357]: TrackMatrixNV (will be remapped) */ - "iiii\0" - "glTrackMatrixNV\0" + /* _mesa_function_pool[22587]: SamplerParameteri (will be remapped) */ + "iii\0" + "glSamplerParameteri\0" "\0" - /* _mesa_function_pool[22379]: CombinerParameteriNV (will be remapped) */ + /* _mesa_function_pool[22612]: SamplerParameterf (will be remapped) */ + "iif\0" + "glSamplerParameterf\0" + "\0" + /* _mesa_function_pool[22637]: CombinerParameteriNV (will be remapped) */ "ii\0" "glCombinerParameteriNV\0" "\0" - /* _mesa_function_pool[22406]: DeleteAsyncMarkersSGIX (dynamic) */ + /* _mesa_function_pool[22664]: DeleteAsyncMarkersSGIX (dynamic) */ "ii\0" "glDeleteAsyncMarkersSGIX\0" "\0" - /* _mesa_function_pool[22435]: ReplacementCodeusSUN (dynamic) */ + /* _mesa_function_pool[22693]: ReplacementCodeusSUN (dynamic) */ "i\0" "glReplacementCodeusSUN\0" "\0" - /* _mesa_function_pool[22461]: IsAsyncMarkerSGIX (dynamic) */ + /* _mesa_function_pool[22719]: IsAsyncMarkerSGIX (dynamic) */ "i\0" "glIsAsyncMarkerSGIX\0" "\0" - /* _mesa_function_pool[22484]: FrameZoomSGIX (dynamic) */ + /* _mesa_function_pool[22742]: FrameZoomSGIX (dynamic) */ "i\0" "glFrameZoomSGIX\0" "\0" - /* _mesa_function_pool[22503]: Normal3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[22761]: Normal3fVertex3fvSUN (dynamic) */ "pp\0" "glNormal3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[22530]: RasterPos4sv (offset 85) */ + /* _mesa_function_pool[22788]: RasterPos4sv (offset 85) */ "p\0" "glRasterPos4sv\0" "\0" - /* _mesa_function_pool[22548]: VertexAttrib4NsvARB (will be remapped) */ + /* _mesa_function_pool[22806]: VertexAttrib4NsvARB (will be remapped) */ "ip\0" "glVertexAttrib4Nsv\0" "glVertexAttrib4NsvARB\0" "\0" - /* _mesa_function_pool[22593]: VertexAttrib3fvARB (will be remapped) */ + /* _mesa_function_pool[22851]: VertexAttrib3fvARB (will be remapped) */ "ip\0" "glVertexAttrib3fv\0" "glVertexAttrib3fvARB\0" "\0" - /* _mesa_function_pool[22636]: ClearColor (offset 206) */ + /* _mesa_function_pool[22894]: ClearColor (offset 206) */ "ffff\0" "glClearColor\0" "\0" - /* _mesa_function_pool[22655]: GetSynciv (will be remapped) */ + /* _mesa_function_pool[22913]: GetSynciv (will be remapped) */ "iiipp\0" "glGetSynciv\0" "\0" - /* _mesa_function_pool[22674]: ClearColorIiEXT (will be remapped) */ + /* _mesa_function_pool[22932]: ClearColorIiEXT (will be remapped) */ "iiii\0" "glClearColorIiEXT\0" "\0" - /* _mesa_function_pool[22698]: DeleteFramebuffersEXT (will be remapped) */ + /* _mesa_function_pool[22956]: DeleteFramebuffersEXT (will be remapped) */ "ip\0" "glDeleteFramebuffers\0" "glDeleteFramebuffersEXT\0" "\0" - /* _mesa_function_pool[22747]: GlobalAlphaFactorsSUN (dynamic) */ + /* _mesa_function_pool[23005]: GlobalAlphaFactorsSUN (dynamic) */ "i\0" "glGlobalAlphaFactorsSUN\0" "\0" - /* _mesa_function_pool[22774]: IsEnabledIndexedEXT (will be remapped) */ + /* _mesa_function_pool[23032]: IsEnabledIndexedEXT (will be remapped) */ "ii\0" "glIsEnabledIndexedEXT\0" "glIsEnabledi\0" "\0" - /* _mesa_function_pool[22813]: TexEnviv (offset 187) */ + /* _mesa_function_pool[23071]: TexEnviv (offset 187) */ "iip\0" "glTexEnviv\0" "\0" - /* _mesa_function_pool[22829]: TexSubImage3D (offset 372) */ + /* _mesa_function_pool[23087]: TexSubImage3D (offset 372) */ "iiiiiiiiiip\0" "glTexSubImage3D\0" "glTexSubImage3DEXT\0" "\0" - /* _mesa_function_pool[22877]: Tangent3fEXT (dynamic) */ + /* _mesa_function_pool[23135]: Tangent3fEXT (dynamic) */ "fff\0" "glTangent3fEXT\0" "\0" - /* _mesa_function_pool[22897]: SecondaryColor3uivEXT (will be remapped) */ + /* _mesa_function_pool[23155]: SecondaryColor3uivEXT (will be remapped) */ "p\0" "glSecondaryColor3uiv\0" "glSecondaryColor3uivEXT\0" "\0" - /* _mesa_function_pool[22945]: MatrixIndexubvARB (dynamic) */ + /* _mesa_function_pool[23203]: MatrixIndexubvARB (dynamic) */ "ip\0" "glMatrixIndexubvARB\0" "\0" - /* _mesa_function_pool[22969]: Color4fNormal3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[23227]: Color4fNormal3fVertex3fSUN (dynamic) */ "ffffffffff\0" "glColor4fNormal3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[23010]: PixelTexGenParameterfSGIS (will be remapped) */ + /* _mesa_function_pool[23268]: PixelTexGenParameterfSGIS (will be remapped) */ "if\0" "glPixelTexGenParameterfSGIS\0" "\0" - /* _mesa_function_pool[23042]: CreateShader (will be remapped) */ + /* _mesa_function_pool[23300]: CreateShader (will be remapped) */ "i\0" "glCreateShader\0" "\0" - /* _mesa_function_pool[23060]: GetColorTableParameterfv (offset 344) */ + /* _mesa_function_pool[23318]: GetColorTableParameterfv (offset 344) */ "iip\0" "glGetColorTableParameterfv\0" "glGetColorTableParameterfvSGI\0" "glGetColorTableParameterfvEXT\0" "\0" - /* _mesa_function_pool[23152]: FragmentLightModelfvSGIX (dynamic) */ + /* _mesa_function_pool[23410]: FragmentLightModelfvSGIX (dynamic) */ "ip\0" "glFragmentLightModelfvSGIX\0" "\0" - /* _mesa_function_pool[23183]: Bitmap (offset 8) */ + /* _mesa_function_pool[23441]: Bitmap (offset 8) */ "iiffffp\0" "glBitmap\0" "\0" - /* _mesa_function_pool[23201]: MultiTexCoord3fARB (offset 394) */ + /* _mesa_function_pool[23459]: MultiTexCoord3fARB (offset 394) */ "ifff\0" "glMultiTexCoord3f\0" "glMultiTexCoord3fARB\0" "\0" - /* _mesa_function_pool[23246]: GetTexLevelParameterfv (offset 284) */ + /* _mesa_function_pool[23504]: GetTexLevelParameterfv (offset 284) */ "iiip\0" "glGetTexLevelParameterfv\0" "\0" - /* _mesa_function_pool[23277]: GetPixelTexGenParameterfvSGIS (will be remapped) */ + /* _mesa_function_pool[23535]: GetPixelTexGenParameterfvSGIS (will be remapped) */ "ip\0" "glGetPixelTexGenParameterfvSGIS\0" "\0" - /* _mesa_function_pool[23313]: GenFramebuffersEXT (will be remapped) */ + /* _mesa_function_pool[23571]: GenFramebuffersEXT (will be remapped) */ "ip\0" "glGenFramebuffers\0" "glGenFramebuffersEXT\0" "\0" - /* _mesa_function_pool[23356]: VertexAttribDivisor (will be remapped) */ + /* _mesa_function_pool[23614]: VertexAttribDivisor (will be remapped) */ "ii\0" "glVertexAttribDivisor\0" "\0" - /* _mesa_function_pool[23382]: GetProgramParameterdvNV (will be remapped) */ + /* _mesa_function_pool[23640]: GetProgramParameterdvNV (will be remapped) */ "iiip\0" "glGetProgramParameterdvNV\0" "\0" - /* _mesa_function_pool[23414]: Vertex2sv (offset 133) */ + /* _mesa_function_pool[23672]: Vertex2sv (offset 133) */ "p\0" "glVertex2sv\0" "\0" - /* _mesa_function_pool[23429]: GetIntegerv (offset 263) */ + /* _mesa_function_pool[23687]: GetIntegerv (offset 263) */ "ip\0" "glGetIntegerv\0" "\0" - /* _mesa_function_pool[23447]: IsVertexArrayAPPLE (will be remapped) */ + /* _mesa_function_pool[23705]: IsVertexArrayAPPLE (will be remapped) */ "i\0" "glIsVertexArray\0" "glIsVertexArrayAPPLE\0" "\0" - /* _mesa_function_pool[23487]: FragmentLightfvSGIX (dynamic) */ + /* _mesa_function_pool[23745]: FragmentLightfvSGIX (dynamic) */ "iip\0" "glFragmentLightfvSGIX\0" "\0" - /* _mesa_function_pool[23514]: VertexAttribDivisorARB (will be remapped) */ + /* _mesa_function_pool[23772]: VertexAttribDivisorARB (will be remapped) */ "ii\0" "glVertexAttribDivisorARB\0" "\0" - /* _mesa_function_pool[23543]: DetachShader (will be remapped) */ + /* _mesa_function_pool[23801]: DetachShader (will be remapped) */ "ii\0" "glDetachShader\0" "\0" - /* _mesa_function_pool[23562]: VertexAttrib4NubARB (will be remapped) */ + /* _mesa_function_pool[23820]: VertexAttrib4NubARB (will be remapped) */ "iiiii\0" "glVertexAttrib4Nub\0" "glVertexAttrib4NubARB\0" "\0" - /* _mesa_function_pool[23610]: GetProgramEnvParameterfvARB (will be remapped) */ + /* _mesa_function_pool[23868]: GetProgramEnvParameterfvARB (will be remapped) */ "iip\0" "glGetProgramEnvParameterfvARB\0" "\0" - /* _mesa_function_pool[23645]: GetTrackMatrixivNV (will be remapped) */ + /* _mesa_function_pool[23903]: GetTrackMatrixivNV (will be remapped) */ "iiip\0" "glGetTrackMatrixivNV\0" "\0" - /* _mesa_function_pool[23672]: VertexAttrib3svNV (will be remapped) */ + /* _mesa_function_pool[23930]: VertexAttrib3svNV (will be remapped) */ "ip\0" "glVertexAttrib3svNV\0" "\0" - /* _mesa_function_pool[23696]: Uniform4fvARB (will be remapped) */ + /* _mesa_function_pool[23954]: Uniform4fvARB (will be remapped) */ "iip\0" "glUniform4fv\0" "glUniform4fvARB\0" "\0" - /* _mesa_function_pool[23730]: MultTransposeMatrixfARB (will be remapped) */ + /* _mesa_function_pool[23988]: MultTransposeMatrixfARB (will be remapped) */ "p\0" "glMultTransposeMatrixf\0" "glMultTransposeMatrixfARB\0" "\0" - /* _mesa_function_pool[23782]: GetTexEnviv (offset 277) */ + /* _mesa_function_pool[24040]: GetTexEnviv (offset 277) */ "iip\0" "glGetTexEnviv\0" "\0" - /* _mesa_function_pool[23801]: ColorFragmentOp1ATI (will be remapped) */ + /* _mesa_function_pool[24059]: ColorFragmentOp1ATI (will be remapped) */ "iiiiiii\0" "glColorFragmentOp1ATI\0" "\0" - /* _mesa_function_pool[23832]: GetUniformfvARB (will be remapped) */ + /* _mesa_function_pool[24090]: GetUniformfvARB (will be remapped) */ "iip\0" "glGetUniformfv\0" "glGetUniformfvARB\0" "\0" - /* _mesa_function_pool[23870]: EGLImageTargetRenderbufferStorageOES (will be remapped) */ + /* _mesa_function_pool[24128]: EGLImageTargetRenderbufferStorageOES (will be remapped) */ "ip\0" "glEGLImageTargetRenderbufferStorageOES\0" "\0" - /* _mesa_function_pool[23913]: VertexAttribI2ivEXT (will be remapped) */ + /* _mesa_function_pool[24171]: VertexAttribI2ivEXT (will be remapped) */ "ip\0" "glVertexAttribI2ivEXT\0" "glVertexAttribI2iv\0" "\0" - /* _mesa_function_pool[23958]: PopClientAttrib (offset 334) */ + /* _mesa_function_pool[24216]: PopClientAttrib (offset 334) */ "\0" "glPopClientAttrib\0" "\0" - /* _mesa_function_pool[23978]: ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[24236]: ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN (dynamic) */ "iffffffffffff\0" "glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[24049]: DetachObjectARB (will be remapped) */ + /* _mesa_function_pool[24307]: DetachObjectARB (will be remapped) */ "ii\0" "glDetachObjectARB\0" "\0" - /* _mesa_function_pool[24071]: VertexBlendARB (dynamic) */ + /* _mesa_function_pool[24329]: VertexBlendARB (dynamic) */ "i\0" "glVertexBlendARB\0" "\0" - /* _mesa_function_pool[24091]: WindowPos3iMESA (will be remapped) */ + /* _mesa_function_pool[24349]: WindowPos3iMESA (will be remapped) */ "iii\0" "glWindowPos3i\0" "glWindowPos3iARB\0" "glWindowPos3iMESA\0" "\0" - /* _mesa_function_pool[24145]: SeparableFilter2D (offset 360) */ + /* _mesa_function_pool[24403]: SeparableFilter2D (offset 360) */ "iiiiiipp\0" "glSeparableFilter2D\0" "glSeparableFilter2DEXT\0" "\0" - /* _mesa_function_pool[24198]: ProgramParameteriARB (will be remapped) */ + /* _mesa_function_pool[24456]: ProgramParameteriARB (will be remapped) */ "iii\0" "glProgramParameteriARB\0" "\0" - /* _mesa_function_pool[24226]: Map1d (offset 220) */ + /* _mesa_function_pool[24484]: Map1d (offset 220) */ "iddiip\0" "glMap1d\0" "\0" - /* _mesa_function_pool[24242]: Map1f (offset 221) */ + /* _mesa_function_pool[24500]: Map1f (offset 221) */ "iffiip\0" "glMap1f\0" "\0" - /* _mesa_function_pool[24258]: CompressedTexImage2DARB (will be remapped) */ + /* _mesa_function_pool[24516]: CompressedTexImage2DARB (will be remapped) */ "iiiiiiip\0" "glCompressedTexImage2D\0" "glCompressedTexImage2DARB\0" "\0" - /* _mesa_function_pool[24317]: ArrayElement (offset 306) */ + /* _mesa_function_pool[24575]: ArrayElement (offset 306) */ "i\0" "glArrayElement\0" "glArrayElementEXT\0" "\0" - /* _mesa_function_pool[24353]: TexImage2D (offset 183) */ + /* _mesa_function_pool[24611]: TexImage2D (offset 183) */ "iiiiiiiip\0" "glTexImage2D\0" "\0" - /* _mesa_function_pool[24377]: DepthBoundsEXT (will be remapped) */ + /* _mesa_function_pool[24635]: DepthBoundsEXT (will be remapped) */ "dd\0" "glDepthBoundsEXT\0" "\0" - /* _mesa_function_pool[24398]: ProgramParameters4fvNV (will be remapped) */ + /* _mesa_function_pool[24656]: ProgramParameters4fvNV (will be remapped) */ "iiip\0" "glProgramParameters4fvNV\0" "\0" - /* _mesa_function_pool[24429]: DeformationMap3fSGIX (dynamic) */ + /* _mesa_function_pool[24687]: DeformationMap3fSGIX (dynamic) */ "iffiiffiiffiip\0" "glDeformationMap3fSGIX\0" "\0" - /* _mesa_function_pool[24468]: GetProgramivNV (will be remapped) */ + /* _mesa_function_pool[24726]: GetProgramivNV (will be remapped) */ "iip\0" "glGetProgramivNV\0" "\0" - /* _mesa_function_pool[24490]: GetFragDataLocationEXT (will be remapped) */ + /* _mesa_function_pool[24748]: GetFragDataLocationEXT (will be remapped) */ "ip\0" "glGetFragDataLocationEXT\0" "glGetFragDataLocation\0" "\0" - /* _mesa_function_pool[24541]: GetMinmaxParameteriv (offset 366) */ + /* _mesa_function_pool[24799]: GetMinmaxParameteriv (offset 366) */ "iip\0" "glGetMinmaxParameteriv\0" "glGetMinmaxParameterivEXT\0" "\0" - /* _mesa_function_pool[24595]: PixelTransferf (offset 247) */ + /* _mesa_function_pool[24853]: PixelTransferf (offset 247) */ "if\0" "glPixelTransferf\0" "\0" - /* _mesa_function_pool[24616]: CopyTexImage1D (offset 323) */ + /* _mesa_function_pool[24874]: CopyTexImage1D (offset 323) */ "iiiiiii\0" "glCopyTexImage1D\0" "glCopyTexImage1DEXT\0" "\0" - /* _mesa_function_pool[24662]: PushMatrix (offset 298) */ + /* _mesa_function_pool[24920]: PushMatrix (offset 298) */ "\0" "glPushMatrix\0" "\0" - /* _mesa_function_pool[24677]: Fogiv (offset 156) */ + /* _mesa_function_pool[24935]: Fogiv (offset 156) */ "ip\0" "glFogiv\0" "\0" - /* _mesa_function_pool[24689]: TexCoord1dv (offset 95) */ + /* _mesa_function_pool[24947]: TexCoord1dv (offset 95) */ "p\0" "glTexCoord1dv\0" "\0" - /* _mesa_function_pool[24706]: AlphaFragmentOp3ATI (will be remapped) */ + /* _mesa_function_pool[24964]: AlphaFragmentOp3ATI (will be remapped) */ "iiiiiiiiiiii\0" "glAlphaFragmentOp3ATI\0" "\0" - /* _mesa_function_pool[24742]: PixelTransferi (offset 248) */ + /* _mesa_function_pool[25000]: PixelTransferi (offset 248) */ "ii\0" "glPixelTransferi\0" "\0" - /* _mesa_function_pool[24763]: GetVertexAttribdvNV (will be remapped) */ + /* _mesa_function_pool[25021]: GetVertexAttribdvNV (will be remapped) */ "iip\0" "glGetVertexAttribdvNV\0" "\0" - /* _mesa_function_pool[24790]: VertexAttrib3fvNV (will be remapped) */ + /* _mesa_function_pool[25048]: VertexAttrib3fvNV (will be remapped) */ "ip\0" "glVertexAttrib3fvNV\0" "\0" - /* _mesa_function_pool[24814]: Rotatef (offset 300) */ + /* _mesa_function_pool[25072]: Rotatef (offset 300) */ "ffff\0" "glRotatef\0" "\0" - /* _mesa_function_pool[24830]: GetFinalCombinerInputParameterivNV (will be remapped) */ + /* _mesa_function_pool[25088]: GetFinalCombinerInputParameterivNV (will be remapped) */ "iip\0" "glGetFinalCombinerInputParameterivNV\0" "\0" - /* _mesa_function_pool[24872]: Vertex3i (offset 138) */ + /* _mesa_function_pool[25130]: Vertex3i (offset 138) */ "iii\0" "glVertex3i\0" "\0" - /* _mesa_function_pool[24888]: Vertex3f (offset 136) */ + /* _mesa_function_pool[25146]: Vertex3f (offset 136) */ "fff\0" "glVertex3f\0" "\0" - /* _mesa_function_pool[24904]: Clear (offset 203) */ + /* _mesa_function_pool[25162]: Clear (offset 203) */ "i\0" "glClear\0" "\0" - /* _mesa_function_pool[24915]: Vertex3d (offset 134) */ + /* _mesa_function_pool[25173]: Vertex3d (offset 134) */ "ddd\0" "glVertex3d\0" "\0" - /* _mesa_function_pool[24931]: GetMapParameterivNV (dynamic) */ + /* _mesa_function_pool[25189]: GetMapParameterivNV (dynamic) */ "iip\0" "glGetMapParameterivNV\0" "\0" - /* _mesa_function_pool[24958]: Uniform4iARB (will be remapped) */ + /* _mesa_function_pool[25216]: Uniform4iARB (will be remapped) */ "iiiii\0" "glUniform4i\0" "glUniform4iARB\0" "\0" - /* _mesa_function_pool[24992]: ReadBuffer (offset 254) */ + /* _mesa_function_pool[25250]: ReadBuffer (offset 254) */ "i\0" "glReadBuffer\0" "\0" - /* _mesa_function_pool[25008]: ConvolutionParameteri (offset 352) */ + /* _mesa_function_pool[25266]: ConvolutionParameteri (offset 352) */ "iii\0" "glConvolutionParameteri\0" "glConvolutionParameteriEXT\0" "\0" - /* _mesa_function_pool[25064]: Ortho (offset 296) */ + /* _mesa_function_pool[25322]: Ortho (offset 296) */ "dddddd\0" "glOrtho\0" "\0" - /* _mesa_function_pool[25080]: Binormal3sEXT (dynamic) */ + /* _mesa_function_pool[25338]: Binormal3sEXT (dynamic) */ "iii\0" "glBinormal3sEXT\0" "\0" - /* _mesa_function_pool[25101]: ListBase (offset 6) */ + /* _mesa_function_pool[25359]: ListBase (offset 6) */ "i\0" "glListBase\0" "\0" - /* _mesa_function_pool[25115]: Vertex3s (offset 140) */ + /* _mesa_function_pool[25373]: VertexAttribI3ivEXT (will be remapped) */ + "ip\0" + "glVertexAttribI3ivEXT\0" + "glVertexAttribI3iv\0" + "\0" + /* _mesa_function_pool[25418]: Vertex3s (offset 140) */ "iii\0" "glVertex3s\0" "\0" - /* _mesa_function_pool[25131]: ConvolutionParameterf (offset 350) */ + /* _mesa_function_pool[25434]: ConvolutionParameterf (offset 350) */ "iif\0" "glConvolutionParameterf\0" "glConvolutionParameterfEXT\0" "\0" - /* _mesa_function_pool[25187]: GetColorTableParameteriv (offset 345) */ + /* _mesa_function_pool[25490]: GetColorTableParameteriv (offset 345) */ "iip\0" "glGetColorTableParameteriv\0" "glGetColorTableParameterivSGI\0" "glGetColorTableParameterivEXT\0" "\0" - /* _mesa_function_pool[25279]: ProgramEnvParameter4dvARB (will be remapped) */ + /* _mesa_function_pool[25582]: ProgramEnvParameter4dvARB (will be remapped) */ "iip\0" "glProgramEnvParameter4dvARB\0" "glProgramParameter4dvNV\0" "\0" - /* _mesa_function_pool[25336]: ShadeModel (offset 177) */ + /* _mesa_function_pool[25639]: ShadeModel (offset 177) */ "i\0" "glShadeModel\0" "\0" - /* _mesa_function_pool[25352]: VertexAttribs2fvNV (will be remapped) */ + /* _mesa_function_pool[25655]: VertexAttribs2fvNV (will be remapped) */ "iip\0" "glVertexAttribs2fvNV\0" "\0" - /* _mesa_function_pool[25378]: Rectiv (offset 91) */ + /* _mesa_function_pool[25681]: Rectiv (offset 91) */ "pp\0" "glRectiv\0" "\0" - /* _mesa_function_pool[25391]: UseProgramObjectARB (will be remapped) */ + /* _mesa_function_pool[25694]: UseProgramObjectARB (will be remapped) */ "i\0" "glUseProgram\0" "glUseProgramObjectARB\0" "\0" - /* _mesa_function_pool[25429]: GetMapParameterfvNV (dynamic) */ + /* _mesa_function_pool[25732]: GetMapParameterfvNV (dynamic) */ "iip\0" "glGetMapParameterfvNV\0" "\0" - /* _mesa_function_pool[25456]: EndConditionalRenderNV (will be remapped) */ + /* _mesa_function_pool[25759]: EndConditionalRenderNV (will be remapped) */ "\0" "glEndConditionalRenderNV\0" "glEndConditionalRender\0" "\0" - /* _mesa_function_pool[25506]: PassTexCoordATI (will be remapped) */ + /* _mesa_function_pool[25809]: PassTexCoordATI (will be remapped) */ "iii\0" "glPassTexCoordATI\0" "\0" - /* _mesa_function_pool[25529]: DeleteProgram (will be remapped) */ + /* _mesa_function_pool[25832]: DeleteProgram (will be remapped) */ "i\0" "glDeleteProgram\0" "\0" - /* _mesa_function_pool[25548]: Tangent3ivEXT (dynamic) */ - "p\0" - "glTangent3ivEXT\0" + /* _mesa_function_pool[25851]: GetSamplerParameteriv (will be remapped) */ + "iip\0" + "glGetSamplerParameteriv\0" "\0" - /* _mesa_function_pool[25567]: Tangent3dEXT (dynamic) */ + /* _mesa_function_pool[25880]: Tangent3dEXT (dynamic) */ "ddd\0" "glTangent3dEXT\0" "\0" - /* _mesa_function_pool[25587]: SecondaryColor3dvEXT (will be remapped) */ + /* _mesa_function_pool[25900]: SecondaryColor3dvEXT (will be remapped) */ "p\0" "glSecondaryColor3dv\0" "glSecondaryColor3dvEXT\0" "\0" - /* _mesa_function_pool[25633]: AlphaFragmentOp2ATI (will be remapped) */ + /* _mesa_function_pool[25946]: AlphaFragmentOp2ATI (will be remapped) */ "iiiiiiiii\0" "glAlphaFragmentOp2ATI\0" "\0" - /* _mesa_function_pool[25666]: Vertex2fv (offset 129) */ + /* _mesa_function_pool[25979]: Vertex2fv (offset 129) */ "p\0" "glVertex2fv\0" "\0" - /* _mesa_function_pool[25681]: MultiDrawArraysEXT (will be remapped) */ + /* _mesa_function_pool[25994]: MultiDrawArraysEXT (will be remapped) */ "ippi\0" "glMultiDrawArrays\0" "glMultiDrawArraysEXT\0" "\0" - /* _mesa_function_pool[25726]: BindRenderbufferEXT (will be remapped) */ + /* _mesa_function_pool[26039]: BindRenderbufferEXT (will be remapped) */ "ii\0" "glBindRenderbuffer\0" "glBindRenderbufferEXT\0" "\0" - /* _mesa_function_pool[25771]: MultiTexCoord4dARB (offset 400) */ + /* _mesa_function_pool[26084]: MultiTexCoord4dARB (offset 400) */ "idddd\0" "glMultiTexCoord4d\0" "glMultiTexCoord4dARB\0" "\0" - /* _mesa_function_pool[25817]: FramebufferTextureFaceARB (will be remapped) */ + /* _mesa_function_pool[26130]: FramebufferTextureFaceARB (will be remapped) */ "iiiii\0" "glFramebufferTextureFaceARB\0" "\0" - /* _mesa_function_pool[25852]: Vertex3sv (offset 141) */ + /* _mesa_function_pool[26165]: Vertex3sv (offset 141) */ "p\0" "glVertex3sv\0" "\0" - /* _mesa_function_pool[25867]: SecondaryColor3usEXT (will be remapped) */ + /* _mesa_function_pool[26180]: SecondaryColor3usEXT (will be remapped) */ "iii\0" "glSecondaryColor3us\0" "glSecondaryColor3usEXT\0" "\0" - /* _mesa_function_pool[25915]: ProgramLocalParameter4fvARB (will be remapped) */ + /* _mesa_function_pool[26228]: ProgramLocalParameter4fvARB (will be remapped) */ "iip\0" "glProgramLocalParameter4fvARB\0" "\0" - /* _mesa_function_pool[25950]: DeleteProgramsNV (will be remapped) */ + /* _mesa_function_pool[26263]: DeleteProgramsNV (will be remapped) */ "ip\0" "glDeleteProgramsARB\0" "glDeleteProgramsNV\0" "\0" - /* _mesa_function_pool[25993]: EvalMesh1 (offset 236) */ + /* _mesa_function_pool[26306]: EvalMesh1 (offset 236) */ "iii\0" "glEvalMesh1\0" "\0" - /* _mesa_function_pool[26010]: PauseTransformFeedback (will be remapped) */ + /* _mesa_function_pool[26323]: PauseTransformFeedback (will be remapped) */ "\0" "glPauseTransformFeedback\0" "\0" - /* _mesa_function_pool[26037]: MultiTexCoord1sARB (offset 382) */ + /* _mesa_function_pool[26350]: MultiTexCoord1sARB (offset 382) */ "ii\0" "glMultiTexCoord1s\0" "glMultiTexCoord1sARB\0" "\0" - /* _mesa_function_pool[26080]: ReplacementCodeuiColor3fVertex3fSUN (dynamic) */ + /* _mesa_function_pool[26393]: ReplacementCodeuiColor3fVertex3fSUN (dynamic) */ "iffffff\0" "glReplacementCodeuiColor3fVertex3fSUN\0" "\0" - /* _mesa_function_pool[26127]: GetVertexAttribPointervNV (will be remapped) */ + /* _mesa_function_pool[26440]: GetVertexAttribPointervNV (will be remapped) */ "iip\0" "glGetVertexAttribPointerv\0" "glGetVertexAttribPointervARB\0" "glGetVertexAttribPointervNV\0" "\0" - /* _mesa_function_pool[26215]: VertexAttribs1fvNV (will be remapped) */ + /* _mesa_function_pool[26528]: VertexAttribs1fvNV (will be remapped) */ "iip\0" "glVertexAttribs1fvNV\0" "\0" - /* _mesa_function_pool[26241]: MultiTexCoord1dvARB (offset 377) */ + /* _mesa_function_pool[26554]: MultiTexCoord1dvARB (offset 377) */ "ip\0" "glMultiTexCoord1dv\0" "glMultiTexCoord1dvARB\0" "\0" - /* _mesa_function_pool[26286]: Uniform2iARB (will be remapped) */ + /* _mesa_function_pool[26599]: Uniform2iARB (will be remapped) */ "iii\0" "glUniform2i\0" "glUniform2iARB\0" "\0" - /* _mesa_function_pool[26318]: Vertex2iv (offset 131) */ + /* _mesa_function_pool[26631]: Vertex2iv (offset 131) */ "p\0" "glVertex2iv\0" "\0" - /* _mesa_function_pool[26333]: GetProgramStringNV (will be remapped) */ + /* _mesa_function_pool[26646]: GetProgramStringNV (will be remapped) */ "iip\0" "glGetProgramStringNV\0" "\0" - /* _mesa_function_pool[26359]: ColorPointerEXT (will be remapped) */ + /* _mesa_function_pool[26672]: ColorPointerEXT (will be remapped) */ "iiiip\0" "glColorPointerEXT\0" "\0" - /* _mesa_function_pool[26384]: LineWidth (offset 168) */ + /* _mesa_function_pool[26697]: LineWidth (offset 168) */ "f\0" "glLineWidth\0" "\0" - /* _mesa_function_pool[26399]: MapBufferARB (will be remapped) */ + /* _mesa_function_pool[26712]: MapBufferARB (will be remapped) */ "ii\0" "glMapBuffer\0" "glMapBufferARB\0" "\0" - /* _mesa_function_pool[26430]: MultiDrawElementsBaseVertex (will be remapped) */ + /* _mesa_function_pool[26743]: MultiDrawElementsBaseVertex (will be remapped) */ "ipipip\0" "glMultiDrawElementsBaseVertex\0" "\0" - /* _mesa_function_pool[26468]: TexParameterIuivEXT (will be remapped) */ + /* _mesa_function_pool[26781]: TexParameterIuivEXT (will be remapped) */ "iip\0" "glTexParameterIuivEXT\0" "glTexParameterIuiv\0" "\0" - /* _mesa_function_pool[26514]: Binormal3svEXT (dynamic) */ + /* _mesa_function_pool[26827]: Binormal3svEXT (dynamic) */ "p\0" "glBinormal3svEXT\0" "\0" - /* _mesa_function_pool[26534]: ApplyTextureEXT (dynamic) */ + /* _mesa_function_pool[26847]: ApplyTextureEXT (dynamic) */ "i\0" "glApplyTextureEXT\0" "\0" - /* _mesa_function_pool[26555]: GetBufferParameteri64v (will be remapped) */ + /* _mesa_function_pool[26868]: GetBufferParameteri64v (will be remapped) */ "iip\0" "glGetBufferParameteri64v\0" "\0" - /* _mesa_function_pool[26585]: TexGendv (offset 189) */ + /* _mesa_function_pool[26898]: TexGendv (offset 189) */ "iip\0" "glTexGendv\0" "\0" - /* _mesa_function_pool[26601]: VertexAttribI3iEXT (will be remapped) */ + /* _mesa_function_pool[26914]: VertexAttribI3iEXT (will be remapped) */ "iiii\0" "glVertexAttribI3iEXT\0" "glVertexAttribI3i\0" "\0" - /* _mesa_function_pool[26646]: EnableIndexedEXT (will be remapped) */ + /* _mesa_function_pool[26959]: EnableIndexedEXT (will be remapped) */ "ii\0" "glEnableIndexedEXT\0" "glEnablei\0" "\0" - /* _mesa_function_pool[26679]: TextureMaterialEXT (dynamic) */ + /* _mesa_function_pool[26992]: TextureMaterialEXT (dynamic) */ "ii\0" "glTextureMaterialEXT\0" "\0" - /* _mesa_function_pool[26704]: TextureLightEXT (dynamic) */ + /* _mesa_function_pool[27017]: TextureLightEXT (dynamic) */ "i\0" "glTextureLightEXT\0" "\0" - /* _mesa_function_pool[26725]: ResetMinmax (offset 370) */ + /* _mesa_function_pool[27038]: ResetMinmax (offset 370) */ "i\0" "glResetMinmax\0" "glResetMinmaxEXT\0" "\0" - /* _mesa_function_pool[26759]: SpriteParameterfSGIX (dynamic) */ + /* _mesa_function_pool[27072]: SpriteParameterfSGIX (dynamic) */ "if\0" "glSpriteParameterfSGIX\0" "\0" - /* _mesa_function_pool[26786]: EnableClientState (offset 313) */ + /* _mesa_function_pool[27099]: EnableClientState (offset 313) */ "i\0" "glEnableClientState\0" "\0" - /* _mesa_function_pool[26809]: VertexAttrib4sNV (will be remapped) */ + /* _mesa_function_pool[27122]: VertexAttrib4sNV (will be remapped) */ "iiiii\0" "glVertexAttrib4sNV\0" "\0" - /* _mesa_function_pool[26835]: GetConvolutionParameterfv (offset 357) */ + /* _mesa_function_pool[27148]: GetConvolutionParameterfv (offset 357) */ "iip\0" "glGetConvolutionParameterfv\0" "glGetConvolutionParameterfvEXT\0" "\0" - /* _mesa_function_pool[26899]: VertexAttribs4dvNV (will be remapped) */ + /* _mesa_function_pool[27212]: VertexAttribs4dvNV (will be remapped) */ "iip\0" "glVertexAttribs4dvNV\0" "\0" - /* _mesa_function_pool[26925]: VertexAttrib4dARB (will be remapped) */ + /* _mesa_function_pool[27238]: VertexAttrib4dARB (will be remapped) */ "idddd\0" "glVertexAttrib4d\0" "glVertexAttrib4dARB\0" "\0" - /* _mesa_function_pool[26969]: GetTexBumpParameterfvATI (will be remapped) */ + /* _mesa_function_pool[27282]: GetTexBumpParameterfvATI (will be remapped) */ "ip\0" "glGetTexBumpParameterfvATI\0" "\0" - /* _mesa_function_pool[27000]: ProgramNamedParameter4dNV (will be remapped) */ + /* _mesa_function_pool[27313]: ProgramNamedParameter4dNV (will be remapped) */ "iipdddd\0" "glProgramNamedParameter4dNV\0" "\0" - /* _mesa_function_pool[27037]: GetMaterialfv (offset 269) */ + /* _mesa_function_pool[27350]: GetMaterialfv (offset 269) */ "iip\0" "glGetMaterialfv\0" "\0" - /* _mesa_function_pool[27058]: VertexWeightfEXT (dynamic) */ + /* _mesa_function_pool[27371]: VertexWeightfEXT (dynamic) */ "f\0" "glVertexWeightfEXT\0" "\0" - /* _mesa_function_pool[27080]: SetFragmentShaderConstantATI (will be remapped) */ + /* _mesa_function_pool[27393]: SetFragmentShaderConstantATI (will be remapped) */ "ip\0" "glSetFragmentShaderConstantATI\0" "\0" - /* _mesa_function_pool[27115]: Binormal3fEXT (dynamic) */ + /* _mesa_function_pool[27428]: Binormal3fEXT (dynamic) */ "fff\0" "glBinormal3fEXT\0" "\0" - /* _mesa_function_pool[27136]: CallList (offset 2) */ + /* _mesa_function_pool[27449]: CallList (offset 2) */ "i\0" "glCallList\0" "\0" - /* _mesa_function_pool[27150]: Materialfv (offset 170) */ + /* _mesa_function_pool[27463]: Materialfv (offset 170) */ "iip\0" "glMaterialfv\0" "\0" - /* _mesa_function_pool[27168]: TexCoord3fv (offset 113) */ + /* _mesa_function_pool[27481]: TexCoord3fv (offset 113) */ "p\0" "glTexCoord3fv\0" "\0" - /* _mesa_function_pool[27185]: FogCoordfvEXT (will be remapped) */ + /* _mesa_function_pool[27498]: FogCoordfvEXT (will be remapped) */ "p\0" "glFogCoordfv\0" "glFogCoordfvEXT\0" "\0" - /* _mesa_function_pool[27217]: MultiTexCoord1ivARB (offset 381) */ + /* _mesa_function_pool[27530]: MultiTexCoord1ivARB (offset 381) */ "ip\0" "glMultiTexCoord1iv\0" "glMultiTexCoord1ivARB\0" "\0" - /* _mesa_function_pool[27262]: SecondaryColor3ubEXT (will be remapped) */ + /* _mesa_function_pool[27575]: SecondaryColor3ubEXT (will be remapped) */ "iii\0" "glSecondaryColor3ub\0" "glSecondaryColor3ubEXT\0" "\0" - /* _mesa_function_pool[27310]: MultiTexCoord2ivARB (offset 389) */ + /* _mesa_function_pool[27623]: MultiTexCoord2ivARB (offset 389) */ "ip\0" "glMultiTexCoord2iv\0" "glMultiTexCoord2ivARB\0" "\0" - /* _mesa_function_pool[27355]: FogFuncSGIS (dynamic) */ + /* _mesa_function_pool[27668]: FogFuncSGIS (dynamic) */ "ip\0" "glFogFuncSGIS\0" "\0" - /* _mesa_function_pool[27373]: CopyTexSubImage2D (offset 326) */ + /* _mesa_function_pool[27686]: CopyTexSubImage2D (offset 326) */ "iiiiiiii\0" "glCopyTexSubImage2D\0" "glCopyTexSubImage2DEXT\0" "\0" - /* _mesa_function_pool[27426]: GetObjectParameterivARB (will be remapped) */ + /* _mesa_function_pool[27739]: GetObjectParameterivARB (will be remapped) */ "iip\0" "glGetObjectParameterivARB\0" "\0" - /* _mesa_function_pool[27457]: Color3iv (offset 16) */ + /* _mesa_function_pool[27770]: Color3iv (offset 16) */ "p\0" "glColor3iv\0" "\0" - /* _mesa_function_pool[27471]: TexCoord4fVertex4fSUN (dynamic) */ + /* _mesa_function_pool[27784]: TexCoord4fVertex4fSUN (dynamic) */ "ffffffff\0" "glTexCoord4fVertex4fSUN\0" "\0" - /* _mesa_function_pool[27505]: DrawElements (offset 311) */ + /* _mesa_function_pool[27818]: DrawElements (offset 311) */ "iiip\0" "glDrawElements\0" "\0" - /* _mesa_function_pool[27526]: BindVertexArrayAPPLE (will be remapped) */ + /* _mesa_function_pool[27839]: BindVertexArrayAPPLE (will be remapped) */ "i\0" "glBindVertexArrayAPPLE\0" "\0" - /* _mesa_function_pool[27552]: GetProgramLocalParameterdvARB (will be remapped) */ + /* _mesa_function_pool[27865]: GetProgramLocalParameterdvARB (will be remapped) */ "iip\0" "glGetProgramLocalParameterdvARB\0" "\0" - /* _mesa_function_pool[27589]: GetHistogramParameteriv (offset 363) */ + /* _mesa_function_pool[27902]: GetHistogramParameteriv (offset 363) */ "iip\0" "glGetHistogramParameteriv\0" "glGetHistogramParameterivEXT\0" "\0" - /* _mesa_function_pool[27649]: MultiTexCoord1iARB (offset 380) */ + /* _mesa_function_pool[27962]: MultiTexCoord1iARB (offset 380) */ "ii\0" "glMultiTexCoord1i\0" "glMultiTexCoord1iARB\0" "\0" - /* _mesa_function_pool[27692]: GetConvolutionFilter (offset 356) */ + /* _mesa_function_pool[28005]: GetConvolutionFilter (offset 356) */ "iiip\0" "glGetConvolutionFilter\0" "glGetConvolutionFilterEXT\0" "\0" - /* _mesa_function_pool[27747]: GetProgramivARB (will be remapped) */ + /* _mesa_function_pool[28060]: GetProgramivARB (will be remapped) */ "iip\0" "glGetProgramivARB\0" "\0" - /* _mesa_function_pool[27770]: TexBufferARB (will be remapped) */ + /* _mesa_function_pool[28083]: TexBufferARB (will be remapped) */ "iii\0" "glTexBufferARB\0" "\0" - /* _mesa_function_pool[27790]: BlendFuncSeparateEXT (will be remapped) */ + /* _mesa_function_pool[28103]: BlendFuncSeparateEXT (will be remapped) */ "iiii\0" "glBlendFuncSeparate\0" "glBlendFuncSeparateEXT\0" "glBlendFuncSeparateINGR\0" "\0" - /* _mesa_function_pool[27863]: MapBufferRange (will be remapped) */ + /* _mesa_function_pool[28176]: MapBufferRange (will be remapped) */ "iiii\0" "glMapBufferRange\0" "\0" - /* _mesa_function_pool[27886]: ProgramParameters4dvNV (will be remapped) */ + /* _mesa_function_pool[28199]: ProgramParameters4dvNV (will be remapped) */ "iiip\0" "glProgramParameters4dvNV\0" "\0" - /* _mesa_function_pool[27917]: TexCoord2fColor3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[28230]: TexCoord2fColor3fVertex3fvSUN (dynamic) */ "ppp\0" "glTexCoord2fColor3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[27954]: EvalPoint2 (offset 239) */ + /* _mesa_function_pool[28267]: EvalPoint2 (offset 239) */ "ii\0" "glEvalPoint2\0" "\0" - /* _mesa_function_pool[27971]: Uniform1uivEXT (will be remapped) */ + /* _mesa_function_pool[28284]: Uniform1uivEXT (will be remapped) */ "iip\0" "glUniform1uivEXT\0" "glUniform1uiv\0" "\0" - /* _mesa_function_pool[28007]: EvalPoint1 (offset 237) */ + /* _mesa_function_pool[28320]: EvalPoint1 (offset 237) */ "i\0" "glEvalPoint1\0" "\0" - /* _mesa_function_pool[28023]: Binormal3dvEXT (dynamic) */ + /* _mesa_function_pool[28336]: Binormal3dvEXT (dynamic) */ "p\0" "glBinormal3dvEXT\0" "\0" - /* _mesa_function_pool[28043]: PopMatrix (offset 297) */ + /* _mesa_function_pool[28356]: PopMatrix (offset 297) */ "\0" "glPopMatrix\0" "\0" - /* _mesa_function_pool[28057]: FinishFenceNV (will be remapped) */ + /* _mesa_function_pool[28370]: FinishFenceNV (will be remapped) */ "i\0" "glFinishFenceNV\0" "\0" - /* _mesa_function_pool[28076]: GetFogFuncSGIS (dynamic) */ + /* _mesa_function_pool[28389]: GetFogFuncSGIS (dynamic) */ "p\0" "glGetFogFuncSGIS\0" "\0" - /* _mesa_function_pool[28096]: GetUniformLocationARB (will be remapped) */ + /* _mesa_function_pool[28409]: GetUniformLocationARB (will be remapped) */ "ip\0" "glGetUniformLocation\0" "glGetUniformLocationARB\0" "\0" - /* _mesa_function_pool[28145]: SecondaryColor3fEXT (will be remapped) */ + /* _mesa_function_pool[28458]: SecondaryColor3fEXT (will be remapped) */ "fff\0" "glSecondaryColor3f\0" "glSecondaryColor3fEXT\0" "\0" - /* _mesa_function_pool[28191]: GetTexGeniv (offset 280) */ + /* _mesa_function_pool[28504]: GetTexGeniv (offset 280) */ "iip\0" "glGetTexGeniv\0" "\0" - /* _mesa_function_pool[28210]: CombinerInputNV (will be remapped) */ + /* _mesa_function_pool[28523]: CombinerInputNV (will be remapped) */ "iiiiii\0" "glCombinerInputNV\0" "\0" - /* _mesa_function_pool[28236]: VertexAttrib3sARB (will be remapped) */ + /* _mesa_function_pool[28549]: VertexAttrib3sARB (will be remapped) */ "iiii\0" "glVertexAttrib3s\0" "glVertexAttrib3sARB\0" "\0" - /* _mesa_function_pool[28279]: IsTransformFeedback (will be remapped) */ + /* _mesa_function_pool[28592]: IsTransformFeedback (will be remapped) */ "i\0" "glIsTransformFeedback\0" "\0" - /* _mesa_function_pool[28304]: ReplacementCodeuiNormal3fVertex3fvSUN (dynamic) */ + /* _mesa_function_pool[28617]: ReplacementCodeuiNormal3fVertex3fvSUN (dynamic) */ "ppp\0" "glReplacementCodeuiNormal3fVertex3fvSUN\0" "\0" - /* _mesa_function_pool[28349]: Map2d (offset 222) */ + /* _mesa_function_pool[28662]: Map2d (offset 222) */ "iddiiddiip\0" "glMap2d\0" "\0" - /* _mesa_function_pool[28369]: Map2f (offset 223) */ + /* _mesa_function_pool[28682]: Map2f (offset 223) */ "iffiiffiip\0" "glMap2f\0" "\0" - /* _mesa_function_pool[28389]: ProgramStringARB (will be remapped) */ + /* _mesa_function_pool[28702]: ProgramStringARB (will be remapped) */ "iiip\0" "glProgramStringARB\0" "\0" - /* _mesa_function_pool[28414]: Vertex4s (offset 148) */ + /* _mesa_function_pool[28727]: Vertex4s (offset 148) */ "iiii\0" "glVertex4s\0" "\0" - /* _mesa_function_pool[28431]: TexCoord4fVertex4fvSUN (dynamic) */ + /* _mesa_function_pool[28744]: TexCoord4fVertex4fvSUN (dynamic) */ "pp\0" "glTexCoord4fVertex4fvSUN\0" "\0" - /* _mesa_function_pool[28460]: FragmentLightModelivSGIX (dynamic) */ + /* _mesa_function_pool[28773]: FragmentLightModelivSGIX (dynamic) */ "ip\0" "glFragmentLightModelivSGIX\0" "\0" - /* _mesa_function_pool[28491]: VertexAttrib1fNV (will be remapped) */ + /* _mesa_function_pool[28804]: VertexAttrib1fNV (will be remapped) */ "if\0" "glVertexAttrib1fNV\0" "\0" - /* _mesa_function_pool[28514]: Vertex4f (offset 144) */ + /* _mesa_function_pool[28827]: Vertex4f (offset 144) */ "ffff\0" "glVertex4f\0" "\0" - /* _mesa_function_pool[28531]: EvalCoord1d (offset 228) */ + /* _mesa_function_pool[28844]: EvalCoord1d (offset 228) */ "d\0" "glEvalCoord1d\0" "\0" - /* _mesa_function_pool[28548]: Vertex4d (offset 142) */ + /* _mesa_function_pool[28861]: Vertex4d (offset 142) */ "dddd\0" "glVertex4d\0" "\0" - /* _mesa_function_pool[28565]: RasterPos4dv (offset 79) */ + /* _mesa_function_pool[28878]: RasterPos4dv (offset 79) */ "p\0" "glRasterPos4dv\0" "\0" - /* _mesa_function_pool[28583]: UseShaderProgramEXT (will be remapped) */ + /* _mesa_function_pool[28896]: UseShaderProgramEXT (will be remapped) */ "ii\0" "glUseShaderProgramEXT\0" "\0" - /* _mesa_function_pool[28609]: FragmentLightfSGIX (dynamic) */ + /* _mesa_function_pool[28922]: FragmentLightfSGIX (dynamic) */ "iif\0" "glFragmentLightfSGIX\0" "\0" - /* _mesa_function_pool[28635]: GetCompressedTexImageARB (will be remapped) */ + /* _mesa_function_pool[28948]: GetCompressedTexImageARB (will be remapped) */ "iip\0" "glGetCompressedTexImage\0" "glGetCompressedTexImageARB\0" "\0" - /* _mesa_function_pool[28691]: GetTexGenfv (offset 279) */ + /* _mesa_function_pool[29004]: GetTexGenfv (offset 279) */ "iip\0" "glGetTexGenfv\0" "\0" - /* _mesa_function_pool[28710]: Vertex4i (offset 146) */ + /* _mesa_function_pool[29023]: Vertex4i (offset 146) */ "iiii\0" "glVertex4i\0" "\0" - /* _mesa_function_pool[28727]: VertexWeightPointerEXT (dynamic) */ + /* _mesa_function_pool[29040]: VertexWeightPointerEXT (dynamic) */ "iiip\0" "glVertexWeightPointerEXT\0" "\0" - /* _mesa_function_pool[28758]: GetHistogram (offset 361) */ + /* _mesa_function_pool[29071]: GetHistogram (offset 361) */ "iiiip\0" "glGetHistogram\0" "glGetHistogramEXT\0" "\0" - /* _mesa_function_pool[28798]: ActiveStencilFaceEXT (will be remapped) */ + /* _mesa_function_pool[29111]: ActiveStencilFaceEXT (will be remapped) */ "i\0" "glActiveStencilFaceEXT\0" "\0" - /* _mesa_function_pool[28824]: StencilFuncSeparateATI (will be remapped) */ + /* _mesa_function_pool[29137]: StencilFuncSeparateATI (will be remapped) */ "iiii\0" "glStencilFuncSeparateATI\0" "\0" - /* _mesa_function_pool[28855]: Materialf (offset 169) */ + /* _mesa_function_pool[29168]: Materialf (offset 169) */ "iif\0" "glMaterialf\0" "\0" - /* _mesa_function_pool[28872]: GetShaderSourceARB (will be remapped) */ + /* _mesa_function_pool[29185]: GetShaderSourceARB (will be remapped) */ "iipp\0" "glGetShaderSource\0" "glGetShaderSourceARB\0" "\0" - /* _mesa_function_pool[28917]: IglooInterfaceSGIX (dynamic) */ + /* _mesa_function_pool[29230]: IglooInterfaceSGIX (dynamic) */ "ip\0" "glIglooInterfaceSGIX\0" "\0" - /* _mesa_function_pool[28942]: Materiali (offset 171) */ + /* _mesa_function_pool[29255]: Materiali (offset 171) */ "iii\0" "glMateriali\0" "\0" - /* _mesa_function_pool[28959]: VertexAttrib4dNV (will be remapped) */ + /* _mesa_function_pool[29272]: VertexAttrib4dNV (will be remapped) */ "idddd\0" "glVertexAttrib4dNV\0" "\0" - /* _mesa_function_pool[28985]: MultiModeDrawElementsIBM (will be remapped) */ + /* _mesa_function_pool[29298]: MultiModeDrawElementsIBM (will be remapped) */ "ppipii\0" "glMultiModeDrawElementsIBM\0" "\0" - /* _mesa_function_pool[29020]: Indexsv (offset 51) */ + /* _mesa_function_pool[29333]: Indexsv (offset 51) */ "p\0" "glIndexsv\0" "\0" - /* _mesa_function_pool[29033]: MultiTexCoord4svARB (offset 407) */ + /* _mesa_function_pool[29346]: MultiTexCoord4svARB (offset 407) */ "ip\0" "glMultiTexCoord4sv\0" "glMultiTexCoord4svARB\0" "\0" - /* _mesa_function_pool[29078]: LightModelfv (offset 164) */ + /* _mesa_function_pool[29391]: LightModelfv (offset 164) */ "ip\0" "glLightModelfv\0" "\0" - /* _mesa_function_pool[29097]: TexCoord2dv (offset 103) */ + /* _mesa_function_pool[29410]: TexCoord2dv (offset 103) */ "p\0" "glTexCoord2dv\0" "\0" - /* _mesa_function_pool[29114]: GenQueriesARB (will be remapped) */ + /* _mesa_function_pool[29427]: GenQueriesARB (will be remapped) */ "ip\0" "glGenQueries\0" "glGenQueriesARB\0" "\0" - /* _mesa_function_pool[29147]: EvalCoord1dv (offset 229) */ + /* _mesa_function_pool[29460]: EvalCoord1dv (offset 229) */ "p\0" "glEvalCoord1dv\0" "\0" - /* _mesa_function_pool[29165]: ReplacementCodeuiVertex3fSUN (dynamic) */ + /* _mesa_function_pool[29478]: ReplacementCodeuiVertex3fSUN (dynamic) */ "ifff\0" "glReplacementCodeuiVertex3fSUN\0" "\0" - /* _mesa_function_pool[29202]: Translated (offset 303) */ + /* _mesa_function_pool[29515]: Translated (offset 303) */ "ddd\0" "glTranslated\0" "\0" - /* _mesa_function_pool[29220]: Translatef (offset 304) */ + /* _mesa_function_pool[29533]: Translatef (offset 304) */ "fff\0" "glTranslatef\0" "\0" - /* _mesa_function_pool[29238]: Uniform3uiEXT (will be remapped) */ + /* _mesa_function_pool[29551]: Uniform3uiEXT (will be remapped) */ "iiii\0" "glUniform3uiEXT\0" "glUniform3ui\0" "\0" - /* _mesa_function_pool[29273]: StencilMask (offset 209) */ + /* _mesa_function_pool[29586]: StencilMask (offset 209) */ "i\0" "glStencilMask\0" "\0" - /* _mesa_function_pool[29290]: Tangent3iEXT (dynamic) */ + /* _mesa_function_pool[29603]: Tangent3iEXT (dynamic) */ "iii\0" "glTangent3iEXT\0" "\0" - /* _mesa_function_pool[29310]: ClampColorARB (will be remapped) */ + /* _mesa_function_pool[29623]: ClampColorARB (will be remapped) */ "ii\0" "glClampColorARB\0" "\0" - /* _mesa_function_pool[29330]: GetLightiv (offset 265) */ + /* _mesa_function_pool[29643]: GetLightiv (offset 265) */ "iip\0" "glGetLightiv\0" "\0" - /* _mesa_function_pool[29348]: DrawMeshArraysSUN (dynamic) */ + /* _mesa_function_pool[29661]: GetSamplerParameterIiv (will be remapped) */ + "iip\0" + "glGetSamplerParameterIiv\0" + "\0" + /* _mesa_function_pool[29691]: DrawMeshArraysSUN (dynamic) */ "iiii\0" "glDrawMeshArraysSUN\0" "\0" - /* _mesa_function_pool[29374]: IsList (offset 287) */ + /* _mesa_function_pool[29717]: IsList (offset 287) */ "i\0" "glIsList\0" "\0" - /* _mesa_function_pool[29386]: IsSync (will be remapped) */ + /* _mesa_function_pool[29729]: IsSync (will be remapped) */ "i\0" "glIsSync\0" "\0" - /* _mesa_function_pool[29398]: RenderMode (offset 196) */ + /* _mesa_function_pool[29741]: RenderMode (offset 196) */ "i\0" "glRenderMode\0" "\0" - /* _mesa_function_pool[29414]: GetMapControlPointsNV (dynamic) */ + /* _mesa_function_pool[29757]: GetMapControlPointsNV (dynamic) */ "iiiiiip\0" "glGetMapControlPointsNV\0" "\0" - /* _mesa_function_pool[29447]: DrawBuffersARB (will be remapped) */ + /* _mesa_function_pool[29790]: DrawBuffersARB (will be remapped) */ "ip\0" "glDrawBuffers\0" "glDrawBuffersARB\0" "glDrawBuffersATI\0" "\0" - /* _mesa_function_pool[29499]: ClearBufferiv (will be remapped) */ + /* _mesa_function_pool[29842]: ClearBufferiv (will be remapped) */ "iip\0" "glClearBufferiv\0" "\0" - /* _mesa_function_pool[29520]: ProgramLocalParameter4fARB (will be remapped) */ + /* _mesa_function_pool[29863]: ProgramLocalParameter4fARB (will be remapped) */ "iiffff\0" "glProgramLocalParameter4fARB\0" "\0" - /* _mesa_function_pool[29557]: SpriteParameterivSGIX (dynamic) */ + /* _mesa_function_pool[29900]: SpriteParameterivSGIX (dynamic) */ "ip\0" "glSpriteParameterivSGIX\0" "\0" - /* _mesa_function_pool[29585]: ProvokingVertexEXT (will be remapped) */ + /* _mesa_function_pool[29928]: ProvokingVertexEXT (will be remapped) */ "i\0" "glProvokingVertexEXT\0" "glProvokingVertex\0" "\0" - /* _mesa_function_pool[29627]: MultiTexCoord1fARB (offset 378) */ + /* _mesa_function_pool[29970]: MultiTexCoord1fARB (offset 378) */ "if\0" "glMultiTexCoord1f\0" "glMultiTexCoord1fARB\0" "\0" - /* _mesa_function_pool[29670]: LoadName (offset 198) */ + /* _mesa_function_pool[30013]: LoadName (offset 198) */ "i\0" "glLoadName\0" "\0" - /* _mesa_function_pool[29684]: VertexAttribs4ubvNV (will be remapped) */ + /* _mesa_function_pool[30027]: VertexAttribs4ubvNV (will be remapped) */ "iip\0" "glVertexAttribs4ubvNV\0" "\0" - /* _mesa_function_pool[29711]: WeightsvARB (dynamic) */ + /* _mesa_function_pool[30054]: WeightsvARB (dynamic) */ "ip\0" "glWeightsvARB\0" "\0" - /* _mesa_function_pool[29729]: Uniform1fvARB (will be remapped) */ + /* _mesa_function_pool[30072]: Uniform1fvARB (will be remapped) */ "iip\0" "glUniform1fv\0" "glUniform1fvARB\0" "\0" - /* _mesa_function_pool[29763]: CopyTexSubImage1D (offset 325) */ + /* _mesa_function_pool[30106]: CopyTexSubImage1D (offset 325) */ "iiiiii\0" "glCopyTexSubImage1D\0" "glCopyTexSubImage1DEXT\0" "\0" - /* _mesa_function_pool[29814]: CullFace (offset 152) */ + /* _mesa_function_pool[30157]: CullFace (offset 152) */ "i\0" "glCullFace\0" "\0" - /* _mesa_function_pool[29828]: BindTexture (offset 307) */ + /* _mesa_function_pool[30171]: BindTexture (offset 307) */ "ii\0" "glBindTexture\0" "glBindTextureEXT\0" "\0" - /* _mesa_function_pool[29863]: BeginFragmentShaderATI (will be remapped) */ + /* _mesa_function_pool[30206]: BeginFragmentShaderATI (will be remapped) */ "\0" "glBeginFragmentShaderATI\0" "\0" - /* _mesa_function_pool[29890]: MultiTexCoord4fARB (offset 402) */ + /* _mesa_function_pool[30233]: MultiTexCoord4fARB (offset 402) */ "iffff\0" "glMultiTexCoord4f\0" "glMultiTexCoord4fARB\0" "\0" - /* _mesa_function_pool[29936]: VertexAttribs3svNV (will be remapped) */ + /* _mesa_function_pool[30279]: VertexAttribs3svNV (will be remapped) */ "iip\0" "glVertexAttribs3svNV\0" "\0" - /* _mesa_function_pool[29962]: StencilFunc (offset 243) */ + /* _mesa_function_pool[30305]: StencilFunc (offset 243) */ "iii\0" "glStencilFunc\0" "\0" - /* _mesa_function_pool[29981]: CopyPixels (offset 255) */ + /* _mesa_function_pool[30324]: CopyPixels (offset 255) */ "iiiii\0" "glCopyPixels\0" "\0" - /* _mesa_function_pool[30001]: Rectsv (offset 93) */ + /* _mesa_function_pool[30344]: Rectsv (offset 93) */ "pp\0" "glRectsv\0" "\0" - /* _mesa_function_pool[30014]: ReplacementCodeuivSUN (dynamic) */ + /* _mesa_function_pool[30357]: ReplacementCodeuivSUN (dynamic) */ "p\0" "glReplacementCodeuivSUN\0" "\0" - /* _mesa_function_pool[30041]: EnableVertexAttribArrayARB (will be remapped) */ + /* _mesa_function_pool[30384]: EnableVertexAttribArrayARB (will be remapped) */ "i\0" "glEnableVertexAttribArray\0" "glEnableVertexAttribArrayARB\0" "\0" - /* _mesa_function_pool[30099]: NormalPointervINTEL (dynamic) */ + /* _mesa_function_pool[30442]: NormalPointervINTEL (dynamic) */ "ip\0" "glNormalPointervINTEL\0" "\0" - /* _mesa_function_pool[30125]: CopyConvolutionFilter2D (offset 355) */ + /* _mesa_function_pool[30468]: CopyConvolutionFilter2D (offset 355) */ "iiiiii\0" "glCopyConvolutionFilter2D\0" "glCopyConvolutionFilter2DEXT\0" "\0" - /* _mesa_function_pool[30188]: WindowPos3ivMESA (will be remapped) */ + /* _mesa_function_pool[30531]: WindowPos3ivMESA (will be remapped) */ "p\0" "glWindowPos3iv\0" "glWindowPos3ivARB\0" "glWindowPos3ivMESA\0" "\0" - /* _mesa_function_pool[30243]: CopyBufferSubData (will be remapped) */ + /* _mesa_function_pool[30586]: CopyBufferSubData (will be remapped) */ "iiiii\0" "glCopyBufferSubData\0" "\0" - /* _mesa_function_pool[30270]: NormalPointer (offset 318) */ + /* _mesa_function_pool[30613]: NormalPointer (offset 318) */ "iip\0" "glNormalPointer\0" "\0" - /* _mesa_function_pool[30291]: TexParameterfv (offset 179) */ + /* _mesa_function_pool[30634]: TexParameterfv (offset 179) */ "iip\0" "glTexParameterfv\0" "\0" - /* _mesa_function_pool[30313]: IsBufferARB (will be remapped) */ + /* _mesa_function_pool[30656]: IsBufferARB (will be remapped) */ "i\0" "glIsBuffer\0" "glIsBufferARB\0" "\0" - /* _mesa_function_pool[30341]: WindowPos4iMESA (will be remapped) */ + /* _mesa_function_pool[30684]: WindowPos4iMESA (will be remapped) */ "iiii\0" "glWindowPos4iMESA\0" "\0" - /* _mesa_function_pool[30365]: VertexAttrib4uivARB (will be remapped) */ + /* _mesa_function_pool[30708]: VertexAttrib4uivARB (will be remapped) */ "ip\0" "glVertexAttrib4uiv\0" "glVertexAttrib4uivARB\0" "\0" - /* _mesa_function_pool[30410]: Tangent3bvEXT (dynamic) */ + /* _mesa_function_pool[30753]: Tangent3bvEXT (dynamic) */ "p\0" "glTangent3bvEXT\0" "\0" - /* _mesa_function_pool[30429]: VertexAttribI3uivEXT (will be remapped) */ + /* _mesa_function_pool[30772]: VertexAttribI3uivEXT (will be remapped) */ "ip\0" "glVertexAttribI3uivEXT\0" "glVertexAttribI3uiv\0" "\0" - /* _mesa_function_pool[30476]: UniformMatrix3x4fv (will be remapped) */ + /* _mesa_function_pool[30819]: UniformMatrix3x4fv (will be remapped) */ "iiip\0" "glUniformMatrix3x4fv\0" "\0" - /* _mesa_function_pool[30503]: ClipPlane (offset 150) */ + /* _mesa_function_pool[30846]: ClipPlane (offset 150) */ "ip\0" "glClipPlane\0" "\0" - /* _mesa_function_pool[30519]: Recti (offset 90) */ + /* _mesa_function_pool[30862]: Recti (offset 90) */ "iiii\0" "glRecti\0" "\0" - /* _mesa_function_pool[30533]: VertexAttribI3ivEXT (will be remapped) */ - "ip\0" - "glVertexAttribI3ivEXT\0" - "glVertexAttribI3iv\0" + /* _mesa_function_pool[30876]: TrackMatrixNV (will be remapped) */ + "iiii\0" + "glTrackMatrixNV\0" "\0" - /* _mesa_function_pool[30578]: DrawRangeElementsBaseVertex (will be remapped) */ + /* _mesa_function_pool[30898]: DrawRangeElementsBaseVertex (will be remapped) */ "iiiiipi\0" "glDrawRangeElementsBaseVertex\0" "\0" - /* _mesa_function_pool[30617]: TexCoordPointervINTEL (dynamic) */ + /* _mesa_function_pool[30937]: SamplerParameterIuiv (will be remapped) */ + "iip\0" + "glSamplerParameterIuiv\0" + "\0" + /* _mesa_function_pool[30965]: TexCoordPointervINTEL (dynamic) */ "iip\0" "glTexCoordPointervINTEL\0" "\0" - /* _mesa_function_pool[30646]: DeleteBuffersARB (will be remapped) */ + /* _mesa_function_pool[30994]: DeleteBuffersARB (will be remapped) */ "ip\0" "glDeleteBuffers\0" "glDeleteBuffersARB\0" "\0" - /* _mesa_function_pool[30685]: PixelTransformParameterfvEXT (dynamic) */ + /* _mesa_function_pool[31033]: PixelTransformParameterfvEXT (dynamic) */ "iip\0" "glPixelTransformParameterfvEXT\0" "\0" - /* _mesa_function_pool[30721]: PrimitiveRestartNV (will be remapped) */ + /* _mesa_function_pool[31069]: PrimitiveRestartNV (will be remapped) */ "\0" "glPrimitiveRestartNV\0" "\0" - /* _mesa_function_pool[30744]: WindowPos4fvMESA (will be remapped) */ + /* _mesa_function_pool[31092]: WindowPos4fvMESA (will be remapped) */ "p\0" "glWindowPos4fvMESA\0" "\0" - /* _mesa_function_pool[30766]: GetPixelMapuiv (offset 272) */ + /* _mesa_function_pool[31114]: GetPixelMapuiv (offset 272) */ "ip\0" "glGetPixelMapuiv\0" "\0" - /* _mesa_function_pool[30787]: Rectf (offset 88) */ + /* _mesa_function_pool[31135]: Rectf (offset 88) */ "ffff\0" "glRectf\0" "\0" - /* _mesa_function_pool[30801]: VertexAttrib1sNV (will be remapped) */ + /* _mesa_function_pool[31149]: VertexAttrib1sNV (will be remapped) */ "ii\0" "glVertexAttrib1sNV\0" "\0" - /* _mesa_function_pool[30824]: Indexfv (offset 47) */ + /* _mesa_function_pool[31172]: Indexfv (offset 47) */ "p\0" "glIndexfv\0" "\0" - /* _mesa_function_pool[30837]: SecondaryColor3svEXT (will be remapped) */ + /* _mesa_function_pool[31185]: SecondaryColor3svEXT (will be remapped) */ "p\0" "glSecondaryColor3sv\0" "glSecondaryColor3svEXT\0" "\0" - /* _mesa_function_pool[30883]: LoadTransposeMatrixfARB (will be remapped) */ + /* _mesa_function_pool[31231]: LoadTransposeMatrixfARB (will be remapped) */ "p\0" "glLoadTransposeMatrixf\0" "glLoadTransposeMatrixfARB\0" "\0" - /* _mesa_function_pool[30935]: GetPointerv (offset 329) */ + /* _mesa_function_pool[31283]: GetPointerv (offset 329) */ "ip\0" "glGetPointerv\0" "glGetPointervEXT\0" "\0" - /* _mesa_function_pool[30970]: Tangent3bEXT (dynamic) */ + /* _mesa_function_pool[31318]: Tangent3bEXT (dynamic) */ "iii\0" "glTangent3bEXT\0" "\0" - /* _mesa_function_pool[30990]: CombinerParameterfNV (will be remapped) */ + /* _mesa_function_pool[31338]: CombinerParameterfNV (will be remapped) */ "if\0" "glCombinerParameterfNV\0" "\0" - /* _mesa_function_pool[31017]: IndexMask (offset 212) */ + /* _mesa_function_pool[31365]: IndexMask (offset 212) */ "i\0" "glIndexMask\0" "\0" - /* _mesa_function_pool[31032]: BindProgramNV (will be remapped) */ + /* _mesa_function_pool[31380]: BindProgramNV (will be remapped) */ "ii\0" "glBindProgramARB\0" "glBindProgramNV\0" "\0" - /* _mesa_function_pool[31069]: VertexAttrib4svARB (will be remapped) */ + /* _mesa_function_pool[31417]: VertexAttrib4svARB (will be remapped) */ "ip\0" "glVertexAttrib4sv\0" "glVertexAttrib4svARB\0" "\0" - /* _mesa_function_pool[31112]: GetFloatv (offset 262) */ + /* _mesa_function_pool[31460]: GetFloatv (offset 262) */ "ip\0" "glGetFloatv\0" "\0" - /* _mesa_function_pool[31128]: CreateDebugObjectMESA (dynamic) */ + /* _mesa_function_pool[31476]: CreateDebugObjectMESA (dynamic) */ "\0" "glCreateDebugObjectMESA\0" "\0" - /* _mesa_function_pool[31154]: GetShaderiv (will be remapped) */ + /* _mesa_function_pool[31502]: GetShaderiv (will be remapped) */ "iip\0" "glGetShaderiv\0" "\0" - /* _mesa_function_pool[31173]: ClientWaitSync (will be remapped) */ + /* _mesa_function_pool[31521]: ClientWaitSync (will be remapped) */ "iii\0" "glClientWaitSync\0" "\0" - /* _mesa_function_pool[31195]: TexCoord4s (offset 124) */ + /* _mesa_function_pool[31543]: TexCoord4s (offset 124) */ "iiii\0" "glTexCoord4s\0" "\0" - /* _mesa_function_pool[31214]: TexCoord3sv (offset 117) */ + /* _mesa_function_pool[31562]: TexCoord3sv (offset 117) */ "p\0" "glTexCoord3sv\0" "\0" - /* _mesa_function_pool[31231]: BindFragmentShaderATI (will be remapped) */ + /* _mesa_function_pool[31579]: BindFragmentShaderATI (will be remapped) */ "i\0" "glBindFragmentShaderATI\0" "\0" - /* _mesa_function_pool[31258]: PopAttrib (offset 218) */ + /* _mesa_function_pool[31606]: PopAttrib (offset 218) */ "\0" "glPopAttrib\0" "\0" - /* _mesa_function_pool[31272]: Fogfv (offset 154) */ + /* _mesa_function_pool[31620]: Fogfv (offset 154) */ "ip\0" "glFogfv\0" "\0" - /* _mesa_function_pool[31284]: UnmapBufferARB (will be remapped) */ + /* _mesa_function_pool[31632]: UnmapBufferARB (will be remapped) */ "i\0" "glUnmapBuffer\0" "glUnmapBufferARB\0" "\0" - /* _mesa_function_pool[31318]: InitNames (offset 197) */ + /* _mesa_function_pool[31666]: InitNames (offset 197) */ "\0" "glInitNames\0" "\0" - /* _mesa_function_pool[31332]: Normal3sv (offset 61) */ + /* _mesa_function_pool[31680]: Normal3sv (offset 61) */ "p\0" "glNormal3sv\0" "\0" - /* _mesa_function_pool[31347]: Minmax (offset 368) */ + /* _mesa_function_pool[31695]: Minmax (offset 368) */ "iii\0" "glMinmax\0" "glMinmaxEXT\0" "\0" - /* _mesa_function_pool[31373]: TexCoord4d (offset 118) */ + /* _mesa_function_pool[31721]: TexCoord4d (offset 118) */ "dddd\0" "glTexCoord4d\0" "\0" - /* _mesa_function_pool[31392]: DeformationMap3dSGIX (dynamic) */ + /* _mesa_function_pool[31740]: DeformationMap3dSGIX (dynamic) */ "iddiiddiiddiip\0" "glDeformationMap3dSGIX\0" "\0" - /* _mesa_function_pool[31431]: TexCoord4f (offset 120) */ + /* _mesa_function_pool[31779]: TexCoord4f (offset 120) */ "ffff\0" "glTexCoord4f\0" "\0" - /* _mesa_function_pool[31450]: FogCoorddvEXT (will be remapped) */ + /* _mesa_function_pool[31798]: FogCoorddvEXT (will be remapped) */ "p\0" "glFogCoorddv\0" "glFogCoorddvEXT\0" "\0" - /* _mesa_function_pool[31482]: FinishTextureSUNX (dynamic) */ + /* _mesa_function_pool[31830]: FinishTextureSUNX (dynamic) */ "\0" "glFinishTextureSUNX\0" "\0" - /* _mesa_function_pool[31504]: GetFragmentLightfvSGIX (dynamic) */ + /* _mesa_function_pool[31852]: GetFragmentLightfvSGIX (dynamic) */ "iip\0" "glGetFragmentLightfvSGIX\0" "\0" - /* _mesa_function_pool[31534]: Binormal3fvEXT (dynamic) */ + /* _mesa_function_pool[31882]: Binormal3fvEXT (dynamic) */ "p\0" "glBinormal3fvEXT\0" "\0" - /* _mesa_function_pool[31554]: GetBooleanv (offset 258) */ + /* _mesa_function_pool[31902]: GetBooleanv (offset 258) */ "ip\0" "glGetBooleanv\0" "\0" - /* _mesa_function_pool[31572]: ColorFragmentOp3ATI (will be remapped) */ + /* _mesa_function_pool[31920]: ColorFragmentOp3ATI (will be remapped) */ "iiiiiiiiiiiii\0" "glColorFragmentOp3ATI\0" "\0" - /* _mesa_function_pool[31609]: Hint (offset 158) */ + /* _mesa_function_pool[31957]: Hint (offset 158) */ "ii\0" "glHint\0" "\0" - /* _mesa_function_pool[31620]: Color4dv (offset 28) */ + /* _mesa_function_pool[31968]: Color4dv (offset 28) */ "p\0" "glColor4dv\0" "\0" - /* _mesa_function_pool[31634]: VertexAttrib2svARB (will be remapped) */ + /* _mesa_function_pool[31982]: VertexAttrib2svARB (will be remapped) */ "ip\0" "glVertexAttrib2sv\0" "glVertexAttrib2svARB\0" "\0" - /* _mesa_function_pool[31677]: AreProgramsResidentNV (will be remapped) */ + /* _mesa_function_pool[32025]: AreProgramsResidentNV (will be remapped) */ "ipp\0" "glAreProgramsResidentNV\0" "\0" - /* _mesa_function_pool[31706]: WindowPos3svMESA (will be remapped) */ + /* _mesa_function_pool[32054]: WindowPos3svMESA (will be remapped) */ "p\0" "glWindowPos3sv\0" "glWindowPos3svARB\0" "glWindowPos3svMESA\0" "\0" - /* _mesa_function_pool[31761]: CopyColorSubTable (offset 347) */ + /* _mesa_function_pool[32109]: CopyColorSubTable (offset 347) */ "iiiii\0" "glCopyColorSubTable\0" "glCopyColorSubTableEXT\0" "\0" - /* _mesa_function_pool[31811]: WeightdvARB (dynamic) */ + /* _mesa_function_pool[32159]: WeightdvARB (dynamic) */ "ip\0" "glWeightdvARB\0" "\0" - /* _mesa_function_pool[31829]: DeleteRenderbuffersEXT (will be remapped) */ + /* _mesa_function_pool[32177]: DeleteRenderbuffersEXT (will be remapped) */ "ip\0" "glDeleteRenderbuffers\0" "glDeleteRenderbuffersEXT\0" "\0" - /* _mesa_function_pool[31880]: VertexAttrib4NubvARB (will be remapped) */ + /* _mesa_function_pool[32228]: VertexAttrib4NubvARB (will be remapped) */ "ip\0" "glVertexAttrib4Nubv\0" "glVertexAttrib4NubvARB\0" "\0" - /* _mesa_function_pool[31927]: VertexAttrib3dvNV (will be remapped) */ + /* _mesa_function_pool[32275]: VertexAttrib3dvNV (will be remapped) */ "ip\0" "glVertexAttrib3dvNV\0" "\0" - /* _mesa_function_pool[31951]: GetObjectParameterfvARB (will be remapped) */ + /* _mesa_function_pool[32299]: GetObjectParameterfvARB (will be remapped) */ "iip\0" "glGetObjectParameterfvARB\0" "\0" - /* _mesa_function_pool[31982]: Vertex4iv (offset 147) */ + /* _mesa_function_pool[32330]: Vertex4iv (offset 147) */ "p\0" "glVertex4iv\0" "\0" - /* _mesa_function_pool[31997]: GetProgramEnvParameterdvARB (will be remapped) */ + /* _mesa_function_pool[32345]: GetProgramEnvParameterdvARB (will be remapped) */ "iip\0" "glGetProgramEnvParameterdvARB\0" "\0" - /* _mesa_function_pool[32032]: TexCoord4dv (offset 119) */ + /* _mesa_function_pool[32380]: TexCoord4dv (offset 119) */ "p\0" "glTexCoord4dv\0" "\0" - /* _mesa_function_pool[32049]: LockArraysEXT (will be remapped) */ + /* _mesa_function_pool[32397]: LockArraysEXT (will be remapped) */ "ii\0" "glLockArraysEXT\0" "\0" - /* _mesa_function_pool[32069]: Begin (offset 7) */ + /* _mesa_function_pool[32417]: Begin (offset 7) */ "i\0" "glBegin\0" "\0" - /* _mesa_function_pool[32080]: LightModeli (offset 165) */ + /* _mesa_function_pool[32428]: LightModeli (offset 165) */ "ii\0" "glLightModeli\0" "\0" - /* _mesa_function_pool[32098]: VertexAttribI4ivEXT (will be remapped) */ + /* _mesa_function_pool[32446]: VertexAttribI4ivEXT (will be remapped) */ "ip\0" "glVertexAttribI4ivEXT\0" "glVertexAttribI4iv\0" "\0" - /* _mesa_function_pool[32143]: Rectfv (offset 89) */ + /* _mesa_function_pool[32491]: Rectfv (offset 89) */ "pp\0" "glRectfv\0" "\0" - /* _mesa_function_pool[32156]: LightModelf (offset 163) */ + /* _mesa_function_pool[32504]: LightModelf (offset 163) */ "if\0" "glLightModelf\0" "\0" - /* _mesa_function_pool[32174]: GetTexParameterfv (offset 282) */ + /* _mesa_function_pool[32522]: GetTexParameterfv (offset 282) */ "iip\0" "glGetTexParameterfv\0" "\0" - /* _mesa_function_pool[32199]: GetLightfv (offset 264) */ + /* _mesa_function_pool[32547]: GetLightfv (offset 264) */ "iip\0" "glGetLightfv\0" "\0" - /* _mesa_function_pool[32217]: PixelTransformParameterivEXT (dynamic) */ + /* _mesa_function_pool[32565]: PixelTransformParameterivEXT (dynamic) */ "iip\0" "glPixelTransformParameterivEXT\0" "\0" - /* _mesa_function_pool[32253]: BinormalPointerEXT (dynamic) */ + /* _mesa_function_pool[32601]: BinormalPointerEXT (dynamic) */ "iip\0" "glBinormalPointerEXT\0" "\0" - /* _mesa_function_pool[32279]: VertexAttrib1dNV (will be remapped) */ + /* _mesa_function_pool[32627]: VertexAttrib1dNV (will be remapped) */ "id\0" "glVertexAttrib1dNV\0" "\0" - /* _mesa_function_pool[32302]: GetCombinerInputParameterivNV (will be remapped) */ + /* _mesa_function_pool[32650]: GetCombinerInputParameterivNV (will be remapped) */ "iiiip\0" "glGetCombinerInputParameterivNV\0" "\0" - /* _mesa_function_pool[32341]: Disable (offset 214) */ + /* _mesa_function_pool[32689]: Disable (offset 214) */ "i\0" "glDisable\0" "\0" - /* _mesa_function_pool[32354]: MultiTexCoord2fvARB (offset 387) */ + /* _mesa_function_pool[32702]: MultiTexCoord2fvARB (offset 387) */ "ip\0" "glMultiTexCoord2fv\0" "glMultiTexCoord2fvARB\0" "\0" - /* _mesa_function_pool[32399]: GetRenderbufferParameterivEXT (will be remapped) */ + /* _mesa_function_pool[32747]: GetRenderbufferParameterivEXT (will be remapped) */ "iip\0" "glGetRenderbufferParameteriv\0" "glGetRenderbufferParameterivEXT\0" "\0" - /* _mesa_function_pool[32465]: CombinerParameterivNV (will be remapped) */ + /* _mesa_function_pool[32813]: CombinerParameterivNV (will be remapped) */ "ip\0" "glCombinerParameterivNV\0" "\0" - /* _mesa_function_pool[32493]: GenFragmentShadersATI (will be remapped) */ + /* _mesa_function_pool[32841]: GenFragmentShadersATI (will be remapped) */ "i\0" "glGenFragmentShadersATI\0" "\0" - /* _mesa_function_pool[32520]: DrawArrays (offset 310) */ + /* _mesa_function_pool[32868]: DrawArrays (offset 310) */ "iii\0" "glDrawArrays\0" "glDrawArraysEXT\0" "\0" - /* _mesa_function_pool[32554]: WeightuivARB (dynamic) */ + /* _mesa_function_pool[32902]: WeightuivARB (dynamic) */ "ip\0" "glWeightuivARB\0" "\0" - /* _mesa_function_pool[32573]: VertexAttrib2sARB (will be remapped) */ + /* _mesa_function_pool[32921]: VertexAttrib2sARB (will be remapped) */ "iii\0" "glVertexAttrib2s\0" "glVertexAttrib2sARB\0" "\0" - /* _mesa_function_pool[32615]: ColorMask (offset 210) */ + /* _mesa_function_pool[32963]: ColorMask (offset 210) */ "iiii\0" "glColorMask\0" "\0" - /* _mesa_function_pool[32633]: GenAsyncMarkersSGIX (dynamic) */ + /* _mesa_function_pool[32981]: GenAsyncMarkersSGIX (dynamic) */ "i\0" "glGenAsyncMarkersSGIX\0" "\0" - /* _mesa_function_pool[32658]: Tangent3svEXT (dynamic) */ + /* _mesa_function_pool[33006]: Tangent3svEXT (dynamic) */ "p\0" "glTangent3svEXT\0" "\0" - /* _mesa_function_pool[32677]: GetListParameterivSGIX (dynamic) */ + /* _mesa_function_pool[33025]: GetListParameterivSGIX (dynamic) */ "iip\0" "glGetListParameterivSGIX\0" "\0" - /* _mesa_function_pool[32707]: BindBufferARB (will be remapped) */ + /* _mesa_function_pool[33055]: BindBufferARB (will be remapped) */ "ii\0" "glBindBuffer\0" "glBindBufferARB\0" "\0" - /* _mesa_function_pool[32740]: GetInfoLogARB (will be remapped) */ + /* _mesa_function_pool[33088]: GetInfoLogARB (will be remapped) */ "iipp\0" "glGetInfoLogARB\0" "\0" - /* _mesa_function_pool[32762]: RasterPos4iv (offset 83) */ + /* _mesa_function_pool[33110]: RasterPos4iv (offset 83) */ "p\0" "glRasterPos4iv\0" "\0" - /* _mesa_function_pool[32780]: Enable (offset 215) */ + /* _mesa_function_pool[33128]: Enable (offset 215) */ "i\0" "glEnable\0" "\0" - /* _mesa_function_pool[32792]: LineStipple (offset 167) */ + /* _mesa_function_pool[33140]: LineStipple (offset 167) */ "ii\0" "glLineStipple\0" "\0" - /* _mesa_function_pool[32810]: VertexAttribs4svNV (will be remapped) */ + /* _mesa_function_pool[33158]: VertexAttribs4svNV (will be remapped) */ "iip\0" "glVertexAttribs4svNV\0" "\0" - /* _mesa_function_pool[32836]: EdgeFlagPointerListIBM (dynamic) */ + /* _mesa_function_pool[33184]: EdgeFlagPointerListIBM (dynamic) */ "ipi\0" "glEdgeFlagPointerListIBM\0" "\0" - /* _mesa_function_pool[32866]: UniformMatrix3x2fv (will be remapped) */ + /* _mesa_function_pool[33214]: UniformMatrix3x2fv (will be remapped) */ "iiip\0" "glUniformMatrix3x2fv\0" "\0" - /* _mesa_function_pool[32893]: GetMinmaxParameterfv (offset 365) */ + /* _mesa_function_pool[33241]: GetMinmaxParameterfv (offset 365) */ "iip\0" "glGetMinmaxParameterfv\0" "glGetMinmaxParameterfvEXT\0" "\0" - /* _mesa_function_pool[32947]: VertexAttrib1fvARB (will be remapped) */ + /* _mesa_function_pool[33295]: VertexAttrib1fvARB (will be remapped) */ "ip\0" "glVertexAttrib1fv\0" "glVertexAttrib1fvARB\0" "\0" - /* _mesa_function_pool[32990]: GenBuffersARB (will be remapped) */ + /* _mesa_function_pool[33338]: GenBuffersARB (will be remapped) */ "ip\0" "glGenBuffers\0" "glGenBuffersARB\0" "\0" - /* _mesa_function_pool[33023]: VertexAttribs1svNV (will be remapped) */ + /* _mesa_function_pool[33371]: VertexAttribs1svNV (will be remapped) */ "iip\0" "glVertexAttribs1svNV\0" "\0" - /* _mesa_function_pool[33049]: Vertex3fv (offset 137) */ + /* _mesa_function_pool[33397]: Vertex3fv (offset 137) */ "p\0" "glVertex3fv\0" "\0" - /* _mesa_function_pool[33064]: GetTexBumpParameterivATI (will be remapped) */ + /* _mesa_function_pool[33412]: GetTexBumpParameterivATI (will be remapped) */ "ip\0" "glGetTexBumpParameterivATI\0" "\0" - /* _mesa_function_pool[33095]: Binormal3bEXT (dynamic) */ + /* _mesa_function_pool[33443]: Binormal3bEXT (dynamic) */ "iii\0" "glBinormal3bEXT\0" "\0" - /* _mesa_function_pool[33116]: FragmentMaterialivSGIX (dynamic) */ + /* _mesa_function_pool[33464]: FragmentMaterialivSGIX (dynamic) */ "iip\0" "glFragmentMaterialivSGIX\0" "\0" - /* _mesa_function_pool[33146]: IsRenderbufferEXT (will be remapped) */ + /* _mesa_function_pool[33494]: IsRenderbufferEXT (will be remapped) */ "i\0" "glIsRenderbuffer\0" "glIsRenderbufferEXT\0" "\0" - /* _mesa_function_pool[33186]: GenProgramsNV (will be remapped) */ + /* _mesa_function_pool[33534]: GenProgramsNV (will be remapped) */ "ip\0" "glGenProgramsARB\0" "glGenProgramsNV\0" "\0" - /* _mesa_function_pool[33223]: VertexAttrib4dvNV (will be remapped) */ + /* _mesa_function_pool[33571]: VertexAttrib4dvNV (will be remapped) */ "ip\0" "glVertexAttrib4dvNV\0" "\0" - /* _mesa_function_pool[33247]: EndFragmentShaderATI (will be remapped) */ + /* _mesa_function_pool[33595]: EndFragmentShaderATI (will be remapped) */ "\0" "glEndFragmentShaderATI\0" "\0" - /* _mesa_function_pool[33272]: Binormal3iEXT (dynamic) */ + /* _mesa_function_pool[33620]: Binormal3iEXT (dynamic) */ "iii\0" "glBinormal3iEXT\0" "\0" - /* _mesa_function_pool[33293]: WindowPos2fMESA (will be remapped) */ + /* _mesa_function_pool[33641]: WindowPos2fMESA (will be remapped) */ "ff\0" "glWindowPos2f\0" "glWindowPos2fARB\0" @@ -4792,491 +4848,505 @@ static const char _mesa_function_pool[] = /* these functions need to be remapped */ static const struct gl_function_pool_remap MESA_remap_table_functions[] = { { 1577, AttachShader_remap_index }, - { 9906, CreateProgram_remap_index }, - { 23042, CreateShader_remap_index }, - { 25529, DeleteProgram_remap_index }, - { 18686, DeleteShader_remap_index }, - { 23543, DetachShader_remap_index }, - { 18052, GetAttachedShaders_remap_index }, - { 4869, GetProgramInfoLog_remap_index }, + { 9967, CreateProgram_remap_index }, + { 23300, CreateShader_remap_index }, + { 25832, DeleteProgram_remap_index }, + { 18888, DeleteShader_remap_index }, + { 23801, DetachShader_remap_index }, + { 18202, GetAttachedShaders_remap_index }, + { 4919, GetProgramInfoLog_remap_index }, { 405, GetProgramiv_remap_index }, - { 6542, GetShaderInfoLog_remap_index }, - { 31154, GetShaderiv_remap_index }, - { 13361, IsProgram_remap_index }, - { 12282, IsShader_remap_index }, - { 10036, StencilFuncSeparate_remap_index }, + { 6627, GetShaderInfoLog_remap_index }, + { 31502, GetShaderiv_remap_index }, + { 13443, IsProgram_remap_index }, + { 12364, IsShader_remap_index }, + { 10097, StencilFuncSeparate_remap_index }, { 3921, StencilMaskSeparate_remap_index }, - { 7607, StencilOpSeparate_remap_index }, - { 22330, UniformMatrix2x3fv_remap_index }, + { 7692, StencilOpSeparate_remap_index }, + { 22560, UniformMatrix2x3fv_remap_index }, { 2847, UniformMatrix2x4fv_remap_index }, - { 32866, UniformMatrix3x2fv_remap_index }, - { 30476, UniformMatrix3x4fv_remap_index }, - { 16309, UniformMatrix4x2fv_remap_index }, + { 33214, UniformMatrix3x2fv_remap_index }, + { 30819, UniformMatrix3x4fv_remap_index }, + { 16406, UniformMatrix4x2fv_remap_index }, { 3263, UniformMatrix4x3fv_remap_index }, - { 5030, ClampColor_remap_index }, - { 18106, ClearBufferfi_remap_index }, - { 17548, ClearBufferfv_remap_index }, - { 29499, ClearBufferiv_remap_index }, - { 13566, ClearBufferuiv_remap_index }, - { 19969, GetStringi_remap_index }, + { 5080, ClampColor_remap_index }, + { 18256, ClearBufferfi_remap_index }, + { 17698, ClearBufferfv_remap_index }, + { 29842, ClearBufferiv_remap_index }, + { 13648, ClearBufferuiv_remap_index }, + { 20199, GetStringi_remap_index }, { 2788, TexBuffer_remap_index }, { 938, FramebufferTexture_remap_index }, - { 26555, GetBufferParameteri64v_remap_index }, - { 10136, GetInteger64i_v_remap_index }, - { 23356, VertexAttribDivisor_remap_index }, - { 9924, LoadTransposeMatrixdARB_remap_index }, - { 30883, LoadTransposeMatrixfARB_remap_index }, - { 5608, MultTransposeMatrixdARB_remap_index }, - { 23730, MultTransposeMatrixfARB_remap_index }, + { 26868, GetBufferParameteri64v_remap_index }, + { 10197, GetInteger64i_v_remap_index }, + { 23614, VertexAttribDivisor_remap_index }, + { 9985, LoadTransposeMatrixdARB_remap_index }, + { 31231, LoadTransposeMatrixfARB_remap_index }, + { 5693, MultTransposeMatrixdARB_remap_index }, + { 23988, MultTransposeMatrixfARB_remap_index }, { 216, SampleCoverageARB_remap_index }, - { 5834, CompressedTexImage1DARB_remap_index }, - { 24258, CompressedTexImage2DARB_remap_index }, + { 5919, CompressedTexImage1DARB_remap_index }, + { 24516, CompressedTexImage2DARB_remap_index }, { 3984, CompressedTexImage3DARB_remap_index }, - { 18403, CompressedTexSubImage1DARB_remap_index }, + { 18544, CompressedTexSubImage1DARB_remap_index }, { 2050, CompressedTexSubImage2DARB_remap_index }, - { 20391, CompressedTexSubImage3DARB_remap_index }, - { 28635, GetCompressedTexImageARB_remap_index }, + { 20621, CompressedTexSubImage3DARB_remap_index }, + { 28948, GetCompressedTexImageARB_remap_index }, { 3829, DisableVertexAttribArrayARB_remap_index }, - { 30041, EnableVertexAttribArrayARB_remap_index }, - { 31997, GetProgramEnvParameterdvARB_remap_index }, - { 23610, GetProgramEnvParameterfvARB_remap_index }, - { 27552, GetProgramLocalParameterdvARB_remap_index }, - { 8049, GetProgramLocalParameterfvARB_remap_index }, - { 18537, GetProgramStringARB_remap_index }, - { 27747, GetProgramivARB_remap_index }, - { 20586, GetVertexAttribdvARB_remap_index }, - { 16117, GetVertexAttribfvARB_remap_index }, - { 9748, GetVertexAttribivARB_remap_index }, - { 19450, ProgramEnvParameter4dARB_remap_index }, - { 25279, ProgramEnvParameter4dvARB_remap_index }, - { 16870, ProgramEnvParameter4fARB_remap_index }, - { 8948, ProgramEnvParameter4fvARB_remap_index }, + { 30384, EnableVertexAttribArrayARB_remap_index }, + { 32345, GetProgramEnvParameterdvARB_remap_index }, + { 23868, GetProgramEnvParameterfvARB_remap_index }, + { 27865, GetProgramLocalParameterdvARB_remap_index }, + { 8134, GetProgramLocalParameterfvARB_remap_index }, + { 18720, GetProgramStringARB_remap_index }, + { 28060, GetProgramivARB_remap_index }, + { 20816, GetVertexAttribdvARB_remap_index }, + { 16214, GetVertexAttribfvARB_remap_index }, + { 9809, GetVertexAttribivARB_remap_index }, + { 19662, ProgramEnvParameter4dARB_remap_index }, + { 25582, ProgramEnvParameter4dvARB_remap_index }, + { 17020, ProgramEnvParameter4fARB_remap_index }, + { 9009, ProgramEnvParameter4fvARB_remap_index }, { 3947, ProgramLocalParameter4dARB_remap_index }, - { 13071, ProgramLocalParameter4dvARB_remap_index }, - { 29520, ProgramLocalParameter4fARB_remap_index }, - { 25915, ProgramLocalParameter4fvARB_remap_index }, - { 28389, ProgramStringARB_remap_index }, - { 19700, VertexAttrib1dARB_remap_index }, - { 15771, VertexAttrib1dvARB_remap_index }, - { 4122, VertexAttrib1fARB_remap_index }, - { 32947, VertexAttrib1fvARB_remap_index }, - { 7133, VertexAttrib1sARB_remap_index }, + { 13153, ProgramLocalParameter4dvARB_remap_index }, + { 29863, ProgramLocalParameter4fARB_remap_index }, + { 26228, ProgramLocalParameter4fvARB_remap_index }, + { 28702, ProgramStringARB_remap_index }, + { 19930, VertexAttrib1dARB_remap_index }, + { 15868, VertexAttrib1dvARB_remap_index }, + { 4143, VertexAttrib1fARB_remap_index }, + { 33295, VertexAttrib1fvARB_remap_index }, + { 7218, VertexAttrib1sARB_remap_index }, { 2224, VertexAttrib1svARB_remap_index }, - { 15202, VertexAttrib2dARB_remap_index }, - { 17569, VertexAttrib2dvARB_remap_index }, + { 15299, VertexAttrib2dARB_remap_index }, + { 17719, VertexAttrib2dvARB_remap_index }, { 1596, VertexAttrib2fARB_remap_index }, - { 17682, VertexAttrib2fvARB_remap_index }, - { 32573, VertexAttrib2sARB_remap_index }, - { 31634, VertexAttrib2svARB_remap_index }, - { 11287, VertexAttrib3dARB_remap_index }, - { 8615, VertexAttrib3dvARB_remap_index }, + { 17832, VertexAttrib2fvARB_remap_index }, + { 32921, VertexAttrib2sARB_remap_index }, + { 31982, VertexAttrib2svARB_remap_index }, + { 11348, VertexAttrib3dARB_remap_index }, + { 8676, VertexAttrib3dvARB_remap_index }, { 1683, VertexAttrib3fARB_remap_index }, - { 22593, VertexAttrib3fvARB_remap_index }, - { 28236, VertexAttrib3sARB_remap_index }, - { 20328, VertexAttrib3svARB_remap_index }, - { 4895, VertexAttrib4NbvARB_remap_index }, - { 17929, VertexAttrib4NivARB_remap_index }, - { 22548, VertexAttrib4NsvARB_remap_index }, - { 23562, VertexAttrib4NubARB_remap_index }, - { 31880, VertexAttrib4NubvARB_remap_index }, - { 19111, VertexAttrib4NuivARB_remap_index }, + { 22851, VertexAttrib3fvARB_remap_index }, + { 28549, VertexAttrib3sARB_remap_index }, + { 20558, VertexAttrib3svARB_remap_index }, + { 4945, VertexAttrib4NbvARB_remap_index }, + { 18079, VertexAttrib4NivARB_remap_index }, + { 22806, VertexAttrib4NsvARB_remap_index }, + { 23820, VertexAttrib4NubARB_remap_index }, + { 32228, VertexAttrib4NubvARB_remap_index }, + { 19313, VertexAttrib4NuivARB_remap_index }, { 3136, VertexAttrib4NusvARB_remap_index }, - { 10876, VertexAttrib4bvARB_remap_index }, - { 26925, VertexAttrib4dARB_remap_index }, - { 21350, VertexAttrib4dvARB_remap_index }, - { 11441, VertexAttrib4fARB_remap_index }, - { 11845, VertexAttrib4fvARB_remap_index }, - { 10252, VertexAttrib4ivARB_remap_index }, - { 17362, VertexAttrib4sARB_remap_index }, - { 31069, VertexAttrib4svARB_remap_index }, - { 16675, VertexAttrib4ubvARB_remap_index }, - { 30365, VertexAttrib4uivARB_remap_index }, - { 20139, VertexAttrib4usvARB_remap_index }, - { 22145, VertexAttribPointerARB_remap_index }, - { 32707, BindBufferARB_remap_index }, - { 6840, BufferDataARB_remap_index }, + { 10937, VertexAttrib4bvARB_remap_index }, + { 27238, VertexAttrib4dARB_remap_index }, + { 21580, VertexAttrib4dvARB_remap_index }, + { 11502, VertexAttrib4fARB_remap_index }, + { 11906, VertexAttrib4fvARB_remap_index }, + { 10313, VertexAttrib4ivARB_remap_index }, + { 17512, VertexAttrib4sARB_remap_index }, + { 31417, VertexAttrib4svARB_remap_index }, + { 16825, VertexAttrib4ubvARB_remap_index }, + { 30708, VertexAttrib4uivARB_remap_index }, + { 20369, VertexAttrib4usvARB_remap_index }, + { 22375, VertexAttribPointerARB_remap_index }, + { 33055, BindBufferARB_remap_index }, + { 6925, BufferDataARB_remap_index }, { 1498, BufferSubDataARB_remap_index }, - { 30646, DeleteBuffersARB_remap_index }, - { 32990, GenBuffersARB_remap_index }, - { 17725, GetBufferParameterivARB_remap_index }, - { 16822, GetBufferPointervARB_remap_index }, + { 30994, DeleteBuffersARB_remap_index }, + { 33338, GenBuffersARB_remap_index }, + { 17875, GetBufferParameterivARB_remap_index }, + { 16972, GetBufferPointervARB_remap_index }, { 1451, GetBufferSubDataARB_remap_index }, - { 30313, IsBufferARB_remap_index }, - { 26399, MapBufferARB_remap_index }, - { 31284, UnmapBufferARB_remap_index }, + { 30656, IsBufferARB_remap_index }, + { 26712, MapBufferARB_remap_index }, + { 31632, UnmapBufferARB_remap_index }, { 312, BeginQueryARB_remap_index }, - { 19795, DeleteQueriesARB_remap_index }, - { 12172, EndQueryARB_remap_index }, - { 29114, GenQueriesARB_remap_index }, + { 20025, DeleteQueriesARB_remap_index }, + { 12225, EndQueryARB_remap_index }, + { 29427, GenQueriesARB_remap_index }, { 1942, GetQueryObjectivARB_remap_index }, - { 17406, GetQueryObjectuivARB_remap_index }, + { 17556, GetQueryObjectuivARB_remap_index }, { 1740, GetQueryivARB_remap_index }, - { 20046, IsQueryARB_remap_index }, - { 8225, AttachObjectARB_remap_index }, - { 18648, CompileShaderARB_remap_index }, + { 20276, IsQueryARB_remap_index }, + { 8286, AttachObjectARB_remap_index }, + { 18850, CompileShaderARB_remap_index }, { 3205, CreateProgramObjectARB_remap_index }, - { 6785, CreateShaderObjectARB_remap_index }, - { 14504, DeleteObjectARB_remap_index }, - { 24049, DetachObjectARB_remap_index }, - { 11917, GetActiveUniformARB_remap_index }, - { 9423, GetAttachedObjectsARB_remap_index }, - { 9730, GetHandleARB_remap_index }, - { 32740, GetInfoLogARB_remap_index }, - { 31951, GetObjectParameterfvARB_remap_index }, - { 27426, GetObjectParameterivARB_remap_index }, - { 28872, GetShaderSourceARB_remap_index }, - { 28096, GetUniformLocationARB_remap_index }, - { 23832, GetUniformfvARB_remap_index }, - { 12646, GetUniformivARB_remap_index }, - { 20184, LinkProgramARB_remap_index }, - { 20242, ShaderSourceARB_remap_index }, - { 7507, Uniform1fARB_remap_index }, - { 29729, Uniform1fvARB_remap_index }, - { 22114, Uniform1iARB_remap_index }, - { 21039, Uniform1ivARB_remap_index }, + { 6870, CreateShaderObjectARB_remap_index }, + { 14601, DeleteObjectARB_remap_index }, + { 24307, DetachObjectARB_remap_index }, + { 11970, GetActiveUniformARB_remap_index }, + { 9484, GetAttachedObjectsARB_remap_index }, + { 9791, GetHandleARB_remap_index }, + { 33088, GetInfoLogARB_remap_index }, + { 32299, GetObjectParameterfvARB_remap_index }, + { 27739, GetObjectParameterivARB_remap_index }, + { 29185, GetShaderSourceARB_remap_index }, + { 28409, GetUniformLocationARB_remap_index }, + { 24090, GetUniformfvARB_remap_index }, + { 12728, GetUniformivARB_remap_index }, + { 20414, LinkProgramARB_remap_index }, + { 20472, ShaderSourceARB_remap_index }, + { 7592, Uniform1fARB_remap_index }, + { 30072, Uniform1fvARB_remap_index }, + { 22344, Uniform1iARB_remap_index }, + { 21269, Uniform1ivARB_remap_index }, { 2173, Uniform2fARB_remap_index }, - { 14340, Uniform2fvARB_remap_index }, - { 26286, Uniform2iARB_remap_index }, + { 14437, Uniform2fvARB_remap_index }, + { 26599, Uniform2iARB_remap_index }, { 2293, Uniform2ivARB_remap_index }, - { 18758, Uniform3fARB_remap_index }, - { 9453, Uniform3fvARB_remap_index }, - { 6396, Uniform3iARB_remap_index }, - { 16928, Uniform3ivARB_remap_index }, - { 19256, Uniform4fARB_remap_index }, - { 23696, Uniform4fvARB_remap_index }, - { 24958, Uniform4iARB_remap_index }, - { 20552, Uniform4ivARB_remap_index }, - { 8277, UniformMatrix2fvARB_remap_index }, + { 18960, Uniform3fARB_remap_index }, + { 9514, Uniform3fvARB_remap_index }, + { 6481, Uniform3iARB_remap_index }, + { 17078, Uniform3ivARB_remap_index }, + { 19468, Uniform4fARB_remap_index }, + { 23954, Uniform4fvARB_remap_index }, + { 25216, Uniform4iARB_remap_index }, + { 20782, Uniform4ivARB_remap_index }, + { 8338, UniformMatrix2fvARB_remap_index }, { 17, UniformMatrix3fvARB_remap_index }, { 2690, UniformMatrix4fvARB_remap_index }, - { 25391, UseProgramObjectARB_remap_index }, - { 14890, ValidateProgramARB_remap_index }, - { 21393, BindAttribLocationARB_remap_index }, - { 4940, GetActiveAttribARB_remap_index }, - { 16576, GetAttribLocationARB_remap_index }, - { 29447, DrawBuffersARB_remap_index }, - { 29310, ClampColorARB_remap_index }, - { 17974, DrawArraysInstancedARB_remap_index }, - { 6457, DrawElementsInstancedARB_remap_index }, - { 13176, RenderbufferStorageMultisample_remap_index }, - { 13647, FramebufferTextureARB_remap_index }, - { 25817, FramebufferTextureFaceARB_remap_index }, - { 24198, ProgramParameteriARB_remap_index }, - { 23514, VertexAttribDivisorARB_remap_index }, - { 19304, FlushMappedBufferRange_remap_index }, - { 27863, MapBufferRange_remap_index }, - { 27770, TexBufferARB_remap_index }, - { 16420, BindVertexArray_remap_index }, - { 14713, GenVertexArrays_remap_index }, - { 30243, CopyBufferSubData_remap_index }, - { 31173, ClientWaitSync_remap_index }, + { 25694, UseProgramObjectARB_remap_index }, + { 14987, ValidateProgramARB_remap_index }, + { 21623, BindAttribLocationARB_remap_index }, + { 4990, GetActiveAttribARB_remap_index }, + { 16726, GetAttribLocationARB_remap_index }, + { 29790, DrawBuffersARB_remap_index }, + { 29623, ClampColorARB_remap_index }, + { 18124, DrawArraysInstancedARB_remap_index }, + { 6542, DrawElementsInstancedARB_remap_index }, + { 13258, RenderbufferStorageMultisample_remap_index }, + { 13729, FramebufferTextureARB_remap_index }, + { 26130, FramebufferTextureFaceARB_remap_index }, + { 24456, ProgramParameteriARB_remap_index }, + { 23772, VertexAttribDivisorARB_remap_index }, + { 19516, FlushMappedBufferRange_remap_index }, + { 28176, MapBufferRange_remap_index }, + { 28083, TexBufferARB_remap_index }, + { 16544, BindVertexArray_remap_index }, + { 14810, GenVertexArrays_remap_index }, + { 30586, CopyBufferSubData_remap_index }, + { 31521, ClientWaitSync_remap_index }, { 2609, DeleteSync_remap_index }, - { 7174, FenceSync_remap_index }, - { 15261, GetInteger64v_remap_index }, - { 22655, GetSynciv_remap_index }, - { 29386, IsSync_remap_index }, - { 9371, WaitSync_remap_index }, + { 7259, FenceSync_remap_index }, + { 15358, GetInteger64v_remap_index }, + { 22913, GetSynciv_remap_index }, + { 29729, IsSync_remap_index }, + { 9432, WaitSync_remap_index }, { 3797, DrawElementsBaseVertex_remap_index }, - { 30578, DrawRangeElementsBaseVertex_remap_index }, - { 26430, MultiDrawElementsBaseVertex_remap_index }, - { 16642, BlendEquationSeparateiARB_remap_index }, - { 17818, BlendEquationiARB_remap_index }, - { 12615, BlendFuncSeparateiARB_remap_index }, - { 9796, BlendFunciARB_remap_index }, - { 5091, BindTransformFeedback_remap_index }, + { 30898, DrawRangeElementsBaseVertex_remap_index }, + { 26743, MultiDrawElementsBaseVertex_remap_index }, + { 16792, BlendEquationSeparateiARB_remap_index }, + { 17968, BlendEquationiARB_remap_index }, + { 12697, BlendFuncSeparateiARB_remap_index }, + { 9857, BlendFunciARB_remap_index }, + { 8200, BindSampler_remap_index }, + { 4122, DeleteSamplers_remap_index }, + { 19889, GenSamplers_remap_index }, + { 29661, GetSamplerParameterIiv_remap_index }, + { 19410, GetSamplerParameterIuiv_remap_index }, + { 4839, GetSamplerParameterfv_remap_index }, + { 25851, GetSamplerParameteriv_remap_index }, + { 14355, IsSampler_remap_index }, + { 16497, SamplerParameterIiv_remap_index }, + { 30937, SamplerParameterIuiv_remap_index }, + { 22612, SamplerParameterf_remap_index }, + { 16653, SamplerParameterfv_remap_index }, + { 22587, SamplerParameteri_remap_index }, + { 18318, SamplerParameteriv_remap_index }, + { 5141, BindTransformFeedback_remap_index }, { 3232, DeleteTransformFeedbacks_remap_index }, - { 6429, DrawTransformFeedback_remap_index }, - { 9590, GenTransformFeedbacks_remap_index }, - { 28279, IsTransformFeedback_remap_index }, - { 26010, PauseTransformFeedback_remap_index }, - { 5528, ResumeTransformFeedback_remap_index }, - { 21713, ClearDepthf_remap_index }, - { 6733, DepthRangef_remap_index }, - { 14525, GetShaderPrecisionFormat_remap_index }, - { 9976, ReleaseShaderCompiler_remap_index }, - { 10919, ShaderBinary_remap_index }, - { 5396, PolygonOffsetEXT_remap_index }, - { 23277, GetPixelTexGenParameterfvSGIS_remap_index }, - { 4417, GetPixelTexGenParameterivSGIS_remap_index }, - { 23010, PixelTexGenParameterfSGIS_remap_index }, + { 6514, DrawTransformFeedback_remap_index }, + { 9651, GenTransformFeedbacks_remap_index }, + { 28592, IsTransformFeedback_remap_index }, + { 26323, PauseTransformFeedback_remap_index }, + { 5578, ResumeTransformFeedback_remap_index }, + { 21943, ClearDepthf_remap_index }, + { 6818, DepthRangef_remap_index }, + { 14622, GetShaderPrecisionFormat_remap_index }, + { 10037, ReleaseShaderCompiler_remap_index }, + { 10980, ShaderBinary_remap_index }, + { 5446, PolygonOffsetEXT_remap_index }, + { 23535, GetPixelTexGenParameterfvSGIS_remap_index }, + { 4438, GetPixelTexGenParameterivSGIS_remap_index }, + { 23268, PixelTexGenParameterfSGIS_remap_index }, { 624, PixelTexGenParameterfvSGIS_remap_index }, - { 12684, PixelTexGenParameteriSGIS_remap_index }, - { 13821, PixelTexGenParameterivSGIS_remap_index }, - { 18302, SampleMaskSGIS_remap_index }, - { 19986, SamplePatternSGIS_remap_index }, - { 26359, ColorPointerEXT_remap_index }, - { 17612, EdgeFlagPointerEXT_remap_index }, - { 6050, IndexPointerEXT_remap_index }, - { 6130, NormalPointerEXT_remap_index }, - { 15855, TexCoordPointerEXT_remap_index }, - { 6963, VertexPointerEXT_remap_index }, + { 12766, PixelTexGenParameteriSGIS_remap_index }, + { 13903, PixelTexGenParameterivSGIS_remap_index }, + { 18443, SampleMaskSGIS_remap_index }, + { 20216, SamplePatternSGIS_remap_index }, + { 26672, ColorPointerEXT_remap_index }, + { 17762, EdgeFlagPointerEXT_remap_index }, + { 6135, IndexPointerEXT_remap_index }, + { 6215, NormalPointerEXT_remap_index }, + { 15952, TexCoordPointerEXT_remap_index }, + { 7048, VertexPointerEXT_remap_index }, { 3599, PointParameterfEXT_remap_index }, - { 7814, PointParameterfvEXT_remap_index }, - { 32049, LockArraysEXT_remap_index }, - { 14954, UnlockArraysEXT_remap_index }, + { 7899, PointParameterfvEXT_remap_index }, + { 32397, LockArraysEXT_remap_index }, + { 15051, UnlockArraysEXT_remap_index }, { 1267, SecondaryColor3bEXT_remap_index }, - { 7973, SecondaryColor3bvEXT_remap_index }, - { 10429, SecondaryColor3dEXT_remap_index }, - { 25587, SecondaryColor3dvEXT_remap_index }, - { 28145, SecondaryColor3fEXT_remap_index }, - { 18339, SecondaryColor3fvEXT_remap_index }, + { 8058, SecondaryColor3bvEXT_remap_index }, + { 10490, SecondaryColor3dEXT_remap_index }, + { 25900, SecondaryColor3dvEXT_remap_index }, + { 28458, SecondaryColor3fEXT_remap_index }, + { 18480, SecondaryColor3fvEXT_remap_index }, { 470, SecondaryColor3iEXT_remap_index }, - { 16165, SecondaryColor3ivEXT_remap_index }, - { 10064, SecondaryColor3sEXT_remap_index }, - { 30837, SecondaryColor3svEXT_remap_index }, - { 27262, SecondaryColor3ubEXT_remap_index }, - { 21284, SecondaryColor3ubvEXT_remap_index }, - { 12926, SecondaryColor3uiEXT_remap_index }, - { 22897, SecondaryColor3uivEXT_remap_index }, - { 25867, SecondaryColor3usEXT_remap_index }, - { 12999, SecondaryColor3usvEXT_remap_index }, - { 11788, SecondaryColorPointerEXT_remap_index }, - { 25681, MultiDrawArraysEXT_remap_index }, - { 20974, MultiDrawElementsEXT_remap_index }, - { 21169, FogCoordPointerEXT_remap_index }, - { 4566, FogCoorddEXT_remap_index }, - { 31450, FogCoorddvEXT_remap_index }, - { 4683, FogCoordfEXT_remap_index }, - { 27185, FogCoordfvEXT_remap_index }, - { 19208, PixelTexGenSGIX_remap_index }, - { 27790, BlendFuncSeparateEXT_remap_index }, - { 6875, FlushVertexArrayRangeNV_remap_index }, - { 5345, VertexArrayRangeNV_remap_index }, - { 28210, CombinerInputNV_remap_index }, + { 16262, SecondaryColor3ivEXT_remap_index }, + { 10125, SecondaryColor3sEXT_remap_index }, + { 31185, SecondaryColor3svEXT_remap_index }, + { 27575, SecondaryColor3ubEXT_remap_index }, + { 21514, SecondaryColor3ubvEXT_remap_index }, + { 13008, SecondaryColor3uiEXT_remap_index }, + { 23155, SecondaryColor3uivEXT_remap_index }, + { 26180, SecondaryColor3usEXT_remap_index }, + { 13081, SecondaryColor3usvEXT_remap_index }, + { 11849, SecondaryColorPointerEXT_remap_index }, + { 25994, MultiDrawArraysEXT_remap_index }, + { 21204, MultiDrawElementsEXT_remap_index }, + { 21399, FogCoordPointerEXT_remap_index }, + { 4587, FogCoorddEXT_remap_index }, + { 31798, FogCoorddvEXT_remap_index }, + { 4704, FogCoordfEXT_remap_index }, + { 27498, FogCoordfvEXT_remap_index }, + { 11949, PixelTexGenSGIX_remap_index }, + { 28103, BlendFuncSeparateEXT_remap_index }, + { 6960, FlushVertexArrayRangeNV_remap_index }, + { 5395, VertexArrayRangeNV_remap_index }, + { 28523, CombinerInputNV_remap_index }, { 2116, CombinerOutputNV_remap_index }, - { 30990, CombinerParameterfNV_remap_index }, - { 5219, CombinerParameterfvNV_remap_index }, - { 22379, CombinerParameteriNV_remap_index }, - { 32465, CombinerParameterivNV_remap_index }, - { 7251, FinalCombinerInputNV_remap_index }, - { 9817, GetCombinerInputParameterfvNV_remap_index }, - { 32302, GetCombinerInputParameterivNV_remap_index }, - { 13922, GetCombinerOutputParameterfvNV_remap_index }, - { 13750, GetCombinerOutputParameterivNV_remap_index }, - { 6637, GetFinalCombinerInputParameterfvNV_remap_index }, - { 24830, GetFinalCombinerInputParameterivNV_remap_index }, - { 12593, ResizeBuffersMESA_remap_index }, - { 11114, WindowPos2dMESA_remap_index }, + { 31338, CombinerParameterfNV_remap_index }, + { 5269, CombinerParameterfvNV_remap_index }, + { 22637, CombinerParameteriNV_remap_index }, + { 32813, CombinerParameterivNV_remap_index }, + { 7336, FinalCombinerInputNV_remap_index }, + { 9878, GetCombinerInputParameterfvNV_remap_index }, + { 32650, GetCombinerInputParameterivNV_remap_index }, + { 14004, GetCombinerOutputParameterfvNV_remap_index }, + { 13832, GetCombinerOutputParameterivNV_remap_index }, + { 6722, GetFinalCombinerInputParameterfvNV_remap_index }, + { 25088, GetFinalCombinerInputParameterivNV_remap_index }, + { 12675, ResizeBuffersMESA_remap_index }, + { 11175, WindowPos2dMESA_remap_index }, { 1060, WindowPos2dvMESA_remap_index }, - { 33293, WindowPos2fMESA_remap_index }, - { 7918, WindowPos2fvMESA_remap_index }, - { 18249, WindowPos2iMESA_remap_index }, - { 20459, WindowPos2ivMESA_remap_index }, - { 21073, WindowPos2sMESA_remap_index }, - { 5748, WindowPos2svMESA_remap_index }, - { 7743, WindowPos3dMESA_remap_index }, - { 14068, WindowPos3dvMESA_remap_index }, + { 33641, WindowPos2fMESA_remap_index }, + { 8003, WindowPos2fvMESA_remap_index }, + { 18390, WindowPos2iMESA_remap_index }, + { 20689, WindowPos2ivMESA_remap_index }, + { 21303, WindowPos2sMESA_remap_index }, + { 5833, WindowPos2svMESA_remap_index }, + { 7828, WindowPos3dMESA_remap_index }, + { 14150, WindowPos3dvMESA_remap_index }, { 516, WindowPos3fMESA_remap_index }, - { 15015, WindowPos3fvMESA_remap_index }, - { 24091, WindowPos3iMESA_remap_index }, - { 30188, WindowPos3ivMESA_remap_index }, - { 18903, WindowPos3sMESA_remap_index }, - { 31706, WindowPos3svMESA_remap_index }, - { 11065, WindowPos4dMESA_remap_index }, - { 17066, WindowPos4dvMESA_remap_index }, - { 14027, WindowPos4fMESA_remap_index }, - { 30744, WindowPos4fvMESA_remap_index }, - { 30341, WindowPos4iMESA_remap_index }, - { 12396, WindowPos4ivMESA_remap_index }, - { 19087, WindowPos4sMESA_remap_index }, + { 15112, WindowPos3fvMESA_remap_index }, + { 24349, WindowPos3iMESA_remap_index }, + { 30531, WindowPos3ivMESA_remap_index }, + { 19105, WindowPos3sMESA_remap_index }, + { 32054, WindowPos3svMESA_remap_index }, + { 11126, WindowPos4dMESA_remap_index }, + { 17216, WindowPos4dvMESA_remap_index }, + { 14109, WindowPos4fMESA_remap_index }, + { 31092, WindowPos4fvMESA_remap_index }, + { 30684, WindowPos4iMESA_remap_index }, + { 12478, WindowPos4ivMESA_remap_index }, + { 19289, WindowPos4sMESA_remap_index }, { 3183, WindowPos4svMESA_remap_index }, - { 13789, MultiModeDrawArraysIBM_remap_index }, - { 28985, MultiModeDrawElementsIBM_remap_index }, - { 12200, DeleteFencesNV_remap_index }, - { 28057, FinishFenceNV_remap_index }, + { 13871, MultiModeDrawArraysIBM_remap_index }, + { 29298, MultiModeDrawElementsIBM_remap_index }, + { 12253, DeleteFencesNV_remap_index }, + { 28370, FinishFenceNV_remap_index }, { 3721, GenFencesNV_remap_index }, - { 17046, GetFenceivNV_remap_index }, - { 8210, IsFenceNV_remap_index }, - { 13677, SetFenceNV_remap_index }, - { 4178, TestFenceNV_remap_index }, - { 31677, AreProgramsResidentNV_remap_index }, - { 31032, BindProgramNV_remap_index }, - { 25950, DeleteProgramsNV_remap_index }, - { 21502, ExecuteProgramNV_remap_index }, - { 33186, GenProgramsNV_remap_index }, - { 23382, GetProgramParameterdvNV_remap_index }, - { 10491, GetProgramParameterfvNV_remap_index }, - { 26333, GetProgramStringNV_remap_index }, - { 24468, GetProgramivNV_remap_index }, - { 23645, GetTrackMatrixivNV_remap_index }, - { 26127, GetVertexAttribPointervNV_remap_index }, - { 24763, GetVertexAttribdvNV_remap_index }, - { 9266, GetVertexAttribfvNV_remap_index }, - { 18510, GetVertexAttribivNV_remap_index }, - { 19334, IsProgramNV_remap_index }, - { 9349, LoadProgramNV_remap_index }, - { 27886, ProgramParameters4dvNV_remap_index }, - { 24398, ProgramParameters4fvNV_remap_index }, - { 20763, RequestResidentProgramsNV_remap_index }, - { 22357, TrackMatrixNV_remap_index }, - { 32279, VertexAttrib1dNV_remap_index }, - { 13588, VertexAttrib1dvNV_remap_index }, - { 28491, VertexAttrib1fNV_remap_index }, + { 17196, GetFenceivNV_remap_index }, + { 8271, IsFenceNV_remap_index }, + { 13759, SetFenceNV_remap_index }, + { 4199, TestFenceNV_remap_index }, + { 32025, AreProgramsResidentNV_remap_index }, + { 31380, BindProgramNV_remap_index }, + { 26263, DeleteProgramsNV_remap_index }, + { 21732, ExecuteProgramNV_remap_index }, + { 33534, GenProgramsNV_remap_index }, + { 23640, GetProgramParameterdvNV_remap_index }, + { 10552, GetProgramParameterfvNV_remap_index }, + { 26646, GetProgramStringNV_remap_index }, + { 24726, GetProgramivNV_remap_index }, + { 23903, GetTrackMatrixivNV_remap_index }, + { 26440, GetVertexAttribPointervNV_remap_index }, + { 25021, GetVertexAttribdvNV_remap_index }, + { 9327, GetVertexAttribfvNV_remap_index }, + { 18693, GetVertexAttribivNV_remap_index }, + { 19546, IsProgramNV_remap_index }, + { 9410, LoadProgramNV_remap_index }, + { 28199, ProgramParameters4dvNV_remap_index }, + { 24656, ProgramParameters4fvNV_remap_index }, + { 20993, RequestResidentProgramsNV_remap_index }, + { 30876, TrackMatrixNV_remap_index }, + { 32627, VertexAttrib1dNV_remap_index }, + { 13670, VertexAttrib1dvNV_remap_index }, + { 28804, VertexAttrib1fNV_remap_index }, { 2415, VertexAttrib1fvNV_remap_index }, - { 30801, VertexAttrib1sNV_remap_index }, - { 15088, VertexAttrib1svNV_remap_index }, - { 4845, VertexAttrib2dNV_remap_index }, - { 13481, VertexAttrib2dvNV_remap_index }, - { 20218, VertexAttrib2fNV_remap_index }, - { 13047, VertexAttrib2fvNV_remap_index }, - { 5960, VertexAttrib2sNV_remap_index }, - { 18957, VertexAttrib2svNV_remap_index }, - { 11262, VertexAttrib3dNV_remap_index }, - { 31927, VertexAttrib3dvNV_remap_index }, - { 10303, VertexAttrib3fNV_remap_index }, - { 24790, VertexAttrib3fvNV_remap_index }, - { 22200, VertexAttrib3sNV_remap_index }, - { 23672, VertexAttrib3svNV_remap_index }, - { 28959, VertexAttrib4dNV_remap_index }, - { 33223, VertexAttrib4dvNV_remap_index }, - { 4467, VertexAttrib4fNV_remap_index }, - { 9399, VertexAttrib4fvNV_remap_index }, - { 26809, VertexAttrib4sNV_remap_index }, + { 31149, VertexAttrib1sNV_remap_index }, + { 15185, VertexAttrib1svNV_remap_index }, + { 4895, VertexAttrib2dNV_remap_index }, + { 13563, VertexAttrib2dvNV_remap_index }, + { 20448, VertexAttrib2fNV_remap_index }, + { 13129, VertexAttrib2fvNV_remap_index }, + { 6045, VertexAttrib2sNV_remap_index }, + { 19159, VertexAttrib2svNV_remap_index }, + { 11323, VertexAttrib3dNV_remap_index }, + { 32275, VertexAttrib3dvNV_remap_index }, + { 10364, VertexAttrib3fNV_remap_index }, + { 25048, VertexAttrib3fvNV_remap_index }, + { 22430, VertexAttrib3sNV_remap_index }, + { 23930, VertexAttrib3svNV_remap_index }, + { 29272, VertexAttrib4dNV_remap_index }, + { 33571, VertexAttrib4dvNV_remap_index }, + { 4488, VertexAttrib4fNV_remap_index }, + { 9460, VertexAttrib4fvNV_remap_index }, + { 27122, VertexAttrib4sNV_remap_index }, { 1409, VertexAttrib4svNV_remap_index }, - { 5003, VertexAttrib4ubNV_remap_index }, + { 5053, VertexAttrib4ubNV_remap_index }, { 778, VertexAttrib4ubvNV_remap_index }, - { 21682, VertexAttribPointerNV_remap_index }, + { 21912, VertexAttribPointerNV_remap_index }, { 2267, VertexAttribs1dvNV_remap_index }, - { 26215, VertexAttribs1fvNV_remap_index }, - { 33023, VertexAttribs1svNV_remap_index }, - { 10328, VertexAttribs2dvNV_remap_index }, - { 25352, VertexAttribs2fvNV_remap_index }, - { 17638, VertexAttribs2svNV_remap_index }, - { 5247, VertexAttribs3dvNV_remap_index }, + { 26528, VertexAttribs1fvNV_remap_index }, + { 33371, VertexAttribs1svNV_remap_index }, + { 10389, VertexAttribs2dvNV_remap_index }, + { 25655, VertexAttribs2fvNV_remap_index }, + { 17788, VertexAttribs2svNV_remap_index }, + { 5297, VertexAttribs3dvNV_remap_index }, { 2147, VertexAttribs3fvNV_remap_index }, - { 29936, VertexAttribs3svNV_remap_index }, - { 26899, VertexAttribs4dvNV_remap_index }, - { 5319, VertexAttribs4fvNV_remap_index }, - { 32810, VertexAttribs4svNV_remap_index }, - { 29684, VertexAttribs4ubvNV_remap_index }, - { 26969, GetTexBumpParameterfvATI_remap_index }, - { 33064, GetTexBumpParameterivATI_remap_index }, - { 18620, TexBumpParameterfvATI_remap_index }, - { 20634, TexBumpParameterivATI_remap_index }, - { 15634, AlphaFragmentOp1ATI_remap_index }, - { 25633, AlphaFragmentOp2ATI_remap_index }, - { 24706, AlphaFragmentOp3ATI_remap_index }, - { 29863, BeginFragmentShaderATI_remap_index }, - { 31231, BindFragmentShaderATI_remap_index }, - { 23801, ColorFragmentOp1ATI_remap_index }, - { 4345, ColorFragmentOp2ATI_remap_index }, - { 31572, ColorFragmentOp3ATI_remap_index }, - { 5485, DeleteFragmentShaderATI_remap_index }, - { 33247, EndFragmentShaderATI_remap_index }, - { 32493, GenFragmentShadersATI_remap_index }, - { 25506, PassTexCoordATI_remap_index }, - { 6943, SampleMapATI_remap_index }, - { 27080, SetFragmentShaderConstantATI_remap_index }, + { 30279, VertexAttribs3svNV_remap_index }, + { 27212, VertexAttribs4dvNV_remap_index }, + { 5369, VertexAttribs4fvNV_remap_index }, + { 33158, VertexAttribs4svNV_remap_index }, + { 30027, VertexAttribs4ubvNV_remap_index }, + { 27282, GetTexBumpParameterfvATI_remap_index }, + { 33412, GetTexBumpParameterivATI_remap_index }, + { 18803, TexBumpParameterfvATI_remap_index }, + { 20864, TexBumpParameterivATI_remap_index }, + { 15731, AlphaFragmentOp1ATI_remap_index }, + { 25946, AlphaFragmentOp2ATI_remap_index }, + { 24964, AlphaFragmentOp3ATI_remap_index }, + { 30206, BeginFragmentShaderATI_remap_index }, + { 31579, BindFragmentShaderATI_remap_index }, + { 24059, ColorFragmentOp1ATI_remap_index }, + { 4366, ColorFragmentOp2ATI_remap_index }, + { 31920, ColorFragmentOp3ATI_remap_index }, + { 5535, DeleteFragmentShaderATI_remap_index }, + { 33595, EndFragmentShaderATI_remap_index }, + { 32841, GenFragmentShadersATI_remap_index }, + { 25809, PassTexCoordATI_remap_index }, + { 7028, SampleMapATI_remap_index }, + { 27393, SetFragmentShaderConstantATI_remap_index }, { 363, PointParameteriNV_remap_index }, - { 14229, PointParameterivNV_remap_index }, - { 28798, ActiveStencilFaceEXT_remap_index }, - { 27526, BindVertexArrayAPPLE_remap_index }, + { 14311, PointParameterivNV_remap_index }, + { 29111, ActiveStencilFaceEXT_remap_index }, + { 27839, BindVertexArrayAPPLE_remap_index }, { 2737, DeleteVertexArraysAPPLE_remap_index }, - { 18079, GenVertexArraysAPPLE_remap_index }, - { 23447, IsVertexArrayAPPLE_remap_index }, + { 18229, GenVertexArraysAPPLE_remap_index }, + { 23705, IsVertexArrayAPPLE_remap_index }, { 819, GetProgramNamedParameterdvNV_remap_index }, { 3562, GetProgramNamedParameterfvNV_remap_index }, - { 27000, ProgramNamedParameter4dNV_remap_index }, - { 14588, ProgramNamedParameter4dvNV_remap_index }, - { 8882, ProgramNamedParameter4fNV_remap_index }, - { 11753, ProgramNamedParameter4fvNV_remap_index }, - { 16977, PrimitiveRestartIndexNV_remap_index }, - { 30721, PrimitiveRestartNV_remap_index }, - { 24377, DepthBoundsEXT_remap_index }, + { 27313, ProgramNamedParameter4dNV_remap_index }, + { 14685, ProgramNamedParameter4dvNV_remap_index }, + { 8943, ProgramNamedParameter4fNV_remap_index }, + { 11814, ProgramNamedParameter4fvNV_remap_index }, + { 17127, PrimitiveRestartIndexNV_remap_index }, + { 31069, PrimitiveRestartNV_remap_index }, + { 24635, DepthBoundsEXT_remap_index }, { 1159, BlendEquationSeparateEXT_remap_index }, - { 14789, BindFramebufferEXT_remap_index }, - { 25726, BindRenderbufferEXT_remap_index }, - { 9646, CheckFramebufferStatusEXT_remap_index }, - { 22698, DeleteFramebuffersEXT_remap_index }, - { 31829, DeleteRenderbuffersEXT_remap_index }, - { 13505, FramebufferRenderbufferEXT_remap_index }, - { 13694, FramebufferTexture1DEXT_remap_index }, - { 11547, FramebufferTexture2DEXT_remap_index }, - { 11167, FramebufferTexture3DEXT_remap_index }, - { 23313, GenFramebuffersEXT_remap_index }, - { 17503, GenRenderbuffersEXT_remap_index }, - { 6679, GenerateMipmapEXT_remap_index }, - { 21775, GetFramebufferAttachmentParameterivEXT_remap_index }, - { 32399, GetRenderbufferParameterivEXT_remap_index }, - { 20514, IsFramebufferEXT_remap_index }, - { 33146, IsRenderbufferEXT_remap_index }, - { 8157, RenderbufferStorageEXT_remap_index }, + { 14886, BindFramebufferEXT_remap_index }, + { 26039, BindRenderbufferEXT_remap_index }, + { 9707, CheckFramebufferStatusEXT_remap_index }, + { 22956, DeleteFramebuffersEXT_remap_index }, + { 32177, DeleteRenderbuffersEXT_remap_index }, + { 13587, FramebufferRenderbufferEXT_remap_index }, + { 13776, FramebufferTexture1DEXT_remap_index }, + { 11608, FramebufferTexture2DEXT_remap_index }, + { 11228, FramebufferTexture3DEXT_remap_index }, + { 23571, GenFramebuffersEXT_remap_index }, + { 17653, GenRenderbuffersEXT_remap_index }, + { 6764, GenerateMipmapEXT_remap_index }, + { 22005, GetFramebufferAttachmentParameterivEXT_remap_index }, + { 32747, GetRenderbufferParameterivEXT_remap_index }, + { 20744, IsFramebufferEXT_remap_index }, + { 33494, IsRenderbufferEXT_remap_index }, + { 8218, RenderbufferStorageEXT_remap_index }, { 695, BlitFramebufferEXT_remap_index }, - { 14374, BufferParameteriAPPLE_remap_index }, - { 19366, FlushMappedBufferRangeAPPLE_remap_index }, + { 14471, BufferParameteriAPPLE_remap_index }, + { 19578, FlushMappedBufferRangeAPPLE_remap_index }, { 1815, BindFragDataLocationEXT_remap_index }, - { 24490, GetFragDataLocationEXT_remap_index }, - { 10606, GetUniformuivEXT_remap_index }, + { 24748, GetFragDataLocationEXT_remap_index }, + { 10667, GetUniformuivEXT_remap_index }, { 2933, GetVertexAttribIivEXT_remap_index }, - { 4195, GetVertexAttribIuivEXT_remap_index }, - { 12033, Uniform1uiEXT_remap_index }, - { 27971, Uniform1uivEXT_remap_index }, - { 22296, Uniform2uiEXT_remap_index }, - { 4309, Uniform2uivEXT_remap_index }, - { 29238, Uniform3uiEXT_remap_index }, - { 14735, Uniform3uivEXT_remap_index }, + { 4216, GetVertexAttribIuivEXT_remap_index }, + { 12086, Uniform1uiEXT_remap_index }, + { 28284, Uniform1uivEXT_remap_index }, + { 22526, Uniform2uiEXT_remap_index }, + { 4330, Uniform2uivEXT_remap_index }, + { 29551, Uniform3uiEXT_remap_index }, + { 14832, Uniform3uivEXT_remap_index }, { 3486, Uniform4uiEXT_remap_index }, - { 8658, Uniform4uivEXT_remap_index }, - { 18467, VertexAttribI1iEXT_remap_index }, + { 8719, Uniform4uivEXT_remap_index }, + { 18608, VertexAttribI1iEXT_remap_index }, { 965, VertexAttribI1ivEXT_remap_index }, { 2516, VertexAttribI1uiEXT_remap_index }, - { 12775, VertexAttribI1uivEXT_remap_index }, + { 12857, VertexAttribI1uivEXT_remap_index }, { 81, VertexAttribI2iEXT_remap_index }, - { 23913, VertexAttribI2ivEXT_remap_index }, - { 5273, VertexAttribI2uiEXT_remap_index }, - { 4728, VertexAttribI2uivEXT_remap_index }, - { 26601, VertexAttribI3iEXT_remap_index }, - { 30533, VertexAttribI3ivEXT_remap_index }, + { 24171, VertexAttribI2ivEXT_remap_index }, + { 5323, VertexAttribI2uiEXT_remap_index }, + { 4749, VertexAttribI2uivEXT_remap_index }, + { 26914, VertexAttribI3iEXT_remap_index }, + { 25373, VertexAttribI3ivEXT_remap_index }, { 3340, VertexAttribI3uiEXT_remap_index }, - { 30429, VertexAttribI3uivEXT_remap_index }, - { 22026, VertexAttribI4bvEXT_remap_index }, - { 14667, VertexAttribI4iEXT_remap_index }, - { 32098, VertexAttribI4ivEXT_remap_index }, - { 13408, VertexAttribI4svEXT_remap_index }, - { 16529, VertexAttribI4ubvEXT_remap_index }, - { 16228, VertexAttribI4uiEXT_remap_index }, - { 5419, VertexAttribI4uivEXT_remap_index }, - { 11330, VertexAttribI4usvEXT_remap_index }, - { 18564, VertexAttribIPointerEXT_remap_index }, + { 30772, VertexAttribI3uivEXT_remap_index }, + { 22256, VertexAttribI4bvEXT_remap_index }, + { 14764, VertexAttribI4iEXT_remap_index }, + { 32446, VertexAttribI4ivEXT_remap_index }, + { 13490, VertexAttribI4svEXT_remap_index }, + { 16679, VertexAttribI4ubvEXT_remap_index }, + { 16325, VertexAttribI4uiEXT_remap_index }, + { 5469, VertexAttribI4uivEXT_remap_index }, + { 11391, VertexAttribI4usvEXT_remap_index }, + { 18747, VertexAttribIPointerEXT_remap_index }, { 3027, FramebufferTextureLayerEXT_remap_index }, - { 5660, ColorMaskIndexedEXT_remap_index }, - { 18981, DisableIndexedEXT_remap_index }, - { 26646, EnableIndexedEXT_remap_index }, - { 21730, GetBooleanIndexedvEXT_remap_index }, - { 10941, GetIntegerIndexedvEXT_remap_index }, - { 22774, IsEnabledIndexedEXT_remap_index }, - { 22674, ClearColorIiEXT_remap_index }, + { 5745, ColorMaskIndexedEXT_remap_index }, + { 19183, DisableIndexedEXT_remap_index }, + { 26959, EnableIndexedEXT_remap_index }, + { 21960, GetBooleanIndexedvEXT_remap_index }, + { 11002, GetIntegerIndexedvEXT_remap_index }, + { 23032, IsEnabledIndexedEXT_remap_index }, + { 22932, ClearColorIiEXT_remap_index }, { 3436, ClearColorIuiEXT_remap_index }, - { 9856, GetTexParameterIivEXT_remap_index }, - { 5908, GetTexParameterIuivEXT_remap_index }, + { 9917, GetTexParameterIivEXT_remap_index }, + { 5993, GetTexParameterIuivEXT_remap_index }, { 2983, TexParameterIivEXT_remap_index }, - { 26468, TexParameterIuivEXT_remap_index }, - { 4596, BeginConditionalRenderNV_remap_index }, - { 25456, EndConditionalRenderNV_remap_index }, - { 9293, BeginTransformFeedbackEXT_remap_index }, - { 19016, BindBufferBaseEXT_remap_index }, - { 18875, BindBufferOffsetEXT_remap_index }, - { 12221, BindBufferRangeEXT_remap_index }, - { 14289, EndTransformFeedbackEXT_remap_index }, - { 10804, GetTransformFeedbackVaryingEXT_remap_index }, - { 20819, TransformFeedbackVaryingsEXT_remap_index }, - { 29585, ProvokingVertexEXT_remap_index }, - { 10752, GetTexParameterPointervAPPLE_remap_index }, - { 5047, TextureRangeAPPLE_remap_index }, - { 11619, GetObjectParameterivAPPLE_remap_index }, - { 19941, ObjectPurgeableAPPLE_remap_index }, - { 5702, ObjectUnpurgeableAPPLE_remap_index }, - { 17325, ActiveProgramEXT_remap_index }, - { 17296, CreateShaderProgramEXT_remap_index }, - { 28583, UseShaderProgramEXT_remap_index }, - { 16508, TextureBarrierNV_remap_index }, - { 28824, StencilFuncSeparateATI_remap_index }, - { 18168, ProgramEnvParameters4fvEXT_remap_index }, - { 17190, ProgramLocalParameters4fvEXT_remap_index }, - { 14157, GetQueryObjecti64vEXT_remap_index }, - { 10354, GetQueryObjectui64vEXT_remap_index }, - { 23870, EGLImageTargetRenderbufferStorageOES_remap_index }, - { 12139, EGLImageTargetTexture2DOES_remap_index }, + { 26781, TexParameterIuivEXT_remap_index }, + { 4617, BeginConditionalRenderNV_remap_index }, + { 25759, EndConditionalRenderNV_remap_index }, + { 9354, BeginTransformFeedbackEXT_remap_index }, + { 19218, BindBufferBaseEXT_remap_index }, + { 19077, BindBufferOffsetEXT_remap_index }, + { 12303, BindBufferRangeEXT_remap_index }, + { 14386, EndTransformFeedbackEXT_remap_index }, + { 10865, GetTransformFeedbackVaryingEXT_remap_index }, + { 21049, TransformFeedbackVaryingsEXT_remap_index }, + { 29928, ProvokingVertexEXT_remap_index }, + { 10813, GetTexParameterPointervAPPLE_remap_index }, + { 5097, TextureRangeAPPLE_remap_index }, + { 11680, GetObjectParameterivAPPLE_remap_index }, + { 20171, ObjectPurgeableAPPLE_remap_index }, + { 5787, ObjectUnpurgeableAPPLE_remap_index }, + { 17475, ActiveProgramEXT_remap_index }, + { 17446, CreateShaderProgramEXT_remap_index }, + { 28896, UseShaderProgramEXT_remap_index }, + { 16632, TextureBarrierNV_remap_index }, + { 29137, StencilFuncSeparateATI_remap_index }, + { 5658, ProgramEnvParameters4fvEXT_remap_index }, + { 17340, ProgramLocalParameters4fvEXT_remap_index }, + { 14239, GetQueryObjecti64vEXT_remap_index }, + { 10415, GetQueryObjectui64vEXT_remap_index }, + { 24128, EGLImageTargetRenderbufferStorageOES_remap_index }, + { 12192, EGLImageTargetTexture2DOES_remap_index }, { -1, -1 } }; @@ -5285,108 +5355,108 @@ static const struct gl_function_remap MESA_alt_functions[] = { /* from GL_EXT_blend_color */ { 2655, _gloffset_BlendColor }, /* from GL_EXT_blend_minmax */ - { 11224, _gloffset_BlendEquation }, + { 11285, _gloffset_BlendEquation }, /* from GL_EXT_color_subtable */ - { 17088, _gloffset_ColorSubTable }, - { 31761, _gloffset_CopyColorSubTable }, + { 17238, _gloffset_ColorSubTable }, + { 32109, _gloffset_CopyColorSubTable }, /* from GL_EXT_convolution */ { 257, _gloffset_ConvolutionFilter1D }, { 2454, _gloffset_CopyConvolutionFilter1D }, { 4058, _gloffset_GetConvolutionParameteriv }, - { 8506, _gloffset_ConvolutionFilter2D }, - { 8708, _gloffset_ConvolutionParameteriv }, - { 9168, _gloffset_ConvolutionParameterfv }, - { 20662, _gloffset_GetSeparableFilter }, - { 24145, _gloffset_SeparableFilter2D }, - { 25008, _gloffset_ConvolutionParameteri }, - { 25131, _gloffset_ConvolutionParameterf }, - { 26835, _gloffset_GetConvolutionParameterfv }, - { 27692, _gloffset_GetConvolutionFilter }, - { 30125, _gloffset_CopyConvolutionFilter2D }, + { 8567, _gloffset_ConvolutionFilter2D }, + { 8769, _gloffset_ConvolutionParameteriv }, + { 9229, _gloffset_ConvolutionParameterfv }, + { 20892, _gloffset_GetSeparableFilter }, + { 24403, _gloffset_SeparableFilter2D }, + { 25266, _gloffset_ConvolutionParameteri }, + { 25434, _gloffset_ConvolutionParameterf }, + { 27148, _gloffset_GetConvolutionParameterfv }, + { 28005, _gloffset_GetConvolutionFilter }, + { 30468, _gloffset_CopyConvolutionFilter2D }, /* from GL_EXT_copy_texture */ - { 15148, _gloffset_CopyTexSubImage3D }, - { 16775, _gloffset_CopyTexImage2D }, - { 24616, _gloffset_CopyTexImage1D }, - { 27373, _gloffset_CopyTexSubImage2D }, - { 29763, _gloffset_CopyTexSubImage1D }, + { 15245, _gloffset_CopyTexSubImage3D }, + { 16925, _gloffset_CopyTexImage2D }, + { 24874, _gloffset_CopyTexImage1D }, + { 27686, _gloffset_CopyTexSubImage2D }, + { 30106, _gloffset_CopyTexSubImage1D }, /* from GL_EXT_draw_range_elements */ - { 9505, _gloffset_DrawRangeElements }, + { 9566, _gloffset_DrawRangeElements }, /* from GL_EXT_histogram */ { 856, _gloffset_Histogram }, { 3522, _gloffset_ResetHistogram }, - { 10002, _gloffset_GetMinmax }, - { 15482, _gloffset_GetHistogramParameterfv }, - { 24541, _gloffset_GetMinmaxParameteriv }, - { 26725, _gloffset_ResetMinmax }, - { 27589, _gloffset_GetHistogramParameteriv }, - { 28758, _gloffset_GetHistogram }, - { 31347, _gloffset_Minmax }, - { 32893, _gloffset_GetMinmaxParameterfv }, + { 10063, _gloffset_GetMinmax }, + { 15579, _gloffset_GetHistogramParameterfv }, + { 24799, _gloffset_GetMinmaxParameteriv }, + { 27038, _gloffset_ResetMinmax }, + { 27902, _gloffset_GetHistogramParameteriv }, + { 29071, _gloffset_GetHistogram }, + { 31695, _gloffset_Minmax }, + { 33241, _gloffset_GetMinmaxParameterfv }, /* from GL_EXT_paletted_texture */ - { 8368, _gloffset_ColorTable }, - { 15328, _gloffset_GetColorTable }, - { 23060, _gloffset_GetColorTableParameterfv }, - { 25187, _gloffset_GetColorTableParameteriv }, + { 8429, _gloffset_ColorTable }, + { 15425, _gloffset_GetColorTable }, + { 23318, _gloffset_GetColorTableParameterfv }, + { 25490, _gloffset_GetColorTableParameteriv }, /* from GL_EXT_subtexture */ - { 7089, _gloffset_TexSubImage1D }, - { 10679, _gloffset_TexSubImage2D }, + { 7174, _gloffset_TexSubImage1D }, + { 10740, _gloffset_TexSubImage2D }, /* from GL_EXT_texture3D */ { 1774, _gloffset_TexImage3D }, - { 22829, _gloffset_TexSubImage3D }, + { 23087, _gloffset_TexSubImage3D }, /* from GL_EXT_texture_object */ { 3290, _gloffset_PrioritizeTextures }, - { 7538, _gloffset_AreTexturesResident }, - { 13612, _gloffset_GenTextures }, - { 15814, _gloffset_DeleteTextures }, - { 19647, _gloffset_IsTexture }, - { 29828, _gloffset_BindTexture }, + { 7623, _gloffset_AreTexturesResident }, + { 13694, _gloffset_GenTextures }, + { 15911, _gloffset_DeleteTextures }, + { 19859, _gloffset_IsTexture }, + { 30171, _gloffset_BindTexture }, /* from GL_EXT_vertex_array */ - { 24317, _gloffset_ArrayElement }, - { 30935, _gloffset_GetPointerv }, - { 32520, _gloffset_DrawArrays }, + { 24575, _gloffset_ArrayElement }, + { 31283, _gloffset_GetPointerv }, + { 32868, _gloffset_DrawArrays }, /* from GL_SGI_color_table */ - { 7656, _gloffset_ColorTableParameteriv }, - { 8368, _gloffset_ColorTable }, - { 15328, _gloffset_GetColorTable }, - { 15438, _gloffset_CopyColorTable }, - { 19508, _gloffset_ColorTableParameterfv }, - { 23060, _gloffset_GetColorTableParameterfv }, - { 25187, _gloffset_GetColorTableParameteriv }, + { 7741, _gloffset_ColorTableParameteriv }, + { 8429, _gloffset_ColorTable }, + { 15425, _gloffset_GetColorTable }, + { 15535, _gloffset_CopyColorTable }, + { 19720, _gloffset_ColorTableParameterfv }, + { 23318, _gloffset_GetColorTableParameterfv }, + { 25490, _gloffset_GetColorTableParameteriv }, /* from GL_VERSION_1_3 */ { 425, _gloffset_MultiTexCoord3sARB }, { 657, _gloffset_ActiveTextureARB }, - { 4247, _gloffset_MultiTexCoord1fvARB }, - { 6155, _gloffset_MultiTexCoord3dARB }, - { 6200, _gloffset_MultiTexCoord2iARB }, - { 6324, _gloffset_MultiTexCoord2svARB }, - { 8324, _gloffset_MultiTexCoord2fARB }, - { 10384, _gloffset_MultiTexCoord3fvARB }, - { 10986, _gloffset_MultiTexCoord4sARB }, - { 11667, _gloffset_MultiTexCoord2dvARB }, - { 12082, _gloffset_MultiTexCoord1svARB }, - { 12454, _gloffset_MultiTexCoord3svARB }, - { 12515, _gloffset_MultiTexCoord4iARB }, - { 13316, _gloffset_MultiTexCoord3iARB }, - { 14186, _gloffset_MultiTexCoord1dARB }, - { 14403, _gloffset_MultiTexCoord3dvARB }, - { 15682, _gloffset_MultiTexCoord3ivARB }, - { 15727, _gloffset_MultiTexCoord2sARB }, - { 17145, _gloffset_MultiTexCoord4ivARB }, - { 19158, _gloffset_ClientActiveTextureARB }, - { 21458, _gloffset_MultiTexCoord2dARB }, - { 21895, _gloffset_MultiTexCoord4dvARB }, - { 22251, _gloffset_MultiTexCoord4fvARB }, - { 23201, _gloffset_MultiTexCoord3fARB }, - { 25771, _gloffset_MultiTexCoord4dARB }, - { 26037, _gloffset_MultiTexCoord1sARB }, - { 26241, _gloffset_MultiTexCoord1dvARB }, - { 27217, _gloffset_MultiTexCoord1ivARB }, - { 27310, _gloffset_MultiTexCoord2ivARB }, - { 27649, _gloffset_MultiTexCoord1iARB }, - { 29033, _gloffset_MultiTexCoord4svARB }, - { 29627, _gloffset_MultiTexCoord1fARB }, - { 29890, _gloffset_MultiTexCoord4fARB }, - { 32354, _gloffset_MultiTexCoord2fvARB }, + { 4268, _gloffset_MultiTexCoord1fvARB }, + { 6240, _gloffset_MultiTexCoord3dARB }, + { 6285, _gloffset_MultiTexCoord2iARB }, + { 6409, _gloffset_MultiTexCoord2svARB }, + { 8385, _gloffset_MultiTexCoord2fARB }, + { 10445, _gloffset_MultiTexCoord3fvARB }, + { 11047, _gloffset_MultiTexCoord4sARB }, + { 11728, _gloffset_MultiTexCoord2dvARB }, + { 12135, _gloffset_MultiTexCoord1svARB }, + { 12536, _gloffset_MultiTexCoord3svARB }, + { 12597, _gloffset_MultiTexCoord4iARB }, + { 13398, _gloffset_MultiTexCoord3iARB }, + { 14268, _gloffset_MultiTexCoord1dARB }, + { 14500, _gloffset_MultiTexCoord3dvARB }, + { 15779, _gloffset_MultiTexCoord3ivARB }, + { 15824, _gloffset_MultiTexCoord2sARB }, + { 17295, _gloffset_MultiTexCoord4ivARB }, + { 19360, _gloffset_ClientActiveTextureARB }, + { 21688, _gloffset_MultiTexCoord2dARB }, + { 22125, _gloffset_MultiTexCoord4dvARB }, + { 22481, _gloffset_MultiTexCoord4fvARB }, + { 23459, _gloffset_MultiTexCoord3fARB }, + { 26084, _gloffset_MultiTexCoord4dARB }, + { 26350, _gloffset_MultiTexCoord1sARB }, + { 26554, _gloffset_MultiTexCoord1dvARB }, + { 27530, _gloffset_MultiTexCoord1ivARB }, + { 27623, _gloffset_MultiTexCoord2ivARB }, + { 27962, _gloffset_MultiTexCoord1iARB }, + { 29346, _gloffset_MultiTexCoord4svARB }, + { 29970, _gloffset_MultiTexCoord1fARB }, + { 30233, _gloffset_MultiTexCoord4fARB }, + { 32702, _gloffset_MultiTexCoord2fvARB }, { -1, -1 } }; @@ -5394,7 +5464,7 @@ static const struct gl_function_remap MESA_alt_functions[] = { #if defined(need_GL_3DFX_tbuffer) static const struct gl_function_remap GL_3DFX_tbuffer_functions[] = { - { 9226, -1 }, /* TbufferMask3DFX */ + { 9287, -1 }, /* TbufferMask3DFX */ { -1, -1 } }; #endif @@ -5486,7 +5556,7 @@ static const struct gl_function_remap GL_ARB_framebuffer_object_functions[] = { #if defined(need_GL_ARB_geometry_shader4) /* functions defined in MESA_remap_table_functions are excluded */ static const struct gl_function_remap GL_ARB_geometry_shader4_functions[] = { - { 12418, -1 }, /* FramebufferTextureLayer */ + { 12500, -1 }, /* FramebufferTextureLayer */ { -1, -1 } }; #endif @@ -5508,10 +5578,10 @@ static const struct gl_function_remap GL_ARB_map_buffer_range_functions[] = { #if defined(need_GL_ARB_matrix_palette) static const struct gl_function_remap GL_ARB_matrix_palette_functions[] = { { 3773, -1 }, /* MatrixIndexusvARB */ - { 13137, -1 }, /* MatrixIndexuivARB */ - { 14558, -1 }, /* MatrixIndexPointerARB */ - { 19896, -1 }, /* CurrentPaletteMatrixARB */ - { 22945, -1 }, /* MatrixIndexubvARB */ + { 13219, -1 }, /* MatrixIndexuivARB */ + { 14655, -1 }, /* MatrixIndexPointerARB */ + { 20126, -1 }, /* CurrentPaletteMatrixARB */ + { 23203, -1 }, /* MatrixIndexubvARB */ { -1, -1 } }; #endif @@ -5544,6 +5614,13 @@ static const struct gl_function_remap GL_ARB_provoking_vertex_functions[] = { }; #endif +#if defined(need_GL_ARB_sampler_objects) +/* functions defined in MESA_remap_table_functions are excluded */ +static const struct gl_function_remap GL_ARB_sampler_objects_functions[] = { + { -1, -1 } +}; +#endif + #if defined(need_GL_ARB_shader_objects) /* functions defined in MESA_remap_table_functions are excluded */ static const struct gl_function_remap GL_ARB_shader_objects_functions[] = { @@ -5596,15 +5673,15 @@ static const struct gl_function_remap GL_ARB_vertex_array_object_functions[] = { #if defined(need_GL_ARB_vertex_blend) static const struct gl_function_remap GL_ARB_vertex_blend_functions[] = { { 2396, -1 }, /* WeightubvARB */ - { 6567, -1 }, /* WeightivARB */ - { 11089, -1 }, /* WeightPointerARB */ - { 13904, -1 }, /* WeightfvARB */ - { 17664, -1 }, /* WeightbvARB */ - { 21126, -1 }, /* WeightusvARB */ - { 24071, -1 }, /* VertexBlendARB */ - { 29711, -1 }, /* WeightsvARB */ - { 31811, -1 }, /* WeightdvARB */ - { 32554, -1 }, /* WeightuivARB */ + { 6652, -1 }, /* WeightivARB */ + { 11150, -1 }, /* WeightPointerARB */ + { 13986, -1 }, /* WeightfvARB */ + { 17814, -1 }, /* WeightbvARB */ + { 21356, -1 }, /* WeightusvARB */ + { 24329, -1 }, /* VertexBlendARB */ + { 30054, -1 }, /* WeightsvARB */ + { 32159, -1 }, /* WeightdvARB */ + { 32902, -1 }, /* WeightuivARB */ { -1, -1 } }; #endif @@ -5695,15 +5772,15 @@ static const struct gl_function_remap GL_EXT_blend_func_separate_functions[] = { #if defined(need_GL_EXT_blend_minmax) static const struct gl_function_remap GL_EXT_blend_minmax_functions[] = { - { 11224, _gloffset_BlendEquation }, + { 11285, _gloffset_BlendEquation }, { -1, -1 } }; #endif #if defined(need_GL_EXT_color_subtable) static const struct gl_function_remap GL_EXT_color_subtable_functions[] = { - { 17088, _gloffset_ColorSubTable }, - { 31761, _gloffset_CopyColorSubTable }, + { 17238, _gloffset_ColorSubTable }, + { 32109, _gloffset_CopyColorSubTable }, { -1, -1 } }; #endif @@ -5720,63 +5797,63 @@ static const struct gl_function_remap GL_EXT_convolution_functions[] = { { 257, _gloffset_ConvolutionFilter1D }, { 2454, _gloffset_CopyConvolutionFilter1D }, { 4058, _gloffset_GetConvolutionParameteriv }, - { 8506, _gloffset_ConvolutionFilter2D }, - { 8708, _gloffset_ConvolutionParameteriv }, - { 9168, _gloffset_ConvolutionParameterfv }, - { 20662, _gloffset_GetSeparableFilter }, - { 24145, _gloffset_SeparableFilter2D }, - { 25008, _gloffset_ConvolutionParameteri }, - { 25131, _gloffset_ConvolutionParameterf }, - { 26835, _gloffset_GetConvolutionParameterfv }, - { 27692, _gloffset_GetConvolutionFilter }, - { 30125, _gloffset_CopyConvolutionFilter2D }, + { 8567, _gloffset_ConvolutionFilter2D }, + { 8769, _gloffset_ConvolutionParameteriv }, + { 9229, _gloffset_ConvolutionParameterfv }, + { 20892, _gloffset_GetSeparableFilter }, + { 24403, _gloffset_SeparableFilter2D }, + { 25266, _gloffset_ConvolutionParameteri }, + { 25434, _gloffset_ConvolutionParameterf }, + { 27148, _gloffset_GetConvolutionParameterfv }, + { 28005, _gloffset_GetConvolutionFilter }, + { 30468, _gloffset_CopyConvolutionFilter2D }, { -1, -1 } }; #endif #if defined(need_GL_EXT_coordinate_frame) static const struct gl_function_remap GL_EXT_coordinate_frame_functions[] = { - { 10523, -1 }, /* TangentPointerEXT */ - { 12573, -1 }, /* Binormal3ivEXT */ - { 13269, -1 }, /* Tangent3sEXT */ - { 14623, -1 }, /* Tangent3fvEXT */ - { 18856, -1 }, /* Tangent3dvEXT */ - { 19594, -1 }, /* Binormal3bvEXT */ - { 20715, -1 }, /* Binormal3dEXT */ - { 22877, -1 }, /* Tangent3fEXT */ - { 25080, -1 }, /* Binormal3sEXT */ - { 25548, -1 }, /* Tangent3ivEXT */ - { 25567, -1 }, /* Tangent3dEXT */ - { 26514, -1 }, /* Binormal3svEXT */ - { 27115, -1 }, /* Binormal3fEXT */ - { 28023, -1 }, /* Binormal3dvEXT */ - { 29290, -1 }, /* Tangent3iEXT */ - { 30410, -1 }, /* Tangent3bvEXT */ - { 30970, -1 }, /* Tangent3bEXT */ - { 31534, -1 }, /* Binormal3fvEXT */ - { 32253, -1 }, /* BinormalPointerEXT */ - { 32658, -1 }, /* Tangent3svEXT */ - { 33095, -1 }, /* Binormal3bEXT */ - { 33272, -1 }, /* Binormal3iEXT */ + { 10584, -1 }, /* TangentPointerEXT */ + { 12655, -1 }, /* Binormal3ivEXT */ + { 13351, -1 }, /* Tangent3sEXT */ + { 14720, -1 }, /* Tangent3fvEXT */ + { 18831, -1 }, /* Tangent3ivEXT */ + { 19058, -1 }, /* Tangent3dvEXT */ + { 19806, -1 }, /* Binormal3bvEXT */ + { 20945, -1 }, /* Binormal3dEXT */ + { 23135, -1 }, /* Tangent3fEXT */ + { 25338, -1 }, /* Binormal3sEXT */ + { 25880, -1 }, /* Tangent3dEXT */ + { 26827, -1 }, /* Binormal3svEXT */ + { 27428, -1 }, /* Binormal3fEXT */ + { 28336, -1 }, /* Binormal3dvEXT */ + { 29603, -1 }, /* Tangent3iEXT */ + { 30753, -1 }, /* Tangent3bvEXT */ + { 31318, -1 }, /* Tangent3bEXT */ + { 31882, -1 }, /* Binormal3fvEXT */ + { 32601, -1 }, /* BinormalPointerEXT */ + { 33006, -1 }, /* Tangent3svEXT */ + { 33443, -1 }, /* Binormal3bEXT */ + { 33620, -1 }, /* Binormal3iEXT */ { -1, -1 } }; #endif #if defined(need_GL_EXT_copy_texture) static const struct gl_function_remap GL_EXT_copy_texture_functions[] = { - { 15148, _gloffset_CopyTexSubImage3D }, - { 16775, _gloffset_CopyTexImage2D }, - { 24616, _gloffset_CopyTexImage1D }, - { 27373, _gloffset_CopyTexSubImage2D }, - { 29763, _gloffset_CopyTexSubImage1D }, + { 15245, _gloffset_CopyTexSubImage3D }, + { 16925, _gloffset_CopyTexImage2D }, + { 24874, _gloffset_CopyTexImage1D }, + { 27686, _gloffset_CopyTexSubImage2D }, + { 30106, _gloffset_CopyTexSubImage1D }, { -1, -1 } }; #endif #if defined(need_GL_EXT_cull_vertex) static const struct gl_function_remap GL_EXT_cull_vertex_functions[] = { - { 8857, -1 }, /* CullParameterdvEXT */ - { 11712, -1 }, /* CullParameterfvEXT */ + { 8918, -1 }, /* CullParameterdvEXT */ + { 11773, -1 }, /* CullParameterfvEXT */ { -1, -1 } }; #endif @@ -5804,7 +5881,7 @@ static const struct gl_function_remap GL_EXT_draw_instanced_functions[] = { #if defined(need_GL_EXT_draw_range_elements) static const struct gl_function_remap GL_EXT_draw_range_elements_functions[] = { - { 9505, _gloffset_DrawRangeElements }, + { 9566, _gloffset_DrawRangeElements }, { -1, -1 } }; #endif @@ -5855,37 +5932,37 @@ static const struct gl_function_remap GL_EXT_gpu_shader4_functions[] = { static const struct gl_function_remap GL_EXT_histogram_functions[] = { { 856, _gloffset_Histogram }, { 3522, _gloffset_ResetHistogram }, - { 10002, _gloffset_GetMinmax }, - { 15482, _gloffset_GetHistogramParameterfv }, - { 24541, _gloffset_GetMinmaxParameteriv }, - { 26725, _gloffset_ResetMinmax }, - { 27589, _gloffset_GetHistogramParameteriv }, - { 28758, _gloffset_GetHistogram }, - { 31347, _gloffset_Minmax }, - { 32893, _gloffset_GetMinmaxParameterfv }, + { 10063, _gloffset_GetMinmax }, + { 15579, _gloffset_GetHistogramParameterfv }, + { 24799, _gloffset_GetMinmaxParameteriv }, + { 27038, _gloffset_ResetMinmax }, + { 27902, _gloffset_GetHistogramParameteriv }, + { 29071, _gloffset_GetHistogram }, + { 31695, _gloffset_Minmax }, + { 33241, _gloffset_GetMinmaxParameterfv }, { -1, -1 } }; #endif #if defined(need_GL_EXT_index_func) static const struct gl_function_remap GL_EXT_index_func_functions[] = { - { 11498, -1 }, /* IndexFuncEXT */ + { 11559, -1 }, /* IndexFuncEXT */ { -1, -1 } }; #endif #if defined(need_GL_EXT_index_material) static const struct gl_function_remap GL_EXT_index_material_functions[] = { - { 21213, -1 }, /* IndexMaterialEXT */ + { 21443, -1 }, /* IndexMaterialEXT */ { -1, -1 } }; #endif #if defined(need_GL_EXT_light_texture) static const struct gl_function_remap GL_EXT_light_texture_functions[] = { - { 26534, -1 }, /* ApplyTextureEXT */ - { 26679, -1 }, /* TextureMaterialEXT */ - { 26704, -1 }, /* TextureLightEXT */ + { 26847, -1 }, /* ApplyTextureEXT */ + { 26992, -1 }, /* TextureMaterialEXT */ + { 27017, -1 }, /* TextureLightEXT */ { -1, -1 } }; #endif @@ -5906,20 +5983,20 @@ static const struct gl_function_remap GL_EXT_multisample_functions[] = { #if defined(need_GL_EXT_paletted_texture) static const struct gl_function_remap GL_EXT_paletted_texture_functions[] = { - { 8368, _gloffset_ColorTable }, - { 15328, _gloffset_GetColorTable }, - { 23060, _gloffset_GetColorTableParameterfv }, - { 25187, _gloffset_GetColorTableParameteriv }, + { 8429, _gloffset_ColorTable }, + { 15425, _gloffset_GetColorTable }, + { 23318, _gloffset_GetColorTableParameterfv }, + { 25490, _gloffset_GetColorTableParameteriv }, { -1, -1 } }; #endif #if defined(need_GL_EXT_pixel_transform) static const struct gl_function_remap GL_EXT_pixel_transform_functions[] = { - { 21860, -1 }, /* PixelTransformParameterfEXT */ - { 21940, -1 }, /* PixelTransformParameteriEXT */ - { 30685, -1 }, /* PixelTransformParameterfvEXT */ - { 32217, -1 }, /* PixelTransformParameterivEXT */ + { 22090, -1 }, /* PixelTransformParameterfEXT */ + { 22170, -1 }, /* PixelTransformParameteriEXT */ + { 31033, -1 }, /* PixelTransformParameterfvEXT */ + { 32565, -1 }, /* PixelTransformParameterivEXT */ { -1, -1 } }; #endif @@ -5968,8 +6045,8 @@ static const struct gl_function_remap GL_EXT_stencil_two_side_functions[] = { #if defined(need_GL_EXT_subtexture) static const struct gl_function_remap GL_EXT_subtexture_functions[] = { - { 7089, _gloffset_TexSubImage1D }, - { 10679, _gloffset_TexSubImage2D }, + { 7174, _gloffset_TexSubImage1D }, + { 10740, _gloffset_TexSubImage2D }, { -1, -1 } }; #endif @@ -5977,7 +6054,7 @@ static const struct gl_function_remap GL_EXT_subtexture_functions[] = { #if defined(need_GL_EXT_texture3D) static const struct gl_function_remap GL_EXT_texture3D_functions[] = { { 1774, _gloffset_TexImage3D }, - { 22829, _gloffset_TexSubImage3D }, + { 23087, _gloffset_TexSubImage3D }, { -1, -1 } }; #endif @@ -5999,18 +6076,18 @@ static const struct gl_function_remap GL_EXT_texture_integer_functions[] = { #if defined(need_GL_EXT_texture_object) static const struct gl_function_remap GL_EXT_texture_object_functions[] = { { 3290, _gloffset_PrioritizeTextures }, - { 7538, _gloffset_AreTexturesResident }, - { 13612, _gloffset_GenTextures }, - { 15814, _gloffset_DeleteTextures }, - { 19647, _gloffset_IsTexture }, - { 29828, _gloffset_BindTexture }, + { 7623, _gloffset_AreTexturesResident }, + { 13694, _gloffset_GenTextures }, + { 15911, _gloffset_DeleteTextures }, + { 19859, _gloffset_IsTexture }, + { 30171, _gloffset_BindTexture }, { -1, -1 } }; #endif #if defined(need_GL_EXT_texture_perturb_normal) static const struct gl_function_remap GL_EXT_texture_perturb_normal_functions[] = { - { 13854, -1 }, /* TextureNormalEXT */ + { 13936, -1 }, /* TextureNormalEXT */ { -1, -1 } }; #endif @@ -6032,18 +6109,18 @@ static const struct gl_function_remap GL_EXT_transform_feedback_functions[] = { #if defined(need_GL_EXT_vertex_array) /* functions defined in MESA_remap_table_functions are excluded */ static const struct gl_function_remap GL_EXT_vertex_array_functions[] = { - { 24317, _gloffset_ArrayElement }, - { 30935, _gloffset_GetPointerv }, - { 32520, _gloffset_DrawArrays }, + { 24575, _gloffset_ArrayElement }, + { 31283, _gloffset_GetPointerv }, + { 32868, _gloffset_DrawArrays }, { -1, -1 } }; #endif #if defined(need_GL_EXT_vertex_weighting) static const struct gl_function_remap GL_EXT_vertex_weighting_functions[] = { - { 19677, -1 }, /* VertexWeightfvEXT */ - { 27058, -1 }, /* VertexWeightfEXT */ - { 28727, -1 }, /* VertexWeightPointerEXT */ + { 19907, -1 }, /* VertexWeightfvEXT */ + { 27371, -1 }, /* VertexWeightfEXT */ + { 29040, -1 }, /* VertexWeightPointerEXT */ { -1, -1 } }; #endif @@ -6052,10 +6129,10 @@ static const struct gl_function_remap GL_EXT_vertex_weighting_functions[] = { static const struct gl_function_remap GL_HP_image_transform_functions[] = { { 2327, -1 }, /* GetImageTransformParameterfvHP */ { 3739, -1 }, /* ImageTransformParameterfHP */ - { 10217, -1 }, /* ImageTransformParameterfvHP */ - { 11967, -1 }, /* ImageTransformParameteriHP */ - { 12308, -1 }, /* GetImageTransformParameterivHP */ - { 19741, -1 }, /* ImageTransformParameterivHP */ + { 10278, -1 }, /* ImageTransformParameterfvHP */ + { 12020, -1 }, /* ImageTransformParameteriHP */ + { 12390, -1 }, /* GetImageTransformParameterivHP */ + { 19971, -1 }, /* ImageTransformParameterivHP */ { -1, -1 } }; #endif @@ -6069,14 +6146,14 @@ static const struct gl_function_remap GL_IBM_multimode_draw_arrays_functions[] = #if defined(need_GL_IBM_vertex_array_lists) static const struct gl_function_remap GL_IBM_vertex_array_lists_functions[] = { - { 4379, -1 }, /* SecondaryColorPointerListIBM */ - { 6021, -1 }, /* NormalPointerListIBM */ - { 7712, -1 }, /* FogCoordPointerListIBM */ - { 8019, -1 }, /* VertexPointerListIBM */ - { 11888, -1 }, /* ColorPointerListIBM */ - { 13376, -1 }, /* TexCoordPointerListIBM */ - { 13876, -1 }, /* IndexPointerListIBM */ - { 32836, -1 }, /* EdgeFlagPointerListIBM */ + { 4400, -1 }, /* SecondaryColorPointerListIBM */ + { 6106, -1 }, /* NormalPointerListIBM */ + { 7797, -1 }, /* FogCoordPointerListIBM */ + { 8104, -1 }, /* VertexPointerListIBM */ + { 12274, -1 }, /* ColorPointerListIBM */ + { 13458, -1 }, /* TexCoordPointerListIBM */ + { 13958, -1 }, /* IndexPointerListIBM */ + { 33184, -1 }, /* EdgeFlagPointerListIBM */ { -1, -1 } }; #endif @@ -6090,10 +6167,10 @@ static const struct gl_function_remap GL_INGR_blend_func_separate_functions[] = #if defined(need_GL_INTEL_parallel_arrays) static const struct gl_function_remap GL_INTEL_parallel_arrays_functions[] = { - { 12716, -1 }, /* VertexPointervINTEL */ - { 15575, -1 }, /* ColorPointervINTEL */ - { 30099, -1 }, /* NormalPointervINTEL */ - { 30617, -1 }, /* TexCoordPointervINTEL */ + { 12798, -1 }, /* VertexPointervINTEL */ + { 15672, -1 }, /* ColorPointervINTEL */ + { 30442, -1 }, /* NormalPointervINTEL */ + { 30965, -1 }, /* TexCoordPointervINTEL */ { -1, -1 } }; #endif @@ -6109,8 +6186,8 @@ static const struct gl_function_remap GL_MESA_resize_buffers_functions[] = { static const struct gl_function_remap GL_MESA_shader_debug_functions[] = { { 1638, -1 }, /* GetDebugLogLengthMESA */ { 3461, -1 }, /* ClearDebugLogMESA */ - { 4540, -1 }, /* GetDebugLogMESA */ - { 31128, -1 }, /* CreateDebugObjectMESA */ + { 4561, -1 }, /* GetDebugLogMESA */ + { 31476, -1 }, /* CreateDebugObjectMESA */ { -1, -1 } }; #endif @@ -6131,15 +6208,15 @@ static const struct gl_function_remap GL_NV_condtitional_render_functions[] = { #if defined(need_GL_NV_evaluators) static const struct gl_function_remap GL_NV_evaluators_functions[] = { - { 6751, -1 }, /* GetMapAttribParameterivNV */ - { 8474, -1 }, /* MapControlPointsNV */ - { 8573, -1 }, /* MapParameterfvNV */ - { 10662, -1 }, /* EvalMapsNV */ - { 17262, -1 }, /* GetMapAttribParameterfvNV */ - { 17479, -1 }, /* MapParameterivNV */ - { 24931, -1 }, /* GetMapParameterivNV */ - { 25429, -1 }, /* GetMapParameterfvNV */ - { 29414, -1 }, /* GetMapControlPointsNV */ + { 6836, -1 }, /* GetMapAttribParameterivNV */ + { 8535, -1 }, /* MapControlPointsNV */ + { 8634, -1 }, /* MapParameterfvNV */ + { 10723, -1 }, /* EvalMapsNV */ + { 17412, -1 }, /* GetMapAttribParameterfvNV */ + { 17629, -1 }, /* MapParameterivNV */ + { 25189, -1 }, /* GetMapParameterivNV */ + { 25732, -1 }, /* GetMapParameterfvNV */ + { 29757, -1 }, /* GetMapControlPointsNV */ { -1, -1 } }; #endif @@ -6181,8 +6258,8 @@ static const struct gl_function_remap GL_NV_register_combiners_functions[] = { #if defined(need_GL_NV_register_combiners2) static const struct gl_function_remap GL_NV_register_combiners2_functions[] = { - { 15967, -1 }, /* CombinerStageParameterfvNV */ - { 16363, -1 }, /* GetCombinerStageParameterfvNV */ + { 16064, -1 }, /* CombinerStageParameterfvNV */ + { 16460, -1 }, /* GetCombinerStageParameterfvNV */ { -1, -1 } }; #endif @@ -6217,23 +6294,23 @@ static const struct gl_function_remap GL_OES_EGL_image_functions[] = { #if defined(need_GL_PGI_misc_hints) static const struct gl_function_remap GL_PGI_misc_hints_functions[] = { - { 8694, -1 }, /* HintPGI */ + { 8755, -1 }, /* HintPGI */ { -1, -1 } }; #endif #if defined(need_GL_SGIS_detail_texture) static const struct gl_function_remap GL_SGIS_detail_texture_functions[] = { - { 16336, -1 }, /* GetDetailTexFuncSGIS */ - { 16720, -1 }, /* DetailTexFuncSGIS */ + { 16433, -1 }, /* GetDetailTexFuncSGIS */ + { 16870, -1 }, /* DetailTexFuncSGIS */ { -1, -1 } }; #endif #if defined(need_GL_SGIS_fog_function) static const struct gl_function_remap GL_SGIS_fog_function_functions[] = { - { 27355, -1 }, /* FogFuncSGIS */ - { 28076, -1 }, /* GetFogFuncSGIS */ + { 27668, -1 }, /* FogFuncSGIS */ + { 28389, -1 }, /* GetFogFuncSGIS */ { -1, -1 } }; #endif @@ -6261,8 +6338,8 @@ static const struct gl_function_remap GL_SGIS_point_parameters_functions[] = { #if defined(need_GL_SGIS_sharpen_texture) static const struct gl_function_remap GL_SGIS_sharpen_texture_functions[] = { - { 6812, -1 }, /* GetSharpenTexFuncSGIS */ - { 22225, -1 }, /* SharpenTexFuncSGIS */ + { 6897, -1 }, /* GetSharpenTexFuncSGIS */ + { 22455, -1 }, /* SharpenTexFuncSGIS */ { -1, -1 } }; #endif @@ -6270,22 +6347,22 @@ static const struct gl_function_remap GL_SGIS_sharpen_texture_functions[] = { #if defined(need_GL_SGIS_texture4D) static const struct gl_function_remap GL_SGIS_texture4D_functions[] = { { 1010, -1 }, /* TexImage4DSGIS */ - { 15883, -1 }, /* TexSubImage4DSGIS */ + { 15980, -1 }, /* TexSubImage4DSGIS */ { -1, -1 } }; #endif #if defined(need_GL_SGIS_texture_color_mask) static const struct gl_function_remap GL_SGIS_texture_color_mask_functions[] = { - { 15281, -1 }, /* TextureColorMaskSGIS */ + { 15378, -1 }, /* TextureColorMaskSGIS */ { -1, -1 } }; #endif #if defined(need_GL_SGIS_texture_filter4) static const struct gl_function_remap GL_SGIS_texture_filter4_functions[] = { - { 6989, -1 }, /* GetTexFilterFuncSGIS */ - { 16482, -1 }, /* TexFilterFuncSGIS */ + { 7074, -1 }, /* GetTexFilterFuncSGIS */ + { 16606, -1 }, /* TexFilterFuncSGIS */ { -1, -1 } }; #endif @@ -6293,18 +6370,18 @@ static const struct gl_function_remap GL_SGIS_texture_filter4_functions[] = { #if defined(need_GL_SGIX_async) static const struct gl_function_remap GL_SGIX_async_functions[] = { { 3387, -1 }, /* AsyncMarkerSGIX */ - { 4519, -1 }, /* FinishAsyncSGIX */ - { 5466, -1 }, /* PollAsyncSGIX */ - { 22406, -1 }, /* DeleteAsyncMarkersSGIX */ - { 22461, -1 }, /* IsAsyncMarkerSGIX */ - { 32633, -1 }, /* GenAsyncMarkersSGIX */ + { 4540, -1 }, /* FinishAsyncSGIX */ + { 5516, -1 }, /* PollAsyncSGIX */ + { 22664, -1 }, /* DeleteAsyncMarkersSGIX */ + { 22719, -1 }, /* IsAsyncMarkerSGIX */ + { 32981, -1 }, /* GenAsyncMarkersSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_flush_raster) static const struct gl_function_remap GL_SGIX_flush_raster_functions[] = { - { 7366, -1 }, /* FlushRasterSGIX */ + { 7451, -1 }, /* FlushRasterSGIX */ { -1, -1 } }; #endif @@ -6312,37 +6389,37 @@ static const struct gl_function_remap GL_SGIX_flush_raster_functions[] = { #if defined(need_GL_SGIX_fragment_lighting) static const struct gl_function_remap GL_SGIX_fragment_lighting_functions[] = { { 2625, -1 }, /* FragmentMaterialfvSGIX */ - { 5370, -1 }, /* FragmentLightiSGIX */ - { 8086, -1 }, /* FragmentMaterialfSGIX */ - { 8247, -1 }, /* GetFragmentLightivSGIX */ - { 9120, -1 }, /* FragmentLightModeliSGIX */ - { 10725, -1 }, /* FragmentLightivSGIX */ - { 11032, -1 }, /* GetFragmentMaterialivSGIX */ - { 16276, -1 }, /* GetFragmentMaterialfvSGIX */ - { 19564, -1 }, /* FragmentLightModelfSGIX */ - { 19864, -1 }, /* FragmentColorMaterialSGIX */ - { 20281, -1 }, /* FragmentMaterialiSGIX */ - { 21541, -1 }, /* LightEnviSGIX */ - { 23152, -1 }, /* FragmentLightModelfvSGIX */ - { 23487, -1 }, /* FragmentLightfvSGIX */ - { 28460, -1 }, /* FragmentLightModelivSGIX */ - { 28609, -1 }, /* FragmentLightfSGIX */ - { 31504, -1 }, /* GetFragmentLightfvSGIX */ - { 33116, -1 }, /* FragmentMaterialivSGIX */ + { 5420, -1 }, /* FragmentLightiSGIX */ + { 8171, -1 }, /* FragmentMaterialfSGIX */ + { 8308, -1 }, /* GetFragmentLightivSGIX */ + { 9181, -1 }, /* FragmentLightModeliSGIX */ + { 10786, -1 }, /* FragmentLightivSGIX */ + { 11093, -1 }, /* GetFragmentMaterialivSGIX */ + { 16373, -1 }, /* GetFragmentMaterialfvSGIX */ + { 19776, -1 }, /* FragmentLightModelfSGIX */ + { 20094, -1 }, /* FragmentColorMaterialSGIX */ + { 20511, -1 }, /* FragmentMaterialiSGIX */ + { 21771, -1 }, /* LightEnviSGIX */ + { 23410, -1 }, /* FragmentLightModelfvSGIX */ + { 23745, -1 }, /* FragmentLightfvSGIX */ + { 28773, -1 }, /* FragmentLightModelivSGIX */ + { 28922, -1 }, /* FragmentLightfSGIX */ + { 31852, -1 }, /* GetFragmentLightfvSGIX */ + { 33464, -1 }, /* FragmentMaterialivSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_framezoom) static const struct gl_function_remap GL_SGIX_framezoom_functions[] = { - { 22484, -1 }, /* FrameZoomSGIX */ + { 22742, -1 }, /* FrameZoomSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_igloo_interface) static const struct gl_function_remap GL_SGIX_igloo_interface_functions[] = { - { 28917, -1 }, /* IglooInterfaceSGIX */ + { 29230, -1 }, /* IglooInterfaceSGIX */ { -1, -1 } }; #endif @@ -6350,11 +6427,11 @@ static const struct gl_function_remap GL_SGIX_igloo_interface_functions[] = { #if defined(need_GL_SGIX_instruments) static const struct gl_function_remap GL_SGIX_instruments_functions[] = { { 2805, -1 }, /* ReadInstrumentsSGIX */ - { 6585, -1 }, /* PollInstrumentsSGIX */ - { 10583, -1 }, /* GetInstrumentsSGIX */ - { 12974, -1 }, /* StartInstrumentsSGIX */ - { 16001, -1 }, /* StopInstrumentsSGIX */ - { 17901, -1 }, /* InstrumentsBufferSGIX */ + { 6670, -1 }, /* PollInstrumentsSGIX */ + { 10644, -1 }, /* GetInstrumentsSGIX */ + { 13056, -1 }, /* StartInstrumentsSGIX */ + { 16098, -1 }, /* StopInstrumentsSGIX */ + { 18051, -1 }, /* InstrumentsBufferSGIX */ { -1, -1 } }; #endif @@ -6363,10 +6440,10 @@ static const struct gl_function_remap GL_SGIX_instruments_functions[] = { static const struct gl_function_remap GL_SGIX_list_priority_functions[] = { { 1241, -1 }, /* ListParameterfSGIX */ { 3089, -1 }, /* GetListParameterfvSGIX */ - { 17792, -1 }, /* ListParameteriSGIX */ - { 18806, -1 }, /* ListParameterfvSGIX */ - { 20947, -1 }, /* ListParameterivSGIX */ - { 32677, -1 }, /* GetListParameterivSGIX */ + { 17942, -1 }, /* ListParameteriSGIX */ + { 19008, -1 }, /* ListParameterfvSGIX */ + { 21177, -1 }, /* ListParameterivSGIX */ + { 33025, -1 }, /* GetListParameterivSGIX */ { -1, -1 } }; #endif @@ -6381,53 +6458,53 @@ static const struct gl_function_remap GL_SGIX_pixel_texture_functions[] = { #if defined(need_GL_SGIX_polynomial_ffd) static const struct gl_function_remap GL_SGIX_polynomial_ffd_functions[] = { { 3685, -1 }, /* LoadIdentityDeformationMapSGIX */ - { 16101, -1 }, /* DeformSGIX */ - { 24429, -1 }, /* DeformationMap3fSGIX */ - { 31392, -1 }, /* DeformationMap3dSGIX */ + { 16198, -1 }, /* DeformSGIX */ + { 24687, -1 }, /* DeformationMap3fSGIX */ + { 31740, -1 }, /* DeformationMap3dSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_reference_plane) static const struct gl_function_remap GL_SGIX_reference_plane_functions[] = { - { 14832, -1 }, /* ReferencePlaneSGIX */ + { 14929, -1 }, /* ReferencePlaneSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_sprite) static const struct gl_function_remap GL_SGIX_sprite_functions[] = { - { 9618, -1 }, /* SpriteParameterfvSGIX */ - { 20736, -1 }, /* SpriteParameteriSGIX */ - { 26759, -1 }, /* SpriteParameterfSGIX */ - { 29557, -1 }, /* SpriteParameterivSGIX */ + { 9679, -1 }, /* SpriteParameterfvSGIX */ + { 20966, -1 }, /* SpriteParameteriSGIX */ + { 27072, -1 }, /* SpriteParameterfSGIX */ + { 29900, -1 }, /* SpriteParameterivSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGIX_tag_sample_buffer) static const struct gl_function_remap GL_SGIX_tag_sample_buffer_functions[] = { - { 20795, -1 }, /* TagSampleBufferSGIX */ + { 21025, -1 }, /* TagSampleBufferSGIX */ { -1, -1 } }; #endif #if defined(need_GL_SGI_color_table) static const struct gl_function_remap GL_SGI_color_table_functions[] = { - { 7656, _gloffset_ColorTableParameteriv }, - { 8368, _gloffset_ColorTable }, - { 15328, _gloffset_GetColorTable }, - { 15438, _gloffset_CopyColorTable }, - { 19508, _gloffset_ColorTableParameterfv }, - { 23060, _gloffset_GetColorTableParameterfv }, - { 25187, _gloffset_GetColorTableParameteriv }, + { 7741, _gloffset_ColorTableParameteriv }, + { 8429, _gloffset_ColorTable }, + { 15425, _gloffset_GetColorTable }, + { 15535, _gloffset_CopyColorTable }, + { 19720, _gloffset_ColorTableParameterfv }, + { 23318, _gloffset_GetColorTableParameterfv }, + { 25490, _gloffset_GetColorTableParameteriv }, { -1, -1 } }; #endif #if defined(need_GL_SUNX_constant_data) static const struct gl_function_remap GL_SUNX_constant_data_functions[] = { - { 31482, -1 }, /* FinishTextureSUNX */ + { 31830, -1 }, /* FinishTextureSUNX */ { -1, -1 } }; #endif @@ -6435,33 +6512,33 @@ static const struct gl_function_remap GL_SUNX_constant_data_functions[] = { #if defined(need_GL_SUN_global_alpha) static const struct gl_function_remap GL_SUN_global_alpha_functions[] = { { 3408, -1 }, /* GlobalAlphaFactorubSUN */ - { 4818, -1 }, /* GlobalAlphaFactoriSUN */ - { 6610, -1 }, /* GlobalAlphaFactordSUN */ - { 9702, -1 }, /* GlobalAlphaFactoruiSUN */ - { 10174, -1 }, /* GlobalAlphaFactorbSUN */ - { 13289, -1 }, /* GlobalAlphaFactorfSUN */ - { 13453, -1 }, /* GlobalAlphaFactorusSUN */ - { 22747, -1 }, /* GlobalAlphaFactorsSUN */ + { 4868, -1 }, /* GlobalAlphaFactoriSUN */ + { 6695, -1 }, /* GlobalAlphaFactordSUN */ + { 9763, -1 }, /* GlobalAlphaFactoruiSUN */ + { 10235, -1 }, /* GlobalAlphaFactorbSUN */ + { 13371, -1 }, /* GlobalAlphaFactorfSUN */ + { 13535, -1 }, /* GlobalAlphaFactorusSUN */ + { 23005, -1 }, /* GlobalAlphaFactorsSUN */ { -1, -1 } }; #endif #if defined(need_GL_SUN_mesh_array) static const struct gl_function_remap GL_SUN_mesh_array_functions[] = { - { 29348, -1 }, /* DrawMeshArraysSUN */ + { 29691, -1 }, /* DrawMeshArraysSUN */ { -1, -1 } }; #endif #if defined(need_GL_SUN_triangle_list) static const struct gl_function_remap GL_SUN_triangle_list_functions[] = { - { 4493, -1 }, /* ReplacementCodeubSUN */ - { 6369, -1 }, /* ReplacementCodeubvSUN */ - { 19229, -1 }, /* ReplacementCodeusvSUN */ - { 19417, -1 }, /* ReplacementCodePointerSUN */ - { 21605, -1 }, /* ReplacementCodeuiSUN */ - { 22435, -1 }, /* ReplacementCodeusSUN */ - { 30014, -1 }, /* ReplacementCodeuivSUN */ + { 4514, -1 }, /* ReplacementCodeubSUN */ + { 6454, -1 }, /* ReplacementCodeubvSUN */ + { 19441, -1 }, /* ReplacementCodeusvSUN */ + { 19629, -1 }, /* ReplacementCodePointerSUN */ + { 21835, -1 }, /* ReplacementCodeuiSUN */ + { 22693, -1 }, /* ReplacementCodeusSUN */ + { 30357, -1 }, /* ReplacementCodeuivSUN */ { -1, -1 } }; #endif @@ -6475,39 +6552,39 @@ static const struct gl_function_remap GL_SUN_vertex_functions[] = { { 2003, -1 }, /* ReplacementCodeuiTexCoord2fVertex3fvSUN */ { 2561, -1 }, /* ReplacementCodeuiNormal3fVertex3fSUN */ { 2874, -1 }, /* Color4ubVertex3fvSUN */ - { 4652, -1 }, /* Color4ubVertex3fSUN */ - { 4775, -1 }, /* TexCoord2fVertex3fSUN */ - { 5119, -1 }, /* TexCoord2fColor4fNormal3fVertex3fSUN */ - { 5570, -1 }, /* TexCoord2fNormal3fVertex3fvSUN */ - { 6264, -1 }, /* ReplacementCodeuiTexCoord2fNormal3fVertex3fSUN */ - { 7044, -1 }, /* ReplacementCodeuiColor4ubVertex3fvSUN */ - { 7403, -1 }, /* ReplacementCodeuiTexCoord2fVertex3fSUN */ - { 8115, -1 }, /* TexCoord2fNormal3fVertex3fSUN */ - { 8919, -1 }, /* Color3fVertex3fSUN */ - { 10110, -1 }, /* Color3fVertex3fvSUN */ - { 10548, -1 }, /* Color4fNormal3fVertex3fvSUN */ - { 11377, -1 }, /* ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN */ - { 12837, -1 }, /* ReplacementCodeuiColor4fNormal3fVertex3fvSUN */ - { 14448, -1 }, /* ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN */ - { 14974, -1 }, /* TexCoord2fColor3fVertex3fSUN */ - { 16026, -1 }, /* TexCoord4fColor4fNormal3fVertex4fSUN */ - { 16441, -1 }, /* Color4ubVertex2fvSUN */ - { 16745, -1 }, /* Normal3fVertex3fSUN */ - { 17842, -1 }, /* ReplacementCodeuiColor4fNormal3fVertex3fSUN */ - { 18203, -1 }, /* TexCoord2fColor4fNormal3fVertex3fvSUN */ - { 19058, -1 }, /* TexCoord2fVertex3fvSUN */ - { 19834, -1 }, /* Color4ubVertex2fSUN */ - { 20072, -1 }, /* ReplacementCodeuiColor4ubVertex3fSUN */ - { 22071, -1 }, /* TexCoord2fColor4ubVertex3fSUN */ - { 22503, -1 }, /* Normal3fVertex3fvSUN */ - { 22969, -1 }, /* Color4fNormal3fVertex3fSUN */ - { 23978, -1 }, /* ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN */ - { 26080, -1 }, /* ReplacementCodeuiColor3fVertex3fSUN */ - { 27471, -1 }, /* TexCoord4fVertex4fSUN */ - { 27917, -1 }, /* TexCoord2fColor3fVertex3fvSUN */ - { 28304, -1 }, /* ReplacementCodeuiNormal3fVertex3fvSUN */ - { 28431, -1 }, /* TexCoord4fVertex4fvSUN */ - { 29165, -1 }, /* ReplacementCodeuiVertex3fSUN */ + { 4673, -1 }, /* Color4ubVertex3fSUN */ + { 4796, -1 }, /* TexCoord2fVertex3fSUN */ + { 5169, -1 }, /* TexCoord2fColor4fNormal3fVertex3fSUN */ + { 5620, -1 }, /* TexCoord2fNormal3fVertex3fvSUN */ + { 6349, -1 }, /* ReplacementCodeuiTexCoord2fNormal3fVertex3fSUN */ + { 7129, -1 }, /* ReplacementCodeuiColor4ubVertex3fvSUN */ + { 7488, -1 }, /* ReplacementCodeuiTexCoord2fVertex3fSUN */ + { 8980, -1 }, /* Color3fVertex3fSUN */ + { 10171, -1 }, /* Color3fVertex3fvSUN */ + { 10609, -1 }, /* Color4fNormal3fVertex3fvSUN */ + { 11438, -1 }, /* ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN */ + { 12919, -1 }, /* ReplacementCodeuiColor4fNormal3fVertex3fvSUN */ + { 14545, -1 }, /* ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN */ + { 15071, -1 }, /* TexCoord2fColor3fVertex3fSUN */ + { 16123, -1 }, /* TexCoord4fColor4fNormal3fVertex4fSUN */ + { 16565, -1 }, /* Color4ubVertex2fvSUN */ + { 16895, -1 }, /* Normal3fVertex3fSUN */ + { 17992, -1 }, /* ReplacementCodeuiColor4fNormal3fVertex3fSUN */ + { 18344, -1 }, /* TexCoord2fColor4fNormal3fVertex3fvSUN */ + { 18651, -1 }, /* TexCoord2fNormal3fVertex3fSUN */ + { 19260, -1 }, /* TexCoord2fVertex3fvSUN */ + { 20064, -1 }, /* Color4ubVertex2fSUN */ + { 20302, -1 }, /* ReplacementCodeuiColor4ubVertex3fSUN */ + { 22301, -1 }, /* TexCoord2fColor4ubVertex3fSUN */ + { 22761, -1 }, /* Normal3fVertex3fvSUN */ + { 23227, -1 }, /* Color4fNormal3fVertex3fSUN */ + { 24236, -1 }, /* ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN */ + { 26393, -1 }, /* ReplacementCodeuiColor3fVertex3fSUN */ + { 27784, -1 }, /* TexCoord4fVertex4fSUN */ + { 28230, -1 }, /* TexCoord2fColor3fVertex3fvSUN */ + { 28617, -1 }, /* ReplacementCodeuiNormal3fVertex3fvSUN */ + { 28744, -1 }, /* TexCoord4fVertex4fvSUN */ + { 29478, -1 }, /* ReplacementCodeuiVertex3fSUN */ { -1, -1 } }; #endif @@ -6517,38 +6594,38 @@ static const struct gl_function_remap GL_SUN_vertex_functions[] = { static const struct gl_function_remap GL_VERSION_1_3_functions[] = { { 425, _gloffset_MultiTexCoord3sARB }, { 657, _gloffset_ActiveTextureARB }, - { 4247, _gloffset_MultiTexCoord1fvARB }, - { 6155, _gloffset_MultiTexCoord3dARB }, - { 6200, _gloffset_MultiTexCoord2iARB }, - { 6324, _gloffset_MultiTexCoord2svARB }, - { 8324, _gloffset_MultiTexCoord2fARB }, - { 10384, _gloffset_MultiTexCoord3fvARB }, - { 10986, _gloffset_MultiTexCoord4sARB }, - { 11667, _gloffset_MultiTexCoord2dvARB }, - { 12082, _gloffset_MultiTexCoord1svARB }, - { 12454, _gloffset_MultiTexCoord3svARB }, - { 12515, _gloffset_MultiTexCoord4iARB }, - { 13316, _gloffset_MultiTexCoord3iARB }, - { 14186, _gloffset_MultiTexCoord1dARB }, - { 14403, _gloffset_MultiTexCoord3dvARB }, - { 15682, _gloffset_MultiTexCoord3ivARB }, - { 15727, _gloffset_MultiTexCoord2sARB }, - { 17145, _gloffset_MultiTexCoord4ivARB }, - { 19158, _gloffset_ClientActiveTextureARB }, - { 21458, _gloffset_MultiTexCoord2dARB }, - { 21895, _gloffset_MultiTexCoord4dvARB }, - { 22251, _gloffset_MultiTexCoord4fvARB }, - { 23201, _gloffset_MultiTexCoord3fARB }, - { 25771, _gloffset_MultiTexCoord4dARB }, - { 26037, _gloffset_MultiTexCoord1sARB }, - { 26241, _gloffset_MultiTexCoord1dvARB }, - { 27217, _gloffset_MultiTexCoord1ivARB }, - { 27310, _gloffset_MultiTexCoord2ivARB }, - { 27649, _gloffset_MultiTexCoord1iARB }, - { 29033, _gloffset_MultiTexCoord4svARB }, - { 29627, _gloffset_MultiTexCoord1fARB }, - { 29890, _gloffset_MultiTexCoord4fARB }, - { 32354, _gloffset_MultiTexCoord2fvARB }, + { 4268, _gloffset_MultiTexCoord1fvARB }, + { 6240, _gloffset_MultiTexCoord3dARB }, + { 6285, _gloffset_MultiTexCoord2iARB }, + { 6409, _gloffset_MultiTexCoord2svARB }, + { 8385, _gloffset_MultiTexCoord2fARB }, + { 10445, _gloffset_MultiTexCoord3fvARB }, + { 11047, _gloffset_MultiTexCoord4sARB }, + { 11728, _gloffset_MultiTexCoord2dvARB }, + { 12135, _gloffset_MultiTexCoord1svARB }, + { 12536, _gloffset_MultiTexCoord3svARB }, + { 12597, _gloffset_MultiTexCoord4iARB }, + { 13398, _gloffset_MultiTexCoord3iARB }, + { 14268, _gloffset_MultiTexCoord1dARB }, + { 14500, _gloffset_MultiTexCoord3dvARB }, + { 15779, _gloffset_MultiTexCoord3ivARB }, + { 15824, _gloffset_MultiTexCoord2sARB }, + { 17295, _gloffset_MultiTexCoord4ivARB }, + { 19360, _gloffset_ClientActiveTextureARB }, + { 21688, _gloffset_MultiTexCoord2dARB }, + { 22125, _gloffset_MultiTexCoord4dvARB }, + { 22481, _gloffset_MultiTexCoord4fvARB }, + { 23459, _gloffset_MultiTexCoord3fARB }, + { 26084, _gloffset_MultiTexCoord4dARB }, + { 26350, _gloffset_MultiTexCoord1sARB }, + { 26554, _gloffset_MultiTexCoord1dvARB }, + { 27530, _gloffset_MultiTexCoord1ivARB }, + { 27623, _gloffset_MultiTexCoord2ivARB }, + { 27962, _gloffset_MultiTexCoord1iARB }, + { 29346, _gloffset_MultiTexCoord4svARB }, + { 29970, _gloffset_MultiTexCoord1fARB }, + { 30233, _gloffset_MultiTexCoord4fARB }, + { 32702, _gloffset_MultiTexCoord2fvARB }, { -1, -1 } }; #endif From ecfaab88b2577bd0395bc05d75a036126806a9c4 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Sun, 10 Apr 2011 12:44:46 -0600 Subject: [PATCH 227/420] mesa: move sampler state into new gl_sampler_object type gl_texture_object contains an instance of this type for the regular texture object sampling state. glGenSamplers() generates new instances of gl_sampler_object which can override that state with glBindSampler(). --- src/mesa/drivers/common/meta.c | 18 +- src/mesa/drivers/dri/common/texmem.c | 7 +- src/mesa/drivers/dri/i810/i810tex.c | 12 +- src/mesa/drivers/dri/i915/i830_texstate.c | 24 +- src/mesa/drivers/dri/i915/i915_texstate.c | 38 +-- src/mesa/drivers/dri/i965/brw_draw.c | 12 +- src/mesa/drivers/dri/i965/brw_wm.c | 8 +- .../drivers/dri/i965/brw_wm_sampler_state.c | 32 +-- .../drivers/dri/i965/brw_wm_surface_state.c | 5 +- src/mesa/drivers/dri/intel/intel_tex_image.c | 4 +- .../drivers/dri/intel/intel_tex_validate.c | 2 +- src/mesa/drivers/dri/mach64/mach64_tex.c | 12 +- src/mesa/drivers/dri/mga/mgatex.c | 12 +- .../drivers/dri/nouveau/nouveau_texture.c | 4 +- src/mesa/drivers/dri/nouveau/nv04_state_tex.c | 12 +- src/mesa/drivers/dri/nouveau/nv10_state_tex.c | 12 +- src/mesa/drivers/dri/nouveau/nv20_state_tex.c | 14 +- src/mesa/drivers/dri/r128/r128_tex.c | 12 +- src/mesa/drivers/dri/r200/r200_tex.c | 18 +- .../drivers/dri/r300/r300_fragprog_common.c | 4 +- src/mesa/drivers/dri/r300/r300_state.c | 4 +- src/mesa/drivers/dri/r300/r300_tex.c | 18 +- src/mesa/drivers/dri/r300/r300_texstate.c | 2 +- src/mesa/drivers/dri/r600/evergreen_tex.c | 16 +- src/mesa/drivers/dri/r600/r600_tex.c | 16 +- src/mesa/drivers/dri/r600/r700_chip.c | 4 +- .../drivers/dri/radeon/radeon_mipmap_tree.c | 6 +- src/mesa/drivers/dri/radeon/radeon_tex.c | 18 +- src/mesa/drivers/dri/savage/savagerender.c | 12 +- src/mesa/drivers/dri/savage/savagetex.c | 12 +- src/mesa/drivers/dri/sis/sis_texstate.c | 22 +- src/mesa/drivers/dri/tdfx/tdfx_tex.c | 8 +- src/mesa/drivers/dri/unichrome/via_state.c | 32 +-- src/mesa/drivers/dri/unichrome/via_tex.c | 6 +- src/mesa/main/attrib.c | 25 +- src/mesa/main/ff_fragment_shader.cpp | 7 +- src/mesa/main/mtypes.h | 64 +++-- src/mesa/main/texfetch.c | 2 +- src/mesa/main/texobj.c | 94 +++---- src/mesa/main/texparam.c | 160 +++++------ src/mesa/main/texstate.c | 8 +- src/mesa/program/prog_statevars.c | 2 +- src/mesa/state_tracker/st_atom_sampler.c | 31 ++- src/mesa/state_tracker/st_atom_texture.c | 18 +- src/mesa/state_tracker/st_cb_texture.c | 12 +- src/mesa/state_tracker/st_texture.h | 15 ++ src/mesa/swrast/s_fragprog.c | 6 +- src/mesa/swrast/s_span.c | 2 +- src/mesa/swrast/s_texcombine.c | 22 +- src/mesa/swrast/s_texfilter.c | 255 +++++++++--------- src/mesa/swrast/s_triangle.c | 12 +- 51 files changed, 623 insertions(+), 550 deletions(-) diff --git a/src/mesa/drivers/common/meta.c b/src/mesa/drivers/common/meta.c index 2b00e8979d2..c92bf29c30f 100644 --- a/src/mesa/drivers/common/meta.c +++ b/src/mesa/drivers/common/meta.c @@ -1124,12 +1124,12 @@ blitframebuffer_texture(struct gl_context *ctx, if (readAtt && readAtt->Texture) { const struct gl_texture_object *texObj = readAtt->Texture; const GLuint srcLevel = readAtt->TextureLevel; - const GLenum minFilterSave = texObj->MinFilter; - const GLenum magFilterSave = texObj->MagFilter; + const GLenum minFilterSave = texObj->Sampler.MinFilter; + const GLenum magFilterSave = texObj->Sampler.MagFilter; const GLint baseLevelSave = texObj->BaseLevel; const GLint maxLevelSave = texObj->MaxLevel; - const GLenum wrapSSave = texObj->WrapS; - const GLenum wrapTSave = texObj->WrapT; + const GLenum wrapSSave = texObj->Sampler.WrapS; + const GLenum wrapTSave = texObj->Sampler.WrapT; const GLenum target = texObj->Target; if (drawAtt->Texture == readAtt->Texture) { @@ -2259,13 +2259,13 @@ _mesa_meta_GenerateMipmap(struct gl_context *ctx, GLenum target, struct vertex verts[4]; const GLuint baseLevel = texObj->BaseLevel; const GLuint maxLevel = texObj->MaxLevel; - const GLenum minFilterSave = texObj->MinFilter; - const GLenum magFilterSave = texObj->MagFilter; + const GLenum minFilterSave = texObj->Sampler.MinFilter; + const GLenum magFilterSave = texObj->Sampler.MagFilter; const GLint maxLevelSave = texObj->MaxLevel; const GLboolean genMipmapSave = texObj->GenerateMipmap; - const GLenum wrapSSave = texObj->WrapS; - const GLenum wrapTSave = texObj->WrapT; - const GLenum wrapRSave = texObj->WrapR; + const GLenum wrapSSave = texObj->Sampler.WrapS; + const GLenum wrapTSave = texObj->Sampler.WrapT; + const GLenum wrapRSave = texObj->Sampler.WrapR; const GLuint fboSave = ctx->DrawBuffer->Name; const GLuint original_active_unit = ctx->Texture.CurrentUnit; GLenum faceTarget; diff --git a/src/mesa/drivers/dri/common/texmem.c b/src/mesa/drivers/dri/common/texmem.c index 8eec07d5bcc..e927cf0addd 100644 --- a/src/mesa/drivers/dri/common/texmem.c +++ b/src/mesa/drivers/dri/common/texmem.c @@ -1264,17 +1264,18 @@ driCalculateTextureFirstLastLevel( driTextureObject * t ) case GL_TEXTURE_2D: case GL_TEXTURE_3D: case GL_TEXTURE_CUBE_MAP: - if (tObj->MinFilter == GL_NEAREST || tObj->MinFilter == GL_LINEAR) { + 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->MinLod + 0.5); + 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->MaxLod + 0.5); + 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); diff --git a/src/mesa/drivers/dri/i810/i810tex.c b/src/mesa/drivers/dri/i810/i810tex.c index 49364aeb225..dba4ebaa5c7 100644 --- a/src/mesa/drivers/dri/i810/i810tex.c +++ b/src/mesa/drivers/dri/i810/i810tex.c @@ -204,10 +204,10 @@ i810AllocTexObj( struct gl_context *ctx, struct gl_texture_object *texObj ) make_empty_list( & t->base ); - i810SetTexWrapping( t, texObj->WrapS, texObj->WrapT ); + i810SetTexWrapping( t, texObj->Sampler.WrapS, texObj->Sampler.WrapT ); /*i830SetTexMaxAnisotropy( t, texObj->MaxAnisotropy );*/ - i810SetTexFilter( imesa, t, texObj->MinFilter, texObj->MagFilter, bias ); - i810SetTexBorderColor( t, texObj->BorderColor.f ); + i810SetTexFilter( imesa, t, texObj->Sampler.MinFilter, texObj->Sampler.MagFilter, bias ); + i810SetTexBorderColor( t, texObj->Sampler.BorderColor.f ); } return t; @@ -238,17 +238,17 @@ static void i810TexParameter( struct gl_context *ctx, GLenum target, case GL_TEXTURE_MAG_FILTER: { GLfloat bias = ctx->Texture.Unit[ctx->Texture.CurrentUnit].LodBias; - i810SetTexFilter( imesa, t, tObj->MinFilter, tObj->MagFilter, bias ); + i810SetTexFilter( imesa, t, tObj->Sampler.MinFilter, tObj->Sampler.MagFilter, bias ); } break; case GL_TEXTURE_WRAP_S: case GL_TEXTURE_WRAP_T: - i810SetTexWrapping( t, tObj->WrapS, tObj->WrapT ); + i810SetTexWrapping( t, tObj->Sampler.WrapS, tObj->Sampler.WrapT ); break; case GL_TEXTURE_BORDER_COLOR: - i810SetTexBorderColor( t, tObj->BorderColor.f ); + i810SetTexBorderColor( t, tObj->Sampler.BorderColor.f ); break; case GL_TEXTURE_BASE_LEVEL: diff --git a/src/mesa/drivers/dri/i915/i830_texstate.c b/src/mesa/drivers/dri/i915/i830_texstate.c index c35b4b5ed06..7554bd5e7b9 100644 --- a/src/mesa/drivers/dri/i915/i830_texstate.c +++ b/src/mesa/drivers/dri/i915/i830_texstate.c @@ -193,7 +193,7 @@ i830_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) float maxlod; uint32_t minlod_fixed, maxlod_fixed; - switch (tObj->MinFilter) { + switch (tObj->Sampler.MinFilter) { case GL_NEAREST: minFilt = FILTER_NEAREST; mipFilt = MIPFILTER_NONE; @@ -222,12 +222,12 @@ i830_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) return GL_FALSE; } - if (tObj->MaxAnisotropy > 1.0) { + if (tObj->Sampler.MaxAnisotropy > 1.0) { minFilt = FILTER_ANISOTROPIC; magFilt = FILTER_ANISOTROPIC; } else { - switch (tObj->MagFilter) { + switch (tObj->Sampler.MagFilter) { case GL_NEAREST: magFilt = FILTER_NEAREST; break; @@ -239,7 +239,7 @@ i830_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) } } - lodbias = (int) ((tUnit->LodBias + tObj->LodBias) * 16.0); + lodbias = (int) ((tUnit->LodBias + tObj->Sampler.LodBias) * 16.0); if (lodbias < -64) lodbias = -64; if (lodbias > 63) @@ -259,8 +259,8 @@ i830_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) * addressable (smallest resolution) LOD. Use it to cover both * MAX_LEVEL and MAX_LOD. */ - minlod_fixed = U_FIXED(CLAMP(tObj->MinLod, 0.0, 11), 4); - maxlod = MIN2(tObj->MaxLod, tObj->_MaxLevel - tObj->BaseLevel); + minlod_fixed = U_FIXED(CLAMP(tObj->Sampler.MinLod, 0.0, 11), 4); + maxlod = MIN2(tObj->Sampler.MaxLod, tObj->_MaxLevel - tObj->BaseLevel); if (intel->intelScreen->deviceID == PCI_CHIP_I855_GM || intel->intelScreen->deviceID == PCI_CHIP_I865_G) { maxlod_fixed = U_FIXED(CLAMP(maxlod, 0.0, 11.75), 2); @@ -279,8 +279,8 @@ i830_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) } { - GLenum ws = tObj->WrapS; - GLenum wt = tObj->WrapT; + GLenum ws = tObj->Sampler.WrapS; + GLenum wt = tObj->Sampler.WrapT; /* 3D textures not available on i830 @@ -300,10 +300,10 @@ i830_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) } /* convert border color from float to ubyte */ - CLAMPED_FLOAT_TO_UBYTE(border[0], tObj->BorderColor.f[0]); - CLAMPED_FLOAT_TO_UBYTE(border[1], tObj->BorderColor.f[1]); - CLAMPED_FLOAT_TO_UBYTE(border[2], tObj->BorderColor.f[2]); - CLAMPED_FLOAT_TO_UBYTE(border[3], tObj->BorderColor.f[3]); + CLAMPED_FLOAT_TO_UBYTE(border[0], tObj->Sampler.BorderColor.f[0]); + CLAMPED_FLOAT_TO_UBYTE(border[1], tObj->Sampler.BorderColor.f[1]); + CLAMPED_FLOAT_TO_UBYTE(border[2], tObj->Sampler.BorderColor.f[2]); + CLAMPED_FLOAT_TO_UBYTE(border[3], tObj->Sampler.BorderColor.f[3]); state[I830_TEXREG_TM0S4] = PACK_COLOR_8888(border[3], border[0], diff --git a/src/mesa/drivers/dri/i915/i915_texstate.c b/src/mesa/drivers/dri/i915/i915_texstate.c index af140c85f50..742bb994adb 100644 --- a/src/mesa/drivers/dri/i915/i915_texstate.c +++ b/src/mesa/drivers/dri/i915/i915_texstate.c @@ -164,7 +164,7 @@ i915_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) format = translate_texture_format(firstImage->TexFormat, firstImage->InternalFormat, - tObj->DepthMode); + tObj->Sampler.DepthMode); pitch = intelObj->mt->region->pitch * intelObj->mt->cpp; state[I915_TEXREG_MS3] = @@ -181,7 +181,7 @@ i915_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) * (lowest resolution) LOD. Use it to cover both MAX_LEVEL and * MAX_LOD. */ - maxlod = MIN2(tObj->MaxLod, tObj->_MaxLevel - tObj->BaseLevel); + maxlod = MIN2(tObj->Sampler.MaxLod, tObj->_MaxLevel - tObj->BaseLevel); state[I915_TEXREG_MS4] = ((((pitch / 4) - 1) << MS4_PITCH_SHIFT) | MS4_CUBE_FACE_ENA_MASK | @@ -192,7 +192,7 @@ i915_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) { GLuint minFilt, mipFilt, magFilt; - switch (tObj->MinFilter) { + switch (tObj->Sampler.MinFilter) { case GL_NEAREST: minFilt = FILTER_NEAREST; mipFilt = MIPFILTER_NONE; @@ -221,16 +221,16 @@ i915_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) return GL_FALSE; } - if (tObj->MaxAnisotropy > 1.0) { + if (tObj->Sampler.MaxAnisotropy > 1.0) { minFilt = FILTER_ANISOTROPIC; magFilt = FILTER_ANISOTROPIC; - if (tObj->MaxAnisotropy > 2.0) + if (tObj->Sampler.MaxAnisotropy > 2.0) aniso = SS2_MAX_ANISO_4; else aniso = SS2_MAX_ANISO_2; } else { - switch (tObj->MagFilter) { + switch (tObj->Sampler.MagFilter) { case GL_NEAREST: magFilt = FILTER_NEAREST; break; @@ -242,7 +242,7 @@ i915_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) } } - lodbias = (int) ((tUnit->LodBias + tObj->LodBias) * 16.0); + lodbias = (int) ((tUnit->LodBias + tObj->Sampler.LodBias) * 16.0); if (lodbias < -256) lodbias = -256; if (lodbias > 255) @@ -258,14 +258,14 @@ i915_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) /* Shadow: */ - if (tObj->CompareMode == GL_COMPARE_R_TO_TEXTURE_ARB && + if (tObj->Sampler.CompareMode == GL_COMPARE_R_TO_TEXTURE_ARB && tObj->Target != GL_TEXTURE_3D) { if (tObj->Target == GL_TEXTURE_1D) return GL_FALSE; state[I915_TEXREG_SS2] |= (SS2_SHADOW_ENABLE | - intel_translate_shadow_compare_func(tObj->CompareFunc)); + intel_translate_shadow_compare_func(tObj->Sampler.CompareFunc)); minFilt = FILTER_4X4_FLAT; magFilt = FILTER_4X4_FLAT; @@ -278,9 +278,9 @@ i915_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) } { - GLenum ws = tObj->WrapS; - GLenum wt = tObj->WrapT; - GLenum wr = tObj->WrapR; + GLenum ws = tObj->Sampler.WrapS; + GLenum wt = tObj->Sampler.WrapT; + GLenum wr = tObj->Sampler.WrapR; float minlod; /* We program 1D textures as 2D textures, so the 2D texcoord could @@ -298,8 +298,8 @@ i915_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) * clamp_to_border. */ if (tObj->Target == GL_TEXTURE_3D && - (tObj->MinFilter != GL_NEAREST || - tObj->MagFilter != GL_NEAREST) && + (tObj->Sampler.MinFilter != GL_NEAREST || + tObj->Sampler.MagFilter != GL_NEAREST) && (ws == GL_CLAMP || wt == GL_CLAMP || wr == GL_CLAMP || @@ -322,7 +322,7 @@ i915_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) (translate_wrap_mode(wt) << SS3_TCY_ADDR_MODE_SHIFT) | (translate_wrap_mode(wr) << SS3_TCZ_ADDR_MODE_SHIFT)); - minlod = MIN2(tObj->MinLod, tObj->_MaxLevel - tObj->BaseLevel); + minlod = MIN2(tObj->Sampler.MinLod, tObj->_MaxLevel - tObj->BaseLevel); state[I915_TEXREG_SS3] |= (unit << SS3_TEXTUREMAP_INDEX_SHIFT); state[I915_TEXREG_SS3] |= (U_FIXED(CLAMP(minlod, 0.0, 11.0), 4) << SS3_MIN_LOD_SHIFT); @@ -330,10 +330,10 @@ i915_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) } /* convert border color from float to ubyte */ - CLAMPED_FLOAT_TO_UBYTE(border[0], tObj->BorderColor.f[0]); - CLAMPED_FLOAT_TO_UBYTE(border[1], tObj->BorderColor.f[1]); - CLAMPED_FLOAT_TO_UBYTE(border[2], tObj->BorderColor.f[2]); - CLAMPED_FLOAT_TO_UBYTE(border[3], tObj->BorderColor.f[3]); + CLAMPED_FLOAT_TO_UBYTE(border[0], tObj->Sampler.BorderColor.f[0]); + CLAMPED_FLOAT_TO_UBYTE(border[1], tObj->Sampler.BorderColor.f[1]); + CLAMPED_FLOAT_TO_UBYTE(border[2], tObj->Sampler.BorderColor.f[2]); + CLAMPED_FLOAT_TO_UBYTE(border[3], tObj->Sampler.BorderColor.f[3]); if (firstImage->_BaseFormat == GL_DEPTH_COMPONENT) { /* GL specs that border color for depth textures is taken from the diff --git a/src/mesa/drivers/dri/i965/brw_draw.c b/src/mesa/drivers/dri/i965/brw_draw.c index f5abe021c43..63ae28f8575 100644 --- a/src/mesa/drivers/dri/i965/brw_draw.c +++ b/src/mesa/drivers/dri/i965/brw_draw.c @@ -271,20 +271,20 @@ static GLboolean check_fallbacks( struct brw_context *brw, struct gl_texture_unit *texUnit = &ctx->Texture.Unit[u]; if (texUnit->Enabled) { if (texUnit->Enabled & TEXTURE_1D_BIT) { - if (texUnit->CurrentTex[TEXTURE_1D_INDEX]->WrapS == GL_CLAMP) { + if (texUnit->CurrentTex[TEXTURE_1D_INDEX]->Sampler.WrapS == GL_CLAMP) { return GL_TRUE; } } if (texUnit->Enabled & TEXTURE_2D_BIT) { - if (texUnit->CurrentTex[TEXTURE_2D_INDEX]->WrapS == GL_CLAMP || - texUnit->CurrentTex[TEXTURE_2D_INDEX]->WrapT == GL_CLAMP) { + if (texUnit->CurrentTex[TEXTURE_2D_INDEX]->Sampler.WrapS == GL_CLAMP || + texUnit->CurrentTex[TEXTURE_2D_INDEX]->Sampler.WrapT == GL_CLAMP) { return GL_TRUE; } } if (texUnit->Enabled & TEXTURE_3D_BIT) { - if (texUnit->CurrentTex[TEXTURE_3D_INDEX]->WrapS == GL_CLAMP || - texUnit->CurrentTex[TEXTURE_3D_INDEX]->WrapT == GL_CLAMP || - texUnit->CurrentTex[TEXTURE_3D_INDEX]->WrapR == GL_CLAMP) { + if (texUnit->CurrentTex[TEXTURE_3D_INDEX]->Sampler.WrapS == GL_CLAMP || + texUnit->CurrentTex[TEXTURE_3D_INDEX]->Sampler.WrapT == GL_CLAMP || + texUnit->CurrentTex[TEXTURE_3D_INDEX]->Sampler.WrapR == GL_CLAMP) { return GL_TRUE; } } diff --git a/src/mesa/drivers/dri/i965/brw_wm.c b/src/mesa/drivers/dri/i965/brw_wm.c index ca51d1599a4..2dd28fd1c58 100644 --- a/src/mesa/drivers/dri/i965/brw_wm.c +++ b/src/mesa/drivers/dri/i965/brw_wm.c @@ -370,14 +370,14 @@ static void brw_wm_populate_key( struct brw_context *brw, * well and our shadow compares always return the result in * all 4 channels. */ - if (t->CompareMode == GL_COMPARE_R_TO_TEXTURE_ARB) { - if (t->DepthMode == GL_ALPHA) { + if (t->Sampler.CompareMode == GL_COMPARE_R_TO_TEXTURE_ARB) { + if (t->Sampler.DepthMode == GL_ALPHA) { swizzles[0] = SWIZZLE_ZERO; swizzles[1] = SWIZZLE_ZERO; swizzles[2] = SWIZZLE_ZERO; - } else if (t->DepthMode == GL_LUMINANCE) { + } else if (t->Sampler.DepthMode == GL_LUMINANCE) { swizzles[3] = SWIZZLE_ONE; - } else if (t->DepthMode == GL_RED) { + } else if (t->Sampler.DepthMode == GL_RED) { /* See table 3.23 of the GL 3.0 spec. */ swizzles[1] = SWIZZLE_ZERO; swizzles[2] = SWIZZLE_ZERO; diff --git a/src/mesa/drivers/dri/i965/brw_wm_sampler_state.c b/src/mesa/drivers/dri/i965/brw_wm_sampler_state.c index 30672b4251b..cfc30d8613f 100644 --- a/src/mesa/drivers/dri/i965/brw_wm_sampler_state.c +++ b/src/mesa/drivers/dri/i965/brw_wm_sampler_state.c @@ -288,26 +288,26 @@ brw_wm_sampler_populate_key(struct brw_context *brw, entry->seamless_cube_map = (texObj->Target == GL_TEXTURE_CUBE_MAP) ? ctx->Texture.CubeMapSeamless : GL_FALSE; - entry->wrap_r = texObj->WrapR; - entry->wrap_s = texObj->WrapS; - entry->wrap_t = texObj->WrapT; + entry->wrap_r = texObj->Sampler.WrapR; + entry->wrap_s = texObj->Sampler.WrapS; + entry->wrap_t = texObj->Sampler.WrapT; - entry->maxlod = texObj->MaxLod; - entry->minlod = texObj->MinLod; - entry->lod_bias = texUnit->LodBias + texObj->LodBias; - entry->max_aniso = texObj->MaxAnisotropy; - entry->minfilter = texObj->MinFilter; - entry->magfilter = texObj->MagFilter; - entry->comparemode = texObj->CompareMode; - entry->comparefunc = texObj->CompareFunc; + entry->maxlod = texObj->Sampler.MaxLod; + entry->minlod = texObj->Sampler.MinLod; + entry->lod_bias = texUnit->LodBias + texObj->Sampler.LodBias; + entry->max_aniso = texObj->Sampler.MaxAnisotropy; + entry->minfilter = texObj->Sampler.MinFilter; + entry->magfilter = texObj->Sampler.MagFilter; + entry->comparemode = texObj->Sampler.CompareMode; + entry->comparefunc = texObj->Sampler.CompareFunc; drm_intel_bo_unreference(brw->wm.sdc_bo[unit]); if (firstImage->_BaseFormat == GL_DEPTH_COMPONENT) { float bordercolor[4] = { - texObj->BorderColor.f[0], - texObj->BorderColor.f[0], - texObj->BorderColor.f[0], - texObj->BorderColor.f[0] + texObj->Sampler.BorderColor.f[0], + texObj->Sampler.BorderColor.f[0], + texObj->Sampler.BorderColor.f[0], + texObj->Sampler.BorderColor.f[0] }; /* GL specs that border color for depth textures is taken from the * R channel, while the hardware uses A. Spam R into all the @@ -316,7 +316,7 @@ brw_wm_sampler_populate_key(struct brw_context *brw, brw->wm.sdc_bo[unit] = upload_default_color(brw, bordercolor); } else { brw->wm.sdc_bo[unit] = upload_default_color(brw, - texObj->BorderColor.f); + texObj->Sampler.BorderColor.f); } key->sampler_count = unit + 1; } diff --git a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c index aeda4d5ce4e..5a478a76e5c 100644 --- a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c +++ b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c @@ -201,8 +201,9 @@ brw_update_texture_surface( struct gl_context *ctx, GLuint unit ) surf->ss0.mipmap_layout_mode = BRW_SURFACE_MIPMAPLAYOUT_BELOW; surf->ss0.surface_type = translate_tex_target(tObj->Target); surf->ss0.surface_format = translate_tex_format(firstImage->TexFormat, - firstImage->InternalFormat, - tObj->DepthMode, tObj->sRGBDecode); + firstImage->InternalFormat, + tObj->Sampler.DepthMode, + tObj->Sampler.sRGBDecode); /* This is ok for all textures with channel width 8bit or less: */ diff --git a/src/mesa/drivers/dri/intel/intel_tex_image.c b/src/mesa/drivers/dri/intel/intel_tex_image.c index b3a2b1b0c85..775fd1008f9 100644 --- a/src/mesa/drivers/dri/intel/intel_tex_image.c +++ b/src/mesa/drivers/dri/intel/intel_tex_image.c @@ -112,8 +112,8 @@ intel_miptree_create_for_teximage(struct intel_context *intel, * resizable buffers, or require that buffers implement lazy * pagetable arrangements. */ - if ((intelObj->base.MinFilter == GL_NEAREST || - intelObj->base.MinFilter == GL_LINEAR) && + if ((intelObj->base.Sampler.MinFilter == GL_NEAREST || + intelObj->base.Sampler.MinFilter == GL_LINEAR) && intelImage->level == firstLevel && (intel->gen < 4 || firstLevel == 0)) { lastLevel = firstLevel; diff --git a/src/mesa/drivers/dri/intel/intel_tex_validate.c b/src/mesa/drivers/dri/intel/intel_tex_validate.c index a11b07ed09d..5e705c93619 100644 --- a/src/mesa/drivers/dri/intel/intel_tex_validate.c +++ b/src/mesa/drivers/dri/intel/intel_tex_validate.c @@ -18,7 +18,7 @@ intel_update_max_level(struct intel_context *intel, { struct gl_texture_object *tObj = &intelObj->base; - if (tObj->MinFilter == GL_NEAREST || tObj->MinFilter == GL_LINEAR) { + if (tObj->Sampler.MinFilter == GL_NEAREST || tObj->Sampler.MinFilter == GL_LINEAR) { intelObj->_MaxLevel = tObj->BaseLevel; } else { intelObj->_MaxLevel = tObj->_MaxLevel; diff --git a/src/mesa/drivers/dri/mach64/mach64_tex.c b/src/mesa/drivers/dri/mach64/mach64_tex.c index 68d273a3e75..8e10b314b64 100644 --- a/src/mesa/drivers/dri/mach64/mach64_tex.c +++ b/src/mesa/drivers/dri/mach64/mach64_tex.c @@ -123,9 +123,9 @@ mach64AllocTexObj( struct gl_texture_object *texObj ) make_empty_list( (driTextureObject *) t ); - mach64SetTexWrap( t, texObj->WrapS, texObj->WrapT ); - mach64SetTexFilter( t, texObj->MinFilter, texObj->MagFilter ); - mach64SetTexBorderColor( t, texObj->BorderColor.f ); + mach64SetTexWrap( t, texObj->Sampler.WrapS, texObj->Sampler.WrapT ); + mach64SetTexFilter( t, texObj->Sampler.MinFilter, texObj->Sampler.MagFilter ); + mach64SetTexBorderColor( t, texObj->Sampler.BorderColor.f ); return t; } @@ -454,18 +454,18 @@ static void mach64DDTexParameter( struct gl_context *ctx, GLenum target, case GL_TEXTURE_MIN_FILTER: case GL_TEXTURE_MAG_FILTER: if ( t->base.bound ) FLUSH_BATCH( mmesa ); - mach64SetTexFilter( t, tObj->MinFilter, tObj->MagFilter ); + mach64SetTexFilter( t, tObj->Sampler.MinFilter, tObj->Sampler.MagFilter ); break; case GL_TEXTURE_WRAP_S: case GL_TEXTURE_WRAP_T: if ( t->base.bound ) FLUSH_BATCH( mmesa ); - mach64SetTexWrap( t, tObj->WrapS, tObj->WrapT ); + mach64SetTexWrap( t, tObj->Sampler.WrapS, tObj->Sampler.WrapT ); break; case GL_TEXTURE_BORDER_COLOR: if ( t->base.bound ) FLUSH_BATCH( mmesa ); - mach64SetTexBorderColor( t, tObj->BorderColor.f ); + mach64SetTexBorderColor( t, tObj->Sampler.BorderColor.f ); break; case GL_TEXTURE_BASE_LEVEL: diff --git a/src/mesa/drivers/dri/mga/mgatex.c b/src/mesa/drivers/dri/mga/mgatex.c index 11ab9b6117d..ebbfec36556 100644 --- a/src/mesa/drivers/dri/mga/mgatex.c +++ b/src/mesa/drivers/dri/mga/mgatex.c @@ -327,9 +327,9 @@ mgaAllocTexObj( struct gl_texture_object *tObj ) make_empty_list( & t->base ); - mgaSetTexWrapping( t, tObj->WrapS, tObj->WrapT ); - mgaSetTexFilter( t, tObj->MinFilter, tObj->MagFilter ); - mgaSetTexBorderColor( t, tObj->BorderColor.f ); + mgaSetTexWrapping( t, tObj->Sampler.WrapS, tObj->Sampler.WrapT ); + mgaSetTexFilter( t, tObj->Sampler.MinFilter, tObj->Sampler.MagFilter ); + mgaSetTexBorderColor( t, tObj->Sampler.BorderColor.f ); } return( t ); @@ -447,18 +447,18 @@ mgaTexParameter( struct gl_context *ctx, GLenum target, /* FALLTHROUGH */ case GL_TEXTURE_MAG_FILTER: FLUSH_BATCH(mmesa); - mgaSetTexFilter( t, tObj->MinFilter, tObj->MagFilter ); + mgaSetTexFilter( t, tObj->Sampler.MinFilter, tObj->Sampler.MagFilter ); break; case GL_TEXTURE_WRAP_S: case GL_TEXTURE_WRAP_T: FLUSH_BATCH(mmesa); - mgaSetTexWrapping(t,tObj->WrapS,tObj->WrapT); + mgaSetTexWrapping(t,tObj->Sampler.WrapS,tObj->Sampler.WrapT); break; case GL_TEXTURE_BORDER_COLOR: FLUSH_BATCH(mmesa); - mgaSetTexBorderColor(t, tObj->BorderColor.f); + mgaSetTexBorderColor(t, tObj->Sampler.BorderColor.f); break; case GL_TEXTURE_BASE_LEVEL: diff --git a/src/mesa/drivers/dri/nouveau/nouveau_texture.c b/src/mesa/drivers/dri/nouveau/nouveau_texture.c index 1a1e10e0b3a..36e68c99181 100644 --- a/src/mesa/drivers/dri/nouveau/nouveau_texture.c +++ b/src/mesa/drivers/dri/nouveau/nouveau_texture.c @@ -270,8 +270,8 @@ get_last_level(struct gl_texture_object *t) { struct gl_texture_image *base = t->Image[0][t->BaseLevel]; - if (t->MinFilter == GL_NEAREST || - t->MinFilter == GL_LINEAR || !base) + if (t->Sampler.MinFilter == GL_NEAREST || + t->Sampler.MinFilter == GL_LINEAR || !base) return t->BaseLevel; else return MIN2(t->BaseLevel + base->MaxLog2, t->MaxLevel); diff --git a/src/mesa/drivers/dri/nouveau/nv04_state_tex.c b/src/mesa/drivers/dri/nouveau/nv04_state_tex.c index 5ed8b147559..6c96e580013 100644 --- a/src/mesa/drivers/dri/nouveau/nv04_state_tex.c +++ b/src/mesa/drivers/dri/nouveau/nv04_state_tex.c @@ -80,8 +80,8 @@ nv04_emit_tex_obj(struct gl_context *ctx, int emit) s = &to_nouveau_texture(t)->surfaces[t->BaseLevel]; - if (t->MinFilter != GL_NEAREST && - t->MinFilter != GL_LINEAR) { + if (t->Sampler.MinFilter != GL_NEAREST && + t->Sampler.MinFilter != GL_LINEAR) { lod_max = CLAMP(MIN2(t->MaxLod, t->_MaxLambda), 0, 15) + 1; @@ -89,17 +89,17 @@ nv04_emit_tex_obj(struct gl_context *ctx, int emit) t->LodBias, -16, 15) * 8; } - format |= nvgl_wrap_mode(t->WrapT) << 28 | - nvgl_wrap_mode(t->WrapS) << 24 | + format |= nvgl_wrap_mode(t->Sampler.WrapT) << 28 | + nvgl_wrap_mode(t->Sampler.WrapS) << 24 | ti->HeightLog2 << 20 | ti->WidthLog2 << 16 | lod_max << 12 | get_tex_format(ti); filter |= log2i(t->MaxAnisotropy) << 31 | - nvgl_filter_mode(t->MagFilter) << 28 | + nvgl_filter_mode(t->Sampler.MagFilter) << 28 | log2i(t->MaxAnisotropy) << 27 | - nvgl_filter_mode(t->MinFilter) << 24 | + nvgl_filter_mode(t->Sampler.MinFilter) << 24 | (lod_bias & 0xff) << 16; } else { diff --git a/src/mesa/drivers/dri/nouveau/nv10_state_tex.c b/src/mesa/drivers/dri/nouveau/nv10_state_tex.c index fda67b15073..1d98b1970ef 100644 --- a/src/mesa/drivers/dri/nouveau/nv10_state_tex.c +++ b/src/mesa/drivers/dri/nouveau/nv10_state_tex.c @@ -173,14 +173,14 @@ nv10_emit_tex_obj(struct gl_context *ctx, int emit) return; /* Recompute the texturing registers. */ - tx_format = nvgl_wrap_mode(t->WrapT) << 28 - | nvgl_wrap_mode(t->WrapS) << 24 + tx_format = nvgl_wrap_mode(t->Sampler.WrapT) << 28 + | nvgl_wrap_mode(t->Sampler.WrapS) << 24 | ti->HeightLog2 << 20 | ti->WidthLog2 << 16 | 5 << 4 | 1 << 12; - tx_filter = nvgl_filter_mode(t->MagFilter) << 28 - | nvgl_filter_mode(t->MinFilter) << 24; + tx_filter = nvgl_filter_mode(t->Sampler.MagFilter) << 28 + | nvgl_filter_mode(t->Sampler.MinFilter) << 24; tx_enable = NV10_3D_TEX_ENABLE_ENABLE | log2i(t->MaxAnisotropy) << 4; @@ -196,8 +196,8 @@ nv10_emit_tex_obj(struct gl_context *ctx, int emit) tx_format |= get_tex_format_pot(ti); } - if (t->MinFilter != GL_NEAREST && - t->MinFilter != GL_LINEAR) { + if (t->Sampler.MinFilter != GL_NEAREST && + t->Sampler.MinFilter != GL_LINEAR) { int lod_min = t->MinLod; int lod_max = MIN2(t->MaxLod, t->_MaxLambda); int lod_bias = t->LodBias diff --git a/src/mesa/drivers/dri/nouveau/nv20_state_tex.c b/src/mesa/drivers/dri/nouveau/nv20_state_tex.c index c362aca0fdb..fdbfdf42595 100644 --- a/src/mesa/drivers/dri/nouveau/nv20_state_tex.c +++ b/src/mesa/drivers/dri/nouveau/nv20_state_tex.c @@ -186,12 +186,12 @@ nv20_emit_tex_obj(struct gl_context *ctx, int emit) | NV20_3D_TEX_FORMAT_NO_BORDER | 1 << 16; - tx_wrap = nvgl_wrap_mode(t->WrapR) << 16 - | nvgl_wrap_mode(t->WrapT) << 8 - | nvgl_wrap_mode(t->WrapS) << 0; + tx_wrap = nvgl_wrap_mode(t->Sampler.WrapR) << 16 + | nvgl_wrap_mode(t->Sampler.WrapT) << 8 + | nvgl_wrap_mode(t->Sampler.WrapS) << 0; - tx_filter = nvgl_filter_mode(t->MagFilter) << 24 - | nvgl_filter_mode(t->MinFilter) << 16 + tx_filter = nvgl_filter_mode(t->Sampler.MagFilter) << 24 + | nvgl_filter_mode(t->Sampler.MinFilter) << 16 | 2 << 12; tx_enable = NV20_3D_TEX_ENABLE_ENABLE @@ -208,8 +208,8 @@ nv20_emit_tex_obj(struct gl_context *ctx, int emit) tx_format |= get_tex_format_pot(ti); } - if (t->MinFilter != GL_NEAREST && - t->MinFilter != GL_LINEAR) { + if (t->Sampler.MinFilter != GL_NEAREST && + t->Sampler.MinFilter != GL_LINEAR) { int lod_min = t->MinLod; int lod_max = MIN2(t->MaxLod, t->_MaxLambda); int lod_bias = t->LodBias diff --git a/src/mesa/drivers/dri/r128/r128_tex.c b/src/mesa/drivers/dri/r128/r128_tex.c index ba3305e076e..a3f6ce8edeb 100644 --- a/src/mesa/drivers/dri/r128/r128_tex.c +++ b/src/mesa/drivers/dri/r128/r128_tex.c @@ -162,9 +162,9 @@ static r128TexObjPtr r128AllocTexObj( struct gl_texture_object *texObj ) make_empty_list( (driTextureObject *) t ); - r128SetTexWrap( t, texObj->WrapS, texObj->WrapT ); - r128SetTexFilter( t, texObj->MinFilter, texObj->MagFilter ); - r128SetTexBorderColor( t, texObj->BorderColor.f ); + r128SetTexWrap( t, texObj->Sampler.WrapS, texObj->Sampler.WrapT ); + r128SetTexFilter( t, texObj->Sampler.MinFilter, texObj->Sampler.MagFilter ); + r128SetTexBorderColor( t, texObj->Sampler.BorderColor.f ); } return t; @@ -519,18 +519,18 @@ static void r128TexParameter( struct gl_context *ctx, GLenum target, case GL_TEXTURE_MIN_FILTER: case GL_TEXTURE_MAG_FILTER: if ( t->base.bound ) FLUSH_BATCH( rmesa ); - r128SetTexFilter( t, tObj->MinFilter, tObj->MagFilter ); + r128SetTexFilter( t, tObj->Sampler.MinFilter, tObj->Sampler.MagFilter ); break; case GL_TEXTURE_WRAP_S: case GL_TEXTURE_WRAP_T: if ( t->base.bound ) FLUSH_BATCH( rmesa ); - r128SetTexWrap( t, tObj->WrapS, tObj->WrapT ); + r128SetTexWrap( t, tObj->Sampler.WrapS, tObj->Sampler.WrapT ); break; case GL_TEXTURE_BORDER_COLOR: if ( t->base.bound ) FLUSH_BATCH( rmesa ); - r128SetTexBorderColor( t, tObj->BorderColor.f ); + r128SetTexBorderColor( t, tObj->Sampler.BorderColor.f ); break; case GL_TEXTURE_BASE_LEVEL: diff --git a/src/mesa/drivers/dri/r200/r200_tex.c b/src/mesa/drivers/dri/r200/r200_tex.c index 092b7575831..d42e8f12041 100644 --- a/src/mesa/drivers/dri/r200/r200_tex.c +++ b/src/mesa/drivers/dri/r200/r200_tex.c @@ -383,18 +383,18 @@ static void r200TexParameter( struct gl_context *ctx, GLenum target, case GL_TEXTURE_MIN_FILTER: case GL_TEXTURE_MAG_FILTER: case GL_TEXTURE_MAX_ANISOTROPY_EXT: - r200SetTexMaxAnisotropy( t, texObj->MaxAnisotropy ); - r200SetTexFilter( t, texObj->MinFilter, texObj->MagFilter ); + r200SetTexMaxAnisotropy( t, texObj->Sampler.MaxAnisotropy ); + r200SetTexFilter( t, texObj->Sampler.MinFilter, texObj->Sampler.MagFilter ); break; case GL_TEXTURE_WRAP_S: case GL_TEXTURE_WRAP_T: case GL_TEXTURE_WRAP_R: - r200SetTexWrap( t, texObj->WrapS, texObj->WrapT, texObj->WrapR ); + r200SetTexWrap( t, texObj->Sampler.WrapS, texObj->Sampler.WrapT, texObj->Sampler.WrapR ); break; case GL_TEXTURE_BORDER_COLOR: - r200SetTexBorderColor( t, texObj->BorderColor.f ); + r200SetTexBorderColor( t, texObj->Sampler.BorderColor.f ); break; case GL_TEXTURE_BASE_LEVEL: @@ -479,13 +479,13 @@ static struct gl_texture_object *r200NewTextureObject(struct gl_context * ctx, _mesa_lookup_enum_by_nr(target), t); _mesa_initialize_texture_object(&t->base, name, target); - t->base.MaxAnisotropy = rmesa->radeon.initialMaxAnisotropy; + t->base.Sampler.MaxAnisotropy = rmesa->radeon.initialMaxAnisotropy; /* Initialize hardware state */ - r200SetTexWrap( t, t->base.WrapS, t->base.WrapT, t->base.WrapR ); - r200SetTexMaxAnisotropy( t, t->base.MaxAnisotropy ); - r200SetTexFilter(t, t->base.MinFilter, t->base.MagFilter); - r200SetTexBorderColor(t, t->base.BorderColor.f); + r200SetTexWrap( t, t->base.Sampler.WrapS, t->base.Sampler.WrapT, t->base.Sampler.WrapR ); + r200SetTexMaxAnisotropy( t, t->base.Sampler.MaxAnisotropy ); + r200SetTexFilter(t, t->base.Sampler.MinFilter, t->base.Sampler.MagFilter); + r200SetTexBorderColor(t, t->base.Sampler.BorderColor.f); return &t->base; } diff --git a/src/mesa/drivers/dri/r300/r300_fragprog_common.c b/src/mesa/drivers/dri/r300/r300_fragprog_common.c index 50cf8d6f9db..f0d960dca54 100644 --- a/src/mesa/drivers/dri/r300/r300_fragprog_common.c +++ b/src/mesa/drivers/dri/r300/r300_fragprog_common.c @@ -77,8 +77,8 @@ static void build_state( if (fp->Base.ShadowSamplers & (1 << unit)) { struct gl_texture_object* tex = r300->radeon.glCtx->Texture.Unit[unit]._Current; - state->unit[unit].texture_swizzle = build_dts(tex->DepthMode); - state->unit[unit].texture_compare_func = build_func(tex->CompareFunc); + state->unit[unit].texture_swizzle = build_dts(tex->Sampler.DepthMode); + state->unit[unit].texture_compare_func = build_func(tex->Sampler.CompareFunc); } } } diff --git a/src/mesa/drivers/dri/r300/r300_state.c b/src/mesa/drivers/dri/r300/r300_state.c index 51989c6b224..da6c8b602e1 100644 --- a/src/mesa/drivers/dri/r300/r300_state.c +++ b/src/mesa/drivers/dri/r300/r300_state.c @@ -1343,7 +1343,7 @@ static void r300SetupTextures(struct gl_context * ctx) */ r300->hw.tex.filter_1.cmd[R300_TEX_VALUE_0 + hw_tmu] = t->pp_txfilter_1 | - translate_lod_bias(ctx->Texture.Unit[i].LodBias + t->base.LodBias); + translate_lod_bias(ctx->Texture.Unit[i].LodBias + t->base.Sampler.LodBias); r300->hw.tex.size.cmd[R300_TEX_VALUE_0 + hw_tmu] = t->pp_txsize; r300->hw.tex.format.cmd[R300_TEX_VALUE_0 + @@ -2014,7 +2014,7 @@ static const GLfloat *get_fragmentprogram_constant(struct gl_context *ctx, GLuin buffer[0] = buffer[1] = buffer[2] = - buffer[3] = texObj->CompareFailValue; + buffer[3] = texObj->Sampler.CompareFailValue; } return buffer; } diff --git a/src/mesa/drivers/dri/r300/r300_tex.c b/src/mesa/drivers/dri/r300/r300_tex.c index f930b4d06bf..590d9afe14a 100644 --- a/src/mesa/drivers/dri/r300/r300_tex.c +++ b/src/mesa/drivers/dri/r300/r300_tex.c @@ -81,13 +81,13 @@ static void r300UpdateTexWrap(radeonTexObjPtr t) t->pp_txfilter &= ~(R300_TX_WRAP_S_MASK | R300_TX_WRAP_T_MASK | R300_TX_WRAP_R_MASK); - t->pp_txfilter |= translate_wrap_mode(tObj->WrapS) << R300_TX_WRAP_S_SHIFT; + t->pp_txfilter |= translate_wrap_mode(tObj->Sampler.WrapS) << R300_TX_WRAP_S_SHIFT; if (tObj->Target != GL_TEXTURE_1D) { - t->pp_txfilter |= translate_wrap_mode(tObj->WrapT) << R300_TX_WRAP_T_SHIFT; + t->pp_txfilter |= translate_wrap_mode(tObj->Sampler.WrapT) << R300_TX_WRAP_T_SHIFT; if (tObj->Target == GL_TEXTURE_3D) - t->pp_txfilter |= translate_wrap_mode(tObj->WrapR) << R300_TX_WRAP_R_SHIFT; + t->pp_txfilter |= translate_wrap_mode(tObj->Sampler.WrapR) << R300_TX_WRAP_R_SHIFT; } } @@ -202,7 +202,7 @@ static void r300TexParameter(struct gl_context * ctx, GLenum target, case GL_TEXTURE_MIN_FILTER: case GL_TEXTURE_MAG_FILTER: case GL_TEXTURE_MAX_ANISOTROPY_EXT: - r300SetTexFilter(t, texObj->MinFilter, texObj->MagFilter, texObj->MaxAnisotropy); + r300SetTexFilter(t, texObj->Sampler.MinFilter, texObj->Sampler.MagFilter, texObj->Sampler.MaxAnisotropy); break; case GL_TEXTURE_WRAP_S: @@ -212,7 +212,7 @@ static void r300TexParameter(struct gl_context * ctx, GLenum target, break; case GL_TEXTURE_BORDER_COLOR: - r300SetTexBorderColor(t, texObj->BorderColor.f); + r300SetTexBorderColor(t, texObj->Sampler.BorderColor.f); break; case GL_TEXTURE_BASE_LEVEL: @@ -299,12 +299,14 @@ static struct gl_texture_object *r300NewTextureObject(struct gl_context * ctx, } _mesa_initialize_texture_object(&t->base, name, target); - t->base.MaxAnisotropy = rmesa->radeon.initialMaxAnisotropy; + t->base.Sampler.MaxAnisotropy = rmesa->radeon.initialMaxAnisotropy; /* Initialize hardware state */ r300UpdateTexWrap(t); - r300SetTexFilter(t, t->base.MinFilter, t->base.MagFilter, t->base.MaxAnisotropy); - r300SetTexBorderColor(t, t->base.BorderColor.f); + r300SetTexFilter(t, t->base.Sampler.MinFilter, + t->base.Sampler.MagFilter, + t->base.Sampler.MaxAnisotropy); + r300SetTexBorderColor(t, t->base.Sampler.BorderColor.f); return &t->base; } diff --git a/src/mesa/drivers/dri/r300/r300_texstate.c b/src/mesa/drivers/dri/r300/r300_texstate.c index ed9955b05d8..e24ad6f088d 100644 --- a/src/mesa/drivers/dri/r300/r300_texstate.c +++ b/src/mesa/drivers/dri/r300/r300_texstate.c @@ -216,7 +216,7 @@ void r300SetDepthTexMode(struct gl_texture_object *tObj) return; } - switch (tObj->DepthMode) { + switch (tObj->Sampler.DepthMode) { case GL_LUMINANCE: t->pp_txformat = format[0]; break; diff --git a/src/mesa/drivers/dri/r600/evergreen_tex.c b/src/mesa/drivers/dri/r600/evergreen_tex.c index 3b5448a0e4e..5fdb91a63d1 100644 --- a/src/mesa/drivers/dri/r600/evergreen_tex.c +++ b/src/mesa/drivers/dri/r600/evergreen_tex.c @@ -699,18 +699,18 @@ static void evergreenUpdateTexWrap(radeonTexObjPtr t) { struct gl_texture_object *tObj = &t->base; - SETfield(t->SQ_TEX_SAMPLER0, evergreen_translate_wrap_mode(tObj->WrapS), + SETfield(t->SQ_TEX_SAMPLER0, evergreen_translate_wrap_mode(tObj->Sampler.WrapS), EG_SQ_TEX_SAMPLER_WORD0_0__CLAMP_X_shift, EG_SQ_TEX_SAMPLER_WORD0_0__CLAMP_X_mask); if (tObj->Target != GL_TEXTURE_1D) { - SETfield(t->SQ_TEX_SAMPLER0, evergreen_translate_wrap_mode(tObj->WrapT), + SETfield(t->SQ_TEX_SAMPLER0, evergreen_translate_wrap_mode(tObj->Sampler.WrapT), EG_SQ_TEX_SAMPLER_WORD0_0__CLAMP_Y_shift, EG_SQ_TEX_SAMPLER_WORD0_0__CLAMP_Y_mask); if (tObj->Target == GL_TEXTURE_3D) - SETfield(t->SQ_TEX_SAMPLER0, evergreen_translate_wrap_mode(tObj->WrapR), + SETfield(t->SQ_TEX_SAMPLER0, evergreen_translate_wrap_mode(tObj->Sampler.WrapR), EG_SQ_TEX_SAMPLER_WORD0_0__CLAMP_Z_shift, EG_SQ_TEX_SAMPLER_WORD0_0__CLAMP_Z_mask); } @@ -901,7 +901,7 @@ static void evergreenSetTexFilter(radeonTexObjPtr t, GLenum minf, GLenum magf, G } } -static void evergreenSetTexBorderColor(radeonTexObjPtr t, const GLfloat color[4]) +static void evergreenSetTexSampler.BorderColor(radeonTexObjPtr t, const GLfloat color[4]) { t->TD_PS_SAMPLER0_BORDER_ALPHA = *((uint32_t*)&(color[3])); t->TD_PS_SAMPLER0_BORDER_RED = *((uint32_t*)&(color[2])); @@ -1424,8 +1424,8 @@ static struct gl_texture_object *evergreenNewTextureObject(struct gl_context * c evergreenSetTexDefaultState(t); evergreenUpdateTexWrap(t); - evergreenSetTexFilter(t, t->base.MinFilter, t->base.MagFilter, t->base.MaxAnisotropy); - evergreenSetTexBorderColor(t, t->base.BorderColor.f); + evergreenSetTexFilter(t, t->base.Sampler.MinFilter, t->base.Sampler.MagFilter, t->base.MaxAnisotropy); + evergreenSetTexSampler.BorderColor(t, t->base.Sampler.BorderColor.f); return &t->base; } @@ -1475,7 +1475,7 @@ static void evergreenTexParameter(struct gl_context * ctx, GLenum target, case GL_TEXTURE_MIN_FILTER: case GL_TEXTURE_MAG_FILTER: case GL_TEXTURE_MAX_ANISOTROPY_EXT: - evergreenSetTexFilter(t, texObj->MinFilter, texObj->MagFilter, texObj->MaxAnisotropy); + evergreenSetTexFilter(t, texObj->Sampler.MinFilter, texObj->Sampler.MagFilter, texObj->MaxAnisotropy); break; case GL_TEXTURE_WRAP_S: @@ -1485,7 +1485,7 @@ static void evergreenTexParameter(struct gl_context * ctx, GLenum target, break; case GL_TEXTURE_BORDER_COLOR: - evergreenSetTexBorderColor(t, texObj->BorderColor.f); + evergreenSetTexSampler.BorderColor(t, texObj->Sampler.BorderColor.f); break; case GL_TEXTURE_BASE_LEVEL: diff --git a/src/mesa/drivers/dri/r600/r600_tex.c b/src/mesa/drivers/dri/r600/r600_tex.c index fe4f0e48661..07f6de7ad49 100644 --- a/src/mesa/drivers/dri/r600/r600_tex.c +++ b/src/mesa/drivers/dri/r600/r600_tex.c @@ -78,15 +78,15 @@ static void r600UpdateTexWrap(radeonTexObjPtr t) { struct gl_texture_object *tObj = &t->base; - SETfield(t->SQ_TEX_SAMPLER0, translate_wrap_mode(tObj->WrapS), + SETfield(t->SQ_TEX_SAMPLER0, translate_wrap_mode(tObj->Sampler.WrapS), SQ_TEX_SAMPLER_WORD0_0__CLAMP_X_shift, SQ_TEX_SAMPLER_WORD0_0__CLAMP_X_mask); if (tObj->Target != GL_TEXTURE_1D) { - SETfield(t->SQ_TEX_SAMPLER0, translate_wrap_mode(tObj->WrapT), + SETfield(t->SQ_TEX_SAMPLER0, translate_wrap_mode(tObj->Sampler.WrapT), CLAMP_Y_shift, CLAMP_Y_mask); if (tObj->Target == GL_TEXTURE_3D) - SETfield(t->SQ_TEX_SAMPLER0, translate_wrap_mode(tObj->WrapR), + SETfield(t->SQ_TEX_SAMPLER0, translate_wrap_mode(tObj->Sampler.WrapR), CLAMP_Z_shift, CLAMP_Z_mask); } } @@ -262,7 +262,7 @@ static void r600SetTexFilter(radeonTexObjPtr t, GLenum minf, GLenum magf, GLfloa } } -static void r600SetTexBorderColor(radeonTexObjPtr t, const GLfloat color[4]) +static void r600SetTexSampler.BorderColor(radeonTexObjPtr t, const GLfloat color[4]) { t->TD_PS_SAMPLER0_BORDER_ALPHA = *((uint32_t*)&(color[3])); t->TD_PS_SAMPLER0_BORDER_BLUE = *((uint32_t*)&(color[2])); @@ -292,7 +292,7 @@ static void r600TexParameter(struct gl_context * ctx, GLenum target, case GL_TEXTURE_MIN_FILTER: case GL_TEXTURE_MAG_FILTER: case GL_TEXTURE_MAX_ANISOTROPY_EXT: - r600SetTexFilter(t, texObj->MinFilter, texObj->MagFilter, texObj->MaxAnisotropy); + r600SetTexFilter(t, texObj->Sampler.MinFilter, texObj->Sampler.MagFilter, texObj->MaxAnisotropy); break; case GL_TEXTURE_WRAP_S: @@ -302,7 +302,7 @@ static void r600TexParameter(struct gl_context * ctx, GLenum target, break; case GL_TEXTURE_BORDER_COLOR: - r600SetTexBorderColor(t, texObj->BorderColor.f); + r600SetTexSampler.BorderColor(t, texObj->Sampler.BorderColor.f); break; case GL_TEXTURE_BASE_LEVEL: @@ -387,8 +387,8 @@ static struct gl_texture_object *r600NewTextureObject(struct gl_context * ctx, /* Initialize hardware state */ r600SetTexDefaultState(t); r600UpdateTexWrap(t); - r600SetTexFilter(t, t->base.MinFilter, t->base.MagFilter, t->base.MaxAnisotropy); - r600SetTexBorderColor(t, t->base.BorderColor.f); + r600SetTexFilter(t, t->base.Sampler.MinFilter, t->base.Sampler.MagFilter, t->base.MaxAnisotropy); + r600SetTexSampler.BorderColor(t, t->base.Sampler.BorderColor.f); return &t->base; } diff --git a/src/mesa/drivers/dri/r600/r700_chip.c b/src/mesa/drivers/dri/r600/r700_chip.c index 4ec2845ab44..ff456c67e2e 100644 --- a/src/mesa/drivers/dri/r600/r700_chip.c +++ b/src/mesa/drivers/dri/r600/r700_chip.c @@ -141,7 +141,7 @@ static void r700SendTexSamplerState(struct gl_context *ctx, struct radeon_state_ } } -static void r700SendTexBorderColorState(struct gl_context *ctx, struct radeon_state_atom *atom) +static void r700SendTexSampler.BorderColorState(struct gl_context *ctx, struct radeon_state_atom *atom) { context_t *context = R700_CONTEXT(ctx); R700_CHIP_CONTEXT *r700 = (R700_CHIP_CONTEXT*)(&context->hw); @@ -1640,7 +1640,7 @@ void r600InitAtoms(context_t *context) ALLOC_STATE(vtx, vtx, (VERT_ATTRIB_MAX * 18), r700SendVTXState); ALLOC_STATE(tx, tx, (R700_TEXTURE_NUMBERUNITS * 20), r700SendTexState); ALLOC_STATE(tx_smplr, tx, (R700_TEXTURE_NUMBERUNITS * 5), r700SendTexSamplerState); - ALLOC_STATE(tx_brdr_clr, tx, (R700_TEXTURE_NUMBERUNITS * 6), r700SendTexBorderColorState); + ALLOC_STATE(tx_brdr_clr, tx, (R700_TEXTURE_NUMBERUNITS * 6), r700SendTexSampler.BorderColorState); r600_init_query_stateobj(&context->radeon, 6 * 2); context->radeon.hw.is_dirty = GL_TRUE; diff --git a/src/mesa/drivers/dri/radeon/radeon_mipmap_tree.c b/src/mesa/drivers/dri/radeon/radeon_mipmap_tree.c index 1fadad2756b..03d9b264367 100644 --- a/src/mesa/drivers/dri/radeon/radeon_mipmap_tree.c +++ b/src/mesa/drivers/dri/radeon/radeon_mipmap_tree.c @@ -296,15 +296,15 @@ static void calculate_min_max_lod(struct gl_texture_object *tObj, case GL_TEXTURE_2D: case GL_TEXTURE_3D: case GL_TEXTURE_CUBE_MAP: - if (tObj->MinFilter == GL_NEAREST || tObj->MinFilter == GL_LINEAR) { + if (tObj->Sampler.MinFilter == GL_NEAREST || tObj->Sampler.MinFilter == GL_LINEAR) { /* GL_NEAREST and GL_LINEAR only care about GL_TEXTURE_BASE_LEVEL. */ minLod = maxLod = tObj->BaseLevel; } else { - minLod = tObj->BaseLevel + (GLint)(tObj->MinLod); + minLod = tObj->BaseLevel + (GLint)(tObj->Sampler.MinLod); minLod = MAX2(minLod, tObj->BaseLevel); minLod = MIN2(minLod, tObj->MaxLevel); - maxLod = tObj->BaseLevel + (GLint)(tObj->MaxLod + 0.5); + maxLod = tObj->BaseLevel + (GLint)(tObj->Sampler.MaxLod + 0.5); maxLod = MIN2(maxLod, tObj->MaxLevel); maxLod = MIN2(maxLod, tObj->Image[0][minLod]->MaxLog2 + minLod); maxLod = MAX2(maxLod, minLod); /* need at least one level */ diff --git a/src/mesa/drivers/dri/radeon/radeon_tex.c b/src/mesa/drivers/dri/radeon/radeon_tex.c index 8a35c7d2d27..25a8ddf7b6a 100644 --- a/src/mesa/drivers/dri/radeon/radeon_tex.c +++ b/src/mesa/drivers/dri/radeon/radeon_tex.c @@ -330,17 +330,17 @@ static void radeonTexParameter( struct gl_context *ctx, GLenum target, case GL_TEXTURE_MIN_FILTER: case GL_TEXTURE_MAG_FILTER: case GL_TEXTURE_MAX_ANISOTROPY_EXT: - radeonSetTexMaxAnisotropy( t, texObj->MaxAnisotropy ); - radeonSetTexFilter( t, texObj->MinFilter, texObj->MagFilter ); + radeonSetTexMaxAnisotropy( t, texObj->Sampler.MaxAnisotropy ); + radeonSetTexFilter( t, texObj->Sampler.MinFilter, texObj->Sampler.MagFilter ); break; case GL_TEXTURE_WRAP_S: case GL_TEXTURE_WRAP_T: - radeonSetTexWrap( t, texObj->WrapS, texObj->WrapT ); + radeonSetTexWrap( t, texObj->Sampler.WrapS, texObj->Sampler.WrapT ); break; case GL_TEXTURE_BORDER_COLOR: - radeonSetTexBorderColor( t, texObj->BorderColor.f ); + radeonSetTexBorderColor( t, texObj->Sampler.BorderColor.f ); break; case GL_TEXTURE_BASE_LEVEL: @@ -416,7 +416,7 @@ radeonNewTextureObject( struct gl_context *ctx, GLuint name, GLenum target ) radeonTexObj* t = CALLOC_STRUCT(radeon_tex_obj); _mesa_initialize_texture_object(&t->base, name, target); - t->base.MaxAnisotropy = rmesa->radeon.initialMaxAnisotropy; + t->base.Sampler.MaxAnisotropy = rmesa->radeon.initialMaxAnisotropy; t->border_fallback = GL_FALSE; @@ -424,10 +424,10 @@ radeonNewTextureObject( struct gl_context *ctx, GLuint name, GLenum target ) t->pp_txformat = (RADEON_TXFORMAT_ENDIAN_NO_SWAP | RADEON_TXFORMAT_PERSPECTIVE_ENABLE); - radeonSetTexWrap( t, t->base.WrapS, t->base.WrapT ); - radeonSetTexMaxAnisotropy( t, t->base.MaxAnisotropy ); - radeonSetTexFilter( t, t->base.MinFilter, t->base.MagFilter ); - radeonSetTexBorderColor( t, t->base.BorderColor.f ); + radeonSetTexWrap( t, t->base.Sampler.WrapS, t->base.Sampler.WrapT ); + radeonSetTexMaxAnisotropy( t, t->base.Sampler.MaxAnisotropy ); + radeonSetTexFilter( t, t->base.Sampler.MinFilter, t->base.Sampler.MagFilter ); + radeonSetTexBorderColor( t, t->base.Sampler.BorderColor.f ); return &t->base; } diff --git a/src/mesa/drivers/dri/savage/savagerender.c b/src/mesa/drivers/dri/savage/savagerender.c index 8cc448ad4f7..6687dc5f466 100644 --- a/src/mesa/drivers/dri/savage/savagerender.c +++ b/src/mesa/drivers/dri/savage/savagerender.c @@ -250,9 +250,9 @@ static GLboolean run_texnorm_stage( struct gl_context *ctx, const GLbitfield reallyEnabled = ctx->Texture.Unit[i]._ReallyEnabled; if (reallyEnabled) { const struct gl_texture_object *texObj = ctx->Texture.Unit[i]._Current; - const GLboolean normalizeS = (texObj->WrapS == GL_REPEAT); + const GLboolean normalizeS = (texObj->Sampler.WrapS == GL_REPEAT); const GLboolean normalizeT = (reallyEnabled & TEXTURE_2D_BIT) && - (texObj->WrapT == GL_REPEAT); + (texObj->Sampler.WrapT == GL_REPEAT); const GLfloat *in = (GLfloat *)VB->AttribPtr[_TNL_ATTRIB_TEX0 + i]->data; const GLint instride = VB->AttribPtr[_TNL_ATTRIB_TEX0 + i]->stride; GLfloat (*out)[4] = store->texcoord[i].data; @@ -332,15 +332,15 @@ static void validate_texnorm( struct gl_context *ctx, GLuint flags = 0; if (((ctx->Texture.Unit[0]._ReallyEnabled & (TEXTURE_1D_BIT|TEXTURE_2D_BIT)) && - (ctx->Texture.Unit[0]._Current->WrapS == GL_REPEAT)) || + (ctx->Texture.Unit[0]._Current->Sampler.WrapS == GL_REPEAT)) || ((ctx->Texture.Unit[0]._ReallyEnabled & TEXTURE_2D_BIT) && - (ctx->Texture.Unit[0]._Current->WrapT == GL_REPEAT))) + (ctx->Texture.Unit[0]._Current->Sampler.WrapT == GL_REPEAT))) flags |= VERT_BIT_TEX0; if (((ctx->Texture.Unit[1]._ReallyEnabled & (TEXTURE_1D_BIT|TEXTURE_2D_BIT)) && - (ctx->Texture.Unit[1]._Current->WrapS == GL_REPEAT)) || + (ctx->Texture.Unit[1]._Current->Sampler.WrapS == GL_REPEAT)) || ((ctx->Texture.Unit[1]._ReallyEnabled & TEXTURE_2D_BIT) && - (ctx->Texture.Unit[1]._Current->WrapT == GL_REPEAT))) + (ctx->Texture.Unit[1]._Current->Sampler.WrapT == GL_REPEAT))) flags |= VERT_BIT_TEX1; store->active = (flags != 0); diff --git a/src/mesa/drivers/dri/savage/savagetex.c b/src/mesa/drivers/dri/savage/savagetex.c index 3aece732c99..9486c12c158 100644 --- a/src/mesa/drivers/dri/savage/savagetex.c +++ b/src/mesa/drivers/dri/savage/savagetex.c @@ -502,9 +502,9 @@ savageAllocTexObj( struct gl_texture_object *texObj ) make_empty_list( &t->base ); - savageSetTexWrapping(t,texObj->WrapS,texObj->WrapT); - savageSetTexFilter(t,texObj->MinFilter,texObj->MagFilter); - savageSetTexBorderColor(t,texObj->BorderColor.f); + savageSetTexWrapping(t,texObj->Sampler.WrapS,texObj->Sampler.WrapT); + savageSetTexFilter(t,texObj->Sampler.MinFilter,texObj->Sampler.MagFilter); + savageSetTexBorderColor(t,texObj->Sampler.BorderColor.f); } return t; @@ -2031,16 +2031,16 @@ static void savageTexParameter( struct gl_context *ctx, GLenum target, switch (pname) { case GL_TEXTURE_MIN_FILTER: case GL_TEXTURE_MAG_FILTER: - savageSetTexFilter(t,tObj->MinFilter,tObj->MagFilter); + savageSetTexFilter(t,tObj->Sampler.MinFilter,tObj->Sampler.MagFilter); break; case GL_TEXTURE_WRAP_S: case GL_TEXTURE_WRAP_T: - savageSetTexWrapping(t,tObj->WrapS,tObj->WrapT); + savageSetTexWrapping(t,tObj->Sampler.WrapS,tObj->Sampler.WrapT); break; case GL_TEXTURE_BORDER_COLOR: - savageSetTexBorderColor(t,tObj->BorderColor.f); + savageSetTexBorderColor(t,tObj->Sampler.BorderColor.f); break; default: diff --git a/src/mesa/drivers/dri/sis/sis_texstate.c b/src/mesa/drivers/dri/sis/sis_texstate.c index daec2393211..6580f155bae 100644 --- a/src/mesa/drivers/dri/sis/sis_texstate.c +++ b/src/mesa/drivers/dri/sis/sis_texstate.c @@ -335,7 +335,7 @@ sis_set_texobj_parm( struct gl_context *ctx, struct gl_texture_object *texObj, current->texture[hw_unit].hwTextureMip = 0UL; current->texture[hw_unit].hwTextureSet = t->hwformat; - if ((texObj->MinFilter == GL_NEAREST) || (texObj->MinFilter == GL_LINEAR)) { + if ((texObj->Sampler.MinFilter == GL_NEAREST) || (texObj->Sampler.MinFilter == GL_LINEAR)) { firstLevel = lastLevel = texObj->BaseLevel; } else { /* Compute which mipmap levels we really want to send to the hardware. @@ -344,9 +344,9 @@ sis_set_texobj_parm( struct gl_context *ctx, struct gl_texture_object *texObj, * Yes, this looks overly complicated, but it's all needed. */ - firstLevel = texObj->BaseLevel + (GLint)(texObj->MinLod + 0.5); + firstLevel = texObj->BaseLevel + (GLint)(texObj->Sampler.MinLod + 0.5); firstLevel = MAX2(firstLevel, texObj->BaseLevel); - lastLevel = texObj->BaseLevel + (GLint)(texObj->MaxLod + 0.5); + lastLevel = texObj->BaseLevel + (GLint)(texObj->Sampler.MaxLod + 0.5); lastLevel = MAX2(lastLevel, texObj->BaseLevel); lastLevel = MIN2(lastLevel, texObj->BaseLevel + texObj->Image[0][texObj->BaseLevel]->MaxLog2); @@ -356,7 +356,7 @@ sis_set_texobj_parm( struct gl_context *ctx, struct gl_texture_object *texObj, current->texture[hw_unit].hwTextureSet |= (lastLevel << 8); - switch (texObj->MagFilter) + switch (texObj->Sampler.MagFilter) { case GL_NEAREST: current->texture[hw_unit].hwTextureMip |= TEXTURE_FILTER_NEAREST; @@ -382,7 +382,7 @@ sis_set_texobj_parm( struct gl_context *ctx, struct gl_texture_object *texObj, MASK_TextureMipmapLodBias); } - switch (texObj->MinFilter) + switch (texObj->Sampler.MinFilter) { case GL_NEAREST: current->texture[hw_unit].hwTextureMip |= TEXTURE_FILTER_NEAREST; @@ -408,7 +408,7 @@ sis_set_texobj_parm( struct gl_context *ctx, struct gl_texture_object *texObj, break; } - switch (texObj->WrapS) + switch (texObj->Sampler.WrapS) { case GL_REPEAT: current->texture[hw_unit].hwTextureSet |= MASK_TextureWrapU; @@ -431,7 +431,7 @@ sis_set_texobj_parm( struct gl_context *ctx, struct gl_texture_object *texObj, break; } - switch (texObj->WrapT) + switch (texObj->Sampler.WrapT) { case GL_REPEAT: current->texture[hw_unit].hwTextureSet |= MASK_TextureWrapV; @@ -456,10 +456,10 @@ sis_set_texobj_parm( struct gl_context *ctx, struct gl_texture_object *texObj, { GLubyte c[4]; - CLAMPED_FLOAT_TO_UBYTE(c[0], texObj->BorderColor.f[0]); - CLAMPED_FLOAT_TO_UBYTE(c[1], texObj->BorderColor.f[1]); - CLAMPED_FLOAT_TO_UBYTE(c[2], texObj->BorderColor.f[2]); - CLAMPED_FLOAT_TO_UBYTE(c[3], texObj->BorderColor.f[3]); + CLAMPED_FLOAT_TO_UBYTE(c[0], texObj->Sampler.BorderColor.f[0]); + CLAMPED_FLOAT_TO_UBYTE(c[1], texObj->Sampler.BorderColor.f[1]); + CLAMPED_FLOAT_TO_UBYTE(c[2], texObj->Sampler.BorderColor.f[2]); + CLAMPED_FLOAT_TO_UBYTE(c[3], texObj->Sampler.BorderColor.f[3]); current->texture[hw_unit].hwTextureBorderColor = PACK_COLOR_8888(c[3], c[0], c[1], c[2]); diff --git a/src/mesa/drivers/dri/tdfx/tdfx_tex.c b/src/mesa/drivers/dri/tdfx/tdfx_tex.c index 4cca243d076..d74ddb24005 100644 --- a/src/mesa/drivers/dri/tdfx/tdfx_tex.c +++ b/src/mesa/drivers/dri/tdfx/tdfx_tex.c @@ -327,7 +327,7 @@ static void RevalidateTexture(struct gl_context *ctx, struct gl_texture_object * &(ti->sScale), &(ti->tScale), NULL, NULL); } - if (tObj->Image[0][maxl] && (tObj->MinFilter != GL_NEAREST) && (tObj->MinFilter != GL_LINEAR)) { + if (tObj->Image[0][maxl] && (tObj->Sampler.MinFilter != GL_NEAREST) && (tObj->Sampler.MinFilter != GL_LINEAR)) { /* mipmapping: need to compute smallLodLog2 */ tdfxTexGetInfo(ctx, tObj->Image[0][maxl]->Width, tObj->Image[0][maxl]->Height, @@ -1786,12 +1786,12 @@ tdfxTestProxyTexImage(struct gl_context *ctx, GLenum target, #endif if (level == 0) { /* don't use mipmap levels > 0 */ - tObj->MinFilter = tObj->MagFilter = GL_NEAREST; + tObj->Sampler.MinFilter = tObj->Sampler.MagFilter = GL_NEAREST; } else { /* test with all mipmap levels */ - tObj->MinFilter = GL_LINEAR_MIPMAP_LINEAR; - tObj->MagFilter = GL_NEAREST; + tObj->Sampler.MinFilter = GL_LINEAR_MIPMAP_LINEAR; + tObj->Sampler.MagFilter = GL_NEAREST; } RevalidateTexture(ctx, tObj); diff --git a/src/mesa/drivers/dri/unichrome/via_state.c b/src/mesa/drivers/dri/unichrome/via_state.c index 774f439bfb6..3b270e02a97 100644 --- a/src/mesa/drivers/dri/unichrome/via_state.c +++ b/src/mesa/drivers/dri/unichrome/via_state.c @@ -877,21 +877,21 @@ static GLboolean viaChooseTextureState(struct gl_context *ctx) if (texUnit0->_ReallyEnabled) { struct gl_texture_object *texObj = texUnit0->_Current; - vmesa->regHTXnTB[0] = get_minmag_filter( texObj->MinFilter, - texObj->MagFilter ); + vmesa->regHTXnTB[0] = get_minmag_filter( texObj->Sampler.MinFilter, + texObj->Sampler.MagFilter ); vmesa->regHTXnMPMD[0] &= ~(HC_HTXnMPMD_SMASK | HC_HTXnMPMD_TMASK); - vmesa->regHTXnMPMD[0] |= get_wrap_mode( texObj->WrapS, - texObj->WrapT ); + vmesa->regHTXnMPMD[0] |= get_wrap_mode( texObj->Sampler.WrapS, + texObj->Sampler.WrapT ); vmesa->regHTXnTB[0] &= ~(HC_HTXnTB_TBC_S | HC_HTXnTB_TBC_T); if (texObj->Image[0][texObj->BaseLevel]->Border > 0) { vmesa->regHTXnTB[0] |= (HC_HTXnTB_TBC_S | HC_HTXnTB_TBC_T); vmesa->regHTXnTBC[0] = - PACK_COLOR_888(FLOAT_TO_UBYTE(texObj->BorderColor.f[0]), - FLOAT_TO_UBYTE(texObj->BorderColor.f[1]), - FLOAT_TO_UBYTE(texObj->BorderColor.f[2])); - vmesa->regHTXnTRAH[0] = FLOAT_TO_UBYTE(texObj->BorderColor.f[3]); + PACK_COLOR_888(FLOAT_TO_UBYTE(texObj->Sampler.BorderColor.f[0]), + FLOAT_TO_UBYTE(texObj->Sampler.BorderColor.f[1]), + FLOAT_TO_UBYTE(texObj->Sampler.BorderColor.f[2])); + vmesa->regHTXnTRAH[0] = FLOAT_TO_UBYTE(texObj->Sampler.BorderColor.f[3]); } if (texUnit0->LodBias != 0.0f) { @@ -911,20 +911,20 @@ static GLboolean viaChooseTextureState(struct gl_context *ctx) if (texUnit1->_ReallyEnabled) { struct gl_texture_object *texObj = texUnit1->_Current; - vmesa->regHTXnTB[1] = get_minmag_filter( texObj->MinFilter, - texObj->MagFilter ); + vmesa->regHTXnTB[1] = get_minmag_filter( texObj->Sampler.MinFilter, + texObj->Sampler.MagFilter ); vmesa->regHTXnMPMD[1] &= ~(HC_HTXnMPMD_SMASK | HC_HTXnMPMD_TMASK); - vmesa->regHTXnMPMD[1] |= get_wrap_mode( texObj->WrapS, - texObj->WrapT ); + vmesa->regHTXnMPMD[1] |= get_wrap_mode( texObj->Sampler.WrapS, + texObj->Sampler.WrapT ); vmesa->regHTXnTB[1] &= ~(HC_HTXnTB_TBC_S | HC_HTXnTB_TBC_T); if (texObj->Image[0][texObj->BaseLevel]->Border > 0) { vmesa->regHTXnTB[1] |= (HC_HTXnTB_TBC_S | HC_HTXnTB_TBC_T); vmesa->regHTXnTBC[1] = - PACK_COLOR_888(FLOAT_TO_UBYTE(texObj->BorderColor.f[0]), - FLOAT_TO_UBYTE(texObj->BorderColor.f[1]), - FLOAT_TO_UBYTE(texObj->BorderColor.f[2])); - vmesa->regHTXnTRAH[1] = FLOAT_TO_UBYTE(texObj->BorderColor.f[3]); + PACK_COLOR_888(FLOAT_TO_UBYTE(texObj->Sampler.BorderColor.f[0]), + FLOAT_TO_UBYTE(texObj->Sampler.BorderColor.f[1]), + FLOAT_TO_UBYTE(texObj->Sampler.BorderColor.f[2])); + vmesa->regHTXnTRAH[1] = FLOAT_TO_UBYTE(texObj->Sampler.BorderColor.f[3]); } diff --git a/src/mesa/drivers/dri/unichrome/via_tex.c b/src/mesa/drivers/dri/unichrome/via_tex.c index a2fb010e142..1a0d1eaf070 100644 --- a/src/mesa/drivers/dri/unichrome/via_tex.c +++ b/src/mesa/drivers/dri/unichrome/via_tex.c @@ -495,13 +495,13 @@ static GLboolean viaSetTexImages(struct gl_context *ctx, * GL_TEXTURE_MAX_LOD, GL_TEXTURE_BASE_LEVEL, and GL_TEXTURE_MAX_LEVEL. * Yes, this looks overly complicated, but it's all needed. */ - if (texObj->MinFilter == GL_LINEAR || texObj->MinFilter == GL_NEAREST) { + if (texObj->Sampler.MinFilter == GL_LINEAR || texObj->Sampler.MinFilter == GL_NEAREST) { firstLevel = lastLevel = texObj->BaseLevel; } else { - firstLevel = texObj->BaseLevel + (GLint)(texObj->MinLod + 0.5); + firstLevel = texObj->BaseLevel + (GLint)(texObj->Sampler.MinLod + 0.5); firstLevel = MAX2(firstLevel, texObj->BaseLevel); - lastLevel = texObj->BaseLevel + (GLint)(texObj->MaxLod + 0.5); + lastLevel = texObj->BaseLevel + (GLint)(texObj->Sampler.MaxLod + 0.5); lastLevel = MAX2(lastLevel, texObj->BaseLevel); lastLevel = MIN2(lastLevel, texObj->BaseLevel + baseImage->image.MaxLog2); lastLevel = MIN2(lastLevel, texObj->MaxLevel); diff --git a/src/mesa/main/attrib.c b/src/mesa/main/attrib.c index 6a2f4870db9..57310040235 100644 --- a/src/mesa/main/attrib.c +++ b/src/mesa/main/attrib.c @@ -770,6 +770,7 @@ pop_texture_group(struct gl_context *ctx, struct texture_state *texstate) /* Restore texture object state for each target */ for (tgt = 0; tgt < NUM_TEXTURE_TARGETS; tgt++) { const struct gl_texture_object *obj = NULL; + const struct gl_sampler_object *samp; GLenum target; obj = &texstate->SavedObj[u][tgt]; @@ -797,26 +798,28 @@ pop_texture_group(struct gl_context *ctx, struct texture_state *texstate) _mesa_BindTexture(target, obj->Name); - _mesa_TexParameterfv(target, GL_TEXTURE_BORDER_COLOR, obj->BorderColor.f); + samp = &obj->Sampler; + + _mesa_TexParameterfv(target, GL_TEXTURE_BORDER_COLOR, samp->BorderColor.f); + _mesa_TexParameteri(target, GL_TEXTURE_WRAP_S, samp->WrapS); + _mesa_TexParameteri(target, GL_TEXTURE_WRAP_T, samp->WrapT); + _mesa_TexParameteri(target, GL_TEXTURE_WRAP_R, samp->WrapR); + _mesa_TexParameteri(target, GL_TEXTURE_MIN_FILTER, samp->MinFilter); + _mesa_TexParameteri(target, GL_TEXTURE_MAG_FILTER, samp->MagFilter); + _mesa_TexParameterf(target, GL_TEXTURE_MIN_LOD, samp->MinLod); + _mesa_TexParameterf(target, GL_TEXTURE_MAX_LOD, samp->MaxLod); + _mesa_TexParameterf(target, GL_TEXTURE_LOD_BIAS, samp->LodBias); _mesa_TexParameterf(target, GL_TEXTURE_PRIORITY, obj->Priority); - _mesa_TexParameteri(target, GL_TEXTURE_WRAP_S, obj->WrapS); - _mesa_TexParameteri(target, GL_TEXTURE_WRAP_T, obj->WrapT); - _mesa_TexParameteri(target, GL_TEXTURE_WRAP_R, obj->WrapR); - _mesa_TexParameteri(target, GL_TEXTURE_MIN_FILTER, obj->MinFilter); - _mesa_TexParameteri(target, GL_TEXTURE_MAG_FILTER, obj->MagFilter); - _mesa_TexParameterf(target, GL_TEXTURE_MIN_LOD, obj->MinLod); - _mesa_TexParameterf(target, GL_TEXTURE_MAX_LOD, obj->MaxLod); - _mesa_TexParameterf(target, GL_TEXTURE_LOD_BIAS, obj->LodBias); _mesa_TexParameteri(target, GL_TEXTURE_BASE_LEVEL, obj->BaseLevel); if (target != GL_TEXTURE_RECTANGLE_ARB) _mesa_TexParameteri(target, GL_TEXTURE_MAX_LEVEL, obj->MaxLevel); if (ctx->Extensions.EXT_texture_filter_anisotropic) { _mesa_TexParameterf(target, GL_TEXTURE_MAX_ANISOTROPY_EXT, - obj->MaxAnisotropy); + samp->MaxAnisotropy); } if (ctx->Extensions.ARB_shadow_ambient) { _mesa_TexParameterf(target, GL_TEXTURE_COMPARE_FAIL_VALUE_ARB, - obj->CompareFailValue); + samp->CompareFailValue); } } diff --git a/src/mesa/main/ff_fragment_shader.cpp b/src/mesa/main/ff_fragment_shader.cpp index bf65a4f6485..43930a4b30e 100644 --- a/src/mesa/main/ff_fragment_shader.cpp +++ b/src/mesa/main/ff_fragment_shader.cpp @@ -439,9 +439,10 @@ static GLuint make_state_key( struct gl_context *ctx, struct state_key *key ) key->unit[i].source_index = translate_tex_src_bit(texUnit->_ReallyEnabled); - key->unit[i].shadow = ((texObj->CompareMode == GL_COMPARE_R_TO_TEXTURE) && - ((format == GL_DEPTH_COMPONENT) || - (format == GL_DEPTH_STENCIL_EXT))); + key->unit[i].shadow = + ((texObj->Sampler.CompareMode == GL_COMPARE_R_TO_TEXTURE) && + ((format == GL_DEPTH_COMPONENT) || + (format == GL_DEPTH_STENCIL_EXT))); key->unit[i].NumArgsRGB = comb->_NumArgsRGB; key->unit[i].NumArgsA = comb->_NumArgsA; diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index 13e4325ee45..9e2905ab2b1 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -1304,6 +1304,42 @@ typedef enum } gl_face_index; +/** + * Sampler object state. These objects are new with GL_ARB_sampler_objects + * and OpenGL 3.3. Legacy texture objects also contain a sampler object. + */ +struct gl_sampler_object +{ + GLuint Name; + GLint RefCount; + + GLenum WrapS; /**< S-axis texture image wrap mode */ + GLenum WrapT; /**< T-axis texture image wrap mode */ + GLenum WrapR; /**< R-axis texture image wrap mode */ + GLenum MinFilter; /**< minification filter */ + GLenum MagFilter; /**< magnification filter */ + union { + GLfloat f[4]; + GLuint ui[4]; + GLint i[4]; + } BorderColor; /**< Interpreted according to texture format */ + GLfloat MinLod; /**< min lambda, OpenGL 1.2 */ + GLfloat MaxLod; /**< max lambda, OpenGL 1.2 */ + GLfloat LodBias; /**< OpenGL 1.4 */ + GLfloat MaxAnisotropy; /**< GL_EXT_texture_filter_anisotropic */ + GLenum CompareMode; /**< GL_ARB_shadow */ + GLenum CompareFunc; /**< GL_ARB_shadow */ + GLfloat CompareFailValue; /**< GL_ARB_shadow_ambient */ + GLenum sRGBDecode; /**< GL_DECODE_EXT or GL_SKIP_DECODE_EXT */ + + /* deprecated sampler state */ + GLenum DepthMode; /**< GL_ARB_depth_texture */ + + /** Is the texture object complete with respect to this sampler? */ + GLboolean _CompleteTexture; +}; + + /** * Texture object state. Contains the array of mipmap images, border color, * wrap modes, filter modes, shadow/texcompare state, and the per-texture @@ -1315,27 +1351,12 @@ struct gl_texture_object GLint RefCount; /**< reference count */ GLuint Name; /**< the user-visible texture object ID */ GLenum Target; /**< GL_TEXTURE_1D, GL_TEXTURE_2D, etc. */ + + struct gl_sampler_object Sampler; + GLfloat Priority; /**< in [0,1] */ - union { - GLfloat f[4]; - GLuint ui[4]; - GLint i[4]; - } BorderColor; /**< Interpreted according to texture format */ - GLenum WrapS; /**< S-axis texture image wrap mode */ - GLenum WrapT; /**< T-axis texture image wrap mode */ - GLenum WrapR; /**< R-axis texture image wrap mode */ - GLenum MinFilter; /**< minification filter */ - GLenum MagFilter; /**< magnification filter */ - GLfloat MinLod; /**< min lambda, OpenGL 1.2 */ - GLfloat MaxLod; /**< max lambda, OpenGL 1.2 */ - GLfloat LodBias; /**< OpenGL 1.4 */ GLint BaseLevel; /**< min mipmap level, OpenGL 1.2 */ GLint MaxLevel; /**< max mipmap level, OpenGL 1.2 */ - GLfloat MaxAnisotropy; /**< GL_EXT_texture_filter_anisotropic */ - GLenum CompareMode; /**< GL_ARB_shadow */ - GLenum CompareFunc; /**< GL_ARB_shadow */ - GLfloat CompareFailValue; /**< GL_ARB_shadow_ambient */ - GLenum DepthMode; /**< GL_ARB_depth_texture */ GLint _MaxLevel; /**< actual max mipmap level (q in the spec) */ GLfloat _MaxLambda; /**< = _MaxLevel - BaseLevel (q - b in spec) */ GLint CropRect[4]; /**< GL_OES_draw_texture */ @@ -1345,7 +1366,6 @@ 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? */ - GLenum sRGBDecode; /**< GL_DECODE_EXT or GL_SKIP_DECODE_EXT */ /** Actual texture images, indexed by [cube face] and [mipmap level] */ struct gl_texture_image *Image[MAX_FACES][MAX_TEXTURE_LEVELS]; @@ -1429,6 +1449,9 @@ struct gl_texture_unit GLenum BumpTarget; GLfloat RotMatrix[4]; /* 2x2 matrix */ + /** Current sampler object (GL_ARB_sampler_objects) */ + struct gl_sampler_object *Sampler; + /** * \name GL_EXT_texture_env_combine */ @@ -2363,6 +2386,9 @@ struct gl_shared_state /* GL_ARB_sync */ struct simple_node SyncObjects; + /** GL_ARB_sampler_objects */ + struct _mesa_HashTable *SamplerObjects; + void *DriverData; /**< Device driver shared state */ }; diff --git a/src/mesa/main/texfetch.c b/src/mesa/main/texfetch.c index b2181af2931..caabc19bb17 100644 --- a/src/mesa/main/texfetch.c +++ b/src/mesa/main/texfetch.c @@ -975,7 +975,7 @@ _mesa_set_fetch_functions(struct gl_texture_image *texImage, GLuint dims) ASSERT(dims == 1 || dims == 2 || dims == 3); - if (texImage->TexObject->sRGBDecode == GL_SKIP_DECODE_EXT && + if (texImage->TexObject->Sampler.sRGBDecode == GL_SKIP_DECODE_EXT && _mesa_get_format_color_encoding(format) == GL_SRGB) { format = _mesa_get_srgb_format_linear(format); } diff --git a/src/mesa/main/texobj.c b/src/mesa/main/texobj.c index 61b9bc70d77..43d6e52dfe9 100644 --- a/src/mesa/main/texobj.c +++ b/src/mesa/main/texobj.c @@ -116,35 +116,37 @@ _mesa_initialize_texture_object( struct gl_texture_object *obj, obj->Name = name; obj->Target = target; obj->Priority = 1.0F; - if (target == GL_TEXTURE_RECTANGLE_NV) { - obj->WrapS = GL_CLAMP_TO_EDGE; - obj->WrapT = GL_CLAMP_TO_EDGE; - obj->WrapR = GL_CLAMP_TO_EDGE; - obj->MinFilter = GL_LINEAR; - } - else { - obj->WrapS = GL_REPEAT; - obj->WrapT = GL_REPEAT; - obj->WrapR = GL_REPEAT; - obj->MinFilter = GL_NEAREST_MIPMAP_LINEAR; - } - obj->MagFilter = GL_LINEAR; - obj->MinLod = -1000.0; - obj->MaxLod = 1000.0; - obj->LodBias = 0.0; obj->BaseLevel = 0; obj->MaxLevel = 1000; - obj->MaxAnisotropy = 1.0; - obj->CompareMode = GL_NONE; /* ARB_shadow */ - obj->CompareFunc = GL_LEQUAL; /* ARB_shadow */ - obj->CompareFailValue = 0.0F; /* ARB_shadow_ambient */ - obj->DepthMode = GL_LUMINANCE; /* ARB_depth_texture */ + + /* sampler state */ + if (target == GL_TEXTURE_RECTANGLE_NV) { + obj->Sampler.WrapS = GL_CLAMP_TO_EDGE; + obj->Sampler.WrapT = GL_CLAMP_TO_EDGE; + obj->Sampler.WrapR = GL_CLAMP_TO_EDGE; + obj->Sampler.MinFilter = GL_LINEAR; + } + else { + obj->Sampler.WrapS = GL_REPEAT; + obj->Sampler.WrapT = GL_REPEAT; + obj->Sampler.WrapR = GL_REPEAT; + obj->Sampler.MinFilter = GL_NEAREST_MIPMAP_LINEAR; + } + obj->Sampler.MagFilter = GL_LINEAR; + obj->Sampler.MinLod = -1000.0; + obj->Sampler.MaxLod = 1000.0; + obj->Sampler.LodBias = 0.0; + obj->Sampler.MaxAnisotropy = 1.0; + obj->Sampler.CompareMode = GL_NONE; /* ARB_shadow */ + obj->Sampler.CompareFunc = GL_LEQUAL; /* ARB_shadow */ + obj->Sampler.CompareFailValue = 0.0F; /* ARB_shadow_ambient */ + obj->Sampler.DepthMode = GL_LUMINANCE; /* ARB_depth_texture */ obj->Swizzle[0] = GL_RED; obj->Swizzle[1] = GL_GREEN; obj->Swizzle[2] = GL_BLUE; obj->Swizzle[3] = GL_ALPHA; obj->_Swizzle = SWIZZLE_NOOP; - obj->sRGBDecode = GL_DECODE_EXT; + obj->Sampler.sRGBDecode = GL_DECODE_EXT; } @@ -160,10 +162,10 @@ finish_texture_init(struct gl_context *ctx, GLenum target, if (target == GL_TEXTURE_RECTANGLE_NV) { /* have to init wrap and filter state here - kind of klunky */ - obj->WrapS = GL_CLAMP_TO_EDGE; - obj->WrapT = GL_CLAMP_TO_EDGE; - obj->WrapR = GL_CLAMP_TO_EDGE; - obj->MinFilter = GL_LINEAR; + obj->Sampler.WrapS = GL_CLAMP_TO_EDGE; + obj->Sampler.WrapT = GL_CLAMP_TO_EDGE; + obj->Sampler.WrapR = GL_CLAMP_TO_EDGE; + obj->Sampler.MinFilter = GL_LINEAR; if (ctx->Driver.TexParameter) { static const GLfloat fparam_wrap[1] = {(GLfloat) GL_CLAMP_TO_EDGE}; static const GLfloat fparam_filter[1] = {(GLfloat) GL_LINEAR}; @@ -231,25 +233,25 @@ _mesa_copy_texture_object( struct gl_texture_object *dest, dest->Target = src->Target; dest->Name = src->Name; dest->Priority = src->Priority; - dest->BorderColor.f[0] = src->BorderColor.f[0]; - dest->BorderColor.f[1] = src->BorderColor.f[1]; - dest->BorderColor.f[2] = src->BorderColor.f[2]; - dest->BorderColor.f[3] = src->BorderColor.f[3]; - dest->WrapS = src->WrapS; - dest->WrapT = src->WrapT; - dest->WrapR = src->WrapR; - dest->MinFilter = src->MinFilter; - dest->MagFilter = src->MagFilter; - dest->MinLod = src->MinLod; - dest->MaxLod = src->MaxLod; - dest->LodBias = src->LodBias; + dest->Sampler.BorderColor.f[0] = src->Sampler.BorderColor.f[0]; + dest->Sampler.BorderColor.f[1] = src->Sampler.BorderColor.f[1]; + dest->Sampler.BorderColor.f[2] = src->Sampler.BorderColor.f[2]; + dest->Sampler.BorderColor.f[3] = src->Sampler.BorderColor.f[3]; + dest->Sampler.WrapS = src->Sampler.WrapS; + dest->Sampler.WrapT = src->Sampler.WrapT; + dest->Sampler.WrapR = src->Sampler.WrapR; + dest->Sampler.MinFilter = src->Sampler.MinFilter; + dest->Sampler.MagFilter = src->Sampler.MagFilter; + dest->Sampler.MinLod = src->Sampler.MinLod; + dest->Sampler.MaxLod = src->Sampler.MaxLod; + dest->Sampler.LodBias = src->Sampler.LodBias; dest->BaseLevel = src->BaseLevel; dest->MaxLevel = src->MaxLevel; - dest->MaxAnisotropy = src->MaxAnisotropy; - dest->CompareMode = src->CompareMode; - dest->CompareFunc = src->CompareFunc; - dest->CompareFailValue = src->CompareFailValue; - dest->DepthMode = src->DepthMode; + dest->Sampler.MaxAnisotropy = src->Sampler.MaxAnisotropy; + dest->Sampler.CompareMode = src->Sampler.CompareMode; + dest->Sampler.CompareFunc = src->Sampler.CompareFunc; + dest->Sampler.CompareFailValue = src->Sampler.CompareFailValue; + dest->Sampler.DepthMode = src->Sampler.DepthMode; dest->_MaxLevel = src->_MaxLevel; dest->_MaxLambda = src->_MaxLambda; dest->GenerateMipmap = src->GenerateMipmap; @@ -506,7 +508,7 @@ _mesa_test_texobj_completeness( const struct gl_context *ctx, } /* extra checking for mipmaps */ - if (t->MinFilter != GL_NEAREST && t->MinFilter != GL_LINEAR) { + if (t->Sampler.MinFilter != GL_NEAREST && t->Sampler.MinFilter != GL_LINEAR) { /* * Mipmapping: determine if we have a complete set of mipmaps */ @@ -761,8 +763,8 @@ _mesa_get_fallback_texture(struct gl_context *ctx) /* create texture object */ texObj = ctx->Driver.NewTextureObject(ctx, 0, GL_TEXTURE_2D); assert(texObj->RefCount == 1); - texObj->MinFilter = GL_NEAREST; - texObj->MagFilter = GL_NEAREST; + texObj->Sampler.MinFilter = GL_NEAREST; + texObj->Sampler.MagFilter = GL_NEAREST; /* create level[0] texture image */ texImage = _mesa_get_tex_image(ctx, texObj, GL_TEXTURE_2D, 0); diff --git a/src/mesa/main/texparam.c b/src/mesa/main/texparam.c index 34b6addb9b0..3d56dac3f91 100644 --- a/src/mesa/main/texparam.c +++ b/src/mesa/main/texparam.c @@ -216,13 +216,13 @@ set_tex_parameteri(struct gl_context *ctx, { switch (pname) { case GL_TEXTURE_MIN_FILTER: - if (texObj->MinFilter == params[0]) + if (texObj->Sampler.MinFilter == params[0]) return GL_FALSE; switch (params[0]) { case GL_NEAREST: case GL_LINEAR: incomplete(ctx, texObj); - texObj->MinFilter = params[0]; + texObj->Sampler.MinFilter = params[0]; return GL_TRUE; case GL_NEAREST_MIPMAP_NEAREST: case GL_LINEAR_MIPMAP_NEAREST: @@ -230,7 +230,7 @@ set_tex_parameteri(struct gl_context *ctx, case GL_LINEAR_MIPMAP_LINEAR: if (texObj->Target != GL_TEXTURE_RECTANGLE_NV) { incomplete(ctx, texObj); - texObj->MinFilter = params[0]; + texObj->Sampler.MinFilter = params[0]; return GL_TRUE; } /* fall-through */ @@ -240,13 +240,13 @@ set_tex_parameteri(struct gl_context *ctx, return GL_FALSE; case GL_TEXTURE_MAG_FILTER: - if (texObj->MagFilter == params[0]) + if (texObj->Sampler.MagFilter == params[0]) return GL_FALSE; switch (params[0]) { case GL_NEAREST: case GL_LINEAR: flush(ctx); /* does not effect completeness */ - texObj->MagFilter = params[0]; + texObj->Sampler.MagFilter = params[0]; return GL_TRUE; default: goto invalid_param; @@ -254,31 +254,31 @@ set_tex_parameteri(struct gl_context *ctx, return GL_FALSE; case GL_TEXTURE_WRAP_S: - if (texObj->WrapS == params[0]) + if (texObj->Sampler.WrapS == params[0]) return GL_FALSE; if (validate_texture_wrap_mode(ctx, texObj->Target, params[0])) { flush(ctx); - texObj->WrapS = params[0]; + texObj->Sampler.WrapS = params[0]; return GL_TRUE; } return GL_FALSE; case GL_TEXTURE_WRAP_T: - if (texObj->WrapT == params[0]) + if (texObj->Sampler.WrapT == params[0]) return GL_FALSE; if (validate_texture_wrap_mode(ctx, texObj->Target, params[0])) { flush(ctx); - texObj->WrapT = params[0]; + texObj->Sampler.WrapT = params[0]; return GL_TRUE; } return GL_FALSE; case GL_TEXTURE_WRAP_R: - if (texObj->WrapR == params[0]) + if (texObj->Sampler.WrapR == params[0]) return GL_FALSE; if (validate_texture_wrap_mode(ctx, texObj->Target, params[0])) { flush(ctx); - texObj->WrapR = params[0]; + texObj->Sampler.WrapR = params[0]; return GL_TRUE; } return GL_FALSE; @@ -318,12 +318,12 @@ set_tex_parameteri(struct gl_context *ctx, case GL_TEXTURE_COMPARE_MODE_ARB: if (ctx->Extensions.ARB_shadow) { - if (texObj->CompareMode == params[0]) + if (texObj->Sampler.CompareMode == params[0]) return GL_FALSE; if (params[0] == GL_NONE || params[0] == GL_COMPARE_R_TO_TEXTURE_ARB) { flush(ctx); - texObj->CompareMode = params[0]; + texObj->Sampler.CompareMode = params[0]; return GL_TRUE; } goto invalid_param; @@ -332,13 +332,13 @@ set_tex_parameteri(struct gl_context *ctx, case GL_TEXTURE_COMPARE_FUNC_ARB: if (ctx->Extensions.ARB_shadow) { - if (texObj->CompareFunc == params[0]) + if (texObj->Sampler.CompareFunc == params[0]) return GL_FALSE; switch (params[0]) { case GL_LEQUAL: case GL_GEQUAL: flush(ctx); - texObj->CompareFunc = params[0]; + texObj->Sampler.CompareFunc = params[0]; return GL_TRUE; case GL_EQUAL: case GL_NOTEQUAL: @@ -348,7 +348,7 @@ set_tex_parameteri(struct gl_context *ctx, case GL_NEVER: if (ctx->Extensions.EXT_shadow_funcs) { flush(ctx); - texObj->CompareFunc = params[0]; + texObj->Sampler.CompareFunc = params[0]; return GL_TRUE; } /* fall-through */ @@ -360,14 +360,14 @@ set_tex_parameteri(struct gl_context *ctx, case GL_DEPTH_TEXTURE_MODE_ARB: if (ctx->Extensions.ARB_depth_texture) { - if (texObj->DepthMode == params[0]) + if (texObj->Sampler.DepthMode == params[0]) return GL_FALSE; if (params[0] == GL_LUMINANCE || params[0] == GL_INTENSITY || params[0] == GL_ALPHA || (ctx->Extensions.ARB_texture_rg && params[0] == GL_RED)) { flush(ctx); - texObj->DepthMode = params[0]; + texObj->Sampler.DepthMode = params[0]; return GL_TRUE; } goto invalid_param; @@ -429,9 +429,9 @@ set_tex_parameteri(struct gl_context *ctx, if (ctx->Extensions.EXT_texture_sRGB_decode) { GLenum decode = params[0]; if (decode == GL_DECODE_EXT || decode == GL_SKIP_DECODE_EXT) { - if (texObj->sRGBDecode != decode) { + if (texObj->Sampler.sRGBDecode != decode) { flush(ctx); - texObj->sRGBDecode = decode; + texObj->Sampler.sRGBDecode = decode; _mesa_update_fetch_functions(texObj); } return GL_TRUE; @@ -466,17 +466,17 @@ set_tex_parameterf(struct gl_context *ctx, { switch (pname) { case GL_TEXTURE_MIN_LOD: - if (texObj->MinLod == params[0]) + if (texObj->Sampler.MinLod == params[0]) return GL_FALSE; flush(ctx); - texObj->MinLod = params[0]; + texObj->Sampler.MinLod = params[0]; return GL_TRUE; case GL_TEXTURE_MAX_LOD: - if (texObj->MaxLod == params[0]) + if (texObj->Sampler.MaxLod == params[0]) return GL_FALSE; flush(ctx); - texObj->MaxLod = params[0]; + texObj->Sampler.MaxLod = params[0]; return GL_TRUE; case GL_TEXTURE_PRIORITY: @@ -486,7 +486,7 @@ set_tex_parameterf(struct gl_context *ctx, case GL_TEXTURE_MAX_ANISOTROPY_EXT: if (ctx->Extensions.EXT_texture_filter_anisotropic) { - if (texObj->MaxAnisotropy == params[0]) + if (texObj->Sampler.MaxAnisotropy == params[0]) return GL_FALSE; if (params[0] < 1.0) { _mesa_error(ctx, GL_INVALID_VALUE, "glTexParameter(param)" ); @@ -494,7 +494,7 @@ set_tex_parameterf(struct gl_context *ctx, } flush(ctx); /* clamp to max, that's what NVIDIA does */ - texObj->MaxAnisotropy = MIN2(params[0], + texObj->Sampler.MaxAnisotropy = MIN2(params[0], ctx->Const.MaxTextureMaxAnisotropy); return GL_TRUE; } @@ -508,9 +508,9 @@ set_tex_parameterf(struct gl_context *ctx, case GL_TEXTURE_COMPARE_FAIL_VALUE_ARB: if (ctx->Extensions.ARB_shadow_ambient) { - if (texObj->CompareFailValue != params[0]) { + if (texObj->Sampler.CompareFailValue != params[0]) { flush(ctx); - texObj->CompareFailValue = CLAMP(params[0], 0.0F, 1.0F); + texObj->Sampler.CompareFailValue = CLAMP(params[0], 0.0F, 1.0F); return GL_TRUE; } } @@ -523,9 +523,9 @@ set_tex_parameterf(struct gl_context *ctx, case GL_TEXTURE_LOD_BIAS: /* NOTE: this is really part of OpenGL 1.4, not EXT_texture_lod_bias */ if (ctx->Extensions.EXT_texture_lod_bias) { - if (texObj->LodBias != params[0]) { + if (texObj->Sampler.LodBias != params[0]) { flush(ctx); - texObj->LodBias = params[0]; + texObj->Sampler.LodBias = params[0]; return GL_TRUE; } return GL_FALSE; @@ -536,15 +536,15 @@ set_tex_parameterf(struct gl_context *ctx, flush(ctx); /* ARB_texture_float disables clamping */ if (ctx->Extensions.ARB_texture_float) { - texObj->BorderColor.f[RCOMP] = params[0]; - texObj->BorderColor.f[GCOMP] = params[1]; - texObj->BorderColor.f[BCOMP] = params[2]; - texObj->BorderColor.f[ACOMP] = params[3]; + texObj->Sampler.BorderColor.f[RCOMP] = params[0]; + texObj->Sampler.BorderColor.f[GCOMP] = params[1]; + texObj->Sampler.BorderColor.f[BCOMP] = params[2]; + texObj->Sampler.BorderColor.f[ACOMP] = params[3]; } else { - texObj->BorderColor.f[RCOMP] = CLAMP(params[0], 0.0F, 1.0F); - texObj->BorderColor.f[GCOMP] = CLAMP(params[1], 0.0F, 1.0F); - texObj->BorderColor.f[BCOMP] = CLAMP(params[2], 0.0F, 1.0F); - texObj->BorderColor.f[ACOMP] = CLAMP(params[3], 0.0F, 1.0F); + texObj->Sampler.BorderColor.f[RCOMP] = CLAMP(params[0], 0.0F, 1.0F); + texObj->Sampler.BorderColor.f[GCOMP] = CLAMP(params[1], 0.0F, 1.0F); + texObj->Sampler.BorderColor.f[BCOMP] = CLAMP(params[2], 0.0F, 1.0F); + texObj->Sampler.BorderColor.f[ACOMP] = CLAMP(params[3], 0.0F, 1.0F); } return GL_TRUE; @@ -784,7 +784,7 @@ _mesa_TexParameterIiv(GLenum target, GLenum pname, const GLint *params) case GL_TEXTURE_BORDER_COLOR: FLUSH_VERTICES(ctx, _NEW_TEXTURE); /* set the integer-valued border color */ - COPY_4V(texObj->BorderColor.i, params); + COPY_4V(texObj->Sampler.BorderColor.i, params); break; default: _mesa_TexParameteriv(target, pname, params); @@ -814,7 +814,7 @@ _mesa_TexParameterIuiv(GLenum target, GLenum pname, const GLuint *params) case GL_TEXTURE_BORDER_COLOR: FLUSH_VERTICES(ctx, _NEW_TEXTURE); /* set the unsigned integer-valued border color */ - COPY_4V(texObj->BorderColor.ui, params); + COPY_4V(texObj->Sampler.BorderColor.ui, params); break; default: _mesa_TexParameteriv(target, pname, (const GLint *) params); @@ -1101,36 +1101,36 @@ _mesa_GetTexParameterfv( GLenum target, GLenum pname, GLfloat *params ) _mesa_lock_texture(ctx, obj); switch (pname) { case GL_TEXTURE_MAG_FILTER: - *params = ENUM_TO_FLOAT(obj->MagFilter); + *params = ENUM_TO_FLOAT(obj->Sampler.MagFilter); break; case GL_TEXTURE_MIN_FILTER: - *params = ENUM_TO_FLOAT(obj->MinFilter); + *params = ENUM_TO_FLOAT(obj->Sampler.MinFilter); break; case GL_TEXTURE_WRAP_S: - *params = ENUM_TO_FLOAT(obj->WrapS); + *params = ENUM_TO_FLOAT(obj->Sampler.WrapS); break; case GL_TEXTURE_WRAP_T: - *params = ENUM_TO_FLOAT(obj->WrapT); + *params = ENUM_TO_FLOAT(obj->Sampler.WrapT); break; case GL_TEXTURE_WRAP_R: - *params = ENUM_TO_FLOAT(obj->WrapR); + *params = ENUM_TO_FLOAT(obj->Sampler.WrapR); break; case GL_TEXTURE_BORDER_COLOR: if(ctx->NewState & (_NEW_BUFFERS | _NEW_FRAG_CLAMP)) _mesa_update_state_locked(ctx); if(ctx->Color._ClampFragmentColor) { - params[0] = CLAMP(obj->BorderColor.f[0], 0.0F, 1.0F); - params[1] = CLAMP(obj->BorderColor.f[1], 0.0F, 1.0F); - params[2] = CLAMP(obj->BorderColor.f[2], 0.0F, 1.0F); - params[3] = CLAMP(obj->BorderColor.f[3], 0.0F, 1.0F); + params[0] = CLAMP(obj->Sampler.BorderColor.f[0], 0.0F, 1.0F); + params[1] = CLAMP(obj->Sampler.BorderColor.f[1], 0.0F, 1.0F); + params[2] = CLAMP(obj->Sampler.BorderColor.f[2], 0.0F, 1.0F); + params[3] = CLAMP(obj->Sampler.BorderColor.f[3], 0.0F, 1.0F); } else { - params[0] = obj->BorderColor.f[0]; - params[1] = obj->BorderColor.f[1]; - params[2] = obj->BorderColor.f[2]; - params[3] = obj->BorderColor.f[3]; + params[0] = obj->Sampler.BorderColor.f[0]; + params[1] = obj->Sampler.BorderColor.f[1]; + params[2] = obj->Sampler.BorderColor.f[2]; + params[3] = obj->Sampler.BorderColor.f[3]; } break; case GL_TEXTURE_RESIDENT: @@ -1147,10 +1147,10 @@ _mesa_GetTexParameterfv( GLenum target, GLenum pname, GLfloat *params ) *params = obj->Priority; break; case GL_TEXTURE_MIN_LOD: - *params = obj->MinLod; + *params = obj->Sampler.MinLod; break; case GL_TEXTURE_MAX_LOD: - *params = obj->MaxLod; + *params = obj->Sampler.MaxLod; break; case GL_TEXTURE_BASE_LEVEL: *params = (GLfloat) obj->BaseLevel; @@ -1160,14 +1160,14 @@ _mesa_GetTexParameterfv( GLenum target, GLenum pname, GLfloat *params ) break; case GL_TEXTURE_MAX_ANISOTROPY_EXT: if (ctx->Extensions.EXT_texture_filter_anisotropic) { - *params = obj->MaxAnisotropy; + *params = obj->Sampler.MaxAnisotropy; } else error = GL_TRUE; break; case GL_TEXTURE_COMPARE_FAIL_VALUE_ARB: if (ctx->Extensions.ARB_shadow_ambient) { - *params = obj->CompareFailValue; + *params = obj->Sampler.CompareFailValue; } else error = GL_TRUE; @@ -1177,28 +1177,28 @@ _mesa_GetTexParameterfv( GLenum target, GLenum pname, GLfloat *params ) break; case GL_TEXTURE_COMPARE_MODE_ARB: if (ctx->Extensions.ARB_shadow) { - *params = (GLfloat) obj->CompareMode; + *params = (GLfloat) obj->Sampler.CompareMode; } else error = GL_TRUE; break; case GL_TEXTURE_COMPARE_FUNC_ARB: if (ctx->Extensions.ARB_shadow) { - *params = (GLfloat) obj->CompareFunc; + *params = (GLfloat) obj->Sampler.CompareFunc; } else error = GL_TRUE; break; case GL_DEPTH_TEXTURE_MODE_ARB: if (ctx->Extensions.ARB_depth_texture) { - *params = (GLfloat) obj->DepthMode; + *params = (GLfloat) obj->Sampler.DepthMode; } else error = GL_TRUE; break; case GL_TEXTURE_LOD_BIAS: if (ctx->Extensions.EXT_texture_lod_bias) { - *params = obj->LodBias; + *params = obj->Sampler.LodBias; } else error = GL_TRUE; @@ -1265,27 +1265,27 @@ _mesa_GetTexParameteriv( GLenum target, GLenum pname, GLint *params ) _mesa_lock_texture(ctx, obj); switch (pname) { case GL_TEXTURE_MAG_FILTER: - *params = (GLint) obj->MagFilter; + *params = (GLint) obj->Sampler.MagFilter; break;; case GL_TEXTURE_MIN_FILTER: - *params = (GLint) obj->MinFilter; + *params = (GLint) obj->Sampler.MinFilter; break;; case GL_TEXTURE_WRAP_S: - *params = (GLint) obj->WrapS; + *params = (GLint) obj->Sampler.WrapS; break;; case GL_TEXTURE_WRAP_T: - *params = (GLint) obj->WrapT; + *params = (GLint) obj->Sampler.WrapT; break;; case GL_TEXTURE_WRAP_R: - *params = (GLint) obj->WrapR; + *params = (GLint) obj->Sampler.WrapR; break;; case GL_TEXTURE_BORDER_COLOR: { GLfloat b[4]; - b[0] = CLAMP(obj->BorderColor.f[0], 0.0F, 1.0F); - b[1] = CLAMP(obj->BorderColor.f[1], 0.0F, 1.0F); - b[2] = CLAMP(obj->BorderColor.f[2], 0.0F, 1.0F); - b[3] = CLAMP(obj->BorderColor.f[3], 0.0F, 1.0F); + b[0] = CLAMP(obj->Sampler.BorderColor.f[0], 0.0F, 1.0F); + b[1] = CLAMP(obj->Sampler.BorderColor.f[1], 0.0F, 1.0F); + b[2] = CLAMP(obj->Sampler.BorderColor.f[2], 0.0F, 1.0F); + b[3] = CLAMP(obj->Sampler.BorderColor.f[3], 0.0F, 1.0F); params[0] = FLOAT_TO_INT(b[0]); params[1] = FLOAT_TO_INT(b[1]); params[2] = FLOAT_TO_INT(b[2]); @@ -1306,10 +1306,10 @@ _mesa_GetTexParameteriv( GLenum target, GLenum pname, GLint *params ) *params = FLOAT_TO_INT(obj->Priority); break;; case GL_TEXTURE_MIN_LOD: - *params = (GLint) obj->MinLod; + *params = (GLint) obj->Sampler.MinLod; break;; case GL_TEXTURE_MAX_LOD: - *params = (GLint) obj->MaxLod; + *params = (GLint) obj->Sampler.MaxLod; break;; case GL_TEXTURE_BASE_LEVEL: *params = obj->BaseLevel; @@ -1319,7 +1319,7 @@ _mesa_GetTexParameteriv( GLenum target, GLenum pname, GLint *params ) break;; case GL_TEXTURE_MAX_ANISOTROPY_EXT: if (ctx->Extensions.EXT_texture_filter_anisotropic) { - *params = (GLint) obj->MaxAnisotropy; + *params = (GLint) obj->Sampler.MaxAnisotropy; } else { error = GL_TRUE; @@ -1327,7 +1327,7 @@ _mesa_GetTexParameteriv( GLenum target, GLenum pname, GLint *params ) break; case GL_TEXTURE_COMPARE_FAIL_VALUE_ARB: if (ctx->Extensions.ARB_shadow_ambient) { - *params = (GLint) FLOAT_TO_INT(obj->CompareFailValue); + *params = (GLint) FLOAT_TO_INT(obj->Sampler.CompareFailValue); } else { error = GL_TRUE; @@ -1338,7 +1338,7 @@ _mesa_GetTexParameteriv( GLenum target, GLenum pname, GLint *params ) break; case GL_TEXTURE_COMPARE_MODE_ARB: if (ctx->Extensions.ARB_shadow) { - *params = (GLint) obj->CompareMode; + *params = (GLint) obj->Sampler.CompareMode; } else { error = GL_TRUE; @@ -1346,7 +1346,7 @@ _mesa_GetTexParameteriv( GLenum target, GLenum pname, GLint *params ) break; case GL_TEXTURE_COMPARE_FUNC_ARB: if (ctx->Extensions.ARB_shadow) { - *params = (GLint) obj->CompareFunc; + *params = (GLint) obj->Sampler.CompareFunc; } else { error = GL_TRUE; @@ -1354,7 +1354,7 @@ _mesa_GetTexParameteriv( GLenum target, GLenum pname, GLint *params ) break; case GL_DEPTH_TEXTURE_MODE_ARB: if (ctx->Extensions.ARB_depth_texture) { - *params = (GLint) obj->DepthMode; + *params = (GLint) obj->Sampler.DepthMode; } else { error = GL_TRUE; @@ -1362,7 +1362,7 @@ _mesa_GetTexParameteriv( GLenum target, GLenum pname, GLint *params ) break; case GL_TEXTURE_LOD_BIAS: if (ctx->Extensions.EXT_texture_lod_bias) { - *params = (GLint) obj->LodBias; + *params = (GLint) obj->Sampler.LodBias; } else { error = GL_TRUE; @@ -1422,7 +1422,7 @@ _mesa_GetTexParameterIiv(GLenum target, GLenum pname, GLint *params) switch (pname) { case GL_TEXTURE_BORDER_COLOR: - COPY_4V(params, texObj->BorderColor.i); + COPY_4V(params, texObj->Sampler.BorderColor.i); break; default: _mesa_GetTexParameteriv(target, pname, params); @@ -1442,7 +1442,7 @@ _mesa_GetTexParameterIuiv(GLenum target, GLenum pname, GLuint *params) switch (pname) { case GL_TEXTURE_BORDER_COLOR: - COPY_4V(params, texObj->BorderColor.i); + COPY_4V(params, texObj->Sampler.BorderColor.i); break; default: { diff --git a/src/mesa/main/texstate.c b/src/mesa/main/texstate.c index 82e69ae11b5..1810b88b2bf 100644 --- a/src/mesa/main/texstate.c +++ b/src/mesa/main/texstate.c @@ -407,7 +407,7 @@ update_tex_combine(struct gl_context *ctx, struct gl_texture_unit *texUnit) } else if (format == GL_DEPTH_COMPONENT || format == GL_DEPTH_STENCIL_EXT) { - format = texObj->DepthMode; + format = texObj->Sampler.DepthMode; } calculate_derived_texenv(&texUnit->_EnvMode, texUnit->EnvMode, format); texUnit->_CurrentCombine = & texUnit->_EnvMode; @@ -827,6 +827,12 @@ _mesa_free_texture_data(struct gl_context *ctx) /* GL_ARB_texture_buffer_object */ _mesa_reference_buffer_object(ctx, &ctx->Texture.BufferObject, NULL); + +#if FEATURE_sampler_objects + for (u = 0; u < Elements(ctx->Texture.Unit); u++) { + _mesa_reference_sampler_object(ctx, &ctx->Texture.Unit[u].Sampler, NULL); + } +#endif } diff --git a/src/mesa/program/prog_statevars.c b/src/mesa/program/prog_statevars.c index 384aa2cb2c6..1fd26f44d56 100644 --- a/src/mesa/program/prog_statevars.c +++ b/src/mesa/program/prog_statevars.c @@ -582,7 +582,7 @@ _mesa_fetch_state(struct gl_context *ctx, const gl_state_index state[], value[0] = value[1] = value[2] = - value[3] = texObj->CompareFailValue; + value[3] = texObj->Sampler.CompareFailValue; } } return; diff --git a/src/mesa/state_tracker/st_atom_sampler.c b/src/mesa/state_tracker/st_atom_sampler.c index 19d41e7061a..808aa73a083 100644 --- a/src/mesa/state_tracker/st_atom_sampler.c +++ b/src/mesa/state_tracker/st_atom_sampler.c @@ -38,6 +38,7 @@ #include "st_cb_texture.h" #include "st_format.h" #include "st_atom.h" +#include "st_texture.h" #include "pipe/p_context.h" #include "pipe/p_defines.h" @@ -138,6 +139,7 @@ update_samplers(struct st_context *st) if (samplersUsed & (1 << su)) { struct gl_texture_object *texobj; struct gl_texture_image *teximg; + struct gl_sampler_object *msamp; GLuint texUnit; if (fprog->Base.SamplersUsed & (1 << su)) @@ -152,25 +154,27 @@ update_samplers(struct st_context *st) teximg = texobj->Image[0][texobj->BaseLevel]; - sampler->wrap_s = gl_wrap_xlate(texobj->WrapS); - sampler->wrap_t = gl_wrap_xlate(texobj->WrapT); - sampler->wrap_r = gl_wrap_xlate(texobj->WrapR); + msamp = st_get_mesa_sampler(st->ctx, texUnit); - sampler->min_img_filter = gl_filter_to_img_filter(texobj->MinFilter); - sampler->min_mip_filter = gl_filter_to_mip_filter(texobj->MinFilter); - sampler->mag_img_filter = gl_filter_to_img_filter(texobj->MagFilter); + sampler->wrap_s = gl_wrap_xlate(msamp->WrapS); + sampler->wrap_t = gl_wrap_xlate(msamp->WrapT); + sampler->wrap_r = gl_wrap_xlate(msamp->WrapR); + + sampler->min_img_filter = gl_filter_to_img_filter(msamp->MinFilter); + sampler->min_mip_filter = gl_filter_to_mip_filter(msamp->MinFilter); + sampler->mag_img_filter = gl_filter_to_img_filter(msamp->MagFilter); if (texobj->Target != GL_TEXTURE_RECTANGLE_ARB) sampler->normalized_coords = 1; sampler->lod_bias = st->ctx->Texture.Unit[texUnit].LodBias + - texobj->LodBias; + msamp->LodBias; - sampler->min_lod = CLAMP(texobj->MinLod, + sampler->min_lod = CLAMP(msamp->MinLod, 0.0f, (GLfloat) texobj->MaxLevel - texobj->BaseLevel); sampler->max_lod = MIN2((GLfloat) texobj->MaxLevel - texobj->BaseLevel, - texobj->MaxLod); + msamp->MaxLod); if (sampler->max_lod < sampler->min_lod) { /* The GL spec doesn't seem to specify what to do in this case. * Swap the values. @@ -181,17 +185,18 @@ update_samplers(struct st_context *st) assert(sampler->min_lod <= sampler->max_lod); } - st_translate_color(texobj->BorderColor.f, + st_translate_color(msamp->BorderColor.f, teximg ? teximg->_BaseFormat : GL_RGBA, sampler->border_color); - sampler->max_anisotropy = (texobj->MaxAnisotropy == 1.0 ? 0 : (GLuint)texobj->MaxAnisotropy); + sampler->max_anisotropy = (msamp->MaxAnisotropy == 1.0 ? + 0 : (GLuint) msamp->MaxAnisotropy); /* only care about ARB_shadow, not SGI shadow */ - if (texobj->CompareMode == GL_COMPARE_R_TO_TEXTURE) { + if (msamp->CompareMode == GL_COMPARE_R_TO_TEXTURE) { sampler->compare_mode = PIPE_TEX_COMPARE_R_TO_TEXTURE; sampler->compare_func - = st_compare_func_to_pipe(texobj->CompareFunc); + = st_compare_func_to_pipe(msamp->CompareFunc); } st->state.num_samplers = su + 1; diff --git a/src/mesa/state_tracker/st_atom_texture.c b/src/mesa/state_tracker/st_atom_texture.c index 6b9f969ac00..e5fb8f86878 100644 --- a/src/mesa/state_tracker/st_atom_texture.c +++ b/src/mesa/state_tracker/st_atom_texture.c @@ -138,12 +138,13 @@ check_sampler_swizzle(struct pipe_sampler_view *sv, static INLINE struct pipe_sampler_view * st_create_texture_sampler_view_from_stobj(struct pipe_context *pipe, struct st_texture_object *stObj, + const struct gl_sampler_object *samp, enum pipe_format format) { struct pipe_sampler_view templ; GLuint swizzle = apply_depthmode(stObj->pt->format, stObj->base._Swizzle, - stObj->base.DepthMode); + samp->DepthMode); u_sampler_view_default_template(&templ, stObj->pt, @@ -164,6 +165,7 @@ st_create_texture_sampler_view_from_stobj(struct pipe_context *pipe, static INLINE struct pipe_sampler_view * st_get_texture_sampler_view_from_stobj(struct st_texture_object *stObj, struct pipe_context *pipe, + const struct gl_sampler_object *samp, enum pipe_format format) { if (!stObj || !stObj->pt) { @@ -172,7 +174,7 @@ st_get_texture_sampler_view_from_stobj(struct st_texture_object *stObj, if (!stObj->sampler_view) { stObj->sampler_view = - st_create_texture_sampler_view_from_stobj(pipe, stObj, format); + st_create_texture_sampler_view_from_stobj(pipe, stObj, samp, format); } return stObj->sampler_view; @@ -200,16 +202,20 @@ update_textures(struct st_context *st) struct st_texture_object *stObj; GLboolean retval; GLuint texUnit; + const struct gl_sampler_object *samp; if (fprog->Base.SamplersUsed & (1 << su)) texUnit = fprog->Base.SamplerUnits[su]; else texUnit = vprog->Base.SamplerUnits[su]; + samp = st_get_mesa_sampler(st->ctx, texUnit); + texObj = st->ctx->Texture.Unit[texUnit]._Current; if (!texObj) { texObj = st_get_default_texture(st); + samp = &texObj->Sampler; } stObj = st_texture_object(texObj); @@ -228,7 +234,7 @@ update_textures(struct st_context *st) enum pipe_format firstImageFormat = st_mesa_format_to_pipe_format(texFormat); - if ((stObj->base.sRGBDecode == GL_SKIP_DECODE_EXT) && + if ((samp->sRGBDecode == GL_SKIP_DECODE_EXT) && (_mesa_get_format_color_encoding(texFormat) == GL_SRGB)) { /* don't do sRGB->RGB conversion. Interpret the texture * texture data as linear values. @@ -248,12 +254,14 @@ update_textures(struct st_context *st) if (stObj->sampler_view) if (check_sampler_swizzle(stObj->sampler_view, stObj->base._Swizzle, - stObj->base.DepthMode) || + samp->DepthMode) || (st_view_format != stObj->sampler_view->format) || stObj->base.BaseLevel != stObj->sampler_view->u.tex.first_level) pipe_sampler_view_reference(&stObj->sampler_view, NULL); - sampler_view = st_get_texture_sampler_view_from_stobj(stObj, pipe, st_view_format); + sampler_view = st_get_texture_sampler_view_from_stobj(stObj, pipe, + samp, + st_view_format); } pipe_sampler_view_reference(&st->state.sampler_views[su], sampler_view); } diff --git a/src/mesa/state_tracker/st_cb_texture.c b/src/mesa/state_tracker/st_cb_texture.c index 302f2e1fa17..914c06b7023 100644 --- a/src/mesa/state_tracker/st_cb_texture.c +++ b/src/mesa/state_tracker/st_cb_texture.c @@ -362,8 +362,8 @@ guess_and_alloc_texture(struct st_context *st, * to re-allocating a texture buffer with space for more (or fewer) * mipmap levels later. */ - if ((stObj->base.MinFilter == GL_NEAREST || - stObj->base.MinFilter == GL_LINEAR || + if ((stObj->base.Sampler.MinFilter == GL_NEAREST || + stObj->base.Sampler.MinFilter == GL_LINEAR || stImage->base._BaseFormat == GL_DEPTH_COMPONENT || stImage->base._BaseFormat == GL_DEPTH_STENCIL_EXT) && !stObj->base.GenerateMipmap && @@ -1742,8 +1742,8 @@ st_finalize_texture(struct gl_context *ctx, * incomplete. In that case, we'll have set stObj->lastLevel before * we get here. */ - if (stObj->base.MinFilter == GL_LINEAR || - stObj->base.MinFilter == GL_NEAREST) + if (stObj->base.Sampler.MinFilter == GL_LINEAR || + stObj->base.Sampler.MinFilter == GL_NEAREST) stObj->lastLevel = stObj->base.BaseLevel; else stObj->lastLevel = stObj->base._MaxLevel; @@ -1890,8 +1890,8 @@ st_get_default_texture(struct st_context *st) texObj, texImg, 0, 0); - texObj->MinFilter = GL_NEAREST; - texObj->MagFilter = GL_NEAREST; + texObj->Sampler.MinFilter = GL_NEAREST; + texObj->Sampler.MagFilter = GL_NEAREST; texObj->_Complete = GL_TRUE; st->default_texture = texObj; diff --git a/src/mesa/state_tracker/st_texture.h b/src/mesa/state_tracker/st_texture.h index d50c3c9af79..903e30df52f 100644 --- a/src/mesa/state_tracker/st_texture.h +++ b/src/mesa/state_tracker/st_texture.h @@ -163,6 +163,21 @@ st_get_texture_sampler_view(struct st_texture_object *stObj, } +/** + * Get pointer to the active sampler object for the given texture unit. + * This will either be a user-defined sampler object or the texture + * object's own sampler state. + */ +static INLINE struct gl_sampler_object * +st_get_mesa_sampler(const struct gl_context *ctx, GLuint unit) +{ + if (ctx->Texture.Unit[unit].Sampler) + return ctx->Texture.Unit[unit].Sampler; + else + return &ctx->Texture.Unit[unit]._Current->Sampler; +} + + extern struct pipe_resource * st_texture_create(struct st_context *st, enum pipe_texture_target target, diff --git a/src/mesa/swrast/s_fragprog.c b/src/mesa/swrast/s_fragprog.c index e391043f4d9..b6bfeaed4a9 100644 --- a/src/mesa/swrast/s_fragprog.c +++ b/src/mesa/swrast/s_fragprog.c @@ -71,7 +71,7 @@ fetch_texel_lod( struct gl_context *ctx, const GLfloat texcoord[4], GLfloat lamb SWcontext *swrast = SWRAST_CONTEXT(ctx); GLfloat rgba[4]; - lambda = CLAMP(lambda, texObj->MinLod, texObj->MaxLod); + lambda = CLAMP(lambda, texObj->Sampler.MinLod, texObj->Sampler.MaxLod); swrast->TextureSample[unit](ctx, texObj, 1, (const GLfloat (*)[4]) texcoord, @@ -115,9 +115,9 @@ fetch_texel_deriv( struct gl_context *ctx, const GLfloat texcoord[4], texcoord[0], texcoord[1], texcoord[3], 1.0F / texcoord[3]); - lambda += lodBias + texUnit->LodBias + texObj->LodBias; + lambda += lodBias + texUnit->LodBias + texObj->Sampler.LodBias; - lambda = CLAMP(lambda, texObj->MinLod, texObj->MaxLod); + lambda = CLAMP(lambda, texObj->Sampler.MinLod, texObj->Sampler.MaxLod); swrast->TextureSample[unit](ctx, texObj, 1, (const GLfloat (*)[4]) texcoord, diff --git a/src/mesa/swrast/s_span.c b/src/mesa/swrast/s_span.c index ef38a6b22b8..9cfecc9e3a4 100644 --- a/src/mesa/swrast/s_span.c +++ b/src/mesa/swrast/s_span.c @@ -490,7 +490,7 @@ interpolate_texcoords(struct gl_context *ctx, SWspan *span) if (obj) { const struct gl_texture_image *img = obj->Image[0][obj->BaseLevel]; - needLambda = (obj->MinFilter != obj->MagFilter) + needLambda = (obj->Sampler.MinFilter != obj->Sampler.MagFilter) || ctx->FragmentProgram._Current; texW = img->WidthScale; texH = img->HeightScale; diff --git a/src/mesa/swrast/s_texcombine.c b/src/mesa/swrast/s_texcombine.c index 0c8cc9ff37b..7f49b6ffa50 100644 --- a/src/mesa/swrast/s_texcombine.c +++ b/src/mesa/swrast/s_texcombine.c @@ -631,9 +631,9 @@ _swrast_texture_span( struct gl_context *ctx, SWspan *span ) /* adjust texture lod (lambda) */ if (span->arrayMask & SPAN_LAMBDA) { - if (texUnit->LodBias + curObj->LodBias != 0.0F) { + if (texUnit->LodBias + curObj->Sampler.LodBias != 0.0F) { /* apply LOD bias, but don't clamp yet */ - const GLfloat bias = CLAMP(texUnit->LodBias + curObj->LodBias, + const GLfloat bias = CLAMP(texUnit->LodBias + curObj->Sampler.LodBias, -ctx->Const.MaxTextureLodBias, ctx->Const.MaxTextureLodBias); GLuint i; @@ -642,10 +642,11 @@ _swrast_texture_span( struct gl_context *ctx, SWspan *span ) } } - if (curObj->MinLod != -1000.0 || curObj->MaxLod != 1000.0) { + if (curObj->Sampler.MinLod != -1000.0 || + curObj->Sampler.MaxLod != 1000.0) { /* apply LOD clamping to lambda */ - const GLfloat min = curObj->MinLod; - const GLfloat max = curObj->MaxLod; + const GLfloat min = curObj->Sampler.MinLod; + const GLfloat max = curObj->Sampler.MaxLod; GLuint i; for (i = 0; i < span->end; i++) { GLfloat l = lambda[i]; @@ -686,9 +687,9 @@ _swrast_texture_span( struct gl_context *ctx, SWspan *span ) /* adjust texture lod (lambda) */ if (span->arrayMask & SPAN_LAMBDA) { - if (texUnit->LodBias + curObj->LodBias != 0.0F) { + if (texUnit->LodBias + curObj->Sampler.LodBias != 0.0F) { /* apply LOD bias, but don't clamp yet */ - const GLfloat bias = CLAMP(texUnit->LodBias + curObj->LodBias, + const GLfloat bias = CLAMP(texUnit->LodBias + curObj->Sampler.LodBias, -ctx->Const.MaxTextureLodBias, ctx->Const.MaxTextureLodBias); GLuint i; @@ -697,10 +698,11 @@ _swrast_texture_span( struct gl_context *ctx, SWspan *span ) } } - if (curObj->MinLod != -1000.0 || curObj->MaxLod != 1000.0) { + if (curObj->Sampler.MinLod != -1000.0 || + curObj->Sampler.MaxLod != 1000.0) { /* apply LOD clamping to lambda */ - const GLfloat min = curObj->MinLod; - const GLfloat max = curObj->MaxLod; + const GLfloat min = curObj->Sampler.MinLod; + const GLfloat max = curObj->Sampler.MaxLod; GLuint i; for (i = 0; i < span->end; i++) { GLfloat l = lambda[i]; diff --git a/src/mesa/swrast/s_texfilter.c b/src/mesa/swrast/s_texfilter.c index 42785400c0e..106f8b75f9e 100644 --- a/src/mesa/swrast/s_texfilter.c +++ b/src/mesa/swrast/s_texfilter.c @@ -505,28 +505,28 @@ nearest_texcoord(const struct gl_texture_object *texObj, switch (texObj->Target) { case GL_TEXTURE_RECTANGLE_ARB: - *i = clamp_rect_coord_nearest(texObj->WrapS, texcoord[0], width); - *j = clamp_rect_coord_nearest(texObj->WrapT, texcoord[1], height); + *i = clamp_rect_coord_nearest(texObj->Sampler.WrapS, texcoord[0], width); + *j = clamp_rect_coord_nearest(texObj->Sampler.WrapT, texcoord[1], height); *k = 0; break; case GL_TEXTURE_1D: - *i = nearest_texel_location(texObj->WrapS, img, width, texcoord[0]); + *i = nearest_texel_location(texObj->Sampler.WrapS, img, width, texcoord[0]); *j = 0; *k = 0; break; case GL_TEXTURE_2D: - *i = nearest_texel_location(texObj->WrapS, img, width, texcoord[0]); - *j = nearest_texel_location(texObj->WrapT, img, height, texcoord[1]); + *i = nearest_texel_location(texObj->Sampler.WrapS, img, width, texcoord[0]); + *j = nearest_texel_location(texObj->Sampler.WrapT, img, height, texcoord[1]); *k = 0; break; case GL_TEXTURE_1D_ARRAY_EXT: - *i = nearest_texel_location(texObj->WrapS, img, width, texcoord[0]); + *i = nearest_texel_location(texObj->Sampler.WrapS, img, width, texcoord[0]); *j = tex_array_slice(texcoord[1], height); *k = 0; break; case GL_TEXTURE_2D_ARRAY_EXT: - *i = nearest_texel_location(texObj->WrapS, img, width, texcoord[0]); - *j = nearest_texel_location(texObj->WrapT, img, height, texcoord[1]); + *i = nearest_texel_location(texObj->Sampler.WrapS, img, width, texcoord[0]); + *j = nearest_texel_location(texObj->Sampler.WrapT, img, height, texcoord[1]); *k = tex_array_slice(texcoord[2], depth); break; default: @@ -553,24 +553,24 @@ linear_texcoord(const struct gl_texture_object *texObj, switch (texObj->Target) { case GL_TEXTURE_RECTANGLE_ARB: - clamp_rect_coord_linear(texObj->WrapS, texcoord[0], + clamp_rect_coord_linear(texObj->Sampler.WrapS, texcoord[0], width, i0, i1, wi); - clamp_rect_coord_linear(texObj->WrapT, texcoord[1], + clamp_rect_coord_linear(texObj->Sampler.WrapT, texcoord[1], height, j0, j1, wj); *slice = 0; break; case GL_TEXTURE_1D: case GL_TEXTURE_2D: - linear_texel_locations(texObj->WrapS, img, width, + linear_texel_locations(texObj->Sampler.WrapS, img, width, texcoord[0], i0, i1, wi); - linear_texel_locations(texObj->WrapT, img, height, + linear_texel_locations(texObj->Sampler.WrapT, img, height, texcoord[1], j0, j1, wj); *slice = 0; break; case GL_TEXTURE_1D_ARRAY_EXT: - linear_texel_locations(texObj->WrapS, img, width, + linear_texel_locations(texObj->Sampler.WrapS, img, width, texcoord[0], i0, i1, wi); *j0 = tex_array_slice(texcoord[1], height); *j1 = *j0; @@ -578,9 +578,9 @@ linear_texcoord(const struct gl_texture_object *texObj, break; case GL_TEXTURE_2D_ARRAY_EXT: - linear_texel_locations(texObj->WrapS, img, width, + linear_texel_locations(texObj->Sampler.WrapS, img, width, texcoord[0], i0, i1, wi); - linear_texel_locations(texObj->WrapT, img, height, + linear_texel_locations(texObj->Sampler.WrapT, img, height, texcoord[1], j0, j1, wj); *slice = tex_array_slice(texcoord[2], depth); break; @@ -656,12 +656,12 @@ compute_min_mag_ranges(const struct gl_texture_object *tObj, GLfloat minMagThresh; /* we shouldn't be here if minfilter == magfilter */ - ASSERT(tObj->MinFilter != tObj->MagFilter); + ASSERT(tObj->Sampler.MinFilter != tObj->Sampler.MagFilter); /* This bit comes from the OpenGL spec: */ - if (tObj->MagFilter == GL_LINEAR - && (tObj->MinFilter == GL_NEAREST_MIPMAP_NEAREST || - tObj->MinFilter == GL_NEAREST_MIPMAP_LINEAR)) { + if (tObj->Sampler.MagFilter == GL_LINEAR + && (tObj->Sampler.MinFilter == GL_NEAREST_MIPMAP_NEAREST || + tObj->Sampler.MinFilter == GL_NEAREST_MIPMAP_LINEAR)) { minMagThresh = 0.5F; } else { @@ -763,28 +763,28 @@ get_border_color(const struct gl_texture_object *tObj, { switch (img->_BaseFormat) { case GL_RGB: - rgba[0] = tObj->BorderColor.f[0]; - rgba[1] = tObj->BorderColor.f[1]; - rgba[2] = tObj->BorderColor.f[2]; + rgba[0] = tObj->Sampler.BorderColor.f[0]; + rgba[1] = tObj->Sampler.BorderColor.f[1]; + rgba[2] = tObj->Sampler.BorderColor.f[2]; rgba[3] = 1.0F; break; case GL_ALPHA: rgba[0] = rgba[1] = rgba[2] = 0.0; - rgba[3] = tObj->BorderColor.f[3]; + rgba[3] = tObj->Sampler.BorderColor.f[3]; break; case GL_LUMINANCE: - rgba[0] = rgba[1] = rgba[2] = tObj->BorderColor.f[0]; + rgba[0] = rgba[1] = rgba[2] = tObj->Sampler.BorderColor.f[0]; rgba[3] = 1.0; break; case GL_LUMINANCE_ALPHA: - rgba[0] = rgba[1] = rgba[2] = tObj->BorderColor.f[0]; - rgba[3] = tObj->BorderColor.f[3]; + rgba[0] = rgba[1] = rgba[2] = tObj->Sampler.BorderColor.f[0]; + rgba[3] = tObj->Sampler.BorderColor.f[3]; break; case GL_INTENSITY: - rgba[0] = rgba[1] = rgba[2] = rgba[3] = tObj->BorderColor.f[0]; + rgba[0] = rgba[1] = rgba[2] = rgba[3] = tObj->Sampler.BorderColor.f[0]; break; default: - COPY_4V(rgba, tObj->BorderColor.f); + COPY_4V(rgba, tObj->Sampler.BorderColor.f); } } @@ -804,7 +804,7 @@ sample_1d_nearest(struct gl_context *ctx, { const GLint width = img->Width2; /* without border, power of two */ GLint i; - i = nearest_texel_location(tObj->WrapS, img, width, texcoord[0]); + i = nearest_texel_location(tObj->Sampler.WrapS, img, width, texcoord[0]); /* skip over the border, if any */ i += img->Border; if (i < 0 || i >= (GLint) img->Width) { @@ -832,7 +832,7 @@ sample_1d_linear(struct gl_context *ctx, GLfloat a; GLfloat t0[4], t1[4]; /* texels */ - linear_texel_locations(tObj->WrapS, img, width, texcoord[0], &i0, &i1, &a); + linear_texel_locations(tObj->Sampler.WrapS, img, width, texcoord[0], &i0, &i1, &a); if (img->Border) { i0 += img->Border; @@ -991,7 +991,7 @@ sample_lambda_1d( struct gl_context *ctx, if (minStart < minEnd) { /* do the minified texels */ const GLuint m = minEnd - minStart; - switch (tObj->MinFilter) { + switch (tObj->Sampler.MinFilter) { case GL_NEAREST: for (i = minStart; i < minEnd; i++) sample_1d_nearest(ctx, tObj, tObj->Image[0][tObj->BaseLevel], @@ -1026,7 +1026,7 @@ sample_lambda_1d( struct gl_context *ctx, if (magStart < magEnd) { /* do the magnified texels */ - switch (tObj->MagFilter) { + switch (tObj->Sampler.MagFilter) { case GL_NEAREST: for (i = magStart; i < magEnd; i++) sample_1d_nearest(ctx, tObj, tObj->Image[0][tObj->BaseLevel], @@ -1065,8 +1065,8 @@ sample_2d_nearest(struct gl_context *ctx, GLint i, j; (void) ctx; - i = nearest_texel_location(tObj->WrapS, img, width, texcoord[0]); - j = nearest_texel_location(tObj->WrapT, img, height, texcoord[1]); + i = nearest_texel_location(tObj->Sampler.WrapS, img, width, texcoord[0]); + j = nearest_texel_location(tObj->Sampler.WrapT, img, height, texcoord[1]); /* skip over the border, if any */ i += img->Border; @@ -1100,8 +1100,8 @@ sample_2d_linear(struct gl_context *ctx, GLfloat a, b; GLfloat t00[4], t10[4], t01[4], t11[4]; /* sampled texel colors */ - linear_texel_locations(tObj->WrapS, img, width, texcoord[0], &i0, &i1, &a); - linear_texel_locations(tObj->WrapT, img, height, texcoord[1], &j0, &j1, &b); + linear_texel_locations(tObj->Sampler.WrapS, img, width, texcoord[0], &i0, &i1, &a); + linear_texel_locations(tObj->Sampler.WrapT, img, height, texcoord[1], &j0, &j1, &b); if (img->Border) { i0 += img->Border; @@ -1165,8 +1165,8 @@ sample_2d_linear_repeat(struct gl_context *ctx, (void) ctx; - ASSERT(tObj->WrapS == GL_REPEAT); - ASSERT(tObj->WrapT == GL_REPEAT); + ASSERT(tObj->Sampler.WrapS == GL_REPEAT); + ASSERT(tObj->Sampler.WrapT == GL_REPEAT); ASSERT(img->Border == 0); ASSERT(img->_BaseFormat != GL_COLOR_INDEX); ASSERT(img->_IsPowerOfTwo); @@ -1270,8 +1270,8 @@ sample_2d_linear_mipmap_linear_repeat(struct gl_context *ctx, { GLuint i; ASSERT(lambda != NULL); - ASSERT(tObj->WrapS == GL_REPEAT); - ASSERT(tObj->WrapT == GL_REPEAT); + ASSERT(tObj->Sampler.WrapS == GL_REPEAT); + ASSERT(tObj->Sampler.WrapT == GL_REPEAT); for (i = 0; i < n; i++) { GLint level = linear_mipmap_level(tObj, lambda[i]); if (level >= tObj->_MaxLevel) { @@ -1317,8 +1317,8 @@ sample_linear_2d(struct gl_context *ctx, GLuint i; struct gl_texture_image *image = tObj->Image[0][tObj->BaseLevel]; (void) lambda; - if (tObj->WrapS == GL_REPEAT && - tObj->WrapT == GL_REPEAT && + if (tObj->Sampler.WrapS == GL_REPEAT && + tObj->Sampler.WrapT == GL_REPEAT && image->_IsPowerOfTwo && image->Border == 0) { for (i = 0; i < n; i++) { @@ -1356,8 +1356,8 @@ opt_sample_rgb_2d(struct gl_context *ctx, GLuint k; (void) ctx; (void) lambda; - ASSERT(tObj->WrapS==GL_REPEAT); - ASSERT(tObj->WrapT==GL_REPEAT); + ASSERT(tObj->Sampler.WrapS==GL_REPEAT); + ASSERT(tObj->Sampler.WrapT==GL_REPEAT); ASSERT(img->Border==0); ASSERT(img->TexFormat == MESA_FORMAT_RGB888); ASSERT(img->_IsPowerOfTwo); @@ -1398,8 +1398,8 @@ opt_sample_rgba_2d(struct gl_context *ctx, GLuint i; (void) ctx; (void) lambda; - ASSERT(tObj->WrapS==GL_REPEAT); - ASSERT(tObj->WrapT==GL_REPEAT); + ASSERT(tObj->Sampler.WrapS==GL_REPEAT); + ASSERT(tObj->Sampler.WrapT==GL_REPEAT); ASSERT(img->Border==0); ASSERT(img->TexFormat == MESA_FORMAT_RGBA8888); ASSERT(img->_IsPowerOfTwo); @@ -1428,8 +1428,8 @@ sample_lambda_2d(struct gl_context *ctx, GLuint minStart, minEnd; /* texels with minification */ GLuint magStart, magEnd; /* texels with magnification */ - const GLboolean repeatNoBorderPOT = (tObj->WrapS == GL_REPEAT) - && (tObj->WrapT == GL_REPEAT) + const GLboolean repeatNoBorderPOT = (tObj->Sampler.WrapS == GL_REPEAT) + && (tObj->Sampler.WrapT == GL_REPEAT) && (tImg->Border == 0 && (tImg->Width == tImg->RowStride)) && (tImg->_BaseFormat != GL_COLOR_INDEX) && tImg->_IsPowerOfTwo; @@ -1441,7 +1441,7 @@ sample_lambda_2d(struct gl_context *ctx, if (minStart < minEnd) { /* do the minified texels */ const GLuint m = minEnd - minStart; - switch (tObj->MinFilter) { + switch (tObj->Sampler.MinFilter) { case GL_NEAREST: if (repeatNoBorderPOT) { switch (tImg->TexFormat) { @@ -1498,7 +1498,7 @@ sample_lambda_2d(struct gl_context *ctx, /* do the magnified texels */ const GLuint m = magEnd - magStart; - switch (tObj->MagFilter) { + switch (tObj->Sampler.MagFilter) { case GL_NEAREST: if (repeatNoBorderPOT) { switch (tImg->TexFormat) { @@ -1552,9 +1552,9 @@ sample_3d_nearest(struct gl_context *ctx, GLint i, j, k; (void) ctx; - i = nearest_texel_location(tObj->WrapS, img, width, texcoord[0]); - j = nearest_texel_location(tObj->WrapT, img, height, texcoord[1]); - k = nearest_texel_location(tObj->WrapR, img, depth, texcoord[2]); + i = nearest_texel_location(tObj->Sampler.WrapS, img, width, texcoord[0]); + j = nearest_texel_location(tObj->Sampler.WrapT, img, height, texcoord[1]); + k = nearest_texel_location(tObj->Sampler.WrapR, img, depth, texcoord[2]); if (i < 0 || i >= (GLint) img->Width || j < 0 || j >= (GLint) img->Height || @@ -1587,9 +1587,9 @@ sample_3d_linear(struct gl_context *ctx, GLfloat t000[4], t010[4], t001[4], t011[4]; GLfloat t100[4], t110[4], t101[4], t111[4]; - linear_texel_locations(tObj->WrapS, img, width, texcoord[0], &i0, &i1, &a); - linear_texel_locations(tObj->WrapT, img, height, texcoord[1], &j0, &j1, &b); - linear_texel_locations(tObj->WrapR, img, depth, texcoord[2], &k0, &k1, &c); + linear_texel_locations(tObj->Sampler.WrapS, img, width, texcoord[0], &i0, &i1, &a); + linear_texel_locations(tObj->Sampler.WrapT, img, height, texcoord[1], &j0, &j1, &b); + linear_texel_locations(tObj->Sampler.WrapR, img, depth, texcoord[2], &k0, &k1, &c); if (img->Border) { i0 += img->Border; @@ -1794,7 +1794,7 @@ sample_lambda_3d(struct gl_context *ctx, if (minStart < minEnd) { /* do the minified texels */ GLuint m = minEnd - minStart; - switch (tObj->MinFilter) { + switch (tObj->Sampler.MinFilter) { case GL_NEAREST: for (i = minStart; i < minEnd; i++) sample_3d_nearest(ctx, tObj, tObj->Image[0][tObj->BaseLevel], @@ -1829,7 +1829,7 @@ sample_lambda_3d(struct gl_context *ctx, if (magStart < magEnd) { /* do the magnified texels */ - switch (tObj->MagFilter) { + switch (tObj->Sampler.MagFilter) { case GL_NEAREST: for (i = magStart; i < magEnd; i++) sample_3d_nearest(ctx, tObj, tObj->Image[0][tObj->BaseLevel], @@ -2091,7 +2091,7 @@ sample_lambda_cube(struct gl_context *ctx, if (minStart < minEnd) { /* do the minified texels */ const GLuint m = minEnd - minStart; - switch (tObj->MinFilter) { + switch (tObj->Sampler.MinFilter) { case GL_NEAREST: sample_nearest_cube(ctx, tObj, m, texcoords + minStart, lambda + minStart, rgba + minStart); @@ -2128,7 +2128,7 @@ sample_lambda_cube(struct gl_context *ctx, if (magStart < magEnd) { /* do the magnified texels */ const GLuint m = magEnd - magStart; - switch (tObj->MagFilter) { + switch (tObj->Sampler.MagFilter) { case GL_NEAREST: sample_nearest_cube(ctx, tObj, m, texcoords + magStart, lambda + magStart, rgba + magStart); @@ -2163,18 +2163,18 @@ sample_nearest_rect(struct gl_context *ctx, (void) ctx; (void) lambda; - ASSERT(tObj->WrapS == GL_CLAMP || - tObj->WrapS == GL_CLAMP_TO_EDGE || - tObj->WrapS == GL_CLAMP_TO_BORDER); - ASSERT(tObj->WrapT == GL_CLAMP || - tObj->WrapT == GL_CLAMP_TO_EDGE || - tObj->WrapT == GL_CLAMP_TO_BORDER); + ASSERT(tObj->Sampler.WrapS == GL_CLAMP || + tObj->Sampler.WrapS == GL_CLAMP_TO_EDGE || + tObj->Sampler.WrapS == GL_CLAMP_TO_BORDER); + ASSERT(tObj->Sampler.WrapT == GL_CLAMP || + tObj->Sampler.WrapT == GL_CLAMP_TO_EDGE || + tObj->Sampler.WrapT == GL_CLAMP_TO_BORDER); ASSERT(img->_BaseFormat != GL_COLOR_INDEX); for (i = 0; i < n; i++) { GLint row, col; - col = clamp_rect_coord_nearest(tObj->WrapS, texcoords[i][0], width); - row = clamp_rect_coord_nearest(tObj->WrapT, texcoords[i][1], height); + col = clamp_rect_coord_nearest(tObj->Sampler.WrapS, texcoords[i][0], width); + row = clamp_rect_coord_nearest(tObj->Sampler.WrapT, texcoords[i][1], height); if (col < 0 || col >= width || row < 0 || row >= height) get_border_color(tObj, img, rgba[i]); else @@ -2197,12 +2197,12 @@ sample_linear_rect(struct gl_context *ctx, (void) ctx; (void) lambda; - ASSERT(tObj->WrapS == GL_CLAMP || - tObj->WrapS == GL_CLAMP_TO_EDGE || - tObj->WrapS == GL_CLAMP_TO_BORDER); - ASSERT(tObj->WrapT == GL_CLAMP || - tObj->WrapT == GL_CLAMP_TO_EDGE || - tObj->WrapT == GL_CLAMP_TO_BORDER); + ASSERT(tObj->Sampler.WrapS == GL_CLAMP || + tObj->Sampler.WrapS == GL_CLAMP_TO_EDGE || + tObj->Sampler.WrapS == GL_CLAMP_TO_BORDER); + ASSERT(tObj->Sampler.WrapT == GL_CLAMP || + tObj->Sampler.WrapT == GL_CLAMP_TO_EDGE || + tObj->Sampler.WrapT == GL_CLAMP_TO_BORDER); ASSERT(img->_BaseFormat != GL_COLOR_INDEX); for (i = 0; i < n; i++) { @@ -2211,9 +2211,9 @@ sample_linear_rect(struct gl_context *ctx, GLfloat a, b; GLbitfield useBorderColor = 0x0; - clamp_rect_coord_linear(tObj->WrapS, texcoords[i][0], width, + clamp_rect_coord_linear(tObj->Sampler.WrapS, texcoords[i][0], width, &i0, &i1, &a); - clamp_rect_coord_linear(tObj->WrapT, texcoords[i][1], height, + clamp_rect_coord_linear(tObj->Sampler.WrapT, texcoords[i][1], height, &j0, &j1, &b); /* compute integer rows/columns */ @@ -2264,7 +2264,7 @@ sample_lambda_rect(struct gl_context *ctx, &minStart, &minEnd, &magStart, &magEnd); if (minStart < minEnd) { - if (tObj->MinFilter == GL_NEAREST) { + if (tObj->Sampler.MinFilter == GL_NEAREST) { sample_nearest_rect(ctx, tObj, minEnd - minStart, texcoords + minStart, NULL, rgba + minStart); } @@ -2274,7 +2274,7 @@ sample_lambda_rect(struct gl_context *ctx, } } if (magStart < magEnd) { - if (tObj->MagFilter == GL_NEAREST) { + if (tObj->Sampler.MagFilter == GL_NEAREST) { sample_nearest_rect(ctx, tObj, magEnd - magStart, texcoords + magStart, NULL, rgba + magStart); } @@ -2307,8 +2307,8 @@ sample_2d_array_nearest(struct gl_context *ctx, GLint array; (void) ctx; - i = nearest_texel_location(tObj->WrapS, img, width, texcoord[0]); - j = nearest_texel_location(tObj->WrapT, img, height, texcoord[1]); + i = nearest_texel_location(tObj->Sampler.WrapS, img, width, texcoord[0]); + j = nearest_texel_location(tObj->Sampler.WrapT, img, height, texcoord[1]); array = tex_array_slice(texcoord[2], depth); if (i < 0 || i >= (GLint) img->Width || @@ -2342,12 +2342,12 @@ sample_2d_array_linear(struct gl_context *ctx, GLfloat a, b; GLfloat t00[4], t01[4], t10[4], t11[4]; - linear_texel_locations(tObj->WrapS, img, width, texcoord[0], &i0, &i1, &a); - linear_texel_locations(tObj->WrapT, img, height, texcoord[1], &j0, &j1, &b); + linear_texel_locations(tObj->Sampler.WrapS, img, width, texcoord[0], &i0, &i1, &a); + linear_texel_locations(tObj->Sampler.WrapT, img, height, texcoord[1], &j0, &j1, &b); array = tex_array_slice(texcoord[2], depth); if (array < 0 || array >= depth) { - COPY_4V(rgba, tObj->BorderColor.f); + COPY_4V(rgba, tObj->Sampler.BorderColor.f); } else { if (img->Border) { @@ -2532,7 +2532,7 @@ sample_lambda_2d_array(struct gl_context *ctx, if (minStart < minEnd) { /* do the minified texels */ GLuint m = minEnd - minStart; - switch (tObj->MinFilter) { + switch (tObj->Sampler.MinFilter) { case GL_NEAREST: for (i = minStart; i < minEnd; i++) sample_2d_array_nearest(ctx, tObj, tObj->Image[0][tObj->BaseLevel], @@ -2575,7 +2575,7 @@ sample_lambda_2d_array(struct gl_context *ctx, if (magStart < magEnd) { /* do the magnified texels */ - switch (tObj->MagFilter) { + switch (tObj->Sampler.MagFilter) { case GL_NEAREST: for (i = magStart; i < magEnd; i++) sample_2d_array_nearest(ctx, tObj, tObj->Image[0][tObj->BaseLevel], @@ -2616,7 +2616,7 @@ sample_1d_array_nearest(struct gl_context *ctx, GLint array; (void) ctx; - i = nearest_texel_location(tObj->WrapS, img, width, texcoord[0]); + i = nearest_texel_location(tObj->Sampler.WrapS, img, width, texcoord[0]); array = tex_array_slice(texcoord[1], height); if (i < 0 || i >= (GLint) img->Width || @@ -2648,7 +2648,7 @@ sample_1d_array_linear(struct gl_context *ctx, GLfloat a; GLfloat t0[4], t1[4]; - linear_texel_locations(tObj->WrapS, img, width, texcoord[0], &i0, &i1, &a); + linear_texel_locations(tObj->Sampler.WrapS, img, width, texcoord[0], &i0, &i1, &a); array = tex_array_slice(texcoord[1], height); if (img->Border) { @@ -2813,7 +2813,7 @@ sample_lambda_1d_array(struct gl_context *ctx, if (minStart < minEnd) { /* do the minified texels */ GLuint m = minEnd - minStart; - switch (tObj->MinFilter) { + switch (tObj->Sampler.MinFilter) { case GL_NEAREST: for (i = minStart; i < minEnd; i++) sample_1d_array_nearest(ctx, tObj, tObj->Image[0][tObj->BaseLevel], @@ -2852,7 +2852,7 @@ sample_lambda_1d_array(struct gl_context *ctx, if (magStart < magEnd) { /* do the magnified texels */ - switch (tObj->MagFilter) { + switch (tObj->Sampler.MagFilter) { case GL_NEAREST: for (i = magStart; i < magEnd; i++) sample_1d_array_nearest(ctx, tObj, tObj->Image[0][tObj->BaseLevel], @@ -2975,13 +2975,13 @@ choose_depth_texture_level(const struct gl_texture_object *tObj, GLfloat lambda) { GLint level; - if (tObj->MinFilter == GL_NEAREST || tObj->MinFilter == GL_LINEAR) { + if (tObj->Sampler.MinFilter == GL_NEAREST || tObj->Sampler.MinFilter == GL_LINEAR) { /* no mipmapping - use base level */ level = tObj->BaseLevel; } else { /* choose mipmap level */ - lambda = CLAMP(lambda, tObj->MinLod, tObj->MaxLod); + lambda = CLAMP(lambda, tObj->Sampler.MinLod, tObj->Sampler.MaxLod); level = (GLint) lambda; level = CLAMP(level, tObj->BaseLevel, tObj->_MaxLevel); } @@ -3020,14 +3020,14 @@ sample_depth_texture( struct gl_context *ctx, tObj->Target == GL_TEXTURE_1D_ARRAY_EXT || tObj->Target == GL_TEXTURE_2D_ARRAY_EXT); - ambient = tObj->CompareFailValue; + ambient = tObj->Sampler.CompareFailValue; - /* XXXX if tObj->MinFilter != tObj->MagFilter, we're ignoring lambda */ + /* XXXX if tObj->Sampler.MinFilter != tObj->Sampler.MagFilter, we're ignoring lambda */ - function = (tObj->CompareMode == GL_COMPARE_R_TO_TEXTURE_ARB) ? - tObj->CompareFunc : GL_NONE; + function = (tObj->Sampler.CompareMode == GL_COMPARE_R_TO_TEXTURE_ARB) ? + tObj->Sampler.CompareFunc : GL_NONE; - if (tObj->MagFilter == GL_NEAREST) { + if (tObj->Sampler.MagFilter == GL_NEAREST) { GLuint i; for (i = 0; i < n; i++) { GLfloat depthSample, depthRef; @@ -3040,14 +3040,14 @@ sample_depth_texture( struct gl_context *ctx, img->FetchTexelf(img, col, row, slice, &depthSample); } else { - depthSample = tObj->BorderColor.f[0]; + depthSample = tObj->Sampler.BorderColor.f[0]; } depthRef = CLAMP(texcoords[i][compare_coord], 0.0F, 1.0F); result = shadow_compare(function, depthRef, depthSample, ambient); - switch (tObj->DepthMode) { + switch (tObj->Sampler.DepthMode) { case GL_LUMINANCE: ASSIGN_4V(texel[i], result, result, result, 1.0F); break; @@ -3067,7 +3067,7 @@ sample_depth_texture( struct gl_context *ctx, } else { GLuint i; - ASSERT(tObj->MagFilter == GL_LINEAR); + ASSERT(tObj->Sampler.MagFilter == GL_LINEAR); for (i = 0; i < n; i++) { GLfloat depth00, depth01, depth10, depth11, depthRef; GLint i0, i1, j0, j1; @@ -3095,21 +3095,21 @@ sample_depth_texture( struct gl_context *ctx, } if (slice < 0 || slice >= (GLint) depth) { - depth00 = tObj->BorderColor.f[0]; - depth01 = tObj->BorderColor.f[0]; - depth10 = tObj->BorderColor.f[0]; - depth11 = tObj->BorderColor.f[0]; + depth00 = tObj->Sampler.BorderColor.f[0]; + depth01 = tObj->Sampler.BorderColor.f[0]; + depth10 = tObj->Sampler.BorderColor.f[0]; + depth11 = tObj->Sampler.BorderColor.f[0]; } else { /* get four depth samples from the texture */ if (useBorderTexel & (I0BIT | J0BIT)) { - depth00 = tObj->BorderColor.f[0]; + depth00 = tObj->Sampler.BorderColor.f[0]; } else { img->FetchTexelf(img, i0, j0, slice, &depth00); } if (useBorderTexel & (I1BIT | J0BIT)) { - depth10 = tObj->BorderColor.f[0]; + depth10 = tObj->Sampler.BorderColor.f[0]; } else { img->FetchTexelf(img, i1, j0, slice, &depth10); @@ -3117,13 +3117,13 @@ sample_depth_texture( struct gl_context *ctx, if (tObj->Target != GL_TEXTURE_1D_ARRAY_EXT) { if (useBorderTexel & (I0BIT | J1BIT)) { - depth01 = tObj->BorderColor.f[0]; + depth01 = tObj->Sampler.BorderColor.f[0]; } else { img->FetchTexelf(img, i0, j1, slice, &depth01); } if (useBorderTexel & (I1BIT | J1BIT)) { - depth11 = tObj->BorderColor.f[0]; + depth11 = tObj->Sampler.BorderColor.f[0]; } else { img->FetchTexelf(img, i1, j1, slice, &depth11); @@ -3141,7 +3141,7 @@ sample_depth_texture( struct gl_context *ctx, depth00, depth01, depth10, depth11, ambient, wi, wj); - switch (tObj->DepthMode) { + switch (tObj->Sampler.DepthMode) { case GL_LUMINANCE: ASSIGN_4V(texel[i], result, result, result, 1.0F); break; @@ -3197,7 +3197,8 @@ _swrast_choose_texture_sample_func( struct gl_context *ctx, return &null_sample_func; } else { - const GLboolean needLambda = (GLboolean) (t->MinFilter != t->MagFilter); + const GLboolean needLambda = + (GLboolean) (t->Sampler.MinFilter != t->Sampler.MagFilter); const GLenum format = t->Image[0][t->BaseLevel]->_BaseFormat; switch (t->Target) { @@ -3208,11 +3209,11 @@ _swrast_choose_texture_sample_func( struct gl_context *ctx, else if (needLambda) { return &sample_lambda_1d; } - else if (t->MinFilter == GL_LINEAR) { + else if (t->Sampler.MinFilter == GL_LINEAR) { return &sample_linear_1d; } else { - ASSERT(t->MinFilter == GL_NEAREST); + ASSERT(t->Sampler.MinFilter == GL_NEAREST); return &sample_nearest_1d; } case GL_TEXTURE_2D: @@ -3222,22 +3223,22 @@ _swrast_choose_texture_sample_func( struct gl_context *ctx, else if (needLambda) { return &sample_lambda_2d; } - else if (t->MinFilter == GL_LINEAR) { + else if (t->Sampler.MinFilter == GL_LINEAR) { return &sample_linear_2d; } else { /* check for a few optimized cases */ const struct gl_texture_image *img = t->Image[0][t->BaseLevel]; - ASSERT(t->MinFilter == GL_NEAREST); - if (t->WrapS == GL_REPEAT && - t->WrapT == GL_REPEAT && + ASSERT(t->Sampler.MinFilter == GL_NEAREST); + if (t->Sampler.WrapS == GL_REPEAT && + t->Sampler.WrapT == GL_REPEAT && img->_IsPowerOfTwo && img->Border == 0 && img->TexFormat == MESA_FORMAT_RGB888) { return &opt_sample_rgb_2d; } - else if (t->WrapS == GL_REPEAT && - t->WrapT == GL_REPEAT && + else if (t->Sampler.WrapS == GL_REPEAT && + t->Sampler.WrapT == GL_REPEAT && img->_IsPowerOfTwo && img->Border == 0 && img->TexFormat == MESA_FORMAT_RGBA8888) { @@ -3251,22 +3252,22 @@ _swrast_choose_texture_sample_func( struct gl_context *ctx, if (needLambda) { return &sample_lambda_3d; } - else if (t->MinFilter == GL_LINEAR) { + else if (t->Sampler.MinFilter == GL_LINEAR) { return &sample_linear_3d; } else { - ASSERT(t->MinFilter == GL_NEAREST); + ASSERT(t->Sampler.MinFilter == GL_NEAREST); return &sample_nearest_3d; } case GL_TEXTURE_CUBE_MAP: if (needLambda) { return &sample_lambda_cube; } - else if (t->MinFilter == GL_LINEAR) { + else if (t->Sampler.MinFilter == GL_LINEAR) { return &sample_linear_cube; } else { - ASSERT(t->MinFilter == GL_NEAREST); + ASSERT(t->Sampler.MinFilter == GL_NEAREST); return &sample_nearest_cube; } case GL_TEXTURE_RECTANGLE_NV: @@ -3276,33 +3277,33 @@ _swrast_choose_texture_sample_func( struct gl_context *ctx, else if (needLambda) { return &sample_lambda_rect; } - else if (t->MinFilter == GL_LINEAR) { + else if (t->Sampler.MinFilter == GL_LINEAR) { return &sample_linear_rect; } else { - ASSERT(t->MinFilter == GL_NEAREST); + ASSERT(t->Sampler.MinFilter == GL_NEAREST); return &sample_nearest_rect; } case GL_TEXTURE_1D_ARRAY_EXT: if (needLambda) { return &sample_lambda_1d_array; } - else if (t->MinFilter == GL_LINEAR) { + else if (t->Sampler.MinFilter == GL_LINEAR) { return &sample_linear_1d_array; } else { - ASSERT(t->MinFilter == GL_NEAREST); + ASSERT(t->Sampler.MinFilter == GL_NEAREST); return &sample_nearest_1d_array; } case GL_TEXTURE_2D_ARRAY_EXT: if (needLambda) { return &sample_lambda_2d_array; } - else if (t->MinFilter == GL_LINEAR) { + else if (t->Sampler.MinFilter == GL_LINEAR) { return &sample_linear_2d_array; } else { - ASSERT(t->MinFilter == GL_NEAREST); + ASSERT(t->Sampler.MinFilter == GL_NEAREST); return &sample_nearest_2d_array; } default: diff --git a/src/mesa/swrast/s_triangle.c b/src/mesa/swrast/s_triangle.c index d07a4ef7513..8a9671aa08a 100644 --- a/src/mesa/swrast/s_triangle.c +++ b/src/mesa/swrast/s_triangle.c @@ -540,7 +540,7 @@ affine_span(struct gl_context *ctx, SWspan *span, info.smask = texImg->Width - 1; \ info.tmask = texImg->Height - 1; \ info.format = texImg->TexFormat; \ - info.filter = obj->MinFilter; \ + info.filter = obj->Sampler.MinFilter; \ info.envmode = unit->EnvMode; \ info.er = 0; \ info.eg = 0; \ @@ -805,7 +805,7 @@ fast_persp_span(struct gl_context *ctx, SWspan *span, info.smask = texImg->Width - 1; \ info.tmask = texImg->Height - 1; \ info.format = texImg->TexFormat; \ - info.filter = obj->MinFilter; \ + info.filter = obj->Sampler.MinFilter; \ info.envmode = unit->EnvMode; \ info.er = 0; \ info.eg = 0; \ @@ -1044,8 +1044,8 @@ _swrast_choose_triangle( struct gl_context *ctx ) texImg = texObj2D ? texObj2D->Image[0][texObj2D->BaseLevel] : NULL; format = texImg ? texImg->TexFormat : MESA_FORMAT_NONE; - minFilter = texObj2D ? texObj2D->MinFilter : GL_NONE; - magFilter = texObj2D ? texObj2D->MagFilter : GL_NONE; + minFilter = texObj2D ? texObj2D->Sampler.MinFilter : GL_NONE; + magFilter = texObj2D ? texObj2D->Sampler.MagFilter : GL_NONE; envMode = ctx->Texture.Unit[0].EnvMode; /* First see if we can use an optimized 2-D texture function */ @@ -1054,8 +1054,8 @@ _swrast_choose_triangle( struct gl_context *ctx ) && !ctx->ATIFragmentShader._Enabled && ctx->Texture._EnabledUnits == 0x1 && ctx->Texture.Unit[0]._ReallyEnabled == TEXTURE_2D_BIT - && texObj2D->WrapS == GL_REPEAT - && texObj2D->WrapT == GL_REPEAT + && texObj2D->Sampler.WrapS == GL_REPEAT + && texObj2D->Sampler.WrapT == GL_REPEAT && texObj2D->_Swizzle == SWIZZLE_NOOP && texImg->_IsPowerOfTwo && texImg->Border == 0 From aebe16da539cbfaffa08243cecef44e69356fe36 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Sun, 10 Apr 2011 12:46:15 -0600 Subject: [PATCH 228/420] mesa: add glGet for GL_ARB_sampler_objects --- src/mesa/main/get.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/mesa/main/get.c b/src/mesa/main/get.c index 6ef8c8792e6..e18803280c1 100644 --- a/src/mesa/main/get.c +++ b/src/mesa/main/get.c @@ -278,6 +278,11 @@ static const int extra_EXT_gpu_shader4[] = { EXTRA_END }; +static const int extra_ARB_sampler_objects[] = { + EXT(ARB_sampler_objects), + EXTRA_END +}; + EXTRA_EXT(ARB_ES2_compatibility); EXTRA_EXT(ARB_multitexture); @@ -1249,6 +1254,10 @@ static const struct value_desc values[] = { { GL_TEXTURE_BUFFER_ARB, LOC_CUSTOM, TYPE_INT, 0, extra_ARB_texture_buffer_object }, + /* GL_ARB_sampler_objects / GL 3.3 */ + { GL_SAMPLER_BINDING, + LOC_CUSTOM, TYPE_INT, GL_SAMPLER_BINDING, extra_ARB_sampler_objects }, + /* GL 3.0 */ { GL_NUM_EXTENSIONS, LOC_CUSTOM, TYPE_INT, 0, extra_version_30 }, { GL_MAJOR_VERSION, CONTEXT_INT(VersionMajor), extra_version_30 }, @@ -1709,6 +1718,14 @@ find_custom_value(struct gl_context *ctx, const struct value_desc *d, union valu .CurrentTex[TEXTURE_BUFFER_INDEX]->BufferObjectFormat; break; + /* GL_ARB_sampler_objects */ + case GL_SAMPLER_BINDING: + { + struct gl_sampler_object *samp = + ctx->Texture.Unit[ctx->Texture.CurrentUnit].Sampler; + v->value_int = samp ? samp->Name : 0; + } + break; } } From 0308beebc2ac27a51ea5ec7d6d0d748f8e9f8b4d Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Sun, 10 Apr 2011 12:46:32 -0600 Subject: [PATCH 229/420] mesa: new driver hooks for GL_ARB_sampler_objects --- src/mesa/main/dd.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/mesa/main/dd.h b/src/mesa/main/dd.h index 34d67b5bac8..d749b245e13 100644 --- a/src/mesa/main/dd.h +++ b/src/mesa/main/dd.h @@ -1021,6 +1021,14 @@ struct dd_function_table { * \name GL_NV_texture_barrier interface */ void (*TextureBarrier)(struct gl_context *ctx); + + /** + * \name GL_ARB_sampler_objects + */ + struct gl_sampler_object * (*NewSamplerObject)(struct gl_context *ctx, + GLuint name); + void (*DeleteSamplerObject)(struct gl_context *ctx, + struct gl_sampler_object *samp); }; From 6bb4d807f7e80eaf899fd5c34c2c9ff0474eb80e Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Sun, 10 Apr 2011 12:47:00 -0600 Subject: [PATCH 230/420] mesa: alloc/free shared sampler objects --- src/mesa/main/shared.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/src/mesa/main/shared.c b/src/mesa/main/shared.c index 6604ed07d53..e470d873f70 100644 --- a/src/mesa/main/shared.c +++ b/src/mesa/main/shared.c @@ -40,6 +40,9 @@ #include "shared.h" #include "program/program.h" #include "dlist.h" +#if FEATURE_ARB_sampler_objects +#include "samplerobj.h" +#endif #include "shaderobj.h" #include "syncobj.h" @@ -91,6 +94,11 @@ _mesa_alloc_shared_state(struct gl_context *ctx) shared->BufferObjects = _mesa_NewHashTable(); #endif +#if FEATURE_ARB_sampler_objects + /* GL_ARB_sampler_objects */ + shared->SamplerObjects = _mesa_NewHashTable(); +#endif + /* Allocate the default buffer object */ shared->NullBufferObj = ctx->Driver.NewBufferObject(ctx, 0, 0); @@ -270,6 +278,20 @@ delete_renderbuffer_cb(GLuint id, void *data, void *userData) } +#if FEATURE_ARB_sampler_objects +/** + * Callback for deleting a sampler object. Called by _mesa_HashDeleteAll() + */ +static void +delete_sampler_object_cb(GLuint id, void *data, void *userData) +{ + struct gl_context *ctx = (struct gl_context *) userData; + struct gl_sampler_object *sampObj = (struct gl_sampler_object *) data; + _mesa_reference_sampler_object(ctx, &sampObj, NULL); +} +#endif + + /** * Deallocate a shared state object and all children structures. * @@ -345,6 +367,11 @@ free_shared_state(struct gl_context *ctx, struct gl_shared_state *shared) } } +#if FEATURE_ARB_sampler_objects + _mesa_HashDeleteAll(shared->SamplerObjects, delete_sampler_object_cb, ctx); + _mesa_DeleteHashTable(shared->SamplerObjects); +#endif + /* * Free texture objects (after FBOs since some textures might have * been bound to FBOs). From f22d49de0f02653bb54aeb6a5f07a56e2cc63f1d Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Sun, 10 Apr 2011 12:47:47 -0600 Subject: [PATCH 231/420] mesa: new code/functions for GL_ARB_sampler_objects This implements the infrastructure for sampler objects and all the new API functions. --- src/mesa/main/samplerobj.c | 1355 ++++++++++++++++++++++++++++++++++++ src/mesa/main/samplerobj.h | 54 ++ 2 files changed, 1409 insertions(+) create mode 100644 src/mesa/main/samplerobj.c create mode 100644 src/mesa/main/samplerobj.h diff --git a/src/mesa/main/samplerobj.c b/src/mesa/main/samplerobj.c new file mode 100644 index 00000000000..55acb6d1f5c --- /dev/null +++ b/src/mesa/main/samplerobj.c @@ -0,0 +1,1355 @@ +/* + * 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 + * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + + +/** + * \file samplerobj.c + * \brief Functions for the GL_ARB_sampler_objects extension. + * \author Brian Paul + */ + + +#include "main/glheader.h" +#include "main/context.h" +#include "main/dispatch.h" +#include "main/enums.h" +#include "main/hash.h" +#include "main/macros.h" +#include "main/mfeatures.h" +#include "main/mtypes.h" +#include "main/samplerobj.h" + + +static struct gl_sampler_object * +_mesa_lookup_samplerobj(struct gl_context *ctx, GLuint name) +{ + if (name == 0) + return NULL; + else + return (struct gl_sampler_object *) + _mesa_HashLookup(ctx->Shared->SamplerObjects, name); +} + + +/** + * Handle reference counting. + */ +void +_mesa_reference_sampler_object(struct gl_context *ctx, + struct gl_sampler_object **ptr, + struct gl_sampler_object *samp) +{ + if (*ptr == samp) + return; + + if (*ptr) { + /* Unreference the old buffer */ + GLboolean deleteFlag = GL_FALSE; + struct gl_sampler_object *oldSamp = *ptr; + + /*_glthread_LOCK_MUTEX(oldSamp->Mutex);*/ + ASSERT(oldSamp->RefCount > 0); + oldSamp->RefCount--; +#if 0 + printf("SamplerObj %p %d DECR to %d\n", + (void *) oldSamp, oldSamp->Name, oldSamp->RefCount); +#endif + deleteFlag = (oldSamp->RefCount == 0); + /*_glthread_UNLOCK_MUTEX(oldSamp->Mutex);*/ + + if (deleteFlag) { + ASSERT(ctx->Driver.DeleteSamplerObject); + ctx->Driver.DeleteSamplerObject(ctx, oldSamp); + } + + *ptr = NULL; + } + ASSERT(!*ptr); + + if (samp) { + /* reference new sampler */ + /*_glthread_LOCK_MUTEX(samp->Mutex);*/ + if (samp->RefCount == 0) { + /* this buffer's being deleted (look just above) */ + /* Not sure this can every really happen. Warn if it does. */ + _mesa_problem(NULL, "referencing deleted buffer object"); + *ptr = NULL; + } + else { + samp->RefCount++; +#if 0 + printf("SamplerObj %p %d INCR to %d\n", + (void *) samp, samp->Name, samp->RefCount); +#endif + *ptr = samp; + } + /*_glthread_UNLOCK_MUTEX(samp->Mutex);*/ + } +} + + +/** + * Initialize the fields of the given sampler object. + */ +void +_mesa_init_sampler_object(struct gl_sampler_object *sampObj, GLuint name) +{ + sampObj->Name = name; + sampObj->RefCount = 1; + sampObj->WrapS = GL_REPEAT; + sampObj->WrapT = GL_REPEAT; + sampObj->WrapR = GL_REPEAT; + sampObj->MinFilter = GL_NEAREST_MIPMAP_LINEAR; + sampObj->MagFilter = GL_LINEAR; + sampObj->BorderColor.f[0] = 0.0; + sampObj->BorderColor.f[1] = 0.0; + sampObj->BorderColor.f[2] = 0.0; + sampObj->BorderColor.f[3] = 0.0; + sampObj->MinLod = -1000.0F; + sampObj->MaxLod = 1000.0F; + sampObj->LodBias = 0.0F; + sampObj->MaxAnisotropy = 1.0F; + sampObj->CompareMode = GL_NONE; + sampObj->CompareFunc = GL_LEQUAL; + sampObj->CompareFailValue = 0.0; + sampObj->sRGBDecode = GL_FALSE; + sampObj->DepthMode = 0; +} + + +/** + * Fallback for ctx->Driver.NewSamplerObject(); + */ +struct gl_sampler_object * +_mesa_new_sampler_object(struct gl_context *ctx, GLuint name) +{ + struct gl_sampler_object *sampObj = CALLOC_STRUCT(gl_sampler_object); + if (sampObj) { + _mesa_init_sampler_object(sampObj, name); + } + return sampObj; +} + + +/** + * Fallback for ctx->Driver.DeleteSamplerObject(); + */ +void +_mesa_delete_sampler_object(struct gl_context *ctx, + struct gl_sampler_object *sampObj) +{ + FREE(sampObj); +} + + +static void GLAPIENTRY +_mesa_GenSamplers(GLsizei count, GLuint *samplers) +{ + GET_CURRENT_CONTEXT(ctx); + GLuint first; + GLint i; + + ASSERT_OUTSIDE_BEGIN_END(ctx); + + if (MESA_VERBOSE & VERBOSE_API) + _mesa_debug(ctx, "glGenSamplers(%d)\n", count); + + if (count < 0) { + _mesa_error(ctx, GL_INVALID_VALUE, "glGenSamplers"); + return; + } + + if (!samplers) + return; + + first = _mesa_HashFindFreeKeyBlock(ctx->Shared->SamplerObjects, count); + + /* Insert the ID and pointer to new sampler object into hash table */ + for (i = 0; i < count; i++) { + struct gl_sampler_object *sampObj = + ctx->Driver.NewSamplerObject(ctx, first + i); + _mesa_HashInsert(ctx->Shared->SamplerObjects, first + i, sampObj); + samplers[i] = first + i; + } +} + + +static void GLAPIENTRY +_mesa_DeleteSamplers(GLsizei count, const GLuint *samplers) +{ + GET_CURRENT_CONTEXT(ctx); + GLsizei i; + + ASSERT_OUTSIDE_BEGIN_END(ctx); + FLUSH_VERTICES(ctx, 0); + + if (count < 0) { + _mesa_error(ctx, GL_INVALID_VALUE, "glDeleteSamplers(count)"); + return; + } + + _glthread_LOCK_MUTEX(ctx->Shared->Mutex); + + for (i = 0; i < count; i++) { + if (samplers[i]) { + struct gl_sampler_object *sampObj = + _mesa_lookup_samplerobj(ctx, samplers[i]); + if (sampObj) { + /* The ID is immediately freed for re-use */ + _mesa_HashRemove(ctx->Shared->SamplerObjects, samplers[i]); + /* But the object exists until its reference count goes to zero */ + _mesa_reference_sampler_object(ctx, &sampObj, NULL); + } + } + } + + _glthread_UNLOCK_MUTEX(ctx->Shared->Mutex); +} + + +static GLboolean GLAPIENTRY +_mesa_IsSampler(GLuint sampler) +{ + struct gl_sampler_object *sampObj; + GET_CURRENT_CONTEXT(ctx); + + ASSERT_OUTSIDE_BEGIN_END_WITH_RETVAL(ctx, GL_FALSE); + + if (sampler == 0) + return GL_FALSE; + + sampObj = _mesa_lookup_samplerobj(ctx, sampler); + + return sampObj != NULL; +} + + +static void GLAPIENTRY +_mesa_BindSampler(GLuint unit, GLuint sampler) +{ + struct gl_sampler_object *sampObj; + GET_CURRENT_CONTEXT(ctx); + + if (unit >= ctx->Const.MaxTextureImageUnits) { + _mesa_error(ctx, GL_INVALID_VALUE, "glBindSampler(unit %u)", unit); + return; + } + + if (sampler == 0) { + /* Use the default sampler object, the one contained in the texture + * object. + */ + sampObj = NULL; + } + else { + /* user-defined sampler object */ + sampObj = _mesa_lookup_samplerobj(ctx, sampler); + if (!sampObj) { + _mesa_error(ctx, GL_INVALID_OPERATION, "glBindSampler(sampler)"); + return; + } + } + + if (ctx->Texture.Unit[unit].Sampler != sampObj) { + FLUSH_VERTICES(ctx, _NEW_TEXTURE); + } + + /* bind new sampler */ + _mesa_reference_sampler_object(ctx, &ctx->Texture.Unit[unit].Sampler, + sampObj); +} + + +/** + * Check if a coordinate wrap mode is supported for the texture target. + * \return GL_TRUE if legal, GL_FALSE otherwise + */ +static GLboolean +validate_texture_wrap_mode(struct gl_context *ctx, GLenum wrap) +{ + const struct gl_extensions * const e = &ctx->Extensions; + + switch (wrap) { + case GL_CLAMP: + case GL_CLAMP_TO_EDGE: + case GL_REPEAT: + return GL_TRUE; + case GL_CLAMP_TO_BORDER: + return e->ARB_texture_border_clamp; + case GL_MIRRORED_REPEAT: + return e->ARB_texture_mirrored_repeat; + case GL_MIRROR_CLAMP_EXT: + return e->ATI_texture_mirror_once || e->EXT_texture_mirror_clamp; + case GL_MIRROR_CLAMP_TO_EDGE_EXT: + return e->ATI_texture_mirror_once || e->EXT_texture_mirror_clamp; + case GL_MIRROR_CLAMP_TO_BORDER_EXT: + return e->EXT_texture_mirror_clamp; + default: + return GL_FALSE; + } +} + + +/** + * This is called just prior to changing any sampler object state. + */ +static INLINE void +flush(struct gl_context *ctx) +{ + FLUSH_VERTICES(ctx, _NEW_TEXTURE); +} + + +#define INVALID_PARAM 0x100 +#define INVALID_PNAME 0x101 +#define INVALID_VALUE 0x102 + +static GLuint +set_sampler_wrap_s(struct gl_context *ctx, struct gl_sampler_object *samp, + GLint param) +{ + if (samp->WrapS == param) + return GL_FALSE; + if (validate_texture_wrap_mode(ctx, param)) { + flush(ctx); + samp->WrapS = param; + return GL_TRUE; + } + return INVALID_PARAM; +} + + +static GLuint +set_sampler_wrap_t(struct gl_context *ctx, struct gl_sampler_object *samp, + GLint param) +{ + if (samp->WrapT == param) + return GL_FALSE; + if (validate_texture_wrap_mode(ctx, param)) { + flush(ctx); + samp->WrapT = param; + return GL_TRUE; + } + return INVALID_PARAM; +} + + +static GLuint +set_sampler_wrap_r(struct gl_context *ctx, struct gl_sampler_object *samp, + GLint param) +{ + if (samp->WrapR == param) + return GL_FALSE; + if (validate_texture_wrap_mode(ctx, param)) { + flush(ctx); + samp->WrapR = param; + return GL_TRUE; + } + return INVALID_PARAM; +} + + +static GLuint +set_sampler_min_filter(struct gl_context *ctx, struct gl_sampler_object *samp, + GLint param) +{ + if (samp->MinFilter == param) + return GL_FALSE; + + switch (param) { + case GL_NEAREST: + case GL_LINEAR: + case GL_NEAREST_MIPMAP_NEAREST: + case GL_LINEAR_MIPMAP_NEAREST: + case GL_NEAREST_MIPMAP_LINEAR: + case GL_LINEAR_MIPMAP_LINEAR: + flush(ctx); + samp->MinFilter = param; + return GL_TRUE; + default: + return INVALID_PARAM; + } +} + + +static GLuint +set_sampler_mag_filter(struct gl_context *ctx, struct gl_sampler_object *samp, + GLint param) +{ + if (samp->MagFilter == param) + return GL_FALSE; + + switch (param) { + case GL_NEAREST: + case GL_LINEAR: + flush(ctx); + samp->MagFilter = param; + return GL_TRUE; + default: + return INVALID_PARAM; + } +} + + +static GLuint +set_sampler_lod_bias(struct gl_context *ctx, struct gl_sampler_object *samp, + GLfloat param) +{ + if (samp->LodBias == param) + return GL_FALSE; + + flush(ctx); + samp->LodBias = param; + return GL_TRUE; +} + + +static GLuint +set_sampler_border_colorf(struct gl_context *ctx, + struct gl_sampler_object *samp, + const GLfloat params[4]) +{ + flush(ctx); + samp->BorderColor.f[RCOMP] = params[0]; + samp->BorderColor.f[GCOMP] = params[1]; + samp->BorderColor.f[BCOMP] = params[2]; + samp->BorderColor.f[ACOMP] = params[3]; + return GL_TRUE; +} + + +static GLuint +set_sampler_border_colori(struct gl_context *ctx, + struct gl_sampler_object *samp, + const GLint params[4]) +{ + flush(ctx); + samp->BorderColor.i[RCOMP] = params[0]; + samp->BorderColor.i[GCOMP] = params[1]; + samp->BorderColor.i[BCOMP] = params[2]; + samp->BorderColor.i[ACOMP] = params[3]; + return GL_TRUE; +} + + +static GLuint +set_sampler_border_colorui(struct gl_context *ctx, + struct gl_sampler_object *samp, + const GLuint params[4]) +{ + flush(ctx); + samp->BorderColor.ui[RCOMP] = params[0]; + samp->BorderColor.ui[GCOMP] = params[1]; + samp->BorderColor.ui[BCOMP] = params[2]; + samp->BorderColor.ui[ACOMP] = params[3]; + return GL_TRUE; +} + + +static GLuint +set_sampler_min_lod(struct gl_context *ctx, struct gl_sampler_object *samp, + GLfloat param) +{ + if (samp->MinLod == param) + return GL_FALSE; + + flush(ctx); + samp->MinLod = param; + return GL_TRUE; +} + + +static GLuint +set_sampler_max_lod(struct gl_context *ctx, struct gl_sampler_object *samp, + GLint param) +{ + if (samp->MaxLod == param) + return GL_FALSE; + + flush(ctx); + samp->MaxLod = param; + return GL_TRUE; +} + + +static GLuint +set_sampler_compare_mode(struct gl_context *ctx, + struct gl_sampler_object *samp, GLint param) +{ + if (!ctx->Extensions.ARB_shadow) + return INVALID_PNAME; + + if (samp->CompareMode == param) + return GL_FALSE; + + if (param == GL_NONE || + param == GL_COMPARE_R_TO_TEXTURE_ARB) { + flush(ctx); + samp->CompareMode = param; + return GL_TRUE; + } + + return INVALID_PARAM; +} + + +static GLuint +set_sampler_compare_func(struct gl_context *ctx, + struct gl_sampler_object *samp, GLint param) +{ + if (!ctx->Extensions.ARB_shadow) + return INVALID_PNAME; + + if (samp->CompareFunc == param) + return GL_FALSE; + + switch (param) { + case GL_LEQUAL: + case GL_GEQUAL: + flush(ctx); + samp->CompareFunc = param; + return GL_TRUE; + case GL_EQUAL: + case GL_NOTEQUAL: + case GL_LESS: + case GL_GREATER: + case GL_ALWAYS: + case GL_NEVER: + if (ctx->Extensions.EXT_shadow_funcs) { + flush(ctx); + samp->CompareFunc = param; + return GL_TRUE; + } + /* fall-through */ + default: + return INVALID_PARAM; + } +} + + +static GLuint +set_sampler_max_anisotropy(struct gl_context *ctx, + struct gl_sampler_object *samp, GLfloat param) +{ + if (!ctx->Extensions.EXT_texture_filter_anisotropic) + return INVALID_PNAME; + + if (samp->MaxAnisotropy == param) + return GL_FALSE; + + if (param < 1.0) + return INVALID_VALUE; + + flush(ctx); + /* clamp to max, that's what NVIDIA does */ + samp->MaxAnisotropy = MIN2(param, ctx->Const.MaxTextureMaxAnisotropy); + return GL_TRUE; +} + + +static void GLAPIENTRY +_mesa_SamplerParameteri(GLuint sampler, GLenum pname, GLint param) +{ + struct gl_sampler_object *sampObj; + GLuint res; + GET_CURRENT_CONTEXT(ctx); + + sampObj = _mesa_lookup_samplerobj(ctx, sampler); + if (!sampObj) { + _mesa_error(ctx, GL_INVALID_VALUE, "glSamplerParameteri(sampler %u)", + sampler); + return; + } + + switch (pname) { + case GL_TEXTURE_WRAP_S: + res = set_sampler_wrap_s(ctx, sampObj, param); + break; + case GL_TEXTURE_WRAP_T: + res = set_sampler_wrap_t(ctx, sampObj, param); + break; + case GL_TEXTURE_WRAP_R: + res = set_sampler_wrap_r(ctx, sampObj, param); + break; + case GL_TEXTURE_MIN_FILTER: + res = set_sampler_min_filter(ctx, sampObj, param); + break; + case GL_TEXTURE_MAG_FILTER: + res = set_sampler_mag_filter(ctx, sampObj, param); + break; + case GL_TEXTURE_MIN_LOD: + res = set_sampler_min_lod(ctx, sampObj, (GLfloat) param); + break; + case GL_TEXTURE_MAX_LOD: + res = set_sampler_max_lod(ctx, sampObj, (GLfloat) param); + break; + case GL_TEXTURE_LOD_BIAS: + res = set_sampler_lod_bias(ctx, sampObj, (GLfloat) param); + break; + case GL_TEXTURE_COMPARE_MODE: + res = set_sampler_compare_mode(ctx, sampObj, param); + break; + case GL_TEXTURE_COMPARE_FUNC: + res = set_sampler_compare_func(ctx, sampObj, param); + break; + case GL_TEXTURE_MAX_ANISOTROPY_EXT: + res = set_sampler_max_anisotropy(ctx, sampObj, (GLfloat) param); + break; + case GL_TEXTURE_BORDER_COLOR: + /* fall-through */ + default: + res = INVALID_PNAME; + } + + switch (res) { + case GL_FALSE: + /* no change */ + break; + case GL_TRUE: + /* state change - we do nothing special at this time */ + break; + case INVALID_PNAME: + _mesa_error(ctx, GL_INVALID_ENUM, "glSamplerParameteri(pname=%s)\n", + _mesa_lookup_enum_by_nr(pname)); + break; + case INVALID_PARAM: + _mesa_error(ctx, GL_INVALID_ENUM, "glSamplerParameteri(param=%d)\n", + param); + break; + case INVALID_VALUE: + _mesa_error(ctx, GL_INVALID_VALUE, "glSamplerParameteri(param=%d)\n", + param); + break; + default: + ; + } +} + + +static void GLAPIENTRY +_mesa_SamplerParameterf(GLuint sampler, GLenum pname, GLfloat param) +{ + struct gl_sampler_object *sampObj; + GLuint res; + GET_CURRENT_CONTEXT(ctx); + + ASSERT_OUTSIDE_BEGIN_END(ctx); + + sampObj = _mesa_lookup_samplerobj(ctx, sampler); + if (!sampObj) { + _mesa_error(ctx, GL_INVALID_VALUE, "glSamplerParameterf(sampler %u)", + sampler); + return; + } + + switch (pname) { + case GL_TEXTURE_WRAP_S: + res = set_sampler_wrap_s(ctx, sampObj, (GLint) param); + break; + case GL_TEXTURE_WRAP_T: + res = set_sampler_wrap_t(ctx, sampObj, (GLint) param); + break; + case GL_TEXTURE_WRAP_R: + res = set_sampler_wrap_r(ctx, sampObj, (GLint) param); + break; + case GL_TEXTURE_MIN_FILTER: + res = set_sampler_min_filter(ctx, sampObj, (GLint) param); + break; + case GL_TEXTURE_MAG_FILTER: + res = set_sampler_mag_filter(ctx, sampObj, (GLint) param); + break; + case GL_TEXTURE_MIN_LOD: + res = set_sampler_min_lod(ctx, sampObj, param); + break; + case GL_TEXTURE_MAX_LOD: + res = set_sampler_max_lod(ctx, sampObj, param); + break; + case GL_TEXTURE_LOD_BIAS: + res = set_sampler_lod_bias(ctx, sampObj, param); + break; + case GL_TEXTURE_COMPARE_MODE: + res = set_sampler_compare_mode(ctx, sampObj, (GLint) param); + break; + case GL_TEXTURE_COMPARE_FUNC: + res = set_sampler_compare_func(ctx, sampObj, (GLint) param); + break; + case GL_TEXTURE_MAX_ANISOTROPY_EXT: + res = set_sampler_max_anisotropy(ctx, sampObj, param); + break; + case GL_TEXTURE_BORDER_COLOR: + /* fall-through */ + default: + res = INVALID_PNAME; + } + + switch (res) { + case GL_FALSE: + /* no change */ + break; + case GL_TRUE: + /* state change - we do nothing special at this time */ + break; + case INVALID_PNAME: + _mesa_error(ctx, GL_INVALID_ENUM, "glSamplerParameterf(pname=%s)\n", + _mesa_lookup_enum_by_nr(pname)); + break; + case INVALID_PARAM: + _mesa_error(ctx, GL_INVALID_ENUM, "glSamplerParameterf(param=%f)\n", + param); + break; + case INVALID_VALUE: + _mesa_error(ctx, GL_INVALID_VALUE, "glSamplerParameterf(param=%f)\n", + param); + break; + default: + ; + } +} + +static void GLAPIENTRY +_mesa_SamplerParameteriv(GLuint sampler, GLenum pname, const GLint *params) +{ + struct gl_sampler_object *sampObj; + GLuint res; + GET_CURRENT_CONTEXT(ctx); + + sampObj = _mesa_lookup_samplerobj(ctx, sampler); + if (!sampObj) { + _mesa_error(ctx, GL_INVALID_VALUE, "glSamplerParameteriv(sampler %u)", + sampler); + return; + } + + switch (pname) { + case GL_TEXTURE_WRAP_S: + res = set_sampler_wrap_s(ctx, sampObj, params[0]); + break; + case GL_TEXTURE_WRAP_T: + res = set_sampler_wrap_t(ctx, sampObj, params[0]); + break; + case GL_TEXTURE_WRAP_R: + res = set_sampler_wrap_r(ctx, sampObj, params[0]); + break; + case GL_TEXTURE_MIN_FILTER: + res = set_sampler_min_filter(ctx, sampObj, params[0]); + break; + case GL_TEXTURE_MAG_FILTER: + res = set_sampler_mag_filter(ctx, sampObj, params[0]); + break; + case GL_TEXTURE_MIN_LOD: + res = set_sampler_min_lod(ctx, sampObj, (GLfloat) params[0]); + break; + case GL_TEXTURE_MAX_LOD: + res = set_sampler_max_lod(ctx, sampObj, (GLfloat) params[0]); + break; + case GL_TEXTURE_LOD_BIAS: + res = set_sampler_lod_bias(ctx, sampObj, (GLfloat) params[0]); + break; + case GL_TEXTURE_COMPARE_MODE: + res = set_sampler_compare_mode(ctx, sampObj, params[0]); + break; + case GL_TEXTURE_COMPARE_FUNC: + res = set_sampler_compare_func(ctx, sampObj, params[0]); + break; + case GL_TEXTURE_MAX_ANISOTROPY_EXT: + res = set_sampler_max_anisotropy(ctx, sampObj, (GLfloat) params[0]); + break; + case GL_TEXTURE_BORDER_COLOR: + { + GLfloat c[4]; + c[0] = INT_TO_FLOAT(params[0]); + c[1] = INT_TO_FLOAT(params[1]); + c[2] = INT_TO_FLOAT(params[2]); + c[3] = INT_TO_FLOAT(params[3]); + res = set_sampler_border_colorf(ctx, sampObj, c); + } + break; + default: + res = INVALID_PNAME; + } + + switch (res) { + case GL_FALSE: + /* no change */ + break; + case GL_TRUE: + /* state change - we do nothing special at this time */ + break; + case INVALID_PNAME: + _mesa_error(ctx, GL_INVALID_ENUM, "glSamplerParameteriv(pname=%s)\n", + _mesa_lookup_enum_by_nr(pname)); + break; + case INVALID_PARAM: + _mesa_error(ctx, GL_INVALID_ENUM, "glSamplerParameteriv(param=%d)\n", + params[0]); + break; + case INVALID_VALUE: + _mesa_error(ctx, GL_INVALID_VALUE, "glSamplerParameteriv(param=%d)\n", + params[0]); + break; + default: + ; + } +} + +static void GLAPIENTRY +_mesa_SamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *params) +{ + struct gl_sampler_object *sampObj; + GLuint res; + GET_CURRENT_CONTEXT(ctx); + + ASSERT_OUTSIDE_BEGIN_END(ctx); + + sampObj = _mesa_lookup_samplerobj(ctx, sampler); + if (!sampObj) { + _mesa_error(ctx, GL_INVALID_VALUE, "glSamplerParameterfv(sampler %u)", + sampler); + return; + } + + switch (pname) { + case GL_TEXTURE_WRAP_S: + res = set_sampler_wrap_s(ctx, sampObj, (GLint) params[0]); + break; + case GL_TEXTURE_WRAP_T: + res = set_sampler_wrap_t(ctx, sampObj, (GLint) params[0]); + break; + case GL_TEXTURE_WRAP_R: + res = set_sampler_wrap_r(ctx, sampObj, (GLint) params[0]); + break; + case GL_TEXTURE_MIN_FILTER: + res = set_sampler_min_filter(ctx, sampObj, (GLint) params[0]); + break; + case GL_TEXTURE_MAG_FILTER: + res = set_sampler_mag_filter(ctx, sampObj, (GLint) params[0]); + break; + case GL_TEXTURE_MIN_LOD: + res = set_sampler_min_lod(ctx, sampObj, params[0]); + break; + case GL_TEXTURE_MAX_LOD: + res = set_sampler_max_lod(ctx, sampObj, params[0]); + break; + case GL_TEXTURE_LOD_BIAS: + res = set_sampler_lod_bias(ctx, sampObj, params[0]); + break; + case GL_TEXTURE_COMPARE_MODE: + res = set_sampler_compare_mode(ctx, sampObj, (GLint) params[0]); + break; + case GL_TEXTURE_COMPARE_FUNC: + res = set_sampler_compare_func(ctx, sampObj, (GLint) params[0]); + break; + case GL_TEXTURE_MAX_ANISOTROPY_EXT: + res = set_sampler_max_anisotropy(ctx, sampObj, params[0]); + break; + case GL_TEXTURE_BORDER_COLOR: + res = set_sampler_border_colorf(ctx, sampObj, params); + break; + default: + res = INVALID_PNAME; + } + + switch (res) { + case GL_FALSE: + /* no change */ + break; + case GL_TRUE: + /* state change - we do nothing special at this time */ + break; + case INVALID_PNAME: + _mesa_error(ctx, GL_INVALID_ENUM, "glSamplerParameterfv(pname=%s)\n", + _mesa_lookup_enum_by_nr(pname)); + break; + case INVALID_PARAM: + _mesa_error(ctx, GL_INVALID_ENUM, "glSamplerParameterfv(param=%f)\n", + params[0]); + break; + case INVALID_VALUE: + _mesa_error(ctx, GL_INVALID_VALUE, "glSamplerParameterfv(param=%f)\n", + params[0]); + break; + default: + ; + } +} + +static void GLAPIENTRY +_mesa_SamplerParameterIiv(GLuint sampler, GLenum pname, const GLint *params) +{ + struct gl_sampler_object *sampObj; + GLuint res; + GET_CURRENT_CONTEXT(ctx); + + sampObj = _mesa_lookup_samplerobj(ctx, sampler); + if (!sampObj) { + _mesa_error(ctx, GL_INVALID_VALUE, "glSamplerParameterIiv(sampler %u)", + sampler); + return; + } + + switch (pname) { + case GL_TEXTURE_WRAP_S: + res = set_sampler_wrap_s(ctx, sampObj, params[0]); + break; + case GL_TEXTURE_WRAP_T: + res = set_sampler_wrap_t(ctx, sampObj, params[0]); + break; + case GL_TEXTURE_WRAP_R: + res = set_sampler_wrap_r(ctx, sampObj, params[0]); + break; + case GL_TEXTURE_MIN_FILTER: + res = set_sampler_min_filter(ctx, sampObj, params[0]); + break; + case GL_TEXTURE_MAG_FILTER: + res = set_sampler_mag_filter(ctx, sampObj, params[0]); + break; + case GL_TEXTURE_MIN_LOD: + res = set_sampler_min_lod(ctx, sampObj, (GLfloat) params[0]); + break; + case GL_TEXTURE_MAX_LOD: + res = set_sampler_max_lod(ctx, sampObj, (GLfloat) params[0]); + break; + case GL_TEXTURE_LOD_BIAS: + res = set_sampler_lod_bias(ctx, sampObj, (GLfloat) params[0]); + break; + case GL_TEXTURE_COMPARE_MODE: + res = set_sampler_compare_mode(ctx, sampObj, params[0]); + break; + case GL_TEXTURE_COMPARE_FUNC: + res = set_sampler_compare_func(ctx, sampObj, params[0]); + break; + case GL_TEXTURE_MAX_ANISOTROPY_EXT: + res = set_sampler_max_anisotropy(ctx, sampObj, (GLfloat) params[0]); + break; + case GL_TEXTURE_BORDER_COLOR: + res = set_sampler_border_colori(ctx, sampObj, params); + break; + default: + res = INVALID_PNAME; + } + + switch (res) { + case GL_FALSE: + /* no change */ + break; + case GL_TRUE: + /* state change - we do nothing special at this time */ + break; + case INVALID_PNAME: + _mesa_error(ctx, GL_INVALID_ENUM, "glSamplerParameterIiv(pname=%s)\n", + _mesa_lookup_enum_by_nr(pname)); + break; + case INVALID_PARAM: + _mesa_error(ctx, GL_INVALID_ENUM, "glSamplerParameterIiv(param=%d)\n", + params[0]); + break; + case INVALID_VALUE: + _mesa_error(ctx, GL_INVALID_VALUE, "glSamplerParameterIiv(param=%d)\n", + params[0]); + break; + default: + ; + } +} + + +static void GLAPIENTRY +_mesa_SamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint *params) +{ + struct gl_sampler_object *sampObj; + GLuint res; + GET_CURRENT_CONTEXT(ctx); + + sampObj = _mesa_lookup_samplerobj(ctx, sampler); + if (!sampObj) { + _mesa_error(ctx, GL_INVALID_VALUE, "glSamplerParameterIuiv(sampler %u)", + sampler); + return; + } + + switch (pname) { + case GL_TEXTURE_WRAP_S: + res = set_sampler_wrap_s(ctx, sampObj, params[0]); + break; + case GL_TEXTURE_WRAP_T: + res = set_sampler_wrap_t(ctx, sampObj, params[0]); + break; + case GL_TEXTURE_WRAP_R: + res = set_sampler_wrap_r(ctx, sampObj, params[0]); + break; + case GL_TEXTURE_MIN_FILTER: + res = set_sampler_min_filter(ctx, sampObj, params[0]); + break; + case GL_TEXTURE_MAG_FILTER: + res = set_sampler_mag_filter(ctx, sampObj, params[0]); + break; + case GL_TEXTURE_MIN_LOD: + res = set_sampler_min_lod(ctx, sampObj, (GLfloat) params[0]); + break; + case GL_TEXTURE_MAX_LOD: + res = set_sampler_max_lod(ctx, sampObj, (GLfloat) params[0]); + break; + case GL_TEXTURE_LOD_BIAS: + res = set_sampler_lod_bias(ctx, sampObj, (GLfloat) params[0]); + break; + case GL_TEXTURE_COMPARE_MODE: + res = set_sampler_compare_mode(ctx, sampObj, params[0]); + break; + case GL_TEXTURE_COMPARE_FUNC: + res = set_sampler_compare_func(ctx, sampObj, params[0]); + break; + case GL_TEXTURE_MAX_ANISOTROPY_EXT: + res = set_sampler_max_anisotropy(ctx, sampObj, (GLfloat) params[0]); + break; + case GL_TEXTURE_BORDER_COLOR: + res = set_sampler_border_colorui(ctx, sampObj, params); + break; + default: + res = INVALID_PNAME; + } + + switch (res) { + case GL_FALSE: + /* no change */ + break; + case GL_TRUE: + /* state change - we do nothing special at this time */ + break; + case INVALID_PNAME: + _mesa_error(ctx, GL_INVALID_ENUM, "glSamplerParameterIuiv(pname=%s)\n", + _mesa_lookup_enum_by_nr(pname)); + break; + case INVALID_PARAM: + _mesa_error(ctx, GL_INVALID_ENUM, "glSamplerParameterIuiv(param=%u)\n", + params[0]); + break; + case INVALID_VALUE: + _mesa_error(ctx, GL_INVALID_VALUE, "glSamplerParameterIuiv(param=%u)\n", + params[0]); + break; + default: + ; + } +} + + +static void GLAPIENTRY +_mesa_GetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params) +{ + struct gl_sampler_object *sampObj; + GET_CURRENT_CONTEXT(ctx); + + sampObj = _mesa_lookup_samplerobj(ctx, sampler); + if (!sampObj) { + _mesa_error(ctx, GL_INVALID_VALUE, "glGetSamplerParameteriv(sampler %u)", + sampler); + return; + } + + switch (pname) { + case GL_TEXTURE_WRAP_S: + *params = sampObj->WrapS; + break; + case GL_TEXTURE_WRAP_T: + *params = sampObj->WrapT; + break; + case GL_TEXTURE_WRAP_R: + *params = sampObj->WrapR; + break; + case GL_TEXTURE_MIN_FILTER: + *params = sampObj->MinFilter; + break; + case GL_TEXTURE_MAG_FILTER: + *params = sampObj->MagFilter; + break; + case GL_TEXTURE_MIN_LOD: + *params = (GLint) sampObj->MinLod; + break; + case GL_TEXTURE_MAX_LOD: + *params = (GLint) sampObj->MaxLod; + break; + case GL_TEXTURE_LOD_BIAS: + *params = (GLint) sampObj->LodBias; + break; + case GL_TEXTURE_COMPARE_MODE: + if (!ctx->Extensions.ARB_shadow) + goto invalid_pname; + *params = sampObj->CompareMode; + break; + case GL_TEXTURE_COMPARE_FUNC: + if (!ctx->Extensions.ARB_shadow) + goto invalid_pname; + *params = sampObj->CompareFunc; + break; + case GL_TEXTURE_MAX_ANISOTROPY_EXT: + *params = (GLint) sampObj->MaxAnisotropy; + break; + case GL_TEXTURE_BORDER_COLOR: + params[0] = FLOAT_TO_INT(sampObj->BorderColor.f[0]); + params[1] = FLOAT_TO_INT(sampObj->BorderColor.f[1]); + params[2] = FLOAT_TO_INT(sampObj->BorderColor.f[2]); + params[3] = FLOAT_TO_INT(sampObj->BorderColor.f[3]); + break; + default: + goto invalid_pname; + } + return; + +invalid_pname: + _mesa_error(ctx, GL_INVALID_ENUM, "glGetSamplerParameteriv(pname=%s)", + _mesa_lookup_enum_by_nr(pname)); +} + + +static void GLAPIENTRY +_mesa_GetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params) +{ + struct gl_sampler_object *sampObj; + GET_CURRENT_CONTEXT(ctx); + + sampObj = _mesa_lookup_samplerobj(ctx, sampler); + if (!sampObj) { + _mesa_error(ctx, GL_INVALID_VALUE, "glGetSamplerParameterfv(sampler %u)", + sampler); + return; + } + + switch (pname) { + case GL_TEXTURE_WRAP_S: + *params = (GLfloat) sampObj->WrapS; + break; + case GL_TEXTURE_WRAP_T: + *params = (GLfloat) sampObj->WrapT; + break; + case GL_TEXTURE_WRAP_R: + *params = (GLfloat) sampObj->WrapR; + break; + case GL_TEXTURE_MIN_FILTER: + *params = (GLfloat) sampObj->MinFilter; + break; + case GL_TEXTURE_MAG_FILTER: + *params = (GLfloat) sampObj->MagFilter; + break; + case GL_TEXTURE_MIN_LOD: + *params = sampObj->MinLod; + break; + case GL_TEXTURE_MAX_LOD: + *params = sampObj->MaxLod; + break; + case GL_TEXTURE_LOD_BIAS: + *params = sampObj->LodBias; + break; + case GL_TEXTURE_COMPARE_MODE: + if (!ctx->Extensions.ARB_shadow) + goto invalid_pname; + *params = (GLfloat) sampObj->CompareMode; + break; + case GL_TEXTURE_COMPARE_FUNC: + if (!ctx->Extensions.ARB_shadow) + goto invalid_pname; + *params = (GLfloat) sampObj->CompareFunc; + break; + case GL_TEXTURE_MAX_ANISOTROPY_EXT: + *params = sampObj->MaxAnisotropy; + break; + case GL_TEXTURE_BORDER_COLOR: + params[0] = sampObj->BorderColor.f[0]; + params[1] = sampObj->BorderColor.f[1]; + params[2] = sampObj->BorderColor.f[2]; + params[3] = sampObj->BorderColor.f[3]; + break; + default: + goto invalid_pname; + } + return; + +invalid_pname: + _mesa_error(ctx, GL_INVALID_ENUM, "glGetSamplerParameterfv(pname=%s)", + _mesa_lookup_enum_by_nr(pname)); +} + + +static void GLAPIENTRY +_mesa_GetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint *params) +{ + struct gl_sampler_object *sampObj; + GET_CURRENT_CONTEXT(ctx); + + sampObj = _mesa_lookup_samplerobj(ctx, sampler); + if (!sampObj) { + _mesa_error(ctx, GL_INVALID_VALUE, + "glGetSamplerParameterIiv(sampler %u)", + sampler); + return; + } + + switch (pname) { + case GL_TEXTURE_WRAP_S: + *params = sampObj->WrapS; + break; + case GL_TEXTURE_WRAP_T: + *params = sampObj->WrapT; + break; + case GL_TEXTURE_WRAP_R: + *params = sampObj->WrapR; + break; + case GL_TEXTURE_MIN_FILTER: + *params = sampObj->MinFilter; + break; + case GL_TEXTURE_MAG_FILTER: + *params = sampObj->MagFilter; + break; + case GL_TEXTURE_MIN_LOD: + *params = (GLint) sampObj->MinLod; + break; + case GL_TEXTURE_MAX_LOD: + *params = (GLint) sampObj->MaxLod; + break; + case GL_TEXTURE_LOD_BIAS: + *params = (GLint) sampObj->LodBias; + break; + case GL_TEXTURE_COMPARE_MODE: + if (!ctx->Extensions.ARB_shadow) + goto invalid_pname; + *params = sampObj->CompareMode; + break; + case GL_TEXTURE_COMPARE_FUNC: + if (!ctx->Extensions.ARB_shadow) + goto invalid_pname; + *params = sampObj->CompareFunc; + break; + case GL_TEXTURE_MAX_ANISOTROPY_EXT: + *params = (GLint) sampObj->MaxAnisotropy; + break; + case GL_TEXTURE_BORDER_COLOR: + params[0] = sampObj->BorderColor.i[0]; + params[1] = sampObj->BorderColor.i[1]; + params[2] = sampObj->BorderColor.i[2]; + params[3] = sampObj->BorderColor.i[3]; + break; + default: + goto invalid_pname; + } + return; + +invalid_pname: + _mesa_error(ctx, GL_INVALID_ENUM, "glGetSamplerParameterIiv(pname=%s)", + _mesa_lookup_enum_by_nr(pname)); +} + + +static void GLAPIENTRY +_mesa_GetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint *params) +{ + struct gl_sampler_object *sampObj; + GET_CURRENT_CONTEXT(ctx); + + sampObj = _mesa_lookup_samplerobj(ctx, sampler); + if (!sampObj) { + _mesa_error(ctx, GL_INVALID_VALUE, + "glGetSamplerParameterIuiv(sampler %u)", + sampler); + return; + } + + switch (pname) { + case GL_TEXTURE_WRAP_S: + *params = sampObj->WrapS; + break; + case GL_TEXTURE_WRAP_T: + *params = sampObj->WrapT; + break; + case GL_TEXTURE_WRAP_R: + *params = sampObj->WrapR; + break; + case GL_TEXTURE_MIN_FILTER: + *params = sampObj->MinFilter; + break; + case GL_TEXTURE_MAG_FILTER: + *params = sampObj->MagFilter; + break; + case GL_TEXTURE_MIN_LOD: + *params = (GLuint) sampObj->MinLod; + break; + case GL_TEXTURE_MAX_LOD: + *params = (GLuint) sampObj->MaxLod; + break; + case GL_TEXTURE_LOD_BIAS: + *params = (GLuint) sampObj->LodBias; + break; + case GL_TEXTURE_COMPARE_MODE: + if (!ctx->Extensions.ARB_shadow) + goto invalid_pname; + *params = sampObj->CompareMode; + break; + case GL_TEXTURE_COMPARE_FUNC: + if (!ctx->Extensions.ARB_shadow) + goto invalid_pname; + *params = sampObj->CompareFunc; + break; + case GL_TEXTURE_MAX_ANISOTROPY_EXT: + *params = (GLuint) sampObj->MaxAnisotropy; + break; + case GL_TEXTURE_BORDER_COLOR: + params[0] = sampObj->BorderColor.ui[0]; + params[1] = sampObj->BorderColor.ui[1]; + params[2] = sampObj->BorderColor.ui[2]; + params[3] = sampObj->BorderColor.ui[3]; + break; + default: + goto invalid_pname; + } + return; + +invalid_pname: + _mesa_error(ctx, GL_INVALID_ENUM, "glGetSamplerParameterIuiv(pname=%s)", + _mesa_lookup_enum_by_nr(pname)); +} + + +void +_mesa_init_sampler_object_functions(struct dd_function_table *driver) +{ + driver->NewSamplerObject = _mesa_new_sampler_object; + driver->DeleteSamplerObject = _mesa_delete_sampler_object; +} + + +void +_mesa_init_sampler_object_dispatch(struct _glapi_table *disp) +{ + SET_GenSamplers(disp, _mesa_GenSamplers); + SET_DeleteSamplers(disp, _mesa_DeleteSamplers); + SET_IsSampler(disp, _mesa_IsSampler); + SET_BindSampler(disp, _mesa_BindSampler); + SET_SamplerParameteri(disp, _mesa_SamplerParameteri); + SET_SamplerParameterf(disp, _mesa_SamplerParameterf); + SET_SamplerParameteriv(disp, _mesa_SamplerParameteriv); + SET_SamplerParameterfv(disp, _mesa_SamplerParameterfv); + SET_SamplerParameterIiv(disp, _mesa_SamplerParameterIiv); + SET_SamplerParameterIuiv(disp, _mesa_SamplerParameterIuiv); + SET_GetSamplerParameteriv(disp, _mesa_GetSamplerParameteriv); + SET_GetSamplerParameterfv(disp, _mesa_GetSamplerParameterfv); + SET_GetSamplerParameterIiv(disp, _mesa_GetSamplerParameterIiv); + SET_GetSamplerParameterIuiv(disp, _mesa_GetSamplerParameterIuiv); +} diff --git a/src/mesa/main/samplerobj.h b/src/mesa/main/samplerobj.h new file mode 100644 index 00000000000..ed495c3760b --- /dev/null +++ b/src/mesa/main/samplerobj.h @@ -0,0 +1,54 @@ +/* + * 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 + * 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 SAMPLEROBJ_H +#define SAMPLEROBJ_H + +struct dd_function_table; + + +extern void +_mesa_reference_sampler_object(struct gl_context *ctx, + struct gl_sampler_object **ptr, + struct gl_sampler_object *samp); + +extern void +_mesa_init_sampler_object(struct gl_sampler_object *sampObj, GLuint name); + +extern struct gl_sampler_object * +_mesa_new_sampler_object(struct gl_context *ctx, GLuint name); + +extern void +_mesa_delete_sampler_object(struct gl_context *ctx, + struct gl_sampler_object *sampObj); + +extern void +_mesa_init_sampler_object_functions(struct dd_function_table *driver); + +extern void +_mesa_init_sampler_object_dispatch(struct _glapi_table *disp); + + +#endif /* SAMPLEROBJ_H */ From 34a5d3b9f4740601708c82093e2114356d749e65 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Sun, 10 Apr 2011 12:48:28 -0600 Subject: [PATCH 232/420] mesa: plug in new functions for GL_ARB_sampler_objects Build the new sources, plug the new functions into the dispatch table, implement display list support. And enable extension in the gallium state tracker. --- src/mesa/SConscript | 1 + src/mesa/main/api_exec.c | 7 +++++++ src/mesa/main/dlist.c | 29 ++++++++++++++++++++++++++ src/mesa/main/mfeatures.h | 1 + src/mesa/sources.mak | 1 + src/mesa/state_tracker/st_context.c | 2 ++ src/mesa/state_tracker/st_extensions.c | 1 + 7 files changed, 42 insertions(+) diff --git a/src/mesa/SConscript b/src/mesa/SConscript index f98f7df7407..39388c8e493 100644 --- a/src/mesa/SConscript +++ b/src/mesa/SConscript @@ -100,6 +100,7 @@ main_sources = [ 'main/readpix.c', 'main/remap.c', 'main/renderbuffer.c', + 'main/samplerobj.c', 'main/scissor.c', 'main/shaderapi.c', 'main/shaderobj.c', diff --git a/src/mesa/main/api_exec.c b/src/mesa/main/api_exec.c index 91cdea5bb98..d0298df20cb 100644 --- a/src/mesa/main/api_exec.c +++ b/src/mesa/main/api_exec.c @@ -78,6 +78,9 @@ #include "polygon.h" #include "queryobj.h" #include "readpix.h" +#if FEATURE_ARB_sampler_objects +#include "samplerobj.h" +#endif #include "scissor.h" #include "stencil.h" #include "texenv.h" @@ -729,6 +732,10 @@ _mesa_create_exec_table(void) /* GL_ARB_texture_buffer_object */ SET_TexBufferARB(exec, _mesa_TexBuffer); +#if FEATURE_ARB_sampler_objects + _mesa_init_sampler_object_dispatch(exec); +#endif + return exec; } diff --git a/src/mesa/main/dlist.c b/src/mesa/main/dlist.c index 7e86f1d0ed0..f66082e7fce 100644 --- a/src/mesa/main/dlist.c +++ b/src/mesa/main/dlist.c @@ -49,6 +49,7 @@ #include "eval.h" #include "framebuffer.h" #include "glapi/glapi.h" +#include "glapidispatch.h" #include "hash.h" #include "image.h" #include "light.h" @@ -437,6 +438,9 @@ typedef enum /* GL_NV_texture_barrier */ OPCODE_TEXTURE_BARRIER_NV, + /* GL_ARB_sampler_object */ + OPCODE_BIND_SAMPLER, + /* The following three are meta instructions */ OPCODE_ERROR, /* raise compiled-in error */ OPCODE_CONTINUE, @@ -7066,6 +7070,24 @@ save_TextureBarrierNV(void) } +/* GL_ARB_sampler_objects */ +static void +save_BindSampler(GLuint unit, GLuint sampler) +{ + Node *n; + GET_CURRENT_CONTEXT(ctx); + ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx); + n = alloc_instruction(ctx, OPCODE_BIND_SAMPLER, 2); + if (n) { + n[1].ui = unit; + n[2].ui = sampler; + } + if (ctx->ExecuteFlag) { + CALL_BindSampler(ctx->Exec, (unit, sampler)); + } +} + + /** * Save an error-generating command into display list. * @@ -8249,6 +8271,10 @@ execute_list(struct gl_context *ctx, GLuint list) CALL_TextureBarrierNV(ctx->Exec, ()); break; + case OPCODE_BIND_SAMPLER: + CALL_BindSampler(ctx->Exec, (n[1].ui, n[2].ui)); + break; + case OPCODE_CONTINUE: n = (Node *) n[1].next; break; @@ -9930,6 +9956,9 @@ _mesa_create_save_table(void) /* GL_NV_texture_barrier */ SET_TextureBarrierNV(table, save_TextureBarrierNV); + /* GL_ARB_sampler_objects */ + SET_BindSampler(table, save_BindSampler); + /* GL_ARB_draw_buffer_blend */ SET_BlendFunciARB(table, save_BlendFunci); SET_BlendFuncSeparateiARB(table, save_BlendFuncSeparatei); diff --git a/src/mesa/main/mfeatures.h b/src/mesa/main/mfeatures.h index 1b39f5fdd36..33db5081419 100644 --- a/src/mesa/main/mfeatures.h +++ b/src/mesa/main/mfeatures.h @@ -122,6 +122,7 @@ #define FEATURE_ARB_framebuffer_object (FEATURE_GL && FEATURE_EXT_framebuffer_object) #define FEATURE_ARB_map_buffer_range FEATURE_GL #define FEATURE_ARB_pixel_buffer_object (FEATURE_GL && FEATURE_EXT_pixel_buffer_object) +#define FEATURE_ARB_sampler_objects FEATURE_GL #define FEATURE_ARB_sync FEATURE_GL #define FEATURE_ARB_vertex_buffer_object 1 diff --git a/src/mesa/sources.mak b/src/mesa/sources.mak index fcf8ab2e794..9b2cb1a3c14 100644 --- a/src/mesa/sources.mak +++ b/src/mesa/sources.mak @@ -71,6 +71,7 @@ MAIN_SOURCES = \ main/readpix.c \ main/remap.c \ main/renderbuffer.c \ + main/samplerobj.c \ main/scissor.c \ main/shaderapi.c \ main/shaderobj.c \ diff --git a/src/mesa/state_tracker/st_context.c b/src/mesa/state_tracker/st_context.c index a9461899ad5..ce78956e359 100644 --- a/src/mesa/state_tracker/st_context.c +++ b/src/mesa/state_tracker/st_context.c @@ -27,6 +27,7 @@ #include "main/imports.h" #include "main/context.h" +#include "main/samplerobj.h" #include "main/shaderobj.h" #include "program/prog_cache.h" #include "vbo/vbo.h" @@ -269,6 +270,7 @@ void st_destroy_context( struct st_context *st ) void st_init_driver_functions(struct dd_function_table *functions) { _mesa_init_shader_object_functions(functions); + _mesa_init_sampler_object_functions(functions); st_init_accum_functions(functions); st_init_blit_functions(functions); diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c index e3277904417..9bc9d7a10f5 100644 --- a/src/mesa/state_tracker/st_extensions.c +++ b/src/mesa/state_tracker/st_extensions.c @@ -228,6 +228,7 @@ void st_init_extensions(struct st_context *st) ctx->Extensions.ARB_half_float_pixel = GL_TRUE; ctx->Extensions.ARB_map_buffer_range = GL_TRUE; ctx->Extensions.ARB_multisample = GL_TRUE; + ctx->Extensions.ARB_sampler_objects = GL_TRUE; ctx->Extensions.ARB_texture_border_clamp = GL_TRUE; /* XXX temp */ ctx->Extensions.ARB_texture_compression = GL_TRUE; ctx->Extensions.ARB_texture_cube_map = GL_TRUE; From da8d0c965cc71058b570b7e34ba9c03639173da7 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Sun, 10 Apr 2011 13:06:27 -0600 Subject: [PATCH 233/420] docs: GL_ARB_sampler_objects updates --- docs/GL3.txt | 2 +- docs/relnotes-7.11.html | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/GL3.txt b/docs/GL3.txt index c704699f0b1..339a0cbdff1 100644 --- a/docs/GL3.txt +++ b/docs/GL3.txt @@ -77,7 +77,7 @@ GLSL 3.30 not started GL_ARB_blend_func_extended not started GL_ARB_explicit_attrib_location DONE (swrast, i915, i965) GL_ARB_occlusion_query2 DONE (swrast, gallium) -GL_ARB_sampler_objects not started +GL_ARB_sampler_objects DONE (gallium) GL_ARB_texture_rgb10_a2ui not started GL_ARB_texture_swizzle DONE (same as EXT version) GL_ARB_timer_query DONE (only Xlib sw driver) diff --git a/docs/relnotes-7.11.html b/docs/relnotes-7.11.html index 277339bc4ce..c8d380e3b8c 100644 --- a/docs/relnotes-7.11.html +++ b/docs/relnotes-7.11.html @@ -41,6 +41,7 @@ tbd
  • GL_ARB_texture_compression_rgtc (gallium r600, swrast)
  • GL_ARB_draw_buffers_blend (gallium)
  • GL_EXT_texture_sRGB_decode (gallium drivers, swrast, i965) +
  • GL_ARB_sampler_objects (gallium drivers) From 5c477ab2de9fb2ad3b0e4ae53f5930f1288cb90e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Mon, 11 Apr 2011 14:37:58 +0200 Subject: [PATCH 234/420] r600g: handle PIPE_CAP_FRAGMENT_COLOR_CLAMP_CONTROL in get_param --- src/gallium/drivers/r600/r600_pipe.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/gallium/drivers/r600/r600_pipe.c b/src/gallium/drivers/r600/r600_pipe.c index 2c2245b67a8..5f95540a479 100644 --- a/src/gallium/drivers/r600/r600_pipe.c +++ b/src/gallium/drivers/r600/r600_pipe.c @@ -385,6 +385,7 @@ static int r600_get_param(struct pipe_screen* pscreen, enum pipe_cap param) case PIPE_CAP_STREAM_OUTPUT: case PIPE_CAP_PRIMITIVE_RESTART: case PIPE_CAP_INDEP_BLEND_FUNC: /* FIXME allow this */ + case PIPE_CAP_FRAGMENT_COLOR_CLAMP_CONTROL: /* R600 doesn't support per-MRT blends */ if (family == CHIP_R600) return 0; From 45920d2ecb38b14fdda5253fecce996570c22863 Mon Sep 17 00:00:00 2001 From: pepp Date: Mon, 11 Apr 2011 17:16:45 +0200 Subject: [PATCH 235/420] u_vbuf_mgr: fixed vbo max_index calculation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Marek Olšák --- src/gallium/auxiliary/util/u_vbuf_mgr.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gallium/auxiliary/util/u_vbuf_mgr.c b/src/gallium/auxiliary/util/u_vbuf_mgr.c index b2eaff851ac..dea2928f950 100644 --- a/src/gallium/auxiliary/util/u_vbuf_mgr.c +++ b/src/gallium/auxiliary/util/u_vbuf_mgr.c @@ -499,7 +499,7 @@ void u_vbuf_mgr_set_vertex_buffers(struct u_vbuf_mgr *mgrb, /* Update the maximum index. */ mgr->b.max_index = MIN2(mgr->b.max_index, - (vb->buffer->width0 - vb->buffer_offset) / vb->stride); + (vb->buffer->width0 - vb->buffer_offset) / vb->stride - 1); } for (; i < mgr->b.nr_real_vertex_buffers; i++) { From aaf188e3bbe29826f0fea8944243a416946e7343 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 9 Mar 2011 10:51:52 -0800 Subject: [PATCH 236/420] i965: Turn SF unit and viewport structs into pointers to prep for streaming. I wanted to separate this mechanical change from the actual work. --- src/mesa/drivers/dri/i965/brw_sf_state.c | 139 ++++++++++++----------- 1 file changed, 70 insertions(+), 69 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_sf_state.c b/src/mesa/drivers/dri/i965/brw_sf_state.c index bd3a21ed9e2..560d51f2c6b 100644 --- a/src/mesa/drivers/dri/i965/brw_sf_state.c +++ b/src/mesa/drivers/dri/i965/brw_sf_state.c @@ -40,12 +40,12 @@ static void upload_sf_vp(struct brw_context *brw) { struct gl_context *ctx = &brw->intel.ctx; const GLfloat depth_scale = 1.0F / ctx->DrawBuffer->_DepthMaxF; - struct brw_sf_viewport sfv; + struct brw_sf_viewport sfv_stack, *sfv = &sfv_stack; GLfloat y_scale, y_bias; const GLboolean render_to_fbo = (ctx->DrawBuffer->Name != 0); const GLfloat *v = ctx->Viewport._WindowMap.m; - memset(&sfv, 0, sizeof(sfv)); + memset(sfv, 0, sizeof(*sfv)); if (render_to_fbo) { y_scale = 1.0; @@ -58,12 +58,12 @@ static void upload_sf_vp(struct brw_context *brw) /* _NEW_VIEWPORT */ - sfv.viewport.m00 = v[MAT_SX]; - sfv.viewport.m11 = v[MAT_SY] * y_scale; - sfv.viewport.m22 = v[MAT_SZ] * depth_scale; - sfv.viewport.m30 = v[MAT_TX]; - sfv.viewport.m31 = v[MAT_TY] * y_scale + y_bias; - sfv.viewport.m32 = v[MAT_TZ] * depth_scale; + sfv->viewport.m00 = v[MAT_SX]; + sfv->viewport.m11 = v[MAT_SY] * y_scale; + sfv->viewport.m22 = v[MAT_SZ] * depth_scale; + sfv->viewport.m30 = v[MAT_TX]; + sfv->viewport.m31 = v[MAT_TY] * y_scale + y_bias; + sfv->viewport.m32 = v[MAT_TZ] * depth_scale; /* _NEW_SCISSOR | _NEW_BUFFERS | _NEW_VIEWPORT * for DrawBuffer->_[XY]{min,max} @@ -85,27 +85,27 @@ static void upload_sf_vp(struct brw_context *brw) * anything. Instead, just provide a min > max scissor inside * the bounds, which produces the expected no rendering. */ - sfv.scissor.xmin = 1; - sfv.scissor.xmax = 0; - sfv.scissor.ymin = 1; - sfv.scissor.ymax = 0; + sfv->scissor.xmin = 1; + sfv->scissor.xmax = 0; + sfv->scissor.ymin = 1; + sfv->scissor.ymax = 0; } else if (render_to_fbo) { /* texmemory: Y=0=bottom */ - sfv.scissor.xmin = ctx->DrawBuffer->_Xmin; - sfv.scissor.xmax = ctx->DrawBuffer->_Xmax - 1; - sfv.scissor.ymin = ctx->DrawBuffer->_Ymin; - sfv.scissor.ymax = ctx->DrawBuffer->_Ymax - 1; + sfv->scissor.xmin = ctx->DrawBuffer->_Xmin; + sfv->scissor.xmax = ctx->DrawBuffer->_Xmax - 1; + sfv->scissor.ymin = ctx->DrawBuffer->_Ymin; + sfv->scissor.ymax = ctx->DrawBuffer->_Ymax - 1; } else { /* memory: Y=0=top */ - sfv.scissor.xmin = ctx->DrawBuffer->_Xmin; - sfv.scissor.xmax = ctx->DrawBuffer->_Xmax - 1; - sfv.scissor.ymin = ctx->DrawBuffer->Height - ctx->DrawBuffer->_Ymax; - sfv.scissor.ymax = ctx->DrawBuffer->Height - ctx->DrawBuffer->_Ymin - 1; + sfv->scissor.xmin = ctx->DrawBuffer->_Xmin; + sfv->scissor.xmax = ctx->DrawBuffer->_Xmax - 1; + sfv->scissor.ymin = ctx->DrawBuffer->Height - ctx->DrawBuffer->_Ymax; + sfv->scissor.ymax = ctx->DrawBuffer->Height - ctx->DrawBuffer->_Ymin - 1; } drm_intel_bo_unreference(brw->sf.vp_bo); - brw->sf.vp_bo = brw_cache_data(&brw->cache, BRW_SF_VP, &sfv, sizeof(sfv)); + brw->sf.vp_bo = brw_cache_data(&brw->cache, BRW_SF_VP, sfv, sizeof(*sfv)); } const struct brw_tracked_state brw_sf_vp = { @@ -178,27 +178,28 @@ sf_unit_create_from_key(struct brw_context *brw, struct brw_sf_unit_key *key, drm_intel_bo **reloc_bufs) { struct intel_context *intel = &brw->intel; - struct brw_sf_unit_state sf; + struct brw_sf_unit_state sf_stack, *sf = &sf_stack; drm_intel_bo *bo; int chipset_max_threads; - memset(&sf, 0, sizeof(sf)); - sf.thread0.grf_reg_count = ALIGN(key->total_grf, 16) / 16 - 1; - sf.thread0.kernel_start_pointer = brw->sf.prog_bo->offset >> 6; /* reloc */ + memset(sf, 0, sizeof(*sf)); - sf.thread1.floating_point_mode = BRW_FLOATING_POINT_NON_IEEE_754; + sf->thread0.grf_reg_count = ALIGN(key->total_grf, 16) / 16 - 1; + sf->thread0.kernel_start_pointer = brw->sf.prog_bo->offset >> 6; /* reloc */ - sf.thread3.dispatch_grf_start_reg = 3; + sf->thread1.floating_point_mode = BRW_FLOATING_POINT_NON_IEEE_754; + + sf->thread3.dispatch_grf_start_reg = 3; if (intel->gen == 5) - sf.thread3.urb_entry_read_offset = 3; + sf->thread3.urb_entry_read_offset = 3; else - sf.thread3.urb_entry_read_offset = 1; + sf->thread3.urb_entry_read_offset = 1; - sf.thread3.urb_entry_read_length = key->urb_entry_read_length; + sf->thread3.urb_entry_read_length = key->urb_entry_read_length; - sf.thread4.nr_urb_entries = key->nr_urb_entries; - sf.thread4.urb_entry_allocation_size = key->sfsize - 1; + sf->thread4.nr_urb_entries = key->nr_urb_entries; + sf->thread4.urb_entry_allocation_size = key->sfsize - 1; /* Each SF thread produces 1 PUE, and there can be up to 24 (Pre-Ironlake) or * 48 (Ironlake) threads. @@ -208,46 +209,46 @@ sf_unit_create_from_key(struct brw_context *brw, struct brw_sf_unit_key *key, else chipset_max_threads = 24; - sf.thread4.max_threads = MIN2(chipset_max_threads, key->nr_urb_entries) - 1; + sf->thread4.max_threads = MIN2(chipset_max_threads, key->nr_urb_entries) - 1; if (unlikely(INTEL_DEBUG & DEBUG_SINGLE_THREAD)) - sf.thread4.max_threads = 0; + sf->thread4.max_threads = 0; if (unlikely(INTEL_DEBUG & DEBUG_STATS)) - sf.thread4.stats_enable = 1; + sf->thread4.stats_enable = 1; /* CACHE_NEW_SF_VP */ - sf.sf5.sf_viewport_state_offset = brw->sf.vp_bo->offset >> 5; /* reloc */ + sf->sf5.sf_viewport_state_offset = brw->sf.vp_bo->offset >> 5; /* reloc */ - sf.sf5.viewport_transform = 1; + sf->sf5.viewport_transform = 1; /* _NEW_SCISSOR */ if (key->scissor) - sf.sf6.scissor = 1; + sf->sf6.scissor = 1; /* _NEW_POLYGON */ if (key->front_face == GL_CCW) - sf.sf5.front_winding = BRW_FRONTWINDING_CCW; + sf->sf5.front_winding = BRW_FRONTWINDING_CCW; else - sf.sf5.front_winding = BRW_FRONTWINDING_CW; + sf->sf5.front_winding = BRW_FRONTWINDING_CW; /* The viewport is inverted for rendering to a FBO, and that inverts * polygon front/back orientation. */ - sf.sf5.front_winding ^= key->render_to_fbo; + sf->sf5.front_winding ^= key->render_to_fbo; switch (key->cull_face) { case GL_FRONT: - sf.sf6.cull_mode = BRW_CULLMODE_FRONT; + sf->sf6.cull_mode = BRW_CULLMODE_FRONT; break; case GL_BACK: - sf.sf6.cull_mode = BRW_CULLMODE_BACK; + sf->sf6.cull_mode = BRW_CULLMODE_BACK; break; case GL_FRONT_AND_BACK: - sf.sf6.cull_mode = BRW_CULLMODE_BOTH; + sf->sf6.cull_mode = BRW_CULLMODE_BOTH; break; case GL_NONE: - sf.sf6.cull_mode = BRW_CULLMODE_NONE; + sf->sf6.cull_mode = BRW_CULLMODE_NONE; break; default: assert(0); @@ -256,19 +257,19 @@ sf_unit_create_from_key(struct brw_context *brw, struct brw_sf_unit_key *key, /* _NEW_LINE */ /* XXX use ctx->Const.Min/MaxLineWidth here */ - sf.sf6.line_width = CLAMP(key->line_width, 1.0, 5.0) * (1<<1); + sf->sf6.line_width = CLAMP(key->line_width, 1.0, 5.0) * (1<<1); - sf.sf6.line_endcap_aa_region_width = 1; + sf->sf6.line_endcap_aa_region_width = 1; if (key->line_smooth) - sf.sf6.aa_enable = 1; - else if (sf.sf6.line_width <= 0x2) - sf.sf6.line_width = 0; + sf->sf6.aa_enable = 1; + else if (sf->sf6.line_width <= 0x2) + sf->sf6.line_width = 0; /* _NEW_BUFFERS */ key->render_to_fbo = brw->intel.ctx.DrawBuffer->Name != 0; if (!key->render_to_fbo) { /* Rendering to an OpenGL window */ - sf.sf6.point_rast_rule = BRW_RASTRULE_UPPER_RIGHT; + sf->sf6.point_rast_rule = BRW_RASTRULE_UPPER_RIGHT; } else { /* If rendering to an FBO, the pixel coordinate system is @@ -290,51 +291,51 @@ sf_unit_create_from_key(struct brw_context *brw, struct brw_sf_unit_key *key, * incorrectly, which is no worse than occurs without * the value, so we're using it here. */ - sf.sf6.point_rast_rule = BRW_RASTRULE_LOWER_RIGHT; + sf->sf6.point_rast_rule = BRW_RASTRULE_LOWER_RIGHT; } /* XXX clamp max depends on AA vs. non-AA */ /* _NEW_POINT */ - sf.sf7.sprite_point = key->point_sprite; - sf.sf7.point_size = CLAMP(rint(key->point_size), 1, 255) * (1<<3); - sf.sf7.use_point_size_state = !key->use_vs_point_size; - sf.sf7.aa_line_distance_mode = 0; + sf->sf7.sprite_point = key->point_sprite; + sf->sf7.point_size = CLAMP(rint(key->point_size), 1, 255) * (1<<3); + sf->sf7.use_point_size_state = !key->use_vs_point_size; + sf->sf7.aa_line_distance_mode = 0; /* might be BRW_NEW_PRIMITIVE if we have to adjust pv for polygons: */ if (!key->pv_first) { - sf.sf7.trifan_pv = 2; - sf.sf7.linestrip_pv = 1; - sf.sf7.tristrip_pv = 2; + sf->sf7.trifan_pv = 2; + sf->sf7.linestrip_pv = 1; + sf->sf7.tristrip_pv = 2; } else { - sf.sf7.trifan_pv = 1; - sf.sf7.linestrip_pv = 0; - sf.sf7.tristrip_pv = 0; + sf->sf7.trifan_pv = 1; + sf->sf7.linestrip_pv = 0; + sf->sf7.tristrip_pv = 0; } - sf.sf7.line_last_pixel_enable = 0; + sf->sf7.line_last_pixel_enable = 0; /* Set bias for OpenGL rasterization rules: */ - sf.sf6.dest_org_vbias = 0x8; - sf.sf6.dest_org_hbias = 0x8; + sf->sf6.dest_org_vbias = 0x8; + sf->sf6.dest_org_hbias = 0x8; bo = brw_upload_cache(&brw->cache, BRW_SF_UNIT, key, sizeof(*key), reloc_bufs, 2, - &sf, sizeof(sf)); + sf, sizeof(*sf)); /* STATE_PREFETCH command description describes this state as being * something loaded through the GPE (L2 ISC), so it's INSTRUCTION domain. */ /* Emit SF program relocation */ drm_intel_bo_emit_reloc(bo, offsetof(struct brw_sf_unit_state, thread0), - brw->sf.prog_bo, sf.thread0.grf_reg_count << 1, + brw->sf.prog_bo, sf->thread0.grf_reg_count << 1, I915_GEM_DOMAIN_INSTRUCTION, 0); /* Emit SF viewport relocation */ drm_intel_bo_emit_reloc(bo, offsetof(struct brw_sf_unit_state, sf5), - brw->sf.vp_bo, (sf.sf5.front_winding | - (sf.sf5.viewport_transform << 1)), + brw->sf.vp_bo, (sf->sf5.front_winding | + (sf->sf5.viewport_transform << 1)), I915_GEM_DOMAIN_INSTRUCTION, 0); return bo; From b1be5bd205d3efcaf4012d2c9a12831da57fc7fb Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 9 Mar 2011 11:11:04 -0800 Subject: [PATCH 237/420] i965: Change the SF unit from state caching to state streaming. This is a 28.1% +/- 1.4% (n=10) performance improvement for the hacked-up-for-cache-misses scissor-many (n=10), and no statistically significant wall-time performance difference for the hacked-up-for-cache-hits version (n=9, first outlier in each removed since IPS was warming up. User time increased by about 4.7%, but kernel time decreased equivalently). --- src/mesa/drivers/dri/i965/brw_context.h | 1 + src/mesa/drivers/dri/i965/brw_misc_state.c | 3 +- src/mesa/drivers/dri/i965/brw_sf_state.c | 148 ++++++--------------- 3 files changed, 45 insertions(+), 107 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_context.h b/src/mesa/drivers/dri/i965/brw_context.h index 7b0551a92bc..5cf5590b606 100644 --- a/src/mesa/drivers/dri/i965/brw_context.h +++ b/src/mesa/drivers/dri/i965/brw_context.h @@ -639,6 +639,7 @@ struct brw_context drm_intel_bo *prog_bo; drm_intel_bo *state_bo; + uint32_t state_offset; drm_intel_bo *vp_bo; } sf; diff --git a/src/mesa/drivers/dri/i965/brw_misc_state.c b/src/mesa/drivers/dri/i965/brw_misc_state.c index c768be23fa7..92eba8fe173 100644 --- a/src/mesa/drivers/dri/i965/brw_misc_state.c +++ b/src/mesa/drivers/dri/i965/brw_misc_state.c @@ -149,7 +149,8 @@ static void upload_pipelined_state_pointers(struct brw_context *brw ) else OUT_BATCH(0); OUT_RELOC(brw->clip.state_bo, I915_GEM_DOMAIN_INSTRUCTION, 0, 1); - OUT_RELOC(brw->sf.state_bo, I915_GEM_DOMAIN_INSTRUCTION, 0, 0); + OUT_RELOC(brw->intel.batch.bo, I915_GEM_DOMAIN_INSTRUCTION, 0, + brw->sf.state_offset); OUT_RELOC(brw->wm.state_bo, I915_GEM_DOMAIN_INSTRUCTION, 0, 0); OUT_RELOC(brw->intel.batch.bo, I915_GEM_DOMAIN_INSTRUCTION, 0, brw->cc.state_offset); diff --git a/src/mesa/drivers/dri/i965/brw_sf_state.c b/src/mesa/drivers/dri/i965/brw_sf_state.c index 560d51f2c6b..f8b5275561d 100644 --- a/src/mesa/drivers/dri/i965/brw_sf_state.c +++ b/src/mesa/drivers/dri/i965/brw_sf_state.c @@ -119,72 +119,21 @@ const struct brw_tracked_state brw_sf_vp = { .prepare = upload_sf_vp }; -struct brw_sf_unit_key { - unsigned int total_grf; - unsigned int urb_entry_read_length; - - unsigned int nr_urb_entries, urb_size, sfsize; - - GLenum front_face, cull_face; - unsigned pv_first:1; - unsigned scissor:1; - unsigned line_smooth:1; - unsigned point_sprite:1; - unsigned use_vs_point_size:1; - unsigned render_to_fbo:1; - float line_width; - float point_size; -}; - -static void -sf_unit_populate_key(struct brw_context *brw, struct brw_sf_unit_key *key) -{ - struct gl_context *ctx = &brw->intel.ctx; - memset(key, 0, sizeof(*key)); - - /* CACHE_NEW_SF_PROG */ - key->total_grf = brw->sf.prog_data->total_grf; - key->urb_entry_read_length = brw->sf.prog_data->urb_read_length; - - /* BRW_NEW_URB_FENCE */ - key->nr_urb_entries = brw->urb.nr_sf_entries; - key->urb_size = brw->urb.vsize; - key->sfsize = brw->urb.sfsize; - - key->scissor = ctx->Scissor.Enabled; - key->front_face = ctx->Polygon.FrontFace; - - if (ctx->Polygon.CullFlag) - key->cull_face = ctx->Polygon.CullFaceMode; - else - key->cull_face = GL_NONE; - - key->line_width = ctx->Line.Width; - key->line_smooth = ctx->Line.SmoothFlag; - - key->point_sprite = ctx->Point.PointSprite; - key->point_size = CLAMP(ctx->Point.Size, ctx->Point.MinSize, ctx->Point.MaxSize); - key->use_vs_point_size = (ctx->VertexProgram.PointSizeEnabled || - ctx->Point._Attenuated); - - /* _NEW_LIGHT */ - key->pv_first = (ctx->Light.ProvokingVertex == GL_FIRST_VERTEX_CONVENTION); - - key->render_to_fbo = brw->intel.ctx.DrawBuffer->Name != 0; -} - -static drm_intel_bo * -sf_unit_create_from_key(struct brw_context *brw, struct brw_sf_unit_key *key, - drm_intel_bo **reloc_bufs) +static void upload_sf_unit( struct brw_context *brw ) { struct intel_context *intel = &brw->intel; - struct brw_sf_unit_state sf_stack, *sf = &sf_stack; - drm_intel_bo *bo; + struct gl_context *ctx = &intel->ctx; + struct brw_sf_unit_state *sf; + drm_intel_bo *bo = intel->batch.bo; int chipset_max_threads; + bool render_to_fbo = brw->intel.ctx.DrawBuffer->Name != 0; + + sf = brw_state_batch(brw, sizeof(*sf), 64, &brw->sf.state_offset); memset(sf, 0, sizeof(*sf)); - sf->thread0.grf_reg_count = ALIGN(key->total_grf, 16) / 16 - 1; + /* CACHE_NEW_SF_PROG */ + sf->thread0.grf_reg_count = ALIGN(brw->sf.prog_data->total_grf, 16) / 16 - 1; sf->thread0.kernel_start_pointer = brw->sf.prog_bo->offset >> 6; /* reloc */ sf->thread1.floating_point_mode = BRW_FLOATING_POINT_NON_IEEE_754; @@ -196,10 +145,12 @@ sf_unit_create_from_key(struct brw_context *brw, struct brw_sf_unit_key *key, else sf->thread3.urb_entry_read_offset = 1; - sf->thread3.urb_entry_read_length = key->urb_entry_read_length; + /* CACHE_NEW_SF_PROG */ + sf->thread3.urb_entry_read_length = brw->sf.prog_data->urb_read_length; - sf->thread4.nr_urb_entries = key->nr_urb_entries; - sf->thread4.urb_entry_allocation_size = key->sfsize - 1; + /* BRW_NEW_URB_FENCE */ + sf->thread4.nr_urb_entries = brw->urb.nr_sf_entries; + sf->thread4.urb_entry_allocation_size = brw->urb.sfsize - 1; /* Each SF thread produces 1 PUE, and there can be up to 24 (Pre-Ironlake) or * 48 (Ironlake) threads. @@ -209,7 +160,9 @@ sf_unit_create_from_key(struct brw_context *brw, struct brw_sf_unit_key *key, else chipset_max_threads = 24; - sf->thread4.max_threads = MIN2(chipset_max_threads, key->nr_urb_entries) - 1; + /* BRW_NEW_URB_FENCE */ + sf->thread4.max_threads = MIN2(chipset_max_threads, + brw->urb.nr_sf_entries) - 1; if (unlikely(INTEL_DEBUG & DEBUG_SINGLE_THREAD)) sf->thread4.max_threads = 0; @@ -223,21 +176,23 @@ sf_unit_create_from_key(struct brw_context *brw, struct brw_sf_unit_key *key, sf->sf5.viewport_transform = 1; /* _NEW_SCISSOR */ - if (key->scissor) + if (ctx->Scissor.Enabled) sf->sf6.scissor = 1; /* _NEW_POLYGON */ - if (key->front_face == GL_CCW) + if (ctx->Polygon.FrontFace == GL_CCW) sf->sf5.front_winding = BRW_FRONTWINDING_CCW; else sf->sf5.front_winding = BRW_FRONTWINDING_CW; - /* The viewport is inverted for rendering to a FBO, and that inverts + /* _NEW_BUFFERS + * The viewport is inverted for rendering to a FBO, and that inverts * polygon front/back orientation. */ - sf->sf5.front_winding ^= key->render_to_fbo; + sf->sf5.front_winding ^= render_to_fbo; - switch (key->cull_face) { + /* _NEW_POLYGON */ + switch (ctx->Polygon.CullFlag ? ctx->Polygon.CullFaceMode : GL_NONE) { case GL_FRONT: sf->sf6.cull_mode = BRW_CULLMODE_FRONT; break; @@ -257,17 +212,16 @@ sf_unit_create_from_key(struct brw_context *brw, struct brw_sf_unit_key *key, /* _NEW_LINE */ /* XXX use ctx->Const.Min/MaxLineWidth here */ - sf->sf6.line_width = CLAMP(key->line_width, 1.0, 5.0) * (1<<1); + sf->sf6.line_width = CLAMP(ctx->Line.Width, 1.0, 5.0) * (1<<1); sf->sf6.line_endcap_aa_region_width = 1; - if (key->line_smooth) + if (ctx->Line.SmoothFlag) sf->sf6.aa_enable = 1; else if (sf->sf6.line_width <= 0x2) sf->sf6.line_width = 0; /* _NEW_BUFFERS */ - key->render_to_fbo = brw->intel.ctx.DrawBuffer->Name != 0; - if (!key->render_to_fbo) { + if (!render_to_fbo) { /* Rendering to an OpenGL window */ sf->sf6.point_rast_rule = BRW_RASTRULE_UPPER_RIGHT; } @@ -296,14 +250,18 @@ sf_unit_create_from_key(struct brw_context *brw, struct brw_sf_unit_key *key, /* XXX clamp max depends on AA vs. non-AA */ /* _NEW_POINT */ - sf->sf7.sprite_point = key->point_sprite; - sf->sf7.point_size = CLAMP(rint(key->point_size), 1, 255) * (1<<3); - sf->sf7.use_point_size_state = !key->use_vs_point_size; + sf->sf7.sprite_point = ctx->Point.PointSprite; + sf->sf7.point_size = CLAMP(rint(CLAMP(ctx->Point.Size, + ctx->Point.MinSize, + ctx->Point.MaxSize)), 1, 255) * (1<<3); + sf->sf7.use_point_size_state = !(ctx->VertexProgram.PointSizeEnabled || + ctx->Point._Attenuated); sf->sf7.aa_line_distance_mode = 0; /* might be BRW_NEW_PRIMITIVE if we have to adjust pv for polygons: + * _NEW_LIGHT */ - if (!key->pv_first) { + if (ctx->Light.ProvokingVertex != GL_FIRST_VERTEX_CONVENTION) { sf->sf7.trifan_pv = 2; sf->sf7.linestrip_pv = 1; sf->sf7.tristrip_pv = 2; @@ -319,46 +277,23 @@ sf_unit_create_from_key(struct brw_context *brw, struct brw_sf_unit_key *key, sf->sf6.dest_org_vbias = 0x8; sf->sf6.dest_org_hbias = 0x8; - bo = brw_upload_cache(&brw->cache, BRW_SF_UNIT, - key, sizeof(*key), - reloc_bufs, 2, - sf, sizeof(*sf)); - /* STATE_PREFETCH command description describes this state as being * something loaded through the GPE (L2 ISC), so it's INSTRUCTION domain. */ /* Emit SF program relocation */ - drm_intel_bo_emit_reloc(bo, offsetof(struct brw_sf_unit_state, thread0), + drm_intel_bo_emit_reloc(bo, (brw->sf.state_offset + + offsetof(struct brw_sf_unit_state, thread0)), brw->sf.prog_bo, sf->thread0.grf_reg_count << 1, I915_GEM_DOMAIN_INSTRUCTION, 0); /* Emit SF viewport relocation */ - drm_intel_bo_emit_reloc(bo, offsetof(struct brw_sf_unit_state, sf5), + drm_intel_bo_emit_reloc(bo, (brw->sf.state_offset + + offsetof(struct brw_sf_unit_state, sf5)), brw->sf.vp_bo, (sf->sf5.front_winding | (sf->sf5.viewport_transform << 1)), I915_GEM_DOMAIN_INSTRUCTION, 0); - return bo; -} - -static void upload_sf_unit( struct brw_context *brw ) -{ - struct brw_sf_unit_key key; - drm_intel_bo *reloc_bufs[2]; - - sf_unit_populate_key(brw, &key); - - reloc_bufs[0] = brw->sf.prog_bo; - reloc_bufs[1] = brw->sf.vp_bo; - - drm_intel_bo_unreference(brw->sf.state_bo); - brw->sf.state_bo = brw_search_cache(&brw->cache, BRW_SF_UNIT, - &key, sizeof(key), - reloc_bufs, 2, - NULL); - if (brw->sf.state_bo == NULL) { - brw->sf.state_bo = sf_unit_create_from_key(brw, &key, reloc_bufs); - } + brw->state.dirty.cache |= CACHE_NEW_SF_UNIT; } const struct brw_tracked_state brw_sf_unit = { @@ -369,7 +304,8 @@ const struct brw_tracked_state brw_sf_unit = { _NEW_POINT | _NEW_SCISSOR | _NEW_BUFFERS), - .brw = BRW_NEW_URB_FENCE, + .brw = (BRW_NEW_BATCH | + BRW_NEW_URB_FENCE), .cache = (CACHE_NEW_SF_VP | CACHE_NEW_SF_PROG) }, From 88022278f71ed3ea9613a7fa72a03367f75443d3 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 9 Mar 2011 13:18:30 -0800 Subject: [PATCH 238/420] i965: Move the SF VP from state caching to state streaming. This is a 49.6% +/- 2.0% (n=9, IPS outlier removed) performance improvement for the hacked-up-for-cache-misses scissor-many, and no statistically significant performance difference for the hacked-up-for-cache-hits version (n=9, IPS outlier removed). No statistically significant performance difference from ETQW (n=5) from these last two commits. --- src/mesa/drivers/dri/i965/brw_context.h | 1 + src/mesa/drivers/dri/i965/brw_sf_state.c | 20 ++++++++++++++------ src/mesa/drivers/dri/i965/brw_state_dump.c | 4 ++-- 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_context.h b/src/mesa/drivers/dri/i965/brw_context.h index 5cf5590b606..ab0c78ff8f8 100644 --- a/src/mesa/drivers/dri/i965/brw_context.h +++ b/src/mesa/drivers/dri/i965/brw_context.h @@ -641,6 +641,7 @@ struct brw_context drm_intel_bo *state_bo; uint32_t state_offset; drm_intel_bo *vp_bo; + uint32_t vp_offset; } sf; struct { diff --git a/src/mesa/drivers/dri/i965/brw_sf_state.c b/src/mesa/drivers/dri/i965/brw_sf_state.c index f8b5275561d..66d91a0bde7 100644 --- a/src/mesa/drivers/dri/i965/brw_sf_state.c +++ b/src/mesa/drivers/dri/i965/brw_sf_state.c @@ -38,13 +38,15 @@ static void upload_sf_vp(struct brw_context *brw) { + struct intel_context *intel = &brw->intel; struct gl_context *ctx = &brw->intel.ctx; const GLfloat depth_scale = 1.0F / ctx->DrawBuffer->_DepthMaxF; - struct brw_sf_viewport sfv_stack, *sfv = &sfv_stack; + struct brw_sf_viewport *sfv; GLfloat y_scale, y_bias; const GLboolean render_to_fbo = (ctx->DrawBuffer->Name != 0); const GLfloat *v = ctx->Viewport._WindowMap.m; + sfv = brw_state_batch(brw, sizeof(*sfv), 32, &brw->sf.vp_offset); memset(sfv, 0, sizeof(*sfv)); if (render_to_fbo) { @@ -104,8 +106,12 @@ static void upload_sf_vp(struct brw_context *brw) sfv->scissor.ymax = ctx->DrawBuffer->Height - ctx->DrawBuffer->_Ymin - 1; } + /* Keep a pointer to it for brw_state_dump.c */ drm_intel_bo_unreference(brw->sf.vp_bo); - brw->sf.vp_bo = brw_cache_data(&brw->cache, BRW_SF_VP, sfv, sizeof(*sfv)); + drm_intel_bo_reference(intel->batch.bo); + brw->sf.vp_bo = intel->batch.bo; + + brw->state.dirty.cache |= CACHE_NEW_SF_VP; } const struct brw_tracked_state brw_sf_vp = { @@ -113,7 +119,7 @@ const struct brw_tracked_state brw_sf_vp = { .mesa = (_NEW_VIEWPORT | _NEW_SCISSOR | _NEW_BUFFERS), - .brw = 0, + .brw = BRW_NEW_BATCH, .cache = 0 }, .prepare = upload_sf_vp @@ -171,7 +177,8 @@ static void upload_sf_unit( struct brw_context *brw ) sf->thread4.stats_enable = 1; /* CACHE_NEW_SF_VP */ - sf->sf5.sf_viewport_state_offset = brw->sf.vp_bo->offset >> 5; /* reloc */ + sf->sf5.sf_viewport_state_offset = (brw->sf.vp_bo->offset + + brw->sf.vp_offset) >> 5; /* reloc */ sf->sf5.viewport_transform = 1; @@ -289,8 +296,9 @@ static void upload_sf_unit( struct brw_context *brw ) /* Emit SF viewport relocation */ drm_intel_bo_emit_reloc(bo, (brw->sf.state_offset + offsetof(struct brw_sf_unit_state, sf5)), - brw->sf.vp_bo, (sf->sf5.front_winding | - (sf->sf5.viewport_transform << 1)), + intel->batch.bo, (brw->sf.vp_offset | + sf->sf5.front_winding | + (sf->sf5.viewport_transform << 1)), I915_GEM_DOMAIN_INSTRUCTION, 0); brw->state.dirty.cache |= CACHE_NEW_SF_UNIT; diff --git a/src/mesa/drivers/dri/i965/brw_state_dump.c b/src/mesa/drivers/dri/i965/brw_state_dump.c index fdce79da2f4..b393259c915 100644 --- a/src/mesa/drivers/dri/i965/brw_state_dump.c +++ b/src/mesa/drivers/dri/i965/brw_state_dump.c @@ -195,8 +195,8 @@ static void dump_sf_viewport_state(struct brw_context *brw) drm_intel_bo_map(brw->sf.vp_bo, GL_FALSE); - vp = brw->sf.vp_bo->virtual; - vp_off = brw->sf.vp_bo->offset; + vp = brw->sf.vp_bo->virtual + brw->sf.vp_offset; + vp_off = brw->sf.vp_bo->offset + brw->sf.vp_offset; state_out(name, vp, vp_off, 0, "m00 = %f\n", vp->viewport.m00); state_out(name, vp, vp_off, 1, "m11 = %f\n", vp->viewport.m11); From 65b024d63a44464ecf752bec417281109f4bd81e Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Mon, 11 Apr 2011 13:26:42 -0600 Subject: [PATCH 239/420] mesa: fixup r600 DRI driver for sampler object changes --- src/mesa/drivers/dri/r600/evergreen_tex.c | 24 +++++++++++------------ src/mesa/drivers/dri/r600/r600_tex.c | 12 ++++++------ src/mesa/drivers/dri/r600/r600_texstate.c | 12 ++++++------ src/mesa/drivers/dri/r600/r700_chip.c | 4 ++-- 4 files changed, 26 insertions(+), 26 deletions(-) diff --git a/src/mesa/drivers/dri/r600/evergreen_tex.c b/src/mesa/drivers/dri/r600/evergreen_tex.c index 5fdb91a63d1..810f0e8b523 100644 --- a/src/mesa/drivers/dri/r600/evergreen_tex.c +++ b/src/mesa/drivers/dri/r600/evergreen_tex.c @@ -581,7 +581,7 @@ static GLboolean evergreenGetTexFormat(struct gl_texture_object *tObj, gl_format default: break; }; - switch (tObj->DepthMode) { + switch (tObj->Sampler.DepthMode) { case GL_LUMINANCE: /* X, X, X, ONE */ SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); @@ -901,7 +901,7 @@ static void evergreenSetTexFilter(radeonTexObjPtr t, GLenum minf, GLenum magf, G } } -static void evergreenSetTexSampler.BorderColor(radeonTexObjPtr t, const GLfloat color[4]) +static void evergreenSetTexBorderColor(radeonTexObjPtr t, const GLfloat color[4]) { t->TD_PS_SAMPLER0_BORDER_ALPHA = *((uint32_t*)&(color[3])); t->TD_PS_SAMPLER0_BORDER_RED = *((uint32_t*)&(color[2])); @@ -1022,21 +1022,21 @@ static GLboolean evergreen_setup_hardware_state(struct gl_context * ctx, struct SETfield(t->SQ_TEX_RESOURCE5, t->maxLod - t->minLod, LAST_LEVEL_shift, LAST_LEVEL_mask); SETfield(t->SQ_TEX_SAMPLER1, - EG_S_FIXED(CLAMP(t->base.MinLod - t->minLod, 0, 15), 8), + EG_S_FIXED(CLAMP(t->base.Sampler.MinLod - t->minLod, 0, 15), 8), EG_SQ_TEX_SAMPLER_WORD1_0__MIN_LOD_shift, EG_SQ_TEX_SAMPLER_WORD1_0__MIN_LOD_mask); SETfield(t->SQ_TEX_SAMPLER1, - EG_S_FIXED(CLAMP(t->base.MaxLod - t->minLod, 0, 15), 8), + EG_S_FIXED(CLAMP(t->base.Sampler.MaxLod - t->minLod, 0, 15), 8), EG_SQ_TEX_SAMPLER_WORD1_0__MAX_LOD_shift, EG_SQ_TEX_SAMPLER_WORD1_0__MAX_LOD_mask); SETfield(t->SQ_TEX_SAMPLER2, - EG_S_FIXED(CLAMP(ctx->Texture.Unit[unit].LodBias + t->base.LodBias, -16, 16), 8), + EG_S_FIXED(CLAMP(ctx->Texture.Unit[unit].LodBias + t->base.Sampler.LodBias, -16, 16), 8), EG_SQ_TEX_SAMPLER_WORD2_0__LOD_BIAS_shift, EG_SQ_TEX_SAMPLER_WORD2_0__LOD_BIAS_mask); - if(texObj->CompareMode == GL_COMPARE_R_TO_TEXTURE_ARB) + if(texObj->Sampler.CompareMode == GL_COMPARE_R_TO_TEXTURE_ARB) { - SETfield(t->SQ_TEX_SAMPLER0, evergreen_translate_shadow_func(texObj->CompareFunc), + SETfield(t->SQ_TEX_SAMPLER0, evergreen_translate_shadow_func(texObj->Sampler.CompareFunc), EG_SQ_TEX_SAMPLER_WORD0_0__DCF_shift, EG_SQ_TEX_SAMPLER_WORD0_0__DCF_mask); } @@ -1420,12 +1420,12 @@ static struct gl_texture_object *evergreenNewTextureObject(struct gl_context * c t, _mesa_lookup_enum_by_nr(target)); _mesa_initialize_texture_object(&t->base, name, target); - t->base.MaxAnisotropy = rmesa->radeon.initialMaxAnisotropy; + t->base.Sampler.MaxAnisotropy = rmesa->radeon.initialMaxAnisotropy; evergreenSetTexDefaultState(t); evergreenUpdateTexWrap(t); - evergreenSetTexFilter(t, t->base.Sampler.MinFilter, t->base.Sampler.MagFilter, t->base.MaxAnisotropy); - evergreenSetTexSampler.BorderColor(t, t->base.Sampler.BorderColor.f); + evergreenSetTexFilter(t, t->base.Sampler.MinFilter, t->base.Sampler.MagFilter, t->base.Sampler.MaxAnisotropy); + evergreenSetTexBorderColor(t, t->base.Sampler.BorderColor.f); return &t->base; } @@ -1475,7 +1475,7 @@ static void evergreenTexParameter(struct gl_context * ctx, GLenum target, case GL_TEXTURE_MIN_FILTER: case GL_TEXTURE_MAG_FILTER: case GL_TEXTURE_MAX_ANISOTROPY_EXT: - evergreenSetTexFilter(t, texObj->Sampler.MinFilter, texObj->Sampler.MagFilter, texObj->MaxAnisotropy); + evergreenSetTexFilter(t, texObj->Sampler.MinFilter, texObj->Sampler.MagFilter, texObj->Sampler.MaxAnisotropy); break; case GL_TEXTURE_WRAP_S: @@ -1485,7 +1485,7 @@ static void evergreenTexParameter(struct gl_context * ctx, GLenum target, break; case GL_TEXTURE_BORDER_COLOR: - evergreenSetTexSampler.BorderColor(t, texObj->Sampler.BorderColor.f); + evergreenSetTexBorderColor(t, texObj->Sampler.BorderColor.f); break; case GL_TEXTURE_BASE_LEVEL: diff --git a/src/mesa/drivers/dri/r600/r600_tex.c b/src/mesa/drivers/dri/r600/r600_tex.c index 07f6de7ad49..eb7ed30c7a3 100644 --- a/src/mesa/drivers/dri/r600/r600_tex.c +++ b/src/mesa/drivers/dri/r600/r600_tex.c @@ -262,7 +262,7 @@ static void r600SetTexFilter(radeonTexObjPtr t, GLenum minf, GLenum magf, GLfloa } } -static void r600SetTexSampler.BorderColor(radeonTexObjPtr t, const GLfloat color[4]) +static void r600SetTexBorderColor(radeonTexObjPtr t, const GLfloat color[4]) { t->TD_PS_SAMPLER0_BORDER_ALPHA = *((uint32_t*)&(color[3])); t->TD_PS_SAMPLER0_BORDER_BLUE = *((uint32_t*)&(color[2])); @@ -292,7 +292,7 @@ static void r600TexParameter(struct gl_context * ctx, GLenum target, case GL_TEXTURE_MIN_FILTER: case GL_TEXTURE_MAG_FILTER: case GL_TEXTURE_MAX_ANISOTROPY_EXT: - r600SetTexFilter(t, texObj->Sampler.MinFilter, texObj->Sampler.MagFilter, texObj->MaxAnisotropy); + r600SetTexFilter(t, texObj->Sampler.MinFilter, texObj->Sampler.MagFilter, texObj->Sampler.MaxAnisotropy); break; case GL_TEXTURE_WRAP_S: @@ -302,7 +302,7 @@ static void r600TexParameter(struct gl_context * ctx, GLenum target, break; case GL_TEXTURE_BORDER_COLOR: - r600SetTexSampler.BorderColor(t, texObj->Sampler.BorderColor.f); + r600SetTexBorderColor(t, texObj->Sampler.BorderColor.f); break; case GL_TEXTURE_BASE_LEVEL: @@ -382,13 +382,13 @@ static struct gl_texture_object *r600NewTextureObject(struct gl_context * ctx, t, _mesa_lookup_enum_by_nr(target)); _mesa_initialize_texture_object(&t->base, name, target); - t->base.MaxAnisotropy = rmesa->radeon.initialMaxAnisotropy; + t->base.Sampler.MaxAnisotropy = rmesa->radeon.initialMaxAnisotropy; /* Initialize hardware state */ r600SetTexDefaultState(t); r600UpdateTexWrap(t); - r600SetTexFilter(t, t->base.Sampler.MinFilter, t->base.Sampler.MagFilter, t->base.MaxAnisotropy); - r600SetTexSampler.BorderColor(t, t->base.Sampler.BorderColor.f); + r600SetTexFilter(t, t->base.Sampler.MinFilter, t->base.Sampler.MagFilter, t->base.Sampler.MaxAnisotropy); + r600SetTexBorderColor(t, t->base.Sampler.BorderColor.f); return &t->base; } diff --git a/src/mesa/drivers/dri/r600/r600_texstate.c b/src/mesa/drivers/dri/r600/r600_texstate.c index aafa6875774..3568a5515be 100644 --- a/src/mesa/drivers/dri/r600/r600_texstate.c +++ b/src/mesa/drivers/dri/r600/r600_texstate.c @@ -571,7 +571,7 @@ static GLboolean r600GetTexFormat(struct gl_texture_object *tObj, gl_format mesa default: break; }; - switch (tObj->DepthMode) { + switch (tObj->Sampler.DepthMode) { case GL_LUMINANCE: /* X, X, X, ONE */ SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); @@ -777,18 +777,18 @@ static GLboolean setup_hardware_state(struct gl_context * ctx, struct gl_texture SETfield(t->SQ_TEX_RESOURCE5, t->maxLod - t->minLod, LAST_LEVEL_shift, LAST_LEVEL_mask); SETfield(t->SQ_TEX_SAMPLER1, - S_FIXED(CLAMP(t->base.MinLod - t->minLod, 0, 15), 6), + S_FIXED(CLAMP(t->base.Sampler.MinLod - t->minLod, 0, 15), 6), MIN_LOD_shift, MIN_LOD_mask); SETfield(t->SQ_TEX_SAMPLER1, - S_FIXED(CLAMP(t->base.MaxLod - t->minLod, 0, 15), 6), + S_FIXED(CLAMP(t->base.Sampler.MaxLod - t->minLod, 0, 15), 6), MAX_LOD_shift, MAX_LOD_mask); SETfield(t->SQ_TEX_SAMPLER1, - S_FIXED(CLAMP(ctx->Texture.Unit[unit].LodBias + t->base.LodBias, -16, 16), 6), + S_FIXED(CLAMP(ctx->Texture.Unit[unit].LodBias + t->base.Sampler.LodBias, -16, 16), 6), SQ_TEX_SAMPLER_WORD1_0__LOD_BIAS_shift, SQ_TEX_SAMPLER_WORD1_0__LOD_BIAS_mask); - if(texObj->CompareMode == GL_COMPARE_R_TO_TEXTURE_ARB) + if(texObj->Sampler.CompareMode == GL_COMPARE_R_TO_TEXTURE_ARB) { - SETfield(t->SQ_TEX_SAMPLER0, r600_translate_shadow_func(texObj->CompareFunc), DEPTH_COMPARE_FUNCTION_shift, DEPTH_COMPARE_FUNCTION_mask); + SETfield(t->SQ_TEX_SAMPLER0, r600_translate_shadow_func(texObj->Sampler.CompareFunc), DEPTH_COMPARE_FUNCTION_shift, DEPTH_COMPARE_FUNCTION_mask); } else { diff --git a/src/mesa/drivers/dri/r600/r700_chip.c b/src/mesa/drivers/dri/r600/r700_chip.c index ff456c67e2e..4ec2845ab44 100644 --- a/src/mesa/drivers/dri/r600/r700_chip.c +++ b/src/mesa/drivers/dri/r600/r700_chip.c @@ -141,7 +141,7 @@ static void r700SendTexSamplerState(struct gl_context *ctx, struct radeon_state_ } } -static void r700SendTexSampler.BorderColorState(struct gl_context *ctx, struct radeon_state_atom *atom) +static void r700SendTexBorderColorState(struct gl_context *ctx, struct radeon_state_atom *atom) { context_t *context = R700_CONTEXT(ctx); R700_CHIP_CONTEXT *r700 = (R700_CHIP_CONTEXT*)(&context->hw); @@ -1640,7 +1640,7 @@ void r600InitAtoms(context_t *context) ALLOC_STATE(vtx, vtx, (VERT_ATTRIB_MAX * 18), r700SendVTXState); ALLOC_STATE(tx, tx, (R700_TEXTURE_NUMBERUNITS * 20), r700SendTexState); ALLOC_STATE(tx_smplr, tx, (R700_TEXTURE_NUMBERUNITS * 5), r700SendTexSamplerState); - ALLOC_STATE(tx_brdr_clr, tx, (R700_TEXTURE_NUMBERUNITS * 6), r700SendTexSampler.BorderColorState); + ALLOC_STATE(tx_brdr_clr, tx, (R700_TEXTURE_NUMBERUNITS * 6), r700SendTexBorderColorState); r600_init_query_stateobj(&context->radeon, 6 * 2); context->radeon.hw.is_dirty = GL_TRUE; From f2bda1b5664cd8a8744798926f2562212229d938 Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Fri, 8 Apr 2011 12:41:42 -0700 Subject: [PATCH 240/420] glsl: Only let a shader enable GL_ARB_draw_instanced if the driver supports it Also make the GL_ARB_draw_instanced block follow the same pattern as the other blocks. Tested-by: Brian Paul Reviewed-by: Kenneth Graunke --- src/glsl/glsl_parser_extras.cpp | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/glsl/glsl_parser_extras.cpp b/src/glsl/glsl_parser_extras.cpp index e8c60936fb6..073ec383210 100644 --- a/src/glsl/glsl_parser_extras.cpp +++ b/src/glsl/glsl_parser_extras.cpp @@ -211,14 +211,13 @@ _mesa_glsl_process_extension(const char *name, YYLTYPE *name_locp, state->ARB_draw_buffers_warn = (ext_mode == extension_warn); } } else if (strcmp(name, "GL_ARB_draw_instanced") == 0) { + state->ARB_draw_instanced_enable = (ext_mode != extension_disable); + state->ARB_draw_instanced_warn = (ext_mode == extension_warn); + /* This extension is only supported in vertex shaders. */ - if (state->target != vertex_shader) { - unsupported = true; - } else { - state->ARB_draw_instanced_enable = (ext_mode != extension_disable); - state->ARB_draw_instanced_warn = (ext_mode == extension_warn); - } + unsupported = (state->target != vertex_shader) + || !state->extensions->ARB_draw_instanced; } else if (strcmp(name, "GL_ARB_explicit_attrib_location") == 0) { state->ARB_explicit_attrib_location_enable = (ext_mode != extension_disable); From 03eade164d45cc35422dfc03aeaf579c9c3183f9 Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Fri, 8 Apr 2011 12:43:53 -0700 Subject: [PATCH 241/420] glsl: Make GL_ARB_shader_stencil_export enable block be similar to other blocks Tested-by: Brian Paul Reviewed-by: Kenneth Graunke --- src/glsl/glsl_parser_extras.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/glsl/glsl_parser_extras.cpp b/src/glsl/glsl_parser_extras.cpp index 073ec383210..e8881e4d60e 100644 --- a/src/glsl/glsl_parser_extras.cpp +++ b/src/glsl/glsl_parser_extras.cpp @@ -241,13 +241,13 @@ _mesa_glsl_process_extension(const char *name, YYLTYPE *name_locp, unsupported = !state->extensions->EXT_texture_array; } else if (strcmp(name, "GL_ARB_shader_stencil_export") == 0) { - if (state->target != fragment_shader) { - unsupported = true; - } else { - state->ARB_shader_stencil_export_enable = (ext_mode != extension_disable); - state->ARB_shader_stencil_export_warn = (ext_mode == extension_warn); - unsupported = !state->extensions->ARB_shader_stencil_export; - } + state->ARB_shader_stencil_export_enable = (ext_mode != extension_disable); + state->ARB_shader_stencil_export_warn = (ext_mode == extension_warn); + + /* This extension is only supported in fragment shaders. + */ + unsupported = (state->target != fragment_shader) + || !state->extensions->ARB_shader_stencil_export; } else if (strcmp(name, "GL_AMD_conservative_depth") == 0) { /* The AMD_conservative spec does not forbid requiring the extension in * the vertex shader. From 7e809f0b8d635c8d5519b3d0fdaf11ac0ddda7eb Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Fri, 8 Apr 2011 16:31:22 -0700 Subject: [PATCH 242/420] intel: Fix ROUND_DOWN_TO macro Previously the macro would (ALIGN(value - alignment - 1, alignment)). At the very least, this was missing parenthesis around "alignment - 1". As a result, if value was already aligned, it would be reduced by alignment. Condisder: x = ROUND_DOWN_TO(256, 128); This becomes: x = ALIGN(256 - 128 - 1, 128); Or: x = ALIGN(127, 128); Which becomes: x = 128; This macro is currently only used in brw_state_batch (brw_state_batch.c). It looks like the original version of this macro would just use too much space in the batch buffer. It's possible, but not at all clear to me from the code, that the original behavior is actually desired. In any case, this patch does not cause any piglit regressions on my Ironlake system. I also think that ALIGN_FLOOR would be a better name for this macro, but ROUND_DOWN_TO matches rounddown in the Linux kernel. Reviewed-by: Eric Anholt Reviewed-by: Keith Whitwell Reviewed-by: Kenneth Graunke --- src/mesa/drivers/dri/intel/intel_context.h | 30 +++++++++++++++++++--- 1 file changed, 27 insertions(+), 3 deletions(-) diff --git a/src/mesa/drivers/dri/intel/intel_context.h b/src/mesa/drivers/dri/intel/intel_context.h index 772b2fba5a8..c59119373da 100644 --- a/src/mesa/drivers/dri/intel/intel_context.h +++ b/src/mesa/drivers/dri/intel/intel_context.h @@ -295,9 +295,33 @@ extern char *__progname; #define SUBPIXEL_Y 0.125 #define ARRAY_SIZE(x) (sizeof(x) / sizeof(x[0])) -#define ALIGN(value, alignment) ((value + alignment - 1) & ~(alignment - 1)) -#define ROUND_DOWN_TO(value, alignment) (ALIGN(value - alignment - 1, \ - alignment)) + +/** + * Align a value up to an alignment value + * + * If \c value is not already aligned to the requested alignment value, it + * will be rounded up. + * + * \param value Value to be rounded + * \param alignment Alignment value to be used. This must be a power of two. + * + * \sa ROUND_DOWN_TO() + */ +#define ALIGN(value, alignment) (((value) + alignment - 1) & ~(alignment - 1)) + +/** + * Align a value down to an alignment value + * + * If \c value is not already aligned to the requested alignment value, it + * will be rounded down. + * + * \param value Value to be rounded + * \param alignment Alignment value to be used. This must be a power of two. + * + * \sa ALIGN() + */ +#define ROUND_DOWN_TO(value, alignment) ((value) & ~(alignment - 1)) + #define IS_POWER_OF_TWO(val) (((val) & (val - 1)) == 0) static INLINE uint32_t From a7fa203f0d645bdb06b3cb345ab1a0ccf4e62fe3 Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Fri, 8 Apr 2011 18:06:35 -0700 Subject: [PATCH 243/420] i965: Remove hint_gs_always and resulting dead code Reviewed-by: Eric Anholt Reviewed-by: Kenneth Graunke --- src/mesa/drivers/dri/i965/brw_gs.c | 52 ++++++------------------- src/mesa/drivers/dri/i965/brw_gs.h | 5 +-- src/mesa/drivers/dri/i965/brw_gs_emit.c | 32 --------------- 3 files changed, 13 insertions(+), 76 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_gs.c b/src/mesa/drivers/dri/i965/brw_gs.c index 70c451d071d..14ee6767cd5 100644 --- a/src/mesa/drivers/dri/i965/brw_gs.c +++ b/src/mesa/drivers/dri/i965/brw_gs.c @@ -83,45 +83,23 @@ static void compile_gs_prog( struct brw_context *brw, /* Note that primitives which don't require a GS program have * already been weeded out by this stage: */ + + /* Gen6: VF has already converted into polygon, and LINELOOP is + * converted to LINESTRIP at the beginning of the 3D pipeline. + */ + if (intel->gen == 6) + return; + switch (key->primitive) { case GL_QUADS: - /* Gen6: VF has already converted into polygon. */ - if (intel->gen == 6) - return; brw_gs_quads( &c, key ); break; case GL_QUAD_STRIP: - if (intel->gen == 6) - return; brw_gs_quad_strip( &c, key ); break; case GL_LINE_LOOP: - /* Gen6: LINELOOP is converted to LINESTRIP at the beginning of the 3D pipeline */ - if (intel->gen == 6) - return; brw_gs_lines( &c ); break; - case GL_LINES: - if (key->hint_gs_always) - brw_gs_lines( &c ); - else { - return; - } - break; - case GL_TRIANGLES: - if (key->hint_gs_always) - brw_gs_tris( &c ); - else { - return; - } - break; - case GL_POINTS: - if (key->hint_gs_always) - brw_gs_points( &c ); - else { - return; - } - break; default: return; } @@ -170,7 +148,6 @@ static void populate_key( struct brw_context *brw, { struct gl_context *ctx = &brw->intel.ctx; struct intel_context *intel = &brw->intel; - int prim_gs_always; memset(key, 0, sizeof(*key)); @@ -180,8 +157,6 @@ static void populate_key( struct brw_context *brw, /* BRW_NEW_PRIMITIVE */ key->primitive = gs_prim[brw->primitive]; - key->hint_gs_always = 0; /* debug code? */ - /* _NEW_LIGHT */ key->pv_first = (ctx->Light.ProvokingVertex == GL_FIRST_VERTEX_CONVENTION); if (key->primitive == GL_QUADS && ctx->Light.ShadeModel != GL_FLAT) { @@ -191,14 +166,11 @@ static void populate_key( struct brw_context *brw, key->pv_first = GL_TRUE; } - if (intel->gen == 6) - prim_gs_always = 0; - else - prim_gs_always = brw->primitive == GL_QUADS || - brw->primitive == GL_QUAD_STRIP || - brw->primitive == GL_LINE_LOOP; - - key->need_gs_prog = (key->hint_gs_always || prim_gs_always); + key->need_gs_prog = (intel->gen == 6) + ? 0 + : (brw->primitive == GL_QUADS || + brw->primitive == GL_QUAD_STRIP || + brw->primitive == GL_LINE_LOOP); } /* Calculate interpolants for triangle and line rasterization. diff --git a/src/mesa/drivers/dri/i965/brw_gs.h b/src/mesa/drivers/dri/i965/brw_gs.h index 7e3531086f9..c33528e4577 100644 --- a/src/mesa/drivers/dri/i965/brw_gs.h +++ b/src/mesa/drivers/dri/i965/brw_gs.h @@ -42,10 +42,9 @@ struct brw_gs_prog_key { GLbitfield64 attrs; GLuint primitive:4; - GLuint hint_gs_always:1; GLuint pv_first:1; GLuint need_gs_prog:1; - GLuint pad:25; + GLuint pad:26; }; struct brw_gs_compile { @@ -70,8 +69,6 @@ struct brw_gs_compile { void brw_gs_quads( struct brw_gs_compile *c, struct brw_gs_prog_key *key ); void brw_gs_quad_strip( struct brw_gs_compile *c, struct brw_gs_prog_key *key ); -void brw_gs_tris( struct brw_gs_compile *c ); void brw_gs_lines( struct brw_gs_compile *c ); -void brw_gs_points( struct brw_gs_compile *c ); #endif diff --git a/src/mesa/drivers/dri/i965/brw_gs_emit.c b/src/mesa/drivers/dri/i965/brw_gs_emit.c index e1f751fdaa4..3bb526b63af 100644 --- a/src/mesa/drivers/dri/i965/brw_gs_emit.c +++ b/src/mesa/drivers/dri/i965/brw_gs_emit.c @@ -193,19 +193,6 @@ void brw_gs_quad_strip( struct brw_gs_compile *c, struct brw_gs_prog_key *key ) } } -void brw_gs_tris( struct brw_gs_compile *c ) -{ - struct intel_context *intel = &c->func.brw->intel; - - brw_gs_alloc_regs(c, 3); - - if (intel->needs_ff_sync) - brw_gs_ff_sync(c, 1); - brw_gs_emit_vue(c, c->reg.vertex[0], 0, ((_3DPRIM_TRILIST << 2) | R02_PRIM_START)); - brw_gs_emit_vue(c, c->reg.vertex[1], 0, (_3DPRIM_TRILIST << 2)); - brw_gs_emit_vue(c, c->reg.vertex[2], 1, ((_3DPRIM_TRILIST << 2) | R02_PRIM_END)); -} - void brw_gs_lines( struct brw_gs_compile *c ) { struct intel_context *intel = &c->func.brw->intel; @@ -217,22 +204,3 @@ void brw_gs_lines( struct brw_gs_compile *c ) brw_gs_emit_vue(c, c->reg.vertex[0], 0, ((_3DPRIM_LINESTRIP << 2) | R02_PRIM_START)); brw_gs_emit_vue(c, c->reg.vertex[1], 1, ((_3DPRIM_LINESTRIP << 2) | R02_PRIM_END)); } - -void brw_gs_points( struct brw_gs_compile *c ) -{ - struct intel_context *intel = &c->func.brw->intel; - - brw_gs_alloc_regs(c, 1); - - if (intel->needs_ff_sync) - brw_gs_ff_sync(c, 1); - brw_gs_emit_vue(c, c->reg.vertex[0], 1, ((_3DPRIM_POINTLIST << 2) | R02_PRIM_START | R02_PRIM_END)); -} - - - - - - - - From 2432ca1c2e205100d48070305ba2d5f8978bce03 Mon Sep 17 00:00:00 2001 From: Zou Nan hai Date: Tue, 12 Apr 2011 10:52:50 +0800 Subject: [PATCH 244/420] Revert "i965: clear global offset to zero in m0.2 for VS DP read." This reverts commit 66b66295d0bc856c69fdcccc22575580c7ecee16. it was already fixed by commit 9d60a7ce08a67eb8b79c60f829d090ba4a37ed7e --- src/mesa/drivers/dri/i965/brw_eu_emit.c | 9 --------- 1 file changed, 9 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_eu_emit.c b/src/mesa/drivers/dri/i965/brw_eu_emit.c index c5cde221669..57313a59c08 100644 --- a/src/mesa/drivers/dri/i965/brw_eu_emit.c +++ b/src/mesa/drivers/dri/i965/brw_eu_emit.c @@ -1759,11 +1759,6 @@ void brw_dp_READ_4_vs(struct brw_compile *p, brw_set_compression_control(p, BRW_COMPRESSION_NONE); brw_set_mask_control(p, BRW_MASK_DISABLE); brw_set_predicate_control(p, BRW_PREDICATE_NONE); - - /* M0.2 is global offset */ - brw_MOV(p, retype(get_element(brw_message_reg(0), 2), BRW_REGISTER_TYPE_D), - brw_imm_d(0)); - brw_MOV(p, retype(brw_vec1_reg(BRW_MESSAGE_REGISTER_FILE, msg_reg_nr, 2), BRW_REGISTER_TYPE_UD), brw_imm_ud(location)); @@ -1814,10 +1809,6 @@ void brw_dp_READ_4_vs_relative(struct brw_compile *p, brw_set_mask_control(p, BRW_MASK_DISABLE); brw_set_predicate_control(p, BRW_PREDICATE_NONE); - /* M0.2 is global offset */ - brw_MOV(p, retype(get_element(brw_message_reg(0), 2), BRW_REGISTER_TYPE_D), - brw_imm_d(0)); - /* M1.0 is block offset 0, M1.4 is block offset 1, all other * fields ignored. */ From 155a9670e62ef063ca9903b229ccdc3325d52bd2 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Mon, 11 Apr 2011 21:22:54 -0600 Subject: [PATCH 245/420] r600: silence various compiler warnings --- src/mesa/drivers/dri/r600/evergreen_chip.c | 4 +++- src/mesa/drivers/dri/r600/evergreen_oglprog.c | 6 +++--- src/mesa/drivers/dri/r600/evergreen_render.c | 2 ++ src/mesa/drivers/dri/r600/evergreen_vertprog.c | 12 ++++++------ src/mesa/drivers/dri/r600/r700_assembler.c | 2 ++ src/mesa/drivers/dri/r600/r700_chip.c | 1 + src/mesa/drivers/dri/r600/r700_render.c | 2 ++ 7 files changed, 19 insertions(+), 10 deletions(-) diff --git a/src/mesa/drivers/dri/r600/evergreen_chip.c b/src/mesa/drivers/dri/r600/evergreen_chip.c index 53dacbfdf39..7a2902554e3 100644 --- a/src/mesa/drivers/dri/r600/evergreen_chip.c +++ b/src/mesa/drivers/dri/r600/evergreen_chip.c @@ -124,7 +124,7 @@ static void evergreenSendTexState(struct gl_context *ctx, struct radeon_state_at context_t *context = EVERGREEN_CONTEXT(ctx); EVERGREEN_CHIP_CONTEXT *evergreen = GET_EVERGREEN_CHIP(context); - struct evergreen_vertex_program *vp = context->selected_vp; + struct evergreen_vertex_program *vp = (struct evergreen_vertex_program *) context->selected_vp; struct radeon_bo *bo = NULL; unsigned int i; @@ -379,6 +379,8 @@ static void evergreenSendVTX(struct gl_context *ctx, struct radeon_state_atom *a struct evergreen_vertex_program *vp = (struct evergreen_vertex_program *)(context->selected_vp); unsigned int i, j = 0; BATCH_LOCALS(&context->radeon); + (void) b_l_rmesa; /* silence unused var warning */ + radeon_print(RADEON_STATE, RADEON_VERBOSE, "%s\n", __func__); if (context->radeon.tcl.aos_count == 0) diff --git a/src/mesa/drivers/dri/r600/evergreen_oglprog.c b/src/mesa/drivers/dri/r600/evergreen_oglprog.c index a2a361f32e6..1fd655e85f8 100644 --- a/src/mesa/drivers/dri/r600/evergreen_oglprog.c +++ b/src/mesa/drivers/dri/r600/evergreen_oglprog.c @@ -42,7 +42,7 @@ static void evergreen_freeVertProgCache(struct gl_context *ctx, struct r700_vertex_program_cont *cache) { - struct evergreen_vertex_program *tmp, *vp = cache->progs; + struct evergreen_vertex_program *tmp, *vp = (struct evergreen_vertex_program *) cache->progs; while (vp) { tmp = vp->next; @@ -121,7 +121,7 @@ static void evergreenDeleteProgram(struct gl_context * ctx, struct gl_program *p { case GL_VERTEX_STATE_PROGRAM_NV: case GL_VERTEX_PROGRAM_ARB: - evergreen_freeVertProgCache(ctx, vpc); + evergreen_freeVertProgCache(ctx, (struct r700_vertex_program_cont *) vpc); break; case GL_FRAGMENT_PROGRAM_NV: case GL_FRAGMENT_PROGRAM_ARB: @@ -154,7 +154,7 @@ evergreenProgramStringNotify(struct gl_context * ctx, GLenum target, struct gl_p switch (target) { case GL_VERTEX_PROGRAM_ARB: - evergreen_freeVertProgCache(ctx, vpc); + evergreen_freeVertProgCache(ctx, (struct r700_vertex_program_cont *) vpc); vpc->progs = NULL; break; case GL_FRAGMENT_PROGRAM_ARB: diff --git a/src/mesa/drivers/dri/r600/evergreen_render.c b/src/mesa/drivers/dri/r600/evergreen_render.c index 6e51832c878..b5a5f07aaec 100644 --- a/src/mesa/drivers/dri/r600/evergreen_render.c +++ b/src/mesa/drivers/dri/r600/evergreen_render.c @@ -620,6 +620,7 @@ static void evergreenSetupIndexBuffer(struct gl_context *ctx, const struct _mesa } } +#if 0 /* unused */ static void evergreenAlignDataToDword(struct gl_context *ctx, const struct gl_client_array *input, int count, @@ -661,6 +662,7 @@ static void evergreenAlignDataToDword(struct gl_context *ctx, attr->stride = dst_stride; } +#endif static void evergreenSetupStreams(struct gl_context *ctx, const struct gl_client_array *input[], int count) { diff --git a/src/mesa/drivers/dri/r600/evergreen_vertprog.c b/src/mesa/drivers/dri/r600/evergreen_vertprog.c index b3371f20b19..018869b9996 100644 --- a/src/mesa/drivers/dri/r600/evergreen_vertprog.c +++ b/src/mesa/drivers/dri/r600/evergreen_vertprog.c @@ -405,7 +405,7 @@ void evergreenSelectVertexShader(struct gl_context *ctx) } if (match) { - context->selected_vp = vp; + context->selected_vp = (struct r700_vertex_program *) vp; return; } } @@ -418,7 +418,7 @@ void evergreenSelectVertexShader(struct gl_context *ctx) } vp->next = vpc->progs; vpc->progs = vp; - context->selected_vp = vp; + context->selected_vp = (struct r700_vertex_program *) vp; return; } @@ -566,7 +566,7 @@ void evergreenSetVertexFormat(struct gl_context *ctx, const struct gl_client_arr void * evergreenGetActiveVpShaderBo(struct gl_context * ctx) { context_t *context = EVERGREEN_CONTEXT(ctx); - struct evergreen_vertex_program *vp = context->selected_vp;; + struct evergreen_vertex_program *vp = (struct evergreen_vertex_program *) context->selected_vp; if (vp) return vp->shaderbo; @@ -577,7 +577,7 @@ void * evergreenGetActiveVpShaderBo(struct gl_context * ctx) void * evergreenGetActiveVpShaderConstBo(struct gl_context * ctx) { context_t *context = EVERGREEN_CONTEXT(ctx); - struct evergreen_vertex_program *vp = context->selected_vp;; + struct evergreen_vertex_program *vp = (struct evergreen_vertex_program *) context->selected_vp; if (vp) return vp->constbo0; @@ -589,7 +589,7 @@ GLboolean evergreenSetupVertexProgram(struct gl_context * ctx) { context_t *context = EVERGREEN_CONTEXT(ctx); EVERGREEN_CHIP_CONTEXT *evergreen = GET_EVERGREEN_CHIP(context); - struct evergreen_vertex_program *vp = context->selected_vp; + struct evergreen_vertex_program *vp = (struct evergreen_vertex_program *) context->selected_vp; if(GL_FALSE == vp->loaded) { @@ -650,7 +650,7 @@ GLboolean evergreenSetupVPconstants(struct gl_context * ctx) { context_t *context = EVERGREEN_CONTEXT(ctx); EVERGREEN_CHIP_CONTEXT *evergreen = GET_EVERGREEN_CHIP(context); - struct evergreen_vertex_program *vp = context->selected_vp; + struct evergreen_vertex_program *vp = (struct evergreen_vertex_program *) context->selected_vp; struct gl_program_parameter_list *paramList; unsigned int unNumParamData; diff --git a/src/mesa/drivers/dri/r600/r700_assembler.c b/src/mesa/drivers/dri/r600/r700_assembler.c index 024853c1beb..4ed37033902 100644 --- a/src/mesa/drivers/dri/r600/r700_assembler.c +++ b/src/mesa/drivers/dri/r600/r700_assembler.c @@ -259,6 +259,7 @@ GLboolean is_reduction_opcode(PVSDWORD* dest) return GL_FALSE; } +#if 0 /* unused */ GLboolean EG_is_reduction_opcode(PVSDWORD* dest) { if (dest->dst.op3 == 0) @@ -270,6 +271,7 @@ GLboolean EG_is_reduction_opcode(PVSDWORD* dest) } return GL_FALSE; } +#endif GLuint GetSurfaceFormat(GLenum eType, GLuint nChannels, GLuint * pClient_size) { diff --git a/src/mesa/drivers/dri/r600/r700_chip.c b/src/mesa/drivers/dri/r600/r700_chip.c index 4ec2845ab44..7980c449e02 100644 --- a/src/mesa/drivers/dri/r600/r700_chip.c +++ b/src/mesa/drivers/dri/r600/r700_chip.c @@ -249,6 +249,7 @@ static void r700SendVTXState(struct gl_context *ctx, struct radeon_state_atom *a struct r700_vertex_program *vp = context->selected_vp; unsigned int i, j = 0; BATCH_LOCALS(&context->radeon); + (void) b_l_rmesa; /* silence unused var warning */ radeon_print(RADEON_STATE, RADEON_VERBOSE, "%s\n", __func__); if (context->radeon.tcl.aos_count == 0) diff --git a/src/mesa/drivers/dri/r600/r700_render.c b/src/mesa/drivers/dri/r600/r700_render.c index bb14a239b77..bb09980ed88 100644 --- a/src/mesa/drivers/dri/r600/r700_render.c +++ b/src/mesa/drivers/dri/r600/r700_render.c @@ -580,6 +580,7 @@ static void r700ConvertAttrib(struct gl_context *ctx, int count, } } +#if 0 /* unused */ static void r700AlignDataToDword(struct gl_context *ctx, const struct gl_client_array *input, int count, @@ -621,6 +622,7 @@ static void r700AlignDataToDword(struct gl_context *ctx, attr->stride = dst_stride; } +#endif static void r700SetupStreams(struct gl_context *ctx, const struct gl_client_array *input[], int count) { From 482a64dcf1be1331a9459fdc81dd846f698be7d5 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Mon, 11 Apr 2011 21:23:14 -0600 Subject: [PATCH 246/420] configs: add r600 dir to DRI_DIRS --- configs/linux-dri | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configs/linux-dri b/configs/linux-dri index 22190bfc64f..7ee007e3527 100644 --- a/configs/linux-dri +++ b/configs/linux-dri @@ -63,7 +63,7 @@ GALLIUM_WINSYS_DIRS = sw sw/xlib drm/vmware drm/intel drm/i965 GALLIUM_TARGET_DIRS = GALLIUM_STATE_TRACKERS_DIRS = egl -DRI_DIRS = i810 i915 i965 mach64 mga r128 r200 r300 radeon \ +DRI_DIRS = i810 i915 i965 mach64 mga r128 r200 r300 r600 radeon \ savage sis tdfx unichrome swrast INTEL_LIBS = `pkg-config --libs libdrm_intel` From 847f991a87b9549eb89a521edb7cd149005006bb Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Mon, 11 Apr 2011 21:29:06 -0600 Subject: [PATCH 247/420] ir_to_mesa: silence signed/unsigned comparison warnings --- src/mesa/program/ir_to_mesa.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mesa/program/ir_to_mesa.cpp b/src/mesa/program/ir_to_mesa.cpp index 107bfc7957e..3c9b9733832 100644 --- a/src/mesa/program/ir_to_mesa.cpp +++ b/src/mesa/program/ir_to_mesa.cpp @@ -757,7 +757,7 @@ ir_to_mesa_visitor::visit(ir_variable *ir) * of the type. However, this had better match the number of state * elements that we're going to copy into the new temporary. */ - assert(ir->num_state_slots == type_size(ir->type)); + assert((int) ir->num_state_slots == type_size(ir->type)); storage = new(mem_ctx) variable_storage(ir, PROGRAM_TEMPORARY, this->next_temp); @@ -788,7 +788,7 @@ ir_to_mesa_visitor::visit(ir_variable *ir) } if (storage->file == PROGRAM_TEMPORARY && - dst.index != storage->index + ir->num_state_slots) { + dst.index != storage->index + (int) ir->num_state_slots) { fail_link(this->shader_program, "failed to load builtin uniform `%s' (%d/%d regs loaded)\n", ir->name, dst.index - storage->index, From e338a1b0cea94f8c57968b01eebd795c6c8ce74e Mon Sep 17 00:00:00 2001 From: Hans de Goede Date: Sun, 10 Apr 2011 22:21:03 +0200 Subject: [PATCH 248/420] texstore: fix regression stricter check for memcpy path for unorm88 and unorm1616 According to https://bugs.freedesktop.org/show_bug.cgi?id=34280 commit 5d1387b2da3626326410804026f8b92f1a121fdc causes the font corruption problems people have been seeing under various apps and gnome-shell on r200 cards. This commit changed (loosened) the check for using the memcpy path in the former al88 / al1616 texstore functions, which are now also used to store rg texures. This patch restores the old strict check in case of al textures. I've no idea why this fixes things, since I don't know the code in question at all. But after seeing the bisect in bfdo34280 point to this commit, I gave this fix a try and it fixes the font issues seen on r200 cards. [airlied: r200 has no native working A8, so it does an internal storage format of AL88 however srcFormat == internalFormat == ALPHA when we get to this point, so it copies, but it wants to store into an AL88 not ALPHA so fails, I'll also push a piglit test for this on r200]. Many thanks to Nicolas Kaiser who did all the hard work of tracking this down! Signed-off-by: Hans de Goede Signed-off-by: Dave Airlie --- src/mesa/main/texstore.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/mesa/main/texstore.c b/src/mesa/main/texstore.c index 13fae3bf98c..87cb327d2c1 100644 --- a/src/mesa/main/texstore.c +++ b/src/mesa/main/texstore.c @@ -2186,8 +2186,11 @@ _mesa_texstore_unorm88(TEXSTORE_PARAMS) if (!ctx->_ImageTransferState && !srcPacking->SwapBytes && - (dstFormat == MESA_FORMAT_AL88 || dstFormat == MESA_FORMAT_RG88) && - baseInternalFormat == srcFormat && + ((dstFormat == MESA_FORMAT_AL88 && + baseInternalFormat == GL_LUMINANCE_ALPHA && + srcFormat == GL_LUMINANCE_ALPHA) || + (dstFormat == MESA_FORMAT_RG88 && + baseInternalFormat == srcFormat)) && srcType == GL_UNSIGNED_BYTE && littleEndian) { /* simple memcpy path */ @@ -2305,8 +2308,11 @@ _mesa_texstore_unorm1616(TEXSTORE_PARAMS) if (!ctx->_ImageTransferState && !srcPacking->SwapBytes && - (dstFormat == MESA_FORMAT_AL1616 || dstFormat == MESA_FORMAT_RG1616) && - baseInternalFormat == srcFormat && + ((dstFormat == MESA_FORMAT_AL1616 && + baseInternalFormat == GL_LUMINANCE_ALPHA && + srcFormat == GL_LUMINANCE_ALPHA) || + (dstFormat == MESA_FORMAT_RG1616 && + baseInternalFormat == srcFormat)) && srcType == GL_UNSIGNED_SHORT && littleEndian) { /* simple memcpy path */ From 6b95cfb0de1bcd680679a20d6ecc32b42e5d1546 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Thu, 7 Apr 2011 16:54:37 +0100 Subject: [PATCH 249/420] svga: Rebind framebuffer and tss bindings strictly when necessary. The earlier change to ensure rendertargets and textures are always rebound at every command buffer start had the downside of making successive flushes no longer no-ops, as a command buffer with merely the rebinding commands were being unnecessarily sent to the vGPU. This change only re-emits the bindings when necessary, by keeping track of the need to rebind outside of the dirty state update mechanism. --- src/gallium/drivers/svga/svga_context.c | 23 ++++--------------- src/gallium/drivers/svga/svga_context.h | 6 ++++- src/gallium/drivers/svga/svga_draw.c | 14 +++++++++++ src/gallium/drivers/svga/svga_pipe_clear.c | 7 ++++++ .../drivers/svga/svga_state_framebuffer.c | 10 +++++--- src/gallium/drivers/svga/svga_state_tss.c | 11 ++++++--- 6 files changed, 45 insertions(+), 26 deletions(-) diff --git a/src/gallium/drivers/svga/svga_context.c b/src/gallium/drivers/svga/svga_context.c index 4782b4bf70e..dbbc249258d 100644 --- a/src/gallium/drivers/svga/svga_context.c +++ b/src/gallium/drivers/svga/svga_context.c @@ -204,7 +204,6 @@ void svga_context_flush( struct svga_context *svga, { struct svga_screen *svgascreen = svga_screen(svga->pipe.screen); struct pipe_fence_handle *fence = NULL; - enum pipe_error ret; svga->curr.nr_fbs = 0; @@ -219,25 +218,11 @@ void svga_context_flush( struct svga_context *svga, svga_screen_cache_flush(svgascreen, fence); - /* To force the reemission of rendertargets and texture bindings at - * the beginning of every command buffer. + /* To force the re-emission of rendertargets and texture sampler bindings on + * the next command buffer. */ - svga->dirty |= SVGA_NEW_COMMAND_BUFFER; - - /* - * We must reemit the surface bindings here, because svga_update_state - * will always flush the primitives before processing the - * SVGA_NEW_COMMAND_BUFFER state change. - * - * TODO: Refactor this. - */ - ret = svga_reemit_framebuffer_bindings(svga); - assert(ret == PIPE_OK); - - ret = svga_reemit_tss_bindings(svga); - assert(ret == PIPE_OK); - - svga->dirty &= ~SVGA_NEW_COMMAND_BUFFER; + svga->rebind.rendertargets = TRUE; + svga->rebind.texture_samplers = TRUE; if (SVGA_DEBUG & DEBUG_SYNC) { if (fence) diff --git a/src/gallium/drivers/svga/svga_context.h b/src/gallium/drivers/svga/svga_context.h index 7b36a3606e0..eca529d262e 100644 --- a/src/gallium/drivers/svga/svga_context.h +++ b/src/gallium/drivers/svga/svga_context.h @@ -358,6 +358,11 @@ struct svga_context struct svga_state curr; /* state from the state tracker */ unsigned dirty; /* statechanges since last update_state() */ + struct { + unsigned rendertargets:1; + unsigned texture_samplers:1; + } rebind; + struct u_upload_mgr *upload_ib; struct u_upload_mgr *upload_vb; struct svga_hwtnl *hwtnl; @@ -402,7 +407,6 @@ struct svga_context #define SVGA_NEW_ZERO_STRIDE 0x2000000 #define SVGA_NEW_TEXTURE_FLAGS 0x4000000 #define SVGA_NEW_STENCIL_REF 0x8000000 -#define SVGA_NEW_COMMAND_BUFFER 0x10000000 diff --git a/src/gallium/drivers/svga/svga_draw.c b/src/gallium/drivers/svga/svga_draw.c index 2c873a0f7ac..d8af615ede1 100644 --- a/src/gallium/drivers/svga/svga_draw.c +++ b/src/gallium/drivers/svga/svga_draw.c @@ -170,6 +170,20 @@ svga_hwtnl_flush( struct svga_hwtnl *hwtnl ) ib_handle[i] = handle; } + if (svga->rebind.rendertargets) { + ret = svga_reemit_framebuffer_bindings(svga); + if (ret != PIPE_OK) { + return ret; + } + } + + if (svga->rebind.texture_samplers) { + ret = svga_reemit_tss_bindings(svga); + if (ret != PIPE_OK) { + return ret; + } + } + SVGA_DBG(DEBUG_DMA, "draw to sid %p, %d prims\n", svga->curr.framebuffer.cbufs[0] ? svga_surface(svga->curr.framebuffer.cbufs[0])->handle : NULL, diff --git a/src/gallium/drivers/svga/svga_pipe_clear.c b/src/gallium/drivers/svga/svga_pipe_clear.c index 41f239c1a85..b288c3eb2a6 100644 --- a/src/gallium/drivers/svga/svga_pipe_clear.c +++ b/src/gallium/drivers/svga/svga_pipe_clear.c @@ -52,6 +52,13 @@ try_clear(struct svga_context *svga, if (ret) return ret; + if (svga->rebind.rendertargets) { + ret = svga_reemit_framebuffer_bindings(svga); + if (ret != PIPE_OK) { + return ret; + } + } + if ((buffers & PIPE_CLEAR_COLOR) && fb->cbufs[0]) { flags |= SVGA3D_CLEAR_COLOR; util_pack_color(rgba, PIPE_FORMAT_B8G8R8A8_UNORM, &uc); diff --git a/src/gallium/drivers/svga/svga_state_framebuffer.c b/src/gallium/drivers/svga/svga_state_framebuffer.c index 47bdc253d7b..cc4819431ad 100644 --- a/src/gallium/drivers/svga/svga_state_framebuffer.c +++ b/src/gallium/drivers/svga/svga_state_framebuffer.c @@ -43,7 +43,7 @@ static int emit_framebuffer( struct svga_context *svga, { const struct pipe_framebuffer_state *curr = &svga->curr.framebuffer; struct pipe_framebuffer_state *hw = &svga->state.hw_clear.framebuffer; - boolean reemit = !!(dirty & SVGA_NEW_COMMAND_BUFFER); + boolean reemit = svga->rebind.rendertargets; unsigned i; enum pipe_error ret; @@ -88,6 +88,7 @@ static int emit_framebuffer( struct svga_context *svga, pipe_surface_reference(&hw->zsbuf, curr->zsbuf); } + svga->rebind.rendertargets = FALSE; return 0; } @@ -108,6 +109,8 @@ svga_reemit_framebuffer_bindings(struct svga_context *svga) unsigned i; enum pipe_error ret; + assert(svga->rebind.rendertargets); + for (i = 0; i < MIN2(PIPE_MAX_COLOR_BUFS, 8); ++i) { if (hw->cbufs[i]) { ret = SVGA3D_SetRenderTarget(svga->swc, SVGA3D_RT_COLOR0 + i, hw->cbufs[i]); @@ -138,6 +141,8 @@ svga_reemit_framebuffer_bindings(struct svga_context *svga) } } + svga->rebind.rendertargets = FALSE; + return PIPE_OK; } @@ -145,8 +150,7 @@ svga_reemit_framebuffer_bindings(struct svga_context *svga) struct svga_tracked_state svga_hw_framebuffer = { "hw framebuffer state", - SVGA_NEW_FRAME_BUFFER | - SVGA_NEW_COMMAND_BUFFER, + SVGA_NEW_FRAME_BUFFER, emit_framebuffer }; diff --git a/src/gallium/drivers/svga/svga_state_tss.c b/src/gallium/drivers/svga/svga_state_tss.c index c502506b93b..8b11a2a425e 100644 --- a/src/gallium/drivers/svga/svga_state_tss.c +++ b/src/gallium/drivers/svga/svga_state_tss.c @@ -66,7 +66,7 @@ static int update_tss_binding(struct svga_context *svga, unsigned dirty ) { - boolean reemit = !!(dirty & SVGA_NEW_COMMAND_BUFFER); + boolean reemit = svga->rebind.texture_samplers; unsigned i; unsigned count = MAX2( svga->curr.num_sampler_views, svga->state.hw_draw.num_views ); @@ -159,6 +159,8 @@ update_tss_binding(struct svga_context *svga, SVGA_FIFOCommitAll( svga->swc ); } + svga->rebind.texture_samplers = FALSE; + return 0; fail: @@ -181,6 +183,8 @@ svga_reemit_tss_bindings(struct svga_context *svga) enum pipe_error ret; struct bind_queue queue; + assert(svga->rebind.texture_samplers); + queue.bind_count = 0; for (i = 0; i < svga->state.hw_draw.num_views; i++) { @@ -220,6 +224,8 @@ svga_reemit_tss_bindings(struct svga_context *svga) SVGA_FIFOCommitAll(svga->swc); } + svga->rebind.texture_samplers = FALSE; + return PIPE_OK; } @@ -227,8 +233,7 @@ svga_reemit_tss_bindings(struct svga_context *svga) struct svga_tracked_state svga_hw_tss_binding = { "texture binding emit", SVGA_NEW_TEXTURE_BINDING | - SVGA_NEW_SAMPLER | - SVGA_NEW_COMMAND_BUFFER, + SVGA_NEW_SAMPLER, update_tss_binding }; From b5829c0d6444a9eb25738c9b7f0bab8b667c8e0a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Thu, 7 Apr 2011 18:20:38 +0100 Subject: [PATCH 250/420] st/wgl: Fix debug output format specifiers of stw_framebuffer_get_size(). --- src/gallium/state_trackers/wgl/stw_framebuffer.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/gallium/state_trackers/wgl/stw_framebuffer.c b/src/gallium/state_trackers/wgl/stw_framebuffer.c index 733222aa21c..670e542cb4f 100644 --- a/src/gallium/state_trackers/wgl/stw_framebuffer.c +++ b/src/gallium/state_trackers/wgl/stw_framebuffer.c @@ -150,13 +150,13 @@ stw_framebuffer_get_size( struct stw_framebuffer *fb ) #if 0 debug_printf("\n"); - debug_printf("%s: client_position = (%i, %i)\n", + debug_printf("%s: client_position = (%li, %li)\n", __FUNCTION__, client_pos.x, client_pos.y); - debug_printf("%s: window_rect = (%i, %i) - (%i, %i)\n", + debug_printf("%s: window_rect = (%li, %li) - (%li, %li)\n", __FUNCTION__, window_rect.left, window_rect.top, window_rect.right, window_rect.bottom); - debug_printf("%s: client_rect = (%i, %i) - (%i, %i)\n", + debug_printf("%s: client_rect = (%li, %li) - (%li, %li)\n", __FUNCTION__, fb->client_rect.left, fb->client_rect.top, fb->client_rect.right, fb->client_rect.bottom); From 16d42af618aa6250bedc7e66e0e2c0b061cc6e99 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Thu, 7 Apr 2011 19:15:55 +0100 Subject: [PATCH 251/420] st/wgl: Prevent spurious framebuffer sizes when the window is minimized. When the window is minimized GetClientRect will return zeros. Instead of creating a 1x1 framebuffer, simply preserve the current window size, until the window is restored or maximized again. --- .../state_trackers/wgl/stw_framebuffer.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/src/gallium/state_trackers/wgl/stw_framebuffer.c b/src/gallium/state_trackers/wgl/stw_framebuffer.c index 670e542cb4f..d8b1440a688 100644 --- a/src/gallium/state_trackers/wgl/stw_framebuffer.c +++ b/src/gallium/state_trackers/wgl/stw_framebuffer.c @@ -112,7 +112,7 @@ stw_framebuffer_release( static INLINE void stw_framebuffer_get_size( struct stw_framebuffer *fb ) { - unsigned width, height; + LONG width, height; RECT client_rect; RECT window_rect; POINT client_pos; @@ -126,10 +126,17 @@ stw_framebuffer_get_size( struct stw_framebuffer *fb ) width = client_rect.right - client_rect.left; height = client_rect.bottom - client_rect.top; - if(width < 1) - width = 1; - if(height < 1) - height = 1; + if (width <= 0 || height <= 0) { + /* + * When the window is minimized GetClientRect will return zeros. Simply + * preserve the current window size, until the window is restored or + * maximized again. + */ + + assert(width == 0 && height == 0); + + return; + } if(width != fb->width || height != fb->height) { fb->must_resize = TRUE; From b27f206b0cc9bf31bff6dd1abe66c4f21f3de21e Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Tue, 12 Apr 2011 21:20:48 +1000 Subject: [PATCH 252/420] nouveau_vieux: fix build since sampler objects merge --- src/mesa/drivers/dri/nouveau/nv04_state_tex.c | 8 ++++---- src/mesa/drivers/dri/nouveau/nv10_state_tex.c | 8 ++++---- src/mesa/drivers/dri/nouveau/nv20_state_tex.c | 8 ++++---- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/mesa/drivers/dri/nouveau/nv04_state_tex.c b/src/mesa/drivers/dri/nouveau/nv04_state_tex.c index 6c96e580013..648d6b18cf5 100644 --- a/src/mesa/drivers/dri/nouveau/nv04_state_tex.c +++ b/src/mesa/drivers/dri/nouveau/nv04_state_tex.c @@ -82,11 +82,11 @@ nv04_emit_tex_obj(struct gl_context *ctx, int emit) if (t->Sampler.MinFilter != GL_NEAREST && t->Sampler.MinFilter != GL_LINEAR) { - lod_max = CLAMP(MIN2(t->MaxLod, t->_MaxLambda), + lod_max = CLAMP(MIN2(t->Sampler.MaxLod, t->_MaxLambda), 0, 15) + 1; lod_bias = CLAMP(ctx->Texture.Unit[i].LodBias + - t->LodBias, -16, 15) * 8; + t->Sampler.LodBias, -16, 15) * 8; } format |= nvgl_wrap_mode(t->Sampler.WrapT) << 28 | @@ -96,9 +96,9 @@ nv04_emit_tex_obj(struct gl_context *ctx, int emit) lod_max << 12 | get_tex_format(ti); - filter |= log2i(t->MaxAnisotropy) << 31 | + filter |= log2i(t->Sampler.MaxAnisotropy) << 31 | nvgl_filter_mode(t->Sampler.MagFilter) << 28 | - log2i(t->MaxAnisotropy) << 27 | + log2i(t->Sampler.MaxAnisotropy) << 27 | nvgl_filter_mode(t->Sampler.MinFilter) << 24 | (lod_bias & 0xff) << 16; diff --git a/src/mesa/drivers/dri/nouveau/nv10_state_tex.c b/src/mesa/drivers/dri/nouveau/nv10_state_tex.c index 1d98b1970ef..620a686aea0 100644 --- a/src/mesa/drivers/dri/nouveau/nv10_state_tex.c +++ b/src/mesa/drivers/dri/nouveau/nv10_state_tex.c @@ -183,7 +183,7 @@ nv10_emit_tex_obj(struct gl_context *ctx, int emit) | nvgl_filter_mode(t->Sampler.MinFilter) << 24; tx_enable = NV10_3D_TEX_ENABLE_ENABLE - | log2i(t->MaxAnisotropy) << 4; + | log2i(t->Sampler.MaxAnisotropy) << 4; if (t->Target == GL_TEXTURE_RECTANGLE) { BEGIN_RING(chan, celsius, NV10_3D_TEX_NPOT_PITCH(i), 1); @@ -198,9 +198,9 @@ nv10_emit_tex_obj(struct gl_context *ctx, int emit) if (t->Sampler.MinFilter != GL_NEAREST && t->Sampler.MinFilter != GL_LINEAR) { - int lod_min = t->MinLod; - int lod_max = MIN2(t->MaxLod, t->_MaxLambda); - int lod_bias = t->LodBias + int lod_min = t->Sampler.MinLod; + int lod_max = MIN2(t->Sampler.MaxLod, t->_MaxLambda); + int lod_bias = t->Sampler.LodBias + ctx->Texture.Unit[i].LodBias; lod_max = CLAMP(lod_max, 0, 15); diff --git a/src/mesa/drivers/dri/nouveau/nv20_state_tex.c b/src/mesa/drivers/dri/nouveau/nv20_state_tex.c index fdbfdf42595..eab74aed5c2 100644 --- a/src/mesa/drivers/dri/nouveau/nv20_state_tex.c +++ b/src/mesa/drivers/dri/nouveau/nv20_state_tex.c @@ -195,7 +195,7 @@ nv20_emit_tex_obj(struct gl_context *ctx, int emit) | 2 << 12; tx_enable = NV20_3D_TEX_ENABLE_ENABLE - | log2i(t->MaxAnisotropy) << 4; + | log2i(t->Sampler.MaxAnisotropy) << 4; if (t->Target == GL_TEXTURE_RECTANGLE) { BEGIN_RING(chan, kelvin, NV20_3D_TEX_NPOT_PITCH(i), 1); @@ -210,9 +210,9 @@ nv20_emit_tex_obj(struct gl_context *ctx, int emit) if (t->Sampler.MinFilter != GL_NEAREST && t->Sampler.MinFilter != GL_LINEAR) { - int lod_min = t->MinLod; - int lod_max = MIN2(t->MaxLod, t->_MaxLambda); - int lod_bias = t->LodBias + int lod_min = t->Sampler.MinLod; + int lod_max = MIN2(t->Sampler.MaxLod, t->_MaxLambda); + int lod_bias = t->Sampler.LodBias + ctx->Texture.Unit[i].LodBias; lod_max = CLAMP(lod_max, 0, 15); From f05751aa2af1a8ec83c2d110385aab1b7e735238 Mon Sep 17 00:00:00 2001 From: Benjamin Franzke Date: Wed, 16 Mar 2011 13:49:38 +0100 Subject: [PATCH 253/420] egl/wayland: Update to per-surface frame events --- src/egl/drivers/dri2/platform_wayland.c | 5 +++-- src/gallium/state_trackers/egl/wayland/native_wayland.c | 6 +++--- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/egl/drivers/dri2/platform_wayland.c b/src/egl/drivers/dri2/platform_wayland.c index 6969c137da8..0cc20bbc0bf 100644 --- a/src/egl/drivers/dri2/platform_wayland.c +++ b/src/egl/drivers/dri2/platform_wayland.c @@ -429,7 +429,7 @@ wayland_create_buffer(struct dri2_egl_surface *dri2_surf, __DRIbuffer *buffer) } static void -wayland_frame_callback(void *data, uint32_t time) +wayland_frame_callback(struct wl_surface *surface, void *data, uint32_t time) { struct dri2_egl_surface *dri2_surf = data; @@ -459,7 +459,8 @@ dri2_swap_buffers(_EGLDriver *drv, _EGLDisplay *disp, _EGLSurface *draw) dri2_surf->block_swap_buffers = EGL_TRUE; wl_display_frame_callback(dri2_dpy->wl_dpy->display, - wayland_frame_callback, dri2_surf); + dri2_surf->wl_win->surface, + wayland_frame_callback, dri2_surf); if (dri2_surf->type == DRI2_WINDOW_SURFACE) { pointer_swap( diff --git a/src/gallium/state_trackers/egl/wayland/native_wayland.c b/src/gallium/state_trackers/egl/wayland/native_wayland.c index 068c3cd7c8e..fd35b45373d 100644 --- a/src/gallium/state_trackers/egl/wayland/native_wayland.c +++ b/src/gallium/state_trackers/egl/wayland/native_wayland.c @@ -280,7 +280,7 @@ wayland_surface_validate(struct native_surface *nsurf, uint attachment_mask, } static void -wayland_frame_callback(void *data, uint32_t time) +wayland_frame_callback(struct wl_surface *surf, void *data, uint32_t time) { struct wayland_surface *surface = data; @@ -307,8 +307,8 @@ wayland_surface_swap_buffers(struct native_surface *nsurf) wl_display_iterate(display->dpy->display, WL_DISPLAY_READABLE); surface->block_swap_buffers = TRUE; - wl_display_frame_callback(display->dpy->display, wayland_frame_callback, - surface); + wl_display_frame_callback(display->dpy->display, surface->win->surface, + wayland_frame_callback, surface); if (surface->type == WL_WINDOW_SURFACE) { resource_surface_swap_buffers(surface->rsurf, From f703ba8c42e924ee6d5e4308c3888e434d8ba98c Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Tue, 12 Apr 2011 19:13:22 +0100 Subject: [PATCH 254/420] Revert "i965: Reinstate max-index paranoia" This reverts commit b4cbd2b312d53a50603e2cda925711bc9def4517. It looked like a safe sanity check. It missed the issue of the start of the buffer not being at 0, but even that was not enough to explain why setting the max vertex index caused glyphs to be dropped from the game 'Achron'. Instead, the issue appears to be related to the use of the vertex bias and so we would need to re-emit the max-index every time we adjusted the bias, so re-emitting the relocations and defeating the original optimisation. Reported-and-tested-by: Thomas Jones Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=35163 Signed-off-by: Chris Wilson --- src/mesa/drivers/dri/i965/brw_draw_upload.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mesa/drivers/dri/i965/brw_draw_upload.c b/src/mesa/drivers/dri/i965/brw_draw_upload.c index f1d00693168..9389eb6733f 100644 --- a/src/mesa/drivers/dri/i965/brw_draw_upload.c +++ b/src/mesa/drivers/dri/i965/brw_draw_upload.c @@ -575,7 +575,7 @@ static void brw_emit_vertices(struct brw_context *brw) if (intel->gen >= 5) { OUT_RELOC(buffer->bo, I915_GEM_DOMAIN_VERTEX, 0, buffer->bo->size - 1); } else - OUT_BATCH(buffer->bo->size / buffer->stride); + OUT_BATCH(0); OUT_BATCH(0); /* Instance data step rate */ brw->vb.current_buffers[i].handle = buffer->bo->handle; From 35b3f597bd1729da4483857cc0e88e81fb2a2419 Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Mon, 11 Apr 2011 11:00:03 -0700 Subject: [PATCH 255/420] i965: Never enable the GS on Gen6. Prior to Gen6, we use the GS for breaking down quads, quad-strips, and line loops. On Gen6, earlier stages already take care of this, so we never need the GS. Since this code is likely completely untested, remove it for now. We can write new code when enabling real geometry shaders. Signed-off-by: Kenneth Graunke Reviewed-by: Ian Romanick Reviewed-by: Eric Anholt --- src/mesa/drivers/dri/i965/gen6_gs_state.c | 48 ++++++++--------------- 1 file changed, 16 insertions(+), 32 deletions(-) diff --git a/src/mesa/drivers/dri/i965/gen6_gs_state.c b/src/mesa/drivers/dri/i965/gen6_gs_state.c index 7296c7cd1b0..c1d0a739394 100644 --- a/src/mesa/drivers/dri/i965/gen6_gs_state.c +++ b/src/mesa/drivers/dri/i965/gen6_gs_state.c @@ -44,38 +44,22 @@ upload_gs_state(struct brw_context *brw) OUT_BATCH(0); ADVANCE_BATCH(); - if (brw->gs.prog_bo) { - BEGIN_BATCH(7); - OUT_BATCH(_3DSTATE_GS << 16 | (7 - 2)); - OUT_RELOC(brw->gs.prog_bo, I915_GEM_DOMAIN_INSTRUCTION, 0, 0); - OUT_BATCH(GEN6_GS_SPF_MODE | - (0 << GEN6_GS_SAMPLER_COUNT_SHIFT) | - (0 << GEN6_GS_BINDING_TABLE_ENTRY_COUNT_SHIFT)); - OUT_BATCH(0); /* scratch space base offset */ - OUT_BATCH((1 << GEN6_GS_DISPATCH_START_GRF_SHIFT) | - (brw->gs.prog_data->urb_read_length << GEN6_GS_URB_READ_LENGTH_SHIFT) | - (0 << GEN6_GS_URB_ENTRY_READ_OFFSET_SHIFT)); - OUT_BATCH((0 << GEN6_GS_MAX_THREADS_SHIFT) | - GEN6_GS_STATISTICS_ENABLE | - GEN6_GS_RENDERING_ENABLE); - OUT_BATCH(GEN6_GS_ENABLE); - ADVANCE_BATCH(); - } else { - BEGIN_BATCH(7); - OUT_BATCH(_3DSTATE_GS << 16 | (7 - 2)); - OUT_BATCH(0); /* prog_bo */ - OUT_BATCH((0 << GEN6_GS_SAMPLER_COUNT_SHIFT) | - (0 << GEN6_GS_BINDING_TABLE_ENTRY_COUNT_SHIFT)); - OUT_BATCH(0); /* scratch space base offset */ - OUT_BATCH((1 << GEN6_GS_DISPATCH_START_GRF_SHIFT) | - (0 << GEN6_GS_URB_READ_LENGTH_SHIFT) | - (0 << GEN6_GS_URB_ENTRY_READ_OFFSET_SHIFT)); - OUT_BATCH((0 << GEN6_GS_MAX_THREADS_SHIFT) | - GEN6_GS_STATISTICS_ENABLE | - GEN6_GS_RENDERING_ENABLE); - OUT_BATCH(0); - ADVANCE_BATCH(); - } + // GS should never be used on Gen6. Disable it. + assert(brw->gs.prog_bo == NULL); + BEGIN_BATCH(7); + OUT_BATCH(_3DSTATE_GS << 16 | (7 - 2)); + OUT_BATCH(0); /* prog_bo */ + OUT_BATCH((0 << GEN6_GS_SAMPLER_COUNT_SHIFT) | + (0 << GEN6_GS_BINDING_TABLE_ENTRY_COUNT_SHIFT)); + OUT_BATCH(0); /* scratch space base offset */ + OUT_BATCH((1 << GEN6_GS_DISPATCH_START_GRF_SHIFT) | + (0 << GEN6_GS_URB_READ_LENGTH_SHIFT) | + (0 << GEN6_GS_URB_ENTRY_READ_OFFSET_SHIFT)); + OUT_BATCH((0 << GEN6_GS_MAX_THREADS_SHIFT) | + GEN6_GS_STATISTICS_ENABLE | + GEN6_GS_RENDERING_ENABLE); + OUT_BATCH(0); + ADVANCE_BATCH(); } const struct brw_tracked_state gen6_gs_state = { From 3f7318c1b8d2ad4f4aef66362cdb7b9e8dc89eac Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Tue, 12 Apr 2011 15:21:21 -0700 Subject: [PATCH 256/420] i965: Add comments about URB size units and limits. Signed-off-by: Kenneth Graunke Reviewed-by: Ian Romanick Acked-by: Chris Wilson --- src/mesa/drivers/dri/i965/brw_context.h | 8 ++++---- src/mesa/drivers/dri/i965/brw_vs_emit.c | 6 ++++++ 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_context.h b/src/mesa/drivers/dri/i965/brw_context.h index ab0c78ff8f8..f3312360213 100644 --- a/src/mesa/drivers/dri/i965/brw_context.h +++ b/src/mesa/drivers/dri/i965/brw_context.h @@ -555,12 +555,12 @@ struct brw_context GLuint nr_sf_entries; GLuint nr_cs_entries; - /* gen6 */ + /* gen6: + * The length of each URB entry owned by the VS (or GS), as + * a number of 1024-bit (128-byte) rows. Should be >= 1. + */ GLuint vs_size; /* GLuint gs_size; */ -/* GLuint clip_size; */ -/* GLuint sf_size; */ -/* GLuint cs_size; */ GLuint vs_start; GLuint gs_start; diff --git a/src/mesa/drivers/dri/i965/brw_vs_emit.c b/src/mesa/drivers/dri/i965/brw_vs_emit.c index acacf374b75..96150ecc377 100644 --- a/src/mesa/drivers/dri/i965/brw_vs_emit.c +++ b/src/mesa/drivers/dri/i965/brw_vs_emit.c @@ -437,8 +437,14 @@ static void brw_vs_alloc_regs( struct brw_vs_compile *c ) if (c->key.nr_userclip) header_regs += 2; + /* Each attribute is 16 bytes (1 vec4), so dividing by 8 gives us the + * number of 128-byte (1024-bit) units. + */ c->prog_data.urb_entry_size = (attributes_in_vue + header_regs + 7) / 8; } else if (intel->gen == 5) + /* Each attribute is 16 bytes (1 vec4), so dividing by 4 gives us the + * number of 64-byte (512-bit) units. + */ c->prog_data.urb_entry_size = (attributes_in_vue + 6 + 3) / 4; else c->prog_data.urb_entry_size = (attributes_in_vue + 2 + 3) / 4; From 9949d2a2511564226e0d68d303a53cf7d80f0c2b Mon Sep 17 00:00:00 2001 From: Chad Versace Date: Thu, 7 Apr 2011 15:44:24 -0700 Subject: [PATCH 257/420] i965: Remove unnecessary release/reference of brw_context.state.depth_region Release the old depth region and reference the new one *only* if it has changed. Reviewed-by: Kenneth Graunke Signed-off-by: Chad Versace --- src/mesa/drivers/dri/i965/brw_vtbl.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_vtbl.c b/src/mesa/drivers/dri/i965/brw_vtbl.c index 152ee141568..ce8712a260f 100644 --- a/src/mesa/drivers/dri/i965/brw_vtbl.c +++ b/src/mesa/drivers/dri/i965/brw_vtbl.c @@ -115,13 +115,11 @@ static void brw_set_draw_region( struct intel_context *intel, { struct brw_context *brw = brw_context(&intel->ctx); - /* release old color/depth regions */ - if (brw->state.depth_region != depth_region) + if (brw->state.depth_region != depth_region) { brw->state.dirty.brw |= BRW_NEW_DEPTH_BUFFER; - intel_region_release(&brw->state.depth_region); - - /* reference new color/depth regions */ - intel_region_reference(&brw->state.depth_region, depth_region); + intel_region_release(&brw->state.depth_region); + intel_region_reference(&brw->state.depth_region, depth_region); + } } From 05173c61c7cb987d08681f182ac78a1a179e02a4 Mon Sep 17 00:00:00 2001 From: Chad Versace Date: Thu, 7 Apr 2011 16:32:23 -0700 Subject: [PATCH 258/420] i965: Document brw_context.state.depth_region Reviewed-by: Kenneth Graunke Signed-off-by: Chad Versace --- src/mesa/drivers/dri/i965/brw_context.h | 21 ++++++++++++++++++++- src/mesa/drivers/dri/i965/brw_misc_state.c | 3 +++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/src/mesa/drivers/dri/i965/brw_context.h b/src/mesa/drivers/dri/i965/brw_context.h index f3312360213..4b4dfbafb1a 100644 --- a/src/mesa/drivers/dri/i965/brw_context.h +++ b/src/mesa/drivers/dri/i965/brw_context.h @@ -139,7 +139,7 @@ struct brw_context; * by any 3D rendering. */ #define BRW_NEW_BATCH 0x10000 -/** brw->depth_region updated */ +/** \see brw.state.depth_region */ #define BRW_NEW_DEPTH_BUFFER 0x20000 #define BRW_NEW_NR_WM_SURFACES 0x40000 #define BRW_NEW_NR_VS_SURFACES 0x80000 @@ -464,8 +464,27 @@ struct brw_context struct { struct brw_state_flags dirty; + /** + * \name Cached region pointers + * + * When the draw buffer is updated, often the depth buffer is not + * changed. Caching the pointer to the buffer's region allows us to + * detect when the buffer has in fact changed, and allows us to avoid + * updating the buffer's GPU state when it has not. + * + * The original of each cached pointer is an instance of + * \c intel_renderbuffer.region. + * + * \see brw_set_draw_region() + * + * \{ + */ + + /** \see struct brw_tracked_state brw_depthbuffer */ struct intel_region *depth_region; + /** \} */ + /** * List of buffers accumulated in brw_validate_state to receive * drm_intel_bo_check_aperture treatment before exec, so we can diff --git a/src/mesa/drivers/dri/i965/brw_misc_state.c b/src/mesa/drivers/dri/i965/brw_misc_state.c index 92eba8fe173..74e911b4ddb 100644 --- a/src/mesa/drivers/dri/i965/brw_misc_state.c +++ b/src/mesa/drivers/dri/i965/brw_misc_state.c @@ -284,6 +284,9 @@ static void emit_depthbuffer(struct brw_context *brw) } } +/** + * \see brw_context.state.depth_region + */ const struct brw_tracked_state brw_depthbuffer = { .dirty = { .mesa = 0, From 4d7c1871671710865be3020e0d460e0463707f14 Mon Sep 17 00:00:00 2001 From: Chad Versace Date: Sun, 27 Mar 2011 08:44:50 -0700 Subject: [PATCH 259/420] i965: Define BRW_DEPTHFORMAT_D24_UNORM_X8_UINT This depth format was added in Gen5. Reviewed-by: Kenneth Graunke Signed-off-by: Chad Versace --- src/mesa/drivers/dri/i965/brw_defines.h | 1 + 1 file changed, 1 insertion(+) diff --git a/src/mesa/drivers/dri/i965/brw_defines.h b/src/mesa/drivers/dri/i965/brw_defines.h index 6c61aefd7d3..3078504fb8b 100644 --- a/src/mesa/drivers/dri/i965/brw_defines.h +++ b/src/mesa/drivers/dri/i965/brw_defines.h @@ -147,6 +147,7 @@ #define BRW_DEPTHFORMAT_D32_FLOAT_S8X24_UINT 0 #define BRW_DEPTHFORMAT_D32_FLOAT 1 #define BRW_DEPTHFORMAT_D24_UNORM_S8_UINT 2 +#define BRW_DEPTHFORMAT_D24_UNORM_X8_UINT 3 /* GEN5 */ #define BRW_DEPTHFORMAT_D16_UNORM 5 #define BRW_FLOATING_POINT_IEEE_754 0 From d3cc3901ab67823af3aba08efc863daa22ed1408 Mon Sep 17 00:00:00 2001 From: Chad Versace Date: Thu, 7 Apr 2011 09:09:38 -0700 Subject: [PATCH 260/420] i965: Change assertion condition from implicit to explicit ... because grokking explicit assertions requires fewer neurons. In brw_misc_state.c:emit_depthbuffer, change assertion condition tiling != I915_TILING_X && tiling != I915_TILING_NONE to tiling == I915_TILING_Y Reviewed-by: Ian Romanick Reviewed-by: Kenneth Graunke Signed-off-by: Chad Versace --- src/mesa/drivers/dri/i965/brw_misc_state.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_misc_state.c b/src/mesa/drivers/dri/i965/brw_misc_state.c index 74e911b4ddb..19eea07ebc6 100644 --- a/src/mesa/drivers/dri/i965/brw_misc_state.c +++ b/src/mesa/drivers/dri/i965/brw_misc_state.c @@ -248,8 +248,7 @@ static void emit_depthbuffer(struct brw_context *brw) } assert(region->tiling != I915_TILING_X); - if (intel->gen >= 6) - assert(region->tiling != I915_TILING_NONE); + assert(intel->gen < 6 || region->tiling == I915_TILING_Y); BEGIN_BATCH(len); OUT_BATCH(_3DSTATE_DEPTH_BUFFER << 16 | (len - 2)); From 75d585e5447fb90a27e9ddb6c60f3560db1512f4 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Wed, 13 Apr 2011 07:35:25 -0600 Subject: [PATCH 261/420] mesa: fix some comments in sampler object code --- src/mesa/main/samplerobj.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/mesa/main/samplerobj.c b/src/mesa/main/samplerobj.c index 55acb6d1f5c..2d3879c06ed 100644 --- a/src/mesa/main/samplerobj.c +++ b/src/mesa/main/samplerobj.c @@ -63,7 +63,7 @@ _mesa_reference_sampler_object(struct gl_context *ctx, return; if (*ptr) { - /* Unreference the old buffer */ + /* Unreference the old sampler */ GLboolean deleteFlag = GL_FALSE; struct gl_sampler_object *oldSamp = *ptr; @@ -90,9 +90,9 @@ _mesa_reference_sampler_object(struct gl_context *ctx, /* reference new sampler */ /*_glthread_LOCK_MUTEX(samp->Mutex);*/ if (samp->RefCount == 0) { - /* this buffer's being deleted (look just above) */ + /* this sampler's being deleted (look just above) */ /* Not sure this can every really happen. Warn if it does. */ - _mesa_problem(NULL, "referencing deleted buffer object"); + _mesa_problem(NULL, "referencing deleted sampler object"); *ptr = NULL; } else { @@ -281,7 +281,7 @@ _mesa_BindSampler(GLuint unit, GLuint sampler) /** - * Check if a coordinate wrap mode is supported for the texture target. + * Check if a coordinate wrap mode is legal. * \return GL_TRUE if legal, GL_FALSE otherwise */ static GLboolean From 032a7ef0a1cb753defc11e97b11ea2e602bae5f2 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Wed, 13 Apr 2011 07:35:25 -0600 Subject: [PATCH 262/420] mesa: 80-column wrapping and whitespace fixes --- src/mesa/main/context.c | 10 ++++++---- src/mesa/main/context.h | 12 ++++++------ src/mesa/main/shared.c | 6 +++--- src/mesa/main/shared.h | 3 ++- 4 files changed, 17 insertions(+), 14 deletions(-) diff --git a/src/mesa/main/context.c b/src/mesa/main/context.c index 9eb1eacba36..8053edc23b2 100644 --- a/src/mesa/main/context.c +++ b/src/mesa/main/context.c @@ -191,7 +191,8 @@ _mesa_notifySwapBuffers(struct gl_context *ctx) * is acceptable but the actual depth type will be GLushort or GLuint as * needed. * \param stencilBits requested minimum bits per stencil buffer value - * \param accumRedBits, accumGreenBits, accumBlueBits, accumAlphaBits number of bits per color component in accum buffer. + * \param accumRedBits, accumGreenBits, accumBlueBits, accumAlphaBits number + * of bits per color component in accum buffer. * \param indexBits number of bits per pixel if \p rgbFlag is GL_FALSE * \param redBits number of bits per color component in frame buffer for RGB(A) * mode. We always use 8 in core Mesa though. @@ -200,8 +201,8 @@ _mesa_notifySwapBuffers(struct gl_context *ctx) * \param alphaBits same as above. * \param numSamples not really used. * - * \return pointer to new struct gl_config or NULL if requested parameters can't be - * met. + * \return pointer to new struct gl_config or NULL if requested parameters + * can't be met. * * \note Need to add params for level and numAuxBuffers (at least) */ @@ -1186,7 +1187,8 @@ _mesa_destroy_context( struct gl_context *ctx ) * structures. */ void -_mesa_copy_context( const struct gl_context *src, struct gl_context *dst, GLuint mask ) +_mesa_copy_context( const struct gl_context *src, struct gl_context *dst, + GLuint mask ) { if (mask & GL_ACCUM_BUFFER_BIT) { /* OK to memcpy */ diff --git a/src/mesa/main/context.h b/src/mesa/main/context.h index 33a36311c8a..a4c7ba2c54d 100644 --- a/src/mesa/main/context.h +++ b/src/mesa/main/context.h @@ -30,16 +30,16 @@ * There are three large Mesa data types/classes which are meant to be * used by device drivers: * - struct gl_context: this contains the Mesa rendering state - * - struct gl_config: this describes the color buffer (RGB vs. ci), whether or not - * there's a depth buffer, stencil buffer, etc. - * - struct gl_framebuffer: contains pointers to the depth buffer, stencil buffer, - * accum buffer and alpha buffers. + * - struct gl_config: this describes the color buffer (RGB vs. ci), whether + * or not there's a depth buffer, stencil buffer, etc. + * - struct gl_framebuffer: contains pointers to the depth buffer, stencil + * buffer, accum buffer and alpha buffers. * * These types should be encapsulated by corresponding device driver * data types. See xmesa.h and xmesaP.h for an example. * - * In OOP terms, struct gl_context, struct gl_config, and struct gl_framebuffer are base classes - * which the device driver must derive from. + * In OOP terms, struct gl_context, struct gl_config, and struct gl_framebuffer + * are base classes which the device driver must derive from. * * The following functions create and destroy these data types. */ diff --git a/src/mesa/main/shared.c b/src/mesa/main/shared.c index e470d873f70..d84f59690c5 100644 --- a/src/mesa/main/shared.c +++ b/src/mesa/main/shared.c @@ -27,8 +27,6 @@ * Shared-context state */ - - #include "imports.h" #include "mfeatures.h" #include "mtypes.h" @@ -46,6 +44,7 @@ #include "shaderobj.h" #include "syncobj.h" + /** * Allocate and initialize a shared context state structure. * Initializes the display list, texture objects and vertex programs hash @@ -403,7 +402,8 @@ free_shared_state(struct gl_context *ctx, struct gl_shared_state *shared) * \sa free_shared_state(). */ void -_mesa_release_shared_state(struct gl_context *ctx, struct gl_shared_state *shared) +_mesa_release_shared_state(struct gl_context *ctx, + struct gl_shared_state *shared) { GLint RefCount; diff --git a/src/mesa/main/shared.h b/src/mesa/main/shared.h index 768d69f6942..55516a8c37c 100644 --- a/src/mesa/main/shared.h +++ b/src/mesa/main/shared.h @@ -32,7 +32,8 @@ _mesa_alloc_shared_state(struct gl_context *ctx); void -_mesa_release_shared_state(struct gl_context *ctx, struct gl_shared_state *shared); +_mesa_release_shared_state(struct gl_context *ctx, + struct gl_shared_state *shared); #endif From 4cbb261ebaeeb16b885364810fd17d02a96a3d1b Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Wed, 13 Apr 2011 07:37:03 -0600 Subject: [PATCH 263/420] st/mesa: minor clean-ups in update_textures() --- src/mesa/state_tracker/st_atom_texture.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/mesa/state_tracker/st_atom_texture.c b/src/mesa/state_tracker/st_atom_texture.c index e5fb8f86878..19ad2e8cc4a 100644 --- a/src/mesa/state_tracker/st_atom_texture.c +++ b/src/mesa/state_tracker/st_atom_texture.c @@ -251,13 +251,15 @@ update_textures(struct st_context *st) st->state.num_textures = su + 1; /* if sampler view has changed dereference it */ - if (stObj->sampler_view) + if (stObj->sampler_view) { if (check_sampler_swizzle(stObj->sampler_view, stObj->base._Swizzle, samp->DepthMode) || (st_view_format != stObj->sampler_view->format) || - stObj->base.BaseLevel != stObj->sampler_view->u.tex.first_level) + stObj->base.BaseLevel != stObj->sampler_view->u.tex.first_level) { pipe_sampler_view_reference(&stObj->sampler_view, NULL); + } + } sampler_view = st_get_texture_sampler_view_from_stobj(stObj, pipe, samp, @@ -269,10 +271,12 @@ update_textures(struct st_context *st) cso_set_fragment_sampler_views(st->cso_context, st->state.num_textures, st->state.sampler_views); + if (st->ctx->Const.MaxVertexTextureImageUnits > 0) { + GLuint numUnits = MIN2(st->state.num_textures, + st->ctx->Const.MaxVertexTextureImageUnits); cso_set_vertex_sampler_views(st->cso_context, - MIN2(st->state.num_textures, - st->ctx->Const.MaxVertexTextureImageUnits), + numUnits, st->state.sampler_views); } } From 32aab51df5522b99ec735baa673aef553c8d8a0f Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Wed, 13 Apr 2011 09:52:16 -0600 Subject: [PATCH 264/420] svga: define SVGA3D_MAX_DRAW_PRIMITIVE_RANGES and update comments --- src/gallium/drivers/svga/include/svga3d_reg.h | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/gallium/drivers/svga/include/svga3d_reg.h b/src/gallium/drivers/svga/include/svga3d_reg.h index 77cb4533100..a527d7dcf20 100644 --- a/src/gallium/drivers/svga/include/svga3d_reg.h +++ b/src/gallium/drivers/svga/include/svga3d_reg.h @@ -968,11 +968,17 @@ typedef enum { } SVGA3dTransferType; /* - * The maximum number vertex arrays we're guaranteed to support in + * The maximum number of vertex arrays we're guaranteed to support in * SVGA_3D_CMD_DRAWPRIMITIVES. */ #define SVGA3D_MAX_VERTEX_ARRAYS 32 +/* + * The maximum number of primitive ranges we're guaranteed to support + * in SVGA_3D_CMD_DRAWPRIMITIVES. + */ +#define SVGA3D_MAX_DRAW_PRIMITIVE_RANGES 32 + /* * Identifiers for commands in the command FIFO. * @@ -1474,10 +1480,12 @@ struct { * SVGA3dCmdDrawPrimitives structure. In order, * they are: * - * 1. SVGA3dVertexDecl, quantity 'numVertexDecls' - * 2. SVGA3dPrimitiveRange, quantity 'numRanges' + * 1. SVGA3dVertexDecl, quantity 'numVertexDecls', but no more than + * SVGA3D_MAX_VERTEX_ARRAYS; + * 2. SVGA3dPrimitiveRange, quantity 'numRanges', but no more than + * SVGA3D_MAX_DRAW_PRIMITIVE_RANGES; * 3. Optionally, SVGA3dVertexDivisor, quantity 'numVertexDecls' (contains - * the frequency divisor for this the corresponding vertex decl) + * the frequency divisor for the corresponding vertex decl). */ } SVGA3dCmdDrawPrimitives; /* SVGA_3D_CMD_DRAWPRIMITIVES */ From b9c8b2a1f1b2fe2e02b314790ebdc465f0ffec6e Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Wed, 13 Apr 2011 09:50:48 -0600 Subject: [PATCH 265/420] svga: defined QSZ in terms of SVGA3D_MAX_DRAW_PRIMITIVE_RANGES --- src/gallium/drivers/svga/svga_draw_private.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/svga/svga_draw_private.h b/src/gallium/drivers/svga/svga_draw_private.h index 11afb59875b..ca658ac6745 100644 --- a/src/gallium/drivers/svga/svga_draw_private.h +++ b/src/gallium/drivers/svga/svga_draw_private.h @@ -93,7 +93,9 @@ struct index_cache { struct pipe_resource *buffer; }; -#define QSZ 32 + +/** Max number of primitives per draw call */ +#define QSZ SVGA3D_MAX_DRAW_PRIMITIVE_RANGES struct draw_cmd { struct svga_winsys_context *swc; From 487debfda56ad3855db655688186401b0dd75233 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Sat, 2 Apr 2011 20:17:17 -0700 Subject: [PATCH 266/420] glsl/opt_cpe: Kill when the assignment isn't something we recognize. A few GLES2 tests tripped over this when using array dereferences to hit channels on the LHS (see piglit test glsl-copy-propagation-vector-indexing). We wouldn't find the ir_dereference_variable, and assume that that meant that it wasn't an assignment to a scalar/vector, and thus not notice that the variable had been changed. --- src/glsl/opt_copy_propagation_elements.cpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/glsl/opt_copy_propagation_elements.cpp b/src/glsl/opt_copy_propagation_elements.cpp index 8541d9a8ee1..1ffbd4da144 100644 --- a/src/glsl/opt_copy_propagation_elements.cpp +++ b/src/glsl/opt_copy_propagation_elements.cpp @@ -161,9 +161,16 @@ ir_visitor_status ir_copy_propagation_elements_visitor::visit_leave(ir_assignment *ir) { ir_dereference_variable *lhs = ir->lhs->as_dereference_variable(); + ir_variable *var = ir->lhs->variable_referenced(); + + if (var->type->is_scalar() || var->type->is_vector()) { + kill_entry *k; + + if (lhs) + k = new(mem_ctx) kill_entry(var, ir->write_mask); + else + k = new(mem_ctx) kill_entry(var, ~0); - if (lhs && (lhs->type->is_scalar() || lhs->type->is_vector())) { - kill_entry *k = new(mem_ctx) kill_entry(lhs->var, ir->write_mask); kill(k); } From 909bd476ca65035b93399c7b95f7118b1cded3f2 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 8 Apr 2011 07:54:50 -1000 Subject: [PATCH 267/420] glsl/opt_cpe: Fix a crash when a kill kills for two reasons. Fixes glsl-copy-propagation-loop-2 when this optimization pass is re-enabled. Reported-by: David Lamparter --- src/glsl/opt_copy_propagation_elements.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/glsl/opt_copy_propagation_elements.cpp b/src/glsl/opt_copy_propagation_elements.cpp index 1ffbd4da144..a91e624cb72 100644 --- a/src/glsl/opt_copy_propagation_elements.cpp +++ b/src/glsl/opt_copy_propagation_elements.cpp @@ -390,8 +390,10 @@ ir_copy_propagation_elements_visitor::kill(kill_entry *k) if (entry->lhs == k->var) { entry->write_mask = entry->write_mask & ~k->write_mask; - if (entry->write_mask == 0) + if (entry->write_mask == 0) { entry->remove(); + continue; + } } if (entry->rhs == k->var) { entry->remove(); From 6a35cbb656e0f8a2479a63eadefb1ab85f42d490 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Sat, 2 Apr 2011 20:19:20 -0700 Subject: [PATCH 268/420] glsl/opt_cpe: Reenable opt_copy_propagation_elements.cpp pass. --- src/glsl/glsl_parser_extras.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/glsl/glsl_parser_extras.cpp b/src/glsl/glsl_parser_extras.cpp index e8881e4d60e..5bb3a6f25a3 100644 --- a/src/glsl/glsl_parser_extras.cpp +++ b/src/glsl/glsl_parser_extras.cpp @@ -768,7 +768,7 @@ do_common_optimization(exec_list *ir, bool linked, unsigned max_unroll_iteration progress = do_if_simplification(ir) || progress; progress = do_discard_simplification(ir) || progress; progress = do_copy_propagation(ir) || progress; - /*progress = do_copy_propagation_elements(ir) || progress;*/ + progress = do_copy_propagation_elements(ir) || progress; if (linked) progress = do_dead_code(ir) || progress; else From 01822706ec2c2501a2cd2431a90c56b334b79a5c Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Sat, 9 Apr 2011 15:59:20 -1000 Subject: [PATCH 269/420] glsl: Avoid cascading errors when looking for a scalar boolean and failing. By always using a boolean, we should generally avoid further complaints. The failure case I see is logic_not, where the user might understandably make the mistake of using `!' on a boolean vector (like a piglit case did recently!), and then get a further complaint that the new boolean type doesn't match the bvec it gets assigned to. Fixes invalid-logic-not-06.vert (assertion failure when the bad type ends up in an expression and ir_constant_expression gets angry). Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=33314 Reviewed-by: Kenneth Graunke Reviewed-by: Ian Romanick --- src/glsl/ast_to_hir.cpp | 124 ++++++++++++++++------------------------ 1 file changed, 48 insertions(+), 76 deletions(-) diff --git a/src/glsl/ast_to_hir.cpp b/src/glsl/ast_to_hir.cpp index 9538aa62b37..42e7b5541fe 100644 --- a/src/glsl/ast_to_hir.cpp +++ b/src/glsl/ast_to_hir.cpp @@ -848,6 +848,36 @@ do_comparison(void *mem_ctx, int operation, ir_rvalue *op0, ir_rvalue *op1) return cmp; } +/* For logical operations, we want to ensure that the operands are + * scalar booleans. If it isn't, emit an error and return a constant + * boolean to avoid triggering cascading error messages. + */ +ir_rvalue * +get_scalar_boolean_operand(exec_list *instructions, + struct _mesa_glsl_parse_state *state, + ast_expression *parent_expr, + int operand, + const char *operand_name, + bool *error_emitted) +{ + ast_expression *expr = parent_expr->subexpressions[operand]; + void *ctx = state; + ir_rvalue *val = expr->hir(instructions, state); + + if (val->type->is_boolean() && val->type->is_scalar()) + return val; + + if (!*error_emitted) { + YYLTYPE loc = expr->get_location(); + _mesa_glsl_error(&loc, state, "%s of `%s' must be scalar boolean", + operand_name, + parent_expr->operator_string(parent_expr->oper)); + *error_emitted = true; + } + + return new(ctx) ir_constant(true); +} + ir_rvalue * ast_expression::hir(exec_list *instructions, struct _mesa_glsl_parse_state *state) @@ -1079,30 +1109,14 @@ ast_expression::hir(exec_list *instructions, break; case ast_logic_and: { - op[0] = this->subexpressions[0]->hir(instructions, state); - - if (!op[0]->type->is_boolean() || !op[0]->type->is_scalar()) { - YYLTYPE loc = this->subexpressions[0]->get_location(); - - _mesa_glsl_error(& loc, state, "LHS of `%s' must be scalar boolean", - operator_string(this->oper)); - error_emitted = true; - } + op[0] = get_scalar_boolean_operand(instructions, state, this, 0, + "LHS", &error_emitted); ir_constant *op0_const = op[0]->constant_expression_value(); if (op0_const) { if (op0_const->value.b[0]) { - op[1] = this->subexpressions[1]->hir(instructions, state); - - if (!op[1]->type->is_boolean() || !op[1]->type->is_scalar()) { - YYLTYPE loc = this->subexpressions[1]->get_location(); - - _mesa_glsl_error(& loc, state, - "RHS of `%s' must be scalar boolean", - operator_string(this->oper)); - error_emitted = true; - } - result = op[1]; + result = get_scalar_boolean_operand(instructions, state, this, 1, + "RHS", &error_emitted); } else { result = op0_const; } @@ -1116,16 +1130,9 @@ ast_expression::hir(exec_list *instructions, ir_if *const stmt = new(ctx) ir_if(op[0]); instructions->push_tail(stmt); - op[1] = this->subexpressions[1]->hir(&stmt->then_instructions, state); - - if (!op[1]->type->is_boolean() || !op[1]->type->is_scalar()) { - YYLTYPE loc = this->subexpressions[1]->get_location(); - - _mesa_glsl_error(& loc, state, - "RHS of `%s' must be scalar boolean", - operator_string(this->oper)); - error_emitted = true; - } + op[1] = get_scalar_boolean_operand(&stmt->then_instructions, + state, this, 1, + "RHS", &error_emitted); ir_dereference *const then_deref = new(ctx) ir_dereference_variable(tmp); ir_assignment *const then_assign = @@ -1144,32 +1151,16 @@ ast_expression::hir(exec_list *instructions, } case ast_logic_or: { - op[0] = this->subexpressions[0]->hir(instructions, state); - - if (!op[0]->type->is_boolean() || !op[0]->type->is_scalar()) { - YYLTYPE loc = this->subexpressions[0]->get_location(); - - _mesa_glsl_error(& loc, state, "LHS of `%s' must be scalar boolean", - operator_string(this->oper)); - error_emitted = true; - } + op[0] = get_scalar_boolean_operand(instructions, state, this, 0, + "LHS", &error_emitted); ir_constant *op0_const = op[0]->constant_expression_value(); if (op0_const) { if (op0_const->value.b[0]) { result = op0_const; } else { - op[1] = this->subexpressions[1]->hir(instructions, state); - - if (!op[1]->type->is_boolean() || !op[1]->type->is_scalar()) { - YYLTYPE loc = this->subexpressions[1]->get_location(); - - _mesa_glsl_error(& loc, state, - "RHS of `%s' must be scalar boolean", - operator_string(this->oper)); - error_emitted = true; - } - result = op[1]; + result = get_scalar_boolean_operand(instructions, state, this, 1, + "RHS", &error_emitted); } type = glsl_type::bool_type; } else { @@ -1181,15 +1172,9 @@ ast_expression::hir(exec_list *instructions, ir_if *const stmt = new(ctx) ir_if(op[0]); instructions->push_tail(stmt); - op[1] = this->subexpressions[1]->hir(&stmt->else_instructions, state); - - if (!op[1]->type->is_boolean() || !op[1]->type->is_scalar()) { - YYLTYPE loc = this->subexpressions[1]->get_location(); - - _mesa_glsl_error(& loc, state, "RHS of `%s' must be scalar boolean", - operator_string(this->oper)); - error_emitted = true; - } + op[1] = get_scalar_boolean_operand(&stmt->else_instructions, + state, this, 1, + "RHS", &error_emitted); ir_dereference *const then_deref = new(ctx) ir_dereference_variable(tmp); ir_assignment *const then_assign = @@ -1218,15 +1203,8 @@ ast_expression::hir(exec_list *instructions, break; case ast_logic_not: - op[0] = this->subexpressions[0]->hir(instructions, state); - - if (!op[0]->type->is_boolean() || !op[0]->type->is_scalar()) { - YYLTYPE loc = this->subexpressions[0]->get_location(); - - _mesa_glsl_error(& loc, state, - "operand of `!' must be scalar boolean"); - error_emitted = true; - } + op[0] = get_scalar_boolean_operand(instructions, state, this, 0, + "operand", &error_emitted); result = new(ctx) ir_expression(operations[this->oper], glsl_type::bool_type, op[0], NULL); @@ -1313,20 +1291,14 @@ ast_expression::hir(exec_list *instructions, } case ast_conditional: { - op[0] = this->subexpressions[0]->hir(instructions, state); - /* From page 59 (page 65 of the PDF) of the GLSL 1.50 spec: * * "The ternary selection operator (?:). It operates on three * expressions (exp1 ? exp2 : exp3). This operator evaluates the * first expression, which must result in a scalar Boolean." */ - if (!op[0]->type->is_boolean() || !op[0]->type->is_scalar()) { - YYLTYPE loc = this->subexpressions[0]->get_location(); - - _mesa_glsl_error(& loc, state, "?: condition must be scalar boolean"); - error_emitted = true; - } + op[0] = get_scalar_boolean_operand(instructions, state, this, 0, + "condition", &error_emitted); /* The :? operator is implemented by generating an anonymous temporary * followed by an if-statement. The last instruction in each branch of From 7ec0c9789669ac88fcdd66c562e6d58281b477ce Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Sat, 9 Apr 2011 10:27:02 -1000 Subject: [PATCH 270/420] glsl: Semantically check the RHS of `&&' even when short-circuiting. We just do the AST-to-HIR processing, and only push the instructions if needed in the constant true case. Fixes glslparsertest/glsl2/logic-01.frag Reviewed-by: Kenneth Graunke Reviewed-by: Chad Versace Reviewed-by: Ian Romanick --- src/glsl/ast_to_hir.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/glsl/ast_to_hir.cpp b/src/glsl/ast_to_hir.cpp index 42e7b5541fe..d92a437cbce 100644 --- a/src/glsl/ast_to_hir.cpp +++ b/src/glsl/ast_to_hir.cpp @@ -1109,14 +1109,17 @@ ast_expression::hir(exec_list *instructions, break; case ast_logic_and: { + exec_list rhs_instructions; op[0] = get_scalar_boolean_operand(instructions, state, this, 0, "LHS", &error_emitted); + op[1] = get_scalar_boolean_operand(&rhs_instructions, state, this, 1, + "RHS", &error_emitted); ir_constant *op0_const = op[0]->constant_expression_value(); if (op0_const) { if (op0_const->value.b[0]) { - result = get_scalar_boolean_operand(instructions, state, this, 1, - "RHS", &error_emitted); + instructions->append_list(&rhs_instructions); + result = op[1]; } else { result = op0_const; } @@ -1130,10 +1133,7 @@ ast_expression::hir(exec_list *instructions, ir_if *const stmt = new(ctx) ir_if(op[0]); instructions->push_tail(stmt); - op[1] = get_scalar_boolean_operand(&stmt->then_instructions, - state, this, 1, - "RHS", &error_emitted); - + stmt->then_instructions.append_list(&rhs_instructions); ir_dereference *const then_deref = new(ctx) ir_dereference_variable(tmp); ir_assignment *const then_assign = new(ctx) ir_assignment(then_deref, op[1], NULL); From 9e04b190b5f59c5b375645f5756a6edd98a7f90c Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Sat, 9 Apr 2011 10:27:02 -1000 Subject: [PATCH 271/420] glsl: Semantically check the RHS of `||' even when short-circuiting. We just do the AST-to-HIR processing, and only push the instructions if needed in the constant false case. Fixes glslparsertest/glsl2/logic-02.frag Reviewed-by: Kenneth Graunke Reviewed-by: Chad Versace Reviewed-by: Ian Romanick --- src/glsl/ast_to_hir.cpp | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/glsl/ast_to_hir.cpp b/src/glsl/ast_to_hir.cpp index d92a437cbce..108c7c35d37 100644 --- a/src/glsl/ast_to_hir.cpp +++ b/src/glsl/ast_to_hir.cpp @@ -1151,16 +1151,18 @@ ast_expression::hir(exec_list *instructions, } case ast_logic_or: { + exec_list rhs_instructions; op[0] = get_scalar_boolean_operand(instructions, state, this, 0, "LHS", &error_emitted); + op[1] = get_scalar_boolean_operand(&rhs_instructions, state, this, 1, + "RHS", &error_emitted); ir_constant *op0_const = op[0]->constant_expression_value(); if (op0_const) { if (op0_const->value.b[0]) { result = op0_const; } else { - result = get_scalar_boolean_operand(instructions, state, this, 1, - "RHS", &error_emitted); + result = op[1]; } type = glsl_type::bool_type; } else { @@ -1172,15 +1174,12 @@ ast_expression::hir(exec_list *instructions, ir_if *const stmt = new(ctx) ir_if(op[0]); instructions->push_tail(stmt); - op[1] = get_scalar_boolean_operand(&stmt->else_instructions, - state, this, 1, - "RHS", &error_emitted); - ir_dereference *const then_deref = new(ctx) ir_dereference_variable(tmp); ir_assignment *const then_assign = new(ctx) ir_assignment(then_deref, new(ctx) ir_constant(true), NULL); stmt->then_instructions.push_tail(then_assign); + stmt->else_instructions.append_list(&rhs_instructions); ir_dereference *const else_deref = new(ctx) ir_dereference_variable(tmp); ir_assignment *const else_assign = new(ctx) ir_assignment(else_deref, op[1], NULL); From 175829f1a8ab0df7594131cc569462e45c1974ec Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Sat, 9 Apr 2011 12:54:34 -1000 Subject: [PATCH 272/420] glsl: When we've emitted a semantic error for ==, return a bool constant. This prevents later errors (including an assertion failure) from cascading the failure. Fixes invalid-equality-04.vert. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=33303 Reviewed-by: Kenneth Graunke Reviewed-by: Chad Versace --- src/glsl/ast_to_hir.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/glsl/ast_to_hir.cpp b/src/glsl/ast_to_hir.cpp index 108c7c35d37..ea20ebae114 100644 --- a/src/glsl/ast_to_hir.cpp +++ b/src/glsl/ast_to_hir.cpp @@ -1073,10 +1073,14 @@ ast_expression::hir(exec_list *instructions, error_emitted = true; } - result = do_comparison(ctx, operations[this->oper], op[0], op[1]); - type = glsl_type::bool_type; + if (error_emitted) { + result = new(ctx) ir_constant(false); + } else { + result = do_comparison(ctx, operations[this->oper], op[0], op[1]); + assert(result->type == glsl_type::bool_type); + type = glsl_type::bool_type; + } - assert(error_emitted || (result->type == glsl_type::bool_type)); break; case ast_bit_and: From 756c262756b2434efeb2c2a33a180fda0757a6e5 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Sat, 9 Apr 2011 14:57:17 -1000 Subject: [PATCH 273/420] glsl: Perform type checking on "^^" operands. We were letting any old operand through, which generally resulted in assertion failures later. Fixes array-logical-xor.vert. Reviewed-by: Kenneth Graunke Reviewed-by: Chad Versace Reviewed-by: Ian Romanick --- src/glsl/ast_to_hir.cpp | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/glsl/ast_to_hir.cpp b/src/glsl/ast_to_hir.cpp index ea20ebae114..a11bfbab887 100644 --- a/src/glsl/ast_to_hir.cpp +++ b/src/glsl/ast_to_hir.cpp @@ -1196,9 +1196,16 @@ ast_expression::hir(exec_list *instructions, } case ast_logic_xor: - op[0] = this->subexpressions[0]->hir(instructions, state); - op[1] = this->subexpressions[1]->hir(instructions, state); - + /* From page 33 (page 39 of the PDF) of the GLSL 1.10 spec: + * + * "The logical binary operators and (&&), or ( | | ), and + * exclusive or (^^). They operate only on two Boolean + * expressions and result in a Boolean expression." + */ + op[0] = get_scalar_boolean_operand(instructions, state, this, 0, "LHS", + &error_emitted); + op[1] = get_scalar_boolean_operand(instructions, state, this, 1, "RHS", + &error_emitted); result = new(ctx) ir_expression(operations[this->oper], glsl_type::bool_type, op[0], op[1]); From 811c147220d2630b769e505ce4d40ef9108fe034 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Sat, 9 Apr 2011 08:22:42 -1000 Subject: [PATCH 274/420] i965/fs: Constant-fold immediates in src0 of CMP instructions. This is like what we do with add/mul, but we also have to flip the conditional test. Reviewed-by: Ian Romanick --- src/mesa/drivers/dri/i965/brw_eu.c | 22 ++++++++++++++++++++++ src/mesa/drivers/dri/i965/brw_eu.h | 2 ++ src/mesa/drivers/dri/i965/brw_fs.cpp | 21 +++++++++++++++++++++ 3 files changed, 45 insertions(+) diff --git a/src/mesa/drivers/dri/i965/brw_eu.c b/src/mesa/drivers/dri/i965/brw_eu.c index 3b5c4c071e3..b59d6b251e6 100644 --- a/src/mesa/drivers/dri/i965/brw_eu.c +++ b/src/mesa/drivers/dri/i965/brw_eu.c @@ -34,6 +34,28 @@ #include "brw_defines.h" #include "brw_eu.h" +/* Returns the corresponding conditional mod for swapping src0 and + * src1 in e.g. CMP. + */ +uint32_t +brw_swap_cmod(uint32_t cmod) +{ + switch (cmod) { + case BRW_CONDITIONAL_Z: + case BRW_CONDITIONAL_NZ: + return cmod; + case BRW_CONDITIONAL_G: + return BRW_CONDITIONAL_LE; + case BRW_CONDITIONAL_GE: + return BRW_CONDITIONAL_L; + case BRW_CONDITIONAL_L: + return BRW_CONDITIONAL_GE; + case BRW_CONDITIONAL_LE: + return BRW_CONDITIONAL_G; + default: + return ~0; + } +} /* How does predicate control work when execution_size != 8? Do I diff --git a/src/mesa/drivers/dri/i965/brw_eu.h b/src/mesa/drivers/dri/i965/brw_eu.h index 2d2ed9de985..c2e59c1be13 100644 --- a/src/mesa/drivers/dri/i965/brw_eu.h +++ b/src/mesa/drivers/dri/i965/brw_eu.h @@ -1017,6 +1017,8 @@ void brw_set_src1( struct brw_instruction *insn, void brw_set_uip_jip(struct brw_compile *p); +uint32_t brw_swap_cmod(uint32_t cmod); + /* brw_optimize.c */ void brw_optimize(struct brw_compile *p); void brw_remove_duplicate_mrf_moves(struct brw_compile *p); diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp index 99cd8f833a7..128bbe93a32 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp @@ -2938,12 +2938,33 @@ fs_visitor::propagate_constants() progress = true; } break; + case BRW_OPCODE_CMP: + if (i == 1) { + scan_inst->src[i] = inst->src[0]; + progress = true; + } else if (i == 0 && scan_inst->src[1].file != IMM) { + uint32_t new_cmod; + + new_cmod = brw_swap_cmod(scan_inst->conditional_mod); + if (new_cmod != ~0u) { + /* Fit this constant in by swapping the operands and + * flipping the test + */ + scan_inst->src[0] = scan_inst->src[1]; + scan_inst->src[1] = inst->src[0]; + scan_inst->conditional_mod = new_cmod; + progress = true; + } + } + break; + case BRW_OPCODE_SEL: if (i == 1) { scan_inst->src[i] = inst->src[0]; progress = true; } + break; } } From 4847f802c28e595130bda14055cd52c9b1f51cd7 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Sat, 9 Apr 2011 08:29:59 -1000 Subject: [PATCH 275/420] i965/fs: Constant-fold immediates in src0 of SEL instructions. This is like what we do for add/mul, but we have to invert the predicate to choose the other source instead. This removes 5 extra moves of constants in nexuiz shaders. No statistically significant performance difference on my Sandybridge laptop (n=5). Reviewed-by: Ian Romanick --- src/mesa/drivers/dri/i965/brw_eu.c | 5 +++++ src/mesa/drivers/dri/i965/brw_eu.h | 1 + src/mesa/drivers/dri/i965/brw_fs.cpp | 9 +++++++++ src/mesa/drivers/dri/i965/brw_fs.h | 1 + 4 files changed, 16 insertions(+) diff --git a/src/mesa/drivers/dri/i965/brw_eu.c b/src/mesa/drivers/dri/i965/brw_eu.c index b59d6b251e6..7e63482d8fa 100644 --- a/src/mesa/drivers/dri/i965/brw_eu.c +++ b/src/mesa/drivers/dri/i965/brw_eu.c @@ -82,6 +82,11 @@ void brw_set_predicate_control( struct brw_compile *p, GLuint pc ) p->current->header.predicate_control = pc; } +void brw_set_predicate_inverse(struct brw_compile *p, bool predicate_inverse) +{ + p->current->header.predicate_inverse = predicate_inverse; +} + void brw_set_conditionalmod( struct brw_compile *p, GLuint conditional ) { p->current->header.destreg__conditionalmod = conditional; diff --git a/src/mesa/drivers/dri/i965/brw_eu.h b/src/mesa/drivers/dri/i965/brw_eu.h index c2e59c1be13..718b3800423 100644 --- a/src/mesa/drivers/dri/i965/brw_eu.h +++ b/src/mesa/drivers/dri/i965/brw_eu.h @@ -772,6 +772,7 @@ void brw_set_access_mode( struct brw_compile *p, GLuint access_mode ); void brw_set_compression_control( struct brw_compile *p, GLboolean control ); void brw_set_predicate_control_flag_value( struct brw_compile *p, GLuint value ); void brw_set_predicate_control( struct brw_compile *p, GLuint pc ); +void brw_set_predicate_inverse(struct brw_compile *p, bool predicate_inverse); void brw_set_conditionalmod( struct brw_compile *p, GLuint conditional ); void brw_set_acc_write_control(struct brw_compile *p, GLuint value); diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp index 128bbe93a32..5426925e372 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp @@ -2963,6 +2963,14 @@ fs_visitor::propagate_constants() if (i == 1) { scan_inst->src[i] = inst->src[0]; progress = true; + } else if (i == 0 && scan_inst->src[1].file != IMM) { + /* Fit this constant in by swapping the operands and + * flipping the predicate + */ + scan_inst->src[0] = scan_inst->src[1]; + scan_inst->src[1] = inst->src[0]; + scan_inst->predicate_inverse = !scan_inst->predicate_inverse; + progress = true; } break; } @@ -3450,6 +3458,7 @@ fs_visitor::generate_code() brw_set_conditionalmod(p, inst->conditional_mod); brw_set_predicate_control(p, inst->predicated); + brw_set_predicate_inverse(p, inst->predicate_inverse); brw_set_saturate(p, inst->saturate); switch (inst->opcode) { diff --git a/src/mesa/drivers/dri/i965/brw_fs.h b/src/mesa/drivers/dri/i965/brw_fs.h index e48bf40e3e4..f792906cfe7 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.h +++ b/src/mesa/drivers/dri/i965/brw_fs.h @@ -331,6 +331,7 @@ public: fs_reg src[3]; bool saturate; bool predicated; + bool predicate_inverse; int conditional_mod; /**< BRW_CONDITIONAL_* */ int mlen; /**< SEND message length */ From 28cec9e832b716b84c11ddabfcee74e0daf6ec49 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 13 Apr 2011 11:09:55 -0700 Subject: [PATCH 276/420] mesa: Add support for the ARB_fragment_program part of ARB_draw_buffers. Fixes fbo-drawbuffers-arbfp. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=34321 Reviewed-by: Brian Paul Reviewed-by: Ian Romanick --- src/mesa/program/program_parse.y | 29 +++++++++++++++++++++++++++++ src/mesa/program/program_parser.h | 1 + 2 files changed, 30 insertions(+) diff --git a/src/mesa/program/program_parse.y b/src/mesa/program/program_parse.y index 19aa8ccdb53..b35bc5a7cae 100644 --- a/src/mesa/program/program_parse.y +++ b/src/mesa/program/program_parse.y @@ -2064,6 +2064,34 @@ optResultFaceType: ? VERT_RESULT_COL0 : FRAG_RESULT_COLOR; } + | '[' INTEGER ']' + { + if (state->mode == ARB_vertex) { + yyerror(& @1, state, "invalid program result name"); + YYERROR; + } else { + if (!state->option.DrawBuffers) { + /* From the ARB_draw_buffers spec (same text exists + * for ATI_draw_buffers): + * + * If this option is not specified, a fragment + * program that attempts to bind + * "result.color[n]" will fail to load, and only + * "result.color" will be allowed. + */ + yyerror(& @1, state, + "result.color[] used without " + "`OPTION ARB_draw_buffers' or " + "`OPTION ATI_draw_buffers'"); + YYERROR; + } else if ($2 >= state->MaxDrawBuffers) { + yyerror(& @1, state, + "result.color[] exceeds MAX_DRAW_BUFFERS_ARB"); + YYERROR; + } + $$ = FRAG_RESULT_DATA0 + $2; + } + } | FRONT { if (state->mode == ARB_vertex) { @@ -2681,6 +2709,7 @@ _mesa_parse_arb_program(struct gl_context *ctx, GLenum target, const GLubyte *st state->MaxClipPlanes = ctx->Const.MaxClipPlanes; state->MaxLights = ctx->Const.MaxLights; state->MaxProgramMatrices = ctx->Const.MaxProgramMatrices; + state->MaxDrawBuffers = ctx->Const.MaxDrawBuffers; state->state_param_enum = (target == GL_VERTEX_PROGRAM_ARB) ? STATE_VERTEX_PROGRAM : STATE_FRAGMENT_PROGRAM; diff --git a/src/mesa/program/program_parser.h b/src/mesa/program/program_parser.h index d689eef7958..8e5aaee95e5 100644 --- a/src/mesa/program/program_parser.h +++ b/src/mesa/program/program_parser.h @@ -173,6 +173,7 @@ struct asm_parser_state { unsigned MaxClipPlanes; unsigned MaxLights; unsigned MaxProgramMatrices; + unsigned MaxDrawBuffers; /*@}*/ /** From fb6e39737a24f9652b6cdc10067736b8915c61f9 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 13 Apr 2011 12:07:31 -0700 Subject: [PATCH 277/420] mesa: Add support for OPTION ATI_draw_buffers to ARB_fp. Tested by piglit ati_draw_buffers-arbfp. Reviewed-by: Brian Paul Reviewed-by: Ian Romanick --- src/mesa/program/program_parse_extra.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/mesa/program/program_parse_extra.c b/src/mesa/program/program_parse_extra.c index ae98b782b70..4d928483e16 100644 --- a/src/mesa/program/program_parse_extra.c +++ b/src/mesa/program/program_parse_extra.c @@ -229,6 +229,16 @@ _mesa_ARBfp_parse_option(struct asm_parser_state *state, const char *option) } } } + } else if (strncmp(option, "ATI_", 4) == 0) { + option += 4; + + if (strcmp(option, "draw_buffers") == 0) { + /* Don't need to check extension availability because all Mesa-based + * drivers support GL_ATI_draw_buffers. + */ + state->option.DrawBuffers = 1; + return 1; + } } else if (strncmp(option, "NV_fragment_program", 19) == 0) { option += 19; From a9a02c8a39620515ec9fd0d774ce329cf67ecb4e Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 13 Apr 2011 12:02:54 -0700 Subject: [PATCH 278/420] mesa: Expose ATI_draw_buffers. This is the same as ARB_draw_buffers (which derived from it), except for s/ARB/ATI/. The glapi bits were already in place, and what was missing was just the ARB_fp part. The new Humble Bundle game "trine" tries to use this extension without checking that it's exposed, which this works around. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=36182 Reviewed-by: Brian Paul Reviewed-by: Ian Romanick --- src/mesa/main/extensions.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/mesa/main/extensions.c b/src/mesa/main/extensions.c index e5711f21aec..c45265900ba 100644 --- a/src/mesa/main/extensions.c +++ b/src/mesa/main/extensions.c @@ -262,6 +262,7 @@ static const struct extension extension_table[] = { { "GL_APPLE_packed_pixels", o(APPLE_packed_pixels), GL, 2002 }, { "GL_APPLE_vertex_array_object", o(APPLE_vertex_array_object), GL, 2002 }, { "GL_ATI_blend_equation_separate", o(EXT_blend_equation_separate), GL, 2003 }, + { "GL_ATI_draw_buffers", o(ARB_draw_buffers), GL, 2002 }, { "GL_ATI_envmap_bumpmap", o(ATI_envmap_bumpmap), GL, 2001 }, { "GL_ATI_fragment_shader", o(ATI_fragment_shader), GL, 2001 }, { "GL_ATI_separate_stencil", o(ATI_separate_stencil), GL, 2006 }, From 78e90bf2474b89dcc7cc199ddb360745e93720c6 Mon Sep 17 00:00:00 2001 From: pepp Date: Wed, 13 Apr 2011 13:03:31 +0200 Subject: [PATCH 279/420] st/mesa: add support for GL_RGBA + GL_UNSIGNED_INT_8_8_8_8 in st_fast_readpixels Signed-off-by: Brian Paul --- src/mesa/state_tracker/st_cb_readpixels.c | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/src/mesa/state_tracker/st_cb_readpixels.c b/src/mesa/state_tracker/st_cb_readpixels.c index 03f58bf0fc4..fdb7770e446 100644 --- a/src/mesa/state_tracker/st_cb_readpixels.c +++ b/src/mesa/state_tracker/st_cb_readpixels.c @@ -201,7 +201,8 @@ st_fast_readpixels(struct gl_context *ctx, struct st_renderbuffer *strb, enum combination { A8R8G8B8_UNORM_TO_RGBA_UBYTE, A8R8G8B8_UNORM_TO_RGB_UBYTE, - A8R8G8B8_UNORM_TO_BGRA_UINT + A8R8G8B8_UNORM_TO_BGRA_UINT, + A8R8G8B8_UNORM_TO_RGBA_UINT } combo; if (ctx->_ImageTransferState) @@ -219,6 +220,10 @@ st_fast_readpixels(struct gl_context *ctx, struct st_renderbuffer *strb, format == GL_BGRA && type == GL_UNSIGNED_INT_8_8_8_8_REV) { combo = A8R8G8B8_UNORM_TO_BGRA_UINT; } + else if (strb->format == PIPE_FORMAT_B8G8R8A8_UNORM && + format == GL_RGBA && type == GL_UNSIGNED_INT_8_8_8_8) { + combo = A8R8G8B8_UNORM_TO_RGBA_UINT; + } else { return GL_FALSE; } @@ -305,6 +310,20 @@ st_fast_readpixels(struct gl_context *ctx, struct st_renderbuffer *strb, y += dy; } break; + case A8R8G8B8_UNORM_TO_RGBA_UINT: + for (row = 0; row < height; row++) { + const GLubyte *src = map + y * trans->stride; + for (col = 0; col < width; col++) { + GLuint pixel = ((GLuint *) src)[col]; + dst[col*4+0] = (pixel >> 24) & 0xff; + dst[col*4+1] = (pixel >> 0) & 0xff; + dst[col*4+2] = (pixel >> 8) & 0xff; + dst[col*4+3] = (pixel >> 16) & 0xff; + } + dst += dstStride; + y += dy; + } + break; default: ; /* nothing */ } From 6881cfc7f7b425f52ae631936cc53d409f208fa1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Thu, 14 Apr 2011 15:22:49 +0100 Subject: [PATCH 280/420] mesa/st: Avoid spurious transfers when creating fbo textures without image data. We could actually try to do an early return both for gallium textures and malloc memory textures, but I'm not sure exactly which situations stImage->pt is NULL, and whether texImage->Data == NULL would be acceptible or not. Reviewed-by: Brian Paul --- src/mesa/state_tracker/st_cb_texture.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/mesa/state_tracker/st_cb_texture.c b/src/mesa/state_tracker/st_cb_texture.c index 914c06b7023..43c24ae957f 100644 --- a/src/mesa/state_tracker/st_cb_texture.c +++ b/src/mesa/state_tracker/st_cb_texture.c @@ -600,7 +600,12 @@ st_TexImage(struct gl_context * ctx, * memory or malloc space for it. */ if (stImage->pt) { - /* Store the image in the gallium texture memory buffer */ + if (!pixels) { + /* We've allocated texture resource, but have no pixel data - all done. */ + goto done; + } + + /* Store the image in the gallium transfer object */ if (format == GL_DEPTH_COMPONENT && util_format_is_depth_and_stencil(stImage->pt->format)) transfer_usage = PIPE_TRANSFER_READ_WRITE; From ea3b2560b1dd0585fcf82a5d3179826374ae03b2 Mon Sep 17 00:00:00 2001 From: Carl Worth Date: Thu, 14 Apr 2011 14:29:34 -0700 Subject: [PATCH 281/420] Add an expected file for 093-divide-by-zero This test is behaving just fine already---it's generating an informative diagnostic, ("error: division by 0 in preprocessor directive"), so adding this in the expected file makes things pass. --- src/glsl/glcpp/tests/093-divide-by-zero.c.expected | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 src/glsl/glcpp/tests/093-divide-by-zero.c.expected diff --git a/src/glsl/glcpp/tests/093-divide-by-zero.c.expected b/src/glsl/glcpp/tests/093-divide-by-zero.c.expected new file mode 100644 index 00000000000..08f183f24f5 --- /dev/null +++ b/src/glsl/glcpp/tests/093-divide-by-zero.c.expected @@ -0,0 +1,4 @@ +0:1(13): preprocessor error: division by 0 in preprocessor directive + + + From d3c6ed382d8e02cd9f9e2cc77208b800abe17d54 Mon Sep 17 00:00:00 2001 From: Carl Worth Date: Thu, 14 Apr 2011 14:35:11 -0700 Subject: [PATCH 282/420] Add an expected file for 094-divide-by-zero-short-circuit The expected file here captures the current behavior of glcpp (which is to generate a division-by-zero error) for this case. It's easy to argue that it should be short-circuiting the evaluation and not generating the diagnostic (which happens to be what gcc does). But it doesn't seem like we should force this behavior on our pre-processor, (and, as always, the GLSL specification of the pre-processor is too vague on this point). --- .../tests/094-divide-by-zero-short-circuit.c | 11 +++++++++++ .../094-divide-by-zero-short-circuit.c.expected | 15 +++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 src/glsl/glcpp/tests/094-divide-by-zero-short-circuit.c.expected diff --git a/src/glsl/glcpp/tests/094-divide-by-zero-short-circuit.c b/src/glsl/glcpp/tests/094-divide-by-zero-short-circuit.c index a9c6f36def8..04497b17913 100644 --- a/src/glsl/glcpp/tests/094-divide-by-zero-short-circuit.c +++ b/src/glsl/glcpp/tests/094-divide-by-zero-short-circuit.c @@ -1,2 +1,13 @@ +/* glcpp is generating a division-by-zero error for this case. It's + * easy to argue that it should be short-circuiting the evaluation and + * not generating the diagnostic (which happens to be what gcc does). + * But it doesn't seem like we should force this behavior on our + * pre-processor, (and, as always, the GLSL specification of the + * pre-processor is too vague on this point). + * + * If a short-circuit evaluation optimization does get added to the + * pre-processor then it would legitimate to update the expected file + * for this test. +*/ #if 1 || (1 / 0) #endif diff --git a/src/glsl/glcpp/tests/094-divide-by-zero-short-circuit.c.expected b/src/glsl/glcpp/tests/094-divide-by-zero-short-circuit.c.expected new file mode 100644 index 00000000000..84fdc50c920 --- /dev/null +++ b/src/glsl/glcpp/tests/094-divide-by-zero-short-circuit.c.expected @@ -0,0 +1,15 @@ +0:12(17): preprocessor error: division by 0 in preprocessor directive + + + + + + + + + + + + + + From 6affa4806a74c0f81fefa0be0212ec8574a74f4d Mon Sep 17 00:00:00 2001 From: Carl Worth Date: Thu, 14 Apr 2011 14:38:56 -0700 Subject: [PATCH 283/420] Add an expected file for 084-unbalanced-parentheses The expected file here captures the current behavior of glcpp (which is to generate an obscure "syntax error, unexpected $end" diagnostic for this case). It would certainly be better for glcpp to generate a nicer diagnostic, (such as "missing closing parenthesis in function-like macro definition" or so), but the current behavior is at least correct, and expected. So we can make the test suite more useful by marking the current behavior as expected. --- src/glsl/glcpp/tests/084-unbalanced-parentheses.c.expected | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 src/glsl/glcpp/tests/084-unbalanced-parentheses.c.expected diff --git a/src/glsl/glcpp/tests/084-unbalanced-parentheses.c.expected b/src/glsl/glcpp/tests/084-unbalanced-parentheses.c.expected new file mode 100644 index 00000000000..af49a37369d --- /dev/null +++ b/src/glsl/glcpp/tests/084-unbalanced-parentheses.c.expected @@ -0,0 +1,2 @@ +0:2(8): preprocessor error: syntax error, unexpected $end + From 0b80f2d4c9fd672d75d647104bf0b0fdafec9dda Mon Sep 17 00:00:00 2001 From: Carl Worth Date: Thu, 14 Apr 2011 14:55:52 -0700 Subject: [PATCH 284/420] glcpp: Add --valgrind option to the glcpp-test utility The common case for this test suite is to quickly test that everything returns the correct results. In this case, the second run of the test suite under valgrind was just annoying, (and the user would often interrupt it). Now, do what is wanted in the common case by default (just run the test suite), and require a run with "glcpp-test --valgrind" in order to test with valgrind. --- src/glsl/glcpp/tests/glcpp-test | 62 ++++++++++++++++++++++++--------- 1 file changed, 46 insertions(+), 16 deletions(-) diff --git a/src/glsl/glcpp/tests/glcpp-test b/src/glsl/glcpp/tests/glcpp-test index 5dc08ea6acb..e8f3b546387 100755 --- a/src/glsl/glcpp/tests/glcpp-test +++ b/src/glsl/glcpp/tests/glcpp-test @@ -2,6 +2,34 @@ trap 'rm $test.valgrind-errors; exit 1' INT QUIT +usage () +{ + cat <&2 + echo >&2 + usage + exit 1 + fi +done + total=0 pass=0 clean=0 @@ -24,23 +52,25 @@ echo "" echo "$pass/$total tests returned correct results" echo "" -echo "====== Testing for valgrind cleanliness ======" -for test in *.c; do - echo -n "Testing $test with valgrind..." - valgrind --error-exitcode=31 --log-file=$test.valgrind-errors ../glcpp < $test >/dev/null 2>&1 - if [ "$?" = "31" ]; then - echo "ERRORS" - cat $test.valgrind-errors - else - echo "CLEAN" - clean=$((clean+1)) - rm $test.valgrind-errors - fi -done +if [ "$do_valgrind" = "yes" ]; then + echo "====== Testing for valgrind cleanliness ======" + for test in *.c; do + echo -n "Testing $test with valgrind..." + valgrind --error-exitcode=31 --log-file=$test.valgrind-errors ../glcpp < $test >/dev/null 2>&1 + if [ "$?" = "31" ]; then + echo "ERRORS" + cat $test.valgrind-errors + else + echo "CLEAN" + clean=$((clean+1)) + rm $test.valgrind-errors + fi + done -echo "" -echo "$pass/$total tests returned correct results" -echo "$clean/$total tests are valgrind-clean" + echo "" + echo "$pass/$total tests returned correct results" + echo "$clean/$total tests are valgrind-clean" +fi if [ "$pass" = "$total" ] && [ "$clean" = "$total" ]; then exit 0 From 02d293c08ee2375fc43b343bfc9b074f33a9063c Mon Sep 17 00:00:00 2001 From: Carl Worth Date: Thu, 14 Apr 2011 15:35:41 -0700 Subject: [PATCH 285/420] glcpp: Simplify calling convention of parser's active_list functions These were all written as generic list functions, (accepting and returning a list to act upon). But they were only ever used with parser->active as the list. By simply accepting the parser itself, these functions can update parser->active and now return nothing at all. This makes the code a bit more compact. And hopefully the code is no less readable since the functions are also now renamed to have "_parser_active" in the name for better correlation with nearby tests of the parser->active field. --- src/glsl/glcpp/glcpp-parse.y | 76 ++++++++++++++++++------------------ 1 file changed, 38 insertions(+), 38 deletions(-) diff --git a/src/glsl/glcpp/glcpp-parse.y b/src/glsl/glcpp/glcpp-parse.y index 1f6e67fa062..fdc9467803b 100644 --- a/src/glsl/glcpp/glcpp-parse.y +++ b/src/glsl/glcpp/glcpp-parse.y @@ -95,16 +95,16 @@ _token_list_append_list (token_list_t *list, token_list_t *tail); static int _token_list_equal_ignoring_space (token_list_t *a, token_list_t *b); -static active_list_t * -_active_list_push (active_list_t *list, - const char *identifier, - token_node_t *marker); +static void +_parser_active_list_push (glcpp_parser_t *parser, + const char *identifier, + token_node_t *marker); -static active_list_t * -_active_list_pop (active_list_t *list); +static void +_parser_active_list_pop (glcpp_parser_t *parser); -int -_active_list_contains (active_list_t *list, const char *identifier); +static int +_parser_active_list_contains (glcpp_parser_t *parser, const char *identifier); static void _glcpp_parser_expand_if (glcpp_parser_t *parser, int type, token_list_t *list); @@ -1468,7 +1468,7 @@ _glcpp_parser_expand_node (glcpp_parser_t *parser, /* Finally, don't expand this macro if we're already actively * expanding it, (to avoid infinite recursion). */ - if (_active_list_contains (parser->active, identifier)) { + if (_parser_active_list_contains (parser, identifier)) { /* We change the token type here from IDENTIFIER to * OTHER to prevent any future expansion of this * unexpanded token. */ @@ -1498,51 +1498,53 @@ _glcpp_parser_expand_node (glcpp_parser_t *parser, return _glcpp_parser_expand_function (parser, node, last); } -/* Push a new identifier onto the active list, returning the new list. +/* Push a new identifier onto the parser's active list. * * Here, 'marker' is the token node that appears in the list after the * expansion of 'identifier'. That is, when the list iterator begins - * examinging 'marker', then it is time to pop this node from the + * examining 'marker', then it is time to pop this node from the * active stack. */ -active_list_t * -_active_list_push (active_list_t *list, - const char *identifier, - token_node_t *marker) +static void +_parser_active_list_push (glcpp_parser_t *parser, + const char *identifier, + token_node_t *marker) { active_list_t *node; - node = ralloc (list, active_list_t); + node = ralloc (parser->active, active_list_t); node->identifier = ralloc_strdup (node, identifier); node->marker = marker; - node->next = list; + node->next = parser->active; - return node; + parser->active = node; } -active_list_t * -_active_list_pop (active_list_t *list) +static void +_parser_active_list_pop (glcpp_parser_t *parser) { - active_list_t *node = list; + active_list_t *node = parser->active; - if (node == NULL) - return NULL; + if (node == NULL) { + parser->active = NULL; + return; + } - node = list->next; - ralloc_free (list); + node = parser->active->next; + ralloc_free (parser->active); - return node; + parser->active = node; } -int -_active_list_contains (active_list_t *list, const char *identifier) +static int +_parser_active_list_contains (glcpp_parser_t *parser, const char *identifier) { active_list_t *node; - if (list == NULL) + if (parser->active == NULL) return 0; - for (node = list; node; node = node->next) + for (node = parser->active; node; node = node->next) if (strcmp (node->identifier, identifier) == 0) return 1; @@ -1573,10 +1575,8 @@ _glcpp_parser_expand_token_list (glcpp_parser_t *parser, while (node) { while (parser->active && parser->active->marker == node) - parser->active = _active_list_pop (parser->active); + _parser_active_list_pop (parser); - /* Find the expansion for node, which will replace all - * nodes from node to last, inclusive. */ expansion = _glcpp_parser_expand_node (parser, node, &last); if (expansion) { token_node_t *n; @@ -1585,12 +1585,12 @@ _glcpp_parser_expand_token_list (glcpp_parser_t *parser, while (parser->active && parser->active->marker == n) { - parser->active = _active_list_pop (parser->active); + _parser_active_list_pop (parser); } - parser->active = _active_list_push (parser->active, - node->token->value.str, - last->next); + _parser_active_list_push (parser, + node->token->value.str, + last->next); /* Splice expansion into list, supporting a * simple deletion if the expansion is @@ -1618,7 +1618,7 @@ _glcpp_parser_expand_token_list (glcpp_parser_t *parser, } while (parser->active) - parser->active = _active_list_pop (parser->active); + _parser_active_list_pop (parser); list->non_space_tail = list->tail; } From 3d78f83cde0286ef352fefa1b018563c11642ff1 Mon Sep 17 00:00:00 2001 From: Carl Worth Date: Thu, 14 Apr 2011 16:18:35 -0700 Subject: [PATCH 286/420] Add expected file for 095-recursive-define test case. It's clear enough that the current segmentation fault isn't what we want. And it's also very easy to know what we do want here, (just check with any functional C preprocessor such as "gcc -E"). Add the desired output as an expected file so that the test suite gives useful output, (showing the omitted output and the segfault), rather than just reporting "No such file" for the expected file. --- src/glsl/glcpp/tests/095-recursive-define.c.expected | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 src/glsl/glcpp/tests/095-recursive-define.c.expected diff --git a/src/glsl/glcpp/tests/095-recursive-define.c.expected b/src/glsl/glcpp/tests/095-recursive-define.c.expected new file mode 100644 index 00000000000..c7aa18ff6cb --- /dev/null +++ b/src/glsl/glcpp/tests/095-recursive-define.c.expected @@ -0,0 +1,4 @@ + + +B(0, C) + From 19648fcf015e512283e93ab9de4a3e969d577e59 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Wed, 16 Feb 2011 00:35:44 +0100 Subject: [PATCH 287/420] mesa: fix L16F and L32F format properties --- src/mesa/main/formats.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mesa/main/formats.c b/src/mesa/main/formats.c index e62170b71c1..b45cf03995b 100644 --- a/src/mesa/main/formats.c +++ b/src/mesa/main/formats.c @@ -677,7 +677,7 @@ static struct gl_format_info format_info[MESA_FORMAT_COUNT] = { MESA_FORMAT_LUMINANCE_FLOAT32, "MESA_FORMAT_LUMINANCE_FLOAT32", - GL_ALPHA, + GL_LUMINANCE, GL_FLOAT, 0, 0, 0, 0, 32, 0, 0, 0, 0, @@ -686,7 +686,7 @@ static struct gl_format_info format_info[MESA_FORMAT_COUNT] = { MESA_FORMAT_LUMINANCE_FLOAT16, "MESA_FORMAT_LUMINANCE_FLOAT16", - GL_ALPHA, + GL_LUMINANCE, GL_FLOAT, 0, 0, 0, 0, 16, 0, 0, 0, 0, From 0ecbb0ab7472fe5cb33be13a8307e16f875254e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Wed, 16 Feb 2011 00:35:44 +0100 Subject: [PATCH 288/420] mesa: add R/RG floating-point formats --- src/mesa/main/formats.c | 40 ++++++++++++++ src/mesa/main/formats.h | 4 ++ src/mesa/main/texfetch.c | 28 ++++++++++ src/mesa/main/texfetch_tmp.h | 104 +++++++++++++++++++++++++++++++++++ src/mesa/main/texformat.c | 16 ++++++ src/mesa/main/texstore.c | 20 +++++-- 6 files changed, 208 insertions(+), 4 deletions(-) diff --git a/src/mesa/main/formats.c b/src/mesa/main/formats.c index b45cf03995b..4c31ccb763c 100644 --- a/src/mesa/main/formats.c +++ b/src/mesa/main/formats.c @@ -728,6 +728,42 @@ static struct gl_format_info format_info[MESA_FORMAT_COUNT] = 0, 16, 0, 0, 0, 1, 1, 2 }, + { + MESA_FORMAT_R_FLOAT32, + "MESA_FORMAT_R_FLOAT32", + GL_RED, + GL_FLOAT, + 32, 0, 0, 0, + 0, 0, 0, 0, 0, + 1, 1, 4 + }, + { + MESA_FORMAT_R_FLOAT16, + "MESA_FORMAT_R_FLOAT16", + GL_RED, + GL_FLOAT, + 16, 0, 0, 0, + 0, 0, 0, 0, 0, + 1, 1, 2 + }, + { + MESA_FORMAT_RG_FLOAT32, + "MESA_FORMAT_RG_FLOAT32", + GL_RG, + GL_FLOAT, + 32, 32, 0, 0, + 0, 0, 0, 0, 0, + 1, 1, 8 + }, + { + MESA_FORMAT_RG_FLOAT16, + "MESA_FORMAT_RG_FLOAT16", + GL_RG, + GL_FLOAT, + 16, 16, 0, 0, + 0, 0, 0, 0, 0, + 1, 1, 4 + }, /* unnormalized signed int formats */ { @@ -1714,22 +1750,26 @@ _mesa_format_to_type_and_comps(gl_format format, *comps = 3; return; case MESA_FORMAT_LUMINANCE_ALPHA_FLOAT32: + case MESA_FORMAT_RG_FLOAT32: *datatype = GL_FLOAT; *comps = 2; return; case MESA_FORMAT_LUMINANCE_ALPHA_FLOAT16: + case MESA_FORMAT_RG_FLOAT16: *datatype = GL_HALF_FLOAT_ARB; *comps = 2; return; case MESA_FORMAT_ALPHA_FLOAT32: case MESA_FORMAT_LUMINANCE_FLOAT32: case MESA_FORMAT_INTENSITY_FLOAT32: + case MESA_FORMAT_R_FLOAT32: *datatype = GL_FLOAT; *comps = 1; return; case MESA_FORMAT_ALPHA_FLOAT16: case MESA_FORMAT_LUMINANCE_FLOAT16: case MESA_FORMAT_INTENSITY_FLOAT16: + case MESA_FORMAT_R_FLOAT16: *datatype = GL_HALF_FLOAT_ARB; *comps = 1; return; diff --git a/src/mesa/main/formats.h b/src/mesa/main/formats.h index e0c2acbb9e9..15ac62cfef9 100644 --- a/src/mesa/main/formats.h +++ b/src/mesa/main/formats.h @@ -142,6 +142,10 @@ typedef enum MESA_FORMAT_LUMINANCE_ALPHA_FLOAT16, MESA_FORMAT_INTENSITY_FLOAT32, MESA_FORMAT_INTENSITY_FLOAT16, + MESA_FORMAT_R_FLOAT32, + MESA_FORMAT_R_FLOAT16, + MESA_FORMAT_RG_FLOAT32, + MESA_FORMAT_RG_FLOAT16, /*@}*/ /** diff --git a/src/mesa/main/texfetch.c b/src/mesa/main/texfetch.c index caabc19bb17..d091789ff16 100644 --- a/src/mesa/main/texfetch.c +++ b/src/mesa/main/texfetch.c @@ -631,6 +631,34 @@ texfetch_funcs[MESA_FORMAT_COUNT] = fetch_texel_3d_f_intensity_f16, store_texel_intensity_f16 }, + { + MESA_FORMAT_R_FLOAT32, + fetch_texel_1d_f_r_f32, + fetch_texel_2d_f_r_f32, + fetch_texel_3d_f_r_f32, + store_texel_r_f32 + }, + { + MESA_FORMAT_R_FLOAT16, + fetch_texel_1d_f_r_f16, + fetch_texel_2d_f_r_f16, + fetch_texel_3d_f_r_f16, + store_texel_r_f16 + }, + { + MESA_FORMAT_RG_FLOAT32, + fetch_texel_1d_f_rg_f32, + fetch_texel_2d_f_rg_f32, + fetch_texel_3d_f_rg_f32, + store_texel_rg_f32 + }, + { + MESA_FORMAT_RG_FLOAT16, + fetch_texel_1d_f_rg_f16, + fetch_texel_2d_f_rg_f16, + fetch_texel_3d_f_rg_f16, + store_texel_rg_f16 + }, /* non-normalized, signed int */ { diff --git a/src/mesa/main/texfetch_tmp.h b/src/mesa/main/texfetch_tmp.h index f1f6a01a4b9..0b9d5da07e8 100644 --- a/src/mesa/main/texfetch_tmp.h +++ b/src/mesa/main/texfetch_tmp.h @@ -438,6 +438,110 @@ static void store_texel_intensity_f16(struct gl_texture_image *texImage, #endif +/* MESA_FORMAT_R_FLOAT32 *****************************************************/ + +/* Fetch texel from 1D, 2D or 3D R_FLOAT32 texture, + * returning 4 GLfloats. + */ +static void FETCH(f_r_f32)( const struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, GLfloat *texel ) +{ + const GLfloat *src = TEXEL_ADDR(GLfloat, texImage, i, j, k, 1); + texel[RCOMP] = src[0]; + texel[GCOMP] = 0.0F; + texel[BCOMP] = 0.0F; + texel[ACOMP] = 1.0F; +} + +#if DIM == 3 +static void store_texel_r_f32(struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, const void *texel) +{ + const GLfloat *rgba = (const GLfloat *) texel; + GLfloat *dst = TEXEL_ADDR(GLfloat, texImage, i, j, k, 1); + dst[0] = rgba[RCOMP]; +} +#endif + + +/* MESA_FORMAT_R_FLOAT16 *****************************************************/ + +/* Fetch texel from 1D, 2D or 3D R_FLOAT16 texture, + * returning 4 GLfloats. + */ +static void FETCH(f_r_f16)( const struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, GLfloat *texel ) +{ + const GLhalfARB *src = TEXEL_ADDR(GLhalfARB, texImage, i, j, k, 1); + texel[RCOMP] = _mesa_half_to_float(src[0]); + texel[GCOMP] = 0.0F; + texel[BCOMP] = 0.0F; + texel[ACOMP] = 1.0F; +} + +#if DIM == 3 +static void store_texel_r_f16(struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, const void *texel) +{ + const GLfloat *rgba = (const GLfloat *) texel; + GLhalfARB *dst = TEXEL_ADDR(GLhalfARB, texImage, i, j, k, 1); + dst[0] = _mesa_float_to_half(rgba[RCOMP]); +} +#endif + + +/* MESA_FORMAT_RG_FLOAT32 ****************************************************/ + +/* Fetch texel from 1D, 2D or 3D RG_FLOAT32 texture, + * returning 4 GLfloats. + */ +static void FETCH(f_rg_f32)( const struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, GLfloat *texel ) +{ + const GLfloat *src = TEXEL_ADDR(GLfloat, texImage, i, j, k, 2); + texel[RCOMP] = src[0]; + texel[GCOMP] = src[1]; + texel[BCOMP] = 0.0F; + texel[ACOMP] = 1.0F; +} + +#if DIM == 3 +static void store_texel_rg_f32(struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, const void *texel) +{ + const GLfloat *rgba = (const GLfloat *) texel; + GLfloat *dst = TEXEL_ADDR(GLfloat, texImage, i, j, k, 2); + dst[0] = rgba[RCOMP]; + dst[1] = rgba[GCOMP]; +} +#endif + + +/* MESA_FORMAT_RG_FLOAT16 ****************************************************/ + +/* Fetch texel from 1D, 2D or 3D RG_FLOAT16 texture, + * returning 4 GLfloats. + */ +static void FETCH(f_rg_f16)( const struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, GLfloat *texel ) +{ + const GLhalfARB *src = TEXEL_ADDR(GLhalfARB, texImage, i, j, k, 2); + texel[RCOMP] = _mesa_half_to_float(src[0]); + texel[GCOMP] = _mesa_half_to_float(src[1]); + texel[BCOMP] = 0.0F; + texel[ACOMP] = 1.0F; +} + +#if DIM == 3 +static void store_texel_rg_f16(struct gl_texture_image *texImage, + GLint i, GLint j, GLint k, const void *texel) +{ + const GLfloat *rgba = (const GLfloat *) texel; + GLhalfARB *dst = TEXEL_ADDR(GLhalfARB, texImage, i, j, k, 2); + dst[0] = _mesa_float_to_half(rgba[RCOMP]); + dst[1] = _mesa_float_to_half(rgba[GCOMP]); +} +#endif /* diff --git a/src/mesa/main/texformat.c b/src/mesa/main/texformat.c index da907455b86..97b905fd36c 100644 --- a/src/mesa/main/texformat.c +++ b/src/mesa/main/texformat.c @@ -628,6 +628,22 @@ _mesa_choose_tex_format( struct gl_context *ctx, GLint internalFormat, } } + if (ctx->Extensions.ARB_texture_rg && ctx->Extensions.ARB_texture_float) { + switch (internalFormat) { + case GL_R16F: + return MESA_FORMAT_R_FLOAT16; + case GL_R32F: + return MESA_FORMAT_R_FLOAT32; + case GL_RG16F: + return MESA_FORMAT_RG_FLOAT16; + case GL_RG32F: + return MESA_FORMAT_RG_FLOAT32; + + default: + ; /* fallthrough */ + } + } + if (ctx->Extensions.EXT_texture_format_BGRA8888) { switch (internalFormat) { case GL_BGRA: diff --git a/src/mesa/main/texstore.c b/src/mesa/main/texstore.c index 87cb327d2c1..9a690529a83 100644 --- a/src/mesa/main/texstore.c +++ b/src/mesa/main/texstore.c @@ -3535,13 +3535,17 @@ _mesa_texstore_rgba_float32(TEXSTORE_PARAMS) dstFormat == MESA_FORMAT_ALPHA_FLOAT32 || dstFormat == MESA_FORMAT_LUMINANCE_FLOAT32 || dstFormat == MESA_FORMAT_LUMINANCE_ALPHA_FLOAT32 || - dstFormat == MESA_FORMAT_INTENSITY_FLOAT32); + dstFormat == MESA_FORMAT_INTENSITY_FLOAT32 || + dstFormat == MESA_FORMAT_R_FLOAT32 || + dstFormat == MESA_FORMAT_RG_FLOAT32); ASSERT(baseInternalFormat == GL_RGBA || baseInternalFormat == GL_RGB || baseInternalFormat == GL_ALPHA || baseInternalFormat == GL_LUMINANCE || baseInternalFormat == GL_LUMINANCE_ALPHA || - baseInternalFormat == GL_INTENSITY); + baseInternalFormat == GL_INTENSITY || + baseInternalFormat == GL_RED || + baseInternalFormat == GL_RG); ASSERT(texelBytes == components * sizeof(GLfloat)); if (!ctx->_ImageTransferState && @@ -3605,13 +3609,17 @@ _mesa_texstore_rgba_float16(TEXSTORE_PARAMS) dstFormat == MESA_FORMAT_ALPHA_FLOAT16 || dstFormat == MESA_FORMAT_LUMINANCE_FLOAT16 || dstFormat == MESA_FORMAT_LUMINANCE_ALPHA_FLOAT16 || - dstFormat == MESA_FORMAT_INTENSITY_FLOAT16); + dstFormat == MESA_FORMAT_INTENSITY_FLOAT16 || + dstFormat == MESA_FORMAT_R_FLOAT16 || + dstFormat == MESA_FORMAT_RG_FLOAT16); ASSERT(baseInternalFormat == GL_RGBA || baseInternalFormat == GL_RGB || baseInternalFormat == GL_ALPHA || baseInternalFormat == GL_LUMINANCE || baseInternalFormat == GL_LUMINANCE_ALPHA || - baseInternalFormat == GL_INTENSITY); + baseInternalFormat == GL_INTENSITY || + baseInternalFormat == GL_RED || + baseInternalFormat == GL_RG); ASSERT(texelBytes == components * sizeof(GLhalfARB)); if (!ctx->_ImageTransferState && @@ -4252,6 +4260,10 @@ texstore_funcs[MESA_FORMAT_COUNT] = { MESA_FORMAT_LUMINANCE_ALPHA_FLOAT16, _mesa_texstore_rgba_float16 }, { MESA_FORMAT_INTENSITY_FLOAT32, _mesa_texstore_rgba_float32 }, { MESA_FORMAT_INTENSITY_FLOAT16, _mesa_texstore_rgba_float16 }, + { MESA_FORMAT_R_FLOAT32, _mesa_texstore_rgba_float32 }, + { MESA_FORMAT_R_FLOAT16, _mesa_texstore_rgba_float16 }, + { MESA_FORMAT_RG_FLOAT32, _mesa_texstore_rgba_float32 }, + { MESA_FORMAT_RG_FLOAT16, _mesa_texstore_rgba_float16 }, { MESA_FORMAT_RGBA_INT8, _mesa_texstore_rgba_int8 }, { MESA_FORMAT_RGBA_INT16, _mesa_texstore_rgba_int16 }, From 15f99d13626b42f517467fd884a379cc7475e5d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Wed, 16 Feb 2011 00:35:44 +0100 Subject: [PATCH 289/420] mesa: finish up ARB_texture_float MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Squashed commit of the following: Author: Marek Olšák mesa: handle floating-point formats in _mesa_base_fbo_format mesa: add ARB/ATI_texture_float, remove MESAX_texture_float commit 123bb110852739dffadcc81ad80b005b1c4f586d Author: Luca Barbieri Date: Wed Aug 25 01:35:42 2010 +0200 mesa: compute floatMode for FBOs and return it on RGBA_FLOAT_MODE --- src/mesa/drivers/dri/r300/r300_context.c | 1 - src/mesa/drivers/dri/r600/r600_context.c | 1 - src/mesa/main/extensions.c | 3 ++- src/mesa/main/fbobject.c | 32 +++++++++++++++++++++++- src/mesa/main/framebuffer.c | 14 ++++++++++- 5 files changed, 46 insertions(+), 5 deletions(-) diff --git a/src/mesa/drivers/dri/r300/r300_context.c b/src/mesa/drivers/dri/r300/r300_context.c index 0d8bd4fc706..213d3c060a6 100644 --- a/src/mesa/drivers/dri/r300/r300_context.c +++ b/src/mesa/drivers/dri/r300/r300_context.c @@ -133,7 +133,6 @@ static const struct dri_extension card_extensions[] = { {"GL_ATI_texture_mirror_once", NULL}, {"GL_MESA_pack_invert", NULL}, {"GL_MESA_ycbcr_texture", NULL}, - {"GL_MESAX_texture_float", NULL}, {"GL_NV_blend_square", NULL}, {"GL_NV_vertex_program", GL_NV_vertex_program_functions}, #if FEATURE_OES_EGL_image diff --git a/src/mesa/drivers/dri/r600/r600_context.c b/src/mesa/drivers/dri/r600/r600_context.c index 00708be1993..1b9676147ee 100644 --- a/src/mesa/drivers/dri/r600/r600_context.c +++ b/src/mesa/drivers/dri/r600/r600_context.c @@ -145,7 +145,6 @@ static const struct dri_extension card_extensions[] = { {"GL_ATI_texture_mirror_once", NULL}, {"GL_MESA_pack_invert", NULL}, {"GL_MESA_ycbcr_texture", NULL}, - {"GL_MESAX_texture_float", NULL}, {"GL_NV_blend_square", NULL}, {"GL_NV_vertex_program", GL_NV_vertex_program_functions}, {"GL_ARB_pixel_buffer_object", NULL}, diff --git a/src/mesa/main/extensions.c b/src/mesa/main/extensions.c index c45265900ba..8a0ab961523 100644 --- a/src/mesa/main/extensions.c +++ b/src/mesa/main/extensions.c @@ -124,6 +124,7 @@ static const struct extension extension_table[] = { { "GL_ARB_texture_env_combine", o(ARB_texture_env_combine), GL, 2001 }, { "GL_ARB_texture_env_crossbar", o(ARB_texture_env_crossbar), GL, 2001 }, { "GL_ARB_texture_env_dot3", o(ARB_texture_env_dot3), GL, 2001 }, + { "GL_ARB_texture_float", o(ARB_texture_float), GL, 2004 }, { "GL_ARB_texture_mirrored_repeat", o(ARB_texture_mirrored_repeat), GL, 2001 }, { "GL_ARB_texture_multisample", o(ARB_texture_multisample), GL, 2009 }, { "GL_ARB_texture_non_power_of_two", o(ARB_texture_non_power_of_two), GL, 2003 }, @@ -268,6 +269,7 @@ static const struct extension extension_table[] = { { "GL_ATI_separate_stencil", o(ATI_separate_stencil), GL, 2006 }, { "GL_ATI_texture_compression_3dc", o(ATI_texture_compression_3dc), GL, 2004 }, { "GL_ATI_texture_env_combine3", o(ATI_texture_env_combine3), GL, 2002 }, + { "GL_ATI_texture_float", o(ARB_texture_float), GL, 2002 }, { "GL_ATI_texture_mirror_once", o(ATI_texture_mirror_once), GL, 2006 }, { "GL_IBM_multimode_draw_arrays", o(IBM_multimode_draw_arrays), GL, 1998 }, { "GL_IBM_rasterpos_clip", o(IBM_rasterpos_clip), GL, 1996 }, @@ -278,7 +280,6 @@ static const struct extension extension_table[] = { { "GL_MESA_texture_array", o(MESA_texture_array), GL, 2007 }, { "GL_MESA_texture_signed_rgba", o(EXT_texture_snorm), GL, 2009 }, { "GL_MESA_window_pos", o(ARB_window_pos), GL, 2000 }, - { "GL_MESAX_texture_float", o(ARB_texture_float), GL, 2009 }, { "GL_MESA_ycbcr_texture", o(MESA_ycbcr_texture), GL, 2002 }, { "GL_NV_blend_square", o(NV_blend_square), GL, 1999 }, { "GL_NV_conditional_render", o(NV_conditional_render), GL, 2008 }, diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c index eb1fef51427..1edb310ea13 100644 --- a/src/mesa/main/fbobject.c +++ b/src/mesa/main/fbobject.c @@ -1145,7 +1145,37 @@ _mesa_base_fbo_format(struct gl_context *ctx, GLenum internalFormat) case GL_INTENSITY16_SNORM: return ctx->Extensions.EXT_texture_snorm && ctx->Extensions.ARB_framebuffer_object ? GL_INTENSITY : 0; - /* XXX add floating point and integer formats eventually */ + case GL_R16F: + case GL_R32F: + return ctx->Extensions.ARB_texture_rg && + ctx->Extensions.ARB_texture_float ? GL_RED : 0; + case GL_RG16F: + case GL_RG32F: + return ctx->Extensions.ARB_texture_rg && + ctx->Extensions.ARB_texture_float ? GL_RG : 0; + case GL_RGB16F: + case GL_RGB32F: + return ctx->Extensions.ARB_texture_float ? GL_RGB : 0; + case GL_RGBA16F: + case GL_RGBA32F: + return ctx->Extensions.ARB_texture_float ? GL_RGBA : 0; + case GL_ALPHA16F_ARB: + case GL_ALPHA32F_ARB: + return ctx->Extensions.ARB_texture_float && + ctx->Extensions.ARB_framebuffer_object ? GL_ALPHA : 0; + case GL_LUMINANCE16F_ARB: + case GL_LUMINANCE32F_ARB: + return ctx->Extensions.ARB_texture_float && + ctx->Extensions.ARB_framebuffer_object ? GL_LUMINANCE : 0; + case GL_LUMINANCE_ALPHA16F_ARB: + case GL_LUMINANCE_ALPHA32F_ARB: + return ctx->Extensions.ARB_texture_float && + ctx->Extensions.ARB_framebuffer_object ? GL_LUMINANCE_ALPHA : 0; + case GL_INTENSITY16F_ARB: + case GL_INTENSITY32F_ARB: + return ctx->Extensions.ARB_texture_float && + ctx->Extensions.ARB_framebuffer_object ? GL_INTENSITY : 0; + /* XXX add integer formats eventually */ default: return 0; } diff --git a/src/mesa/main/framebuffer.c b/src/mesa/main/framebuffer.c index 4f0e6f57853..66c9bd91096 100644 --- a/src/mesa/main/framebuffer.c +++ b/src/mesa/main/framebuffer.c @@ -551,7 +551,6 @@ _mesa_update_framebuffer_visual(struct gl_context *ctx, fb->Visual.alphaBits = _mesa_get_format_bits(fmt, GL_ALPHA_BITS); fb->Visual.rgbBits = fb->Visual.redBits + fb->Visual.greenBits + fb->Visual.blueBits; - fb->Visual.floatMode = GL_FALSE; fb->Visual.samples = rb->NumSamples; if (_mesa_get_format_color_encoding(fmt) == GL_SRGB) fb->Visual.sRGBCapable = ctx->Const.sRGBCapable; @@ -560,6 +559,19 @@ _mesa_update_framebuffer_visual(struct gl_context *ctx, } } + fb->Visual.floatMode = GL_FALSE; + for (i = 0; i < BUFFER_COUNT; i++) { + if (fb->Attachment[i].Renderbuffer) { + const struct gl_renderbuffer *rb = fb->Attachment[i].Renderbuffer; + const gl_format fmt = rb->Format; + + if (_mesa_get_format_datatype(fmt) == GL_FLOAT) { + fb->Visual.floatMode = GL_TRUE; + break; + } + } + } + if (fb->Attachment[BUFFER_DEPTH].Renderbuffer) { const struct gl_renderbuffer *rb = fb->Attachment[BUFFER_DEPTH].Renderbuffer; From 33128310b0ae67cb77f9854b206bc03dd24755ea Mon Sep 17 00:00:00 2001 From: Luca Barbieri Date: Wed, 16 Feb 2011 00:40:37 +0100 Subject: [PATCH 290/420] gallium: add A/L/LA/I floating point formats --- src/gallium/auxiliary/util/u_format.csv | 8 ++++++++ src/gallium/include/pipe/p_format.h | 9 +++++++++ 2 files changed, 17 insertions(+) diff --git a/src/gallium/auxiliary/util/u_format.csv b/src/gallium/auxiliary/util/u_format.csv index 771bd49412d..990bcff7234 100644 --- a/src/gallium/auxiliary/util/u_format.csv +++ b/src/gallium/auxiliary/util/u_format.csv @@ -96,6 +96,14 @@ PIPE_FORMAT_A16_SNORM , plain, 1, 1, sn16, , , , 000x, r PIPE_FORMAT_L16_SNORM , plain, 1, 1, sn16, , , , xxx1, rgb PIPE_FORMAT_L16A16_SNORM , plain, 1, 1, sn16, sn16, , , xxxy, rgb PIPE_FORMAT_I16_SNORM , plain, 1, 1, sn16, , , , xxxx, rgb +PIPE_FORMAT_A16_FLOAT , plain, 1, 1, f16 , , , , 000x, rgb +PIPE_FORMAT_L16_FLOAT , plain, 1, 1, f16 , , , , xxx1, rgb +PIPE_FORMAT_L16A16_FLOAT , plain, 1, 1, f16 , f16 , , , xxxy, rgb +PIPE_FORMAT_I16_FLOAT , plain, 1, 1, f16 , , , , xxxx, rgb +PIPE_FORMAT_A32_FLOAT , plain, 1, 1, f32 , , , , 000x, rgb +PIPE_FORMAT_L32_FLOAT , plain, 1, 1, f32 , , , , xxx1, rgb +PIPE_FORMAT_L32A32_FLOAT , plain, 1, 1, f32 , f32 , , , xxxy, rgb +PIPE_FORMAT_I32_FLOAT , plain, 1, 1, f32 , , , , xxxx, rgb # SRGB formats PIPE_FORMAT_L8_SRGB , plain, 1, 1, un8 , , , , xxx1, srgb diff --git a/src/gallium/include/pipe/p_format.h b/src/gallium/include/pipe/p_format.h index 3ea9a3999d1..690e9344334 100644 --- a/src/gallium/include/pipe/p_format.h +++ b/src/gallium/include/pipe/p_format.h @@ -220,6 +220,15 @@ enum pipe_format { PIPE_FORMAT_L16A16_SNORM = 153, PIPE_FORMAT_I16_SNORM = 154, + PIPE_FORMAT_A16_FLOAT = 155, + PIPE_FORMAT_L16_FLOAT = 156, + PIPE_FORMAT_L16A16_FLOAT = 157, + PIPE_FORMAT_I16_FLOAT = 158, + PIPE_FORMAT_A32_FLOAT = 159, + PIPE_FORMAT_L32_FLOAT = 160, + PIPE_FORMAT_L32A32_FLOAT = 161, + PIPE_FORMAT_I32_FLOAT = 162, + PIPE_FORMAT_COUNT }; From 8e28d842d192e69ba8cae4f9754766a26ae8c739 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Wed, 16 Feb 2011 00:40:37 +0100 Subject: [PATCH 291/420] st/mesa: convert Mesa float formats to Gallium MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Squashed commit of the following: Author: Marek Olšák st/mesa: require RGBA16F and RGBA32F to be renderable st/mesa: fix L32F and L16F format translation st/mesa: also convert the R/RG float formats commit 49a9948b6a81b7d813304d081139d98e95ba5d1a Author: Luca Barbieri Date: Fri Aug 20 10:36:17 2010 +0200 mesa/st: enable ARB_texture_float if supported formats allow it commit 7383632f7b6f9021b65f4973b7e7c99f0e8ce9b2 Author: Luca Barbieri Date: Tue Aug 24 21:00:46 2010 +0200 mesa/st: support ARB_texture_float internal formats commit 7c362cc06982586c2d29fac55f6bcc4bcd1550b5 Author: Luca Barbieri Date: Tue Aug 24 21:00:33 2010 +0200 mesa/st: convert L/A/I floating point formats --- src/mesa/state_tracker/st_extensions.c | 12 ++ src/mesa/state_tracker/st_format.c | 237 +++++++++++++++++++++++++ 2 files changed, 249 insertions(+) diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c index 9bc9d7a10f5..bdc08949dd4 100644 --- a/src/mesa/state_tracker/st_extensions.c +++ b/src/mesa/state_tracker/st_extensions.c @@ -382,6 +382,18 @@ void st_init_extensions(struct st_context *st) ctx->Extensions.EXT_packed_depth_stencil = GL_TRUE; } + /* float support - assume nothing exclusively supports 64-bit floats */ + if (screen->is_format_supported(screen, PIPE_FORMAT_R32G32B32A32_FLOAT, + PIPE_TEXTURE_2D, 0, + PIPE_BIND_SAMPLER_VIEW | + PIPE_BIND_RENDER_TARGET) && + screen->is_format_supported(screen, PIPE_FORMAT_R16G16B16A16_FLOAT, + PIPE_TEXTURE_2D, 0, + PIPE_BIND_SAMPLER_VIEW | + PIPE_BIND_RENDER_TARGET)) { + ctx->Extensions.ARB_texture_float = GL_TRUE; + } + /* sRGB support */ if (screen->is_format_supported(screen, PIPE_FORMAT_A8B8G8R8_SRGB, PIPE_TEXTURE_2D, 0, diff --git a/src/mesa/state_tracker/st_format.c b/src/mesa/state_tracker/st_format.c index 957a06c0880..8e50dbda685 100644 --- a/src/mesa/state_tracker/st_format.c +++ b/src/mesa/state_tracker/st_format.c @@ -214,6 +214,39 @@ st_mesa_format_to_pipe_format(gl_format mesaFormat) case MESA_FORMAT_SARGB8: return PIPE_FORMAT_B8G8R8A8_SRGB; #endif + case MESA_FORMAT_RGBA_FLOAT32: + return PIPE_FORMAT_R32G32B32A32_FLOAT; + case MESA_FORMAT_RGBA_FLOAT16: + return PIPE_FORMAT_R16G16B16A16_FLOAT; + case MESA_FORMAT_RGB_FLOAT32: + return PIPE_FORMAT_R32G32B32_FLOAT; + case MESA_FORMAT_RGB_FLOAT16: + return PIPE_FORMAT_R16G16B16_FLOAT; + case MESA_FORMAT_LUMINANCE_ALPHA_FLOAT32: + return PIPE_FORMAT_L32A32_FLOAT; + case MESA_FORMAT_LUMINANCE_ALPHA_FLOAT16: + return PIPE_FORMAT_L16A16_FLOAT; + case MESA_FORMAT_LUMINANCE_FLOAT32: + return PIPE_FORMAT_L32_FLOAT; + case MESA_FORMAT_LUMINANCE_FLOAT16: + return PIPE_FORMAT_L16_FLOAT; + case MESA_FORMAT_ALPHA_FLOAT32: + return PIPE_FORMAT_A32_FLOAT; + case MESA_FORMAT_ALPHA_FLOAT16: + return PIPE_FORMAT_A16_FLOAT; + case MESA_FORMAT_INTENSITY_FLOAT32: + return PIPE_FORMAT_I32_FLOAT; + case MESA_FORMAT_INTENSITY_FLOAT16: + return PIPE_FORMAT_I16_FLOAT; + case MESA_FORMAT_R_FLOAT32: + return PIPE_FORMAT_R32_FLOAT; + case MESA_FORMAT_R_FLOAT16: + return PIPE_FORMAT_R16_FLOAT; + case MESA_FORMAT_RG_FLOAT32: + return PIPE_FORMAT_R32G32_FLOAT; + case MESA_FORMAT_RG_FLOAT16: + return PIPE_FORMAT_R16G16_FLOAT; + case MESA_FORMAT_R8: return PIPE_FORMAT_R8_UNORM; case MESA_FORMAT_R16: @@ -403,6 +436,38 @@ st_pipe_format_to_mesa_format(enum pipe_format format) case PIPE_FORMAT_B8G8R8A8_SRGB: return MESA_FORMAT_SARGB8; #endif + case PIPE_FORMAT_R32G32B32A32_FLOAT: + return MESA_FORMAT_RGBA_FLOAT32; + case PIPE_FORMAT_R16G16B16A16_FLOAT: + return MESA_FORMAT_RGBA_FLOAT16; + case PIPE_FORMAT_R32G32B32_FLOAT: + return MESA_FORMAT_RGB_FLOAT32; + case PIPE_FORMAT_R16G16B16_FLOAT: + return MESA_FORMAT_RGB_FLOAT16; + case PIPE_FORMAT_L32A32_FLOAT: + return MESA_FORMAT_LUMINANCE_ALPHA_FLOAT32; + case PIPE_FORMAT_L16A16_FLOAT: + return MESA_FORMAT_LUMINANCE_ALPHA_FLOAT16; + case PIPE_FORMAT_L32_FLOAT: + return MESA_FORMAT_LUMINANCE_FLOAT32; + case PIPE_FORMAT_L16_FLOAT: + return MESA_FORMAT_LUMINANCE_FLOAT16; + case PIPE_FORMAT_A32_FLOAT: + return MESA_FORMAT_ALPHA_FLOAT32; + case PIPE_FORMAT_A16_FLOAT: + return MESA_FORMAT_ALPHA_FLOAT16; + case PIPE_FORMAT_I32_FLOAT: + return MESA_FORMAT_INTENSITY_FLOAT32; + case PIPE_FORMAT_I16_FLOAT: + return MESA_FORMAT_INTENSITY_FLOAT16; + case PIPE_FORMAT_R32_FLOAT: + return MESA_FORMAT_R_FLOAT32; + case PIPE_FORMAT_R16_FLOAT: + return MESA_FORMAT_R_FLOAT16; + case PIPE_FORMAT_R32G32_FLOAT: + return MESA_FORMAT_RG_FLOAT32; + case PIPE_FORMAT_R16G16_FLOAT: + return MESA_FORMAT_RG_FLOAT16; case PIPE_FORMAT_R8_UNORM: return MESA_FORMAT_R8; @@ -887,6 +952,178 @@ st_choose_format(struct pipe_screen *screen, GLenum internalFormat, return PIPE_FORMAT_L8_SRGB; return default_srgba_format( screen, target, sample_count, bindings); + /* prefer formats in order of data size, choosing 16-bit ones if equal sized */ + case GL_RGBA16F_ARB: + case GL_RGB16F_ARB: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_R16G16B16A16_FLOAT, + PIPE_FORMAT_R32G32B32A32_FLOAT + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + case GL_LUMINANCE_ALPHA16F_ARB: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_L16A16_FLOAT, + PIPE_FORMAT_R16G16B16A16_FLOAT, + PIPE_FORMAT_L32A32_FLOAT, + PIPE_FORMAT_R32G32B32A32_FLOAT + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + case GL_ALPHA16F_ARB: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_A16_FLOAT, + PIPE_FORMAT_L16A16_FLOAT, + PIPE_FORMAT_A32_FLOAT, + PIPE_FORMAT_R16G16B16A16_FLOAT, + PIPE_FORMAT_L32A32_FLOAT, + PIPE_FORMAT_R32G32B32A32_FLOAT + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + case GL_INTENSITY16F_ARB: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_I16_FLOAT, + PIPE_FORMAT_L16A16_FLOAT, + PIPE_FORMAT_I32_FLOAT, + PIPE_FORMAT_R16G16B16A16_FLOAT, + PIPE_FORMAT_L32A32_FLOAT, + PIPE_FORMAT_R32G32B32A32_FLOAT + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + case GL_LUMINANCE16F_ARB: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_L16_FLOAT, + PIPE_FORMAT_L16A16_FLOAT, + PIPE_FORMAT_L32_FLOAT, + PIPE_FORMAT_R16G16B16A16_FLOAT, + PIPE_FORMAT_L32A32_FLOAT, + PIPE_FORMAT_R32G32B32A32_FLOAT + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + case GL_R16F: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_R16_FLOAT, + PIPE_FORMAT_R16G16_FLOAT, + PIPE_FORMAT_R32_FLOAT, + PIPE_FORMAT_R16G16B16A16_FLOAT, + PIPE_FORMAT_R32G32_FLOAT, + PIPE_FORMAT_R32G32B32A32_FLOAT + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + case GL_RG16F: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_R16G16_FLOAT, + PIPE_FORMAT_R16G16B16A16_FLOAT, + PIPE_FORMAT_R32G32_FLOAT, + PIPE_FORMAT_R32G32B32A32_FLOAT + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + + /* try a 32-bit format if available, otherwise fallback to a 16-bit one */ + case GL_RGBA32F_ARB: + case GL_RGB32F_ARB: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_R32G32B32A32_FLOAT, + PIPE_FORMAT_R16G16B16A16_FLOAT + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + case GL_LUMINANCE_ALPHA32F_ARB: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_L32A32_FLOAT, + PIPE_FORMAT_R32G32B32A32_FLOAT, + PIPE_FORMAT_L16A16_FLOAT, + PIPE_FORMAT_R16G16B16A16_FLOAT + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + case GL_ALPHA32F_ARB: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_A32_FLOAT, + PIPE_FORMAT_L32A32_FLOAT, + PIPE_FORMAT_R32G32B32A32_FLOAT, + PIPE_FORMAT_A16_FLOAT, + PIPE_FORMAT_L16A16_FLOAT, + PIPE_FORMAT_R16G16B16A16_FLOAT + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + case GL_INTENSITY32F_ARB: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_I32_FLOAT, + PIPE_FORMAT_L32A32_FLOAT, + PIPE_FORMAT_R32G32B32A32_FLOAT, + PIPE_FORMAT_I16_FLOAT, + PIPE_FORMAT_L16A16_FLOAT, + PIPE_FORMAT_R16G16B16A16_FLOAT + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + case GL_LUMINANCE32F_ARB: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_L32_FLOAT, + PIPE_FORMAT_L32A32_FLOAT, + PIPE_FORMAT_R32G32B32A32_FLOAT, + PIPE_FORMAT_L16_FLOAT, + PIPE_FORMAT_L16A16_FLOAT, + PIPE_FORMAT_R16G16B16A16_FLOAT + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + case GL_R32F: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_R32_FLOAT, + PIPE_FORMAT_R32G32_FLOAT, + PIPE_FORMAT_R32G32B32A32_FLOAT, + PIPE_FORMAT_R16_FLOAT, + PIPE_FORMAT_R16G16_FLOAT, + PIPE_FORMAT_R16G16B16A16_FLOAT + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + case GL_RG32F: + { + static const enum pipe_format formats[] = { + PIPE_FORMAT_R32G32_FLOAT, + PIPE_FORMAT_R32G32B32A32_FLOAT, + PIPE_FORMAT_R16G16_FLOAT, + PIPE_FORMAT_R16G16B16A16_FLOAT + }; + return find_supported_format(screen, formats, Elements(formats), + target, sample_count, bindings); + } + case GL_RED: case GL_R8: if (screen->is_format_supported(screen, PIPE_FORMAT_R8_UNORM, target, From faba01d171a85399332e2ece8f66ba40495eda90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Tue, 29 Mar 2011 16:35:13 +0200 Subject: [PATCH 292/420] r300g: enable A/L/LA/I float render targets --- src/gallium/drivers/r300/r300_texture.c | 28 ++++++++++++------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/src/gallium/drivers/r300/r300_texture.c b/src/gallium/drivers/r300/r300_texture.c index 47d1c3ef75e..87e32a21fc1 100644 --- a/src/gallium/drivers/r300/r300_texture.c +++ b/src/gallium/drivers/r300/r300_texture.c @@ -420,13 +420,13 @@ static uint32_t r300_translate_colorformat(enum pipe_format format) /* These formats work fine with UV88 if US_OUT_FMT is set correctly. */ case PIPE_FORMAT_A16_UNORM: case PIPE_FORMAT_A16_SNORM: - /*case PIPE_FORMAT_A16_FLOAT:*/ + case PIPE_FORMAT_A16_FLOAT: case PIPE_FORMAT_L16_UNORM: case PIPE_FORMAT_L16_SNORM: - /*case PIPE_FORMAT_L16_FLOAT:*/ + case PIPE_FORMAT_L16_FLOAT: case PIPE_FORMAT_I16_UNORM: case PIPE_FORMAT_I16_SNORM: - /*case PIPE_FORMAT_I16_FLOAT:*/ + case PIPE_FORMAT_I16_FLOAT: case PIPE_FORMAT_R16_UNORM: case PIPE_FORMAT_R16_SNORM: case PIPE_FORMAT_R16_FLOAT: @@ -467,10 +467,10 @@ static uint32_t r300_translate_colorformat(enum pipe_format format) case PIPE_FORMAT_R16G16_FLOAT: case PIPE_FORMAT_L16A16_UNORM: case PIPE_FORMAT_L16A16_SNORM: - /*case PIPE_FORMAT_L16A16_FLOAT: + case PIPE_FORMAT_L16A16_FLOAT: case PIPE_FORMAT_A32_FLOAT: case PIPE_FORMAT_L32_FLOAT: - case PIPE_FORMAT_I32_FLOAT:*/ + case PIPE_FORMAT_I32_FLOAT: case PIPE_FORMAT_R32_FLOAT: return R300_COLOR_FORMAT_ARGB8888; @@ -486,7 +486,7 @@ static uint32_t r300_translate_colorformat(enum pipe_format format) /* These formats work fine with ARGB16161616 if US_OUT_FMT is set * correctly. */ case PIPE_FORMAT_R32G32_FLOAT: - /*case PIPE_FORMAT_L32A32_FLOAT:*/ + case PIPE_FORMAT_L32A32_FLOAT: return R300_COLOR_FORMAT_ARGB16161616; /* 128-bit buffers. */ @@ -669,8 +669,8 @@ static uint32_t r300_translate_out_fmt(enum pipe_format format) /*case PIPE_FORMAT_X8R8G8B8_SNORM:*/ case PIPE_FORMAT_A16_UNORM: case PIPE_FORMAT_A16_SNORM: - /*case PIPE_FORMAT_A16_FLOAT: - case PIPE_FORMAT_A32_FLOAT:*/ + case PIPE_FORMAT_A16_FLOAT: + case PIPE_FORMAT_A32_FLOAT: return modifier | R300_C0_SEL_A | R300_C1_SEL_R | R300_C2_SEL_G | R300_C3_SEL_B; @@ -704,12 +704,12 @@ static uint32_t r300_translate_out_fmt(enum pipe_format format) case PIPE_FORMAT_R32G32B32A32_FLOAT: case PIPE_FORMAT_L16_UNORM: case PIPE_FORMAT_L16_SNORM: - /*case PIPE_FORMAT_L16_FLOAT: - case PIPE_FORMAT_L32_FLOAT:*/ + case PIPE_FORMAT_L16_FLOAT: + case PIPE_FORMAT_L32_FLOAT: case PIPE_FORMAT_I16_UNORM: case PIPE_FORMAT_I16_SNORM: - /*case PIPE_FORMAT_I16_FLOAT: - case PIPE_FORMAT_I32_FLOAT:*/ + case PIPE_FORMAT_I16_FLOAT: + case PIPE_FORMAT_I32_FLOAT: return modifier | R300_C0_SEL_R | R300_C1_SEL_G | R300_C2_SEL_B | R300_C3_SEL_A; @@ -717,8 +717,8 @@ static uint32_t r300_translate_out_fmt(enum pipe_format format) /* LA outputs. */ case PIPE_FORMAT_L16A16_UNORM: case PIPE_FORMAT_L16A16_SNORM: - /*case PIPE_FORMAT_L16A16_FLOAT: - case PIPE_FORMAT_L32A32_FLOAT:*/ + case PIPE_FORMAT_L16A16_FLOAT: + case PIPE_FORMAT_L32A32_FLOAT: return modifier | R300_C0_SEL_R | R300_C1_SEL_A; From 2d12dbb28d80fb24289fee17a1b4f97708ab2d3e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Fri, 1 Apr 2011 01:12:41 +0200 Subject: [PATCH 293/420] docs: add patents.txt MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Thanks to José Fonseca for writing this. --- docs/patents.txt | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 docs/patents.txt diff --git a/docs/patents.txt b/docs/patents.txt new file mode 100644 index 00000000000..fabe214bb4a --- /dev/null +++ b/docs/patents.txt @@ -0,0 +1,31 @@ +ARB_texture_float: + + Silicon Graphics, Inc. owns US Patent #6,650,327, issued November 18, + 2003 [1]. + + SGI believes this patent contains necessary IP for graphics systems + implementing floating point rasterization and floating point + framebuffer capabilities described in ARB_texture_float extension, and + will discuss licensing on RAND terms, on an individual basis with + companies wishing to use this IP in the context of conformant OpenGL + implementations [2]. + + The source code to implement ARB_texture_float extension is included + and can be toggled on at compile time only by those who purchased + a license from SGI, or are in a country where the patent does not + apply. + + The software is provided "as is", without warranty of any kind, express + or implied, including but not limited to the warranties of + merchantability, fitness for a particular purpose and noninfringement. + In no event shall the authors or copyright holders be liable for any + claim, damages or other liability, whether in an action of contract, + tort or otherwise, arising from, out of or in connection with the + software or the use or other dealings in the software. + + You should contact a lawyer or SGI's legal department if you want to + enable this extension. + + +[1] http://www.google.com/patents/about?id=mIIOAAAAEBAJ&dq=6650327 +[2] http://www.opengl.org/registry/specs/ARB/texture_float.txt From 848f7d368d97f02eeb0c6546548784d639e3c3bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Fri, 1 Apr 2011 01:12:41 +0200 Subject: [PATCH 294/420] configure.ac: add an enable switch for float textures (v2) So --enable-texture-float it is. Hardware drivers (including the Gallium ones) should use #ifdef TEXTURE_FLOAT_ENABLED to hide any code that may expose floating-point renderbuffers via any interface, public or private. v2: Print a warning when using --enable-texture-float. --- configure.ac | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/configure.ac b/configure.ac index 5265cf6b1ea..ddd860813bb 100644 --- a/configure.ac +++ b/configure.ac @@ -319,6 +319,21 @@ else esac fi +dnl +dnl potentially-infringing-but-nobody-knows-for-sure stuff +dnl +AC_ARG_ENABLE([texture-float], + [AS_HELP_STRING([--enable-texture-float], + [enable floating-point textures and renderbuffers @<:@default=disabled@:>@])], + [enable_texture_float="$enableval"], + [enable_texture_float=no] +) +if test "x$enable_texture_float" = xyes; then + AC_MSG_WARN([Floating-point textures enabled.]) + AC_MSG_WARN([Please consult docs/patents.txt with your lawyer before building Mesa.]) + DEFINES="$DEFINES -DTEXTURE_FLOAT_ENABLED" +fi + GL_LIB_NAME='lib$(GL_LIB).'${LIB_EXTENSION} GLU_LIB_NAME='lib$(GLU_LIB).'${LIB_EXTENSION} GLUT_LIB_NAME='lib$(GLUT_LIB).'${LIB_EXTENSION} From 75fa5c99a86c1ae0f8a4fecc016a5f82da9ae80a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Mon, 11 Apr 2011 06:23:00 +0200 Subject: [PATCH 295/420] gallium: add and use generic function for querying patented format support (v2) v2: Unsigned floats are allowed regardless of the configure switch. --- src/gallium/auxiliary/util/u_format.c | 49 +++++++++++++++++++ src/gallium/auxiliary/util/u_format.h | 10 ++++ src/gallium/drivers/i915/i915_screen.c | 3 ++ src/gallium/drivers/i965/brw_screen.c | 3 ++ src/gallium/drivers/nv50/nv50_screen.c | 13 +---- src/gallium/drivers/nvc0/nvc0_screen.c | 13 +---- src/gallium/drivers/nvfx/nvfx_screen.c | 3 ++ src/gallium/drivers/r300/r300_screen.c | 3 ++ src/gallium/drivers/r300/r300_state_derived.c | 19 ------- src/gallium/drivers/r600/r600_pipe.c | 3 ++ 10 files changed, 78 insertions(+), 41 deletions(-) diff --git a/src/gallium/auxiliary/util/u_format.c b/src/gallium/auxiliary/util/u_format.c index 4896faa12bf..9cbdd0a5b99 100644 --- a/src/gallium/auxiliary/util/u_format.c +++ b/src/gallium/auxiliary/util/u_format.c @@ -36,6 +36,55 @@ #include "u_memory.h" #include "u_rect.h" #include "u_format.h" +#include "u_format_s3tc.h" + +#include "pipe/p_defines.h" + + +boolean +util_format_is_float(enum pipe_format format) +{ + const struct util_format_description *desc = util_format_description(format); + unsigned i; + + assert(desc); + if (!desc) { + return FALSE; + } + + /* Find the first non-void channel. */ + for (i = 0; i < 4; i++) { + if (desc->channel[i].type != UTIL_FORMAT_TYPE_VOID) { + break; + } + } + + if (i == 4) { + return FALSE; + } + + return desc->channel[i].type == UTIL_FORMAT_TYPE_FLOAT ? TRUE : FALSE; +} + + +boolean +util_format_is_supported(enum pipe_format format, unsigned bind) +{ + if (util_format_is_s3tc(format) && !util_format_s3tc_enabled) { + return FALSE; + } + +#ifndef TEXTURE_FLOAT_ENABLED + if ((bind & PIPE_BIND_RENDER_TARGET) && + format != PIPE_FORMAT_R9G9B9E5_FLOAT && + format != PIPE_FORMAT_R11G11B10_FLOAT && + util_format_is_float(format)) { + return FALSE; + } +#endif + + return TRUE; +} void diff --git a/src/gallium/auxiliary/util/u_format.h b/src/gallium/auxiliary/util/u_format.h index 7659a802a41..bb3ed72e932 100644 --- a/src/gallium/auxiliary/util/u_format.h +++ b/src/gallium/auxiliary/util/u_format.h @@ -473,6 +473,10 @@ util_format_colormask(const struct util_format_description *desc) } +boolean +util_format_is_float(enum pipe_format format); + + /** * Whether the src format can be blitted to destation format with a simple * memcpy. @@ -481,6 +485,12 @@ boolean util_is_format_compatible(const struct util_format_description *src_desc, const struct util_format_description *dst_desc); +/** + * Whether the format is supported by Gallium for the given bindings. + * This covers S3TC textures and floating-point render targets. + */ +boolean +util_format_is_supported(enum pipe_format format, unsigned bind); /** * Whether this format is a rgab8 variant. diff --git a/src/gallium/drivers/i915/i915_screen.c b/src/gallium/drivers/i915/i915_screen.c index e62b609eb5a..6f6a342791a 100644 --- a/src/gallium/drivers/i915/i915_screen.c +++ b/src/gallium/drivers/i915/i915_screen.c @@ -285,6 +285,9 @@ i915_is_format_supported(struct pipe_screen *screen, const enum pipe_format *list; uint i; + if (!util_format_is_supported(format, tex_usage)) + return FALSE; + if (sample_count > 1) return FALSE; diff --git a/src/gallium/drivers/i965/brw_screen.c b/src/gallium/drivers/i965/brw_screen.c index 25204fd088d..5353ae23250 100644 --- a/src/gallium/drivers/i965/brw_screen.c +++ b/src/gallium/drivers/i965/brw_screen.c @@ -333,6 +333,9 @@ brw_is_format_supported(struct pipe_screen *screen, const enum pipe_format *list; uint i; + if (!util_format_is_supported(format, tex_usage)) + return FALSE; + if (sample_count > 1) return FALSE; diff --git a/src/gallium/drivers/nv50/nv50_screen.c b/src/gallium/drivers/nv50/nv50_screen.c index 46622b4be76..e0eea3ed750 100644 --- a/src/gallium/drivers/nv50/nv50_screen.c +++ b/src/gallium/drivers/nv50/nv50_screen.c @@ -45,17 +45,8 @@ nv50_screen_is_format_supported(struct pipe_screen *pscreen, if (sample_count > 1) return FALSE; - if (!util_format_s3tc_enabled) { - switch (format) { - case PIPE_FORMAT_DXT1_RGB: - case PIPE_FORMAT_DXT1_RGBA: - case PIPE_FORMAT_DXT3_RGBA: - case PIPE_FORMAT_DXT5_RGBA: - return FALSE; - default: - break; - } - } + if (!util_format_is_supported(format, bindings)) + return FALSE; switch (format) { case PIPE_FORMAT_Z16_UNORM: diff --git a/src/gallium/drivers/nvc0/nvc0_screen.c b/src/gallium/drivers/nvc0/nvc0_screen.c index 31133f0cc6c..c4cdface502 100644 --- a/src/gallium/drivers/nvc0/nvc0_screen.c +++ b/src/gallium/drivers/nvc0/nvc0_screen.c @@ -39,17 +39,8 @@ nvc0_screen_is_format_supported(struct pipe_screen *pscreen, if (sample_count > 1) return FALSE; - if (!util_format_s3tc_enabled) { - switch (format) { - case PIPE_FORMAT_DXT1_RGB: - case PIPE_FORMAT_DXT1_RGBA: - case PIPE_FORMAT_DXT3_RGBA: - case PIPE_FORMAT_DXT5_RGBA: - return FALSE; - default: - break; - } - } + if (!util_format_is_supported(format, bindings)) + return FALSE; /* transfers & shared are always supported */ bindings &= ~(PIPE_BIND_TRANSFER_READ | diff --git a/src/gallium/drivers/nvfx/nvfx_screen.c b/src/gallium/drivers/nvfx/nvfx_screen.c index 0c8d33fb0aa..abbed9651ee 100644 --- a/src/gallium/drivers/nvfx/nvfx_screen.c +++ b/src/gallium/drivers/nvfx/nvfx_screen.c @@ -208,6 +208,9 @@ nvfx_screen_is_format_supported(struct pipe_screen *pscreen, { struct nvfx_screen *screen = nvfx_screen(pscreen); + if (!util_format_is_supported(format, bind)) + return FALSE; + if (sample_count > 1) return FALSE; diff --git a/src/gallium/drivers/r300/r300_screen.c b/src/gallium/drivers/r300/r300_screen.c index e1f5a9fd221..acb7d9f02d2 100644 --- a/src/gallium/drivers/r300/r300_screen.c +++ b/src/gallium/drivers/r300/r300_screen.c @@ -334,6 +334,9 @@ static boolean r300_is_format_supported(struct pipe_screen* screen, format == PIPE_FORMAT_R16G16B16_FLOAT || format == PIPE_FORMAT_R16G16B16A16_FLOAT; + if (!util_format_is_supported(format, usage)) + return FALSE; + /* Check multisampling support. */ switch (sample_count) { case 0: diff --git a/src/gallium/drivers/r300/r300_state_derived.c b/src/gallium/drivers/r300/r300_state_derived.c index b4d45f5eee0..afc1451183d 100644 --- a/src/gallium/drivers/r300/r300_state_derived.c +++ b/src/gallium/drivers/r300/r300_state_derived.c @@ -741,25 +741,6 @@ static uint32_t r300_get_border_color(enum pipe_format format, return uc.ui; } -static boolean util_format_is_float(enum pipe_format format) -{ - const struct util_format_description *desc = util_format_description(format); - unsigned i; - - if (!format) - return FALSE; - - /* Find the first non-void channel. */ - for (i = 0; i < 4; i++) - if (desc->channel[i].type != UTIL_FORMAT_TYPE_VOID) - break; - - if (i == 4) - return FALSE; - - return desc->channel[i].type == UTIL_FORMAT_TYPE_FLOAT ? TRUE : FALSE; -} - static void r300_merge_textures_and_samplers(struct r300_context* r300) { struct r300_textures_state *state = diff --git a/src/gallium/drivers/r600/r600_pipe.c b/src/gallium/drivers/r600/r600_pipe.c index 5f95540a479..066768f9c38 100644 --- a/src/gallium/drivers/r600/r600_pipe.c +++ b/src/gallium/drivers/r600/r600_pipe.c @@ -523,6 +523,9 @@ static boolean r600_is_format_supported(struct pipe_screen* screen, return FALSE; } + if (!util_format_is_supported(format, usage)) + return FALSE; + /* Multisample */ if (sample_count > 1) return FALSE; From 397e47868378c386c483fda94631597af6d58405 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Wed, 13 Apr 2011 23:48:15 +0200 Subject: [PATCH 296/420] docs: update GL3 status --- docs/GL3.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/GL3.txt b/docs/GL3.txt index 339a0cbdff1..e373a945363 100644 --- a/docs/GL3.txt +++ b/docs/GL3.txt @@ -12,11 +12,11 @@ Feature Status GL 3.0: -GLSL changes (GL_EXT_gpu_shader4, etc) not started +GLSL 1.30 (GL_EXT_gpu_shader4, etc.) not started Conditional rendering (GL_NV_conditional_render) DONE (swrast & softpipe) Map buffer subranges (GL_ARB_map_buffer_range) DONE Clamping controls (GL_ARB_color_buffer_float) DONE -Float textures, renderbuffers (GL_ARB_texture_float) BRANCH ~mareko/mesa floating2 +Float textures, renderbuffers (GL_ARB_texture_float) DONE (gallium r300) GL_EXT_packed_float not started GL_EXT_texture_shared_exponent not started Float depth buffers (GL_ARB_depth_buffer_float) not started @@ -45,7 +45,7 @@ Depth format cube textures 0% done GL 3.1: -GLSL 1.30 and 1.40 not started +GLSL 1.40 not started Instanced drawing (GL_ARB_draw_instanced) DONE (gallium, swrast) Buffer copying (GL_ARB_copy_buffer) DONE Primitive restart (GL_NV_primitive_restart) DONE (gallium) From 93059225633d3e2c69087afb643f4b271545fd71 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Thu, 14 Apr 2011 17:27:03 +0200 Subject: [PATCH 297/420] docs: update relnotes-7.11 I made a glxinfo diff between 7.10 and master and added missing items and also sorted the list. --- docs/relnotes-7.11.html | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/docs/relnotes-7.11.html b/docs/relnotes-7.11.html index c8d380e3b8c..131fecd1884 100644 --- a/docs/relnotes-7.11.html +++ b/docs/relnotes-7.11.html @@ -36,12 +36,22 @@ tbd

    New features

      +
    • GL_ARB_color_buffer_float (gallium drivers) +
    • GL_ARB_draw_buffers_blend (gallium)
    • GL_ARB_draw_instanced extension (gallium drivers, swrast)
    • GL_ARB_instanced_arrays extension (gallium drivers) -
    • GL_ARB_texture_compression_rgtc (gallium r600, swrast) -
    • GL_ARB_draw_buffers_blend (gallium) -
    • GL_EXT_texture_sRGB_decode (gallium drivers, swrast, i965) +
    • GL_ARB_occlusion_query2 (gallium drivers, swrast)
    • GL_ARB_sampler_objects (gallium drivers) +
    • GL_ARB_texture_compression_rgtc (gallium drivers, swrast) +
    • GL_ARB_texture_float (gallium) +
    • GL_EXT_texture_compression_latc (gallium drivers, swrast) +
    • GL_EXT_texture_compression_rgtc (gallium drivers, swrast) +
    • GL_EXT_texture_sRGB_decode (gallium drivers, swrast, i965) +
    • GL_EXT_texture_snorm (gallium drivers) +
    • GL_ATI_draw_buffers (all drivers) +
    • GL_ATI_texture_compression_3dc (gallium drivers, swrast) +
    • GL_ATI_texture_float (gallium) +
    • GL_NV_texture_barrier (gallium drivers)
    From d2afae33f896ece1af0c8953ac9ce141c39f6dd2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Thu, 14 Apr 2011 18:48:34 +0200 Subject: [PATCH 298/420] Revert "r300/compiler: Don't try to convert RGB to Alpha in full instructions" This reverts commit cd2857fae16e1352f39b37f611797e66619d3fe5. It breaks Unigine Heaven. --- src/mesa/drivers/dri/r300/compiler/radeon_pair_schedule.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_pair_schedule.c b/src/mesa/drivers/dri/r300/compiler/radeon_pair_schedule.c index 03a16bcdbf8..8e10813ff06 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_pair_schedule.c +++ b/src/mesa/drivers/dri/r300/compiler/radeon_pair_schedule.c @@ -600,8 +600,7 @@ static void is_rgb_to_alpha_possible( struct rc_reader_data * reader_data = userdata; if (!can_remap(inst->U.P.RGB.Opcode) - || !can_remap(inst->U.P.Alpha.Opcode) - || inst->U.P.Alpha.Opcode != RC_OPCODE_NOP) { + || !can_remap(inst->U.P.Alpha.Opcode)) { reader_data->Abort = 1; return; } From 6e9c7c4c11167c81d476e0366875f5115bbae69c Mon Sep 17 00:00:00 2001 From: Pierre-Eric Pelloux-Prayer Date: Thu, 14 Apr 2011 18:17:28 +0200 Subject: [PATCH 299/420] st/mesa: add handling for 'PIPE_FORMAT_B8G8R8X8_UNORM' in st_fast_readpixels With minor edits by Brian Paul. Signed-off-by: Brian Paul --- src/mesa/state_tracker/st_cb_readpixels.c | 30 +++++++++++++++-------- 1 file changed, 20 insertions(+), 10 deletions(-) diff --git a/src/mesa/state_tracker/st_cb_readpixels.c b/src/mesa/state_tracker/st_cb_readpixels.c index fdb7770e446..1b57e9b6f7e 100644 --- a/src/mesa/state_tracker/st_cb_readpixels.c +++ b/src/mesa/state_tracker/st_cb_readpixels.c @@ -198,6 +198,7 @@ st_fast_readpixels(struct gl_context *ctx, struct st_renderbuffer *strb, const struct gl_pixelstore_attrib *pack, GLvoid *dest) { + GLubyte alphaORoperand; enum combination { A8R8G8B8_UNORM_TO_RGBA_UBYTE, A8R8G8B8_UNORM_TO_RGB_UBYTE, @@ -208,20 +209,24 @@ st_fast_readpixels(struct gl_context *ctx, struct st_renderbuffer *strb, if (ctx->_ImageTransferState) return GL_FALSE; - if (strb->format == PIPE_FORMAT_B8G8R8A8_UNORM && - format == GL_RGBA && type == GL_UNSIGNED_BYTE) { + if (strb->format == PIPE_FORMAT_B8G8R8A8_UNORM) { + alphaORoperand = 0; + } else if (strb->format == PIPE_FORMAT_B8G8R8X8_UNORM ) { + alphaORoperand = 0xff; + } else { + return GL_FALSE; + } + + if (format == GL_RGBA && type == GL_UNSIGNED_BYTE) { combo = A8R8G8B8_UNORM_TO_RGBA_UBYTE; } - else if (strb->format == PIPE_FORMAT_B8G8R8A8_UNORM && - format == GL_RGB && type == GL_UNSIGNED_BYTE) { + else if (format == GL_RGB && type == GL_UNSIGNED_BYTE) { combo = A8R8G8B8_UNORM_TO_RGB_UBYTE; } - else if (strb->format == PIPE_FORMAT_B8G8R8A8_UNORM && - format == GL_BGRA && type == GL_UNSIGNED_INT_8_8_8_8_REV) { + else if (format == GL_BGRA && type == GL_UNSIGNED_INT_8_8_8_8_REV) { combo = A8R8G8B8_UNORM_TO_BGRA_UINT; } - else if (strb->format == PIPE_FORMAT_B8G8R8A8_UNORM && - format == GL_RGBA && type == GL_UNSIGNED_INT_8_8_8_8) { + else if (format == GL_RGBA && type == GL_UNSIGNED_INT_8_8_8_8) { combo = A8R8G8B8_UNORM_TO_RGBA_UINT; } else { @@ -283,7 +288,7 @@ st_fast_readpixels(struct gl_context *ctx, struct st_renderbuffer *strb, dst[col*4+0] = (pixel >> 16) & 0xff; dst[col*4+1] = (pixel >> 8) & 0xff; dst[col*4+2] = (pixel >> 0) & 0xff; - dst[col*4+3] = (pixel >> 24) & 0xff; + dst[col*4+3] = ((pixel >> 24) & 0xff) | alphaORoperand; } dst += dstStride; y += dy; @@ -306,6 +311,11 @@ st_fast_readpixels(struct gl_context *ctx, struct st_renderbuffer *strb, for (row = 0; row < height; row++) { const GLubyte *src = map + y * trans->stride; memcpy(dst, src, 4 * width); + if (alphaORoperand) { + for (col = 0; col < width; col++) { + dst[col*4+3] |= alphaORoperand; + } + } dst += dstStride; y += dy; } @@ -315,7 +325,7 @@ st_fast_readpixels(struct gl_context *ctx, struct st_renderbuffer *strb, const GLubyte *src = map + y * trans->stride; for (col = 0; col < width; col++) { GLuint pixel = ((GLuint *) src)[col]; - dst[col*4+0] = (pixel >> 24) & 0xff; + dst[col*4+0] = ((pixel >> 24) & 0xff) | alphaORoperand; dst[col*4+1] = (pixel >> 0) & 0xff; dst[col*4+2] = (pixel >> 8) & 0xff; dst[col*4+3] = (pixel >> 16) & 0xff; From 2c57caa8939a2d077912eeec287927da77c97ef7 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Fri, 15 Apr 2011 08:32:12 -0600 Subject: [PATCH 300/420] st/mesa: simplify a bit of the previous patch Grrr, this was supposed to go in the previous commit. --- src/mesa/state_tracker/st_cb_readpixels.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/mesa/state_tracker/st_cb_readpixels.c b/src/mesa/state_tracker/st_cb_readpixels.c index 1b57e9b6f7e..2a63799bdbc 100644 --- a/src/mesa/state_tracker/st_cb_readpixels.c +++ b/src/mesa/state_tracker/st_cb_readpixels.c @@ -211,9 +211,11 @@ st_fast_readpixels(struct gl_context *ctx, struct st_renderbuffer *strb, if (strb->format == PIPE_FORMAT_B8G8R8A8_UNORM) { alphaORoperand = 0; - } else if (strb->format == PIPE_FORMAT_B8G8R8X8_UNORM ) { + } + else if (strb->format == PIPE_FORMAT_B8G8R8X8_UNORM ) { alphaORoperand = 0xff; - } else { + } + else { return GL_FALSE; } @@ -312,9 +314,10 @@ st_fast_readpixels(struct gl_context *ctx, struct st_renderbuffer *strb, const GLubyte *src = map + y * trans->stride; memcpy(dst, src, 4 * width); if (alphaORoperand) { - for (col = 0; col < width; col++) { - dst[col*4+3] |= alphaORoperand; - } + assert(alphaORoperand == 0xff); + for (col = 0; col < width; col++) { + dst[col*4+3] = 0xff; + } } dst += dstStride; y += dy; From 1b800c10e4aa3a9792e221043c54bbc930b50829 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Fri, 15 Apr 2011 08:31:10 -0600 Subject: [PATCH 301/420] vega: move ureg_destroy(ureg) after last use of ureg var --- src/gallium/state_trackers/vega/shaders_cache.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gallium/state_trackers/vega/shaders_cache.c b/src/gallium/state_trackers/vega/shaders_cache.c index 023996ce2d8..70d860ddc8e 100644 --- a/src/gallium/state_trackers/vega/shaders_cache.c +++ b/src/gallium/state_trackers/vega/shaders_cache.c @@ -229,7 +229,6 @@ combine_shaders(const struct shader_asm_info *shaders[SHADER_STAGES], int num_sh return NULL; p = pipe->create_fs_state(pipe, shader); - ureg_destroy(ureg); if (num_temps >= 1) { for (i = start_temp; i < end_temp; i++) { @@ -237,6 +236,8 @@ combine_shaders(const struct shader_asm_info *shaders[SHADER_STAGES], int num_sh } } + ureg_destroy(ureg); + if (temp) free(temp); if (constant) From 0630593c5fb22fe0f98f2c815c4a315056a9e3d2 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Fri, 15 Apr 2011 08:32:56 -0600 Subject: [PATCH 302/420] vbo: init prim[] array with memset() This fixes a Coverity warning about uninitialized data. --- src/mesa/vbo/vbo_exec_array.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/src/mesa/vbo/vbo_exec_array.c b/src/mesa/vbo/vbo_exec_array.c index 6e26e4e77a0..a49cd5017a3 100644 --- a/src/mesa/vbo/vbo_exec_array.c +++ b/src/mesa/vbo/vbo_exec_array.c @@ -585,15 +585,11 @@ vbo_draw_arrays(struct gl_context *ctx, GLenum mode, GLint start, if (ctx->NewState) _mesa_update_state(ctx); + /* init most fields to zero */ + memset(prim, 0, sizeof(prim)); prim[0].begin = 1; prim[0].end = 1; - prim[0].weak = 0; - prim[0].pad = 0; prim[0].mode = mode; - prim[0].start = 0; /* filled in below */ - prim[0].count = 0; /* filled in below */ - prim[0].indexed = 0; - prim[0].basevertex = 0; prim[0].num_instances = numInstances; /* Implement the primitive restart index */ From 41b38bd21c1031e65799c888a97d8a0c14ea2aaa Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Fri, 15 Apr 2011 10:16:53 -0600 Subject: [PATCH 303/420] translate: s/varient/variant/ --- .../auxiliary/translate/translate_sse.c | 88 +++++++++---------- 1 file changed, 44 insertions(+), 44 deletions(-) diff --git a/src/gallium/auxiliary/translate/translate_sse.c b/src/gallium/auxiliary/translate/translate_sse.c index b00242d8b20..09e70d93db4 100644 --- a/src/gallium/auxiliary/translate/translate_sse.c +++ b/src/gallium/auxiliary/translate/translate_sse.c @@ -53,7 +53,7 @@ struct translate_buffer { unsigned max_index; }; -struct translate_buffer_varient { +struct translate_buffer_variant { unsigned buffer_index; unsigned instance_divisor; void *ptr; /* updated either per vertex or per instance */ @@ -103,12 +103,12 @@ struct translate_sse { struct translate_buffer buffer[PIPE_MAX_ATTRIBS]; unsigned nr_buffers; - /* Multiple buffer varients can map to a single buffer. */ - struct translate_buffer_varient buffer_varient[PIPE_MAX_ATTRIBS]; - unsigned nr_buffer_varients; + /* Multiple buffer variants can map to a single buffer. */ + struct translate_buffer_variant buffer_variant[PIPE_MAX_ATTRIBS]; + unsigned nr_buffer_variants; - /* Multiple elements can map to a single buffer varient. */ - unsigned element_to_buffer_varient[PIPE_MAX_ATTRIBS]; + /* Multiple elements can map to a single buffer variant. */ + unsigned element_to_buffer_variant[PIPE_MAX_ATTRIBS]; boolean use_instancing; unsigned instance_id; @@ -1062,17 +1062,17 @@ static boolean init_inputs( struct translate_sse *p, struct x86_reg instance_id = x86_make_disp(p->machine_EDI, get_offset(p, &p->instance_id)); - for (i = 0; i < p->nr_buffer_varients; i++) { - struct translate_buffer_varient *varient = &p->buffer_varient[i]; - struct translate_buffer *buffer = &p->buffer[varient->buffer_index]; + for (i = 0; i < p->nr_buffer_variants; i++) { + struct translate_buffer_variant *variant = &p->buffer_variant[i]; + struct translate_buffer *buffer = &p->buffer[variant->buffer_index]; - if (!index_size || varient->instance_divisor) { + if (!index_size || variant->instance_divisor) { struct x86_reg buf_max_index = x86_make_disp(p->machine_EDI, get_offset(p, &buffer->max_index)); struct x86_reg buf_stride = x86_make_disp(p->machine_EDI, get_offset(p, &buffer->stride)); struct x86_reg buf_ptr = x86_make_disp(p->machine_EDI, - get_offset(p, &varient->ptr)); + get_offset(p, &variant->ptr)); struct x86_reg buf_base_ptr = x86_make_disp(p->machine_EDI, get_offset(p, &buffer->base_ptr)); struct x86_reg elt = p->idx_ESI; @@ -1081,12 +1081,12 @@ static boolean init_inputs( struct translate_sse *p, /* Calculate pointer to first attrib: * base_ptr + stride * index, where index depends on instance divisor */ - if (varient->instance_divisor) { + if (variant->instance_divisor) { /* Our index is instance ID divided by instance divisor. */ x86_mov(p->func, tmp_EAX, instance_id); - if (varient->instance_divisor != 1) { + if (variant->instance_divisor != 1) { struct x86_reg tmp_EDX = p->tmp2_EDX; struct x86_reg tmp_ECX = p->src_ECX; @@ -1095,7 +1095,7 @@ static boolean init_inputs( struct translate_sse *p, */ x86_xor(p->func, tmp_EDX, tmp_EDX); - x86_mov_reg_imm(p->func, tmp_ECX, varient->instance_divisor); + x86_mov_reg_imm(p->func, tmp_ECX, variant->instance_divisor); x86_div(p->func, tmp_ECX); /* EAX = EDX:EAX / ECX */ } } else { @@ -1117,7 +1117,7 @@ static boolean init_inputs( struct translate_sse *p, /* In the linear case, keep the buffer pointer instead of the * index number. */ - if (!index_size && p->nr_buffer_varients == 1) + if (!index_size && p->nr_buffer_variants == 1) { x64_rexw(p->func); x86_mov(p->func, elt, tmp_EAX); @@ -1143,14 +1143,14 @@ static struct x86_reg get_buffer_ptr( struct translate_sse *p, return x86_make_disp(p->machine_EDI, get_offset(p, &p->instance_id)); } - if (!index_size && p->nr_buffer_varients == 1) { + if (!index_size && p->nr_buffer_variants == 1) { return p->idx_ESI; } - else if (!index_size || p->buffer_varient[var_idx].instance_divisor) { + else if (!index_size || p->buffer_variant[var_idx].instance_divisor) { struct x86_reg ptr = p->src_ECX; struct x86_reg buf_ptr = x86_make_disp(p->machine_EDI, - get_offset(p, &p->buffer_varient[var_idx].ptr)); + get_offset(p, &p->buffer_variant[var_idx].ptr)); x64_rexw(p->func); x86_mov(p->func, ptr, buf_ptr); @@ -1158,19 +1158,19 @@ static struct x86_reg get_buffer_ptr( struct translate_sse *p, } else { struct x86_reg ptr = p->src_ECX; - const struct translate_buffer_varient *varient = &p->buffer_varient[var_idx]; + const struct translate_buffer_variant *variant = &p->buffer_variant[var_idx]; struct x86_reg buf_stride = x86_make_disp(p->machine_EDI, - get_offset(p, &p->buffer[varient->buffer_index].stride)); + get_offset(p, &p->buffer[variant->buffer_index].stride)); struct x86_reg buf_base_ptr = x86_make_disp(p->machine_EDI, - get_offset(p, &p->buffer[varient->buffer_index].base_ptr)); + get_offset(p, &p->buffer[variant->buffer_index].base_ptr)); struct x86_reg buf_max_index = x86_make_disp(p->machine_EDI, - get_offset(p, &p->buffer[varient->buffer_index].max_index)); + get_offset(p, &p->buffer[variant->buffer_index].max_index)); @@ -1206,11 +1206,11 @@ static struct x86_reg get_buffer_ptr( struct translate_sse *p, static boolean incr_inputs( struct translate_sse *p, unsigned index_size ) { - if (!index_size && p->nr_buffer_varients == 1) { + if (!index_size && p->nr_buffer_variants == 1) { struct x86_reg stride = x86_make_disp(p->machine_EDI, get_offset(p, &p->buffer[0].stride)); - if (p->buffer_varient[0].instance_divisor == 0) { + if (p->buffer_variant[0].instance_divisor == 0) { x64_rexw(p->func); x86_add(p->func, p->idx_ESI, stride); sse_prefetchnta(p->func, x86_make_disp(p->idx_ESI, 192)); @@ -1221,14 +1221,14 @@ static boolean incr_inputs( struct translate_sse *p, /* Is this worthwhile?? */ - for (i = 0; i < p->nr_buffer_varients; i++) { - struct translate_buffer_varient *varient = &p->buffer_varient[i]; + for (i = 0; i < p->nr_buffer_variants; i++) { + struct translate_buffer_variant *variant = &p->buffer_variant[i]; struct x86_reg buf_ptr = x86_make_disp(p->machine_EDI, - get_offset(p, &varient->ptr)); + get_offset(p, &variant->ptr)); struct x86_reg buf_stride = x86_make_disp(p->machine_EDI, - get_offset(p, &p->buffer[varient->buffer_index].stride)); + get_offset(p, &p->buffer[variant->buffer_index].stride)); - if (varient->instance_divisor == 0) { + if (variant->instance_divisor == 0) { x86_mov(p->func, p->tmp_EAX, buf_stride); x64_rexw(p->func); x86_add(p->func, p->tmp_EAX, buf_ptr); @@ -1338,18 +1338,18 @@ static boolean build_vertex_emit( struct translate_sse *p, label = x86_get_label(p->func); { struct x86_reg elt = !index_size ? p->idx_ESI : x86_deref(p->idx_ESI); - int last_varient = -1; + int last_variant = -1; struct x86_reg vb; for (j = 0; j < p->translate.key.nr_elements; j++) { const struct translate_element *a = &p->translate.key.element[j]; - unsigned varient = p->element_to_buffer_varient[j]; + unsigned variant = p->element_to_buffer_variant[j]; /* Figure out source pointer address: */ - if (varient != last_varient) { - last_varient = varient; - vb = get_buffer_ptr(p, index_size, varient, elt); + if (variant != last_variant) { + last_variant = variant; + vb = get_buffer_ptr(p, index_size, variant, elt); } if (!translate_attr( p, a, @@ -1475,24 +1475,24 @@ struct translate *translate_sse2_create( const struct translate_key *key ) } /* - * Map vertex element to vertex buffer varient. + * Map vertex element to vertex buffer variant. */ - for (j = 0; j < p->nr_buffer_varients; j++) { - if (p->buffer_varient[j].buffer_index == key->element[i].input_buffer && - p->buffer_varient[j].instance_divisor == key->element[i].instance_divisor) { + for (j = 0; j < p->nr_buffer_variants; j++) { + if (p->buffer_variant[j].buffer_index == key->element[i].input_buffer && + p->buffer_variant[j].instance_divisor == key->element[i].instance_divisor) { break; } } - if (j == p->nr_buffer_varients) { - p->buffer_varient[j].buffer_index = key->element[i].input_buffer; - p->buffer_varient[j].instance_divisor = key->element[i].instance_divisor; - p->nr_buffer_varients++; + if (j == p->nr_buffer_variants) { + p->buffer_variant[j].buffer_index = key->element[i].input_buffer; + p->buffer_variant[j].instance_divisor = key->element[i].instance_divisor; + p->nr_buffer_variants++; } - p->element_to_buffer_varient[i] = j; + p->element_to_buffer_variant[i] = j; } else { assert(key->element[i].type == TRANSLATE_ELEMENT_INSTANCE_ID); - p->element_to_buffer_varient[i] = ELEMENT_BUFFER_INSTANCE_ID; + p->element_to_buffer_variant[i] = ELEMENT_BUFFER_INSTANCE_ID; } } From 4ee40c37a0c773954967ade311627f0e46ef1bed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Sat, 16 Apr 2011 09:22:34 +0100 Subject: [PATCH 304/420] docs: Undo Marek typo fixes to original text. Not really typos. --- docs/patents.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/patents.txt b/docs/patents.txt index fabe214bb4a..6af830e8287 100644 --- a/docs/patents.txt +++ b/docs/patents.txt @@ -11,9 +11,9 @@ ARB_texture_float: implementations [2]. The source code to implement ARB_texture_float extension is included - and can be toggled on at compile time only by those who purchased - a license from SGI, or are in a country where the patent does not - apply. + and can be toggled on at compile time, for those who purchased a + license from SGI, or are in a country where the this patent do not + apply, etc. The software is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of From bb78f6ad786ec898d1597cf706fe8fc52d3d300a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Sat, 16 Apr 2011 10:18:20 +0100 Subject: [PATCH 305/420] gallium/docs: Improve min_index/max_index description. --- src/gallium/docs/source/context.rst | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/src/gallium/docs/source/context.rst b/src/gallium/docs/source/context.rst index b0229c70f20..25a3245066c 100644 --- a/src/gallium/docs/source/context.rst +++ b/src/gallium/docs/source/context.rst @@ -179,16 +179,25 @@ the mode of the primitive and the vertices to be fetched, in the range between Every instance with instanceID in the range between ``start_instance`` and ``start_instance``+``instance_count``-1, inclusive, will be drawn. -All vertex indices must fall inside the range given by ``min_index`` and -``max_index``. In case non-indexed draw, ``min_index`` should be set to +If there is an index buffer bound, and ``indexed`` field is true, all vertex +indices will be looked up in the index buffer. + +In indexed draw, ``min_index`` and ``max_index`` respectively provide a lower +and upper bound of the indices contained in the index buffer inside the range +between ``start`` to ``start``+``count``-1. This allows the driver to +determine which subset of vertices will be referenced during te draw call +without having to scan the index buffer. Providing a over-estimation of the +the true bounds, for example, a ``min_index`` and ``max_index`` of 0 and +0xffffffff respectively, must give exactly the same rendering, albeit with less +performance due to unreferenced vertex buffers being unnecessarily DMA'ed or +processed. Providing a underestimation of the true bounds will result in +undefined behavior, but should not result in program or system failure. + +In case of non-indexed draw, ``min_index`` should be set to ``start`` and ``max_index`` should be set to ``start``+``count``-1. -``index_bias`` is a value added to every vertex index before fetching vertex -attributes. It does not affect ``min_index`` and ``max_index``. - -If there is an index buffer bound, and ``indexed`` field is true, all vertex -indices will be looked up in the index buffer. ``min_index``, ``max_index``, -and ``index_bias`` apply after index lookup. +``index_bias`` is a value added to every vertex index after lookup and before +fetching vertex attributes. When drawing indexed primitives, the primitive restart index can be used to draw disjoint primitive strips. For example, several separate From 77db34b50d8d358bdccdcc99a61ca2b40532baab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Fonseca?= Date: Sat, 16 Apr 2011 11:14:25 +0100 Subject: [PATCH 306/420] docs: Reapply some of Marek's typo fixes. There were some typos too. --- docs/patents.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/patents.txt b/docs/patents.txt index 6af830e8287..3834e255cc9 100644 --- a/docs/patents.txt +++ b/docs/patents.txt @@ -12,8 +12,8 @@ ARB_texture_float: The source code to implement ARB_texture_float extension is included and can be toggled on at compile time, for those who purchased a - license from SGI, or are in a country where the this patent do not - apply, etc. + license from SGI, or are in a country where the patent does not apply, + etc. The software is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of From af0e2ef8cc5c823e3c950233a09b8de87933a363 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Sat, 16 Apr 2011 08:03:47 -0600 Subject: [PATCH 307/420] mesa: move error check code in compressedteximage() This was mistakenly inside the #if FEATURE_ES block. --- src/mesa/main/teximage.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mesa/main/teximage.c b/src/mesa/main/teximage.c index c5c454336fa..af0b9c75187 100644 --- a/src/mesa/main/teximage.c +++ b/src/mesa/main/teximage.c @@ -3281,13 +3281,13 @@ compressedteximage(struct gl_context *ctx, GLuint dims, internalFormat, width, height, depth, border, imageSize); -#if FEATURE_ES - /* XXX this is kind of a hack */ if (error) { _mesa_error(ctx, error, "glTexImage2D"); return; } +#if FEATURE_ES + /* XXX this is kind of a hack */ if (dims == 2) { switch (internalFormat) { case GL_PALETTE4_RGB8_OES: From d5a5893adc395158e1dc77dacd417f4eb2696237 Mon Sep 17 00:00:00 2001 From: Carl-Philip Haensch Date: Sat, 16 Apr 2011 08:13:47 -0600 Subject: [PATCH 308/420] mesa: provide more info for glCompressedTexImage() errors Signed-off-by: Brian Paul --- src/mesa/main/teximage.c | 34 ++++++++++++++++++++++++++-------- 1 file changed, 26 insertions(+), 8 deletions(-) diff --git a/src/mesa/main/teximage.c b/src/mesa/main/teximage.c index af0b9c75187..8fb54c693e0 100644 --- a/src/mesa/main/teximage.c +++ b/src/mesa/main/teximage.c @@ -3033,6 +3033,7 @@ get_compressed_block_size(GLenum glformat, GLuint *bw, GLuint *bh) /** * Error checking for glCompressedTexImage[123]D(). + * \param reason returns reason for error, if any * \return error code or GL_NO_ERROR. */ static GLenum @@ -3040,36 +3041,49 @@ compressed_texture_error_check(struct gl_context *ctx, GLint dimensions, GLenum target, GLint level, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, - GLsizei imageSize) + GLsizei imageSize, char **reason) { const GLenum proxyTarget = get_proxy_target(target); const GLint maxLevels = _mesa_max_texture_levels(ctx, target); GLint expectedSize; + *reason = ""; /* no error */ + /* check level */ - if (level < 0 || level >= maxLevels) + if (level < 0 || level >= maxLevels) { + *reason = "level"; return GL_INVALID_VALUE; + } if (!target_can_be_compressed(ctx, target, internalFormat)) { + *reason = "target"; return GL_INVALID_ENUM; } /* This will detect any invalid internalFormat value */ - if (!_mesa_is_compressed_format(ctx, internalFormat)) + if (!_mesa_is_compressed_format(ctx, internalFormat)) { + *reason = "internalFormat"; return GL_INVALID_ENUM; + } /* This should really never fail */ - if (_mesa_base_tex_format(ctx, internalFormat) < 0) + if (_mesa_base_tex_format(ctx, internalFormat) < 0) { + *reason = "internalFormat"; return GL_INVALID_ENUM; + } /* No compressed formats support borders at this time */ - if (border != 0) + if (border != 0) { + *reason = "border != 0"; return GL_INVALID_VALUE; + } /* For cube map, width must equal height */ if (target >= GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB && - target <= GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB && width != height) + target <= GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB && width != height) { + *reason = "width != height"; return GL_INVALID_VALUE; + } /* check image size against compression block size */ { @@ -3086,6 +3100,7 @@ compressed_texture_error_check(struct gl_context *ctx, GLint dimensions, * generated [...] if any parameter combinations are not * supported by the specific compressed internal format. */ + *reason = "invalid width or height for compression format"; return GL_INVALID_OPERATION; } } @@ -3095,6 +3110,7 @@ compressed_texture_error_check(struct gl_context *ctx, GLint dimensions, internalFormat, GL_NONE, GL_NONE, width, height, depth, border)) { /* See error comment above */ + *reason = "invalid width, height or format"; return GL_INVALID_OPERATION; } @@ -3105,6 +3121,7 @@ compressed_texture_error_check(struct gl_context *ctx, GLint dimensions, * if is not consistent with the format, dimensions, and * contents of the specified image. */ + *reason = "imageSize inconsistant with width/height/format"; return GL_INVALID_VALUE; } @@ -3259,6 +3276,7 @@ compressedteximage(struct gl_context *ctx, GLuint dims, GLsizei imageSize, const GLvoid *data) { GLenum error; + char *reason = ""; ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); @@ -3279,10 +3297,10 @@ compressedteximage(struct gl_context *ctx, GLuint dims, error = compressed_texture_error_check(ctx, dims, target, level, internalFormat, width, height, depth, - border, imageSize); + border, imageSize, &reason); if (error) { - _mesa_error(ctx, error, "glTexImage2D"); + _mesa_error(ctx, error, "glTexImage2D(%s)", reason); return; } From 0fa81d6d05b12db825be31533d9a485625ae35e2 Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Sat, 16 Apr 2011 12:39:09 -0700 Subject: [PATCH 309/420] r300/compiler: Fix incorrect presubtract conversion ADD instructions with constant swizzles can't be converted to presubtract operations. NOTE: This is a candidate for the 7.9 and 7.10 branches. --- .../dri/r300/compiler/radeon_optimize.c | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_optimize.c b/src/mesa/drivers/dri/r300/compiler/radeon_optimize.c index c4e6a5e0a1f..79898e1047e 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_optimize.c +++ b/src/mesa/drivers/dri/r300/compiler/radeon_optimize.c @@ -509,10 +509,34 @@ static int is_presub_candidate( { const struct rc_opcode_info * info = rc_get_opcode_info(inst->U.I.Opcode); unsigned int i; + unsigned int is_constant[2] = {0, 0}; + + assert(inst->U.I.Opcode == RC_OPCODE_ADD); if (inst->U.I.PreSub.Opcode != RC_PRESUB_NONE || inst->U.I.SaturateMode) return 0; + /* If both sources use a constant swizzle, then we can't convert it to + * a presubtract operation. In fact for the ADD and SUB presubtract + * operations neither source can contain a constant swizzle. This + * specific case is checked in peephole_add_presub_add() when + * we make sure the swizzles for both sources are equal, so we + * don't need to worry about it here. */ + for (i = 0; i < 2; i++) { + int chan; + for (chan = 0; chan < 4; chan++) { + rc_swizzle swz = + get_swz(inst->U.I.SrcReg[i].Swizzle, chan); + if (swz == RC_SWIZZLE_ONE + || swz == RC_SWIZZLE_ZERO + || swz == RC_SWIZZLE_HALF) { + is_constant[i] = 1; + } + } + } + if (is_constant[0] && is_constant[1]) + return 0; + for(i = 0; i < info->NumSrcRegs; i++) { struct rc_src_register src = inst->U.I.SrcReg[i]; if (src_reads_dst_mask(src, inst->U.I.DstReg)) From 257cc48de2f4e472eb651a4c70042e5cb6b9fe0e Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Tue, 5 Apr 2011 22:38:26 -0700 Subject: [PATCH 310/420] prog_optimize: get_src_arg_mask() respect writemask for more opcodes Reviewed-by: Eric Anholt --- src/mesa/program/prog_optimize.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/mesa/program/prog_optimize.c b/src/mesa/program/prog_optimize.c index 164297a3474..acf0f60eae8 100644 --- a/src/mesa/program/prog_optimize.c +++ b/src/mesa/program/prog_optimize.c @@ -74,6 +74,17 @@ get_src_arg_mask(const struct prog_instruction *inst, case OPCODE_MAD: case OPCODE_MUL: case OPCODE_SUB: + case OPCODE_CMP: + case OPCODE_FLR: + case OPCODE_FRC: + case OPCODE_LRP: + case OPCODE_SEQ: + case OPCODE_SGE: + case OPCODE_SGT: + case OPCODE_SLE: + case OPCODE_SLT: + case OPCODE_SNE: + case OPCODE_SSG: channel_mask = inst->DstReg.WriteMask & dst_mask; break; case OPCODE_RCP: From 97535699ee610a2f66732609f966102150847d3c Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Mon, 4 Apr 2011 22:07:55 -0700 Subject: [PATCH 311/420] prog_optimize: Add simplify CMP optimization pass This pass coverts CMP T0, T1 T2 T0 -> MOV T0, T2 when the CMP instruction is the first instruction to write to register T0. This pass is useful for hardware that requires a lot of lowering passes that generate many CMP instructions. --- src/mesa/program/prog_optimize.c | 78 ++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) diff --git a/src/mesa/program/prog_optimize.c b/src/mesa/program/prog_optimize.c index acf0f60eae8..11debc485eb 100644 --- a/src/mesa/program/prog_optimize.c +++ b/src/mesa/program/prog_optimize.c @@ -1246,6 +1246,83 @@ print_it(struct gl_context *ctx, struct gl_program *program, const char *txt) { } #endif +/** + * This pass replaces CMP T0, T1 T2 T0 with MOV T0, T2 when the CMP + * instruction is the first instruction to write to register T0. The are + * several lowering passes done in GLSL IR (e.g. branches and + * relative addressing) that create a large number of conditional assignments + * that ir_to_mesa converts to CMP instructions like the one mentioned above. + * + * Here is why this conversion is safe: + * CMP T0, T1 T2 T0 can be expanded to: + * if (T1 < 0.0) + * MOV T0, T2; + * else + * MOV T0, T0; + * + * If (T1 < 0.0) evaluates to true then our replacement MOV T0, T2 is the same + * as the original program. If (T1 < 0.0) evaluates to false, executing + * MOV T0, T0 will store a garbage value in T0 since T0 is uninitialized. + * Therefore, it doesn't matter that we are replacing MOV T0, T0 with MOV T0, T2 + * because any instruction that was going to read from T0 after this was going + * to read a garbage value anyway. + */ +static void +_mesa_simplify_cmp(struct gl_program * program) +{ + GLuint tempWrites[REG_ALLOCATE_MAX_PROGRAM_TEMPS]; + GLuint outputWrites[MAX_PROGRAM_OUTPUTS]; + GLuint i; + + if (dbg) { + printf("Optimize: Begin reads without writes\n"); + _mesa_print_program(program); + } + + for (i = 0; i < REG_ALLOCATE_MAX_PROGRAM_TEMPS; i++) { + tempWrites[i] = 0; + } + + for (i = 0; i < MAX_PROGRAM_OUTPUTS; i++) { + outputWrites[i] = 0; + } + + for (i = 0; i < program->NumInstructions; i++) { + struct prog_instruction *inst = program->Instructions + i; + GLuint prevWriteMask; + + /* Give up if we encounter relative addressing or flow control. */ + if (_mesa_is_flow_control_opcode(inst->Opcode) || inst->DstReg.RelAddr) { + return; + } + + if (inst->DstReg.File == PROGRAM_OUTPUT) { + assert(inst->DstReg.Index < MAX_PROGRAM_OUTPUTS); + prevWriteMask = outputWrites[inst->DstReg.Index]; + outputWrites[inst->DstReg.Index] |= inst->DstReg.WriteMask; + } else if (inst->DstReg.File == PROGRAM_TEMPORARY) { + assert(inst->DstReg.Index < REG_ALLOCATE_MAX_PROGRAM_TEMPS); + prevWriteMask = tempWrites[inst->DstReg.Index]; + tempWrites[inst->DstReg.Index] |= inst->DstReg.WriteMask; + } + + /* For a CMP to be considered a conditional write, the destination + * register and source register two must be the same. */ + if (inst->Opcode == OPCODE_CMP + && !(inst->DstReg.WriteMask & prevWriteMask) + && inst->SrcReg[2].File == inst->DstReg.File + && inst->SrcReg[2].Index == inst->DstReg.Index + && inst->DstReg.WriteMask == get_src_arg_mask(inst, 2, NO_MASK)) { + + inst->Opcode = OPCODE_MOV; + inst->SrcReg[0] = inst->SrcReg[1]; + } + } + if (dbg) { + printf("Optimize: End reads without writes\n"); + _mesa_print_program(program); + } +} /** * Apply optimizations to the given program to eliminate unnecessary @@ -1256,6 +1333,7 @@ _mesa_optimize_program(struct gl_context *ctx, struct gl_program *program) { GLboolean any_change; + _mesa_simplify_cmp(program); /* Stop when no modifications were output */ do { any_change = GL_FALSE; From a582b859f73c06e4fc7d4b17d8aaab9060fb9498 Mon Sep 17 00:00:00 2001 From: Christoph Bumiller Date: Sun, 17 Apr 2011 00:14:31 +0200 Subject: [PATCH 312/420] nvc0: fix viewport rectangle calculation --- src/gallium/drivers/nvc0/nvc0_state_validate.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/gallium/drivers/nvc0/nvc0_state_validate.c b/src/gallium/drivers/nvc0/nvc0_state_validate.c index 23a552622e1..9b2a28150b1 100644 --- a/src/gallium/drivers/nvc0/nvc0_state_validate.c +++ b/src/gallium/drivers/nvc0/nvc0_state_validate.c @@ -1,6 +1,7 @@ +#include "util/u_math.h" + #include "nvc0_context.h" -#include "os/os_time.h" static void nvc0_validate_zcull(struct nvc0_context *nvc0) @@ -213,10 +214,11 @@ nvc0_validate_viewport(struct nvc0_context *nvc0) /* now set the viewport rectangle to viewport dimensions for clipping */ - x = (int)(vp->translate[0] - fabsf(vp->scale[0])); - y = (int)(vp->translate[1] - fabsf(vp->scale[1])); - w = (int)fabsf(2.0f * vp->scale[0]); - h = (int)fabsf(2.0f * vp->scale[1]); + x = util_iround(MAX2(0.0f, vp->translate[0] - fabsf(vp->scale[0]))); + y = util_iround(MAX2(0.0f, vp->translate[1] - fabsf(vp->scale[1]))); + w = util_iround(vp->translate[0] + fabsf(vp->scale[0])) - x; + h = util_iround(vp->translate[1] + fabsf(vp->scale[1])) - y; + zmin = vp->translate[2] - fabsf(vp->scale[2]); zmax = vp->translate[2] + fabsf(vp->scale[2]); From b4c7cd3fd6a8ae4b3c704e7c284e10fdb9746153 Mon Sep 17 00:00:00 2001 From: Christoph Bumiller Date: Sat, 16 Apr 2011 13:13:56 +0200 Subject: [PATCH 313/420] nv50,nvc0: fix normalized RG16 and RGBA32 texture format entries --- src/gallium/drivers/nv50/nv50_formats.c | 8 ++++---- src/gallium/drivers/nvc0/nvc0_formats.c | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/gallium/drivers/nv50/nv50_formats.c b/src/gallium/drivers/nv50/nv50_formats.c index 7946117cf30..c10ba038136 100644 --- a/src/gallium/drivers/nv50/nv50_formats.c +++ b/src/gallium/drivers/nv50/nv50_formats.c @@ -237,7 +237,7 @@ const struct nv50_format nv50_format_table[PIPE_FORMAT_COUNT] = /* SNORM 32 */ [PIPE_FORMAT_R32G32B32A32_SNORM] = { 0, - A_(C0, C1, C2, C3, FLOAT, FLOAT, FLOAT, FLOAT, 32_32_32_32, 0), + A_(C0, C1, C2, C3, SNORM, SNORM, SNORM, SNORM, 32_32_32_32, 0), VERTEX_BUFFER | SAMPLER_VIEW }, [PIPE_FORMAT_R32G32B32_SNORM] = { 0, @@ -255,7 +255,7 @@ const struct nv50_format nv50_format_table[PIPE_FORMAT_COUNT] = /* UNORM 32 */ [PIPE_FORMAT_R32G32B32A32_UNORM] = { 0, - A_(C0, C1, C2, C3, FLOAT, FLOAT, FLOAT, FLOAT, 32_32_32_32, 0), + A_(C0, C1, C2, C3, UNORM, UNORM, UNORM, UNORM, 32_32_32_32, 0), VERTEX_BUFFER | SAMPLER_VIEW }, [PIPE_FORMAT_R32G32B32_UNORM] = { 0, @@ -281,7 +281,7 @@ const struct nv50_format nv50_format_table[PIPE_FORMAT_COUNT] = VERTEX_BUFFER | SAMPLER_VIEW }, [PIPE_FORMAT_R16G16_SNORM] = { NV50_SURFACE_FORMAT_R16G16_SNORM, - A_(C0, C1, C2, C3, SNORM, SNORM, SNORM, SNORM, 16_16, 0), + A_(C0, C1, ZERO, ONE_FLOAT, SNORM, SNORM, SNORM, SNORM, 16_16, 0), VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET }, [PIPE_FORMAT_R16_SNORM] = { NV50_SURFACE_FORMAT_R16_SNORM, @@ -299,7 +299,7 @@ const struct nv50_format nv50_format_table[PIPE_FORMAT_COUNT] = VERTEX_BUFFER | SAMPLER_VIEW }, [PIPE_FORMAT_R16G16_UNORM] = { NV50_SURFACE_FORMAT_R16G16_UNORM, - A_(C0, C1, C2, C3, UNORM, UNORM, UNORM, UNORM, 16_16, 0), + A_(C0, C1, ZERO, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 16_16, 0), VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET }, [PIPE_FORMAT_R16_UNORM] = { NV50_SURFACE_FORMAT_R16_UNORM, diff --git a/src/gallium/drivers/nvc0/nvc0_formats.c b/src/gallium/drivers/nvc0/nvc0_formats.c index 454c7440631..6eaa7c2cb3e 100644 --- a/src/gallium/drivers/nvc0/nvc0_formats.c +++ b/src/gallium/drivers/nvc0/nvc0_formats.c @@ -322,7 +322,7 @@ const struct nvc0_format nvc0_format_table[PIPE_FORMAT_COUNT] = VERTEX_BUFFER | SAMPLER_VIEW }, [PIPE_FORMAT_R16G16_SNORM] = { NV50_SURFACE_FORMAT_R16G16_SNORM, - A_(C0, C1, C2, C3, SNORM, SNORM, SNORM, SNORM, 16_16, 0), + A_(C0, C1, ZERO, ONE_FLOAT, SNORM, SNORM, SNORM, SNORM, 16_16, 0), VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET }, [PIPE_FORMAT_R16_SNORM] = { NV50_SURFACE_FORMAT_R16_SNORM, @@ -340,7 +340,7 @@ const struct nvc0_format nvc0_format_table[PIPE_FORMAT_COUNT] = VERTEX_BUFFER | SAMPLER_VIEW }, [PIPE_FORMAT_R16G16_UNORM] = { NV50_SURFACE_FORMAT_R16G16_UNORM, - A_(C0, C1, C2, C3, UNORM, UNORM, UNORM, UNORM, 16_16, 0), + A_(C0, C1, ZERO, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 16_16, 0), VERTEX_BUFFER | SAMPLER_VIEW | RENDER_TARGET }, [PIPE_FORMAT_R16_UNORM] = { NV50_SURFACE_FORMAT_R16_UNORM, From f4ad25fefb33ad4930b09c685688ba71b4a21f32 Mon Sep 17 00:00:00 2001 From: Christoph Bumiller Date: Sat, 16 Apr 2011 13:24:44 +0200 Subject: [PATCH 314/420] nv50,nvc0: add new texture and render target formats --- src/gallium/drivers/nv50/nv50_formats.c | 118 +++++++++++++++++++++++- src/gallium/drivers/nvc0/nvc0_formats.c | 68 ++++++++++++-- 2 files changed, 178 insertions(+), 8 deletions(-) diff --git a/src/gallium/drivers/nv50/nv50_formats.c b/src/gallium/drivers/nv50/nv50_formats.c index c10ba038136..c65189d0671 100644 --- a/src/gallium/drivers/nv50/nv50_formats.c +++ b/src/gallium/drivers/nv50/nv50_formats.c @@ -93,6 +93,10 @@ const struct nv50_format nv50_format_table[PIPE_FORMAT_COUNT] = B_(C2, C1, C0, C3, UNORM, UNORM, UNORM, UNORM, 4_4_4_4, 1), SAMPLER_VIEW }, + [PIPE_FORMAT_B4G4R4X4_UNORM] = { 0, + B_(C2, C1, C0, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 4_4_4_4, 1), + SAMPLER_VIEW }, + [PIPE_FORMAT_R10G10B10A2_UNORM] = { NV50_SURFACE_FORMAT_A2B10G10R10_UNORM, A_(C0, C1, C2, C3, UNORM, UNORM, UNORM, UNORM, 2_10_10_10, 0), SAMPLER_VIEW | RENDER_TARGET | VERTEX_BUFFER | SCANOUT }, @@ -138,14 +142,62 @@ const struct nv50_format nv50_format_table[PIPE_FORMAT_COUNT] = A_(C0, C0, C0, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 8, 0), SAMPLER_VIEW | RENDER_TARGET }, - [PIPE_FORMAT_I8_UNORM] = { NV50_SURFACE_FORMAT_R8_UNORM, - A_(C0, C0, C0, C0, UNORM, UNORM, UNORM, UNORM, 8, 0), + [PIPE_FORMAT_L16_SNORM] = { NV50_SURFACE_FORMAT_R16_SNORM, + B_(C0, C0, C0, ONE_FLOAT, SNORM, SNORM, SNORM, SNORM, 16, 0), SAMPLER_VIEW | RENDER_TARGET }, + [PIPE_FORMAT_L16_FLOAT] = { NV50_SURFACE_FORMAT_R16_FLOAT, + B_(C0, C0, C0, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, 16, 0), + SAMPLER_VIEW | RENDER_TARGET }, + + [PIPE_FORMAT_L32_FLOAT] = { NV50_SURFACE_FORMAT_R32_FLOAT, + B_(C0, C0, C0, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, 32, 0), + SAMPLER_VIEW | RENDER_TARGET }, + + [PIPE_FORMAT_I8_UNORM] = { 0, + A_(C0, C0, C0, C0, UNORM, UNORM, UNORM, UNORM, 8, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_I16_UNORM] = { NV50_SURFACE_FORMAT_R16_UNORM, + A_(C0, C0, C0, C0, UNORM, UNORM, UNORM, UNORM, 16, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_I16_SNORM] = { NV50_SURFACE_FORMAT_R16_SNORM, + B_(C0, C0, C0, C0, SNORM, SNORM, SNORM, SNORM, 16, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_I16_FLOAT] = { NV50_SURFACE_FORMAT_R16_FLOAT, + B_(C0, C0, C0, C0, FLOAT, FLOAT, FLOAT, FLOAT, 16, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_I32_FLOAT] = { NV50_SURFACE_FORMAT_R32_FLOAT, + B_(C0, C0, C0, C0, FLOAT, FLOAT, FLOAT, FLOAT, 32, 0), + SAMPLER_VIEW }, + [PIPE_FORMAT_A8_UNORM] = { NV50_SURFACE_FORMAT_A8_UNORM, A_(ZERO, ZERO, ZERO, C0, UNORM, UNORM, UNORM, UNORM, 8, 0), SAMPLER_VIEW | RENDER_TARGET }, + [PIPE_FORMAT_A8_SNORM] = { 0, + A_(ZERO, ZERO, ZERO, C0, SNORM, SNORM, SNORM, SNORM, 8, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_A16_UNORM] = { 0, + A_(ZERO, ZERO, ZERO, C0, UNORM, UNORM, UNORM, UNORM, 16, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_A16_SNORM] = { 0, + A_(ZERO, ZERO, ZERO, C0, SNORM, SNORM, SNORM, SNORM, 16, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_A16_FLOAT] = { 0, + B_(ZERO, ZERO, ZERO, C0, FLOAT, FLOAT, FLOAT, FLOAT, 16, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_A32_FLOAT] = { 0, + B_(ZERO, ZERO, ZERO, C0, FLOAT, FLOAT, FLOAT, FLOAT, 32, 0), + SAMPLER_VIEW }, + [PIPE_FORMAT_L8A8_UNORM] = { 0, A_(C0, C0, C0, C1, UNORM, UNORM, UNORM, UNORM, 8_8, 0), SAMPLER_VIEW }, @@ -154,6 +206,26 @@ const struct nv50_format nv50_format_table[PIPE_FORMAT_COUNT] = A_(C0, C0, C0, C1, UNORM, UNORM, UNORM, UNORM, 8_8, 0), SAMPLER_VIEW }, + [PIPE_FORMAT_L16A16_UNORM] = { 0, + A_(C0, C0, C0, C1, UNORM, UNORM, UNORM, UNORM, 16_16, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_L16A16_SNORM] = { 0, + A_(C0, C0, C0, C1, SNORM, SNORM, SNORM, SNORM, 16_16, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_L16A16_FLOAT] = { 0, + B_(C0, C0, C0, C1, FLOAT, FLOAT, FLOAT, FLOAT, 16_16, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_L32A32_FLOAT] = { 0, + B_(C0, C0, C0, C1, FLOAT, FLOAT, FLOAT, FLOAT, 32_32, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_L4A4_UNORM] = { 0, + B_(C0, C0, C0, C1, UNORM, UNORM, UNORM, UNORM, 4_4, 0), + SAMPLER_VIEW }, + /* DXT, RGTC */ [PIPE_FORMAT_DXT1_RGB] = { 0, @@ -172,6 +244,22 @@ const struct nv50_format nv50_format_table[PIPE_FORMAT_COUNT] = B_(C0, C1, C2, C3, UNORM, UNORM, UNORM, UNORM, DXT5, 0), SAMPLER_VIEW }, + [PIPE_FORMAT_DXT1_SRGB] = { 0, + B_(C0, C1, C2, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, DXT1, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_DXT1_SRGBA] = { 0, + B_(C0, C1, C2, C3, UNORM, UNORM, UNORM, UNORM, DXT1, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_DXT3_SRGBA] = { 0, + B_(C0, C1, C2, C3, UNORM, UNORM, UNORM, UNORM, DXT3, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_DXT5_SRGBA] = { 0, + B_(C0, C1, C2, C3, UNORM, UNORM, UNORM, UNORM, DXT5, 0), + SAMPLER_VIEW }, + [PIPE_FORMAT_RGTC1_UNORM] = { 0, B_(C0, ZERO, ZERO, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, RGTC1, 0), SAMPLER_VIEW }, @@ -457,4 +545,30 @@ const struct nv50_format nv50_format_table[PIPE_FORMAT_COUNT] = [PIPE_FORMAT_R8_USCALED] = { 0, A_(C0, ZERO, ZERO, ONE_FLOAT, USCALED, USCALED, USCALED, USCALED, 8, 0), VERTEX_BUFFER }, + + /* OTHER FORMATS */ + + [PIPE_FORMAT_R8G8_B8G8_UNORM] = { 0, + B_(C0, C1, C2, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, C1_C2_C1_C0, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_G8R8_G8B8_UNORM] = { 0, + B_(C0, C1, C2, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, C2_C1_C0_C1, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_R8SG8SB8UX8U_NORM] = { 0, + B_(C0, C1, C2, ONE_FLOAT, SNORM, SNORM, UNORM, UNORM, 8_8_8_8, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_R5SG5SB6U_NORM] = { 0, + B_(C0, C1, C2, ONE_FLOAT, SNORM, SNORM, UNORM, UNORM, 6_5_5, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_R1_UNORM] = { 0, + B_(C0, ZERO, ZERO, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, BITMAP_8X8, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_A8B8G8R8_UNORM] = { 0, + B_(C3, C2, C1, C0, UNORM, UNORM, UNORM, UNORM, 8_8_8_8, 0), + SAMPLER_VIEW }, }; diff --git a/src/gallium/drivers/nvc0/nvc0_formats.c b/src/gallium/drivers/nvc0/nvc0_formats.c index 6eaa7c2cb3e..678e9b563ee 100644 --- a/src/gallium/drivers/nvc0/nvc0_formats.c +++ b/src/gallium/drivers/nvc0/nvc0_formats.c @@ -145,24 +145,64 @@ const struct nvc0_format nvc0_format_table[PIPE_FORMAT_COUNT] = [PIPE_FORMAT_L8_SRGB] = { NV50_SURFACE_FORMAT_R8_UNORM, A_(C0, C0, C0, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, 8, 0), + SAMPLER_VIEW | RENDER_TARGET }, + + [PIPE_FORMAT_L16_SNORM] = { NV50_SURFACE_FORMAT_R16_SNORM, + B_(C0, C0, C0, ONE_FLOAT, SNORM, SNORM, SNORM, SNORM, 16, 0), + SAMPLER_VIEW | RENDER_TARGET }, + + [PIPE_FORMAT_L16_FLOAT] = { NV50_SURFACE_FORMAT_R16_FLOAT, + B_(C0, C0, C0, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, 16, 0), + SAMPLER_VIEW | RENDER_TARGET }, + + [PIPE_FORMAT_L32_FLOAT] = { NV50_SURFACE_FORMAT_R32_FLOAT, + B_(C0, C0, C0, ONE_FLOAT, FLOAT, FLOAT, FLOAT, FLOAT, 32, 0), + SAMPLER_VIEW | RENDER_TARGET }, + + [PIPE_FORMAT_I8_UNORM] = { 0, + A_(C0, C0, C0, C0, UNORM, UNORM, UNORM, UNORM, 8, 0), SAMPLER_VIEW }, - [PIPE_FORMAT_I8_UNORM] = { NV50_SURFACE_FORMAT_R8_UNORM, - A_(C0, C0, C0, C0, UNORM, UNORM, UNORM, UNORM, 8, 0), - SAMPLER_VIEW | RENDER_TARGET }, - - [PIPE_FORMAT_I16_UNORM] = { NV50_SURFACE_FORMAT_R16_UNORM, + [PIPE_FORMAT_I16_UNORM] = { 0, A_(C0, C0, C0, C0, UNORM, UNORM, UNORM, UNORM, 16, 0), - SAMPLER_VIEW | RENDER_TARGET }, + SAMPLER_VIEW }, + + [PIPE_FORMAT_I16_SNORM] = { 0, + B_(C0, C0, C0, C0, SNORM, SNORM, SNORM, SNORM, 16, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_I16_FLOAT] = { 0, + B_(C0, C0, C0, C0, FLOAT, FLOAT, FLOAT, FLOAT, 16, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_I32_FLOAT] = { 0, + B_(C0, C0, C0, C0, FLOAT, FLOAT, FLOAT, FLOAT, 32, 0), + SAMPLER_VIEW }, [PIPE_FORMAT_A8_UNORM] = { NV50_SURFACE_FORMAT_A8_UNORM, A_(ZERO, ZERO, ZERO, C0, UNORM, UNORM, UNORM, UNORM, 8, 0), SAMPLER_VIEW | RENDER_TARGET }, + [PIPE_FORMAT_A8_SNORM] = { 0, + A_(ZERO, ZERO, ZERO, C0, SNORM, SNORM, SNORM, SNORM, 8, 0), + SAMPLER_VIEW }, + [PIPE_FORMAT_A16_UNORM] = { 0, A_(ZERO, ZERO, ZERO, C0, UNORM, UNORM, UNORM, UNORM, 16, 0), SAMPLER_VIEW }, + [PIPE_FORMAT_A16_SNORM] = { 0, + A_(ZERO, ZERO, ZERO, C0, SNORM, SNORM, SNORM, SNORM, 16, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_A16_FLOAT] = { 0, + B_(ZERO, ZERO, ZERO, C0, FLOAT, FLOAT, FLOAT, FLOAT, 16, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_A32_FLOAT] = { 0, + B_(ZERO, ZERO, ZERO, C0, FLOAT, FLOAT, FLOAT, FLOAT, 32, 0), + SAMPLER_VIEW }, + [PIPE_FORMAT_L8A8_UNORM] = { 0, A_(C0, C0, C0, C1, UNORM, UNORM, UNORM, UNORM, 8_8, 0), SAMPLER_VIEW }, @@ -175,6 +215,18 @@ const struct nvc0_format nvc0_format_table[PIPE_FORMAT_COUNT] = A_(C0, C0, C0, C1, UNORM, UNORM, UNORM, UNORM, 16_16, 0), SAMPLER_VIEW }, + [PIPE_FORMAT_L16A16_SNORM] = { 0, + A_(C0, C0, C0, C1, SNORM, SNORM, SNORM, SNORM, 16_16, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_L16A16_FLOAT] = { 0, + B_(C0, C0, C0, C1, FLOAT, FLOAT, FLOAT, FLOAT, 16_16, 0), + SAMPLER_VIEW }, + + [PIPE_FORMAT_L32A32_FLOAT] = { 0, + B_(C0, C0, C0, C1, FLOAT, FLOAT, FLOAT, FLOAT, 32_32, 0), + SAMPLER_VIEW }, + [PIPE_FORMAT_L4A4_UNORM] = { 0, B_(C0, C0, C0, C1, UNORM, UNORM, UNORM, UNORM, 4_4, 0), SAMPLER_VIEW }, @@ -520,4 +572,8 @@ const struct nvc0_format nvc0_format_table[PIPE_FORMAT_COUNT] = [PIPE_FORMAT_R1_UNORM] = { 0, B_(C0, ZERO, ZERO, ONE_FLOAT, UNORM, UNORM, UNORM, UNORM, BITMAP_8X8, 0), SAMPLER_VIEW }, + + [PIPE_FORMAT_A8B8G8R8_UNORM] = { 0, + B_(C3, C2, C1, C0, UNORM, UNORM, UNORM, UNORM, 8_8_8_8, 0), + SAMPLER_VIEW }, }; From 25a7f662145f56ad15dbdf3da203a8a85594276f Mon Sep 17 00:00:00 2001 From: Christoph Bumiller Date: Sat, 16 Apr 2011 15:24:07 +0200 Subject: [PATCH 315/420] nvc0: work around what looks like a code prefetch bug Sounds very unlikely, but I don't have a better explanation at the moment. The GPU throws page faults at the first page after the code buffer quite frequently on startup, and traces don't show us overflowing. --- src/gallium/drivers/nvc0/nvc0_screen.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/nvc0/nvc0_screen.c b/src/gallium/drivers/nvc0/nvc0_screen.c index c4cdface502..de62fd68b28 100644 --- a/src/gallium/drivers/nvc0/nvc0_screen.c +++ b/src/gallium/drivers/nvc0/nvc0_screen.c @@ -447,7 +447,10 @@ nvc0_screen_create(struct pipe_winsys *ws, struct nouveau_device *dev) if (ret) goto fail; - nouveau_resource_init(&screen->text_heap, 0, 1 << 20); + /* XXX: getting a page fault at the end of the code buffer every few + * launches, don't use the last 256 bytes to work around them - prefetch ? + */ + nouveau_resource_init(&screen->text_heap, 0, (1 << 20) - 0x100); ret = nouveau_bo_new(dev, NOUVEAU_BO_VRAM, 1 << 12, 6 << 16, &screen->uniforms); From b5dfc38eea8a4b497574ca791452c11fa4163c8a Mon Sep 17 00:00:00 2001 From: Marcin Slusarz Date: Sat, 16 Apr 2011 22:15:52 +0200 Subject: [PATCH 316/420] gallium: include u_format.h for util_format_is_supported MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Without it gcc complains: nv50_screen.c: In function ‘nv50_screen_is_format_supported’: nv50_screen.c:48: warning: implicit declaration of function ‘util_format_is_supported’ and handles it wrongly - util_format_is_supported returns boolean, which is typedef'ed to uchar, but function without prototype is assumed to return int. For me nv50_screen_is_format_supported was returning true for float formats without --enable-texture-float... --- src/gallium/drivers/i915/i915_screen.c | 1 + src/gallium/drivers/i965/brw_screen.c | 1 + src/gallium/drivers/nv50/nv50_screen.c | 1 + src/gallium/drivers/nvc0/nvc0_screen.c | 1 + src/gallium/drivers/nvfx/nvfx_screen.c | 1 + src/gallium/drivers/r600/r600_pipe.c | 1 + 6 files changed, 6 insertions(+) diff --git a/src/gallium/drivers/i915/i915_screen.c b/src/gallium/drivers/i915/i915_screen.c index 6f6a342791a..0f4327fdc81 100644 --- a/src/gallium/drivers/i915/i915_screen.c +++ b/src/gallium/drivers/i915/i915_screen.c @@ -27,6 +27,7 @@ #include "draw/draw_context.h" +#include "util/u_format.h" #include "util/u_inlines.h" #include "util/u_memory.h" #include "util/u_string.h" diff --git a/src/gallium/drivers/i965/brw_screen.c b/src/gallium/drivers/i965/brw_screen.c index 5353ae23250..9178dfa8f69 100644 --- a/src/gallium/drivers/i965/brw_screen.c +++ b/src/gallium/drivers/i965/brw_screen.c @@ -26,6 +26,7 @@ **************************************************************************/ +#include "util/u_format.h" #include "util/u_inlines.h" #include "util/u_memory.h" #include "util/u_string.h" diff --git a/src/gallium/drivers/nv50/nv50_screen.c b/src/gallium/drivers/nv50/nv50_screen.c index e0eea3ed750..641ad7e2780 100644 --- a/src/gallium/drivers/nv50/nv50_screen.c +++ b/src/gallium/drivers/nv50/nv50_screen.c @@ -20,6 +20,7 @@ * SOFTWARE. */ +#include "util/u_format.h" #include "util/u_format_s3tc.h" #include "pipe/p_screen.h" diff --git a/src/gallium/drivers/nvc0/nvc0_screen.c b/src/gallium/drivers/nvc0/nvc0_screen.c index de62fd68b28..ca0691d2aee 100644 --- a/src/gallium/drivers/nvc0/nvc0_screen.c +++ b/src/gallium/drivers/nvc0/nvc0_screen.c @@ -20,6 +20,7 @@ * SOFTWARE. */ +#include "util/u_format.h" #include "util/u_format_s3tc.h" #include "pipe/p_screen.h" diff --git a/src/gallium/drivers/nvfx/nvfx_screen.c b/src/gallium/drivers/nvfx/nvfx_screen.c index abbed9651ee..ab063d6fe4e 100644 --- a/src/gallium/drivers/nvfx/nvfx_screen.c +++ b/src/gallium/drivers/nvfx/nvfx_screen.c @@ -1,5 +1,6 @@ #include "pipe/p_screen.h" #include "pipe/p_state.h" +#include "util/u_format.h" #include "util/u_format_s3tc.h" #include "util/u_simple_screen.h" diff --git a/src/gallium/drivers/r600/r600_pipe.c b/src/gallium/drivers/r600/r600_pipe.c index 066768f9c38..1a581c791a3 100644 --- a/src/gallium/drivers/r600/r600_pipe.c +++ b/src/gallium/drivers/r600/r600_pipe.c @@ -30,6 +30,7 @@ #include #include #include +#include "util/u_format.h" #include #include #include From 70de2705b495c6f61437d24c6e5b9c411ebbacbf Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Sun, 17 Apr 2011 17:11:36 +1000 Subject: [PATCH 317/420] r600g: consolidate the same piece of cut-n-paste code into a function. Signed-off-by: Dave Airlie --- .../winsys/r600/drm/evergreen_hw_context.c | 23 ++++---------- src/gallium/winsys/r600/drm/r600_hw_context.c | 30 ++++--------------- src/gallium/winsys/r600/drm/r600_priv.h | 10 +++++++ 3 files changed, 21 insertions(+), 42 deletions(-) diff --git a/src/gallium/winsys/r600/drm/evergreen_hw_context.c b/src/gallium/winsys/r600/drm/evergreen_hw_context.c index 66398afa698..28d071b6bc5 100644 --- a/src/gallium/winsys/r600/drm/evergreen_hw_context.c +++ b/src/gallium/winsys/r600/drm/evergreen_hw_context.c @@ -668,12 +668,7 @@ static inline void evergreen_context_pipe_state_set_resource(struct r600_context r600_bo_reference(ctx->radeon, &block->reloc[1].bo, state->regs[2].bo); r600_bo_reference(ctx->radeon, &block->reloc[2].bo, state->regs[3].bo); } - if (!(block->status & R600_BLOCK_STATUS_DIRTY)) { - block->status |= R600_BLOCK_STATUS_ENABLED; - block->status |= R600_BLOCK_STATUS_DIRTY; - ctx->pm4_dirty_cdwords += block->pm4_ndwords + block->pm4_flush_ndwords; - LIST_ADDTAIL(&block->list,&ctx->dirty); - } + r600_context_dirty_block(ctx, block); } void evergreen_context_pipe_state_set_ps_resource(struct r600_context *ctx, struct r600_pipe_state *state, unsigned rid) @@ -712,12 +707,8 @@ static inline void evergreen_context_pipe_state_set_sampler(struct r600_context block->reg[0] = state->regs[0].value; block->reg[1] = state->regs[1].value; block->reg[2] = state->regs[2].value; - if (!(block->status & R600_BLOCK_STATUS_DIRTY)) { - block->status |= R600_BLOCK_STATUS_ENABLED; - block->status |= R600_BLOCK_STATUS_DIRTY; - ctx->pm4_dirty_cdwords += block->pm4_ndwords + block->pm4_flush_ndwords; - LIST_ADDTAIL(&block->list,&ctx->dirty); - } + + r600_context_dirty_block(ctx, block); } static inline void evergreen_context_pipe_state_set_sampler_border(struct r600_context *ctx, struct r600_pipe_state *state, unsigned offset, unsigned id) @@ -741,12 +732,8 @@ static inline void evergreen_context_pipe_state_set_sampler_border(struct r600_c block->reg[2] = state->regs[4].value; block->reg[3] = state->regs[5].value; block->reg[4] = state->regs[6].value; - if (!(block->status & R600_BLOCK_STATUS_DIRTY)) { - block->status |= R600_BLOCK_STATUS_ENABLED; - block->status |= R600_BLOCK_STATUS_DIRTY; - ctx->pm4_dirty_cdwords += block->pm4_ndwords + block->pm4_flush_ndwords; - LIST_ADDTAIL(&block->list,&ctx->dirty); - } + + r600_context_dirty_block(ctx, block); } void evergreen_context_pipe_state_set_ps_sampler(struct r600_context *ctx, struct r600_pipe_state *state, unsigned id) diff --git a/src/gallium/winsys/r600/drm/r600_hw_context.c b/src/gallium/winsys/r600/drm/r600_hw_context.c index 7f8da12da46..3ecf4eb2fca 100644 --- a/src/gallium/winsys/r600/drm/r600_hw_context.c +++ b/src/gallium/winsys/r600/drm/r600_hw_context.c @@ -851,12 +851,7 @@ void r600_context_pipe_state_set(struct r600_context *ctx, struct r600_pipe_stat r600_bo_reference(ctx->radeon, &block->reloc[id].bo, state->regs[i].bo); state->regs[i].bo->fence = ctx->radeon->fence; } - if (!(block->status & R600_BLOCK_STATUS_DIRTY)) { - block->status |= R600_BLOCK_STATUS_ENABLED; - block->status |= R600_BLOCK_STATUS_DIRTY; - ctx->pm4_dirty_cdwords += block->pm4_ndwords + block->pm4_flush_ndwords; - LIST_ADDTAIL(&block->list,&ctx->dirty); - } + r600_context_dirty_block(ctx, block); } } @@ -897,12 +892,7 @@ static inline void r600_context_pipe_state_set_resource(struct r600_context *ctx state->regs[2].bo->fence = ctx->radeon->fence; state->regs[3].bo->fence = ctx->radeon->fence; } - if (!(block->status & R600_BLOCK_STATUS_DIRTY)) { - block->status |= R600_BLOCK_STATUS_ENABLED; - block->status |= R600_BLOCK_STATUS_DIRTY; - ctx->pm4_dirty_cdwords += block->pm4_ndwords + block->pm4_flush_ndwords; - LIST_ADDTAIL(&block->list,&ctx->dirty); - } + r600_context_dirty_block(ctx, block); } void r600_context_pipe_state_set_ps_resource(struct r600_context *ctx, struct r600_pipe_state *state, unsigned rid) @@ -941,12 +931,8 @@ static inline void r600_context_pipe_state_set_sampler(struct r600_context *ctx, block->reg[0] = state->regs[0].value; block->reg[1] = state->regs[1].value; block->reg[2] = state->regs[2].value; - if (!(block->status & R600_BLOCK_STATUS_DIRTY)) { - block->status |= R600_BLOCK_STATUS_ENABLED; - block->status |= R600_BLOCK_STATUS_DIRTY; - ctx->pm4_dirty_cdwords += block->pm4_ndwords + block->pm4_flush_ndwords; - LIST_ADDTAIL(&block->list,&ctx->dirty); - } + + r600_context_dirty_block(ctx, block); } static inline void r600_context_pipe_state_set_sampler_border(struct r600_context *ctx, struct r600_pipe_state *state, unsigned offset) @@ -968,12 +954,8 @@ static inline void r600_context_pipe_state_set_sampler_border(struct r600_contex block->reg[1] = state->regs[4].value; block->reg[2] = state->regs[5].value; block->reg[3] = state->regs[6].value; - if (!(block->status & R600_BLOCK_STATUS_DIRTY)) { - block->status |= R600_BLOCK_STATUS_ENABLED; - block->status |= R600_BLOCK_STATUS_DIRTY; - ctx->pm4_dirty_cdwords += block->pm4_ndwords + block->pm4_flush_ndwords; - LIST_ADDTAIL(&block->list,&ctx->dirty); - } + + r600_context_dirty_block(ctx, block); } void r600_context_pipe_state_set_ps_sampler(struct r600_context *ctx, struct r600_pipe_state *state, unsigned id) diff --git a/src/gallium/winsys/r600/drm/r600_priv.h b/src/gallium/winsys/r600/drm/r600_priv.h index a958c95ab62..0e9dba70cd6 100644 --- a/src/gallium/winsys/r600/drm/r600_priv.h +++ b/src/gallium/winsys/r600/drm/r600_priv.h @@ -194,6 +194,16 @@ static void inline r600_context_reg(struct r600_context *ctx, } } +static inline void r600_context_dirty_block(struct r600_context *ctx, struct r600_block *block) +{ + if (!(block->status & R600_BLOCK_STATUS_DIRTY)) { + block->status |= R600_BLOCK_STATUS_ENABLED; + block->status |= R600_BLOCK_STATUS_DIRTY; + ctx->pm4_dirty_cdwords += block->pm4_ndwords + block->pm4_flush_ndwords; + LIST_ADDTAIL(&block->list,&ctx->dirty); + } +} + static inline void r600_context_block_emit_dirty(struct r600_context *ctx, struct r600_block *block) { int id; From 93d42571a631cb273df15fc1930e5b27f2970d9b Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Sun, 17 Apr 2011 17:19:28 +1000 Subject: [PATCH 318/420] r600g: use some loops. unrolling loops is for Gentoo users, and I really want to put something else inside these loops later. Signed-off-by: Dave Airlie --- .../winsys/r600/drm/evergreen_hw_context.c | 26 ++++++++---------- src/gallium/winsys/r600/drm/r600_hw_context.c | 27 +++++++++---------- 2 files changed, 24 insertions(+), 29 deletions(-) diff --git a/src/gallium/winsys/r600/drm/evergreen_hw_context.c b/src/gallium/winsys/r600/drm/evergreen_hw_context.c index 28d071b6bc5..d914836676c 100644 --- a/src/gallium/winsys/r600/drm/evergreen_hw_context.c +++ b/src/gallium/winsys/r600/drm/evergreen_hw_context.c @@ -637,6 +637,7 @@ static inline void evergreen_context_pipe_state_set_resource(struct r600_context { struct r600_range *range; struct r600_block *block; + int i; range = &ctx->range[CTX_RANGE_ID(ctx, offset)]; block = range->blocks[CTX_BLOCK_ID(ctx, offset)]; @@ -647,14 +648,9 @@ static inline void evergreen_context_pipe_state_set_resource(struct r600_context LIST_DELINIT(&block->list); return; } - block->reg[0] = state->regs[0].value; - block->reg[1] = state->regs[1].value; - block->reg[2] = state->regs[2].value; - block->reg[3] = state->regs[3].value; - block->reg[4] = state->regs[4].value; - block->reg[5] = state->regs[5].value; - block->reg[6] = state->regs[6].value; - block->reg[7] = state->regs[7].value; + for (i = 0; i < 8; i++) + block->reg[i] = state->regs[i].value; + r600_bo_reference(ctx->radeon, &block->reloc[1].bo, NULL); r600_bo_reference(ctx->radeon , &block->reloc[2].bo, NULL); if (state->regs[0].bo) { @@ -696,6 +692,7 @@ static inline void evergreen_context_pipe_state_set_sampler(struct r600_context { struct r600_range *range; struct r600_block *block; + int i; range = &ctx->range[CTX_RANGE_ID(ctx, offset)]; block = range->blocks[CTX_BLOCK_ID(ctx, offset)]; @@ -704,9 +701,8 @@ static inline void evergreen_context_pipe_state_set_sampler(struct r600_context LIST_DELINIT(&block->list); return; } - block->reg[0] = state->regs[0].value; - block->reg[1] = state->regs[1].value; - block->reg[2] = state->regs[2].value; + for (i = 0; i < 3; i++) + block->reg[i] = state->regs[i].value; r600_context_dirty_block(ctx, block); } @@ -716,6 +712,7 @@ static inline void evergreen_context_pipe_state_set_sampler_border(struct r600_c unsigned fake_offset = (offset - R_00A400_TD_PS_SAMPLER0_BORDER_INDEX) * 0x100 + 0x40000 + id * 0x1C; struct r600_range *range; struct r600_block *block; + int i; range = &ctx->range[CTX_RANGE_ID(ctx, fake_offset)]; block = range->blocks[CTX_BLOCK_ID(ctx, fake_offset)]; @@ -728,10 +725,9 @@ static inline void evergreen_context_pipe_state_set_sampler_border(struct r600_c return; } block->reg[0] = id; - block->reg[1] = state->regs[3].value; - block->reg[2] = state->regs[4].value; - block->reg[3] = state->regs[5].value; - block->reg[4] = state->regs[6].value; + + for (i = 1; i < 5; i++) + block->reg[i] = state->regs[i + 2].value; r600_context_dirty_block(ctx, block); } diff --git a/src/gallium/winsys/r600/drm/r600_hw_context.c b/src/gallium/winsys/r600/drm/r600_hw_context.c index 3ecf4eb2fca..dd032ad9445 100644 --- a/src/gallium/winsys/r600/drm/r600_hw_context.c +++ b/src/gallium/winsys/r600/drm/r600_hw_context.c @@ -859,6 +859,7 @@ static inline void r600_context_pipe_state_set_resource(struct r600_context *ctx { struct r600_range *range; struct r600_block *block; + int i; range = &ctx->range[CTX_RANGE_ID(ctx, offset)]; block = range->blocks[CTX_BLOCK_ID(ctx, offset)]; @@ -869,13 +870,10 @@ static inline void r600_context_pipe_state_set_resource(struct r600_context *ctx LIST_DELINIT(&block->list); return; } - block->reg[0] = state->regs[0].value; - block->reg[1] = state->regs[1].value; - block->reg[2] = state->regs[2].value; - block->reg[3] = state->regs[3].value; - block->reg[4] = state->regs[4].value; - block->reg[5] = state->regs[5].value; - block->reg[6] = state->regs[6].value; + + for (i = 0; i < 7; i++) + block->reg[i] = state->regs[i].value; + r600_bo_reference(ctx->radeon, &block->reloc[1].bo, NULL); r600_bo_reference(ctx->radeon , &block->reloc[2].bo, NULL); if (state->regs[0].bo) { @@ -920,6 +918,7 @@ static inline void r600_context_pipe_state_set_sampler(struct r600_context *ctx, { struct r600_range *range; struct r600_block *block; + int i; range = &ctx->range[CTX_RANGE_ID(ctx, offset)]; block = range->blocks[CTX_BLOCK_ID(ctx, offset)]; @@ -928,9 +927,9 @@ static inline void r600_context_pipe_state_set_sampler(struct r600_context *ctx, LIST_DELINIT(&block->list); return; } - block->reg[0] = state->regs[0].value; - block->reg[1] = state->regs[1].value; - block->reg[2] = state->regs[2].value; + + for (i = 0; i < 3; i++) + block->reg[i] = state->regs[i].value; r600_context_dirty_block(ctx, block); } @@ -939,6 +938,7 @@ static inline void r600_context_pipe_state_set_sampler_border(struct r600_contex { struct r600_range *range; struct r600_block *block; + int i; range = &ctx->range[CTX_RANGE_ID(ctx, offset)]; block = range->blocks[CTX_BLOCK_ID(ctx, offset)]; @@ -950,10 +950,9 @@ static inline void r600_context_pipe_state_set_sampler_border(struct r600_contex if (state->nregs <= 3) { return; } - block->reg[0] = state->regs[3].value; - block->reg[1] = state->regs[4].value; - block->reg[2] = state->regs[5].value; - block->reg[3] = state->regs[6].value; + + for (i = 0; i < 4; i++) + block->reg[i] = state->regs[i + 3].value; r600_context_dirty_block(ctx, block); } From 9dacbe222641443af000a82161922a5ade206340 Mon Sep 17 00:00:00 2001 From: Carl Worth Date: Fri, 15 Apr 2011 12:03:25 -0700 Subject: [PATCH 319/420] glcpp: Fix attempts to expand recursive macros infinitely (bug #32835). The 095-recursive-define test case was triggering infinite recursion with the following test case: #define A(a, b) B(a, b) #define C A(0, C) C Here's what was happening: 1. "C" was pushed onto the active list to expand the C node 2. While expanding the "0" argument, the active list would be emptied by the code at the end of _glcpp_parser_expand_token_list 3. When expanding the "C" argument, the active list was now empty, so lather, rinse, repeat. We fix this by adjusting the final popping at the end of _glcpp_parser_expand_token_list to never pop more nodes then this particular invocation had pushed itself. This is as simple as saving the original state of the active list, and then interrupting the popping when we reach this same state. With this fix, all of the glcpp-test tests now pass. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=32835 Signed-off-by: Carl Worth Reviewed-by: Ian Romanick Reviewed-and-tested-by: Kenneth Graunke --- src/glsl/glcpp/glcpp-parse.y | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/glsl/glcpp/glcpp-parse.y b/src/glsl/glcpp/glcpp-parse.y index fdc9467803b..6f15e85a122 100644 --- a/src/glsl/glcpp/glcpp-parse.y +++ b/src/glsl/glcpp/glcpp-parse.y @@ -1563,6 +1563,7 @@ _glcpp_parser_expand_token_list (glcpp_parser_t *parser, token_node_t *node_prev; token_node_t *node, *last = NULL; token_list_t *expansion; + active_list_t *active_initial = parser->active; if (list == NULL) return; @@ -1617,7 +1618,10 @@ _glcpp_parser_expand_token_list (glcpp_parser_t *parser, node = node_prev ? node_prev->next : list->head; } - while (parser->active) + /* Remove any lingering effects of this invocation on the + * active list. That is, pop until the list looks like it did + * at the beginning of this function. */ + while (parser->active && parser->active != active_initial) _parser_active_list_pop (parser); list->non_space_tail = list->tail; From 14eedf3028422e98ac05713a3e3c37e6c9b4cf37 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Wed, 13 Apr 2011 10:50:56 -0700 Subject: [PATCH 320/420] mesa: Fix _mesa_unpack_dudv_span_byte assertion. It was accepting only GL_DUDV_ATI and not the specific sized format GL_DU8DV8_ATI. Fixes assertion failure at startup in Shadowgrounds. Reviewed-by: Brian Paul --- src/mesa/main/pack.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/mesa/main/pack.c b/src/mesa/main/pack.c index 02154585aca..4bb0a90045e 100644 --- a/src/mesa/main/pack.c +++ b/src/mesa/main/pack.c @@ -3973,7 +3973,8 @@ _mesa_unpack_dudv_span_byte( struct gl_context *ctx, GLbitfield transferOps ) { ASSERT(dstFormat == GL_DUDV_ATI); - ASSERT(srcFormat == GL_DUDV_ATI); + ASSERT(srcFormat == GL_DUDV_ATI || + srcFormat == GL_DU8DV8_ATI); ASSERT(srcType == GL_UNSIGNED_BYTE || srcType == GL_BYTE || From 59c6b775a6aacfe03c84dae62c2fd45d4af9d70b Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Thu, 14 Apr 2011 19:36:28 -0700 Subject: [PATCH 321/420] i965/fs: Add gen6 register spilling support. Most of this is code movement to get the scratch space allocated in a shared location. Other than that, the only real changes are that the old oword block messages now operate on oword-aligned areas (with new messages for unaligned access, which we don't do), and that the caching control is in the SFID part of the descriptor instead of message control. Fixes glsl-fs-convolution-1. --- src/mesa/drivers/dri/i965/brw_eu_emit.c | 45 +++++++++++++++---- .../drivers/dri/i965/brw_fs_reg_allocate.cpp | 2 - src/mesa/drivers/dri/i965/brw_wm.c | 15 +++++++ src/mesa/drivers/dri/i965/brw_wm_state.c | 20 --------- src/mesa/drivers/dri/i965/gen6_wm_state.c | 7 ++- 5 files changed, 58 insertions(+), 31 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_eu_emit.c b/src/mesa/drivers/dri/i965/brw_eu_emit.c index 57313a59c08..2d654e71432 100644 --- a/src/mesa/drivers/dri/i965/brw_eu_emit.c +++ b/src/mesa/drivers/dri/i965/brw_eu_emit.c @@ -496,6 +496,8 @@ static void brw_set_dp_write_message( struct brw_context *brw, insn->bits3.dp_render_cache.response_length = response_length; insn->bits3.dp_render_cache.msg_length = msg_length; insn->bits3.dp_render_cache.end_of_thread = end_of_thread; + + /* We always use the render cache for write messages */ insn->header.destreg__conditionalmod = BRW_MESSAGE_TARGET_DATAPORT_WRITE; /* XXX really need below? */ insn->bits2.send_gen5.sfid = BRW_MESSAGE_TARGET_DATAPORT_WRITE; @@ -539,6 +541,13 @@ brw_set_dp_read_message(struct brw_context *brw, brw_set_src1(insn, brw_imm_d(0)); if (intel->gen >= 6) { + uint32_t target_function; + + if (target_cache == BRW_DATAPORT_READ_TARGET_DATA_CACHE) + target_function = BRW_MESSAGE_TARGET_DATAPORT_READ; /* data cache */ + else + target_function = BRW_MESSAGE_TARGET_DATAPORT_WRITE; /* render cache */ + insn->bits3.dp_render_cache.binding_table_index = binding_table_index; insn->bits3.dp_render_cache.msg_control = msg_control; insn->bits3.dp_render_cache.pixel_scoreboard_clear = 0; @@ -548,9 +557,9 @@ brw_set_dp_read_message(struct brw_context *brw, insn->bits3.dp_render_cache.response_length = response_length; insn->bits3.dp_render_cache.msg_length = msg_length; insn->bits3.dp_render_cache.end_of_thread = 0; - insn->header.destreg__conditionalmod = BRW_MESSAGE_TARGET_DATAPORT_READ; + insn->header.destreg__conditionalmod = target_function; /* XXX really need below? */ - insn->bits2.send_gen5.sfid = BRW_MESSAGE_TARGET_DATAPORT_READ; + insn->bits2.send_gen5.sfid = target_function; insn->bits2.send_gen5.end_of_thread = 0; } else if (intel->gen == 5) { insn->bits3.dp_read_gen5.binding_table_index = binding_table_index; @@ -1486,9 +1495,12 @@ void brw_oword_block_write_scratch(struct brw_compile *p, GLuint offset) { struct intel_context *intel = &p->brw->intel; - uint32_t msg_control; + uint32_t msg_control, msg_type; int mlen; + if (intel->gen >= 6) + offset /= 16; + mrf = retype(mrf, BRW_REGISTER_TYPE_UD); if (num_regs == 1) { @@ -1554,13 +1566,22 @@ void brw_oword_block_write_scratch(struct brw_compile *p, } brw_set_dest(p, insn, dest); - brw_set_src0(insn, brw_null_reg()); + if (intel->gen >= 6) { + brw_set_src0(insn, mrf); + } else { + brw_set_src0(insn, brw_null_reg()); + } + + if (intel->gen >= 6) + msg_type = GEN6_DATAPORT_WRITE_MESSAGE_OWORD_BLOCK_WRITE; + else + msg_type = BRW_DATAPORT_WRITE_MESSAGE_OWORD_BLOCK_WRITE; brw_set_dp_write_message(p->brw, insn, 255, /* binding table index (255=stateless) */ msg_control, - BRW_DATAPORT_WRITE_MESSAGE_OWORD_BLOCK_WRITE, /* msg_type */ + msg_type, mlen, GL_TRUE, /* header_present */ 0, /* pixel scoreboard */ @@ -1585,9 +1606,13 @@ brw_oword_block_read_scratch(struct brw_compile *p, int num_regs, GLuint offset) { + struct intel_context *intel = &p->brw->intel; uint32_t msg_control; int rlen; + if (intel->gen >= 6) + offset /= 16; + mrf = retype(mrf, BRW_REGISTER_TYPE_UD); dest = retype(dest, BRW_REGISTER_TYPE_UW); @@ -1624,14 +1649,18 @@ brw_oword_block_read_scratch(struct brw_compile *p, insn->header.destreg__conditionalmod = mrf.nr; brw_set_dest(p, insn, dest); /* UW? */ - brw_set_src0(insn, brw_null_reg()); + if (intel->gen >= 6) { + brw_set_src0(insn, mrf); + } else { + brw_set_src0(insn, brw_null_reg()); + } brw_set_dp_read_message(p->brw, insn, 255, /* binding table index (255=stateless) */ msg_control, BRW_DATAPORT_READ_MESSAGE_OWORD_BLOCK_READ, /* msg_type */ - 1, /* target cache (render/scratch) */ + BRW_DATAPORT_READ_TARGET_RENDER_CACHE, 1, /* msg_length */ rlen); } @@ -1839,7 +1868,7 @@ void brw_dp_READ_4_vs_relative(struct brw_compile *p, bind_table_index, BRW_DATAPORT_OWORD_DUAL_BLOCK_1OWORD, msg_type, - 0, /* source cache = data cache */ + BRW_DATAPORT_READ_TARGET_DATA_CACHE, 2, /* msg_length */ 1); /* response_length */ } diff --git a/src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp b/src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp index 479a91436a7..67f29ce1816 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp @@ -228,8 +228,6 @@ fs_visitor::assign_regs() if (reg == -1) { fail("no register to spill\n"); - } else if (intel->gen >= 6) { - fail("no spilling support on gen6 yet\n"); } else { spill_reg(reg); } diff --git a/src/mesa/drivers/dri/i965/brw_wm.c b/src/mesa/drivers/dri/i965/brw_wm.c index 2dd28fd1c58..ab731a807a7 100644 --- a/src/mesa/drivers/dri/i965/brw_wm.c +++ b/src/mesa/drivers/dri/i965/brw_wm.c @@ -185,6 +185,7 @@ static void do_wm_prog( struct brw_context *brw, struct brw_fragment_program *fp, struct brw_wm_prog_key *key) { + struct intel_context *intel = &brw->intel; struct brw_wm_compile *c; const GLuint *program; GLuint program_size; @@ -238,12 +239,26 @@ static void do_wm_prog( struct brw_context *brw, /* Scratch space is used for register spilling */ if (c->last_scratch) { + uint32_t total_scratch; + /* Per-thread scratch space is power-of-two sized. */ for (c->prog_data.total_scratch = 1024; c->prog_data.total_scratch <= c->last_scratch; c->prog_data.total_scratch *= 2) { /* empty */ } + total_scratch = c->prog_data.total_scratch * brw->wm_max_threads; + + if (brw->wm.scratch_bo && total_scratch > brw->wm.scratch_bo->size) { + drm_intel_bo_unreference(brw->wm.scratch_bo); + brw->wm.scratch_bo = NULL; + } + if (brw->wm.scratch_bo == NULL) { + brw->wm.scratch_bo = drm_intel_bo_alloc(intel->bufmgr, + "wm scratch", + total_scratch, + 4096); + } } else { c->prog_data.total_scratch = 0; diff --git a/src/mesa/drivers/dri/i965/brw_wm_state.c b/src/mesa/drivers/dri/i965/brw_wm_state.c index 5b5afc4626b..be4b260a5ff 100644 --- a/src/mesa/drivers/dri/i965/brw_wm_state.c +++ b/src/mesa/drivers/dri/i965/brw_wm_state.c @@ -278,30 +278,10 @@ wm_unit_create_from_key(struct brw_context *brw, struct brw_wm_unit_key *key, static void upload_wm_unit( struct brw_context *brw ) { - struct intel_context *intel = &brw->intel; struct brw_wm_unit_key key; drm_intel_bo *reloc_bufs[3]; wm_unit_populate_key(brw, &key); - /* Allocate the necessary scratch space if we haven't already. Don't - * bother reducing the allocation later, since we use scratch so - * rarely. - */ - if (key.total_scratch) { - GLuint total = key.total_scratch * brw->wm_max_threads; - - if (brw->wm.scratch_bo && total > brw->wm.scratch_bo->size) { - drm_intel_bo_unreference(brw->wm.scratch_bo); - brw->wm.scratch_bo = NULL; - } - if (brw->wm.scratch_bo == NULL) { - brw->wm.scratch_bo = drm_intel_bo_alloc(intel->bufmgr, - "wm scratch", - total, - 4096); - } - } - reloc_bufs[0] = brw->wm.prog_bo; reloc_bufs[1] = brw->wm.scratch_bo; reloc_bufs[2] = brw->wm.sampler_bo; diff --git a/src/mesa/drivers/dri/i965/gen6_wm_state.c b/src/mesa/drivers/dri/i965/gen6_wm_state.c index f4f04750aeb..8215cb15a9c 100644 --- a/src/mesa/drivers/dri/i965/gen6_wm_state.c +++ b/src/mesa/drivers/dri/i965/gen6_wm_state.c @@ -184,7 +184,12 @@ upload_wm_state(struct brw_context *brw) OUT_BATCH(_3DSTATE_WM << 16 | (9 - 2)); OUT_RELOC(brw->wm.prog_bo, I915_GEM_DOMAIN_INSTRUCTION, 0, 0); OUT_BATCH(dw2); - OUT_BATCH(0); /* scratch space base offset */ + if (brw->wm.prog_data->total_scratch) { + OUT_RELOC(brw->wm.scratch_bo, I915_GEM_DOMAIN_RENDER, I915_GEM_DOMAIN_RENDER, + ffs(brw->wm.prog_data->total_scratch) - 11); + } else { + OUT_BATCH(0); + } OUT_BATCH(dw4); OUT_BATCH(dw5); OUT_BATCH(dw6); From 4673f9433fb73febce796945e3883274636fbf62 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Thu, 14 Apr 2011 20:25:33 -0700 Subject: [PATCH 322/420] i965: Quit spamming gen6 DP read/write send instructions with gen5 bits. This was copy-and-paste from originally trying to get DP read/write working reliably, and notably for other common messages (URB, sampler) we weren't doing this. --- src/mesa/drivers/dri/i965/brw_eu_emit.c | 6 ------ 1 file changed, 6 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_eu_emit.c b/src/mesa/drivers/dri/i965/brw_eu_emit.c index 2d654e71432..71485cd1f71 100644 --- a/src/mesa/drivers/dri/i965/brw_eu_emit.c +++ b/src/mesa/drivers/dri/i965/brw_eu_emit.c @@ -499,9 +499,6 @@ static void brw_set_dp_write_message( struct brw_context *brw, /* We always use the render cache for write messages */ insn->header.destreg__conditionalmod = BRW_MESSAGE_TARGET_DATAPORT_WRITE; - /* XXX really need below? */ - insn->bits2.send_gen5.sfid = BRW_MESSAGE_TARGET_DATAPORT_WRITE; - insn->bits2.send_gen5.end_of_thread = end_of_thread; } else if (intel->gen == 5) { insn->bits3.dp_write_gen5.binding_table_index = binding_table_index; insn->bits3.dp_write_gen5.msg_control = msg_control; @@ -558,9 +555,6 @@ brw_set_dp_read_message(struct brw_context *brw, insn->bits3.dp_render_cache.msg_length = msg_length; insn->bits3.dp_render_cache.end_of_thread = 0; insn->header.destreg__conditionalmod = target_function; - /* XXX really need below? */ - insn->bits2.send_gen5.sfid = target_function; - insn->bits2.send_gen5.end_of_thread = 0; } else if (intel->gen == 5) { insn->bits3.dp_read_gen5.binding_table_index = binding_table_index; insn->bits3.dp_read_gen5.msg_control = msg_control; From 3f32efa2b88e2ea7f62bc666df4fbf4e1dde4535 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Mon, 18 Apr 2011 00:43:19 +0200 Subject: [PATCH 323/420] r300g: disable ARB_draw_instanced on SWTCL chipsets. This fixes Unigine Heaven. --- src/gallium/drivers/r300/r300_screen.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gallium/drivers/r300/r300_screen.c b/src/gallium/drivers/r300/r300_screen.c index acb7d9f02d2..642523d4d9b 100644 --- a/src/gallium/drivers/r300/r300_screen.c +++ b/src/gallium/drivers/r300/r300_screen.c @@ -130,12 +130,12 @@ static int r300_get_param(struct pipe_screen* pscreen, enum pipe_cap param) case PIPE_CAP_DEPTHSTENCIL_CLEAR_SEPARATE: case PIPE_CAP_SHADER_STENCIL_EXPORT: case PIPE_CAP_ARRAY_TEXTURES: + case PIPE_CAP_TGSI_INSTANCEID: return 0; /* SWTCL-only features. */ case PIPE_CAP_STREAM_OUTPUT: case PIPE_CAP_PRIMITIVE_RESTART: - case PIPE_CAP_TGSI_INSTANCEID: return !r300screen->caps.has_tcl; /* Texturing. */ From fc8e30edbcc802aac61a3562a3be42bb18b5dcd5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Sun, 17 Apr 2011 01:57:13 +0200 Subject: [PATCH 324/420] r600g: disable ARB_draw_instanced The very presence of this extension breaks things. This should bring us closer to being able to run Unigine Heaven. The extension will be re-enabled once gl_InstanceID is implemented. --- src/gallium/drivers/r600/r600_pipe.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/r600/r600_pipe.c b/src/gallium/drivers/r600/r600_pipe.c index 1a581c791a3..d0d380392a0 100644 --- a/src/gallium/drivers/r600/r600_pipe.c +++ b/src/gallium/drivers/r600/r600_pipe.c @@ -371,7 +371,6 @@ static int r600_get_param(struct pipe_screen* pscreen, enum pipe_cap param) case PIPE_CAP_DEPTHSTENCIL_CLEAR_SEPARATE: case PIPE_CAP_DEPTH_CLAMP: case PIPE_CAP_SHADER_STENCIL_EXPORT: - case PIPE_CAP_TGSI_INSTANCEID: case PIPE_CAP_VERTEX_ELEMENT_INSTANCE_DIVISOR: case PIPE_CAP_MIXED_COLORBUFFER_FORMATS: return 1; @@ -382,6 +381,9 @@ static int r600_get_param(struct pipe_screen* pscreen, enum pipe_cap param) else return 1; + case PIPE_CAP_TGSI_INSTANCEID: + return 0; + /* Unsupported features (boolean caps). */ case PIPE_CAP_STREAM_OUTPUT: case PIPE_CAP_PRIMITIVE_RESTART: From f79717d27aaf471b9cd6eed0d74cbf37ec697361 Mon Sep 17 00:00:00 2001 From: Thierry Vignaud Date: Mon, 18 Apr 2011 01:25:44 +0200 Subject: [PATCH 325/420] Fix mesa tarball creation again MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Marek Olšák --- Makefile | 1 - 1 file changed, 1 deletion(-) diff --git a/Makefile b/Makefile index be9567987a9..646e152578f 100644 --- a/Makefile +++ b/Makefile @@ -250,7 +250,6 @@ MAIN_FILES = \ $(DIRECTORY)/src/mesa/math/descrip.mms \ $(DIRECTORY)/src/mesa/program/*.[chly] \ $(DIRECTORY)/src/mesa/program/*.cpp \ - $(DIRECTORY)/src/mesa/program/Makefile \ $(DIRECTORY)/src/mesa/program/descrip.mms \ $(DIRECTORY)/src/mesa/swrast/*.[ch] \ $(DIRECTORY)/src/mesa/swrast/descrip.mms \ From d35aeff4bb0b03450b2c3c08bd7f84db5bf43283 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Mon, 18 Apr 2011 02:39:50 +0200 Subject: [PATCH 326/420] r300g/winsys: rename r300->radeon and do a little cleanup Renaming a few files, types, and functions. Also make the winsys independent of r300g. --- src/gallium/drivers/r300/Makefile | 3 +- src/gallium/drivers/r300/r300_blit.c | 7 +- src/gallium/drivers/r300/r300_context.c | 31 +- src/gallium/drivers/r300/r300_context.h | 28 +- src/gallium/drivers/r300/r300_cs.h | 7 +- src/gallium/drivers/r300/r300_defines.h | 15 - src/gallium/drivers/r300/r300_emit.c | 4 +- src/gallium/drivers/r300/r300_flush.c | 6 +- src/gallium/drivers/r300/r300_hyperz.c | 3 +- src/gallium/drivers/r300/r300_public.h | 4 +- src/gallium/drivers/r300/r300_query.c | 5 +- src/gallium/drivers/r300/r300_render.c | 8 +- src/gallium/drivers/r300/r300_screen.c | 29 +- src/gallium/drivers/r300/r300_screen.h | 8 +- src/gallium/drivers/r300/r300_screen_buffer.c | 13 +- src/gallium/drivers/r300/r300_screen_buffer.h | 1 - src/gallium/drivers/r300/r300_state.c | 3 +- src/gallium/drivers/r300/r300_texture.c | 48 +-- src/gallium/drivers/r300/r300_texture_desc.c | 28 +- src/gallium/drivers/r300/r300_texture_desc.h | 6 +- src/gallium/drivers/r300/r300_transfer.c | 4 +- src/gallium/drivers/r300/r300_winsys.h | 295 --------------- src/gallium/targets/dri-r300/target.c | 4 +- src/gallium/targets/egl-static/egl_pipe.c | 4 +- src/gallium/targets/egl/pipe_r300.c | 4 +- .../targets/xorg-radeon/radeon_target.c | 4 +- src/gallium/winsys/radeon/drm/Makefile | 5 +- src/gallium/winsys/radeon/drm/SConscript | 8 +- src/gallium/winsys/radeon/drm/radeon_drm_bo.c | 76 ++-- src/gallium/winsys/radeon/drm/radeon_drm_bo.h | 8 +- src/gallium/winsys/radeon/drm/radeon_drm_cs.c | 48 +-- src/gallium/winsys/radeon/drm/radeon_drm_cs.h | 6 +- .../winsys/radeon/drm/radeon_drm_public.h | 4 +- ...adeon_drm_common.c => radeon_drm_winsys.c} | 33 +- .../winsys/radeon/drm/radeon_drm_winsys.h | 67 ++++ src/gallium/winsys/radeon/drm/radeon_winsys.h | 356 +++++++++++++++--- 36 files changed, 588 insertions(+), 595 deletions(-) delete mode 100644 src/gallium/drivers/r300/r300_winsys.h rename src/gallium/winsys/radeon/drm/{radeon_drm_common.c => radeon_drm_winsys.c} (91%) create mode 100644 src/gallium/winsys/radeon/drm/radeon_drm_winsys.h diff --git a/src/gallium/drivers/r300/Makefile b/src/gallium/drivers/r300/Makefile index 66d900ebb5f..c9401b99f1c 100644 --- a/src/gallium/drivers/r300/Makefile +++ b/src/gallium/drivers/r300/Makefile @@ -29,8 +29,7 @@ C_SOURCES = \ r300_transfer.c LIBRARY_INCLUDES = \ - -I$(TOP)/src/mesa/drivers/dri/r300/compiler \ - -I$(TOP)/src/gallium/winsys/drm/radeon/core + -I$(TOP)/src/mesa/drivers/dri/r300/compiler COMPILER_ARCHIVE = $(TOP)/src/mesa/drivers/dri/r300/compiler/libr300compiler.a diff --git a/src/gallium/drivers/r300/r300_blit.c b/src/gallium/drivers/r300/r300_blit.c index ede0a2317d8..62d90afdcb0 100644 --- a/src/gallium/drivers/r300/r300_blit.c +++ b/src/gallium/drivers/r300/r300_blit.c @@ -23,7 +23,6 @@ #include "r300_context.h" #include "r300_emit.h" #include "r300_texture.h" -#include "r300_winsys.h" #include "util/u_format.h" #include "util/u_pack_color.h" @@ -206,7 +205,7 @@ static void r300_clear(struct pipe_context* pipe, (struct r300_hyperz_state*)r300->hyperz_state.state; uint32_t width = fb->width; uint32_t height = fb->height; - boolean can_hyperz = r300->rws->get_value(r300->rws, R300_CAN_HYPERZ); + boolean can_hyperz = r300->rws->get_value(r300->rws, RADEON_VID_CAN_HYPERZ); uint32_t hyperz_dcv = hyperz->zb_depthclearvalue; /* Enable fast Z clear. @@ -260,8 +259,8 @@ static void r300_clear(struct pipe_context* pipe, r300_get_num_cs_end_dwords(r300); /* Reserve CS space. */ - if (dwords > (R300_MAX_CMDBUF_DWORDS - r300->cs->cdw)) { - r300_flush(&r300->context, R300_FLUSH_ASYNC, NULL); + if (dwords > (RADEON_MAX_CMDBUF_DWORDS - r300->cs->cdw)) { + r300_flush(&r300->context, RADEON_FLUSH_ASYNC, NULL); } /* Emit clear packets. */ diff --git a/src/gallium/drivers/r300/r300_context.c b/src/gallium/drivers/r300/r300_context.c index 720d666d98c..15d1278c3bb 100644 --- a/src/gallium/drivers/r300/r300_context.c +++ b/src/gallium/drivers/r300/r300_context.c @@ -32,7 +32,6 @@ #include "r300_emit.h" #include "r300_screen.h" #include "r300_screen_buffer.h" -#include "r300_winsys.h" static void r300_update_num_contexts(struct r300_screen *r300screen, int diff) @@ -167,8 +166,8 @@ static boolean r300_setup_atoms(struct r300_context* r300) boolean is_rv350 = r300->screen->caps.is_rv350; boolean is_r500 = r300->screen->caps.is_r500; boolean has_tcl = r300->screen->caps.has_tcl; - boolean drm_2_6_0 = r300->rws->get_value(r300->rws, R300_VID_DRM_2_6_0); - boolean can_hyperz = r300->rws->get_value(r300->rws, R300_CAN_HYPERZ); + boolean drm_2_6_0 = r300->rws->get_value(r300->rws, RADEON_VID_DRM_2_6_0); + boolean can_hyperz = r300->rws->get_value(r300->rws, RADEON_VID_CAN_HYPERZ); boolean has_hiz_ram = r300->screen->caps.hiz_ram > 0; /* Create the actual atom list. @@ -379,7 +378,7 @@ static void r300_init_states(struct pipe_context *pipe) if (r300->screen->caps.is_r500 || (r300->screen->caps.is_rv350 && - r300->rws->get_value(r300->rws, R300_VID_DRM_2_6_0))) { + r300->rws->get_value(r300->rws, RADEON_VID_DRM_2_6_0))) { OUT_CB_REG(R300_GB_Z_PEQ_CONFIG, 0); } END_CB; @@ -391,7 +390,7 @@ struct pipe_context* r300_create_context(struct pipe_screen* screen, { struct r300_context* r300 = CALLOC_STRUCT(r300_context); struct r300_screen* r300screen = r300_screen(screen); - struct r300_winsys_screen *rws = r300screen->rws; + struct radeon_winsys *rws = r300screen->rws; if (!r300) return NULL; @@ -514,19 +513,19 @@ struct pipe_context* r300_create_context(struct pipe_screen* screen, "r300: DRM version: %d.%d.%d, Name: %s, ID: 0x%04x, GB: %d, Z: %d\n" "r300: GART size: %d MB, VRAM size: %d MB\n" "r300: AA compression: %s, Z compression: %s, HiZ: %s\n", - rws->get_value(rws, R300_VID_DRM_MAJOR), - rws->get_value(rws, R300_VID_DRM_MINOR), - rws->get_value(rws, R300_VID_DRM_PATCHLEVEL), + rws->get_value(rws, RADEON_VID_DRM_MAJOR), + rws->get_value(rws, RADEON_VID_DRM_MINOR), + rws->get_value(rws, RADEON_VID_DRM_PATCHLEVEL), screen->get_name(screen), - rws->get_value(rws, R300_VID_PCI_ID), - rws->get_value(rws, R300_VID_GB_PIPES), - rws->get_value(rws, R300_VID_Z_PIPES), - rws->get_value(rws, R300_VID_GART_SIZE) >> 20, - rws->get_value(rws, R300_VID_VRAM_SIZE) >> 20, - rws->get_value(rws, R300_CAN_AACOMPRESS) ? "YES" : "NO", - rws->get_value(rws, R300_CAN_HYPERZ) && + rws->get_value(rws, RADEON_VID_PCI_ID), + rws->get_value(rws, RADEON_VID_R300_GB_PIPES), + rws->get_value(rws, RADEON_VID_R300_Z_PIPES), + rws->get_value(rws, RADEON_VID_GART_SIZE) >> 20, + rws->get_value(rws, RADEON_VID_VRAM_SIZE) >> 20, + rws->get_value(rws, RADEON_VID_CAN_AACOMPRESS) ? "YES" : "NO", + rws->get_value(rws, RADEON_VID_CAN_HYPERZ) && r300->screen->caps.zmask_ram ? "YES" : "NO", - rws->get_value(rws, R300_CAN_HYPERZ) && + rws->get_value(rws, RADEON_VID_CAN_HYPERZ) && r300->screen->caps.hiz_ram ? "YES" : "NO"); } diff --git a/src/gallium/drivers/r300/r300_context.h b/src/gallium/drivers/r300/r300_context.h index c1f766f6180..8a0a54cf1e9 100644 --- a/src/gallium/drivers/r300/r300_context.h +++ b/src/gallium/drivers/r300/r300_context.h @@ -34,7 +34,7 @@ #include "r300_defines.h" #include "r300_screen.h" -#include "r300_winsys.h" +#include "../../winsys/radeon/drm/radeon_winsys.h" struct u_upload_mgr; struct r300_context; @@ -291,12 +291,12 @@ struct r300_query { boolean begin_emitted; /* The buffer where query results are stored. */ - struct r300_winsys_bo *buf; - struct r300_winsys_cs_handle *cs_buf; + struct pb_buffer *buf; + struct radeon_winsys_cs_handle *cs_buf; /* The size of the buffer. */ unsigned buffer_size; /* The domain of the buffer. */ - enum r300_buffer_domain domain; + enum radeon_bo_domain domain; /* Linked list members. */ struct r300_query* prev; @@ -307,10 +307,10 @@ struct r300_surface { struct pipe_surface base; /* Winsys buffer backing the texture. */ - struct r300_winsys_bo *buf; - struct r300_winsys_cs_handle *cs_buf; + struct pb_buffer *buf; + struct radeon_winsys_cs_handle *cs_buf; - enum r300_buffer_domain domain; + enum radeon_bo_domain domain; uint32_t offset; /* COLOROFFSET or DEPTHOFFSET. */ uint32_t pitch; /* COLORPITCH or DEPTHPITCH. */ @@ -340,8 +340,8 @@ struct r300_texture_desc { /* Buffer tiling. * Macrotiling is specified per-level because small mipmaps cannot * be macrotiled. */ - enum r300_buffer_tiling microtile; - enum r300_buffer_tiling macrotile[R300_MAX_TEXTURE_LEVELS]; + enum radeon_bo_layout microtile; + enum radeon_bo_layout macrotile[R300_MAX_TEXTURE_LEVELS]; /* Offsets into the buffer. */ unsigned offset_in_bytes[R300_MAX_TEXTURE_LEVELS]; @@ -397,9 +397,9 @@ struct r300_resource struct u_vbuf_resource b; /* Winsys buffer backing this resource. */ - struct r300_winsys_bo *buf; - struct r300_winsys_cs_handle *cs_buf; - enum r300_buffer_domain domain; + struct pb_buffer *buf; + struct radeon_winsys_cs_handle *cs_buf; + enum radeon_bo_domain domain; unsigned buf_size; /* Constant buffers are in user memory. */ @@ -460,9 +460,9 @@ struct r300_context { struct pipe_context context; /* The interface to the windowing system, etc. */ - struct r300_winsys_screen *rws; + struct radeon_winsys *rws; /* The command stream. */ - struct r300_winsys_cs *cs; + struct radeon_winsys_cs *cs; /* Screen. */ struct r300_screen *screen; diff --git a/src/gallium/drivers/r300/r300_cs.h b/src/gallium/drivers/r300/r300_cs.h index 2e52dfa43c6..c208e672f42 100644 --- a/src/gallium/drivers/r300/r300_cs.h +++ b/src/gallium/drivers/r300/r300_cs.h @@ -29,7 +29,6 @@ #include "r300_reg.h" #include "r300_context.h" -#include "r300_winsys.h" /* Yes, I know macros are ugly. However, they are much prettier than the code * that they neatly hide away, and don't have the cost of function setup,so @@ -40,14 +39,14 @@ */ #define CS_LOCALS(context) \ - struct r300_winsys_cs *cs_copy = (context)->cs; \ - struct r300_winsys_screen *cs_winsys = (context)->rws; \ + struct radeon_winsys_cs *cs_copy = (context)->cs; \ + struct radeon_winsys *cs_winsys = (context)->rws; \ int cs_count = 0; (void) cs_count; (void) cs_winsys; #ifdef DEBUG #define BEGIN_CS(size) do { \ - assert(size <= (R300_MAX_CMDBUF_DWORDS - cs_copy->cdw)); \ + assert(size <= (RADEON_MAX_CMDBUF_DWORDS - cs_copy->cdw)); \ cs_count = size; \ } while (0) diff --git a/src/gallium/drivers/r300/r300_defines.h b/src/gallium/drivers/r300/r300_defines.h index 2d111f9158d..30e9befad21 100644 --- a/src/gallium/drivers/r300/r300_defines.h +++ b/src/gallium/drivers/r300/r300_defines.h @@ -32,19 +32,4 @@ #define R300_INVALID_FORMAT 0xffff -/* Tiling flags. */ -enum r300_buffer_tiling { - R300_BUFFER_LINEAR = 0, - R300_BUFFER_TILED, - R300_BUFFER_SQUARETILED, - - R300_BUFFER_UNKNOWN, - R300_BUFFER_SELECT_LAYOUT = R300_BUFFER_UNKNOWN -}; - -enum r300_buffer_domain { /* bitfield */ - R300_DOMAIN_GTT = 2, - R300_DOMAIN_VRAM = 4 -}; - #endif diff --git a/src/gallium/drivers/r300/r300_emit.c b/src/gallium/drivers/r300/r300_emit.c index a21668a6fc5..62435c5e2e2 100644 --- a/src/gallium/drivers/r300/r300_emit.c +++ b/src/gallium/drivers/r300/r300_emit.c @@ -375,7 +375,7 @@ void r300_emit_fb_state(struct r300_context* r300, unsigned size, void* state) struct pipe_framebuffer_state* fb = (struct pipe_framebuffer_state*)state; struct r300_surface* surf; unsigned i; - boolean can_hyperz = r300->rws->get_value(r300->rws, R300_CAN_HYPERZ); + boolean can_hyperz = r300->rws->get_value(r300->rws, RADEON_VID_CAN_HYPERZ); uint32_t rb3d_cctl = 0; CS_LOCALS(r300); @@ -1231,7 +1231,7 @@ validate: if (flushed) return FALSE; - r300_flush(&r300->context, R300_FLUSH_ASYNC, NULL); + r300_flush(&r300->context, RADEON_FLUSH_ASYNC, NULL); flushed = TRUE; goto validate; } diff --git a/src/gallium/drivers/r300/r300_flush.c b/src/gallium/drivers/r300/r300_flush.c index b3d0d344ec4..de7d77d608b 100644 --- a/src/gallium/drivers/r300/r300_flush.c +++ b/src/gallium/drivers/r300/r300_flush.c @@ -38,7 +38,7 @@ void r300_flush(struct pipe_context *pipe, { struct r300_context *r300 = r300_context(pipe); struct r300_atom *atom; - struct r300_winsys_bo **rfence = (struct r300_winsys_bo**)fence; + struct pb_buffer **rfence = (struct pb_buffer**)fence; if (r300->draw && !r300->draw_vbo_locked) r300_draw_flush_vbuf(r300); @@ -48,11 +48,11 @@ void r300_flush(struct pipe_context *pipe, *rfence = r300->rws->buffer_create(r300->rws, 1, 1, PIPE_BIND_VERTEX_BUFFER, PIPE_USAGE_STATIC, - R300_DOMAIN_GTT); + RADEON_DOMAIN_GTT); /* Add the fence as a dummy relocation. */ r300->rws->cs_add_reloc(r300->cs, r300->rws->buffer_get_cs_handle(*rfence), - R300_DOMAIN_GTT, R300_DOMAIN_GTT); + RADEON_DOMAIN_GTT, RADEON_DOMAIN_GTT); } if (r300->dirty_hw) { diff --git a/src/gallium/drivers/r300/r300_hyperz.c b/src/gallium/drivers/r300/r300_hyperz.c index ecaadf4af8e..ef330f34c9e 100644 --- a/src/gallium/drivers/r300/r300_hyperz.c +++ b/src/gallium/drivers/r300/r300_hyperz.c @@ -24,7 +24,6 @@ #include "r300_context.h" #include "r300_reg.h" #include "r300_fs.h" -#include "r300_winsys.h" #include "util/u_format.h" #include "util/u_mm.h" @@ -153,7 +152,7 @@ static void r300_update_hyperz(struct r300_context* r300) } if (!zstex || - !r300->rws->get_value(r300->rws, R300_CAN_HYPERZ)) + !r300->rws->get_value(r300->rws, RADEON_VID_CAN_HYPERZ)) return; /* Zbuffer compression. */ diff --git a/src/gallium/drivers/r300/r300_public.h b/src/gallium/drivers/r300/r300_public.h index 8e7a963c55d..b6059203ff1 100644 --- a/src/gallium/drivers/r300/r300_public.h +++ b/src/gallium/drivers/r300/r300_public.h @@ -2,8 +2,8 @@ #ifndef R300_PUBLIC_H #define R300_PUBLIC_H -struct r300_winsys_screen; +struct radeon_winsys; -struct pipe_screen* r300_screen_create(struct r300_winsys_screen *rws); +struct pipe_screen* r300_screen_create(struct radeon_winsys *rws); #endif diff --git a/src/gallium/drivers/r300/r300_query.c b/src/gallium/drivers/r300/r300_query.c index 717485f43cb..9752a519491 100644 --- a/src/gallium/drivers/r300/r300_query.c +++ b/src/gallium/drivers/r300/r300_query.c @@ -26,7 +26,6 @@ #include "r300_context.h" #include "r300_screen.h" #include "r300_emit.h" -#include "r300_winsys.h" #include @@ -46,7 +45,7 @@ static struct pipe_query *r300_create_query(struct pipe_context *pipe, return NULL; q->type = query_type; - q->domain = R300_DOMAIN_GTT; + q->domain = RADEON_DOMAIN_GTT; q->buffer_size = 4096; if (r300screen->caps.family == CHIP_FAMILY_RV530) @@ -70,7 +69,7 @@ static void r300_destroy_query(struct pipe_context* pipe, { struct r300_query* q = r300_query(query); - r300_winsys_bo_reference(&q->buf, NULL); + pb_reference(&q->buf, NULL); remove_from_list(q); FREE(query); } diff --git a/src/gallium/drivers/r300/r300_render.c b/src/gallium/drivers/r300/r300_render.c index 26594dabe42..429b85545f7 100644 --- a/src/gallium/drivers/r300/r300_render.c +++ b/src/gallium/drivers/r300/r300_render.c @@ -218,8 +218,8 @@ static boolean r300_reserve_cs_dwords(struct r300_context *r300, cs_dwords += r300_get_num_cs_end_dwords(r300); /* Reserve requested CS space. */ - if (cs_dwords > (R300_MAX_CMDBUF_DWORDS - r300->cs->cdw)) { - r300_flush(&r300->context, R300_FLUSH_ASYNC, NULL); + if (cs_dwords > (RADEON_MAX_CMDBUF_DWORDS - r300->cs->cdw)) { + r300_flush(&r300->context, RADEON_FLUSH_ASYNC, NULL); flushed = TRUE; } @@ -343,7 +343,7 @@ static boolean immd_is_good_idea(struct r300_context *r300, if (!checked[vbi]) { buf = r300->vbuf_mgr->real_vertex_buffer[vbi]; - if ((r300_resource(buf)->domain != R300_DOMAIN_GTT)) { + if ((r300_resource(buf)->domain != RADEON_DOMAIN_GTT)) { return FALSE; } @@ -1080,7 +1080,7 @@ static void r300_render_draw_elements(struct vbuf_render* render, end_cs_dwords = r300_get_num_cs_end_dwords(r300); while (count) { - free_dwords = R300_MAX_CMDBUF_DWORDS - r300->cs->cdw; + free_dwords = RADEON_MAX_CMDBUF_DWORDS - r300->cs->cdw; short_count = MIN2(count, (free_dwords - end_cs_dwords - 6) * 2); diff --git a/src/gallium/drivers/r300/r300_screen.c b/src/gallium/drivers/r300/r300_screen.c index 642523d4d9b..a5d737c4b3c 100644 --- a/src/gallium/drivers/r300/r300_screen.c +++ b/src/gallium/drivers/r300/r300_screen.c @@ -30,7 +30,6 @@ #include "r300_texture.h" #include "r300_screen_buffer.h" #include "r300_state_inlines.h" -#include "r300_winsys.h" #include "r300_public.h" #include "draw/draw_context.h" @@ -311,9 +310,9 @@ static boolean r300_is_format_supported(struct pipe_screen* screen, unsigned sample_count, unsigned usage) { - struct r300_winsys_screen *rws = r300_screen(screen)->rws; + struct radeon_winsys *rws = r300_screen(screen)->rws; uint32_t retval = 0; - boolean drm_2_8_0 = rws->get_value(rws, R300_VID_DRM_2_8_0); + boolean drm_2_8_0 = rws->get_value(rws, RADEON_VID_DRM_2_8_0); boolean is_r500 = r300_screen(screen)->caps.is_r500; boolean is_r400 = r300_screen(screen)->caps.is_r400; boolean is_color2101010 = format == PIPE_FORMAT_R10G10B10A2_UNORM || @@ -412,7 +411,7 @@ static boolean r300_is_format_supported(struct pipe_screen* screen, static void r300_destroy_screen(struct pipe_screen* pscreen) { struct r300_screen* r300screen = r300_screen(pscreen); - struct r300_winsys_screen *rws = r300_winsys_screen(pscreen); + struct radeon_winsys *rws = radeon_winsys(pscreen); util_slab_destroy(&r300screen->pool_buffers); pipe_mutex_destroy(r300screen->num_contexts_mutex); @@ -427,15 +426,15 @@ static void r300_fence_reference(struct pipe_screen *screen, struct pipe_fence_handle **ptr, struct pipe_fence_handle *fence) { - r300_winsys_bo_reference((struct r300_winsys_bo**)ptr, - (struct r300_winsys_bo*)fence); + pb_reference((struct pb_buffer**)ptr, + (struct pb_buffer*)fence); } static boolean r300_fence_signalled(struct pipe_screen *screen, struct pipe_fence_handle *fence) { - struct r300_winsys_screen *rws = r300_screen(screen)->rws; - struct r300_winsys_bo *rfence = (struct r300_winsys_bo*)fence; + struct radeon_winsys *rws = r300_screen(screen)->rws; + struct pb_buffer *rfence = (struct pb_buffer*)fence; return !rws->buffer_is_busy(rfence); } @@ -444,8 +443,8 @@ static boolean r300_fence_finish(struct pipe_screen *screen, struct pipe_fence_handle *fence, uint64_t timeout) { - struct r300_winsys_screen *rws = r300_screen(screen)->rws; - struct r300_winsys_bo *rfence = (struct r300_winsys_bo*)fence; + struct radeon_winsys *rws = r300_screen(screen)->rws; + struct pb_buffer *rfence = (struct pb_buffer*)fence; if (timeout != PIPE_TIMEOUT_INFINITE) { int64_t start_time = os_time_get(); @@ -467,7 +466,7 @@ static boolean r300_fence_finish(struct pipe_screen *screen, return TRUE; } -struct pipe_screen* r300_screen_create(struct r300_winsys_screen *rws) +struct pipe_screen* r300_screen_create(struct radeon_winsys *rws) { struct r300_screen *r300screen = CALLOC_STRUCT(r300_screen); @@ -476,9 +475,9 @@ struct pipe_screen* r300_screen_create(struct r300_winsys_screen *rws) return NULL; } - r300screen->caps.pci_id = rws->get_value(rws, R300_VID_PCI_ID); - r300screen->caps.num_frag_pipes = rws->get_value(rws, R300_VID_GB_PIPES); - r300screen->caps.num_z_pipes = rws->get_value(rws, R300_VID_Z_PIPES); + r300screen->caps.pci_id = rws->get_value(rws, RADEON_VID_PCI_ID); + r300screen->caps.num_frag_pipes = rws->get_value(rws, RADEON_VID_R300_GB_PIPES); + r300screen->caps.num_z_pipes = rws->get_value(rws, RADEON_VID_R300_Z_PIPES); r300_init_debug(r300screen); r300_parse_chipset(&r300screen->caps); @@ -488,7 +487,7 @@ struct pipe_screen* r300_screen_create(struct r300_winsys_screen *rws) if (SCREEN_DBG_ON(r300screen, DBG_NO_HIZ)) r300screen->caps.hiz_ram = 0; - if (!rws->get_value(rws, R300_VID_DRM_2_8_0)) + if (!rws->get_value(rws, RADEON_VID_DRM_2_8_0)) r300screen->caps.has_us_format = FALSE; pipe_mutex_init(r300screen->num_contexts_mutex); diff --git a/src/gallium/drivers/r300/r300_screen.h b/src/gallium/drivers/r300/r300_screen.h index 576f9c1f4a9..bca86edb1d7 100644 --- a/src/gallium/drivers/r300/r300_screen.h +++ b/src/gallium/drivers/r300/r300_screen.h @@ -32,13 +32,13 @@ #include -struct r300_winsys_screen; +struct radeon_winsys; struct r300_screen { /* Parent class */ struct pipe_screen screen; - struct r300_winsys_screen *rws; + struct radeon_winsys *rws; /* Chipset capabilities */ struct r300_capabilities caps; @@ -61,8 +61,8 @@ static INLINE struct r300_screen* r300_screen(struct pipe_screen* screen) { return (struct r300_screen*)screen; } -static INLINE struct r300_winsys_screen * -r300_winsys_screen(struct pipe_screen *screen) { +static INLINE struct radeon_winsys * +radeon_winsys(struct pipe_screen *screen) { return r300_screen(screen)->rws; } diff --git a/src/gallium/drivers/r300/r300_screen_buffer.c b/src/gallium/drivers/r300/r300_screen_buffer.c index 986ae384fbf..4154c81512e 100644 --- a/src/gallium/drivers/r300/r300_screen_buffer.c +++ b/src/gallium/drivers/r300/r300_screen_buffer.c @@ -31,7 +31,6 @@ #include "util/u_math.h" #include "r300_screen_buffer.h" -#include "r300_winsys.h" void r300_upload_index_buffer(struct r300_context *r300, struct pipe_resource **index_buffer, @@ -62,7 +61,7 @@ static void r300_buffer_destroy(struct pipe_screen *screen, FREE(rbuf->constant_buffer); if (rbuf->buf) - r300_winsys_bo_reference(&rbuf->buf, NULL); + pb_reference(&rbuf->buf, NULL); util_slab_free(&r300screen->pool_buffers, rbuf); } @@ -105,7 +104,7 @@ r300_buffer_transfer_map( struct pipe_context *pipe, { struct r300_context *r300 = r300_context(pipe); struct r300_screen *r300screen = r300_screen(pipe->screen); - struct r300_winsys_screen *rws = r300screen->rws; + struct radeon_winsys *rws = r300screen->rws; struct r300_resource *rbuf = r300_resource(transfer->resource); uint8_t *map; @@ -126,7 +125,7 @@ static void r300_buffer_transfer_unmap( struct pipe_context *pipe, struct pipe_transfer *transfer ) { struct r300_screen *r300screen = r300_screen(pipe->screen); - struct r300_winsys_screen *rws = r300screen->rws; + struct radeon_winsys *rws = r300screen->rws; struct r300_resource *rbuf = r300_resource(transfer->resource); if (rbuf->buf) { @@ -144,7 +143,7 @@ static void r300_buffer_transfer_inline_write(struct pipe_context *pipe, unsigned layer_stride) { struct r300_context *r300 = r300_context(pipe); - struct r300_winsys_screen *rws = r300->screen->rws; + struct radeon_winsys *rws = r300->screen->rws; struct r300_resource *rbuf = r300_resource(resource); uint8_t *map = NULL; @@ -188,7 +187,7 @@ struct pipe_resource *r300_buffer_create(struct pipe_screen *screen, pipe_reference_init(&rbuf->b.b.b.reference, 1); rbuf->b.b.b.screen = screen; rbuf->b.user_ptr = NULL; - rbuf->domain = R300_DOMAIN_GTT; + rbuf->domain = RADEON_DOMAIN_GTT; rbuf->buf = NULL; rbuf->buf_size = templ->width0; rbuf->constant_buffer = NULL; @@ -237,7 +236,7 @@ struct pipe_resource *r300_user_buffer_create(struct pipe_screen *screen, rbuf->b.b.b.flags = 0; rbuf->b.b.vtbl = &r300_buffer_vtbl; rbuf->b.user_ptr = ptr; - rbuf->domain = R300_DOMAIN_GTT; + rbuf->domain = RADEON_DOMAIN_GTT; rbuf->buf = NULL; rbuf->buf_size = size; rbuf->constant_buffer = NULL; diff --git a/src/gallium/drivers/r300/r300_screen_buffer.h b/src/gallium/drivers/r300/r300_screen_buffer.h index cdbc4425fcb..360ec509cc5 100644 --- a/src/gallium/drivers/r300/r300_screen_buffer.h +++ b/src/gallium/drivers/r300/r300_screen_buffer.h @@ -32,7 +32,6 @@ #include "util/u_transfer.h" #include "r300_screen.h" -#include "r300_winsys.h" #include "r300_context.h" /* Functions. */ diff --git a/src/gallium/drivers/r300/r300_state.c b/src/gallium/drivers/r300/r300_state.c index c92f871829a..24b41d5085d 100644 --- a/src/gallium/drivers/r300/r300_state.c +++ b/src/gallium/drivers/r300/r300_state.c @@ -45,7 +45,6 @@ #include "r300_fs.h" #include "r300_texture.h" #include "r300_vs.h" -#include "r300_winsys.h" /* r300_state: Functions used to intialize state context by translating * Gallium state objects into semi-native r300 state objects. */ @@ -769,7 +768,7 @@ void r300_mark_fb_state_dirty(struct r300_context *r300, enum r300_fb_state_change change) { struct pipe_framebuffer_state *state = r300->fb_state.state; - boolean can_hyperz = r300->rws->get_value(r300->rws, R300_CAN_HYPERZ); + boolean can_hyperz = r300->rws->get_value(r300->rws, RADEON_VID_CAN_HYPERZ); r300_mark_atom_dirty(r300, &r300->gpu_flush); r300_mark_atom_dirty(r300, &r300->fb_state); diff --git a/src/gallium/drivers/r300/r300_texture.c b/src/gallium/drivers/r300/r300_texture.c index 87e32a21fc1..38ca9a24e45 100644 --- a/src/gallium/drivers/r300/r300_texture.c +++ b/src/gallium/drivers/r300/r300_texture.c @@ -29,7 +29,6 @@ #include "r300_texture_desc.h" #include "r300_transfer.h" #include "r300_screen.h" -#include "r300_winsys.h" #include "util/u_format.h" #include "util/u_format_s3tc.h" @@ -874,7 +873,7 @@ static void r300_texture_destroy(struct pipe_screen *screen, { struct r300_resource* tex = (struct r300_resource*)texture; - r300_winsys_bo_reference(&tex->buf, NULL); + pb_reference(&tex->buf, NULL); FREE(tex); } @@ -882,7 +881,7 @@ boolean r300_resource_get_handle(struct pipe_screen* screen, struct pipe_resource *texture, struct winsys_handle *whandle) { - struct r300_winsys_screen *rws = (struct r300_winsys_screen *)screen->winsys; + struct radeon_winsys *rws = (struct radeon_winsys *)screen->winsys; struct r300_resource* tex = (struct r300_resource*)texture; if (!tex) { @@ -909,17 +908,17 @@ static const struct u_resource_vtbl r300_texture_vtbl = static struct r300_resource* r300_texture_create_object(struct r300_screen *rscreen, const struct pipe_resource *base, - enum r300_buffer_tiling microtile, - enum r300_buffer_tiling macrotile, + enum radeon_bo_layout microtile, + enum radeon_bo_layout macrotile, unsigned stride_in_bytes_override, unsigned max_buffer_size, - struct r300_winsys_bo *buffer) + struct pb_buffer *buffer) { - struct r300_winsys_screen *rws = rscreen->rws; + struct radeon_winsys *rws = rscreen->rws; struct r300_resource *tex = CALLOC_STRUCT(r300_resource); if (!tex) { if (buffer) - r300_winsys_bo_reference(&buffer, NULL); + pb_reference(&buffer, NULL); return NULL; } @@ -933,13 +932,13 @@ r300_texture_create_object(struct r300_screen *rscreen, tex->tex.macrotile[0] = macrotile; tex->tex.stride_in_bytes_override = stride_in_bytes_override; tex->domain = base->flags & R300_RESOURCE_FLAG_TRANSFER ? - R300_DOMAIN_GTT : - R300_DOMAIN_VRAM | R300_DOMAIN_GTT; + RADEON_DOMAIN_GTT : + RADEON_DOMAIN_VRAM | RADEON_DOMAIN_GTT; tex->buf_size = max_buffer_size; if (!r300_resource_set_properties(&rscreen->screen, &tex->b.b.b, 0, base)) { if (buffer) - r300_winsys_bo_reference(&buffer, NULL); + pb_reference(&buffer, NULL); FREE(tex); return NULL; } @@ -972,15 +971,16 @@ struct pipe_resource *r300_texture_create(struct pipe_screen *screen, const struct pipe_resource *base) { struct r300_screen *rscreen = r300_screen(screen); - enum r300_buffer_tiling microtile, macrotile; + enum radeon_bo_layout microtile, macrotile; if ((base->flags & R300_RESOURCE_FLAG_TRANSFER) || (base->bind & PIPE_BIND_SCANOUT)) { - microtile = R300_BUFFER_LINEAR; - macrotile = R300_BUFFER_LINEAR; + microtile = RADEON_LAYOUT_LINEAR; + macrotile = RADEON_LAYOUT_LINEAR; } else { - microtile = R300_BUFFER_SELECT_LAYOUT; - macrotile = R300_BUFFER_SELECT_LAYOUT; + /* This will make the texture_create_function select the layout. */ + microtile = RADEON_LAYOUT_UNKNOWN; + macrotile = RADEON_LAYOUT_UNKNOWN; } return (struct pipe_resource*) @@ -992,10 +992,10 @@ struct pipe_resource *r300_texture_from_handle(struct pipe_screen *screen, const struct pipe_resource *base, struct winsys_handle *whandle) { - struct r300_winsys_screen *rws = (struct r300_winsys_screen*)screen->winsys; + struct radeon_winsys *rws = (struct radeon_winsys*)screen->winsys; struct r300_screen *rscreen = r300_screen(screen); - struct r300_winsys_bo *buffer; - enum r300_buffer_tiling microtile, macrotile; + struct pb_buffer *buffer; + enum radeon_bo_layout microtile, macrotile; unsigned stride, size; /* Support only 2D textures without mipmaps */ @@ -1014,14 +1014,14 @@ struct pipe_resource *r300_texture_from_handle(struct pipe_screen *screen, /* Enforce a microtiled zbuffer. */ if (util_format_is_depth_or_stencil(base->format) && - microtile == R300_BUFFER_LINEAR) { + microtile == RADEON_LAYOUT_LINEAR) { switch (util_format_get_blocksize(base->format)) { case 4: - microtile = R300_BUFFER_TILED; + microtile = RADEON_LAYOUT_TILED; break; case 2: - microtile = R300_BUFFER_SQUARETILED; + microtile = RADEON_LAYOUT_SQUARETILED; break; } } @@ -1062,8 +1062,8 @@ struct pipe_surface* r300_create_surface(struct pipe_context * ctx, /* Prefer VRAM if there are multiple domains to choose from. */ surface->domain = tex->domain; - if (surface->domain & R300_DOMAIN_VRAM) - surface->domain &= ~R300_DOMAIN_GTT; + if (surface->domain & RADEON_DOMAIN_VRAM) + surface->domain &= ~RADEON_DOMAIN_GTT; surface->offset = r300_texture_get_offset(tex, level, surf_tmpl->u.tex.first_layer); diff --git a/src/gallium/drivers/r300/r300_texture_desc.c b/src/gallium/drivers/r300/r300_texture_desc.c index 2910666dd51..da5778be65e 100644 --- a/src/gallium/drivers/r300/r300_texture_desc.c +++ b/src/gallium/drivers/r300/r300_texture_desc.c @@ -22,9 +22,7 @@ * USE OR OTHER DEALINGS IN THE SOFTWARE. */ #include "r300_texture_desc.h" - #include "r300_context.h" -#include "r300_winsys.h" #include "util/u_format.h" @@ -32,8 +30,8 @@ * in the given dimension. */ unsigned r300_get_pixel_alignment(enum pipe_format format, unsigned num_samples, - enum r300_buffer_tiling microtile, - enum r300_buffer_tiling macrotile, + enum radeon_bo_layout microtile, + enum radeon_bo_layout macrotile, enum r300_dim dim, boolean is_rs690) { static const unsigned table[2][5][3][2] = @@ -62,8 +60,8 @@ unsigned r300_get_pixel_alignment(enum pipe_format format, unsigned tile = 0; unsigned pixsize = util_format_get_blocksize(format); - assert(macrotile <= R300_BUFFER_TILED); - assert(microtile <= R300_BUFFER_SQUARETILED); + assert(macrotile <= RADEON_LAYOUT_TILED); + assert(microtile <= RADEON_LAYOUT_SQUARETILED); assert(pixsize <= 16); assert(dim <= DIM_HEIGHT); @@ -98,7 +96,7 @@ static boolean r300_texture_macro_switch(struct r300_resource *tex, unsigned tile, texdim; tile = r300_get_pixel_alignment(tex->b.b.b.format, tex->b.b.b.nr_samples, - tex->tex.microtile, R300_BUFFER_TILED, dim, 0); + tex->tex.microtile, RADEON_LAYOUT_TILED, dim, 0); if (dim == DIM_WIDTH) { texdim = u_minify(tex->tex.width0, level); } else { @@ -233,10 +231,10 @@ static void r300_setup_miptree(struct r300_screen *screen, for (i = 0; i <= base->last_level; i++) { /* Let's see if this miplevel can be macrotiled. */ tex->tex.macrotile[i] = - (tex->tex.macrotile[0] == R300_BUFFER_TILED && + (tex->tex.macrotile[0] == RADEON_LAYOUT_TILED && r300_texture_macro_switch(tex, i, rv350_mode, DIM_WIDTH) && r300_texture_macro_switch(tex, i, rv350_mode, DIM_HEIGHT)) ? - R300_BUFFER_TILED : R300_BUFFER_LINEAR; + RADEON_LAYOUT_TILED : RADEON_LAYOUT_LINEAR; stride = r300_texture_get_stride(screen, tex, i); @@ -424,8 +422,8 @@ static void r300_setup_tiling(struct r300_screen *screen, boolean is_zb = util_format_is_depth_or_stencil(format); boolean dbg_no_tiling = SCREEN_DBG_ON(screen, DBG_NO_TILING); - tex->tex.microtile = R300_BUFFER_LINEAR; - tex->tex.macrotile[0] = R300_BUFFER_LINEAR; + tex->tex.microtile = RADEON_LAYOUT_LINEAR; + tex->tex.macrotile[0] = RADEON_LAYOUT_LINEAR; if (!util_format_is_plain(format)) { return; @@ -441,11 +439,11 @@ static void r300_setup_tiling(struct r300_screen *screen, case 1: case 4: case 8: - tex->tex.microtile = R300_BUFFER_TILED; + tex->tex.microtile = RADEON_LAYOUT_TILED; break; case 2: - tex->tex.microtile = R300_BUFFER_SQUARETILED; + tex->tex.microtile = RADEON_LAYOUT_SQUARETILED; break; } @@ -456,7 +454,7 @@ static void r300_setup_tiling(struct r300_screen *screen, /* Set macrotiling. */ if (r300_texture_macro_switch(tex, 0, rv350_mode, DIM_WIDTH) && r300_texture_macro_switch(tex, 0, rv350_mode, DIM_HEIGHT)) { - tex->tex.macrotile[0] = R300_BUFFER_TILED; + tex->tex.macrotile[0] = RADEON_LAYOUT_TILED; } } @@ -501,7 +499,7 @@ boolean r300_texture_desc_init(struct r300_screen *rscreen, } /* Setup tiling. */ - if (tex->tex.microtile == R300_BUFFER_SELECT_LAYOUT) { + if (tex->tex.microtile == RADEON_LAYOUT_UNKNOWN) { r300_setup_tiling(rscreen, tex); } diff --git a/src/gallium/drivers/r300/r300_texture_desc.h b/src/gallium/drivers/r300/r300_texture_desc.h index ce6e9643ec6..a84d6fae0ea 100644 --- a/src/gallium/drivers/r300/r300_texture_desc.h +++ b/src/gallium/drivers/r300/r300_texture_desc.h @@ -25,7 +25,7 @@ #define R300_TEXTURE_DESC_H #include "pipe/p_format.h" -#include "r300_defines.h" +#include "r300_context.h" struct pipe_resource; struct r300_screen; @@ -39,8 +39,8 @@ enum r300_dim { unsigned r300_get_pixel_alignment(enum pipe_format format, unsigned num_samples, - enum r300_buffer_tiling microtile, - enum r300_buffer_tiling macrotile, + enum radeon_bo_layout microtile, + enum radeon_bo_layout macrotile, enum r300_dim dim, boolean is_rs690); boolean r300_texture_desc_init(struct r300_screen *rscreen, diff --git a/src/gallium/drivers/r300/r300_transfer.c b/src/gallium/drivers/r300/r300_transfer.c index 65c5095be6a..e2ea4cbf6c5 100644 --- a/src/gallium/drivers/r300/r300_transfer.c +++ b/src/gallium/drivers/r300/r300_transfer.c @@ -226,7 +226,7 @@ void* r300_texture_transfer_map(struct pipe_context *ctx, struct pipe_transfer *transfer) { struct r300_context *r300 = r300_context(ctx); - struct r300_winsys_screen *rws = (struct r300_winsys_screen *)ctx->winsys; + struct radeon_winsys *rws = (struct radeon_winsys *)ctx->winsys; struct r300_transfer *r300transfer = r300_transfer(transfer); struct r300_resource *tex = r300_resource(transfer->resource); char *map; @@ -256,7 +256,7 @@ void* r300_texture_transfer_map(struct pipe_context *ctx, void r300_texture_transfer_unmap(struct pipe_context *ctx, struct pipe_transfer *transfer) { - struct r300_winsys_screen *rws = (struct r300_winsys_screen *)ctx->winsys; + struct radeon_winsys *rws = (struct radeon_winsys *)ctx->winsys; struct r300_transfer *r300transfer = r300_transfer(transfer); struct r300_resource *tex = r300_resource(transfer->resource); diff --git a/src/gallium/drivers/r300/r300_winsys.h b/src/gallium/drivers/r300/r300_winsys.h deleted file mode 100644 index 3a6798a5423..00000000000 --- a/src/gallium/drivers/r300/r300_winsys.h +++ /dev/null @@ -1,295 +0,0 @@ -/* - * Copyright 2008 Corbin Simpson - * Copyright 2010 Marek Olšák - * - * 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 - * THE AUTHOR(S) 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. */ - -#ifndef R300_WINSYS_H -#define R300_WINSYS_H - -/* The public winsys interface header for the r300 pipe driver. - * Any winsys hosting this pipe needs to implement r300_winsys_screen and then - * call r300_screen_create to start things. */ - -#include "r300_defines.h" - -#include "pipebuffer/pb_bufmgr.h" -#include "pipe/p_defines.h" -#include "pipe/p_state.h" - -#define R300_MAX_CMDBUF_DWORDS (16 * 1024) -#define R300_FLUSH_ASYNC (1 << 0) - -struct winsys_handle; -struct r300_winsys_screen; - -#define r300_winsys_bo pb_buffer -#define r300_winsys_bo_reference(pdst, src) pb_reference(pdst, src) - -struct r300_winsys_cs_handle; /* for write_reloc etc. */ - -struct r300_winsys_cs { - unsigned cdw; /* Number of used dwords. */ - uint32_t *buf; /* The command buffer. */ -}; - -enum r300_value_id { - R300_VID_PCI_ID, - R300_VID_GB_PIPES, - R300_VID_Z_PIPES, - R300_VID_GART_SIZE, - R300_VID_VRAM_SIZE, - R300_VID_DRM_MAJOR, - R300_VID_DRM_MINOR, - R300_VID_DRM_PATCHLEVEL, - - /* These should probably go away: */ - R300_VID_DRM_2_6_0, /* Hyper-Z, GB_Z_PEQ_CONFIG on rv350->r4xx, R500 FG_ALPHA_VALUE */ - R300_VID_DRM_2_8_0, /* R500 US_FORMAT regs, R500 ARGB2101010 colorbuffer, CMask, R16F/RG16F */ - - R300_CAN_HYPERZ, /* ZMask + HiZ */ - R300_CAN_AACOMPRESS, /* CMask */ -}; - -struct r300_winsys_screen { - /** - * Destroy this winsys. - * - * \param ws The winsys this function is called from. - */ - void (*destroy)(struct r300_winsys_screen *ws); - - /** - * Query a system value from a winsys. - * - * \param ws The winsys this function is called from. - * \param vid One of the R300_VID_* enums. - */ - uint32_t (*get_value)(struct r300_winsys_screen *ws, - enum r300_value_id vid); - - /************************************************************************** - * Buffer management. Buffer attributes are mostly fixed over its lifetime. - * - * Remember that gallium gets to choose the interface it needs, and the - * window systems must then implement that interface (rather than the - * other way around...). - *************************************************************************/ - - /** - * Create a buffer object. - * - * \param ws The winsys this function is called from. - * \param size The size to allocate. - * \param alignment An alignment of the buffer in memory. - * \param bind A bitmask of the PIPE_BIND_* flags. - * \param usage A bitmask of the PIPE_USAGE_* flags. - * \param domain A bitmask of the R300_DOMAIN_* flags. - * \return The created buffer object. - */ - struct r300_winsys_bo *(*buffer_create)(struct r300_winsys_screen *ws, - unsigned size, - unsigned alignment, - unsigned bind, - unsigned usage, - enum r300_buffer_domain domain); - - struct r300_winsys_cs_handle *(*buffer_get_cs_handle)( - struct r300_winsys_bo *buf); - - /** - * Map the entire data store of a buffer object into the client's address - * space. - * - * \param buf A winsys buffer object to map. - * \param cs A command stream to flush if the buffer is referenced by it. - * \param usage A bitmask of the PIPE_TRANSFER_* flags. - * \return The pointer at the beginning of the buffer. - */ - void *(*buffer_map)(struct r300_winsys_bo *buf, - struct r300_winsys_cs *cs, - enum pipe_transfer_usage usage); - - /** - * Unmap a buffer object from the client's address space. - * - * \param buf A winsys buffer object to unmap. - */ - void (*buffer_unmap)(struct r300_winsys_bo *buf); - - /** - * Return TRUE if a buffer object is being used by the GPU. - * - * \param buf A winsys buffer object. - */ - boolean (*buffer_is_busy)(struct r300_winsys_bo *buf); - - /** - * Wait for a buffer object until it is not used by a GPU. This is - * equivalent to a fence placed after the last command using the buffer, - * and synchronizing to the fence. - * - * \param buf A winsys buffer object to wait for. - */ - void (*buffer_wait)(struct r300_winsys_bo *buf); - - /** - * Return tiling flags describing a memory layout of a buffer object. - * - * \param buf A winsys buffer object to get the flags from. - * \param macrotile A pointer to the return value of the microtile flag. - * \param microtile A pointer to the return value of the macrotile flag. - * - * \note microtile and macrotile are not bitmasks! - */ - void (*buffer_get_tiling)(struct r300_winsys_bo *buf, - enum r300_buffer_tiling *microtile, - enum r300_buffer_tiling *macrotile); - - /** - * Set tiling flags describing a memory layout of a buffer object. - * - * \param buf A winsys buffer object to set the flags for. - * \param cs A command stream to flush if the buffer is referenced by it. - * \param macrotile A macrotile flag. - * \param microtile A microtile flag. - * \param stride A stride of the buffer in bytes, for texturing. - * - * \note microtile and macrotile are not bitmasks! - */ - void (*buffer_set_tiling)(struct r300_winsys_bo *buf, - struct r300_winsys_cs *cs, - enum r300_buffer_tiling microtile, - enum r300_buffer_tiling macrotile, - unsigned stride); - - /** - * Get a winsys buffer from a winsys handle. The internal structure - * of the handle is platform-specific and only a winsys should access it. - * - * \param ws The winsys this function is called from. - * \param whandle A winsys handle pointer as was received from a state - * tracker. - * \param stride The returned buffer stride in bytes. - * \param size The returned buffer size. - */ - struct r300_winsys_bo *(*buffer_from_handle)(struct r300_winsys_screen *ws, - struct winsys_handle *whandle, - unsigned *stride, - unsigned *size); - - /** - * Get a winsys handle from a winsys buffer. The internal structure - * of the handle is platform-specific and only a winsys should access it. - * - * \param buf A winsys buffer object to get the handle from. - * \param whandle A winsys handle pointer. - * \param stride A stride of the buffer in bytes, for texturing. - * \return TRUE on success. - */ - boolean (*buffer_get_handle)(struct r300_winsys_bo *buf, - unsigned stride, - struct winsys_handle *whandle); - - /************************************************************************** - * Command submission. - * - * Each pipe context should create its own command stream and submit - * commands independently of other contexts. - *************************************************************************/ - - /** - * Create a command stream. - * - * \param ws The winsys this function is called from. - */ - struct r300_winsys_cs *(*cs_create)(struct r300_winsys_screen *ws); - - /** - * Destroy a command stream. - * - * \param cs A command stream to destroy. - */ - void (*cs_destroy)(struct r300_winsys_cs *cs); - - /** - * Add a new buffer relocation. Every relocation must first be added - * before it can be written. - * - * \param cs A command stream to add buffer for validation against. - * \param buf A winsys buffer to validate. - * \param rd A read domain containing a bitmask of the R300_DOMAIN_* flags. - * \param wd A write domain containing a bitmask of the R300_DOMAIN_* flags. - */ - void (*cs_add_reloc)(struct r300_winsys_cs *cs, - struct r300_winsys_cs_handle *buf, - enum r300_buffer_domain rd, - enum r300_buffer_domain wd); - - /** - * Return TRUE if there is enough memory in VRAM and GTT for the relocs - * added so far. - * - * \param cs A command stream to validate. - */ - boolean (*cs_validate)(struct r300_winsys_cs *cs); - - /** - * Write a relocated dword to a command buffer. - * - * \param cs A command stream the relocation is written to. - * \param buf A winsys buffer to write the relocation for. - * \param rd A read domain containing a bitmask of the R300_DOMAIN_* flags. - * \param wd A write domain containing a bitmask of the R300_DOMAIN_* flags. - */ - void (*cs_write_reloc)(struct r300_winsys_cs *cs, - struct r300_winsys_cs_handle *buf); - - /** - * Flush a command stream. - * - * \param cs A command stream to flush. - * \param flags, R300_FLUSH_ASYNC or 0. - */ - void (*cs_flush)(struct r300_winsys_cs *cs, unsigned flags); - - /** - * Set a flush callback which is called from winsys when flush is - * required. - * - * \param cs A command stream to set the callback for. - * \param flush A flush callback function associated with the command stream. - * \param user A user pointer that will be passed to the flush callback. - */ - void (*cs_set_flush)(struct r300_winsys_cs *cs, - void (*flush)(void *ctx, unsigned flags), - void *user); - - /** - * Return TRUE if a buffer is referenced by a command stream. - * - * \param cs A command stream. - * \param buf A winsys buffer. - */ - boolean (*cs_is_buffer_referenced)(struct r300_winsys_cs *cs, - struct r300_winsys_cs_handle *buf); -}; - -#endif /* R300_WINSYS_H */ diff --git a/src/gallium/targets/dri-r300/target.c b/src/gallium/targets/dri-r300/target.c index 2ecf3457a76..b48bcad3710 100644 --- a/src/gallium/targets/dri-r300/target.c +++ b/src/gallium/targets/dri-r300/target.c @@ -7,10 +7,10 @@ static struct pipe_screen * create_screen(int fd) { - struct r300_winsys_screen *sws; + struct radeon_winsys *sws; struct pipe_screen *screen; - sws = r300_drm_winsys_screen_create(fd); + sws = radeon_drm_winsys_create(fd); if (!sws) return NULL; diff --git a/src/gallium/targets/egl-static/egl_pipe.c b/src/gallium/targets/egl-static/egl_pipe.c index a33d419e0aa..658c532b404 100644 --- a/src/gallium/targets/egl-static/egl_pipe.c +++ b/src/gallium/targets/egl-static/egl_pipe.c @@ -118,10 +118,10 @@ static struct pipe_screen * pipe_r300_create_screen(int fd) { #if _EGL_PIPE_R300 - struct r300_winsys_screen *sws; + struct radeon_winsys *sws; struct pipe_screen *screen; - sws = r300_drm_winsys_screen_create(fd); + sws = radeon_drm_winsys_create(fd); if (!sws) return NULL; diff --git a/src/gallium/targets/egl/pipe_r300.c b/src/gallium/targets/egl/pipe_r300.c index d84bb92539a..09940f0a194 100644 --- a/src/gallium/targets/egl/pipe_r300.c +++ b/src/gallium/targets/egl/pipe_r300.c @@ -7,10 +7,10 @@ static struct pipe_screen * create_screen(int fd) { - struct r300_winsys_screen *sws; + struct radeon_winsys *sws; struct pipe_screen *screen; - sws = r300_drm_winsys_screen_create(fd); + sws = radeon_drm_winsys_create(fd); if (!sws) return NULL; diff --git a/src/gallium/targets/xorg-radeon/radeon_target.c b/src/gallium/targets/xorg-radeon/radeon_target.c index 5a0a8dc5738..b8410efbd89 100644 --- a/src/gallium/targets/xorg-radeon/radeon_target.c +++ b/src/gallium/targets/xorg-radeon/radeon_target.c @@ -7,10 +7,10 @@ static struct pipe_screen * create_screen(int fd) { - struct r300_winsys_screen *sws; + struct radeon_winsys *sws; struct pipe_screen *screen; - sws = r300_drm_winsys_screen_create(fd); + sws = radeon_drm_winsys_create(fd); if (!sws) return NULL; diff --git a/src/gallium/winsys/radeon/drm/Makefile b/src/gallium/winsys/radeon/drm/Makefile index e63ae6f5006..d44b7c14250 100644 --- a/src/gallium/winsys/radeon/drm/Makefile +++ b/src/gallium/winsys/radeon/drm/Makefile @@ -7,10 +7,9 @@ LIBNAME = radeonwinsys C_SOURCES = \ radeon_drm_bo.c \ radeon_drm_cs.c \ - radeon_drm_common.c + radeon_drm_winsys.c -LIBRARY_INCLUDES = -I$(TOP)/src/gallium/drivers/r300 \ - $(shell pkg-config libdrm --cflags-only-I) +LIBRARY_INCLUDES = $(shell pkg-config libdrm --cflags-only-I) include ../../../Makefile.template diff --git a/src/gallium/winsys/radeon/drm/SConscript b/src/gallium/winsys/radeon/drm/SConscript index b16e03556d3..39a8c711b84 100644 --- a/src/gallium/winsys/radeon/drm/SConscript +++ b/src/gallium/winsys/radeon/drm/SConscript @@ -5,17 +5,15 @@ env = env.Clone() radeon_sources = [ 'radeon_drm_bo.c', 'radeon_drm_cs.c', - 'radeon_drm_common.c', + 'radeon_drm_winsys.c', ] try: - env.ParseConfig('pkg-config --cflags libdrm_radeon') + env.ParseConfig('pkg-config --cflags libdrm') except: - print 'warning: not building r300g' + print 'warning: not building Gallium Radeon' Return() -env.Append(CPPPATH = '#/src/gallium/drivers/r300') - radeonwinsys = env.ConvenienceLibrary( target ='radeonwinsys', source = radeon_sources, diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_bo.c b/src/gallium/winsys/radeon/drm/radeon_drm_bo.c index 2b8ebf975e4..b6f12727e81 100644 --- a/src/gallium/winsys/radeon/drm/radeon_drm_bo.c +++ b/src/gallium/winsys/radeon/drm/radeon_drm_bo.c @@ -87,7 +87,7 @@ static struct radeon_bo *get_radeon_bo(struct pb_buffer *_buf) return bo; } -static void radeon_bo_wait(struct r300_winsys_bo *_buf) +static void radeon_bo_wait(struct pb_buffer *_buf) { struct radeon_bo *bo = get_radeon_bo(pb_buffer(_buf)); struct drm_radeon_gem_wait_idle args = {}; @@ -103,7 +103,7 @@ static void radeon_bo_wait(struct r300_winsys_bo *_buf) bo->busy_for_write = FALSE; } -static boolean radeon_bo_is_busy(struct r300_winsys_bo *_buf) +static boolean radeon_bo_is_busy(struct pb_buffer *_buf) { struct radeon_bo *bo = get_radeon_bo(pb_buffer(_buf)); struct drm_radeon_gem_busy args = {}; @@ -173,11 +173,11 @@ static void *radeon_bo_map_internal(struct pb_buffer *_buf, /* DONTBLOCK doesn't make sense with UNSYNCHRONIZED. */ if (flags & PB_USAGE_DONTBLOCK) { if (radeon_bo_is_referenced_by_cs(cs, bo)) { - cs->flush_cs(cs->flush_data, R300_FLUSH_ASYNC); + cs->flush_cs(cs->flush_data, RADEON_FLUSH_ASYNC); return NULL; } - if (radeon_bo_is_busy((struct r300_winsys_bo*)bo)) { + if (radeon_bo_is_busy((struct pb_buffer*)bo)) { return NULL; } } else { @@ -191,12 +191,12 @@ static void *radeon_bo_map_internal(struct pb_buffer *_buf, * Only check whether the buffer is being used for write. */ if (radeon_bo_is_referenced_by_cs_for_write(cs, bo)) { cs->flush_cs(cs->flush_data, 0); - radeon_bo_wait((struct r300_winsys_bo*)bo); + radeon_bo_wait((struct pb_buffer*)bo); } else if (bo->busy_for_write) { /* Update the busy_for_write field (done by radeon_bo_is_busy) * and wait if needed. */ - if (radeon_bo_is_busy((struct r300_winsys_bo*)bo)) { - radeon_bo_wait((struct r300_winsys_bo*)bo); + if (radeon_bo_is_busy((struct pb_buffer*)bo)) { + radeon_bo_wait((struct pb_buffer*)bo); } } } else { @@ -209,7 +209,7 @@ static void *radeon_bo_map_internal(struct pb_buffer *_buf, radeon_drm_cs_sync_flush(cs); } - radeon_bo_wait((struct r300_winsys_bo*)bo); + radeon_bo_wait((struct pb_buffer*)bo); } } } @@ -345,7 +345,7 @@ static boolean radeon_bomgr_is_buffer_busy(struct pb_manager *_mgr, return TRUE; } - if (radeon_bo_is_busy((struct r300_winsys_bo*)bo)) { + if (radeon_bo_is_busy((struct pb_buffer*)bo)) { return TRUE; } @@ -391,8 +391,8 @@ struct pb_manager *radeon_bomgr_create(struct radeon_drm_winsys *rws) return &mgr->base; } -static void *radeon_bo_map(struct r300_winsys_bo *buf, - struct r300_winsys_cs *cs, +static void *radeon_bo_map(struct pb_buffer *buf, + struct radeon_winsys_cs *cs, enum pipe_transfer_usage usage) { struct pb_buffer *_buf = pb_buffer(buf); @@ -400,9 +400,9 @@ static void *radeon_bo_map(struct r300_winsys_bo *buf, return pb_map(_buf, get_pb_usage_from_transfer_flags(usage), cs); } -static void radeon_bo_get_tiling(struct r300_winsys_bo *_buf, - enum r300_buffer_tiling *microtiled, - enum r300_buffer_tiling *macrotiled) +static void radeon_bo_get_tiling(struct pb_buffer *_buf, + enum radeon_bo_layout *microtiled, + enum radeon_bo_layout *macrotiled) { struct radeon_bo *bo = get_radeon_bo(pb_buffer(_buf)); struct drm_radeon_gem_set_tiling args = {}; @@ -414,19 +414,19 @@ static void radeon_bo_get_tiling(struct r300_winsys_bo *_buf, &args, sizeof(args)); - *microtiled = R300_BUFFER_LINEAR; - *macrotiled = R300_BUFFER_LINEAR; + *microtiled = RADEON_LAYOUT_LINEAR; + *macrotiled = RADEON_LAYOUT_LINEAR; if (args.tiling_flags & RADEON_BO_FLAGS_MICRO_TILE) - *microtiled = R300_BUFFER_TILED; + *microtiled = RADEON_LAYOUT_TILED; if (args.tiling_flags & RADEON_BO_FLAGS_MACRO_TILE) - *macrotiled = R300_BUFFER_TILED; + *macrotiled = RADEON_LAYOUT_TILED; } -static void radeon_bo_set_tiling(struct r300_winsys_bo *_buf, - struct r300_winsys_cs *rcs, - enum r300_buffer_tiling microtiled, - enum r300_buffer_tiling macrotiled, +static void radeon_bo_set_tiling(struct pb_buffer *_buf, + struct radeon_winsys_cs *rcs, + enum radeon_bo_layout microtiled, + enum radeon_bo_layout macrotiled, uint32_t pitch) { struct radeon_bo *bo = get_radeon_bo(pb_buffer(_buf)); @@ -443,12 +443,12 @@ static void radeon_bo_set_tiling(struct r300_winsys_bo *_buf, sched_yield(); } - if (microtiled == R300_BUFFER_TILED) + if (microtiled == RADEON_LAYOUT_TILED) args.tiling_flags |= RADEON_BO_FLAGS_MICRO_TILE; - else if (microtiled == R300_BUFFER_SQUARETILED) + else if (microtiled == RADEON_LAYOUT_SQUARETILED) args.tiling_flags |= RADEON_BO_FLAGS_MICRO_TILE_SQUARE; - if (macrotiled == R300_BUFFER_TILED) + if (macrotiled == RADEON_LAYOUT_TILED) args.tiling_flags |= RADEON_BO_FLAGS_MACRO_TILE; args.handle = bo->handle; @@ -460,35 +460,35 @@ static void radeon_bo_set_tiling(struct r300_winsys_bo *_buf, sizeof(args)); } -static struct r300_winsys_cs_handle *radeon_drm_get_cs_handle( - struct r300_winsys_bo *_buf) +static struct radeon_winsys_cs_handle *radeon_drm_get_cs_handle( + struct pb_buffer *_buf) { /* return radeon_bo. */ - return (struct r300_winsys_cs_handle*) + return (struct radeon_winsys_cs_handle*) get_radeon_bo(pb_buffer(_buf)); } static unsigned get_pb_usage_from_create_flags(unsigned bind, unsigned usage, - enum r300_buffer_domain domain) + enum radeon_bo_domain domain) { unsigned res = 0; - if (domain & R300_DOMAIN_GTT) + if (domain & RADEON_DOMAIN_GTT) res |= RADEON_PB_USAGE_DOMAIN_GTT; - if (domain & R300_DOMAIN_VRAM) + if (domain & RADEON_DOMAIN_VRAM) res |= RADEON_PB_USAGE_DOMAIN_VRAM; return res; } -static struct r300_winsys_bo * -radeon_winsys_bo_create(struct r300_winsys_screen *rws, +static struct pb_buffer * +radeon_winsys_bo_create(struct radeon_winsys *rws, unsigned size, unsigned alignment, unsigned bind, unsigned usage, - enum r300_buffer_domain domain) + enum radeon_bo_domain domain) { struct radeon_drm_winsys *ws = radeon_drm_winsys(rws); struct pb_desc desc; @@ -509,10 +509,10 @@ radeon_winsys_bo_create(struct r300_winsys_screen *rws, if (!buffer) return NULL; - return (struct r300_winsys_bo*)buffer; + return (struct pb_buffer*)buffer; } -static struct r300_winsys_bo *radeon_winsys_bo_from_handle(struct r300_winsys_screen *rws, +static struct pb_buffer *radeon_winsys_bo_from_handle(struct radeon_winsys *rws, struct winsys_handle *whandle, unsigned *stride, unsigned *size) @@ -575,14 +575,14 @@ done: if (size) *size = bo->base.base.size; - return (struct r300_winsys_bo*)bo; + return (struct pb_buffer*)bo; fail: pipe_mutex_unlock(mgr->bo_handles_mutex); return NULL; } -static boolean radeon_winsys_bo_get_handle(struct r300_winsys_bo *buffer, +static boolean radeon_winsys_bo_get_handle(struct pb_buffer *buffer, unsigned stride, struct winsys_handle *whandle) { diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_bo.h b/src/gallium/winsys/radeon/drm/radeon_drm_bo.h index b20a0996c93..b94881bc4ce 100644 --- a/src/gallium/winsys/radeon/drm/radeon_drm_bo.h +++ b/src/gallium/winsys/radeon/drm/radeon_drm_bo.h @@ -29,10 +29,10 @@ * Jérôme Glisse * Marek Olšák */ -#ifndef RADEON_DRM_BUFFER_H -#define RADEON_DRM_BUFFER_H +#ifndef RADEON_DRM_BO_H +#define RADEON_DRM_BO_H -#include "radeon_winsys.h" +#include "radeon_drm_winsys.h" #include "pipebuffer/pb_bufmgr.h" #include "os/os_thread.h" @@ -81,7 +81,7 @@ void radeon_bo_reference(struct radeon_bo **dst, struct radeon_bo *src) } static INLINE struct pb_buffer * -pb_buffer(struct r300_winsys_bo *buffer) +pb_buffer(struct pb_buffer *buffer) { return (struct pb_buffer *)buffer; } diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_cs.c b/src/gallium/winsys/radeon/drm/radeon_drm_cs.c index f23533622df..0139de1973a 100644 --- a/src/gallium/winsys/radeon/drm/radeon_drm_cs.c +++ b/src/gallium/winsys/radeon/drm/radeon_drm_cs.c @@ -36,7 +36,7 @@ /* This file replaces libdrm's radeon_cs_gem with our own implemention. - It's optimized specifically for r300g, but r600g could use it as well. + It's optimized specifically for Radeon DRM. Reloc writes and space checking are faster and simpler than their counterparts in libdrm (the time complexity of all the functions is O(1) in nearly all scenarios, thanks to hashing). @@ -129,7 +129,7 @@ static void radeon_destroy_cs_context(struct radeon_cs_context *csc) FREE(csc->relocs); } -static struct r300_winsys_cs *radeon_drm_cs_create(struct r300_winsys_screen *rws) +static struct radeon_winsys_cs *radeon_drm_cs_create(struct radeon_winsys *rws) { struct radeon_drm_winsys *ws = radeon_drm_winsys(rws); struct radeon_drm_cs *cs; @@ -163,9 +163,9 @@ static struct r300_winsys_cs *radeon_drm_cs_create(struct r300_winsys_screen *rw #define OUT_CS(cs, value) (cs)->buf[(cs)->cdw++] = (value) static INLINE void update_domains(struct drm_radeon_cs_reloc *reloc, - enum r300_buffer_domain rd, - enum r300_buffer_domain wd, - enum r300_buffer_domain *added_domains) + enum radeon_bo_domain rd, + enum radeon_bo_domain wd, + enum radeon_bo_domain *added_domains) { *added_domains = (rd | wd) & ~(reloc->read_domains | reloc->write_domain); @@ -220,9 +220,9 @@ int radeon_get_reloc(struct radeon_cs_context *csc, struct radeon_bo *bo) static void radeon_add_reloc(struct radeon_cs_context *csc, struct radeon_bo *bo, - enum r300_buffer_domain rd, - enum r300_buffer_domain wd, - enum r300_buffer_domain *added_domains) + enum radeon_bo_domain rd, + enum radeon_bo_domain wd, + enum radeon_bo_domain *added_domains) { struct drm_radeon_cs_reloc *reloc; unsigned i; @@ -284,27 +284,27 @@ static void radeon_add_reloc(struct radeon_cs_context *csc, *added_domains = rd | wd; } -static void radeon_drm_cs_add_reloc(struct r300_winsys_cs *rcs, - struct r300_winsys_cs_handle *buf, - enum r300_buffer_domain rd, - enum r300_buffer_domain wd) +static void radeon_drm_cs_add_reloc(struct radeon_winsys_cs *rcs, + struct radeon_winsys_cs_handle *buf, + enum radeon_bo_domain rd, + enum radeon_bo_domain wd) { struct radeon_drm_cs *cs = radeon_drm_cs(rcs); struct radeon_bo *bo = (struct radeon_bo*)buf; - enum r300_buffer_domain added_domains; + enum radeon_bo_domain added_domains; radeon_add_reloc(cs->csc, bo, rd, wd, &added_domains); if (!added_domains) return; - if (added_domains & R300_DOMAIN_GTT) + if (added_domains & RADEON_DOMAIN_GTT) cs->csc->used_gart += bo->size; - if (added_domains & R300_DOMAIN_VRAM) + if (added_domains & RADEON_DOMAIN_VRAM) cs->csc->used_vram += bo->size; } -static boolean radeon_drm_cs_validate(struct r300_winsys_cs *rcs) +static boolean radeon_drm_cs_validate(struct radeon_winsys_cs *rcs) { struct radeon_drm_cs *cs = radeon_drm_cs(rcs); @@ -312,8 +312,8 @@ static boolean radeon_drm_cs_validate(struct r300_winsys_cs *rcs) cs->csc->used_vram < cs->ws->vram_size * 0.8; } -static void radeon_drm_cs_write_reloc(struct r300_winsys_cs *rcs, - struct r300_winsys_cs_handle *buf) +static void radeon_drm_cs_write_reloc(struct radeon_winsys_cs *rcs, + struct radeon_winsys_cs_handle *buf) { struct radeon_drm_cs *cs = radeon_drm_cs(rcs); struct radeon_bo *bo = (struct radeon_bo*)buf; @@ -365,7 +365,7 @@ void radeon_drm_cs_sync_flush(struct radeon_drm_cs *cs) DEBUG_GET_ONCE_BOOL_OPTION(thread, "RADEON_THREAD", TRUE) -static void radeon_drm_cs_flush(struct r300_winsys_cs *rcs, unsigned flags) +static void radeon_drm_cs_flush(struct radeon_winsys_cs *rcs, unsigned flags) { struct radeon_drm_cs *cs = radeon_drm_cs(rcs); struct radeon_cs_context *tmp; @@ -389,7 +389,7 @@ static void radeon_drm_cs_flush(struct r300_winsys_cs *rcs, unsigned flags) } if (cs->ws->num_cpus > 1 && debug_get_option_thread() && - (flags & R300_FLUSH_ASYNC)) { + (flags & RADEON_FLUSH_ASYNC)) { cs->thread = pipe_thread_create(radeon_drm_cs_emit_ioctl, cs->csc); assert(cs->thread); } else { @@ -409,7 +409,7 @@ static void radeon_drm_cs_flush(struct r300_winsys_cs *rcs, unsigned flags) cs->base.cdw = 0; } -static void radeon_drm_cs_destroy(struct r300_winsys_cs *rcs) +static void radeon_drm_cs_destroy(struct radeon_winsys_cs *rcs) { struct radeon_drm_cs *cs = radeon_drm_cs(rcs); radeon_drm_cs_sync_flush(cs); @@ -421,7 +421,7 @@ static void radeon_drm_cs_destroy(struct r300_winsys_cs *rcs) FREE(cs); } -static void radeon_drm_cs_set_flush(struct r300_winsys_cs *rcs, +static void radeon_drm_cs_set_flush(struct radeon_winsys_cs *rcs, void (*flush)(void *ctx, unsigned flags), void *user) { @@ -430,8 +430,8 @@ static void radeon_drm_cs_set_flush(struct r300_winsys_cs *rcs, cs->flush_data = user; } -static boolean radeon_bo_is_referenced(struct r300_winsys_cs *rcs, - struct r300_winsys_cs_handle *_buf) +static boolean radeon_bo_is_referenced(struct radeon_winsys_cs *rcs, + struct radeon_winsys_cs_handle *_buf) { struct radeon_drm_cs *cs = radeon_drm_cs(rcs); struct radeon_bo *bo = (struct radeon_bo*)_buf; diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_cs.h b/src/gallium/winsys/radeon/drm/radeon_drm_cs.h index dc2050a27eb..339beedc6ab 100644 --- a/src/gallium/winsys/radeon/drm/radeon_drm_cs.h +++ b/src/gallium/winsys/radeon/drm/radeon_drm_cs.h @@ -31,7 +31,7 @@ #include struct radeon_cs_context { - uint32_t buf[R300_MAX_CMDBUF_DWORDS]; + uint32_t buf[RADEON_MAX_CMDBUF_DWORDS]; int fd; struct drm_radeon_cs cs; @@ -54,7 +54,7 @@ struct radeon_cs_context { }; struct radeon_drm_cs { - struct r300_winsys_cs base; + struct radeon_winsys_cs base; /* We flip between these two CS. While one is being consumed * by the kernel in another thread, the other one is being filled @@ -79,7 +79,7 @@ struct radeon_drm_cs { int radeon_get_reloc(struct radeon_cs_context *csc, struct radeon_bo *bo); static INLINE struct radeon_drm_cs * -radeon_drm_cs(struct r300_winsys_cs *base) +radeon_drm_cs(struct radeon_winsys_cs *base) { return (struct radeon_drm_cs*)base; } diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_public.h b/src/gallium/winsys/radeon/drm/radeon_drm_public.h index 3a208cdd4c4..76d9dda422d 100644 --- a/src/gallium/winsys/radeon/drm/radeon_drm_public.h +++ b/src/gallium/winsys/radeon/drm/radeon_drm_public.h @@ -3,9 +3,9 @@ #include "pipe/p_defines.h" -struct r300_winsys_screen; +struct radeon_winsys; -struct r300_winsys_screen *r300_drm_winsys_screen_create(int fd); +struct radeon_winsys *radeon_drm_winsys_create(int fd); static INLINE boolean is_r3xx(int pciid) { diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_common.c b/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c similarity index 91% rename from src/gallium/winsys/radeon/drm/radeon_drm_common.c rename to src/gallium/winsys/radeon/drm/radeon_drm_winsys.c index 72c2ff11125..37f6d18689d 100644 --- a/src/gallium/winsys/radeon/drm/radeon_drm_common.c +++ b/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c @@ -31,7 +31,6 @@ * Marek Olšák */ -#include "radeon_winsys.h" #include "radeon_drm_bo.h" #include "radeon_drm_cs.h" #include "radeon_drm_public.h" @@ -164,7 +163,7 @@ static void do_ioctls(struct radeon_drm_winsys *winsys) winsys->num_cpus = sysconf(_SC_NPROCESSORS_ONLN); } -static void radeon_winsys_destroy(struct r300_winsys_screen *rws) +static void radeon_winsys_destroy(struct radeon_winsys *rws) { struct radeon_drm_winsys *ws = (struct radeon_drm_winsys*)rws; @@ -173,41 +172,41 @@ static void radeon_winsys_destroy(struct r300_winsys_screen *rws) FREE(rws); } -static uint32_t radeon_get_value(struct r300_winsys_screen *rws, - enum r300_value_id id) +static uint32_t radeon_get_value(struct radeon_winsys *rws, + enum radeon_value_id id) { struct radeon_drm_winsys *ws = (struct radeon_drm_winsys *)rws; switch(id) { - case R300_VID_PCI_ID: + case RADEON_VID_PCI_ID: return ws->pci_id; - case R300_VID_GB_PIPES: + case RADEON_VID_R300_GB_PIPES: return ws->gb_pipes; - case R300_VID_Z_PIPES: + case RADEON_VID_R300_Z_PIPES: return ws->z_pipes; - case R300_VID_GART_SIZE: + case RADEON_VID_GART_SIZE: return ws->gart_size; - case R300_VID_VRAM_SIZE: + case RADEON_VID_VRAM_SIZE: return ws->vram_size; - case R300_VID_DRM_MAJOR: + case RADEON_VID_DRM_MAJOR: return ws->drm_major; - case R300_VID_DRM_MINOR: + case RADEON_VID_DRM_MINOR: return ws->drm_minor; - case R300_VID_DRM_PATCHLEVEL: + case RADEON_VID_DRM_PATCHLEVEL: return ws->drm_patchlevel; - case R300_VID_DRM_2_6_0: + case RADEON_VID_DRM_2_6_0: return ws->drm_major*100 + ws->drm_minor >= 206; - case R300_VID_DRM_2_8_0: + case RADEON_VID_DRM_2_8_0: return ws->drm_major*100 + ws->drm_minor >= 208; - case R300_CAN_HYPERZ: + case RADEON_VID_CAN_HYPERZ: return ws->hyperz; - case R300_CAN_AACOMPRESS: + case RADEON_VID_CAN_AACOMPRESS: return ws->aacompress; } return 0; } -struct r300_winsys_screen *r300_drm_winsys_screen_create(int fd) +struct radeon_winsys *radeon_drm_winsys_create(int fd) { struct radeon_drm_winsys *ws = CALLOC_STRUCT(radeon_drm_winsys); if (!ws) { diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_winsys.h b/src/gallium/winsys/radeon/drm/radeon_drm_winsys.h new file mode 100644 index 00000000000..e1b9493fc10 --- /dev/null +++ b/src/gallium/winsys/radeon/drm/radeon_drm_winsys.h @@ -0,0 +1,67 @@ +/* + * Copyright © 2009 Corbin Simpson + * 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, 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 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 THE COPYRIGHT HOLDERS, AUTHORS + * AND/OR ITS 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. + * + * The above copyright notice and this permission notice (including the + * next paragraph) shall be included in all copies or substantial portions + * of the Software. + */ +/* + * Authors: + * Corbin Simpson + */ +#ifndef RADEON_DRM_WINSYS_H +#define RADEON_DRM_WINSYS_H + +#include "radeon_winsys.h" + +struct radeon_drm_winsys { + struct radeon_winsys base; + + int fd; /* DRM file descriptor */ + int num_cs; /* The number of command streams created. */ + + struct pb_manager *kman; + struct pb_manager *cman; + + uint32_t pci_id; /* PCI ID */ + uint32_t gb_pipes; /* GB pipe count */ + uint32_t z_pipes; /* Z pipe count (rv530 only) */ + uint32_t gart_size; /* GART size. */ + uint32_t vram_size; /* VRAM size. */ + uint32_t num_cpus; /* Number of CPUs. */ + + unsigned drm_major; + unsigned drm_minor; + unsigned drm_patchlevel; + + /* Hyper-Z user */ + boolean hyperz; + /* AA compression (CMask) */ + boolean aacompress; +}; + +static INLINE struct radeon_drm_winsys * +radeon_drm_winsys(struct radeon_winsys *base) +{ + return (struct radeon_drm_winsys*)base; +} + +#endif diff --git a/src/gallium/winsys/radeon/drm/radeon_winsys.h b/src/gallium/winsys/radeon/drm/radeon_winsys.h index 9ecbb074572..ca0e6624138 100644 --- a/src/gallium/winsys/radeon/drm/radeon_winsys.h +++ b/src/gallium/winsys/radeon/drm/radeon_winsys.h @@ -1,67 +1,319 @@ /* - * Copyright © 2009 Corbin Simpson - * All Rights Reserved. + * Copyright 2008 Corbin Simpson + * Copyright 2010 Marek Olšák * - * 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, 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: + * 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 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 THE COPYRIGHT HOLDERS, AUTHORS - * AND/OR ITS 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. + * 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 above copyright notice and this permission notice (including the - * next paragraph) shall be included in all copies or substantial portions - * of the Software. - */ -/* - * Authors: - * Corbin Simpson - */ + * 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 + * THE AUTHOR(S) 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. */ + #ifndef RADEON_WINSYS_H #define RADEON_WINSYS_H -#include "r300_winsys.h" +/* The public winsys interface header for the radeon driver. */ -struct radeon_drm_winsys { - struct r300_winsys_screen base; +#include "pipebuffer/pb_bufmgr.h" +#include "pipe/p_defines.h" +#include "pipe/p_state.h" - int fd; /* DRM file descriptor */ - int num_cs; /* The number of command streams created. */ +#define RADEON_MAX_CMDBUF_DWORDS (16 * 1024) +#define RADEON_FLUSH_ASYNC (1 << 0) - struct pb_manager *kman; - struct pb_manager *cman; +/* Tiling flags. */ +enum radeon_bo_layout { + RADEON_LAYOUT_LINEAR = 0, + RADEON_LAYOUT_TILED, + RADEON_LAYOUT_SQUARETILED, - uint32_t pci_id; /* PCI ID */ - uint32_t gb_pipes; /* GB pipe count */ - uint32_t z_pipes; /* Z pipe count (rv530 only) */ - uint32_t gart_size; /* GART size. */ - uint32_t vram_size; /* VRAM size. */ - uint32_t num_cpus; /* Number of CPUs. */ - - unsigned drm_major; - unsigned drm_minor; - unsigned drm_patchlevel; - - /* Hyper-Z user */ - boolean hyperz; - /* AA compression (CMask) */ - boolean aacompress; + RADEON_LAYOUT_UNKNOWN }; -static INLINE struct radeon_drm_winsys * -radeon_drm_winsys(struct r300_winsys_screen *base) -{ - return (struct radeon_drm_winsys*)base; -} +enum radeon_bo_domain { /* bitfield */ + RADEON_DOMAIN_GTT = 2, + RADEON_DOMAIN_VRAM = 4 +}; + +struct winsys_handle; +struct radeon_winsys_cs_handle; /* for write_reloc etc. */ + +struct radeon_winsys_cs { + unsigned cdw; /* Number of used dwords. */ + uint32_t *buf; /* The command buffer. */ +}; + +enum radeon_value_id { + RADEON_VID_PCI_ID, + RADEON_VID_R300_GB_PIPES, + RADEON_VID_R300_Z_PIPES, + RADEON_VID_GART_SIZE, + RADEON_VID_VRAM_SIZE, + RADEON_VID_DRM_MAJOR, + RADEON_VID_DRM_MINOR, + RADEON_VID_DRM_PATCHLEVEL, + + /* These should probably go away: */ + + /* R300 features: + * - Hyper-Z + * - GB_Z_PEQ_CONFIG on rv350->r4xx + * - R500 FG_ALPHA_VALUE + * + * R600 features: + * - TBD + */ + RADEON_VID_DRM_2_6_0, + + /* R300 features: + * - R500 US_FORMAT regs + * - R500 ARGB2101010 colorbuffer + * - CMask and AA regs + * - R16F/RG16F + * + * R600 features: + * - TBD + */ + RADEON_VID_DRM_2_8_0, + + RADEON_VID_CAN_HYPERZ, /* ZMask + HiZ */ + RADEON_VID_CAN_AACOMPRESS, /* CMask */ +}; + +struct radeon_winsys { + /** + * Destroy this winsys. + * + * \param ws The winsys this function is called from. + */ + void (*destroy)(struct radeon_winsys *ws); + + /** + * Query a system value from a winsys. + * + * \param ws The winsys this function is called from. + * \param vid One of the RADEON_VID_* enums. + */ + uint32_t (*get_value)(struct radeon_winsys *ws, + enum radeon_value_id vid); + + /************************************************************************** + * Buffer management. Buffer attributes are mostly fixed over its lifetime. + * + * Remember that gallium gets to choose the interface it needs, and the + * window systems must then implement that interface (rather than the + * other way around...). + *************************************************************************/ + + /** + * Create a buffer object. + * + * \param ws The winsys this function is called from. + * \param size The size to allocate. + * \param alignment An alignment of the buffer in memory. + * \param bind A bitmask of the PIPE_BIND_* flags. + * \param usage A bitmask of the PIPE_USAGE_* flags. + * \param domain A bitmask of the RADEON_DOMAIN_* flags. + * \return The created buffer object. + */ + struct pb_buffer *(*buffer_create)(struct radeon_winsys *ws, + unsigned size, + unsigned alignment, + unsigned bind, + unsigned usage, + enum radeon_bo_domain domain); + + struct radeon_winsys_cs_handle *(*buffer_get_cs_handle)( + struct pb_buffer *buf); + + /** + * Map the entire data store of a buffer object into the client's address + * space. + * + * \param buf A winsys buffer object to map. + * \param cs A command stream to flush if the buffer is referenced by it. + * \param usage A bitmask of the PIPE_TRANSFER_* flags. + * \return The pointer at the beginning of the buffer. + */ + void *(*buffer_map)(struct pb_buffer *buf, + struct radeon_winsys_cs *cs, + enum pipe_transfer_usage usage); + + /** + * Unmap a buffer object from the client's address space. + * + * \param buf A winsys buffer object to unmap. + */ + void (*buffer_unmap)(struct pb_buffer *buf); + + /** + * Return TRUE if a buffer object is being used by the GPU. + * + * \param buf A winsys buffer object. + */ + boolean (*buffer_is_busy)(struct pb_buffer *buf); + + /** + * Wait for a buffer object until it is not used by a GPU. This is + * equivalent to a fence placed after the last command using the buffer, + * and synchronizing to the fence. + * + * \param buf A winsys buffer object to wait for. + */ + void (*buffer_wait)(struct pb_buffer *buf); + + /** + * Return tiling flags describing a memory layout of a buffer object. + * + * \param buf A winsys buffer object to get the flags from. + * \param macrotile A pointer to the return value of the microtile flag. + * \param microtile A pointer to the return value of the macrotile flag. + * + * \note microtile and macrotile are not bitmasks! + */ + void (*buffer_get_tiling)(struct pb_buffer *buf, + enum radeon_bo_layout *microtile, + enum radeon_bo_layout *macrotile); + + /** + * Set tiling flags describing a memory layout of a buffer object. + * + * \param buf A winsys buffer object to set the flags for. + * \param cs A command stream to flush if the buffer is referenced by it. + * \param macrotile A macrotile flag. + * \param microtile A microtile flag. + * \param stride A stride of the buffer in bytes, for texturing. + * + * \note microtile and macrotile are not bitmasks! + */ + void (*buffer_set_tiling)(struct pb_buffer *buf, + struct radeon_winsys_cs *cs, + enum radeon_bo_layout microtile, + enum radeon_bo_layout macrotile, + unsigned stride); + + /** + * Get a winsys buffer from a winsys handle. The internal structure + * of the handle is platform-specific and only a winsys should access it. + * + * \param ws The winsys this function is called from. + * \param whandle A winsys handle pointer as was received from a state + * tracker. + * \param stride The returned buffer stride in bytes. + * \param size The returned buffer size. + */ + struct pb_buffer *(*buffer_from_handle)(struct radeon_winsys *ws, + struct winsys_handle *whandle, + unsigned *stride, + unsigned *size); + + /** + * Get a winsys handle from a winsys buffer. The internal structure + * of the handle is platform-specific and only a winsys should access it. + * + * \param buf A winsys buffer object to get the handle from. + * \param whandle A winsys handle pointer. + * \param stride A stride of the buffer in bytes, for texturing. + * \return TRUE on success. + */ + boolean (*buffer_get_handle)(struct pb_buffer *buf, + unsigned stride, + struct winsys_handle *whandle); + + /************************************************************************** + * Command submission. + * + * Each pipe context should create its own command stream and submit + * commands independently of other contexts. + *************************************************************************/ + + /** + * Create a command stream. + * + * \param ws The winsys this function is called from. + */ + struct radeon_winsys_cs *(*cs_create)(struct radeon_winsys *ws); + + /** + * Destroy a command stream. + * + * \param cs A command stream to destroy. + */ + void (*cs_destroy)(struct radeon_winsys_cs *cs); + + /** + * Add a new buffer relocation. Every relocation must first be added + * before it can be written. + * + * \param cs A command stream to add buffer for validation against. + * \param buf A winsys buffer to validate. + * \param rd A read domain containing a bitmask of the RADEON_DOMAIN_* flags. + * \param wd A write domain containing a bitmask of the RADEON_DOMAIN_* flags. + */ + void (*cs_add_reloc)(struct radeon_winsys_cs *cs, + struct radeon_winsys_cs_handle *buf, + enum radeon_bo_domain rd, + enum radeon_bo_domain wd); + + /** + * Return TRUE if there is enough memory in VRAM and GTT for the relocs + * added so far. + * + * \param cs A command stream to validate. + */ + boolean (*cs_validate)(struct radeon_winsys_cs *cs); + + /** + * Write a relocated dword to a command buffer. + * + * \param cs A command stream the relocation is written to. + * \param buf A winsys buffer to write the relocation for. + * \param rd A read domain containing a bitmask of the RADEON_DOMAIN_* flags. + * \param wd A write domain containing a bitmask of the RADEON_DOMAIN_* flags. + */ + void (*cs_write_reloc)(struct radeon_winsys_cs *cs, + struct radeon_winsys_cs_handle *buf); + + /** + * Flush a command stream. + * + * \param cs A command stream to flush. + * \param flags, RADEON_FLUSH_ASYNC or 0. + */ + void (*cs_flush)(struct radeon_winsys_cs *cs, unsigned flags); + + /** + * Set a flush callback which is called from winsys when flush is + * required. + * + * \param cs A command stream to set the callback for. + * \param flush A flush callback function associated with the command stream. + * \param user A user pointer that will be passed to the flush callback. + */ + void (*cs_set_flush)(struct radeon_winsys_cs *cs, + void (*flush)(void *ctx, unsigned flags), + void *user); + + /** + * Return TRUE if a buffer is referenced by a command stream. + * + * \param cs A command stream. + * \param buf A winsys buffer. + */ + boolean (*cs_is_buffer_referenced)(struct radeon_winsys_cs *cs, + struct radeon_winsys_cs_handle *buf); +}; #endif From 699ecec58c6925fb174ecf925158df6cce59be59 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Mon, 18 Apr 2011 03:07:11 +0200 Subject: [PATCH 327/420] r300g: remove non-existing include path from SConscript --- src/gallium/drivers/r300/SConscript | 1 - 1 file changed, 1 deletion(-) diff --git a/src/gallium/drivers/r300/SConscript b/src/gallium/drivers/r300/SConscript index b49db937994..3af157a7956 100644 --- a/src/gallium/drivers/r300/SConscript +++ b/src/gallium/drivers/r300/SConscript @@ -6,7 +6,6 @@ env = env.Clone() # add the paths for r300compiler env.Append(CPPPATH = [ '#/src/mesa/drivers/dri/r300/compiler', - '#/src/gallium/winsys/drm/radeon/core', '#/include', '#/src/mesa', ]) From cd3568c329cff16333455fa2228a7c27b261cf05 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 15 Apr 2011 20:28:51 -0700 Subject: [PATCH 328/420] intel: Use _mesa_base_tex_format for FBO texture attachments. The _mesa_base_fbo_format variant doesn't handle some texture internalformats, such as "3". Fixes: fbo-blending-formats. fbo-alphatest-formats EXT_texture_sRGB/fbo-alphatest-formats Reviewed-by: Brian Paul --- src/mesa/drivers/dri/intel/intel_fbo.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mesa/drivers/dri/intel/intel_fbo.c b/src/mesa/drivers/dri/intel/intel_fbo.c index 8b57eb19f56..ad2468a3237 100644 --- a/src/mesa/drivers/dri/intel/intel_fbo.c +++ b/src/mesa/drivers/dri/intel/intel_fbo.c @@ -385,7 +385,7 @@ intel_update_wrapper(struct gl_context *ctx, struct intel_renderbuffer *irb, irb->Base.Format = texImage->TexFormat; irb->Base.DataType = intel_mesa_format_to_rb_datatype(texImage->TexFormat); irb->Base.InternalFormat = texImage->InternalFormat; - irb->Base._BaseFormat = _mesa_base_fbo_format(ctx, irb->Base.InternalFormat); + irb->Base._BaseFormat = _mesa_base_tex_format(ctx, irb->Base.InternalFormat); irb->Base.Width = texImage->Width; irb->Base.Height = texImage->Height; From 641dd899bd485c194c20a871633797a47e4f912d Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 15 Apr 2011 17:50:41 -0700 Subject: [PATCH 329/420] swrast: Don't assert against glReadPixels of GL_RED and GL_RG. Everything appears to already be in place for this. Fixes aborts in: ARB_texture_rg/fbo-alphatest-formats-float ARB_texture_rg/fbo-blending-formats-float. Reviewed-by: Brian Paul --- src/mesa/swrast/s_readpix.c | 5 ++++- src/mesa/swrast/s_span.c | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/mesa/swrast/s_readpix.c b/src/mesa/swrast/s_readpix.c index 5c8d7e9c5cf..cca7ec00802 100644 --- a/src/mesa/swrast/s_readpix.c +++ b/src/mesa/swrast/s_readpix.c @@ -191,7 +191,10 @@ fast_read_rgba_pixels( struct gl_context *ctx, if (!rb) return GL_FALSE; - ASSERT(rb->_BaseFormat == GL_RGBA || rb->_BaseFormat == GL_RGB || + ASSERT(rb->_BaseFormat == GL_RGBA || + rb->_BaseFormat == GL_RGB || + rb->_BaseFormat == GL_RG || + rb->_BaseFormat == GL_RED || rb->_BaseFormat == GL_ALPHA); /* clipping should have already been done */ diff --git a/src/mesa/swrast/s_span.c b/src/mesa/swrast/s_span.c index 9cfecc9e3a4..b0f8e490432 100644 --- a/src/mesa/swrast/s_span.c +++ b/src/mesa/swrast/s_span.c @@ -1348,7 +1348,10 @@ _swrast_read_rgba_span( struct gl_context *ctx, struct gl_renderbuffer *rb, ASSERT(rb); ASSERT(rb->GetRow); - ASSERT(rb->_BaseFormat == GL_RGB || rb->_BaseFormat == GL_RGBA || + ASSERT(rb->_BaseFormat == GL_RGBA || + rb->_BaseFormat == GL_RGB || + rb->_BaseFormat == GL_RG || + rb->_BaseFormat == GL_RED || rb->_BaseFormat == GL_ALPHA); if (rb->DataType == dstType) { From 91226ce6487e9ea9c21f5a269f63cf98affa8ef4 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 15 Apr 2011 11:06:36 -0700 Subject: [PATCH 330/420] mesa: Remove renderbuffer deletion debug field. It has presumably served its purpose by now, and other object deletion doesn't do this. Reviewed-by: Brian Paul --- src/mesa/main/mtypes.h | 2 -- src/mesa/main/renderbuffer.c | 5 ----- 2 files changed, 7 deletions(-) diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index 9e2905ab2b1..6ca7405b5cb 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -2406,8 +2406,6 @@ struct gl_shared_state */ struct gl_renderbuffer { -#define RB_MAGIC 0xaabbccdd - int Magic; /** XXX TEMPORARY DEBUG INFO */ _glthread_Mutex Mutex; /**< for thread safety */ GLuint ClassID; /**< Useful for drivers */ GLuint Name; diff --git a/src/mesa/main/renderbuffer.c b/src/mesa/main/renderbuffer.c index e6d5fe4bff1..84c5f275f98 100644 --- a/src/mesa/main/renderbuffer.c +++ b/src/mesa/main/renderbuffer.c @@ -1395,7 +1395,6 @@ _mesa_init_renderbuffer(struct gl_renderbuffer *rb, GLuint name) { _glthread_INIT_MUTEX(rb->Mutex); - rb->Magic = RB_MAGIC; rb->ClassID = 0; rb->Name = name; rb->RefCount = 0; @@ -1970,9 +1969,7 @@ _mesa_reference_renderbuffer(struct gl_renderbuffer **ptr, GLboolean deleteFlag = GL_FALSE; struct gl_renderbuffer *oldRb = *ptr; - assert(oldRb->Magic == RB_MAGIC); _glthread_LOCK_MUTEX(oldRb->Mutex); - assert(oldRb->Magic == RB_MAGIC); ASSERT(oldRb->RefCount > 0); oldRb->RefCount--; /*printf("RB DECR %p (%d) to %d\n", (void*) oldRb, oldRb->Name, oldRb->RefCount);*/ @@ -1980,7 +1977,6 @@ _mesa_reference_renderbuffer(struct gl_renderbuffer **ptr, _glthread_UNLOCK_MUTEX(oldRb->Mutex); if (deleteFlag) { - oldRb->Magic = 0; /* now invalid memory! */ oldRb->Delete(oldRb); } @@ -1989,7 +1985,6 @@ _mesa_reference_renderbuffer(struct gl_renderbuffer **ptr, assert(!*ptr); if (rb) { - assert(rb->Magic == RB_MAGIC); /* reference new renderbuffer */ _glthread_LOCK_MUTEX(rb->Mutex); rb->RefCount++; From 348ea34d0310cc862ad3c078d8703c6c1f0b602f Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 15 Apr 2011 11:13:44 -0700 Subject: [PATCH 331/420] mesa: Repack single-byte fields in gl_renderbuffer. Cuts 8 out of 120 bytes in the struct. Reviewed-by: Brian Paul --- src/mesa/main/mtypes.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index 6ca7405b5cb..39fde0a38dd 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -2413,18 +2413,18 @@ struct gl_renderbuffer GLuint Width, Height; GLboolean Purgeable; /**< Is the buffer purgeable under memory pressure? */ + GLboolean AttachedAnytime; /**< TRUE if it was attached to a framebuffer */ + + GLubyte NumSamples; + GLenum InternalFormat; /**< The user-specified format */ GLenum _BaseFormat; /**< Either GL_RGB, GL_RGBA, GL_DEPTH_COMPONENT or GL_STENCIL_INDEX. */ gl_format Format; /**< The actual renderbuffer memory format */ - GLubyte NumSamples; - GLenum DataType; /**< Type of values passed to the Get/Put functions */ GLvoid *Data; /**< This may not be used by some kinds of RBs */ - GLboolean AttachedAnytime; /**< TRUE if it was attached to a framebuffer */ - /* Used to wrap one renderbuffer around another: */ struct gl_renderbuffer *Wrapped; From 155200c15431f8364114d9a37ec527af81c773a5 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 15 Apr 2011 11:37:23 -0700 Subject: [PATCH 332/420] mesa: Add a gl_renderbuffer.RowStride field like textures have. This will allow some drivers to reuse the core renderbuffer.c get/put row functions in place of using the spantmp.h macros. Note that unlike textures, we use a signed integer here to allow for handling FBO orientation. Reviewed-by: Brian Paul --- src/mesa/main/depthstencil.c | 3 + src/mesa/main/mtypes.h | 1 + src/mesa/main/renderbuffer.c | 115 +++++++++++++++++++---------------- 3 files changed, 66 insertions(+), 53 deletions(-) diff --git a/src/mesa/main/depthstencil.c b/src/mesa/main/depthstencil.c index c5466dc9fcc..ab62c97fe5a 100644 --- a/src/mesa/main/depthstencil.c +++ b/src/mesa/main/depthstencil.c @@ -91,6 +91,7 @@ alloc_wrapper_storage(struct gl_context *ctx, struct gl_renderbuffer *rb, if (retVal) { rb->Width = width; rb->Height = height; + rb->RowStride = dsrb->RowStride; } return retVal; } @@ -371,6 +372,7 @@ _mesa_new_z24_renderbuffer_wrapper(struct gl_context *ctx, z24rb->RefCount = 0; z24rb->Width = dsrb->Width; z24rb->Height = dsrb->Height; + z24rb->RowStride = dsrb->RowStride; z24rb->InternalFormat = GL_DEPTH_COMPONENT24; z24rb->Format = MESA_FORMAT_X8_Z24; z24rb->_BaseFormat = GL_DEPTH_COMPONENT; @@ -657,6 +659,7 @@ _mesa_new_s8_renderbuffer_wrapper(struct gl_context *ctx, struct gl_renderbuffer s8rb->RefCount = 0; s8rb->Width = dsrb->Width; s8rb->Height = dsrb->Height; + s8rb->RowStride = dsrb->RowStride; s8rb->InternalFormat = GL_STENCIL_INDEX8_EXT; s8rb->Format = MESA_FORMAT_S8; s8rb->_BaseFormat = GL_STENCIL_INDEX; diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index 39fde0a38dd..5a25d649a13 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -2411,6 +2411,7 @@ struct gl_renderbuffer GLuint Name; GLint RefCount; GLuint Width, Height; + GLint RowStride; /**< Padded width in units of pixels */ GLboolean Purgeable; /**< Is the buffer purgeable under memory pressure? */ GLboolean AttachedAnytime; /**< TRUE if it was attached to a framebuffer */ diff --git a/src/mesa/main/renderbuffer.c b/src/mesa/main/renderbuffer.c index 84c5f275f98..281f07ccfa1 100644 --- a/src/mesa/main/renderbuffer.c +++ b/src/mesa/main/renderbuffer.c @@ -51,8 +51,6 @@ /* * Routines for get/put values in common buffer formats follow. - * Someday add support for arbitrary row stride to make them more - * flexible. */ /********************************************************************** @@ -70,7 +68,7 @@ get_pointer_ubyte(struct gl_context *ctx, struct gl_renderbuffer *rb, /* Can't assert rb->Format since these funcs may be used for serveral * different formats (GL_ALPHA8, GL_STENCIL_INDEX8, etc). */ - return (GLubyte *) rb->Data + y * rb->Width + x; + return (GLubyte *) rb->Data + y * rb->RowStride + x; } @@ -78,7 +76,7 @@ static void get_row_ubyte(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, GLint x, GLint y, void *values) { - const GLubyte *src = (const GLubyte *) rb->Data + y * rb->Width + x; + const GLubyte *src = (const GLubyte *) rb->Data + y * rb->RowStride + x; ASSERT(rb->DataType == GL_UNSIGNED_BYTE); memcpy(values, src, count * sizeof(GLubyte)); } @@ -92,7 +90,7 @@ get_values_ubyte(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint coun GLuint i; ASSERT(rb->DataType == GL_UNSIGNED_BYTE); for (i = 0; i < count; i++) { - const GLubyte *src = (GLubyte *) rb->Data + y[i] * rb->Width + x[i]; + const GLubyte *src = (GLubyte *) rb->Data + y[i] * rb->RowStride + x[i]; dst[i] = *src; } } @@ -103,7 +101,7 @@ put_row_ubyte(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, GLint x, GLint y, const void *values, const GLubyte *mask) { const GLubyte *src = (const GLubyte *) values; - GLubyte *dst = (GLubyte *) rb->Data + y * rb->Width + x; + GLubyte *dst = (GLubyte *) rb->Data + y * rb->RowStride + x; ASSERT(rb->DataType == GL_UNSIGNED_BYTE); if (mask) { GLuint i; @@ -124,7 +122,7 @@ put_mono_row_ubyte(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint co GLint x, GLint y, const void *value, const GLubyte *mask) { const GLubyte val = *((const GLubyte *) value); - GLubyte *dst = (GLubyte *) rb->Data + y * rb->Width + x; + GLubyte *dst = (GLubyte *) rb->Data + y * rb->RowStride + x; ASSERT(rb->DataType == GL_UNSIGNED_BYTE); if (mask) { GLuint i; @@ -153,7 +151,7 @@ put_values_ubyte(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint coun ASSERT(rb->DataType == GL_UNSIGNED_BYTE); for (i = 0; i < count; i++) { if (!mask || mask[i]) { - GLubyte *dst = (GLubyte *) rb->Data + y[i] * rb->Width + x[i]; + GLubyte *dst = (GLubyte *) rb->Data + y[i] * rb->RowStride + x[i]; *dst = src[i]; } } @@ -170,7 +168,7 @@ put_mono_values_ubyte(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint ASSERT(rb->DataType == GL_UNSIGNED_BYTE); for (i = 0; i < count; i++) { if (!mask || mask[i]) { - GLubyte *dst = (GLubyte *) rb->Data + y[i] * rb->Width + x[i]; + GLubyte *dst = (GLubyte *) rb->Data + y[i] * rb->RowStride + x[i]; *dst = val; } } @@ -190,7 +188,7 @@ get_pointer_ushort(struct gl_context *ctx, struct gl_renderbuffer *rb, return NULL; ASSERT(rb->DataType == GL_UNSIGNED_SHORT); ASSERT(rb->Width > 0); - return (GLushort *) rb->Data + y * rb->Width + x; + return (GLushort *) rb->Data + y * rb->RowStride + x; } @@ -212,7 +210,7 @@ get_values_ushort(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint cou GLuint i; ASSERT(rb->DataType == GL_UNSIGNED_SHORT); for (i = 0; i < count; i++) { - const GLushort *src = (GLushort *) rb->Data + y[i] * rb->Width + x[i]; + const GLushort *src = (GLushort *) rb->Data + y[i] * rb->RowStride + x[i]; dst[i] = *src; } } @@ -223,7 +221,7 @@ put_row_ushort(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, GLint x, GLint y, const void *values, const GLubyte *mask) { const GLushort *src = (const GLushort *) values; - GLushort *dst = (GLushort *) rb->Data + y * rb->Width + x; + GLushort *dst = (GLushort *) rb->Data + y * rb->RowStride + x; ASSERT(rb->DataType == GL_UNSIGNED_SHORT); if (mask) { GLuint i; @@ -244,7 +242,7 @@ put_mono_row_ushort(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint c GLint x, GLint y, const void *value, const GLubyte *mask) { const GLushort val = *((const GLushort *) value); - GLushort *dst = (GLushort *) rb->Data + y * rb->Width + x; + GLushort *dst = (GLushort *) rb->Data + y * rb->RowStride + x; ASSERT(rb->DataType == GL_UNSIGNED_SHORT); if (mask) { GLuint i; @@ -273,7 +271,7 @@ put_values_ushort(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint cou ASSERT(rb->DataType == GL_UNSIGNED_SHORT); for (i = 0; i < count; i++) { if (!mask || mask[i]) { - GLushort *dst = (GLushort *) rb->Data + y[i] * rb->Width + x[i]; + GLushort *dst = (GLushort *) rb->Data + y[i] * rb->RowStride + x[i]; *dst = src[i]; } } @@ -291,7 +289,7 @@ put_mono_values_ushort(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint i; for (i = 0; i < count; i++) { if (mask[i]) { - GLushort *dst = (GLushort *) rb->Data + y[i] * rb->Width + x[i]; + GLushort *dst = (GLushort *) rb->Data + y[i] * rb->RowStride + x[i]; *dst = val; } } @@ -299,7 +297,7 @@ put_mono_values_ushort(struct gl_context *ctx, struct gl_renderbuffer *rb, else { GLuint i; for (i = 0; i < count; i++) { - GLushort *dst = (GLushort *) rb->Data + y[i] * rb->Width + x[i]; + GLushort *dst = (GLushort *) rb->Data + y[i] * rb->RowStride + x[i]; *dst = val; } } @@ -319,7 +317,7 @@ get_pointer_uint(struct gl_context *ctx, struct gl_renderbuffer *rb, return NULL; ASSERT(rb->DataType == GL_UNSIGNED_INT || rb->DataType == GL_UNSIGNED_INT_24_8_EXT); - return (GLuint *) rb->Data + y * rb->Width + x; + return (GLuint *) rb->Data + y * rb->RowStride + x; } @@ -343,7 +341,7 @@ get_values_uint(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count ASSERT(rb->DataType == GL_UNSIGNED_INT || rb->DataType == GL_UNSIGNED_INT_24_8_EXT); for (i = 0; i < count; i++) { - const GLuint *src = (GLuint *) rb->Data + y[i] * rb->Width + x[i]; + const GLuint *src = (GLuint *) rb->Data + y[i] * rb->RowStride + x[i]; dst[i] = *src; } } @@ -354,7 +352,7 @@ put_row_uint(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, GLint x, GLint y, const void *values, const GLubyte *mask) { const GLuint *src = (const GLuint *) values; - GLuint *dst = (GLuint *) rb->Data + y * rb->Width + x; + GLuint *dst = (GLuint *) rb->Data + y * rb->RowStride + x; ASSERT(rb->DataType == GL_UNSIGNED_INT || rb->DataType == GL_UNSIGNED_INT_24_8_EXT); if (mask) { @@ -376,7 +374,7 @@ put_mono_row_uint(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint cou GLint x, GLint y, const void *value, const GLubyte *mask) { const GLuint val = *((const GLuint *) value); - GLuint *dst = (GLuint *) rb->Data + y * rb->Width + x; + GLuint *dst = (GLuint *) rb->Data + y * rb->RowStride + x; ASSERT(rb->DataType == GL_UNSIGNED_INT || rb->DataType == GL_UNSIGNED_INT_24_8_EXT); if (mask) { @@ -407,7 +405,7 @@ put_values_uint(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count rb->DataType == GL_UNSIGNED_INT_24_8_EXT); for (i = 0; i < count; i++) { if (!mask || mask[i]) { - GLuint *dst = (GLuint *) rb->Data + y[i] * rb->Width + x[i]; + GLuint *dst = (GLuint *) rb->Data + y[i] * rb->RowStride + x[i]; *dst = src[i]; } } @@ -425,7 +423,7 @@ put_mono_values_uint(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint rb->DataType == GL_UNSIGNED_INT_24_8_EXT); for (i = 0; i < count; i++) { if (!mask || mask[i]) { - GLuint *dst = (GLuint *) rb->Data + y[i] * rb->Width + x[i]; + GLuint *dst = (GLuint *) rb->Data + y[i] * rb->RowStride + x[i]; *dst = val; } } @@ -455,7 +453,8 @@ static void get_row_ubyte3(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, GLint x, GLint y, void *values) { - const GLubyte *src = (const GLubyte *) rb->Data + 3 * (y * rb->Width + x); + const GLubyte *src = (const GLubyte *) (rb->Data + + 3 * (y * rb->RowStride + x)); GLubyte *dst = (GLubyte *) values; GLuint i; ASSERT(rb->Format == MESA_FORMAT_RGB888); @@ -479,7 +478,7 @@ get_values_ubyte3(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint cou ASSERT(rb->DataType == GL_UNSIGNED_BYTE); for (i = 0; i < count; i++) { const GLubyte *src - = (GLubyte *) rb->Data + 3 * (y[i] * rb->Width + x[i]); + = (GLubyte *) rb->Data + 3 * (y[i] * rb->RowStride + x[i]); dst[i * 4 + 0] = src[0]; dst[i * 4 + 1] = src[1]; dst[i * 4 + 2] = src[2]; @@ -494,7 +493,7 @@ put_row_ubyte3(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, { /* note: incoming values are RGB+A! */ const GLubyte *src = (const GLubyte *) values; - GLubyte *dst = (GLubyte *) rb->Data + 3 * (y * rb->Width + x); + GLubyte *dst = (GLubyte *) rb->Data + 3 * (y * rb->RowStride + x); GLuint i; ASSERT(rb->Format == MESA_FORMAT_RGB888); ASSERT(rb->DataType == GL_UNSIGNED_BYTE); @@ -514,7 +513,7 @@ put_row_rgb_ubyte3(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint co { /* note: incoming values are RGB+A! */ const GLubyte *src = (const GLubyte *) values; - GLubyte *dst = (GLubyte *) rb->Data + 3 * (y * rb->Width + x); + GLubyte *dst = (GLubyte *) rb->Data + 3 * (y * rb->RowStride + x); GLuint i; ASSERT(rb->Format == MESA_FORMAT_RGB888); ASSERT(rb->DataType == GL_UNSIGNED_BYTE); @@ -536,7 +535,7 @@ put_mono_row_ubyte3(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint c const GLubyte val0 = ((const GLubyte *) value)[0]; const GLubyte val1 = ((const GLubyte *) value)[1]; const GLubyte val2 = ((const GLubyte *) value)[2]; - GLubyte *dst = (GLubyte *) rb->Data + 3 * (y * rb->Width + x); + GLubyte *dst = (GLubyte *) rb->Data + 3 * (y * rb->RowStride + x); ASSERT(rb->Format == MESA_FORMAT_RGB888); ASSERT(rb->DataType == GL_UNSIGNED_BYTE); if (!mask && val0 == val1 && val1 == val2) { @@ -568,7 +567,7 @@ put_values_ubyte3(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint cou ASSERT(rb->DataType == GL_UNSIGNED_BYTE); for (i = 0; i < count; i++) { if (!mask || mask[i]) { - GLubyte *dst = (GLubyte *) rb->Data + 3 * (y[i] * rb->Width + x[i]); + GLubyte *dst = (GLubyte *) rb->Data + 3 * (y[i] * rb->RowStride + x[i]); dst[0] = src[i * 4 + 0]; dst[1] = src[i * 4 + 1]; dst[2] = src[i * 4 + 2]; @@ -591,7 +590,8 @@ put_mono_values_ubyte3(struct gl_context *ctx, struct gl_renderbuffer *rb, ASSERT(rb->DataType == GL_UNSIGNED_BYTE); for (i = 0; i < count; i++) { if (!mask || mask[i]) { - GLubyte *dst = (GLubyte *) rb->Data + 3 * (y[i] * rb->Width + x[i]); + GLubyte *dst = (GLubyte *) (rb->Data + + 3 * (y[i] * rb->RowStride + x[i])); dst[0] = val0; dst[1] = val1; dst[2] = val2; @@ -613,7 +613,7 @@ get_pointer_ubyte4(struct gl_context *ctx, struct gl_renderbuffer *rb, return NULL; ASSERT(rb->DataType == GL_UNSIGNED_BYTE); ASSERT(rb->Format == MESA_FORMAT_RGBA8888); - return (GLubyte *) rb->Data + 4 * (y * rb->Width + x); + return (GLubyte *) rb->Data + 4 * (y * rb->RowStride + x); } @@ -621,7 +621,8 @@ static void get_row_ubyte4(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, GLint x, GLint y, void *values) { - const GLubyte *src = (const GLubyte *) rb->Data + 4 * (y * rb->Width + x); + const GLubyte *src = (const GLubyte *) (rb->Data + + 4 * (y * rb->RowStride + x)); ASSERT(rb->DataType == GL_UNSIGNED_BYTE); ASSERT(rb->Format == MESA_FORMAT_RGBA8888); memcpy(values, src, 4 * count * sizeof(GLubyte)); @@ -638,7 +639,7 @@ get_values_ubyte4(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint cou ASSERT(rb->DataType == GL_UNSIGNED_BYTE); ASSERT(rb->Format == MESA_FORMAT_RGBA8888); for (i = 0; i < count; i++) { - const GLuint *src = (GLuint *) rb->Data + (y[i] * rb->Width + x[i]); + const GLuint *src = (GLuint *) rb->Data + (y[i] * rb->RowStride + x[i]); dst[i] = *src; } } @@ -650,7 +651,7 @@ put_row_ubyte4(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, { /* treat 4*GLubyte as 1*GLuint */ const GLuint *src = (const GLuint *) values; - GLuint *dst = (GLuint *) rb->Data + (y * rb->Width + x); + GLuint *dst = (GLuint *) rb->Data + (y * rb->RowStride + x); ASSERT(rb->DataType == GL_UNSIGNED_BYTE); ASSERT(rb->Format == MESA_FORMAT_RGBA8888); if (mask) { @@ -673,7 +674,7 @@ put_row_rgb_ubyte4(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint co { /* Store RGB values in RGBA buffer */ const GLubyte *src = (const GLubyte *) values; - GLubyte *dst = (GLubyte *) rb->Data + 4 * (y * rb->Width + x); + GLubyte *dst = (GLubyte *) rb->Data + 4 * (y * rb->RowStride + x); GLuint i; ASSERT(rb->DataType == GL_UNSIGNED_BYTE); ASSERT(rb->Format == MESA_FORMAT_RGBA8888); @@ -694,7 +695,7 @@ put_mono_row_ubyte4(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint c { /* treat 4*GLubyte as 1*GLuint */ const GLuint val = *((const GLuint *) value); - GLuint *dst = (GLuint *) rb->Data + (y * rb->Width + x); + GLuint *dst = (GLuint *) rb->Data + (y * rb->RowStride + x); ASSERT(rb->DataType == GL_UNSIGNED_BYTE); ASSERT(rb->Format == MESA_FORMAT_RGBA8888); if (!mask && val == 0) { @@ -733,7 +734,7 @@ put_values_ubyte4(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint cou ASSERT(rb->Format == MESA_FORMAT_RGBA8888); for (i = 0; i < count; i++) { if (!mask || mask[i]) { - GLuint *dst = (GLuint *) rb->Data + (y[i] * rb->Width + x[i]); + GLuint *dst = (GLuint *) rb->Data + (y[i] * rb->RowStride + x[i]); *dst = src[i]; } } @@ -752,7 +753,7 @@ put_mono_values_ubyte4(struct gl_context *ctx, struct gl_renderbuffer *rb, ASSERT(rb->Format == MESA_FORMAT_RGBA8888); for (i = 0; i < count; i++) { if (!mask || mask[i]) { - GLuint *dst = (GLuint *) rb->Data + (y[i] * rb->Width + x[i]); + GLuint *dst = (GLuint *) rb->Data + (y[i] * rb->RowStride + x[i]); *dst = val; } } @@ -771,7 +772,7 @@ get_pointer_ushort4(struct gl_context *ctx, struct gl_renderbuffer *rb, if (!rb->Data) return NULL; ASSERT(rb->DataType == GL_UNSIGNED_SHORT || rb->DataType == GL_SHORT); - return (GLushort *) rb->Data + 4 * (y * rb->Width + x); + return (GLushort *) rb->Data + 4 * (y * rb->RowStride + x); } @@ -779,7 +780,8 @@ static void get_row_ushort4(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, GLint x, GLint y, void *values) { - const GLshort *src = (const GLshort *) rb->Data + 4 * (y * rb->Width + x); + const GLshort *src = (const GLshort *) (rb->Data + + 4 * (y * rb->RowStride + x)); ASSERT(rb->DataType == GL_UNSIGNED_SHORT || rb->DataType == GL_SHORT); memcpy(values, src, 4 * count * sizeof(GLshort)); } @@ -794,7 +796,7 @@ get_values_ushort4(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint co ASSERT(rb->DataType == GL_UNSIGNED_SHORT || rb->DataType == GL_SHORT); for (i = 0; i < count; i++) { const GLushort *src - = (GLushort *) rb->Data + 4 * (y[i] * rb->Width + x[i]); + = (GLushort *) rb->Data + 4 * (y[i] * rb->RowStride + x[i]); dst[i] = *src; } } @@ -805,7 +807,7 @@ put_row_ushort4(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count GLint x, GLint y, const void *values, const GLubyte *mask) { const GLushort *src = (const GLushort *) values; - GLushort *dst = (GLushort *) rb->Data + 4 * (y * rb->Width + x); + GLushort *dst = (GLushort *) rb->Data + 4 * (y * rb->RowStride + x); ASSERT(rb->DataType == GL_UNSIGNED_SHORT || rb->DataType == GL_SHORT); if (mask) { GLuint i; @@ -830,7 +832,7 @@ put_row_rgb_ushort4(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint c { /* Put RGB values in RGBA buffer */ const GLushort *src = (const GLushort *) values; - GLushort *dst = (GLushort *) rb->Data + 4 * (y * rb->Width + x); + GLushort *dst = (GLushort *) rb->Data + 4 * (y * rb->RowStride + x); ASSERT(rb->DataType == GL_UNSIGNED_SHORT || rb->DataType == GL_SHORT); if (mask) { GLuint i; @@ -857,7 +859,7 @@ put_mono_row_ushort4(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint const GLushort val1 = ((const GLushort *) value)[1]; const GLushort val2 = ((const GLushort *) value)[2]; const GLushort val3 = ((const GLushort *) value)[3]; - GLushort *dst = (GLushort *) rb->Data + 4 * (y * rb->Width + x); + GLushort *dst = (GLushort *) rb->Data + 4 * (y * rb->RowStride + x); ASSERT(rb->DataType == GL_UNSIGNED_SHORT || rb->DataType == GL_SHORT); if (!mask && val0 == 0 && val1 == 0 && val2 == 0 && val3 == 0) { /* common case for clearing accum buffer */ @@ -887,7 +889,8 @@ put_values_ushort4(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint co ASSERT(rb->DataType == GL_UNSIGNED_SHORT || rb->DataType == GL_SHORT); for (i = 0; i < count; i++) { if (!mask || mask[i]) { - GLushort *dst = (GLushort *) rb->Data + 4 * (y[i] * rb->Width + x[i]); + GLushort *dst = (GLushort *) (rb->Data + 4 * + (y[i] * rb->RowStride + x[i])); dst[0] = src[i * 4 + 0]; dst[1] = src[i * 4 + 1]; dst[2] = src[i * 4 + 2]; @@ -910,7 +913,8 @@ put_mono_values_ushort4(struct gl_context *ctx, struct gl_renderbuffer *rb, ASSERT(rb->DataType == GL_UNSIGNED_SHORT || rb->DataType == GL_SHORT); for (i = 0; i < count; i++) { if (!mask || mask[i]) { - GLushort *dst = (GLushort *) rb->Data + 4 * (y[i] * rb->Width + x[i]); + GLushort *dst = (GLushort *) (rb->Data + + 4 * (y[i] * rb->RowStride + x[i])); dst[0] = val0; dst[1] = val1; dst[2] = val2; @@ -1105,6 +1109,8 @@ _mesa_soft_renderbuffer_storage(struct gl_context *ctx, struct gl_renderbuffer * rb->Data = NULL; } + rb->RowStride = width; + if (width > 0 && height > 0) { /* allocate new buffer storage */ rb->Data = malloc(width * height * pixelSize); @@ -1112,6 +1118,7 @@ _mesa_soft_renderbuffer_storage(struct gl_context *ctx, struct gl_renderbuffer * if (rb->Data == NULL) { rb->Width = 0; rb->Height = 0; + rb->RowStride = 0; _mesa_error(ctx, GL_OUT_OF_MEMORY, "software renderbuffer allocation (%d x %d x %d)", width, height, pixelSize); @@ -1185,6 +1192,7 @@ alloc_storage_alpha8(struct gl_context *ctx, struct gl_renderbuffer *arb, arb->Width = width; arb->Height = height; + arb->RowStride = width; return GL_TRUE; } @@ -1220,7 +1228,7 @@ get_row_alpha8(struct gl_context *ctx, struct gl_renderbuffer *arb, GLuint count GLint x, GLint y, void *values) { /* NOTE: 'values' is RGBA format! */ - const GLubyte *src = (const GLubyte *) arb->Data + y * arb->Width + x; + const GLubyte *src = (const GLubyte *) arb->Data + y * arb->RowStride + x; GLubyte *dst = (GLubyte *) values; GLuint i; ASSERT(arb != arb->Wrapped); @@ -1246,7 +1254,7 @@ get_values_alpha8(struct gl_context *ctx, struct gl_renderbuffer *arb, GLuint co arb->Wrapped->GetValues(ctx, arb->Wrapped, count, x, y, values); /* second, fill in alpha values from this buffer! */ for (i = 0; i < count; i++) { - const GLubyte *src = (GLubyte *) arb->Data + y[i] * arb->Width + x[i]; + const GLubyte *src = (GLubyte *) arb->Data + y[i] * arb->RowStride + x[i]; dst[i * 4 + 3] = *src; } } @@ -1257,7 +1265,7 @@ put_row_alpha8(struct gl_context *ctx, struct gl_renderbuffer *arb, GLuint count GLint x, GLint y, const void *values, const GLubyte *mask) { const GLubyte *src = (const GLubyte *) values; - GLubyte *dst = (GLubyte *) arb->Data + y * arb->Width + x; + GLubyte *dst = (GLubyte *) arb->Data + y * arb->RowStride + x; GLuint i; ASSERT(arb != arb->Wrapped); ASSERT(arb->DataType == GL_UNSIGNED_BYTE); @@ -1277,7 +1285,7 @@ put_row_rgb_alpha8(struct gl_context *ctx, struct gl_renderbuffer *arb, GLuint c GLint x, GLint y, const void *values, const GLubyte *mask) { const GLubyte *src = (const GLubyte *) values; - GLubyte *dst = (GLubyte *) arb->Data + y * arb->Width + x; + GLubyte *dst = (GLubyte *) arb->Data + y * arb->RowStride + x; GLuint i; ASSERT(arb != arb->Wrapped); ASSERT(arb->DataType == GL_UNSIGNED_BYTE); @@ -1297,7 +1305,7 @@ put_mono_row_alpha8(struct gl_context *ctx, struct gl_renderbuffer *arb, GLuint GLint x, GLint y, const void *value, const GLubyte *mask) { const GLubyte val = ((const GLubyte *) value)[3]; - GLubyte *dst = (GLubyte *) arb->Data + y * arb->Width + x; + GLubyte *dst = (GLubyte *) arb->Data + y * arb->RowStride + x; ASSERT(arb != arb->Wrapped); ASSERT(arb->DataType == GL_UNSIGNED_BYTE); /* first, pass the call to the wrapped RGB buffer */ @@ -1331,7 +1339,7 @@ put_values_alpha8(struct gl_context *ctx, struct gl_renderbuffer *arb, GLuint co /* second, store alpha in our buffer */ for (i = 0; i < count; i++) { if (!mask || mask[i]) { - GLubyte *dst = (GLubyte *) arb->Data + y[i] * arb->Width + x[i]; + GLubyte *dst = (GLubyte *) arb->Data + y[i] * arb->RowStride + x[i]; *dst = src[i * 4 + 3]; } } @@ -1352,7 +1360,7 @@ put_mono_values_alpha8(struct gl_context *ctx, struct gl_renderbuffer *arb, /* second, store alpha in our buffer */ for (i = 0; i < count; i++) { if (!mask || mask[i]) { - GLubyte *dst = (GLubyte *) arb->Data + y[i] * arb->Width + x[i]; + GLubyte *dst = (GLubyte *) arb->Data + y[i] * arb->RowStride + x[i]; *dst = val; } } @@ -1366,8 +1374,9 @@ copy_buffer_alpha8(struct gl_renderbuffer* dst, struct gl_renderbuffer* src) ASSERT(src->Format == MESA_FORMAT_A8); ASSERT(dst->Width == src->Width); ASSERT(dst->Height == src->Height); + ASSERT(dst->RowStride == src->RowStride); - memcpy(dst->Data, src->Data, dst->Width * dst->Height * sizeof(GLubyte)); + memcpy(dst->Data, src->Data, dst->RowStride * dst->Height * sizeof(GLubyte)); } From 9f164823c79bf933bf88217894129dc2eae0cbed Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 15 Apr 2011 11:47:35 -0700 Subject: [PATCH 333/420] mesa: Add a function to set up the default renderbuffer accessors. Reviewed-by: Brian Paul --- src/mesa/main/renderbuffer.c | 212 +++++++++++++++++++---------------- src/mesa/main/renderbuffer.h | 2 + 2 files changed, 120 insertions(+), 94 deletions(-) diff --git a/src/mesa/main/renderbuffer.c b/src/mesa/main/renderbuffer.c index 281f07ccfa1..de01cfc6951 100644 --- a/src/mesa/main/renderbuffer.c +++ b/src/mesa/main/renderbuffer.c @@ -923,7 +923,121 @@ put_mono_values_ushort4(struct gl_context *ctx, struct gl_renderbuffer *rb, } } +/** + * This is the default software fallback for gl_renderbuffer's span + * access functions. + * + * The assumptions are that rb->Data will be a pointer to (0,0), that pixels + * are packed in the type of rb->Format, and that subsequent rows appear + * rb->RowStride pixels later. + */ +void +_mesa_set_renderbuffer_accessors(struct gl_renderbuffer *rb) +{ + switch (rb->Format) { + case MESA_FORMAT_RGB888: + rb->DataType = GL_UNSIGNED_BYTE; + rb->GetPointer = get_pointer_ubyte3; + rb->GetRow = get_row_ubyte3; + rb->GetValues = get_values_ubyte3; + rb->PutRow = put_row_ubyte3; + rb->PutRowRGB = put_row_rgb_ubyte3; + rb->PutMonoRow = put_mono_row_ubyte3; + rb->PutValues = put_values_ubyte3; + rb->PutMonoValues = put_mono_values_ubyte3; + break; + case MESA_FORMAT_RGBA8888: + rb->DataType = GL_UNSIGNED_BYTE; + rb->GetPointer = get_pointer_ubyte4; + rb->GetRow = get_row_ubyte4; + rb->GetValues = get_values_ubyte4; + rb->PutRow = put_row_ubyte4; + rb->PutRowRGB = put_row_rgb_ubyte4; + rb->PutMonoRow = put_mono_row_ubyte4; + rb->PutValues = put_values_ubyte4; + rb->PutMonoValues = put_mono_values_ubyte4; + break; + + case MESA_FORMAT_SIGNED_RGBA_16: + rb->DataType = GL_SHORT; + rb->GetPointer = get_pointer_ushort4; + rb->GetRow = get_row_ushort4; + rb->GetValues = get_values_ushort4; + rb->PutRow = put_row_ushort4; + rb->PutRowRGB = put_row_rgb_ushort4; + rb->PutMonoRow = put_mono_row_ushort4; + rb->PutValues = put_values_ushort4; + rb->PutMonoValues = put_mono_values_ushort4; + break; + +#if 0 + case MESA_FORMAT_A8: + rb->DataType = GL_UNSIGNED_BYTE; + rb->GetPointer = get_pointer_alpha8; + rb->GetRow = get_row_alpha8; + rb->GetValues = get_values_alpha8; + rb->PutRow = put_row_alpha8; + rb->PutRowRGB = NULL; + rb->PutMonoRow = put_mono_row_alpha8; + rb->PutValues = put_values_alpha8; + rb->PutMonoValues = put_mono_values_alpha8; + break; +#endif + + case MESA_FORMAT_S8: + rb->DataType = GL_UNSIGNED_BYTE; + rb->GetPointer = get_pointer_ubyte; + rb->GetRow = get_row_ubyte; + rb->GetValues = get_values_ubyte; + rb->PutRow = put_row_ubyte; + rb->PutRowRGB = NULL; + rb->PutMonoRow = put_mono_row_ubyte; + rb->PutValues = put_values_ubyte; + rb->PutMonoValues = put_mono_values_ubyte; + break; + + case MESA_FORMAT_Z16: + rb->DataType = GL_UNSIGNED_SHORT; + rb->GetPointer = get_pointer_ushort; + rb->GetRow = get_row_ushort; + rb->GetValues = get_values_ushort; + rb->PutRow = put_row_ushort; + rb->PutRowRGB = NULL; + rb->PutMonoRow = put_mono_row_ushort; + rb->PutValues = put_values_ushort; + rb->PutMonoValues = put_mono_values_ushort; + break; + + case MESA_FORMAT_Z32: + case MESA_FORMAT_X8_Z24: + rb->DataType = GL_UNSIGNED_INT; + rb->GetPointer = get_pointer_uint; + rb->GetRow = get_row_uint; + rb->GetValues = get_values_uint; + rb->PutRow = put_row_uint; + rb->PutRowRGB = NULL; + rb->PutMonoRow = put_mono_row_uint; + rb->PutValues = put_values_uint; + rb->PutMonoValues = put_mono_values_uint; + break; + + case MESA_FORMAT_Z24_S8: + rb->DataType = GL_UNSIGNED_INT_24_8_EXT; + rb->GetPointer = get_pointer_uint; + rb->GetRow = get_row_uint; + rb->GetValues = get_values_uint; + rb->PutRow = put_row_uint; + rb->PutRowRGB = NULL; + rb->PutMonoRow = put_mono_row_uint; + rb->PutValues = put_values_uint; + rb->PutMonoValues = put_mono_values_uint; + break; + + default: + break; + } +} /** * This is a software fallback for the gl_renderbuffer->AllocStorage @@ -944,8 +1058,6 @@ _mesa_soft_renderbuffer_storage(struct gl_context *ctx, struct gl_renderbuffer * GLenum internalFormat, GLuint width, GLuint height) { - GLuint pixelSize; - switch (internalFormat) { case GL_RGB: case GL_R3_G3_B2: @@ -956,16 +1068,6 @@ _mesa_soft_renderbuffer_storage(struct gl_context *ctx, struct gl_renderbuffer * case GL_RGB12: case GL_RGB16: rb->Format = MESA_FORMAT_RGB888; - rb->DataType = GL_UNSIGNED_BYTE; - rb->GetPointer = get_pointer_ubyte3; - rb->GetRow = get_row_ubyte3; - rb->GetValues = get_values_ubyte3; - rb->PutRow = put_row_ubyte3; - rb->PutRowRGB = put_row_rgb_ubyte3; - rb->PutMonoRow = put_mono_row_ubyte3; - rb->PutValues = put_values_ubyte3; - rb->PutMonoValues = put_mono_values_ubyte3; - pixelSize = 3 * sizeof(GLubyte); break; case GL_RGBA: case GL_RGBA2: @@ -977,45 +1079,15 @@ _mesa_soft_renderbuffer_storage(struct gl_context *ctx, struct gl_renderbuffer * case GL_RGBA12: #endif rb->Format = MESA_FORMAT_RGBA8888; - rb->DataType = GL_UNSIGNED_BYTE; - rb->GetPointer = get_pointer_ubyte4; - rb->GetRow = get_row_ubyte4; - rb->GetValues = get_values_ubyte4; - rb->PutRow = put_row_ubyte4; - rb->PutRowRGB = put_row_rgb_ubyte4; - rb->PutMonoRow = put_mono_row_ubyte4; - rb->PutValues = put_values_ubyte4; - rb->PutMonoValues = put_mono_values_ubyte4; - pixelSize = 4 * sizeof(GLubyte); break; case GL_RGBA16: case GL_RGBA16_SNORM: /* for accum buffer */ rb->Format = MESA_FORMAT_SIGNED_RGBA_16; - rb->DataType = GL_SHORT; - rb->GetPointer = get_pointer_ushort4; - rb->GetRow = get_row_ushort4; - rb->GetValues = get_values_ushort4; - rb->PutRow = put_row_ushort4; - rb->PutRowRGB = put_row_rgb_ushort4; - rb->PutMonoRow = put_mono_row_ushort4; - rb->PutValues = put_values_ushort4; - rb->PutMonoValues = put_mono_values_ushort4; - pixelSize = 4 * sizeof(GLushort); break; #if 0 case GL_ALPHA8: rb->Format = MESA_FORMAT_A8; - rb->DataType = GL_UNSIGNED_BYTE; - rb->GetPointer = get_pointer_alpha8; - rb->GetRow = get_row_alpha8; - rb->GetValues = get_values_alpha8; - rb->PutRow = put_row_alpha8; - rb->PutRowRGB = NULL; - rb->PutMonoRow = put_mono_row_alpha8; - rb->PutValues = put_values_alpha8; - rb->PutMonoValues = put_mono_values_alpha8; - pixelSize = sizeof(GLubyte); break; #endif case GL_STENCIL_INDEX: @@ -1024,76 +1096,28 @@ _mesa_soft_renderbuffer_storage(struct gl_context *ctx, struct gl_renderbuffer * case GL_STENCIL_INDEX8_EXT: case GL_STENCIL_INDEX16_EXT: rb->Format = MESA_FORMAT_S8; - rb->DataType = GL_UNSIGNED_BYTE; - rb->GetPointer = get_pointer_ubyte; - rb->GetRow = get_row_ubyte; - rb->GetValues = get_values_ubyte; - rb->PutRow = put_row_ubyte; - rb->PutRowRGB = NULL; - rb->PutMonoRow = put_mono_row_ubyte; - rb->PutValues = put_values_ubyte; - rb->PutMonoValues = put_mono_values_ubyte; - pixelSize = sizeof(GLubyte); break; case GL_DEPTH_COMPONENT: case GL_DEPTH_COMPONENT16: rb->Format = MESA_FORMAT_Z16; - rb->DataType = GL_UNSIGNED_SHORT; - rb->GetPointer = get_pointer_ushort; - rb->GetRow = get_row_ushort; - rb->GetValues = get_values_ushort; - rb->PutRow = put_row_ushort; - rb->PutRowRGB = NULL; - rb->PutMonoRow = put_mono_row_ushort; - rb->PutValues = put_values_ushort; - rb->PutMonoValues = put_mono_values_ushort; - pixelSize = sizeof(GLushort); break; case GL_DEPTH_COMPONENT24: - rb->DataType = GL_UNSIGNED_INT; - rb->GetPointer = get_pointer_uint; - rb->GetRow = get_row_uint; - rb->GetValues = get_values_uint; - rb->PutRow = put_row_uint; - rb->PutRowRGB = NULL; - rb->PutMonoRow = put_mono_row_uint; - rb->PutValues = put_values_uint; - rb->PutMonoValues = put_mono_values_uint; rb->Format = MESA_FORMAT_X8_Z24; - pixelSize = sizeof(GLuint); break; case GL_DEPTH_COMPONENT32: - rb->DataType = GL_UNSIGNED_INT; - rb->GetPointer = get_pointer_uint; - rb->GetRow = get_row_uint; - rb->GetValues = get_values_uint; - rb->PutRow = put_row_uint; - rb->PutRowRGB = NULL; - rb->PutMonoRow = put_mono_row_uint; - rb->PutValues = put_values_uint; - rb->PutMonoValues = put_mono_values_uint; rb->Format = MESA_FORMAT_Z32; - pixelSize = sizeof(GLuint); break; case GL_DEPTH_STENCIL_EXT: case GL_DEPTH24_STENCIL8_EXT: rb->Format = MESA_FORMAT_Z24_S8; - rb->DataType = GL_UNSIGNED_INT_24_8_EXT; - rb->GetPointer = get_pointer_uint; - rb->GetRow = get_row_uint; - rb->GetValues = get_values_uint; - rb->PutRow = put_row_uint; - rb->PutRowRGB = NULL; - rb->PutMonoRow = put_mono_row_uint; - rb->PutValues = put_values_uint; - rb->PutMonoValues = put_mono_values_uint; - pixelSize = sizeof(GLuint); break; default: /* unsupported format */ return GL_FALSE; } + _mesa_set_renderbuffer_accessors(rb); + ASSERT(rb->DataType); ASSERT(rb->GetPointer); ASSERT(rb->GetRow); @@ -1113,7 +1137,7 @@ _mesa_soft_renderbuffer_storage(struct gl_context *ctx, struct gl_renderbuffer * if (width > 0 && height > 0) { /* allocate new buffer storage */ - rb->Data = malloc(width * height * pixelSize); + rb->Data = malloc(width * height * _mesa_get_format_bytes(rb->Format)); if (rb->Data == NULL) { rb->Width = 0; @@ -1121,7 +1145,7 @@ _mesa_soft_renderbuffer_storage(struct gl_context *ctx, struct gl_renderbuffer * rb->RowStride = 0; _mesa_error(ctx, GL_OUT_OF_MEMORY, "software renderbuffer allocation (%d x %d x %d)", - width, height, pixelSize); + width, height, _mesa_get_format_bytes(rb->Format)); return GL_FALSE; } } diff --git a/src/mesa/main/renderbuffer.h b/src/mesa/main/renderbuffer.h index 4702a8e952a..39d9b3035e6 100644 --- a/src/mesa/main/renderbuffer.h +++ b/src/mesa/main/renderbuffer.h @@ -46,6 +46,8 @@ _mesa_delete_renderbuffer(struct gl_renderbuffer *rb); extern struct gl_renderbuffer * _mesa_new_soft_renderbuffer(struct gl_context *ctx, GLuint name); +extern void +_mesa_set_renderbuffer_accessors(struct gl_renderbuffer *rb); extern GLboolean _mesa_soft_renderbuffer_storage(struct gl_context *ctx, struct gl_renderbuffer *rb, From 0778fdb002b000e241b042ad65b6da6dd8480454 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 15 Apr 2011 11:58:58 -0700 Subject: [PATCH 334/420] intel: Use Mesa core's renderbuffer accessors for depth. Since we're using GTT mappings now (no manual detiling), there's really nothing special to accessing these buffers, other than needing the new RowStride field of gl_renderbuffer to accomodate padding. Reduces the driver size by 2.7kb, and improves glean depthStencil performance 3-10x (!) Reviewed-by: Brian Paul --- src/mesa/drivers/dri/intel/intel_span.c | 48 ++++++++----------------- src/mesa/main/renderbuffer.c | 2 ++ 2 files changed, 17 insertions(+), 33 deletions(-) diff --git a/src/mesa/drivers/dri/intel/intel_span.c b/src/mesa/drivers/dri/intel/intel_span.c index 1f41518535c..37a561aacdf 100644 --- a/src/mesa/drivers/dri/intel/intel_span.c +++ b/src/mesa/drivers/dri/intel/intel_span.c @@ -30,6 +30,7 @@ #include "main/macros.h" #include "main/mtypes.h" #include "main/colormac.h" +#include "main/renderbuffer.h" #include "intel_buffers.h" #include "intel_fbo.h" @@ -134,36 +135,6 @@ intel_set_span_functions(struct intel_context *intel, #define TAG2(x,y) intel_##x##y##_RG1616 #include "spantmp2.h" -#define LOCAL_DEPTH_VARS \ - struct intel_renderbuffer *irb = intel_renderbuffer(rb); \ - const GLint yScale = rb->Name ? 1 : -1; \ - const GLint yBias = rb->Name ? 0 : rb->Height - 1; \ - int minx = 0, miny = 0; \ - int maxx = rb->Width; \ - int maxy = rb->Height; \ - int pitch = irb->region->pitch * irb->region->cpp; \ - void *buf = irb->region->buffer->virtual; \ - (void)buf; (void)pitch; /* unused for non-gttmap. */ \ - -#define LOCAL_STENCIL_VARS LOCAL_DEPTH_VARS - -/* z16 depthbuffer functions. */ -#define VALUE_TYPE GLushort -#define WRITE_DEPTH(_x, _y, d) \ - (*(uint16_t *)(irb->region->buffer->virtual + NO_TILE(_x, _y)) = d) -#define READ_DEPTH(d, _x, _y) \ - d = *(uint16_t *)(irb->region->buffer->virtual + NO_TILE(_x, _y)) -#define TAG(x) intel_##x##_z16 -#include "depthtmp.h" - -/* z24_s8 and z24_x8 depthbuffer functions. */ -#define VALUE_TYPE GLuint -#define WRITE_DEPTH(_x, _y, d) \ - (*(uint32_t *)(irb->region->buffer->virtual + NO_TILE(_x, _y)) = d) -#define READ_DEPTH(d, _x, _y) \ - d = *(uint32_t *)(irb->region->buffer->virtual + NO_TILE(_x, _y)) -#define TAG(x) intel_##x##_z24_s8 -#include "depthtmp.h" void intel_renderbuffer_map(struct intel_context *intel, struct gl_renderbuffer *rb) @@ -175,6 +146,15 @@ intel_renderbuffer_map(struct intel_context *intel, struct gl_renderbuffer *rb) drm_intel_gem_bo_map_gtt(irb->region->buffer); + rb->Data = irb->region->buffer->virtual; + rb->RowStride = irb->region->pitch; + + /* Flip orientation if it's the window system buffer */ + if (!rb->Name) { + rb->Data += rb->RowStride * (irb->region->height - 1) * irb->region->cpp; + rb->RowStride = -rb->RowStride; + } + intel_set_span_functions(intel, rb); } @@ -191,6 +171,8 @@ intel_renderbuffer_unmap(struct intel_context *intel, rb->GetRow = NULL; rb->PutRow = NULL; + rb->Data = NULL; + rb->RowStride = 0; } /** @@ -371,9 +353,9 @@ static span_init_func intel_span_init_funcs[MESA_FORMAT_COUNT] = [MESA_FORMAT_XRGB8888] = intel_InitPointers_xRGB8888, [MESA_FORMAT_ARGB8888] = intel_InitPointers_ARGB8888, [MESA_FORMAT_SARGB8] = intel_InitPointers_ARGB8888, - [MESA_FORMAT_Z16] = intel_InitDepthPointers_z16, - [MESA_FORMAT_X8_Z24] = intel_InitDepthPointers_z24_s8, - [MESA_FORMAT_S8_Z24] = intel_InitDepthPointers_z24_s8, + [MESA_FORMAT_Z16] = _mesa_set_renderbuffer_accessors, + [MESA_FORMAT_X8_Z24] = _mesa_set_renderbuffer_accessors, + [MESA_FORMAT_S8_Z24] = _mesa_set_renderbuffer_accessors, [MESA_FORMAT_R8] = intel_InitPointers_R8, [MESA_FORMAT_RG88] = intel_InitPointers_RG88, [MESA_FORMAT_R16] = intel_InitPointers_R16, diff --git a/src/mesa/main/renderbuffer.c b/src/mesa/main/renderbuffer.c index de01cfc6951..b2e2e84963b 100644 --- a/src/mesa/main/renderbuffer.c +++ b/src/mesa/main/renderbuffer.c @@ -1011,6 +1011,7 @@ _mesa_set_renderbuffer_accessors(struct gl_renderbuffer *rb) case MESA_FORMAT_Z32: case MESA_FORMAT_X8_Z24: + case MESA_FORMAT_Z24_X8: rb->DataType = GL_UNSIGNED_INT; rb->GetPointer = get_pointer_uint; rb->GetRow = get_row_uint; @@ -1023,6 +1024,7 @@ _mesa_set_renderbuffer_accessors(struct gl_renderbuffer *rb) break; case MESA_FORMAT_Z24_S8: + case MESA_FORMAT_S8_Z24: rb->DataType = GL_UNSIGNED_INT_24_8_EXT; rb->GetPointer = get_pointer_uint; rb->GetRow = get_row_uint; From 6ab9889a2704304a45b4da5b28840af08f6f42c5 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 15 Apr 2011 12:58:17 -0700 Subject: [PATCH 335/420] mesa: Use _mesa_get_format_bytes to refactor out the RB get_pointer_* Reviewed-by: Brian Paul --- src/mesa/main/renderbuffer.c | 81 ++++++------------------------------ 1 file changed, 13 insertions(+), 68 deletions(-) diff --git a/src/mesa/main/renderbuffer.c b/src/mesa/main/renderbuffer.c index b2e2e84963b..b59ba129b4b 100644 --- a/src/mesa/main/renderbuffer.c +++ b/src/mesa/main/renderbuffer.c @@ -53,25 +53,22 @@ * Routines for get/put values in common buffer formats follow. */ +static void * +get_pointer_generic(struct gl_context *ctx, struct gl_renderbuffer *rb, + GLint x, GLint y) +{ + if (!rb->Data) + return NULL; + + return (rb->Data + + (y * rb->RowStride + x) * _mesa_get_format_bytes(rb->Format)); +} + /********************************************************************** * Functions for buffers of 1 X GLubyte values. * Typically stencil. */ -static void * -get_pointer_ubyte(struct gl_context *ctx, struct gl_renderbuffer *rb, - GLint x, GLint y) -{ - if (!rb->Data) - return NULL; - ASSERT(rb->DataType == GL_UNSIGNED_BYTE); - /* Can't assert rb->Format since these funcs may be used for serveral - * different formats (GL_ALPHA8, GL_STENCIL_INDEX8, etc). - */ - return (GLubyte *) rb->Data + y * rb->RowStride + x; -} - - static void get_row_ubyte(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, GLint x, GLint y, void *values) @@ -180,18 +177,6 @@ put_mono_values_ubyte(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint * Typically depth/Z. */ -static void * -get_pointer_ushort(struct gl_context *ctx, struct gl_renderbuffer *rb, - GLint x, GLint y) -{ - if (!rb->Data) - return NULL; - ASSERT(rb->DataType == GL_UNSIGNED_SHORT); - ASSERT(rb->Width > 0); - return (GLushort *) rb->Data + y * rb->RowStride + x; -} - - static void get_row_ushort(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, GLint x, GLint y, void *values) @@ -309,18 +294,6 @@ put_mono_values_ushort(struct gl_context *ctx, struct gl_renderbuffer *rb, * Typically depth/Z or color index. */ -static void * -get_pointer_uint(struct gl_context *ctx, struct gl_renderbuffer *rb, - GLint x, GLint y) -{ - if (!rb->Data) - return NULL; - ASSERT(rb->DataType == GL_UNSIGNED_INT || - rb->DataType == GL_UNSIGNED_INT_24_8_EXT); - return (GLuint *) rb->Data + y * rb->RowStride + x; -} - - static void get_row_uint(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, GLint x, GLint y, void *values) @@ -605,18 +578,6 @@ put_mono_values_ubyte3(struct gl_context *ctx, struct gl_renderbuffer *rb, * Typically color buffers. */ -static void * -get_pointer_ubyte4(struct gl_context *ctx, struct gl_renderbuffer *rb, - GLint x, GLint y) -{ - if (!rb->Data) - return NULL; - ASSERT(rb->DataType == GL_UNSIGNED_BYTE); - ASSERT(rb->Format == MESA_FORMAT_RGBA8888); - return (GLubyte *) rb->Data + 4 * (y * rb->RowStride + x); -} - - static void get_row_ubyte4(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, GLint x, GLint y, void *values) @@ -765,17 +726,6 @@ put_mono_values_ubyte4(struct gl_context *ctx, struct gl_renderbuffer *rb, * Typically accum buffer. */ -static void * -get_pointer_ushort4(struct gl_context *ctx, struct gl_renderbuffer *rb, - GLint x, GLint y) -{ - if (!rb->Data) - return NULL; - ASSERT(rb->DataType == GL_UNSIGNED_SHORT || rb->DataType == GL_SHORT); - return (GLushort *) rb->Data + 4 * (y * rb->RowStride + x); -} - - static void get_row_ushort4(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, GLint x, GLint y, void *values) @@ -934,6 +884,8 @@ put_mono_values_ushort4(struct gl_context *ctx, struct gl_renderbuffer *rb, void _mesa_set_renderbuffer_accessors(struct gl_renderbuffer *rb) { + rb->GetPointer = get_pointer_generic; + switch (rb->Format) { case MESA_FORMAT_RGB888: rb->DataType = GL_UNSIGNED_BYTE; @@ -949,7 +901,6 @@ _mesa_set_renderbuffer_accessors(struct gl_renderbuffer *rb) case MESA_FORMAT_RGBA8888: rb->DataType = GL_UNSIGNED_BYTE; - rb->GetPointer = get_pointer_ubyte4; rb->GetRow = get_row_ubyte4; rb->GetValues = get_values_ubyte4; rb->PutRow = put_row_ubyte4; @@ -961,7 +912,6 @@ _mesa_set_renderbuffer_accessors(struct gl_renderbuffer *rb) case MESA_FORMAT_SIGNED_RGBA_16: rb->DataType = GL_SHORT; - rb->GetPointer = get_pointer_ushort4; rb->GetRow = get_row_ushort4; rb->GetValues = get_values_ushort4; rb->PutRow = put_row_ushort4; @@ -974,7 +924,6 @@ _mesa_set_renderbuffer_accessors(struct gl_renderbuffer *rb) #if 0 case MESA_FORMAT_A8: rb->DataType = GL_UNSIGNED_BYTE; - rb->GetPointer = get_pointer_alpha8; rb->GetRow = get_row_alpha8; rb->GetValues = get_values_alpha8; rb->PutRow = put_row_alpha8; @@ -987,7 +936,6 @@ _mesa_set_renderbuffer_accessors(struct gl_renderbuffer *rb) case MESA_FORMAT_S8: rb->DataType = GL_UNSIGNED_BYTE; - rb->GetPointer = get_pointer_ubyte; rb->GetRow = get_row_ubyte; rb->GetValues = get_values_ubyte; rb->PutRow = put_row_ubyte; @@ -999,7 +947,6 @@ _mesa_set_renderbuffer_accessors(struct gl_renderbuffer *rb) case MESA_FORMAT_Z16: rb->DataType = GL_UNSIGNED_SHORT; - rb->GetPointer = get_pointer_ushort; rb->GetRow = get_row_ushort; rb->GetValues = get_values_ushort; rb->PutRow = put_row_ushort; @@ -1013,7 +960,6 @@ _mesa_set_renderbuffer_accessors(struct gl_renderbuffer *rb) case MESA_FORMAT_X8_Z24: case MESA_FORMAT_Z24_X8: rb->DataType = GL_UNSIGNED_INT; - rb->GetPointer = get_pointer_uint; rb->GetRow = get_row_uint; rb->GetValues = get_values_uint; rb->PutRow = put_row_uint; @@ -1026,7 +972,6 @@ _mesa_set_renderbuffer_accessors(struct gl_renderbuffer *rb) case MESA_FORMAT_Z24_S8: case MESA_FORMAT_S8_Z24: rb->DataType = GL_UNSIGNED_INT_24_8_EXT; - rb->GetPointer = get_pointer_uint; rb->GetRow = get_row_uint; rb->GetValues = get_values_uint; rb->PutRow = put_row_uint; From a52803e1087749bfa571c29fc4c1a73fa9b7bf8e Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 15 Apr 2011 13:09:21 -0700 Subject: [PATCH 336/420] mesa: Use _mesa_get_format_bytes to refactor out the RB get_row_* Reviewed-by: Brian Paul --- src/mesa/main/renderbuffer.c | 72 ++++++------------------------------ 1 file changed, 11 insertions(+), 61 deletions(-) diff --git a/src/mesa/main/renderbuffer.c b/src/mesa/main/renderbuffer.c index b59ba129b4b..f524fa8368a 100644 --- a/src/mesa/main/renderbuffer.c +++ b/src/mesa/main/renderbuffer.c @@ -64,21 +64,21 @@ get_pointer_generic(struct gl_context *ctx, struct gl_renderbuffer *rb, (y * rb->RowStride + x) * _mesa_get_format_bytes(rb->Format)); } +/* GetRow() implementation for formats where DataType matches the rb->Format. + */ +static void +get_row_generic(struct gl_context *ctx, struct gl_renderbuffer *rb, + GLuint count, GLint x, GLint y, void *values) +{ + void *src = rb->GetPointer(ctx, rb, x, y); + memcpy(values, src, count * _mesa_get_format_bytes(rb->Format)); +} + /********************************************************************** * Functions for buffers of 1 X GLubyte values. * Typically stencil. */ -static void -get_row_ubyte(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, - GLint x, GLint y, void *values) -{ - const GLubyte *src = (const GLubyte *) rb->Data + y * rb->RowStride + x; - ASSERT(rb->DataType == GL_UNSIGNED_BYTE); - memcpy(values, src, count * sizeof(GLubyte)); -} - - static void get_values_ubyte(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, const GLint x[], const GLint y[], void *values) @@ -177,16 +177,6 @@ put_mono_values_ubyte(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint * Typically depth/Z. */ -static void -get_row_ushort(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, - GLint x, GLint y, void *values) -{ - const void *src = rb->GetPointer(ctx, rb, x, y); - ASSERT(rb->DataType == GL_UNSIGNED_SHORT); - memcpy(values, src, count * sizeof(GLushort)); -} - - static void get_values_ushort(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, const GLint x[], const GLint y[], void *values) @@ -294,17 +284,6 @@ put_mono_values_ushort(struct gl_context *ctx, struct gl_renderbuffer *rb, * Typically depth/Z or color index. */ -static void -get_row_uint(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, - GLint x, GLint y, void *values) -{ - const void *src = rb->GetPointer(ctx, rb, x, y); - ASSERT(rb->DataType == GL_UNSIGNED_INT || - rb->DataType == GL_UNSIGNED_INT_24_8_EXT); - memcpy(values, src, count * sizeof(GLuint)); -} - - static void get_values_uint(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, const GLint x[], const GLint y[], void *values) @@ -578,18 +557,6 @@ put_mono_values_ubyte3(struct gl_context *ctx, struct gl_renderbuffer *rb, * Typically color buffers. */ -static void -get_row_ubyte4(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, - GLint x, GLint y, void *values) -{ - const GLubyte *src = (const GLubyte *) (rb->Data + - 4 * (y * rb->RowStride + x)); - ASSERT(rb->DataType == GL_UNSIGNED_BYTE); - ASSERT(rb->Format == MESA_FORMAT_RGBA8888); - memcpy(values, src, 4 * count * sizeof(GLubyte)); -} - - static void get_values_ubyte4(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, const GLint x[], const GLint y[], void *values) @@ -726,17 +693,6 @@ put_mono_values_ubyte4(struct gl_context *ctx, struct gl_renderbuffer *rb, * Typically accum buffer. */ -static void -get_row_ushort4(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, - GLint x, GLint y, void *values) -{ - const GLshort *src = (const GLshort *) (rb->Data + - 4 * (y * rb->RowStride + x)); - ASSERT(rb->DataType == GL_UNSIGNED_SHORT || rb->DataType == GL_SHORT); - memcpy(values, src, 4 * count * sizeof(GLshort)); -} - - static void get_values_ushort4(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, const GLint x[], const GLint y[], void *values) @@ -885,6 +841,7 @@ void _mesa_set_renderbuffer_accessors(struct gl_renderbuffer *rb) { rb->GetPointer = get_pointer_generic; + rb->GetRow = get_row_generic; switch (rb->Format) { case MESA_FORMAT_RGB888: @@ -901,7 +858,6 @@ _mesa_set_renderbuffer_accessors(struct gl_renderbuffer *rb) case MESA_FORMAT_RGBA8888: rb->DataType = GL_UNSIGNED_BYTE; - rb->GetRow = get_row_ubyte4; rb->GetValues = get_values_ubyte4; rb->PutRow = put_row_ubyte4; rb->PutRowRGB = put_row_rgb_ubyte4; @@ -912,7 +868,6 @@ _mesa_set_renderbuffer_accessors(struct gl_renderbuffer *rb) case MESA_FORMAT_SIGNED_RGBA_16: rb->DataType = GL_SHORT; - rb->GetRow = get_row_ushort4; rb->GetValues = get_values_ushort4; rb->PutRow = put_row_ushort4; rb->PutRowRGB = put_row_rgb_ushort4; @@ -924,7 +879,6 @@ _mesa_set_renderbuffer_accessors(struct gl_renderbuffer *rb) #if 0 case MESA_FORMAT_A8: rb->DataType = GL_UNSIGNED_BYTE; - rb->GetRow = get_row_alpha8; rb->GetValues = get_values_alpha8; rb->PutRow = put_row_alpha8; rb->PutRowRGB = NULL; @@ -936,7 +890,6 @@ _mesa_set_renderbuffer_accessors(struct gl_renderbuffer *rb) case MESA_FORMAT_S8: rb->DataType = GL_UNSIGNED_BYTE; - rb->GetRow = get_row_ubyte; rb->GetValues = get_values_ubyte; rb->PutRow = put_row_ubyte; rb->PutRowRGB = NULL; @@ -947,7 +900,6 @@ _mesa_set_renderbuffer_accessors(struct gl_renderbuffer *rb) case MESA_FORMAT_Z16: rb->DataType = GL_UNSIGNED_SHORT; - rb->GetRow = get_row_ushort; rb->GetValues = get_values_ushort; rb->PutRow = put_row_ushort; rb->PutRowRGB = NULL; @@ -960,7 +912,6 @@ _mesa_set_renderbuffer_accessors(struct gl_renderbuffer *rb) case MESA_FORMAT_X8_Z24: case MESA_FORMAT_Z24_X8: rb->DataType = GL_UNSIGNED_INT; - rb->GetRow = get_row_uint; rb->GetValues = get_values_uint; rb->PutRow = put_row_uint; rb->PutRowRGB = NULL; @@ -972,7 +923,6 @@ _mesa_set_renderbuffer_accessors(struct gl_renderbuffer *rb) case MESA_FORMAT_Z24_S8: case MESA_FORMAT_S8_Z24: rb->DataType = GL_UNSIGNED_INT_24_8_EXT; - rb->GetRow = get_row_uint; rb->GetValues = get_values_uint; rb->PutRow = put_row_uint; rb->PutRowRGB = NULL; From f0471d904cf5c03ecf2528268a116e4f147cd3c1 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 15 Apr 2011 19:11:53 -0700 Subject: [PATCH 337/420] mesa: Add renderbuffer accessors for R8/RG88/R16/RG1616. This will replace the current (broken by trying to use an enum in the preprocessor) spantmp2.h support I wrote for the intel driver. Reviewed-by: Brian Paul --- src/mesa/main/renderbuffer.c | 310 +++++++++++++++++++++++++++++++++++ 1 file changed, 310 insertions(+) diff --git a/src/mesa/main/renderbuffer.c b/src/mesa/main/renderbuffer.c index f524fa8368a..a9a1237ac1c 100644 --- a/src/mesa/main/renderbuffer.c +++ b/src/mesa/main/renderbuffer.c @@ -53,6 +53,45 @@ * Routines for get/put values in common buffer formats follow. */ +/* Returns a bytes per pixel of the DataType in the get/put span + * functions for at least a subset of the available combinations a + * renderbuffer can have. + * + * It would be nice to see gl_renderbuffer start talking about a + * gl_format instead of a GLenum DataType. + */ +static int +get_datatype_bytes(struct gl_renderbuffer *rb) +{ + int component_size; + + switch (rb->DataType) { + case GL_FLOAT: + case GL_UNSIGNED_INT: + case GL_UNSIGNED_INT_24_8_EXT: + component_size = 4; + break; + case GL_UNSIGNED_SHORT: + component_size = 2; + break; + case GL_UNSIGNED_BYTE: + component_size = 1; + break; + default: + component_size = 1; + assert(0); + } + + switch (rb->_BaseFormat) { + case GL_DEPTH_COMPONENT: + case GL_DEPTH_STENCIL: + return component_size; + default: + return 4 * component_size; + } +} + +/* This is commonly used by most of the accessors. */ static void * get_pointer_generic(struct gl_context *ctx, struct gl_renderbuffer *rb, GLint x, GLint y) @@ -74,6 +113,105 @@ get_row_generic(struct gl_context *ctx, struct gl_renderbuffer *rb, memcpy(values, src, count * _mesa_get_format_bytes(rb->Format)); } +/* For the GL_RED/GL_RG/GL_RGB format/DataType combinations (and + * GL_LUMINANCE/GL_INTENSITY?), the Put functions are a matter of + * storing those initial components of the value per pixel into the + * destination. + */ +static void +put_row_generic(struct gl_context *ctx, struct gl_renderbuffer *rb, + GLuint count, GLint x, GLint y, + const void *values, const GLubyte *mask) +{ + void *row = rb->GetPointer(ctx, rb, x, y); + int format_bytes = _mesa_get_format_bytes(rb->Format) / sizeof(GLfloat); + int datatype_bytes = get_datatype_bytes(rb); + unsigned int i; + + if (mask) { + for (i = 0; i < count; i++) { + void *dst = row + i * format_bytes; + const void *src = values + i * datatype_bytes; + + if (mask[i]) { + memcpy(dst, src, format_bytes); + } + } + } + else { + for (i = 0; i < count; i++) { + void *dst = row + i * format_bytes; + const void *src = values + i * datatype_bytes; + memcpy(dst, src, format_bytes); + } + } +} + +static void +put_mono_row_generic(struct gl_context *ctx, struct gl_renderbuffer *rb, + GLuint count, GLint x, GLint y, + const void *value, const GLubyte *mask) +{ + void *row = rb->GetPointer(ctx, rb, x, y); + int format_bytes = _mesa_get_format_bytes(rb->Format) / sizeof(GLfloat); + unsigned int i; + + if (mask) { + for (i = 0; i < count; i++) { + void *dst = row + i * format_bytes; + if (mask[i]) { + memcpy(dst, value, format_bytes); + } + } + } + else { + for (i = 0; i < count; i++) { + void *dst = row + i * format_bytes; + memcpy(dst, value, format_bytes); + } + } +} + + +static void +put_values_generic(struct gl_context *ctx, struct gl_renderbuffer *rb, + GLuint count, const GLint x[], const GLint y[], + const void *values, const GLubyte *mask) +{ + int format_bytes = _mesa_get_format_bytes(rb->Format) / sizeof(GLfloat); + int datatype_bytes = get_datatype_bytes(rb); + unsigned int i; + + for (i = 0; i < count; i++) { + if (!mask || mask[i]) { + void *row = rb->GetPointer(ctx, rb, x[i], y[i]); + void *dst = row + i * format_bytes; + const void *src = values + i * datatype_bytes; + + memcpy(dst, src, format_bytes); + } + } +} + + +static void +put_mono_values_generic(struct gl_context *ctx, + struct gl_renderbuffer *rb, + GLuint count, const GLint x[], const GLint y[], + const void *value, const GLubyte *mask) +{ + int format_bytes = _mesa_get_format_bytes(rb->Format) / sizeof(GLfloat); + unsigned int i; + + for (i = 0; i < count; i++) { + if (!mask || mask[i]) { + void *row = rb->GetPointer(ctx, rb, x[i], y[i]); + void *dst = row + i * format_bytes; + memcpy(dst, value, format_bytes); + } + } +} + /********************************************************************** * Functions for buffers of 1 X GLubyte values. * Typically stencil. @@ -829,6 +967,134 @@ put_mono_values_ushort4(struct gl_context *ctx, struct gl_renderbuffer *rb, } } +/********************************************************************** + * Functions for MESA_FORMAT_R8. + */ +static void +get_row_r8(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, + GLint x, GLint y, void *values) +{ + const GLubyte *src = rb->GetPointer(ctx, rb, x, y); + GLuint *dst = values; + GLuint i; + + for (i = 0; i < count; i++) { + dst[i] = 0xff000000 | src[i]; + } +} + +static void +get_values_r8(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, + const GLint x[], const GLint y[], void *values) +{ + GLuint *dst = (GLuint *) values; + GLuint i; + + for (i = 0; i < count; i++) { + const GLubyte *src = rb->GetPointer(ctx, rb, x[i], y[i]); + dst[i] = 0xff000000 | *src; + } +} + +/********************************************************************** + * Functions for MESA_FORMAT_RG88. + */ +static void +get_row_rg88(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, + GLint x, GLint y, void *values) +{ + const GLushort *src = rb->GetPointer(ctx, rb, x, y); + GLuint *dst = values; + GLuint i; + + for (i = 0; i < count; i++) { + dst[i] = 0xff000000 | src[i]; + } +} + +static void +get_values_rg88(struct gl_context *ctx, struct gl_renderbuffer *rb, + GLuint count, const GLint x[], const GLint y[], void *values) +{ + GLuint *dst = (GLuint *) values; + GLuint i; + + for (i = 0; i < count; i++) { + const GLshort *src = rb->GetPointer(ctx, rb, x[i], y[i]); + dst[i] = 0xff000000 | *src; + } +} + +/********************************************************************** + * Functions for MESA_FORMAT_R16. + */ +static void +get_row_r16(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, + GLint x, GLint y, void *values) +{ + const GLushort *src = rb->GetPointer(ctx, rb, x, y); + GLushort *dst = values; + GLuint i; + + for (i = 0; i < count; i++) { + dst[i * 4 + RCOMP] = src[i]; + dst[i * 4 + GCOMP] = 0; + dst[i * 4 + BCOMP] = 0; + dst[i * 4 + ACOMP] = 0xffff; + } +} + +static void +get_values_r16(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, + const GLint x[], const GLint y[], void *values) +{ + GLushort *dst = values; + GLuint i; + + for (i = 0; i < count; i++) { + const GLushort *src = rb->GetPointer(ctx, rb, x[i], y[i]); + dst[i * 4 + RCOMP] = *src; + dst[i * 4 + GCOMP] = 0; + dst[i * 4 + BCOMP] = 0; + dst[i * 4 + ACOMP] = 0xffff; + } +} + +/********************************************************************** + * Functions for MESA_FORMAT_RG1616. + */ +static void +get_row_rg1616(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, + GLint x, GLint y, void *values) +{ + const GLushort *src = rb->GetPointer(ctx, rb, x, y); + GLushort *dst = values; + GLuint i; + + for (i = 0; i < count; i++) { + dst[i * 4 + RCOMP] = src[i * 2]; + dst[i * 4 + GCOMP] = src[i * 2 + 1]; + dst[i * 4 + BCOMP] = 0; + dst[i * 4 + ACOMP] = 0xffff; + } +} + +static void +get_values_rg1616(struct gl_context *ctx, struct gl_renderbuffer *rb, + GLuint count, const GLint x[], const GLint y[], void *values) +{ + GLushort *dst = values; + GLuint i; + + for (i = 0; i < count; i++) { + const GLshort *src = rb->GetPointer(ctx, rb, x[i], y[i]); + dst[i * 4 + RCOMP] = src[0]; + dst[i * 4 + GCOMP] = src[1]; + dst[i * 4 + BCOMP] = 0; + dst[i * 4 + ACOMP] = 0xffff; + } +} + /** * This is the default software fallback for gl_renderbuffer's span * access functions. @@ -866,6 +1132,50 @@ _mesa_set_renderbuffer_accessors(struct gl_renderbuffer *rb) rb->PutMonoValues = put_mono_values_ubyte4; break; + case MESA_FORMAT_R8: + rb->DataType = GL_UNSIGNED_BYTE; + rb->GetValues = get_values_r8; + rb->GetRow = get_row_r8; + rb->PutRow = put_row_generic; + rb->PutRowRGB = put_row_generic; + rb->PutMonoRow = put_mono_row_generic; + rb->PutValues = put_values_generic; + rb->PutMonoValues = put_mono_values_generic; + break; + + case MESA_FORMAT_RG88: + rb->DataType = GL_UNSIGNED_BYTE; + rb->GetValues = get_values_rg88; + rb->GetRow = get_row_rg88; + rb->PutRow = put_row_generic; + rb->PutRowRGB = put_row_generic; + rb->PutMonoRow = put_mono_row_generic; + rb->PutValues = put_values_generic; + rb->PutMonoValues = put_mono_values_generic; + break; + + case MESA_FORMAT_R16: + rb->DataType = GL_UNSIGNED_SHORT; + rb->GetValues = get_values_r16; + rb->GetRow = get_row_r16; + rb->PutRow = put_row_generic; + rb->PutRowRGB = put_row_generic; + rb->PutMonoRow = put_mono_row_generic; + rb->PutValues = put_values_generic; + rb->PutMonoValues = put_mono_values_generic; + break; + + case MESA_FORMAT_RG1616: + rb->DataType = GL_UNSIGNED_SHORT; + rb->GetValues = get_values_rg1616; + rb->GetRow = get_row_rg1616; + rb->PutRow = put_row_generic; + rb->PutRowRGB = put_row_generic; + rb->PutMonoRow = put_mono_row_generic; + rb->PutValues = put_values_generic; + rb->PutMonoValues = put_mono_values_generic; + break; + case MESA_FORMAT_SIGNED_RGBA_16: rb->DataType = GL_SHORT; rb->GetValues = get_values_ushort4; From 2b624634dda23d3b94045fb07aea558df39b48ff Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 15 Apr 2011 19:55:38 -0700 Subject: [PATCH 338/420] swrast: Don't try to adjust_colors for <8bpc when handling R16, RG1616. The GL_RED and GL_RG were tricking this code into executing, but it's totally unprepared for a 16-bit channel and just rescaled the values down to 0. We don't have anything with <8bit channels alongside >8bit channels, so disabling it should be safe. Reviewed-by: Brian Paul --- src/mesa/swrast/s_readpix.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/mesa/swrast/s_readpix.c b/src/mesa/swrast/s_readpix.c index cca7ec00802..5604c2e937e 100644 --- a/src/mesa/swrast/s_readpix.c +++ b/src/mesa/swrast/s_readpix.c @@ -344,9 +344,9 @@ read_rgba_pixels( struct gl_context *ctx, _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.greenBits < 8 || - fb->Visual.blueBits < 8) { + 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); } From 73f07004811a2522b45179c74cd9a6d6d2e5c578 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 15 Apr 2011 19:58:21 -0700 Subject: [PATCH 339/420] intel: Use mesa core's R8, RG88, R16, RG1616 RB accessors. Fixes: ARB_texture_rg/fbo-alphatest-formats Reviewed-by: Brian Paul --- src/mesa/drivers/dri/intel/intel_span.c | 29 ++++--------------------- 1 file changed, 4 insertions(+), 25 deletions(-) diff --git a/src/mesa/drivers/dri/intel/intel_span.c b/src/mesa/drivers/dri/intel/intel_span.c index 37a561aacdf..6b840f31f3a 100644 --- a/src/mesa/drivers/dri/intel/intel_span.c +++ b/src/mesa/drivers/dri/intel/intel_span.c @@ -115,27 +115,6 @@ intel_set_span_functions(struct intel_context *intel, #define TAG2(x,y) intel_##x##y##_A8 #include "spantmp2.h" -#define SPANTMP_MESA_FMT MESA_FORMAT_R8 -#define TAG(x) intel_##x##_R8 -#define TAG2(x,y) intel_##x##y##_R8 -#include "spantmp2.h" - -#define SPANTMP_MESA_FMT MESA_FORMAT_RG88 -#define TAG(x) intel_##x##_RG88 -#define TAG2(x,y) intel_##x##y##_RG88 -#include "spantmp2.h" - -#define SPANTMP_MESA_FMT MESA_FORMAT_R16 -#define TAG(x) intel_##x##_R16 -#define TAG2(x,y) intel_##x##y##_R16 -#include "spantmp2.h" - -#define SPANTMP_MESA_FMT MESA_FORMAT_RG1616 -#define TAG(x) intel_##x##_RG1616 -#define TAG2(x,y) intel_##x##y##_RG1616 -#include "spantmp2.h" - - void intel_renderbuffer_map(struct intel_context *intel, struct gl_renderbuffer *rb) { @@ -356,10 +335,10 @@ static span_init_func intel_span_init_funcs[MESA_FORMAT_COUNT] = [MESA_FORMAT_Z16] = _mesa_set_renderbuffer_accessors, [MESA_FORMAT_X8_Z24] = _mesa_set_renderbuffer_accessors, [MESA_FORMAT_S8_Z24] = _mesa_set_renderbuffer_accessors, - [MESA_FORMAT_R8] = intel_InitPointers_R8, - [MESA_FORMAT_RG88] = intel_InitPointers_RG88, - [MESA_FORMAT_R16] = intel_InitPointers_R16, - [MESA_FORMAT_RG1616] = intel_InitPointers_RG1616, + [MESA_FORMAT_R8] = _mesa_set_renderbuffer_accessors, + [MESA_FORMAT_RG88] = _mesa_set_renderbuffer_accessors, + [MESA_FORMAT_R16] = _mesa_set_renderbuffer_accessors, + [MESA_FORMAT_RG1616] = _mesa_set_renderbuffer_accessors, }; bool From bc57df03568e9e1f05b9d29df8e3a7fe58d5a196 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 15 Apr 2011 20:00:38 -0700 Subject: [PATCH 340/420] Revert "intel: Add spans code for the ARB_texture_rg support." This reverts what remains of commit 28bab24e1698843e27d27204a1117066e7ffeabb. It was garbage, trying to use a MESA_FORMAT enum as a preprocessor token, and I don't know how I thought it was even tested. Reviewed-by: Brian Paul --- src/mesa/drivers/dri/common/spantmp2.h | 122 ------------------------- 1 file changed, 122 deletions(-) diff --git a/src/mesa/drivers/dri/common/spantmp2.h b/src/mesa/drivers/dri/common/spantmp2.h index f436d1398c2..abd79562f98 100644 --- a/src/mesa/drivers/dri/common/spantmp2.h +++ b/src/mesa/drivers/dri/common/spantmp2.h @@ -48,15 +48,6 @@ #define HW_WRITE_CLIPLOOP() HW_CLIPLOOP() #endif -#ifdef SPANTMP_MESA_FMT -#define SPANTMP_PIXEL_FMT GL_NONE -#define SPANTMP_PIXEL_TYPE GL_NONE -#endif - -#ifndef SPANTMP_MESA_FMT -#define SPANTMP_MESA_FMT MESA_FORMAT_COUNT -#endif - #if (SPANTMP_PIXEL_FMT == GL_RGB) && (SPANTMP_PIXEL_TYPE == GL_UNSIGNED_SHORT_5_6_5) /** @@ -454,118 +445,6 @@ rgba[3] = p; \ } while (0) -#elif (SPANTMP_MESA_FMT == MESA_FORMAT_R8) - -#ifndef GET_VALUE -#ifndef GET_PTR -#define GET_PTR(_x, _y) ( buf + (_x) + (_y) * pitch) -#endif - -#define GET_VALUE(_x, _y) *(volatile GLubyte *)(GET_PTR(_x, _y)) -#define PUT_VALUE(_x, _y, _v) *(volatile GLubyte *)(GET_PTR(_x, _y)) = (_v) -#endif /* GET_VALUE */ - -# define INIT_MONO_PIXEL(p, color) \ - p = color[0] - -# define WRITE_RGBA(_x, _y, r, g, b, a) \ - PUT_VALUE(_x, _y, r) - -#define WRITE_PIXEL(_x, _y, p) PUT_VALUE(_x, _y, p) - -#define READ_RGBA( rgba, _x, _y ) \ - do { \ - GLubyte p = GET_VALUE(_x, _y); \ - rgba[0] = p; \ - rgba[1] = 0; \ - rgba[2] = 0; \ - rgba[3] = 0; \ - } while (0) - -#elif (SPANTMP_MESA_FMT == MESA_FORMAT_RG88) - -#ifndef GET_VALUE -#ifndef GET_PTR -#define GET_PTR(_x, _y) ( buf + (_x) * 2 + (_y) * pitch) -#endif - -#define GET_VALUE(_x, _y) *(volatile GLushort *)(GET_PTR(_x, _y)) -#define PUT_VALUE(_x, _y, _v) *(volatile GLushort *)(GET_PTR(_x, _y)) = (_v) -#endif /* GET_VALUE */ - -# define INIT_MONO_PIXEL(p, color) \ - PACK_COLOR_8888(color[0], color[1], 0, 0) - -# define WRITE_RGBA(_x, _y, r, g, b, a) \ - PUT_VALUE(_x, _y, r) - -#define WRITE_PIXEL(_x, _y, p) PUT_VALUE(_x, _y, p) - -#define READ_RGBA( rgba, _x, _y ) \ - do { \ - GLushort p = GET_VALUE(_x, _y); \ - rgba[0] = p & 0xff; \ - rgba[1] = (p >> 8) & 0xff; \ - rgba[2] = 0; \ - rgba[3] = 0; \ - } while (0) - -#elif (SPANTMP_MESA_FMT == MESA_FORMAT_R16) - -#ifndef GET_VALUE -#ifndef GET_PTR -#define GET_PTR(_x, _y) ( buf + (_x) * 2 + (_y) * pitch) -#endif - -#define GET_VALUE(_x, _y) *(volatile GLushort *)(GET_PTR(_x, _y)) -#define PUT_VALUE(_x, _y, _v) *(volatile GLushort *)(GET_PTR(_x, _y)) = (_v) -#endif /* GET_VALUE */ - -# define INIT_MONO_PIXEL(p, color) \ - p = color[0] - -# define WRITE_RGBA(_x, _y, r, g, b, a) \ - PUT_VALUE(_x, _y, r) - -#define WRITE_PIXEL(_x, _y, p) PUT_VALUE(_x, _y, p) - -#define READ_RGBA( rgba, _x, _y ) \ - do { \ - GLushort p = GET_VALUE(_x, _y); \ - rgba[0] = p; \ - rgba[1] = 0; \ - rgba[2] = 0; \ - rgba[3] = 0; \ - } while (0) - -#elif (SPANTMP_MESA_FMT == MESA_FORMAT_RG1616) - -#ifndef GET_VALUE -#ifndef GET_PTR -#define GET_PTR(_x, _y) ( buf + (_x) * 4 + (_y) * pitch) -#endif - -#define GET_VALUE(_x, _y) *(volatile GLuint *)(GET_PTR(_x, _y)) -#define PUT_VALUE(_x, _y, _v) *(volatile GLuint *)(GET_PTR(_x, _y)) = (_v) -#endif /* GET_VALUE */ - -# define INIT_MONO_PIXEL(p, color) \ - ((color[1] << 16) | (color[0])) - -# define WRITE_RGBA(_x, _y, r, g, b, a) \ - PUT_VALUE(_x, _y, r) - -#define WRITE_PIXEL(_x, _y, p) PUT_VALUE(_x, _y, p) - -#define READ_RGBA( rgba, _x, _y ) \ - do { \ - GLuint p = GET_VALUE(_x, _y); \ - rgba[0] = p & 0xffff; \ - rgba[1] = (p >> 16) & 0xffff; \ - rgba[2] = 0; \ - rgba[3] = 0; \ - } while (0) - #else #error SPANTMP_PIXEL_FMT must be set to a valid value! #endif @@ -1035,4 +914,3 @@ static void TAG(InitPointers)(struct gl_renderbuffer *rb) #undef GET_PTR #undef SPANTMP_PIXEL_FMT #undef SPANTMP_PIXEL_TYPE -#undef SPANTMP_MESA_FMT From dad95c112f09b9978d71ababe80c4e34121d49f0 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Sun, 17 Apr 2011 10:44:46 -0700 Subject: [PATCH 341/420] intel: Add I8 and L8 to intel_mesa_format_to_rb_datatype(). Fixes warnings in fbo-storage-formats. Reviewed-by: Brian Paul --- src/mesa/drivers/dri/intel/intel_tex_format.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/mesa/drivers/dri/intel/intel_tex_format.c b/src/mesa/drivers/dri/intel/intel_tex_format.c index 87745bc66d4..9a6c24bf0d8 100644 --- a/src/mesa/drivers/dri/intel/intel_tex_format.c +++ b/src/mesa/drivers/dri/intel/intel_tex_format.c @@ -16,6 +16,8 @@ intel_mesa_format_to_rb_datatype(gl_format format) case MESA_FORMAT_R8: case MESA_FORMAT_RG88: case MESA_FORMAT_A8: + case MESA_FORMAT_I8: + case MESA_FORMAT_L8: case MESA_FORMAT_AL88: case MESA_FORMAT_RGB565: case MESA_FORMAT_ARGB1555: From 1249e54f8bfbf502f41179972644cd15d91c31dc Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Mon, 18 Apr 2011 08:19:42 -0600 Subject: [PATCH 342/420] nvfx: comment-out unused var --- src/gallium/drivers/nvfx/nvfx_context.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gallium/drivers/nvfx/nvfx_context.c b/src/gallium/drivers/nvfx/nvfx_context.c index 2bcb93d93e3..2b1510264a1 100644 --- a/src/gallium/drivers/nvfx/nvfx_context.c +++ b/src/gallium/drivers/nvfx/nvfx_context.c @@ -13,7 +13,7 @@ nvfx_flush(struct pipe_context *pipe, struct nvfx_context *nvfx = nvfx_context(pipe); struct nvfx_screen *screen = nvfx->screen; struct nouveau_channel *chan = screen->base.channel; - struct nouveau_grobj *eng3d = screen->eng3d; + /*struct nouveau_grobj *eng3d = screen->eng3d;*/ /* XXX: we need to actually be intelligent here */ /* XXX This flag wasn't set by the state tracker anyway. */ From 9418d05914bdd961cdeaf34bf09dea2a7259c05e Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Mon, 18 Apr 2011 12:43:42 -0600 Subject: [PATCH 343/420] mesa: fix wrong parameter type in set_sampler_max_lod() --- src/mesa/main/samplerobj.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mesa/main/samplerobj.c b/src/mesa/main/samplerobj.c index 2d3879c06ed..4a28c917cd7 100644 --- a/src/mesa/main/samplerobj.c +++ b/src/mesa/main/samplerobj.c @@ -481,7 +481,7 @@ set_sampler_min_lod(struct gl_context *ctx, struct gl_sampler_object *samp, static GLuint set_sampler_max_lod(struct gl_context *ctx, struct gl_sampler_object *samp, - GLint param) + GLfloat param) { if (samp->MaxLod == param) return GL_FALSE; From 7ca38f5d973cf93bf19e27f3f24c0896e43b16e6 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Mon, 18 Apr 2011 12:59:28 -0600 Subject: [PATCH 344/420] mesa: fix void pointer arithmetic warnings And fix a couple logic errors in the put_*_generic() functions. --- src/mesa/main/renderbuffer.c | 39 +++++++++++++++++------------------- 1 file changed, 18 insertions(+), 21 deletions(-) diff --git a/src/mesa/main/renderbuffer.c b/src/mesa/main/renderbuffer.c index a9a1237ac1c..4a4a9175402 100644 --- a/src/mesa/main/renderbuffer.c +++ b/src/mesa/main/renderbuffer.c @@ -99,7 +99,7 @@ get_pointer_generic(struct gl_context *ctx, struct gl_renderbuffer *rb, if (!rb->Data) return NULL; - return (rb->Data + + return ((char *) rb->Data + (y * rb->RowStride + x) * _mesa_get_format_bytes(rb->Format)); } @@ -130,8 +130,8 @@ put_row_generic(struct gl_context *ctx, struct gl_renderbuffer *rb, if (mask) { for (i = 0; i < count; i++) { - void *dst = row + i * format_bytes; - const void *src = values + i * datatype_bytes; + char *dst = (char *) row + i * format_bytes; + const char *src = (const char *) values + i * datatype_bytes; if (mask[i]) { memcpy(dst, src, format_bytes); @@ -140,8 +140,8 @@ put_row_generic(struct gl_context *ctx, struct gl_renderbuffer *rb, } else { for (i = 0; i < count; i++) { - void *dst = row + i * format_bytes; - const void *src = values + i * datatype_bytes; + char *dst = (char *) row + i * format_bytes; + const char *src = (const char *) values + i * datatype_bytes; memcpy(dst, src, format_bytes); } } @@ -158,7 +158,7 @@ put_mono_row_generic(struct gl_context *ctx, struct gl_renderbuffer *rb, if (mask) { for (i = 0; i < count; i++) { - void *dst = row + i * format_bytes; + char *dst = (char *) row + i * format_bytes; if (mask[i]) { memcpy(dst, value, format_bytes); } @@ -166,7 +166,7 @@ put_mono_row_generic(struct gl_context *ctx, struct gl_renderbuffer *rb, } else { for (i = 0; i < count; i++) { - void *dst = row + i * format_bytes; + char *dst = (char *) row + i * format_bytes; memcpy(dst, value, format_bytes); } } @@ -184,10 +184,8 @@ put_values_generic(struct gl_context *ctx, struct gl_renderbuffer *rb, for (i = 0; i < count; i++) { if (!mask || mask[i]) { - void *row = rb->GetPointer(ctx, rb, x[i], y[i]); - void *dst = row + i * format_bytes; - const void *src = values + i * datatype_bytes; - + void *dst = rb->GetPointer(ctx, rb, x[i], y[i]); + const char *src = (const char *) values + i * datatype_bytes; memcpy(dst, src, format_bytes); } } @@ -205,8 +203,7 @@ put_mono_values_generic(struct gl_context *ctx, for (i = 0; i < count; i++) { if (!mask || mask[i]) { - void *row = rb->GetPointer(ctx, rb, x[i], y[i]); - void *dst = row + i * format_bytes; + void *dst = rb->GetPointer(ctx, rb, x[i], y[i]); memcpy(dst, value, format_bytes); } } @@ -543,8 +540,8 @@ static void get_row_ubyte3(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, GLint x, GLint y, void *values) { - const GLubyte *src = (const GLubyte *) (rb->Data + - 3 * (y * rb->RowStride + x)); + const GLubyte *src = ((const GLubyte *) rb->Data) + + 3 * (y * rb->RowStride + x); GLubyte *dst = (GLubyte *) values; GLuint i; ASSERT(rb->Format == MESA_FORMAT_RGB888); @@ -680,8 +677,8 @@ put_mono_values_ubyte3(struct gl_context *ctx, struct gl_renderbuffer *rb, ASSERT(rb->DataType == GL_UNSIGNED_BYTE); for (i = 0; i < count; i++) { if (!mask || mask[i]) { - GLubyte *dst = (GLubyte *) (rb->Data + - 3 * (y[i] * rb->RowStride + x[i])); + GLubyte *dst = ((GLubyte *) rb->Data) + + 3 * (y[i] * rb->RowStride + x[i]); dst[0] = val0; dst[1] = val1; dst[2] = val2; @@ -933,8 +930,8 @@ put_values_ushort4(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint co ASSERT(rb->DataType == GL_UNSIGNED_SHORT || rb->DataType == GL_SHORT); for (i = 0; i < count; i++) { if (!mask || mask[i]) { - GLushort *dst = (GLushort *) (rb->Data + 4 * - (y[i] * rb->RowStride + x[i])); + GLushort *dst = + ((GLushort *) rb->Data) + 4 * (y[i] * rb->RowStride + x[i]); dst[0] = src[i * 4 + 0]; dst[1] = src[i * 4 + 1]; dst[2] = src[i * 4 + 2]; @@ -957,8 +954,8 @@ put_mono_values_ushort4(struct gl_context *ctx, struct gl_renderbuffer *rb, ASSERT(rb->DataType == GL_UNSIGNED_SHORT || rb->DataType == GL_SHORT); for (i = 0; i < count; i++) { if (!mask || mask[i]) { - GLushort *dst = (GLushort *) (rb->Data + - 4 * (y[i] * rb->RowStride + x[i])); + GLushort *dst = ((GLushort *) rb->Data) + + 4 * (y[i] * rb->RowStride + x[i]); dst[0] = val0; dst[1] = val1; dst[2] = val2; From 3d5cfcfed16c5a79bdf67027afe4ea8058b899cb Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Mon, 11 Apr 2011 10:10:30 -0700 Subject: [PATCH 345/420] glsl: Emit a warning when the left-hand operand of a comma has no effect The expression x = y, 5, 3; will generate 0:7(9): warning: left-hand operand of comma expression has no effect The warning is only emitted for the left-hand operands, becuase the right-most operand is the result of the expression. This could be used in an assignment, etc. Reviewed-by: Eric Anholt Reviewed-by: Kenneth Graunke --- src/glsl/ast_to_hir.cpp | 36 +++++++++++++++++++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) diff --git a/src/glsl/ast_to_hir.cpp b/src/glsl/ast_to_hir.cpp index a11bfbab887..18e66db2e2a 100644 --- a/src/glsl/ast_to_hir.cpp +++ b/src/glsl/ast_to_hir.cpp @@ -1664,8 +1664,42 @@ ast_expression::hir(exec_list *instructions, * therefore add instructions to the instruction list), they get dropped * on the floor. */ - foreach_list_typed (ast_node, ast, link, &this->expressions) + exec_node *previous_tail_pred = NULL; + YYLTYPE previous_operand_loc = loc; + + foreach_list_typed (ast_node, ast, link, &this->expressions) { + /* If one of the operands of comma operator does not generate any + * code, we want to emit a warning. At each pass through the loop + * previous_tail_pred will point to the last instruction in the + * stream *before* processing the previous operand. Naturally, + * instructions->tail_pred will point to the last instruction in the + * stream *after* processing the previous operand. If the two + * pointers match, then the previous operand had no effect. + * + * The warning behavior here differs slightly from GCC. GCC will + * only emit a warning if none of the left-hand operands have an + * effect. However, it will emit a warning for each. I believe that + * there are some cases in C (especially with GCC extensions) where + * it is useful to have an intermediate step in a sequence have no + * effect, but I don't think these cases exist in GLSL. Either way, + * it would be a giant hassle to replicate that behavior. + */ + if (previous_tail_pred == instructions->tail_pred) { + _mesa_glsl_warning(&previous_operand_loc, state, + "left-hand operand of comma expression has " + "no effect"); + } + + /* tail_pred is directly accessed instead of using the get_tail() + * method for performance reasons. get_tail() has extra code to + * return NULL when the list is empty. We don't care about that + * here, so using tail_pred directly is fine. + */ + previous_tail_pred = instructions->tail_pred; + previous_operand_loc = ast->get_location(); + result = ast->hir(instructions, state); + } type = result->type; From 42a805700039e81a9245f46f153e2cd9705cd0d7 Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Tue, 12 Apr 2011 15:42:06 -0700 Subject: [PATCH 346/420] i965: Allocate the whole URB to the VS and fix calculations for Gen6. Since we never enable the GS on Sandybridge, there's no need to allocate it any URB space. Furthermore, the previous calculation was incorrect: it neglected to multiply by nr_vs_entries, instead comparing whether twice the size of a single VS URB entry was bigger than the entire URB space. It also neglected to take into account that vs_size is in units of 128 byte blocks, while urb_size is in bytes. Despite the above problems, the calculations resulted in an acceptable programming of the URB in most cases, at least on GT2. Signed-off-by: Kenneth Graunke Reviewed-by: Eric Anholt --- src/mesa/drivers/dri/i965/brw_context.c | 5 +++- src/mesa/drivers/dri/i965/brw_context.h | 5 +++- src/mesa/drivers/dri/i965/gen6_urb.c | 34 ++++++++++++------------- 3 files changed, 25 insertions(+), 19 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_context.c b/src/mesa/drivers/dri/i965/brw_context.c index a74ba5c90b8..230d326fa12 100644 --- a/src/mesa/drivers/dri/i965/brw_context.c +++ b/src/mesa/drivers/dri/i965/brw_context.c @@ -182,7 +182,6 @@ GLboolean brwCreateContext( int api, /* WM maximum threads is number of EUs times number of threads per EU. */ if (intel->gen >= 6) { - brw->urb.size = 1024; if (IS_GT2(intel->intelScreen->deviceID)) { /* This could possibly be 80, but is supposed to require * disabling of WIZ hashing (bit 6 of GT_MODE, 0x20d0) and a @@ -190,9 +189,13 @@ GLboolean brwCreateContext( int api, */ brw->wm_max_threads = 40; brw->vs_max_threads = 60; + brw->urb.size = 64; /* volume 5c.5 section 5.1 */ + brw->urb.max_vs_handles = 128; /* volume 2a (see 3DSTATE_URB) */ } else { brw->wm_max_threads = 40; brw->vs_max_threads = 24; + brw->urb.size = 32; /* volume 5c.5 section 5.1 */ + brw->urb.max_vs_handles = 256; /* volume 2a (see 3DSTATE_URB) */ } } else if (intel->gen == 5) { brw->urb.size = 1024; diff --git a/src/mesa/drivers/dri/i965/brw_context.h b/src/mesa/drivers/dri/i965/brw_context.h index 4b4dfbafb1a..1daa49abfb3 100644 --- a/src/mesa/drivers/dri/i965/brw_context.h +++ b/src/mesa/drivers/dri/i965/brw_context.h @@ -568,6 +568,9 @@ struct brw_context GLboolean constrained; + GLuint max_vs_handles; /* Maximum number of VS handles */ + GLuint max_gs_handles; /* Maximum number of GS handles */ + GLuint nr_vs_entries; GLuint nr_gs_entries; GLuint nr_clip_entries; @@ -579,7 +582,7 @@ struct brw_context * a number of 1024-bit (128-byte) rows. Should be >= 1. */ GLuint vs_size; -/* GLuint gs_size; */ + GLuint gs_size; GLuint vs_start; GLuint gs_start; diff --git a/src/mesa/drivers/dri/i965/gen6_urb.c b/src/mesa/drivers/dri/i965/gen6_urb.c index c3819f9b360..909e1bbe9ba 100644 --- a/src/mesa/drivers/dri/i965/gen6_urb.c +++ b/src/mesa/drivers/dri/i965/gen6_urb.c @@ -34,26 +34,25 @@ static void prepare_urb( struct brw_context *brw ) { - int urb_size, max_urb_entry; - struct intel_context *intel = &brw->intel; - - if (IS_GT1(intel->intelScreen->deviceID)) { - urb_size = 32 * 1024; - max_urb_entry = 128; - } else { - urb_size = 64 * 1024; - max_urb_entry = 256; - } - - brw->urb.nr_vs_entries = max_urb_entry; - brw->urb.nr_gs_entries = max_urb_entry; + int nr_vs_entries; /* CACHE_NEW_VS_PROG */ brw->urb.vs_size = MAX2(brw->vs.prog_data->urb_entry_size, 1); - if (2 * brw->urb.vs_size > urb_size) - brw->urb.nr_vs_entries = brw->urb.nr_gs_entries = - (urb_size ) / (2 * brw->urb.vs_size); + /* Calculate how many VS URB entries fit in the total URB size */ + nr_vs_entries = (brw->urb.size * 1024) / (brw->urb.vs_size * 128); + + if (nr_vs_entries > brw->urb.max_vs_handles) + nr_vs_entries = brw->urb.max_vs_handles; + + /* According to volume 2a, nr_vs_entries must be a multiple of 4. */ + brw->urb.nr_vs_entries = ROUND_DOWN_TO(nr_vs_entries, 4); + + /* Since we currently don't support Geometry Shaders, we always put the + * GS unit in passthrough mode and don't allocate it any URB space. + */ + brw->urb.nr_gs_entries = 0; + brw->urb.gs_size = 1; /* Incorrect, but with 0 GS entries it doesn't matter. */ } static void @@ -61,6 +60,7 @@ upload_urb(struct brw_context *brw) { struct intel_context *intel = &brw->intel; + assert(brw->urb.nr_vs_entries >= 24); assert(brw->urb.nr_vs_entries % 4 == 0); assert(brw->urb.nr_gs_entries % 4 == 0); /* GS requirement */ @@ -70,7 +70,7 @@ upload_urb(struct brw_context *brw) OUT_BATCH(_3DSTATE_URB << 16 | (3 - 2)); OUT_BATCH(((brw->urb.vs_size - 1) << GEN6_URB_VS_SIZE_SHIFT) | ((brw->urb.nr_vs_entries) << GEN6_URB_VS_ENTRIES_SHIFT)); - OUT_BATCH(((brw->urb.vs_size - 1) << GEN6_URB_GS_SIZE_SHIFT) | + OUT_BATCH(((brw->urb.gs_size - 1) << GEN6_URB_GS_SIZE_SHIFT) | ((brw->urb.nr_gs_entries) << GEN6_URB_GS_ENTRIES_SHIFT)); ADVANCE_BATCH(); } From ff5dd55e264d8f0282aa3ae3dc4f6ab26d98731d Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Thu, 14 Apr 2011 14:37:46 -0700 Subject: [PATCH 347/420] i965: Convert 3DPRIMITIVE command from struct-style to OUT_BATCH style. Most of the newer portions of the code use OUT_BATCH style. I prefer this style because it offers a clear distinction between a) hardware messages/structures with a mandatory format, and b) data structures for our own internal use that we can format however we want. Signed-off-by: Kenneth Graunke Reviewed-by: Eric Anholt --- src/mesa/drivers/dri/i965/brw_defines.h | 11 +++--- src/mesa/drivers/dri/i965/brw_draw.c | 51 +++++++++++++++---------- src/mesa/drivers/dri/i965/brw_structs.h | 19 --------- 3 files changed, 36 insertions(+), 45 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_defines.h b/src/mesa/drivers/dri/i965/brw_defines.h index 3078504fb8b..effcb6c1c4a 100644 --- a/src/mesa/drivers/dri/i965/brw_defines.h +++ b/src/mesa/drivers/dri/i965/brw_defines.h @@ -43,6 +43,12 @@ #define PIPE_CONTROL_GTTWRITE_PROCESS_LOCAL 0x00 #define PIPE_CONTROL_GTTWRITE_GLOBAL 0x01 +#define CMD_3D_PRIM 0x7b00 /* 3DPRIMITIVE */ +/* DW0 */ +# define GEN4_3DPRIM_TOPOLOGY_TYPE_SHIFT 10 +# define GEN4_3DPRIM_VERTEXBUFFER_ACCESS_SEQUENTIAL (0 << 15) +# define GEN4_3DPRIM_VERTEXBUFFER_ACCESS_RANDOM (1 << 15) + #define _3DPRIM_POINTLIST 0x01 #define _3DPRIM_LINELIST 0x02 #define _3DPRIM_LINESTRIP 0x03 @@ -65,9 +71,6 @@ #define _3DPRIM_LINESTRIP_CONT_BF 0x14 #define _3DPRIM_TRIFAN_NOSTIPPLE 0x15 -#define _3DPRIM_VERTEXBUFFER_ACCESS_SEQUENTIAL 0 -#define _3DPRIM_VERTEXBUFFER_ACCESS_RANDOM 1 - #define BRW_ANISORATIO_2 0 #define BRW_ANISORATIO_4 1 #define BRW_ANISORATIO_6 2 @@ -1132,8 +1135,6 @@ #define CMD_PIPE_CONTROL 0x7a00 -#define CMD_3D_PRIM 0x7b00 - #define CMD_MI_FLUSH 0x0200 diff --git a/src/mesa/drivers/dri/i965/brw_draw.c b/src/mesa/drivers/dri/i965/brw_draw.c index 63ae28f8575..2db70c543ea 100644 --- a/src/mesa/drivers/dri/i965/brw_draw.c +++ b/src/mesa/drivers/dri/i965/brw_draw.c @@ -129,30 +129,31 @@ static void brw_emit_prim(struct brw_context *brw, const struct _mesa_prim *prim, uint32_t hw_prim) { - struct brw_3d_primitive prim_packet; struct intel_context *intel = &brw->intel; + int verts_per_instance; + int vertex_access_type; + int start_vertex_location; + int base_vertex_location; DBG("PRIM: %s %d %d\n", _mesa_lookup_enum_by_nr(prim->mode), prim->start, prim->count); - prim_packet.header.opcode = CMD_3D_PRIM; - prim_packet.header.length = sizeof(prim_packet)/4 - 2; - prim_packet.header.pad = 0; - prim_packet.header.topology = hw_prim; - prim_packet.header.indexed = prim->indexed; + start_vertex_location = prim->start; + base_vertex_location = prim->basevertex; + if (prim->indexed) { + vertex_access_type = GEN4_3DPRIM_VERTEXBUFFER_ACCESS_RANDOM; + start_vertex_location += brw->ib.start_vertex_offset; + base_vertex_location += brw->vb.start_vertex_bias; + } else { + vertex_access_type = GEN4_3DPRIM_VERTEXBUFFER_ACCESS_SEQUENTIAL; + start_vertex_location += brw->vb.start_vertex_bias; + } - prim_packet.verts_per_instance = trim(prim->mode, prim->count); - prim_packet.start_vert_location = prim->start; - if (prim->indexed) - prim_packet.start_vert_location += brw->ib.start_vertex_offset; - else - prim_packet.start_vert_location += brw->vb.start_vertex_bias; - prim_packet.instance_count = 1; - prim_packet.start_instance_location = 0; - prim_packet.base_vert_location = prim->basevertex; - if (prim->indexed) - prim_packet.base_vert_location += brw->vb.start_vertex_bias; + verts_per_instance = trim(prim->mode, prim->count); + /* If nothing to emit, just return. */ + if (verts_per_instance == 0) + return; /* If we're set to always flush, do it before and after the primitive emit. * We want to catch both missed flushes that hurt instruction/state cache @@ -162,10 +163,18 @@ static void brw_emit_prim(struct brw_context *brw, if (intel->always_flush_cache) { intel_batchbuffer_emit_mi_flush(intel); } - if (prim_packet.verts_per_instance) { - intel_batchbuffer_data(&brw->intel, &prim_packet, - sizeof(prim_packet), false); - } + + BEGIN_BATCH(6); + OUT_BATCH(CMD_3D_PRIM << 16 | (6 - 2) | + hw_prim << GEN4_3DPRIM_TOPOLOGY_TYPE_SHIFT | + vertex_access_type); + OUT_BATCH(verts_per_instance); + OUT_BATCH(start_vertex_location); + OUT_BATCH(1); // instance count + OUT_BATCH(0); // start instance location + OUT_BATCH(base_vertex_location); + ADVANCE_BATCH(); + if (intel->always_flush_cache) { intel_batchbuffer_emit_mi_flush(intel); } diff --git a/src/mesa/drivers/dri/i965/brw_structs.h b/src/mesa/drivers/dri/i965/brw_structs.h index 6687a89e80a..89b1ee49a49 100644 --- a/src/mesa/drivers/dri/i965/brw_structs.h +++ b/src/mesa/drivers/dri/i965/brw_structs.h @@ -80,25 +80,6 @@ struct brw_3d_control GLuint dword3; }; - -struct brw_3d_primitive -{ - struct - { - GLuint length:8; - GLuint pad:2; - GLuint topology:5; - GLuint indexed:1; - GLuint opcode:16; - } header; - - GLuint verts_per_instance; - GLuint start_vert_location; - GLuint instance_count; - GLuint start_instance_location; - GLuint base_vert_location; -}; - /* These seem to be passed around as function args, so it works out * better to keep them as #defines: */ From edf2e4f79d5b27cb909b37fabc35e68d14af0834 Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Mon, 18 Apr 2011 17:06:08 -0700 Subject: [PATCH 348/420] glsl: 80-column wrapping and whitespace fixes --- src/glsl/ast_function.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/glsl/ast_function.cpp b/src/glsl/ast_function.cpp index e5cb8733952..67147b6718f 100644 --- a/src/glsl/ast_function.cpp +++ b/src/glsl/ast_function.cpp @@ -107,7 +107,11 @@ match_function_by_name(exec_list *instructions, const char *name, * FINISHME: matching signature but shader X + N contains an _exact_ * FINISHME: matching signature. */ - if (sig == NULL && (f == NULL || state->es_shader || !f->has_user_signature()) && state->symbols->get_type(name) == NULL && (state->language_version == 110 || state->symbols->get_variable(name) == NULL)) { + if (sig == NULL + && (f == NULL || state->es_shader || !f->has_user_signature()) + && state->symbols->get_type(name) == NULL + && (state->language_version == 110 + || state->symbols->get_variable(name) == NULL)) { /* The current shader doesn't contain a matching function or signature. * Before giving up, look for the prototype in the built-in functions. */ From c058067e578e4426f56f9b23e33e3d3fac4562f7 Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Sun, 17 Apr 2011 17:35:44 +1000 Subject: [PATCH 349/420] r600g: track dirty registers better. (v2) This is a first step to decreasing the CPU usage, by decreasing how much stuff we pass to the GPU and hence to the kernel CS checker. This adds a check to see if the values we need to write are actually dirty, and avoids writing if they are. However certain register need to always be written so we add a new flag to say which ones should be always written if used. (Note this could probably be done cleaner with a larger refactoring, since I think the CONST_BUFFER_SIZE_PS/VS and CONST_CACHE_PS/VS might be better off as a special state). It also moves the need_bo to be a flags on the register now. With this, a frame of gears goes from emitting 3k dwords to emitting 2k dwords, and I'm sure it could get a lot smaller. v2: fix some evergreen dirty bits. Original patch from: Bas Nieuwenhuizen, I NIHed nearly the same thing before seeing his patch on the list, oops. Reviewed-by: Bas Nieuwenhuizen Signed-off-by: Dave Airlie --- src/gallium/drivers/r600/r600.h | 1 + .../winsys/r600/drm/evergreen_hw_context.c | 136 ++++++++-------- src/gallium/winsys/r600/drm/r600_hw_context.c | 145 +++++++++++------- src/gallium/winsys/r600/drm/r600_priv.h | 10 +- 4 files changed, 171 insertions(+), 121 deletions(-) diff --git a/src/gallium/drivers/r600/r600.h b/src/gallium/drivers/r600/r600.h index 4256a7ea1e9..d6050002033 100644 --- a/src/gallium/drivers/r600/r600.h +++ b/src/gallium/drivers/r600/r600.h @@ -179,6 +179,7 @@ struct r600_block_reloc { struct r600_block { struct list_head list; unsigned status; + unsigned flags; unsigned start_offset; unsigned pm4_ndwords; unsigned pm4_flush_ndwords; diff --git a/src/gallium/winsys/r600/drm/evergreen_hw_context.c b/src/gallium/winsys/r600/drm/evergreen_hw_context.c index d914836676c..b287ed54c29 100644 --- a/src/gallium/winsys/r600/drm/evergreen_hw_context.c +++ b/src/gallium/winsys/r600/drm/evergreen_hw_context.c @@ -69,29 +69,29 @@ static const struct r600_reg evergreen_context_reg_list[] = { {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_02800C_DB_RENDER_OVERRIDE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028010_DB_RENDER_OVERRIDE2, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028014_DB_HTILE_DATA_BASE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028014_DB_HTILE_DATA_BASE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028028_DB_STENCIL_CLEAR, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_02802C_DB_DEPTH_CLEAR, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028030_PA_SC_SCREEN_SCISSOR_TL, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028034_PA_SC_SCREEN_SCISSOR_BR, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028040_DB_Z_INFO, 1, 0, 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028040_DB_Z_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028044_DB_STENCIL_INFO, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028048_DB_Z_READ_BASE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028048_DB_Z_READ_BASE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_02804C_DB_STENCIL_READ_BASE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_02804C_DB_STENCIL_READ_BASE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028050_DB_Z_WRITE_BASE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028050_DB_Z_WRITE_BASE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028054_DB_STENCIL_WRITE_BASE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028054_DB_STENCIL_WRITE_BASE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028058_DB_DEPTH_SIZE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_02805C_DB_DEPTH_SLICE, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028140_ALU_CONST_BUFFER_SIZE_PS_0, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028180_ALU_CONST_BUFFER_SIZE_VS_0, 0, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028140_ALU_CONST_BUFFER_SIZE_PS_0, REG_FLAG_DIRTY_ALWAYS, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028180_ALU_CONST_BUFFER_SIZE_VS_0, REG_FLAG_DIRTY_ALWAYS, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028200_PA_SC_WINDOW_OFFSET, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028204_PA_SC_WINDOW_SCISSOR_TL, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028208_PA_SC_WINDOW_SCISSOR_BR, 0, 0, 0}, @@ -258,14 +258,14 @@ static const struct r600_reg evergreen_context_reg_list[] = { {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_02881C_PA_CL_VS_OUT_CNTL, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028820_PA_CL_NANINF_CNTL, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028838_SQ_DYN_GPR_RESOURCE_LIMIT_1, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028840_SQ_PGM_START_PS, 1, S_0085F0_SH_ACTION_ENA(1), 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028840_SQ_PGM_START_PS, REG_FLAG_NEED_BO, S_0085F0_SH_ACTION_ENA(1), 0xFFFFFFFF}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028844_SQ_PGM_RESOURCES_PS, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028848_SQ_PGM_RESOURCES_2_PS, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_02884C_SQ_PGM_EXPORTS_PS, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_02885C_SQ_PGM_START_VS, 1, S_0085F0_SH_ACTION_ENA(1), 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_02885C_SQ_PGM_START_VS, REG_FLAG_NEED_BO, S_0085F0_SH_ACTION_ENA(1), 0xFFFFFFFF}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028860_SQ_PGM_RESOURCES_VS, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028864_SQ_PGM_RESOURCES_2_VS, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_0288A4_SQ_PGM_START_FS, 1, S_0085F0_SH_ACTION_ENA(1), 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_0288A4_SQ_PGM_START_FS, REG_FLAG_NEED_BO, S_0085F0_SH_ACTION_ENA(1), 0xFFFFFFFF}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_0288A8_SQ_PGM_RESOURCES_FS, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_0288EC_SQ_LDS_ALLOC_PS, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028900_SQ_ESGS_RING_ITEMSIZE, 0, 0, 0}, @@ -278,8 +278,8 @@ static const struct r600_reg evergreen_context_reg_list[] = { {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028920_SQ_GS_VERT_ITEMSIZE_1, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028924_SQ_GS_VERT_ITEMSIZE_2, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028928_SQ_GS_VERT_ITEMSIZE_3, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028940_ALU_CONST_CACHE_PS_0, 1, S_0085F0_SH_ACTION_ENA(1), 0xFFFFFFFF}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028980_ALU_CONST_CACHE_VS_0, 1, S_0085F0_SH_ACTION_ENA(1), 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028940_ALU_CONST_CACHE_PS_0, REG_FLAG_NEED_BO, S_0085F0_SH_ACTION_ENA(1), 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028980_ALU_CONST_CACHE_VS_0, REG_FLAG_NEED_BO, S_0085F0_SH_ACTION_ENA(1), 0xFFFFFFFF}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028A00_PA_SU_POINT_SIZE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028A04_PA_SU_POINT_MINMAX, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028A08_PA_SU_LINE_CNTL, 0, 0, 0}, @@ -324,100 +324,100 @@ static const struct r600_reg evergreen_context_reg_list[] = { {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028C1C_PA_SC_AA_SAMPLE_LOCS_MCTX, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028C3C_PA_SC_AA_MASK, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028C60_CB_COLOR0_BASE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028C60_CB_COLOR0_BASE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028C64_CB_COLOR0_PITCH, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028C68_CB_COLOR0_SLICE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028C6C_CB_COLOR0_VIEW, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028C70_CB_COLOR0_INFO, 1, 0, 0xFFFFFFFF}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028C74_CB_COLOR0_ATTRIB, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028C70_CB_COLOR0_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028C74_CB_COLOR0_ATTRIB, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028C78_CB_COLOR0_DIM, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028C9C_CB_COLOR1_BASE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028C9C_CB_COLOR1_BASE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028CA0_CB_COLOR1_PITCH, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028CA4_CB_COLOR1_SLICE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028CA8_CB_COLOR1_VIEW, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028CAC_CB_COLOR1_INFO, 1, 0, 0xFFFFFFFF}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028CB0_CB_COLOR1_ATTRIB, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028CAC_CB_COLOR1_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028CB0_CB_COLOR1_ATTRIB, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028CB4_CB_COLOR1_DIM, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028CD8_CB_COLOR2_BASE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028CD8_CB_COLOR2_BASE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028CDC_CB_COLOR2_PITCH, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028CE0_CB_COLOR2_SLICE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028CE4_CB_COLOR2_VIEW, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028CE8_CB_COLOR2_INFO, 1, 0, 0xFFFFFFFF}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028CEC_CB_COLOR2_ATTRIB, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028CE8_CB_COLOR2_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028CEC_CB_COLOR2_ATTRIB, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028CF0_CB_COLOR2_DIM, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D14_CB_COLOR3_BASE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D14_CB_COLOR3_BASE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D18_CB_COLOR3_PITCH, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D1C_CB_COLOR3_SLICE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D20_CB_COLOR3_VIEW, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D24_CB_COLOR3_INFO, 1, 0, 0xFFFFFFFF}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D28_CB_COLOR3_ATTRIB, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D24_CB_COLOR3_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D28_CB_COLOR3_ATTRIB, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D2C_CB_COLOR3_DIM, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D50_CB_COLOR4_BASE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D50_CB_COLOR4_BASE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D54_CB_COLOR4_PITCH, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D58_CB_COLOR4_SLICE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D5C_CB_COLOR4_VIEW, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D60_CB_COLOR4_INFO, 1, 0, 0xFFFFFFFF}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D64_CB_COLOR4_ATTRIB, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D60_CB_COLOR4_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D64_CB_COLOR4_ATTRIB, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D68_CB_COLOR4_DIM, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D8C_CB_COLOR5_BASE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D8C_CB_COLOR5_BASE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D90_CB_COLOR5_PITCH, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D94_CB_COLOR5_SLICE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D98_CB_COLOR5_VIEW, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D9C_CB_COLOR5_INFO, 1, 0, 0xFFFFFFFF}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028DA0_CB_COLOR5_ATTRIB, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028D9C_CB_COLOR5_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028DA0_CB_COLOR5_ATTRIB, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028DA4_CB_COLOR5_DIM, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028DC8_CB_COLOR6_BASE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028DC8_CB_COLOR6_BASE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028DCC_CB_COLOR6_PITCH, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028DD0_CB_COLOR6_SLICE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028DD4_CB_COLOR6_VIEW, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028DD8_CB_COLOR6_INFO, 1, 0, 0xFFFFFFFF}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028DDC_CB_COLOR6_ATTRIB, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028DD8_CB_COLOR6_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028DDC_CB_COLOR6_ATTRIB, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028DE0_CB_COLOR6_DIM, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E04_CB_COLOR7_BASE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E04_CB_COLOR7_BASE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E08_CB_COLOR7_PITCH, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E0C_CB_COLOR7_SLICE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E10_CB_COLOR7_VIEW, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E14_CB_COLOR7_INFO, 1, 0, 0xFFFFFFFF}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E18_CB_COLOR7_ATTRIB, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E14_CB_COLOR7_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E18_CB_COLOR7_ATTRIB, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E1C_CB_COLOR7_DIM, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E40_CB_COLOR8_BASE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E40_CB_COLOR8_BASE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E44_CB_COLOR8_PITCH, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E48_CB_COLOR8_SLICE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E4C_CB_COLOR8_VIEW, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E50_CB_COLOR8_INFO, 1, 0, 0xFFFFFFFF}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E54_CB_COLOR8_ATTRIB, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E50_CB_COLOR8_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E54_CB_COLOR8_ATTRIB, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E58_CB_COLOR8_DIM, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E5C_CB_COLOR9_BASE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E5C_CB_COLOR9_BASE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E60_CB_COLOR9_PITCH, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E64_CB_COLOR9_SLICE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E68_CB_COLOR9_VIEW, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E6C_CB_COLOR9_INFO, 1, 0, 0xFFFFFFFF}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E70_CB_COLOR9_ATTRIB, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E6C_CB_COLOR9_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E70_CB_COLOR9_ATTRIB, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E74_CB_COLOR9_DIM, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E78_CB_COLOR10_BASE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E78_CB_COLOR10_BASE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E7C_CB_COLOR10_PITCH, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E80_CB_COLOR10_SLICE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E84_CB_COLOR10_VIEW, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E88_CB_COLOR10_INFO, 1, 0, 0xFFFFFFFF}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E8C_CB_COLOR10_ATTRIB, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E88_CB_COLOR10_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E8C_CB_COLOR10_ATTRIB, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E90_CB_COLOR10_DIM, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E94_CB_COLOR11_BASE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E94_CB_COLOR11_BASE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E98_CB_COLOR11_PITCH, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028E9C_CB_COLOR11_SLICE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028EA0_CB_COLOR11_VIEW, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028EA4_CB_COLOR11_INFO, 1, 0, 0xFFFFFFFF}, - {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028EA8_CB_COLOR11_ATTRIB, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028EA4_CB_COLOR11_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028EA8_CB_COLOR11_ATTRIB, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, EVERGREEN_CONTEXT_REG_OFFSET, R_028EAC_CB_COLOR11_DIM, 0, 0, 0}, }; @@ -427,8 +427,8 @@ static int evergreen_state_resource_init(struct r600_context *ctx, u32 offset) struct r600_reg r600_shader_resource[] = { {PKT3_SET_RESOURCE, EVERGREEN_RESOURCE_OFFSET, R_030000_RESOURCE0_WORD0, 0, 0, 0}, {PKT3_SET_RESOURCE, EVERGREEN_RESOURCE_OFFSET, R_030004_RESOURCE0_WORD1, 0, 0, 0}, - {PKT3_SET_RESOURCE, EVERGREEN_RESOURCE_OFFSET, R_030008_RESOURCE0_WORD2, 1, S_0085F0_TC_ACTION_ENA(1) | S_0085F0_VC_ACTION_ENA(1), 0xFFFFFFFF}, - {PKT3_SET_RESOURCE, EVERGREEN_RESOURCE_OFFSET, R_03000C_RESOURCE0_WORD3, 1, S_0085F0_TC_ACTION_ENA(1) | S_0085F0_VC_ACTION_ENA(1), 0xFFFFFFFF}, + {PKT3_SET_RESOURCE, EVERGREEN_RESOURCE_OFFSET, R_030008_RESOURCE0_WORD2, REG_FLAG_NEED_BO, S_0085F0_TC_ACTION_ENA(1) | S_0085F0_VC_ACTION_ENA(1), 0xFFFFFFFF}, + {PKT3_SET_RESOURCE, EVERGREEN_RESOURCE_OFFSET, R_03000C_RESOURCE0_WORD3, REG_FLAG_NEED_BO, S_0085F0_TC_ACTION_ENA(1) | S_0085F0_VC_ACTION_ENA(1), 0xFFFFFFFF}, {PKT3_SET_RESOURCE, EVERGREEN_RESOURCE_OFFSET, R_030010_RESOURCE0_WORD4, 0, 0, 0}, {PKT3_SET_RESOURCE, EVERGREEN_RESOURCE_OFFSET, R_030014_RESOURCE0_WORD5, 0, 0, 0}, {PKT3_SET_RESOURCE, EVERGREEN_RESOURCE_OFFSET, R_030018_RESOURCE0_WORD6, 0, 0, 0}, @@ -499,7 +499,7 @@ static int evergreen_loop_const_init(struct r600_context *ctx, u32 offset) r600_loop_consts[i].opcode = PKT3_SET_LOOP_CONST; r600_loop_consts[i].offset_base = EVERGREEN_LOOP_CONST_OFFSET; r600_loop_consts[i].offset = EVERGREEN_LOOP_CONST_OFFSET + ((offset + i) * 4); - r600_loop_consts[i].need_bo = 0; + r600_loop_consts[i].flags = 0; r600_loop_consts[i].flush_flags = 0; } return r600_context_add_block(ctx, r600_loop_consts, nreg); @@ -664,7 +664,7 @@ static inline void evergreen_context_pipe_state_set_resource(struct r600_context r600_bo_reference(ctx->radeon, &block->reloc[1].bo, state->regs[2].bo); r600_bo_reference(ctx->radeon, &block->reloc[2].bo, state->regs[3].bo); } - r600_context_dirty_block(ctx, block); + r600_context_dirty_block(ctx, block, R600_BLOCK_STATUS_DIRTY); } void evergreen_context_pipe_state_set_ps_resource(struct r600_context *ctx, struct r600_pipe_state *state, unsigned rid) @@ -693,6 +693,7 @@ static inline void evergreen_context_pipe_state_set_sampler(struct r600_context struct r600_range *range; struct r600_block *block; int i; + int dirty; range = &ctx->range[CTX_RANGE_ID(ctx, offset)]; block = range->blocks[CTX_BLOCK_ID(ctx, offset)]; @@ -701,10 +702,16 @@ static inline void evergreen_context_pipe_state_set_sampler(struct r600_context LIST_DELINIT(&block->list); return; } - for (i = 0; i < 3; i++) - block->reg[i] = state->regs[i].value; + dirty = block->status & R600_BLOCK_STATUS_DIRTY; - r600_context_dirty_block(ctx, block); + for (i = 0; i < 3; i++) { + if (block->reg[i] != state->regs[i].value) { + dirty |= R600_BLOCK_STATUS_DIRTY; + block->reg[i] = state->regs[i].value; + } + } + + r600_context_dirty_block(ctx, block, dirty); } static inline void evergreen_context_pipe_state_set_sampler_border(struct r600_context *ctx, struct r600_pipe_state *state, unsigned offset, unsigned id) @@ -713,6 +720,7 @@ static inline void evergreen_context_pipe_state_set_sampler_border(struct r600_c struct r600_range *range; struct r600_block *block; int i; + int dirty; range = &ctx->range[CTX_RANGE_ID(ctx, fake_offset)]; block = range->blocks[CTX_BLOCK_ID(ctx, fake_offset)]; @@ -724,12 +732,20 @@ static inline void evergreen_context_pipe_state_set_sampler_border(struct r600_c if (state->nregs <= 3) { return; } - block->reg[0] = id; + dirty = block->status & R600_BLOCK_STATUS_DIRTY; + if (block->reg[0] != id) { + block->reg[0] = id; + dirty |= R600_BLOCK_STATUS_DIRTY; + } - for (i = 1; i < 5; i++) - block->reg[i] = state->regs[i + 2].value; + for (i = 1; i < 5; i++) { + if (block->reg[i] != state->regs[i + 2].value) { + block->reg[i] = state->regs[i + 2].value; + dirty |= R600_BLOCK_STATUS_DIRTY; + } + } - r600_context_dirty_block(ctx, block); + r600_context_dirty_block(ctx, block, dirty); } void evergreen_context_pipe_state_set_ps_sampler(struct r600_context *ctx, struct r600_pipe_state *state, unsigned id) diff --git a/src/gallium/winsys/r600/drm/r600_hw_context.c b/src/gallium/winsys/r600/drm/r600_hw_context.c index dd032ad9445..2d9e40303e0 100644 --- a/src/gallium/winsys/r600/drm/r600_hw_context.c +++ b/src/gallium/winsys/r600/drm/r600_hw_context.c @@ -106,16 +106,21 @@ int r600_context_add_block(struct r600_context *ctx, const struct r600_reg *reg, } /* initialize block */ + block->status |= R600_BLOCK_STATUS_DIRTY; /* dirty all blocks at start */ block->start_offset = reg[i].offset; block->pm4[block->pm4_ndwords++] = PKT3(reg[i].opcode, n, 0); block->pm4[block->pm4_ndwords++] = (block->start_offset - reg[i].offset_base) >> 2; block->reg = &block->pm4[block->pm4_ndwords]; block->pm4_ndwords += n; block->nreg = n; + block->flags = 0; LIST_INITHEAD(&block->list); for (j = 0; j < n; j++) { - if (reg[i+j].need_bo) { + if (reg[i+j].flags & REG_FLAG_DIRTY_ALWAYS) { + block->flags |= REG_FLAG_DIRTY_ALWAYS; + } + if (reg[i+j].flags & REG_FLAG_NEED_BO) { block->nbo++; assert(block->nbo < R600_BLOCK_MAX_BO); block->pm4_bo_index[j] = block->nbo; @@ -191,97 +196,97 @@ static const struct r600_reg r600_context_reg_list[] = { {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028028_DB_STENCIL_CLEAR, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_02802C_DB_DEPTH_CLEAR, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028040_CB_COLOR0_BASE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028040_CB_COLOR0_BASE, REG_FLAG_NEED_BO, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280A0_CB_COLOR0_INFO, 1, 0, 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280A0_CB_COLOR0_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028060_CB_COLOR0_SIZE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028080_CB_COLOR0_VIEW, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280E0_CB_COLOR0_FRAG, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280E0_CB_COLOR0_FRAG, REG_FLAG_NEED_BO, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280C0_CB_COLOR0_TILE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280C0_CB_COLOR0_TILE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028100_CB_COLOR0_MASK, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028044_CB_COLOR1_BASE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028044_CB_COLOR1_BASE, REG_FLAG_NEED_BO, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280A4_CB_COLOR1_INFO, 1, 0, 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280A4_CB_COLOR1_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028064_CB_COLOR1_SIZE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028084_CB_COLOR1_VIEW, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280E4_CB_COLOR1_FRAG, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280E4_CB_COLOR1_FRAG, REG_FLAG_NEED_BO, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280C4_CB_COLOR1_TILE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280C4_CB_COLOR1_TILE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028104_CB_COLOR1_MASK, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028048_CB_COLOR2_BASE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028048_CB_COLOR2_BASE, REG_FLAG_NEED_BO, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280A8_CB_COLOR2_INFO, 1, 0, 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280A8_CB_COLOR2_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028068_CB_COLOR2_SIZE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028088_CB_COLOR2_VIEW, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280E8_CB_COLOR2_FRAG, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280E8_CB_COLOR2_FRAG, REG_FLAG_NEED_BO, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280C8_CB_COLOR2_TILE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280C8_CB_COLOR2_TILE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028108_CB_COLOR2_MASK, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_02804C_CB_COLOR3_BASE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_02804C_CB_COLOR3_BASE, REG_FLAG_NEED_BO, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280AC_CB_COLOR3_INFO, 1, 0, 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280AC_CB_COLOR3_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_02806C_CB_COLOR3_SIZE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_02808C_CB_COLOR3_VIEW, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280EC_CB_COLOR3_FRAG, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280EC_CB_COLOR3_FRAG, REG_FLAG_NEED_BO, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280CC_CB_COLOR3_TILE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280CC_CB_COLOR3_TILE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_02810C_CB_COLOR3_MASK, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028050_CB_COLOR4_BASE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028050_CB_COLOR4_BASE, REG_FLAG_NEED_BO, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280B0_CB_COLOR4_INFO, 1, 0, 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280B0_CB_COLOR4_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028070_CB_COLOR4_SIZE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028090_CB_COLOR4_VIEW, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280F0_CB_COLOR4_FRAG, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280F0_CB_COLOR4_FRAG, REG_FLAG_NEED_BO, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280D0_CB_COLOR4_TILE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280D0_CB_COLOR4_TILE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028110_CB_COLOR4_MASK, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028054_CB_COLOR5_BASE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028054_CB_COLOR5_BASE, REG_FLAG_NEED_BO, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280B4_CB_COLOR5_INFO, 1, 0, 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280B4_CB_COLOR5_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028074_CB_COLOR5_SIZE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028094_CB_COLOR5_VIEW, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280F4_CB_COLOR5_FRAG, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280F4_CB_COLOR5_FRAG, REG_FLAG_NEED_BO, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280D4_CB_COLOR5_TILE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280D4_CB_COLOR5_TILE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028114_CB_COLOR5_MASK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028058_CB_COLOR6_BASE, 1, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280B8_CB_COLOR6_INFO, 1, 0, 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028058_CB_COLOR6_BASE, REG_FLAG_NEED_BO, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280B8_CB_COLOR6_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028078_CB_COLOR6_SIZE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028098_CB_COLOR6_VIEW, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280F8_CB_COLOR6_FRAG, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280F8_CB_COLOR6_FRAG, REG_FLAG_NEED_BO, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280D8_CB_COLOR6_TILE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280D8_CB_COLOR6_TILE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028118_CB_COLOR6_MASK, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_02805C_CB_COLOR7_BASE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_02805C_CB_COLOR7_BASE, REG_FLAG_NEED_BO, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280BC_CB_COLOR7_INFO, 1, 0, 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280BC_CB_COLOR7_INFO, REG_FLAG_NEED_BO, 0, 0xFFFFFFFF}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_02807C_CB_COLOR7_SIZE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_02809C_CB_COLOR7_VIEW, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280FC_CB_COLOR7_FRAG, 1, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280DC_CB_COLOR7_TILE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280FC_CB_COLOR7_FRAG, REG_FLAG_NEED_BO, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0280DC_CB_COLOR7_TILE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_02811C_CB_COLOR7_MASK, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028120_CB_CLEAR_RED, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028124_CB_CLEAR_GREEN, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028128_CB_CLEAR_BLUE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_02812C_CB_CLEAR_ALPHA, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028140_ALU_CONST_BUFFER_SIZE_PS_0, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028180_ALU_CONST_BUFFER_SIZE_VS_0, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028940_ALU_CONST_CACHE_PS_0, 1, S_0085F0_SH_ACTION_ENA(1), 0xFFFFFFFF}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028980_ALU_CONST_CACHE_VS_0, 1, S_0085F0_SH_ACTION_ENA(1), 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028140_ALU_CONST_BUFFER_SIZE_PS_0, REG_FLAG_DIRTY_ALWAYS, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028180_ALU_CONST_BUFFER_SIZE_VS_0, REG_FLAG_DIRTY_ALWAYS, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028940_ALU_CONST_CACHE_PS_0, REG_FLAG_NEED_BO, S_0085F0_SH_ACTION_ENA(1), 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028980_ALU_CONST_CACHE_VS_0, REG_FLAG_NEED_BO, S_0085F0_SH_ACTION_ENA(1), 0xFFFFFFFF}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_02823C_CB_SHADER_MASK, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028238_CB_TARGET_MASK, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028410_SX_ALPHA_TEST_CONTROL, 0, 0, 0}, @@ -321,11 +326,11 @@ static const struct r600_reg r600_context_reg_list[] = { {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028C48_PA_SC_AA_MASK, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028D2C_DB_SRESULTS_COMPARE_STATE1, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028D44_DB_ALPHA_TO_MASK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_02800C_DB_DEPTH_BASE, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_02800C_DB_DEPTH_BASE, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028000_DB_DEPTH_SIZE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028004_DB_DEPTH_VIEW, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028010_DB_DEPTH_INFO, 1, 0, 0}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028010_DB_DEPTH_INFO, REG_FLAG_NEED_BO, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028D0C_DB_RENDER_CONTROL, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028D10_DB_RENDER_OVERRIDE, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028D24_DB_HTILE_SURFACE, 0, 0, 0}, @@ -449,11 +454,11 @@ static const struct r600_reg r600_context_reg_list[] = { {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028638_SPI_VS_OUT_ID_9, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0286C4_SPI_VS_OUT_CONFIG, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028858_SQ_PGM_START_VS, 1, S_0085F0_SH_ACTION_ENA(1), 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028858_SQ_PGM_START_VS, REG_FLAG_NEED_BO, S_0085F0_SH_ACTION_ENA(1), 0xFFFFFFFF}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028868_SQ_PGM_RESOURCES_VS, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028894_SQ_PGM_START_FS, 1, S_0085F0_SH_ACTION_ENA(1), 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028894_SQ_PGM_START_FS, REG_FLAG_NEED_BO, S_0085F0_SH_ACTION_ENA(1), 0xFFFFFFFF}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0288A4_SQ_PGM_RESOURCES_FS, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0288D0_SQ_PGM_CF_OFFSET_VS, 0, 0, 0}, @@ -494,7 +499,7 @@ static const struct r600_reg r600_context_reg_list[] = { {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0286D0_SPI_PS_IN_CONTROL_1, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_0286D8_SPI_INPUT_Z, 0, 0, 0}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, - {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028840_SQ_PGM_START_PS, 1, S_0085F0_SH_ACTION_ENA(1), 0xFFFFFFFF}, + {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028840_SQ_PGM_START_PS, REG_FLAG_NEED_BO, S_0085F0_SH_ACTION_ENA(1), 0xFFFFFFFF}, {0, 0, GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028850_SQ_PGM_RESOURCES_PS, 0, 0, 0}, {PKT3_SET_CONTEXT_REG, R600_CONTEXT_REG_OFFSET, R_028854_SQ_PGM_EXPORTS_PS, 0, 0, 0}, @@ -515,8 +520,8 @@ static int r600_state_resource_init(struct r600_context *ctx, u32 offset) struct r600_reg r600_shader_resource[] = { {PKT3_SET_RESOURCE, R600_RESOURCE_OFFSET, R_038000_RESOURCE0_WORD0, 0, 0, 0}, {PKT3_SET_RESOURCE, R600_RESOURCE_OFFSET, R_038004_RESOURCE0_WORD1, 0, 0, 0}, - {PKT3_SET_RESOURCE, R600_RESOURCE_OFFSET, R_038008_RESOURCE0_WORD2, 1, S_0085F0_TC_ACTION_ENA(1) | S_0085F0_VC_ACTION_ENA(1), 0xFFFFFFFF}, - {PKT3_SET_RESOURCE, R600_RESOURCE_OFFSET, R_03800C_RESOURCE0_WORD3, 1, S_0085F0_TC_ACTION_ENA(1) | S_0085F0_VC_ACTION_ENA(1), 0xFFFFFFFF}, + {PKT3_SET_RESOURCE, R600_RESOURCE_OFFSET, R_038008_RESOURCE0_WORD2, REG_FLAG_NEED_BO, S_0085F0_TC_ACTION_ENA(1) | S_0085F0_VC_ACTION_ENA(1), 0xFFFFFFFF}, + {PKT3_SET_RESOURCE, R600_RESOURCE_OFFSET, R_03800C_RESOURCE0_WORD3, REG_FLAG_NEED_BO, S_0085F0_TC_ACTION_ENA(1) | S_0085F0_VC_ACTION_ENA(1), 0xFFFFFFFF}, {PKT3_SET_RESOURCE, R600_RESOURCE_OFFSET, R_038010_RESOURCE0_WORD4, 0, 0, 0}, {PKT3_SET_RESOURCE, R600_RESOURCE_OFFSET, R_038014_RESOURCE0_WORD5, 0, 0, 0}, {PKT3_SET_RESOURCE, R600_RESOURCE_OFFSET, R_038018_RESOURCE0_WORD6, 0, 0, 0}, @@ -572,7 +577,7 @@ static int r600_loop_const_init(struct r600_context *ctx, u32 offset) r600_loop_consts[i].opcode = PKT3_SET_LOOP_CONST; r600_loop_consts[i].offset_base = R600_LOOP_CONST_OFFSET; r600_loop_consts[i].offset = R600_LOOP_CONST_OFFSET + ((offset + i) * 4); - r600_loop_consts[i].need_bo = 0; + r600_loop_consts[i].flags = 0; r600_loop_consts[i].flush_flags = 0; r600_loop_consts[i].flush_mask = 0; } @@ -836,22 +841,36 @@ void r600_context_pipe_state_set(struct r600_context *ctx, struct r600_pipe_stat { struct r600_range *range; struct r600_block *block; - + unsigned new_val; + int dirty; for (int i = 0; i < state->nregs; i++) { unsigned id; range = &ctx->range[CTX_RANGE_ID(ctx, state->regs[i].offset)]; block = range->blocks[CTX_BLOCK_ID(ctx, state->regs[i].offset)]; id = (state->regs[i].offset - block->start_offset) >> 2; - block->reg[id] &= ~state->regs[i].mask; - block->reg[id] |= state->regs[i].value; + + dirty = block->status & R600_BLOCK_STATUS_DIRTY; + + new_val = block->reg[id]; + new_val &= ~state->regs[i].mask; + new_val |= state->regs[i].value; + if (new_val != block->reg[id]) { + block->reg[id] = new_val; + dirty |= R600_BLOCK_STATUS_DIRTY; + } + if (block->flags & REG_FLAG_DIRTY_ALWAYS) + dirty |= R600_BLOCK_STATUS_DIRTY; if (block->pm4_bo_index[id]) { /* find relocation */ id = block->pm4_bo_index[id]; r600_bo_reference(ctx->radeon, &block->reloc[id].bo, state->regs[i].bo); state->regs[i].bo->fence = ctx->radeon->fence; + /* always force dirty for relocs for now */ + dirty |= R600_BLOCK_STATUS_DIRTY; } - r600_context_dirty_block(ctx, block); + + r600_context_dirty_block(ctx, block, dirty); } } @@ -890,7 +909,7 @@ static inline void r600_context_pipe_state_set_resource(struct r600_context *ctx state->regs[2].bo->fence = ctx->radeon->fence; state->regs[3].bo->fence = ctx->radeon->fence; } - r600_context_dirty_block(ctx, block); + r600_context_dirty_block(ctx, block, R600_BLOCK_STATUS_DIRTY); } void r600_context_pipe_state_set_ps_resource(struct r600_context *ctx, struct r600_pipe_state *state, unsigned rid) @@ -919,6 +938,7 @@ static inline void r600_context_pipe_state_set_sampler(struct r600_context *ctx, struct r600_range *range; struct r600_block *block; int i; + int dirty; range = &ctx->range[CTX_RANGE_ID(ctx, offset)]; block = range->blocks[CTX_BLOCK_ID(ctx, offset)]; @@ -927,11 +947,15 @@ static inline void r600_context_pipe_state_set_sampler(struct r600_context *ctx, LIST_DELINIT(&block->list); return; } + dirty = block->status & R600_BLOCK_STATUS_DIRTY; + for (i = 0; i < 3; i++) { + if (block->reg[i] != state->regs[i].value) { + block->reg[i] = state->regs[i].value; + dirty |= R600_BLOCK_STATUS_DIRTY; + } + } - for (i = 0; i < 3; i++) - block->reg[i] = state->regs[i].value; - - r600_context_dirty_block(ctx, block); + r600_context_dirty_block(ctx, block, dirty); } static inline void r600_context_pipe_state_set_sampler_border(struct r600_context *ctx, struct r600_pipe_state *state, unsigned offset) @@ -939,6 +963,7 @@ static inline void r600_context_pipe_state_set_sampler_border(struct r600_contex struct r600_range *range; struct r600_block *block; int i; + int dirty; range = &ctx->range[CTX_RANGE_ID(ctx, offset)]; block = range->blocks[CTX_BLOCK_ID(ctx, offset)]; @@ -950,11 +975,15 @@ static inline void r600_context_pipe_state_set_sampler_border(struct r600_contex if (state->nregs <= 3) { return; } + dirty = block->status & R600_BLOCK_STATUS_DIRTY; + for (i = 0; i < 4; i++) { + if (block->reg[i] != state->regs[i + 3].value) { + block->reg[i] = state->regs[i + 3].value; + dirty |= R600_BLOCK_STATUS_DIRTY; + } + } - for (i = 0; i < 4; i++) - block->reg[i] = state->regs[i + 3].value; - - r600_context_dirty_block(ctx, block); + r600_context_dirty_block(ctx, block, dirty); } void r600_context_pipe_state_set_ps_sampler(struct r600_context *ctx, struct r600_pipe_state *state, unsigned id) diff --git a/src/gallium/winsys/r600/drm/r600_priv.h b/src/gallium/winsys/r600/drm/r600_priv.h index 0e9dba70cd6..534df11f185 100644 --- a/src/gallium/winsys/r600/drm/r600_priv.h +++ b/src/gallium/winsys/r600/drm/r600_priv.h @@ -59,11 +59,14 @@ struct radeon { pipe_mutex bo_handles_mutex; }; +#define REG_FLAG_NEED_BO 1 +#define REG_FLAG_DIRTY_ALWAYS 2 + struct r600_reg { unsigned opcode; unsigned offset_base; unsigned offset; - unsigned need_bo; + unsigned flags; unsigned flush_flags; unsigned flush_mask; }; @@ -194,9 +197,10 @@ static void inline r600_context_reg(struct r600_context *ctx, } } -static inline void r600_context_dirty_block(struct r600_context *ctx, struct r600_block *block) +static inline void r600_context_dirty_block(struct r600_context *ctx, struct r600_block *block, + int dirty) { - if (!(block->status & R600_BLOCK_STATUS_DIRTY)) { + if ((dirty != (block->status & R600_BLOCK_STATUS_DIRTY)) || !(block->status & R600_BLOCK_STATUS_ENABLED)) { block->status |= R600_BLOCK_STATUS_ENABLED; block->status |= R600_BLOCK_STATUS_DIRTY; ctx->pm4_dirty_cdwords += block->pm4_ndwords + block->pm4_flush_ndwords; From 162bc40eed9dc54091b6e64bcd7eab06607b500d Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Mon, 18 Apr 2011 13:03:06 +1000 Subject: [PATCH 350/420] r600g: modify block to only emit the first few dirty registers. (v2) This gets me from 2200 to 1978 dwords for a gears frame. This is due to us having some 32-dwords blocks in the SPI, that we only modify the first dwords off. v2: fix dirty reg count from Bas Nieuwenhuizen Signed-off-by: Dave Airlie --- src/gallium/drivers/r600/r600.h | 3 ++- .../winsys/r600/drm/evergreen_hw_context.c | 6 ++--- src/gallium/winsys/r600/drm/r600_hw_context.c | 16 +++++++----- src/gallium/winsys/r600/drm/r600_priv.h | 26 ++++++++++++++++++- 4 files changed, 39 insertions(+), 12 deletions(-) diff --git a/src/gallium/drivers/r600/r600.h b/src/gallium/drivers/r600/r600.h index d6050002033..41666f2bff2 100644 --- a/src/gallium/drivers/r600/r600.h +++ b/src/gallium/drivers/r600/r600.h @@ -184,7 +184,8 @@ struct r600_block { unsigned pm4_ndwords; unsigned pm4_flush_ndwords; unsigned nbo; - unsigned nreg; + u16 nreg; + u16 nreg_dirty; u32 *reg; u32 pm4[R600_BLOCK_MAX_REG]; unsigned pm4_bo_index[R600_BLOCK_MAX_REG]; diff --git a/src/gallium/winsys/r600/drm/evergreen_hw_context.c b/src/gallium/winsys/r600/drm/evergreen_hw_context.c index b287ed54c29..670cbf7804e 100644 --- a/src/gallium/winsys/r600/drm/evergreen_hw_context.c +++ b/src/gallium/winsys/r600/drm/evergreen_hw_context.c @@ -664,7 +664,7 @@ static inline void evergreen_context_pipe_state_set_resource(struct r600_context r600_bo_reference(ctx->radeon, &block->reloc[1].bo, state->regs[2].bo); r600_bo_reference(ctx->radeon, &block->reloc[2].bo, state->regs[3].bo); } - r600_context_dirty_block(ctx, block, R600_BLOCK_STATUS_DIRTY); + r600_context_dirty_block(ctx, block, R600_BLOCK_STATUS_DIRTY, 7); } void evergreen_context_pipe_state_set_ps_resource(struct r600_context *ctx, struct r600_pipe_state *state, unsigned rid) @@ -711,7 +711,7 @@ static inline void evergreen_context_pipe_state_set_sampler(struct r600_context } } - r600_context_dirty_block(ctx, block, dirty); + r600_context_dirty_block(ctx, block, dirty, 2); } static inline void evergreen_context_pipe_state_set_sampler_border(struct r600_context *ctx, struct r600_pipe_state *state, unsigned offset, unsigned id) @@ -745,7 +745,7 @@ static inline void evergreen_context_pipe_state_set_sampler_border(struct r600_c } } - r600_context_dirty_block(ctx, block, dirty); + r600_context_dirty_block(ctx, block, dirty, 4); } void evergreen_context_pipe_state_set_ps_sampler(struct r600_context *ctx, struct r600_pipe_state *state, unsigned id) diff --git a/src/gallium/winsys/r600/drm/r600_hw_context.c b/src/gallium/winsys/r600/drm/r600_hw_context.c index 2d9e40303e0..52abf061cce 100644 --- a/src/gallium/winsys/r600/drm/r600_hw_context.c +++ b/src/gallium/winsys/r600/drm/r600_hw_context.c @@ -113,6 +113,7 @@ int r600_context_add_block(struct r600_context *ctx, const struct r600_reg *reg, block->reg = &block->pm4[block->pm4_ndwords]; block->pm4_ndwords += n; block->nreg = n; + block->nreg_dirty = n; block->flags = 0; LIST_INITHEAD(&block->list); @@ -844,7 +845,7 @@ void r600_context_pipe_state_set(struct r600_context *ctx, struct r600_pipe_stat unsigned new_val; int dirty; for (int i = 0; i < state->nregs; i++) { - unsigned id; + unsigned id, reloc_id; range = &ctx->range[CTX_RANGE_ID(ctx, state->regs[i].offset)]; block = range->blocks[CTX_BLOCK_ID(ctx, state->regs[i].offset)]; @@ -863,14 +864,14 @@ void r600_context_pipe_state_set(struct r600_context *ctx, struct r600_pipe_stat dirty |= R600_BLOCK_STATUS_DIRTY; if (block->pm4_bo_index[id]) { /* find relocation */ - id = block->pm4_bo_index[id]; - r600_bo_reference(ctx->radeon, &block->reloc[id].bo, state->regs[i].bo); + reloc_id = block->pm4_bo_index[id]; + r600_bo_reference(ctx->radeon, &block->reloc[reloc_id].bo, state->regs[i].bo); state->regs[i].bo->fence = ctx->radeon->fence; /* always force dirty for relocs for now */ dirty |= R600_BLOCK_STATUS_DIRTY; } - r600_context_dirty_block(ctx, block, dirty); + r600_context_dirty_block(ctx, block, dirty, id); } } @@ -909,7 +910,7 @@ static inline void r600_context_pipe_state_set_resource(struct r600_context *ctx state->regs[2].bo->fence = ctx->radeon->fence; state->regs[3].bo->fence = ctx->radeon->fence; } - r600_context_dirty_block(ctx, block, R600_BLOCK_STATUS_DIRTY); + r600_context_dirty_block(ctx, block, R600_BLOCK_STATUS_DIRTY, 6); } void r600_context_pipe_state_set_ps_resource(struct r600_context *ctx, struct r600_pipe_state *state, unsigned rid) @@ -955,7 +956,7 @@ static inline void r600_context_pipe_state_set_sampler(struct r600_context *ctx, } } - r600_context_dirty_block(ctx, block, dirty); + r600_context_dirty_block(ctx, block, dirty, 2); } static inline void r600_context_pipe_state_set_sampler_border(struct r600_context *ctx, struct r600_pipe_state *state, unsigned offset) @@ -983,7 +984,7 @@ static inline void r600_context_pipe_state_set_sampler_border(struct r600_contex } } - r600_context_dirty_block(ctx, block, dirty); + r600_context_dirty_block(ctx, block, dirty, 3); } void r600_context_pipe_state_set_ps_sampler(struct r600_context *ctx, struct r600_pipe_state *state, unsigned id) @@ -1211,6 +1212,7 @@ void r600_context_flush(struct r600_context *ctx) } ctx->pm4_dirty_cdwords += ctx->blocks[i]->pm4_ndwords + ctx->blocks[i]->pm4_flush_ndwords; ctx->blocks[i]->status |= R600_BLOCK_STATUS_DIRTY; + ctx->blocks[i]->nreg_dirty = ctx->blocks[i]->nreg; } } } diff --git a/src/gallium/winsys/r600/drm/r600_priv.h b/src/gallium/winsys/r600/drm/r600_priv.h index 534df11f185..faf47e82ab8 100644 --- a/src/gallium/winsys/r600/drm/r600_priv.h +++ b/src/gallium/winsys/r600/drm/r600_priv.h @@ -36,6 +36,9 @@ #include #include "r600.h" +#define PKT_COUNT_C 0xC000FFFF +#define PKT_COUNT_S(x) (((x) & 0x3FFF) << 16) + struct r600_bomgr; struct r600_bo; @@ -198,9 +201,13 @@ static void inline r600_context_reg(struct r600_context *ctx, } static inline void r600_context_dirty_block(struct r600_context *ctx, struct r600_block *block, - int dirty) + int dirty, int index) { + if (dirty && (index + 1) > block->nreg_dirty) + block->nreg_dirty = index + 1; + if ((dirty != (block->status & R600_BLOCK_STATUS_DIRTY)) || !(block->status & R600_BLOCK_STATUS_ENABLED)) { + block->status |= R600_BLOCK_STATUS_ENABLED; block->status |= R600_BLOCK_STATUS_DIRTY; ctx->pm4_dirty_cdwords += block->pm4_ndwords + block->pm4_flush_ndwords; @@ -212,6 +219,10 @@ static inline void r600_context_block_emit_dirty(struct r600_context *ctx, struc { int id; + if (block->nreg_dirty == 0 && block->nbo == 0 && !(block->flags & REG_FLAG_DIRTY_ALWAYS)) { + goto out; + } + for (int j = 0; j < block->nreg; j++) { if (block->pm4_bo_index[j]) { /* find relocation */ @@ -227,7 +238,20 @@ static inline void r600_context_block_emit_dirty(struct r600_context *ctx, struc } memcpy(&ctx->pm4[ctx->pm4_cdwords], block->pm4, block->pm4_ndwords * 4); ctx->pm4_cdwords += block->pm4_ndwords; + + if (block->nreg_dirty != block->nreg && block->nbo == 0 && !(block->flags & REG_FLAG_DIRTY_ALWAYS)) { + int new_dwords = block->nreg_dirty; + uint32_t oldword, newword; + ctx->pm4_cdwords -= block->pm4_ndwords; + newword = oldword = ctx->pm4[ctx->pm4_cdwords]; + newword &= PKT_COUNT_C; + newword |= PKT_COUNT_S(new_dwords); + ctx->pm4[ctx->pm4_cdwords] = newword; + ctx->pm4_cdwords += new_dwords + 2; + } +out: block->status ^= R600_BLOCK_STATUS_DIRTY; + block->nreg_dirty = 0; LIST_DELINIT(&block->list); } From e3b9cf15bbef3fc06f576a378fab70081ee48fba Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Mon, 18 Apr 2011 13:37:10 +1000 Subject: [PATCH 351/420] r600g: attempt to avoid emitting resources that are the same This just avoids reemitting resources that haven't changed. Signed-off-by: Dave Airlie --- src/gallium/winsys/r600/drm/r600_hw_context.c | 67 ++++++++++++++----- 1 file changed, 49 insertions(+), 18 deletions(-) diff --git a/src/gallium/winsys/r600/drm/r600_hw_context.c b/src/gallium/winsys/r600/drm/r600_hw_context.c index 52abf061cce..c5d81f1a3a2 100644 --- a/src/gallium/winsys/r600/drm/r600_hw_context.c +++ b/src/gallium/winsys/r600/drm/r600_hw_context.c @@ -880,6 +880,7 @@ static inline void r600_context_pipe_state_set_resource(struct r600_context *ctx struct r600_range *range; struct r600_block *block; int i; + int dirty; range = &ctx->range[CTX_RANGE_ID(ctx, offset)]; block = range->blocks[CTX_BLOCK_ID(ctx, offset)]; @@ -891,26 +892,56 @@ static inline void r600_context_pipe_state_set_resource(struct r600_context *ctx return; } - for (i = 0; i < 7; i++) - block->reg[i] = state->regs[i].value; + dirty = block->status & R600_BLOCK_STATUS_DIRTY; - r600_bo_reference(ctx->radeon, &block->reloc[1].bo, NULL); - r600_bo_reference(ctx->radeon , &block->reloc[2].bo, NULL); - if (state->regs[0].bo) { - /* VERTEX RESOURCE, we preted there is 2 bo to relocate so - * we have single case btw VERTEX & TEXTURE resource - */ - r600_bo_reference(ctx->radeon, &block->reloc[1].bo, state->regs[0].bo); - r600_bo_reference(ctx->radeon, &block->reloc[2].bo, state->regs[0].bo); - state->regs[0].bo->fence = ctx->radeon->fence; - } else { - /* TEXTURE RESOURCE */ - r600_bo_reference(ctx->radeon, &block->reloc[1].bo, state->regs[2].bo); - r600_bo_reference(ctx->radeon, &block->reloc[2].bo, state->regs[3].bo); - state->regs[2].bo->fence = ctx->radeon->fence; - state->regs[3].bo->fence = ctx->radeon->fence; + for (i = 0; i < 7; i++) { + if (block->reg[i] != state->regs[i].value) { + dirty |= R600_BLOCK_STATUS_DIRTY; + block->reg[i] = state->regs[i].value; + } } - r600_context_dirty_block(ctx, block, R600_BLOCK_STATUS_DIRTY, 6); + + /* if no BOs on block, force dirty */ + if (!block->reloc[1].bo || !block->reloc[2].bo) + dirty |= R600_BLOCK_STATUS_DIRTY; + + if (!dirty) { + if (state->regs[0].bo) { + if ((block->reloc[1].bo->bo->handle != state->regs[0].bo->bo->handle) || + (block->reloc[2].bo->bo->handle != state->regs[0].bo->bo->handle)) + dirty |= R600_BLOCK_STATUS_DIRTY; + } else { + if ((block->reloc[1].bo->bo->handle != state->regs[2].bo->bo->handle) || + (block->reloc[2].bo->bo->handle != state->regs[3].bo->bo->handle)) + dirty |= R600_BLOCK_STATUS_DIRTY; + } + } + if (!dirty) { + if (state->regs[0].bo) + state->regs[0].bo->fence = ctx->radeon->fence; + else { + state->regs[2].bo->fence = ctx->radeon->fence; + state->regs[3].bo->fence = ctx->radeon->fence; + } + } else { + r600_bo_reference(ctx->radeon, &block->reloc[1].bo, NULL); + r600_bo_reference(ctx->radeon, &block->reloc[2].bo, NULL); + if (state->regs[0].bo) { + /* VERTEX RESOURCE, we preted there is 2 bo to relocate so + * we have single case btw VERTEX & TEXTURE resource + */ + r600_bo_reference(ctx->radeon, &block->reloc[1].bo, state->regs[0].bo); + r600_bo_reference(ctx->radeon, &block->reloc[2].bo, state->regs[0].bo); + state->regs[0].bo->fence = ctx->radeon->fence; + } else { + /* TEXTURE RESOURCE */ + r600_bo_reference(ctx->radeon, &block->reloc[1].bo, state->regs[2].bo); + r600_bo_reference(ctx->radeon, &block->reloc[2].bo, state->regs[3].bo); + state->regs[2].bo->fence = ctx->radeon->fence; + state->regs[3].bo->fence = ctx->radeon->fence; + } + } + r600_context_dirty_block(ctx, block, dirty, 6); } void r600_context_pipe_state_set_ps_resource(struct r600_context *ctx, struct r600_pipe_state *state, unsigned rid) From 02522b76a1562f8b7317a25e2705927f7bbfed07 Mon Sep 17 00:00:00 2001 From: Bas Nieuwenhuizen Date: Wed, 13 Apr 2011 20:36:15 +0200 Subject: [PATCH 352/420] r600g: don't flush caches if we already did so, even for a subset of the flags Merging the flushes that are left doesn't seem to give a significant performance improvement Signed-off-by: Dave Airlie --- src/gallium/winsys/r600/drm/r600_hw_context.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/gallium/winsys/r600/drm/r600_hw_context.c b/src/gallium/winsys/r600/drm/r600_hw_context.c index c5d81f1a3a2..d91d8f61928 100644 --- a/src/gallium/winsys/r600/drm/r600_hw_context.c +++ b/src/gallium/winsys/r600/drm/r600_hw_context.c @@ -800,8 +800,8 @@ void r600_context_bo_flush(struct r600_context *ctx, unsigned flush_flags, struct radeon_bo *bo; bo = r600_bo_get_bo(rbo); - /* if bo has already been flush */ - if (!(bo->last_flush ^ flush_flags)) { + /* if bo has already been flushed */ + if (!(~bo->last_flush & flush_flags)) { bo->last_flush &= flush_mask; return; } From a6e32da8bd7a79eaa36f410edc357a10f878ac30 Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Tue, 19 Apr 2011 10:00:03 +1000 Subject: [PATCH 353/420] r600g: consolidate r600/evergreen code for resource emission. These really didn't have much difference, and totally not inline material. Signed-off-by: Dave Airlie --- .../winsys/r600/drm/evergreen_hw_context.c | 40 ++----------------- src/gallium/winsys/r600/drm/r600_hw_context.c | 7 ++-- src/gallium/winsys/r600/drm/r600_priv.h | 2 +- 3 files changed, 8 insertions(+), 41 deletions(-) diff --git a/src/gallium/winsys/r600/drm/evergreen_hw_context.c b/src/gallium/winsys/r600/drm/evergreen_hw_context.c index 670cbf7804e..4104a1a0c19 100644 --- a/src/gallium/winsys/r600/drm/evergreen_hw_context.c +++ b/src/gallium/winsys/r600/drm/evergreen_hw_context.c @@ -633,59 +633,25 @@ out_err: return r; } -static inline void evergreen_context_pipe_state_set_resource(struct r600_context *ctx, struct r600_pipe_state *state, unsigned offset) -{ - struct r600_range *range; - struct r600_block *block; - int i; - - range = &ctx->range[CTX_RANGE_ID(ctx, offset)]; - block = range->blocks[CTX_BLOCK_ID(ctx, offset)]; - if (state == NULL) { - block->status &= ~(R600_BLOCK_STATUS_ENABLED | R600_BLOCK_STATUS_DIRTY); - r600_bo_reference(ctx->radeon, &block->reloc[1].bo, NULL); - r600_bo_reference(ctx->radeon , &block->reloc[2].bo, NULL); - LIST_DELINIT(&block->list); - return; - } - for (i = 0; i < 8; i++) - block->reg[i] = state->regs[i].value; - - r600_bo_reference(ctx->radeon, &block->reloc[1].bo, NULL); - r600_bo_reference(ctx->radeon , &block->reloc[2].bo, NULL); - if (state->regs[0].bo) { - /* VERTEX RESOURCE, we preted there is 2 bo to relocate so - * we have single case btw VERTEX & TEXTURE resource - */ - r600_bo_reference(ctx->radeon, &block->reloc[1].bo, state->regs[0].bo); - r600_bo_reference(ctx->radeon, &block->reloc[2].bo, state->regs[0].bo); - } else { - /* TEXTURE RESOURCE */ - r600_bo_reference(ctx->radeon, &block->reloc[1].bo, state->regs[2].bo); - r600_bo_reference(ctx->radeon, &block->reloc[2].bo, state->regs[3].bo); - } - r600_context_dirty_block(ctx, block, R600_BLOCK_STATUS_DIRTY, 7); -} - void evergreen_context_pipe_state_set_ps_resource(struct r600_context *ctx, struct r600_pipe_state *state, unsigned rid) { unsigned offset = R_030000_SQ_TEX_RESOURCE_WORD0_0 + 0x20 * rid; - evergreen_context_pipe_state_set_resource(ctx, state, offset); + r600_context_pipe_state_set_resource(ctx, state, offset); } void evergreen_context_pipe_state_set_vs_resource(struct r600_context *ctx, struct r600_pipe_state *state, unsigned rid) { unsigned offset = R_030000_SQ_TEX_RESOURCE_WORD0_0 + 0x1600 + 0x20 * rid; - evergreen_context_pipe_state_set_resource(ctx, state, offset); + r600_context_pipe_state_set_resource(ctx, state, offset); } void evergreen_context_pipe_state_set_fs_resource(struct r600_context *ctx, struct r600_pipe_state *state, unsigned rid) { unsigned offset = R_030000_SQ_TEX_RESOURCE_WORD0_0 + 0x7C00 + 0x20 * rid; - evergreen_context_pipe_state_set_resource(ctx, state, offset); + r600_context_pipe_state_set_resource(ctx, state, offset); } static inline void evergreen_context_pipe_state_set_sampler(struct r600_context *ctx, struct r600_pipe_state *state, unsigned offset) diff --git a/src/gallium/winsys/r600/drm/r600_hw_context.c b/src/gallium/winsys/r600/drm/r600_hw_context.c index d91d8f61928..9aa9cefdd56 100644 --- a/src/gallium/winsys/r600/drm/r600_hw_context.c +++ b/src/gallium/winsys/r600/drm/r600_hw_context.c @@ -875,12 +875,13 @@ void r600_context_pipe_state_set(struct r600_context *ctx, struct r600_pipe_stat } } -static inline void r600_context_pipe_state_set_resource(struct r600_context *ctx, struct r600_pipe_state *state, unsigned offset) +void r600_context_pipe_state_set_resource(struct r600_context *ctx, struct r600_pipe_state *state, unsigned offset) { struct r600_range *range; struct r600_block *block; int i; int dirty; + int num_regs = ctx->radeon->chip_class >= EVERGREEN ? 8 : 7; range = &ctx->range[CTX_RANGE_ID(ctx, offset)]; block = range->blocks[CTX_BLOCK_ID(ctx, offset)]; @@ -894,7 +895,7 @@ static inline void r600_context_pipe_state_set_resource(struct r600_context *ctx dirty = block->status & R600_BLOCK_STATUS_DIRTY; - for (i = 0; i < 7; i++) { + for (i = 0; i < num_regs; i++) { if (block->reg[i] != state->regs[i].value) { dirty |= R600_BLOCK_STATUS_DIRTY; block->reg[i] = state->regs[i].value; @@ -941,7 +942,7 @@ static inline void r600_context_pipe_state_set_resource(struct r600_context *ctx state->regs[3].bo->fence = ctx->radeon->fence; } } - r600_context_dirty_block(ctx, block, dirty, 6); + r600_context_dirty_block(ctx, block, dirty, num_regs - 1); } void r600_context_pipe_state_set_ps_resource(struct r600_context *ctx, struct r600_pipe_state *state, unsigned rid) diff --git a/src/gallium/winsys/r600/drm/r600_priv.h b/src/gallium/winsys/r600/drm/r600_priv.h index faf47e82ab8..b48287d7d14 100644 --- a/src/gallium/winsys/r600/drm/r600_priv.h +++ b/src/gallium/winsys/r600/drm/r600_priv.h @@ -154,7 +154,7 @@ void r600_context_bo_flush(struct r600_context *ctx, unsigned flush_flags, unsigned flush_mask, struct r600_bo *rbo); struct r600_bo *r600_context_reg_bo(struct r600_context *ctx, unsigned offset); int r600_context_add_block(struct r600_context *ctx, const struct r600_reg *reg, unsigned nreg); - +void r600_context_pipe_state_set_resource(struct r600_context *ctx, struct r600_pipe_state *state, unsigned offset); /* * r600_bo.c */ From 5b5a16e3203379d7a54d4657df7c1357d14df058 Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Tue, 19 Apr 2011 10:04:02 +1000 Subject: [PATCH 354/420] r600g: deinline some large functions. really at these sort of sizes these are pointless inlines. Signed-off-by: Dave Airlie --- src/gallium/winsys/r600/drm/r600_hw_context.c | 76 +++++++++++++++++ src/gallium/winsys/r600/drm/r600_priv.h | 83 ++----------------- 2 files changed, 83 insertions(+), 76 deletions(-) diff --git a/src/gallium/winsys/r600/drm/r600_hw_context.c b/src/gallium/winsys/r600/drm/r600_hw_context.c index 9aa9cefdd56..63258d65c24 100644 --- a/src/gallium/winsys/r600/drm/r600_hw_context.c +++ b/src/gallium/winsys/r600/drm/r600_hw_context.c @@ -838,6 +838,42 @@ void r600_context_bo_reloc(struct r600_context *ctx, u32 *pm4, struct r600_bo *r *pm4 = bo->reloc_id; } +void r600_context_reg(struct r600_context *ctx, + unsigned offset, unsigned value, + unsigned mask) +{ + struct r600_range *range; + struct r600_block *block; + unsigned id; + + range = &ctx->range[CTX_RANGE_ID(ctx, offset)]; + block = range->blocks[CTX_BLOCK_ID(ctx, offset)]; + id = (offset - block->start_offset) >> 2; + block->reg[id] &= ~mask; + block->reg[id] |= value; + if (!(block->status & R600_BLOCK_STATUS_DIRTY)) { + ctx->pm4_dirty_cdwords += block->pm4_ndwords; + block->status |= R600_BLOCK_STATUS_ENABLED; + block->status |= R600_BLOCK_STATUS_DIRTY; + LIST_ADDTAIL(&block->list,&ctx->dirty); + } +} + +void r600_context_dirty_block(struct r600_context *ctx, struct r600_block *block, + int dirty, int index) +{ + if (dirty && (index + 1) > block->nreg_dirty) + block->nreg_dirty = index + 1; + + if ((dirty != (block->status & R600_BLOCK_STATUS_DIRTY)) || !(block->status & R600_BLOCK_STATUS_ENABLED)) { + + block->status |= R600_BLOCK_STATUS_ENABLED; + block->status |= R600_BLOCK_STATUS_DIRTY; + ctx->pm4_dirty_cdwords += block->pm4_ndwords + block->pm4_flush_ndwords; + LIST_ADDTAIL(&block->list,&ctx->dirty); + } +} + void r600_context_pipe_state_set(struct r600_context *ctx, struct r600_pipe_state *state) { struct r600_range *range; @@ -1055,6 +1091,46 @@ struct r600_bo *r600_context_reg_bo(struct r600_context *ctx, unsigned offset) return NULL; } +void r600_context_block_emit_dirty(struct r600_context *ctx, struct r600_block *block) +{ + int id; + + if (block->nreg_dirty == 0 && block->nbo == 0 && !(block->flags & REG_FLAG_DIRTY_ALWAYS)) { + goto out; + } + + for (int j = 0; j < block->nreg; j++) { + if (block->pm4_bo_index[j]) { + /* find relocation */ + id = block->pm4_bo_index[j]; + r600_context_bo_reloc(ctx, + &block->pm4[block->reloc[id].bo_pm4_index], + block->reloc[id].bo); + r600_context_bo_flush(ctx, + block->reloc[id].flush_flags, + block->reloc[id].flush_mask, + block->reloc[id].bo); + } + } + memcpy(&ctx->pm4[ctx->pm4_cdwords], block->pm4, block->pm4_ndwords * 4); + ctx->pm4_cdwords += block->pm4_ndwords; + + if (block->nreg_dirty != block->nreg && block->nbo == 0 && !(block->flags & REG_FLAG_DIRTY_ALWAYS)) { + int new_dwords = block->nreg_dirty; + uint32_t oldword, newword; + ctx->pm4_cdwords -= block->pm4_ndwords; + newword = oldword = ctx->pm4[ctx->pm4_cdwords]; + newword &= PKT_COUNT_C; + newword |= PKT_COUNT_S(new_dwords); + ctx->pm4[ctx->pm4_cdwords] = newword; + ctx->pm4_cdwords += new_dwords + 2; + } +out: + block->status ^= R600_BLOCK_STATUS_DIRTY; + block->nreg_dirty = 0; + LIST_DELINIT(&block->list); +} + void r600_context_draw(struct r600_context *ctx, const struct r600_draw *draw) { struct r600_bo *cb[8]; diff --git a/src/gallium/winsys/r600/drm/r600_priv.h b/src/gallium/winsys/r600/drm/r600_priv.h index b48287d7d14..ed0f3e584d3 100644 --- a/src/gallium/winsys/r600/drm/r600_priv.h +++ b/src/gallium/winsys/r600/drm/r600_priv.h @@ -155,6 +155,13 @@ void r600_context_bo_flush(struct r600_context *ctx, unsigned flush_flags, struct r600_bo *r600_context_reg_bo(struct r600_context *ctx, unsigned offset); int r600_context_add_block(struct r600_context *ctx, const struct r600_reg *reg, unsigned nreg); void r600_context_pipe_state_set_resource(struct r600_context *ctx, struct r600_pipe_state *state, unsigned offset); +void r600_context_block_emit_dirty(struct r600_context *ctx, struct r600_block *block); +void r600_context_dirty_block(struct r600_context *ctx, struct r600_block *block, + int dirty, int index); + +void r600_context_reg(struct r600_context *ctx, + unsigned offset, unsigned value, + unsigned mask); /* * r600_bo.c */ @@ -179,82 +186,6 @@ struct r600_bo *r600_bomgr_bo_create(struct r600_bomgr *mgr, #define CTX_RANGE_ID(ctx, offset) (((offset) >> (ctx)->hash_shift) & 255) #define CTX_BLOCK_ID(ctx, offset) ((offset) & ((1 << (ctx)->hash_shift) - 1)) -static void inline r600_context_reg(struct r600_context *ctx, - unsigned offset, unsigned value, - unsigned mask) -{ - struct r600_range *range; - struct r600_block *block; - unsigned id; - - range = &ctx->range[CTX_RANGE_ID(ctx, offset)]; - block = range->blocks[CTX_BLOCK_ID(ctx, offset)]; - id = (offset - block->start_offset) >> 2; - block->reg[id] &= ~mask; - block->reg[id] |= value; - if (!(block->status & R600_BLOCK_STATUS_DIRTY)) { - ctx->pm4_dirty_cdwords += block->pm4_ndwords; - block->status |= R600_BLOCK_STATUS_ENABLED; - block->status |= R600_BLOCK_STATUS_DIRTY; - LIST_ADDTAIL(&block->list,&ctx->dirty); - } -} - -static inline void r600_context_dirty_block(struct r600_context *ctx, struct r600_block *block, - int dirty, int index) -{ - if (dirty && (index + 1) > block->nreg_dirty) - block->nreg_dirty = index + 1; - - if ((dirty != (block->status & R600_BLOCK_STATUS_DIRTY)) || !(block->status & R600_BLOCK_STATUS_ENABLED)) { - - block->status |= R600_BLOCK_STATUS_ENABLED; - block->status |= R600_BLOCK_STATUS_DIRTY; - ctx->pm4_dirty_cdwords += block->pm4_ndwords + block->pm4_flush_ndwords; - LIST_ADDTAIL(&block->list,&ctx->dirty); - } -} - -static inline void r600_context_block_emit_dirty(struct r600_context *ctx, struct r600_block *block) -{ - int id; - - if (block->nreg_dirty == 0 && block->nbo == 0 && !(block->flags & REG_FLAG_DIRTY_ALWAYS)) { - goto out; - } - - for (int j = 0; j < block->nreg; j++) { - if (block->pm4_bo_index[j]) { - /* find relocation */ - id = block->pm4_bo_index[j]; - r600_context_bo_reloc(ctx, - &block->pm4[block->reloc[id].bo_pm4_index], - block->reloc[id].bo); - r600_context_bo_flush(ctx, - block->reloc[id].flush_flags, - block->reloc[id].flush_mask, - block->reloc[id].bo); - } - } - memcpy(&ctx->pm4[ctx->pm4_cdwords], block->pm4, block->pm4_ndwords * 4); - ctx->pm4_cdwords += block->pm4_ndwords; - - if (block->nreg_dirty != block->nreg && block->nbo == 0 && !(block->flags & REG_FLAG_DIRTY_ALWAYS)) { - int new_dwords = block->nreg_dirty; - uint32_t oldword, newword; - ctx->pm4_cdwords -= block->pm4_ndwords; - newword = oldword = ctx->pm4[ctx->pm4_cdwords]; - newword &= PKT_COUNT_C; - newword |= PKT_COUNT_S(new_dwords); - ctx->pm4[ctx->pm4_cdwords] = newword; - ctx->pm4_cdwords += new_dwords + 2; - } -out: - block->status ^= R600_BLOCK_STATUS_DIRTY; - block->nreg_dirty = 0; - LIST_DELINIT(&block->list); -} - /* * radeon_bo.c */ From f05adb83f5fed4b406670585ac42c290bf88bc0d Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Tue, 19 Apr 2011 10:08:18 +1000 Subject: [PATCH 355/420] r600g: add dirty tracking to context reg. just makes the code more consistent. Signed-off-by: Dave Airlie --- src/gallium/winsys/r600/drm/r600_hw_context.c | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/gallium/winsys/r600/drm/r600_hw_context.c b/src/gallium/winsys/r600/drm/r600_hw_context.c index 63258d65c24..403dc241b54 100644 --- a/src/gallium/winsys/r600/drm/r600_hw_context.c +++ b/src/gallium/winsys/r600/drm/r600_hw_context.c @@ -845,18 +845,23 @@ void r600_context_reg(struct r600_context *ctx, struct r600_range *range; struct r600_block *block; unsigned id; + unsigned new_val; + int dirty; range = &ctx->range[CTX_RANGE_ID(ctx, offset)]; block = range->blocks[CTX_BLOCK_ID(ctx, offset)]; id = (offset - block->start_offset) >> 2; - block->reg[id] &= ~mask; - block->reg[id] |= value; - if (!(block->status & R600_BLOCK_STATUS_DIRTY)) { - ctx->pm4_dirty_cdwords += block->pm4_ndwords; - block->status |= R600_BLOCK_STATUS_ENABLED; - block->status |= R600_BLOCK_STATUS_DIRTY; - LIST_ADDTAIL(&block->list,&ctx->dirty); + + dirty = block->status & R600_BLOCK_STATUS_DIRTY; + + new_val = block->reg[id]; + new_val &= ~mask; + new_val |= value; + if (new_val != block->reg[id]) { + dirty |= R600_BLOCK_STATUS_DIRTY; + block->reg[id] = new_val; } + r600_context_dirty_block(ctx, block, dirty, id); } void r600_context_dirty_block(struct r600_context *ctx, struct r600_block *block, From f41e1db3273a31285360241c4342f0a403ee0b03 Mon Sep 17 00:00:00 2001 From: Bryan Cain Date: Mon, 18 Apr 2011 01:39:08 -0500 Subject: [PATCH 356/420] glsl: fix conversions from uint to bool and from float/bool to uint Reviewed-by: Kenneth Graunke Signed-off-by: Ian Romanick --- src/glsl/ir_validate.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/glsl/ir_validate.cpp b/src/glsl/ir_validate.cpp index ec79d05cae9..7b1c19d65aa 100644 --- a/src/glsl/ir_validate.cpp +++ b/src/glsl/ir_validate.cpp @@ -254,7 +254,7 @@ ir_validate::visit_leave(ir_expression *ir) case ir_unop_f2i: assert(ir->operands[0]->type->base_type == GLSL_TYPE_FLOAT); - assert(ir->type->base_type == GLSL_TYPE_INT); + assert(ir->type->is_integer()); break; case ir_unop_i2f: assert(ir->operands[0]->type->base_type == GLSL_TYPE_INT); @@ -269,12 +269,12 @@ ir_validate::visit_leave(ir_expression *ir) assert(ir->type->base_type == GLSL_TYPE_FLOAT); break; case ir_unop_i2b: - assert(ir->operands[0]->type->base_type == GLSL_TYPE_INT); + assert(ir->operands[0]->type->is_integer()); assert(ir->type->base_type == GLSL_TYPE_BOOL); break; case ir_unop_b2i: assert(ir->operands[0]->type->base_type == GLSL_TYPE_BOOL); - assert(ir->type->base_type == GLSL_TYPE_INT); + assert(ir->type->is_integer()); break; case ir_unop_u2f: assert(ir->operands[0]->type->base_type == GLSL_TYPE_UINT); From ffc1d166d24532aeaa4dcf06a431e43ab7e7e315 Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Mon, 18 Apr 2011 21:16:14 -0700 Subject: [PATCH 357/420] r300/compiler: Fix dataflow analysis bug with ELSE blocks Writes within ELSE blocks were being ignored which prevented us from discovering all possible writers for some register values. Fixes piglit glsl-fs-raytrace-bug27060 --- src/mesa/drivers/dri/r300/compiler/radeon_dataflow.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_dataflow.c b/src/mesa/drivers/dri/r300/compiler/radeon_dataflow.c index c080d5aecc6..d1a7eab50f7 100644 --- a/src/mesa/drivers/dri/r300/compiler/radeon_dataflow.c +++ b/src/mesa/drivers/dri/r300/compiler/radeon_dataflow.c @@ -704,9 +704,16 @@ static void get_readers_for_single_write( &d->BranchMasks[branch_depth]; if (masks->HasElse) { + /* Abort on read for components that + * were written in the IF block. */ d->ReaderData->AbortOnRead |= masks->IfWriteMask & ~masks->ElseWriteMask; + /* Abort on read for components that + * were written in the ELSE block. */ + d->ReaderData->AbortOnRead |= + masks->ElseWriteMask + & ~d->AliveWriteMask; d->AliveWriteMask = masks->IfWriteMask ^ ((masks->IfWriteMask ^ masks->ElseWriteMask) From 723e35d4a6a0cc103109c326e1c523f18f60fd2a Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Tue, 19 Apr 2011 16:39:50 +1000 Subject: [PATCH 358/420] r600g: make loop const always flush this needs revisiting, we really don't want to be flushing all 32 of these, but currently we don't flush any of them, and it seems to have caused a regression as reported on irc with doom3 on evergreen. Signed-off-by: Dave Airlie --- src/gallium/winsys/r600/drm/evergreen_hw_context.c | 2 +- src/gallium/winsys/r600/drm/r600_hw_context.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/gallium/winsys/r600/drm/evergreen_hw_context.c b/src/gallium/winsys/r600/drm/evergreen_hw_context.c index 4104a1a0c19..b16ba073328 100644 --- a/src/gallium/winsys/r600/drm/evergreen_hw_context.c +++ b/src/gallium/winsys/r600/drm/evergreen_hw_context.c @@ -499,7 +499,7 @@ static int evergreen_loop_const_init(struct r600_context *ctx, u32 offset) r600_loop_consts[i].opcode = PKT3_SET_LOOP_CONST; r600_loop_consts[i].offset_base = EVERGREEN_LOOP_CONST_OFFSET; r600_loop_consts[i].offset = EVERGREEN_LOOP_CONST_OFFSET + ((offset + i) * 4); - r600_loop_consts[i].flags = 0; + r600_loop_consts[i].flags = REG_FLAG_DIRTY_ALWAYS; r600_loop_consts[i].flush_flags = 0; } return r600_context_add_block(ctx, r600_loop_consts, nreg); diff --git a/src/gallium/winsys/r600/drm/r600_hw_context.c b/src/gallium/winsys/r600/drm/r600_hw_context.c index 403dc241b54..d0bef8a7ee9 100644 --- a/src/gallium/winsys/r600/drm/r600_hw_context.c +++ b/src/gallium/winsys/r600/drm/r600_hw_context.c @@ -578,7 +578,7 @@ static int r600_loop_const_init(struct r600_context *ctx, u32 offset) r600_loop_consts[i].opcode = PKT3_SET_LOOP_CONST; r600_loop_consts[i].offset_base = R600_LOOP_CONST_OFFSET; r600_loop_consts[i].offset = R600_LOOP_CONST_OFFSET + ((offset + i) * 4); - r600_loop_consts[i].flags = 0; + r600_loop_consts[i].flags = REG_FLAG_DIRTY_ALWAYS; r600_loop_consts[i].flush_flags = 0; r600_loop_consts[i].flush_mask = 0; } From c98fa6be4bacea22e0310e7f0e447d4eaa2a78e9 Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Tue, 19 Apr 2011 18:44:43 +1000 Subject: [PATCH 359/420] r600g: fix warnings with piglit texture-rg test. Fill in the swaps for the formats to fix warnings. Signed-off-by: Dave Airlie --- src/gallium/drivers/r600/eg_state_inlines.h | 3 +++ src/gallium/drivers/r600/r600_state_inlines.h | 3 +++ 2 files changed, 6 insertions(+) diff --git a/src/gallium/drivers/r600/eg_state_inlines.h b/src/gallium/drivers/r600/eg_state_inlines.h index cae3888051b..627dcb8e07f 100644 --- a/src/gallium/drivers/r600/eg_state_inlines.h +++ b/src/gallium/drivers/r600/eg_state_inlines.h @@ -367,10 +367,13 @@ static inline uint32_t r600_translate_colorswap(enum pipe_format format) case PIPE_FORMAT_B10G10R10A2_UNORM: return V_028C70_SWAP_ALT; + case PIPE_FORMAT_R32_FLOAT: + case PIPE_FORMAT_R16G16_FLOAT: case PIPE_FORMAT_R16G16_UNORM: return V_028C70_SWAP_STD; /* 64-bit buffers. */ + case PIPE_FORMAT_R32G32_FLOAT: case PIPE_FORMAT_R16G16B16A16_UNORM: case PIPE_FORMAT_R16G16B16A16_SNORM: case PIPE_FORMAT_R16G16B16A16_FLOAT: diff --git a/src/gallium/drivers/r600/r600_state_inlines.h b/src/gallium/drivers/r600/r600_state_inlines.h index 3d0360485aa..ebb372b244f 100644 --- a/src/gallium/drivers/r600/r600_state_inlines.h +++ b/src/gallium/drivers/r600/r600_state_inlines.h @@ -362,9 +362,12 @@ static inline uint32_t r600_translate_colorswap(enum pipe_format format) return V_0280A0_SWAP_ALT; case PIPE_FORMAT_R16G16_UNORM: + case PIPE_FORMAT_R16G16_FLOAT: + case PIPE_FORMAT_R32_FLOAT: return V_0280A0_SWAP_STD; /* 64-bit buffers. */ + case PIPE_FORMAT_R32G32_FLOAT: case PIPE_FORMAT_R16G16B16A16_UNORM: case PIPE_FORMAT_R16G16B16A16_SNORM: case PIPE_FORMAT_R16G16B16A16_FLOAT: From ab13ebf7c138cc54b405b990159c6b8ed0531d58 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Sun, 17 Apr 2011 23:41:33 +0200 Subject: [PATCH 360/420] r200: enable some extensions Such as: - GL_ARB_half_float_pixel - GL_ARB_vertex_array_object - GL_APPLE_vertex_array_object - GL_EXT_gpu_program_parameters --- src/mesa/drivers/dri/r200/r200_context.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/mesa/drivers/dri/r200/r200_context.c b/src/mesa/drivers/dri/r200/r200_context.c index 47732633c2b..4e08d3431bf 100644 --- a/src/mesa/drivers/dri/r200/r200_context.c +++ b/src/mesa/drivers/dri/r200/r200_context.c @@ -62,13 +62,16 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #include "radeon_span.h" #define need_GL_ARB_occlusion_query +#define need_GL_ARB_vertex_array_object #define need_GL_ARB_vertex_program +#define need_GL_APPLE_vertex_array_object #define need_GL_ATI_fragment_shader #define need_GL_EXT_blend_minmax #define need_GL_EXT_fog_coord #define need_GL_EXT_secondary_color #define need_GL_EXT_blend_equation_separate #define need_GL_EXT_blend_func_separate +#define need_GL_EXT_gpu_program_parameters #define need_GL_NV_vertex_program #define need_GL_ARB_point_parameters #define need_GL_EXT_framebuffer_object @@ -112,6 +115,7 @@ static const GLubyte *r200GetString( struct gl_context *ctx, GLenum name ) */ static const struct dri_extension card_extensions[] = { + { "GL_ARB_half_float_pixel", NULL }, { "GL_ARB_multitexture", NULL }, { "GL_ARB_occlusion_query", GL_ARB_occlusion_query_functions}, { "GL_ARB_texture_border_clamp", NULL }, @@ -120,6 +124,7 @@ static const struct dri_extension card_extensions[] = { "GL_ARB_texture_env_dot3", NULL }, { "GL_ARB_texture_env_crossbar", NULL }, { "GL_ARB_texture_mirrored_repeat", NULL }, + { "GL_ARB_vertex_array_object", GL_ARB_vertex_array_object_functions}, { "GL_EXT_blend_minmax", GL_EXT_blend_minmax_functions }, { "GL_EXT_blend_subtract", NULL }, { "GL_EXT_fog_coord", GL_EXT_fog_coord_functions }, @@ -133,6 +138,7 @@ static const struct dri_extension card_extensions[] = { "GL_EXT_texture_lod_bias", NULL }, { "GL_EXT_texture_mirror_clamp", NULL }, { "GL_EXT_texture_rectangle", NULL }, + { "GL_APPLE_vertex_array_object", GL_APPLE_vertex_array_object_functions }, { "GL_ATI_texture_env_combine3", NULL }, { "GL_ATI_texture_mirror_once", NULL }, { "GL_MESA_pack_invert", NULL }, @@ -150,7 +156,9 @@ static const struct dri_extension blend_extensions[] = { }; static const struct dri_extension ARB_vp_extension[] = { - { "GL_ARB_vertex_program", GL_ARB_vertex_program_functions } + { "GL_ARB_vertex_program", GL_ARB_vertex_program_functions }, + { "GL_EXT_gpu_program_parameters", GL_EXT_gpu_program_parameters_functions}, + { NULL, NULL } }; static const struct dri_extension NV_vp_extension[] = { @@ -455,7 +463,7 @@ GLboolean r200CreateContext( gl_api api, driInitExtensions( ctx, blend_extensions, GL_FALSE ); } if(rmesa->radeon.radeonScreen->drmSupportsVertexProgram) - driInitSingleExtension( ctx, ARB_vp_extension ); + driInitExtensions( ctx, ARB_vp_extension, GL_FALSE ); if(driQueryOptionb(&rmesa->radeon.optionCache, "nv_vertex_program")) driInitSingleExtension( ctx, NV_vp_extension ); From 5722286be21a2f766a5f44e19e8005023d26b959 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Tue, 19 Apr 2011 12:28:51 +0200 Subject: [PATCH 361/420] configure.ac: rename --enable-gallium-radeon to --enable-gallium-r300 Also fix up the help string for both r300 and r600. --- configure.ac | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/configure.ac b/configure.ac index ddd860813bb..8989c2bd424 100644 --- a/configure.ac +++ b/configure.ac @@ -1773,16 +1773,15 @@ fi dnl dnl Gallium Radeon r300g configuration dnl -AC_ARG_ENABLE([gallium-radeon], - [AS_HELP_STRING([--enable-gallium-radeon], - [build gallium radeon @<:@default=disabled@:>@])], - [enable_gallium_radeon="$enableval"], - [enable_gallium_radeon=auto]) -if test "x$enable_gallium_radeon" = xauto; then +AC_ARG_ENABLE([gallium-r300], + [AS_HELP_STRING([--enable-gallium-r300], + [build gallium r300 @<:@default=disabled@:>@])], + [enable_gallium_r300="$enableval"], + [enable_gallium_r300=auto]) +if test "x$enable_gallium_r300" = xauto; then GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS r300" gallium_check_st "radeon/drm" "dri-r300" -fi -if test "x$enable_gallium_radeon" = xyes; then +elif test "x$enable_gallium_r300" = xyes; then GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS r300" gallium_check_st "radeon/drm" "dri-r300" "xorg-radeon" fi @@ -1792,7 +1791,7 @@ dnl Gallium Radeon r600g configuration dnl AC_ARG_ENABLE([gallium-r600], [AS_HELP_STRING([--enable-gallium-r600], - [build gallium radeon @<:@default=disabled@:>@])], + [build gallium r600 @<:@default=disabled@:>@])], [enable_gallium_r600="$enableval"], [enable_gallium_r600=auto]) if test "x$enable_gallium_r600" = xyes; then From 66866d642fe8f8fba141d50a81b08793c3bd63e8 Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Tue, 19 Apr 2011 20:42:48 +1000 Subject: [PATCH 362/420] r600g: add cb support for snorm formats. Check for signed type and enable SNORM. Signed-off-by: Dave Airlie --- src/gallium/drivers/r600/evergreen_state.c | 14 ++++++++------ src/gallium/drivers/r600/r600_state.c | 8 +++++--- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/src/gallium/drivers/r600/evergreen_state.c b/src/gallium/drivers/r600/evergreen_state.c index cff79fabd41..6aa22d99d0a 100644 --- a/src/gallium/drivers/r600/evergreen_state.c +++ b/src/gallium/drivers/r600/evergreen_state.c @@ -680,10 +680,17 @@ static void evergreen_cb(struct r600_pipe_context *rctx, struct r600_pipe_state level, state->cbufs[cb]->u.tex.first_layer); pitch = rtex->pitch_in_blocks[level] / 8 - 1; slice = rtex->pitch_in_blocks[level] * surf->aligned_height / 64 - 1; - ntype = V_028C70_NUMBER_UNORM; desc = util_format_description(surf->base.format); + for (i = 0; i < 4; i++) { + if (desc->channel[i].type != UTIL_FORMAT_TYPE_VOID) { + break; + } + } + ntype = V_028C70_NUMBER_UNORM; if (desc->colorspace == UTIL_FORMAT_COLORSPACE_SRGB) ntype = V_028C70_NUMBER_SRGB; + else if (desc->channel[i].type == UTIL_FORMAT_TYPE_SIGNED) + ntype = V_028C70_NUMBER_SNORM; format = r600_translate_colorformat(surf->base.format); swap = r600_translate_colorswap(surf->base.format); @@ -698,11 +705,6 @@ static void evergreen_cb(struct r600_pipe_context *rctx, struct r600_pipe_state S_028C70_BLEND_CLAMP(1) | S_028C70_NUMBER_TYPE(ntype); - for (i = 0; i < 4; i++) { - if (desc->channel[i].type != UTIL_FORMAT_TYPE_VOID) { - break; - } - } /* we can only set the export size if any thing is snorm/unorm component is > 11 bits, if we aren't a float, sint or uint */ diff --git a/src/gallium/drivers/r600/r600_state.c b/src/gallium/drivers/r600/r600_state.c index 3a863ae85c8..eba48f8ad74 100644 --- a/src/gallium/drivers/r600/r600_state.c +++ b/src/gallium/drivers/r600/r600_state.c @@ -742,16 +742,18 @@ static void r600_cb(struct r600_pipe_context *rctx, struct r600_pipe_state *rsta level, state->cbufs[cb]->u.tex.first_layer); pitch = rtex->pitch_in_blocks[level] / 8 - 1; slice = rtex->pitch_in_blocks[level] * surf->aligned_height / 64 - 1; - ntype = V_0280A0_NUMBER_UNORM; desc = util_format_description(surf->base.format); - if (desc->colorspace == UTIL_FORMAT_COLORSPACE_SRGB) - ntype = V_0280A0_NUMBER_SRGB; for (i = 0; i < 4; i++) { if (desc->channel[i].type != UTIL_FORMAT_TYPE_VOID) { break; } } + ntype = V_0280A0_NUMBER_UNORM; + if (desc->colorspace == UTIL_FORMAT_COLORSPACE_SRGB) + ntype = V_0280A0_NUMBER_SRGB; + else if (desc->channel[i].type == UTIL_FORMAT_TYPE_SIGNED) + ntype = V_0280A0_NUMBER_SNORM; format = r600_translate_colorformat(surf->base.format); swap = r600_translate_colorswap(surf->base.format); From 494b333b03a506738852b9e234416147a2172761 Mon Sep 17 00:00:00 2001 From: Thierry Vignaud Date: Tue, 19 Apr 2011 08:34:06 -0600 Subject: [PATCH 363/420] Makefile: add missing .cpp, .ll, .yy files Signed-off-by: Brian Paul --- Makefile | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Makefile b/Makefile index 646e152578f..e4796cfe44b 100644 --- a/Makefile +++ b/Makefile @@ -231,6 +231,8 @@ MAIN_FILES = \ $(DIRECTORY)/src/glsl/Makefile.template \ $(DIRECTORY)/src/glsl/SConscript \ $(DIRECTORY)/src/glsl/*.[ch] \ + $(DIRECTORY)/src/glsl/*.ll \ + $(DIRECTORY)/src/glsl/*.yy \ $(DIRECTORY)/src/glsl/*.[cly]pp \ $(DIRECTORY)/src/glsl/README \ $(DIRECTORY)/src/glsl/glcpp/*.[chly] \ @@ -245,6 +247,7 @@ MAIN_FILES = \ $(DIRECTORY)/src/mesa/depend \ $(MAIN_ES_FILES) \ $(DIRECTORY)/src/mesa/main/*.[chS] \ + $(DIRECTORY)/src/mesa/main/*.cpp \ $(DIRECTORY)/src/mesa/main/descrip.mms \ $(DIRECTORY)/src/mesa/math/*.[ch] \ $(DIRECTORY)/src/mesa/math/descrip.mms \ From 7a6061d7a6d9938f3454b7458df1480d856b83e2 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Tue, 19 Apr 2011 09:07:44 -0600 Subject: [PATCH 364/420] Makefile: add missing Scons files --- Makefile | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/Makefile b/Makefile index e4796cfe44b..41d1654b42a 100644 --- a/Makefile +++ b/Makefile @@ -200,6 +200,9 @@ MAIN_FILES = \ $(DIRECTORY)/configure.ac \ $(DIRECTORY)/acinclude.m4 \ $(DIRECTORY)/aclocal.m4 \ + $(DIRECTORY)/SConstruct \ + $(DIRECTORY)/common.py \ + $(DIRECTORY)/scons/*py \ $(DIRECTORY)/bin/config.guess \ $(DIRECTORY)/bin/config.sub \ $(DIRECTORY)/bin/extract_git_sha1 \ @@ -227,6 +230,8 @@ MAIN_FILES = \ $(DIRECTORY)/include/GL/vms_x_fix.h \ $(DIRECTORY)/include/GL/wglext.h \ $(DIRECTORY)/include/GL/wmesa.h \ + $(DIRECTORY)/src/getopt/SConscript \ + $(DIRECTORY)/src/getopt/getopt*.[ch] \ $(DIRECTORY)/src/glsl/Makefile \ $(DIRECTORY)/src/glsl/Makefile.template \ $(DIRECTORY)/src/glsl/SConscript \ @@ -239,7 +244,9 @@ MAIN_FILES = \ $(DIRECTORY)/src/glsl/glcpp/README \ $(DIRECTORY)/src/glsl/builtins \ $(DIRECTORY)/src/Makefile \ + $(DIRECTORY)/src/SConscript \ $(DIRECTORY)/src/mesa/Makefile* \ + $(DIRECTORY)/src/mesa/SConscript \ $(DIRECTORY)/src/mesa/sources.mak \ $(DIRECTORY)/src/mesa/descrip.mms \ $(DIRECTORY)/src/mesa/gl.pc.in \ @@ -265,6 +272,7 @@ MAIN_FILES = \ $(DIRECTORY)/src/mesa/tnl_dd/*.[ch] \ $(DIRECTORY)/src/mesa/tnl_dd/imm/*.[ch] \ $(DIRECTORY)/src/mesa/tnl_dd/imm/NOTES.imm \ + $(DIRECTORY)/src/mesa/vf/*.[ch] \ $(DIRECTORY)/src/mesa/drivers/Makefile \ $(DIRECTORY)/src/mesa/drivers/beos/*.cpp \ $(DIRECTORY)/src/mesa/drivers/beos/Makefile \ @@ -277,6 +285,9 @@ MAIN_FILES = \ $(DIRECTORY)/src/mesa/drivers/osmesa/descrip.mms \ $(DIRECTORY)/src/mesa/drivers/osmesa/osmesa.def \ $(DIRECTORY)/src/mesa/drivers/osmesa/*.[ch] \ + $(DIRECTORY)/src/mesa/drivers/dri/r300/compiler/*.[ch] \ + $(DIRECTORY)/src/mesa/drivers/dri/r300/compiler/Makefile \ + $(DIRECTORY)/src/mesa/drivers/dri/r300/compiler/SConscript \ $(DIRECTORY)/src/mesa/drivers/windows/*/*.[ch] \ $(DIRECTORY)/src/mesa/drivers/windows/*/*.def \ $(DIRECTORY)/src/mesa/drivers/x11/Makefile \ @@ -311,7 +322,9 @@ MAPI_FILES = \ $(DIRECTORY)/src/mapi/mapi/mapi_abi.py \ $(DIRECTORY)/src/mapi/mapi/sources.mak \ $(DIRECTORY)/src/mapi/mapi/*.[ch] \ + $(DIRECTORY)/src/mapi/shared-glapi/SConscript \ $(DIRECTORY)/src/mapi/vgapi/Makefile \ + $(DIRECTORY)/src/mapi/vgapi/SConscript \ $(DIRECTORY)/src/mapi/vgapi/vgapi.csv \ $(DIRECTORY)/src/mapi/vgapi/vg.pc.in @@ -324,6 +337,7 @@ EGL_FILES = \ $(DIRECTORY)/src/egl/*/*.[ch] \ $(DIRECTORY)/src/egl/*/*/Makefile \ $(DIRECTORY)/src/egl/*/*/*.[ch] \ + $(DIRECTORY)/src/egl/main/SConscript \ $(DIRECTORY)/src/egl/main/*.pc.in \ $(DIRECTORY)/src/egl/main/*.def @@ -399,6 +413,7 @@ GLUT_FILES = \ $(DIRECTORY)/include/GL/glut.h \ $(DIRECTORY)/include/GL/glutf90.h \ $(DIRECTORY)/src/glut/glx/Makefile* \ + $(DIRECTORY)/src/glut/glx/SConscript \ $(DIRECTORY)/src/glut/glx/depend \ $(DIRECTORY)/src/glut/glx/glut.pc.in \ $(DIRECTORY)/src/glut/glx/*def \ From 3c3a2596033d88848392c4aab5cc16d96afe149f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Cano?= Date: Tue, 19 Apr 2011 11:14:23 -0400 Subject: [PATCH 365/420] r600c: add big endian support for r6xx/r7xx Signed-off-by: Cedric Cano Signed-off-by: Alex Deucher --- src/mesa/drivers/dri/r600/defaultendian.h | 4 +- src/mesa/drivers/dri/r600/r600_blit.c | 117 ++++++++++++-- src/mesa/drivers/dri/r600/r600_blit_shaders.h | 4 + src/mesa/drivers/dri/r600/r600_emit.c | 16 +- src/mesa/drivers/dri/r600/r600_texstate.c | 149 +++++++++++++++++- src/mesa/drivers/dri/r600/r700_assembler.c | 11 +- src/mesa/drivers/dri/r600/r700_assembler.h | 133 ++++++++++++++++ src/mesa/drivers/dri/r600/r700_chip.c | 10 +- src/mesa/drivers/dri/r600/r700_render.c | 19 +++ src/mesa/drivers/dri/radeon/radeon_common.c | 2 +- src/mesa/drivers/dri/radeon/radeon_span.c | 93 +++++++---- 11 files changed, 508 insertions(+), 50 deletions(-) diff --git a/src/mesa/drivers/dri/r600/defaultendian.h b/src/mesa/drivers/dri/r600/defaultendian.h index 32caf32cd2e..75bd61c3cd4 100644 --- a/src/mesa/drivers/dri/r600/defaultendian.h +++ b/src/mesa/drivers/dri/r600/defaultendian.h @@ -29,8 +29,8 @@ #define _DEFINEENDIAN_H_ //We have to choose a reg bits orientation if there is no compile flag for it. -#if defined(LITTLEENDIAN_CPU) -#elif defined(BIGENDIAN_CPU) +#ifdef MESA_BIG_ENDIAN +#define BIGENDIAN_CPU #else #define LITTLEENDIAN_CPU #endif diff --git a/src/mesa/drivers/dri/r600/r600_blit.c b/src/mesa/drivers/dri/r600/r600_blit.c index 31c32d62f9a..2d47afdcbbf 100644 --- a/src/mesa/drivers/dri/r600/r600_blit.c +++ b/src/mesa/drivers/dri/r600/r600_blit.c @@ -94,17 +94,17 @@ set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_forma { uint32_t cb_color0_base, cb_color0_size = 0, cb_color0_info = 0, cb_color0_view = 0; int id = 0; - uint32_t comp_swap, format; + uint32_t endian, comp_swap, format; BATCH_LOCALS(&context->radeon); cb_color0_base = dst_offset / 256; + endian = ENDIAN_NONE; SETfield(cb_color0_size, (nPitchInPixel / 8) - 1, PITCH_TILE_MAX_shift, PITCH_TILE_MAX_mask); SETfield(cb_color0_size, ((nPitchInPixel * h) / 64) - 1, SLICE_TILE_MAX_shift, SLICE_TILE_MAX_mask); - SETfield(cb_color0_info, ENDIAN_NONE, ENDIAN_shift, ENDIAN_mask); SETfield(cb_color0_info, ARRAY_LINEAR_GENERAL, CB_COLOR0_INFO__ARRAY_MODE_shift, CB_COLOR0_INFO__ARRAY_MODE_mask); @@ -112,24 +112,36 @@ set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_forma switch(mesa_format) { case MESA_FORMAT_RGBA8888: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_8_8_8_8; comp_swap = SWAP_STD_REV; SETbit(cb_color0_info, SOURCE_FORMAT_bit); SETfield(cb_color0_info, NUMBER_UNORM, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_SIGNED_RGBA8888: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_8_8_8_8; comp_swap = SWAP_STD_REV; SETbit(cb_color0_info, SOURCE_FORMAT_bit); SETfield(cb_color0_info, NUMBER_SNORM, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_RGBA8888_REV: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_8_8_8_8; comp_swap = SWAP_STD; SETbit(cb_color0_info, SOURCE_FORMAT_bit); SETfield(cb_color0_info, NUMBER_UNORM, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_SIGNED_RGBA8888_REV: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_8_8_8_8; comp_swap = SWAP_STD; SETbit(cb_color0_info, SOURCE_FORMAT_bit); @@ -137,6 +149,9 @@ set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_forma break; case MESA_FORMAT_ARGB8888: case MESA_FORMAT_XRGB8888: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_8_8_8_8; comp_swap = SWAP_ALT; SETbit(cb_color0_info, SOURCE_FORMAT_bit); @@ -144,54 +159,81 @@ set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_forma break; case MESA_FORMAT_ARGB8888_REV: case MESA_FORMAT_XRGB8888_REV: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_8_8_8_8; comp_swap = SWAP_ALT_REV; SETbit(cb_color0_info, SOURCE_FORMAT_bit); SETfield(cb_color0_info, NUMBER_UNORM, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_RGB565: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif + comp_swap = SWAP_STD_REV; format = COLOR_5_6_5; - comp_swap = SWAP_STD_REV; SETbit(cb_color0_info, SOURCE_FORMAT_bit); SETfield(cb_color0_info, NUMBER_UNORM, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_RGB565_REV: - format = COLOR_5_6_5; +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif comp_swap = SWAP_STD; + format = COLOR_5_6_5; SETbit(cb_color0_info, SOURCE_FORMAT_bit); SETfield(cb_color0_info, NUMBER_UNORM, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_ARGB4444: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_4_4_4_4; comp_swap = SWAP_ALT; SETbit(cb_color0_info, SOURCE_FORMAT_bit); SETfield(cb_color0_info, NUMBER_UNORM, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_ARGB4444_REV: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_4_4_4_4; comp_swap = SWAP_ALT_REV; SETbit(cb_color0_info, SOURCE_FORMAT_bit); SETfield(cb_color0_info, NUMBER_UNORM, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_ARGB1555: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_1_5_5_5; comp_swap = SWAP_ALT; SETbit(cb_color0_info, SOURCE_FORMAT_bit); SETfield(cb_color0_info, NUMBER_UNORM, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_ARGB1555_REV: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_1_5_5_5; comp_swap = SWAP_ALT_REV; SETbit(cb_color0_info, SOURCE_FORMAT_bit); SETfield(cb_color0_info, NUMBER_UNORM, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_AL88: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_8_8; comp_swap = SWAP_STD; SETbit(cb_color0_info, SOURCE_FORMAT_bit); SETfield(cb_color0_info, NUMBER_UNORM, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_AL88_REV: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_8_8; comp_swap = SWAP_STD_REV; SETbit(cb_color0_info, SOURCE_FORMAT_bit); @@ -223,6 +265,9 @@ set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_forma SETfield(cb_color0_info, NUMBER_UNORM, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_RGBA_FLOAT32: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_32_32_32_32_FLOAT; comp_swap = SWAP_STD; SETbit(cb_color0_info, BLEND_FLOAT32_bit); @@ -230,12 +275,18 @@ set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_forma SETfield(cb_color0_info, NUMBER_FLOAT, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_RGBA_FLOAT16: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_16_16_16_16_FLOAT; comp_swap = SWAP_STD; CLEARbit(cb_color0_info, SOURCE_FORMAT_bit); SETfield(cb_color0_info, NUMBER_FLOAT, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_ALPHA_FLOAT32: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_32_FLOAT; comp_swap = SWAP_ALT_REV; SETbit(cb_color0_info, BLEND_FLOAT32_bit); @@ -243,12 +294,18 @@ set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_forma SETfield(cb_color0_info, NUMBER_FLOAT, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_ALPHA_FLOAT16: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_16_FLOAT; comp_swap = SWAP_ALT_REV; CLEARbit(cb_color0_info, SOURCE_FORMAT_bit); SETfield(cb_color0_info, NUMBER_FLOAT, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_LUMINANCE_FLOAT32: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_32_FLOAT; comp_swap = SWAP_ALT; SETbit(cb_color0_info, BLEND_FLOAT32_bit); @@ -256,12 +313,18 @@ set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_forma SETfield(cb_color0_info, NUMBER_FLOAT, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_LUMINANCE_FLOAT16: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_16_FLOAT; comp_swap = SWAP_ALT; CLEARbit(cb_color0_info, SOURCE_FORMAT_bit); SETfield(cb_color0_info, NUMBER_FLOAT, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_LUMINANCE_ALPHA_FLOAT32: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_32_32_FLOAT; comp_swap = SWAP_ALT_REV; SETbit(cb_color0_info, BLEND_FLOAT32_bit); @@ -269,12 +332,18 @@ set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_forma SETfield(cb_color0_info, NUMBER_FLOAT, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_LUMINANCE_ALPHA_FLOAT16: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_16_16_FLOAT; comp_swap = SWAP_ALT_REV; CLEARbit(cb_color0_info, SOURCE_FORMAT_bit); SETfield(cb_color0_info, NUMBER_FLOAT, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_INTENSITY_FLOAT32: /* X, X, X, X */ +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_32_FLOAT; comp_swap = SWAP_STD; SETbit(cb_color0_info, BLEND_FLOAT32_bit); @@ -282,6 +351,9 @@ set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_forma SETfield(cb_color0_info, NUMBER_FLOAT, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_INTENSITY_FLOAT16: /* X, X, X, X */ +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_16_FLOAT; comp_swap = SWAP_STD; CLEARbit(cb_color0_info, SOURCE_FORMAT_bit); @@ -289,6 +361,9 @@ set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_forma break; case MESA_FORMAT_X8_Z24: case MESA_FORMAT_S8_Z24: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_8_24; comp_swap = SWAP_STD; SETfield(cb_color0_info, ARRAY_1D_TILED_THIN1, @@ -297,6 +372,9 @@ set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_forma SETfield(cb_color0_info, NUMBER_UNORM, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_Z24_S8: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_24_8; comp_swap = SWAP_STD; SETfield(cb_color0_info, ARRAY_1D_TILED_THIN1, @@ -305,6 +383,9 @@ set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_forma SETfield(cb_color0_info, NUMBER_UNORM, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_Z16: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_16; comp_swap = SWAP_STD; SETfield(cb_color0_info, ARRAY_1D_TILED_THIN1, @@ -313,6 +394,9 @@ set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_forma SETfield(cb_color0_info, NUMBER_UNORM, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_Z32: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_32; comp_swap = SWAP_STD; SETfield(cb_color0_info, ARRAY_1D_TILED_THIN1, @@ -321,12 +405,18 @@ set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_forma SETfield(cb_color0_info, NUMBER_UNORM, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_SARGB8: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_8_8_8_8; comp_swap = SWAP_ALT; SETbit(cb_color0_info, SOURCE_FORMAT_bit); SETfield(cb_color0_info, NUMBER_SRGB, NUMBER_TYPE_shift, NUMBER_TYPE_mask); break; case MESA_FORMAT_SLA8: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_8_8; comp_swap = SWAP_ALT_REV; SETbit(cb_color0_info, SOURCE_FORMAT_bit); @@ -348,6 +438,7 @@ set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_forma if (context->radeon.radeonScreen->chip_family >= CHIP_FAMILY_RV770) CLEARbit(cb_color0_info, BLEND_FLOAT32_bit); + SETfield(cb_color0_info, endian, ENDIAN_shift, ENDIAN_mask); SETfield(cb_color0_info, format, CB_COLOR0_INFO__FORMAT_shift, CB_COLOR0_INFO__FORMAT_mask); SETfield(cb_color0_info, comp_swap, COMP_SWAP_shift, COMP_SWAP_mask); @@ -426,10 +517,10 @@ static inline void load_shaders(struct gl_context * ctx) shader = context->blit_bo->ptr; for(i=0; iblit_bo); @@ -521,6 +612,8 @@ static inline void set_vtx_resource(context_t *context) { struct radeon_bo *bo = context->blit_bo; + uint32_t sq_vtx_constant_word2 = 0; + BATCH_LOCALS(&context->radeon); BEGIN_BATCH_NO_AUTOSTATE(6); @@ -543,13 +636,19 @@ set_vtx_resource(context_t *context) else r700SyncSurf(context, bo, RADEON_GEM_DOMAIN_GTT, 0, VC_ACTION_ENA_bit); + sq_vtx_constant_word2 = 0 +#ifdef MESA_BIG_ENDIAN + | (SQ_ENDIAN_8IN32 << SQ_VTX_CONSTANT_WORD2_0__ENDIAN_SWAP_shift) +#endif + | (16 << SQ_VTX_CONSTANT_WORD2_0__STRIDE_shift); + BEGIN_BATCH_NO_AUTOSTATE(9 + 2); R600_OUT_BATCH(CP_PACKET3(R600_IT_SET_RESOURCE, 7)); R600_OUT_BATCH(SQ_FETCH_RESOURCE_VS_OFFSET * FETCH_RESOURCE_STRIDE); R600_OUT_BATCH(0); R600_OUT_BATCH(48 - 1); - R600_OUT_BATCH(16 << SQ_VTX_CONSTANT_WORD2_0__STRIDE_shift); + R600_OUT_BATCH(sq_vtx_constant_word2); R600_OUT_BATCH(1 << MEM_REQUEST_SIZE_shift); R600_OUT_BATCH(0); R600_OUT_BATCH(0); @@ -670,11 +769,11 @@ set_tex_resource(context_t * context, SETfield(sq_tex_resource1, FMT_8_8_8_8, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_shift, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_mask); - SETfield(sq_tex_resource4, SQ_SEL_1, + SETfield(sq_tex_resource4, SQ_SEL_Y, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(sq_tex_resource4, SQ_SEL_Z, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); - SETfield(sq_tex_resource4, SQ_SEL_W, + SETfield(sq_tex_resource4, SQ_SEL_1, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(sq_tex_resource4, SQ_SEL_X, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); diff --git a/src/mesa/drivers/dri/r600/r600_blit_shaders.h b/src/mesa/drivers/dri/r600/r600_blit_shaders.h index 492dde96368..2124f7673d7 100644 --- a/src/mesa/drivers/dri/r600/r600_blit_shaders.h +++ b/src/mesa/drivers/dri/r600/r600_blit_shaders.h @@ -10,7 +10,11 @@ const uint32_t r6xx_vs[] = 0x00000000, 0x3c000000, // SQ_VTX_INST_FETCH BUFFER_ID(0) MEGA_FETCH_COUNT(16) 0x68cd1000, // DST_GPR(0) DST_SWZ: XYZW DATA_FORMAT(35) SQ_NUM_FORMAT_SCALED SQ_FORMAT_COMP_SIGNED +#ifdef MESA_BIG_ENDIAN + 0x000a0000, // ENDIAN_SWAP(SQ_ENDIAN_8IN32) MEGA_FETCH(1) +#else 0x00080000, // ENDIAN_SWAP(SQ_ENDIAN_NONE) MEGA_FETCH(1) +#endif 0x00000000, // VTX_DWORD_PAD }; diff --git a/src/mesa/drivers/dri/r600/r600_emit.c b/src/mesa/drivers/dri/r600/r600_emit.c index 53ece9a3505..c6916ed98a3 100644 --- a/src/mesa/drivers/dri/r600/r600_emit.c +++ b/src/mesa/drivers/dri/r600/r600_emit.c @@ -100,14 +100,17 @@ GLboolean r600EmitShaderConsts(struct gl_context * ctx, int sizeinBYTE) { struct radeon_bo * pbo = (struct radeon_bo *)constbo; - uint8_t *out; + uint32_t *out; + int i; radeon_bo_map(pbo, 1); - out = (uint8_t*)(pbo->ptr); - out = (uint8_t*)ADD_POINTERS(pbo->ptr, bo_offset); + out = (uint32_t*)(pbo->ptr); + out = (uint32_t*)ADD_POINTERS(pbo->ptr, bo_offset); - memcpy(out, data, sizeinBYTE); + for(i = 0; i < sizeinBYTE / 4; i++) { + out[i] = CPU_TO_LE32(*((uint32_t *)data + i)); + } radeon_bo_unmap(pbo); @@ -123,6 +126,7 @@ GLboolean r600EmitShader(struct gl_context * ctx, radeonContextPtr radeonctx = RADEON_CONTEXT(ctx); struct radeon_bo * pbo; uint32_t *out; + int i; shader_again_alloc: pbo = radeon_bo_open(radeonctx->radeonScreen->bom, 0, @@ -154,7 +158,9 @@ shader_again_alloc: out = (uint32_t*)(pbo->ptr); - memcpy(out, data, sizeinDWORD * 4); + for(i = 0; i < sizeinDWORD; i++) { + out[i] = CPU_TO_LE32(*((uint32_t *)data + i)); + } radeon_bo_unmap(pbo); diff --git a/src/mesa/drivers/dri/r600/r600_texstate.c b/src/mesa/drivers/dri/r600/r600_texstate.c index 3568a5515be..949db29c189 100644 --- a/src/mesa/drivers/dri/r600/r600_texstate.c +++ b/src/mesa/drivers/dri/r600/r600_texstate.c @@ -109,6 +109,16 @@ static GLboolean r600GetTexFormat(struct gl_texture_object *tObj, gl_format mesa SETfield(t->SQ_TEX_RESOURCE1, FMT_8_8_8_8, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_shift, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_mask); +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, @@ -117,6 +127,7 @@ static GLboolean r600GetTexFormat(struct gl_texture_object *tObj, gl_format mesa SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif if (mesa_format == MESA_FORMAT_SIGNED_RGBA8888) { SETfield(t->SQ_TEX_RESOURCE4, SQ_FORMAT_COMP_SIGNED, FORMAT_COMP_X_shift, FORMAT_COMP_X_mask); @@ -133,6 +144,16 @@ static GLboolean r600GetTexFormat(struct gl_texture_object *tObj, gl_format mesa SETfield(t->SQ_TEX_RESOURCE1, FMT_8_8_8_8, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_shift, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_mask); +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, @@ -141,6 +162,7 @@ static GLboolean r600GetTexFormat(struct gl_texture_object *tObj, gl_format mesa SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif if (mesa_format == MESA_FORMAT_SIGNED_RGBA8888_REV) { SETfield(t->SQ_TEX_RESOURCE4, SQ_FORMAT_COMP_SIGNED, FORMAT_COMP_X_shift, FORMAT_COMP_X_mask); @@ -156,6 +178,16 @@ static GLboolean r600GetTexFormat(struct gl_texture_object *tObj, gl_format mesa SETfield(t->SQ_TEX_RESOURCE1, FMT_8_8_8_8, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_shift, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_mask); +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, @@ -164,11 +196,22 @@ static GLboolean r600GetTexFormat(struct gl_texture_object *tObj, gl_format mesa SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif break; case MESA_FORMAT_XRGB8888: SETfield(t->SQ_TEX_RESOURCE1, FMT_8_8_8_8, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_shift, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_mask); +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_1, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, @@ -177,24 +220,46 @@ static GLboolean r600GetTexFormat(struct gl_texture_object *tObj, gl_format mesa SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_1, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif break; case MESA_FORMAT_XRGB8888_REV: SETfield(t->SQ_TEX_RESOURCE1, FMT_8_8_8_8, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_shift, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_mask); +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_1, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_1, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); - SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif break; case MESA_FORMAT_ARGB8888_REV: SETfield(t->SQ_TEX_RESOURCE1, FMT_8_8_8_8, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_shift, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_mask); +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, @@ -203,11 +268,22 @@ static GLboolean r600GetTexFormat(struct gl_texture_object *tObj, gl_format mesa SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif break; case MESA_FORMAT_RGB888: SETfield(t->SQ_TEX_RESOURCE1, FMT_8_8_8, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_shift, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_mask); +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_1, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, @@ -216,11 +292,22 @@ static GLboolean r600GetTexFormat(struct gl_texture_object *tObj, gl_format mesa SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_1, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif break; case MESA_FORMAT_RGB565: SETfield(t->SQ_TEX_RESOURCE1, FMT_5_6_5, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_shift, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_mask); +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_1, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, @@ -229,11 +316,23 @@ static GLboolean r600GetTexFormat(struct gl_texture_object *tObj, gl_format mesa SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_1, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif + break; case MESA_FORMAT_RGB565_REV: SETfield(t->SQ_TEX_RESOURCE1, FMT_5_6_5, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_shift, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_mask); +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_1, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, @@ -242,11 +341,22 @@ static GLboolean r600GetTexFormat(struct gl_texture_object *tObj, gl_format mesa SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_1, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif break; case MESA_FORMAT_ARGB4444: SETfield(t->SQ_TEX_RESOURCE1, FMT_4_4_4_4, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_shift, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_mask); +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, @@ -255,11 +365,21 @@ static GLboolean r600GetTexFormat(struct gl_texture_object *tObj, gl_format mesa SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif break; case MESA_FORMAT_ARGB4444_REV: SETfield(t->SQ_TEX_RESOURCE1, FMT_4_4_4_4, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_shift, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_mask); - +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, @@ -268,11 +388,21 @@ static GLboolean r600GetTexFormat(struct gl_texture_object *tObj, gl_format mesa SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif break; case MESA_FORMAT_ARGB1555: SETfield(t->SQ_TEX_RESOURCE1, FMT_1_5_5_5, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_shift, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_mask); - +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, @@ -281,11 +411,21 @@ static GLboolean r600GetTexFormat(struct gl_texture_object *tObj, gl_format mesa SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif break; case MESA_FORMAT_ARGB1555_REV: SETfield(t->SQ_TEX_RESOURCE1, FMT_1_5_5_5, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_shift, SQ_TEX_RESOURCE_WORD1_0__DATA_FORMAT_mask); - +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, @@ -294,6 +434,7 @@ static GLboolean r600GetTexFormat(struct gl_texture_object *tObj, gl_format mesa SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif break; case MESA_FORMAT_AL88: case MESA_FORMAT_AL88_REV: /* TODO : Check this. */ diff --git a/src/mesa/drivers/dri/r600/r700_assembler.c b/src/mesa/drivers/dri/r600/r700_assembler.c index 4ed37033902..216ff0b941c 100644 --- a/src/mesa/drivers/dri/r600/r700_assembler.c +++ b/src/mesa/drivers/dri/r600/r700_assembler.c @@ -1188,7 +1188,12 @@ GLboolean EG_assemble_vfetch_instruction(r700_AssemblerBase* pAsm, SETfield(vfetch_instruction_ptr->m_Word2.val, 0, EG_VTX_WORD2__OFFSET_shift, EG_VTX_WORD2__OFFSET_mask); - SETfield(vfetch_instruction_ptr->m_Word2.val, SQ_ENDIAN_NONE, + SETfield(vfetch_instruction_ptr->m_Word2.val, +#ifdef MESA_BIG_ENDIAN + SQ_ENDIAN_8IN32, +#else + SQ_ENDIAN_NONE, +#endif EG_VTX_WORD2__ENDIAN_SWAP_shift, EG_VTX_WORD2__ENDIAN_SWAP_mask); SETfield(vfetch_instruction_ptr->m_Word2.val, 0, @@ -1294,7 +1299,11 @@ GLboolean assemble_vfetch_instruction2(r700_AssemblerBase* pAsm, vfetch_instruction_ptr->m_Word1.f.use_const_fields = 1; vfetch_instruction_ptr->m_Word1.f.data_format = data_format; +#ifdef MESA_BIG_ENDIAN + vfetch_instruction_ptr->m_Word2.f.endian_swap = SQ_ENDIAN_8IN32; +#else vfetch_instruction_ptr->m_Word2.f.endian_swap = SQ_ENDIAN_NONE; +#endif if(1 == _signed) { diff --git a/src/mesa/drivers/dri/r600/r700_assembler.h b/src/mesa/drivers/dri/r600/r700_assembler.h index c7c7ab2d4ff..8a9ccd1c4ec 100644 --- a/src/mesa/drivers/dri/r600/r700_assembler.h +++ b/src/mesa/drivers/dri/r600/r700_assembler.h @@ -130,6 +130,27 @@ typedef unsigned int BITS; typedef struct PVSDSTtag { +#ifdef MESA_BIG_ENDIAN + BITS addrmode1:1; //32 + BITS addrmode0:1; //31 //29 + + BITS dualop:1; // 30 //26 + + BITS op3:1; // 29 Represents *_OP3_* ALU opcode + + BITS writew:1; //28 + BITS writez:1; + BITS writey:1; + BITS writex:1; + + BITS reg:10; //24 //20 + BITS rtype:3; + + BITS pred_inv :1; //11 //8 + BITS predicated:1; //10 //8 + BITS math:1; + BITS opcode:8; //(:6) //@@@ really should be 10 bits for OP2 +#else BITS opcode:8; //(:6) //@@@ really should be 10 bits for OP2 BITS math:1; BITS predicated:1; //10 //8 @@ -149,17 +170,41 @@ typedef struct PVSDSTtag BITS addrmode0:1; //31 //29 BITS addrmode1:1; //32 +#endif } PVSDST; typedef struct PVSINSTtag { +#ifdef MESA_BIG_ENDIAN + BITS index_mode :3; + BITS SaturateMode :2; + BITS literal_slots :2; +#else BITS literal_slots :2; BITS SaturateMode :2; BITS index_mode :3; +#endif } PVSINST; typedef struct PVSSRCtag { +#ifdef MESA_BIG_ENDIAN + BITS addrmode1:1; //32 + //BITS addrsel:2; + BITS negw:1; //31 + BITS negz:1; + BITS negy:1; + BITS negx:1; + BITS abs:1; + + BITS swizzlew:3; //26 + BITS swizzlez:3; + BITS swizzley:3; + BITS swizzlex:3; + BITS reg:10; //14 (8) + BITS addrmode0:1; + BITS rtype:3; +#else BITS rtype:3; BITS addrmode0:1; BITS reg:10; //14 (8) @@ -175,10 +220,24 @@ typedef struct PVSSRCtag BITS negw:1; //31 //BITS addrsel:2; BITS addrmode1:1; //32 +#endif } PVSSRC; typedef struct PVSMATHtag { +#ifdef MESA_BIG_ENDIAN + BITS spare2:3; + BITS dstcomp:2; // select dest component + BITS negy:1; + BITS negx:1; + BITS opcode:4; + BITS dstoff:2; // 2 bits of dest offset into alt ram + BITS swizzley:3; + BITS swizzlex:3; + BITS reg:8; + BITS spare:1; + BITS rtype:4; +#else BITS rtype:4; BITS spare:1; BITS reg:8; @@ -190,6 +249,7 @@ typedef struct PVSMATHtag BITS negy:1; BITS dstcomp:2; // select dest component BITS spare2:3; +#endif } PVSMATH; typedef union PVSDWORDtag @@ -204,6 +264,34 @@ typedef union PVSDWORDtag typedef struct VAP_OUT_VTX_FMT_0tag { +#ifdef MESA_BIG_ENDIAN + BITS resvd1:12; // 20 + + BITS viewport_index:1; // 19 + BITS kill_flag:1; + BITS rta_index:1; // shares same channel as kill_flag + BITS edge_flag:1; + BITS point_size:1; // 15 + + BITS depth:1; // 14 + + BITS normal:1; + + BITS color7:1; + BITS color6:1; + BITS color5:1; + BITS color4:1; + BITS color3:1; + BITS color2:1; + BITS color1:1; + BITS color0:1; + + BITS pos_param:1; // 4 + BITS clip_dist1:1; + BITS clip_dist0:1; + BITS misc:1; + BITS pos:1; // 0 +#else BITS pos:1; // 0 BITS misc:1; BITS clip_dist0:1; @@ -230,10 +318,23 @@ typedef struct VAP_OUT_VTX_FMT_0tag BITS viewport_index:1; // 19 BITS resvd1:12; // 20 +#endif } VAP_OUT_VTX_FMT_0; typedef struct VAP_OUT_VTX_FMT_1tag { +#ifdef MESA_BIG_ENDIAN + BITS resvd:8; + + BITS tex7comp:3; + BITS tex6comp:3; + BITS tex5comp:3; + BITS tex4comp:3; + BITS tex3comp:3; + BITS tex2comp:3; + BITS tex1comp:3; + BITS tex0comp:3; +#else BITS tex0comp:3; BITS tex1comp:3; BITS tex2comp:3; @@ -244,10 +345,23 @@ typedef struct VAP_OUT_VTX_FMT_1tag BITS tex7comp:3; BITS resvd:8; +#endif } VAP_OUT_VTX_FMT_1; typedef struct VAP_OUT_VTX_FMT_2tag { +#ifdef MESA_BIG_ENDIAN + BITS resvd:8; + + BITS tex15comp:3; + BITS tex14comp:3; + BITS tex13comp:3; + BITS tex12comp:3; + BITS tex11comp:3; + BITS tex10comp:3; + BITS tex9comp:3; + BITS tex8comp:3; +#else BITS tex8comp :3; BITS tex9comp :3; BITS tex10comp:3; @@ -258,10 +372,28 @@ typedef struct VAP_OUT_VTX_FMT_2tag BITS tex15comp:3; BITS resvd:8; +#endif } VAP_OUT_VTX_FMT_2; typedef struct OUT_FRAGMENT_FMT_0tag { +#ifdef MESA_BIG_ENDIAN + BITS resvd1:20; + + BITS mask:1; + BITS coverage_to_mask:1; + BITS stencil_ref:1; + BITS depth:1; + + BITS color7:1; + BITS color6:1; + BITS color5:1; + BITS color4:1; + BITS color3:1; + BITS color2:1; + BITS color1:1; + BITS color0:1; +#else BITS color0:1; BITS color1:1; BITS color2:1; @@ -277,6 +409,7 @@ typedef struct OUT_FRAGMENT_FMT_0tag BITS mask:1; BITS resvd1:20; +#endif } OUT_FRAGMENT_FMT_0; typedef enum CF_CLAUSE_TYPE diff --git a/src/mesa/drivers/dri/r600/r700_chip.c b/src/mesa/drivers/dri/r600/r700_chip.c index 7980c449e02..10fa3f9762b 100644 --- a/src/mesa/drivers/dri/r600/r700_chip.c +++ b/src/mesa/drivers/dri/r600/r700_chip.c @@ -202,7 +202,15 @@ static void r700SetupVTXConstants(struct gl_context * ctx, SETfield(uSQ_VTX_CONSTANT_WORD2_0, GetSurfaceFormat(pStreamDesc->type, pStreamDesc->size, NULL), SQ_VTX_CONSTANT_WORD2_0__DATA_FORMAT_shift, SQ_VTX_CONSTANT_WORD2_0__DATA_FORMAT_mask); /* TODO : trace back api for initial data type, not only GL_FLOAT */ - + SETfield(uSQ_VTX_CONSTANT_WORD2_0, +#ifdef MESA_BIG_ENDIAN + SQ_ENDIAN_8IN32, +#else + SQ_ENDIAN_NONE, +#endif + SQ_VTX_CONSTANT_WORD2_0__ENDIAN_SWAP_shift, + SQ_VTX_CONSTANT_WORD2_0__ENDIAN_SWAP_mask); + if(GL_TRUE == pStreamDesc->normalize) { SETfield(uSQ_VTX_CONSTANT_WORD2_0, SQ_NUM_FORMAT_NORM, diff --git a/src/mesa/drivers/dri/r600/r700_render.c b/src/mesa/drivers/dri/r600/r700_render.c index bb09980ed88..2bd3b62bfdb 100644 --- a/src/mesa/drivers/dri/r600/r700_render.c +++ b/src/mesa/drivers/dri/r600/r700_render.c @@ -276,6 +276,16 @@ static void r700RunRenderPrimitive(struct gl_context * ctx, int start, int end, SETfield(vgt_index_type, DI_INDEX_SIZE_16_BIT, INDEX_TYPE_shift, INDEX_TYPE_mask); } + /* 16-bit indexes are packed in a 32-bit value */ + SETfield(vgt_index_type, +#if MESA_BIG_ENDIAN + VGT_DMA_SWAP_32_BIT, +#else + VGT_DMA_SWAP_NONE, +#endif + SWAP_MODE_shift, SWAP_MODE_mask); + + vgt_num_indices = num_indices; SETfield(vgt_draw_initiator, DI_SRC_SEL_DMA, SOURCE_SELECT_shift, SOURCE_SELECT_mask); SETfield(vgt_draw_initiator, DI_MAJOR_MODE_0, MAJOR_MODE_shift, MAJOR_MODE_mask); @@ -348,6 +358,15 @@ static void r700RunRenderPrimitiveImmediate(struct gl_context * ctx, int start, SETfield(vgt_index_type, DI_INDEX_SIZE_16_BIT, INDEX_TYPE_shift, INDEX_TYPE_mask); } + /* 16-bit indexes are packed in a 32-bit value */ + SETfield(vgt_index_type, +#if MESA_BIG_ENDIAN + VGT_DMA_SWAP_32_BIT, +#else + VGT_DMA_SWAP_NONE, +#endif + SWAP_MODE_shift, SWAP_MODE_mask); + vgt_num_indices = num_indices; SETfield(vgt_draw_initiator, DI_MAJOR_MODE_0, MAJOR_MODE_shift, MAJOR_MODE_mask); diff --git a/src/mesa/drivers/dri/radeon/radeon_common.c b/src/mesa/drivers/dri/radeon/radeon_common.c index 0d73c0e3b1b..bfc307ca987 100644 --- a/src/mesa/drivers/dri/radeon/radeon_common.c +++ b/src/mesa/drivers/dri/radeon/radeon_common.c @@ -966,7 +966,7 @@ static void radeon_print_state_atom(radeonContextPtr radeon, struct radeon_state fprintf(stderr, " emit %s %d/%d\n", state->name, dwords, state->cmd_size); - if (radeon_is_debug_enabled(RADEON_STATE, RADEON_TRACE)) { + if (state->cmd && radeon_is_debug_enabled(RADEON_STATE, RADEON_TRACE)) { if (dwords > state->cmd_size) dwords = state->cmd_size; for (i = 0; i < dwords;) { diff --git a/src/mesa/drivers/dri/radeon/radeon_span.c b/src/mesa/drivers/dri/radeon/radeon_span.c index caf3f253d2a..8c6f2e49a5c 100644 --- a/src/mesa/drivers/dri/radeon/radeon_span.c +++ b/src/mesa/drivers/dri/radeon/radeon_span.c @@ -50,6 +50,17 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #define DBG 0 +#if defined(BYTE_ORDER) && defined(BIG_ENDIAN) && BYTE_ORDER == BIG_ENDIAN +#if defined(__linux__) +#include +#define CPU_TO_LE16( x ) bswap_16( x ) +#define LE16_TO_CPU( x ) bswap_16( x ) +#endif /* __linux__ */ +#else +#define CPU_TO_LE16( x ) ( x ) +#define LE16_TO_CPU( x ) ( x ) +#endif + static void radeonSetSpanFunctions(struct radeon_renderbuffer *rrb); @@ -579,7 +590,11 @@ static GLubyte *radeon_ptr_2byte_8x2(const struct radeon_renderbuffer * rrb, #define TAG(x) radeon##x##_RGB565 #define TAG2(x,y) radeon##x##_RGB565##y #if defined(RADEON_R600) -#define GET_PTR(X,Y) r600_ptr_color(rrb, (X) + x_off, (Y) + y_off) +#define GET_VALUE(_x, _y) (LE16_TO_CPU(*(GLushort*)(r600_ptr_color(rrb, _x + x_off, _y + y_off)))) +#define PUT_VALUE(_x, _y, d) { \ + GLushort *_ptr = (GLushort*)r600_ptr_color( rrb, _x + x_off, _y + y_off ); \ + *_ptr = CPU_TO_LE16(d); \ +} while (0) #else #define GET_PTR(X,Y) radeon_ptr_2byte_8x2(rrb, (X) + x_off, (Y) + y_off) #endif @@ -591,7 +606,11 @@ static GLubyte *radeon_ptr_2byte_8x2(const struct radeon_renderbuffer * rrb, #define TAG(x) radeon##x##_RGB565_REV #define TAG2(x,y) radeon##x##_RGB565_REV##y #if defined(RADEON_R600) -#define GET_PTR(X,Y) r600_ptr_color(rrb, (X) + x_off, (Y) + y_off) +#define GET_VALUE(_x, _y) (LE16_TO_CPU(*(GLushort*)(r600_ptr_color(rrb, _x + x_off, _y + y_off)))) +#define PUT_VALUE(_x, _y, d) { \ + GLushort *_ptr = (GLushort*)r600_ptr_color( rrb, _x + x_off, _y + y_off ); \ + *_ptr = CPU_TO_LE16(d); \ +} while (0) #else #define GET_PTR(X,Y) radeon_ptr_2byte_8x2(rrb, (X) + x_off, (Y) + y_off) #endif @@ -605,7 +624,11 @@ static GLubyte *radeon_ptr_2byte_8x2(const struct radeon_renderbuffer * rrb, #define TAG(x) radeon##x##_ARGB1555 #define TAG2(x,y) radeon##x##_ARGB1555##y #if defined(RADEON_R600) -#define GET_PTR(X,Y) r600_ptr_color(rrb, (X) + x_off, (Y) + y_off) +#define GET_VALUE(_x, _y) (LE16_TO_CPU(*(GLushort*)(r600_ptr_color(rrb, _x + x_off, _y + y_off)))) +#define PUT_VALUE(_x, _y, d) { \ + GLushort *_ptr = (GLushort*)r600_ptr_color( rrb, _x + x_off, _y + y_off ); \ + *_ptr = CPU_TO_LE16(d); \ +} while (0) #else #define GET_PTR(X,Y) radeon_ptr_2byte_8x2(rrb, (X) + x_off, (Y) + y_off) #endif @@ -617,7 +640,11 @@ static GLubyte *radeon_ptr_2byte_8x2(const struct radeon_renderbuffer * rrb, #define TAG(x) radeon##x##_ARGB1555_REV #define TAG2(x,y) radeon##x##_ARGB1555_REV##y #if defined(RADEON_R600) -#define GET_PTR(X,Y) r600_ptr_color(rrb, (X) + x_off, (Y) + y_off) +#define GET_VALUE(_x, _y) (LE16_TO_CPU(*(GLushort*)(r600_ptr_color(rrb, _x + x_off, _y + y_off)))) +#define PUT_VALUE(_x, _y, d) { \ + GLushort *_ptr = (GLushort*)r600_ptr_color( rrb, _x + x_off, _y + y_off ); \ + *_ptr = CPU_TO_LE16(d); \ +} while (0) #else #define GET_PTR(X,Y) radeon_ptr_2byte_8x2(rrb, (X) + x_off, (Y) + y_off) #endif @@ -631,7 +658,11 @@ static GLubyte *radeon_ptr_2byte_8x2(const struct radeon_renderbuffer * rrb, #define TAG(x) radeon##x##_ARGB4444 #define TAG2(x,y) radeon##x##_ARGB4444##y #if defined(RADEON_R600) -#define GET_PTR(X,Y) r600_ptr_color(rrb, (X) + x_off, (Y) + y_off) +#define GET_VALUE(_x, _y) (LE16_TO_CPU(*(GLushort*)(r600_ptr_color(rrb, _x + x_off, _y + y_off)))) +#define PUT_VALUE(_x, _y, d) { \ + GLushort *_ptr = (GLushort*)r600_ptr_color( rrb, _x + x_off, _y + y_off ); \ + *_ptr = CPU_TO_LE16(d); \ +} while (0) #else #define GET_PTR(X,Y) radeon_ptr_2byte_8x2(rrb, (X) + x_off, (Y) + y_off) #endif @@ -643,7 +674,11 @@ static GLubyte *radeon_ptr_2byte_8x2(const struct radeon_renderbuffer * rrb, #define TAG(x) radeon##x##_ARGB4444_REV #define TAG2(x,y) radeon##x##_ARGB4444_REV##y #if defined(RADEON_R600) -#define GET_PTR(X,Y) r600_ptr_color(rrb, (X) + x_off, (Y) + y_off) +#define GET_VALUE(_x, _y) (LE16_TO_CPU(*(GLushort*)(r600_ptr_color(rrb, _x + x_off, _y + y_off)))) +#define PUT_VALUE(_x, _y, d) { \ + GLushort *_ptr = (GLushort*)r600_ptr_color( rrb, _x + x_off, _y + y_off ); \ + *_ptr = CPU_TO_LE16(d); \ +} while (0) #else #define GET_PTR(X,Y) radeon_ptr_2byte_8x2(rrb, (X) + x_off, (Y) + y_off) #endif @@ -657,10 +692,10 @@ static GLubyte *radeon_ptr_2byte_8x2(const struct radeon_renderbuffer * rrb, #define TAG(x) radeon##x##_xRGB8888 #define TAG2(x,y) radeon##x##_xRGB8888##y #if defined(RADEON_R600) -#define GET_VALUE(_x, _y) ((*(GLuint*)(r600_ptr_color(rrb, _x + x_off, _y + y_off)) | 0xff000000)) +#define GET_VALUE(_x, _y) ((LE32_TO_CPU(*(GLuint*)(r600_ptr_color(rrb, _x + x_off, _y + y_off))) | 0xff000000)) #define PUT_VALUE(_x, _y, d) { \ GLuint *_ptr = (GLuint*)r600_ptr_color( rrb, _x + x_off, _y + y_off ); \ - *_ptr = d; \ + *_ptr = CPU_TO_LE32(d); \ } while (0) #else #define GET_VALUE(_x, _y) ((*(GLuint*)(radeon_ptr_4byte(rrb, _x + x_off, _y + y_off)) | 0xff000000)) @@ -679,10 +714,10 @@ static GLubyte *radeon_ptr_2byte_8x2(const struct radeon_renderbuffer * rrb, #define TAG(x) radeon##x##_ARGB8888 #define TAG2(x,y) radeon##x##_ARGB8888##y #if defined(RADEON_R600) -#define GET_VALUE(_x, _y) (*(GLuint*)(r600_ptr_color(rrb, _x + x_off, _y + y_off))) +#define GET_VALUE(_x, _y) (LE32_TO_CPU(*(GLuint*)(r600_ptr_color(rrb, _x + x_off, _y + y_off)))) #define PUT_VALUE(_x, _y, d) { \ GLuint *_ptr = (GLuint*)r600_ptr_color( rrb, _x + x_off, _y + y_off ); \ - *_ptr = d; \ + *_ptr = CPU_TO_LE32(d); \ } while (0) #else #define GET_VALUE(_x, _y) (*(GLuint*)(radeon_ptr_4byte(rrb, _x + x_off, _y + y_off))) @@ -701,10 +736,10 @@ static GLubyte *radeon_ptr_2byte_8x2(const struct radeon_renderbuffer * rrb, #define TAG(x) radeon##x##_BGRx8888 #define TAG2(x,y) radeon##x##_BGRx8888##y #if defined(RADEON_R600) -#define GET_VALUE(_x, _y) ((*(GLuint*)(r600_ptr_color(rrb, _x + x_off, _y + y_off)) | 0x000000ff)) +#define GET_VALUE(_x, _y) ((LE32_TO_CPU(*(GLuint*)(r600_ptr_color(rrb, _x + x_off, _y + y_off))) | 0x000000ff)) #define PUT_VALUE(_x, _y, d) { \ GLuint *_ptr = (GLuint*)r600_ptr_color( rrb, _x + x_off, _y + y_off ); \ - *_ptr = d; \ + *_ptr = CPU_TO_LE32(d); \ } while (0) #else #define GET_VALUE(_x, _y) ((*(GLuint*)(radeon_ptr_4byte(rrb, _x + x_off, _y + y_off)) | 0x000000ff)) @@ -723,7 +758,11 @@ static GLubyte *radeon_ptr_2byte_8x2(const struct radeon_renderbuffer * rrb, #define TAG(x) radeon##x##_BGRA8888 #define TAG2(x,y) radeon##x##_BGRA8888##y #if defined(RADEON_R600) -#define GET_PTR(X,Y) r600_ptr_color(rrb, (X) + x_off, (Y) + y_off) +#define GET_VALUE(_x, _y) (LE32_TO_CPU(*(GLuint*)(r600_ptr_color(rrb, _x + x_off, _y + y_off)))) +#define PUT_VALUE(_x, _y, d) { \ + GLuint *_ptr = (GLuint*)r600_ptr_color( rrb, _x + x_off, _y + y_off ); \ + *_ptr = CPU_TO_LE32(d); \ +} while (0) #else #define GET_PTR(X,Y) radeon_ptr_4byte(rrb, (X) + x_off, (Y) + y_off) #endif @@ -752,7 +791,7 @@ static GLubyte *radeon_ptr_2byte_8x2(const struct radeon_renderbuffer * rrb, *(GLushort *)r200_depth_2byte(rrb, _x + x_off, _y + y_off) = d #elif defined(RADEON_R600) #define WRITE_DEPTH( _x, _y, d ) \ - *(GLushort *)r600_ptr_depth(rrb, _x + x_off, _y + y_off) = d + *(GLushort *)r600_ptr_depth(rrb, _x + x_off, _y + y_off) = CPU_TO_LE16(d) #else #define WRITE_DEPTH( _x, _y, d ) \ *(GLushort *)radeon_ptr_2byte_8x2(rrb, _x + x_off, _y + y_off) = d @@ -763,7 +802,7 @@ static GLubyte *radeon_ptr_2byte_8x2(const struct radeon_renderbuffer * rrb, d = *(GLushort *)r200_depth_2byte(rrb, _x + x_off, _y + y_off) #elif defined(RADEON_R600) #define READ_DEPTH( d, _x, _y ) \ - d = *(GLushort *)r600_ptr_depth(rrb, _x + x_off, _y + y_off) + d = LE16_TO_CPU(*(GLushort *)r600_ptr_depth(rrb, _x + x_off, _y + y_off)) #else #define READ_DEPTH( d, _x, _y ) \ d = *(GLushort *)radeon_ptr_2byte_8x2(rrb, _x + x_off, _y + y_off) @@ -792,10 +831,10 @@ do { \ #define WRITE_DEPTH( _x, _y, d ) \ do { \ GLuint *_ptr = (GLuint*)r600_ptr_depth( rrb, _x + x_off, _y + y_off ); \ - GLuint tmp = *_ptr; \ + GLuint tmp = LE32_TO_CPU(*_ptr); \ tmp &= 0xff000000; \ tmp |= ((d) & 0x00ffffff); \ - *_ptr = tmp; \ + *_ptr = CPU_TO_LE32(tmp); \ } while (0) #elif defined(RADEON_R200) #define WRITE_DEPTH( _x, _y, d ) \ @@ -825,7 +864,7 @@ do { \ #elif defined(RADEON_R600) #define READ_DEPTH( d, _x, _y ) \ do { \ - d = (*(GLuint*)(r600_ptr_depth(rrb, _x + x_off, _y + y_off)) & 0x00ffffff); \ + d = (LE32_TO_CPU(*(GLuint*)(r600_ptr_depth(rrb, _x + x_off, _y + y_off))) & 0x00ffffff); \ }while(0) #elif defined(RADEON_R200) #define READ_DEPTH( d, _x, _y ) \ @@ -858,15 +897,15 @@ do { \ #define WRITE_DEPTH( _x, _y, d ) \ do { \ GLuint *_ptr = (GLuint*)r600_ptr_depth( rrb, _x + x_off, _y + y_off ); \ - GLuint tmp = *_ptr; \ + GLuint tmp = LE32_TO_CPU(*_ptr); \ tmp &= 0xff000000; \ tmp |= ((d) & 0x00ffffff); \ - *_ptr = tmp; \ + *_ptr = CPU_TO_LE32(tmp); \ _ptr = (GLuint*)r600_ptr_stencil(rrb, _x + x_off, _y + y_off); \ - tmp = *_ptr; \ + tmp = LE32_TO_CPU(*_ptr); \ tmp &= 0xffffff00; \ tmp |= ((d) >> 24) & 0xff; \ - *_ptr = tmp; \ + *_ptr = CPU_TO_LE32(tmp); \ } while (0) #elif defined(RADEON_R200) #define WRITE_DEPTH( _x, _y, d ) \ @@ -891,8 +930,8 @@ do { \ #elif defined(RADEON_R600) #define READ_DEPTH( d, _x, _y ) \ do { \ - d = (*(GLuint*)(r600_ptr_depth(rrb, _x + x_off, _y + y_off))) & 0x00ffffff; \ - d |= ((*(GLuint*)(r600_ptr_stencil(rrb, _x + x_off, _y + y_off))) << 24) & 0xff000000; \ + d = (LE32_TO_CPU(*(GLuint*)(r600_ptr_depth(rrb, _x + x_off, _y + y_off))) & 0x00ffffff); \ + d |= ((LE32_TO_CPU(*(GLuint*)(r600_ptr_stencil(rrb, _x + x_off, _y + y_off))) << 24) & 0xff000000); \ }while(0) #elif defined(RADEON_R200) #define READ_DEPTH( d, _x, _y ) \ @@ -927,10 +966,10 @@ do { \ #define WRITE_STENCIL( _x, _y, d ) \ do { \ GLuint *_ptr = (GLuint*)r600_ptr_stencil(rrb, _x + x_off, _y + y_off); \ - GLuint tmp = *_ptr; \ + GLuint tmp = LE32_TO_CPU(*_ptr); \ tmp &= 0xffffff00; \ tmp |= (d) & 0xff; \ - *_ptr = tmp; \ + *_ptr = CPU_TO_LE32(tmp); \ } while (0) #elif defined(RADEON_R200) #define WRITE_STENCIL( _x, _y, d ) \ @@ -963,7 +1002,7 @@ do { \ #define READ_STENCIL( d, _x, _y ) \ do { \ GLuint *_ptr = (GLuint*)r600_ptr_stencil( rrb, _x + x_off, _y + y_off ); \ - GLuint tmp = *_ptr; \ + GLuint tmp = LE32_TO_CPU(*_ptr); \ d = tmp & 0x000000ff; \ } while (0) #elif defined(RADEON_R200) From b545b2987aaca856f3a54ecb31fb4646bf619cc6 Mon Sep 17 00:00:00 2001 From: Alex Deucher Date: Tue, 19 Apr 2011 12:03:55 -0400 Subject: [PATCH 366/420] r600c: add evergreen big endian support Based on Cedric's r6xx/r7xx patch. Signed-off-by: Alex Deucher --- src/mesa/drivers/dri/r600/evergreen_blit.c | 114 +++++++++++++- .../drivers/dri/r600/evergreen_blit_shaders.h | 8 + src/mesa/drivers/dri/r600/evergreen_chip.c | 10 ++ src/mesa/drivers/dri/r600/evergreen_render.c | 18 +++ src/mesa/drivers/dri/r600/evergreen_tex.c | 145 +++++++++++++++++- 5 files changed, 286 insertions(+), 9 deletions(-) diff --git a/src/mesa/drivers/dri/r600/evergreen_blit.c b/src/mesa/drivers/dri/r600/evergreen_blit.c index e07da8c15b4..0e4da5499ba 100644 --- a/src/mesa/drivers/dri/r600/evergreen_blit.c +++ b/src/mesa/drivers/dri/r600/evergreen_blit.c @@ -98,10 +98,11 @@ eg_set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_fo uint32_t cb_color0_base, cb_color0_info = 0; uint32_t cb_color0_pitch = 0, cb_color0_slice = 0, cb_color0_attrib = 0; int id = 0; - uint32_t comp_swap, format, source_format, number_type; + uint32_t endian, comp_swap, format, source_format, number_type; BATCH_LOCALS(&context->radeon); cb_color0_base = dst_offset / 256; + endian = ENDIAN_NONE; /* pitch */ SETfield(cb_color0_pitch, (nPitchInPixel / 8) - 1, @@ -118,10 +119,6 @@ eg_set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_fo SETbit(cb_color0_attrib, EG_CB_COLOR0_ATTRIB__NON_DISP_TILING_ORDER_bit); - SETfield(cb_color0_info, - ENDIAN_NONE, - EG_CB_COLOR0_INFO__ENDIAN_shift, - EG_CB_COLOR0_INFO__ENDIAN_mask); SETfield(cb_color0_info, ARRAY_LINEAR_GENERAL, EG_CB_COLOR0_INFO__ARRAY_MODE_shift, @@ -131,24 +128,36 @@ eg_set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_fo switch(mesa_format) { case MESA_FORMAT_RGBA8888: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_8_8_8_8; comp_swap = SWAP_STD_REV; number_type = NUMBER_UNORM; source_format = 1; break; case MESA_FORMAT_SIGNED_RGBA8888: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_8_8_8_8; comp_swap = SWAP_STD_REV; number_type = NUMBER_SNORM; source_format = 1; break; case MESA_FORMAT_RGBA8888_REV: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_8_8_8_8; comp_swap = SWAP_STD; number_type = NUMBER_UNORM; source_format = 1; break; case MESA_FORMAT_SIGNED_RGBA8888_REV: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_8_8_8_8; comp_swap = SWAP_STD; number_type = NUMBER_SNORM; @@ -156,6 +165,9 @@ eg_set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_fo break; case MESA_FORMAT_ARGB8888: case MESA_FORMAT_XRGB8888: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_8_8_8_8; comp_swap = SWAP_ALT; number_type = NUMBER_UNORM; @@ -163,54 +175,81 @@ eg_set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_fo break; case MESA_FORMAT_ARGB8888_REV: case MESA_FORMAT_XRGB8888_REV: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_8_8_8_8; comp_swap = SWAP_ALT_REV; number_type = NUMBER_UNORM; source_format = 1; break; case MESA_FORMAT_RGB565: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_5_6_5; comp_swap = SWAP_STD_REV; number_type = NUMBER_UNORM; source_format = 1; break; case MESA_FORMAT_RGB565_REV: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_5_6_5; comp_swap = SWAP_STD; number_type = NUMBER_UNORM; source_format = 1; break; case MESA_FORMAT_ARGB4444: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_4_4_4_4; comp_swap = SWAP_ALT; number_type = NUMBER_UNORM; source_format = 1; break; case MESA_FORMAT_ARGB4444_REV: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_4_4_4_4; comp_swap = SWAP_ALT_REV; number_type = NUMBER_UNORM; source_format = 1; break; case MESA_FORMAT_ARGB1555: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_1_5_5_5; comp_swap = SWAP_ALT; number_type = NUMBER_UNORM; source_format = 1; break; case MESA_FORMAT_ARGB1555_REV: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_1_5_5_5; comp_swap = SWAP_ALT_REV; number_type = NUMBER_UNORM; source_format = 1; break; case MESA_FORMAT_AL88: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_8_8; comp_swap = SWAP_STD; number_type = NUMBER_UNORM; source_format = 1; break; case MESA_FORMAT_AL88_REV: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_8_8; comp_swap = SWAP_STD_REV; number_type = NUMBER_UNORM; @@ -242,60 +281,90 @@ eg_set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_fo source_format = 1; break; case MESA_FORMAT_RGBA_FLOAT32: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_32_32_32_32_FLOAT; comp_swap = SWAP_STD; number_type = NUMBER_FLOAT; source_format = 0; break; case MESA_FORMAT_RGBA_FLOAT16: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_16_16_16_16_FLOAT; comp_swap = SWAP_STD; number_type = NUMBER_FLOAT; source_format = 0; break; case MESA_FORMAT_ALPHA_FLOAT32: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_32_FLOAT; comp_swap = SWAP_ALT_REV; number_type = NUMBER_FLOAT; source_format = 0; break; case MESA_FORMAT_ALPHA_FLOAT16: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_16_FLOAT; comp_swap = SWAP_ALT_REV; number_type = NUMBER_FLOAT; source_format = 0; break; case MESA_FORMAT_LUMINANCE_FLOAT32: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_32_FLOAT; comp_swap = SWAP_ALT; number_type = NUMBER_FLOAT; source_format = 0; break; case MESA_FORMAT_LUMINANCE_FLOAT16: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_16_FLOAT; comp_swap = SWAP_ALT; number_type = NUMBER_FLOAT; source_format = 0; break; case MESA_FORMAT_LUMINANCE_ALPHA_FLOAT32: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_32_32_FLOAT; comp_swap = SWAP_ALT_REV; number_type = NUMBER_FLOAT; source_format = 0; break; case MESA_FORMAT_LUMINANCE_ALPHA_FLOAT16: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_16_16_FLOAT; comp_swap = SWAP_ALT_REV; number_type = NUMBER_FLOAT; source_format = 0; break; case MESA_FORMAT_INTENSITY_FLOAT32: /* X, X, X, X */ +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_32_FLOAT; comp_swap = SWAP_STD; number_type = NUMBER_FLOAT; source_format = 0; break; case MESA_FORMAT_INTENSITY_FLOAT16: /* X, X, X, X */ +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_16_FLOAT; comp_swap = SWAP_STD; number_type = NUMBER_UNORM; @@ -303,6 +372,9 @@ eg_set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_fo break; case MESA_FORMAT_X8_Z24: case MESA_FORMAT_S8_Z24: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_8_24; comp_swap = SWAP_STD; number_type = NUMBER_UNORM; @@ -313,6 +385,9 @@ eg_set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_fo source_format = 0; break; case MESA_FORMAT_Z24_S8: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_24_8; comp_swap = SWAP_STD; number_type = NUMBER_UNORM; @@ -323,6 +398,9 @@ eg_set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_fo source_format = 0; break; case MESA_FORMAT_Z16: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_16; comp_swap = SWAP_STD; number_type = NUMBER_UNORM; @@ -333,6 +411,9 @@ eg_set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_fo source_format = 0; break; case MESA_FORMAT_Z32: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_32; comp_swap = SWAP_STD; number_type = NUMBER_UNORM; @@ -343,12 +424,18 @@ eg_set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_fo source_format = 0; break; case MESA_FORMAT_SARGB8: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN32; +#endif format = COLOR_8_8_8_8; comp_swap = SWAP_ALT; number_type = NUMBER_SRGB; source_format = 1; break; case MESA_FORMAT_SLA8: +#ifdef MESA_BIG_ENDIAN + endian = ENDIAN_8IN16; +#endif format = COLOR_8_8; comp_swap = SWAP_ALT_REV; number_type = NUMBER_SRGB; @@ -366,6 +453,10 @@ eg_set_render_target(context_t *context, struct radeon_bo *bo, gl_format mesa_fo return; } + SETfield(cb_color0_info, + endian, + EG_CB_COLOR0_INFO__ENDIAN_shift, + EG_CB_COLOR0_INFO__ENDIAN_mask); SETfield(cb_color0_info, format, EG_CB_COLOR0_INFO__FORMAT_shift, @@ -441,10 +532,10 @@ static inline void eg_load_shaders(struct gl_context * ctx) shader = context->blit_bo->ptr; for(i=0; iblit_bo); @@ -525,6 +616,7 @@ eg_set_vtx_resource(context_t *context) { struct radeon_bo *bo = context->blit_bo; uint32_t sq_vtx_constant_word3 = 0; + uint32_t sq_vtx_constant_word2 = 0; BATCH_LOCALS(&context->radeon); BEGIN_BATCH_NO_AUTOSTATE(6); @@ -555,13 +647,19 @@ eg_set_vtx_resource(context_t *context) EG_SQ_VTX_CONSTANT_WORD3_0__DST_SEL_W_shift, EG_SQ_VTX_CONSTANT_WORD3_0__DST_SEL_W_mask); + sq_vtx_constant_word2 = 0 +#ifdef MESA_BIG_ENDIAN + | (SQ_ENDIAN_8IN32 << SQ_VTX_CONSTANT_WORD2_0__ENDIAN_SWAP_shift) +#endif + | (16 << SQ_VTX_CONSTANT_WORD2_0__STRIDE_shift); + BEGIN_BATCH_NO_AUTOSTATE(10 + 2); R600_OUT_BATCH(CP_PACKET3(R600_IT_SET_RESOURCE, 8)); R600_OUT_BATCH(EG_SQ_FETCH_RESOURCE_VS_OFFSET * EG_FETCH_RESOURCE_STRIDE); R600_OUT_BATCH(0); R600_OUT_BATCH(48 - 1); - R600_OUT_BATCH(16 << SQ_VTX_CONSTANT_WORD2_0__STRIDE_shift); + R600_OUT_BATCH(sq_vtx_constant_word2); R600_OUT_BATCH(sq_vtx_constant_word3); R600_OUT_BATCH(0); R600_OUT_BATCH(0); diff --git a/src/mesa/drivers/dri/r600/evergreen_blit_shaders.h b/src/mesa/drivers/dri/r600/evergreen_blit_shaders.h index eb025280739..84f20f8cafb 100644 --- a/src/mesa/drivers/dri/r600/evergreen_blit_shaders.h +++ b/src/mesa/drivers/dri/r600/evergreen_blit_shaders.h @@ -37,11 +37,19 @@ const uint32_t evergreen_vs[] = 0x00000000, 0x3c000000, 0x67961001, +#ifdef MESA_BIG_ENDIAN + 0x000a0000, +#else 0x00080000, +#endif 0x00000000, 0x1c000000, 0x67961000, +#ifdef MESA_BIG_ENDIAN + 0x00020008, +#else 0x00000008, +#endif 0x00000000, }; diff --git a/src/mesa/drivers/dri/r600/evergreen_chip.c b/src/mesa/drivers/dri/r600/evergreen_chip.c index 7a2902554e3..42566e537a5 100644 --- a/src/mesa/drivers/dri/r600/evergreen_chip.c +++ b/src/mesa/drivers/dri/r600/evergreen_chip.c @@ -307,6 +307,16 @@ static void evergreenSetupVTXConstants(struct gl_context * ctx, SQ_VTX_CONSTANT_WORD2_0__DATA_FORMAT_shift, SQ_VTX_CONSTANT_WORD2_0__DATA_FORMAT_mask); // TODO : trace back api for initial data type, not only GL_FLOAT SETfield(uSQ_VTX_CONSTANT_WORD2_0, 0, BASE_ADDRESS_HI_shift, BASE_ADDRESS_HI_mask); // TODO + + SETfield(uSQ_VTX_CONSTANT_WORD2_0, +#ifdef MESA_BIG_ENDIAN + SQ_ENDIAN_8IN32, +#else + SQ_ENDIAN_NONE, +#endif + SQ_VTX_CONSTANT_WORD2_0__ENDIAN_SWAP_shift, + SQ_VTX_CONSTANT_WORD2_0__ENDIAN_SWAP_mask); + if(GL_TRUE == pStreamDesc->normalize) { SETfield(uSQ_VTX_CONSTANT_WORD2_0, SQ_NUM_FORMAT_NORM, diff --git a/src/mesa/drivers/dri/r600/evergreen_render.c b/src/mesa/drivers/dri/r600/evergreen_render.c index b5a5f07aaec..4507be29d86 100644 --- a/src/mesa/drivers/dri/r600/evergreen_render.c +++ b/src/mesa/drivers/dri/r600/evergreen_render.c @@ -180,6 +180,15 @@ static void evergreenRunRenderPrimitive(struct gl_context * ctx, int start, int SETfield(vgt_index_type, DI_INDEX_SIZE_16_BIT, INDEX_TYPE_shift, INDEX_TYPE_mask); } + /* 16-bit indexes are packed in a 32-bit value */ + SETfield(vgt_index_type, +#if MESA_BIG_ENDIAN + VGT_DMA_SWAP_32_BIT, +#else + VGT_DMA_SWAP_NONE, +#endif + SWAP_MODE_shift, SWAP_MODE_mask); + vgt_num_indices = num_indices; SETfield(vgt_draw_initiator, DI_SRC_SEL_DMA, SOURCE_SELECT_shift, SOURCE_SELECT_mask); SETfield(vgt_draw_initiator, DI_MAJOR_MODE_0, MAJOR_MODE_shift, MAJOR_MODE_mask); @@ -252,6 +261,15 @@ static void evergreenRunRenderPrimitiveImmediate(struct gl_context * ctx, int st SETfield(vgt_index_type, DI_INDEX_SIZE_16_BIT, INDEX_TYPE_shift, INDEX_TYPE_mask); } + /* 16-bit indexes are packed in a 32-bit value */ + SETfield(vgt_index_type, +#if MESA_BIG_ENDIAN + VGT_DMA_SWAP_32_BIT, +#else + VGT_DMA_SWAP_NONE, +#endif + SWAP_MODE_shift, SWAP_MODE_mask); + vgt_num_indices = num_indices; SETfield(vgt_draw_initiator, DI_MAJOR_MODE_0, MAJOR_MODE_shift, MAJOR_MODE_mask); diff --git a/src/mesa/drivers/dri/r600/evergreen_tex.c b/src/mesa/drivers/dri/r600/evergreen_tex.c index 810f0e8b523..33a5f277683 100644 --- a/src/mesa/drivers/dri/r600/evergreen_tex.c +++ b/src/mesa/drivers/dri/r600/evergreen_tex.c @@ -97,6 +97,16 @@ static GLboolean evergreenGetTexFormat(struct gl_texture_object *tObj, gl_format EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_shift, EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_mask); +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, @@ -105,6 +115,7 @@ static GLboolean evergreenGetTexFormat(struct gl_texture_object *tObj, gl_format SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif if (mesa_format == MESA_FORMAT_SIGNED_RGBA8888) { SETfield(t->SQ_TEX_RESOURCE4, SQ_FORMAT_COMP_SIGNED, FORMAT_COMP_X_shift, FORMAT_COMP_X_mask); @@ -122,6 +133,16 @@ static GLboolean evergreenGetTexFormat(struct gl_texture_object *tObj, gl_format EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_shift, EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_mask); +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, @@ -130,6 +151,7 @@ static GLboolean evergreenGetTexFormat(struct gl_texture_object *tObj, gl_format SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif if (mesa_format == MESA_FORMAT_SIGNED_RGBA8888_REV) { SETfield(t->SQ_TEX_RESOURCE4, SQ_FORMAT_COMP_SIGNED, FORMAT_COMP_X_shift, FORMAT_COMP_X_mask); @@ -146,6 +168,16 @@ static GLboolean evergreenGetTexFormat(struct gl_texture_object *tObj, gl_format EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_shift, EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_mask); +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, @@ -154,12 +186,23 @@ static GLboolean evergreenGetTexFormat(struct gl_texture_object *tObj, gl_format SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif break; case MESA_FORMAT_XRGB8888: SETfield(t->SQ_TEX_RESOURCE7, FMT_8_8_8_8, EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_shift, EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_mask); +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_1, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, @@ -168,26 +211,48 @@ static GLboolean evergreenGetTexFormat(struct gl_texture_object *tObj, gl_format SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_1, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif break; case MESA_FORMAT_XRGB8888_REV: SETfield(t->SQ_TEX_RESOURCE7, FMT_8_8_8_8, EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_shift, EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_mask); +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_1, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_1, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); - SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif break; case MESA_FORMAT_ARGB8888_REV: SETfield(t->SQ_TEX_RESOURCE7, FMT_8_8_8_8, EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_shift, EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_mask); +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, @@ -196,12 +261,23 @@ static GLboolean evergreenGetTexFormat(struct gl_texture_object *tObj, gl_format SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif break; case MESA_FORMAT_RGB888: SETfield(t->SQ_TEX_RESOURCE7, FMT_8_8_8, EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_shift, EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_mask); +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_1, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, @@ -210,12 +286,23 @@ static GLboolean evergreenGetTexFormat(struct gl_texture_object *tObj, gl_format SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_1, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif break; case MESA_FORMAT_RGB565: SETfield(t->SQ_TEX_RESOURCE7, FMT_5_6_5, EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_shift, EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_mask); +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_1, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, @@ -224,12 +311,23 @@ static GLboolean evergreenGetTexFormat(struct gl_texture_object *tObj, gl_format SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_1, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif break; case MESA_FORMAT_RGB565_REV: SETfield(t->SQ_TEX_RESOURCE7, FMT_5_6_5, EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_shift, EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_mask); +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_1, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, @@ -238,12 +336,23 @@ static GLboolean evergreenGetTexFormat(struct gl_texture_object *tObj, gl_format SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_1, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif break; case MESA_FORMAT_ARGB4444: SETfield(t->SQ_TEX_RESOURCE7, FMT_4_4_4_4, EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_shift, EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_mask); +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, @@ -252,12 +361,23 @@ static GLboolean evergreenGetTexFormat(struct gl_texture_object *tObj, gl_format SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif break; case MESA_FORMAT_ARGB4444_REV: SETfield(t->SQ_TEX_RESOURCE7, FMT_4_4_4_4, EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_shift, EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_mask); +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, @@ -266,12 +386,23 @@ static GLboolean evergreenGetTexFormat(struct gl_texture_object *tObj, gl_format SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif break; case MESA_FORMAT_ARGB1555: SETfield(t->SQ_TEX_RESOURCE7, FMT_1_5_5_5, EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_shift, EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_mask); +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, @@ -280,12 +411,23 @@ static GLboolean evergreenGetTexFormat(struct gl_texture_object *tObj, gl_format SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif break; case MESA_FORMAT_ARGB1555_REV: SETfield(t->SQ_TEX_RESOURCE7, FMT_1_5_5_5, EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_shift, EG_SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_mask); +#ifdef MESA_BIG_ENDIAN + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Y_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); + SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_W, + SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#else SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Y, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_X_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_Z, @@ -294,6 +436,7 @@ static GLboolean evergreenGetTexFormat(struct gl_texture_object *tObj, gl_format SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_Z_mask); SETfield(t->SQ_TEX_RESOURCE4, SQ_SEL_X, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_shift, SQ_TEX_RESOURCE_WORD4_0__DST_SEL_W_mask); +#endif break; case MESA_FORMAT_AL88: case MESA_FORMAT_AL88_REV: /* TODO : Check this. */ From 843dfe3206c4f397c7911b748373dde5540392a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Cano?= Date: Tue, 19 Apr 2011 13:02:14 -0400 Subject: [PATCH 367/420] r600g: add big endian support for r6xx/r7xx Signed-off-by: Cedric Cano Signed-off-by: Alex Deucher --- src/gallium/drivers/r600/r600_asm.c | 33 ++++++++++-- src/gallium/drivers/r600/r600_asm.h | 1 + src/gallium/drivers/r600/r600_buffer.c | 22 ++++++++ src/gallium/drivers/r600/r600_shader.c | 21 ++++++-- src/gallium/drivers/r600/r600_state.c | 20 ++++++-- src/gallium/drivers/r600/r600_state_common.c | 11 +++- src/gallium/drivers/r600/r600_state_inlines.h | 51 +++++++++++++++++++ src/gallium/drivers/r600/r600d.h | 6 +++ 8 files changed, 151 insertions(+), 14 deletions(-) diff --git a/src/gallium/drivers/r600/r600_asm.c b/src/gallium/drivers/r600/r600_asm.c index c22bd8e228c..7e854b1b81d 100644 --- a/src/gallium/drivers/r600/r600_asm.c +++ b/src/gallium/drivers/r600/r600_asm.c @@ -22,6 +22,7 @@ */ #include #include +#include #include "util/u_format.h" #include "util/u_memory.h" #include "pipe/p_shader_tokens.h" @@ -32,6 +33,12 @@ #include "r600_formats.h" #include "r600d.h" +#ifdef PIPE_ARCH_BIG_ENDIAN +#define CPU_TO_LE32(x) bswap_32(x) +#else +#define CPU_TO_LE32(x) (x) +#endif + #define NUM_OF_CYCLES 3 #define NUM_OF_COMPONENTS 4 @@ -1383,6 +1390,7 @@ static int r600_bc_vtx_build(struct r600_bc *bc, struct r600_bc_vtx *vtx, unsign S_SQ_VTX_WORD1_SRF_MODE_ALL(vtx->srf_mode_all) | S_SQ_VTX_WORD1_GPR_DST_GPR(vtx->dst_gpr); bc->bytecode[id++] = S_SQ_VTX_WORD2_OFFSET(vtx->offset) | + S_SQ_VTX_WORD2_ENDIAN_SWAP(vtx->endian) | S_SQ_VTX_WORD2_MEGA_FETCH(1); bc->bytecode[id++] = 0; return 0; @@ -1917,6 +1925,7 @@ void r600_bc_dump(struct r600_bc *bc) fprintf(stderr, "MODE:%d)\n", vtx->srf_mode_all); id++; fprintf(stderr, "%04d %08X ", id, bc->bytecode[id]); + fprintf(stderr, "ENDIAN:%d ", vtx->endian); fprintf(stderr, "OFFSET:%d\n", vtx->offset); //TODO id++; @@ -1929,7 +1938,7 @@ void r600_bc_dump(struct r600_bc *bc) } static void r600_vertex_data_type(enum pipe_format pformat, unsigned *format, - unsigned *num_format, unsigned *format_comp) + unsigned *num_format, unsigned *format_comp, unsigned *endian) { const struct util_format_description *desc; unsigned i; @@ -1937,6 +1946,7 @@ static void r600_vertex_data_type(enum pipe_format pformat, unsigned *format, *format = 0; *num_format = 0; *format_comp = 0; + *endian = ENDIAN_NONE; desc = util_format_description(pformat); if (desc->layout != UTIL_FORMAT_LAYOUT_PLAIN) { @@ -1967,6 +1977,9 @@ static void r600_vertex_data_type(enum pipe_format pformat, unsigned *format, *format = FMT_16_16_16_16_FLOAT; break; } +#ifdef PIPE_ARCH_BIG_ENDIAN + *endian = ENDIAN_8IN16; +#endif break; case 32: switch (desc->nr_channels) { @@ -1983,6 +1996,9 @@ static void r600_vertex_data_type(enum pipe_format pformat, unsigned *format, *format = FMT_32_32_32_32_FLOAT; break; } +#ifdef PIPE_ARCH_BIG_ENDIAN + *endian = ENDIAN_8IN32; +#endif break; default: goto out_unknown; @@ -2020,6 +2036,9 @@ static void r600_vertex_data_type(enum pipe_format pformat, unsigned *format, *format = FMT_16_16_16_16; break; } +#ifdef PIPE_ARCH_BIG_ENDIAN + *endian = ENDIAN_8IN16; +#endif break; case 32: switch (desc->nr_channels) { @@ -2036,6 +2055,9 @@ static void r600_vertex_data_type(enum pipe_format pformat, unsigned *format, *format = FMT_32_32_32_32; break; } +#ifdef PIPE_ARCH_BIG_ENDIAN + *endian = ENDIAN_8IN32; +#endif break; default: goto out_unknown; @@ -2067,7 +2089,7 @@ int r600_vertex_elements_build_fetch_shader(struct r600_pipe_context *rctx, stru struct pipe_vertex_element *elements = ve->elements; const struct util_format_description *desc; unsigned fetch_resource_start = rctx->family >= CHIP_CEDAR ? 0 : 160; - unsigned format, num_format, format_comp; + unsigned format, num_format, format_comp, endian; u32 *bytecode; int i, r; @@ -2114,7 +2136,7 @@ int r600_vertex_elements_build_fetch_shader(struct r600_pipe_context *rctx, stru for (i = 0; i < ve->count; i++) { unsigned vbuffer_index; - r600_vertex_data_type(ve->elements[i].src_format, &format, &num_format, &format_comp); + r600_vertex_data_type(ve->elements[i].src_format, &format, &num_format, &format_comp, &endian); desc = util_format_description(ve->elements[i].src_format); if (desc == NULL) { r600_bc_clear(&bc); @@ -2140,6 +2162,7 @@ int r600_vertex_elements_build_fetch_shader(struct r600_pipe_context *rctx, stru vtx.format_comp_all = format_comp; vtx.srf_mode_all = 1; vtx.offset = elements[i].src_offset; + vtx.endian = endian; if ((r = r600_bc_add_vtx(&bc, &vtx))) { r600_bc_clear(&bc); @@ -2179,7 +2202,9 @@ int r600_vertex_elements_build_fetch_shader(struct r600_pipe_context *rctx, stru return -ENOMEM; } - memcpy(bytecode, bc.bytecode, ve->fs_size); + for(i = 0; i < ve->fs_size / 4; i++) { + *(bytecode + i) = CPU_TO_LE32(*(bc.bytecode + i)); + } r600_bo_unmap(rctx->radeon, ve->fetch_shader); r600_bc_clear(&bc); diff --git a/src/gallium/drivers/r600/r600_asm.h b/src/gallium/drivers/r600/r600_asm.h index 27ea293ebe5..26d337fe125 100644 --- a/src/gallium/drivers/r600/r600_asm.h +++ b/src/gallium/drivers/r600/r600_asm.h @@ -104,6 +104,7 @@ struct r600_bc_vtx { unsigned format_comp_all; unsigned srf_mode_all; unsigned offset; + unsigned endian; }; struct r600_bc_output { diff --git a/src/gallium/drivers/r600/r600_buffer.c b/src/gallium/drivers/r600/r600_buffer.c index 6ced719c8f0..c1f063fc21a 100644 --- a/src/gallium/drivers/r600/r600_buffer.c +++ b/src/gallium/drivers/r600/r600_buffer.c @@ -24,6 +24,8 @@ * Jerome Glisse * Corbin Simpson */ +#include + #include #include #include @@ -266,11 +268,31 @@ void r600_upload_const_buffer(struct r600_pipe_context *rctx, struct r600_resour uint8_t *ptr = (*rbuffer)->r.b.user_ptr; unsigned size = (*rbuffer)->r.b.b.b.width0; boolean flushed; +#ifdef PIPE_ARCH_BIG_ENDIAN + int i; + uint32_t *tmpPtr; *rbuffer = NULL; + tmpPtr = (uint32_t *)malloc(size); + /* big endian swap */ + if(tmpPtr == NULL) { + return; + } + for(i = 0; i < size / 4; i++) { + tmpPtr[i] = bswap_32(*((uint32_t *)ptr + i)); + } + + u_upload_data(rctx->vbuf_mgr->uploader, 0, size, tmpPtr, const_offset, + (struct pipe_resource**)rbuffer, &flushed); + + free(tmpPtr); +#else + *rbuffer = NULL; + u_upload_data(rctx->vbuf_mgr->uploader, 0, size, ptr, const_offset, (struct pipe_resource**)rbuffer, &flushed); +#endif } else { *const_offset = 0; } diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c index 6eac1f724af..188cea0ff88 100644 --- a/src/gallium/drivers/r600/r600_shader.c +++ b/src/gallium/drivers/r600/r600_shader.c @@ -33,6 +33,13 @@ #include "r600d.h" #include #include +#include + +#ifdef PIPE_ARCH_BIG_ENDIAN +#define CPU_TO_LE32(x) bswap_32(x) +#else +#define CPU_TO_LE32(x) (x) +#endif int r600_find_vs_semantic_index(struct r600_shader *vs, struct r600_shader *ps, int id) @@ -52,7 +59,8 @@ static int r600_pipe_shader(struct pipe_context *ctx, struct r600_pipe_shader *s { struct r600_pipe_context *rctx = (struct r600_pipe_context *)ctx; struct r600_shader *rshader = &shader->shader; - void *ptr; + uint32_t *ptr; + int i; /* copy new shader */ if (shader->bo == NULL) { @@ -60,8 +68,10 @@ static int r600_pipe_shader(struct pipe_context *ctx, struct r600_pipe_shader *s if (shader->bo == NULL) { return -ENOMEM; } - ptr = r600_bo_map(rctx->radeon, shader->bo, 0, NULL); - memcpy(ptr, rshader->bc.bytecode, rshader->bc.ndw * 4); + ptr = (uint32_t*)r600_bo_map(rctx->radeon, shader->bo, 0, NULL); + for(i = 0; i < rshader->bc.ndw; i++) { + *(ptr + i) = CPU_TO_LE32(*(rshader->bc.bytecode + i)); + } r600_bo_unmap(rctx->radeon, shader->bo); } /* build state */ @@ -467,6 +477,11 @@ static int tgsi_fetch_rel_const(struct r600_shader_ctx *ctx, unsigned int offset vtx.num_format_all = 2; /* NUM_FORMAT_SCALED */ vtx.format_comp_all = 1; /* FORMAT_COMP_SIGNED */ vtx.srf_mode_all = 1; /* SRF_MODE_NO_ZERO */ +#ifdef PIPE_ARCH_BIG_ENDIAN + vtx.endian = ENDIAN_8IN32; +#else + vtx.endian = ENDIAN_NONE; +#endif if ((r = r600_bc_add_vtx(ctx->bc, &vtx))) return r; diff --git a/src/gallium/drivers/r600/r600_state.c b/src/gallium/drivers/r600/r600_state.c index eba48f8ad74..e9814da84fe 100644 --- a/src/gallium/drivers/r600/r600_state.c +++ b/src/gallium/drivers/r600/r600_state.c @@ -413,7 +413,7 @@ static struct pipe_sampler_view *r600_create_sampler_view(struct pipe_context *c const struct util_format_description *desc; struct r600_resource_texture *tmp; struct r600_resource *rbuffer; - unsigned format; + unsigned format, endian; uint32_t word4 = 0, yuv_format = 0, pitch = 0; unsigned char swizzle[4], array_mode = 0, tile_type = 0; struct r600_bo *bo[2]; @@ -450,6 +450,7 @@ static struct pipe_sampler_view *r600_create_sampler_view(struct pipe_context *c r600_texture_depth_flush(ctx, texture, TRUE); tmp = tmp->flushed_depth_texture; } + endian = r600_colorformat_endian_swap(format); if (tmp->force_int_type) { word4 &= C_038010_NUM_FORMAT_ALL; @@ -490,6 +491,7 @@ static struct pipe_sampler_view *r600_create_sampler_view(struct pipe_context *c word4 | S_038010_SRF_MODE_ALL(V_038010_SRF_MODE_NO_ZERO) | S_038010_REQUEST_SIZE(1) | + S_038010_ENDIAN_SWAP(endian) | S_038010_BASE_LEVEL(state->u.tex.first_level), 0xFFFFFFFF, NULL); r600_pipe_state_add_reg(rstate, R_038014_RESOURCE0_WORD5, S_038014_LAST_LEVEL(state->u.tex.last_level) | @@ -718,7 +720,7 @@ static void r600_cb(struct r600_pipe_context *rctx, struct r600_pipe_state *rsta unsigned level = state->cbufs[cb]->u.tex.level; unsigned pitch, slice; unsigned color_info; - unsigned format, swap, ntype; + unsigned format, swap, ntype, endian; unsigned offset; const struct util_format_description *desc; struct r600_bo *bo[3]; @@ -757,6 +759,11 @@ static void r600_cb(struct r600_pipe_context *rctx, struct r600_pipe_state *rsta format = r600_translate_colorformat(surf->base.format); swap = r600_translate_colorswap(surf->base.format); + if(rbuffer->b.b.b.usage == PIPE_USAGE_STAGING) { + endian = ENDIAN_NONE; + } else { + endian = r600_colorformat_endian_swap(format); + } /* disable when gallium grows int textures */ if ((format == FMT_32_32_32_32 || format == FMT_16_16_16_16) && rtex->force_int_type) @@ -766,7 +773,8 @@ static void r600_cb(struct r600_pipe_context *rctx, struct r600_pipe_state *rsta S_0280A0_COMP_SWAP(swap) | S_0280A0_ARRAY_MODE(rtex->array_mode[level]) | S_0280A0_BLEND_CLAMP(1) | - S_0280A0_NUMBER_TYPE(ntype); + S_0280A0_NUMBER_TYPE(ntype) | + S_0280A0_ENDIAN(endian); /* on R600 this can't be set if BLEND_CLAMP isn't set, if BLEND_FLOAT32 is set of > 11 bits in a UNORM or SNORM */ @@ -1445,8 +1453,10 @@ void r600_pipe_set_buffer_resource(struct r600_pipe_context *rctx, r600_pipe_state_add_reg(rstate, R_038004_RESOURCE0_WORD1, rbuffer->bo_size - offset - 1, 0xFFFFFFFF, NULL); r600_pipe_state_add_reg(rstate, R_038008_RESOURCE0_WORD2, - S_038008_STRIDE(stride), - 0xFFFFFFFF, NULL); +#ifdef PIPE_ARCH_BIG_ENDIAN + S_038008_ENDIAN_SWAP(ENDIAN_8IN32) | +#endif + S_038008_STRIDE(stride), 0xFFFFFFFF, NULL); r600_pipe_state_add_reg(rstate, R_03800C_RESOURCE0_WORD3, 0x00000000, 0xFFFFFFFF, NULL); r600_pipe_state_add_reg(rstate, R_038010_RESOURCE0_WORD4, diff --git a/src/gallium/drivers/r600/r600_state_common.c b/src/gallium/drivers/r600/r600_state_common.c index 43dad0c8023..997c9a597ee 100644 --- a/src/gallium/drivers/r600/r600_state_common.c +++ b/src/gallium/drivers/r600/r600_state_common.c @@ -435,7 +435,7 @@ void r600_draw_vbo(struct pipe_context *ctx, const struct pipe_draw_info *info) { struct r600_pipe_context *rctx = (struct r600_pipe_context *)ctx; struct r600_resource *rbuffer; - u32 vgt_dma_index_type, vgt_draw_initiator, mask; + u32 vgt_dma_index_type, vgt_dma_swap_mode, vgt_draw_initiator, mask; struct r600_draw rdraw; struct r600_pipe_state vgt; struct r600_drawl draw = {}; @@ -467,14 +467,21 @@ void r600_draw_vbo(struct pipe_context *ctx, const struct pipe_draw_info *info) draw.info.index_bias = info->start; } + vgt_dma_swap_mode = 0; switch (draw.index_size) { case 2: vgt_draw_initiator = 0; vgt_dma_index_type = 0; +#ifdef PIPE_ARCH_BIG_ENDIAN + vgt_dma_swap_mode = ENDIAN_8IN16; +#endif break; case 4: vgt_draw_initiator = 0; vgt_dma_index_type = 1; +#ifdef PIPE_ARCH_BIG_ENDIAN + vgt_dma_swap_mode = ENDIAN_8IN32; +#endif break; case 0: vgt_draw_initiator = 2; @@ -521,7 +528,7 @@ void r600_draw_vbo(struct pipe_context *ctx, const struct pipe_draw_info *info) rdraw.vgt_num_indices = draw.info.count; rdraw.vgt_num_instances = draw.info.instance_count; - rdraw.vgt_index_type = vgt_dma_index_type; + rdraw.vgt_index_type = vgt_dma_index_type | (vgt_dma_swap_mode << 2); rdraw.vgt_draw_initiator = vgt_draw_initiator; rdraw.indices = NULL; if (draw.index_buffer) { diff --git a/src/gallium/drivers/r600/r600_state_inlines.h b/src/gallium/drivers/r600/r600_state_inlines.h index ebb372b244f..5d6145661a0 100644 --- a/src/gallium/drivers/r600/r600_state_inlines.h +++ b/src/gallium/drivers/r600/r600_state_inlines.h @@ -501,6 +501,57 @@ static INLINE uint32_t r600_translate_colorformat(enum pipe_format format) } } +static INLINE uint32_t r600_colorformat_endian_swap(uint32_t colorformat) +{ +#ifdef PIPE_ARCH_BIG_ENDIAN + switch(colorformat) { + case V_0280A0_COLOR_4_4: + return(ENDIAN_NONE); + + /* 8-bit buffers. */ + case V_0280A0_COLOR_8: + return(ENDIAN_NONE); + + /* 16-bit buffers. */ + case V_0280A0_COLOR_5_6_5: + case V_0280A0_COLOR_1_5_5_5: + case V_0280A0_COLOR_4_4_4_4: + case V_0280A0_COLOR_16: + case V_0280A0_COLOR_8_8: + return(ENDIAN_8IN16); + + /* 32-bit buffers. */ + case V_0280A0_COLOR_8_8_8_8: + case V_0280A0_COLOR_2_10_10_10: + case V_0280A0_COLOR_8_24: + case V_0280A0_COLOR_24_8: + case V_0280A0_COLOR_32_FLOAT: + case V_0280A0_COLOR_16_16_FLOAT: + case V_0280A0_COLOR_16_16: + return(ENDIAN_8IN32); + + /* 64-bit buffers. */ + case V_0280A0_COLOR_16_16_16_16: + case V_0280A0_COLOR_16_16_16_16_FLOAT: + return(ENDIAN_8IN16); + + case V_0280A0_COLOR_32_32_FLOAT: + case V_0280A0_COLOR_32_32: + return(ENDIAN_8IN32); + + /* 128-bit buffers. */ + case V_0280A0_COLOR_32_32_32_FLOAT: + case V_0280A0_COLOR_32_32_32_32_FLOAT: + case V_0280A0_COLOR_32_32_32_32: + return(ENDIAN_8IN32); + default: + return ENDIAN_NONE; /* Unsupported. */ + } +#else + return ENDIAN_NONE; +#endif +} + static INLINE boolean r600_is_sampler_format_supported(struct pipe_screen *screen, enum pipe_format format) { return r600_translate_texformat(screen, format, NULL, NULL, NULL) != ~0; diff --git a/src/gallium/drivers/r600/r600d.h b/src/gallium/drivers/r600/r600d.h index df70e2889e2..2bff52bec8c 100644 --- a/src/gallium/drivers/r600/r600d.h +++ b/src/gallium/drivers/r600/r600d.h @@ -3460,4 +3460,10 @@ #define SQ_TEX_INST_SAMPLE 0x10 #define SQ_TEX_INST_SAMPLE_L 0x11 #define SQ_TEX_INST_SAMPLE_C 0x18 + +#define ENDIAN_NONE 0 +#define ENDIAN_8IN16 1 +#define ENDIAN_8IN32 2 +#define ENDIAN_8IN64 3 + #endif From 08d1c91e6c185a186e49189b7ed48629f35a4659 Mon Sep 17 00:00:00 2001 From: Alex Deucher Date: Tue, 19 Apr 2011 13:35:19 -0400 Subject: [PATCH 368/420] r600g: add evergreen+ big endian support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Based on Cédric's r6xx/r7xx patch. Signed-off-by: Alex Deucher --- src/gallium/drivers/r600/eg_state_inlines.h | 51 +++++++++++++++++++++ src/gallium/drivers/r600/evergreen_state.c | 21 +++++++-- src/gallium/drivers/r600/evergreend.h | 6 +++ src/gallium/drivers/r600/r600_buffer.c | 2 +- 4 files changed, 74 insertions(+), 6 deletions(-) diff --git a/src/gallium/drivers/r600/eg_state_inlines.h b/src/gallium/drivers/r600/eg_state_inlines.h index 627dcb8e07f..a67e72e4f35 100644 --- a/src/gallium/drivers/r600/eg_state_inlines.h +++ b/src/gallium/drivers/r600/eg_state_inlines.h @@ -506,6 +506,57 @@ static INLINE uint32_t r600_translate_colorformat(enum pipe_format format) } } +static INLINE uint32_t r600_colorformat_endian_swap(uint32_t colorformat) +{ +#ifdef PIPE_ARCH_BIG_ENDIAN + switch(colorformat) { + case V_0280A0_COLOR_4_4: + return(ENDIAN_NONE); + + /* 8-bit buffers. */ + case V_0280A0_COLOR_8: + return(ENDIAN_NONE); + + /* 16-bit buffers. */ + case V_0280A0_COLOR_5_6_5: + case V_0280A0_COLOR_1_5_5_5: + case V_0280A0_COLOR_4_4_4_4: + case V_0280A0_COLOR_16: + case V_0280A0_COLOR_8_8: + return(ENDIAN_8IN16); + + /* 32-bit buffers. */ + case V_0280A0_COLOR_8_8_8_8: + case V_0280A0_COLOR_2_10_10_10: + case V_0280A0_COLOR_8_24: + case V_0280A0_COLOR_24_8: + case V_0280A0_COLOR_32_FLOAT: + case V_0280A0_COLOR_16_16_FLOAT: + case V_0280A0_COLOR_16_16: + return(ENDIAN_8IN32); + + /* 64-bit buffers. */ + case V_0280A0_COLOR_16_16_16_16: + case V_0280A0_COLOR_16_16_16_16_FLOAT: + return(ENDIAN_8IN16); + + case V_0280A0_COLOR_32_32_FLOAT: + case V_0280A0_COLOR_32_32: + return(ENDIAN_8IN32); + + /* 128-bit buffers. */ + case V_0280A0_COLOR_32_32_32_FLOAT: + case V_0280A0_COLOR_32_32_32_32_FLOAT: + case V_0280A0_COLOR_32_32_32_32: + return(ENDIAN_8IN32); + default: + return ENDIAN_NONE; /* Unsupported. */ + } +#else + return ENDIAN_NONE; +#endif +} + static INLINE boolean r600_is_sampler_format_supported(struct pipe_screen *screen, enum pipe_format format) { return r600_translate_texformat(screen, format, NULL, NULL, NULL) != ~0; diff --git a/src/gallium/drivers/r600/evergreen_state.c b/src/gallium/drivers/r600/evergreen_state.c index 6aa22d99d0a..febc6139a81 100644 --- a/src/gallium/drivers/r600/evergreen_state.c +++ b/src/gallium/drivers/r600/evergreen_state.c @@ -357,7 +357,7 @@ static struct pipe_sampler_view *evergreen_create_sampler_view(struct pipe_conte const struct util_format_description *desc; struct r600_resource_texture *tmp; struct r600_resource *rbuffer; - unsigned format; + unsigned format, endian; uint32_t word4 = 0, yuv_format = 0, pitch = 0; unsigned char swizzle[4], array_mode = 0, tile_type = 0; struct r600_bo *bo[2]; @@ -394,6 +394,8 @@ static struct pipe_sampler_view *evergreen_create_sampler_view(struct pipe_conte tmp = tmp->flushed_depth_texture; } + endian = r600_colorformat_endian_swap(format); + if (tmp->force_int_type) { word4 &= C_030010_NUM_FORMAT_ALL; word4 |= S_030010_NUM_FORMAT_ALL(V_030010_SQ_NUM_FORMAT_INT); @@ -425,6 +427,7 @@ static struct pipe_sampler_view *evergreen_create_sampler_view(struct pipe_conte r600_pipe_state_add_reg(rstate, R_030010_RESOURCE0_WORD4, word4 | S_030010_SRF_MODE_ALL(V_030010_SRF_MODE_NO_ZERO) | + S_030010_ENDIAN_SWAP(endian) | S_030010_BASE_LEVEL(state->u.tex.first_level), 0xFFFFFFFF, NULL); r600_pipe_state_add_reg(rstate, R_030014_RESOURCE0_WORD5, S_030014_LAST_LEVEL(state->u.tex.last_level) | @@ -655,7 +658,7 @@ static void evergreen_cb(struct r600_pipe_context *rctx, struct r600_pipe_state unsigned level = state->cbufs[cb]->u.tex.level; unsigned pitch, slice; unsigned color_info; - unsigned format, swap, ntype; + unsigned format, swap, ntype, endian; unsigned offset; unsigned tile_type; const struct util_format_description *desc; @@ -694,6 +697,11 @@ static void evergreen_cb(struct r600_pipe_context *rctx, struct r600_pipe_state format = r600_translate_colorformat(surf->base.format); swap = r600_translate_colorswap(surf->base.format); + if (rbuffer->b.b.b.usage == PIPE_USAGE_STAGING) { + endian = ENDIAN_NONE; + } else { + endian = r600_colorformat_endian_swap(format); + } /* disable when gallium grows int textures */ if ((format == FMT_32_32_32_32 || format == FMT_16_16_16_16) && rtex->force_int_type) @@ -703,7 +711,8 @@ static void evergreen_cb(struct r600_pipe_context *rctx, struct r600_pipe_state S_028C70_COMP_SWAP(swap) | S_028C70_ARRAY_MODE(rtex->array_mode[level]) | S_028C70_BLEND_CLAMP(1) | - S_028C70_NUMBER_TYPE(ntype); + S_028C70_NUMBER_TYPE(ntype) | + S_028C70_ENDIAN(endian); /* we can only set the export size if any thing is snorm/unorm component is > 11 bits, @@ -1548,8 +1557,10 @@ void evergreen_pipe_set_buffer_resource(struct r600_pipe_context *rctx, r600_pipe_state_add_reg(rstate, R_030004_RESOURCE0_WORD1, rbuffer->bo_size - offset - 1, 0xFFFFFFFF, NULL); r600_pipe_state_add_reg(rstate, R_030008_RESOURCE0_WORD2, - S_030008_STRIDE(stride), - 0xFFFFFFFF, NULL); +#ifdef PIPE_ARCH_BIG_ENDIAN + S_030008_ENDIAN_SWAP(ENDIAN_8IN32) | +#endif + S_030008_STRIDE(stride), 0xFFFFFFFF, NULL); r600_pipe_state_add_reg(rstate, R_03000C_RESOURCE0_WORD3, S_03000C_DST_SEL_X(V_03000C_SQ_SEL_X) | S_03000C_DST_SEL_Y(V_03000C_SQ_SEL_Y) | diff --git a/src/gallium/drivers/r600/evergreend.h b/src/gallium/drivers/r600/evergreend.h index c51a163bd06..8489c29a691 100644 --- a/src/gallium/drivers/r600/evergreend.h +++ b/src/gallium/drivers/r600/evergreend.h @@ -1885,4 +1885,10 @@ #define R_03CFF4_SQ_VTX_START_INST_LOC 0x03CFF4 #define R_03A200_SQ_LOOP_CONST_0 0x3A200 + +#define ENDIAN_NONE 0 +#define ENDIAN_8IN16 1 +#define ENDIAN_8IN32 2 +#define ENDIAN_8IN64 3 + #endif diff --git a/src/gallium/drivers/r600/r600_buffer.c b/src/gallium/drivers/r600/r600_buffer.c index c1f063fc21a..71b47e1b056 100644 --- a/src/gallium/drivers/r600/r600_buffer.c +++ b/src/gallium/drivers/r600/r600_buffer.c @@ -282,7 +282,7 @@ void r600_upload_const_buffer(struct r600_pipe_context *rctx, struct r600_resour for(i = 0; i < size / 4; i++) { tmpPtr[i] = bswap_32(*((uint32_t *)ptr + i)); } - + u_upload_data(rctx->vbuf_mgr->uploader, 0, size, tmpPtr, const_offset, (struct pipe_resource**)rbuffer, &flushed); From 8b7f760f835f870b8f6af6c4d6613d44440f1dc5 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Tue, 19 Apr 2011 16:13:43 -0600 Subject: [PATCH 369/420] translate: disable clamping of instanced array indexes This fixes piglit's draw-instanced-divisor test for softpipe on both the generic and SSE paths. This is temporary until we have the correct per-array max_index information. --- .../auxiliary/translate/translate_generic.c | 9 ++++++--- src/gallium/auxiliary/translate/translate_sse.c | 16 ++++++++++------ 2 files changed, 16 insertions(+), 9 deletions(-) diff --git a/src/gallium/auxiliary/translate/translate_generic.c b/src/gallium/auxiliary/translate/translate_generic.c index ad809db720d..e4e1c868333 100644 --- a/src/gallium/auxiliary/translate/translate_generic.c +++ b/src/gallium/auxiliary/translate/translate_generic.c @@ -381,14 +381,17 @@ static ALWAYS_INLINE void PIPE_CDECL generic_run_one( struct translate_generic * if (tg->attrib[attr].instance_divisor) { index = instance_id / tg->attrib[attr].instance_divisor; + /* XXX we need to clamp the index here too, but to a + * per-array max value, not the draw->pt.max_index value + * that's being given to us via translate->set_buffer(). + */ } else { index = elt; + /* clamp to avoid going out of bounds */ + index = MIN2(index, tg->attrib[attr].max_index); } - /* clamp to void going out of bounds */ - index = MIN2(index, tg->attrib[attr].max_index); - src = tg->attrib[attr].input_ptr + tg->attrib[attr].input_stride * index; diff --git a/src/gallium/auxiliary/translate/translate_sse.c b/src/gallium/auxiliary/translate/translate_sse.c index 09e70d93db4..c3d15661f05 100644 --- a/src/gallium/auxiliary/translate/translate_sse.c +++ b/src/gallium/auxiliary/translate/translate_sse.c @@ -1098,14 +1098,19 @@ static boolean init_inputs( struct translate_sse *p, x86_mov_reg_imm(p->func, tmp_ECX, variant->instance_divisor); x86_div(p->func, tmp_ECX); /* EAX = EDX:EAX / ECX */ } + + /* XXX we need to clamp the index here too, but to a + * per-array max value, not the draw->pt.max_index value + * that's being given to us via translate->set_buffer(). + */ } else { x86_mov(p->func, tmp_EAX, elt); - } - /* Clamp to max_index - */ - x86_cmp(p->func, tmp_EAX, buf_max_index); - x86_cmovcc(p->func, tmp_EAX, buf_max_index, cc_AE); + /* Clamp to max_index + */ + x86_cmp(p->func, tmp_EAX, buf_max_index); + x86_cmovcc(p->func, tmp_EAX, buf_max_index, cc_AE); + } x86_imul(p->func, tmp_EAX, buf_stride); x64_rexw(p->func); @@ -1113,7 +1118,6 @@ static boolean init_inputs( struct translate_sse *p, x86_cmp(p->func, p->count_EBP, p->tmp_EAX); - /* In the linear case, keep the buffer pointer instead of the * index number. */ From 6067a2a67f9a7aab2aee051469bea8af03747a95 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20H=C3=B6glund?= Date: Wed, 20 Apr 2011 00:21:42 +0200 Subject: [PATCH 370/420] r600g: don't flush the dest caches on every draw Keep track of when the caches are dirty, and only flush them when the framebuffer state is set and when the context is flushed. Signed-off-by: Dave Airlie --- src/gallium/drivers/r600/evergreen_state.c | 19 ++- src/gallium/drivers/r600/evergreend.h | 1 + src/gallium/drivers/r600/r600.h | 6 + src/gallium/drivers/r600/r600_pipe.h | 2 - src/gallium/drivers/r600/r600_state.c | 12 +- .../winsys/r600/drm/evergreen_hw_context.c | 86 +++++++----- src/gallium/winsys/r600/drm/r600_hw_context.c | 122 ++++++++++++------ 7 files changed, 176 insertions(+), 72 deletions(-) diff --git a/src/gallium/drivers/r600/evergreen_state.c b/src/gallium/drivers/r600/evergreen_state.c index febc6139a81..a972f82fb1d 100644 --- a/src/gallium/drivers/r600/evergreen_state.c +++ b/src/gallium/drivers/r600/evergreen_state.c @@ -822,6 +822,9 @@ static void evergreen_set_framebuffer_state(struct pipe_context *ctx, if (rstate == NULL) return; + evergreen_context_flush_dest_caches(&rctx->ctx); + rctx->ctx.num_dest_buffers = state->nr_cbufs; + /* unreference old buffer and reference new one */ rstate->id = R600_PIPE_STATE_FRAMEBUFFER; @@ -833,6 +836,7 @@ static void evergreen_set_framebuffer_state(struct pipe_context *ctx, } if (state->zsbuf) { evergreen_db(rctx, rstate, state); + rctx->ctx.num_dest_buffers++; } target_mask = 0x00000000; @@ -894,6 +898,19 @@ static void evergreen_set_framebuffer_state(struct pipe_context *ctx, } } +static void evergreen_texture_barrier(struct pipe_context *ctx) +{ + struct r600_pipe_context *rctx = (struct r600_pipe_context *)ctx; + + r600_context_flush_all(&rctx->ctx, S_0085F0_TC_ACTION_ENA(1) | S_0085F0_CB_ACTION_ENA(1) | + S_0085F0_CB0_DEST_BASE_ENA(1) | S_0085F0_CB1_DEST_BASE_ENA(1) | + S_0085F0_CB2_DEST_BASE_ENA(1) | S_0085F0_CB3_DEST_BASE_ENA(1) | + S_0085F0_CB4_DEST_BASE_ENA(1) | S_0085F0_CB5_DEST_BASE_ENA(1) | + S_0085F0_CB6_DEST_BASE_ENA(1) | S_0085F0_CB7_DEST_BASE_ENA(1) | + S_0085F0_CB8_DEST_BASE_ENA(1) | S_0085F0_CB9_DEST_BASE_ENA(1) | + S_0085F0_CB10_DEST_BASE_ENA(1) | S_0085F0_CB11_DEST_BASE_ENA(1)); +} + void evergreen_init_state_functions(struct r600_pipe_context *rctx) { rctx->context.create_blend_state = evergreen_create_blend_state; @@ -934,7 +951,7 @@ void evergreen_init_state_functions(struct r600_pipe_context *rctx) rctx->context.set_viewport_state = evergreen_set_viewport_state; rctx->context.sampler_view_destroy = r600_sampler_view_destroy; rctx->context.redefine_user_buffer = u_default_redefine_user_buffer; - rctx->context.texture_barrier = r600_texture_barrier; + rctx->context.texture_barrier = evergreen_texture_barrier; } void evergreen_init_config(struct r600_pipe_context *rctx) diff --git a/src/gallium/drivers/r600/evergreend.h b/src/gallium/drivers/r600/evergreend.h index 8489c29a691..de445b879a1 100644 --- a/src/gallium/drivers/r600/evergreend.h +++ b/src/gallium/drivers/r600/evergreend.h @@ -43,6 +43,7 @@ #define EVERGREEN_CTL_CONST_OFFSET 0x0003CFF0 #define EVERGREEN_CTL_CONST_END 0x0003E200 +#define EVENT_TYPE_PS_PARTIAL_FLUSH 0x10 #define EVENT_TYPE_ZPASS_DONE 0x15 #define EVENT_TYPE_CACHE_FLUSH_AND_INV_EVENT 0x16 #define EVENT_TYPE(x) ((x) << 0) diff --git a/src/gallium/drivers/r600/r600.h b/src/gallium/drivers/r600/r600.h index 41666f2bff2..0b0df9d019b 100644 --- a/src/gallium/drivers/r600/r600.h +++ b/src/gallium/drivers/r600/r600.h @@ -233,6 +233,8 @@ struct r600_query { #define R600_QUERY_STATE_ENDED (1 << 1) #define R600_QUERY_STATE_SUSPENDED (1 << 2) +#define R600_CONTEXT_DRAW_PENDING (1 << 0) +#define R600_CONTEXT_DST_CACHES_DIRTY (1 << 1) struct r600_context { struct radeon *radeon; @@ -255,6 +257,8 @@ struct r600_context { unsigned num_query_running; struct list_head fenced_bo; unsigned max_db; /* for OQ */ + unsigned num_dest_buffers; + unsigned flags; boolean predicate_drawing; }; @@ -293,9 +297,11 @@ void r600_query_predication(struct r600_context *ctx, struct r600_query *query, void r600_context_emit_fence(struct r600_context *ctx, struct r600_bo *fence, unsigned offset, unsigned value); void r600_context_flush_all(struct r600_context *ctx, unsigned flush_flags); +void r600_context_flush_dest_caches(struct r600_context *ctx); int evergreen_context_init(struct r600_context *ctx, struct radeon *radeon); void evergreen_context_draw(struct r600_context *ctx, const struct r600_draw *draw); +void evergreen_context_flush_dest_caches(struct r600_context *ctx); void evergreen_context_pipe_state_set_ps_resource(struct r600_context *ctx, struct r600_pipe_state *state, unsigned rid); void evergreen_context_pipe_state_set_vs_resource(struct r600_context *ctx, struct r600_pipe_state *state, unsigned rid); void evergreen_context_pipe_state_set_fs_resource(struct r600_context *ctx, struct r600_pipe_state *state, unsigned rid); diff --git a/src/gallium/drivers/r600/r600_pipe.h b/src/gallium/drivers/r600/r600_pipe.h index 5b26d1f7459..88aff0e81bb 100644 --- a/src/gallium/drivers/r600/r600_pipe.h +++ b/src/gallium/drivers/r600/r600_pipe.h @@ -298,8 +298,6 @@ void r600_set_constant_buffer(struct pipe_context *ctx, uint shader, uint index, struct pipe_resource *buffer); void r600_draw_vbo(struct pipe_context *ctx, const struct pipe_draw_info *info); -void r600_texture_barrier(struct pipe_context *ctx); - /* * common helpers */ diff --git a/src/gallium/drivers/r600/r600_state.c b/src/gallium/drivers/r600/r600_state.c index e9814da84fe..ac2e8986b97 100644 --- a/src/gallium/drivers/r600/r600_state.c +++ b/src/gallium/drivers/r600/r600_state.c @@ -857,6 +857,9 @@ static void r600_set_framebuffer_state(struct pipe_context *ctx, if (rstate == NULL) return; + r600_context_flush_dest_caches(&rctx->ctx); + rctx->ctx.num_dest_buffers = state->nr_cbufs; + /* unreference old buffer and reference new one */ rstate->id = R600_PIPE_STATE_FRAMEBUFFER; @@ -868,6 +871,7 @@ static void r600_set_framebuffer_state(struct pipe_context *ctx, } if (state->zsbuf) { r600_db(rctx, rstate, state); + rctx->ctx.num_dest_buffers++; } target_mask = 0x00000000; @@ -947,11 +951,15 @@ static void r600_set_framebuffer_state(struct pipe_context *ctx, } } -void r600_texture_barrier(struct pipe_context *ctx) +static void r600_texture_barrier(struct pipe_context *ctx) { struct r600_pipe_context *rctx = (struct r600_pipe_context *)ctx; - r600_context_flush_all(&rctx->ctx, S_0085F0_TC_ACTION_ENA(1)); + r600_context_flush_all(&rctx->ctx, S_0085F0_TC_ACTION_ENA(1) | S_0085F0_CB_ACTION_ENA(1) | + S_0085F0_CB0_DEST_BASE_ENA(1) | S_0085F0_CB1_DEST_BASE_ENA(1) | + S_0085F0_CB2_DEST_BASE_ENA(1) | S_0085F0_CB3_DEST_BASE_ENA(1) | + S_0085F0_CB4_DEST_BASE_ENA(1) | S_0085F0_CB5_DEST_BASE_ENA(1) | + S_0085F0_CB6_DEST_BASE_ENA(1) | S_0085F0_CB7_DEST_BASE_ENA(1)); } void r600_init_state_functions(struct r600_pipe_context *rctx) diff --git a/src/gallium/winsys/r600/drm/evergreen_hw_context.c b/src/gallium/winsys/r600/drm/evergreen_hw_context.c index b16ba073328..0a5b1a09336 100644 --- a/src/gallium/winsys/r600/drm/evergreen_hw_context.c +++ b/src/gallium/winsys/r600/drm/evergreen_hw_context.c @@ -680,6 +680,17 @@ static inline void evergreen_context_pipe_state_set_sampler(struct r600_context r600_context_dirty_block(ctx, block, dirty, 2); } +static inline void evergreen_context_ps_partial_flush(struct r600_context *ctx) +{ + if (!(ctx->flags & R600_CONTEXT_DRAW_PENDING)) + return; + + ctx->pm4[ctx->pm4_cdwords++] = PKT3(PKT3_EVENT_WRITE, 0, 0); + ctx->pm4[ctx->pm4_cdwords++] = EVENT_TYPE(EVENT_TYPE_PS_PARTIAL_FLUSH) | EVENT_INDEX(4); + + ctx->flags &= ~R600_CONTEXT_DRAW_PENDING; +} + static inline void evergreen_context_pipe_state_set_sampler_border(struct r600_context *ctx, struct r600_pipe_state *state, unsigned offset, unsigned id) { unsigned fake_offset = (offset - R_00A400_TD_PS_SAMPLER0_BORDER_INDEX) * 0x100 + 0x40000 + id * 0x1C; @@ -698,6 +709,7 @@ static inline void evergreen_context_pipe_state_set_sampler_border(struct r600_c if (state->nregs <= 3) { return; } + dirty = block->status & R600_BLOCK_STATUS_DIRTY; if (block->reg[0] != id) { block->reg[0] = id; @@ -711,6 +723,12 @@ static inline void evergreen_context_pipe_state_set_sampler_border(struct r600_c } } + /* We have to flush the shaders before we change the border color + * registers, or previous draw commands that haven't completed yet + * will end up using the new border color. */ + if (dirty & R600_BLOCK_STATUS_DIRTY) + evergreen_context_ps_partial_flush(ctx); + r600_context_dirty_block(ctx, block, dirty, 4); } @@ -735,42 +753,18 @@ void evergreen_context_pipe_state_set_vs_sampler(struct r600_context *ctx, struc void evergreen_context_draw(struct r600_context *ctx, const struct r600_draw *draw) { - struct r600_bo *cb[12]; - struct r600_bo *db; - unsigned ndwords = 9, flush; + unsigned ndwords = 7; struct r600_block *dirty_block = NULL; struct r600_block *next_block; if (draw->indices) { - ndwords = 13; + ndwords = 11; /* make sure there is enough relocation space before scheduling draw */ if (ctx->creloc >= (ctx->nreloc - 1)) { r600_context_flush(ctx); } } - /* find number of color buffer */ - db = r600_context_reg_bo(ctx, R_028048_DB_Z_READ_BASE); - cb[0] = r600_context_reg_bo(ctx, R_028C60_CB_COLOR0_BASE); - cb[1] = r600_context_reg_bo(ctx, R_028C9C_CB_COLOR1_BASE); - cb[2] = r600_context_reg_bo(ctx, R_028CD8_CB_COLOR2_BASE); - cb[3] = r600_context_reg_bo(ctx, R_028D14_CB_COLOR3_BASE); - cb[4] = r600_context_reg_bo(ctx, R_028D50_CB_COLOR4_BASE); - cb[5] = r600_context_reg_bo(ctx, R_028D8C_CB_COLOR5_BASE); - cb[6] = r600_context_reg_bo(ctx, R_028DC8_CB_COLOR6_BASE); - cb[7] = r600_context_reg_bo(ctx, R_028E04_CB_COLOR7_BASE); - cb[8] = r600_context_reg_bo(ctx, R_028E40_CB_COLOR8_BASE); - cb[9] = r600_context_reg_bo(ctx, R_028E5C_CB_COLOR9_BASE); - cb[10] = r600_context_reg_bo(ctx, R_028E78_CB_COLOR10_BASE); - cb[11] = r600_context_reg_bo(ctx, R_028E94_CB_COLOR11_BASE); - for (int i = 0; i < 12; i++) { - if (cb[i]) { - ndwords += 7; - } - } - if (db) - ndwords += 7; - /* queries need some special values */ if (ctx->num_query_running) { r600_context_reg(ctx, @@ -783,6 +777,10 @@ void evergreen_context_draw(struct r600_context *ctx, const struct r600_draw *dr S_02800C_NOOP_CULL_DISABLE(1)); } + /* update the max dword count to make sure we have enough space + * reserved for flushing the destination caches */ + ctx->pm4_ndwords = RADEON_CTX_MAX_PM4 - ctx->num_dest_buffers * 7 - 16; + if ((ctx->pm4_dirty_cdwords + ndwords + ctx->pm4_cdwords) > ctx->pm4_ndwords) { /* need to flush */ r600_context_flush(ctx); @@ -817,12 +815,41 @@ void evergreen_context_draw(struct r600_context *ctx, const struct r600_draw *dr ctx->pm4[ctx->pm4_cdwords++] = draw->vgt_num_indices; ctx->pm4[ctx->pm4_cdwords++] = draw->vgt_draw_initiator; } - ctx->pm4[ctx->pm4_cdwords++] = PKT3(PKT3_EVENT_WRITE, 0, ctx->predicate_drawing); - ctx->pm4[ctx->pm4_cdwords++] = EVENT_TYPE(EVENT_TYPE_CACHE_FLUSH_AND_INV_EVENT) | EVENT_INDEX(0); + + ctx->flags |= (R600_CONTEXT_DRAW_PENDING | R600_CONTEXT_DST_CACHES_DIRTY); + + /* all dirty state have been scheduled in current cs */ + ctx->pm4_dirty_cdwords = 0; +} + +void evergreen_context_flush_dest_caches(struct r600_context *ctx) +{ + struct r600_bo *cb[12]; + struct r600_bo *db; + + if (!(ctx->flags & R600_CONTEXT_DST_CACHES_DIRTY)) + return; + + /* find number of color buffer */ + db = r600_context_reg_bo(ctx, R_028048_DB_Z_READ_BASE); + cb[0] = r600_context_reg_bo(ctx, R_028C60_CB_COLOR0_BASE); + cb[1] = r600_context_reg_bo(ctx, R_028C9C_CB_COLOR1_BASE); + cb[2] = r600_context_reg_bo(ctx, R_028CD8_CB_COLOR2_BASE); + cb[3] = r600_context_reg_bo(ctx, R_028D14_CB_COLOR3_BASE); + cb[4] = r600_context_reg_bo(ctx, R_028D50_CB_COLOR4_BASE); + cb[5] = r600_context_reg_bo(ctx, R_028D8C_CB_COLOR5_BASE); + cb[6] = r600_context_reg_bo(ctx, R_028DC8_CB_COLOR6_BASE); + cb[7] = r600_context_reg_bo(ctx, R_028E04_CB_COLOR7_BASE); + cb[8] = r600_context_reg_bo(ctx, R_028E40_CB_COLOR8_BASE); + cb[9] = r600_context_reg_bo(ctx, R_028E5C_CB_COLOR9_BASE); + cb[10] = r600_context_reg_bo(ctx, R_028E78_CB_COLOR10_BASE); + cb[11] = r600_context_reg_bo(ctx, R_028E94_CB_COLOR11_BASE); /* flush color buffer */ for (int i = 0; i < 12; i++) { if (cb[i]) { + unsigned flush; + if (i > 7) { flush = (S_0085F0_CB8_DEST_BASE_ENA(1) << (i - 8)) | S_0085F0_CB_ACTION_ENA(1); @@ -840,7 +867,6 @@ void evergreen_context_draw(struct r600_context *ctx, const struct r600_draw *dr 0, db); } - /* all dirty state have been scheduled in current cs */ - ctx->pm4_dirty_cdwords = 0; + ctx->flags &= ~R600_CONTEXT_DST_CACHES_DIRTY; } diff --git a/src/gallium/winsys/r600/drm/r600_hw_context.c b/src/gallium/winsys/r600/drm/r600_hw_context.c index d0bef8a7ee9..8e547da657c 100644 --- a/src/gallium/winsys/r600/drm/r600_hw_context.c +++ b/src/gallium/winsys/r600/drm/r600_hw_context.c @@ -798,7 +798,6 @@ void r600_context_bo_flush(struct r600_context *ctx, unsigned flush_flags, unsigned flush_mask, struct r600_bo *rbo) { struct radeon_bo *bo; - bo = r600_bo_get_bo(rbo); /* if bo has already been flushed */ if (!(~bo->last_flush & flush_flags)) { @@ -1032,6 +1031,17 @@ static inline void r600_context_pipe_state_set_sampler(struct r600_context *ctx, r600_context_dirty_block(ctx, block, dirty, 2); } +static inline void r600_context_ps_partial_flush(struct r600_context *ctx) +{ + if (!(ctx->flags & R600_CONTEXT_DRAW_PENDING)) + return; + + ctx->pm4[ctx->pm4_cdwords++] = PKT3(PKT3_EVENT_WRITE, 0, 0); + ctx->pm4[ctx->pm4_cdwords++] = EVENT_TYPE(EVENT_TYPE_PS_PARTIAL_FLUSH) | EVENT_INDEX(4); + + ctx->flags &= ~R600_CONTEXT_DRAW_PENDING; +} + static inline void r600_context_pipe_state_set_sampler_border(struct r600_context *ctx, struct r600_pipe_state *state, unsigned offset) { struct r600_range *range; @@ -1057,6 +1067,12 @@ static inline void r600_context_pipe_state_set_sampler_border(struct r600_contex } } + /* We have to flush the shaders before we change the border color + * registers, or previous draw commands that haven't completed yet + * will end up using the new border color. */ + if (dirty & R600_BLOCK_STATUS_DIRTY) + r600_context_ps_partial_flush(ctx); + r600_context_dirty_block(ctx, block, dirty, 3); } @@ -1136,24 +1152,14 @@ out: LIST_DELINIT(&block->list); } -void r600_context_draw(struct r600_context *ctx, const struct r600_draw *draw) +void r600_context_flush_dest_caches(struct r600_context *ctx) { struct r600_bo *cb[8]; struct r600_bo *db; - unsigned ndwords = 9; - struct r600_block *dirty_block = NULL; - struct r600_block *next_block; - unsigned rv6xx_surface_base_update = 0; - if (draw->indices) { - ndwords = 13; - /* make sure there is enough relocation space before scheduling draw */ - if (ctx->creloc >= (ctx->nreloc - 1)) { - r600_context_flush(ctx); - } - } + if (!(ctx->flags & R600_CONTEXT_DST_CACHES_DIRTY)) + return; - /* find number of color buffer */ db = r600_context_reg_bo(ctx, R_02800C_DB_DEPTH_BASE); cb[0] = r600_context_reg_bo(ctx, R_028040_CB_COLOR0_BASE); cb[1] = r600_context_reg_bo(ctx, R_028044_CB_COLOR1_BASE); @@ -1163,16 +1169,64 @@ void r600_context_draw(struct r600_context *ctx, const struct r600_draw *draw) cb[5] = r600_context_reg_bo(ctx, R_028054_CB_COLOR5_BASE); cb[6] = r600_context_reg_bo(ctx, R_028058_CB_COLOR6_BASE); cb[7] = r600_context_reg_bo(ctx, R_02805C_CB_COLOR7_BASE); + + /* flush the color buffers */ for (int i = 0; i < 8; i++) { - if (cb[i]) { - ndwords += 7; - rv6xx_surface_base_update |= SURFACE_BASE_UPDATE_COLOR(i); - } + if (!cb[i]) + continue; + + r600_context_bo_flush(ctx, + (S_0085F0_CB0_DEST_BASE_ENA(1) << i) | + S_0085F0_CB_ACTION_ENA(1), + 0, cb[i]); } if (db) { - ndwords += 7; - rv6xx_surface_base_update |= SURFACE_BASE_UPDATE_DEPTH; + r600_context_bo_flush(ctx, S_0085F0_DB_ACTION_ENA(1), 0, db); } + + ctx->flags &= ~R600_CONTEXT_DST_CACHES_DIRTY; +} + +void r600_context_draw(struct r600_context *ctx, const struct r600_draw *draw) +{ + unsigned ndwords = 7; + struct r600_block *dirty_block = NULL; + struct r600_block *next_block; + unsigned rv6xx_surface_base_update = 0; + + if (draw->indices) { + ndwords = 11; + /* make sure there is enough relocation space before scheduling draw */ + if (ctx->creloc >= (ctx->nreloc - 1)) { + r600_context_flush(ctx); + } + } + + /* rv6xx surface base update */ + if ((ctx->radeon->family > CHIP_R600) && + (ctx->radeon->family < CHIP_RV770)) { + struct r600_bo *cb[8]; + struct r600_bo *db; + + db = r600_context_reg_bo(ctx, R_02800C_DB_DEPTH_BASE); + cb[0] = r600_context_reg_bo(ctx, R_028040_CB_COLOR0_BASE); + cb[1] = r600_context_reg_bo(ctx, R_028044_CB_COLOR1_BASE); + cb[2] = r600_context_reg_bo(ctx, R_028048_CB_COLOR2_BASE); + cb[3] = r600_context_reg_bo(ctx, R_02804C_CB_COLOR3_BASE); + cb[4] = r600_context_reg_bo(ctx, R_028050_CB_COLOR4_BASE); + cb[5] = r600_context_reg_bo(ctx, R_028054_CB_COLOR5_BASE); + cb[6] = r600_context_reg_bo(ctx, R_028058_CB_COLOR6_BASE); + cb[7] = r600_context_reg_bo(ctx, R_02805C_CB_COLOR7_BASE); + for (int i = 0; i < 8; i++) { + if (cb[i]) { + rv6xx_surface_base_update |= SURFACE_BASE_UPDATE_COLOR(i); + } + } + if (db) { + rv6xx_surface_base_update |= SURFACE_BASE_UPDATE_DEPTH; + } + } + /* XXX also need to update SURFACE_BASE_UPDATE_STRMOUT when we support it */ /* queries need some special values */ @@ -1189,6 +1243,10 @@ void r600_context_draw(struct r600_context *ctx, const struct r600_draw *draw) S_028D10_NOOP_CULL_DISABLE(1)); } + /* update the max dword count to make sure we have enough space + * reserved for flushing the destination caches */ + ctx->pm4_ndwords = RADEON_CTX_MAX_PM4 - ctx->num_dest_buffers * 7 - 16; + if ((ctx->pm4_dirty_cdwords + ndwords + ctx->pm4_cdwords) > ctx->pm4_ndwords) { /* need to flush */ r600_context_flush(ctx); @@ -1198,7 +1256,6 @@ void r600_context_draw(struct r600_context *ctx, const struct r600_draw *draw) R600_ERR("context is too big to be scheduled\n"); return; } - /* enough room to copy packet */ LIST_FOR_EACH_ENTRY_SAFE(dirty_block, next_block, &ctx->dirty, list) { r600_context_block_emit_dirty(ctx, dirty_block); @@ -1227,21 +1284,8 @@ void r600_context_draw(struct r600_context *ctx, const struct r600_draw *draw) ctx->pm4[ctx->pm4_cdwords++] = draw->vgt_num_indices; ctx->pm4[ctx->pm4_cdwords++] = draw->vgt_draw_initiator; } - ctx->pm4[ctx->pm4_cdwords++] = PKT3(PKT3_EVENT_WRITE, 0, ctx->predicate_drawing); - ctx->pm4[ctx->pm4_cdwords++] = EVENT_TYPE(EVENT_TYPE_CACHE_FLUSH_AND_INV_EVENT) | EVENT_INDEX(0); - /* flush color buffer */ - for (int i = 0; i < 8; i++) { - if (cb[i]) { - r600_context_bo_flush(ctx, - (S_0085F0_CB0_DEST_BASE_ENA(1) << i) | - S_0085F0_CB_ACTION_ENA(1), - 0, cb[i]); - } - } - if (db) { - r600_context_bo_flush(ctx, S_0085F0_DB_ACTION_ENA(1), 0, db); - } + ctx->flags |= (R600_CONTEXT_DST_CACHES_DIRTY | R600_CONTEXT_DRAW_PENDING); /* all dirty state have been scheduled in current cs */ ctx->pm4_dirty_cdwords = 0; @@ -1261,9 +1305,12 @@ void r600_context_flush(struct r600_context *ctx) /* suspend queries */ r600_context_queries_suspend(ctx); + if (ctx->radeon->family >= CHIP_CEDAR) + evergreen_context_flush_dest_caches(ctx); + else + r600_context_flush_dest_caches(ctx); + /* emit fence */ - ctx->pm4[ctx->pm4_cdwords++] = PKT3(PKT3_EVENT_WRITE, 0, 0); - ctx->pm4[ctx->pm4_cdwords++] = EVENT_TYPE(EVENT_TYPE_PS_PARTIAL_FLUSH) | EVENT_INDEX(4); ctx->pm4[ctx->pm4_cdwords++] = PKT3(PKT3_EVENT_WRITE_EOP, 4, 0); ctx->pm4[ctx->pm4_cdwords++] = EVENT_TYPE(EVENT_TYPE_CACHE_FLUSH_AND_INV_TS_EVENT) | EVENT_INDEX(5); ctx->pm4[ctx->pm4_cdwords++] = 0; @@ -1311,6 +1358,7 @@ void r600_context_flush(struct r600_context *ctx) ctx->creloc = 0; ctx->pm4_dirty_cdwords = 0; ctx->pm4_cdwords = 0; + ctx->flags = 0; /* resume queries */ r600_context_queries_resume(ctx); From abee17057f52a1b83ab5d7897bc9299e452b5953 Mon Sep 17 00:00:00 2001 From: Alex Deucher Date: Wed, 20 Apr 2011 13:09:09 -0400 Subject: [PATCH 371/420] r600g: fix userspace fences again reinstate b7617346dcff50a66a10c61b95c33682cf629c9e after the rework in 6067a2a67f9a7aab2aee051469bea8af03747a95. Signed-off-by: Alex Deucher --- src/gallium/winsys/r600/drm/r600_hw_context.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/gallium/winsys/r600/drm/r600_hw_context.c b/src/gallium/winsys/r600/drm/r600_hw_context.c index 8e547da657c..662455be28c 100644 --- a/src/gallium/winsys/r600/drm/r600_hw_context.c +++ b/src/gallium/winsys/r600/drm/r600_hw_context.c @@ -1310,6 +1310,9 @@ void r600_context_flush(struct r600_context *ctx) else r600_context_flush_dest_caches(ctx); + /* partial flush is needed to avoid lockups on some chips with user fences */ + ctx->pm4[ctx->pm4_cdwords++] = PKT3(PKT3_EVENT_WRITE, 0, 0); + ctx->pm4[ctx->pm4_cdwords++] = EVENT_TYPE(EVENT_TYPE_PS_PARTIAL_FLUSH) | EVENT_INDEX(4); /* emit fence */ ctx->pm4[ctx->pm4_cdwords++] = PKT3(PKT3_EVENT_WRITE_EOP, 4, 0); ctx->pm4[ctx->pm4_cdwords++] = EVENT_TYPE(EVENT_TYPE_CACHE_FLUSH_AND_INV_TS_EVENT) | EVENT_INDEX(5); From a45b757f788d3a59a446fe2596065ec5f0d5eac2 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Mon, 18 Apr 2011 09:32:06 -0700 Subject: [PATCH 372/420] swrast: Add LUMINANCE, INTENSITY, LUMINANCE_ALPHA to span asserts. Fixes ARB_texture_float/fbo-alphatest-formats. Reviewed-by: Brian Paul --- src/mesa/swrast/s_readpix.c | 3 +++ src/mesa/swrast/s_span.c | 3 +++ 2 files changed, 6 insertions(+) diff --git a/src/mesa/swrast/s_readpix.c b/src/mesa/swrast/s_readpix.c index 5604c2e937e..a201a631c90 100644 --- a/src/mesa/swrast/s_readpix.c +++ b/src/mesa/swrast/s_readpix.c @@ -195,6 +195,9 @@ fast_read_rgba_pixels( struct gl_context *ctx, 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 */ diff --git a/src/mesa/swrast/s_span.c b/src/mesa/swrast/s_span.c index b0f8e490432..f0524e0610e 100644 --- a/src/mesa/swrast/s_span.c +++ b/src/mesa/swrast/s_span.c @@ -1352,6 +1352,9 @@ _swrast_read_rgba_span( struct gl_context *ctx, struct gl_renderbuffer *rb, 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); if (rb->DataType == dstType) { From ba99c2fbd95c5ecd741767d0c37eaf94bf655342 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 15 Apr 2011 13:36:40 -0700 Subject: [PATCH 373/420] mesa: Add renderbuffer accessors for MESA_FORMAT_RGBA_FLOAT32. Reviewed-by: Brian Paul --- src/mesa/main/renderbuffer.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/src/mesa/main/renderbuffer.c b/src/mesa/main/renderbuffer.c index 4a4a9175402..ab55c3688ea 100644 --- a/src/mesa/main/renderbuffer.c +++ b/src/mesa/main/renderbuffer.c @@ -113,6 +113,23 @@ get_row_generic(struct gl_context *ctx, struct gl_renderbuffer *rb, memcpy(values, src, count * _mesa_get_format_bytes(rb->Format)); } +/* Only used for float textures currently, but might also be used for + * RGBA8888, RGBA16, etc. + */ +static void +get_values_generic(struct gl_context *ctx, struct gl_renderbuffer *rb, + GLuint count, const GLint x[], const GLint y[], void *values) +{ + int format_bytes = _mesa_get_format_bytes(rb->Format) / sizeof(GLfloat); + GLuint i; + + for (i = 0; i < count; i++) { + const void *src = rb->GetPointer(ctx, rb, x[i], y[i]); + + memcpy(values + i * format_bytes, src, format_bytes); + } +} + /* For the GL_RED/GL_RG/GL_RGB format/DataType combinations (and * GL_LUMINANCE/GL_INTENSITY?), the Put functions are a matter of * storing those initial components of the value per pixel into the @@ -1238,6 +1255,16 @@ _mesa_set_renderbuffer_accessors(struct gl_renderbuffer *rb) rb->PutMonoValues = put_mono_values_uint; break; + case MESA_FORMAT_RGBA_FLOAT32: + rb->GetRow = get_row_generic; + rb->GetValues = get_values_generic; + rb->PutRow = put_row_generic; + rb->PutRowRGB = NULL; + rb->PutMonoRow = put_mono_row_generic; + rb->PutValues = put_values_generic; + rb->PutMonoValues = put_mono_values_generic; + break; + default: break; } From f7c26109c2cc61150d678529c8b0b5e769e9607e Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 15 Apr 2011 14:18:43 -0700 Subject: [PATCH 374/420] mesa: Add ChooseTexFormat fallbacks for floating point textures. This covers X_FLOAT16 -> X_FLOAT32, and X -> RGBA_FLOAT32. Reviewed-by: Brian Paul --- src/mesa/main/texformat.c | 34 ++++++++++++++++++++++++++++++---- 1 file changed, 30 insertions(+), 4 deletions(-) diff --git a/src/mesa/main/texformat.c b/src/mesa/main/texformat.c index 97b905fd36c..c85a7c05030 100644 --- a/src/mesa/main/texformat.c +++ b/src/mesa/main/texformat.c @@ -327,36 +327,52 @@ _mesa_choose_tex_format( struct gl_context *ctx, GLint internalFormat, switch (internalFormat) { case GL_ALPHA16F_ARB: RETURN_IF_SUPPORTED(MESA_FORMAT_ALPHA_FLOAT16); + RETURN_IF_SUPPORTED(MESA_FORMAT_ALPHA_FLOAT32); + RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_FLOAT32); break; case GL_ALPHA32F_ARB: RETURN_IF_SUPPORTED(MESA_FORMAT_ALPHA_FLOAT32); + RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_FLOAT32); break; case GL_LUMINANCE16F_ARB: RETURN_IF_SUPPORTED(MESA_FORMAT_LUMINANCE_FLOAT16); + RETURN_IF_SUPPORTED(MESA_FORMAT_LUMINANCE_FLOAT32); + RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_FLOAT32); break; case GL_LUMINANCE32F_ARB: RETURN_IF_SUPPORTED(MESA_FORMAT_LUMINANCE_FLOAT32); + RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_FLOAT32); break; case GL_LUMINANCE_ALPHA16F_ARB: RETURN_IF_SUPPORTED(MESA_FORMAT_LUMINANCE_ALPHA_FLOAT16); + RETURN_IF_SUPPORTED(MESA_FORMAT_LUMINANCE_ALPHA_FLOAT32); + RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_FLOAT32); break; case GL_LUMINANCE_ALPHA32F_ARB: RETURN_IF_SUPPORTED(MESA_FORMAT_LUMINANCE_ALPHA_FLOAT32); + RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_FLOAT32); break; case GL_INTENSITY16F_ARB: RETURN_IF_SUPPORTED(MESA_FORMAT_INTENSITY_FLOAT16); + RETURN_IF_SUPPORTED(MESA_FORMAT_INTENSITY_FLOAT32); + RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_FLOAT32); break; case GL_INTENSITY32F_ARB: RETURN_IF_SUPPORTED(MESA_FORMAT_INTENSITY_FLOAT32); + RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_FLOAT32); break; case GL_RGB16F_ARB: RETURN_IF_SUPPORTED(MESA_FORMAT_RGB_FLOAT16); + RETURN_IF_SUPPORTED(MESA_FORMAT_RGB_FLOAT32); + RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_FLOAT32); break; case GL_RGB32F_ARB: RETURN_IF_SUPPORTED(MESA_FORMAT_RGB_FLOAT32); + RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_FLOAT32); break; case GL_RGBA16F_ARB: RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_FLOAT16); + RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_FLOAT32); break; case GL_RGBA32F_ARB: RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_FLOAT32); @@ -631,13 +647,23 @@ _mesa_choose_tex_format( struct gl_context *ctx, GLint internalFormat, if (ctx->Extensions.ARB_texture_rg && ctx->Extensions.ARB_texture_float) { switch (internalFormat) { case GL_R16F: - return MESA_FORMAT_R_FLOAT16; + RETURN_IF_SUPPORTED(MESA_FORMAT_R_FLOAT16); + RETURN_IF_SUPPORTED(MESA_FORMAT_R_FLOAT32); + RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_FLOAT32); + break; case GL_R32F: - return MESA_FORMAT_R_FLOAT32; + RETURN_IF_SUPPORTED(MESA_FORMAT_R_FLOAT32); + RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_FLOAT32); + break; case GL_RG16F: - return MESA_FORMAT_RG_FLOAT16; + RETURN_IF_SUPPORTED(MESA_FORMAT_RG_FLOAT16); + RETURN_IF_SUPPORTED(MESA_FORMAT_RG_FLOAT32); + RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_FLOAT32); + break; case GL_RG32F: - return MESA_FORMAT_RG_FLOAT32; + RETURN_IF_SUPPORTED(MESA_FORMAT_RG_FLOAT32); + RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_FLOAT32); + break; default: ; /* fallthrough */ From bad08969b50bc5b2d014043d55b30323d408e080 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Mon, 18 Apr 2011 09:17:00 -0700 Subject: [PATCH 375/420] mesa: Add renderbuffer accessors for MESA_FORMAT_R_FLOAT32, RG_FLOAT32. Reviewed-by: Brian Paul --- src/mesa/main/renderbuffer.c | 92 ++++++++++++++++++++++++++++++++++++ 1 file changed, 92 insertions(+) diff --git a/src/mesa/main/renderbuffer.c b/src/mesa/main/renderbuffer.c index ab55c3688ea..fce70d4219a 100644 --- a/src/mesa/main/renderbuffer.c +++ b/src/mesa/main/renderbuffer.c @@ -1109,6 +1109,78 @@ get_values_rg1616(struct gl_context *ctx, struct gl_renderbuffer *rb, } } +/********************************************************************** + * Functions for MESA_FORMAT_R_FLOAT32. + */ +static void +get_row_r_float32(struct gl_context *ctx, struct gl_renderbuffer *rb, + GLuint count, GLint x, GLint y, void *values) +{ + const GLfloat *src = rb->GetPointer(ctx, rb, x, y); + GLfloat *dst = values; + GLuint i; + + for (i = 0; i < count; i++) { + dst[i * 4 + RCOMP] = src[i]; + dst[i * 4 + GCOMP] = 0.0; + dst[i * 4 + BCOMP] = 0.0; + dst[i * 4 + ACOMP] = 1.0; + } +} + +static void +get_values_r_float32(struct gl_context *ctx, struct gl_renderbuffer *rb, + GLuint count, const GLint x[], const GLint y[], + void *values) +{ + GLfloat *dst = values; + GLuint i; + + for (i = 0; i < count; i++) { + const GLfloat *src = rb->GetPointer(ctx, rb, x[i], y[i]); + dst[i * 4 + RCOMP] = src[0]; + dst[i * 4 + GCOMP] = 0.0; + dst[i * 4 + BCOMP] = 0.0; + dst[i * 4 + ACOMP] = 1.0; + } +} + +/********************************************************************** + * Functions for MESA_FORMAT_RG_FLOAT32. + */ +static void +get_row_rg_float32(struct gl_context *ctx, struct gl_renderbuffer *rb, + GLuint count, GLint x, GLint y, void *values) +{ + const GLfloat *src = rb->GetPointer(ctx, rb, x, y); + GLfloat *dst = values; + GLuint i; + + for (i = 0; i < count; i++) { + dst[i * 4 + RCOMP] = src[i * 2 + 0]; + dst[i * 4 + GCOMP] = src[i * 2 + 1]; + dst[i * 4 + BCOMP] = 0.0; + dst[i * 4 + ACOMP] = 1.0; + } +} + +static void +get_values_rg_float32(struct gl_context *ctx, struct gl_renderbuffer *rb, + GLuint count, const GLint x[], const GLint y[], + void *values) +{ + GLfloat *dst = values; + GLuint i; + + for (i = 0; i < count; i++) { + const GLfloat *src = rb->GetPointer(ctx, rb, x[i], y[i]); + dst[i * 4 + RCOMP] = src[0]; + dst[i * 4 + GCOMP] = src[1]; + dst[i * 4 + BCOMP] = 0.0; + dst[i * 4 + ACOMP] = 1.0; + } +} + /** * This is the default software fallback for gl_renderbuffer's span * access functions. @@ -1265,6 +1337,26 @@ _mesa_set_renderbuffer_accessors(struct gl_renderbuffer *rb) rb->PutMonoValues = put_mono_values_generic; break; + case MESA_FORMAT_RG_FLOAT32: + rb->GetRow = get_row_rg_float32; + rb->GetValues = get_values_rg_float32; + rb->PutRow = put_row_generic; + rb->PutRowRGB = NULL; + rb->PutMonoRow = put_mono_row_generic; + rb->PutValues = put_values_generic; + rb->PutMonoValues = put_mono_values_generic; + break; + + case MESA_FORMAT_R_FLOAT32: + rb->GetRow = get_row_r_float32; + rb->GetValues = get_values_r_float32; + rb->PutRow = put_row_generic; + rb->PutRowRGB = NULL; + rb->PutMonoRow = put_mono_row_generic; + rb->PutValues = put_values_generic; + rb->PutMonoValues = put_mono_values_generic; + break; + default: break; } From b31a99367ca374e58ce8dda8a826e71fa9a922f3 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Mon, 18 Apr 2011 10:53:06 -0700 Subject: [PATCH 376/420] mesa: Add renderbuffer accessors for A, I, L, FLOAT32. Of these, intel will be using I and L initially, and A once we rewrite fragment shaders and the CC for rendering to it as R. Reviewed-by: Brian Paul --- src/mesa/main/renderbuffer.c | 218 +++++++++++++++++++++++++++++++++++ 1 file changed, 218 insertions(+) diff --git a/src/mesa/main/renderbuffer.c b/src/mesa/main/renderbuffer.c index fce70d4219a..8b9033f68bf 100644 --- a/src/mesa/main/renderbuffer.c +++ b/src/mesa/main/renderbuffer.c @@ -1109,6 +1109,194 @@ get_values_rg1616(struct gl_context *ctx, struct gl_renderbuffer *rb, } } +/********************************************************************** + * Functions for MESA_FORMAT_INTENSITY_FLOAT32. + */ +static void +get_row_i_float32(struct gl_context *ctx, struct gl_renderbuffer *rb, + GLuint count, GLint x, GLint y, void *values) +{ + const GLfloat *src = rb->GetPointer(ctx, rb, x, y); + GLfloat *dst = values; + GLuint i; + + for (i = 0; i < count; i++) { + dst[i * 4 + RCOMP] = + dst[i * 4 + GCOMP] = + dst[i * 4 + BCOMP] = + dst[i * 4 + ACOMP] = src[i]; + } +} + +static void +get_values_i_float32(struct gl_context *ctx, struct gl_renderbuffer *rb, + GLuint count, const GLint x[], const GLint y[], + void *values) +{ + GLfloat *dst = values; + GLuint i; + + for (i = 0; i < count; i++) { + const GLfloat *src = rb->GetPointer(ctx, rb, x[i], y[i]); + dst[i * 4 + RCOMP] = + dst[i * 4 + GCOMP] = + dst[i * 4 + BCOMP] = + dst[i * 4 + ACOMP] = src[0]; + } +} + +/********************************************************************** + * Functions for MESA_FORMAT_LUMINANCE_FLOAT32. + */ +static void +get_row_l_float32(struct gl_context *ctx, struct gl_renderbuffer *rb, + GLuint count, GLint x, GLint y, void *values) +{ + const GLfloat *src = rb->GetPointer(ctx, rb, x, y); + GLfloat *dst = values; + GLuint i; + + for (i = 0; i < count; i++) { + dst[i * 4 + RCOMP] = + dst[i * 4 + GCOMP] = + dst[i * 4 + BCOMP] = src[i]; + dst[i * 4 + ACOMP] = 1.0; + } +} + +static void +get_values_l_float32(struct gl_context *ctx, struct gl_renderbuffer *rb, + GLuint count, const GLint x[], const GLint y[], + void *values) +{ + GLfloat *dst = values; + GLuint i; + + for (i = 0; i < count; i++) { + const GLfloat *src = rb->GetPointer(ctx, rb, x[i], y[i]); + dst[i * 4 + RCOMP] = + dst[i * 4 + GCOMP] = + dst[i * 4 + BCOMP] = src[0]; + dst[i * 4 + ACOMP] = 1.0; + } +} + +/********************************************************************** + * Functions for MESA_FORMAT_ALPHA_FLOAT32. + */ +static void +get_row_a_float32(struct gl_context *ctx, struct gl_renderbuffer *rb, + GLuint count, GLint x, GLint y, void *values) +{ + const GLfloat *src = rb->GetPointer(ctx, rb, x, y); + GLfloat *dst = values; + GLuint i; + + for (i = 0; i < count; i++) { + dst[i * 4 + RCOMP] = 0.0; + dst[i * 4 + GCOMP] = 0.0; + dst[i * 4 + BCOMP] = 0.0; + dst[i * 4 + ACOMP] = src[i]; + } +} + +static void +get_values_a_float32(struct gl_context *ctx, struct gl_renderbuffer *rb, + GLuint count, const GLint x[], const GLint y[], + void *values) +{ + GLfloat *dst = values; + GLuint i; + + for (i = 0; i < count; i++) { + const GLfloat *src = rb->GetPointer(ctx, rb, x[i], y[i]); + dst[i * 4 + RCOMP] = 0.0; + dst[i * 4 + GCOMP] = 0.0; + dst[i * 4 + BCOMP] = 0.0; + dst[i * 4 + ACOMP] = src[0]; + } +} + +static void +put_row_a_float32(struct gl_context *ctx, struct gl_renderbuffer *rb, + GLuint count, GLint x, GLint y, + const void *values, const GLubyte *mask) +{ + float *dst = rb->GetPointer(ctx, rb, x, y); + const float *src = values; + unsigned int i; + + if (mask) { + for (i = 0; i < count; i++) { + if (mask[i]) { + dst[i] = src[i * 4 + ACOMP]; + } + } + } + else { + for (i = 0; i < count; i++) { + dst[i] = src[i * 4 + ACOMP]; + } + } +} + +static void +put_mono_row_a_float32(struct gl_context *ctx, struct gl_renderbuffer *rb, + GLuint count, GLint x, GLint y, + const void *value, const GLubyte *mask) +{ + float *dst = rb->GetPointer(ctx, rb, x, y); + const float *src = value; + unsigned int i; + + if (mask) { + for (i = 0; i < count; i++) { + if (mask[i]) { + dst[i] = src[ACOMP]; + } + } + } + else { + for (i = 0; i < count; i++) { + dst[i] = src[ACOMP]; + } + } +} + +static void +put_values_a_float32(struct gl_context *ctx, struct gl_renderbuffer *rb, + GLuint count, const GLint x[], const GLint y[], + const void *values, const GLubyte *mask) +{ + const float *src = values; + unsigned int i; + + for (i = 0; i < count; i++) { + if (!mask || mask[i]) { + float *dst = rb->GetPointer(ctx, rb, x[i], y[i]); + + *dst = src[i * 4 + ACOMP]; + } + } +} + +static void +put_mono_values_a_float32(struct gl_context *ctx, + struct gl_renderbuffer *rb, + GLuint count, const GLint x[], const GLint y[], + const void *value, const GLubyte *mask) +{ + const float *src = value; + unsigned int i; + + for (i = 0; i < count; i++) { + if (!mask || mask[i]) { + float *dst = rb->GetPointer(ctx, rb, x[i], y[i]); + *dst = src[ACOMP]; + } + } +} + /********************************************************************** * Functions for MESA_FORMAT_R_FLOAT32. */ @@ -1337,6 +1525,36 @@ _mesa_set_renderbuffer_accessors(struct gl_renderbuffer *rb) rb->PutMonoValues = put_mono_values_generic; break; + case MESA_FORMAT_INTENSITY_FLOAT32: + rb->GetRow = get_row_i_float32; + rb->GetValues = get_values_i_float32; + rb->PutRow = put_row_generic; + rb->PutRowRGB = NULL; + rb->PutMonoRow = put_mono_row_generic; + rb->PutValues = put_values_generic; + rb->PutMonoValues = put_mono_values_generic; + break; + + case MESA_FORMAT_LUMINANCE_FLOAT32: + rb->GetRow = get_row_l_float32; + rb->GetValues = get_values_l_float32; + rb->PutRow = put_row_generic; + rb->PutRowRGB = NULL; + rb->PutMonoRow = put_mono_row_generic; + rb->PutValues = put_values_generic; + rb->PutMonoValues = put_mono_values_generic; + break; + + case MESA_FORMAT_ALPHA_FLOAT32: + rb->GetRow = get_row_a_float32; + rb->GetValues = get_values_a_float32; + rb->PutRow = put_row_a_float32; + rb->PutRowRGB = NULL; + rb->PutMonoRow = put_mono_row_a_float32; + rb->PutValues = put_values_a_float32; + rb->PutMonoValues = put_mono_values_a_float32; + break; + case MESA_FORMAT_RG_FLOAT32: rb->GetRow = get_row_rg_float32; rb->GetValues = get_values_rg_float32; From 0bbbeba2db0f3fd382d2f591bebc248c5ed40fb5 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 15 Apr 2011 18:15:59 -0700 Subject: [PATCH 377/420] intel: Add support for blit copies of >32bpp formats. The blitter only does up 32bpp at a time, so we handle it by mangling coordinates and calling the surface 32bpp. Fixes ARB_texture_rg/fbo-generatemipmap-formats-float with ARB_texture_float. Reviewed-by: Brian Paul --- src/mesa/drivers/dri/intel/intel_blit.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/mesa/drivers/dri/intel/intel_blit.c b/src/mesa/drivers/dri/intel/intel_blit.c index 487c9ea7818..579a45b5aaf 100644 --- a/src/mesa/drivers/dri/intel/intel_blit.c +++ b/src/mesa/drivers/dri/intel/intel_blit.c @@ -146,6 +146,17 @@ intelEmitCopyBlit(struct intel_context *intel, src_pitch *= cpp; dst_pitch *= cpp; + /* For big formats (such as floating point), do the copy using 32bpp and + * multiply the coordinates. + */ + if (cpp > 4) { + assert(cpp % 4 == 0); + dst_x *= cpp / 4; + dst_x2 *= cpp / 4; + src_x *= cpp / 4; + cpp = 4; + } + BR13 = br13_for_cpp(cpp) | translate_raster_op(logic_op) << 16; switch (cpp) { From 87478cd6e3e6349abc2688b390f8845d1e21af3d Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 15 Apr 2011 11:00:00 -0700 Subject: [PATCH 378/420] intel: Add support for ARB_texture_float. For 1 and 2-channel formats the hardware only supports rendering to R and RG. To do I and L render targets we just call them R and everything works out. For A, we would need to rewrite the CC to do the alpha channel's blending on color instead, and send the fragment alpha down the red channel. For LA, there doesn't seem to be any hope, because we can't do independent color/alpha blending while treating the LA surface as RG. Reviewed-by: Brian Paul --- .../drivers/dri/i965/brw_wm_surface_state.c | 32 ++++++++++++++++++- src/mesa/drivers/dri/intel/intel_blit.c | 4 ++- src/mesa/drivers/dri/intel/intel_context.c | 11 +++++++ src/mesa/drivers/dri/intel/intel_extensions.c | 3 ++ src/mesa/drivers/dri/intel/intel_span.c | 5 +++ src/mesa/drivers/dri/intel/intel_tex_format.c | 9 ++++++ 6 files changed, 62 insertions(+), 2 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c index 5a478a76e5c..e3396a3cbd4 100644 --- a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c +++ b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c @@ -105,17 +105,32 @@ static uint32_t brw_format_for_mesa_format[MESA_FORMAT_COUNT] = [MESA_FORMAT_SIGNED_RGBA8888_REV] = BRW_SURFACEFORMAT_R8G8B8A8_SNORM, [MESA_FORMAT_SIGNED_R16] = BRW_SURFACEFORMAT_R16_SNORM, [MESA_FORMAT_SIGNED_GR1616] = BRW_SURFACEFORMAT_R16G16_SNORM, + [MESA_FORMAT_RGBA_FLOAT32] = BRW_SURFACEFORMAT_R32G32B32A32_FLOAT, + [MESA_FORMAT_RG_FLOAT32] = BRW_SURFACEFORMAT_R32G32_FLOAT, + [MESA_FORMAT_R_FLOAT32] = BRW_SURFACEFORMAT_R32_FLOAT, + [MESA_FORMAT_INTENSITY_FLOAT32] = BRW_SURFACEFORMAT_I32_FLOAT, + [MESA_FORMAT_LUMINANCE_FLOAT32] = BRW_SURFACEFORMAT_L32_FLOAT, + [MESA_FORMAT_ALPHA_FLOAT32] = BRW_SURFACEFORMAT_A32_FLOAT, + [MESA_FORMAT_LUMINANCE_ALPHA_FLOAT32] = BRW_SURFACEFORMAT_L32A32_FLOAT, }; bool brw_render_target_supported(gl_format format) { + /* These are not color render targets like the table holds, but we + * ask the question for FBO completeness. + */ if (format == MESA_FORMAT_S8_Z24 || format == MESA_FORMAT_X8_Z24 || format == MESA_FORMAT_Z16) { return true; } + /* The value of this BRW_SURFACEFORMAT is 0, so hardcode it. + */ + if (format == MESA_FORMAT_RGBA_FLOAT32) + return true; + /* Not exactly true, as some of those formats are not renderable. * But at least we know how to translate them. */ @@ -159,6 +174,13 @@ static GLuint translate_tex_format( gl_format mesa_format, return brw_format_for_mesa_format[mesa_format]; else if (srgb_decode == GL_SKIP_DECODE_EXT) return brw_format_for_mesa_format[_mesa_get_srgb_format_linear(mesa_format)]; + + case MESA_FORMAT_RGBA_FLOAT32: + /* The value of this BRW_SURFACEFORMAT is 0, which tricks the + * assertion below. + */ + return BRW_SURFACEFORMAT_R32G32B32A32_FLOAT; + default: assert(brw_format_for_mesa_format[mesa_format] != 0); return brw_format_for_mesa_format[mesa_format]; @@ -430,6 +452,14 @@ brw_update_renderbuffer_surface(struct brw_context *brw, */ surf->ss0.surface_format = BRW_SURFACEFORMAT_B8G8R8A8_UNORM; break; + case MESA_FORMAT_INTENSITY_FLOAT32: + case MESA_FORMAT_LUMINANCE_FLOAT32: + /* For these formats, we just need to read/write the first + * channel into R, which is to say that we just treat them as + * GL_RED. + */ + surf->ss0.surface_format = BRW_SURFACEFORMAT_R32_FLOAT; + break; case MESA_FORMAT_SARGB8: /* without GL_EXT_framebuffer_sRGB we shouldn't bind sRGB surfaces to the blend/update as sRGB */ @@ -439,8 +469,8 @@ brw_update_renderbuffer_surface(struct brw_context *brw, surf->ss0.surface_format = BRW_SURFACEFORMAT_B8G8R8A8_UNORM; break; default: + assert(brw_render_target_supported(irb->Base.Format)); surf->ss0.surface_format = brw_format_for_mesa_format[irb->Base.Format]; - assert(surf->ss0.surface_format != 0); } surf->ss0.surface_type = BRW_SURFACE_2D; diff --git a/src/mesa/drivers/dri/intel/intel_blit.c b/src/mesa/drivers/dri/intel/intel_blit.c index 579a45b5aaf..5aac1f6fa24 100644 --- a/src/mesa/drivers/dri/intel/intel_blit.c +++ b/src/mesa/drivers/dri/intel/intel_blit.c @@ -293,7 +293,7 @@ intelClearWithBlit(struct gl_context *ctx, GLbitfield mask) irb->region->buffer, (pitch * cpp), x1, y1, x2 - x1, y2 - y1); - BR13 = br13_for_cpp(cpp) | 0xf0 << 16; + BR13 = 0xf0 << 16; CMD = XY_COLOR_BLT_CMD; /* Setup the blit command */ @@ -354,6 +354,8 @@ intelClearWithBlit(struct gl_context *ctx, GLbitfield mask) } } + BR13 |= br13_for_cpp(cpp); + assert(x1 < x2); assert(y1 < y2); diff --git a/src/mesa/drivers/dri/intel/intel_context.c b/src/mesa/drivers/dri/intel/intel_context.c index 562fe86bdf1..02e7f7717fc 100644 --- a/src/mesa/drivers/dri/intel/intel_context.c +++ b/src/mesa/drivers/dri/intel/intel_context.c @@ -743,8 +743,19 @@ intelInitContext(struct intel_context *intel, ctx->TextureFormatSupported[MESA_FORMAT_SL8] = GL_TRUE; ctx->TextureFormatSupported[MESA_FORMAT_SLA8] = GL_TRUE; } + +#ifdef TEXTURE_FLOAT_ENABLED + ctx->TextureFormatSupported[MESA_FORMAT_RGBA_FLOAT32] = GL_TRUE; + ctx->TextureFormatSupported[MESA_FORMAT_RG_FLOAT32] = GL_TRUE; + ctx->TextureFormatSupported[MESA_FORMAT_R_FLOAT32] = GL_TRUE; + ctx->TextureFormatSupported[MESA_FORMAT_INTENSITY_FLOAT32] = GL_TRUE; + ctx->TextureFormatSupported[MESA_FORMAT_LUMINANCE_FLOAT32] = GL_TRUE; + ctx->TextureFormatSupported[MESA_FORMAT_ALPHA_FLOAT32] = GL_TRUE; + ctx->TextureFormatSupported[MESA_FORMAT_LUMINANCE_ALPHA_FLOAT32] = GL_TRUE; #endif +#endif /* !I915 */ + driParseConfigFiles(&intel->optionCache, &intelScreen->optionCache, sPriv->myNum, (intel->gen >= 4) ? "i965" : "i915"); if (intel->gen < 4) diff --git a/src/mesa/drivers/dri/intel/intel_extensions.c b/src/mesa/drivers/dri/intel/intel_extensions.c index febc1d4f859..ad37a985cc4 100644 --- a/src/mesa/drivers/dri/intel/intel_extensions.c +++ b/src/mesa/drivers/dri/intel/intel_extensions.c @@ -171,6 +171,9 @@ static const struct dri_extension brw_extensions[] = { { "GL_ARB_point_sprite", NULL }, { "GL_ARB_seamless_cube_map", NULL }, { "GL_ARB_shadow", NULL }, +#ifdef TEXTURE_FLOAT_ENABLED + { "GL_ARB_texture_float", NULL }, +#endif { "GL_MESA_texture_signed_rgba", NULL }, { "GL_ARB_texture_non_power_of_two", NULL }, { "GL_ARB_texture_rg", NULL }, diff --git a/src/mesa/drivers/dri/intel/intel_span.c b/src/mesa/drivers/dri/intel/intel_span.c index 6b840f31f3a..16bce20317e 100644 --- a/src/mesa/drivers/dri/intel/intel_span.c +++ b/src/mesa/drivers/dri/intel/intel_span.c @@ -339,6 +339,11 @@ static span_init_func intel_span_init_funcs[MESA_FORMAT_COUNT] = [MESA_FORMAT_RG88] = _mesa_set_renderbuffer_accessors, [MESA_FORMAT_R16] = _mesa_set_renderbuffer_accessors, [MESA_FORMAT_RG1616] = _mesa_set_renderbuffer_accessors, + [MESA_FORMAT_RGBA_FLOAT32] = _mesa_set_renderbuffer_accessors, + [MESA_FORMAT_RG_FLOAT32] = _mesa_set_renderbuffer_accessors, + [MESA_FORMAT_R_FLOAT32] = _mesa_set_renderbuffer_accessors, + [MESA_FORMAT_INTENSITY_FLOAT32] = _mesa_set_renderbuffer_accessors, + [MESA_FORMAT_LUMINANCE_FLOAT32] = _mesa_set_renderbuffer_accessors, }; bool diff --git a/src/mesa/drivers/dri/intel/intel_tex_format.c b/src/mesa/drivers/dri/intel/intel_tex_format.c index 9a6c24bf0d8..befa615d1e6 100644 --- a/src/mesa/drivers/dri/intel/intel_tex_format.c +++ b/src/mesa/drivers/dri/intel/intel_tex_format.c @@ -31,6 +31,15 @@ intel_mesa_format_to_rb_datatype(gl_format format) return GL_UNSIGNED_INT; case MESA_FORMAT_S8_Z24: return GL_UNSIGNED_INT_24_8_EXT; + case MESA_FORMAT_RGBA_FLOAT32: + case MESA_FORMAT_RG_FLOAT32: + case MESA_FORMAT_R_FLOAT32: + case MESA_FORMAT_INTENSITY_FLOAT32: + case MESA_FORMAT_LUMINANCE_FLOAT32: + case MESA_FORMAT_ALPHA_FLOAT32: + case MESA_FORMAT_LUMINANCE_ALPHA_FLOAT32: + return GL_FLOAT; + default: _mesa_problem(NULL, "unexpected MESA_FORMAT for renderbuffer"); return GL_UNSIGNED_BYTE; From b2491972591788fea0e55805cea3e9be8760969b Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 15 Apr 2011 15:48:32 -0700 Subject: [PATCH 379/420] meta: Add support for ARB_color_buffer_float to _mesa_meta_DrawPixels. Tested with piglit arb_color_buffer_float-drawpixels. Reviewed-by: Brian Paul --- src/mesa/drivers/common/meta.c | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/src/mesa/drivers/common/meta.c b/src/mesa/drivers/common/meta.c index c92bf29c30f..27681a29139 100644 --- a/src/mesa/drivers/common/meta.c +++ b/src/mesa/drivers/common/meta.c @@ -92,6 +92,7 @@ #define META_TEXTURE 0x1000 #define META_VERTEX 0x2000 #define META_VIEWPORT 0x4000 +#define META_CLAMP_FRAGMENT_COLOR 0x8000 /*@}*/ @@ -180,6 +181,9 @@ struct save_state GLint ViewportX, ViewportY, ViewportW, ViewportH; GLclampd DepthNear, DepthFar; + /** META_CLAMP_FRAGMENT_COLOR */ + GLenum ClampFragmentColor; + /** Miscellaneous (always disabled) */ GLboolean Lighting; }; @@ -569,6 +573,17 @@ _mesa_meta_begin(struct gl_context *ctx, GLbitfield state) _mesa_DepthRange(0.0, 1.0); } + if (state & META_CLAMP_FRAGMENT_COLOR) { + save->ClampFragmentColor = ctx->Color.ClampFragmentColor; + + /* Generally in here we want to do clamping according to whether + * it's for the pixel path (ClampFragmentColor is GL_TRUE), + * regardless of the internal implementation of the metaops. + */ + if (ctx->Color.ClampFragmentColor != GL_TRUE) + _mesa_ClampColorARB(GL_CLAMP_FRAGMENT_COLOR, GL_FALSE); + } + /* misc */ { save->Lighting = ctx->Light.Enabled; @@ -833,6 +848,10 @@ _mesa_meta_end(struct gl_context *ctx) _mesa_DepthRange(save->DepthNear, save->DepthFar); } + if (state & META_CLAMP_FRAGMENT_COLOR) { + _mesa_ClampColorARB(GL_CLAMP_FRAGMENT_COLOR, save->ClampFragmentColor); + } + /* misc */ if (save->Lighting) { _mesa_set_enable(ctx, GL_LIGHTING, GL_TRUE); @@ -1803,6 +1822,14 @@ _mesa_meta_DrawPixels(struct gl_context *ctx, texIntFormat = format; else texIntFormat = GL_RGBA; + + /* If we're not supposed to clamp the resulting color, then just + * promote our texture to fully float. We could do better by + * just going for the matching set of channels, in floating + * point. + */ + if (ctx->Color.ClampFragmentColor != GL_TRUE) + texIntFormat = GL_RGBA32F; } else if (_mesa_is_stencil_format(format)) { if (ctx->Extensions.ARB_fragment_program && @@ -1861,6 +1888,7 @@ _mesa_meta_DrawPixels(struct gl_context *ctx, META_TRANSFORM | META_VERTEX | META_VIEWPORT | + META_CLAMP_FRAGMENT_COLOR | metaExtraSave)); newTex = alloc_texture(tex, width, height, texIntFormat); From 99fa449bb9cf93a8dd2b840804c5bc44e51483dc Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 15 Apr 2011 14:39:47 -0700 Subject: [PATCH 380/420] meta: Add support for ARB_color_buffer_float to _mesa_meta_Clear(). Tested with piglit arb_color_buffer_float-clear. Reviewed-by: Brian Paul --- src/mesa/drivers/common/meta.c | 28 ++++++++++++++++++++++++---- 1 file changed, 24 insertions(+), 4 deletions(-) diff --git a/src/mesa/drivers/common/meta.c b/src/mesa/drivers/common/meta.c index 27681a29139..6c35fa10d8a 100644 --- a/src/mesa/drivers/common/meta.c +++ b/src/mesa/drivers/common/meta.c @@ -93,6 +93,7 @@ #define META_VERTEX 0x2000 #define META_VIEWPORT 0x4000 #define META_CLAMP_FRAGMENT_COLOR 0x8000 +#define META_CLAMP_VERTEX_COLOR 0x10000 /*@}*/ @@ -184,6 +185,9 @@ struct save_state /** META_CLAMP_FRAGMENT_COLOR */ GLenum ClampFragmentColor; + /** META_CLAMP_VERTEX_COLOR */ + GLenum ClampVertexColor; + /** Miscellaneous (always disabled) */ GLboolean Lighting; }; @@ -584,6 +588,15 @@ _mesa_meta_begin(struct gl_context *ctx, GLbitfield state) _mesa_ClampColorARB(GL_CLAMP_FRAGMENT_COLOR, GL_FALSE); } + if (state & META_CLAMP_VERTEX_COLOR) { + save->ClampVertexColor = ctx->Light.ClampVertexColor; + + /* Generally in here we never want vertex color clamping -- + * result clamping is only dependent on fragment clamping. + */ + _mesa_ClampColorARB(GL_CLAMP_VERTEX_COLOR, GL_FALSE); + } + /* misc */ { save->Lighting = ctx->Light.Enabled; @@ -852,6 +865,10 @@ _mesa_meta_end(struct gl_context *ctx) _mesa_ClampColorARB(GL_CLAMP_FRAGMENT_COLOR, save->ClampFragmentColor); } + if (state & META_CLAMP_VERTEX_COLOR) { + _mesa_ClampColorARB(GL_CLAMP_VERTEX_COLOR, save->ClampVertexColor); + } + /* misc */ if (save->Lighting) { _mesa_set_enable(ctx, GL_LIGHTING, GL_TRUE); @@ -1460,6 +1477,9 @@ _mesa_meta_Clear(struct gl_context *ctx, GLbitfield buffers) /* GL_COLOR_BUFFER_BIT */ if (buffers & BUFFER_BITS_COLOR) { /* leave colormask, glDrawBuffer state as-is */ + + /* Clears never have the color clamped. */ + _mesa_ClampColorARB(GL_CLAMP_FRAGMENT_COLOR, GL_FALSE); } else { ASSERT(metaSave & META_COLOR_MASK); @@ -1513,10 +1533,10 @@ _mesa_meta_Clear(struct gl_context *ctx, GLbitfield buffers) /* vertex colors */ for (i = 0; i < 4; i++) { - verts[i].r = ctx->Color.ClearColor[0]; - verts[i].g = ctx->Color.ClearColor[1]; - verts[i].b = ctx->Color.ClearColor[2]; - verts[i].a = ctx->Color.ClearColor[3]; + verts[i].r = ctx->Color.ClearColorUnclamped[0]; + verts[i].g = ctx->Color.ClearColorUnclamped[1]; + verts[i].b = ctx->Color.ClearColorUnclamped[2]; + verts[i].a = ctx->Color.ClearColorUnclamped[3]; } /* upload new vertex data */ From d22e2ebe35ef9d33ec5f7a67f903f36bcd9fbc91 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 15 Apr 2011 14:40:09 -0700 Subject: [PATCH 381/420] intel: Add support for ARB_color_buffer_float. Reviewed-by: Brian Paul --- src/mesa/drivers/dri/i965/brw_cc.c | 8 ++++---- src/mesa/drivers/dri/i965/brw_vs.c | 6 +++++- src/mesa/drivers/dri/i965/brw_vs.h | 1 + src/mesa/drivers/dri/i965/brw_vs_emit.c | 3 ++- src/mesa/drivers/dri/i965/brw_wm.c | 4 ++++ src/mesa/drivers/dri/i965/brw_wm.h | 1 + src/mesa/drivers/dri/i965/brw_wm_emit.c | 6 ++++++ src/mesa/drivers/dri/i965/gen6_cc.c | 8 ++++---- src/mesa/drivers/dri/intel/intel_extensions.c | 1 + 9 files changed, 28 insertions(+), 10 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_cc.c b/src/mesa/drivers/dri/i965/brw_cc.c index 412d82ab3ca..74a66af31a5 100644 --- a/src/mesa/drivers/dri/i965/brw_cc.c +++ b/src/mesa/drivers/dri/i965/brw_cc.c @@ -238,10 +238,10 @@ static void upload_blend_constant_color(struct brw_context *brw) BEGIN_BATCH(5); OUT_BATCH(_3DSTATE_BLEND_CONSTANT_COLOR << 16 | (5-2)); - OUT_BATCH_F(ctx->Color.BlendColor[0]); - OUT_BATCH_F(ctx->Color.BlendColor[1]); - OUT_BATCH_F(ctx->Color.BlendColor[2]); - OUT_BATCH_F(ctx->Color.BlendColor[3]); + OUT_BATCH_F(ctx->Color.BlendColorUnclamped[0]); + OUT_BATCH_F(ctx->Color.BlendColorUnclamped[1]); + OUT_BATCH_F(ctx->Color.BlendColorUnclamped[2]); + OUT_BATCH_F(ctx->Color.BlendColorUnclamped[3]); CACHED_BATCH(); } diff --git a/src/mesa/drivers/dri/i965/brw_vs.c b/src/mesa/drivers/dri/i965/brw_vs.c index 6ae75d22c14..63ae13191f9 100644 --- a/src/mesa/drivers/dri/i965/brw_vs.c +++ b/src/mesa/drivers/dri/i965/brw_vs.c @@ -132,6 +132,9 @@ static void brw_upload_vs_prog(struct brw_context *brw) ctx->Polygon.BackMode != GL_FILL); key.two_side_color = (ctx->Light.Enabled && ctx->Light.Model.TwoSide); + /* _NEW_LIGHT | _NEW_BUFFERS */ + key.clamp_vertex_color = ctx->Light._ClampVertexColor; + /* _NEW_POINT */ if (ctx->Point.PointSprite) { for (i = 0; i < 8; i++) { @@ -158,7 +161,8 @@ static void brw_upload_vs_prog(struct brw_context *brw) */ const struct brw_tracked_state brw_vs_prog = { .dirty = { - .mesa = _NEW_TRANSFORM | _NEW_POLYGON | _NEW_POINT | _NEW_LIGHT, + .mesa = (_NEW_TRANSFORM | _NEW_POLYGON | _NEW_POINT | _NEW_LIGHT | + _NEW_BUFFERS), .brw = BRW_NEW_VERTEX_PROGRAM, .cache = 0 }, diff --git a/src/mesa/drivers/dri/i965/brw_vs.h b/src/mesa/drivers/dri/i965/brw_vs.h index 0b88cc1ec76..7ca84a54b01 100644 --- a/src/mesa/drivers/dri/i965/brw_vs.h +++ b/src/mesa/drivers/dri/i965/brw_vs.h @@ -45,6 +45,7 @@ struct brw_vs_prog_key { GLuint copy_edgeflag:1; GLuint point_coord_replace:8; GLuint two_side_color: 1; + GLuint clamp_vertex_color:1; }; diff --git a/src/mesa/drivers/dri/i965/brw_vs_emit.c b/src/mesa/drivers/dri/i965/brw_vs_emit.c index 96150ecc377..dd4e1e6c6ad 100644 --- a/src/mesa/drivers/dri/i965/brw_vs_emit.c +++ b/src/mesa/drivers/dri/i965/brw_vs_emit.c @@ -2221,7 +2221,8 @@ void brw_vs_emit(struct brw_vs_compile *c ) * instructions. Instead, we directly modify the header * of the last (already stored) instruction. */ - if (inst->DstReg.File == PROGRAM_OUTPUT) { + if (inst->DstReg.File == PROGRAM_OUTPUT && + c->key.clamp_vertex_color) { if ((inst->DstReg.Index == VERT_RESULT_COL0) || (inst->DstReg.Index == VERT_RESULT_COL1) || (inst->DstReg.Index == VERT_RESULT_BFC0) diff --git a/src/mesa/drivers/dri/i965/brw_wm.c b/src/mesa/drivers/dri/i965/brw_wm.c index ab731a807a7..65af227d831 100644 --- a/src/mesa/drivers/dri/i965/brw_wm.c +++ b/src/mesa/drivers/dri/i965/brw_wm.c @@ -363,6 +363,9 @@ static void brw_wm_populate_key( struct brw_context *brw, /* _NEW_HINT */ key->linear_color = (ctx->Hint.PerspectiveCorrection == GL_FASTEST); + /* _NEW_FRAG_CLAMP | _NEW_BUFFERS */ + key->clamp_fragment_color = ctx->Color._ClampFragmentColor; + /* _NEW_TEXTURE */ for (i = 0; i < BRW_MAX_TEX_UNIT; i++) { const struct gl_texture_unit *unit = &ctx->Texture.Unit[i]; @@ -486,6 +489,7 @@ const struct brw_tracked_state brw_wm_prog = { _NEW_POLYGON | _NEW_LINE | _NEW_LIGHT | + _NEW_FRAG_CLAMP | _NEW_BUFFERS | _NEW_TEXTURE), .brw = (BRW_NEW_FRAGMENT_PROGRAM | diff --git a/src/mesa/drivers/dri/i965/brw_wm.h b/src/mesa/drivers/dri/i965/brw_wm.h index c40d7bfae0a..40659f26025 100644 --- a/src/mesa/drivers/dri/i965/brw_wm.h +++ b/src/mesa/drivers/dri/i965/brw_wm.h @@ -65,6 +65,7 @@ struct brw_wm_prog_key { GLuint nr_color_regions:5; GLuint render_to_fbo:1; GLuint alpha_test:1; + GLuint clamp_fragment_color:1; GLbitfield proj_attrib_mask; /**< one bit per fragment program attribute */ GLuint shadowtex_mask:16; diff --git a/src/mesa/drivers/dri/i965/brw_wm_emit.c b/src/mesa/drivers/dri/i965/brw_wm_emit.c index ecfd21d4399..cdc1f367e5c 100644 --- a/src/mesa/drivers/dri/i965/brw_wm_emit.c +++ b/src/mesa/drivers/dri/i965/brw_wm_emit.c @@ -1408,6 +1408,9 @@ void emit_fb_write(struct brw_wm_compile *c, */ brw_push_insn_state(p); + if (c->key.clamp_fragment_color) + brw_set_saturate(p, 1); + for (channel = 0; channel < 4; channel++) { if (intel->gen >= 6) { /* gen6 SIMD16 single source DP write looks like: @@ -1459,6 +1462,9 @@ void emit_fb_write(struct brw_wm_compile *c, } } } + + brw_set_saturate(p, 0); + /* skip over the regs populated above: */ if (c->dispatch_width == 16) diff --git a/src/mesa/drivers/dri/i965/gen6_cc.c b/src/mesa/drivers/dri/i965/gen6_cc.c index d1648a102d4..1b935fb5e70 100644 --- a/src/mesa/drivers/dri/i965/gen6_cc.c +++ b/src/mesa/drivers/dri/i965/gen6_cc.c @@ -210,10 +210,10 @@ color_calc_state_populate_key(struct brw_context *brw, if (ctx->Color.AlphaEnabled) key->alpha_ref = ctx->Color.AlphaRef; - key->blend_constant_color[0] = ctx->Color.BlendColor[0]; - key->blend_constant_color[1] = ctx->Color.BlendColor[1]; - key->blend_constant_color[2] = ctx->Color.BlendColor[2]; - key->blend_constant_color[3] = ctx->Color.BlendColor[3]; + key->blend_constant_color[0] = ctx->Color.BlendColorUnclamped[0]; + key->blend_constant_color[1] = ctx->Color.BlendColorUnclamped[1]; + key->blend_constant_color[2] = ctx->Color.BlendColorUnclamped[2]; + key->blend_constant_color[3] = ctx->Color.BlendColorUnclamped[3]; } /** diff --git a/src/mesa/drivers/dri/intel/intel_extensions.c b/src/mesa/drivers/dri/intel/intel_extensions.c index ad37a985cc4..e107534a4da 100644 --- a/src/mesa/drivers/dri/intel/intel_extensions.c +++ b/src/mesa/drivers/dri/intel/intel_extensions.c @@ -160,6 +160,7 @@ static const struct dri_extension i915_extensions[] = { /** i965-only extensions */ static const struct dri_extension brw_extensions[] = { + { "GL_ARB_color_buffer_float", NULL }, { "GL_ARB_depth_clamp", NULL }, { "GL_ARB_depth_texture", NULL }, { "GL_ARB_fragment_coord_conventions", NULL }, From 6e13cbcb749c017ebece5dbebb780f67cbc9a15b Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Mon, 18 Apr 2011 13:44:35 -0700 Subject: [PATCH 382/420] docs: Update for Intel ARB_texture_float and ARB_color_buffer_float. Reviewed-by: Brian Paul --- docs/relnotes-7.11.html | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/relnotes-7.11.html b/docs/relnotes-7.11.html index 131fecd1884..2bd126c6bce 100644 --- a/docs/relnotes-7.11.html +++ b/docs/relnotes-7.11.html @@ -36,21 +36,21 @@ tbd

    New features

      -
    • GL_ARB_color_buffer_float (gallium drivers) +
    • GL_ARB_color_buffer_float (gallium drivers, i965)
    • GL_ARB_draw_buffers_blend (gallium)
    • GL_ARB_draw_instanced extension (gallium drivers, swrast)
    • GL_ARB_instanced_arrays extension (gallium drivers)
    • GL_ARB_occlusion_query2 (gallium drivers, swrast)
    • GL_ARB_sampler_objects (gallium drivers)
    • GL_ARB_texture_compression_rgtc (gallium drivers, swrast) -
    • GL_ARB_texture_float (gallium) +
    • GL_ARB_texture_float (gallium, i965)
    • GL_EXT_texture_compression_latc (gallium drivers, swrast)
    • GL_EXT_texture_compression_rgtc (gallium drivers, swrast)
    • GL_EXT_texture_sRGB_decode (gallium drivers, swrast, i965)
    • GL_EXT_texture_snorm (gallium drivers)
    • GL_ATI_draw_buffers (all drivers)
    • GL_ATI_texture_compression_3dc (gallium drivers, swrast) -
    • GL_ATI_texture_float (gallium) +
    • GL_ATI_texture_float (gallium, i965)
    • GL_NV_texture_barrier (gallium drivers)
    From 2ea0aa4cd9eeea17b84860fd5ab7a70aabcf1efc Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Mon, 18 Apr 2011 13:45:00 -0700 Subject: [PATCH 383/420] docs: Mention that GLSL 1.30 is started. Things definitely remaining todo: switch statements, clip distances. On 965, we also need real integers in the VS, and implementations of some things like isinf/isnan. Reviewed-by: Brian Paul --- docs/GL3.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/GL3.txt b/docs/GL3.txt index e373a945363..6eeb9e4f35f 100644 --- a/docs/GL3.txt +++ b/docs/GL3.txt @@ -12,7 +12,7 @@ Feature Status GL 3.0: -GLSL 1.30 (GL_EXT_gpu_shader4, etc.) not started +GLSL 1.30 (GL_EXT_gpu_shader4, etc.) started Conditional rendering (GL_NV_conditional_render) DONE (swrast & softpipe) Map buffer subranges (GL_ARB_map_buffer_range) DONE Clamping controls (GL_ARB_color_buffer_float) DONE From 42d377224af0fcf5a21269958ce5f96c4306c4fa Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Wed, 20 Apr 2011 12:04:25 -0600 Subject: [PATCH 384/420] mesa: fix void pointer arithmetic warning --- src/mesa/main/renderbuffer.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mesa/main/renderbuffer.c b/src/mesa/main/renderbuffer.c index 8b9033f68bf..fa884c0de93 100644 --- a/src/mesa/main/renderbuffer.c +++ b/src/mesa/main/renderbuffer.c @@ -125,8 +125,8 @@ get_values_generic(struct gl_context *ctx, struct gl_renderbuffer *rb, for (i = 0; i < count; i++) { const void *src = rb->GetPointer(ctx, rb, x[i], y[i]); - - memcpy(values + i * format_bytes, src, format_bytes); + char *dst = (char *) values + i * format_bytes; + memcpy(dst, src, format_bytes); } } From c0f8c9911c82c576cdd82dabad4a2370ac53565c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kristian=20H=C3=B8gsberg?= Date: Thu, 14 Apr 2011 10:42:41 -0400 Subject: [PATCH 385/420] wayland-egl: Update to wayland-egl.h changes, drop struct wl_egl_display --- include/EGL/eglplatform.h | 2 +- src/egl/drivers/dri2/egl_dri2.h | 4 +- src/egl/drivers/dri2/platform_wayland.c | 118 +++++++++------ .../wayland/wayland-egl/wayland-egl-priv.h | 3 +- src/egl/wayland/wayland-egl/wayland-egl.c | 136 +----------------- 5 files changed, 86 insertions(+), 177 deletions(-) diff --git a/include/EGL/eglplatform.h b/include/EGL/eglplatform.h index 005b2944404..e4aa0994be9 100644 --- a/include/EGL/eglplatform.h +++ b/include/EGL/eglplatform.h @@ -80,7 +80,7 @@ typedef void *EGLNativePixmapType; #elif defined(WL_EGL_PLATFORM) -typedef struct wl_egl_display *EGLNativeDisplayType; +typedef struct wl_display *EGLNativeDisplayType; typedef struct wl_egl_pixmap *EGLNativePixmapType; typedef struct wl_egl_window *EGLNativeWindowType; diff --git a/src/egl/drivers/dri2/egl_dri2.h b/src/egl/drivers/dri2/egl_dri2.h index cb1de2681f1..99f990ac688 100644 --- a/src/egl/drivers/dri2/egl_dri2.h +++ b/src/egl/drivers/dri2/egl_dri2.h @@ -85,8 +85,10 @@ struct dri2_egl_display __DRIswrastLoaderExtension swrast_loader_extension; const __DRIextension *extensions[3]; #ifdef HAVE_WAYLAND_PLATFORM - struct wl_egl_display *wl_dpy; + struct wl_display *wl_dpy; struct wl_drm *wl_server_drm; + struct wl_drm *wl_drm; + int authenticated; #endif int (*authenticate) (_EGLDisplay *disp, uint32_t id); diff --git a/src/egl/drivers/dri2/platform_wayland.c b/src/egl/drivers/dri2/platform_wayland.c index 0cc20bbc0bf..62b2eabec42 100644 --- a/src/egl/drivers/dri2/platform_wayland.c +++ b/src/egl/drivers/dri2/platform_wayland.c @@ -32,6 +32,8 @@ #include #include #include +#include +#include #include "egl_dri2.h" @@ -107,7 +109,7 @@ dri2_create_surface(_EGLDriver *drv, _EGLDisplay *disp, EGLint type, dri2_surf->base.Width = dri2_surf->wl_pix->width; dri2_surf->base.Height = dri2_surf->wl_pix->height; - if (dri2_surf->wl_pix->name > 0) { + if (dri2_surf->wl_pix->driver_private) { dri2_buf = dri2_surf->wl_pix->driver_private; dri2_surf->dri_buffers[__DRI_BUFFER_FRONT_LEFT] = dri2_buf->dri_buffer; } @@ -204,7 +206,6 @@ dri2_wl_egl_pixmap_destroy(struct wl_egl_pixmap *egl_pixmap) egl_pixmap->driver_private = NULL; egl_pixmap->destroy = NULL; - egl_pixmap->name = 0; } static void @@ -244,8 +245,6 @@ dri2_process_front_buffer(struct dri2_egl_surface *dri2_surf, unsigned format) dri2_buf->dri_buffer = dri2_surf->dri_buffers[__DRI_BUFFER_FRONT_LEFT]; dri2_buf->dri2_dpy = dri2_dpy; - dri2_surf->wl_pix->name = dri2_buf->dri_buffer->name; - dri2_surf->wl_pix->stride = dri2_buf->dri_buffer->pitch; dri2_surf->wl_pix->driver_private = dri2_buf; dri2_surf->wl_pix->destroy = dri2_wl_egl_pixmap_destroy; break; @@ -282,9 +281,9 @@ dri2_release_buffers(struct dri2_egl_surface *dri2_surf) switch (i) { case __DRI_BUFFER_FRONT_LEFT: if (dri2_surf->pending_buffer) - force_roundtrip(dri2_dpy->wl_dpy->display); + force_roundtrip(dri2_dpy->wl_dpy); dri2_surf->pending_buffer = dri2_surf->dri_buffers[i]; - wl_display_sync_callback(dri2_dpy->wl_dpy->display, + wl_display_sync_callback(dri2_dpy->wl_dpy, dri2_release_pending_buffer, dri2_surf); break; default: @@ -423,7 +422,7 @@ wayland_create_buffer(struct dri2_egl_surface *dri2_surf, __DRIbuffer *buffer) struct dri2_egl_display *dri2_dpy = dri2_egl_display(dri2_surf->base.Resource.Display); - return wl_drm_create_buffer(dri2_dpy->wl_dpy->drm, buffer->name, + return wl_drm_create_buffer(dri2_dpy->wl_drm, buffer->name, dri2_surf->base.Width, dri2_surf->base.Height, buffer->pitch, dri2_surf->wl_win->visual); } @@ -455,10 +454,10 @@ dri2_swap_buffers(_EGLDriver *drv, _EGLDisplay *disp, _EGLSurface *draw) struct dri2_egl_driver *dri2_drv = dri2_egl_driver(drv); while (dri2_surf->block_swap_buffers) - wl_display_iterate(dri2_dpy->wl_dpy->display, WL_DISPLAY_READABLE); + wl_display_iterate(dri2_dpy->wl_dpy, WL_DISPLAY_READABLE); dri2_surf->block_swap_buffers = EGL_TRUE; - wl_display_frame_callback(dri2_dpy->wl_dpy->display, + wl_display_frame_callback(dri2_dpy->wl_dpy, dri2_surf->wl_win->surface, wayland_frame_callback, dri2_surf); @@ -536,18 +535,23 @@ dri2_create_image_khr_pixmap(_EGLDisplay *disp, _EGLContext *ctx, wl_egl_pixmap->width, wl_egl_pixmap->height); - wl_egl_pixmap->name = dri2_buf->dri_buffer->name; - wl_egl_pixmap->stride = dri2_buf->dri_buffer->pitch; wl_egl_pixmap->destroy = dri2_wl_egl_pixmap_destroy; wl_egl_pixmap->driver_private = dri2_buf; + wl_egl_pixmap->buffer = + wl_drm_create_buffer(dri2_dpy->wl_drm, + dri2_buf->dri_buffer->name, + wl_egl_pixmap->width, + wl_egl_pixmap->height, + dri2_buf->dri_buffer->pitch, + wl_egl_pixmap->visual); + wl_attr_list[1] = wl_egl_pixmap->width; wl_attr_list[3] = wl_egl_pixmap->height; - wl_attr_list[5] = wl_egl_pixmap->stride / 4; - + wl_attr_list[5] = dri2_buf->dri_buffer->pitch / 4; return dri2_create_image_khr(disp->Driver, disp, ctx, EGL_DRM_BUFFER_MESA, - (EGLClientBuffer)(intptr_t) wl_egl_pixmap->name, wl_attr_list); + (EGLClientBuffer)(intptr_t) dri2_buf->dri_buffer->name, wl_attr_list); } static _EGLImage * @@ -571,16 +575,16 @@ dri2_wayland_authenticate(_EGLDisplay *disp, uint32_t id) struct dri2_egl_display *dri2_dpy = dri2_egl_display(disp); int ret = 0; - dri2_dpy->wl_dpy->authenticated = false; + dri2_dpy->authenticated = false; - wl_drm_authenticate(dri2_dpy->wl_dpy->drm, id); - force_roundtrip(dri2_dpy->wl_dpy->display); + wl_drm_authenticate(dri2_dpy->wl_drm, id); + force_roundtrip(dri2_dpy->wl_dpy); - if (!dri2_dpy->wl_dpy->authenticated) + if (!dri2_dpy->authenticated) ret = -1; /* reset authenticated */ - dri2_dpy->wl_dpy->authenticated = true; + dri2_dpy->authenticated = true; return ret; } @@ -606,10 +610,45 @@ dri2_terminate(_EGLDriver *drv, _EGLDisplay *disp) return EGL_TRUE; } +static void +drm_handle_device(void *data, struct wl_drm *drm, const char *device) +{ + struct dri2_egl_display *dri2_dpy = data; + drm_magic_t magic; + + dri2_dpy->device_name = strdup(device); + if (!dri2_dpy->device_name) + return; + + dri2_dpy->fd = open(dri2_dpy->device_name, O_RDWR); + if (dri2_dpy->fd == -1) { + _eglLog(_EGL_WARNING, "wayland-egl: could not open %s (%s)", + dri2_dpy->device_name, strerror(errno)); + return; + } + + drmGetMagic(dri2_dpy->fd, &magic); + wl_drm_authenticate(dri2_dpy->wl_drm, magic); +} + +static void +drm_handle_authenticated(void *data, struct wl_drm *drm) +{ + struct dri2_egl_display *dri2_dpy = data; + + dri2_dpy->authenticated = true; +} + +static const struct wl_drm_listener drm_listener = { + drm_handle_device, + drm_handle_authenticated +}; + EGLBoolean dri2_initialize_wayland(_EGLDriver *drv, _EGLDisplay *disp) { struct dri2_egl_display *dri2_dpy; + uint32_t id; int i; drv->API.CreateWindowSurface = dri2_create_window_surface; @@ -628,21 +667,23 @@ dri2_initialize_wayland(_EGLDriver *drv, _EGLDisplay *disp) disp->DriverData = (void *) dri2_dpy; dri2_dpy->wl_dpy = disp->PlatformDisplay; - if (dri2_dpy->wl_dpy->fd == -1) - force_roundtrip(dri2_dpy->wl_dpy->display); - if (dri2_dpy->wl_dpy->fd == -1) + id = wl_display_get_global(dri2_dpy->wl_dpy, "drm", 1); + if (id == 0) + wl_display_iterate(dri2_dpy->wl_dpy, WL_DISPLAY_READABLE); + id = wl_display_get_global(dri2_dpy->wl_dpy, "drm", 1); + if (id == 0) goto cleanup_dpy; + dri2_dpy->wl_drm = wl_drm_create(dri2_dpy->wl_dpy, id, 1); + if (!dri2_dpy->wl_drm) + goto cleanup_dpy; + wl_drm_add_listener(dri2_dpy->wl_drm, &drm_listener, dri2_dpy); + force_roundtrip(dri2_dpy->wl_dpy); + if (dri2_dpy->fd == -1) + goto cleanup_drm; - dri2_dpy->fd = dup(dri2_dpy->wl_dpy->fd); - if (dri2_dpy->fd < 0) { - _eglError(EGL_BAD_ALLOC, "DRI2: failed to dup fd"); - goto cleanup_dpy; - } - - if (!dri2_dpy->wl_dpy->authenticated) - force_roundtrip(dri2_dpy->wl_dpy->display); - if (!dri2_dpy->wl_dpy->authenticated) - goto cleanup_dpy; + force_roundtrip(dri2_dpy->wl_dpy); + if (!dri2_dpy->authenticated) + goto cleanup_fd; dri2_dpy->driver_name = dri2_get_driver_for_fd(dri2_dpy->fd); if (dri2_dpy->driver_name == NULL) { @@ -650,14 +691,8 @@ dri2_initialize_wayland(_EGLDriver *drv, _EGLDisplay *disp) goto cleanup_fd; } - dri2_dpy->device_name = strdup(dri2_dpy->wl_dpy->device_name); - if (dri2_dpy->device_name == NULL) { - _eglError(EGL_BAD_ALLOC, "DRI2: failed to get device name"); - goto cleanup_driver_name; - } - if (!dri2_load_driver(disp)) - goto cleanup_device_name; + goto cleanup_driver_name; dri2_dpy->dri2_loader_extension.base.name = __DRI_DRI2_LOADER; dri2_dpy->dri2_loader_extension.base.version = 3; @@ -691,12 +726,13 @@ dri2_initialize_wayland(_EGLDriver *drv, _EGLDisplay *disp) cleanup_driver: dlclose(dri2_dpy->driver); - cleanup_device_name: - free(dri2_dpy->device_name); cleanup_driver_name: free(dri2_dpy->driver_name); cleanup_fd: close(dri2_dpy->fd); + cleanup_drm: + free(dri2_dpy->device_name); + wl_drm_destroy(dri2_dpy->wl_drm); cleanup_dpy: free(dri2_dpy); diff --git a/src/egl/wayland/wayland-egl/wayland-egl-priv.h b/src/egl/wayland/wayland-egl/wayland-egl-priv.h index 38b21c25be2..7bb436a78ab 100644 --- a/src/egl/wayland/wayland-egl/wayland-egl-priv.h +++ b/src/egl/wayland/wayland-egl/wayland-egl-priv.h @@ -42,11 +42,10 @@ struct wl_egl_window { struct wl_egl_pixmap { struct wl_egl_display *display; struct wl_visual *visual; + struct wl_buffer *buffer; - int name; int width; int height; - int stride; void (*destroy) (struct wl_egl_pixmap *egl_pixmap); diff --git a/src/egl/wayland/wayland-egl/wayland-egl.c b/src/egl/wayland/wayland-egl/wayland-egl.c index 2c84bec64a5..891a497d1d1 100644 --- a/src/egl/wayland/wayland-egl/wayland-egl.c +++ b/src/egl/wayland/wayland-egl/wayland-egl.c @@ -17,115 +17,6 @@ #include "wayland-drm-client-protocol.h" #include -static void -drm_handle_device(void *data, struct wl_drm *drm, const char *device) -{ - struct wl_egl_display *egl_display = data; - drm_magic_t magic; - - egl_display->device_name = strdup(device); - - egl_display->fd = open(egl_display->device_name, O_RDWR); - - if (egl_display->fd == -1) { - fprintf(stderr, "wayland-egl: could not open %s (%s)", - egl_display->device_name, strerror(errno)); - return; - } - drmGetMagic(egl_display->fd, &magic); - wl_drm_authenticate(egl_display->drm, magic); -} - -static void -drm_handle_authenticated(void *data, struct wl_drm *drm) -{ - struct wl_egl_display *egl_display = data; - - egl_display->authenticated = true; -} - -static const struct wl_drm_listener drm_listener = { - drm_handle_device, - drm_handle_authenticated -}; - -static void -wl_display_handle_global(struct wl_display *display, uint32_t id, - const char *interface, uint32_t version, void *data) -{ - struct wl_egl_display *egl_display = data; - - if (strcmp(interface, "drm") == 0) { - egl_display->drm = wl_drm_create(display, id); - wl_drm_add_listener(egl_display->drm, &drm_listener, - egl_display); - } -} - -/* stolen from egl_dri2:dri2_load() */ -static void * -get_flush_address() { - void *handle; - void *(*get_proc_address)(const char *procname); - - handle = dlopen(NULL, RTLD_LAZY | RTLD_GLOBAL); - if (handle) { - get_proc_address = (void* (*)(const char *)) - dlsym(handle, "_glapi_get_proc_address"); - /* no need to keep a reference */ - dlclose(handle); - } - - /* - * If glapi is not available, loading DRI drivers will fail. Ideally, we - * should load one of libGL, libGLESv1_CM, or libGLESv2 and go on. But if - * the app has loaded another one of them with RTLD_LOCAL, there may be - * unexpected behaviors later because there will be two copies of glapi - * (with global variables of the same names!) in the memory. - */ - if (!get_proc_address) { - fprintf(stderr, "failed to find _glapi_get_proc_address"); - return NULL; - } - - return get_proc_address("glFlush"); -} - -WL_EGL_EXPORT struct wl_egl_display * -wl_egl_display_create(struct wl_display *display) -{ - struct wl_egl_display *egl_display; - - egl_display = malloc(sizeof *egl_display); - if (!egl_display) - return NULL; - - egl_display->display = display; - egl_display->drm = NULL; - egl_display->fd = -1; - egl_display->device_name = NULL; - egl_display->authenticated = false; - - egl_display->glFlush = (void (*)(void)) get_flush_address(); - - wl_display_add_global_listener(display, wl_display_handle_global, - egl_display); - - return egl_display; -} - -WL_EGL_EXPORT void -wl_egl_display_destroy(struct wl_egl_display *egl_display) -{ - - free(egl_display->device_name); - close(egl_display->fd); - - wl_drm_destroy(egl_display->drm); - - free(egl_display); -} - WL_EGL_EXPORT void wl_egl_window_resize(struct wl_egl_window *egl_window, int width, int height, @@ -138,8 +29,7 @@ wl_egl_window_resize(struct wl_egl_window *egl_window, } WL_EGL_EXPORT struct wl_egl_window * -wl_egl_window_create(struct wl_egl_display *egl_display, - struct wl_surface *surface, +wl_egl_window_create(struct wl_surface *surface, int width, int height, struct wl_visual *visual) { @@ -175,8 +65,7 @@ wl_egl_window_get_attached_size(struct wl_egl_window *egl_window, } WL_EGL_EXPORT struct wl_egl_pixmap * -wl_egl_pixmap_create(struct wl_egl_display *egl_display, - int width, int height, +wl_egl_pixmap_create(int width, int height, struct wl_visual *visual, uint32_t flags) { struct wl_egl_pixmap *egl_pixmap; @@ -185,12 +74,9 @@ wl_egl_pixmap_create(struct wl_egl_display *egl_display, if (egl_pixmap == NULL) return NULL; - egl_pixmap->display = egl_display; egl_pixmap->width = width; egl_pixmap->height = height; egl_pixmap->visual = visual; - egl_pixmap->name = 0; - egl_pixmap->stride = 0; egl_pixmap->destroy = NULL; @@ -206,21 +92,7 @@ wl_egl_pixmap_destroy(struct wl_egl_pixmap *egl_pixmap) } WL_EGL_EXPORT struct wl_buffer * -wl_egl_pixmap_create_buffer(struct wl_egl_display *egl_display, - struct wl_egl_pixmap *egl_pixmap) +wl_egl_pixmap_create_buffer(struct wl_egl_pixmap *egl_pixmap) { - if (egl_pixmap->name == 0) - return NULL; - - return wl_drm_create_buffer(egl_display->drm, egl_pixmap->name, - egl_pixmap->width, egl_pixmap->height, - egl_pixmap->stride, egl_pixmap->visual); -} - -WL_EGL_EXPORT void -wl_egl_pixmap_flush(struct wl_egl_display *egl_display, - struct wl_egl_pixmap *egl_pixmap) -{ - if (egl_display->glFlush) - egl_display->glFlush(); + return egl_pixmap->buffer; } From dfaaf7c5e8d05ebf544f758be79f12c824c5cdd7 Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Tue, 19 Apr 2011 15:33:15 -0700 Subject: [PATCH 386/420] i965: Remove dead vertex buffer structs. We do this OUT_BATCH-style in brw_draw_upload.c. --- src/mesa/drivers/dri/i965/brw_structs.h | 25 ------------------------- 1 file changed, 25 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_structs.h b/src/mesa/drivers/dri/i965/brw_structs.h index 89b1ee49a49..8d4797fb675 100644 --- a/src/mesa/drivers/dri/i965/brw_structs.h +++ b/src/mesa/drivers/dri/i965/brw_structs.h @@ -1228,31 +1228,6 @@ struct brw_surface_state }; - -struct brw_vertex_buffer_state -{ - struct { - GLuint pitch:11; - GLuint pad:15; - GLuint access_type:1; - GLuint vb_index:5; - } vb0; - - GLuint start_addr; - GLuint max_index; -#if 1 - GLuint instance_data_step_rate; /* not included for sequential/random vertices? */ -#endif -}; - -#define BRW_VBP_MAX 17 - -struct brw_vb_array_state { - struct header header; - struct brw_vertex_buffer_state vb[BRW_VBP_MAX]; -}; - - struct brw_vertex_element_state { struct From 08ba9778dbf3326bdfc8ca8035b51412032748ea Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Thu, 14 Apr 2011 17:21:59 -0700 Subject: [PATCH 387/420] glsl/ast_to_hir: Only use the local 'type' variable as a temporary. Lots of code (deleted by this patch) tried to make type == result->type, but not all cases did. Don't pretend; just use result->type. Signed-off-by: Kenneth Graunke Reviewed-by: Eric Anholt Reviewed-by: Ian Romanick --- src/glsl/ast_to_hir.cpp | 24 ++++-------------------- 1 file changed, 4 insertions(+), 20 deletions(-) diff --git a/src/glsl/ast_to_hir.cpp b/src/glsl/ast_to_hir.cpp index 18e66db2e2a..3b87f0d56de 100644 --- a/src/glsl/ast_to_hir.cpp +++ b/src/glsl/ast_to_hir.cpp @@ -940,7 +940,7 @@ ast_expression::hir(exec_list *instructions, }; ir_rvalue *result = NULL; ir_rvalue *op[3]; - const struct glsl_type *type = glsl_type::error_type; + const struct glsl_type *type; /* a temporary variable for switch cases */ bool error_emitted = false; YYLTYPE loc; @@ -954,7 +954,6 @@ ast_expression::hir(exec_list *instructions, result = do_assignment(instructions, state, op[0], op[1], false, this->subexpressions[0]->get_location()); error_emitted = result->type->is_error(); - type = result->type; break; } @@ -1078,9 +1077,7 @@ ast_expression::hir(exec_list *instructions, } else { result = do_comparison(ctx, operations[this->oper], op[0], op[1]); assert(result->type == glsl_type::bool_type); - type = glsl_type::bool_type; } - break; case ast_bit_and: @@ -1209,7 +1206,6 @@ ast_expression::hir(exec_list *instructions, result = new(ctx) ir_expression(operations[this->oper], glsl_type::bool_type, op[0], op[1]); - type = glsl_type::bool_type; break; case ast_logic_not: @@ -1218,7 +1214,6 @@ ast_expression::hir(exec_list *instructions, result = new(ctx) ir_expression(operations[this->oper], glsl_type::bool_type, op[0], NULL); - type = glsl_type::bool_type; break; case ast_mul_assign: @@ -1238,7 +1233,6 @@ ast_expression::hir(exec_list *instructions, result = do_assignment(instructions, state, op[0]->clone(ctx, NULL), temp_rhs, false, this->subexpressions[0]->get_location()); - type = result->type; error_emitted = (op[0]->type->is_error()); /* GLSL 1.10 does not allow array assignment. However, we don't have to @@ -1264,7 +1258,6 @@ ast_expression::hir(exec_list *instructions, result = do_assignment(instructions, state, op[0]->clone(ctx, NULL), temp_rhs, false, this->subexpressions[0]->get_location()); - type = result->type; error_emitted = type->is_error(); break; } @@ -1406,7 +1399,6 @@ ast_expression::hir(exec_list *instructions, result = do_assignment(instructions, state, op[0]->clone(ctx, NULL), temp_rhs, false, this->subexpressions[0]->get_location()); - type = result->type; error_emitted = op[0]->type->is_error(); break; } @@ -1436,14 +1428,12 @@ ast_expression::hir(exec_list *instructions, op[0]->clone(ctx, NULL), temp_rhs, false, this->subexpressions[0]->get_location()); - type = result->type; error_emitted = op[0]->type->is_error(); break; } case ast_field_selection: result = _mesa_ast_field_selection_to_hir(this, instructions, state); - type = result->type; break; case ast_array_index: { @@ -1600,7 +1590,6 @@ ast_expression::hir(exec_list *instructions, if (error_emitted) result->type = glsl_type::error_type; - type = result->type; break; } @@ -1623,7 +1612,6 @@ ast_expression::hir(exec_list *instructions, if (var != NULL) { var->used = true; - type = result->type; } else { _mesa_glsl_error(& loc, state, "`%s' undeclared", this->primary_expression.identifier); @@ -1634,22 +1622,18 @@ ast_expression::hir(exec_list *instructions, } case ast_int_constant: - type = glsl_type::int_type; result = new(ctx) ir_constant(this->primary_expression.int_constant); break; case ast_uint_constant: - type = glsl_type::uint_type; result = new(ctx) ir_constant(this->primary_expression.uint_constant); break; case ast_float_constant: - type = glsl_type::float_type; result = new(ctx) ir_constant(this->primary_expression.float_constant); break; case ast_bool_constant: - type = glsl_type::bool_type; result = new(ctx) ir_constant(bool(this->primary_expression.bool_constant)); break; @@ -1701,16 +1685,16 @@ ast_expression::hir(exec_list *instructions, result = ast->hir(instructions, state); } - type = result->type; - /* Any errors should have already been emitted in the loop above. */ error_emitted = true; break; } } + type = NULL; /* use result->type, not type. */ + assert(result != NULL); - if (type->is_error() && !error_emitted) + if (result->type->is_error() && !error_emitted) _mesa_glsl_error(& loc, state, "type mismatch"); return result; From 64f55216e4c11e8acb787bfe40e6dd25e862cd43 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Thu, 21 Apr 2011 12:50:00 +0200 Subject: [PATCH 388/420] util: add a simple memcpy path for copying buffers in util_resource_copy_region Reviewed-by: Jakob Bornecrantz --- src/gallium/auxiliary/util/u_surface.c | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/src/gallium/auxiliary/util/u_surface.c b/src/gallium/auxiliary/util/u_surface.c index 9caf76c802b..43a026691d3 100644 --- a/src/gallium/auxiliary/util/u_surface.c +++ b/src/gallium/auxiliary/util/u_surface.c @@ -188,15 +188,19 @@ util_resource_copy_region(struct pipe_context *pipe, assert(dst_map); if (src_map && dst_map) { - util_copy_rect(dst_map, - dst_format, - dst_trans->stride, - 0, 0, - w, h, - src_map, - src_trans->stride, - 0, - 0); + if (dst->target == PIPE_BUFFER && src->target == PIPE_BUFFER) { + memcpy(dst_map, src_map, w); + } else { + util_copy_rect(dst_map, + dst_format, + dst_trans->stride, + 0, 0, + w, h, + src_map, + src_trans->stride, + 0, + 0); + } } pipe->transfer_unmap(pipe, src_trans); From 883d8a0b449b53d83cc5970d2ce50df536aef55f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Thu, 21 Apr 2011 12:53:16 +0200 Subject: [PATCH 389/420] gallium: add fallback for copying buffers to all drivers Just to keep drivers working. Reviewed-by: Jakob Bornecrantz --- src/gallium/drivers/i915/i915_surface.c | 15 +++++++++++++++ src/gallium/drivers/llvmpipe/lp_surface.c | 7 +++++++ src/gallium/drivers/nv50/nv50_surface.c | 8 ++++++++ src/gallium/drivers/nvc0/nvc0_surface.c | 8 ++++++++ src/gallium/drivers/nvfx/nvfx_surface.c | 8 ++++++++ src/gallium/drivers/r300/r300_blit.c | 8 ++++++++ src/gallium/drivers/r600/r600_blit.c | 7 +++++++ src/gallium/drivers/svga/svga_pipe_blit.c | 9 +++++++++ 8 files changed, 70 insertions(+) diff --git a/src/gallium/drivers/i915/i915_surface.c b/src/gallium/drivers/i915/i915_surface.c index d02c420f6c2..ac6e94500c8 100644 --- a/src/gallium/drivers/i915/i915_surface.c +++ b/src/gallium/drivers/i915/i915_surface.c @@ -37,6 +37,7 @@ #include "util/u_format.h" #include "util/u_memory.h" #include "util/u_pack_color.h" +#include "util/u_surface.h" /* * surface functions using the render engine @@ -51,6 +52,13 @@ i915_surface_copy_render(struct pipe_context *pipe, { struct i915_context *i915 = i915_context(pipe); + /* Fallback for buffers. */ + if (dst->target == PIPE_BUFFER && src->target == PIPE_BUFFER) { + util_resource_copy_region(pipe, dst, dst_level, dstx, dsty, dstz, + src, src_level, src_box); + return; + } + util_blitter_save_blend(i915->blitter, (void *)i915->blend); util_blitter_save_depth_stencil_alpha(i915->blitter, (void *)i915->depth_stencil); util_blitter_save_stencil_ref(i915->blitter, &i915->stencil_ref); @@ -158,6 +166,13 @@ i915_surface_copy_blitter(struct pipe_context *pipe, struct pipe_resource *spt = &src_tex->b.b; unsigned dst_offset, src_offset; /* in bytes */ + /* Fallback for buffers. */ + if (dst->target == PIPE_BUFFER && src->target == PIPE_BUFFER) { + util_resource_copy_region(pipe, dst, dst_level, dstx, dsty, dstz, + src, src_level, src_box); + return; + } + /* XXX cannot copy 3d regions at this time */ assert(src_box->depth == 1); if (dst->target != PIPE_TEXTURE_CUBE && diff --git a/src/gallium/drivers/llvmpipe/lp_surface.c b/src/gallium/drivers/llvmpipe/lp_surface.c index f49638acf08..1b5e9d055f5 100644 --- a/src/gallium/drivers/llvmpipe/lp_surface.c +++ b/src/gallium/drivers/llvmpipe/lp_surface.c @@ -67,6 +67,13 @@ lp_resource_copy(struct pipe_context *pipe, unsigned height = src_box->height; assert(src_box->depth == 1); + /* Fallback for buffers. */ + if (dst->target == PIPE_BUFFER && src->target == PIPE_BUFFER) { + util_resource_copy_region(pipe, dst, dst_level, dstx, dsty, dstz, + src, src_level, src_box); + return; + } + llvmpipe_flush_resource(pipe, dst, dst_level, dstz, FALSE, /* read_only */ diff --git a/src/gallium/drivers/nv50/nv50_surface.c b/src/gallium/drivers/nv50/nv50_surface.c index dc9e2880f0f..3d7e880ccce 100644 --- a/src/gallium/drivers/nv50/nv50_surface.c +++ b/src/gallium/drivers/nv50/nv50_surface.c @@ -27,6 +27,7 @@ #include "util/u_inlines.h" #include "util/u_pack_color.h" #include "util/u_format.h" +#include "util/u_surface.h" #include "nv50_context.h" #include "nv50_resource.h" @@ -198,6 +199,13 @@ nv50_resource_copy_region(struct pipe_context *pipe, int ret; unsigned dst_layer = dstz, src_layer = src_box->z; + /* Fallback for buffers. */ + if (dst->target == PIPE_BUFFER && src->target == PIPE_BUFFER) { + util_resource_copy_region(pipe, dst, dst_level, dstx, dsty, dstz, + src, src_level, src_box); + return; + } + assert((src->format == dst->format) || (nv50_2d_format_faithful(src->format) && nv50_2d_format_faithful(dst->format))); diff --git a/src/gallium/drivers/nvc0/nvc0_surface.c b/src/gallium/drivers/nvc0/nvc0_surface.c index fc5f45ea25d..6be3702bddc 100644 --- a/src/gallium/drivers/nvc0/nvc0_surface.c +++ b/src/gallium/drivers/nvc0/nvc0_surface.c @@ -27,6 +27,7 @@ #include "util/u_inlines.h" #include "util/u_pack_color.h" #include "util/u_format.h" +#include "util/u_surface.h" #include "nvc0_context.h" #include "nvc0_resource.h" @@ -234,6 +235,13 @@ nvc0_resource_copy_region(struct pipe_context *pipe, int ret; unsigned dst_layer = dstz, src_layer = src_box->z; + /* Fallback for buffers. */ + if (dst->target == PIPE_BUFFER && src->target == PIPE_BUFFER) { + util_resource_copy_region(pipe, dst, dst_level, dstx, dsty, dstz, + src, src_level, src_box); + return; + } + nv04_resource(dst)->status |= NOUVEAU_BUFFER_STATUS_GPU_WRITING; if (src->format == dst->format) { diff --git a/src/gallium/drivers/nvfx/nvfx_surface.c b/src/gallium/drivers/nvfx/nvfx_surface.c index be31853d717..ced26494e15 100644 --- a/src/gallium/drivers/nvfx/nvfx_surface.c +++ b/src/gallium/drivers/nvfx/nvfx_surface.c @@ -33,6 +33,7 @@ #include "util/u_memory.h" #include "util/u_pack_color.h" #include "util/u_blitter.h" +#include "util/u_surface.h" #include "nouveau/nouveau_winsys.h" #include "nouveau/nouveau_screen.h" @@ -252,6 +253,13 @@ nvfx_resource_copy_region(struct pipe_context *pipe, if(!w || !h) return; + /* Fallback for buffers. */ + if (dstr->target == PIPE_BUFFER && srcr->target == PIPE_BUFFER) { + util_resource_copy_region(pipe, dstr, dst_level, dstx, dsty, dstz, + srcr, src_level, src_box); + return; + } + if(copy_threshold < 0) copy_threshold = debug_get_num_option("NOUVEAU_COPY_THRESHOLD", 4); diff --git a/src/gallium/drivers/r300/r300_blit.c b/src/gallium/drivers/r300/r300_blit.c index 62d90afdcb0..1217488bac7 100644 --- a/src/gallium/drivers/r300/r300_blit.c +++ b/src/gallium/drivers/r300/r300_blit.c @@ -26,6 +26,7 @@ #include "util/u_format.h" #include "util/u_pack_color.h" +#include "util/u_surface.h" enum r300_blitter_op /* bitmask */ { @@ -415,6 +416,13 @@ static void r300_resource_copy_region(struct pipe_context *pipe, util_format_description(dst->format); struct pipe_box box; + /* Fallback for buffers. */ + if (dst->target == PIPE_BUFFER && src->target == PIPE_BUFFER) { + util_resource_copy_region(pipe, dst, dst_level, dstx, dsty, dstz, + src, src_level, src_box); + return; + } + if (r300->zmask_in_use && !r300->hyperz_locked) { if (fb->zsbuf->texture == src || fb->zsbuf->texture == dst) { diff --git a/src/gallium/drivers/r600/r600_blit.c b/src/gallium/drivers/r600/r600_blit.c index 04408a5cc8e..151f48a8bf8 100644 --- a/src/gallium/drivers/r600/r600_blit.c +++ b/src/gallium/drivers/r600/r600_blit.c @@ -277,6 +277,13 @@ static void r600_resource_copy_region(struct pipe_context *ctx, struct texture_orig_info orig_info[2]; boolean restore_orig[2]; + /* Fallback for buffers. */ + if (dst->target == PIPE_BUFFER && src->target == PIPE_BUFFER) { + util_resource_copy_region(ctx, dst, dst_level, dstx, dsty, dstz, + src, src_level, src_box); + return; + } + if (rsrc->depth && !rsrc->is_flushing_texture) r600_texture_depth_flush(ctx, src, FALSE); diff --git a/src/gallium/drivers/svga/svga_pipe_blit.c b/src/gallium/drivers/svga/svga_pipe_blit.c index c87afb6946c..c4f122f4f78 100644 --- a/src/gallium/drivers/svga/svga_pipe_blit.c +++ b/src/gallium/drivers/svga/svga_pipe_blit.c @@ -29,6 +29,8 @@ #include "svga_cmd.h" #include "svga_surface.h" +#include "util/u_surface.h" + #define FILE_DEBUG_FLAG DEBUG_BLIT @@ -54,6 +56,13 @@ static void svga_surface_copy(struct pipe_context *pipe, */ svga_surfaces_flush( svga ); + /* Fallback for buffers. */ + if (dst_tex->target == PIPE_BUFFER && src_tex->target == PIPE_BUFFER) { + util_resource_copy_region(pipe, dst_tex, dst_level, dstx, dsty, dstz, + src_tex, src_level, src_box); + return; + } + #if 0 srcsurf = screen->get_tex_surface(screen, src_tex, src_level, src_box->z, src_box->z, From f9dafcb8f242a6f0d06ff3dcb2d4bb7d73b91b57 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Thu, 21 Apr 2011 12:54:56 +0200 Subject: [PATCH 390/420] st/mesa: implement CopyBufferSubData using resource_copy_region Reviewed-by: Jakob Bornecrantz --- src/mesa/state_tracker/st_cb_bufferobjects.c | 23 ++++---------------- 1 file changed, 4 insertions(+), 19 deletions(-) diff --git a/src/mesa/state_tracker/st_cb_bufferobjects.c b/src/mesa/state_tracker/st_cb_bufferobjects.c index b9b606d539c..1e489b29d93 100644 --- a/src/mesa/state_tracker/st_cb_bufferobjects.c +++ b/src/mesa/state_tracker/st_cb_bufferobjects.c @@ -408,9 +408,7 @@ st_copy_buffer_subdata(struct gl_context *ctx, struct pipe_context *pipe = st_context(ctx)->pipe; struct st_buffer_object *srcObj = st_buffer_object(src); struct st_buffer_object *dstObj = st_buffer_object(dst); - struct pipe_transfer *src_transfer; - struct pipe_transfer *dst_transfer; - ubyte *srcPtr, *dstPtr; + struct pipe_box box; if(!size) return; @@ -419,23 +417,10 @@ st_copy_buffer_subdata(struct gl_context *ctx, assert(!src->Pointer); assert(!dst->Pointer); - srcPtr = (ubyte *) pipe_buffer_map_range(pipe, - srcObj->buffer, - readOffset, size, - PIPE_TRANSFER_READ, - &src_transfer); + u_box_1d(readOffset, size, &box); - dstPtr = (ubyte *) pipe_buffer_map_range(pipe, - dstObj->buffer, - writeOffset, size, - PIPE_TRANSFER_WRITE, - &dst_transfer); - - if (srcPtr && dstPtr) - memcpy(dstPtr + writeOffset, srcPtr + readOffset, size); - - pipe_buffer_unmap(pipe, src_transfer); - pipe_buffer_unmap(pipe, dst_transfer); + pipe->resource_copy_region(pipe, dstObj->buffer, 0, writeOffset, 0, 0, + srcObj->buffer, 0, &box); } From 4ad63659c09499f4e538d71aec42035246747ffd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Thu, 21 Apr 2011 15:13:34 +0200 Subject: [PATCH 391/420] galahad,util: warn on resource target mismatch in copy_region Reviewed-by: Jakob Bornecrantz --- src/gallium/auxiliary/util/u_surface.c | 3 +++ src/gallium/drivers/galahad/glhd_context.c | 6 ++++++ 2 files changed, 9 insertions(+) diff --git a/src/gallium/auxiliary/util/u_surface.c b/src/gallium/auxiliary/util/u_surface.c index 43a026691d3..4c5cc4da182 100644 --- a/src/gallium/auxiliary/util/u_surface.c +++ b/src/gallium/auxiliary/util/u_surface.c @@ -157,6 +157,9 @@ util_resource_copy_region(struct pipe_context *pipe, unsigned h = src_box->height; assert(src && dst); + assert((src->target == PIPE_BUFFER && dst->target == PIPE_BUFFER) || + (src->target != PIPE_BUFFER && dst->target != PIPE_BUFFER)); + if (!src || !dst) return; diff --git a/src/gallium/drivers/galahad/glhd_context.c b/src/gallium/drivers/galahad/glhd_context.c index 813a21e2ee3..f73d8a5d32e 100644 --- a/src/gallium/drivers/galahad/glhd_context.c +++ b/src/gallium/drivers/galahad/glhd_context.c @@ -685,6 +685,12 @@ galahad_resource_copy_region(struct pipe_context *_pipe, util_format_short_name(_dst->format)); } + if ((_src->target == PIPE_BUFFER && _dst->target != PIPE_BUFFER) || + (_src->target != PIPE_BUFFER && _dst->target == PIPE_BUFFER)) { + glhd_warn("Resource target mismatch: Source is %i, destination is %i", + _src->target, _dst->target); + } + pipe->resource_copy_region(pipe, dst, dst_level, From a22aba4eae9b29db731487bce90e8292f7e82c72 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Thu, 21 Apr 2011 12:59:16 -0600 Subject: [PATCH 392/420] st/mesa: check image size before copy_image_data_to_texture() We should only copy images into the dest texture if the size is correct. This fixes a failed assertion when finalizing a texture with mis-defined mipmap levels such as: level 0: 32x32 level 1: 8x8 Also, fix incorrect mipmap level used in assertion at the top of copy_image_data_to_texture(). NOTE: This is a candidate for the 7.10 branch. --- src/mesa/state_tracker/st_cb_texture.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/mesa/state_tracker/st_cb_texture.c b/src/mesa/state_tracker/st_cb_texture.c index 43c24ae957f..ab7f6a51684 100644 --- a/src/mesa/state_tracker/st_cb_texture.c +++ b/src/mesa/state_tracker/st_cb_texture.c @@ -1686,7 +1686,7 @@ copy_image_data_to_texture(struct st_context *st, /* debug checks */ { const struct gl_texture_image *dstImage = - stObj->base.Image[stImage->face][stImage->level]; + stObj->base.Image[stImage->face][dstLevel]; assert(dstImage); assert(dstImage->Width == stImage->base.Width); assert(dstImage->Height == stImage->base.Height); @@ -1843,7 +1843,12 @@ st_finalize_texture(struct gl_context *ctx, /* Need to import images in main memory or held in other textures. */ if (stImage && stObj->pt != stImage->pt) { - copy_image_data_to_texture(st, stObj, level, stImage); + if (stImage->base.Width == u_minify(stObj->width0, level) && + stImage->base.Height == u_minify(stObj->height0, level) && + stImage->base.Depth == u_minify(stObj->depth0, level)) { + /* src image fits expected dest mipmap level size */ + copy_image_data_to_texture(st, stObj, level, stImage); + } } } } From 3aa21f93dc1329c6f956277f2746c2a0bdae5446 Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Fri, 15 Apr 2011 18:38:54 -0700 Subject: [PATCH 393/420] mesa: Fix bugs in ff fragment shader fog handling This patch fixes two bugs related to fog in the fixed-function fragment shader generation code. Fog was only lowered to instructions if MRTs were used. The fragment shader assembler always lowers "fog option" code to instructions, and many drivers (e.g., r300) expect this. When fog lowering did happen, it was after the instruction count was checked against implementation limits. Since fog lowering may add up to 5 instructions, a program that was below the limits before lowering may exceed the limits after lowering. NOTE: This is a candidate for the stable branches. Reviewed-by: Eric Anholt Acked-by: Corbin Simpson Acked-by: Alex Deucher --- src/mesa/main/ff_fragment_shader.cpp | 39 ++++++++++++++-------------- 1 file changed, 20 insertions(+), 19 deletions(-) diff --git a/src/mesa/main/ff_fragment_shader.cpp b/src/mesa/main/ff_fragment_shader.cpp index 43930a4b30e..b799b292664 100644 --- a/src/mesa/main/ff_fragment_shader.cpp +++ b/src/mesa/main/ff_fragment_shader.cpp @@ -1530,14 +1530,32 @@ create_new_program(struct gl_context *ctx, struct state_key *key, */ emit_arith( &p, OPCODE_END, undef, WRITEMASK_XYZW, 0, undef, undef, undef); + /* Allocate final instruction array. This has to be done before calling + * _mesa_append_fog_code because that function frees the Base.Instructions. + * At this point, Base.Instructions points to stack data, so it's a really + * bad idea to free it. + */ + p.program->Base.Instructions + = _mesa_alloc_instructions(p.program->Base.NumInstructions); + if (!p.program->Base.Instructions) { + _mesa_error(ctx, GL_OUT_OF_MEMORY, + "generating tex env program"); + return; + } + _mesa_copy_instructions(p.program->Base.Instructions, instBuffer, + p.program->Base.NumInstructions); + + /* Append fog code. This must be done before checking the program against + * the limits becuase it will potentially add some instructions. + */ if (key->fog_enabled) { /* Pull fog mode from struct gl_context, the value in the state key is * a reduced value and not what is expected in FogOption */ p.program->FogOption = ctx->Fog.Mode; p.program->Base.InputsRead |= FRAG_BIT_FOGC; - } - else { + + _mesa_append_fog_code(ctx, p.program, GL_FALSE); p.program->FogOption = GL_NONE; } @@ -1552,23 +1570,6 @@ create_new_program(struct gl_context *ctx, struct state_key *key, ASSERT(p.program->Base.NumInstructions <= MAX_INSTRUCTIONS); - /* Allocate final instruction array */ - p.program->Base.Instructions - = _mesa_alloc_instructions(p.program->Base.NumInstructions); - if (!p.program->Base.Instructions) { - _mesa_error(ctx, GL_OUT_OF_MEMORY, - "generating tex env program"); - return; - } - _mesa_copy_instructions(p.program->Base.Instructions, instBuffer, - p.program->Base.NumInstructions); - - if (key->num_draw_buffers && p.program->FogOption) { - _mesa_append_fog_code(ctx, p.program, GL_FALSE); - p.program->FogOption = GL_NONE; - } - - /* Notify driver the fragment program has (actually) changed. */ if (ctx->Driver.ProgramStringNotify) { From f0188d4b08b84aa72c6d8148ca94e40d665c7b68 Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Fri, 15 Apr 2011 18:45:06 -0700 Subject: [PATCH 394/420] mesa: gl_fragment_program::FogOption is always GL_NONE so don't check it Reviewed-by: Eric Anholt Acked-by: Corbin Simpson Acked-by: Alex Deucher --- src/mesa/swrast/s_context.c | 15 ++++----------- src/mesa/tnl/t_context.c | 12 ++++-------- 2 files changed, 8 insertions(+), 19 deletions(-) diff --git a/src/mesa/swrast/s_context.c b/src/mesa/swrast/s_context.c index 491fcfcdbbf..b3e39689cfa 100644 --- a/src/mesa/swrast/s_context.c +++ b/src/mesa/swrast/s_context.c @@ -248,18 +248,11 @@ _swrast_update_fog_state( struct gl_context *ctx ) SWcontext *swrast = SWRAST_CONTEXT(ctx); const struct gl_fragment_program *fp = ctx->FragmentProgram._Current; + assert((fp == NULL) || (fp->Base.Target == GL_FRAGMENT_PROGRAM_ARB)); + /* determine if fog is needed, and if so, which fog mode */ - swrast->_FogEnabled = GL_FALSE; - if (fp && fp->Base.Target == GL_FRAGMENT_PROGRAM_ARB) { - if (fp->FogOption != GL_NONE) { - swrast->_FogEnabled = GL_TRUE; - swrast->_FogMode = fp->FogOption; - } - } - else if (ctx->Fog.Enabled) { - swrast->_FogEnabled = GL_TRUE; - swrast->_FogMode = ctx->Fog.Mode; - } + swrast->_FogEnabled = (fp == NULL && ctx->Fog.Enabled); + swrast->_FogMode = ctx->Fog.Mode; } diff --git a/src/mesa/tnl/t_context.c b/src/mesa/tnl/t_context.c index 5f5e2663b5f..a6da8cafe5a 100644 --- a/src/mesa/tnl/t_context.c +++ b/src/mesa/tnl/t_context.c @@ -138,16 +138,12 @@ _tnl_InvalidateState( struct gl_context *ctx, GLuint new_state ) } } - if (ctx->Fog.Enabled) { - /* fixed-function fog */ + if (ctx->Fog.Enabled + || (fp != NULL && (fp->Base.InputsRead & FRAG_BIT_FOGC) != 0)) { + /* Either fixed-function fog or a fragment program needs fog coord. + */ RENDERINPUTS_SET( tnl->render_inputs_bitset, _TNL_ATTRIB_FOG ); } - else if (fp) { - if (fp->FogOption != GL_NONE || (fp->Base.InputsRead & FRAG_BIT_FOGC)) { - /* fragment program needs fog coord */ - RENDERINPUTS_SET( tnl->render_inputs_bitset, _TNL_ATTRIB_FOG ); - } - } if (ctx->Polygon.FrontMode != GL_FILL || ctx->Polygon.BackMode != GL_FILL) From 8780c38983d9570004b4faed754f9d6a102cfb76 Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Fri, 15 Apr 2011 18:46:43 -0700 Subject: [PATCH 395/420] i965: gl_fragment_program::FogOption is always GL_NONE so don't check it Reviewed-by: Eric Anholt Acked-by: Corbin Simpson Acked-by: Alex Deucher --- src/mesa/drivers/dri/i965/brw_program.c | 5 ----- 1 file changed, 5 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_program.c b/src/mesa/drivers/dri/i965/brw_program.c index b5ec55b2ae3..6674f1640c8 100644 --- a/src/mesa/drivers/dri/i965/brw_program.c +++ b/src/mesa/drivers/dri/i965/brw_program.c @@ -134,11 +134,6 @@ static GLboolean brwProgramStringNotify( struct gl_context *ctx, brw_fragment_program_const(brw->fragment_program); struct gl_shader_program *shader_program; - if (fprog->FogOption) { - _mesa_append_fog_code(ctx, fprog, GL_TRUE); - fprog->FogOption = GL_NONE; - } - if (newFP == curFP) brw->state.dirty.brw |= BRW_NEW_FRAGMENT_PROGRAM; newFP->id = brw->program_id++; From df7555e763b9a4d989788e9b1cd25e8740649e79 Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Fri, 15 Apr 2011 18:46:57 -0700 Subject: [PATCH 396/420] i915: gl_fragment_program::FogOption is always GL_NONE so don't check it Reviewed-by: Eric Anholt Acked-by: Corbin Simpson Acked-by: Alex Deucher --- src/mesa/drivers/dri/i915/i915_fragprog.c | 9 --------- src/mesa/drivers/dri/i915/i915_state.c | 4 ++-- 2 files changed, 2 insertions(+), 11 deletions(-) diff --git a/src/mesa/drivers/dri/i915/i915_fragprog.c b/src/mesa/drivers/dri/i915/i915_fragprog.c index 7286e2b73d8..bfc2f9694bd 100644 --- a/src/mesa/drivers/dri/i915/i915_fragprog.c +++ b/src/mesa/drivers/dri/i915/i915_fragprog.c @@ -1285,15 +1285,6 @@ i915ProgramStringNotify(struct gl_context * ctx, if (target == GL_FRAGMENT_PROGRAM_ARB) { struct i915_fragment_program *p = (struct i915_fragment_program *) prog; p->translated = 0; - - /* Hack: make sure fog is correctly enabled according to this - * fragment program's fog options. - */ - if (p->FragProg.FogOption) { - /* add extra instructions to do fog, then turn off FogOption field */ - _mesa_append_fog_code(ctx, &p->FragProg, GL_TRUE); - p->FragProg.FogOption = GL_NONE; - } } (void) _tnl_program_string(ctx, target, prog); diff --git a/src/mesa/drivers/dri/i915/i915_state.c b/src/mesa/drivers/dri/i915/i915_state.c index 3b1af4c455e..5c7c0c32d6a 100644 --- a/src/mesa/drivers/dri/i915/i915_state.c +++ b/src/mesa/drivers/dri/i915/i915_state.c @@ -736,8 +736,8 @@ i915_update_fog(struct gl_context * ctx) if (ctx->FragmentProgram._Current) { /* Pull in static fog state from program */ - mode = ctx->FragmentProgram._Current->FogOption; - enabled = (mode != GL_NONE); + mode = GL_NONE; + enabled = GL_FALSE; try_pixel_fog = 0; } else { From 4d203a01e20dedcfaab09c18922e8ed9dcb39729 Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Fri, 15 Apr 2011 19:04:57 -0700 Subject: [PATCH 397/420] mesa: Kill gl_fragment_program::FogOption with fire All drivers expect this to always be GL_NONE. Don't let there be any opportunity for a bad value to leak out and infect some unsuspecting driver. If any driver for hardware that had fixed-function per-fragment fog (i915 and perhaps some r300-ish) was ever going to add support, it would have done it by now. Reviewed-by: Eric Anholt Acked-by: Corbin Simpson Acked-by: Alex Deucher --- .../dri/r300/compiler/r300_fragprog_emit.c | 2 -- src/mesa/main/ff_fragment_shader.cpp | 9 +---- src/mesa/main/mtypes.h | 1 - src/mesa/program/arbprogparse.c | 18 ++++------ src/mesa/program/program.c | 1 - src/mesa/program/programopt.c | 33 ++++++++++++------- src/mesa/program/programopt.h | 4 ++- 7 files changed, 31 insertions(+), 37 deletions(-) diff --git a/src/mesa/drivers/dri/r300/compiler/r300_fragprog_emit.c b/src/mesa/drivers/dri/r300/compiler/r300_fragprog_emit.c index 646a415ca51..8b73409136f 100644 --- a/src/mesa/drivers/dri/r300/compiler/r300_fragprog_emit.c +++ b/src/mesa/drivers/dri/r300/compiler/r300_fragprog_emit.c @@ -34,8 +34,6 @@ * \author Ben Skeggs * * \author Jerome Glisse - * - * \todo FogOption */ #include "r300_fragprog.h" diff --git a/src/mesa/main/ff_fragment_shader.cpp b/src/mesa/main/ff_fragment_shader.cpp index b799b292664..0b53c28f7ae 100644 --- a/src/mesa/main/ff_fragment_shader.cpp +++ b/src/mesa/main/ff_fragment_shader.cpp @@ -1549,14 +1549,7 @@ create_new_program(struct gl_context *ctx, struct state_key *key, * the limits becuase it will potentially add some instructions. */ if (key->fog_enabled) { - /* Pull fog mode from struct gl_context, the value in the state key is - * a reduced value and not what is expected in FogOption - */ - p.program->FogOption = ctx->Fog.Mode; - p.program->Base.InputsRead |= FRAG_BIT_FOGC; - - _mesa_append_fog_code(ctx, p.program, GL_FALSE); - p.program->FogOption = GL_NONE; + _mesa_append_fog_code(ctx, p.program, ctx->Fog.Mode, GL_FALSE); } if (p.program->Base.NumTexIndirections > ctx->Const.FragmentProgram.MaxTexIndirections) diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index 5a25d649a13..160ae9d2622 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -1923,7 +1923,6 @@ struct gl_geometry_program struct gl_fragment_program { struct gl_program Base; /**< base class */ - GLenum FogOption; GLboolean UsesKill; /**< shader uses KIL instruction */ GLboolean OriginUpperLeft; GLboolean PixelCenterInteger; diff --git a/src/mesa/program/arbprogparse.c b/src/mesa/program/arbprogparse.c index 7f778c3c381..dffc8abf735 100644 --- a/src/mesa/program/arbprogparse.c +++ b/src/mesa/program/arbprogparse.c @@ -116,20 +116,11 @@ _mesa_parse_arb_fragment_program(struct gl_context* ctx, GLenum target, program->Base.SamplersUsed |= (1 << i); } program->Base.ShadowSamplers = prog.ShadowSamplers; - switch (state.option.Fog) { - case OPTION_FOG_EXP: program->FogOption = GL_EXP; break; - case OPTION_FOG_EXP2: program->FogOption = GL_EXP2; break; - case OPTION_FOG_LINEAR: program->FogOption = GL_LINEAR; break; - default: program->FogOption = GL_NONE; break; - } program->OriginUpperLeft = state.option.OriginUpperLeft; program->PixelCenterInteger = state.option.PixelCenterInteger; program->UsesKill = state.fragment.UsesKill; - if (program->FogOption) - program->Base.InputsRead |= FRAG_BIT_FOGC; - if (program->Base.Instructions) free(program->Base.Instructions); program->Base.Instructions = prog.Instructions; @@ -143,12 +134,15 @@ _mesa_parse_arb_fragment_program(struct gl_context* ctx, GLenum target, * there's no hardware that wants to do fog in a discrete stage separate * from the fragment shader. */ - if (program->FogOption != GL_NONE) { + if (state.option.Fog != OPTION_NONE) { + static const GLenum fog_modes[4] = { + GL_NONE, GL_EXP, GL_EXP2, GL_LINEAR + }; + /* XXX: we should somehow recompile this to remove clamping if disabled * On the ATI driver, this is unclampled if fragment clamping is disabled */ - _mesa_append_fog_code(ctx, program, GL_TRUE); - program->FogOption = GL_NONE; + _mesa_append_fog_code(ctx, program, fog_modes[state.option.Fog], GL_TRUE); } #if DEBUG_FP diff --git a/src/mesa/program/program.c b/src/mesa/program/program.c index 5b014872ed4..78efca9f122 100644 --- a/src/mesa/program/program.c +++ b/src/mesa/program/program.c @@ -557,7 +557,6 @@ _mesa_clone_program(struct gl_context *ctx, const struct gl_program *prog) const struct gl_fragment_program *fp = (const struct gl_fragment_program *) prog; struct gl_fragment_program *fpc = (struct gl_fragment_program *) clone; - fpc->FogOption = fp->FogOption; fpc->UsesKill = fp->UsesKill; fpc->OriginUpperLeft = fp->OriginUpperLeft; fpc->PixelCenterInteger = fp->PixelCenterInteger; diff --git a/src/mesa/program/programopt.c b/src/mesa/program/programopt.c index 5ad9571f757..a239da2c609 100644 --- a/src/mesa/program/programopt.c +++ b/src/mesa/program/programopt.c @@ -230,15 +230,25 @@ _mesa_insert_mvp_code(struct gl_context *ctx, struct gl_vertex_program *vprog) /** - * Append extra instructions onto the given fragment program to implement - * the fog mode specified by fprog->FogOption. - * The fragment.fogcoord input is used to compute the fog blend factor. + * Append instructions to implement fog * - * XXX with a little work, this function could be adapted to add fog code + * The \c fragment.fogcoord input is used to compute the fog blend factor. + * + * \param ctx The GL context + * \param fprog Fragment program that fog instructions will be appended to. + * \param fog_mode Fog mode. One of \c GL_EXP, \c GL_EXP2, or \c GL_LINEAR. + * \param saturate True if writes to color outputs should be clamped to [0, 1] + * + * \note + * This function sets \c FRAG_BIT_FOGC in \c fprog->Base.InputsRead. + * + * \todo With a little work, this function could be adapted to add fog code * to vertex programs too. */ void -_mesa_append_fog_code(struct gl_context *ctx, struct gl_fragment_program *fprog, GLboolean saturate) +_mesa_append_fog_code(struct gl_context *ctx, + struct gl_fragment_program *fprog, GLenum fog_mode, + GLboolean saturate) { static const gl_state_index fogPStateOpt[STATE_LENGTH] = { STATE_INTERNAL, STATE_FOG_PARAMS_OPTIMIZED, 0, 0, 0 }; @@ -251,9 +261,9 @@ _mesa_append_fog_code(struct gl_context *ctx, struct gl_fragment_program *fprog, GLint fogPRefOpt, fogColorRef; /* state references */ GLuint colorTemp, fogFactorTemp; /* temporary registerss */ - if (fprog->FogOption == GL_NONE) { + if (fog_mode == GL_NONE) { _mesa_problem(ctx, "_mesa_append_fog_code() called for fragment program" - " with FogOption == GL_NONE"); + " with fog_mode == GL_NONE"); return; } @@ -301,7 +311,7 @@ _mesa_append_fog_code(struct gl_context *ctx, struct gl_fragment_program *fprog, /* emit instructions to compute fog blending factor */ /* this is always clamped to [0, 1] regardless of fragment clamping */ - if (fprog->FogOption == GL_LINEAR) { + if (fog_mode == GL_LINEAR) { /* MAD fogFactorTemp.x, fragment.fogcoord.x, fogPRefOpt.x, fogPRefOpt.y; */ inst->Opcode = OPCODE_MAD; inst->DstReg.File = PROGRAM_TEMPORARY; @@ -320,7 +330,7 @@ _mesa_append_fog_code(struct gl_context *ctx, struct gl_fragment_program *fprog, inst++; } else { - ASSERT(fprog->FogOption == GL_EXP || fprog->FogOption == GL_EXP2); + ASSERT(fog_mode == GL_EXP || fog_mode == GL_EXP2); /* fogPRefOpt.z = d/ln(2), fogPRefOpt.w = d/sqrt(ln(2) */ /* EXP: MUL fogFactorTemp.x, fogPRefOpt.z, fragment.fogcoord.x; */ /* EXP2: MUL fogFactorTemp.x, fogPRefOpt.w, fragment.fogcoord.x; */ @@ -331,12 +341,12 @@ _mesa_append_fog_code(struct gl_context *ctx, struct gl_fragment_program *fprog, inst->SrcReg[0].File = PROGRAM_STATE_VAR; inst->SrcReg[0].Index = fogPRefOpt; inst->SrcReg[0].Swizzle - = (fprog->FogOption == GL_EXP) ? SWIZZLE_ZZZZ : SWIZZLE_WWWW; + = (fog_mode == GL_EXP) ? SWIZZLE_ZZZZ : SWIZZLE_WWWW; inst->SrcReg[1].File = PROGRAM_INPUT; inst->SrcReg[1].Index = FRAG_ATTRIB_FOGC; inst->SrcReg[1].Swizzle = SWIZZLE_XXXX; inst++; - if (fprog->FogOption == GL_EXP2) { + if (fog_mode == GL_EXP2) { /* MUL fogFactorTemp.x, fogFactorTemp.x, fogFactorTemp.x; */ inst->Opcode = OPCODE_MUL; inst->DstReg.File = PROGRAM_TEMPORARY; @@ -397,7 +407,6 @@ _mesa_append_fog_code(struct gl_context *ctx, struct gl_fragment_program *fprog, fprog->Base.Instructions = newInst; fprog->Base.NumInstructions = inst - newInst; fprog->Base.InputsRead |= FRAG_BIT_FOGC; - /* XXX do this? fprog->FogOption = GL_NONE; */ } diff --git a/src/mesa/program/programopt.h b/src/mesa/program/programopt.h index 79631aa5843..b9205823c29 100644 --- a/src/mesa/program/programopt.h +++ b/src/mesa/program/programopt.h @@ -32,7 +32,9 @@ extern void _mesa_insert_mvp_code(struct gl_context *ctx, struct gl_vertex_program *vprog); extern void -_mesa_append_fog_code(struct gl_context *ctx, struct gl_fragment_program *fprog, GLboolean saturate); +_mesa_append_fog_code(struct gl_context *ctx, + struct gl_fragment_program *fprog, GLenum fog_mode, + GLboolean saturate); extern void _mesa_count_texture_indirections(struct gl_program *prog); From 8fc5ed18bc0d299a4495b28f02e63b1b75326bbc Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Fri, 15 Apr 2011 19:14:36 -0700 Subject: [PATCH 398/420] i915: Delete disabled try_pixel_fog paths Reviewed-by: Eric Anholt Acked-by: Corbin Simpson Acked-by: Alex Deucher --- src/mesa/drivers/dri/i915/i915_state.c | 55 -------------------------- 1 file changed, 55 deletions(-) diff --git a/src/mesa/drivers/dri/i915/i915_state.c b/src/mesa/drivers/dri/i915/i915_state.c index 5c7c0c32d6a..05fc26f68f7 100644 --- a/src/mesa/drivers/dri/i915/i915_state.c +++ b/src/mesa/drivers/dri/i915/i915_state.c @@ -731,76 +731,21 @@ i915_update_fog(struct gl_context * ctx) struct i915_context *i915 = I915_CONTEXT(ctx); GLenum mode; GLboolean enabled; - GLboolean try_pixel_fog; GLuint dw; if (ctx->FragmentProgram._Current) { /* Pull in static fog state from program */ mode = GL_NONE; enabled = GL_FALSE; - try_pixel_fog = 0; } else { enabled = ctx->Fog.Enabled; mode = ctx->Fog.Mode; -#if 0 - /* XXX - DISABLED -- Need ortho fallback */ - try_pixel_fog = (ctx->Fog.FogCoordinateSource == GL_FRAGMENT_DEPTH_EXT - && ctx->Hint.Fog == GL_NICEST); -#else - try_pixel_fog = 0; -#endif } if (!enabled) { i915->vertex_fog = I915_FOG_NONE; } - else if (try_pixel_fog) { - I915_STATECHANGE(i915, I915_UPLOAD_FOG); - i915->state.Fog[I915_FOGREG_MODE1] &= ~FMC1_FOGFUNC_MASK; - i915->vertex_fog = I915_FOG_PIXEL; - - switch (mode) { - case GL_LINEAR: - if (ctx->Fog.End <= ctx->Fog.Start) { - /* XXX - this won't work with fragment programs. Need to - * either fallback or append fog instructions to end of - * program in the case of linear fog. - */ - printf("vertex fog!\n"); - i915->state.Fog[I915_FOGREG_MODE1] |= FMC1_FOGFUNC_VERTEX; - i915->vertex_fog = I915_FOG_VERTEX; - } - else { - GLfloat c2 = 1.0 / (ctx->Fog.End - ctx->Fog.Start); - GLfloat c1 = ctx->Fog.End * c2; - - i915->state.Fog[I915_FOGREG_MODE1] &= ~FMC1_C1_MASK; - i915->state.Fog[I915_FOGREG_MODE1] |= FMC1_FOGFUNC_PIXEL_LINEAR; - i915->state.Fog[I915_FOGREG_MODE1] |= - ((GLuint) (c1 * FMC1_C1_ONE)) & FMC1_C1_MASK; - - if (i915->state.Fog[I915_FOGREG_MODE1] & FMC1_FOGINDEX_Z) { - i915->state.Fog[I915_FOGREG_MODE2] - = (GLuint) (c2 * FMC2_C2_ONE); - } - else { - fi_type fi; - fi.f = c2; - i915->state.Fog[I915_FOGREG_MODE2] = fi.i; - } - } - break; - case GL_EXP: - i915->state.Fog[I915_FOGREG_MODE1] |= FMC1_FOGFUNC_PIXEL_EXP; - break; - case GL_EXP2: - i915->state.Fog[I915_FOGREG_MODE1] |= FMC1_FOGFUNC_PIXEL_EXP2; - break; - default: - break; - } - } else { /* if (i915->vertex_fog != I915_FOG_VERTEX) */ I915_STATECHANGE(i915, I915_UPLOAD_FOG); i915->state.Fog[I915_FOGREG_MODE1] &= ~FMC1_FOGFUNC_MASK; From c41cb17037777de6e4ae596e56a16239429486e9 Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Fri, 15 Apr 2011 19:23:13 -0700 Subject: [PATCH 399/420] i915: There's always a fragment program Fragment programs are generated by core Mesa for fixed-function. Because of this, there's no reason to handle cases where there is no fragment program for fog. Reviewed-by: Eric Anholt Acked-by: Corbin Simpson Acked-by: Alex Deucher --- src/mesa/drivers/dri/i915/i915_state.c | 31 +++++--------------------- 1 file changed, 5 insertions(+), 26 deletions(-) diff --git a/src/mesa/drivers/dri/i915/i915_state.c b/src/mesa/drivers/dri/i915/i915_state.c index 05fc26f68f7..df100314be9 100644 --- a/src/mesa/drivers/dri/i915/i915_state.c +++ b/src/mesa/drivers/dri/i915/i915_state.c @@ -729,36 +729,15 @@ void i915_update_fog(struct gl_context * ctx) { struct i915_context *i915 = I915_CONTEXT(ctx); - GLenum mode; - GLboolean enabled; GLuint dw; - if (ctx->FragmentProgram._Current) { - /* Pull in static fog state from program */ - mode = GL_NONE; - enabled = GL_FALSE; - } - else { - enabled = ctx->Fog.Enabled; - mode = ctx->Fog.Mode; - } + assert(ctx->FragmentProgram._Current); - if (!enabled) { - i915->vertex_fog = I915_FOG_NONE; - } - else { /* if (i915->vertex_fog != I915_FOG_VERTEX) */ - I915_STATECHANGE(i915, I915_UPLOAD_FOG); - i915->state.Fog[I915_FOGREG_MODE1] &= ~FMC1_FOGFUNC_MASK; - i915->state.Fog[I915_FOGREG_MODE1] |= FMC1_FOGFUNC_VERTEX; - i915->vertex_fog = I915_FOG_VERTEX; - } + i915->vertex_fog = I915_FOG_NONE; + + I915_ACTIVESTATE(i915, I915_UPLOAD_FOG, 0); + dw = i915->state.Ctx[I915_CTXREG_LIS5] & ~S5_FOG_ENABLE; - I915_ACTIVESTATE(i915, I915_UPLOAD_FOG, enabled); - dw = i915->state.Ctx[I915_CTXREG_LIS5]; - if (enabled) - dw |= S5_FOG_ENABLE; - else - dw &= ~S5_FOG_ENABLE; if (dw != i915->state.Ctx[I915_CTXREG_LIS5]) { i915->state.Ctx[I915_CTXREG_LIS5] = dw; I915_STATECHANGE(i915, I915_UPLOAD_CTX); From 499f7c0114cca195c9569c202ae099ef0277b010 Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Fri, 15 Apr 2011 19:25:59 -0700 Subject: [PATCH 400/420] i915: i915_context::vertex_fog is always I915_FOG_NONE, so kill it Reviewed-by: Eric Anholt Acked-by: Corbin Simpson Acked-by: Alex Deucher --- src/mesa/drivers/dri/i915/i915_context.h | 5 ----- src/mesa/drivers/dri/i915/i915_fragprog.c | 2 +- src/mesa/drivers/dri/i915/i915_state.c | 2 -- 3 files changed, 1 insertion(+), 8 deletions(-) diff --git a/src/mesa/drivers/dri/i915/i915_context.h b/src/mesa/drivers/dri/i915/i915_context.h index 601620275f4..9a09f0adc0a 100644 --- a/src/mesa/drivers/dri/i915/i915_context.h +++ b/src/mesa/drivers/dri/i915/i915_context.h @@ -254,16 +254,11 @@ struct i915_hw_state GLuint emitted; /* I915_UPLOAD_* */ }; -#define I915_FOG_PIXEL 2 -#define I915_FOG_VERTEX 1 -#define I915_FOG_NONE 0 - struct i915_context { struct intel_context intel; GLuint last_ReallyEnabled; - GLuint vertex_fog; GLuint lodbias_ss2[MAX_TEXTURE_UNITS]; diff --git a/src/mesa/drivers/dri/i915/i915_fragprog.c b/src/mesa/drivers/dri/i915/i915_fragprog.c index bfc2f9694bd..b67ebb9a1ec 100644 --- a/src/mesa/drivers/dri/i915/i915_fragprog.c +++ b/src/mesa/drivers/dri/i915/i915_fragprog.c @@ -1362,7 +1362,7 @@ i915ValidateFragmentProgram(struct i915_context *i915) EMIT_ATTR(_TNL_ATTRIB_COLOR1, EMIT_4UB_4F_BGRA, S4_VFMT_SPEC_FOG, 4); } - if ((inputsRead & FRAG_BIT_FOGC) || i915->vertex_fog != I915_FOG_NONE) { + if ((inputsRead & FRAG_BIT_FOGC)) { EMIT_ATTR(_TNL_ATTRIB_FOG, EMIT_1F, S4_VFMT_FOG_PARAM, 4); } diff --git a/src/mesa/drivers/dri/i915/i915_state.c b/src/mesa/drivers/dri/i915/i915_state.c index df100314be9..d027426e2ab 100644 --- a/src/mesa/drivers/dri/i915/i915_state.c +++ b/src/mesa/drivers/dri/i915/i915_state.c @@ -733,8 +733,6 @@ i915_update_fog(struct gl_context * ctx) assert(ctx->FragmentProgram._Current); - i915->vertex_fog = I915_FOG_NONE; - I915_ACTIVESTATE(i915, I915_UPLOAD_FOG, 0); dw = i915->state.Ctx[I915_CTXREG_LIS5] & ~S5_FOG_ENABLE; From d439491a77cf9f25ea7a7f9c2309d2542d87f83e Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Fri, 15 Apr 2011 22:20:09 -0700 Subject: [PATCH 401/420] i915: Gut all remaining bits of hardware fog None of this ever gets used. Fog is always calculated by a fragment program. Even though the fixed-function fog unit is never used, state updates are still sent to the hardware. Removing those spurious state updates can't hurt performance. Reviewed-by: Eric Anholt Acked-by: Corbin Simpson Acked-by: Alex Deucher --- src/mesa/drivers/dri/i915/i915_context.c | 8 +- src/mesa/drivers/dri/i915/i915_context.h | 10 --- src/mesa/drivers/dri/i915/i915_state.c | 93 ++---------------------- src/mesa/drivers/dri/i915/i915_vtbl.c | 9 --- 4 files changed, 13 insertions(+), 107 deletions(-) diff --git a/src/mesa/drivers/dri/i915/i915_context.c b/src/mesa/drivers/dri/i915/i915_context.c index 7389a1d57a9..f02f2d78267 100644 --- a/src/mesa/drivers/dri/i915/i915_context.c +++ b/src/mesa/drivers/dri/i915/i915_context.c @@ -69,8 +69,6 @@ i915InvalidateState(struct gl_context * ctx, GLuint new_state) p->params_uptodate = 0; } - if (new_state & (_NEW_FOG | _NEW_HINT | _NEW_PROGRAM | _NEW_PROGRAM_CONSTANTS)) - i915_update_fog(ctx); if (new_state & (_NEW_STENCIL | _NEW_BUFFERS | _NEW_POLYGON)) i915_update_stencil(ctx); if (new_state & (_NEW_LIGHT)) @@ -209,5 +207,11 @@ i915CreateContext(int api, i915InitState(i915); + /* Always enable pixel fog. Vertex fog using fog coord will conflict + * with fog code appended onto fragment program. + */ + _tnl_allow_vertex_fog(ctx, 0); + _tnl_allow_pixel_fog(ctx, 1); + return GL_TRUE; } diff --git a/src/mesa/drivers/dri/i915/i915_context.h b/src/mesa/drivers/dri/i915/i915_context.h index 9a09f0adc0a..577a01e290c 100644 --- a/src/mesa/drivers/dri/i915/i915_context.h +++ b/src/mesa/drivers/dri/i915/i915_context.h @@ -46,7 +46,6 @@ #define I915_UPLOAD_STIPPLE 0x4 #define I915_UPLOAD_PROGRAM 0x8 #define I915_UPLOAD_CONSTANTS 0x10 -#define I915_UPLOAD_FOG 0x20 #define I915_UPLOAD_INVARIENT 0x40 #define I915_UPLOAD_DEFAULTS 0x80 #define I915_UPLOAD_RASTER_RULES 0x100 @@ -91,13 +90,6 @@ #define I915_BLENDREG_BLENDCOLOR1 2 #define I915_BLEND_SETUP_SIZE 3 -#define I915_FOGREG_COLOR 0 -#define I915_FOGREG_MODE0 1 -#define I915_FOGREG_MODE1 2 -#define I915_FOGREG_MODE2 3 -#define I915_FOGREG_MODE3 4 -#define I915_FOG_SETUP_SIZE 5 - #define I915_STPREG_ST0 0 #define I915_STPREG_ST1 1 #define I915_STP_SETUP_SIZE 2 @@ -227,7 +219,6 @@ struct i915_hw_state GLuint Blend[I915_BLEND_SETUP_SIZE]; GLuint Buffer[I915_DEST_SETUP_SIZE]; GLuint Stipple[I915_STP_SETUP_SIZE]; - GLuint Fog[I915_FOG_SETUP_SIZE]; GLuint Defaults[I915_DEF_SETUP_SIZE]; GLuint RasterRules[I915_RASTER_RULES_SETUP_SIZE]; GLuint Tex[I915_TEX_UNITS][I915_TEX_SETUP_SIZE]; @@ -345,7 +336,6 @@ extern void i915_print_ureg(const char *msg, GLuint ureg); */ extern void i915InitStateFunctions(struct dd_function_table *functions); extern void i915InitState(struct i915_context *i915); -extern void i915_update_fog(struct gl_context * ctx); extern void i915_update_stencil(struct gl_context * ctx); extern void i915_update_provoking_vertex(struct gl_context *ctx); diff --git a/src/mesa/drivers/dri/i915/i915_state.c b/src/mesa/drivers/dri/i915/i915_state.c index d027426e2ab..99212ad4fd1 100644 --- a/src/mesa/drivers/dri/i915/i915_state.c +++ b/src/mesa/drivers/dri/i915/i915_state.c @@ -724,79 +724,17 @@ i915ShadeModel(struct gl_context * ctx, GLenum mode) /* ============================================================= * Fog + * + * This empty function remains because _mesa_init_driver_state calls + * dd_function_table::Fogfv unconditionally. We have to have some function + * there so that it doesn't try to call a NULL pointer. */ -void -i915_update_fog(struct gl_context * ctx) -{ - struct i915_context *i915 = I915_CONTEXT(ctx); - GLuint dw; - - assert(ctx->FragmentProgram._Current); - - I915_ACTIVESTATE(i915, I915_UPLOAD_FOG, 0); - dw = i915->state.Ctx[I915_CTXREG_LIS5] & ~S5_FOG_ENABLE; - - if (dw != i915->state.Ctx[I915_CTXREG_LIS5]) { - i915->state.Ctx[I915_CTXREG_LIS5] = dw; - I915_STATECHANGE(i915, I915_UPLOAD_CTX); - } - - /* Always enable pixel fog. Vertex fog using fog coord will conflict - * with fog code appended onto fragment program. - */ - _tnl_allow_vertex_fog( ctx, 0 ); - _tnl_allow_pixel_fog( ctx, 1 ); -} - static void i915Fogfv(struct gl_context * ctx, GLenum pname, const GLfloat * param) { - struct i915_context *i915 = I915_CONTEXT(ctx); - - switch (pname) { - case GL_FOG_COORDINATE_SOURCE_EXT: - case GL_FOG_MODE: - case GL_FOG_START: - case GL_FOG_END: - break; - - case GL_FOG_DENSITY: - I915_STATECHANGE(i915, I915_UPLOAD_FOG); - - if (i915->state.Fog[I915_FOGREG_MODE1] & FMC1_FOGINDEX_Z) { - i915->state.Fog[I915_FOGREG_MODE3] = - (GLuint) (ctx->Fog.Density * FMC3_D_ONE); - } - else { - fi_type fi; - fi.f = ctx->Fog.Density; - i915->state.Fog[I915_FOGREG_MODE3] = fi.i; - } - break; - - case GL_FOG_COLOR: - I915_STATECHANGE(i915, I915_UPLOAD_FOG); - i915->state.Fog[I915_FOGREG_COLOR] = - (_3DSTATE_FOG_COLOR_CMD | - ((GLubyte) (ctx->Fog.Color[0] * 255.0F) << 16) | - ((GLubyte) (ctx->Fog.Color[1] * 255.0F) << 8) | - ((GLubyte) (ctx->Fog.Color[2] * 255.0F) << 0)); - break; - - default: - break; - } -} - -static void -i915Hint(struct gl_context * ctx, GLenum target, GLenum state) -{ - switch (target) { - case GL_FOG_HINT: - break; - default: - break; - } + (void) ctx; + (void) pname; + (void) param; } /* ============================================================= @@ -893,9 +831,6 @@ i915Enable(struct gl_context * ctx, GLenum cap, GLboolean state) } break; - case GL_FOG: - break; - case GL_CULL_FACE: i915CullFaceFrontFace(ctx, 0); break; @@ -1029,19 +964,6 @@ i915_init_packets(struct i915_context *i915) i915->state.Stipple[I915_STPREG_ST0] = _3DSTATE_STIPPLE; } - - { - I915_STATECHANGE(i915, I915_UPLOAD_FOG); - i915->state.Fog[I915_FOGREG_MODE0] = _3DSTATE_FOG_MODE_CMD; - i915->state.Fog[I915_FOGREG_MODE1] = (FMC1_FOGFUNC_MODIFY_ENABLE | - FMC1_FOGFUNC_VERTEX | - FMC1_FOGINDEX_MODIFY_ENABLE | - FMC1_FOGINDEX_W | - FMC1_C1_C2_MODIFY_ENABLE | - FMC1_DENSITY_MODIFY_ENABLE); - i915->state.Fog[I915_FOGREG_COLOR] = _3DSTATE_FOG_COLOR_CMD; - } - { i915->state.Buffer[I915_DESTREG_DV0] = _3DSTATE_DST_BUF_VARS_CMD; @@ -1124,7 +1046,6 @@ i915InitStateFunctions(struct dd_function_table *functions) functions->Enable = i915Enable; functions->Fogfv = i915Fogfv; functions->FrontFace = i915CullFaceFrontFace; - functions->Hint = i915Hint; functions->LightModelfv = i915LightModelfv; functions->LineWidth = i915LineWidth; functions->LogicOpcode = i915LogicOp; diff --git a/src/mesa/drivers/dri/i915/i915_vtbl.c b/src/mesa/drivers/dri/i915/i915_vtbl.c index 942ebec29bd..89650b618e4 100644 --- a/src/mesa/drivers/dri/i915/i915_vtbl.c +++ b/src/mesa/drivers/dri/i915/i915_vtbl.c @@ -260,9 +260,6 @@ get_state_size(struct i915_hw_state *state) if (dirty & I915_UPLOAD_STIPPLE) sz += sizeof(state->Stipple); - if (dirty & I915_UPLOAD_FOG) - sz += sizeof(state->Fog); - if (dirty & I915_UPLOAD_TEX_ALL) { int nr = 0; for (i = 0; i < I915_TEX_UNITS; i++) @@ -429,12 +426,6 @@ i915_emit_state(struct intel_context *intel) emit(intel, state->Stipple, sizeof(state->Stipple)); } - if (dirty & I915_UPLOAD_FOG) { - if (INTEL_DEBUG & DEBUG_STATE) - fprintf(stderr, "I915_UPLOAD_FOG:\n"); - emit(intel, state->Fog, sizeof(state->Fog)); - } - /* Combine all the dirty texture state into a single command to * avoid lockups on I915 hardware. */ From 7142a67473b4fc77bdd58baf7cced9bfc54ccb73 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kristian=20H=C3=B8gsberg?= Date: Thu, 21 Apr 2011 23:47:36 -0400 Subject: [PATCH 402/420] WL_bind_wayland_display: clarify that context must be NULL --- docs/WL_bind_wayland_display.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/WL_bind_wayland_display.spec b/docs/WL_bind_wayland_display.spec index b4e670303d3..e2fde3c507b 100644 --- a/docs/WL_bind_wayland_display.spec +++ b/docs/WL_bind_wayland_display.spec @@ -82,7 +82,7 @@ Additions to the EGL 1.4 Specification: Import a wl_buffer by calling eglCreateImageKHR with wl_buffer as EGLClientBuffer, EGL_WAYLAND_BUFFER_WL as the target, - and an empty attribute_list. + NULL context and an empty attribute_list. Issues From 1faf079a692bbf4b24c8e83fa2b331c1e3b58e13 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Wed, 20 Apr 2011 12:40:40 +0200 Subject: [PATCH 403/420] swrast: fix readpix clamping Broken with e5c6a92a12b5cd7db205d72039f58d302b0be9d5. (ARB_color_buffer_float) Clamping should occur if type != float, otherwise the MSBs of the resulting pixels are killed off. For example, reading back LUMINANCE = R+G+B can be greater than 0xff, but the result is naturally masked by 0xff for UNSIGNED_BYTE, leading to bogus results. The following bug report seems to want clamping to occur if type == half_float too. Not sure what's correct. Bug: [bisected pineview] oglc case pxconv-read failed https://bugs.freedesktop.org/show_bug.cgi?id=35852 Tested by: Fang Xun Reviewed-and-tested-by: Ian Romanick --- src/mesa/swrast/s_readpix.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/mesa/swrast/s_readpix.c b/src/mesa/swrast/s_readpix.c index a201a631c90..214f2ea1aaa 100644 --- a/src/mesa/swrast/s_readpix.c +++ b/src/mesa/swrast/s_readpix.c @@ -318,12 +318,12 @@ read_rgba_pixels( struct gl_context *ctx, if (!rb) return; - if (type == GL_FLOAT && ((ctx->Color.ClampReadColor == GL_TRUE) || - (ctx->Color.ClampReadColor == GL_FIXED_ONLY_ARB && - rb->DataType != GL_FLOAT))) + if ((ctx->Color._ClampReadColor == GL_TRUE || type != GL_FLOAT) && + !_mesa_is_integer_format(format)) { transferOps |= IMAGE_CLAMP_BIT; + } - /* Try optimized path first */ + /* Try the optimized path first. */ if (fast_read_rgba_pixels(ctx, x, y, width, height, format, type, pixels, packing, transferOps)) { return; /* done! */ From 2225397d1cf5e4f4a1293495f3a26bd33e5d7ac3 Mon Sep 17 00:00:00 2001 From: Benjamin Franzke Date: Thu, 21 Apr 2011 09:39:25 +0200 Subject: [PATCH 404/420] egl/wayland: Fix prefixes for interface names --- src/egl/drivers/dri2/platform_wayland.c | 4 ++-- src/egl/wayland/wayland-drm/protocol/wayland-drm.xml | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/egl/drivers/dri2/platform_wayland.c b/src/egl/drivers/dri2/platform_wayland.c index 62b2eabec42..c3dee7ff0f7 100644 --- a/src/egl/drivers/dri2/platform_wayland.c +++ b/src/egl/drivers/dri2/platform_wayland.c @@ -667,10 +667,10 @@ dri2_initialize_wayland(_EGLDriver *drv, _EGLDisplay *disp) disp->DriverData = (void *) dri2_dpy; dri2_dpy->wl_dpy = disp->PlatformDisplay; - id = wl_display_get_global(dri2_dpy->wl_dpy, "drm", 1); + id = wl_display_get_global(dri2_dpy->wl_dpy, "wl_drm", 1); if (id == 0) wl_display_iterate(dri2_dpy->wl_dpy, WL_DISPLAY_READABLE); - id = wl_display_get_global(dri2_dpy->wl_dpy, "drm", 1); + id = wl_display_get_global(dri2_dpy->wl_dpy, "wl_drm", 1); if (id == 0) goto cleanup_dpy; dri2_dpy->wl_drm = wl_drm_create(dri2_dpy->wl_dpy, id, 1); diff --git a/src/egl/wayland/wayland-drm/protocol/wayland-drm.xml b/src/egl/wayland/wayland-drm/protocol/wayland-drm.xml index 46725d85179..cd5d191227a 100644 --- a/src/egl/wayland/wayland-drm/protocol/wayland-drm.xml +++ b/src/egl/wayland/wayland-drm/protocol/wayland-drm.xml @@ -2,7 +2,7 @@ - + - + - +